WebTM/views/¼Æ»®¹ÜÀí/¹¤ÒÕ·Ïß/Gy_RoutingBill.html
@@ -72,6 +72,12 @@
                        <button class="layui-btn layui-btn-normal" style="margin-left: 0px" type="button" lay-submit="" lay-filter="set_AbandonCheck" id="set_AbandonCheck">反审核</button>
                        <button class="layui-btn layui-btn-normal" style="margin-left: 0px" type="button" lay-submit="" lay-filter="set_CloseBill" id="set_CloseBill">关闭</button>
                        <button class="layui-btn layui-btn-normal" style="margin-left: 0px" type="button" lay-submit="" lay-filter="set_CancelCloseBill" id="set_CancelCloseBill">反关闭</button>
                        <button class="layui-btn layui-btn-normal" style="margin-left: 0px" type="button" lay-submit="" lay-filter="set_Copy" id="set_Copy">复制</button>
                        <button class="layui-btn layui-btn-normal" style="margin-left: 0px" type="button" lay-submit="" lay-filter="set_CheckFlowInfo" id="set_CheckFlowInfo">查看审批进度</button>
                        <button class="layui-btn layui-btn-normal" style="margin-left: 0px" type="button" lay-submit="" lay-filter="set_CheckBill_Flow" id="set_CheckBill_Flow">多级审核</button>
                        <button class="layui-btn layui-btn-normal" style="margin-left: 0px" type="button" lay-submit="" lay-filter="set_AbandonCheck_Flow" id="set_AbandonCheck_Flow">多级反审核</button>
                        <button class="layui-btn layui-btn-normal" style="margin-left: 0px" type="button" lay-submit="" lay-filter="set_RejectCheck_Flow" id="set_RejectCheck_Flow">驳回</button>
                        <button class="layui-btn layui-btn-normal" style="margin-left: 0px" type="button" lay-submit="" lay-filter="set_WithdrawCheck_Flow" id="set_WithdrawCheck_Flow">撤回</button>
                    </div>
                    <div class="layui-tab" lay-filter="tab-POStockInBill">
                        <ul class="layui-tab-title" lay-filter="tab-all">
@@ -582,6 +588,7 @@
                , "HQCSchemeID_Proc": 0, "HQCSchemeNumber_Proc": "", "HQCSchemeName_Proc": ""
                , "HQCSchemeID_Patrol": 0, "HQCSchemeNumber_Patrol": "", "HQCSchemeName_Patrol": ""
                , "HQCFst": false, "HQCProc": false, "HQCPatrol": false, "HMaterToSourceCtrl": false
                ,"HSubStdEmpAvg_S": 0
            }];
            var HModName = "Gy_RoutingBill";
            //#endregion
@@ -642,7 +649,9 @@
                    , { field: 'HQCSchemeID_Patrol', title: '巡检检验方案ID', hide: true }//f7
                    , { field: 'HQCSchemeNumber_Patrol', title: '巡检检验方案代码', edit: 'text', event: "HQCSchemeNumber_Patrol", width: 125 }
                    , { field: 'HQCSchemeName_Patrol', title: '巡检检验方案名称', width: 125 }//f7
                    , { field: 'HWorkQty', title: '加工数量', edit: 'text', width: 125 }
                    , { field: 'HSubStdEmpQty_S', title: '产线人数', edit: 'text', width: 125 }
                    , { field: 'HSubStdEmpAvg_S', title: '人均产能', edit: 'text', width: 125}
                    //, { field: 'HPassRate', title: '良率', edit: 'text' }//默认
                    //, { field: 'HProcID_S', title: '工段', edit: 'text' }
                    ////, { field: 'HCenterID_S', title: '产线中心id', hide: true }//hide: true
@@ -676,7 +685,8 @@
                    //, { field: 'HAutoTrunFlag', title: '自动移转', templet: "#HAutoTrunFlag" }//chenbox
                    //, { field: 'HProcCheckNote', title: '本工序确认记录', edit: 'text' }
                    //, { field: 'HProcWorkNum', title: '程序号', edit: 'text' }
                    //, { field: 'HWorkTimes_S', title: '产品单件工时', edit: 'text' }
                    /* , { field: 'HWorkTimes_S', title: '产品单件工时', edit: 'text' }*/
                    , { field: 'HWorkTimes_S', title: '单件生产节拍', edit: 'text' }
                    , { fixed: 'right', title: '操作', toolbar: '#barDemo' }
                ]]
                //, done: function (res, curr, count) {
@@ -787,6 +797,8 @@
                        $("#HInterID").val(d.data[0].HInterID);
                        $("#HBillNo").val(d.data[0].HBillNo);
                        $("#HDate").val(Format(new Date(), "yyyy-MM-dd"));
                        $("#HBeginDate").val(Format(new Date(), "yyyy-MM-dd"));
                        $("#HEndDate").val(Format(new Date(2100, 12, 31), "yyyy-MM-dd"));
                    }
                });
            }
@@ -988,6 +1000,32 @@
                set_CancelCloseBill(data);
            });
            //查看审批进度
            form.on('submit(set_CheckFlowInfo)', function (data) {
                set_CheckFlowInfo();
            });
            //多级审核
            form.on('submit(set_CheckBill_Flow)', function (data) {
                set_CheckBill_Flow(0);
            });
            //多级反审核
            form.on('submit(set_AbandonCheck_Flow)', function (data) {
                set_CheckBill_Flow(1);
            });
            //驳回
            form.on('submit(set_RejectCheck_Flow)', function (data) {
                set_RejectCheck_Flow();
            });
            //撤回
            form.on('submit(set_WithdrawCheck_Flow)', function (data) {
                set_WithdrawCheck_Flow();
            });
            //复制
            form.on('submit(set_Copy)', function (data) {
                set_Copy();
            });
            //是否默认工艺
            form.on('checkbox(checkboxHStandard)', function (data) {
@@ -1154,7 +1192,7 @@
                //新增行表格数据
                var NewRow = {
                    "HProcNo": (table.cache["mainTable"].length + 1) * 10, "HProcID_S": 0, "HProcType": "主工序", "HCenterID_S": 0, "HCenterID_SName": ""
                    "HProcNo": (table.cache["mainTable"].length + 1) * 10, "HProcID_S": 0, "HProcType": "主工序", "HCenterID_S": 0, "HCenterID_SName": "","工序代码":""
                    , "HWorkQty_S": 0, "HSubStdEmpQty_S": 0, "HMouldNo": "", "HChangeMould": 0, "HPackStd": ""
                    , "HPack": "", "HPutArea": "", "HMyWorkDays": 0, "HMyFixWorkDays": 0, "工序": "","工段":""
                    , "HProcID": 0, "工作中心代码": "", "HCenterID": 0, "工作中心": "", "HSupID": 0
@@ -1170,6 +1208,7 @@
                    , "HQCSchemeID_Proc": 0, "HQCSchemeNumber_Proc": "", "HQCSchemeName_Proc": ""
                    , "HQCSchemeID_Patrol": 0, "HQCSchemeNumber_Patrol": "", "HQCSchemeName_Patrol": ""
                    , "HQCFst": false, "HQCProc": false, "HQCPatrol": false, "HMaterToSourceCtrl": false
                    , "HSubStdEmpAvg_S": 0
                };
                switch (obj.event) {
                    case 'btn-AddLine':
@@ -1334,6 +1373,33 @@
                }
            })
            //明细网格单元格编辑事件
            table.on('edit(mainTable)', function (obj) {
                var value = obj.value //得到修改后的值
                    , data = obj.data //得到所在行所有键值
                    , field = obj.field; //得到字段
                switch (field) {
                    case 'HSubStdEmpQty_S': //产线人数
                        if (value != 0 && value != "" && data.HSubStdEmpAvg_S != 0 && data.HSubStdEmpAvg_S != "") {
                            //同步更新表格和缓存对应的值
                            obj.update({
                                HWorkQty: Number((value * data.HSubStdEmpAvg_S).toFixed(2))
                            });
                            //table.render(option)
                        }
                        break;
                    case 'HSubStdEmpAvg_S': //产线人均产能
                        if (value != 0 && value != "" && data.HSubStdEmpQty_S != 0 && data.HSubStdEmpQty_S != "") {
                            //同步更新表格和缓存对应的值
                            obj.update({
                                HWorkQty: Number((value * data.HSubStdEmpQty_S).toFixed(2))
                            });
                            //table.render(option)
                        }
                        break;
                }
            })
            $('#HName').on('keydown', function (event) {//工艺路线名称
                if (event.keyCode == 118) {
                    layer.msg("工艺路线名称F7按钮")
@@ -1342,11 +1408,36 @@
            //保存提交
            form.on('submit(btnSave)', function (data) {//提交
                if (AllowLoadData(data)) {
                    set_AddNew(data);
                const procNos = table.cache["mainTable"].map(item => Number(item.HProcNo));
                if (isSortedAscending(procNos) && haveHProcNO9999()) {
                    if (AllowLoadData(data)) {
                        set_AddNew(data);
                    }
                } else {
                    layer.msg('请注意流水号次序或者是否有转工序');
                }
            });
            // å‡½æ•°ï¼šåˆ¤æ–­æ•°ç»„是否从小到大排序
            function isSortedAscending(arr) {
                for (let i = 0; i < arr.length - 1; i++) {
                    if (arr[i] > arr[i + 1]) {
                        return false;
                    }
                }
                return true;
            }
            //复制时保证转工序存在
            function haveHProcNO9999() {
                if (OperationType == 2 || OperationType == 3) {
                    for (var i = 0; i < option.data.length; i++) {
                        if (option.data[i]["HProcNo"] == 9999 && option.data[i]["工序代码"] == 9999) {
                            return true
                        }
                    }
                    return false;
                }
                return true;
            }
            //退出
            form.on('submit(btnEdit)', function (data) {
                if (params[1] != null) {
@@ -1865,6 +1956,162 @@
                })
            }
            //#region å¤šçº§ åå®¡æ ¸/审核数据
            function set_CheckBill_Flow(num) {
                var InterID = $("#HInterID").val();
                if (InterID != 0) {
                    //逻辑审核方法
                    $.ajax({
                        type: "GET",
                        url: GetWEBURL() + "/Gy_Routing/AuditFlow", //方法所在页面和方法名
                        data: { "HInterID": InterID, "IsAudit": num, "CurUserName": sessionStorage["HUserName"], "CurUserID": sessionStorage["Czybm"] },
                        success: function (result) {
                            if (result.count == 1) {
                                layer.msg(result.Message, { time: 1 * 1000, icon: 1 }, function () {
                                    // å¾—到frame索引
                                    var index = layer.getFrameIndex(window.name);
                                    //关闭当前frame
                                    layer.close(index);
                                    //修改为功后刷新界面
                                    $("#btnSearch").trigger('click');
                                });
                            } else {
                                layer.alert(result.code + result.Message, { icon: 5 });
                            }
                        }, error: function () {
                            layer.alert("接口请求失败!", { icon: 5 });
                        }
                    });
                }
                else {
                    layer.msg('请选择请选择在审批流的单据审核!');
                }
            }
            //#endregion
            //#region é©³å›ž
            function set_RejectCheck_Flow() {
                var InterID = $("#HInterID").val();
                if (InterID != 0) {
                    //逻辑审核方法
                    $.ajax({
                        type: "GET",
                        url: GetWEBURL() + "/Gy_Routing/RejectCheckFlow", //方法所在页面和方法名
                        data: { "HInterID": InterID, "CurUserID": sessionStorage["Czybm"] },
                        success: function (result) {
                            if (result.count == 1) {
                                layer.msg(result.Message, { time: 1 * 1000, icon: 1 }, function () {
                                    // å¾—到frame索引
                                    var index = layer.getFrameIndex(window.name);
                                    //关闭当前frame
                                    layer.close(index);
                                });
                                //修改为功后刷新界面
                                $("#btnSearch").trigger('click');
                            } else {
                                layer.alert(result.code + result.Message, { icon: 5 });
                            }
                        }, error: function () {
                            layer.alert("接口请求失败!", { icon: 5 });
                        }
                    });
                }
                else {
                    layer.msg('请选择在审批流的单据驳回!');
                }
            }
            //#endregion
            //#region æ’¤å›ž
            function set_WithdrawCheck_Flow() {
                var InterID = $("#HInterID").val();
                if (InterID != 0) {
                    //逻辑审核方法
                    $.ajax({
                        type: "GET",
                        url: GetWEBURL() + "/Gy_Routing/WithdrawCheckFlow", //方法所在页面和方法名
                        data: { "HInterID": InterID, "user": sessionStorage["HUserName"] },
                        success: function (result) {
                            if (result.count == 1) {
                                layer.msg(result.Message, { time: 1 * 1000, icon: 1 }, function () {
                                    // å¾—到frame索引
                                    var index = layer.getFrameIndex(window.name);
                                    //关闭当前frame
                                    layer.close(index);
                                });
                                //修改为功后刷新界面
                                $("#btnSearch").trigger('click');
                            } else {
                                layer.alert(result.code + result.Message, { icon: 5 });
                            }
                        }, error: function () {
                            layer.alert("接口请求失败!", { icon: 5 });
                        }
                    });
                }
                else {
                    layer.msg('请选择在审批流的单据驳回!');
                }
            }
            //#endregion
            //#region å¤åˆ¶
            function set_Copy() {
                //制单人
                $("#HMaker").val(sessionStorage["HUserName"]);
                $("#hmakers").val(sessionStorage["HUserName"]);
                $("#hmakedate").val(Format(new Date(), "yyyy-MM-dd"));
                $("#HBeginDate").val(Format(new Date(), "yyyy-MM-dd"));
                $("#HEndDate").val(Format(new Date(2100, 12, 31), "yyyy-MM-dd"));
                //设置hinterid
                $.ajax({
                    url: GetWEBURL() + "/Web/GetMAXNum",
                    type: "GET",
                    async: false,
                    data: { "HBillType": '3301' },
                    success: function (d) {
                        $("#HInterID").val(d.data[0].HInterID);
                        $("#HBillNo").val(d.data[0].HBillNo);
                        $("#HDate").val(Format(new Date(), "yyyy-MM-dd"));
                    }
                });
                OperationType = 2;
            }
            //#endregion
            //#region æŸ¥çœ‹å®¡æ‰¹è¿›åº¦
            function set_CheckFlowInfo() {
                var InterID = $("#HInterID").val();
                if (InterID != 0) {
                    layer.open({
                        type: 2
                        , area: ['70%', '70%']
                        , title: '单据审批进度'
                        , closeBtn: 1
                        , shade: 0.6 //遮罩透明度
                        , maxmin: true //允许全屏最小化
                        , anim: 0 //0-6的动画形式,-1不开启
                        , content: '../../系统管理/多级审批/审批进度/Xt_CheckFlowProgressList.html?linterid=' + InterID + '&HSouceBillType=3301'
                        , resize: false,
                        end: function () {
                            ////修改为功后刷新界面
                            //if (get_needClose_Bar == 0) {
                            //    $("#btnSearch").trigger('click');
                            //} else if (get_needClose_Bar == 1) {
                            //    $("#get_needClose").trigger('click');
                            //}
                        }
                        , cancel: function () {
                        }
                    })
                } else {
                    layer.msg('请选择正确数据查看!');
                }
            }
            //#endregion
            //行内删除快捷键
            function set_GridCellCheck(obj) {
                $(document).off('keydown', ".layui-table-edit").on('keydown', '.layui-table-edit', function (e) {
@@ -1993,7 +2240,8 @@
                                                , "HQCSchemeID_Fst": 0, "HQCSchemeNumber_Fst": "", "HQCSchemeName_Fst": ""
                                                , "HQCSchemeID_Proc": 0, "HQCSchemeNumber_Proc": "", "HQCSchemeName_Proc": ""
                                                , "HQCSchemeID_Patrol": 0, "HQCSchemeNumber_Patrol": "", "HQCSchemeName_Patrol": ""
                                                , "HQCFst": false, "HQCProc": false, "HQCPatrol": false,"HMaterToSourceCtrl":false
                                                , "HQCFst": false, "HQCProc": false, "HQCPatrol": false, "HMaterToSourceCtrl": false
                                                , "HSubStdEmpAvg_S": 0
                                            })
                                            j++;
                                        }
@@ -2440,6 +2688,7 @@
                                    , "HQCSchemeID_Proc": d.data[i].HQCSchemeID_Proc, "HQCSchemeNumber_Proc": d.data[i].转序检验方案代码, "HQCSchemeName_Proc": d.data[i].转序检验方案
                                    , "HQCSchemeID_Patrol": d.data[i].HQCSchemeID_Patrol, "HQCSchemeNumber_Patrol": d.data[i].巡检检验方案代码, "HQCSchemeName_Patrol": d.data[i].巡检检验方案
                                    , "HQCFst": d.data[i].HQCFst == 1 ? true : false, "HQCProc": d.data[i].HQCProc == 1 ? true : false, "HQCPatrol": d.data[i].HQCPatrol == 1 ? true : false, "HMaterToSourceCtrl": d.data[i].HMaterToSourceCtrl == 1 ? true : false
                                    , "HSubStdEmpAvg_S": d.data[i].人均产能
                                }
                            )
                        }
@@ -2498,6 +2747,14 @@
                for (var i = 0; i < table.cache["mainTable"].length; i++) {
                    if (table.cache["mainTable"][i] != "") {
                        table.cache["mainTable"][i].LAY_TABLE_INDEX = i;
                        //加工数量=产线人数 * äº§çº¿äººå‡äº§èƒ½
                        if (table.cache["mainTable"][i].HSubStdEmpQty_S != 0 && table.cache["mainTable"][i].HSubStdEmpQty_S != "" && table.cache["mainTable"][i].HSubStdEmpAvg_S != 0 && table.cache["mainTable"][i].HSubStdEmpAvg_S != "") {
                            table.cache["mainTable"][i].HWorkQty = Number((table.cache["mainTable"][i].HSubStdEmpQty_S * table.cache["mainTable"][i].HSubStdEmpAvg_S).toFixed(2))
                        }
                        num.push(table.cache["mainTable"][i])
                    }                 
                }
@@ -2743,7 +3000,9 @@
            //刷新流水号
            function btn_Refresh(data) {
                for (var i = 0; i < option.data.length; i++) {
                    option.data[i]["HProcNo"] = (i + 1) * 10;
                    if (option.data[i]["HProcNo"] != 9999) {
                        option.data[i]["HProcNo"] = (i + 1) * 10;
                    }
                }
                table.render(option);
            }
@@ -2766,8 +3025,10 @@
                                if (i >= dataCol.length) {
                                    continue;
                                }
                                var dataCols = dataCol[i].split('|');
                                if (dataCol[i]) {
                                    var dataCols = dataCol[i].split('|');
                                }
                                //隐藏列
                                if (dataCols[1] == 1) {
                                    option.cols[0][i + 1]["hide"] = true;