From 72b5d23ab48368c9a8da28b91d0da1e6d7d1c4f0 Mon Sep 17 00:00:00 2001 From: liurunyu <lry9898@163.com> Date: 星期五, 22 十一月 2024 16:24:44 +0800 Subject: [PATCH] Merge branch 'master' of http://8.140.179.55:20000/r/pipIrr-SV --- pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/inspect/InspectCtrl.java | 124 ++++++++++++++++++++++++++++++++++++++++ 1 files changed, 122 insertions(+), 2 deletions(-) diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/inspect/InspectCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/inspect/InspectCtrl.java index d71764c..f18bb02 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/inspect/InspectCtrl.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/inspect/InspectCtrl.java @@ -1,9 +1,27 @@ package com.dy.pipIrrApp.inspect; +import com.dy.common.aop.SsoAop; +import com.dy.common.util.IDLongGenerator; +import com.dy.common.webUtil.BaseResponse; +import com.dy.common.webUtil.BaseResponseUtils; +import com.dy.common.webUtil.QueryResultVo; +import com.dy.pipIrrApp.inspect.dto.Inspects; +import com.dy.pipIrrApp.inspect.qo.QoInspect; +import com.dy.pipIrrGlobal.pojoOp.OpeInspect; +import com.dy.pipIrrGlobal.pojoOp.OpeTrack; +import com.dy.pipIrrGlobal.voOp.VoInspect; +import com.dy.pipIrrGlobal.voOp.VoIssueReport; +import jakarta.validation.Valid; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.http.MediaType; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.validation.BindingResult; +import org.springframework.web.bind.annotation.*; + +import java.util.Date; +import java.util.List; +import java.util.Objects; /** * @author ZhuBaoMin @@ -19,4 +37,106 @@ @Autowired private InspectSv inspectSv; + private final IDLongGenerator idLongGenerator; + + public InspectCtrl(IDLongGenerator idLongGenerator) { + this.idLongGenerator = idLongGenerator; + } + + /** + * 娣诲姞宸℃杞ㄨ抗 + * @param list_Inspects 宸℃瀵硅薄鏁扮粍 + * @param bindingResult + * @return + */ + @PostMapping(path = "save", consumes = MediaType.APPLICATION_JSON_VALUE) + @Transactional(rollbackFor = Exception.class) + @SsoAop() + public BaseResponse<Boolean> save(@RequestBody @Valid List<Inspects> list_Inspects, BindingResult bindingResult){ + if(bindingResult != null && bindingResult.hasErrors()){ + return BaseResponseUtils.buildErrorMsg(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); + } + + if(list_Inspects != null && list_Inspects.size() > 0) { + for (int i = 0; i < list_Inspects.size(); i++) { + Inspects inspects = list_Inspects.get(i); + + Long inspectorId = inspects.getInspectorId(); + Long inspectId = inspects.getInspectId(); + Date startTime = inspects.getStartTime(); + Date stopTime = inspects.getStopTime(); + List<OpeTrack> tracks = inspects.getTracks(); + + if(tracks == null || tracks.size() == 0) { + return BaseResponseUtils.buildErrorMsg("鏃犲贰妫�杞ㄨ抗"); + } + + if(inspectId == null || inspectId.equals(0)) { + // 璇ュ贰妫�鏈笂浼犺繃璁板綍 + + // 娣诲姞宸℃璁板綍 + OpeInspect opeInspect = new OpeInspect(); + opeInspect.setInspectorId(inspectorId); + if(startTime != null) { + opeInspect.setStartTime(startTime); + } + if(stopTime != null) { + opeInspect.setStopTime(stopTime); + } + inspectId = inspectSv.addInspect(opeInspect); + if(inspectId == null) { + return BaseResponseUtils.buildErrorMsg("宸℃璁板綍娣诲姞澶辫触"); + } + + for (int j = 0; j < tracks.size(); j++) { + tracks.get(j).setId(idLongGenerator.generate()); + tracks.get(j).setInspectId(inspectId); + } + Integer rec = inspectSv.insertTracks(tracks); + if(rec == null || rec == 0) { + return BaseResponseUtils.buildErrorMsg("宸℃杞ㄨ抗娣诲姞澶辫触"); + } + }else { + // 璇ュ贰妫�宸蹭笂浼犺繃璁板綍锛岀画浼� + if(stopTime != null) { + OpeInspect inspect = new OpeInspect(); + inspect.setId(inspectId); + inspect.setStopTime(stopTime); + inspectSv.updateInspect(inspect); + } + + if(tracks != null && tracks.size() > 0) { + for (int j = 0; j < tracks.size(); j++) { + tracks.get(j).setId(idLongGenerator.generate()); + tracks.get(j).setInspectId(inspectId); + } + Integer rec = inspectSv.insertTracks(tracks); + if(rec == null || rec == 0) { + return BaseResponseUtils.buildErrorMsg("宸℃杞ㄨ抗娣诲姞澶辫触"); + } + } + } + } + return BaseResponseUtils.buildSuccess() ; + } + return BaseResponseUtils.buildErrorMsg("鎮ㄦ彁浜ょ殑宸℃杞ㄨ抗涓虹┖"); + } + + /** + * 鏌ヨ宸℃杞ㄨ抗 + * @param qo + * @return + */ + @GetMapping(path = "/getInspects") + @SsoAop() + public BaseResponse<QueryResultVo<List<VoInspect>>> getInspects(QoInspect qo){ + + try{ + QueryResultVo<List<VoInspect>> res = inspectSv.getInspects(qo); + return BaseResponseUtils.buildSuccess(res); + }catch (Exception e){ + log.error("鑾峰彇宸℃鍒楄〃寮傚父", e); + return BaseResponseUtils.buildException(e.getMessage()); + } + } } -- Gitblit v1.8.0