Bladeren bron

云端与库端数据同步;

zlq 3 jaren geleden
bovenliggende
commit
b6213efb24

+ 2 - 2
src/main/java/com/unissoft/common/LogAspect.java

@@ -101,11 +101,11 @@ public class LogAspect {
101 101
 //                System.out.println("login--->" + JSON.toJSONString(userInfo));
102 102
                 operlog.setUserId(userInfo.getUserId()); // 请求用户ID
103 103
                 operlog.setUserName(userInfo.getUserName()); // 请求用户名称
104
-                operlog.setOrgId(Integer.parseInt(userInfo.getOrgId())); // 请求用户组织机构编码
104
+                operlog.setOrgId(Long.parseLong(userInfo.getOrgId())); // 请求用户组织机构编码
105 105
             } else {
106 106
                 operlog.setUserId("admin"); // 请求用户ID
107 107
                 operlog.setUserName("admin"); // 请求用户名称
108
-                operlog.setOrgId(3); // 请求用户组织机构编码
108
+                operlog.setOrgId(3L); // 请求用户组织机构编码
109 109
             }
110 110
             operlog.setOperIp(IPUtils.getRemoteIP(request)); // 请求IP
111 111
             operlog.setOperUri(request.getRequestURI()); // 请求URI

+ 9 - 2
src/main/java/com/unissoft/common/MessageEnum.java

@@ -14,8 +14,15 @@ import java.util.Map;
14 14
  * @Version 1.0
15 15
  */
16 16
 public enum MessageEnum {
17
-    SAVE,UPDATE,DELETE;
17
+    SAVE("通用添加"),
18
+    UPDATE("通用修改"),
19
+    DELETE("通用修改"),
18 20
 
19
-    private Map Param;
21
+    DELETE_STORE_HOUSE("删除仓房信息同时删除储粮信息");
20 22
 
23
+    private String explain;
24
+
25
+    MessageEnum(String explain) {
26
+        this.explain = explain;
27
+    }
21 28
 }

+ 3 - 2
src/main/java/com/unissoft/common/ServiceEnum.java

@@ -17,8 +17,9 @@ public enum ServiceEnum {
17 17
     NBASIC_EDGE(3),
18 18
     ROLE_INFO(4),
19 19
     ORG_INFO(5),
20
-    STOREHOUSE_CLXX(6),
21
-    USER_INFO(7);
20
+    ORG_ANNOUNCEMENT(6),
21
+    USER_INFO(7),
22
+    STORE_HOUSE(8);
22 23
 
23 24
 
24 25
 

+ 9 - 3
src/main/java/com/unissoft/interaction/service/impl/TeDataServiceImpl.java

@@ -2,6 +2,8 @@ package com.unissoft.interaction.service.impl;
2 2
 
3 3
 import com.alibaba.fastjson.JSONArray;
4 4
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
5
+import com.unissoft.common.MessageEnum;
6
+import com.unissoft.common.ServiceEnum;
5 7
 import com.unissoft.interaction.algorithm.CylinderAlg;
6 8
 import com.unissoft.interaction.entity.DensityData;
7 9
 import com.unissoft.interaction.entity.ReMsg;
@@ -12,6 +14,7 @@ import com.unissoft.interaction.mapper.ReMsgMapper;
12 14
 import com.unissoft.interaction.mapper.STaskMapper;
13 15
 import com.unissoft.interaction.mapper.TeDataMapper;
14 16
 import com.unissoft.interaction.service.TeDataService;
17
+import com.unissoft.mqProducer.Producer;
15 18
 import com.unissoft.parameter.mapper.HardwareParameterMapper;
16 19
 import com.unissoft.parameter.model.HardwareParameter;
17 20
 import com.unissoft.systemManage.mapper.NBasicEdgeMapper;
@@ -76,7 +79,8 @@ public class TeDataServiceImpl implements TeDataService {
76 79
     private OrgInfoMapper orgInfoMapper;
77 80
     @Resource
78 81
     private DensityDataMapper densityDataMapper;
79
-    
82
+    @Resource
83
+    private Producer producer;
80 84
 
81 85
     /**
82 86
      * todo-----------暂时不用
@@ -390,8 +394,10 @@ public class TeDataServiceImpl implements TeDataService {
390 394
 		}else if (v - lkVolume <0){//入库
391 395
 			nBasicEdge.setHStatus("2");
392 396
 		}
393
-		 nBasicEdgeMapper.insert(nBasicEdge);
394
-		
397
+        int insert = nBasicEdgeMapper.insert(nBasicEdge);
398
+        if (insert>0){
399
+            producer.send(nBasicEdge, MessageEnum.SAVE, ServiceEnum.NBASIC_EDGE);
400
+        }
395 401
     }
396 402
 
397 403
     

+ 10 - 5
src/main/java/com/unissoft/mqConsumer/Consumer.java

@@ -10,12 +10,11 @@ import org.apache.rocketmq.spring.annotation.RocketMQMessageListener;
10 10
 import org.apache.rocketmq.spring.core.RocketMQListener;
11 11
 import org.springframework.beans.factory.annotation.Autowired;
12 12
 import org.springframework.stereotype.Component;
13
-import org.springframework.util.StringUtils;
14 13
 
15 14
 /**
16 15
  * ClassName: HardwareParameterConsumer
17 16
  * Package: com.unissoft.mqConsumer
18
- * Description: 硬件参数 消息消费者
17
+ * Description: 消费者
19 18
  *
20 19
  * @Author zlq
21 20
  * @Create 2023/3/3 10:42
@@ -28,13 +27,11 @@ public class Consumer {
28 27
     private ServiceManager serviceManager;
29 28
 
30 29
 
31
-    private final String topic = "TOPIC_LOCAL";
32 30
     //库端TOPIK,云端使用
33 31
     private final String topicLocal="TOPIC_LOCAL";
34 32
     //云端topic,库端使用
35 33
     private final String topicCloud="TOPIC_CLOUD";
36 34
 
37
-    private final String consumerGroup = "consumerGroup";
38 35
 
39 36
     @Component
40 37
     @RocketMQMessageListener(topic = topicLocal,consumerGroup = "local")
@@ -73,8 +70,16 @@ public class Consumer {
73 70
                 case "ORG_INFO":
74 71
                     serviceManager.OrgInfoManager(payload,type);
75 72
                     break;
73
+                case "ORG_ANNOUNCEMENT":
74
+                    //公告管理
75
+                    serviceManager.OrgAnnouncementManager(payload,type);
76
+                    break;
77
+                case "STORE_HOUSE":
78
+                    //仓房明细
79
+                    serviceManager.StorehouseClxxManager(payload,type);
80
+                    break;
76 81
                 default:
77
-                    log.info("没有可用的业务类型!!");
82
+                    log.info("没有可用的业务类型!!{}",message);
78 83
             }
79 84
         }
80 85
     }

+ 58 - 1
src/main/java/com/unissoft/mqConsumer/Manager/ServiceManager.java

@@ -181,7 +181,64 @@ public class ServiceManager {
181 181
                 break;
182 182
             case "DELETE":
183 183
                 boolean b2 = orgInfoService.removeById(payload);
184
-                log.info("删除组织机构id{},是否成功:{}",payload,b2);
184
+                log.info("删除组织机构{},是否成功:{}",payload,b2);
185
+                break;
186
+        }
187
+    }
188
+
189
+    @Resource
190
+    private OrgAnnouncementService orgAnnouncementService;
191
+    /**
192
+     * 公告管理
193
+     * @param payload
194
+     * @param type
195
+     */
196
+    public void OrgAnnouncementManager(String payload,String type){
197
+        //对不同的业务操作进行处理:SAVE,UPDATE,DELETE;
198
+        switch (type){
199
+            case "SAVE":
200
+                OrgAnnouncement orgAnnouncement = JSON.parseObject(payload, OrgAnnouncement.class);
201
+                boolean save = orgAnnouncementService.save(orgAnnouncement);
202
+                log.info("新增公告{},是否成功:{}",payload,save);
203
+                break;
204
+            case "UPDATE":
205
+                OrgAnnouncement orgAnnouncement1 = JSON.parseObject(payload, OrgAnnouncement.class);
206
+                boolean b = orgAnnouncementService.updateById(orgAnnouncement1);
207
+                log.info("修改公告{},是否成功:{}",payload,b);
208
+                break;
209
+            case "DELETE":
210
+                boolean b2 = orgAnnouncementService.removeById(payload);
211
+                log.info("删除公告{},是否成功:{}",payload,b2);
212
+                break;
213
+        }
214
+    }
215
+
216
+    @Resource
217
+    private StorehouseClxxService storehouseClxxService;
218
+    /**
219
+     * 仓房明细
220
+     * @param payload
221
+     * @param type
222
+     */
223
+    public void StorehouseClxxManager(String payload,String type){
224
+        //对不同的业务操作进行处理:SAVE,UPDATE,DELETE;
225
+        switch (type){
226
+            case "DELETE_STORE_HOUSE":
227
+                boolean b1 = storehouseClxxService.deleteStorehouse(Integer.parseInt(payload));
228
+                log.info("删除仓房信息{},是否成功:{}",payload,b1);
229
+                break;
230
+            case "UPDATE":
231
+                boolean  b = false;
232
+                try {
233
+                  b = orgInfoService.updateStorehouse(payload);
234
+                } catch (Exception e) {
235
+                    e.printStackTrace();
236
+                }
237
+                log.info("修改仓房明细{},是否成功:{}",payload,b);
238
+                break;
239
+            case "DELETE":
240
+                boolean b2 = storehouseClxxService.removeById(payload);
241
+                log.info("删除仓房明细中的一条{},是否成功:{}",payload,b2);
185 242
                 break;
186 243
         }
187 244
     }

+ 3 - 3
src/main/java/com/unissoft/parameter/model/HardwareParameter.java

@@ -33,7 +33,7 @@ public class HardwareParameter implements Serializable {
33 33
 
34 34
     @ApiModelProperty(value = "仓房id")
35 35
     @TableField("house_id")
36
-    private Integer houseId;
36
+    private Long houseId;
37 37
 
38 38
     @ApiModelProperty(value = "设备名称")
39 39
     @TableField("device_name")
@@ -63,11 +63,11 @@ public class HardwareParameter implements Serializable {
63 63
 		this.id = id;
64 64
 	}
65 65
 
66
-	public Integer getHouseId() {
66
+	public Long getHouseId() {
67 67
 		return houseId;
68 68
 	}
69 69
 
70
-	public void setHouseId(Integer houseId) {
70
+	public void setHouseId(Long houseId) {
71 71
 		this.houseId = houseId;
72 72
 	}
73 73
 

+ 9 - 0
src/main/java/com/unissoft/systemManage/controller/OrgAnnouncementController.java

@@ -3,6 +3,7 @@ package com.unissoft.systemManage.controller;
3 3
 
4 4
 import com.baomidou.mybatisplus.core.metadata.IPage;
5 5
 import com.unissoft.common.*;
6
+import com.unissoft.mqProducer.Producer;
6 7
 import com.unissoft.systemManage.model.OrgAnnouncement;
7 8
 import com.unissoft.systemManage.model.UserInfo;
8 9
 import com.unissoft.systemManage.service.OrgAnnouncementService;
@@ -11,6 +12,8 @@ import io.swagger.annotations.ApiOperation;
11 12
 import org.springframework.beans.factory.annotation.Autowired;
12 13
 import org.springframework.web.bind.annotation.*;
13 14
 
15
+import javax.annotation.Resource;
16
+
14 17
 /**
15 18
  * 公告管理
16 19
  * @author mengy
@@ -19,6 +22,8 @@ import org.springframework.web.bind.annotation.*;
19 22
 @RestController
20 23
 @RequestMapping("/orgAnnouncement")
21 24
 public class OrgAnnouncementController {
25
+    @Resource
26
+    private Producer producer;
22 27
 
23 28
     private OrgAnnouncementService orgAnnouncementService;
24 29
     @Autowired
@@ -51,6 +56,8 @@ public class OrgAnnouncementController {
51 56
     public ResultView saveUser(@RequestBody OrgAnnouncement announcement) {
52 57
         boolean save = orgAnnouncementService.save(announcement);
53 58
         if (save) {
59
+            //新增公告时同步云端和库端的数据
60
+            producer.send(announcement,MessageEnum.SAVE,ServiceEnum.ORG_ANNOUNCEMENT);
54 61
             return ResultView.success();
55 62
         } else{
56 63
             return ResultView.error();
@@ -61,6 +68,7 @@ public class OrgAnnouncementController {
61 68
     public ResultView updateUser(@RequestBody OrgAnnouncement announcement) {
62 69
         boolean b = orgAnnouncementService.updateById(announcement);
63 70
         if (b) {
71
+            producer.send(announcement,MessageEnum.UPDATE,ServiceEnum.ORG_ANNOUNCEMENT);
64 72
             return ResultView.success();
65 73
         } else{
66 74
             return ResultView.error();
@@ -71,6 +79,7 @@ public class OrgAnnouncementController {
71 79
     @GetMapping("/authority/deleteById/{id}")
72 80
     public ResultView getByIdForUserDelete(@PathVariable String id) {
73 81
         if (orgAnnouncementService.removeById(id)) {
82
+            producer.send(id,MessageEnum.DELETE,ServiceEnum.ORG_ANNOUNCEMENT);
74 83
             return ResultView.success();
75 84
         }
76 85
         return ResultView.error(MyConstant.ID_NULL);

+ 8 - 4
src/main/java/com/unissoft/systemManage/controller/StorehouseController.java

@@ -1,10 +1,8 @@
1 1
 package com.unissoft.systemManage.controller;
2 2
 
3 3
 import com.baomidou.mybatisplus.core.metadata.IPage;
4
-import com.unissoft.common.MyConstant;
5
-import com.unissoft.common.PageParam;
6
-import com.unissoft.common.ResultView;
7
-import com.unissoft.common.SystemLog;
4
+import com.unissoft.common.*;
5
+import com.unissoft.mqProducer.Producer;
8 6
 import com.unissoft.systemManage.model.OrgInfo;
9 7
 import com.unissoft.systemManage.service.OrgInfoService;
10 8
 import com.unissoft.systemManage.service.StorehouseClxxService;
@@ -13,6 +11,7 @@ import org.springframework.beans.factory.annotation.Autowired;
13 11
 import org.springframework.http.MediaType;
14 12
 import org.springframework.web.bind.annotation.*;
15 13
 
14
+import javax.annotation.Resource;
16 15
 import java.util.List;
17 16
 import java.util.Map;
18 17
 
@@ -27,6 +26,8 @@ import java.util.Map;
27 26
 @RestController
28 27
 @RequestMapping("/storehouse")
29 28
 public class StorehouseController {
29
+    @Resource
30
+    private Producer producer;
30 31
 
31 32
     private OrgInfoService orgInfoService;
32 33
     private StorehouseClxxService storehouseClxxService;
@@ -66,6 +67,7 @@ public class StorehouseController {
66 67
             e.printStackTrace();
67 68
         }
68 69
         if (b) {
70
+            producer.send(storehouse, MessageEnum.UPDATE, ServiceEnum.STORE_HOUSE);
69 71
             return ResultView.success();
70 72
         } else {
71 73
             return ResultView.error();
@@ -78,6 +80,7 @@ public class StorehouseController {
78 80
     public ResultView deleteStorehouse(@PathVariable Integer id) {
79 81
         boolean flag = storehouseClxxService.deleteStorehouse(id);
80 82
         if (flag) {
83
+            producer.send(id,MessageEnum.DELETE_STORE_HOUSE, ServiceEnum.STORE_HOUSE);
81 84
             return ResultView.success();
82 85
         } else {
83 86
             return ResultView.error(MyConstant.ID_NULL);
@@ -90,6 +93,7 @@ public class StorehouseController {
90 93
     public ResultView deleteStorehouseClxx(@PathVariable String id) {
91 94
         boolean flag = storehouseClxxService.removeById(id);
92 95
         if (flag) {
96
+            producer.send(id,MessageEnum.DELETE, ServiceEnum.STORE_HOUSE);
93 97
             return ResultView.success();
94 98
         } else {
95 99
             return ResultView.error(MyConstant.ID_NULL);

+ 1 - 1
src/main/java/com/unissoft/systemManage/model/LogOperation.java

@@ -40,7 +40,7 @@ public class LogOperation implements Serializable {
40 40
 
41 41
     @ApiModelProperty(value = "组织机构编码")
42 42
     @TableField("org_id")
43
-    private Integer orgId;
43
+    private Long orgId;
44 44
 
45 45
     @ApiModelProperty(value = "操作时间")
46 46
     @TableField("oper_time")

+ 2 - 2
src/main/java/com/unissoft/systemManage/model/NBasicEdge.java

@@ -28,8 +28,8 @@ public class NBasicEdge implements Serializable {
28 28
     private static final long serialVersionUID = 1L;
29 29
 
30 30
     @ApiModelProperty(value = "主键")
31
-    @TableId(value = "id", type = IdType.AUTO)
32
-    private Integer id;
31
+    @TableId(value = "id", type = IdType.ASSIGN_ID)
32
+    private Long id;
33 33
     
34 34
     @ApiModelProperty(value = "直属库")
35 35
     @TableField("zsk")

+ 2 - 2
src/main/java/com/unissoft/systemManage/model/OrgAnnouncement.java

@@ -28,8 +28,8 @@ public class OrgAnnouncement implements Serializable {
28 28
     private static final long serialVersionUID = 1L;
29 29
 
30 30
     @ApiModelProperty(value = "公告管理")
31
-    @TableId(value = "id", type = IdType.AUTO)
32
-    private Integer id;
31
+    @TableId(value = "id", type = IdType.ASSIGN_ID)
32
+    private Long id;
33 33
 
34 34
     @ApiModelProperty(value = "公告标题")
35 35
     @TableField("title")

+ 1 - 1
src/main/java/com/unissoft/systemManage/model/StorehouseClxx.java

@@ -40,7 +40,7 @@ public class StorehouseClxx implements Serializable {
40 40
 
41 41
     @ApiModelProperty(value = "组织机构ID")
42 42
     @TableField("org_id")
43
-    private Integer orgId;
43
+    private Long orgId;
44 44
 
45 45
     @ApiModelProperty(value = "品种")
46 46
     @TableField("pz")

+ 1 - 1
src/main/java/com/unissoft/systemManage/service/impl/LogOperationServiceImpl.java

@@ -42,7 +42,7 @@ public class LogOperationServiceImpl extends ServiceImpl<LogOperationMapper, Log
42 42
         if (!StringUtils.isEmpty(condition)) {
43 43
             LogOperation operation = JSON.parseObject(condition, LogOperation.class);
44 44
             // 获取查询条件
45
-            Integer orgId = operation.getOrgId();
45
+            Long orgId = operation.getOrgId();
46 46
             String userId = operation.getUserId();
47 47
             if (!StringUtils.isEmpty(orgId)) {
48 48
                 queryWrapper.eq("org_id", orgId);

+ 4 - 1
src/main/java/com/unissoft/systemManage/service/impl/OrgInfoServiceImpl.java

@@ -164,7 +164,10 @@ public class OrgInfoServiceImpl extends ServiceImpl<OrgInfoMapper, OrgInfo> impl
164 164
         bke.setInputTime(new Date());
165 165
         bke.setPz(orgInfo.getPz());
166 166
         bke.setDj(orgInfo.getDj());
167
-        bke.setCrlsrl(new BigDecimal(orgInfo.getCnlsrz()));
167
+        if (!StringUtils.isEmpty(orgInfo.getCnlsrz())) {
168
+            bke.setCrlsrl(new BigDecimal(orgInfo.getCnlsrz()));
169
+        }
170
+
168 171
         
169 172
         if(null !=orgInfo.getId()){
170 173
         	  b = orgInfoMapper.updateById(orgInfo);