예제 #1
0
        public PurchaseReceivalDetail UndoInvoiceObject(PurchaseReceivalDetail purchaseReceivalDetail, int Quantity, IPurchaseReceivalService _purchaseReceivalService)
        {
            PurchaseReceival purchaseReceival = _purchaseReceivalService.GetObjectById(purchaseReceivalDetail.PurchaseReceivalId);

            _purchaseReceivalService.UnsetInvoiceComplete(purchaseReceival);

            purchaseReceivalDetail.IsAllInvoiced            = false;
            purchaseReceivalDetail.PendingInvoicedQuantity += Quantity;
            _repository.UpdateObject(purchaseReceivalDetail);
            return(purchaseReceivalDetail);
        }
예제 #2
0
 public PurchaseInvoice UnconfirmObject(PurchaseInvoice purchaseInvoice, IPurchaseInvoiceDetailService _purchaseInvoiceDetailService,
                                        IPurchaseReceivalService _purchaseReceivalService, IPurchaseReceivalDetailService _purchaseReceivalDetailService,
                                        IPaymentVoucherDetailService _paymentVoucherDetailService, IPayableService _payableService)
 {
     if (_validator.ValidUnconfirmObject(purchaseInvoice, _purchaseInvoiceDetailService, _paymentVoucherDetailService, _payableService))
     {
         IList <PurchaseInvoiceDetail> details = _purchaseInvoiceDetailService.GetObjectsByPurchaseInvoiceId(purchaseInvoice.Id);
         foreach (var detail in details)
         {
             detail.Errors = new Dictionary <string, string>();
             _purchaseInvoiceDetailService.UnconfirmObject(detail, _purchaseReceivalService, _purchaseReceivalDetailService);
         }
         _repository.UnconfirmObject(purchaseInvoice);
         PurchaseReceival purchaseReceival = _purchaseReceivalService.GetObjectById(purchaseInvoice.PurchaseReceivalId);
         _purchaseReceivalService.UnsetInvoiceComplete(purchaseReceival);
         Payable payable = _payableService.GetObjectBySource(Constant.PayableSource.PurchaseInvoice, purchaseInvoice.Id);
         _payableService.SoftDeleteObject(payable);
     }
     return(purchaseInvoice);
 }