/* * 创客账户变动记录 */ using System; using System.Web; using System.Collections.Generic; using System.Diagnostics; using System.Linq; using System.Data; using System.Threading.Tasks; using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Http; using Microsoft.Extensions.Logging; using Microsoft.Extensions.Options; using MySystem.OpModels; using Library; using LitJson; using MySystemLib; namespace MySystem.Areas.Admin.Controllers { [Area("Admin")] [Route("Admin/[controller]/[action]")] public class AmountRecordOperateController : BaseController { public AmountRecordOperateController(IHttpContextAccessor accessor, ILogger logger, IOptions setting) : base(accessor, logger, setting) { OtherMySqlConn.connstr = ConfigurationManager.AppSettings["OpSqlConnStr"].ToString(); } // #region 运营中心额度变动明细记录列表 // /// // /// 根据条件查询运营中心额度变动明细记录列表 // /// // /// // public IActionResult Index(AmountRecord data, string right, int UserId = 0) // { // ViewBag.RightInfo = RightInfo; // ViewBag.right = right; // return View(); // } // #endregion // #region 根据条件查询运营中心额度变动明细记录列表 // /// // /// 运营中心额度变动明细记录列表 // /// // /// // public JsonResult IndexData(AmountRecord data, string MakerCode, string OpCode, string CreateDateData, int page = 1, int limit = 30) // { // Dictionary Fields = new Dictionary(); // string condition = " and Status>-1"; // //创客编号 // if (!string.IsNullOrEmpty(MakerCode)) // { // var user = db.Users.FirstOrDefault(m => m.MakerCode == MakerCode) ?? new Models.Users(); // condition += " and UserId=" + user.Id; // } // //运营中心编号 // if (!string.IsNullOrEmpty(OpCode)) // { // condition += " and UserId in (select UserId from SysAdmin where OpCode='" + OpCode + "')"; // } // if (!string.IsNullOrEmpty(CreateDateData)) // { // string[] datelist = CreateDateData.Split(new string[] { " - " }, StringSplitOptions.None); // // string start = datelist[0]; // // string end = datelist[1]; // // condition += " and CreateDate>='" + start + " 00:00:00' and CreateDate<='" + end + " 23:59:59'"; // var start = Convert.ToDateTime(Convert.ToDateTime(datelist[0]).ToString("yyyy-MM-dd")); // var end = Convert.ToDateTime(Convert.ToDateTime(datelist[1]).ToString("yyyy-MM-dd") + " 23:59:59"); // var check = opdb.AmountRecord.Any(m => m.CreateDate >= start); // var checks = opdb.AmountRecord.Any(m => m.CreateDate <= end); // if (check) // { // var sId = opdb.AmountRecord.Where(m => m.CreateDate >= start).Min(m => m.Id); // condition += " and Id >=" + sId; // } // if (checks) // { // var eId = opdb.AmountRecord.Where(m => m.CreateDate <= end).Max(m => m.Id); // condition += " and Id <=" + eId; // } // } // else // { // var start = Convert.ToDateTime(DateTime.Now.AddMonths(-1).ToString("yyyy-MM") + "-01"); // var check = opdb.AmountRecord.Any(m => m.CreateDate >= start); // if (check) // { // var minId = opdb.AmountRecord.Where(m => m.CreateDate >= start).Min(m => m.Id); // var Info = function.ReadInstance("/WritePage/AmountRecordOperate/AmountRecordOperate.txt"); // if (string.IsNullOrEmpty(Info.ToString())) // { // function.WritePage("/WritePage/AmountRecordOperate/", "AmountRecordOperate.txt", minId.ToString()); // condition += " and Id >=" + minId; // } // else if (minId != int.Parse(Info)) // { // function.WritePage("/WritePage/AmountRecordOperate/", "AmountRecordOperate.txt", minId.ToString()); // condition += " and Id >=" + minId; // } // else // { // condition += " and Id >=" + Convert.ToInt32(Info); // } // } // else // { // condition += " and Id =0"; // } // } // Dictionary obj = new AdminContentByConn(_accessor.HttpContext, PublicFunction.OpTables, OpConn).IndexData("AmountRecord", Fields, "Id desc", "0", page, limit, condition); // List> diclist = obj["data"] as List>; // foreach (Dictionary dic in diclist) // { // int UserId = int.Parse(dic["UserId"].ToString()); // SysAdmin sysAdmin = opdb.SysAdmin.FirstOrDefault(m => m.UserId == UserId) ?? new SysAdmin(); // dic["OpCode"] = sysAdmin.OpCode; // dic["MakerCode"] = sysAdmin.MakerCode; // dic["MakerName"] = sysAdmin.MakerName; // dic["SourceInfo"] = ""; // if (int.Parse(dic["QueryCount"].ToString()) > 0) // { // var Id = int.Parse(dic["QueryCount"].ToString()); // var orderInfo = db.Orders.FirstOrDefault(m => m.Id == Id) ?? new Models.Orders(); // var userInfo = db.Users.FirstOrDefault(m => m.Id == orderInfo.UserId) ?? new Models.Users(); // dic["SourceInfo"] = userInfo.MakerCode + "
" + userInfo.RealName; // } // int OperateType = int.Parse(dic["OperateType"].ToString()); // dic["OperateTypeName"] = ""; // if (OperateType == 1) dic["OperateTypeName"] = "收入"; // if (OperateType == 2) dic["OperateTypeName"] = "支出"; // } // return Json(obj); // } // #endregion #region 运营中心额度变动明细记录列表v2 /// /// 根据条件查询运营中心额度变动明细记录列表v2 /// /// public IActionResult Index(AmountRecordNew data, string right, int UserId = 0) { ViewBag.RightInfo = RightInfo; ViewBag.right = right; return View(); } #endregion #region 根据条件查询运营中心额度变动明细记录列表v2 /// /// 运营中心额度变动明细记录列表v2 /// /// public JsonResult IndexData(AmountRecordNew data, string MakerCode, string OpCode, string CreateDateData, int page = 1, int limit = 30) { Dictionary Fields = new Dictionary(); string condition = " and Status>-1"; //创客编号 if (!string.IsNullOrEmpty(MakerCode)) { var user = db.Users.FirstOrDefault(m => m.MakerCode == MakerCode) ?? new Models.Users(); condition += " and UserId=" + user.Id; } //运营中心编号 if (!string.IsNullOrEmpty(OpCode)) { condition += " and UserId in (select UserId from SysAdmin where OpCode='" + OpCode + "')"; } if (!string.IsNullOrEmpty(CreateDateData)) { string[] datelist = CreateDateData.Split(new string[] { " - " }, StringSplitOptions.None); // string start = datelist[0]; // string end = datelist[1]; // condition += " and CreateDate>='" + start + " 00:00:00' and CreateDate<='" + end + " 23:59:59'"; var start = Convert.ToDateTime(Convert.ToDateTime(datelist[0]).ToString("yyyy-MM-dd")); var end = Convert.ToDateTime(Convert.ToDateTime(datelist[1]).ToString("yyyy-MM-dd") + " 23:59:59"); var check = opdb.AmountRecordNew.Any(m => m.CreateDate >= start); var checks = opdb.AmountRecordNew.Any(m => m.CreateDate <= end); if (check) { var sId = opdb.AmountRecordNew.Where(m => m.CreateDate >= start).Min(m => m.Id); condition += " and Id >=" + sId; } if (checks) { var eId = opdb.AmountRecordNew.Where(m => m.CreateDate <= end).Max(m => m.Id); condition += " and Id <=" + eId; } } else { var start = Convert.ToDateTime(DateTime.Now.AddMonths(-1).ToString("yyyy-MM") + "-01"); var check = opdb.AmountRecordNew.Any(m => m.CreateDate >= start); if (check) { var minId = opdb.AmountRecordNew.Where(m => m.CreateDate >= start).Min(m => m.Id); var Info = function.ReadInstance("/WritePage/AmountRecordOperateNew/AmountRecordOperateNew.txt"); if (string.IsNullOrEmpty(Info.ToString())) { function.WritePage("/WritePage/AmountRecordOperateNew/", "AmountRecordOperateNew.txt", minId.ToString()); condition += " and Id >=" + minId; } else if (minId != int.Parse(Info)) { function.WritePage("/WritePage/AmountRecordOperateNew/", "AmountRecordOperateNew.txt", minId.ToString()); condition += " and Id >=" + minId; } else { condition += " and Id >=" + Convert.ToInt32(Info); } } else { condition += " and Id =0"; } } Dictionary obj = new AdminContentByConn(_accessor.HttpContext, PublicFunction.OpTables, OpConn).IndexData("AmountRecordNew", Fields, "Id desc", "0", page, limit, condition); List> diclist = obj["data"] as List>; foreach (Dictionary dic in diclist) { int UserId = int.Parse(dic["UserId"].ToString()); SysAdmin sysAdmin = opdb.SysAdmin.FirstOrDefault(m => m.UserId == UserId) ?? new SysAdmin(); dic["OpCode"] = sysAdmin.OpCode; dic["MakerCode"] = sysAdmin.MakerCode; dic["MakerName"] = sysAdmin.MakerName; dic["UseAmount"] = Math.Abs(decimal.Parse(dic["UseAmount"].ToString())); dic["BeforeAmount"] = Math.Abs(decimal.Parse(dic["BeforeAmount"].ToString())); dic["AfterAmount"] = Math.Abs(decimal.Parse(dic["AfterAmount"].ToString())); dic["UseValidAmount"] = Math.Abs(decimal.Parse(dic["UseValidAmount"].ToString())); dic["AfterValidAmount"] = Math.Abs(decimal.Parse(dic["AfterValidAmount"].ToString())); dic["UseTotalAmt"] = Math.Abs(decimal.Parse(dic["UseTotalAmt"].ToString())); dic["AfterTotalAmt"] = Math.Abs(decimal.Parse(dic["AfterTotalAmt"].ToString())); dic["UseValidForGetAmount"] = Math.Abs(decimal.Parse(dic["UseValidForGetAmount"].ToString())); dic["AfterValidForGetAmount"] = Math.Abs(decimal.Parse(dic["AfterValidForGetAmount"].ToString())); var DataType = int.Parse(dic["DataType"].ToString());//来源类型,区分表(1订单,2机具,3申请记录,4购买运营中心,5预扣款 6兑换大盟主) var Id = int.Parse(dic["DataId"].ToString());//来源Id,表的主键Id var SourceInfo = ""; if (DataType > 0 && Id > 0) { var SourceUserId = 0; if (DataType == 1) { var orderInfo = db.Orders.FirstOrDefault(m => m.Id == Id) ?? new Models.Orders(); SourceUserId = orderInfo.UserId; } if (DataType == 2) { var pos = db.PosMachinesTwo.FirstOrDefault(m => m.Id == Id) ?? new Models.PosMachinesTwo(); SourceUserId = pos.BuyUserId; } if (DataType == 3) { var storeMachineApply = db.StoreMachineApply.FirstOrDefault(m => m.Id == Id) ?? new Models.StoreMachineApply(); SourceUserId = storeMachineApply.UserId; } if (DataType == 4) { var sysAdminInfo = opdb.SysAdmin.FirstOrDefault(m => m.Id == Id) ?? new SysAdmin(); SourceUserId = sysAdminInfo.UserId; } if (DataType == 5) { var toChargeBackRecord = db.ToChargeBackRecord.FirstOrDefault(m => m.Id == Id) ?? new Models.ToChargeBackRecord(); SourceUserId = toChargeBackRecord.UserId; } if (DataType == 6) { var userExchangeLeaderRecord = db.UserExchangeLeaderRecord.FirstOrDefault(m => m.Id == Id) ?? new Models.UserExchangeLeaderRecord(); SourceUserId = userExchangeLeaderRecord.UserId; } var userInfo = db.Users.FirstOrDefault(m => m.Id == SourceUserId) ?? new Models.Users(); SourceInfo = userInfo.MakerCode + "_" + userInfo.RealName; } dic["SourceInfo"] = SourceInfo; int OperateType = int.Parse(dic["OperateType"].ToString()); dic["OperateTypeName"] = ""; if (OperateType == 1) dic["OperateTypeName"] = "收入"; if (OperateType == 2) dic["OperateTypeName"] = "支出"; } return Json(obj); } #endregion } }