示例#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);
 }
示例#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);
        }
示例#3
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);
        }
示例#4
0
 public Warehouse SoftDeleteObject(Warehouse warehouse, IWarehouseItemService _warehouseItemService, ICoreIdentificationService _coreIdentificationService, IBarringOrderService _barringOrderService)
 {
     if (_validator.ValidDeleteObject(warehouse, _warehouseItemService, _coreIdentificationService, _barringOrderService))
     {
         IList <WarehouseItem> allwarehouseitems = _warehouseItemService.GetObjectsByWarehouseId(warehouse.Id);
         foreach (var warehouseitem in allwarehouseitems)
         {
             IWarehouseItemValidator warehouseItemValidator = _warehouseItemService.GetValidator();
             if (!warehouseItemValidator.ValidDeleteObject(warehouseitem))
             {
                 warehouse.Errors.Add("Generic", "Tidak bisa menghapus item yang berhubungan dengan warehouse ini");
                 return(warehouse);
             }
         }
         foreach (var warehouseitem in allwarehouseitems)
         {
             _warehouseItemService.SoftDeleteObject(warehouseitem);
         }
         _repository.SoftDeleteObject(warehouse);
     }
     return(warehouse);
 }
 public WarehouseItem SoftDeleteObject(WarehouseItem warehouseItem)
 {
     return(warehouseItem = _validator.ValidDeleteObject(warehouseItem) ? _repository.SoftDeleteObject(warehouseItem) : warehouseItem);
 }