From 5944c9ea054165cc4adfa79254f9b724abc371db Mon Sep 17 00:00:00 2001 From: ZQN <364596817@qq.com> Date: 星期二, 03 九月 2024 13:52:00 +0800 Subject: [PATCH] 执法记录条件 --- project-enforce/src/main/java/com/project/enforce/service/impl/EnforceOrderServiceImpl.java | 127 +++++++++++++++++++++++++++++++----------- 1 files changed, 94 insertions(+), 33 deletions(-) diff --git a/project-enforce/src/main/java/com/project/enforce/service/impl/EnforceOrderServiceImpl.java b/project-enforce/src/main/java/com/project/enforce/service/impl/EnforceOrderServiceImpl.java index ecc19c3..db16813 100644 --- a/project-enforce/src/main/java/com/project/enforce/service/impl/EnforceOrderServiceImpl.java +++ b/project-enforce/src/main/java/com/project/enforce/service/impl/EnforceOrderServiceImpl.java @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.project.common.annotation.DataScope; import com.project.common.core.domain.entity.SysUser; +import com.project.common.core.domain.model.DateRange; import com.project.common.enums.OrderPre; import com.project.common.exception.base.BaseException; import com.project.common.utils.DateUtils; @@ -19,6 +20,7 @@ import com.project.enforce.domain.bo.editBo.OrderResultBo; import com.project.enforce.domain.bo.queryBo.EnforceOrderQueryBo; import com.project.enforce.domain.bo.queryBo.OrderCheckedQueryBo; +import com.project.enforce.domain.vo.EnforceDistinctVo; import com.project.enforce.domain.vo.EnforceEvaluateVo; import com.project.enforce.domain.vo.EnforceOrderVo; import com.project.enforce.domain.vo.OrderNodeVo; @@ -34,6 +36,7 @@ import java.util.ArrayList; import java.util.Collection; +import java.util.LinkedList; import java.util.List; /** @@ -57,13 +60,15 @@ /** * 閫氱敤鍒楄〃-鏃犳潈闄� - * @param bo 鍙傛暟 + * @param bo 鍙傛暟 * @return 鍒楄〃 */ @Override public List<EnforceOrderVo> queryCommonList(EnforceOrderQueryBo bo) { QueryWrapper<EnforceOrder> qw = getQw(bo); + + List<EnforceOrder> list = this.list(qw); return Convert.toList(EnforceOrderVo.class , list); } @@ -74,22 +79,73 @@ } /** + * 浼佷笟纭鎵ф硶鍗� + * @param orderId 璁㈠崟id + * @return 缁撴灉 + */ + @Override + @Transactional + public Boolean confirm(Long orderId) + { + EnforceOrder order = this.getById(orderId); + if (order.getOrderStatus()!=4){ + throw new BaseException("璇峰緟鎵ф硶閮ㄩ棬涓婃姤缁撴灉鍚庣‘璁わ紒"); + } + order.setOrderStatus(5); + order.setConfirmTime(DateUtils.getNowDate()); + return this.updateById(order); + } + + @Override + @Transactional + public Integer executeEnforceOrderWarn() + { + List<EnforceOrder> updList = new LinkedList<>(); + //鍚屼竴澶╅噸澶嶆墽娉� + List<EnforceDistinctVo> list =baseMapper.selectDistinctCheckDeptIdAndCompanyId(); + if (StringUtils.isNotEmpty(list)){ + for (EnforceDistinctVo distinctVo : list) { + List<EnforceOrder> orderList = this.list(lq() + .eq(EnforceOrder::getCompanyId, distinctVo.getCompanyId()) + .eq(EnforceOrder::getCheckDeptId, distinctVo.getCheckDeptId()) + .like(EnforceOrder::getApplyTime, distinctVo.getApplyTimeStr()) + .orderByDesc(EnforceOrder::getApplyTime) + ); + if (StringUtils.isNotEmpty(orderList)){ + List<EnforceOrder> enforceOrders = orderList.subList(0, orderList.size() - 1); + enforceOrders.forEach(order->{order.setWarnStatus(1);order.setWarnReason("鍚屼竴澶╁唴瀵瑰悓涓�浼佷笟閲嶅鎵ф硶");}); + updList.addAll(enforceOrders); + } + } + } + if (StringUtils.isNotEmpty(updList)){ + this.updateBatchById(updList); + } + return updList.size(); + } + + public static void main(String[] args) { + DateRange todayRange = DateUtils.getTodayRange(); + System.out.println(todayRange); + } + + /** * 浼佷笟鎵ф硶鍗曞垪琛� - * @param bo 鍙傛暟 + * @param bo 鍙傛暟 * @return 鍒楄〃 */ @Override public List<EnforceOrderVo> queryCompanyList(EnforceOrderQueryBo bo) { QueryWrapper<EnforceOrder> qw = getQw(bo); - qw.ge("order_status",4); + qw.ge("order_status",2); List<EnforceOrder> list = this.list(qw); return Convert.toList(EnforceOrderVo.class , list); } /** * 鎵ф硶鐢宠鍗曞垪琛� - * @param bo 鍙傛暟 + * @param bo 鍙傛暟 * @return 鍒楄〃 */ @Override @@ -104,7 +160,7 @@ /** * 鎵ф硶鎵ц鍗曞垪琛� - * @param bo 鍙傛暟 + * @param bo 鍙傛暟 * @return 鍒楄〃 */ @Override @@ -118,26 +174,26 @@ /** * 寰呭鏍稿垪琛� - * @param bo 鍙傛暟 + * @param bo 鍙傛暟 * @return 鍒楄〃 */ @Override public List<EnforceOrderVo> queryCheckList(EnforceOrderQueryBo bo) { - SysUser loginUser = SecurityUtils.getLoginUser().getUser(); + SysUser loginUser = userService.selectUserById(SecurityUtils.getUserId()); bo.setCheckIds(loginUser.getPhonenumber()); - List<Long> deptIds = deptService.getApplyDeptIdsByLoginUserId(loginUser.getUserId()); - if (StringUtils.isNotEmpty(deptIds)){ - bo.setApplyDeptIds(deptIds); - } else { - bo.setApplyDeptIds(null); - } +// List<Long> deptIds = deptService.getApplyDeptIdsByLoginUserId(loginUser.getUserId()); +// if (StringUtils.isNotEmpty(deptIds)){ +// bo.setApplyDeptIds(deptIds); +// } else { +// bo.setApplyDeptIds(null); +// } return this.baseMapper.selectCheckList(bo); } /** * 瀹℃壒璁板綍鍒楄〃 - * @param bo 鍙傛暟 + * @param bo 鍙傛暟 * @return 鍒楄〃 */ @Override @@ -204,6 +260,9 @@ validEntityBeforeSave(add); List<String> phones = getCheckPhones(add.getCheckLevel(), add.getApplyDeptId()); if (StringUtils.isNotEmpty(phones)){ + int checkLevel = Integer.parseInt(phones.get(0)); + add.setCheckLevel(checkLevel); + phones.remove(0); String checkPhones = StringUtils.join(phones, ","); add.setCheckIds(checkPhones); } @@ -260,7 +319,7 @@ @Override public List<String> getCheckPhones(Integer checkLevel, Long applyDeptId) { - return getCheckPhones(checkLevel, applyDeptId, 0); + return getCheckPhonesSimple(checkLevel, applyDeptId); } @Override @@ -272,24 +331,27 @@ .eq(EnforceCheckLog::getOrderId, orderId).orderByAsc(EnforceCheckLog::getCheckTime) ); if (order.getApplyTime()!=null){ - vos.add(new OrderNodeVo("鎻愪氦鐢宠",order.getApplyUser(),order.getApplyTime(), null)); + vos.add(new OrderNodeVo("鎻愪氦鐢宠",order.getApplyUser(),order.getApplyDeptName(),order.getApplyTime(), null)); } if (StringUtils.isNotEmpty(checkLogs)){ for (EnforceCheckLog checkLog : checkLogs) { + if (checkLog.getCheckStatus()>0){ - vos.add(new OrderNodeVo("瀹℃壒閫氳繃",checkLog.getCheckUser(),checkLog.getCheckTime(), null)); + vos.add(new OrderNodeVo("瀹℃壒閫氳繃",checkLog.getCheckUser(),userService.getDeptNameByUserId(checkLog.getCheckId()),checkLog.getCheckTime(), null)); } else { - vos.add(new OrderNodeVo("瀹℃壒鎷掔粷",checkLog.getCheckUser(),checkLog.getCheckTime(), checkLog.getCheckReason())); + vos.add(new OrderNodeVo("瀹℃壒鎷掔粷",checkLog.getCheckUser(),userService.getDeptNameByUserId(checkLog.getCheckId()),checkLog.getCheckTime(), checkLog.getCheckReason())); } } } if (order.getInTime()!=null){ - vos.add(new OrderNodeVo("鎵爜鍏ヤ紒",order.getExecuteUser(),order.getInTime(), null)); + vos.add(new OrderNodeVo("鎵爜鍏ヤ紒",order.getExecuteUser(),order.getExecuteDeptName(),order.getInTime(), null)); } if (order.getExecuteTime()!=null){ - vos.add(new OrderNodeVo("缁撴灉涓婃姤",order.getExecuteUser(),order.getExecuteTime(), null)); + vos.add(new OrderNodeVo("缁撴灉涓婃姤",order.getExecuteUser(),order.getExecuteDeptName(),order.getExecuteTime(), null)); } - + if (order.getConfirmTime()!=null){ + vos.add(new OrderNodeVo("浼佷笟纭",order.getCompanyUser(),order.getCompanyName(),order.getConfirmTime(), null)); + } return vos; } @@ -305,11 +367,14 @@ public Boolean doScanOrder(Long orderId) { EnforceOrder order = this.getById(orderId); - if (order.getOrderStatus()!=2){ + if (order.getOrderStatus()<2){ throw new BaseException("鎵ф硶鍗曡繕鏈鎵癸紒"); } + if (order.getOrderStatus()>2){ + throw new BaseException("鎵ф硶鍗曞凡纭鎵ф硶锛�"); + } order.setOrderStatus(3); - SysUser user = SecurityUtils.getLoginUser().getUser(); + SysUser user = userService.selectUserById(SecurityUtils.getUserId()); order.setExecuteId(user.getUserId()); order.setExecuteUser(user.getNickName()); order.setExecutePhone(user.getPhonenumber()); @@ -336,6 +401,7 @@ .set(StringUtils.isNotEmpty(resultBo.getRegionVideos()), EnforceOrder::getRegionVideos, resultBo.getRegionVideos()) .set( EnforceOrder::getOrderStatus, 4) .set( EnforceOrder::getExecuteTime, DateUtils.getNowDate()) + .eq( EnforceOrder::getOrderId, resultBo.getOrderId()) ); } @@ -475,24 +541,19 @@ * @param checkLevel 瀹℃壒绾у埆锛氶粯璁�0 * @param deptId 鐢宠閮ㄩ棬id */ - private List<String> getCheckPhones(Integer checkLevel, Long deptId, int current) + private List<String> getCheckPhonesSimple(Integer checkLevel, Long deptId) { if (checkLevel==3){ - if (current==1){ - return null; - } - checkLevel = 0; - deptId = deptService.selectDeptById(deptId).getParentId(); - current++; - getCheckPhones(checkLevel, deptId, current); + return null; } - checkLevel++; String checkKey = "check_enforce_"; List<String> phones = userService.getPhonesByRoleKey(checkKey + checkLevel, deptId); if (StringUtils.isNotEmpty(phones)){ + phones.add(0,checkLevel.toString()); return phones; } - return getCheckPhones(checkLevel, deptId, current); + checkLevel ++; + return getCheckPhonesSimple(checkLevel, deptId); } -- Gitblit v1.9.1