From cca00880fc5f0be030a508026614c6718583a01c Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期二, 10 六月 2025 11:01:49 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java | 139 +++++++++++++++++++++++++++++++---------------
1 files changed, 93 insertions(+), 46 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 62f6a40..4b0620a 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
@@ -131,6 +131,8 @@
@Autowired
private PlatformWarnEventServiceImpl platformWarnEventService;
@Autowired
+ private PlatformWarnEventMapper platformWarnEventMapper;
+ @Autowired
private MemberMapper memberMapper;
@Autowired
private WxNoticeConfigMapper wxNoticeConfigMapper;
@@ -264,6 +266,7 @@
.eq(pageWrap.getModel().getCode() != null, PlatformJob::getCode, pageWrap.getModel().getCode())
.eq(pageWrap.getModel().getBillCode() != null, PlatformJob::getBillCode, pageWrap.getModel().getBillCode())
.eq(pageWrap.getModel().getDriverId() != null, PlatformJob::getDriverId, pageWrap.getModel().getDriverId())
+ .eq(pageWrap.getModel().getReasonId() != null, PlatformBooks::getReasonId, pageWrap.getModel().getReasonId())
.eq(pageWrap.getModel().getDriverName() != null, PlatformJob::getDriverName, pageWrap.getModel().getDriverName())
.eq(pageWrap.getModel().getPlateNum() != null, PlatformJob::getPlateNum, pageWrap.getModel().getPlateNum())
.eq(pageWrap.getModel().getDrivierPhone() != null, PlatformJob::getDrivierPhone, pageWrap.getModel().getDrivierPhone())
@@ -323,7 +326,6 @@
.eq(pageWrap.getModel().getInType() != null, PlatformJob::getInType, pageWrap.getModel().getInType())
.eq(pageWrap.getModel().getTotalNum() != null, PlatformJob::getTotalNum, pageWrap.getModel().getTotalNum())
.eq(pageWrap.getModel().getPlatformGroupId() != null, PlatformJob::getPlatformGroupId, pageWrap.getModel().getPlatformGroupId())
-
.apply(pageWrap.getModel().getQueryStatus() != null, " find_in_set(t.`STATUS`,'"+pageWrap.getModel().getQueryStatus()+"')")
.apply(pageWrap.getModel().getQueryStatusForPower() != null, " find_in_set(t.`STATUS`,'"+pageWrap.getModel().getQueryStatusForPower()+"')")
.apply(pageWrap.getModel().getQueryType() != null, " find_in_set(t.TYPE,'"+pageWrap.getModel().getQueryType()+"')")
@@ -333,9 +335,13 @@
.le(pageWrap.getModel().getBeginWorkDateEnd() != null, PlatformJob::getStartDate, Utils.Date.getEnd(pageWrap.getModel().getBeginWorkDateEnd()))
.ge(pageWrap.getModel().getBeginDoneDateStart() != null, PlatformJob::getDoneDate, Utils.Date.getStart(pageWrap.getModel().getBeginDoneDateStart()))
.le(pageWrap.getModel().getBeginDoneDateEnd() != null, PlatformJob::getDoneDate, Utils.Date.getEnd(pageWrap.getModel().getBeginDoneDateEnd()))
-
- .isNotNull(pageWrap.getModel().getJobType() != null && Constants.equalsInteger(Constants.ONE,pageWrap.getModel().getJobType()), PlatformJob::getContractNum)
- .isNull(pageWrap.getModel().getJobType() != null && Constants.equalsInteger(Constants.ZERO,pageWrap.getModel().getJobType()), PlatformJob::getContractNum)
+// .isNotNull(pageWrap.getModel().getJobType() != null && Constants.equalsInteger(Constants.ONE,pageWrap.getModel().getJobType()),
+// PlatformJob::getContractNum)
+// .isNull(pageWrap.getModel().getJobType() != null && Constants.equalsInteger(Constants.ZERO,pageWrap.getModel().getJobType()), PlatformJob::getContractNum)
+ .exists(pageWrap.getModel().getJobType() != null && Constants.equalsInteger(Constants.ZERO,pageWrap.getModel().getJobType()),
+ "select 1 from platform_wms_detail tt where tt.isdeleted=0 and tt.job_id=t.id")
+ .notExists(pageWrap.getModel().getJobType() != null && Constants.equalsInteger(Constants.ONE,pageWrap.getModel().getJobType()),
+ "select 1 from platform_wms_detail tt where tt.isdeleted=0 and tt.job_id=t.id")
.exists(StringUtils.isNotBlank(pageWrap.getModel().getWmsContractNum()),
"select tt.id from platform_wms_detail tt where tt.isdeleted=0 and tt.contract_num='"+pageWrap.getModel().getWmsContractNum()+"' and tt.job_id=t.id");
queryWrapper.orderByDesc(PlatformJob::getCreateDate);
@@ -354,8 +360,6 @@
});
return PageData.from(platformJobIPage);
}
-
-
@Override
public PageData<PlatformJob> platformCallList(PageWrap<PlatformJob> pageWrap) {
@@ -698,9 +702,8 @@
);
if (com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(systemUserList)) {
WxPlatNotice wxPlatNotice = new WxPlatNotice();
- wxPlatNotice.sendPlatformJobSignNotice(wxNoticeConfigMapper, platformJob,
+ wxPlatNotice.sendPlatformJobSignNotice(systemDictDataBiz,wxNoticeConfigMapper, platformJob,
WxPlatConstants.platformJobContent.platformGroupSignIn,
- systemDictDataBiz.queryByCode(Constants.WX_PLATFORM, Constants.WX_PLATFORM_ACCESS_TOKEN).getCode(),
systemUserList.stream().map(i->i.getOpenid()).collect(Collectors.toList())
);
}
@@ -735,18 +738,18 @@
Set<Integer> setList = new HashSet<>(platformGroupId);
for (Integer groupId:setList) {
PlatformGroup platformGroup = platformGroupMapper.selectById(groupId);
- if(Objects.nonNull(platformGroup)){
+ if(Objects.nonNull(platformGroup)&&StringUtils.isNotBlank(platformGroup.getUnFinishNoticeUsers())){
List<SystemUser> systemUserList = systemUserMapper.selectList(new QueryWrapper<SystemUser>().lambda()
- .eq(SystemUser::getDeleted,Constants.ZERO).eq(SystemUser::getStatus,Constants.ZERO).isNotNull(SystemUser::getOpenid)
+ .eq(SystemUser::getDeleted,Constants.ZERO).eq(SystemUser::getStatus,Constants.ZERO)
+ .isNotNull(SystemUser::getOpenid)
.in(SystemUser::getMemberId,Arrays.asList(platformGroup.getUnFinishNoticeUsers().split(",")))
);
if (com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(systemUserList)) {
WxPlatNotice wxPlatNotice = new WxPlatNotice();
- wxPlatNotice.sendUnFinishNotice(
+ wxPlatNotice.sendUnFinishNotice(systemDictDataBiz,
wxNoticeConfigMapper,
platformJobList.stream().filter(i->Constants.equalsInteger(i.getPlatformGroupId(),groupId)).collect(Collectors.toList()).size(),
WxPlatConstants.platformJobContent.unFinishNotice,
- systemDictDataBiz.queryByCode(Constants.WX_PLATFORM, Constants.WX_PLATFORM_ACCESS_TOKEN).getCode(),
systemUserList.stream().map(i->i.getOpenid()).collect(Collectors.toList())
);
}
@@ -754,12 +757,7 @@
}
}
}
-
-
-
}
-
-
public void distanceSignIn(SignInDTO signInDTO , PlatformJob platformJob){
@@ -1025,7 +1023,6 @@
wxPlatNotice.sendPlatformJobTemplateNotice(systemDictDataBiz,
wxNoticeConfigMapper, p,
objCode,
- systemDictDataBiz.queryByCode(Constants.WX_PLATFORM, Constants.WX_PLATFORM_ACCESS_TOKEN).getCode(),
Arrays.asList(driver.getOpenid().split(","))
);
}
@@ -1141,6 +1138,11 @@
if(Constants.equalsInteger(platformJob.getStatus(),Constants.PlatformJobStatus.DONE.getKey())){
//濡傛灉宸蹭笅鍙戞垚鍔燂紝鏍囪宸叉巿鏉冪鍥姸鎬�
platformJob.setStatus(Constants.PlatformJobStatus.AUTHED_LEAVE.getKey());
+ //鍒犻櫎鎶ヨ淇℃伅
+ platformWarnEventMapper.update(new UpdateWrapper<PlatformWarnEvent>().lambda()
+ .set(PlatformWarnEvent::getIsdeleted,Constants.ONE)
+ .eq(PlatformWarnEvent::getPlatformId,platformJob.getId())
+ );
}
}else{
platformJob.setInHkstatus(Constants.THREE);
@@ -1152,14 +1154,12 @@
}
}
-
@Override
public void cancelInPark(PlatformJob platformJob){
if(Constants.equalsInteger(platformJob.getType(),Constants.TWO)
|| Constants.equalsInteger(platformJob.getType(),Constants.THREE)
|| StringUtils.isBlank(platformJob.getCarCodeFront())
|| Constants.equalsInteger(platformJob.getType(),Constants.FOUR)){
-
List<VisitPark> visitParkList = visitParkMapper.selectList(new QueryWrapper<VisitPark>().lambda()
.eq(VisitPark::getCarCode,platformJob.getCarCodeFront())
.eq(VisitPark::getObjType,Constants.ONE)
@@ -1184,7 +1184,6 @@
}
}
}
-
/**
* 鏈堝彴鍙彿
*/
@@ -1605,6 +1604,12 @@
//瀛樺偍鎿嶄綔鏃ュ織
savePlatformLog(Constants.PlatformJobLogType.DONE.getKey(),oldPlatformJob,platformJob ,
Constants.PlatformJobLogType.DONE.getInfo());
+
+ //鍒犻櫎鎶ヨ淇℃伅
+ platformWarnEventMapper.update(new UpdateWrapper<PlatformWarnEvent>().lambda()
+ .set(PlatformWarnEvent::getIsdeleted,Constants.ONE)
+ .eq(PlatformWarnEvent::getPlatformId,platformJob.getId())
+ );
if(Constants.equalsInteger(platformJob.getType(),Constants.THREE)){
// 澶栧崗杞﹁璐� 鏌ヨTMS 鐢靛瓙閿佹儏鍐�
@@ -1623,7 +1628,7 @@
TmsBaseResponse<List<TmsLockStatusQueryResponse>> lockResult = tmsService.lockStatusQuery(tmsLock);
if(lockResult!=null && lockResult.getCode()!=null && lockResult.getCode().equals("0")&& lockResult.getData()!=null ){
for(TmsLockStatusQueryResponse s : lockResult.getData()){
- if(StringUtils.isBlank(s.getContractNumber())){
+ if(StringUtils.isBlank(s.getOutDate())){
continue;
}
platformWmsDetailMapper.update(null,new UpdateWrapper<PlatformWmsDetail>().lambda()
@@ -1673,28 +1678,37 @@
Date date = new Date();
List<String> codeList =new ArrayList<>();
for(PlatformWmsDetail d : details){
- codeList.add(d.getContractNum());
+ if(StringUtils.isNotBlank(d.getContractNum())){
+ if(StringUtils.isNotBlank(d.getContractNum())){
+ codeList.add(d.getContractNum());
+ }
+ }
}
- TmsLockStatusQueryRequest tmsLock = new TmsLockStatusQueryRequest();
- tmsLock.setContractNumbers(codeList);
List<Integer> jobIds = new ArrayList<>();
- TmsBaseResponse<List<TmsLockStatusQueryResponse>> lockResult = tmsService.lockStatusQuery(tmsLock);
- if(lockResult!=null && lockResult.getCode()!=null && lockResult.getCode().equals("0")&& lockResult.getData()!=null ){
- for(TmsLockStatusQueryResponse s : lockResult.getData()){
- try {
- //寮傚父澶勭悊锛岃兘澶勭悊涓�涓槸涓�涓�
- platformWmsDetailMapper.update(null,new UpdateWrapper<PlatformWmsDetail>().lambda()
- .eq(PlatformWmsDetail::getContractNum,s.getContractNumber())
- .set(PlatformWmsDetail::getEditDate,date)
- .set(PlatformWmsDetail::getLockDate,s.getOutDate())
- .set(PlatformWmsDetail::getLockStatus,Constants.ONE)
- .eq(PlatformWmsDetail::getIsdeleted,Constants.ZERO));
- PlatformWmsDetail job = getJobByContractnumFromDetail(s.getContractNumber(),details);
- if(job != null){
- jobIds.add(job.getJobId());
+ if(codeList.size()>0){
+ TmsLockStatusQueryRequest tmsLock = new TmsLockStatusQueryRequest();
+ tmsLock.setContractNumbers(codeList);
+ TmsBaseResponse<List<TmsLockStatusQueryResponse>> lockResult = tmsService.lockStatusQuery(tmsLock);
+ if(lockResult!=null && lockResult.getCode()!=null && lockResult.getCode().equals("0")&& lockResult.getData()!=null ){
+ for(TmsLockStatusQueryResponse s : lockResult.getData()){
+ try {
+ if(StringUtils.isBlank(s.getOutDate())){
+ continue;
+ }
+ //寮傚父澶勭悊锛岃兘澶勭悊涓�涓槸涓�涓�
+ platformWmsDetailMapper.update(null,new UpdateWrapper<PlatformWmsDetail>().lambda()
+ .eq(PlatformWmsDetail::getContractNum,s.getContractNumber())
+ .set(PlatformWmsDetail::getEditDate,date)
+ .set(PlatformWmsDetail::getLockDate,s.getOutDate())
+ .set(PlatformWmsDetail::getLockStatus,Constants.ONE)
+ .eq(PlatformWmsDetail::getIsdeleted,Constants.ZERO));
+ PlatformWmsDetail job = getJobByContractnumFromDetail(s.getContractNumber(),details);
+ if(job != null){
+ jobIds.add(job.getJobId());
+ }
+ }catch (Exception e){
+ logger.error("=============鏇存柊鐢靛瓙閿佺姸鎬佷俊鎭紓甯革細"+e.getMessage());
}
- }catch (Exception e){
- logger.error("=============鏇存柊鐢靛瓙閿佺姸鎬佷俊鎭紓甯革細"+e.getMessage());
}
}
}
@@ -2435,22 +2449,23 @@
* @param jobIdList
*/
@Override
- public void dealJobFinish(List<Integer> jobIdList){
+ public void dealJobFinish(List<Integer> jobIdList,LoginUserInfo loginUserInfo){
if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(jobIdList)){
List<PlatformJob> platformJobList = platformJobMapper.selectList(new QueryWrapper<PlatformJob>().lambda()
.eq(PlatformJob::getIsdeleted,Constants.ZERO)
- .in(PlatformJob::getStatus,Constants.PlatformJobStatus.WAIT_CONFIRM,Constants.PlatformJobStatus.WART_SIGN_IN)
+ .in(PlatformJob::getStatus,Constants.PlatformJobStatus.WAIT_CONFIRM.getKey()
+ ,Constants.PlatformJobStatus.WART_SIGN_IN.getKey()
+ ,Constants.PlatformJobStatus.WAIT_CALL.getKey())
.in(PlatformJob::getId,jobIdList)
);
if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(platformJobList)){
-
platformJobMapper.update(null,new UpdateWrapper<PlatformJob>().lambda()
.set(PlatformJob::getStatus,Constants.PlatformJobStatus.DONE.getKey())
.set(PlatformJob::getDoneDate,new Date())
- .in(PlatformJob::getStatus,Constants.PlatformJobStatus.WAIT_CONFIRM,Constants.PlatformJobStatus.WART_SIGN_IN)
+ .set(PlatformJob::getEditor,loginUserInfo.getId())
+ .in(PlatformJob::getStatus,Constants.PlatformJobStatus.WAIT_CONFIRM.getKey(),Constants.PlatformJobStatus.WART_SIGN_IN.getKey(),Constants.PlatformJobStatus.WAIT_CALL.getKey())
.eq(PlatformJob::getIsdeleted,Constants.ZERO)
.in(PlatformJob::getId,platformJobList.stream().map(i->i.getId()).collect(Collectors.toList())));
-
}
}
@@ -2458,5 +2473,37 @@
}
+ @Override
+ @Transactional(rollbackFor = {Exception.class,BusinessException.class})
+ public PlatformJob restoreWork(JobOperateDTO jobOperateDTO){
+ if(Objects.isNull(jobOperateDTO)
+ || Objects.isNull(jobOperateDTO.getJobId())){
+ throw new BusinessException(ResponseStatus.BAD_REQUEST);
+ }
+ PlatformJob platformJob = platformJobMapper.selectById(jobOperateDTO.getJobId());
+ if(Objects.isNull(platformJob)||Constants.equalsInteger(platformJob.getIsdeleted(),Constants.ONE)){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY);
+ }
+ if(!Constants.equalsInteger(platformJob.getStatus(),Constants.PlatformJobStatus.EXCEPTION.getKey())){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧�,涓氬姟鐘舵�佸凡娴佽浆锛�");
+ }
+ Platform platform = platformJoinMapper.selectById(platformJob.getPlatformId());
+ if(Objects.isNull(platform)){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌鏈堝彴淇℃伅");
+ }
+ PlatformJob oldPlatformJob = new PlatformJob();
+ BeanUtils.copyProperties(platformJob,oldPlatformJob);
+ if(Objects.isNull(platformJob.getStartDate())){
+ platformJob.setStartDate(new Date());
+ }
+ platformJob.setStatus(Constants.PlatformJobStatus.WORKING.getKey());
+ platformJob.setEditDate(new Date());
+ platformJobMapper.updateById(platformJob);
+
+ //瀛樺偍鎿嶄綔鏃ュ織
+ savePlatformLog(Constants.PlatformJobLogType.WORKING.getKey(),oldPlatformJob,platformJob,
+ Constants.PlatformJobLogType.WORKING.getInfo().replace("{data}",platform.getName()));
+ return platformJob;
+ }
}
--
Gitblit v1.9.3