|
|
@ -1,14 +1,16 @@
|
|
|
|
package cn.estsh.i3plus.ext.mes.apiservice.serviceimpl.base;
|
|
|
|
package cn.estsh.i3plus.ext.mes.apiservice.serviceimpl.base;
|
|
|
|
|
|
|
|
|
|
|
|
import cn.estsh.i3plus.ext.mes.api.base.IMesCustomerCarModelService;
|
|
|
|
|
|
|
|
import cn.estsh.i3plus.ext.mes.api.base.IMesCustomerPartService;
|
|
|
|
import cn.estsh.i3plus.ext.mes.api.base.IMesCustomerPartService;
|
|
|
|
import cn.estsh.i3plus.ext.mes.api.base.IMesCustomerService;
|
|
|
|
import cn.estsh.i3plus.platform.common.exception.ImppExceptionEnum;
|
|
|
|
import cn.estsh.i3plus.pojo.base.bean.DdlPackBean;
|
|
|
|
import cn.estsh.i3plus.pojo.base.bean.DdlPackBean;
|
|
|
|
import cn.estsh.i3plus.pojo.base.bean.ListPager;
|
|
|
|
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
|
|
|
|
import cn.estsh.i3plus.pojo.base.common.Pager;
|
|
|
|
|
|
|
|
import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack;
|
|
|
|
import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack;
|
|
|
|
import cn.estsh.i3plus.pojo.mes.bean.*;
|
|
|
|
import cn.estsh.i3plus.pojo.mes.bean.MesCarSeriesLoosePart;
|
|
|
|
|
|
|
|
import cn.estsh.i3plus.pojo.mes.bean.MesCustomerCarModelDetail;
|
|
|
|
|
|
|
|
import cn.estsh.i3plus.pojo.mes.bean.MesCustomerPart;
|
|
|
|
import cn.estsh.i3plus.pojo.mes.repository.MesCustomerCarModelDetailRepository;
|
|
|
|
import cn.estsh.i3plus.pojo.mes.repository.MesCustomerCarModelDetailRepository;
|
|
|
|
|
|
|
|
import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder;
|
|
|
|
|
|
|
|
import cn.estsh.impp.framework.boot.util.ValidatorBean;
|
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
|
import org.apache.commons.collections.CollectionUtils;
|
|
|
|
import org.apache.commons.collections.CollectionUtils;
|
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
@ -38,18 +40,63 @@ public class MesCustomerPartService extends BaseMesService<MesCustomerPart> impl
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
protected void onInsertBean(MesCustomerPart item) {
|
|
|
|
|
|
|
|
// 数据校验
|
|
|
|
|
|
|
|
ValidatorBean.checkNotNull(item.getCustomerCode(), "客户代码不能为空");
|
|
|
|
|
|
|
|
ValidatorBean.checkNotNull(item.getPartNo(), "零件号不能为空");
|
|
|
|
|
|
|
|
ValidatorBean.checkNotNull(item.getCustomerPartNo(), "客户零件号不能为空");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
DdlPackBean cellBinPackBean = DdlPackBean.getDdlPackBean(item.getOrganizeCode());
|
|
|
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(item.getCustomerCode(), "customerCode", cellBinPackBean);
|
|
|
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(item.getPartNo(), "partNo", cellBinPackBean);
|
|
|
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(item.getCustomerPartNo(), "customerPartNo", cellBinPackBean);
|
|
|
|
|
|
|
|
boolean flg = baseRDao.isExitByHql(cellBinPackBean);
|
|
|
|
|
|
|
|
if (flg) {
|
|
|
|
|
|
|
|
throw ImppExceptionBuilder.newInstance()
|
|
|
|
|
|
|
|
.setSystemID(CommonEnumUtil.SOFT_TYPE.MES.getCode())
|
|
|
|
|
|
|
|
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode())
|
|
|
|
|
|
|
|
.setErrorDetail("【%s】客户零件号【%s】零件号【%s】客户代码已经存在,请检查数据", item.getCustomerPartNo(), item.getPartNo(), item.getCustomerCode())
|
|
|
|
|
|
|
|
.build();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
protected void onUpdateBean(MesCarSeriesLoosePart item) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 数据校验
|
|
|
|
|
|
|
|
ValidatorBean.checkNotNull(item.getCustomerCode(), "客户代码不能为空");
|
|
|
|
|
|
|
|
ValidatorBean.checkNotNull(item.getPartNo(), "零件号不能为空");
|
|
|
|
|
|
|
|
ValidatorBean.checkNotNull(item.getCustomerPartNo(), "客户零件号不能为空");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
DdlPackBean cellBinPackBean = DdlPackBean.getDdlPackBean(item.getOrganizeCode());
|
|
|
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(item.getCustomerCode(), "customerCode", cellBinPackBean);
|
|
|
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(item.getPartNo(), "partNo", cellBinPackBean);
|
|
|
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(item.getCustomerPartNo(), "customerPartNo", cellBinPackBean);
|
|
|
|
|
|
|
|
DdlPreparedPack.getNumNOEqualPack(item.getId(), "id", cellBinPackBean);
|
|
|
|
|
|
|
|
boolean flg = baseRDao.isExitByHql(cellBinPackBean);
|
|
|
|
|
|
|
|
if (flg) {
|
|
|
|
|
|
|
|
throw ImppExceptionBuilder.newInstance()
|
|
|
|
|
|
|
|
.setSystemID(CommonEnumUtil.SOFT_TYPE.MES.getCode())
|
|
|
|
|
|
|
|
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode())
|
|
|
|
|
|
|
|
.setErrorDetail("【%s】客户零件号【%s】零件号【%s】客户代码已经存在,请检查数据", item.getCustomerPartNo(), item.getPartNo(), item.getCustomerCode())
|
|
|
|
|
|
|
|
.build();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
@Override
|
|
|
|
public List<MesCustomerPart> findMesCustomerPart(MesCustomerCarModelDetail mesPartProdGroupDetail) {
|
|
|
|
public List<MesCustomerPart> findMesCustomerPart(MesCustomerCarModelDetail mesPartProdGroupDetail) {
|
|
|
|
DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(mesPartProdGroupDetail.getOrganizeCode());
|
|
|
|
DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(mesPartProdGroupDetail.getOrganizeCode());
|
|
|
|
DdlPreparedPack.getStringEqualPack(mesPartProdGroupDetail.getPartNo(),"partNo",ddlPackBean);
|
|
|
|
DdlPreparedPack.getStringEqualPack(mesPartProdGroupDetail.getPartNo(), "partNo", ddlPackBean);
|
|
|
|
DdlPreparedPack.getStringEqualPack(mesPartProdGroupDetail.getCarModelCode(),"carModelCode",ddlPackBean);
|
|
|
|
DdlPreparedPack.getStringEqualPack(mesPartProdGroupDetail.getCarModelCode(), "carModelCode", ddlPackBean);
|
|
|
|
List<MesCustomerCarModelDetail> mesCustomerCarModelDetails = mesCustomerCarModelDetailRDao.findByHqlWhere(ddlPackBean);
|
|
|
|
List<MesCustomerCarModelDetail> mesCustomerCarModelDetails = mesCustomerCarModelDetailRDao.findByHqlWhere(ddlPackBean);
|
|
|
|
if(CollectionUtils.isEmpty(mesCustomerCarModelDetails)){
|
|
|
|
if (CollectionUtils.isEmpty(mesCustomerCarModelDetails)) {
|
|
|
|
return new ArrayList<>();
|
|
|
|
return new ArrayList<>();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
List<String> customerPartNoList = mesCustomerCarModelDetails.stream().map(MesCustomerCarModelDetail::getCustomerPartNo).collect(Collectors.toList());
|
|
|
|
List<String> customerPartNoList = mesCustomerCarModelDetails.stream().map(MesCustomerCarModelDetail::getCustomerPartNo).collect(Collectors.toList());
|
|
|
|
ddlPackBean = DdlPackBean.getDdlPackBean(mesPartProdGroupDetail.getOrganizeCode());
|
|
|
|
ddlPackBean = DdlPackBean.getDdlPackBean(mesPartProdGroupDetail.getOrganizeCode());
|
|
|
|
DdlPreparedPack.getInPackList(customerPartNoList,"customerPartNo",ddlPackBean);
|
|
|
|
DdlPreparedPack.getInPackList(customerPartNoList, "customerPartNo", ddlPackBean);
|
|
|
|
return baseRDao.findByHqlWhere(ddlPackBean);
|
|
|
|
return baseRDao.findByHqlWhere(ddlPackBean);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|