From d0a6fc23f31f924cb1744397478dc4c7c57c04e1 Mon Sep 17 00:00:00 2001
From: XiaoRuby <3114200645@qq.com>
Date: 星期六, 19 八月 2023 09:58:40 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/PlanServiceImpl.java |   61 ++++++++++++++++++++++++++++++
 1 files changed, 61 insertions(+), 0 deletions(-)

diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/PlanServiceImpl.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/PlanServiceImpl.java
new file mode 100644
index 0000000..5819ccd
--- /dev/null
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/PlanServiceImpl.java
@@ -0,0 +1,61 @@
+package com.yuanchu.limslaboratory.service.impl;
+
+import com.yuanchu.limslaboratory.mapper.PlanMapper;
+import com.yuanchu.limslaboratory.pojo.vo.PlanVo;
+import com.yuanchu.limslaboratory.service.PlanService;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * <p>
+ * 鏈嶅姟瀹炵幇绫�
+ * </p>
+ *
+ * @author 姹熻嫃榈烽洀缃戠粶绉戞妧鏈夐檺鍏徃
+ * @since 2023-08-09
+ */
+@Service
+public class PlanServiceImpl implements PlanService {
+
+    @Resource
+    private PlanMapper planMapper;
+
+    /**
+     * 鏌ヨ妫�楠岃鍒�
+     *
+     * @return
+     */
+    @Override
+    public List<PlanVo> selectAllPlan(String device, Date beginTime, Date endTime, String user) {
+        //鑾峰彇鏁版嵁搴撴暟鎹�
+        List<PlanVo> planVos = planMapper.selectAllPlan(device, beginTime, endTime, user);
+        //娣诲姞璁″垝宸ユ湡鍜屾楠岃繘搴�
+        planVos.forEach(planVo -> {
+            //娣诲姞妫�楠岃繘搴�
+            //鍒ゆ柇鏄惁鏄凡瀹屾垚
+            if (planVo.getState() != null) {
+                planVo.setProgress(100);
+            }
+            //鍒ゆ柇鏄惁鏄湭鍒嗛厤
+            if (planVo.getCheckproject() == null) {
+                planVo.setProgress(0);
+            }
+            //鍒ゆ柇鏄惁鏄繘琛屼腑
+            if (planVo.getState() == null && planVo.getCheckproject() != null) {
+                planVo.setProgress(50);
+            }
+            //娣诲姞璁″垝宸ユ湡
+            if (planVo.getFinishtime() != null && planVo.getStarttime() != null) {
+                long startTimeInMillis = planVo.getStarttime().getTime();
+                long endTimeInMillis = planVo.getFinishtime().getTime();
+                long durationInMillis = endTimeInMillis - startTimeInMillis;
+                long duration = durationInMillis / (1000 * 60 * 60);
+                planVo.setDuration(Integer.valueOf((int) duration));
+            }
+        });
+        return planVos;
+    }
+}

--
Gitblit v1.9.3