From c5e5d0720d1f0805963ce218a9bd7e5da5a6e7a5 Mon Sep 17 00:00:00 2001
From: zhubaomin <zhubaomin>
Date: 星期三, 18 九月 2024 15:27:51 +0800
Subject: [PATCH] Merge branch 'master' of http://8.140.179.55:20000/r/pipIrr-SV
---
pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/flowMonitoring/MoniFlowCtrl.java | 108 +++++++++++++++++++++++++++++++++++++----------------
1 files changed, 75 insertions(+), 33 deletions(-)
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/flowMonitoring/MoniFlowCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/flowMonitoring/MoniFlowCtrl.java
index 1748b64..79b50a8 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/flowMonitoring/MoniFlowCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/flowMonitoring/MoniFlowCtrl.java
@@ -4,6 +4,8 @@
import com.dy.common.webUtil.BaseResponse;
import com.dy.common.webUtil.BaseResponseUtils;
import com.dy.common.webUtil.ResultCodeMsg;
+import com.dy.pipIrrGlobal.pojoPr.PrFlowMonitoring;
+import com.dy.pipIrrGlobal.pojoPr.PrFlowmeter;
import com.dy.pipIrrGlobal.pojoPr.PrMonitoringFlowmeter;
import com.dy.pipIrrProject.result.ProjectResultCode;
import io.swagger.v3.oas.annotations.Operation;
@@ -18,14 +20,9 @@
import org.springframework.http.MediaType;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.BindingResult;
-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 org.springframework.web.bind.annotation.*;
-import java.util.Date;
-import java.util.Objects;
-import java.util.Optional;
+import java.util.*;
/**
* @author ZhuBaoMin
@@ -37,7 +34,7 @@
@Slf4j
@Tag(name = "娴侀噺鐩戞祴绔欍�佹祦閲忚鍏宠仈绠$悊", description = "娴侀噺鐩戞祴绔欍�佹祦閲忚鍏宠仈鎿嶄綔")
@RestController
-@RequestMapping(path="moni_flow")
+@RequestMapping(path = "moni_flow")
@RequiredArgsConstructor
public class MoniFlowCtrl {
private final MoniFlowSv moniFlowSv;
@@ -47,9 +44,10 @@
/**
* 娴侀噺鐩戞祴绔欑粦瀹氭祦閲忚
- * 鑻ユ祦閲忕洃娴嬬珯鎴栨祦閲忚涓嶅瓨鍦ㄩ渶鎻愮ず鐢ㄦ埛
- * 鑻ユ祦閲忕洃娴嬬珯宸茬粡涓庢祦閲忚缁戝畾闇�鎻愮ず鐢ㄦ埛
- * @param po 缁戝畾鍏崇郴瀵硅薄
+ * 鑻ユ祦閲忕洃娴嬬珯鎴栨祦閲忚涓嶅瓨鍦ㄩ渶鎻愮ず鐢ㄦ埛
+ * 鑻ユ祦閲忕洃娴嬬珯宸茬粡涓庢祦閲忚缁戝畾闇�鎻愮ず鐢ㄦ埛
+ *
+ * @param po 缁戝畾鍏崇郴瀵硅薄
* @param bindingResult
* @return
*/
@@ -65,34 +63,41 @@
@PostMapping(path = "bind", consumes = MediaType.APPLICATION_JSON_VALUE)
@Transactional(rollbackFor = Exception.class)
@SsoAop()
- public BaseResponse<Boolean> bind(@RequestBody @Valid DtoMoniFlow po, BindingResult bindingResult){
- if(bindingResult != null && bindingResult.hasErrors()){
+ public BaseResponse<Boolean> bind(@RequestBody @Valid DtoMoniFlow po, BindingResult bindingResult) {
+ if (bindingResult != null && bindingResult.hasErrors()) {
return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
}
// 鏍规嵁缂栧彿鍒嗗埆鑾峰彇娴侀噺鐩戞祴绔欍�佹祦閲忚鏈垹闄よ褰曟暟
- Integer recFlowMonitoring = Optional.ofNullable(flowMonitoringSv.getRecordCountOfFlowMonitoring(po.getMonitoringId())).orElse(0);
- Integer recFlowmeter = Optional.ofNullable(flowmeterSv.getRecordCountOfFlowmeter(po.getFlowmeterId())).orElse(0);
- if(recFlowMonitoring == 0 || recFlowmeter == 0) {
+ Integer recFlowMonitoring = Optional.ofNullable(flowMonitoringSv.getRecordCountOfFlowMonitoringByFlowMonitoringId(po.getMonitoringId())).orElse(0);
+ Integer recFlowmeter = Optional.ofNullable(flowmeterSv.getRecordCountOfFlowmeterByCode(po.getFlowmeterId())).orElse(0);
+ if (recFlowMonitoring == 0 || recFlowmeter == 0) {
return BaseResponseUtils.buildFail(ProjectResultCode.STATION_OR_FLOWMETER_NO_EXIST.getMessage());
}
// 鏍规嵁缂栧彿鑾峰彇宸茬粦瀹氭暟閲�
- Integer recordCount = Optional.ofNullable(moniFlowSv.getBindRecordCount(po.getMonitoringId(), po.getFlowmeterId(), (byte)1)).orElse(0);
- if(recordCount > 0) {
+ Integer recordCount = Optional.ofNullable(moniFlowSv.getBindRecordCount(po.getMonitoringId(), po.getFlowmeterId(), (byte) 1)).orElse(0);
+ if (recordCount > 0) {
return BaseResponseUtils.buildFail(ProjectResultCode.MONITORING_HAS_BINDED_FLOWMETER.getMessage());
}
PrMonitoringFlowmeter prMonitoringFlowmeter = DtoToMoniFlowPojo.INSTANCT.po2vo(po);
Date operateTime = new Date();
- prMonitoringFlowmeter .setOperatedt(operateTime);
- prMonitoringFlowmeter.setOperatetype((byte)1);
+ prMonitoringFlowmeter.setOperatedt(operateTime);
+ prMonitoringFlowmeter.setOperatetype((byte) 1);
+
+ PrFlowmeter flowmeter = new PrFlowmeter();
+ flowmeter.setMonitoringId(po.getMonitoringId().toString());
+ flowmeter.setId(po.getFlowmeterId());
+ flowmeter.setOperator(po.getOperator());
+ flowmeter.setOperateDt(operateTime);
+ Integer shu = flowmeterSv.flowmeterAddMonId(flowmeter);
Integer rec = Optional.ofNullable(moniFlowSv.addRecord(prMonitoringFlowmeter)).orElse(0);
- if(rec == 0) {
+ if (rec == 0 || shu == 0) {
return BaseResponseUtils.buildFail(ProjectResultCode.MONITORING_FLOWMETER_BIND_FAIL.getMessage());
}
- return BaseResponseUtils.buildSuccess(true) ;
+ return BaseResponseUtils.buildSuccess(true);
}
@Operation(summary = "娣诲姞瑙g粦璁板綍", description = "娣诲姞瑙g粦璁板綍")
@@ -107,33 +112,70 @@
@PostMapping(path = "unbind", consumes = MediaType.APPLICATION_JSON_VALUE)
@Transactional(rollbackFor = Exception.class)
@SsoAop()
- public BaseResponse<Boolean> unbind(@RequestBody @Valid DtoMoniFlow po, BindingResult bindingResult){
- if(bindingResult != null && bindingResult.hasErrors()){
+ public BaseResponse<Boolean> unbind(@RequestBody @Valid DtoMoniFlow po, BindingResult bindingResult) {
+ if (bindingResult != null && bindingResult.hasErrors()) {
return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
}
// 鏍规嵁缂栧彿鍒嗗埆鑾峰彇娴侀噺鐩戞祴绔欍�佹祦閲忚鏈垹闄よ褰曟暟
- Integer recFlowMonitoring = Optional.ofNullable(flowMonitoringSv.getRecordCountOfFlowMonitoring(po.getMonitoringId())).orElse(0);
- Integer recFlowmeter = Optional.ofNullable(flowmeterSv.getRecordCountOfFlowmeter(po.getFlowmeterId())).orElse(0);
- if(recFlowMonitoring == 0 || recFlowmeter == 0) {
+ Integer recFlowMonitoring = Optional.ofNullable(flowMonitoringSv.getRecordCountOfFlowMonitoringByFlowMonitoringId(po.getMonitoringId())).orElse(0);
+ Integer recFlowmeter = Optional.ofNullable(flowmeterSv.getRecordCountOfFlowmeterByCode(po.getFlowmeterId())).orElse(0);
+ if (recFlowMonitoring == 0 || recFlowmeter == 0) {
return BaseResponseUtils.buildFail(ProjectResultCode.STATION_OR_FLOWMETER_NO_EXIST.getMessage());
}
// 鏍规嵁缂栧彿鑾峰彇宸茬粦瀹氭暟閲�
- Integer recordCount = Optional.ofNullable(moniFlowSv.getBindRecordCount(po.getMonitoringId(), po.getFlowmeterId(), (byte)2)).orElse(0);
- if(recordCount > 0) {
+ Integer recordCount = Optional.ofNullable(moniFlowSv.getBindRecordCount(po.getMonitoringId(), po.getFlowmeterId(), (byte) 2)).orElse(0);
+ if (recordCount > 0) {
return BaseResponseUtils.buildFail(ProjectResultCode.STATION_FLOWMETER_HAS_UNBOUND.getMessage());
}
PrMonitoringFlowmeter prMonitoringFlowmeter = DtoToMoniFlowPojo.INSTANCT.po2vo(po);
Date operateTime = new Date();
- prMonitoringFlowmeter .setOperatedt(operateTime);
- prMonitoringFlowmeter.setOperatetype((byte)1);
+ prMonitoringFlowmeter.setOperatedt(operateTime);
+ prMonitoringFlowmeter.setOperatetype((byte) 2);
+
+ PrFlowmeter flowmeter = new PrFlowmeter();
+ flowmeter.setMonitoringId(null);
+ flowmeter.setId(po.getFlowmeterId());
+ flowmeter.setOperator(po.getOperator());
+ flowmeter.setOperateDt(operateTime);
+ Integer shu = flowmeterSv.flowmeterAddMonId(flowmeter);
Integer rec = Optional.ofNullable(moniFlowSv.addRecord(prMonitoringFlowmeter)).orElse(0);
- if(rec == 0) {
+ if (rec == 0 || shu == 0) {
return BaseResponseUtils.buildFail(ProjectResultCode.MONITORING_FLOWMETER_BIND_FAIL.getMessage());
}
- return BaseResponseUtils.buildSuccess(true) ;
+ return BaseResponseUtils.buildSuccess(true);
+ }
+
+ /**
+ * 鏍规嵁鐩戞祴绔欑紪鍙疯幏鍙栫粦瀹氳褰� 鎸夋搷浣滄椂闂撮檷搴�
+ *
+ * @param monitoringId 鐩戞祴绔欑紪鍙�
+ * @return 缁戝畾璁板綍
+ */
+ @Operation(summary = "鑾峰彇缁戝畾璁板綍", description = "杩斿洖鑾峰彇缁戝畾璁板綍")
+ @ApiResponses(value = {
+ @ApiResponse(
+ responseCode = ResultCodeMsg.RsCode.SUCCESS_CODE,
+ description = "杩斿洖缁戝畾璁板綍锛圔aseResponse.content:QueryResultVo[{}]锛�",
+ content = {@Content(mediaType = MediaType.APPLICATION_JSON_VALUE,
+ schema = @Schema(implementation = PrMonitoringFlowmeter.class))}
+ )
+ })
+ @GetMapping(path = "bingRecords/{monitoringId}")
+ @SsoAop()
+ public BaseResponse<List<Map<String, Object>>> getBingRecordsByMonitoringId(@PathVariable("monitoringId") String monitoringId) {
+ try {
+ List<Map<String, Object>> list = Optional.ofNullable(moniFlowSv.getBingRecordsByMonitoringId(monitoringId)).orElse(new ArrayList<>());
+ if (list.size() <= 0) {
+ return BaseResponseUtils.buildFail(ProjectResultCode.NO_MONITORING_FLOWMETERS.getMessage());
+ }
+ return BaseResponseUtils.buildSuccess(list);
+ } catch (Exception e) {
+ log.error("鏌ヨ缁戝畾璁板綍寮傚父", e);
+ return BaseResponseUtils.buildException(e.getMessage());
+ }
}
}
--
Gitblit v1.8.0