using System; using System.Collections.Generic; using System.Diagnostics; using System.Linq; using System.Data; using System.Threading.Tasks; using Microsoft.AspNetCore.Mvc; using Microsoft.Extensions.Logging; using MySystem.PxcModels; using System.Threading; using Library; using LitJson; namespace MySystem.Controllers { public class HomeController : Controller { private readonly ILogger _logger; public HomeController(ILogger logger) { _logger = logger; } public IActionResult Index() { return View(); } public IActionResult Error() { string isapi = Request.Headers["Api"].ToString(); if (isapi != "1") { if (Response.StatusCode == 500) { return Redirect("/public/errpage/pc/500.html"); } else if (Response.StatusCode == 502) { return Redirect("/public/errpage/pc/502.html"); } else if (Response.StatusCode == 404) { return Redirect("/public/errpage/pc/404.html"); } } return View(); } // 大盟主标记扫描 public string leaderflag() { WebCMSEntities db = new WebCMSEntities(); List ids = new List(); // List records = db.PosCouponRecord.Where(m => m.FromUserId == 597).ToList(); // foreach(PosCouponRecord record in records) // { // ids.Add(record.PosCouponId); // } ids.Add(6843); List coupons = db.PosCoupons.Where(m => ids.Contains(m.Id) && m.IsUse == 1).ToList(); foreach (PosCoupons coupon in coupons) { PosSns.Add(coupon.ExchangeCode); } foreach (PosCoupons coupon in coupons) { ChildNo(db, coupon.ExchangeCode, coupon.ExchangeCode, coupon.LeaderUserId); } // db.SaveChanges(); db.Dispose(); return "ok"; } List nos = new List(); private void ChildNo(WebCMSEntities db, string RootCheckNo, string CheckNo, int LeaderUserId) { MachineApply apply = db.MachineApply.FirstOrDefault(m => m.SwapSnExpand.Contains(CheckNo)); if(apply != null) { int len = 0; string[] SnList = apply.SwapSnExpand.TrimEnd('\n').Split('\n'); foreach(string sn in SnList) { if(PosSns.Contains(sn.Split(':')[0]) || nos.Contains(sn.Split(':')[0])) { len += 1; } } Orders order = db.Orders.FirstOrDefault(m => m.Id == apply.QueryCount); if(order != null) { if(!string.IsNullOrEmpty(order.SnNos)) { if(order.SnNos.Contains(",")) { string[] SwapSnExpands = order.SnNos.TrimEnd(',').Split(','); int index = 0; foreach(string no in SwapSnExpands) { if(!nos.Contains(no) && index < len) { index += 1; nos.Add(no); ChildNo(db, RootCheckNo, no, LeaderUserId); } } } else { string[] SwapSnExpands = order.SnNos.TrimEnd('\n').Split('\n'); int index = 0; foreach(string no in SwapSnExpands) { if(!nos.Contains(no) && index < len) { index += 1; nos.Add(no); ChildNo(db, RootCheckNo, no, LeaderUserId); } } } } else { MachineForSnNo forSnNo = db.MachineForSnNo.FirstOrDefault(m => m.SnNo == CheckNo) ?? new MachineForSnNo(); PosMachinesTwo pos = db.PosMachinesTwo.FirstOrDefault(m => m.Id == forSnNo.SnId); if(pos != null) { // pos.LeaderUserId = LeaderUserId; // Library.function.WriteLog(LeaderUserId + ":" + pos.PosSn + ":" + apply.SwapSnExpand.TrimEnd('\n').Split('\n').Length, "大盟主奖励标记机具"); Users user = db.Users.FirstOrDefault(m => m.Id == pos.BuyUserId) ?? new Users(); Library.function.WriteLog(pos.PosSn + ":" + RootCheckNo + ":" + user.MakerCode + ":" + user.RealName, "大盟主奖励标记机具"); } } } } else { MachineForSnNo forSnNo = db.MachineForSnNo.FirstOrDefault(m => m.SnNo == CheckNo) ?? new MachineForSnNo(); PosMachinesTwo pos = db.PosMachinesTwo.FirstOrDefault(m=>m.Id == forSnNo.SnId); if(pos != null) { // pos.LeaderUserId = LeaderUserId; // Library.function.WriteLog(LeaderUserId + ":" + pos.PosSn, "大盟主奖励标记机具"); Users user = db.Users.FirstOrDefault(m => m.Id == pos.BuyUserId) ?? new Users(); Library.function.WriteLog(pos.PosSn + ":" + RootCheckNo + ":" + user.MakerCode + ":" + user.RealName, "大盟主奖励标记机具"); } } } List PosSns = new List(); public string ScanNos() { PosSns = new List(); PosSns.Add("00005002681889125851"); WebCMSEntities db = new WebCMSEntities(); foreach(string PosSn in PosSns) { ChildNo(db, PosSn, PosSn, 0); } db.Dispose(); return "ok"; } public string test() { // WebCMSEntities db = new WebCMSEntities(); // AlipayPayBack2Service.Instance.DoOrderV2(db, 269424); // db.Dispose(); // List ids = new List(); // foreach(int id in ids) // { // TradeChangeService.Instance.StatTradeAmount(id, 2, 1); // } return "ok"; } } }