|
|
|
@ -28,6 +28,7 @@ import com.chanko.yunxi.mes.module.biz.manager.CrossOrderManager;
|
|
|
|
|
import com.chanko.yunxi.mes.module.biz.service.serialnumber.SerialNumberService;
|
|
|
|
|
import com.chanko.yunxi.mes.module.system.dal.dataobject.user.AdminUserDO;
|
|
|
|
|
import com.chanko.yunxi.mes.module.system.service.user.AdminUserService;
|
|
|
|
|
import com.sun.org.apache.xpath.internal.operations.Bool;
|
|
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
import org.springframework.util.StringUtils;
|
|
|
|
@ -243,24 +244,24 @@ public class TaskDispatchServiceImpl implements TaskDispatchService {
|
|
|
|
|
@Override
|
|
|
|
|
public PageResult<TaskDispatchDetailDO> getTaskDispatchDetailPage(TaskDispatchDetailPageReqVO pageReqVO) {
|
|
|
|
|
|
|
|
|
|
SystemParametersDO systemParametersDO = systemParametersMapper.selectOne("code", SystemParmetersEnum.OVERTASK_CENTER_LIST.getDescription());
|
|
|
|
|
|
|
|
|
|
PageResult<TaskDispatchDetailDO> result = taskDispatchDetailMapper.selectPage(pageReqVO);
|
|
|
|
|
|
|
|
|
|
for(TaskDispatchDetailDO item : result.getList()){
|
|
|
|
|
if(systemParametersDO == null){
|
|
|
|
|
item.setAllowOver(false);
|
|
|
|
|
}else{
|
|
|
|
|
if(!StringUtils.isEmpty(systemParametersDO.getCurrentValue())
|
|
|
|
|
&& Arrays.stream(systemParametersDO.getCurrentValue().split(",")).filter(map -> map.equals(item.getWorkshopCode())).count()>0){
|
|
|
|
|
item.setAllowOver(true);
|
|
|
|
|
}else{
|
|
|
|
|
item.setAllowOver(false);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return result;
|
|
|
|
|
// SystemParametersDO systemParametersDO = systemParametersMapper.selectOne("code", SystemParmetersEnum.OVERTASK_CENTER_LIST.getDescription());
|
|
|
|
|
//
|
|
|
|
|
// PageResult<TaskDispatchDetailDO> result = taskDispatchDetailMapper.selectPage(pageReqVO);
|
|
|
|
|
//
|
|
|
|
|
// for(TaskDispatchDetailDO item : result.getList()){
|
|
|
|
|
// if(systemParametersDO == null){
|
|
|
|
|
// item.setAllowOver(false);
|
|
|
|
|
// }else{
|
|
|
|
|
// if(!StringUtils.isEmpty(systemParametersDO.getCurrentValue())
|
|
|
|
|
// && Arrays.stream(systemParametersDO.getCurrentValue().split(",")).filter(map -> map.equals(item.getWorkshopCode())).count()>0){
|
|
|
|
|
// item.setAllowOver(true);
|
|
|
|
|
// }else{
|
|
|
|
|
// item.setAllowOver(false);
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
return taskDispatchDetailMapper.selectPage(pageReqVO);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
@ -310,13 +311,24 @@ public class TaskDispatchServiceImpl implements TaskDispatchService {
|
|
|
|
|
|
|
|
|
|
// 不能超额报工
|
|
|
|
|
if(operate == TaskReportOperateEnum.SUBMIT){
|
|
|
|
|
|
|
|
|
|
SystemParametersDO systemParametersDO = systemParametersMapper.selectOne("code", SystemParmetersEnum.OVERTASK_CENTER_LIST.getDescription());
|
|
|
|
|
boolean allowOver = false;
|
|
|
|
|
|
|
|
|
|
if(systemParametersDO != null && !StringUtils.isEmpty(systemParametersDO.getCurrentValue())
|
|
|
|
|
&& Arrays.stream(systemParametersDO.getCurrentValue().split(",")).filter(map -> map.equals(taskDispatchDetailDO.getWorkshopCode())).count()>0){
|
|
|
|
|
allowOver = true;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
List<TaskReportDO> historyReportList = taskReportMapper.selectList(new LambdaQueryWrapper<TaskReportDO>() {{
|
|
|
|
|
eq(TaskReportDO::getDispatchDetailId, taskDispatchDetailDO.getId())
|
|
|
|
|
.ne(TaskReportDO::getAmount, 0);
|
|
|
|
|
}});
|
|
|
|
|
int historyReportAmount = historyReportList.stream().mapToInt(TaskReportDO::getAmount).sum();
|
|
|
|
|
if(taskDispatchDetailDO.getAmount() < (historyReportAmount + operateReqVO.getAmount())){
|
|
|
|
|
throw exception(TASK_DISPATCH_TASK_REPORT_AMOUNT_EXCESS);
|
|
|
|
|
if(!allowOver) {
|
|
|
|
|
int historyReportAmount = historyReportList.stream().mapToInt(TaskReportDO::getAmount).sum();
|
|
|
|
|
if (taskDispatchDetailDO.getAmount() < (historyReportAmount + operateReqVO.getAmount())) {
|
|
|
|
|
throw exception(TASK_DISPATCH_TASK_REPORT_AMOUNT_EXCESS);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|