public int CreateComponentTracker(ComponentTrackerModel componentTrackerModel) { ComponentTracker componentTracker = _componentTrackerRepository.GetComponentTrackerByID(componentTrackerModel.ID); if (componentTracker == null) { componentTracker = this._componentTrackerRepository.CreateComponentTracker(new ComponentTracker() { AssetID = componentTrackerModel.AssetID, ComponentStatusID = componentTrackerModel.ComponentStatusID, ComponentID = componentTrackerModel.ComponentID, CreatedDate = componentTrackerModel.CreatedDate, CreatedBy = componentTrackerModel.CreatedBy, Remarks = componentTrackerModel.Remarks, }); } else if (componentTracker.AssetID != componentTrackerModel.AssetID || componentTracker.ComponentID != componentTrackerModel.ComponentID || componentTracker.ComponentStatusID != componentTrackerModel.ComponentStatusID) { componentTracker = this._componentTrackerRepository.CreateComponentTracker(new ComponentTracker() { AssetID = componentTrackerModel.AssetID, ComponentStatusID = componentTrackerModel.ComponentStatusID, ComponentID = componentTrackerModel.ComponentID, CreatedDate = componentTrackerModel.CreatedDate, CreatedBy = componentTrackerModel.CreatedBy, Remarks = componentTrackerModel.Remarks, }); } return(componentTracker.ID); }
public HardwareAssetModel CreateHardwareAsset(HardwareAssetModel hardwareAssetModel) { Assets assets = new Assets { AssetName = hardwareAssetModel.AssetName, SerialNumber = hardwareAssetModel.SerialNumber, AssetTypeID = hardwareAssetModel.AssetTypeID, AssetStatusID = (int)AssetTrackingStatus.New, CreatedDate = DateTime.Now, CreatedBy = GetLoginEmployeeId() }; var createdAsset = _assetRepository.CreateAsset(assets); hardwareAssetModel.AssetID = createdAsset.ID; _hardwareAssetService.CreateHardwareAsset(hardwareAssetModel); AssetTrackerModel assetTrackerModel = new AssetTrackerModel { AssetID = hardwareAssetModel.AssetID, AssetStatusID = (int)AssetTrackingStatus.New, CreatedDate = DateTime.Now, CreatedBy = assets.CreatedBy, Remarks = hardwareAssetModel.Comment, }; _assetTrackerService.CreateAssetTracker(assetTrackerModel); if (hardwareAssetModel.ComponentAssetMapping != null) { if (hardwareAssetModel.ComponentAssetMapping.Where(fet => fet.Mandatory == true || fet.ComponentID != 0).ToList().Count > 0) { foreach (var item in hardwareAssetModel.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(hardwareAssetModel); }
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; } } }
public HardwareAssetModel UpdateHardwareAsset(HardwareAssetModel hardwareAssetModel) { Assets selectedAsset = _assetRepository.GetAssetByID(hardwareAssetModel.AssetID); if (selectedAsset != null) { selectedAsset.AssetName = hardwareAssetModel.AssetName; selectedAsset.SerialNumber = hardwareAssetModel.SerialNumber; selectedAsset.AssetTypeID = hardwareAssetModel.AssetTypeID; selectedAsset.AssetStatusID = (int)AssetTrackingStatus.New; } _assetRepository.UpdateAsset(selectedAsset); _hardwareAssetService.UpdateHardwareAsset(hardwareAssetModel); if (hardwareAssetModel.ComponentAssetMapping != null) { if (hardwareAssetModel.ComponentAssetMapping.Where(fet => fet.Mandatory == true || fet.ComponentID != 0).ToList().Count > 0) { foreach (var item in hardwareAssetModel.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(hardwareAssetModel); }
public HardwareAssetModel CreateHardwareAsset(HardwareAssetModel hardwareAssetModel) { using (var scope = new TransactionScope(TransactionScopeOption.Required)) { try { Assets assets = new Assets { AssetName = hardwareAssetModel.AssetName, SerialNumber = hardwareAssetModel.SerialNumber, AssetTypeID = hardwareAssetModel.AssetTypeID, AssetStatusID = (int)AssetTrackingStatus.New, CreatedDate = DateTime.Now, CreatedBy = GetLoginEmployeeId() }; var createdAsset = _assetRepository.CreateAsset(assets); hardwareAssetModel.AssetID = createdAsset.ID; _hardwareAssetService.CreateHardwareAsset(hardwareAssetModel); AssetTrackerModel assetTrackerModel = new AssetTrackerModel { AssetID = hardwareAssetModel.AssetID, AssetStatusID = (int)AssetTrackingStatus.New, CreatedDate = DateTime.Now, CreatedBy = assets.CreatedBy, Remarks = hardwareAssetModel.Comment, }; _assetTrackerService.CreateAssetTracker(assetTrackerModel); if (hardwareAssetModel.ComponentAssetMapping != null) { if (hardwareAssetModel.ComponentAssetMapping.Where(fet => fet.ComponentID != 0).ToList().Count > 0) { foreach (var item in hardwareAssetModel.ComponentAssetMapping.Where(fet => 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); } } } scope.Complete(); return(hardwareAssetModel); } catch (Exception) { scope.Dispose(); throw; } } }