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