|
|
|
@ -6,11 +6,12 @@ import cn.estsh.i3plus.platform.common.exception.ImppExceptionEnum;
|
|
|
|
|
import cn.estsh.i3plus.pojo.base.bean.DdlPackBean;
|
|
|
|
|
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
|
|
|
|
|
import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack;
|
|
|
|
|
import cn.estsh.i3plus.pojo.mes.bean.MesPartShippingGroup;
|
|
|
|
|
import cn.estsh.i3plus.pojo.mes.bean.MesPartShippingGroupDetail;
|
|
|
|
|
import cn.estsh.i3plus.pojo.mes.bean.MesShippingOrderManagement;
|
|
|
|
|
import cn.estsh.i3plus.pojo.mes.bean.MesShippingOrderManagementDetail;
|
|
|
|
|
import cn.estsh.impp.framework.boot.auth.AuthUtil;
|
|
|
|
|
import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder;
|
|
|
|
|
import cn.estsh.impp.framework.boot.util.ValidatorBean;
|
|
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
|
|
import org.springframework.beans.BeanUtils;
|
|
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
@ -29,7 +30,7 @@ public class MesShippingOrderManagementService extends BaseMesService<MesShippin
|
|
|
|
|
private MesShippingOrderManagementDetailService detailService;
|
|
|
|
|
|
|
|
|
|
@Autowired
|
|
|
|
|
private MesPartShippingGroupService shippingGroupService;
|
|
|
|
|
private MesPartShippingGroupDetailService shippingGroupDetailService;
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public MesShippingOrderManagement insert(MesShippingOrderManagement bean) {
|
|
|
|
@ -38,13 +39,13 @@ public class MesShippingOrderManagementService extends BaseMesService<MesShippin
|
|
|
|
|
|
|
|
|
|
//查询物料发运组数据
|
|
|
|
|
DdlPackBean shipGroupPackBean = DdlPackBean.getDdlPackBean(bean.getOrganizeCode());
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(bean.getShippingOrderNo(), "shippingGroupNo", shipGroupPackBean);
|
|
|
|
|
List<MesPartShippingGroup> partShippingGroupList = shippingGroupService.findAll(shipGroupPackBean);
|
|
|
|
|
if (CollectionUtils.isEmpty(partShippingGroupList)) {
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(bean.getShippingGroupNo(), "shippingGroupNo", shipGroupPackBean);
|
|
|
|
|
List<MesPartShippingGroupDetail> groupDetailList = shippingGroupDetailService.findAll(shipGroupPackBean);
|
|
|
|
|
if (CollectionUtils.isEmpty(groupDetailList)) {
|
|
|
|
|
throw ImppExceptionBuilder.newInstance()
|
|
|
|
|
.setSystemID(CommonEnumUtil.SOFT_TYPE.MES.getCode())
|
|
|
|
|
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode())
|
|
|
|
|
.setErrorDetail("【%s】发运组数据为空,请检查数据", bean.getShippingOrderNo())
|
|
|
|
|
.setErrorDetail("【%s】发运组明细数据为空,请检查数据", bean.getShippingGroupNo())
|
|
|
|
|
.build();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -52,11 +53,12 @@ public class MesShippingOrderManagementService extends BaseMesService<MesShippin
|
|
|
|
|
List<MesShippingOrderManagementDetail> detailInsertList = new ArrayList<>();
|
|
|
|
|
|
|
|
|
|
MesShippingOrderManagement finalBean = bean;
|
|
|
|
|
partShippingGroupList.forEach(k -> {
|
|
|
|
|
groupDetailList.forEach(k -> {
|
|
|
|
|
MesShippingOrderManagementDetail detail = new MesShippingOrderManagementDetail();
|
|
|
|
|
|
|
|
|
|
detail.setShippingOrderNo(finalBean.getShippingOrderNo());
|
|
|
|
|
detail.setOrganizeCode(k.getOrganizeCode());
|
|
|
|
|
// ConvertBean.serviceModelInitialize(detail, "LML");
|
|
|
|
|
ConvertBean.serviceModelInitialize(detail, AuthUtil.getSessionUser().getUserName());
|
|
|
|
|
BeanUtils.copyProperties(k, detail, "id");
|
|
|
|
|
detailInsertList.add(detail);
|
|
|
|
@ -85,7 +87,7 @@ public class MesShippingOrderManagementService extends BaseMesService<MesShippin
|
|
|
|
|
if (!bean.getShippingGroupNo().equals(originBean.getShippingGroupNo())) {
|
|
|
|
|
|
|
|
|
|
DdlPackBean detailPackBean = DdlPackBean.getDdlPackBean(bean.getOrganizeCode());
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(bean.getShippingOrderNo(), "shippingGroupNo", detailPackBean);
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(bean.getShippingOrderNo(), "shippingOrderNo", detailPackBean);
|
|
|
|
|
List<MesShippingOrderManagementDetail> detailDeleteList = detailService.findAll(detailPackBean);
|
|
|
|
|
detailDeleteList.forEach(k -> {
|
|
|
|
|
k.setIsDeleted(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue());
|
|
|
|
@ -93,21 +95,22 @@ public class MesShippingOrderManagementService extends BaseMesService<MesShippin
|
|
|
|
|
});
|
|
|
|
|
//查询物料发运组数据
|
|
|
|
|
DdlPackBean shipGroupPackBean = DdlPackBean.getDdlPackBean(bean.getOrganizeCode());
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(bean.getShippingOrderNo(), "shippingGroupNo", shipGroupPackBean);
|
|
|
|
|
List<MesPartShippingGroup> partShippingGroupList = shippingGroupService.findAll(shipGroupPackBean);
|
|
|
|
|
if (CollectionUtils.isEmpty(partShippingGroupList)) {
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(bean.getShippingGroupNo(), "shippingGroupNo", shipGroupPackBean);
|
|
|
|
|
List<MesPartShippingGroupDetail> shippingGroupDetailList = shippingGroupDetailService.findAll(shipGroupPackBean);
|
|
|
|
|
if (CollectionUtils.isEmpty(shippingGroupDetailList)) {
|
|
|
|
|
throw ImppExceptionBuilder.newInstance()
|
|
|
|
|
.setSystemID(CommonEnumUtil.SOFT_TYPE.MES.getCode())
|
|
|
|
|
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode())
|
|
|
|
|
.setErrorDetail("【%s】发运组数据为空,请检查数据", bean.getShippingOrderNo())
|
|
|
|
|
.setErrorDetail("【%s】发运组明细数据为空,请检查数据", bean.getShippingGroupNo())
|
|
|
|
|
.build();
|
|
|
|
|
}
|
|
|
|
|
//发运单明细
|
|
|
|
|
List<MesShippingOrderManagementDetail> detailInsertList = new ArrayList<>();
|
|
|
|
|
partShippingGroupList.forEach(k -> {
|
|
|
|
|
shippingGroupDetailList.forEach(k -> {
|
|
|
|
|
MesShippingOrderManagementDetail detail = new MesShippingOrderManagementDetail();
|
|
|
|
|
|
|
|
|
|
detail.setOrganizeCode(k.getOrganizeCode());
|
|
|
|
|
// ConvertBean.serviceModelInitialize(detail, "LML");
|
|
|
|
|
ConvertBean.serviceModelInitialize(detail, AuthUtil.getSessionUser().getUserName());
|
|
|
|
|
BeanUtils.copyProperties(k, detail, "id");
|
|
|
|
|
detailInsertList.add(detail);
|
|
|
|
@ -119,6 +122,7 @@ public class MesShippingOrderManagementService extends BaseMesService<MesShippin
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
onModifyBean();
|
|
|
|
|
// ConvertBean.serviceModelUpdate(bean, "LML");
|
|
|
|
|
ConvertBean.serviceModelUpdate(bean, AuthUtil.getSessionUser().getUserName());
|
|
|
|
|
baseRDao.update(bean);
|
|
|
|
|
return originBean;
|
|
|
|
@ -146,4 +150,27 @@ public class MesShippingOrderManagementService extends BaseMesService<MesShippin
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
protected void onInsertBean(MesShippingOrderManagement item) {
|
|
|
|
|
|
|
|
|
|
// 数据校验
|
|
|
|
|
ValidatorBean.checkNotNull(item.getShippingOrderNo(), "发运单不能为空");
|
|
|
|
|
ValidatorBean.checkNotNull(item.getSeq(), "顺序号不能为空");
|
|
|
|
|
ValidatorBean.checkNotNull(item.getCustomerCode(), "客户代码不能为空");
|
|
|
|
|
ValidatorBean.checkNotNull(item.getCustomerOrganizeCode(), "客户工厂代码不能为空");
|
|
|
|
|
ValidatorBean.checkNotNull(item.getShippingGroupNo(), "发运组代码不能为空");
|
|
|
|
|
ValidatorBean.checkNotNull(item.getStatus(), "状态不能为空");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
protected void onUpdateBean(MesShippingOrderManagement item) {
|
|
|
|
|
|
|
|
|
|
// 数据校验
|
|
|
|
|
ValidatorBean.checkNotNull(item.getShippingOrderNo(), "发运单不能为空");
|
|
|
|
|
ValidatorBean.checkNotNull(item.getSeq(), "顺序号不能为空");
|
|
|
|
|
ValidatorBean.checkNotNull(item.getCustomerCode(), "客户代码不能为空");
|
|
|
|
|
ValidatorBean.checkNotNull(item.getCustomerOrganizeCode(), "客户工厂代码不能为空");
|
|
|
|
|
ValidatorBean.checkNotNull(item.getShippingGroupNo(), "发运组代码不能为空");
|
|
|
|
|
ValidatorBean.checkNotNull(item.getStatus(), "状态不能为空");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|