From 07648f0083e80cc590ba8bc77a9e72be5ad66748 Mon Sep 17 00:00:00 2001 From: liurunyu <lry9898@163.com> Date: 星期二, 03 十二月 2024 16:59:45 +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/workOrder/WorkOrderSv.java | 189 ++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 170 insertions(+), 19 deletions(-) diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/workOrder/WorkOrderSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/workOrder/WorkOrderSv.java index 34746ef..3b1c0c4 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/workOrder/WorkOrderSv.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/workOrder/WorkOrderSv.java @@ -1,20 +1,32 @@ package com.dy.pipIrrApp.workOrder; +import com.alibaba.fastjson2.JSON; +import com.alibaba.fastjson2.JSONArray; import com.dy.common.webUtil.QueryResultVo; import com.dy.pipIrrApp.workOrder.qo.QoWorkOrder; +import com.dy.pipIrrGlobal.daoBa.BaUserMapper; +import com.dy.pipIrrGlobal.daoOp.OpeApproveResultMapper; import com.dy.pipIrrGlobal.daoOp.OpeProcessingResultMapper; +import com.dy.pipIrrGlobal.daoOp.OpeTaskTypeMapper; import com.dy.pipIrrGlobal.daoOp.OpeWorkOrderMapper; +import com.dy.pipIrrGlobal.pojoOp.OpeApproveResult; import com.dy.pipIrrGlobal.pojoOp.OpeProcessingResult; import com.dy.pipIrrGlobal.pojoOp.OpeWorkOrder; +import com.dy.pipIrrGlobal.voBa.VoRoleSimple; +import com.dy.pipIrrGlobal.voOp.VoProcessingResult; +import com.dy.pipIrrGlobal.voOp.VoProcessingResult_temp; +import com.dy.pipIrrGlobal.voOp.VoTaskType; import com.dy.pipIrrGlobal.voOp.VoWorkOrder; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.common.utils.PojoUtils; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.Date; import java.util.List; import java.util.Map; +import java.util.Optional; /** * @author ZhuBaoMin @@ -31,6 +43,15 @@ @Autowired private OpeProcessingResultMapper opeProcessingResultMapper; + + @Autowired + private OpeApproveResultMapper opeApproveResultMapper; + + @Autowired + private OpeTaskTypeMapper opeTaskTypeMapper; + + @Autowired + private BaUserMapper baUserMapper; /** * 娣诲姞宸ュ崟璁板綍 @@ -53,8 +74,8 @@ * @param workOrderId * @return */ - public OpeWorkOrder getWorkOrder(Long dispatcherId, Long workOrderId) { - return opeWorkOrderMapper.getWorkOrder(dispatcherId, workOrderId); + public OpeWorkOrder getWorkOrder(Long workOrderId, Long dispatcherId) { + return opeWorkOrderMapper.getWorkOrder(workOrderId, dispatcherId); } /** @@ -96,27 +117,157 @@ } /** - * 鏍规嵁workOrderId鑾峰彇鏈垹闄ょ殑澶勭悊缁撴灉鏁伴噺锛屾坊鍔犵粨鏋滀笂鎶ュ墠鍒ゆ柇浣跨敤 - * @param workOrderId - * @return - */ - public Boolean hasValidProcessingResult(Long workOrderId) { - if (opeProcessingResultMapper.getValidResultCount(workOrderId) == 0) { - return false; - } - return true; - } - - /** * 涓婃姤宸ュ崟澶勭悊缁撴灉 * @param po * @return */ - public Long insertProcessingResult(OpeProcessingResult po) { - po.setReportTime(new Date()); - po.setState((byte)1); + public String addProcessingResult(OpeProcessingResult po) { + String result = ""; + OpeProcessingResult processingResult = opeProcessingResultMapper.getByWorkOrderId(po.getWorkOrderId()); + if(processingResult == null) { + // 鏃犲鐞嗙粨鏋滀笂鎶ュ鐞嗙粨鏋� + po.setReportTime(new Date()); + po.setState((byte)1); + po.setDeleted(0L); + opeProcessingResultMapper.insert(po); + if(po.getId() == 0) { + result = "宸ュ崟澶勭悊缁撴灉涓婃姤澶辫触"; + return result; + } + + result = "success"; + return result; + } + + switch (processingResult.getState()) { + case 1: + result = "宸ュ崟澶勭悊缁撴灉宸蹭笂鎶ワ紝璇峰嬁閲嶅涓婃姤"; + break; + case 2: + result = "宸ュ崟澶勭悊缁撴灉宸查�氳繃"; + break; + case 3: + // 澶勭悊缁撴灉琚┏鍥炴椂锛屽垹闄ゅ綋鍓嶅鐞嗙粨鏋滐紝涓婃姤鏂扮殑澶勭悊缁撴灉 + processingResult.setDeleted(System.currentTimeMillis()/1000); + opeProcessingResultMapper.updateByPrimaryKeySelective(processingResult); + + po.setReportTime(new Date()); + po.setState((byte)1); + po.setDeleted(0L); + opeProcessingResultMapper.insert(po); + result = "success"; + break; + } + + return result; + } + + /** + * 鑾峰彇鎸囧畾宸℃鍛樼殑鎸囧畾鏈垹闄や笖鏈鎵圭殑澶勭悊缁撴灉涓婃姤锛屽垹闄ゅ鐞嗙粨鏋滃墠鍒ゆ柇浣跨敤浣跨敤 + * @param proResultId + * @param inspectorId + * @return + */ + public OpeProcessingResult getProResult(Long proResultId, Long inspectorId) { + return opeProcessingResultMapper.getProResult(proResultId, inspectorId); + } + + /** + * 閫昏緫鍒犻櫎涓�涓湭鍒犻櫎鐨勫鐞嗙粨鏋� + * @param proResultId + * @return + */ + public Integer deleteProResult(Long proResultId) { + return opeProcessingResultMapper.deleteProResult(proResultId); + } + + /** + * 鑾峰彇澶勭悊缁撴灉璇︽儏 + * @param proResultId + * @return + */ + public VoProcessingResult getProResultById(Long proResultId) { + VoProcessingResult_temp result_temp = opeProcessingResultMapper.getProResultById(proResultId); + VoProcessingResult result = new VoProcessingResult(); + BeanUtils.copyProperties(result_temp, result); + + JSONArray images_array = Optional.ofNullable(JSON.parseArray(result_temp.getImages())).orElse(new JSONArray()); + JSONArray audios_array = Optional.ofNullable(JSON.parseArray(result_temp.getAudios())).orElse(new JSONArray()); + JSONArray videos_array = Optional.ofNullable(JSON.parseArray(result_temp.getVideos())).orElse(new JSONArray()); + result.setImages(images_array); + result.setAudios(audios_array); + result.setVideos(videos_array); + + return result; + } + + /** + * 瀹℃牳宸ュ崟澶勭悊缁撴灉 + * 1. 鍒ゆ柇鎸囧畾鐨勫伐鍗曞強澶勭悊缁撴灉鏄惁瀛樺湪涓旀湭瀹屾垚 + * 2. 娣诲姞瀹℃牳璁板綍 + * 3. 濡傛灉瀹℃牳閫氳繃 + * 澶勭悊缁撴灉鐘舵�佹敼涓哄凡閫氳繃 + * 宸ュ崟琛ュ厖浠诲姟瀹屾垚鏃堕棿 + * 宸ュ崟鐘舵�佹敼涓哄凡瀹屾垚 + * 4. 濡傛灉椹冲洖 + * 浠诲姟澶勭悊缁撴灉鏀逛负椹冲洖 + * 宸ュ崟椹冲洖娆℃暟鍔�1 + * @param po + * @return + */ + public String approveProResult(OpeApproveResult po) { + + OpeProcessingResult processingResult = opeProcessingResultMapper.selectByPrimaryKey(po.getProcessingResultId()); + if(processingResult == null || processingResult.getDeleted() != 0 || processingResult.getState() != 1) { + return "澶勭悊缁撴灉涓嶅瓨鍦ㄦ垨宸插畬鎴愬鏍�"; + } + + OpeWorkOrder workOrder = opeWorkOrderMapper.selectByPrimaryKey(po.getWorkOrderId()); + if(workOrder == null || workOrder.getDeleted() != 0 || workOrder.getState() == 2) { + return "宸ュ崟涓嶅瓨鍦ㄦ垨宸插畬鎴�"; + } + + po.setApproveTime(new Date()); po.setDeleted(0L); - opeProcessingResultMapper.insert(po); - return po.getId(); + if(opeApproveResultMapper.insert(po) == 0) { + return "瀹℃牳璁板綍娣诲姞澶辫触"; + } + + if(po.getApproveResult() == 1) { + // 瀹℃牳閫氳繃 + processingResult.setState((byte)2); + opeProcessingResultMapper.updateByPrimaryKeySelective(processingResult); + + workOrder.setCompleteTime(processingResult.getCompleteTime()); + workOrder.setState((byte)2); + opeWorkOrderMapper.updateByPrimaryKeySelective(workOrder); + + } else { + // 椹冲洖 + processingResult.setState((byte)3); + opeProcessingResultMapper.updateByPrimaryKeySelective(processingResult); + + workOrder.setRejectTimes(workOrder.getRejectTimes() + 1); + opeWorkOrderMapper.updateByPrimaryKeySelective(workOrder); + } + + return "success"; + } + + /** + * 鑾峰彇浠诲姟绫诲瀷鍒楄〃 + * @return + */ + public List<VoTaskType> getTaskTypes() { + return opeTaskTypeMapper.getTaskTypes(); + } + + /** + * 鑾峰彇宸℃鍛樺垪琛� + * @param inspector + * @return + */ + public List<VoRoleSimple> getInspectors(String inspector) { + return baUserMapper.getInspectors(inspector); } } -- Gitblit v1.8.0