wangfei
2025-02-19 30fd531c95ece1c0e7306cad138307dedd459d9a
hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/engineering/controller/EngineeringController.java
@@ -1,6 +1,10 @@
package com.mes.engineering.controller;
import com.mes.damage.entity.Damage;
import com.mes.damage.entity.request.DamageRequest;
import com.mes.damage.service.DamageService;
import com.mes.engineering.entity.Engineering;
import com.mes.engineering.service.EngineeringService;
import com.mes.glassinfo.entity.GlassInfo;
@@ -12,6 +16,7 @@
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@@ -36,24 +41,34 @@
    private GlassInfoService glassInfoService;
    @Autowired
    private OptimizeProjectService optimizeProjectService;
    @Autowired
    DamageService damageService;
    @ApiOperation("开始/暂停任务/传递工程号和状态,开始是1 暂停是0")
    @PostMapping("/pauseTask") //暂停上片任务
    @ResponseBody
    public  Result <List<UpPattenUsage>> pauseTask(@RequestBody Engineering engineering) {
        boolean work=engineeringService.changeTask(engineering.getEngineerId(),engineering.getState());
        List<UpPattenUsage> glass = upPattenUsageService.prioritylist();
        log.info("StartorStop:{},{}", work,engineering);
        return Result.build(200, engineering.getEngineerId(),glass);
        if(work){
            return Result.build(200,"成功",glass);
        }else {
            return Result.build(100,"失败",glass);
        }
    }
    @ApiOperation("暂停")
    @PostMapping("/pause") //暂停上片任务
    @ResponseBody
    public  Result <List<UpPattenUsage>> pause(@RequestBody Engineering engineering) {
        boolean work=engineeringService.changeTask(engineering.getEngineerId(),engineering.getState());
        List<UpPattenUsage> glass = upPattenUsageService.prioritylist();
        log.info("StartorStop:{},{}", work,engineering);
        return Result.build(200, engineering.getEngineerId(),glass);
        boolean work=engineeringService.pauseTask(engineering.getEngineerId(),engineering.getState());
//        List<UpPattenUsage> glass = upPattenUsageService.prioritylist();String message;
        if(work){
            return Result.build(200, "成功", null);
        }else {
            return Result.build(100, "失敗", null);
        }
    }
    @ApiOperation("开始上片")
@@ -62,28 +77,57 @@
    public  Result <Boolean> 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());
        Engineering engineerings = engineeringService.selectUpInitiate(engineering.getEngineerId());
        GlassInfo glassInfos = engineeringService.selectGlassinfoIsnull(engineering.getEngineerId());
        if (upPattenUsage != null && engineerings != null && glassInfos != null) {
            boolean work = engineeringService.changeTasks(engineering);
            List<UpPattenUsage> glass = upPattenUsageService.prioritylist();
            optimizeProjectService.changeTask(engineering.getEngineerId(), 200);
            return Result.build(200, "已保存过", work);
        } else {
            return Result.build(200, "开始上片", work);
        } else if (upPattenUsage == null && engineerings == null && glassInfos == null) {
            List<UpPattenUsage> upPattenUsages = upPattenUsageService.selectSaveUpPattenUsage(engineering.getEngineerId());
            log.info("将查询出的UpPattenUsage数据保存到数据库表里");
            upPattenUsageService.saveUpPattenUsage(upPattenUsages);
            log.info("从PP表查询glassinfo的数据并保存到表里");
            List<GlassInfo> glassinfo = glassInfoService.selectGlassInfo(engineering.getEngineerId());
            List<GlassInfo> glassinfo = glassInfoService.selectGlassInfo(engineering);
            glassInfoService.saveGlassInfo(glassinfo);
            log.info("从PP表查询engineering的数据并保存到表里");
            List<Engineering> listEngineering = engineeringService.selectEngineering(engineering.getEngineerId());
            engineeringService.saveEngineering(listEngineering);
            log.info("更改pp表状态为已领取");
            //将engineering表状态为正在上片
            boolean work=engineeringService.changeTask(engineering.getEngineerId(),engineering.getState());
            boolean work = engineeringService.changeTasks(engineering);
            List<UpPattenUsage> glass = upPattenUsageService.prioritylist();
            optimizeProjectService.changeTask(engineering.getEngineerId(), 200);
            return Result.build(200, "保存成功", work);
            if (work) {
                return Result.build(200, "保存成功"+engineering.getEngineerId(), true);
            }else {
                return Result.build(200, "保存失败"+engineering.getEngineerId(), false);
            }
        } else {
            upPattenUsageService.deleteTask(engineering.getEngineerId());
            engineeringService.deleteTask(engineering.getEngineerId());
            glassInfoService.deleteTask(engineering.getEngineerId());
            return Result.build(200, "请重新点击上片" + engineering.getEngineerId(), true);
        }
    }
    @ApiOperation("删除工程上片")
    @PostMapping("/deleteTask") //调用上片任务
    @ResponseBody
    public  Result <List<GlassInfo>> deleteTask(@RequestBody Engineering engineering) {
        //删除工程表、小片表、上片表,更改优化表状态
//        boolean work=engineeringService.deleteTask(engineering.getEngineerId());
//        glassInfoService.deleteTask(engineering.getEngineerId());
//        upPattenUsageService.deleteTask(engineering.getEngineerId());
//        optimizeProjectService.changeTask(engineering.getEngineerId(), 100);
        //暂停工程
        engineeringService.pauseTask(engineering.getEngineerId(),0);
          //查询未上片的小片信息
        List<GlassInfo>glasslist=glassInfoService.selectEdgGlassInfo(engineering.getEngineerId());
        return Result.build(200, "删除成功"+engineering.getEngineerId(), glasslist);
    }
@@ -95,5 +139,19 @@
        log.info("可领取任务返回:{}", engineering);
        return Result.build(200, "",engineering);
    }
    @ApiOperation("//上片破损拿走")
    @PostMapping("/insetDamage") //上片破损拿走
    public Result <Integer> updateTemperingState(@RequestBody Damage damage) {
        damageService.insertDamage(damage);
        return Result.build(200, "操作成功", null);
    }
    @ApiOperation("识别操作:   破损/拿走     参数(ID,功能[9:拿走,8:破损])")
    @PostMapping("/identControls")
    public Result<String> identControls(@RequestBody @Validated DamageRequest request) {
        return Result.build(200, "成功", upPattenUsageService.identControls(request));
    }
}