From 74812b1bee02f9042e9586c7d81da5fd227fdd79 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期三, 25 十二月 2024 17:05:53 +0800
Subject: [PATCH] 最新版本541200007
---
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java | 126 ++++++++++++++++--------------------------
1 files changed, 48 insertions(+), 78 deletions(-)
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java
index c184c0e..01c5d7b 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java
@@ -29,11 +29,13 @@
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;
import com.doumee.dao.web.response.LineUpVO;
import com.doumee.dao.web.response.PlatformWorkVO;
+import com.doumee.dao.web.response.platformReport.WholeProvinceBoardVO;
import com.doumee.service.business.PlatformJobService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
@@ -56,6 +58,7 @@
import java.math.BigDecimal;
import java.math.RoundingMode;
+import java.net.URLEncoder;
import java.util.*;
import java.util.Date;
import java.util.concurrent.TimeUnit;
@@ -128,6 +131,8 @@
private MemberMapper memberMapper;
@Autowired
private WxNoticeConfigMapper wxNoticeConfigMapper;
+ @Autowired
+ private SystemUserMapper systemUserMapper;
@Override
public Integer create(PlatformJob platformJob) {
@@ -655,11 +660,11 @@
}
public void sceneSignIn(SignInDTO signInDTO){
-
if( StringUtils.isNotBlank(signInDTO.getQrCodeKey())){
throw new BusinessException(ResponseStatus.BAD_REQUEST);
}
- if(!signInDTO.getQrCodeKey().equals(systemDictDataBiz.queryByCode(Constants.PLATFORM,Constants.SIGN_IN_QRCODE).getCode())){
+ if(!signInDTO.getQrCodeKey().equals(
+ systemDictDataBiz.queryByCode(Constants.PLATFORM,Constants.SIGN_IN_QRCODE_PREFIX).getCode() + systemDictDataBiz.queryByCode(Constants.PLATFORM,Constants.SIGN_IN_QRCODE).getCode())){
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"浜岀淮鐮佸凡杩囨湡,璇峰埛鏂伴噸璇�");
}
}
@@ -873,19 +878,35 @@
//鍏紬鍙锋ā鏉挎秷鎭�
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())) {
+ PlatformJob p = platformJobJoinMapper.selectJoinOne(PlatformJob.class,
+ new MPJLambdaWrapper<PlatformJob>()
+ .selectAll(PlatformJob.class)
+ .selectAs(Platform::getName,PlatformJob::getPlatformName)
+ .leftJoin(Platform.class,Platform::getId,PlatformJob::getPlatformId)
+ .eq(PlatformJob::getId,platformJob.getId())
+ .last(" limit 1")
+ );
+
+ WxPlatNotice wxPlatNotice = new WxPlatNotice();
+ wxPlatNotice.sendPlatformJobTemplateNotice(systemDictDataBiz,
+ wxNoticeConfigMapper, p,
+ objCode,
+ systemDictDataBiz.queryByCode(Constants.WX_PLATFORM, Constants.WX_PLATFORM_ACCESS_TOKEN).getCode(),
+ Arrays.asList(driver.getOpenid().split(","))
+ );
+ }
}
private Logger logger = LoggerFactory.getLogger(PlatformJobServiceImpl.class);
@@ -1083,17 +1104,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);
}
@@ -1228,17 +1240,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());
@@ -1291,16 +1294,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());
@@ -1352,16 +1346,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());
@@ -1415,16 +1400,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());
@@ -1434,7 +1410,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)){
@@ -1448,6 +1425,7 @@
.last(" limit 1 ") );
return platformJob;
}
+
@Override
@Transactional(rollbackFor = {Exception.class,BusinessException.class})
public PlatformJob finishWork(JobOperateDTO jobOperateDTO){
@@ -1522,16 +1500,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閫氱煡
@@ -2123,7 +2092,9 @@
}
String u = UUID.randomUUID().toString();
redisTemplate.opsForValue().set(Constants.RedisKeys.BIGSCREEN_UUID,u,3, TimeUnit.MINUTES);
- largeScreenDataVO.setQrCode(systemDictDataBiz.queryByCode(Constants.PLATFORM,Constants.SIGN_IN_QRCODE).getCode());
+ String url = Constants.getWxUrl(systemDictDataBiz.queryByCode(Constants.PLATFORM,Constants.WX_REDIRECT_URL).getCode(),Constants.WxUrlParams.BISCREEN_CODE,u);
+ largeScreenDataVO.setQrCode(url);
+ largeScreenDataVO.setAttention(systemDictDataBiz.queryByCode(Constants.PLATFORM,Constants.SIGN_IN_ATTENTION).getCode());
return largeScreenDataVO;
}
@@ -2230,7 +2201,6 @@
}
}
-
--
Gitblit v1.9.3