wtt
7 天以前 6124ad3a477afbc1b7a74c066cbed481b4ad6777
审批流添加子表
3个文件已修改
329 ■■■■■ 已修改文件
WebTM/layuiadmin/Scripts/webConfig.js 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/系统管理/多级审批/审核流程单/Xt_CheckFlowEdit.html 205 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/系统管理/多级审批/审核流程单/Xt_CheckUserRight.html 121 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/layuiadmin/Scripts/webConfig.js
@@ -3,13 +3,10 @@
  //var WEBURL = "http://61.164.86.218:8099/ABAPI/";
  //var WEBURL = "http://localhost/API/";             //颜晓军本地配置
  //var WEBURL = "http://localhost:8082/API/";        //杜贺本地配置
<<<<<<< HEAD
  var WEBURL = "http://localhost:81/API/"           //翁涛涛本地配置
  //var WEBURL = "http://localhost:8082/API/"; //张瑞广本地配置
=======
  //var WEBURL = "http://localhost:81/API/"           //翁涛涛本地配置
  // var WEBURL = "http://localhost:8082/API/"; //张瑞广本地配置
>>>>>>> e389db19bb5626403e880d3d93b2e1b205b86280
  // var WEBURL = "http://localhost:81/API/";          //陈镐哲本地配置
  //var WEBURL = "http://localhost:8082/LuBaoAPI/";   //李林俊本地配置
  //var WEBURL = "http://localhost:8080/API/";        //王仪本地配置
WebTM/views/ϵͳ¹ÜÀí/¶à¼¶ÉóÅú/ÉóºËÁ÷³Ìµ¥/Xt_CheckFlowEdit.html
@@ -35,6 +35,7 @@
                    <div class="layui-tab" lay-filter="tab-POStockInBill">
                        <ul class="layui-tab-title" lay-filter="tab-all">
                            <li lay-id="1" style="padding:1px;" class="layui-this">基本信息</li>
                            <li lay-id="2" style="padding:1px;">工序子表</li>
                        </ul>
                        <div class="layui-tab-content">
                            <!--基本信息-->
@@ -81,6 +82,16 @@
                                        </div>
                                    </div>
                                </div>
                            </div>
                            <!--工序子表-->
                            <div class="layui-tab-item">
                                <table class="layui-hide" id="procTable" lay-filter="procTable"></table>
                                <script type="text/html" id="toolbarProc">
                                    <div class="layui-btn-container">
                                        <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-AddLineProc"><i class="layui-icon layui-icon-form"></i>增加一行</button>
                                        <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-CopyLineProc"><i class="layui-icon layui-icon-form"></i>复制一行</button>
                                    </div>
                                </script>
                            </div>
                        </div>
                    </div>
@@ -162,6 +173,30 @@
            }];
            option.data = rowdata;
            table.render(option);
            //工序子表配置
            var procOption = {
                elem: '#procTable'
                , toolbar: '#toolbarProc'
                , limit: 500
                , cellMinWidth: 90
                , height: 400
                , cols: [[
                    { type: 'checkbox', totalRowText: '合计行' }
                    , { type: 'numbers', title: '序号', totalRow: true }
                    , { field: 'HProcID', title: '工序ID', hide: true }
                    , { field: '工序代码', title: '工序代码', edit: 'text', event: "CheckHProcID" }
                    , { field: '工序', title: '工序名称' }
                    , { field: 'HRemark', title: '备注', edit: 'text' }
                    , { fixed: 'right', title: '操作', toolbar: '#barDemo' }
                ]]
            };
            //工序子表初始数据
            var procRowdata = [{
                "HProcID": 0, "工序代码": "", "工序": "", "HRemark": ""
            }];
            procOption.data = procRowdata;
            table.render(procOption);
            var params = getUrlVars();
            var linterid = params[params[0]]; //从参数中获取 æ•°æ®ç±»åž‹  æ·»åŠ  ä¿å­˜
@@ -294,6 +329,45 @@
                set_GridCellCheck(obj); //行内快捷键筛选
            });
            //#region å·¥åºå­è¡¨äº‹ä»¶
            //工序子表头工具栏事件
            table.on('toolbar(procTable)', function (obj) {
                var checkStatus = table.checkStatus('procTable')
                    , data = checkStatus.data;
                //新增行表格数据
                var NewProcRow = {
                    "HProcID": 0, "工序代码": "", "工序": "", "HRemark": ""
                };
                switch (obj.event) {
                    case 'btn-AddLineProc':
                        table.cache["procTable"].push(NewProcRow);
                        procOption.data = table.cache["procTable"];
                        table.render(procOption);
                        break;
                    case 'btn-CopyLineProc':
                        var copydata = JSON.stringify(data);
                        if (data.length <= 0) {
                            layer.msg("请选择需要复制的一行!");
                        }
                        else if (data.length > 1) {
                            layer.msg("只能选择复制一行!");
                        }
                        else {
                            var copydata2 = copydata.substring(1, copydata.length);
                            var copyrow = copydata2.substring(0, copydata2.length - 1);
                            table.cache["procTable"].push(JSON.parse(copyrow));
                            procOption.data = table.cache["procTable"];
                            table.render(procOption);
                        }
                        break;
                }
            });
            //工序子表行内事件
            table.on('tool(procTable)', function (obj) {
                set_ProcGridDelete(obj);
                set_ProcGridCellCheck(obj);
            });
            //#endregion
            //#endregion
@@ -416,6 +490,79 @@
                })
            }
            //工序子表行内删除
            function set_ProcGridDelete(obj) {
                var data = obj.data;
                var rowIndex = $(obj.tr).attr("data-index");
                if (obj.event === 'del') {
                    layer.confirm('真的删除行吗?', function (index) {
                        if (rowIndex === '0') {
                            layer.msg('首行无法删除!!!');
                        } else {
                            obj.del();
                            procOption.data = table.cache["procTable"];
                            table.reload(procOption);
                            layer.close(index);
                        }
                    });
                }
            }
            //工序子表行内快捷键
            function set_ProcGridCellCheck(obj) {
                $(document).off('keydown', ".layui-table-edit").on('keydown', '.layui-table-edit', function (e) {
                    if (event.key == "F7") {
                        if (obj.event == "CheckHProcID") {
                            //打开工序小窗体
                            layer.open({
                                type: 2
                                , skin: "layui-layer-rim" //加上边框
                                , title: "工序列表"  //标题
                                , closeBtn: 1  //窗体右上角关闭 çš„ æ ·å¼
                                , shift: 2 //弹出动画
                                , area: ["90%", "90%"] //窗体大小
                                , maxmin: true //设置最大最小按钮是否显示
                                , content: ["../../../基础资料/生产基础资料/Gy_Process.html?Type=HProcess", "yes"]
                                , btn: ["确定", "取消"]
                                , btn1: function (index, laero) {
                                    //按钮一  çš„回调
                                    var iframeWindow = window["layui-layer-iframe" + index];//获取弹框页面
                                    var checkStatus = iframeWindow.layui.table.checkStatus("mainTable");//获取选中的数据
                                    if (checkStatus.data.length == 0) {
                                        return layer.msg("请至少选择一条数据!");
                                    }
                                    if (checkStatus.data.length > 1) {
                                        return layer.msg("只能选择一条数据!");
                                    }
                                    //更新表格缓存的数据
                                    obj.update({
                                        "工序": checkStatus.data[0].工序名称
                                        , "HProcID": checkStatus.data[0].HItemID
                                        , "工序代码": checkStatus.data[0].工序代码
                                    })
                                    layer.close(index);//关闭弹窗
                                }
                                , end: function () {
                                    if (OptionData.length > 0) {
                                        //更新表格缓存的数据
                                        obj.update({
                                            "工序": OptionData[0].工序名称
                                            , "工序代码": OptionData[0].工序代码
                                            , "HProcID": OptionData[0].HItemID
                                        })
                                        OptionData = [];
                                    }
                                }
                            })
                        }
                        obj.event = "";
                    }
                })
            }
            //多选  åˆ·æ–°è¡¨æ ¼
            function checkRefresh() {
                for (var i = 1; i <= option.data.length; i++) {
@@ -441,10 +588,21 @@
                        num.push(table.cache["mainTable"][i])
                    }
                }
                //工序子表数据
                var procNum = [];
                if (table.cache["procTable"] != undefined) {
                    for (var i = 0; i < table.cache["procTable"].length; i++) {
                        if (table.cache["procTable"][i] != "") {
                            table.cache["procTable"][i].LAY_TABLE_INDEX = i;
                            procNum.push(table.cache["procTable"][i])
                        }
                    }
                }
                //data.field["HStandard"]=$("")
                var sMainStr = JSON.stringify(data.field);
                var sSubStr = JSON.stringify(num);
                var sMainSub = sMainStr + ';' + sSubStr + ';' + OperationType + ";" + sessionStorage["HUserName"];
                var sProcSubStr = JSON.stringify(procNum);
                var sMainSub = sMainStr + ';' + sSubStr + ';' + sProcSubStr + ';' + OperationType + ";" + sessionStorage["HUserName"];
                var index = layer.load();
                $.ajax({
@@ -523,9 +681,50 @@
                                }
                            }
                            form.render('checkbox');
                            //加载工序子表数据
                            loadProcTableData(linterid);
                        }
                    }
                })
            }
            //加载工序子表数据
            function loadProcTableData(linterid) {
                var sWhere = "and HInterID=" + linterid;
                $.ajax({
                    url: GetWEBURL() + "/Xt_CheckFlowBill/Xt_CheckFlowProcList",
                    type: "GET",
                    data: { "sWhere": sWhere },
                    success: function (d) {
                        if (d.code == 1) {
                            var procRowdata = [];
                            if (d.data && d.data.length > 0) {
                                for (var i = 0; i < d.data.length; i++) {
                                    procRowdata.push({
                                        "HProcID": d.data[i].HProcID,
                                        "工序代码": d.data[i].工序代码,
                                        "工序": d.data[i].工序,
                                        "HRemark": d.data[i].备注
                                    });
                                }
                            } else {
                                procRowdata = [{ "HProcID": 0, "工序代码": "", "工序": "", "HRemark": "" }];
                            }
                            procOption.data = procRowdata;
                            table.render(procOption);
                        } else {
                            //如果没有数据,显示空表格
                            procOption.data = [{ "HProcID": 0, "工序代码": "", "工序": "", "HRemark": "" }];
                            table.render(procOption);
                        }
                    },
                    error: function () {
                        //加载失败时显示空表格
                        procOption.data = [{ "HProcID": 0, "工序代码": "", "工序": "", "HRemark": "" }];
                        table.render(procOption);
                    }
                });
            }
            //验证
@@ -551,6 +750,10 @@
            }
            //#endregion
        });
        //工序
        function GetProcessValue(obj) {
            OptionData = obj;
        }
    </script>
</body>
</html>
WebTM/views/ϵͳ¹ÜÀí/¶à¼¶ÉóÅú/ÉóºËÁ÷³Ìµ¥/Xt_CheckUserRight.html
@@ -34,7 +34,24 @@
                                <div class="layui-form-item" style="border-top: solid 1px #F6F6F6;">
                                    <div class="layui-row" style="padding:10px 0">
                                        <div class="layui-col-xs3 layui-inline">
                                            <div id="TreeTable" class="demo-tree demo-tree-box"></div>
                                            <div style="margin-bottom: 5px;">
                                                <div class="layui-inline">
                                                    <label class="layui-form-label" style="width: 70px;">用户编码</label>
                                                    <div class="layui-input-inline" style="width: 100px;">
                                                        <input type="text" class="layui-input" name="UserNumber" id="UserNumber">
                                                    </div>
                                                </div>
                                                <div class="layui-inline">
                                                    <label class="layui-form-label" style="width: 70px;">用户名称</label>
                                                    <div class="layui-input-inline" style="width: 100px;">
                                                        <input type="text" class="layui-input" name="UserName" id="UserName">
                                                    </div>
                                                </div>
                                                <button class="layui-btn layui-btn-xs" type="button" lay-submit="" lay-filter="btnSearchUser" id="btnSearchUser">
                                                    <i class="layui-icon layui-icon-search"></i>
                                                </button>
                                            </div>
                                            <table class="" id="userTable" lay-filter="userTable"></table>
                                        </div>
                                        <div class="layui-col-xs3 layui-inline">
                                            <div>
@@ -66,7 +83,7 @@
        base: '../../../../layuiadmin/' //静态资源所在路径
    }).extend({
        index: 'lib/index', //主入口模块
    }).use(['index', 'form', 'table', 'element', 'laypage', 'laydate',"tree"], function () {
    }).use(['index', 'form', 'table', 'element', 'laypage', 'laydate'], function () {
        //#region å…¬ç”¨å˜é‡
        var $ = layui.$
            , admin = layui.admin
@@ -76,12 +93,12 @@
            , element = layui.element
            , laypage = layui.laypage
            , laydate = layui.laydate
            , tree = layui.tree
        var sWhere = "";
        var userID = "";
        var option1 = [];
        var option2 = [];
        var userOption = [];
        var cols = [
            { type: 'radio' },
            { field: "HInterID", title: "HInterID", width: 100, hide: true },
@@ -89,6 +106,12 @@
            { field: "用户名称", title: "用户名称", width: 100 },
            { field: "hcheckitemid", title: "hcheckitemid", width: 100, hide: true },
            { field: "审批项目", title: "审批项目", width: 110 }
        ];
        var userCols = [
            { field: "czybm", title: "用户编码", width: 200 },
            { field: "用户名称", title: "用户名称", width: 200 }
        ];
        //#endregion
@@ -99,6 +122,11 @@
        //#endregion
        //#region è§¦å‘事件:包括form.on(){}格式的所有点击事件、选择事件等
        //查询用户按钮
        form.on('submit(btnSearchUser)', function () {
            get_UserList();
        });
        //选择审批流按钮
        form.on('submit(btnHCheckFlowID)', function () {
@@ -121,6 +149,38 @@
            get_btnRight();
        });
        //#region ç”¨æˆ·è¡¨æ ¼è¡Œç‚¹å‡»é€‰ä¸­
        table.on('row(userTable)', function (obj) {
            //清除所有行的选中样式
            var trs = obj.tr.parent().find('tr');
            trs.each(function() {
                $(this).attr({ "style": "background:" });
                $(this).find('.layui-form-radio').removeClass('layui-form-radioed');
            });
            //选中当前行
            obj.tr.attr({ "style": "background:#ceedfa;color:black" });
            obj.tr.find('.layui-form-radio').addClass('layui-form-radioed');
            //更新缓存数据 - æ¸…除其他行的选中状态
            layui.each(table.cache.userTable, function (i, l) {
                l.LAY_CHECKED = false;
            });
            //选中当前行
            layui.each(table.cache.userTable, function (i, l) {
                if (obj.tr.index() == l.LAY_TABLE_INDEX) {
                    l.LAY_CHECKED = true;
                }
            });
            //选中用户后加载审批项目数据
            var data = obj.data;
            userID = data.czybm;
            get_Display1();
            get_Display2();
        });
        //#endregion
        //#endregion
        //#region æœ¬é¡µé¢è¢«è°ƒç”¨çš„æ‰€æœ‰æ–¹æ³•
@@ -128,15 +188,23 @@
        // åˆå§‹åŒ–界面
        function set_ClearBill() {
            set_InitGrid();
            //查询
            get_Display(sWhere);
            //查询用户列表
            get_UserList();
        }
        // åˆå§‹åŒ–表格方法
        function set_InitGrid() {
            userOption = {
                elem: '#userTable'
                , height: 700
                , cols: [userCols]
                , limit: 50
                , data: []
            };
            option1 = {
                elem: '#mainTable'
                , height: 500
                , height: 700
                , cols: [cols]
                , limit: 50
                , data: []
@@ -144,36 +212,47 @@
            option2 = {
                elem: '#mainTable1'
                , height: 500
                , height: 700
                , cols: [cols]
                , limit: 50
                , data: []
            };
            table.render(userOption);
            table.render(option1);
            table.render(option2);
        }
        // æ ‘状图查询
        function get_Display(sWhere) {
        //查询用户列表
        function get_UserList() {
            var userNumber = $("#UserNumber").val();
            var userName = $("#UserName").val();
            var sWhere = "";
            if (userNumber) {
                sWhere += " and ç”¨æˆ·ç¼–码 like '%" + userNumber + "%'";
            }
            if (userName) {
                sWhere += " and ç”¨æˆ·åç§° like '%" + userName + "%'";
            }
            var ajaxLoad = layer.load();
            $.ajax({
                url: GetWEBURL() + '/Xt_CheckFlowBill/Xt_CheckUserRight',
                url: GetWEBURL() + '/Xt_User/list',
                type: "GET",
                data: { "sWhere": sWhere, "user": sessionStorage["HUserName"] },
                success: function (data1) {
                    if (data1.count == 1) {
                        layer.close(ajaxLoad);
                        tree.render({
                            elem: '#TreeTable' //默认是点击节点可进行收缩
                            , data: data1.data
                            , click: function (obj) {
                                var data = obj.data;  //获取当前点击的节点数据
                                if (data.id != "1") {
                                    userID = data.id;
                                    get_Display1();
                                    get_Display2();
                                }
                        var userList = [];
                        if (data1.data && data1.data.length > 0) {
                            for (var i = 0; i < data1.data.length; i++) {
                                userList.push({
                                    czybm: data1.data[i].用户编码,
                                    ç”¨æˆ·åç§°: data1.data[i].用户名称
                                });
                            }
                        });
                        }
                        userOption.data = userList;
                        table.render(userOption);
                    } else {
                        layer.close(ajaxLoad);
                        layer.alert(data1.code + data1.Message, { icon: 5 });