Browse Source

工序作业思维导图

DLC 1 year ago
parent
commit
32bc05eade

+ 3 - 0
cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/dao/ApsProcessOperationDao.java

@@ -34,6 +34,9 @@ public interface ApsProcessOperationDao extends BaseMapper<ApsProcessOperationDo
     @Update("UPDATE aps_process_operation_equ set DELETED='1' where BLANKID=#{blanckid}")
     void updateProcessOperationOEqu(@Param("blanckid") String blanckid);
 
+    @Update("UPDATE sys_mind_mapping set DELETED='1' where BSID=#{blanckid}")
+    void updateSysMindMapping(@Param("blanckid") String blanckid);
+
     @Select("select MAINID,GROUP_CONCAT(EQUIPMENTID) as EQUIDS from aps_resources_equipment where DELETED='0' group by MAINID")
     List<Map<String, Object>> getEquGroupIds();
 }

+ 47 - 1
cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/impl/ApsProcessOperationServiceImpl.java

@@ -7,9 +7,11 @@ import com.rongwei.bscommon.sys.dao.ApsProcessOperationDao;
 import com.rongwei.bscommon.sys.service.*;
 import com.rongwei.bsentity.domain.*;
 import com.rongwei.bsentity.vo.PreviousProcessVo;
+import com.rongwei.commonservice.service.SysMindMappingService;
 import com.rongwei.rwcommon.base.R;
 import com.rongwei.rwcommon.utils.SecurityUtil;
 import com.rongwei.rwcommon.utils.StringUtils;
+import com.rongwei.rwcommonentity.commonservers.domain.SysMindMappingDo;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -50,6 +52,9 @@ public class ApsProcessOperationServiceImpl extends ServiceImpl<ApsProcessOperat
     @Autowired
     ApsProcessOperationEquService apsProcessOperationEquService;
 
+    @Autowired
+    SysMindMappingService sysMindMappingService;
+
     private final static Map<String, String> UNIT_MAP = new HashMap<String, String>() {{
         put("kg", "公斤");
         put("ton", "吨");
@@ -104,6 +109,20 @@ public class ApsProcessOperationServiceImpl extends ServiceImpl<ApsProcessOperat
             List<ApsCraftRouteStepDo> apsCraftRouteStepDoList = apsCraftRouteStepService.listByMap(map).stream().collect(Collectors.toList());
             Collections.sort(apsCraftRouteStepDoList, Comparator.comparingInt(ApsCraftRouteStepDo::getLevel));
 
+            //工艺路线对应的思维导图
+            List<SysMindMappingDo> sysMindMappingDos = new ArrayList<>();
+            Map<String, Object> mindMap = new HashMap<>();
+            mindMap.put("BSID", craftrouteid);
+            List<SysMindMappingDo> sysMindMappingDoList = sysMindMappingService.listByMap(mindMap).stream().collect(Collectors.toList());
+            Collections.sort(sysMindMappingDoList, Comparator.comparing(SysMindMappingDo::getTreecode, Comparator.nullsFirst(Comparator.naturalOrder())));
+            SysMindMappingDo sysMindMappingDo = BeanUtil.toBean(sysMindMappingDoList.get(0), SysMindMappingDo.class);
+            String mindStrId = SecurityUtil.getUUID();
+            sysMindMappingDo.setId(mindStrId);
+            sysMindMappingDo.setBsid(blanckdata.getStr("ID"));
+            sysMindMappingDo.setBstable("aps_process_operation");
+            sysMindMappingDos.add(sysMindMappingDo);
+
+
             List<String> overRouteStepIds = new ArrayList<>();
             List<PreviousProcessVo> newProcessIds = new ArrayList<>();//前道工序信息
             List<ApsProcessOperationDo> apsProcessOperationDoList = new ArrayList<>();
@@ -215,6 +234,18 @@ public class ApsProcessOperationServiceImpl extends ServiceImpl<ApsProcessOperat
                                 apsProcessOperationDo.setCanchoosedeviceid(getChooseequids(equIdList, equGroupIdList));
                             }
 
+                            //本道工序思维导图
+                            List<SysMindMappingDo> sysMindMappingDoList1 = sysMindMappingDoList.stream().filter(mind -> mind.getId().equals(apsCraftRouteStepDo1.getId())).collect(Collectors.toList());
+                            SysMindMappingDo sysMindMappingDo1 = BeanUtil.toBean(sysMindMappingDoList1.get(0), SysMindMappingDo.class);
+                            sysMindMappingDo1.setId(processId);
+                            sysMindMappingDo1.setParentid(processVo.get(0).getProcessId());
+                            sysMindMappingDo1.setBsid(blanckdata.getStr("ID"));
+                            sysMindMappingDo1.setBstable("aps_process_operation");
+                            JSONObject jsonObject = new JSONObject();
+                            jsonObject.putOpt("craftStepId", apsCraftRouteStepDo1.getId());
+                            sysMindMappingDo1.setRoption(jsonObject.toString());//存工艺路线的工艺步骤ID
+                            sysMindMappingDos.add(sysMindMappingDo1);
+
                             newProcessIds.add(previousProcessVo);
                             apsProcessOperationDoList.add(apsProcessOperationDo);
                             apsProcessOperationOutMaterDoList.add(apsProcessOperationOutMaterDo);
@@ -306,6 +337,18 @@ public class ApsProcessOperationServiceImpl extends ServiceImpl<ApsProcessOperat
                             apsProcessOperationDo.setCanchoosedeviceid(getChooseequids(equIdList, equGroupIdList));
                         }
 
+                        //本道工序思维导图
+                        List<SysMindMappingDo> sysMindMappingDoList1 = sysMindMappingDoList.stream().filter(mind -> mind.getId().equals(apsCraftRouteStepDo.getId())).collect(Collectors.toList());
+                        SysMindMappingDo sysMindMappingDo1 = BeanUtil.toBean(sysMindMappingDoList1.get(0), SysMindMappingDo.class);
+                        sysMindMappingDo1.setId(processId);
+                        sysMindMappingDo1.setParentid(mindStrId);
+                        sysMindMappingDo1.setBsid(blanckdata.getStr("ID"));
+                        sysMindMappingDo1.setBstable("aps_process_operation");
+                        JSONObject jsonObject = new JSONObject();
+                        jsonObject.putOpt("craftStepId", apsCraftRouteStepDo.getId());
+                        sysMindMappingDo1.setRoption(jsonObject.toString());//存工艺路线的工艺步骤ID
+                        sysMindMappingDos.add(sysMindMappingDo1);
+
                         newProcessIds.add(previousProcessVo);
                         apsProcessOperationDoList.add(apsProcessOperationDo);
                         apsProcessOperationOutMaterDoList.add(apsProcessOperationOutMaterDo);
@@ -318,8 +361,9 @@ public class ApsProcessOperationServiceImpl extends ServiceImpl<ApsProcessOperat
             boolean bool1 = apsProcessOperationService.saveOrUpdateBatch(apsProcessOperationDoList);
             boolean bool2 = apsProcessOperationOutMaterService.saveOrUpdateBatch(apsProcessOperationOutMaterDoList);
             boolean bool3 = apsProcessOperationEquService.saveOrUpdateBatch(apsProcessOperationEquDoList);
+            boolean bool4 = sysMindMappingService.saveOrUpdateBatch(sysMindMappingDos);
 
-            if (bool1 && bool2 && bool3) {
+            if (bool1 && bool2 && bool3 && bool4) {
 //                r.setCode("200");
 //                r.putData(apsCraftRouteStepDoList);
                 return R.ok();
@@ -345,6 +389,8 @@ public class ApsProcessOperationServiceImpl extends ServiceImpl<ApsProcessOperat
         apsProcessOperationDao.updateProcessOperationOutMeter(blankid);
         //工序作业可选设备
         apsProcessOperationDao.updateProcessOperationOEqu(blankid);
+        //工序作业思维导图
+        apsProcessOperationDao.updateSysMindMapping(blankid);
     }
 
     //工艺步骤管理/物料输出规则