Beispiel #1
0
 public Item SoftDeleteObject(Item item, IStockMutationService _stockMutationService, IItemTypeService _itemTypeService, IWarehouseItemService _warehouseItemService, IBarringService _barringService, IPurchaseOrderDetailService _purchaseOrderDetailService, IStockAdjustmentDetailService _stockAdjustmentDetailService, ISalesOrderDetailService _salesOrderDetailService, IPriceMutationService _priceMutationService)
 {
     if (_validator.ValidDeleteObject(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 x in priceMutations)
         {
             _priceMutationService.DeactivateObject(x, item.DeletedAt);
         }
     }
     return(item);
 }
Beispiel #2
0
 public Item SoftDeleteObject(Item item, IStockMutationService _stockMutationService, IItemTypeService _itemTypeService, IWarehouseItemService _warehouseItemService, IBarringService _barringService)
 {
     if (_validator.ValidDeleteObject(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);
 }