public CashSalesInvoiceDetail UnconfirmObject(CashSalesInvoiceDetail cashSalesInvoiceDetail, IWarehouseItemService _warehouseItemService, IWarehouseService _warehouseService, IItemService _itemService, IBarringService _barringService, IStockMutationService _stockMutationService) { if (_validator.ValidUnconfirmObject(cashSalesInvoiceDetail)) { IList <StockMutation> stockMutations = _stockMutationService.GetObjectsBySourceDocumentDetailForItem(cashSalesInvoiceDetail.ItemId, Core.Constants.Constant.SourceDocumentDetailType.CashSalesInvoiceDetail, cashSalesInvoiceDetail.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); } cashSalesInvoiceDetail.CoGS = 0; cashSalesInvoiceDetail = _repository.UnconfirmObject(cashSalesInvoiceDetail); } return(cashSalesInvoiceDetail); }
public CashSalesInvoice VIsUnconfirmableCashSalesInvoiceDetails(CashSalesInvoice cashSalesInvoice, ICashSalesInvoiceDetailService _cashSalesInvoiceDetailService) { IList <CashSalesInvoiceDetail> cashSalesInvoiceDetails = _cashSalesInvoiceDetailService.GetObjectsByCashSalesInvoiceId(cashSalesInvoice.Id); if (!cashSalesInvoiceDetails.Any()) { cashSalesInvoice.Errors.Add("Generic", "CashSalesInvoiceDetails Tidak ada"); } else { ICashSalesInvoiceDetailValidator validator = _cashSalesInvoiceDetailService.GetValidator(); foreach (var cashSalesInvoiceDetail in cashSalesInvoiceDetails) { cashSalesInvoiceDetail.Errors = new Dictionary <string, string>(); if (!validator.ValidUnconfirmObject(cashSalesInvoiceDetail)) { cashSalesInvoice.Errors.Add("Generic", "CashSalesInvoiceDetails harus unconfirmable semua"); return(cashSalesInvoice); } } } return(cashSalesInvoice); }