public RollerWarehouseMutationDetail VCreateObject(RollerWarehouseMutationDetail rollerWarehouseMutationDetail, IRollerWarehouseMutationService _rollerWarehouseMutationService, ICoreIdentificationDetailService _coreIdentificationDetailService, IRollerWarehouseMutationDetailService _rollerWarehouseMutationDetailService, IItemService _itemService, IWarehouseItemService _warehouseItemService) { VHasCoreIdentificationDetail(rollerWarehouseMutationDetail, _coreIdentificationDetailService); if (!isValid(rollerWarehouseMutationDetail)) { return(rollerWarehouseMutationDetail); } VHasRollerWarehouseMutation(rollerWarehouseMutationDetail, _rollerWarehouseMutationService); if (!isValid(rollerWarehouseMutationDetail)) { return(rollerWarehouseMutationDetail); } VHasWarehouseItemFrom(rollerWarehouseMutationDetail, _rollerWarehouseMutationService, _warehouseItemService); if (!isValid(rollerWarehouseMutationDetail)) { return(rollerWarehouseMutationDetail); } VHasWarehouseItemTo(rollerWarehouseMutationDetail, _rollerWarehouseMutationService, _warehouseItemService); if (!isValid(rollerWarehouseMutationDetail)) { return(rollerWarehouseMutationDetail); } VUniqueCoreIdentificationDetail(rollerWarehouseMutationDetail, _rollerWarehouseMutationDetailService); return(rollerWarehouseMutationDetail); }
public RollerWarehouseMutationDetail ConfirmObject(RollerWarehouseMutationDetail rollerWarehouseMutationDetail, DateTime ConfirmationDate, IRollerWarehouseMutationService _rollerWarehouseMutationService, IItemService _itemService, IBarringService _barringService, IWarehouseItemService _warehouseItemService, IStockMutationService _stockMutationService, ICoreIdentificationDetailService _coreIdentificationDetailService, ICoreIdentificationService _coreIdentificationService) { rollerWarehouseMutationDetail.ConfirmationDate = ConfirmationDate; if (_validator.ValidConfirmObject(rollerWarehouseMutationDetail, _rollerWarehouseMutationService, _itemService, _barringService, _warehouseItemService)) { _repository.ConfirmObject(rollerWarehouseMutationDetail); // Set IsDelivered = true CoreIdentificationDetail coreIdentificationDetail = _coreIdentificationDetailService.GetObjectById(rollerWarehouseMutationDetail.CoreIdentificationDetailId); _coreIdentificationDetailService.DeliverObject(coreIdentificationDetail, _coreIdentificationService, this); // reduce warehouseFromItem // add warehouseToItem RollerWarehouseMutation rollerWarehouseMutation = _rollerWarehouseMutationService.GetObjectById(rollerWarehouseMutationDetail.RollerWarehouseMutationId); WarehouseItem warehouseItemFrom = _warehouseItemService.FindOrCreateObject(rollerWarehouseMutation.WarehouseFromId, rollerWarehouseMutationDetail.ItemId); WarehouseItem warehouseItemTo = _warehouseItemService.FindOrCreateObject(rollerWarehouseMutation.WarehouseToId, rollerWarehouseMutationDetail.ItemId); IList <StockMutation> stockMutations = _stockMutationService.CreateStockMutationForRollerWarehouseMutation(rollerWarehouseMutationDetail, warehouseItemFrom, warehouseItemTo); foreach (var stockMutation in stockMutations) { _stockMutationService.StockMutateObject(stockMutation, _itemService, _barringService, _warehouseItemService); } } return(rollerWarehouseMutationDetail); }
public dynamic GetInfoDetail(int Id) { RollerWarehouseMutationDetail model = new RollerWarehouseMutationDetail(); try { model = _rollerWarehouseMutationDetailService.GetObjectById(Id); } catch (Exception ex) { LOG.Error("GetInfo", ex); model.Errors.Add("Generic", "Error : " + ex); } return(Json(new { model.Id, model.Code, model.RollerWarehouseMutationId, model.CoreIdentificationDetailId, model.ItemId, Item = _itemService.GetObjectById(model.ItemId).Name, model.Errors }, JsonRequestBehavior.AllowGet)); }
public RollerWarehouseMutationDetail CreateObject(RollerWarehouseMutationDetail rollerWarehouseMutationDetail, IRollerWarehouseMutationService _rollerWarehouseMutationService, ICoreIdentificationDetailService _coreIdentificationDetailService, IItemService _itemService, IWarehouseItemService _warehouseItemService) { rollerWarehouseMutationDetail.Errors = new Dictionary <String, String>(); return(rollerWarehouseMutationDetail = _validator.ValidCreateObject(rollerWarehouseMutationDetail, _rollerWarehouseMutationService, _coreIdentificationDetailService, this, _itemService, _warehouseItemService) ? _repository.CreateObject(rollerWarehouseMutationDetail) : rollerWarehouseMutationDetail); }
public bool ValidUpdateObject(RollerWarehouseMutationDetail rollerWarehouseMutationDetail, IRollerWarehouseMutationService _rollerWarehouseMutationService, ICoreIdentificationDetailService _coreIdentificationDetailService, IRollerWarehouseMutationDetailService _rollerWarehouseMutationDetailService, IItemService _itemService, IWarehouseItemService _warehouseItemService) { rollerWarehouseMutationDetail.Errors.Clear(); VUpdateObject(rollerWarehouseMutationDetail, _rollerWarehouseMutationService, _coreIdentificationDetailService, _rollerWarehouseMutationDetailService, _itemService, _warehouseItemService); return(isValid(rollerWarehouseMutationDetail)); }
public RollerWarehouseMutationDetail UnconfirmObject(RollerWarehouseMutationDetail rollerWarehouseMutationDetail, IRollerWarehouseMutationService _rollerWarehouseMutationService, IItemService _itemService, IBarringService _barringService, IWarehouseItemService _warehouseItemService, IStockMutationService _stockMutationService, ICoreIdentificationDetailService _coreIdentificationDetailService, ICoreIdentificationService _coreIdentificationService) { if (_validator.ValidUnconfirmObject(rollerWarehouseMutationDetail, _rollerWarehouseMutationService, _itemService, _barringService, _warehouseItemService)) { _repository.UnconfirmObject(rollerWarehouseMutationDetail); // Set IsDelivered = false CoreIdentificationDetail coreIdentificationDetail = _coreIdentificationDetailService.GetObjectById(rollerWarehouseMutationDetail.CoreIdentificationDetailId); _coreIdentificationDetailService.UndoDeliverObject(coreIdentificationDetail, _coreIdentificationService, this); // reverse stock mutate warehouseFromItem and warehouseToItem RollerWarehouseMutation rollerWarehouseMutation = _rollerWarehouseMutationService.GetObjectById(rollerWarehouseMutationDetail.RollerWarehouseMutationId); WarehouseItem warehouseItemFrom = _warehouseItemService.FindOrCreateObject(rollerWarehouseMutation.WarehouseFromId, rollerWarehouseMutationDetail.ItemId); WarehouseItem warehouseItemTo = _warehouseItemService.FindOrCreateObject(rollerWarehouseMutation.WarehouseToId, rollerWarehouseMutationDetail.ItemId); IList <StockMutation> stockMutations = _stockMutationService.SoftDeleteStockMutationForRollerWarehouseMutation(rollerWarehouseMutationDetail, warehouseItemFrom, warehouseItemTo); foreach (var stockMutation in stockMutations) { _stockMutationService.ReverseStockMutateObject(stockMutation, _itemService, _barringService, _warehouseItemService); } } return(rollerWarehouseMutationDetail); }
public dynamic UpdateDetail(RollerWarehouseMutationDetail model) { try { var data1 = _coreIdentificationDetailService.GetObjectById(model.CoreIdentificationDetailId); var item = data1.MaterialCase == Core.Constants.Constant.MaterialCase.New ? _coreBuilderService.GetNewCore(data1.CoreBuilderId) : _coreBuilderService.GetUsedCore(data1.CoreBuilderId); model.ItemId = item.Id; var data = _rollerWarehouseMutationDetailService.GetObjectById(model.Id); data.RollerWarehouseMutationId = model.RollerWarehouseMutationId; data.CoreIdentificationDetailId = model.CoreIdentificationDetailId; data.ItemId = model.ItemId; model = _rollerWarehouseMutationDetailService.UpdateObject(data, _rollerWarehouseMutationService , _coreIdentificationDetailService, _itemService, _warehouseItemService); } catch (Exception ex) { LOG.Error("Update Failed", ex); model.Errors.Add("Generic", "Error : " + ex); } return(Json(new { model.Errors })); }
public bool ValidUnconfirmObject(RollerWarehouseMutationDetail rollerWarehouseMutationDetail, IRollerWarehouseMutationService _rollerWarehouseMutationService, IItemService _itemService, IBarringService _barringService, IWarehouseItemService _warehouseItemService) { rollerWarehouseMutationDetail.Errors.Clear(); VUnconfirmObject(rollerWarehouseMutationDetail, _rollerWarehouseMutationService, _itemService, _barringService, _warehouseItemService); return(isValid(rollerWarehouseMutationDetail)); }
public RollerWarehouseMutationDetail VHasBeenConfirmed(RollerWarehouseMutationDetail rollerWarehouseMutationDetail) { if (!rollerWarehouseMutationDetail.IsConfirmed) { rollerWarehouseMutationDetail.Errors.Add("IsConfirmed", "Harus sudah selesai."); } return(rollerWarehouseMutationDetail); }
public RollerWarehouseMutationDetail VHasConfirmationDate(RollerWarehouseMutationDetail rollerWarehouseMutationDetail) { if (rollerWarehouseMutationDetail.ConfirmationDate == null) { rollerWarehouseMutationDetail.Errors.Add("ConfirmedDate", "Tidak boleh kosong"); } return(rollerWarehouseMutationDetail); }
public RollerWarehouseMutationDetail VHasNotBeenConfirmed(RollerWarehouseMutationDetail rollerWarehouseMutationDetail) { if (rollerWarehouseMutationDetail.IsConfirmed) { rollerWarehouseMutationDetail.Errors.Add("IsConfirmed", "Tidak boleh sudah selesai."); } return(rollerWarehouseMutationDetail); }
public CoreIdentificationDetail VHasRollerWarehouseMutationDetail(CoreIdentificationDetail coreIdentificationDetail, IRollerWarehouseMutationDetailService _rollerWarehouseMutationDetailService) { RollerWarehouseMutationDetail rollerWarehouseMutationDetail = _rollerWarehouseMutationDetailService.GetObjectByCoreIdentificationDetailId(coreIdentificationDetail.Id); if (rollerWarehouseMutationDetail == null) { coreIdentificationDetail.Errors.Add("Generic", "Tidak ada roller mutasi"); } return(coreIdentificationDetail); }
public CoreIdentificationDetail VIsInRollerWarehouseMutationDetail(CoreIdentificationDetail coreIdentificationDetail, IRollerWarehouseMutationDetailService _rollerWarehouseMutationDetailService) { RollerWarehouseMutationDetail rollerWarehouseMutationDetail = _rollerWarehouseMutationDetailService.GetObjectByCoreIdentificationDetailId(coreIdentificationDetail.Id); if (rollerWarehouseMutationDetail != null) { coreIdentificationDetail.Errors.Add("Generic", "Tidak boleh terasosiasi dengan roller warehouse mutation detail"); } return(coreIdentificationDetail); }
public RollerWarehouseMutationDetail VHasCoreIdentificationDetail(RollerWarehouseMutationDetail rollerWarehouseMutationDetail, ICoreIdentificationDetailService _coreIdentificationDetailService) { CoreIdentificationDetail coreIdentificationDetail = _coreIdentificationDetailService.GetObjectById(rollerWarehouseMutationDetail.CoreIdentificationDetailId); if (coreIdentificationDetail == null) { rollerWarehouseMutationDetail.Errors.Add("CoreIdentificationDetailId", "Tidak terasosiasi dengan core identification detail"); } return(rollerWarehouseMutationDetail); }
public RollerWarehouseMutationDetail VHasRollerWarehouseMutation(RollerWarehouseMutationDetail rollerWarehouseMutationDetail, IRollerWarehouseMutationService _rollerWarehouseMutationService) { RollerWarehouseMutation rollerWarehouseMutation = _rollerWarehouseMutationService.GetObjectById(rollerWarehouseMutationDetail.RollerWarehouseMutationId); if (rollerWarehouseMutation == null) { rollerWarehouseMutationDetail.Errors.Add("RollerWarehouseMutationId", "Tidak terasosiasi dengan Roller Warehouse Mutation"); } return(rollerWarehouseMutationDetail); }
public RollerWarehouseMutationDetail VHasWarehouseItemTo(RollerWarehouseMutationDetail rollerWarehouseMutationDetail, IRollerWarehouseMutationService _rollerWarehouseMutationService, IWarehouseItemService _warehouseItemService) { RollerWarehouseMutation rollerWarehouseMutation = _rollerWarehouseMutationService.GetObjectById(rollerWarehouseMutationDetail.RollerWarehouseMutationId); WarehouseItem warehouseItemTo = _warehouseItemService.FindOrCreateObject(rollerWarehouseMutation.WarehouseToId, rollerWarehouseMutationDetail.ItemId); if (warehouseItemTo == null) { rollerWarehouseMutationDetail.Errors.Add("Generic", "Tidak terasosiasi dengan item dari warehouse yang dituju"); } return(rollerWarehouseMutationDetail); }
public RollerWarehouseMutationDetail VConfirmObject(RollerWarehouseMutationDetail rollerWarehouseMutationDetail, IRollerWarehouseMutationService _rollerWarehouseMutationService, IItemService _itemService, IBarringService _barringService, IWarehouseItemService _warehouseItemService) { VHasConfirmationDate(rollerWarehouseMutationDetail); if (!isValid(rollerWarehouseMutationDetail)) { return(rollerWarehouseMutationDetail); } VNonNegativeStockQuantity(rollerWarehouseMutationDetail, _rollerWarehouseMutationService, _itemService, _barringService, _warehouseItemService, true); return(rollerWarehouseMutationDetail); }
public RollerWarehouseMutationDetail CreateObject(int rollerWarehouseMutationId, int itemId, int quantity, IRollerWarehouseMutationService _rollerWarehouseMutationService, ICoreIdentificationDetailService _coreIdentificationDetailService, IItemService _itemService, IWarehouseItemService _warehouseItemService) { RollerWarehouseMutationDetail rollerWarehouseMutationDetail = new RollerWarehouseMutationDetail { RollerWarehouseMutationId = rollerWarehouseMutationId, ItemId = itemId, // Price = price }; return(this.CreateObject(rollerWarehouseMutationDetail, _rollerWarehouseMutationService, _coreIdentificationDetailService, _itemService, _warehouseItemService)); }
public string PrintError(RollerWarehouseMutationDetail 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 RollerWarehouseMutationDetail VUniqueCoreIdentificationDetail(RollerWarehouseMutationDetail rollerWarehouseMutationDetail, IRollerWarehouseMutationDetailService _rollerWarehouseMutationDetailService) { IList <RollerWarehouseMutationDetail> details = _rollerWarehouseMutationDetailService.GetObjectsByRollerWarehouseMutationId(rollerWarehouseMutationDetail.RollerWarehouseMutationId); foreach (var detail in details) { if (detail.CoreIdentificationDetailId == rollerWarehouseMutationDetail.CoreIdentificationDetailId && detail.Id != rollerWarehouseMutationDetail.Id) { rollerWarehouseMutationDetail.Errors.Add("ItemId", "Tidak boleh ada duplikasi core identification detail dalam 1 Roller Warehouse Mutation"); } } return(rollerWarehouseMutationDetail); }
public RollerWarehouseMutationDetail VNonNegativeStockQuantity(RollerWarehouseMutationDetail rollerWarehouseMutationDetail, IRollerWarehouseMutationService _rollerWarehouseMutationService, IItemService _itemService, IBarringService _barringService, IWarehouseItemService _warehouseItemService, bool CaseConfirm) { int Quantity = CaseConfirm ? 1 : -1; RollerWarehouseMutation rollerWarehouseMutation = _rollerWarehouseMutationService.GetObjectById(rollerWarehouseMutationDetail.RollerWarehouseMutationId); WarehouseItem warehouseItemFrom = _warehouseItemService.FindOrCreateObject(rollerWarehouseMutation.WarehouseFromId, rollerWarehouseMutationDetail.ItemId); if (warehouseItemFrom.Quantity + Quantity < 0) { rollerWarehouseMutationDetail.Errors.Add("Quantity", "Stock barang tidak boleh menjadi kurang dari 0"); return(rollerWarehouseMutationDetail); } return(rollerWarehouseMutationDetail); }
public RollerWarehouseMutationDetail VUpdateObject(RollerWarehouseMutationDetail rollerWarehouseMutationDetail, IRollerWarehouseMutationService _rollerWarehouseMutationService, ICoreIdentificationDetailService _coreIdentificationDetailService, IRollerWarehouseMutationDetailService _rollerWarehouseMutationDetailService, IItemService _itemService, IWarehouseItemService _warehouseItemService) { VHasCoreIdentificationDetail(rollerWarehouseMutationDetail, _coreIdentificationDetailService); if (!isValid(rollerWarehouseMutationDetail)) { return(rollerWarehouseMutationDetail); } VHasNotBeenConfirmed(rollerWarehouseMutationDetail); if (!isValid(rollerWarehouseMutationDetail)) { return(rollerWarehouseMutationDetail); } VCreateObject(rollerWarehouseMutationDetail, _rollerWarehouseMutationService, _coreIdentificationDetailService, _rollerWarehouseMutationDetailService, _itemService, _warehouseItemService); return(rollerWarehouseMutationDetail); }
public dynamic DeleteDetail(RollerWarehouseMutationDetail model) { try { var data = _rollerWarehouseMutationDetailService.GetObjectById(model.Id); model = _rollerWarehouseMutationDetailService.SoftDeleteObject(data, _rollerWarehouseMutationService, _warehouseItemService); } catch (Exception ex) { LOG.Error("Delete Failed", ex); model.Errors.Add("Generic", "Error : " + ex); } return(Json(new { model.Errors })); }
public RollerWarehouseMutationDetail VUnconfirmObject(RollerWarehouseMutationDetail rollerWarehouseMutationDetail, IRollerWarehouseMutationService _rollerWarehouseMutationService, IItemService _itemService, IBarringService _barringService, IWarehouseItemService _warehouseItemService) { VRollerWarehouseMutationHasBeenConfirmed(rollerWarehouseMutationDetail, _rollerWarehouseMutationService); if (!isValid(rollerWarehouseMutationDetail)) { return(rollerWarehouseMutationDetail); } VRollerWarehouseMutationHasNotBeenCompleted(rollerWarehouseMutationDetail, _rollerWarehouseMutationService); if (!isValid(rollerWarehouseMutationDetail)) { return(rollerWarehouseMutationDetail); } VHasBeenConfirmed(rollerWarehouseMutationDetail); if (!isValid(rollerWarehouseMutationDetail)) { return(rollerWarehouseMutationDetail); } VNonNegativeStockQuantity(rollerWarehouseMutationDetail, _rollerWarehouseMutationService, _itemService, _barringService, _warehouseItemService, false); return(rollerWarehouseMutationDetail); }
public IList <StockMutation> CreateStockMutationForRollerWarehouseMutation(RollerWarehouseMutationDetail rollerWarehouseMutationDetail, WarehouseItem warehouseItemFrom, WarehouseItem warehouseItemTo) { IList <StockMutation> stockMutations = new List <StockMutation>(); StockMutation stockMutationFrom = new StockMutation(); stockMutationFrom.ItemId = warehouseItemFrom.ItemId; stockMutationFrom.WarehouseId = warehouseItemFrom.WarehouseId; stockMutationFrom.WarehouseItemId = warehouseItemFrom.Id; stockMutationFrom.Quantity = 1; stockMutationFrom.SourceDocumentType = Constant.SourceDocumentType.RollerWarehouseMutation; stockMutationFrom.SourceDocumentId = rollerWarehouseMutationDetail.RollerWarehouseMutationId; //stockMutationFrom.SourceDocumentCode = rollerWarehouseMutationDetail.RollerWarehouseMutationCode; stockMutationFrom.SourceDocumentDetailType = Constant.SourceDocumentDetailType.RollerWarehouseMutationDetail; stockMutationFrom.SourceDocumentDetailId = rollerWarehouseMutationDetail.Id; stockMutationFrom.SourceDocumentDetailCode = rollerWarehouseMutationDetail.Code; stockMutationFrom.ItemCase = Constant.ItemCase.Ready; stockMutationFrom.Status = Constant.MutationStatus.Deduction; stockMutationFrom = _repository.CreateObject(stockMutationFrom); StockMutation stockMutationTo = new StockMutation(); stockMutationTo.ItemId = warehouseItemTo.ItemId; stockMutationTo.WarehouseId = warehouseItemTo.WarehouseId; stockMutationTo.WarehouseItemId = warehouseItemTo.Id; stockMutationTo.Quantity = 1; stockMutationTo.SourceDocumentType = Constant.SourceDocumentType.RollerWarehouseMutation; stockMutationTo.SourceDocumentId = rollerWarehouseMutationDetail.RollerWarehouseMutationId; //stockMutationTo.SourceDocumentCode = rollerWarehouseMutationDetail.RollerWarehouseMutationCode; stockMutationTo.SourceDocumentDetailType = Constant.SourceDocumentDetailType.RollerWarehouseMutationDetail; stockMutationTo.SourceDocumentDetailId = rollerWarehouseMutationDetail.Id; stockMutationTo.SourceDocumentDetailCode = rollerWarehouseMutationDetail.Code; stockMutationTo.ItemCase = Constant.ItemCase.Ready; stockMutationTo.Status = Constant.MutationStatus.Addition; stockMutationTo = _repository.CreateObject(stockMutationTo); stockMutations.Add(stockMutationFrom); stockMutations.Add(stockMutationTo); return(stockMutations); }
public RollerWarehouseMutationDetail VRollerWarehouseMutationHasNotBeenCompleted(RollerWarehouseMutationDetail rollerWarehouseMutationDetail, IRollerWarehouseMutationService _rollerWarehouseMutationService) { RollerWarehouseMutation rollerWarehouseMutation = _rollerWarehouseMutationService.GetObjectById(rollerWarehouseMutationDetail.RollerWarehouseMutationId); if (rollerWarehouseMutation.IsCompleted) { rollerWarehouseMutationDetail.Errors.Add("Generic", "RollerWarehouseMutation tidak boleh sudah complete"); } return(rollerWarehouseMutationDetail); }
public RollerWarehouseMutationDetail VRollerWarehouseMutationHasBeenConfirmed(RollerWarehouseMutationDetail rollerWarehouseMutationDetail, IRollerWarehouseMutationService _rollerWarehouseMutationService) { RollerWarehouseMutation rollerWarehouseMutation = _rollerWarehouseMutationService.GetObjectById(rollerWarehouseMutationDetail.RollerWarehouseMutationId); if (!rollerWarehouseMutation.IsConfirmed) { rollerWarehouseMutationDetail.Errors.Add("Generic", "RollerWarehouseMutation harus sudah dikonfirmasi"); } return(rollerWarehouseMutationDetail); }
public bool ValidCreateObject(RollerWarehouseMutationDetail rollerWarehouseMutationDetail, IRollerWarehouseMutationService _rollerWarehouseMutationService, ICoreIdentificationDetailService _coreIdentificationDetailService, IRollerWarehouseMutationDetailService _rollerWarehouseMutationDetailService, IItemService _itemService, IWarehouseItemService _warehouseItemService) { VCreateObject(rollerWarehouseMutationDetail, _rollerWarehouseMutationService, _coreIdentificationDetailService, _rollerWarehouseMutationDetailService, _itemService, _warehouseItemService); return(isValid(rollerWarehouseMutationDetail)); }
public bool isValid(RollerWarehouseMutationDetail obj) { bool isValid = !obj.Errors.Any(); return(isValid); }
public bool ValidDeleteObject(RollerWarehouseMutationDetail rollerWarehouseMutationDetail) { rollerWarehouseMutationDetail.Errors.Clear(); VDeleteObject(rollerWarehouseMutationDetail); return(isValid(rollerWarehouseMutationDetail)); }