WebTM/views/ÏîÄ¿¹ÜÀí/ÏîÄ¿½×¶Î/PM_ProjectReportBill.html
@@ -14,7 +14,7 @@
    <script src="../../../layuiadmin/Scripts/jquery-1.4.1.js"></script>
    <script src="../../../layuiadmin/Scripts/webConfig.js"></script>
    <script src="../../../layuiadmin/PubCustom.js"></script>
    <style>
    <!--<style>
        .main-btn { /*头部主按钮*/
            padding: 0 2px; /*调整按钮左右空隙大小*/
            height: 30px;
@@ -44,7 +44,7 @@
        .layui-form-label {
            width: 25%;
        }
    </style>
    </style>-->
</head>
<body>
@@ -59,10 +59,10 @@
                        <button class="layui-btn layui-btn-normal" style="margin-left: 0px" type="button" lay-submit="" lay-filter="btnSave" id="btnSave">保存</button>
                        <button class="layui-btn layui-btn-normal" style="margin-left: 0px" type="button" lay-submit="" lay-filter="btnEdit" id="btnEdit">退出</button>
                        <button class="layui-btn layui-btn-normal" style="margin-left: 0px" type="button" lay-submit="" lay-filter="set_CheckBill" id="set_CheckBill">审核</button>
                        <!--<button class="layui-btn layui-btn-normal" style="margin-left: 0px" type="button" lay-submit="" lay-filter="set_CheckBill" id="set_CheckBill">审核</button>
                        <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_CancelCloseBill" id="set_CancelCloseBill">反关闭</button>-->
                    </div>
                    <div class="layui-tab" lay-filter="tab-POStockInBill">
                        <ul class="layui-tab-title" lay-filter="tab-all">
@@ -75,26 +75,32 @@
                                <div class="layui-form-item" style="padding-top: 10px;">
                                    <div class="layui-row">
                                        <div class="layui-inline">
                                            <label class="layui-form-label" style="width: 85px;">单据号*</label>
                                            <label class="layui-form-label" style="width: 85px;">单据号<label style="color:red"> * </label></label>
                                            <div class="layui-input-block" style="margin-left: 120px;">
                                                <input type="text" class="layui-input" name="HBillNo" lay-verify="HBillNo" id="HBillNo" style="background-color:#efefef4d;" readonly>
                                                <input type="hidden" name="HInterID" id="HInterID" lay-verify="HInterID">
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label" style="width: 85px;">日期</label>
                                            <label class="layui-form-label" style="width: 85px;">日期<label style="color:red"> * </label></label>
                                            <div class="layui-input-block" style="margin-left: 120px; width:180px;">
                                                <input type="date" class="layui-input" lay-verify="HDate" name="HDate" id="HDate" style="padding-left: 80px;">
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label" style="width: 85px;">项目代码<label style="color:red"> * </label></label>
                                            <div class="layui-input-block" style="margin-left: 120px;">
                                                <input type="text" class="layui-input" lay-verify="HProNumber" name="HProNumber" id="HProNumber">
                                            <label class="layui-form-label" style="width: 85px;padding: 9px 18px;">项目代码<label style="color:red"> * </label></label>
                                            <div class="layui-input-block" style="margin-left: 77px;">
                                                <input type="text" class="layui-input" lay-verify="HProNumber" name="HProNumber" id="HProNumber" style="background-color:#efefef4d;width: 60%;display: inline-block;" readonly>
                                                <input type="hidden" name="HProID" id="HProID" lay-verify="HProID" value="0">
                                                <input type="hidden" name="HMainSourceBillType" id="HMainSourceBillType" lay-verify="HMainSourceBillType" value="0">
                                                <input type="hidden" name="HMainSourceBillNo" id="HMainSourceBillNo" lay-verify="HMainSourceBillNo" value="0">
                                                <button class="layui-btn layuiadmin-btn-order" type="button" lay-submit="" lay-filter="btnSearchHProNumber" id="btnSearchHProNumber" style="padding: 0 10px;float: right;margin-right: 3px;">
                                                    <i class="layui-icon layui-icon-search layuiadmin-button-btn"></i>
                                                </button>
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label" style="width: 85px;padding: 9px 18px;">项目阶段*</label>
                                            <label class="layui-form-label" style="width: 85px;padding: 9px 18px;">项目阶段<label style="color:red"> * </label></label>
                                            <div class="layui-input-block" style="margin-left: 77px;">
                                                <input type="text" class="layui-input" lay-verify="HProjectStageName" name="HProjectStageName" id="HProjectStageName" style="background-color:#efefef4d;width: 60%;display: inline-block;" readonly>
                                                <input type="hidden" name="HProjectStageID" id="HProjectStageID" lay-verify="HProjectStageID" value="0">
@@ -108,7 +114,7 @@
                                        <div class="layui-inline">
                                            <label class="layui-form-label" style="width: 85px;">项目阶段详细内容</label>
                                            <div class="layui-input-block" style="margin-left: 120px; width: 501px;">
                                                <input type="text" class="layui-input" lay-verify="HStageNote" name="HStageNote" id="HStageNote">
                                                <input type="text" class="layui-input" lay-verify="HStageNote" name="HStageNote" id="HStageNote" readonly>
                                            </div>
                                        </div>
                                        <div class="layui-inline">
@@ -129,7 +135,7 @@
                                    </div>
                                    <div class="layui-row">
                                        <div class="layui-inline">
                                            <label class="layui-form-label" style="width: 85px;padding: 9px 18px;">汇报人*</label>
                                            <label class="layui-form-label" style="width: 85px;padding: 9px 18px;">汇报人<label style="color:red"> * </label></label>
                                            <div class="layui-input-block" style="margin-left: 77px;">
                                                <input type="text" class="layui-input" lay-verify="HReportEmpName" name="HReportEmpName" id="HReportEmpName" style="background-color:#efefef4d;width: 60%;display: inline-block;" readonly>
                                                <input type="hidden" name="HReportEmpID" id="HReportEmpID" lay-verify="HReportEmpID" value="0">
@@ -181,7 +187,7 @@
                                    </div>
                                    <div class="layui-row">
                                        <div class="layui-inline">
                                            <label class="layui-form-label" style="width: 85px;">备注<label style="color:red"> * </label></label>
                                            <label class="layui-form-label" style="width: 85px;">备注</label>
                                            <div class="layui-input-block" style="margin-left: 120px; width: 501px;">
                                                <input type="text" class="layui-input" lay-verify="HRemark" name="HRemark" id="HRemark">
                                            </div>
@@ -189,7 +195,7 @@
                                    </div>
                                    <div class="layui-row">
                                        <div class="layui-inline">
                                            <label class="layui-form-label" style="width: 85px;">组织*</label>
                                            <label class="layui-form-label" style="width: 85px;">组织<label style="color:red"> * </label></label>
                                            <div class="layui-input-block" style="margin-left: 120px; width: 501px;">
                                                <select name="HOrgID" id="HOrgID" lay-verify="HOrgID">
                                                    <!--动态渲染组织-->
@@ -212,7 +218,7 @@
                                        <div class="layui-inline">
                                            <label class="layui-form-label" style="width: 85px;">修改人</label>
                                            <div class="layui-input-block" style="margin-left: 120px;">
                                                <input type="text" class="layui-input" name="HUpDater" id="hupdater" style="background-color:#efefef4d;" readonly>
                                                <input type="text" class="layui-input" name="HUpdater" id="HUpdater" style="background-color:#efefef4d;" readonly>
                                            </div>
                                        </div>
                                        <div class="layui-inline">
@@ -233,7 +239,7 @@
                                        <div class="layui-inline">
                                            <label class="layui-form-label" style="width: 85px;">修改日期</label>
                                            <div class="layui-input-block" style="margin-left: 120px;">
                                                <input type="text" class="layui-input" name="HUpDaterDate" id="hupdatedate" style="background-color:#efefef4d;" readonly>
                                                <input type="text" class="layui-input" name="HUpdaterDate" id="HUpdaterDate" style="background-color:#efefef4d;" readonly>
                                            </div>
                                        </div>
                                        <div class="layui-inline">
@@ -308,8 +314,8 @@
                                        <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-AddLine"><i class="layui-icon layui-icon-form"></i>增加一行</button>
                                        <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-CopyLine"><i class="layui-icon layui-icon-form"></i>复制一行</button>
                                        <button type="button" class="layui-btn layui-btn-sm" lay-event="set_HideColumn"><i class="layui-icon layui-icon-form"></i>列设置</button>
                                        <button type="button" class="layui-btn layui-btn-sm" lay-event="btn_up"><i class="layui-icon layui-icon-form"></i>上一行</button>
                                        <button type="button" class="layui-btn layui-btn-sm" lay-event="btn_under"><i class="layui-icon layui-icon-form"></i>下一行</button>
                                        <!--<button type="button" class="layui-btn layui-btn-sm" lay-event="btn_up"><i class="layui-icon layui-icon-form"></i>上一行</button>
                                        <button type="button" class="layui-btn layui-btn-sm" lay-event="btn_under"><i class="layui-icon layui-icon-form"></i>下一行</button>-->
                                    </div>
                                </script>
                            </div>
@@ -323,6 +329,12 @@
    <script type="text/html" id="barDemo">
        <!--<a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>-->
        <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>
    </script>
    <!--项目经理-->
    <script type="text/html" id="HIsPM">
        <div class="layui-input-block" style="margin-left: 20px;">
            <input type="checkbox" name="HIsPM" lay-filter="HIsPM" id="HIsPM{{d.LAY_TABLE_INDEX+1}}" lay-skin="primary">
        </div>
    </script>
    <script>
@@ -343,10 +355,13 @@
            var HModName = "PM_ProjectReportBill";
            //表格渲染参数
            var option = {};            //项目阶段表渲染参数
            //记录组织的值
            var HOrgIDBar = 0;
            //获取参数
            var params = getUrlVars();
            var OperationType = params[params[0]]; //从参数中获取 æ•°æ®ç±»åž‹  1添加 ä¿å­˜  2复制  3 ç¼–辑
            var linterid = params[params[1]]; //从参数中获取 å•据内码
            var HProjectStageID = params[params[3]];
            //#endregion
@@ -359,16 +374,14 @@
            }
            //#endregion
            //#region åˆå§‹åŒ–表格
            //DisPlay_HideColumn();
            //#endregion
            //#region åˆå§‹åŒ–组织
            Organ();
            //#endregion
            //#region åˆ¤æ–­å¹¶è®¾ç½®æ“ä½œç±»åž‹ã€é¡µé¢åˆå§‹åŒ–
            if (OperationType == null || OperationType == 1) {                            //新增
                //禁用组织选项
                $("#HOrgID").attr("disabled", true);
                OperationType = 1;
                //生成并设置主表的内码和单据号
                createBillNo();
@@ -404,7 +417,29 @@
                //初始化项目阶段表
                get_InitGrid1();
                RoadBillMain(linterid);
            } else if (OperationType == 4 && HProjectStageID != null) {
                //禁用组织选项
                $("#HOrgID").attr("disabled", true);
                OperationType = 4;
                //生成并设置主表的内码和单据号
                createBillNo();
                //初始化制单人和制单时间
                $("#HMaker").val(sessionStorage["HUserName"]);
                $("#HMakerDate").val(Format(new Date(), "yyyy-MM-dd"));
                //初始化日期
                $("#HDate").val(Format(new Date(), "yyyy-MM-dd"));
                //初始化项目阶段表
                get_InitGrid1();
                //下推-页面设置
                set_ProjectReport_Display();
            }
            //#endregion
            //#region åˆå§‹åŒ–表格
            DisPlay_HideColumn();
            //#endregion
            //#endregion
@@ -412,6 +447,12 @@
            //#region è§¦å‘事件:包括form.on(){}格式的所有点击事件、选择事件等
            //#region å¼¹çª—选择触发事件
            //#region é€‰æ‹©é¡¹ç›®ä»£ç æŒ‰é’®
            form.on('submit(btnSearchHProNumber)', function () {
                get_checkSearchHProNumber();
            });
            //#endregion
            //#region é€‰æ‹©é¡¹ç›®é˜¶æ®µæŒ‰é’®
            form.on('submit(btnSearchHProjectStage)', function () {
                get_checkSearchHProjectStage();
@@ -443,6 +484,18 @@
                $("#HIsKey").val(data.elem.checked);
            });
            //#endregion
            //#region é¡¹ç›®ç»ç†
            form.on('checkbox(HIsPM)', function (data) {
                var elem = data.othis.parents('tr');
                var dataindex = elem.attr("data-index");
                $.each(option.data, function (index, value) {
                    if (value.LAY_TABLE_INDEX == dataindex) {
                        value.HIsPM = data.elem.checked;//把选中下拉框id值赋值给表格缓存
                    }
                });
            });
            //#endregion
            //#endregion
            //#region æ“ä½œæŒ‰é’®è§¦å‘事件
@@ -463,30 +516,6 @@
                }
            });
            //#endregion
            //#region å®¡æ ¸
            form.on('submit(set_CheckBill)', function (data) {
                set_CheckBill(data);
            });
            //#endregion
            //#region åå®¡æ ¸
            form.on('submit(set_AbandonCheck)', function (data) {
                set_AbandonCheck(data);
            });
            //#endregion
            //#region å…³é—­
            form.on('submit(set_CloseBill)', function (data) {
                set_CloseBill(data);
            });
            //#endregion
            //#region åå…³é—­
            form.on('submit(set_CancelCloseBill)', function (data) {
                set_CancelCloseBill(data);
            });
            //#endregion
            //#endregion
            //#endregion
@@ -502,7 +531,7 @@
                    "RowID": (table.cache["mainTable"].length + 1) * 10
                    , 'HEmpID': '0'
                    , 'HEmpName': ''
                    , 'HIsPM': '0'
                    , 'HIsPM': false
                    , 'HRate': '0'
                    , 'HAvgMoney': '0'
                    , 'HCountMoney': '0'
@@ -513,6 +542,7 @@
                        table.cache["mainTable"].push(NewRow);
                        option.data = table.cache["mainTable"];
                        table.render(option);
                        CheckedSet_tableSub_Emp();
                        break;
                    case 'btn-CopyLine':
                        var copydata = JSON.stringify(data);
@@ -528,11 +558,12 @@
                            table.cache["mainTable"].push(JSON.parse(copyrow));//将复制的行强转成json追加到表格上
                            option.data = table.cache["mainTable"];//将数据绑定到data上
                            table.render(option);//将数据渲染到表格上
                            CheckedSet_tableSub_Emp();
                        }
                        break;
                    //列设置
                    case 'set_HideColumn':
                        //get_HideColumn();
                        get_HideColumn();
                        break;
                    //上一行
                    case 'btn_up':
@@ -550,28 +581,15 @@
            table.on('tool(mainTable)', function (obj) {
                set_GridDelete(obj);   //行内删除
                set_GridCellCheck(obj); //行内快捷键筛选
            });
            //#endregion
            //#region å­è¡¨ï¼šè¡Œå†…鼠标离开事件:检查项目阶段是否重复
            table.on('edit(mainTable)', function (obj) {
                if (obj.field == "HEmpID") {
                    var num = 0;
                    for (var i = 0; i < option.data.length; i++) {
                        if (obj.value == option.data[i]["HEmpID"]) {
                            num += 1;
                        }
                        if (num > 1) {
                            layer.msg("成员:" + obj.value + "重复!");
                            return false;
                        }
                    }
                }
            })
            //#endregion
            //
            form.on('submit(Cancel)', function () {
                //sessionStorage["SourceFlag"] = false;
@@ -615,7 +633,10 @@
                                Organization += '<option  style="color:blue;" value="' + data[i].ID + '">' + data[i].Name + '</option>';
                            }
                            $("#HOrgID").append(Organization);
                            $("#HOrgID").val(sessionStorage["OrganizationID"])
                            if (OperationType == 1) {
                                HOrgIDBar = sessionStorage["OrganizationID"];
                            }
                            $("#HOrgID").val(HOrgIDBar);
                            form.render('select');
                        }
                        layer.closeAll("loading");
@@ -653,26 +674,27 @@
            }
            //#endregion
            //#region é¡¹ç›®é˜¶æ®µè¡¨ã€é¡¹ç›®æˆå‘˜è¡¨åˆå§‹åŒ–
            //#region å­è¡¨åˆå§‹åŒ–
            function get_InitGrid1() {
                option = {
                    elem: '#mainTable'
                    , toolbar: '#toolbarDemo'
                    , page: true
                    , limit: 500
                    , limits: [50, 500, 5000, 50000]
                    //, page: true
                    //, limit: 500
                    //, limits: [50, 500, 5000, 50000]
                    , totalRow: true
                    , cellMinWidth: 120
                    , height: 400
                    , cols: [[
                        { type: 'checkbox', totalRowText: '合计行' }
                        , { type: 'numbers', title: '序号', totalRow: true }
                        , { field: 'RowID', title: '行号', hide: true }                                                   //行标识,用于下一行、上一行识别所在行
                        , { field: 'HEmpID', title: '成员ID', hide: true }
                        , { type: 'numbers', title: '序号', style: 'background-color: #f9f9f9;' }
                        , { field: 'RowID', title: '行号', hide: true, style: 'background-color: #f9f9f9;' }                                                   //行标识,用于下一行、上一行识别所在行
                        , { field: 'HEmpID', title: '成员ID', hide: true, style: 'background-color: #f9f9f9;' }
                        , { field: 'HEmpName', title: '成员', edit: 'text', event: "HEmpName" }     //f7
                        , { field: 'HIsPM', title: '项目经理', edit: 'text' }
                        , { field: 'HRate', title: '项目占比', hide: true }
                        , { field: 'HAvgMoney', title: '分配业绩', edit: 'text' }
                        , { field: 'HCountMoney', title: '提成', edit: 'text' }
                        , { field: 'HIsPM', title: '项目经理', templet: "#HIsPM" }
                        , { field: 'HRate', title: '项目占比', totalRow: true, style: 'background-color: #f9f9f9;'}
                        , { field: 'HAvgMoney', title: '分配业绩', totalRow: true, style: 'background-color: #f9f9f9;' }
                        , { field: 'HCountMoney', title: '提成', totalRow: true, style: 'background-color: #f9f9f9;' }
                        , { field: 'HRemarkSub', title: '备注', edit: 'text' }
                        , { fixed: 'right', title: '操作', toolbar: '#barDemo' }
                    ]]
@@ -683,7 +705,7 @@
                        "RowID": 10
                        , 'HEmpID': '0'
                        , 'HEmpName': ''
                        , 'HIsPM': '0'
                        , 'HIsPM': false
                        , 'HRate': '0'
                        , 'HAvgMoney': '0'
                        , 'HCountMoney': '0'
@@ -692,6 +714,90 @@
                ];
                option.data = rowdata;
                table.render(option);
            }
            //#endregion
            //#region é¡¹ç›®ä»£ç é€‰æ‹©é¡µé¢
            function get_checkSearchHProNumber() {
                //打开工程项目小窗体
                layer.open({
                    type: 2
                    , skin: "layui-layer-rim"                           //加上边框
                    , title: "工程项目列表"                             //标题
                    , closeBtn: 1                                       //窗体右上角关闭 çš„ æ ·å¼
                    , shift: 2                                          //弹出动画
                    , area: ["90%", "90%"]                              //窗体大小
                    , maxmin: true                                      //设置最大最小按钮是否显示
                    , content: ["../../项目管理/工程项目/PM_ProjectBillList.html", "yes"]
                    , btn: ["确定", "取消"]
                    , btn1: function (index, laero) {
                        //按钮一  çš„回调
                        var iframeWindow = window["layui-layer-iframe" + index];//获取弹框页面
                        var checkStatus = iframeWindow.layui.table.checkStatus("mainTable");//获取选中的数据
                        if (checkStatus.data.length != 1) {
                            return layer.msg("请选择一条数据");
                        }
                        //设置表头数据
                        //设置文本框值
                        $("#HProNumber").val(checkStatus.data[0].项目代码);
                        $("#HProjectStageID").val(checkStatus.data[0].HProjectStageID);
                        $("#HProjectStageName").val(checkStatus.data[0].项目阶段);
                        $("#HStageNote").val(checkStatus.data[0].项目阶段详细内容);
                        $("#HPMGoodsID").val(checkStatus.data[0].HPMGoodsID);
                        $("#HRelationGoods").val(checkStatus.data[0].阶段相关交付物);
                        $("#HIsKey").val((checkStatus.data[0].里程碑=='Y'?true:false));
                        $("#HRate").val(checkStatus.data[0].阶段业绩占比);
                        //设置复选框选中状态
                        if ($("#HIsKey").val() == "true") {
                            $("#checkboxHIsKey").attr("checked", true);
                            form.render("checkbox");
                        } else {
                            $("#checkboxHIsKey").attr("checked", false);
                            form.render("checkbox");
                        }
                        //设置表体数据
                        var HBillInterID = checkStatus.data[0].HInterID;
                        $.ajax({
                            url: GetWEBURL() + "/PM_ProjectBill/editInit",
                            type: "GET",
                            async: false,
                            data: { "HInterID": HBillInterID, "user": sessionStorage["HUserName"] },
                            success: function (result) {
                                //获取数据库中该项目的项目成员数据
                                var tableSub_Emp = result.data[2];
                                //根据表体列,填充表体数据
                                var num = [];
                                for (var i = 0; i < tableSub_Emp.length; i++) {
                                    var rowdata =
                                        {
                                            "RowID": (i + 1) * 10
                                            , 'HEmpID': tableSub_Emp[i]["HEmployeeID"]
                                            , 'HEmpName': tableSub_Emp[i]["HEmployeeName"]
                                            , 'HIsPM': tableSub_Emp[i]["HIsPM"]
                                            , 'HRate': '0'
                                            , 'HAvgMoney': '0'
                                            , 'HCountMoney': '0'
                                            , 'HRemarkSub': ''
                                        };
                                    num.push(rowdata);
                                }
                                option.data = num;
                                table.render(option);
                                //设置复选框选中状态
                                for (var i = 0; i < tableSub_Emp.length; i++) {
                                    if (tableSub_Emp[i].HIsPM) {
                                        $('#HIsPM' + (i + 1)).attr("checked", true);
                                    }
                                }
                                form.render('checkbox');
                            }
                        })
                        layer.close(index);//关闭弹窗
                    }
                    , btn2: function (index, layero) { }
                })
            }
            //#endregion
@@ -718,10 +824,8 @@
                        }
                        $("#HProjectStageID").val(checkStatus.data[0].HItemID);//项目阶段id
                        $("#HProjectStageName").val(checkStatus.data[0].HName);//项目阶段名称
                        if ($("#HProjectStageName").val() == "") {
                            $("#HProjectStageName").val(checkStatus.data[0].HNumber);
                        }
                        $("#HProjectStageName").val(checkStatus.data[0].阶段名称);//项目阶段名称
                        $("#HStageNote").val(checkStatus.data[0].项目阶段详细内容);//项目阶段详细内容
                        layer.close(index);//关闭弹窗
                    }
                    , btn2: function (index, layero) { }
@@ -824,10 +928,21 @@
                        num.push(table.cache["mainTable"][i])
                    }
                }
                //获取组织数据
                data.field.HPRDORGID = sessionStorage["OrganizationID"];//组织
                data.field.HIsKey = data.field.HIsKey ? 1 : 0;
                //转换里程碑数据
                if (data.field.HIsKey == "true") {
                    data.field.HIsKey = 1;
                } else {
                    data.field.HIsKey = 0;
                }
                //若为编辑-保存,则更新修改人和修改时间
                if (OperationType == 3) {
                    data.field.HUpdater = sessionStorage["HUserName"];
                    data.field.HUpdaterDate = Format(new Date(), "yyyy-MM-dd");
                    $("#HUpdater").val(sessionStorage["HUserName"]);
                    $("#HUpdaterDate").val(Format(new Date(), "yyyy-MM-dd"));
                }
                //获取表头数据并序列化
                var sMainStr = JSON.stringify(data.field);              //主表数据
                //子表数据序列化
@@ -898,132 +1013,89 @@
                            , "HMaker": tableMain[0]["HMaker"]
                            , "HUpdater": tableMain[0]["HUpdater"]
                            , "HChecker": tableMain[0]["HChecker"]
                            , "HMakerDate": tableMain[0]["HMakerDate"] == null ? "" : Format(new Date(tableMain[0]["HMakerDate"]), "yy-MM-dd")
                            , "HUpdaterDate": tableMain[0]["HUpdaterDate"] == null ? "" : Format(new Date(tableMain[0]["HUpdaterDate"]), "yy-MM-dd")
                            , "HCheckerDate": tableMain[0]["HCheckerDate"] == null ? "" : Format(new Date(tableMain[0]["HCheckerDate"]), "yy-MM-dd")
                            , "HMakerDate": tableMain[0]["HMakerDate"] == null ? "" : Format(new Date(tableMain[0]["HMakerDate"]), "yyyy-MM-dd")
                            , "HUpdaterDate": tableMain[0]["HUpdaterDate"] == null ? "" : Format(new Date(tableMain[0]["HUpdaterDate"]), "yyyy-MM-dd")
                            , "HCheckerDate": tableMain[0]["HCheckerDate"] == null ? "" : Format(new Date(tableMain[0]["HCheckerDate"]), "yyyy-MM-dd")
                            , "HCloseMan": tableMain[0]["HCloseMan"]
                            , "HDeleteMan": tableMain[0]["HDeleteMan"]
                            , "HBacker": tableMain[0]["HBacker"]
                            , "HCloseManDate": tableMain[0]["HCloseManDate"] == null ? "" : Format(new Date(tableMain[0]["HCloseManDate"]), "yyyy-MM-dd")
                            , "HDeleteManDate": tableMain[0]["HDeleteManDate"] == null ? "" : tFormat(new Date(tableMain[0]["HDeleteManDate"]), "yyyy-MM-dd")
                            , "HCloseManDate": tableMain[0]["HCloseDate"] == null ? "" : Format(new Date(tableMain[0]["HCloseDate"]), "yyyy-MM-dd")
                            , "HDeleteManDate": tableMain[0]["HDeleteDate"] == null ? "" : Format(new Date(tableMain[0]["HDeleteDate"]), "yyyy-MM-dd")
                            , "HBackerDate": tableMain[0]["HBackerDate"] == null ? "" : Format(new Date(tableMain[0]["HBackerDate"]), "yyyy-MM-dd")
                            , "HBackRemark": tableMain[0]["HBackRemark"]
                        });
                        var HIsKey = tableMain[0].HIsKey;
                        if (HIsKey) {
                            $("input[name='checkboxHIsKey'][value='" + HIsKey + "']").attr("checked", true);
                        //若该阶段为里程碑,则设置里程碑复选框为选中
                        if (tableMain[0]["HIsKey"]) {
                            $("#checkboxHIsKey").attr("checked", true);
                            form.render("checkbox");
                        }
                        //子表  èµ‹å€¼
                        for (var i = 0; i < tableSub.length; i++) {
                            tableSub[i].HIsPM = (tableSub[i].HIsPM) ? 1 : 0;
                        }
                        //组织的值HOrgID变化,重新渲染
                        HOrgIDBar = tableMain[0]["HOrgID"];
                        //子表
                        option.data = tableSub;
                        table.render(option);
                        //对子表中的项目经理复选框进行选中
                        for (var i = 0; i < tableSub.length; i++) {
                            if (tableSub[i].HIsPM) {
                                $('#HIsPM' + (i + 1)).attr("checked", true);
                            }
                        }
                        form.render('checkbox');
                    }
                })
            }
            //#endregion
            //#region å®¡æ ¸
            function set_CheckBill() {
                layer.confirm("确认要审核吗?", function (index) {
                    var wait = layer.load();
                    $.ajax({
                        url: GetWEBURL() + '/Gy_RoutingBill/AuditGy_RoutingBill',
                        type: "GET",
                        data: { "HInterID": $("#HInterID").val(), "IsAudit": 0, "CurUserName": sessionStorage["HUserName"] },
                        success: function (result) {
                            if (result.count == 1) {
                                layer.msg(result.Message, { icon: 1 });
                                layer.close(wait);
                            } else {
                                layer.alert(result.code + result.Message, { icon: 5 });
                                layer.close(wait);
                            }
                        }, error: function () {
                            layer.alert("接口请求失败!", { icon: 5 });
                            layer.close(wait);
                        }
                    });
                })
            }
            //#endregion
            //#region ä¸‹æŽ¨-页面赋值
            function set_ProjectReport_Display() {
                $.ajax({
                    url: GetWEBURL() + "/PM_ProjectBill/set_ProjectReport",
                    type: "GET",
                    async: false,
                    data: { "HInterID": linterid, "HProjectStageID": HProjectStageID, "user": sessionStorage["HUserName"] },
                    success: function (result) {
                        var tableMain = result.data[0];
                        var tableSub = result.data[1];
            //#region åå®¡æ ¸
            function set_AbandonCheck() {
                layer.confirm("确认要反审核吗?", function (index) {
                    var wait = layer.load();
                    $.ajax({
                        url: GetWEBURL() + '/Gy_RoutingBill/AuditGy_RoutingBill',
                        type: "GET",
                        data: { "HInterID": $("#HInterID").val(), "IsAudit": 1, "CurUserName": sessionStorage["HUserName"] },
                        success: function (result) {
                            if (result.count == 1) {
                                layer.msg(result.Message, { icon: 1 });
                                layer.close(wait);
                            } else {
                                layer.alert(result.code + result.Message, { icon: 5 });
                                layer.close(wait);
                            }
                        }, error: function () {
                            layer.alert("接口请求失败!", { icon: 5 });
                            layer.close(wait);
                        //主表 èµ‹å€¼
                        form.val("formData", { //formTest å³ class="layui-form" æ‰€åœ¨å…ƒç´ å±žæ€§ lay-filter="" å¯¹åº”的值
                            "HProID": tableMain[0]["HInterID"]
                            , "HProNumber": tableMain[0]["项目代码"]
                            , "HMainSourceBillNo": tableMain[0]["单据号"]
                            , "HMainSourceBillType": tableMain[0]["单据类型"]
                            , "HProjectStageID": tableMain[0]["HProjectStageID"]
                            , "HProjectStageName": tableMain[0]["项目阶段"]
                            , "HStageNote": tableMain[0]["项目阶段详细内容"]
                            , "HRelationGoods": tableMain[0]["阶段相关交付物"]
                            , "HIsKey": tableMain[0]["里程碑"]=="Y"?true:false
                            , "HRate": tableMain[0]["阶段业绩占比"]
                            , "HOrgID": tableMain[0]["HOrgID"]
                        });
                        //若该阶段为里程碑,则设置里程碑复选框为选中
                        if (tableMain[0]["里程碑"]=="Y") {
                            $("#checkboxHIsKey").attr("checked", true);
                            form.render("checkbox");
                        }
                    });
                })
            }
            //#endregion
                        //组织的值HOrgID变化,重新渲染
                        HOrgIDBar = tableMain[0]["HOrgID"];
            //#region å…³é—­
            function set_CloseBill() {
                layer.confirm("确认要关闭吗?", function (index) {
                    var wait = layer.load();
                    $.ajax({
                        url: GetWEBURL() + '/Gy_RoutingBill/CloseGy_RoutingBill',
                        type: "GET",
                        data: { "HInterID": $("#HInterID").val(), "IsAudit": 0, "CurUserName": sessionStorage["HUserName"] },
                        success: function (result) {
                            if (result.count == 1) {
                                layer.msg(result.Message, { icon: 1 });
                                layer.close(wait);
                            } else {
                                layer.alert(result.code + result.Message, { icon: 5 });
                                layer.close(wait);
                        //子表
                        option.data = tableSub;
                        table.render(option);
                        //对子表中的项目经理复选框进行选中
                        for (var i = 0; i < tableSub.length; i++) {
                            if (tableSub[i].HIsPM) {
                                $('#HIsPM' + (i + 1)).attr("checked", true);
                            }
                        }, error: function () {
                            layer.alert("接口请求失败!", { icon: 5 });
                            layer.close(wait);
                        }
                    });
                })
            }
            //#endregion
                        form.render('checkbox');
            //#region åå…³é—­
            function set_CancelCloseBill() {
                layer.confirm("确认要反关闭吗?", function (index) {
                    var wait = layer.load();
                    $.ajax({
                        url: GetWEBURL() + '/Gy_RoutingBill/CloseGy_RoutingBill',
                        type: "GET",
                        data: { "HInterID": $("#HInterID").val(), "IsAudit": 1, "CurUserName": sessionStorage["HUserName"] },
                        success: function (result) {
                            if (result.count == 1) {
                                layer.msg(result.Message, { icon: 1 });
                                layer.close(wait);
                            } else {
                                layer.alert(result.code + result.Message, { icon: 5 });
                                layer.close(wait);
                            }
                        }, error: function () {
                            layer.alert("接口请求失败!", { icon: 5 });
                            layer.close(wait);
                        }
                    });
                    }
                })
            }
            //#endregion
            //#region éžç©ºéªŒè¯
@@ -1033,20 +1105,24 @@
                    layer.msg("单据号不能为空!");
                    return false;
                }
                if ($("#HProNumber").val() == "") {
                    layer.msg("项目代码不能为空!");
                if ($("#HDate").val() == "") {
                    layer.msg("日期不能为空!");
                    return false;
                }
                if ($("#HProjectStageName").val() == "") {
                if ($("#HProID").val() == "0") {
                    layer.msg("项目代码未选择!");
                    return false;
                }
                if ($("#HProjectStageID").val() == "0") {
                    layer.msg("项目阶段未选择!");
                    return false;
                }
                if ($("#HReportEmpName").val() == "") {
                if ($("#HReportEmpID").val() == "0") {
                    layer.msg("汇报人没有选择!");
                    return false;
                }
                //本阶段业绩占比格式检验
                var HRate1 = $("#HRate").val() + "";
                if (HRate1.substring(HRate1.length - 1, HRate1.length) == ".") {
@@ -1055,7 +1131,7 @@
                } else {
                    var ref = /^[0-9]+\.?[0-9]*$/;
                    if (!ref.test(HRate1)) {
                        layer.msg("业绩占比请输正确入数字!");
                        layer.msg("本阶段业绩占比请输正确入数字!");
                        return;
                    }
                }
@@ -1063,25 +1139,11 @@
                //#endregion
                //#region å­è¡¨æ•°æ®æ£€éªŒ
                var num = [];
                for (var i = 0; i < option.data.length; i++) {
                    if (option.data[i] != "") {
                        //成员段重复检验
                        if ($.inArray(option.data[i]["HEmpID"], num) == -1) {
                            num.push(option.data[i]["HEmpID"]);
                        } else {
                            layer.msg("第" + (i + 1) + "行,成员:" + option.data[i]["HEmpName"] + "重复!");
                            return false;
                        }
                        //成员非空检验
                        if (option.data[i]["HEmpName"] == "") {
                        if (option.data[i]["HEmpID"] == "0") {
                            layer.msg("第" + (i + 1) + "行:成员不能为空!");
                            return false;
                        }
                        //是否项目经理格式检验
                        if (option.data[i]["HIsPM"] != "1" && option.data[i]["HIsPM"]!= '0') {
                            layer.msg("第" + (i + 1) + "行:是否项目经理请输入0或1!");
                            return false;
                        }
@@ -1126,6 +1188,18 @@
                    }
                }
                //#endregion
                //#region å­è¡¨å…³é”®å­—重复校验
                var num = [];
                for (var i = 0; i < option.data.length; i++) {
                    if ($.inArray(option.data[i]["HEmpID"], num) == -1) {
                        num.push(option.data[i]["HEmpID"]);
                    } else {
                        layer.msg("第" + (i + 1) + "行,成员:" + option.data[i]["HEmpName"] + "重复!");
                        return false;
                    }
                }
                //#endregion
                return true;
            }
            //#endregion
@@ -1145,6 +1219,7 @@
                            option.data[i - 1] = data[0];
                            option.data[i] = tables[0];
                            table.render(option);
                            CheckedSet_tableSub_Emp();
                            break;
                        }
                    }
@@ -1167,6 +1242,7 @@
                            option.data[i + 1] = data[0];
                            option.data[i] = tables[0];
                            table.render(option);
                            CheckedSet_tableSub_Emp();
                            break;
                        }
                    }
@@ -1188,6 +1264,7 @@
                            oldData.splice(obj.tr.data('index'), 1)
                            option.data = oldData;//将数据绑定到data上
                            table.render(option);
                            CheckedSet_tableSub_Emp();
                            layer.close(index);
                        }
                    });
@@ -1236,6 +1313,19 @@
            }
            //#endregion
            //#region é¡¹ç›®æˆå‘˜è¡¨-刷新设置复选框状态
            function CheckedSet_tableSub_Emp() {
                var tableSub_Emp = option.data;
                //对子表中的项目经理复选框进行选中
                for (var i = 0; i < tableSub_Emp.length; i++) {
                    if (tableSub_Emp[i].HIsPM) {
                        $('#HIsPM' + (i + 1)).attr("checked", true);
                    }
                }
                form.render('checkbox');
            }
            //#endregion
            //#region éšè—åˆ—设置
            function get_HideColumn() {
                var colName = "";
@@ -1281,7 +1371,7 @@
                    success: function (data1) {
                        if (data1.data.length != 0) {
                            var dataCol = [];//数据库查询出的列数据
                            var titleData = ["程序号", "本工序确认记录", "自动移转", "换单准备时间", "本道准备时间", "上道循环周期", "上道固定天数", "开工余量(固数)", "开工余量(天数)", "标准定额", "报废单价", "不合格单价", "工序工价", "班产定额", "可操作设备数", "标准人数", "流转工序", "下道流转工序", "固定生产天数", "生产周期", "暂放区", "周转箱", "周转箱标准", "换模时间", "转移时间", "排队时间", "准备时间", "产线人数", "产线产能", "产线中心", "良率", "加工数量", "运行时间", "时间单位", "图纸编号", "模具编号", "良品仓", "报废品仓", "不良品仓", "工序类型"];//不需要显示的字段 å¯æ‰©å±•
                            var titleData = ["行号","成员ID"];//不需要显示的字段 å¯æ‰©å±•
                            dataCol = data1.data[0].HGridString.split(',');
@@ -1297,9 +1387,9 @@
                                }
                                //设置内容字体大小
                                if (data1.data[0].HFontSize != 0) {
                                    option.cols[0][i + 1]["style"] = "font-size:" + data1.data[0].HFontSize + "px;";
                                    option.cols[0][i + 1]["style"] += "font-size:" + data1.data[0].HFontSize + "px;";
                                } else {
                                    option.cols[0][i + 1]["style"] = "font-size:100%";
                                    option.cols[0][i + 1]["style"] += "font-size:100%";
                                }
                                //设置列宽
                                //if (data1.data[0].HColumnWidth != 0) {
@@ -1344,8 +1434,10 @@
                                }
                            }
                            table.render(option);
                            CheckedSet_tableSub_Emp();
                        } else {
                            table.render(option);
                            CheckedSet_tableSub_Emp();
                        }
                    }, error: function () {
                        layer.alert("接口请求失败!", { icon: 5 });