Esempio n. 1
0
 public ActionResult CreateSoftwareAsset(SoftwareAssetModel softwareAssetModel, bool isClone)
 {
     try
     {
         _assetService.CreateSoftwareAsset(softwareAssetModel);
         TempData["Message"]     = "Software Asset Created Successfully";
         TempData["MessageType"] = (int)AlertMessageTypes.Success;
         if (isClone)
         {
             //return View("CloneSoftwareAsset", softwareAssetModel);
             TempData["softwareAssetModel"] = softwareAssetModel;
             return(RedirectToAction("CloneSoftwareAsset", new { assetId = softwareAssetModel.AssetID }));
         }
         else
         {
             return(RedirectToAction("ManageAssets"));
         }
     }
     catch (Exception ex)
     {
         TempData["Message"]     = "Error in Creating a software asset";
         TempData["MessageType"] = (int)AlertMessageTypes.Danger;
         _logger.Error(ex);
         return(RedirectToAction("SoftwareAsset"));
     }
 }
Esempio n. 2
0
        public SoftwareAssetModel CreateSoftwareAsset(SoftwareAssetModel softwareAssetModel)
        {
            Assets assets = new Assets
            {
                AssetName     = softwareAssetModel.AssetName,
                SerialNumber  = softwareAssetModel.SerialNumber,
                AssetTypeID   = softwareAssetModel.AssetTypeID,
                AssetStatusID = (int)AssetTrackingStatus.New,
                CreatedDate   = DateTime.Now,
                CreatedBy     = GetLoginEmployeeId()
            };
            var createdAsset = _assetRepository.CreateAsset(assets);

            softwareAssetModel.AssetID = createdAsset.ID;
            _softwareAssetService.CreateSoftwareAsset(softwareAssetModel);

            AssetTrackerModel assetTrackerModel = new AssetTrackerModel
            {
                AssetID       = softwareAssetModel.AssetID,
                AssetStatusID = (int)AssetTrackingStatus.New,
                CreatedDate   = DateTime.Now,
                CreatedBy     = assets.CreatedBy,
                Remarks       = softwareAssetModel.Comment,
            };

            _assetTrackerService.CreateAssetTracker(assetTrackerModel);
            if (softwareAssetModel.ComponentAssetMapping != null)
            {
                if (softwareAssetModel.ComponentAssetMapping.Where(fet => fet.Mandatory == true || fet.ComponentID != 0).ToList().Count > 0)
                {
                    foreach (var item in softwareAssetModel.ComponentAssetMapping.Where(fet => fet.Mandatory == true || fet.ComponentID != 0).ToList())
                    {
                        item.AssignedAssetID   = createdAsset.ID;
                        item.ActualAssetID     = createdAsset.ID;
                        item.AssignedDate      = DateTime.Now;
                        item.AssignedBy        = GetLoginEmployeeId();
                        item.CreatedDate       = DateTime.Now;
                        item.CreatedBy         = GetLoginEmployeeId();
                        item.ComponentStatusId = (int)ComponentTrackingStatus.Assign;
                        _componentAssetMappingService.CreateComponentAssetMapping(item);
                        ComponentTrackerModel componentTrackerModel = new ComponentTrackerModel
                        {
                            AssetID           = createdAsset.ID,
                            ComponentID       = item.ComponentID,
                            ComponentStatusID = (int)ComponentTrackingStatus.Assign,
                            CreatedBy         = GetLoginEmployeeId(),
                            CreatedDate       = DateTime.Now
                        };
                        _componentTrackerService.CreateComponentTracker(componentTrackerModel);
                    }
                }
            }
            return(softwareAssetModel);
        }
Esempio n. 3
0
        public SoftwareAssetModel UpdateSoftwareAsset(SoftwareAssetModel softwareAssetModel)
        {
            using (var scope = new TransactionScope(TransactionScopeOption.Required))
            {
                try
                {
                    Assets selectedAsset = _assetRepository.GetAssetByID(softwareAssetModel.AssetID);
                    if (selectedAsset != null)
                    {
                        selectedAsset.AssetName     = softwareAssetModel.AssetName;
                        selectedAsset.SerialNumber  = softwareAssetModel.SerialNumber;
                        selectedAsset.AssetTypeID   = softwareAssetModel.AssetTypeID;
                        selectedAsset.AssetStatusID = (int)AssetTrackingStatus.New;
                    }
                    _assetRepository.UpdateAsset(selectedAsset);

                    _softwareAssetService.UpdateSoftwareAsset(softwareAssetModel);

                    if (softwareAssetModel.ComponentAssetMapping != null)
                    {
                        if (softwareAssetModel.ComponentAssetMapping.Where(fet => fet.ComponentID != 0).ToList().Count > 0)
                        {
                            foreach (var item in softwareAssetModel.ComponentAssetMapping.Where(fet => fet.ComponentID != 0).ToList())
                            {
                                item.AssignedAssetID   = selectedAsset.ID;
                                item.ActualAssetID     = selectedAsset.ID;
                                item.AssignedDate      = DateTime.Now;
                                item.AssignedBy        = GetLoginEmployeeId();
                                item.ComponentStatusId = (int)ComponentTrackingStatus.Assign;
                                _componentAssetMappingService.UpdateComponentAssetMapping(item);
                                ComponentTrackerModel componentTrackerModel = new ComponentTrackerModel
                                {
                                    AssetID           = selectedAsset.ID,
                                    ComponentID       = item.ComponentID,
                                    ComponentStatusID = (int)ComponentTrackingStatus.Assign,
                                    CreatedBy         = GetLoginEmployeeId(),
                                    CreatedDate       = DateTime.Now
                                };
                                _componentTrackerService.CreateComponentTracker(componentTrackerModel);
                            }
                        }
                    }
                    scope.Complete();
                    return(softwareAssetModel);
                }
                catch (Exception)
                {
                    scope.Dispose();
                    throw;
                }
            }
        }
Esempio n. 4
0
        public int CreateSoftwareAsset(SoftwareAssetModel softwareAssetModel)
        {
            SoftwareAssets softwareAsset = null;

            softwareAsset = this._softwareAssetRepository.CreateSoftwareAsset(new SoftwareAssets()
            {
                AssetID             = softwareAssetModel.AssetID,
                ProductName         = softwareAssetModel.ProductName,
                LicenceNumber       = softwareAssetModel.LicenceNumber,
                LicencePurchaseDate = softwareAssetModel.LicencePurchaseDate,
                LicenceExpiryDate   = softwareAssetModel.LicenceExpiryDate,
                Comment             = softwareAssetModel.Comment
            });

            return(softwareAsset.ID);
        }
Esempio n. 5
0
        public int UpdateSoftwareAsset(SoftwareAssetModel softwareAssetModel)
        {
            SoftwareAssets softwareAsset = _softwareAssetRepository.GetSoftwareAssetByAssetID(softwareAssetModel.AssetID);

            if (softwareAsset != null)
            {
                softwareAsset.AssetID             = softwareAssetModel.AssetID;
                softwareAsset.ProductName         = softwareAssetModel.ProductName;
                softwareAsset.LicenceNumber       = softwareAssetModel.LicenceNumber;
                softwareAsset.LicencePurchaseDate = softwareAssetModel.LicencePurchaseDate;
                softwareAsset.LicenceExpiryDate   = softwareAssetModel.LicenceExpiryDate;
                softwareAsset.Comment             = softwareAssetModel.Comment;
            }
            _softwareAssetRepository.UpdateSoftwareAsset(softwareAsset);

            return(softwareAsset.ID);
        }
Esempio n. 6
0
 public ActionResult UpdateSoftwareAsset(SoftwareAssetModel softwareAssetModel)
 {
     try
     {
         _assetService.UpdateSoftwareAsset(softwareAssetModel);
         TempData["Message"]     = "Software Asset updated Successfully";
         TempData["MessageType"] = (int)AlertMessageTypes.Success;
         return(RedirectToAction("ManageAssets"));
     }
     catch (Exception ex)
     {
         TempData["Message"]     = "Error in updating a asset";
         TempData["MessageType"] = (int)AlertMessageTypes.Danger;
         _logger.Error(ex);
         return(RedirectToAction("ManageAssets"));
     }
 }
Esempio n. 7
0
        public ActionResult EditSoftwareAsset(int Id)
        {
            SoftwareAssetModel softwareAssetModel = _assetService.EditSoftwareAsset(Id);

            try
            {
                var assetCategories = _assetService.GetAssetCategories();
                softwareAssetModel.AssetCategories = new SelectList(assetCategories, "ID", "Description", (int)AssetCategories.Software);
                softwareAssetModel.AssetCategoryId = (int)AssetCategories.Software;
                var assetTypes = _assetService.GetAssetTypes((int)AssetCategories.Software, softwareAssetModel.AssetTypeID);
                softwareAssetModel.AssetTypes = assetTypes;
            }
            catch (Exception ex)
            {
                _logger.Error(ex);
            }
            return(View(softwareAssetModel));
        }
Esempio n. 8
0
 public ActionResult CloneSoftwareAsset(int assetId)
 {
     try
     {
         SoftwareAssetModel softwareAssetModel = _assetService.EditCloneSoftwareAsset(assetId);
         var assetCategories = _assetService.GetAssetCategories();
         softwareAssetModel.AssetCategories = new SelectList(assetCategories, "ID", "Description", (int)AssetCategories.Software);
         softwareAssetModel.AssetCategoryId = (int)AssetCategories.Software;
         var assetTypes = _assetService.GetAssetTypes((int)AssetCategories.Software, softwareAssetModel.AssetTypeID);
         softwareAssetModel.AssetTypes = assetTypes;
         return(View("CloneSoftwareAsset", softwareAssetModel));
     }
     catch (Exception ex)
     {
         _logger.Error(ex);
         return(RedirectToAction("ManageAssets"));
     }
 }
Esempio n. 9
0
        public ActionResult ManageSoftwareComponents(int assetType, int?assetId)
        {
            SoftwareAssetModel softwareAssetModel = new SoftwareAssetModel();

            if (assetId != 0 && assetId != null)
            {
                softwareAssetModel.ComponentAssetMapping = _assetService.GetComponentAssetMappings(assetId.Value);
            }
            softwareAssetModel.ComponentTypeModels = _assetService.GetComponentTypes().Where(fet => fet.AssetTypeID == assetType).ToList();
            if (softwareAssetModel.ComponentTypeModels.Count > 0)
            {
                softwareAssetModel.componentStyle = "display:block";
            }
            else
            {
                softwareAssetModel.componentStyle = "display:none";
            }
            softwareAssetModel.ComponentsModels = _assetService.GetComponents();
            return(PartialView(softwareAssetModel));
        }
Esempio n. 10
0
        public SoftwareAssetModel UpdateSoftwareAsset(SoftwareAssetModel softwareAssetModel)
        {
            Assets selectedAsset = _assetRepository.GetAssetByID(softwareAssetModel.AssetID);

            if (selectedAsset != null)
            {
                selectedAsset.AssetName     = softwareAssetModel.AssetName;
                selectedAsset.SerialNumber  = softwareAssetModel.SerialNumber;
                selectedAsset.AssetTypeID   = softwareAssetModel.AssetTypeID;
                selectedAsset.AssetStatusID = (int)AssetTrackingStatus.New;
            }
            _assetRepository.UpdateAsset(selectedAsset);

            _softwareAssetService.UpdateSoftwareAsset(softwareAssetModel);

            if (softwareAssetModel.ComponentAssetMapping != null)
            {
                if (softwareAssetModel.ComponentAssetMapping.Where(fet => fet.Mandatory == true || fet.ComponentID != 0).ToList().Count > 0)
                {
                    foreach (var item in softwareAssetModel.ComponentAssetMapping.Where(fet => fet.Mandatory == true || fet.ComponentID != 0).ToList())
                    {
                        item.AssignedAssetID   = selectedAsset.ID;
                        item.ActualAssetID     = selectedAsset.ID;
                        item.AssignedDate      = DateTime.Now;
                        item.AssignedBy        = GetLoginEmployeeId();
                        item.ComponentStatusId = (int)ComponentTrackingStatus.Assign;
                        _componentAssetMappingService.UpdateComponentAssetMapping(item);
                        ComponentTrackerModel componentTrackerModel = new ComponentTrackerModel
                        {
                            AssetID           = selectedAsset.ID,
                            ComponentID       = item.ComponentID,
                            ComponentStatusID = (int)ComponentTrackingStatus.Assign,
                            CreatedBy         = GetLoginEmployeeId(),
                            CreatedDate       = DateTime.Now
                        };
                        _componentTrackerService.CreateComponentTracker(componentTrackerModel);
                    }
                }
            }
            return(softwareAssetModel);
        }
Esempio n. 11
0
        public SoftwareAssetModel GetSoftwareAssetByAssetID(int assetID)
        {
            var softwareAsset = _softwareAssetRepository.GetSoftwareAssetByAssetID(assetID);

            if (softwareAsset != null)
            {
                SoftwareAssetModel softwareAssetModel = new SoftwareAssetModel
                {
                    AssetID             = softwareAsset.AssetID,
                    ProductName         = softwareAsset.ProductName,
                    LicenceNumber       = softwareAsset.LicenceNumber,
                    LicencePurchaseDate = softwareAsset.LicencePurchaseDate,
                    LicenceExpiryDate   = softwareAsset.LicenceExpiryDate,
                    Comment             = softwareAsset.Comment
                };
                return(softwareAssetModel);
            }
            else
            {
                return(new SoftwareAssetModel {
                });
            }
        }
Esempio n. 12
0
        public SoftwareAssetModel EditCloneSoftwareAsset(int assetID)
        {
            SoftwareAssetModel softwareAssetModel = new SoftwareAssetModel();
            var asset         = _assetRepository.GetAssetByID(assetID);
            var softwareAsset = _softwareAssetService.GetSoftwareAssetByAssetID(assetID);

            if (asset != null)
            {
                softwareAssetModel = new SoftwareAssetModel
                {
                    AssetID         = asset.ID,
                    AssetName       = asset.AssetName,
                    SerialNumber    = asset.SerialNumber,
                    AssetTypeID     = asset.AssetTypeID,
                    AssetStatusID   = asset.AssetStatusID,
                    AssetCategoryId = asset.AssetTypes.AssetCategoryID,
                    CreatedDate     = asset.CreatedDate,
                    CreatedBy       = asset.CreatedBy,
                };
            }
            if (softwareAsset != null)
            {
                softwareAssetModel.ProductName         = softwareAsset.ProductName;
                softwareAssetModel.LicenceNumber       = softwareAsset.LicenceNumber;
                softwareAssetModel.LicencePurchaseDate = softwareAsset.LicencePurchaseDate;
                softwareAssetModel.LicenceExpiryDate   = softwareAsset.LicenceExpiryDate;
                softwareAssetModel.Comment             = softwareAsset.Comment;
            }
            var componentAssetMapping = _componentAssetMappingService.GetComponentAssetMappingsByAssetID(assetID);

            if (componentAssetMapping != null && componentAssetMapping.Count > 0)
            {
                softwareAssetModel.ComponentAssetMapping = componentAssetMapping.ToList();
            }
            return(softwareAssetModel);
        }