package com.mes.md.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.github.yulichang.base.MPJBaseServiceImpl; import com.github.yulichang.wrapper.MPJLambdaWrapper; import com.mes.md.entity.*; import com.mes.md.mapper.PrimitiveTaskMapper; import com.mes.md.service.KBBTJPDrawingBPService; import com.mes.md.service.LineConfigurationService; import com.mes.md.service.PrimitiveTaskService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.Date; import java.util.List; /** *

* 原始任务表 服务实现类 *

* * @author wu * @since 2024-08-28 */ @Service public class PrimitiveTaskServiceImpl extends MPJBaseServiceImpl implements PrimitiveTaskService { @Autowired LineConfigurationService lineConfigurationService; @Autowired KBBTJPDrawingBPService kBBTJPDrawingBPService; /** *查询标准未领取的任务 * @return */ @Override public List findPrimitiveTaskNotFinish(){ return baseMapper.selectList(new QueryWrapper().lambda() .eq(PrimitiveTask::getIsWorking,0) .eq(PrimitiveTask::getTaskType,"标准") .orderByAsc(PrimitiveTask::getCreateTime) .orderByAsc(PrimitiveTask::getTaskSequence)); } /** *查询标准此线路已领取的任务 * @return */ @Override public List findPrimitiveTasking(Machine machine,Long line){ return baseMapper.selectList(new MPJLambdaWrapper() .eq(PrimitiveTask::getIsWorking,1) .eq(PrimitiveTask::getGetLine,line) .eq(PrimitiveTask::getTaskType,"标准") .orderByAsc(PrimitiveTask::getBeginTime)); } /** * 标准:领取任务 /结束任务 * @return */ @Override public int startOrStopPrimitiveTasking(PrimitiveTask primitiveTask){ if (primitiveTask.getIsWorking()==1){//领取 return kBBTJPDrawingBPService.receiveKBBTJPDrawingBP(primitiveTask.getId(),primitiveTask.getGetLine()); }else if (primitiveTask.getIsWorking()==2){//完工 PrimitiveTask thisPrimitiveTask=baseMapper.selectById(primitiveTask); thisPrimitiveTask.setIsWorking(primitiveTask.getIsWorking()); thisPrimitiveTask.setEndTime(new Date()); return baseMapper.updateById(thisPrimitiveTask); } return 0; } @Override public boolean updateReportCount(String scanId) { //更新报工数量 UpdateWrapper wrapper = new UpdateWrapper<>(); wrapper.eq("scan_id", scanId) .set("report_count",1); return update(wrapper); } @Override public boolean updatePrimitiveTask(PrimitiveTask task) { //手动报工更改数量 UpdateWrapper wrapper = new UpdateWrapper<>(); wrapper.eq("batch_number", task.getBatchNumber()) .set("report_count", task.getReportCount()); return update(wrapper); } @Override public List selectPrimitiveTask(PrimitiveTask task) { //查询报工数据 return list(new QueryWrapper<>(task)) ; } //客户表格转 我们的任务表 @Override public Tasking convertListTasking(PrimitiveTask primitiveTask, Long LineConfigurationId) { try { Tasking tasking=new Tasking(); tasking.setLineConfigurationId(LineConfigurationId); tasking.setState("线上"); tasking.setWorkState("等待"); tasking.setGlassState("正常"); tasking.setScanId(primitiveTask.getScanId()); tasking.setProgramId(primitiveTask.getProgramId()); tasking.setBatchNumber(primitiveTask.getBatchNumber()==null?"":primitiveTask.getBatchNumber()); tasking.setTaskType(primitiveTask.getTaskType()); tasking.setLength(primitiveTask.getLength()); tasking.setWidth(primitiveTask.getWidth()); tasking.setThickness(primitiveTask.getThickness()); tasking.setIsMarking((primitiveTask.getDrawingMarking()==null||primitiveTask.getDrawingMarking().isEmpty())?0:1); tasking.setDrawingMarking(primitiveTask.getDrawingMarking()); tasking.setIsSilkScreen(((primitiveTask.getSilkScreenX()==null||primitiveTask.getSilkScreenY()==null||primitiveTask.getSilkScreenX()==0||primitiveTask.getSilkScreenY()==0)?1:0)); tasking.setSilkScreenX(primitiveTask.getSilkScreenX()==null?0:primitiveTask.getSilkScreenX()); tasking.setSilkScreenY(primitiveTask.getSilkScreenY()==null?0:primitiveTask.getSilkScreenY()); tasking.setTaskSequence(primitiveTask.getTaskSequence()); tasking.setTaskQuantity(primitiveTask.getTaskQuantity()); tasking.setR_1_1(primitiveTask.getR_1_1()==null?0:primitiveTask.getR_1_1()); tasking.setR_1_2(primitiveTask.getR_1_2()==null?0:primitiveTask.getR_1_2()); tasking.setR_2_1(primitiveTask.getR_2_1()==null?0:primitiveTask.getR_2_1()); tasking.setR_2_2(primitiveTask.getR_2_2()==null?0:primitiveTask.getR_2_2()); tasking.setR_3_1(primitiveTask.getR_3_1()==null?0:primitiveTask.getR_3_1()); tasking.setR_3_2(primitiveTask.getR_3_2()==null?0:primitiveTask.getR_3_2()); tasking.setR_4_1(primitiveTask.getR_4_1()==null?0:primitiveTask.getR_4_1()); tasking.setR_4_2(primitiveTask.getR_4_2()==null?0:primitiveTask.getR_4_2()); return tasking; }catch (Exception e) { return null; } } }