|
|
|
@ -6,6 +6,7 @@ import com.foreverwin.mesnac.common.model.InspectionTask;
|
|
|
|
|
import com.foreverwin.mesnac.common.model.InspectionTaskDetail;
|
|
|
|
|
import com.foreverwin.mesnac.common.service.InspectionTaskDetailService;
|
|
|
|
|
import com.foreverwin.mesnac.common.service.InspectionTaskService;
|
|
|
|
|
import com.foreverwin.mesnac.common.util.DateUtil;
|
|
|
|
|
import com.foreverwin.mesnac.common.util.StringUtil;
|
|
|
|
|
import com.foreverwin.mesnac.quality.dto.InspectionTaskManageRequest;
|
|
|
|
|
import com.foreverwin.mesnac.quality.mapper.InspectionTaskManageMapper;
|
|
|
|
@ -53,10 +54,15 @@ public class InspectionTaskManageServiceImpl implements InspectionTaskManageServ
|
|
|
|
|
|
|
|
|
|
//查询检验项目
|
|
|
|
|
List<InspectionTaskManageDetail> inspectionItemDetailList = this.getInspectionTaskDetail(taskBo);
|
|
|
|
|
if (!Constants.INSPECTION_TASK_STATUS_NEW.equals(inspectionTaskManage.getStatus())) {
|
|
|
|
|
inspectionTaskManage.setInspectionTaskDetailList(inspectionItemDetailList);
|
|
|
|
|
return inspectionTaskManage;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (inspectionItemDetailList == null || inspectionItemDetailList.size() <= 0) {
|
|
|
|
|
inspectionItemDetailList = this.getInspectionItemDetail(inspectionItemBo);
|
|
|
|
|
if (inspectionItemDetailList == null || inspectionItemDetailList.size() <= 0) {
|
|
|
|
|
throw BusinessException.build("没有找到检验项目检验参数!");
|
|
|
|
|
return inspectionTaskManage;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
List<InspectionTaskDetail> taskDetailList = new ArrayList<>();
|
|
|
|
@ -82,11 +88,10 @@ public class InspectionTaskManageServiceImpl implements InspectionTaskManageServ
|
|
|
|
|
if (taskDetailList != null && taskDetailList.size() > 0) {
|
|
|
|
|
inspectionTaskDetailService.saveBatch(taskDetailList);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
inspectionItemDetailList = this.getInspectionTaskDetail(taskBo);
|
|
|
|
|
}
|
|
|
|
|
inspectionTaskManage.setInspectionTaskDetailList(inspectionItemDetailList);
|
|
|
|
|
|
|
|
|
|
inspectionTaskManage.setInspectionTaskDetailList(inspectionItemDetailList);
|
|
|
|
|
return inspectionTaskManage;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -116,8 +121,8 @@ public class InspectionTaskManageServiceImpl implements InspectionTaskManageServ
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
List<InspectionTaskManageDetail> inspectionItemDetailList = this.getInspectionTaskDetail(HandleEnum.INSPECTION_TASK.getHandle(taskNo));
|
|
|
|
|
if (inspectionItemDetailList != null || inspectionItemDetailList.size() > 0) {
|
|
|
|
|
throw BusinessException.build("检验任务:"+taskNo+"有检验项目,不允许执行合格操作");
|
|
|
|
|
if (inspectionItemDetailList != null && inspectionItemDetailList.size() > 0) {
|
|
|
|
|
throw BusinessException.build("检验任务【"+taskNo+"】有检验项目,不允许执行合格操作");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -139,56 +144,74 @@ public class InspectionTaskManageServiceImpl implements InspectionTaskManageServ
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void saveInspectionTaskDetail(String site, String user, InspectionTaskManage inspectionTaskManage) {
|
|
|
|
|
List<InspectionTaskManageDetail> taskDetailList = inspectionTaskManage.getInspectionTaskDetailList();
|
|
|
|
|
if (taskDetailList == null || taskDetailList.size() <= 0) {
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
LocalDateTime dateTime = LocalDateTime.now();
|
|
|
|
|
String taskNo = inspectionTaskManage.getTaskNo();
|
|
|
|
|
String type = inspectionTaskManage.getOperationType();
|
|
|
|
|
|
|
|
|
|
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
|
List<InspectionTaskDetail> inspectionTaskDetailList = new ArrayList<>();
|
|
|
|
|
//修改明细数据
|
|
|
|
|
for (InspectionTaskManageDetail manageDetail : taskDetailList) {
|
|
|
|
|
String isRequired = manageDetail.getIsRequired();
|
|
|
|
|
String paramNo = manageDetail.getParamNo();
|
|
|
|
|
String checkValues = manageDetail.getCheckValues();
|
|
|
|
|
if ("Y".equals(isRequired) && StringUtil.isBlank(checkValues) && "SUBMIT".equals(type)) {
|
|
|
|
|
throw BusinessException.build("检验项目【" +paramNo+"】值必输!");
|
|
|
|
|
}
|
|
|
|
|
List<InspectionTaskManageDetail> taskDetailList = inspectionTaskManage.getInspectionTaskDetailList();
|
|
|
|
|
if (taskDetailList != null && taskDetailList.size() > 0) {
|
|
|
|
|
List<InspectionTaskDetail> inspectionTaskDetailList = new ArrayList<>();
|
|
|
|
|
|
|
|
|
|
//修改明细数据
|
|
|
|
|
for (InspectionTaskManageDetail manageDetail : taskDetailList) {
|
|
|
|
|
String isRequired = manageDetail.getIsRequired();
|
|
|
|
|
String paramNo = manageDetail.getParamNo();
|
|
|
|
|
String checkValues = manageDetail.getCheckValues();
|
|
|
|
|
if ("Y".equals(isRequired) && StringUtil.isBlank(checkValues) && "SUBMIT".equals(type)) {
|
|
|
|
|
throw BusinessException.build("检验项目【" + paramNo + "】值必输!");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
InspectionTaskDetail taskDetail = new InspectionTaskDetail();
|
|
|
|
|
taskDetail.setHandle(manageDetail.getHandle());
|
|
|
|
|
taskDetail.setCheckValues(checkValues);
|
|
|
|
|
taskDetail.setResult(manageDetail.getResult());
|
|
|
|
|
taskDetail.setRemark(manageDetail.getRemark());
|
|
|
|
|
taskDetail.setCheckUser(user);
|
|
|
|
|
taskDetail.setCheckDate(dateTime);
|
|
|
|
|
inspectionTaskDetailList.add(taskDetail);
|
|
|
|
|
}
|
|
|
|
|
InspectionTaskDetail taskDetail = new InspectionTaskDetail();
|
|
|
|
|
taskDetail.setHandle(manageDetail.getHandle());
|
|
|
|
|
taskDetail.setCheckValues(checkValues);
|
|
|
|
|
taskDetail.setResult(manageDetail.getResult());
|
|
|
|
|
taskDetail.setRemark(manageDetail.getRemark());
|
|
|
|
|
taskDetail.setCheckUser(user);
|
|
|
|
|
taskDetail.setCheckDate(dateTime);
|
|
|
|
|
inspectionTaskDetailList.add(taskDetail);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (inspectionTaskDetailList != null && inspectionTaskDetailList.size() > 0) {
|
|
|
|
|
inspectionTaskDetailService.updateBatchById(inspectionTaskDetailList);
|
|
|
|
|
if (inspectionTaskDetailList != null && inspectionTaskDetailList.size() > 0) {
|
|
|
|
|
inspectionTaskDetailService.updateBatchById(inspectionTaskDetailList);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
|
String result = inspectionTaskManage.getResult();
|
|
|
|
|
String taskNo = inspectionTaskManage.getTaskNo();
|
|
|
|
|
//修改主表数据
|
|
|
|
|
InspectionTask inspectionTaskModel = inspectionTaskService.getInspectionTaskByTaskNo(site, taskNo);
|
|
|
|
|
if (inspectionTaskModel == null) {
|
|
|
|
|
throw BusinessException.build("检验任务【" +taskNo+ "】不存在!");
|
|
|
|
|
}
|
|
|
|
|
String status = inspectionTaskModel.getStatus();
|
|
|
|
|
String category = inspectionTaskModel.getCategory();
|
|
|
|
|
if (!Constants.INSPECTION_TASK_STATUS_NEW.equals(status) && !Constants.INSPECTION_TASK_STATUS_DOING.equals(status)) {
|
|
|
|
|
throw BusinessException.build("检验任务【" +taskNo+ "】不是【新建|检验中】,不允许操作!");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
inspectionTaskModel.setStatus("SAVE".equals(type) ? Constants.INSPECTION_TASK_STATUS_DOING : Constants.INSPECTION_TASK_STATUS_COMPLETE);
|
|
|
|
|
inspectionTaskModel.setResult(inspectionTaskManage.getResult());
|
|
|
|
|
inspectionTaskModel.setResult(result);
|
|
|
|
|
inspectionTaskModel.setComments(inspectionTaskManage.getComments());
|
|
|
|
|
inspectionTaskModel.setModifyUser(user);
|
|
|
|
|
inspectionTaskModel.setModifiedDateTime(dateTime);
|
|
|
|
|
inspectionTaskService.updateById(inspectionTaskModel);
|
|
|
|
|
|
|
|
|
|
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
|
//如果专检不合格,生产新的检验任务
|
|
|
|
|
if (!Constants.INSPECTION_TYPE_P.equals(category) || !"NG".equals(result) || !"SUBMIT".equals(type)) {
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//任务主表
|
|
|
|
|
InspectionTask newInspectionTask = new InspectionTask();
|
|
|
|
|
BeanUtils.copyProperties(inspectionTaskModel, newInspectionTask);
|
|
|
|
|
String newTaskNo = "H_" + DateUtil.getTimeString();
|
|
|
|
|
String handle = HandleEnum.INSPECTION_TASK.getHandle(site, newTaskNo);
|
|
|
|
|
newInspectionTask.setHandle(handle);
|
|
|
|
|
newInspectionTask.setTaskNo(taskNo);
|
|
|
|
|
newInspectionTask.setStatus(Constants.INSPECTION_TASK_STATUS_NEW);
|
|
|
|
|
newInspectionTask.setResult(null);
|
|
|
|
|
newInspectionTask.setComments(null);
|
|
|
|
|
inspectionTaskService.save(newInspectionTask);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|