internal Result UpdateAsset(string customerId, string assetId, UpdateAssetParams data) { var loggerManager = new LoggerManager(); var operationGuid = Guid.NewGuid().ToString(); try { loggerManager.InsertLogoRecord(nameof(UpdateAsset), nameof(LogLevel.Info), null, data.TransactionId, JsonConvert.SerializeObject(data)); var customerManager = new CustomerManager(); var customer = customerManager.GetCompanyByExternalId(customerId); var user = customerManager.GetCompanyFirstAdminByExternalId(customerId); var product = customerManager.GetProductByProductExternalId(data.ProductId); var diskSpace = customerManager.GetDiskSpaceByAssetGroupId(assetId); var orderDemandManager = new OrderDemandManager(); var addAsset = new UpgradeDiskSpaceData { OrderDemandGuid = operationGuid, CompanyId = customer.CompanyId, UserId = user.UserId, ProductId = product.ProductID, DiskSpaceId = diskSpace.DiskSpaceID }; orderDemandManager.SaveOrderDemand(null, operationGuid, 0, (int)ProvisionType.UpgradeDiskSpace, (int)OrderDemandStates.Created, (int)OrderDemandType.Integrated, JsonConvert.SerializeObject(addAsset), data.TransactionId); return(new Result { IsCompleted = false, Success = true }); } catch (Exception ex) { loggerManager.InsertLogoRecord(nameof(UpdateAsset), nameof(LogLevel.Error), ex.Message + " " + ex.StackTrace, operationGuid, JsonConvert.SerializeObject(data)); return(new Result { IsCompleted = true, Success = false, Message = ex.Message }); } }
void SendNotification(UpgradeDiskSpaceData json, string diskSpacePlan, string diskSpaceName) { var operationGuid = Guid.NewGuid().ToString(); try { var user = _userRepository.GetUserById(json.UserId); var upgradeDiskSpaceMailObject = new UpgradeDiskSpaceMailObject { TemplateName = nameof(MailTemplateName.STaaSUpgradeDiskSpace), OrderDemandGuid = operationGuid, FirstName = user.FirstName, LastName = user.LastName, Email = user.Email, DiskSpaceName = diskSpaceName, DiskSpacePlan = diskSpacePlan }; _orderDemandRepository.SaveOrderDemand(null, operationGuid, json.CompanyId, (int)ProvisionType.SendMail, (int)OrderDemandStates.Created, (int)OrderDemandType.Integrated, JsonConvert.SerializeObject(upgradeDiskSpaceMailObject), null); } catch (Exception ex) { _logRepository.InsertLogoRecord(nameof(SendNotification) + " " + nameof(DeleteDiskSpace), nameof(LogLevel.Error), ex.Message + " " + ex.StackTrace, operationGuid, null); } }
public override void DoJob(dynamic data) { var operationGuid = string.Empty; try { UpgradeDiskSpaceData json = JsonConvert.DeserializeObject <UpgradeDiskSpaceData>(data); operationGuid = json.OrderDemandGuid; var diskSpace = _diskSpaceRepository.GetDiskSpaceInfo(json.UserId, json.DiskSpaceId, true); var product = _diskSpaceRepository.GetProductsById(json.ProductId); _diskSpaceRepository.UpdateDiskSpace(diskSpace.DiskSpaceID, null, json.ProductId); _orderDemandRepository.ChangeOrderDemandState(operationGuid, (int)OrderDemandStates.Finished); SendNotification(json, product.Name, diskSpace.DiskSpaceName); } catch (Exception ex) { _orderDemandRepository.ChangeOrderDemandState(operationGuid, (int)OrderDemandStates.FinishedError); _logRepository.InsertLogoRecord(nameof(CreateDiskSpace), nameof(LogLevel.Error), ex.Message + " " + ex.StackTrace, operationGuid, data); } }