public async Task <int> Add(string connectionString, GiftCodeCampaign campaign) { var data = await WithConnection(connectionString, async (connection) => { DynamicParameters parameters = new DynamicParameters(); parameters.Add("@Id", campaign.Id, DbType.String); parameters.Add("@ParentId", string.Empty, DbType.String); parameters.Add("@NAME", campaign.Name, DbType.String); parameters.Add("@Notes", campaign.Notes, DbType.String); parameters.Add("@BeginDate", campaign.BeginDate, DbType.String); parameters.Add("@EndDate", campaign.EndDate, DbType.String); parameters.Add("@GiftCodeCalendar", campaign.GiftCodeCalendarsSerialize, DbType.String); parameters.Add("@MESSAGE", campaign.Message, DbType.String); parameters.Add("@STATUS", campaign.Status, DbType.Int64); parameters.Add("@AllowPaymentOnCheckout", campaign.AllowPaymentOnCheckout, DbType.Boolean); parameters.Add("@Conditions", campaign.GiftCodeConditionsSerialize, DbType.String); parameters.Add("@CreatedDateUtc", campaign.CreatedDateUtc, DbType.DateTime); parameters.Add("@UpdatedDateUtc", campaign.UpdatedDateUtc, DbType.DateTime); parameters.Add("@CreatedUid", campaign.CreatedUid, DbType.String); parameters.Add("@UpdatedUid", campaign.UpdatedUid, DbType.String); parameters.Add("@ShardId", campaign.ShardId, DbType.Int32); parameters.Add("@VERSION", campaign.Version, DbType.Int32); var result = await connection.ExecuteAsync(ProcName.GiftCodeCampaign_Add, parameters, commandType: CommandType.StoredProcedure); return(result); }); return(data); }
public async Task <ICommandResult> Handle(GiftCodeCampaignChangeCommand mesage) { try { var shard = await _shardingService.Get(mesage.ShardId); if (shard == null) { throw new MessageException(ResourceKey.ShardingConfig_NotFound); } GiftCodeCampaign campaign = new GiftCodeCampaign(); campaign.Change(mesage); int rowCount = await _giftcodeService.Change(shard.ConnectionString, campaign); if (rowCount <= 0) { throw new MessageException(ResourceKey.GiftCodeCampaignCart_NotFound); } await _eventSender.Notify(); ICommandResult result = new CommandResult() { Message = "", ObjectId = string.Empty, Status = CommandResult.StatusEnum.Sucess }; return(result); } catch (MessageException e) { e.Data["Param"] = mesage; ICommandResult result = new CommandResult() { Message = e.Message, Status = CommandResult.StatusEnum.Fail, ResourceName = e.ResourceName }; return(result); } catch (Exception e) { e.Data["Param"] = mesage; ICommandResult result = new CommandResult() { Message = e.Message, Status = CommandResult.StatusEnum.Fail }; return(result); } }
public async Task <ICommandResult> Handle(GiftCodeCampaignAddCommand mesage) { try { var shard = await _shardingService.GetCurrentWriteShardByRoundRobin(ShardGroup); GiftCodeCampaign campaign = new GiftCodeCampaign(); campaign.Add(mesage, shard.Id); int rowCount = await _giftcodeService.Add(shard.ConnectionString, campaign); if (rowCount <= 0) { throw new MessageException(ResourceKey.GiftCodeCampaign_AddFail); } await _eventSender.Notify(); ICommandResult result = new CommandResult() { Message = "", ObjectId = string.Empty, Status = CommandResult.StatusEnum.Sucess }; return(result); } catch (MessageException e) { e.Data["Param"] = mesage; ICommandResult result = new CommandResult() { Message = e.Message, Status = CommandResult.StatusEnum.Fail, ResourceName = e.ResourceName }; return(result); } catch (Exception e) { e.Data["Param"] = mesage; ICommandResult result = new CommandResult() { Message = e.Message, Status = CommandResult.StatusEnum.Fail }; return(result); } }
public async Task <int> ChangeStatus(string connectionString, GiftCodeCampaign campaign, bool isApproved) { var data = await WithConnection(connectionString, async (connection) => { DynamicParameters parameters = new DynamicParameters(); parameters.Add("@Id", campaign.Id, DbType.String); parameters.Add("@STATUS", campaign.Name, DbType.String); parameters.Add("@UpdatedDateUtc", campaign.UpdatedDateUtc, DbType.DateTime); parameters.Add("@UpdatedUid", campaign.UpdatedUid, DbType.String); parameters.Add("@VERSION", campaign.Version, DbType.Int32); parameters.Add("@IsApproved", isApproved, DbType.Boolean); var result = await connection.ExecuteAsync(ProcName.GiftCodeCampaign_Change, parameters, commandType: CommandType.StoredProcedure); return(result); }); return(data); }
public async Task <int> ChangeStatus(string connectionString, GiftCodeCampaign campaign, bool isApproved) { return(await _giftcodeCampaignRepository.ChangeStatus(connectionString, campaign, isApproved)); }
public async Task <int> Change(string connectionString, GiftCodeCampaign campaign) { return(await _giftcodeCampaignRepository.Change(connectionString, campaign)); }