huang
2025-09-11 7f16849cfa9362d32eaaf323c71350351f13b689
JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/controller/TaskingController.java
@@ -1,7 +1,17 @@
package com.mes.md.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import com.mes.md.entity.KBBTLensSorting;
import com.mes.md.entity.LineConfiguration;
import com.mes.md.entity.Machine;
import com.mes.md.entity.Tasking;
import com.mes.md.mapper.KBBTLensSortingMapper;
import com.mes.md.mapper.MachineMapper;
import com.mes.md.mapper.TaskingMapper;
import com.mes.md.service.ProjectService;
import com.mes.md.service.TaskingLogService;
import com.mes.md.service.TaskingService;
import com.mes.utils.Result;
import io.swagger.annotations.ApiOperation;
@@ -9,102 +19,191 @@
import org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.Map;
/**
 * <p>
 * 工作任务操作记录明细 前端控制器
 * </p>
 *
 * @author wu
 * @since 2024-08-28
 * @author yanzhixin
 * @since 2024-09-13
 */
    @RestController
    @RequestMapping("/tasking")
    public class TaskingController {
        @Autowired
        private TaskingService taskingService;
@RestController
@RequestMapping("/tasking")
public class TaskingController {
    @Autowired
    private TaskingService taskingService;
    @Autowired
    private ProjectService projectService;
    @Autowired
    private MachineMapper machineMapper;
    @Autowired
    private TaskingMapper taskingMapper;
    @Autowired
    private TaskingLogService taskingLogService;
    @Autowired
    private KBBTLensSortingMapper kBBTLensSortingMapper;
        @ApiOperation("切换模式")
        @PostMapping("/updateLoadState") //切换模式"
        @ResponseBody
        public Result<Boolean> updateStatus(@RequestBody Integer state) {
            if(state == 1){
                boolean result =taskingService.updateStatus(state);
                return Result.build(1,"定制模式",result);
            }else {
                boolean result =taskingService.updateStatus(state);
                return Result.build(0,"标准模式",result);
    @ApiOperation("查询库位信息 返回结果")
    @PostMapping("/findKBBTLensSorting")
    @ResponseBody
    public Result findKBBTLensSorting(@RequestBody Map<String, String> map) {
        try {
            String scanId = map.get("scanId").toString();
            if (!scanId.isEmpty()) {
                List<KBBTLensSorting> list = kBBTLensSortingMapper.selectList(new QueryWrapper<KBBTLensSorting>().lambda()
                        .eq(KBBTLensSorting::getBarcode, scanId));
                return Result.build(200, "成功", list);
            }
            return Result.build(199, "前端传值NULL", map);
        } catch (Exception e) {
            return Result.build(199, "异常", map);
        }
        @ApiOperation("点击暂停设备")
        @PostMapping("/updateLoadStatus") //点击暂停设备
        @ResponseBody
        public Result<Boolean> updateLoadStatus(@RequestBody Integer state) {
            if(state == 1){
                boolean result =taskingService.updateLoadState(state);
                return Result.build(1,"成功",result);
            }else {
                boolean result =taskingService.updateLoadState(state);
                return Result.build(0,"成功",result);
    }
    @ApiOperation("扫码成功后返回结果 machineId,scanId")
    @PostMapping("/scanMachineAdd")
    @ResponseBody
    public Result scanMachineAdd(@RequestBody Map<String, String> map) {
        try {
            String machineId = map.get("machineId").toString();
            String scanId = map.get("scanId").toString();
            if (!scanId.isEmpty() && !machineId.isEmpty()) {
                Machine machine = machineMapper.selectById(machineId);
                int addCount = taskingService.scanMachineAdd(machine, scanId);
                return Result.build(200, "成功", addCount);
            }
            return Result.build(199, "前端传值NULL", map);
        } catch (Exception e) {
            return Result.build(199, "异常", map);
        }
        @ApiOperation("点击破损")
        @PostMapping("/updateDamage") //暂停上片任务
        @ResponseBody
        public Result<Tasking> updateDamage(@RequestBody Tasking tasking) {
    }
            boolean result =taskingService.updateDamage(tasking);
            return Result.build(1,"定制模式",null);
    @ApiOperation("报工提交 ")
    @PostMapping("/reportForWork")
    @ResponseBody
    public Result reportForWork(@RequestBody Machine machine) {
        try {
            int deleteCount = taskingMapper.deleteJoin(new MPJLambdaWrapper<Tasking>()
                    .selectAll(Tasking.class)
                    .innerJoin(LineConfiguration.class, LineConfiguration::getId, Tasking::getLineConfigurationId)
                    .innerJoin(Machine.class, Machine::getId, LineConfiguration::getMachineId)
                    .eq(LineConfiguration::getMachineId, machine.getId())
                    .eq(Tasking::getGlassState, "正常")
                    .eq(Tasking::getState, "线上")
                    .ne(Tasking::getWorkState, "完工"));
            taskingLogService.reportTaskingLog();
            return Result.build(200, "成功", deleteCount);
        } catch (Exception e) {
            return Result.build(199, "异常", machine);
        }
        @ApiOperation("查询当前模式过去的玻璃")
        @PostMapping("/selectTasking") //暂停上片任务
        @ResponseBody
        public Result<List<Tasking>> selectTasking() {
    }
            List<Tasking> tasking =taskingService.selectTasking();
            return Result.build(1,"定制模式",tasking);
        }
    @ApiOperation("查询当前设备,未完工状态的线上任务")
    @PostMapping("/findMachineTask")
    @ResponseBody
    public Result findMachineTask(@RequestBody Machine machine) {
        List<Tasking> list = taskingService.findMachineTask(machine);
        return Result.build(200, "成功", list);
    }
        @ApiOperation("查询当前工艺,某工作状态的线上任务")
        @PostMapping("/findCraftTasking")
        @ResponseBody
        public Result findCraftTasking(@RequestBody Tasking tasking) {
            List<Tasking> list =taskingService.findCraftTasking(tasking);
            return Result.build(200,"成功",list);
        }
    @ApiOperation("查询当前设备,某状态的线上任务【等待/正在工作/完工】")
    @PostMapping("/findMachineWorkStateTask")
    @ResponseBody
    public Result findMachineWorkStateTask(@RequestBody Machine machine, String workState) {
        List<Tasking> list = taskingService.findMachineWorkStateTask(machine, workState);
        return Result.build(200, "成功", list);
    }
        @ApiOperation("修改任务状态 【破损/失败/完工】")
        @PostMapping("/updateCraftTasking")
        @ResponseBody
        public Result updateCraftTasking(@RequestBody Tasking tasking) {
            int count =taskingService.updateCraftTasking(tasking);
            return Result.build(200,"修改成功:"+count,count);
        }
        @ApiOperation("修改当前设备 【开工/暂停】")
        @PostMapping("/updateMachineState")
        @ResponseBody
        public Result updateMachineState(@RequestBody Tasking tasking) {
            int count =taskingService.updateCraftTasking(tasking);
            return Result.build(200,"修改成功:"+count,count);
        }
        @ApiOperation("修改当前设备 【上线】")
        @PostMapping("/updateTopLine")
        @ResponseBody
        public Result updateTopLine(@RequestBody Tasking tasking) {
            int count =taskingService.updateCraftTasking(tasking);
            return Result.build(200,"修改成功:"+count,count);
        }
    @ApiOperation("修改玻璃状态 【破损】")
    @PostMapping("/damagedTask")
    @ResponseBody
    public Result damagedTask(@RequestBody Tasking tasking) {
        int count = taskingService.damagedTask(tasking);
        return Result.build(200, "修改成功:" + count, count);
    }
        @ApiOperation("修改当前设备 【下线】")
        @PostMapping("/updateDownLine")
        @ResponseBody
        public Result updateDownLine(@RequestBody Tasking tasking) {
            int count =taskingService.updateCraftTasking(tasking);
            return Result.build(200,"修改成功:"+count,count);
        }
    @ApiOperation("修改任务状态 【正在工作】")
    @PostMapping("/startMachineTask")
    @ResponseBody
    public Result startMachineTask(@RequestBody Machine machine) {
        Tasking tasking = taskingService.startMachineTask(machine);
        return Result.build(200, "修改成功:", tasking);
    }
    @ApiOperation("修改任务状态 【失败】")
    @PostMapping("/loseMachineTask")
    @ResponseBody
    public Result loseMachineTask(@RequestBody Machine machine) {
        int count = taskingService.loseMachineTask(machine);
        return Result.build(200, "修改成功:" + count, count);
    }
    @ApiOperation("修改任务状态 【完工】")
    @PostMapping("/finishMachineTask")
    @ResponseBody
    public Result finishMachineTask(@RequestBody Machine machine) {
        int count = taskingService.finishMachineTask(machine);
        return Result.build(200, "修改成功:" + count, count);
    }
    @ApiOperation("修改当前设备 【上线】")
    @PostMapping("/glassTopLineList")
    @ResponseBody
    public Result glassTopLineList(@RequestBody List<Tasking> taskingList) {
        int count = taskingService.glassTopLine(taskingList);
        return Result.build(200, "修改成功:" + count, count);
    }
    @ApiOperation("修改当前设备 【上线】")
    @PostMapping("/glassTopLine")
    @ResponseBody
    public Result glassTopLine(@RequestBody Tasking tasking) {
        int count = taskingService.glassTopLine(tasking);
        return Result.build(200, "修改成功:" + count, count);
    }
    @ApiOperation("修改当前设备 【下线】")
    @PostMapping("/glassDownLine")
    @ResponseBody
    public Result glassDownLine(@RequestBody Tasking tasking) {
        int count = taskingService.glassDownLine(tasking);
        return Result.build(200, "修改成功:" + count, count);
    }
    @ApiOperation("玻璃 【下线】")
    @PostMapping("/glassAgainTopLine")
    @ResponseBody
    public Result glassAgainTopLine(@RequestBody Tasking tasking) {
        int count = taskingService.stopTasking(tasking);
        return Result.build(200, "修改成功:" + count, count);
    }
    @ApiOperation("查询【线下】玻璃 ")
    @PostMapping("/selectGlassDownLine")
    @ResponseBody
    public Result selectGlassDownLine() {
        List<Tasking> downLineTask = taskingService.findDownLineTask();
        return Result.build(200, "查询成功:", downLineTask);
    }
    @ApiOperation("删除【线下】玻璃 ")
    @PostMapping("/deleteGlassDownLine")
    @ResponseBody
    public Result deleteGlassDownLine() {
        int count = taskingService.deleteGlassDownLine();
        return Result.build(200, "清除成功:"+count, count);
    }
    @ApiOperation("提交 扫码报工 ")
    @PostMapping("/scanReport")
    @ResponseBody
    public Result scanReport(@RequestBody Tasking tasking) {
        int count = taskingService.stopTasking(tasking);
        return Result.build(200, "修改成功:" + count, count);
    }
}