diff --git a/cs-device/cs-device-api/src/main/java/com/njcn/csdevice/api/WlRecordFeignClient.java b/cs-device/cs-device-api/src/main/java/com/njcn/csdevice/api/WlRecordFeignClient.java index fb5027d..3ae88f8 100644 --- a/cs-device/cs-device-api/src/main/java/com/njcn/csdevice/api/WlRecordFeignClient.java +++ b/cs-device/cs-device-api/src/main/java/com/njcn/csdevice/api/WlRecordFeignClient.java @@ -1,14 +1,25 @@ package com.njcn.csdevice.api; +import com.njcn.common.pojo.annotation.OperateInfo; +import com.njcn.common.pojo.constant.OperateType; import com.njcn.common.pojo.constant.ServerInfo; +import com.njcn.common.pojo.enums.common.LogEnum; +import com.njcn.common.pojo.enums.response.CommonResponseEnum; import com.njcn.common.pojo.response.HttpResult; +import com.njcn.common.utils.HttpResultUtil; +import com.njcn.common.utils.LogUtil; import com.njcn.csdevice.api.fallback.WlRecordClientFallbackFactory; +import com.njcn.csdevice.pojo.param.WlRecordParam; import com.njcn.csdevice.pojo.po.WlRecord; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiOperation; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; +import java.util.List; + /** * @author xy */ @@ -21,4 +32,21 @@ public interface WlRecordFeignClient { */ @PostMapping("/addBaseData") HttpResult addBaseData(@RequestBody @Validated WlRecord wlRecord); + + /** + * 批量新增原始数据 + */ + @PostMapping("/addBaseDataList") + HttpResult addBaseDataList(@RequestBody @Validated List wlRecord); + + /** + * 按条件查询设备基础数据 + * @param param + * @return + */ + @PostMapping("/findDevBaseData") + HttpResult findDevBaseData(@RequestBody @Validated WlRecordParam.Record param); + + @PostMapping("/updateTestRecord") + HttpResult updateTestRecord(@RequestBody @Validated WlRecordParam.UpdateRecord record); } diff --git a/cs-device/cs-device-api/src/main/java/com/njcn/csdevice/api/fallback/WlRecordClientFallbackFactory.java b/cs-device/cs-device-api/src/main/java/com/njcn/csdevice/api/fallback/WlRecordClientFallbackFactory.java index 24cc292..06a2283 100644 --- a/cs-device/cs-device-api/src/main/java/com/njcn/csdevice/api/fallback/WlRecordClientFallbackFactory.java +++ b/cs-device/cs-device-api/src/main/java/com/njcn/csdevice/api/fallback/WlRecordClientFallbackFactory.java @@ -4,11 +4,14 @@ import com.njcn.common.pojo.enums.response.CommonResponseEnum; import com.njcn.common.pojo.exception.BusinessException; import com.njcn.common.pojo.response.HttpResult; import com.njcn.csdevice.api.WlRecordFeignClient; +import com.njcn.csdevice.pojo.param.WlRecordParam; import com.njcn.csdevice.pojo.po.WlRecord; import feign.hystrix.FallbackFactory; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; +import java.util.List; + /** * @author xy */ @@ -30,6 +33,24 @@ public class WlRecordClientFallbackFactory implements FallbackFactory addBaseDataList(List wlRecord) { + log.error("{}异常,降级处理,异常为:{}","批量新增原始数据",cause.toString()); + throw new BusinessException(finalExceptionEnum); + } + + @Override + public HttpResult findDevBaseData(WlRecordParam.Record param) { + log.error("{}异常,降级处理,异常为:{}","查询装置基础数据",cause.toString()); + throw new BusinessException(finalExceptionEnum); + } + + @Override + public HttpResult updateTestRecord(WlRecordParam.UpdateRecord record) { + log.error("{}异常,降级处理,异常为:{}","修改测试项",cause.toString()); + throw new BusinessException(finalExceptionEnum); + } }; } } diff --git a/cs-device/cs-device-api/src/main/java/com/njcn/csdevice/pojo/param/WlRecordParam.java b/cs-device/cs-device-api/src/main/java/com/njcn/csdevice/pojo/param/WlRecordParam.java index 79d6cca..ea09374 100644 --- a/cs-device/cs-device-api/src/main/java/com/njcn/csdevice/pojo/param/WlRecordParam.java +++ b/cs-device/cs-device-api/src/main/java/com/njcn/csdevice/pojo/param/WlRecordParam.java @@ -3,6 +3,8 @@ package com.njcn.csdevice.pojo.param; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; + +import java.time.LocalDateTime; import java.util.List; /** @@ -16,7 +18,7 @@ import java.util.List; public class WlRecordParam { @ApiModelProperty("方案名称") - private String itemName; + private String proName; @ApiModelProperty("描述") private String describe; @@ -25,6 +27,18 @@ public class WlRecordParam { @EqualsAndHashCode(callSuper = true) public static class Record extends WlRecordParam { + @ApiModelProperty("装置id") + private String devId; + + @ApiModelProperty("监测点id") + private String lineId; + + @ApiModelProperty("项目起始时间") + private LocalDateTime proStartTime; + + @ApiModelProperty("项目结束时间") + private LocalDateTime proEndTime; + @ApiModelProperty("测试项名称") private String itemName; diff --git a/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/controller/scheme/WlRecordController.java b/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/controller/scheme/WlRecordController.java index a43a28a..8639b1a 100644 --- a/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/controller/scheme/WlRecordController.java +++ b/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/controller/scheme/WlRecordController.java @@ -23,6 +23,7 @@ import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; + import java.util.List; /** @@ -98,6 +99,20 @@ public class WlRecordController extends BaseController { return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe); } + /** + * 批量新增原始数据 + */ + @OperateInfo(info = LogEnum.SYSTEM_COMMON, operateType = OperateType.ADD) + @PostMapping("/addBaseDataList") + @ApiOperation("批量新增原始数据") + @ApiImplicitParam(name = "wlRecord", value = "装置原始数据", required = true) + public HttpResult addBaseDataList(@RequestBody @Validated List wlRecord) { + String methodDescribe = getMethodDescribe("addBaseDataList"); + LogUtil.njcnDebug(log, "{},装置原始数据为:{}", methodDescribe, wlRecord); + wlRecordService.addBaseDataList(wlRecord); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe); + } + /** * 修改测试项 */ @@ -166,5 +181,19 @@ public class WlRecordController extends BaseController { return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe); } + /** + * 查询装置基础数据 + */ + @OperateInfo(info = LogEnum.SYSTEM_COMMON, operateType = OperateType.QUERY) + @PostMapping("/findDevBaseData") + @ApiOperation("查询装置基础数据") + @ApiImplicitParam(name = "param", value = "查询条件", required = true) + public HttpResult findDevBaseData(@RequestBody @Validated WlRecordParam.Record param) { + String methodDescribe = getMethodDescribe("findDevBaseData"); + LogUtil.njcnDebug(log, "{},查询对象为:{}", methodDescribe, param); + WlRecord record = wlRecordService.findDevBaseData(param); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, record, methodDescribe); + } + } diff --git a/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/IWlRecordService.java b/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/IWlRecordService.java index e33d92d..66eaf2b 100644 --- a/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/IWlRecordService.java +++ b/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/IWlRecordService.java @@ -49,6 +49,13 @@ public interface IWlRecordService extends IService { */ void addBaseData(WlRecord wlRecord); + /** + * 批量新增原始数据 + * @param wlRecord + * @return + */ + void addBaseDataList(List wlRecord); + /** * 修改测试项 * @param record @@ -89,4 +96,10 @@ public interface IWlRecordService extends IService { */ List queryCommonStatisticalByTest(CommonStatisticalQueryParam commonStatisticalQueryParam); + /** + * 获取装置基础数据 + * @return + */ + WlRecord findDevBaseData(WlRecordParam.Record param); + } diff --git a/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/impl/CsLedgerServiceImpl.java b/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/impl/CsLedgerServiceImpl.java index c433976..79ba778 100644 --- a/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/impl/CsLedgerServiceImpl.java +++ b/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/impl/CsLedgerServiceImpl.java @@ -98,13 +98,13 @@ public class CsLedgerServiceImpl extends ServiceImpl i portable.setPid("0"); portable.setId(IdUtil.simpleUUID()); List portables = allList.stream().filter(item->Objects.equals(item.getLevel(),2) && Objects.equals(item.getPid(),"0")).collect(Collectors.toList()); - portables.forEach(dev -> dev.setChildren(getChildren(dev, finalLineList))); - checkDevSetData(portables); for(CsLedgerVO c : portables){ c.setPid(portable.getId()); CsEquipmentDeliveryPO po = csEquipmentDeliveryMapper.selectById(c.getId()); c.setComFlag(po.getRunStatus()); } + portables.forEach(dev -> dev.setChildren(getChildren(dev, finalLineList))); + checkDevSetData(portables); portable.setChildren(portables); CsLedgerVO government = new CsLedgerVO(); diff --git a/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/impl/WlRecordServiceImpl.java b/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/impl/WlRecordServiceImpl.java index e8ad277..5d66f85 100644 --- a/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/impl/WlRecordServiceImpl.java +++ b/cs-device/cs-device-boot/src/main/java/com/njcn/csdevice/service/impl/WlRecordServiceImpl.java @@ -115,11 +115,18 @@ public class WlRecordServiceImpl extends ServiceImpl i this.save(wlRecord); } + @Override + public void addBaseDataList(List wlRecord) { + this.saveBatch(wlRecord); + } + @Override @Transactional(rollbackFor = Exception.class) public void updateTestRecord(WlRecordParam.UpdateRecord record) { WlRecord wlRecord = new WlRecord(); BeanUtils.copyProperties(record, wlRecord); + wlRecord.setStartTime(record.getProStartTime()); + wlRecord.setEndTime(record.getProEndTime()); this.updateById(wlRecord); saveDataRecord(record); } @@ -399,6 +406,18 @@ public class WlRecordServiceImpl extends ServiceImpl i return result; } + @Override + public WlRecord findDevBaseData(WlRecordParam.Record param) { + LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); + lambdaQueryWrapper.eq(WlRecord::getGcName,param.getProName()) + .eq(WlRecord::getDevId,param.getDevId()) + .eq(WlRecord::getLineId,param.getLineId()) + .eq(WlRecord::getStartTime,param.getProStartTime()) + .eq(WlRecord::getType,1) + .eq(WlRecord::getState,1); + return this.getOne(lambdaQueryWrapper); + } + /** * 数据项内的时间进行覆盖:解决多个数据项的startTime及endTime之间存在时间冲突 * @param data 数据项