Exemple #1
0
        public dynamic GetInfoDetail(int Id)
        {
            PurchaseReceivalDetail model = new PurchaseReceivalDetail();

            try
            {
                model = _purchaseReceivalDetailService.GetObjectById(Id);
            }
            catch (Exception ex)
            {
                LOG.Error("GetInfo", ex);
                model.Errors.Add("Generic", "Error : " + ex);
            }

            return(Json(new
            {
                model.Id,
                model.Code,
                model.PurchaseOrderDetailId,
                PurchaseOrderDetail = _purchaseOrderDetailService.GetObjectById(model.PurchaseOrderDetailId).Code,
                model.ItemId,
                Item = _itemService.GetObjectById(model.ItemId).Name,
                model.Errors
            }, JsonRequestBehavior.AllowGet));
        }
        public dynamic GetInfoDetail(int Id)
        {
            PurchaseInvoiceDetail model = new PurchaseInvoiceDetail();

            try
            {
                model = _purchaseInvoiceDetailService.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.PurchaseReceivalDetailId,
                PurchaseReceival = _purchaseReceivalDetailService.GetObjectById(model.PurchaseReceivalDetailId).Code,
                ItemId = _purchaseReceivalDetailService.GetObjectById(model.PurchaseReceivalDetailId).ItemId,
                Item = _itemService.GetObjectById(_purchaseReceivalDetailService.GetObjectById(model.PurchaseReceivalDetailId).ItemId).Name,
                model.Quantity,
                model.Amount,
                model.Errors
            }, JsonRequestBehavior.AllowGet));
        }
Exemple #3
0
        public PurchaseInvoiceDetail VQuantityIsLessThanOrEqualPendingInvoiceQuantity(PurchaseInvoiceDetail purchaseInvoiceDetail, IPurchaseReceivalDetailService _purchaseReceivalDetailService)
        {
            PurchaseReceivalDetail purchaseReceivalDetail = _purchaseReceivalDetailService.GetObjectById(purchaseInvoiceDetail.PurchaseReceivalDetailId);

            if (purchaseInvoiceDetail.Quantity > purchaseReceivalDetail.PendingInvoicedQuantity)
            {
                purchaseInvoiceDetail.Errors.Add("Generic", "Quantity harus kurang dari atau sama dengan pending invoice quantity");
            }
            return(purchaseInvoiceDetail);
        }
Exemple #4
0
        public PurchaseInvoiceDetail VHasPurchaseReceivalDetail(PurchaseInvoiceDetail purchaseInvoiceDetail, IPurchaseReceivalDetailService _purchaseReceivalDetailService)
        {
            PurchaseReceivalDetail prd = _purchaseReceivalDetailService.GetObjectById(purchaseInvoiceDetail.PurchaseReceivalDetailId);

            if (prd == null)
            {
                purchaseInvoiceDetail.Errors.Add("PurchaseReceivalDetail", "Tidak boleh tidak ada");
            }
            return(purchaseInvoiceDetail);
        }
Exemple #5
0
        public PurchaseInvoiceDetail VPurchaseReceivalDetailAndPurchaseInvoiceMustHaveTheSamePurchaseReceival(PurchaseInvoiceDetail purchaseInvoiceDetail,
                                                                                                              IPurchaseReceivalDetailService _purchaseReceivalDetailService, IPurchaseInvoiceService _purchaseInvoiceService)
        {
            PurchaseReceivalDetail purchaseReceivalDetail = _purchaseReceivalDetailService.GetObjectById(purchaseInvoiceDetail.PurchaseReceivalDetailId);
            PurchaseInvoice        purchaseInvoice        = _purchaseInvoiceService.GetObjectById(purchaseInvoiceDetail.PurchaseInvoiceId);

            if (purchaseReceivalDetail.PurchaseReceivalId != purchaseInvoice.PurchaseReceivalId)
            {
                purchaseReceivalDetail.Errors.Add("Generic", "Purchase receival detail dan purchase invoice memiliki purchase receival berbeda");
            }
            return(purchaseInvoiceDetail);
        }
Exemple #6
0
 public PurchaseInvoiceDetail UnconfirmObject(PurchaseInvoiceDetail purchaseInvoiceDetail, IPurchaseReceivalService _purchaseReceivalService,
                                              IPurchaseReceivalDetailService _purchaseReceivalDetailService)
 {
     if (_validator.ValidUnconfirmObject(purchaseInvoiceDetail))
     {
         purchaseInvoiceDetail = _repository.UnconfirmObject(purchaseInvoiceDetail);
         // reverse purchase receival detail PendingInvoiceQuantity
         PurchaseReceivalDetail purchaseReceivalDetail = _purchaseReceivalDetailService.GetObjectById(purchaseInvoiceDetail.PurchaseReceivalDetailId);
         _purchaseReceivalDetailService.UndoInvoiceObject(purchaseReceivalDetail, purchaseInvoiceDetail.Quantity, _purchaseReceivalService);
     }
     return(purchaseInvoiceDetail);
 }
Exemple #7
0
 public PurchaseInvoiceDetail ConfirmObject(PurchaseInvoiceDetail purchaseInvoiceDetail, DateTime ConfirmationDate,
                                            IPurchaseReceivalDetailService _purchaseReceivalDetailService)
 {
     purchaseInvoiceDetail.ConfirmationDate = ConfirmationDate;
     if (_validator.ValidConfirmObject(purchaseInvoiceDetail, this, _purchaseReceivalDetailService))
     {
         purchaseInvoiceDetail = _repository.ConfirmObject(purchaseInvoiceDetail);
         // update purchase receival detail PendingInvoiceQuantity
         PurchaseReceivalDetail purchaseReceivalDetail = _purchaseReceivalDetailService.GetObjectById(purchaseInvoiceDetail.PurchaseReceivalDetailId);
         _purchaseReceivalDetailService.InvoiceObject(purchaseReceivalDetail, purchaseInvoiceDetail.Quantity);
     }
     return(purchaseInvoiceDetail);
 }
Exemple #8
0
 public PurchaseInvoiceDetail UpdateObject(PurchaseInvoiceDetail purchaseInvoiceDetail, IPurchaseInvoiceService _purchaseInvoiceService,
                                           IPurchaseOrderDetailService _purchaseOrderDetailService, IPurchaseReceivalDetailService _purchaseReceivalDetailService)
 {
     if (_validator.ValidUpdateObject(purchaseInvoiceDetail, _purchaseInvoiceService, this, _purchaseReceivalDetailService))
     {
         PurchaseReceivalDetail purchaseReceivalDetail = _purchaseReceivalDetailService.GetObjectById(purchaseInvoiceDetail.PurchaseReceivalDetailId);
         PurchaseOrderDetail    purchaseOrderDetail    = _purchaseOrderDetailService.GetObjectById(purchaseReceivalDetail.PurchaseOrderDetailId);
         purchaseInvoiceDetail.Amount = purchaseInvoiceDetail.Quantity * purchaseOrderDetail.Price;
         _repository.UpdateObject(purchaseInvoiceDetail);
         PurchaseInvoice purchaseInvoice = _purchaseInvoiceService.GetObjectById(purchaseInvoiceDetail.PurchaseInvoiceId);
         _purchaseInvoiceService.CalculateAmountPayable(purchaseInvoice, this);
     }
     return(purchaseInvoiceDetail);
 }
Exemple #9
0
 public PurchaseInvoiceDetail CreateObject(PurchaseInvoiceDetail purchaseInvoiceDetail, IPurchaseInvoiceService _purchaseInvoiceService,
                                           IPurchaseOrderDetailService _purchaseOrderDetailService, IPurchaseReceivalDetailService _purchaseReceivalDetailService)
 {
     purchaseInvoiceDetail.Errors = new Dictionary <String, String>();
     if (_validator.ValidCreateObject(purchaseInvoiceDetail, _purchaseInvoiceService, this, _purchaseReceivalDetailService))
     {
         PurchaseReceivalDetail purchaseReceivalDetail = _purchaseReceivalDetailService.GetObjectById(purchaseInvoiceDetail.PurchaseReceivalDetailId);
         PurchaseOrderDetail    purchaseOrderDetail    = _purchaseOrderDetailService.GetObjectById(purchaseReceivalDetail.PurchaseOrderDetailId);
         purchaseInvoiceDetail.Amount = purchaseInvoiceDetail.Quantity * purchaseOrderDetail.Price;
         purchaseInvoiceDetail        = _repository.CreateObject(purchaseInvoiceDetail);
         PurchaseInvoice purchaseInvoice = _purchaseInvoiceService.GetObjectById(purchaseInvoiceDetail.PurchaseInvoiceId);
         _purchaseInvoiceService.CalculateAmountPayable(purchaseInvoice, this);
     }
     return(purchaseInvoiceDetail);
 }