buhuazhen
10 天以前 16c1cb7098f15b559ff02eedabd41b9eefd20ad9
 feat: 报工补充加放数
已修改5个文件
38 ■■■■ 文件已修改
src/main/java/com/ruoyi/production/dto/ProductionProductMainDto.java 19 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/production/pojo/ProductionProductOutput.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/production/ProductionProductMainMapper.xml 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/production/SalesLedgerProductionAccountingMapper.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/production/dto/ProductionProductMainDto.java
@@ -38,6 +38,18 @@
    @Excel(name = "报废数量")
    private BigDecimal scrapQty = BigDecimal.ZERO;
    /**
     * 补产数量
     */
    @Excel(name = "补产数量")
    private BigDecimal replenishQty;
    /**
     * 加放数
     */
    @Excel(name = "加放数")
    private BigDecimal addQty;
    //产品名称
    @Excel(name = "产品名称")
    private String productName;
@@ -74,10 +86,9 @@
    private List<Team> teamList;
    /**
     * 补产数量
     */
    private BigDecimal replenishQty;
    @Data
    @AllArgsConstructor
src/main/java/com/ruoyi/production/pojo/ProductionProductOutput.java
@@ -47,4 +47,10 @@
    @TableField(value = "replenish_qty")
    private BigDecimal replenishQty;
    /**
     * 加放数
     */
    @TableField(value = "add_qty")
    private BigDecimal addQty;
}
src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java
@@ -200,6 +200,7 @@
        productionProductOutput.setQuantity(dto.getQuantity() != null ? dto.getQuantity() : BigDecimal.ZERO);
        productionProductOutput.setScrapQty(dto.getScrapQty() != null ? dto.getScrapQty() : BigDecimal.ZERO);
        productionProductOutput.setReplenishQty(dto.getReplenishQty());
        productionProductOutput.setAddQty(dto.getAddQty() != null ? dto.getAddQty() : BigDecimal.ZERO);
        productionProductOutputMapper.insert(productionProductOutput);
        //合格数量=报工数量-报废数量
        BigDecimal productQty = productionProductOutput.getQuantity().subtract(productionProductOutput.getScrapQty());
@@ -211,7 +212,7 @@
            if (ObjectUtils.isNull(productWorkOrder.getActualStartTime())) {
                productWorkOrder.setActualStartTime(LocalDate.now());//实际开始时间
            }
            if (productWorkOrder.getCompleteQuantity().compareTo(productWorkOrder.getPlanQuantity()) == 0) {
            if (productWorkOrder.getCompleteQuantity().compareTo(productWorkOrder.getPlanQuantity()) >= 0) {
                productWorkOrder.setActualEndTime(LocalDate.now());//实际结束时间
            }
            productWorkOrder.setEndProductTime(now);
@@ -224,7 +225,7 @@
            if (productProcessRouteItem.getDragSort() == productProcessRouteItems.size()) {
                //如果是最后一道工序报工之后生产订单完成数量+
                productOrder.setCompleteQuantity(productOrder.getCompleteQuantity().add(productQty));
                if (productOrder.getCompleteQuantity().compareTo(productOrder.getQuantity()) == 0) {
                if (productOrder.getCompleteQuantity().compareTo(productOrder.getQuantity()) >= 0) {
                    productOrder.setEndTime(now);//结束时间
                }
            }
src/main/resources/mapper/production/ProductionProductMainMapper.xml
@@ -22,6 +22,7 @@
        pm.model as productModelName,
        ppo.quantity,
        ppo.scrap_qty,
        ppo.add_qty,
        pm.unit,
        sl.sales_contract_no salesContractNo
        from
@@ -83,7 +84,10 @@
        IFNULL(
        TIMESTAMPDIFF(MINUTE, ppm.start_time, ppm.end_time),
        0
        ) AS work_minutes
        ) AS work_minutes,
        ppo.add_qty,
        ppo.scrap_qty,
        ppo.replenish_qty
        FROM
        production_product_main ppm
        LEFT JOIN sales_ledger_production_accounting slpa ON slpa.product_main_id = ppm.id
src/main/resources/mapper/production/SalesLedgerProductionAccountingMapper.xml
@@ -22,7 +22,7 @@
        FROM
        sales_ledger_production_accounting t4
        LEFT JOIN sales_ledger T1 ON T1.id = t4.sales_ledger_id
        left join sales_ledger_product t3 on t4.sales_ledger_product_id = t3.id and slp.type = 1
        left join sales_ledger_product t3 on t4.sales_ledger_product_id = t3.id and t3.type = 1
        <where>
            t3.type = 1
            <if test="salesLedgerDto.schedulingUserName != null and salesLedgerDto.schedulingUserName != '' ">