jevononlie 5 months ago
commit 9f8eef56a1

@ -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);
}
}
}
}

Loading…
Cancel
Save