using Common.Models.Enums; using Common.Models.SubTables; using Common.Models.UnqTables; using Server.MyClass.Views; using SqlSugar; using System; using System.Collections.Generic; using System.Web.Http; namespace Server.Controllers.FinancialManagement { public class CashListController : DefaultController { /// /// 获取机器人信息 /// /// [HttpPost, ErrorFilter] public WebResult GetRobotInfo() { var PageIndex = GetInt("PageIndex"); var PageSize = GetInt("PageSize"); var tNumber = 0; var Keyword = GetString("Keyword"); var exp = Expressionable.Create(); if (!string.IsNullOrEmpty(Keyword)) { exp.And(f => f.Nickname.Contains(Keyword)); } var DataList = Db.Queryable().Where(exp.ToExpression()) .Select(m => new RobotInfo { RobotId = m.Id, RobotName = m.Nickname }) .ToPageList(PageIndex, PageSize, ref tNumber); var res = new PageResult(DataList, tNumber, PageSize, PageIndex); return PutData(res); } /// /// 查询提现记录 /// /// [HttpPost, ErrorFilter] public WebResult GetCashList() { var RobotId = GetInt("RobotId");//机器人Id:0:所有机器人 不为0:指定机器人 var MinTime = GetTime("MinTime");//起始时间 var MaxTime = GetTime("MaxTime");//结束时间 var VerifyStatus = GetEnum("VerifyStatus");//审核状态:1: 未审核 2:已审核 /* 微信昵称 = 1, 微信ID = 2 */ var KeywordType = GetInt("KeywordType"); var Keyword = GetString("Keyword"); var PageIndex = GetInt("PageIndex", true); var PageSize = GetInt("PageSize", true); if (PageSize > 100) PageSize = 100; var tNumber = 0; var exp = Expressionable.Create(); if (MinTime == DateTime.MinValue) MinTime = DateTime.Now.AddMonths(-6); if (MaxTime == DateTime.MinValue) MaxTime = DateTime.Now; exp.And(a => a.ApplyTime > MinTime && a.ApplyTime < MaxTime); if (RobotId > 0) exp.And(a => a.RobotId == RobotId); if (VerifyStatus != 0) exp.And(a => a.VerifyStatus == VerifyStatus); if (!string.IsNullOrEmpty(Keyword)) { /* 微信昵称 = 1, 微信ID = 2, 推荐人微信ID = 3,推荐人昵称 = 4 */ if (KeywordType == 1) { var nickNames = Db.Queryable().Where(f => f.NickName.Contains(Keyword)) .Select(f => f.Id).Take(20).ToList(); if (nickNames == null) { return PutData(new PageResult(new List(), tNumber, PageSize, PageIndex)); } exp.And(a => nickNames.Contains(a.UserId)); } else if (KeywordType == 2) { var user = Db.Queryable().Where(f => f.Username == Keyword && f.UserType == Common.Models.Enums.UserType.微信用户).First(); if (user == null) { return PutData(new PageResult(new List(), tNumber, PageSize, PageIndex)); } exp.And(a => a.UserId == user.Id); } } var DataList = Db.Queryable() .Where(exp.ToExpression()) .LeftJoin((a, b) => a.RobotId == b.Id) .LeftJoin((a, b, c) => a.UserId == c.Id) .Select((a, b, c) => new CashListShow { Id = a.Id, UserId = c.Id, NickName = c.NickName, RobotId = b.Id, RobotName = b.Nickname, CashAmount = a.CashAmount, TotalCash = a.TotalCash, TotalConfirm = a.TotalConfirm, TotalRefund = a.TotalRefund, ApplyTime = a.ApplyTime, VerifyStatus = a.VerifyStatus, VerifyTime = a.VerifyTime, Remark = a.Remark, }) .SplitTable(MinTime, MaxTime) .ToPageList(PageIndex, PageSize, ref tNumber); var res = new PageResult(DataList, tNumber, PageSize, PageIndex); return PutData(res); } } }