pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSe/SeIssueReportMapper.java
@@ -4,6 +4,7 @@ import com.dy.pipIrrGlobal.pojoSe.SeIssueReport; import com.dy.pipIrrGlobal.voSe.VoIssueReport; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import java.util.List; import java.util.Map; @@ -44,6 +45,14 @@ List<VoIssueReport> getIssueReports(Map<?, ?> params); /** * 根据上报ID及农户ID获取未删除的上报,删除上报判断使用 * @param issueReportId * @param clientId * @return */ SeIssueReport getReport(@Param("issueReportId")Long issueReportId, @Param("clientId")Long clientId); /** * 逻辑删除一个农户问题上报 * @param issueReportId * @return pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeIssueReportMapper.xml
@@ -252,6 +252,11 @@ </trim> </select> <!--根据上报ID及农户ID获取未删除的上报,删除上报判断使用--> <select id="getReport" resultType="com.dy.pipIrrGlobal.pojoSe.SeIssueReport"> SELECT * FROM se_issue_report WHERE state != 3 AND id = #{issueReportId} AND client_id = #{clientId} </select> <!--逻辑删除一个农户问题上报--> <update id="deleteIssueReport"> UPDATE se_issue_report SET state = 3 WHERE id = #{issueReportId} pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/issue/IssueCtrl.java
@@ -8,6 +8,7 @@ import com.dy.pipIrrGlobal.pojoSe.SeReportReply; import com.dy.pipIrrGlobal.voSe.VoIssueReport; import com.dy.pipIrrGlobal.voSe.VoIssueReportReply; import com.dy.pipIrrWechat.issue.dto.DtoDeleteParam; import com.dy.pipIrrWechat.issue.dto.DtoIssueReport; import com.dy.pipIrrWechat.issue.dto.DtoReportReply; import com.dy.pipIrrWechat.issue.qo.QoIssueReport; @@ -96,18 +97,25 @@ } /** * 逻辑删除农户问题上报 * @param issueReportId * 逻辑删除农户问题上报,删除前先判断要删除的上报是否存在 * @param po * @param bindingResult * @return */ @PostMapping(path = "deleteIssueReport") public BaseResponse<Boolean> deleteIssueReport(@RequestParam("issueReportId") Long issueReportId) { if (issueReportId == null) { return BaseResponseUtils.buildErrorMsg("未选择要删除的农户问题上报"); public BaseResponse<Boolean> deleteIssueReport(@RequestBody @Valid DtoDeleteParam po, BindingResult bindingResult) { if(bindingResult != null && bindingResult.hasErrors()){ return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); } // 根据上报ID及农户ID获取未删除的上报,删除上报判断使用 SeIssueReport seIssueReport = issueSv.getReport(po.getIssueReportId(), po.getClientId()); if(seIssueReport == null) { return BaseResponseUtils.buildErrorMsg("您要删除的问题上报不存在"); } try { Integer recordCount = Optional.ofNullable(issueSv.deleteIssueReport(issueReportId)).orElse(0); Integer recordCount = Optional.ofNullable(issueSv.deleteIssueReport(po.getIssueReportId())).orElse(0); if (recordCount == 0) { return BaseResponseUtils.buildErrorMsg("农户问题上报删除失败"); }else { pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/issue/IssueSv.java
@@ -83,6 +83,16 @@ } /** * 根据上报ID及农户ID获取未删除的上报,删除上报判断使用 * @param issueReportId * @param clientId * @return */ public SeIssueReport getReport(Long issueReportId, Long clientId) { return seIssueReportMapper.getReport(issueReportId, clientId); } /** * 删除农户问题上报 * @param issueReportId * @return pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/issue/dto/DtoDeleteParam.java
New file @@ -0,0 +1,28 @@ package com.dy.pipIrrWechat.issue.dto; import jakarta.validation.constraints.NotNull; import lombok.Data; /** * @author ZhuBaoMin * @date 2024-11-01 15:54 * @LastEditTime 2024-11-01 15:54 * @Description 农户问题上报删除参数对象 */ @Data public class DtoDeleteParam { public static final long serialVersionUID = 202411011555001L; /** * 农户问题上报ID */ @NotNull(message = "请选择要删除的问题上报") private Long issueReportId; /** * 农户ID */ @NotNull(message = "农户编号不能为空") private Long clientId; }