From 7fa4030818c30796fd912aadc2c85329d0d8e3ea Mon Sep 17 00:00:00 2001
From: Administrator <zhubaomin>
Date: 星期二, 26 十二月 2023 15:21:44 +0800
Subject: [PATCH] 2023-12-26 朱宝民 县镇村获取接口、用水方式获取接口、农户增加虚拟卡号和用水方式
---
pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/divide/DivideSv.java | 40 ++++++++++
pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrDivideMapper.xml | 17 +++
pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/divide/DivideCtrl.java | 144 ++++++++++++++++++++++++++++++++++--
pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/PipIrrProjectApplication.java | 2
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrDivideMapper.java | 8 ++
pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/divide/QueryVo.java | 2
6 files changed, 201 insertions(+), 12 deletions(-)
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrDivideMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrDivideMapper.java
index 5eb7697..0fd6c2d 100644
--- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrDivideMapper.java
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrDivideMapper.java
@@ -2,6 +2,7 @@
import com.dy.pipIrrGlobal.pojoPr.PrDivide;
import com.dy.pipIrrGlobal.voPr.VoDivide;
+import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
@@ -38,4 +39,11 @@
* @return
*/
List<VoDivide> getDivides(Map<?, ?> params);
+
+ /**
+ * 鏍规嵁鍒嗘按鎴縄D閫昏緫鍒犻櫎鍒嗘按鎴�
+ * @param id
+ * @return
+ */
+ Integer deleteDivideById(@Param("id") Long id);
}
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrDivideMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrDivideMapper.xml
index d9b4ac4..e09038a 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrDivideMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrDivideMapper.xml
@@ -227,8 +227,9 @@
lat = #{lat,jdbcType=DOUBLE},
remarks = #{remarks,jdbcType=VARCHAR},
`operator` = #{operator,jdbcType=BIGINT},
- operateDt = #{operatedt,jdbcType=TIMESTAMP},
- deleted = #{deleted,jdbcType=TINYINT}
+ operateDt = #{operatedt,jdbcType=TIMESTAMP}
+<!-- ,-->
+<!-- deleted = #{deleted,jdbcType=TINYINT}-->
where id = #{id,jdbcType=BIGINT}
</update>
@@ -243,6 +244,7 @@
INNER JOIN ba_district village ON divi.villageid = village.id
, (SELECT @i:=0) AS itable
<where>
+ AND divi. deleted = 0
<if test = "divideName != null and divideName !=''">
AND divi.name LIKE CONCAT('%',#{divideName},'%')
</if>
@@ -270,6 +272,7 @@
INNER JOIN ba_district village ON divi.villageid = village.id
, (SELECT @i:=0) AS itable
<where>
+ AND divi. deleted = 0
<if test = "divideName != null and divideName !=''">
AND divi.name LIKE CONCAT('%',#{divideName},'%')
</if>
@@ -284,4 +287,14 @@
</if>
</select>
+ <!--鏍规嵁鍒嗘按鎴縄D閫昏緫鍒犻櫎鍒嗘按鎴�-->
+ <update id="deleteDivideById" parameterType="java.lang.Long">
+ update pr_divide set deleted = 1
+ <where>
+ <if test = "id != null and id > 0">
+ AND id = ${id}
+ </if>
+ </where>
+ </update>
+
</mapper>
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/PipIrrProjectApplication.java b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/PipIrrProjectApplication.java
index f46ea6a..f73cd42 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/PipIrrProjectApplication.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/PipIrrProjectApplication.java
@@ -18,7 +18,7 @@
@EnableAspectJAutoProxy
@EnableMultiDataSource
@ComponentScan(basePackages = {"com.dy.common", "com.dy.pipIrrGlobal", "com.dy.pipIrrProject"})
-@MapperScan({"com.dy.pipIrrGlobal.daoPr"})
+@MapperScan({"com.dy.pipIrrGlobal.daoPr", "com.dy.pipIrrGlobal.daoBa"})
public class PipIrrProjectApplication {
public static void main(String[] args) {
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/divide/DivideCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/divide/DivideCtrl.java
index f6d2a12..308c8ee 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/divide/DivideCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/divide/DivideCtrl.java
@@ -7,6 +7,7 @@
import com.dy.common.webUtil.BaseResponseUtils;
import com.dy.common.webUtil.QueryResultVo;
import com.dy.common.webUtil.ResultCodeMsg;
+import com.dy.pipIrrGlobal.pojoBa.BaClient;
import com.dy.pipIrrGlobal.pojoPr.PrDivide;
import com.dy.pipIrrGlobal.voPr.VoDivide;
import com.dy.pipIrrGlobal.voSe.VoActiveCard;
@@ -32,11 +33,7 @@
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
-import java.time.format.DateTimeFormatter;
-import java.util.Date;
-import java.util.List;
-import java.util.Objects;
-import java.util.Optional;
+import java.util.*;
/**
* @author ZhuBaoMin
@@ -53,6 +50,11 @@
public class DivideCtrl {
private final DivideSv divideSv;
+ /**
+ * 鍒嗛〉鑾峰彇鍒嗘按鎴胯褰�
+ * @param vo
+ * @return
+ */
@Operation(summary = "鑾峰緱涓�椤靛垎姘存埧璁板綍", description = "杩斿洖涓�椤靛垎姘存埧鏁版嵁")
@ApiResponses(value = {
@ApiResponse(
@@ -62,9 +64,9 @@
schema = @Schema(implementation = VoActiveCard.class))}
)
})
- @GetMapping(path = "/getDivides", consumes = MediaType.APPLICATION_JSON_VALUE)
+ @GetMapping(path = "/getDivides")
@SsoAop()
- public BaseResponse<QueryResultVo<List<VoDivide>>> getDivides(@RequestBody @Parameter(description = "鏌ヨform琛ㄥ崟json鏁版嵁", required = true) QueryVo vo){
+ public BaseResponse<QueryResultVo<List<VoDivide>>> getDivides(QueryVo vo){
try {
QueryResultVo<List<VoDivide>> res = divideSv.getDivides(vo);
return BaseResponseUtils.buildSuccess(res);
@@ -74,6 +76,38 @@
}
}
+ /**
+ * 鏍规嵁鍒嗘按鎴夸富閿幏鍙栧垎姘存埧瀵硅薄
+ * @param id
+ * @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 = BaClient.class))}
+ )
+ })
+ @GetMapping(path = "/getone/{id}")
+ @SsoAop()
+ public BaseResponse<PrDivide> getOneDivide(@PathVariable("id") Long id){
+ try {
+ PrDivide res = divideSv.getOneDivide(id);
+ return BaseResponseUtils.buildSuccess(res);
+ } catch (Exception e) {
+ log.error("鏌ヨ鍐滄埛寮傚父", e);
+ return BaseResponseUtils.buildException(e.getMessage()) ;
+ }
+ }
+
+ /**
+ * 娣诲姞鍒嗘按鎴胯褰�
+ * @param po
+ * @param bindingResult
+ * @return
+ */
@Operation(summary = "娣诲姞鍒嗘按鎴胯褰�", description = "娣诲姞鍒嗘按鎴胯褰�")
@ApiResponses(value = {
@ApiResponse(
@@ -87,13 +121,28 @@
@Transactional(rollbackFor = Exception.class)
@SsoAop()
public BaseResponse<Boolean> add(@RequestBody @Parameter(description = "form琛ㄥ崟json鏁版嵁", required = true) @Valid PrDivide po, @Parameter(hidden = true) BindingResult bindingResult){
- DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
if(bindingResult != null && bindingResult.hasErrors()){
return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
}
+ // 鎺ユ敹鏉戠紪鍙凤紙涓婚敭锛�
+ Long villageId = po.getVillageid();
+
+ /**
+ * 鑾峰彇5绾ц鏀垮尯鍒掍俊鎭�
+ */
+ Map map_districts = Optional.ofNullable(divideSv.getDistrictsByVillageId(villageId)).orElse(new HashMap());
+ if(map_districts.size() <= 0) {
+ return BaseResponseUtils.buildFail("鍖哄垝淇℃伅鏈夎");
+ }
+
+ Long countryId = Long.parseLong(map_districts.get("countryId").toString());
+ Long townId = Long.parseLong(map_districts.get("townId").toString());
+ po.setCountyid(countryId);
+ po.setTownid(townId);
Date operateTime = new Date();
po.setOperatedt(operateTime);
+ po.setDeleted((byte)0);
Integer rec = Optional.ofNullable(divideSv.addDivide(po)).orElse(0);
if(rec == 0) {
return BaseResponseUtils.buildFail(ProjectResultCode.DIVIDE_FAIL.getMessage());
@@ -101,6 +150,85 @@
return BaseResponseUtils.buildSuccess(true) ;
}
+ /**
+ * 鏍规嵁鍒嗘按鎴縄D閫昏緫鍒犻櫎鍒嗘按鎴�
+ * @param id
+ * @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 = BaClient.class))}
+ )
+ })
+
+ @GetMapping(path = "/delone/{id}")
+ @SsoAop()
+ public BaseResponse<Boolean> deleteDivideById(@PathVariable("id") Long id){
+ try {
+ Integer res = Optional.ofNullable(divideSv.deleteDivideById(id)).orElse(0);
+ if(res == 0) {
+ return BaseResponseUtils.buildFail("鍒嗘按鎴垮垹闄ゅけ璐�");
+ }
+ return BaseResponseUtils.buildSuccess(true);
+ } catch (Exception e) {
+ log.error("鍒犻櫎鍒嗘按鎴垮紓甯�", e);
+ return BaseResponseUtils.buildException(e.getMessage()) ;
+ }
+ }
+
+ /**
+ * 淇敼鍒嗘按鎴�
+ * @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 @Parameter(description = "form琛ㄥ崟json鏁版嵁", required = true) @Valid PrDivide po, @Parameter(hidden = true) BindingResult bindingResult){
+ if(bindingResult != null && bindingResult.hasErrors()){
+ return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
+ }
+
+ // 鎺ユ敹鏉戠紪鍙凤紙涓婚敭锛�
+ Long villageId = po.getVillageid();
+
+ /**
+ * 鑾峰彇5绾ц鏀垮尯鍒掍俊鎭�
+ */
+ Map map_districts = Optional.ofNullable(divideSv.getDistrictsByVillageId(villageId)).orElse(new HashMap());
+ if(map_districts.size() <= 0) {
+ return BaseResponseUtils.buildFail("鍖哄垝淇℃伅鏈夎");
+ }
+
+ Long countryId = Long.parseLong(map_districts.get("countryId").toString());
+ Long townId = Long.parseLong(map_districts.get("townId").toString());
+
+ po.setCountyid(countryId);
+ po.setTownid(townId);
+
+ Date operateTime = new Date();
+ po.setOperatedt(operateTime);
+
+ Integer rec = Optional.ofNullable(divideSv.updateByPrimaryKey(po)).orElse(0);
+ if(rec == 0) {
+ return BaseResponseUtils.buildFail("鍒嗘按鎴夸慨鏀瑰け璐�");
+ }
+ return BaseResponseUtils.buildSuccess(true) ;
+ }
/**
* 瀵煎嚭鍒嗘按鎴垮垪琛�
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/divide/DivideSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/divide/DivideSv.java
index 5180d7a..ad77562 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/divide/DivideSv.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/divide/DivideSv.java
@@ -1,6 +1,7 @@
package com.dy.pipIrrProject.divide;
import com.dy.common.webUtil.QueryResultVo;
+import com.dy.pipIrrGlobal.daoBa.BaDistrictMapper;
import com.dy.pipIrrGlobal.daoPr.PrDivideMapper;
import com.dy.pipIrrGlobal.pojoPr.PrDivide;
import com.dy.pipIrrGlobal.voPr.VoDivide;
@@ -25,6 +26,9 @@
public class DivideSv {
@Autowired
private PrDivideMapper prDivideMapper;
+
+ @Autowired
+ private BaDistrictMapper baDistrictMapper;
/**
* 娣诲姞鍒嗘按鎴�
@@ -64,4 +68,40 @@
rsVo = prDivideMapper.getDivides(params);
return rsVo ;
}
+
+ /**
+ * 鏍规嵁鍒嗘按鎴夸富閿幏鍙栧垎姘存埧瀵硅薄
+ * @param id
+ * @return
+ */
+ public PrDivide getOneDivide(Long id) {
+ return prDivideMapper.selectByPrimaryKey(id);
+ }
+
+ /**
+ * 鏍规嵁涓婚敭閫昏緫鍒犻櫎涓�涓垎姘存埧
+ * @param id
+ * @return
+ */
+ public Integer deleteDivideById(Long id) {
+ return prDivideMapper.deleteDivideById(id);
+ }
+
+ /**
+ * 鏍规嵁鏉戠紪鍙疯幏鍙�5绾у尯鍒掍俊鎭�
+ * @param villageId 鏉戠紪鍙凤紙涓婚敭锛�
+ * @return 5绾ц鏀垮尯鍒掍俊鎭�
+ */
+ public Map getDistrictsByVillageId(Long villageId) {
+ return baDistrictMapper.getDistrictsByVillageId(villageId);
+ }
+
+ /**
+ * 淇敼鍒嗘按鎴垮璞�
+ * @param po 鍐滄埛瀵硅薄
+ * @return 淇敼璁板綍鏉℃暟
+ */
+ public Integer updateByPrimaryKey(PrDivide po) {
+ return prDivideMapper.updateByPrimaryKey(po);
+ }
}
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/divide/QueryVo.java b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/divide/QueryVo.java
index 3e488ce..6ae085f 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/divide/QueryVo.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/divide/QueryVo.java
@@ -22,6 +22,6 @@
@Schema(description = "鍐滄埛濮撳悕")
public String divideName;
- @Schema(description = "IC鍗″彿")
+ @Schema(description = "鐗囧尯鍚嶇О")
public String blockName;
}
--
Gitblit v1.8.0