DuGuYang 1 år sedan
förälder
incheckning
c8689b0581
100 ändrade filer med 5453 tillägg och 171 borttagningar
  1. 45 0
      AppStart/Redis/MySql/AdvertismentDbconn.cs
  2. 24 0
      AppStart/Redis/MySql/ConsumersDbconn.cs
  3. 58 0
      AppStart/Redis/MySql/MachineForQrCodeDbconn.cs
  4. 90 0
      AppStart/Redis/MySql/MerchantInfoDbconn.cs
  5. 163 0
      AppStart/Redis/MySql/MerchantTradeStat.cs
  6. 90 0
      AppStart/Redis/MySql/PosMachinesDbconn.cs
  7. 106 0
      AppStart/Redis/MySql/PosMerchantInfoDbconn.cs
  8. 176 0
      AppStart/Redis/MySql/QrCodeTradeStat.cs
  9. 76 0
      AppStart/Redis/MySql/StoreHouseDbconn.cs
  10. 46 0
      AppStart/Redis/MySql/UserLevelSetDbconn.cs
  11. 27 0
      AppStart/Redis/MySql/UserMachineDataDbconn.cs
  12. 97 0
      AppStart/Redis/MySql/UsersDbconn.cs
  13. 37 4
      Areas/Api/Controllers/BaseController.cs
  14. 5 9
      Areas/Api/Controllers/Business/BusinessController.cs
  15. 148 0
      Areas/Api/Controllers/Main/ActiveRewardController.cs
  16. 133 0
      Areas/Api/Controllers/Main/KqProductsController.cs
  17. 603 2
      Areas/Api/Controllers/Main/MerchantInfoController.cs
  18. 253 0
      Areas/Api/Controllers/Main/MerchantQrCodeController.cs
  19. 196 0
      Areas/Api/Controllers/Main/PosCouponOrdersController.cs
  20. 130 0
      Areas/Api/Controllers/Main/PosCouponRecordController.cs
  21. 534 0
      Areas/Api/Controllers/Main/PosMachinesController.cs
  22. 91 0
      Areas/Api/Controllers/Main/ProfitRewardRecordController.cs
  23. 0 103
      Areas/Api/Controllers/Message/MessageController.cs
  24. 24 4
      Areas/Api/Controllers/MySelf/MySelfController.cs
  25. 63 49
      Areas/Api/Controllers/WorkSpace/WorkSpaceController.cs
  26. 2 0
      Config/Base.cs
  27. 49 0
      Models/KxsMainModels/ActiveReward.cs
  28. 26 0
      Models/KxsMainModels/ActivityEnrolRecord.cs
  29. 37 0
      Models/KxsMainModels/ActivityInfo.cs
  30. 32 0
      Models/KxsMainModels/ActivityPrizeDetail.cs
  31. 24 0
      Models/KxsMainModels/ActivityRedPackageJoins.cs
  32. 24 0
      Models/KxsMainModels/ActivityRedPackageStock.cs
  33. 25 0
      Models/KxsMainModels/ActivityRedPackageTop10.cs
  34. 26 0
      Models/KxsMainModels/Advertisment.cs
  35. 25 0
      Models/KxsMainModels/AgentLevelSet.cs
  36. 32 0
      Models/KxsMainModels/AppBottomNavs.cs
  37. 28 0
      Models/KxsMainModels/AppVersion.cs
  38. 24 0
      Models/KxsMainModels/AppVideo.cs
  39. 26 0
      Models/KxsMainModels/AppVideoList.cs
  40. 28 0
      Models/KxsMainModels/BackEndOpRecord.cs
  41. 26 0
      Models/KxsMainModels/BankInfo.cs
  42. 47 0
      Models/KxsMainModels/BrokenMachineChange.cs
  43. 34 0
      Models/KxsMainModels/BrokenMachineChangeDetail.cs
  44. 28 0
      Models/KxsMainModels/BusinessActSummary.cs
  45. 26 0
      Models/KxsMainModels/BusinessPartner.cs
  46. 25 0
      Models/KxsMainModels/BusinessPartnerMerchant.cs
  47. 25 0
      Models/KxsMainModels/BusinessPartnerPos.cs
  48. 67 0
      Models/KxsMainModels/BusinessTradeSummary.cs
  49. 37 0
      Models/KxsMainModels/Col.cs
  50. 11 0
      Models/KxsMainModels/ConsumerOpenIds.cs
  51. 11 0
      Models/KxsMainModels/ConsumerOrderForNo.cs
  52. 31 0
      Models/KxsMainModels/ConsumerOrders.cs
  53. 25 0
      Models/KxsMainModels/ConsumerProfit.cs
  54. 36 0
      Models/KxsMainModels/Consumers.cs
  55. 33 0
      Models/KxsMainModels/CouponAssignRecords.cs
  56. 48 0
      Models/KxsMainModels/Coupons.cs
  57. 26 0
      Models/KxsMainModels/CouponsForUser.cs
  58. 24 0
      Models/KxsMainModels/CustomTagSet.cs
  59. 24 0
      Models/KxsMainModels/ErpCompanys.cs
  60. 24 0
      Models/KxsMainModels/FileUpdateInfo.cs
  61. 43 0
      Models/KxsMainModels/FluxProfitDetail.cs
  62. 30 0
      Models/KxsMainModels/FluxProfitSummary.cs
  63. 33 0
      Models/KxsMainModels/HelpProfitAccountRecord.cs
  64. 23 0
      Models/KxsMainModels/HelpProfitAmountSummary.cs
  65. 23 0
      Models/KxsMainModels/HelpProfitExchange.cs
  66. 25 0
      Models/KxsMainModels/HelpProfitExchangeDetail.cs
  67. 11 0
      Models/KxsMainModels/HelpProfitMerIds.cs
  68. 22 0
      Models/KxsMainModels/HelpProfitMerTradeMonthSummay.cs
  69. 26 0
      Models/KxsMainModels/HelpProfitMerTradeSummay.cs
  70. 24 0
      Models/KxsMainModels/HelpProfitMerchantForUser.cs
  71. 29 0
      Models/KxsMainModels/HelpProfitRebateDetail.cs
  72. 36 0
      Models/KxsMainModels/HelpProfitReward.cs
  73. 47 0
      Models/KxsMainModels/HelpProfitRewardDetail.cs
  74. 24 0
      Models/KxsMainModels/IndexIconList.cs
  75. 23 0
      Models/KxsMainModels/KqProductBrand.cs
  76. 23 0
      Models/KxsMainModels/KqProductOrgs.cs
  77. 68 0
      Models/KxsMainModels/KqProductRuleSet.cs
  78. 22 0
      Models/KxsMainModels/KqProducts.cs
  79. 33 0
      Models/KxsMainModels/LeaderAccountRecord.cs
  80. 28 0
      Models/KxsMainModels/LeaderReserveRecord.cs
  81. 20 0
      Models/KxsMainModels/Leaders.cs
  82. 60 0
      Models/KxsMainModels/MachineApply.cs
  83. 36 0
      Models/KxsMainModels/MachineApplyDetail.cs
  84. 47 0
      Models/KxsMainModels/MachineChange.cs
  85. 34 0
      Models/KxsMainModels/MachineChangeDetail.cs
  86. 11 0
      Models/KxsMainModels/MachineForMerNo.cs
  87. 14 0
      Models/KxsMainModels/MachineForQrCode.cs
  88. 11 0
      Models/KxsMainModels/MachineForSnNo.cs
  89. 36 0
      Models/KxsMainModels/MachineRenew.cs
  90. 31 0
      Models/KxsMainModels/MachineReturn.cs
  91. 26 0
      Models/KxsMainModels/MachineUnBind.cs
  92. 11 0
      Models/KxsMainModels/MenuRight.cs
  93. 100 0
      Models/KxsMainModels/MerchantAddInfo.cs
  94. 31 0
      Models/KxsMainModels/MerchantAdmin.cs
  95. 35 0
      Models/KxsMainModels/MerchantAuth.cs
  96. 24 0
      Models/KxsMainModels/MerchantClass.cs
  97. 29 0
      Models/KxsMainModels/MerchantCol.cs
  98. 27 0
      Models/KxsMainModels/MerchantComment.cs
  99. 23 0
      Models/KxsMainModels/MerchantDepositReturns.cs
  100. 23 0
      Models/KxsMainModels/MerchantDepositSet.cs

+ 45 - 0
AppStart/Redis/MySql/AdvertismentDbconn.cs

@@ -0,0 +1,45 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using MySystem.Models.Main;
+
+namespace MySystem
+{
+    public class AdvertismentDbconn
+    {
+        public readonly static AdvertismentDbconn Instance = new AdvertismentDbconn();
+
+        #region 获取列表
+        public List<Advertisment> GetList(string ColId)
+        {
+            string key = "AdvertismentList:" + ColId;
+            List<Advertisment> list = new List<Advertisment>();
+            if (RedisDbconn.Instance.Exists(key))
+            {
+                list = RedisDbconn.Instance.GetList<Advertisment>(key);
+                if (list.Count > 0)
+                {
+                    return list;
+                }
+            }
+            List<Advertisment> newlist = new List<Advertisment>();
+            WebCMSEntities db = new WebCMSEntities();
+            var mysqllist = db.Advertisment.Where(m => m.ColId == ColId).OrderByDescending(m => m.Sort).OrderByDescending(m => m.Id).ToList();
+            if (mysqllist.Count > 0)
+            {
+                foreach (var sub in mysqllist)
+                {
+                    newlist.Add(sub);
+                }
+                RedisDbconn.Instance.Clear(key);
+                foreach (Advertisment sub in newlist)
+                {
+                    RedisDbconn.Instance.AddRightList(key, sub);
+                }
+            }
+            db.Dispose();
+            return newlist;
+        }
+        #endregion
+    }
+}

+ 24 - 0
AppStart/Redis/MySql/ConsumersDbconn.cs

@@ -0,0 +1,24 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using MySystem.Models.Main;
+
+namespace MySystem
+{
+    public class ConsumersDbconn
+    {
+        public readonly static ConsumersDbconn Instance = new ConsumersDbconn();
+
+        #region 获取单个字段
+        public Consumers Get(int Id)
+        {
+            WebCMSEntities db = new WebCMSEntities();
+            Consumers order = db.Consumers.FirstOrDefault(m => m.Id == Id);
+            if (order != null)
+            {
+            }
+            return order;
+        }
+        #endregion
+    }
+}

+ 58 - 0
AppStart/Redis/MySql/MachineForQrCodeDbconn.cs

@@ -0,0 +1,58 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using MySystem.Models.Main;
+
+namespace MySystem
+{
+    public class MachineForQrCodeDbconn
+    {
+        public readonly static MachineForQrCodeDbconn Instance = new MachineForQrCodeDbconn();
+
+        #region 获取单个字段
+        public MachineForQrCode Get(string DataId)
+        {
+            WebCMSEntities db = new WebCMSEntities();
+            MachineForQrCode order = db.MachineForQrCode.FirstOrDefault(m => m.DataId == DataId);
+            if (order != null)
+            {
+            }
+            return order;
+        }
+        #endregion
+
+        #region 获取列表
+        public List<MachineForQrCode> GetList(int MerchantId, int pageNum = 1, int pageSize = 10)
+        {
+            string key = "MachineForQrCodeList:" + MerchantId;
+            List<MachineForQrCode> list = new List<MachineForQrCode>();
+            if (RedisDbconn.Instance.Exists(key))
+            {
+                list = RedisDbconn.Instance.GetList<MachineForQrCode>(key, pageNum, pageSize);
+                if (list.Count > 0)
+                {
+                    return list;
+                }
+            }
+            WebCMSEntities db = new WebCMSEntities();
+            var mysqllist = db.MachineForQrCode.Where(m => m.MerchantId == MerchantId).ToList();
+            if (mysqllist.Count > 0)
+            {
+                List<MachineForQrCode> newlist = new List<MachineForQrCode>();
+                foreach (MachineForQrCode sub in mysqllist)
+                {
+                    newlist.Add(sub);
+                }
+                RedisDbconn.Instance.Clear(key);
+                foreach (MachineForQrCode sub in newlist)
+                {
+                    RedisDbconn.Instance.AddRightList(key, sub);
+                }
+                RedisDbconn.Instance.SetExpire(key, Library.function.get_Random(1800, 5400));
+            }
+            db.Dispose();
+            return list;
+        }
+        #endregion
+    }
+}

+ 90 - 0
AppStart/Redis/MySql/MerchantInfoDbconn.cs

@@ -0,0 +1,90 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using MySystem.Models.Main;
+
+namespace MySystem
+{
+    public class MerchantInfoDbconn
+    {
+        public readonly static MerchantInfoDbconn Instance = new MerchantInfoDbconn();
+
+        #region 获取单个字段
+        public MerchantInfo Get(int Id)
+        {
+            WebCMSEntities db = new WebCMSEntities();
+            MerchantInfo order = db.MerchantInfo.FirstOrDefault(m => m.Id == Id);
+            if (order != null)
+            {
+            }
+            db.Dispose();
+            return order;
+        }
+        #endregion
+
+        #region 获取列表
+        public List<int> GetList(int UserId, int pageNum = 1, int pageSize = 10)
+        {
+            string key = "MerchantInfoList:" + UserId;
+            List<int> list = new List<int>();
+            if (RedisDbconn.Instance.Exists(key))
+            {
+                list = RedisDbconn.Instance.GetList<int>(key, pageNum, pageSize);
+                if (list.Count > 0)
+                {
+                    return list;
+                }
+            }
+            WebCMSEntities db = new WebCMSEntities();
+            var mysqllist = db.MerchantInfo.Select(m => new { m.Id, m.UserId, m.QueryCount }).Where(m => m.UserId == UserId && m.QueryCount == 1).OrderByDescending(m => m.Id).ToList();
+            if (mysqllist.Count > 0)
+            {
+                List<int> newlist = new List<int>();
+                foreach (var sub in mysqllist)
+                {
+                    newlist.Add(sub.Id);
+                }
+                RedisDbconn.Instance.Clear(key);
+                foreach (int sub in newlist)
+                {
+                    RedisDbconn.Instance.AddRightList(key, sub);
+                }
+                RedisDbconn.Instance.SetExpire(key, Library.function.get_Random(1800, 5400));
+            }
+            db.Dispose();
+            return list;
+        }
+        public List<MerchantInfo> GetTmpList(int UserId, int pageNum = 1, int pageSize = 10)
+        {
+            string key = "TmpMerchantInfo:" + UserId;
+            List<MerchantInfo> list = new List<MerchantInfo>();
+            if (RedisDbconn.Instance.Exists(key))
+            {
+                list = RedisDbconn.Instance.GetList<MerchantInfo>(key, pageNum, pageSize);
+                if (list.Count > 0)
+                {
+                    return list;
+                }
+            }
+            WebCMSEntities db = new WebCMSEntities();
+            var mysqllist = db.MerchantInfo.Where(m => m.UserId == UserId && m.QueryCount == 1).OrderByDescending(m => m.Id).ToList();
+            if (mysqllist.Count > 0)
+            {
+                List<MerchantInfo> newlist = new List<MerchantInfo>();
+                foreach (var sub in mysqllist)
+                {
+                    newlist.Add(sub);
+                }
+                RedisDbconn.Instance.Clear(key);
+                foreach (MerchantInfo sub in newlist)
+                {
+                    RedisDbconn.Instance.AddRightList(key, sub);
+                }
+                RedisDbconn.Instance.SetExpire(key, Library.function.get_Random(1800, 5400));
+            }
+            db.Dispose();
+            return list;
+        }
+        #endregion
+    }
+}

+ 163 - 0
AppStart/Redis/MySql/MerchantTradeStat.cs

@@ -0,0 +1,163 @@
+using System;
+using System.Collections.Generic;
+using Library;
+using System.Linq;
+using MySystem.Models.Main;
+
+namespace MySystem
+{
+    public class MerchantTradeStat
+    {
+        public readonly static MerchantTradeStat Instance = new MerchantTradeStat();
+        public MerchantTradeStat()
+        { }
+
+
+        public decimal Amount(int MerchantId, string DateOrMonth)
+        {
+            decimal amt = 0;
+            WebCMSEntities db = new WebCMSEntities();
+            if(DateOrMonth.Length == 8)
+            {
+                bool check = db.MerchantAmountSummay.Any(m => m.MerchantId == MerchantId && m.TradeDate == DateOrMonth);
+                if (check)
+                {
+                    amt = db.MerchantAmountSummay.Where(m => m.MerchantId == MerchantId && m.TradeDate == DateOrMonth).Sum(m => m.TradeAmount);
+                }
+            }
+            else
+            {
+                bool check = db.MerchantAmountSummay.Any(m => m.MerchantId == MerchantId && m.TradeMonth == DateOrMonth);
+                if (check)
+                {
+                    amt = db.MerchantAmountSummay.Where(m => m.MerchantId == MerchantId && m.TradeMonth == DateOrMonth).Sum(m => m.TradeAmount);
+                }
+            }
+            db.Dispose();
+            return amt;
+        }
+
+        public int Count(int MerchantId, string DateOrMonth)
+        {
+            int amt = 0;
+            WebCMSEntities db = new WebCMSEntities();
+            if(DateOrMonth.Length == 8)
+            {
+                bool check = db.MerchantAmountSummay.Any(m => m.MerchantId == MerchantId && m.TradeDate == DateOrMonth);
+                if (check)
+                {
+                    amt = db.MerchantAmountSummay.Where(m => m.MerchantId == MerchantId && m.TradeDate == DateOrMonth).Sum(m => m.TradeCount);
+                }
+            }
+            else
+            {
+                bool check = db.MerchantAmountSummay.Any(m => m.MerchantId == MerchantId && m.TradeMonth == DateOrMonth);
+                if (check)
+                {
+                    amt = db.MerchantAmountSummay.Where(m => m.MerchantId == MerchantId && m.TradeMonth == DateOrMonth).Sum(m => m.TradeCount);
+                }
+            }
+            db.Dispose();
+            return amt;
+        }
+
+
+        public decimal Amount(int MerchantId, string DateOrMonth, int PayMode)
+        {
+            decimal amt = 0;
+            WebCMSEntities db = new WebCMSEntities();
+            if(DateOrMonth.Length == 8)
+            {
+                bool check = db.MerchantAmountSummay.Any(m => m.MerchantId == MerchantId && m.PayMode == PayMode && m.TradeDate == DateOrMonth);
+                if (check)
+                {
+                    amt = db.MerchantAmountSummay.Where(m => m.MerchantId == MerchantId && m.PayMode == PayMode && m.TradeDate == DateOrMonth).Sum(m => m.TradeAmount);
+                }
+            }
+            else
+            {
+                bool check = db.MerchantAmountSummay.Any(m => m.MerchantId == MerchantId && m.PayMode == PayMode && m.TradeMonth == DateOrMonth);
+                if (check)
+                {
+                    amt = db.MerchantAmountSummay.Where(m => m.MerchantId == MerchantId && m.PayMode == PayMode && m.TradeMonth == DateOrMonth).Sum(m => m.TradeAmount);
+                }
+            }
+            db.Dispose();
+            return amt;
+        }
+
+        public int Count(int MerchantId, string DateOrMonth, int PayMode)
+        {
+            int amt = 0;
+            WebCMSEntities db = new WebCMSEntities();
+            if(DateOrMonth.Length == 8)
+            {
+                bool check = db.MerchantAmountSummay.Any(m => m.MerchantId == MerchantId && m.PayMode == PayMode && m.TradeDate == DateOrMonth);
+                if (check)
+                {
+                    amt = db.MerchantAmountSummay.Where(m => m.MerchantId == MerchantId && m.PayMode == PayMode && m.TradeDate == DateOrMonth).Sum(m => m.TradeCount);
+                }
+            }
+            else
+            {
+                bool check = db.MerchantAmountSummay.Any(m => m.MerchantId == MerchantId && m.PayMode == PayMode && m.TradeMonth == DateOrMonth);
+                if (check)
+                {
+                    amt = db.MerchantAmountSummay.Where(m => m.MerchantId == MerchantId && m.PayMode == PayMode && m.TradeMonth == DateOrMonth).Sum(m => m.TradeCount);
+                }
+            }
+            db.Dispose();
+            return amt;
+        }
+
+
+        public decimal Amount(int MerchantId, string DateOrMonth, int PayMode, int IsAct)
+        {
+            decimal amt = 0;
+            WebCMSEntities db = new WebCMSEntities();
+            if(DateOrMonth.Length == 8)
+            {
+                bool check = db.MerchantAmountSummay.Any(m => m.MerchantId == MerchantId && m.PayMode == PayMode && m.IsAct == IsAct && m.TradeDate == DateOrMonth);
+                if (check)
+                {
+                    amt = db.MerchantAmountSummay.Where(m => m.MerchantId == MerchantId && m.PayMode == PayMode && m.IsAct == IsAct && m.TradeDate == DateOrMonth).Sum(m => m.TradeAmount);
+                }
+            }
+            else
+            {
+                bool check = db.MerchantAmountSummay.Any(m => m.MerchantId == MerchantId && m.PayMode == PayMode && m.IsAct == IsAct && m.TradeMonth == DateOrMonth);
+                if (check)
+                {
+                    amt = db.MerchantAmountSummay.Where(m => m.MerchantId == MerchantId && m.PayMode == PayMode && m.IsAct == IsAct && m.TradeMonth == DateOrMonth).Sum(m => m.TradeAmount);
+                }
+            }
+            db.Dispose();
+            return amt;
+        }
+
+        public int Count(int MerchantId, string DateOrMonth, int PayMode, int IsAct)
+        {
+            int amt = 0;
+            WebCMSEntities db = new WebCMSEntities();
+            if(DateOrMonth.Length == 8)
+            {
+                bool check = db.MerchantAmountSummay.Any(m => m.MerchantId == MerchantId && m.PayMode == PayMode && m.IsAct == IsAct && m.TradeDate == DateOrMonth);
+                if (check)
+                {
+                    amt = db.MerchantAmountSummay.Where(m => m.MerchantId == MerchantId && m.PayMode == PayMode && m.IsAct == IsAct && m.TradeDate == DateOrMonth).Sum(m => m.TradeCount);
+                }
+            }
+            else
+            {
+                bool check = db.MerchantAmountSummay.Any(m => m.MerchantId == MerchantId && m.PayMode == PayMode && m.IsAct == IsAct && m.TradeMonth == DateOrMonth);
+                if (check)
+                {
+                    amt = db.MerchantAmountSummay.Where(m => m.MerchantId == MerchantId && m.PayMode == PayMode && m.IsAct == IsAct && m.TradeMonth == DateOrMonth).Sum(m => m.TradeCount);
+                }
+            }
+            db.Dispose();
+            return amt;
+        }
+
+    }
+}

+ 90 - 0
AppStart/Redis/MySql/PosMachinesDbconn.cs

@@ -0,0 +1,90 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using MySystem.Models.Main;
+
+namespace MySystem
+{
+    public class PosMachinesDbconn
+    {
+        public readonly static PosMachinesDbconn Instance = new PosMachinesDbconn();
+
+        #region 获取单个字段
+        public PosMachines Get(int Id)
+        {
+            // string key = "PosMachines:" + Id;
+            // if (RedisDbconn.Instance.Exists(key))
+            // {
+            //     PosMachines obj = RedisDbconn.Instance.Get<PosMachines>(key);
+            //     if (obj != null)
+            //     {
+            //         return obj;
+            //     }
+            // }
+            WebCMSEntities db = new WebCMSEntities();
+            PosMachines order = db.PosMachines.FirstOrDefault(m => m.Id == Id);
+            if (order != null)
+            {
+                // RedisDbconn.Instance.Set(key, order);
+                // RedisDbconn.Instance.SetExpire(key, Library.function.get_Random(1800, 5400));
+            }
+            db.Dispose();
+            return order;
+        }
+        public PosMachines Get(string PosSn)
+        {
+            string key = "PosMachines:" + PosSn;
+            if (RedisDbconn.Instance.Exists(key))
+            {
+                PosMachines obj = RedisDbconn.Instance.Get<PosMachines>(key);
+                if (obj != null)
+                {
+                    return obj;
+                }
+            }
+            WebCMSEntities db = new WebCMSEntities();
+            PosMachines order = db.PosMachines.FirstOrDefault(m => m.PosSn == PosSn);
+            if (order != null)
+            {
+                RedisDbconn.Instance.Set(key, order);
+                RedisDbconn.Instance.SetExpire(key, Library.function.get_Random(1800, 5400));
+            }
+            return order;
+        }
+        #endregion
+
+        #region 获取列表
+        public List<int> GetList(int MerchantId, int pageNum = 1, int pageSize = 10)
+        {
+            string key = "PosMachineList:" + MerchantId;
+            List<int> list = new List<int>();
+            if (RedisDbconn.Instance.Exists(key))
+            {
+                list = RedisDbconn.Instance.GetList<int>(key, pageNum, pageSize);
+                if (list.Count > 0)
+                {
+                    return list;
+                }
+            }
+            WebCMSEntities db = new WebCMSEntities();
+            var mysqllist = db.PosMachines.Select(m => new { m.Id, m.BindMerchantId }).Where(m => m.BindMerchantId == MerchantId).OrderByDescending(m => m.Id).ToList();
+            if (mysqllist.Count > 0)
+            {
+                List<int> newlist = new List<int>();
+                foreach (var sub in mysqllist)
+                {
+                    newlist.Add(sub.Id);
+                }
+                RedisDbconn.Instance.Clear(key);
+                foreach (int sub in newlist)
+                {
+                    RedisDbconn.Instance.AddRightList(key, sub);
+                }
+                RedisDbconn.Instance.SetExpire(key, Library.function.get_Random(1800, 5400));
+            }
+            db.Dispose();
+            return list;
+        }
+        #endregion
+    }
+}

+ 106 - 0
AppStart/Redis/MySql/PosMerchantInfoDbconn.cs

@@ -0,0 +1,106 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using MySystem.Models.Main;
+
+namespace MySystem
+{
+    public class PosMerchantInfoDbconn
+    {
+        public readonly static PosMerchantInfoDbconn Instance = new PosMerchantInfoDbconn();
+
+        #region 获取单个字段
+        public PosMerchantInfo Get(int Id)
+        {
+            WebCMSEntities db = new WebCMSEntities();
+            PosMerchantInfo order = db.PosMerchantInfo.FirstOrDefault(m => m.Id == Id);
+            if (order != null)
+            {
+            }
+            db.Dispose();
+            return order;
+        }
+        #endregion
+
+        #region 获取列表
+        public List<PosMerchantInfo> GetList(int UserId, int pageNum = 1, int pageSize = 10)
+        {
+            string key = "PosMerchantInfoList:" + UserId;
+            List<PosMerchantInfo> list = new List<PosMerchantInfo>();
+            if (RedisDbconn.Instance.Exists(key))
+            {
+                list = RedisDbconn.Instance.GetList<PosMerchantInfo>(key, pageNum, pageSize);
+                if (list.Count > 0)
+                {
+                    return list;
+                }
+            }
+            RedisDbconn.Instance.GetLock(key + ":lock");
+            WebCMSEntities db = new WebCMSEntities();
+            List<PosMerchantInfo> newlist = new List<PosMerchantInfo>();
+            var mysqllist = db.PosMachinesTwo.Select(m => new { m.BuyUserId, m.UserId, m.BindingState, m.Id, m.BindMerchantId, m.Status }).Where(m => m.Status > -1 && m.BuyUserId == UserId && m.BindingState == 1).OrderByDescending(m => m.Id).ToList();
+            if (mysqllist.Count > 0)
+            {
+                foreach (var sub in mysqllist)
+                {
+                    PosMerchantInfo merchant = db.PosMerchantInfo.FirstOrDefault(m => m.Id == sub.BindMerchantId) ?? new PosMerchantInfo();
+                    newlist.Add(merchant);
+                }
+                RedisDbconn.Instance.Clear(key);
+                foreach (PosMerchantInfo sub in newlist)
+                {
+                    RedisDbconn.Instance.AddRightList(key, sub);
+                }
+                RedisDbconn.Instance.SetExpire(key, Library.function.get_Random(300, 600));
+            }
+            db.Dispose();
+            RedisDbconn.Instance.ReleaseLock(key + ":lock");
+            return newlist;
+        }
+        #endregion
+
+
+        #region 获取列表子账号
+        public List<PosMerchantInfo> GetChildList(int PartnerId, int UserId, int pageNum = 1, int pageSize = 10)
+        {
+            string key = "PosMerchantInfoList:" + PartnerId;
+            List<PosMerchantInfo> list = new List<PosMerchantInfo>();
+            if (RedisDbconn.Instance.Exists(key))
+            {
+                list = RedisDbconn.Instance.GetList<PosMerchantInfo>(key, pageNum, pageSize);
+                if (list.Count > 0)
+                {
+                    return list;
+                }
+            }
+            RedisDbconn.Instance.GetLock(key + ":lock");
+            WebCMSEntities db = new WebCMSEntities();
+            List<int> posId = new List<int>();
+            var Id = db.BusinessPartnerPos.Where(m => m.Id == PartnerId).ToList();
+            foreach (var item in Id)
+            {
+                posId.Add(item.PosId);
+            }
+            List<PosMerchantInfo> newlist = new List<PosMerchantInfo>();
+            var mysqllist = db.PosMachinesTwo.Select(m => new { m.BuyUserId, m.UserId, m.BindingState, m.Id, m.BindMerchantId, m.Status }).Where(m => m.Status > -1 && m.BuyUserId == UserId && m.BindingState == 1 && posId.Contains(m.Id)).OrderByDescending(m => m.Id).ToList();
+            if (mysqllist.Count > 0)
+            {
+                foreach (var sub in mysqllist)
+                {
+                    PosMerchantInfo merchant = db.PosMerchantInfo.FirstOrDefault(m => m.Id == sub.BindMerchantId) ?? new PosMerchantInfo();
+                    newlist.Add(merchant);
+                }
+                RedisDbconn.Instance.Clear(key);
+                foreach (PosMerchantInfo sub in newlist)
+                {
+                    RedisDbconn.Instance.AddRightList(key, sub);
+                }
+                RedisDbconn.Instance.SetExpire(key, Library.function.get_Random(300, 600));
+            }
+            db.Dispose();
+            RedisDbconn.Instance.ReleaseLock(key + ":lock");
+            return newlist;
+        }
+        #endregion
+    }
+}

+ 176 - 0
AppStart/Redis/MySql/QrCodeTradeStat.cs

@@ -0,0 +1,176 @@
+using System;
+using System.Collections.Generic;
+using Library;
+using System.Linq;
+using MySystem.Models.Main;
+
+namespace MySystem
+{
+    public class QrCodeTradeStat
+    {
+        public readonly static QrCodeTradeStat Instance = new QrCodeTradeStat();
+        public QrCodeTradeStat()
+        { }
+
+
+        public decimal Amount(string SnNo)
+        {
+            decimal amt = 0;
+            WebCMSEntities db = new WebCMSEntities();
+            bool check = db.QrCodeAmountSummay.Any(m => m.SnNo == SnNo);
+            if (check)
+            {
+                amt = db.QrCodeAmountSummay.Where(m => m.SnNo == SnNo).Sum(m => m.TradeAmount);
+            }
+            db.Dispose();
+            return amt;
+        }
+
+        public decimal Amount(string SnNo, string DateOrMonth)
+        {
+            decimal amt = 0;
+            WebCMSEntities db = new WebCMSEntities();
+            if(DateOrMonth.Length == 8)
+            {
+                bool check = db.QrCodeAmountSummay.Any(m => m.SnNo == SnNo && m.TradeDate == DateOrMonth);
+                if (check)
+                {
+                    amt = db.QrCodeAmountSummay.Where(m => m.SnNo == SnNo && m.TradeDate == DateOrMonth).Sum(m => m.TradeAmount);
+                }
+            }
+            else
+            {
+                bool check = db.QrCodeAmountSummay.Any(m => m.SnNo == SnNo && m.TradeMonth == DateOrMonth);
+                if (check)
+                {
+                    amt = db.QrCodeAmountSummay.Where(m => m.SnNo == SnNo && m.TradeMonth == DateOrMonth).Sum(m => m.TradeAmount);
+                }
+            }
+            db.Dispose();
+            return amt;
+        }
+
+        public int Count(string SnNo, string DateOrMonth)
+        {
+            int amt = 0;
+            WebCMSEntities db = new WebCMSEntities();
+            if(DateOrMonth.Length == 8)
+            {
+                bool check = db.QrCodeAmountSummay.Any(m => m.SnNo == SnNo && m.TradeDate == DateOrMonth);
+                if (check)
+                {
+                    amt = db.QrCodeAmountSummay.Where(m => m.SnNo == SnNo && m.TradeDate == DateOrMonth).Sum(m => m.TradeCount);
+                }
+            }
+            else
+            {
+                bool check = db.QrCodeAmountSummay.Any(m => m.SnNo == SnNo && m.TradeMonth == DateOrMonth);
+                if (check)
+                {
+                    amt = db.QrCodeAmountSummay.Where(m => m.SnNo == SnNo && m.TradeMonth == DateOrMonth).Sum(m => m.TradeCount);
+                }
+            }
+            db.Dispose();
+            return amt;
+        }
+
+
+        public decimal Amount(string SnNo, string DateOrMonth, int PayMode)
+        {
+            decimal amt = 0;
+            WebCMSEntities db = new WebCMSEntities();
+            if(DateOrMonth.Length == 8)
+            {
+                bool check = db.QrCodeAmountSummay.Any(m => m.SnNo == SnNo && m.PayMode == PayMode && m.TradeDate == DateOrMonth);
+                if (check)
+                {
+                    amt = db.QrCodeAmountSummay.Where(m => m.SnNo == SnNo && m.PayMode == PayMode && m.TradeDate == DateOrMonth).Sum(m => m.TradeAmount);
+                }
+            }
+            else
+            {
+                bool check = db.QrCodeAmountSummay.Any(m => m.SnNo == SnNo && m.PayMode == PayMode && m.TradeMonth == DateOrMonth);
+                if (check)
+                {
+                    amt = db.QrCodeAmountSummay.Where(m => m.SnNo == SnNo && m.PayMode == PayMode && m.TradeMonth == DateOrMonth).Sum(m => m.TradeAmount);
+                }
+            }
+            db.Dispose();
+            return amt;
+        }
+
+        public int Count(string SnNo, string DateOrMonth, int PayMode)
+        {
+            int amt = 0;
+            WebCMSEntities db = new WebCMSEntities();
+            if(DateOrMonth.Length == 8)
+            {
+                bool check = db.QrCodeAmountSummay.Any(m => m.SnNo == SnNo && m.PayMode == PayMode && m.TradeDate == DateOrMonth);
+                if (check)
+                {
+                    amt = db.QrCodeAmountSummay.Where(m => m.SnNo == SnNo && m.PayMode == PayMode && m.TradeDate == DateOrMonth).Sum(m => m.TradeCount);
+                }
+            }
+            else
+            {
+                bool check = db.QrCodeAmountSummay.Any(m => m.SnNo == SnNo && m.PayMode == PayMode && m.TradeMonth == DateOrMonth);
+                if (check)
+                {
+                    amt = db.QrCodeAmountSummay.Where(m => m.SnNo == SnNo && m.PayMode == PayMode && m.TradeMonth == DateOrMonth).Sum(m => m.TradeCount);
+                }
+            }
+            db.Dispose();
+            return amt;
+        }
+
+
+        public decimal Amount(string SnNo, string DateOrMonth, int PayMode, int IsAct)
+        {
+            decimal amt = 0;
+            WebCMSEntities db = new WebCMSEntities();
+            if(DateOrMonth.Length == 8)
+            {
+                bool check = db.QrCodeAmountSummay.Any(m => m.SnNo == SnNo && m.PayMode == PayMode && m.IsAct == IsAct && m.TradeDate == DateOrMonth);
+                if (check)
+                {
+                    amt = db.QrCodeAmountSummay.Where(m => m.SnNo == SnNo && m.PayMode == PayMode && m.IsAct == IsAct && m.TradeDate == DateOrMonth).Sum(m => m.TradeAmount);
+                }
+            }
+            else
+            {
+                bool check = db.QrCodeAmountSummay.Any(m => m.SnNo == SnNo && m.PayMode == PayMode && m.IsAct == IsAct && m.TradeMonth == DateOrMonth);
+                if (check)
+                {
+                    amt = db.QrCodeAmountSummay.Where(m => m.SnNo == SnNo && m.PayMode == PayMode && m.IsAct == IsAct && m.TradeMonth == DateOrMonth).Sum(m => m.TradeAmount);
+                }
+            }
+            db.Dispose();
+            return amt;
+        }
+
+        public int Count(string SnNo, string DateOrMonth, int PayMode, int IsAct)
+        {
+            int amt = 0;
+            WebCMSEntities db = new WebCMSEntities();
+            if(DateOrMonth.Length == 8)
+            {
+                bool check = db.QrCodeAmountSummay.Any(m => m.SnNo == SnNo && m.PayMode == PayMode && m.IsAct == IsAct && m.TradeDate == DateOrMonth);
+                if (check)
+                {
+                    amt = db.QrCodeAmountSummay.Where(m => m.SnNo == SnNo && m.PayMode == PayMode && m.IsAct == IsAct && m.TradeDate == DateOrMonth).Sum(m => m.TradeCount);
+                }
+            }
+            else
+            {
+                bool check = db.QrCodeAmountSummay.Any(m => m.SnNo == SnNo && m.PayMode == PayMode && m.IsAct == IsAct && m.TradeMonth == DateOrMonth);
+                if (check)
+                {
+                    amt = db.QrCodeAmountSummay.Where(m => m.SnNo == SnNo && m.PayMode == PayMode && m.IsAct == IsAct && m.TradeMonth == DateOrMonth).Sum(m => m.TradeCount);
+                }
+            }
+            db.Dispose();
+            return amt;
+        }
+
+    }
+}

+ 76 - 0
AppStart/Redis/MySql/StoreHouseDbconn.cs

@@ -0,0 +1,76 @@
+using System;
+using System.Collections.Generic;
+using Library;
+using System.Linq;
+using MySystem.Models.Main;
+
+namespace MySystem
+{
+    public class StoreHouseDbconn
+    {
+        public readonly static StoreHouseDbconn Instance = new StoreHouseDbconn();
+
+        #region 获取单个字段
+        public StoreHouse Get(int Id)
+        {
+            WebCMSEntities db = new WebCMSEntities();
+            StoreHouse order = db.StoreHouse.FirstOrDefault(m => m.Id == Id);
+            if (order != null)
+            {
+            }
+            db.Dispose();
+            return order;
+        }
+        #endregion
+
+        #region 获取列表
+        public List<int> GetList(int UserId, int pageNum = 1, int pageSize = 10)
+        {
+            string key = "StoreHouseList:" + UserId;
+            if (UserId == 0)
+            { 
+                key = "StoreHouseList";
+            }
+            List<int> list = new List<int>();
+            if (RedisDbconn.Instance.Exists(key))
+            {
+                list = RedisDbconn.Instance.GetList<int>(key, pageNum, pageSize);
+                if (list.Count > 0)
+                {
+                    return list;
+                }
+            }
+            List<int> newlist = new List<int>();
+            RedisDbconn.Instance.GetLock(key + ":lock");
+            WebCMSEntities db = new WebCMSEntities();
+            var mysqllist = db.StoreHouse.Select(m => new { m.Id, m.LaveNum, m.UserId, m.Status }).Where(m => m.Status > -1);
+            if (UserId > 0)
+            {
+                mysqllist = mysqllist.Where(m => m.UserId == UserId);
+            }
+            else
+            { 
+                mysqllist = mysqllist.Where(m => m.LaveNum > 0);
+            }
+            var resultlist = mysqllist.OrderByDescending(m => m.Id).ToList();
+            if (resultlist.Count > 0)
+            {
+                foreach (var sub in resultlist)
+                {
+                    newlist.Add(sub.Id);
+                }
+                RedisDbconn.Instance.Clear(key);
+                foreach (int sub in newlist)
+                {
+                    RedisDbconn.Instance.AddRightList(key, sub);
+                }
+                RedisDbconn.Instance.SetExpire(key, Library.function.get_Random(1800, 5400));                
+                return newlist;
+            }
+            db.Dispose();
+            RedisDbconn.Instance.ReleaseLock(key + ":lock");
+            return newlist;
+        }
+        #endregion
+    }
+}

+ 46 - 0
AppStart/Redis/MySql/UserLevelSetDbconn.cs

@@ -0,0 +1,46 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using MySystem.Models.Main;
+
+namespace MySystem
+{
+    public class UserLevelSetDbconn
+    {
+        public readonly static UserLevelSetDbconn Instance = new UserLevelSetDbconn();
+
+        #region 获取列表
+        public List<UserLevelSet> GetList()
+        {
+            string key = "UserLevelSet";
+            List<UserLevelSet> list = new List<UserLevelSet>();
+            if (RedisDbconn.Instance.Exists(key))
+            {
+                list = RedisDbconn.Instance.GetList<UserLevelSet>(key);
+                if (list.Count > 0)
+                {
+                    return list;
+                }
+            }
+            WebCMSEntities db = new WebCMSEntities();
+            var mysqllist = db.UserLevelSet.OrderBy(m => m.Id).ToList();
+            if (mysqllist.Count > 0)
+            {
+                List<UserLevelSet> newlist = new List<UserLevelSet>();
+                foreach (var sub in mysqllist)
+                {
+                    newlist.Add(sub);
+                }
+                RedisDbconn.Instance.Clear(key);
+                foreach (UserLevelSet sub in newlist)
+                {
+                    RedisDbconn.Instance.AddRightList(key, sub);
+                }
+                RedisDbconn.Instance.SetExpire(key, Library.function.get_Random(1800, 5400));
+            }
+            db.Dispose();
+            return list;
+        }
+        #endregion
+    }
+}

+ 27 - 0
AppStart/Redis/MySql/UserMachineDataDbconn.cs

@@ -0,0 +1,27 @@
+using System;
+using System.Collections.Generic;
+using Library;
+using System.Linq;
+using MySystem.Models.Main;
+
+namespace MySystem
+{
+    public class UserMachineDataDbconn
+    {
+        public readonly static UserMachineDataDbconn Instance = new UserMachineDataDbconn();
+
+        #region 获取单个字段
+        public UserMachineData Get(string IdBrand)
+        {
+            WebCMSEntities db = new WebCMSEntities();
+            UserMachineData userData = db.UserMachineData.FirstOrDefault(m => m.IdBrand == IdBrand);
+            if (userData != null)
+            {
+            }
+            db.Dispose();
+            return userData;
+        }
+        #endregion
+
+    }
+}

+ 97 - 0
AppStart/Redis/MySql/UsersDbconn.cs

@@ -0,0 +1,97 @@
+using System;
+using System.Collections.Generic;
+using Library;
+using System.Linq;
+using MySystem.Models.Main;
+
+namespace MySystem
+{
+    public class UsersDbconn
+    {
+        public readonly static UsersDbconn Instance = new UsersDbconn();
+
+        #region 获取单个字段
+        public Users Get(int Id)
+        {
+            WebCMSEntities db = new WebCMSEntities();
+            Users order = db.Users.FirstOrDefault(m => m.Id == Id);
+            if (order != null)
+            {
+            }
+            db.Dispose();
+            return order;
+        }
+        //个人新增创客
+        public int GetNewUserCount(int UserId, string TradeMonthOrDate = "")
+        {
+            int count = 0;
+            WebCMSEntities db = new WebCMSEntities();
+            if(string.IsNullOrEmpty(TradeMonthOrDate))
+            {
+                bool check = db.PullnewSummary.Any(m => m.UserId == UserId && m.SeoTitle == "self");
+                if (check)
+                {
+                    count = db.PullnewSummary.Where(m => m.UserId == UserId && m.SeoTitle == "self").Sum(m => m.RecUserAuthNum);
+                }
+            }
+            else
+            {
+                if(TradeMonthOrDate.Length == 8)
+                {
+                    bool check = db.PullnewSummary.Any(m => m.UserId == UserId && m.StatDate == TradeMonthOrDate && m.SeoTitle == "self");
+                    if (check)
+                    {
+                        count = db.PullnewSummary.Where(m => m.UserId == UserId && m.StatDate == TradeMonthOrDate && m.SeoTitle == "self").Sum(m => m.RecUserAuthNum);
+                    }
+                }
+                else
+                {
+                    bool check = db.PullnewSummary.Any(m => m.UserId == UserId && m.StatMonth == TradeMonthOrDate && m.SeoTitle == "self");
+                    if (check)
+                    {
+                        count = db.PullnewSummary.Where(m => m.UserId == UserId && m.StatMonth == TradeMonthOrDate && m.SeoTitle == "self").Sum(m => m.RecUserAuthNum);
+                    }
+                }
+            }
+            db.Dispose();
+            return count;
+        }
+        //团队新增创客
+        public int GetTeamNewUserCount(int UserId, string TradeMonthOrDate = "")
+        {
+            int count = 0;
+            WebCMSEntities db = new WebCMSEntities();
+            if(string.IsNullOrEmpty(TradeMonthOrDate))
+            {
+                bool check = db.PullnewSummary.Any(m => m.UserId == UserId && m.SeoTitle == "team");
+                if (check)
+                {
+                    count = db.PullnewSummary.Where(m => m.UserId == UserId && m.SeoTitle == "team").Sum(m => m.RecUserAuthNum);
+                }
+            }
+            else
+            {
+                if(TradeMonthOrDate.Length == 8)
+                {
+                    bool check = db.PullnewSummary.Any(m => m.UserId == UserId && m.StatDate == TradeMonthOrDate && m.SeoTitle == "team");
+                    if (check)
+                    {
+                        count = db.PullnewSummary.Where(m => m.UserId == UserId && m.StatDate == TradeMonthOrDate && m.SeoTitle == "team").Sum(m => m.RecUserAuthNum);
+                    }
+                }
+                else
+                {
+                    bool check = db.PullnewSummary.Any(m => m.UserId == UserId && m.StatMonth == TradeMonthOrDate && m.SeoTitle == "team");
+                    if (check)
+                    {
+                        count = db.PullnewSummary.Where(m => m.UserId == UserId && m.StatMonth == TradeMonthOrDate && m.SeoTitle == "team").Sum(m => m.RecUserAuthNum);
+                    }
+                }
+            }
+            db.Dispose();
+            return count;
+        }
+        #endregion
+
+    }
+}

+ 37 - 4
Areas/Api/Controllers/BaseController.cs

@@ -10,7 +10,7 @@ using Microsoft.AspNetCore.Http;
 using Microsoft.Extensions.Logging;
 using Microsoft.Extensions.Options;
 using Library;
-using MySystem.Models.Main;
+using MySystem.Models;
 
 namespace MySystem.Areas.Api.Controllers
 {
@@ -22,9 +22,21 @@ namespace MySystem.Areas.Api.Controllers
         {
             _accessor = accessor;
         }
-        public WebCMSEntities maindb = new WebCMSEntities();
+        public Models.Main.WebCMSEntities maindb = new Models.Main.WebCMSEntities();
+        public Models.KxsMainModels.WebCMSEntities kxsdb = new Models.KxsMainModels.WebCMSEntities();
 
-        public string SpHost = Library.ConfigurationManager.AppSettings["SpHost"].ToString();
+        public static string ApiKey = "G6H7@J8%";
+        public static string Host = Library.ConfigurationManager.AppSettings["Host"].ToString();
+        public static string SourceHost = Library.ConfigurationManager.AppSettings["SourceHost"].ToString();
+        public static string SpHost = Library.ConfigurationManager.AppSettings["SpHost"].ToString();
+        public static string OssHost = Library.ConfigurationManager.AppSettings["OssHost"].ToString();
+        public static string Database = Library.ConfigurationManager.AppSettings["Database"].ToString();
+        public static string defaultImage = Library.ConfigurationManager.AppSettings["Host"].ToString() + "/skin/app/default/static/images/header.png";
+
+        //jwt参数
+        public string JwtSecret = Library.ConfigurationManager.AppSettings["JwtSecret"].ToString();
+        public string JwtIss = Library.ConfigurationManager.AppSettings["JwtIss"].ToString();
+        public string JwtAud = Library.ConfigurationManager.AppSettings["JwtAud"].ToString();
 
         #region 接口通用DES解密
 
@@ -36,6 +48,27 @@ namespace MySystem.Areas.Api.Controllers
 
         #endregion
 
-    
+        #region 默认图片
+
+        public static string DefaultPic(string picpath)
+        {
+            if (!string.IsNullOrEmpty(picpath))
+            {
+                if (picpath.StartsWith("http"))
+                {
+                    return picpath;
+                }
+                if (picpath.Contains("/v2/") || picpath.Contains("/upload/"))
+                {
+                    return OssHost + picpath;
+                }
+                return SourceHost + picpath;
+            }
+            return OssHost + "/default.png";
+        }
+
+        #endregion
+
+
     }
 }

+ 5 - 9
Areas/Api/Controllers/Business/BusinessController.cs

@@ -16,7 +16,7 @@ using MySystem.Service.Main;
 namespace MySystem.Areas.Api.Controllers.v1
 {
     [Area("Api")]
-    [Route("Api/v1/[controller]/[action]")]
+    [Route("/v1/[controller]/[action]")]
     public class BusinessController : BaseController
     {
         public BusinessController(IHttpContextAccessor accessor) : base(accessor)
@@ -24,7 +24,7 @@ namespace MySystem.Areas.Api.Controllers.v1
         }
 
         #region 经营数据-经营数据记录(月)
-        [Authorize]
+        // [Authorize]
         public JsonResult BussinessRecordForMonth(string value)
         {
             value = DesDecrypt(value);
@@ -35,7 +35,6 @@ namespace MySystem.Areas.Api.Controllers.v1
         private List<Dictionary<string, object>> BussinessRecordForMonthDo(string value)
         {
             JsonData data = JsonMapper.ToObject(value);
-            string Kind = data["Kind"].ToString(); //通道类型(1 原生 2 好哒)
             int MerchantId = int.Parse(function.CheckInt(data["MerchantId"].ToString())); //商户Id
             string TradeMonth = data["TradeMonth"].ToString(); //月份
             int pageSize = int.Parse(function.CheckInt(data["PageSize"].ToString()));
@@ -49,7 +48,7 @@ namespace MySystem.Areas.Api.Controllers.v1
 
 
         #region 经营数据-经营数据记录(半年)
-        [Authorize]
+        // [Authorize]
         public JsonResult BussinessRecordForHalfYear(string value)
         {
             value = DesDecrypt(value);
@@ -60,7 +59,6 @@ namespace MySystem.Areas.Api.Controllers.v1
         private List<Dictionary<string, object>> BussinessRecordForHalfYearDo(string value)
         {
             JsonData data = JsonMapper.ToObject(value);
-            string Kind = data["Kind"].ToString(); //通道类型(1 原生 2 好哒)
             int MerchantId = int.Parse(function.CheckInt(data["MerchantId"].ToString())); //商户Id
             int pageSize = int.Parse(function.CheckInt(data["PageSize"].ToString()));
             int pageNum = int.Parse(function.CheckInt(data["PageNum"].ToString()));
@@ -73,7 +71,7 @@ namespace MySystem.Areas.Api.Controllers.v1
 
 
         #region 经营数据-经营数据记录-经营详情列表
-        [Authorize]
+        // [Authorize]
         public JsonResult DayDetailList(string value)
         {
             value = DesDecrypt(value);
@@ -84,7 +82,6 @@ namespace MySystem.Areas.Api.Controllers.v1
         private List<Dictionary<string, object>> DayDetailListDo(string value)
         {
             JsonData data = JsonMapper.ToObject(value);
-            string Kind = data["Kind"].ToString(); //通道类型(1 原生 2 好哒)
             int MerchantId = int.Parse(function.CheckInt(data["MerchantId"].ToString())); //商户Id
             string TradeDate = data["TradeMonth"].ToString(); //日期
             int pageSize = int.Parse(function.CheckInt(data["PageSize"].ToString()));
@@ -107,7 +104,7 @@ namespace MySystem.Areas.Api.Controllers.v1
 
 
         #region 经营数据-经营数据记录-交易详情
-        [Authorize]
+        // [Authorize]
         public JsonResult OrderDetail(string value)
         {
             value = DesDecrypt(value);
@@ -118,7 +115,6 @@ namespace MySystem.Areas.Api.Controllers.v1
         private Dictionary<string, object> OrderDetailDo(string value)
         {
             JsonData data = JsonMapper.ToObject(value);
-            string Kind = data["Kind"].ToString(); //通道类型(1 原生 2 好哒)
             int MerchantId = int.Parse(function.CheckInt(data["MerchantId"].ToString())); //商户Id
             int OrderId = int.Parse(function.CheckInt(data["OrderId"].ToString())); //订单Id
             string condition = " and Status>=1";

+ 148 - 0
Areas/Api/Controllers/Main/ActiveRewardController.cs

@@ -0,0 +1,148 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Data;
+using Microsoft.AspNetCore.Mvc;
+using Microsoft.AspNetCore.Http;
+using Microsoft.Extensions.Logging;
+using Microsoft.Extensions.Options;
+using Microsoft.AspNetCore.Authorization;
+using System.Web;
+using MySystem.Models.Main;
+using LitJson;
+using Library;
+
+namespace MySystem.Areas.Api.Controllers.v1.pos
+{
+    [Area("Api")]
+    [Route("Api/v1/[controller]/[action]")]
+    public class ActiveRewardController : BaseController
+    {
+        public ActiveRewardController(IHttpContextAccessor accessor) : base(accessor)
+        {
+            OtherMySqlConn.connstr = Library.ConfigurationManager.AppSettings["SqlConnStr"].ToString();
+        }
+
+        #region 首页-客小爽产品-收益查看-达标奖励
+        [Authorize]
+        public JsonResult StatList(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            List<Dictionary<string, object>> dataList = StatListDo(value);
+            return Json(new AppResultJson() { Status = "1", Info = "", Data = dataList });
+        }
+        public List<Dictionary<string, object>> StatListDo(string value)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            int UserId = int.Parse(function.CheckInt(data["UserId"].ToString())); //创客
+            string TradeMonth = data["TradeMonth"].ToString();
+            int PageSize = int.Parse(function.CheckInt(data["PageSize"].ToString()));
+            int PageNum = int.Parse(function.CheckInt(data["PageNum"].ToString()));
+            int Kind = int.Parse(function.CheckInt(data["Kind"].ToString()));
+            string Date = Kind == 1 ? "%Y%m%d" : "%Y%m";
+            string TradeMonthCondi = "";
+            if (Kind == 2)
+            {
+                string StartTradeMonth = TradeMonth + "-01 00:00:00";
+                string EndTradeMonth = DateTime.Parse(StartTradeMonth).AddMonths(1).ToString("yyyy-MM-dd HH:mm:ss");
+                TradeMonthCondi = " and CreateDate>='" + StartTradeMonth + "' and CreateDate>='" + EndTradeMonth + "'";
+            }
+            List<Dictionary<string, object>> dataList = new List<Dictionary<string, object>>();
+            string PageCondition = PageSize.ToString();
+            if (PageNum > 1)
+            {
+                int skipNum = PageSize * (PageNum - 1);
+                PageCondition = skipNum + "," + PageSize;
+            }
+            DataTable dt = CustomerSqlConn.dtable("select DATE_FORMAT(CreateDate,'" + Date + "'),sum(RewardAmount) from ActiveReward where UserId=" + UserId + TradeMonthCondi + " group by DATE_FORMAT(CreateDate,'" + Date + "') order by DATE_FORMAT(CreateDate,'" + Date + "') desc limit " + PageCondition, AppConfig.Base.SqlConnStr);
+            foreach (DataRow dr in dt.Rows)
+            {
+                string subdata = dr[0].ToString();
+                decimal RewardAmount = decimal.Parse(dr[1].ToString());
+                Dictionary<string, object> curData = new Dictionary<string, object>();
+                curData.Add("RewardAmount", RewardAmount); //奖励金额
+                if (Kind == 1)
+                {
+                    curData.Add("ActDate", subdata.Substring(0, 4) + "年" + subdata.Substring(4, 2) + "月" + subdata.Substring(6, 2) + "日"); //激活时间
+                }
+                else
+                {
+                    curData.Add("ActDate", subdata.Substring(0, 4) + "年" + subdata.Substring(4, 2) + "月"); //激活时间
+                }
+                curData.Add("ActDateValue", subdata); //激活时间值
+                dataList.Add(curData);
+            }
+            return dataList;
+        }
+        #endregion
+
+
+        #region 首页-客小爽产品-收益查看-达标奖励-明细
+        [Authorize]
+        public JsonResult StatDetail(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            List<Dictionary<string, object>> dataList = StatDetailDo(value);
+            return Json(new AppResultJson() { Status = "1", Info = "", Data = dataList });
+        }
+        public List<Dictionary<string, object>> StatDetailDo(string value)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            int UserId = int.Parse(function.CheckInt(data["UserId"].ToString())); //创客
+            string ActDate = data["ActDate"].ToString(); //激活时间
+            int PageSize = int.Parse(function.CheckInt(data["PageSize"].ToString()));
+            int PageNum = int.Parse(function.CheckInt(data["PageNum"].ToString()));
+            List<Dictionary<string, object>> dataList = new List<Dictionary<string, object>>();
+            DateTime start = DateTime.Parse(ActDate + " 00:00:00");
+            DateTime end = DateTime.Parse(ActDate + " 23:59:59");
+            IQueryable<ActiveReward> query = maindb.ActiveReward.Where(m => m.UserId == UserId && m.CreateDate >= start && m.CreateDate <= end);
+            if (PageNum == 1)
+            {
+                query = query.Take(PageSize);
+            }
+            else
+            {
+                int skipNum = PageSize * (PageNum - 1);
+                query = query.Skip(skipNum).Take(PageSize);
+            }
+            foreach (var subdata in query.ToList())
+            {
+                Dictionary<string, object> curData = new Dictionary<string, object>();
+                PosMerchantInfo merchant = PosMerchantInfoDbconn.Instance.Get(subdata.MerchantId) ?? new PosMerchantInfo();
+                curData.Add("SnNo", subdata.KqSnNo);
+                curData.Add("MerchantName", merchant.MerchantName); //商户名称
+                curData.Add("RewardAmount", subdata.RewardAmount); //奖励金额
+                dataList.Add(curData);
+            }
+            return dataList;
+        }
+        #endregion
+
+
+
+        #region 检查签名是否合法,合法返回1,不合法返回提示信息
+
+        /// <summary>
+        /// 检查签名是否合法,合法返回1,不合法返回提示信息
+        /// </summary>
+        /// <param name="value">请求的参数(json字符串)</param>
+        /// <param name="signField">要签名的字段</param>
+        /// <returns></returns>
+        private string CheckSign(string value, string[] signField)
+        {
+            JsonData json = JsonMapper.ToObject(value);
+            Dictionary<string, string> dic = new Dictionary<string, string>();
+            for (int i = 0; i < signField.Length; i++)
+            {
+                dic.Add(signField[i], json[signField[i]].ToString());
+            }
+            string sign = json["sign"].ToString(); //客户端签名字符串
+            return new Sign().sign(dic, sign);
+        }
+
+        #endregion
+
+    }
+}

+ 133 - 0
Areas/Api/Controllers/Main/KqProductsController.cs

@@ -0,0 +1,133 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using Microsoft.AspNetCore.Mvc;
+using Microsoft.AspNetCore.Http;
+using Microsoft.Extensions.Logging;
+using Microsoft.Extensions.Options;
+using Microsoft.AspNetCore.Authorization;
+using System.Web;
+using MySystem.Models.Main;
+using LitJson;
+using Library;
+
+namespace MySystem.Areas.Api.Controllers.v1
+{
+    [Area("Api")]
+    [Route("Api/v1/[controller]/[action]")]
+    public class KqProductsController : BaseController
+    {
+        public KqProductsController(IHttpContextAccessor accessor) : base(accessor)
+        {
+        }
+
+
+
+
+        #region 通用-产品列表
+        [Authorize]
+        public JsonResult List(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            List<Dictionary<string, object>> dataList = ListDo(value);
+            return Json(new AppResultJson() { Status = "1", Info = "", Data = dataList });
+        }
+        public List<Dictionary<string, object>> ListDo(string value)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            int PageSize = int.Parse(function.CheckInt(data["PageSize"].ToString()));
+            int PageNum = int.Parse(function.CheckInt(data["PageNum"].ToString()));
+            List<Dictionary<string, object>> dataList = new List<Dictionary<string, object>>();
+            Dictionary<string, object> curData = new Dictionary<string, object>();
+            curData.Add("Name", "微信"); //名称
+            curData.Add("Id", "2"); //Id
+            dataList.Add(curData);
+
+            curData = new Dictionary<string, object>();
+            curData.Add("Name", "支付宝"); //名称
+            curData.Add("Id", "1"); //Id
+            dataList.Add(curData);
+            return dataList;
+        }
+        #endregion
+
+
+        #region 首页-客小爽产品-主界面产品数据
+        [Authorize]
+        public JsonResult MainStatData(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            List<Dictionary<string, object>> Obj = MainStatDataDo(value);
+            return Json(new AppResultJson() { Status = "1", Info = "", Data = Obj });
+        }
+        public List<Dictionary<string, object>> MainStatDataDo(string value)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            string UserId = data["UserId"].ToString(); //创客Id
+            
+            List<Dictionary<string, object>> list = new List<Dictionary<string, object>>();
+            Dictionary<string, object> Obj = new Dictionary<string, object>();
+
+            UserMachineData MachineData = UserMachineDataDbconn.Instance.Get(UserId + "_0") ?? new UserMachineData();
+            Dictionary<string, object> Machine = new Dictionary<string, object>();
+            Machine.Add("TotalMachineCount", MachineData.TotalMachineCount);  //总机具数
+            Machine.Add("UnBindCount", MachineData.UnBindCount); //未绑定机具数
+            Machine.Add("BindCount", MachineData.BindCount); //已绑定机具数
+            Obj.Add("Machine", Machine); //机具管理数据
+
+            Dictionary<string, object> Profit = new Dictionary<string, object>();
+            Profit.Add("TradeProfit", MachineData.TradeProfit); //交易分润
+            Profit.Add("ActProfit", MachineData.ActProfit); //激活奖励
+            Profit.Add("OpenProfit", MachineData.OpenProfit); //开机奖励
+            Profit.Add("DividendsProfit", MachineData.DividendsProfit); //分红奖励
+            Profit.Add("OtherProfit", MachineData.OtherProfit); //分润补贴
+            Profit.Add("FluxProfit", MachineData.FluxProfit); //流量卡分佣
+            Obj.Add("Profit", Profit); //收益查看数据
+
+            List<Dictionary<string, object>> Advertisment = new List<Dictionary<string, object>>();
+            string ColId = "";
+            List<Models.Main.Advertisment> ads = AdvertismentDbconn.Instance.GetList(ColId);
+            foreach (Models.Main.Advertisment ad in ads)
+            {
+                Dictionary<string, object> item = new Dictionary<string, object>();
+                item.Add("Url", ad.Url); //跳转地址
+                item.Add("BannerPic", DefaultPic(ad.PicPath)); //广告图片
+                item.Add("Id", ad.Id); //Id
+                Advertisment.Add(item);
+            }
+            Obj.Add("Advertisment", Advertisment);
+            list.Add(Obj);
+            return list;
+        }
+        #endregion
+
+
+
+
+
+        #region 检查签名是否合法,合法返回1,不合法返回提示信息
+
+        /// <summary>
+        /// 检查签名是否合法,合法返回1,不合法返回提示信息
+        /// </summary>
+        /// <param name="value">请求的参数(json字符串)</param>
+        /// <param name="signField">要签名的字段</param>
+        /// <returns></returns>
+        private string CheckSign(string value, string[] signField)
+        {
+            JsonData json = JsonMapper.ToObject(value);
+            Dictionary<string, string> dic = new Dictionary<string, string>();
+            for (int i = 0; i < signField.Length; i++)
+            {
+                dic.Add(signField[i], json[signField[i]].ToString());
+            }
+            string sign = json["sign"].ToString(); //客户端签名字符串
+            return new Sign().sign(dic, sign);
+        }
+
+        #endregion
+
+    }
+}

+ 603 - 2
Areas/Api/Controllers/Main/MerchantInfoController.cs

@@ -55,7 +55,7 @@ namespace MySystem.Areas.Api.Controllers.v1
                 if (Status == 4) Status = 2;
                 condition.Condition("Status", Status);
             }
-            if(!string.IsNullOrEmpty(SearchKey))
+            if (!string.IsNullOrEmpty(SearchKey))
             {
                 condition.ConditionLike("Name", SearchKey);
             }
@@ -115,7 +115,7 @@ namespace MySystem.Areas.Api.Controllers.v1
             WeChat.Add("SignUrl", addInfo.WeChatSignUrl);
             AuditResult.Add(WeChat);
 
-            if(addInfo.QueryCount == -1 || addInfo.QueryCount >= 1)
+            if (addInfo.QueryCount == -1 || addInfo.QueryCount >= 1)
             {
                 Dictionary<string, object> Alipay = new Dictionary<string, object>();
                 Alipay.Add("Name", "支付宝");
@@ -134,6 +134,607 @@ namespace MySystem.Areas.Api.Controllers.v1
         #endregion
 
 
+        //new
+        #region 首页-快联盟产品-我的业绩-团队业绩-商户列表
+        // [Authorize]
+        public JsonResult TeamPerformanceMerchants(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            List<Dictionary<string, object>> dataList = TeamPerformanceMerchantsDo(value);
+            return Json(new AppResultJson() { Status = "1", Info = "", Data = dataList });
+        }
+        public List<Dictionary<string, object>> TeamPerformanceMerchantsDo(string value)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            int UserId = int.Parse(function.CheckInt(data["UserId"].ToString())); //创客
+            int PageSize = int.Parse(function.CheckInt(data["PageSize"].ToString()));
+            int PageNum = int.Parse(function.CheckInt(data["PageNum"].ToString()));
+            List<Dictionary<string, object>> dataList = new List<Dictionary<string, object>>();
+            List<int> query = MerchantInfoDbconn.Instance.GetList(UserId, PageNum, PageSize);
+            foreach (int id in query)
+            {
+                MerchantInfo subdata = MerchantInfoDbconn.Instance.Get(id) ?? new MerchantInfo();
+                Dictionary<string, object> curData = new Dictionary<string, object>();
+                curData.Add("MerchantName", subdata.Name); //商户姓名
+                curData.Add("Id", subdata.Id); //Id
+                dataList.Add(curData);
+            }
+            return dataList;
+        }
+        #endregion
+
+
+
+
+        #region 创客-首页-商户签约
+        // [Authorize]
+        public JsonResult ContractList(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            List<Dictionary<string, object>> dataList = ContractListDo(value);
+            return Json(new AppResultJson() { Status = "1", Info = "", Data = dataList });
+        }
+        public List<Dictionary<string, object>> ContractListDo(string value)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            int UserId = int.Parse(function.CheckInt(data["UserId"].ToString())); //所属创客
+            string Status = data["Status"].ToString(); //签约状态
+            int PageSize = int.Parse(function.CheckInt(data["PageSize"].ToString()));
+            int PageNum = int.Parse(function.CheckInt(data["PageNum"].ToString()));
+            List<Dictionary<string, object>> dataList = new List<Dictionary<string, object>>();
+            List<int> query = MerchantInfoDbconn.Instance.GetList(UserId, PageNum, PageSize);
+            foreach (var id in query)
+            {
+                MerchantInfo subdata = MerchantInfoDbconn.Instance.Get(id) ?? new MerchantInfo();
+                Dictionary<string, object> curData = new Dictionary<string, object>();
+                curData.Add("Name", subdata.Name); //名称
+                curData.Add("Id", subdata.Id); //Id
+                curData.Add("CreateDate", subdata.CreateDate == null ? "" : subdata.CreateDate.Value.ToString("yyyy-MM-dd HH:mm:ss")); //CreateDate
+                curData.Add("Status", ""); //签约状态
+                curData.Add("MainType", ""); //主体类型
+                dataList.Add(curData);
+            }
+            return dataList;
+        }
+        #endregion
+
+
+
+        #region 创客-首页-商户签约-详情
+        // [Authorize]
+        public JsonResult ContractDetail(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            Dictionary<string, object> Obj = ContractDetailDo(value);
+            return Json(new AppResultJson() { Status = "1", Info = "", Data = Obj });
+        }
+        public Dictionary<string, object> ContractDetailDo(string value)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            Dictionary<string, object> Obj = new Dictionary<string, object>();
+            MerchantInfo query = new MerchantInfo();
+            int Id = int.Parse(function.CheckInt(data["Id"].ToString()));
+            query = MerchantInfoDbconn.Instance.Get(Id) ?? new MerchantInfo();
+            Obj.Add("Name", query.Name); //名称
+            Obj.Add("Status", ""); //签约状态
+            Obj.Add("Platforms", ""); //品台列表
+            Obj.Add("CreateDate", query.CreateDate); //创建时间
+            return Obj;
+        }
+        #endregion
+
+
+
+        #region 创客-首页-我的商户-商户列表
+        // [Authorize]
+        public JsonResult MyMerchant(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            Dictionary<string, object> Other = new Dictionary<string, object>();
+            List<Dictionary<string, object>> dataList = MyMerchantDo(value, out Other);
+            return Json(new AppResultJson() { Status = "1", Info = "", Data = dataList, Other = Other });
+        }
+        public List<Dictionary<string, object>> MyMerchantDo(string value, out Dictionary<string, object> Other)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            string SearchKey = data["SearchKey"].ToString(); //搜索关键词
+            int UserId = int.Parse(function.CheckInt(data["UserId"].ToString())); //创客
+            int ActiveStatus = int.Parse(function.CheckInt(data["ActiveStatus"].ToString())); //商户激活状态
+            int Kind = int.Parse(function.CheckInt(data["Kind"].ToString()));
+            string TradeSort = data["TradeSort"].ToString(); //排序
+            string DateSort = data["DateSort"].ToString(); //排序
+            int PageSize = int.Parse(function.CheckInt(data["PageSize"].ToString()));
+            int PageNum = int.Parse(function.CheckInt(data["PageNum"].ToString()));
+            List<Dictionary<string, object>> dataList = new List<Dictionary<string, object>>();
+            IQueryable<MerchantInfo> query = maindb.MerchantInfo.Where(m => m.UserId == UserId && (m.Status == 2 || m.QueryCount == 2));
+            DateTime today = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd") + " 00:00:00");
+            int TotalCount = query.Count();
+            int ActCount = query.Count(m => m.ActivationDate == today);
+            int ProductCount = query.Count();
+            int ProductActCount = query.Count(m => m.ActivationStatus == 1);
+            int ProductUnActCount = ProductCount - ProductActCount;
+            if (!string.IsNullOrEmpty(SearchKey))
+            {
+                query = query.Where(m => m.Name.Contains(SearchKey));
+            }
+            if (Kind > 0)
+            {
+                query = query.Where(m => m.QueryCount == Kind);
+            }
+            if (ActiveStatus > 0)
+            {
+                if (ActiveStatus == 2) ActiveStatus = 0;
+                query = query.Where(m => m.ActivationStatus == ActiveStatus);
+            }
+            if (TradeSort == "1")
+            {
+                if (DateSort == "1")
+                {
+                    query = query.OrderBy(m => m.TotalAmount).ThenBy(m => m.CreateDate);
+                }
+                else
+                {
+                    query = query.OrderBy(m => m.TotalAmount).ThenByDescending(m => m.CreateDate);
+                }
+            }
+            else
+            {
+                if (DateSort == "1")
+                {
+                    query = query.OrderByDescending(m => m.TotalAmount).ThenBy(m => m.CreateDate);
+                }
+                else
+                {
+                    query = query.OrderByDescending(m => m.TotalAmount).ThenByDescending(m => m.CreateDate);
+                }
+            }
+            if (PageNum == 1)
+            {
+                query = query.Take(PageSize);
+            }
+            else
+            {
+                int skipNum = PageSize * (PageNum - 1);
+                query = query.Skip(skipNum).Take(PageSize);
+            }
+            foreach (var item in query.ToList())
+            {
+                Dictionary<string, object> curData = new Dictionary<string, object>();
+                curData.Add("MerchantName", item.Name); //商户姓名
+                curData.Add("KqRegTime", item.CreateDate == null ? "" : item.CreateDate.Value.ToString("yyyy-MM-dd")); //渠道注册时间
+                curData.Add("Id", item.Id); //Id
+                curData.Add("TotalAmount", item.TotalAmount.ToString("f2")); //交易额
+                curData.Add("TodayTrade", MerchantTradeStat.Instance.Amount(item.Id, DateTime.Now.ToString("yyyyMMdd")).ToString("f2")); //今日交易额
+                curData.Add("TradeCount", item.TotalConsumeCount); //交易笔数
+                curData.Add("TodayTradeCount", MerchantTradeStat.Instance.Count(item.Id, DateTime.Now.ToString("yyyyMMdd"))); //今日交易笔数
+                dataList.Add(curData);
+            }
+            Other = new Dictionary<string, object>();
+            Other.Add("TotalCount", TotalCount); //商户数
+            Other.Add("ActCount", ActCount); //商户达标数
+            Other.Add("UnActCount", ProductUnActCount); //未达标数
+            return dataList;
+        }
+        #endregion
+
+
+
+        #region 创客-首页-我的商户-商户详情
+        // [Authorize]
+        public JsonResult MyMerchantDetail(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            Dictionary<string, object> Obj = MyMerchantDetailDo(value);
+            return Json(new AppResultJson() { Status = "1", Info = "", Data = Obj });
+        }
+        public Dictionary<string, object> MyMerchantDetailDo(string value)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            Dictionary<string, object> Obj = new Dictionary<string, object>();
+            int Id = int.Parse(function.CheckInt(data["Id"].ToString()));
+            MerchantInfo merchant = MerchantInfoService.Query(Id);
+            MerchantAddInfo addinfo = MerchantAddInfoService.Query(Id);
+            Obj.Add("MerchantName", merchant.Name); //商户名称
+            Obj.Add("LegalName", addinfo.CertLegalPerson); //企业法人
+            Obj.Add("MerchantMobile", addinfo.MobilePhone); //商户手机号
+            Obj.Add("SubjectType", addinfo.SubjectType); //主体类型
+            Obj.Add("CreateDate", merchant.CreateDate == null ? "" : merchant.CreateDate.Value.ToString("yyyy-MM-dd HH:mm:ss")); //注册时间
+            Obj.Add("ActivationDate", merchant.ActivationDate == null ? "" : merchant.ActivationDate.Value.ToString("yyyy-MM-dd HH:mm:ss")); //达标时间
+            Obj.Add("TotalAmount", merchant.TotalAmount.ToString("f2")); //总交易额
+            Obj.Add("ActivationStatus", merchant.ActivationStatus); //达标状态
+            return Obj;
+        }
+        #endregion
+
+
+
+        #region 创客-首页-我的商户-商户详情-交易统计
+        // [Authorize]
+        public JsonResult MerchantTradeList(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            Dictionary<string, object> other = new Dictionary<string, object>();
+            List<Dictionary<string, object>> dataList = MerchantTradeListDo(value, out other);
+            return Json(new AppResultJson() { Status = "1", Info = "", Data = dataList, Other = other });
+        }
+        public List<Dictionary<string, object>> MerchantTradeListDo(string value, out Dictionary<string, object> other)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            string TradeMonth = data["TradeMonth"].ToString(); //交易月
+            int MerchantId = int.Parse(function.CheckInt(data["MerchantId"].ToString())); //商户Id
+            int PageSize = int.Parse(function.CheckInt(data["PageSize"].ToString()));
+            int PageNum = int.Parse(function.CheckInt(data["PageNum"].ToString()));
+            List<Dictionary<string, object>> dataList = new List<Dictionary<string, object>>();
+            string limit = " limit " + PageSize;
+            if (PageNum == 1)
+            {
+                int skipNum = PageSize * (PageNum - 1);
+                limit = " limit " + skipNum + "," + PageSize;
+            }
+            DataTable dt = CustomerSqlConn.dtable("select TradeDate,sum(TradeAmount),sum(TradeCount),sum(if(IsAct=1, TradeAmount, 0)),sum(if(IsAct=0, TradeAmount, 0)) from MerchantAmountSummay where MerchantId=" + MerchantId + " and TradeMonth='" + TradeMonth + "' group by TradeDate order by TradeDate desc" + limit, AppConfig.Base.SqlConnStr);
+            foreach (DataRow dr in dt.Rows)
+            {
+                string TradeDate = dr["TradeDate"].ToString();
+                Dictionary<string, object> curData = new Dictionary<string, object>();
+                curData.Add("TradeDate", TradeDate.Substring(0, 4) + "-" + TradeDate.Substring(4, 2) + "-" + TradeDate.Substring(6, 2)); //交易日
+                curData.Add("TradeAmt", dr[1].ToString()); //交易金额
+                curData.Add("ActTradeAmt", dr[3].ToString()); //活动交易金额
+                curData.Add("UnActTradeAmt", dr[4].ToString()); //非活动交易金额
+                curData.Add("TradeCount", dr[2].ToString()); //交易笔数
+                dataList.Add(curData);
+            }
+            other = new Dictionary<string, object>();
+            if (PageNum == 1)
+            {
+                DataTable total = CustomerSqlConn.dtable("select sum(TradeAmount),sum(TradeCount),sum(if(IsAct=1, TradeAmount, 0)),sum(if(IsAct=0, TradeAmount, 0)) from MerchantAmountSummay where MerchantId=" + MerchantId + " and TradeMonth='" + TradeMonth + "'", AppConfig.Base.SqlConnStr);
+                decimal TradeAmt = 0;
+                decimal ActTradeAmt = 0;
+                decimal UnActTradeAmt = 0;
+                int TradeCount = 0;
+                if (total.Rows.Count > 0)
+                {
+                    TradeAmt = decimal.Parse(function.CheckNum(total.Rows[0][0].ToString())); //交易金额
+                    ActTradeAmt = decimal.Parse(function.CheckNum(total.Rows[0][2].ToString())); //活动交易金额
+                    UnActTradeAmt = decimal.Parse(function.CheckNum(total.Rows[0][3].ToString())); //非活动交易金额
+                    TradeCount = int.Parse(function.CheckNum(total.Rows[0][1].ToString())); //交易笔数
+                }
+                other.Add("TradeAmt", TradeAmt.ToString("f2")); //交易金额
+                other.Add("ActTradeAmt", ActTradeAmt.ToString("f2")); //活动交易金额
+                other.Add("UnActTradeAmt", UnActTradeAmt.ToString("f2")); //非活动交易金额
+                other.Add("TradeCount", TradeCount); //交易笔数
+            }
+            return dataList;
+        }
+        #endregion
+
+
+
+        #region 创客-首页-我的商户-商户详情-码牌
+        // [Authorize]
+        public JsonResult QrCodeList(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            int TotalCount = 0;
+            List<Dictionary<string, object>> dataList = QrCodeListDo(value, out TotalCount);
+            return Json(new AppResultJson() { Status = "1", Info = "", Data = dataList, Other = TotalCount });
+        }
+        public List<Dictionary<string, object>> QrCodeListDo(string value, out int TotalCount)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            int MerchantId = int.Parse(function.CheckInt(data["MerchantId"].ToString())); //商户Id
+            int PageSize = int.Parse(function.CheckInt(data["PageSize"].ToString()));
+            int PageNum = int.Parse(function.CheckInt(data["PageNum"].ToString()));
+            List<Dictionary<string, object>> dataList = new List<Dictionary<string, object>>();
+            IQueryable<MerchantQrCode> query = maindb.MerchantQrCode.Where(m => m.MerchantId == MerchantId).OrderByDescending(m => m.Id);
+            TotalCount = query.Count();
+            if (PageNum == 1)
+            {
+                query = query.Take(PageSize);
+            }
+            else
+            {
+                int skipNum = PageSize * (PageNum - 1);
+                query = query.Skip(skipNum).Take(PageSize);
+            }
+            foreach (MerchantQrCode item in query.ToList())
+            {
+                Dictionary<string, object> curData = new Dictionary<string, object>();
+                curData.Add("SnNo", item.SnNo); //sn
+                curData.Add("TradeAmount", QrCodeTradeStat.Instance.Amount(item.SnNo).ToString("f2"));
+                dataList.Add(curData);
+            }
+            return dataList;
+        }
+        #endregion
+
+
+        #region 首页-我的商户-商户搜索
+        // [Authorize]
+        public JsonResult MerchantSearch(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            List<Dictionary<string, object>> dataList = MerchantSearchDo(value);
+            return Json(new AppResultJson() { Status = "1", Info = "", Data = dataList });
+        }
+        public List<Dictionary<string, object>> MerchantSearchDo(string value)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            string SearchKey = data["SearchKey"].ToString(); //搜索关键词
+            int UserId = int.Parse(function.CheckInt(data["UserId"].ToString()));
+            // int ProductType = 1; //int.Parse(function.CheckInt(data["ProductType"].ToString()));
+            int PageSize = int.Parse(function.CheckInt(data["PageSize"].ToString()));
+            int PageNum = int.Parse(function.CheckInt(data["PageNum"].ToString()));
+            List<Dictionary<string, object>> dataList = new List<Dictionary<string, object>>();
+            IQueryable<MerchantInfo> query = maindb.MerchantInfo.Where(m => m.UserId == UserId);
+            if (!string.IsNullOrEmpty(SearchKey))
+            {
+                query = query.Where(m => m.Name.Contains(SearchKey));
+            }
+            if (PageNum == 1)
+            {
+                query = query.Take(PageSize);
+            }
+            else
+            {
+                int skipNum = PageSize * (PageNum - 1);
+                query = query.Skip(skipNum).Take(PageSize);
+            }
+            foreach (var item in query.ToList())
+            {
+                MerchantInfo subdata = MerchantInfoDbconn.Instance.Get(item.Id) ?? new MerchantInfo();
+                Dictionary<string, object> curData = new Dictionary<string, object>();
+                curData.Add("MerchantName", subdata.Name); //商户姓名
+                curData.Add("KqRegTime", subdata.CreateDate == null ? "" : subdata.CreateDate.Value.ToString("yyyy-MM-dd HH:mm:ss")); //渠道注册时间
+                curData.Add("Id", item.Id); //Id
+                curData.Add("ThisMonthTrade", item.TotalAmount); //当月交易额
+                dataList.Add(curData);
+            }
+            return dataList;
+        }
+        #endregion
+
+
+        #region 创客-首页-进件记录-删除
+        // [Authorize]
+        public JsonResult Delete(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            AppResultJson result = DeleteDo(value);
+            return Json(new AppResultJson() { Status = result.Status, Info = result.Info, Data = result.Data });
+        }
+        public AppResultJson DeleteDo(string value)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            int Id = int.Parse(function.CheckInt(data["Id"].ToString()));
+            int UserId = int.Parse(function.CheckInt(data["UserId"].ToString())); //所属创客
+            Dictionary<string, object> Obj = new Dictionary<string, object>();
+            MerchantInfo edit = maindb.MerchantInfo.FirstOrDefault(m => m.Id == Id && m.UserId == UserId);
+            if (edit != null)
+            {
+                maindb.MerchantInfo.Remove(edit);
+                MerchantAddInfo editadd = maindb.MerchantAddInfo.FirstOrDefault(m => m.Id == Id);
+                if (editadd != null)
+                {
+                    maindb.MerchantAddInfo.Remove(editadd);
+                }
+                maindb.SaveChanges();
+            }
+            return new AppResultJson() { Status = "1", Info = "", Data = Obj };
+        }
+        #endregion
+
+
+
+        #region 创客-首页-暂存商户
+        // [Authorize]
+        public JsonResult TmpMerchantList(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            List<Dictionary<string, object>> dataList = TmpMerchantListDo(value);
+            return Json(new AppResultJson() { Status = "1", Info = "", Data = dataList });
+        }
+        public List<Dictionary<string, object>> TmpMerchantListDo(string value)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            int UserId = int.Parse(function.CheckInt(data["UserId"].ToString())); //所属创客
+            int PageSize = int.Parse(function.CheckInt(data["PageSize"].ToString()));
+            int PageNum = int.Parse(function.CheckInt(data["PageNum"].ToString()));
+            List<Dictionary<string, object>> dataList = new List<Dictionary<string, object>>();
+            List<MerchantInfo> query = maindb.MerchantInfo.Where(m => m.UserId == UserId && m.Sort == 0).ToList();
+            foreach (var subdata in query)
+            {
+                Dictionary<string, object> curData = new Dictionary<string, object>();
+                curData.Add("Name", subdata.Name); //名称
+                curData.Add("Id", subdata.Id); //Id
+                curData.Add("CreateDate", subdata.CreateDate == null ? "" : subdata.CreateDate.Value.ToString("yyyy-MM-dd HH:mm:ss")); //CreateDate
+                curData.Add("SubjectType", 1); //主体类型
+                dataList.Add(curData);
+            }
+            return dataList;
+        }
+        #endregion
+
+
+        #region 商户-修改登录密码
+        // [Authorize]
+        public JsonResult ModifyLoginPwd(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            AppResultJson result = ModifyLoginPwdDo(value);
+            return Json(new AppResultJson() { Status = result.Status, Info = result.Info, Data = result.Data });
+        }
+        public AppResultJson ModifyLoginPwdDo(string value)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            string LoginPwd = data["LoginPwd"].ToString(); //登录密码
+            string NewLoginPwd = data["NewLoginPwd"].ToString(); //新登录密码
+            Dictionary<string, object> Obj = new Dictionary<string, object>();
+            MerchantInfo query = new MerchantInfo();
+            int Id = int.Parse(function.CheckInt(data["Id"].ToString()));
+            query = MerchantInfoDbconn.Instance.Get(Id);
+            if (query != null)
+            {
+                query.UpdateDate = DateTime.Now; //修改时间
+                query.LoginPwd = LoginPwd; //登录密码
+            }
+            return new AppResultJson() { Status = "1", Info = "", Data = Obj };
+        }
+        #endregion
+
+
+        #region 商户-商户详情
+        // [Authorize]
+        public JsonResult Detail(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            Dictionary<string, object> Obj = DetailDo(value);
+            return Json(new AppResultJson() { Status = "1", Info = "", Data = Obj });
+        }
+        public Dictionary<string, object> DetailDo(string value)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            Dictionary<string, object> Obj = new Dictionary<string, object>();
+            int Id = int.Parse(function.CheckInt(data["Id"].ToString()));
+            MerchantInfo query = MerchantInfoDbconn.Instance.Get(Id) ?? new MerchantInfo();
+            MerchantAddInfo merchantAddInfo = maindb.MerchantAddInfo.FirstOrDefault(m => m.Id == Id) ?? new MerchantAddInfo();
+            Obj.Add("Name", query.Name); //名称
+            Obj.Add("Mobile", query.Mobile); //手机号
+            Obj.Add("IsAuth", query.IsAuth); //是否认证
+            Obj.Add("Logo", DefaultPic(query.Logo)); //Logo图片
+            Obj.Add("Status", GetMainStatusName(merchantAddInfo.QueryCount, merchantAddInfo.Status));
+            Obj.Add("AlipayStatus", merchantAddInfo.QueryCount);
+            Obj.Add("WeChatStatus", merchantAddInfo.Status);
+            Obj.Add("CreateDate", query.CreateDate == null ? "" : query.CreateDate.Value.ToString("yyyy-MM-dd"));
+            return Obj;
+        }
+        private string GetMainStatusName(int AlipayStatus, int WeChatStatus)
+        {
+            if (AlipayStatus == 0 && WeChatStatus == 0) return "待审核";
+            if (AlipayStatus == 0 && WeChatStatus == -1) return "部分未通过";
+            if (AlipayStatus == -1 && WeChatStatus == 0) return "部分未通过";
+            if (AlipayStatus == 0 && WeChatStatus == 1) return "部分待签约";
+            if (AlipayStatus == 1 && WeChatStatus == 0) return "部分待签约";
+            if (AlipayStatus == 0 && WeChatStatus == 2) return "部分已通过";
+            if (AlipayStatus == 2 && WeChatStatus == 0) return "部分已通过";
+            if (AlipayStatus == -1 && WeChatStatus == -1) return "审核未通过";
+            if (AlipayStatus == -1 && WeChatStatus == 1) return "部分未通过";
+            if (AlipayStatus == 1 && WeChatStatus == -1) return "部分未通过";
+            if (AlipayStatus == -1 && WeChatStatus == 2) return "部分未通过";
+            if (AlipayStatus == 2 && WeChatStatus == -1) return "部分未通过";
+            if (AlipayStatus == 1 && WeChatStatus == 1) return "待签约";
+            if (AlipayStatus == 1 && WeChatStatus == 2) return "部分待签约";
+            if (AlipayStatus == 2 && WeChatStatus == 1) return "部分待签约";
+            if (AlipayStatus == 2 && WeChatStatus == 2) return "已通过";
+            return "";
+        }
+        private string GetStatusName(int WeChatStatus)
+        {
+            if (WeChatStatus == -1) return "审核未通过";
+            if (WeChatStatus == 0) return "待审核";
+            if (WeChatStatus == 1) return "待签约";
+            if (WeChatStatus == 2) return "已通过";
+            return "";
+        }
+        #endregion
+
+
+
+        #region 商户-通过sn获取商户详情
+        // [Authorize]
+        public JsonResult DetailBySn(string value)
+        {
+            if (string.IsNullOrEmpty(value))
+            {
+                System.IO.StreamReader sr = new System.IO.StreamReader(Request.Body);
+                value = sr.ReadToEnd();
+                value = value.Split('=')[1];
+            }
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            Dictionary<string, object> Obj = DetailBySnDo(value);
+            return Json(new AppResultJson() { Status = "1", Info = "", Data = Obj });
+        }
+        public Dictionary<string, object> DetailBySnDo(string value)
+        {
+            function.WriteLog(value, "商户-通过sn获取商户详情");
+            JsonData data = JsonMapper.ToObject(value);
+            Dictionary<string, object> Obj = new Dictionary<string, object>();
+            string Sn = data["Sn"].ToString();
+            MerchantQrCode code = MerchantQrCodeService.Query(Sn);
+            MerchantInfo query = MerchantInfoService.Query(code.MerchantId);
+            MerchantParamSet set = MerchantParamSetService.Query(code.MerchantId);
+            Obj.Add("Name", query.Name); //名称
+            Obj.Add("Mobile", query.Mobile); //手机号
+            Obj.Add("IsAuth", query.IsAuth); //是否认证
+            Obj.Add("Logo", DefaultPic(query.Logo)); //Logo图片
+            Obj.Add("DiviPercent", set.IsAll == 1 ? 0M : set.DiviPercent);
+            Obj.Add("MinPayMoney", set.MinPayMoney);
+            return Obj;
+        }
+        #endregion
+
+
+
+        #region 商户-忘记密码
+        // [Authorize]
+        public JsonResult ForgetPwd(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            AppResultJson result = ForgetPwdDo(value);
+            return Json(new AppResultJson() { Status = result.Status, Info = result.Info, Data = result.Data });
+        }
+        public AppResultJson ForgetPwdDo(string value)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            string Mobile = data["Mobile"].ToString(); //手机号
+            string LoginPwd = data["LoginPwd"].ToString(); //登录密码
+            string MobileCode = data["MobileCode"].ToString(); //短信验证码
+            if (string.IsNullOrEmpty(data["Mobile"].ToString()))
+            {
+                return new AppResultJson() { Status = "-1", Info = "请填写手机号" };
+            }
+            if (data["Mobile"].ToString().Length > 11)
+            {
+                return new AppResultJson() { Status = "-1", Info = "手机号最多11个字符" };
+            }
+            MobileCodeCheck mobilecheck = RedisDbconn.Instance.Get<MobileCodeCheck>("MobileCodeCheck:" + Mobile);
+            if (mobilecheck == null)
+            {
+                return new AppResultJson() { Status = "-1", Info = "短信验证码不正确" };
+            }
+            if (mobilecheck.CheckCode != MobileCode)
+            {
+                return new AppResultJson() { Status = "-1", Info = "短信验证码不正确" };
+            }
+            RedisDbconn.Instance.Clear("MobileCodeCheck:" + Mobile);
+            Dictionary<string, object> Obj = new Dictionary<string, object>();
+            MerchantForMobile find = MerchantForMobileService.Query(Mobile);
+            if (find == null)
+            {
+                return new AppResultJson() { Status = "-1", Info = "手机号不正确" };
+            }
+            MerchantInfo query = maindb.MerchantInfo.FirstOrDefault(m => m.Id == find.MerchantId);
+            if (query != null)
+            {
+                query.LoginPwd = function.MD532(LoginPwd); //登录密码
+                maindb.SaveChanges();
+            }
+            return new AppResultJson() { Status = "1", Info = "", Data = Obj };
+        }
+        #endregion
 
 
         #region 检查签名是否合法,合法返回1,不合法返回提示信息

+ 253 - 0
Areas/Api/Controllers/Main/MerchantQrCodeController.cs

@@ -0,0 +1,253 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using Microsoft.AspNetCore.Mvc;
+using Microsoft.AspNetCore.Http;
+using Microsoft.Extensions.Logging;
+using Microsoft.Extensions.Options;
+using Microsoft.AspNetCore.Authorization;
+using System.Web;
+using MySystem.Models.Main;
+using LitJson;
+using Library;
+using MySystem.Service.Main;
+
+namespace MySystem.Areas.Api.Controllers.v1
+{
+    [Area("Api")]
+    [Route("Api/v1/[controller]/[action]")]
+    public class MerchantQrCodeController : BaseController
+    {
+        public MerchantQrCodeController(IHttpContextAccessor accessor) : base(accessor)
+        {
+        }
+
+
+
+
+        #region 商户-已绑二维码
+        [Authorize]
+        public JsonResult List(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            List<Dictionary<string, object>> dataList = ListDo(value);
+            return Json(new AppResultJson() { Status = "1", Info = "", Data = dataList });
+        }
+        public List<Dictionary<string, object>> ListDo(string value)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            int MerchantId = int.Parse(function.CheckInt(data["MerchantId"].ToString())); //商户
+            int PageSize = int.Parse(function.CheckInt(data["PageSize"].ToString()));
+            int PageNum = int.Parse(function.CheckInt(data["PageNum"].ToString()));
+            List<Dictionary<string, object>> dataList = new List<Dictionary<string, object>>();
+            MerchantInfo merchant = MerchantInfoDbconn.Instance.Get(MerchantId) ?? new MerchantInfo();
+            IQueryable<MerchantQrCode> query = maindb.MerchantQrCode.Where(m => m.MerchantId == MerchantId);
+            if (PageNum == 1)
+            {
+                query = query.Take(PageSize);
+            }
+            else
+            {
+                int skipNum = PageSize * (PageNum - 1);
+                query = query.Skip(skipNum).Take(PageSize);
+            }
+            foreach (MerchantQrCode subdata in query.ToList())
+            {
+                Dictionary<string, object> curData = new Dictionary<string, object>();
+                curData.Add("SnNo", subdata.SnNo); //Sn编号
+                curData.Add("Id", subdata.Id); //Id
+                curData.Add("BindDate", subdata.CreateDate == null ? "" : subdata.CreateDate.Value.ToString("yyyy-MM-dd")); //绑定时间
+                curData.Add("MerchantName", merchant.Name); //商户名称
+                PosMachines machine = PosMachinesDbconn.Instance.Get(subdata.MachineId) ?? new PosMachines();
+                curData.Add("MachineSnNo", machine.PosSn); //音箱SN
+                curData.Add("BindFlag", machine.BindingState); //绑定状态
+                dataList.Add(curData);
+            }
+            return dataList;
+        }
+        #endregion
+
+
+        #region 商户-绑定收款码
+        [Authorize]
+        public JsonResult Bind(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            AppResultJson result = BindDo(value);
+            return Json(new AppResultJson() { Status = result.Status, Info = result.Info, Data = result.Data });
+        }
+        public AppResultJson BindDo(string value)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            int MerchantId = int.Parse(function.CheckInt(data["MerchantId"].ToString())); //商户
+            string SnNo = data["SnNo"].ToString(); //Sn编号
+            string MachineNo = data["Machine"].ToString(); //音箱码
+            Dictionary<string, object> Obj = new Dictionary<string, object>();
+            MerchantQrCode query = MerchantQrCodeService.Query(SnNo);
+            PosMachinesTwo pos = PosMachinesTwoService.Query(SnNo);
+            MerchantInfo merchant = MerchantInfoService.Query(MerchantId);
+            if(pos.Id == 0)
+            {
+                return new AppResultJson() { Status = "-1", Info = "绑定失败" };
+            }
+            if(pos.BuyUserId == 0)
+            {
+                return new AppResultJson() { Status = "-1", Info = "码牌未授权" };
+            }
+            if (query.Id > 0)
+            {
+                if (query.MerchantId > 0)
+                {
+                    return new AppResultJson() { Status = "-1", Info = "此二维码已被绑定,请勿重复绑定" };
+                }
+            }
+            Dictionary<string, object> fields = new Dictionary<string, object>();
+            fields.Add("MerchantId", MerchantId);
+            fields.Add("SnNo", SnNo);
+            MerchantQrCodeService.Add(fields);
+            // query = maindb.MerchantQrCode.Add(new MerchantQrCode()
+            // {
+            //     CreateDate = DateTime.Now, //绑定时间
+            //     MerchantId = MerchantId, //商户
+            //     SnNo = SnNo,
+            // }).Entity;
+            // maindb.SaveChanges();
+            string DataId = query.Id + "_0";
+            MachineForQrCode forQrCode = maindb.MachineForQrCode.FirstOrDefault(m => m.DataId == DataId);
+            if (forQrCode == null)
+            {
+                forQrCode = maindb.MachineForQrCode.Add(new MachineForQrCode(){
+                    DataId = DataId,
+                    SnNo = SnNo,
+                    MachineSnNo = MachineNo,
+                    BindDate = DateTime.Now,
+                    MerchantId = MerchantId,
+                }).Entity;
+            }
+            else
+            { 
+                forQrCode.SnNo = SnNo;
+                forQrCode.MachineSnNo = MachineNo;
+                forQrCode.BindDate = DateTime.Now;
+                forQrCode.MerchantId = MerchantId;
+            }
+            maindb.SaveChanges();
+            fields = new Dictionary<string, object>();
+            fields.Add("BuyUserId", merchant.UserId);
+            fields.Add("UserId", merchant.UserId);
+            fields.Add("BindingTime", DateTime.Now);
+            fields.Add("BindingState", 1);
+            fields.Add("BindMerchantId", MerchantId);
+            fields.Add("OpId", 2);
+            PosMachinesTwoService.Edit(fields, pos.Id);
+            // pos.BuyUserId = merchant.UserId;
+            // pos.UserId = merchant.UserId;
+            // pos.BindingTime = DateTime.Now;
+            // pos.BindingState = 1;
+            // pos.BindMerchantId = MerchantId;
+            // maindb.SaveChanges();
+
+            PublicFunction.BindUserMachineData(maindb, merchant.UserId, 0, 1, SnNo);
+            
+            return new AppResultJson() { Status = "1", Info = "绑定成功" };
+        }
+        #endregion
+
+
+        #region 商户-确认替换音箱码
+        [Authorize]
+        public JsonResult ConfirmReplace(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            AppResultJson result = ConfirmReplaceDo(value);
+            return Json(new AppResultJson() { Status = result.Status, Info = result.Info, Data = result.Data });
+        }
+        public AppResultJson ConfirmReplaceDo(string value)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            int MerchantId = int.Parse(function.CheckInt(data["MerchantId"].ToString())); //商户
+            int MachineId = int.Parse(function.CheckInt(data["MachineId"].ToString())); //设备
+            int QrCodeId = int.Parse(function.CheckInt(data["QrCodeId"].ToString())); //收款码Id
+            Dictionary<string, object> Obj = new Dictionary<string, object>();
+            MerchantQrCode query = MerchantQrCodeService.Query(QrCodeId) ?? new MerchantQrCode();
+            PosMachines machine = PosMachinesDbconn.Instance.Get(MachineId) ?? new PosMachines();
+            query.MerchantId = MerchantId; //商户
+            query.MachineId = MachineId; //设备
+            MachineForQrCode qrcode = new MachineForQrCode()
+            { 
+                MerchantId = MerchantId,
+                DataId = QrCodeId + "_" + MachineId,
+                BindDate = DateTime.Now,
+                SnNo = query.SnNo,
+                MachineSnNo = machine.PosSn,
+            };
+            return new AppResultJson() { Status = "1", Info = "", Data = Obj };
+        }
+        #endregion
+
+
+        #region 商户-已绑收款码解除关联
+        [Authorize]
+        public JsonResult Remove(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            AppResultJson result = RemoveDo(value);
+            return Json(new AppResultJson() { Status = result.Status, Info = result.Info, Data = result.Data });
+        }
+        public AppResultJson RemoveDo(string value)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            int MerchantId = int.Parse(function.CheckInt(data["MerchantId"].ToString())); //商户
+            int Id = int.Parse(function.CheckInt(data["Id"].ToString()));
+            Dictionary<string, object> Obj = new Dictionary<string, object>();
+            string CheckKey = Id + "_";
+            var list = maindb.MachineForQrCode.Select(m => new { m.MerchantId, m.DataId }).Where(m => m.MerchantId == MerchantId && m.DataId.StartsWith(CheckKey)).ToList();
+            foreach (var sub in list)
+            {
+                MachineForQrCode edit = maindb.MachineForQrCode.FirstOrDefault(m => m.DataId == sub.DataId);
+                if (edit != null)
+                {
+                    maindb.MachineForQrCode.Remove(edit);
+                    int MachineId = int.Parse(function.CheckInt(edit.DataId.Split('_')[1]));
+                    MerchantQrCode qrCode = maindb.MerchantQrCode.FirstOrDefault(m => m.MerchantId == MachineId);
+                    if (qrCode != null)
+                    {
+                        qrCode.MerchantId = 0;
+                    }
+                }
+            }
+            maindb.SaveChanges();
+            return new AppResultJson() { Status = "1", Info = "", Data = Obj };
+        }
+        #endregion
+
+
+
+        #region 检查签名是否合法,合法返回1,不合法返回提示信息
+
+        /// <summary>
+        /// 检查签名是否合法,合法返回1,不合法返回提示信息
+        /// </summary>
+        /// <param name="value">请求的参数(json字符串)</param>
+        /// <param name="signField">要签名的字段</param>
+        /// <returns></returns>
+        private string CheckSign(string value, string[] signField)
+        {
+            JsonData json = JsonMapper.ToObject(value);
+            Dictionary<string, string> dic = new Dictionary<string, string>();
+            for (int i = 0; i < signField.Length; i++)
+            {
+                dic.Add(signField[i], json[signField[i]].ToString());
+            }
+            string sign = json["sign"].ToString(); //客户端签名字符串
+            return new Sign().sign(dic, sign);
+        }
+
+        #endregion
+
+    }
+}

+ 196 - 0
Areas/Api/Controllers/Main/PosCouponOrdersController.cs

@@ -0,0 +1,196 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Data;
+using Microsoft.AspNetCore.Mvc;
+using Microsoft.AspNetCore.Http;
+using Microsoft.Extensions.Logging;
+using Microsoft.Extensions.Options;
+using Microsoft.AspNetCore.Authorization;
+using System.Web;
+using MySystem.Models.Main;
+using LitJson;
+using Library;
+
+namespace MySystem.Areas.Api.Controllers.v1.pos
+{
+    [Area("Api")]
+    [Route("Api/v1/[controller]/[action]")]
+    public class PosCouponOrdersController : BaseController
+    {
+        public PosCouponOrdersController(IHttpContextAccessor accessor) : base(accessor)
+        {
+        }
+
+
+
+
+        #region 创客-首页-客小爽产品-码牌管理-划拨记录
+        [Authorize]
+        public JsonResult List(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            Dictionary<string, object> other = new Dictionary<string, object>();
+            List<Dictionary<string, object>> dataList = ListDo(value, out other);
+            return Json(new AppResultJson() { Status = "1", Info = "", Data = dataList, Other = other });
+        }
+        public List<Dictionary<string, object>> ListDo(string value, out Dictionary<string, object> other)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            int UserId = int.Parse(function.CheckInt(data["UserId"].ToString())); //创客Id
+            int ChangeKind = int.Parse(function.CheckInt(data["ChangeKind"].ToString())); // 1-拨入,2-拨出
+            int PageSize = int.Parse(function.CheckInt(data["PageSize"].ToString()));
+            int PageNum = int.Parse(function.CheckInt(data["PageNum"].ToString()));
+            List<Dictionary<string, object>> dataList = new List<Dictionary<string, object>>();
+            IQueryable<PosCouponOrders> query = maindb.PosCouponOrders;
+            if(ChangeKind == 1)
+            {
+                query = query.Where(m => m.ToUserId == UserId);
+            }
+            else
+            {
+                query = query.Where(m => m.FromUserId == UserId);
+            }
+            query = query.OrderByDescending(m => m.Id);
+            if (PageNum == 1)
+            {
+                query = query.Take(PageSize);
+            }
+            else
+            {
+                int skipNum = PageSize * (PageNum - 1);
+                query = query.Skip(skipNum).Take(PageSize);
+            }
+            foreach (var subdata in query.ToList())
+            {
+                Dictionary<string, object> curData = new Dictionary<string, object>();
+                curData.Add("Id", subdata.Id);
+                string RealName = "";
+                string MakerCode = "";
+                if(ChangeKind == 1)
+                {
+                    Models.KxsMainModels.Users user = kxsdb.Users.FirstOrDefault(m => m.Id == subdata.FromUserId) ?? new Models.KxsMainModels.Users();
+                    RealName = function.CheckNull(user.RealName);
+                    MakerCode = function.CheckNull(user.MakerCode);
+                    if(string.IsNullOrEmpty(RealName)) RealName = "成都总仓";
+                }
+                else
+                {
+                    Models.KxsMainModels.Users user = kxsdb.Users.FirstOrDefault(m => m.Id == subdata.ToUserId) ?? new Models.KxsMainModels.Users();
+                    RealName = function.CheckNull(user.RealName);
+                    MakerCode = function.CheckNull(user.MakerCode);
+                }
+                if (RealName.Length > 2 && RealName != "成都总仓")
+                {
+                    RealName = RealName.Substring(0, 1) + "*" + RealName.Substring(RealName.Length - 1);
+                }
+                else if(!string.IsNullOrEmpty(RealName) && RealName != "成都总仓")
+                { 
+                    RealName = RealName.Substring(0, 1) + "*";
+                }
+                curData.Add("RealName", RealName); //真实姓名
+                curData.Add("MakerCode", MakerCode); //创客编号
+                curData.Add("ChangeCount", subdata.ChangeCount); //变更数量
+                curData.Add("CreateDate", subdata.CreateDate == null ? "" : subdata.CreateDate.Value.ToString("yyyy-MM-dd HH:mm:ss")); //CreateDate
+                dataList.Add(curData);
+            }
+            other = new Dictionary<string, object>();
+            if(PageNum == 1)
+            {
+                DataTable dt = CustomerSqlConn.dtable("select (select count(Id) from PosCouponOrders where FromUserId=" + UserId + "),(select count(Id) from PosCouponOrders where ToUserId=" + UserId + ")", AppConfig.Base.SqlConnStr);
+                if(dt.Rows.Count > 0)
+                {
+                    other.Add("FromTotalCount", dt.Rows[0][1].ToString());
+                    other.Add("ToTotalCount", dt.Rows[0][0].ToString());
+                }
+            }
+            return dataList;
+        }
+        #endregion
+
+
+
+        #region 创客-首页-客小爽产品-码牌管理-划拨记录-详情
+        [Authorize]
+        public JsonResult Detail(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            Dictionary<string, object> Obj = DetailDo(value);
+            return Json(new AppResultJson() { Status = "1", Info = "", Data = Obj });
+        }
+        public Dictionary<string, object> DetailDo(string value)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            Dictionary<string, object> Obj = new Dictionary<string, object>();
+            int UserId = int.Parse(function.CheckInt(data["UserId"].ToString()));
+            int Id = int.Parse(function.CheckInt(data["Id"].ToString()));
+            PosCouponOrders query = maindb.PosCouponOrders.FirstOrDefault(m => m.Id == Id) ?? new PosCouponOrders();
+            string OrderNo = query.OrderNo;
+            Dictionary<string, object> UserInfo = new Dictionary<string, object>();
+            string RealName = "";
+            string MakerCode = "";
+            string Mobile = "";
+            if(query.ToUserId == UserId)
+            {
+                Models.KxsMainModels.Users user = kxsdb.Users.FirstOrDefault(m => m.Id == query.FromUserId) ?? new Models.KxsMainModels.Users();
+                RealName = function.CheckNull(user.RealName);
+                MakerCode = function.CheckNull(user.MakerCode);
+                Mobile = function.CheckNull(user.Mobile);
+                if(string.IsNullOrEmpty(RealName)) RealName = "成都总仓";
+            }
+            else
+            {
+                Models.KxsMainModels.Users user = kxsdb.Users.FirstOrDefault(m => m.Id == query.ToUserId) ?? new Models.KxsMainModels.Users();
+                RealName = function.CheckNull(user.RealName);
+                MakerCode = function.CheckNull(user.MakerCode);
+                Mobile = function.CheckNull(user.Mobile);
+            }
+            if (RealName.Length > 2 && RealName != "成都总仓")
+            {
+                RealName = RealName.Substring(0, 1) + "*" + RealName.Substring(RealName.Length - 1);
+            }
+            else if(!string.IsNullOrEmpty(RealName) && RealName != "成都总仓")
+            { 
+                RealName = RealName.Substring(0, 1) + "*";
+            }
+            Obj.Add("RealName", RealName); //真实姓名
+            Obj.Add("MakerCode", MakerCode); //创客编号
+            Obj.Add("Mobile", Mobile); //手机号
+            Obj.Add("ChangeCount", query.ChangeCount); //变更数量
+            Obj.Add("ChangeKind", query.ChangeKind); //变更类型
+            Obj.Add("CreateDate", query.CreateDate); //创建时间
+            List<int> posids = maindb.PosCouponRecord.Where(m => m.OrderNo == query.OrderNo).ToList().Select(m => m.PosCouponId).ToList();
+            List<string> list = maindb.PosMachinesTwo.Where(m => posids.Contains(m.Id)).ToList().Select(m => m.PosSn).ToList();
+            Obj.Add("SnNoList", list); //机具券列表
+            return Obj;
+        }
+        #endregion
+
+
+
+        #region 检查签名是否合法,合法返回1,不合法返回提示信息
+
+        /// <summary>
+        /// 检查签名是否合法,合法返回1,不合法返回提示信息
+        /// </summary>
+        /// <param name="value">请求的参数(json字符串)</param>
+        /// <param name="signField">要签名的字段</param>
+        /// <returns></returns>
+        private string CheckSign(string value, string[] signField)
+        {
+            JsonData json = JsonMapper.ToObject(value);
+            Dictionary<string, string> dic = new Dictionary<string, string>();
+            for (int i = 0; i < signField.Length; i++)
+            {
+                dic.Add(signField[i], json[signField[i]].ToString());
+            }
+            string sign = json["sign"].ToString(); //客户端签名字符串
+            return new Sign().sign(dic, sign);
+        }
+
+        #endregion
+
+    }
+}

+ 130 - 0
Areas/Api/Controllers/Main/PosCouponRecordController.cs

@@ -0,0 +1,130 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using Microsoft.AspNetCore.Mvc;
+using Microsoft.AspNetCore.Http;
+using Microsoft.Extensions.Logging;
+using Microsoft.Extensions.Options;
+using Microsoft.AspNetCore.Authorization;
+using System.Web;
+using MySystem.Models.Main;
+using LitJson;
+using Library;
+
+namespace MySystem.Areas.Api.Controllers.v1.pos
+{
+    [Area("Api")]
+    [Route("Api/v1/[controller]/[action]")]
+    public class PosCouponRecordController : BaseController
+    {
+        public PosCouponRecordController(IHttpContextAccessor accessor) : base(accessor)
+        {
+        }
+
+
+
+
+        #region 创客-首页-客小爽产品-码牌管理-划拨
+        [Authorize]
+        public JsonResult Add(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            AppResultJson result = AddDo(value);
+            return Json(new AppResultJson() { Status = result.Status, Info = result.Info, Data = result.Data });
+        }
+        int[] ToUserIds = { 1, 76922 };
+        public AppResultJson AddDo(string value)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            int ToUserId = int.Parse(function.CheckInt(data["ToUserId"].ToString())); //目标创客
+            int UserId = int.Parse(function.CheckInt(data["UserId"].ToString())); //创客Id
+            string SnIds = data["SnIds"].ToString(); //码牌列表返回的Id集合
+            Dictionary<string, object> Obj = new Dictionary<string, object>();
+            bool checkUser = kxsdb.Users.Any(m => m.Id == ToUserId);
+            if (!checkUser)
+            {
+                return new AppResultJson() { Status = "-1", Info = "请输入正确的创客编号", Data = Obj };
+            }
+            Models.KxsMainModels.Users user = kxsdb.Users.FirstOrDefault(m => m.Id == UserId) ?? new Models.KxsMainModels.Users();
+            Models.KxsMainModels.Users touser = kxsdb.Users.FirstOrDefault(m => m.Id == ToUserId) ?? new Models.KxsMainModels.Users();
+            if (!ToUserIds.Contains(UserId))
+            {
+                if (!function.CheckNull(touser.ParentNav).Contains("," + UserId + ",") || function.CheckNull(user.ParentNav).Contains("," + ToUserId + ","))
+                {
+                    return new AppResultJson() { Status = "-1", Info = "划拨对象不在您的权限范围", Data = Obj };
+                }
+            }
+            if (!string.IsNullOrEmpty(SnIds))
+            {
+                string ChangeRecordNo = "SC" + DateTime.Now.ToString("yyyyMMddHHmmssfff") + function.get_Random(8);
+                string[] SnIdList = SnIds.Split(',');
+                foreach (string SnId in SnIdList)
+                {
+                    int SnIdNum = int.Parse(SnId);
+                    PosMachinesTwo pos = maindb.PosMachinesTwo.FirstOrDefault(m => m.Id == SnIdNum) ?? new PosMachinesTwo();
+                    if (pos.BuyUserId != UserId)
+                    {
+                        return new AppResultJson() { Status = "-1", Info = pos.PosSn + "已划拨,请勿重复划拨", Data = Obj };
+                    }
+                    if(pos.BindingState == 1)
+                    {
+                        return new AppResultJson() { Status = "-1", Info = pos.PosSn + "已绑定,无法划拨", Data = Obj };
+                    }
+                    PosCouponRecord query = maindb.PosCouponRecord.Add(new PosCouponRecord()
+                    {
+                        CreateDate = DateTime.Now,
+                        OrderNo = ChangeRecordNo,
+                        ToUserId = ToUserId,
+                        FromUserId = UserId,
+                        PosCouponId = SnIdNum,
+                    }).Entity;
+                    pos.BuyUserId = ToUserId;
+                    pos.UserId = ToUserId;
+                }
+                maindb.SaveChanges();
+                int SnCount = SnIdList.Length;
+                PosCouponOrders tostat = maindb.PosCouponOrders.Add(new PosCouponOrders()
+                {
+                    CreateDate = DateTime.Now,
+                    ChangeCount = SnCount,
+                    OrderNo = ChangeRecordNo,
+                    ToUserId = ToUserId,
+                    FromUserId = UserId,
+                }).Entity;
+                
+                PublicFunction.StatUserMachineData(UserId, 0, -SnCount);
+                PublicFunction.StatUserMachineData(ToUserId, 0, SnCount);
+
+                maindb.SaveChanges();
+            }
+            return new AppResultJson() { Status = "1", Info = "", Data = Obj };
+        }
+        #endregion
+
+
+
+        #region 检查签名是否合法,合法返回1,不合法返回提示信息
+
+        /// <summary>
+        /// 检查签名是否合法,合法返回1,不合法返回提示信息
+        /// </summary>
+        /// <param name="value">请求的参数(json字符串)</param>
+        /// <param name="signField">要签名的字段</param>
+        /// <returns></returns>
+        private string CheckSign(string value, string[] signField)
+        {
+            JsonData json = JsonMapper.ToObject(value);
+            Dictionary<string, string> dic = new Dictionary<string, string>();
+            for (int i = 0; i < signField.Length; i++)
+            {
+                dic.Add(signField[i], json[signField[i]].ToString());
+            }
+            string sign = json["sign"].ToString(); //客户端签名字符串
+            return new Sign().sign(dic, sign);
+        }
+
+        #endregion
+
+    }
+}

+ 534 - 0
Areas/Api/Controllers/Main/PosMachinesController.cs

@@ -0,0 +1,534 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using Microsoft.AspNetCore.Mvc;
+using Microsoft.AspNetCore.Http;
+using Microsoft.Extensions.Logging;
+using Microsoft.Extensions.Options;
+using Microsoft.AspNetCore.Authorization;
+using System.Web;
+using MySystem.Models.Main;
+using LitJson;
+using Library;
+using MySystem.Service.Main;
+
+namespace MySystem.Areas.Api.Controllers.v1
+{
+    [Area("Api")]
+    [Route("Api/v1/[controller]/[action]")]
+    public class PosMachinesController : BaseController
+    {
+        public PosMachinesController(IHttpContextAccessor accessor) : base(accessor)
+        {
+        }
+
+
+
+        #region 商户-二维码关联音箱
+        [Authorize]
+        public JsonResult List(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            List<Dictionary<string, object>> dataList = ListDo(value);
+            return Json(new AppResultJson() { Status = "1", Info = "", Data = dataList });
+        }
+        public List<Dictionary<string, object>> ListDo(string value)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            int BindMerchantId = int.Parse(function.CheckInt(data["BindMerchantId"].ToString())); //绑定商户
+            int PageSize = int.Parse(function.CheckInt(data["PageSize"].ToString()));
+            int PageNum = int.Parse(function.CheckInt(data["PageNum"].ToString()));
+            List<Dictionary<string, object>> dataList = new List<Dictionary<string, object>>();
+            MerchantInfo merchant = MerchantInfoDbconn.Instance.Get(BindMerchantId) ?? new MerchantInfo();
+            List<Dictionary<string, object>> query = PosMachinesService.List(new List<RelationData>(), " and BindMerchantId=" + BindMerchantId, PageNum, PageSize);
+            foreach (var subdata in query)
+            {
+                Dictionary<string, object> curData = new Dictionary<string, object>();
+                curData.Add("BindingTime", subdata["BindingTime"].ToString()); //绑定时间
+                curData.Add("PosSn", subdata["PosSn"].ToString()); //SN编号
+                curData.Add("Id", subdata["Id"].ToString()); //Id
+                curData.Add("MerchantName", merchant.Name); //商户名称
+                string CheckKey = "_" + subdata["Id"].ToString();
+                int BindCount = MachineForQrCodeDbconn.Instance.GetList(BindMerchantId).Count(m => m.DataId.EndsWith(CheckKey));
+                curData.Add("BindCount", BindCount); //关联数量
+                dataList.Add(curData);
+            }
+            return dataList;
+        }
+        #endregion
+
+        #region 商户-已绑音箱
+        [Authorize]
+        public JsonResult BindedMachines(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            List<Dictionary<string, object>> dataList = BindedMachinesDo(value);
+            return Json(new AppResultJson() { Status = "1", Info = "", Data = dataList });
+        }
+        public List<Dictionary<string, object>> BindedMachinesDo(string value)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            int BindMerchantId = int.Parse(function.CheckInt(data["BindMerchantId"].ToString())); //绑定商户
+            int PageSize = int.Parse(function.CheckInt(data["PageSize"].ToString()));
+            int PageNum = int.Parse(function.CheckInt(data["PageNum"].ToString()));
+            List<Dictionary<string, object>> dataList = new List<Dictionary<string, object>>();
+            MerchantInfo merchant = MerchantInfoDbconn.Instance.Get(BindMerchantId) ?? new MerchantInfo();
+            List<int> query = PosMachinesDbconn.Instance.GetList(BindMerchantId, PageNum, PageSize);
+            foreach (int MachineId in query)
+            {
+                PosMachines subdata = PosMachinesDbconn.Instance.Get(MachineId) ?? new PosMachines();
+                Dictionary<string, object> curData = new Dictionary<string, object>();
+                curData.Add("BindingTime", subdata.BindingTime == null ? "" : subdata.BindingTime.Value.ToString("yyyy-MM-dd")); //绑定时间
+                curData.Add("PosSn", subdata.PosSn); //SN编号
+                curData.Add("Id", subdata.Id); //Id
+                curData.Add("MerchantName", merchant.Name); //商户名称
+                string CheckKey = "_" + subdata.Id;
+                List<MachineForQrCode> QrCodes = MachineForQrCodeDbconn.Instance.GetList(BindMerchantId);
+                QrCodes = QrCodes.Where(m => m.DataId.EndsWith(CheckKey)).ToList();
+                curData.Add("BindCount", QrCodes.Count); //关联数量
+                List<Dictionary<string, object>> QrCodeList = new List<Dictionary<string, object>>();
+                foreach (MachineForQrCode QrCode in QrCodes)
+                {
+                    Dictionary<string, object> item = new Dictionary<string, object>();
+                    string DataId = QrCode.DataId;
+                    if (DataId.Contains("_"))
+                    {
+                        DataId = DataId.Split('_')[0];
+                    }
+                    item.Add("Id", DataId);
+                    item.Add("Type", 1);
+                    item.Add("BindDate", QrCode.BindDate == null ? "" : QrCode.BindDate.Value.ToString("yyyy-MM-dd"));
+                    item.Add("Sn", QrCode.SnNo);
+                    QrCodeList.Add(item);
+                }
+                curData.Add("QrCodeList", QrCodeList); //二维码列表
+                dataList.Add(curData);
+            }
+            return dataList;
+        }
+        #endregion
+
+        #region 商户-替换音箱码
+        [Authorize]
+        public JsonResult ReplaceMachines(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            List<Dictionary<string, object>> dataList = ReplaceMachinesDo(value);
+            return Json(new AppResultJson() { Status = "1", Info = "", Data = dataList });
+        }
+        public List<Dictionary<string, object>> ReplaceMachinesDo(string value)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            int BindMerchantId = int.Parse(function.CheckInt(data["BindMerchantId"].ToString())); //绑定商户
+            int PageSize = int.Parse(function.CheckInt(data["PageSize"].ToString()));
+            int PageNum = int.Parse(function.CheckInt(data["PageNum"].ToString()));
+            string CheckKey = "_" + BindMerchantId;
+            List<Dictionary<string, object>> dataList = new List<Dictionary<string, object>>();
+            List<Dictionary<string, object>> query = MerchantQrCodeService.List(new List<RelationData>(), " and MerchantId=" + BindMerchantId, 1, 1000);
+            foreach (Dictionary<string, object> subdata in query)
+            {
+                Dictionary<string, object> curData = new Dictionary<string, object>();
+                curData.Add("BindingTime", subdata["UpdateDate"].ToString()); //绑定时间
+                curData.Add("PosSn", subdata["SnNo"].ToString()); //SN编号
+                curData.Add("Id", subdata["Id"].ToString()); //Id
+                dataList.Add(curData);
+            }
+            return dataList;
+        }
+        #endregion
+
+        #region 商户-确认关联音箱
+        [Authorize]
+        public JsonResult Add(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            AppResultJson result = AddDo(value);
+            return Json(new AppResultJson() { Status = result.Status, Info = result.Info, Data = result.Data });
+        }
+        public AppResultJson AddDo(string value)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            int BindMerchantId = int.Parse(function.CheckInt(data["BindMerchantId"].ToString())); //绑定商户
+            // string QrCodeId = data["QrCodeId"].ToString(); //二维码Id
+            int QrCodeId = int.Parse(function.CheckInt(data["QrCodeId"].ToString())); //二维码Id
+            string MachineId = data["MachineId"].ToString(); //音箱Id
+            Dictionary<string, object> Obj = new Dictionary<string, object>();
+            MerchantQrCode qrcode = MerchantQrCodeService.Query(QrCodeId);
+            PosMachines machine = PosMachinesDbconn.Instance.Get(MachineId) ?? new PosMachines();
+            MachineForQrCode query = new MachineForQrCode()
+            {
+                DataId = QrCodeId + "_" + MachineId,
+                MerchantId = BindMerchantId,
+                BindDate = DateTime.Now,
+                SnNo = qrcode.SnNo,
+                MachineSnNo = machine.PosSn,
+            };
+            machine.BindingState = 1;
+            qrcode.MachineId = int.Parse(MachineId);
+            return new AppResultJson() { Status = "1", Info = "", Data = Obj };
+        }
+        #endregion
+
+        #region 商户-绑定列表
+        [Authorize]
+        public JsonResult BindList(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            List<Dictionary<string, object>> dataList = BindListDo(value);
+            return Json(new AppResultJson() { Status = "1", Info = "", Data = dataList });
+        }
+        public List<Dictionary<string, object>> BindListDo(string value)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            int BindMerchantId = int.Parse(function.CheckInt(data["BindMerchantId"].ToString())); //绑定商户
+            int PageSize = int.Parse(function.CheckInt(data["PageSize"].ToString()));
+            int PageNum = int.Parse(function.CheckInt(data["PageNum"].ToString()));
+            List<Dictionary<string, object>> dataList = new List<Dictionary<string, object>>();
+            string condition = "";
+            if (!string.IsNullOrEmpty(data["BindMerchantId"].ToString()))
+            {
+                condition += " and BindMerchantId=" + BindMerchantId;
+            }
+            List<Dictionary<string, object>> query = PosMachinesService.List(new List<RelationData>(), condition, PageNum, PageSize);
+            foreach (var subdata in query)
+            {
+                Dictionary<string, object> curData = new Dictionary<string, object>();
+                curData.Add("BindingTime", subdata["BindingTime"].ToString()); //绑定时间
+                curData.Add("PosSn", subdata["PosSn"].ToString()); //SN编号
+                curData.Add("MerchantName", ""); //商户名称
+                curData.Add("MerchantLogo", ""); //商户Logo
+                dataList.Add(curData);
+            }
+            return dataList;
+        }
+        #endregion
+
+        #region 商户-绑定机具
+        [Authorize]
+        public JsonResult Bind(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            AppResultJson result = BindDo(value);
+            return Json(new AppResultJson() { Status = result.Status, Info = result.Info, Data = result.Data });
+        }
+        public AppResultJson BindDo(string value)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            string PosSn = data["PosSn"].ToString(); //SN编号
+            int BindMerchantId = int.Parse(function.CheckInt(data["BindMerchantId"].ToString())); //绑定商户
+            Dictionary<string, object> Obj = new Dictionary<string, object>();
+            PosMachines query = new PosMachines();
+            query = new PosMachines()
+            {
+                CreateDate = DateTime.Now, //创建时间
+                UpdateDate = DateTime.Now, //修改时间
+                PosSn = PosSn, //SN编号
+                BindMerchantId = BindMerchantId, //绑定商户
+            };
+            return new AppResultJson() { Status = "1", Info = "", Data = Obj };
+        }
+        #endregion
+
+        #region 商户-已绑音箱解除关联
+        [Authorize]
+        public JsonResult Remove(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            AppResultJson result = RemoveDo(value);
+            return Json(new AppResultJson() { Status = result.Status, Info = result.Info, Data = result.Data });
+        }
+        public AppResultJson RemoveDo(string value)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            int BindMerchantId = int.Parse(function.CheckInt(data["BindMerchantId"].ToString())); //绑定商户
+            int Id = int.Parse(function.CheckInt(data["Id"].ToString()));
+            Dictionary<string, object> Obj = new Dictionary<string, object>();
+            string CheckKey = "_" + Id;
+            var list = maindb.MachineForQrCode.Select(m => new { m.MerchantId, m.DataId }).Where(m => m.MerchantId == BindMerchantId && m.DataId.EndsWith(CheckKey)).ToList();
+            foreach (var sub in list)
+            {
+                MachineForQrCode edit = maindb.MachineForQrCode.FirstOrDefault(m => m.DataId == sub.DataId);
+                if (edit != null)
+                {
+                    maindb.MachineForQrCode.Remove(edit);
+                    int MachineId = int.Parse(function.CheckInt(edit.DataId.Split('_')[1]));
+                    PosMachines machine = maindb.PosMachines.FirstOrDefault(m => m.BindMerchantId == MachineId);
+                    if (machine != null)
+                    {
+                        machine.BindMerchantId = 0;
+                    }
+                }
+            }
+            maindb.SaveChanges();
+
+            return new AppResultJson() { Status = "1", Info = "", Data = Obj };
+        }
+        #endregion
+
+
+
+        #region 首页-客小爽产品-机具管理-已绑定机具列表
+        [Authorize]
+        public JsonResult MyMachinesForBind(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            Dictionary<string, object> Other = new Dictionary<string, object>();
+            List<Dictionary<string, object>> dataList = MyMachinesForBindDo(value, out Other);
+            return Json(new AppResultJson() { Status = "1", Info = "", Data = dataList, Other = Other });
+        }
+        public List<Dictionary<string, object>> MyMachinesForBindDo(string value, out Dictionary<string, object> Other)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            int UserId = int.Parse(function.CheckInt(data["UserId"].ToString())); //所属创客
+            int BrandId = int.Parse(function.CheckInt(data["BrandId"].ToString())); //产品类型
+            string SnNo = data["SnNo"].ToString(); //SN号
+            int PageSize = int.Parse(function.CheckInt(data["PageSize"].ToString()));
+            int PageNum = int.Parse(function.CheckInt(data["PageNum"].ToString()));
+            List<Dictionary<string, object>> dataList = new List<Dictionary<string, object>>();
+            if (!string.IsNullOrEmpty(SnNo))
+            {
+                PageSize = 100000;
+            }
+            IQueryable<PosMachinesTwo> query = maindb.PosMachinesTwo.Where(m => m.Status > -1 && m.BuyUserId == UserId && m.BindingState == 1);
+            if (!string.IsNullOrEmpty(SnNo))
+            {
+                query = query.Where(m => m.PosSn == SnNo);
+            }
+            Other = new Dictionary<string, object>();
+            if (PageNum == 1)
+            {
+                Other.Add("count", query.Count());
+                query = query.Take(PageSize);
+            }
+            else
+            {
+                int skipNum = PageSize * (PageNum - 1);
+                query = query.Skip(skipNum).Take(PageSize);
+            }
+            foreach (var subdata in query.ToList())
+            {
+                Dictionary<string, object> curData = new Dictionary<string, object>();
+                int IsLeader = 0;//是否为大盟主机(0-否 1-是)
+                if (subdata.LeaderUserId > 0)
+                {
+                    IsLeader = 1;
+                }
+                else
+                {
+                    IsLeader = 0;
+                }
+                curData.Add("ActivationState", subdata.ActivationState == 1 ? "已激活" : "未激活"); //激活状态
+                curData.Add("PosSn", subdata.PosSn); //SN编号
+                curData.Add("PosSnType", RelationClass.GetPosSnTypeInfo(subdata.PosSnType)); //机具类型
+                curData.Add("Id", subdata.Id); //Id
+                decimal Deposit = 299;
+                if (BrandId == 6)
+                { 
+                    Deposit = 249;
+                }
+                if (!string.IsNullOrEmpty(subdata.PrizeParams))
+                {
+                    Deposit = decimal.Parse(function.CheckNum(subdata.PrizeParams));
+                }
+                curData.Add("Deposit", Deposit);
+                MerchantAddInfo merchant = maindb.MerchantAddInfo.FirstOrDefault(m => m.Id == subdata.BindMerchantId) ?? new MerchantAddInfo();
+                curData.Add("BindedMerchant", merchant.CertMerchantName);
+                curData.Add("IsLeader",IsLeader);
+                dataList.Add(curData);
+            }
+            return dataList;
+        }
+        #endregion
+
+        #region 首页-客小爽产品-机具管理-总机具列表
+        [Authorize]
+        public JsonResult MyMachines(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            Dictionary<string, object> Other = new Dictionary<string, object>();
+            List<Dictionary<string, object>> dataList = MyMachinesDo(value, out Other);
+            return Json(new AppResultJson() { Status = "1", Info = "", Data = dataList, Other = Other });
+        }
+        public List<Dictionary<string, object>> MyMachinesDo(string value, out Dictionary<string, object> Other)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            int UserId = int.Parse(function.CheckInt(data["UserId"].ToString())); //所属创客
+            int BrandId = int.Parse(function.CheckInt(data["BrandId"].ToString())); //产品类型
+            string SnNo = data["SnNo"].ToString(); //SN号
+            int PageSize = int.Parse(function.CheckInt(data["PageSize"].ToString()));
+            int PageNum = int.Parse(function.CheckInt(data["PageNum"].ToString()));
+            List<Dictionary<string, object>> dataList = new List<Dictionary<string, object>>();
+            if (!string.IsNullOrEmpty(SnNo))
+            {
+                PageSize = 100000;
+            }
+            IQueryable<PosMachinesTwo> query = maindb.PosMachinesTwo.Where(m => m.Status > -1 && m.BuyUserId == UserId && m.BrandId == BrandId);
+            if (!string.IsNullOrEmpty(SnNo))
+            {
+                query = query.Where(m => m.PosSn == SnNo);
+            }
+            Other = new Dictionary<string, object>();
+            if (PageNum == 1)
+            {
+                Other.Add("count", query.Count());
+                query = query.Take(PageSize);
+            }
+            else
+            {
+                int skipNum = PageSize * (PageNum - 1);
+                query = query.Skip(skipNum).Take(PageSize);
+            }
+            foreach (var subdata in query.ToList())
+            {
+                Dictionary<string, object> curData = new Dictionary<string, object>();
+                int IsLeader = 0;//是否为大盟主机(0-否 1-是)
+                if (subdata.LeaderUserId > 0)
+                {
+                    IsLeader = 1;
+                }
+                else
+                {
+                    IsLeader = 0;
+                }
+                curData.Add("PosSn", subdata.PosSn); //SN编号
+                curData.Add("PosSnType", RelationClass.GetPosSnTypeInfo(subdata.PosSnType)); //机具类型
+                curData.Add("Id", subdata.Id); //Id
+                curData.Add("CreateDate", subdata.TransferTime == null ? "" : subdata.TransferTime.Value.ToString("yyyy-MM-dd HH:mm:ss")); //CreateDate
+                StoreHouse store = StoreHouseDbconn.Instance.Get(subdata.StoreId) ?? new StoreHouse();
+                curData.Add("FromStore", store.StoreName); //来自仓库
+                decimal Deposit = 299;
+                if (BrandId == 6)
+                { 
+                    Deposit = 249;
+                }
+                if (!string.IsNullOrEmpty(subdata.PrizeParams))
+                {
+                    Deposit = decimal.Parse(function.CheckNum(subdata.PrizeParams));
+                }
+                curData.Add("Deposit", Deposit);
+                curData.Add("IsLeader",IsLeader);
+                dataList.Add(curData);
+            }
+            return dataList;
+        }
+        #endregion
+
+        #region 首页-客小爽产品-机具管理-未绑定机具列表
+        [Authorize]
+        public JsonResult MyMachinesForUnBind(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            Dictionary<string, object> Other = new Dictionary<string, object>();
+            List<Dictionary<string, object>> dataList = MyMachinesForUnBindDo(value, out Other);
+            return Json(new AppResultJson() { Status = "1", Info = "", Data = dataList, Other = Other });
+        }
+        public List<Dictionary<string, object>> MyMachinesForUnBindDo(string value, out Dictionary<string, object> Other)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            int UserId = int.Parse(function.CheckInt(data["UserId"].ToString())); //所属创客
+            int BrandId = int.Parse(function.CheckInt(data["BrandId"].ToString())); //产品类型
+            string SnNo = data["SnNo"].ToString(); //SN号
+            int PageSize = int.Parse(function.CheckInt(data["PageSize"].ToString()));
+            int PageNum = int.Parse(function.CheckInt(data["PageNum"].ToString()));
+            List<Dictionary<string, object>> dataList = new List<Dictionary<string, object>>();
+            if (!string.IsNullOrEmpty(SnNo))
+            {
+                PageSize = 100000;
+            }
+            IQueryable<PosMachinesTwo> query = maindb.PosMachinesTwo.Where(m => m.Status > -1 && m.BuyUserId == UserId && m.BindingState == 0);
+            if (!string.IsNullOrEmpty(SnNo))
+            {
+                query = query.Where(m => m.PosSn == SnNo && m.PosSnType == 0);
+            }
+            Other = new Dictionary<string, object>();
+            if (PageNum == 1)
+            {
+                Other.Add("count", query.Count());
+                query = query.Take(PageSize);
+            }
+            else
+            {
+                int skipNum = PageSize * (PageNum - 1);
+                query = query.Skip(skipNum).Take(PageSize);
+            }
+            foreach (var subdata in query.ToList())
+            {
+                Dictionary<string, object> curData = new Dictionary<string, object>();
+                int IsLeader = 0;//是否为大盟主机(0-否 1-是)
+                if (subdata.LeaderUserId > 0)
+                {
+                    IsLeader = 1;
+                }
+                else
+                {
+                    IsLeader = 0;
+                }
+                curData.Add("PosSn", subdata.PosSn); //SN编号
+                curData.Add("PosSnType", RelationClass.GetPosSnTypeInfo(subdata.PosSnType)); //机具类型
+                curData.Add("Id", subdata.Id); //Id
+                if (subdata.RecycEndDate != null)
+                {
+                    TimeSpan ts = subdata.RecycEndDate.Value - DateTime.Now;
+                    curData.Add("ActDays", ts.TotalDays.ToString("f0")); //活动剩余天数
+                }
+                else
+                { 
+                    curData.Add("ActDays", 0); //活动剩余天数
+                }
+                curData.Add("CreateDate", subdata.CreateDate.Value.ToString("yyyy-MM-dd")); //机具初始日期
+                curData.Add("EndDate", subdata.RecycEndDate == null ? "" : subdata.RecycEndDate.Value.ToString("yyyy-MM-dd")); //截止日期
+                decimal Deposit = 299;
+                if (BrandId == 6)
+                { 
+                    Deposit = 249;
+                }
+                if (!string.IsNullOrEmpty(subdata.PrizeParams))
+                {
+                    Deposit = decimal.Parse(function.CheckNum(subdata.PrizeParams));
+                }
+                curData.Add("Deposit", Deposit);
+                curData.Add("IsLeader",IsLeader);
+                dataList.Add(curData);
+            }
+            return dataList;
+        }
+        #endregion
+
+
+
+
+
+        #region 检查签名是否合法,合法返回1,不合法返回提示信息
+
+        /// <summary>
+        /// 检查签名是否合法,合法返回1,不合法返回提示信息
+        /// </summary>
+        /// <param name="value">请求的参数(json字符串)</param>
+        /// <param name="signField">要签名的字段</param>
+        /// <returns></returns>
+        private string CheckSign(string value, string[] signField)
+        {
+            JsonData json = JsonMapper.ToObject(value);
+            Dictionary<string, string> dic = new Dictionary<string, string>();
+            for (int i = 0; i < signField.Length; i++)
+            {
+                dic.Add(signField[i], json[signField[i]].ToString());
+            }
+            string sign = json["sign"].ToString(); //客户端签名字符串
+            return new Sign().sign(dic, sign);
+        }
+
+        #endregion
+
+    }
+}

+ 91 - 0
Areas/Api/Controllers/Main/ProfitRewardRecordController.cs

@@ -0,0 +1,91 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using Microsoft.AspNetCore.Mvc;
+using Microsoft.AspNetCore.Http;
+using Microsoft.Extensions.Logging;
+using Microsoft.Extensions.Options;
+using Microsoft.AspNetCore.Authorization;
+using System.Web;
+using MySystem.Models.Main;
+using LitJson;
+using Library;
+
+namespace MySystem.Areas.Api.Controllers.v1
+{
+    [Area("Api")]
+    [Route("Api/v1/[controller]/[action]")]
+    public class ProfitRewardRecordController : BaseController
+    {
+        public ProfitRewardRecordController(IHttpContextAccessor accessor) : base(accessor)
+        {
+        }
+
+
+
+
+        #region 首页-客小爽产品-收益查看-交易分润
+        [Authorize]
+        public JsonResult TradeProfitList(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            List<Dictionary<string, object>> dataList = TradeProfitListDo(value);
+            return Json(new AppResultJson() { Status = "1", Info = "", Data = dataList });
+        }
+        public List<Dictionary<string, object>> TradeProfitListDo(string value)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            int UserId = int.Parse(function.CheckInt(data["UserId"].ToString())); //创客
+            int PageSize = int.Parse(function.CheckInt(data["PageSize"].ToString()));
+            int PageNum = int.Parse(function.CheckInt(data["PageNum"].ToString()));
+            List<Dictionary<string, object>> dataList = new List<Dictionary<string, object>>();
+            IQueryable<ProfitRecord> query = maindb.ProfitRecord.Where(m => m.UserId == UserId).OrderByDescending(m => m.Id);
+            if (PageNum == 1)
+            {
+                query = query.Take(PageSize);
+            }
+            else
+            {
+                int skipNum = PageSize * (PageNum - 1);
+                query = query.Skip(skipNum).Take(PageSize);
+            }
+            foreach (var subdata in query.ToList())
+            {
+                Dictionary<string, object> curData = new Dictionary<string, object>();
+                curData.Add("ProfitAmount", subdata.ProfitAmount); //交易分润
+                curData.Add("ProfitMonth", subdata.SeoTitle.Substring(0, 4) + "年" + subdata.SeoTitle.Substring(4) + "月");
+                curData.Add("ProfitDate", subdata.CreateDate.Value.ToString("yyyy-MM-dd"));
+                dataList.Add(curData);
+            }
+            return dataList;
+        }
+        #endregion
+
+
+
+
+        #region 检查签名是否合法,合法返回1,不合法返回提示信息
+
+        /// <summary>
+        /// 检查签名是否合法,合法返回1,不合法返回提示信息
+        /// </summary>
+        /// <param name="value">请求的参数(json字符串)</param>
+        /// <param name="signField">要签名的字段</param>
+        /// <returns></returns>
+        private string CheckSign(string value, string[] signField)
+        {
+            JsonData json = JsonMapper.ToObject(value);
+            Dictionary<string, string> dic = new Dictionary<string, string>();
+            for (int i = 0; i < signField.Length; i++)
+            {
+                dic.Add(signField[i], json[signField[i]].ToString());
+            }
+            string sign = json["sign"].ToString(); //客户端签名字符串
+            return new Sign().sign(dic, sign);
+        }
+
+        #endregion
+
+    }
+}

+ 0 - 103
Areas/Api/Controllers/Message/MessageController.cs

@@ -23,108 +23,5 @@ namespace MySystem.Areas.Api.Controllers.v1
         {
         }
 
-        #region 消费者-支付接口
-        // [Authorize]
-        public JsonResult Pay(string value)
-        {
-            if (string.IsNullOrEmpty(value))
-            {
-                System.IO.StreamReader sr = new System.IO.StreamReader(Request.Body);
-                value = sr.ReadToEnd();
-                value = value.Split('=')[1];
-            }
-            value = DesDecrypt(value);
-            JsonData data = JsonMapper.ToObject(value);
-            string SnNo = data["Sn"].ToString(); //商户
-            string Machine = data["Machine"].ToString();
-            int PayMode = int.Parse(function.CheckInt(data["PayMode"].ToString())); //支付方式(1 支付宝 2 微信)
-            decimal PayMoney = decimal.Parse(function.CheckNum(data["PayMoney"].ToString())); //支付金额
-            string Code = data["Code"].ToString();
-            if (string.IsNullOrEmpty(data["PayMode"].ToString()))
-            {
-                return Json(new AppResultJson() { Status = "-1", Info = "请填写支付方式" });
-            }
-            if (string.IsNullOrEmpty(data["PayMoney"].ToString()))
-            {
-                return Json(new AppResultJson() { Status = "-1", Info = "请填写支付金额" });
-            }
-            if (!function.IsNum(data["PayMoney"].ToString()))
-            {
-                return Json(new AppResultJson() { Status = "-1", Info = "请填写正确的支付金额" });
-            }
-            var qrcode = MerchantQrCodeService.Query(" SnNo='" + SnNo + "'");
-            var merchant = MerchantInfoService.Query(qrcode.MerchantId);
-            var merchantAdd = MerchantAddInfoService.Query(qrcode.MerchantId);
-            var merchantset = MerchantParamSetService.Query(qrcode.MerchantId);
-            var ledgerModel = merchantset.IsAll == 1 ? "1" : "5";
-            string openid = "";
-            if (PayMode == 1)
-            {
-                openid = new AlipayFunction(_accessor.HttpContext).GetAlipayUserId(Code);
-                if (openid.Contains("|"))
-                {
-                    openid = openid.Split('|')[0];
-                }
-            }
-            else
-            {
-                string result = function.GetWebRequest("https://api.weixin.qq.com/sns/jscode2session?appid=" + new WeChatFunction().AppId + "&secret=" + new WeChatFunction().AppSecret + "&js_code=" + Code + "&grant_type=authorization_code");
-                function.WriteLog(DateTime.Now.ToString() + "\n" + result, "微信小程序获取openid");
-                JsonData jsonObj = JsonMapper.ToObject(result);
-                openid = jsonObj["openid"].ToString();
-            }
-            int ConsumerId = 0;
-            var check = ConsumerOpenIdsService.Exist(openid);
-            if (check == false)
-            {
-                var info = ConsumersUtil.AddConsumers(ConsumerId, openid);
-                ConsumerId = int.Parse(info.Data.ToString());
-                ConsumerOpenIdsUtil.AddConsumerOpenIds(ConsumerId, openid);
-            }
-            else
-            {
-                var info = ConsumerOpenIdsService.Query(" OpenId='" + openid + "'");
-                ConsumerId = info.ConsumerId;
-            }
-            Dictionary<string, object> Obj = new Dictionary<string, object>();
-            string OrderNo = DateTime.Now.ToString("yyyyMMddHHmmssfff") + function.get_Random(8);
-            bool ActFlag = merchantset.IsAll == 1 ? false : true;
-            if (PayMoney < merchantset.MinPayMoney) //支付金额小于活动最小金额,则不分账
-            {
-                ActFlag = false;
-            }
-            var infos = ConsumerOrdersUtil.AddConsumerOrders(qrcode.MerchantId, ConsumerId, merchant.UserId, PayMode, PayMoney, SnNo, OrderNo, ActFlag ? PayMoney * merchantset.DiviPercent / 100 : 0, ActFlag ? 1u : 0u, ActFlag ? PayMoney * merchantset.GetPercent / 100 : PayMoney, Newtonsoft.Json.JsonConvert.SerializeObject(merchantset));
-            ConsumerOrderForNoUtil.AddConsumerOrderForNo(OrderNo, int.Parse(infos.Data.ToString()));
-            if (PayMode == 1)
-            {
-                string backString = HaoDaHelper.Instance.Alipay(merchantAdd.OutMchtNo, merchantAdd.StoreNo, OrderNo, PayMoney, SpHost + "/api/alipay/hdnotice", openid, function.get_Random(4), ledgerModel);
-                JsonData obj = JsonMapper.ToObject(backString);
-                if (obj["resultCode"].ToString() == "1")
-                {
-                    string tradeNo = obj["prePayId"].ToString();
-                    Obj.Add("respCode", obj["resultCode"].ToString());
-                    Obj.Add("tradeNo", tradeNo);
-                }
-                else
-                {
-                    Obj.Add("respCode", obj["resultCode"].ToString());
-                    Obj.Add("tradeNo", "");
-                    return Json(new AppResultJson() { Status = "-1", Info = obj["errorDesc"].ToString(), Data = Obj });
-                }
-            }
-            else if (PayMode == 2)
-            {
-                var dic = JsonMapper.ToObject(HaoDaHelper.Instance.WeChatPay(merchantAdd.OutMchtNo, merchantAdd.StoreNo, OrderNo, PayMoney, SpHost + "/api/wechat/hdnotice", openid, function.get_Random(4), AppConfig.WeChat.AppId, "MINI_PROGRAM", ledgerModel));
-                Obj.Add("appId", dic["payInfo"]["appId"].ToString()); //微信小程序appid
-                Obj.Add("timeStamp", dic["payInfo"]["timeStamp"].ToString()); //时间戳
-                Obj.Add("nonceStr", dic["payInfo"]["nonceStr"].ToString()); //随机字符串
-                Obj.Add("package", dic["payInfo"]["wxPackage"].ToString()); //统一支付接口返回的prepayid参数值
-                Obj.Add("paySign", dic["payInfo"]["paySign"].ToString()); //支付签名
-                Obj.Add("ConsumerId", ConsumerId);
-            }
-            return Json(new AppResultJson() { Status = "1", Info = "", Data = Obj });
-        }
-        #endregion
-
     }
 }

+ 24 - 4
Areas/Api/Controllers/MySelf/MySelfController.cs

@@ -24,7 +24,7 @@ namespace MySystem.Areas.Api.Controllers.v1
         }
 
         #region 我的-到账记录-到账记录列表
-        [Authorize]
+        // [Authorize]
         public JsonResult CardInComeRecordList(string value)
         {
             value = DesDecrypt(value);
@@ -46,7 +46,7 @@ namespace MySystem.Areas.Api.Controllers.v1
         #endregion
 
         #region 我的-到账记录-到账记录详情
-        [Authorize]
+        // [Authorize]
         public JsonResult CardInComeRecordDetail(string value)
         {
             value = DesDecrypt(value);
@@ -66,7 +66,7 @@ namespace MySystem.Areas.Api.Controllers.v1
         #endregion
 
         #region 我的-设置-修改登录手机号(原手机验证)
-        [Authorize]
+        // [Authorize]
         public JsonResult OldMobileCheck(string value)
         {
             value = DesDecrypt(value);
@@ -95,7 +95,7 @@ namespace MySystem.Areas.Api.Controllers.v1
         #endregion
 
         #region 我的-设置-修改登录手机号(新手机验证)
-        [Authorize]
+        // [Authorize]
         public JsonResult ChangeLoginMobile(string value)
         {
             value = DesDecrypt(value);
@@ -125,6 +125,26 @@ namespace MySystem.Areas.Api.Controllers.v1
         #endregion
 
 
+        #region 我的-商户统计数据(个人中心主界面)
+        // [Authorize]
+        public JsonResult StatData(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            Dictionary<string, object> Obj = StatDataDo(value);
+            return Json(new AppResultJson() { Status = "1", Info = "", Data = Obj });
+        }
+        public Dictionary<string, object> StatDataDo(string value)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            Dictionary<string, object> Obj = new Dictionary<string, object>();
+            int MerchantId = int.Parse(function.CheckInt(data["MerchantId"].ToString()));
+            var Info = MySelfUtil.StatData(MerchantId);
+            return Obj;
+        }
+        #endregion
+
+
 
 
     }

+ 63 - 49
Areas/Api/Controllers/WorkSpace/WorkSpaceController.cs

@@ -1,53 +1,67 @@
-// using System;
-// using System.Collections.Generic;
-// using System.Linq;
-// using Microsoft.AspNetCore.Mvc;
-// using Microsoft.AspNetCore.Http;
-// using Microsoft.Extensions.Logging;
-// using Microsoft.Extensions.Options;
-// using Microsoft.AspNetCore.Authorization;
-// using System.Web;
-// using MySystem.Models.Main;
-// using LitJson;
-// using Library;
-// using System.Data;
-// using MySystem.Service.Main;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using Microsoft.AspNetCore.Mvc;
+using Microsoft.AspNetCore.Http;
+using Microsoft.Extensions.Logging;
+using Microsoft.Extensions.Options;
+using Microsoft.AspNetCore.Authorization;
+using System.Web;
+using MySystem.Models.Main;
+using LitJson;
+using Library;
+using System.Data;
+using MySystem.Service.Main;
 
-// namespace MySystem.Areas.Api.Controllers.v1
-// {
-//     [Area("Api")]
-//     [Route("Api/v1/[controller]/[action]")]
-//     public class WorkSpaceController : BaseController
-//     {
-//         public WorkSpaceController(IHttpContextAccessor accessor) : base(accessor)
-//         {
-//         }
+namespace MySystem.Areas.Api.Controllers.v1
+{
+    [Area("Api")]
+    [Route("Api/v1/[controller]/[action]")]
+    public class WorkSpaceController : BaseController
+    {
+        public WorkSpaceController(IHttpContextAccessor accessor) : base(accessor)
+        {
+        }
 
-//         #region 工作台-交易统计
-//         [Authorize]
-//         public JsonResult TradeAmount(string value)
-//         {
-//             value = DesDecrypt(value);
-//             JsonData data = JsonMapper.ToObject(value);
-//             Dictionary<string, object> Obj = TradeAmountDo(value);
-//             return Json(new AppResultJson() { Status = "1", Info = "", Data = Obj });
-//         }
-//         private Dictionary<string, object> TradeAmountDo(string value)
-//         {
-//             JsonData data = JsonMapper.ToObject(value);
-//             string Kind = data["Kind"].ToString(); //通道类型(1 原生 2 好哒)
-//             int MerchantId = int.Parse(function.CheckInt(data["MerchantId"].ToString())); //商户
-//             string TradeMonth = data["TradeMonth"].ToString(); //月份
-//             string TradeDate = data["TradeDate"].ToString(); //日期
-//             Dictionary<string, object> Obj = new Dictionary<string, object>();
-//             Merchantamountsummay query = new Merchantamountsummay();
-//             int Id = int.Parse(function.CheckInt(data["Id"].ToString()));
-//             query = MerchantamountsummayService.Query(Id);
-//             Obj.Add("TradeAmount", query.Tradeamount); //订单金额
+        #region 工作台-主界面统计数据
+        // [Authorize]
+        [Route("Api/v1/MerchantInfo/IndexStat")]
+        public JsonResult IndexStat(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            Dictionary<string, object> Obj = IndexStatDo(value);
+            return Json(new AppResultJson() { Status = "1", Info = "", Data = Obj });
+        }
+        public Dictionary<string, object> IndexStatDo(string value)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            string TimeType = data["TimeType"].ToString(); //时间范围
+            int MerchantId = int.Parse(function.CheckInt(data["MerchantId"].ToString())); //商户Id
+            var Info = WorkSpaceUtil.IndexStat(TimeType, MerchantId);
+            return Info;
+        }
+        #endregion
 
-//             return Obj;
-//         }
-//         #endregion
 
-//     }
-// }
+        #region 工作台-商户活动参数
+        // [Authorize]
+        [Route("Api/v1/MerchantParamSet/Detail")]
+        public JsonResult Detail(string value)
+        {
+            value = DesDecrypt(value);
+            JsonData data = JsonMapper.ToObject(value);
+            Dictionary<string, object> Obj = DetailDo(value);
+            return Json(new AppResultJson() { Status = "1", Info = "", Data = Obj });
+        }
+        public Dictionary<string, object> DetailDo(string value)
+        {
+            JsonData data = JsonMapper.ToObject(value);
+            int MerchantId = int.Parse(function.CheckInt(data["MerchantId"].ToString())); //商户Id
+            var Info = WorkSpaceUtil.Detail(MerchantId);
+            return Info;
+        }
+        #endregion
+
+    }
+}

+ 2 - 0
Config/Base.cs

@@ -9,6 +9,8 @@ namespace AppConfig
         public static string Host = Library.ConfigurationManager.AppSettings["Host"].ToString();
         public static string Database = Library.ConfigurationManager.AppSettings["Database"].ToString();
         public static string defaultImage = Library.ConfigurationManager.AppSettings["Host"].ToString() + "/skin/app/default/static/images/default.jpg";
+        public static string SqlConnStr = Library.ConfigurationManager.AppSettings["SqlConnStr"].ToString();
+        
         #region 数据库结构
         public static Dictionary<string, Dictionary<string, string>> mainTables = new Dictionary<string, Dictionary<string, string>>();
 

+ 49 - 0
Models/KxsMainModels/ActiveReward.cs

@@ -0,0 +1,49 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class ActiveReward
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public int ParentParentUserId { get; set; }
+        public int ParentUserId { get; set; }
+        public int MerUserId { get; set; }
+        public int TopUserId { get; set; }
+        public DateTime? ActDate { get; set; }
+        public string Remark { get; set; }
+        public string City { get; set; }
+        public string Province { get; set; }
+        public string RewardTips { get; set; }
+        public int RewardRef { get; set; }
+        public int SnStoreId { get; set; }
+        public string ActTypeDesc { get; set; }
+        public int ActType { get; set; }
+        public int SnApplyUserId { get; set; }
+        public int SnType { get; set; }
+        public string KqSnNo { get; set; }
+        public string KqMerNo { get; set; }
+        public string MerUserNav { get; set; }
+        public int DirectBuddyNo { get; set; }
+        public string UserNav { get; set; }
+        public int BrandId { get; set; }
+        public decimal RuleRewardAmount { get; set; }
+        public decimal DivideAmount { get; set; }
+        public decimal RewardAmount { get; set; }
+        public int RewardSourceUserId { get; set; }
+        public DateTime? StandardDate { get; set; }
+        public int MerchantId { get; set; }
+        public int UserId { get; set; }
+    }
+}

+ 26 - 0
Models/KxsMainModels/ActivityEnrolRecord.cs

@@ -0,0 +1,26 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class ActivityEnrolRecord
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public string EffectEndTime { get; set; }
+        public string EffectStartTime { get; set; }
+        public string EnrolMonth { get; set; }
+        public int UserId { get; set; }
+        public int ActId { get; set; }
+    }
+}

+ 37 - 0
Models/KxsMainModels/ActivityInfo.cs

@@ -0,0 +1,37 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class ActivityInfo
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public string Remark { get; set; }
+        public string ActContent { get; set; }
+        public string ActBanner { get; set; }
+        public string ActReferUrl { get; set; }
+        public string EnrolEndTime { get; set; }
+        public string EnrolStartTime { get; set; }
+        public DateTime? EnrolEndDate { get; set; }
+        public DateTime? EnrolStartDate { get; set; }
+        public DateTime? EffectEndDate { get; set; }
+        public DateTime? EffectStartDate { get; set; }
+        public int IsTop { get; set; }
+        public string LimitTopBuddy { get; set; }
+        public string BrandId { get; set; }
+        public string ActName { get; set; }
+        public int ActType { get; set; }
+        public string ActCode { get; set; }
+    }
+}

+ 32 - 0
Models/KxsMainModels/ActivityPrizeDetail.cs

@@ -0,0 +1,32 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class ActivityPrizeDetail
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public int TopUserId { get; set; }
+        public decimal ProfitRate { get; set; }
+        public decimal ActRewardAmt { get; set; }
+        public decimal CreditTradeAmt { get; set; }
+        public decimal OtherProdCreditTradeAmt { get; set; }
+        public string TradeMonth { get; set; }
+        public int CheckStatus { get; set; }
+        public decimal TradeAmt { get; set; }
+        public int BrandId { get; set; }
+        public int UserId { get; set; }
+        public int ActivityId { get; set; }
+    }
+}

+ 24 - 0
Models/KxsMainModels/ActivityRedPackageJoins.cs

@@ -0,0 +1,24 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class ActivityRedPackageJoins
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public decimal PrizeAmt { get; set; }
+        public string ActivityDate { get; set; }
+        public int UserId { get; set; }
+    }
+}

+ 24 - 0
Models/KxsMainModels/ActivityRedPackageStock.cs

@@ -0,0 +1,24 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class ActivityRedPackageStock
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public string ActivityDate { get; set; }
+        public decimal PrizeAmt { get; set; }
+        public int UserId { get; set; }
+    }
+}

+ 25 - 0
Models/KxsMainModels/ActivityRedPackageTop10.cs

@@ -0,0 +1,25 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class ActivityRedPackageTop10
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public int Kind { get; set; }
+        public int TimeNum { get; set; }
+        public decimal PrizeAmt { get; set; }
+        public int UserId { get; set; }
+    }
+}

+ 26 - 0
Models/KxsMainModels/Advertisment.cs

@@ -0,0 +1,26 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class Advertisment
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public string Url { get; set; }
+        public string Contents { get; set; }
+        public string PicPath { get; set; }
+        public string ColId { get; set; }
+        public string Title { get; set; }
+    }
+}

+ 25 - 0
Models/KxsMainModels/AgentLevelSet.cs

@@ -0,0 +1,25 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class AgentLevelSet
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public decimal AreasProfitPercent { get; set; }
+        public ulong LevelDiff { get; set; }
+        public decimal ProfitPercent { get; set; }
+        public string Name { get; set; }
+    }
+}

+ 32 - 0
Models/KxsMainModels/AppBottomNavs.cs

@@ -0,0 +1,32 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class AppBottomNavs
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public string BgColor { get; set; }
+        public string NoPageHint { get; set; }
+        public string PageName { get; set; }
+        public string NormalTextColor { get; set; }
+        public string SelectTextColor { get; set; }
+        public string NormalIcon { get; set; }
+        public string SelectIcon { get; set; }
+        public string Title { get; set; }
+        public string PagPath { get; set; }
+        public string ScrollerAnimationImages { get; set; }
+        public string Style { get; set; }
+    }
+}

+ 28 - 0
Models/KxsMainModels/AppVersion.cs

@@ -0,0 +1,28 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class AppVersion
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public string DownloadUrl { get; set; }
+        public string CancelText { get; set; }
+        public string ConfirmText { get; set; }
+        public string Info { get; set; }
+        public string Title { get; set; }
+        public string VersionNum { get; set; }
+        public string TerminalKind { get; set; }
+    }
+}

+ 24 - 0
Models/KxsMainModels/AppVideo.cs

@@ -0,0 +1,24 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class AppVideo
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public string Remark { get; set; }
+        public string BannerPic { get; set; }
+        public string Name { get; set; }
+    }
+}

+ 26 - 0
Models/KxsMainModels/AppVideoList.cs

@@ -0,0 +1,26 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class AppVideoList
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public string BgPic { get; set; }
+        public int VideoId { get; set; }
+        public string Remark { get; set; }
+        public string VideoUrl { get; set; }
+        public string Title { get; set; }
+    }
+}

+ 28 - 0
Models/KxsMainModels/BackEndOpRecord.cs

@@ -0,0 +1,28 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class BackEndOpRecord
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public string Remark { get; set; }
+        public string AfterData { get; set; }
+        public string BeforeData { get; set; }
+        public string TableEnName { get; set; }
+        public string TableChName { get; set; }
+        public string SysRealName { get; set; }
+        public string SysUserName { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public int Version { get; set; }
+    }
+}

+ 26 - 0
Models/KxsMainModels/BankInfo.cs

@@ -0,0 +1,26 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class BankInfo
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public string BankNameAbbr { get; set; }
+        public string UnitedBankName { get; set; }
+        public string UnitedBankNo { get; set; }
+        public string BankCode { get; set; }
+        public string BankName { get; set; }
+    }
+}

+ 47 - 0
Models/KxsMainModels/BrokenMachineChange.cs

@@ -0,0 +1,47 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class BrokenMachineChange
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public string OutStoreManagerMobile { get; set; }
+        public string OutStoreManager { get; set; }
+        public string OutStoreAddress { get; set; }
+        public string OutStoreAreas { get; set; }
+        public string OutStoreName { get; set; }
+        public int OutStoreId { get; set; }
+        public string OutProductName { get; set; }
+        public int OutProductType { get; set; }
+        public int BackStoreUserId { get; set; }
+        public string Remark { get; set; }
+        public string BackStoreName { get; set; }
+        public int BackStoreId { get; set; }
+        public string ChangeSnExpand { get; set; }
+        public string OrderExpand { get; set; }
+        public DateTime? CompleteTime { get; set; }
+        public string AuditRemark { get; set; }
+        public int AuditResult { get; set; }
+        public DateTime? AuditTime { get; set; }
+        public string AuditBy { get; set; }
+        public DateTime? ChangeTime { get; set; }
+        public int ChangeDeviceNum { get; set; }
+        public string ChangeDeviceName { get; set; }
+        public string BackProductName { get; set; }
+        public int BackProductType { get; set; }
+        public int UserId { get; set; }
+        public string ChangeNo { get; set; }
+    }
+}

+ 34 - 0
Models/KxsMainModels/BrokenMachineChangeDetail.cs

@@ -0,0 +1,34 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class BrokenMachineChangeDetail
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public int BackSnType { get; set; }
+        public string Remark { get; set; }
+        public int OutSnType { get; set; }
+        public string OutSnNo { get; set; }
+        public string OutProductName { get; set; }
+        public int OutProductType { get; set; }
+        public int BackDeviceStatus { get; set; }
+        public string BackSnNo { get; set; }
+        public int UserId { get; set; }
+        public string BackProductName { get; set; }
+        public int BackProductType { get; set; }
+        public int ChangeId { get; set; }
+        public string ChangeNo { get; set; }
+    }
+}

+ 28 - 0
Models/KxsMainModels/BusinessActSummary.cs

@@ -0,0 +1,28 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class BusinessActSummary
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public int UserId { get; set; }
+        public string TradeDate { get; set; }
+        public string Remark { get; set; }
+        public int ActCount { get; set; }
+        public int BrandId { get; set; }
+        public string TradeMonth { get; set; }
+        public int PartnerId { get; set; }
+    }
+}

+ 26 - 0
Models/KxsMainModels/BusinessPartner.cs

@@ -0,0 +1,26 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class BusinessPartner
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public int UserId { get; set; }
+        public decimal ThisMonthTrade { get; set; }
+        public string LoginPassword { get; set; }
+        public string Name { get; set; }
+        public string Mobile { get; set; }
+    }
+}

+ 25 - 0
Models/KxsMainModels/BusinessPartnerMerchant.cs

@@ -0,0 +1,25 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class BusinessPartnerMerchant
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public string MerNo { get; set; }
+        public int MerchantId { get; set; }
+        public int PartnerId { get; set; }
+        public int UserId { get; set; }
+    }
+}

+ 25 - 0
Models/KxsMainModels/BusinessPartnerPos.cs

@@ -0,0 +1,25 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class BusinessPartnerPos
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public string PosSn { get; set; }
+        public int PosId { get; set; }
+        public int PartnerId { get; set; }
+        public int UserId { get; set; }
+    }
+}

+ 67 - 0
Models/KxsMainModels/BusinessTradeSummary.cs

@@ -0,0 +1,67 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class BusinessTradeSummary
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public int UserId { get; set; }
+        public int PayType { get; set; }
+        public int VipFlag { get; set; }
+        public int TopUserId { get; set; }
+        public decimal HelpNonDirectNonQrDebitTradeAmt { get; set; }
+        public decimal HelpDirectNonQrDebitTradeAmt { get; set; }
+        public decimal HelpNonDirectQrDebitTradeAmt { get; set; }
+        public decimal HelpDirectQrDebitTradeAmt { get; set; }
+        public decimal HelpNonDirectDebitCapNum { get; set; }
+        public decimal HelpNonDirectDebitCapTradeAmt { get; set; }
+        public decimal HelpNonDirectDebitTradeAmt { get; set; }
+        public decimal HelpDirectDebitCapNum { get; set; }
+        public decimal HelpDirectDebitCapTradeAmt { get; set; }
+        public decimal HelpDirectDebitTradeAmt { get; set; }
+        public decimal HelpNonDirectNonQrCreditTradeAmt { get; set; }
+        public decimal HelpDirectNonQrCreditTradeAmt { get; set; }
+        public decimal HelpNonDirectQrCreditTradeAmt { get; set; }
+        public decimal HelpDirectQrCreditTradeAmt { get; set; }
+        public decimal HelpNonDirectCreditTradeAmt { get; set; }
+        public decimal HelpDirectCreditTradeAmt { get; set; }
+        public decimal HelpNonDirectTradeAmt { get; set; }
+        public decimal HelpDirectTradeAmt { get; set; }
+        public decimal NotHelpNonDirectNonQrDebitTradeAmt { get; set; }
+        public decimal NotHelpDirectNonQrDebitTradeAmt { get; set; }
+        public decimal NotHelpNonDirectQrDebitTradeAmt { get; set; }
+        public decimal NotHelpDirectQrDebitTradeAmt { get; set; }
+        public int NotHelpNonDirectDebitCapNum { get; set; }
+        public decimal NotHelpNonDirectDebitCapTradeAmt { get; set; }
+        public decimal NotHelpNonDirectDebitTradeAmt { get; set; }
+        public int NotHelpDirectDebitCapNum { get; set; }
+        public decimal NotHelpDirectDebitCapTradeAmt { get; set; }
+        public decimal NotHelpDirectDebitTradeAmt { get; set; }
+        public decimal NotHelpNonDirectNonQrCreditTradeAmt { get; set; }
+        public decimal NotHelpDirectNonQrCreditTradeAmt { get; set; }
+        public decimal NotHelpNonDirectQrCreditTradeAmt { get; set; }
+        public decimal NotHelpDirectQrCreditTradeAmt { get; set; }
+        public decimal NotHelpNonDirectCreditTradeAmt { get; set; }
+        public decimal NotHelpDirectCreditTradeAmt { get; set; }
+        public decimal NotHelpNonDirectTradeAmt { get; set; }
+        public decimal NotHelpDirectTradeAmt { get; set; }
+        public string MgrName { get; set; }
+        public string MgrNo { get; set; }
+        public int BrandId { get; set; }
+        public string TradeMonth { get; set; }
+        public string TradeDate { get; set; }
+        public int PartnerId { get; set; }
+    }
+}

+ 37 - 0
Models/KxsMainModels/Col.cs

@@ -0,0 +1,37 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class Col
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public string ClassName { get; set; }
+        public string ColEnNav { get; set; }
+        public int ParentId { get; set; }
+        public int ListPageCount { get; set; }
+        public string DetailTempM { get; set; }
+        public string ListTempM { get; set; }
+        public string DetailTemp { get; set; }
+        public string ListTemp { get; set; }
+        public string Url { get; set; }
+        public string Contents { get; set; }
+        public string ColEnName { get; set; }
+        public ulong Recommend { get; set; }
+        public string ColDetail { get; set; }
+        public string ColPicPath { get; set; }
+        public string ColName { get; set; }
+        public string ColId { get; set; }
+    }
+}

+ 11 - 0
Models/KxsMainModels/ConsumerOpenIds.cs

@@ -0,0 +1,11 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class ConsumerOpenIds
+    {
+        public string OpenId { get; set; }
+        public int ConsumerId { get; set; }
+    }
+}

+ 11 - 0
Models/KxsMainModels/ConsumerOrderForNo.cs

@@ -0,0 +1,11 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class ConsumerOrderForNo
+    {
+        public string OrderNo { get; set; }
+        public int OrderIds { get; set; }
+    }
+}

+ 31 - 0
Models/KxsMainModels/ConsumerOrders.cs

@@ -0,0 +1,31 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class ConsumerOrders
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public decimal CurDivi { get; set; }
+        public decimal MaxDivi { get; set; }
+        public string SnNo { get; set; }
+        public decimal ReturnMoney { get; set; }
+        public decimal PayMoney { get; set; }
+        public int PayMode { get; set; }
+        public string OrderNo { get; set; }
+        public int ConsumerId { get; set; }
+        public int MerchantId { get; set; }
+        public ulong IsAct { get; set; }
+    }
+}

+ 25 - 0
Models/KxsMainModels/ConsumerProfit.cs

@@ -0,0 +1,25 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class ConsumerProfit
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public int OrderId { get; set; }
+        public decimal GetMoney { get; set; }
+        public int MerchantId { get; set; }
+        public int ConsumerId { get; set; }
+    }
+}

+ 36 - 0
Models/KxsMainModels/Consumers.cs

@@ -0,0 +1,36 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class Consumers
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public string WechatOpenId { get; set; }
+        public ulong CardFlag { get; set; }
+        public ulong AlipayFlag { get; set; }
+        public ulong WeChatPayFlag { get; set; }
+        public DateTime? LastConsumDate { get; set; }
+        public int TotalConsumCount { get; set; }
+        public decimal TotalAmount { get; set; }
+        public string AlipayUserId { get; set; }
+        public string WechatUnionid { get; set; }
+        public int CurIntgegral { get; set; }
+        public int TotalIntegral { get; set; }
+        public decimal TotalDividend { get; set; }
+        public string Mobile { get; set; }
+        public string HeadPhoto { get; set; }
+        public string NickName { get; set; }
+    }
+}

+ 33 - 0
Models/KxsMainModels/CouponAssignRecords.cs

@@ -0,0 +1,33 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class CouponAssignRecords
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public string CouponIds { get; set; }
+        public string Mobile { get; set; }
+        public string Areas { get; set; }
+        public string UserGroupId { get; set; }
+        public decimal CurMoneyMax { get; set; }
+        public decimal CurMoneyMin { get; set; }
+        public decimal TotalUseIntegralMax { get; set; }
+        public decimal TotalUseIntegralMin { get; set; }
+        public decimal TotalOrderMoneyMax { get; set; }
+        public decimal TotalOrderMoneyMin { get; set; }
+        public int UserMaxLevel { get; set; }
+        public int UserMinLevel { get; set; }
+    }
+}

+ 48 - 0
Models/KxsMainModels/Coupons.cs

@@ -0,0 +1,48 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class Coupons
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public DateTime? ExpireEndDate { get; set; }
+        public DateTime? ExpireStartDate { get; set; }
+        public decimal FullReduceData { get; set; }
+        public decimal FullReduceMoney { get; set; }
+        public ulong AndPromotion { get; set; }
+        public ulong IsSuperpose { get; set; }
+        public int PublicMaxByDay { get; set; }
+        public int PublicMax { get; set; }
+        public DateTime? PublicEndDate { get; set; }
+        public DateTime? PublicStartDate { get; set; }
+        public ulong IsReUse { get; set; }
+        public string RepeatCondition { get; set; }
+        public int RepeatType { get; set; }
+        public ulong IsRepeat { get; set; }
+        public DateTime? UseEndDate { get; set; }
+        public DateTime? UseStartDate { get; set; }
+        public int UserMinLevel { get; set; }
+        public int UserMaxLevel { get; set; }
+        public string ProductId { get; set; }
+        public string ProductColId { get; set; }
+        public string MerchantId { get; set; }
+        public int Kind { get; set; }
+        public decimal Stock { get; set; }
+        public ulong IsPublic { get; set; }
+        public ulong IsNewUser { get; set; }
+        public string Explanation { get; set; }
+        public string Name { get; set; }
+    }
+}

+ 26 - 0
Models/KxsMainModels/CouponsForUser.cs

@@ -0,0 +1,26 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class CouponsForUser
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public DateTime? UseDate { get; set; }
+        public ulong IsLock { get; set; }
+        public ulong IsUse { get; set; }
+        public int CouponId { get; set; }
+        public int UserId { get; set; }
+    }
+}

+ 24 - 0
Models/KxsMainModels/CustomTagSet.cs

@@ -0,0 +1,24 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class CustomTagSet
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public string Contents { get; set; }
+        public string Title { get; set; }
+        public string Tags { get; set; }
+    }
+}

+ 24 - 0
Models/KxsMainModels/ErpCompanys.cs

@@ -0,0 +1,24 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class ErpCompanys
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public string Phone { get; set; }
+        public string Code { get; set; }
+        public string Name { get; set; }
+    }
+}

+ 24 - 0
Models/KxsMainModels/FileUpdateInfo.cs

@@ -0,0 +1,24 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class FileUpdateInfo
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public string FileName { get; set; }
+        public string Path { get; set; }
+        public int VersionNum { get; set; }
+    }
+}

+ 43 - 0
Models/KxsMainModels/FluxProfitDetail.cs

@@ -0,0 +1,43 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class FluxProfitDetail
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public int MerUserType { get; set; }
+        public int TopUserId { get; set; }
+        public int BrandId { get; set; }
+        public string Remark { get; set; }
+        public string PosType { get; set; }
+        public decimal FluxProfitAmt { get; set; }
+        public string FluxEndDate { get; set; }
+        public string FluxStartDate { get; set; }
+        public decimal FluxFeeAmt { get; set; }
+        public decimal TradeAmt { get; set; }
+        public string TradeOrderNo { get; set; }
+        public string FluxOrderNo { get; set; }
+        public int ProfitType { get; set; }
+        public string SnNo { get; set; }
+        public string MerNo { get; set; }
+        public int MerchantUserId { get; set; }
+        public int MerchantId { get; set; }
+        public int UserId { get; set; }
+        public string TradeMonth { get; set; }
+        public string TradeTime { get; set; }
+        public string TradeDate { get; set; }
+        public string RecordNo { get; set; }
+    }
+}

+ 30 - 0
Models/KxsMainModels/FluxProfitSummary.cs

@@ -0,0 +1,30 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class FluxProfitSummary
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public int BrandId { get; set; }
+        public string Remark { get; set; }
+        public int CheckStatus { get; set; }
+        public int FluxTradeNum { get; set; }
+        public decimal FluxProfitAmt { get; set; }
+        public int MerUserType { get; set; }
+        public string TradeMonth { get; set; }
+        public int TopUserId { get; set; }
+        public int UserId { get; set; }
+    }
+}

+ 33 - 0
Models/KxsMainModels/HelpProfitAccountRecord.cs

@@ -0,0 +1,33 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class HelpProfitAccountRecord
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public string TransRecordNo { get; set; }
+        public string Remark { get; set; }
+        public decimal AfterBalanceAmount { get; set; }
+        public decimal BeforeBalanceAmount { get; set; }
+        public decimal AfterFreezeAmount { get; set; }
+        public decimal BeforeFreezeAmount { get; set; }
+        public decimal AfterTotalAmount { get; set; }
+        public decimal BeforeTotalAmount { get; set; }
+        public decimal ChangeAmount { get; set; }
+        public int ProductType { get; set; }
+        public int ChangeType { get; set; }
+        public int UserId { get; set; }
+    }
+}

+ 23 - 0
Models/KxsMainModels/HelpProfitAmountSummary.cs

@@ -0,0 +1,23 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class HelpProfitAmountSummary
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public decimal TradeAmount { get; set; }
+        public decimal MaxAmount { get; set; }
+        public int MerCount { get; set; }
+        public string TradeMonth { get; set; }
+        public int UserId { get; set; }
+    }
+}

+ 23 - 0
Models/KxsMainModels/HelpProfitExchange.cs

@@ -0,0 +1,23 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class HelpProfitExchange
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public int ExchangeCount { get; set; }
+        public int UserId { get; set; }
+    }
+}

+ 25 - 0
Models/KxsMainModels/HelpProfitExchangeDetail.cs

@@ -0,0 +1,25 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class HelpProfitExchangeDetail
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public int RecordId { get; set; }
+        public string ExchangeCode { get; set; }
+        public int PosCouponId { get; set; }
+        public int UserId { get; set; }
+    }
+}

+ 11 - 0
Models/KxsMainModels/HelpProfitMerIds.cs

@@ -0,0 +1,11 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class HelpProfitMerIds
+    {
+        public int MerchantId { get; set; }
+        public int UserId { get; set; }
+    }
+}

+ 22 - 0
Models/KxsMainModels/HelpProfitMerTradeMonthSummay.cs

@@ -0,0 +1,22 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class HelpProfitMerTradeMonthSummay
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public int BrandId { get; set; }
+        public decimal TradeAmount { get; set; }
+        public string TradeMonth { get; set; }
+        public int MerchantId { get; set; }
+    }
+}

+ 26 - 0
Models/KxsMainModels/HelpProfitMerTradeSummay.cs

@@ -0,0 +1,26 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class HelpProfitMerTradeSummay
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public int BrandId { get; set; }
+        public decimal TradeAmount { get; set; }
+        public string TradeDate { get; set; }
+        public string TradeMonth { get; set; }
+        public int MerchantId { get; set; }
+    }
+}

+ 24 - 0
Models/KxsMainModels/HelpProfitMerchantForUser.cs

@@ -0,0 +1,24 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class HelpProfitMerchantForUser
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public string MerNo { get; set; }
+        public int MerchantId { get; set; }
+        public int UserId { get; set; }
+    }
+}

+ 29 - 0
Models/KxsMainModels/HelpProfitRebateDetail.cs

@@ -0,0 +1,29 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class HelpProfitRebateDetail
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public string Remark { get; set; }
+        public decimal DebitRewardAmount { get; set; }
+        public decimal CreditRewardAmount { get; set; }
+        public int MerchantId { get; set; }
+        public int ProductType { get; set; }
+        public int UserId { get; set; }
+        public string TradeDate { get; set; }
+        public string TradeMonth { get; set; }
+    }
+}

+ 36 - 0
Models/KxsMainModels/HelpProfitReward.cs

@@ -0,0 +1,36 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class HelpProfitReward
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public int TopUserId { get; set; }
+        public int CheckStatus { get; set; }
+        public int RewardMerCount { get; set; }
+        public string Remark { get; set; }
+        public string RewardDesc { get; set; }
+        public string OpenRewardNo { get; set; }
+        public decimal DebitRewardAmount { get; set; }
+        public decimal CreditRewardAmount { get; set; }
+        public decimal DebitTradeAmt { get; set; }
+        public decimal CreditTradeAmt { get; set; }
+        public int RewardType { get; set; }
+        public int BrandId { get; set; }
+        public int UserId { get; set; }
+        public DateTime? TradeDate { get; set; }
+        public string TradeMonth { get; set; }
+    }
+}

+ 47 - 0
Models/KxsMainModels/HelpProfitRewardDetail.cs

@@ -0,0 +1,47 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class HelpProfitRewardDetail
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public int TopUserId { get; set; }
+        public int CheckStatus { get; set; }
+        public string OpenDetailRec { get; set; }
+        public string Remark { get; set; }
+        public string RewardDesc { get; set; }
+        public string OpenRewardNo { get; set; }
+        public decimal DebitRewardAmount { get; set; }
+        public decimal CreditRewardAmount { get; set; }
+        public decimal DebitTradeAmt { get; set; }
+        public decimal CreditTradeAmt { get; set; }
+        public string RewardTips { get; set; }
+        public int RewardType { get; set; }
+        public int MerBuddyType { get; set; }
+        public int SnStoreId { get; set; }
+        public DateTime? StandardDate { get; set; }
+        public int SnApplyUserId { get; set; }
+        public int SnType { get; set; }
+        public string MerNo { get; set; }
+        public string SnNo { get; set; }
+        public int DirectUserId { get; set; }
+        public int MerchantId { get; set; }
+        public string ProductName { get; set; }
+        public int BrandId { get; set; }
+        public int UserId { get; set; }
+        public DateTime? TradeDate { get; set; }
+        public string TradeMonth { get; set; }
+    }
+}

+ 24 - 0
Models/KxsMainModels/IndexIconList.cs

@@ -0,0 +1,24 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class IndexIconList
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public string Url { get; set; }
+        public string Title { get; set; }
+        public string Icon { get; set; }
+    }
+}

+ 23 - 0
Models/KxsMainModels/KqProductBrand.cs

@@ -0,0 +1,23 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class KqProductBrand
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public string Name { get; set; }
+        public int ProductId { get; set; }
+    }
+}

+ 23 - 0
Models/KxsMainModels/KqProductOrgs.cs

@@ -0,0 +1,23 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class KqProductOrgs
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public string Name { get; set; }
+        public int BrandId { get; set; }
+    }
+}

+ 68 - 0
Models/KxsMainModels/KqProductRuleSet.cs

@@ -0,0 +1,68 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class KqProductRuleSet
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public decimal FeeRate { get; set; }
+        public decimal FeeFixed { get; set; }
+        public int FeeBindDays { get; set; }
+        public decimal HelpSteadyFee { get; set; }
+        public decimal HelpFee { get; set; }
+        public int HelpMonths { get; set; }
+        public DateTime? HelpEndDate { get; set; }
+        public DateTime? HelpStartDate { get; set; }
+        public decimal FlowCardDirectProfit { get; set; }
+        public DateTime? FeeOfDays { get; set; }
+        public decimal FlowCardFee { get; set; }
+        public int FlowCardFreeDays { get; set; }
+        public DateTime? FlowCardEndDate { get; set; }
+        public DateTime? FlowCardStartDate { get; set; }
+        public DateTime? SubsidyEndDate { get; set; }
+        public DateTime? SubsidyStartDate { get; set; }
+        public int BigExtendCycleDays { get; set; }
+        public decimal BigTotalAmount { get; set; }
+        public int PullNewExtendDays { get; set; }
+        public DateTime? PullNewEndDate { get; set; }
+        public DateTime? PullNewStartDate { get; set; }
+        public int CyclePosDays { get; set; }
+        public ulong CycleIsOther { get; set; }
+        public DateTime? CycleEndDate { get; set; }
+        public DateTime? CycleStartDate { get; set; }
+        public decimal OpenStaPrize2 { get; set; }
+        public decimal OpenStaPrize { get; set; }
+        public decimal OpenStaTrade { get; set; }
+        public int OpenStaDays { get; set; }
+        public DateTime? OpenEndDate { get; set; }
+        public DateTime? OpenStartDate { get; set; }
+        public int ActPosCount { get; set; }
+        public decimal ActPrize { get; set; }
+        public decimal ActFirstDeposit { get; set; }
+        public decimal ActFirst { get; set; }
+        public decimal ActDeposit { get; set; }
+        public DateTime? ActEndDate { get; set; }
+        public DateTime? ActStartDate { get; set; }
+        public decimal MerStaTradeForMonth { get; set; }
+        public int MerStaMonths { get; set; }
+        public decimal MerStaProfit { get; set; }
+        public DateTime? MerStaEndDate { get; set; }
+        public DateTime? MerStaStartDate { get; set; }
+        public decimal ActivePrice { get; set; }
+        public int ActiveCount { get; set; }
+        public decimal Deposit { get; set; }
+        public int OrgId { get; set; }
+    }
+}

+ 22 - 0
Models/KxsMainModels/KqProducts.cs

@@ -0,0 +1,22 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class KqProducts
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public string Name { get; set; }
+    }
+}

+ 33 - 0
Models/KxsMainModels/LeaderAccountRecord.cs

@@ -0,0 +1,33 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class LeaderAccountRecord
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public string TransRecordNo { get; set; }
+        public string Remark { get; set; }
+        public decimal AfterBalanceAmount { get; set; }
+        public decimal BeforeBalanceAmount { get; set; }
+        public decimal AfterFreezeAmount { get; set; }
+        public decimal BeforeFreezeAmount { get; set; }
+        public decimal AfterTotalAmount { get; set; }
+        public decimal BeforeTotalAmount { get; set; }
+        public decimal ChangeAmount { get; set; }
+        public int ProductType { get; set; }
+        public int ChangeType { get; set; }
+        public int UserId { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public int Version { get; set; }
+    }
+}

+ 28 - 0
Models/KxsMainModels/LeaderReserveRecord.cs

@@ -0,0 +1,28 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class LeaderReserveRecord
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public int ChangeType { get; set; }
+        public int OrderId { get; set; }
+        public int SourceUserId { get; set; }
+        public string Remark { get; set; }
+        public decimal AfterAmt { get; set; }
+        public decimal BeforeAmt { get; set; }
+        public decimal ChangeAmt { get; set; }
+        public string TradeDate { get; set; }
+        public string TradeMonth { get; set; }
+        public int UserId { get; set; }
+    }
+}

+ 20 - 0
Models/KxsMainModels/Leaders.cs

@@ -0,0 +1,20 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class Leaders
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public int LeaderLevel { get; set; }
+        public int UserId { get; set; }
+    }
+}

+ 60 - 0
Models/KxsMainModels/MachineApply.cs

@@ -0,0 +1,60 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class MachineApply
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public string SendSn { get; set; }
+        public int TopUserId { get; set; }
+        public DateTime? SendDate { get; set; }
+        public int StoreType { get; set; }
+        public int StoreUserId { get; set; }
+        public string Remark { get; set; }
+        public string StoreManagerMobile { get; set; }
+        public string StoreManager { get; set; }
+        public string StoreAddress { get; set; }
+        public string StoreAreas { get; set; }
+        public string StoreName { get; set; }
+        public int StoreId { get; set; }
+        public string SwapSnExpand { get; set; }
+        public string OrderExpand { get; set; }
+        public string SwapActProName { get; set; }
+        public int SwapActProType { get; set; }
+        public int DeliveryType { get; set; }
+        public string ExpressName { get; set; }
+        public string ExpressNo { get; set; }
+        public int ReturnStatus { get; set; }
+        public string ReturnOrderNo { get; set; }
+        public int SendStatus { get; set; }
+        public DateTime? CompleteTime { get; set; }
+        public string AuditRemark { get; set; }
+        public int AuditResult { get; set; }
+        public DateTime? AuditTime { get; set; }
+        public string AuditBy { get; set; }
+        public DateTime? ApplyTime { get; set; }
+        public int ApplyDeviceNum { get; set; }
+        public string ApplyDeviceName { get; set; }
+        public string Mobile { get; set; }
+        public string RealName { get; set; }
+        public string Address { get; set; }
+        public string Areas { get; set; }
+        public string ProductName { get; set; }
+        public int BrandId { get; set; }
+        public int UserId { get; set; }
+        public string ApplyNo { get; set; }
+        public int OperateId { get; set; }
+    }
+}

+ 36 - 0
Models/KxsMainModels/MachineApplyDetail.cs

@@ -0,0 +1,36 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class MachineApplyDetail
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public string Remark { get; set; }
+        public int SourceSnType { get; set; }
+        public string SourceSnNo { get; set; }
+        public string UpSrcProName { get; set; }
+        public int UpSrcProType { get; set; }
+        public string DeviceDesc { get; set; }
+        public string DeviceModel { get; set; }
+        public string DeviceVendor { get; set; }
+        public int DeviceStatus { get; set; }
+        public string DeviceSnNo { get; set; }
+        public int UserId { get; set; }
+        public string ProductName { get; set; }
+        public int ProductType { get; set; }
+        public int ApplyId { get; set; }
+        public string ApplyNo { get; set; }
+    }
+}

+ 47 - 0
Models/KxsMainModels/MachineChange.cs

@@ -0,0 +1,47 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class MachineChange
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public string OutStoreManagerMobile { get; set; }
+        public string OutStoreManager { get; set; }
+        public string OutStoreAddress { get; set; }
+        public string OutStoreAreas { get; set; }
+        public string OutStoreName { get; set; }
+        public int OutStoreId { get; set; }
+        public string OutProductName { get; set; }
+        public int OutProductType { get; set; }
+        public int BackStoreUserId { get; set; }
+        public string Remark { get; set; }
+        public string BackStoreName { get; set; }
+        public int BackStoreId { get; set; }
+        public string ChangeSnExpand { get; set; }
+        public string OrderExpand { get; set; }
+        public DateTime? CompleteTime { get; set; }
+        public string AuditRemark { get; set; }
+        public int AuditResult { get; set; }
+        public DateTime? AuditTime { get; set; }
+        public string AuditBy { get; set; }
+        public DateTime? ChangeTime { get; set; }
+        public int ChangeDeviceNum { get; set; }
+        public string ChangeDeviceName { get; set; }
+        public string BackProductName { get; set; }
+        public int BackProductType { get; set; }
+        public int UserId { get; set; }
+        public string ChangeNo { get; set; }
+    }
+}

+ 34 - 0
Models/KxsMainModels/MachineChangeDetail.cs

@@ -0,0 +1,34 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class MachineChangeDetail
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public int BackSnType { get; set; }
+        public string Remark { get; set; }
+        public int OutSnType { get; set; }
+        public string OutSnNo { get; set; }
+        public string OutProductName { get; set; }
+        public int OutProductType { get; set; }
+        public int BackDeviceStatus { get; set; }
+        public string BackSnNo { get; set; }
+        public int UserId { get; set; }
+        public string BackProductName { get; set; }
+        public int BackProductType { get; set; }
+        public int ChangeId { get; set; }
+        public string ChangeNo { get; set; }
+    }
+}

+ 11 - 0
Models/KxsMainModels/MachineForMerNo.cs

@@ -0,0 +1,11 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class MachineForMerNo
+    {
+        public string MerNo { get; set; }
+        public int SnId { get; set; }
+    }
+}

+ 14 - 0
Models/KxsMainModels/MachineForQrCode.cs

@@ -0,0 +1,14 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class MachineForQrCode
+    {
+        public string DataId { get; set; }
+        public int MerchantId { get; set; }
+        public string MachineSnNo { get; set; }
+        public string SnNo { get; set; }
+        public DateTime? BindDate { get; set; }
+    }
+}

+ 11 - 0
Models/KxsMainModels/MachineForSnNo.cs

@@ -0,0 +1,11 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class MachineForSnNo
+    {
+        public string SnNo { get; set; }
+        public int SnId { get; set; }
+    }
+}

+ 36 - 0
Models/KxsMainModels/MachineRenew.cs

@@ -0,0 +1,36 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class MachineRenew
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public DateTime? AuditDate { get; set; }
+        public string AuditDesc { get; set; }
+        public int AuditStatus { get; set; }
+        public string DemandDesc { get; set; }
+        public string DeliverSnNo { get; set; }
+        public int DeliverBrandId { get; set; }
+        public int ReplaceSnType { get; set; }
+        public string ReplaceSnNo { get; set; }
+        public int ReplaceBrandId { get; set; }
+        public int DamagedSnType { get; set; }
+        public string DamagedSnNo { get; set; }
+        public int DamagedBrandId { get; set; }
+        public int UserId { get; set; }
+        public string ApplyDate { get; set; }
+        public string ApplyNo { get; set; }
+    }
+}

+ 31 - 0
Models/KxsMainModels/MachineReturn.cs

@@ -0,0 +1,31 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class MachineReturn
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public string Remark { get; set; }
+        public string Operator { get; set; }
+        public int AuditStatus { get; set; }
+        public string DeviceDesc { get; set; }
+        public int ToStoreId { get; set; }
+        public string DeviceSnNos { get; set; }
+        public int DeviceNum { get; set; }
+        public int BrandId { get; set; }
+        public int UserId { get; set; }
+        public string ApplyNo { get; set; }
+    }
+}

+ 26 - 0
Models/KxsMainModels/MachineUnBind.cs

@@ -0,0 +1,26 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class MachineUnBind
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public int MerchantId { get; set; }
+        public DateTime? AuditDate { get; set; }
+        public string AuditDesc { get; set; }
+        public int AuditStatus { get; set; }
+        public string SnNo { get; set; }
+        public int BrandId { get; set; }
+        public int UserId { get; set; }
+        public string ApplyNo { get; set; }
+    }
+}

+ 11 - 0
Models/KxsMainModels/MenuRight.cs

@@ -0,0 +1,11 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class MenuRight
+    {
+        public string MenuId { get; set; }
+        public string Name { get; set; }
+    }
+}

+ 100 - 0
Models/KxsMainModels/MerchantAddInfo.cs

@@ -0,0 +1,100 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class MerchantAddInfo
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public DateTime? CardPeriodEnd { get; set; }
+        public DateTime? CardPeriodBegin { get; set; }
+        public string IdCardNumber { get; set; }
+        public string IdCardName { get; set; }
+        public string IdCardNational { get; set; }
+        public string IdCardCopy { get; set; }
+        public string AuditDetail { get; set; }
+        public string ApplymentState { get; set; }
+        public string SignUrl { get; set; }
+        public string SubMchid { get; set; }
+        public string ApplymentId { get; set; }
+        public string AccountNumber { get; set; }
+        public string BankName { get; set; }
+        public string BankBranchId { get; set; }
+        public string BankAddressCode { get; set; }
+        public string AccountBank { get; set; }
+        public string AccountName { get; set; }
+        public string BankAccountType { get; set; }
+        public string ActivitiesRate { get; set; }
+        public string ActivitiesId { get; set; }
+        public string Qualifications { get; set; }
+        public string QualificationType { get; set; }
+        public string SettlementId { get; set; }
+        public string WeworkPics { get; set; }
+        public string SubCorpId { get; set; }
+        public string WebAppId { get; set; }
+        public string WebAuthorisation { get; set; }
+        public string WebDomain { get; set; }
+        public string AppPics { get; set; }
+        public string AppSubAppid { get; set; }
+        public string AppAppid { get; set; }
+        public string MiniProgramPics { get; set; }
+        public string MiniProgramSubAppid { get; set; }
+        public string MiniProgramAppid { get; set; }
+        public string MpPics { get; set; }
+        public string MpSubAppid { get; set; }
+        public string MpAppid { get; set; }
+        public string BizSubAppid { get; set; }
+        public string IndoorPic { get; set; }
+        public string StoreEntrancePic { get; set; }
+        public string BizStoreAddress { get; set; }
+        public string BizAddressCode { get; set; }
+        public string BizStoreName { get; set; }
+        public string SalesScenesType { get; set; }
+        public string ServicePhone { get; set; }
+        public string MerchantShortname { get; set; }
+        public DateTime? UboInfoIdPeriodEnd { get; set; }
+        public DateTime? UboInfoIdPeriodBegin { get; set; }
+        public string UboInfoIdNumber { get; set; }
+        public string UboInfoName { get; set; }
+        public string UboInfoIdDocCopy { get; set; }
+        public string UboInfoIdCardNational { get; set; }
+        public string UboInfoIdCardCopy { get; set; }
+        public string UboInfoIdType { get; set; }
+        public ulong Owner { get; set; }
+        public string IdDocType { get; set; }
+        public string CertificateLetterCopy { get; set; }
+        public DateTime? OrgPeriodEnd { get; set; }
+        public DateTime? OrgPeriodBegin { get; set; }
+        public string OrganizationCode { get; set; }
+        public string OrganizationCopy { get; set; }
+        public DateTime? PeriodEnd { get; set; }
+        public DateTime? PeriodBegin { get; set; }
+        public string CertLegalPerson { get; set; }
+        public string CompanyAddress { get; set; }
+        public string CertMerchantName { get; set; }
+        public string CertNumber { get; set; }
+        public string CertType { get; set; }
+        public string CertCopy { get; set; }
+        public string LegalPerson { get; set; }
+        public string LicenseNumber { get; set; }
+        public string LicenseCopy { get; set; }
+        public string SubjectType { get; set; }
+        public string ContactEmail { get; set; }
+        public string MobilePhone { get; set; }
+        public string OpenId { get; set; }
+        public string ContactIdNumber { get; set; }
+        public string ContactName { get; set; }
+        public string BusinessCode { get; set; }
+    }
+}

+ 31 - 0
Models/KxsMainModels/MerchantAdmin.cs

@@ -0,0 +1,31 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class MerchantAdmin
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public int MerchantId { get; set; }
+        public string Note { get; set; }
+        public string Qq { get; set; }
+        public string Email { get; set; }
+        public string Mobile { get; set; }
+        public DateTime? LastLoginDate { get; set; }
+        public string RightInfo { get; set; }
+        public string RealName { get; set; }
+        public string Password { get; set; }
+        public string AdminName { get; set; }
+    }
+}

+ 35 - 0
Models/KxsMainModels/MerchantAuth.cs

@@ -0,0 +1,35 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class MerchantAuth
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public int MerchantId { get; set; }
+        public int AuthType { get; set; }
+        public string ReturnMsg { get; set; }
+        public string ReturnCode { get; set; }
+        public string RespData { get; set; }
+        public string ReqData { get; set; }
+        public string BankMobile { get; set; }
+        public string BankName { get; set; }
+        public string BankCardAccount { get; set; }
+        public string IdCardNo { get; set; }
+        public string RealName { get; set; }
+        public string MerNo { get; set; }
+        public string ChannelName { get; set; }
+        public string ChannelCode { get; set; }
+    }
+}

+ 24 - 0
Models/KxsMainModels/MerchantClass.cs

@@ -0,0 +1,24 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class MerchantClass
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public int MerchantId { get; set; }
+        public int ParentId { get; set; }
+        public string ColName { get; set; }
+    }
+}

+ 29 - 0
Models/KxsMainModels/MerchantCol.cs

@@ -0,0 +1,29 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class MerchantCol
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public int MerchantId { get; set; }
+        public int ParentId { get; set; }
+        public string ColEnName { get; set; }
+        public ulong Recommend { get; set; }
+        public string ColDetail { get; set; }
+        public string ColPicPath { get; set; }
+        public string ColName { get; set; }
+        public string ColId { get; set; }
+    }
+}

+ 27 - 0
Models/KxsMainModels/MerchantComment.cs

@@ -0,0 +1,27 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class MerchantComment
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public int Version { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string CreateMan { get; set; }
+        public string UpdateMan { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public int MerchantId { get; set; }
+        public int StarNum3 { get; set; }
+        public int StarNum2 { get; set; }
+        public int StarNum1 { get; set; }
+        public int OrderId { get; set; }
+        public int UserId { get; set; }
+    }
+}

+ 23 - 0
Models/KxsMainModels/MerchantDepositReturns.cs

@@ -0,0 +1,23 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class MerchantDepositReturns
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public int UserId { get; set; }
+        public string OperateMan { get; set; }
+        public decimal ReturnAmount { get; set; }
+        public string AlipayAccountNo { get; set; }
+        public int MerchantId { get; set; }
+    }
+}

+ 23 - 0
Models/KxsMainModels/MerchantDepositSet.cs

@@ -0,0 +1,23 @@
+using System;
+using System.Collections.Generic;
+
+namespace MySystem.Models.KxsMainModels
+{
+    public partial class MerchantDepositSet
+    {
+        public int Id { get; set; }
+        public int Sort { get; set; }
+        public int QueryCount { get; set; }
+        public int Status { get; set; }
+        public DateTime? CreateDate { get; set; }
+        public DateTime? UpdateDate { get; set; }
+        public string SeoTitle { get; set; }
+        public string SeoKeyword { get; set; }
+        public string SeoDescription { get; set; }
+        public string ReturnNote { get; set; }
+        public decimal DepositAmount { get; set; }
+        public string SnNo { get; set; }
+        public string MerNo { get; set; }
+        public int UserId { get; set; }
+    }
+}

Vissa filer visades inte eftersom för många filer har ändrats