Java开发笔记5(上水)

1.Controller:

@RestController
@RequestMapping("/DeviceInterfaceService")
public class RequestShuju extends HttpServlet {

private static final Logger logger = LoggerFactory.getLogger(RequestShuju.class);
@Autowired
private WaterDeviceStatusDao waterDeviceStatusDao;

@Autowired
private WaterRealTimeDataDao waterRealTimeDataDao;


/*
* 上水设备运行状态信息
*/
@PostMapping("/WaterDeviceStatus")
public Result waterDeviceStatus(@RequestBody JSONObject jsonObject) {
String bureauCode = jsonObject.getString("bureauCode");
String stationCode = jsonObject.getString("stationCode");
JSONArray jsonObjString = jsonObject.getJSONArray("info");
SystemLogs systemLogs = new SystemLogs();
systemLogs.setModelName("上水设备运行状态信息");
systemLogs.setEquipmentType("上水设备");
for (Object o : jsonObjString) {
JSONObject jsonObject1 = JSONObject.parseObject(o.toString());
WaterDeviceStatus water = JSON.toJavaObject(jsonObject1,WaterDeviceStatus.class);
water.setBureauCode(bureauCode);
water.setStationCode(stationCode);
waterDeviceStatusDao.save(water);
systemLogs.setLogContent("上水设备数据接收:[ "+water.getDeviceId()+" ]");
}
return Result.to();
}


/*
* 上水系统实时数据
*/
@PostMapping("/WaterRealTimeData")
public Result waterRealTimeData(@RequestBody JSONObject jsonObject) {
String bureauCode = jsonObject.getString("bureauCode");
String stationCode = jsonObject.getString("stationCode");
JSONArray jsonObjString = jsonObject.getJSONArray("info");
SystemLogs systemLogs = new SystemLogs();
systemLogs.setModelName("上水系统实时数据");
systemLogs.setEquipmentType("上水设备");
for (Object o : jsonObjString) {
JSONObject jsonObject1 = JSONObject.parseObject(o.toString());
WaterRealTimeData water = JSON.toJavaObject(jsonObject1,WaterRealTimeData.class);
water.setBureauCode(bureauCode);
water.setStationCode(stationCode);
waterRealTimeDataDao.save(water);
systemLogs.setLogContent("上水系统实时数据:[ "+water.getDeviceId()+" ]");
}
return Result.to();
}


2.Dao:

(1)
package com.cars.ict.rbpsems.dao;

import com.cars.ict.rbpsems.common.BaseDao;
import com.cars.ict.rbpsems.entity.WaterDeviceStatus;

public interface WaterDeviceStatusDao extends BaseDao<WaterDeviceStatus,String> {
}
(2)
package com.cars.ict.rbpsems.dao;

import com.cars.ict.rbpsems.common.BaseDao;
import com.cars.ict.rbpsems.entity.WaterRealTimeData;

public interface WaterRealTimeDataDao extends BaseDao<WaterRealTimeData,String> {
}


3.entity:

(1)
package com.cars.ict.rbpsems.entity;

import lombok.Getter;
import lombok.Setter;
import org.hibernate.annotations.GenericGenerator;

import javax.persistence.*;
import java.io.Serializable;

/**
* 上水设备运行状态
*/
@Getter
@Setter
@Entity
@Table( name ="dev_water_device_status" )
public class WaterDeviceStatus implements Serializable{

private static final long serialVersionUID = 1L;

@Id
@GenericGenerator(name = "uuid", strategy = "uuid")
@GeneratedValue(generator = "uuid")
@Column(name = "id" )
private String id;

@Column(name = "bureau_code" )
private String bureauCode;

@Column(name = "station_code" )
private String stationCode;

@Column(name = "device_id" )
private String deviceId;

@Column(name = "dev_status" )
private String devStatus;

@Column(name = "node_position" )
private String nodePosition;

}

(2)
package com.cars.ict.rbpsems.entity;

import lombok.Getter;
import lombok.Setter;
import org.hibernate.annotations.GenericGenerator;
import javax.persistence.*;
import java.io.Serializable;

/**
* 上水系统实时数据
*/
@Getter
@Setter
@Entity
@Table( name ="dev_water_realtime_data" )
public class WaterRealTimeData implements Serializable{

private static final long serialVersionUID = 1L;

@Id
@GenericGenerator(name = "uuid", strategy = "uuid")
@GeneratedValue(generator = "uuid")
@Column(name = "id" )
private String id;

@Column(name = "bureau_code" )
private String bureauCode;

@Column(name = "station_code" )
private String stationCode;

@Column(name = "device_id" )
private String deviceId;

@Column(name = "flow" )
private String flow;

@Column(name = "speed" )
private String speed;

@Column(name = "press" )
private String press;

}

4.sql建表:

1.创建上水设备运行状态信息表格:

CREATE TABLE `dev_water_device_status`(
  `id` varchar(255) NOT NULL,
  `bureau_code` varchar(255) DEFAULT NULL COMMENT '局码',
  `station_code` varchar(255) DEFAULT NULL COMMENT '站码',
  `device_id` varchar(255) DEFAULT NULL COMMENT '设备节点ID',
  `devStatus` varchar(255) DEFAULT NULL COMMENT '0-未上水;1-上水中;2上水完毕',
  `nodePosition` varchar(255) DEFAULT NULL COMMENT '0-归位;1-离位;2-离线',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC COMMENT='上水设备运行状态信息';


2.创建上水系统实时数据表格:

CREATE TABLE `dev_water_realtime_data`(
  `id` varchar(255) NOT NULL,
  `bureau_code` varchar(255) DEFAULT NULL COMMENT '局码',
  `station_code` varchar(255) DEFAULT NULL COMMENT '站码',
  `device_id` varchar(255) DEFAULT NULL COMMENT '设备节点编号',
  `flow` varchar(255) DEFAULT NULL COMMENT '各节点流量数据或总流量数据',
  `speed` varchar(255) DEFAULT NULL COMMENT '各节点流速数据或整体流速',
  `press` varchar(255) DEFAULT NULL COMMENT '各节点压力数据或总体压力数据',
  PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC COMMENT='上水系统实时数据';



=============================================
//postman测试:
->post
->http://localhost:8086/DeviceInterfaceService/WaterDeviceStatus
->Body
->

1.上水设备运行状态信息接口测试:
{
   "bureauCode":"Y",
   "stationCode":"XAY",
   "info":[
       {
           "deviceId":"1",
           "devStatus":"2",
           "nodePosition":"3"
       }
   ]
}


2.上水系统实时数据接口测试:
{
   "bureauCode":"Y",
   "stationCode":"XAY",
   "info":[
       {
           "deviceId":"1",
           "flow":"2",
           "speed":"3",
           "press":"4"
       }
   ]
}


=============================================
1.上水设备运行状态信息表:
   dev_water_device_status

2.上水系统实时数据表:
   dev_water_realtime_data




















posted @   sensen~||^_^|||&  阅读(195)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 记一次.NET内存居高不下排查解决与启示
点击右上角即可分享
微信分享提示