【报工更新生产计划状态】

dev
siontion 3 months ago
parent 6c3bef3a71
commit b87d7e7bea

@ -13,10 +13,12 @@ import com.chanko.yunxi.mes.framework.operatelog.core.service.OperateLogFramewor
import com.chanko.yunxi.mes.framework.security.core.util.SecurityFrameworkUtils; import com.chanko.yunxi.mes.framework.security.core.util.SecurityFrameworkUtils;
import com.chanko.yunxi.mes.module.biz.controller.admin.taskdispatch.vo.*; import com.chanko.yunxi.mes.module.biz.controller.admin.taskdispatch.vo.*;
import com.chanko.yunxi.mes.module.biz.dal.dataobject.material.MaterialDO; import com.chanko.yunxi.mes.module.biz.dal.dataobject.material.MaterialDO;
import com.chanko.yunxi.mes.module.biz.dal.dataobject.plan.PlanDO;
import com.chanko.yunxi.mes.module.biz.dal.dataobject.systemparameters.SystemParametersDO; import com.chanko.yunxi.mes.module.biz.dal.dataobject.systemparameters.SystemParametersDO;
import com.chanko.yunxi.mes.module.biz.dal.dataobject.taskdispatch.TaskDispatchDetailOwnerDO; import com.chanko.yunxi.mes.module.biz.dal.dataobject.taskdispatch.TaskDispatchDetailOwnerDO;
import com.chanko.yunxi.mes.module.biz.dal.dataobject.taskdispatchdetailratio.TaskDispatchDetailRatioDO; import com.chanko.yunxi.mes.module.biz.dal.dataobject.taskdispatchdetailratio.TaskDispatchDetailRatioDO;
import com.chanko.yunxi.mes.module.biz.dal.dataobject.workshop.WorkshopDO; import com.chanko.yunxi.mes.module.biz.dal.dataobject.workshop.WorkshopDO;
import com.chanko.yunxi.mes.module.biz.dal.mysql.plan.PlanMapper;
import com.chanko.yunxi.mes.module.biz.dal.mysql.systemparameters.SystemParametersMapper; import com.chanko.yunxi.mes.module.biz.dal.mysql.systemparameters.SystemParametersMapper;
import com.chanko.yunxi.mes.module.biz.dal.mysql.taskdispatch.TaskDispatchDetailMapper; import com.chanko.yunxi.mes.module.biz.dal.mysql.taskdispatch.TaskDispatchDetailMapper;
import com.chanko.yunxi.mes.module.biz.dal.mysql.taskdispatch.TaskDispatchDetailOwnerMapper; import com.chanko.yunxi.mes.module.biz.dal.mysql.taskdispatch.TaskDispatchDetailOwnerMapper;
@ -94,6 +96,9 @@ public class TaskDispatchServiceImpl implements TaskDispatchService {
@Resource @Resource
private TaskDispatchDetailRatioMapper taskDispatchDetailRatioMapper; private TaskDispatchDetailRatioMapper taskDispatchDetailRatioMapper;
@Resource
private PlanMapper planMapper;
@Resource @Resource
private HttpServletRequest request; private HttpServletRequest request;
@ -419,6 +424,11 @@ public class TaskDispatchServiceImpl implements TaskDispatchService {
eq(TaskDispatchDetailOwnerDO::getId, taskDispatchDetailDO.getDetailOwnerId()) eq(TaskDispatchDetailOwnerDO::getId, taskDispatchDetailDO.getDetailOwnerId())
.last("LIMIT 1 FOR UPDATE"); .last("LIMIT 1 FOR UPDATE");
}}); }});
// 更新计划状态
PlanDO planDO =planMapper.selectById(taskDispatchDO.getPlanId());
planDO.setStatus(ProjectPlanStatusEnum.PRODUCING.getCode());
planMapper.updateById(planDO);
BigDecimal avgWorkTime = operateReqVO.getWorkTime(); BigDecimal avgWorkTime = operateReqVO.getWorkTime();
Arrays.stream(taskDispatchDetailDO.getOwnerIds().split(",")).forEach(oid->{ Arrays.stream(taskDispatchDetailDO.getOwnerIds().split(",")).forEach(oid->{
@ -498,10 +508,18 @@ public class TaskDispatchServiceImpl implements TaskDispatchService {
LocalDateTime now = LocalDateTime.now(); LocalDateTime now = LocalDateTime.now();
operateReqVO.getDispatchIds().forEach(vid ->{ operateReqVO.getDispatchIds().forEach(vid ->{
TaskDispatchDetailDO taskDispatchDetailDO = taskDispatchDetailMapper.selectOne(new LambdaQueryWrapperX<TaskDispatchDetailDO>(){{ TaskDispatchDetailDO taskDispatchDetailDO = taskDispatchDetailMapper.selectOne(new LambdaQueryWrapperX<TaskDispatchDetailDO>(){{
eq(TaskDispatchDetailDO::getId, vid) eq(TaskDispatchDetailDO::getId, vid)
.last("LIMIT 1 FOR UPDATE"); .last("LIMIT 1 FOR UPDATE");
}}); }});
// 更新计划状态
TaskDispatchDO taskDispatchDO = taskDispatchMapper.selectById(taskDispatchDetailDO.getDispatchId());
PlanDO planDO =planMapper.selectById(taskDispatchDO.getPlanId());
planDO.setStatus(ProjectPlanStatusEnum.PRODUCING.getCode());
planMapper.updateById(planDO);
TaskDispatchDetailOwnerDO taskDispatchDetailOwnerDO = taskDispatchDetailOwnerMapper.selectOne(new LambdaQueryWrapperX<TaskDispatchDetailOwnerDO>(){{ TaskDispatchDetailOwnerDO taskDispatchDetailOwnerDO = taskDispatchDetailOwnerMapper.selectOne(new LambdaQueryWrapperX<TaskDispatchDetailOwnerDO>(){{
eq(TaskDispatchDetailOwnerDO::getId, taskDispatchDetailDO.getDetailOwnerId()) eq(TaskDispatchDetailOwnerDO::getId, taskDispatchDetailDO.getDetailOwnerId())
.last("LIMIT 1 FOR UPDATE"); .last("LIMIT 1 FOR UPDATE");

Loading…
Cancel
Save