24282 il y a 2 ans
Parent
commit
7e88bfc778

+ 1 - 1
hx-common/code-generator/src/main/java/com/fjhx/modular/SyringeProduction.java

@@ -12,7 +12,7 @@ public class SyringeProduction {
         CodeGenerator.MODULAR_NAME = "syringe-production";
 
         // 需要生成的表名称,多表用,隔开
-        CodeGenerator.INCLUDE = "factory_product";
+        CodeGenerator.INCLUDE = "data_packer";
 
         // mysql连接
         CodeGenerator.MYSQL_URL = "36.134.91.96:17330";

+ 2 - 0
hx-service-api/syringe-production-api/src/main/java/com/fjhx/constants/RedisConstant.java

@@ -6,6 +6,8 @@ public interface RedisConstant {
 
     String DATA_AUTOCLAVES = PREFIX + "dataAutoclaves:";
 
+    String DATA_PACKER = PREFIX + "dataPacker:";
+
     /**
      * 设备数据前缀
      */

+ 34 - 0
hx-service-api/syringe-production-api/src/main/java/com/fjhx/entity/data/DataPacker.java

@@ -0,0 +1,34 @@
+package com.fjhx.entity.data;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.Version;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.fjhx.base.BaseEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 包装机数据
+ * </p>
+ *
+ * @author ${author}
+ * @since 2022-12-19
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class DataPacker extends BaseEntity {
+
+
+    /**
+     * 设备id
+     */
+    private String machineId;
+
+    /**
+     * 灭菌柜数据
+     */
+    private String jsonData;
+
+
+}

+ 17 - 0
hx-service-api/syringe-production-api/src/main/java/com/fjhx/params/data/DataPackerEx.java

@@ -0,0 +1,17 @@
+package com.fjhx.params.data;
+
+import com.fjhx.entity.data.DataPacker;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 包装机数据
+ *
+ * @author ${author}
+ * @since 2022-12-19
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class DataPackerEx extends DataPacker {
+
+}

+ 17 - 0
hx-service-api/syringe-production-api/src/main/java/com/fjhx/params/data/DataPackerVo.java

@@ -0,0 +1,17 @@
+package com.fjhx.params.data;
+
+import com.fjhx.entity.data.DataPacker;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 包装机数据
+ *
+ * @author ${author}
+ * @since 2022-12-19
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class DataPackerVo extends DataPacker {
+
+}

+ 41 - 0
hx-service/syringe-production/src/main/java/com/fjhx/controller/data/DataPackerController.java

@@ -0,0 +1,41 @@
+package com.fjhx.controller.data;
+
+import com.alibaba.fastjson.JSONObject;
+import com.fjhx.base.Condition;
+import com.fjhx.service.data.DataPackerService;
+import org.springblade.core.tool.api.R;
+import org.springframework.beans.factory.annotation.Autowired;
+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;
+
+/**
+ * <p>
+ * 包装机数据 前端控制器
+ * </p>
+ *
+ * @author ${author}
+ * @since 2022-12-19
+ */
+@RestController
+@RequestMapping("/dataPacker")
+public class DataPackerController {
+
+    @Autowired
+    private DataPackerService dataPackerService;
+
+    @PostMapping("/add")
+    public R add(@RequestBody JSONObject json) {
+        boolean flag = dataPackerService.add(json);
+        return R.success(flag);
+    }
+
+    @PostMapping("/getData")
+    public R getData(@RequestBody Condition condition) {
+        JSONObject result = dataPackerService.getData(condition);
+        return R.success(result);
+    }
+
+}
+

+ 16 - 0
hx-service/syringe-production/src/main/java/com/fjhx/mapper/data/DataPackerMapper.java

@@ -0,0 +1,16 @@
+package com.fjhx.mapper.data;
+
+import com.fjhx.entity.data.DataPacker;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ * 包装机数据 Mapper 接口
+ * </p>
+ *
+ * @author ${author}
+ * @since 2022-12-19
+ */
+public interface DataPackerMapper extends BaseMapper<DataPacker> {
+
+}

+ 5 - 0
hx-service/syringe-production/src/main/java/com/fjhx/mapper/data/DataPackerMapper.xml

@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.fjhx.mapper.data.DataPackerMapper">
+
+</mapper>

+ 23 - 0
hx-service/syringe-production/src/main/java/com/fjhx/service/data/DataPackerService.java

@@ -0,0 +1,23 @@
+package com.fjhx.service.data;
+
+import com.alibaba.fastjson.JSONObject;
+import com.fjhx.base.BaseService;
+import com.fjhx.base.Condition;
+import com.fjhx.entity.data.DataPacker;
+
+/**
+ * <p>
+ * 包装机数据 服务类
+ * </p>
+ *
+ * @author ${author}
+ * @since 2022-12-19
+ */
+public interface DataPackerService extends BaseService<DataPacker> {
+
+    boolean add(JSONObject json);
+
+    JSONObject getData(Condition condition);
+
+
+}

+ 72 - 0
hx-service/syringe-production/src/main/java/com/fjhx/service/data/impl/DataPackerServiceImpl.java

@@ -0,0 +1,72 @@
+package com.fjhx.service.data.impl;
+
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.fjhx.base.Condition;
+import com.fjhx.constants.RedisConstant;
+import com.fjhx.entity.data.DataPacker;
+import com.fjhx.mapper.data.DataPackerMapper;
+import com.fjhx.service.data.DataPackerService;
+import org.springblade.core.redis.cache.BladeRedis;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.Date;
+
+/**
+ * <p>
+ * 包装机数据 服务实现类
+ * </p>
+ *
+ * @author ${author}
+ * @since 2022-12-19
+ */
+@Service
+public class DataPackerServiceImpl extends ServiceImpl<DataPackerMapper, DataPacker> implements DataPackerService {
+
+    @Resource
+    private BladeRedis bladeRedis;
+
+
+    @Override
+    public boolean add(JSONObject json) {
+
+        bladeRedis.set(RedisConstant.DATA_PACKER, json);
+
+        // JSONObject module = json.getJSONObject("Module");
+        // String machineId = module.getString("MachineId");
+
+        DataPacker dataPacker = new DataPacker();
+        dataPacker.setJsonData(json.toJSONString());
+        // dataPacker.setMachineId(machineId);
+        dataPacker.setCreateTime(new Date());
+
+        return save(dataPacker);
+    }
+
+    @Override
+    public JSONObject getData(Condition condition) {
+        // String nodeId = condition.getStr("nodeId");
+        // Assert.notEmpty(nodeId, "设备标识不能够为空");
+
+        JSONObject json = bladeRedis.get(RedisConstant.DATA_PACKER);
+
+        if (json == null) {
+            DataPacker dataPacker = getOne(Wrappers.<DataPacker>lambdaQuery()
+                    // .eq(DataPacker::getMachineId, nodeId)
+                    .orderByDesc(DataPacker::getId)
+                    .last("limit 1"));
+
+            if (dataPacker == null) {
+                return new JSONObject();
+            }
+
+            json = JSONObject.parseObject(dataPacker.getJsonData());
+            bladeRedis.set(RedisConstant.DATA_PACKER, json);
+        }
+
+        return json;
+    }
+
+}