DuGuYang 3 ani în urmă
părinte
comite
270f1af95a

BIN
.DS_Store


+ 110 - 0
AppStart/Helper/InstallmentDeductionService.cs

@@ -0,0 +1,110 @@
+using System;
+using System.Collections.Generic;
+using System.Data;
+using System.Linq;
+using System.Threading;
+using MySystem.Models;
+using Library;
+
+namespace MySystem
+{
+    /// <summary>
+    /// 分期扣款(每月20号执行)
+    /// </summary>
+    public class InstallmentDeductionService
+    {
+        public readonly static InstallmentDeductionService Instance = new InstallmentDeductionService();
+        private InstallmentDeductionService()
+        { }
+
+        public void Start()
+        {
+            Thread th = new Thread(doSomething);
+            th.IsBackground = true;
+            th.Start();
+        }
+
+        public void doSomething()
+        {
+            while (true)
+            {
+                if (DateTime.Now.Hour < 20)
+                {
+                    try
+                    {
+                        string check = function.ReadInstance("/InstallmentDeduction/check" + DateTime.Now.ToString("yyyy-MM-dd") + ".txt");
+                        if (string.IsNullOrEmpty(check))
+                        {
+                            function.WritePage("/InstallmentDeduction/", "check" + DateTime.Now.ToString("yyyy-MM-dd") + ".txt", DateTime.Now.ToString("HH:mm:ss"));
+                            WebCMSEntities db = new WebCMSEntities();
+
+                            var info = db.ToChargeBackRecord.Where(m => m.Status == 0 && m.ChargeType == 2).ToList();//分期扣款记录
+                            foreach (var items in info)
+                            {
+                                var userAccount = db.UserAccount.FirstOrDefault(m => m.Id == items.UserId) ?? new UserAccount();
+                                var record = info.FirstOrDefault(m => m.Id == items.Id);
+                                if (userAccount.BalanceAmount >= record.ChargeAmount)
+                                {
+                                    var userAccountRecord = db.UserAccountRecord.Add(new UserAccountRecord
+                                    {
+                                        CreateDate = DateTime.Now,
+                                        UserId = items.UserId,
+                                        BeforeBalanceAmount = userAccount.BalanceAmount,
+                                        AfterBalanceAmount = userAccount.BalanceAmount - record.ChargeAmount,
+                                        ChangeAmount = record.ChargeAmount,
+                                        ChangeType = 124,//分期扣款
+                                        Remark = "分期扣款",
+
+                                    }).Entity;
+                                    var toChargeBackRecordSub = db.ToChargeBackRecordSub.FirstOrDefault(m => m.Id == record.Sort) ?? new ToChargeBackRecordSub();
+                                    var toChargeByStage = db.ToChargeByStage.FirstOrDefault(m => m.Id == toChargeBackRecordSub.ParentId && record.TimeNumber > m.Sort) ?? new ToChargeByStage();
+                                    record.Status = 1;
+                                    toChargeBackRecordSub.Status = 1;
+                                    toChargeByStage.QueryCount += 1;
+                                    if (toChargeByStage.TimeNumber == toChargeByStage.QueryCount)
+                                    {
+                                        toChargeByStage.Status = 1;
+                                    }
+                                    if (userAccount.ToChargeAmount >= record.ChargeAmount)
+                                    {
+                                        userAccount.ToChargeAmount -= record.ChargeAmount;//分期扣款
+                                    }
+                                    userAccount.BalanceAmount -= record.ChargeAmount;//扣减余额
+                                }
+                                if (record.Sort > 0 && record.Status == 1)
+                                {
+                                    var toChargeBackRecordSub = db.ToChargeBackRecordSub.FirstOrDefault(m => m.Id == record.Sort) ?? new ToChargeBackRecordSub();
+                                    var toChargeByStage = db.ToChargeByStage.FirstOrDefault(m => m.Id == toChargeBackRecordSub.ParentId && record.TimeNumber > m.QueryCount) ?? new ToChargeByStage();
+                                    if (toChargeByStage.Id > 0)
+                                    {
+                                        var toChargeBackRecordSubs = db.ToChargeBackRecordSub.FirstOrDefault(m => m.Status == 0 && m.ParentId == toChargeByStage.Id) ?? new ToChargeBackRecordSub();
+                                        if (toChargeBackRecordSubs.Id > 0)
+                                        {
+                                            userAccount.ToChargeAmount += toChargeBackRecordSubs.ChargeAmount;//增加预扣款
+                                            var toChargeBackRecord = db.ToChargeBackRecord.Add(new ToChargeBackRecord
+                                            {
+                                                CreateDate = DateTime.Now,
+                                                UserId = toChargeByStage.UserId,
+                                                ChargeAmount = toChargeBackRecordSubs.ChargeAmount,
+                                                ChargeType = 124,//过期机具货款扣费
+                                                Remark = "分期扣款",
+
+                                            }).Entity;
+                                        }
+                                    }
+                                }
+                            }
+                            db.SaveChanges();
+
+                        }
+                    }
+                    catch (Exception ex)
+                    {
+                        function.WriteLog(DateTime.Now.ToString() + ":" + ex.ToString(), "过期机具执行扣费异常");
+                    }
+                }
+                Thread.Sleep(1000);
+            }
+        }
+    }
+}

+ 48 - 48
Areas/Admin/Controllers/HomeController.cs

@@ -149,60 +149,60 @@ namespace MySystem.Areas.Admin.Controllers
         [HttpPost]
         public string Login(string UserName, string Pwd, string CheckCode)
         {
-            string result = "";
-            if (function.GetCookie(_accessor.HttpContext, "checkcode") != CheckCode)
-            {
-                result = "验证码错误!!";
-            }
-            else
-            {
-                Pwd = function.MD5_32(Pwd);
-                var user = db.SysAdmin.FirstOrDefault(m => m.AdminName == UserName && m.Password == Pwd);
-                if (user != null)
-                {
-                    user.LastLoginDate = DateTime.Now;
-                    db.SaveChanges();
-                    function.WriteCookie(_accessor.HttpContext, "SysUserName", user.AdminName);
-                    function.WriteCookie(_accessor.HttpContext, "SysRealName", user.RealName);
-                    function.WriteCookie(_accessor.HttpContext, "SysRealRole", user.Role);
-                    int RoleId = int.Parse(function.CheckInt(user.Role));
-                    BsModels.SysAdminRole Role = db.SysAdminRole.FirstOrDefault(m => m.Id == RoleId) ?? new BsModels.SysAdminRole();
-                    string RightInfo = function.CheckNull(Role.RightInfo);
-                    function.WriteSession(_accessor.HttpContext, "RightInfo", RightInfo);
-                    string UserId = user.Id.ToString();
-                    function.WriteCookie(_accessor.HttpContext, "SysId", UserId);
-                    function.WriteSession(_accessor.HttpContext, "IsLogin", "1");
-                    result = "success";
-                }
-                else
-                {
-                    result = "用户名或密码错误";
-                }
-            }
-
             // string result = "";
-            // Pwd = function.MD5_32(Pwd);
-            // var user = db.SysAdmin.FirstOrDefault(m => m.AdminName == UserName && m.Password == Pwd);
-            // if (user != null)
+            // if (function.GetCookie(_accessor.HttpContext, "checkcode") != CheckCode)
             // {
-            //     user.LastLoginDate = DateTime.Now;
-            //     db.SaveChanges();
-            //     function.WriteCookie(_accessor.HttpContext, "SysUserName", user.AdminName);
-            //     function.WriteCookie(_accessor.HttpContext, "SysRealName", user.RealName);
-            //     function.WriteCookie(_accessor.HttpContext, "SysRealRole", user.Role);
-            //     int RoleId = int.Parse(function.CheckInt(user.Role));
-            //     BsModels.SysAdminRole Role = db.SysAdminRole.FirstOrDefault(m => m.Id == RoleId) ?? new BsModels.SysAdminRole();
-            //     string RightInfo = function.CheckNull(Role.RightInfo);
-            //     function.WriteSession(_accessor.HttpContext, "RightInfo", RightInfo);
-            //     string UserId = user.Id.ToString();
-            //     function.WriteCookie(_accessor.HttpContext, "SysId", UserId);
-            //     function.WriteSession(_accessor.HttpContext, "IsLogin", "1");
-            //     result = "success";
+            //     result = "验证码错误!!";
             // }
             // else
             // {
-            //     result = "用户名或密码错误";
+            //     Pwd = function.MD5_32(Pwd);
+            //     var user = db.SysAdmin.FirstOrDefault(m => m.AdminName == UserName && m.Password == Pwd);
+            //     if (user != null)
+            //     {
+            //         user.LastLoginDate = DateTime.Now;
+            //         db.SaveChanges();
+            //         function.WriteCookie(_accessor.HttpContext, "SysUserName", user.AdminName);
+            //         function.WriteCookie(_accessor.HttpContext, "SysRealName", user.RealName);
+            //         function.WriteCookie(_accessor.HttpContext, "SysRealRole", user.Role);
+            //         int RoleId = int.Parse(function.CheckInt(user.Role));
+            //         BsModels.SysAdminRole Role = db.SysAdminRole.FirstOrDefault(m => m.Id == RoleId) ?? new BsModels.SysAdminRole();
+            //         string RightInfo = function.CheckNull(Role.RightInfo);
+            //         function.WriteSession(_accessor.HttpContext, "RightInfo", RightInfo);
+            //         string UserId = user.Id.ToString();
+            //         function.WriteCookie(_accessor.HttpContext, "SysId", UserId);
+            //         function.WriteSession(_accessor.HttpContext, "IsLogin", "1");
+            //         result = "success";
+            //     }
+            //     else
+            //     {
+            //         result = "用户名或密码错误";
+            //     }
             // }
+
+            string result = "";
+            Pwd = function.MD5_32(Pwd);
+            var user = db.SysAdmin.FirstOrDefault(m => m.AdminName == UserName && m.Password == Pwd);
+            if (user != null)
+            {
+                user.LastLoginDate = DateTime.Now;
+                db.SaveChanges();
+                function.WriteCookie(_accessor.HttpContext, "SysUserName", user.AdminName);
+                function.WriteCookie(_accessor.HttpContext, "SysRealName", user.RealName);
+                function.WriteCookie(_accessor.HttpContext, "SysRealRole", user.Role);
+                int RoleId = int.Parse(function.CheckInt(user.Role));
+                BsModels.SysAdminRole Role = db.SysAdminRole.FirstOrDefault(m => m.Id == RoleId) ?? new BsModels.SysAdminRole();
+                string RightInfo = function.CheckNull(Role.RightInfo);
+                function.WriteSession(_accessor.HttpContext, "RightInfo", RightInfo);
+                string UserId = user.Id.ToString();
+                function.WriteCookie(_accessor.HttpContext, "SysId", UserId);
+                function.WriteSession(_accessor.HttpContext, "IsLogin", "1");
+                result = "success";
+            }
+            else
+            {
+                result = "用户名或密码错误";
+            }
             return result;
         }
         #endregion

+ 101 - 2
Areas/Admin/Controllers/MainServer/ToChargeBackRecordController.cs

@@ -101,14 +101,16 @@ namespace MySystem.Areas.Admin.Controllers
                 //待扣类型
                 int ChargeType = int.Parse(dic["ChargeType"].ToString());
                 if (ChargeType == 124) dic["ChargeType"] = "过期机具扣款";
-                // if (ChargeType == 2) dic["ChargeType"] = "人工预扣";
-                // if (ChargeType == 0) dic["ChargeType"] = "";
+                if (ChargeType == 1) dic["ChargeType"] = "预扣款";
+                if (ChargeType == 2) dic["ChargeType"] = "分期扣款";
+                if (ChargeType == 0) dic["ChargeType"] = "";
 
                 //扣款状态
                 int Status = int.Parse(dic["Status"].ToString());
                 if (Status == 0) dic["Status"] = "待扣款";
                 if (Status == 1) dic["Status"] = "已扣款";
                 if (Status == 2) dic["Status"] = "已退还";
+                if (Status == 3) dic["Status"] = "暂停扣款";
 
             }
             return Json(obj);
@@ -280,6 +282,54 @@ namespace MySystem.Areas.Admin.Controllers
 
         #endregion
 
+
+        #region 暂停扣款
+
+        /// <summary>
+        /// 暂停扣款
+        /// </summary>
+        /// <returns></returns>
+        public string Break(string Id)
+        {
+            string[] idlist = Id.Split(new char[] { ',' });
+            AddSysLog(Id, "ToChargeBackRecord", "Break");
+            foreach (string subid in idlist)
+            {
+                int id = int.Parse(subid);
+                Dictionary<string, object> Fields = new Dictionary<string, object>();
+                Fields.Add("Status", 3);
+                new AdminContentOther(_accessor.HttpContext, PublicFunction.MainTables).Edit("ToChargeBackRecord", Fields, id);
+            }
+            db.SaveChanges();
+            return "success";
+        }
+
+        #endregion
+
+        #region 开启扣款
+
+        /// <summary>
+        /// 开启扣款
+        /// </summary>
+        /// <returns></returns>
+        public string Start(string Id)
+        {
+            string[] idlist = Id.Split(new char[] { ',' });
+            AddSysLog(Id, "ToChargeBackRecord", "Start");
+            foreach (string subid in idlist)
+            {
+                int id = int.Parse(subid);
+                Dictionary<string, object> Fields = new Dictionary<string, object>();
+                Fields.Add("Status", 0);
+                new AdminContentOther(_accessor.HttpContext, PublicFunction.MainTables).Edit("ToChargeBackRecord", Fields, id);
+            }
+            db.SaveChanges();
+            return "success";
+        }
+
+        #endregion
+
+
         #region 排序
         /// <summary>
         /// 排序
@@ -294,6 +344,55 @@ namespace MySystem.Areas.Admin.Controllers
         }
         #endregion
 
+
+        #region 导入预扣信息
+        /// <summary>
+        /// 导入预扣信息
+        /// </summary>
+        /// <param name="ExcelData"></param>
+        public string ChargeImport(string ExcelData)
+        {
+            ExcelData = HttpUtility.UrlDecode(ExcelData);
+            JsonData list = JsonMapper.ToObject(ExcelData);
+            var info = "";
+            var error = "";
+            for (int i = 1; i < list.Count; i++)
+            {
+                JsonData dr = list[i];
+                string itemJson = dr.ToJson();
+                string MakerCode = itemJson.Contains("\"A\"") ? dr["A"].ToString() : "";
+                string Name = itemJson.Contains("\"B\"") ? dr["B"].ToString() : "";
+                string Amount = itemJson.Contains("\"C\"") ? dr["C"].ToString() : "";
+                string Remark = itemJson.Contains("\"D\"") ? dr["D"].ToString() : "";
+                var userForMakerCode = db.UserForMakerCode.FirstOrDefault(m => m.MakerCode == MakerCode) ?? new UserForMakerCode();
+                var users = db.Users.FirstOrDefault(m => m.Id == userForMakerCode.UserId && m.RealName == Name);
+                if (users.Id == 0)
+                {
+                    error += "失败:" + MakerCode + "_" + Name  + "创客不存在或创客编号和姓名不匹配" + '\n';
+                }
+                var ToChargeBackRecord = db.ToChargeBackRecord.Add(new ToChargeBackRecord
+                {
+                    CreateDate = DateTime.Now,
+                    SeoTitle = SysUserName + "_" + SysRealName,
+                    SeoDescription = Remark,
+                    ChargeAmount = decimal.Parse(Amount),
+                    UserId =users.Id,
+                }).Entity;
+                info += "创客编号:"+MakerCode + ";创客姓名:" + Name + ";金额:" + Amount + ";备注:" + Remark + "<br/>";
+            }
+            if (!string.IsNullOrEmpty(error))
+            {
+                return "Warning|" + error;
+            }
+            string text = string.Format("预扣信息: '" + info + "',Time'" + DateTime.Now + "'");
+            function.WriteLog(text, "导入预扣信息");//机具扣款退还
+            db.SaveChanges();
+            AddSysLog("0", "ToChargeBackRecord", "ChargeImport");
+            return "success";
+        }
+        #endregion
+
+
         #region 机具扣款退还
         /// <summary>
         /// 导入数据

+ 33 - 32
Areas/Admin/Controllers/MainServer/ToChargeBackRecordSubController.cs

@@ -25,6 +25,7 @@ namespace MySystem.Areas.Admin.Controllers
     {
         public ToChargeBackRecordSubController(IHttpContextAccessor accessor, ILogger<BaseController> logger, IOptions<Setting> setting) : base(accessor, logger, setting)
         {
+            OtherMySqlConn.connstr = ConfigurationManager.AppSettings["SqlConnStr"].ToString();
         }
 
         #region 待扣款明细列表
@@ -39,7 +40,7 @@ namespace MySystem.Areas.Admin.Controllers
             ViewBag.right = right;
             ViewBag.ParentId = ParentId;
 
-            
+
             return View();
         }
 
@@ -53,7 +54,7 @@ namespace MySystem.Areas.Admin.Controllers
         /// <returns></returns>
         public JsonResult IndexData(ToChargeBackRecordSub data, int page = 1, int limit = 30)
         {
-            
+
             Dictionary<string, string> Fields = new Dictionary<string, string>();
             Fields.Add("ParentId", "1");
 
@@ -61,13 +62,13 @@ namespace MySystem.Areas.Admin.Controllers
 
 
             string condition = " and Status>-1";
-            
 
-            Dictionary<string, object> obj = new AdminContent(_accessor.HttpContext, SystemPublicFuction.dbtables).IndexData("ToChargeBackRecordSub", Fields, "Id desc", "0", page, limit, condition);
+
+            Dictionary<string, object> obj = new AdminContentOther(_accessor.HttpContext, PublicFunction.MainTables).IndexData("ToChargeBackRecordSub", Fields, "Id desc", "0", page, limit, condition);
             List<Dictionary<string, object>> diclist = obj["data"] as List<Dictionary<string, object>>;
             foreach (Dictionary<string, object> dic in diclist)
             {
-                
+
             }
             return Json(obj);
         }
@@ -105,17 +106,17 @@ namespace MySystem.Areas.Admin.Controllers
             Fields.Add("ParentId", data.ParentId);
 
             Fields.Add("ChargeAmount", data.ChargeAmount); //待扣金额
-Fields.Add("Remark", data.Remark); //备注
-Fields.Add("StartDate", data.StartDate); //扣款开始时间
-Fields.Add("TimeNumber", data.TimeNumber); //期数
+            Fields.Add("Remark", data.Remark); //备注
+            Fields.Add("StartDate", data.StartDate); //扣款开始时间
+            Fields.Add("TimeNumber", data.TimeNumber); //期数
 
             Fields.Add("SeoTitle", data.SeoTitle);
             Fields.Add("SeoKeyword", data.SeoKeyword);
             Fields.Add("SeoDescription", data.SeoDescription);
-            int Id = new AdminContent(_accessor.HttpContext, SystemPublicFuction.dbtables).Add("ToChargeBackRecordSub", Fields, 0);
+            int Id = new AdminContentOther(_accessor.HttpContext, PublicFunction.MainTables).Add("ToChargeBackRecordSub", Fields, 0);
             AddSysLog(data.Id.ToString(), "ToChargeBackRecordSub", "add");
             db.SaveChanges();
-            
+
             return "success";
         }
 
@@ -154,17 +155,17 @@ Fields.Add("TimeNumber", data.TimeNumber); //期数
             Fields.Add("ParentId", data.ParentId);
 
             Fields.Add("ChargeAmount", data.ChargeAmount); //待扣金额
-Fields.Add("Remark", data.Remark); //备注
-Fields.Add("StartDate", data.StartDate); //扣款开始时间
-Fields.Add("TimeNumber", data.TimeNumber); //期数
+            Fields.Add("Remark", data.Remark); //备注
+            Fields.Add("StartDate", data.StartDate); //扣款开始时间
+            Fields.Add("TimeNumber", data.TimeNumber); //期数
 
             Fields.Add("SeoTitle", data.SeoTitle);
             Fields.Add("SeoKeyword", data.SeoKeyword);
             Fields.Add("SeoDescription", data.SeoDescription);
-            new AdminContent(_accessor.HttpContext, SystemPublicFuction.dbtables).Edit("ToChargeBackRecordSub", Fields, data.Id);
-            AddSysLog(data.Id.ToString(),"ToChargeBackRecordSub","update");
+            new AdminContentOther(_accessor.HttpContext, PublicFunction.MainTables).Edit("ToChargeBackRecordSub", Fields, data.Id);
+            AddSysLog(data.Id.ToString(), "ToChargeBackRecordSub", "update");
             db.SaveChanges();
-            
+
             return "success";
         }
 
@@ -179,16 +180,16 @@ Fields.Add("TimeNumber", data.TimeNumber); //期数
         public string Delete(string Id)
         {
             string[] idlist = Id.Split(new char[] { ',' });
-            AddSysLog(Id,"ToChargeBackRecordSub","del");
+            AddSysLog(Id, "ToChargeBackRecordSub", "del");
             foreach (string subid in idlist)
             {
                 int id = int.Parse(subid);
                 Dictionary<string, object> Fields = new Dictionary<string, object>();
                 Fields.Add("Status", -1);
-                new AdminContent(_accessor.HttpContext, SystemPublicFuction.dbtables).Edit("ToChargeBackRecordSub", Fields, id);
+                new AdminContentOther(_accessor.HttpContext, PublicFunction.MainTables).Edit("ToChargeBackRecordSub", Fields, id);
             }
             db.SaveChanges();
-            
+
             return "success";
         }
 
@@ -203,13 +204,13 @@ Fields.Add("TimeNumber", data.TimeNumber); //期数
         public string Open(string Id)
         {
             string[] idlist = Id.Split(new char[] { ',' });
-            AddSysLog(Id,"ToChargeBackRecordSub","open");
+            AddSysLog(Id, "ToChargeBackRecordSub", "open");
             foreach (string subid in idlist)
             {
                 int id = int.Parse(subid);
                 Dictionary<string, object> Fields = new Dictionary<string, object>();
                 Fields.Add("Status", 1);
-                new AdminContent(_accessor.HttpContext, SystemPublicFuction.dbtables).Edit("ToChargeBackRecordSub", Fields, id);
+                new AdminContentOther(_accessor.HttpContext, PublicFunction.MainTables).Edit("ToChargeBackRecordSub", Fields, id);
             }
             db.SaveChanges();
             return "success";
@@ -226,13 +227,13 @@ Fields.Add("TimeNumber", data.TimeNumber); //期数
         public string Close(string Id)
         {
             string[] idlist = Id.Split(new char[] { ',' });
-            AddSysLog(Id,"ToChargeBackRecordSub","close");
+            AddSysLog(Id, "ToChargeBackRecordSub", "close");
             foreach (string subid in idlist)
             {
                 int id = int.Parse(subid);
                 Dictionary<string, object> Fields = new Dictionary<string, object>();
                 Fields.Add("Status", 0);
-                new AdminContent(_accessor.HttpContext, SystemPublicFuction.dbtables).Edit("ToChargeBackRecordSub", Fields, id);
+                new AdminContentOther(_accessor.HttpContext, PublicFunction.MainTables).Edit("ToChargeBackRecordSub", Fields, id);
             }
             db.SaveChanges();
             return "success";
@@ -247,8 +248,8 @@ Fields.Add("TimeNumber", data.TimeNumber); //期数
         /// <param name="Id"></param>
         public string Sort(int Id, int Sort)
         {
-            new AdminContent(_accessor.HttpContext, SystemPublicFuction.dbtables).Sort("ToChargeBackRecordSub", Sort, Id);
-            
+            new AdminContentOther(_accessor.HttpContext, PublicFunction.MainTables).Sort("ToChargeBackRecordSub", Sort, Id);
+
             AddSysLog(Id.ToString(), "ToChargeBackRecordSub", "sort");
             return "success";
         }
@@ -263,15 +264,15 @@ Fields.Add("TimeNumber", data.TimeNumber); //期数
         {
             ExcelData = HttpUtility.UrlDecode(ExcelData);
             JsonData list = JsonMapper.ToObject(ExcelData);
-            for (int i = 1; i < list.Count;i++ )
+            for (int i = 1; i < list.Count; i++)
             {
                 JsonData dr = list[i];
-                
+
                 db.ToChargeBackRecordSub.Add(new ToChargeBackRecordSub()
                 {
                     CreateDate = DateTime.Now,
                     UpdateDate = DateTime.Now,
-                    
+
                 });
                 db.SaveChanges();
             }
@@ -293,13 +294,13 @@ Fields.Add("TimeNumber", data.TimeNumber); //期数
 
 
             string condition = " and Status>-1";
-            
 
-            Dictionary<string, object> obj = new AdminContent(_accessor.HttpContext, SystemPublicFuction.dbtables).IndexData("ToChargeBackRecordSub", Fields, "Id desc", "0", 1, 20000, condition, "ChargeAmount,Remark", false);
+
+            Dictionary<string, object> obj = new AdminContentOther(_accessor.HttpContext, PublicFunction.MainTables).IndexData("ToChargeBackRecordSub", Fields, "Id desc", "0", 1, 20000, condition, "ChargeAmount,Remark", false);
             List<Dictionary<string, object>> diclist = obj["data"] as List<Dictionary<string, object>>;
             foreach (Dictionary<string, object> dic in diclist)
             {
-                
+
             }
 
             Dictionary<string, object> result = new Dictionary<string, object>();
@@ -308,7 +309,7 @@ Fields.Add("TimeNumber", data.TimeNumber); //期数
             result.Add("Obj", diclist);
             Dictionary<string, object> ReturnFields = new Dictionary<string, object>();
             ReturnFields.Add("ChargeAmount", "待扣金额");
-ReturnFields.Add("Remark", "备注");
+            ReturnFields.Add("Remark", "备注");
 
             result.Add("Fields", ReturnFields);
             AddSysLog("0", "ToChargeBackRecordSub", "ExportExcel");

+ 87 - 56
Areas/Admin/Controllers/MainServer/ToChargeByStageController.cs

@@ -25,6 +25,7 @@ namespace MySystem.Areas.Admin.Controllers
     {
         public ToChargeByStageController(IHttpContextAccessor accessor, ILogger<BaseController> logger, IOptions<Setting> setting) : base(accessor, logger, setting)
         {
+            OtherMySqlConn.connstr = ConfigurationManager.AppSettings["SqlConnStr"].ToString();
         }
 
         #region 分期扣款信息列表
@@ -37,8 +38,8 @@ namespace MySystem.Areas.Admin.Controllers
         {
             ViewBag.RightInfo = RightInfo;
             ViewBag.right = right;
-            
-            
+
+
             return View();
         }
 
@@ -50,24 +51,54 @@ namespace MySystem.Areas.Admin.Controllers
         /// 分期扣款信息列表
         /// </summary>
         /// <returns></returns>
-        public JsonResult IndexData(ToChargeByStage data, int? sUserId, int? eUserId, int page = 1, int limit = 30)
+        public JsonResult IndexData(ToChargeByStage data, string MakerCode, string StatusSelect, string CreateDateData, int page = 1, int limit = 30)
         {
-            
+
             Dictionary<string, string> Fields = new Dictionary<string, string>();
-            
-            Fields.Add("sUserId", "31"); //创客上限
-Fields.Add("eUserId", "32"); //创客下限
-Fields.Add("CreateDate", "3"); //时间
 
+            Fields.Add("SeoTitle", "1"); //创客姓名
 
             string condition = " and Status>-1";
-            
 
-            Dictionary<string, object> obj = new AdminContent(_accessor.HttpContext, SystemPublicFuction.dbtables).IndexData("ToChargeByStage", Fields, "Id desc", "0", page, limit, condition);
+            //创客编号
+            if (!string.IsNullOrEmpty(MakerCode))
+            {
+                var userForMakerCode = db.UserForMakerCode.FirstOrDefault(m => m.MakerCode == MakerCode) ?? new UserForMakerCode();
+                condition += " and UserId=" + userForMakerCode.UserId;
+            }
+
+            //状态
+            if (!string.IsNullOrEmpty(StatusSelect))
+            {
+                if (StatusSelect == "0")//待处理
+                {
+                    condition += " and QueryCount<TimeNumber and QueryCount=0 and Status=0";
+                }
+                if (StatusSelect == "1")//已扣款
+                {
+                    condition += " and QueryCount=TimeNumber and Status=1";
+                }
+                if (StatusSelect == "2")//扣款中
+                {
+                    condition += " and QueryCount<TimeNumber and QueryCount>0 and Status=0";
+                }
+            }
+
+            //创建时间
+            if (!string.IsNullOrEmpty(CreateDateData))
+            {
+                string[] datelist = CreateDateData.Split(new string[] { " - " }, StringSplitOptions.None);
+                string start = datelist[0];
+                string end = datelist[1];
+                condition += " and CreateDate>='" + start + " 00:00:00' and CreateDate<='" + end + " 23:59:59'";
+            }
+
+
+            Dictionary<string, object> obj = new AdminContentOther(_accessor.HttpContext, PublicFunction.MainTables).IndexData("ToChargeByStage", Fields, "Id desc", "0", page, limit, condition);
             List<Dictionary<string, object>> diclist = obj["data"] as List<Dictionary<string, object>>;
             foreach (Dictionary<string, object> dic in diclist)
             {
-                
+
             }
             return Json(obj);
         }
@@ -84,7 +115,7 @@ Fields.Add("CreateDate", "3"); //时间
         {
             ViewBag.RightInfo = RightInfo;
             ViewBag.right = right;
-            
+
 
             return View();
         }
@@ -101,21 +132,21 @@ Fields.Add("CreateDate", "3"); //时间
         public string Add(ToChargeByStage data)
         {
             Dictionary<string, object> Fields = new Dictionary<string, object>();
-            
+
             Fields.Add("UserId", data.UserId); //创客
-Fields.Add("ChargeAmount", data.ChargeAmount); //待扣金额
-Fields.Add("Remark", data.Remark); //备注
-Fields.Add("StartDate", data.StartDate); //扣款开始时间
-Fields.Add("TimeNumber", data.TimeNumber); //期数
-Fields.Add("TotalAmount", data.TotalAmount); //扣款总金额
+            Fields.Add("ChargeAmount", data.ChargeAmount); //待扣金额
+            Fields.Add("Remark", data.Remark); //备注
+            Fields.Add("StartDate", data.StartDate); //扣款开始时间
+            Fields.Add("TimeNumber", data.TimeNumber); //期数
+            Fields.Add("TotalAmount", data.TotalAmount); //扣款总金额
 
             Fields.Add("SeoTitle", data.SeoTitle);
             Fields.Add("SeoKeyword", data.SeoKeyword);
             Fields.Add("SeoDescription", data.SeoDescription);
-            int Id = new AdminContent(_accessor.HttpContext, SystemPublicFuction.dbtables).Add("ToChargeByStage", Fields, 0);
+            int Id = new AdminContentOther(_accessor.HttpContext, PublicFunction.MainTables).Add("ToChargeByStage", Fields, 0);
             AddSysLog(data.Id.ToString(), "ToChargeByStage", "add");
             db.SaveChanges();
-            
+
             return "success";
         }
 
@@ -131,7 +162,7 @@ Fields.Add("TotalAmount", data.TotalAmount); //扣款总金额
         {
             ViewBag.RightInfo = RightInfo;
             ViewBag.right = right;
-            
+
 
             ToChargeByStage editData = db.ToChargeByStage.FirstOrDefault(m => m.Id == Id) ?? new ToChargeByStage();
             ViewBag.data = editData;
@@ -150,21 +181,21 @@ Fields.Add("TotalAmount", data.TotalAmount); //扣款总金额
         public string Edit(ToChargeByStage data)
         {
             Dictionary<string, object> Fields = new Dictionary<string, object>();
-            
+
             Fields.Add("UserId", data.UserId); //创客
-Fields.Add("ChargeAmount", data.ChargeAmount); //待扣金额
-Fields.Add("Remark", data.Remark); //备注
-Fields.Add("StartDate", data.StartDate); //扣款开始时间
-Fields.Add("TimeNumber", data.TimeNumber); //期数
-Fields.Add("TotalAmount", data.TotalAmount); //扣款总金额
+            Fields.Add("ChargeAmount", data.ChargeAmount); //待扣金额
+            Fields.Add("Remark", data.Remark); //备注
+            Fields.Add("StartDate", data.StartDate); //扣款开始时间
+            Fields.Add("TimeNumber", data.TimeNumber); //期数
+            Fields.Add("TotalAmount", data.TotalAmount); //扣款总金额
 
             Fields.Add("SeoTitle", data.SeoTitle);
             Fields.Add("SeoKeyword", data.SeoKeyword);
             Fields.Add("SeoDescription", data.SeoDescription);
-            new AdminContent(_accessor.HttpContext, SystemPublicFuction.dbtables).Edit("ToChargeByStage", Fields, data.Id);
-            AddSysLog(data.Id.ToString(),"ToChargeByStage","update");
+            new AdminContentOther(_accessor.HttpContext, PublicFunction.MainTables).Edit("ToChargeByStage", Fields, data.Id);
+            AddSysLog(data.Id.ToString(), "ToChargeByStage", "update");
             db.SaveChanges();
-            
+
             return "success";
         }
 
@@ -179,16 +210,16 @@ Fields.Add("TotalAmount", data.TotalAmount); //扣款总金额
         public string Delete(string Id)
         {
             string[] idlist = Id.Split(new char[] { ',' });
-            AddSysLog(Id,"ToChargeByStage","del");
+            AddSysLog(Id, "ToChargeByStage", "del");
             foreach (string subid in idlist)
             {
                 int id = int.Parse(subid);
                 Dictionary<string, object> Fields = new Dictionary<string, object>();
                 Fields.Add("Status", -1);
-                new AdminContent(_accessor.HttpContext, SystemPublicFuction.dbtables).Edit("ToChargeByStage", Fields, id);
+                new AdminContentOther(_accessor.HttpContext, PublicFunction.MainTables).Edit("ToChargeByStage", Fields, id);
             }
             db.SaveChanges();
-            
+
             return "success";
         }
 
@@ -203,13 +234,13 @@ Fields.Add("TotalAmount", data.TotalAmount); //扣款总金额
         public string Open(string Id)
         {
             string[] idlist = Id.Split(new char[] { ',' });
-            AddSysLog(Id,"ToChargeByStage","open");
+            AddSysLog(Id, "ToChargeByStage", "open");
             foreach (string subid in idlist)
             {
                 int id = int.Parse(subid);
                 Dictionary<string, object> Fields = new Dictionary<string, object>();
                 Fields.Add("Status", 1);
-                new AdminContent(_accessor.HttpContext, SystemPublicFuction.dbtables).Edit("ToChargeByStage", Fields, id);
+                new AdminContentOther(_accessor.HttpContext, PublicFunction.MainTables).Edit("ToChargeByStage", Fields, id);
             }
             db.SaveChanges();
             return "success";
@@ -226,13 +257,13 @@ Fields.Add("TotalAmount", data.TotalAmount); //扣款总金额
         public string Close(string Id)
         {
             string[] idlist = Id.Split(new char[] { ',' });
-            AddSysLog(Id,"ToChargeByStage","close");
+            AddSysLog(Id, "ToChargeByStage", "close");
             foreach (string subid in idlist)
             {
                 int id = int.Parse(subid);
                 Dictionary<string, object> Fields = new Dictionary<string, object>();
                 Fields.Add("Status", 0);
-                new AdminContent(_accessor.HttpContext, SystemPublicFuction.dbtables).Edit("ToChargeByStage", Fields, id);
+                new AdminContentOther(_accessor.HttpContext, PublicFunction.MainTables).Edit("ToChargeByStage", Fields, id);
             }
             db.SaveChanges();
             return "success";
@@ -247,8 +278,8 @@ Fields.Add("TotalAmount", data.TotalAmount); //扣款总金额
         /// <param name="Id"></param>
         public string Sort(int Id, int Sort)
         {
-            new AdminContent(_accessor.HttpContext, SystemPublicFuction.dbtables).Sort("ToChargeByStage", Sort, Id);
-            
+            new AdminContentOther(_accessor.HttpContext, PublicFunction.MainTables).Sort("ToChargeByStage", Sort, Id);
+
             AddSysLog(Id.ToString(), "ToChargeByStage", "sort");
             return "success";
         }
@@ -263,26 +294,26 @@ Fields.Add("TotalAmount", data.TotalAmount); //扣款总金额
         {
             ExcelData = HttpUtility.UrlDecode(ExcelData);
             JsonData list = JsonMapper.ToObject(ExcelData);
-            for (int i = 1; i < list.Count;i++ )
+            for (int i = 1; i < list.Count; i++)
             {
                 JsonData dr = list[i];
                 int UserId = int.Parse(dr["创客"].ToString());
-decimal ChargeAmount = decimal.Parse(dr["待扣金额"].ToString());
-string Remark = dr["备注"].ToString();
-DateTime StartDate = DateTime.Parse(dr["扣款开始时间"].ToString());
-int TimeNumber = int.Parse(dr["期数"].ToString());
-decimal TotalAmount = decimal.Parse(dr["扣款总金额"].ToString());
+                decimal ChargeAmount = decimal.Parse(dr["待扣金额"].ToString());
+                string Remark = dr["备注"].ToString();
+                DateTime StartDate = DateTime.Parse(dr["扣款开始时间"].ToString());
+                int TimeNumber = int.Parse(dr["期数"].ToString());
+                decimal TotalAmount = decimal.Parse(dr["扣款总金额"].ToString());
 
                 db.ToChargeByStage.Add(new ToChargeByStage()
                 {
                     CreateDate = DateTime.Now,
                     UpdateDate = DateTime.Now,
                     UserId = UserId,   //创客
-ChargeAmount = ChargeAmount,   //待扣金额
-Remark = Remark,   //备注
-StartDate = StartDate,   //扣款开始时间
-TimeNumber = TimeNumber,   //期数
-TotalAmount = TotalAmount,   //扣款总金额
+                    ChargeAmount = ChargeAmount,   //待扣金额
+                    Remark = Remark,   //备注
+                    StartDate = StartDate,   //扣款开始时间
+                    TimeNumber = TimeNumber,   //期数
+                    TotalAmount = TotalAmount,   //扣款总金额
 
                 });
                 db.SaveChanges();
@@ -302,18 +333,18 @@ TotalAmount = TotalAmount,   //扣款总金额
         {
             Dictionary<string, string> Fields = new Dictionary<string, string>();
             Fields.Add("sUserId", "31"); //创客上限
-Fields.Add("eUserId", "32"); //创客下限
-Fields.Add("CreateDate", "3"); //时间
+            Fields.Add("eUserId", "32"); //创客下限
+            Fields.Add("CreateDate", "3"); //时间
 
 
             string condition = " and Status>-1";
-            
 
-            Dictionary<string, object> obj = new AdminContent(_accessor.HttpContext, SystemPublicFuction.dbtables).IndexData("ToChargeByStage", Fields, "Id desc", "0", 1, 20000, condition, "", false);
+
+            Dictionary<string, object> obj = new AdminContentOther(_accessor.HttpContext, PublicFunction.MainTables).IndexData("ToChargeByStage", Fields, "Id desc", "0", 1, 20000, condition, "", false);
             List<Dictionary<string, object>> diclist = obj["data"] as List<Dictionary<string, object>>;
             foreach (Dictionary<string, object> dic in diclist)
             {
-                
+
             }
 
             Dictionary<string, object> result = new Dictionary<string, object>();
@@ -321,7 +352,7 @@ Fields.Add("CreateDate", "3"); //时间
             result.Add("Info", "Excel报表-" + DateTime.Now.ToString("yyyy-MM-ddTHH:mm:ss") + ".xlsx");
             result.Add("Obj", diclist);
             Dictionary<string, object> ReturnFields = new Dictionary<string, object>();
-            
+
             result.Add("Fields", ReturnFields);
             AddSysLog("0", "ToChargeByStage", "ExportExcel");
             return Json(result);

+ 2 - 2
Areas/Admin/Views/Home/Login.cshtml

@@ -26,11 +26,11 @@
                     <label for="password">密码 / Password</label>
                     <input class="form-input" type="password" name="Pwd" id="Pwd" onKeyUp="if(event.keyCode==13){$('#CheckCode').focus();}" placeholder="请填写密码">
                 </div>
-                <div class="form-group pb10">
+                @* <div class="form-group pb10">
                     <label for="password">验证码 / Verification</label>
                     <input class="form-input" type="text" name="CheckCode" id="CheckCode" onkeyup="if(event.keyCode==13){syslogin();}" placeholder="请填写验证码" style="width: 70%; display: inline-block; margin-right: 2%">
                     <img src="/Api/PublicMethod/CheckCode" onclick="$(this).attr('src','/Api/PublicMethod/CheckCode?r='+Math.random())" style="width: 26%; height:38px;" />
-                </div>
+                </div> *@
                 @*<div class="form-group pb10 cf">
                         <label class="remembermetext fl" for="rememberme">
                             <input type="checkbox" checked name="rememberme">&nbsp;记住我的登录

+ 84 - 70
Areas/Admin/Views/MainServer/ToChargeBackRecord/Edit.cshtml

@@ -1,87 +1,100 @@
 @using MySystem.Models;
-@{ToChargeBackRecord editData = ViewBag.data as ToChargeBackRecord;}
+@{
+    ToChargeBackRecord editData = ViewBag.data as ToChargeBackRecord;
+}
 @{
     string RightInfo = ViewBag.RightInfo as string;
     string right = ViewBag.right as string;
-    
+
 }
 <!DOCTYPE html>
 <html>
+
 <head>
     <meta charset="utf-8">
     <title>待扣款明细(修改)</title>
     <meta name="renderer" content="webkit">
     <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
-    <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
+    <meta name="viewport"
+        content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
     <link rel="stylesheet" href="/layuiadmin/layui/css/layui.css" media="all">
     <script src="/admin/js/jquery-1.10.1.min.js"></script>
     <script src="/admin/js/LAreaData2.js"></script>
 </head>
+
 <body>
 
     <div class="layui-form" lay-filter="layuiadmin-form-useradmin" id="layuiadmin-form-useradmin">
         <input type="hidden" name="Id" value="@editData.Id" />
-        
+
         <div class="layui-card">
-          <div class="layui-card-body">
-            <div class="layui-tab" lay-filter="mytabbar">
-                <ul class="layui-tab-title">
-                    <li class="layui-this" lay-id="1">基本信息</li>
-                </ul>
-                <div class="layui-tab-content mt20">
-                    <div class="layui-tab-item layui-show">
-@{Dictionary<string, string> UsersDic = new MySystem.DictionaryClass().getUsersDic();}
-<div class="layui-form-item">
-<label class="layui-form-label">创客</label>
-<div class="layui-input-inline">
-<select id="UserId" name="UserId" lay-search="">
-<option value="">请选择</option>
-@foreach (string key in UsersDic.Keys)
-{
-<option value="@key">@UsersDic[key]</option>
-}
-</select>
-<script>$("#UserId").val("@editData.UserId");</script>
-</div>
-</div>
-<div class="layui-form-item">
-<label class="layui-form-label">待扣金额</label>
-<div class="layui-input-inline">
-<input class="layui-input" type="text" id="ChargeAmount" name="ChargeAmount" value="@editData.ChargeAmount" maxlength="20" lay-verify="required|" autocomplete="off" placeholder="请输入待扣金额">
-</div>
-</div>
-<div class="layui-form-item">
-<label class="layui-form-label">待扣类型</label>
-<div class="layui-input-inline">
-<select id="ChargeType" name="ChargeType" lay-search="">
-<option value="">请选择</option>
-<option value="1">过期机具扣款</option>
-<option value="2">人工预扣</option>
-</select>
-<script>$("#ChargeType").val("@editData.ChargeType");</script>
-</div>
-</div>
-<div class="layui-form-item layui-form-text">
-<label class="layui-form-label">备注</label>
-<div class="layui-input-block">
-<textarea class="layui-textarea" id="Remark" name="Remark" maxlength="500" lay-verify="" placeholder="请输入备注">@editData.Remark</textarea>
-</div>
-</div>
-<div class="layui-form-item">
-<label class="layui-form-label">备用字段</label>
-<div class="layui-input-inline">
-<input class="layui-input" type="text" id="Field1" name="Field1" value="@editData.Field1" maxlength="200" lay-verify="" autocomplete="off" placeholder="请输入备用字段">
-</div>
-</div>
-
-</div>
+            <div class="layui-card-body">
+                <div class="layui-tab" lay-filter="mytabbar">
+                    <ul class="layui-tab-title">
+                        <li class="layui-this" lay-id="1">基本信息</li>
+                    </ul>
+                    <div class="layui-tab-content mt20">
+                        <div class="layui-tab-item layui-show">
+                            @{
+                                Dictionary<string, string> UsersDic = new MySystem.DictionaryClass().getUsersDic();
+                            }
+                            <div class="layui-form-item">
+                                <label class="layui-form-label">创客</label>
+                                <div class="layui-input-inline">
+                                    <select id="UserId" name="UserId" lay-search="">
+                                        <option value="">请选择</option>
+                                        @foreach (string key in UsersDic.Keys)
+                                        {
+                                            <option value="@key">@UsersDic[key]</option>
+                                        }
+                                    </select>
+                                    <script>$("#UserId").val("@editData.UserId");</script>
+                                </div>
+                            </div>
+                            <div class="layui-form-item">
+                                <label class="layui-form-label">待扣金额</label>
+                                <div class="layui-input-inline">
+                                    <input class="layui-input" type="text" id="ChargeAmount" name="ChargeAmount"
+                                        value="@editData.ChargeAmount" maxlength="20" lay-verify="required|"
+                                        autocomplete="off" placeholder="请输入待扣金额">
+                                </div>
+                            </div>
+                            <div class="layui-form-item">
+                                <label class="layui-form-label">待扣类型</label>
+                                <div class="layui-input-inline">
+                                    <select id="ChargeType" name="ChargeType" lay-search="">
+                                        <option value="">请选择</option>
+                                        <option value="1">过期机具扣款</option>
+                                        <option value="2">人工预扣</option>
+                                    </select>
+                                    <script>$("#ChargeType").val("@editData.ChargeType");</script>
+                                </div>
+                            </div>
+                            <div class="layui-form-item layui-form-text">
+                                <label class="layui-form-label">备注</label>
+                                <div class="layui-input-block">
+                                    <textarea class="layui-textarea" id="Remark" name="Remark" maxlength="500"
+                                        lay-verify="" placeholder="请输入备注">@editData.Remark</textarea>
+                                </div>
+                            </div>
+                            <div class="layui-form-item">
+                                <label class="layui-form-label">备用字段</label>
+                                <div class="layui-input-inline">
+                                    <input class="layui-input" type="text" id="Field1" name="Field1"
+                                        value="@editData.Field1" maxlength="200" lay-verify="" autocomplete="off"
+                                        placeholder="请输入备用字段">
+                                </div>
+                            </div>
+
+                        </div>
 
+                    </div>
+                </div>
+                <div class="layui-form-item layui-hide">
+                    <input type="button" lay-submit lay-filter="LAY-list-front-submit" id="LAY-list-front-submit"
+                        value="确认">
                 </div>
             </div>
-            <div class="layui-form-item layui-hide">
-                <input type="button" lay-submit lay-filter="LAY-list-front-submit" id="LAY-list-front-submit" value="确认">
-            </div>
-          </div>
         </div>
     </div>
 
@@ -90,11 +103,11 @@
     <script src="/other/mybjq/kindeditor-min.js"></script>
     <script src="/other/mybjq/lang/zh_CN.js"></script>
     <script>
-        
-        
+
+
         //编辑器
         KindEditor.ready(function (K) {
-            
+
         });
 
         var ids = "";
@@ -219,30 +232,31 @@
             tree = layui.tree;
             element = layui.element;
             upload = layui.upload;
-        
+
             //Hash地址的定位
             var layid = location.hash.replace(/^#test=/, '');
             element.tabChange('test', layid);
             element.on('tab(test)', function (elem) {
                 location.hash = 'test=' + $(this).attr('lay-id');
             });
-    
+
             //日期
-            
+
 
             //上传文件
-            
+
 
             //穿梭框
-            
+
 
             //TreeView,比如权限管理
-            
+
 
             //省市区
-            
+
         })
 
     </script>
 </body>
+
 </html>

+ 26 - 10
Areas/Admin/Views/MainServer/ToChargeBackRecord/Index.cshtml

@@ -70,17 +70,20 @@
                                 <option value="">全部...</option>
                                 <option value="0">待扣款</option>
                                 <option value="1">已扣款</option>
+                                <option value="3">暂停扣款</option>
                                 <option value="2">已退还</option>
                             </select>
                         </div>
                     </div>
+                    @* 创客编号、创客姓名、手机号、创建时间、扣款金额、扣款时间、扣款状态(待扣款/已扣款/暂停扣款)、备注、操作人、操作(暂停/恢复扣款、删除、修改预扣金额) *@
                     <div class="layui-inline">
                         <label class="layui-form-label">待扣类型</label>
                         <div class="layui-input-inline">
                             <select id="ChargeTypeSelect" name="ChargeTypeSelect" lay-search="">
                                 <option value="">全部...</option>
                                 <option value="124">过期机具扣款</option>
-                                @* <option value="2">人工预扣</option> *@
+                                <option value="1">普通扣款</option>
+                                <option value="2">分期扣款</option>
                             </select>
                         </div>
                     </div>
@@ -115,30 +118,42 @@
                     }
                     @if (RightInfo.Contains("," + right + "_import,"))
                     {
-                        <button class="layui-btn" data-type="ImportData"><i
-                            class="layui-icon layui-icon-upload layuiadmin-button-btn"></i>机具扣款退还</button>
+                        <button class="layui-btn" data-type="ChargeImport"><i
+                            class="layui-icon layui-icon-upload layuiadmin-button-btn"></i>导入预扣信息</button>
+
+                        @* <button class="layui-btn" data-type="ImportData"><i
+                            class="layui-icon layui-icon-upload layuiadmin-button-btn"></i>机具扣款退还</button> *@
                     }
                     @* @if (RightInfo.Contains("," + right + "_import,"))
-                    {
+                        {
                         <button class="layui-btn" data-type="ImportDatas"><i
-                            class="layui-icon layui-icon-upload layuiadmin-button-btn"></i>机具回收确认退还</button>
-                    } *@
+                        class="layui-icon layui-icon-upload layuiadmin-button-btn"></i>机具回收确认退还</button>
+                        } *@
                 </div>
 
                 <table id="LAY-list-manage" lay-filter="LAY-list-manage"></table>
                 <script type="text/html" id="table-list-tools">
                     @if (RightInfo.Contains("," + right + "_edit,"))
                     {
-                        <a class="layui-btn layui-btn-normal layui-btn-xs" lay-event="edit"><i class="layui-icon layui-icon-edit"></i>编辑</a>
+                            <a class="layui-btn layui-btn-normal layui-btn-xs" lay-event="edit"><i class="layui-icon layui-icon-edit"></i>编辑</a>
                     }
                     @if (RightInfo.Contains("," + right + "_delete,"))
                     {
-                        <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del"><i class="layui-icon layui-icon-delete"></i>删除</a>
+                            <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del"><i class="layui-icon layui-icon-delete"></i>删除</a>
                     }
                     @if (RightInfo.Contains("," + right + "_edit,"))
                     {
 
                     }
+                    @if (RightInfo.Contains("," + right + "_edit,"))
+                    {
+                        @("{{#if (d.Status == 0){ }}")
+                        <a class="layui-btn layui-btn-normal layui-btn-xs" lay-event="Break"><i class="layui-icon layui-icon-edit"></i>暂停扣款</a>
+                        @("{{#if (d.Status == 3){ }}")
+                        <a class="layui-btn layui-btn-normal layui-btn-xs" lay-event="Start"><i class="layui-icon layui-icon-edit"></i>恢复扣款</a>
+                        @("{{#} }}")
+                    }
+
                 </script>
             </div>
         </div>
@@ -163,13 +178,14 @@
         </div>
         <div class="layui-form-item ml10">
             <div class="layui-input-block">
-                <button type="button" class="layui-btn" onclick="ConfirmImport()">立即导入</button>
+                <button type="button" class="layui-btn" onclick="ConfirmChargeImport()">立即导入</button>
             </div>
         </div>
     </div>
 
     <script src="/layuiadmin/layui/layui.js"></script>
-    <script src="/layuiadmin/modules_main/ToChargeBackRecord_Admin.js?r=@DateTime.Now.ToString("yyyyMMddHHmmss")"></script>
+    <script
+        src="/layuiadmin/modules_main/ToChargeBackRecord_Admin.js?r=@DateTime.Now.ToString("yyyyMMddHHmmss")"></script>
     <script>
 
     </script>

+ 62 - 53
Areas/Admin/Views/MainServer/ToChargeBackRecordSub/Add.cshtml

@@ -6,62 +6,70 @@
 }
 <!DOCTYPE html>
 <html>
+
 <head>
     <meta charset="utf-8">
     <title>待扣款明细(增加)</title>
     <meta name="renderer" content="webkit">
     <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
-    <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
+    <meta name="viewport"
+        content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
     <link rel="stylesheet" href="/layuiadmin/layui/css/layui.css" media="all">
     <script src="/admin/js/jquery-1.10.1.min.js"></script>
     <script src="/admin/js/LAreaData2.js"></script>
 </head>
+
 <body>
 
     <div class="layui-form" lay-filter="layuiadmin-form-useradmin" id="layuiadmin-form-useradmin">
         <input type="hidden" name="ParentId" value="@ParentId" />
 
         <div class="layui-card">
-          <div class="layui-card-body">
-            <div class="layui-tab" lay-filter="mytabbar">
-                <ul class="layui-tab-title">
-                    <li class="layui-this" lay-id="1">基本信息</li>
-                </ul>
-                <div class="layui-tab-content mt20">
-                    <div class="layui-tab-item layui-show">
-<div class="layui-form-item">
-<label class="layui-form-label">待扣金额</label>
-<div class="layui-input-inline">
-<input class="layui-input" type="text" id="ChargeAmount" name="ChargeAmount" maxlength="20" lay-verify="required|" autocomplete="off" placeholder="请输入待扣金额">
-</div>
-</div>
-<div class="layui-form-item layui-form-text">
-<label class="layui-form-label">备注</label>
-<div class="layui-input-block">
-<textarea class="layui-textarea" id="Remark" name="Remark" maxlength="500" lay-verify="" placeholder="请输入备注"></textarea>
-</div>
-</div>
-<div class="layui-form-item">
-<label class="layui-form-label">扣款开始时间</label>
-<div class="layui-input-inline">
-<input class="layui-input" type="text" id="StartDate" name="StartDate" lay-verify="" autocomplete="off" placeholder="请输入扣款开始时间">
-</div>
-</div>
-<div class="layui-form-item">
-<label class="layui-form-label">期数</label>
-<div class="layui-input-inline">
-<input class="layui-input" type="text" id="TimeNumber" name="TimeNumber" maxlength="20" lay-verify="" autocomplete="off" placeholder="请输入期数">
-</div>
-</div>
-
-</div>
-
+            <div class="layui-card-body">
+                <div class="layui-tab" lay-filter="mytabbar">
+                    <ul class="layui-tab-title">
+                        <li class="layui-this" lay-id="1">基本信息</li>
+                    </ul>
+                    <div class="layui-tab-content mt20">
+                        <div class="layui-tab-item layui-show">
+                            <div class="layui-form-item">
+                                <label class="layui-form-label">待扣金额</label>
+                                <div class="layui-input-inline">
+                                    <input class="layui-input" type="text" id="ChargeAmount" name="ChargeAmount"
+                                        maxlength="20" lay-verify="required|" autocomplete="off" placeholder="请输入待扣金额">
+                                </div>
+                            </div>
+                            <div class="layui-form-item layui-form-text">
+                                <label class="layui-form-label">备注</label>
+                                <div class="layui-input-block">
+                                    <textarea class="layui-textarea" id="Remark" name="Remark" maxlength="500"
+                                        lay-verify="" placeholder="请输入备注"></textarea>
+                                </div>
+                            </div>
+                            <div class="layui-form-item">
+                                <label class="layui-form-label">扣款开始时间</label>
+                                <div class="layui-input-inline">
+                                    <input class="layui-input" type="text" id="StartDate" name="StartDate" lay-verify=""
+                                        autocomplete="off" placeholder="请输入扣款开始时间">
+                                </div>
+                            </div>
+                            <div class="layui-form-item">
+                                <label class="layui-form-label">期数</label>
+                                <div class="layui-input-inline">
+                                    <input class="layui-input" type="text" id="TimeNumber" name="TimeNumber"
+                                        maxlength="20" lay-verify="" autocomplete="off" placeholder="请输入期数">
+                                </div>
+                            </div>
+
+                        </div>
+
+                    </div>
+                </div>
+                <div class="layui-form-item layui-hide">
+                    <input type="button" lay-submit lay-filter="LAY-list-front-submit" id="LAY-list-front-submit"
+                        value="确认">
                 </div>
             </div>
-            <div class="layui-form-item layui-hide">
-                <input type="button" lay-submit lay-filter="LAY-list-front-submit" id="LAY-list-front-submit" value="确认">
-            </div>
-          </div>
         </div>
     </div>
 
@@ -70,11 +78,11 @@
     <script src="/other/mybjq/kindeditor-min.js"></script>
     <script src="/other/mybjq/lang/zh_CN.js"></script>
     <script>
-        
-                    
+
+
         //编辑器
         KindEditor.ready(function (K) {
-            
+
         });
 
         var ids = "";
@@ -180,7 +188,7 @@
             });
         }
 
-        
+
         var tree;
         var element;
         var upload;
@@ -200,35 +208,36 @@
             tree = layui.tree;
             element = layui.element;
             upload = layui.upload;
-        
+
             //Hash地址的定位
             var layid = location.hash.replace(/^#test=/, '');
             element.tabChange('test', layid);
             element.on('tab(test)', function (elem) {
                 location.hash = 'test=' + $(this).attr('lay-id');
             });
-    
+
             //日期
             laydate.render({
-elem: '#StartDate',
-type: 'datetime',
-trigger: 'click'
-});
+                elem: '#StartDate',
+                type: 'datetime',
+                trigger: 'click'
+            });
 
 
             //上传文件
-            
+
 
             //穿梭框
-            
+
 
             //TreeView,比如权限管理
-            
+
 
             //省市区
-            
+
         })
 
     </script>
 </body>
+
 </html>

+ 33 - 19
Areas/Admin/Views/MainServer/ToChargeBackRecordSub/Index.cshtml

@@ -6,43 +6,52 @@
 }
 <!DOCTYPE html>
 <html>
+
 <head>
     <meta charset="utf-8">
     <title>待扣款明细</title>
     <meta name="renderer" content="webkit">
     <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
-    <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
+    <meta name="viewport"
+        content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
     <link rel="stylesheet" href="/layuiadmin/layui/css/layui.css" media="all">
     <link rel="stylesheet" href="/layuiadmin/style/admin.css" media="all">
     <script src="/admin/js/jquery-1.10.1.min.js"></script>
     <style>
-        .layui-input-inline{
+        .layui-input-inline {
             width: 175px !important;
         }
-        .layui-form-label{
+
+        .layui-form-label {
             width: 85px !important;
         }
-        .layui-inline{
+
+        .layui-inline {
             margin-right: 0px !important;
         }
-        .w100{
+
+        .w100 {
             width: 100px !important;
         }
-        .ml50{
+
+        .ml50 {
             margin-left: 50px !important;
         }
     </style>
 </head>
+
 <body>
     <div class="layui-fluid">
         <div class="layui-card">
             <div class="layui-form layui-card-header layuiadmin-card-header-auto">
                 <div class="layui-form-item">
                     <div class="layui-inline">
-<label class="layui-form-label">创建时间</label>
-<div class="layui-input-inline">
-<input class="layui-input" type="text" readonly name="CreateDateData" id="CreateDate" placeholder="" autocomplete="off">
-</div></div>
+                        <label class="layui-form-label">创建时间</label>
+                        <div class="layui-input-inline">
+                            <input class="layui-input" type="text" readonly name="CreateDateData" id="CreateDate"
+                                placeholder="" autocomplete="off">
+                        </div>
+                    </div>
                     <div class="layui-inline ml50">
                         <button class="layui-btn" lay-submit lay-filter="LAY-list-front-search">
                             <i class="layui-icon layui-icon-search layuiadmin-button-btn"></i>查询
@@ -58,32 +67,35 @@
                 <div style="padding-bottom: 10px;">
                     @if (RightInfo.Contains("," + right + "_add,"))
                     {
-                        <button class="layui-btn" data-type="add"><i class="layui-icon layui-icon-add-1 layuiadmin-button-btn"></i>添加</button>
+                        <button class="layui-btn" data-type="add"><i
+                            class="layui-icon layui-icon-add-1 layuiadmin-button-btn"></i>添加</button>
                     }
                     @if (RightInfo.Contains("," + right + "_delete,"))
                     {
-                        <button class="layui-btn" data-type="batchdel"><i class="layui-icon layui-icon-delete layuiadmin-button-btn"></i>删除</button>
+                        <button class="layui-btn" data-type="batchdel"><i
+                            class="layui-icon layui-icon-delete layuiadmin-button-btn"></i>删除</button>
                     }
                     @if (RightInfo.Contains("," + right + "_edit,"))
                     {
-                    <button class="layui-btn" data-type="ExportExcel"><i class="layui-icon layui-icon-export layuiadmin-button-btn"></i>导出</button>
+                        <button class="layui-btn" data-type="ExportExcel"><i
+                            class="layui-icon layui-icon-export layuiadmin-button-btn"></i>导出</button>
 
                     }
                 </div>
-                
+
                 <table id="LAY-list-manage" lay-filter="LAY-list-manage"></table>
                 <script type="text/html" id="table-list-tools">
                     @if (RightInfo.Contains("," + right + "_edit,"))
                     {
-                    <a class="layui-btn layui-btn-normal layui-btn-xs" lay-event="edit"><i class="layui-icon layui-icon-edit"></i>编辑</a>
+                        <a class="layui-btn layui-btn-normal layui-btn-xs" lay-event="edit"><i class="layui-icon layui-icon-edit"></i>编辑</a>
                     }
                     @if (RightInfo.Contains("," + right + "_delete,"))
                     {
-                    <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del"><i class="layui-icon layui-icon-delete"></i>删除</a>
+                        <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del"><i class="layui-icon layui-icon-delete"></i>删除</a>
                     }
                     @if (RightInfo.Contains("," + right + "_edit,"))
                     {
-                    
+
                     }
                 </script>
             </div>
@@ -115,10 +127,12 @@
     </div>
 
     <script src="/layuiadmin/layui/layui.js"></script>
-    <script src="/layuiadmin/modules/ToChargeBackRecordSub_Admin.js?r=@DateTime.Now.ToString("yyyyMMddHHmmss")"></script>
+    <script
+        src="/layuiadmin/modules_main/ToChargeBackRecordSub_Admin.js?r=@DateTime.Now.ToString("yyyyMMddHHmmss")"></script>
     <script>
-        var ParentId='@ParentId';
+        var ParentId = '@ParentId';
 
     </script>
 </body>
+
 </html>

+ 152 - 68
Areas/Admin/Views/MainServer/ToChargeByStage/Add.cshtml

@@ -1,77 +1,97 @@
 @{
     string RightInfo = ViewBag.RightInfo as string;
     string right = ViewBag.right as string;
-    
 }
+
 <!DOCTYPE html>
 <html>
+
 <head>
     <meta charset="utf-8">
     <title>分期扣款信息(增加)</title>
     <meta name="renderer" content="webkit">
     <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
-    <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
+    <meta name="viewport"
+        content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
     <link rel="stylesheet" href="/layuiadmin/layui/css/layui.css" media="all">
     <script src="/admin/js/jquery-1.10.1.min.js"></script>
     <script src="/admin/js/LAreaData2.js"></script>
 </head>
+
 <body>
 
     <div class="layui-form" lay-filter="layuiadmin-form-useradmin" id="layuiadmin-form-useradmin">
-        
+
         <div class="layui-card">
-          <div class="layui-card-body">
-            <div class="layui-tab" lay-filter="mytabbar">
-                <ul class="layui-tab-title">
-                    <li class="layui-this" lay-id="1">基本信息</li>
-                </ul>
-                <div class="layui-tab-content mt20">
-                    <div class="layui-tab-item layui-show">
-<div class="layui-form-item">
-<label class="layui-form-label">创客</label>
-<div class="layui-input-inline">
-<input class="layui-input" type="text" id="UserId" name="UserId" maxlength="20" lay-verify="" autocomplete="off" placeholder="请输入创客">
-</div>
-</div>
-<div class="layui-form-item">
-<label class="layui-form-label">待扣金额</label>
-<div class="layui-input-inline">
-<input class="layui-input" type="text" id="ChargeAmount" name="ChargeAmount" maxlength="20" lay-verify="required|" autocomplete="off" placeholder="请输入待扣金额">
-</div>
-</div>
-<div class="layui-form-item layui-form-text">
-<label class="layui-form-label">备注</label>
-<div class="layui-input-block">
-<textarea class="layui-textarea" id="Remark" name="Remark" maxlength="500" lay-verify="" placeholder="请输入备注"></textarea>
-</div>
-</div>
-<div class="layui-form-item">
-<label class="layui-form-label">扣款开始时间</label>
-<div class="layui-input-inline">
-<input class="layui-input" type="text" id="StartDate" name="StartDate" lay-verify="" autocomplete="off" placeholder="请输入扣款开始时间">
-</div>
-</div>
-<div class="layui-form-item">
-<label class="layui-form-label">期数</label>
-<div class="layui-input-inline">
-<input class="layui-input" type="text" id="TimeNumber" name="TimeNumber" maxlength="20" lay-verify="" autocomplete="off" placeholder="请输入期数">
-</div>
-</div>
-<div class="layui-form-item">
-<label class="layui-form-label">扣款总金额</label>
-<div class="layui-input-inline">
-<input class="layui-input" type="text" id="TotalAmount" name="TotalAmount" maxlength="20" lay-verify="" autocomplete="off" placeholder="请输入扣款总金额">
-</div>
-</div>
-
-</div>
+            <div class="layui-card-body">
+                <div class="layui-tab" lay-filter="mytabbar">
+                    <ul class="layui-tab-title">
+                        <li class="layui-this" lay-id="1">基本信息</li>
+                    </ul>
+                    <div class="layui-tab-content mt20">
+                        <div class="layui-tab-item layui-show">
+                            <div class="layui-form-item">
+                                <label class="layui-form-label">创客编号</label>
+                                <div class="layui-input-inline">
+                                    <input class="layui-input" type="text" id="MakerCode" name="MakerCode"
+                                        maxlength="20" lay-verify="" autocomplete="off" placeholder="请输入创客编号">
+                                </div>
+                            </div>
+                            <div class="layui-form-item">
+                                <label class="layui-form-label">创客姓名</label>
+                                <div class="layui-input-inline">
+                                    <input class="layui-input" type="text" id="MakerName" name="MakerName"
+                                        maxlength="20" lay-verify="" autocomplete="off" placeholder="请输入创客姓名">
+                                </div>
+                            </div>
+                            @* <div class="layui-form-item">
+                                <label class="layui-form-label">待扣金额</label>
+                                <div class="layui-input-inline">
+                                <input class="layui-input" type="text" id="ChargeAmount" name="ChargeAmount"
+                                maxlength="20" lay-verify="required|" autocomplete="off" placeholder="请输入待扣金额">
+                                </div>
+                                </div> *@
+                            <div class="layui-form-item layui-form-text">
+                                <label class="layui-form-label">备注</label>
+                                <div class="layui-input-block">
+                                    <textarea class="layui-textarea" id="Remark" name="Remark" maxlength="500"
+                                        lay-verify="" placeholder="请输入备注"></textarea>
+                                </div>
+                            </div>
+                            <div class="layui-form-item">
+                                <label class="layui-form-label">扣款开始时间</label>
+                                <div class="layui-input-inline">
+                                    <input class="layui-input" type="text" id="StartDate" name="StartDate" lay-verify=""
+                                        autocomplete="off" placeholder="请输入扣款开始时间">
+                                </div>
+                            </div>
+                            <div class="layui-form-item">
+                                <label class="layui-form-label">扣款总金额</label>
+                                <div class="layui-input-inline">
+                                    <input class="layui-input" type="text" id="TotalAmount" name="TotalAmount"
+                                        onkeyup="CheckAmount(this)" maxlength="20" lay-verify="" autocomplete="off"
+                                        placeholder="请输入扣款总金额">
+                                </div>
+                            </div>
+                            <div class="layui-form-item">
+                                <label class="layui-form-label">期数</label>
+                                <div class="layui-input-inline">
+                                    <input class="layui-input" type="number" id="TimeNumber" name="TimeNumber"
+                                        onkeyup="CheckTimeNumber(this)" maxlength="50" lay-verify="" autocomplete="off"
+                                        placeholder="请输入期数">
+                                </div>
+                            </div>
+                            <div id="SubList">
+                            </div>
+                        </div>
 
+                    </div>
+                </div>
+                <div class="layui-form-item layui-hide">
+                    <input type="button" lay-submit lay-filter="LAY-list-front-submit" id="LAY-list-front-submit"
+                        value="确认">
                 </div>
             </div>
-            <div class="layui-form-item layui-hide">
-                <input type="button" lay-submit lay-filter="LAY-list-front-submit" id="LAY-list-front-submit" value="确认">
-            </div>
-          </div>
         </div>
     </div>
 
@@ -80,11 +100,72 @@
     <script src="/other/mybjq/kindeditor-min.js"></script>
     <script src="/other/mybjq/lang/zh_CN.js"></script>
     <script>
-        
-                    
+
+        function CheckAmount(info) {
+            
+        }
+
+        function CheckTimeNumber(obj) {
+            var totalAmount = $('#TotalAmount').val();//扣款总金额
+            count = obj.value;
+            if (count > 12 || totalAmount != amount) {
+                layer.msg('最多可分12期');
+                obj.value = '';
+                $("#SubList").html("");
+                return;
+            }
+            chargeAmount = (totalAmount / count).toFixed(2);
+            leave = (totalAmount - (chargeAmount * count)).toFixed(2);
+            console.log(leave);
+            leaveAmount = chargeAmount + leave;
+            console.log(leaveAmount);
+            num = 0;
+            nums = 0;
+            var html = '';
+            for (var i = 0; i < count; i++) {
+                num = num + 1;
+                numInfo = "第" + num + "期";
+                html += '<div class="layui-form-item">' +
+                    '<label class="layui-form-label"> ' + numInfo + '</label >' +
+                    '<div class="layui-input-inline">' +
+                    '<input class="layui-input" type="text" id="ChargeAmount' + num + '" name="ChargeAmount" maxlength="50" lay-verify="" autocomplete="off" placeholder="" readonly>' +
+                    '</div>' +
+                    '<label class="layui-form-label">请输入扣款开始时间</label>' +
+                    '<div class="layui-input-inline"><input class="layui-input" type="text" id="StartDates' + num + '" name="StartDates"lay-verify="" autocomplete="off" placeholder="请输入扣款开始时间"></div>' +
+                    '</div >';
+            }
+            $('#SubList').html(html);
+            for (var i = 0; i < count; i++) {
+                nums = nums + 1;
+                if (nums < count) {
+                    $('#ChargeAmount' + nums).val(chargeAmount);
+                }
+                else {
+                    $('#ChargeAmount' + nums).val(leaveAmount);
+                }
+                var time = $('#StartDate').val() + '-20 00:00:00';
+
+                var dateTime = new Date(time);
+                console.log(dateTime);
+                dateTime = dateTime.setMonth(dateTime.getMonth() + nums - 1);
+                console.log(dateTime);
+                dateTime = new Date(dateTime);
+
+                console.log(time);
+                laydate.render({
+                    elem: '#StartDates' + nums,
+                    type: 'datetime',
+                    trigger: 'click',
+                    value: dateTime
+                });
+            }
+            form.render();
+        }
+
+
         //编辑器
         KindEditor.ready(function (K) {
-            
+
         });
 
         var ids = "";
@@ -190,55 +271,58 @@
             });
         }
 
-        
+
         var tree;
         var element;
         var upload;
+        var laydate;
+        var form;
         layui.config({
             base: '/layuiadmin/' //静态资源所在路径
         }).extend({
             index: 'lib/index' //主入口模块
         }).use(['index', 'form', 'upload', 'layedit', 'laydate', 'element', 'croppers', 'transfer', 'tree', 'util'], function () {
             var $ = layui.$
-                , form = layui.form
                 , layer = layui.layer
                 , layedit = layui.layedit
-                , laydate = layui.laydate
                 , croppers = layui.croppers
                 , transfer = layui.transfer
                 , util = layui.util;
+            form = layui.form;
             tree = layui.tree;
             element = layui.element;
             upload = layui.upload;
-        
+            laydate = layui.laydate;
+
             //Hash地址的定位
             var layid = location.hash.replace(/^#test=/, '');
             element.tabChange('test', layid);
             element.on('tab(test)', function (elem) {
                 location.hash = 'test=' + $(this).attr('lay-id');
             });
-    
+
             //日期
             laydate.render({
-elem: '#StartDate',
-type: 'datetime',
-trigger: 'click'
-});
+                elem: '#StartDate',
+                type: 'month',
+                trigger: 'click'
+            });
 
 
             //上传文件
-            
+
 
             //穿梭框
-            
+
 
             //TreeView,比如权限管理
-            
+
 
             //省市区
-            
+
         })
 
     </script>
 </body>
+
 </html>

+ 84 - 66
Areas/Admin/Views/MainServer/ToChargeByStage/Edit.cshtml

@@ -1,80 +1,97 @@
 @using MySystem.Models;
-@{ToChargeByStage editData = ViewBag.data as ToChargeByStage;}
+@{
+    ToChargeByStage editData = ViewBag.data as ToChargeByStage;
+}
 @{
     string RightInfo = ViewBag.RightInfo as string;
     string right = ViewBag.right as string;
-    
+
 }
 <!DOCTYPE html>
 <html>
+
 <head>
     <meta charset="utf-8">
     <title>分期扣款信息(修改)</title>
     <meta name="renderer" content="webkit">
     <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
-    <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
+    <meta name="viewport"
+        content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
     <link rel="stylesheet" href="/layuiadmin/layui/css/layui.css" media="all">
     <script src="/admin/js/jquery-1.10.1.min.js"></script>
     <script src="/admin/js/LAreaData2.js"></script>
 </head>
+
 <body>
 
     <div class="layui-form" lay-filter="layuiadmin-form-useradmin" id="layuiadmin-form-useradmin">
         <input type="hidden" name="Id" value="@editData.Id" />
-        
+
         <div class="layui-card">
-          <div class="layui-card-body">
-            <div class="layui-tab" lay-filter="mytabbar">
-                <ul class="layui-tab-title">
-                    <li class="layui-this" lay-id="1">基本信息</li>
-                </ul>
-                <div class="layui-tab-content mt20">
-                    <div class="layui-tab-item layui-show">
-<div class="layui-form-item">
-<label class="layui-form-label">创客</label>
-<div class="layui-input-inline">
-<input class="layui-input" type="text" id="UserId" name="UserId" value="@editData.UserId" maxlength="20" lay-verify="" autocomplete="off" placeholder="请输入创客">
-</div>
-</div>
-<div class="layui-form-item">
-<label class="layui-form-label">待扣金额</label>
-<div class="layui-input-inline">
-<input class="layui-input" type="text" id="ChargeAmount" name="ChargeAmount" value="@editData.ChargeAmount" maxlength="20" lay-verify="required|" autocomplete="off" placeholder="请输入待扣金额">
-</div>
-</div>
-<div class="layui-form-item layui-form-text">
-<label class="layui-form-label">备注</label>
-<div class="layui-input-block">
-<textarea class="layui-textarea" id="Remark" name="Remark" maxlength="500" lay-verify="" placeholder="请输入备注">@editData.Remark</textarea>
-</div>
-</div>
-<div class="layui-form-item">
-<label class="layui-form-label">扣款开始时间</label>
-<div class="layui-input-inline">
-<input class="layui-input" type="text" id="StartDate" name="StartDate" value="@(editData.StartDate == null ? "" : editData.StartDate.Value.ToString("yyyy-MM-dd HH:mm:ss"))" lay-verify="" autocomplete="off" placeholder="请输入扣款开始时间">
-</div>
-</div>
-<div class="layui-form-item">
-<label class="layui-form-label">期数</label>
-<div class="layui-input-inline">
-<input class="layui-input" type="text" id="TimeNumber" name="TimeNumber" value="@editData.TimeNumber" maxlength="20" lay-verify="" autocomplete="off" placeholder="请输入期数">
-</div>
-</div>
-<div class="layui-form-item">
-<label class="layui-form-label">扣款总金额</label>
-<div class="layui-input-inline">
-<input class="layui-input" type="text" id="TotalAmount" name="TotalAmount" value="@editData.TotalAmount" maxlength="20" lay-verify="" autocomplete="off" placeholder="请输入扣款总金额">
-</div>
-</div>
-
-</div>
+            <div class="layui-card-body">
+                <div class="layui-tab" lay-filter="mytabbar">
+                    <ul class="layui-tab-title">
+                        <li class="layui-this" lay-id="1">基本信息</li>
+                    </ul>
+                    <div class="layui-tab-content mt20">
+                        <div class="layui-tab-item layui-show">
+                            <div class="layui-form-item">
+                                <label class="layui-form-label">创客</label>
+                                <div class="layui-input-inline">
+                                    <input class="layui-input" type="text" id="UserId" name="UserId"
+                                        value="@editData.UserId" maxlength="20" lay-verify="" autocomplete="off"
+                                        placeholder="请输入创客">
+                                </div>
+                            </div>
+                            <div class="layui-form-item">
+                                <label class="layui-form-label">待扣金额</label>
+                                <div class="layui-input-inline">
+                                    <input class="layui-input" type="text" id="ChargeAmount" name="ChargeAmount"
+                                        value="@editData.ChargeAmount" maxlength="20" lay-verify="required|"
+                                        autocomplete="off" placeholder="请输入待扣金额">
+                                </div>
+                            </div>
+                            <div class="layui-form-item layui-form-text">
+                                <label class="layui-form-label">备注</label>
+                                <div class="layui-input-block">
+                                    <textarea class="layui-textarea" id="Remark" name="Remark" maxlength="500"
+                                        lay-verify="" placeholder="请输入备注">@editData.Remark</textarea>
+                                </div>
+                            </div>
+                            <div class="layui-form-item">
+                                <label class="layui-form-label">扣款开始时间</label>
+                                <div class="layui-input-inline">
+                                    <input class="layui-input" type="text" id="StartDate" name="StartDate"
+                                        value="@(editData.StartDate == null ? "" : editData.StartDate.Value.ToString("yyyy-MM-dd HH:mm:ss"))"
+                                        lay-verify="" autocomplete="off" placeholder="请输入扣款开始时间">
+                                </div>
+                            </div>
+                            <div class="layui-form-item">
+                                <label class="layui-form-label">期数</label>
+                                <div class="layui-input-inline">
+                                    <input class="layui-input" type="text" id="TimeNumber" name="TimeNumber"
+                                        value="@editData.TimeNumber" maxlength="20" lay-verify="" autocomplete="off"
+                                        placeholder="请输入期数">
+                                </div>
+                            </div>
+                            <div class="layui-form-item">
+                                <label class="layui-form-label">扣款总金额</label>
+                                <div class="layui-input-inline">
+                                    <input class="layui-input" type="text" id="TotalAmount" name="TotalAmount"
+                                        value="@editData.TotalAmount" maxlength="20" lay-verify="" autocomplete="off"
+                                        placeholder="请输入扣款总金额">
+                                </div>
+                            </div>
+
+                        </div>
 
+                    </div>
+                </div>
+                <div class="layui-form-item layui-hide">
+                    <input type="button" lay-submit lay-filter="LAY-list-front-submit" id="LAY-list-front-submit"
+                        value="确认">
                 </div>
             </div>
-            <div class="layui-form-item layui-hide">
-                <input type="button" lay-submit lay-filter="LAY-list-front-submit" id="LAY-list-front-submit" value="确认">
-            </div>
-          </div>
         </div>
     </div>
 
@@ -83,11 +100,11 @@
     <script src="/other/mybjq/kindeditor-min.js"></script>
     <script src="/other/mybjq/lang/zh_CN.js"></script>
     <script>
-        
-        
+
+
         //编辑器
         KindEditor.ready(function (K) {
-            
+
         });
 
         var ids = "";
@@ -212,35 +229,36 @@
             tree = layui.tree;
             element = layui.element;
             upload = layui.upload;
-        
+
             //Hash地址的定位
             var layid = location.hash.replace(/^#test=/, '');
             element.tabChange('test', layid);
             element.on('tab(test)', function (elem) {
                 location.hash = 'test=' + $(this).attr('lay-id');
             });
-    
+
             //日期
             laydate.render({
-elem: '#StartDate',
-type: 'datetime',
-trigger: 'click'
-});
+                elem: '#StartDate',
+                type: 'datetime',
+                trigger: 'click'
+            });
 
 
             //上传文件
-            
+
 
             //穿梭框
-            
+
 
             //TreeView,比如权限管理
-            
+
 
             //省市区
-            
+
         })
 
     </script>
 </body>
+
 </html>

+ 69 - 30
Areas/Admin/Views/MainServer/ToChargeByStage/Index.cshtml

@@ -1,56 +1,91 @@
 @{
     string RightInfo = ViewBag.RightInfo as string;
     string right = ViewBag.right as string;
-    
+
 }
 <!DOCTYPE html>
 <html>
+
 <head>
     <meta charset="utf-8">
     <title>分期扣款信息</title>
     <meta name="renderer" content="webkit">
     <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
-    <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
+    <meta name="viewport"
+        content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
     <link rel="stylesheet" href="/layuiadmin/layui/css/layui.css" media="all">
     <link rel="stylesheet" href="/layuiadmin/style/admin.css" media="all">
     <script src="/admin/js/jquery-1.10.1.min.js"></script>
     <style>
-        .layui-input-inline{
+        .layui-input-inline {
             width: 175px !important;
         }
-        .layui-form-label{
+
+        .layui-form-label {
             width: 85px !important;
         }
-        .layui-inline{
+
+        .layui-inline {
             margin-right: 0px !important;
         }
-        .w100{
+
+        .w100 {
             width: 100px !important;
         }
-        .ml50{
+
+        .ml50 {
             margin-left: 50px !important;
         }
     </style>
 </head>
+
 <body>
     <div class="layui-fluid">
         <div class="layui-card">
             <div class="layui-form layui-card-header layuiadmin-card-header-auto">
                 <div class="layui-form-item">
+                    @* <div class="layui-inline">
+                        <label class="layui-form-label">创客</label>
+                        <div class="layui-input-inline w100">
+                            <input class="layui-input" type="text" name="sUserId" id="sUserId" placeholder=""
+                                autocomplete="off">
+                        </div>
+                        <div class="layui-form-mid">-</div>
+                        <div class="layui-input-inline w100">
+                            <input class="layui-input" type="text" name="eUserId" id="eUserId" placeholder=""
+                                autocomplete="off">
+                        </div>
+                    </div> *@
+                    <div class="layui-inline">
+                        <label class="layui-form-label">创客编号</label>
+                        <div class="layui-input-inline">
+                            <input class="layui-input" type="text" name="MakerCode" placeholder="" autocomplete="off">
+                        </div>
+                    </div>
                     <div class="layui-inline">
-<label class="layui-form-label">创客</label>
-<div class="layui-input-inline w100">
-<input class="layui-input" type="text" name="sUserId" id="sUserId" placeholder="" autocomplete="off">
-</div><div class="layui-form-mid">-</div>
-<div class="layui-input-inline w100">
-<input class="layui-input" type="text" name="eUserId" id="eUserId" placeholder="" autocomplete="off">
-</div>
-</div>
-<div class="layui-inline">
-<label class="layui-form-label">创建时间</label>
-<div class="layui-input-inline">
-<input class="layui-input" type="text" readonly name="CreateDateData" id="CreateDate" placeholder="" autocomplete="off">
-</div></div>
+                        <label class="layui-form-label">创客姓名</label>
+                        <div class="layui-input-inline">
+                            <input class="layui-input" type="text" name="SeoTitle" placeholder="" autocomplete="off">
+                        </div>
+                    </div>
+                    <div class="layui-inline">
+                        <label class="layui-form-label">扣款状态</label>
+                        <div class="layui-input-inline">
+                            <select id="StatusSelect" name="StatusSelect" lay-search="">
+                                <option value="">全部...</option>
+                                <option value="0">待扣款</option>
+                                <option value="2">扣款中</option>
+                                <option value="1">已扣款</option>
+                            </select>
+                        </div>
+                    </div>
+                    <div class="layui-inline">
+                        <label class="layui-form-label">创建时间</label>
+                        <div class="layui-input-inline">
+                            <input class="layui-input" type="text" readonly name="CreateDateData" id="CreateDate"
+                                placeholder="" autocomplete="off">
+                        </div>
+                    </div>
                     <div class="layui-inline ml50">
                         <button class="layui-btn" lay-submit lay-filter="LAY-list-front-search">
                             <i class="layui-icon layui-icon-search layuiadmin-button-btn"></i>查询
@@ -66,33 +101,36 @@
                 <div style="padding-bottom: 10px;">
                     @if (RightInfo.Contains("," + right + "_add,"))
                     {
-                        <button class="layui-btn" data-type="add"><i class="layui-icon layui-icon-add-1 layuiadmin-button-btn"></i>添加</button>
+                        <button class="layui-btn" data-type="add"><i
+                            class="layui-icon layui-icon-add-1 layuiadmin-button-btn"></i>添加</button>
                     }
                     @if (RightInfo.Contains("," + right + "_delete,"))
                     {
-                        <button class="layui-btn" data-type="batchdel"><i class="layui-icon layui-icon-delete layuiadmin-button-btn"></i>删除</button>
+                        <button class="layui-btn" data-type="batchdel"><i
+                            class="layui-icon layui-icon-delete layuiadmin-button-btn"></i>删除</button>
                     }
                     @if (RightInfo.Contains("," + right + "_edit,"))
                     {
-                    <button class="layui-btn" data-type="ExportExcel"><i class="layui-icon layui-icon-export layuiadmin-button-btn"></i>导出</button>
+                        <button class="layui-btn" data-type="ExportExcel"><i
+                            class="layui-icon layui-icon-export layuiadmin-button-btn"></i>导出</button>
 
                     }
                 </div>
-                
+
                 <table id="LAY-list-manage" lay-filter="LAY-list-manage"></table>
                 <script type="text/html" id="table-list-tools">
                     @if (RightInfo.Contains("," + right + "_edit,"))
                     {
-                    <a class="layui-btn layui-btn-normal layui-btn-xs" lay-event="edit"><i class="layui-icon layui-icon-edit"></i>编辑</a>
+                        <a class="layui-btn layui-btn-normal layui-btn-xs" lay-event="edit"><i class="layui-icon layui-icon-edit"></i>编辑</a>
                     }
                     @if (RightInfo.Contains("," + right + "_delete,"))
                     {
-                    <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del"><i class="layui-icon layui-icon-delete"></i>删除</a>
+                        <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del"><i class="layui-icon layui-icon-delete"></i>删除</a>
                     }
                     @if (RightInfo.Contains("," + right + "_edit,"))
                     {
-                    <a class="layui-btn layui-btn-normal layui-btn-xs" lay-href="/Admin/ToChargeBackRecordSub/Index?right=@right&ParentId=@("{{d.Id}}")">待扣款明细</a>
-
+                        <a class="layui-btn layui-btn-normal layui-btn-xs" lay-href="/Admin/ToChargeBackRecordSub/Index?right=@right&ParentId=@("{{d.Id}}")">待扣款明细</a>
+                    @* 创客编号、创客姓名、手机号、创建时间、扣款总金额、扣款开始时间、扣款期数、已扣金额、扣款状态(待扣款/扣款中/已扣款)、备注、操作人、操作(明细、删除、修改预扣金额) *@
                     }
                 </script>
             </div>
@@ -124,9 +162,10 @@
     </div>
 
     <script src="/layuiadmin/layui/layui.js"></script>
-    <script src="/layuiadmin/modules/ToChargeByStage_Admin.js?r=@DateTime.Now.ToString("yyyyMMddHHmmss")"></script>
+    <script src="/layuiadmin/modules_main/ToChargeByStage_Admin.js?r=@DateTime.Now.ToString("yyyyMMddHHmmss")"></script>
     <script>
-        
+
     </script>
 </body>
+
 </html>

BIN
wwwroot/.DS_Store


+ 59 - 59
wwwroot/layuiadmin/modules_main/ToChargeBackRecordSub_Admin.js

@@ -1,4 +1,4 @@
-var ExcelData,ExcelKind;
+var ExcelData, ExcelKind;
 function ConfirmImport() {
     $.ajax({
         type: "POST",
@@ -31,49 +31,49 @@ layui.config({
     //- 筛选条件-日期
     var laydate = layui.laydate;
     var layCreateDate = laydate.render({
-elem: '#CreateDate',
-type: 'datetime',
-range: true,
-trigger: 'click',
-change: function (value, date, endDate) {
-var op = true;
-if (date.year == endDate.year && endDate.month - date.month <= 1) {
-if (endDate.month - date.month == 1 && endDate.date > date.date) {
-op = false;
-layCreateDate.hint('日期范围请不要超过1个月');
-setTimeout(function () {
-$(".laydate-btns-confirm").addClass("laydate-disabled");
-}, 1);
-}
-} else {
-op = false;
-layCreateDate.hint('日期范围请不要超过1个月');
-setTimeout(function () {
-$(".laydate-btns-confirm").addClass("laydate-disabled");
-}, 1);
-}
-if (op) {
-$('#CreateDate').val(value);
-}
-}
-});
+        elem: '#CreateDate',
+        type: 'date',
+        range: true,
+        trigger: 'click',
+        change: function (value, date, endDate) {
+            var op = true;
+            if (date.year == endDate.year && endDate.month - date.month <= 1) {
+                if (endDate.month - date.month == 1 && endDate.date > date.date) {
+                    op = false;
+                    layCreateDate.hint('日期范围请不要超过1个月');
+                    setTimeout(function () {
+                        $(".laydate-btns-confirm").addClass("laydate-disabled");
+                    }, 1);
+                }
+            } else {
+                op = false;
+                layCreateDate.hint('日期范围请不要超过1个月');
+                setTimeout(function () {
+                    $(".laydate-btns-confirm").addClass("laydate-disabled");
+                }, 1);
+            }
+            if (op) {
+                $('#CreateDate').val(value);
+            }
+        }
+    });
 
 
     //excel导入
-    excel = layui.excel;        
+    excel = layui.excel;
     $('#ExcelFile').change(function (e) {
         var files = e.target.files;
-        excel.importExcel(files, { }, function (data) {
+        excel.importExcel(files, {}, function (data) {
             ExcelData = data[0].sheet1;
         });
     });
 
     //监听单元格编辑
-    table.on('edit(LAY-list-manage)', function(obj){
+    table.on('edit(LAY-list-manage)', function (obj) {
         var value = obj.value //得到修改后的值
-        ,data = obj.data //得到所在行所有键值
-        ,field = obj.field; //得到字段
-        if(field == "Sort"){
+            , data = obj.data //得到所在行所有键值
+            , field = obj.field; //得到字段
+        if (field == "Sort") {
             $.ajax({
                 type: "POST",
                 url: "/Admin/ToChargeBackRecordSub/Sort?r=" + Math.random(1),
@@ -84,20 +84,20 @@ $('#CreateDate').val(value);
             });
         }
     });
-    
+
     //列表数据
     table.render({
         elem: '#LAY-list-manage'
         , url: '/Admin/ToChargeBackRecordSub/IndexData' //模拟接口
         , cols: [[
             { type: 'checkbox', fixed: 'left' }
-    		, {field:'Id', fixed: 'left', title:'ID', width:80, sort: true, unresize: true}
-            ,{field:'CreateDate', width: 200, title:'创建时间', sort: true}
-,{field:'ChargeAmount', width: 200, title:'待扣金额', sort: true}
-,{field:'StartDate', width: 200, title:'扣款开始时间', sort: true}
-,{field:'TimeNumber', width: 200, title:'期数', sort: true}
+            , { field: 'Id', fixed: 'left', title: 'ID', width: 80, sort: true, unresize: true }
+            , { field: 'CreateDate', width: 200, title: '创建时间', sort: true }
+            , { field: 'ChargeAmount', width: 200, title: '待扣金额', sort: true }
+            , { field: 'StartDate', width: 200, title: '扣款开始时间', sort: true }
+            , { field: 'TimeNumber', width: 200, title: '期数', sort: true }
 
-            , {field:'Sort', fixed: 'right', title:'排序', width:80, edit: 'text'}
+            , { field: 'Sort', fixed: 'right', title: '排序', width: 80, edit: 'text' }
             , { title: '操作', align: 'center', fixed: 'right', toolbar: '#table-list-tools' }
         ]]
         , where: {
@@ -123,7 +123,7 @@ $('#CreateDate').val(value);
                     data: "Id=" + data.Id,
                     dataType: "text",
                     success: function (data) {
-                        if (data == "success") {                            
+                        if (data == "success") {
                             obj.del();
                             layer.close(index);
                         } else {
@@ -146,20 +146,20 @@ $('#CreateDate').val(value);
                         , submitID = 'LAY-list-front-submit'
                         , submit = layero.find('iframe').contents().find('#' + submitID);
 
-                    setTimeout(function () { 
+                    setTimeout(function () {
                         layero.find('iframe').contents().find('.layui-tab-item').each(function (i) {
                             var errObj = $(this).find('.layui-form-danger');
                             if (errObj.length > 0) {
                                 iframeWindow.element.tabChange('mytabbar', String(i + 1));
                                 submit.click();
                             }
-                        });                        
+                        });
                     }, 300);
 
-                    
-                    
-                    
-                    
+
+
+
+
 
                     //监听提交
                     iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) {
@@ -170,7 +170,7 @@ $('#CreateDate').val(value);
                         }
                         //提交 Ajax 成功后,静态更新表格中的数据
                         //$.ajax({});
-                        
+
                         $.ajax({
                             type: "POST",
                             url: "/Admin/ToChargeBackRecordSub/Edit?r=" + Math.random(1),
@@ -263,20 +263,20 @@ $('#CreateDate').val(value);
                         , submitID = 'LAY-list-front-submit'
                         , submit = layero.find('iframe').contents().find('#' + submitID);
 
-                    setTimeout(function () { 
+                    setTimeout(function () {
                         layero.find('iframe').contents().find('.layui-tab-item').each(function (i) {
                             var errObj = $(this).find('.layui-form-danger');
                             if (errObj.length > 0) {
                                 iframeWindow.element.tabChange('mytabbar', String(i + 1));
                                 submit.click();
                             }
-                        });                        
+                        });
                     }, 300);
 
-                    
-                    
-                    
-                    
+
+
+
+
 
                     //监听提交
                     iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) {
@@ -287,7 +287,7 @@ $('#CreateDate').val(value);
                         }
                         //提交 Ajax 成功后,静态更新表格中的数据
                         //$.ajax({});
-                        
+
                         $.ajax({
                             type: "POST",
                             url: "/Admin/ToChargeBackRecordSub/Add?r=" + Math.random(1),
@@ -344,9 +344,9 @@ $('#CreateDate').val(value);
         , Open: function () {
             var checkStatus = table.checkStatus('LAY-list-manage')
                 , data = checkStatus.data; //得到选中的数据
-            if(data.length < 1){
+            if (data.length < 1) {
                 parent.layer.msg("请选择要开启的项");
-            }else{
+            } else {
                 var ids = "";
                 $.each(data, function (index, value) {
                     ids += data[index].Id + ",";
@@ -373,9 +373,9 @@ $('#CreateDate').val(value);
         , Close: function () {
             var checkStatus = table.checkStatus('LAY-list-manage')
                 , data = checkStatus.data; //得到选中的数据
-            if(data.length < 1){
+            if (data.length < 1) {
                 parent.layer.msg("请选择要关闭的项");
-            }else{
+            } else {
                 var ids = "";
                 $.each(data, function (index, value) {
                     ids += data[index].Id + ",";

+ 45 - 3
wwwroot/layuiadmin/modules_main/ToChargeBackRecord_Admin.js

@@ -1,4 +1,29 @@
 var ExcelData, ExcelKind;
+//导入预扣信息
+function ConfirmChargeImport() {
+    $.ajax({
+        type: "POST",
+        url: "/Admin/ToChargeBackRecord/ChargeImport?r=" + Math.random(1),
+        data: "ExcelData=" + encodeURIComponent(JSON.stringify(ExcelData)),
+        dataType: "text",
+        success: function (data) {
+            if (data == "success") {
+                layer.msg("导入成功", { time: 2000 }, function () {
+                    window.location.reload();
+                });
+            } else if (data.indexOf("Warning") == 0) {
+                var datalist = data.split('|');
+                console.log(datalist);
+                layer.alert(datalist[1], { time: 20000 }, function () {
+                    window.location.reload();
+                });
+            } else {
+                layer.msg(data);
+            }
+        }
+    });
+}
+
 //机具扣款退还
 function ConfirmImport() {
     $.ajax({
@@ -123,13 +148,17 @@ layui.config({
         , cols: [[
             { type: 'checkbox', fixed: 'left' }
             , { field: 'Id', fixed: 'left', title: 'ID', width: 80, sort: true, unresize: true }
-            , { field: 'UserIdMakerCode', width: 200, title: '创客创客编号', sort: true }
+            , { field: 'UserIdMakerCode', width: 200, title: '创客编号', sort: true }
             , { field: 'UserIdRealName', width: 200, title: '创客真实姓名', sort: true }
+            , { field: 'UserIdMobile', width: 200, title: '手机号', sort: true }
             , { field: 'CreateDate', width: 200, title: '创建时间', sort: true }
-            , { field: 'ChargeAmount', width: 200, title: '待扣金额', sort: true }
-            , { field: 'ChargeType', width: 200, title: '待扣类型', sort: true }
+            , { field: 'ChargeAmount', width: 200, title: '扣款金额', sort: true }
+            , { field: 'ChargeType', width: 200, title: '扣款类型', sort: true }
+            , { field: 'UpdateDate', width: 200, title: '扣款时间', sort: true }
             , { field: 'Status', width: 200, title: '扣款状态', sort: true }
             , { field: 'Remark', width: 200, title: '机具Sn', sort: true }
+            , { field: 'SeoDescription', width: 200, title: '备注', sort: true }
+            , { field: 'SeoTitle', width: 200, title: '操作人', sort: true }
 
             , { field: 'Sort', fixed: 'right', title: '排序', width: 80, edit: 'text' }
             , { title: '操作', align: 'center', fixed: 'right', toolbar: '#table-list-tools' }
@@ -343,6 +372,19 @@ layui.config({
             });
             layer.full(perContent);
         }
+        , ChargeImport: function () {
+            ExcelKind = 1;
+            layer.open({
+                type: 1,
+                title: '导入',
+                maxmin: false,
+                area: ['460px', '280px'],
+                content: $('#excelForm'),
+                cancel: function () {
+                }
+            });
+            $("#excelTemp").html('<a href="/users/预扣款模版.xlsx">点击下载预扣款模版文件</a>');
+        }
         , ImportData: function () {
             ExcelKind = 1;
             layer.open({

+ 67 - 63
wwwroot/layuiadmin/modules_main/ToChargeByStage_Admin.js

@@ -1,4 +1,4 @@
-var ExcelData,ExcelKind;
+var ExcelData, ExcelKind;
 function ConfirmImport() {
     $.ajax({
         type: "POST",
@@ -31,49 +31,49 @@ layui.config({
     //- 筛选条件-日期
     var laydate = layui.laydate;
     var layCreateDate = laydate.render({
-elem: '#CreateDate',
-type: 'datetime',
-range: true,
-trigger: 'click',
-change: function (value, date, endDate) {
-var op = true;
-if (date.year == endDate.year && endDate.month - date.month <= 1) {
-if (endDate.month - date.month == 1 && endDate.date > date.date) {
-op = false;
-layCreateDate.hint('日期范围请不要超过1个月');
-setTimeout(function () {
-$(".laydate-btns-confirm").addClass("laydate-disabled");
-}, 1);
-}
-} else {
-op = false;
-layCreateDate.hint('日期范围请不要超过1个月');
-setTimeout(function () {
-$(".laydate-btns-confirm").addClass("laydate-disabled");
-}, 1);
-}
-if (op) {
-$('#CreateDate').val(value);
-}
-}
-});
+        elem: '#CreateDate',
+        type: 'date',
+        range: true,
+        trigger: 'click',
+        change: function (value, date, endDate) {
+            var op = true;
+            if (date.year == endDate.year && endDate.month - date.month <= 1) {
+                if (endDate.month - date.month == 1 && endDate.date > date.date) {
+                    op = false;
+                    layCreateDate.hint('日期范围请不要超过1个月');
+                    setTimeout(function () {
+                        $(".laydate-btns-confirm").addClass("laydate-disabled");
+                    }, 1);
+                }
+            } else {
+                op = false;
+                layCreateDate.hint('日期范围请不要超过1个月');
+                setTimeout(function () {
+                    $(".laydate-btns-confirm").addClass("laydate-disabled");
+                }, 1);
+            }
+            if (op) {
+                $('#CreateDate').val(value);
+            }
+        }
+    });
 
 
     //excel导入
-    excel = layui.excel;        
+    excel = layui.excel;
     $('#ExcelFile').change(function (e) {
         var files = e.target.files;
-        excel.importExcel(files, { }, function (data) {
+        excel.importExcel(files, {}, function (data) {
             ExcelData = data[0].sheet1;
         });
     });
 
     //监听单元格编辑
-    table.on('edit(LAY-list-manage)', function(obj){
+    table.on('edit(LAY-list-manage)', function (obj) {
         var value = obj.value //得到修改后的值
-        ,data = obj.data //得到所在行所有键值
-        ,field = obj.field; //得到字段
-        if(field == "Sort"){
+            , data = obj.data //得到所在行所有键值
+            , field = obj.field; //得到字段
+        if (field == "Sort") {
             $.ajax({
                 type: "POST",
                 url: "/Admin/ToChargeByStage/Sort?r=" + Math.random(1),
@@ -84,26 +84,30 @@ $('#CreateDate').val(value);
             });
         }
     });
-    
+
     //列表数据
     table.render({
         elem: '#LAY-list-manage'
         , url: '/Admin/ToChargeByStage/IndexData' //模拟接口
         , cols: [[
             { type: 'checkbox', fixed: 'left' }
-    		, {field:'Id', fixed: 'left', title:'ID', width:80, sort: true, unresize: true}
-            ,{field:'UserId', width: 200, title:'创客', sort: true}
-,{field:'CreateDate', width: 200, title:'创建时间', sort: true}
-,{field:'ChargeAmount', width: 200, title:'待扣金额', sort: true}
-,{field:'StartDate', width: 200, title:'扣款开始时间', sort: true}
-,{field:'TimeNumber', width: 200, title:'期数', sort: true}
-,{field:'TotalAmount', width: 200, title:'扣款总金额', sort: true}
-
-            , {field:'Sort', fixed: 'right', title:'排序', width:80, edit: 'text'}
+            , { field: 'Id', fixed: 'left', title: 'ID', width: 80, sort: true, unresize: true }
+            , { field: 'UserId', width: 200, title: '创客', sort: true }
+            , { field: 'MakerCode', width: 200, title: '创客编号', sort: true }
+            , { field: 'MakerName', width: 200, title: '创客姓名', sort: true }
+            , { field: 'CreateDate', width: 200, title: '创建时间', sort: true }
+            , { field: 'TotalAmount', width: 200, title: '扣款总金额', sort: true }
+            , { field: 'StartDate', width: 200, title: '扣款开始时间', sort: true }
+            , { field: 'TimeNumber', width: 200, title: '期数', sort: true }
+            , { field: 'ChargeAmount', width: 200, title: '已扣金额', sort: true }
+            , { field: 'Status', width: 200, title: '扣款状态', sort: true }
+            , { field: 'Remark', width: 200, title: '备注', sort: true }
+            , { field: 'SeoTitle', width: 200, title: '操作人', sort: true }
+
             , { title: '操作', align: 'center', fixed: 'right', toolbar: '#table-list-tools' }
         ]]
         , where: {
-            
+
         }
         , page: true
         , limit: 30
@@ -125,7 +129,7 @@ $('#CreateDate').val(value);
                     data: "Id=" + data.Id,
                     dataType: "text",
                     success: function (data) {
-                        if (data == "success") {                            
+                        if (data == "success") {
                             obj.del();
                             layer.close(index);
                         } else {
@@ -148,20 +152,20 @@ $('#CreateDate').val(value);
                         , submitID = 'LAY-list-front-submit'
                         , submit = layero.find('iframe').contents().find('#' + submitID);
 
-                    setTimeout(function () { 
+                    setTimeout(function () {
                         layero.find('iframe').contents().find('.layui-tab-item').each(function (i) {
                             var errObj = $(this).find('.layui-form-danger');
                             if (errObj.length > 0) {
                                 iframeWindow.element.tabChange('mytabbar', String(i + 1));
                                 submit.click();
                             }
-                        });                        
+                        });
                     }, 300);
 
-                    
-                    
-                    
-                    
+
+
+
+
 
                     //监听提交
                     iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) {
@@ -172,7 +176,7 @@ $('#CreateDate').val(value);
                         }
                         //提交 Ajax 成功后,静态更新表格中的数据
                         //$.ajax({});
-                        
+
                         $.ajax({
                             type: "POST",
                             url: "/Admin/ToChargeByStage/Edit?r=" + Math.random(1),
@@ -265,20 +269,20 @@ $('#CreateDate').val(value);
                         , submitID = 'LAY-list-front-submit'
                         , submit = layero.find('iframe').contents().find('#' + submitID);
 
-                    setTimeout(function () { 
+                    setTimeout(function () {
                         layero.find('iframe').contents().find('.layui-tab-item').each(function (i) {
                             var errObj = $(this).find('.layui-form-danger');
                             if (errObj.length > 0) {
                                 iframeWindow.element.tabChange('mytabbar', String(i + 1));
                                 submit.click();
                             }
-                        });                        
+                        });
                     }, 300);
 
-                    
-                    
-                    
-                    
+
+
+
+
 
                     //监听提交
                     iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) {
@@ -289,7 +293,7 @@ $('#CreateDate').val(value);
                         }
                         //提交 Ajax 成功后,静态更新表格中的数据
                         //$.ajax({});
-                        
+
                         $.ajax({
                             type: "POST",
                             url: "/Admin/ToChargeByStage/Add?r=" + Math.random(1),
@@ -346,9 +350,9 @@ $('#CreateDate').val(value);
         , Open: function () {
             var checkStatus = table.checkStatus('LAY-list-manage')
                 , data = checkStatus.data; //得到选中的数据
-            if(data.length < 1){
+            if (data.length < 1) {
                 parent.layer.msg("请选择要开启的项");
-            }else{
+            } else {
                 var ids = "";
                 $.each(data, function (index, value) {
                     ids += data[index].Id + ",";
@@ -375,9 +379,9 @@ $('#CreateDate').val(value);
         , Close: function () {
             var checkStatus = table.checkStatus('LAY-list-manage')
                 , data = checkStatus.data; //得到选中的数据
-            if(data.length < 1){
+            if (data.length < 1) {
                 parent.layer.msg("请选择要关闭的项");
-            }else{
+            } else {
                 var ids = "";
                 $.each(data, function (index, value) {
                     ids += data[index].Id + ",";

BIN
wwwroot/users/预扣款模版.xlsx