Procházet zdrojové kódy

排班人员选择,订单删除问题修改

yejian016332 před 3 roky
rodič
revize
24f5355f57

+ 2 - 0
imcs-admin-boot/imcs-business-biz/src/main/java/com/github/zuihou/business/classSchedule/dao/ScheduleUserMapper.java

@@ -25,4 +25,6 @@ public interface ScheduleUserMapper extends SuperMapper<ScheduleUser> {
     List<Map> getScheduleUserList(ScheduleUser bean);
 
     List<ScheduleUser> getScheduleUserChangeList();
+
+    int deleteHisuser(String scheduleFlag);
 }

+ 14 - 10
imcs-admin-boot/imcs-business-biz/src/main/java/com/github/zuihou/business/classSchedule/service/impl/ScheduleUserServiceImpl.java

@@ -16,6 +16,8 @@ import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
+import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 import java.util.stream.Collectors;
@@ -50,19 +52,21 @@ public class ScheduleUserServiceImpl extends SuperServiceImpl<ScheduleUserMapper
     public ScheduleUser save(ScheduleUserSaveDTO data) {
         ScheduleUser module = BeanPlusUtil.toBean(data, ScheduleUser.class);
         //先删除再插入
-        baseMapper.delete(Wraps.<ScheduleUser>lbQ().eq(ScheduleUser::getScheduleFlag,module.getScheduleFlag()));
+//        baseMapper.delete(Wraps.<ScheduleUser>lbQ().eq(ScheduleUser::getScheduleFlag,module.getScheduleFlag()));
+
+        // 解决不能删除事务问题,
+        List<ScheduleUser> hisUserList = baseMapper.selectList(Wraps.<ScheduleUser>lbQ().eq(ScheduleUser::getScheduleFlag,module.getScheduleFlag()));
+        List<Long> hisUsers = hisUserList.stream().map(p -> p.getUserId()).collect(Collectors.toList());
+        List<ScheduleUser> insertUser = new ArrayList<>();
 
         List<ScheduleUser> detailList = data.getScheduleUserList();
-        if(detailList !=null && detailList.size()>0){
-            List<ScheduleUser> mainList = detailList.stream().map((map) -> {
-                ScheduleUser item = new ScheduleUser();
-                BeanUtil.copyProperties(map, item);
-                item.setScheduleFlag(module.getScheduleFlag());
-                item.setId(null);
-                return item;
-            }).collect(Collectors.toList());
-            super.saveBatch(mainList);
+        for(ScheduleUser scheduleUser : detailList){
+            if(!hisUsers.contains(scheduleUser.getUserId())){
+                scheduleUser.setScheduleFlag(module.getScheduleFlag());
+                insertUser.add(scheduleUser);
+            }
         }
+        super.saveBatch(insertUser);
 
         return module;
     }

+ 6 - 3
imcs-admin-boot/imcs-business-biz/src/main/java/com/github/zuihou/business/operationManagementCenter/service/impl/OrderServiceImpl.java

@@ -13,6 +13,7 @@ import com.github.zuihou.business.DemoLine.DemoCacheKey;
 import com.github.zuihou.business.DemoLine.DemoLineConstant;
 import com.github.zuihou.business.aps.algorithm.ga.GAScheduler;
 import com.github.zuihou.business.aps.instance.domain.basicdata.*;
+import com.github.zuihou.business.classSchedule.entity.ScheduleUser;
 import com.github.zuihou.business.edgeLibrary.entity.StockInfo;
 import com.github.zuihou.business.operationManagementCenter.dao.*;
 import com.github.zuihou.business.operationManagementCenter.dto.OrderProductUpdateDTO;
@@ -551,7 +552,7 @@ public class OrderServiceImpl extends SuperServiceImpl<OrderMapper, Order> imple
 
         // 找出当前所有的订单计划还未开始加工的工件进行重排
         QueryWrapper<Plan> planWrapper = new QueryWrapper<Plan>();
-        planWrapper.eq("planStatus", "2");
+        planWrapper.eq("plan_status", "2");
         List<Plan> plans = planMapper.selectList(planWrapper);
         Map<Long,Plan> plansMap = plans.stream().collect(Collectors.toMap(Plan::getId, t->t));
 
@@ -561,7 +562,7 @@ public class OrderServiceImpl extends SuperServiceImpl<OrderMapper, Order> imple
         // 未生产工件表
         QueryWrapper<TWorkpiece> tWorkpieceWrapper = new QueryWrapper<TWorkpiece>();
         tWorkpieceWrapper.in("planId", planIds);
-        tWorkpieceWrapper.in("produceStatus", "1");
+        tWorkpieceWrapper.in("produce_status", "1");
         List<TWorkpiece> tWorkpieces = workpieceMapper.selectList(tWorkpieceWrapper);
 
         List<OrderProduct> orderProductList = orderProductService.list(Wraps.<OrderProduct>lbQ().in(OrderProduct::getOrderId,orderIds));
@@ -709,7 +710,9 @@ public class OrderServiceImpl extends SuperServiceImpl<OrderMapper, Order> imple
     public Boolean deleteOrder(Order model){
         // 判断计划是否在生产中,如果是在生产中不可删除
         isFalse(checkPlan(model) > 0, "订单已生产,不可删除");
-        int count = planMapper.updatePlanStatus(model);
+        int count =  planMapper.delete(Wraps.<Plan>lbQ().eq(Plan::getId,model.getId()));
+        planProductMapper.delete(Wraps.<PlanProduct>lbQ().eq(PlanProduct::getPlanId,model.getId()));
+//        int count = planMapper.updatePlanStatus(model);
         if(count == 1){
             return true;
         }else{

+ 4 - 0
imcs-admin-boot/imcs-business-biz/src/main/java/com/github/zuihou/business/util/ManualTaskOperatorUtil.java

@@ -226,6 +226,10 @@ public class ManualTaskOperatorUtil {
                         setProcessInfo(taskNodes, processInfo, hostSyetemTaskUrl, location, deviceUrl, devicePort);
                     }else if("move".equals(taskType) && currentIndex == 3){
                         String hostSyetemTaskUrl = hostSyetemUrl + "/api/MoveRobotPosition";
+
+                        // 查找设备机器人
+
+
                         String location = manualInfo.getStartpointId();
                         setProcessInfo(taskNodes, processInfo, hostSyetemTaskUrl, location, deviceUrl, devicePort);
                     }if("get".equals(taskType) && currentIndex == 4){

+ 5 - 1
imcs-admin-boot/imcs-business-biz/src/main/resources/mapper_business/base/classSchedule/ScheduleUserMapper.xml

@@ -21,7 +21,7 @@
 
     <select id="pageList"  resultType="com.github.zuihou.business.classSchedule.entity.ScheduleUser" >
         SELECT v scheduleFlag, ifnull(userNum,0) userNum  FROM (
-              SELECT '0' AS v UNION ALL SELECT '1' AS v
+              SELECT '1' AS v
         ) a
         LEFT JOIN (SELECT schedule_flag,count(1) userNum FROM imcs_s_schedule_user u GROUP BY u.schedule_flag ) b on a.v = b.schedule_flag
     </select>
@@ -41,4 +41,8 @@
         </if>
     </select>
 
+    <delete id="deleteHisuser">
+        delete from imcs_s_schedule_user where schedule_flag = #{scheduleFlag}
+    </delete>
+
 </mapper>

+ 1 - 0
imcs-admin-boot/imcs-business-controller/src/main/java/com/github/zuihou/business/controller/operationManagementCenter/OrderController.java

@@ -183,6 +183,7 @@ public class OrderController extends SuperController<OrderService, Long, Order,
     @ApiOperation(value = "订单更多删除", notes = "订单更多删除")
     @PostMapping("/deleteOrder")
     public R<Boolean> deleteOrder(@RequestBody Order model) {
+
         return success(baseService.deleteOrder(model));
     }