From c8ffc5ed851f85808aa735a575402ebae4b00da9 Mon Sep 17 00:00:00 2001
From: zhubaomin <zhubaomin>
Date: 星期六, 09 十一月 2024 08:19:21 +0800
Subject: [PATCH] 获取全部取水口接口取消在线情况判断

---
 pipIrr-platform/pipIrr-web/pipIrr-web-app/src/main/java/com/dy/pipIrrApp/workOrder/WorkOrderSv.java |  156 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 156 insertions(+), 0 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 c635d5e..356820b 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,7 +1,21 @@
 package com.dy.pipIrrApp.workOrder;
 
+import com.dy.common.webUtil.QueryResultVo;
+import com.dy.pipIrrApp.workOrder.qo.QoWorkOrder;
+import com.dy.pipIrrGlobal.daoOp.OpeProcessingResultMapper;
+import com.dy.pipIrrGlobal.daoOp.OpeWorkOrderMapper;
+import com.dy.pipIrrGlobal.pojoOp.OpeProcessingResult;
+import com.dy.pipIrrGlobal.pojoOp.OpeWorkOrder;
+import com.dy.pipIrrGlobal.voOp.VoProcessingResult;
+import com.dy.pipIrrGlobal.voOp.VoWorkOrder;
 import lombok.extern.slf4j.Slf4j;
+import org.apache.dubbo.common.utils.PojoUtils;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
 
 /**
  * @author ZhuBaoMin
@@ -13,4 +27,146 @@
 @Slf4j
 @Service
 public class WorkOrderSv {
+    @Autowired
+    private OpeWorkOrderMapper opeWorkOrderMapper;
+
+    @Autowired
+    private OpeProcessingResultMapper opeProcessingResultMapper;
+
+    /**
+     * 娣诲姞宸ュ崟璁板綍
+     * @param po
+     * @return
+     */
+    public Long insertWorkOrder(OpeWorkOrder po) {
+        po.setDispatchTime(new Date());
+        po.setState((byte) 1);
+        po.setRejectTimes(0);
+        po.setDeleted(0L);
+
+        opeWorkOrderMapper.insert(po);
+        return po.getId();
+    }
+
+    /**
+     * 鑾峰彇鎸囧畾娲惧崟浜虹殑鎸囧畾鏈垹闄ゅ伐鍗曪紝鍒犻櫎宸ュ崟鍓嶅垽鏂娇鐢ㄤ娇鐢�
+     * @param dispatcherId
+     * @param workOrderId
+     * @return
+     */
+    public OpeWorkOrder getWorkOrder(Long workOrderId, Long dispatcherId) {
+        return opeWorkOrderMapper.getWorkOrder(workOrderId, dispatcherId);
+    }
+
+    /**
+     * 閫昏緫鍒犻櫎涓�涓湭鍒犻櫎鐨勫伐鍗�
+     * @param workOrderId
+     * @return
+     */
+    public Integer deleteWorkOrder(Long workOrderId) {
+        return opeWorkOrderMapper.deleteWorkOrder(workOrderId);
+    }
+
+    /**
+     * 鏍规嵁鎸囧畾鏉′欢鑾峰彇宸ュ崟
+     * @param qo
+     * @return
+     */
+    public QueryResultVo<List<VoWorkOrder>> getWorkOrders(QoWorkOrder qo) {
+        qo.completionTime() ;
+
+        Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo);
+        Long itemTotal = opeWorkOrderMapper.getWorkOrdersCount(params);
+
+        QueryResultVo<List<VoWorkOrder>> rsVo = new QueryResultVo<>() ;
+        rsVo.pageSize = qo.pageSize ;
+        rsVo.pageCurr = qo.pageCurr ;
+
+        rsVo.calculateAndSet(itemTotal, params);
+        rsVo.obj = opeWorkOrderMapper.getWorkOrders(params);
+        return rsVo ;
+    }
+
+    /**
+     * 鏍规嵁宸ュ崟涓婚敭鑾峰彇宸ュ崟瑙嗗浘瀵硅薄
+     * @param workOrderId
+     * @return
+     */
+    public VoWorkOrder getWorkOrderById(Long workOrderId) {
+        return opeWorkOrderMapper.getWorkOrderById(workOrderId);
+    }
+
+    /**
+     * 涓婃姤宸ュ崟澶勭悊缁撴灉
+     * @param po
+     * @return
+     */
+    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) {
+        return opeProcessingResultMapper.getProResultById(proResultId);
+    }
 }

--
Gitblit v1.8.0