Преглед изворни кода

完善辅助工具-循环机查询

lichunlei пре 3 година
родитељ
комит
a99ea5674a

+ 43 - 120
Areas/Admin/Controllers/MainServer/SysToolsController.cs

@@ -2168,47 +2168,7 @@ namespace MySystem.Areas.Admin.Controllers
             ViewBag.SwapSnExpand = SwapSnExpand;
             ViewBag.SnNos = SnNos;
 
-            List<Dictionary<string, object>> dataList = new List<Dictionary<string, object>>();
-            var machineApplie = db.MachineApply.Where(m => m.Status > -1).ToList();
-            var orders = db.Orders.Where(m => m.Status > -1).ToList();
-            if (!string.IsNullOrEmpty(SwapSnExpand))
-            {
-                var machineApplie1 = machineApplie.Where(m => m.Status > -1 && m.SwapSnExpand.Contains(SwapSnExpand)).ToList();
-                foreach (var item in machineApplie1)
-                {
-                    var orders1 = orders.FirstOrDefault(m => m.Sort == item.Id && m.Id == item.QueryCount);
-                    Dictionary<string, object> data = new Dictionary<string, object>();
-                    data["ApplyNo"] = item.ApplyNo.ToString();
-                    data["OrderNo"] = orders1.OrderNo.ToString();
-                    data["MakerCode"] = item.ApplyNo.ToString();
-                    data["RealName"] = item.ApplyNo.ToString();
-                    data["ComeSn"] = item.ApplyNo.ToString();
-                    data["SendSn"] = item.ApplyNo.ToString();
-                    data["CreateDate"] = item.ApplyNo.ToString();
-                    data["Status"] = item.ApplyNo.ToString();
-                    dataList.Add(data);
-                }
-            }
-            if (!string.IsNullOrEmpty(SnNos))
-            {
-                var machineApplie1 = machineApplie.Where(m => m.Status > -1 && m.SwapSnExpand.Contains(SnNos)).ToList();
-                foreach (var item in machineApplie1)
-                {
-                    var orders1 = orders.FirstOrDefault(m => m.Sort == item.Id && m.Id == item.QueryCount);
-                    Dictionary<string, object> data = new Dictionary<string, object>();
-                    data["ApplyNo"] = item.ApplyNo.ToString();
-                    data["OrderNo"] = orders1.OrderNo.ToString();
-                    data["MakerCode"] = item.ApplyNo.ToString();
-                    data["RealName"] = item.ApplyNo.ToString();
-                    data["ComeSn"] = item.ApplyNo.ToString();
-                    data["SendSn"] = item.ApplyNo.ToString();
-                    data["CreateDate"] = item.ApplyNo.ToString();
-                    data["Status"] = item.ApplyNo.ToString();
-                    dataList.Add(data);
-                }
-            }
-            return View(dataList);
-            // return View();
+            return View();
         }
 
         #endregion
@@ -2226,100 +2186,63 @@ namespace MySystem.Areas.Admin.Controllers
             Fields.Add("SwapSnExpand", "1"); //申请机具SN
             Fields.Add("SnNos", "1"); //发货机具SN
             List<Dictionary<string, object>> dataList = new List<Dictionary<string, object>>();
-            var machineApplie = db.MachineApply.Where(m => m.Status > -1).ToList();
-            var orders = db.Orders.Where(m => m.Status > -1).ToList();
 
             if (!string.IsNullOrEmpty(SwapSnExpand))
             {
-                var machineApplie1 = machineApplie.Where(m => m.Status > -1 && m.SwapSnExpand.Contains(SwapSnExpand)).ToList();
-                foreach (var item in machineApplie1)
+                var apply = db.MachineApply.FirstOrDefault(m => m.Status > -1 && m.SwapSnExpand.Contains(SwapSnExpand)) ?? new MachineApply();
+                var order = db.Orders.FirstOrDefault(m => m.Id == apply.QueryCount) ?? new Orders();
+                var user = db.Users.FirstOrDefault(m => m.Id == apply.UserId) ?? new Users();
+                string[] SnNoList = function.CheckNull(apply.SwapSnExpand).TrimEnd('\n').Split('\n');
+                string[] OrderSnNo = function.CheckNull(order.SnNos).Split(',');
+                for (int i = 0; i < SnNoList.Length; i++)
                 {
-                    var orders1 = orders.FirstOrDefault(m => m.Sort == item.Id && m.Id == item.QueryCount);
                     Dictionary<string, object> data = new Dictionary<string, object>();
-                    data["ApplyNo"] = item.ApplyNo.ToString();
-                    data["OrderNo"] = orders1.OrderNo.ToString();
-                    data["MakerCode"] = item.ApplyNo.ToString();
-                    data["RealName"] = item.ApplyNo.ToString();
-                    data["ComeSn"] = item.ApplyNo.ToString();
-                    data["SendSn"] = item.ApplyNo.ToString();
-                    data["CreateDate"] = item.ApplyNo.ToString();
-                    data["Status"] = item.ApplyNo.ToString();
+                    data["ApplyNo"] = apply.ApplyNo;
+                    data["OrderNo"] = order.OrderNo;
+                    data["MakerCode"] = user.MakerCode;
+                    data["RealName"] = user.RealName;
+                    data["ComeSn"] = SnNoList[i];
+                    data["ComeSnParam"] = SnNoList[i].Split(':')[0];
+                    if(OrderSnNo.Length > i)
+                    {
+                        data["SendSn"] = OrderSnNo[i];
+                    }
+                    data["CreateDate"] = apply.CreateDate.Value.ToString("yyyy-MM-dd HH:mm:ss");
+                    data["Status"] = order.Status == 2 ? "已发货" : "未发货";
                     dataList.Add(data);
                 }
             }
             else if (!string.IsNullOrEmpty(SnNos))
             {
-                var machineApplie1 = machineApplie.Where(m => m.Status > -1 && m.SwapSnExpand.Contains(SnNos)).ToList();
-                foreach (var item in machineApplie1)
-                {
-                    var orders1 = orders.FirstOrDefault(m => m.Sort == item.Id && m.Id == item.QueryCount);
-                    Dictionary<string, object> data = new Dictionary<string, object>();
-                    data["ApplyNo"] = item.ApplyNo.ToString();
-                    data["OrderNo"] = orders1.OrderNo.ToString();
-                    data["MakerCode"] = item.ApplyNo.ToString();
-                    data["RealName"] = item.ApplyNo.ToString();
-                    data["ComeSn"] = item.ApplyNo.ToString();
-                    data["SendSn"] = item.ApplyNo.ToString();
-                    data["CreateDate"] = item.ApplyNo.ToString();
-                    data["Status"] = item.ApplyNo.ToString();
-                    dataList.Add(data);
-                }
-            }
-            else
-            {
-                foreach (var item in machineApplie)
+                var order = db.Orders.FirstOrDefault(m => m.Status > -1 && m.SnNos.Contains(SnNos)) ?? new Orders();
+                var apply = db.MachineApply.FirstOrDefault(m => m.Id == order.Sort) ?? new MachineApply();
+                var user = db.Users.FirstOrDefault(m => m.Id == apply.UserId) ?? new Users();
+                string[] SnNoList = function.CheckNull(apply.SwapSnExpand).TrimEnd('\n').Split('\n');
+                string[] OrderSnNo = function.CheckNull(order.SnNos).Split(',');
+                for (int i = 0; i < OrderSnNo.Length; i++)
                 {
-                    var orders1 = orders.FirstOrDefault(m => m.Sort == item.Id && m.Id == item.QueryCount) ?? new Orders();
-                    var user = db.Users.FirstOrDefault(m => m.Id == item.UserId) ?? new Users();
                     Dictionary<string, object> data = new Dictionary<string, object>();
-                    data["ApplyNo"] = item.ApplyNo.ToString();
-                    if (!string.IsNullOrEmpty(orders1.OrderNo))
-                    {
-                        data["OrderNo"] = orders1.OrderNo.ToString();
-                    }
-                    if (string.IsNullOrEmpty(orders1.OrderNo))
-                    {
-                        data["OrderNo"] = "";
-                    }
-                    if (!string.IsNullOrEmpty(orders1.SnNos))
-                    {
-                        data["SendSn"] = orders1.SnNos.ToString();
-                    }
-                    if (string.IsNullOrEmpty(orders1.SnNos))
-                    {
-                        data["SendSn"] = "";
-                    }
-                    if (!string.IsNullOrEmpty(user.MakerCode))
-                    {
-                        data["MakerCode"] = user.MakerCode.ToString();
-                    }
-                    if (string.IsNullOrEmpty(user.MakerCode))
-                    {
-                        data["MakerCode"] = "";
-                    }
-                    if (!string.IsNullOrEmpty(user.RealName))
-                    {
-                        data["RealName"] = user.RealName.ToString();
-                    }
-                    if (string.IsNullOrEmpty(user.RealName))
-                    {
-                        data["RealName"] = "";
-                    }
-                    data["ComeSn"] = item.SwapSnExpand.ToString();
-                    data["CreateDate"] = item.CreateDate.ToString();
-                    if (item.ApplyNo.ToString() == "0")
-                    {
-                        data["Status"] = "待处理";
-                    }
-                    if (item.ApplyNo.ToString() == "1")
-                    {
-                        data["Status"] = "成功";
-                    }
+                    data["ApplyNo"] = apply.ApplyNo;
+                    data["OrderNo"] = order.OrderNo;
+                    data["MakerCode"] = user.MakerCode;
+                    data["RealName"] = user.RealName;
+                    data["ComeSn"] = SnNoList[i];
+                    data["ComeSnParam"] = SnNoList[i].Split(':')[0];
+                    if(OrderSnNo.Length > i)
+                    {
+                        data["SendSn"] = OrderSnNo[i];
+                    }
+                    data["CreateDate"] = apply.CreateDate.Value.ToString("yyyy-MM-dd HH:mm:ss");
+                    data["Status"] = order.Status == 2 ? "已发货" : "未发货";
                     dataList.Add(data);
                 }
             }
-            dataList = dataList.Skip((page - 1) * limit).Take(limit).ToList();//分页的重点
-            return Json(dataList);
+            Dictionary<string, object> obj = new Dictionary<string, object>();
+            obj.Add("code", 0);
+            obj.Add("msg", "");
+            obj.Add("count", dataList.Count);
+            obj.Add("data", dataList);
+            return Json(obj);
         }
 
         #endregion

+ 12 - 15
Areas/Admin/Views/MainServer/SysTools/Loop.cshtml

@@ -1,13 +1,8 @@
-@using MySystem.Models;
 @{
     string RightInfo = ViewBag.RightInfo as string;
     string right = ViewBag.right as string;
-    string SelfId = ViewBag.SelfId as string;
-    string ParentId = ViewBag.ParentId as string;
-    string UserId = ViewBag.Id as string;
-    string MakerCode = ViewBag.MakerCode as string;
-    List<Users> TopUsers = ViewBag.TopUsers as List<Users>;
-    List<UserLevelSet> Levels = ViewBag.Levels as List<UserLevelSet>;
+    string SwapSnExpand = ViewBag.SwapSnExpand as string;
+    string SnNos = ViewBag.SnNos as string;
 }
 <!DOCTYPE html>
 <html>
@@ -54,22 +49,19 @@
                         <div class="layui-inline">
                             <label class="layui-form-label">来源机具SN</label>
                             <div class="layui-input-inline">
-                                <input class="layui-input" type="text" name="ComeSn" id="ComeSn" autocomplete="off">
+                                <input class="layui-input" type="text" name="SwapSnExpand" id="SwapSnExpand" autocomplete="off">
                             </div>
                         </div>
                         <div class="layui-inline">
                             <label class="layui-form-label">发货机具SN</label>
                             <div class="layui-input-inline">
-                                <input class="layui-input" type="text" name="SendSn" id="SendSn" autocomplete="off">
+                                <input class="layui-input" type="text" name="SnNos" id="SnNos" 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>查询
                             </button>
-                            <button class="layui-btn" lay-submit lay-filter="LAY-list-front-searchall">
-                                <i class="layui-icon layui-icon-list layuiadmin-button-btn"></i>全部
-                            </button>
                         </div>
                     </div>
                 </div>
@@ -80,9 +72,11 @@
                 <script type="text/html" id="imgTpl">
                     <img style="display: inline-block; width: 50%; height: 100%;" src={{ d.avatar }}>
                 </script>
-                <script type="text/html" id="Loop">
-                    <a lay-href="/Admin/SysTools/Loop?right=@right&SwapSnExpand=@("{{d.SnNos}}")" lay-text="发货机信息" style="color: #428bca;">{{d.SwapSnExpand}}</a>
-                    <a lay-href="/Admin/SysTools/Loop?right=@right&SnNos=@("{{d.SwapSnExpand}}")" lay-text="申请机信息" style="color: #428bca;">{{d.SnNos}}</a>
+                <script type="text/html" id="ComeSnLoop">
+                    <a lay-href="/Admin/SysTools/Loop?right=@right&SwapSnExpand=@("{{d.SendSn}}")" lay-text="查找申请来源" style="color: #428bca;">{{d.ComeSn}}</a>
+                </script>
+                <script type="text/html" id="SendSnLoop">
+                    <a lay-href="/Admin/SysTools/Loop?right=@right&SnNos=@("{{d.ComeSnParam}}")" lay-text="查找发货机" style="color: #428bca;">{{d.SendSn}}</a>
                 </script>
             </div>
         </div>
@@ -90,6 +84,9 @@
 
     <script src="/layuiadmin/layui/layui.js"></script>
     <script src="/layuiadmin/modules_main/Loop_Admin.js?r=@DateTime.Now.ToString("yyyyMMddHHmmss")"></script>
+    <script>
+        
+    </script>
 </body>
 
 </html>

+ 2 - 3
wwwroot/layuiadmin/modules_main/Loop_Admin.js

@@ -134,13 +134,12 @@ layui.config({
             { type: 'checkbox', fixed: 'left' }
             , { field: 'ApplyNo', width: 200, title: '申请订单号', sort: true }
             , { field: 'OrderNo', width: 200, title: '订单号', sort: true }
+            , { field: 'ComeSn', width: 300, title: '来源机具SN', sort: true, templet: '#ComeSnLoop' }
+            , { field: 'SendSn', width: 300, title: '发货SN', sort: true, templet: '#SendSnLoop' }
             , { field: 'MakerCode', width: 200, title: '创客编号', sort: true }
             , { field: 'RealName', width: 200, title: '创客姓名', sort: true }
-            , { field: 'ComeSn', width: 200, title: '来源机具SN', sort: true, templet: '#Loop' }
-            , { field: 'SendSn', width: 200, title: '发货SN', sort: true, templet: '#Loop' }
             , { field: 'CreateDate', width: 200, title: '申请时间', sort: true }
             , { field: 'Status', width: 200, title: '申请状态', sort: true }
-            , { title: '操作', width: 1500, align: 'left', toolbar: '#table-list-tools' }
         ]]
         , where: {
         }