From 3fdbd0285c393968fdc83b737d2a3af0105ad859 Mon Sep 17 00:00:00 2001 From: zhubaomin <zhubaomin> Date: 星期五, 08 十一月 2024 08:32:59 +0800 Subject: [PATCH] 工单4个接口 --- pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/inspect/InspectCtrl.java | 102 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 102 insertions(+), 0 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..26446d4 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,26 @@ 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.pipIrrApp.inspect.dto.Inspects; +import com.dy.pipIrrGlobal.pojoOp.OpeInspect; +import com.dy.pipIrrGlobal.pojoOp.OpeTrack; +import jakarta.validation.Valid; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.MediaType; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.validation.BindingResult; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; + +import java.util.Date; +import java.util.List; +import java.util.Objects; /** * @author ZhuBaoMin @@ -19,4 +36,89 @@ @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("鎮ㄦ彁浜ょ殑宸℃杞ㄨ抗涓虹┖"); + } + } -- Gitblit v1.8.0