From aa1cceece8b421c6f3647bfeddb9188562e2f77f Mon Sep 17 00:00:00 2001
From: baoshiwei <baoshiwei@shlanbao.cn>
Date: 星期五, 30 六月 2023 11:06:23 +0800
Subject: [PATCH] 实时数据增加字段

---
 jeecg-module-dry/jeecg-module-dry-biz/src/main/java/org/jeecg/modules/dry/service/impl/DryRealTimeDataServiceImpl.java |  109 ++++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 104 insertions(+), 5 deletions(-)

diff --git a/jeecg-module-dry/jeecg-module-dry-biz/src/main/java/org/jeecg/modules/dry/service/impl/DryRealTimeDataServiceImpl.java b/jeecg-module-dry/jeecg-module-dry-biz/src/main/java/org/jeecg/modules/dry/service/impl/DryRealTimeDataServiceImpl.java
index 3e33bb9..1c5b65d 100644
--- a/jeecg-module-dry/jeecg-module-dry-biz/src/main/java/org/jeecg/modules/dry/service/impl/DryRealTimeDataServiceImpl.java
+++ b/jeecg-module-dry/jeecg-module-dry-biz/src/main/java/org/jeecg/modules/dry/service/impl/DryRealTimeDataServiceImpl.java
@@ -9,10 +9,7 @@
 import org.jeecg.common.config.TenantContext;
 import org.jeecg.common.util.RedisUtil;
 import org.jeecg.modules.dry.common.CacheConstants;
-import org.jeecg.modules.dry.entity.DryEquipment;
-import org.jeecg.modules.dry.entity.DryHerb;
-import org.jeecg.modules.dry.entity.DryOrder;
-import org.jeecg.modules.dry.entity.DryOrderTrend;
+import org.jeecg.modules.dry.entity.*;
 import org.jeecg.modules.dry.service.*;
 import org.jeecg.modules.dry.vo.DryOrderTrendVo;
 import org.jeecg.modules.dry.vo.DryOrderVo;
@@ -22,6 +19,8 @@
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
+import java.text.DecimalFormat;
+import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
 @Slf4j
@@ -40,6 +39,9 @@
 
     @Autowired
     private RedisUtil redisUtil;
+
+    @Autowired
+    private IDryProdRecordService prodRecordService;
 
     @Override
     @Transactional
@@ -74,8 +76,69 @@
         orderVo.setLowalarm(realTimeDataVo.getLowalarm());
         orderVo.setWind(realTimeDataVo.getWind());
         orderVo.setOriginWeight(realTimeDataVo.getWeight2());
+        orderVo.setWatt(realTimeDataVo.getWatt());
+        orderVo.setSteam(realTimeDataVo.getSteam());
+        orderVo.setEnvHum(realTimeDataVo.getEnvhum());
+        orderVo.setEnvTemp(realTimeDataVo.getEnvtemp());
+        orderVo.setRemain(realTimeDataVo.getAi_total_time());
+        orderVo.setCurRemain(realTimeDataVo.getAi_time());
+        orderVo.setState_fan(realTimeDataVo.getState_fan());
+        orderVo.setState_roller(realTimeDataVo.getState_roller());
+        orderVo.setState_auto(realTimeDataVo.getState_auto());
+        orderVo.setState_windbox(realTimeDataVo.getState_windbox());
+        orderVo.setState_valve(realTimeDataVo.getState_valve());
+        orderVo.setOrderStatus(realTimeDataVo.getWorkorder_status());
         DryOrderTrendVo trendVo = new DryOrderTrendVo(realTimeDataVo);
         // 2.2 淇濆瓨宸ュ崟鍚按鐜囧彉鍖� 鎴� 閲嶉噺鍙樺寲
+
+        if(realTimeDataVo.getReport_flag()) {
+            DryProdRecord prodRecord = new DryProdRecord();
+            prodRecord.setReportHeadName(realTimeDataVo.getReport_head_name());
+            prodRecord.setReportHeadBatch(realTimeDataVo.getReport_head_batch());
+            prodRecord.setReportHeadNum(realTimeDataVo.getReport_head_num());
+            prodRecord.setReportHeadMachine(realTimeDataVo.getReport_head_machine());
+            prodRecord.setReportHeadAccepter(realTimeDataVo.getReport_head_accepter());
+            prodRecord.setReportHeadDate(realTimeDataVo.getReport_head_date());
+            prodRecord.setReportHeadLeader(realTimeDataVo.getReport_head_leader());
+            prodRecord.setReportHeadTecher(realTimeDataVo.getReport_head_techer());
+
+            prodRecord.setReportCheckField(realTimeDataVo.getReport_check_field()?1:0);
+            prodRecord.setReportCheckFile(realTimeDataVo.getReport_check_file()?1:0);
+            prodRecord.setReportCheckTag(realTimeDataVo.getReport_check_tag()?1:0);
+            prodRecord.setReportCheckTool(realTimeDataVo.getReport_check_tool()?1:0);
+            prodRecord.setReportCheckMan(realTimeDataVo.getReport_check_man());
+            prodRecord.setReportCheckStatus(realTimeDataVo.getReport_check_status()?1:0);
+            prodRecord.setReportCheckQa(realTimeDataVo.getReport_check_qa());
+            prodRecord.setReportCheckRecord(realTimeDataVo.getReport_check_record());
+
+            prodRecord.setReportProductView(realTimeDataVo.getReport_product_view()?1:0);
+            prodRecord.setReportProductWind(realTimeDataVo.getReport_product_wind()?1:0);
+            prodRecord.setReportProductSun(realTimeDataVo.getReport_product_sun()?1:0);
+            prodRecord.setReportProductLowDry(realTimeDataVo.getReport_product_low_dry()?1:0);
+            prodRecord.setReportProductDry(realTimeDataVo.getReport_product_dry()?1:0);
+            prodRecord.setReportProductStart(realTimeDataVo.getReport_product_start());
+            prodRecord.setReportProductEnd(realTimeDataVo.getReport_product_end());
+            prodRecord.setReportProductTotal(realTimeDataVo.getReport_product_total());
+            prodRecord.setReportProductCheck(realTimeDataVo.getReport_product_check()?1:0);
+            prodRecord.setReportProductMan1(realTimeDataVo.getReport_product_man1());
+            prodRecord.setReportProductMan2(realTimeDataVo.getReport_product_man2());
+            prodRecord.setReportProductWeight(realTimeDataVo.getReport_product_weight());
+            prodRecord.setReportProductWaste(realTimeDataVo.getReport_product_waste());
+            prodRecord.setReportProductUse(realTimeDataVo.getReport_product_use());
+            prodRecord.setReportProductQa(realTimeDataVo.getReport_product_qa());
+
+            prodRecord.setReportCleanMachine(realTimeDataVo.getReport_clean_machine()?1:0);
+            prodRecord.setReportCleanWaste(realTimeDataVo.getReport_clean_waste()?1:0);
+            prodRecord.setReportCleanTool(realTimeDataVo.getReport_clean_tool()?1:0);
+            prodRecord.setReportCleanDoor(realTimeDataVo.getReport_clean_door()?1:0);
+            prodRecord.setReportCleanBox(realTimeDataVo.getReport_clean_box()?1:0);
+            prodRecord.setReportCleanRecord(realTimeDataVo.getReport_clean_record()?1:0);
+            prodRecord.setReportCleanDate(realTimeDataVo.getReport_clean_date());
+            prodRecord.setReportCleanMan(realTimeDataVo.getReport_clean_man());
+            prodRecord.setReportCleanConfirm(realTimeDataVo.getReport_clean_confirm()?1:0);
+            prodRecord.setReportCleanQa(realTimeDataVo.getReport_clean_qa());
+            prodRecordService.save(prodRecord);
+        }
         saveOrderTrendVo(trendVo, orderVo);
         orderVo.setTrendVo(trendVo);
         orderVo.getBellowsTemp().put(realTimeDataVo.getTime3(), realTimeDataVo.getTemp2());
@@ -209,7 +272,43 @@
     @Override
     public Result<?> queryMachineRealTImeData(RealTimeDataVo realTimeDataVo) {
         TenantContext.setTenant(realTimeDataVo.getTenantid()+"");
-        DryOrderVo orderVo = (DryOrderVo) redisUtil.hget(CacheConstants.RedisKeyEnum.WORK_ORDER.getCode(), realTimeDataVo.getTenantid()+"_"+realTimeDataVo.getMachineid());
+
+
+        LambdaQueryWrapper<DryEquipment> queryWrapper = new LambdaQueryWrapper<>();
+        queryWrapper.eq(DryEquipment::getTenantId, realTimeDataVo.getTenantid());
+        queryWrapper.eq(DryEquipment::getEnable, "Y");
+
+        List<DryEquipment> dryEquipments = equipmentService.list(queryWrapper);
+        List<String> list = new ArrayList<>();
+
+        List<Double> dList = new ArrayList<>();
+        DryOrderVo orderVo = (DryOrderVo) redisUtil.hget(CacheConstants.RedisKeyEnum.WORK_ORDER.getCode(), realTimeDataVo.getTenantid() + "_" + realTimeDataVo.getMachineid());
+try {
+
+
+    if (dryEquipments != null && dryEquipments.size() > 0) {
+        dryEquipments.stream().forEach(item -> {
+            DryOrderVo order = (DryOrderVo) redisUtil.hget(CacheConstants.RedisKeyEnum.WORK_ORDER.getCode(), realTimeDataVo.getTenantid() + "_" + item.getCode());
+            if (order != null) {
+                double v = order.getOriginWeight() - order.getYield();
+                list.add(item.getName().substring(0, item.getName().indexOf('#')+1));
+                if (v > 0) {
+                    DecimalFormat df = new DecimalFormat("#.00");
+                    dList.add(Double.valueOf(df.format(v / order.getDryTime() * 60)));
+                } else {
+                    dList.add(50d);
+                }
+
+            }
+        });
+    }
+    if (orderVo != null) {
+        orderVo.setCompEqpNum(list);
+        orderVo.setCompEqpEffic(dList);
+    }
+}catch (Exception e) {
+    e.printStackTrace();
+}
         return Result.ok(orderVo);
     }
 }

--
Gitblit v1.9.3