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.Models; 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 test(int id = 0) { string txt = "ok"; // txt = WeChatFunction.Instance.QueryProfitShare("1646405429","4200001807202306098649105270","2023060910241258564572510"); // ProfitHelper.Instance.ReturnStat(Id, 2); WebCMSEntities db = new WebCMSEntities(); List oids = new List(); if(id > 0) { oids.Add(id); } else { oids.Add(15); oids.Add(16); oids.Add(17); oids.Add(18); oids.Add(19); oids.Add(20); } foreach(int oid in oids) { ConsumerOrders order = db.ConsumerOrders.FirstOrDefault(m => m.Id == oid); if(order != null) { RedisDbconn.Instance.AddList("ConsumerOrders:Divi:2:List", order.Id.ToString()); // RedisDbconn.Instance.AddList("ConsumerOrders:Divi:2:" + order.MerchantId, order); } } db.Dispose(); return txt; } public string testAlipay() { // string content = AlipayFunction.Instance.QuerySignStatus("2023061317351531100060045"); // List Parameters = new List(); // Parameters.Add(new RoyaltyParameters() // { // Account = "2088141704579033", // Amount = "0.01", // }); // string content = AlipayFunction.Instance.Settle("2023061615441556447868073", "2023061622001451251436120885", Parameters); // string content = AlipayFunction.Instance.BindSettleRelation(DateTime.Now.ToString("yyyyMMddHHmmssfff") + function.get_Random(8), "2088141704579033"); // string content = AlipayFunction.Instance.Refund("2023061622001451251436120885", "0.01", "门店分红"); // string content = AlipayFunction.Instance.QuerySettle("2023071214274372011988068", "2023071222001457121457238496", "202307BB6d61386d17104395831e3ea6309f0X57"); // MerchantConfirmService.Instance.StartDo(68, 2); // string content = AlipayFunction.Instance.BindSettleRelation(DateTime.Now.ToString("yyyyMMddHHmmssfff") + function.get_Random(8), AlipayFunction.Instance.Pid, "202307BB6d61386d17104395831e3ea6309f0X57"); List ordernos = new List(); ordernos.Add("2023083018185453946193409"); ordernos.Add("2023083020130453429050364"); ordernos.Add("2023083020120518590325447"); ordernos.Add("2023083018145549174540449"); ordernos.Add("2023083018233529291795428"); ordernos.Add("2023083019384237451076842"); ordernos.Add("2023091220063534056177559"); ordernos.Add("2023083019193537632563171"); ordernos.Add("2023083019152337193420395"); ordernos.Add("2023083018121967866866300"); ordernos.Add("2023081715193607722249986"); WebCMSEntities db = new WebCMSEntities(); List orders = db.ConsumerOrders.Where(m => ordernos.Contains(m.OrderNo)).OrderBy(m => m.Id).ToList(); foreach(ConsumerOrders order in orders) { MerchantInfo merchant = db.MerchantInfo.FirstOrDefault(m => m.Id == order.MerchantId) ?? new MerchantInfo(); MerchantParamSet set = db.MerchantParamSet.FirstOrDefault(m => m.Id == order.MerchantId) ?? new MerchantParamSet(); if(order.IsAct == 1 && order.PayMoney >= set.MinPayMoney) { MerchantAddInfo merchantAdd = db.MerchantAddInfo.FirstOrDefault(m => m.Id == order.MerchantId) ?? new MerchantAddInfo(); // //添加分账接收方 // if(merchantAdd.Sort == 0) // { // string content = AlipayFunction.Instance.BindSettleRelation(DateTime.Now.ToString("yyyyMMddHHmmssfff") + function.get_Random(8), AlipayFunction.Instance.Pid, merchantAdd.AlipayAuthToken); // LogHelper.Instance.WriteLog(DateTime.Now.ToString() + "\n" + content, "支付宝添加分账方"); // merchantAdd.Sort = 1; // db.SaveChanges(); // } // //发起分账 // decimal fee = order.PayMoney * 0.01M; // if(fee >= 0.01M) // { // string TradeNo = order.SeoTitle; // string OrderNo = order.OrderNo; // List Parameters = new List(); // Parameters.Add(new RoyaltyParameters() // { // Account = AlipayFunction.Instance.Pid, // Amount = fee.ToString("f2"), // }); // AlipayFunction.Instance.Settle(OrderNo, TradeNo, Parameters, merchantAdd.AlipayAuthToken); // //开始监听分账状态 // Dictionary req = new Dictionary(); // req.Add("TradeNo", TradeNo); //支付宝订单号 // req.Add("OrderNo", OrderNo); //商户订单号 // req.Add("AuthToken", merchantAdd.AlipayAuthToken); // RedisDbconn.Instance.AddList("AlipayShareQueue", Newtonsoft.Json.JsonConvert.SerializeObject(req)); // } //添加分账接收方 if(merchant.Version == 0) { WeChatFunction.Instance.AddReceive(merchantAdd.SubMchid, "MERCHANT_ID", WeChatFunction.Instance.MchId, WeChatFunction.Instance.MchName, "PARTNER"); merchant.Version = 1; db.SaveChanges(); } //发起分账 decimal fee = order.PayMoney; //单位:分 if(fee >= 1) { string TradeNo = order.SeoTitle; string OrderNo = order.OrderNo; List Receivers = new List(); Receivers.Add(new ReceiverList() { type = "MERCHANT_ID", //分账接收方类型 account = WeChatFunction.Instance.MchId, //分账接收方账号 amount = int.Parse(fee.ToString("f0")), //分账金额 description = "服务费", //分账描述 }); WeChatFunction.Instance.ProfitShare(merchantAdd.SubMchid, TradeNo, OrderNo, Receivers); //开始监听分账状态 Dictionary req = new Dictionary(); req.Add("SubMchid", merchantAdd.SubMchid); //子商户号 req.Add("TradeNo", TradeNo); //微信订单号 req.Add("OrderNo", OrderNo); //商户订单号 RedisDbconn.Instance.AddList("ProfitShareQueue", Newtonsoft.Json.JsonConvert.SerializeObject(req)); } } } db.Dispose(); return "ok"; } public string test1(string money) { // WebCMSEntities db = new WebCMSEntities(); // MerchantAddInfo info = db.MerchantAddInfo.FirstOrDefault(m => m.Id == 2) ?? new MerchantAddInfo(); // string result = WeChatFunctionForHD.Instance.MerchantApply(info); // string result = AlipayFunctionForHD.Instance.AuthOrderCreate(info, info.AlipayAuthToken); // string result = AlipayFunctionForHD.Instance.AuthOrderQuery("202308011033330180"); // db.Dispose(); // string result = AliIotFunction.Instance.IotBind("2088720723136476", "018271007948"); // string result = AliIotFunction.Instance.IotUnBind("2088720723136476", "018271007948"); // string result = AliIotFunction.Instance.IotDeviceQuery("018271007948"); //{"alipay_commerce_iot_device_baseinfo_query_response":{"code":"10000","msg":"Success","device_id":"01010VO0cD5XzXQdca5i38e2I4wLHskg23hiuvEBASuHHvGKq982oko"},"sign":"hlGINohkf2g/ZqLNMH5FjVAXXxZYIHpOy8qSLBf3LJhTF1IH11oFsBPlNq5CWfI351tsoewB9aQ1CnqI0CwIeWV3fk+Bxc+n0GqJ0ePlvumdUJDwcMFUyE6xzmO0iepHbTE3akQVvHEsnwxOVJ4TD/NEwfacJi5WaoQKJnZcOzbVJmpmb5q67QObQTjsGdeV89/B+xK2JDcIBulorL+oUIALH0I8wrarJI8PpSATtZr6PEXjRzLaoYrTVnRVLj62DlSDhAlbrKx8924O8iW+j5rs16XZbdLk9kej884vCntks+6WwUaymM1YDS2xXhxTZPxrQow9h0WJ8R9EBavQFw=="} string result = AliIotFunction.Instance.IotTradeVoice("01010VO0cD5XzXQdca5i38e2I4wLHskg23hiuvEBASuHHvGKq982oko", "2088720723136476", "55555", money, "OTHER"); return result; //{"alipay_merchant_indirect_authorder_create_response":{"code":"10000","msg":"Success","order_no":"202308011033330180","order_status":"AUDITING"},"sign":"FINNZ7lw92Igku4KfNp5+ETLLyBKgR0faoGU4mceiiAwe85jbslbwAuxqgewGxmrPys7iGkwTNkgK7D7mx+sjF1mHtPXBszb1WAeD5kF764/qQ7r1ziXI252D8+qN/GfUxtnaR1mFRHbXpeh9z3Hjiey0xtThPCRZO63rgNICa9oJ/kRTQ5AZpn1Ih+hWaSFVDHDhBTBJ/j1uzs4PedrVZqqUUXtFf+o0XI0mctdHjaXomSr5bx9wsc8asEveXDSP4s1JksqJy0Gi0x/Oqc9aq03eV1cwO+Hk5YMwML9Rm+mZDUrIDwUK5gsioM0wGVqJy19o2O2wAecOYtCFRNXnA=="} //{"alipay_merchant_indirect_authorder_querystatus_response":{"code":"10000","msg":"Success","order_no":"202308011033330180","order_status":"CONTACT_CONFIRM","qr_code":"https:\/\/mobilecodec.alipay.com\/show.htm?code=2ie16321tmy5uxwph8qze93"},"sign":"acEG5SvoUwjNgF8Ge/pGFTnLbbFCodyoVYrNV2WiKoGs81509JEPtLdZYl05ck+UI9qZ4GqWGqMBKP6hjk8GsVaQ53NvRTdvxmHFdEx6iskI5+WohM0m6HZMZgvDPvrqivqyQIkylX/uM/GKhQVK0/wMiRcfRuTQ/17OKJqd6fSA0mSgE27NI1K0JuIiJulL4V447RVIOVb5rW7QFFqf+7+vAu5/XaeUbboGPq68GvUUAOjIj3RMdHo+NiHRUcRaH5ajP+fkDrjMP5MjBwpCU6WOhv5pVi1cdEMO3kG0ga3pZQr1YWqWgW1HH/p8wAUJhmNsh8+eHeOi+6a6mkraQg=="} // WeChatFunctionForHD.Instance.QueryMerchant("2000002411850331"); // return WeChatFunctionForHD.Instance.GetPlatCert(); // string content = "7SSGOSPOFnkMRxLbxv9eHbw6+kAUbCr2wOfz3FKWpGbMoCWRgUsr92LEyfp/YeOAEptnfSmOgGuvlIEzEUUwiK1xnm3JKoIwbqnhutX66lU3oPycQ5H71RS9sdV6KQQ4eX5OuOoyJY5K3LCE6tXOtcfa9Lnlh4gh4dkf8Pny/EkfzQmYs5CEwVVSbX0rQl73fkFa7zMmjNy3TLj1ybZ3by4KEvOP7OnBp3Ff+Bcw7vGvTwycTXFWdLvuIDG36VEVhLbKOCOBT5rykdkw/nex/AK+T5DB9cae6FlBX1IJbQI4hJtxhsdU1exxxoG1Fyz0Sh0kPlmPyj6dR4bYl+FhVL+y1JlBEnfl3ilGz9LEWIwbH2AyOLK/6ltxLshgQCQAPRXATv3jCOe5hvXUeuzvxt0MrHoe1dJJRTVI+ZolEp45Mb/gsrY3gEC58BSOX7QfyPxZPyBsQkan1ZqLr7140oTXaT1av9pMZ1WCwY29x3+8p1fTitpJvM1nw4bSCcPKFVGr3gNX8637Z+EcIqNJEF4m0X6DPEkN3nOAcEDoJte+jkjizomFCcXTcFHzrBrIEmvfuKh+yEievuziGFgCYj/qUtT9FZdR0e55l6VRyBnxo8pO3S6BGCjD4yREOLaV02KFaaZzobIpbOaO5erpBWq+JdhmW9bf30b9J+Gk8EvCX4HeqcmEn51E8ZGR/GfXV0AASgMz+awpZxlaQqs4Bu96sfrDnWZMshRZ6yTosU8BfGJuNaivhnmY7z6qM9fQUinOfXLj2ZE4WmSjp6Ho2Ziy4ggV941MXUtrLSgmgj1KcNqxzLLw8CUkkKBoiv+LI5GwqWdnG5ja96LQ2QKusrQ5UJWVPtUI8i0NPLNksT49IzwGwEDHjNioc+FppB50HiSzrP/hpaXj/hWLHswblqAZSSMeOP5oubz52s3VVSp/99ID3I7b3SVCjaFIYxikv/V8FHBP/2OF+N7AbQleZfNFT4BQ+lS6XpILoNqi6MtyLjQwFGlB8mqFgPJLWBR1uebdjFHX765GD9UXKk/necz9WPoYQj6EYBaIhnkTJtycdS9E7pa5/bkhv74e30jVxdQxzHRjGj2b0ImeV3dPFH0muabsV2YSP76Nryg46D+n92cy/wy5iA2yc/BO295uHwqJvtDDB+1wGcwFfNypvTuTr6kOoBd8JFVj540c7LUGCf4F0Ur4ZJhNAVdNajh4k5RgyFFmiNZJTA4LLwQ8q+zpzAnG3MRbsWSLzNTHbj9NSX98B0cHUIxEmwwBu/xOcPLlNfrx0JDhxvje6bnakheKgFqGZIiDUcXoX+qKzABHmnxoII0BoAeG0kFb1g/lkXna4vl3kuyz8MEbXPVxMRHDwrHGWroYnYtAmTQjMNCr96yB+/Do0b6n3In+0GuVh85h17Wf0LrYWGqlY7e3wWNoHbTRi5QOcJaepRrSE2tsBfwFOPjJKfQc5rweGhFKXNC81uQAgFYnko9UQ5CK88rfehsYcSq3i9kAs5Aa/FojMl3tzO3Q5SOE7k8DhZhLN+2AvsK4nVX1OhTtNCRJRhvgFWpJaIJu4HAf6ef/KWfjeCjWhk8jhf5d8yz1gjB+mIuyYIXOv2Ma9jzLOfjK5EZtczx+TB9y2hVUyNFlEDKdPGCS3jJEZ7WB2BwwsurAJEnOP58s34N87EZwsPHDkOtl78zs0VQg6Hnl1FK20y+ap11vVMiF/2tGlH3oN0W4OW3Glr11iIxdVtrpaLacsddW1J9MFZ/KCqvaFWVykoH9hO9u3IrA5HjaJDuRcrJl3Vl3cIrnPOF7JwtLI/vQVAM4MRS8EbX2qeZGYk+EWsy4N1dvjLrrMxjY4qCbgsi+DnDiHVaj+7BSMVKL04Ja2c8Tn0ysYEyyjoCHfMiohvQiaC5BqyJdvKT1GkEOFxPx78XCDWQYrpkz03Oj8qP/DX/zsQy9U09/J+2wcrB/CYXQfhe8CVNuD3O8QoguHAVEHt8O"; // return WeChatFunctionForHD.Instance.AesGcmDecrypt("certificate", "fdc941b6d56c", content); // return "ok"; } } }