塔吊设备页面接口
This commit is contained in:
parent
4cf272fbe3
commit
5014975bb7
|
|
@ -0,0 +1,159 @@
|
|||
package com.bonus.base.common.utils;
|
||||
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface JsonHelper {
|
||||
|
||||
public String jsonSerialize(Object value);
|
||||
|
||||
public <T> T jsonDeserialize(String value, Class<?> tClass);
|
||||
|
||||
/**
|
||||
* 将任意bean转换成json字符串
|
||||
* fast json
|
||||
* @param bean
|
||||
* @param <T>
|
||||
* @return
|
||||
*/
|
||||
public static <T> String beanToJsonStr(T bean) {
|
||||
String jsonStr = JSON.toJSONString(bean);
|
||||
return jsonStr;
|
||||
}
|
||||
|
||||
/**
|
||||
* 把一个json字符串转换成bean对象
|
||||
* fast json
|
||||
* @param str
|
||||
* @param <T>
|
||||
* @return
|
||||
*/
|
||||
public static <T> T jsonStrToBean(String str, Class<T> clazz) {
|
||||
T bean = JSON.parseObject(str, clazz);
|
||||
return bean;
|
||||
}
|
||||
|
||||
/**
|
||||
* 把一个jsonObj转换成bean对象
|
||||
* fast json
|
||||
* @param jsonObj
|
||||
* @param <T>
|
||||
* @return
|
||||
*/
|
||||
public static <T> T jsonObjToBean(JSONObject jsonObj, Class<T> clazz) {
|
||||
String s = jsonObj.toJSONString();
|
||||
T bean = JSON.parseObject(s, clazz);
|
||||
return bean;
|
||||
}
|
||||
|
||||
/**
|
||||
* 把一个bean对象转换成jsonObj
|
||||
* fast json
|
||||
* @param bean
|
||||
* @param <T>
|
||||
* @return
|
||||
*/
|
||||
public static <T> JSONObject beanToJsonObj(T bean) {
|
||||
Object o = JSON.toJSON(bean);
|
||||
return (JSONObject) o;
|
||||
}
|
||||
|
||||
/**
|
||||
* 把一个jsonStr转换成jsonObj
|
||||
* fast json
|
||||
* @param str
|
||||
* @return
|
||||
*/
|
||||
public static JSONObject jsonStrToJsonObj(String str) {
|
||||
Object o = JSON.parseObject(str);
|
||||
return (JSONObject) o;
|
||||
}
|
||||
|
||||
/**
|
||||
* 把一个jsonObj转换成jsonStr
|
||||
* fast json
|
||||
* @param jsonObj
|
||||
* @return
|
||||
*/
|
||||
public static String jsonObjToJsonStr(JSONObject jsonObj) {
|
||||
String s = jsonObj.toJSONString();
|
||||
return s;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 把一个beanList对象转换成jsonArrStr
|
||||
* fast json
|
||||
* @param beanList
|
||||
* @param <T>
|
||||
* @return
|
||||
*/
|
||||
public static <T> JSONArray beanListToJsonArrStr(List<T> beanList) {
|
||||
Object o = JSON.toJSON(beanList);
|
||||
return (JSONArray) o;
|
||||
}
|
||||
|
||||
/**
|
||||
* 把一个jsonArrStr转换成beanList对象
|
||||
* fast json
|
||||
* @param jsonArrStr
|
||||
* @param <T>
|
||||
* @return
|
||||
*/
|
||||
public static <T> List<T> jsonArrStrToBeanList(String jsonArrStr,Class<T> clazz) {
|
||||
List<T> ts = JSON.parseArray(jsonArrStr, clazz);
|
||||
return ts;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 把一个JsonArr转换成JsonArrStr
|
||||
* fast json
|
||||
* @param jsonArr
|
||||
* @return
|
||||
*/
|
||||
public static String jsonArrToJsonArrStr(JSONArray jsonArr) {
|
||||
String s = JSON.toJSONString(jsonArr);
|
||||
return s;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 把一个JsonArrStr文本转换成JsonArr
|
||||
* fast json
|
||||
* @param jsonArrStr
|
||||
* @return
|
||||
*/
|
||||
public static JSONArray jsonArrStrToJsonArr(String jsonArrStr) {
|
||||
Object o = JSON.parse(jsonArrStr);
|
||||
return (JSONArray) o;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 把一个JsonArr转换成beanList
|
||||
* fast json
|
||||
* @param jsonArr
|
||||
* @return
|
||||
*/
|
||||
public static <T> List<T> jsonArrToBeanList(JSONArray jsonArr,Class<T> clazz) {
|
||||
String s = JSON.toJSONString(jsonArr);
|
||||
List<T> ts = JSON.parseArray(s, clazz);
|
||||
return ts;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 把一个beanList文本转换成JsonArr
|
||||
* fast json
|
||||
* @param beanList
|
||||
* @return
|
||||
*/
|
||||
public static <T> JSONArray beanListToJsonArr(List<T> beanList) {
|
||||
Object o = JSON.toJSON(beanList);
|
||||
return (JSONArray) o;
|
||||
}
|
||||
}
|
||||
|
|
@ -22,5 +22,10 @@ public class TypeCodeUtils {
|
|||
*/
|
||||
public final static String SJK_CODE="9000300";
|
||||
|
||||
/**
|
||||
* 塔吊设备
|
||||
*/
|
||||
public final static String TC_CODE="9000400";
|
||||
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,85 @@
|
|||
package com.bonus.base.screen.controller;
|
||||
|
||||
import com.bonus.base.basic.domain.CollectDevVo;
|
||||
import com.bonus.base.basic.domain.ConstInfoVo;
|
||||
import com.bonus.base.common.utils.TypeCodeUtils;
|
||||
import com.bonus.base.screen.domain.DeviceAlarmVo;
|
||||
import com.bonus.base.screen.domain.ProjectOverviewVo;
|
||||
import com.bonus.base.screen.domain.TowerCraneInfoVo;
|
||||
import com.bonus.base.screen.service.ExcavationDetectionService;
|
||||
import com.bonus.base.screen.service.TowerCraneDetectionService;
|
||||
import com.bonus.common.core.web.controller.BaseController;
|
||||
import com.bonus.common.core.web.domain.AjaxResult;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
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;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 塔吊监测
|
||||
* @author fl
|
||||
* @date 2025/4/18
|
||||
*/
|
||||
@Slf4j
|
||||
@RestController
|
||||
@RequestMapping("/towerCraneDetection")
|
||||
public class TowerCraneDetectionController extends BaseController {
|
||||
|
||||
@Resource
|
||||
private TowerCraneDetectionService service;
|
||||
|
||||
@ApiOperation(value = "塔吊设备列表")
|
||||
@PostMapping("/getConstDeviceList")
|
||||
public AjaxResult getCollectDeviceList(@RequestBody ConstInfoVo constInfoVo) {
|
||||
try {
|
||||
List<ConstInfoVo> collectDevVoList = service.getConstDeviceList(constInfoVo);
|
||||
return success(collectDevVoList);
|
||||
}catch (Exception e){
|
||||
log.error("查询塔吊设备列表失败",e.getMessage());
|
||||
return error("查询塔吊设备列表失败");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ApiOperation(value = "塔吊设备信息")
|
||||
@PostMapping("/getConstDeviceMsgById")
|
||||
public AjaxResult getConstDeviceMsgById(@RequestBody ConstInfoVo constInfoVo) {
|
||||
try {
|
||||
TowerCraneInfoVo vo = service.getConstDeviceMsgById(constInfoVo);
|
||||
return success(vo);
|
||||
}catch (Exception e){
|
||||
log.error("查询塔吊设备信息失败",e.getMessage());
|
||||
return error("查询塔吊设备信息失败");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ApiOperation(value = "塔吊实时运行信息")
|
||||
@PostMapping("/getTowerCraneRunMsgById")
|
||||
public AjaxResult getTowerCraneRunMsgById(@RequestBody ConstInfoVo constInfoVo) {
|
||||
try {
|
||||
return service.getTowerCraneRunMsgById(constInfoVo);
|
||||
}catch (Exception e){
|
||||
log.error("获取塔吊实时运行信息失败",e.getMessage());
|
||||
return error("塔吊实时运行信息失败");
|
||||
}
|
||||
}
|
||||
|
||||
@ApiOperation(value = "塔吊报警信息")
|
||||
@PostMapping("/getTowerCraneAlarmList")
|
||||
public AjaxResult getTowerCraneAlarmList(@RequestBody ConstInfoVo constInfoVo) {
|
||||
try {
|
||||
List<DeviceAlarmVo> deviceAlarmVoList = service.getTowerCraneAlarmList(constInfoVo);
|
||||
return success(deviceAlarmVoList);
|
||||
}catch (Exception e){
|
||||
log.error("查询塔吊报警信息失败",e.getMessage());
|
||||
return error("查询塔吊报警信息失败");
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,58 @@
|
|||
package com.bonus.base.screen.domain;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* @author fly
|
||||
* 塔吊设备信息
|
||||
*/
|
||||
@Data
|
||||
public class TowerCraneInfoVo {
|
||||
|
||||
/**
|
||||
* 设备名称
|
||||
*/
|
||||
private String name;
|
||||
/**
|
||||
* 设备编号
|
||||
*/
|
||||
private String num;
|
||||
/**
|
||||
* 设备厂家
|
||||
*/
|
||||
private String manufacturer;
|
||||
|
||||
/**
|
||||
* 型号规格
|
||||
*/
|
||||
private String model;
|
||||
|
||||
|
||||
/**
|
||||
* 所在班组
|
||||
*/
|
||||
private String team;
|
||||
|
||||
/**
|
||||
* 安装单位
|
||||
*/
|
||||
private String installationUnit;
|
||||
|
||||
/**
|
||||
* 安装时间
|
||||
*/
|
||||
private String installDate;
|
||||
|
||||
/**
|
||||
* 塔高
|
||||
*/
|
||||
private Double towerHeight;
|
||||
/**
|
||||
* 臂长
|
||||
*/
|
||||
private Integer boomLength;
|
||||
|
||||
private String faceMachineNum;
|
||||
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,38 @@
|
|||
package com.bonus.base.screen.mapper;
|
||||
|
||||
import com.bonus.base.basic.domain.CollectDevVo;
|
||||
import com.bonus.base.basic.domain.ConstInfoVo;
|
||||
import com.bonus.base.screen.domain.DeviceAlarmVo;
|
||||
import com.bonus.base.screen.domain.MapValueVo;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface TowerCraneDetectionMapper {
|
||||
/**
|
||||
* 查询塔吊设备列表
|
||||
* @param constInfoVo
|
||||
* @return
|
||||
*/
|
||||
List<ConstInfoVo> getConstDeviceList(ConstInfoVo constInfoVo);
|
||||
|
||||
/**
|
||||
* 塔吊报警信息
|
||||
* @param constInfoVo
|
||||
* @return
|
||||
*/
|
||||
List<DeviceAlarmVo> getTowerCraneAlarmList(ConstInfoVo constInfoVo);
|
||||
|
||||
/**
|
||||
* 根据id查询具体塔吊设备信息
|
||||
* @param constInfoVo
|
||||
* @return
|
||||
*/
|
||||
ConstInfoVo getConstDeviceMsgById(ConstInfoVo constInfoVo);
|
||||
|
||||
/**
|
||||
* 根据id查询具体实时运行信息
|
||||
* @param constInfoVo
|
||||
* @return
|
||||
*/
|
||||
List<MapValueVo> getTowerCraneRunMsgById(ConstInfoVo constInfoVo);
|
||||
}
|
||||
|
|
@ -0,0 +1,39 @@
|
|||
package com.bonus.base.screen.service;
|
||||
|
||||
import com.bonus.base.basic.domain.CollectDevVo;
|
||||
import com.bonus.base.basic.domain.ConstInfoVo;
|
||||
import com.bonus.base.screen.domain.DeviceAlarmVo;
|
||||
import com.bonus.base.screen.domain.ProjectOverviewVo;
|
||||
import com.bonus.base.screen.domain.TowerCraneInfoVo;
|
||||
import com.bonus.common.core.web.domain.AjaxResult;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface TowerCraneDetectionService {
|
||||
/**
|
||||
* 查询塔吊设备列表
|
||||
* @param constInfoVo
|
||||
* @return
|
||||
*/
|
||||
List<ConstInfoVo> getConstDeviceList(ConstInfoVo constInfoVo);
|
||||
|
||||
/**
|
||||
* 塔吊报警信息
|
||||
* @param constInfoVo
|
||||
* @return
|
||||
*/
|
||||
List<DeviceAlarmVo> getTowerCraneAlarmList(ConstInfoVo constInfoVo);
|
||||
|
||||
/**
|
||||
* 根据id查询具体塔吊设备信息
|
||||
* @param constInfoVo
|
||||
* @return
|
||||
*/
|
||||
TowerCraneInfoVo getConstDeviceMsgById(ConstInfoVo constInfoVo);
|
||||
/**
|
||||
* 根据id查询具体实时运行信息
|
||||
* @param constInfoVo
|
||||
* @return
|
||||
*/
|
||||
AjaxResult getTowerCraneRunMsgById(ConstInfoVo constInfoVo);
|
||||
}
|
||||
|
|
@ -0,0 +1,81 @@
|
|||
package com.bonus.base.screen.service.impl;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.bonus.base.basic.domain.ConstInfoVo;
|
||||
import com.bonus.base.common.utils.JsonHelper;
|
||||
import com.bonus.base.common.utils.TypeCodeUtils;
|
||||
import com.bonus.base.screen.domain.DeviceAlarmVo;
|
||||
import com.bonus.base.screen.domain.MapValueVo;
|
||||
import com.bonus.base.screen.domain.TowerCraneInfoVo;
|
||||
import com.bonus.base.screen.mapper.TowerCraneDetectionMapper;
|
||||
import com.bonus.base.screen.service.TowerCraneDetectionService;
|
||||
import com.bonus.common.core.web.domain.AjaxResult;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author fl
|
||||
* @date 2025/4/18
|
||||
*/
|
||||
@Slf4j
|
||||
@Service
|
||||
public class TowerCraneDetectionServiceImpl implements TowerCraneDetectionService {
|
||||
|
||||
@Resource
|
||||
private TowerCraneDetectionMapper mapper;
|
||||
|
||||
/**
|
||||
* 查询塔吊设备列表
|
||||
* @param constInfoVo
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<ConstInfoVo> getConstDeviceList(ConstInfoVo constInfoVo) {
|
||||
//设置查询类型
|
||||
constInfoVo.setTypeCode(TypeCodeUtils.TC_CODE);
|
||||
List<ConstInfoVo> collectDevVoList = mapper.getConstDeviceList(constInfoVo);
|
||||
return collectDevVoList;
|
||||
}
|
||||
|
||||
/**
|
||||
* 塔吊报警信息
|
||||
* @param constInfoVo
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<DeviceAlarmVo> getTowerCraneAlarmList(ConstInfoVo constInfoVo) {
|
||||
List<DeviceAlarmVo> deviceAlarmVoList = mapper.getTowerCraneAlarmList(constInfoVo);
|
||||
return deviceAlarmVoList;
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据id查询具体塔吊设备信息
|
||||
* @param constInfoVo
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public TowerCraneInfoVo getConstDeviceMsgById(ConstInfoVo constInfoVo) {
|
||||
ConstInfoVo c = mapper.getConstDeviceMsgById(constInfoVo);
|
||||
TowerCraneInfoVo deviceDetail = new TowerCraneInfoVo();
|
||||
if(c != null && c.getConfigData() != null){
|
||||
JSONObject jsonObject = JsonHelper.jsonStrToJsonObj(c.getConfigData());
|
||||
deviceDetail = JsonHelper.jsonObjToBean(jsonObject.getJSONObject("deviceDetail"), TowerCraneInfoVo.class);
|
||||
}
|
||||
return deviceDetail;
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据id查询具体实时运行信息
|
||||
* @param constInfoVo
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public AjaxResult getTowerCraneRunMsgById(ConstInfoVo constInfoVo) {
|
||||
List<MapValueVo> list = mapper.getTowerCraneRunMsgById(constInfoVo);
|
||||
return AjaxResult.success(list);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,53 @@
|
|||
<?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.bonus.base.screen.mapper.TowerCraneDetectionMapper">
|
||||
|
||||
|
||||
<select id="getConstDeviceList" resultType="com.bonus.base.basic.domain.ConstInfoVo">
|
||||
SELECT
|
||||
tci.id,
|
||||
tci.`name`,
|
||||
tci.`code`,
|
||||
tcd.is_online,
|
||||
tcd.dev_location
|
||||
FROM
|
||||
tb_const_info tci
|
||||
LEFT JOIN tb_collect_device tcd ON tci.id = tcd.const_id
|
||||
WHERE
|
||||
tci.type_code = #{typeCode}
|
||||
</select>
|
||||
|
||||
<select id="getConstDeviceMsgById" resultType="com.bonus.base.basic.domain.ConstInfoVo">
|
||||
SELECT
|
||||
tci.config_data
|
||||
FROM
|
||||
tb_const_info tci
|
||||
WHERE
|
||||
tci.id = #{id}
|
||||
</select>
|
||||
<select id="getTowerCraneRunMsgById" resultType="com.bonus.base.screen.domain.MapValueVo">
|
||||
SELECT
|
||||
tcda.attr_name as `name`,
|
||||
tcda.attr_val as `value`
|
||||
FROM
|
||||
tb_const_info tci
|
||||
LEFT JOIN tb_collect_device tcd ON tci.id = tcd.const_id
|
||||
LEFT JOIN tb_collect_device_attr tcda ON tcda.dev_id = tcd.id
|
||||
WHERE
|
||||
tci.id = #{id}
|
||||
</select>
|
||||
<select id="getTowerCraneAlarmList" resultType="com.bonus.base.screen.domain.DeviceAlarmVo">
|
||||
SELECT
|
||||
tcdh.create_time AS createTime,
|
||||
tcdh.remark AS remark,
|
||||
tcd.dev_name AS devName
|
||||
FROM
|
||||
tb_const_info tci
|
||||
LEFT JOIN tb_collect_device tcd ON tci.id = tcd.const_id
|
||||
LEFT JOIN tb_collect_device_his tcdh ON tcdh.dev_id = tcd.id
|
||||
WHERE
|
||||
tci.type_code = #{typeCode}
|
||||
</select>
|
||||
</mapper>
|
||||
Loading…
Reference in New Issue