From 330fcece11892289f2936ec8e11e4c8a610d5bab Mon Sep 17 00:00:00 2001
From: doum <doum>
Date: 星期三, 15 十月 2025 10:30:07 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/wuhuyancao' into wuhuyancao
---
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/WarningServiceImpl.java | 9
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/DdNoticeConfigServiceImpl.java | 117 +++++++++
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/DdNoticeConfigMapper.java | 13 +
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java | 13
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/DdNoticeConfig.java | 66 +++++
admin/src/components/business/OperaDdNoticeConfigWindow.vue | 74 +++++
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java | 42 ++
server/db/business.dd_notice_config.permissions.sql | 6
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/DdNoticeConfigCloudController.java | 109 ++++++++
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/DdNoticeConfigService.java | 100 +++++++
admin/src/api/business/ddNoticeConfig.js | 50 +++
admin/src/views/business/ddNoticeConfig.vue | 103 +++++++
server/visits/dmvisit_service/src/main/java/com/doumee/core/dingTalk/DingTalk.java | 21 +
13 files changed, 708 insertions(+), 15 deletions(-)
diff --git a/admin/src/api/business/ddNoticeConfig.js b/admin/src/api/business/ddNoticeConfig.js
new file mode 100644
index 0000000..dfc62c4
--- /dev/null
+++ b/admin/src/api/business/ddNoticeConfig.js
@@ -0,0 +1,50 @@
+import request from '../../utils/request'
+
+// 鏌ヨ
+export function fetchList (data) {
+ return request.post('/visitsAdmin/cloudService/business/ddNoticeConfig/page', data, {
+ trim: true
+ })
+}
+
+// 瀵煎嚭Excel
+export function exportExcel (data) {
+ return request.post('/visitsAdmin/cloudService/business/ddNoticeConfig/exportExcel', data, {
+ trim: true,
+ download: true
+ })
+}
+
+// 鍒涘缓
+export function create (data) {
+ return request.post('/visitsAdmin/cloudService/business/ddNoticeConfig/create', data)
+}
+
+// 淇敼
+export function updateById (data) {
+ return request.post('/visitsAdmin/cloudService/business/ddNoticeConfig/updateById', data)
+}
+
+
+// 閽夐拤閫氱煡 鎵归噺鐘舵�佹洿鏂�
+export function H5ddNoticeConfig (data) {
+ return request.get('/visitsAdmin/cloudService/business/ddNoticeConfig/updateStatus/batch', {
+ params: {
+ ...data
+ }
+ })
+}
+
+// 鍒犻櫎
+export function deleteById (id) {
+ return request.get(`/visitsAdmin/cloudService/business/ddNoticeConfig/delete/${id}`)
+}
+
+// 鎵归噺鍒犻櫎
+export function deleteByIdInBatch (ids) {
+ return request.get('/visitsAdmin/cloudService/business/ddNoticeConfig/delete/batch', {
+ params: {
+ ids
+ }
+ })
+}
diff --git a/admin/src/components/business/OperaDdNoticeConfigWindow.vue b/admin/src/components/business/OperaDdNoticeConfigWindow.vue
new file mode 100644
index 0000000..68103e1
--- /dev/null
+++ b/admin/src/components/business/OperaDdNoticeConfigWindow.vue
@@ -0,0 +1,74 @@
+<template>
+ <GlobalWindow
+ :title="title"
+ :visible.sync="visible"
+ :confirm-working="isWorking"
+ @confirm="confirm"
+ >
+ <el-form :model="form" ref="form" :rules="rules">
+ <el-form-item label="鍒涘缓浜虹紪鐮�" prop="creator">
+ <el-input v-model="form.creator" placeholder="璇疯緭鍏ュ垱寤轰汉缂栫爜" v-trim/>
+ </el-form-item>
+ <el-form-item label="鍒涘缓鏃堕棿" prop="createDate">
+ <el-date-picker v-model="form.createDate" value-format="yyyy-MM-dd" placeholder="璇疯緭鍏ュ垱寤烘椂闂�"></el-date-picker>
+ </el-form-item>
+ <el-form-item label="鏇存柊浜虹紪鐮�" prop="edirot">
+ <el-input v-model="form.edirot" placeholder="璇疯緭鍏ユ洿鏂颁汉缂栫爜" v-trim/>
+ </el-form-item>
+ <el-form-item label="鏇存柊鏃堕棿" prop="editDate">
+ <el-date-picker v-model="form.editDate" value-format="yyyy-MM-dd" placeholder="璇疯緭鍏ユ洿鏂版椂闂�"></el-date-picker>
+ </el-form-item>
+ <el-form-item label="鏄惁鍒犻櫎0鍚� 1鏄�" prop="isdeleted">
+ <el-input v-model="form.isdeleted" placeholder="璇疯緭鍏ユ槸鍚﹀垹闄�0鍚� 1鏄�" v-trim/>
+ </el-form-item>
+ <el-form-item label="澶囨敞" prop="remark">
+ <el-input v-model="form.remark" placeholder="璇疯緭鍏ュ娉�" v-trim/>
+ </el-form-item>
+ <el-form-item label="寮�鍚姸鎬侊細0寮�鍚紱1鍏抽棴" prop="status">
+ <el-input v-model="form.status" placeholder="璇疯緭鍏ュ紑鍚姸鎬侊細0寮�鍚紱1鍏抽棴" v-trim/>
+ </el-form-item>
+ <el-form-item label="鏍囬" prop="titile">
+ <el-input v-model="form.titile" placeholder="璇疯緭鍏ユ爣棰�" v-trim/>
+ </el-form-item>
+ <el-form-item label="涓氬姟绫诲瀷 1=璁垮鎻愪氦璁垮鐢宠寰呭鎵逛汉杩涜瀹℃壒锛�2=璁垮鎻愪氦璁垮鐢宠瀹℃壒閫氳繃锛岄�氱煡琚浜猴紱3=璁垮鎻愪氦璁垮鐢宠瀹℃壒鎷掔粷锛岄�氱煡琚浜猴紱4=璁垮鐢宠瀹℃壒閫氳繃锛岄�氱煡鎶勯�佷汉锛�5=璁垮鎶ュ寰呭鎵逛汉杩涜瀹℃壒锛�6=璁垮鎶ュ瀹℃壒閫氳繃锛岄�氱煡鍙戣捣浜猴紱7=璁垮鎶ュ瀹℃壒鎷掔粷锛岄�氱煡鍙戣捣浜猴紱8=璁垮鎶ュ瀹℃壒閫氳繃锛岄�氱煡鎶勯�佷汉锛�9=鍏姟杞︾敵璇凤紝閫氱煡瀹℃壒浜猴紱10=鍏姟杞︾敵璇峰鎵归�氳繃,閫氱煡鍙戣捣浜猴紱11=鍏姟杞︾敵璇峰鎵归┏鍥�,閫氱煡鍙戣捣浜猴紱12=鍏姟杞︾敵璇峰鎵归�氳繃,閫氱煡鎶勯�佷汉锛�13=澶╂皵棰勮锛�14=鍖哄煙浜嬩欢閫氱煡锛�" prop="objType">
+ <el-input v-model="form.objType" placeholder="璇疯緭鍏ヤ笟鍔$被鍨� 1=璁垮鎻愪氦璁垮鐢宠寰呭鎵逛汉杩涜瀹℃壒锛�2=璁垮鎻愪氦璁垮鐢宠瀹℃壒閫氳繃锛岄�氱煡琚浜猴紱3=璁垮鎻愪氦璁垮鐢宠瀹℃壒鎷掔粷锛岄�氱煡琚浜猴紱4=璁垮鐢宠瀹℃壒閫氳繃锛岄�氱煡鎶勯�佷汉锛�5=璁垮鎶ュ寰呭鎵逛汉杩涜瀹℃壒锛�6=璁垮鎶ュ瀹℃壒閫氳繃锛岄�氱煡鍙戣捣浜猴紱7=璁垮鎶ュ瀹℃壒鎷掔粷锛岄�氱煡鍙戣捣浜猴紱8=璁垮鎶ュ瀹℃壒閫氳繃锛岄�氱煡鎶勯�佷汉锛�9=鍏姟杞︾敵璇凤紝閫氱煡瀹℃壒浜猴紱10=鍏姟杞︾敵璇峰鎵归�氳繃,閫氱煡鍙戣捣浜猴紱11=鍏姟杞︾敵璇峰鎵归┏鍥�,閫氱煡鍙戣捣浜猴紱12=鍏姟杞︾敵璇峰鎵归�氳繃,閫氱煡鎶勯�佷汉锛�13=澶╂皵棰勮锛�14=鍖哄煙浜嬩欢閫氱煡锛�" v-trim/>
+ </el-form-item>
+ </el-form>
+ </GlobalWindow>
+</template>
+
+<script>
+import BaseOpera from '@/components/base/BaseOpera'
+import GlobalWindow from '@/components/common/GlobalWindow'
+export default {
+ name: 'OperaDdNoticeConfigWindow',
+ extends: BaseOpera,
+ components: { GlobalWindow },
+ data () {
+ return {
+ // 琛ㄥ崟鏁版嵁
+ form: {
+ id: null,
+ creator: '',
+ createDate: '',
+ edirot: '',
+ editDate: '',
+ isdeleted: '',
+ remark: '',
+ status: '',
+ titile: '',
+ objType: ''
+ },
+ // 楠岃瘉瑙勫垯
+ rules: {
+ }
+ }
+ },
+ created () {
+ this.config({
+ api: '/business/ddNoticeConfig',
+ 'field.id': 'id'
+ })
+ }
+}
+</script>
diff --git a/admin/src/views/business/ddNoticeConfig.vue b/admin/src/views/business/ddNoticeConfig.vue
new file mode 100644
index 0000000..0525f47
--- /dev/null
+++ b/admin/src/views/business/ddNoticeConfig.vue
@@ -0,0 +1,103 @@
+<template>
+ <TableLayout :permissions="['business:ddnoticeconfig:query']">
+
+ <!-- 琛ㄦ牸鍜屽垎椤� -->
+ <template v-slot:table-wrap>
+ <ul class="toolbar">
+ <li><el-button type="primary" @click="batchStatus(0)">鎵归噺鍚敤</el-button></li>
+ <li><el-button @click="batchStatus(1)">鎵归噺绂佺敤</el-button></li>
+ </ul>
+ <el-table
+ :height="tableHeightNew"
+ v-loading="isWorking.search"
+ :data="tableData.list"
+ stripe
+ @selection-change="handleSelectionChange"
+ >
+ <el-table-column align="center" type="selection" width="55"></el-table-column>
+ <el-table-column prop="titile" label="鏍囬"></el-table-column>
+ <el-table-column prop="status" label="鐘舵��" width="150px">
+ <template slot-scope="{row}">
+ <el-switch
+ v-model="row.status"
+ @change="changeStatus(row)"
+ active-color="#13ce66"
+ inactive-color="#ff4949"
+ :active-value="0"
+ :inactive-value="1">
+ </el-switch>
+ </template>
+ </el-table-column>
+ </el-table>
+ <pagination
+ @size-change="handleSizeChange"
+ @current-change="handlePageChange"
+ :pagination="tableData.pagination"
+ >
+ </pagination>
+ </template>
+ </TableLayout>
+</template>
+
+<script>
+import BaseTable from '@/components/base/BaseTable'
+import TableLayout from '@/layouts/TableLayout'
+import Pagination from '@/components/common/Pagination'
+import { H5ddNoticeConfig } from '@/api/business/ddNoticeConfig'
+import { Message } from 'element-ui'
+export default {
+ name: 'DdNoticeConfig',
+ extends: BaseTable,
+ components: { TableLayout, Pagination },
+ data () {
+ return {
+ // 鎼滅储
+ searchForm: {},
+ ids: []
+ }
+ },
+ created () {
+ this.config({
+ module: '閽夐拤鍏紬鍙烽�氱煡閰嶇疆',
+ api: '/business/ddNoticeConfig',
+ 'field.id': 'id',
+ 'field.main': 'id'
+ })
+ this.search()
+ },
+ methods: {
+ handleSelectionChange(val) {
+ this.ids = val.map(i => i.id)
+ },
+ batchStatus(status) {
+ const { ids } = this
+ if (ids.length == 0) return Message.error('璇峰厛閫夋嫨瑕佹洿鏀圭殑閫氱煡')
+ this.$confirm(`纭畾${status == 0 ? '鍚敤' : '绂佺敤'}閫変腑鐨勬墍鏈夐�氱煡鍚�?`, '鎻愮ず', {
+ confirmButtonText: '纭畾',
+ cancelButtonText: '鍙栨秷',
+ type: 'warning'
+ }).then(() => {
+ H5ddNoticeConfig({
+ ids: ids.join(','),
+ status
+ }).then(res => {
+ Message.success('鎵归噺鏇存柊鎴愬姛')
+ this.search()
+ }, () => {
+ this.search()
+ })
+ })
+ },
+ changeStatus(row) {
+ H5ddNoticeConfig({
+ ids: row.id,
+ status: row.status
+ }).then(res => {
+ Message.success('鐘舵�佹洿鏂版垚鍔�')
+ }, () => {
+ this.search()
+ })
+ },
+ }
+}
+</script>
diff --git a/server/db/business.dd_notice_config.permissions.sql b/server/db/business.dd_notice_config.permissions.sql
new file mode 100644
index 0000000..9cac7af
--- /dev/null
+++ b/server/db/business.dd_notice_config.permissions.sql
@@ -0,0 +1,6 @@
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ddnoticeconfig:create', '鏂板缓閽夐拤鍏紬鍙烽�氱煡閰嶇疆', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ddnoticeconfig:delete', '鍒犻櫎閽夐拤鍏紬鍙烽�氱煡閰嶇疆', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ddnoticeconfig:update', '淇敼閽夐拤鍏紬鍙烽�氱煡閰嶇疆', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ddnoticeconfig:query', '鏌ヨ閽夐拤鍏紬鍙烽�氱煡閰嶇疆', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+INSERT INTO `SYSTEM_PERMISSION`(`CODE`, `NAME`, `REMARK`, `FIXED`, `CREATE_USER`, `CREATE_TIME`, `UPDATE_USER`, `UPDATE_TIME`, `DELETED`) VALUES ('business:ddnoticeconfig:exportExcel', '瀵煎嚭閽夐拤鍏紬鍙烽�氱煡閰嶇疆(Excel)', '', 0, 1, CURRENT_TIMESTAMP, NULL, NULL, 0);
+
diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/DdNoticeConfigCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/DdNoticeConfigCloudController.java
new file mode 100644
index 0000000..2e735d5
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/DdNoticeConfigCloudController.java
@@ -0,0 +1,109 @@
+package com.doumee.cloud.admin;
+
+import com.doumee.api.BaseController;
+import com.doumee.config.annotation.CloudRequiredPermission;
+import com.doumee.core.annotation.excel.ExcelExporter;
+import com.doumee.core.annotation.pr.PreventRepeat;
+import com.doumee.core.utils.Constants;
+import com.doumee.dao.business.model.DdNoticeConfig;
+import com.doumee.service.business.DdNoticeConfigService;
+import com.doumee.service.business.third.model.ApiResponse;
+import com.doumee.service.business.third.model.PageData;
+import com.doumee.service.business.third.model.PageWrap;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import javax.servlet.http.HttpServletResponse;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2025/10/14 15:11
+ */
+@Api(tags = "閽夐拤鍏紬鍙烽�氱煡閰嶇疆")
+@RestController
+@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/business/ddNoticeConfig")
+public class DdNoticeConfigCloudController extends BaseController {
+
+ @Autowired
+ private DdNoticeConfigService ddNoticeConfigService;
+
+ @PreventRepeat
+ @ApiOperation("鏂板缓")
+ @PostMapping("/create")
+ @CloudRequiredPermission("business:ddnoticeconfig:create")
+ public ApiResponse create(@RequestBody DdNoticeConfig ddNoticeConfig) {
+ return ApiResponse.success(ddNoticeConfigService.create(ddNoticeConfig));
+ }
+
+ @ApiOperation("鏍规嵁ID鍒犻櫎")
+ @GetMapping("/delete/{id}")
+ @CloudRequiredPermission("business:ddnoticeconfig:delete")
+ public ApiResponse deleteById(@PathVariable Integer id) {
+ ddNoticeConfigService.deleteById(id);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鎵归噺鍒犻櫎")
+ @GetMapping("/delete/batch")
+ @CloudRequiredPermission("business:ddnoticeconfig:delete")
+ public ApiResponse deleteByIdInBatch(@RequestParam String ids) {
+ String [] idArray = ids.split(",");
+ List<Integer> idList = new ArrayList<>();
+ for (String id : idArray) {
+ idList.add(Integer.valueOf(id));
+ }
+ ddNoticeConfigService.deleteByIdInBatch(idList);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateById")
+ @CloudRequiredPermission("business:ddnoticeconfig:update")
+ public ApiResponse updateById(@RequestBody DdNoticeConfig ddNoticeConfig) {
+ ddNoticeConfigService.updateById(ddNoticeConfig);
+ return ApiResponse.success(null);
+ }
+
+ @ApiOperation("鍒嗛〉鏌ヨ")
+ @PostMapping("/page")
+ @CloudRequiredPermission("business:ddnoticeconfig:query")
+ public ApiResponse<PageData<DdNoticeConfig>> findPage (@RequestBody PageWrap<DdNoticeConfig> pageWrap) {
+ return ApiResponse.success(ddNoticeConfigService.findPage(pageWrap));
+ }
+
+ @ApiOperation("瀵煎嚭Excel")
+ @PostMapping("/exportExcel")
+ @CloudRequiredPermission("business:ddnoticeconfig:exportExcel")
+ public void exportExcel (@RequestBody PageWrap<DdNoticeConfig> pageWrap, HttpServletResponse response) {
+ ExcelExporter.build(DdNoticeConfig.class).export(ddNoticeConfigService.findPage(pageWrap).getRecords(), "閽夐拤鍏紬鍙烽�氱煡閰嶇疆", response);
+ }
+
+ @ApiOperation("鏍规嵁ID鏌ヨ")
+ @GetMapping("/{id}")
+ @CloudRequiredPermission("business:ddnoticeconfig:query")
+ public ApiResponse findById(@PathVariable Integer id) {
+ return ApiResponse.success(ddNoticeConfigService.findById(id));
+ }
+
+
+
+ @ApiOperation("鎵归噺绂佸惎鐢�")
+ @GetMapping("/updateStatus/batch")
+ @CloudRequiredPermission("business:ddnoticeconfig:update")
+ public ApiResponse updateStatusBatch(@RequestParam String ids,@RequestParam Integer status) {
+ String [] idArray = ids.split(",");
+ List<Integer> idList = new ArrayList<>();
+ for (String id : idArray) {
+ idList.add(Integer.valueOf(id));
+ }
+ ddNoticeConfigService.updateStatusByIdInBatch(idList,status);
+ return ApiResponse.success(null);
+ }
+
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/dingTalk/DingTalk.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/dingTalk/DingTalk.java
index 84273d6..7b2356e 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/core/dingTalk/DingTalk.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/dingTalk/DingTalk.java
@@ -375,6 +375,9 @@
*/
public Boolean workInfoOANotice(Long agentId,String userIds,OapiMessageCorpconversationAsyncsendV2Request.Msg msg){
try{
+ if(CollectionUtils.isEmpty(msg)){
+ return null;
+ }
DingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/topapi/message/corpconversation/asyncsend_v2");
OapiMessageCorpconversationAsyncsendV2Request request = new OapiMessageCorpconversationAsyncsendV2Request();
request.setAgentId(agentId);
@@ -382,7 +385,7 @@
request.setToAllUser(false);
request.setMsg(msg);
- OapiMessageCorpconversationAsyncsendV2Response rsp = client.execute(request, "60c2df248ca93d4eafb4a04a2330d3d3");//getToken());
+ OapiMessageCorpconversationAsyncsendV2Response rsp = client.execute(request, getToken());
if(rsp.getErrcode().equals(Constants.DD_ERR_CODE)){
return true;
}else{
@@ -540,6 +543,9 @@
*/
public String toDoNotice(String title,List<String> unionIdList,List<CreateTodoTaskRequest.CreateTodoTaskRequestContentFieldList> fieldList,String url) {
try{
+ if(CollectionUtils.isEmpty(fieldList)){
+ return null;
+ }
com.aliyun.dingtalktodo_1_0.Client client = DingTalk.createV1Client();
CreateTodoTaskHeaders createTodoTaskHeaders = new CreateTodoTaskHeaders();
createTodoTaskHeaders.xAcsDingtalkAccessToken = getToken();
@@ -559,7 +565,7 @@
.setTitle("鍘诲鐞�")
.setActionType(2)
.setParam(actionList0Param)
- .setUrl("https://www.baidu.com") //TODO 璇︽儏鍦板潃
+ .setUrl(url) //TODO 璇︽儏鍦板潃
.setActionKey("ak-1-1");
//璇︽儏椤祏rl璺宠浆鍦板潃
CreateTodoTaskRequest.CreateTodoTaskRequestDetailUrl detailUrl = new CreateTodoTaskRequest.CreateTodoTaskRequestDetailUrl()
@@ -670,6 +676,11 @@
}
+ /**
+ * 璁垮鎶ュ涓庤瀹㈢敵璇� 閽夐拤寰呭姙
+ * @param visits
+ * @return
+ */
public List<CreateTodoTaskRequest.CreateTodoTaskRequestContentFieldList> getToDoVisitFiledInfo(Visits visits){
List<CreateTodoTaskRequest.CreateTodoTaskRequestContentFieldList> list = new ArrayList<>();
CreateTodoTaskRequest.CreateTodoTaskRequestContentFieldList contentFieldList0 = new CreateTodoTaskRequest.CreateTodoTaskRequestContentFieldList()
@@ -698,7 +709,11 @@
}
-
+ /**
+ * 鐢ㄨ溅鐢宠鐨� 閽夐拤寰呭姙
+ * @param carUseBook
+ * @return
+ */
public List<CreateTodoTaskRequest.CreateTodoTaskRequestContentFieldList> getToDoCarUseBookFiledInfo(CarUseBook carUseBook){
List<CreateTodoTaskRequest.CreateTodoTaskRequestContentFieldList> list = new ArrayList<>();
CreateTodoTaskRequest.CreateTodoTaskRequestContentFieldList contentFieldList1 = new CreateTodoTaskRequest.CreateTodoTaskRequestContentFieldList()
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/DdNoticeConfigMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/DdNoticeConfigMapper.java
new file mode 100644
index 0000000..8cab6d0
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/DdNoticeConfigMapper.java
@@ -0,0 +1,13 @@
+package com.doumee.dao.business;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.doumee.dao.business.model.DdNoticeConfig;
+import com.github.yulichang.base.MPJBaseMapper;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2025/10/14 15:11
+ */
+public interface DdNoticeConfigMapper extends MPJBaseMapper<DdNoticeConfig> {
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/DdNoticeConfig.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/DdNoticeConfig.java
new file mode 100644
index 0000000..190fd58
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/DdNoticeConfig.java
@@ -0,0 +1,66 @@
+package com.doumee.dao.business.model;
+
+import com.doumee.core.annotation.excel.ExcelColumn;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import java.util.Date;
+
+/**
+ * 閽夐拤鍏紬鍙烽�氱煡閰嶇疆
+ * @author 姹熻箘韫�
+ * @date 2025/10/14 15:11
+ */
+@Data
+@ApiModel("閽夐拤鍏紬鍙烽�氱煡閰嶇疆")
+@TableName("`dd_notice_config`")
+public class DdNoticeConfig {
+
+ @TableId(type = IdType.AUTO)
+ @ApiModelProperty(value = "涓婚敭", example = "1")
+ @ExcelColumn(name="涓婚敭")
+ private Integer id;
+
+ @ApiModelProperty(value = "鍒涘缓浜虹紪鐮�")
+ @ExcelColumn(name="鍒涘缓浜虹紪鐮�")
+ private String creator;
+
+ @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+ @ExcelColumn(name="鍒涘缓鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date createDate;
+
+ @ApiModelProperty(value = "鏇存柊浜虹紪鐮�")
+ @ExcelColumn(name="鏇存柊浜虹紪鐮�")
+ private String edirot;
+
+ @ApiModelProperty(value = "鏇存柊鏃堕棿")
+ @ExcelColumn(name="鏇存柊鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ private Date editDate;
+
+ @ApiModelProperty(value = "鏄惁鍒犻櫎0鍚� 1鏄�", example = "1")
+ @ExcelColumn(name="鏄惁鍒犻櫎0鍚� 1鏄�")
+ private Integer isdeleted;
+
+ @ApiModelProperty(value = "澶囨敞")
+ @ExcelColumn(name="澶囨敞")
+ private String remark;
+
+ @ApiModelProperty(value = "寮�鍚姸鎬侊細0寮�鍚紱1鍏抽棴", example = "1")
+ @ExcelColumn(name="寮�鍚姸鎬侊細0寮�鍚紱1鍏抽棴")
+ private Integer status;
+
+ @ApiModelProperty(value = "鏍囬")
+ @ExcelColumn(name="鏍囬")
+ private String titile;
+
+ @ApiModelProperty(value = "涓氬姟绫诲瀷 1=璁垮鎻愪氦璁垮鐢宠寰呭鎵逛汉杩涜瀹℃壒锛�2=璁垮鎻愪氦璁垮鐢宠瀹℃壒閫氳繃锛岄�氱煡琚浜猴紱3=璁垮鎻愪氦璁垮鐢宠瀹℃壒鎷掔粷锛岄�氱煡琚浜猴紱4=璁垮鐢宠瀹℃壒閫氳繃锛岄�氱煡鎶勯�佷汉锛�5=璁垮鎶ュ寰呭鎵逛汉杩涜瀹℃壒锛�6=璁垮鎶ュ瀹℃壒閫氳繃锛岄�氱煡鍙戣捣浜猴紱7=璁垮鎶ュ瀹℃壒鎷掔粷锛岄�氱煡鍙戣捣浜猴紱8=璁垮鎶ュ瀹℃壒閫氳繃锛岄�氱煡鎶勯�佷汉锛�9=鍏姟杞︾敵璇凤紝閫氱煡瀹℃壒浜猴紱10=鍏姟杞︾敵璇峰鎵归�氳繃,閫氱煡鍙戣捣浜猴紱11=鍏姟杞︾敵璇峰鎵归┏鍥�,閫氱煡鍙戣捣浜猴紱12=鍏姟杞︾敵璇峰鎵归�氳繃,閫氱煡鎶勯�佷汉锛�13=澶╂皵棰勮锛�14=鍖哄煙浜嬩欢閫氱煡锛�", example = "1")
+ @ExcelColumn(name="涓氬姟绫诲瀷 1=璁垮鎻愪氦璁垮鐢宠寰呭鎵逛汉杩涜瀹℃壒锛�2=璁垮鎻愪氦璁垮鐢宠瀹℃壒閫氳繃锛岄�氱煡琚浜猴紱3=璁垮鎻愪氦璁垮鐢宠瀹℃壒鎷掔粷锛岄�氱煡琚浜猴紱4=璁垮鐢宠瀹℃壒閫氳繃锛岄�氱煡鎶勯�佷汉锛�5=璁垮鎶ュ寰呭鎵逛汉杩涜瀹℃壒锛�6=璁垮鎶ュ瀹℃壒閫氳繃锛岄�氱煡鍙戣捣浜猴紱7=璁垮鎶ュ瀹℃壒鎷掔粷锛岄�氱煡鍙戣捣浜猴紱8=璁垮鎶ュ瀹℃壒閫氳繃锛岄�氱煡鎶勯�佷汉锛�9=鍏姟杞︾敵璇凤紝閫氱煡瀹℃壒浜猴紱10=鍏姟杞︾敵璇峰鎵归�氳繃,閫氱煡鍙戣捣浜猴紱11=鍏姟杞︾敵璇峰鎵归┏鍥�,閫氱煡鍙戣捣浜猴紱12=鍏姟杞︾敵璇峰鎵归�氳繃,閫氱煡鎶勯�佷汉锛�13=澶╂皵棰勮锛�14=鍖哄煙浜嬩欢閫氱煡锛�")
+ private Integer objType;
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/DdNoticeConfigService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/DdNoticeConfigService.java
new file mode 100644
index 0000000..5f7ba65
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/DdNoticeConfigService.java
@@ -0,0 +1,100 @@
+package com.doumee.service.business;
+
+import com.doumee.dao.business.model.DdNoticeConfig;
+import com.doumee.service.business.third.model.PageData;
+import com.doumee.service.business.third.model.PageWrap;
+
+import java.util.List;
+
+/**
+ * 閽夐拤鍏紬鍙烽�氱煡閰嶇疆Service瀹氫箟
+ * @author 姹熻箘韫�
+ * @date 2025/10/14 15:11
+ */
+public interface DdNoticeConfigService {
+
+ /**
+ * 鍒涘缓
+ *
+ * @param ddNoticeConfig 瀹炰綋瀵硅薄
+ * @return Integer
+ */
+ Integer create(DdNoticeConfig ddNoticeConfig);
+
+ /**
+ * 涓婚敭鍒犻櫎
+ *
+ * @param id 涓婚敭
+ */
+ void deleteById(Integer id);
+
+ /**
+ * 鍒犻櫎
+ *
+ * @param ddNoticeConfig 瀹炰綋瀵硅薄
+ */
+ void delete(DdNoticeConfig ddNoticeConfig);
+
+ /**
+ * 鎵归噺涓婚敭鍒犻櫎
+ *
+ * @param ids 涓婚敭闆�
+ */
+ void deleteByIdInBatch(List<Integer> ids);
+
+ /**
+ * 涓婚敭鏇存柊
+ *
+ * @param ddNoticeConfig 瀹炰綋瀵硅薄
+ */
+ void updateById(DdNoticeConfig ddNoticeConfig);
+
+ /**
+ * 鎵归噺涓婚敭鏇存柊
+ *
+ * @param ddNoticeConfigs 瀹炰綋闆�
+ */
+ void updateByIdInBatch(List<DdNoticeConfig> ddNoticeConfigs);
+
+ /**
+ * 涓婚敭鏌ヨ
+ *
+ * @param id 涓婚敭
+ * @return DdNoticeConfig
+ */
+ DdNoticeConfig findById(Integer id);
+
+ /**
+ * 鏉′欢鏌ヨ鍗曟潯璁板綍
+ *
+ * @param ddNoticeConfig 瀹炰綋瀵硅薄
+ * @return DdNoticeConfig
+ */
+ DdNoticeConfig findOne(DdNoticeConfig ddNoticeConfig);
+
+ /**
+ * 鏉′欢鏌ヨ
+ *
+ * @param ddNoticeConfig 瀹炰綋瀵硅薄
+ * @return List<DdNoticeConfig>
+ */
+ List<DdNoticeConfig> findList(DdNoticeConfig ddNoticeConfig);
+
+ /**
+ * 鍒嗛〉鏌ヨ
+ *
+ * @param pageWrap 鍒嗛〉瀵硅薄
+ * @return PageData<DdNoticeConfig>
+ */
+ PageData<DdNoticeConfig> findPage(PageWrap<DdNoticeConfig> pageWrap);
+
+ /**
+ * 鏉′欢缁熻
+ *
+ * @param ddNoticeConfig 瀹炰綋瀵硅薄
+ * @return long
+ */
+ long count(DdNoticeConfig ddNoticeConfig);
+
+ void updateStatusByIdInBatch(List<Integer> ids,Integer status);
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java
index fe94066..5f3fdf0 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java
@@ -95,6 +95,8 @@
@Autowired
private CarDriverMapper carDriverMapper;
+ @Autowired
+ private DdNoticeConfigMapper ddNoticeConfigMapper;
@Autowired
private VisitsJoinMapper visitsMapper;
@@ -682,7 +684,10 @@
if(CollectionUtils.isNotEmpty(erpId)){
String ddTalkId = dingTalk.toDoNotice(StringUtils.isNotBlank(carUseBook.getMemberName())?(carUseBook.getMemberName()+"鎻愪氦鐨勫叕鍔$敤杞︾敵璇�"):"鍏姟杞︾敤杞︾敵璇�",
erpId ,
- dingTalk.getToDoCarUseBookFiledInfo(carUseBook),"pages/staff/vehicle/sendACarDetail?id="+carUseBook.getId());
+ ddNoticeConfigMapper.selectCount(new QueryWrapper<DdNoticeConfig>().lambda()
+ .eq(DdNoticeConfig::getIsdeleted,Constants.ZERO).eq(DdNoticeConfig::getStatus,Constants.ZERO)
+ .eq(DdNoticeConfig::getObjType,9))>Constants.ZERO?
+ dingTalk.getToDoCarUseBookFiledInfo(carUseBook):null,"pages/staff/vehicle/sendACarDetail?id="+carUseBook.getId());
carUseBookMapper.update(new UpdateWrapper<CarUseBook>().lambda()
.set(CarUseBook::getDdBelongToUnionId,erpId.get(Constants.ZERO))
.set(CarUseBook::getDdToDoId,ddTalkId).eq(CarUseBook::getId,carUseBook.getId()));
@@ -692,9 +697,13 @@
Visits visits = visitsMapper.selectById(businessId);
if (Objects.nonNull(visits)) {
//TODO 缂哄皯鍩熷悕鍓嶇紑鍐呭
- String ddTalkId = dingTalk.toDoNotice(visits.getName() + "鐨勮瀹㈢敵璇�",
+ String ddTalkId = dingTalk.toDoNotice(visits.getName() + (Constants.equalsInteger(visits.getType(),Constants.TWO)?"鐨勮瀹㈡姤澶�":"鐨勮瀹㈢敵璇�"),
erpId,
- dingTalk.getToDoVisitFiledInfo(visits), "pages/appointmentDetails/appointmentDetails?id=" + visits.getId());
+ ddNoticeConfigMapper.selectCount(new QueryWrapper<DdNoticeConfig>().lambda()
+ .eq(DdNoticeConfig::getIsdeleted,Constants.ZERO).eq(DdNoticeConfig::getStatus,Constants.ZERO)
+ .eq(DdNoticeConfig::getObjType,Constants.equalsInteger(visits.getType(),Constants.TWO)?5:1))>Constants.ZERO?
+ dingTalk.getToDoVisitFiledInfo(visits):null,
+ "pages/appointmentDetails/appointmentDetails?id=" + visits.getId());
visitsMapper.update(new UpdateWrapper<Visits>().lambda()
.set(Visits::getDdBelongToUnionId,erpId.get(Constants.ZERO))
.set(Visits::getDdToDoId, ddTalkId).eq(Visits::getId, visits.getId()));
@@ -1544,7 +1553,10 @@
//TODO 缂哄皯鍩熷悕鍓嶇紑鍐呭
String ddTalkId = dingTalk.toDoNotice(StringUtils.isNotBlank(carUseBook.getMemberName())?(carUseBook.getMemberName()+"鎻愪氦鐨勫叕鍔$敤杞︾敵璇�"):"鍏姟杞︾敤杞︾敵璇�",
memberList.stream().map(i->i.getErpId()).collect(Collectors.toList()) ,
- dingTalk.getToDoCarUseBookFiledInfo(carUseBook),"pages/staff/vehicle/sendACarDetail?id="+carUseBook.getId());
+ ddNoticeConfigMapper.selectCount(new QueryWrapper<DdNoticeConfig>().lambda()
+ .eq(DdNoticeConfig::getIsdeleted,Constants.ZERO).eq(DdNoticeConfig::getStatus,Constants.ZERO)
+ .eq(DdNoticeConfig::getObjType,9))>Constants.ZERO?
+ dingTalk.getToDoCarUseBookFiledInfo(carUseBook):null,"pages/staff/vehicle/sendACarDetail?id="+carUseBook.getId());
carUseBookMapper.update(new UpdateWrapper<CarUseBook>().lambda()
.set(CarUseBook::getDdToDoId,ddTalkId).eq(CarUseBook::getId,carUseBook.getId()));
}
@@ -1869,8 +1881,11 @@
if(Objects.nonNull(beVisitMember)&&StringUtils.isNotBlank(beVisitMember.getDdId())){
dingTalk.workInfoOANotice(Long.valueOf(systemDictDataBiz.queryByCode(Constants.DD_TALK,Constants.AGENT_ID).getCode()),
beVisitMember.getDdId(),
+ ddNoticeConfigMapper.selectCount(new QueryWrapper<DdNoticeConfig>().lambda()
+ .eq(DdNoticeConfig::getIsdeleted,Constants.ZERO).eq(DdNoticeConfig::getStatus,Constants.ZERO)
+ .eq(DdNoticeConfig::getObjType, Constants.equalsInteger(visits.getType(),Constants.TWO)?(Constants.equalsInteger(approveDTO.getStatus(),Constants.TWO)?6:7):(Constants.equalsInteger(approveDTO.getStatus(),Constants.TWO)?2:3)))>Constants.ZERO?
dingTalk.getVisitNoticeMsg(visits,visits.getName()+"鐨�"+(Constants.equalsInteger(visits.getType(),Constants.TWO)?"璁垮鎶ュ":"璁垮鐢宠")+"锛�"+
- (Constants.equalsInteger(approveDTO.getStatus(),Constants.TWO)? "宸插鎵归�氳繃":"宸插鎵归┏鍥�"))
+ (Constants.equalsInteger(approveDTO.getStatus(),Constants.TWO)? "宸插鎵归�氳繃":"宸插鎵归┏鍥�")):null
);
}
}
@@ -1908,8 +1923,11 @@
if(Objects.nonNull(creatMember)&&StringUtils.isNotBlank(creatMember.getDdId())){
dingTalk.workInfoOANotice(Long.valueOf(systemDictDataBiz.queryByCode(Constants.DD_TALK,Constants.AGENT_ID).getCode()),
creatMember.getErpId(),
+ ddNoticeConfigMapper.selectCount(new QueryWrapper<DdNoticeConfig>().lambda()
+ .eq(DdNoticeConfig::getIsdeleted,Constants.ZERO).eq(DdNoticeConfig::getStatus,Constants.ZERO)
+ .eq(DdNoticeConfig::getObjType,Constants.equalsInteger(approveDTO.getStatus(),Constants.TWO)?10:11))>Constants.ZERO?
dingTalk.getCarUseNoticeMsg(carUseBook,carUseBook.getMemberName() + "鎻愪氦鐨勫叕鍔$敤杞︼紝"+
- (Constants.equalsInteger(approveDTO.getStatus(),Constants.TWO)? "宸插鎵归�氳繃":"宸插鎵归┏鍥�"))
+ (Constants.equalsInteger(approveDTO.getStatus(),Constants.TWO)? "宸插鎵归�氳繃":"宸插鎵归┏鍥�")):null
);
}
if(StringUtils.isNotBlank(carUseBook.getDdBelongToUnionId())
@@ -2011,9 +2029,15 @@
if(Objects.nonNull(visits)||Objects.nonNull(carUseBook)){
dingTalk.workInfoOANotice(Long.valueOf(systemDictDataBiz.queryByCode(Constants.DD_TALK,Constants.AGENT_ID).getCode()),
StringUtils.join(memberList.stream().map(i->i.getDdId()).collect(Collectors.toList()),","),
- Objects.nonNull(visits)?
- dingTalk.getVisitNoticeMsg(visits,visits.getName()+"鐨�"+(Constants.equalsInteger(visits.getType(),Constants.TWO)?"璁垮鎶ュ":"璁垮鐢宠")+"锛屾妱閫佺粰鎮紝璇风煡鏅�"):
- dingTalk.getCarUseNoticeMsg(carUseBook,carUseBook.getMemberName() + "鎻愪氦鐨勫叕鍔$敤杞︼紝鎶勯�佺粰鎮紝璇风煡鏅�")
+ ddNoticeConfigMapper.selectCount(new QueryWrapper<DdNoticeConfig>().lambda()
+ .eq(DdNoticeConfig::getIsdeleted,Constants.ZERO).eq(DdNoticeConfig::getStatus,Constants.ZERO)
+ .eq(DdNoticeConfig::getObjType, Objects.nonNull(visits)?(Constants.equalsInteger(visits.getType(),Constants.TWO)?8:4):12))>Constants.ZERO?
+ Objects.nonNull(visits)?
+ dingTalk.getVisitNoticeMsg(visits,visits.getName()+"鐨�"+(Constants.equalsInteger(visits.getType(),Constants.TWO)?"璁垮鎶ュ":"璁垮鐢宠")+"锛屾妱閫佺粰鎮紝璇风煡鏅�"):
+ dingTalk.getCarUseNoticeMsg(carUseBook,carUseBook.getMemberName() + "鎻愪氦鐨勫叕鍔$敤杞︼紝鎶勯�佺粰鎮紝璇风煡鏅�"):null
+
+
+
);
}
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/DdNoticeConfigServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/DdNoticeConfigServiceImpl.java
new file mode 100644
index 0000000..52782f4
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/DdNoticeConfigServiceImpl.java
@@ -0,0 +1,117 @@
+package com.doumee.service.business.impl;
+
+import com.doumee.core.utils.Constants;
+import com.doumee.core.utils.Utils;
+import com.doumee.dao.business.DdNoticeConfigMapper;
+import com.doumee.dao.business.model.DdNoticeConfig;
+import com.doumee.dao.business.model.SmsConfig;
+import com.doumee.service.business.DdNoticeConfigService;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.doumee.service.business.third.model.PageData;
+import com.doumee.service.business.third.model.PageWrap;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+
+import java.util.List;
+import java.util.Objects;
+
+/**
+ * 閽夐拤鍏紬鍙烽�氱煡閰嶇疆Service瀹炵幇
+ * @author 姹熻箘韫�
+ * @date 2025/10/14 15:11
+ */
+@Service
+public class DdNoticeConfigServiceImpl implements DdNoticeConfigService {
+
+ @Autowired
+ private DdNoticeConfigMapper ddNoticeConfigMapper;
+
+ @Override
+ public Integer create(DdNoticeConfig ddNoticeConfig) {
+ ddNoticeConfigMapper.insert(ddNoticeConfig);
+ return ddNoticeConfig.getId();
+ }
+
+ @Override
+ public void deleteById(Integer id) {
+ ddNoticeConfigMapper.deleteById(id);
+ }
+
+ @Override
+ public void delete(DdNoticeConfig ddNoticeConfig) {
+ UpdateWrapper<DdNoticeConfig> deleteWrapper = new UpdateWrapper<>(ddNoticeConfig);
+ ddNoticeConfigMapper.delete(deleteWrapper);
+ }
+
+ @Override
+ public void deleteByIdInBatch(List<Integer> ids) {
+ if (CollectionUtils.isEmpty(ids)) {
+ return;
+ }
+ ddNoticeConfigMapper.deleteBatchIds(ids);
+ }
+
+ @Override
+ public void updateById(DdNoticeConfig ddNoticeConfig) {
+ ddNoticeConfigMapper.updateById(ddNoticeConfig);
+ }
+
+ @Override
+ public void updateByIdInBatch(List<DdNoticeConfig> ddNoticeConfigs) {
+ if (CollectionUtils.isEmpty(ddNoticeConfigs)) {
+ return;
+ }
+ for (DdNoticeConfig ddNoticeConfig: ddNoticeConfigs) {
+ this.updateById(ddNoticeConfig);
+ }
+ }
+
+ @Override
+ public DdNoticeConfig findById(Integer id) {
+ return ddNoticeConfigMapper.selectById(id);
+ }
+
+ @Override
+ public DdNoticeConfig findOne(DdNoticeConfig ddNoticeConfig) {
+ QueryWrapper<DdNoticeConfig> wrapper = new QueryWrapper<>(ddNoticeConfig);
+ return ddNoticeConfigMapper.selectOne(wrapper);
+ }
+
+ @Override
+ public List<DdNoticeConfig> findList(DdNoticeConfig ddNoticeConfig) {
+ QueryWrapper<DdNoticeConfig> wrapper = new QueryWrapper<>(ddNoticeConfig);
+ return ddNoticeConfigMapper.selectList(wrapper);
+ }
+
+ @Override
+ public PageData<DdNoticeConfig> findPage(PageWrap<DdNoticeConfig> pageWrap) {
+ IPage<DdNoticeConfig> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+ QueryWrapper<DdNoticeConfig> queryWrapper = new QueryWrapper<>();
+ Utils.MP.blankToNull(pageWrap.getModel());
+ queryWrapper.lambda().eq(DdNoticeConfig::getIsdeleted, Constants.ZERO);
+ return PageData.from(ddNoticeConfigMapper.selectPage(page, queryWrapper));
+ }
+
+ @Override
+ public long count(DdNoticeConfig ddNoticeConfig) {
+ QueryWrapper<DdNoticeConfig> wrapper = new QueryWrapper<>(ddNoticeConfig);
+ return ddNoticeConfigMapper.selectCount(wrapper);
+ }
+
+ @Override
+ public void updateStatusByIdInBatch(List<Integer> ids,Integer status) {
+ if (CollectionUtils.isEmpty(ids) || Objects.isNull(status)) {
+ return;
+ }
+ ddNoticeConfigMapper.update(new UpdateWrapper<DdNoticeConfig>()
+ .set("status",status)
+ .in("id",ids)
+ );
+ }
+
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java
index bc8fae7..10fc09b 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java
@@ -102,6 +102,9 @@
@Autowired
private DingTalk dingTalk;
+
+ @Autowired
+ private DdNoticeConfigMapper ddNoticeConfigMapper;
@Override
@@ -255,7 +258,10 @@
if(StringUtils.isNotBlank(member.getDdId())){
dingTalk.workInfoOANotice(Long.valueOf(systemDictDataBiz.queryByCode(Constants.DD_TALK,Constants.AGENT_ID).getCode()),
member.getDdId(),
- dingTalk.getHiddenDangerNoticeMsg(hiddenDanger));
+ ddNoticeConfigMapper.selectCount(new QueryWrapper<DdNoticeConfig>().lambda()
+ .eq(DdNoticeConfig::getIsdeleted,Constants.ZERO).eq(DdNoticeConfig::getStatus,Constants.ZERO)
+ .eq(DdNoticeConfig::getObjType,14))>Constants.ZERO?
+ dingTalk.getHiddenDangerNoticeMsg(hiddenDanger):null);
}
return hiddenDanger.getId();
@@ -809,7 +815,10 @@
if(StringUtils.isNotBlank(member.getDdId())){
dingTalk.workInfoOANotice(Long.valueOf(systemDictDataBiz.queryByCode(Constants.DD_TALK,Constants.AGENT_ID).getCode()),
member.getDdId(),
- dingTalk.getHiddenDangerNoticeMsg(hiddenDanger));
+ ddNoticeConfigMapper.selectCount(new QueryWrapper<DdNoticeConfig>().lambda()
+ .eq(DdNoticeConfig::getIsdeleted,Constants.ZERO).eq(DdNoticeConfig::getStatus,Constants.ZERO)
+ .eq(DdNoticeConfig::getObjType,14))>Constants.ZERO?
+ dingTalk.getHiddenDangerNoticeMsg(hiddenDanger):null);
}
}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/WarningServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/WarningServiceImpl.java
index 1ea06ee..0b6d126 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/WarningServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/WarningServiceImpl.java
@@ -64,6 +64,9 @@
@Autowired
private SystemDictDataBiz systemDictDataBiz;
+ @Autowired
+ private DdNoticeConfigMapper ddNoticeConfigMapper;
+
@Override
public Integer create(Warning warning) {
@@ -315,9 +318,13 @@
if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(memberList)&&memberList.size()>Constants.ZERO){
List<String> ddUserIdList = memberList.stream().map(j->j.getErpId()).collect(Collectors.toList());
//鍙戦�佹帹閫侀拤閽夋秷鎭�
+
Boolean isSuccess = dingTalk.workInfoOANotice(Long.valueOf(systemDictDataBiz.queryByCode(Constants.DD_TALK,Constants.AGENT_ID).getCode()),
String.join(",",ddUserIdList),
- dingTalk.getWeatherNoticeMsg(title,text));
+ ddNoticeConfigMapper.selectCount(new QueryWrapper<DdNoticeConfig>().lambda()
+ .eq(DdNoticeConfig::getIsdeleted,Constants.ZERO).eq(DdNoticeConfig::getStatus,Constants.ZERO)
+ .eq(DdNoticeConfig::getObjType,13))>Constants.ZERO?
+ dingTalk.getWeatherNoticeMsg(title,text):null);
for (Member member:memberList) {
WarningPush warningPush = new WarningPush();
warningPush.setCreateDate(new Date());
--
Gitblit v1.9.3