From 88c3d89fb18415722b1f3b57cbec3d3593cc587f Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期三, 11 十二月 2024 10:07:27 +0800
Subject: [PATCH] 最新版本541200007
---
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java | 92 ++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 88 insertions(+), 4 deletions(-)
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java
index 78e572f..eea3e40 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java
@@ -15,8 +15,11 @@
import com.doumee.core.utils.DateUtil;
import com.doumee.core.utils.SmsConstants;
import com.doumee.core.utils.Utils;
+import com.doumee.core.wx.wxPlat.WxPlatConstants;
+import com.doumee.core.wx.wxPlat.WxPlatNotice;
import com.doumee.dao.business.*;
import com.doumee.dao.business.dao.CompanyMapper;
+import com.doumee.dao.business.dao.SmsConfigMapper;
import com.doumee.dao.business.dao.SmsEmailMapper;
import com.doumee.dao.business.dto.ApproveDTO;
import com.doumee.dao.business.join.ApproveJoinMapper;
@@ -64,6 +67,8 @@
@Autowired
private SystemDictDataBiz systemDictDataBiz;
+ @Autowired
+ private WxNoticeConfigMapper wxNoticeConfigMapper;
@Autowired
private ApproveTemplMapper approveTemplMapper;
@@ -483,12 +488,18 @@
approveList.add(createUserApprove);
//鏌ヨ鎵�鏈夊緟澶勭悊浜�
-
+ String token = systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_ACCESS_TOKEN).getCode();
//瀹℃壒涓氬姟鏁版嵁
for (int i = 0; i < approveParamList.size(); i++) {
ApproveParam approveParam = approveParamList.get(i);
List<Integer> ids = this.getApproveUserIds(approveParam,createMember);
- List<Member> memberList = memberMapper.selectList(new QueryWrapper<Member>().lambda().in(Member::getId,ids));
+ List<Member> memberList = memberMapper.selectJoinList(Member.class,
+ new MPJLambdaWrapper<Member>()
+ .selectAll(Member.class)
+ .selectAs(SystemUser::getOpenid,Member::getSystemOpenid)
+ .leftJoin(SystemUser.class,SystemUser::getMemberId,Member::getId)
+ .in(Member::getId,ids)
+ );
List<String> memberNameList =memberList.stream().map(m->m.getName()).collect(Collectors.toList());
String memberNames = String.join(",",memberNameList);
Integer noticeType = Constants.approveTypeToNoticeType(approveTempl.getType());
@@ -566,6 +577,7 @@
approve.setType(Constants.ZERO);
approveList.add(approve);
+ WxPlatNotice wxPlatNotice = new WxPlatNotice();
if(Constants.equalsInteger(approve.getStatus(),Constants.ONE) && StringUtils.isNotBlank(member.getPhone())){
//鍙戦�佺煭淇¢�氱煡
if(Constants.equalsInteger(noticeType,Constants.noticesObjectType.reason)){
@@ -575,13 +587,32 @@
SmsConstants.platformBookContent.platformBookWaitAudit,
null,Arrays.asList(member.getPhone().split(","))
);
+ //鍏紬鍙烽�氱煡
+ if(StringUtils.isNotBlank(member.getOpenid())){
+ wxPlatNotice.sendPlatformBookTemplateNotice(
+ wxNoticeConfigMapper,
+ platformBooksMapper.selectById(businessId),
+ WxPlatConstants.platformBookContent.platformBookWaitAudit,
+ token,
+ Arrays.asList(member.getOpenid().split(",")),
+ Constants.ONE);
+ }
}else if(Constants.equalsInteger(noticeType,Constants.noticesObjectType.visit)){
//璁垮鐢宠
+ //鐭俊閫氱煡
SmsEmailServiceImpl.sendVisitSms(systemDictDataBiz,
emayService,smsEmailMapper,smsConfigMapper,visitsMapper,businessId,
SmsConstants.visitContent.visitNotice,
null,Arrays.asList(member.getPhone().split(","))
);
+ //鍏紬鍙烽�氱煡
+ if(StringUtils.isNotBlank(member.getSystemOpenid())){
+ wxPlatNotice.sendVisitTemplateNotice(
+ wxNoticeConfigMapper,visitsMapper.selectById(businessId), WxPlatConstants.visitContent.visitWaitAudit,
+ token,
+ Arrays.asList(member.getSystemOpenid().split(","))
+ );
+ }
}else if(Constants.equalsInteger(noticeType,Constants.noticesObjectType.visitReporting)){
//璁垮鎶ュ
SmsEmailServiceImpl.sendVisitReportSms(systemDictDataBiz,
@@ -589,6 +620,14 @@
SmsConstants.visitReportingContent.visitReportingNotice,
null,Arrays.asList(member.getPhone().split(","))
);
+ //鍏紬鍙烽�氱煡
+ if(StringUtils.isNotBlank(member.getSystemOpenid())){
+ wxPlatNotice.sendVisitTemplateNotice(
+ wxNoticeConfigMapper,visitsMapper.selectById(businessId), WxPlatConstants.visitReportContent.visitReportWaitAudit,
+ token,
+ Arrays.asList(member.getSystemOpenid().split(","))
+ );
+ }
}else if(Constants.equalsInteger(noticeType,Constants.noticesObjectType.useCar)){
//鐢ㄨ溅鐢宠
SmsEmailServiceImpl.sendCarUseSms(systemDictDataBiz,
@@ -596,6 +635,16 @@
SmsConstants.carUseBookContent.carUseBookWaitAudit,
null,Arrays.asList(member.getPhone().split(","))
);
+ //鍏紬鍙烽�氱煡
+ if(StringUtils.isNotBlank(member.getSystemOpenid())){
+ wxPlatNotice.sendCarUseBookTemplateNotice(
+ wxNoticeConfigMapper,
+ carUseBookMapper.selectById(businessId),
+ WxPlatConstants.carUseBookContent.carUseBookWaitAudit,
+ token,
+ Arrays.asList(member.getSystemOpenid().split(",")),
+ Constants.ONE);
+ }
}
}
@@ -1501,6 +1550,7 @@
public void dealBusinessData(ApproveDTO approveDTO,Approve approve){
+ WxPlatNotice wxPlatNotice = new WxPlatNotice();
if(approveDTO.getObjType().equals(Constants.approveObjectType.unConstructionVisit)
||approveDTO.getObjType().equals(Constants.approveObjectType.constructionVisit)
||approveDTO.getObjType().equals(Constants.approveObjectType.visitReporting)){
@@ -1570,6 +1620,7 @@
}
}
//璁垮鎶ュ
+ String objCode = "";
if(approveDTO.getObjType().equals(Constants.approveObjectType.visitReporting)){
//鍙戦�佺煭淇¢�氱煡
SmsEmailServiceImpl.sendVisitReportSms(systemDictDataBiz,
@@ -1578,6 +1629,9 @@
SmsConstants.visitReportingContent.visitReportingAuditFail,
approveDTO.getCheckInfo(),null
);
+ objCode = Constants.equalsInteger(approveDTO.getStatus(),Constants.TWO)?
+ WxPlatConstants.visitReportContent.visitReportAuditSuccess:WxPlatConstants.visitReportContent.visitReportAuditFail;
+
}else{ //璁垮鐢宠
//鍙戦�佺煭淇¢�氱煡
SmsEmailServiceImpl.sendVisitSms(systemDictDataBiz,
@@ -1586,15 +1640,28 @@
SmsConstants.visitContent.visitAuditFail,
approveDTO.getCheckInfo(),null
);
+ objCode = Constants.equalsInteger(approveDTO.getStatus(),Constants.TWO)? WxPlatConstants.visitContent.visitAuditSuccess:
+ WxPlatConstants.visitContent.visitAuditFail;
+ }
+ visitsMapper.updateById(visits);
+ //鍙戦�佸井淇″叕浼楀彿
+ if(StringUtils.isNotBlank(objCode)){
+ if(Objects.nonNull(visits) && StringUtils.isNotBlank(visits.getOpenid())){
+ wxPlatNotice.sendVisitTemplateNotice(
+ wxNoticeConfigMapper,visits, objCode,
+ systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_ACCESS_TOKEN).getCode(),
+ Arrays.asList(visits.getOpenid().split(","))
+ );
+ }
}
- visitsMapper.updateById(visits);
}else if(approveDTO.getObjType().equals(Constants.approveObjectType.cityUseCar)||approveDTO.getObjType().equals(
Constants.approveObjectType.unCityUseCar)){
this.updDriver(approveDTO,approve,true);
CarUseBook carUseBook = carUseBookJoinMapper.selectById(approveDTO.getObjId());
if(Objects.nonNull(carUseBook)){
Member member = memberMapper.selectById(carUseBook.getMemberId());
+ //鍙戦�侀�氱煡鐭伅
if(Objects.nonNull(member)&&StringUtils.isNotBlank(member.getPhone())){
SmsEmailServiceImpl.sendCarUseSms(systemDictDataBiz,
emayService,smsEmailMapper,smsConfigMapper,carUseBookMapper,approveDTO.getObjId(),
@@ -1602,6 +1669,14 @@
SmsConstants.carUseBookContent.carUseBookAuditFail,
approveDTO.getCheckInfo(),Arrays.asList(member.getPhone().split(","))
);
+ }
+ if(StringUtils.isNotBlank(member.getOpenid())){
+ //鍙戦�佸井淇″叕浼楀彿閫氱煡
+ wxPlatNotice.sendCarUseBookTemplateNotice(
+ wxNoticeConfigMapper,carUseBook,
+ Constants.equalsInteger(approveDTO.getStatus(),Constants.TWO)?WxPlatConstants.carUseBookContent.carUseBookAuditSuccess: WxPlatConstants.carUseBookContent.carUseBookAuditFail,
+ systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_ACCESS_TOKEN).getCode(),
+ Arrays.asList(member.getOpenid().split(",")),0);
}
}
@@ -1660,7 +1735,16 @@
approveDTO.getCheckInfo(),null
);
- //TODO 鍙戦�佸井淇″叕浼楀彿娑堟伅
+ //鍙戦�佸井淇″叕浼楀彿娑堟伅
+ Member member = memberMapper.selectById(platformBooks.getDriverId() );
+ if(Objects.nonNull(member) && StringUtils.isNotBlank(member.getOpenid())){
+ //鍙戦�佸井淇″叕浼楀彿閫氱煡
+ wxPlatNotice.sendPlatformBookTemplateNotice(
+ wxNoticeConfigMapper,platformBooks,
+ Constants.equalsInteger(approveDTO.getStatus(),Constants.TWO)?WxPlatConstants.platformBookContent.platformBookAuditSuccess: WxPlatConstants.platformBookContent.platformBookAuditFail,
+ systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_ACCESS_TOKEN).getCode(),
+ Arrays.asList(member.getOpenid().split(",")),0);
+ }
}else{
throw new BusinessException(ResponseStatus.BAD_REQUEST);
--
Gitblit v1.9.3