From 95d8d3df562c8f7fca74ba994cddbbf41564488e Mon Sep 17 00:00:00 2001 From: zhubaomin <zhubaomin> Date: 星期二, 08 四月 2025 20:08:15 +0800 Subject: [PATCH] 优化未完成计划列表、已完成计划列表接口 --- pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/issue/IssueCtrl.java | 158 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 158 insertions(+), 0 deletions(-) diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/issue/IssueCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/issue/IssueCtrl.java new file mode 100644 index 0000000..60a4696 --- /dev/null +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/issue/IssueCtrl.java @@ -0,0 +1,158 @@ +package com.dy.pipIrrApp.issue; + +import com.alibaba.fastjson2.JSONObject; +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.pipIrrApp.issue.dto.DtoDeleteParam; +import com.dy.pipIrrApp.issue.qo.QoIssueReport; +import com.dy.pipIrrGlobal.pojoOp.OpeIssueReport; +import com.dy.pipIrrGlobal.pojoOp.OpeReportReply; +import com.dy.pipIrrGlobal.voOp.VoIssueReport; +import com.dy.pipIrrGlobal.voOp.VoIssueReportReply; +import jakarta.validation.Valid; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.validation.BindingResult; +import org.springframework.web.bind.annotation.*; + +import java.util.List; +import java.util.Objects; + +/** + * @author ZhuBaoMin + * @date 2024-11-11 16:29 + * @LastEditTime 2024-11-11 16:29 + * @Description + */ + +@Slf4j +@RestController +@RequestMapping(path="issue") +@RequiredArgsConstructor +public class IssueCtrl { + private final IssueSv issueSv; + + /** + * 娣诲姞宸℃鍛橀棶棰樹笂鎶ヨ褰� + * @param po + * @param bindingResult + * @return + */ + @PostMapping(path = "addIssueReport") + @Transactional(rollbackFor = Exception.class) + @SsoAop() + public BaseResponse<Boolean> addIssueReport(@RequestBody @Valid OpeIssueReport po, BindingResult bindingResult) { + if(bindingResult != null && bindingResult.hasErrors()){ + return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); + } + + String result = issueSv.addIssueReport(po); + if(!result.equals("success")) { + return BaseResponseUtils.buildErrorMsg(result); + } + + return BaseResponseUtils.buildSuccess(true) ; + } + + /** + * 鑾峰彇宸℃鍛橀棶棰樹笂鎶ヨ褰� + * @param vo + * @return + */ + @GetMapping(path = "/getIssueReports") + @SsoAop() + public BaseResponse<QueryResultVo<List<VoIssueReport>>> getIssueReports(QoIssueReport vo) { + try { + //QueryResultVo<List<VoIssueReport_temp>> res = issueSv.getIssueReports(vo); + return BaseResponseUtils.buildSuccess(issueSv.getIssueReports(vo)); + } catch (Exception e) { + log.error("鑾峰彇宸℃鍛橀棶棰樹笂鎶ヨ褰曞紓甯�", e); + return BaseResponseUtils.buildException(e.getMessage()); + } + } + + /** + * 鑾峰彇涓�涓贰妫�鍛橀棶棰樹笂鎶ヨ褰曡鎯� + * @param issueReportId + * @return + */ + @GetMapping(path = "/getOneIssueReport") + @SsoAop() + public BaseResponse<VoIssueReport> getOneIssueReport(@RequestParam("issueReportId") Long issueReportId) { + try { + VoIssueReport issueReport = issueSv.getIssueReportById(issueReportId); + if(issueReport == null) { + return BaseResponseUtils.buildNonExist(); + } + return BaseResponseUtils.buildSuccess(issueReport); + } catch (Exception e) { + log.error("鑾峰彇闂涓婃姤璁板綍璇︽儏寮傚父", e); + return BaseResponseUtils.buildException(e.getMessage()); + } + } + + /** + * 閫昏緫鍒犻櫎宸℃鍛橀棶棰樹笂鎶ワ紝鍒犻櫎鍓嶅厛鍒ゆ柇瑕佸垹闄ょ殑涓婃姤鏄惁瀛樺湪 + * @param po + * @param bindingResult + * @return + */ + @PostMapping(path = "deleteIssueReport") + public BaseResponse<Boolean> deleteIssueReport(@RequestBody @Valid DtoDeleteParam po, BindingResult bindingResult) { + if(bindingResult != null && bindingResult.hasErrors()){ + return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); + } + + String result = issueSv.deleteIssueReport(po); + if(!result.equals("success")) { + return BaseResponseUtils.buildErrorMsg(result); + } + + return BaseResponseUtils.buildSuccess(); + + } + + /** + * 鍥炲宸℃鍛橀棶棰樹笂鎶� + * @param po + * @param bindingResult + * @return + */ + @PostMapping(path = "replyReport") + @Transactional(rollbackFor = Exception.class) + public BaseResponse<Boolean> replyReport(@RequestBody @Valid OpeReportReply po, BindingResult bindingResult) { + if(bindingResult != null && bindingResult.hasErrors()){ + return BaseResponseUtils.buildErrorMsg(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); + } + if (issueSv.getReportReply(po.getReportId()).get("code").equals("0001")){ + return BaseResponseUtils.buildErrorMsg("璇ラ棶棰樹笂鎶ュ凡鍥炲锛岃鍕块噸澶嶅洖澶�"); + } + String result = issueSv.replyReport(po); + if(!result.equals("sucess")) { + return BaseResponseUtils.buildErrorMsg(result); + } + + return BaseResponseUtils.buildSuccess() ; + } + + /** + * 鏍规嵁闂涓婃姤ID鑾峰彇涓婃姤鍥炲淇℃伅 + * @param reportId + * @return + */ + @GetMapping(path = "/getReportReply") + public BaseResponse<VoIssueReportReply> getReportReply(@RequestParam("reportId") Long reportId) { + + JSONObject result = issueSv.getReportReply(reportId); + if(!result.get("code").equals("0001")) { + return BaseResponseUtils.buildErrorMsg(result.get("msg").toString()); + } + + return BaseResponseUtils.buildSuccess(result.get("data")); + + } + +} -- Gitblit v1.8.0