jiangping
2024-12-11 eb49564ab17c6695d8928d5a63a57c58b3cfd79c
Merge remote-tracking branch 'origin/master'
已修改12个文件
412 ■■■■■ 文件已修改
server/meeting/meeting_service/src/main/java/com/doumee/core/wx/WxPlatNotice.java 20 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/system_service/src/main/java/com/doumee/core/utils/Constants.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/system_service/src/main/java/com/doumee/core/utils/SmsConstants.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/core/wx/wxPlat/WxPlatNotice.java 104 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CarUseBookServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerLogServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java 90 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformBooksServiceImpl.java 19 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java 106 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/WmsServiceImpl.java 46 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/meeting/meeting_service/src/main/java/com/doumee/core/wx/WxPlatNotice.java
@@ -2,6 +2,7 @@
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.doumee.biz.system.SystemDictDataBiz;
import com.doumee.core.utils.Constants;
import com.doumee.core.utils.DateUtil;
import com.doumee.core.utils.HttpsUtil;
@@ -70,8 +71,12 @@
     * @param token
     * @param openIds
     */
    public void  sendMeetingBookTemplateNotice(Bookings bookings,String tempId, String token, Set<String> openIds){
    public void  sendMeetingBookTemplateNotice(SystemDictDataBiz systemDictDataBiz,Bookings bookings,String tempId, String token, Set<String> openIds){
        if(CollectionUtils.isNotEmpty(openIds)){
            String url = Constants.getWxUrl(systemDictDataBiz.queryByCode(Constants.PLATFORM,Constants.WX_REDIRECT_URL).getCode(),
                    Constants.WxUrlParams.MEETING,bookings.getId().toString());
            String jumpUrl = systemDictDataBiz.queryByCode(Constants.PLATFORM,Constants.SIGN_IN_QRCODE_PREFIX).getCode().replace( "${param}", url);
            String postUrL = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token="+token;
            //整体参数map
            Map<String, Object> paramMap = new HashMap<String, Object>();
@@ -97,6 +102,7 @@
            paramMap.put("data", dataMap);
            for (String openId:openIds) {
                paramMap.clear();
                paramMap.put("url", jumpUrl);
                paramMap.put("template_id", tempId);
                paramMap.put("touser", openId);
                paramMap.put("data", dataMap);
@@ -119,8 +125,13 @@
     * @param token
     * @param openIds
     */
    public void  sendMeetingBookCancelTemplateNotice(Bookings bookings,String tempId, String token, Set<String> openIds){
    public void  sendMeetingBookCancelTemplateNotice(SystemDictDataBiz systemDictDataBiz,Bookings bookings, String tempId, String token, Set<String> openIds){
        if(CollectionUtils.isNotEmpty(openIds)){
            String url = Constants.getWxUrl(systemDictDataBiz.queryByCode(Constants.PLATFORM,Constants.WX_REDIRECT_URL).getCode(),
                    Constants.WxUrlParams.MEETING,bookings.getId().toString());
            String jumpUrl = systemDictDataBiz.queryByCode(Constants.PLATFORM,Constants.SIGN_IN_QRCODE_PREFIX).getCode().replace( "${param}", url);
            String postUrL = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token="+token;
            //整体参数map
            Map<String, Object> paramMap = new HashMap<String, Object>();
@@ -131,7 +142,7 @@
            thing1.put("value",bookings.getName());
            //会议时间
            Map<String, Object> time6 = new HashMap<String,Object>();
            time6.put("value", DateUtil.getDate(bookings.getStartTime(),"yyyy-MM-dd HH:mm:ss") );
            time6.put("value", DateUtil.getFomartDate(bookings.getStartTime(),"yyyy-MM-dd HH:mm:ss") );
            //会议地点
            Map<String, Object> thing2 = new HashMap<String,Object>();
            thing2.put("value",bookings.getRoomName());
@@ -143,9 +154,10 @@
            dataMap.put("time6",time6);
            dataMap.put("thing2",thing2);
            dataMap.put("thing4",thing4);
            paramMap.put("data", dataMap);
            for (String openId:openIds) {
                paramMap.clear();
                paramMap.put("url", jumpUrl);
                paramMap.put("data", dataMap);
                paramMap.put("template_id", tempId);
                paramMap.put("touser", openId);
                paramMap.put("data", dataMap);
server/system_service/src/main/java/com/doumee/core/utils/Constants.java
@@ -15,6 +15,7 @@
import java.io.IOException;
import java.math.BigDecimal;
import java.net.URLDecoder;
import java.net.URLEncoder;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
@@ -211,7 +212,13 @@
     * @return
     */
    public static String getWxUrl(String code, WxUrlParams paramCode, String ywid) {
        return  code.replace("${type}",paramCode.type+"").replace("${yw}",paramCode.yw).replace("${ywid}",ywid);
        String url = code.replace("${type}",paramCode.type+"").replace("${yw}",paramCode.yw).replace("${ywid}",ywid);
        try {
            url = URLEncoder.encode(code.replace("${type}",paramCode.type+"").replace("${yw}",paramCode.yw).replace("${ywid}",ywid),"UTF-8");
        }catch (Exception e){
        }
        return url;
    }
    public interface VisitIccmStatus{
@@ -1162,8 +1169,8 @@
    }
    public  enum WxUrlParams {
        BISCREEN_CODE(0,2, "0", "门口大屏二维码"),
        MEETING_CODE(1,0, "1","会议室大屏"),
        BISCREEN_CODE(0,0, "0", "门口大屏二维码"),
        MEETING_CODE(1,2, "1","会议室大屏"),
        VISIT_RECORD_VISIT(2,1, "2","访客记录-访客"),
        VISIT_RECORD_USER(3,2, "2","访客记录-员工"),
        VISIT_REPORT_RECORD_USER(5,2, "3","访客报备记录-员工"),
@@ -1173,11 +1180,10 @@
        PLATFORM_BOOK_DRIVER(9,0, "7","物流车预约-司机"),
        PLATFORM_BOOK(10,2, "7","物流车预约-员工"),
        PLATFORM_JOB_DRIVER(11,0, "8","月台作业-司机"),
        PLATFORM_JOB_BOOK(12,2, "8","月台作业-员工"),
        ;
        // 成员变量
        private int key;
        private int type;//用户类型 0员工 1司机
        private int type;//用户类型 0司机 1访客 2员工
        private String yw;//业务类型
        private String info;//说明
server/system_service/src/main/java/com/doumee/core/utils/SmsConstants.java
@@ -135,6 +135,8 @@
    public interface meetingContent{
        // meetingBookJoinUser    会议室申请(通知参会人)
        String meetingBookJoinUser = "meetingBookJoinUser";
        // meetingBookJoinUser    会议取消(通知会议创建人)
        String meetingBookCancel = "meetingBookCancel";
    }
server/visits/dmvisit_service/src/main/java/com/doumee/core/wx/wxPlat/WxPlatNotice.java
@@ -81,7 +81,7 @@
     * @param objCode  visitUpload,visitAuditSuccess,visitWaitAudit,visitWaitAudit,visitReportUpload,visitReportAuditSuccess,visitReportAuditFail, visitReportAuditSuccess
     * @param openIds
     */
    public void  sendVisitTemplateNotice(WxNoticeConfigMapper wxNoticeConfigMapper, Visits visits, String objCode, String token, List<String> openIds){
    public void  sendVisitTemplateNotice(SystemDictDataBiz systemDictDataBiz,WxNoticeConfigMapper wxNoticeConfigMapper, Visits visits, String objCode, String token, List<String> openIds){
        try{
            if(CollectionUtils.isNotEmpty(openIds)){
                WxNoticeConfig wxNoticeConfig =  wxNoticeConfigMapper.selectOne(new QueryWrapper<WxNoticeConfig>().lambda()
@@ -93,6 +93,19 @@
                if(Objects.isNull(wxNoticeConfig)){
                    return;
                }
                Constants.WxUrlParams wxUrlParams =  Constants.WxUrlParams.VISIT_REPORT_RECORD_USER;
                if(!Constants.equalsInteger(visits.getType(),Constants.TWO)){
                    if(objCode.equals(WxPlatConstants.visitContent.visitUpload)){
                        wxUrlParams = Constants.WxUrlParams.VISIT_RECORD_VISIT;
                    }else{
                        wxUrlParams = Constants.WxUrlParams.VISIT_RECORD_USER;
                    }
                }
                String url = Constants.getWxUrl(systemDictDataBiz.queryByCode(Constants.PLATFORM,Constants.WX_REDIRECT_URL).getCode(),
                        wxUrlParams
                        ,visits.getId().toString());
                String jumpUrl = systemDictDataBiz.queryByCode(Constants.PLATFORM,Constants.SIGN_IN_QRCODE_PREFIX).getCode().replace( "${param}", url);
                String postUrL = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token="+token;
                //整体参数map
                Map<String, Object> paramMap = new HashMap<String, Object>();
@@ -116,6 +129,7 @@
                paramMap.put("data", dataMap);
                for (String openId:openIds) {
                    paramMap.clear();
                    paramMap.put("url", jumpUrl);
                    paramMap.put("template_id", wxNoticeConfig.getTempId());
                    paramMap.put("touser", openId);
                    paramMap.put("data", dataMap);
@@ -141,10 +155,10 @@
     * @param objCode hiddenDangerUpload
     * @param openIds
     */
    public void  sendHiddenDangerUploadTemplateNotice(WxNoticeConfigMapper wxNoticeConfigMapper, HiddenDanger hiddenDanger, String objCode,String token, List<String> openIds){
    public void  sendHiddenDangerUploadTemplateNotice(SystemDictDataBiz systemDictDataBiz,WxNoticeConfigMapper wxNoticeConfigMapper, HiddenDanger hiddenDanger, String objCode,String token, List<String> openIds){
        try{
            if(CollectionUtils.isNotEmpty(openIds)){
                WxNoticeConfig wxNoticeConfig =  wxNoticeConfigMapper.selectOne(new QueryWrapper<WxNoticeConfig>().lambda().eq(WxNoticeConfig::getObjType,WxPlatConstants.visit)
                WxNoticeConfig wxNoticeConfig =  wxNoticeConfigMapper.selectOne(new QueryWrapper<WxNoticeConfig>().lambda().eq(WxNoticeConfig::getObjType,WxPlatConstants.hiddenDanger)
                        .eq(WxNoticeConfig::getObjCode,objCode)
                        .eq(WxNoticeConfig::getStatus, Constants.ZERO)
                        .last(" limit 1")
@@ -152,6 +166,10 @@
                if(Objects.isNull(wxNoticeConfig)){
                    return;
                }
                String url = Constants.getWxUrl(systemDictDataBiz.queryByCode(Constants.PLATFORM,Constants.WX_REDIRECT_URL).getCode(),
                        Constants.WxUrlParams.HIDDEN_DANGER,hiddenDanger.getId().toString());
                String jumpUrl = systemDictDataBiz.queryByCode(Constants.PLATFORM,Constants.SIGN_IN_QRCODE_PREFIX).getCode().replace( "${param}", url);
                String postUrL = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token="+token;
                //整体参数map
                Map<String, Object> paramMap = new HashMap<String, Object>();
@@ -168,18 +186,19 @@
                thing12.put("value",hiddenDanger.getMemberName());
                //提报时间
                Map<String, Object> time11 = new HashMap<String,Object>();
                time11.put("value", DateUtil.getDate(hiddenDanger.getCreateDate(),"yyyy年MM月dd日 HH:mm:ss") );
                time11.put("value", DateUtil.getFomartDate(hiddenDanger.getCreateDate(),"yyyy年MM月dd日 HH:mm:ss") );
                dataMap.put("thing9",thing9);
                dataMap.put("thing1",thing1);
                dataMap.put("thing12",thing12);
                dataMap.put("time11",time11);
                paramMap.put("template_id", wxNoticeConfig.getTempId());
                paramMap.put("data", dataMap);
                for (String openId:openIds) {
                    paramMap.clear();
                    paramMap.put("template_id", wxNoticeConfig.getTempId());
                    paramMap.put("url", jumpUrl);
                    paramMap.put("touser", openId);
                    paramMap.put("data", dataMap);
                    String response = HttpsUtil.postJson(postUrL, JSONObject.toJSONString(paramMap));
                    log.warn("·==++--·推送微信模板信息跳转地址:{}", jumpUrl);
                    if(StringUtils.isBlank(response)){
                        log.warn("·==++--·推送微信模板信息:{}·--++==·", "失败");
                    }else{
@@ -203,10 +222,10 @@
     * @param objCode hiddenDangerDeal
     * @param openIds
     */
    public void  sendHiddenDangerDealTemplateNotice(WxNoticeConfigMapper wxNoticeConfigMapper, HiddenDanger hiddenDanger, String objCode,String token, List<String> openIds){
    public void  sendHiddenDangerDealTemplateNotice(SystemDictDataBiz systemDictDataBiz,WxNoticeConfigMapper wxNoticeConfigMapper, HiddenDanger hiddenDanger, String objCode,String token, List<String> openIds){
        try{
            if(CollectionUtils.isNotEmpty(openIds)){
                WxNoticeConfig wxNoticeConfig =  wxNoticeConfigMapper.selectOne(new QueryWrapper<WxNoticeConfig>().lambda().eq(WxNoticeConfig::getObjType,WxPlatConstants.visit)
                WxNoticeConfig wxNoticeConfig =  wxNoticeConfigMapper.selectOne(new QueryWrapper<WxNoticeConfig>().lambda().eq(WxNoticeConfig::getObjType,WxPlatConstants.hiddenDanger)
                        .eq(WxNoticeConfig::getObjCode,objCode)
                        .eq(WxNoticeConfig::getStatus, Constants.ZERO)
                        .last(" limit 1")
@@ -214,6 +233,10 @@
                if(Objects.isNull(wxNoticeConfig)){
                    return;
                }
                String url = Constants.getWxUrl(systemDictDataBiz.queryByCode(Constants.PLATFORM,Constants.WX_REDIRECT_URL).getCode(),
                        Constants.WxUrlParams.HIDDEN_DANGER,hiddenDanger.getId().toString());
                String jumpUrl = systemDictDataBiz.queryByCode(Constants.PLATFORM,Constants.SIGN_IN_QRCODE_PREFIX).getCode().replace( "${param}", url);
                String postUrL = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token="+token;
                //整体参数map
                Map<String, Object> paramMap = new HashMap<String, Object>();
@@ -233,19 +256,20 @@
                thing10.put("value",hiddenDanger.getCheckorName());
                //通知时间
                Map<String, Object> time16 = new HashMap<String,Object>();
                time16.put("value", DateUtil.getDate(hiddenDanger.getDealTime(),"yyyy年MM月dd日 HH:mm:ss") );
                time16.put("value", DateUtil.getFomartDate(hiddenDanger.getDealTime(),"yyyy年MM月dd日 HH:mm:ss") );
                dataMap.put("thing17",thing17);
                dataMap.put("thing3",thing3);
                dataMap.put("thing13",thing13);
                dataMap.put("thing10",thing10);
                dataMap.put("time16",time16);
                paramMap.put("template_id", wxNoticeConfig.getTempId());
                paramMap.put("data", dataMap);
                for (String openId:openIds) {
                    paramMap.clear();
                    paramMap.put("url", jumpUrl);
                    paramMap.put("template_id", wxNoticeConfig.getTempId());
                    paramMap.put("touser", openId);
                    paramMap.put("data", dataMap);
                    String response = HttpsUtil.postJson(postUrL, JSONObject.toJSONString(paramMap));
                    log.warn("·==++--·推送微信模板信息跳转地址:{}", jumpUrl);
                    if(StringUtils.isBlank(response)){
                        log.warn("·==++--·推送微信模板信息:{}·--++==·", "失败");
                    }else{
@@ -268,7 +292,7 @@
     * @param openIds
     * @param sendType 0=申请人;1=审批人
     */
    public void  sendCarUseBookTemplateNotice(WxNoticeConfigMapper wxNoticeConfigMapper, CarUseBook carUseBook, String objCode,String token,
    public void  sendCarUseBookTemplateNotice(SystemDictDataBiz systemDictDataBiz,WxNoticeConfigMapper wxNoticeConfigMapper, CarUseBook carUseBook, String objCode,String token,
                                              List<String> openIds,Integer sendType){
        try {
            if(CollectionUtils.isNotEmpty(openIds)){
@@ -280,6 +304,10 @@
                if(Objects.isNull(wxNoticeConfig)){
                    return;
                }
                String url = Constants.getWxUrl(systemDictDataBiz.queryByCode(Constants.PLATFORM,Constants.WX_REDIRECT_URL).getCode(),
                        Constants.WxUrlParams.CAR_USE,carUseBook.getId().toString());
                String jumpUrl = systemDictDataBiz.queryByCode(Constants.PLATFORM,Constants.SIGN_IN_QRCODE_PREFIX).getCode().replace( "${param}", url);
                String postUrL = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token="+token;
                //整体参数map
                Map<String, Object> paramMap = new HashMap<String, Object>();
@@ -320,6 +348,7 @@
                paramMap.put("data", dataMap);
                for (String openId:openIds) {
                    paramMap.clear();
                    paramMap.put("url", jumpUrl);
                    paramMap.put("template_id", wxNoticeConfig.getTempId());
                    paramMap.put("touser", openId);
                    paramMap.put("data", dataMap);
@@ -347,11 +376,11 @@
     * @param openIds
     * @param sendType 0=申请人;1=审批人
     */
    public void  sendPlatformBookTemplateNotice(WxNoticeConfigMapper wxNoticeConfigMapper, PlatformBooks platformBooks, String objCode,String token,
    public void  sendPlatformBookTemplateNotice(SystemDictDataBiz systemDictDataBiz,WxNoticeConfigMapper wxNoticeConfigMapper, PlatformBooks platformBooks, String objCode,String token,
                                       List<String> openIds,Integer sendType){
        try{
            if(CollectionUtils.isNotEmpty(openIds)){
                WxNoticeConfig wxNoticeConfig =  wxNoticeConfigMapper.selectOne(new QueryWrapper<WxNoticeConfig>().lambda().eq(WxNoticeConfig::getObjType,WxPlatConstants.visit)
                WxNoticeConfig wxNoticeConfig =  wxNoticeConfigMapper.selectOne(new QueryWrapper<WxNoticeConfig>().lambda().eq(WxNoticeConfig::getObjType,WxPlatConstants.platformBook)
                        .eq(WxNoticeConfig::getObjCode,objCode)
                        .eq(WxNoticeConfig::getStatus, Constants.ZERO)
                        .last(" limit 1")
@@ -359,6 +388,14 @@
                if(Objects.isNull(wxNoticeConfig)){
                    return;
                }
                Constants.WxUrlParams  wxUrlParams = Constants.WxUrlParams.PLATFORM_BOOK_DRIVER;
                if(!objCode.equals(WxPlatConstants.platformBookContent.platformBookUpload)){
                    wxUrlParams = Constants.WxUrlParams.PLATFORM_BOOK;
                }
                String url = Constants.getWxUrl(systemDictDataBiz.queryByCode(Constants.PLATFORM,Constants.WX_REDIRECT_URL).getCode(),
                        wxUrlParams,platformBooks.getId().toString());
                String jumpUrl = systemDictDataBiz.queryByCode(Constants.PLATFORM,Constants.SIGN_IN_QRCODE_PREFIX).getCode().replace( "${param}", url);
                String postUrL = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token="+token;
                //整体参数map
                Map<String, Object> paramMap = new HashMap<String, Object>();
@@ -388,15 +425,15 @@
                thing8.put("value", platformBooks.getDriverName());
                //时间
                Map<String, Object> time4 = new HashMap<String,Object>();
                time4.put("value", DateUtil.getDate(platformBooks.getArriveDate(),"yyyy年MM月dd日 HH:mm:ss") );
                time4.put("value", DateUtil.getFomartDate(platformBooks.getArriveDate(),"yyyy年MM月dd日 HH:mm:ss") );
                dataMap.put("const9",const9);
                dataMap.put("car_number3",car_number3);
                dataMap.put("phrase4",phrase4);
                dataMap.put("thing8",thing8);
                dataMap.put("time4",time4);
                paramMap.put("data", dataMap);
                dataMap.put("time2",time4);
                for (String openId:openIds) {
                    paramMap.clear();
                    paramMap.put("url", jumpUrl);
                    paramMap.put("template_id", wxNoticeConfig.getTempId());
                    paramMap.put("touser", openId);
                    paramMap.put("data", dataMap);
@@ -423,7 +460,7 @@
     * @param objCode   platformJobNewJob
     * @param openIds
     */
    public void  sendWmsTemplateNotice(WxNoticeConfigMapper wxNoticeConfigMapper, PlatformJob platformJob, String objCode,String token,
    public void  sendWmsTemplateNotice(SystemDictDataBiz systemDictDataBiz, WxNoticeConfigMapper wxNoticeConfigMapper, PlatformJob platformJob, String objCode,String token,
                                               List<String> openIds){
        try{
            if(CollectionUtils.isNotEmpty(openIds)){
@@ -435,6 +472,11 @@
                if(Objects.isNull(wxNoticeConfig)){
                    return;
                }
                String url = Constants.getWxUrl(systemDictDataBiz.queryByCode(Constants.PLATFORM,Constants.WX_REDIRECT_URL).getCode(),
                        Constants.WxUrlParams.PLATFORM_JOB_DRIVER,platformJob.getId().toString());
                String jumpUrl = systemDictDataBiz.queryByCode(Constants.PLATFORM,Constants.SIGN_IN_QRCODE_PREFIX).getCode().replace( "${param}", url);
                String postUrL = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token="+token;
                //整体参数map
                Map<String, Object> paramMap = new HashMap<String, Object>();
@@ -448,13 +490,14 @@
                thing3.put("value", platformJob.getDriverName());
                //下达时间
                Map<String, Object> time4 = new HashMap<String,Object>();
                time4.put("value", DateUtil.getDate(platformJob.getCreateDate(),"yyyy年MM月dd日 HH:mm:ss") );
                time4.put("value", DateUtil.getFomartDate(platformJob.getCreateDate(),"yyyy年MM月dd日 HH:mm:ss") );
                dataMap.put("character_string1",character_string1);
                dataMap.put("thing3",thing3);
                dataMap.put("time4",time4);
                paramMap.put("data", dataMap);
                for (String openId:openIds) {
                    paramMap.clear();
                    paramMap.put("url",jumpUrl);
                    paramMap.put("template_id", wxNoticeConfig.getTempId());
                    paramMap.put("touser", openId);
                    paramMap.put("data", dataMap);
@@ -480,7 +523,7 @@
     * @param objCode   platformJobNewJob
     * @param openIds
     */
    public void  sendWmsCancelTemplateNotice(WxNoticeConfigMapper wxNoticeConfigMapper, PlatformJob platformJob, String objCode,String token,
    public void  sendWmsCancelTemplateNotice(SystemDictDataBiz systemDictDataBiz,WxNoticeConfigMapper wxNoticeConfigMapper, PlatformJob platformJob, String objCode,String token,
                                       List<String> openIds){
        try{
            if(CollectionUtils.isNotEmpty(openIds)){
@@ -492,6 +535,11 @@
                if(Objects.isNull(wxNoticeConfig)){
                    return;
                }
                String url = Constants.getWxUrl(systemDictDataBiz.queryByCode(Constants.PLATFORM,Constants.WX_REDIRECT_URL).getCode(),
                        Constants.WxUrlParams.PLATFORM_JOB_DRIVER,platformJob.getId().toString());
                String jumpUrl = systemDictDataBiz.queryByCode(Constants.PLATFORM,Constants.SIGN_IN_QRCODE_PREFIX).getCode().replace( "${param}", url);
                String postUrL = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token="+token;
                //整体参数map
                Map<String, Object> paramMap = new HashMap<String, Object>();
@@ -502,12 +550,13 @@
                character_string1.put("value",platformJob.getBillCode());
                //取消时间
                Map<String, Object> time6 = new HashMap<String,Object>();
                time6.put("value", DateUtil.getDate(new Date(),"yyyy年MM月dd日 HH:mm:ss") );
                time6.put("value", DateUtil.getFomartDate(new Date(),"yyyy年MM月dd日 HH:mm:ss") );
                dataMap.put("character_string1",character_string1);
                dataMap.put("time6",time6);
                paramMap.put("data", dataMap);
                for (String openId:openIds) {
                    paramMap.clear();
                    paramMap.put("url",jumpUrl);
                    paramMap.put("template_id", wxNoticeConfig.getTempId());
                    paramMap.put("touser", openId);
                    paramMap.put("data", dataMap);
@@ -535,11 +584,11 @@
     * @param token
     * @param openIds
     */
    public void  sendPlatformJobTemplateNotice(WxNoticeConfigMapper wxNoticeConfigMapper, PlatformJob platformJob, String objCode,String token,
    public void  sendPlatformJobTemplateNotice(SystemDictDataBiz systemDictDataBiz,WxNoticeConfigMapper wxNoticeConfigMapper, PlatformJob platformJob, String objCode,String token,
                                       List<String> openIds){
        try{
            if(CollectionUtils.isNotEmpty(openIds)){
                WxNoticeConfig wxNoticeConfig =  wxNoticeConfigMapper.selectOne(new QueryWrapper<WxNoticeConfig>().lambda().eq(WxNoticeConfig::getObjType,WxPlatConstants.visit)
                WxNoticeConfig wxNoticeConfig =  wxNoticeConfigMapper.selectOne(new QueryWrapper<WxNoticeConfig>().lambda().eq(WxNoticeConfig::getObjType,WxPlatConstants.platformJob)
                        .eq(WxNoticeConfig::getObjCode,objCode)
                        .eq(WxNoticeConfig::getStatus, Constants.ZERO)
                        .last(" limit 1")
@@ -547,6 +596,11 @@
                if(Objects.isNull(wxNoticeConfig)){
                    return;
                }
                String url = Constants.getWxUrl(systemDictDataBiz.queryByCode(Constants.PLATFORM,Constants.WX_REDIRECT_URL).getCode(),
                        Constants.WxUrlParams.PLATFORM_JOB_DRIVER,platformJob.getId().toString());
                String jumpUrl = systemDictDataBiz.queryByCode(Constants.PLATFORM,Constants.SIGN_IN_QRCODE_PREFIX).getCode().replace( "${param}", url);
                String postUrL = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token="+token;
                //整体参数map
                Map<String, Object> paramMap = new HashMap<String, Object>();
@@ -563,14 +617,14 @@
                thing3.put("value", platformJob.getPlatformName());
                //时间
                Map<String, Object> time4 = new HashMap<String,Object>();
                time4.put("value", DateUtil.getDate(new Date(),"yyyy年MM月dd日 HH:mm:ss") );
                time4.put("value", DateUtil.getFomartDate(new Date(),"yyyy年MM月dd日 HH:mm:ss") );
                dataMap.put("const6",const6);
                dataMap.put("character_string1",character_string1);
                dataMap.put("thing3",thing3);
                dataMap.put("time4",time4);
                paramMap.put("data", dataMap);
                for (String openId:openIds) {
                    paramMap.clear();
                    paramMap.put("url",jumpUrl);
                    paramMap.put("template_id", wxNoticeConfig.getTempId());
                    paramMap.put("touser", openId);
                    paramMap.put("data", dataMap);
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CarUseBookServiceImpl.java
@@ -153,7 +153,7 @@
        SystemUser systemUser = systemUserMapper.selectById(carUseBook.getCreator());
        if(Objects.nonNull(systemUser) && StringUtils.isNotBlank(systemUser.getOpenid())){
            carUseBook.setMemberName(systemUser.getRealname());
            wxPlatNotice.sendCarUseBookTemplateNotice(
            wxPlatNotice.sendCarUseBookTemplateNotice(systemDictDataBiz,
                    wxNoticeConfigMapper,carUseBook,
                    WxPlatConstants.carUseBookContent.carUseBookUpload,
                    systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_ACCESS_TOKEN).getCode(),
@@ -522,7 +522,7 @@
            if(StringUtils.isNotBlank(systemUser.getOpenid())){
                carUseBook.setMemberName(systemUser.getRealname());
                WxPlatNotice wxPlatNotice = new WxPlatNotice();
                wxPlatNotice.sendCarUseBookTemplateNotice(
                wxPlatNotice.sendCarUseBookTemplateNotice(systemDictDataBiz,
                        wxNoticeConfigMapper,
                        carUseBook,
                        WxPlatConstants.carUseBookContent.carUseBookCancel,
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerLogServiceImpl.java
@@ -134,7 +134,7 @@
                newBean.setTitle("隐患处理");
                newBean.setAvatar("-");
                SystemUser systemUser = systemUserMapper.selectOne(new QueryWrapper<SystemUser>().lambda().eq(SystemUser::getMemberId,hiddenDanger.getCheckUserId()));
                SystemUser systemUser = systemUserMapper.selectOne(new QueryWrapper<SystemUser>().lambda().eq(SystemUser::getMemberId,hiddenDanger.getCheckUserId()).last(" limit 1 "));
                if(Objects.nonNull(systemUser)){
                    newBean.setCreateUserName(systemUser.getRealname());
                    newBean.setAvatar(systemUser.getAvatar());
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java
@@ -23,9 +23,11 @@
import com.doumee.dao.business.model.*;
import com.doumee.dao.system.MultifileMapper;
import com.doumee.dao.system.SystemUserMapper;
import com.doumee.dao.system.join.NoticesJoinMapper;
import com.doumee.dao.system.model.Multifile;
import com.doumee.dao.system.model.Notices;
import com.doumee.dao.system.model.SystemUser;
import com.doumee.service.business.HiddenDangerService;
import com.doumee.service.business.third.EmayService;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
@@ -54,6 +56,9 @@
    @Autowired
    private SystemDictDataBiz systemDictDataBiz;
    @Autowired
    private SystemUserMapper systemUserMapper;
    @Autowired
    private MemberMapper memberMapper;
@@ -112,6 +117,7 @@
        if(Objects.isNull(hiddenDangerCate)){
            throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"未查询到隐患类型");
        }
        hiddenDanger.setCategoryName(hiddenDangerCate.getName());
        hiddenDanger.setCreator(hiddenDanger.getLoginUserInfo().getId());
        hiddenDanger.setAreaName(hiddenDangerParam.getName());
        hiddenDanger.setStatus(Constants.ZERO);
@@ -190,7 +196,6 @@
        noticesJoinMapper.insert(notices);
        WxPlatNotice wxPlatNotice = new WxPlatNotice();
        if(Objects.nonNull(member) && StringUtils.isNotBlank(member.getPhone())){
            //发送短信通知
            SmsEmailServiceImpl.sendHiddenDangerSms(systemDictDataBiz,
@@ -200,23 +205,33 @@
            );
        }
        WxPlatNotice wxPlatNotice = new WxPlatNotice();
        SystemUser systemUser = systemUserMapper.selectById(hiddenDanger.getLoginUserInfo().getId());
        hiddenDanger.setMemberName(systemUser.getRealname());
        //提交人的微信公众号通知
        if(Objects.nonNull(createMember)&&StringUtils.isNotBlank(createMember.getOpenid())){
            wxPlatNotice.sendHiddenDangerUploadTemplateNotice(
        if(Objects.nonNull(systemUser)&&StringUtils.isNotBlank(systemUser.getOpenid())){
            wxPlatNotice.sendHiddenDangerUploadTemplateNotice(systemDictDataBiz,
                    wxNoticeConfigMapper,hiddenDanger,
                    WxPlatConstants.hiddenDangerContent.hiddenDangerUpload,
                    systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_ACCESS_TOKEN).getCode(),
                    Arrays.asList(createMember.getOpenid().split(",")));
        }
        //处理人的微信公众号通知
        if(Objects.nonNull(member)&&StringUtils.isNotBlank(member.getOpenid())){
            wxPlatNotice.sendHiddenDangerUploadTemplateNotice(
                    wxNoticeConfigMapper,hiddenDanger,
                    WxPlatConstants.hiddenDangerContent.hiddenDangerUpload,
                    systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_ACCESS_TOKEN).getCode(),
                    Arrays.asList(member.getOpenid().split(",")));
                    Arrays.asList(systemUser.getOpenid().split(",")));
        }
        SystemUser checkUser = systemUserMapper.selectOne(new QueryWrapper<SystemUser>().lambda()
                .eq(SystemUser::getDeleted, Constants.ZERO)
                .eq(SystemUser::getMemberId,hiddenDanger.getCheckUserId())
                .last(" limit 1 "));
        //处理人的微信公众号通知
        if(Objects.nonNull(checkUser)&&StringUtils.isNotBlank(checkUser.getOpenid())){
            wxPlatNotice.sendHiddenDangerUploadTemplateNotice(systemDictDataBiz,
                    wxNoticeConfigMapper,hiddenDanger,
                    WxPlatConstants.hiddenDangerContent.hiddenDangerUpload,
                    systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_ACCESS_TOKEN).getCode(),
                    Arrays.asList(checkUser.getOpenid().split(",")));
        }
        return hiddenDanger.getId();
    }
@@ -422,6 +437,12 @@
        hiddenDanger.setEditDate(new Date());
        hiddenDanger.setCheckDate(hiddenDanger.getEditDate());
        hiddenDangerMapper.updateById(hiddenDanger);
        HiddenDanger model = hiddenDangerMapper.selectById(hiddenDanger.getId());
        HiddenDangerParam hiddenDangerCate = hiddenDangerParamMapper.selectById(model.getCateId());
        if(Objects.isNull(hiddenDangerCate)){
            throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"未查询到隐患类型");
        }
        model.setCategoryName(hiddenDangerCate.getName());
        //存储 操作日志
        HiddenDangerLog hiddenDangerLog = new HiddenDangerLog();
        hiddenDangerLog.setIsdeleted(Constants.ZERO);
@@ -444,26 +465,29 @@
                .eq(Notices::getUserId,hiddenDanger.getLoginUserInfo().getMemberId())
        );
        SystemUser memberUser = systemUserMapper.selectOne(new QueryWrapper<SystemUser>().lambda()
                .eq(SystemUser::getDeleted, Constants.ZERO)
                .eq(SystemUser::getMemberId,model.getMemberId()));
        if(Constants.equalsInteger(hiddenDanger.getStatus(),Constants.ONE)){
            Member member = memberMapper.selectById(hiddenDanger.getMemberId());
            if(Objects.nonNull(member) && StringUtils.isNotBlank(member.getPhone())){
            if(Objects.nonNull(memberUser) && StringUtils.isNotBlank(memberUser.getMobile())){
                //发送短信通知
                SmsEmailServiceImpl.sendHiddenDangerSms(systemDictDataBiz,
                        emayService,smsEmailMapper,smsConfigMapper,hiddenDangerMapper,hiddenDanger.getId(),
                        SmsConstants.hiddenDangerContent.hiddenDangerDealOver,
                        Arrays.asList(member.getPhone().split(","))
                        Arrays.asList(memberUser.getMobile().split(","))
                );
            }
        }
        Member createMember = memberMapper.selectById(hiddenDanger.getMemberId());
        model.setCheckorName(hiddenDanger.getLoginUserInfo().getRealname());
        model.setMemberName(memberUser.getRealname());
        //处理人的微信公众号通知
        if(Objects.nonNull(createMember)&&StringUtils.isNotBlank(createMember.getOpenid())){
        if(Objects.nonNull(memberUser)&&StringUtils.isNotBlank(memberUser.getOpenid())){
            WxPlatNotice wxPlatNotice = new WxPlatNotice();
            wxPlatNotice.sendHiddenDangerDealTemplateNotice(
                    wxNoticeConfigMapper,hiddenDanger,
            wxPlatNotice.sendHiddenDangerDealTemplateNotice(systemDictDataBiz,
                    wxNoticeConfigMapper,model,
                    WxPlatConstants.hiddenDangerContent.hiddenDangerDeal,
                    systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_ACCESS_TOKEN).getCode(),
                    Arrays.asList(createMember.getOpenid().split(",")));
                    Arrays.asList(memberUser.getOpenid().split(",")));
        }
    }
@@ -577,6 +601,11 @@
        if(member == null || !Constants.equalsInteger(member.getType(), Constants.TWO) || Constants.equalsInteger(Constants.ONE,member.getIsdeleted())){
            throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"对不起,转交人信息不存在,请刷新页面重试!");
        }
        HiddenDangerParam hiddenDangerCate = hiddenDangerParamMapper.selectById(model.getCateId());
        if(Objects.isNull(hiddenDangerCate)){
            throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"未查询到隐患类型");
        }
        hiddenDanger.setCategoryName(hiddenDangerCate.getName());
        hiddenDanger.setEditor(hiddenDanger.getLoginUserInfo().getId());
        hiddenDanger.setEditDate(new Date());
        hiddenDangerMapper.updateById(hiddenDanger);
@@ -615,24 +644,33 @@
            noticesJoinMapper.updateById(notices);
        }
        if(Objects.nonNull(member) && StringUtils.isNotBlank(member.getPhone())){
        SystemUser memberUser = systemUserMapper.selectOne(new QueryWrapper<SystemUser>().lambda()
                .eq(SystemUser::getDeleted, Constants.ZERO)
                .eq(SystemUser::getMemberId,model.getMemberId()));
        if(Objects.isNull(memberUser)||StringUtils.isBlank(memberUser.getRealname())){
          return;
        }
        hiddenDanger.setMemberName(memberUser.getRealname());
        SystemUser checkUser = systemUserMapper.selectOne(new QueryWrapper<SystemUser>().lambda()
                .eq(SystemUser::getDeleted, Constants.ZERO)
                .eq(SystemUser::getMemberId,hiddenDanger.getCheckUserId()));
        if(Objects.nonNull(checkUser) && StringUtils.isNotBlank(checkUser.getMobile())){
            //发送短信通知
            SmsEmailServiceImpl.sendHiddenDangerSms(systemDictDataBiz,
                    emayService,smsEmailMapper,smsConfigMapper,hiddenDangerMapper,hiddenDanger.getId(),
                    SmsConstants.hiddenDangerContent.hiddenDangerDealUser,
                    Arrays.asList(member.getPhone().split(","))
                    Arrays.asList(checkUser.getMobile().split(","))
            );
        }
        //处理人的微信公众号通知
        if(Objects.nonNull(member)&&StringUtils.isNotBlank(member.getOpenid())){
        if(Objects.nonNull(checkUser)&&StringUtils.isNotBlank(checkUser.getOpenid())){
            WxPlatNotice wxPlatNotice = new WxPlatNotice();
            wxPlatNotice.sendHiddenDangerUploadTemplateNotice(
            wxPlatNotice.sendHiddenDangerUploadTemplateNotice(systemDictDataBiz,
                    wxNoticeConfigMapper,hiddenDanger,
                    WxPlatConstants.hiddenDangerContent.hiddenDangerUpload,
                    systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_ACCESS_TOKEN).getCode(),
                    Arrays.asList(member.getOpenid().split(",")));
                    Arrays.asList(checkUser.getOpenid().split(",")));
        }
    }
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
@@ -2108,7 +2108,6 @@
        )>Constants.ZERO){
            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"手机号已注册!");
        };
        smsEmailService.validateCode(registerDriverDTO.getValidCode(),registerDriverDTO.getPhone());
        String salt = RandomStringUtils.randomAlphabetic(6);
       ;
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformBooksServiceImpl.java
@@ -19,7 +19,9 @@
import com.doumee.dao.business.model.*;
import com.doumee.dao.business.vo.ApproveDataVO;
import com.doumee.dao.system.SystemUserMapper;
import com.doumee.dao.system.join.NoticesJoinMapper;
import com.doumee.dao.system.model.SystemUser;
import com.doumee.dao.web.reqeust.PlatformBooksApplyDTO;
import com.doumee.dao.web.reqeust.PlatformBooksCheckNumDTO;
import com.doumee.dao.web.reqeust.RevokeDTO;
@@ -68,6 +70,9 @@
    @Autowired
    private SystemDictDataBiz systemDictDataBiz;
    @Autowired
    private SystemUserMapper systemUserMapper;
    @Autowired
    private ApproveService approveService;
@@ -292,16 +297,20 @@
        //创建审批流信息
        approveService.createApproveForPlatfrom(approveTempl.getId(),platformBooks.getId(),platformBooks.getDriverId());
        //发送公众号通知 给提交人
        Member member = memberMapper.selectById(platformBooks.getDriverId());
        if(Objects.nonNull(member)&&StringUtils.isNotBlank(member.getOpenid())){
        SystemUser driver = systemUserMapper.selectOne(new QueryWrapper<SystemUser>().lambda()
                .eq(SystemUser::getDeleted, Constants.ZERO)
                .eq(SystemUser::getType, Constants.ZERO)
                .eq(SystemUser::getMobile,platformBooks.getDriverPhone())
                .last(" limit 1 "));
        if(Objects.nonNull(driver)&&StringUtils.isNotBlank(driver.getOpenid())){
            WxPlatNotice wxPlatNotice = new WxPlatNotice();
            wxPlatNotice.sendPlatformBookTemplateNotice(
            wxPlatNotice.sendPlatformBookTemplateNotice(systemDictDataBiz,
                    wxNoticeConfigMapper,platformBooks,
                    WxPlatConstants.platformBookContent.platformBookUpload,
                    systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_ACCESS_TOKEN).getCode(),
                    Arrays.asList(member.getOpenid().split(",")),0);
                    Arrays.asList(driver.getOpenid().split(",")),0);
        }
        return platformBooks.getId();
    }
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java
@@ -29,6 +29,7 @@
import com.doumee.dao.openapi.request.*;
import com.doumee.dao.openapi.response.*;
import com.doumee.dao.system.SystemUserMapper;
import com.doumee.dao.system.model.SystemUser;
import com.doumee.dao.web.reqeust.*;
import com.doumee.dao.web.response.DriverHomeVO;
@@ -129,6 +130,8 @@
    private MemberMapper memberMapper;
    @Autowired
    private WxNoticeConfigMapper wxNoticeConfigMapper;
    @Autowired
    private SystemUserMapper systemUserMapper;
    @Override
    public Integer create(PlatformJob platformJob) {
@@ -874,19 +877,26 @@
        
        //公众号模板消息
        if(Objects.nonNull(platformJob.getDriverId())) {
            Member member = memberMapper.selectById(platformJob.getDriverId());
            if (Objects.nonNull(member) && StringUtils.isNotBlank(member.getOpenid())) {
                WxPlatNotice wxPlatNotice = new WxPlatNotice();
                wxPlatNotice.sendPlatformJobTemplateNotice(
                        wxNoticeConfigMapper, platformJob,
                        WxPlatConstants.platformJobContent.platformJobCallIn,
                        systemDictDataBiz.queryByCode(Constants.WX_PLATFORM, Constants.WX_PLATFORM_ACCESS_TOKEN).getCode(),
                        Arrays.asList(member.getOpenid().split(","))
                );
            }
          this.sendWxNotice(WxPlatConstants.platformJobContent.platformJobCallIn,platformJob);
        }
        return platformJob;
    }
    public void sendWxNotice(String objCode,PlatformJob platformJob){
        SystemUser driver = systemUserMapper.selectOne(new QueryWrapper<SystemUser>().lambda()
                .eq(SystemUser::getDeleted, Constants.ZERO)
                .eq(SystemUser::getType, Constants.ZERO)
                .eq(SystemUser::getMobile,platformJob.getDrivierPhone())
                .last(" limit 1 "));
        if (Objects.nonNull(driver) && StringUtils.isNotBlank(driver.getOpenid())) {
            WxPlatNotice wxPlatNotice = new WxPlatNotice();
            wxPlatNotice.sendPlatformJobTemplateNotice(systemDictDataBiz,
                    wxNoticeConfigMapper, platformJob,
                    objCode,
                    systemDictDataBiz.queryByCode(Constants.WX_PLATFORM, Constants.WX_PLATFORM_ACCESS_TOKEN).getCode(),
                    Arrays.asList(driver.getOpenid().split(","))
            );
        }
    }
    private Logger logger = LoggerFactory.getLogger(PlatformJobServiceImpl.class);
@@ -1084,17 +1094,8 @@
        );
        //公众号模板消息
        if(Objects.nonNull(platformJob.getDriverId())){
            Member member = memberMapper.selectById(platformJob.getDriverId());
            if(Objects.nonNull(member) && StringUtils.isNotBlank(member.getOpenid())){
                WxPlatNotice wxPlatNotice = new WxPlatNotice();
                wxPlatNotice.sendPlatformJobTemplateNotice(
                        wxNoticeConfigMapper,platformJob,
                        WxPlatConstants.platformJobContent.platformJobSingIn,
                        systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_ACCESS_TOKEN).getCode(),
                        Arrays.asList(member.getOpenid().split(","))
                );
            }
        if(Objects.nonNull(platformJob.getDriverId())){
            this.sendWxNotice(WxPlatConstants.platformJobContent.platformJobSingIn,platformJob);
        }
@@ -1229,17 +1230,8 @@
        );
        //公众号模板消息
        if(Objects.nonNull(platformJob.getDriverId())) {
            Member member = memberMapper.selectById(platformJob.getDriverId());
            if (Objects.nonNull(member) && StringUtils.isNotBlank(member.getOpenid())) {
                WxPlatNotice wxPlatNotice = new WxPlatNotice();
                wxPlatNotice.sendPlatformJobTemplateNotice(
                        wxNoticeConfigMapper, platformJob,
                        WxPlatConstants.platformJobContent.platformJobMove,
                        systemDictDataBiz.queryByCode(Constants.WX_PLATFORM, Constants.WX_PLATFORM_ACCESS_TOKEN).getCode(),
                        Arrays.asList(member.getOpenid().split(","))
                );
            }
        if(Objects.nonNull(platformJob.getDriverId())) {
            this.sendWxNotice(WxPlatConstants.platformJobContent.platformJobMove,platformJob);
        }
        platformJob.setPlatformName(oldPlatform.getName());
@@ -1292,16 +1284,7 @@
        //公众号模板消息
        if(Objects.nonNull(platformJob.getDriverId())){
            Member member = memberMapper.selectById(platformJob.getDriverId());
            if(Objects.nonNull(member) && StringUtils.isNotBlank(member.getOpenid())){
                WxPlatNotice wxPlatNotice = new WxPlatNotice();
                wxPlatNotice.sendPlatformJobTemplateNotice(
                        wxNoticeConfigMapper,platformJob,
                        WxPlatConstants.platformJobContent.platformJobOverNum,
                        systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_ACCESS_TOKEN).getCode(),
                        Arrays.asList(member.getOpenid().split(","))
                );
            }
            this.sendWxNotice(WxPlatConstants.platformJobContent.platformJobOverNum,platformJob);
        }
        platformJob.setPlatformName(platform.getName());
@@ -1353,16 +1336,7 @@
        //公众号模板消息
        if(Objects.nonNull(platformJob.getDriverId())) {
            Member member = memberMapper.selectById(platformJob.getDriverId());
            if (Objects.nonNull(member) && StringUtils.isNotBlank(member.getOpenid())) {
                WxPlatNotice wxPlatNotice = new WxPlatNotice();
                wxPlatNotice.sendPlatformJobTemplateNotice(
                        wxNoticeConfigMapper, platformJob,
                        WxPlatConstants.platformJobContent.platformJobError,
                        systemDictDataBiz.queryByCode(Constants.WX_PLATFORM, Constants.WX_PLATFORM_ACCESS_TOKEN).getCode(),
                        Arrays.asList(member.getOpenid().split(","))
                );
            }
            this.sendWxNotice(WxPlatConstants.platformJobContent.platformJobError,platformJob);
        }
        platformJob.setPlatformName(platform.getName());
@@ -1416,16 +1390,7 @@
        );
        //公众号模板消息
        if(Objects.nonNull(platformJob.getDriverId())) {
            Member member = memberMapper.selectById(platformJob.getDriverId());
            if (Objects.nonNull(member) && StringUtils.isNotBlank(member.getOpenid())) {
                WxPlatNotice wxPlatNotice = new WxPlatNotice();
                wxPlatNotice.sendPlatformJobTemplateNotice(
                        wxNoticeConfigMapper, platformJob,
                        WxPlatConstants.platformJobContent.platformJobWorking,
                        systemDictDataBiz.queryByCode(Constants.WX_PLATFORM, Constants.WX_PLATFORM_ACCESS_TOKEN).getCode(),
                        Arrays.asList(member.getOpenid().split(","))
                );
            }
            this.sendWxNotice(WxPlatConstants.platformJobContent.platformJobWorking,platformJob);
        }
        //广播 led通知
        platformJob.setPlatformName(platform.getName());
@@ -1435,7 +1400,8 @@
        return platformJob;
    }
    @Override
    public PlatformJob getLastWaitJob(String uuid, LoginUserInfo loginUser){
        String u = (String) redisTemplate.opsForValue().get(Constants.RedisKeys.BIGSCREEN_UUID);
        if(!StringUtils.equals(u,uuid)){
@@ -1449,6 +1415,7 @@
                .last(" limit 1 ") );
            return platformJob;
    }
    @Override
    @Transactional(rollbackFor = {Exception.class,BusinessException.class})
    public PlatformJob finishWork(JobOperateDTO jobOperateDTO){
@@ -1523,16 +1490,7 @@
        //公众号模板消息
        if(Objects.nonNull(platformJob.getDriverId())) {
            Member member = memberMapper.selectById(platformJob.getDriverId());
            if (Objects.nonNull(member) && StringUtils.isNotBlank(member.getOpenid())) {
                WxPlatNotice wxPlatNotice = new WxPlatNotice();
                wxPlatNotice.sendPlatformJobTemplateNotice(
                        wxNoticeConfigMapper, platformJob,
                        WxPlatConstants.platformJobContent.platformJobFinish,
                        systemDictDataBiz.queryByCode(Constants.WX_PLATFORM, Constants.WX_PLATFORM_ACCESS_TOKEN).getCode(),
                        Arrays.asList(member.getOpenid().split(","))
                );
            }
            this.sendWxNotice(WxPlatConstants.platformJobContent.platformJobFinish,platformJob);
        }
        //广播 led通知
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java
@@ -297,7 +297,7 @@
        //发送微信公众号通知 - 申请提交成功待审核
        if(StringUtils.isNotBlank(visits.getOpenid())){
            WxPlatNotice wxPlatNotice = new WxPlatNotice();
            wxPlatNotice.sendVisitTemplateNotice(
            wxPlatNotice.sendVisitTemplateNotice(systemDictDataBiz,
                    wxNoticeConfigMapper,visits,
                    Constants.equalsInteger(visits.getType(),Constants.TWO)?WxPlatConstants.visitReportContent.visitReportUpload:WxPlatConstants.visitContent.visitUpload,
                    systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_ACCESS_TOKEN).getCode(),
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/WmsServiceImpl.java
@@ -19,6 +19,8 @@
import com.doumee.dao.business.dao.SmsEmailMapper;
import com.doumee.dao.business.model.*;
import com.doumee.dao.system.SystemUserMapper;
import com.doumee.dao.system.model.SystemUser;
import com.doumee.service.business.impl.SmsEmailServiceImpl;
import com.doumee.service.business.third.EmayService;
import com.doumee.service.business.third.WmsService;
@@ -50,6 +52,8 @@
    private CarsMapper carsMapper;
    @Autowired
    private MemberMapper memberMapper;
    @Autowired
    private SystemUserMapper systemUserMapper;
    @Autowired
    private PlatformJobMapper platformJobMapper;
    @Autowired
@@ -315,7 +319,6 @@
    private void startEndNoticeToDriver(List<PlatformJob> jobList) {
        for(PlatformJob job : jobList){
            //-----TODO-----------任康,发送司机公众号和
            //短信通知
            if(Constants.equalsInteger(job.getStatus(),Constants.PlatformJobStatus.WAIT_CONFIRM.getKey())){
                SmsEmailServiceImpl.sendPlatformJobSms(systemDictDataBiz,
@@ -324,14 +327,19 @@
                );
                //查询司机信息 发送公众号通知
                if(Objects.nonNull(job.getDriverId())){
                    Member member = memberMapper.selectOne(new QueryWrapper<Member>().lambda().eq(Member::getPhone,job.getDriverId()));
                    if(Objects.nonNull(member) && StringUtils.isNotBlank(member.getOpenid())){
                    //发送公众号通知 给提交人
                    SystemUser driver = systemUserMapper.selectOne(new QueryWrapper<SystemUser>().lambda()
                            .eq(SystemUser::getDeleted, Constants.ZERO)
                            .eq(SystemUser::getType, Constants.ZERO)
                            .eq(SystemUser::getMobile,job.getDrivierPhone())
                            .last(" limit 1 "));
                    if(Objects.nonNull(driver) && StringUtils.isNotBlank(driver.getOpenid())){
                        WxPlatNotice wxPlatNotice = new WxPlatNotice();
                        wxPlatNotice.sendWmsTemplateNotice(
                        wxPlatNotice.sendWmsTemplateNotice(systemDictDataBiz,
                                wxNoticeConfigMapper,job,
                                WxPlatConstants.platformJobContent.platformJobNewJob,
                                systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_ACCESS_TOKEN).getCode(),
                                Arrays.asList(member.getOpenid().split(","))
                                Arrays.asList(driver.getOpenid().split(","))
                        );
                    }
                }
@@ -576,14 +584,20 @@
                        //公众号通知司机 任务取消
                        PlatformJob job = platformJobMapper.selectById(jobId);
                        if(Objects.nonNull(job)){
                             Member member = memberMapper.selectById(job.getDriverId());
                            if(Objects.nonNull(member) && StringUtils.isNotBlank(member.getOpenid())){
                            //发送公众号通知 给提交人
                            SystemUser driver = systemUserMapper.selectOne(new QueryWrapper<SystemUser>().lambda()
                                    .eq(SystemUser::getDeleted, Constants.ZERO)
                                    .eq(SystemUser::getType, Constants.ZERO)
                                    .eq(SystemUser::getMobile,job.getDrivierPhone())
                                    .last(" limit 1 "));
                            if(Objects.nonNull(driver) && StringUtils.isNotBlank(driver.getOpenid())){
                                WxPlatNotice wxPlatNotice = new WxPlatNotice();
                                wxPlatNotice.sendWmsCancelTemplateNotice(
                                wxPlatNotice.sendWmsCancelTemplateNotice(systemDictDataBiz,
                                        wxNoticeConfigMapper,job,
                                        WxPlatConstants.platformJobContent.platformJobCancel,
                                        systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_ACCESS_TOKEN).getCode(),
                                        Arrays.asList(member.getOpenid().split(","))
                                        Arrays.asList(driver.getOpenid().split(","))
                                );
                            }
                        }
@@ -651,15 +665,19 @@
                        //公众号通知司机 任务取消
                        PlatformJob job = platformJobMapper.selectById(jobId);
                        if(Objects.nonNull(job)){
                             Member member = memberMapper.selectById(job.getDriverId());
                            if(Objects.nonNull(member) && StringUtils.isNotBlank(member.getOpenid())){
                        if(Objects.nonNull(job)){  //发送公众号通知 给提交人
                            SystemUser driver = systemUserMapper.selectOne(new QueryWrapper<SystemUser>().lambda()
                                    .eq(SystemUser::getDeleted, Constants.ZERO)
                                    .eq(SystemUser::getType, Constants.ZERO)
                                    .eq(SystemUser::getMobile,job.getDrivierPhone())
                                    .last(" limit 1 "));
                            if(Objects.nonNull(driver) && StringUtils.isNotBlank(driver.getOpenid())){
                                WxPlatNotice wxPlatNotice = new WxPlatNotice();
                                wxPlatNotice.sendWmsCancelTemplateNotice(
                                wxPlatNotice.sendWmsCancelTemplateNotice(systemDictDataBiz,
                                        wxNoticeConfigMapper,job,
                                        WxPlatConstants.platformJobContent.platformJobCancel,
                                        systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_ACCESS_TOKEN).getCode(),
                                        Arrays.asList(member.getOpenid().split(","))
                                        Arrays.asList(driver.getOpenid().split(","))
                                );
                            }
                        }