zrg
2025-02-25 82ba14eeb57b4e7ccc652afb0e700a89ce4e64f6
WebTM/views/ϵͳ¹ÜÀí/Óû§¹ÜÀí/Xt_UserSuplies.html
@@ -43,7 +43,8 @@
                        <div class="layui-card-header">
                            <div class="layui-btn-group">
                                <button type="button" id="add-btn" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="Saver">保存</button>
                                <button type="button" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="Exit">退出</button>
                                <!--<button type="button" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="Exit" >退出</button>-->
                                <button type="button" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="Exit" onclick='window.frames["系统管理/用户管理/Xt_UserSupliesList.html"] '>退出</button>
                                <button type="button" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="set_Excel">Excel导入</button>
                            </div>
                        </div>
@@ -57,7 +58,7 @@
                                                <div class="layui-input-inline">
                                                    <input type="text" name="UserName" id="UserName" readonly class="layui-input" value="" style="float:left;width:150px;">
                                                    <input type="hidden" name="UserID" id="UserID" class="layui-input" value="" style="float:left;width:150px;">
                                                    <button type="button" lay-submit="" class="layui-btn" lay-filter="UserList" style="width:40px;">
                                                    <button type="button" lay-submit="" id="button_Edit"  class="layui-btn" lay-filter="UserList" style="width:40px;">
                                                        <i class="layui-icon layui-icon-search layuiadmin-button-btn" style="margin-left:-9px;"></i>
                                                    </button>
                                                </div>
@@ -132,6 +133,7 @@
            }
            else if (OperationType == 3) {//编辑
                set_EditFromGrid(linterid);
                $('#button_Edit').addClass("layui-btn-disabled").attr("disabled", true);
            }
            else {
                layer.alert("未知操作类型!", { icon: 5 });
@@ -144,7 +146,7 @@
                var checkStatus = table.checkStatus('mainTable')
                    , data = checkStatus.data;;
                var AddRow = table.cache['mainTable'];
                var NewRow = TabRow;
                var NewRow = { "HSupID": 0, "HSupperNumber": "", "HSupperName": "" };//不能用tabrow代替,layui会自动加上index属性
                switch (obj.event) {
                    //新增一行
                    case 'btn-AddLine': btnAddLine(NewRow);
@@ -154,6 +156,27 @@
                        break;
                }
            });
            //#region ç‚¹å‡»è¡Œé€‰ä¸­é«˜äº®
            table.on('row(mainTable)', function (obj) {
                //选中行改变颜色
                var flag = !obj.tr.find(':checkbox:first').prop('checked');
                obj.tr.find(':checkbox').prop('checked', flag);
                if (flag) {
                    obj.tr.find('.layui-form-checkbox').addClass('layui-form-checked');  //设置复选框选中样式
                    $(obj.tr.selector).attr({ "style": "background:#ceedfa;color:black" });//改变当前tr背景颜色和字体颜色
                } else {
                    obj.tr.find('.layui-form-checkbox').removeClass('layui-form-checked');//取消复选框选中样式
                    $(obj.tr.selector).attr({ "style": "background:" });//取消当前tr颜色
                }
                //mainTable ä¸ºè¡¨æ ¼ID   æ³¨æ„æ­¤å¤„如果ID不正确将导致你在监听复选框时获取不到你选择的数据,前面的只是添加或删除选中未选中样式以及设置背景色,字体颜色
                layui.each(table.cache.mainTable, function (i, l) {
                    if (obj.tr.index() == l.LAY_TABLE_INDEX) {
                        l.LAY_CHECKED = flag;
                    }
                });
            })
            //#endregion
            //行内事件
            table.on('tool(mainTable)', function (obj) {
                set_GridDelete(obj);   //行内删除
@@ -241,13 +264,33 @@
                                    if (checkStatus.data.length === 0) {
                                        return layer.msg('请选择数据');
                                    }
                                    var OptionData = checkStatus.data;
                                    if (checkStatus.data.length > 1) {
                                        var rowIndex = $(obj.tr).attr("data-index") * 1;//获取选择列的索引
                                        for (var i = 0; i < OptionData.length; i++) {  //判断选中的数据的长度  ç”¨äºŽéåކcheckStatus.data数组中的每个元素
                                            if (rowIndex + i >= option.data.length) {           //判断rowIndex + i的索引超出了option.data数组的长度,说明option.data数组需要扩展以包含更多行
                                                var NewRow = { "HSupID": 0, "HSupperNumber": "", "HSupperName": "" };  // åˆ›å»ºä¸€ä¸ªæ–°çš„包含数组
                                                table.cache["mainTable"].push(NewRow);    //创建新的包含数组  ä¼ å…¥table.cache["mainTable"]数组
                                                option.data = table.cache["mainTable"];  //把传入 table.cache["mainTable"]数组的值赋值给option.data çš„属性
                                                table.render(option);//渲染界面
                                            }
                                            option.data[rowIndex + i].HSupID = OptionData[i].HItemID;
                                            option.data[rowIndex + i].HSupperNumber = OptionData[i].HNumber;
                                            option.data[rowIndex + i].HSupperName = OptionData[i].HName;
                                        }
                                        table.render(option); //重新渲染表格以显示更新后的数据
                                    } else {
                                        obj.update({
                                            HSupID: checkStatus.data[0].HItemID,
                                            HSupperNumber: checkStatus.data[0].HNumber,
                                            HSupperName: checkStatus.data[0].HName
                                        });
                                    }
                                    //console.log(obj.data);
                                    //同步更新表格和缓存对应的值
                                    obj.update({
                                        HSupID: checkStatus.data[0].HItemID,
                                        HSupperNumber: checkStatus.data[0].HNumber,
                                        HSupperName: checkStatus.data[0].HName
                                    });
                                    layer.close(layer.index); //它获取的始终是最新弹出的某个层,值是由layer内部动态递增计算的
                                }
@@ -322,15 +365,14 @@
            //退出
            form.on('submit(Exit)', function (data) {
                if (OperationType == 1) {
                    Pub_Close(closeType);//直接新增closeType值为2,列表调新增closeType值从列表传递
                }
                else if (OperationType == 3) {
                    Pub_Close(closeType);
                }
                else {
                if (params[1] != null) {
                    Pub_Close(2);
                }
                } else if (params[1] == null) {
                    var parentWindow = window.parent;
                    Pub_Close(2);
                    parentWindow.openChildPage("系统管理/用户管理/Xt_UserSupliesList.html");
                }
            });
            //导入
@@ -366,7 +408,7 @@
            }
            //无源单新增
            function set_AddFNew() {
                option.data = [TabRow];
                option.data = [{ "HSupID": 0, "HSupperNumber": "", "HSupperName": "" }];
                table.render(option);
            }
@@ -386,18 +428,50 @@
                })
            }
            //编辑
            function set_EditFromGrid(linterid) {
                //编辑加载表头
                $.ajax({
                    url: GetWEBURL() + "GetGy_UserSupplierDetail",
                    type: "GET",
                    data: {
                        "HID": linterid
                    },
                    success: function (result) {
                        if (result.code == 1) { // è¯´æ˜ŽéªŒè¯æˆåŠŸäº†ï¼Œ
                            var data = result.data.h_v_Gy_UserSupplierRelationList_Query[0];
                            $("#HItemID").val(data.HItemID);//代码ID
                            $("#UserID").val(data.用户代码);//用户代码
                            $("#UserName ").val(data.用户名称);//用户名称
                            layui.form.render();//实时渲染选中和不选中的样式,最好添加这句话
                        } else {
                            layer.alert(result.msg, { icon: 5, btn: ['退出'], time: 100000, offset: 't' });
                        }
                        var arr = [];
                        for (var i = 0; i < result.data.h_v_Gy_UserSupplierRelationList_Query.length; i++) {
                            arr.push({
                                "HSupID": result.data.h_v_Gy_UserSupplierRelationList_Query[i].HSupID,
                                "HSupperNumber": result.data.h_v_Gy_UserSupplierRelationList_Query[i].供应商代码,
                                "HSupperName": result.data.h_v_Gy_UserSupplierRelationList_Query[i].供应商名称,
                            });
                        }
                        option.data = arr;
                        table.render(option);
                    }, error: function () {
                        layer.alert("发生错误!", { icon: 5 });
                    }
                });
            }
            //增加一行
            function btnAddLine(NewRow) {
                var tableBak = table.cache["mainTable"]; //获取之前编辑过的表格数据
                table.cache["mainTable"].push(NewRow);//将NewRow对象添加到table.cache["mainTable"]数组中,  æ•°ç»„存储了表格的所有行数据
                option.data = table.cache["mainTable"];//更新option.data为新的数据数组显示到表格上  //将数据绑定到data上
                buttonArr = [];//清空数组
                for (var i = 0; i < tableBak.length; i++) {
                    buttonArr.push(tableBak[i]);  //将之前的数据存储
                }
                buttonArr.push(NewRow);  //在尾部加一行
                table.reload("mainTable", {
                    data: buttonArr    //将数据重新载入表格
                })
                table.render(option);  //渲染表格
            }
            //复制一行
            function btnCopyLine(data) {