/// <summary> /// 转换合买方案状态名称 /// </summary> /// <param name="togetherStatus">合买方案状态</param> /// <param name="togetherStatus">合买方案出票状态</param> /// <returns>合买方案状态名称</returns> public static string TogetherProgressName(TogetherSchemeProgress togetherStatus, TicketStatus ticketStatus = TicketStatus.Ticketed, BonusStatus bonusStatus = BonusStatus.Waitting, bool isPrizeMoney = false) { //合买方案进度 string status = string.Empty; switch (togetherStatus) { case TogetherSchemeProgress.SalesIn: status = "销售中"; break; case TogetherSchemeProgress.Standard: status = "达标"; switch (ticketStatus) { case TicketStatus.Waitting: status = "待出票"; break; case TicketStatus.Ticketing: status = "出票中"; break; case TicketStatus.PrintTicket: status = "已打票"; break; case TicketStatus.Abort: status = "被终止"; break; case TicketStatus.Skipped: status = "被跳过"; break; case TicketStatus.Ticketed: status = "已出票"; break; case TicketStatus.Error: status = "出票失败"; break; } break; case TogetherSchemeProgress.Finish: status = "满员"; switch (ticketStatus) { case TicketStatus.Waitting: status = "待出票"; break; case TicketStatus.Ticketing: status = "出票中"; break; case TicketStatus.PrintTicket: status = "已打票"; break; case TicketStatus.Abort: status = "被终止"; break; case TicketStatus.Skipped: status = "被跳过"; break; case TicketStatus.Ticketed: status = "已出票"; break; case TicketStatus.Error: status = "出票失败"; break; } break; case TogetherSchemeProgress.Completed: status = "已完成"; switch (ticketStatus) { case TicketStatus.Waitting: status = "待出票"; break; case TicketStatus.Ticketing: status = "出票中"; break; case TicketStatus.PrintTicket: status = "已打票"; break; case TicketStatus.Abort: status = "被终止"; break; case TicketStatus.Skipped: status = "被跳过"; break; case TicketStatus.Ticketed: switch (bonusStatus) { case BonusStatus.Waitting: status = "未开奖"; break; case BonusStatus.Awarding: status = "开奖中"; break; case BonusStatus.Error: status = "开奖错误"; break; case BonusStatus.Lose: status = "未中奖"; break; case BonusStatus.Win: status = isPrizeMoney ? "已派奖" : "已中奖";; break; default: status = "已完成"; break; } break; case TicketStatus.Error: status = "出票失败"; break; } break; case TogetherSchemeProgress.AutoStop: status = "撤单"; break; case TogetherSchemeProgress.Cancel: status = "撤单"; break; default: status = togetherStatus.ToString(); break; } return(status); }
/// <summary> /// 计算合买订单当前进度所在, 0:刚发起 1:投注中 2:已出票 3:已开奖 4:已派奖 /// </summary> /// <param name="togetherStatus">合买方案状态</param> /// <param name="ticketstatus">出票状态</param> /// <param name="BonusStatus">是否开奖</param> /// <returns>所在位置</returns> public static int Progress_StatusIndex(TogetherSchemeProgress togetherStatus, TicketStatus ticketStatus, BonusStatus bonusStatus, bool isPrizeMoney = false) { var at = 0; try { switch (togetherStatus) { case TogetherSchemeProgress.Finish: at = 2; break; case TogetherSchemeProgress.Cancel: case TogetherSchemeProgress.AutoStop: at = 0; break; case TogetherSchemeProgress.Standard: at = 2; break; case TogetherSchemeProgress.SalesIn: at = 1; break; case TogetherSchemeProgress.Completed: switch (ticketStatus) { case TicketStatus.Skipped: case TicketStatus.Error: case TicketStatus.Abort: at = 0; break; case TicketStatus.Ticketing: case TicketStatus.Waitting: at = 1; break; case TicketStatus.Ticketed: if ((bonusStatus == BonusStatus.Win || bonusStatus == BonusStatus.Lose)) { at = 3; if (bonusStatus == BonusStatus.Win && isPrizeMoney) { at = 4; } } else { at = 2; } break; } break; } } catch { } return(at); }
public void JoinTogether_AfterTranCommit(string userId, string schemeId, int buyCount, string gameCode, string gameType, string issuseNumber, decimal totalMoney, TogetherSchemeProgress progress) { // 更新最新动态,忽略异常,异常只记录日志 var desc = string.Format("参与了 {0}第{1}期¥{2:N0}的合买方案 参与{3}元", GetGameName(gameCode, gameType), issuseNumber, totalMoney, buyCount); UsefullHelper.TryDoAction(() => UpdateProfileDynamic(userId, schemeId, gameCode, issuseNumber, buyCount, "参与合买")); // 更新统计数据 UsefullHelper.TryDoAction(() => UpdateProfileDataReport(userId, null, 1, null, null)); //普通用户推广 UsefullHelper.TryDoAction(() => UpdateSporeadUserData(userId, gameCode, totalMoney)); //分享推广活动 用户购彩了 送红包 只送一次 //UsefullHelper.TryDoAction(() => FirstLotteryGiveRedBag(userId)); }