| | |
| | | |
| | | package org.springblade.mdm.flow.service; |
| | | |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper; |
| | | import lombok.AllArgsConstructor; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springblade.core.mp.base.BizServiceImpl; |
| | | import org.springblade.core.tool.utils.Func; |
| | | import org.springblade.mdm.commons.service.ParamService; |
| | | import org.springblade.mdm.flow.entity.TaskDispatch; |
| | | import org.springblade.mdm.flow.mapper.TaskDispatchMapper; |
| | | import org.springblade.mdm.flow.vo.TaskAssignVO; |
| | | import org.springblade.mdm.program.entity.DrawingNos; |
| | | import org.springblade.mdm.program.mapper.DrawingNosMapper; |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | |
| | | |
| | | import java.time.LocalDateTime; |
| | | import java.util.List; |
| | | import java.util.Optional; |
| | | |
| | | /** |
| | | * 任务派工数据 处理服务 |
| | |
| | | */ |
| | | @Slf4j |
| | | @Service |
| | | @AllArgsConstructor |
| | | public class TaskDispatchService extends BizServiceImpl<TaskDispatchMapper, TaskDispatch> { |
| | | @Autowired |
| | | private ParamService paramService; |
| | | @Autowired |
| | | private DrawingNosMapper drawingNosMapper; |
| | | |
| | | |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public TaskDispatch saveTask(TaskAssignVO startVO,boolean isDup) { |
| | |
| | | } |
| | | this.save(taskDispatch); |
| | | |
| | | addDrawingNos(taskDispatch.getDrawingNo()); |
| | | return taskDispatch; |
| | | } |
| | | |
| | | /** |
| | | * 加u人下拉数据 |
| | | * @param drawingNo |
| | | */ |
| | | public void addDrawingNos(String drawingNo){ |
| | | DrawingNos data = drawingNosMapper.selectById(drawingNo); |
| | | if(data == null){ |
| | | data = new DrawingNos(); |
| | | data.setDrawingNo(drawingNo); |
| | | try { |
| | | drawingNosMapper.insert(data); |
| | | }catch (Exception e){ |
| | | log.error("加入零组件号下拉数据错误"); |
| | | } |
| | | } |
| | | } |
| | | /* |
| | | public void updateSuccess(long id, String instId) { |
| | |
| | | return false; |
| | | } |
| | | |
| | | int taskDupDays = Func.toInt(paramService.taskDuplateCheckDays()); |
| | | int taskDupDays = paramService.taskDuplicateCheckDays(); |
| | | LocalDateTime checkStartDate = LocalDateTime.now().minusDays(taskDupDays); |
| | | LambdaQueryChainWrapper<TaskDispatch> q = lambdaQuery().eq(TaskDispatch::getDrawingNo,startVO.getDrawingNo()) |
| | | .eq(TaskDispatch::getProcessNo,startVO.getProcessNo()) |
| | |
| | | |
| | | return cnt > 0; |
| | | } |
| | | @Transactional(readOnly = true) |
| | | public List<String> drawingNoSeletDropList(String drawingNo){ |
| | | return drawingNosMapper.selectDropDownList(drawingNo); |
| | | } |
| | | |
| | | @Transactional |
| | | public void resetDrawingNos() { |
| | | drawingNosMapper.delete(Wrappers.emptyWrapper());// |
| | | List<String> dnoList = baseMapper.distinctAllDrawingNo(); |
| | | for(String dno : dnoList){ |
| | | DrawingNos drawingNos = new DrawingNos(); |
| | | drawingNos.setDrawingNo(dno); |
| | | drawingNosMapper.insert(drawingNos); |
| | | } |
| | | |
| | | } |
| | | |
| | | /** |
| | | * 清理过期的异常任务计划 |
| | | */ |
| | | @Transactional |
| | | public void cleanExpiredExceptionTask() { |
| | | int expireDays = paramService.getTaskExpireDays(); |
| | | LocalDateTime expiredTime = LocalDateTime.now().minusDays(expireDays); |
| | | baseMapper.deleteExpiredExceptionTasks(expiredTime); |
| | | } |
| | | |
| | | /** |
| | | * 根据mes唯一标识获取派工数据 |
| | | * @param mesTaskId |
| | | * @return |
| | | */ |
| | | public TaskDispatch getByMesTaskId(String mesTaskId) { |
| | | Optional<TaskDispatch> opt = lambdaQuery().eq(TaskDispatch::getMesTaskId, mesTaskId).oneOpt(); |
| | | return opt.orElse(null); |
| | | } |
| | | |
| | | public TaskDispatch getByProgramNo(String programNo) { |
| | | return lambdaQuery().eq(TaskDispatch::getProgramNo, programNo).one(); |
| | | } |
| | | } |