From c97d60075a43626dcdd4d5d4e59d55c94642a7dc Mon Sep 17 00:00:00 2001
From: doum <doum>
Date: 星期一, 20 十月 2025 10:35:42 +0800
Subject: [PATCH] 最新版本541200007
---
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java | 288 +++++++++++++++++++++++++++++++++++++++++++++++++++------
1 files changed, 255 insertions(+), 33 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 c1fd2cb..6debdc9 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;
@@ -223,6 +225,7 @@
@Override
public List<PlatformJob> findList(PlatformJob platformJob) {
+ platformJob.setIsdeleted(Constants.ZERO);
QueryWrapper<PlatformJob> wrapper = new QueryWrapper<>(platformJob);
return platformJobMapper.selectList(wrapper);
}
@@ -242,11 +245,14 @@
.selectAs(PlatformWmsJob::getIoCreatedate,PlatformJob::getIoCreatedate)
.selectAs(SystemUser::getRealname,PlatformJob::getOutUserName)
.selectAs(PlatformBooks::getId,PlatformJob::getBookId)
+ .select("s.REALNAME",PlatformJob::getEditUserName)
.leftJoin(Platform.class,Platform::getId,PlatformJob::getPlatformId)
- .leftJoin(PlatformGroup.class,PlatformGroup::getId,Platform::getGroupId)
+ .leftJoin(PlatformGroup.class,PlatformGroup::getId,PlatformJob::getPlatformGroupId)
.leftJoin(PlatformWmsJob.class,PlatformWmsJob::getCarryBillCode,PlatformJob::getBillCode)
.leftJoin(SystemUser.class,SystemUser::getId,PlatformJob::getOutUserId)
.leftJoin(PlatformBooks.class,PlatformBooks::getJobId,PlatformJob::getId)
+ .leftJoin(" system_user s on t.EDITOR = s.id ")
+ .eq(PlatformJob::getIsdeleted,Constants.ZERO)
.eq(pageWrap.getModel().getId() != null, PlatformJob::getId, pageWrap.getModel().getId())
.eq(pageWrap.getModel().getCreator() != null, PlatformJob::getCreator, pageWrap.getModel().getCreator())
.ge(pageWrap.getModel().getCreateDate() != null, PlatformJob::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()))
@@ -262,6 +268,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())
@@ -321,7 +328,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()+"')")
@@ -331,9 +337,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);
@@ -352,8 +362,6 @@
});
return PageData.from(platformJobIPage);
}
-
-
@Override
public PageData<PlatformJob> platformCallList(PageWrap<PlatformJob> pageWrap) {
@@ -436,7 +444,7 @@
if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(platformWmsDetailList)){
platformJob.setTotalNum(
- platformWmsDetailList.stream().map(m->m.getIoQty()).reduce(BigDecimal.ZERO,BigDecimal::add)
+ platformWmsDetailList.stream().filter(i->Objects.nonNull(i.getIoQty())).map(m->m.getIoQty()).reduce(BigDecimal.ZERO,BigDecimal::add)
);
platformWmsJob.setPlatformWmsDetailList(platformWmsDetailList);
platformJob.setPlatformWmsJob(platformWmsJob);
@@ -685,7 +693,74 @@
//瀛樺偍鎿嶄綔鏃ュ織
savePlatformLog(Constants.PlatformJobLogType.SIGN.getKey(),oldPlatformJob,platformJob,
Constants.PlatformJobLogType.SIGN.getInfo());
+ //绛惧埌寰俊閫氱煡 2025骞�3鏈�26鏃�14:25:00
+ logger.info("绛惧埌寰俊閫氱煡=========================>寮�濮�====绛惧埌绫诲瀷=>"+signInDTO.getSignType()+"===>浜哄憳涓婚敭=>"+platformGroup.getSignInNoticeUsers());
+ if(!Constants.equalsInteger(signInDTO.getSignType(),Constants.TWO)&&
+ StringUtils.isNotBlank(platformGroup.getSignInNoticeUsers())){
+ logger.info("绛惧埌寰俊閫氱煡=========================>杩涘叆");
+ List<SystemUser> systemUserList = systemUserMapper.selectList(new QueryWrapper<SystemUser>().lambda()
+ .eq(SystemUser::getDeleted,Constants.ZERO).eq(SystemUser::getStatus,Constants.ZERO).isNotNull(SystemUser::getOpenid)
+ .in(SystemUser::getMemberId,Arrays.asList(platformGroup.getSignInNoticeUsers().split(",")))
+ );
+ if (com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(systemUserList)) {
+ WxPlatNotice wxPlatNotice = new WxPlatNotice();
+ wxPlatNotice.sendPlatformJobSignNotice(systemDictDataBiz,wxNoticeConfigMapper, platformJob,
+ WxPlatConstants.platformJobContent.platformGroupSignIn,
+ systemUserList.stream().map(i->i.getOpenid()).collect(Collectors.toList())
+ );
+ }
+ }
+ logger.info("绛惧埌寰俊閫氱煡=========================>缁撴潫");
}
+
+
+ @Override
+ public void sendUnFinishNotice(){
+ //鐘舵�� 0寰呯‘璁� 1寰呯鍒� 2绛夊緟鍙彿 3鍏ュ洯绛夊緟 4宸插彨鍙� 5浣滀笟涓� 6浣滀笟瀹屾垚 7杞Щ涓� 8寮傚父鎸傝捣 9宸叉巿鏉冪鍥� 10宸茬鍥� 11 宸茶繃鍙� 12鍙栨秷锛圵MS锛�
+ List<PlatformJob> platformJobList = platformJobJoinMapper.selectJoinList(PlatformJob.class,
+ new MPJLambdaWrapper<PlatformJob>()
+ .selectAll(PlatformJob.class)
+ .eq(PlatformJob::getIsdeleted,Constants.ZERO)
+ .isNotNull(PlatformJob::getPlatformGroupId)
+ .apply(" CREATE_DATE < now() ")
+ .in(PlatformJob::getStatus,Constants.PlatformJobStatus.WAIT_CONFIRM.getKey()
+ ,Constants.PlatformJobStatus.WART_SIGN_IN.getKey()
+ ,Constants.PlatformJobStatus.WAIT_CALL.getKey()
+ ,Constants.PlatformJobStatus.IN_WAIT.getKey()
+ ,Constants.PlatformJobStatus.CALLED.getKey()
+ ,Constants.PlatformJobStatus.WORKING.getKey()
+ ,Constants.PlatformJobStatus.TRANSFERING.getKey()
+ ,Constants.PlatformJobStatus.EXCEPTION.getKey()
+ ,Constants.PlatformJobStatus.OVER_NUMBER.getKey()
+ )
+ );
+ if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(platformJobList)){
+ List<Integer> platformGroupId = platformJobList.stream().map(i->i.getPlatformGroupId()).collect(Collectors.toList());
+ if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(platformGroupId)){
+ Set<Integer> setList = new HashSet<>(platformGroupId);
+ for (Integer groupId:setList) {
+ PlatformGroup platformGroup = platformGroupMapper.selectById(groupId);
+ 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)
+ .in(SystemUser::getMemberId,Arrays.asList(platformGroup.getUnFinishNoticeUsers().split(",")))
+ );
+ if (com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(systemUserList)) {
+ WxPlatNotice wxPlatNotice = new WxPlatNotice();
+ wxPlatNotice.sendUnFinishNotice(systemDictDataBiz,
+ wxNoticeConfigMapper,
+ platformJobList.stream().filter(i->Constants.equalsInteger(i.getPlatformGroupId(),groupId)).collect(Collectors.toList()).size(),
+ WxPlatConstants.platformJobContent.unFinishNotice,
+ systemUserList.stream().map(i->i.getOpenid()).collect(Collectors.toList())
+ );
+ }
+ }
+ }
+ }
+ }
+ }
+
public void distanceSignIn(SignInDTO signInDTO , PlatformJob platformJob){
if(Objects.isNull(signInDTO.getLat())
@@ -950,11 +1025,11 @@
wxPlatNotice.sendPlatformJobTemplateNotice(systemDictDataBiz,
wxNoticeConfigMapper, p,
objCode,
- systemDictDataBiz.queryByCode(Constants.WX_PLATFORM, Constants.WX_PLATFORM_ACCESS_TOKEN).getCode(),
Arrays.asList(driver.getOpenid().split(","))
);
}
}
+
@@ -1065,6 +1140,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);
@@ -1076,14 +1156,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)
@@ -1108,7 +1186,6 @@
}
}
}
-
/**
* 鏈堝彴鍙彿
*/
@@ -1529,6 +1606,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 鐢靛瓙閿佹儏鍐�
@@ -1547,7 +1630,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()
@@ -1578,7 +1661,9 @@
//骞挎挱 led閫氱煡
platformJob.setPlatformName(platform.getName());
- this.broadcastAndLEed(platformJob,Constants.PlatformLedContent.DONE.getInfo(),
+ this.broadcastAndLEed(platformJob,
+ //Constants.PlatformLedContent.DONE.getInfo(),
+ StringUtils.isBlank(platform.getLedContent())?Constants.PlatformLedContent.IDEL_CONTNET.getInfo():platform.getLedContent(),
Constants.PlatformBroadcastContent.DONE.getInfo());
return platformJob;
}
@@ -1595,28 +1680,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());
}
}
}
@@ -2352,5 +2446,133 @@
}
+ /**
+ * 鏇存崲鏈堝彴鍒嗛挓
+ * @param param
+ */
+ @Override
+ public void changPlatformGroup(PlatformJob param, LoginUserInfo loginUser){
+ if(param.getId() ==null || param.getPlatformGroupId()==null) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST);
+ }
+ PlatformJob model = platformJobMapper.selectById(param.getId());
+ if(model ==null || Constants.equalsInteger(model.getIsdeleted(),Constants.ONE)){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY);
+ }
+ if(Constants.equalsInteger(model.getType(),Constants.platformJobType.sgscxh)){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"銆愬競鍏徃澶栧崗杞﹀嵏璐с�戜綔涓氱被鍨嬩笉鏀寔鏈堝彴缁勫垏鎹�");
+ }
+ // WAIT_CONFIRM(0, "寰呯‘璁�","寰呯‘璁�" ),
+ // WART_SIGN_IN(1, "寰呯鍒�","寰呯鍒�" ),
+ // WAIT_CALL(2, "宸茬鍒�","宸茬鍒�"),
+ if(!Constants.equalsInteger(model.getStatus(),Constants.PlatformJobStatus.WAIT_CONFIRM.getKey())
+ &&!Constants.equalsInteger(model.getStatus(),Constants.PlatformJobStatus.WART_SIGN_IN.getKey())
+ &&!Constants.equalsInteger(model.getStatus(),Constants.PlatformJobStatus.WAIT_CALL.getKey())){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧�,涓氬姟鐘舵�佸凡娴佽浆锛屼笉鏀寔鏈堝彴缁勫垏鎹紒");
+ }
+ PlatformGroup group = platformGroupMapper.selectById(param.getPlatformGroupId());
+ if(Objects.isNull(group)|| Constants.equalsInteger(group.getIsdeleted(),Constants.ONE)){
+ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌鏈堝彴缁勪俊鎭�");
+ }
+ if(Constants.equalsInteger(model.getType(),Constants.platformJobType.zycxh)
+ ||Constants.equalsInteger(model.getType(),Constants.platformJobType.wxcxh)){
+ if( ! Constants.equalsInteger(group.getType(),Constants.ZERO)){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"璇ヤ綔涓氬彧鑳藉湪銆愬畨娉扮墿娴佸嵏璐с�戠被鍨嬬殑鏈堝彴缁勪笅浣滀笟");
+ }
+ }
+ if(Constants.equalsInteger(model.getType(),Constants.platformJobType.zyczh)
+ ||Constants.equalsInteger(model.getType(),Constants.platformJobType.wxczh)){
+ if( ! Constants.equalsInteger(group.getType(),Constants.ONE)){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"璇ヤ綔涓氬彧鑳藉湪銆愬畨娉扮墿娴佽璐с�戠被鍨嬬殑鏈堝彴缁勪笅浣滀笟");
+ }
+ }
+ if(Constants.equalsInteger(model.getType(),Constants.platformJobType.sgscxh)
+ && !Constants.equalsInteger(group.getType(),Constants.TWO)){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"璇ヤ綔涓氬彧鑳藉湪銆愬競鍏徃鍗歌揣銆戠被鍨嬬殑鏈堝彴缁勪笅浣滀笟");
+ }
+ PlatformJob platformJob = new PlatformJob();
+ BeanUtils.copyProperties(model,platformJob);
+ platformJob.setPlatformGroupId(param.getPlatformGroupId());
+ platformJob.setEditDate(new Date());
+ platformJob.setTagVirtual(Constants.ONE);
+ platformJob.setTagVirtualUser(platformJob.getEditor());
+ platformJob.setTagVirtualTime(platformJob.getEditDate());
+ platformJob.setEditor(loginUser.getId());
+ int flag = platformJobMapper.update(null,new UpdateWrapper<PlatformJob>().lambda()
+ .set(PlatformJob::getEditDate,platformJob.getEditDate())
+ .set(PlatformJob::getTagVirtualTime,platformJob.getTagVirtualTime())
+ .set(PlatformJob::getEditor,platformJob.getEditor())
+ .set(PlatformJob::getPlatformGroupId,param.getPlatformGroupId())
+ .set(PlatformJob::getTagVirtualUser,platformJob.getEditor())
+ .set(PlatformJob::getPlatformId,null)//缃┖鍒嗛厤鐨勬湀鍙颁俊鎭�
+ .in(PlatformJob::getStatus,Constants.PlatformJobStatus.WAIT_CONFIRM.getKey(),
+ Constants.PlatformJobStatus.WART_SIGN_IN.getKey(),
+ Constants.PlatformJobStatus.WAIT_CALL.getKey())
+ .eq(PlatformJob::getId,param.getId()));
+ //瀛樺偍鎿嶄綔鏃ュ織
+ savePlatformLog(Constants.PlatformJobLogType.CHANGE_GROUP.getKey(),model,platformJob,
+ Constants.PlatformJobLogType.CHANGE_GROUP.getInfo().replace("{data}",param.getPlatformGroupName()).replace("{data1}",group.getName()));
+ }
+ /**
+ * 鎵嬪姩瀹屾垚浣滀笟
+ * @param jobIdList
+ */
+ @Override
+ 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.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())
+ .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())));
+ }
+
+ }
+
+
+ }
+
+ @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