From 3bd5f68b6db251dfa9bf377758faa6315b3a372d Mon Sep 17 00:00:00 2001
From: fuliqi <fuliqi@qq.com>
Date: 星期五, 02 八月 2024 17:11:50 +0800
Subject: [PATCH] 人脸合格、图片可用
---
ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java | 51 ++++++++++++++++++++++++++++-----------------------
1 files changed, 28 insertions(+), 23 deletions(-)
diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java
index 7b6af3f..32c27db 100644
--- a/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java
+++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java
@@ -19,6 +19,7 @@
import com.ycl.platform.service.NotifyService;
import com.ycl.platform.service.WorkOrderAuditingRecordService;
import com.ycl.platform.service.WorkOrderService;
+import com.ycl.platform.service.YwPointService;
import com.ycl.system.Result;
import com.ycl.system.model.LoginUser;
import com.ycl.system.page.PageUtil;
@@ -26,6 +27,10 @@
import com.ycl.utils.SecurityUtils;
import com.ycl.utils.redis.RedisCache;
import com.ycl.utils.uuid.IdUtils;
+import enumeration.general.NotifyTypeEnum;
+import enumeration.general.UrgentLevelEnum;
+import enumeration.general.WorkOrderDistributeWayEnum;
+import enumeration.general.WorkOrderStatusEnum;
import enumeration.general.*;
import lombok.RequiredArgsConstructor;
import org.springframework.beans.BeanUtils;
@@ -40,6 +45,7 @@
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
+import java.util.*;
import java.util.stream.Collectors;
/**
@@ -53,8 +59,7 @@
public class WorkOrderServiceImpl extends ServiceImpl<WorkOrderMapper, WorkOrder> implements WorkOrderService {
private final WorkOrderMapper workOrderMapper;
- private final YwUnitMapper ywUnitMapper;
- private final YwPeopleMapper ywPeopleMapper;
+ private final YwPointService ywPointService;
private final WorkOrderAuditingRecordMapper workOrderAuditingRecordMapper;
private final WorkOrderAuditingRecordService workOrderAuditingRecordService;
private final WorkOrderYwConditionRecordMapper workOrderYwConditionRecordMapper;
@@ -124,6 +129,10 @@
UrgentLevelEnum.WARNING,
workOrder.getWorkOrderNo());
notifyService.save(notify);
+ // 鍚屾鐐逛綅鐘舵��
+ if (form.getAuditingResult() == WorkOrderStatusEnum.AUDITING_SUCCESS) {
+ ywPointService.updateRecovery(Collections.singletonList(workOrder.getPointId()), 0);
+ }
return Result.ok("鎿嶄綔鎴愬姛");
}
@@ -267,53 +276,49 @@
}
@Override
+ @Transactional
public Result distributeFast(DistributeWorkOrderVO data) {
// 鑾峰彇褰撳墠鏃堕棿
LocalDateTime now = LocalDateTime.now(ZoneId.systemDefault());
+ data.setEnd(now);
switch (data.getFastWay()) {
case LAST_HALF_HOUR:
data.setStart(now.minusMinutes(30));
- data.setEnd(now);
break;
case LAST_HOUR:
data.setStart(now.minusHours(1));
- data.setEnd(now);
break;
case LAST_TWO_HOUR:
data.setStart(now.minusHours(2));
- data.setEnd(now);
break;
case LAST_DAY:
data.setStart(now.minusDays(1));
- data.setEnd(now);
break;
}
// 鏌ヨ绗﹀悎鏉′欢鐨勫伐鍗�
- List<Integer> ids = new LambdaQueryChainWrapper<>(baseMapper)
+ List<WorkOrder> list = new LambdaQueryChainWrapper<>(baseMapper)
+ .select(WorkOrder::getId, WorkOrder::getPointId)
.eq(WorkOrder::getStatus, WorkOrderStatusEnum.WAIT_DISTRIBUTE)
.eq(Objects.nonNull(data.getUnitId()), WorkOrder::getUnitId, data.getUnitId())
.eq(WorkOrder::getErrorType, data.getErrorType())
.between(WorkOrder::getCreateTime, data.getStart(), data.getEnd())
.orderByDesc(WorkOrder::getCreateTime)
.last("limit " + data.getFastNumLimit())
- .list()
- .stream()
- .map(WorkOrder::getId)
- .toList();
+ .list();
+ List<Integer> ids = list.stream().map(WorkOrder::getId).toList();
+ List<Integer> pointIds = list.stream().map(WorkOrder::getPointId).toList();
- if (ids.isEmpty()) {
- return Result.error("娌℃湁绗﹀悎鏉′欢鐨勫伐鍗�");
- }
- if (!getDistributeLock()) {
- return Result.error("姝ゅ埢鏈変汉涓嬪彂涓紝涓洪伩鍏嶅啿绐侊紝璇风◢鍚庨噸璇�");
- }
+ if (ids.isEmpty()) { return Result.error("娌℃湁绗﹀悎鏉′欢鐨勫伐鍗�"); }
+ if (!getDistributeLock()) { return Result.error("姝ゅ埢鏈変汉涓嬪彂涓紝涓洪伩鍏嶅啿绐侊紝璇风◢鍚庨噸璇�"); }
try {
new LambdaUpdateChainWrapper<>(baseMapper)
.set(WorkOrder::getStatus, WorkOrderStatusEnum.DISTRIBUTED)
.in(WorkOrder::getId, ids)
.update();
addDistributeRecord(ids, WorkOrderDistributeWayEnum.FAST_DISTRIBUTE);
+ // 鍚屾鐐逛綅鐘舵��
+ ywPointService.updateRecovery(pointIds, 1);
return Result.ok("鎴愬姛涓嬪彂" + ids.size() + "鏉″伐鍗�");
} catch (Exception e) {
return Result.error("鎿嶄綔澶辫触");
@@ -323,11 +328,10 @@
}
@Override
+ @Transactional
public Result selectedIdsDistribute(DistributeWorkOrderQuery query) {
WorkOrderDistributeWayEnum distributeWayEnum = WorkOrderDistributeWayEnum.SELECTED_DISTRIBUTE;
- if (!getDistributeLock()) {
- return Result.error("姝ゅ埢鏈変汉涓嬪彂涓紝涓洪伩鍏嶅啿绐侊紝璇风◢鍚庨噸璇�");
- }
+ if (!getDistributeLock()) { return Result.error("姝ゅ埢鏈変汉涓嬪彂涓紝涓洪伩鍏嶅啿绐侊紝璇风◢鍚庨噸璇�"); }
try {
if (query.getIds().isEmpty()) {
query.setIds(new LambdaQueryChainWrapper<>(baseMapper)
@@ -340,14 +344,15 @@
.collect(Collectors.toList()));
distributeWayEnum = WorkOrderDistributeWayEnum.ALL_DISTRIBUTE;
}
- if (query.getIds().isEmpty()) {
- return Result.error("娌℃湁宸ュ崟寰呬笅鍙�");
- }
+ if (query.getIds().isEmpty()) { return Result.error("娌℃湁宸ュ崟寰呬笅鍙�"); }
new LambdaUpdateChainWrapper<>(baseMapper)
.set(WorkOrder::getStatus, WorkOrderStatusEnum.DISTRIBUTED)
.in(WorkOrder::getId, query.getIds())
.update();
addDistributeRecord(query.getIds(), distributeWayEnum);
+ // 鍚屾鐐逛綅鐘舵��
+ List<Integer> pointIds = new LambdaQueryChainWrapper<>(baseMapper).select(WorkOrder::getPointId).in(WorkOrder::getId, query.getIds()).list().stream().map(WorkOrder::getPointId).toList();
+ ywPointService.updateRecovery(pointIds, 1);
return Result.ok("鎴愬姛涓嬪彂" + query.getIds().size() + "鏉″伐鍗�");
} catch (Exception e) {
return Result.error("鎿嶄綔澶辫触");
--
Gitblit v1.8.0