Jelajahi Sumber

feature 代码提交

xiahan 1 tahun lalu
induk
melakukan
b85bc53ef0
31 mengubah file dengan 2132 tambahan dan 7 penghapusan
  1. 4 1
      cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/dao/ApsProcessOperationDao.java
  2. 15 0
      cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/dao/ApsProcessOperationOutMaterDao.java
  3. 15 0
      cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/dao/ApsProductionOrderDao.java
  4. 15 0
      cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/dao/ApsReportOutputDao.java
  5. 15 0
      cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/dao/ApsReportRecordsDao.java
  6. 15 0
      cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/dao/ApsWorkInProgressInventoryDao.java
  7. 15 0
      cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/dao/ApsWorkInProgressInventoryMapper.java
  8. 11 0
      cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/ApsProcessOperationOutMaterService.java
  9. 11 0
      cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/ApsProductionOrderService.java
  10. 11 0
      cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/ApsReportOutputService.java
  11. 11 0
      cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/ApsReportRecordsService.java
  12. 11 0
      cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/ApsWorkInProgressInventoryService.java
  13. 20 0
      cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/impl/ApsProcessOperationOutMaterServiceImpl.java
  14. 20 0
      cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/impl/ApsProductionOrderServiceImpl.java
  15. 19 0
      cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/impl/ApsReportOutputServiceImpl.java
  16. 21 0
      cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/impl/ApsReportRecordsServiceImpl.java
  17. 20 0
      cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/impl/ApsWorkInProgressInventoryServiceImpl.java
  18. 249 0
      cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/impl/ReportCheckServiceImpl.java
  19. 13 0
      cx-aps/cx-aps-common/src/main/resources/mybatis/ApsProcessOperationDao.xml
  20. 123 0
      cx-aps/cx-aps-common/src/main/resources/mybatis/ApsProductionOrderDao.xml
  21. 55 0
      cx-aps/cx-aps-common/src/main/resources/mybatis/ApsReportOutputDao.xml
  22. 47 0
      cx-aps/cx-aps-common/src/main/resources/mybatis/ApsReportRecordsDao.xml
  23. 55 0
      cx-aps/cx-aps-common/src/main/resources/mybatis/ApsWorkInProgressInventoryDao.xml
  24. 23 6
      cx-aps/cx-aps-entity/src/main/java/com/rongwei/bsentity/domain/ApsProcessOperationDo.java
  25. 293 0
      cx-aps/cx-aps-entity/src/main/java/com/rongwei/bsentity/domain/ApsProcessOperationOutMaterDo.java
  26. 405 0
      cx-aps/cx-aps-entity/src/main/java/com/rongwei/bsentity/domain/ApsProductionOrderDo.java
  27. 145 0
      cx-aps/cx-aps-entity/src/main/java/com/rongwei/bsentity/domain/ApsReportOutputDo.java
  28. 113 0
      cx-aps/cx-aps-entity/src/main/java/com/rongwei/bsentity/domain/ApsReportRecordsDo.java
  29. 181 0
      cx-aps/cx-aps-entity/src/main/java/com/rongwei/bsentity/domain/ApsWorkInProgressInventory.java
  30. 143 0
      cx-aps/cx-aps-entity/src/main/java/com/rongwei/bsentity/domain/ApsWorkInProgressInventoryDo.java
  31. 38 0
      cx-aps/cx-aps-server/src/main/java/com/rongwei/bsserver/controller/ReportCheckController.java

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

@@ -2,6 +2,9 @@ package com.rongwei.bscommon.sys.dao;
 
 import com.rongwei.bsentity.domain.ApsProcessOperationDo;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
 
 /**
  * <p>
@@ -12,5 +15,5 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  * @since 2024-03-01
  */
 public interface ApsProcessOperationDao extends BaseMapper<ApsProcessOperationDo> {
-
+    updateBachmaterialprocessByIds(@Param("ids") List<String> ids,@Param("batchNum") String batchNum);
 }

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

@@ -0,0 +1,15 @@
+package com.rongwei.bscommon.sys.dao;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.rongwei.bsentity.domain.ApsProcessOperationOutMaterDo;
+
+/**
+ * @Entity com.rongwei.training.domain.ApsProcessOperationOutMater
+ */
+public interface ApsProcessOperationOutMaterDao extends BaseMapper<ApsProcessOperationOutMaterDo> {
+
+}
+
+
+
+

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

@@ -0,0 +1,15 @@
+package com.rongwei.bscommon.sys.dao;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.rongwei.bsentity.domain.ApsProductionOrderDo;
+
+/**
+ * @Entity com.rongwei.training.domain.ApsProductionOrder
+ */
+public interface ApsProductionOrderDao extends BaseMapper<ApsProductionOrderDo> {
+
+}
+
+
+
+

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

@@ -0,0 +1,15 @@
+package com.rongwei.bscommon.sys.dao;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.rongwei.bsentity.domain.ApsReportOutputDo;
+
+/**
+ * @Entity com.rongwei.training.domain.ApsReportOutput
+ */
+public interface ApsReportOutputDao extends BaseMapper<ApsReportOutputDo> {
+
+}
+
+
+
+

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

@@ -0,0 +1,15 @@
+package com.rongwei.bscommon.sys.dao;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.rongwei.bsentity.domain.ApsReportRecordsDo;
+
+/**
+ * @Entity com.rongwei.training.domain.ApsReportRecords
+ */
+public interface ApsReportRecordsDao extends BaseMapper<ApsReportRecordsDo> {
+
+}
+
+
+
+

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

@@ -0,0 +1,15 @@
+package com.rongwei.bscommon.sys.dao;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.rongwei.bsentity.domain.ApsWorkInProgressInventoryDo;
+
+/**
+ * @Entity com.rongwei.training.domain.ApsWorkInProgressInventory
+ */
+public interface ApsWorkInProgressInventoryDao extends BaseMapper<ApsWorkInProgressInventoryDo> {
+
+}
+
+
+
+

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

@@ -0,0 +1,15 @@
+package com.rongwei.bscommon.sys.dao;
+
+import com.rongwei.training.domain.ApsWorkInProgressInventory;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * @Entity com.rongwei.training.domain.ApsWorkInProgressInventory
+ */
+public interface ApsWorkInProgressInventoryMapper extends BaseMapper<ApsWorkInProgressInventory> {
+
+}
+
+
+
+

+ 11 - 0
cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/ApsProcessOperationOutMaterService.java

@@ -0,0 +1,11 @@
+package com.rongwei.bscommon.sys.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.rongwei.bsentity.domain.ApsProcessOperationOutMaterDo;
+
+/**
+ *
+ */
+public interface ApsProcessOperationOutMaterService extends IService<ApsProcessOperationOutMaterDo> {
+
+}

+ 11 - 0
cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/ApsProductionOrderService.java

@@ -0,0 +1,11 @@
+package com.rongwei.bscommon.sys.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.rongwei.bsentity.domain.ApsProductionOrderDo;
+
+/**
+ *
+ */
+public interface ApsProductionOrderService extends IService<ApsProductionOrderDo> {
+
+}

+ 11 - 0
cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/ApsReportOutputService.java

@@ -0,0 +1,11 @@
+package com.rongwei.bscommon.sys.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.rongwei.bsentity.domain.ApsReportOutputDo;
+
+/**
+ *
+ */
+public interface ApsReportOutputService extends IService<ApsReportOutputDo> {
+
+}

+ 11 - 0
cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/ApsReportRecordsService.java

@@ -0,0 +1,11 @@
+package com.rongwei.bscommon.sys.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.rongwei.bsentity.domain.ApsReportRecordsDo;
+
+/**
+ *
+ */
+public interface ApsReportRecordsService extends IService<ApsReportRecordsDo> {
+
+}

+ 11 - 0
cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/ApsWorkInProgressInventoryService.java

@@ -0,0 +1,11 @@
+package com.rongwei.bscommon.sys.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.rongwei.bsentity.domain.ApsWorkInProgressInventoryDo;
+
+/**
+ *
+ */
+public interface ApsWorkInProgressInventoryService extends IService<ApsWorkInProgressInventoryDo> {
+
+}

+ 20 - 0
cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/impl/ApsProcessOperationOutMaterServiceImpl.java

@@ -0,0 +1,20 @@
+package com.rongwei.bscommon.sys.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.rongwei.bscommon.sys.dao.ApsProcessOperationOutMaterDao;
+import com.rongwei.bscommon.sys.service.ApsProcessOperationOutMaterService;
+import com.rongwei.bsentity.domain.ApsProcessOperationOutMaterDo;
+import org.springframework.stereotype.Service;
+
+/**
+ *
+ */
+@Service
+public class ApsProcessOperationOutMaterServiceImpl extends ServiceImpl<ApsProcessOperationOutMaterDao, ApsProcessOperationOutMaterDo>
+        implements ApsProcessOperationOutMaterService {
+
+}
+
+
+
+

+ 20 - 0
cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/impl/ApsProductionOrderServiceImpl.java

@@ -0,0 +1,20 @@
+package com.rongwei.bscommon.sys.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.rongwei.bscommon.sys.dao.ApsProductionOrderDao;
+import com.rongwei.bscommon.sys.service.ApsProductionOrderService;
+import com.rongwei.bsentity.domain.ApsProductionOrderDo;
+import org.springframework.stereotype.Service;
+
+/**
+ *
+ */
+@Service
+public class ApsProductionOrderServiceImpl extends ServiceImpl<ApsProductionOrderDao, ApsProductionOrderDo>
+        implements ApsProductionOrderService {
+
+}
+
+
+
+

+ 19 - 0
cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/impl/ApsReportOutputServiceImpl.java

@@ -0,0 +1,19 @@
+package com.rongwei.bscommon.sys.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.rongwei.bscommon.sys.dao.ApsReportOutputDao;
+import com.rongwei.bsentity.domain.ApsReportOutputDo;
+import org.springframework.stereotype.Service;
+import com.rongwei.bscommon.sys.service.ApsReportOutputService;
+/**
+ *
+ */
+@Service
+public class ApsReportOutputServiceImpl extends ServiceImpl<ApsReportOutputDao, ApsReportOutputDo>
+        implements ApsReportOutputService {
+
+}
+
+
+
+

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

@@ -0,0 +1,21 @@
+package com.rongwei.bscommon.sys.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.rongwei.bscommon.sys.dao.ApsReportRecordsDao;
+import com.rongwei.bscommon.sys.service.ApsReportRecordsService;
+import com.rongwei.bsentity.domain.ApsReportRecordsDo;
+
+import org.springframework.stereotype.Service;
+
+/**
+ *
+ */
+@Service
+public class ApsReportRecordsServiceImpl extends ServiceImpl<ApsReportRecordsDao, ApsReportRecordsDo>
+implements ApsReportRecordsService {
+
+}
+
+
+
+

+ 20 - 0
cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/impl/ApsWorkInProgressInventoryServiceImpl.java

@@ -0,0 +1,20 @@
+package com.rongwei.bscommon.sys.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.rongwei.bscommon.sys.dao.ApsWorkInProgressInventoryDao;
+import com.rongwei.bscommon.sys.service.ApsWorkInProgressInventoryService;
+import com.rongwei.bsentity.domain.ApsWorkInProgressInventoryDo;
+import org.springframework.stereotype.Service;
+
+/**
+ *
+ */
+@Service
+public class ApsWorkInProgressInventoryServiceImpl extends ServiceImpl<ApsWorkInProgressInventoryDao, ApsWorkInProgressInventoryDo>
+        implements ApsWorkInProgressInventoryService {
+
+}
+
+
+
+

+ 249 - 0
cx-aps/cx-aps-common/src/main/java/com/rongwei/bscommon/sys/service/impl/ReportCheckServiceImpl.java

@@ -0,0 +1,249 @@
+package com.rongwei.bscommon.sys.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.rongwei.bscommon.sys.service.ApsBlankOrderService;
+import com.rongwei.bscommon.sys.service.ApsProcessOperationService;
+import com.rongwei.bscommon.sys.service.ApsReportRecordsService;
+import com.rongwei.bscommon.sys.service.ReportCheckService;
+import com.rongwei.bsentity.domain.*;
+import com.rongwei.rwcommon.base.BaseDo;
+import com.rongwei.rwcommon.base.R;
+import jodd.util.StringUtil;
+import org.apache.commons.lang.StringUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Date;
+import java.util.List;
+import java.util.stream.Collectors;
+
+/**
+ * ReportCheckServiceImpl class
+ *
+ * @author XH
+ * @date 2024/03/19
+ */
+@Service
+public class ReportCheckServiceImpl implements ReportCheckService {
+    private final Logger log = LoggerFactory.getLogger(this.getClass().getName());
+
+    @Autowired
+    private ApsReportRecordsService apsReportRecordsService;
+    @Autowired
+    private ApsReportOutputServiceImpl apsReportOutputService;
+    @Autowired
+    private ApsProcessOperationService apsProcessOperationService;
+    @Autowired
+    private ApsBlankOrderService apsBlankOrderService;
+    @Autowired
+    private ApsProductionOrderServiceImpl apsProductionOrderService;
+    @Autowired
+    private ApsWorkInProgressInventoryServiceImpl apsWorkInProgressInventoryService;
+    @Autowired
+    private ApsProcessOperationOutMaterServiceImpl apsProcessOperationOutMaterService;
+
+    public static final String NO_DELETED = "0";
+    public static final String DELETED = "1";
+    public static final String YES = "是";
+    public static final String NO = "否";
+    public static final String PENDING_PLAN_REVIEW = "待计划评审";
+    public static final String PREPARING_MATERIAL = "备料中";
+    public static final String TO_BE_PROCESSED = "待加工";
+
+
+    /**
+     * 保存检验结果后更新相关信息
+     *
+     * @param id
+     * @return
+     */
+    @Override
+    public R updateRelevantInformation(String id) {
+        log.info("保存检验结果后更新相关信息");
+        if (StringUtil.isBlank(id)) {
+            log.debug("参数为空");
+            return R.ok();
+        }
+        // 获取报工记录
+        ApsReportRecordsDo reportRecordsDo = apsReportRecordsService.getById(id);
+        if (reportRecordsDo == null) {
+            log.error("无法根据ID:{}获取到报工记录", id);
+            return R.error();
+        }
+        // 更新待检验批次号
+        reportRecordsDo.setNeedcheckbatchnumber("");
+
+        // 获取工序作业信息
+        ApsProcessOperationDo currentProcessOperationDo = apsProcessOperationService.getOne(new LambdaQueryWrapper<ApsProcessOperationDo>()
+                .eq(ApsProcessOperationDo::getId, reportRecordsDo.getProcessoperationid()).eq(BaseDo::getDeleted, NO_DELETED));
+        if (currentProcessOperationDo == null) {
+            log.error("无法根据ID:{}获取到工序作业信息", id);
+            return R.error();
+        }
+        if (StringUtils.isBlank(currentProcessOperationDo.getBlankid())) {
+            log.error("无法根据工序获取到生产订单信息");
+            return R.error();
+        }
+        // 获取工序作业对应的输出物料信息
+        ApsProcessOperationOutMaterDo operationOutMaterDoList = apsProcessOperationOutMaterService.getOne(new LambdaQueryWrapper<ApsProcessOperationOutMaterDo>()
+                .eq(ApsProcessOperationOutMaterDo::getMainid, currentProcessOperationDo.getId())
+                .eq(BaseDo::getDeleted, NO_DELETED), false);
+        if (operationOutMaterDoList == null) {
+            log.error("无法根据工序作业ID:{}获取对应的输出物料信息", currentProcessOperationDo.getId());
+            return R.error();
+        }
+        // 获取该工序生成的物料输出信息
+        List<ApsReportOutputDo> reportOutputDos = apsReportOutputService.list(new LambdaQueryWrapper<ApsReportOutputDo>()
+                .eq(ApsReportOutputDo::getMainid, id).eq(BaseDo::getDeleted, NO_DELETED));
+        if (reportOutputDos.isEmpty()) {
+            log.error("无法根据ID:{}获取到输出物料信息", id);
+            return R.error();
+        }
+        //获取批量计划
+        ApsBlankOrderDo blankOrderDo = apsBlankOrderService.getById(currentProcessOperationDo.getBlankid());
+        if (blankOrderDo == null) {
+            log.error("无法根据ID:{}找到对应的订单信息", currentProcessOperationDo.getBlankid());
+            return R.error();
+        }
+        if (StringUtils.isBlank(blankOrderDo.getProductionorderid())) {
+            log.error("坯料计划对应的订单ID为空");
+            return R.error();
+        }
+        // 获取订单信息
+        ApsProductionOrderDo productionOrderDo = apsProductionOrderService.getById(blankOrderDo.getProductionorderid());
+        if (productionOrderDo == null) {
+            log.error("无法根据ID:{},获取到订单信息", blankOrderDo.getProductionorderid());
+            return R.error();
+        }
+
+        // 获取检验不合格批次的数量
+        List<ApsReportOutputDo> unqualificationOutPutList = reportOutputDos.stream().filter(info -> NO.equals(info.getQualified())).collect(Collectors.toList());
+        // 检验合格的数量信息
+        List<ApsReportOutputDo> qualifiedOutPutList = reportOutputDos.stream().filter(info -> YES.equals(info.getQualified())).collect(Collectors.toList());
+
+        String nextProcessId = currentProcessOperationDo.getNextprocessid();
+        // 获取当前工序对应的后道工序信息
+        List<ApsProcessOperationDo> nextProcessOperationDo = new ArrayList<>();
+        if (StringUtils.isNotBlank(nextProcessId)) {
+            nextProcessOperationDo = apsProcessOperationService.list(new LambdaQueryWrapper<ApsProcessOperationDo>()
+                    .in(ApsProcessOperationDo::getId, Arrays.asList(nextProcessId.split(",")))
+                    .eq(BaseDo::getDeleted, NO_DELETED));
+        }
+
+        // 获取当前报工作业对应的在制品信息
+        List<ApsWorkInProgressInventoryDo> apsWorkInProgressInventoryDos = apsWorkInProgressInventoryService.list(new LambdaQueryWrapper<ApsWorkInProgressInventoryDo>()
+                .eq(ApsWorkInProgressInventoryDo::getWorkreportrecordid, id).eq(BaseDo::getDeleted, NO_DELETED));
+
+        /******************************开始数据处理逻辑***************************************/
+        // 更新合格不合格数量
+        int unqualifiedQuantity = qualifiedOutPutList.size();
+        // 更新合格数量
+        int qualifiedQuantity = unqualificationOutPutList.size();
+        // 更新已检验卷数
+        int inspectQuantity = reportOutputDos.size();
+        // 订单信息
+        currentProductionOrderDoDispose(productionOrderDo, unqualificationOutPutList);
+        // 在制品
+        updateArticlesProcessData(unqualificationOutPutList, qualifiedOutPutList, reportRecordsDo,
+                apsWorkInProgressInventoryDos, nextProcessOperationDo, currentProcessOperationDo,
+                operationOutMaterDoList);
+        // 获取所有待加工的批次号信息
+        String toBeProcessedBatchNum = apsWorkInProgressInventoryDos.stream().filter(info -> TO_BE_PROCESSED.equals(info.getWorkinprocessstatus()))
+                .map(ApsWorkInProgressInventoryDo::getBatchnumber).collect(Collectors.joining(","));
+
+
+//        if (!qualifiedOutPutList.isEmpty()) {
+//            // 获取后道工序的数据
+//            nextProcessDispose(nextProcessOperationDo, qualifiedOutPutList);
+//        }
+        return R.ok();
+    }
+
+    /**
+     * 更新后道工序
+     *
+     * @param nextProcessOperationDo 当前工序的所有下一个工序
+     * @param qualifiedOutPutList    检验合格的物品
+     * @return
+     */
+    public void nextProcessDispose(List<ApsProcessOperationDo> nextProcessOperationDo,List<ApsWorkInProgressInventoryDo> qualifiedOutPutList) {
+
+
+    }
+
+    /**
+     * 更新工序作业对应的订单信息
+     * 如果存在不合格的批次信息 需要更新 订单相关信息
+     *
+     * @param productionOrderDo
+     * @param unqualificationOutPutList
+     */
+    public void currentProductionOrderDoDispose(ApsProductionOrderDo productionOrderDo, List<ApsReportOutputDo> unqualificationOutPutList) {
+        // 存在不合格的批次信息
+        if (!unqualificationOutPutList.isEmpty()) {
+            //更新报工记录对应订单的订单评审状态=待计划评审,
+            productionOrderDo.setAuditstatus(PENDING_PLAN_REVIEW);
+            // 订单调整日期=今天
+            productionOrderDo.setChangedate(new Date());
+            // 发送不合格提醒
+        }
+    }
+
+    /**
+     * 更新当前输出物料的在制品信息
+     *
+     * @param unqualificationOutPutList     不合格批次信息
+     * @param qualifiedOutPutList           合格批次信息
+     * @param apsReportRecordsDo            报工记录
+     * @param apsWorkInProgressInventoryDos 在制品信息
+     * @param nextProcessOperationDo        后道工序信息
+     * @return
+     */
+    public List<ApsWorkInProgressInventoryDo> updateArticlesProcessData(List<ApsReportOutputDo> unqualificationOutPutList,
+                                                                        List<ApsReportOutputDo> qualifiedOutPutList,
+                                                                        ApsReportRecordsDo apsReportRecordsDo,
+                                                                        List<ApsWorkInProgressInventoryDo> apsWorkInProgressInventoryDos,
+                                                                        List<ApsProcessOperationDo> nextProcessOperationDo,
+                                                                        ApsProcessOperationDo processOperationDo,
+                                                                        ApsProcessOperationOutMaterDo operationOutMaterDo) {
+
+        if (apsWorkInProgressInventoryDos.isEmpty()) {
+            return apsWorkInProgressInventoryDos;
+        }
+        // 1.如果报工输出物料的是否合格=否,则在制品状态=备料中
+        List<String> unqualificationNum = unqualificationOutPutList.stream().map(ApsReportOutputDo::getOutputnumber).collect(Collectors.toList());
+        apsWorkInProgressInventoryDos.forEach(info -> {
+            if (unqualificationNum.contains(info.getBatchnumber())) {
+                info.setWorkinprocessstatus(PREPARING_MATERIAL);
+            }
+
+        });
+
+        /**
+         * 1如果报工输出物料的是否合格=是,并且报工输出物料对应工序作业输出物料的输出合格卷数<=计划成品卷数,则从在制品库存删除该在制品
+         * 2如果报工输出物料的是否合格=是,并且报工输出物料有对应后道工序作业,并且报工输出物料对应工序作业输出物料的输出合格卷数>计划成品卷数+报工输出物料对应所有后道工序作业的计划加工卷数,则在制品状态=备料中;
+         * 3如果报工输出物料的是否合格=是,并且报工输出物料有对应后道工序作业,并且报工输出物料对应工序作业输出物料的输出合格卷数<=计划成品卷数+报工输出物料对应所有后道工序作业的计划加工卷数,则在制品状态=待加工;
+         *
+         */
+        List<String> qualificationNum = qualifiedOutPutList.stream().map(ApsReportOutputDo::getOutputnumber).collect(Collectors.toList());
+        int nextProcessingPlannedNum = nextProcessOperationDo.stream().mapToInt(ApsProcessOperationDo::getOutputqualifiednum).sum();
+        apsWorkInProgressInventoryDos.forEach(info -> {
+            if (!qualificationNum.contains(info.getBatchnumber())) {
+              return;
+            }
+            if(processOperationDo.getOutputqualifiednum() +1 <= operationOutMaterDo.getPlanprodrollnum()){
+                info.setDeleted(DELETED);
+            }else if(processOperationDo.getOutputqualifiednum()+1> operationOutMaterDo.getPlanprodrollnum() +nextProcessingPlannedNum ){
+                info.setWorkinprocessstatus(PREPARING_MATERIAL);
+            }else if(processOperationDo.getOutputqualifiednum()+1 <=  operationOutMaterDo.getPlanprodrollnum() +nextProcessingPlannedNum){
+                info.setWorkinprocessstatus(TO_BE_PROCESSED);
+            }
+            processOperationDo.setOutputqualifiednum(processOperationDo.getOutputqualifiednum()+1);
+        });
+        return apsWorkInProgressInventoryDos;
+    }
+}

+ 13 - 0
cx-aps/cx-aps-common/src/main/resources/mybatis/ApsProcessOperationDao.xml

@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.rongwei.bscommon.sys.dao.ApsProcessOperationDao">
+    <update id="updateBachmaterialprocessByIds">
+        update aps_process_operation set BACHMATERIALPROCESS = CONCAT_WS(',',BACHMATERIALPROCESS,#{batchNum})
+        <where>
+            id
+        </where>
+    </update>
+
+</mapper>

+ 123 - 0
cx-aps/cx-aps-common/src/main/resources/mybatis/ApsProductionOrderDao.xml

@@ -0,0 +1,123 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.rongwei.bscommon.sys.dao.ApsProductionOrderDao">
+
+    <resultMap id="BaseResultMap" type="com.rongwei.bsentity.domain.ApsProductionOrderDo">
+        <id property="id" column="ID" jdbcType="VARCHAR"/>
+        <result property="orderno" column="ORDERNO" jdbcType="VARCHAR"/>
+        <result property="customname" column="CUSTOMNAME" jdbcType="VARCHAR"/>
+        <result property="orderdate" column="ORDERDATE" jdbcType="TIMESTAMP"/>
+        <result property="deliverydate" column="DELIVERYDATE" jdbcType="TIMESTAMP"/>
+        <result property="allowday" column="ALLOWDAY" jdbcType="INTEGER"/>
+        <result property="orderstatus" column="ORDERSTATUS" jdbcType="VARCHAR"/>
+        <result property="auditstatus" column="AUDITSTATUS" jdbcType="VARCHAR"/>
+        <result property="auditor" column="AUDITOR" jdbcType="VARCHAR"/>
+        <result property="auditorid" column="AUDITORID" jdbcType="VARCHAR"/>
+        <result property="auditdate" column="AUDITDATE" jdbcType="TIMESTAMP"/>
+        <result property="productionstatus" column="PRODUCTIONSTATUS" jdbcType="VARCHAR"/>
+        <result property="promisedeliverydate" column="PROMISEDELIVERYDATE" jdbcType="TIMESTAMP"/>
+        <result property="customwarehouse" column="CUSTOMWAREHOUSE" jdbcType="VARCHAR"/>
+        <result property="deliverytime" column="DELIVERYTIME" jdbcType="INTEGER"/>
+        <result property="belongfactory" column="BELONGFACTORY" jdbcType="VARCHAR"/>
+        <result property="ordertype" column="ORDERTYPE" jdbcType="VARCHAR"/>
+        <result property="salesman" column="SALESMAN" jdbcType="VARCHAR"/>
+        <result property="businessunit" column="BUSINESSUNIT" jdbcType="VARCHAR"/>
+        <result property="customorderno" column="CUSTOMORDERNO" jdbcType="VARCHAR"/>
+        <result property="isfromnc" column="ISFROMNC" jdbcType="VARCHAR"/>
+        <result property="ncorderno" column="NCORDERNO" jdbcType="VARCHAR"/>
+        <result property="ncordertype" column="NCORDERTYPE" jdbcType="VARCHAR"/>
+        <result property="ncorderstatus" column="NCORDERSTATUS" jdbcType="VARCHAR"/>
+        <result property="tenantid" column="TENANTID" jdbcType="VARCHAR"/>
+        <result property="roption" column="ROPTION" jdbcType="VARCHAR"/>
+        <result property="deleted" column="DELETED" jdbcType="CHAR"/>
+        <result property="remark" column="REMARK" jdbcType="VARCHAR"/>
+        <result property="createdate" column="CREATEDATE" jdbcType="TIMESTAMP"/>
+        <result property="createuserid" column="CREATEUSERID" jdbcType="VARCHAR"/>
+        <result property="modifydate" column="MODIFYDATE" jdbcType="TIMESTAMP"/>
+        <result property="modifyuserid" column="MODIFYUSERID" jdbcType="VARCHAR"/>
+        <result property="createusername" column="CREATEUSERNAME" jdbcType="VARCHAR"/>
+        <result property="modifyusername" column="MODIFYUSERNAME" jdbcType="VARCHAR"/>
+        <result property="scheduledeliverydate" column="SCHEDULEDELIVERYDATE" jdbcType="TIMESTAMP"/>
+        <result property="actualdeliverydate" column="ACTUALDELIVERYDATE" jdbcType="TIMESTAMP"/>
+        <result property="customid" column="CUSTOMID" jdbcType="VARCHAR"/>
+        <result property="status" column="STATUS" jdbcType="VARCHAR"/>
+        <result property="processinstid" column="PROCESSINSTID" jdbcType="VARCHAR"/>
+        <result property="customwarehouseid" column="CUSTOMWAREHOUSEID" jdbcType="VARCHAR"/>
+        <result property="blanktype" column="BLANKTYPE" jdbcType="VARCHAR"/>
+        <result property="compositionchange" column="COMPOSITIONCHANGE" jdbcType="VARCHAR"/>
+        <result property="changeremark" column="CHANGEREMARK" jdbcType="VARCHAR"/>
+        <result property="blamkthickness" column="BLAMKTHICKNESS" jdbcType="DECIMAL"/>
+        <result property="blankhomogenization" column="BLANKHOMOGENIZATION" jdbcType="VARCHAR"/>
+        <result property="finishtemperature" column="FINISHTEMPERATURE" jdbcType="VARCHAR"/>
+        <result property="thicknesstolerance" column="THICKNESSTOLERANCE" jdbcType="VARCHAR"/>
+        <result property="widthtolerance" column="WIDTHTOLERANCE" jdbcType="VARCHAR"/>
+        <result property="lengthtolerance" column="LENGTHTOLERANCE" jdbcType="VARCHAR"/>
+        <result property="bendrequirement" column="BENDREQUIREMENT" jdbcType="VARCHAR"/>
+        <result property="joint" column="JOINT" jdbcType="VARCHAR"/>
+        <result property="swabbing" column="SWABBING" jdbcType="VARCHAR"/>
+        <result property="tensilestrength" column="TENSILESTRENGTH" jdbcType="VARCHAR"/>
+        <result property="yieldstrength" column="YIELDSTRENGTH" jdbcType="VARCHAR"/>
+        <result property="elongationrate" column="ELONGATIONRATE" jdbcType="VARCHAR"/>
+        <result property="pinhole" column="PINHOLE" jdbcType="VARCHAR"/>
+        <result property="cupping" column="CUPPING" jdbcType="VARCHAR"/>
+        <result property="earing" column="EARING" jdbcType="VARCHAR"/>
+        <result property="innercorediameter" column="INNERCOREDIAMETER" jdbcType="DECIMAL"/>
+        <result property="packagingmethod" column="PACKAGINGMETHOD" jdbcType="VARCHAR"/>
+        <result property="tag" column="TAG" jdbcType="VARCHAR"/>
+        <result property="surfacerequirement" column="SURFACEREQUIREMENT" jdbcType="VARCHAR"/>
+        <result property="istensionlevelling" column="ISTENSIONLEVELLING" jdbcType="VARCHAR"/>
+        <result property="packagingrequirement" column="PACKAGINGREQUIREMENT" jdbcType="VARCHAR"/>
+        <result property="surfacehardness" column="SURFACEHARDNESS" jdbcType="VARCHAR"/>
+        <result property="nomod" column="NOMOD" jdbcType="VARCHAR"/>
+        <result property="rollweightrequirement" column="ROLLWEIGHTREQUIREMENT" jdbcType="VARCHAR"/>
+        <result property="otherorderstandard" column="OTHERORDERSTANDARD" jdbcType="VARCHAR"/>
+        <result property="technicalreviewerid" column="TECHNICALREVIEWERID" jdbcType="VARCHAR"/>
+        <result property="technicalreviewername" column="TECHNICALREVIEWERNAME" jdbcType="VARCHAR"/>
+        <result property="technicalreviewdate" column="TECHNICALREVIEWDATE" jdbcType="TIMESTAMP"/>
+        <result property="qualityreviewerid" column="QUALITYREVIEWERID" jdbcType="VARCHAR"/>
+        <result property="qualityreviewername" column="QUALITYREVIEWERNAME" jdbcType="VARCHAR"/>
+        <result property="qualityreviewdate" column="QUALITYREVIEWDATE" jdbcType="TIMESTAMP"/>
+        <result property="reviewerid" column="REVIEWERID" jdbcType="VARCHAR"/>
+        <result property="reviewername" column="REVIEWERNAME" jdbcType="VARCHAR"/>
+        <result property="reviewdate" column="REVIEWDATE" jdbcType="TIMESTAMP"/>
+        <result property="idmatureprocess" column="IDMATUREPROCESS" jdbcType="VARCHAR"/>
+        <result property="otherprecaution" column="OTHERPRECAUTION" jdbcType="VARCHAR"/>
+        <result property="enddate" column="ENDDATE" jdbcType="TIMESTAMP"/>
+        <result property="plandate" column="PLANDATE" jdbcType="TIMESTAMP"/>
+        <result property="reviewtype" column="REVIEWTYPE" jdbcType="VARCHAR"/>
+        <result property="schedulstatus" column="SCHEDULSTATUS" jdbcType="VARCHAR"/>
+    </resultMap>
+
+    <sql id="Base_Column_List">
+        ID,ORDERNO,CUSTOMNAME,
+        ORDERDATE,DELIVERYDATE,ALLOWDAY,
+        ORDERSTATUS,AUDITSTATUS,AUDITOR,
+        AUDITORID,AUDITDATE,PRODUCTIONSTATUS,
+        PROMISEDELIVERYDATE,CUSTOMWAREHOUSE,DELIVERYTIME,
+        BELONGFACTORY,ORDERTYPE,SALESMAN,
+        BUSINESSUNIT,CUSTOMORDERNO,ISFROMNC,
+        NCORDERNO,NCORDERTYPE,NCORDERSTATUS,
+        TENANTID,ROPTION,DELETED,
+        REMARK,CREATEDATE,CREATEUSERID,
+        MODIFYDATE,MODIFYUSERID,CREATEUSERNAME,
+        MODIFYUSERNAME,SCHEDULEDELIVERYDATE,ACTUALDELIVERYDATE,
+        CUSTOMID,STATUS,PROCESSINSTID,
+        CUSTOMWAREHOUSEID,BLANKTYPE,COMPOSITIONCHANGE,
+        CHANGEREMARK,BLAMKTHICKNESS,BLANKHOMOGENIZATION,
+        FINISHTEMPERATURE,THICKNESSTOLERANCE,WIDTHTOLERANCE,
+        LENGTHTOLERANCE,BENDREQUIREMENT,JOINT,
+        SWABBING,TENSILESTRENGTH,YIELDSTRENGTH,
+        ELONGATIONRATE,PINHOLE,CUPPING,
+        EARING,INNERCOREDIAMETER,PACKAGINGMETHOD,
+        TAG,SURFACEREQUIREMENT,ISTENSIONLEVELLING,
+        PACKAGINGREQUIREMENT,SURFACEHARDNESS,NOMOD,
+        ROLLWEIGHTREQUIREMENT,OTHERORDERSTANDARD,TECHNICALREVIEWERID,
+        TECHNICALREVIEWERNAME,TECHNICALREVIEWDATE,QUALITYREVIEWERID,
+        QUALITYREVIEWERNAME,QUALITYREVIEWDATE,REVIEWERID,
+        REVIEWERNAME,REVIEWDATE,IDMATUREPROCESS,
+        OTHERPRECAUTION,ENDDATE,PLANDATE,
+        REVIEWTYPE,SCHEDULSTATUS
+    </sql>
+</mapper>

+ 55 - 0
cx-aps/cx-aps-common/src/main/resources/mybatis/ApsReportOutputDao.xml

@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.rongwei.bscommon.sys.dao.ApsReportOutputDao">
+
+    <resultMap id="BaseResultMap" type="com.rongwei.bsentity.domain.ApsReportOutputDo">
+        <id property="id" column="ID" jdbcType="VARCHAR"/>
+        <result property="tenantid" column="TENANTID" jdbcType="VARCHAR"/>
+        <result property="roption" column="ROPTION" jdbcType="VARCHAR"/>
+        <result property="deleted" column="DELETED" jdbcType="VARCHAR"/>
+        <result property="remark" column="REMARK" jdbcType="VARCHAR"/>
+        <result property="createdate" column="CREATEDATE" jdbcType="TIMESTAMP"/>
+        <result property="createuserid" column="CREATEUSERID" jdbcType="VARCHAR"/>
+        <result property="modifydate" column="MODIFYDATE" jdbcType="TIMESTAMP"/>
+        <result property="modifyuserid" column="MODIFYUSERID" jdbcType="VARCHAR"/>
+        <result property="createusername" column="CREATEUSERNAME" jdbcType="VARCHAR"/>
+        <result property="modifyusername" column="MODIFYUSERNAME" jdbcType="VARCHAR"/>
+        <result property="mainid" column="MAINID" jdbcType="VARCHAR"/>
+        <result property="outputid" column="OUTPUTID" jdbcType="VARCHAR"/>
+        <result property="outputmaterial" column="OUTPUTMATERIAL" jdbcType="VARCHAR"/>
+        <result property="outputnumber" column="OUTPUTNUMBER" jdbcType="VARCHAR"/>
+        <result property="qrcode" column="QRCODE" jdbcType="VARCHAR"/>
+        <result property="componment" column="COMPONMENT" jdbcType="VARCHAR"/>
+        <result property="startrange" column="STARTRANGE" jdbcType="VARCHAR"/>
+        <result property="endrange" column="ENDRANGE" jdbcType="VARCHAR"/>
+        <result property="actualrange" column="ACTUALRANGE" jdbcType="VARCHAR"/>
+        <result property="checkstatus" column="CHECKSTATUS" jdbcType="VARCHAR"/>
+        <result property="thickness" column="THICKNESS" jdbcType="DECIMAL"/>
+        <result property="width" column="WIDTH" jdbcType="DECIMAL"/>
+        <result property="length" column="LENGTH" jdbcType="DECIMAL"/>
+        <result property="weight" column="WEIGHT" jdbcType="DECIMAL"/>
+        <result property="insepctionlevel" column="INSEPCTIONLEVEL" jdbcType="VARCHAR"/>
+        <result property="qualified" column="QUALIFIED" jdbcType="VARCHAR"/>
+        <result property="major" column="MAJOR" jdbcType="VARCHAR"/>
+        <result property="minor" column="MINOR" jdbcType="VARCHAR"/>
+        <result property="checkremark" column="CHECKREMARK" jdbcType="VARCHAR"/>
+        <result property="majordesc" column="MAJORDESC" jdbcType="VARCHAR"/>
+        <result property="minordesc" column="MINORDESC" jdbcType="VARCHAR"/>
+    </resultMap>
+
+    <sql id="Base_Column_List">
+        ID,TENANTID,ROPTION,
+        DELETED,REMARK,CREATEDATE,
+        CREATEUSERID,MODIFYDATE,MODIFYUSERID,
+        CREATEUSERNAME,MODIFYUSERNAME,MAINID,
+        OUTPUTID,OUTPUTMATERIAL,OUTPUTNUMBER,
+        QRCODE,COMPONMENT,STARTRANGE,
+        ENDRANGE,ACTUALRANGE,CHECKSTATUS,
+        THICKNESS,WIDTH,LENGTH,
+        WEIGHT,INSEPCTIONLEVEL,QUALIFIED,
+        MAJOR,MINOR,CHECKREMARK,
+        MAJORDESC,MINORDESC
+    </sql>
+</mapper>

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

@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.rongwei.bscommon.sys.dao.ApsReportRecordsDao">
+
+    <resultMap id="BaseResultMap" type="com.rongwei.bsentity.domain.ApsReportRecordsDo">
+        <id property="id" column="ID" jdbcType="VARCHAR"/>
+        <result property="tenantid" column="TENANTID" jdbcType="VARCHAR"/>
+        <result property="roption" column="ROPTION" jdbcType="VARCHAR"/>
+        <result property="deleted" column="DELETED" jdbcType="CHAR"/>
+        <result property="remark" column="REMARK" jdbcType="VARCHAR"/>
+        <result property="createdate" column="CREATEDATE" jdbcType="TIMESTAMP"/>
+        <result property="createuserid" column="CREATEUSERID" jdbcType="VARCHAR"/>
+        <result property="modifydate" column="MODIFYDATE" jdbcType="TIMESTAMP"/>
+        <result property="modifyuserid" column="MODIFYUSERID" jdbcType="VARCHAR"/>
+        <result property="createusername" column="CREATEUSERNAME" jdbcType="VARCHAR"/>
+        <result property="modifyusername" column="MODIFYUSERNAME" jdbcType="VARCHAR"/>
+        <result property="processoperationid" column="PROCESSOPERATIONID" jdbcType="VARCHAR"/>
+        <result property="batchnumber" column="BATCHNUMBER" jdbcType="VARCHAR"/>
+        <result property="actualinputmaterial" column="ACTUALINPUTMATERIAL" jdbcType="VARCHAR"/>
+        <result property="chiefoperatorid" column="CHIEFOPERATORID" jdbcType="VARCHAR"/>
+        <result property="chiefoperatorname" column="CHIEFOPERATORNAME" jdbcType="VARCHAR"/>
+        <result property="startworktime" column="STARTWORKTIME" jdbcType="TIMESTAMP"/>
+        <result property="reportworktime" column="REPORTWORKTIME" jdbcType="TIMESTAMP"/>
+        <result property="reportworkstatus" column="REPORTWORKSTATUS" jdbcType="VARCHAR"/>
+        <result property="checkstatus" column="CHECKSTATUS" jdbcType="VARCHAR"/>
+        <result property="needcheckbatchnumber" column="NEEDCHECKBATCHNUMBER" jdbcType="VARCHAR"/>
+        <result property="checkid" column="CHECKID" jdbcType="VARCHAR"/>
+        <result property="checkdate" column="CHECKDATE" jdbcType="TIMESTAMP"/>
+        <result property="checkfile" column="CHECKFILE" jdbcType="VARCHAR"/>
+        <result property="ingredient" column="INGREDIENT" jdbcType="VARCHAR"/>
+        <result property="checkusername" column="CHECKUSERNAME" jdbcType="VARCHAR"/>
+    </resultMap>
+
+    <sql id="Base_Column_List">
+        ID,TENANTID,ROPTION,
+        DELETED,REMARK,CREATEDATE,
+        CREATEUSERID,MODIFYDATE,MODIFYUSERID,
+        CREATEUSERNAME,MODIFYUSERNAME,PROCESSOPERATIONID,
+        BATCHNUMBER,ACTUALINPUTMATERIAL,CHIEFOPERATORID,
+        CHIEFOPERATORNAME,STARTWORKTIME,REPORTWORKTIME,
+        REPORTWORKSTATUS,CHECKSTATUS,NEEDCHECKBATCHNUMBER,
+        CHECKID,CHECKDATE,CHECKFILE,
+        INGREDIENT,CHECKUSERNAME
+    </sql>
+</mapper>

+ 55 - 0
cx-aps/cx-aps-common/src/main/resources/mybatis/ApsWorkInProgressInventoryDao.xml

@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.rongwei.bscommon.sys.dao.ApsWorkInProgressInventoryDao">
+
+    <resultMap id="BaseResultMap" type="com.rongwei.bsentity.domain.ApsWorkInProgressInventoryDo">
+        <id property="id" column="ID" jdbcType="VARCHAR"/>
+        <result property="tenantid" column="TENANTID" jdbcType="VARCHAR"/>
+        <result property="roption" column="ROPTION" jdbcType="VARCHAR"/>
+        <result property="deleted" column="DELETED" jdbcType="CHAR"/>
+        <result property="remark" column="REMARK" jdbcType="VARCHAR"/>
+        <result property="createdate" column="CREATEDATE" jdbcType="TIMESTAMP"/>
+        <result property="createuserid" column="CREATEUSERID" jdbcType="VARCHAR"/>
+        <result property="modifydate" column="MODIFYDATE" jdbcType="TIMESTAMP"/>
+        <result property="modifyuserid" column="MODIFYUSERID" jdbcType="VARCHAR"/>
+        <result property="createusername" column="CREATEUSERNAME" jdbcType="VARCHAR"/>
+        <result property="modifyusername" column="MODIFYUSERNAME" jdbcType="VARCHAR"/>
+        <result property="blankbatchnumber" column="BLANKBATCHNUMBER" jdbcType="VARCHAR"/>
+        <result property="blankid" column="BLANKID" jdbcType="VARCHAR"/>
+        <result property="blankname" column="BLANKNAME" jdbcType="VARCHAR"/>
+        <result property="processoperationid" column="PROCESSOPERATIONID" jdbcType="VARCHAR"/>
+        <result property="workreportrecordid" column="WORKREPORTRECORDID" jdbcType="VARCHAR"/>
+        <result property="joboutputmaterialid" column="JOBOUTPUTMATERIALID" jdbcType="VARCHAR"/>
+        <result property="reportoutputmaterialid" column="REPORTOUTPUTMATERIALID" jdbcType="VARCHAR"/>
+        <result property="batchnumber" column="BATCHNUMBER" jdbcType="VARCHAR"/>
+        <result property="workinprocess" column="WORKINPROCESS" jdbcType="VARCHAR"/>
+        <result property="productdate" column="PRODUCTDATE" jdbcType="TIMESTAMP"/>
+        <result property="productfactory" column="PRODUCTFACTORY" jdbcType="VARCHAR"/>
+        <result property="productworkshop" column="PRODUCTWORKSHOP" jdbcType="VARCHAR"/>
+        <result property="productdevice" column="PRODUCTDEVICE" jdbcType="VARCHAR"/>
+        <result property="customername" column="CUSTOMERNAME" jdbcType="VARCHAR"/>
+        <result property="ordernumber" column="ORDERNUMBER" jdbcType="VARCHAR"/>
+        <result property="inspectionlevel" column="INSPECTIONLEVEL" jdbcType="VARCHAR"/>
+        <result property="isqualified" column="ISQUALIFIED" jdbcType="VARCHAR"/>
+        <result property="workinprocesstype" column="WORKINPROCESSTYPE" jdbcType="VARCHAR"/>
+        <result property="workinprocessstatus" column="WORKINPROCESSSTATUS" jdbcType="VARCHAR"/>
+        <result property="pendingprocessid" column="PENDINGPROCESSID" jdbcType="VARCHAR"/>
+        <result property="planmaterialid" column="PLANMATERIALID" jdbcType="VARCHAR"/>
+    </resultMap>
+
+    <sql id="Base_Column_List">
+        ID,TENANTID,ROPTION,
+        DELETED,REMARK,CREATEDATE,
+        CREATEUSERID,MODIFYDATE,MODIFYUSERID,
+        CREATEUSERNAME,MODIFYUSERNAME,BLANKBATCHNUMBER,
+        BLANKID,BLANKNAME,PROCESSOPERATIONID,
+        WORKREPORTRECORDID,JOBOUTPUTMATERIALID,REPORTOUTPUTMATERIALID,
+        BATCHNUMBER,WORKINPROCESS,PRODUCTDATE,
+        PRODUCTFACTORY,PRODUCTWORKSHOP,PRODUCTDEVICE,
+        CUSTOMERNAME,ORDERNUMBER,INSPECTIONLEVEL,
+        ISQUALIFIED,WORKINPROCESSTYPE,WORKINPROCESSSTATUS,
+        PENDINGPROCESSID,PLANMATERIALID
+    </sql>
+</mapper>

+ 23 - 6
cx-aps/cx-aps-entity/src/main/java/com/rongwei/bsentity/domain/ApsProcessOperationDo.java

@@ -1,15 +1,15 @@
 package com.rongwei.bsentity.domain;
 
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.rongwei.rwcommon.base.BaseDo;
-import java.util.Date;
-import com.baomidou.mybatisplus.annotation.Version;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableField;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.experimental.Accessors;
 
+import java.util.Date;
+
 /**
  * <p>
  * 生产订单_坯料计划_工序作业
@@ -68,6 +68,11 @@ public class ApsProcessOperationDo extends BaseDo {
      */
     @TableField("NEXTPROCESS")
     private String nextprocess;
+    /**
+     * 后道工序作业ID
+     */
+    @TableField("NEXTPROCESSID")
+    private String nextprocessid;
     /**
      * 是否坯料工序
      */
@@ -163,6 +168,18 @@ public class ApsProcessOperationDo extends BaseDo {
      */
     @TableField("PROCESSSTATUS")
     private String processstatus;
-
-
+    /**
+     * 输出合格数量
+     */
+    @TableField("OUTPUTQUALIFIEDNUM")
+    private Integer outputqualifiednum;
+    /**
+     * 输出不合格数量
+     */
+    @TableField("OUTPUTUNQUALIFIEDNUM")
+    private Integer outputunqualifiednum;
+    /**
+     * 待加工料卷批次号
+     */
+    private String bachmaterialprocess;
 }

+ 293 - 0
cx-aps/cx-aps-entity/src/main/java/com/rongwei/bsentity/domain/ApsProcessOperationOutMaterDo.java

@@ -0,0 +1,293 @@
+package com.rongwei.bsentity.domain;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.util.Date;
+
+import com.rongwei.rwcommon.base.BaseDo;
+import lombok.Data;
+
+/**
+ * 生产订单_坯料计划_工序作业输出物料
+ * @TableName aps_process_operation_out_mater
+ */
+@TableName(value ="aps_process_operation_out_mater")
+@Data
+public class ApsProcessOperationOutMaterDo extends BaseDo implements Serializable {
+    /**
+     * 主键ID
+     */
+    @TableId
+    private String id;
+
+    /**
+     * 
+     */
+    private String tenantid;
+
+    /**
+     * 扩展json格式配置
+     */
+    private String roption;
+
+    /**
+     * 序号
+     */
+    private Integer datano;
+
+    /**
+     * 工序作业ID
+     */
+    private String mainid;
+
+    /**
+     * 工艺路线ID
+     */
+    private String craftrouteid;
+
+    /**
+     * 工艺步骤ID
+     */
+    private String craftstepid;
+
+    /**
+     * 物料编号
+     */
+    private String materialcode;
+
+    /**
+     * 物料名称
+     */
+    private String materialname;
+
+    /**
+     * 厚度输出规则
+     */
+    private String thickrule;
+
+    /**
+     * 厚度变化(mm)
+     */
+    private BigDecimal thickchange;
+
+    /**
+     * 厚度偏差要求
+     */
+    private String thickoffset;
+
+    /**
+     * 厚度-起(mm)
+     */
+    private BigDecimal thickstr;
+
+    /**
+     * 厚度-止(mm)
+     */
+    private BigDecimal thickend;
+
+    /**
+     * 厚度输出描述
+     */
+    private String thickremark;
+
+    /**
+     * 宽度输出规则
+     */
+    private String widthrule;
+
+    /**
+     * 宽度变化(mm)
+     */
+    private BigDecimal widthchange;
+
+    /**
+     * 宽度偏差要求
+     */
+    private String widthoffset;
+
+    /**
+     * 宽度-起(mm)
+     */
+    private BigDecimal widthstr;
+
+    /**
+     * 宽度-止(mm)
+     */
+    private BigDecimal widthend;
+
+    /**
+     * 宽度输出描述
+     */
+    private String widthremark;
+
+    /**
+     * 长度输出规则
+     */
+    private String lengthrule;
+
+    /**
+     * 长度变化(mm)
+     */
+    private BigDecimal lengthchange;
+
+    /**
+     * 长度偏差要求
+     */
+    private String lengthoffset;
+
+    /**
+     * 长度-起(mm)
+     */
+    private BigDecimal lengthstr;
+
+    /**
+     * 长度-止(mm)
+     */
+    private BigDecimal lengthend;
+
+    /**
+     * 长度输出描述
+     */
+    private String lengthremark;
+
+    /**
+     * 输出卷数
+     */
+    private Integer outval;
+
+    /**
+     * 输出物料要求
+     */
+    private String outmaterrequest;
+
+    /**
+     * 产品类型输出规则ID
+     */
+    private String producttyperuleid;
+
+    /**
+     * 产品类型输出规则
+     */
+    private String producttyperule;
+
+    /**
+     * 产品类型ID
+     */
+    private String producttypeid;
+
+    /**
+     * 产品类型
+     */
+    private String producttype;
+
+    /**
+     * 合金输出规则
+     */
+    private String metalrule;
+
+    /**
+     * 合金
+     */
+    private String metal;
+
+    /**
+     * 合金状态输出规则
+     */
+    private String metalstaterule;
+
+    /**
+     * 合金状态
+     */
+    private String metalstate;
+
+    /**
+     * 厚度(mm)
+     */
+    private BigDecimal thickness;
+
+    /**
+     * 宽度(mm)
+     */
+    private BigDecimal prowidth;
+
+    /**
+     * 长度(mm)
+     */
+    private BigDecimal prolength;
+
+    /**
+     * 输出成品
+     */
+    private String outputfinishproduct;
+
+    /**
+     * 数量单位
+     */
+    private String numunit;
+
+    /**
+     * 输出单卷重
+     */
+    private BigDecimal singlerollweight;
+
+    /**
+     * 计划输出卷数
+     */
+    private Integer planrollnum;
+
+    /**
+     * 输出物料
+     */
+    private String outputmaterial;
+
+    /**
+     * 实际可输出卷数
+     */
+    private Integer actrollnum;
+
+    /**
+     * 已输出卷数
+     */
+    private Integer rollnum;
+
+    /**
+     * 输出已检验卷数
+     */
+    private Integer inspectrollnum;
+
+    /**
+     * 输出不合格卷数
+     */
+    private Integer failrollnum;
+
+    /**
+     * 输出合格卷数
+     */
+    private Integer goodrollnum;
+
+    /**
+     * 横切分卷数
+     */
+    private Integer crosscutnum;
+
+    /**
+     * 纵切分卷数
+     */
+    private Integer ripcutnum;
+
+    /**
+     * 计划备料卷数
+     */
+    private Integer planstockrollnum;
+
+    /**
+     * 计划成品卷数
+     */
+    private Integer planprodrollnum;
+
+    @TableField(exist = false)
+    private static final long serialVersionUID = 1L;
+}

+ 405 - 0
cx-aps/cx-aps-entity/src/main/java/com/rongwei/bsentity/domain/ApsProductionOrderDo.java

@@ -0,0 +1,405 @@
+package com.rongwei.bsentity.domain;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.rongwei.rwcommon.base.BaseDo;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * 生产订单
+ *
+ * @TableName aps_production_order
+ */
+@TableName(value = "aps_production_order")
+@Data
+public class ApsProductionOrderDo extends BaseDo implements Serializable {
+    /**
+     * 主键
+     */
+    @TableId
+    private String id;
+
+    /**
+     * 订单单据号
+     */
+    private String orderno;
+
+    /**
+     * 客户名称
+     */
+    private String customname;
+
+    /**
+     * 下单日期
+     */
+    private Date orderdate;
+
+    /**
+     * 期望交货日期
+     */
+    private Date deliverydate;
+
+    /**
+     * 交期允许浮动(天)
+     */
+    private Integer allowday;
+
+    /**
+     * 订单状态
+     */
+    private String orderstatus;
+
+    /**
+     * 评审状态
+     */
+    private String auditstatus;
+
+    /**
+     * 评审人
+     */
+    private String auditor;
+
+    /**
+     * 评审人ID
+     */
+    private String auditorid;
+
+    /**
+     * 评审时间
+     */
+    private Date auditdate;
+
+    /**
+     * 生产状态
+     */
+    private String productionstatus;
+
+    /**
+     * 承诺交货日期
+     */
+    private Date promisedeliverydate;
+
+    /**
+     * 客户仓库
+     */
+    private String customwarehouse;
+
+    /**
+     * 送货时长(小时)
+     */
+    private Integer deliverytime;
+
+    /**
+     * 所属分厂
+     */
+    private String belongfactory;
+
+    /**
+     * 订单类型
+     */
+    private String ordertype;
+
+    /**
+     * 业务员
+     */
+    private String salesman;
+
+    /**
+     * 业务部门
+     */
+    private String businessunit;
+
+    /**
+     * 客户订单号
+     */
+    private String customorderno;
+
+    /**
+     * 是否来自NC系统
+     */
+    private String isfromnc;
+
+    /**
+     * NC订单号
+     */
+    private String ncorderno;
+
+    /**
+     * NC订单类型
+     */
+    private String ncordertype;
+
+    /**
+     * NC订单状态
+     */
+    private String ncorderstatus;
+
+    /**
+     * 所属租户ID
+     */
+    private String tenantid;
+
+    /**
+     * 扩展json格式配置
+     */
+    private String roption;
+
+
+    /**
+     * 排程交货日期
+     */
+    private Date scheduledeliverydate;
+
+    /**
+     * 实际交货日期
+     */
+    private Date actualdeliverydate;
+
+    /**
+     * 客户ID
+     */
+    private String customid;
+
+    /**
+     * 状态
+     */
+    private String status;
+
+    /**
+     * 流程ID
+     */
+    private String processinstid;
+
+    /**
+     * 客户仓库ID
+     */
+    private String customwarehouseid;
+
+    /**
+     * 坯料类型
+     */
+    private String blanktype;
+
+    /**
+     * 成分调整
+     */
+    private String compositionchange;
+
+    /**
+     * 调整方案
+     */
+    private String changeremark;
+
+    /**
+     * 坯料厚度(mm)
+     */
+    private BigDecimal blamkthickness;
+
+    /**
+     * 坯料均质
+     */
+    private String blankhomogenization;
+
+    /**
+     * 终轧温度
+     */
+    private String finishtemperature;
+
+    /**
+     * 厚度公差(H)
+     */
+    private String thicknesstolerance;
+
+    /**
+     * 宽度公差(W)
+     */
+    private String widthtolerance;
+
+    /**
+     * 长度公差(L)
+     */
+    private String lengthtolerance;
+
+    /**
+     * 折弯要求
+     */
+    private String bendrequirement;
+
+    /**
+     * 接头(率)
+     */
+    private String joint;
+
+    /**
+     * 刷水/达因值
+     */
+    private String swabbing;
+
+    /**
+     * 抗拉强度
+     */
+    private String tensilestrength;
+
+    /**
+     * 屈服强度
+     */
+    private String yieldstrength;
+
+    /**
+     * 延伸率
+     */
+    private String elongationrate;
+
+    /**
+     * 针孔
+     */
+    private String pinhole;
+
+    /**
+     * 杯突
+     */
+    private String cupping;
+
+    /**
+     * 制耳
+     */
+    private String earing;
+
+    /**
+     * 管内芯直径(mm)
+     */
+    private BigDecimal innercorediameter;
+
+    /**
+     * 包装方式
+     */
+    private String packagingmethod;
+
+    /**
+     * 标签
+     */
+    private String tag;
+
+    /**
+     * 表面要求
+     */
+    private String surfacerequirement;
+
+    /**
+     * 是否过拉矫
+     */
+    private String istensionlevelling;
+
+    /**
+     * 包装要求
+     */
+    private String packagingrequirement;
+
+    /**
+     * 表面硬度
+     */
+    private String surfacehardness;
+
+    /**
+     * 成品外径(mm)
+     */
+    private String nomod;
+
+    /**
+     * 卷重要求
+     */
+    private String rollweightrequirement;
+
+    /**
+     * 其他订单执行标准
+     */
+    private String otherorderstandard;
+
+    /**
+     * 技术评审人ID
+     */
+    private String technicalreviewerid;
+
+    /**
+     * 技术评审人名称
+     */
+    private String technicalreviewername;
+
+    /**
+     * 技术评审时间
+     */
+    private Date technicalreviewdate;
+
+    /**
+     * 质量评审人ID
+     */
+    private String qualityreviewerid;
+
+    /**
+     * 质量评审人名称
+     */
+    private String qualityreviewername;
+
+    /**
+     * 质量评审时间
+     */
+    private Date qualityreviewdate;
+
+    /**
+     * 审核人ID
+     */
+    private String reviewerid;
+
+    /**
+     * 审核人名称
+     */
+    private String reviewername;
+
+    /**
+     * 审核时间
+     */
+    private Date reviewdate;
+
+    /**
+     * 是否成熟工艺
+     */
+    private String idmatureprocess;
+
+    /**
+     * 其他注意事项
+     */
+    private String otherprecaution;
+
+    /**
+     * 最晚交货日期
+     */
+    private Date enddate;
+
+    /**
+     * 计划交货日期
+     */
+    private Date plandate;
+
+    /**
+     * 评审类型
+     */
+    private String reviewtype;
+
+    /**
+     * 排程状态
+     */
+    private String schedulstatus;
+
+    /**
+     * 调整日期
+     */
+    private Date changedate;
+
+    @TableField(exist = false)
+    private static final long serialVersionUID = 1L;
+}

+ 145 - 0
cx-aps/cx-aps-entity/src/main/java/com/rongwei/bsentity/domain/ApsReportOutputDo.java

@@ -0,0 +1,145 @@
+package com.rongwei.bsentity.domain;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.rongwei.rwcommon.base.BaseDo;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * 报工记录-输出物料
+ *
+ * @TableName aps_report_output
+ */
+@TableName(value = "aps_report_output")
+@Data
+public class ApsReportOutputDo extends BaseDo implements Serializable {
+    /**
+     * 主键ID
+     */
+    @TableId
+    private String id;
+
+    /**
+     *
+     */
+    private String tenantid;
+
+    /**
+     * 扩展json格式配置
+     */
+    private String roption;
+
+
+    /**
+     * 主表id
+     */
+    private String mainid;
+
+    /**
+     * 输出物料id
+     */
+    private String outputid;
+
+    /**
+     * 输出物料规格
+     */
+    private String outputmaterial;
+
+    /**
+     * 输出物料批次号
+     */
+    private String outputnumber;
+
+    /**
+     * 二维码
+     */
+    private String qrcode;
+
+    /**
+     * 成分
+     */
+    private String componment;
+
+    /**
+     * 占比范围(起)
+     */
+    private String startrange;
+
+    /**
+     * 占比范围(止)
+     */
+    private String endrange;
+
+    /**
+     * 实际占比
+     */
+    private String actualrange;
+
+    /**
+     * 检验状态
+     */
+    private String checkstatus;
+
+    /**
+     * 实测厚度
+     */
+    private BigDecimal thickness;
+
+    /**
+     * 实测宽度
+     */
+    private BigDecimal width;
+
+    /**
+     * 实测长度
+     */
+    private BigDecimal length;
+
+    /**
+     * 实测卷重
+     */
+    private BigDecimal weight;
+
+    /**
+     * 检验等级
+     */
+    private String insepctionlevel;
+
+    /**
+     * 是否合格
+     */
+    private String qualified;
+
+    /**
+     * 主要缺陷
+     */
+    private String major;
+
+    /**
+     * 次要缺陷
+     */
+    private String minor;
+
+    /**
+     * 检验备注
+     */
+    private String checkremark;
+
+    /**
+     * 主要缺陷描述
+     */
+    private String majordesc;
+
+    /**
+     * 次要缺陷描述
+     */
+    private String minordesc;
+
+    @TableField(exist = false)
+    private static final long serialVersionUID = 1L;
+}

+ 113 - 0
cx-aps/cx-aps-entity/src/main/java/com/rongwei/bsentity/domain/ApsReportRecordsDo.java

@@ -0,0 +1,113 @@
+package com.rongwei.bsentity.domain;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.util.Date;
+
+import com.rongwei.rwcommon.base.BaseDo;
+import lombok.Data;
+
+/**
+ * 报工记录
+ * @TableName aps_report_records
+ */
+@TableName(value ="aps_report_records")
+@Data
+public class ApsReportRecordsDo extends BaseDo implements Serializable {
+    /**
+     * 主键
+     */
+    @TableId
+    private String id;
+
+    /**
+     * 所属租户ID
+     */
+    private String tenantid;
+
+    /**
+     * 扩展json格式配置
+     */
+    private String roption;
+
+
+    /**
+     * 工序作业ID
+     */
+    private String processoperationid;
+
+    /**
+     * 批次号
+     */
+    private String batchnumber;
+
+    /**
+     * 实际输入物料
+     */
+    private String actualinputmaterial;
+
+    /**
+     * 主操作员ID
+     */
+    private String chiefoperatorid;
+
+    /**
+     * 主操作员名称
+     */
+    private String chiefoperatorname;
+
+    /**
+     * 开工时间
+     */
+    private Date startworktime;
+
+    /**
+     * 报工时间
+     */
+    private Date reportworktime;
+
+    /**
+     * 报工状态
+     */
+    private String reportworkstatus;
+
+    /**
+     * 检验状态
+     */
+    private String checkstatus;
+
+    /**
+     * 待检验料卷批次号
+     */
+    private String needcheckbatchnumber;
+
+    /**
+     * 检验员
+     */
+    private String checkid;
+
+    /**
+     * 检验时间
+     */
+    private Date checkdate;
+
+    /**
+     * 检验报告和附件
+     */
+    private String checkfile;
+
+    /**
+     * 坯料成分
+     */
+    private String ingredient;
+
+    /**
+     * 检验员姓名
+     */
+    private String checkusername;
+
+    @TableField(exist = false)
+    private static final long serialVersionUID = 1L;
+}

+ 181 - 0
cx-aps/cx-aps-entity/src/main/java/com/rongwei/bsentity/domain/ApsWorkInProgressInventory.java

@@ -0,0 +1,181 @@
+package com.rongwei.bsentity.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.io.Serializable;
+import java.util.Date;
+import lombok.Data;
+
+/**
+ * 在制品库存表
+ * @TableName aps_work_in_progress_inventory
+ */
+@TableName(value ="aps_work_in_progress_inventory")
+@Data
+public class ApsWorkInProgressInventory extends BaseDo implements Serializable {
+    /**
+     * 主键
+     */
+    @TableId
+    private String id;
+
+    /**
+     * 所属租户ID
+     */
+    private String tenantid;
+
+    /**
+     * 扩展json格式配置
+     */
+    private String roption;
+
+    /**
+     * 是否删除
+     */
+    private String deleted;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    /**
+     * 创建时间
+     */
+    private Date createdate;
+
+    /**
+     * 创建用户ID
+     */
+    private String createuserid;
+
+    /**
+     * 修改日期
+     */
+    private Date modifydate;
+
+    /**
+     * 修改用户ID
+     */
+    private String modifyuserid;
+
+    /**
+     * 创建人名称
+     */
+    private String createusername;
+
+    /**
+     * 修改人名称
+     */
+    private String modifyusername;
+
+    /**
+     * 坯料批次号
+     */
+    private String blankbatchnumber;
+
+    /**
+     * 坯料ID
+     */
+    private String blankid;
+
+    /**
+     * 坯料
+     */
+    private String blankname;
+
+    /**
+     * 工序作业ID
+     */
+    private String processoperationid;
+
+    /**
+     * 报工记录ID
+     */
+    private String workreportrecordid;
+
+    /**
+     * 作业输出物料ID
+     */
+    private String joboutputmaterialid;
+
+    /**
+     * 报工输出物料ID
+     */
+    private String reportoutputmaterialid;
+
+    /**
+     * 批次号
+     */
+    private String batchnumber;
+
+    /**
+     * 在制品
+     */
+    private String workinprocess;
+
+    /**
+     * 生产日期
+     */
+    private Date productdate;
+
+    /**
+     * 加工工厂
+     */
+    private String productfactory;
+
+    /**
+     * 加工车间
+     */
+    private String productworkshop;
+
+    /**
+     * 加工设备
+     */
+    private String productdevice;
+
+    /**
+     * 客户名称
+     */
+    private String customername;
+
+    /**
+     * 订单号
+     */
+    private String ordernumber;
+
+    /**
+     * 检验等级
+     */
+    private String inspectionlevel;
+
+    /**
+     * 是否合格
+     */
+    private String isqualified;
+
+    /**
+     * 在制品类型
+     */
+    private String workinprocesstype;
+
+    /**
+     * 在制品状态
+     */
+    private String workinprocessstatus;
+
+    /**
+     * 待加工工序作业ID
+     */
+    private String pendingprocessid;
+
+    /**
+     * 备料计划ID
+     */
+    private String planmaterialid;
+
+    @TableField(exist = false)
+    private static final long serialVersionUID = 1L;
+}

+ 143 - 0
cx-aps/cx-aps-entity/src/main/java/com/rongwei/bsentity/domain/ApsWorkInProgressInventoryDo.java

@@ -0,0 +1,143 @@
+package com.rongwei.bsentity.domain;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.rongwei.rwcommon.base.BaseDo;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * 在制品库存表
+ *
+ * @TableName aps_work_in_progress_inventory
+ */
+@TableName(value = "aps_work_in_progress_inventory")
+@Data
+public class ApsWorkInProgressInventoryDo extends BaseDo implements Serializable {
+    /**
+     * 主键
+     */
+    @TableId
+    private String id;
+
+    /**
+     * 所属租户ID
+     */
+    private String tenantid;
+
+    /**
+     * 扩展json格式配置
+     */
+    private String roption;
+
+    /**
+     * 坯料批次号
+     */
+    private String blankbatchnumber;
+
+    /**
+     * 坯料ID
+     */
+    private String blankid;
+
+    /**
+     * 坯料
+     */
+    private String blankname;
+
+    /**
+     * 工序作业ID
+     */
+    private String processoperationid;
+
+    /**
+     * 报工记录ID
+     */
+    private String workreportrecordid;
+
+    /**
+     * 作业输出物料ID
+     */
+    private String joboutputmaterialid;
+
+    /**
+     * 报工输出物料ID
+     */
+    private String reportoutputmaterialid;
+
+    /**
+     * 批次号
+     */
+    private String batchnumber;
+
+    /**
+     * 在制品
+     */
+    private String workinprocess;
+
+    /**
+     * 生产日期
+     */
+    private Date productdate;
+
+    /**
+     * 加工工厂
+     */
+    private String productfactory;
+
+    /**
+     * 加工车间
+     */
+    private String productworkshop;
+
+    /**
+     * 加工设备
+     */
+    private String productdevice;
+
+    /**
+     * 客户名称
+     */
+    private String customername;
+
+    /**
+     * 订单号
+     */
+    private String ordernumber;
+
+    /**
+     * 检验等级
+     */
+    private String inspectionlevel;
+
+    /**
+     * 是否合格
+     */
+    private String isqualified;
+
+    /**
+     * 在制品类型
+     */
+    private String workinprocesstype;
+
+    /**
+     * 在制品状态
+     */
+    private String workinprocessstatus;
+
+    /**
+     * 待加工工序作业ID
+     */
+    private String pendingprocessid;
+
+    /**
+     * 备料计划ID
+     */
+    private String planmaterialid;
+
+    @TableField(exist = false)
+    private static final long serialVersionUID = 1L;
+}

+ 38 - 0
cx-aps/cx-aps-server/src/main/java/com/rongwei/bsserver/controller/ReportCheckController.java

@@ -0,0 +1,38 @@
+package com.rongwei.bsserver.controller;
+
+import com.rongwei.bscommon.sys.service.impl.ReportCheckServiceImpl;
+import com.rongwei.rwcommon.base.R;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * ReportCheckController class
+ *
+ * @author XH
+ * @date 2024/03/19
+ */
+@RestController
+@RequestMapping("/report-check")
+public class ReportCheckController {
+    private final Logger log = LoggerFactory.getLogger(this.getClass().getName());
+
+    @Autowired
+    private ReportCheckServiceImpl reportCheckService;
+
+    /**
+     * 保存检验结果后更新相关信息
+     *
+     * @param reportCheckId
+     * @return
+     */
+    @PostMapping("/save/postposition")
+    public R updateRelevantInformation(@RequestParam(name = "reportCheckId", required = true) String reportCheckId) {
+        reportCheckService.updateRelevantInformation(reportCheckId);
+        return R.ok();
+    }
+}