From 2c2413760b6467bf62402dba7338bd3bbcbd7341 Mon Sep 17 00:00:00 2001
From: huang <1532065656@qq.com>
Date: 星期二, 20 五月 2025 14:20:38 +0800
Subject: [PATCH] 添加产量报表功能页面

---
 JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/controller/PrimitiveTaskController.java |  113 ++++++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 109 insertions(+), 4 deletions(-)

diff --git a/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/controller/PrimitiveTaskController.java b/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/controller/PrimitiveTaskController.java
index ca0f4f2..e2c2fc4 100644
--- a/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/controller/PrimitiveTaskController.java
+++ b/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/controller/PrimitiveTaskController.java
@@ -1,17 +1,21 @@
 package com.mes.md.controller;
 
 
-import com.mes.md.entity.Machine;
-import com.mes.md.entity.PrimitiveTask;
-import com.mes.md.entity.Tasking;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.mes.md.entity.*;
+import com.mes.md.mapper.KBBTJPDrawingBPMapper;
+import com.mes.md.service.KBBTJPDrawingBPService;
 import com.mes.md.service.PrimitiveTaskService;
+import com.mes.md.service.TaskingLogService;
 import com.mes.md.service.TaskingService;
 import com.mes.utils.Result;
 import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
-import java.util.List;
+import java.text.SimpleDateFormat;
+import java.util.*;
 
 /**
  * <p>
@@ -21,11 +25,20 @@
  * @author wu
  * @since 2024-08-28
  */
+@Slf4j
 @RestController
 @RequestMapping("/primitiveTask")
 public class PrimitiveTaskController {
+
     @Autowired
     private PrimitiveTaskService primitiveTaskService;
+    @Autowired
+    private KBBTJPDrawingBPService kBBTJPDrawingBPService;
+    @Autowired
+    KBBTJPDrawingBPMapper kBBTJPDrawingBPMapper;
+    @Autowired
+    TaskingLogService taskingLogService;
+
     @ApiOperation("鏌ヨ褰撳墠璁惧锛屾湭瀹屽伐鐘舵�佺殑绾夸笂浠诲姟")
     @PostMapping("/selectPrimitiveTask")
     @ResponseBody
@@ -34,6 +47,21 @@
         return Result.build(200,"鎴愬姛",list);
     }
 
+    @ApiOperation("鏌ヨ褰撳墠 鏍囧噯锛屽彲棰嗗彇鐨勪换鍔★紙瀹㈡埛琛級")
+    @PostMapping("/findKBBTJPDrawingBP")
+    @ResponseBody
+    public Result findKBBTJPDrawingBP() {
+        List<KBBTJPDrawingBP> list =kBBTJPDrawingBPService.notReceiveKBBTJPDrawingBP();
+        return Result.build(200,"鎴愬姛",list);
+    }
+
+    @ApiOperation("棰嗗彇鎴栫粨鏉�  ")
+    @PostMapping("/startOrStopPrimitiveTasking")
+    @ResponseBody
+    public Result startOrStopPrimitiveTasking(@RequestBody PrimitiveTask primitiveTask) {
+        int list =primitiveTaskService.startOrStopPrimitiveTasking(primitiveTask);
+        return Result.build(200,"鎴愬姛",list);
+    }
     @ApiOperation("鏍规嵁鎵规鍙疯繘琛屾墜鍔ㄦ姤宸�")
     @PostMapping("/updatePrimitiveTask")
     @ResponseBody
@@ -41,5 +69,82 @@
         boolean list =primitiveTaskService.updatePrimitiveTask(primitiveTask);
         return Result.build(200,"鎴愬姛",list);
     }
+
+    @ApiOperation("鏌ヨ 鏃ヤ骇閲忔湭瀹屾垚锛堝鎴疯〃锛�")
+    @PostMapping("/findDayNotCompleteOutput")
+    @ResponseBody
+    public Result findDayNotCompleteOutput(@RequestBody Map<String, String> map) {
+        int dayCount=1-Integer.valueOf(map.get("dayCount").toString());
+        Calendar cal = Calendar.getInstance();
+        //璁剧疆褰撳墠鏃堕棿
+        cal.setTime(new Date());
+        cal.set(Calendar.HOUR_OF_DAY, 0);
+        cal.set(Calendar.MINUTE, 0);
+        cal.set(Calendar.SECOND, 0);
+        cal.set(Calendar.MILLISECOND, 0);
+        cal.add(Calendar.DATE, dayCount);
+        QueryWrapper<KBBTJPDrawingBP> queryWrapper = new QueryWrapper<>();
+        queryWrapper.select("OrderNo,(sum(task_quantity-isNull(report_count,0))) as notComplete,sum(isNull((length*width*(task_quantity-isNull(report_count,0)))/1000000,0)) as area_sum").
+                gt("PlanDate",cal.getTime()).having("sum(task_quantity-isNull(report_count,0))>0")
+                .groupBy("OrderNo");
+        List<Map> list=kBBTJPDrawingBPMapper.selectMaps((QueryWrapper)queryWrapper);
+        return Result.build(200,"鎴愬姛",list);
+    }
+
+    @ApiOperation("鏌ヨ 鏃ヤ骇閲忥紙瀹㈡埛琛級")
+    @PostMapping("/findDailyOutput")
+    @ResponseBody
+    public Result findDailyOutput(@RequestBody Map<String, String> map) {
+
+        int dayCount=Integer.valueOf(map.get("dayCount").toString());
+        List<Map> result=taskingLogService.selectTaskingLog(dayCount);
+        return Result.build(200,"鎴愬姛",result);
+    }
+
+    @ApiOperation("鏌ヨ 璁″垝閲� m虏 鐗囨暟锛堝鎴疯〃锛�")
+    @PostMapping("/findPlannedQuantity")
+    @ResponseBody
+    public Result findPlannedQuantity(@RequestBody Map<String, String> map) {
+        int dayCount=Integer.valueOf(map.get("dayCount").toString());
+        Calendar cal = Calendar.getInstance();
+        //璁剧疆褰撳墠鏃堕棿
+        cal.setTime(new Date());
+        cal.set(Calendar.HOUR_OF_DAY, 0);
+        cal.set(Calendar.MINUTE, 0);
+        cal.set(Calendar.SECOND, 0);
+        cal.set(Calendar.MILLISECOND, 0);
+        cal.add(Calendar.DATE, 1-dayCount);
+        Date startDate = cal.getTime();
+
+        QueryWrapper<KBBTJPDrawingBP> queryWrapper = new QueryWrapper<>();
+        queryWrapper.select("CAST(PlanDate AS DATE) AS CreateDate,isNull(sum(task_quantity),0) as task_quantity_sum,isNull(sum(length*width*task_quantity)/1000000,0) as area_sum")
+                .gt("PlanDate",startDate).groupBy("CAST(PlanDate AS DATE)")
+                .orderByAsc("CAST(PlanDate AS DATE)");;
+        List<Map> list=kBBTJPDrawingBPMapper.selectMaps((QueryWrapper)queryWrapper);
+        List<Map> resultDate=new ArrayList<>();
+        for (int i=0;i<dayCount;i++){
+            Date thisdate=cal.getTime();
+            cal.add(Calendar.DATE, 1);
+            Map thisMap=new HashMap<>();
+
+            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+            String dateString = sdf.format(thisdate);
+            thisMap.put("CreateDate",dateString);
+//            if(list.size()>0){
+//                log.info("瀵规瘮:{},{},{}",list.get(0).get("CreateDate"),dateString,list.get(0).get("CreateDate").toString().equals(dateString));
+//            }
+
+            if (list.size()>0&&list.get(0).get("CreateDate").toString().equals(dateString)){
+                thisMap.put("task_quantity_sum",list.get(0).get("task_quantity_sum"));
+                thisMap.put("area_sum",list.get(0).get("area_sum"));
+                list.remove(0);
+            }else{
+                thisMap.put("task_quantity_sum",0);
+                thisMap.put("area_sum",0);
+            }
+            resultDate.add(thisMap);
+        }
+        return Result.build(200,"鎴愬姛",resultDate);
+    }
 }
 

--
Gitblit v1.8.0