internal bool Update(Guid tenantId, TenantSubscriptionInfo info)
 {
     try
     {
         var cmd = CreateProcedureCommand("dbo.TenantSubscription_Update");
         cmd.AppendGuid("@guidTenantId", tenantId);
         cmd.AppendGuid("@guidTenantSubscriptionId", info.TenantSubscriptionId);
         cmd.AppendMediumText("@strName", info.Name);
         cmd.AppendGuid("@guidGroupId", info.Group.Id);
         if (info.RecurringPrice.HasValue && info.RecurringPrice.Value > 0.0m)
         {
             cmd.AppendDecimal("@dRecurringPrice", info.RecurringPrice.Value);
         }
         cmd.AppendTinyInt("@tinyintDuration", (byte)info.RecurringDuration);
         if (info.SetUpPrice.HasValue && info.SetUpPrice.Value > 0.0m)
         {
             cmd.AppendDecimal("@dSetUpPrice", info.SetUpPrice.Value);
         }
         ExecuteCommand(cmd);
         return(true);
     }
     catch (SqlException e)
     {
         throw ReportAndTranslateException(e, "TenantSubscription::TenantSubscription_Update");
     }
 }
示例#2
0
        public IActionResult Put([FromBody] TenantSubscriptionInfo info)
        {
            try
            {
                if (info == null)
                {
                    return(BadRequest("Invalid parameter"));
                }
                if (string.IsNullOrEmpty(info.Name))
                {
                    return(BadRequest("Invalid parameter."));
                }
                if (info.Group == null)
                {
                    return(BadRequest("Invalid parameter"));
                }
                if (info.Group.Id == Guid.Empty)
                {
                    return(BadRequest("Invalid parameter"));
                }

                var stopwatch = StopwatchLogger.Start(_log);
                _log.Info("Called SubscriptionController Put {0}=", JsonConvert.SerializeObject(info));
                var retVal = _managerSubscription.Update(TenantCode, info);
                stopwatch.StopAndLog("End SubscriptionController Put");
                return(Ok(retVal));
            }
            catch (Exception ex)
            {
                _log.Error(ExceptionFormatter.SerializeToString(ex));
                return(StatusCode((int)HttpStatusCode.InternalServerError, ApiConstant.CustomErrorMessage));
            }
        }
 internal bool Create(Guid tenantId, TenantSubscriptionInfo info)
 {
     try
     {
         var cmd = CreateProcedureCommand("dbo.TenantSubscription_Create");
         cmd.AppendGuid("@guidTenantId", tenantId);
         cmd.AppendGuid("@guidTenantSubscriptionId", info.TenantSubscriptionId);
         cmd.AppendMediumText("@strName", info.Name);
         cmd.AppendGuid("@guidGroupId", info.Group.Id);
         ExecuteCommand(cmd);
         return(true);
     }
     catch (SqlException e)
     {
         throw ReportAndTranslateException(e, "TenantSubscription::TenantSubscription_Create");
     }
 }
        private static TenantSubscriptionInfo ReadInfo(SqlDataReader reader)
        {
            var role = new TenantSubscriptionInfo
            {
                TenantSubscriptionId = reader.IsDBNull(0) ? Guid.Empty : reader.GetGuid(0),
                Name  = reader.IsDBNull(1) ? string.Empty : reader.GetString(1),
                Group = new ItemName {
                    Id = reader.IsDBNull(2) ? Guid.Empty : reader.GetGuid(2), Name = reader.IsDBNull(7) ? string.Empty : reader.GetString(7)
                },
                RecurringPrice    = reader.IsDBNull(3) ? (decimal?)null : reader.GetDecimal(3),
                RecurringDuration = reader.IsDBNull(4) ? SubscriptionDuration.Weekly : (SubscriptionDuration)reader.GetByte(4),
                SetUpPrice        = reader.IsDBNull(5) ? (decimal?)null : reader.GetDecimal(5),
                Status            = reader.IsDBNull(6) ? false : reader.GetBoolean(6),
            };

            return(role);
        }
        internal TenantSubscriptionInfo TenantSubscription(Guid tenantId, Guid tenantSubscriptionId)
        {
            TenantSubscriptionInfo info = null;

            try
            {
                var cmd = CreateProcedureCommand("dbo.TenantSubscription_Get");
                cmd.AppendGuid("@guidTenantId", tenantId);
                cmd.AppendGuid("@guidTenantSubscriptionId", tenantSubscriptionId);
                using (SqlDataReader reader = ExecuteCommandAndReturnReader(cmd))
                {
                    while (reader.Read())
                    {
                        info = ReadInfo(reader);
                    }
                }
            }
            catch (SqlException e)
            {
                throw ReportAndTranslateException(e, "TenantSubscription::TenantSubscription_Get");
            }
            return(info);
        }
示例#6
0
 bool IManagerTenantSubscription.Update(Guid tenantId, TenantSubscriptionInfo info)
 {
     return(_adminTenantSubscription.Update(tenantId, info));
 }
示例#7
0
 Guid IManagerTenantSubscription.Create(Guid tenantId, TenantSubscriptionInfo info)
 {
     info.TenantSubscriptionId = Guid.NewGuid();
     _adminTenantSubscription.Create(tenantId, info);
     return(info.TenantSubscriptionId);
 }
 bool IAdminTenantSubscription.Update(Guid tenantId, TenantSubscriptionInfo info)
 {
     return(_data.Update(tenantId, info));
 }