Beispiel #1
0
 public Barring SoftDeleteObject(Barring barring, IItemTypeService _itemTypeService, IWarehouseItemService _warehouseItemService,
                                 IPriceMutationService _priceMutationService)
 {
     if (_validator.ValidDeleteObject(barring, _itemTypeService, _warehouseItemService))
     {
         IList <WarehouseItem> allwarehouseitems = _warehouseItemService.GetObjectsByItemId(barring.Id);
         foreach (var warehouseitem in allwarehouseitems)
         {
             IWarehouseItemValidator warehouseItemValidator = _warehouseItemService.GetValidator();
             if (!warehouseItemValidator.ValidDeleteObject(warehouseitem))
             {
                 barring.Errors.Add("Generic", "Tidak bisa menghapus item yang berhubungan dengan warehouse");
                 return(barring);
             }
         }
         foreach (var warehouseitem in allwarehouseitems)
         {
             _warehouseItemService.SoftDeleteObject(warehouseitem);
         }
         _repository.SoftDeleteObject(barring);
         IList <PriceMutation> priceMutations = _priceMutationService.GetActiveObjectsByItemId(barring.Id);
         foreach (var priceMutation in priceMutations)
         {
             _priceMutationService.DeactivateObject(priceMutation, barring.DeletedAt);
         }
     }
     return(barring);
 }
Beispiel #2
0
        public Item SoftDeleteLegacyObject(Item item, IStockMutationService _stockMutationService, IItemTypeService _itemTypeService, IWarehouseItemService _warehouseItemService, IBarringService _barringService)
        {
            Barring barring = _barringService.GetObjectById(item.Id);

            if (barring != null)
            {
                _barringService.SoftDeleteObject(barring, _itemTypeService, _warehouseItemService);
                return(barring);
            }

            if (_validator.ValidDeleteLegacyObject(item, _stockMutationService, _itemTypeService, _warehouseItemService))
            {
                IList <WarehouseItem> allwarehouseitems = _warehouseItemService.GetObjectsByItemId(item.Id);
                foreach (var warehouseitem in allwarehouseitems)
                {
                    IWarehouseItemValidator warehouseItemValidator = _warehouseItemService.GetValidator();
                    if (!warehouseItemValidator.ValidDeleteObject(warehouseitem))
                    {
                        item.Errors.Add("Generic", "Tidak bisa menghapus item yang berhubungan dengan warehouse");
                        return(item);
                    }
                }
                foreach (var warehouseitem in allwarehouseitems)
                {
                    _warehouseItemService.SoftDeleteObject(warehouseitem);
                }
                _repository.SoftDeleteObject(item);
            }
            return(item);
        }
Beispiel #3
0
        public async Task <IActionResult> Edit(int id, [Bind("Idbarring,Code,NormalisedCode,Description,Status,FkCustomer")] Barring barring)
        {
            if (id != barring.Idbarring)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(barring);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!BarringExists(barring.Idbarring))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(barring));
        }
Beispiel #4
0
        public Item SoftDeleteLegacyObject(Item item, IStockMutationService _stockMutationService, IItemTypeService _itemTypeService, IWarehouseItemService _warehouseItemService, IBarringService _barringService, IPurchaseOrderDetailService _purchaseOrderDetailService, IStockAdjustmentDetailService _stockAdjustmentDetailService, ISalesOrderDetailService _salesOrderDetailService, IPriceMutationService _priceMutationService)
        {
            Barring barring = _barringService.GetObjectById(item.Id);

            if (barring != null)
            {
                _barringService.SoftDeleteObject(barring, _itemTypeService, _warehouseItemService, _priceMutationService);
                return(barring);
            }

            if (_validator.ValidDeleteLegacyObject(item, _stockMutationService, _itemTypeService, _warehouseItemService, _purchaseOrderDetailService, _stockAdjustmentDetailService, _salesOrderDetailService))
            {
                IList <WarehouseItem> allwarehouseitems = _warehouseItemService.GetObjectsByItemId(item.Id);
                foreach (var warehouseitem in allwarehouseitems)
                {
                    IWarehouseItemValidator warehouseItemValidator = _warehouseItemService.GetValidator();
                    if (!warehouseItemValidator.ValidDeleteObject(warehouseitem))
                    {
                        item.Errors.Add("Generic", "Tidak bisa menghapus item yang berhubungan dengan warehouse");
                        return(item);
                    }
                }
                foreach (var warehouseitem in allwarehouseitems)
                {
                    _warehouseItemService.SoftDeleteObject(warehouseitem);
                }
                _repository.SoftDeleteObject(item);
                IList <PriceMutation> priceMutations = _priceMutationService.GetActiveObjectsByItemId(item.Id);
                foreach (var priceMutation in priceMutations)
                {
                    _priceMutationService.DeactivateObject(priceMutation, item.DeletedAt);
                }
            }
            return(item);
        }
Beispiel #5
0
 public bool ValidUpdateObject(Barring barring, IBarringService _barringService, IUoMService _uomService, IItemService _itemService, IItemTypeService _itemTypeService,
                               IContactService _contactService, IMachineService _machineService)
 {
     barring.Errors.Clear();
     VUpdateObject(barring, _barringService, _uomService, _itemService, _itemTypeService, _contactService, _machineService);
     return(isValid(barring));
 }
Beispiel #6
0
        public Item UpdateLegacyObject(Item item, IUoMService _uomService, IItemTypeService _itemTypeService, IWarehouseItemService _warehouseItemService, IWarehouseService _warehouseService,
                                       IBarringService _barringService, IContactService _contactService, IMachineService _machineService,
                                       IPriceMutationService _priceMutationService, IContactGroupService _contactGroupService)
        {
            Barring barring = _barringService.GetObjectById(item.Id);

            if (barring != null)
            {
                _barringService.UpdateObject(barring, _barringService, _uomService, this, _itemTypeService,
                                             _contactService, _machineService, _warehouseItemService, _warehouseService,
                                             _contactGroupService, _priceMutationService);
                return(barring);
            }

            if (_validator.ValidUpdateLegacyObject(item, _uomService, this, _itemTypeService))
            {
                ContactGroup  contactGroup     = _contactGroupService.GetObjectByIsLegacy(true);
                Item          olditem          = _repository.GetObjectById(item.Id); // Note: olditem might be pointing to the same memory with item (share the same contents)
                PriceMutation oldpriceMutation = _priceMutationService.GetObjectById(item.PriceMutationId);
                if (olditem.SellingPrice != item.SellingPrice)
                {
                    DateTime      priceMutationTimeStamp = DateTime.Now;
                    PriceMutation priceMutation          = _priceMutationService.CreateObject(item, /*contactGroup,*/ priceMutationTimeStamp);
                    item.PriceMutationId = priceMutation.Id;
                    _priceMutationService.DeactivateObject(oldpriceMutation, priceMutationTimeStamp);
                }
                item = _repository.UpdateObject(item);
            }
            return(item);
        }
Beispiel #7
0
 public Barring UpdateObject(Barring barring, IBarringService _barringService, IUoMService _uomService, IItemService _itemService, IItemTypeService _itemTypeService,
                             IContactService _contactService, IMachineService _machineService,
                             IWarehouseItemService _warehouseItemService, IWarehouseService _warehouseService)
 {
     return(barring = _validator.ValidUpdateObject(barring, _barringService, _uomService, _itemService, _itemTypeService, _contactService, _machineService) ?
                      _repository.UpdateObject(barring) : barring);
 }
Beispiel #8
0
        public BarringOrder VQuantityIsInStock(BarringOrder barringOrder, IBarringOrderDetailService _barringOrderDetailService, IBarringService _barringService,
                                               IItemService _itemService, IWarehouseItemService _warehouseItemService)
        {
            IList <BarringOrderDetail> details = _barringOrderDetailService.GetObjectsByBarringOrderId(barringOrder.Id);

            // itemId contains Id of the blanket, leftbar, and rightbar
            IDictionary <int, int> ValuePairItemIdQuantity = new Dictionary <int, int>();

            foreach (var detail in details)
            {
                Barring barring = _barringService.GetObjectById(detail.BarringId);
                // blanket
                if (ValuePairItemIdQuantity.ContainsKey(barring.BlanketItemId))
                {
                    ValuePairItemIdQuantity[barring.BlanketItemId] += 1;
                }
                else
                {
                    ValuePairItemIdQuantity.Add(barring.BlanketItemId, 1);
                }

                // leftbar
                if (barring.LeftBarItemId != null)
                {
                    if (ValuePairItemIdQuantity.ContainsKey((int)barring.LeftBarItemId))
                    {
                        ValuePairItemIdQuantity[(int)barring.LeftBarItemId] += 1;
                    }
                    else
                    {
                        ValuePairItemIdQuantity.Add((int)barring.LeftBarItemId, 1);
                    }
                }

                // rightbar
                if (barring.RightBarItemId != null)
                {
                    if (ValuePairItemIdQuantity.ContainsKey((int)barring.RightBarItemId))
                    {
                        ValuePairItemIdQuantity[(int)barring.RightBarItemId] += 1;
                    }
                    else
                    {
                        ValuePairItemIdQuantity.Add((int)barring.RightBarItemId, 1);
                    }
                }
            }

            foreach (var ValuePair in ValuePairItemIdQuantity)
            {
                WarehouseItem warehouseItem = _warehouseItemService.FindOrCreateObject(barringOrder.WarehouseId, ValuePair.Key);
                if (warehouseItem.Quantity < ValuePair.Value)
                {
                    barringOrder.Errors.Add("Generic", "Stock quantity BoM untuk barring tidak boleh kurang dari jumlah di dalam barring order");
                    return(barringOrder);
                }
            }
            return(barringOrder);
        }
Beispiel #9
0
 public Barring VHasBar(Barring barring, int itemId, IItemService _itemService)
 {
     if (_itemService.GetObjectById(itemId) == null)
     {
         barring.Errors.Add("Generic", "Bar tidak terasosiasi di dalam system");
     }
     return(barring);
 }
Beispiel #10
0
 public Barring VHasNoBar(Barring barring, int itemId, IItemService _itemService)
 {
     if (_itemService.GetObjectById(itemId) != null)
     {
         barring.Errors.Add("Generic", "Bar tidak boleh terisi");
     }
     return(barring);
 }
Beispiel #11
0
 public Barring VHasName(Barring barring)
 {
     if (String.IsNullOrEmpty(barring.Name) || barring.Name.Trim() == "")
     {
         barring.Errors.Add("Name", "Tidak boleh kosong");
     }
     return(barring);
 }
Beispiel #12
0
 public Barring VHasCategory(Barring barring)
 {
     if (String.IsNullOrEmpty(barring.Category) || barring.Category.Trim() == "")
     {
         barring.Errors.Add("Category", "Tidak boleh kosong");
     }
     return(barring);
 }
Beispiel #13
0
        public Barring VHasContact(Barring barring, IContactService _contactService)
        {
            Contact contact = _contactService.GetObjectById(barring.ContactId);

            if (contact == null)
            {
                barring.Errors.Add("ContactId", "Tidak terasosiasi dengan contact");
            }
            return(barring);
        }
Beispiel #14
0
        public Barring VHasBlanket(Barring barring, IItemService _itemService)
        {
            Item blanket = _itemService.GetObjectById(barring.BlanketItemId);

            if (blanket == null)
            {
                barring.Errors.Add("BlanketItemId", "Tidak terasosiasi dengan blanket item");
            }
            return(barring);
        }
        public BarringOrderDetail VHasBarring(BarringOrderDetail barringOrderDetail, IBarringService _barringService)
        {
            Barring barring = _barringService.GetObjectById(barringOrderDetail.BarringId);

            if (barring == null)
            {
                barringOrderDetail.Errors.Add("BarringId", "Tidak terasosiasi dengan Barring");
            }
            return(barringOrderDetail);
        }
Beispiel #16
0
        public Barring VHasMachine(Barring barring, IMachineService _machineService)
        {
            Machine machine = _machineService.GetObjectById(barring.MachineId);

            if (machine == null)
            {
                barring.Errors.Add("MachineId", "Tidak terasosiasi dengan mesin");
            }
            return(barring);
        }
Beispiel #17
0
 public Barring VDeleteObject(Barring barring, IItemTypeService _itemTypeService, IWarehouseItemService _warehouseItemService)
 {
     VHasItemTypeAndIsLegacy(barring, _itemTypeService);
     if (!isValid(barring))
     {
         return(barring);
     }
     VWarehouseQuantityMustBeZero(barring, _warehouseItemService);
     return(barring);
 }
Beispiel #18
0
        public Barring VHasUoM(Barring barring, IUoMService _uomService)
        {
            UoM uom = _uomService.GetObjectById(barring.UoMId);

            if (uom == null)
            {
                barring.Errors.Add("UoMId", "Tidak terasosiasi dengan Unit of Measurement");
            }
            return(barring);
        }
Beispiel #19
0
        public Barring VCreateObject(Barring barring, IBarringService _barringService, IUoMService _uomService, IItemService _itemService, IItemTypeService _itemTypeService,
                                     IContactService _contactService, IMachineService _machineService)
        {
            // Item Validation

            VHasItemTypeAndIsLegacy(barring, _itemTypeService);
            if (!isValid(barring))
            {
                return(barring);
            }
            VHasUniqueSku(barring, _barringService);
            if (!isValid(barring))
            {
                return(barring);
            }
            VHasName(barring);
            if (!isValid(barring))
            {
                return(barring);
            }
            VHasCategory(barring);
            if (!isValid(barring))
            {
                return(barring);
            }
            VHasUoM(barring, _uomService);
            if (!isValid(barring))
            {
                return(barring);
            }
            VNonNegativeQuantity(barring);
            if (!isValid(barring))
            {
                return(barring);
            }

            // Bar Validation
            VHasBlanket(barring, _itemService);
            if (!isValid(barring))
            {
                return(barring);
            }
            VHasContact(barring, _contactService);
            if (!isValid(barring))
            {
                return(barring);
            }
            VHasMachine(barring, _machineService);
            if (!isValid(barring))
            {
                return(barring);
            }
            VHasMeasurement(barring);
            return(barring);
        }
Beispiel #20
0
 public Barring CreateObject(Barring barring, IBarringService _barringService, IUoMService _uomService, IItemService _itemService, IItemTypeService _itemTypeService,
                             IContactService _contactService, IMachineService _machineService,
                             IWarehouseItemService _warehouseItemService, IWarehouseService _warehouseService)
 {
     barring.Errors = new Dictionary <String, String>();
     if (_validator.ValidCreateObject(barring, _barringService, _uomService, _itemService, _itemTypeService, _contactService, _machineService))
     {
         barring = _repository.CreateObject(barring);
     }
     return(barring);
 }
Beispiel #21
0
        public async Task <IActionResult> Create([Bind("Idbarring,Code,NormalisedCode,Description,Status,FkCustomer")] Barring barring)
        {
            if (ModelState.IsValid)
            {
                _context.Add(barring);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(barring));
        }
        public BarringOrderDetail FinishObject(BarringOrderDetail barringOrderDetail, DateTime FinishedDate, IBarringOrderService _barringOrderService, IStockMutationService _stockMutationService,
                                               IBarringService _barringService, IItemService _itemService, IWarehouseItemService _warehouseItemService)
        {
            barringOrderDetail.FinishedDate = FinishedDate;
            if (_validator.ValidFinishObject(barringOrderDetail, _barringOrderService))
            {
                _repository.FinishObject(barringOrderDetail);

                // add barring order quantity final
                // if valid, complete barring order = true
                BarringOrder barringOrder = _barringOrderService.GetObjectById(barringOrderDetail.BarringOrderId);
                barringOrder.QuantityFinal += 1;
                _barringOrderService.AdjustQuantity(barringOrder);
                if (_barringOrderService.GetValidator().ValidCompleteObject(barringOrder, this))
                {
                    _barringOrderService.CompleteObject(barringOrder, this, _barringService, _itemService, _warehouseItemService);
                }

                bool CaseAdditionElse    = false;
                bool CaseAdditionBarring = true;

                // add barring quantity
                Barring       barring          = _barringService.GetObjectById(barringOrderDetail.BarringId);
                WarehouseItem warehouseBarring = _warehouseItemService.FindOrCreateObject(barringOrder.WarehouseId, barring.Id);
                StockMutation stockMutation    = _stockMutationService.CreateStockMutationForBarringOrder(barringOrderDetail, warehouseBarring, CaseAdditionBarring);
                _stockMutationService.StockMutateObject(stockMutation, _itemService, _barringService, _warehouseItemService);

                // deduce bars quantity
                if (barringOrderDetail.IsBarRequired)
                {
                    Item leftbar  = (barringOrderDetail.HasLeftBar && barring.LeftBarItemId != null) ? _itemService.GetObjectById((int)barring.LeftBarItemId) : null;
                    Item rightbar = (barringOrderDetail.HasRightBar && barring.RightBarItemId != null) ? _itemService.GetObjectById((int)barring.RightBarItemId) : null;
                    if (leftbar != null)
                    {
                        WarehouseItem warehouseLeftBar     = _warehouseItemService.FindOrCreateObject(barringOrder.WarehouseId, leftbar.Id);
                        StockMutation stockMutationLeftBar = _stockMutationService.CreateStockMutationForBarringOrder(barringOrderDetail, warehouseLeftBar, CaseAdditionElse);
                        _stockMutationService.StockMutateObject(stockMutationLeftBar, _itemService, _barringService, _warehouseItemService);
                    }
                    if (rightbar != null)
                    {
                        WarehouseItem warehouseRightBar     = _warehouseItemService.FindOrCreateObject(barringOrder.WarehouseId, rightbar.Id);
                        StockMutation stockMutationRightBar = _stockMutationService.CreateStockMutationForBarringOrder(barringOrderDetail, warehouseRightBar, CaseAdditionElse);
                        _stockMutationService.StockMutateObject(stockMutationRightBar, _itemService, _barringService, _warehouseItemService);
                    }
                }

                // deduce blanket quantity
                WarehouseItem warehouseBlanket     = _warehouseItemService.FindOrCreateObject(barringOrder.WarehouseId, barring.BlanketItemId);
                StockMutation stockMutationBlanket = _stockMutationService.CreateStockMutationForBarringOrder(barringOrderDetail, warehouseBlanket, CaseAdditionElse);
                _stockMutationService.StockMutateObject(stockMutationBlanket, _itemService, _barringService, _warehouseItemService);
            }
            return(barringOrderDetail);
        }
        public BarringOrderDetail UnfinishObject(BarringOrderDetail barringOrderDetail, IBarringOrderService _barringOrderService, IStockMutationService _stockMutationService,
                                                 IBarringService _barringService, IItemService _itemService, IWarehouseItemService _warehouseItemService)
        {
            if (_validator.ValidUnfinishObject(barringOrderDetail, _barringOrderService))
            {
                _repository.UnfinishObject(barringOrderDetail);
                // deduce barring order quantity final
                BarringOrder barringOrder = _barringOrderService.GetObjectById(barringOrderDetail.BarringOrderId);
                barringOrder.QuantityFinal -= 1;
                _barringOrderService.AdjustQuantity(barringOrder);

                // reverse stock mutation
                Barring               barring          = _barringService.GetObjectById(barringOrderDetail.BarringId);
                WarehouseItem         warehouseBarring = _warehouseItemService.FindOrCreateObject(barringOrder.WarehouseId, barring.Id);
                IList <StockMutation> stockMutations   = _stockMutationService.SoftDeleteStockMutationForBarringOrder(barringOrderDetail, warehouseBarring);
                foreach (var stockMutation in stockMutations)
                {
                    _stockMutationService.ReverseStockMutateObject(stockMutation, _itemService, _barringService, _warehouseItemService);
                }

                if (barringOrderDetail.IsBarRequired)
                {
                    Item leftbar  = (barringOrderDetail.HasLeftBar && barring.LeftBarItemId != null) ? _itemService.GetObjectById((int)barring.LeftBarItemId) : null;
                    Item rightbar = (barringOrderDetail.HasRightBar && barring.RightBarItemId != null) ? _itemService.GetObjectById((int)barring.RightBarItemId) : null;
                    if (leftbar != null)
                    {
                        WarehouseItem         warehouseLeftBar      = _warehouseItemService.FindOrCreateObject(barringOrder.WarehouseId, leftbar.Id);
                        IList <StockMutation> stockMutationLeftBars = _stockMutationService.SoftDeleteStockMutationForBarringOrder(barringOrderDetail, warehouseLeftBar);
                        foreach (var stockMutationLeftBar in stockMutationLeftBars)
                        {
                            _stockMutationService.ReverseStockMutateObject(stockMutationLeftBar, _itemService, _barringService, _warehouseItemService);
                        }
                    }
                    if (rightbar != null)
                    {
                        WarehouseItem         warehouseRightBar      = _warehouseItemService.FindOrCreateObject(barringOrder.WarehouseId, rightbar.Id);
                        IList <StockMutation> stockMutationRightBars = _stockMutationService.SoftDeleteStockMutationForBarringOrder(barringOrderDetail, warehouseRightBar);
                        foreach (var stockMutationRightBar in stockMutationRightBars)
                        {
                            _stockMutationService.ReverseStockMutateObject(stockMutationRightBar, _itemService, _barringService, _warehouseItemService);
                        }
                    }
                }

                WarehouseItem         warehouseBlanket      = _warehouseItemService.FindOrCreateObject(barringOrder.WarehouseId, barring.BlanketItemId);
                IList <StockMutation> stockMutationBlankets = _stockMutationService.SoftDeleteStockMutationForBarringOrder(barringOrderDetail, warehouseBlanket);
                foreach (var stockMutationBlanket in stockMutationBlankets)
                {
                    _stockMutationService.ReverseStockMutateObject(stockMutationBlanket, _itemService, _barringService, _warehouseItemService);
                }
            }
            return(barringOrderDetail);
        }
Beispiel #24
0
 public Barring VHasUniqueSku(Barring barring, IBarringService _barringService)
 {
     if (String.IsNullOrEmpty(barring.Sku) || barring.Sku.Trim() == "")
     {
         barring.Errors.Add("Sku", "Tidak boleh kosong");
     }
     else if (_barringService.IsSkuDuplicated(barring))
     {
         barring.Errors.Add("Sku", "Tidak boleh diduplikasi");
     }
     return(barring);
 }
Beispiel #25
0
 public Barring VHasMeasurement(Barring barring)
 {
     if (barring.AC <= 0)
     {
         barring.Errors.Add("AC", "Tidak boleh negatif atau 0");
     }
     else if (barring.AR <= 0)
     {
         barring.Errors.Add("AR", "Tidak boleh negatif atau 0");
     }
     return(barring);
 }
        public void StockMutateObject(StockMutation stockMutation, IItemService _itemService, IBarringService _barringService, IWarehouseItemService _warehouseItemService)
        {
            // decimal stockAdjustmentDetailPrice = (stockMutation.Status == Constant.MutationStatus.Addition) ? stockAdjustmentDetail.Price : ((-1) * stockAdjustmentDetail.Price);
            // item.AvgCost = _barringService.CalculateAvgCost(item, stockAdjustmentDetail.Quantity, stockAdjustmentDetailPrice);
            // barring.AvgCost = _barringService.CalculateAvgCost(barring, stockAdjustmentDetail.Quantity, stockAdjustmentDetailPrice);

            int           Quantity      = (stockMutation.Status == Constant.MutationStatus.Addition) ? stockMutation.Quantity : (-1) * stockMutation.Quantity;
            WarehouseItem warehouseItem = _warehouseItemService.GetObjectById(stockMutation.WarehouseItemId);
            Item          item          = _itemService.GetObjectById(stockMutation.ItemId);
            Barring       barring       = _barringService.GetObjectById(stockMutation.ItemId);

            if (warehouseItem != null)
            {
                if (stockMutation.ItemCase == Constant.ItemCase.Ready)
                {
                    _warehouseItemService.AdjustQuantity(warehouseItem, Quantity);
                }
            }

            if (barring == null)
            {
                // itemService in action
                if (stockMutation.ItemCase == Constant.ItemCase.Ready)
                {
                    _itemService.AdjustQuantity(item, Quantity);
                }
                else if (stockMutation.ItemCase == Constant.ItemCase.PendingDelivery)
                {
                    _itemService.AdjustPendingDelivery(item, Quantity);
                }
                else if (stockMutation.ItemCase == Constant.ItemCase.PendingReceival)
                {
                    _itemService.AdjustPendingReceival(item, Quantity);
                }
            }
            else
            {
                // barringService in action
                if (stockMutation.ItemCase == Constant.ItemCase.Ready)
                {
                    _barringService.AdjustQuantity(barring, Quantity);
                }
                else if (stockMutation.ItemCase == Constant.ItemCase.PendingDelivery)
                {
                    _barringService.AdjustPendingDelivery(barring, Quantity);
                }
                else if (stockMutation.ItemCase == Constant.ItemCase.PendingReceival)
                {
                    _barringService.AdjustPendingReceival(barring, Quantity);
                }
            }
        }
Beispiel #27
0
        public string PrintError(Barring 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);
        }
Beispiel #28
0
        public Barring VWarehouseQuantityMustBeZero(Barring barring, IWarehouseItemService _warehouseItemService)
        {
            IList <WarehouseItem> warehouseItems = _warehouseItemService.GetObjectsByItemId(barring.Id);

            foreach (var warehouseitem in warehouseItems)
            {
                if (warehouseitem.Quantity > 0)
                {
                    barring.Errors.Add("Generic", "Quantity di setiap warehouse harus 0");
                    return(barring);
                }
            }
            return(barring);
        }
Beispiel #29
0
        public Item UpdateLegacyObject(Item item, IUoMService _uomService, IItemTypeService _itemTypeService, IWarehouseItemService _warehouseItemService, IWarehouseService _warehouseService,
                                       IBarringService _barringService, IContactService _contactService, IMachineService _machineService)
        {
            Barring barring = _barringService.GetObjectById(item.Id);

            if (barring != null)
            {
                _barringService.UpdateObject(barring, _barringService, _uomService, this, _itemTypeService,
                                             _contactService, _machineService, _warehouseItemService, _warehouseService);
                return(barring);
            }

            return(item = _validator.ValidUpdateLegacyObject(item, _uomService, this, _itemTypeService) ? _repository.UpdateObject(item) : item);
        }
Beispiel #30
0
        public Barring VHasItemTypeAndIsLegacy(Barring barring, IItemTypeService _itemTypeService)
        {
            ItemType itemType = _itemTypeService.GetObjectById(barring.ItemTypeId);

            if (itemType == null)
            {
                barring.Errors.Add("ItemTypeId", "Tidak boleh tidak ada");
            }
            else if (!itemType.IsLegacy)
            {
                barring.Errors.Add("ItemTypeId", "Harus berupa legacy item");
            }
            return(barring);
        }