Browse Source

aps-报工记录的加工设备参数赋值

sucheng 4 months ago
parent
commit
2096aee3ff

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

@@ -5,6 +5,7 @@ import com.rongwei.bsentity.domain.ApsCheckParameterDo;
 import com.rongwei.bsentity.domain.ApsParameterDo;
 import com.rongwei.bsentity.domain.ApsParameterDo;
 import com.rongwei.bsentity.domain.ApsProcessOperationProcessEquDo;
 import com.rongwei.bsentity.domain.ApsProcessOperationProcessEquDo;
 import com.rongwei.bsentity.domain.ApsReportRecordsDo;
 import com.rongwei.bsentity.domain.ApsReportRecordsDo;
+import com.rongwei.bsentity.vo.CanChooseDeviceVo;
 import com.rongwei.bsentity.vo.OrganizationCodeAndDeviceCodeVo;
 import com.rongwei.bsentity.vo.OrganizationCodeAndDeviceCodeVo;
 import com.rongwei.bsentity.vo.ProcessOutputAndInputNumber;
 import com.rongwei.bsentity.vo.ProcessOutputAndInputNumber;
 import org.apache.ibatis.annotations.Delete;
 import org.apache.ibatis.annotations.Delete;
@@ -72,4 +73,6 @@ public interface ApsReportRecordsDao extends BaseMapper<ApsReportRecordsDo> {
     String selectEarlyMergeByHeat(@Param("processequid") String processequid, @Param("processdeviceid") String processdeviceid, @Param("heatnumber") String heatnumber,@Param("yearMonth") String yearMonth);
     String selectEarlyMergeByHeat(@Param("processequid") String processequid, @Param("processdeviceid") String processdeviceid, @Param("heatnumber") String heatnumber,@Param("yearMonth") String yearMonth);
 
 
     ApsReportRecordsDo getOneByEquId(@Param("id") String id);
     ApsReportRecordsDo getOneByEquId(@Param("id") String id);
+
+    List<CanChooseDeviceVo> selectCanChooseDeviceList(@Param("processId") String processId);
 }
 }

+ 23 - 17
cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/impl/ApsReportRecordsServiceImpl.java

@@ -99,6 +99,8 @@ public class ApsReportRecordsServiceImpl extends ServiceImpl<ApsReportRecordsDao
     private SysSerialNumberService sysSerialNumberService;
     private SysSerialNumberService sysSerialNumberService;
     @Autowired
     @Autowired
     private AspCheckItemsService aspCheckItemsService;
     private AspCheckItemsService aspCheckItemsService;
+    @Autowired
+    private ApsProcessOperationEquService apsProcessOperationEquService;
 
 
     @Override
     @Override
     @Transactional
     @Transactional
@@ -445,14 +447,16 @@ public class ApsReportRecordsServiceImpl extends ServiceImpl<ApsReportRecordsDao
 
 
             //查询此工序对应工艺步骤中,对应设备的设备参数
             //查询此工序对应工艺步骤中,对应设备的设备参数
             String equparames = "";
             String equparames = "";
-            //查询工序步骤
-            String stepnum = apsProcessOperationDo.getStepnum();
-            ApsCraftStepDo craftStepDo = apsCraftStepService.getOne(new QueryWrapper<ApsCraftStepDo>().lambda().eq(ApsCraftStepDo::getStepnum, stepnum));
-            if (ObjectUtil.isNotEmpty(craftStepDo)) {
-                //查询设备参数子表
-                ApsCraftEquDo apsCraftEquDo = apsCraftEquService.getOne(new QueryWrapper<ApsCraftEquDo>().lambda().eq(ApsCraftEquDo::getMainid, craftStepDo.getId()).eq(ApsCraftEquDo::getResourceid, apsProcessOperationProcessEquDo.getProcessdeviceid()).eq(ApsCraftEquDo::getTenantid, tenantId));
-                if (ObjectUtil.isNotEmpty(apsCraftEquDo)) {
-                    equparames = apsCraftEquDo.getEquparames();
+            //获取可选设备
+            LinkedList<String> canChooseDeviceIdList = new LinkedList<>(Arrays.asList(apsProcessOperationDo.getCanchoosedeviceid().split(",")));
+            if (canChooseDeviceIdList.contains(apsProcessOperationProcessEquDo.getProcessdeviceid())){
+                //查询可选设备及其资源组对应设备
+                List<CanChooseDeviceVo> canChooseDeviceVoList = this.baseMapper.selectCanChooseDeviceList(apsProcessOperationDo.getId());
+                if (!canChooseDeviceVoList.isEmpty()){
+                    CanChooseDeviceVo canChooseDeviceVo = canChooseDeviceVoList.stream().filter(item -> item.getDeviceId().equals(apsProcessOperationProcessEquDo.getProcessdeviceid())).findFirst().orElse(null);
+                    if (canChooseDeviceVo != null) {
+                        equparames = canChooseDeviceVo.getDeviceParam();
+                    }
                 }
                 }
             }
             }
 
 
@@ -1562,14 +1566,16 @@ public class ApsReportRecordsServiceImpl extends ServiceImpl<ApsReportRecordsDao
 
 
             //查询此工序对应工艺步骤中,对应设备的设备参数
             //查询此工序对应工艺步骤中,对应设备的设备参数
             String equparames = "";
             String equparames = "";
-            //查询工序步骤
-            String stepnum = apsProcessOperationDo.getStepnum();
-            ApsCraftStepDo craftStepDo = apsCraftStepService.getOne(new QueryWrapper<ApsCraftStepDo>().lambda().eq(ApsCraftStepDo::getStepnum, stepnum));
-            if (ObjectUtil.isNotEmpty(craftStepDo)) {
-                //查询设备参数子表
-                ApsCraftEquDo apsCraftEquDo = apsCraftEquService.getOne(new QueryWrapper<ApsCraftEquDo>().lambda().eq(ApsCraftEquDo::getMainid, craftStepDo.getId()).eq(ApsCraftEquDo::getResourceid, apsProcessOperationProcessEquDo.getProcessdeviceid()).eq(ApsCraftEquDo::getTenantid, tenantId));
-                if (ObjectUtil.isNotEmpty(apsCraftEquDo)) {
-                    equparames = apsCraftEquDo.getEquparames();
+            //获取可选设备
+            LinkedList<String> canChooseDeviceIdList = new LinkedList<>(Arrays.asList(apsProcessOperationDo.getCanchoosedeviceid().split(",")));
+            if (canChooseDeviceIdList.contains(apsProcessOperationProcessEquDo.getProcessdeviceid())){
+                //查询可选设备及其资源组对应设备
+                List<CanChooseDeviceVo> canChooseDeviceVoList = this.baseMapper.selectCanChooseDeviceList(apsProcessOperationDo.getId());
+                if (!canChooseDeviceVoList.isEmpty()){
+                    CanChooseDeviceVo canChooseDeviceVo = canChooseDeviceVoList.stream().filter(item -> item.getDeviceId().equals(apsProcessOperationProcessEquDo.getProcessdeviceid())).findFirst().orElse(null);
+                    if (canChooseDeviceVo != null) {
+                        equparames = canChooseDeviceVo.getDeviceParam();
+                    }
                 }
                 }
             }
             }
 
 
@@ -2104,7 +2110,7 @@ public class ApsReportRecordsServiceImpl extends ServiceImpl<ApsReportRecordsDao
         apsReportRecordsDo.setReportoutputorderproduct(apsBlankOrderDo.getOutputorderproduct());
         apsReportRecordsDo.setReportoutputorderproduct(apsBlankOrderDo.getOutputorderproduct());
         apsReportRecordsDo.setReportblanknumber(apsBlankOrderDo.getBlanknumber());
         apsReportRecordsDo.setReportblanknumber(apsBlankOrderDo.getBlanknumber());
         apsReportRecordsDo.setReportprocessdevice(apsProcessOperationProcessEquDo.getProcessdevice());
         apsReportRecordsDo.setReportprocessdevice(apsProcessOperationProcessEquDo.getProcessdevice());
-        apsReportRecordsDo.setReportequparames(apsProcessOperationDo.getChooseequ());
+//        apsReportRecordsDo.setReportequparames(apsProcessOperationDo.getChooseequ());
         apsReportRecordsDo.setReportcheckitemcode(aspCheckItemsDo.getCheckitemcode());
         apsReportRecordsDo.setReportcheckitemcode(aspCheckItemsDo.getCheckitemcode());
         apsReportRecordsDo.setReportprocessworkshop(apsProcessOperationProcessEquDo.getProcessworkshop());
         apsReportRecordsDo.setReportprocessworkshop(apsProcessOperationProcessEquDo.getProcessworkshop());
 //            apsReportRecordsDo.setReportnextprocess(apsProcessOperationDo.getNextprocess());
 //            apsReportRecordsDo.setReportnextprocess(apsProcessOperationDo.getNextprocess());

+ 12 - 0
cx-aps/cx-aps-common/src/main/resources/mybatis/ApsReportRecordsDao.xml

@@ -114,4 +114,16 @@
         AND REPORTWORKSTATUS = '已开工'
         AND REPORTWORKSTATUS = '已开工'
         limit 1
         limit 1
     </select>
     </select>
+    <select id="selectCanChooseDeviceList" resultType="com.rongwei.bsentity.vo.CanChooseDeviceVo">
+        SELECT
+            IF(apoe.RESOURCETYPE = '设备',apoe.RESOURCEID,are.EQUIPMENTID) AS 'deviceId',
+            apoe.EQUPARAMES AS 'deviceParam'
+        FROM
+            aps_process_operation_equ apoe
+                LEFT JOIN aps_resources_equipment are ON apoe.RESOURCEID = are.MAINID
+                AND are.DELETED = 0
+        WHERE
+            apoe.DELETED = 0
+          AND apoe.MAINID = #{processId}
+    </select>
 </mapper>
 </mapper>

+ 15 - 0
cx-aps/cx-aps-entity/src/main/java/com/rongwei/bsentity/vo/CanChooseDeviceVo.java

@@ -0,0 +1,15 @@
+package com.rongwei.bsentity.vo;
+
+import lombok.Data;
+
+/**
+ * @author :sc
+ * @since :2025/3/25
+ */
+@Data
+public class CanChooseDeviceVo {
+    //设备ID
+    private String deviceId;
+    //设备参数
+    private String deviceParam;
+}