示例#1
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);
 }
 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);
 }
示例#5
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);
        }
示例#6
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);
        }
 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);
 }
示例#8
0
        public dynamic GetInfo(int Id)
        {
            CashSalesReturn model = new CashSalesReturn();

            try
            {
                model = _cashSalesReturnService.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.Description,
                model.ReturnDate,
                model.Allowance,
                model.Total,
                model.CashBankId,
                CashBank = _cashBankService.GetObjectById((int)model.CashBankId.GetValueOrDefault()).Name,
                model.CashSalesInvoiceId,
                CashSalesInvoice = _cashSalesInvoiceService.GetObjectById(model.CashSalesInvoiceId).Code,
                model.Errors
            }, JsonRequestBehavior.AllowGet));
        }