fix: deleting single invoices is now safe even when there are invoice number duplicates

pull/6221/head
Gauthier LO 2024-04-30 17:33:56 +02:00
parent 5117a74c22
commit f1ed7ae305
21 changed files with 61 additions and 65 deletions

View File

@ -217,7 +217,7 @@ public class PurchaseOrderController {
List<String> platformOrderIds = new ArrayList<>(Arrays.asList(purchaseOrderPage.getPlatformOrderId().split(","))); List<String> platformOrderIds = new ArrayList<>(Arrays.asList(purchaseOrderPage.getPlatformOrderId().split(",")));
log.info("Editing purchase order and attributing it to orders : {}", platformOrderIds); log.info("Editing purchase order and attributing it to orders : {}", platformOrderIds);
log.info("Removing previous attribution to orders"); log.info("Removing previous attribution to orders");
platformOrderService.removePurchaseInvoiceNumber(purchaseOrder.getInvoiceNumber()); platformOrderService.removePurchaseInvoiceNumber(purchaseOrder.getInvoiceNumber(), purchaseOrder.getClientId());
List<PlatformOrder> platformOrders = platformOrderService.selectByPlatformOrderIds(platformOrderIds); List<PlatformOrder> platformOrders = platformOrderService.selectByPlatformOrderIds(platformOrderIds);
log.info("Platform orders found for attribution : {}", platformOrders.stream().map(PlatformOrder::getPlatformOrderId).collect(Collectors.toList())); log.info("Platform orders found for attribution : {}", platformOrders.stream().map(PlatformOrder::getPlatformOrderId).collect(Collectors.toList()));
Map<String, List<String>> platformOrderIdUpdateMap = new HashMap<>(); Map<String, List<String>> platformOrderIdUpdateMap = new HashMap<>();
@ -242,7 +242,7 @@ public class PurchaseOrderController {
/** /**
* id * id
* * not used, use cancelInvoice instead
* @param id * @param id
* @return * @return
*/ */
@ -261,7 +261,7 @@ public class PurchaseOrderController {
/** /**
* *
* * not used, use cancelBatchInvoice instead
* @param ids * @param ids
* @return * @return
*/ */

View File

@ -31,7 +31,7 @@ public class Client implements Serializable {
/** /**
* *
*/ */
@TableId(type = IdType.ASSIGN_ID) @TableId(type = IdType.ASSIGN_UUID)
@ApiModelProperty(value = "主键") @ApiModelProperty(value = "主键")
private java.lang.String id; private java.lang.String id;
/** /**

View File

@ -30,7 +30,7 @@ public class PurchaseOrder implements Serializable {
/** /**
* *
*/ */
@TableId(type = IdType.ASSIGN_ID) @TableId(type = IdType.ASSIGN_UUID)
@ApiModelProperty(value = "主键") @ApiModelProperty(value = "主键")
private String id; private String id;
/** /**

View File

@ -76,7 +76,7 @@ public interface PlatformOrderContentMapper extends BaseMapper<PlatformOrderCont
List<PlatformOrderContent> findUninvoicedShippedOrderContents(); List<PlatformOrderContent> findUninvoicedShippedOrderContents();
List<PlatformOrderContent> fetchPlatformOrderContentsToArchive(@Param("orderIDs") List<String> orderIDs); List<PlatformOrderContent> fetchPlatformOrderContentsToArchive(@Param("orderIDs") List<String> orderIDs);
void insertPlatformOrderContentsArchives(@Param("orderContents") List<PlatformOrderContent> platformOrderContents); void insertPlatformOrderContentsArchives(@Param("orderContents") List<PlatformOrderContent> platformOrderContents);
void cancelInvoice(@Param("invoiceNumber") String invoiceNumber); void cancelInvoice(@Param("invoiceNumber") String invoiceNumber, @Param("clientId") String clientId);
void cancelBatchInvoice(@Param("invoiceNumbers") List<String> invoiceNumbers); void cancelBatchInvoice(@Param("invoiceNumbers") List<String> invoiceNumbers);
List<SkuPrice> searchSkuPrice(@Param("skuIds") List<String> skuIds); List<SkuPrice> searchSkuPrice(@Param("skuIds") List<String> skuIds);

View File

@ -186,7 +186,7 @@ public interface PlatformOrderMapper extends BaseMapper<PlatformOrder> {
List<PlatformOrder> fetchOrdersToArchiveBetweenDate(@Param("startDate") String startDate, @Param("endDate") String endDate); List<PlatformOrder> fetchOrdersToArchiveBetweenDate(@Param("startDate") String startDate, @Param("endDate") String endDate);
List<PlatformOrder> fetchOrdersToArchiveBeforeDate(@Param("endDate") String endDate); List<PlatformOrder> fetchOrdersToArchiveBeforeDate(@Param("endDate") String endDate);
void insertPlatformOrdersArchives(@Param("orders") List<PlatformOrder> platformOrders); void insertPlatformOrdersArchives(@Param("orders") List<PlatformOrder> platformOrders);
void cancelInvoice(@Param("invoiceNumber") String invoiceNumber); void cancelInvoice(@Param("invoiceNumber") String invoiceNumber, @Param("clientId") String clientId);
void cancelBatchInvoice(@Param("invoiceNumbers") List<String> invoiceNumbers); void cancelBatchInvoice(@Param("invoiceNumbers") List<String> invoiceNumbers);
List<PlatformOrder> findUninvoicedShippingOrdersByShopForClient(@Param("shopIds") List<String> shopIds, @Param("erpStatuses") List<Integer> erpStatuses); List<PlatformOrder> findUninvoicedShippingOrdersByShopForClient(@Param("shopIds") List<String> shopIds, @Param("erpStatuses") List<Integer> erpStatuses);
@ -206,7 +206,7 @@ public interface PlatformOrderMapper extends BaseMapper<PlatformOrder> {
List<PlatformOrder> selectByPlatformOrderIds(@Param("platformOrderIds") List<String> platformOrderIds); List<PlatformOrder> selectByPlatformOrderIds(@Param("platformOrderIds") List<String> platformOrderIds);
void removePurchaseInvoiceNumber(@Param("invoiceNumber") String purchaseInvoiceNumber); void removePurchaseInvoiceNumber(@Param("invoiceNumber") String purchaseInvoiceNumber, @Param("clientId") String clientId);
void removePurchaseInvoiceNumbers(@Param("invoiceNumbers") List<String> invoiceNumbers); void removePurchaseInvoiceNumbers(@Param("invoiceNumbers") List<String> invoiceNumbers);

View File

@ -102,7 +102,7 @@ public interface PurchaseOrderMapper extends BaseMapper<PurchaseOrder> {
BigDecimal getPurchaseFeesByInvoiceCode(@Param("invoiceCode") String invoiceCode); BigDecimal getPurchaseFeesByInvoiceCode(@Param("invoiceCode") String invoiceCode);
void deleteInvoice(@Param("invoiceNumber") String invoiceNumber); void deleteInvoice(@Param("invoiceNumber") String invoiceNumber, @Param("clientId") String clientId);
void deleteBatchInvoice(@Param("invoiceNumbers") List<String> invoiceNumbers); void deleteBatchInvoice(@Param("invoiceNumbers") List<String> invoiceNumbers);

View File

@ -17,6 +17,6 @@ import java.util.List;
@Repository @Repository
public interface SavRefundMapper extends BaseMapper<SavRefund> { public interface SavRefundMapper extends BaseMapper<SavRefund> {
List<BigDecimal> fetchRefundAmount(@Param("invoiceNumber") String invoiceNumber); List<BigDecimal> fetchRefundAmount(@Param("invoiceNumber") String invoiceNumber);
void cancelInvoice(@Param("invoiceNumber") String invoiceNumber); void cancelInvoice(@Param("invoiceNumber") String invoiceNumber, @Param("clientId") String clientId);
void cancelBatchInvoice(@Param("invoiceNumbers") List<String> invoiceNumbers); void cancelBatchInvoice(@Param("invoiceNumbers") List<String> invoiceNumbers);
} }

View File

@ -298,6 +298,8 @@
UPDATE platform_order_content poc UPDATE platform_order_content poc
JOIN platform_order po ON poc.platform_order_id = po.id JOIN platform_order po ON poc.platform_order_id = po.id
JOIN shipping_invoice si ON po.shipping_invoice_number = si.invoice_number JOIN shipping_invoice si ON po.shipping_invoice_number = si.invoice_number
JOIN shop s ON po.shop_id = s.id
JOIN client c ON s.owner_id = c.id
SET poc.picking_fee = 0.0, SET poc.picking_fee = 0.0,
poc.shipping_fee = NULL, poc.shipping_fee = NULL,
poc.service_fee = NULL, poc.service_fee = NULL,
@ -309,7 +311,8 @@
WHEN poc.erp_status = '2' AND si.create_by = 'system' THEN '1' WHEN poc.erp_status = '2' AND si.create_by = 'system' THEN '1'
ELSE poc.erp_status ELSE poc.erp_status
END END
WHERE po.shipping_invoice_number = #{invoiceNumber}; WHERE po.shipping_invoice_number = #{invoiceNumber}
AND c.id = #{clientId};
</update> </update>
<update id="cancelBatchInvoice"> <update id="cancelBatchInvoice">
UPDATE platform_order_content UPDATE platform_order_content

View File

@ -726,18 +726,21 @@
<update id="cancelInvoice"> <update id="cancelInvoice">
UPDATE platform_order po UPDATE platform_order po
JOIN shipping_invoice si ON po.shipping_invoice_number = si.invoice_number JOIN shipping_invoice si ON po.shipping_invoice_number = si.invoice_number
SET fret_fee = NULL, JOIN shop s ON po.shop_id = s.id
order_service_fee = NULL, JOIN client c ON s.owner_id = c.id
shipping_invoice_number = NULL, SET po.fret_fee = NULL,
picking_fee = 0.0, po.order_service_fee = NULL,
packaging_material_fee = 0.0, po.shipping_invoice_number = NULL,
erp_status = po.picking_fee = 0.0,
po.packaging_material_fee = 0.0,
po.erp_status =
CASE CASE
WHEN erp_status = '4' THEN '3' WHEN erp_status = '4' THEN '3'
WHEN erp_status = '2' AND si.create_by = 'system' THEN '1' WHEN erp_status = '2' AND si.create_by = 'system' THEN '1'
ELSE erp_status ELSE erp_status
END END
WHERE shipping_invoice_number = #{invoiceNumber}; WHERE shipping_invoice_number = #{invoiceNumber}
AND c.id = #{clientId};
</update> </update>
<update id="cancelBatchInvoice"> <update id="cancelBatchInvoice">
UPDATE platform_order UPDATE platform_order
@ -806,8 +809,11 @@
</select> </select>
<update id="removePurchaseInvoiceNumber"> <update id="removePurchaseInvoiceNumber">
UPDATE platform_order UPDATE platform_order
JOIN shop s ON platform_order.shop_id = s.id
JOIN client c ON s.owner_id = c.id
SET purchase_invoice_number = NULL SET purchase_invoice_number = NULL
WHERE purchase_invoice_number = #{invoiceNumber} WHERE purchase_invoice_number = #{invoiceNumber}
AND c.id = #{clientId};
</update> </update>
<update id="removePurchaseInvoiceNumbers"> <update id="removePurchaseInvoiceNumbers">
UPDATE platform_order UPDATE platform_order

View File

@ -73,6 +73,7 @@
DELETE DELETE
FROM purchase_order FROM purchase_order
WHERE invoice_number = #{invoiceNumber} WHERE invoice_number = #{invoiceNumber}
AND purchase_order.client_id = #{clientId}
</delete> </delete>
<delete id="deleteBatchInvoice"> <delete id="deleteBatchInvoice">
DELETE DELETE

View File

@ -8,10 +8,14 @@
</select> </select>
<update id="cancelInvoice"> <update id="cancelInvoice">
UPDATE sav_refund UPDATE sav_refund
JOIN platform_order po ON sav_refund.platform_order_id = po.id
JOIN shop s ON po.shop_id = s.id
JOIN client c ON s.owner_id = c.id
SET invoice_number = NULL, SET invoice_number = NULL,
refund_date = NULL, refund_date = NULL,
total_refund_amount = 0.0 total_refund_amount = 0.0
WHERE invoice_number = #{invoiceNumber}; WHERE invoice_number = #{invoiceNumber}
AND c.id = #{clientId};
</update> </update>
<update id="cancelBatchInvoice"> <update id="cancelBatchInvoice">
UPDATE sav_refund UPDATE sav_refund

View File

@ -49,7 +49,7 @@ public interface IPlatformOrderContentService extends IService<PlatformOrderCont
* Cancels an invoice * Cancels an invoice
* @param invoiceNumber * @param invoiceNumber
*/ */
void cancelInvoice(String invoiceNumber); void cancelInvoice(String invoiceNumber, String clientId);
/** /**
* Cancels a batch of invoices * Cancels a batch of invoices
* @param invoiceNumbers * @param invoiceNumbers

View File

@ -177,7 +177,7 @@ public interface IPlatformOrderService extends IService<PlatformOrder> {
* Cancel Invoice * Cancel Invoice
* @param invoiceNumber * @param invoiceNumber
*/ */
void cancelInvoice(String invoiceNumber); void cancelInvoice(String invoiceNumber, String clientId);
/** /**
* Cancel Invoice * Cancel Invoice
* @param invoiceNumbers * @param invoiceNumbers
@ -229,7 +229,7 @@ public interface IPlatformOrderService extends IService<PlatformOrder> {
List<PlatformOrder> selectByPlatformOrderIds(List<String> platformOrderIds); List<PlatformOrder> selectByPlatformOrderIds(List<String> platformOrderIds);
void removePurchaseInvoiceNumber(String purchaseInvoiceNumber); void removePurchaseInvoiceNumber(String purchaseInvoiceNumber, String clientId);
void removePurchaseInvoiceNumbers(List<String> invoiceNumbers); void removePurchaseInvoiceNumbers(List<String> invoiceNumbers);
void updatePurchaseInvoiceNumber(List<String> orderIds, String invoiceCode); void updatePurchaseInvoiceNumber(List<String> orderIds, String invoiceCode);

View File

@ -112,7 +112,7 @@ public interface IPurchaseOrderService extends IService<PurchaseOrder> {
BigDecimal getPurchaseFeesByInvoiceCode(String invoiceCode); BigDecimal getPurchaseFeesByInvoiceCode(String invoiceCode);
void cancelInvoice(String invoiceNumber); void cancelInvoice(String invoiceNumber, String clientId);
void cancelBatchInvoice(List<String> invoiceNumbers); void cancelBatchInvoice(List<String> invoiceNumbers);
@ -134,8 +134,6 @@ public interface IPurchaseOrderService extends IService<PurchaseOrder> {
void setPaid(List<String> invoiceNumbers); void setPaid(List<String> invoiceNumbers);
void deleteInvoice(String invoiceNumber);
PurchaseOrder getPurchaseByInvoiceNumberAndClientId(String invoiceNumber, String clientId); PurchaseOrder getPurchaseByInvoiceNumberAndClientId(String invoiceNumber, String clientId);
List<PurchaseOrder> getPurchasesByInvoices(List<Invoice> invoices); List<PurchaseOrder> getPurchasesByInvoices(List<Invoice> invoices);

View File

@ -18,7 +18,7 @@ public interface ISavRefundService extends IService<SavRefund> {
* Cancel Invoice * Cancel Invoice
* @param invoiceNumber * @param invoiceNumber
*/ */
void cancelInvoice(String invoiceNumber); void cancelInvoice(String invoiceNumber, String clientId);
/** /**
* Cancel Batch Invoice * Cancel Batch Invoice
* @param invoiceNumbers * @param invoiceNumbers

View File

@ -31,8 +31,6 @@ public class InvoiceServiceImpl extends ServiceImpl<InvoiceMapper, Invoice> impl
@Autowired @Autowired
private IPlatformOrderService platformOrderService; private IPlatformOrderService platformOrderService;
@Autowired @Autowired
private PurchaseOrderContentMapper purchaseOrderContentMapper;
@Autowired
private IPurchaseOrderService purchaseOrderService; private IPurchaseOrderService purchaseOrderService;
@Autowired @Autowired
private ISavRefundService savRefundService; private ISavRefundService savRefundService;
@ -59,18 +57,19 @@ public class InvoiceServiceImpl extends ServiceImpl<InvoiceMapper, Invoice> impl
public boolean cancelInvoice(String id, String invoiceNumber, String clientId) { public boolean cancelInvoice(String id, String invoiceNumber, String clientId) {
String invoiceEntity = clientService.getById(clientId).getInvoiceEntity(); String invoiceEntity = clientService.getById(clientId).getInvoiceEntity();
savRefundService.cancelInvoice(invoiceNumber, clientId);
if(Invoice.getType(invoiceNumber).equalsIgnoreCase(PURCHASE.name())) { if(Invoice.getType(invoiceNumber).equalsIgnoreCase(PURCHASE.name())) {
PurchaseOrder po = purchaseOrderService.getById(id); PurchaseOrder po = purchaseOrderService.getById(id);
if (po.getInventoryDocumentString() != null && !po.getInventoryDocumentString().isEmpty()) if (po.getInventoryDocumentString() != null && !po.getInventoryDocumentString().isEmpty())
shippingInvoiceService.deleteAttachmentFile(po.getInventoryDocumentString()); shippingInvoiceService.deleteAttachmentFile(po.getInventoryDocumentString());
if (po.getPaymentDocumentString() != null && !po.getPaymentDocumentString().isEmpty()) if (po.getPaymentDocumentString() != null && !po.getPaymentDocumentString().isEmpty())
shippingInvoiceService.deleteAttachmentFile(po.getPaymentDocumentString()); shippingInvoiceService.deleteAttachmentFile(po.getPaymentDocumentString());
platformOrderService.removePurchaseInvoiceNumber(invoiceNumber); platformOrderService.removePurchaseInvoiceNumber(invoiceNumber, clientId);
purchaseOrderService.deleteInvoice(invoiceNumber); purchaseOrderService.delMain(id);
} }
if(Invoice.getType(invoiceNumber).equalsIgnoreCase(SHIPPING.name())) { if(Invoice.getType(invoiceNumber).equalsIgnoreCase(SHIPPING.name())) {
platformOrderContentService.cancelInvoice(invoiceNumber); platformOrderContentService.cancelInvoice(invoiceNumber, clientId);
platformOrderService.cancelInvoice(invoiceNumber); platformOrderService.cancelInvoice(invoiceNumber, clientId);
shippingInvoiceService.delMain(id); shippingInvoiceService.delMain(id);
} }
if(Invoice.getType(invoiceNumber).equalsIgnoreCase(COMPLETE.name())) { if(Invoice.getType(invoiceNumber).equalsIgnoreCase(COMPLETE.name())) {
@ -79,13 +78,12 @@ public class InvoiceServiceImpl extends ServiceImpl<InvoiceMapper, Invoice> impl
shippingInvoiceService.deleteAttachmentFile(purchase.getInventoryDocumentString()); shippingInvoiceService.deleteAttachmentFile(purchase.getInventoryDocumentString());
if(purchase.getPaymentDocumentString() != null && !purchase.getPaymentDocumentString().isEmpty()) if(purchase.getPaymentDocumentString() != null && !purchase.getPaymentDocumentString().isEmpty())
shippingInvoiceService.deleteAttachmentFile(purchase.getPaymentDocumentString()); shippingInvoiceService.deleteAttachmentFile(purchase.getPaymentDocumentString());
platformOrderContentService.cancelInvoice(invoiceNumber); platformOrderContentService.cancelInvoice(invoiceNumber, clientId);
platformOrderService.removePurchaseInvoiceNumber(invoiceNumber); platformOrderService.removePurchaseInvoiceNumber(invoiceNumber, clientId);
platformOrderService.cancelInvoice(invoiceNumber); platformOrderService.cancelInvoice(invoiceNumber, clientId);
purchaseOrderService.cancelInvoice(invoiceNumber); purchaseOrderService.delMain(purchase.getId());
shippingInvoiceService.delMain(id); shippingInvoiceService.delMain(id);
} }
savRefundService.cancelInvoice(invoiceNumber);
log.info("Updating balance ..."); log.info("Updating balance ...");
balanceService.deleteBalance(id, Balance.OperationType.Debit.name()); balanceService.deleteBalance(id, Balance.OperationType.Debit.name());
@ -117,12 +115,10 @@ public class InvoiceServiceImpl extends ServiceImpl<InvoiceMapper, Invoice> impl
shippingInvoiceService.deleteAttachmentFile(po.getPaymentDocumentString()); shippingInvoiceService.deleteAttachmentFile(po.getPaymentDocumentString());
} }
platformOrderService.removePurchaseInvoiceNumbers(purchaseInvoiceNumbers); platformOrderService.removePurchaseInvoiceNumbers(purchaseInvoiceNumbers);
purchaseOrderService.cancelBatchInvoice(purchaseInvoiceNumbers); purchaseOrderService.delBatchMain(ids);
purchaseOrderContentMapper.deleteFromPurchaseIds(ids);
savRefundService.cancelBatchInvoice(purchaseInvoiceNumbers); savRefundService.cancelBatchInvoice(purchaseInvoiceNumbers);
log.info("Updating balances ..."); log.info("Updating balances ...");
balanceService.deleteBatchBalance(ids, Balance.OperationType.Debit.name()); balanceService.deleteBatchBalance(ids, Balance.OperationType.Debit.name());
} }
if(!shippingInvoiceNumbers.isEmpty()) { if(!shippingInvoiceNumbers.isEmpty()) {
List<String> ids = invoices.stream().filter(invoice -> Invoice.getType(invoice.getInvoiceNumber()).equalsIgnoreCase(SHIPPING.name())).map(Invoice::getId).collect(Collectors.toList()); List<String> ids = invoices.stream().filter(invoice -> Invoice.getType(invoice.getInvoiceNumber()).equalsIgnoreCase(SHIPPING.name())).map(Invoice::getId).collect(Collectors.toList());
@ -132,7 +128,6 @@ public class InvoiceServiceImpl extends ServiceImpl<InvoiceMapper, Invoice> impl
shippingInvoiceService.delBatchMain(ids); shippingInvoiceService.delBatchMain(ids);
log.info("Updating balances ..."); log.info("Updating balances ...");
balanceService.deleteBatchBalance(ids, Balance.OperationType.Debit.name()); balanceService.deleteBatchBalance(ids, Balance.OperationType.Debit.name());
} }
if(!completeInvoiceNumbers.isEmpty()) { if(!completeInvoiceNumbers.isEmpty()) {
List<Invoice> completeInvoices = invoices.stream().filter(invoice -> Invoice.getType(invoice.getInvoiceNumber()).equalsIgnoreCase(COMPLETE.name())).collect(Collectors.toList()); List<Invoice> completeInvoices = invoices.stream().filter(invoice -> Invoice.getType(invoice.getInvoiceNumber()).equalsIgnoreCase(COMPLETE.name())).collect(Collectors.toList());
@ -144,7 +139,7 @@ public class InvoiceServiceImpl extends ServiceImpl<InvoiceMapper, Invoice> impl
//purchase cancel //purchase cancel
List<PurchaseOrder> purchaseOrders = purchaseOrderService.getPurchasesByInvoices(completeInvoices); List<PurchaseOrder> purchaseOrders = purchaseOrderService.getPurchasesByInvoices(completeInvoices);
List<String> purchaseIds = purchaseOrders.stream().map(PurchaseOrder::getId).collect(Collectors.toList());
for(PurchaseOrder po : purchaseOrders) { for(PurchaseOrder po : purchaseOrders) {
if(po.getInventoryDocumentString() != null && !po.getInventoryDocumentString().isEmpty()) if(po.getInventoryDocumentString() != null && !po.getInventoryDocumentString().isEmpty())
shippingInvoiceService.deleteAttachmentFile(po.getInventoryDocumentString()); shippingInvoiceService.deleteAttachmentFile(po.getInventoryDocumentString());
@ -152,8 +147,7 @@ public class InvoiceServiceImpl extends ServiceImpl<InvoiceMapper, Invoice> impl
shippingInvoiceService.deleteAttachmentFile(po.getPaymentDocumentString()); shippingInvoiceService.deleteAttachmentFile(po.getPaymentDocumentString());
} }
platformOrderService.removePurchaseInvoiceNumbers(completeInvoiceNumbers); platformOrderService.removePurchaseInvoiceNumbers(completeInvoiceNumbers);
purchaseOrderService.cancelBatchInvoice(completeInvoiceNumbers); purchaseOrderService.delBatchMain(purchaseIds);
purchaseOrderContentMapper.deleteFromPurchaseIds(ids);
savRefundService.cancelBatchInvoice(completeInvoiceNumbers); savRefundService.cancelBatchInvoice(completeInvoiceNumbers);
log.info("Updating balances ..."); log.info("Updating balances ...");

View File

@ -64,8 +64,8 @@ public class PlatformOrderContentServiceImpl extends ServiceImpl<PlatformOrderCo
platformOrderContentMapper.insertPlatformOrderContentsArchives(platformOrderContents); platformOrderContentMapper.insertPlatformOrderContentsArchives(platformOrderContents);
} }
@Override @Override
public void cancelInvoice(String invoiceNumber) { public void cancelInvoice(String invoiceNumber, String clientId) {
platformOrderContentMapper.cancelInvoice(invoiceNumber); platformOrderContentMapper.cancelInvoice(invoiceNumber, clientId);
} }
@Override @Override
public void cancelBatchInvoice(List<String> invoiceNumbers) { public void cancelBatchInvoice(List<String> invoiceNumbers) {

View File

@ -410,8 +410,8 @@ public class PlatformOrderServiceImpl extends ServiceImpl<PlatformOrderMapper, P
platformOrderMap.insertPlatformOrdersArchives(platformOrders); platformOrderMap.insertPlatformOrdersArchives(platformOrders);
} }
@Override @Override
public void cancelInvoice(String invoiceNumber) { public void cancelInvoice(String invoiceNumber, String clientId) {
platformOrderMap.cancelInvoice(invoiceNumber); platformOrderMap.cancelInvoice(invoiceNumber, clientId);
} }
@Override @Override
public void cancelBatchInvoice(List<String> invoiceNumbers) { public void cancelBatchInvoice(List<String> invoiceNumbers) {
@ -463,8 +463,8 @@ public class PlatformOrderServiceImpl extends ServiceImpl<PlatformOrderMapper, P
} }
@Override @Override
public void removePurchaseInvoiceNumber(String purchaseInvoiceNumber) { public void removePurchaseInvoiceNumber(String purchaseInvoiceNumber, String clientId) {
platformOrderMap.removePurchaseInvoiceNumber(purchaseInvoiceNumber); platformOrderMap.removePurchaseInvoiceNumber(purchaseInvoiceNumber, clientId);
} }
@Override @Override

View File

@ -33,8 +33,8 @@ public class SavRefundServiceImpl extends ServiceImpl<SavRefundMapper, SavRefund
return savRefundMapper.fetchRefundAmount(invoiceNumber); return savRefundMapper.fetchRefundAmount(invoiceNumber);
} }
@Override @Override
public void cancelInvoice(String invoiceNumber) { public void cancelInvoice(String invoiceNumber, String clientId) {
savRefundMapper.cancelInvoice(invoiceNumber); savRefundMapper.cancelInvoice(invoiceNumber, clientId);
} }
@Override @Override
public void cancelBatchInvoice(List<String> invoiceNumbers) { public void cancelBatchInvoice(List<String> invoiceNumbers) {

View File

@ -138,23 +138,18 @@ public class PurchaseOrderServiceImpl extends ServiceImpl<PurchaseOrderMapper, P
@Override @Override
@Transactional @Transactional
public void delMain(String id) { public void delMain(String id) {
String invoiceNumber = purchaseOrderMapper.getInvoiceNumber(id);
purchaseOrderContentMapper.deleteByMainId(id); purchaseOrderContentMapper.deleteByMainId(id);
skuPromotionHistoryMapper.deleteByMainId(id); skuPromotionHistoryMapper.deleteByMainId(id);
purchaseOrderMapper.deleteById(id); purchaseOrderMapper.deleteById(id);
platformOrderService.removePurchaseInvoiceNumber(invoiceNumber);
} }
@Override @Override
@Transactional @Transactional
public void delBatchMain(Collection<? extends Serializable> idList) { public void delBatchMain(Collection<? extends Serializable> idList) {
for (Serializable id : idList) { for (Serializable id : idList) {
String invoiceNumber = purchaseOrderMapper.getInvoiceNumber(id.toString());
purchaseOrderContentMapper.deleteByMainId(id.toString()); purchaseOrderContentMapper.deleteByMainId(id.toString());
skuPromotionHistoryMapper.deleteByMainId(id.toString()); skuPromotionHistoryMapper.deleteByMainId(id.toString());
purchaseOrderMapper.deleteById(id); purchaseOrderMapper.deleteById(id);
platformOrderService.removePurchaseInvoiceNumber(invoiceNumber);
} }
} }
@ -572,8 +567,8 @@ public class PurchaseOrderServiceImpl extends ServiceImpl<PurchaseOrderMapper, P
} }
@Override @Override
public void cancelInvoice(String invoiceNumber) { public void cancelInvoice(String invoiceNumber, String clientId) {
purchaseOrderMapper.deleteInvoice(invoiceNumber); purchaseOrderMapper.deleteInvoice(invoiceNumber, clientId);
} }
@Override @Override
@ -628,11 +623,6 @@ public class PurchaseOrderServiceImpl extends ServiceImpl<PurchaseOrderMapper, P
purchaseOrderMapper.setPaid(invoiceNumber); purchaseOrderMapper.setPaid(invoiceNumber);
} }
@Override
public void deleteInvoice(String invoiceNumber) {
purchaseOrderMapper.deleteInvoice(invoiceNumber);
}
@Override @Override
public PurchaseOrder getPurchaseByInvoiceNumberAndClientId(String invoiceNumber, String clientId) { public PurchaseOrder getPurchaseByInvoiceNumberAndClientId(String invoiceNumber, String clientId) {
return purchaseOrderMapper.getPurchaseByInvoiceNumberAndClientId(invoiceNumber, clientId); return purchaseOrderMapper.getPurchaseByInvoiceNumberAndClientId(invoiceNumber, clientId);

View File

@ -37,7 +37,7 @@ public class SysUser implements Serializable {
/** /**
* id * id
*/ */
@TableId(type = IdType.ASSIGN_ID) @TableId(type = IdType.ASSIGN_UUID)
private String id; private String id;
/** /**