From a2299a6d4a6f99e9c11132138f5d3e9ec68f03ea Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期五, 06 六月 2025 19:19:34 +0800 Subject: [PATCH] 开发更新 --- server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskRecordServiceImpl.java | 99 ++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 77 insertions(+), 22 deletions(-) diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskRecordServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskRecordServiceImpl.java index d025f21..963f7b8 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskRecordServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskRecordServiceImpl.java @@ -12,7 +12,9 @@ import com.doumee.dao.business.*; import com.doumee.dao.business.model.*; import com.doumee.dao.system.MultifileMapper; +import com.doumee.dao.system.join.NoticesJoinMapper; import com.doumee.dao.system.model.Multifile; +import com.doumee.dao.system.model.Notices; import com.doumee.dao.system.model.SystemUser; import com.doumee.service.business.YwPatrolTaskRecordService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; @@ -26,9 +28,11 @@ import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; +import java.util.Arrays; import java.util.Date; import java.util.List; import java.util.Objects; +import java.util.stream.Collectors; /** * 杩愮淮宸℃浠诲姟 - 宸℃鐐逛俊鎭〃Service瀹炵幇 @@ -58,6 +62,9 @@ @Autowired private YwPatrolSchemeMapper ywPatrolSchemeMapper; + + @Autowired + private NoticesJoinMapper noticesJoinMapper; @Override @@ -127,13 +134,22 @@ .selectAs(YwPatrolPoint::getName,YwPatrolTaskRecord::getPointName) .selectAs(YwPatrolPoint::getContent,YwPatrolTaskRecord::getContent) .selectAs(SystemUser::getRealname,YwPatrolTaskRecord::getRealname) + + .selectAs(YwPatrolScheme::getTitle,YwPatrolTaskRecord::getSchemeTitle) + .selectAs(YwPatrolTask::getCode,YwPatrolTaskRecord::getTaskCode) + .selectAs(YwPatrolTask::getStartDate,YwPatrolTaskRecord::getStartDate) + .selectAs(YwPatrolTask::getEndDate,YwPatrolTaskRecord::getEndDate) + .leftJoin(YwPatrolPoint.class,YwPatrolPoint::getId,YwPatrolTaskRecord::getPointId) .leftJoin(SystemUser.class,SystemUser::getId,YwPatrolTaskRecord::getDealUserId) + .leftJoin(YwPatrolTask.class,YwPatrolTask::getId,YwPatrolTaskRecord::getTaskId) + .leftJoin(YwPatrolScheme.class,YwPatrolScheme::getId,YwPatrolTask::getSchemeId) .eq(YwPatrolScheme::getIsdeleted, Constants.ZERO) .eq(Objects.nonNull(model) && Objects.nonNull(model.getTaskId()),YwPatrolTaskRecord::getTaskId, model.getTaskId()) .eq(Objects.nonNull(model) && Objects.nonNull(model.getDealUserId()),YwPatrolTaskRecord::getDealUserId, model.getDealUserId()) .like(StringUtils.isNotBlank(model.getPointName()),YwPatrolPoint::getName,model.getPointName()) .eq(Objects.nonNull(model) && Objects.nonNull(model.getStatus()) , YwPatrolTaskRecord::getStatus,model.getStatus()) + .eq(Objects.nonNull(model) && Objects.nonNull(model.getDeviceId()) , YwPatrolPoint::getDeviceId,model.getDeviceId()) .orderByDesc(YwPatrolScheme::getCreateDate) ; IPage<YwPatrolTaskRecord> iPage = ywPatrolTaskRecordMapper.selectJoinPage(page,YwPatrolTaskRecord.class,queryWrapper); @@ -199,7 +215,8 @@ if(Objects.isNull(ywPatrolScheme)){ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌宸℃璁″垝淇℃伅"); } - if(!ywPatrolScheme.getUserIds().equals(loginUserInfo.getId().toString())){ + List<String> userIdList = Arrays.asList(ywPatrolScheme.getUserIds().split(",")); + if(userIdList.stream().filter(i->Constants.equalsInteger(Integer.valueOf(i),loginUserInfo.getId())).collect(Collectors.toList()).size()<=0){ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"闈炴偍鐨勫贰妫�浠诲姟鏃犳硶杩涜澶勭悊"); } YwPatrolTask ywPatrolTask = ywPatrolTaskMapper.selectById(model.getTaskId()); @@ -220,6 +237,7 @@ .set(YwPatrolTaskRecord::getDealInfo, ywPatrolTaskRecord.getDealInfo()) .eq(YwPatrolTaskRecord::getId,ywPatrolTaskRecord.getId())); + if(ywPatrolTaskRecordMapper.selectCount(new QueryWrapper<YwPatrolTaskRecord>().lambda() .eq(YwPatrolTaskRecord::getTaskId,ywPatrolTask.getId()) .eq(YwPatrolTaskRecord::getStatus,Constants.ZERO) @@ -234,18 +252,14 @@ .set(YwPatrolTask::getEditor,loginUserInfo.getId()) ); - if(ywPatrolTaskMapper.selectCount(new QueryWrapper<YwPatrolTask>().lambda() - .eq(YwPatrolTask::getSchemeId,ywPatrolTask.getSchemeId()) - .in(YwPatrolTask::getStatus,Constants.ZERO,Constants.ONE) - .ne(YwPatrolTask::getId,ywPatrolTask.getId()) - )==Constants.ZERO){ - ywPatrolSchemeMapper.update(null,new UpdateWrapper<YwPatrolScheme>().lambda() - .eq(YwPatrolScheme::getId,ywPatrolScheme.getId()) - .set(YwPatrolScheme::getStatus,Constants.TWO) - .set(YwPatrolScheme::getEditDate,DateUtil.getCurrDateTime()) - .set(YwPatrolScheme::getEditor,loginUserInfo.getId()) - ); - } + //鏍囪寰呭姙宸插鐞� + noticesJoinMapper.update(null,new UpdateWrapper<Notices>().lambda() + .set(Notices::getStatus,Constants.ONE) + .set(Notices::getParam3,Constants.TWO) + .eq(Notices::getIsdeleted,Constants.ZERO) + .eq(Notices::getObjType,Constants.ONE) + .eq(Notices::getObjId,ywPatrolTask.getId()) + ); }else{ if(Constants.equalsInteger(ywPatrolTask.getStatus(),Constants.ZERO)){ ywPatrolTaskMapper.update(null,new UpdateWrapper<YwPatrolTask>().lambda() @@ -255,14 +269,13 @@ .set(YwPatrolTask::getEditor,loginUserInfo.getId()) ); } - if(Constants.equalsInteger(ywPatrolScheme.getStatus(),Constants.ZERO)){ - ywPatrolSchemeMapper.update(null,new UpdateWrapper<YwPatrolScheme>().lambda() - .eq(YwPatrolScheme::getId,ywPatrolScheme.getId()) - .set(YwPatrolScheme::getStatus,Constants.ONE) - .set(YwPatrolScheme::getEditDate,DateUtil.getCurrDateTime()) - .set(YwPatrolScheme::getEditor,loginUserInfo.getId()) - ); - } + //鏍囪寰呭姙宸插鐞� + noticesJoinMapper.update(null,new UpdateWrapper<Notices>().lambda() + .set(Notices::getParam3,Constants.ONE) + .eq(Notices::getIsdeleted,Constants.ZERO) + .eq(Notices::getObjType,Constants.ONE) + .eq(Notices::getObjId,ywPatrolTask.getId()) + ); } //闄勪欢鏁版嵁 if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(ywPatrolTaskRecord.getMultifileList())){ @@ -303,7 +316,7 @@ .leftJoin(YwPatrolPoint.class,YwPatrolPoint::getId,YwPatrolTaskRecord::getPointId) .leftJoin(SystemUser.class,SystemUser::getId,YwPatrolTaskRecord::getDealUserId) .leftJoin(Company.class,Company::getId,SystemUser::getCompanyId) - .eq(YwPatrolScheme::getIsdeleted, Constants.ZERO) + .eq(YwPatrolTaskRecord::getIsdeleted, Constants.ZERO) .eq(YwPatrolPoint::getCode,bean.getPointCode()) .eq(YwPatrolTaskRecord::getTaskId,bean.getTaskId()) .orderByDesc(YwPatrolScheme::getCreateDate) @@ -318,6 +331,48 @@ } + /** + * 鏍规嵁鐧诲綍浜轰笌宸℃鐐规煡璇换鍔′俊鎭� + * @param bean + * @return + */ + @Override + public YwPatrolTaskRecord getRecordByUserPoint(YwPatrolTaskRecord bean,LoginUserInfo loginUserInfo) { + if(Objects.isNull(bean) + || StringUtils.isBlank(bean.getPointCode())){ + throw new BusinessException(ResponseStatus.BAD_REQUEST); + } + if(ywPatrolPointMapper.selectCount(new QueryWrapper<YwPatrolPoint>().lambda().eq(YwPatrolPoint::getCode,bean.getPointCode()))==Constants.ZERO){ + throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鏈尮閰嶅埌宸℃鐐癸紝璇烽噸鏂版壂鐮�!"); + } + YwPatrolTaskRecord ywPatrolTaskRecord = ywPatrolTaskRecordMapper.selectJoinOne(YwPatrolTaskRecord.class,new MPJLambdaWrapper<YwPatrolTaskRecord>() + .selectAll(YwPatrolTaskRecord.class) + .selectAs(YwPatrolPoint::getName,YwPatrolTaskRecord::getPointName) + .selectAs(YwPatrolPoint::getContent,YwPatrolTaskRecord::getContent) + .selectAs(YwPatrolPoint::getDeviceId,YwPatrolTaskRecord::getDeviceId) + .selectAs(YwPatrolScheme::getTitle,YwPatrolTaskRecord::getSchemeTitle) + .selectAs(SystemUser::getRealname,YwPatrolTaskRecord::getRealname) + .selectAs(Company::getName,YwPatrolTaskRecord::getCompanyName) + .leftJoin(YwPatrolPoint.class,YwPatrolPoint::getId,YwPatrolTaskRecord::getPointId) + .leftJoin(YwPatrolTask.class,YwPatrolTask::getId,YwPatrolTaskRecord::getTaskId) + .leftJoin(YwPatrolScheme.class,YwPatrolScheme::getId,YwPatrolTask::getSchemeId) + .leftJoin(SystemUser.class,SystemUser::getId,YwPatrolTaskRecord::getDealUserId) + .leftJoin(Company.class,Company::getId,SystemUser::getCompanyId) + .eq(YwPatrolTaskRecord::getIsdeleted, Constants.ZERO) + .eq(YwPatrolTaskRecord::getStatus, Constants.ZERO) + .eq(YwPatrolPoint::getCode,bean.getPointCode()) + .apply(" DATE(t2.START_DATE) = DATE(NOW()) and find_in_set('"+loginUserInfo.getId()+"', t3.USER_IDS ) ") + .orderByDesc(YwPatrolScheme::getCreateDate) + .last(" limit 1 ") + ); + if(Objects.isNull(ywPatrolTaskRecord)){ + throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"浠婃棩鏆傛棤宸℃浠诲姟!"); + } + getFileListByModel(ywPatrolTaskRecord); + return ywPatrolTaskRecord; + + } + -- Gitblit v1.9.3