diff --git a/src/main/java/com/zhgd/xmgl/modules/bridgeerectmachine/controller/BridgeErectMachineAlarmController.java b/src/main/java/com/zhgd/xmgl/modules/bridgeerectmachine/controller/BridgeErectMachineAlarmController.java new file mode 100644 index 000000000..5362c6bb9 --- /dev/null +++ b/src/main/java/com/zhgd/xmgl/modules/bridgeerectmachine/controller/BridgeErectMachineAlarmController.java @@ -0,0 +1,141 @@ +package com.zhgd.xmgl.modules.bridgeerectmachine.controller; + +import com.gexin.fastjson.JSON; +import com.zhgd.xmgl.modules.bridgeerectmachine.entity.BridgeErectMachineAlarm; +import com.zhgd.xmgl.modules.bridgeerectmachine.service.IBridgeErectMachineAlarmService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiImplicitParams; + +import java.util.HashMap; + +import springfox.documentation.annotations.ApiIgnore; + +import java.util.List; + +import com.zhgd.jeecg.common.api.vo.Result; +import org.apache.commons.collections.MapUtils; + +import org.simpleframework.xml.core.Validate; +import com.baomidou.mybatisplus.core.metadata.IPage; +import lombok.extern.slf4j.Slf4j; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + + +/** + * @Title: Controller + * @Description: 架桥机-报警数据表 + * @author: pds + * @date: 2024-01-31 + * @version: V1.0 + */ +@RestController +@RequestMapping("/xmgl/bridgeErectMachineAlarm") +@Slf4j +@Api(tags = "架桥机-报警数据表相关Api") +public class BridgeErectMachineAlarmController { + @Autowired + private IBridgeErectMachineAlarmService bridgeErectMachineAlarmService; + + /** + * 分页列表查询 + * + * @return + */ + @ApiOperation(value = "分页列表查询架桥机-报警数据表信息", notes = "分页列表查询架桥机-报警数据表信息", httpMethod = "GET") + @ApiImplicitParams({ + @ApiImplicitParam(name = "pageNo", value = "第几页", paramType = "query", required = true, dataType = "Integer"), + @ApiImplicitParam(name = "pageSize", value = "每页显示条数", paramType = "query", required = true, dataType = "Integer"), + }) + @GetMapping(value = "/page") + public Result> queryPageList(@ApiIgnore @RequestParam HashMap paramMap) { + return Result.success(bridgeErectMachineAlarmService.queryPageList(paramMap)); + } + + /** + * 列表查询 + * + * @return + */ + @ApiOperation(value = "列表查询架桥机-报警数据表信息", notes = "列表查询架桥机-报警数据表信息", httpMethod = "GET") + @GetMapping(value = "/list") + public Result> queryList(@ApiIgnore @RequestParam HashMap paramMap) { + return Result.success(bridgeErectMachineAlarmService.queryList(paramMap)); + } + + /** + * 添加 + * + * @param bridgeErectMachineAlarm + * @return + */ + @ApiOperation(value = "添加架桥机-报警数据表信息", notes = "添加架桥机-报警数据表信息", httpMethod = "POST") + @PostMapping(value = "/add") + public Result add(@RequestBody @Validate BridgeErectMachineAlarm bridgeErectMachineAlarm) { + log.info("添加架桥机-报警数据表信息:{}", JSON.toJSONString(bridgeErectMachineAlarm)); + bridgeErectMachineAlarmService.add(bridgeErectMachineAlarm); + return Result.ok(); + } + + /** + * 编辑 + * + * @param bridgeErectMachineAlarm + * @return + */ + @ApiOperation(value = "编辑架桥机-报警数据表信息", notes = "编辑架桥机-报警数据表信息", httpMethod = "POST") + @PostMapping(value = "/edit") + public Result edit(@RequestBody BridgeErectMachineAlarm bridgeErectMachineAlarm) { + bridgeErectMachineAlarmService.edit(bridgeErectMachineAlarm); + return Result.ok(); + } + + /** + * 通过id删除 + * + * @return + */ + @ApiOperation(value = "删除架桥机-报警数据表信息", notes = "删除架桥机-报警数据表信息", httpMethod = "POST") + @ApiImplicitParam(name = "id", value = "架桥机-报警数据表ID", paramType = "body", required = true, dataType = "String", example = "{\"id\":\"1\"}") + @PostMapping(value = "/delete") + public Result delete(@ApiIgnore @RequestBody HashMap map) { + String id = MapUtils.getString(map, "id"); + Result result = new Result(); + BridgeErectMachineAlarm bridgeErectMachineAlarm = bridgeErectMachineAlarmService.getById(id); + if (bridgeErectMachineAlarm == null) { + result.error500("未找到对应实体"); + } else { + boolean ok = bridgeErectMachineAlarmService.removeById(id); + if (ok) { + result.success("删除成功!"); + } + } + + return result; + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + @ApiOperation(value = "通过id查询架桥机-报警数据表信息", notes = "通过id查询架桥机-报警数据表信息", httpMethod = "GET") + @ApiImplicitParam(name = "id", value = "架桥机-报警数据表ID", paramType = "query", required = true, dataType = "Integer") + @GetMapping(value = "/queryById") + public Result queryById(@RequestParam(name = "id", required = true) String id) { + Result result = new Result(); + BridgeErectMachineAlarm bridgeErectMachineAlarm = bridgeErectMachineAlarmService.getById(id); + if (bridgeErectMachineAlarm == null) { + result.error500("未找到对应实体"); + } else { + result.setResult(bridgeErectMachineAlarm); + result.setSuccess(true); + } + return result; + } + +} diff --git a/src/main/java/com/zhgd/xmgl/modules/bridgeerectmachine/entity/BridgeErectMachineAlarm.java b/src/main/java/com/zhgd/xmgl/modules/bridgeerectmachine/entity/BridgeErectMachineAlarm.java new file mode 100644 index 000000000..5e9cad8ef --- /dev/null +++ b/src/main/java/com/zhgd/xmgl/modules/bridgeerectmachine/entity/BridgeErectMachineAlarm.java @@ -0,0 +1,145 @@ +package com.zhgd.xmgl.modules.bridgeerectmachine.entity; + +import java.io.Serializable; +import java.util.Date; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; +import org.jeecgframework.poi.excel.annotation.Excel; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + * @Description: 架桥机-报警数据表 + * @author: pds + * @date: 2024-01-31 + * @version: V1.0 + */ +@Data +@TableName("bridge_erect_machine_alarm") +@ApiModel(value = "BridgeErectMachineAlarm实体类", description = "BridgeErectMachineAlarm") +public class BridgeErectMachineAlarm implements Serializable { + private static final long serialVersionUID = 1L; + + /** + * id + */ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "id") + private java.lang.Long id; + /** + * 设备编号 + */ + @Excel(name = "设备编号", width = 15) + @ApiModelProperty(value = "设备编号") + private java.lang.String devSn; + /** + * 项目sn + */ + @Excel(name = "项目sn", width = 15) + @ApiModelProperty(value = "项目sn") + private java.lang.String projectSn; + /** + * 开始时间 + */ + @Excel(name = "开始时间", width = 15) + @ApiModelProperty(value = "开始时间") + private java.lang.String startTime; + /** + * 结束时间 + */ + @Excel(name = "结束时间", width = 15) + @ApiModelProperty(value = "结束时间") + private java.lang.String endTime; + /** + * 架桥机报警时间 + */ + @Excel(name = "架桥机报警时间", width = 20, format = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "架桥机报警时间") + private java.util.Date addTime; + /** + * 司机姓名 + */ + @Excel(name = "司机姓名", width = 15) + @ApiModelProperty(value = "司机姓名") + private java.lang.String driverName; + /** + * 司机身份证号 + */ + @Excel(name = "司机身份证号", width = 15) + @ApiModelProperty(value = "司机身份证号") + private java.lang.String driverIdCard; + /** + * 特种作业号 + */ + @Excel(name = "特种作业号", width = 15) + @ApiModelProperty(value = "特种作业号") + private java.lang.String certification; + /** + * 主钩吊重状态 0: 正常1: 报警 + */ + @Excel(name = "主钩吊重状态 0: 正常1: 报警", width = 15) + @ApiModelProperty(value = "主钩吊重状态 0: 正常1: 报警") + private java.lang.Integer masterHookWeightAlarm; + /** + * 副钩吊重状态 0: 正常1: 报警 + */ + @Excel(name = "副钩吊重状态 0: 正常1: 报警", width = 15) + @ApiModelProperty(value = "副钩吊重状态 0: 正常1: 报警") + private java.lang.Integer subHookWeightAlarm; + /** + * 小车2主钩吊重状态 0: 正常1: 报警 + */ + @Excel(name = "小车2主钩吊重状态 0: 正常1: 报警", width = 15) + @ApiModelProperty(value = "小车2主钩吊重状态 0: 正常1: 报警") + private java.lang.Integer secondMasterHookWeightAlarm; + /** + * 小车2副钩吊重状态 0: 正常1: 报警 + */ + @Excel(name = "小车2副钩吊重状态 0: 正常1: 报警", width = 15) + @ApiModelProperty(value = "小车2副钩吊重状态 0: 正常1: 报警") + private java.lang.Integer secondSubHookWeightAlarm; + /** + * 大车行程状态 0: 正常1: 报警 + */ + @Excel(name = "大车行程状态 0: 正常1: 报警", width = 15) + @ApiModelProperty(value = "大车行程状态 0: 正常1: 报警") + private java.lang.Integer largeCarRangePreAlarm; + /** + * 小车(天车)行程状态 0: 正常1: 报警 + */ + @Excel(name = "小车(天车)行程状态 0: 正常1: 报警", width = 15) + @ApiModelProperty(value = "小车(天车)行程状态 0: 正常1: 报警") + private java.lang.Integer smallCarRangePreAlarm; + /** + * 小车2行程状态 0: 正常1: 报警 + */ + @Excel(name = "小车2行程状态 0: 正常1: 报警", width = 15) + @ApiModelProperty(value = "小车2行程状态 0: 正常1: 报警") + private java.lang.Integer secondSmallCarRangePreAlarm; + /** + * 大车速度状态 0: 正常1: 报警 + */ + @Excel(name = "大车速度状态 0: 正常1: 报警", width = 15) + @ApiModelProperty(value = "大车速度状态 0: 正常1: 报警") + private java.lang.Integer largeCarSpeedAlarm; + /** + * 小车速度状态 0: 正常1: 报警 + */ + @Excel(name = "小车速度状态 0: 正常1: 报警", width = 15) + @ApiModelProperty(value = "小车速度状态 0: 正常1: 报警") + private java.lang.Integer smallCarSpeedAlarm; + /** + * 风速状态 0: 正常1: 报警 + */ + @Excel(name = "风速状态 0: 正常1: 报警", width = 15) + @ApiModelProperty(value = "风速状态 0: 正常1: 报警") + private java.lang.Integer windSpeedAlarm; + +} diff --git a/src/main/java/com/zhgd/xmgl/modules/bridgeerectmachine/entity/BridgeErectMachineData.java b/src/main/java/com/zhgd/xmgl/modules/bridgeerectmachine/entity/BridgeErectMachineData.java index a84fe118b..e46f40d09 100644 --- a/src/main/java/com/zhgd/xmgl/modules/bridgeerectmachine/entity/BridgeErectMachineData.java +++ b/src/main/java/com/zhgd/xmgl/modules/bridgeerectmachine/entity/BridgeErectMachineData.java @@ -1,16 +1,17 @@ package com.zhgd.xmgl.modules.bridgeerectmachine.entity; -import java.io.Serializable; - import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; -import lombok.Data; import com.fasterxml.jackson.annotation.JsonFormat; -import org.springframework.format.annotation.DateTimeFormat; -import org.jeecgframework.poi.excel.annotation.Excel; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.springframework.format.annotation.DateTimeFormat; + +import java.io.Serializable; /** * @Description: 架桥机生产数据 @@ -130,4 +131,8 @@ public class BridgeErectMachineData implements Serializable { @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @ApiModelProperty(value = "更新时间 yyyy-MM-dd HH:mm:ss") private java.util.Date updateDate; + + @TableField(exist = false) + @ApiModelProperty(value = "风速等级") + private java.lang.String windSpeedLevel; } diff --git a/src/main/java/com/zhgd/xmgl/modules/bridgeerectmachine/mapper/BridgeErectMachineAlarmMapper.java b/src/main/java/com/zhgd/xmgl/modules/bridgeerectmachine/mapper/BridgeErectMachineAlarmMapper.java new file mode 100644 index 000000000..8d02571d4 --- /dev/null +++ b/src/main/java/com/zhgd/xmgl/modules/bridgeerectmachine/mapper/BridgeErectMachineAlarmMapper.java @@ -0,0 +1,16 @@ +package com.zhgd.xmgl.modules.bridgeerectmachine.mapper; + +import com.zhgd.xmgl.modules.bridgeerectmachine.entity.BridgeErectMachineAlarm; +import org.apache.ibatis.annotations.Mapper; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * @Description: 架桥机-报警数据表 + * @author: pds + * @date: 2024-01-31 + * @version: V1.0 + */ +@Mapper +public interface BridgeErectMachineAlarmMapper extends BaseMapper { + +} diff --git a/src/main/java/com/zhgd/xmgl/modules/bridgeerectmachine/mapper/xml/BridgeErectMachineAlarmMapper.xml b/src/main/java/com/zhgd/xmgl/modules/bridgeerectmachine/mapper/xml/BridgeErectMachineAlarmMapper.xml new file mode 100644 index 000000000..407c65e37 --- /dev/null +++ b/src/main/java/com/zhgd/xmgl/modules/bridgeerectmachine/mapper/xml/BridgeErectMachineAlarmMapper.xml @@ -0,0 +1,4 @@ + + + + diff --git a/src/main/java/com/zhgd/xmgl/modules/bridgeerectmachine/service/IBridgeErectMachineAlarmService.java b/src/main/java/com/zhgd/xmgl/modules/bridgeerectmachine/service/IBridgeErectMachineAlarmService.java new file mode 100644 index 000000000..5bb9f0614 --- /dev/null +++ b/src/main/java/com/zhgd/xmgl/modules/bridgeerectmachine/service/IBridgeErectMachineAlarmService.java @@ -0,0 +1,25 @@ +package com.zhgd.xmgl.modules.bridgeerectmachine.service; + +import com.zhgd.xmgl.modules.bridgeerectmachine.entity.BridgeErectMachineAlarm; +import com.baomidou.mybatisplus.extension.service.IService; +import com.baomidou.mybatisplus.core.metadata.IPage; + +import java.util.HashMap; +import java.util.List; + +/** + * @Description: 架桥机-报警数据表 + * @author: pds + * @date: 2024-01-31 + * @version: V1.0 + */ +public interface IBridgeErectMachineAlarmService extends IService { + + IPage queryPageList(HashMap paramMap); + + List queryList(HashMap paramMap); + + void add(BridgeErectMachineAlarm bridgeErectMachineAlarm); + + void edit(BridgeErectMachineAlarm bridgeErectMachineAlarm); +} diff --git a/src/main/java/com/zhgd/xmgl/modules/bridgeerectmachine/service/impl/BridgeErectMachineAlarmServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/bridgeerectmachine/service/impl/BridgeErectMachineAlarmServiceImpl.java new file mode 100644 index 000000000..27c9c509f --- /dev/null +++ b/src/main/java/com/zhgd/xmgl/modules/bridgeerectmachine/service/impl/BridgeErectMachineAlarmServiceImpl.java @@ -0,0 +1,81 @@ +package com.zhgd.xmgl.modules.bridgeerectmachine.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.zhgd.jeecg.common.execption.OpenAlertException; +import com.zhgd.xmgl.modules.bridgeerectmachine.entity.BridgeErectMachineAlarm; +import com.zhgd.xmgl.modules.bridgeerectmachine.entity.BridgeErectMachineDev; +import com.zhgd.xmgl.modules.bridgeerectmachine.mapper.BridgeErectMachineAlarmMapper; +import com.zhgd.xmgl.modules.bridgeerectmachine.mapper.BridgeErectMachineDevMapper; +import com.zhgd.xmgl.modules.bridgeerectmachine.service.IBridgeErectMachineAlarmService; +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.zhgd.jeecg.common.system.query.QueryGenerator; +import com.zhgd.xmgl.util.PageUtil; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +import java.util.HashMap; +import java.util.List; + +import com.zhgd.xmgl.util.RefUtil; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.beans.factory.annotation.Autowired; + +/** + * @Description: 架桥机-报警数据表 + * @author: pds + * @date: 2024-01-31 + * @version: V1.0 + */ +@Service +@Transactional(rollbackFor = Exception.class) +public class BridgeErectMachineAlarmServiceImpl extends ServiceImpl implements IBridgeErectMachineAlarmService { + @Autowired + private BridgeErectMachineAlarmMapper bridgeErectMachineAlarmMapper; + @Autowired + private BridgeErectMachineDevMapper bridgeErectMachineDevMapper; + + @Override + public IPage queryPageList(HashMap paramMap) { + QueryWrapper queryWrapper = getQueryWrapper(paramMap); + Page page = PageUtil.getPage(paramMap); + IPage pageList = this.page(page, queryWrapper); + pageList.setRecords(dealList(pageList.getRecords())); + return pageList; + } + + @Override + public List queryList(HashMap paramMap) { + QueryWrapper queryWrapper = getQueryWrapper(paramMap); + return dealList(this.list(queryWrapper)); + } + + private QueryWrapper getQueryWrapper(HashMap paramMap) { + String alias = ""; + QueryWrapper queryWrapper = QueryGenerator.initPageQueryWrapper(BridgeErectMachineAlarm.class, paramMap, alias); + queryWrapper.orderByDesc(alias + RefUtil.fieldNameUlc(BridgeErectMachineAlarm::getId)); + return queryWrapper; + } + + private List dealList(List list) { + return list; + } + + @Override + public void add(BridgeErectMachineAlarm bridgeErectMachineAlarm) { + BridgeErectMachineDev dev = bridgeErectMachineDevMapper.selectOne(new LambdaQueryWrapper() + .eq(BridgeErectMachineDev::getDevSn, bridgeErectMachineAlarm.getDevSn())); + if (dev == null) { + throw new OpenAlertException("设备编号不存在"); + } + bridgeErectMachineAlarm.setProjectSn(dev.getProjectSn()); + bridgeErectMachineAlarm.setId(null); + baseMapper.insert(bridgeErectMachineAlarm); + } + + @Override + public void edit(BridgeErectMachineAlarm bridgeErectMachineAlarm) { + baseMapper.updateById(bridgeErectMachineAlarm); + } +} diff --git a/src/main/java/com/zhgd/xmgl/modules/bridgeerectmachine/service/impl/BridgeErectMachineDataServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/bridgeerectmachine/service/impl/BridgeErectMachineDataServiceImpl.java index 68ab8d69d..54776d437 100644 --- a/src/main/java/com/zhgd/xmgl/modules/bridgeerectmachine/service/impl/BridgeErectMachineDataServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/bridgeerectmachine/service/impl/BridgeErectMachineDataServiceImpl.java @@ -9,6 +9,7 @@ import com.zhgd.xmgl.modules.bridgeerectmachine.entity.vo.CountTodayVo; import com.zhgd.xmgl.modules.bridgeerectmachine.mapper.BridgeErectMachineDataMapper; import com.zhgd.xmgl.modules.bridgeerectmachine.mapper.BridgeErectMachineDevMapper; import com.zhgd.xmgl.modules.bridgeerectmachine.service.IBridgeErectMachineDataService; +import com.zhgd.xmgl.util.AqiUtil; import com.zhgd.xmgl.util.DateUtils; import org.apache.commons.collections.MapUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -81,7 +82,11 @@ public class BridgeErectMachineDataServiceImpl extends ServiceImpl map) { - return baseMapper.selectNewestData(map); + BridgeErectMachineData data = baseMapper.selectNewestData(map); + if (data != null) { + data.setWindSpeedLevel(AqiUtil.getWindSpeedLevel(data.getWindSpeed())); + } + return data; } @Override diff --git a/src/main/java/com/zhgd/xmgl/security/WebSecurityConfig.java b/src/main/java/com/zhgd/xmgl/security/WebSecurityConfig.java index 2642dca4c..a93996829 100644 --- a/src/main/java/com/zhgd/xmgl/security/WebSecurityConfig.java +++ b/src/main/java/com/zhgd/xmgl/security/WebSecurityConfig.java @@ -323,6 +323,7 @@ public class WebSecurityConfig extends WebSecurityConfigurerAdapter { .antMatchers("/xmgl/pitchMixStationProdData/add").permitAll() .antMatchers("/xmgl/paveRecord/add").permitAll() .antMatchers("/xmgl/paveCompactionRecord/add").permitAll() + .antMatchers("/xmgl/bridgeErectMachineAlarm/add").permitAll() .antMatchers(HttpMethod.OPTIONS, "/**").anonymous() .anyRequest().authenticated() // 剩下所有的验证都需要验证. .and()