Selaa lähdekoodia

Merge branch 'feature-bieao' of lift-manager/lift-server into develop

bieao 5 vuotta sitten
vanhempi
commit
89adaef1b2

+ 2 - 6
lift-business-service/src/main/java/cn/com/ty/lift/business/library/controller/LiftController.java

@@ -116,12 +116,8 @@ public class LiftController {
      */
     @PostMapping("batch/move")
     @Validation(fields = {"projectId", "list"})
-    public RestResponse move(@Val @RequestBody LiftRequest request){
-        boolean result = projectLiftRelevanceService.move(request);
-        if (!result) {
-            return RestResponse.fail(MessageUtils.get("msg.modify.batch.fail"));
-        }
-        return RestResponse.success(null, MessageUtils.get("msg.modify.batch.success"));
+    public RestResponse move(@Val @RequestBody LiftRequest request) {
+        return projectLiftRelevanceService.move(request);
     }
 
     /**

+ 25 - 6
lift-business-service/src/main/java/cn/com/ty/lift/business/project/service/ProjectLiftRelevanceService.java

@@ -50,9 +50,6 @@ public class ProjectLiftRelevanceService extends ServiceImpl<ProjectLiftRelevanc
     @Resource
     private ProjectUserService projectUserService;
 
-    @Resource
-    private PlatformCompanyLiftRelevanceService platformService;
-
     @Resource
     private ProjectAppService projectAppService;
 
@@ -153,10 +150,32 @@ public class ProjectLiftRelevanceService extends ServiceImpl<ProjectLiftRelevanc
      * @description 批量移动电梯
      * @date 2020/1/7 7:57 下午
      */
-    public boolean move(LiftRequest request) {
+    public RestResponse move(LiftRequest request) {
+        Long projectId = request.getProjectId();
         List<ProjectLiftRelevance> list = request.getList();
-        list.forEach(entry -> entry.setProjectId(request.getProjectId()));
-        return updateBatchById(list, list.size());
+        List<Long> liftIdList = list.stream().map(ProjectLiftRelevance::getLiftId).collect(Collectors.toList());
+        //查询移动的电梯是否有未完成的计划
+        List<MaintenancePlan> planList = maintenancePlanService.getPlanList(request.getMtCompanyId(), liftIdList);
+        if (CollUtil.isNotEmpty(planList)) {
+            for (ProjectLiftRelevance relevance : list) {
+                for (MaintenancePlan plan : planList) {
+                    if (relevance.getProjectId().equals(plan.getProjectId())) {
+                        //设置未完成的维保计划归属为新的项目下
+                        plan.setProjectId(projectId);
+                    }
+                }
+            }
+            boolean ret = maintenancePlanService.updateBatchById(planList);
+            if (!ret) {
+                return RestResponse.fail(MessageUtils.get("msg.modify.batch.fail"));
+            }
+        }
+        list.forEach(entry -> entry.setProjectId(projectId));
+        boolean result = updateBatchById(list, list.size());
+        if (!result) {
+            return RestResponse.fail(MessageUtils.get("msg.modify.batch.fail"));
+        }
+        return RestResponse.success(null, MessageUtils.get("msg.modify.batch.success"));
     }