liukangdong
2024-12-11 8bd6e0f1c84f2bc5bf2b9555d1c5fb388565db6c
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>();
@@ -374,7 +411,7 @@
                    }else if(Constants.equalsInteger(platformBooks.getStatus(),Constants.TWO)){
                        const9.put("value","申请已审核通过");
                    }else{
                        const9.put("value","申请已被驳回");
                        const9.put("value","申请未通过");
                    }
                }
                //车牌号
@@ -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);