package com.mes.engineering.controller; import com.mes.engineering.entity.Engineering; import com.mes.engineering.service.EngineeringService; import com.mes.glassinfo.entity.GlassInfo; import com.mes.glassinfo.service.GlassInfoService; import com.mes.pp.service.OptimizeProjectService; import com.mes.uppattenusage.entity.UpPattenUsage; import com.mes.uppattenusage.service.UpPattenUsageService; 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; /** *

* 前端控制器 *

* * @author wu * @since 2024-04-22 */ @RestController @Slf4j @RequestMapping("/engineering/engineering") public class EngineeringController { @Autowired private EngineeringService engineeringService; @Autowired private UpPattenUsageService upPattenUsageService; @Autowired private GlassInfoService glassInfoService; @Autowired private OptimizeProjectService optimizeProjectService; @ApiOperation("开始/暂停任务/传递工程号和状态,开始是1 暂停是0") @PostMapping("/pauseTask") //调用上片任务 @ResponseBody public Result > pauseTask(@RequestBody Engineering engineering) { boolean work=engineeringService.changeTask(engineering.getEngineerId(),engineering.getState()); List glass = upPattenUsageService.prioritylist(); log.info("StartorStop:{},{}", work,engineering); return Result.build(200, engineering.getEngineerId(),glass); } @ApiOperation("开始上片") @PostMapping("/changeTask") //调用上片任务 @ResponseBody public Result changeTask(@RequestBody Engineering engineering) { log.info("engineeringId:{}", engineering); UpPattenUsage upPattenUsage = upPattenUsageService.selectedEngineering(engineering.getEngineerId()); if (upPattenUsage != null) { boolean work=engineeringService.changeTask(engineering.getEngineerId(),engineering.getState()); List glass = upPattenUsageService.prioritylist(); optimizeProjectService.changeTask(engineering.getEngineerId(), 200); return Result.build(200, "已保存过", work); } else { List upPattenUsages = upPattenUsageService.selectSaveUpPattenUsage(engineering.getEngineerId()); log.info("将查询出的UpPattenUsage数据保存到数据库表里"); upPattenUsageService.saveUpPattenUsage(upPattenUsages); log.info("从PP表查询glassinfo的数据并保存到表里"); List glassinfo = glassInfoService.selectGlassInfo(engineering.getEngineerId()); glassInfoService.saveGlassInfo(glassinfo); log.info("从PP表查询engineering的数据并保存到表里"); List listEngineering = engineeringService.selectEngineering(engineering.getEngineerId()); engineeringService.saveEngineering(listEngineering); log.info("更改pp表状态为已领取"); //将engineering表状态为正在上片 boolean work=engineeringService.changeTask(engineering.getEngineerId(),engineering.getState()); List glass = upPattenUsageService.prioritylist(); optimizeProjectService.changeTask(engineering.getEngineerId(), 200); return Result.build(200, "保存成功", work); } } @ApiOperation("查询可以上片的工程号") @GetMapping("/selectTask") //调用上片任务 @ResponseBody public Result > selectTask() { List engineering=engineeringService.selectTask(); log.info("可领取任务返回:{}", engineering); return Result.build(200, "",engineering); } }