DuGuYang il y a 3 ans
Parent
commit
539520a46b

+ 28 - 10
Areas/Admin/Controllers/MainServer/PosMerchantInfoListController.cs

@@ -1115,7 +1115,7 @@ namespace MySystem.Areas.Admin.Controllers
                     if (mer.Id > 0)
                     if (mer.Id > 0)
                     {
                     {
                         string MerchantName = Regex.Replace(mer.MerchantName, @"\d|\W|[A-Za-z]", "");
                         string MerchantName = Regex.Replace(mer.MerchantName, @"\d|\W|[A-Za-z]", "");
-                        var posMerchants = db.PosMerchantInfo.Where(m => m.MerIdcardNo.StartsWith(mer.MerIdcardNo.Substring(0, 6)) && m.MerIdcardNo.EndsWith(mer.MerIdcardNo.Substring(mer.MerIdcardNo.Length - 4, 4)) && m.MerchantName.Contains(MerchantName)).ToList();
+                        var posMerchants = db.PosMerchantInfo.Where(m => m.MerIdcardNo.ToUpper().StartsWith(mer.MerIdcardNo.ToUpper().Substring(0, 6)) && m.MerIdcardNo.ToUpper().EndsWith(mer.MerIdcardNo.ToUpper().Substring(mer.MerIdcardNo.Length - 4, 4)) && m.MerchantName.Contains(MerchantName)).ToList();
                         foreach (var item in posMerchants)
                         foreach (var item in posMerchants)
                         {
                         {
                             Dictionary<string, object> curData = new Dictionary<string, object>();
                             Dictionary<string, object> curData = new Dictionary<string, object>();
@@ -1154,18 +1154,36 @@ namespace MySystem.Areas.Admin.Controllers
         /// 设置为首台机具
         /// 设置为首台机具
         /// </summary>
         /// </summary>
         /// <returns></returns>
         /// <returns></returns>
-        public string SetFirstPos(string Id)
+        public string SetFirstPos(string PosSn)
         {
         {
-            string[] idlist = Id.Split(new char[] { ',' });
-            AddSysLog(Id, "PosMerchantInfo", "open");
-            foreach (string subid in idlist)
+            AddSysLog(PosSn, "PosMachinesTwo", "SetFirstPos");
+            Dictionary<string, object> Fields = new Dictionary<string, object>();
+            var mer = db.PosMerchantInfo.FirstOrDefault(m => m.KqSnNo == PosSn) ?? new PosMerchantInfo();
+            string MerchantName = Regex.Replace(mer.MerchantName, @"\d|\W|[A-Za-z]", "");
+            var posMerchants = db.PosMerchantInfo.Where(m => m.MerIdcardNo.ToUpper().StartsWith(mer.MerIdcardNo.ToUpper().Substring(0, 6)) && m.MerIdcardNo.ToUpper().EndsWith(mer.MerIdcardNo.ToUpper().Substring(mer.MerIdcardNo.Length - 4, 4)) && m.MerchantName.Contains(MerchantName) && m.KqSnNo != PosSn).ToList();
+            var pos = db.PosMachinesTwo.FirstOrDefault(m => m.PosSn == PosSn) ?? new PosMachinesTwo();
+            var thisdate = pos.BindingTime;
+            var otherdate = pos.BindingTime;
+            var changeFlag = 0;
+            foreach (var item in posMerchants)
             {
             {
-                int id = int.Parse(subid);
-                Dictionary<string, object> Fields = new Dictionary<string, object>();
-                Fields.Add("Status", 1);
-                new AdminContentOther(_accessor.HttpContext, PublicFunction.MainTables).Edit("PosMerchantInfo", Fields, id);
+                Dictionary<string, object> curData = new Dictionary<string, object>();
+                var posInfo = db.PosMachinesTwo.FirstOrDefault(m => m.PosSn == item.KqSnNo) ?? new PosMachinesTwo();
+                otherdate = posInfo.BindingTime;
+                if (thisdate > otherdate)
+                {
+                    changeFlag = 1;
+                }
+                else
+                {
+                    return "不符合设置条件";
+                }
+            }
+            if (changeFlag == 1)
+            {
+                pos.IsFirst = 1;
+                db.SaveChanges();
             }
             }
-            db.SaveChanges();
             return "success";
             return "success";
         }
         }
         #endregion
         #endregion

+ 6 - 1
Areas/Admin/Views/MainServer/PosMerchantInfoList/FirstPosIndex.cshtml

@@ -60,9 +60,14 @@
                     </div>
                     </div>
                 </div>
                 </div>
             </div>
             </div>
-
             <div class="layui-card-body">
             <div class="layui-card-body">
                 <table id="LAY-list-manage" lay-filter="LAY-list-manage"></table>
                 <table id="LAY-list-manage" lay-filter="LAY-list-manage"></table>
+                <script type="text/html" id="table-list-tools">
+                    @if (RightInfo.Contains("," + right + "_open,"))
+                    {
+                        <a class="layui-btn layui-btn-normal layui-btn-xs" lay-event="SetFirstPos"><i class="layui-icon layui-icon-edit"></i>设为首台</a>
+                    }
+                </script>
             </div>
             </div>
         </div>
         </div>
     </div>
     </div>

+ 40 - 138
wwwroot/layuiadmin/modules_main/FirstPosIndex_Admin.js

@@ -60,20 +60,20 @@ layui.config({
 
 
 
 
     //excel导入
     //excel导入
-    excel = layui.excel;        
+    excel = layui.excel;
     $('#ExcelFile').change(function (e) {
     $('#ExcelFile').change(function (e) {
         var files = e.target.files;
         var files = e.target.files;
-        excel.importExcel(files, { }, function (data) {
+        excel.importExcel(files, {}, function (data) {
             ExcelData = data[0].sheet1;
             ExcelData = data[0].sheet1;
         });
         });
     });
     });
 
 
     //监听单元格编辑
     //监听单元格编辑
-    table.on('edit(LAY-list-manage)', function(obj){
+    table.on('edit(LAY-list-manage)', function (obj) {
         var value = obj.value //得到修改后的值
         var value = obj.value //得到修改后的值
-        ,data = obj.data //得到所在行所有键值
-        ,field = obj.field; //得到字段
-        if(field == "Sort"){
+            , data = obj.data //得到所在行所有键值
+            , field = obj.field; //得到字段
+        if (field == "Sort") {
             $.ajax({
             $.ajax({
                 type: "POST",
                 type: "POST",
                 url: "/Admin/PosMerchantInfoList/Sort?r=" + Math.random(1),
                 url: "/Admin/PosMerchantInfoList/Sort?r=" + Math.random(1),
@@ -84,21 +84,21 @@ layui.config({
             });
             });
         }
         }
     });
     });
-    
+
     //列表数据
     //列表数据
     table.render({
     table.render({
         elem: '#LAY-list-manage'
         elem: '#LAY-list-manage'
         , url: '/Admin/PosMerchantInfoList/FirstPosIndexData' //模拟接口
         , url: '/Admin/PosMerchantInfoList/FirstPosIndexData' //模拟接口
         , cols: [[
         , cols: [[
             { type: 'checkbox', fixed: 'left' }
             { type: 'checkbox', fixed: 'left' }
-            ,{field:'PosSn', width: 200, title:'机具SN', sort: true}
-            ,{field:'MerchantName', width: 200, title:'商户名称', sort: true}
-            ,{field:'MerchantMobile', width: 200, title:'商户手机号', sort: true}
-            ,{field:'MerIdcardNo', width: 200, title:'商户身份证号', sort: true}
-            ,{field:'IsFirstName', width: 200, title:'是否首台', sort: true}
-            ,{field:'BindingTime', width: 200, title:'绑定时间', sort: true}
-            ,{field:'ActivationTime', width: 200, title:'激活时间', sort: true}
-            , { title: '操作', width: 120, align: 'left', toolbar: '#table-list-tools', fixed: 'right' }
+            , { field: 'PosSn', width: 200, title: '机具SN', sort: true }
+            , { field: 'MerchantName', width: 200, title: '商户名称', sort: true }
+            , { field: 'MerchantMobile', width: 200, title: '商户手机号', sort: true }
+            , { field: 'MerIdcardNo', width: 200, title: '商户身份证号', sort: true }
+            , { field: 'IsFirstName', width: 200, title: '是否首台', sort: true }
+            , { field: 'BindingTime', width: 200, title: '绑定时间', sort: true }
+            , { field: 'ActivationTime', width: 200, title: '激活时间', sort: true }
+            , { title: '操作', align: 'left', toolbar: '#table-list-tools', fixed: 'right' }
         ]]
         ]]
         , where: {
         , where: {
         }
         }
@@ -122,7 +122,7 @@ layui.config({
                     data: "Id=" + data.Id,
                     data: "Id=" + data.Id,
                     dataType: "text",
                     dataType: "text",
                     success: function (data) {
                     success: function (data) {
-                        if (data == "success") {                            
+                        if (data == "success") {
                             obj.del();
                             obj.del();
                             layer.close(index);
                             layer.close(index);
                         } else {
                         } else {
@@ -131,116 +131,24 @@ layui.config({
                     }
                     }
                 });
                 });
             });
             });
-        } else if (obj.event === 'edit') {
-            var tr = $(obj.tr);
-            var perContent = layer.open({
-                type: 2
-                , title: '商户-编辑'
-                , content: 'Edit?Id=' + data.Id + ''
-                , maxmin: true
-                , area: ['500px', '450px']
-                , btn: ['确定', '取消']
-                , yes: function (index, layero) {
-                    var iframeWindow = window['layui-layer-iframe' + index]
-                        , submitID = 'LAY-list-front-submit'
-                        , submit = layero.find('iframe').contents().find('#' + submitID);
-
-                    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) {
-                        var field = data.field; //获取提交的字段
-                        var userdata = "";
-                        for (var prop in field) {
-                            userdata += prop + "=" + encodeURIComponent(field[prop]) + "&";
-                        }
-                        //提交 Ajax 成功后,静态更新表格中的数据
-                        //$.ajax({});
-                        
-                        $.ajax({
-                            type: "POST",
-                            url: "/Admin/PosMerchantInfoList/Edit?r=" + Math.random(1),
-                            data: userdata,
-                            dataType: "text",
-                            success: function (data) {
-                                layer.close(index); //关闭弹层
-                                if (data == "success") {
-                                    table.reload('LAY-list-manage'); //数据刷新
-                                } else {
-                                    layer.msg(data);
-                                }
-                            }
-                        });
-                    });
-
-                    submit.trigger('click');
-                }
-                , success: function (layero, index) {
-
-                }
-            });
-            layer.full(perContent);
-        } else if (obj.event === 'sycntrade') {
-            var tr = $(obj.tr);
-            var perContent = layer.open({
-                type: 2
-                , title: '同步交易额'
-                , content: 'SycnTradeAmount?Id=' + data.Id
-                , maxmin: false
-                , area: ['550px', '700px']
-                , btn: ['确定', '取消']
-                , yes: function (index, layero) {
-                    var iframeWindow = window['layui-layer-iframe' + index]
-                        , submitID = 'LAY-list-front-submit'
-                        , submit = layero.find('iframe').contents().find('#' + submitID);
-
-                    //监听提交
-                    iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) {
-                        var field = data.field; //获取提交的字段
-                        var userdata = "";
-                        for (var prop in field) {
-                            userdata += prop + "=" + encodeURIComponent(field[prop]) + "&";
+        }
+        else if (obj.event === 'SetFirstPos') {
+            var index = layer.confirm('确定要设置为首台吗?', function (index) {
+                $.ajax({
+                    type: "POST",
+                    url: "/Admin/PosMerchantInfoList/SetFirstPos?r=" + Math.random(1),
+                    data: "PosSn=" + data.PosSn,
+                    dataType: "text",
+                    success: function (data) {
+                        layer.close(index);
+                        if (data == "success") {
+                            layer.msg("设置成功");
+                            table.reload('LAY-list-manage');
+                        } else {
+                            layer.msg(data);
                         }
                         }
-                        //提交 Ajax 成功后,静态更新表格中的数据
-                        //$.ajax({});
-                        var loadindex = layer.load(1, {
-                            shade: [0.5, '#000']
-                        });
-                        $.ajax({
-                            type: "POST",
-                            url: "/Admin/PosMerchantInfoList/SycnTradeAmountDo?r=" + Math.random(1),
-                            data: userdata,
-                            dataType: "text",
-                            success: function (data) {
-                                layer.close(loadindex); //关闭弹层
-                                layer.close(index); //关闭弹层
-                                if (data == "success") {
-                                    layer.alert('重置程序已启动,请稍后核对商户交易额');
-                                } else {
-                                    layer.msg(data);
-                                }
-                            }
-                        });
-                    });
-
-                    submit.trigger('click');
-                }
-                , success: function (layero, index) {
-
-                }
+                    }
+                });
             });
             });
         }
         }
     });
     });
@@ -311,21 +219,15 @@ layui.config({
                         , submitID = 'LAY-list-front-submit'
                         , submitID = 'LAY-list-front-submit'
                         , submit = layero.find('iframe').contents().find('#' + submitID);
                         , submit = layero.find('iframe').contents().find('#' + submitID);
 
 
-                    setTimeout(function () { 
+                    setTimeout(function () {
                         layero.find('iframe').contents().find('.layui-tab-item').each(function (i) {
                         layero.find('iframe').contents().find('.layui-tab-item').each(function (i) {
                             var errObj = $(this).find('.layui-form-danger');
                             var errObj = $(this).find('.layui-form-danger');
                             if (errObj.length > 0) {
                             if (errObj.length > 0) {
                                 iframeWindow.element.tabChange('mytabbar', String(i + 1));
                                 iframeWindow.element.tabChange('mytabbar', String(i + 1));
                                 submit.click();
                                 submit.click();
                             }
                             }
-                        });                        
+                        });
                     }, 300);
                     }, 300);
-
-                    
-                    
-                    
-                    
-
                     //监听提交
                     //监听提交
                     iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) {
                     iframeWindow.layui.form.on('submit(' + submitID + ')', function (data) {
                         var field = data.field; //获取提交的字段
                         var field = data.field; //获取提交的字段
@@ -335,7 +237,7 @@ layui.config({
                         }
                         }
                         //提交 Ajax 成功后,静态更新表格中的数据
                         //提交 Ajax 成功后,静态更新表格中的数据
                         //$.ajax({});
                         //$.ajax({});
-                        
+
                         $.ajax({
                         $.ajax({
                             type: "POST",
                             type: "POST",
                             url: "/Admin/PosMerchantInfoList/Add?r=" + Math.random(1),
                             url: "/Admin/PosMerchantInfoList/Add?r=" + Math.random(1),
@@ -390,9 +292,9 @@ layui.config({
         , Open: function () {
         , Open: function () {
             var checkStatus = table.checkStatus('LAY-list-manage')
             var checkStatus = table.checkStatus('LAY-list-manage')
                 , data = checkStatus.data; //得到选中的数据
                 , data = checkStatus.data; //得到选中的数据
-            if(data.length < 1){
+            if (data.length < 1) {
                 parent.layer.msg("请选择要开启的项");
                 parent.layer.msg("请选择要开启的项");
-            }else{
+            } else {
                 var ids = "";
                 var ids = "";
                 $.each(data, function (index, value) {
                 $.each(data, function (index, value) {
                     ids += data[index].Id + ",";
                     ids += data[index].Id + ",";
@@ -419,9 +321,9 @@ layui.config({
         , Close: function () {
         , Close: function () {
             var checkStatus = table.checkStatus('LAY-list-manage')
             var checkStatus = table.checkStatus('LAY-list-manage')
                 , data = checkStatus.data; //得到选中的数据
                 , data = checkStatus.data; //得到选中的数据
-            if(data.length < 1){
+            if (data.length < 1) {
                 parent.layer.msg("请选择要关闭的项");
                 parent.layer.msg("请选择要关闭的项");
-            }else{
+            } else {
                 var ids = "";
                 var ids = "";
                 $.each(data, function (index, value) {
                 $.each(data, function (index, value) {
                     ids += data[index].Id + ",";
                     ids += data[index].Id + ",";