| | |
| | | import com.ruoyi.common.redis.service.RedisService; |
| | | import com.ruoyi.system.utils.wx.model.WeixinProperties; |
| | | import com.ruoyi.system.utils.wx.template.Template; |
| | | import com.ruoyi.system.utils.wx.template.wxTemplateAppealResult.WxTemplateAppealResultRequest; |
| | | import com.ruoyi.system.utils.wx.template.wxTemplateAppealResult.WxTemplateAppealResultRequestData; |
| | | import com.ruoyi.system.utils.wx.template.wxTemplateDayWork.WxTemplateDayWorkRequest; |
| | | import com.ruoyi.system.utils.wx.template.wxTemplateDayWork.WxTemplateDayWorkRequestData; |
| | | import com.ruoyi.system.utils.wx.template.wxTemplateMakeCopyRequest.WxTemplateMakeCopyRequest; |
| | | import com.ruoyi.system.utils.wx.template.wxTemplateMakeCopyRequest.WxTemplateMakeCopyRequestData; |
| | | import com.ruoyi.system.utils.wx.template.wxTemplatePendApproval.WxTemplatePendApprovalRequest; |
| | | import com.ruoyi.system.utils.wx.template.wxTemplatePendApproval.WxTemplatePendApprovalRequestData; |
| | | import com.ruoyi.system.utils.wx.template.wxTemplateProblemRectificationRequest.WxTemplateProblemRectificationRequest; |
| | | import com.ruoyi.system.utils.wx.template.wxTemplateProblemRectificationRequest.WxTemplateProblemRectificationRequestData; |
| | | import com.ruoyi.system.utils.wx.template.wxTemplateTaskReturn.WxTemplateTaskResultRequest; |
| | | import com.ruoyi.system.utils.wx.template.wxTemplateTaskReturn.WxTemplateTaskResultRequestData; |
| | | import com.ruoyi.system.utils.wx.tools.WxAppletTools; |
| | |
| | | return null; |
| | | } |
| | | |
| | | /** |
| | | * 每日工作未完成提醒 |
| | | * @param openId 用户openId |
| | | * @param incompleteNum 未完成数 |
| | | * @param endTime 截止时间 |
| | | */ |
| | | public String wxTemplateDayWorkRequest(String openId,String incompleteNum,String endTime) { |
| | | WxAppletTools appletTools = new WxAppletTools(wxRestTemplate, weixinProperties, redisService); |
| | | // 1,获取access_token |
| | | String accessToken = redisCache.getCacheObject(ACCESS_TOKEN_CACHE_KEY); |
| | | if (!StringUtils.hasLength(accessToken)) { |
| | | accessToken = appletTools.getAccessToken(); |
| | | } |
| | | try { |
| | | log.info("每日工作未完成提醒通知:------------------------"); |
| | | // 创建请求实体 |
| | | WxTemplateDayWorkRequest wxTemplateDayWorkRequest = new WxTemplateDayWorkRequest(); |
| | | wxTemplateDayWorkRequest.setTouser(openId); |
| | | wxTemplateDayWorkRequest.setTemplate_id(weixinProperties.getDayWorkTemplateId()); |
| | | // 未完成数 |
| | | Template number3 = new Template(); |
| | | number3.setValue(incompleteNum); |
| | | // 截止时间 |
| | | Template time4 = new Template(); |
| | | time4.setValue(endTime); |
| | | // 发送模板消息参数实体封装 |
| | | WxTemplateDayWorkRequestData wxTemplateDayWorkRequestData = new WxTemplateDayWorkRequestData(); |
| | | wxTemplateDayWorkRequestData.setNumber3(number3); |
| | | wxTemplateDayWorkRequestData.setTime4(time4); |
| | | wxTemplateDayWorkRequest.setData(wxTemplateDayWorkRequestData); |
| | | // 4,发送消息给用户 |
| | | String url = Constants.TEMPLATE_URL.replace("ACCESS_TOKEN", accessToken); |
| | | String result = HttpUtils.sendPost(url, JsonUtils.toJsonString(wxTemplateDayWorkRequest)); |
| | | log.info("每日工作未完成提醒模板消息返回数据:{}", result); |
| | | return result; |
| | | } catch (Exception e) { |
| | | log.error("每日工作未完成提醒通知失败;"); |
| | | } |
| | | return null; |
| | | } |
| | | |
| | | /** |
| | | * 申诉结果通知 |
| | | * @param openId 用户openId |
| | | * @param taskName 任务名称 |
| | | * @param appealResult 申诉结果 |
| | | * @param handleTime 处理时间 |
| | | * @param remark 备注 |
| | | */ |
| | | public String wxTemplateAppealResultRequest(String openId,String taskName,String appealResult,String handleTime,String remark) { |
| | | WxAppletTools appletTools = new WxAppletTools(wxRestTemplate, weixinProperties, redisService); |
| | | // 1,获取access_token |
| | | String accessToken = redisCache.getCacheObject(ACCESS_TOKEN_CACHE_KEY); |
| | | if (!StringUtils.hasLength(accessToken)) { |
| | | accessToken = appletTools.getAccessToken(); |
| | | } |
| | | try { |
| | | log.info("申诉结果提醒通知:------------------------"); |
| | | // 创建请求实体 |
| | | WxTemplateAppealResultRequest wxTemplateAppealResultRequest = new WxTemplateAppealResultRequest(); |
| | | wxTemplateAppealResultRequest.setTouser(openId); |
| | | wxTemplateAppealResultRequest.setTemplate_id(weixinProperties.getAppealResultTemplateId()); |
| | | // 任务名称 |
| | | Template thing4 = new Template(); |
| | | thing4.setValue(taskName); |
| | | // 申诉结果 |
| | | Template phrase1 = new Template(); |
| | | phrase1.setValue(appealResult); |
| | | // 处理时间 |
| | | Template time2 = new Template(); |
| | | time2.setValue(handleTime); |
| | | // 备注 |
| | | Template thing3 = new Template(); |
| | | thing3.setValue(remark); |
| | | // 发送模板消息参数实体封装 |
| | | WxTemplateAppealResultRequestData wxTemplateAppealResultRequestData = new WxTemplateAppealResultRequestData(); |
| | | wxTemplateAppealResultRequestData.setThing4(thing4); |
| | | wxTemplateAppealResultRequestData.setPhrase1(phrase1); |
| | | wxTemplateAppealResultRequestData.setTime2(time2); |
| | | wxTemplateAppealResultRequestData.setThing3(thing3); |
| | | wxTemplateAppealResultRequest.setData(wxTemplateAppealResultRequestData); |
| | | // 4,发送消息给用户 |
| | | String url = Constants.TEMPLATE_URL.replace("ACCESS_TOKEN", accessToken); |
| | | String result = HttpUtils.sendPost(url, JsonUtils.toJsonString(wxTemplateAppealResultRequest)); |
| | | log.info("申诉结果通知模板消息返回数据:{}", result); |
| | | return result; |
| | | } catch (Exception e) { |
| | | log.error("申诉结果通知失败;"); |
| | | } |
| | | return null; |
| | | } |
| | | |
| | | /** |
| | | * 待审核提醒 |
| | | * @param openId 用户openId |
| | | * @param applicant 申请人 |
| | | * @param applicantTime 申请时间 |
| | | * @param type 业务类型 |
| | | * @param startTime 开始时间 |
| | | * @param endTime 结束时间 |
| | | * @return |
| | | */ |
| | | public String wxTemplatePendApprovalRequest(String openId,String applicant,String applicantTime,String type,String startTime,String endTime) { |
| | | WxAppletTools appletTools = new WxAppletTools(wxRestTemplate, weixinProperties, redisService); |
| | | // 1,获取access_token |
| | | String accessToken = redisCache.getCacheObject(ACCESS_TOKEN_CACHE_KEY); |
| | | if (!StringUtils.hasLength(accessToken)) { |
| | | accessToken = appletTools.getAccessToken(); |
| | | } |
| | | try { |
| | | log.info("待审核提醒通知:------------------------"); |
| | | // 创建请求实体 |
| | | WxTemplatePendApprovalRequest wxTemplatePendApprovalRequest = new WxTemplatePendApprovalRequest(); |
| | | wxTemplatePendApprovalRequest.setTouser(openId); |
| | | wxTemplatePendApprovalRequest.setTemplate_id(weixinProperties.getPendApprovalTemplateId()); |
| | | // 申请人 |
| | | Template thing2 = new Template(); |
| | | thing2.setValue(applicant); |
| | | // 申请时间 |
| | | Template time3 = new Template(); |
| | | time3.setValue(applicantTime); |
| | | // 业务类型 |
| | | Template thing4 = new Template(); |
| | | thing4.setValue(type); |
| | | // 开始时间 |
| | | Template time26 = new Template(); |
| | | time26.setValue(startTime); |
| | | // 结束时间 |
| | | Template time27 = new Template(); |
| | | time27.setValue(endTime); |
| | | // 发送模板消息参数实体封装 |
| | | WxTemplatePendApprovalRequestData wxTemplatePendApprovalRequestData = new WxTemplatePendApprovalRequestData(); |
| | | wxTemplatePendApprovalRequestData.setThing4(thing2); |
| | | wxTemplatePendApprovalRequestData.setTime3(time3); |
| | | wxTemplatePendApprovalRequestData.setThing4(thing4); |
| | | wxTemplatePendApprovalRequestData.setTime26(time26); |
| | | wxTemplatePendApprovalRequestData.setTime27(time27); |
| | | wxTemplatePendApprovalRequest.setData(wxTemplatePendApprovalRequestData); |
| | | // 4,发送消息给用户 |
| | | String url = Constants.TEMPLATE_URL.replace("ACCESS_TOKEN", accessToken); |
| | | String result = HttpUtils.sendPost(url, JsonUtils.toJsonString(wxTemplatePendApprovalRequest)); |
| | | log.info("待审核提醒模板消息返回数据:{}", result); |
| | | return result; |
| | | } catch (Exception e) { |
| | | log.error("待审核提醒通知失败;"); |
| | | } |
| | | return null; |
| | | } |
| | | /** |
| | | * 审核抄送通知 |
| | | * @param openId 用户openId |
| | | * @param applicant 申请人 |
| | | * @param applicantTime 申请时间 |
| | | * @param type 申请类型 |
| | | * @return |
| | | */ |
| | | public String wxTemplateMakeCopyRequest(String openId,String applicant,String applicantTime,String type) { |
| | | WxAppletTools appletTools = new WxAppletTools(wxRestTemplate, weixinProperties, redisService); |
| | | // 1,获取access_token |
| | | String accessToken = redisCache.getCacheObject(ACCESS_TOKEN_CACHE_KEY); |
| | | if (!StringUtils.hasLength(accessToken)) { |
| | | accessToken = appletTools.getAccessToken(); |
| | | } |
| | | try { |
| | | log.info("审核抄送通知:------------------------"); |
| | | // 创建请求实体 |
| | | WxTemplateMakeCopyRequest wxTemplateMakeCopyRequest = new WxTemplateMakeCopyRequest(); |
| | | wxTemplateMakeCopyRequest.setTouser(openId); |
| | | wxTemplateMakeCopyRequest.setTemplate_id(weixinProperties.getMakeCopyTemplateId()); |
| | | // 申请人 |
| | | Template thing1 = new Template(); |
| | | thing1.setValue(applicant); |
| | | // 申请时间 |
| | | Template time2 = new Template(); |
| | | time2.setValue(applicantTime); |
| | | // 申请类型 |
| | | Template thing3 = new Template(); |
| | | thing3.setValue(type); |
| | | // 发送模板消息参数实体封装 |
| | | WxTemplateMakeCopyRequestData wxTemplateMakeCopyRequestData = new WxTemplateMakeCopyRequestData(); |
| | | wxTemplateMakeCopyRequestData.setThing1(thing1); |
| | | wxTemplateMakeCopyRequestData.setTime2(time2); |
| | | wxTemplateMakeCopyRequestData.setThing3(thing3); |
| | | wxTemplateMakeCopyRequest.setData(wxTemplateMakeCopyRequestData); |
| | | // 4,发送消息给用户 |
| | | String url = Constants.TEMPLATE_URL.replace("ACCESS_TOKEN", accessToken); |
| | | String result = HttpUtils.sendPost(url, JsonUtils.toJsonString(wxTemplateMakeCopyRequest)); |
| | | log.info("审核抄送通知模板消息返回数据:{}", result); |
| | | return result; |
| | | } catch (Exception e) { |
| | | log.error("审核抄送通知失败;"); |
| | | } |
| | | return null; |
| | | } |
| | | |
| | | /** |
| | | * 问题整改通知 |
| | | * @param openId 用户openId |
| | | * @param locationName 点位名称 |
| | | * @param remark 备注 |
| | | * @return |
| | | */ |
| | | public String wxTemplateProblemRectificationRequest(String openId,String locationName,String remark) { |
| | | WxAppletTools appletTools = new WxAppletTools(wxRestTemplate, weixinProperties, redisService); |
| | | // 1,获取access_token |
| | | String accessToken = redisCache.getCacheObject(ACCESS_TOKEN_CACHE_KEY); |
| | | if (!StringUtils.hasLength(accessToken)) { |
| | | accessToken = appletTools.getAccessToken(); |
| | | } |
| | | try { |
| | | log.info("问题整改通知:------------------------"); |
| | | // 创建请求实体 |
| | | WxTemplateProblemRectificationRequest wxTemplateProblemRectificationRequest = new WxTemplateProblemRectificationRequest(); |
| | | wxTemplateProblemRectificationRequest.setTouser(openId); |
| | | wxTemplateProblemRectificationRequest.setTemplate_id(weixinProperties.getProblemRectificationTemplateId()); |
| | | // 点位名称 |
| | | Template thing3 = new Template(); |
| | | thing3.setValue(locationName); |
| | | // 备注 |
| | | Template thing2 = new Template(); |
| | | thing2.setValue(remark); |
| | | // 发送模板消息参数实体封装 |
| | | WxTemplateProblemRectificationRequestData wxTemplateProblemRectificationRequestData = new WxTemplateProblemRectificationRequestData(); |
| | | wxTemplateProblemRectificationRequestData.setThing3(thing3); |
| | | wxTemplateProblemRectificationRequestData.setThing2(thing2); |
| | | wxTemplateProblemRectificationRequest.setData(wxTemplateProblemRectificationRequestData); |
| | | // 4,发送消息给用户 |
| | | String url = Constants.TEMPLATE_URL.replace("ACCESS_TOKEN", accessToken); |
| | | String result = HttpUtils.sendPost(url, JsonUtils.toJsonString(wxTemplateProblemRectificationRequest)); |
| | | log.info("问题整改通知模板消息返回数据:{}", result); |
| | | return result; |
| | | } catch (Exception e) { |
| | | log.error("问题整改通知失败;"); |
| | | } |
| | | return null; |
| | | } |
| | | |
| | | } |