|
|
@ -294,20 +294,28 @@ public class InvCountOrderServiceImpl implements InvCountOrderService {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
log.info("开始生成盘盈单据");
|
|
|
|
if (CollUtil.isNotEmpty(inCodes)) {
|
|
|
|
//开始生成盘盈单据
|
|
|
|
log.info("开始生成盘盈单据");
|
|
|
|
String inOrderId = buildOrder(invCountOrder, inCodes, inBusType);
|
|
|
|
//开始生成盘盈单据
|
|
|
|
invCountOrder.setInOrderIds(inOrderId);
|
|
|
|
String inOrderId = buildOrder(invCountOrder, inCodes, inBusType);
|
|
|
|
log.info("盘盈单据生成成功");
|
|
|
|
log.info("盘点单据:{} 生成的盘盈入库单据号:{}", invCountOrder.getOrderId(), inOrderId);
|
|
|
|
|
|
|
|
invCountOrder.setInOrderIds(inOrderId);
|
|
|
|
//开始生成盘亏单据
|
|
|
|
//更新单据号
|
|
|
|
log.info("开始生成盘亏单据");
|
|
|
|
invCountOrderDao.updateById(invCountOrder);
|
|
|
|
String outOrderId = buildOrder(invCountOrder, outCodes, outBusType);
|
|
|
|
log.info("盘盈单据生成成功");
|
|
|
|
invCountOrder.setOrderId(outOrderId);
|
|
|
|
}
|
|
|
|
log.info("盘亏单据生成成功");
|
|
|
|
|
|
|
|
|
|
|
|
if (CollUtil.isNotEmpty(outCodes)) {
|
|
|
|
//更新盘点单据的出入库单据信息
|
|
|
|
//开始生成盘亏单据
|
|
|
|
invCountOrderDao.updateById(invCountOrder);
|
|
|
|
log.info("开始生成盘亏单据");
|
|
|
|
|
|
|
|
String outOrderId = buildOrder(invCountOrder, outCodes, outBusType);
|
|
|
|
|
|
|
|
log.info("盘点单据:{} 生成的盘亏出库单据号:{}", invCountOrder.getOrderId(), outOrderId);
|
|
|
|
|
|
|
|
invCountOrder.setOutOrderIds(outOrderId);
|
|
|
|
|
|
|
|
//更新单据号
|
|
|
|
|
|
|
|
invCountOrderDao.updateById(invCountOrder);
|
|
|
|
|
|
|
|
log.info("盘亏单据生成成功");
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
@ -315,32 +323,35 @@ public class InvCountOrderServiceImpl implements InvCountOrderService {
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @param invCountOrder 盘点单据
|
|
|
|
* @param invCountOrder 盘点单据
|
|
|
|
* @param codeTempList 单据码明细
|
|
|
|
* @param codeTempList 单据码明细
|
|
|
|
* @param inBusType 单据类型
|
|
|
|
* @param busType 单据类型
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
private String buildOrder(InvCountOrderEntity invCountOrder, List<IoCodeTempEntity> codeTempList, BasicBussinessTypeEntity inBusType) {
|
|
|
|
private String buildOrder(InvCountOrderEntity invCountOrder, List<IoCodeTempEntity> codeTempList, BasicBussinessTypeEntity busType) {
|
|
|
|
if (CollUtil.isNotEmpty(codeTempList)) {
|
|
|
|
if (CollUtil.isNotEmpty(codeTempList)) {
|
|
|
|
//构造单据数据
|
|
|
|
//构造单据数据
|
|
|
|
IoOrderEntity order = new IoOrderEntity();
|
|
|
|
IoOrderEntity order = new IoOrderEntity();
|
|
|
|
order.setMainAction(inBusType.getMainAction());
|
|
|
|
order.setMainAction(busType.getMainAction());
|
|
|
|
order.setAction(inBusType.getAction());
|
|
|
|
order.setAction(busType.getAction());
|
|
|
|
Date date = new Date();
|
|
|
|
Date date = new Date();
|
|
|
|
order.setCreateTime(date);
|
|
|
|
order.setCreateTime(date);
|
|
|
|
order.setUpdateTime(date);
|
|
|
|
order.setUpdateTime(date);
|
|
|
|
order.setDeptCode(invCountOrder.getDeptCode());
|
|
|
|
order.setDeptCode(invCountOrder.getDeptCode());
|
|
|
|
order.setInvCode(invCountOrder.getInvCode());
|
|
|
|
order.setInvCode(invCountOrder.getInvCode());
|
|
|
|
//查询单据往来单位信息
|
|
|
|
//查询单据往来单位信息
|
|
|
|
order.setFromCorp(inBusType.getDefaultUnit());
|
|
|
|
order.setFromCorp(busType.getDefaultUnit());
|
|
|
|
order.setFromType(ConstantStatus.FROM_COUNT);
|
|
|
|
order.setFromType(ConstantStatus.FROM_COUNT);
|
|
|
|
order.setCorpOrderId(CustomUtil.getId() + "x");
|
|
|
|
order.setCorpOrderId(CustomUtil.getId() + "x");
|
|
|
|
//设置为草稿状态
|
|
|
|
//设置为草稿状态
|
|
|
|
order.setStatus(1);
|
|
|
|
order.setStatus(1);
|
|
|
|
order.setDealStatus(1);
|
|
|
|
order.setDealStatus(1);
|
|
|
|
|
|
|
|
order.setOrderType(3); //正常单据
|
|
|
|
|
|
|
|
|
|
|
|
//设置上传状态为未上传
|
|
|
|
//设置上传状态为未上传
|
|
|
|
order.setExportStatus(0);
|
|
|
|
order.setExportStatus(0);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
String prefix = StrUtil.trim(busType.getPrefix());
|
|
|
|
|
|
|
|
prefix = Constant.SCAN_ORDER + (StrUtil.isBlank(prefix) ? "" : prefix);
|
|
|
|
//生成单据号
|
|
|
|
//生成单据号
|
|
|
|
String orderNo = gennerOrderUtils.createScOrderNo(new OrderNoTypeBean(Constant.SCAN_ORDER + StrUtil.trim(inBusType.getPrefix()), "yyyyMMdd"));
|
|
|
|
String orderNo = gennerOrderUtils.createScOrderNo(new OrderNoTypeBean(prefix, "yyyyMMdd"));
|
|
|
|
order.setBillNo(orderNo);
|
|
|
|
order.setBillNo(orderNo);
|
|
|
|
//对条码统一设置创建时间,单号等信息
|
|
|
|
//对条码统一设置创建时间,单号等信息
|
|
|
|
codeTempList.forEach(codeTemp -> {
|
|
|
|
codeTempList.forEach(codeTemp -> {
|
|
|
@ -440,9 +451,9 @@ public class InvCountOrderServiceImpl implements InvCountOrderService {
|
|
|
|
for (InvProductDetailEntity invProductDetailEntity : invProductDetailEntities) {
|
|
|
|
for (InvProductDetailEntity invProductDetailEntity : invProductDetailEntities) {
|
|
|
|
if (!countCodeList.contains(invProductDetailEntity.getCode()) && !verifyCodeExist(codeList, invProductDetailEntity.getCode())) {
|
|
|
|
if (!countCodeList.contains(invProductDetailEntity.getCode()) && !verifyCodeExist(codeList, invProductDetailEntity.getCode())) {
|
|
|
|
InvCountOrderDetailEntity orderDetailEntity = new InvCountOrderDetailEntity();
|
|
|
|
InvCountOrderDetailEntity orderDetailEntity = new InvCountOrderDetailEntity();
|
|
|
|
orderDetailEntity.setRelId(invCountOrderDetailEntity.getRelId());
|
|
|
|
BeanUtil.copyProperties(invCountOrderDetailEntity, orderDetailEntity);
|
|
|
|
orderDetailEntity.setStatus(0);
|
|
|
|
orderDetailEntity.setStatus(0);
|
|
|
|
IoCodeTempEntity codeTempEntity = buildCodeTempEntity(invCountOrder, invProductDetailEntity.getCode(), orderDetailEntity);
|
|
|
|
IoCodeTempEntity codeTempEntity = buildCodeTempEntity(invCountOrder, invProductDetailEntity.getCode(), invCountOrderDetailEntity);
|
|
|
|
codeList.add(codeTempEntity);
|
|
|
|
codeList.add(codeTempEntity);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -552,10 +563,11 @@ public class InvCountOrderServiceImpl implements InvCountOrderService {
|
|
|
|
if (CollUtil.isNotEmpty(list)) {
|
|
|
|
if (CollUtil.isNotEmpty(list)) {
|
|
|
|
List<BasicBussinessTypeEntity> busTypes = new ArrayList<>(2);
|
|
|
|
List<BasicBussinessTypeEntity> busTypes = new ArrayList<>(2);
|
|
|
|
for (BasicBusTypeChangeEntity basicBusTypeChangeEntity : list) {
|
|
|
|
for (BasicBusTypeChangeEntity basicBusTypeChangeEntity : list) {
|
|
|
|
if ("PDRK".equals(basicBusTypeChangeEntity.getOriginAction()) || "PDCK".equals(basicBusTypeChangeEntity.getOriginAction())) {
|
|
|
|
if ("PYRK".equals(basicBusTypeChangeEntity.getOriginAction().toUpperCase()) || "PKCK".equals(basicBusTypeChangeEntity.getOriginAction().toUpperCase())) {
|
|
|
|
busTypes.add(bussinessTypeDao.selectOne(new QueryWrapper<BasicBussinessTypeEntity>().eq("action", basicBusTypeChangeEntity.getTargetAction())));
|
|
|
|
busTypes.add(bussinessTypeDao.selectOne(new QueryWrapper<BasicBussinessTypeEntity>().eq("action", basicBusTypeChangeEntity.getTargetAction())));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
return busTypes;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return null;
|
|
|
|
return null;
|
|
|
|
}
|
|
|
|
}
|
|
|
|