public PurchaseReceival VHasNoPurchaseReceivalDetail(PurchaseReceival purchaseReceival, IPurchaseReceivalDetailService _purchaseReceivalDetailService) { IList <PurchaseReceivalDetail> details = _purchaseReceivalDetailService.GetObjectsByPurchaseReceivalId(purchaseReceival.Id); if (details.Any()) { purchaseReceival.Errors.Add("Generic", "Masih memiliki purchase receival detail"); } return(purchaseReceival); }
public PurchaseReceival CheckAndSetInvoiceComplete(PurchaseReceival purchaseReceival, IPurchaseReceivalDetailService _purchaseReceivalDetailService) { IList <PurchaseReceivalDetail> details = _purchaseReceivalDetailService.GetObjectsByPurchaseReceivalId(purchaseReceival.Id); foreach (var detail in details) { if (!detail.IsAllInvoiced) { return(purchaseReceival); } } return(_repository.SetInvoiceComplete(purchaseReceival)); }
public PurchaseReceivalDetail VUniquePurchaseOrderDetail(PurchaseReceivalDetail purchaseReceivalDetail, IPurchaseReceivalDetailService _purchaseReceivalDetailService, IItemService _itemService) { IList <PurchaseReceivalDetail> details = _purchaseReceivalDetailService.GetObjectsByPurchaseReceivalId(purchaseReceivalDetail.PurchaseReceivalId); foreach (var detail in details) { if (detail.PurchaseOrderDetailId == purchaseReceivalDetail.PurchaseOrderDetailId && detail.Id != purchaseReceivalDetail.Id) { purchaseReceivalDetail.Errors.Add("Generic", "Tidak boleh memiliki lebih dari 2 Purchase Receival Detail dalam satu purchase receival"); } } return(purchaseReceivalDetail); }
public dynamic GetListDetail(string _search, long nd, int rows, int?page, string sidx, string sord, int id, string filters = "") { // Construct where statement string strWhere = GeneralFunction.ConstructWhere(filters); // Get Data var query = _purchaseReceivalDetailService.GetObjectsByPurchaseReceivalId(id).Where(d => d.IsDeleted == false); var list = query as IEnumerable <PurchaseReceivalDetail>; var pageIndex = Convert.ToInt32(page) - 1; var pageSize = rows; var totalRecords = query.Count(); var totalPages = (int)Math.Ceiling((float)totalRecords / (float)pageSize); // default last page if (totalPages > 0) { if (!page.HasValue) { pageIndex = totalPages - 1; page = totalPages; } } list = list.Skip(pageIndex * pageSize).Take(pageSize); return(Json(new { total = totalPages, page = page, records = totalRecords, rows = ( from model in list select new { id = model.Id, cell = new object[] { model.Code, model.PurchaseOrderDetailId, _purchaseOrderDetailService.GetObjectById(model.PurchaseOrderDetailId).Code, model.ItemId, _itemService.GetObjectById(model.ItemId).Name, model.Quantity, } }).ToArray() }, JsonRequestBehavior.AllowGet)); }
public PurchaseReceival ConfirmObject(PurchaseReceival purchaseReceival, DateTime ConfirmationDate, IPurchaseReceivalDetailService _purchaseReceivalDetailService, IPurchaseOrderService _purchaseOrderService, IPurchaseOrderDetailService _purchaseOrderDetailService, IStockMutationService _stockMutationService, IItemService _itemService, IBarringService _barringService, IWarehouseItemService _warehouseItemService) { purchaseReceival.ConfirmationDate = ConfirmationDate; if (_validator.ValidConfirmObject(purchaseReceival, _purchaseReceivalDetailService)) { IList <PurchaseReceivalDetail> purchaseReceivalDetails = _purchaseReceivalDetailService.GetObjectsByPurchaseReceivalId(purchaseReceival.Id); foreach (var detail in purchaseReceivalDetails) { detail.Errors = new Dictionary <string, string>(); _purchaseReceivalDetailService.ConfirmObject(detail, ConfirmationDate, this, _purchaseOrderDetailService, _stockMutationService, _itemService, _barringService, _warehouseItemService); } _repository.ConfirmObject(purchaseReceival); PurchaseOrder purchaseOrder = _purchaseOrderService.GetObjectById(purchaseReceival.PurchaseOrderId); _purchaseOrderService.CheckAndSetReceivalComplete(purchaseOrder, _purchaseOrderDetailService); } return(purchaseReceival); }