// POST api/Pay?token={token}&pid={pid}&sid={sid}&start={start}&end={end}&type={type}&playname={playname}&userpid={userpid}&role={role}&index={index}&size={size} /// <summary>查询玩家充值所有记录</summary> /// <param name="token">令牌</param> /// <param name="role">角色</param> /// <param name="pid">平台id</param> /// <param name="sid">服务器id</param> /// <param name="start">开始时间</param> /// <param name="end">结束时间</param> /// <param name="type">玩家昵称/账号</param> /// <param name="playname">玩家昵称</param> /// <param name="index">分页索引</param> /// <param name="size">分页大小</param> /// <param name="userpid">用户平台id</param> /// <returns></returns> public PagerPay PostPlayerPay(string token, int pid, int sid, Int64 start, Int64 end, int type, string playname, Int32 userpid, Int32 role, Int32 index, Int32 size) { var pager = new PagerPay(); if (!IsToken(token)) { return(pager); //验证会话 //还有一个权限问题 } if (sid == 0 || playname == null) { return(pager); //服务器和玩家不能为空 } tgm_platform.SetDbConnName(tgm_connection); var pf = tgm_platform.FindByid(pid); tgm_server.SetDbConnName(tgm_connection); var server = tgm_server.FindByid(sid); if (pf == null || server == null) { return(pager); } List <tgm_record_pay> list; var count = 0; if (type == 0) { if (start > 0 && end > 0) { tgm_record_pay.SetDbConnName(tgm_connection); //充值记录 list = tgm_record_pay.GetTimeSidNameList(start, end, Convert.ToInt32(sid), playname, index, size, out count); } else { tgm_record_pay.SetDbConnName(tgm_connection); //充值记录 list = tgm_record_pay.GetListByNameSid(Convert.ToInt32(sid), playname, index, size, out count); } } else { if (start > 0 && end > 0) { tgm_record_pay.SetDbConnName(tgm_connection); //充值记录 list = tgm_record_pay.GetTimeSidCodeList(start, end, Convert.ToInt32(sid), playname, index, size, out count); } else { tgm_record_pay.SetDbConnName(tgm_connection); //充值记录 list = tgm_record_pay.GetListByCodeSid(Convert.ToInt32(sid), playname, index, size, out count); } } if (!list.Any()) { return(pager); } var paylist = (from item in list select ToEntity.ToSingleRecordPay(pf.name, server.name, item)).ToList(); pager = new PagerPay() { result = 1, Recordpay = paylist, Pager = new PagerInfo { CurrentPageIndex = index, PageSize = size, RecordCount = count }, //total = list.Sum(m => m.pay_total), //month_total = list.Sum(m => m.pay_month) }; return(pager); }
// POST api/Pay?token={token}&role={role}&pid={pid}&index={index}&size={size} /// <summary>进入界面时,显示充值所有记录</summary> /// <param name="token"></param> /// <param name="role"></param> /// <param name="pid"></param> /// <param name="index"></param> /// <param name="size"></param> /// <returns></returns> public PagerPay PostSinglePay(string token, Int64 role, Int32 pid, Int32 index = 1, Int32 size = 10) { var pager = new PagerPay(); if (!IsToken(token)) { return(pager); //验证会话 } List <tgm_record_pay> paylist; List <tgm_server> list; var plist = new List <SingleRecordPay>(); var count = 0; if (role == 10000) { tgm_server.SetDbConnName(tgm_connection); list = tgm_server.FindAll().ToList(); if (list.Count == 0) { return(pager); } tgm_record_pay.SetDbConnName(tgm_connection); paylist = tgm_record_pay.GetListByPids(index, size, out count); var platforms = tgm_platform.FindAll().ToList(); if (paylist.Count == 0 || platforms.Count == 0) { return(pager); } plist.AddRange(from item in paylist let server = list.FirstOrDefault(m => m.id == item.sid) where server != null let p = platforms.FirstOrDefault(m => m.id == server.pid) where p != null select ToEntity.ToSingleRecordPay(p.name, server.name, item)); } else { tgm_server.SetDbConnName(tgm_connection); list = tgm_server.GetServerList(pid).ToList(); if (list.Count == 0) { return(pager); } var sids = string.Join(",", list.ToList().Select(m => m.id).ToArray()); tgm_record_pay.SetDbConnName(tgm_connection); paylist = tgm_record_pay.GetListByPid(index, size, sids, out count); if (paylist == null) { return(pager); } tgm_platform.SetDbConnName(tgm_connection); var platform = tgm_platform.FindByid(pid); if (platform == null) { return(pager); } plist.AddRange(from item in paylist let server = list.FirstOrDefault(m => m.id == item.sid) where server != null select ToEntity.ToSingleRecordPay(platform.name, server.name, item)); } pager = new PagerPay() { result = 1, Recordpay = plist, Pager = new PagerInfo { CurrentPageIndex = index, PageSize = size, RecordCount = count }, }; return(pager); }