|
|
|
@ -28,6 +28,7 @@ import org.springframework.util.StringUtils;
|
|
|
|
|
|
|
|
|
|
import java.util.ArrayList;
|
|
|
|
|
import java.util.List;
|
|
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @Author: xiangming.liao
|
|
|
|
@ -48,21 +49,36 @@ public class BuFirstManageService implements IBuFirstManageService {
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public MesProcessFirstItem insertMesProcessFirstItem(MesProcessFirstItem mesProcessFirstItem) {
|
|
|
|
|
StringBuffer whereStr = new StringBuffer();
|
|
|
|
|
HqlPack.getStringEqualPack(mesProcessFirstItem.getOrganizeCode(), MesExtConstWords.ORGANIZE_CODE, whereStr);
|
|
|
|
|
HqlPack.getStringEqualPack(mesProcessFirstItem.getProcessCode(), MesExtConstWords.PROCESS_CODE, whereStr);
|
|
|
|
|
HqlPack.getStringEqualPack(mesProcessFirstItem.getPartNo(), MesExtConstWords.PART_NO, whereStr);
|
|
|
|
|
HqlPack.getStringEqualPack(mesProcessFirstItem.getCheckMessage(), MesExtConstWords.CHECK_MESSAGE, whereStr);
|
|
|
|
|
HqlPack.getStringEqualPack(mesProcessFirstItem.getCheckStand(), MesExtConstWords.CHECK_STAND, whereStr);
|
|
|
|
|
HqlPack.getStringEqualPack(mesProcessFirstItem.getManageType(), MesExtConstWords.MANAGE_TYPE, whereStr);
|
|
|
|
|
HqlPack.getStringEqualPack(mesProcessFirstItem.getImportanceSafePartNo(), MesExtConstWords.IMPORTANCE_SAFE_PART_NO, whereStr);
|
|
|
|
|
HqlPack.getNumEqualPack(CommonEnumUtil.IS_VAILD.VAILD.getValue(), MesExtConstWords.IS_VALID, whereStr);
|
|
|
|
|
if (mesProcessFirstItemRDao.isExitByHqlWhere(whereStr.toString())) {
|
|
|
|
|
DdlPackBean packBean = DdlPackBean.getDdlPackBean(mesProcessFirstItem.getOrganizeCode());
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(mesProcessFirstItem.getOrganizeCode(), MesExtConstWords.ORGANIZE_CODE, packBean);
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(mesProcessFirstItem.getProcessCode(), MesExtConstWords.PROCESS_CODE, packBean);
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(mesProcessFirstItem.getPartNo(), MesExtConstWords.PART_NO, packBean);
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(mesProcessFirstItem.getCheckMessage(), MesExtConstWords.CHECK_MESSAGE, packBean);
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(mesProcessFirstItem.getCheckStand(), MesExtConstWords.CHECK_STAND, packBean);
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(mesProcessFirstItem.getManageType(), MesExtConstWords.MANAGE_TYPE, packBean);
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(mesProcessFirstItem.getImportanceSafePartNo(), MesExtConstWords.IMPORTANCE_SAFE_PART_NO, packBean);
|
|
|
|
|
List<MesProcessFirstItem> processFirstItemDbList = mesProcessFirstItemRDao.findByHqlWhere(packBean);
|
|
|
|
|
|
|
|
|
|
if (StringUtils.isEmpty(mesProcessFirstItem.getImportanceSafePartNo())) {
|
|
|
|
|
if (!processFirstItemDbList.stream().filter(o -> StringUtils.isEmpty(o.getImportanceSafePartNo())).collect(Collectors.toList()).isEmpty())
|
|
|
|
|
throw ImppExceptionBuilder.newInstance()
|
|
|
|
|
.setSystemID(CommonEnumUtil.SOFT_TYPE.MES.getCode())
|
|
|
|
|
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_EXIT.getCode())
|
|
|
|
|
.setErrorDetail("工序编号【%s】、物料编码【%s】和检测信息【%s】和检测标准【%s】和管理类型【%s】在工序首检项目信息中已存在"
|
|
|
|
|
,mesProcessFirstItem.getProcessCode(), mesProcessFirstItem.getPartNo(), mesProcessFirstItem.getCheckMessage(), mesProcessFirstItem.getCheckStand(), MesExtEnumUtil.Q_MANAGE_MANAGE_TYPE.valueOfDescription(mesProcessFirstItem.getManageType()))
|
|
|
|
|
,mesProcessFirstItem.getProcessCode(), mesProcessFirstItem.getPartNo(),
|
|
|
|
|
mesProcessFirstItem.getCheckMessage(), mesProcessFirstItem.getCheckStand(),
|
|
|
|
|
MesExtEnumUtil.Q_MANAGE_MANAGE_TYPE.valueOfDescription(mesProcessFirstItem.getManageType()))
|
|
|
|
|
.setErrorSolution("请更换新增参数")
|
|
|
|
|
.build();
|
|
|
|
|
} else if(!CollectionUtils.isEmpty(processFirstItemDbList)){
|
|
|
|
|
throw ImppExceptionBuilder.newInstance()
|
|
|
|
|
.setSystemID(CommonEnumUtil.SOFT_TYPE.MES.getCode())
|
|
|
|
|
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_EXIT.getCode())
|
|
|
|
|
.setErrorDetail("工序编号【%s】、物料编码【%s】和检测信息【%s】和检测标准【%s】和管理类型【%s】和重要安全部品【%s】在工序首检项目信息中已存在"
|
|
|
|
|
,mesProcessFirstItem.getProcessCode(), mesProcessFirstItem.getPartNo(),
|
|
|
|
|
mesProcessFirstItem.getCheckMessage(), mesProcessFirstItem.getCheckStand(),
|
|
|
|
|
MesExtEnumUtil.Q_MANAGE_MANAGE_TYPE.valueOfDescription(mesProcessFirstItem.getManageType()),
|
|
|
|
|
mesProcessFirstItem.getImportanceSafePartNo())
|
|
|
|
|
.setErrorSolution("请更换新增参数")
|
|
|
|
|
.build();
|
|
|
|
|
}
|
|
|
|
@ -125,15 +141,7 @@ public class BuFirstManageService implements IBuFirstManageService {
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void updateMesProcessFirstItem(MesProcessFirstItem mesProcessFirstItem, String userName) {
|
|
|
|
|
MesProcessFirstItem processFirstItemDb = mesProcessFirstItemRDao.getById(mesProcessFirstItem.getId());
|
|
|
|
|
|
|
|
|
|
if(processFirstItemDb == null){
|
|
|
|
|
throw ImppExceptionBuilder.newInstance()
|
|
|
|
|
.setSystemID(CommonEnumUtil.SOFT_TYPE.MES.getCode())
|
|
|
|
|
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_EXIT.getCode())
|
|
|
|
|
.setErrorDetail("数据不存在")
|
|
|
|
|
.build();
|
|
|
|
|
}
|
|
|
|
|
MesProcessFirstItem processFirstItemDb = getMesProcessFirstItem(mesProcessFirstItem);
|
|
|
|
|
|
|
|
|
|
DdlPackBean packBean = DdlPackBean.getDdlPackBean(mesProcessFirstItem.getOrganizeCode());
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(mesProcessFirstItem.getProcessCode(), MesExtConstWords.PROCESS_CODE, packBean);
|
|
|
|
@ -142,9 +150,11 @@ public class BuFirstManageService implements IBuFirstManageService {
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(mesProcessFirstItem.getCheckStand(), MesExtConstWords.CHECK_STAND, packBean);
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(mesProcessFirstItem.getManageType(), MesExtConstWords.MANAGE_TYPE, packBean);
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(mesProcessFirstItem.getImportanceSafePartNo(), MesExtConstWords.IMPORTANCE_SAFE_PART_NO, packBean);
|
|
|
|
|
MesProcessFirstItem processFirstItemExist = mesProcessFirstItemRDao.getByProperty(packBean);
|
|
|
|
|
List<MesProcessFirstItem> processFirstItemExistList = mesProcessFirstItemRDao.findByHqlWhere(packBean);
|
|
|
|
|
|
|
|
|
|
if (processFirstItemExist != null && processFirstItemExist.getId().compareTo(processFirstItemDb.getId()) != 0) {
|
|
|
|
|
if (StringUtils.isEmpty(mesProcessFirstItem.getImportanceSafePartNo())) {
|
|
|
|
|
processFirstItemExistList = processFirstItemExistList.stream().filter(o -> StringUtils.isEmpty(o.getImportanceSafePartNo())).collect(Collectors.toList());
|
|
|
|
|
if (!CollectionUtils.isEmpty(processFirstItemExistList) && processFirstItemExistList.get(0).getId().compareTo(processFirstItemDb.getId()) != 0) {
|
|
|
|
|
throw ImppExceptionBuilder.newInstance()
|
|
|
|
|
.setSystemID(CommonEnumUtil.SOFT_TYPE.MES.getCode())
|
|
|
|
|
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_EXIT.getCode())
|
|
|
|
@ -154,6 +164,26 @@ public class BuFirstManageService implements IBuFirstManageService {
|
|
|
|
|
.build();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
} else if (!CollectionUtils.isEmpty(processFirstItemExistList) && processFirstItemExistList.get(0).getId().compareTo(processFirstItemDb.getId()) != 0) {
|
|
|
|
|
throw ImppExceptionBuilder.newInstance()
|
|
|
|
|
.setSystemID(CommonEnumUtil.SOFT_TYPE.MES.getCode())
|
|
|
|
|
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_EXIT.getCode())
|
|
|
|
|
.setErrorDetail("工序编号【%s】、物料编码【%s】和检测信息【%s】和检测标准【%s】和重要安全部品【%s】在工序首检项目信息中已存在"
|
|
|
|
|
,mesProcessFirstItem.getProcessCode(), mesProcessFirstItem.getPartNo(), mesProcessFirstItem.getCheckMessage(), mesProcessFirstItem.getCheckStand(), mesProcessFirstItem.getImportanceSafePartNo())
|
|
|
|
|
.setErrorSolution("请更换修改参数")
|
|
|
|
|
.build();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//if (processFirstItemExist != null && processFirstItemExist.getId().compareTo(processFirstItemDb.getId()) != 0) {
|
|
|
|
|
// throw ImppExceptionBuilder.newInstance()
|
|
|
|
|
// .setSystemID(CommonEnumUtil.SOFT_TYPE.MES.getCode())
|
|
|
|
|
// .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_EXIT.getCode())
|
|
|
|
|
// .setErrorDetail("工序编号【%s】、物料编码【%s】和检测信息【%s】和检测标准【%s】在工序首检项目信息中已存在"
|
|
|
|
|
// ,mesProcessFirstItem.getProcessCode(), mesProcessFirstItem.getPartNo(), mesProcessFirstItem.getCheckMessage(), mesProcessFirstItem.getCheckStand())
|
|
|
|
|
// .setErrorSolution("请更换修改参数")
|
|
|
|
|
// .build();
|
|
|
|
|
//}
|
|
|
|
|
|
|
|
|
|
//上下限值校验
|
|
|
|
|
if ((!StringUtils.isEmpty(mesProcessFirstItem.getUpLimit()) && StringUtils.isEmpty(mesProcessFirstItem.getDownLimit())) ||
|
|
|
|
|
(StringUtils.isEmpty(mesProcessFirstItem.getUpLimit()) && !StringUtils.isEmpty(mesProcessFirstItem.getDownLimit()))){
|
|
|
|
@ -208,6 +238,19 @@ public class BuFirstManageService implements IBuFirstManageService {
|
|
|
|
|
mesProcessFirstItemRDao.save(mesProcessFirstItem);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private MesProcessFirstItem getMesProcessFirstItem(MesProcessFirstItem mesProcessFirstItem) {
|
|
|
|
|
MesProcessFirstItem processFirstItemDb = mesProcessFirstItemRDao.getById(mesProcessFirstItem.getId());
|
|
|
|
|
|
|
|
|
|
if(processFirstItemDb == null){
|
|
|
|
|
throw ImppExceptionBuilder.newInstance()
|
|
|
|
|
.setSystemID(CommonEnumUtil.SOFT_TYPE.MES.getCode())
|
|
|
|
|
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_EXIT.getCode())
|
|
|
|
|
.setErrorDetail("数据不存在")
|
|
|
|
|
.build();
|
|
|
|
|
}
|
|
|
|
|
return processFirstItemDb;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public ListPager<MesProcessFirstItem> queryMesProcessFirstItemByPager(MesProcessFirstItem mesProcessFirstItem, Pager pager) {
|
|
|
|
|
if (mesProcessFirstItem == null) {
|
|
|
|
|