From cda0faf3128ed97e7519d1ca04be079aea64dd93 Mon Sep 17 00:00:00 2001 From: liuxm <liuxm_a@163.com> Date: 星期四, 06 六月 2024 16:34:23 +0800 Subject: [PATCH] 添加验证和异常处理 --- pms-parent/pms-global/src/main/java/com/dy/pmsGlobal/pojoPr/PrProductionProcess.java | 4 pms-parent/pms-web-product/src/main/java/com/dy/pmsProduct/taskPlan/AssemblyPlanCtrl.java | 117 ++++++++-------------------- pms-parent/pms-global/src/main/java/com/dy/pmsGlobal/aop/ExceptionHandlerAdvice.java | 13 +++ pms-parent/pms-web-product/src/main/java/com/dy/pmsProduct/process/ProcessCtrl.java | 53 ++----------- pms-parent/pms-web-product/src/main/java/com/dy/pmsProduct/taskPlan/DevOpsPlanCtrl.java | 11 -- pms-parent/pms-global/src/main/java/com/dy/pmsGlobal/pojoPr/PrProductionNode.java | 8 +- 6 files changed, 64 insertions(+), 142 deletions(-) diff --git a/pms-parent/pms-global/src/main/java/com/dy/pmsGlobal/aop/ExceptionHandlerAdvice.java b/pms-parent/pms-global/src/main/java/com/dy/pmsGlobal/aop/ExceptionHandlerAdvice.java index 5ec1a92..82b5ab9 100644 --- a/pms-parent/pms-global/src/main/java/com/dy/pmsGlobal/aop/ExceptionHandlerAdvice.java +++ b/pms-parent/pms-global/src/main/java/com/dy/pmsGlobal/aop/ExceptionHandlerAdvice.java @@ -3,6 +3,7 @@ import com.dy.common.webUtil.BaseResponse; import com.dy.common.webUtil.BaseResponseUtils; import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.MethodArgumentNotValidException; import org.springframework.web.bind.annotation.ExceptionHandler; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.bind.annotation.RestControllerAdvice; @@ -11,6 +12,18 @@ @RestControllerAdvice @Slf4j public class ExceptionHandlerAdvice { + + @ExceptionHandler(MethodArgumentNotValidException.class) + public BaseResponse<?> handleValidationExceptions(MethodArgumentNotValidException ex) { + log.error("[handleValidationExceptions]", ex); + StringBuilder sb = new StringBuilder(); + ex.getBindingResult().getAllErrors().forEach(error -> { +// String fieldName = ((org.springframework.validation.FieldError) error).getField(); + String errorMessage = error.getDefaultMessage(); + sb.append(errorMessage).append(";"); + }); + return BaseResponseUtils.buildException(sb.substring(0, sb.length() - 1)); + } /** * 澶勭悊绯荤粺寮傚父锛屽厹搴曞鐞嗘墍鏈夊紓甯� */ diff --git a/pms-parent/pms-global/src/main/java/com/dy/pmsGlobal/pojoPr/PrProductionNode.java b/pms-parent/pms-global/src/main/java/com/dy/pmsGlobal/pojoPr/PrProductionNode.java index 167b071..183d2a4 100644 --- a/pms-parent/pms-global/src/main/java/com/dy/pmsGlobal/pojoPr/PrProductionNode.java +++ b/pms-parent/pms-global/src/main/java/com/dy/pmsGlobal/pojoPr/PrProductionNode.java @@ -46,25 +46,25 @@ /** * 鑺傜偣浣滀笟鍐呭 */ - @NotEmpty(message = "鑺傜偣浣滀笟鍐呭涓嶈兘涓虹┖") + @NotEmpty(message = "璇疯緭鍏ヨ妭鐐逛綔涓氬唴瀹�") public String content; /** * 鏄惁寮�濮嬭妭鐐癸紝1鏄紝0鍚� */ - @NotNull(message = "鏄惁寮�濮嬭妭鐐逛笉鑳戒负绌�") + @NotNull(message = "璇烽�夋嫨鏄惁鐢熶骇寮�濮�") public Boolean isStart; /** * 鏄惁缁撴潫鑺傜偣锛�1鏄紝0鍚� */ - @NotNull(message = "鏄惁缁撴潫鑺傜偣涓嶈兘涓虹┖") + @NotNull(message = "璇烽�夋嫨鏄惁鐢熶骇缁撴潫") public Boolean isEnd; /** * 鏄惁璁板綍璁惧鍛ㄦ湡锛�1鏄紝0鍚� */ - @NotNull(message = "鏄惁璁板綍璁惧鍛ㄦ湡涓嶈兘涓虹┖") + @NotNull(message = "璇烽�夋嫨鏄惁璁板綍璁惧鍛ㄦ湡") public Boolean isRecord; /** diff --git a/pms-parent/pms-global/src/main/java/com/dy/pmsGlobal/pojoPr/PrProductionProcess.java b/pms-parent/pms-global/src/main/java/com/dy/pmsGlobal/pojoPr/PrProductionProcess.java index 9a1901a..30dc559 100644 --- a/pms-parent/pms-global/src/main/java/com/dy/pmsGlobal/pojoPr/PrProductionProcess.java +++ b/pms-parent/pms-global/src/main/java/com/dy/pmsGlobal/pojoPr/PrProductionProcess.java @@ -37,7 +37,7 @@ * 浜у搧瀹炰綋缂栧彿 */ @JSONField(serializeUsing= ObjectWriterImplToString.class) - @NotNull(message = "浜у搧涓嶈兘涓虹┖") + @NotNull(message = "璇烽�夋嫨浜у搧") public Long proId; /** @@ -49,7 +49,7 @@ /** * 鍚嶇О */ - @NotEmpty(message = "鍚嶇О涓嶈兘涓虹┖") + @NotEmpty(message = "璇疯緭鍏ュ悕绉�") public String name; /** diff --git a/pms-parent/pms-web-product/src/main/java/com/dy/pmsProduct/process/ProcessCtrl.java b/pms-parent/pms-web-product/src/main/java/com/dy/pmsProduct/process/ProcessCtrl.java index bafc03d..a575385 100644 --- a/pms-parent/pms-web-product/src/main/java/com/dy/pmsProduct/process/ProcessCtrl.java +++ b/pms-parent/pms-web-product/src/main/java/com/dy/pmsProduct/process/ProcessCtrl.java @@ -32,23 +32,13 @@ /** * 淇濆瓨 * @param process - * @param bindingResult * @return */ @PostMapping(path="save") @SsoPowerAop(power = "-1") @Log("淇濆瓨鐢熶骇娴佺▼") - public BaseResponse<Boolean> save(@RequestBody @Valid PrProductionProcess process, BindingResult bindingResult){ - if (bindingResult != null && bindingResult.hasErrors()) { - return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); - } - int count; - try { - count = sv.save(process); - }catch (Exception e){ - log.error("淇濆瓨鐢熶骇娴佺▼寮傚父", e); - return BaseResponseUtils.buildException(e.getMessage()); - } + public BaseResponse<Boolean> save(@RequestBody @Valid PrProductionProcess process){ + int count = sv.save(process); if (count <= 0) { return BaseResponseUtils.buildFail("鏁版嵁搴撳瓨鍌ㄥけ璐�"); } else { @@ -59,23 +49,13 @@ /** * 鏇存柊 * @param process - * @param bindingResult * @return */ @PostMapping(path="update") @SsoPowerAop(power = "-1") @Log("鏇存柊鐢熶骇娴佺▼") - public BaseResponse<Boolean> update(@RequestBody @Valid PrProductionProcess process, BindingResult bindingResult){ - int count; - try { - if (bindingResult != null && bindingResult.hasErrors()) { - return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); - } - count = sv.update(process); - }catch (Exception e){ - log.error("鏇存柊鐢熶骇娴佺▼寮傚父", e); - return BaseResponseUtils.buildException(e.getMessage()); - } + public BaseResponse<Boolean> update(@RequestBody @Valid PrProductionProcess process){ + int count = sv.update(process); if (count <= 0) { return BaseResponseUtils.buildFail("鏁版嵁搴撳瓨鍌ㄥけ璐�"); } else { @@ -91,13 +71,8 @@ @SsoPowerAop(power = "-1") @Log("鏍规嵁ID鏌ヨ鐢熶骇娴佺▼") public BaseResponse<PrProductionProcess> one(Long id){ - try{ - PrProductionProcess process=sv.selectById(id); - return BaseResponseUtils.buildSuccess(process); - }catch (Exception e){ - log.error("鏍规嵁ID鏌ヨ鐢熶骇娴佺▼寮傚父", e); - return BaseResponseUtils.buildException(e.getMessage()); - } + PrProductionProcess process=sv.selectById(id); + return BaseResponseUtils.buildSuccess(process); } /** @@ -109,13 +84,8 @@ @SsoPowerAop(power = "-1") @Log("鍒嗛〉鏌ヨ鐢熶骇娴佺▼") public BaseResponse<QueryResultVo<List<PrProductionProcess>>> some(@RequestBody QueryVo vo){ - try { - QueryResultVo<List<PrProductionProcess>> list = sv.selectSome(vo) ; - return BaseResponseUtils.buildSuccess(list); - }catch (Exception e){ - log.error("鍒嗛〉鏌ヨ鐢熶骇娴佺▼寮傚父", e); - return BaseResponseUtils.buildException(e.getMessage()); - } + QueryResultVo<List<PrProductionProcess>> list = sv.selectSome(vo) ; + return BaseResponseUtils.buildSuccess(list); } /** @@ -126,11 +96,6 @@ @SsoPowerAop(power = "-1") @Log("鏌ヨ鎵�鏈夌敓浜ф祦绋�") public BaseResponse<List<Map<String,String>>> queryAll(Long proId){ - try { - return BaseResponseUtils.buildSuccess(sv.queryAll(proId)); - }catch (Exception e){ - log.error("鏌ヨ鎵�鏈夌敓浜ф祦绋嬪紓甯�", e); - return BaseResponseUtils.buildException(e.getMessage()); - } + return BaseResponseUtils.buildSuccess(sv.queryAll(proId)); } } diff --git a/pms-parent/pms-web-product/src/main/java/com/dy/pmsProduct/taskPlan/AssemblyPlanCtrl.java b/pms-parent/pms-web-product/src/main/java/com/dy/pmsProduct/taskPlan/AssemblyPlanCtrl.java index 6dbf964..4b4cd0c 100644 --- a/pms-parent/pms-web-product/src/main/java/com/dy/pmsProduct/taskPlan/AssemblyPlanCtrl.java +++ b/pms-parent/pms-web-product/src/main/java/com/dy/pmsProduct/taskPlan/AssemblyPlanCtrl.java @@ -41,17 +41,8 @@ @PostMapping(path="save") @SsoPowerAop(power = "-1") @Log("淇濆瓨缁勮浠诲姟璁″垝") - public BaseResponse<Boolean> save(@RequestBody @Valid PrAssemblyPlan plan, BindingResult bindingResult){ - if (bindingResult != null && bindingResult.hasErrors()) { - return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); - } - int count; - try { - count = sv.save(plan); - }catch (Exception e){ - log.error("淇濆瓨缁勮浠诲姟璁″垝寮傚父", e); - return BaseResponseUtils.buildException(e.getMessage()); - } + public BaseResponse<Boolean> save(@RequestBody @Valid PrAssemblyPlan plan){ + int count = sv.save(plan); if (count <= 0) { return BaseResponseUtils.buildFail("鏁版嵁搴撳瓨鍌ㄥけ璐�"); } else { @@ -62,23 +53,13 @@ /** * 鏇存柊 * @param plan - * @param bindingResult * @return */ @PostMapping(path="update") @SsoPowerAop(power = "-1") @Log("鏇存柊缁勮浠诲姟璁″垝") - public BaseResponse<Boolean> update(@RequestBody @Valid PrAssemblyPlan plan, BindingResult bindingResult){ - int count; - try { - if (bindingResult != null && bindingResult.hasErrors()) { - return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); - } - count = sv.update(plan); - }catch (Exception e){ - log.error("鏇存柊缁勮浠诲姟璁″垝寮傚父", e); - return BaseResponseUtils.buildException(e.getMessage()); - } + public BaseResponse<Boolean> update(@RequestBody @Valid PrAssemblyPlan plan){ + int count = sv.update(plan); if (count <= 0) { return BaseResponseUtils.buildFail("鏁版嵁搴撳瓨鍌ㄥけ璐�"); } else { @@ -90,13 +71,7 @@ @SsoPowerAop(power = "-1") @Log("鏇存柊浠诲姟璁″垝鐘舵��") public BaseResponse<Boolean> updateStatus(@RequestBody PrAssemblyPlan plan){ - int count; - try { - count = sv.updateStatus(plan); - }catch (Exception e){ - log.error("鏇存柊缁勮浠诲姟璁″垝寮傚父", e); - return BaseResponseUtils.buildException(e.getMessage()); - } + int count = sv.updateStatus(plan); if (count <= 0) { return BaseResponseUtils.buildFail("鏁版嵁搴撳瓨鍌ㄥけ璐�"); } else { @@ -111,13 +86,8 @@ @SsoPowerAop(power = "-1") @Log("鏍规嵁ID鏌ヨ缁勮浠诲姟璁″垝") public BaseResponse<PrAssemblyPlan> one(Long id){ - try{ - PrAssemblyPlan plan=sv.selectById(id); - return BaseResponseUtils.buildSuccess(plan); - }catch (Exception e){ - log.error("鏍规嵁ID鏌ヨ缁勮浠诲姟璁″垝寮傚父", e); - return BaseResponseUtils.buildException(e.getMessage()); - } + PrAssemblyPlan plan=sv.selectById(id); + return BaseResponseUtils.buildSuccess(plan); } /** @@ -129,13 +99,8 @@ @SsoPowerAop(power = "-1") @Log("鍒嗛〉鏌ヨ缁勮浠诲姟璁″垝") public BaseResponse<QueryResultVo<List<PrAssemblyPlan>>> some(@RequestBody QueryVo vo){ - try { - QueryResultVo<List<PrAssemblyPlan>> list = sv.selectSome(vo) ; - return BaseResponseUtils.buildSuccess(list); - }catch (Exception e){ - log.error("鍒嗛〉鏌ヨ缁勮浠诲姟璁″垝寮傚父", e); - return BaseResponseUtils.buildException(e.getMessage()); - } + QueryResultVo<List<PrAssemblyPlan>> list = sv.selectSome(vo) ; + return BaseResponseUtils.buildSuccess(list); } /** @@ -144,34 +109,24 @@ @PostMapping(path="addEquip") @SsoPowerAop(power = "-1") @Log("澧炲姞璁惧鍙�") - public BaseResponse<Boolean> addEquip(@RequestBody QueryVo vo){ + public BaseResponse<?> addEquip(@RequestBody QueryVo vo){ if(vo.addNum == null || vo.addNum <= 0 || vo.planId == null){ return BaseResponseUtils.buildFail("鍙傛暟閿欒"); } - try { - int count = sv.addEquip(vo.planId,vo.addNum); - if (count <= 0) { - return BaseResponseUtils.buildFail("鏁版嵁搴撳瓨鍌ㄥけ璐�"); - } else { - return BaseResponseUtils.buildSuccess(true); - } - }catch (Exception e){ - log.error("澧炲姞璁惧鍙峰紓甯�", e); - return BaseResponseUtils.buildException(e.getMessage()); + int count = sv.addEquip(vo.planId,vo.addNum); + if (count <= 0) { + return BaseResponseUtils.buildFail("鏁版嵁搴撳瓨鍌ㄥけ璐�"); + } else { + return BaseResponseUtils.buildSuccess(true); } } @PostMapping(path="someEquip") @SsoPowerAop(power = "-1") - @Log("鏌ヨ璁惧鍙�") + @Log("鍒嗛〉鏌ヨ璁惧鍙�") public BaseResponse<QueryResultVo<List<PrEquip>>> someEquip(@RequestBody QueryVo queryVo){ - try { - QueryResultVo<List<PrEquip>> list = sv.selectSomeEquip(queryVo) ; - return BaseResponseUtils.buildSuccess(list); - }catch (Exception e){ - log.error("鍒嗛〉鏌ヨ缁勮浠诲姟璁″垝寮傚父", e); - return BaseResponseUtils.buildException(e.getMessage()); - } + QueryResultVo<List<PrEquip>> list = sv.selectSomeEquip(queryVo) ; + return BaseResponseUtils.buildSuccess(list); } @GetMapping(path="exportEquip") @@ -179,26 +134,22 @@ @Log("瀵煎嚭璁惧鍙�") public void exportEquip(Long batchId, HttpServletResponse response){ Date start = new Date() ; - try{ - List<Converter> list = new ArrayList<>(); + List<Converter> list = new ArrayList<>(); - List<PrEquip> equipList = sv.selectEquipByBatchId(batchId) ; - // 浣跨敤骞惰娴佹彁楂樻�ц兘 - equipList.parallelStream().forEach(equip -> { - ExcelVo vo = new ExcelVo(); - vo.equipNo = equip.equipNo; - try { - vo.qrCode = QrCodeUtil.genQrCode(vo.equipNo); - } catch (IOException | WriterException e) { - e.printStackTrace(); - } - list.add(vo); - }); - log.info("瀵煎嚭璁惧鍙疯�楁椂锛�"+(new Date().getTime()-start.getTime())+"ms"); - QrCodeUtil.downloadExcel(response, fileName,sheetName,list); - log.info("瀵煎嚭璁惧鍙疯�楁椂锛�"+(new Date().getTime()-start.getTime())+"ms"); - }catch (Exception e){ - log.error("瀵煎嚭璁惧鍙峰紓甯�", e); - } + List<PrEquip> equipList = sv.selectEquipByBatchId(batchId) ; + // 浣跨敤骞惰娴佹彁楂樻�ц兘 + equipList.parallelStream().forEach(equip -> { + ExcelVo vo = new ExcelVo(); + vo.equipNo = equip.equipNo; + try { + vo.qrCode = QrCodeUtil.genQrCode(vo.equipNo); + } catch (IOException | WriterException e) { + e.printStackTrace(); + } + list.add(vo); + }); + log.info("瀵煎嚭璁惧鍙疯�楁椂锛�"+(new Date().getTime()-start.getTime())+"ms"); + QrCodeUtil.downloadExcel(response, fileName,sheetName,list); + log.info("瀵煎嚭璁惧鍙疯�楁椂锛�"+(new Date().getTime()-start.getTime())+"ms"); } } diff --git a/pms-parent/pms-web-product/src/main/java/com/dy/pmsProduct/taskPlan/DevOpsPlanCtrl.java b/pms-parent/pms-web-product/src/main/java/com/dy/pmsProduct/taskPlan/DevOpsPlanCtrl.java index 931fe73..c7c074b 100644 --- a/pms-parent/pms-web-product/src/main/java/com/dy/pmsProduct/taskPlan/DevOpsPlanCtrl.java +++ b/pms-parent/pms-web-product/src/main/java/com/dy/pmsProduct/taskPlan/DevOpsPlanCtrl.java @@ -33,10 +33,7 @@ @PostMapping(path="save") @SsoPowerAop(power = "-1") @Log("淇濆瓨缁勮浠诲姟璁″垝") - public BaseResponse<Boolean> save(@RequestBody @Valid PrDevOpsPlan plan, BindingResult bindingResult){ - if (bindingResult != null && bindingResult.hasErrors()) { - return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); - } + public BaseResponse<Boolean> save(@RequestBody @Valid PrDevOpsPlan plan){ int count = sv.save(plan); if (count <= 0) { return BaseResponseUtils.buildFail("鏁版嵁搴撳瓨鍌ㄥけ璐�"); @@ -48,16 +45,12 @@ /** * 鏇存柊 * @param plan - * @param bindingResult * @return */ @PostMapping(path="update") @SsoPowerAop(power = "-1") @Log("鏇存柊缁勮浠诲姟璁″垝") - public BaseResponse<Boolean> update(@RequestBody @Valid PrDevOpsPlan plan, BindingResult bindingResult){ - if (bindingResult != null && bindingResult.hasErrors()) { - return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); - } + public BaseResponse<Boolean> update(@RequestBody @Valid PrDevOpsPlan plan){ int count = sv.update(plan); if (count <= 0) { return BaseResponseUtils.buildFail("鏁版嵁搴撳瓨鍌ㄥけ璐�"); -- Gitblit v1.8.0