예제 #1
0
        public dynamic GetInfoDetail(int Id)
        {
            CashSalesReturnDetail model = new CashSalesReturnDetail();

            try
            {
                model = _cashSalesReturnDetailService.GetObjectById(Id);
            }
            catch (Exception ex)
            {
                LOG.Error("GetInfo", ex);
                Dictionary <string, string> Errors = new Dictionary <string, string>();
                Errors.Add("Generic", "Error " + ex);

                return(Json(new
                {
                    Errors
                }, JsonRequestBehavior.AllowGet));
            }

            return(Json(new
            {
                model.Id,
                model.Code,
                model.CashSalesReturnId,
                CashSalesReturn = _cashSalesReturnService.GetObjectById(model.CashSalesReturnId).Code,
                model.CashSalesInvoiceDetailId,
                CashSalesInvoiceDetail = _cashSalesInvoiceDetailService.GetObjectById(model.CashSalesInvoiceDetailId).Code,
                _cashSalesInvoiceDetailService.GetObjectById(model.CashSalesInvoiceDetailId).ItemId,
                _itemService.GetObjectById(_cashSalesInvoiceDetailService.GetObjectById(model.CashSalesInvoiceDetailId).ItemId).Name,
                model.Quantity,
                model.Errors
            }, JsonRequestBehavior.AllowGet));
        }
예제 #2
0
 public CashSalesReturnDetail VCreateObject(CashSalesReturnDetail cashSalesReturnDetail, ICashSalesReturnService _cashSalesReturnService,
                                            ICashSalesReturnDetailService _cashSalesReturnDetailService, ICashSalesInvoiceDetailService _cashSalesInvoiceDetailService)
 {
     VIsParentNotConfirmed(cashSalesReturnDetail, _cashSalesReturnService);
     if (!isValid(cashSalesReturnDetail))
     {
         return(cashSalesReturnDetail);
     }
     VHasCashSalesReturn(cashSalesReturnDetail, _cashSalesReturnService);
     if (!isValid(cashSalesReturnDetail))
     {
         return(cashSalesReturnDetail);
     }
     VIsValidCashSalesInvoiceDetail(cashSalesReturnDetail, _cashSalesInvoiceDetailService, _cashSalesReturnService);
     if (!isValid(cashSalesReturnDetail))
     {
         return(cashSalesReturnDetail);
     }
     VIsValidQuantity(cashSalesReturnDetail, _cashSalesInvoiceDetailService, _cashSalesReturnDetailService);
     if (!isValid(cashSalesReturnDetail))
     {
         return(cashSalesReturnDetail);
     }
     VConfirmObject(cashSalesReturnDetail, _cashSalesInvoiceDetailService, _cashSalesReturnDetailService);
     //if (!isValid(cashSalesReturnDetail)) { return cashSalesReturnDetail; }
     //VIsValidTotalPrice(cashSalesReturnDetail, _cashSalesInvoiceDetailService);
     return(cashSalesReturnDetail);
 }
예제 #3
0
 public bool ValidUpdateObject(CashSalesReturnDetail cashSalesReturnDetail, ICashSalesReturnService _cashSalesReturnService,
                               ICashSalesReturnDetailService _cashSalesReturnDetailService, ICashSalesInvoiceDetailService _cashSalesInvoiceDetailService)
 {
     cashSalesReturnDetail.Errors.Clear();
     VUpdateObject(cashSalesReturnDetail, _cashSalesReturnService, _cashSalesReturnDetailService, _cashSalesInvoiceDetailService);
     return(isValid(cashSalesReturnDetail));
 }
예제 #4
0
 public CashSalesReturnDetail VUpdateObject(CashSalesReturnDetail cashSalesReturnDetail, ICashSalesReturnService _cashSalesReturnService,
                                            ICashSalesReturnDetailService _cashSalesReturnDetailService, ICashSalesInvoiceDetailService _cashSalesInvoiceDetailService)
 {
     //VIsParentNotConfirmed(cashSalesReturnDetail, _cashSalesReturnService);
     //if (!isValid(cashSalesReturnDetail)) { return cashSalesReturnDetail; }
     return(VCreateObject(cashSalesReturnDetail, _cashSalesReturnService, _cashSalesReturnDetailService, _cashSalesInvoiceDetailService));
 }
예제 #5
0
 public CashSalesReturnDetail VDeleteObject(CashSalesReturnDetail cashSalesReturnDetail, ICashSalesReturnService _cashSalesReturnService)
 {
     VIsParentNotConfirmed(cashSalesReturnDetail, _cashSalesReturnService);
     if (!isValid(cashSalesReturnDetail))
     {
         return(cashSalesReturnDetail);
     }
     return(cashSalesReturnDetail);
 }
예제 #6
0
        public CashSalesReturnDetail VHasCashSalesReturn(CashSalesReturnDetail cashSalesReturnDetail, ICashSalesReturnService _cashSalesReturnService)
        {
            CashSalesReturn cashSalesReturn = _cashSalesReturnService.GetObjectById(cashSalesReturnDetail.CashSalesReturnId);

            if (cashSalesReturn == null)
            {
                cashSalesReturnDetail.Errors.Add("CashSalesReturnId", "Tidak valid");
            }
            return(cashSalesReturnDetail);
        }
 public CashSalesReturnDetail SoftDeleteObject(CashSalesReturnDetail cashSalesReturnDetail, ICashSalesReturnService _cashSalesReturnService)
 {
     if (_validator.ValidDeleteObject(cashSalesReturnDetail, _cashSalesReturnService))
     {
         CashSalesReturn cashSalesReturn = _cashSalesReturnService.GetObjectById(cashSalesReturnDetail.CashSalesReturnId);
         _repository.SoftDeleteObject(cashSalesReturnDetail);
         cashSalesReturn.Total = CalculateTotal(cashSalesReturn.Id);
         _cashSalesReturnService.GetRepository().Update(cashSalesReturn);
     }
     return(cashSalesReturnDetail);
 }
예제 #8
0
        public CashSalesReturnDetail VIsValidQuantity(CashSalesReturnDetail cashSalesReturnDetail, ICashSalesInvoiceDetailService _cashSalesInvoiceDetailService, ICashSalesReturnDetailService _cashSalesReturnDetailService)
        {
            CashSalesInvoiceDetail cashSalesInvoiceDetail = _cashSalesInvoiceDetailService.GetObjectById(cashSalesReturnDetail.CashSalesInvoiceDetailId);

            if (cashSalesReturnDetail.Quantity <= 0 || _cashSalesReturnDetailService.GetTotalQuantityByCashSalesInvoiceDetailId(cashSalesReturnDetail.CashSalesInvoiceDetailId) > cashSalesInvoiceDetail.Quantity)
            {
                cashSalesReturnDetail.Errors.Add("Quantity", "Quantity harus lebih besar dari 0 dan lebih kecil atau sama dengan CashSalesInvoiceDetail Quantity");
                return(cashSalesReturnDetail);
            }
            return(cashSalesReturnDetail);
        }
예제 #9
0
        public string PrintError(CashSalesReturnDetail obj)
        {
            string erroroutput = "";
            KeyValuePair <string, string> first = obj.Errors.ElementAt(0);

            erroroutput += first.Key + "," + first.Value;
            foreach (KeyValuePair <string, string> pair in obj.Errors.Skip(1))
            {
                erroroutput += Environment.NewLine;
                erroroutput += pair.Key + "," + pair.Value;
            }
            return(erroroutput);
        }
 public CashSalesReturnDetail UpdateObject(CashSalesReturnDetail cashSalesReturnDetail, ICashSalesReturnService _cashSalesReturnService,
                                           ICashSalesInvoiceDetailService _cashSalesInvoiceDetailService)
 {
     if (_validator.ValidUpdateObject(cashSalesReturnDetail, _cashSalesReturnService, this, _cashSalesInvoiceDetailService))
     {
         CashSalesReturn        cashSalesReturn        = _cashSalesReturnService.GetObjectById(cashSalesReturnDetail.CashSalesReturnId);
         CashSalesInvoiceDetail cashSalesInvoiceDetail = _cashSalesInvoiceDetailService.GetObjectById(cashSalesReturnDetail.CashSalesInvoiceDetailId);
         cashSalesReturnDetail.TotalPrice = (cashSalesInvoiceDetail.Amount / cashSalesInvoiceDetail.Quantity) * cashSalesReturnDetail.Quantity;
         cashSalesReturnDetail            = _repository.UpdateObject(cashSalesReturnDetail);
         cashSalesReturn.Total            = CalculateTotal(cashSalesReturn.Id);
         _cashSalesReturnService.GetRepository().Update(cashSalesReturn);
     }
     return(cashSalesReturnDetail);
 }
 public CashSalesReturnDetail CreateObject(CashSalesReturnDetail cashSalesReturnDetail, ICashSalesReturnService _cashSalesReturnService,
                                           ICashSalesInvoiceDetailService _cashSalesInvoiceDetailService)
 {
     cashSalesReturnDetail.Errors = new Dictionary <String, String>();
     if (_validator.ValidCreateObject(cashSalesReturnDetail, _cashSalesReturnService, this, _cashSalesInvoiceDetailService))
     {
         CashSalesReturn        cashSalesReturn        = _cashSalesReturnService.GetObjectById(cashSalesReturnDetail.CashSalesReturnId);
         CashSalesInvoiceDetail cashSalesInvoiceDetail = _cashSalesInvoiceDetailService.GetObjectById(cashSalesReturnDetail.CashSalesInvoiceDetailId);
         cashSalesReturnDetail.TotalPrice = (cashSalesInvoiceDetail.Amount / cashSalesInvoiceDetail.Quantity) * cashSalesReturnDetail.Quantity;
         cashSalesReturnDetail            = _repository.CreateObject(cashSalesReturnDetail);
         cashSalesReturn.Total            = CalculateTotal(cashSalesReturn.Id);
         _cashSalesReturnService.GetRepository().Update(cashSalesReturn);
     }
     return(cashSalesReturnDetail);
 }
예제 #12
0
        public CashSalesReturnDetail VIsParentNotConfirmed(CashSalesReturnDetail cashSalesReturnDetail, ICashSalesReturnService _cashSalesReturnService)
        {
            CashSalesReturn cashSalesReturn = _cashSalesReturnService.GetObjectById(cashSalesReturnDetail.CashSalesReturnId);

            if (cashSalesReturn != null)
            {
                if (cashSalesReturn.IsConfirmed)
                {
                    cashSalesReturnDetail.Errors.Add("Generic", "CashSalesReturn tidak boleh terkonfirmasi");
                }
            }
            else
            {
                cashSalesReturnDetail.Errors.Add("Generic", "CashSalesReturn tidak ada");
            }
            return(cashSalesReturnDetail);
        }
예제 #13
0
        public CashSalesReturnDetail VIsValidCashSalesInvoiceDetail(CashSalesReturnDetail cashSalesReturnDetail, ICashSalesInvoiceDetailService _cashSalesInvoiceDetailService, ICashSalesReturnService _cashSalesReturnService)
        {
            CashSalesInvoiceDetail cashSalesInvoiceDetail = _cashSalesInvoiceDetailService.GetObjectById(cashSalesReturnDetail.CashSalesInvoiceDetailId);
            CashSalesReturn        cashSalesReturn        = _cashSalesReturnService.GetObjectById(cashSalesReturnDetail.CashSalesReturnId);

            if (cashSalesInvoiceDetail == null)
            {
                cashSalesReturnDetail.Errors.Add("CashSalesInvoiceDetailId", "Tidak valid");
            }
            else if (cashSalesReturn == null)
            {
                cashSalesReturnDetail.Errors.Add("CashSalesReturnId", "Tidak valid");
            }
            else if (cashSalesInvoiceDetail.CashSalesInvoiceId != cashSalesReturn.CashSalesInvoiceId)
            {
                cashSalesReturnDetail.Errors.Add("CashSalesInvoiceId", "Tidak sama");
            }
            return(cashSalesReturnDetail);
        }
예제 #14
0
        public dynamic UpdateDetail(CashSalesReturnDetail model)
        {
            decimal total = 0;

            try
            {
                if (!AuthenticationModel.IsAllowed("Edit", Core.Constants.Constant.MenuName.CashSalesReturn, Core.Constants.Constant.MenuGroupName.Transaction))
                {
                    Dictionary <string, string> Errors = new Dictionary <string, string>();
                    Errors.Add("Generic", "You are Not Allowed to Edit record");

                    return(Json(new
                    {
                        Errors
                    }, JsonRequestBehavior.AllowGet));
                }

                var data = _cashSalesReturnDetailService.GetObjectById(model.Id);
                data.CashSalesInvoiceDetailId = model.CashSalesInvoiceDetailId;
                data.Quantity          = model.Quantity;
                data.CashSalesReturnId = model.CashSalesReturnId;
                model = _cashSalesReturnDetailService.UpdateObject(data, _cashSalesReturnService, _cashSalesInvoiceDetailService);
                total = _cashSalesReturnService.GetObjectById(model.CashSalesReturnId).Total;
            }
            catch (Exception ex)
            {
                LOG.Error("Update Failed", ex);
                Dictionary <string, string> Errors = new Dictionary <string, string>();
                Errors.Add("Generic", "Error " + ex);

                return(Json(new
                {
                    Errors
                }, JsonRequestBehavior.AllowGet));
            }

            return(Json(new
            {
                model.Errors,
                Total = total
            }));
        }
 public CashSalesReturnDetail UnconfirmObject(CashSalesReturnDetail cashSalesReturnDetail, ICashSalesInvoiceDetailService _cashSalesInvoiceDetailService,
                                              IWarehouseItemService _warehouseItemService, IWarehouseService _warehouseService,
                                              IItemService _itemService, IBarringService _barringService, IStockMutationService _stockMutationService)
 {
     if (_validator.ValidUnconfirmObject(cashSalesReturnDetail))
     {
         CashSalesInvoiceDetail cashSalesInvoiceDetail = _cashSalesInvoiceDetailService.GetObjectById(cashSalesReturnDetail.CashSalesInvoiceDetailId);
         Item item = _itemService.GetObjectById(cashSalesInvoiceDetail.ItemId);
         IList <StockMutation> stockMutations = _stockMutationService.GetObjectsBySourceDocumentDetailForItem(cashSalesInvoiceDetail.ItemId, Core.Constants.Constant.SourceDocumentDetailType.CashSalesReturnDetail, cashSalesReturnDetail.Id);
         foreach (var stockMutation in stockMutations)
         {
             stockMutation.Errors = new Dictionary <string, string>();
             _stockMutationService.ReverseStockMutateObject(stockMutation, _itemService, _barringService, _warehouseItemService);
             _stockMutationService.SoftDeleteObject(stockMutation, _warehouseService, _warehouseItemService, _itemService, _barringService);
         }
         item.AvgPrice         = _itemService.CalculateAndUpdateAvgPrice(item, cashSalesReturnDetail.Quantity * (-1), (cashSalesInvoiceDetail.CoGS / cashSalesInvoiceDetail.Quantity));
         cashSalesReturnDetail = _repository.UnconfirmObject(cashSalesReturnDetail);
     }
     return(cashSalesReturnDetail);
 }
 public CashSalesReturnDetail ConfirmObject(CashSalesReturnDetail cashSalesReturnDetail, ICashSalesReturnService _cashSalesReturnService,
                                            ICashSalesInvoiceService _cashSalesInvoiceService, ICashSalesInvoiceDetailService _cashSalesInvoiceDetailService,
                                            IWarehouseItemService _warehouseItemService, IWarehouseService _warehouseService,
                                            IItemService _itemService, IBarringService _barringService, IStockMutationService _stockMutationService, ICashSalesReturnDetailService _cashSalesReturnDetailService)
 {
     if (_validator.ValidConfirmObject(cashSalesReturnDetail, _cashSalesInvoiceDetailService, _cashSalesReturnDetailService))
     {
         CashSalesReturn        cashSalesReturn        = _cashSalesReturnService.GetObjectById(cashSalesReturnDetail.CashSalesReturnId);
         CashSalesInvoiceDetail cashSalesInvoiceDetail = _cashSalesInvoiceDetailService.GetObjectById(cashSalesReturnDetail.CashSalesInvoiceDetailId);
         CashSalesInvoice       cashSalesInvoice       = _cashSalesInvoiceService.GetObjectById(cashSalesReturn.CashSalesInvoiceId);
         WarehouseItem          warehouseItem          = _warehouseItemService.FindOrCreateObject(cashSalesInvoice.WarehouseId, cashSalesInvoiceDetail.ItemId);
         Item          item          = _itemService.GetObjectById(cashSalesInvoiceDetail.ItemId);
         StockMutation stockMutation = new StockMutation()
         {
             ItemId                   = cashSalesInvoiceDetail.ItemId,
             ItemCase                 = Core.Constants.Constant.ItemCase.Ready,
             Status                   = Core.Constants.Constant.MutationStatus.Addition,
             Quantity                 = cashSalesReturnDetail.Quantity,
             SourceDocumentCode       = cashSalesReturn.Code,
             SourceDocumentId         = cashSalesReturn.Id,
             SourceDocumentType       = Core.Constants.Constant.SourceDocumentType.CashSalesReturn,
             SourceDocumentDetailCode = cashSalesReturnDetail.Code,
             SourceDocumentDetailId   = cashSalesReturnDetail.Id,
             SourceDocumentDetailType = Core.Constants.Constant.SourceDocumentDetailType.CashSalesReturnDetail,
             WarehouseId              = cashSalesInvoice.WarehouseId,
             WarehouseItemId          = warehouseItem.Id
         };
         stockMutation           = _stockMutationService.CreateObject(stockMutation, _warehouseService, _warehouseItemService, _itemService, _barringService);
         stockMutation.CreatedAt = (DateTime)cashSalesReturn.ConfirmationDate.GetValueOrDefault();
         _stockMutationService.UpdateObject(stockMutation, _warehouseService, _warehouseItemService, _itemService, _barringService);
         _stockMutationService.StockMutateObject(stockMutation, _itemService, _barringService, _warehouseItemService);
         item.AvgPrice         = _itemService.CalculateAndUpdateAvgPrice(item, cashSalesReturnDetail.Quantity, (cashSalesInvoiceDetail.CoGS / cashSalesInvoiceDetail.Quantity));
         cashSalesReturnDetail = _repository.ConfirmObject(cashSalesReturnDetail);
     }
     return(cashSalesReturnDetail);
 }
예제 #17
0
 public bool ValidCreateObject(CashSalesReturnDetail cashSalesReturnDetail, ICashSalesReturnService _cashSalesReturnService,
                               ICashSalesReturnDetailService _cashSalesReturnDetailService, ICashSalesInvoiceDetailService _cashSalesInvoiceDetailService)
 {
     VCreateObject(cashSalesReturnDetail, _cashSalesReturnService, _cashSalesReturnDetailService, _cashSalesInvoiceDetailService);
     return(isValid(cashSalesReturnDetail));
 }
예제 #18
0
 public bool ValidUnconfirmObject(CashSalesReturnDetail cashSalesReturnDetail)
 {
     cashSalesReturnDetail.Errors.Clear();
     VUnconfirmObject(cashSalesReturnDetail);
     return(isValid(cashSalesReturnDetail));
 }
예제 #19
0
 public bool ValidDeleteObject(CashSalesReturnDetail cashSalesReturnDetail, ICashSalesReturnService _cashSalesReturnService)
 {
     cashSalesReturnDetail.Errors.Clear();
     VDeleteObject(cashSalesReturnDetail, _cashSalesReturnService);
     return(isValid(cashSalesReturnDetail));
 }
예제 #20
0
        public void PopulateCashSalesData()
        {
            TimeSpan salesDate = new TimeSpan(10, 0, 0, 0);
            TimeSpan dueDate   = new TimeSpan(3, 0, 0, 0);

            // Cash without Discount & Tax
            csi1 = new CashSalesInvoice()
            {
                SalesDate   = DateTime.Today.Subtract(salesDate),
                WarehouseId = localWarehouse.Id,
                CashBankId  = cashBank.Id,
                DueDate     = DateTime.Today.Subtract(dueDate),
            };
            _cashSalesInvoiceService.CreateObject(csi1, _warehouseService, _cashBankService);

            // Cash with Discount & Tax
            csi2 = new CashSalesInvoice()
            {
                SalesDate   = DateTime.Today.Subtract(salesDate),
                WarehouseId = localWarehouse.Id,
                CashBankId  = cashBank.Id,
                DueDate     = DateTime.Today.Subtract(dueDate),
                Discount    = 25,
                Tax         = 10,
            };
            _cashSalesInvoiceService.CreateObject(csi2, _warehouseService, _cashBankService);

            // Bank without Discount & Tax
            csi3 = new CashSalesInvoice()
            {
                SalesDate   = DateTime.Today.Subtract(salesDate),
                WarehouseId = localWarehouse.Id,
                CashBankId  = cashBank2.Id,
                DueDate     = DateTime.Today.Subtract(dueDate),
            };
            _cashSalesInvoiceService.CreateObject(csi3, _warehouseService, _cashBankService);

            csid1 = new CashSalesInvoiceDetail()
            {
                CashSalesInvoiceId = csi1.Id,
                Quantity           = 100,
                ItemId             = blanket1.Id,
            };
            _cashSalesInvoiceDetailService.CreateObject(csid1, _cashSalesInvoiceService, _itemService, _warehouseItemService, _quantityPricingService);

            csid2 = new CashSalesInvoiceDetail()
            {
                CashSalesInvoiceId = csi2.Id,
                Quantity           = 30,
                ItemId             = blanket2.Id,
            };
            _cashSalesInvoiceDetailService.CreateObject(csid2, _cashSalesInvoiceService, _itemService, _warehouseItemService, _quantityPricingService);

            csid3 = new CashSalesInvoiceDetail()
            {
                CashSalesInvoiceId = csi3.Id,
                Quantity           = 10,
                ItemId             = blanket3.Id,
            };
            _cashSalesInvoiceDetailService.CreateObject(csid3, _cashSalesInvoiceService, _itemService, _warehouseItemService, _quantityPricingService);

            csid4 = new CashSalesInvoiceDetail()
            {
                CashSalesInvoiceId = csi2.Id,
                Quantity           = 10,
                ItemId             = blanket3.Id,
            };
            _cashSalesInvoiceDetailService.CreateObject(csid4, _cashSalesInvoiceService, _itemService, _warehouseItemService, _quantityPricingService);

            _cashSalesInvoiceService.ConfirmObject(csi1, csi1.SalesDate, 0, 0, _cashSalesInvoiceDetailService, _contactService, _priceMutationService, _receivableService, _cashSalesInvoiceService, _warehouseItemService, _warehouseService,
                                                   _itemService, _barringService, _stockMutationService, _cashBankService, _generalLedgerJournalService, _accountService, _closingService);
            _cashSalesInvoiceService.ConfirmObject(csi2, csi2.SalesDate, 0, 0, _cashSalesInvoiceDetailService, _contactService, _priceMutationService, _receivableService, _cashSalesInvoiceService, _warehouseItemService, _warehouseService,
                                                   _itemService, _barringService, _stockMutationService, _cashBankService, _generalLedgerJournalService, _accountService, _closingService);
            _cashSalesInvoiceService.ConfirmObject(csi3, csi3.SalesDate, 0, 0, _cashSalesInvoiceDetailService, _contactService, _priceMutationService, _receivableService, _cashSalesInvoiceService, _warehouseItemService, _warehouseService,
                                                   _itemService, _barringService, _stockMutationService, _cashBankService, _generalLedgerJournalService, _accountService, _closingService);

            _cashSalesInvoiceService.PaidObject(csi1, 200000, 50000, _cashBankService, _receivableService, _receiptVoucherService, _receiptVoucherDetailService, _contactService, _cashMutationService, _cashSalesReturnService,
                                                _generalLedgerJournalService, _accountService, _closingService);
            _cashSalesInvoiceService.PaidObject(csi2, csi2.Total - 50000, 50000, _cashBankService, _receivableService, _receiptVoucherService, _receiptVoucherDetailService, _contactService, _cashMutationService, _cashSalesReturnService,
                                                _generalLedgerJournalService, _accountService, _closingService);
            _cashSalesInvoiceService.PaidObject(csi3, csi3.Total, 50000, _cashBankService, _receivableService, _receiptVoucherService, _receiptVoucherDetailService, _contactService, _cashMutationService, _cashSalesReturnService,
                                                _generalLedgerJournalService, _accountService, _closingService);

            // --------- CashSalesReturn -------------

            csr1 = new CashSalesReturn()
            {
                ReturnDate         = DateTime.Now,
                CashSalesInvoiceId = csi1.Id,
                CashBankId         = csi1.CashBankId,
            };
            _cashSalesReturnService.CreateObject(csr1, _cashSalesInvoiceService, _cashBankService);

            csrd1 = new CashSalesReturnDetail()
            {
                CashSalesReturnId        = csr1.Id,
                CashSalesInvoiceDetailId = csid1.Id,
                Quantity = 50,
            };
            _cashSalesReturnDetailService.CreateObject(csrd1, _cashSalesReturnService, _cashSalesInvoiceDetailService);

            _cashSalesReturnService.ConfirmObject(csr1, DateTime.Now, 50000, _cashSalesReturnDetailService, _contactService, _cashSalesInvoiceService,
                                                  _cashSalesInvoiceDetailService, _priceMutationService, _payableService,
                                                  _cashSalesReturnService, _warehouseItemService, _warehouseService,
                                                  _itemService, _barringService, _stockMutationService, _closingService);

            _cashSalesReturnService.PaidObject(csr1, /*50000,*/ _cashBankService, _payableService, _paymentVoucherService,
                                               _paymentVoucherDetailService, _contactService, _cashMutationService, _generalLedgerJournalService,
                                               _accountService, _closingService);

            //_cashSalesReturnService.UnpaidObject(csr1, _paymentVoucherService, _paymentVoucherDetailService, _cashBankService, _payableService, _cashMutationService);
        }
예제 #21
0
        public bool isValid(CashSalesReturnDetail obj)
        {
            bool isValid = !obj.Errors.Any();

            return(isValid);
        }
예제 #22
0
 public CashSalesReturnDetail VUnconfirmObject(CashSalesReturnDetail cashSalesReturnDetail)
 {
     return(cashSalesReturnDetail);
 }
예제 #23
0
        /*public CashSalesReturnDetail VIsValidTotalPrice(CashSalesReturnDetail cashSalesReturnDetail, ICashSalesInvoiceDetailService _cashSalesInvoiceDetailService)
         * {
         *  CashSalesInvoiceDetail cashSalesInvoiceDetail = _cashSalesInvoiceDetailService.GetObjectById(cashSalesReturnDetail.CashSalesInvoiceDetailId);
         *
         *  if (cashSalesReturnDetail.TotalPrice < 0 || cashSalesReturnDetail.TotalPrice > (cashSalesInvoiceDetail.Amount / cashSalesInvoiceDetail.Quantity) * cashSalesReturnDetail.Quantity)
         *  {
         *      cashSalesReturnDetail.Errors.Add("Generic", "TotalPrice Harus lebih besar atau sama dengan 0 dan lebih kecil atau sama dengan CashSalesInvoiceDetail Amount ( " + cashSalesInvoiceDetail.Amount + " )");
         *      return cashSalesReturnDetail;
         *  }
         *  return cashSalesReturnDetail;
         * }*/

        public CashSalesReturnDetail VConfirmObject(CashSalesReturnDetail cashSalesReturnDetail, ICashSalesInvoiceDetailService _cashSalesInvoiceDetailService, ICashSalesReturnDetailService _cashSalesReturnDetailService)
        {
            VIsValidQuantity(cashSalesReturnDetail, _cashSalesInvoiceDetailService, _cashSalesReturnDetailService);
            return(cashSalesReturnDetail);
        }