工程项目:必选标识、取消上一行下一行、取消分页、增加合计行、重复校验,子表不可编辑做颜色区分、子表单元格根据宽度隐藏内容、
2个文件已修改
334 ■■■■■ 已修改文件
WebTM/Properties/PublishProfiles/JFTM.pubxml.user 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/项目管理/工程项目/PM_ProjectBill.html 332 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/Properties/PublishProfiles/JFTM.pubxml.user
@@ -4434,7 +4434,7 @@
      <publishTime>07/14/2023 10:59:09</publishTime>
    </File>
    <File Include="views/项目管理/工程项目/PM_ProjectBill.html">
      <publishTime>07/25/2023 15:45:13</publishTime>
      <publishTime>08/16/2023 15:19:50</publishTime>
    </File>
    <File Include="views/项目管理/工程项目/PM_ProjectBillList.html">
      <publishTime>07/16/2023 20:47:30</publishTime>
WebTM/views/ÏîÄ¿¹ÜÀí/¹¤³ÌÏîÄ¿/PM_ProjectBill.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>
@@ -75,7 +75,7 @@
                                <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">
@@ -88,13 +88,13 @@
                                            </div>
                                        </div>
                                        <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;">
                                                <input type="text" class="layui-input" lay-verify="HProName" name="HProName" id="HProName">
                                            </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="HCusName" name="HCusName" id="HCusName" style="background-color:#efefef4d;width: 60%;display: inline-block;" readonly>
                                                <input type="hidden" name="HCusID" id="HCusID" lay-verify="HCusID" value="0">
@@ -106,25 +106,25 @@
                                    </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: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>
                                            <label class="layui-form-label" style="width: 85px;">开始日期<label style="color:red"> * </label></label>
                                            <div class="layui-input-block" style="margin-left: 120px; width: 185px;">
                                                <input type="date" class="layui-input" lay-verify="HBeginDate" name="HBeginDate" id="HBeginDate" style="padding-left: 80px;">
                                            </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: 185px;">
                                                <input type="date" class="layui-input" lay-verify="HEndDate" name="HEndDate" id="HEndDate" style="padding-left: 80px;">
                                            </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="HPMEmpName" name="HPMEmpName" id="HPMEmpName" style="background-color:#efefef4d;width: 60%;display: inline-block;" readonly>
                                                <input type="hidden" name="HPMEmpID" id="HPMEmpID" lay-verify="HPMEmpID" value="0">
@@ -136,7 +136,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="HWorkEmpName" name="HWorkEmpName" id="HWorkEmpName" style="background-color:#efefef4d;width: 60%;display: inline-block;" readonly>
                                                <input type="hidden" name="HWorkEmpID" id="HWorkEmpID" lay-verify="HWorkEmpID" value="0">
@@ -146,7 +146,7 @@
                                            </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="HDepEmpName" name="HDepEmpName" id="HDepEmpName" style="background-color:#efefef4d;width: 60%;display: inline-block;" readonly>
                                                <input type="hidden" name="HDepEmpID" id="HDepEmpID" lay-verify="HDepEmpID" value="0">
@@ -156,7 +156,7 @@
                                            </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="HMaterNumber" name="HMaterNumber" id="HMaterNumber" style="background-color:#efefef4d;width: 60%;display: inline-block;" readonly>
                                                <input type="hidden" name="HMaterID" id="HMaterID" lay-verify="HMaterID" value="0">
@@ -185,13 +185,13 @@
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label" style="width: 85px;">项目难易类型</label>
                                            <div class="layui-input-block" style="margin-left: 120px;">
                                            <div class="layui-input-block" style="margin-left: 120px; width:180px;">
                                                <select name="HProType" id="HProType" lay-filter="HProType" style="width:190px;">
                                                </select>
                                            </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="HPayCusName" name="HPayCusName" id="HPayCusName" style="background-color:#efefef4d;width: 60%;display: inline-block;" readonly>
                                                <input type="hidden" name="HPayCusID" id="HPayCusID" lay-verify="HPayCusID" value="0">
@@ -203,7 +203,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>
@@ -211,7 +211,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">
                                                    <!--动态渲染组织-->
@@ -377,8 +377,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>
@@ -390,8 +390,8 @@
                                        <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-AddLine1"><i class="layui-icon layui-icon-form"></i>增加一行</button>
                                        <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-CopyLine1"><i class="layui-icon layui-icon-form"></i>复制一行</button>
                                        <button type="button" class="layui-btn layui-btn-sm" lay-event="set_HideColumn1"><i class="layui-icon layui-icon-form"></i>列设置</button>
                                        <button type="button" class="layui-btn layui-btn-sm" lay-event="btn_up1"><i class="layui-icon layui-icon-form"></i>上一行</button>
                                        <button type="button" class="layui-btn layui-btn-sm" lay-event="btn_under1"><i class="layui-icon layui-icon-form"></i>下一行</button>
                                        <!--<button type="button" class="layui-btn layui-btn-sm" lay-event="btn_up1"><i class="layui-icon layui-icon-form"></i>上一行</button>
                                        <button type="button" class="layui-btn layui-btn-sm" lay-event="btn_under1"><i class="layui-icon layui-icon-form"></i>下一行</button>-->
                                    </div>
                                </script>
                            </div>
@@ -460,10 +460,6 @@
                    icon: 4, skin: 'layui-layer-lan', title: "温馨提示", closeBtn: 0, btn: ['重新登录']
                }, function () { window.location.href = "../../user/login.html"; });
            }
            //#endregion
            //#region åˆå§‹åŒ–表格
            //DisPlay_HideColumn();
            //#endregion
            //#region åˆå§‹åŒ–组织
@@ -615,30 +611,6 @@
                } else if (params[1] == null) {
                    Pub_Close(2);
                }
            });
            //#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
@@ -925,28 +897,29 @@
                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: 'HProjectStageID', title: '项目阶段ID', hide: true }
                        , { type: 'numbers', title: '序号', style: 'background-color: #f9f9f9;'}
                        , { field: 'RowID', title: '行号', hide: true, style: 'background-color: #f9f9f9;' }                                                   //行标识,用于下一行、上一行识别所在行
                        , { field: 'HProjectStageID', title: '项目阶段ID', hide: true, style: 'background-color: #f9f9f9;' }
                        , { field: 'HProjectStageName', title: '项目阶段', edit: 'text', event: "HProjectStageName" }     //f7
                        , { field: 'HStageNote', title: '项目详细内容' }
                        , { field: 'HPMGoodsID', title: '相关交付物ID', hide: true }
                        , { field: 'HStageNote', title: '项目详细内容', style: 'background-color: #f9f9f9;' }
                        , { field: 'HPMGoodsID', title: '相关交付物ID', hide: true, style: 'background-color: #f9f9f9;' }
                        , { field: 'HPMGoodsName', title: '相关交付物', edit: 'text', event: "HPMGoodsName" }            //f7
                        , { field: 'HIsKey', title: '里程碑', templet: "#HIsKey" }
                        , { field: 'HRate', title: '业绩占比', edit: 'text' }
                        , { field: 'HEmpID', title: '阶段负责人ID', hide: true }
                        , { field: 'HRate', title: '业绩占比', edit: 'text', totalRow: true }
                        , { field: 'HEmpID', title: '阶段负责人ID', hide: true, style: 'background-color: #f9f9f9;' }
                        , { field: 'HEmpName', title: '阶段负责人', edit: 'text', event: "HEmpName" }                    //f7
                        , { field: 'HCheckEmpID', title: '阶段审核人ID', hide: true }
                        , { field: 'HCheckEmpID', title: '阶段审核人ID', hide: true, style: 'background-color: #f9f9f9;' }
                        , { field: 'HCheckEmpName', title: '阶段审核人', edit: 'text', event: "HCheckEmpName" }          //f7
                        , { field: 'HFinishDate', title: '预计完成日期', event: "HFinishDate" }
                        , { field: 'HWorkDays', title: '预计人天', edit: 'text' }
                        , { field: 'HWorkDays', title: '预计人天', edit: 'text', totalRow: true }
                        , { field: 'HRemarkSub', title: '备注', edit: 'text' }
                        , { fixed: 'right', title: '操作', toolbar: '#barDemo' }
                    ]]
@@ -985,14 +958,14 @@
                    , height: 400
                    , cols: [[
                        { type: 'checkbox', totalRowText: '合计行' }
                        , { type: 'numbers', title: '序号', totalRow: true }
                        , { field: 'RowID', title: '行号', hide: true }                                                   //行标识,用于下一行、上一行识别所在行
                        , { field: 'HEmployeeID', title: '项目成员ID', hide: true }
                        , { type: 'numbers', title: '序号', style: 'background-color: #f9f9f9;' }
                        , { field: 'RowID', title: '行号', hide: true, style: 'background-color: #f9f9f9;' }                                                   //行标识,用于下一行、上一行识别所在行
                        , { field: 'HEmployeeID', title: '项目成员ID', hide: true, style: 'background-color: #f9f9f9;' }
                        , { field: 'HEmployeeName', title: '项目成员', edit: 'text', event: "HEmployeeName" }     //f7
                        , { field: 'HIsPM', title: '是否项目经理', templet: "#HIsPM" }
                        , { field: 'HRate', title: '项目占比', edit: 'text' }
                        , { field: 'HPlanAvgMoney', title: '预计分配业绩', edit: 'text' }
                        , { field: 'HPlanCountMoney', title: '预计提成', edit: 'text' }
                        , { field: 'HPlanAvgMoney', title: '预计分配业绩', style: 'background-color: #f9f9f9;' }
                        , { field: 'HPlanCountMoney', title: '预计提成', style: 'background-color: #f9f9f9;' }
                        , { field: 'HRemarkSub', title: '备注', edit: 'text' }
                        , { fixed: 'right', title: '操作', toolbar: '#barDemo1' }
                    ]]
@@ -1433,106 +1406,6 @@
            }
            //#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_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);
                        }
                    });
                })
            }
            //#endregion
            //#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);
                            }
                        }, error: function () {
                            layer.alert("接口请求失败!", { icon: 5 });
                            layer.close(wait);
                        }
                    });
                })
            }
            //#endregion
            //#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 éžç©ºéªŒè¯
            function AllowLoadData(data) {
                //#region è¡¨å¤´æ•°æ®æ£€éªŒ
@@ -1540,56 +1413,54 @@
                    layer.msg("单据号不能为空!");
                    return false;
                }
                if ($("#HProNumber").val() == "") {
                    layer.msg("项目代码不能为空!");
                if ($("#HDate").val() == "") {
                    layer.msg("日期不能为空!");
                    return false;
                }
                if ($("#HProName").val() == "") {
                    layer.msg("项目名称不能为空!");
                if ($("#HBeginDate").val() == "") {
                    layer.msg("开始日期不能为空!");
                    return false;
                }
                if ($("#HCusName").val() == "") {
                    layer.msg("客户没有选择!");
                if ($("#HEndDate").val() == "") {
                    layer.msg("结束日期不能为空!");
                    return false;
                }
                if ($("#HPMEmpName").val() == "") {
                    layer.msg("项目经理没有选择!");
                if ($("#HProID").val() == "0") {
                    layer.msg("项目代码未选择!");
                    return false;
                }
                if ($("#HWorkEmpName").val() == "") {
                    layer.msg("实施担当没有选择");
                if ($("#HCusID").val() == "0") {
                    layer.msg("客户未选择!");
                    return false;
                }
                if ($("#HDepEmpName").val() == "") {
                    layer.msg("开发担当没有选择");
                if ($("#HPMEmpID").val() == "0") {
                    layer.msg("项目经理未选择!");
                    return false;
                }
                if ($("#HMaterName").val() == "") {
                    layer.msg("对应产品没有选择");
                if ($("#HWorkEmpID").val() == "0") {
                    layer.msg("实施担当未选择");
                    return false;
                }
                if ($("#HPayCusName").val() == "") {
                    layer.msg("结算方没有选择");
                if ($("#HDepEmpID").val() == "0") {
                    layer.msg("开发担当未选择");
                    return false;
                }
                if ($("#HMaterID").val() == "0") {
                    layer.msg("对应产品未选择");
                    return false;
                }
                if ($("#HPayCusID").val() == "0") {
                    layer.msg("结算方未选择");
                    return false;
                }
                //#endregion
                //#region é¡¹ç›®é˜¶æ®µè¡¨æ•°æ®æ£€éªŒ
                var num = [];
                for (var i = 0; i < option.data.length; i++) {
                    if (option.data[i] != "") {
                        //项目阶段重复检验
                        if ($.inArray(option.data[i]["HProjectStageID"], num) == -1) {
                            num.push(option.data[i]["HProjectStageID"]);
                        } else {
                            layer.msg("第" + (i + 1) + "行,项目阶段:" + option.data[i]["HProjectStageName"] + "重复!");
                            return false;
                        }
                        //项目阶段非空检验
                        if (option.data[i]["HProjectStageName"] == "") {
                        if (option.data[i]["HProjectStageID"] == "0") {
                            layer.msg("第" + (i + 1) + "行:项目阶段不能为空!");
                            return false;
                        }
@@ -1606,10 +1477,6 @@
                                return;
                            }
                        }
                        ////里程碑内容检验
                        //if (option.data[i]["HIsKey"] != "1" && option.data[i]["HIsKey"] != "0") {
                        //    layer.msg("里程碑请输入0或1!");
                        //}
                        //预计人天格式检验
                        var HWorkDays = option.data[i]["HWorkDays"] + "";
@@ -1625,13 +1492,13 @@
                        }
                        //阶段负责人非空检验
                        if (option.data[i]["HEmpName"] == "") {
                        if (option.data[i]["HEmpID"] == "0") {
                            layer.msg("第" + (i + 1) + "行:阶段负责人不能为空!");
                            return false;
                        }
                        //阶段审核人非空检验
                        if (option.data[i]["HCheckEmpName"] == "") {
                        if (option.data[i]["HCheckEmpID"] == "0") {
                            layer.msg("第" + (i + 1) + "行:阶段审核人不能为空!");
                            return false;
                        }
@@ -1640,19 +1507,10 @@
                //#endregion
                //#region é¡¹ç›®æˆå‘˜è¡¨æ•°æ®æ£€éªŒ
                var num1 = [];
                for (var i = 0; i < option1.data.length; i++) {
                    if (option1.data[i] != "") {
                        //项目成员重复检验
                        if ($.inArray(option1.data[i]["HEmployeeID"], num1) == -1) {
                            num1.push(option1.data[i]["HEmployeeID"]);
                        } else {
                            layer.msg("第" + (i + 1) + "行,项目成员:" + option1.data[i]["HEmployeeName"] + "重复!");
                            return false;
                        }
                        //项目成员非空检验
                        if (option1.data[i]["HEmployeeName"] == "") {
                        if (option1.data[i]["HEmployeeID"] == "0") {
                            layer.msg("第" + (i + 1) + "行:项目成员不能为空!");
                            return false;
                        }
@@ -1669,10 +1527,6 @@
                                return;
                            }
                        }
                        ////是否项目经理检验
                        //if (option1.data[i]["HIsPM"] != "1" && option1.data[i]["HIsPM"] != "0") {
                        //    layer.msg("第" + (i + 1) + "行:是否项目经理请输入0或1!");
                        //}
                        //预计分配业绩格式检验
                        var HPlanAvgMoney = option1.data[i]["HPlanAvgMoney"] + "";
@@ -1700,6 +1554,50 @@
                            }
                        }
                    }
                }
                //#endregion
                //#region å­è¡¨1关键字重复校验
                var num = [];
                for (var i = 0; i < option.data.length; i++) {
                    if ($.inArray(option.data[i]["HProjectStageID"], num) == -1) {
                        num.push(option.data[i]["HProjectStageID"]);
                    } else {
                        layer.msg("第" + (i + 1) + "行,项目阶段:" + option.data[i]["HProjectStageName"] + "重复!");
                        return false;
                    }
                }
                //#endregion
                //#region å­è¡¨2关键字重复校验
                var num1 = [];
                for (var i = 0; i < option1.data.length; i++) {
                    if ($.inArray(option1.data[i]["HEmployeeID"], num1) == -1) {
                        num1.push(option1.data[i]["HEmployeeID"]);
                    } else {
                        layer.msg("第" + (i + 1) + "行,项目成员:" + option1.data[i]["HEmployeeName"] + "重复!");
                        return false;
                    }
                }
                //#endregion
                //#region å­è¡¨1业绩占比合计校验
                var total = 0;
                for (var i = 0; i < option.data.length; i++) {
                    total += option.data[i]["HRate"] * 1;
                }
                if (total > 100) {
                    layer.msg("项目阶段表:业绩占比合计超出100,请检查!!");
                }
                //#endregion
                //#region å­è¡¨2项目占比合计校验
                var total1 = 0;
                for (var i = 0; i < option1.data.length; i++) {
                    total1 += option1.data[i]["HRate"] * 1;
                }
                if (total1 > 100) {
                    layer.msg("项目成员表:项目占比合计超出100,请检查!!");
                }
                //#endregion
@@ -2059,9 +1957,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) {
@@ -2183,9 +2081,9 @@
                                }
                                //设置内容字体大小
                                if (data1.data[0].HFontSize != 0) {
                                    option1.cols[0][i + 1]["style"] = "font-size:" + data1.data[0].HFontSize + "px;";
                                    option1.cols[0][i + 1]["style"] += "font-size:" + data1.data[0].HFontSize + "px;";
                                } else {
                                    option1.cols[0][i + 1]["style"] = "font-size:100%";
                                    option1.cols[0][i + 1]["style"] += "font-size:100%";
                                }
                                //设置列宽
                                //if (data1.data[0].HColumnWidth != 0) {