From 42f5453644c41d3b6ac9e381f931efdfc9da8178 Mon Sep 17 00:00:00 2001 From: Administrator <zhubaomin> Date: 星期一, 27 五月 2024 16:09:56 +0800 Subject: [PATCH] Merge branch 'master' of http://8.140.179.55:20000/r/pipIrr-SV --- pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd93_A3Vo.java | 2 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/resources/application-database.yml | 9 pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrIrrigateUnitMapper.xml | 20 pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/irrigateGroup/IrrigateGroupSv.java | 21 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voIr/VoScheduling.java | 34 + pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrCropMapper.xml | 109 +++ pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/CodeV202404.java | 4 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoIr/IrCrop.java | 57 ++ pipIrr-platform/pipIrr-global/src/main/resources/application-database-pj.yml | 2 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_26_Down.java | 8 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voIr/VoUnit.java | 2 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voIr/VoCrop.java | 22 pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/crop/CropSv.java | 99 +++ pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_21_Down.java | 2 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_86_Up.java | 2 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voIr/VoUnitOne.java | 2 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlParse.java | 5 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd92_A2Vo.java | 6 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoIr/IrIrrigateSchedulingMapper.java | 48 + pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrIrrigateGroupMapper.xml | 12 pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/crop/QueryVo.java | 23 pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/irrigateScheduling/IrIrrigateSchedulingSv.java | 97 +++ pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_93_A3_Down.java | 2 pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrGroupUnitMapper.xml | 37 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd9AVo.java | 34 + pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoIr/IrCropMapper.java | 49 + pipIrr-platform/pipIrr-web/pipIrr-mwTest-web/src/main/java/com/dy/pipIrrMwTestWeb/PipIrrMwTestWebApplication.java | 2 pipIrr-platform/pipIrr-global/src/main/resources/application-database-ym.yml | 12 pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/irrigateUnit/IrrigateUnitSv.java | 4 pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/irrigateScheduling/QueryVo.java | 24 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/downVos/ComCd26Vo.java | 1 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_24_Down.java | 2 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_92_A2_Up.java | 3 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voIr/VoSchedulingOne.java | 48 + pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_92_A2_Down.java | 4 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_23_Down.java | 2 pipIrr-platform/pipIrr-web/pipIrr-mwTest-web/src/main/java/com/dy/pipIrrMwTestWeb/test/CommandCtrl.java | 39 + pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd80_5BVo.java | 3 pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrIrrigateSchedulingMapper.xml | 173 ++++++ pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/crop/CropCtrl.java | 202 +++++++ pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/irrigateScheduling/IrrigateSchedulingCtrl.java | 198 +++++++ pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_87_Up.java | 4 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_C2_Up.java | 4 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/resources/log4j2.yml | 2 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoIr/IrGroupUnitMapper.java | 9 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoIr/IrGroupUnit.java | 6 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voIr/VoCropOne.java | 25 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_9A_Up.java | 10 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoIr/IrIrrigateScheduling.java | 98 +++ pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/irrigateGroup/IrrigateGroupCtrl.java | 73 ++ 50 files changed, 1,552 insertions(+), 104 deletions(-) diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/CodeV202404.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/CodeV202404.java index ed18635..39686a3 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/CodeV202404.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/CodeV202404.java @@ -29,7 +29,7 @@ public static final String cd_83 = "83" ; //閬ユ祴缁堢瀹氱偣涓婃姤 public static final String cd_84 = "84" ; //鍒峰崱寮�娉�/闃�涓婃姤 public static final String cd_85 = "85" ; //鍒峰崱鍏虫车/闃�涓婃姤 - public static final String cd_9A = "9A" ; //娓呴櫎骞寸敤姘撮噺鍜屽勾鐢ㄧ數閲� + public static final String cd_9A = "9A" ; //鏌ヨ骞寸敤姘撮噺 public static final String cd_26 = "26" ; //璁剧疆璁惧缁堢骞寸敤姘撮噺 public static final String cd_21 = "21" ; //璁剧疆璁惧缁堢IP鍦板潃 public static final String cd_86 = "86" ; //鏌ヨ璁惧缁堢IP鍦板潃 @@ -70,7 +70,7 @@ (code.equals(cd_83) ? "閬ユ祴缁堢瀹氱偣涓婃姤" : (code.equals(cd_84) ? "鍒峰崱寮�娉�/闃�涓婃姤" : (code.equals(cd_85) ? "鍒峰崱鍏虫车/闃�涓婃姤" : - (code.equals(cd_9A) ? "娓呴櫎骞寸敤姘撮噺鍜屽勾鐢ㄧ數閲�" : + (code.equals(cd_9A) ? "鏌ヨ骞寸敤姘撮噺" : (code.equals(cd_26) ? "璁剧疆璁惧缁堢骞寸敤姘撮噺" : (code.equals(cd_21) ? "璁剧疆璁惧缁堢IP鍦板潃" : (code.equals(cd_86) ? "鏌ヨ璁惧缁堢IP鍦板潃" : diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/downVos/ComCd26Vo.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/downVos/ComCd26Vo.java index 6662a05..36ae567 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/downVos/ComCd26Vo.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/downVos/ComCd26Vo.java @@ -6,6 +6,5 @@ public class ComCd26Vo { public String controllerType;//鎺у埗鍣ㄧ被鍨� 01锛�0x01锛�:娴嬫帶涓�浣撻榾锛�57(0x57):浜曠數鎺у埗鍣� public Integer projectNo ;//鎺у埗鍣ㄧ被鍨� 0x01:娴嬫帶涓�浣撻榾锛�0x57:浜曠數鎺у埗鍣� - public Integer ipChannel ;//IP閫氶亾鍙� 0x01:1閫氶亾 0x02:2閫氶亾. public Integer maxAmountYear ;//璁惧缁堢骞寸敤姘撮噺 鍗曚綅锛歮3 鏁存暟锛屽彇鍊艰寖鍥�0~99999999 } diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_21_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_21_Down.java index 1e23b06..bcacda2 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_21_Down.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_21_Down.java @@ -95,7 +95,7 @@ byte[] bs1 = new byte[7] ; - index ++ ; + index = 0; GlCreate.createPw(bs1, index); index += 2 ; diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_23_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_23_Down.java index 089d4d6..7ccb336 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_23_Down.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_23_Down.java @@ -99,7 +99,7 @@ byte[] bs1 = new byte[7] ; - index ++ ; + index = 0 ; GlCreate.createPw(bs1, index); index += 2 ; diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_24_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_24_Down.java index 9e3242f..5f46b3d 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_24_Down.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_24_Down.java @@ -89,7 +89,7 @@ bytes = ByteUtil.bytesMerge(bytes, bsRg) ; byte[] bs1 = new byte[7] ; - index ++ ; + index = 0 ; GlCreate.createPw(bs1, index); index += 2 ; diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_26_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_26_Down.java index fa0f86b..41e76da 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_26_Down.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_26_Down.java @@ -55,23 +55,17 @@ if(cvo == null){ throw new Exception("json杞珻omCd22Vo涓簄ull") ; } - if(cvo.ipChannel != 1 && cvo.ipChannel !=2){ - throw new Exception("IP閫氶亾鍙峰彧鑳芥槸1鎴�2") ; - } if(cvo.maxAmountYear < 0 || cvo.maxAmountYear > 99999999){ throw new Exception("璁惧缁堢骞寸敤姘撮噺蹇呴』鏄�0~99999999鑼冨洿鍐呯殑鏁存暟") ; } - byte[] bs = new byte[15] ; + byte[] bs = new byte[14] ; int index = 0 ; bs[index] = (byte)(Integer.parseInt(cvo.controllerType, 16)); index ++ ; bs[index] = cvo.projectNo.byteValue() ; - - index ++ ; - bs[index] = cvo.ipChannel.byteValue() ; index ++ ; String strTemp = "" + cvo.maxAmountYear ; diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_86_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_86_Up.java index 8427760..1387bb7 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_86_Up.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_86_Up.java @@ -74,7 +74,7 @@ cdData.ip = ByteUtil.bytes2String_BE(bs, index, index + ipLen - 1) ; index += ipLen ; - cdData.port = Integer.parseInt(ByteUtil.bytes2String_LE(bs, index, index + portLen - 1)) ; + cdData.port = Integer.parseInt(ByteUtil.bytes2String_BE(bs, index, index + portLen - 1)) ; } } diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_87_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_87_Up.java index cbcbfbf..c5c4369 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_87_Up.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_87_Up.java @@ -73,10 +73,10 @@ short portLen = ByteUtilUnsigned.byte2Byte(bs, index) ; index++ ; - cdData.domain = ByteUtil.bytes2String_LE(bs, index, index + domainLen - 1) ; + cdData.domain = ByteUtil.bytes2String_BE(bs, index, index + domainLen - 1) ; index += domainLen ; - cdData.port = Integer.parseInt(ByteUtil.bytes2String_LE(bs, index, index + portLen - 1)) ; + cdData.port = Integer.parseInt(ByteUtil.bytes2String_BE(bs, index, index + portLen - 1)) ; } } diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_92_A2_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_92_A2_Down.java index 1193d6b..00cebd7 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_92_A2_Down.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_92_A2_Down.java @@ -113,11 +113,11 @@ for(int i = 0 ; i < bTempLen; i++){ bs[index++] = bTemp[i] ; count ++ ; - if(count >= 4){ + if(count >= 5){ break ; } } - for(; count < 4; count++){ + for(; count < 5; count++){ bs[index++] = 0 ; } diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_92_A2_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_92_A2_Up.java index 512934d..0fbd96e 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_92_A2_Up.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_92_A2_Up.java @@ -72,6 +72,9 @@ cdData.orderNo = ByteUtil.BCD2String_BE(bs, index, index + 7) ; index += 8 ; + cdData.opDt = GlParse.parseRtuDt(bs, index) ; + + index += 6 ; cdData.opType = bs[index]; index ++ ; diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_93_A3_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_93_A3_Down.java index f9d9796..1588e7a 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_93_A3_Down.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_93_A3_Down.java @@ -60,7 +60,7 @@ if(!NumUtil.isPlusIntNumber(cvo.orderNo)){ throw new Exception("璁㈠崟鍙峰繀椤绘槸16浣嶆暟瀛�") ; } - if(cvo.orderNo.length() != 12){ + if(cvo.orderNo.length() != 16){ throw new Exception("璁㈠崟鍙峰繀椤绘槸16浣嶆暟瀛�") ; } diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_9A_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_9A_Up.java index ff4ef59..5bb4d97 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_9A_Up.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_9A_Up.java @@ -2,6 +2,7 @@ import com.dy.common.mw.protocol.*; import com.dy.common.mw.protocol.p206V202404.*; +import com.dy.common.mw.protocol.p206V202404.upVos.DataCd9AVo; import com.dy.common.mw.protocol.p206V202404.upVos.DataCdXyVo; import com.dy.common.util.ByteUtil; import org.apache.logging.log4j.LogManager; @@ -53,7 +54,7 @@ */ protected void doParse(byte[] bs, int bsLen, String dataCode, Data data) throws Exception { DataV202404 dV1 = (DataV202404)data.getSubData() ; - DataCdXyVo cdData = new DataCdXyVo(CodeV202404.getCodeName(dataCode)) ; + DataCd9AVo cdData = new DataCd9AVo(CodeV202404.getCodeName(dataCode)) ; dV1.subData = cdData ; int index = ProtocolConstantV206V202404.dataIndex ; cdData.controllerType = ByteUtil.bytes2Hex(bs, false, index, 1) ; @@ -62,12 +63,7 @@ cdData.projectNo = (int)bs[index]; index++ ; - byte result = bs[index]; - if(result == 1){ - cdData.success = true ; - }else{ - cdData.success = false ; - } + cdData.maxAmountYear = ByteUtil.BCD2Int_LE(bs, index, index + 3) ; } } diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_C2_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_C2_Up.java index 5eced82..d5f5326 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_C2_Up.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_C2_Up.java @@ -109,6 +109,10 @@ cdData.success = false ; } + if(!cdData.success){ + return ; + } + index++ ; GlParse.parseRtuDt(bs, index); diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlParse.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlParse.java index 82e681d..dc2abe8 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlParse.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlParse.java @@ -312,6 +312,11 @@ index += 8 ; cdData.startDt = GlParse.parseRtuDt(bs, index) ; + if(cdData.opResult == (byte)0x81){ + //澶辫触浜嗭紝涓嬮潰灏辨病鏈夋暟鎹簡 + return ; + } + index += 6 ; cdData.endDt = GlParse.parseRtuDt(bs, index) ; diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd80_5BVo.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd80_5BVo.java index 06f782a..8f685cb 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd80_5BVo.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd80_5BVo.java @@ -143,6 +143,9 @@ sb.append(" 姘磋〃宸ヤ綔鐢靛帇 : ") ; sb.append(waterMeterWorkVolt == null?"鏈煡":waterMeterWorkVolt) ; sb.append("\n") ; + sb.append(" 淇″彿寮哄害 : ") ; + sb.append(csq == null?"鏈煡":csq) ; + sb.append("\n") ; return sb.toString() + super.toString() ; } diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd92_A2Vo.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd92_A2Vo.java index 954ffc7..928ae12 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd92_A2Vo.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd92_A2Vo.java @@ -10,6 +10,7 @@ public Integer projectNo ;//鎺у埗鍣ㄧ被鍨� 0x01:娴嬫帶涓�浣撻榾锛�0x57:浜曠數鎺у埗鍣� public String icCardNo ;//IC鍗$紪鍙凤紙17浣嶆暟瀛楋級 public String orderNo ;//璁㈠崟鍙凤紙16浣嶆暟瀛楋級 + public String opDt ;//寮�娉�/闃�鏃堕棿锛坹yyy-mm-dd HH:MM:SS锛� public Byte opType ;//寮�闃�绫诲瀷: 01:骞冲彴寮�娉�/闃� 02:鐢ㄦ埛寮�娉�/闃� public Byte opResult ;//寮�鍚车/闃�缁撴灉: 0x00:鎴愬姛 0x81:澶辫触 @@ -34,11 +35,14 @@ sb.append(" 璁㈠崟鍙� : ") ; sb.append(orderNo == null?"鏈煡":orderNo) ; sb.append("\n") ; + sb.append(" 寮�娉�/闃�鏃堕棿 : ") ; + sb.append(opDt == null?"鏈煡":opDt) ; + sb.append("\n") ; sb.append(" 寮�鍚车/闃�绫诲瀷 : ") ; sb.append(opType == null?"鏈煡":(opType.byteValue() == 0x01 ? "骞冲彴":"鐢ㄦ埛")) ; sb.append("\n") ; sb.append(" 寮�鍚车/闃�缁撴灉 : ") ; - sb.append(opResult == null?"鏈煡":(opResult.byteValue() == 0x00 ? "鎴愬姛":"澶辫触")) ; + sb.append(opResult == null?"鏈煡":(opResult.byteValue() == 0x01 ? "鎴愬姛":"澶辫触")) ; sb.append("\n") ; return sb.toString() ; } diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd93_A3Vo.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd93_A3Vo.java index 0063ee0..fa96d54 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd93_A3Vo.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd93_A3Vo.java @@ -43,7 +43,7 @@ sb.append(opType == null?"鏈煡":(opType.byteValue() == 0x00 ? "鍒峰崱":(opType.byteValue() == 0x01 ? "骞冲彴":(opType.byteValue() == 0x02 ? "APP":(opType.byteValue() == 0x03 ? "闈炴硶鍗�":(opType.byteValue() == 0x04 ? "姘磋〃寮傚父":(opType.byteValue() == 0x05 ? "鐢佃〃寮傚父":(opType.byteValue() == 0x06 ? "鍓╀綑姘撮噺涓嶈冻":(opType.byteValue() == 0x07 ? "鍓╀綑閲戦涓嶈冻":(opType.byteValue() == 0x08 ? "鏃犳祦閲�":(opType.byteValue() == 0x09 ? "鎺夌數鍐嶄笂鐢�":"鏈煡"))))))))))) ; sb.append("\n") ; sb.append(" 鍏冲惎娉�/闃�缁撴灉 : ") ; - sb.append(opResult == null?"鏈煡":(opResult.byteValue() == 0x00 ? "鎴愬姛":"澶辫触")) ; + sb.append(opResult == null?"鏈煡":(opResult.byteValue() == 0x01 ? "鎴愬姛":"澶辫触")) ; sb.append("\n") ; sb.append(" IC鍗″湴鍧� : ") ; sb.append(icCardAddr == null?"鏈煡":icCardAddr) ; diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd9AVo.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd9AVo.java new file mode 100644 index 0000000..c1c590f --- /dev/null +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd9AVo.java @@ -0,0 +1,34 @@ +package com.dy.common.mw.protocol.p206V202404.upVos; + +import lombok.Data; + +//鏌ヨ璁惧骞寸敤姘撮噺 +@Data +public class DataCd9AVo { + + public String controllerType;//鎺у埗鍣ㄧ被鍨� 01锛�0x01锛�:娴嬫帶涓�浣撻榾锛�57(0x57):浜曠數鎺у埗鍣� + public Integer projectNo ;//鎺у埗鍣ㄧ被鍨� 0x01:娴嬫帶涓�浣撻榾锛�0x57:浜曠數鎺у埗鍣� + public Integer maxAmountYear ;//璁惧缁堢骞寸敤姘撮噺 鍗曚綅锛歮3 鏁存暟锛屽彇鍊艰寖鍥�0~99999999 + + public String comName ;//鍛戒护鍚嶇О + + public DataCd9AVo(String comName){ + this.comName = comName ; + } + + public String toString(){ + StringBuffer sb = new StringBuffer() ; + sb.append(" " + comName + " : \n") ; + sb.append(" 鎺у埗鍣ㄧ被鍨� : ") ; + sb.append(controllerType == null?"鏈煡":(controllerType.equals("01")?"娴嬫帶涓�浣撻榾":(controllerType.equals("57")?"浜曠數鎺у埗鍣�":"鏈煡"))) ; + sb.append("\n") ; + sb.append(" 椤圭洰缂栧彿 : ") ; + sb.append(projectNo == null?"鏈煡":projectNo) ; + sb.append("\n") ; + sb.append(" 骞寸敤姘撮噺 : ") ; + sb.append(maxAmountYear == null?"鏈煡":maxAmountYear) ; + sb.append("\n") ; + return sb.toString() ; + } + +} diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoIr/IrCropMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoIr/IrCropMapper.java new file mode 100644 index 0000000..04f654c --- /dev/null +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoIr/IrCropMapper.java @@ -0,0 +1,49 @@ +package com.dy.pipIrrGlobal.daoIr; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.dy.pipIrrGlobal.pojoIr.IrCrop; +import com.dy.pipIrrGlobal.pojoIr.IrProject; +import com.dy.pipIrrGlobal.voIr.VoCrop; +import com.dy.pipIrrGlobal.voIr.VoCropOne; +import com.dy.pipIrrGlobal.voIr.VoProject; +import com.dy.pipIrrGlobal.voIr.VoProjectOne; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; +import java.util.Map; + +/** + * @author :WuZeYu + * @Date :2024/5/24 13:55 + * @LastEditTime :2024/5/24 13:55 + * @Description + */ +@Mapper +public interface IrCropMapper extends BaseMapper<IrCrop> { + //澧� + int insertSelective(IrCrop record); + + //鍒� + int deleteLogicById(Long id); + + //鏀� + int updateByPrimaryKeySelective(IrCrop record); + /** + * 鏍规嵁鎸囧畾鏉′欢鑾峰彇椤圭洰璁板綍鏁� + * + * @param params + * @return + */ + Long getRecordCount(Map<?, ?> params); + + /** + * 鏍规嵁鎸囧畾鏉′欢鑾峰彇椤圭洰璁板綍 + * + * @param params + * @return + */ + List<VoCrop> getCrops(Map<?, ?> params); + + //鏌ヤ竴涓� + VoCropOne selectById(Long id); +} diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoIr/IrGroupUnitMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoIr/IrGroupUnitMapper.java index 5ec4a32..f5199fd 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoIr/IrGroupUnitMapper.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoIr/IrGroupUnitMapper.java @@ -5,6 +5,8 @@ import com.dy.pipIrrGlobal.pojoIr.IrIrrigateGroup; import org.apache.ibatis.annotations.Mapper; +import java.util.List; + /** * @author :WuZeYu * @Date :2024/5/22 13:41 @@ -16,8 +18,6 @@ //澧� int insertSelective(IrGroupUnit record); - //鍒� - int deleteLogicById(Long id); //鍒燽y unitId groupId int deleteByUnitIdGroupId(IrGroupUnit record); @@ -25,4 +25,9 @@ int deleteByUnitId(Long unitId); //鍒燽y groupId int deleteByGroupId(Long groupId); + + //鏌ヤ竴涓疆鐏岀粍缁戝畾鐨勭亴婧夊崟鍏僫d + List<Long> getGroupBindUnits(Long groupId); + //鏌ユ湭缁戝畾杞亴缁勭殑鐏屾簤鍗曞厓id + List<Long> getNotBindUnits(); } diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoIr/IrIrrigateSchedulingMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoIr/IrIrrigateSchedulingMapper.java new file mode 100644 index 0000000..2a4c438 --- /dev/null +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoIr/IrIrrigateSchedulingMapper.java @@ -0,0 +1,48 @@ +package com.dy.pipIrrGlobal.daoIr; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.dy.pipIrrGlobal.pojoIr.IrIrrigateScheduling; +import com.dy.pipIrrGlobal.voIr.VoScheduling; +import com.dy.pipIrrGlobal.voIr.VoSchedulingOne; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; +import java.util.Map; + +/** + * @author :WuZeYu + * @Date :2024/5/27 10:46 + * @LastEditTime :2024/5/27 10:46 + * @Description + */ +@Mapper +public interface IrIrrigateSchedulingMapper extends BaseMapper<IrIrrigateScheduling> { + + //澧� + int insertSelective(IrIrrigateScheduling record); + + //鍒� + int deleteLogicById(Long id); + + //鏀� + int updateByPrimaryKeySelective(IrIrrigateScheduling record); + + //鏌ヤ竴涓� + VoSchedulingOne selectById(Long id); + + /** + * 鏍规嵁鎸囧畾鏉′欢鑾峰彇浣滅墿鐏屾簤鍒跺害鏁� + * + * @param params + * @return + */ + Long getRecordCount(Map<?, ?> params); + + /** + * 鏍规嵁鎸囧畾鏉′欢鑾峰彇浣滅墿鐏屾簤鍒跺害璁板綍 + * + * @param params + * @return + */ + List<VoScheduling> getSchedulings(Map<?, ?> params); +} diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoIr/IrCrop.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoIr/IrCrop.java new file mode 100644 index 0000000..1626cca --- /dev/null +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoIr/IrCrop.java @@ -0,0 +1,57 @@ +package com.dy.pipIrrGlobal.pojoIr; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.alibaba.fastjson2.writer.ObjectWriterImplToString; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.dy.common.po.BaseEntity; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; +import org.apache.logging.log4j.core.config.plugins.validation.constraints.NotBlank; + +/** + * @author :WuZeYu + * @Date :2024/5/24 9:43 + * @LastEditTime :2024/5/24 9:43 + * @Description + */ + +/** + * 浣滅墿琛� + */ +@TableName(value="ir_crop", autoResultMap = true) +@Data +@ToString +@Builder +@NoArgsConstructor +@AllArgsConstructor +@Schema(name = "浣滅墿瀹炰綋") +public class IrCrop implements BaseEntity { + /** + * 涓婚敭 + */ + @JSONField(serializeUsing= ObjectWriterImplToString.class) + @TableId(type = IdType.INPUT) + @Schema(description = "瀹炰綋id", requiredMode = Schema.RequiredMode.NOT_REQUIRED) + private Long id; + + /** + * 浣滅墿鍚嶇О + */ + @Schema(description = "浣滅墿鍚嶇О", requiredMode = Schema.RequiredMode.REQUIRED) + @NotBlank(message = "浣滅墿鍚嶇О涓嶈兘涓虹┖") + private String cropName; + + /** + * 澶囨敞 + */ + @Schema(description = "澶囨敞", requiredMode = Schema.RequiredMode.REQUIRED) + private String remarks; + + /** + * 閫昏緫鍒犻櫎鏍囪瘑;0-鏈垹闄わ紝1-鍒犻櫎 + */ + @Schema(description = "鍒犻櫎鏍囪瘑", requiredMode = Schema.RequiredMode.NOT_REQUIRED) + private Byte deleted; +} diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoIr/IrGroupUnit.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoIr/IrGroupUnit.java index 766d3db..8256734 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoIr/IrGroupUnit.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoIr/IrGroupUnit.java @@ -69,9 +69,5 @@ private Date operateDt; - /** - * 閫昏緫鍒犻櫎鏍囪瘑;0-鏈垹闄わ紝1-鍒犻櫎 - */ - @Schema(description = "鍒犻櫎鏍囪瘑", requiredMode = Schema.RequiredMode.NOT_REQUIRED) - private Byte deleted; + } diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoIr/IrIrrigateScheduling.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoIr/IrIrrigateScheduling.java new file mode 100644 index 0000000..b11142a --- /dev/null +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoIr/IrIrrigateScheduling.java @@ -0,0 +1,98 @@ +package com.dy.pipIrrGlobal.pojoIr; + +import com.alibaba.fastjson2.annotation.JSONField; +import com.alibaba.fastjson2.writer.ObjectWriterImplToString; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.dy.common.po.BaseEntity; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; +import lombok.*; +import org.hibernate.validator.constraints.Length; + +import java.util.Date; + +/** + * @author :WuZeYu + * @Date :2024/5/25 9:41 + * @LastEditTime :2024/5/25 9:41 + * @Description + */ +/** + * 鐏屾簤鍒跺害琛� + */ + +@TableName(value="ir_irrigate_scheduling", autoResultMap = true) +@Data +@Builder +@ToString +@NoArgsConstructor +@AllArgsConstructor +@Schema(name = "椤圭洰瀹炰綋") +public class IrIrrigateScheduling implements BaseEntity { + + public static final long serialVersionUID = 202405270901001L; + + /** + * 涓婚敭 + */ + @JSONField(serializeUsing= ObjectWriterImplToString.class) + @TableId(type = IdType.INPUT) + @Schema(description = "瀹炰綋id", requiredMode = Schema.RequiredMode.NOT_REQUIRED) + private Long id; + + /** + * 浣滅墿id + */ + @Schema(description = "浣滅墿id", requiredMode = Schema.RequiredMode.REQUIRED) + @NotNull(message = "浣滅墿id涓嶈兘涓虹┖") + private Long cropId; + + /** + * 浣滅墿鐢熼暱鏈� + */ + @Schema(description = "浣滅墿鐢熼暱鏈�", requiredMode = Schema.RequiredMode.REQUIRED) + @Length(message = "浣滅墿鐢熼暱鏈熶笉澶т簬{max}瀛�",max = 10) + private String growthPeriod; + + /** + * 鐏屾按鍛ㄦ湡 + */ + @Schema(description = "鐏屾按鍛ㄦ湡", requiredMode = Schema.RequiredMode.REQUIRED) + @NotNull(message = "鐏屾按鍛ㄦ湡涓嶈兘涓虹┖") + private Integer irrigateCycle; + + /** + * 鐏屾按寤剁画鏃堕棿 + */ + @Schema(description = "鐏屾按寤剁画鏃堕棿", requiredMode = Schema.RequiredMode.REQUIRED) + @NotNull(message = "鐏屾按寤剁画鏃堕棿涓嶈兘涓虹┖") + private Integer duration; + + /** + * 澶囨敞 + */ + @Schema(description = "澶囨敞", requiredMode = Schema.RequiredMode.REQUIRED) + private String remarks; + + /** + * 鎿嶄綔浜篒D + */ + @Schema(description = "鎿嶄綔浜篒D", requiredMode = Schema.RequiredMode.NOT_REQUIRED) + @NotNull(message = "鎿嶄綔浜篒D涓嶈兘涓虹┖") + private Long operator; + + /** + * 鎿嶄綔鏃堕棿 + */ + @Schema(description = "鎿嶄綔鏃堕棿", requiredMode = Schema.RequiredMode.NOT_REQUIRED) + private Date operateDt; + + /** + * 閫昏緫鍒犻櫎鏍囪瘑;0-鏈垹闄わ紝1-鍒犻櫎 + */ + @Schema(description = "鍒犻櫎鏍囪瘑", requiredMode = Schema.RequiredMode.NOT_REQUIRED) + private Byte deleted; +} diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voIr/VoCrop.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voIr/VoCrop.java new file mode 100644 index 0000000..14f8e45 --- /dev/null +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voIr/VoCrop.java @@ -0,0 +1,22 @@ +package com.dy.pipIrrGlobal.voIr; + +import com.dy.common.po.BaseEntity; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; +import org.apache.logging.log4j.core.config.plugins.validation.constraints.NotBlank; + +/** + * @author :WuZeYu + * @Date :2024/5/25 9:29 + * @LastEditTime :2024/5/25 9:29 + * @Description + */ +@Data +@Schema(name = "浣滅墿瑙嗗浘") +public class VoCrop implements BaseEntity { + @Schema(description = "瀹炰綋id") + private Long id; + + @Schema(description = "浣滅墿鍚嶇О") + private String cropName; +} diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voIr/VoCropOne.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voIr/VoCropOne.java new file mode 100644 index 0000000..e56e48d --- /dev/null +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voIr/VoCropOne.java @@ -0,0 +1,25 @@ +package com.dy.pipIrrGlobal.voIr; + +import com.dy.common.po.BaseEntity; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +/** + * @author :WuZeYu + * @Date :2024/5/25 10:00 + * @LastEditTime :2024/5/25 10:00 + * @Description + */ +@Data +@Schema(name = "浣滅墿瑙嗗浘") +public class VoCropOne implements BaseEntity { + + @Schema(description = "瀹炰綋id") + private Long id; + + @Schema(description = "浣滅墿鍚嶇О") + private String cropName; + + @Schema(description = "澶囨敞") + private String remarks; +} diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voIr/VoScheduling.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voIr/VoScheduling.java new file mode 100644 index 0000000..ee86118 --- /dev/null +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voIr/VoScheduling.java @@ -0,0 +1,34 @@ +package com.dy.pipIrrGlobal.voIr; + +import com.dy.common.po.BaseEntity; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +/** + * @author :WuZeYu + * @Date :2024/5/27 10:34 + * @LastEditTime :2024/5/27 10:34 + * @Description + */ +@Data +@Schema(name = "浣滅墿鐏屾簤鍒跺害瑙嗗浘") +public class VoScheduling implements BaseEntity { + + @Schema(description = "鐏屾簤鍒跺害瀹炰綋id") + private String id; + + @Schema(description = "浣滅墿鍚嶇О") + private String cropName; + + @Schema(description = "浣滅墿鐢熼暱鏈�") + private String growthPeriod; + + @Schema(description = "浣滅墿鐢熼暱鏈�") + private int irrigateCycle; + + @Schema(description = "浣滅墿鐢熼暱鏈�") + private int duration; + + @Schema(description = "澶囨敞") + private String remarks; +} diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voIr/VoSchedulingOne.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voIr/VoSchedulingOne.java new file mode 100644 index 0000000..0bd54e4 --- /dev/null +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voIr/VoSchedulingOne.java @@ -0,0 +1,48 @@ +package com.dy.pipIrrGlobal.voIr; + +import com.dy.common.po.BaseEntity; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +import java.util.Date; + +/** + * @author :WuZeYu + * @Date :2024/5/27 13:59 + * @LastEditTime :2024/5/27 13:59 + * @Description + */ +@Data +@Schema(name = "浣滅墿鐏屾簤鍒跺害瑙嗗浘") +public class VoSchedulingOne implements BaseEntity { + + @Schema(description = "鐏屾簤鍒跺害瀹炰綋id") + private String id; + + @Schema(description = "浣滅墿id") + private String cropId; + + @Schema(description = "浣滅墿鍚嶇О") + private String cropName; + + @Schema(description = "浣滅墿鐢熼暱鏈�") + private String growthPeriod; + + @Schema(description = "浣滅墿鐢熼暱鏈�") + private int irrigateCycle; + + @Schema(description = "浣滅墿鐢熼暱鏈�") + private int duration; + + @Schema(description = "澶囨敞") + private String remarks; + + @Schema(description = "鎿嶄綔浜篒D") + private String operator; + + @Schema(description = "鎿嶄綔浜哄悕瀛�") + private String operatorName; + + @Schema(description = "鎿嶄綔鏃堕棿") + private Date operateDt; +} diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voIr/VoUnit.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voIr/VoUnit.java index a6aaed0..dad0e72 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voIr/VoUnit.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voIr/VoUnit.java @@ -21,7 +21,7 @@ public String projectName; @Schema(description = "杞亴缁勭紪鐮�") - private int groupCode; + private String groupCode; @Schema(description = "鐏屾簤鍗曞厓ID") private String unitId; diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voIr/VoUnitOne.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voIr/VoUnitOne.java index 446a101..3ff7458 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voIr/VoUnitOne.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voIr/VoUnitOne.java @@ -19,7 +19,7 @@ public String projectName; @Schema(description = "杞亴缁勭紪鐮�") - private int groupCode; + private String groupCode; @Schema(description = "鐏屾簤鍗曞厓ID") private String id; diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/application-database-pj.yml b/pipIrr-platform/pipIrr-global/src/main/resources/application-database-pj.yml index d08d509..22cbe00 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/application-database-pj.yml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/application-database-pj.yml @@ -9,6 +9,8 @@ username: root password: dysql,;.abc!@# druid: + # 鏁版嵁婧愬悕绉帮細褰撳瓨鍦ㄥ涓暟鎹簮鏃讹紝璁剧疆鍚嶅瓧鍙互寰堟柟渚跨殑鏉ヨ繘琛屽尯鍒�,榛樿鑷姩鐢熸垚鍚嶇О锛屾牸寮忔槸锛�"DataSource-" + System.identityHashCode(this) + name: druid-mysql-pj #閰嶇疆鍒濆鍖栧ぇ灏忋�佹渶灏忋�佹渶澶� initialSize: 1 minIdle: 1 diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/application-database-ym.yml b/pipIrr-platform/pipIrr-global/src/main/resources/application-database-ym.yml index 07d84de..2c43ab8 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/application-database-ym.yml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/application-database-ym.yml @@ -9,12 +9,14 @@ username: root password: dysql,;.abc!@# druid: + # 鏁版嵁婧愬悕绉帮細褰撳瓨鍦ㄥ涓暟鎹簮鏃讹紝璁剧疆鍚嶅瓧鍙互寰堟柟渚跨殑鏉ヨ繘琛屽尯鍒�,榛樿鑷姩鐢熸垚鍚嶇О锛屾牸寮忔槸锛�"DataSource-" + System.identityHashCode(this) + name: druid-mysql-ym #閰嶇疆鍒濆鍖栧ぇ灏忋�佹渶灏忋�佹渶澶� - initialSize: 1 - minIdle: 1 - maxActive: 100 - #閰嶇疆鑾峰彇杩炴帴绛夊緟瓒呮椂鐨勬椂闂达紝鍗曚綅鏄绉� - maxWait: 6000 + initialSize: 10 + minIdle: 10 + maxActive: 200 + # 鑾峰彇杩炴帴鏃舵渶澶х瓑寰呮椂闂�,鍗曚綅姣銆傞厤缃簡maxWait涔嬪悗,缂虹渷鍚敤鍏钩閿�,骞跺彂鏁堢巼浼氭湁鎵�涓嬮檷,濡傛灉闇�瑕佸彲浠ラ�氳繃閰嶇疆useUnfairLock灞炴�т负true浣跨敤闈炲叕骞抽攣 + maxWait: 60000 #閰嶇疆闂撮殧澶氫箙杩涜涓�娆℃娴嬶紝妫�娴嬮渶瑕佸叧闂殑绌洪棽杩炴帴锛屽崟浣嶆绉掋�� 榛樿鏄�60s锛屽お闀垮彲鑳戒細瀵艰嚧鏃犳硶鍙婃椂妫�娴嬪埌杩炴帴涓柇 timeBetweenEvictionRunsMillis: 60000 #閰嶇疆涓�涓繛鎺ュ湪杩炴帴姹犱腑鐨勬渶灏忕敓瀛樻椂闂淬�佹渶澶х敓瀛樻椂闂达紝瓒呰繃鏈�澶х敓瀛樻椂闂翠細琚Щ闄わ紝鍗曚綅姣銆� diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrCropMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrCropMapper.xml new file mode 100644 index 0000000..fb1c0b8 --- /dev/null +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrCropMapper.xml @@ -0,0 +1,109 @@ +<?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.dy.pipIrrGlobal.daoIr.IrCropMapper"> + <resultMap id="BaseResultMap" type="com.dy.pipIrrGlobal.pojoIr.IrCrop"> + <!--@mbg.generated--> + <!--@Table ir_crop--> + <id column="id" jdbcType="BIGINT" property="id" /> + <result column="crop_name" jdbcType="VARCHAR" property="cropName" /> + <result column="remarks" jdbcType="VARCHAR" property="remarks" /> + <result column="deleted" jdbcType="TINYINT" property="deleted" /> + </resultMap> + <sql id="Base_Column_List"> + <!--@mbg.generated--> + id, crop_name, remarks, deleted + </sql> + <!--娣诲姞--> + <insert id="insertSelective" parameterType="com.dy.pipIrrGlobal.pojoIr.IrCrop"> + insert into ir_crop + <trim prefix="(" suffix=")" suffixOverrides=","> + <if test="id != null"> + id, + </if> + <if test="cropName != null"> + crop_name, + </if> + <if test="remarks != null"> + remarks, + </if> + <if test="deleted != null"> + deleted, + </if> + </trim> + <trim prefix="values (" suffix=")" suffixOverrides=","> + <if test="id != null"> + #{id,jdbcType=BIGINT}, + </if> + <if test="cropName != null"> + #{cropName,jdbcType=VARCHAR}, + </if> + <if test="remarks != null"> + #{remarks,jdbcType=VARCHAR}, + </if> + <if test="deleted != null"> + #{deleted,jdbcType=TINYINT}, + </if> + </trim> + </insert> + <!--閫昏緫鍒犻櫎--> + <delete id="deleteLogicById" parameterType="java.lang.Long"> + <!--@mbg.generated--> + update ir_crop + set deleted = 1 + where id = #{id,jdbcType=BIGINT} + </delete> + + <!--淇敼淇℃伅--> + <update id="updateByPrimaryKeySelective" parameterType="com.dy.pipIrrGlobal.pojoIr.IrCrop"> + update ir_crop + <set> + <if test="cropName != null"> + crop_name = #{cropName,jdbcType=VARCHAR}, + </if> + <if test="remarks != null"> + remarks = #{remarks,jdbcType=VARCHAR}, + </if> + <if test="deleted != null"> + deleted = #{deleted,jdbcType=TINYINT}, + </if> + </set> + where id = #{id,jdbcType=BIGINT} + </update> + + <select id="getRecordCount" resultType="java.lang.Long"> + SELECT COUNT(*) AS recordCount + FROM ir_crop cro + <where> + cro.deleted = 0 + <if test="cropName != null and cropName != ''"> + AND cro.crop_name LIKE CONCAT('%', #{cropName}, '%') + </if> + </where> + </select> + + <select id="getCrops" resultType="com.dy.pipIrrGlobal.voIr.VoCrop"> + SELECT + CAST(cro.id AS char)AS id, + cro.crop_name AS cropName + FROM ir_crop cro + <where> + cro.deleted = 0 + <if test="cropName != null and cropName != ''"> + AND cro.crop_name LIKE CONCAT('%', #{cropName}, '%') + </if> + </where> + <if test="pageCurr != null and pageSize != null"> + LIMIT ${(pageCurr-1)*pageSize}, ${pageSize} + </if> + </select> + + <select id="selectById" resultType="com.dy.pipIrrGlobal.voIr.VoCropOne"> + select + CAST(cro.id AS char)AS id, + cro.crop_name AS cropName, + cro.remarks + from ir_crop cro + where cro.id = #{id,jdbcType=BIGINT} and cro.deleted = 0 + + </select> +</mapper> \ No newline at end of file diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrGroupUnitMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrGroupUnitMapper.xml index 4fa6d92..de655c8 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrGroupUnitMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrGroupUnitMapper.xml @@ -9,12 +9,11 @@ <result column="unit_id" jdbcType="BIGINT" property="unitId" /> <result column="operator" jdbcType="BIGINT" property="operator" /> <result column="operate_time" jdbcType="TIMESTAMP" property="operateDt" /> - <result column="deleted" jdbcType="TINYINT" property="deleted" /> </resultMap> <sql id="Base_Column_List"> <!--@mbg.generated--> id, group_id, unit_id, `operator`, - operate_time, deleted + operate_time </sql> <!--娣诲姞--> @@ -37,9 +36,7 @@ <if test="operateDt != null"> operate_time, </if> - <if test="deleted != null"> - deleted, - </if> + </trim> <trim prefix="values (" suffix=")" suffixOverrides=","> <if test="id != null"> @@ -57,35 +54,33 @@ <if test="operateDt != null"> #{operateDt,jdbcType=TIMESTAMP}, </if> - <if test="deleted != null"> - #{deleted,jdbcType=TINYINT}, - </if> + </trim> </insert> - <!--閫昏緫鍒犻櫎--> - <delete id="deleteLogicById" parameterType="java.lang.Long"> - <!--@mbg.generated--> - update ir_group_unit - set deleted = 1 - where id = #{id,jdbcType=BIGINT} - </delete> + <delete id="deleteByUnitIdGroupId" parameterType="com.dy.pipIrrGlobal.pojoIr.IrGroupUnit"> - update ir_group_unit - set deleted = 1,operator = #{operator,jdbcType=BIGINT},operate_time = #{operateDt,jdbcType=TIMESTAMP} + delete from ir_group_unit where group_id = #{groupId,jdbcType=BIGINT} and unit_id = #{unitId,jdbcType=BIGINT} </delete> <delete id="deleteByUnitId"> - update ir_group_unit - set deleted = 1 + delete from ir_group_unit where unit_id = #{unitId,jdbcType=BIGINT} </delete> <delete id="deleteByGroupId"> - update ir_group_unit - set deleted = 1 + delete from ir_group_unit where group_id = #{groupId,jdbcType=BIGINT} </delete> + +<!-- //鏌ヤ竴涓疆鐏岀粍缁戝畾鐨勭亴婧夊崟鍏僫d--> + <select id="getGroupBindUnits" parameterType="Long" resultType="java.lang.Long"> + SELECT unit_id AS unitId FROM `ir_group_unit`WHERE group_id = #{groupId,jdbcType=BIGINT} + </select> + + <select id="getNotBindUnits" resultType="java.lang.Long"> + SELECT id FROM ir_irrigate_unit WHERE id NOT IN (SELECT unit_id FROM ir_group_unit) + </select> </mapper> \ No newline at end of file diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrIrrigateGroupMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrIrrigateGroupMapper.xml index fa78683..ae93ff0 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrIrrigateGroupMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrIrrigateGroupMapper.xml @@ -119,7 +119,7 @@ left join ir_project pro on pro.id = gro.project_id left join se_client cli on cli.id = gro.operator left join ir_group_unit gu on gu.group_id = gro.id - where gro.id = #{id,jdbcType=BIGINT} and gro.deleted = 0 and gu.deleted = 0 and pro.deleted = 0 + where gro.id = #{id,jdbcType=BIGINT} and gro.deleted = 0 and pro.deleted != 1 </select> <!--鍒嗛〉鏌ヨ疆鐏岀粍--> @@ -139,7 +139,7 @@ left join se_client cli on cli.id = gro.operator left join ir_group_unit gu on gu.group_id = gro.id <where> - gro.deleted = 0 and gu.deleted = 0 and pro.deleted = 0 + gro.deleted = 0 and pro.deleted != 1 <if test="projectName != null and projectName != ''"> AND pro.project_name LIKE CONCAT('%', #{projectName}, '%') </if> @@ -147,6 +147,7 @@ AND gro.group_code = #{groupCode} </if> </where> + GROUP BY gro.id ORDER BY gro.operate_time DESC <if test="pageCurr != null and pageSize != null"> LIMIT ${(pageCurr-1)*pageSize}, ${pageSize} @@ -154,13 +155,14 @@ </select> <!--鍒嗛〉鏌ヨ疆鐏岀粍璁板綍鏁�--> <select id="getRecordCount" resultType="java.lang.Long"> - SELECT COUNT(*) AS recordCount + SELECT COUNT(*) FROM( + SELECT COUNT(*),gro.id AS recordCount from ir_irrigate_group gro left join ir_project pro on pro.id = gro.project_id left join se_client cli on cli.id = gro.operator left join ir_group_unit gu on gu.group_id = gro.id <where> - gro.deleted = 0 and gu.deleted = 0 and pro.deleted = 0 + gro.deleted = 0 and pro.deleted != 1 <if test="projectName != null and projectName != ''"> AND pro.project_name LIKE CONCAT('%', #{projectName}, '%') </if> @@ -168,5 +170,7 @@ AND gro.group_code = #{groupCode} </if> </where> + GROUP BY gro.id + ) a </select> </mapper> \ No newline at end of file diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrIrrigateSchedulingMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrIrrigateSchedulingMapper.xml new file mode 100644 index 0000000..4346fd1 --- /dev/null +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrIrrigateSchedulingMapper.xml @@ -0,0 +1,173 @@ +<?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.dy.pipIrrGlobal.daoIr.IrIrrigateSchedulingMapper"> + <resultMap id="BaseResultMap" type="com.dy.pipIrrGlobal.pojoIr.IrIrrigateScheduling"> + <!--@mbg.generated--> + <!--@Table ir_irrigate_scheduling--> + <id column="id" jdbcType="BIGINT" property="id" /> + <result column="crop_id" jdbcType="BIGINT" property="cropId" /> + <result column="growth_period" jdbcType="VARCHAR" property="growthPeriod" /> + <result column="irrigate_cycle" jdbcType="INTEGER" property="irrigateCycle" /> + <result column="duration" jdbcType="INTEGER" property="duration" /> + <result column="remarks" jdbcType="VARCHAR" property="remarks" /> + <result column="operator" jdbcType="BIGINT" property="operator" /> + <result column="operate_time" jdbcType="TIMESTAMP" property="operateDt" /> + <result column="deleted" jdbcType="TINYINT" property="deleted" /> + </resultMap> + <sql id="Base_Column_List"> + <!--@mbg.generated--> + id, crop_id,growth_period,irrigate_cycle,duration, remarks,operator,operate_time, deleted + </sql> + <!--娣诲姞--> + <insert id="insertSelective" parameterType="com.dy.pipIrrGlobal.pojoIr.IrIrrigateScheduling"> + insert into ir_irrigate_scheduling + <trim prefix="(" suffix=")" suffixOverrides=","> + <if test="id != null"> + id, + </if> + <if test="cropId != null"> + crop_id, + </if> + <if test="growthPeriod != null"> + growth_period, + </if> + <if test="irrigateCycle != null"> + irrigate_cycle, + </if> + <if test="duration != null"> + duration, + </if> + <if test="operator != null"> + operator, + </if> + <if test="operateDt != null"> + operate_time, + </if> + <if test="remarks != null"> + remarks, + </if> + <if test="deleted != null"> + deleted, + </if> + </trim> + <trim prefix="values (" suffix=")" suffixOverrides=","> + <if test="id != null"> + #{id,jdbcType=BIGINT}, + </if> + <if test="cropId != null"> + #{cropId,jdbcType=BIGINT}, + </if> + <if test="growthPeriod != null"> + #{growthPeriod,jdbcType=VARCHAR}, + </if> + <if test="irrigateCycle != null"> + #{irrigateCycle,jdbcType=INTEGER}, + </if> + <if test="duration != null"> + #{duration,jdbcType=INTEGER}, + </if> + <if test="operator != null"> + #{operator,jdbcType=BIGINT}, + </if> + <if test="operateDt != null"> + #{operateDt,jdbcType=TIMESTAMP}, + </if> + <if test="remarks != null"> + #{remarks,jdbcType=VARCHAR}, + </if> + <if test="deleted != null"> + #{deleted,jdbcType=TINYINT}, + </if> + </trim> + </insert> + <!--閫昏緫鍒犻櫎--> + <delete id="deleteLogicById" parameterType="java.lang.Long"> + <!--@mbg.generated--> + update ir_irrigate_scheduling + set deleted = 1 + where id = #{id,jdbcType=BIGINT} + </delete> + + <!--淇敼淇℃伅--> + <update id="updateByPrimaryKeySelective" parameterType="com.dy.pipIrrGlobal.pojoIr.IrIrrigateScheduling"> + update ir_irrigate_scheduling + <set> + <if test="cropId != null"> + crop_id = #{cropId,jdbcType=BIGINT}, + </if> + <if test="growthPeriod != null"> + growth_period = #{growthPeriod,jdbcType=VARCHAR}, + </if> + <if test="irrigateCycle != null"> + irrigate_cycle = #{irrigateCycle,jdbcType=INTEGER}, + </if> + <if test="duration != null"> + duration = #{duration,jdbcType=INTEGER}, + </if> + <if test="operator != null"> + operator = #{operator,jdbcType=BIGINT}, + </if> + <if test="operateDt != null"> + operate_time = #{operateDt,jdbcType=TIMESTAMP}, + </if> + <if test="remarks != null"> + remarks = #{remarks,jdbcType=VARCHAR}, + </if> + <if test="deleted != null"> + deleted = #{deleted,jdbcType=TINYINT}, + </if> + </set> + where id = #{id,jdbcType=BIGINT} + </update> + + <select id="getRecordCount" resultType="java.lang.Long"> + SELECT COUNT(*) AS recordCount + from ir_irrigate_scheduling sch + left join ir_crop cro on cro.id = sch.crop_id + <where> + sch.deleted = 0 + <if test="cropName != null and cropName != ''"> + AND cro.crop_name LIKE CONCAT('%', #{cropName}, '%') + </if> + </where> + </select> + + <select id="getSchedulings" resultType="com.dy.pipIrrGlobal.voIr.VoScheduling"> + SELECT + CAST(sch.id AS char)AS id, + cro.crop_name AS cropName, + sch.growth_period AS growthPeriod, + sch.irrigate_cycle AS irrigateCycle, + sch.remarks AS remarks, + sch.duration AS duration + from ir_irrigate_scheduling sch + left join ir_crop cro on cro.id = sch.crop_id + <where> + sch.deleted = 0 + <if test="cropName != null and cropName != ''"> + AND cro.crop_name LIKE CONCAT('%', #{cropName}, '%') + </if> + </where> + <if test="pageCurr != null and pageSize != null"> + LIMIT ${(pageCurr-1)*pageSize}, ${pageSize} + </if> + </select> + + <select id="selectById" resultType="com.dy.pipIrrGlobal.voIr.VoSchedulingOne"> + select + CAST(sch.id AS char)AS id, + CAST(cro.id AS char)AS cropId, + cro.crop_name AS cropName, + sch.growth_period AS growthPeriod, + sch.irrigate_cycle AS irrigateCycle, + sch.duration AS duration, + sch.remarks AS remarks, + CAST(sch.operator AS char)AS operator, + cli.name AS operatorName, + sch.operate_time AS operateDt + from ir_irrigate_scheduling sch + left join ir_crop cro on cro.id = sch.crop_id + left join se_client cli on cli.id = sch.operator + where sch.id = #{id,jdbcType=BIGINT} and sch.deleted = 0 + </select> +</mapper> \ No newline at end of file diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrIrrigateUnitMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrIrrigateUnitMapper.xml index 0c9c37a..b0fdd3c 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrIrrigateUnitMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/IrIrrigateUnitMapper.xml @@ -110,12 +110,15 @@ CAST(uni.id AS char)AS id, CAST(uni.operator AS char)AS operator, cli.name AS operatorName, + gru.group_code AS groupCode, uni.area, uni.remarks, uni.operate_time AS operateDt from ir_irrigate_unit uni left join ir_project pro on pro.id = uni.project_id left join se_client cli on cli.id = uni.operator + left join ir_group_unit gu on gu.unit_id = uni.id + left join ir_irrigate_group gru on gru.id = gu.group_id where uni.id = #{id,jdbcType=BIGINT} and uni.deleted = 0 </select> <!--鍒嗛〉鏌ョ亴婧夊崟鍏�--> @@ -126,20 +129,23 @@ CAST(uni.id AS char)AS unitId, CAST(uni.operator AS char)AS operator, cli.name AS operatorName, + gru.group_code AS groupCode, uni.area, uni.remarks, uni.operate_time AS operateDt FROM ir_irrigate_unit uni left join ir_project pro on pro.id = uni.project_id left join se_client cli on cli.id = uni.operator + left join ir_group_unit gu on gu.unit_id = uni.id + left join ir_irrigate_group gru on gru.id = gu.group_id <where> uni.deleted = 0 <if test="projectName != null and projectName != ''"> AND pro.project_name LIKE CONCAT('%', #{projectName}, '%') </if> -<!-- <if test = "groupCode != null and groupCode != ''">--> -<!-- AND pro.project_state = #{groupCode}--> -<!-- </if>--> + <if test = "groupCode != null and groupCode != ''"> + AND gru.group_code = #{groupCode} + </if> </where> ORDER BY uni.operate_time DESC <if test="pageCurr != null and pageSize != null"> @@ -152,14 +158,16 @@ FROM ir_irrigate_unit uni left join ir_project pro on pro.id = uni.project_id left join se_client cli on cli.id = uni.operator + left join ir_group_unit gu on gu.unit_id = uni.id + left join ir_irrigate_group gru on gru.id = gu.group_id <where> uni.deleted = 0 <if test="projectName != null and projectName != ''"> AND pro.project_name LIKE CONCAT('%', #{projectName}, '%') </if> - <!-- <if test = "groupCode != null and groupCode != ''">--> - <!-- AND pro.project_state = #{groupCode}--> - <!-- </if>--> + <if test = "groupCode != null and groupCode != ''"> + AND gru.group_code = #{groupCode} + </if> </where> </select> </mapper> \ No newline at end of file diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/resources/application-database.yml b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/resources/application-database.yml index 9a35e83..ccde4de 100644 --- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/resources/application-database.yml +++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/resources/application-database.yml @@ -7,4 +7,11 @@ username: root password: dysql,;.abc!@# druid: - # 璇存槑: 濡傛灉浣犳病鏈夋寚瀹歶seSSL=true ,鍚姩椤圭洰浼氭姤绾㈣鍛�, 鐜鐨勯棶棰橈紝瑕佺伒娲诲鐞� \ No newline at end of file + #鏁版嵁婧愬悕绉帮細褰撳瓨鍦ㄥ涓暟鎹簮鏃讹紝璁剧疆鍚嶅瓧鍙互寰堟柟渚跨殑鏉ヨ繘琛屽尯鍒�,榛樿鑷姩鐢熸垚鍚嶇О锛屾牸寮忔槸锛�"DataSource-" + System.identityHashCode(this) + #name: name: druid-mysql-mw-rtu 鍗曟暟鎹簮涓嶈捣浣滅敤锛屾墍浠ユ敞閲婃帀 + #閰嶇疆鍒濆鍖栧ぇ灏忋�佹渶灏忋�佹渶澶� + initialSize: 10 + minIdle: 10 + maxActive: 200 + # 鑾峰彇杩炴帴鏃舵渶澶х瓑寰呮椂闂�,鍗曚綅姣銆傞厤缃簡maxWait涔嬪悗,缂虹渷鍚敤鍏钩閿�,骞跺彂鏁堢巼浼氭湁鎵�涓嬮檷,濡傛灉闇�瑕佸彲浠ラ�氳繃閰嶇疆useUnfairLock灞炴�т负true浣跨敤闈炲叕骞抽攣 + maxWait: 60000 diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/resources/log4j2.yml b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/resources/log4j2.yml index c2dcc3f..afbac2b 100644 --- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/resources/log4j2.yml +++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/resources/log4j2.yml @@ -62,7 +62,7 @@ AppenderRef: #Root鐨勫瓙鑺傜偣锛岀敤鏉ユ寚瀹氳鏃ュ織杈撳嚭鍒板摢涓狝ppender. - ref: CONSOLE #杈撳嚭鏃ュ織鏃讹紝棣栧厛鐢辨湰level鍒ゆ柇鏄惁杈撳嚭锛岀劧鍚庡啀鐢变笂闈㈢殑Appenders.Console.ThresholdFilter.level鍒ゆ柇鏄惁杈撳嚭 - ref: ROLLING_FILE #杈撳嚭鏃ュ織鏃讹紝棣栧厛鐢辨湰level鍒ゆ柇鏄惁杈撳嚭锛岀劧鍚庡啀鐢变笂闈㈢殑Appenders.RollingFile.ThresholdFilter.level鍒ゆ柇鏄惁杈撳嚭 - # 涓哄寘閰嶇疆鐗规畩鐨凩og绾у埆锛屾柟渚胯皟璇曪紝 + # 涓虹被鍖呰矾寰勯厤缃壒娈婄殑Log绾у埆锛屾柟渚胯皟璇曪紝 # 涓嶅彈Loggers.Root.level闄愬埗 Logger: - name: com.dy.pipIrrGlobal.daoBa diff --git a/pipIrr-platform/pipIrr-web/pipIrr-mwTest-web/src/main/java/com/dy/pipIrrMwTestWeb/PipIrrMwTestWebApplication.java b/pipIrr-platform/pipIrr-web/pipIrr-mwTest-web/src/main/java/com/dy/pipIrrMwTestWeb/PipIrrMwTestWebApplication.java index 395a6ad..4fb99e3 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-mwTest-web/src/main/java/com/dy/pipIrrMwTestWeb/PipIrrMwTestWebApplication.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-mwTest-web/src/main/java/com/dy/pipIrrMwTestWeb/PipIrrMwTestWebApplication.java @@ -1,9 +1,7 @@ package com.dy.pipIrrMwTestWeb; -import com.dy.common.webUtil.BaseResponse; import com.dy.pipIrrMwTestWeb.test.CommandCtrl; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.CommandLineRunner; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration; diff --git a/pipIrr-platform/pipIrr-web/pipIrr-mwTest-web/src/main/java/com/dy/pipIrrMwTestWeb/test/CommandCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-mwTest-web/src/main/java/com/dy/pipIrrMwTestWeb/test/CommandCtrl.java index ec70bf2..e121ea3 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-mwTest-web/src/main/java/com/dy/pipIrrMwTestWeb/test/CommandCtrl.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-mwTest-web/src/main/java/com/dy/pipIrrMwTestWeb/test/CommandCtrl.java @@ -21,13 +21,21 @@ @GetMapping(path = "test") public BaseResponse<String> test() { //return this.connect() ;//杩炴帴閫氫俊涓棿浠舵祴璇� - //return this.cdXY(CodeV202404.cd_30) ;//鍙戦�佸浐瀹氬弬鏁癤Y鐨勫懡浠� + //return this.cdXY(CodeV202404.cd_9C) ;//鍙戦�佸浐瀹氬弬鏁癤Y鐨勫懡浠� //return this.cd55(1) ; //return this.cd15() ; //return this.cd16() ; + //return this.cd21() ; //return this.cd22() ; + //return this.cd23() ; + //return this.cd24() ; + //return this.cd26() ; //return this.cd31() ; - return this.cd92() ; + //return this.cd86() ; + //return this.cd87() ; + //return this.cd92() ; + //return this.cd93() ; + return this.cd9C() ; } /** @@ -80,8 +88,8 @@ comVo.controllerType = CommandCtrl.controllerType ; comVo.projectNo = CommandCtrl.projectNo ; comVo.channel = 1 ;//IP閫氶亾鍙�(鍙栧�艰寖鍥� 1銆�2). - comVo.ip = "111.222.123.321" ;//IP锛堜緥濡� 125.235.35.89锛� - comVo.port = 60000 ;///绔彛鍙凤紙0~65536锛� + comVo.ip = "8.140.180.59" ;//IP锛堜緥濡� 125.235.35.89锛� + comVo.port = 6001 ;///绔彛鍙凤紙0~65536锛� return this.sendCom2Mw(this.command(CodeV202404.cd_21, comVo, null)) ; } @@ -90,8 +98,8 @@ ComCd22Vo comVo = new ComCd22Vo() ; comVo.controllerType = CommandCtrl.controllerType ; comVo.projectNo = CommandCtrl.projectNo ; - comVo.maxAmountYear = 12345 ;//鏈轰簳骞存渶澶х敤姘撮噺鍗曚綅锛歮3 鏁存暟锛屽彇鍊艰寖鍥�0~99999999 - comVo.limitLevel = 123.4; //姘翠綅涓嬮檺 鍗曚綅锛歮 鍙栧�艰寖鍥�:0~9999.99 + comVo.maxAmountYear = 99998888 ;//鏈轰簳骞存渶澶х敤姘撮噺鍗曚綅锛歮3 鏁存暟锛屽彇鍊艰寖鍥�0~99999999 + comVo.limitLevel = 9978.60; //姘翠綅涓嬮檺 鍗曚綅锛歮 鍙栧�艰寖鍥�:0~9999.99 return this.sendCom2Mw(this.command(CodeV202404.cd_22, comVo, null)) ; } @@ -101,8 +109,8 @@ comVo.controllerType = CommandCtrl.controllerType ; comVo.projectNo = CommandCtrl.projectNo ; comVo.channel = 1 ;//IP閫氶亾鍙�(鍙栧�艰寖鍥� 1銆�2). - comVo.domain = "www.baidu.com" ;//鍩熷悕锛堜緥濡� dayuyanjiuyuan.to锛夛紝鏈�澶ч暱搴�42瀛楃 - comVo.port = 60000 ;///绔彛鍙凤紙0~65536锛� + comVo.domain = "dayuyanjiuyuan.top" ;//鍩熷悕锛堜緥濡� dayuyanjiuyuan.top锛夛紝鏈�澶ч暱搴�42瀛楃 + comVo.port = 6001 ;///绔彛鍙凤紙0~65536锛� return this.sendCom2Mw(this.command(CodeV202404.cd_23, comVo, null)) ; } @@ -111,7 +119,7 @@ ComCd24Vo comVo = new ComCd24Vo() ; comVo.controllerType = CommandCtrl.controllerType ; comVo.projectNo = CommandCtrl.projectNo ; - comVo.registerNo = "102030405060708090" ;//鍩熷悕锛堜緥濡� dayuyanjiuyuan.to锛夛紝鏈�澶ч暱搴�42瀛楃 + comVo.registerNo = "10203040506070809000" ;// return this.sendCom2Mw(this.command(CodeV202404.cd_24, comVo, null)) ; } @@ -120,8 +128,7 @@ ComCd26Vo comVo = new ComCd26Vo() ; comVo.controllerType = CommandCtrl.controllerType ; comVo.projectNo = CommandCtrl.projectNo ; - comVo.ipChannel = 1 ;//IP閫氶亾鍙� 0x01:1閫氶亾 0x02:2閫氶亾. - comVo.maxAmountYear = 123456 ;//璁惧缁堢骞寸敤姘撮噺 鍗曚綅锛歮3 鏁存暟锛屽彇鍊艰寖鍥�0~99999999 + comVo.maxAmountYear = 200 ;//璁惧缁堢骞寸敤姘撮噺 鍗曚綅锛歮3 鏁存暟锛屽彇鍊艰寖鍥�0~99999999 return this.sendCom2Mw(this.command(CodeV202404.cd_26, comVo, null)) ; } @@ -208,6 +215,16 @@ return this.sendCom2Mw(this.command(CodeV202404.cd_93, comVo, null)) ; } + + //骞冲彴/APP杩滅▼鍏抽棴姘存车/闃�闂�(AFN=0x93H/AFN=0xA3H) + private BaseResponse cd9C(){ + ComCd9CVo comVo = new ComCd9CVo() ; + comVo.controllerType = CommandCtrl.controllerType ; + comVo.projectNo = CommandCtrl.projectNo ; + comVo.icCardAddr = "04BEA5BB" ;// + + return this.sendCom2Mw(this.command(CodeV202404.cd_9C, comVo, null)) ; + } //骞冲彴/APP杩滅▼鍏抽棴姘存车/闃�闂�(AFN=0x93H/AFN=0xA3H) private BaseResponse cdA3(){ ComCd93_A3Vo comVo = new ComCd93_A3Vo() ; diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/crop/CropCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/crop/CropCtrl.java new file mode 100644 index 0000000..544ad1c --- /dev/null +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/crop/CropCtrl.java @@ -0,0 +1,202 @@ +package com.dy.pipIrrIrrigate.crop; + +import com.dy.common.aop.SsoAop; +import com.dy.common.webUtil.BaseResponse; +import com.dy.common.webUtil.BaseResponseUtils; +import com.dy.common.webUtil.QueryResultVo; +import com.dy.common.webUtil.ResultCodeMsg; +import com.dy.pipIrrGlobal.pojoIr.IrCrop; +import com.dy.pipIrrGlobal.pojoIr.IrProject; +import com.dy.pipIrrGlobal.voIr.VoCrop; +import com.dy.pipIrrGlobal.voIr.VoCropOne; +import com.dy.pipIrrGlobal.voIr.VoProject; +import com.dy.pipIrrGlobal.voIr.VoProjectOne; +import com.dy.pipIrrGlobal.voSe.VoActiveCard; +import com.dy.pipIrrIrrigate.crop.QueryVo; +import com.dy.pipIrrIrrigate.result.IrrigateResultCode; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.media.Content; +import io.swagger.v3.oas.annotations.media.Schema; +import io.swagger.v3.oas.annotations.responses.ApiResponse; +import io.swagger.v3.oas.annotations.responses.ApiResponses; +import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.validation.Valid; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.http.MediaType; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.validation.BindingResult; +import org.springframework.web.bind.annotation.*; + +import java.util.List; +import java.util.Map; +import java.util.Objects; +import java.util.Optional; + +/** + * @author :WuZeYu + * @Date :2024/5/24 19:38 + * @LastEditTime :2024/5/24 19:38 + * @Description + */ +@Slf4j +@Tag(name = "浣滅墿绠$悊", description = "浣滅墿鎿嶄綔") +@RestController +@RequestMapping(path = "crop") +@RequiredArgsConstructor +public class CropCtrl { + + private final CropSv cropSv; + + /** + * 娣诲姞浣滅墿 + * + * @param po 浣滅墿瀹炰綋瀵硅薄 + * @param bindingResult + * @return 娣诲姞鏄惁鎴愬姛 + */ + @Operation(summary = "娣诲姞浣滅墿璁板綍", description = "娣诲姞浣滅墿璁板綍") + @ApiResponses(value = { + @ApiResponse( + responseCode = ResultCodeMsg.RsCode.SUCCESS_CODE, + description = "鎿嶄綔缁撴灉锛歵rue锛氭垚鍔燂紝false锛氬け璐ワ紙BaseResponse.content锛�", + content = {@Content(mediaType = MediaType.APPLICATION_JSON_VALUE, + schema = @Schema(implementation = Boolean.class))} + ) + }) + @PostMapping(path = "add", consumes = MediaType.APPLICATION_JSON_VALUE) + @Transactional(rollbackFor = Exception.class) + @SsoAop() + public BaseResponse<Boolean> add(@RequestBody @Valid IrCrop po, BindingResult bindingResult) { + if (bindingResult != null && bindingResult.hasErrors()) { + return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); + } + try { + Integer rec = Optional.ofNullable(cropSv.addCrop(po)).orElse(0); + if (rec == 0) { + return BaseResponseUtils.buildFail(IrrigateResultCode.ADD_PROJECT_FAIL.getMessage()); + } + } catch (Exception e) { + log.error("娣诲姞浣滅墿寮傚父", e); + return BaseResponseUtils.buildException(e.getMessage()); + } + return BaseResponseUtils.buildSuccess(true); + } + + /** + * 閫昏緫鍒犻櫎浣滅墿 + * @param map + * @return + */ + @Operation(summary = "閫昏緫鍒犻櫎浣滅墿", description = "閫昏緫鍒犻櫎浣滅墿") + @ApiResponses(value = { + @ApiResponse( + responseCode = ResultCodeMsg.RsCode.SUCCESS_CODE, + description = "鎿嶄綔缁撴灉锛歵rue锛氭垚鍔燂紝false锛氬け璐ワ紙BaseResponse.content锛�", + content = {@Content(mediaType = MediaType.APPLICATION_JSON_VALUE, + schema = @Schema(implementation = Boolean.class))} + ) + }) + @PostMapping(path = "delete", consumes = MediaType.APPLICATION_JSON_VALUE) + @Transactional(rollbackFor = Exception.class) + @SsoAop() + public BaseResponse<Boolean> delete(@RequestBody Map map) { + if (map == null || map.size() <= 0) { + BaseResponseUtils.buildFail(IrrigateResultCode.PLEASE_INPUT_PROJECT_ID.getMessage()); + } + Long cropId = Long.parseLong(map.get("id").toString()); + try { + Integer rows = cropSv.deleteCrop(cropId); + if (rows == 0) { + return BaseResponseUtils.buildFail(IrrigateResultCode.DELETE_PROJECT_FAIL.getMessage()); + } + } catch (Exception e) { + log.error("鍒犻櫎浣滅墿寮傚父", e); + return BaseResponseUtils.buildException(e.getMessage()); + } + return BaseResponseUtils.buildSuccess(true); + } + + /** + * 淇敼浣滅墿淇℃伅 + * @param po + * @param bindingResult + * @return + */ + @Operation(summary = "淇敼浣滅墿淇℃伅", description = "淇敼浣滅墿淇℃伅") + @ApiResponses(value = { + @ApiResponse( + responseCode = ResultCodeMsg.RsCode.SUCCESS_CODE, + description = "鎿嶄綔缁撴灉锛歵rue锛氭垚鍔燂紝false锛氬け璐ワ紙BaseResponse.content锛�", + content = {@Content(mediaType = MediaType.APPLICATION_JSON_VALUE, + schema = @Schema(implementation = Boolean.class))} + ) + }) + @PostMapping(path = "update", consumes = MediaType.APPLICATION_JSON_VALUE) + @Transactional(rollbackFor = Exception.class) + @SsoAop() + public BaseResponse<Boolean> update(@RequestBody @Valid IrCrop po, BindingResult bindingResult){ + if (bindingResult != null && bindingResult.hasErrors()) { + return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); + } + try { + Integer rec = Optional.ofNullable(cropSv.updateCrop(po)).orElse(0); + if (rec == 0) { + return BaseResponseUtils.buildFail(IrrigateResultCode.UPDATE_PROJECT_FAIL.getMessage()); + } + } catch (Exception e) { + log.error("淇敼浣滅墿寮傚父", e); + return BaseResponseUtils.buildException(e.getMessage()); + } + return BaseResponseUtils.buildSuccess(true); + } + + /** + * 鍒嗛〉鏌ヨ + * @param vo + * @return + */ + @Operation(summary = "鑾峰緱涓�椤典綔鐗╄褰�", description = "鑾峰緱涓�椤典綔鐗╄褰�") + @ApiResponses(value = { + @ApiResponse( + responseCode = ResultCodeMsg.RsCode.SUCCESS_CODE, + description = "鑾峰緱涓�椤典綔鐗╄褰曪紙BaseResponse.content:QueryResultVo[{}]锛�", + content = {@Content(mediaType = MediaType.APPLICATION_JSON_VALUE, + schema = @Schema(implementation = VoActiveCard.class))} + ) + }) + @GetMapping(path = "some") + @SsoAop() + public BaseResponse<QueryResultVo<List<VoCrop>>> getCrops(QueryVo vo) { + try { + QueryResultVo<List<VoCrop>> res = cropSv.getCrops(vo); + return BaseResponseUtils.buildSuccess(res); + } catch (Exception e) { + log.error("鑾峰彇浣滅墿璁板綍寮傚父", e); + return BaseResponseUtils.buildException(e.getMessage()); + } + } + + /** + * 鑾峰彇涓�涓綔鐗╂暟鎹� + * + * @return 鑾峰彇涓�涓綔鐗╂暟鎹� + */ + @Operation(summary = "鑾峰彇涓�涓綔鐗╂暟鎹�", description = "鑾峰彇涓�涓綔鐗╂暟鎹�") + @ApiResponses(value = { + @ApiResponse( + responseCode = ResultCodeMsg.RsCode.SUCCESS_CODE, + description = "鑾峰彇涓�涓綔鐗╂暟鎹紙BaseResponse.content:{}锛�", + content = {@Content(mediaType = MediaType.APPLICATION_JSON_VALUE, + schema = @Schema(implementation = IrProject.class))} + ) + }) + @GetMapping(path = "one") + @SsoAop() + public BaseResponse<VoCropOne> one(@RequestParam Long id) { + VoCropOne irCrop = this.cropSv.selectById(id); + + return BaseResponseUtils.buildSuccess(irCrop); + + } +} diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/crop/CropSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/crop/CropSv.java new file mode 100644 index 0000000..820d557 --- /dev/null +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/crop/CropSv.java @@ -0,0 +1,99 @@ +package com.dy.pipIrrIrrigate.crop; + +import com.dy.common.webUtil.QueryResultVo; +import com.dy.pipIrrGlobal.daoIr.IrCropMapper; + +import com.dy.pipIrrGlobal.pojoIr.IrCrop; +import com.dy.pipIrrGlobal.voIr.VoCrop; +import com.dy.pipIrrGlobal.voIr.VoCropOne; +import com.dy.pipIrrGlobal.voIr.VoProjectOne; +import com.dy.pipIrrIrrigate.crop.QueryVo; +import lombok.extern.slf4j.Slf4j; +import org.apache.dubbo.common.utils.PojoUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.Date; +import java.util.List; +import java.util.Map; + +/** + * @author :WuZeYu + * @Date :2024/5/24 19:38 + * @LastEditTime :2024/5/24 19:38 + * @Description + */ +@Slf4j +@Service +public class CropSv { + + @Autowired + private IrCropMapper irCropMapper; + + /** + * 娣诲姞椤圭洰 + * + * @param po + * @return + */ + public Integer addCrop(IrCrop po) { + po.setDeleted((byte) 0); + int rows = irCropMapper.insertSelective(po); + if (rows == 0) { + return 0; + } + return 1; + } + /** + * 鍒犻櫎椤圭洰 + * + * @param id + */ + public Integer deleteCrop(Long id) { + int rows = irCropMapper.deleteLogicById(id); + if (rows == 0) { + return 0; + } + return 1; + } + + /** + * 淇敼椤圭洰淇℃伅 + * @param po + * @return + */ + public Integer updateCrop(IrCrop po){ + int rows = irCropMapper.updateByPrimaryKeySelective(po); + if (rows == 0){ + return 0; + } + return 1; + } + + /** + * 鍒嗛〉鏌ヨ椤圭洰 + * @param queryVo + * @return + */ + public QueryResultVo<List<VoCrop>> getCrops(QueryVo queryVo){ + Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo); + Long itemTotal = irCropMapper.getRecordCount(params); + + QueryResultVo<List<VoCrop>> rsVo = new QueryResultVo<>(); + rsVo.pageSize = queryVo.pageSize; + rsVo.pageCurr = queryVo.pageCurr; + rsVo.calculateAndSet(itemTotal, params); + rsVo.obj = irCropMapper.getCrops(params); + return rsVo; + } + + /** + * 鑾峰彇涓�涓綔鐗╂暟鎹� + * @param id + * @return + */ + public VoCropOne selectById(Long id){ + VoCropOne irCrop = irCropMapper.selectById(id); + return irCrop; + } +} diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/crop/QueryVo.java b/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/crop/QueryVo.java new file mode 100644 index 0000000..86217ff --- /dev/null +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/crop/QueryVo.java @@ -0,0 +1,23 @@ +package com.dy.pipIrrIrrigate.crop; + +import com.dy.common.webUtil.QueryConditionVo; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; + +/** + * @author :WuZeYu + * @Date :2024/5/24 19:53 + * @LastEditTime :2024/5/24 19:53 + * @Description + */ +@Data +@EqualsAndHashCode(callSuper = false) +@ToString(callSuper = true) +@NoArgsConstructor +@AllArgsConstructor +@Builder +@Schema(name = "浣滅墿鏌ヨ鏉′欢") +public class QueryVo extends QueryConditionVo { + @Schema(description = "浣滅墿鍚嶇О") + public String cropName; +} diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/irrigateGroup/IrrigateGroupCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/irrigateGroup/IrrigateGroupCtrl.java index 092c73d..cb35271 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/irrigateGroup/IrrigateGroupCtrl.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/irrigateGroup/IrrigateGroupCtrl.java @@ -100,16 +100,16 @@ schema = @Schema(implementation = Boolean.class))} ) }) - @GetMapping(path = "delete") + @PostMapping(path = "delete") @Transactional(rollbackFor = Exception.class) @SsoAop() - public BaseResponse<Boolean> delete( Long id) { - if (id == null ) { + public BaseResponse<Boolean> delete(@RequestBody Map map) { + if (map == null || map.size() <= 0) { BaseResponseUtils.buildFail(IrrigateResultCode.PLEASE_INPUT_PROJECT_ID.getMessage()); } -// Long groupId = Long.parseLong(map.get("id").toString()); + Long groupId = Long.parseLong(map.get("id").toString()); try { - Integer rows = irrigateGroupSv.deleteIrrigateGroup(id); + Integer rows = irrigateGroupSv.deleteIrrigateGroup(groupId); if (rows == 0) { return BaseResponseUtils.buildFail(IrrigateResultCode.DELETE_PROJECT_FAIL.getMessage()); } @@ -250,14 +250,24 @@ @PostMapping(path = "add_unit", consumes = MediaType.APPLICATION_JSON_VALUE) @Transactional(rollbackFor = Exception.class) @SsoAop() - public BaseResponse<Boolean> addGroupUnit(@RequestBody @Valid IrGroupUnit po, BindingResult bindingResult) { + public BaseResponse<Boolean> addGroupUnit(@RequestBody @Valid Map<String,Object> po, BindingResult bindingResult) { if (bindingResult != null && bindingResult.hasErrors()) { return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); } + Long groupId = Long.parseLong(po.get("groupId").toString()); + Long operator = Long.parseLong(po.get("operator").toString()); + List<Long> unitIds = (List<Long>) po.get("unitIds"); try { - Integer rec = Optional.ofNullable(irrigateGroupSv.addGroupUnit(po)).orElse(0); - if (rec == 0) { - return BaseResponseUtils.buildFail(IrrigateResultCode.ADD_PROJECT_FAIL.getMessage()); + for (int i = 0; i < unitIds.size(); i++) { + Long unitId = unitIds.get(i); + IrGroupUnit irGroupUnit = new IrGroupUnit(); + irGroupUnit.setGroupId(groupId); + irGroupUnit.setUnitId(unitId); + irGroupUnit.setOperator(operator); + Integer rec = Optional.ofNullable(irrigateGroupSv.addGroupUnit(irGroupUnit)).orElse(0); + if (rec == 0) { + return BaseResponseUtils.buildFail(IrrigateResultCode.ADD_PROJECT_FAIL.getMessage()); + } } } catch (Exception e) { log.error("杞亴缁勬坊鍔犵亴婧夊崟鍏冨紓甯�", e); @@ -267,7 +277,7 @@ } /** - * 閫昏緫鍒犻櫎 杞亴缁勭Щ闄ょ亴婧夊崟鍏� + * 杞亴缁勭Щ闄ょ亴婧夊崟鍏� * @param * @return */ @@ -283,19 +293,54 @@ @PostMapping(path = "remove_unit") @Transactional(rollbackFor = Exception.class) @SsoAop() - public BaseResponse<Boolean> deleteGroupUnit(@RequestBody @Valid IrGroupUnit po, BindingResult bindingResult) { + public BaseResponse<Boolean> deleteGroupUnit(@RequestBody @Valid Map<String,Object> po, BindingResult bindingResult) { if (bindingResult != null && bindingResult.hasErrors()) { return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); } + Long groupId = Long.parseLong(po.get("groupId").toString()); + Long operator = Long.parseLong(po.get("operator").toString()); + List<Long> unitIds = (List<Long>) po.get("unitIds"); try { - Integer rec = Optional.ofNullable(irrigateGroupSv.deleteGroupUnit(po)).orElse(0); - if (rec == 0) { - return BaseResponseUtils.buildFail(IrrigateResultCode.DELETE_PROJECT_FAIL.getMessage()); + for (int i = 0; i < unitIds.size(); i++) { + Long unitId = unitIds.get(i); + IrGroupUnit irGroupUnit = new IrGroupUnit(); + irGroupUnit.setGroupId(groupId); + irGroupUnit.setUnitId(unitId); + irGroupUnit.setOperator(operator); + Integer rec = Optional.ofNullable(irrigateGroupSv.deleteGroupUnit(irGroupUnit)).orElse(0); + if (rec == 0) { + return BaseResponseUtils.buildFail(IrrigateResultCode.DELETE_PROJECT_FAIL.getMessage()); + } } + } catch (Exception e) { log.error("杞亴缁勭Щ闄ょ亴婧夊崟鍏冨紓甯�", e); return BaseResponseUtils.buildException(e.getMessage()); } return BaseResponseUtils.buildSuccess(true); } + + @GetMapping(path = "bind_units") + @SsoAop() + public BaseResponse<List<Long>> getGroupBindUnits(Long id) { + try { + List<Long> res = irrigateGroupSv.getGroupBindUnits(id); + return BaseResponseUtils.buildSuccess(res); + } catch (Exception e) { + log.error("鑾峰彇涓�涓疆鐏岀粍缁戝畾鐏屾簤鍗曞厓璁板綍寮傚父", e); + return BaseResponseUtils.buildException(e.getMessage()); + } + } + + @GetMapping(path = "notBind_units") + @SsoAop() + public BaseResponse<List<Long>> getNotBindUnits() { + try { + List<Long> res = irrigateGroupSv.getNotBindUnits(); + return BaseResponseUtils.buildSuccess(res); + } catch (Exception e) { + log.error("鑾峰彇鏈粦瀹氳疆鐏岀粍鐨勭亴婧夊崟鍏僫d璁板綍寮傚父", e); + return BaseResponseUtils.buildException(e.getMessage()); + } + } } diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/irrigateGroup/IrrigateGroupSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/irrigateGroup/IrrigateGroupSv.java index f776ad5..d1e3e50 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/irrigateGroup/IrrigateGroupSv.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/irrigateGroup/IrrigateGroupSv.java @@ -110,7 +110,6 @@ */ public Integer addGroupUnit(IrGroupUnit po) { po.setOperateDt(new Date()); - po.setDeleted((byte) 0); int rows = irGroupUnitMapper.insertSelective(po); if (rows == 0) { return 0; @@ -125,11 +124,29 @@ * @return */ public Integer deleteGroupUnit(IrGroupUnit po) { - po.setOperateDt(new Date()); int rows = irGroupUnitMapper.deleteByUnitIdGroupId(po); if (rows == 0) { return 0; } return 1; } + + /** + * 鏌ヤ竴涓疆鐏岀粍缁戝畾鐨勭亴婧夊崟鍏僫d + * @param groupId + * @return + */ + public List<Long> getGroupBindUnits(Long groupId) { + List<Long> groupBindUnits = irGroupUnitMapper.getGroupBindUnits(groupId); + return groupBindUnits; + } + + /** + * //鏌ユ湭缁戝畾杞亴缁勭殑鐏屾簤鍗曞厓id + * @return + */ + public List<Long> getNotBindUnits() { + List<Long> notBindUnits = irGroupUnitMapper.getNotBindUnits(); + return notBindUnits; + } } diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/irrigateScheduling/IrIrrigateSchedulingSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/irrigateScheduling/IrIrrigateSchedulingSv.java new file mode 100644 index 0000000..cd4dbe7 --- /dev/null +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/irrigateScheduling/IrIrrigateSchedulingSv.java @@ -0,0 +1,97 @@ +package com.dy.pipIrrIrrigate.irrigateScheduling; + +import com.dy.common.webUtil.QueryResultVo; +import com.dy.pipIrrGlobal.daoIr.IrIrrigateSchedulingMapper; +import com.dy.pipIrrGlobal.pojoIr.IrIrrigateScheduling; +import com.dy.pipIrrGlobal.voIr.VoScheduling; +import com.dy.pipIrrGlobal.voIr.VoSchedulingOne; +import lombok.extern.slf4j.Slf4j; +import org.apache.dubbo.common.utils.PojoUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.Date; +import java.util.List; +import java.util.Map; + +/** + * @author :WuZeYu + * @Date :2024/5/27 10:12 + * @LastEditTime :2024/5/27 10:12 + * @Description + */ +@Slf4j +@Service +public class IrIrrigateSchedulingSv { + + @Autowired + private IrIrrigateSchedulingMapper irIrrigateSchedulingMapper; + + /** + * 娣诲姞浣滅墿鐏屾簤鍒跺害 + * + * @param po + * @return + */ + public Integer addScheduling(IrIrrigateScheduling po) { + po.setDeleted((byte) 0); + po.setOperateDt(new Date()); + int rows = irIrrigateSchedulingMapper.insertSelective(po); + if (rows == 0) { + return 0; + } + return 1; + } + /** + * 鍒犻櫎浣滅墿鐏屾簤鍒跺害 + * + * @param id + */ + public Integer deleteScheduling(Long id) { + int rows = irIrrigateSchedulingMapper.deleteLogicById(id); + if (rows == 0) { + return 0; + } + return 1; + } + + /** + * 淇敼浣滅墿鐏屾簤鍒跺害 + * @param po + * @return + */ + public Integer updateScheduling(IrIrrigateScheduling po){ + int rows = irIrrigateSchedulingMapper.updateByPrimaryKeySelective(po); + if (rows == 0){ + return 0; + } + return 1; + } + + /** + * 鍒嗛〉鏌ヨ浣滅墿鐏屾簤鍒跺害 + * @param queryVo + * @return + */ + public QueryResultVo<List<VoScheduling>> getSchedulings(QueryVo queryVo){ + Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo); + Long itemTotal = irIrrigateSchedulingMapper.getRecordCount(params); + + QueryResultVo<List<VoScheduling>> rsVo = new QueryResultVo<>(); + rsVo.pageSize = queryVo.pageSize; + rsVo.pageCurr = queryVo.pageCurr; + rsVo.calculateAndSet(itemTotal, params); + rsVo.obj = irIrrigateSchedulingMapper.getSchedulings(params); + return rsVo; + } + + /** + * 鑾峰彇涓�涓綔鐗╃亴婧夊埗搴︽暟鎹� + * @param id + * @return + */ + public VoSchedulingOne selectById(Long id){ + VoSchedulingOne irCrop = irIrrigateSchedulingMapper.selectById(id); + return irCrop; + } +} diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/irrigateScheduling/IrrigateSchedulingCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/irrigateScheduling/IrrigateSchedulingCtrl.java new file mode 100644 index 0000000..8874125 --- /dev/null +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/irrigateScheduling/IrrigateSchedulingCtrl.java @@ -0,0 +1,198 @@ +package com.dy.pipIrrIrrigate.irrigateScheduling; + +import com.dy.common.aop.SsoAop; +import com.dy.common.webUtil.BaseResponse; +import com.dy.common.webUtil.BaseResponseUtils; +import com.dy.common.webUtil.QueryResultVo; +import com.dy.common.webUtil.ResultCodeMsg; +import com.dy.pipIrrGlobal.pojoIr.IrIrrigateScheduling; +import com.dy.pipIrrGlobal.pojoIr.IrProject; +import com.dy.pipIrrGlobal.voIr.VoScheduling; +import com.dy.pipIrrGlobal.voIr.VoSchedulingOne; +import com.dy.pipIrrGlobal.voSe.VoActiveCard; +import com.dy.pipIrrIrrigate.result.IrrigateResultCode; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.media.Content; +import io.swagger.v3.oas.annotations.media.Schema; +import io.swagger.v3.oas.annotations.responses.ApiResponse; +import io.swagger.v3.oas.annotations.responses.ApiResponses; +import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.validation.Valid; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.http.MediaType; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.validation.BindingResult; +import org.springframework.web.bind.annotation.*; + +import java.util.List; +import java.util.Map; +import java.util.Objects; +import java.util.Optional; + +/** + * @author :WuZeYu + * @Date :2024/5/27 10:12 + * @LastEditTime :2024/5/27 10:12 + * @Description + */ +@Slf4j +@Tag(name = "浣滅墿鐏屾簤鍒跺害绠$悊", description = "浣滅墿鐏屾簤鍒跺害鎿嶄綔") +@RestController +@RequestMapping(path = "scheduling") +@RequiredArgsConstructor +public class IrrigateSchedulingCtrl { + + private final IrIrrigateSchedulingSv irIrrigateSchedulingSv; + + /** + * 娣诲姞浣滅墿鐏屾簤鍒跺害 + * + * @param po 浣滅墿鐏屾簤鍒跺害瀹炰綋瀵硅薄 + * @param bindingResult + * @return 娣诲姞鏄惁鎴愬姛 + */ + @Operation(summary = "娣诲姞浣滅墿鐏屾簤鍒跺害璁板綍", description = "娣诲姞浣滅墿鐏屾簤鍒跺害璁板綍") + @ApiResponses(value = { + @ApiResponse( + responseCode = ResultCodeMsg.RsCode.SUCCESS_CODE, + description = "鎿嶄綔缁撴灉锛歵rue锛氭垚鍔燂紝false锛氬け璐ワ紙BaseResponse.content锛�", + content = {@Content(mediaType = MediaType.APPLICATION_JSON_VALUE, + schema = @Schema(implementation = Boolean.class))} + ) + }) + @PostMapping(path = "add", consumes = MediaType.APPLICATION_JSON_VALUE) + @Transactional(rollbackFor = Exception.class) + @SsoAop() + public BaseResponse<Boolean> add(@RequestBody @Valid IrIrrigateScheduling po, BindingResult bindingResult) { + if (bindingResult != null && bindingResult.hasErrors()) { + return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); + } + try { + Integer rec = Optional.ofNullable(irIrrigateSchedulingSv.addScheduling(po)).orElse(0); + if (rec == 0) { + return BaseResponseUtils.buildFail(IrrigateResultCode.ADD_PROJECT_FAIL.getMessage()); + } + } catch (Exception e) { + log.error("娣诲姞浣滅墿鐏屾簤鍒跺害寮傚父", e); + return BaseResponseUtils.buildException(e.getMessage()); + } + return BaseResponseUtils.buildSuccess(true); + } + /** + * 閫昏緫鍒犻櫎浣滅墿鐏屾簤鍒跺害 + * @param map + * @return + */ + @Operation(summary = "閫昏緫鍒犻櫎浣滅墿鐏屾簤鍒跺害", description = "閫昏緫鍒犻櫎浣滅墿鐏屾簤鍒跺害") + @ApiResponses(value = { + @ApiResponse( + responseCode = ResultCodeMsg.RsCode.SUCCESS_CODE, + description = "鎿嶄綔缁撴灉锛歵rue锛氭垚鍔燂紝false锛氬け璐ワ紙BaseResponse.content锛�", + content = {@Content(mediaType = MediaType.APPLICATION_JSON_VALUE, + schema = @Schema(implementation = Boolean.class))} + ) + }) + @PostMapping(path = "delete", consumes = MediaType.APPLICATION_JSON_VALUE) + @Transactional(rollbackFor = Exception.class) + @SsoAop() + public BaseResponse<Boolean> delete(@RequestBody Map map) { + if (map == null || map.size() <= 0) { + BaseResponseUtils.buildFail(IrrigateResultCode.PLEASE_INPUT_PROJECT_ID.getMessage()); + } + Long schedulingId = Long.parseLong(map.get("id").toString()); + try { + Integer rows = irIrrigateSchedulingSv.deleteScheduling(schedulingId); + if (rows == 0) { + return BaseResponseUtils.buildFail(IrrigateResultCode.DELETE_PROJECT_FAIL.getMessage()); + } + } catch (Exception e) { + log.error("鍒犻櫎浣滅墿鐏屾簤鍒跺害寮傚父", e); + return BaseResponseUtils.buildException(e.getMessage()); + } + return BaseResponseUtils.buildSuccess(true); + } + + /** + * 淇敼浣滅墿鐏屾簤鍒跺害 + * @param po + * @param bindingResult + * @return + */ + @Operation(summary = "淇敼浣滅墿鐏屾簤鍒跺害", description = "淇敼浣滅墿鐏屾簤鍒跺害") + @ApiResponses(value = { + @ApiResponse( + responseCode = ResultCodeMsg.RsCode.SUCCESS_CODE, + description = "鎿嶄綔缁撴灉锛歵rue锛氭垚鍔燂紝false锛氬け璐ワ紙BaseResponse.content锛�", + content = {@Content(mediaType = MediaType.APPLICATION_JSON_VALUE, + schema = @Schema(implementation = Boolean.class))} + ) + }) + @PostMapping(path = "update", consumes = MediaType.APPLICATION_JSON_VALUE) + @Transactional(rollbackFor = Exception.class) + @SsoAop() + public BaseResponse<Boolean> update(@RequestBody @Valid IrIrrigateScheduling po, BindingResult bindingResult){ + if (bindingResult != null && bindingResult.hasErrors()) { + return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); + } + try { + Integer rec = Optional.ofNullable(irIrrigateSchedulingSv.updateScheduling(po)).orElse(0); + if (rec == 0) { + return BaseResponseUtils.buildFail(IrrigateResultCode.UPDATE_PROJECT_FAIL.getMessage()); + } + } catch (Exception e) { + log.error("淇敼浣滅墿鐏屾簤鍒跺害寮傚父", e); + return BaseResponseUtils.buildException(e.getMessage()); + } + return BaseResponseUtils.buildSuccess(true); + } + + /** + * 鍒嗛〉鏌ヨ + * @param vo + * @return + */ + @Operation(summary = "鑾峰緱涓�椤典綔鐗╃亴婧夊埗搴﹁褰�", description = "鑾峰緱涓�椤典綔鐗╃亴婧夊埗搴﹁褰�") + @ApiResponses(value = { + @ApiResponse( + responseCode = ResultCodeMsg.RsCode.SUCCESS_CODE, + description = "鑾峰緱涓�椤典綔鐗╄褰曪紙BaseResponse.content:QueryResultVo[{}]锛�", + content = {@Content(mediaType = MediaType.APPLICATION_JSON_VALUE, + schema = @Schema(implementation = VoActiveCard.class))} + ) + }) + @GetMapping(path = "some") + @SsoAop() + public BaseResponse<QueryResultVo<List<VoScheduling>>> getSchedulings(QueryVo vo) { + try { + QueryResultVo<List<VoScheduling>> res = irIrrigateSchedulingSv.getSchedulings(vo); + return BaseResponseUtils.buildSuccess(res); + } catch (Exception e) { + log.error("鑾峰彇浣滅墿鐏屾簤鍒跺害璁板綍寮傚父", e); + return BaseResponseUtils.buildException(e.getMessage()); + } + } + + /** + * 鑾峰彇涓�涓綔鐗╃亴婧夊埗搴︽暟鎹� + * + * @return 鑾峰彇涓�涓綔鐗╃亴婧夊埗搴︽暟鎹� + */ + @Operation(summary = "鑾峰彇涓�涓綔鐗╃亴婧夊埗搴︽暟鎹�", description = "鑾峰彇涓�涓綔鐗╃亴婧夊埗搴︽暟鎹�") + @ApiResponses(value = { + @ApiResponse( + responseCode = ResultCodeMsg.RsCode.SUCCESS_CODE, + description = "鑾峰彇涓�涓綔鐗╃亴婧夊埗搴︽暟鎹紙BaseResponse.content:{}锛�", + content = {@Content(mediaType = MediaType.APPLICATION_JSON_VALUE, + schema = @Schema(implementation = IrProject.class))} + ) + }) + @GetMapping(path = "one") + @SsoAop() + public BaseResponse<VoSchedulingOne> one(@RequestParam Long id) { + VoSchedulingOne irScheduling = this.irIrrigateSchedulingSv.selectById(id); + + return BaseResponseUtils.buildSuccess(irScheduling); + + } +} diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/irrigateScheduling/QueryVo.java b/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/irrigateScheduling/QueryVo.java new file mode 100644 index 0000000..dc2ec64 --- /dev/null +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/irrigateScheduling/QueryVo.java @@ -0,0 +1,24 @@ +package com.dy.pipIrrIrrigate.irrigateScheduling; + +import com.dy.common.webUtil.QueryConditionVo; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; + +/** + * @author :WuZeYu + * @Date :2024/5/27 10:29 + * @LastEditTime :2024/5/27 10:29 + * @Description + */ +@Data +@EqualsAndHashCode(callSuper = false) +@ToString(callSuper = true) +@NoArgsConstructor +@AllArgsConstructor +@Builder +@Schema(name = "浣滅墿鐏屾簤鍒跺害鏌ヨ鏉′欢") +public class QueryVo extends QueryConditionVo { + + @Schema(description = "浣滅墿鍚嶇О") + public String cropName; +} diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/irrigateUnit/IrrigateUnitSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/irrigateUnit/IrrigateUnitSv.java index 620ae40..195f8cb 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/irrigateUnit/IrrigateUnitSv.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/irrigateUnit/IrrigateUnitSv.java @@ -1,6 +1,7 @@ package com.dy.pipIrrIrrigate.irrigateUnit; import com.dy.common.webUtil.QueryResultVo; +import com.dy.pipIrrGlobal.daoIr.IrGroupUnitMapper; import com.dy.pipIrrGlobal.daoIr.IrIrrigateUnitMapper; import com.dy.pipIrrGlobal.daoIr.IrProjectMapper; import com.dy.pipIrrGlobal.pojoIr.IrIrrigateUnit; @@ -31,6 +32,8 @@ @Autowired private IrIrrigateUnitMapper irIrrigateUnitMapper; + @Autowired + private IrGroupUnitMapper irGroupUnitMapper; /** * 鍒涘缓鐏屾簤鍗曞厓 @@ -55,6 +58,7 @@ */ public Integer deleteUnit(Long id) { int rows = irIrrigateUnitMapper.deleteLogicById(id); + irGroupUnitMapper.deleteByUnitId(id); if (rows == 0) { return 0; } -- Gitblit v1.8.0