public List <LotteryWinnerInfo> GetWinnerInfoList(int publishmentSystemId, ELotteryType lotteryType, int lotteryId) { var winnerInfoList = new List <LotteryWinnerInfo>(); string sqlWhere = $"WHERE {LotteryWinnerAttribute.PublishmentSystemId} = {publishmentSystemId} AND {LotteryWinnerAttribute.LotteryType} = '{ELotteryTypeUtils.GetValue(lotteryType)}'"; if (lotteryId > 0) { sqlWhere = $"WHERE {LotteryWinnerAttribute.PublishmentSystemId} = {publishmentSystemId} AND {LotteryWinnerAttribute.LotteryId} = {lotteryId}"; } var sqlSelect = BaiRongDataProvider.TableStructureDao.GetSelectSqlString(ConnectionString, TableName, 0, SqlUtils.Asterisk, sqlWhere, "ORDER BY ID DESC"); using (var rdr = ExecuteReader(sqlSelect)) { while (rdr.Read()) { var winnerInfo = new LotteryWinnerInfo(rdr); winnerInfoList.Add(winnerInfo); } rdr.Close(); } return(winnerInfoList); }
public void Update(LotteryWinnerInfo winnerInfo) { IDataParameter[] parms = null; var SQL_UPDATE = BaiRongDataProvider.TableStructureDao.GetUpdateSqlString(winnerInfo.ToNameValueCollection(), ConnectionString, TABLE_NAME, out parms); ExecuteNonQuery(SQL_UPDATE, parms); }
public List <LotteryWinnerInfo> GetWinnerInfoList(int publishmentSystemID, ELotteryType lotteryType, int lotteryID) { var winnerInfoList = new List <LotteryWinnerInfo>(); string SQL_WHERE = $"WHERE {LotteryWinnerAttribute.PublishmentSystemID} = {publishmentSystemID} AND {LotteryWinnerAttribute.LotteryType} = '{ELotteryTypeUtils.GetValue(lotteryType)}'"; if (lotteryID > 0) { SQL_WHERE = $"WHERE {LotteryWinnerAttribute.PublishmentSystemID} = {publishmentSystemID} AND {LotteryWinnerAttribute.LotteryID} = {lotteryID}"; } var SQL_SELECT = BaiRongDataProvider.TableStructureDao.GetSelectSqlString(ConnectionString, TABLE_NAME, 0, SqlUtils.Asterisk, SQL_WHERE, "ORDER BY ID DESC"); using (var rdr = ExecuteReader(SQL_SELECT)) { while (rdr.Read()) { var winnerInfo = new LotteryWinnerInfo(rdr); winnerInfoList.Add(winnerInfo); } rdr.Close(); } return(winnerInfoList); }
public int Insert(LotteryWinnerInfo winnerInfo) { var winnerID = 0; IDataParameter[] parms = null; var SQL_INSERT = BaiRongDataProvider.TableStructureDao.GetInsertSqlString(winnerInfo.ToNameValueCollection(), ConnectionString, TABLE_NAME, out parms); using (var conn = GetConnection()) { conn.Open(); using (var trans = conn.BeginTransaction()) { try { ExecuteNonQuery(trans, SQL_INSERT, parms); winnerID = BaiRongDataProvider.DatabaseDao.GetSequence(trans, TABLE_NAME); trans.Commit(); } catch { trans.Rollback(); throw; } } } return(winnerID); }
public int Insert(LotteryWinnerInfo winnerInfo) { var winnerId = 0; IDataParameter[] parms = null; var sqlInsert = BaiRongDataProvider.TableStructureDao.GetInsertSqlString(winnerInfo.ToNameValueCollection(), ConnectionString, TableName, out parms); using (var conn = GetConnection()) { conn.Open(); using (var trans = conn.BeginTransaction()) { try { winnerId = ExecuteNonQueryAndReturnId(trans, sqlInsert, parms); trans.Commit(); } catch { trans.Rollback(); throw; } } } return(winnerId); }
public LotteryWinnerInfo GetWinnerInfo(int publishmentSystemID, int lotteryID, string cookieSN, string wxOpenID, string userName) { ///改成 wxopenID var SQL_WHERE = ""; LotteryWinnerInfo winnerInfo = null; if (string.IsNullOrEmpty(wxOpenID)) { SQL_WHERE = $"WHERE {LotteryWinnerAttribute.PublishmentSystemID} = {publishmentSystemID} AND {LotteryWinnerAttribute.LotteryID} = {lotteryID} AND {LotteryWinnerAttribute.CookieSN}= '{cookieSN}'"; } else { SQL_WHERE = $"WHERE {LotteryWinnerAttribute.PublishmentSystemID} = {publishmentSystemID} AND {LotteryWinnerAttribute.LotteryID} = {lotteryID} AND {LotteryWinnerAttribute.WXOpenID}= '{wxOpenID}'"; } var SQL_SELECT = BaiRongDataProvider.TableStructureDao.GetSelectSqlString(ConnectionString, TABLE_NAME, 0, SqlUtils.Asterisk, SQL_WHERE, null); using (var rdr = ExecuteReader(SQL_SELECT)) { if (rdr.Read()) { winnerInfo = new LotteryWinnerInfo(rdr); } rdr.Close(); } if (winnerInfo == null) { //6月30日需要删除 if (!string.IsNullOrEmpty(wxOpenID)) { SQL_WHERE += $" AND {LotteryWinnerAttribute.WXOpenID} = '{wxOpenID}'"; } else if (!string.IsNullOrEmpty(userName)) { SQL_WHERE += $" AND {LotteryWinnerAttribute.UserName} = '{userName}'"; } SQL_SELECT = BaiRongDataProvider.TableStructureDao.GetSelectSqlString(ConnectionString, TABLE_NAME, 0, SqlUtils.Asterisk, SQL_WHERE, null); using (var rdr = ExecuteReader(SQL_SELECT)) { if (rdr.Read()) { winnerInfo = new LotteryWinnerInfo(rdr); } rdr.Close(); } } return(winnerInfo); }
public LotteryWinnerInfo GetWinnerInfo(int publishmentSystemId, int lotteryId, string cookieSn, string wxOpenId, string userName) { ///改成 wxopenID var sqlWhere = ""; LotteryWinnerInfo winnerInfo = null; if (string.IsNullOrEmpty(wxOpenId)) { sqlWhere = $"WHERE {LotteryWinnerAttribute.PublishmentSystemId} = {publishmentSystemId} AND {LotteryWinnerAttribute.LotteryId} = {lotteryId} AND {LotteryWinnerAttribute.CookieSn}= '{cookieSn}'"; } else { sqlWhere = $"WHERE {LotteryWinnerAttribute.PublishmentSystemId} = {publishmentSystemId} AND {LotteryWinnerAttribute.LotteryId} = {lotteryId} AND {LotteryWinnerAttribute.WxOpenId}= '{wxOpenId}'"; } var sqlSelect = BaiRongDataProvider.TableStructureDao.GetSelectSqlString(ConnectionString, TableName, 0, SqlUtils.Asterisk, sqlWhere, null); using (var rdr = ExecuteReader(sqlSelect)) { if (rdr.Read()) { winnerInfo = new LotteryWinnerInfo(rdr); } rdr.Close(); } if (winnerInfo == null) { //6月30日需要删除 if (!string.IsNullOrEmpty(wxOpenId)) { sqlWhere += $" AND {LotteryWinnerAttribute.WxOpenId} = '{wxOpenId}'"; } else if (!string.IsNullOrEmpty(userName)) { sqlWhere += $" AND {LotteryWinnerAttribute.UserName} = '{userName}'"; } sqlSelect = BaiRongDataProvider.TableStructureDao.GetSelectSqlString(ConnectionString, TableName, 0, SqlUtils.Asterisk, sqlWhere, null); using (var rdr = ExecuteReader(sqlSelect)) { if (rdr.Read()) { winnerInfo = new LotteryWinnerInfo(rdr); } rdr.Close(); } } return(winnerInfo); }
void rptContents_ItemDataBound(object sender, RepeaterItemEventArgs e) { if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) { var winnerInfo = new LotteryWinnerInfo(e.Item.DataItem); var ltlItemIndex = e.Item.FindControl("ltlItemIndex") as Literal; var ltlAward = e.Item.FindControl("ltlAward") as Literal; var ltlRealName = e.Item.FindControl("ltlRealName") as Literal; var ltlMobile = e.Item.FindControl("ltlMobile") as Literal; var ltlEmail = e.Item.FindControl("ltlEmail") as Literal; var ltlAddress = e.Item.FindControl("ltlAddress") as Literal; var ltlStatus = e.Item.FindControl("ltlStatus") as Literal; var ltlAddDate = e.Item.FindControl("ltlAddDate") as Literal; var ltlCashSN = e.Item.FindControl("ltlCashSN") as Literal; var ltlCashDate = e.Item.FindControl("ltlCashDate") as Literal; ltlItemIndex.Text = (e.Item.ItemIndex + 1).ToString(); LotteryAwardInfo awardInfo = null; if (awardInfoMap.ContainsKey(winnerInfo.AwardID)) { awardInfo = awardInfoMap[winnerInfo.AwardID]; } else { awardInfo = DataProviderWX.LotteryAwardDAO.GetAwardInfo(winnerInfo.AwardID); awardInfoMap.Add(winnerInfo.AwardID, awardInfo); } if (awardInfo != null) { ltlAward.Text = $@"<a href=""{GetRedirectUrl(PublishmentSystemID, ELotteryTypeUtils.GetEnumType(winnerInfo.LotteryType), winnerInfo.LotteryID, winnerInfo.AwardID, returnUrl)}"">{awardInfo.AwardName + ":" + awardInfo.Title}</a>"; } ltlRealName.Text = winnerInfo.RealName; ltlMobile.Text = winnerInfo.Mobile; ltlEmail.Text = winnerInfo.Email; ltlAddress.Text = winnerInfo.Address; ltlStatus.Text = EWinStatusUtils.GetText(EWinStatusUtils.GetEnumType(winnerInfo.Status)); ltlAddDate.Text = DateUtils.GetDateAndTimeString(winnerInfo.AddDate); ltlCashSN.Text = winnerInfo.CashSN; ltlCashDate.Text = DateUtils.GetDateAndTimeString(winnerInfo.CashDate); } }
public LotteryWinnerInfo GetWinnerInfo(int winnerID) { LotteryWinnerInfo winnerInfo = null; string SQL_WHERE = $"WHERE ID = {winnerID}"; var SQL_SELECT = BaiRongDataProvider.TableStructureDao.GetSelectSqlString(ConnectionString, TABLE_NAME, 0, SqlUtils.Asterisk, SQL_WHERE, null); using (var rdr = ExecuteReader(SQL_SELECT)) { if (rdr.Read()) { winnerInfo = new LotteryWinnerInfo(rdr); } rdr.Close(); } return(winnerInfo); }
public LotteryWinnerInfo GetWinnerInfo(int winnerId) { LotteryWinnerInfo winnerInfo = null; string sqlWhere = $"WHERE ID = {winnerId}"; var sqlSelect = BaiRongDataProvider.TableStructureDao.GetSelectSqlString(ConnectionString, TableName, 0, SqlUtils.Asterisk, sqlWhere, null); using (var rdr = ExecuteReader(sqlSelect)) { if (rdr.Read()) { winnerInfo = new LotteryWinnerInfo(rdr); } rdr.Close(); } return(winnerInfo); }
public List <LotteryWinnerInfo> GetLotteryWinnerInfoList(int publishmentSystemID, int lotteryID, int awardID) { var lotteryWinnerInfoList = new List <LotteryWinnerInfo>(); string SQL_WHERE = $"WHERE {LotteryWinnerAttribute.PublishmentSystemID} = {publishmentSystemID} AND {LotteryWinnerAttribute.LotteryID} = {lotteryID} AND {LotteryWinnerAttribute.AwardID} = {awardID}"; var SQL_SELECT = BaiRongDataProvider.TableStructureDao.GetSelectSqlString(ConnectionString, TABLE_NAME, 0, SqlUtils.Asterisk, SQL_WHERE, null); using (var rdr = ExecuteReader(SQL_SELECT)) { while (rdr.Read()) { var lotteryWinnerInfo = new LotteryWinnerInfo(rdr); lotteryWinnerInfoList.Add(lotteryWinnerInfo); } rdr.Close(); } return(lotteryWinnerInfoList); }
public List <LotteryWinnerInfo> GetLotteryWinnerInfoList(int publishmentSystemId, int lotteryId, int awardId) { var lotteryWinnerInfoList = new List <LotteryWinnerInfo>(); string sqlWhere = $"WHERE {LotteryWinnerAttribute.PublishmentSystemId} = {publishmentSystemId} AND {LotteryWinnerAttribute.LotteryId} = {lotteryId} AND {LotteryWinnerAttribute.AwardId} = {awardId}"; var sqlSelect = BaiRongDataProvider.TableStructureDao.GetSelectSqlString(ConnectionString, TableName, 0, SqlUtils.Asterisk, sqlWhere, null); using (var rdr = ExecuteReader(sqlSelect)) { while (rdr.Read()) { var lotteryWinnerInfo = new LotteryWinnerInfo(rdr); lotteryWinnerInfoList.Add(lotteryWinnerInfo); } rdr.Close(); } return(lotteryWinnerInfoList); }
public static bool Lottery(LotteryInfo lotteryInfo, List <LotteryAwardInfo> awardInfoList, string cookieSN, string wxOpenID, out LotteryAwardInfo awardInfo, out LotteryWinnerInfo winnerInfo, string userName, out string errorMessage) { errorMessage = string.Empty; awardInfo = null; winnerInfo = DataProviderWx.LotteryWinnerDao.GetWinnerInfo(lotteryInfo.PublishmentSystemId, lotteryInfo.Id, cookieSN, wxOpenID, userName); if (winnerInfo != null) { awardInfo = GetAwardInfo(awardInfoList, winnerInfo.AwardId); } else { var isMaxCount = false; var isMaxDailyCount = false; DataProviderWx.LotteryLogDao.AddCount(lotteryInfo.PublishmentSystemId, lotteryInfo.Id, cookieSN, wxOpenID, userName, lotteryInfo.AwardMaxCount, lotteryInfo.AwardMaxDailyCount, out isMaxCount, out isMaxDailyCount); if (isMaxCount) { errorMessage = $"对不起,每人最多允许抽奖{lotteryInfo.AwardMaxCount}次"; return(false); } else if (isMaxDailyCount) { errorMessage = $"对不起,每人每天最多允许抽奖{lotteryInfo.AwardMaxDailyCount}次"; return(false); } else { if (awardInfoList != null && awardInfoList.Count > 0) { var idWithProbabilityDictionary = new Dictionary <int, decimal>(); foreach (var lotteryAwardInfo in awardInfoList) { idWithProbabilityDictionary.Add(lotteryAwardInfo.Id, lotteryAwardInfo.Probability); } var awardID = WeiXinManager.Lottery(idWithProbabilityDictionary); if (awardID > 0) { var lotteryAwardInfo = GetAwardInfo(awardInfoList, awardID); if (lotteryAwardInfo != null && lotteryAwardInfo.TotalNum > 0) { var wonNum = DataProviderWx.LotteryWinnerDao.GetTotalNum(awardID); if (lotteryAwardInfo.TotalNum > wonNum) { awardInfo = lotteryAwardInfo; winnerInfo = new LotteryWinnerInfo { PublishmentSystemId = lotteryInfo.PublishmentSystemId, LotteryType = lotteryInfo.LotteryType, LotteryId = lotteryInfo.Id, AwardId = awardID, Status = EWinStatusUtils.GetValue(EWinStatus.Won), CookieSn = cookieSN, WxOpenId = wxOpenID, UserName = userName, AddDate = DateTime.Now }; winnerInfo.Id = DataProviderWx.LotteryWinnerDao.Insert(winnerInfo); DataProviderWx.LotteryAwardDao.UpdateWonNum(awardID); DataProviderWx.LotteryDao.AddUserCount(winnerInfo.LotteryId); } } } } } } return(true); }