package com.mes.md.controller;
|
|
|
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.text.SimpleDateFormat;
|
import java.util.*;
|
|
/**
|
* <p>
|
* 原始任务表 前端控制器
|
* </p>
|
*
|
* @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
|
public Result findMachineTask(@RequestBody PrimitiveTask primitiveTask) {
|
List<PrimitiveTask> list =primitiveTaskService.selectPrimitiveTask(primitiveTask);
|
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
|
public Result updatePrimitiveTask(@RequestBody PrimitiveTask primitiveTask) {
|
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);
|
}
|
}
|