protected void btnAddActivity_Click(object sender, EventArgs e) { string sharePic = string.Empty; if (this.hidUploadImages.Value.Trim().Length > 0) { try { sharePic = this.UploadImage(); } catch { this.ShowMsg("图片上传失败,您选择的不是图片类型的文件,或者网站的虚拟目录没有写入文件的权限", false); return; } } if (!this.calendarEndDate.SelectedDate.HasValue) { this.ShowMsg("请选择活动结束时间", false); } else { DateTime value = this.calendarEndDate.SelectedDate.Value; DateTime?t = this.calendarStartDate.Text.ToDateTime(); int freeTimes = default(int); int consumptionIntegral = default(int); if ((DateTime?)value < t) { this.ShowMsg("活动开始时间不能晚于活动结束时间", false); } else if (!int.TryParse(this.txtMaxNum.Text, out freeTimes) || freeTimes.ToString() != this.txtMaxNum.Text) { this.ShowMsg("可抽奖次数必须是整数", false); } else if (!int.TryParse(this.txtUsePoints.Text, out consumptionIntegral)) { this.ShowMsg("每次参与消耗的积分不能为空,且是整数", false); } else { ActivityInfo activityInfo = ActivityHelper.GetActivityInfo(this.activityid); activityInfo.ActivityName = Globals.StripHtmlXmlTags(this.txtActiveName.Text); activityInfo.Description = this.txtdesc.Text; DateTime value2 = this.calendarEndDate.SelectedDate.Value; if (value2.Second == 0) { value2.AddSeconds(59.0); } activityInfo.EndDate = value2; activityInfo.ShareDetail = this.txtKeyword.Text; activityInfo.SharePic = sharePic; activityInfo.FreeTimes = freeTimes; activityInfo.ConsumptionIntegral = consumptionIntegral; Database database = DatabaseFactory.CreateDatabase(); using (DbConnection dbConnection = database.CreateConnection()) { dbConnection.Open(); DbTransaction dbTransaction = dbConnection.BeginTransaction(); try { if (ActivityHelper.UpdateActivityInfo(activityInfo, dbTransaction)) { string value3 = this.hidJson.Value; if (string.IsNullOrEmpty(value3)) { dbTransaction.Rollback(); this.ShowMsg("获得奖项不能为空!", false); } else { decimal d = default(decimal); bool flag = true; List <ActivityAwardItemInfo> activityItemList = ActivityHelper.GetActivityItemList(activityInfo.ActivityId); List <ActivityAwardItemInfo> list = JsonHelper.ParseFormJson <List <ActivityAwardItemInfo> >(value3); int[] array = new int[activityItemList.Count]; int num = 0; string text = ""; foreach (ActivityAwardItemInfo item in list) { if (item.AwardId > 0) { text = text + item.AwardId + ","; } } text = text.Remove(text.Length - 1); ActivityHelper.DeleteEidAwardItem(this.activityid, text, dbTransaction); foreach (ActivityAwardItemInfo item2 in activityItemList) { array[num] = item2.AwardId; num++; } if (list.Any()) { foreach (ActivityAwardItemInfo item3 in list) { if (item3.PrizeType == 2) { int couponSurplus = CouponHelper.GetCouponSurplus(item3.PrizeValue); if (item3.AwardNum > couponSurplus) { dbTransaction.Rollback(); this.ShowMsg("优惠券奖项数量不能大于总数!", false); return; } } d += item3.HitRate; item3.ActivityId = this.activityid; bool flag2 = false; if (array.Contains(item3.AwardId)) { if (item3.AwardId > 0) { ActivityAwardItemInfo newItemInfo = this.GetNewItemInfo(item3); if (!ActivityHelper.UpdateActivityAwardItemInfo(newItemInfo, dbTransaction)) { dbTransaction.Rollback(); this.ShowMsg("编辑失败!", false); return; } } else if (ActivityHelper.AddActivityAwardItemInfo(item3, dbTransaction) <= 0) { dbTransaction.Rollback(); this.ShowMsg("编辑失败!", false); return; } continue; } if (item3.AwardId > 0) { flag = ActivityHelper.DeleteActivityAwardItemByActivityId(item3.AwardId, dbTransaction); continue; } int num2 = ActivityHelper.AddActivityAwardItemInfo(item3, dbTransaction); if (num2 > 0) { flag = true; continue; } dbTransaction.Rollback(); this.ShowMsg("编辑失败!", false); return; } } if (d > 100m) { dbTransaction.Rollback(); this.ShowMsg("奖项概率总和不能大于100%!", false); } else if (flag) { dbTransaction.Commit(); this.ShowMsg("编辑成功!", true); base.Response.Redirect("NewLotteryActivity.aspx?type=" + this.type, true); base.Response.End(); } else { dbTransaction.Rollback(); this.ShowMsg("编辑失败!", false); } } } } catch (Exception ex) { dbTransaction.Rollback(); Globals.WriteLog("ActivityLog.txt", "Methed:Edit , Id:" + activityInfo.ActivityId + " , Msg:" + ex.Message); this.ShowMsg(ex.Message, false); } finally { dbConnection.Close(); } } } } }
protected void btnAddActivity_Click(object sender, EventArgs e) { string sharePic = string.Empty; if (this.hidUploadImages.Value.Trim().Length > 0) { try { sharePic = this.UploadImage(); } catch { this.ShowMsg("图片上传失败,您选择的不是图片类型的文件,或者网站的虚拟目录没有写入文件的权限", false); return; } } int freeTimes = default(int); int consumptionIntegral = default(int); if (string.IsNullOrEmpty(Globals.StripHtmlXmlTags(this.txtActiveName.Text))) { this.ShowMsg("标题不能为空,或者危险字符!", false); } else if (!this.calendarStartDate.SelectedDate.HasValue) { this.ShowMsg("请选择活动开始时间", false); } else if (!this.calendarEndDate.SelectedDate.HasValue) { this.ShowMsg("请选择活动结束时间", false); } else if (this.calendarEndDate.SelectedDate.Value < this.calendarStartDate.SelectedDate.Value) { this.ShowMsg("活动开始时间不能晚于活动结束时间", false); } else if (!int.TryParse(this.txtMaxNum.Text, out freeTimes) || freeTimes.ToString() != this.txtMaxNum.Text) { this.ShowMsg("可抽奖次数必须是整数", false); } else if (!int.TryParse(this.txtUsePoints.Text, out consumptionIntegral)) { this.ShowMsg("每次参与消耗的积分不能为空,且是整数", false); } else { ActivityInfo activityInfo = new ActivityInfo(); activityInfo.ActivityName = Globals.StripHtmlXmlTags(this.txtActiveName.Text); activityInfo.ActivityType = this.type; activityInfo.Description = this.txtdesc.Text; activityInfo.StartDate = this.calendarStartDate.SelectedDate.Value; activityInfo.EndDate = this.calendarEndDate.SelectedDate.Value.AddSeconds(59.0); activityInfo.ShareDetail = this.txtKeyword.Text; activityInfo.SharePic = sharePic; activityInfo.ResetType = ((!this.ooOpen.SelectedValue) ? 1 : 2); activityInfo.FreeTimes = freeTimes; activityInfo.ConsumptionIntegral = consumptionIntegral; activityInfo.CreateDate = DateTime.Now; Database database = DatabaseFactory.CreateDatabase(); using (DbConnection dbConnection = database.CreateConnection()) { dbConnection.Open(); DbTransaction dbTransaction = dbConnection.BeginTransaction(); try { long num = ActivityHelper.AddActivityInfo(activityInfo, dbTransaction); if (num > 0) { string value = this.hidJson.Value; if (string.IsNullOrEmpty(value)) { dbTransaction.Rollback(); this.ShowMsg("获得奖项不能为空!", false); } else { bool flag = true; decimal d = default(decimal); List <ActivityAwardItemInfo> list = JsonHelper.ParseFormJson <List <ActivityAwardItemInfo> >(value); if (list.Any()) { foreach (ActivityAwardItemInfo item in list) { if (item.PrizeType == 2) { int couponSurplus = CouponHelper.GetCouponSurplus(item.PrizeValue); if (item.AwardNum > couponSurplus) { dbTransaction.Rollback(); this.ShowMsg("优惠券奖项数量不能大于总数!", false); return; } } d += item.HitRate; if (d > 100m) { dbTransaction.Rollback(); this.ShowMsg("奖项概率总和不能大于100%!", false); return; } item.ActivityId = num.ToInt(0); int num2 = ActivityHelper.AddActivityAwardItemInfo(item, dbTransaction); if (num2 <= 0) { flag = false; dbTransaction.Rollback(); } } } if (flag) { dbTransaction.Commit(); this.ShowMsg("添加成功", true, "NewLotteryActivity.aspx?type=" + this.type); } } } else { dbTransaction.Rollback(); this.ShowMsg("添加失败!", false); } } catch (Exception ex) { dbTransaction.Rollback(); Globals.WriteLog("ActivityLog.txt", "Methed:btnAddActivity_Click , Id:" + activityInfo.ActivityId + " , Msg:" + ex.Message); this.ShowMsg(ex.Message, false); } finally { dbConnection.Close(); } } } }