Browse Source

YT-2539:客户对账单,如果没有导入客户模具分摊对账单,在开票时,明细的模具费用就是0。也不给QAD传模具费用的接口。现在传了QAD接口

intex_online20250427
songguoqiang 3 days ago
parent
commit
e39fb905aa
  1. 73
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/customerSaleinvoice/CustomerSaleInvoiceMainServiceImpl.java

73
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/customerSaleinvoice/CustomerSaleInvoiceMainServiceImpl.java

@ -280,42 +280,42 @@ public class CustomerSaleInvoiceMainServiceImpl implements CustomerSaleInvoiceMa
customerStatementMainMapper.updateById(statementMainDO);
//清空已发未结锁定数量 新增已发已结数据
//查询锁定
// List<UnfinishedShipmentLockRecordDetailDO> recordDOS = unfinishedShipmentLockRecordDetailMapper.selectList(statementMainDO.getId());//该对账单下已经锁定的已发未结的记录
// //把锁定数据赋值给已发已结数据
// List<FinishedShipmentRecordDetailDO> finishedShipmentRecordDetailDOS = UnfinishedShipmentLockRecordDetailConvert.INSTANCE.convertList03(recordDOS);
// if (!recordDOS.isEmpty()) {
// for (FinishedShipmentRecordDetailDO en : finishedShipmentRecordDetailDOS) {
// FinishedShipmentRecordMainDO finishedShipmentRecordMainDO = new FinishedShipmentRecordMainDO();//已发已结主
// String number = serialNumberApi.generateCode(RuleCodeEnum.FINISHED_SHIPMENT.getCode());//已发已结流水号
// Long detailMasterId = en.getDetailMasterId();//成品发货已发未结记录明细id
// UnfinishedShipmentDetailDO unfinishedShipmentDetailDO = unfinishedShipmentDetailMapper.selectById(detailMasterId);
// Long masterId = unfinishedShipmentDetailDO.getMasterId();//已发未结主id
// UnfinishedShipmentMainDO unfinishedShipmentMainDO = unfinishedShipmentMainMapper.selectById(masterId);
// BeanUtils.copyProperties(unfinishedShipmentMainDO, finishedShipmentRecordMainDO);
// finishedShipmentRecordMainDO.setId(null);
// finishedShipmentRecordMainDO.setNumber(number);
// finishedShipmentRecordMainDO.setUnfinishedNumber(unfinishedShipmentMainDO.getNumber());
// finishedShipmentRecordMainMapper.insert(finishedShipmentRecordMainDO);//插入已发已结主信息
// en.setId(null);
// en.setMasterId(finishedShipmentRecordMainDO.getId());
// en.setNumber(number);
// en.setCustomerOrderNumber(unfinishedShipmentMainDO.getCustomerOrderNumber());
// //添加描述1描述2
// ItembasicDO itemDO = itembasicService.getItembasicBycode(en.getItemCode());
// if(itemDO!=null){
// en.setItemDesc1(itemDO.getDesc1());//描述1
// en.setItemDesc2(itemDO.getDesc2());//描述1
// }
// finishedShipmentRecordDetailMapper.insert(en);//插入已发已结子表
// //已发已结调用库存事务
// finishedShipmentRecordDetailService.generationRecord(en);
// }
// unfinishedShipmentLockRecordDetailMapper.deleteBatchIds(recordDOS);
// } else {
// //清除锁
// redisCache.deleteLock(lockKey);
// throw exception(ISSUED_NOT_SETTLED_LOCK_EMPTY);
// }
List<UnfinishedShipmentLockRecordDetailDO> recordDOS = unfinishedShipmentLockRecordDetailMapper.selectList(statementMainDO.getId());//该对账单下已经锁定的已发未结的记录
//把锁定数据赋值给已发已结数据
List<FinishedShipmentRecordDetailDO> finishedShipmentRecordDetailDOS = UnfinishedShipmentLockRecordDetailConvert.INSTANCE.convertList03(recordDOS);
if (!recordDOS.isEmpty()) {
for (FinishedShipmentRecordDetailDO en : finishedShipmentRecordDetailDOS) {
FinishedShipmentRecordMainDO finishedShipmentRecordMainDO = new FinishedShipmentRecordMainDO();//已发已结主
String number = serialNumberApi.generateCode(RuleCodeEnum.FINISHED_SHIPMENT.getCode());//已发已结流水号
Long detailMasterId = en.getDetailMasterId();//成品发货已发未结记录明细id
UnfinishedShipmentDetailDO unfinishedShipmentDetailDO = unfinishedShipmentDetailMapper.selectById(detailMasterId);
Long masterId = unfinishedShipmentDetailDO.getMasterId();//已发未结主id
UnfinishedShipmentMainDO unfinishedShipmentMainDO = unfinishedShipmentMainMapper.selectById(masterId);
BeanUtils.copyProperties(unfinishedShipmentMainDO, finishedShipmentRecordMainDO);
finishedShipmentRecordMainDO.setId(null);
finishedShipmentRecordMainDO.setNumber(number);
finishedShipmentRecordMainDO.setUnfinishedNumber(unfinishedShipmentMainDO.getNumber());
finishedShipmentRecordMainMapper.insert(finishedShipmentRecordMainDO);//插入已发已结主信息
en.setId(null);
en.setMasterId(finishedShipmentRecordMainDO.getId());
en.setNumber(number);
en.setCustomerOrderNumber(unfinishedShipmentMainDO.getCustomerOrderNumber());
//添加描述1描述2
ItembasicDO itemDO = itembasicService.getItembasicBycode(en.getItemCode());
if(itemDO!=null){
en.setItemDesc1(itemDO.getDesc1());//描述1
en.setItemDesc2(itemDO.getDesc2());//描述1
}
finishedShipmentRecordDetailMapper.insert(en);//插入已发已结子表
//已发已结调用库存事务
finishedShipmentRecordDetailService.generationRecord(en);
}
unfinishedShipmentLockRecordDetailMapper.deleteBatchIds(recordDOS);
} else {
//清除锁
redisCache.deleteLock(lockKey);
throw exception(ISSUED_NOT_SETTLED_LOCK_EMPTY);
}
//生成开票记录
CustomerSaleInvoiceRecordMainDO invoiceRecordMainDO = new CustomerSaleInvoiceRecordMainDO();//开票记录主
@ -495,7 +495,6 @@ public class CustomerSaleInvoiceMainServiceImpl implements CustomerSaleInvoiceMa
//清除锁
redisCache.deleteLock(lockKey);
trendsApi.createTrends(id, "customer_sale_invoice_main", null, "销售开票发布", null, TrendsTypeEnum.SALE_INVOICE_PUBLISH, String.valueOf(getLoginUserId()));
int a = 1/0;
return i;
}

Loading…
Cancel
Save