main-business/src/main/java/com/ruoyi/business/dto/ProductionDto.java
@@ -10,5 +10,7 @@ private List officialList; private Integer searchAll; } main-business/src/main/java/com/ruoyi/business/entity/Production.java
@@ -42,6 +42,12 @@ */ @TableField(value = "production_quantity") private BigDecimal productionQuantity; /** * 待排产数量 */ @TableField(value = "pending_quantity") private BigDecimal pendingQuantity; /** * 人工成本 */ main-business/src/main/java/com/ruoyi/business/entity/ProductionScheduling.java
@@ -44,6 +44,9 @@ */ @TableField(exist = false) private BigDecimal productionQuantity; @TableField(exist = false) private Integer searchAll; /** * 排产数量 */ main-business/src/main/java/com/ruoyi/business/service/impl/ProductionSchedulingServiceImpl.java
@@ -53,13 +53,14 @@ BigDecimal reduce = productionScheduling.stream() .map(ProductionScheduling::getSchedulingNum) .reduce(BigDecimal.ZERO, BigDecimal::add); if(reduce.compareTo(productionScheduling.get(0).getProductionQuantity()) < 0){ if(reduce.compareTo(productionScheduling.get(0).getProductionQuantity()) > 0){ return false; } Production production = productionMapper.selectById(productionScheduling.get(0).getProductionId()); if(production == null){ throw new RuntimeException("生产订单为空"); } production.setPendingQuantity(production.getPendingQuantity().add(reduce)); production.setStatus(2); if(reduce.compareTo(productionScheduling.get(0).getProductionQuantity()) == 0){ production.setStatus(3); main-business/src/main/java/com/ruoyi/business/service/impl/ProductionServiceImpl.java
@@ -34,6 +34,9 @@ @Override public IPage<Production> selectProductionList(Page page, ProductionDto productionDto) { LambdaQueryWrapper<Production> queryWrapper = new LambdaQueryWrapper<>(); if(productionDto != null && productionDto.getSearchAll() != null){ queryWrapper.eq(Production::getStatus, productionDto.getSearchAll()); } queryWrapper.orderByDesc(Production::getCreateTime); return productionMapper.selectPage(page, queryWrapper); } main-business/src/main/resources/db/migration/postgresql/V20250604101800__create_table_production.sql
@@ -5,6 +5,7 @@ production_master_id BIGINT NOT NULL DEFAULT 0, -- 生产主表ID coal_id BIGINT NOT NULL DEFAULT 0, -- 煤种ID production_quantity INT NOT NULL, -- 生产数量 pending_quantity INT NOT NULL DEFAULT 0, -- 待排产数量 labor_cost DECIMAL(10, 2) NOT NULL, -- 人工成本 energy_consumption_cost DECIMAL(10, 2) NOT NULL, -- 能耗成本 equipment_depreciation DECIMAL(10, 2) NOT NULL, -- 设备折旧 @@ -30,6 +31,7 @@ COMMENT ON COLUMN production.id IS '主键ID'; COMMENT ON COLUMN production.coal_id IS '煤种ID'; COMMENT ON COLUMN production.production_quantity IS '生产数量'; COMMENT ON COLUMN production.pending_quantity IS '待排产数量'; COMMENT ON COLUMN production.labor_cost IS '人工成本'; COMMENT ON COLUMN production.energy_consumption_cost IS '能耗成本'; COMMENT ON COLUMN production.equipment_depreciation IS '设备折旧'; main-business/src/main/resources/mapper/ProductionSchedulingMapper.xml
@@ -4,5 +4,8 @@ <select id="listPage" resultType="com.ruoyi.business.entity.ProductionScheduling"> select * from production_scheduling where deleted = 0 <if test="req.searchAll != null and req.searchAll != ''"> and status = #{req.searchAll} </if> </select> </mapper>