| 9 天以前 | gongchunyi | ![]() |
| 9 天以前 | gongchunyi | ![]() |
| 9 天以前 | gongchunyi | ![]() |
| 9 天以前 | gongchunyi | ![]() |
| 9 天以前 | huminmin | ![]() |
| src/main/java/com/ruoyi/production/service/impl/ProductOrderServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/ruoyi/stock/dto/StockInventoryDto.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/ruoyi/stock/pojo/StockInRecord.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/ruoyi/stock/pojo/StockInventory.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/ruoyi/stock/service/impl/StockInventoryServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/resources/mapper/production/ProductionProductInputMapper.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/resources/mapper/stock/StockInventoryMapper.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/ruoyi/production/service/impl/ProductOrderServiceImpl.java
@@ -19,6 +19,7 @@ import com.ruoyi.quality.pojo.QualityInspect; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; import java.math.BigDecimal; import java.time.LocalDate; @@ -85,42 +86,45 @@ List<ProcessRouteItem> processRouteItems = processRouteItemMapper.selectList(new QueryWrapper<ProcessRouteItem>().lambda().eq(ProcessRouteItem::getRouteId, processRoute.getId()).orderByDesc(ProcessRouteItem::getDragSort)); // 生成当前日期的前缀:年月日 String datePrefix = LocalDate.now().format(DateTimeFormatter.ofPattern("yyyyMMdd")); ProcessRouteItem processRouteItem = processRouteItems.get(0); // for (ProcessRouteItem processRouteItem : processRouteItems) { ProductProcessRouteItem productProcessRouteItem = new ProductProcessRouteItem(); productProcessRouteItem.setProductModelId(processRouteItem.getProductModelId()); productProcessRouteItem.setProcessId(processRouteItem.getProcessId()); productProcessRouteItem.setProductOrderId(productOrder.getId()); productProcessRouteItem.setProductRouteId(productProcessRoute.getId()); productProcessRouteItem.setDragSort(processRouteItem.getDragSort()); int insert = productProcessRouteItemMapper.insert(productProcessRouteItem); if (insert > 0) { // 查询今日已存在的最大工单号 ProductWorkOrder lastWorkOrder = productWorkOrderMapper.selectMax(datePrefix); int sequenceNumber = 1; // 默认序号 if (lastWorkOrder != null && lastWorkOrder.getWorkOrderNo() != null) { String lastNo = lastWorkOrder.getWorkOrderNo().toString(); if (lastNo.startsWith(datePrefix)) { String seqStr = lastNo.substring(datePrefix.length()); try { sequenceNumber = Integer.parseInt(seqStr) + 1; } catch (NumberFormatException e) { sequenceNumber = 1; if (!CollectionUtils.isEmpty(processRouteItems)) { ProcessRouteItem processRouteItem = processRouteItems.get(0); // for (ProcessRouteItem processRouteItem : processRouteItems) { ProductProcessRouteItem productProcessRouteItem = new ProductProcessRouteItem(); productProcessRouteItem.setProductModelId(processRouteItem.getProductModelId()); productProcessRouteItem.setProcessId(processRouteItem.getProcessId()); productProcessRouteItem.setProductOrderId(productOrder.getId()); productProcessRouteItem.setProductRouteId(productProcessRoute.getId()); productProcessRouteItem.setDragSort(processRouteItem.getDragSort()); int insert = productProcessRouteItemMapper.insert(productProcessRouteItem); if (insert > 0) { // 查询今日已存在的最大工单号 ProductWorkOrder lastWorkOrder = productWorkOrderMapper.selectMax(datePrefix); int sequenceNumber = 1; // 默认序号 if (lastWorkOrder != null && lastWorkOrder.getWorkOrderNo() != null) { String lastNo = lastWorkOrder.getWorkOrderNo().toString(); if (lastNo.startsWith(datePrefix)) { String seqStr = lastNo.substring(datePrefix.length()); try { sequenceNumber = Integer.parseInt(seqStr) + 1; } catch (NumberFormatException e) { sequenceNumber = 1; } } } } // 生成完整的工单号 String workOrderNoStr = "GD" + String.format("%s%03d", datePrefix, sequenceNumber); ProductWorkOrder productWorkOrder = new ProductWorkOrder(); productWorkOrder.setProductProcessRouteItemId(productProcessRouteItem.getId()); productWorkOrder.setProductOrderId(productOrder.getId()); ProductOrder order = productOrderMapper.selectById(productOrder.getId()); productWorkOrder.setPlanQuantity(order.getQuantity()); productWorkOrder.setWorkOrderNo(workOrderNoStr); productWorkOrder.setStatus(1); productWorkOrderMapper.insert(productWorkOrder); // 生成完整的工单号 String workOrderNoStr = "GD" + String.format("%s%03d", datePrefix, sequenceNumber); ProductWorkOrder productWorkOrder = new ProductWorkOrder(); productWorkOrder.setProductProcessRouteItemId(productProcessRouteItem.getId()); productWorkOrder.setProductOrderId(productOrder.getId()); ProductOrder order = productOrderMapper.selectById(productOrder.getId()); productWorkOrder.setPlanQuantity(order.getQuantity()); productWorkOrder.setWorkOrderNo(workOrderNoStr); productWorkOrder.setStatus(1); productWorkOrderMapper.insert(productWorkOrder); // } } } return productOrderMapper.updateById(productOrder); } src/main/java/com/ruoyi/stock/dto/StockInventoryDto.java
@@ -50,4 +50,7 @@ private LocalDateTime weighingDate; private String parentName; @ApiModelProperty("净重(总数)") private BigDecimal netWeight; } src/main/java/com/ruoyi/stock/pojo/StockInRecord.java
@@ -67,4 +67,7 @@ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime weighingDate; @ApiModelProperty("净重") private BigDecimal netWeight; } src/main/java/com/ruoyi/stock/pojo/StockInventory.java
@@ -63,7 +63,4 @@ @ApiModelProperty("备注") private String remark; @ApiModelProperty("净重") private BigDecimal netWeight; } src/main/java/com/ruoyi/stock/service/impl/StockInventoryServiceImpl.java
@@ -61,6 +61,7 @@ stockInRecordDto.setRecordType(stockInventoryDto.getRecordType()); stockInRecordDto.setStockInNum(stockInventoryDto.getQualitity()); stockInRecordDto.setWeighingDate(stockInventoryDto.getWeighingDate()); stockInRecordDto.setNetWeight(stockInventoryDto.getNetWeight()); stockInRecordDto.setProductModelId(stockInventoryDto.getProductModelId()); stockInRecordDto.setType("0"); stockInRecordService.add(stockInRecordDto); @@ -71,7 +72,6 @@ StockInventory newStockInventory = new StockInventory(); newStockInventory.setProductModelId(stockInventoryDto.getProductModelId()); newStockInventory.setQualitity(stockInventoryDto.getQualitity()); newStockInventory.setNetWeight(stockInventoryDto.getNetWeight()); newStockInventory.setVersion(1); newStockInventory.setRemark(stockInventoryDto.getRemark()); newStockInventory.setLockedQuantity(stockInventoryDto.getLockedQuantity()); src/main/resources/mapper/production/ProductionProductInputMapper.xml
@@ -42,7 +42,8 @@ SELECT DATE_FORMAT(ppi.create_time, '%Y-%m-%d') AS date, -- 报工数量 * 最小系数 SUM(ppi.quantity * IFNULL(distinct_ps.unit_quantity, 1)) AS quantity # SUM(ppi.quantity * IFNULL(distinct_ps.unit_quantity, 1)) AS quantity SUM(ppi.quantity) AS quantity FROM production_product_input ppi INNER JOIN production_product_main ppm ON ppm.id = ppi.product_main_id INNER JOIN product_process_route_item ppri ON ppri.id = ppm.product_process_route_item_id src/main/resources/mapper/stock/StockInventoryMapper.xml
@@ -19,9 +19,6 @@ <if test="ew.qualitity != null"> qualitity = qualitity + #{ew.qualitity}, </if> <if test="ew.netWeight != null"> net_weight = net_weight + #{ew.netWeight}, </if> <if test="ew.version != null"> version = version + 1, </if> @@ -59,8 +56,9 @@ where product_model_id = #{ew.productModelId} and qualitity >= #{ew.qualitity} </update> <select id="pagestockInventory" resultType="com.ruoyi.stock.dto.StockInventoryDto"> select si.id, si.net_weight, select si.id, COALESCE(sir.total_net_weight, 0) as net_weight, si.qualitity, COALESCE(si.locked_quantity, 0) as locked_quantity, si.product_model_id, @@ -79,6 +77,13 @@ left join product_model pm on si.product_model_id = pm.id left join product p on pm.product_id = p.id left join product p1 on p.parent_id = p1.id left join ( select product_model_id, sum(net_weight) as total_net_weight from stock_in_record group by product_model_id ) sir on si.product_model_id = sir.product_model_id <where> 1=1 <if test="ew.parentId != null and ew.parentId !=''">