From ec03bfa81ac2000000eef30036e77298352bdc41 Mon Sep 17 00:00:00 2001
From: liyong <18434998025@163.com>
Date: 星期四, 23 四月 2026 16:19:08 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev_天津_阳光彩印' into dev_天津_阳光彩印

---
 src/main/java/com/ruoyi/production/dto/MaterialInfoDto.java                          |    5 +
 src/main/java/com/ruoyi/production/service/impl/ProductionPrintOrderServiceImpl.java |   29 +++++++++
 src/main/java/com/ruoyi/dto/SimplePersonDto.java                                     |   20 ++++++
 src/main/java/com/ruoyi/production/controller/ProductionPrintOrderController.java    |   31 ++++++++++
 src/main/java/com/ruoyi/production/pojo/ProductionPrintOrder.java                    |   32 ++++++++++
 src/main/java/com/ruoyi/production/dto/ProductionPrintOrderDto.java                  |    2 
 src/main/java/com/ruoyi/production/dto/ProcessContentDto.java                        |    8 ++
 src/main/java/com/ruoyi/production/pojo/ProductOrder.java                            |    6 ++
 8 files changed, 129 insertions(+), 4 deletions(-)

diff --git a/src/main/java/com/ruoyi/dto/SimplePersonDto.java b/src/main/java/com/ruoyi/dto/SimplePersonDto.java
new file mode 100644
index 0000000..affa3e0
--- /dev/null
+++ b/src/main/java/com/ruoyi/dto/SimplePersonDto.java
@@ -0,0 +1,20 @@
+package com.ruoyi.dto;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.io.Serializable;
+
+/**
+ * @author buhuazhen
+ * @date 2026/4/23
+ * @email 3038525872@qq.com
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class SimplePersonDto implements Serializable {
+    private Integer userId;
+    private String userName;
+}
diff --git a/src/main/java/com/ruoyi/production/controller/ProductionPrintOrderController.java b/src/main/java/com/ruoyi/production/controller/ProductionPrintOrderController.java
new file mode 100644
index 0000000..973f9de
--- /dev/null
+++ b/src/main/java/com/ruoyi/production/controller/ProductionPrintOrderController.java
@@ -0,0 +1,31 @@
+package com.ruoyi.production.controller;
+
+import com.ruoyi.production.dto.SaveProductionPrintOrderDto;
+import com.ruoyi.production.pojo.ProductionPrintOrder;
+import com.ruoyi.production.service.ProductionPrintOrderService;
+import io.swagger.annotations.Api;
+import lombok.RequiredArgsConstructor;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * @author buhuazhen
+ * @date 2026/4/23
+ * @email 3038525872@qq.com
+ */
+@RequestMapping("/productionProductInput")
+@RestController
+@Api(value = "鍗板埛鍗�")
+@RequiredArgsConstructor
+public class ProductionPrintOrderController {
+
+    private final ProductionPrintOrderService productionPrintOrderService;
+
+    @PostMapping("/save")
+    public void save(@RequestBody SaveProductionPrintOrderDto dto){
+        productionPrintOrderService.save(dto);
+    }
+
+}
diff --git a/src/main/java/com/ruoyi/production/dto/MaterialInfoDto.java b/src/main/java/com/ruoyi/production/dto/MaterialInfoDto.java
index 070f7e4..f90cf81 100644
--- a/src/main/java/com/ruoyi/production/dto/MaterialInfoDto.java
+++ b/src/main/java/com/ruoyi/production/dto/MaterialInfoDto.java
@@ -1,10 +1,12 @@
 package com.ruoyi.production.dto;
 
+import com.ruoyi.dto.SimplePersonDto;
 import lombok.AllArgsConstructor;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 
 import java.io.Serializable;
+import java.util.List;
 
 /**
  * @author buhuazhen
@@ -21,7 +23,8 @@
     private String num;
     private String numSuffix = "寮�";
     private String unit;
-    private String unitSuffix = "鍏�/kg";
+    private String unitSuffix = "kg";
     private String price;
+    private String priceSuffix = "鍏�/kg";
     private String totalAmount;
 }
diff --git a/src/main/java/com/ruoyi/production/dto/ProcessContentDto.java b/src/main/java/com/ruoyi/production/dto/ProcessContentDto.java
index 29affdf..88c15f1 100644
--- a/src/main/java/com/ruoyi/production/dto/ProcessContentDto.java
+++ b/src/main/java/com/ruoyi/production/dto/ProcessContentDto.java
@@ -1,10 +1,12 @@
 package com.ruoyi.production.dto;
 
+import com.ruoyi.dto.SimplePersonDto;
 import lombok.AllArgsConstructor;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 
 import java.io.Serializable;
+import java.util.List;
 
 /**
  * 宸ュ簭鍔犲伐鍐呭Dto
@@ -22,4 +24,10 @@
     private String openCount;         // 寮�鏁�
     private String processPositive;   // 宸ヨ壓姝f暟
     private String allowanceQty;      // 鍔犳斁鏁�
+
+    // 鏈哄彴淇℃伅
+    private Long deviceId;
+    private String deviceName;
+
+    List<SimplePersonDto> reportWorkerList;
 }
diff --git a/src/main/java/com/ruoyi/production/dto/ProductionPrintOrderDto.java b/src/main/java/com/ruoyi/production/dto/ProductionPrintOrderDto.java
index b4eaff1..0613442 100644
--- a/src/main/java/com/ruoyi/production/dto/ProductionPrintOrderDto.java
+++ b/src/main/java/com/ruoyi/production/dto/ProductionPrintOrderDto.java
@@ -18,6 +18,6 @@
 @AllArgsConstructor
 @NoArgsConstructor
 public class ProductionPrintOrderDto extends ProductionPrintOrder implements Serializable {
-
+    private String xxx;
 
 }
diff --git a/src/main/java/com/ruoyi/production/pojo/ProductOrder.java b/src/main/java/com/ruoyi/production/pojo/ProductOrder.java
index a61ee96..50de3a0 100644
--- a/src/main/java/com/ruoyi/production/pojo/ProductOrder.java
+++ b/src/main/java/com/ruoyi/production/pojo/ProductOrder.java
@@ -110,4 +110,10 @@
     @TableField(fill = FieldFill.INSERT)
     private Long deptId;
 
+    /**
+     * 澶囨敞
+     */
+    @TableField(value = "remark")
+    private String remark;
+
 }
diff --git a/src/main/java/com/ruoyi/production/pojo/ProductionPrintOrder.java b/src/main/java/com/ruoyi/production/pojo/ProductionPrintOrder.java
index 25b0cfd..b31f700 100644
--- a/src/main/java/com/ruoyi/production/pojo/ProductionPrintOrder.java
+++ b/src/main/java/com/ruoyi/production/pojo/ProductionPrintOrder.java
@@ -7,11 +7,13 @@
 import java.util.List;
 
 import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
+import com.fasterxml.jackson.annotation.JsonFormat;
 import com.ruoyi.production.dto.MaterialInfoDto;
 import com.ruoyi.production.dto.PlateMakingDto;
 import com.ruoyi.production.dto.ProcessContentDto;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
 
 /**
  * 鍗板埛瀹氬嵃鍗�
@@ -35,19 +37,23 @@
     /**
      * 瀵瑰簲鐨勭敓浜у伐鍗�
      */
-    @TableField(value = "product_order")
-    private Long productOrder;
+    @TableField(value = "product_order_id")
+    private Long productOrderId;
 
     /**
      * 鍒跺崟鏃ユ湡
      */
     @TableField(value = "print_order_time")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     private LocalDateTime printOrderTime;
 
     /**
      * 瀹屾垚鏃ユ湡
      */
     @TableField(value = "finish_time")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     private LocalDateTime finishTime;
 
     /**
@@ -186,12 +192,16 @@
      * 
      */
     @TableField(value = "create_time")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     private LocalDateTime createTime;
 
     /**
      * 
      */
     @TableField(value = "update_time")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     private LocalDateTime updateTime;
 
     @TableField(exist = false)
@@ -216,4 +226,22 @@
 
     @TableField(value = "update_user_name", fill = FieldFill.INSERT_UPDATE)
     private String updateUserName;
+
+    /**
+     * 灏忕洅鏁伴噺
+     */
+    @TableField(value = "small_box_qty")
+    private String smallBoxQty;
+
+    /**
+     * 涓洅鏁伴噺
+     */
+    @TableField(value = "medium_box_qty")
+    private String mediumBoxQty;
+
+    /**
+     * 鎴愬搧id
+     */
+    @TableField(value = "product_model_id")
+    private Long productModelId;
 }
\ No newline at end of file
diff --git a/src/main/java/com/ruoyi/production/service/impl/ProductionPrintOrderServiceImpl.java b/src/main/java/com/ruoyi/production/service/impl/ProductionPrintOrderServiceImpl.java
index 47dea54..23f93f2 100644
--- a/src/main/java/com/ruoyi/production/service/impl/ProductionPrintOrderServiceImpl.java
+++ b/src/main/java/com/ruoyi/production/service/impl/ProductionPrintOrderServiceImpl.java
@@ -2,10 +2,15 @@
 
 import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.util.IdUtil;
+import cn.hutool.core.util.NumberUtil;
 import cn.hutool.core.util.StrUtil;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.dto.SimplePersonDto;
 import com.ruoyi.production.dto.ProcessContentDto;
+import com.ruoyi.production.dto.ProcessRouteAnticlockwiseDto;
 import com.ruoyi.production.dto.SaveProductionPrintOrderDto;
+import com.ruoyi.production.mapper.ProductOrderMapper;
+import com.ruoyi.production.pojo.ProductOrder;
 import com.ruoyi.production.pojo.ProductionPrintOrder;
 import com.ruoyi.production.service.ProductionPrintOrderService;
 import com.ruoyi.production.mapper.ProductionPrintOrderMapper;
@@ -14,6 +19,7 @@
 import org.springframework.transaction.annotation.Transactional;
 
 import java.util.List;
+import java.util.stream.Collectors;
 
 /**
 * @author buhuazhen
@@ -27,6 +33,8 @@
 
     private final ProductionPrintOrderMapper productionPrintOrderMapper;
 
+    private final ProductOrderMapper productOrderMapper;
+    private final ProcessRouteServiceImpl processRouteService;
     @Override
     @Transactional
     public void save(SaveProductionPrintOrderDto dto) {
@@ -39,7 +47,28 @@
                 processContentDto.setId(IdUtil.simpleUUID());
             }
         });
+        // 璋冪敤宸ュ簭鏂瑰 鍑芥暟
+        List<ProcessRouteAnticlockwiseDto> processRouteAnticlockwiseDtos = processContentDtoList.stream().map(it -> {
+            ProcessRouteAnticlockwiseDto pdto = new ProcessRouteAnticlockwiseDto();
+            pdto.setProcessId(it.getProcessId());
+            pdto.setProcessRouteName(it.getProcessContent());
+            pdto.setProcessRouteOpenNum(it.getOpenCount());
+            pdto.setProcessRouteNum(it.getProcessPositive());
+            pdto.setProcessRouteAddNum(it.getProcessPositive());
+//            pdto.setProcessRouteRequire(); 宸ヨ壓瑕佹眰
+            pdto.setProductModelId(dto.getProductModelId());
+            pdto.setUserIds(it.getReportWorkerList().stream().map(SimplePersonDto::getUserName).collect(Collectors.joining(",")));
+            pdto.setDeviceId(it.getDeviceId());
+            return pdto;
+        }).collect(Collectors.toList());
 
+        processRouteService.processRouteAnticlockwise(processRouteAnticlockwiseDtos,dto.getProductModelId(),dto.getProductOrderId());
+        // 鐢熸垚澶囨敞 澶囨敞鐢卞叏閮ㄥ伐搴忓悕绉版潵 缁勬垚
+        String remark = processContentDtoList.stream().map(ProcessContentDto::getProcessContent).collect(Collectors.joining("銆�"));
+        ProductOrder productOrder = new ProductOrder();
+        productOrder.setId(dto.getProductOrderId());
+        productOrder.setRemark(remark);
+        productOrderMapper.updateById(productOrder);
         int i = dto.getId() == null ? productionPrintOrderMapper.insert(productionPrintOrder) : productionPrintOrderMapper.updateById(productionPrintOrder);
     }
 }

--
Gitblit v1.9.3