14 changed files with 715 additions and 2 deletions
@ -0,0 +1,80 @@ |
|||
package com.kms.yxgh.sz.controller; |
|||
|
|||
import com.baomidou.mybatisplus.core.metadata.IPage; |
|||
import com.kms.yxgh.base.Response; |
|||
import com.kms.yxgh.sz.dto.SzDeviceCheckingDetailDto; |
|||
import com.kms.yxgh.sz.dto.SzDeviceCheckingQueDto; |
|||
import com.kms.yxgh.sz.service.SzDeviceCheckingService; |
|||
import com.shuili.common.annotation.Log; |
|||
import com.shuili.common.core.domain.SearchParam; |
|||
import com.shuili.common.enums.BusinessType; |
|||
import io.swagger.annotations.Api; |
|||
import io.swagger.annotations.ApiOperation; |
|||
import lombok.AllArgsConstructor; |
|||
import org.springframework.web.bind.annotation.*; |
|||
|
|||
/** |
|||
* @ClassName: SzDeviceCheckingController |
|||
* @Description: TODO |
|||
* @Date: 2024/3/11 上午11:54 |
|||
* * |
|||
* @author: hxh |
|||
* @version: 1.0 |
|||
*/ |
|||
@RestController |
|||
@AllArgsConstructor |
|||
@RequestMapping("/run/sz/device") |
|||
@Api(tags = "水闸动态检测设备") |
|||
public class SzDeviceCheckingController { |
|||
|
|||
private final SzDeviceCheckingService szDeviceCheckingService; |
|||
|
|||
/** |
|||
* 查询水闸动态检测设备列表 |
|||
*/ |
|||
@ApiOperation(value = "查询水闸动态检测设备列表", notes = "查询水闸动态检测设备列表") |
|||
@PostMapping("/list") |
|||
public IPage<SzDeviceCheckingDetailDto> list(@RequestBody SearchParam<SzDeviceCheckingQueDto> sp) { |
|||
return szDeviceCheckingService.search(sp); |
|||
} |
|||
|
|||
/** |
|||
* 查询水闸动态检测设备详情 |
|||
*/ |
|||
@ApiOperation(value = "查询水闸动态检测设备详情", notes = "查询水闸动态检测设备详情") |
|||
@GetMapping("/{id}") |
|||
public Response<SzDeviceCheckingDetailDto> detail(@RequestBody String id) { |
|||
return Response.ok(szDeviceCheckingService.detail(id)); |
|||
} |
|||
|
|||
/** |
|||
* 新增水闸动态检测设备 |
|||
*/ |
|||
@ApiOperation(value = "新增水闸动态检测设备", notes = "新增水闸动态检测设备") |
|||
@Log(title = "新增水闸动态检测设备", businessType = BusinessType.UPDATE) |
|||
@PostMapping |
|||
public Response<SzDeviceCheckingDetailDto> add(@RequestBody SzDeviceCheckingDetailDto szDeviceCheckingDetailDto) { |
|||
return Response.ok(szDeviceCheckingService.add(szDeviceCheckingDetailDto)); |
|||
} |
|||
|
|||
/** |
|||
* 修改水闸动态检测设备 |
|||
*/ |
|||
@ApiOperation(value = "修改水闸动态检测设备", notes = "修改水闸动态检测设备") |
|||
@Log(title = "修改水闸动态检测设备", businessType = BusinessType.UPDATE) |
|||
@PutMapping |
|||
public Response<SzDeviceCheckingDetailDto> update(@RequestBody SzDeviceCheckingDetailDto szDeviceCheckingDetailDto) { |
|||
return Response.ok(szDeviceCheckingService.update(szDeviceCheckingDetailDto)); |
|||
} |
|||
|
|||
/** |
|||
* 删除水闸动态检测设备 |
|||
*/ |
|||
@ApiOperation(value = "删除水闸动态检测设备", notes = "删除水闸动态检测设备") |
|||
@Log(title = "删除水闸动态检测设备", businessType = BusinessType.DELETE) |
|||
@DeleteMapping("/{id}") |
|||
public Response<Boolean> delete(@PathVariable String id) { |
|||
return Response.ok(szDeviceCheckingService.delete(id)); |
|||
} |
|||
|
|||
} |
@ -0,0 +1,54 @@ |
|||
package com.kms.yxgh.sz.controller; |
|||
|
|||
import com.baomidou.mybatisplus.core.metadata.IPage; |
|||
import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
|||
import com.baomidou.mybatisplus.extension.api.R; |
|||
import com.kms.yxgh.sz.domain.SzDeviceCheckingRecord; |
|||
import com.kms.yxgh.sz.dto.SzDeviceCheckingDetailDto; |
|||
import com.kms.yxgh.sz.dto.SzDeviceCheckingRecordDetailDto; |
|||
import com.kms.yxgh.sz.dto.SzDeviceCheckingRecordQueDto; |
|||
import com.kms.yxgh.sz.service.SzDeviceCheckingRecordService; |
|||
import com.shuili.common.annotation.Log; |
|||
import com.shuili.common.core.domain.SearchParam; |
|||
import com.shuili.common.enums.BusinessType; |
|||
import io.swagger.annotations.Api; |
|||
import io.swagger.annotations.ApiOperation; |
|||
import lombok.AllArgsConstructor; |
|||
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; |
|||
|
|||
/** |
|||
* @ClassName: SzDeviceCheckingRecordController |
|||
* @Description: TODO |
|||
* @Date: 2024/3/11 下午3:00 |
|||
* * |
|||
* @author: hxh |
|||
* @version: 1.0 |
|||
*/ |
|||
|
|||
@RestController |
|||
@AllArgsConstructor |
|||
@RequestMapping("/run/sz/device/record") |
|||
@Api(tags = "水闸动态检测设备记录") |
|||
public class SzDeviceCheckingRecordController { |
|||
|
|||
private final SzDeviceCheckingRecordService szDeviceCheckingRecordService; |
|||
|
|||
/** |
|||
* 查询水闸动态检测设备记录列表 |
|||
*/ |
|||
@RequestMapping("/list") |
|||
public IPage<SzDeviceCheckingRecordDetailDto> list(@RequestBody SearchParam<SzDeviceCheckingRecordQueDto> sp) { |
|||
return szDeviceCheckingRecordService.search(sp); |
|||
} |
|||
|
|||
//新增水闸动态检测设备记录
|
|||
@PostMapping |
|||
@Log(title = "新增水闸动态检测设备记录", businessType = BusinessType.UPDATE) |
|||
@ApiOperation(value = "新增水闸动态检测设备记录", notes = "新增水闸动态检测设备记录") |
|||
public SzDeviceCheckingRecordDetailDto add(@RequestBody SzDeviceCheckingRecordDetailDto szDeviceCheckingRecordDetailDto) { |
|||
return szDeviceCheckingRecordService.add(szDeviceCheckingRecordDetailDto); |
|||
} |
|||
} |
@ -0,0 +1,63 @@ |
|||
package com.kms.yxgh.sz.domain; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.TableField; |
|||
import com.baomidou.mybatisplus.annotation.TableName; |
|||
import com.kms.yxgh.base.SyBaseEntity; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* 水闸动态检测设备表 bs_sgc_sz_dtsb |
|||
* |
|||
* @author sy |
|||
* @date 2024-01-04 |
|||
*/ |
|||
@TableName("bs_sgc_sz_dtsb") |
|||
@Data |
|||
public class SzDeviceChecking extends SyBaseEntity { |
|||
private static final long serialVersionUID = 1L; |
|||
|
|||
@TableField("WAGA_CODE") |
|||
private String wagaCode; |
|||
|
|||
/** |
|||
* 设备类型 |
|||
*/ |
|||
@TableField("TYPE") |
|||
private int type; |
|||
|
|||
/** |
|||
* 设备名称 |
|||
*/ |
|||
@TableField("NAME") |
|||
private String name; |
|||
|
|||
/** |
|||
* 设备id |
|||
*/ |
|||
@TableField("DEVICE_ID") |
|||
private String deviceId; |
|||
|
|||
/** |
|||
* 设备信息 |
|||
*/ |
|||
@TableField("MESSAGE") |
|||
private String message; |
|||
|
|||
/** |
|||
* 预警类型 |
|||
*/ |
|||
@TableField("WARNING_TYPE") |
|||
private String warningType; |
|||
|
|||
/** |
|||
* 预警等级 |
|||
*/ |
|||
@TableField("WARNING_LEVEL") |
|||
private String warningLevel; |
|||
|
|||
/** |
|||
* 阈值配置 |
|||
*/ |
|||
@TableField("CONFIG") |
|||
private String config; |
|||
} |
@ -0,0 +1,57 @@ |
|||
package com.kms.yxgh.sz.domain; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.TableField; |
|||
import com.baomidou.mybatisplus.annotation.TableName; |
|||
import com.kms.yxgh.base.SyBaseEntity; |
|||
import lombok.Data; |
|||
|
|||
import java.util.Date; |
|||
|
|||
/** |
|||
* 水闸动态检测记录表 bs_sgc_sz_dtsbr |
|||
* |
|||
* @author sy |
|||
* @date 2024-01-04 |
|||
*/ |
|||
@TableName("bs_sgc_sz_dtsbr") |
|||
@Data |
|||
public class SzDeviceCheckingRecord extends SyBaseEntity { |
|||
private static final long serialVersionUID = 1L; |
|||
|
|||
@TableField("WAGA_CODE") |
|||
private String wagaCode; |
|||
|
|||
/** |
|||
* 设备id |
|||
*/ |
|||
@TableField("DEVICE_ID") |
|||
private String deviceId; |
|||
|
|||
/** |
|||
* 预警类型 |
|||
*/ |
|||
@TableField("WARNING_TYPE") |
|||
private String warningType; |
|||
|
|||
/** |
|||
* 预警等级 |
|||
*/ |
|||
@TableField("WARNING_LEVEL") |
|||
private String warningLevel; |
|||
|
|||
/** |
|||
* 预警数据 |
|||
*/ |
|||
@TableField("WARNING_DATA") |
|||
private String warningData; |
|||
|
|||
/** |
|||
* 预警时间 |
|||
*/ |
|||
@TableField("WARNING_TIME") |
|||
private Date warningTime; |
|||
|
|||
@TableField(exist = false) |
|||
private String remark; |
|||
|
|||
} |
@ -0,0 +1,91 @@ |
|||
package com.kms.yxgh.sz.dto; |
|||
|
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import java.util.Date; |
|||
import java.util.List; |
|||
|
|||
/** |
|||
* @ClassName: SzDeviceCheckingDetailDto |
|||
* @Description: TODO |
|||
* @Date: 2024/3/11 下午12:02 |
|||
* * |
|||
* @author: hxh |
|||
* @version: 1.0 |
|||
*/ |
|||
|
|||
@Data |
|||
@ApiModel("水闸动态检测设备详情") |
|||
public class SzDeviceCheckingDetailDto { |
|||
|
|||
@ApiModelProperty("id") |
|||
private String id; |
|||
|
|||
@ApiModelProperty("水闸编码") |
|||
private String wagaCode; |
|||
|
|||
/** |
|||
* 设备类型 |
|||
*/ |
|||
@ApiModelProperty("设备类型") |
|||
private int type; |
|||
|
|||
/** |
|||
* 设备名称 |
|||
*/ |
|||
@ApiModelProperty("设备名称") |
|||
private String name; |
|||
|
|||
/** |
|||
* 设备id |
|||
*/ |
|||
@ApiModelProperty("设备id") |
|||
private String deviceId; |
|||
|
|||
/** |
|||
* 设备信息 |
|||
*/ |
|||
@ApiModelProperty("设备信息") |
|||
private String message; |
|||
|
|||
/** |
|||
* 预警类型 |
|||
*/ |
|||
@ApiModelProperty("预警类型") |
|||
private String warningType; |
|||
|
|||
/** |
|||
* 预警等级 |
|||
*/ |
|||
@ApiModelProperty("预警等级") |
|||
private String warningLevel; |
|||
|
|||
@ApiModelProperty("阈值配置") |
|||
private List<Config> configs; |
|||
|
|||
@ApiModelProperty("创建时间") |
|||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
|||
private Date createTime; |
|||
|
|||
@ApiModelProperty("更新时间") |
|||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
|||
private Date updateTime; |
|||
|
|||
|
|||
@Data |
|||
public static class Config { |
|||
@ApiModelProperty("最大阈值") |
|||
private String maxThreshold; |
|||
|
|||
|
|||
@ApiModelProperty("最小阈值") |
|||
private String minThreshold; |
|||
|
|||
@ApiModelProperty("上报间隔(分钟)") |
|||
private String reportInterval; |
|||
|
|||
} |
|||
} |
@ -0,0 +1,30 @@ |
|||
package com.kms.yxgh.sz.dto; |
|||
|
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* @ClassName: SzDeviceCheckingQueDto |
|||
* @Description: TODO |
|||
* @Date: 2024/3/11 下午12:00 |
|||
* * |
|||
* @author: hxh |
|||
* @version: 1.0 |
|||
*/ |
|||
|
|||
@Data |
|||
@ApiModel("水闸动态检测设备查询") |
|||
public class SzDeviceCheckingQueDto { |
|||
|
|||
@ApiModelProperty("水闸编码") |
|||
private String wagaCode; |
|||
|
|||
@ApiModelProperty("设备类型") |
|||
private String type; |
|||
|
|||
@ApiModelProperty("设备名称") |
|||
private String name; |
|||
@ApiModelProperty("预警级别") |
|||
private String warningLevel; |
|||
} |
@ -0,0 +1,53 @@ |
|||
package com.kms.yxgh.sz.dto; |
|||
|
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import java.util.Date; |
|||
|
|||
/** |
|||
* @ClassName: SzDeviceCheckingRecordDetailDto |
|||
* @Description: TODO |
|||
* @Date: 2024/3/11 下午3:09 |
|||
* * |
|||
* @author: hxh |
|||
* @version: 1.0 |
|||
*/ |
|||
|
|||
@Data |
|||
public class SzDeviceCheckingRecordDetailDto { |
|||
|
|||
@ApiModelProperty("id") |
|||
private String id; |
|||
|
|||
@ApiModelProperty("水闸编码") |
|||
private String wagaCode; |
|||
|
|||
@ApiModelProperty("设备id") |
|||
private String deviceId; |
|||
|
|||
@ApiModelProperty("预警类型") |
|||
private String warningType; |
|||
|
|||
/** |
|||
* 预警等级 |
|||
*/ |
|||
@ApiModelProperty("预警等级") |
|||
private String warningLevel; |
|||
|
|||
/** |
|||
* 预警时间 |
|||
*/ |
|||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") |
|||
@ApiModelProperty("预警时间") |
|||
private Date warningTime; |
|||
|
|||
/** |
|||
* 预警数据 |
|||
*/ |
|||
@ApiModelProperty("预警数据") |
|||
private String warningData; |
|||
|
|||
|
|||
} |
@ -0,0 +1,39 @@ |
|||
package com.kms.yxgh.sz.dto; |
|||
|
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import java.util.Date; |
|||
|
|||
/** |
|||
* @ClassName: SzDeviceCheckingRecordQueDto |
|||
* @Description: TODO |
|||
* @Date: 2024/3/11 下午12:00 |
|||
* * |
|||
* @author: hxh |
|||
* @version: 1.0 |
|||
*/ |
|||
|
|||
@Data |
|||
@ApiModel("水闸动态检测记录查询") |
|||
public class SzDeviceCheckingRecordQueDto { |
|||
|
|||
@ApiModelProperty("水闸编码") |
|||
private String wagaCode; |
|||
|
|||
@ApiModelProperty("预警级别") |
|||
private String warningLevel; |
|||
|
|||
@ApiModelProperty("预警类型") |
|||
private String warningType; |
|||
|
|||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") |
|||
@ApiModelProperty("预警开始时间") |
|||
private Date warningStartTime; |
|||
|
|||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") |
|||
@ApiModelProperty("预警结束时间") |
|||
private Date warningEndTime; |
|||
} |
@ -0,0 +1,16 @@ |
|||
package com.kms.yxgh.sz.mapper; |
|||
|
|||
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
|||
import com.kms.yxgh.sz.domain.SzDeviceChecking; |
|||
import org.springframework.stereotype.Repository; |
|||
|
|||
/** |
|||
* 水闸动态检测设备Mapper接口 |
|||
* |
|||
* @author sy |
|||
* @date 2023-11-09 |
|||
*/ |
|||
@Repository |
|||
public interface SzDeviceCheckingMapper extends BaseMapper<SzDeviceChecking> { |
|||
|
|||
} |
@ -0,0 +1,16 @@ |
|||
package com.kms.yxgh.sz.mapper; |
|||
|
|||
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
|||
import com.kms.yxgh.sz.domain.SzDeviceCheckingRecord; |
|||
import org.springframework.stereotype.Repository; |
|||
|
|||
/** |
|||
* 水闸动态检测记录Mapper接口 |
|||
* |
|||
* @author sy |
|||
* @date 2023-11-09 |
|||
*/ |
|||
@Repository |
|||
public interface SzDeviceCheckingRecordMapper extends BaseMapper<SzDeviceCheckingRecord> { |
|||
|
|||
} |
@ -0,0 +1,65 @@ |
|||
package com.kms.yxgh.sz.service; |
|||
|
|||
import com.baomidou.mybatisplus.core.conditions.Wrapper; |
|||
import com.baomidou.mybatisplus.core.metadata.IPage; |
|||
import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
|||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
|||
import com.kms.yxgh.sz.domain.SzDeviceCheckingRecord; |
|||
import com.kms.yxgh.sz.dto.SzDeviceCheckingRecordDetailDto; |
|||
import com.kms.yxgh.sz.dto.SzDeviceCheckingRecordQueDto; |
|||
import com.kms.yxgh.sz.mapper.SzDeviceCheckingRecordMapper; |
|||
import com.kms.yxgh.util.BeanCopyUtils; |
|||
import com.shuili.common.core.domain.SearchParam; |
|||
import com.shuili.common.core.service.BaseService; |
|||
import com.shuili.common.utils.StringUtils; |
|||
import lombok.AllArgsConstructor; |
|||
import org.springframework.stereotype.Service; |
|||
|
|||
import java.util.function.Function; |
|||
|
|||
/** |
|||
* @ClassName: SzDeviceCheckingRecordService |
|||
* @Description: TODO |
|||
* @Date: 2024/3/11 下午3:02 |
|||
* * |
|||
* @author: hxh |
|||
* @version: 1.0 |
|||
*/ |
|||
|
|||
@Service |
|||
@AllArgsConstructor |
|||
public class SzDeviceCheckingRecordService extends BaseService<SzDeviceCheckingRecordMapper, SzDeviceCheckingRecord> { |
|||
|
|||
|
|||
public SzDeviceCheckingRecordDetailDto add(SzDeviceCheckingRecordDetailDto szDeviceCheckingRecordDetailDto) { |
|||
SzDeviceCheckingRecord szDeviceCheckingRecord = BeanCopyUtils.copy(szDeviceCheckingRecordDetailDto, SzDeviceCheckingRecord.class); |
|||
this.baseMapper.insert(szDeviceCheckingRecord); |
|||
return szDeviceCheckingRecordDetailDto; |
|||
} |
|||
|
|||
public IPage<SzDeviceCheckingRecordDetailDto> search(SearchParam<SzDeviceCheckingRecordQueDto> sp) { |
|||
Page<SzDeviceCheckingRecord> page = new Page<>(sp.getPageNum(), sp.getPageSize()); |
|||
SzDeviceCheckingRecordQueDto query = sp.getData(); |
|||
Wrapper<SzDeviceCheckingRecord> wrapper = Wrappers.<SzDeviceCheckingRecord>lambdaQuery() |
|||
.eq(StringUtils.isNotBlank(query.getWagaCode()), SzDeviceCheckingRecord::getWagaCode, query.getWagaCode()) |
|||
.eq(StringUtils.isNotBlank(query.getWarningLevel()), SzDeviceCheckingRecord::getWarningLevel, query.getWarningLevel()) |
|||
.eq(StringUtils.isNotBlank(query.getWarningType()), SzDeviceCheckingRecord::getWarningType, query.getWarningType()) |
|||
.between(query.getWarningStartTime() != null && query.getWarningEndTime() != null, SzDeviceCheckingRecord::getWarningTime, query.getWarningStartTime(), query.getWarningEndTime()); |
|||
Page<SzDeviceCheckingRecord> szDeviceCheckingRecordPage = this.baseMapper.selectPage(page, wrapper); |
|||
return szDeviceCheckingRecordPage.convert(getSzDeviceCheckingRecordDetailDtoFunction()); |
|||
|
|||
} |
|||
|
|||
private Function<? super SzDeviceCheckingRecord, ? extends SzDeviceCheckingRecordDetailDto> getSzDeviceCheckingRecordDetailDtoFunction() { |
|||
return item -> { |
|||
SzDeviceCheckingRecordDetailDto dto = new SzDeviceCheckingRecordDetailDto(); |
|||
dto.setDeviceId(item.getDeviceId()); |
|||
dto.setWarningData(item.getWarningData()); |
|||
dto.setWarningLevel(item.getWarningLevel()); |
|||
dto.setWarningTime(item.getWarningTime()); |
|||
dto.setWarningType(item.getWarningType()); |
|||
dto.setWagaCode(item.getWagaCode()); |
|||
return dto; |
|||
}; |
|||
} |
|||
} |
@ -0,0 +1,99 @@ |
|||
package com.kms.yxgh.sz.service; |
|||
|
|||
import com.alibaba.fastjson.JSON; |
|||
import com.alibaba.fastjson.TypeReference; |
|||
import com.baomidou.mybatisplus.core.conditions.Wrapper; |
|||
import com.baomidou.mybatisplus.core.metadata.IPage; |
|||
import com.baomidou.mybatisplus.core.toolkit.StringUtils; |
|||
import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
|||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
|||
import com.kms.yxgh.sz.domain.SzDeviceChecking; |
|||
import com.kms.yxgh.sz.dto.SzDeviceCheckingDetailDto; |
|||
import com.kms.yxgh.sz.dto.SzDeviceCheckingQueDto; |
|||
import com.kms.yxgh.sz.mapper.SzDeviceCheckingMapper; |
|||
import com.kms.yxgh.util.BeanCopyUtils; |
|||
import com.shuili.common.core.domain.SearchParam; |
|||
import com.shuili.common.core.service.BaseService; |
|||
import lombok.AllArgsConstructor; |
|||
import org.springframework.stereotype.Service; |
|||
import org.springframework.transaction.annotation.Transactional; |
|||
|
|||
import java.util.List; |
|||
import java.util.function.Function; |
|||
|
|||
/** |
|||
* @ClassName: SzDeviceCheckingService |
|||
* @Description: TODO |
|||
* @Date: 2024/3/11 上午11:46 |
|||
* * |
|||
* @author: hxh |
|||
* @version: 1.0 |
|||
*/ |
|||
|
|||
@Service |
|||
@AllArgsConstructor |
|||
public class SzDeviceCheckingService extends BaseService<SzDeviceCheckingMapper, SzDeviceChecking> { |
|||
|
|||
|
|||
public IPage<SzDeviceCheckingDetailDto> search(SearchParam<SzDeviceCheckingQueDto> sp) { |
|||
Page<SzDeviceChecking> page = new Page<>(sp.getPageNum(), sp.getPageSize()); |
|||
SzDeviceCheckingQueDto query = sp.getData(); |
|||
Wrapper<SzDeviceChecking> wrapper = Wrappers.<SzDeviceChecking>lambdaQuery() |
|||
.like(StringUtils.isNotBlank(query.getName()), SzDeviceChecking::getName, query.getName()) |
|||
.eq(StringUtils.isNotBlank(query.getType()), SzDeviceChecking::getType, query.getType()) |
|||
.eq(StringUtils.isNotBlank(query.getWagaCode()), SzDeviceChecking::getWagaCode, query.getWagaCode()) |
|||
.eq(StringUtils.isNotBlank(query.getWarningLevel()), SzDeviceChecking::getWarningLevel, query.getWarningLevel()); |
|||
Page<SzDeviceChecking> szDeviceCheckingPage = this.baseMapper.selectPage(page, wrapper); |
|||
return szDeviceCheckingPage.convert(getSzDeviceCheckingSzDeviceCheckingDetailDtoFunction()); |
|||
|
|||
} |
|||
|
|||
private static Function<SzDeviceChecking, SzDeviceCheckingDetailDto> getSzDeviceCheckingSzDeviceCheckingDetailDtoFunction() { |
|||
return item -> { |
|||
SzDeviceCheckingDetailDto dto = new SzDeviceCheckingDetailDto(); |
|||
dto.setDeviceId(item.getDeviceId()); |
|||
dto.setMessage(item.getMessage()); |
|||
dto.setName(item.getName()); |
|||
dto.setType(item.getType()); |
|||
dto.setWarningType(item.getWarningType()); |
|||
dto.setWagaCode(item.getWagaCode()); |
|||
dto.setConfigs(JSON.parseObject(item.getConfig(), new TypeReference<List<SzDeviceCheckingDetailDto.Config>>() { |
|||
})); |
|||
return dto; |
|||
}; |
|||
} |
|||
|
|||
public SzDeviceCheckingDetailDto detail(String id) { |
|||
SzDeviceChecking szDeviceChecking = this.baseMapper.selectById(id); |
|||
return getSzDeviceCheckingSzDeviceCheckingDetailDtoFunction().apply(szDeviceChecking); |
|||
} |
|||
|
|||
@Transactional(rollbackFor = Exception.class) |
|||
public SzDeviceCheckingDetailDto add(SzDeviceCheckingDetailDto szDeviceCheckingDetailDto) { |
|||
SzDeviceChecking szDeviceChecking = BeanCopyUtils.copy(szDeviceCheckingDetailDto, SzDeviceChecking.class); |
|||
if (szDeviceChecking != null) { |
|||
szDeviceChecking.setConfig(JSON.toJSONString(szDeviceCheckingDetailDto.getConfigs())); |
|||
this.baseMapper.insert(szDeviceChecking); |
|||
szDeviceCheckingDetailDto.setId(szDeviceChecking.getId()); |
|||
} |
|||
return szDeviceCheckingDetailDto; |
|||
} |
|||
|
|||
@Transactional(rollbackFor = Exception.class) |
|||
public SzDeviceCheckingDetailDto update(SzDeviceCheckingDetailDto szDeviceCheckingDetailDto) { |
|||
if (szDeviceCheckingDetailDto == null || StringUtils.isBlank(szDeviceCheckingDetailDto.getId())) { |
|||
return null; |
|||
} |
|||
SzDeviceChecking szDeviceChecking = BeanCopyUtils.copy(szDeviceCheckingDetailDto, SzDeviceChecking.class); |
|||
if (szDeviceChecking != null) { |
|||
szDeviceChecking.setConfig(JSON.toJSONString(szDeviceCheckingDetailDto.getConfigs())); |
|||
} |
|||
this.baseMapper.updateById(szDeviceChecking); |
|||
return szDeviceCheckingDetailDto; |
|||
} |
|||
|
|||
@Transactional(rollbackFor = Exception.class) |
|||
public boolean delete(String id) { |
|||
return this.baseMapper.deleteById(id) > 0; |
|||
} |
|||
} |
Loading…
Reference in new issue