|
|
|
@ -32,6 +32,7 @@ import org.springframework.util.StringUtils;
|
|
|
|
|
import java.util.ArrayList;
|
|
|
|
|
import java.util.List;
|
|
|
|
|
import java.util.Objects;
|
|
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
|
|
@Service
|
|
|
|
|
@Slf4j
|
|
|
|
@ -173,7 +174,7 @@ public class MesLoadingListService extends BaseMesService<MesLoadingList> implem
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
protected void onInsertBean(MesLoadingList item) {
|
|
|
|
|
|
|
|
|
|
List<String> shippingOrderNoList = new ArrayList<>();
|
|
|
|
@ -225,6 +226,7 @@ public class MesLoadingListService extends BaseMesService<MesLoadingList> implem
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
protected void setPackQueryBean(MesLoadingList bean, DdlPackBean packBean) {
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(bean.getOrderCode(), "orderCode", packBean);
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(bean.getCustCode(), "custCode", packBean);
|
|
|
|
@ -245,17 +247,66 @@ public class MesLoadingListService extends BaseMesService<MesLoadingList> implem
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void submit(List<Long> ids) {
|
|
|
|
|
public void doSubmit(List<Long> ids) {
|
|
|
|
|
List<MesLoadingList> loadingLists = getMesLoadingListByIds(ids);
|
|
|
|
|
for (MesLoadingList loadingList : loadingLists) {
|
|
|
|
|
if (loadingList.getStatus() > MesExtEnumUtil.MES_LOADING_STATUS.PUBLISH.getValue()) {
|
|
|
|
|
throw ImppExceptionBuilder.newInstance()
|
|
|
|
|
.setErrorCode(ImppExceptionEnum.BUSINESS_EXCEPTION_DATA_ERROR.getCode())
|
|
|
|
|
.setErrorDetail(String.format("装车单已扫描,不能再确认或取消确认!"))
|
|
|
|
|
.setSystemID(CommonEnumUtil.SOFT_TYPE.MES.getCode())
|
|
|
|
|
.build();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
for (MesLoadingList loading : loadingLists) {
|
|
|
|
|
List<MesShippingOrderManagement> orderManagements = getMesShippingOrderManagement(loading);
|
|
|
|
|
if (loading.getStatus() == MesExtEnumUtil.MES_LOADING_STATUS.CREATE.getValue()) {
|
|
|
|
|
loading.setStatus(MesExtEnumUtil.MES_LOADING_STATUS.PUBLISH.getValue());
|
|
|
|
|
for (MesShippingOrderManagement orderManagement : orderManagements) {
|
|
|
|
|
orderManagement.setStatus(MesExtEnumUtil.SHIPPING_ORDER_STATUS.LOADING.getValue());
|
|
|
|
|
}
|
|
|
|
|
baseRDao.update(loading);
|
|
|
|
|
shippingOrderManagementRepository.update(orderManagements);
|
|
|
|
|
} else if (loading.getStatus() == MesExtEnumUtil.MES_LOADING_STATUS.PUBLISH.getValue()) {
|
|
|
|
|
loading.setStatus(MesExtEnumUtil.MES_LOADING_STATUS.CREATE.getValue());
|
|
|
|
|
for (MesShippingOrderManagement orderManagement : orderManagements) {
|
|
|
|
|
orderManagement.setStatus(MesExtEnumUtil.SHIPPING_ORDER_STATUS.SHIPPED.getValue());
|
|
|
|
|
}
|
|
|
|
|
baseRDao.update(loading);
|
|
|
|
|
shippingOrderManagementRepository.update(orderManagements);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void createVolvoAsn(List<Long> ids) {
|
|
|
|
|
|
|
|
|
|
public void doCreateVolvoAsn(List<Long> ids) {
|
|
|
|
|
List<MesLoadingList> loadingLists = getMesLoadingListByIds(ids);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private List<MesLoadingList> getMesLoadingListByIds(List<Long> ids) {
|
|
|
|
|
List<MesLoadingList> loadingLists = new ArrayList<>();
|
|
|
|
|
return loadingLists;
|
|
|
|
|
String organizeCode = AuthUtilExt.getOrganizeCode();
|
|
|
|
|
DdlPackBean packBean = DdlPackBean.getDdlPackBean(organizeCode);
|
|
|
|
|
DdlPreparedPack.getInPackList(ids, "id", packBean);
|
|
|
|
|
return baseRDao.findByHqlWhere(packBean);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private List<MesShippingOrderManagement> getMesShippingOrderManagement(MesLoadingList loading) {
|
|
|
|
|
List<MesShippingOrderManagement> orderManagements = new ArrayList<>();
|
|
|
|
|
String organizeCode = AuthUtilExt.getOrganizeCode();
|
|
|
|
|
DdlPackBean packBean = DdlPackBean.getDdlPackBean(organizeCode);
|
|
|
|
|
DdlPreparedPack.getNumEqualPack(loading.getId(), "pid", packBean);
|
|
|
|
|
List<MesLoadingListDetail> details = listDetailRepository.findByHqlWhere(packBean);
|
|
|
|
|
if (!CollectionUtils.isEmpty(details)) {
|
|
|
|
|
for (MesLoadingListDetail detail : details) {
|
|
|
|
|
DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(organizeCode);
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(detail.getShippingCode(), "shippingCode", ddlPackBean);
|
|
|
|
|
MesShippingOrderManagement orderManagement = shippingOrderManagementRepository.getByProperty(ddlPackBean);
|
|
|
|
|
if (orderManagement != null) {
|
|
|
|
|
orderManagements.add(orderManagement);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
return orderManagements;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|