Ver código fonte

编辑材料信息

dxq 3 meses atrás
pai
commit
9333e2c3a5

+ 12
- 0
sto/src/main/java/com/shinsoft/sto/controller/ware/ProdMasterController.java Ver arquivo

@@ -2,8 +2,10 @@ package com.shinsoft.sto.controller.ware;
2 2
 
3 3
 import com.alibaba.fastjson.JSON;
4 4
 import com.shinsoft.sto.model.system.ResultJSON;
5
+import com.shinsoft.sto.model.ware.ProdMaster;
5 6
 import com.shinsoft.sto.service.ware.ProdMasterService;
6 7
 import org.springframework.beans.factory.annotation.Autowired;
8
+import org.springframework.web.bind.annotation.RequestBody;
7 9
 import org.springframework.web.bind.annotation.RequestMapping;
8 10
 import org.springframework.web.bind.annotation.RequestParam;
9 11
 import org.springframework.web.bind.annotation.RestController;
@@ -33,6 +35,16 @@ public class ProdMasterController {
33 35
         }
34 36
     }
35 37
 
38
+    @RequestMapping(value = "/edit")
39
+    public ResultJSON edit(@RequestBody ProdMaster prodMaster) {
40
+        try {
41
+            return prodMasterService.edit(prodMaster);
42
+        } catch (Exception ex) {
43
+            ex.printStackTrace();
44
+            return ResultJSON.error("编辑失败:" + ex.getMessage());
45
+        }
46
+    }
47
+
36 48
     @SuppressWarnings("unchecked")
37 49
     private Map<String, Object> buildQueryParams(String params, HttpServletRequest request) {
38 50
         Map<String, Object> map = new HashMap<>();

+ 1
- 1
sto/src/main/java/com/shinsoft/sto/mapper/ware/ProdMasterMapper.java Ver arquivo

@@ -11,6 +11,6 @@ import java.util.Map;
11 11
 public interface ProdMasterMapper extends BaseMapper<ProdMaster> {
12 12
 
13 13
     IPage<ProdMaster> selectProdMasterPage(Page<ProdMaster> page,
14
-                                          @Param("parms") Map<String, Object> map);
14
+                                           @Param("parms") Map<String, Object> map);
15 15
 }
16 16
 

+ 14
- 9
sto/src/main/java/com/shinsoft/sto/mapper/ware/WareStoreMapper.xml Ver arquivo

@@ -73,29 +73,34 @@
73 73
             ws.stack_id,
74 74
             ws.store_id,
75 75
             ws.layer_no,
76
-            w.ware_nm as ware_name,
76
+            wa.ware_nm as ware_name,
77 77
             s.name as stack_name,
78 78
             m.material_name,
79 79
             pm.st_grade,
80 80
             pm.in_dtm,
81
-            w.ware_nm owner_company,
82
-            w1.ware_nm receiving_company,
83
-            w2.ware_nm customer_company,
81
+            w.CUSTOMER_NM owner_company,
82
+            w1.CUSTOMER_NM receiving_company,
83
+            w2.CUSTOMER_NM customer_company,
84 84
             pm.prod_no,
85 85
             pm.in_truck_no,
86
-            pm.ATTRIB_01 order_no,
87
-            pm.ATTRIB_02 contract_no,
86
+            pm.ATTRIB_01 ,
87
+            pm.ATTRIB_02 ,
88
+            pm.ATTRIB_03 ,
89
+            pm.ATTRIB_04 ,
90
+            pm.ATTRIB_05 ,
91
+            pm.remark_1 ,
88 92
             pm.weight,
89 93
             pm.quantity,
90 94
             pm.out_flag,
91 95
             pm.delivery_address
92 96
         from T_WARE_STORE ws
97
+        left join T_MAIN_WARE wa on wa.id = ws.ware_id
93 98
         left join T_MAIN_STACK s on ws.stack_id = s.id
94 99
         left join T_PROD_MASTER pm on ws.store_id = pm.id
95 100
         left join T_MAIN_MATERIAL m on pm.material_id = m.id
96
-        left join T_MAIN_WARE w on w.id = pm.OWNER_COMPANY
97
-        left join T_MAIN_WARE w1 on w1.id = pm.RECEIVING_COMPANY
98
-        left join T_MAIN_WARE w2 on w1.id = pm.CUSTOMER_COMPANY
101
+        left join T_MAIN_CUSTOMER w on w.id = pm.OWNER_COMPANY
102
+        left join T_MAIN_CUSTOMER w1 on w1.id = pm.RECEIVING_COMPANY
103
+        left join T_MAIN_CUSTOMER w2 on w2.id = pm.CUSTOMER_COMPANY
99 104
         <include refid="QueryWhere"/>
100 105
         order by pm.in_dtm desc
101 106
     </select>

+ 0
- 2
sto/src/main/java/com/shinsoft/sto/model/ware/ProdMaster.java Ver arquivo

@@ -10,7 +10,6 @@ import lombok.experimental.Accessors;
10 10
 
11 11
 import java.math.BigDecimal;
12 12
 import java.util.Date;
13
-
14 13
 @Getter
15 14
 @Setter
16 15
 @Accessors(chain = true)
@@ -152,6 +151,5 @@ public class ProdMaster extends BaseModel {
152 151
 
153 152
     @ApiModelProperty("备注信息5")
154 153
     private String remark5;
155
-
156 154
 }
157 155
 

+ 9
- 2
sto/src/main/java/com/shinsoft/sto/model/ware/WareStoreQueryVO.java Ver arquivo

@@ -31,11 +31,18 @@ public class WareStoreQueryVO {
31 31
     private String customerCompany;
32 32
     private String prodNo;
33 33
     private String inTruckNo;
34
-    private String orderNo;
35
-    private String contractNo;
34
+    private String attrib01;
35
+    private String attrib02;
36
+    private String attrib03;
37
+    private String attrib04;
38
+    private String attrib05;
39
+    private String remark1;
36 40
     private BigDecimal weight;
37 41
     private BigDecimal quantity;
38 42
     private String outFlag;
39 43
     private String deliveryAddress;
40 44
 }
41 45
 
46
+
47
+
48
+

+ 68
- 1
sto/src/main/java/com/shinsoft/sto/service/impl/ware/ProdMasterServiceImpl.java Ver arquivo

@@ -4,12 +4,15 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
4 4
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
5 5
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
6 6
 import com.shinsoft.sto.mapper.ware.ProdMasterMapper;
7
+import com.shinsoft.sto.mapper.ware.ChangeRecordMapper;
7 8
 import com.shinsoft.sto.model.system.ResponseCodeMsg;
9
+import com.shinsoft.sto.model.ware.ChangeRecord;
8 10
 import com.shinsoft.sto.model.ware.ProdMaster;
9 11
 import com.shinsoft.sto.service.ware.ProdMasterService;
10
-import com.shinsoft.tools.JSONTools;
11 12
 import com.shinsoft.sto.model.system.ResultJSON;
12 13
 import org.springframework.stereotype.Service;
14
+import org.springframework.beans.BeanUtils;
15
+import org.springframework.transaction.annotation.Transactional;
13 16
 
14 17
 import java.util.Map;
15 18
 
@@ -25,6 +28,11 @@ import java.util.Map;
25 28
 public class ProdMasterServiceImpl extends ServiceImpl<ProdMasterMapper, ProdMaster> implements ProdMasterService {
26 29
 
27 30
     ResultJSON resultJSON;
31
+    private final ChangeRecordMapper changeRecordMapper;
32
+
33
+    public ProdMasterServiceImpl(ChangeRecordMapper changeRecordMapper) {
34
+        this.changeRecordMapper = changeRecordMapper;
35
+    }
28 36
 
29 37
     @Override
30 38
     public ResultJSON query(int page, int rows, Map<String, Object> map) {
@@ -37,5 +45,64 @@ public class ProdMasterServiceImpl extends ServiceImpl<ProdMasterMapper, ProdMas
37 45
             return ResultJSON.error(ResponseCodeMsg.CODE_EX, ex.getMessage());
38 46
         }
39 47
     }
48
+
49
+    @Override
50
+    @Transactional(rollbackFor = Exception.class)
51
+    public ResultJSON edit(ProdMaster prodMaster) {
52
+        try {
53
+            if (prodMaster == null || prodMaster.getId() == null || prodMaster.getId().trim().isEmpty()) {
54
+                return ResultJSON.error("材料ID不能为空");
55
+            }
56
+
57
+            ProdMaster dbData = baseMapper.selectById(prodMaster.getId());
58
+            if (dbData == null) {
59
+                return ResultJSON.error("未找到对应的材料信息");
60
+            }
61
+
62
+            // 记录旧数据到变更表
63
+            ChangeRecord record = new ChangeRecord();
64
+            BeanUtils.copyProperties(dbData, record);
65
+            record.setId(null);
66
+            changeRecordMapper.insert(record);
67
+
68
+            // 按需更新字段
69
+            if (prodMaster.getQuantity() != null) {
70
+                dbData.setQuantity(prodMaster.getQuantity());
71
+            }
72
+            if (prodMaster.getWeight() != null) {
73
+                dbData.setWeight(prodMaster.getWeight());
74
+            }
75
+            if (prodMaster.getAttrib01() != null) {
76
+                dbData.setAttrib01(prodMaster.getAttrib01());
77
+            }
78
+            if (prodMaster.getAttrib02() != null) {
79
+                dbData.setAttrib02(prodMaster.getAttrib02());
80
+            }
81
+            if (prodMaster.getAttrib04() != null) {
82
+                dbData.setAttrib04(prodMaster.getAttrib04());
83
+            }
84
+            if (prodMaster.getAttrib05() != null) {
85
+                dbData.setAttrib05(prodMaster.getAttrib05());
86
+            }
87
+            if (prodMaster.getOwnerCompany() != null) {
88
+                dbData.setOwnerCompany(prodMaster.getOwnerCompany());
89
+            }
90
+            if (prodMaster.getCustomerCompany() != null) {
91
+                dbData.setCustomerCompany(prodMaster.getCustomerCompany());
92
+            }
93
+            if (prodMaster.getDeliveryAddress() != null) {
94
+                dbData.setDeliveryAddress(prodMaster.getDeliveryAddress());
95
+            }
96
+            if (prodMaster.getRemark1() != null) {
97
+                dbData.setRemark1(prodMaster.getRemark1());
98
+            }
99
+
100
+            baseMapper.updateById(dbData);
101
+            return ResultJSON.success(dbData);
102
+        } catch (Exception ex) {
103
+            ex.printStackTrace();
104
+            return ResultJSON.error(ResponseCodeMsg.CODE_EX, ex.getMessage());
105
+        }
106
+    }
40 107
 }
41 108
 

+ 9
- 1
sto/src/main/java/com/shinsoft/sto/service/ware/ProdMasterService.java Ver arquivo

@@ -1,8 +1,9 @@
1 1
 package com.shinsoft.sto.service.ware;
2 2
 
3 3
 import com.baomidou.mybatisplus.extension.service.IService;
4
-import com.shinsoft.sto.model.ware.ProdMaster;
5 4
 import com.shinsoft.sto.model.system.ResultJSON;
5
+import com.shinsoft.sto.model.ware.ProdMaster;
6
+
6 7
 import java.util.Map;
7 8
 
8 9
 /**
@@ -16,5 +17,12 @@ import java.util.Map;
16 17
 public interface ProdMasterService extends IService<ProdMaster> {
17 18
 
18 19
     ResultJSON query(int page, int rows, Map<String, Object> map);
20
+
21
+    /**
22
+     * 修改材料信息并记录变更
23
+     */
24
+    ResultJSON edit(ProdMaster prodMaster);
19 25
 }
20 26
 
27
+
28
+

Carregando…
Cancelar
Salvar