From ffa60e83ae945bdd164ce047a2c70a55e9f54ee2 Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期四, 17 十月 2024 16:47:14 +0800
Subject: [PATCH] 代码初始化

---
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/WxNoticeConfigMapper.java               |   12 +
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformJobService.java             |    2 
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/WxNoticeConfigServiceImpl.java |  160 +++++++++++++
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/WxNoticeConfigService.java          |  101 ++++++++
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/WxNoticeConfig.java               |   74 ++++++
 server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/WxNoticeConfigController.java              |  109 +++++++++
 server/visits/dmvisit_service/src/main/java/com/doumee/core/wx/wxPlat/WxPlatNotice.java                     |   59 ++++
 server/visits/dmvisit_service/src/main/java/com/doumee/core/wx/wxPlat/WxPlatConstants.java                  |  145 ++++++++++++
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/SmsConfig.java                    |    4 
 9 files changed, 664 insertions(+), 2 deletions(-)

diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/WxNoticeConfigController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/WxNoticeConfigController.java
new file mode 100644
index 0000000..696f6f6
--- /dev/null
+++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/WxNoticeConfigController.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.model.ApiResponse;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.model.PageData;
+import com.doumee.core.utils.Constants;
+import com.doumee.dao.business.model.WxNoticeConfig;
+import com.doumee.service.business.WxNoticeConfigService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+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 2024/10/17 15:44
+ */
+@Api(tags = "寰俊鍏紬鍙烽�氱煡閰嶇疆")
+@RestController
+@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/business/wxNoticeConfig")
+public class WxNoticeConfigController extends BaseController {
+
+    @Autowired
+    private WxNoticeConfigService wxNoticeConfigService;
+
+    @PreventRepeat
+    @ApiOperation("鏂板缓")
+    @PostMapping("/create")
+    @CloudRequiredPermission("business:wxnoticeconfig:create")
+    public ApiResponse create(@RequestBody WxNoticeConfig wxNoticeConfig) {
+        return ApiResponse.success(wxNoticeConfigService.create(wxNoticeConfig));
+    }
+
+    @ApiOperation("鏍规嵁ID鍒犻櫎")
+    @GetMapping("/delete/{id}")
+    @CloudRequiredPermission("business:wxnoticeconfig:delete")
+    public ApiResponse deleteById(@PathVariable Integer id) {
+        wxNoticeConfigService.deleteById(id);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鎵归噺鍒犻櫎")
+    @GetMapping("/delete/batch")
+    @CloudRequiredPermission("business:wxnoticeconfig: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));
+        }
+        wxNoticeConfigService.deleteByIdInBatch(idList);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鏍规嵁ID淇敼")
+    @PostMapping("/updateById")
+    @CloudRequiredPermission("business:wxnoticeconfig:update")
+    public ApiResponse updateById(@RequestBody WxNoticeConfig wxNoticeConfig) {
+        wxNoticeConfigService.updateById(wxNoticeConfig);
+        return ApiResponse.success(null);
+    }
+
+    @ApiOperation("鍒嗛〉鏌ヨ")
+    @PostMapping("/page")
+    @CloudRequiredPermission("business:wxnoticeconfig:query")
+    public ApiResponse<PageData<WxNoticeConfig>> findPage (@RequestBody PageWrap<WxNoticeConfig> pageWrap) {
+        return ApiResponse.success(wxNoticeConfigService.findPage(pageWrap));
+    }
+
+    @ApiOperation("瀵煎嚭Excel")
+    @PostMapping("/exportExcel")
+    @CloudRequiredPermission("business:wxnoticeconfig:exportExcel")
+    public void exportExcel (@RequestBody PageWrap<WxNoticeConfig> pageWrap, HttpServletResponse response) {
+        ExcelExporter.build(WxNoticeConfig.class).export(wxNoticeConfigService.findPage(pageWrap).getRecords(), "寰俊鍏紬鍙烽�氱煡閰嶇疆", response);
+    }
+
+    @ApiOperation("鏍规嵁ID鏌ヨ")
+    @GetMapping("/{id}")
+    @CloudRequiredPermission("business:wxnoticeconfig:query")
+    public ApiResponse findById(@PathVariable Integer id) {
+        return ApiResponse.success(wxNoticeConfigService.findById(id));
+    }
+
+
+
+    @ApiOperation("鎵归噺绂佸惎鐢�")
+    @GetMapping("/updateStatus/batch")
+    @CloudRequiredPermission("business:wxnoticeconfig: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));
+        }
+        wxNoticeConfigService.updateStatusByIdInBatch(idList,status);
+        return ApiResponse.success(null);
+    }
+
+
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/wx/wxPlat/WxPlatConstants.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/wx/wxPlat/WxPlatConstants.java
new file mode 100644
index 0000000..800b992
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/wx/wxPlat/WxPlatConstants.java
@@ -0,0 +1,145 @@
+package com.doumee.core.wx.wxPlat;
+
+import com.doumee.core.utils.Constants;
+
+/**
+ * Created by IntelliJ IDEA.
+ *
+ * @Author : Rk
+ * @create 2024/10/17 13:54
+ */
+public class WxPlatConstants {
+
+
+    public static final String visit ="1" ;
+    public static final String visitReport ="2" ;
+    public static final String hiddenDanger ="3" ;
+    public static final String carUse ="4" ;
+    public static final String meeting ="5" ;
+    public static final String platformBook ="6" ;
+    public static final String platformJob ="7" ;
+
+
+    /**
+     * 璁垮鐢宠
+     */
+    public interface visitContent{
+        //  鎻愪氦鎴愬姛缁欑敵璇蜂汉锛氱敵璇锋彁浜ゆ垚鍔熷緟瀹℃牳
+        String visitUpload = "visitUpload";
+        // 瀹℃壒閫氳繃缁欑敵璇蜂汉锛氱敵璇峰凡瀹℃牳閫氳繃
+        String visitAuditSuccess = "visitAuditSuccess";
+        //  瀹℃壒椹冲洖缁欑敵璇蜂汉锛氱敵璇峰凡琚┏鍥�
+        String visitAuditFail = "visitWaitAudit";
+        // 缁欏鎵逛汉锛氱敵璇峰緟鎮ㄥ鎵�
+        String visitWaitAudit = "visitWaitAudit";
+    }
+
+
+    /**
+     * 璁垮鎶ュ
+     */
+    public interface visitReportContent{
+        //  鎻愪氦鎴愬姛缁欑敵璇蜂汉锛氱敵璇锋彁浜ゆ垚鍔熷緟瀹℃牳
+        String visitReportUpload = "visitReportUpload";
+        // 瀹℃壒閫氳繃缁欑敵璇蜂汉锛氱敵璇峰凡瀹℃牳閫氳繃
+        String visitReportAuditSuccess = "visitReportAuditSuccess";
+        //  瀹℃壒椹冲洖缁欑敵璇蜂汉锛氱敵璇峰凡琚┏鍥�
+        String visitReportAuditFail = "visitReportAuditFail";
+        // 缁欏鎵逛汉锛氱敵璇峰緟鎮ㄥ鎵�
+        String visitReportWaitAudit = "visitReportAuditSuccess";
+    }
+
+
+    /**
+     * 闅愭偅闅忔墜鎷�
+     */
+    public interface hiddenDangerContent{
+        //闅愭偅涓婃姤閫氱煡
+        String hiddenDangerUpload = "hiddenDangerUpload";
+        //闅愭偅鏁存敼閫氱煡
+        String hiddenDangerDeal = "hiddenDangerDeal";
+    }
+
+
+    /**
+     * 鐢ㄨ溅鐢宠
+     */
+    public interface carUseBookContent{
+        //鐭俊閫氱煡妯℃澘锛堢粰澶勭悊浜猴級
+        String carUseBookUpload = "carUseBookUpload";
+        //鐢ㄨ溅鐢宠-瀹℃壒閫氳繃閫氱煡锛堢粰鐢宠浜猴級锛氥��
+        String carUseBookAuditSuccess = "carUseBookAuditSuccess";
+        //鐢ㄨ溅鐢宠-瀹℃壒椹冲洖閫氱煡锛堢粰鐢宠浜猴級锛氥��
+        String carUseBookAuditFail = "carUseBookAuditFail";
+        //鐢ㄨ溅鐢宠-瀹℃壒椹冲洖閫氱煡锛堢粰鐢宠浜猴級锛氥��
+        String carUseBookWaitAudit = "carUseBookWaitAudit";
+    }
+
+
+
+
+    /**
+     * 浼氳閫氱煡
+     */
+    public interface meetingContent{
+        //绾夸笅浼氳棰勭害鎴愬姛閫氱煡
+        String reservationSuccess = "reservationSuccess";
+        //浼氳鍙栨秷閫氱煡銆�
+        String meetingCancel = "meetingCancel";
+        //浼氳鍗冲皢寮�濮嬫彁閱掞紙璁㈤槄娑堟伅锛�
+        String meetingBeginA = "meetingBeginA";
+        //浼氳鍗冲皢缁撴潫鎻愰啋锛堣闃呮秷鎭級
+        String meetingEndA = "meetingEndA";
+    }
+
+
+
+    /**
+     * 鐗╂祦杞﹂绾�
+     */
+    public interface platformBookContent{
+        //  鎻愪氦鎴愬姛缁欑敵璇蜂汉锛氱敵璇锋彁浜ゆ垚鍔熷緟瀹℃牳
+        String platformBookUpload = "platformBookUpload";
+        // 瀹℃壒閫氳繃缁欑敵璇蜂汉锛氱敵璇峰凡瀹℃牳閫氳繃
+        String platformBookAuditSuccess = "platformBookAuditSuccess";
+        //  瀹℃壒椹冲洖缁欑敵璇蜂汉锛氱敵璇峰凡琚┏鍥�
+        String platformBookAuditFail = "platformBookWaitAudit";
+        // 缁欏鎵逛汉锛氱敵璇峰緟鎮ㄥ鎵�
+        String platformBookWaitAudit = "platformBookWaitAudit";
+    }
+
+
+
+    /**
+     * 鐗╂祦浣滀笟
+     */
+    public interface platformJobContent{
+        //鐗╂祦杞﹂绾�-鍙彿鍏ュ洯绛夊緟锛堢粰鍙告満锛�
+        String platformJobCallIn = "platformJobCallIn";
+        //鐗╂祦杞﹂绾�-鏈堝彴鍙彿锛堢粰鍙告満锛�
+        String platformJobSingIn = "platformJobSingIn";
+        //鐗╂祦杞﹂绾�-鏈堝彴鍙彿杩囧彿锛堢粰鍙告満锛�
+        String platformJobOverNum = "platformJobOverNum";
+        //鐗╂祦杞﹂绾�-浣滀笟寮�濮嬶紙缁欏徃鏈猴級
+        String platformJobWorking = "platformJobWorking";
+        //鐗╂祦杞﹂绾�-浣滀笟瀹屾垚锛堢粰鍙告満锛�
+        String platformJobFinish = "platformJobFinish";
+        //鐗╂祦杞﹂绾�-绂诲洯鎺堟潈锛堢粰鍙告満锛�
+        String platformJobLevelPower = "platformJobLevelPower";
+        //鐗╂祦杞﹂绾�-鏈堝彴杞Щ锛堢粰鍙告満锛�
+        String platformJobMove = "platformJobMove";
+        //鐗╂祦杞﹂绾�-浣滀笟寮傚父鎸傝捣锛堢粰鍙告満锛�
+        String platformJobError = "platformJobError";
+        //鐗╂祦杞﹂绾�-鏈堝彴鍋滈潬瓒呮椂锛堢粰鍙告満锛�
+        String platformJobTimeOut = "platformJobTimeOut";
+        //鐗╂祦杞﹂绾�-鏈堝彴鍋滈潬閿欒锛堢粰鍙告満锛�
+        String platformJobStopErr = "platformJobStopErr";
+        // 杩愯緭浠诲姟涓嬭揪 锛堢粰鍙告満锛�
+        String platformJobNewJob = "platformJobNewJob";
+    }
+
+
+
+
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/wx/wxPlat/WxPlatNotice.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/wx/wxPlat/WxPlatNotice.java
index 57febaf..90a9baf 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/core/wx/wxPlat/WxPlatNotice.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/wx/wxPlat/WxPlatNotice.java
@@ -1,6 +1,11 @@
 package com.doumee.core.wx.wxPlat;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.doumee.core.utils.Constants;
+import com.doumee.dao.business.WxNoticeConfigMapper;
 import com.doumee.dao.business.model.Visits;
+import com.doumee.dao.business.model.WxNoticeConfig;
+import com.github.xiaoymin.knife4j.core.util.CollectionUtils;
 import lombok.extern.slf4j.Slf4j;
 import me.chanjar.weixin.common.error.WxErrorException;
 import me.chanjar.weixin.mp.api.WxMpService;
@@ -8,6 +13,9 @@
 import me.chanjar.weixin.mp.bean.template.WxMpTemplateMessage;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.stereotype.Component;
+
+import java.util.List;
+import java.util.Objects;
 
 /**
  * 寰俊鍏紬鍙烽�氱煡
@@ -28,8 +36,9 @@
         this.wxMpService = wxMpService;
     }
 
+
     /**
-     * 璁垮璁板綍瀹℃壒涓氬姟閫氱煡
+     * 璁垮涓氬姟閫氱煡鎺ュ彛
      */
     public Boolean  sendVisitAuditTemplateNotice(Visits visits,String prefix,String tempId){
         if(StringUtils.isBlank(visits.getOpenid())){
@@ -40,6 +49,8 @@
                 .templateId(tempId)
                 .url(prefix + visits.getId())
                 .build();
+
+
         String thing1 = "寰呭鎵�";
         if(visits.getStatus()==2){
             thing1 = "瀹℃牳閫氳繃";
@@ -66,4 +77,50 @@
     }
 
 
+
+    /**
+     * 璁垮涓氬姟閫氱煡
+     */
+    public void  sendVisitTemplateNotice(WxNoticeConfigMapper wxNoticeConfigMapper,Visits visits,String objCode, String prefix, String tempId, List<String> openIds){
+        if(CollectionUtils.isNotEmpty(openIds)){
+           WxNoticeConfig wxNoticeConfig =  wxNoticeConfigMapper.selectOne(new QueryWrapper<WxNoticeConfig>().lambda().eq(WxNoticeConfig::getObjType,WxPlatConstants.visit)
+                    .eq(WxNoticeConfig::getObjCode,objCode)
+                           .eq(WxNoticeConfig::getStatus, Constants.ZERO)
+                    .last(" limit 1")
+            );
+           if(Objects.isNull(wxNoticeConfig)){
+               return;
+           }
+            WxMpTemplateMessage templateMessage =  WxMpTemplateMessage.builder()
+                    .toUser(visits.getOpenid())
+                    .templateId(tempId)
+                    .url(prefix + visits.getId())
+                    .build();
+
+            templateMessage.addData(new WxMpTemplateData("thing1", visits.getName()))
+                    .addData(new WxMpTemplateData("car_number7", StringUtils.isBlank(visits.getCarNos())?visits.getCarNos():"-"))
+                    .addData(new WxMpTemplateData("character_string6", Constants.equalsInteger(visits.getMemberNum(),Constants.ZERO)?Constants.ONE+"":visits.getMemberNum().toString()))
+                    .addData(new WxMpTemplateData("const9", wxNoticeConfig.getTitile()))
+                    .addData(new WxMpTemplateData("thing4", visits.getReason()))
+                    ;
+            String msgId = null;
+            try {
+                for (String openId:openIds) {
+                    templateMessage.setToUser(openId);
+                }
+                // 鍙戦�佹ā鏉挎秷鎭�
+                msgId = wxMpService.getTemplateMsgService().sendTemplateMsg(templateMessage);
+            } catch (WxErrorException e) {
+                e.printStackTrace();
+            }
+            log.warn("路==++--路鎺ㄩ�佸井淇℃ā鏉夸俊鎭細{}路--++==路", msgId != null ? "鎴愬姛" : "澶辫触");
+
+
+        }
+
+    }
+
+
+
+
 }
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/WxNoticeConfigMapper.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/WxNoticeConfigMapper.java
new file mode 100644
index 0000000..662380c
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/WxNoticeConfigMapper.java
@@ -0,0 +1,12 @@
+package com.doumee.dao.business;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.doumee.dao.business.model.WxNoticeConfig;
+
+/**
+ * @author 姹熻箘韫�
+ * @date 2024/10/17 15:44
+ */
+public interface WxNoticeConfigMapper extends BaseMapper<WxNoticeConfig> {
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/SmsConfig.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/SmsConfig.java
index dbf31cb..bd78a7a 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/SmsConfig.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/SmsConfig.java
@@ -59,6 +59,10 @@
     @ExcelColumn(name="鐭俊缂栫爜")
     private String code;
 
+    @ApiModelProperty(value = "鏍囬")
+    @ExcelColumn(name="鏍囬")
+    private String name;
+
     @ApiModelProperty(value = "鐭俊鍐呭")
     @ExcelColumn(name="鐭俊鍐呭")
     private String content;
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/WxNoticeConfig.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/WxNoticeConfig.java
new file mode 100644
index 0000000..e345901
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/WxNoticeConfig.java
@@ -0,0 +1,74 @@
+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 2024/10/17 15:44
+ */
+@Data
+@ApiModel("寰俊鍏紬鍙烽�氱煡閰嶇疆")
+@TableName("`wx_notice_config`")
+public class WxNoticeConfig {
+
+    @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 = "妯℃澘ID")
+    @ExcelColumn(name="妯℃澘ID")
+    private String tempId;
+
+    @ApiModelProperty(value = "鏍囬(鏋氫妇鍊�)")
+    @ExcelColumn(name="鏍囬(鏋氫妇鍊�)")
+    private String titile;
+
+    @ApiModelProperty(value = "涓氬姟缂栫爜")
+    @ExcelColumn(name="涓氬姟缂栫爜")
+    private String objCode;
+
+    @ApiModelProperty(value = "涓氬姟绫诲瀷 1=璁垮涓氬姟锛�2=璁垮鎶ュ锛�3=闅愭偅闅忔墜鎷嶏紱4=鐢ㄨ溅鐢宠锛�5=浼氳瀹や俊鎭紱6=鐗╂祦杞﹂绾︼紱7=鐗╂祦杞︿綔涓�", example = "1")
+    @ExcelColumn(name="涓氬姟绫诲瀷 1=璁垮涓氬姟锛�2=璁垮鎶ュ锛�3=闅愭偅闅忔墜鎷嶏紱4=鐢ㄨ溅鐢宠锛�5=浼氳瀹や俊鎭紱6=鐗╂祦杞﹂绾︼紱7=鐗╂祦杞︿綔涓�")
+    private Integer objType;
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformJobService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformJobService.java
index 195779b..880978b 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformJobService.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformJobService.java
@@ -115,7 +115,7 @@
     DriverHomeVO getDriverHome(LoginUserInfo loginUserInfo);
 
     /**
-     * 璺濈绛惧埌
+     * 璺濈绛惧埌路
      * @param signInDTO
      */
     void signIn(SignInDTO signInDTO);
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/WxNoticeConfigService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/WxNoticeConfigService.java
new file mode 100644
index 0000000..26b7918
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/WxNoticeConfigService.java
@@ -0,0 +1,101 @@
+package com.doumee.service.business;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.dao.business.model.WxNoticeConfig;
+import java.util.List;
+
+/**
+ * 寰俊鍏紬鍙烽�氱煡閰嶇疆Service瀹氫箟
+ * @author 姹熻箘韫�
+ * @date 2024/10/17 15:44
+ */
+public interface WxNoticeConfigService {
+
+    /**
+     * 鍒涘缓
+     * 
+     * @param wxNoticeConfig 瀹炰綋瀵硅薄
+     * @return Integer
+     */
+    Integer create(WxNoticeConfig wxNoticeConfig);
+
+    /**
+     * 涓婚敭鍒犻櫎
+     *
+     * @param id 涓婚敭
+     */
+    void deleteById(Integer id);
+
+    /**
+     * 鍒犻櫎
+     *
+     * @param wxNoticeConfig 瀹炰綋瀵硅薄
+     */
+    void delete(WxNoticeConfig wxNoticeConfig);
+
+    /**
+     * 鎵归噺涓婚敭鍒犻櫎
+     *
+     * @param ids 涓婚敭闆�
+     */
+    void deleteByIdInBatch(List<Integer> ids);
+
+    /**
+     * 涓婚敭鏇存柊
+     *
+     * @param wxNoticeConfig 瀹炰綋瀵硅薄
+     */
+    void updateById(WxNoticeConfig wxNoticeConfig);
+
+    /**
+     * 鎵归噺涓婚敭鏇存柊
+     *
+     * @param wxNoticeConfigs 瀹炰綋闆�
+     */
+    void updateByIdInBatch(List<WxNoticeConfig> wxNoticeConfigs);
+
+    /**
+     * 涓婚敭鏌ヨ
+     *
+     * @param id 涓婚敭
+     * @return WxNoticeConfig
+     */
+    WxNoticeConfig findById(Integer id);
+
+    /**
+     * 鏉′欢鏌ヨ鍗曟潯璁板綍
+     *
+     * @param wxNoticeConfig 瀹炰綋瀵硅薄
+     * @return WxNoticeConfig
+     */
+    WxNoticeConfig findOne(WxNoticeConfig wxNoticeConfig);
+
+    /**
+     * 鏉′欢鏌ヨ
+     *
+     * @param wxNoticeConfig 瀹炰綋瀵硅薄
+     * @return List<WxNoticeConfig>
+     */
+    List<WxNoticeConfig> findList(WxNoticeConfig wxNoticeConfig);
+  
+    /**
+     * 鍒嗛〉鏌ヨ
+     *
+     * @param pageWrap 鍒嗛〉瀵硅薄
+     * @return PageData<WxNoticeConfig>
+     */
+    PageData<WxNoticeConfig> findPage(PageWrap<WxNoticeConfig> pageWrap);
+
+    /**
+     * 鏉′欢缁熻
+     *
+     * @param wxNoticeConfig 瀹炰綋瀵硅薄
+     * @return long
+     */
+    long count(WxNoticeConfig wxNoticeConfig);
+
+
+    void updateStatusByIdInBatch(List<Integer> ids,Integer status);
+
+}
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/WxNoticeConfigServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/WxNoticeConfigServiceImpl.java
new file mode 100644
index 0000000..9ff4e73
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/WxNoticeConfigServiceImpl.java
@@ -0,0 +1,160 @@
+package com.doumee.service.business.impl;
+
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Utils;
+import com.doumee.dao.business.WxNoticeConfigMapper;
+import com.doumee.dao.business.model.SmsConfig;
+import com.doumee.dao.business.model.WxNoticeConfig;
+import com.doumee.service.business.WxNoticeConfigService;
+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 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 2024/10/17 15:44
+ */
+@Service
+public class WxNoticeConfigServiceImpl implements WxNoticeConfigService {
+
+    @Autowired
+    private WxNoticeConfigMapper wxNoticeConfigMapper;
+
+    @Override
+    public Integer create(WxNoticeConfig wxNoticeConfig) {
+        wxNoticeConfigMapper.insert(wxNoticeConfig);
+        return wxNoticeConfig.getId();
+    }
+
+    @Override
+    public void deleteById(Integer id) {
+        wxNoticeConfigMapper.deleteById(id);
+    }
+
+    @Override
+    public void delete(WxNoticeConfig wxNoticeConfig) {
+        UpdateWrapper<WxNoticeConfig> deleteWrapper = new UpdateWrapper<>(wxNoticeConfig);
+        wxNoticeConfigMapper.delete(deleteWrapper);
+    }
+
+    @Override
+    public void deleteByIdInBatch(List<Integer> ids) {
+        if (CollectionUtils.isEmpty(ids)) {
+            return;
+        }
+        wxNoticeConfigMapper.deleteBatchIds(ids);
+    }
+
+    @Override
+    public void updateById(WxNoticeConfig wxNoticeConfig) {
+        wxNoticeConfigMapper.updateById(wxNoticeConfig);
+    }
+
+    @Override
+    public void updateByIdInBatch(List<WxNoticeConfig> wxNoticeConfigs) {
+        if (CollectionUtils.isEmpty(wxNoticeConfigs)) {
+            return;
+        }
+        for (WxNoticeConfig wxNoticeConfig: wxNoticeConfigs) {
+            this.updateById(wxNoticeConfig);
+        }
+    }
+
+    @Override
+    public WxNoticeConfig findById(Integer id) {
+        return wxNoticeConfigMapper.selectById(id);
+    }
+
+    @Override
+    public WxNoticeConfig findOne(WxNoticeConfig wxNoticeConfig) {
+        QueryWrapper<WxNoticeConfig> wrapper = new QueryWrapper<>(wxNoticeConfig);
+        return wxNoticeConfigMapper.selectOne(wrapper);
+    }
+
+    @Override
+    public List<WxNoticeConfig> findList(WxNoticeConfig wxNoticeConfig) {
+        QueryWrapper<WxNoticeConfig> wrapper = new QueryWrapper<>(wxNoticeConfig);
+        return wxNoticeConfigMapper.selectList(wrapper);
+    }
+  
+    @Override
+    public PageData<WxNoticeConfig> findPage(PageWrap<WxNoticeConfig> pageWrap) {
+        IPage<WxNoticeConfig> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+        QueryWrapper<WxNoticeConfig> queryWrapper = new QueryWrapper<>();
+        Utils.MP.blankToNull(pageWrap.getModel());
+        if (pageWrap.getModel().getId() != null) {
+            queryWrapper.lambda().eq(WxNoticeConfig::getId, pageWrap.getModel().getId());
+        }
+        if (pageWrap.getModel().getCreator() != null) {
+            queryWrapper.lambda().eq(WxNoticeConfig::getCreator, pageWrap.getModel().getCreator());
+        }
+        if (pageWrap.getModel().getCreateDate() != null) {
+            queryWrapper.lambda().ge(WxNoticeConfig::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
+            queryWrapper.lambda().le(WxNoticeConfig::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
+        }
+        if (pageWrap.getModel().getEdirot() != null) {
+            queryWrapper.lambda().eq(WxNoticeConfig::getEdirot, pageWrap.getModel().getEdirot());
+        }
+        if (pageWrap.getModel().getEditDate() != null) {
+            queryWrapper.lambda().ge(WxNoticeConfig::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
+            queryWrapper.lambda().le(WxNoticeConfig::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
+        }
+        if (pageWrap.getModel().getIsdeleted() != null) {
+            queryWrapper.lambda().eq(WxNoticeConfig::getIsdeleted, pageWrap.getModel().getIsdeleted());
+        }
+        if (pageWrap.getModel().getRemark() != null) {
+            queryWrapper.lambda().eq(WxNoticeConfig::getRemark, pageWrap.getModel().getRemark());
+        }
+        if (pageWrap.getModel().getStatus() != null) {
+            queryWrapper.lambda().eq(WxNoticeConfig::getStatus, pageWrap.getModel().getStatus());
+        }
+        if (pageWrap.getModel().getTempId() != null) {
+            queryWrapper.lambda().eq(WxNoticeConfig::getTempId, pageWrap.getModel().getTempId());
+        }
+        if (pageWrap.getModel().getTitile() != null) {
+            queryWrapper.lambda().eq(WxNoticeConfig::getTitile, pageWrap.getModel().getTitile());
+        }
+        if (pageWrap.getModel().getObjCode() != null) {
+            queryWrapper.lambda().eq(WxNoticeConfig::getObjCode, pageWrap.getModel().getObjCode());
+        }
+        if (pageWrap.getModel().getObjType() != null) {
+            queryWrapper.lambda().eq(WxNoticeConfig::getObjType, pageWrap.getModel().getObjType());
+        }
+        for(PageWrap.SortData sortData: pageWrap.getSorts()) {
+            if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
+                queryWrapper.orderByDesc(sortData.getProperty());
+            } else {
+                queryWrapper.orderByAsc(sortData.getProperty());
+            }
+        }
+        return PageData.from(wxNoticeConfigMapper.selectPage(page, queryWrapper));
+    }
+
+    @Override
+    public long count(WxNoticeConfig wxNoticeConfig) {
+        QueryWrapper<WxNoticeConfig> wrapper = new QueryWrapper<>(wxNoticeConfig);
+        return wxNoticeConfigMapper.selectCount(wrapper);
+    }
+
+
+    @Override
+    public void updateStatusByIdInBatch(List<Integer> ids,Integer status) {
+        if (CollectionUtils.isEmpty(ids) || Objects.isNull(status)) {
+            return;
+        }
+        wxNoticeConfigMapper.update(new UpdateWrapper<WxNoticeConfig>()
+                .set("status",status)
+                .in("id",ids)
+        );
+    }
+
+}

--
Gitblit v1.9.3