yuanzhi_kuang 4 mesiacov pred
rodič
commit
c2a1f6f660

+ 104 - 39
js/addon/customer/perfweb/web/js/perfGoalsFillNewEx.js

@@ -1,3 +1,9 @@
+/**
+ * 绩效目标填报,定制化,二开覆盖js文件,不继承原标准js;
+ * 202501
+ * coyle
+ */
+
 var that = '';
 var globalIndicatorData = ''; //指标数据全局变量
 var globalPersonBaseData = ''; //员工基本信息全局变量
@@ -100,7 +106,7 @@ var lastTable = '';     // 列表模式,切换表格编辑时,记录上一
 var btnPerm = {}; //按钮权限
 var canEditTab = true;
 var operatestate = shr.getUrlRequestParam('operatestate'); // 获取审批中单据编辑状态
-shr.defineClass("shr.perfweb.perfGoalsFillNew", shr.framework.Edit, {
+shr.defineClass("shr.perfweb.perfGoalsFillNewEx", shr.framework.Edit, {
     targetTransmitBill : {'billId':'-1','state':0}, //0表示指定人下达,1表示审批流程下达,2表示已有工作流
     targetReviseBill : {'billId':'','state':0}, //0表示指定人下达,1表示审批流程下达,2表示已有工作流
     initalizeDOM : function() {
@@ -112,7 +118,7 @@ shr.defineClass("shr.perfweb.perfGoalsFillNew", shr.framework.Edit, {
         isUseMultiLan = window.languageMappingList.length > 1;
         defaultLan = getDefaultLang();
 
-        shr.perfweb.perfGoalsFillNew.superClass.initalizeDOM.call(this);
+        shr.perfweb.perfGoalsFillNewEx.superClass.initalizeDOM.call(this);
         pre_crumbName = $.perfwebI18n.simpleElement.crumbName_my;
         // 获取参数控制的展示列表模式还是概览模式
         viewType = this.initData.defaultFillPage || 'list';
@@ -214,6 +220,9 @@ shr.defineClass("shr.perfweb.perfGoalsFillNew", shr.framework.Edit, {
             $("#switchList").addClass('currentswitch');
             $('#addIndicator,#referenceIndicator').hide();
         }
+        //202501 隐藏按钮
+        $("#switchOverview").hide(); // 隐藏概览按钮
+        $("#switchList").hide(); // 隐藏按钮
         $('.switchbutton button').die('click').live('click',function(){
             if(!$(this).hasClass('currentswitch')){
                 $('.currentswitch').removeClass('currentswitch');
@@ -261,13 +270,13 @@ shr.defineClass("shr.perfweb.perfGoalsFillNew", shr.framework.Edit, {
         $('.tabwrap').each(function(index,tab){
             $('#tab'+index).jqGrid('editStop');
         })
-        if(_noPassVerifyArr.length > 0){
-            shr.showWarning({
-                message: _noPassVerifyArr[0].showName+':'+_noPassVerifyArr[0].errortext,
-                hideAfter: 5
-            });
-            return false;
-        }
+        // if(_noPassVerifyArr.length > 0){
+        //     shr.showWarning({
+        //         message: _noPassVerifyArr[0].showName+':'+_noPassVerifyArr[0].errortext,
+        //         hideAfter: 5
+        //     });
+        //     return false;
+        // }
         this.saveTargetClick(action);
     },
     // 列表模式删除指标
@@ -1199,6 +1208,36 @@ shr.defineClass("shr.perfweb.perfGoalsFillNew", shr.framework.Edit, {
             operatestate: operatestate,  // 审批单据编辑状态
             // canEditTab: canEditTab   // 先不用这个判断,可能会影响分解、变更页面
         }
+        //"个人目标填报、个人目标下达页面,添加指标、引用指标等按钮需调整显示逻辑,具体如下:
+        var datarows = mydata.rows
+        if(datarows != null){
+            //循环
+            for(var i=0; i<datarows.length; i++){
+                var row = datarows[i];
+                var r_areaName = row.areaName;
+                //第一部分:目标达成-目标填报----只显示添加指标_隐藏引用指标
+                // 第三部分: 发展目标----只显示添加指标"
+                if(r_areaName == '第一部分:目标达成-目标填报' || r_areaName.includes( '第三部分: 发展目标') ){
+                    // hideref = true加入到row中
+                    row.hideref = true;
+                }else if(r_areaName.includes('第一部分:目标达成-总评') || r_areaName.includes( '第二部分:如何达成-B1') 
+                    || r_areaName.includes('第二部分:如何达成-总评')){
+                    // 第一部分:目标达成-总评(评估人评估)----不显示
+                    // 第二部分:如何达成-B1----不显示
+                    // 第二部分:如何达成-总评(评估人评估)----不显示
+                    row.hideadd = true;
+                    row.hideref = true;
+                }else if(r_areaName.includes('第二部分:如何达成-Business leadership') || r_areaName.includes('第二部分:如何达成-People leadership') 
+                     || r_areaName.includes('如何达成-Self leadership') ){
+                    // 第二部分:如何达成-Business leadership(至少选择一项)----只显示引用指标
+                    // 第二部分:如何达成-People leadership(至少选择一项)----只显示引用指标
+                    // 第二部分:如何达成-Self leadership(至少选择一项)----只显示引用指标
+                    row.hideadd = true;
+                }
+                row.hidemovebtn = true; // 隐藏移动按钮
+            }
+        }
+        
         var contentHTML = juicer(contentTpl, mydata);
         $('.evaluation').empty().append(contentHTML);
         it.setParentIframeHeight();
@@ -2563,9 +2602,9 @@ shr.defineClass("shr.perfweb.perfGoalsFillNew", shr.framework.Edit, {
                     // }else{
                     //     that.doSaveTarget(_targetStatus);
                     // }
-                    if(it.checkRequiredField()){
+                    // if(it.checkRequiredField()){
                         that.doSaveTarget(_targetStatus,action);
-                    }
+                    // }
                 }
             }
         });
@@ -2638,7 +2677,8 @@ shr.defineClass("shr.perfweb.perfGoalsFillNew", shr.framework.Edit, {
             $('#tab'+index).jqGrid('editStop');
         })
         //组装数据
-        var flag = that.assembleTargetData();
+        var flag =  that.assembleTargetData();
+         
         if(!flag){
             shr.showError({message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_75,hideAfter : 5});
             return false;
@@ -2828,7 +2868,7 @@ shr.defineClass("shr.perfweb.perfGoalsFillNew", shr.framework.Edit, {
     },
 
     // 列表模式组装数据+校验
-    assembleTargetDataListModel: function(){
+    assembleTargetDataListModel: function(optionType){
         var len = $('.tabwrap').length;
         var flag = true;
         var errMsg,_grid,FID,cellname,colvalue,td;
@@ -2843,6 +2883,22 @@ shr.defineClass("shr.perfweb.perfGoalsFillNew", shr.framework.Edit, {
             var fieldList = gridParam.fieldList;
             var indNameArr = [];
             var data = _grid.getRowData();
+            //判断 202501
+            //第二部分:如何达成-Business leadership(至少选择一项)
+            //第二部分:如何达成-People leadership(至少选择一项)
+            //第二部分:如何达成-Self leadership(至少选择一项)
+            //如果名称areaName包含上面的字符串,则data要大于0
+            if(areaName.indexOf('Business leadership') > -1 || areaName.indexOf('People leadership') > -1 || areaName.indexOf('Self leadership') > -1){
+                if(data.length == 0 && optionType == "submit" ){
+                    flag = false;
+                    errMsg = areaName+",该区域指标为空!";
+                    shr.showWarning({
+                        message: errMsg,
+                        hideAfter: 3
+                    });
+                    break;
+                }
+            }
             for(var j=0; j<data.length; j++){
                 FID = data[j]['id'];
                 var indData = {};
@@ -2866,7 +2922,7 @@ shr.defineClass("shr.perfweb.perfGoalsFillNew", shr.framework.Edit, {
                         colvalue = colvalue ? moment(colvalue).format('YYYY-MM-DD HH:mm:ss') : '';
                     }
                     // 校验必填
-                    if(classes && classes.indexOf('required') > -1 && !colvalue && colAttr.editable && !td.hasClass('not-editable-cell')){
+                    if(classes && classes.indexOf('required') > -1 && !colvalue && colAttr.editable && !td.hasClass('not-editable-cell') && optionType == "submit"){
                         errMsg = shr.formatMsg(jsBizMultLan.perfweb_perfgoalsfill_20221201_i18n_01, [showName]);
                         flag = false;
                         break;
@@ -2913,7 +2969,7 @@ shr.defineClass("shr.perfweb.perfGoalsFillNew", shr.framework.Edit, {
                     }
                     
                 }
-                if(!flag){
+                if(!flag &&  optionType == "submit"){
                     break;
                 }
                 indicatorListObj.indicatorList = [];
@@ -2928,7 +2984,7 @@ shr.defineClass("shr.perfweb.perfGoalsFillNew", shr.framework.Edit, {
                     recordFieldArr = indNameArr;
                 }
             }
-            if(!flag){
+            if(!flag  && optionType == "submit" ){
                 break;
             }
             targetParam.push({
@@ -2943,7 +2999,7 @@ shr.defineClass("shr.perfweb.perfGoalsFillNew", shr.framework.Edit, {
 
         // console.log(targetParam)
 
-        if(!flag){
+        if(!flag  && optionType == "submit"){
             $('.errorval').removeClass("errorval");
             shr.showWarning({
                 message: errMsg,
@@ -2954,9 +3010,9 @@ shr.defineClass("shr.perfweb.perfGoalsFillNew", shr.framework.Edit, {
         return flag;
     },
 
-    assembleTargetData : function(){
+    assembleTargetData : function(optionType){
         if(viewType == 'list'){ // 列表模式
-            return this.assembleTargetDataListModel();
+             return  this.assembleTargetDataListModel(optionType);
         }
         //组装要保存的指标数据
         var jsonObj = new Object();
@@ -3700,6 +3756,11 @@ shr.defineClass("shr.perfweb.perfGoalsFillNew", shr.framework.Edit, {
         }else{
             globalIndicatorData.currAreaType = '';
         }
+        //二开,过滤指标; 202501
+        let ardiv = document.querySelector("div[areaid='" + areaId + "']");
+        let arspan = ardiv.querySelector(".areaname-text");
+        let areaNameStr = arspan.textContent;
+
         var referenceIndiHTML = juicer(referenceIndicatorsTpl, globalIndicatorData);
         $(document.body).append(referenceIndiHTML);
         $('#PIall').closest('.recordtab').prepend(page('indicator'));
@@ -3816,7 +3877,7 @@ shr.defineClass("shr.perfweb.perfGoalsFillNew", shr.framework.Edit, {
         
         it.selectAddPart('partplist_1','partlistselect_1');
         it.switchTable();											//表格切换
-        it.initPIallTable();										//加载弹出框表格——绩效指标库——全部
+        it.initPIallTable(areaNameStr);										//加载弹出框表格——绩效指标库——全部
         it.initPIselectedTable();									//加载弹出框表格——绩效指标库——已选
         it.initexistingPIallTable(areaId, areaType);								//加载弹出框表格——引用已有指标——全部
 
@@ -4168,7 +4229,7 @@ shr.defineClass("shr.perfweb.perfGoalsFillNew", shr.framework.Edit, {
     /**
      * 加载弹出框表格——绩效指标库——全部
      */
-    initPIallTable : function(){
+    initPIallTable : function(areaNameStr){
         var indicatorOptions={
             name:[
                 'ID',
@@ -4187,19 +4248,19 @@ shr.defineClass("shr.perfweb.perfGoalsFillNew", shr.framework.Edit, {
                 ''],
             model:[
                 {name:'id',"index":"id",hidden: true},
-                {name:'number',index:'FNumber', width:100, align:"left",frozen: true, frozen: true,sortable: true},
-                {name:'name',index:'FName_L2', width:100, align:"left",frozen: true, frozen: true,sortable: true},
-                {name:'indecatorDesc',index:'FIndecatorDesc_L2', width:180, align:"left",frozen: true,sortable: true},
+                {name:'number',index:'FNumber', width:200, align:"left",frozen: true, frozen: true,sortable: true},
+                {name:'name',index:'FName_L2', width:800, align:"left",frozen: true, frozen: true,sortable: true},
+                {name:'indecatorDesc',index:'FIndecatorDesc_L2', width:180, align:"left",frozen: true,sortable: true,hidden: true},
                 {name:'indecatorTypeId',index:'indecatorTypeId', hidden: true},
 
-                {name:'indecatorType',index:'FIndecatorTypeID', width:100, align:"left", frozen: true,sortable: true},
-                {name:'evalStandard',index:'FEvalStandard', width:180, align:"left", frozen: true, sortable: true},
-                {name:'qualiOrRationName',index:'FQualiOrRation', width:100, align:"left", frozen: true,sortable: true},
+                {name:'indecatorType',index:'FIndecatorTypeID', width:100, align:"left", frozen: true,sortable: true,hidden: true},
+                {name:'evalStandard',index:'FEvalStandard', width:180, align:"left", frozen: true, sortable: true,hidden: true},
+                {name:'qualiOrRationName',index:'FQualiOrRation', width:100, align:"left", frozen: true,sortable: true,hidden: true},
                 {name:'qualiOrRation', hidden:true , dataType:"int"},
-                {name:'unit',index:'FUnit', width:83, align:"left", frozen: true, sortable: true},
-                {name:'scoringFormulaName',index:'FScoringFormulaID', width:100, align:"left", frozen: true, sortable: true},
+                {name:'unit',index:'FUnit', width:83, align:"left", frozen: true, sortable: true,hidden: true},
+                {name:'scoringFormulaName',index:'FScoringFormulaID', width:100, align:"left", frozen: true, sortable: true,hidden: true},
                 {name:'scoringFormula', hidden:true },
-                {name:'rejectionName',index:'Frejection', width:70, align:"left", frozen: true, sortable: true},
+                {name:'rejectionName',index:'Frejection', width:70, align:"left", frozen: true, sortable: true,hidden: true},
                 {name:'rejection', hidden:true },
             ],
             multiselect:true,
@@ -4218,7 +4279,8 @@ shr.defineClass("shr.perfweb.perfGoalsFillNew", shr.framework.Edit, {
                 sord : 'asc',
                 type : INDICATORLISTALL,
                 selectedIds : '',
-                hrOrgUnit : hrOrgUnit
+                hrOrgUnit : hrOrgUnit,
+                areaNameStr: areaNameStr
             },
             nextPage : $("#indicatorPageNext"), //下一页对象
             prevPage : $("#indicatorPagePrev"),//上一页对象
@@ -5122,7 +5184,7 @@ shr.defineClass("shr.perfweb.perfGoalsFillNew", shr.framework.Edit, {
                     return false;
                     }
                     $('.scoreMenuList li').click();
-                    if(!canSaveVerify()){
+                    if(!canSaveVerify("submit")){
                         return false;
                     }else{
                         doSumbit();
@@ -5222,6 +5284,9 @@ shr.defineClass("shr.perfweb.perfGoalsFillNew", shr.framework.Edit, {
      * 下达
      */
     transmitAction : function(){
+         if(!canSaveVerify("submit")){
+            return false;
+         }
         //判断定量指标是否维护评分公式和目标值
         var unvalidArr = getUnvalidPerfAchievement();
         if(unvalidArr.length > 0) {
@@ -7208,13 +7273,13 @@ function verifyIndicatorType(){
     }
 }
 
-function canSaveVerify(){
-    var flag = that.assembleTargetData();
-    if(!flag){
-        // shr.showError({message : '数据校验不通过,请检查!',hideAfter : 5});
-        shr.showError({message : jsBizMultLan.perfweb_perfGoalsFillNew_i18n_b10_15626131368_8,hideAfter : 5});
-        return false;
-    }
+function canSaveVerify(optionType){
+    var flag = that.assembleTargetData(optionType);
+    // if(!flag){
+    //     // shr.showError({message : '数据校验不通过,请检查!',hideAfter : 5});
+    //     shr.showError({message : jsBizMultLan.perfweb_perfGoalsFillNew_i18n_b10_15626131368_8,hideAfter : 5});
+    //     return false;
+    // }
     return flag;
 
     // golbalVerify(); //全局字段合法性校验

+ 0 - 0
备份/perfgoalsfill.html → js/addon/customer/perfweb/web/js/perfgoalsfill.html


+ 1131 - 0
js/addon/perfweb/web/js/shr/perfweb/portal/htmlTemplate/perfgoalsfill.html

@@ -0,0 +1,1131 @@
+<script id="ruleTpl" type="text/template">
+    <div class="titles">
+        <span style="position:relative">
+            ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_19}
+            ${rows.ruleName}</span>
+        <span class="instructions"></span>
+        <span style="margin-left:42px">
+            ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_20}
+            ${rows.perfModelName}</span>
+        <span class="name_time">${rows.planName}</span>
+        <span class="name_time">${rows.periodName}(${rows.pStartDate}-${rows.pEndDate})</span>
+    </div>
+</script>
+<script id="wrapTpl" type="text/template">
+    <!-- <div class="titles">
+        <span style="position:relative">
+            ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_19}
+            ${rows.ruleName}</span>
+        <span class="instructions"></span>
+        <span style="margin-left:42px">
+            ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_20}
+            ${rows.perfModelName}</span>
+        <span class="name_time">${rows.planName}(${rows.pStartDate}-${rows.pEndDate})</span>
+    </div> -->
+    <div class="evaluation clearfix">
+    </div>
+</script>
+
+<script id="contentTpl" type="text/template">
+    {@each rows as list,index0}
+    <div class="areawrap" areaId="${list.areaId}" areatype="${list.areaType}">
+        <!-- <div class="areaname">
+            ${list.areaName}(<span class="areaweight" areaWeight="${list.areaWeight}">${list.areaWeight}</span>%)
+        </div> -->
+        <div class="areaname" realAreaName=${list.areaName} area-id="${list.areaId}"
+            {@if list.weightControl=="1" && (list.sumScoreRule=="400" || list.sumScoreRule=="500")}
+            title="${list.areaName}({@if list.scoringWay == 0}${jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_65}:${list.areaControlWeight}%{@else}${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_37|formatMsg,[list.areaControlWeight]}{@/if})">
+            <span class="areaname-text">${list.areaName}</span>
+            {@if list.scoringWay == 0}
+            (
+            ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_40|formatMsg,[list.areaControlWeight]}
+            {@else}
+            (
+            ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_37|formatMsg,[list.areaControlWeight]}
+            {@/if}
+            )
+            {@else if list.weightControl=="1"}
+            title="${list.areaName}({@if list.scoringWay == 0}${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_38|formatMsg,[list.areaControlWeight]}{@else}${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_25|formatMsg,[list.areaControlWeight]}{@/if})">
+            <span class="areaname-text">${list.areaName}(
+            {@if list.scoringWay == 0}
+            ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_38|formatMsg,[list.areaControlWeight]}
+            {@else}
+            ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_36|formatMsg,[list.areaControlWeight]}
+
+            {@/if}
+            )</span>
+            {@else if list.sumScoreRule=="400" || list.sumScoreRule=="500"}
+            title="
+            ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_0|formatMsg,[list.areaName]}
+            ">
+            ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_0|formatMsg,[list.areaName]}
+            {@else}
+            title="${list.areaName}"><span class="areaname-text">${list.areaName}</span>
+            {@/if}
+            {@if list.canRate == '1' && list.subAreaType != '1'}
+            <div class="partGrade">
+                {@if list.scoringWay == 0}
+                (${jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_65}:
+                <span class="areaweight" sumScoreRule="${list.sumScoreRule}" areaControlWeight="${list.areaControlWeight}" weightControl="${list.weightControl}" areaweight="${list.areaWeight}"> ${list.areaWeight}%</span>)
+                {@else}
+                (${jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_41}:
+                <span class="areaweight" sumScoreRule="${list.sumScoreRule}" areaControlWeight="${list.areaControlWeight}" weightControl="${list.weightControl}"> ${list.areaWeight}${jsBizMultLan.perfweb_perfgoalsfill_1593331244239_i18n_0}</span>)
+                {@/if}
+            </div>
+            {@/if}
+            {@if (pageType == 0 || pageType == 1 || pageType == 6) && operatestate != 'VIEW' && btnPerm}
+            <div class="movebtn-wrap">
+                {@if btnPerm.addTargetPerm  && !list.hideadd }
+                <span class="movebtn-up add-indicator" onclick="it.addIndicatorsNew(this,'${list.areaId}','${list.areaType}','addIndicator',${index0})">${jsBizMultLan.perfweb_evaluationdetailsJuicer_1593047101393_i18n_0}</span>
+                {@/if}
+                {@if btnPerm.refTargetPerm && !list.hideref  }
+                <span class="movebtn-up ref-indicator" onclick="it.addIndicatorsNew(this,'${list.areaId}','${list.areaType}','referenceIndicator',${index0})">${jsBizMultLan.perfweb_evaluationdetailsJuicer_1593047101393_i18n_1}</span>
+                {@/if}
+
+                {@if viewType == 'list' && !list.hidemovebtn }
+                <span class="movebtn-up" onclick="it.moveUpForGrid(this,'tab${index0}','${list.areaType}')">${jsBizMultLan.perfweb_perfgoalsfillnew_20230307yw_01}</span>
+                <span class="movebtn-down" onclick="it.moveDownForGrid(this,'tab${index0}','${list.areaType}')">${jsBizMultLan.perfweb_perfgoalsfillnew_20230307yw_02}</span>
+                {@/if}
+                <span class="btn-control controller_active" onclick="it.foldIndicator(this)"></span>
+            </div>
+            {@/if}
+            {@if list.rema}
+            <div class="area-rema-box" area-id="${list.areaId}">
+                <span>${jsBizMultLan.perfweb_evaluationdetailsJuicer_1586069239184_i18n_5}</span>
+                <pre area-id="${list.areaId}">${list.rema}</pre>
+                <div class="area-rema-btn" onclick="showMoreRema(this,'${list.areaId}')">${jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_102}</div>
+            </div>
+            {@/if}
+        </div>
+        {@if viewType == 'list'}
+        <div class="tabwrap">
+            <table class="indictab" id="tab${index0}" areaId="${list.areaId}"></table>
+        </div>
+        {@else}
+        <ul class="indicatorwrap">
+            {@each list.targetItems as item,index1}
+            <li indId="${item.FID}">
+                <!--{# personalGoalStatus,0:保存,1:提交,2:下达,3:已统一下达}-->
+                <div class="state state${item.FGOALSSTATUS.value}"><i></i>${item.FGOALSSTATUS.alias}</div>
+                <div class="field-line first-line">
+                    <pre class="indicaname">{@if item.FNAME}${item.FNAME}{@else if item.FKEYITEM}${item.FKEYITEM} {@/if}</pre>
+                    {@if list.canRate == '1' && list.subAreaType != 1}
+                    <span class="weightorscore">
+                        {@if list.scoringWay == 1}
+                        (<span class="ind-weight">${item.FTARSCORE}</span>${jsBizMultLan.perfweb_perfgoalsfill_1593331244239_i18n_0})
+                        {@else if list.scoringWay == 0}
+                        (<span class="ind-weight">${item.FWEIGHT}</span>%)
+                        {@/if}
+                    </span>
+                    {@/if}
+                    {@if pageType != 1 && pageType != 0 && dataType == 'targetDecompose'}
+                    <!-- {# 指标分解新增字段,目标值、实际完成值} -->
+                    {@each item.fieldslist as field, index}
+                        {@if field.colName == 'FTARGETVALUE'}
+                    <span class="decfileds">${field.showName}:<em class="ptargetvalue">
+                       {@if field.fieldvalue && field.fieldvalue !='NaN' && field.fieldvalue !='null'}
+                            ${field.fieldvalue}
+                        {@/if}
+                    </em>
+                       {@if item.FUNIT && item.FUNIT !='NaN' && item.FUNIT !='null'}
+                            ${item.FUNIT}
+                         {@/if}
+                    </span>
+                        {@/if}
+                        {@if field.colName == 'FACTUALCOMPLEVALUE'}
+                    <span class="decfileds">${field.showName}:<em class="pactualvalue">${field.fieldvalue}</em>${item.FUNIT}</span>
+                        {@/if}
+                    {@/each}
+                    <span class="schedule parentschedule">
+                        <span class="schedule-name">${jsBizMultLan.perfweb_perfgoalsfill_1593331244239_i18n_1}</span>
+                        <span class="wholebar">
+                            <span class="finishbar" style="width: ${list.FTARGETVALUE | targetSchedule , list.FACTUALCOMPLEVALUE}%"></span>
+                        </span>
+                        <span class="percentnum">0</span>%
+                    </span>
+                    {@/if}
+                </div>
+                <div
+                    {@if showAllFields}
+                    class="field-box show-more"
+                    {@else}
+                    class="field-box"
+                    {@/if}
+                    >
+                    {@if dataType != 'targetDecompose'}
+                    <!-- {# 目标填报页面新增指标来源、指标负责人字段} -->
+                        {@if item.FSOURCE}
+                    <div class="field-line">
+                        <span class="field-name" title="${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_66}">${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_67}</span>
+                        <span class="field-value">
+                            ${item.FSOURCE}
+                        </span>
+                    </div>
+                        {@/if}
+                        {@if item.FRESPONSERNAME}
+                    <div class="field-line">
+                        <span class="field-name" title=${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_27}>${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_28}</span>
+                        <span class="field-value">
+                            ${item.FRESPONSERNAME}
+                        </span>
+                    </div>
+                        {@/if}
+                    {@/if}
+                    {@each item.fieldslist as it,index2}
+                        {# 指标维护阶段为非指标评价阶段 非是否统一下达字段 }
+                        {@if it.fieldMaintenanceStage !== '200' && it.colName !== 'FISUNITED' && it.colName !== 'FNAME' && it.colName !== 'FKEYITEM' && it.colName !== 'FWEIGHT' && it.colName !== 'FTARSCORE'}
+                            <!--{# 计划完成日期}-->
+                            {@if it.colName == 'FPSTARTDATE' || it.colName == 'FPENDDATE' || it.colName == 'FPLANEDDATE'}
+                            <div class="field-line" field-type="${it.fieldType}">
+                                <span class="field-name" title="${it.showName}">${it.showName}:</span><span class="field-value">
+                                    {@if it.fieldvalue}
+                                    ${it.fieldvalue.substr(0,10)}
+                                    {@/if}
+                                </span>
+                            </div>
+                            {@else if it.colName == 'FREJECTION' || (it.colName.indexOf('FEXTEND') > -1 && it.fieldType === 'Boolean' && it.fieldMaintenanceStage !== '200')}   {# 否决项、扩展字段布尔类型}
+                            <div class="field-line" field-type="${it.fieldType}">
+                                <span class="field-name" title="${it.showName}">${it.showName}:</span><span class="field-value">
+                                ${it.fieldvalue=='1' ? jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_52 : jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_12}</span>
+                            </div>
+                            {@else if it.colName == 'FQUALIORRATION'}   
+                            <!--{# 定性/定量}-->
+                            <div class="field-line" field-type="${it.fieldType}">
+                                <span class="field-name" title="${it.showName}">${it.showName}:</span><span class="field-value">
+                                ${it.fieldvalue=="0" ? jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_11 : jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_10}</span>
+                            </div>
+                            {@else if it.colName == 'FISVISIBLE'}   
+                            <!-- {# 可见性} -->
+                            <div class="field-line" field-type="${it.fieldType}">
+                                <span class="field-name" title="${it.showName}">${it.showName}:</span>
+                                <span class="field-value">${it.fieldvalue=="0" ? jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_2 : jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_14}</span>
+                            </div>
+                            {@else if it.colName == 'FISUNITED'}        
+                            <!--{# 是否统一下达}-->
+                            <div class="field-line" field-type="${it.fieldType}">
+                                <span class="field-name" title="${it.showName}">${it.showName}:</span><span class="field-value">
+                                ${it.fieldvalue=="0" ? jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_12 : jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_52}</span>
+                            </div>
+                            {@else if it.colName == 'FSCORINGFORMULA' || it.colName == 'FINDECATORTYPE'}        
+                            <!--{# 评分公式、指标类型}-->
+                            <div class="field-line" field-type="${it.fieldType}">
+                                <span class="field-name" title="${it.showName}">${it.showName}:</span>
+                                <span class="field-value">
+                                    {@if it.fieldvalue}
+                                    ${it.fieldvalue.name}
+                                    {@/if}
+                                </span>
+                            </div>
+                            {@else if it.colName == 'FISVISIBLE'}
+                            <!--{# 可见性}-->
+                            <div class="field-line" field-type="${it.fieldType}">
+                                <span class="field-name" title="${it.showName}">${it.showName}:</span><span class="field-value">
+                                {@if it.fieldvalue=="0" }
+                                <!--不公開-->
+                                ${$.perfwebI18n.tableConstant.msg4}
+                                {@else}
+                                <!--公開-->
+                                ${$.perfwebI18n.tableConstant.msg3}
+                                {@/if}
+                                </span>
+                            </div>
+                            {# 如果是扩展字段匹配字段维护阶段配置 }
+                            {@else if it.colName.indexOf('FEXTEND') > -1}
+                                {@if it.fieldMaintenanceStage !== '200'}
+                                <div class="field-line" field-type="${it.fieldType}">
+                                    <span class="field-name" title="${it.showName}">${it.showName}:</span>
+                                    {@if it.fieldvalue }
+                                    <pre class="field-value" title="${it.fieldvalue}">${it.fieldvalue}</pre>
+                                    {@/if}
+                                </div>
+                                {@/if}
+                            {@else}
+                            <div class="field-line" field-type="${it.fieldType}">
+                                <span class="field-name" title="${it.showName}">${it.showName}:</span>
+                                {@if it.fieldvalue }
+                                <pre class="field-value" title="${it.fieldvalue}">${it.fieldvalue}</pre>
+                                {@/if}
+                            </div>
+                            {@/if}
+                        {@/if}
+                    {@/each}
+                </div>
+                {@if dataType == 'targetDecompose'} <!--{# 指标分解页面}-->
+                <div class="field-line-show first-line">
+                    <span class="field-name" title="${jsBizMultLan.perfweb_perfgoalsfill_1593167704813_i18n_0}">
+                        ${jsBizMultLan.perfweb_perfgoalsfill_1593167704813_i18n_1}</span>
+                    <span class="field-value">
+                        {@if isOrg == '0'}
+                        <span class="puphotowrap">
+                            <img src="/shr/personSquarePhoto.do?personId=${item.FPERSON}" class="puphoto">
+                        </span>
+                        {@/if}
+                        ${item.FPERSONNAME}
+                    </span>
+                </div>
+                    {@if parent.length > 0}
+                <div class="field-line-show">
+                    <span class="field-name" title="${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_66}">
+                        ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_67}</span>
+                    <span class="field-value">
+                        {@if parent[0].FNAME}
+                        ${parent[0].FNAME}
+                        {@else if parent[0].FKEYITEM}
+                        ${parent[0].FKEYITEM}
+                        {@/if}
+                    </span>
+                </div>
+                <div class="field-line-show">
+                    <span class="field-name" title="${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_27}">
+                        ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_28}</span>
+                    <span class="field-value">
+                        ${parent[0].FPERSONNAME}
+                    </span>
+                </div>
+                    {@/if}
+                {@/if}
+                <div class="btnwrap" indId="${item.FID}">
+                    {@if pageType != 5 &&  pageType != 10 && operatestate != 'VIEW'} <!--{# 考核计划执行-未发送-查看评估表,所有按钮统统没有}-->
+                    {@if (item.FISUNITED == '1' && targetCanEdit==1 ) || item.FISUNITED == '0'} <!--{# 如果指标是统一下达状态,不显示:编辑、删除 的按钮,只显示“指标分解”}-->
+                    {@if pageType != 7 &&  pageType != 2 && pageType != 8 && pageType != 4 && pageType != 3} <!--{# 绩效已办-我已填报的目标、我的绩效-我的目标,3绩效已办-我已下达的目标查看,4团队绩效-团队目标查看,8目标确认与打回,不能编辑 、删除}-->
+                    <span class="editbtn" onclick="it.editIndicator(${index0},${index1})">
+                        ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_1}</span>
+                    {@if item.FISUNITED == '0'}
+                    <span class="delbtn" onclick="it.delgoal(this)">
+                        ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_44}</span>
+                    {@/if}
+                    {@/if}
+                    {@/if}
+                    {@if (pageType == 2 || pageType == 4) && item.FGOALSSTATUS.value > 1 && progressUpdate && dataType != 'targetDecompose' && (hideDecompose != '1' || pageType == 4)} <!--{# 我的绩效-我的目标打开的填报页面,且指标已下达才显示进度更新按钮}-->
+                    <span class="updbtn" onclick="it.openTargetDecomposePage('${list.areaId}','${item.FID}',0)">
+                         {@if pageType == 4}
+                            <!--查看进度-->
+                            ${jsBizMultLan.perfweb_perfgoalsfillhtml_888}
+                         {@else}
+                             <!--{# 进度更新}-->
+                            ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_18}
+                         {@/if}
+
+                    </span>
+                    {@/if}
+                    {@if pageType != 3 && pageType != 7 && pageType != 8 && list.areaType != 300 && hideDecompose != '1'} <!--{# 绩效已办-我已下达的目标和我已填报的目标不显示指标分解按钮。targetDecompose为false不显示,为true显示。记录表区域不显示指标分解按钮}-->
+                        {@if targetDecompose}
+                            <span class="decbtn" onclick="it.openTargetDecomposePage('${list.areaId}','${item.FID}',1)">
+                            ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_65}
+                            </span>
+                        {@/if}
+
+                        <!--{# 补丁11 任务管理-指标填报页面显示任务按钮-yien todo 增加权限项}-->
+                        <!--{# BT1460759 指标任务按钮 只在我的目标目标状态已下达了 才显示}-->
+                        {@if item.FGOALSSTATUS.value > 1}
+                           <!-- <span class="decbtn" onclick="it.openTargetDecomposePage('${list.areaId}','${item.FID}',2)">
+                                &lt;!&ndash;{# 指标任务}&ndash;&gt;
+                                ${$.perfwebI18n.perfTask.indicatorTask}
+                            </span>-->
+                        {@/if}
+
+                    {@/if}
+                    {@if dataType == 'targetDecompose' && list.areaType != 300} <!--{# 指标分解页面}-->
+                    {@if parent.length > 0}
+                    <span class="relatbtn" onclick="it.cancelRelation('${item.FID}','${parent[0].FID}','${parent[0].FDECOMPOSETYPE}')">
+                        ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_41}</span>
+                    {@/if}
+                    {@if pageType != 4}
+                    <span class="relatbtn" onclick="it.targetRelation('up','${list.areaType}')">
+                        ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_58} <span class="uptips"></span></span>
+                    <span class="relatbtn" onclick="it.targetRelation('down','${list.areaType}')">
+                        ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_59} <span class="downtips"></span></span>
+                    {@/if}
+                    {@/if}
+                    <!--BT1423084 执行地图去掉-->
+                        {@if pageType != 1 && pageType != 0   && dataType == 'targetDecompose'}
+                    {# <span class="mapbtn" onclick="it.openPerformMapPage('${list.areaId}','${item.FID}',0)">${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_5}</span>}
+                        {@/if}
+                    {@/if}
+                    {@if dataType != 'targetDecompose' && pageType != 2 && pageType != 4 }
+                    <span class="moveup" onclick="it.moveUp('${item.FID}','${list.areaType}')"></span>
+                    <span class="movedown" onclick="it.moveDown('${item.FID}','${list.areaType}')"></span>
+                    {@/if}
+                    {@if showAllFields}
+                    <span class="morefields onspread" onclick="it.showMoreFields(this)">
+                        ${jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_73}</span>
+                    {@else}
+                    <span class="morefields" onclick="it.showMoreFields(this)">
+                        ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_64}</span>
+                    {@/if}
+                </div>
+            </li>
+            {@/each}
+        </ul>
+        {@/if}
+    </div>
+    {@/each}
+</script>
+
+<!--补丁10 是否必填-yien-->
+<script id="editBoxTpl" type="text/template">
+    <div id="editboxDialog" indid="${rows.FID}" isUnited="${rows.FISUNITED}" areatype="${rows.areaType}">
+        {@if rows.isToPerson == 1||rows.s2d == 'orgToOrg' || rows.s2d== 'orgToPerson'}
+        <div class="field-line">
+            <span class="field-name" title="${jsBizMultLan.perfweb_perfTargetDecompose_bw0812_01}">${jsBizMultLan.perfweb_perfTargetDecompose_bw0812_01}</span>
+            <span class="field-value">
+                <input type="text" id="toPersonArea" name="toPersonArea"  value=""  onblur=""  >
+            </span>
+        </div>
+        {@/if}
+    {@each rows.fieldslist as it,index}
+        {# 指标维护阶段为非指标评价阶段 非是否统一下达字段 }
+        {@if (typeof it.fieldMaintenanceStage === 'string' && it.fieldMaintenanceStage !== '200') || (it.fieldMaintenanceStage.hasOwnProperty('value') && it.fieldMaintenanceStage.value !== '200') && it.colName !== 'FISUNITED'}
+            <!--{# 否决项}-->
+            {@if it.colName == 'FREJECTION'}
+            <div class="field-line">
+                <span class="field-name" title="${it.showName}">${it.showName}:</span>
+                <span class="field-value">
+                    <input type="checkbox" id="${it.colName}" name="${it.colName}"  fname="${it.colName}" showName="${it.showName}"
+                    {@if it.fieldvalue=='1'}
+                    checked
+                    {@/if}
+                    >
+                </span>
+            </div>
+            {# 扩展字段 }
+            {@else if  it.colName.indexOf('FEXTEND') === 0}
+                {# 匹配字段维护阶段 }
+                {@if (typeof it.fieldMaintenanceStage === 'string' && it.fieldMaintenanceStage !== '200') || (it.fieldMaintenanceStage.hasOwnProperty('value') && it.fieldMaintenanceStage.value !== '200')}
+            <div class="field-line
+            {@if it.fieldType == 'LongText'}
+            full-line
+            {@/if}
+            ">
+                <span class="field-name" data-fieldType="${it.fieldType}" title="${it.showName}">${it.showName}:</span>
+                <span class="field-value">
+                    {@if typeof it.fieldType === 'string'}
+                        {@if it.fieldType == 'LongText'}
+                        <textarea data-value_l1="${it.fieldvalue_l1}" data-value_l2="${it.fieldvalue_l2}" data-value_l3="${it.fieldvalue_l3}" id="${it.colName}" name="${it.colName}" fname="${it.colName}" showName="${it.showName}" onblur="it.judgeVal(this)" class="${it.isRequired == "1" ? "required" : ""}" data-isrequired="${it.isRequired}" data-showname="${it.showName}" field-type="${it.fieldType}">${it.fieldvalue}</textarea>
+                        {@else if it.fieldType == 'Boolean'}
+                        <input type="checkbox" id="${it.colName}" name="${it.colName}"  fname="${it.colName}" showName="${it.showName}"  field-type="${it.fieldType}" 
+                            {@if it.fieldvalue=="1"}
+                            checked
+                            {@/if}
+                        >
+                        {@else}
+                        <input  data-value_l1="${it.fieldvalue_l1}" data-value_l2="${it.fieldvalue_l2}" data-value_l3="${it.fieldvalue_l3}"  type="text" id="${it.colName}" name="${it.colName}" fname="${it.colName}" value="${it.fieldvalue}" onblur="it.judgeVal(this)" showName="${it.showName}" class="${it.isRequired == "1" ? "required" : ""}" data-isrequired="${it.isRequired}" data-showname="${it.showName}" field-type="${it.fieldType}" 
+                            {@if it.fieldType=="Select"}
+                            select-options="${it | dealWithOptions}"
+                            {@/if}
+                        >
+                        {@/if}  
+                    {@else}
+                        {@if it.fieldType.value == '20'}
+                        <textarea data-value_l1="${it.fieldvalue_l1}" data-value_l2="${it.fieldvalue_l2}" data-value_l3="${it.fieldvalue_l3}" id="${it.colName}" name="${it.colName}" fname="${it.colName}" showName="${it.showName}" onblur="it.judgeVal(this)" class="${it.isRequired == "1" ? "required" : ""}" data-isrequired="${it.isRequired}" data-showname="${it.showName}" field-type="${it.fieldType | dealWithFieldType}">${it.fieldvalue}</textarea>
+                        {@else if it.fieldType.value == '40'}
+                        <input type="checkbox" id="${it.colName}" name="${it.colName}"  fname="${it.colName}" showName="${it.showName}" field-type="${it.fieldType | dealWithFieldType}" 
+                            {@if it.fieldvalue=="1"}
+                            checked
+                            {@/if}
+                        >
+                        {@else}
+                        <input  data-value_l1="${it.fieldvalue_l1}" data-value_l2="${it.fieldvalue_l2}" data-value_l3="${it.fieldvalue_l3}"  type="text" id="${it.colName}" name="${it.colName}" fname="${it.colName}" value="${it.fieldvalue}" onblur="it.judgeVal(this)" showName="${it.showName}" class="${it.isRequired == "1" ? "required" : ""}" data-isrequired="${it.isRequired}" data-showname="${it.showName}" field-type="${it.fieldType | dealWithFieldType}"
+                            {@if it.fieldType.value=="50"}
+                            select-options="${it | dealWithOptions}"
+                            {@/if}
+                        >
+                        {@/if}
+                    {@/if}
+                    <div class="errowmsg" for="${it.colName}"></div>
+                </span>
+            </div>
+                {@/if}
+            {# 长字段}
+            {# 评价标准、指标描述、衡量标准、备注}
+            {@else if it.colName == 'FEVALSTANDARD' || it.colName == 'FINDECATORDESC' || it.colName == 'FREMARK' || it.colName == 'FMEASURESTANDARD' || it.colName == 'FREMA' || it.colName == 'FNAME' || it.colName == 'FKEYITEM'
+            } <!-- 补丁10优化-自定义扩展字段能多行显示 modified by Janeou_xie -->
+            <div class="field-line full-line">
+                <span class="field-name" title="${it.showName}">${it.showName}:</span>
+                <span class="field-value">
+                    {# 补丁11 指标实例多语言字段改造}
+                    <textarea data-value_l1="${it.fieldvalue_l1}" data-value_l2="${it.fieldvalue_l2}" data-value_l3="${it.fieldvalue_l3}" id="${it.colName}" name="${it.colName}" fname="${it.colName}" showName="${it.showName}" onblur="it.judgeVal(this)" class="${it.isRequired == "1" ? "required" : ""}" data-isrequired="${it.isRequired}" data-showname="${it.showName}">${it.fieldvalue}</textarea>
+                    <div class="errowmsg" for="${it.colName}"></div>
+                </span>
+            </div>
+            {# 必录字段蓝底}
+            {@else if it.colName == 'FNUMBER' || it.colName == 'FWEIGHT' || it.colName == 'FTARSCORE' || it.colName == 'FINDECATORTYPE'}
+            <div class="field-line">
+                <span class="field-name" title="${it.showName}">${it.showName}{@if it.colName == 'FWEIGHT'}(%){@/if}:</span>
+                <span class="field-value">
+                    {@if it.colName == 'FINDECATORTYPE'}
+                    {# 指标类型 F7}
+                    <input  type="text" id="${it.colName}" name="${it.colName}" fname="${it.colName}" onblur="it.judgeVal(this)" readonly="readonly" showName="${it.showName}" class="${it.isRequired == "1" ? "required" : ""}" data-isrequired="${it.isRequired}" data-showname="${it.showName}"/>
+                    {@else if it.colName == 'FWEIGHT'|| it.colName == 'FTARSCORE'}<!--权重和分值设置最大长度-->
+                    <input  type="text" id="${it.colName}" name="${it.colName}" fname="${it.colName}" value="${it.fieldvalue}" onblur="it.judgeVal(this)" showName="${it.showName}" maxlength="7" class="${it.isRequired == "1" ? "required" : ""}" data-isrequired="${it.isRequired}" data-showname="${it.showName}"/>
+                    {@else}
+                    <input data-value_l1="${it.fieldvalue_l1}" data-value_l2="${it.fieldvalue_l2}" data-value_l3="${it.fieldvalue_l3}" type="text" id="${it.colName}" name="${it.colName}" fname="${it.colName}" value="${it.fieldvalue}" onblur="it.judgeVal(this)" showName="${it.showName}" class="${it.isRequired == "1" ? "required" : ""}" data-isrequired="${it.isRequired}" data-showname="${it.showName}"/>
+                    {@/if}
+                    <div class="errowmsg" for="${it.colName}"></div>
+                </span>
+            </div>
+            {@else}
+            <div class="field-line">
+                <span class="field-name" title="${it.showName}">${it.showName}:</span>
+                <span class="field-value">
+                    {@if it.colName == 'FSCORINGFORMULA'}
+                    {# 评分公式 F7}
+                    <input type="text" id="${it.colName}" name="${it.colName}" fname="${it.colName}" readonly="readonly" showName="${it.showName}" class="${it.isRequired == "1" ? "required" : ""}" data-isrequired="${it.isRequired}" data-showname="${it.showName}">
+                    <div class="errowmsg" for="${it.colName}"></div>
+                    {@else}
+                    <input data-value_l1="${it.fieldvalue_l1}" data-value_l2="${it.fieldvalue_l2}" data-value_l3="${it.fieldvalue_l3}" type="text" id="${it.colName}" name="${it.colName}" fname="${it.colName}" value="${it.fieldvalue}" showName="${it.showName}" onblur="it.judgeVal(this)" class="${it.isRequired == "1" ? "required" : ""}" data-isrequired="${it.isRequired}" data-showname="${it.showName}">
+                    <div class="errowmsg" for="${it.colName}"></div>
+                    {@/if}
+                </span>
+            </div>
+            {@/if}
+        {@/if}
+    {@/each}
+    </div>
+</script>
+
+<script id="addNewIndicatorsTpl" type="text/template">
+    <div id="addPerfIndicatorsDialog">
+        <div id="addnewPIbox" class="PIbox">
+            <p style="margin:20px 0 0">
+                ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_60}</p>
+            <ul class="partplist" id="partplist">
+            {@each rows.evaAreaList as area,i}
+                {@if i == 0}
+                    <li class="partlistselect"><span class="partnumber_1 textOverflow" areaId="${area.areaId}" areaType="${area.areaType}" title="${area.areaName}">${area.areaName}</span>
+                    <span class="grouplistselect_icon"></span></li>
+                {@else}
+                    <li><span class="partnumber_1 textOverflow" areaId="${area.areaId}" areaType="${area.areaType}" title="${area.areaName}">${area.areaName}</span></li>
+                {@/if}
+            {@/each}
+            </ul>
+        </div>
+    </div>
+</script>
+
+<script id="referenceIndicatorsTpl" type="text/template">
+    <div id="addPerfIndicatorsDialog">
+        <div style="color:#666">
+            {@if currAreaType == '300'}
+            <span class="radio-btn-wrap" id="referencePI" data-index="0" onclick="it.addPI(this.id)" style="display:none;">
+            {@else}
+            <span class="radio-btn-wrap" id="referencePI" data-index="0" onclick="it.addPI(this.id)" >
+            {@/if}
+                <span class="radio-btn radio-checked"></span>
+                ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_15}
+            </span>
+            
+            <span class="radio-btn-wrap" id="reference_existingPI" data-index="1" onclick="it.addPI(this.id)">
+                <span class="radio-btn"></span>
+                ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_62}
+            </span>
+            <span class="radio-btn-wrap" id="reference_existingPI_2" data-index="2" onclick="it.addPI(this.id)">
+                <span class="radio-btn"></span>
+                ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_62}
+            </span>
+            <span class="radio-btn-wrap" id="reference_orgPI" data-index="3" onclick="it.addPI(this.id)">
+                <span class="radio-btn"></span>
+                <!--组织指标-->
+                 ${$.perfwebI18n.commonMsg.orgTarget}
+            </span>
+        </div>
+        {@if currAreaType == '300'}
+        <div id="referencePIbox" class="PIbox" style="display:none;">
+        {@else}
+        <div id="referencePIbox" class="PIbox">
+        {@/if}
+            {@if !currAreaType}
+            <ul class="partplist_1" id="partplist_1">
+            {@each rows.evaAreaList as area,i}
+                {@if area.areaType == 200}
+                <li><span class="partnumber_1 textOverflow" areaId="${area.areaId}" areaType="${area.areaType}" title="${area.areaName}">${area.areaName}</span></li>
+                {@/if}
+            {@/each}
+            </ul>
+            {@/if}
+            <div style="margin:5px 0;clear:both" class="color6">
+            <span class="infname">${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_68}</span>
+            <span class="f7long" style="width:100px"><form id="indiTypeForm" action="indiTypeForm" style="width:236px;"><input type="text" id="indiType" name="indiType" /><input id="hiddenText" type="text" style="display:none" /></form></span>
+            </div>
+            <div class="datarecords show">
+                <ul class="recordsmenu">
+                    <li class="selectli">
+                        ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_42}(<span id="PIall_num"></span>)
+                    </li>
+                    <li id="PIselectLi">
+                        ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_61}(<span id="PIselected_num"></span>)
+                    </li>
+                </ul>
+            <div id="referencePI_searcher"></div>
+                <div class="tablewrap">
+                    <div class="recordtab show">
+                        <table id="PIall" class="tab">
+                        </table>
+                    </div>
+                    <div class="recordtab">
+                        <table id="PIselected" class="tab recordtabchecked">
+                        </table>
+                    </div>
+                </div>
+            </div>
+        </div>
+        <div id="reference_existingPIbox" class="PIbox">
+            <div style="margin:5px 0;clear:both" class="color6"></div>
+            <div class="datarecords show">
+                <div class="tablewrap">
+                    <div>
+                        <table id="existingPIall">
+                        </table>
+                    </div>
+                </div>
+            </div>
+        </div>
+        <div id="reference_existingPI_2box" class="PIbox">
+            <div style="margin:5px 0;clear:both" class="color6">
+                <span class="infname">
+                    ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_21}</span>
+                <span class="f7long"><form id="perfPlayForm" action="perfPlayForm"><input type="text" id="perfPlay" name="perfPlay"><input id="hiddenText" type="text" style="display:none" /></form></span>
+            </div>
+            <div class="datarecords show">
+                <div class="useMyOwnTargetwrap"><input type="checkbox" id="useMyOwnTarget"/><label for="useMyOwnTarget">
+                    ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_16}</label></div>
+                <div id="existingPIall_searcher"></div>
+                <div class="tablewrap">
+                    <div class="recordtab show">
+                        <table id="existingPIall_2">
+                    </table>
+                    </div>
+                </div>
+            </div>
+        </div>
+
+        <!--组织目标-->
+        <div id="reference_orgPIbox" class="PIbox">
+            {@if !currAreaType}
+            <ul class="partplist_1" id="org_partplist_1">
+                {@each rows.evaAreaList as area,i}
+                {@if area.areaType == 200 || area.areaType == 300}
+                <li><span class="partnumber_1 textOverflow" areaId="${area.areaId}" areaType="${area.areaType}" title="${area.areaName}">${area.areaName}</span></li>
+                {@/if}
+                {@/each}
+            </ul>
+            {@/if}
+            <div style="margin:5px 0;clear:both" class="color6">
+                <!--<span class="infname">组织名称:</span>-->
+                <span class="infname"> ${$.perfwebI18n.tableConstant.msg7}:</span>
+                <span class="f7long" style="width:100px"><form id="refOrgUnitForm" action="refOrgUnitForm" style="width:236px;"><input type="text" id="refOrgUnit" name="refOrgUnit" /></form></span>
+            </div>
+
+            <div class="datarecords show">
+                <div class="tablewrap">
+                    <div class="recordtab show">
+                        <table id="existingOrgPI" class="tab">
+                        </table>
+                    </div>
+                </div>
+            </div>
+        </div>
+</script>
+
+<!-- 设置指标流程第一层弹框 -->
+<script id="setTargetWorkflowTpl" type="text/template">
+    <div id="setTargetWorkflowDialog" style="display:none;">
+        <div id="workFlows"></div>
+        <div class="tablewrap">
+            <div class="recordtab show">
+                <table id="setTargetWorkflowTable" class="tab"></table>
+            </div>
+        </div>
+    </div>
+</script>
+
+<!-- 设置指标流程第二层弹框(没有地方用到,先复制过来) -->
+<script id="setTargetWorkflowTpl" type="text/template">
+    <div id="secondTargetWorkflowDialog">
+        <div style="margin:5px 0;clear:both" class="color6">
+            <span class="infname">${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_33}</span>
+            <span class="f7long" style="width:100px"><form id="nodeHandlerF7Form" action="nodeHandlerF7Form" style="width:236px;"><input type="text" id="nodeHandlerF7" name="nodeHandlerF7" /><input id="hiddenText" type="text" style="display:none" /></form></span>
+        </div>
+        <div class="tablewrap">
+            <div class="recordtab show">
+                <table id="secondTargetWorkflowTable" class="tab"></table>
+            </div>
+        </div>
+    </div>
+</script>
+
+<script id="backReasonListTpl" type="text/template">
+    <div id="backReasonForm">
+        {@if list.length == 0}
+        <div class="backReason_noRecord"><p>${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_63}</p></div>
+        {@else}
+        {@each list as item,i}
+        <div class="timeline-box">
+            <div class="backReason_div">
+                <p class="backReason_title">
+                    <span class="fl">
+                        <!-- ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_7} -->
+                        ${item.createTime}
+                    </span>
+                    <span class="fr">
+                        ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_6}
+                        ${item.creator}
+                    </span>
+                </p>
+                <pre class="backReason_reason"><!-- ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_8} -->${item.reason}</pre>
+            </div>
+            <div class="timeline">
+                <div class="timeline-circle"></div>
+                <div class="timeline-line"></div>
+            </div>
+        </div>
+        {@/each}
+        {@/if}
+    </div>
+</script>
+
+
+<!-- 指标分解模板 -->
+<script id="targetDecomposeTpl" type="text/template">
+    <div class="cont-box">
+        <div class="tabbox">
+            <div class="tabbtnwrap">
+                <!--{# 指标填报页面不显示进度反馈页签,个人目标状态未下达的不显示进度反馈页签}-->
+                {@if pageType != 1 && pageType != 0 && goalsstatus.value > 1 && progressUpdate}
+                <span class="tabbtn active" onclick="it.showProgressUpdateTab(this)" tabindex="0">
+                    ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_17}</span>
+                {@/if}
+                {@if areaType == 200  && targetDecompose && pageType != 4}<!--{# 记录表不能指标分解, // 从我负责的绩效-员工目标-查看进度进入时不展示}-->
+                <span class="tabbtn" onclick="it.showtargetdecomposeTab(this)" tabindex="1">
+                    ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_65}</span>
+                {@/if}
+                <!--{# 补丁11-任务管理-yien todo 增加权限项}-->
+                <!--{# 补丁11-BT1465270 目标状态已下达了允许添加任务的情况下才显示}-->
+                {@if areaType == 200 && goalsstatus.value > 1}<!--{# 记录表不能指标分解}-->
+            <!-- <span class="tabbtn" onclick="it.showPerfTaskTab(this)" tabindex="2">
+                    &lt;!&ndash;{# 指标任务}&ndash;&gt;
+                    ${$.perfwebI18n.perfTask.indicatorTask}
+                </span>-->
+                {@/if}
+            </div>
+        </div>
+        <!--{# 指标填报页面不显示进度反馈页签}-->
+        {@if pageType != 1 && pageType != 0 }
+        <div id="progressUpdateBox">
+            {@if pageType !=4 }
+            <div class="updateitembox">
+                {@if isShowField.targetValue}
+                <div>
+                    <span class="field-name">
+                        ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_31}</span>
+                    <span class="field-value">
+                        <input type="text" id="targetValue" name="targetValue" fname="targetValue" disabled = "disabled" showname="${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_30}" onblur="it.judgeVal(this)">
+                        <div class="errowmsg" for="targetValue"></div>
+                    </span>
+                </div>
+                {@/if}
+                {@if isShowField.actualCompleValue}
+                <div>
+                    <span class="field-name">
+                        ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_51}</span>
+                    <span class="field-value">
+                        <input type="text" id="realValue" name="realValue" fname="realValue" showname="${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_50}" onblur="it.judgeVal(this)">
+                        <div class="errowmsg" for="realValue"></div>
+                    </span>
+                </div>
+                {@/if}
+                <div>
+                    <span class="field-name">
+                        ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_55}</span>
+                    <span class="field-value">
+                        <input type="text" id="completedProgress" name="completedProgress" fname="completedProgress" showname="${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_54}" onblur="it.judgeVal(this)">%
+                        <div class="errowmsg" for="completedProgress"></div>
+                    </span>
+                </div>
+                <div>
+                    <span class="field-name">
+                        ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_56}</span>
+                    <span class="field-value shrselectwrap">
+                        <input type="text" id="completedStatus" name="completedStatus" class="required" readonly>
+                    </span>
+                </div>
+                <div class="textarealine">
+                    <span class="field-name">
+                        ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_49}</span>
+                    <span class="field-value">
+                        <textarea id="actualCompletion" name="actualCompletion" fname="actualCompletion" showname="${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_48}" onblur="it.judgeVal(this)"></textarea>
+                        <div class="errowmsg" for="actualCompletion"></div>
+                    </span>
+                </div>
+                <div class="textarealine">
+                    <span class="field-name">${jsBizMultLan.perfweb_perfgoalsfill_202112090001}</span>
+                    <span class="field-value">
+                        <textarea id="nextPlan" name="nextPlan" fname="nextPlan" showname="${jsBizMultLan.perfweb_perfgoalsfill_202112090001}" onblur="it.judgeVal(this)"></textarea>
+                        <div class="errowmsg" for="nextPlan"></div>
+                    </span>
+                </div>
+                <div>
+                    <!-- <span class="field-name">附件</span>
+                    <div class="attachmentUploadArea">
+                        <p style="height:1px;margin:0 0 0"><input type="file" id="upload-file" class="attachment_style"></p>
+                        <div id="upload-file_attachList"></div>
+                    </div> -->
+                    <div>
+                        <span class="uploadbtn" onclick="it.uploadFileDialog('upload')">${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_45}</span>
+                    </div>
+                </div>
+            </div>
+            {@/if}
+            <ul class="progressupdatelist"></ul>
+            {@if pageType != 4}<!-- {# // 从我负责的绩效-员工目标-查看进度进入时不展示} -->
+                <div class="updatebtn-wrap"><button class="shrbtn updatebtn" onclick="it.doProgressUpdate()">${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_13}</button></div>
+            {@/if}
+        </div>
+        {@/if}
+        <div class="listwrap">
+            <!--{# 组织才显示分解给个人  && 评估表的时候 并且是分解状态}-->
+            {@if isOrg== '1' && areaType == 200  && targetDecompose}
+            <div class="tabSub">
+                <span class="tabbtn active" onclick="it.switchTargetdecomposeTab(this,'targetDecomposeBox')" tabSubIndex="0">${jsBizMultLan.perfweb_perfTargetDecompose_bw0415_07}</span>
+                <span class="tabbtn " onclick="it.switchTargetdecomposeTab(this,'targetDecomposeBoxToPerson')" tabSubIndex="1">${jsBizMultLan.perfweb_perfTargetDecompose_bw0415_08}</span>
+            </div>
+            {@/if}
+            {@if areaType == 200}<!--{# 记录表不能指标分解}-->
+            <div id="targetDecomposeBox" class="targetDecomposeBoxTab">
+                <div class="addperson" onclick="it.addTargetSuccessor()">
+                    {@if isOrg == '1'}
+                    ${jsBizMultLan.perfweb_perfgoalsfill_keymsf3_i18n_addTargetOrg}+
+                    {@else}
+                    ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_53}
+                    {@/if}
+                </div>
+                <ul id="targetSuccessorlist" class="targetSuccessorlist"></ul>
+            </div>
+            {@if isOrg== '1'}
+            <div id="targetDecomposeBoxToPerson" class="targetDecomposeBoxTab hide">
+                <div class="addperson" onclick="it.addpersonDialog()">
+                    ${jsBizMultLan.perfweb_perfTargetDecompose_bw0415_09}
+                    <!--{# 添加目标承接人+}-->
+                </div>
+                <ul id="targetSuccessorlistToPerson" class="targetSuccessorlist"></ul>
+            </div>
+            {@/if}
+        </div>
+        <div class="addpersonF7wrap">
+            <input type="text" id="targetSuccessor_hide" name="targetSuccessor_hide">
+        </div>
+        <div class="relationF7wrap200up">
+            <input type="text" id="relationF7wrap200up_hide" name="relationF7wrap200up_hide">
+        </div>
+        <div class="relationF7wrap200down">
+                <input type="text" id="relationF7wrap200down_hide" name="relationF7wrap200down_hide">
+            </div>
+        <div class="relationF7wrap300up">
+            <input type="text" id="relationF7wrap300up_hide" name="relationF7wrap300up_hide">
+        </div>
+        <div class="relationF7wrap300down">
+            <input type="text" id="relationF7wrap300down_hide" name="relationF7wrap300down_hide">
+        </div>
+        {@/if}
+
+        <!--{# 补丁11-任务管理-yien}-->
+        {@if areaType == 200}<!--{# 记录表不能指标添加任务}-->
+        <div id="perfTaskBox" class="perfTaskTab">
+            {# BT1461035 暂时屏蔽指标分解页面添加任务的功能}
+            <!--<div class="addPerfTask" onclick="it.addPerfTask()">
+            &lt;!&ndash;{# 添加任务}&ndash;&gt;
+                ${$.perfwebI18n.perfTask.addTask}
+            </div>-->
+            <div id="perfTaskListSearcher"></div>
+            <ul id="perfTaskList" class="perftasklist"></ul>
+        </div>
+        {@/if}
+    </div>
+</script>
+
+<!-- 进度反馈列表 -->
+<script id="progressUListTsp" type="text/template">
+    {@each rows as list, index}
+    <li listid="${list.id}">
+        <div class="fieldsbox">
+            <span class="decfileds">
+                {@if list.lastUpdateTime}
+                ${list.lastUpdateTime.substr(0,10).split('-').join('/')} 
+                {@/if}
+                ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_13}
+            </span>
+            <span class="decfileds">
+                <span class="puphotowrap">
+                    <img src="/shr/personSquarePhoto.do?personId=${list.lastUpdateUser.id}" class="puphoto">
+                </span>
+                <span class="namewrap"> ${list.lastUpdateUser.name} </span>
+            </span>
+            {@if isShowField.actualCompleValue}
+            <span class="decfileds">
+                ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_51}
+                  {@if list.actualCompleValue && list.actualCompleValue!='NaN' && list.actualCompleValue!='null'}
+                ${list.actualCompleValue}
+                 {@/if}
+            </span>
+            {@/if}
+            {@if isShowField.targetValue}
+            <span class="decfileds">
+                ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_31}
+                {@if list.targetValue && list.targetValue!='NaN' && list.targetValue!='null'}
+                ${list.targetValue}
+                 {@/if}
+            </span>
+            {@/if}
+            <span class="decfileds">
+                ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_55}
+                ${list.compleProgress}%</span>
+            {@if list.hasattachment }
+            <span class="decfileds attachname" onclick="it.uploadFileDialog('view', '${list.id}')">
+                ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_4}</span>
+            {@/if}
+        </div>
+        {@if list.compleState}
+        {@if list.compleState.value == 2}
+        <div class="state state3">
+        {@else}
+        <div class="state">
+        {@/if}
+            <i></i>${list.compleState.alias}
+        </div>
+        {@/if}
+        {@if list.actualCompleteDesc || list.nextPlan}
+        <div class="controlbtnwrap"><span class="controlbtn" onclick="it.showMoreDecFIelds(this,'${list.id}')"></span></div>
+        <div class="fieldsboxhide" indId="${list.id}">
+            {@if list.actualCompleteDesc}
+            <div style="color: #777;font-size: 12px;margin-right: 20px;" >${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_49}</div>
+            <pre>${list.actualCompleteDesc}</pre>
+            {@/if}
+            {@if list.nextPlan}
+            <div style="color: #777;font-size: 12px;margin-right: 20px;">${jsBizMultLan.perfweb_perfgoalsfill_202112090001}</div>
+                <pre>${list.nextPlan}</pre>
+            </div>
+            {@/if}
+        {@else}
+        <div class="controlbtnwrap height1"></div>
+        {@/if}
+    </li>
+    {@/each}
+</script>
+
+<!-- 指标分解列表 -->
+<script id="targetSListTsp" type="text/template">
+    {@each rows as list,index}
+    <li indid="${list.FID}">
+        <div class="leftbox">
+            {@if isOrg == '0'}
+            <span class="personphoto" personid="${list.FPERSON.id}">
+                <img id="personPhoto" src="/shr/personSquarePhoto.do?personId=${list.FPERSON.id}">
+            </span>
+            {@/if}
+            <span class="personname">${list.FPERSONNAME}</span>
+        </div>
+        <div class="rightbox">
+            <div>
+                <span class="indicaname"
+                {@if list.FNAME}
+                title="${list.FNAME}">
+                    ${list.FNAME}
+                {@else if list.FKEYITEM}
+                title="${list.FKEYITEM}">
+                    ${list.FKEYITEM}
+                {@/if}
+                {@if list.scoringWay == 0}
+                    (${list.FWEIGHT}%)
+                {@else}
+                    (${list.FTARSCORE}${jsBizMultLan.perfweb_perfgoalsfill_1593331244239_i18n_0})
+                {@/if}
+                </span>
+                {@each list.fieldslist as field, index}
+                {@if field.colName == 'FTARGETVALUE'}
+                <span class="decfileds">${field.showName}:${list.FTARGETVALUE}${list.FUNIT}</span>
+                {@/if}
+                {@if field.colName == 'FACTUALCOMPLEVALUE'}
+                <span class="decfileds">${field.showName}:${list.FACTUALCOMPLEVALUE}${list.FUNIT}</span>
+                {@/if}
+                {@/each}
+                <span class="decfileds schedule">
+                    ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_29}
+                    <span class="wholebar">
+                        <span class="finishbar" style="width: ${list.compleProgress}%"></span>
+                    </span>
+                    ${list.compleProgress}%
+                </span>
+                <!--{# 指标状态,0:保存,1:提交,2:下达,3:统一下达}-->
+                {@if list.FGOALSSTATUS}
+                <div class="state state${list.FGOALSSTATUS.value}"><i></i>${list.FGOALSSTATUS.alias}</div>
+                {@/if}
+            </div>
+            <div class="mtop">
+                <span class="decfileds">
+                    ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_32}
+                    ${list.FPERIODNAME}
+                    (
+                    {@if list.FPSTARTDATE}
+                    ${list.FPSTARTDATE.substr(0,10).split('-').join('/')}
+                    {@/if}
+                    -
+                    {@if list.FPENDDATE}
+                    ${list.FPENDDATE.substr(0,10).split('-').join('/')}
+                    {@/if}
+                    )
+                </span>
+                <span class="decfileds">
+                    ${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_69}
+                    {@if list.FLASTUPDATETIME}
+                    ${list.FLASTUPDATETIME.substr(0,10).split('-').join('/')}
+                    {@/if}
+                </span>
+                <div class="btngroup">
+                    {@if list.FGOALSSTATUS.value == 0 && list.FDECOMPOSETYPE == 1}<!--{# 只有保存状态的可以编辑、删除指标}-->
+                    <button class="shrbtn" onclick="it.editDecomposeIndiator(this,'${index}','${isToPerson}','${list.FAREABASE.id}','${list.FPERFPERIOD.id}')">${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_1}</button>
+                    {@/if}
+                    <button class="shrbtn" onclick="it.cencalDecRelation('${list.FID}','','${list.FDECOMPOSETYPE}')">${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_41}</button>
+                    {@if list.FGOALSSTATUS.value == 0 && list.FDECOMPOSETYPE == 1} <!--{# 只有保存状态的可以编辑、删除指标}-->
+                    <button class="shrbtn" onclick="it.deleteDecRelation('${list.FID}')">${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_44}</button>
+                    {@/if}
+                </div>
+            </div>
+        </div>
+        <div class="controlbtnwrap"><span class="controlbtn" onclick="it.showMoreDecFIelds(this,'${list.FID}')"></span></div>
+        <div class="fieldsboxhide" indId="${list.FID}">
+            {@each list.fieldslist as it,index2}
+            <!--{# 计划完成日期}-->
+            {@if it.colName == 'FPLANEDDATE' || it.colName == 'FPLANDATE'}
+            <div class="field-line">
+                <span class="field-name" title="${it.showName}">${it.showName}:</span><span class="field-value">
+                    {@if it.fieldvalue}
+                    ${it.fieldvalue.substr(0,10)}
+                    {@/if}
+                </span>
+            </div>
+            {@else if it.colName == 'FISUNITED'|| it.colName == 'FSCORE'|| it.colName == 'FSUMSCORE'|| it.colName == 'FACTUALCOMPLETE'||it.colName == 'FCOMMENT'||it.colName == 'FUPDATEDATE'||it.colName == 'FNAME'||it.colName == 'FKEYITEM'||it.colName == 'FTARSCORE'||it.colName == 'FWEIGHT'||it.colName == 'FTARGETVALUE'||it.colName == 'FACTUALCOMPLEVALUE'}
+            {@else if it.colName == 'FREJECTION'}   <!--{# 否决项}-->
+            <div class="field-line">
+                <span class="field-name" title="${it.showName}">${it.showName}:</span><span class="field-value">
+                ${it.fieldvalue=='1' ? jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_52 : jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_12}</span>
+            </div>
+            {@else if it.colName == 'FQUALIORRATION'}   
+            <!--{# 定性/定量}-->
+            <div class="field-line">
+                <span class="field-name" title="${it.showName}">${it.showName}:</span><span class="field-value">
+                ${it.fieldvalue=="0" ? jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_11 : jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_10}</span>
+            </div>
+            {@else if it.colName == 'FISUNITED'}        
+            <!--{# 是否统一下达}-->
+            <div class="field-line">
+                <span class="field-name" title="${it.showName}">${it.showName}:</span><span class="field-value">
+                ${it.fieldvalue=="0" ? jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_12 : jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_52}</span>
+            </div>
+            {@else if it.colName == 'FSCORINGFORMULA' || it.colName == 'FINDECATORTYPE'}        
+            <!--{# 评分公式、指标类型}-->
+            <div class="field-line">
+                <span class="field-name" title="${it.showName}">${it.showName}:</span>
+                <span class="field-value">
+                    {@if it.fieldvalue}
+                    ${it.fieldvalue.name}
+                    {@/if}
+                </span>
+            </div>
+            {@else if it.colName == 'FISVISIBLE'}   
+            <!-- {# 可见性} -->
+            <div class="field-line">
+                <span class="field-name" title="${it.showName}">${it.showName}:</span>
+                <span class="field-value">${it.fieldvalue=="0" ? jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_2 : jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_14}</span>
+            </div>
+            {@else}
+            <div class="field-line">
+                <span class="field-name" title="${it.showName}">${it.showName}:</span><pre class="field-value" title="${it.fieldvalue}">${it.fieldvalue}</pre>
+            </div>
+            {@/if}
+            {@/each}
+        </div>
+    </li>
+    {@/each}
+</script>
+
+<script id="uploadAttachmentsTpl" type="text/template">
+    <div id="attachmentsDialog">
+        <span class="uploadfilebtn">
+            <span class="linkstyle">${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_47}</span>
+            <span id = "uploadAttachSize"  style="color:#666; padding-left:8px;">(${uploadAttachSize})</span>
+            <input type="file" id="uploadAttach" name="uploadAttach" multiple="multiple" title="${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_47}">
+        </span>
+        <table class="tab">
+            <thead>
+                <tr>
+                    <th width="294">${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_57}</th>
+                    <th>${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_46}</th>
+                    <th> ${$.perfwebI18n.tableConstant.msg10}</th>
+                    <th>${jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_3}</th>
+                </tr>
+            </thead>
+            <tbody id="uploadFileBox">
+            </tbody>
+        </table>
+    </div>
+</script>
+
+
+<!-- 指标任务列表 -->
+<script id="perfTaskListTsp" type="text/template">
+    {@each rows as item,index}
+    <li taskId="${item.id}">
+        <div class="rightbox">
+            <div>
+                <span class="perfTaskName">
+                      ${item.name}
+                </span>
+                <span class="decfileds">
+                    ${item.frequence}
+                (
+                   {@if item.startDate}
+                    ${item.startDate.substr(0,10).split('-').join('')}
+                    {@/if}
+                    -
+                    {@if item.endDate}
+                    ${item.endDate.substr(0,10).split('-').join('')}
+                    {@/if}
+                )
+                </span>
+                <span class="decfileds schedule">
+                   <!--进度-->
+                    ${$.perfwebI18n.perfTask.progress}
+                    <span class="wholebar">
+                        <span class="finishbar" style="width: ${item.progress}%"></span>
+                    </span>
+                   ${item.progress}%
+                </span>
+                <span class="decfileds">
+                    <!--优先级:-->
+                    ${$.perfwebI18n.perfTask.priority}:
+                    ${item.priority}
+                </span>
+                <!--<div class="state" onclick="alert(1)">反馈</div>-->
+                <!--<div class="state" onclick="alert(2)">删除</div>-->
+                <!--<div class="state" onclick="alert(3)">提交</div>-->
+            </div>
+            <div class="mtop">
+                <div class="btngroup">
+                    <button class="shrbtn" onclick="it.initPerfTaskIframe(this)" data-taskid="${item.id}" data-iframe="perfTaskCommentList">
+                        ${$.perfwebI18n.perfTask.likeAndComment}
+                    </button>
+                    <button class="shrbtn" onclick="it.initPerfTaskIframe(this)" data-taskid="${item.id}" data-iframe="perfTaskHisList">
+                        <!--操作记录-->
+                        ${$.perfwebI18n.perfTask.log}
+                    </button>
+                </div>
+            </div>
+        </div>
+    </li>
+    <iframe data-iframe="perfTaskHisList${item.id}" frameborder="0" scrolling="yes" width="100%" height="80px" data-uipk="com.kingdee.shr.perfweb.app.base.perftask.PerfTaskHIS.form" style="display: none;"></iframe>
+
+    <iframe data-iframe="perfTaskCommentList${item.id}" frameborder="0" scrolling="yes" width="100%" height="220px" data-uipk="com.kingdee.shr.perfweb.app.base.perftask.PerfTaskComment.form" style="display: none;"></iframe>
+
+    {@/each}
+
+</script>

+ 342 - 0
websrc/com/kingdee/shr/perfweb/portal/handler/PerfPersonalScoreHandlerEx.java

@@ -0,0 +1,342 @@
+package com.kingdee.shr.perfweb.portal.handler;
+
+import com.google.gson.Gson;
+import com.google.gson.reflect.TypeToken;
+import com.kingdee.bos.BOSException;
+import com.kingdee.bos.Context;
+import com.kingdee.eas.common.EASBizException;
+import com.kingdee.eas.util.app.DbUtil;
+import com.kingdee.jdbc.rowset.IRowSet;
+import com.kingdee.shr.base.syssetting.context.SHRContext;
+import com.kingdee.shr.base.syssetting.exception.SHRWebException;
+import com.kingdee.shr.base.syssetting.web.json.JSONUtils;
+import com.kingdee.shr.perfweb.app.base.evalplan.*;
+import com.kingdee.shr.perfweb.app.base.evalrule.WFNodeDefInfo;
+import com.kingdee.shr.perfweb.app.common.YesOrNoEnum;
+import com.kingdee.shr.perfweb.app.exception.SHRPerfWebBizException;
+import com.kingdee.shr.perfweb.app.resource.SHRPerfWebResource;
+import com.kingdee.shr.perfweb.app.workflow.*;
+import com.kingdee.shr.perfweb.bean.PerfScoreBatchSaveBean;
+import com.kingdee.shr.perfweb.bean.PerfScoreList;
+import com.kingdee.shr.perfweb.exception.SHRPerfWebException;
+import com.kingdee.shr.perfweb.portal.handler.PerfPersonalScoreHandler;
+import com.kingdee.shr.perfweb.util.EvaFormUtil;
+import com.kingdee.shr.perfweb.util.GetEntityInfoUtils;
+import com.kingdee.shr.perfweb.util.PerfPortalUtils;
+import com.kingdee.shr.perfweb.util.SHRPerfWebResourceUtil;
+import com.kingdee.shr.perfweb.util.ServerResponseConst;
+import com.kingdee.shr.perfweb.utils.RequestUtils;
+import org.apache.commons.lang3.StringUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.ui.ModelMap;
+import org.springframework.util.CollectionUtils;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.sql.SQLException;
+import java.util.*;
+
+
+/**
+ * 绩效评分拓展
+ * @author coyle
+ * 20241213
+ *
+ */
+public class PerfPersonalScoreHandlerEx extends PerfPersonalScoreHandler {
+    private Logger logger = LoggerFactory.getLogger(PerfPersonalScoreHandlerEx.class);
+    
+
+
+    public void saveScoreAction(HttpServletRequest request, HttpServletResponse response, ModelMap modelMap) throws SHRWebException, BOSException, EASBizException {
+        Context ctx = SHRContext.getInstance().getContext();
+        Map<String, Object> res = new HashMap();
+        String scoreObj = RequestUtils.getParameter(request, "scoreObj");
+        String isRealSave = RequestUtils.getParameter(request, "isRealSave");
+        Gson gson = new Gson();
+        List<PerfScoreList> perfScoreListAll = (List)gson.fromJson(scoreObj, (new TypeToken<List<PerfScoreList>>() {
+        }).getType());
+        if (CollectionUtils.isEmpty(perfScoreListAll)) {
+            JSONUtils.writeJson(response, res);
+        } else { 
+            PerfScoreList perfScoreList = perfScoreListAll.get(0);
+            String sumScore = perfScoreList.getSumScore();
+            String evaObj = perfScoreList.getEvaObj();
+            PerfEvaObjectInfo info = GetEntityInfoUtils.getPerfEvaObjectInfo(ctx, evaObj);
+            Set<String> nodeTask = new HashSet();
+            Map<String, String> nodeScore = new HashMap();
+            List<PerfScoreList> normalScoreList = new ArrayList();
+            List<PerfScoreBatchSaveBean> sumScoreList = new ArrayList();
+            Iterator var16 = perfScoreListAll.iterator();
+
+            while(var16.hasNext()) {
+                PerfScoreList pl = (PerfScoreList)var16.next();
+                PerfScoreBatchSaveBean bean = new PerfScoreBatchSaveBean();
+                bean.setGradeTaskNodeInstID(pl.getGradeTaskNode());
+                bean.setWholeComment(pl.getWholeComment());
+                bean.setNodeGrade(pl.getWholeGrade());
+                bean.setNodeSumScore(pl.getSumScore());
+                bean.setEvaObj(pl.getEvaObj());
+                if ("3".equals(pl.getNeedScore())) {
+                    sumScoreList.add(bean);
+                } else {
+                    normalScoreList.add(pl);
+                }
+            }
+
+            String saveStatus;
+            Map map;
+            if (sumScoreList.size() > 0) {
+                IPerfWorkFlowFacade iPerfWorkFlowFacade = PerfWorkFlowFacadeFactory.getLocalInstance(ctx);
+                map = iPerfWorkFlowFacade.saveNodeSumScoreAndGrade(sumScoreList);
+                String msg = SHRPerfWebResourceUtil.getRes(SHRPerfWebResource.SAVESUCCESS, ctx);
+                if (map.get("code").toString().equalsIgnoreCase(ServerResponseConst.SUCCESS)) {
+                    res.put("result", "200");
+                } else {
+                    res.put("result", "500");
+                    saveStatus = map.get("code").toString();
+                    if (ServerResponseConst.FAILED.equals(saveStatus)) {
+                        msg = SHRPerfWebResourceUtil.getRes(SHRPerfWebResource.ALLHASSCOREFORMULAR, ctx);
+                    } else if ("400".equals(saveStatus)) {
+                        msg = SHRPerfWebResourceUtil.getRes(SHRPerfWebResource.OVERSUMRANGE, ctx);
+                    } else if ("999".equals(saveStatus)) {
+                        msg = SHRPerfWebResourceUtil.getRes(SHRPerfWebResource.LESSTHANQUANTITYS, ctx);
+                    } else if ("LESSLOWLIMIT".equals(saveStatus)) {
+                        msg = (new SHRPerfWebBizException(SHRPerfWebBizException.SCOREOVERMIN2)).getMessage();
+                    } else if (ServerResponseConst.INVALID.equals(saveStatus)) {
+                        msg = SHRPerfWebResourceUtil.getRes(SHRPerfWebResource.CHANGEHANDLER, ctx);
+                    }
+                }
+
+                res.put("msg", msg);
+                res.put("maxCanPut", map.get("maxCanPut"));
+                res.put("gradetaskNode", sumScoreList);
+
+                res.put("nodeGrade", ((PerfScoreBatchSaveBean)sumScoreList.get(0)).getNodeGrade());
+                res.put("detail", "");
+                if ("500".equals(res.get("result"))) {
+                    JSONUtils.writeJson(response, res);
+                    return;
+                }
+            }
+
+            if (normalScoreList.size() > 0) {
+//            	PerfWorkFlowFacadeControllerBeanEx.getInstance().calculateAndSaveScore(ctx, normalScoreList, res, isRealSave, nodeTask, nodeScore);
+            }
+
+            StringBuffer msgInfo = new StringBuffer("");
+            if (info.getCanAdjustEvaluer().getValue() == 1) {
+                try {
+                    map = getAreaBaseNameByNodeTaskInst(nodeTask, evaObj);
+                    Iterator<String> it = nodeScore.keySet().iterator();
+
+                    while(it.hasNext()) {
+                        saveStatus = (String)it.next();
+                        String[] grade = ((String)nodeScore.get(saveStatus)).split("#");
+                        String areaName = (String)map.get(saveStatus);
+                        GradeTaskNodeInstInfo gtnInfo = GetEntityInfoUtils.getGradeTaskNodeInstInfoById(ctx, saveStatus);
+                        WFNodeDefInfo wfNodeInfo = GetEntityInfoUtils.getWFNodeDefInfo(ctx, gtnInfo.getWfNode().getId().toString());
+                        if (grade.length > 1) {
+                            msgInfo.append(areaName);
+                            if (!wfNodeInfo.getNeedScore().getValue().equals("0")) {
+                                msgInfo.append(SHRPerfWebResourceUtil.getRes(SHRPerfWebResource.SCOREIS, ctx)).append(":").append(grade[0]).append(",");
+                            }
+
+                            if (wfNodeInfo.getPerfGradeEvaluate().getValue().equals("1")) {
+                                msgInfo.append(SHRPerfWebResourceUtil.getRes(SHRPerfWebResource.GRADEIS, ctx)).append(":").append(grade[1]).append(",");
+                            }
+                        } else {
+                            String gradeStr = "";
+                            if (grade.length > 0) {
+                                gradeStr = grade[0];
+                            }
+
+                            msgInfo.append(areaName).append(SHRPerfWebResourceUtil.getRes(SHRPerfWebResource.SCOREIS, ctx)).append(":").append(gradeStr);
+                            if (wfNodeInfo.getPerfGradeEvaluate().getValue().equals("1")) {
+                                msgInfo.append(",").append(SHRPerfWebResourceUtil.getRes(SHRPerfWebResource.GRADEIS, ctx)).append(":");
+                            }
+                        }
+                    }
+                } catch (BOSException var25) {
+                    this.logger.error("", var25);
+                }
+            }
+            //sumScore 20241214   ((PerfScoreBatchSaveBean)sumScoreList.get(0)).getNodeSumScore() 改sumScore
+            res.put("nodeSumScore", sumScore);
+            res.put("detail", msgInfo.toString());
+            JSONUtils.writeJson(response, res);
+        }
+    }
+
+
+
+    private Map<String, String> getAreaBaseNameByNodeTaskInst(Set nodeTakSet, String evaObj) throws BOSException {
+        Context ctx = SHRContext.getInstance().getContext();
+        Map<String, String> map = new HashMap();
+        GradeTargetInstCollection coll = GetEntityInfoUtils.getGradeTargetInstCollectionByNodeInst(ctx, nodeTakSet, evaObj);
+        Set<String> exist = new HashSet();
+
+        for(int i = 0; i < coll.size(); ++i) {
+            if (map.get(coll.get(i).getGradeTaskNode().getId().toString()) != null) {
+                if (!exist.contains(coll.get(i).getAreaBase().getId().toString()) && coll.get(i).getEvaObj().getCanAdjustEvaluer().getValue() != 0) {
+                    String areaName = (String)map.get(coll.get(i).getGradeTaskNode().getId().toString());
+                    areaName = areaName + "," + coll.get(i).getAreaBase().getName();
+                    map.put(coll.get(i).getGradeTaskNode().getId().toString(), areaName);
+                    exist.add(coll.get(i).getAreaBase().getId().toString());
+                }
+            } else if (coll.get(i).getEvaObj().getCanAdjustEvaluer().getValue() == 0) {
+                map.put(coll.get(i).getGradeTaskNode().getId().toString(), "");
+            } else {
+                map.put(coll.get(i).getGradeTaskNode().getId().toString(), coll.get(i).getAreaBase().getName());
+                exist.add(coll.get(i).getAreaBase().getId().toString());
+            }
+        }
+
+        GradeTaskNodeInstCollection nodecoll = GetEntityInfoUtils.getGradeTaskNodeInstCollByEvaObj(ctx, evaObj);
+        PerfEvaObjectInfo evaInfo = GetEntityInfoUtils.getPerfEvaObjectInfo(ctx, evaObj);
+        PerfEvaObjMatrixWorkFlowInstCollection matriInfotColl = PerfEvaObjMatrixWorkFlowInstFactory.getLocalInstance(ctx).getPerfEvaObjMatrixWorkFlowInstCollection("select *, areaBase.name where evaObj ='" + evaObj + "'");
+        PerfPeriodInfo perfPeriod = evaInfo.getPeriod();
+        String perfPlanId = perfPeriod.getPerfPlan().getId().toString();
+        String perfRuleId = perfPeriod.getPerfRule().getId().toString();
+        YesOrNoEnum isHistoryUpdate = perfPeriod.getIsHistoryUpdate();
+        PerfEvaObjectMatrixWorkFlowCollection matriWorkFlow = null;
+        matriWorkFlow = PerfEvaObjectMatrixWorkFlowFactory.getLocalInstance(ctx).getPerfEvaObjectMatrixWorkFlowCollection("select *, areaBase.name where perfplan = '" + perfPlanId + "' and perfRule = '" + perfRuleId + "'");
+        if (matriWorkFlow.isEmpty() && isHistoryUpdate.getValue() == 1) {
+            matriWorkFlow = PerfEvaObjectMatrixWorkFlowFactory.getLocalInstance(ctx).getPerfEvaObjectMatrixWorkFlowCollection("select *, areaBase.name where perfplan = '" + perfPlanId + "' and perfRule is null");
+        }
+
+        Map<String, String> worfFlowAreaMap = new HashMap();
+
+        int i;
+        for(i = 0; i < matriInfotColl.size(); ++i) {
+            PerfEvaObjMatrixWorkFlowInstInfo matriInfo = matriInfotColl.get(i);
+            if (StringUtils.isEmpty((CharSequence)worfFlowAreaMap.get(matriInfo.getWorkflow().getId().toString()))) {
+                worfFlowAreaMap.put(matriInfo.getWorkflow().getId().toString(), matriInfo.getAreaBase().getName());
+            }
+        }
+
+        for(i = 0; i < matriWorkFlow.size(); ++i) {
+            PerfEvaObjectMatrixWorkFlowInfo matriWorkFlowInfo = matriWorkFlow.get(i);
+            if (StringUtils.isEmpty((CharSequence)worfFlowAreaMap.get(matriWorkFlowInfo.getWorkflow().getId().toString()))) {
+                worfFlowAreaMap.put(matriWorkFlowInfo.getWorkflow().getId().toString(), matriWorkFlowInfo.getAreaBase().getName());
+            }
+        }
+
+        for(i = 0; i < nodecoll.size(); ++i) {
+            GradeTaskNodeInstInfo info = nodecoll.get(i);
+            if (StringUtils.isEmpty((CharSequence)map.get(info.getId().toString()))) {
+                String workFlowId = info.getWfNode().getWorkflow().getId().toString();
+                map.put(info.getId().toString(), worfFlowAreaMap.get(workFlowId));
+            }
+        }
+
+        return map;
+    }
+
+
+
+    public void getDefaultScoreAction(HttpServletRequest request, HttpServletResponse response, ModelMap modelMap) throws SHRWebException {
+        Context ctx = SHRContext.getInstance().getContext();
+        Map<String, Object> res = new HashMap();
+        try {
+            String evaObjVal = RequestUtils.getParameter(request, "evaObjVal");
+            String levelName =  com.kingdee.util.StringUtils.cnulls(RequestUtils.getParameter(request, "levelName")); //
+            if (StringUtils.isBlank(levelName) || StringUtils.isBlank(evaObjVal) ) {
+                res.put("default", 0);
+                JSONUtils.writeJson(response, res);
+                return;
+            }
+
+            
+            StringBuilder sbu = new StringBuilder();
+            sbu.append(" /*dialect*/ select define.FDefaultScore deScore from T_EVA_PerfEvaObject evaobj ");
+            sbu.append(" left join T_EVA_PWorkFlowDef def on evaobj.FWorkFlowID = def.fid ");
+            sbu.append(" left join T_EVA_PerformanceRule erule on def.FPerfRule = erule.fid ");
+            sbu.append(" left join T_PER_PerfScoreLevel slevel on erule.FPerfRateID = slevel.fid ");
+            sbu.append(" left join T_PER_PerfScorLevelDefine define on define.FPerfScoreLevelID = slevel.fid ");
+            sbu.append(" where define.FPerfLevelName = ? and evaobj.fid = ?");
+            
+            IRowSet rowSet = DbUtil.executeQuery(ctx, sbu.toString(), new Object[]{levelName, evaObjVal});
+            
+            // 优化:去除小数,只保留整数的逻辑在默认值不为0时才需要
+            res.put("default", 0);
+            if (rowSet.next()) {
+            	double deScore = rowSet.getDouble("deScore");
+            	res.put("default", Math.round(deScore * 100.0) / 100.0);
+            }
+            
+            JSONUtils.writeJson(response, res);
+              
+
+        } catch (IllegalArgumentException e) {
+            logger.error("Invalid argument error", e);
+            res.put("error", e.getMessage());
+            res.put("result", "400");
+            JSONUtils.writeJson(response, res);
+        } catch (SQLException e) {
+            logger.error("SQL execution error", e);
+            res.put("error", "数据库查询执行失败");
+            res.put("result", "500");
+            JSONUtils.writeJson(response, res);
+        } catch (Exception e) { // 捕获其他可能的异常
+            logger.error("Unexpected error", e);
+            res.put("error", "发生未知错误");
+            res.put("result", "500");
+            JSONUtils.writeJson(response, res);
+        }
+    }
+
+    public void checkGradeHasAction(HttpServletRequest request, HttpServletResponse response, ModelMap modelMap) throws  SHRWebException {
+        Context ctx = SHRContext.getInstance().getContext();
+        Map<String, Object> res = new HashMap();
+        try {
+            String evaObjVal = RequestUtils.getParameter(request, "evaObjVal");
+            String scoreVal = com.kingdee.util.StringUtils.cnulls(RequestUtils.getParameter(request, "scoreVal")); //  
+            String levelName = com.kingdee.util.StringUtils.cnulls(RequestUtils.getParameter(request, "levelName")); 
+            if (StringUtils.isBlank(scoreVal) || StringUtils.isBlank(evaObjVal)) {
+                res.put("has", 0);
+            }
+
+            StringBuilder sbu = new StringBuilder();
+            sbu.append("  /*dialect*/  select  count( define.FPerfLevelName) countNum   from T_EVA_PerfEvaObject evaobj ");
+            sbu.append(" left join T_EVA_PWorkFlowDef def on evaobj.FWorkFlowID = def.fid ");
+            sbu.append(" left join T_EVA_PerformanceRule erule on def.FPerfRule = erule.fid ");
+            sbu.append(" left join T_PER_PerfScoreLevel slevel on erule.FPerfRateID = slevel.fid ");
+            sbu.append(" left join T_PER_PerfScorLevelDefine define on define.FPerfScoreLevelID = slevel.fid ");
+            sbu.append(" where define.FScoreLowLimit <= ? and   define.FScoreUpLimit >= ? and evaobj.fid = ? ");
+            sbu.append(" and define.FPerfLevelName = ?  ");
+            
+            IRowSet rowSet = DbUtil.executeQuery(ctx, sbu.toString(), new Object[]{scoreVal,scoreVal, evaObjVal,levelName});
+            //如果rowSet存在两条则返回1,否则返回0
+            while (rowSet.next())    {
+            	int countNum = rowSet.getInt("countNum");
+            	if (countNum >= 1) {
+            		res.put("has", 1);
+            	} else {
+            		res.put("has", 0);
+            	}
+            }
+            JSONUtils.writeJson(response, res);
+      
+             
+
+        } catch (IllegalArgumentException e) {
+            logger.error("Invalid argument error", e);
+            res.put("error", e.getMessage());
+            res.put("result", "400");
+            JSONUtils.writeJson(response, res);
+        } catch (SQLException e) {
+            logger.error("SQL execution error", e);
+            res.put("error", "数据库查询执行失败");
+            res.put("result", "500");
+            JSONUtils.writeJson(response, res);
+        } catch (Exception e) { // 捕获其他可能的异常
+            logger.error("Unexpected error", e);
+            res.put("error", "发生未知错误");
+            res.put("result", "500");
+            JSONUtils.writeJson(response, res);
+        }
+    }
+
+}

+ 51 - 0
websrc/com/kingdee/shr/perfweb/portal/handler/PerfgoalsfillHandlerEx.java

@@ -0,0 +1,51 @@
+package com.kingdee.shr.perfweb.portal.handler;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+ 
+import org.springframework.ui.ModelMap;
+
+import com.kingdee.bos.Context;
+import com.kingdee.bos.workflow.exception.biz.WfBizException;
+import com.kingdee.eas.common.EASBizException;
+import com.kingdee.shr.base.syssetting.context.SHRContext;
+import com.kingdee.shr.base.syssetting.exception.SHRWebException;
+import com.kingdee.shr.perfweb.app.exception.SHRPerfWebBizException;
+import com.kingdee.shr.perfweb.portal.handler.PerfgoalsfillHandler;
+import com.kingdee.shr.perfweb.utils.IndicatorUtils;
+import com.kingdee.shr.perfweb.utils.IndicatorUtilsEx;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import com.kingdee.shr.base.syssetting.web.json.JSONUtils;
+
+/**
+ * 绩效填报拓展
+ * @author coyle
+ * 20250108
+ */
+public class PerfgoalsfillHandlerEx extends PerfgoalsfillHandler{
+	private static Logger logger = LoggerFactory .getLogger(PerfgoalsfillHandlerEx.class);
+	
+	public void getIndicatorListAction(HttpServletRequest request, HttpServletResponse response, ModelMap modelMap)
+			throws SHRWebException, EASBizException {
+		Context ctx = SHRContext.getInstance().getContext();
+		Map resultMap = new HashMap();
+		try {
+			String hrOrgUnit = request.getParameter("hrOrgUnit");
+			request.setAttribute("hrOrgUnit", hrOrgUnit);
+			String userAdminSQL = this.getCurrentRequestAdminOrgRangeSQL(request);
+			request.setAttribute("userAdminSQL", userAdminSQL);
+			resultMap = IndicatorUtilsEx.getIndicatorList(ctx, request);
+		} catch (WfBizException var8) {
+			logger.error("", var8);
+			throw new SHRWebException(new SHRPerfWebBizException(SHRPerfWebBizException.GEINDECATORLIBERR));
+		}
+		JSONUtils.writeJson(response, resultMap);
+	}
+
+}

+ 155 - 0
websrc/com/kingdee/shr/perfweb/utils/IndicatorUtilsEx.java

@@ -0,0 +1,155 @@
+package com.kingdee.shr.perfweb.utils;
+
+import com.google.gson.Gson;
+import com.kingdee.bos.BOSException;
+import com.kingdee.bos.Context;
+import com.kingdee.bos.workflow.exception.biz.WfBizException;
+import com.kingdee.eas.common.EASBizException;
+import com.kingdee.eas.framework.bireport.bimanager.ws.paramCtx.util.Strings;
+import java.util.Iterator;
+import com.kingdee.shr.perfweb.app.resource.SHRPerfWebResource;
+import com.kingdee.shr.perfweb.base.bean.JqGridBean;
+import com.kingdee.shr.perfweb.util.SHRPerfWebResourceUtil;
+import java.sql.SQLException;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Set;
+import javax.servlet.http.HttpServletRequest;
+import org.apache.commons.lang3.StringUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+
+
+
+
+
+/**
+ * 二开拓展,根据名称过滤指标
+ * @author coyle
+ * 202501
+ */
+public class IndicatorUtilsEx extends IndicatorUtils {
+	private static Logger logger = LoggerFactory.getLogger(IndicatorUtilsEx.class);
+	  
+	 
+	public static Map<String, Object> getIndicatorList(Context ctx, HttpServletRequest request) throws EASBizException, WfBizException {
+	    Map<String, Object> resultMap = new HashMap<>();
+	    Gson gson = new Gson();
+	    try {
+	      String mlFlag = SHRPerfWebResourceUtil.getMlFlag(ctx);
+	      StringBuffer getListSQLBuffer = new StringBuffer();
+	      getListSQLBuffer.append("SELECT baseInfo.FID, baseInfo.FNumber, baseInfo.FName" + mlFlag + " AS FName,baseInfo.FIndecatorDesc" + mlFlag + " AS FIndecatorDesc, baseInfo.FEvalStandard" + mlFlag + " AS FEvalStandard,");
+	      for (String field : multiTBFields4Indicator)
+	        getListSQLBuffer.append("baseInfo." + field + " AS " + field + ","); 
+	      getListSQLBuffer.append("baseInfo.FUseStates, baseInfo.FRefStates,");
+	      getListSQLBuffer.append("baseInfo.FIndecatorTypeID, baseInfo.FEFFDT, ");
+	      getListSQLBuffer.append("baseInfo.FQualiOrRation,baseInfo.FUnit,baseInfo.FScoringFormulaID,baseInfo.FRejection ");
+	      getListSQLBuffer.append(" FROM T_PEF_PerfIndecator baseInfo");
+	      getListSQLBuffer.append(" LEFT JOIN T_PEF_PerfIndecatorRelation indecatorRelation");
+	      getListSQLBuffer.append(" ON baseInfo.FID =  indecatorRelation.FBaseInfoId");
+	      getListSQLBuffer.append(" WHERE 1=1 ");
+	      getListSQLBuffer.append(" AND baseInfo.FState=1 ");
+	      getListSQLBuffer.append(" AND indecatorRelation.FState=100 ");
+	      //二开拓展
+	      if (null != request.getParameter("areaNameStr") && !"".equals(request.getParameter("areaNameStr"))) {
+	    	  String areaNameStr = request.getParameter("areaNameStr").toString();
+	    	  //第二部分:如何达成-Business leadership(至少选择一项)----只显示引用指标
+	    	  if(areaNameStr.contains("Business leadership")) {
+	    		  getListSQLBuffer.append(" AND baseInfo.fnumber in ('JXZB0001','JXZB0002','JXZB0003','JXZB0004') ");
+	    	  }else if(areaNameStr.contains("People leadership")) {
+	    		  getListSQLBuffer.append(" AND baseInfo.fnumber in ('JXZB0005','JXZB0006','JXZB0007' ) ");
+	    	  }else if(areaNameStr.contains("Self leadership")) {
+	    		  getListSQLBuffer.append(" AND baseInfo.fnumber in ('JXZB0008' ) ");
+	    	  }
+	    	  getListSQLBuffer.append(" AND indecatorRelation.FState=100 ");
+	    	  
+	    	  
+	      }
+	      
+	      if (request.getAttribute("userAdminSQL") != null && !"".equals(request.getAttribute("userAdminSQL"))) {
+	        Set userAdminSet = AdminRangeUtils.getRangeSet(ctx, request.getAttribute("userAdminSQL").toString());
+	        if (userAdminSet.size() > 0) {
+	          StringBuilder sbIdBuilder = new StringBuilder("(''");
+	          Iterator iterator = userAdminSet.iterator();
+	          while (iterator.hasNext())
+	            sbIdBuilder.append(",'").append(iterator.next().toString()).append("'"); 
+	          sbIdBuilder.append(")");
+	          getListSQLBuffer.append(" AND baseInfo.FID in" + sbIdBuilder.toString());
+	        } 
+	      } 
+	      if (request.getAttribute("hrOrgUnit") != null && !"".equals(request.getAttribute("hrOrgUnit")))
+	        getListSQLBuffer.append(" AND indecatorRelation.fhrOrgUseId in ('" + request.getAttribute("hrOrgUnit") + "')"); 
+	      String type = request.getParameter("type");
+	      if (StringUtils.isEmpty(type) && !StringUtils.isEmpty(RequestUtils.getAttribute(request, "type")))
+	        type = RequestUtils.getAttribute(request, "type"); 
+	      if (!StringUtils.isEmpty(type) && type.equals("002")) {
+	        String selectedIds = request.getParameter("selectedIds");
+	        if (StringUtils.isEmpty(selectedIds) && !StringUtils.isEmpty(RequestUtils.getAttribute(request, "selectedIds")))
+	          selectedIds = RequestUtils.getAttribute(request, "selectedIds"); 
+	        StringBuffer idBuffer = new StringBuffer("(''");
+	        if (!StringUtils.isEmpty(selectedIds)) {
+	          String[] selectIdsArr = selectedIds.split(",");
+	          for (int i = 0; i < selectIdsArr.length; i++)
+	            idBuffer.append(",'").append(selectIdsArr[i]).append("'"); 
+	        } 
+	        idBuffer.append(")");
+	        getListSQLBuffer.append(" and baseInfo.FID in ").append(idBuffer);
+	        if (!StringUtils.isEmpty(request.getParameter("recordLen"))) {
+	          int i = Integer.parseInt(request.getParameter("recordLen"));
+	          request.setAttribute("rows", Integer.valueOf(i));
+	        } 
+	      } 
+	      String filterItems = request.getParameter("filterItems");
+	      if (StringUtils.isEmpty(filterItems) && !StringUtils.isEmpty(RequestUtils.getAttribute(request, "filterItems")))
+	        filterItems = RequestUtils.getAttribute(request, "filterItems"); 
+	      JqGridBean jqGridBean = null;
+	      if (!StringUtils.isEmpty(filterItems)) {
+	        jqGridBean = (JqGridBean)gson.fromJson(filterItems, JqGridBean.class);
+	        if (!StringUtils.isEmpty(jqGridBean.getCustomeFilterItems())) {
+	          String customerFiterItems = jqGridBean.getCustomeFilterItems();
+	          Map<String, String> customerFilterItemsBean = (Map<String, String>)gson.fromJson(customerFiterItems, (new HashMap<>()).getClass());
+	          if (!StringUtils.isEmpty(customerFilterItemsBean.get("rows"))) {
+	            request.setAttribute("rows", customerFilterItemsBean.get("rows"));
+	          } else {
+	            request.setAttribute("rows", jqGridBean.getRows());
+	          } 
+	          if (!StringUtils.isEmpty(customerFilterItemsBean.get("page"))) {
+	            request.setAttribute("page", customerFilterItemsBean.get("page"));
+	          } else {
+	            request.setAttribute("page", jqGridBean.getPage());
+	          } 
+	          String indecatorType = customerFilterItemsBean.get("indecatorType");
+	          if (!StringUtils.isEmpty(indecatorType))
+	            getListSQLBuffer.append(" and baseInfo.FIndecatorTypeID='").append(indecatorType).append("'"); 
+	        } else {
+	          if (!StringUtils.isEmpty(jqGridBean.getRows()))
+	            request.setAttribute("rows", jqGridBean.getRows()); 
+	          if (!StringUtils.isEmpty(jqGridBean.getPage()))
+	            request.setAttribute("page", jqGridBean.getPage()); 
+	        } 
+	        if (!StringUtils.isEmpty(jqGridBean.getIndecatorType()) && !jqGridBean.getIndecatorType().equals("null"))
+	          getListSQLBuffer.append(" and baseInfo.FIndecatorTypeID='").append(jqGridBean.getIndecatorType()).append("'"); 
+	      } 
+	      String rows = request.getParameter("rowsNum");
+	      if (!Strings.isEmpty(rows))
+	        request.setAttribute("rows", rows); 
+	      String page = request.getParameter("pageNum");
+	      if (!Strings.isEmpty(page))
+	        request.setAttribute("page", page); 
+	      String fastFilterItems = request.getParameter("fastFilterItems");
+	      if (!StringUtils.isEmpty(fastFilterItems))
+	        getListSQLBuffer.append(" AND ")
+	          .append(fastFilterItems.replace("name", "FName" + mlFlag).replace("number", "FNumber")); 
+	      resultMap = CustomPageHelper.getPageCallbackData(ctx, request, getListSQLBuffer.toString(), "baseInfo.FNumber asc", new IndicatorUtils(), "001");
+	    } catch (BOSException e) {
+	      logger.error("BOSException", (Throwable)e);
+	      throw new WfBizException(SHRPerfWebResourceUtil.getRes(SHRPerfWebResource.GETLISTDATAERR, ctx));
+	    } catch (SQLException e) {
+	      logger.error("SQLException", e);
+	      throw new WfBizException(SHRPerfWebResourceUtil.getRes(SHRPerfWebResource.EXECUTESQLERR, ctx));
+	    } 
+	    return resultMap;
+	  }
+	
+}

+ 0 - 8207
备份/perfGoalsFillNewEx.js

@@ -1,8207 +0,0 @@
-/**
- * 绩效目标填报,定制化,二开覆盖js文件,不继承原标准js;
- * 202501
- * coyle
- */
-
-var that = '';
-var globalIndicatorData = ''; //指标数据全局变量
-var globalPersonBaseData = ''; //员工基本信息全局变量
-var isFirstInit = 0; //第一条指标初始化标志
-var addIndicatorType = '1'; //添加绩效指标的方式:1-新建绩效指标;2-引用绩效指标库
-
-var CREATE_INDICATOR = 1; //1:创建指标明细
-var SWITCH_INDICATOR = 0; //0:切换指标明细
-
-var isValite=true;  //检验是否通过指标,默认通过
-
-var evaObj = ''; //评估对象id
-var periodId = ''; //考核周期id
-var personId = ''; //员工id
-var personNumber = ''; //员工编码
-var showfieldnum = 5; //员工信息区域默认显示6个字段
-
-var indicatorOptions = ''; //指标库列表表格参数
-var indicatorSelectedIds = new Array(); //指标库中已勾选指标id
-var indicatorSelectedOptions = ''; //指标库已选列表表格参数
-var existingPIallOptions = ''; //引用已有指标列表表格参数
-var currentNum = 0 ;
-
-var curIndecatorType = null; //当前指标类型
-var INDICATORLISTALL = '001';  //指标库列表全部
-var SELECTEDINDICATORLIST = '002'; //指标库已选列表
-var GETPERIODLIST = '003'; //周期列表
-var EVAFORMAREA = "200"; //评估表单
-var RECORDAREA = "300"; //记录表
-
-var indicatorIdSelected = new Array(); //已选指标id
-var recordIdSelected = new Array(); //已选记录表id
-
-var recordListObj = new Object();  //记录表对象
-var indicatorListObj = new Object(); //指标对象
-var recordFieldArr = new Array(); //记录表字段数组
-var indicatorFieldArr = new Array(); //指标字段数组
-var toDeleteIndicatorIds = new Array(); //待删除的指标(记录表)id
-var targetParam = []; //批量保存指标数据
-
-//判断是否加载左侧人员选择列表,0不加载,1加载;
-// 0个人目标填报,1团队目标填报,2我的绩效-我的目标查看,3绩效已办-我已下达的目标查看,4团队绩效-团队目标查看,5考核计划执行-未发送-查看评估表,6我的绩效-我的目标-指标变更后的页面,7绩效已办-我已填报的目标详情 ,8目标确认与打回
-var pageType = 0;
-var _noPassVerifyArr = new Array(); //数据校验信息数组
-var _gcanSaveFlag = true; //是否可保存
-var _indicatorTypeNoPassVerifyArr = new Array(); //指标类型未通过校验信息数组
-var defaultRows = 20; //表格默认显示记录数
-var indicatorTypeDefaultRows = 10;
-var targetCanEdit = 0;//统一下达后指标是否可以修改
-
-var hrOrgUnit = null; //考核规则所属业务组织
-
-var backReasonList = {
-    list : []
-}; //打回原因
-
-var planFilter = ''; //周期的过滤条件
-var lastsel = '';	//修改权重时,单击下一行时记录上一行的行id
-
-var isInitBottomBtn = false; //是否初始化底部按钮
-var updateIndicatorNameObj = {}; //被修改的指标名称集合
-var indicatorUpdateObj = {}; //指标修改详情集合
-var indicatorOriginObj = {}; //原指标初始值
-var newIndicatorNameObj = {}; //新增的指标名称集合
-var scoringWay=0;
-var maxScore = 100;
-var evaAreaListGlobal = [];   // 组装后的全局数据
-var isShrBill = '';  // 如果是true的话,则是审批页面跳转的
-var isOrg = '0'; //组织考核-yien
-var isViewFlow = '0'; //是否流程监控
-var useMyOwnTargetVal = '1'; //仅查询我的指标
-var hideDecompose = '0'; //是否隐藏指标分解、进度更新按钮
-var pre_crumbName = ''; //面包屑前缀
-
-var isRequiredMap = {}; //补丁10 是否必填-yien
-var handleName; //当前登陆人姓名
-var showAttachsOnly = false; // 是否仅显示上传附件但不允许上传
-var uploadAttachSize=10;//附件上传大小
-
-//补丁11 指标实例多语言改造-yien
-var isUseMultiLan = false;
-var defaultLan = 'l2';
-var multiFields = ["FNAME","FINDECATORDESC","FEVALSTANDARD","FKEYITEM","FMEASURESTANDARD","FMILESTONE","FKEYITEM","FMEASURESTANDARD","FMILESTONE"];
-
-//补丁11 目标对齐-评估对象所属组织
-var refOrgUnit = {};
-//引用的区域id
-var refAreaId = '';
-var permItemId = 'fffffff0-ffff-efff-be21-000004038eb7PERMITEM';
-var planName = '';
-
-//yien 表单越权
-var originWfUipk = '';
-var billId = '';
-var isFromWFBill = false;
-
-var viewType = 'list'; // overview:概览,list:列表
-var currPromptInp = ''; // 列表模式,记录当前编辑的f7
-var lastTable = '';     // 列表模式,切换表格编辑时,记录上一个编辑的表格
-var btnPerm = {}; //按钮权限
-var canEditTab = true;
-var operatestate = shr.getUrlRequestParam('operatestate'); // 获取审批中单据编辑状态
-shr.defineClass("shr.perfweb.perfGoalsFillNewEx", shr.framework.Edit, {
-    targetTransmitBill : {'billId':'-1','state':0}, //0表示指定人下达,1表示审批流程下达,2表示已有工作流
-    targetReviseBill : {'billId':'','state':0}, //0表示指定人下达,1表示审批流程下达,2表示已有工作流
-    initalizeDOM : function() {
-        // 初始化JS环境
-        it = this;
-        that = this;
-
-        //补丁11 指标实例多语言字段改造-yien
-        isUseMultiLan = window.languageMappingList.length > 1;
-        defaultLan = getDefaultLang();
-
-        shr.perfweb.perfGoalsFillNewEx.superClass.initalizeDOM.call(this);
-        pre_crumbName = $.perfwebI18n.simpleElement.crumbName_my;
-        // 获取参数控制的展示列表模式还是概览模式
-        viewType = this.initData.defaultFillPage || 'list';
-        //获取参数
-        this.initUrlParams();
-
-        this.initSwitchBtn();
-
-        //这里获取的考核周期是不准确的,由于填报增加了全部 yien
-        //直接根据评估对象id,获取考核周期id
-        that.remoteCall({
-//            handler:"com.kingdee.shr.perfweb.portal.handler.PerfgoalsfillHandler",
-            method:"getPeriodIdByEvaObject",
-            param:{evaObj: evaObj},
-            async: false,
-            success:function(data){
-                periodId = data;
-            }
-        });
-
-
-        //获取个人目标状态,已下达未确认的状态数据,不允许目标变更,此时屏蔽按钮
-        that.remoteCall({
-            method : "getEvaObjTargetStatus",
-            param : {
-                evaObj : evaObj
-            },
-            async : false,
-            type:"post",
-            success : function(data) {
-                   if(data.targetMakeSure==1){
-                       $("#revise").remove();
-                       $("#viewHistory").remove();
-                   }
-            }
-        });
-
-        //获取按钮权限
-        that.remoteCall({
-            method : "getBtnPerm",
-            param : {
-                isOrg : isOrg
-            },
-            async : false,
-            type:"post",
-            success : function(data) {
-                btnPerm = data;
-            }
-        });
-
-        showAttachsOnly = false;
-        //组织考核-yien
-        if(isOrg == '1') {
-            useMyOwnTargetVal = '0';
-            //隐藏指标导入的指标
-            //$('#importIndicator').hide();
-            pre_crumbName = $.perfwebI18n.simpleElement.crumbName_org;
-        }
-
-        //先隐藏按钮,目标填报和目标打回
-        $('#confirm').hide();
-        $('#reback').hide();
-
-        $('#content').load('/shr/addon/perfweb/web/js/shr/perfweb/portal/htmlTemplate/perfgoalsfill.html',function(response,status,xhr) {
-            that.initFormCfg();
-            if(pageType == 6){
-                //$('#breadcrumb').parent().hide();
-                $('#viewBackReason,.updbtn').hide();
-
-                $('#workFlowDiagram').hide();
-                $('#auditResult').hide();
-                showAttachsOnly = true;
-                that.initIndicatorSortable();
-            }
-        });
-
-        it.bindEvent();
-        it.initIsRequiredMap(); //补丁10 是否必填-yien
-
-        //我的目标填报增附件上传功能
-        it.uploadFileDialog();
-        it.uploadFile();//上传附件
-        it.delFile();//删除附件
-        handleName = $('#ps-profile-set').find('span').text();
-        planName = this.initData.planName;
-    },
-    // 列表、概览模式切换
-    initSwitchBtn: function(){
-        canEditTab = pageType != 5 &&  pageType != 10 && pageType != 7 && pageType != 2 && pageType != 8 &&  pageType != 4 && pageType != 3  && operatestate != 'VIEW' ? true : false;
-       // var dom = '<div class="switchbutton"><button id="switchList" viewtype="list" class="currentswitch">'+'列表'+'</button><button id="switchOverview" viewtype="overview">'+ '概览'+'</button></div>';
-        var dom = '<div class="switchbutton"><button id="switchList" viewtype="list" class="currentswitch">'+jsBizMultLan.perfweb_perfgoalsfill_20221219ht_03+'</button><button id="switchOverview" viewtype="overview">'+ jsBizMultLan.perfweb_perfgoalsfill_20221219ht_04+'</button></div>';
-        $('.shr-toolbar').append(dom);
-        if(viewType == 'overview'){
-            $("#switchList").removeClass('currentswitch');
-            $("#switchOverview").addClass('currentswitch');
-            $('#batchSaveTarget,#deleteIndicatorOrRecord').hide();
-        }else{
-            $("#switchOverview").removeClass('currentswitch');
-            $("#switchList").addClass('currentswitch');
-            $('#addIndicator,#referenceIndicator').hide();
-        }
-        //202501 隐藏按钮
-        $("#switchOverview").hide(); // 隐藏概览按钮
-        $("#switchList").hide(); // 隐藏按钮
-        $('.switchbutton button').die('click').live('click',function(){
-            if(!$(this).hasClass('currentswitch')){
-                $('.currentswitch').removeClass('currentswitch');
-                $(this).addClass('currentswitch');
-                viewType = $(this).attr('viewtype');
-                $.block.show();
-                that.selfRemoteCall({
-                    method : "compositeEvaObjectData",
-                    param : {
-                        evaObj : evaObj,
-                        billId : billId
-                    },
-                    async : true,
-                    success : function(data) {
-                        $.block.hide();
-                        if(viewType == 'list'){
-                            if(canEditTab){
-                                $('#batchSaveTarget,#deleteIndicatorOrRecord').show();
-                            }
-                            $('#addIndicator,#referenceIndicator').hide();
-                        }else{
-                            $('#batchSaveTarget,#deleteIndicatorOrRecord').hide();
-                            if(canEditTab){
-                                $('#addIndicator,#referenceIndicator').show();
-                            }
-                        }
-                        if(data != null){
-                            globalIndicatorData = data;
-                            that.initGoalsItems(globalIndicatorData);
-                            _noPassVerifyArr = [];
-                        }
-                    }
-                });
-            }
-        })
-        
-        if(!canEditTab){    // 若不可编辑,隐藏保存、删除按钮
-            $('#batchSaveTarget,#deleteIndicatorOrRecord').hide();
-        }
-        
-    },
-    // 列表模式保存
-    // action: submit 指标变更页面,列表模式提交前先保存
-    batchSaveTargetAction: function(action){
-        $('.tabwrap').each(function(index,tab){
-            $('#tab'+index).jqGrid('editStop');
-        })
-        // if(_noPassVerifyArr.length > 0){
-        //     shr.showWarning({
-        //         message: _noPassVerifyArr[0].showName+':'+_noPassVerifyArr[0].errortext,
-        //         hideAfter: 5
-        //     });
-        //     return false;
-        // }
-        this.saveTargetClick(action);
-    },
-    // 列表模式删除指标
-    deleteIndicatorOrRecordAction: function(){
-        var tabs = $('.indictab').not('[id*="_frozen"]'), ids = [], delIndiMsg = [];
-        $.each(tabs, function(i,tab){
-            var delWeight = 0, delData = [], notDelArr = [], delInNameArr = [];
-            var selectedData = $(tab).jqGrid('getSelectedRowsData');
-            var areaName = $(tab).jqGrid('getGridParam','areaName');
-            $.each(selectedData, function(j, data){
-                if(data.FISUNITED == '0'){  // (data.FISUNITED == '1' && targetCanEdit==1 ) || 
-                    ids.push(data.id);
-                    delWeight += Number(data.FWEIGHT) || Number(data.FTARSCORE);
-                    delData.push(data);
-                    delInNameArr.push($(data.FNAME).text() || data.FKEYITEM);
-                }else{
-                    var fname = $(data.FNAME).text() || data.FKEYITEM;
-                    notDelArr.push(fname);
-                }
-            })
-            if(delInNameArr.length > 0 || notDelArr.length > 0){
-                delIndiMsg.push({
-                    tabId: $(tab).attr('id'),
-                    areaName: areaName,
-                    delWeight: delWeight,
-                    delData: delData,
-                    notDelArr: notDelArr,
-                    delInNameArr: delInNameArr
-                })
-            }
-        })
-        console.log(delIndiMsg)
-        if(ids.length == 0){
-            shr.showWarning({
-                //message: '请选择至少1条非统一下达指标进行操作',
-                message: jsBizMultLan.perfweb_perfgoalsfillnew_20220111_01,
-                hideAfter: 5
-            })
-        }else{
-            this.delgoal('','',ids,delIndiMsg)
-        }
-    },
-    initUrlParams: function() {
-        evaObj = shr.getUrlRequestParam("evaObj");
-        // periodId = shr.getUrlRequestParam("periodId");
-        personId = shr.getUrlRequestParam("personId");
-        personNumber = shr.getUrlRequestParam("personNumber");
-        pageType = shr.getUrlRequestParam("type");
-        isShrBill = shr.getUrlRequestParam("isShrBill");
-        subPageType = shr.getUrlRequestParam("subtype");
-        //组织考核-yien
-        isOrg = shr.getUrlRequestParam("isOrg");
-        isViewFlow = shr.getUrlRequestParam("isViewFlow");
-        hideDecompose = shr.getUrlRequestParam("hideDecompose");
-    },
-
-    initIndicatorSortable: function(){
-        that = this;
-        $( ".indicatorwrap" ).sortable({
-            axis: "y",
-            cursor: "move",
-            delay: 150,
-            placeholder: "ui-state-highlight",
-            start: function( event, ui ){
-                var $this = $(ui.item[0]);
-            },
-            receive: function(e, ui) {
-                // ui.item.before(ui.item.data('items'));
-            },
-            stop: function( event, ui ) {
-                var thisItem = $(ui.item[0]);   
-                var size = $(thisItem.parent().find('li')).size();
-                var areaType = thisItem.closest('.areawrap').attr('areatype')
-                var data = [];
-                for(var i = 0; i < size; i++){
-                     var id = $($(thisItem.parent().find('li'))[i]).attr('indid')
-                     data.push({
-                        id: id,
-                        type: areaType,
-                        index: i.toString(),
-                    })
-                }   
-                that.setOrder(data);
-            }
-        }).disableSelection();
-    },
-
-    //补丁10-是否必填-yien
-    initIsRequiredMap: function() {
-        //获取表单字段是否必填信息
-        that.remoteCall({
-//            handler:"com.kingdee.shr.perfweb.evaluplan.handler.PerfEvaObjectGoalListHandler",
-            method:"getIsRequiredOfConfField",
-            param:{periodId: periodId},
-            // async: false,   //补丁11 绩效工作台性能优化 改成异步执行 yien
-            success:function(data){
-                isRequiredMap = data['isRequiredMap'];
-            }
-        });
-    },
-    /**
-     * 查看流程图
-     */
-    // workFlowDiagramAction: function() {
-    //     var billId = that.targetTransmitBill['billId'];
-    //     if(billId == '') {
-    //         //没有选择记录
-    //         return;
-    //     }
-    //     if(billId) {
-    //         that.getWorkFlowHelper().viewWorkFlowDiagram(billId);
-    //     }else {
-    //         //BT1393159 提示信息,目标填报已经提交,但是工作流发起报错,这里还不知道怎么处理好
-    //         shr.showError({message: $.perfwebI18n.commonMsg.msg1});
-    //     }
-    // },
-
-    /**
-     * 查看审批结果
-     */
-    // auditResultAction: function() {
-    //     var billId = that.targetTransmitBill['billId'];
-    //     if(billId == '') {
-    //         //没有选择记录
-    //         return;
-    //     }
-    //     if(billId) {
-    //         that.getWorkFlowHelper().viewAuditResult(billId);
-    //     }else {
-    //         //BT1393159 提示信息,目标填报已经提交,但是工作流发起报错,这里还不知道怎么处理好
-    //         shr.showError({message: $.perfwebI18n.commonMsg.msg1});
-    //     }
-    // },
-    initFormCfg: function() {
-        $('#content').append(basicDom());	//添加目标下达弹出框
-
-        //BT1464569 我的目标 页面,出现了设置评分人按钮,这里一直是没有的,只有矩阵式考核在目标填报页面才有
-        //跟妙琪确认只有 个人目标填报页面、团队下达页面需要矩阵考核需要显示
-        $("#setTargetWorkflow").hide();
-
-        //隐藏 流程图、审批意见 按钮
-        // $('#workFlowDiagram').hide();
-        // $('#auditResult').hide();
-        //附件上传大小
-        if (isNumber(that.initData.uploadAttachSize)){
-            uploadAttachSize= this.initData.uploadAttachSize;//附件上传大小
-        }
-        //目标流程审批-导航栏进行调整
-        var breadcrumb = $('#breadcrumb').shrBreadcrumb();
-        var crumb = breadcrumb.shrBreadcrumb('pop');
-
-        //表单越权
-        that.initSetTargetWorkflowBtn();
-        
-        if( pageType == '1' && isOrg == 0 ){
-            it.initSelectionList();
-            crumb.name = jsBizMultLan.perfweb_perfgoalsfillHtmlNew_zw1628651214_i18n_04;
-        }
-        else if(pageType == '1'){
-            it.initSelectionList();							//加载人员列表清单
-            // crumb.name = jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_82;
-            // crumb.name = pre_crumbName+'团队目标填报';
-            crumb.name = pre_crumbName + $.perfwebI18n.simpleElement.crumbName_team_goals;
-        }else if(pageType == '7'){//我已填报的目标详情
-            // crumb.name = jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_81;
-            // crumb.name = pre_crumbName+'目标';
-            crumb.name = pre_crumbName + $.perfwebI18n.simpleElement.crumbName_target;
-            that.initContent(evaObj,periodId,personId,personNumber);
-        }else if(pageType =='8'){
-            crumb.name = pre_crumbName + $.perfwebI18n.simpleElement.crumbName_target;
-            that.initContent(evaObj,periodId,personId,personNumber);
-        }else if(pageType == '3' || pageType == '4'){//我已下达的目标详情、团队目标
-            // crumb.name = jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_81;
-            // crumb.name = pre_crumbName+'目标';
-            crumb.name = pre_crumbName + $.perfwebI18n.simpleElement.crumbName_target;
-            that.initContent(evaObj,periodId,personId,personNumber);
-        }
-        else if( pageType == '0' && isOrg == 0){
-            crumb.name = jsBizMultLan.perfweb_perfgoalsfillHtmlNew_zw1628651214_i18n_03;
-            that.initContent(evaObj,periodId,personId,personNumber);
-        }
-        else{
-            // crumb.name = jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_81;
-            // crumb.name = pre_crumbName+'目标';
-            crumb.name = pre_crumbName + $.perfwebI18n.simpleElement.crumbName_target;
-            that.initContent(evaObj, periodId, personId, personNumber);
-        }
-
-        //yien 表单越权 处理没有面包屑报错的情况
-        try {
-            breadcrumb.shrBreadcrumb('addItem',crumb);
-        } catch (e) {
-            console.error("[perfweb]add Item for breadcrumb failed!", e);
-        }
-
-
-        //目标确认 确认
-        if (!that.initData.KHMBQRCONFIRM) {
-            $('#confirm').remove();
-        }
-        //目标确认 打回
-        if (!that.initData.KHMBQRREBACK) {
-            $('#reback').remove();
-        }
-        //添加指标权限项
-        if (!that.initData.addTarget) {
-            $('#addIndicator').remove();
-        }
-        //引用指标权限项
-        if (!that.initData.refTarget) {
-            $('#referenceIndicator').remove();
-        }
-        //导入指标权限项
-        if (!that.initData.importIndicator) {
-            $('#importIndicator').remove();
-        }
-        //两个都没有,隐藏上面的添加指标按钮
-        if (!$('.dropdown-menu').find('li').length>0){
-            $('.dropdown-toggle').remove();
-        }
-        //隐藏 添加绩效指标 按钮(由于原按钮是js按钮,未受权限项控制,特增加一个受权限项控制的隐藏按钮,间接控制原js按钮的隐藏和显示) wei_baiii
-        /*$("#addScoreMenu_hidden").hide();
-        if (!$("#addScoreMenu_hidden").length > 0){
-            $("#addScoreMenu").hide();
-        }*/
-        //隐藏 设置评分人 按钮(由于原按钮是js按钮,未受权限项控制,特增加一个受权限项控制的隐藏按钮,间接控制原js按钮的隐藏和显示) wei_baiii
-        if (!that.initData.setTargetWorkflow) {
-            $("#setTargetWorkflow").remove();
-        }
-
-        if(isOrg == '0'){
-        	if(!that.initData.targetRevise){
-        		$("#revise").remove();
-        	}
-        	if(!that.initData.targetHis){
-        		$("#viewHistory").remove();
-        	}
-        }else{
-        	if(!that.initData.orgTargetRevise){
-        		$("#revise").remove();
-        	}
-        	if(!that.initData.orgTargetHis){
-        		$("#viewHistory").remove();
-        	}
-        }
-
-        $("#referencePI_hidden").hide();
-
-        //隐藏相应按钮
-        if(pageType == '1') {
-            //隐藏“查看打回原因”按钮
-//            $("#viewBackReason").hide();
-            //隐藏提交按钮
-            $("#submit").hide();
-            //显示“垃圾桶”
-            $('.goalTarget').show();
-            showAttachsOnly= true;
-        }else if(pageType == '2') {
-            //获取目标流程审批数据
-            // that.targetTransmitBill = that.getTargetTransmitBill(evaObj);
-            //面包屑
-            var evaObjName=$(".person-name").text();
-            var breadcrumb = $('#breadcrumb').shrBreadcrumb();
-            breadcrumb.shrBreadcrumb('pop');
-            var uipk_list = 'com.kingdee.shr.perfweb.app.perfportal.core';
-            var url_list = 'dynamic.do?uipk=com.kingdee.shr.perfweb.app.perfportal.core&button=myGoalsBtn&inFrame=true&fromHeader=true&serviceId=' + shr.getUrlRequestParam("serviceId",window.parent.location.href);
-            if(isOrg == 1){
-                 // $('#revise').hide();
-                 // $('#viewHistory').hide();
-            	url_list = 'dynamic.do?uipk=com.kingdee.shr.perfweb.app.perfportal.core&button=orgGoalContentBtn&inFrame=true&fromHeader=true&isOrg=1&serviceId=' + shr.getUrlRequestParam("serviceId",window.parent.location.href);
-            }
-
-            breadcrumb.shrBreadcrumb('addItem', {
-                name: pre_crumbName + $.perfwebI18n.simpleElement.crumbName_target,
-                uipk: uipk_list,
-                url: url_list
-            });
-            var uipk = 'com.kingdee.shr.perfweb.app.perfgoalsfillNew.core&inFrame';
-            //BT-00538905 【8611补丁测试PT161638】绩效管理--绩效工作台--我的目标,进入指标分解界面 ,再从面包屑点击我的目标返回去,目标变更按钮不显示了
-            var url = 'dynamic.do?uipk=com.kingdee.shr.perfweb.app.perfgoalsfillNew.core&inFrame=true&isOrg='+isOrg+'&evaObj='
-                + encodeURIComponent(evaObj)+ '&periodId=' + encodeURIComponent(periodId) + '&personId=' + encodeURIComponent(personId) + '&personNumber=' + personNumber + '&type=2'+'&shruicode=AF_PERF_T0003';
-            breadcrumb.shrBreadcrumb('addItem', {
-                name: pre_crumbName + $.perfwebI18n.simpleElement.crumbName_target+"(" + evaObjName + ")",
-                uipk: uipk,
-                url: url
-            });
-
-            that.initViewMyTargetFormCfg();
-            showAttachsOnly= true;
-        } else if(pageType == '7'){//我已填报的目标详情
-            //个人目标填报
-            $('#breadcrumb').parent().hide();
-            $('#transmit, #addwrap, #back, #addScoreMenu, #saveTarget, #submit , #setTargetWorkflow').hide();
-            //判断是否有打回记录
-            if (evaObj) {
-                //补丁11 绩效工作台性能优化 yien
-                that.initBackReasonBtn();
-                // backReasonList.list = that.getBackReasonData(evaObj);
-                // if (!backReasonList.list || backReasonList.list.length < 1) {
-                //     //没有打回记录,隐藏“查看打回原因”按钮
-                //     $("#viewBackReason").hide();
-                // }
-                //目标流程审批
-                // that.targetTransmitBill = that.getTargetTransmitBill(evaObj);
-            }
-            showAttachsOnly= true;
-        }else if(pageType == '8'){
-            //个人目标确认
-            $('#breadcrumb').parent().hide();
-            $('#transmit, #addwrap, #back, #addScoreMenu, #saveTarget, #submit , #setTargetWorkflow, #importIndicator').hide();
-            //目标填报和目标打回
-            $('#confirm').show();
-            $('#reback').show();
-            // 编辑删除指标按钮不显示
-            // $('.editbtn, .delbtn').hide();
-            // $('.updbtn').hide();
-            // $('.decbtn').hide();
-            showAttachsOnly= true;
-        }else if(pageType == '4' || pageType == '3') {
-            //个人目标已下达
-            $('#breadcrumb').parent().hide();
-            // $('.view_manager_header').hide();   // 所有按钮都不显示
-            $('#breadcrumb,.shr-toolbar > *').hide();
-            $('.switchbutton').show();
-            // $('.editbtn, .delbtn').hide();      // 编辑删除指标按钮不显示
-            showAttachsOnly= true;
-        }else if( pageType == '10' || pageType == '5'){
-            if(isViewFlow == '1') {
-                //BT1470785 未下达--目标审批下达--查看流程跟踪,里面流程图和审批意见按钮没了
-                $('#workFlowDiagram').show();
-                $('#auditResult').show();
-
-                $('#addwrap').hide();
-                $('#addIndicator').hide();
-                $('#referenceIndicator').hide();
-                $('#importIndicator').hide();
-                $('#back').hide();
-                $('#transmit').hide();
-                $('#setTargetWorkflow').hide();
-                $('#submit').hide();
-                $('#viewBackReason').hide();
-                $('#revise').hide();
-                $('#viewHistory').hide();
-                $('#attachments').hide();
-                $('.attachcountbtn').hide();
-            }else {
-                showAttachsOnly= true;
-                // $('.view_manager_header').hide();
-                $('#breadcrumb,.shr-toolbar > *').hide();
-                $('.switchbutton').show();
-            }
-        }else {
-            //个人目标填报
-            $('#transmit').hide();
-            $('#back').hide();
-            $('#revise').hide();
-            $('#viewHistory').hide();
-            //判断是否有打回记录
-            if(evaObj) {
-                //补丁11 绩效工作台性能优化 yien
-                that.initBackReasonBtn();
-
-                // backReasonList.list = that.getBackReasonData(evaObj);
-                // if(!backReasonList.list || backReasonList.list.length < 1) {
-                //     //没有打回记录,隐藏“查看打回原因”按钮
-                //     $("#viewBackReason").hide();
-                // }
-                //目标流程审批
-                // that.targetTransmitBill = that.getTargetTransmitBill(evaObj);
-            }
-        }
-
-        if(pageType == '2'){
-            $('#setTargetWorkflow').hide();
-            $('#setTargetWorkflow_hidden').hide();
-        }else {
-            $('#revise').hide();
-            $('#viewHistory').hide();
-        }
-
-        if(isViewFlow != '1') {
-            $('#workFlowDiagram').hide();
-            $('#auditResult').hide();
-        }
-
-        //目标流程审批
-        //补丁11 绩效工作台性能优化-yien
-        // that.targetTransmitBill = that.getTargetTransmitBill(evaObj);
-
-        that.textAreaFieldLenListener();
-        //that.initWorkFlowList(evaObj);
-        //that.initTargetWorkflowDialog();
-        //目标流程审批-隐藏提交工作流按钮
-        $("#submitProcess").hide();
-
-        //BT1441566 团队目标是没有进度更新 和指标分解的,团队组织的也是一样,我的目标、组织目标 才有这个功能
-        // if(hideDecompose == '1') {
-        //     $('.updbtn').hide();
-        //     $('.decbtn').hide();
-        // }
-        //目标流程审批
-        //补丁11 绩效工作台性能优化-yien
-        that.targetTransmitBill = that.getTargetTransmitBill(evaObj);
-    },
-
-    //初始化打回原因的按钮显示 抽取
-    initBackReasonBtn: function() {
-        var getBackReasonDataCallBack = function(res) {
-            backReasonList.list = res;
-            if(!backReasonList.list || backReasonList.list.length < 1) {
-                //没有打回记录,隐藏“查看打回原因”按钮
-                $("#viewBackReason").hide();
-            }
-        };
-        that.getBackReasonData(evaObj, getBackReasonDataCallBack);
-    },
-
-    // 监听页面刷新,如果刷新或页面关闭时,有新建的指标编辑弹框,则点击下取消按钮,删除该条新建的指标
-    bindEvent: function(){
-        window.onunload = function() {
-            // dosomethings
-            if($('div[aria-describedby="editboxDialog"]').length>0){
-                $('div[aria-describedby="editboxDialog"]').find('.ui-dialog-buttonset button:last-child').click();
-            }
-        };
-        $('.attachcountbtn').live('click',function(){
-            // $('#attachments').click();
-            that.openFileDialog();
-        });
-    },
-
-    reviseAction : function(){
-    	var flag = false;
-        that.selfRemoteCall({
-            method : "checkCanRevise",
-            param : {
-                evaObj : evaObj
-            },
-            async : false,
-            success : function(data) {
-            	flag = data.flag;
-            }
-        });
-        if(flag){
-            that.reloadPage({
-                uipk: 'com.kingdee.shr.perfweb.app.base.targetprocess.TargetReviseBill.flow',
-                evaObj: evaObj,
-                periodId: periodId,
-                personId: personId,
-                personNumber: personNumber,
-                isOrg : isOrg,
-                isFromPageCenter : 0,
-                type: 6,    // 我的绩效-我的目标-指标变更
-                billId: ''
-            });
-        }else{
-        	  shr.showError({message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_106,hideAfter : 5});
-        } 
-    },
-
-    /**
-     * 确认
-     */
-    confirmAction : function(){
-        var flag = false;
-        that.selfRemoteCall({
-            method : "confirm",
-            param : {
-                evaObj : evaObj
-            },
-            async : false,
-            success : function(data) {
-                flag = data.flag;
-            }
-        });
-        if(flag){
-            var itemList = $('#othersPerfTodoGroup #targetMakeSureTodo', parent.document).parent();
-            if(itemList!=undefined&&itemList.length>0){
-                itemList[0].click();
-            }else {
-                that.reloadPage({
-                    uipk: 'com.kingdee.shr.perfweb.app.base.evalplan.personalmakesure'
-                });
-            }
-        }
-
-    },
-
-
-    /**
-     * 打回
-     */
-    rebackAction : function(){
-        var dom =   '<div id="backDialog">'+
-                    '<div class="dialog-text">'+jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_8+'</div>'+
-                    '<div  class="dialog-textarea"><textarea id="backReason" rows="8" placeholder="'+shr.formatMsg(jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_53,[2000])+'"></textarea></div>'+
-                    '<div class="dialog-text">'+
-                        jsBizMultLan.perfweb_perfGoalsFillNew_bw0513_02+
-                        '<span class="note-msg">'+jsBizMultLan.perfweb_perfGoalsFillNew_202305061608_i18n_0+'</span>'+
-                    '</div>'+
-                    '<div class="ways-box">'+
-                        '<span class="ways-item">'+
-                            '<input type="checkbox" id="msgReminder" value="msg" name="ways">'+
-                            '<label for="msgReminder">'+jsBizMultLan.perfweb_perfGoalsFillNew_bw0513_03+'</label>'+
-                        '</span>'+
-                        '<span class="ways-item">'+
-                            '<input id="emailReminder" type="checkbox" value="email" name="ways">'+
-                            '<label for="emailReminder">'+jsBizMultLan.perfweb_perfGoalsFillNew_bw0513_04+'</label>'+
-                        '</span>'+
-                        '<span class="ways-item">'+
-                            '<input id="SMSReminder" type="checkbox" value="sms" name="ways">'+
-                            '<label for="SMSReminder">'+jsBizMultLan.perfweb_perfGoalsFillNew_bw0513_05+'</label>'+
-                        '</span>'+
-                        '<span class="ways-item">'+
-                            '<input id="YZJReminder" type="checkbox" value="cloud" name="ways">'+
-                            '<label for="YZJReminder">'+jsBizMultLan.perfweb_perfGoalsFillNew_bw0513_06+'</label>'+
-                        '</span>'+
-                    '</div>'+
-                '</div>';
-        $(document.body).append(dom);
-        $('#msgReminder, #emailReminder, #SMSReminder, #YZJReminder').shrCheckbox();
-        $('#msgReminder, #emailReminder, #SMSReminder,#YZJReminder').shrCheckbox('onChange', function(){
-            var id = $(this).attr('id');
-            if($(this).shrCheckbox('getValue')){
-                $('label[for="'+id+'"]').addClass('checked');
-            }else{
-                $('label[for="'+id+'"]').removeClass('checked');
-            }
-        });
-        $('#msgReminder').shrCheckbox('check');
-        var dialogtop = 'center';
-        var winheight = $(window.top).height();
-        var winscrolltop = $(window.top).scrollTop();
-        if(self != top){
-            dialogtop = (winheight - ($(window).height() > 600 ? 600 : $(window).height()-20))/2 + winscrolltop - 80;
-        }
-        $("#backDialog").dialog({
-            autoOpen : true,
-            // show : "blind",
-            width : $(window).width() > 580 ? 580 : $(window).width()-20,
-            height : $(window).height() > 420 ? 420 : $(window).height()-20,
-            title : jsBizMultLan.perfweb_perfGoalsFillNew_back,
-            resizable : true,
-            position : [ 'center', dialogtop ],
-            modal : true,
-            buttons : [{
-                text:jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_0,
-                click : function() {
-                    var backReason = $("#backReason").val();
-                    var SMSType = "NOSEND";
-                    var emailType = "NOSEND";
-                    var portalType = "NOSEND";
-                    var yzjMsgType = "NOSEND";
-
-                    var meg = $('#msgReminder').shrCheckbox('isSelected');
-                    var email = $('#emailReminder').shrCheckbox('isSelected');
-                    var SMS = $('#SMSReminder').shrCheckbox('isSelected');
-                    var yzj = $('#YZJReminder').shrCheckbox('isSelected');
-                    if (SMS) {
-                        SMSType = "SEND"
-                    }
-                    if (email) {
-                        emailType = "SEND"
-                    }
-                    if (meg) {
-                        portalType = "SEND"
-                    }
-                    if (yzj) {
-                        yzjMsgType = "SEND";
-                    }
-                    var flag = false;
-                    that.selfRemoteCall({
-                        method : "reback",
-                        param : {
-                            evaObj : evaObj,
-                            backReason: backReason,
-                            sysType: SMSType,
-                            emailType: emailType,
-                            smsType: portalType,
-                            yzjType: yzjMsgType
-                        },
-                        async : false,
-                        success : function(data) {
-                            flag = data.flag;
-                        }
-                    });
-                    if(flag){
-                        var itemList = $('#othersPerfTodoGroup #targetMakeSureTodo', parent.document).parent();
-                        if(itemList!=undefined&&itemList.length>0){
-                            itemList[0].click();
-                        }else {
-                            that.reloadPage({
-                                uipk: 'com.kingdee.shr.perfweb.app.base.evalplan.personalmakesure'
-                            });
-                        }
-                    }
-                }},{
-                text:jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_64,
-                click : function() {
-                    $(this).dialog('close');
-                }
-            }],
-            close : function(){
-                $('#backDialog').remove();
-            },
-            open:function(event, ui){
-
-            }
-        });
-    },
-
-    initSetTargetWorkflowBtn: function () {
-
-        //【BT-01722844】流程下达,填报时能设置评分人,需要隐藏
-        //【BT-01722848】流程下达,打开评估表单,需要隐藏“设置评分人”
-        return false;
-        $("#setTargetWorkflow").hide();
-        that.selfRemoteCall({
-            method: "getPerfEvaObjMsg",
-            param: {
-                evaObj: evaObj
-            },
-            // async: false,    //补丁11 绩效工作台性能优化 改成异步执行
-            success: function (data) {
-                if (data.canAdjustEvaluer == 1) {
-                    if (that.initData.setTargetWorkflow && isOrg != '1') {
-                        $("#setTargetWorkflow").show();
-                    }
-                }
-
-                //yien 表单越权
-                $('.workerList').find('li[workerid="'+evaObj+'"]').find('i[name="targetStatus"]').html(data.personalGoalStatus);
-            }
-        });
-    },
-
-    initContent : function(evaObj,periodId,personId,personNumber,billId){
-        //加载员工基本信息
-        that.selfRemoteCall({
-            method : "getPersonBaseOfGoals",
-            param : {
-                evaObj : evaObj,
-                periodId : periodId,
-                personId : personId,
-                personNumber : personNumber
-            },
-            async : false, //补丁11 绩效工作台性能优化 yien
-            success : function(data) {
-                if(data != null){
-                    // 重新根据评估对象id设置考核周期
-                    //补丁11 目标对齐-yien
-                    globalPersonBaseData = data.personInfo;
-                    //BT1463102 考核目标填报--点击展开详细--基本信息显示undefined
-                    if(!$.isEmptyObject(globalPersonBaseData)) {
-                        globalPersonBaseData = JSON.parse(globalPersonBaseData);
-                    }
-
-                    //BT1463579 组织目标填报、组织目标已填报、下达页面 、组织目标页面,组织的基础信息 不显示
-                    //BT1463596 团队目标下达--引用组织指标,去掉F7默认组织,目标填报保留
-                    if(isOrg != '1' && pageType != '1') {
-                        refOrgUnit.id = data.refOrgUnit['id'];
-                        refOrgUnit.name = data.refOrgUnit['name'];
-                    }
-
-
-                    $('.workInfo').empty();
-                    $('.workInfo').append(personalInformation(globalPersonBaseData));
-                    if($('.workPhoto').length < 1){
-                        $('.informationBox,.namebox').css({'width': '100%','margin-left': '0'});
-                    }
-                    if($('.infoItems').length == 0){
-                        $('.fold_control').hide();
-                    }
-                    getAttachcount();
-                }
-            }
-        });
-
-        //加载考核规则、考核计划、考核模式
-        that.selfRemoteCall({
-            method : "compositeEvaObjectData",
-            param : {
-                evaObj : evaObj,
-                billId : billId
-            },
-            async : false,
-            success : function(data) {
-                if(data != null){
-                    globalIndicatorData = data;
-                    hrOrgUnit = data.rows.hrOrgUnit;
-                    it.setPersonInfoRema();
-                    it.initGoalsFillBox(data); //绩效目标部分
-                }
-            }
-        });
-
-        //清空待删除指标数组
-        toDeleteIndicatorIds.splice(0,toDeleteIndicatorIds.length);
-
-        //将原指标的信息进行保存 {"评估对象id":{"indicatorId":{"fieldName":"fieldVal"},...}}
-        initUpdateIndicatorLog(evaObj);
-    },
-    // 员工信息区域的区域说明显示到页面上
-    setPersonInfoRema: function(){
-        $.each(globalIndicatorData.areaBaseList,function(i,item){
-            if((item.areaType.value == '100' || item.areaType.value == '400') && item.rema){
-                var remaTpl = 
-                ['<div class="area-rema-box" area-id="${area.id}">',
-                    '<span>',jsBizMultLan.perfweb_evaluationdetailsJuicer_1586069239184_i18n_5,'</span>',
-                    '<pre area-id="${area.id}">${area.rema}</pre>',
-                    '<div class="area-rema-btn" onclick="showMoreRema(this,\'${area.id}\')">',
-                    jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_102,
-                    '</div>',
-                '</div>'].join("");
-                var remaHTML = juicer(remaTpl, {area: item});
-                $('.info-more-wrap').after(remaHTML)
-            }
-        })
-    },
-    /**
-     * 展开员工基本信息
-     * @returns
-     */
-    spreadcontrol: function (e) {
-        var informationBoxMeg = {
-            length: showfieldnum,	//默认显示几个字段
-            spreadText: jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_103,
-            packupText: jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_74
-        };
-        if($(e).hasClass('spread')){
-        	$('.informationBox').hide();
-            $(e).html(informationBoxMeg.spreadText);
-            $(e).removeClass('spread');
-        }else{
-            $('.informationBox').show();
-            $(e).html(informationBoxMeg.packupText);
-            $(e).addClass('spread');
-        }
-        it.setParentIframeHeight();
-    },
-
-    /**
-     * 填写绩效目标部分
-     * @returns
-     */
-    initGoalsFillBox : function(data){
-        //底部按钮只渲染一次
-        /*if(!isInitBottomBtn) {
-            isInitBottomBtn = true;*/
-            data.jsBizMultLan = jsBizMultLan;
-            var wrapTpl = document.getElementById('wrapTpl').innerHTML;
-            var ruleTpl = document.getElementById('ruleTpl').innerHTML;
-            var wrapHTML = juicer(wrapTpl, data);
-            var ruleHtml = juicer(ruleTpl, data);
-            $('info-wrap').find('.titles').remove();
-            $('.contentbox').find('.evaluation').remove();
-            // $('.scoreBtns').remove(); //底部按钮
-            $('.info-wrap').append(ruleHtml);
-            $(wrapHTML).appendTo($('.contentbox'));
-            processGoalsGiver($('span[name="goalsGiver"]'));
-        /*}*/
-
-        var evaluationdetails = null;
-        it.initGoalsItems(data);						//加载左边菜单
-        if(scoringWay == 1){
-            evaluationdetails = juicer(evaluationdetailsOfTargetScoreTpl(),data);
-        }else{
-            evaluationdetails = juicer(evaluationdetailsTpl(),data);
-        }
-        $(evaluationdetails).appendTo($('.instructions'));
-        //12月补丁功能,如果区域没有指标,则直接清空指标表单部分
-        if($('.scoreMenuList li').length > 0) {
-            $('.scoreMenuList li').eq(0).click(); //默认点击第一条指标
-        }else {
-            var $areaIndicatorContent =  $(".scoreContent").find('#areaIndicatorContent').eq(0);
-            if($areaIndicatorContent.length > 0) {
-                $areaIndicatorContent.html('');
-            }
-            var $indiName = $(".scoreContent").find('#indiName').eq(0);
-            if($indiName.length > 0) {
-                $indiName.html('');
-            }
-
-            var $scoreContentboxwrap = $(".scoreContent").find('.scoreContentboxwrap').eq(0);
-            if($scoreContentboxwrap.length > 0) {
-                $scoreContentboxwrap.html('');
-                promptImages($scoreContentboxwrap,jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_43);	//右边信息为空时,显示提示图片信息
-            }
-        }
-        it.instructionsBox();							//弹出说明
-        // it.setScoreBtnLocation();
-
-    },
-
-    /**
-     * 加载人员列表清单
-     */
-    initSelectionList : function(){
-        $('#content').before(leftListHtml());
-        $('#home-wrap,.view_manager_body').css('background', '#EDEFF4');
-        $('.content').css({
-            width: 'calc(100% - '+$('.content_left').width()+'px)',
-            float: 'right',
-            // background: '#fff'
-        });
-        $('.contentbox').css({
-            background: 'transparent',
-            padding: '0'
-        });
-        //var evaObjectId = shr.getUrlRequestParam("evaObj");
-        //调用左侧人员列表utilsSelectionList.js插件
-        $('#selectionList').utilsSelectionList({
-            method : "initLeftList",
-            listType: 'goals',	//goals:我的目标; score: 个人打分;
-            pageType : pageType,
-            param : {					//获取数据需要的参数
-                periodId : periodId,	//考核周期id
-                isOrg : isOrg,	//组织考核-yien
-                page   : 1,				//当前页数
-                rows   : 50,			//每页显示记录数
-                evaObj: evaObj			//当前评估对象
-            },
-            //12月补丁功能
-            //点击人员,刷新 指标明细信息
-            clickMenuEvent: function(e){	//点击一条记录触发事件
-                _noPassVerifyArr = new Array();
-                _indicatorTypeNoPassVerifyArr = new Array();
-                evaObj = $(e).attr('workerid');
-                periodId =$(e).find('.workName').attr('period');
-                personId = $(e).find('.workName').attr('workid');
-                personNumber = $(e).find('.workName').attr('worknum') ;
-                it.initContent(evaObj,periodId,personId,personNumber,billId);
-                if($('.fold_control').text() ==
-                    jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_73){
-                    $('.fold_control').click();
-                }
-                that.initSetTargetWorkflowBtn();
-            }
-        })
-        if(sessionStorage.prevgoalsfillindex){
-            var tagli = $('.workerList li').eq(sessionStorage.prevgoalsfillindex);
-            if(tagli){
-                tagli.click();
-            }
-        }
-    },
-
-    /**
-     * 弹出说明
-     */
-    instructionsBox : function(){
-        $(".instructions").die('mouseover').live('mouseover',function(){
-            var box=$('.instructionsboxwrap');
-            box.stop().fadeIn();
-
-        });
-        $(".instructions").die('mouseout').live('mouseout',function(){
-            var box=$('.instructionsboxwrap');
-            box.stop().fadeOut();
-        });
-    },
-
-    /**
-     * 左侧菜单
-     * @returns
-     */
-    initGoalsItems : function(data){
-        // 重新组装成需要的数据结构
-        scoringWay = data.scoringWay;
-        if (scoringWay==1){
-            maxScore=data.maxScore;
-        }
-        evaAreaListGlobal = shr.xssFilter(data.rows.evaAreaList);
-        for(var i = 0; i < evaAreaListGlobal.length; i ++){
-            var fieldList = evaAreaListGlobal[i].fieldList;
-            var datalist = evaAreaListGlobal[i].evaIndicatorList || evaAreaListGlobal[i].evaRecordList;
-            evaAreaListGlobal[i].targetItems = [];
-            evaAreaListGlobal[i].scoringWay = data.scoringWay;
-            evaAreaListGlobal[i].rema = getAreaRema(evaAreaListGlobal[i].areaId);
-            for(var j = 0; j < datalist.length; j ++){
-//                evaAreaListGlobal[i].personalGoalStatusAlias =  datalist[j].FGOALSSTATUS.alias;
-//                evaAreaListGlobal[i].personalGoalStatus = datalist[j].FGOALSSTATUS.value;
-                if(datalist[j].FINDECATORTYPE){
-                    datalist[j].FINDECATORTYPE['BaseInfo.name'] = datalist[j].FINDECATORTYPE.name;
-                }
-                evaAreaListGlobal[i].targetItems[j] = [];
-                evaAreaListGlobal[i].targetItems[j].FGOALSSTATUS = datalist[j].FGOALSSTATUS;//指标状态
-                evaAreaListGlobal[i].targetItems[j].FPSTARTDATE = datalist[j].FPSTARTDATE;
-                evaAreaListGlobal[i].targetItems[j].FPENDDATE = datalist[j].FPENDDATE;
-                evaAreaListGlobal[i].targetItems[j].scoringWay = evaAreaListGlobal[i].scoringWay;
-                evaAreaListGlobal[i].targetItems[j].areaType = evaAreaListGlobal[i].areaType;
-                evaAreaListGlobal[i].targetItems[j].FID = datalist[j].FID;
-                evaAreaListGlobal[i].targetItems[j].FISUNITED = datalist[j].FISUNITED;  //是否统一下达
-                evaAreaListGlobal[i].targetItems[j].FSCORINGFORMULA = datalist[j].FSCORINGFORMULA; //评分公式
-                evaAreaListGlobal[i].targetItems[j].FINDECATORTYPE = datalist[j].FINDECATORTYPE;    // 指标类型
-                evaAreaListGlobal[i].targetItems[j].FWEIGHT = datalist[j].FWEIGHT;      // 权重
-                if(evaAreaListGlobal[i].areaType == 200){
-                    evaAreaListGlobal[i].targetItems[j].FNAME = datalist[j].FNAME;      // 指标名称
-                }else{
-                    evaAreaListGlobal[i].targetItems[j].FKEYITEM = datalist[j].FKEYITEM;
-                }
-                evaAreaListGlobal[i].targetItems[j].FTARSCORE = datalist[j].FTARSCORE;  // 目标分值
-                evaAreaListGlobal[i].targetItems[j].FSOURCE = datalist[j].FSOURCE;      // 指标来源
-                evaAreaListGlobal[i].targetItems[j].FRESPONSERNAME = datalist[j].FRESPONSERNAME;  // 指标负责人
-                evaAreaListGlobal[i].targetItems[j].FRESPONSER = datalist[j].FRESPONSER;// 指标负责人id
-                evaAreaListGlobal[i].targetItems[j].fieldslist = [];
-                var li = it.getTargetData(fieldList, datalist[j]);
-                evaAreaListGlobal[i].targetItems[j].fieldslist = li;
-            }
-        }
-        // console.log(evaAreaListGlobal);
-        // console.log('isShrBill:'+isShrBill);
-        // console.log('pageType:'+pageType);
-        targetCanEdit = data.targetCanEdit;
-        var contentTpl = document.getElementById('contentTpl').innerHTML;
-        var mydata = {
-            targetCanEdit: targetCanEdit,
-            rows: evaAreaListGlobal, 
-            pageType: pageType,
-            pStartDate: data.rows.pStartDate,
-            pEndDate: data.rows.pEndDate,
-            targetDecompose: data.hasOwnProperty('targetDecompose')?data.targetDecompose: false,
-            progressUpdate: data.hasOwnProperty('progressUpdate')?data.progressUpdate: false,
-            jsBizMultLan: jsBizMultLan,
-            showAllFields: true,     //展示所有字段,默认值false
-            viewType: viewType,
-            hideDecompose: hideDecompose,
-            btnPerm: btnPerm,  //按钮权限
-            operatestate: operatestate,  // 审批单据编辑状态
-            // canEditTab: canEditTab   // 先不用这个判断,可能会影响分解、变更页面
-        }
-        //"个人目标填报、个人目标下达页面,添加指标、引用指标等按钮需调整显示逻辑,具体如下:
-        var datarows = mydata.rows
-        if(datarows != null){
-            //循环
-            for(var i=0; i<datarows.length; i++){
-                var row = datarows[i];
-                var r_areaName = row.areaName;
-                //第一部分:目标达成-目标填报----只显示添加指标_隐藏引用指标
-                // 第三部分: 发展目标----只显示添加指标"
-                if(r_areaName == '第一部分:目标达成-目标填报' || r_areaName.includes( '第三部分: 发展目标') ){
-                    // hideref = true加入到row中
-                    row.hideref = true;
-                }else if(r_areaName.includes('第一部分:目标达成-总评') || r_areaName.includes( '第二部分:如何达成-B1') 
-                    || r_areaName.includes('第二部分:如何达成-总评')){
-                    // 第一部分:目标达成-总评(评估人评估)----不显示
-                    // 第二部分:如何达成-B1----不显示
-                    // 第二部分:如何达成-总评(评估人评估)----不显示
-                    row.hideadd = true;
-                    row.hideref = true;
-                }else if(r_areaName.includes('第二部分:如何达成-Business leadership') || r_areaName.includes('第二部分:如何达成-People leadership') 
-                     || r_areaName.includes('如何达成-Self leadership') ){
-                    // 第二部分:如何达成-Business leadership(至少选择一项)----只显示引用指标
-                    // 第二部分:如何达成-People leadership(至少选择一项)----只显示引用指标
-                    // 第二部分:如何达成-Self leadership(至少选择一项)----只显示引用指标
-                    row.hideadd = true;
-                }
-                row.hidemovebtn = true; // 隐藏移动按钮
-            }
-        }
-        
-        var contentHTML = juicer(contentTpl, mydata);
-        $('.evaluation').empty().append(contentHTML);
-        it.setParentIframeHeight();
-
-        if(pageType != 1){
-            $('#transmit').hide();
-        }
-        
-        // 拖动排序
-        if(pageType == 0 || pageType == 1 || pageType == 6){
-            that.initIndicatorSortable();
-        }
-        
-        if(viewType == 'list'){
-            that.initTab(mydata);
-        }
-    },
-    _getMyData: function(item, hasDecompseBtn, hasUpdataBtn, cellEdit){
-        var mydata = item.evaIndicatorList || item.evaRecordList;
-        for(var i=0; i<mydata.length; i++){
-            mydata[i]['id'] = mydata[i]['FID'];
-            mydata[i]['otherMsg'] = {
-                hasDecompseBtn: hasDecompseBtn,
-                hasUpdataBtn: hasUpdataBtn,
-                areaId: item.areaId,
-                areaType: item.areaType,
-                tabObj: '#tab'+i,
-                canEdit: cellEdit,  // 判断指标是否可编辑删除
-                fieldList: item.fieldList,
-                isRefIndi: that.isRefIndicator(mydata[i]['FID'])
-            }
-            // 组装多语言数据
-            $.each(item.fieldList,function(j,list){
-                if(multiFields.indexOf(list.colName) > -1){
-                    var mulstr = JSON.stringify({
-                        l1: mydata[i][list.colName+'_L1'] || '',
-                        l2: mydata[i][list.colName+'_L2'] || '',
-                        l3: mydata[i][list.colName+'_L3'] || ''  
-                    })
-                    mydata[i][list.colName+'Multi'] = shr.allEncrypt(mulstr);
-                }
-            })
-        }
-        return mydata;
-    },
-    _getLongTextModel: function(_myModel){
-        // shrMultiLangBox、shrMultiLangArea、wafTextArea
-        // if(multiFields.indexOf(_myModel.name) > -1){
-        //     _edittype = 'shrMultiLangArea';
-        //     _editoptions = {
-        //         inputJson: {
-        //             trimAll: false
-        //         }
-        //     }
-        // }else{
-            _myModel.edittype = 'wafTextArea';
-            _myModel.formatter = function(val,msg){
-                return '<div class="cell-height scrollbarthin">'+(val?val:'')+'</div>';
-            }
-        // }
-        return _myModel;
-    },
-    _getNumberModel: function(_myModel){
-        _myModel.edittype = 'shrtext';
-        _myModel.width = 90;
-        return _myModel;
-    },
-    _getBooleanModel: function(_myModel){
-        var fieldOptions = [];
-        var _alias0 = jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_12; //否
-        var _alias1 = jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_52; //是
-        var _changeEvent;
-        if(_myModel.name == 'FQUALIORRATION'){ // 定性/定量
-            _alias0 = jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_14; // 定性
-            _alias1 = jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_13; // 定量
-            _changeEvent = function(){  // 定性不可编辑评分公式且清空
-                var val = $(this).shrSelect('getValue');
-                var _grid = $(this).closest('table'),
-                    tabId = _grid.attr('id'),
-                    rowid = $(this).closest('tr').attr('id');
-                if(val.value == '0'){
-                    _grid.jqGrid('setCell', rowid, 'FSCORINGFORMULA',null, 'not-editable-cell');
-                }else{
-                    _grid.find('tr[id="'+rowid+'"] td[aria-describedby="'+tabId+'_FSCORINGFORMULA"]').removeClass('not-editable-cell');
-                }
-                
-            }
-        }else if(_myModel.name == 'FISVISIBLE'){ // 可见性
-            _alias0 = jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_2 // 不公开
-            _alias1 = jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_14; // 公开
-        }else if(_myModel.name == 'FREJECTION'){  // 否决项
-            _changeEvent = function(){
-                var val = $(this).shrSelect('getValue');
-                console.log(val)
-                var _grid = $(this).closest('table'),
-                tabId = _grid.attr('id'),
-                rowid = $(this).closest('tr').attr('id');
-                if(val.value == '1'){
-                    // 勾选否决项后,权重、评分公式、目标分值清空不可编辑,定性/定量默认选择定性
-                    _grid.jqGrid('setCell', rowid, 'FWEIGHT',null, 'not-editable-cell');
-                    _grid.jqGrid('setCell', rowid, 'FQUALIORRATION','0', 'not-editable-cell');
-                    _grid.jqGrid('setCell', rowid, 'FSCORINGFORMULA',null, 'not-editable-cell');
-                    _grid.jqGrid('setCell', rowid, 'FTARSCORE',null, 'not-editable-cell');
-                }else{
-                    _grid.find('tr[id="'+rowid+'"]').find('td[aria-describedby="'+tabId+'_FWEIGHT"]').removeClass('not-editable-cell');
-                    _grid.find('tr[id="'+rowid+'"]').find('td[aria-describedby="'+tabId+'_FQUALIORRATION"]').removeClass('not-editable-cell');
-                    _grid.find('tr[id="'+rowid+'"]').find('td[aria-describedby="'+tabId+'_FTARSCORE"]').removeClass('not-editable-cell');
-                }
-            }
-        }
-        fieldOptions = [{
-            value:"0",
-            alias:_alias0,
-            isenum:false
-        },{
-            value:"1",
-            alias:_alias1,
-            isenum:false
-        }];
-        _myModel.editoptions = {
-            selectJson: {
-                data: fieldOptions,
-                onChange: _changeEvent
-            },
-            enumSource: {
-                data: fieldOptions
-            }
-        };
-        _myModel.edittype = 'shrselect';
-        _myModel.formatter = 'shrselect';
-        return _myModel;
-    },
-    _getSelectModel: function(_myModel, list){
-        var options = list.options;
-        var fieldOptions = [];
-        $.each(options,function(i,item){
-            fieldOptions.push({
-                value: item.key,
-                alias: item.value
-            })
-        })
-        _myModel.editoptions = {
-            selectJson: {
-                data: fieldOptions,
-                onChange: function(){
-                }
-            },
-            enumSource: {
-                data: fieldOptions
-            }
-        };
-        _myModel.edittype = 'shrselect';
-        _myModel.formatter = 'shrselect';
-        return _myModel;
-    },
-    _getTimeStampModel: function(_myModel){
-        _myModel.editoptions = {
-            datepickerjson: {
-                ctrlType: _myModel.fieldType
-            }
-        };
-        _myModel.formatter = function(val,msg){
-            return window.dateTimePickerService.transformUTCDate(val,true,'',{ctrlType: msg.colModel.fieldType})
-        }
-        _myModel.edittype = 'shrDateTimePicker';
-        return _myModel;
-    },
-    _getF7Model: function(_myModel){
-        if(_myModel.name == 'FINDECATORTYPE'){ // 指标类型
-            _myModel.editoptions = {
-                f7Json: {
-                    subWidgetName: "specialPromptGrid",
-                    displayFormat: "{BaseInfo.name}",
-                    subWidgetOptions: {
-                        title: jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_113,
-                        uipk: "com.kingdee.shr.perfweb.app.base.indecator.IndecatorType.available.F7",
-                        query: "",
-                        isHRBaseItem: true,
-                        f7ReKeyValue: "BaseInfo.id:BaseInfo.longName",
-                        currentHrOrgUnitId: hrOrgUnit,
-                        filter: "hrOrgUse.id = '" + hrOrgUnit + "'",
-                        bizFilterFieldsValues: "bizFilterFields=undefined:" + encodeURIComponent(hrOrgUnit),
-                        filterConfig: [{name: 'isComUse', value: true,
-                            alias: jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_86,
-                            widgetType: 'checkbox'}],
-                        onclikFunction : function(id){
-                            var dataSet = $("tr[id='" +id+ "']").closest("table[ctrlrole='grid']").jqGrid('getRowData', id);
-                            currPromptInp.shrPromptBox("setValue", dataSet);
-                        }
-                    }
-                }
-            }
-        }
-        _myModel.edittype = "promptBox";
-        _myModel.formatter = "promptBox";
-        return _myModel;
-    },
-    _getTextModel: function(_myModel){
-        // 因后台返回的评分公式类型为Text,实际是f7,需单独处理
-        if(_myModel.name == 'FSCORINGFORMULA'){  // 
-            if(!/\'/.test(hrOrgUnit)) {
-                var useHrOrgUnit = "'"+hrOrgUnit+"'";
-            }
-            _myModel.editoptions = {
-                f7Json: {
-                    subWidgetName: "specialPromptGrid",
-                    subWidgetOptions: {
-                        title: jsBizMultLan.perfweb_perfAchievementBase_1585536469649_i18n_4,
-                        uipk: "com.kingdee.shr.perfweb.app.base.perfmancescore.ScoringFormula.F7",
-                        query: "",
-                        isHRBaseItem: true,
-                        currentHrOrgUnitId: hrOrgUnit,
-                        f7ReKeyValue: "BaseInfo.id:BaseInfo.name",
-                        filter: "hrOrgUse.id in (" + useHrOrgUnit + ") ",
-                        bizFilterFieldsValues: "bizFilterFields=undefined:" + encodeURIComponent(hrOrgUnit),
-                        filterConfig: [{name: 'isComUse', value: true, 
-                            alias: jsBizMultLan.perfweb_perfAchievementBase_1585536469649_i18n_6, 
-                            widgetType: 'checkbox'}],
-                        onclikFunction : function(id){
-                            var dataSet = $("tr[id='" +id+ "']").closest("table[ctrlrole='grid']").jqGrid('getRowData', id);
-                            currPromptInp.shrPromptBox("setValue", dataSet);
-                        }
-                    }
-                }
-            }
-            _myModel.edittype = "promptBox";
-            _myModel.formatter = "promptBox";
-            // _displayFormat = 'name';
-        }
-        return _myModel;
-    },
-    _getDefaultModel: function(_myModel){
-        _myModel.formatter = function(val,msg){
-            var text = val;
-            var fieldType = msg.colModel.fieldType;
-            if(typeof val === "object"){
-                text = val.name;
-            }else if(fieldType === 'Text' || fieldType === 'LongText' || fieldType === 'Unknown'){
-                text = '<div class="cell-height scrollbarthin">'+val+'</div>';
-            }else if(fieldType == 'Boolean'){
-                text = val === '0' ? jsBizMultLan.perfweb_perfscoreNew_zw20201229_i18n_09 : jsBizMultLan.perfweb_perfscoreNew_zw20201229_i18n_10;
-            }else if(fieldType == 'Date' || fieldType == 'Time' || fieldType == 'TimeStamp'){
-                text = window.dateTimePickerService.transformUTCDate(val,true,'',{ctrlType: msg.colModel.fieldType});
-            }
-            return text;
-        }
-        return _myModel;
-    },
-    _getFieldListModel: function(list,cellEdit){
-        var width = 120;
-        if(list.fieldType == 'LongText'){
-            width = 400;
-        }
-        var _myModel = {
-            name: list.colName, 
-            index: list.colName, 
-            showName: list.showName,
-            width: width, 
-            align: "left", 
-            sortable: true,
-            editable: true,
-            edittype: 'shrtext',
-            hidden: false,
-            required: list.required,
-            classes: '',
-            fieldType: list.fieldType,
-            formatter: '',
-            editoptions: {},
-            // displayFormat: _displayFormat
-        }
-        if(_myModel.name == 'FISUNITED'){
-            _myModel.hidden = true;
-        }
-        if(!_myModel.editable && cellEdit){
-            _myModel.classes = 'disabled';
-        }
-        if(_myModel.required && cellEdit){
-            _myModel.classes = 'required';
-        }
-
-        switch (_myModel.fieldType){
-            case 'LongText':
-                _myModel = that._getLongTextModel(_myModel);
-                break;
-            case 'Number':
-                _myModel = that._getNumberModel(_myModel);
-                break;
-            case 'Boolean':
-                _myModel = that._getBooleanModel(_myModel);
-                break;
-            case 'Select':
-                _myModel = that._getSelectModel(_myModel, list);
-                break;
-            case 'Date':
-            case 'Time':
-            case 'TimeStamp':
-                _myModel = that._getTimeStampModel(_myModel);
-                break;
-            case 'F7':
-                _myModel = that._getF7Model(_myModel);
-                break;
-            case 'Text':
-                _myModel = that._getTextModel(_myModel);
-                break;
-            default:
-                _myModel = that._getDefaultModel(_myModel);
-        }
-        return _myModel;
-    },
-    _getMyNameAndMyModel: function(hasDecompseBtn,hasUpdataBtn,item,cellEdit){
-        var myName = [],
-            myModel = [];
-        // 冻结列无法拖拽排序,先注释掉
-        // myName.push('');
-        // myModel.push({
-        //     name: 'dragSort',
-        //     index: 'dragSort',
-        //     width: 30,
-        //     align: "center",
-        //     sortable: false,
-        //     editable: false,
-        //     hidden: pageType == 0 || pageType == 1 || pageType == 6 ? false : true,
-        //     frozen: true,
-        //     formatter: function(val,msg){
-        //         return '<div class="tr-handle" title="拖动排序"></div>';
-        //     }
-        // });
-        myName.push(jsBizMultLan.perfweb_perfgoalsfillHtmlNew_zw20210317_i18n_05);
-        myModel.push({
-            name: 'operateBtn',
-            index: 'operateBtn',
-            width: contextLanguage == 'en_US' ? 150 : 80,
-            align: "center",
-            sortable: false,
-            editable: false,
-            hidden: (hasDecompseBtn || hasUpdataBtn) ? false : true,
-            frozen: true,
-            formatter: 'operateBtn'     // 扩展formatter类型
-        });
-        myName.push('otherMsg');
-        myModel.push({
-            name: 'otherMsg',
-            index: 'otherMsg',
-            width: 80,
-            align: "center",
-            sortable: false,
-            editable: false,
-            hidden: true,
-            frozen: true,
-        });
-        myName.push('id');
-        myModel.push({
-            name: 'id',
-            index: 'id',
-            width: 50,
-            align: "left",
-            sortable: true,
-            editable: false,
-            hidden: true,
-            frozen: false,
-        });
-        myName.push('FID');
-        myModel.push({
-            name: 'FID',
-            index: 'FID',
-            width: 50,
-            align: "left",
-            sortable: true,
-            editable: false,
-            hidden: true,
-            frozen: false,
-        });
-        $.each(item.fieldList,function(j,list){
-            if(list.fieldMaintenanceStage !== '200'){
-                var _myModel = that._getFieldListModel(list,cellEdit);
-                myName.push(_myModel.name == 'FWEIGHT' ? _myModel.showName+'(%)' : _myModel.showName);
-                myModel.push(_myModel);
-                if(multiFields.indexOf(_myModel.name) > -1){
-                    myName.push(_myModel.showName);
-                    myModel.push({
-                        name: _myModel.name+'Multi',
-                        index: _myModel.name+'Multi',
-                        width: 50,
-                        align: "left",
-                        sortable: true,
-                        editable: false,
-                        hidden: true,
-                        frozen: false,
-                    });
-                }
-            }
-        })
-        return {myName: myName, myModel: myModel};
-    },
-    _reprocessMyModel: function(shrinkToFit, tabWidth, showFieldWidth, myModel, text_count, show_count){
-        if(shrinkToFit){// 如果没有横向滚动条,短文本字段和长文本字段重新计算列宽
-            var w1 = tabWidth - showFieldWidth - 34 - show_count * 6;      // 可按比例分配宽度 34:复选框列 6:单元格左右内边距
-            var w2 = (w1/text_count).toFixed(2) - 6;           // 每个长文本可分配的宽度
-            if(w1 != 0){
-                myModel.forEach(function(item, i){
-                    if(!item.hidden && item.name != 'operateBtn' && (item.edittype == "wafTextArea" || (item.edittype == "shrtext" && item.fieldType == 'Text'))){
-                        myModel[i].width = myModel[i].width + Number(w2); // 新列宽
-                    }
-                })
-            }
-        }
-        // else{// 如果有横向滚动条,除操作列外的前两列冻结
-        //     var frozenLen = 0;
-        //     myModel.forEach(function(item, i){
-        //         if(!item.hidden && item.name != 'operateBtn'){
-        //             if(frozenLen < 2){
-        //                 myModel[i].frozen = true;
-        //                 frozenLen ++;
-        //             }
-        //         }
-        //     })
-        // }
-        return myModel;
-    },
-    // 初始化表格
-    initTab: function(data){
-        $.each(data.rows, function(i,item){
-            var _grid = $('#tab'+i),
-                mydata = [],
-                myName = [], myModel = [],
-                showFieldWidth = 0,text_count = 0,show_count = 0;
-                tabIndex = i ;
-            
-            // 数据组装
-            // 考核计划执行-未发送-查看评估表、绩效已办-我已填报的目标、我的绩效-我的目标,不能编辑 、删除
-            var cellEdit = canEditTab;
-            // 指标分解:绩效已办-我已下达的目标、我已填报的目标、记录表区域、流程审批页面不显示指标分解按钮。targetDecompose为false不显示,为true显示。记录表区域不显示指标分解按钮
-            var hasDecompseBtn = pageType != 5 &&  pageType != 10 &&  pageType != 3 && pageType != 7 && pageType != 8 && item.areaType != 300 && data.targetDecompose && !shr.getUrlRequestParam("isShrBill") && hideDecompose != '1' ? true : false;
-            var hasUpdataBtn = (pageType == 2 || pageType == 4) && data.progressUpdate && hideDecompose != '1' ? true : false;
-            mydata = that._getMyData(item, hasDecompseBtn, hasUpdataBtn, cellEdit);
-
-            var myNameAndMyModel = that._getMyNameAndMyModel(hasDecompseBtn,hasUpdataBtn,item,cellEdit);
-            myName = myNameAndMyModel.myName;
-            myModel = myNameAndMyModel.myModel;
-
-            myModel.forEach(function(item){
-                if(!item.hidden){
-                    showFieldWidth += item.width;
-                    show_count ++;  // 默认显示字段个数
-                    if(item.edittype == "wafTextArea" || (item.edittype == "shrtext" && item.fieldType == 'Text')){
-                        text_count ++ ; // 文本类型字段个数
-                    }
-                }
-            })
-            var tabWidth = $('.tabwrap').eq(0).width()
-            var shrinkToFit = showFieldWidth < tabWidth ? true : false;
-            myModel = that._reprocessMyModel(shrinkToFit, tabWidth, showFieldWidth, myModel, text_count, show_count);
-            
-            var dataGrid_option = {
-                datatype: 'local',
-                data: mydata,
-                colNames: myName,
-                colModel: myModel,
-                multiselect: true,
-                multiselectWidth: '30',//复选框单元格宽度
-                shrinkToFit: shrinkToFit,//true没有滚动条,false有滚动条
-                rownumbers: false,
-                width: 640,//这个宽度不能为百分比
-                height: 298,//高度,表格高度。可为数值、百分比或'auto'
-                cellEdit: cellEdit,
-                cellsubmit: 'clientArray',
-                areaType: item.areaType,
-                areaId: item.areaId,
-                areaName: item.areaName,
-                fieldList: item.fieldList,
-                weightControl: item.weightControl,
-                areaControlWeight: item.areaControlWeight,
-                keyOptions:{    // 编辑最后一行的最后一个可编辑单元格时,回车不新增行,而是回到第一个可编辑单元格
-                    addNewRowForLastCell: false,
-                    loop: true
-                },
-                beforeEditCell: function(rowid, cellname, value, iRow, iCol){
-                    that._beforeEditCell(rowid, cellname, value, iRow, iCol, _grid);
-                },
-                afterEditCell: function(rowid, cellname, value, iRow, iCol){
-                    that._afterEditCell(rowid, cellname, value, iRow, iCol, _grid);
-                },
-                afterSaveCell: function(rowid, cellname, value, iRow, iCol){
-                    that._afterSaveCell(rowid, cellname, value, iRow, iCol, _grid);
-                },
-                loadComplete: function (data) {
-                    // console.log(data)
-                    that._loadComplete(data, _grid);
-                }
-            };
-            if(shrinkToFit || !$.browser.chrome){// ie、火狐浏览器冻结列有问题,只谷歌浏览器显示冻结列
-                _grid.jqGrid(dataGrid_option);
-            }else{
-                _grid.jqGrid(dataGrid_option).jqGrid('setFrozenColumns').trigger("reloadGrid", [
-                    {current:true}
-                ]);// 不加上冻结列有问题
-            }
-        })
-    },
-    _beforeEditCell: function(rowid, cellname, value, iRow, iCol, _grid){
-        if(lastTable != _grid.attr('id')){
-            if(lastTable){
-                $('#'+lastTable).jqGrid('editStop');
-            }
-            lastTable = _grid.attr('id');
-        }
-    },
-    _afterEditCell: function(rowid, cellname, value, iRow, iCol, _grid){
-        var rowData = _grid.jqGrid('getOriginalRowData',rowid);
-        var colAttr = _grid.getColProp(cellname);
-        var fieldType = colAttr.fieldType;
-        var inp = _grid.find('#'+iRow+'_'+cellname);
-        var maxSize = that._getFieldMaxSize(cellname, rowData, fieldType);
-        inp.attr('maxlength',maxSize);
-
-        // f7赋值有问题,记录下当前f7
-        if(cellname == 'FINDECATORTYPE' || cellname == 'FSCORINGFORMULA'){ // 指标类型、评分公式
-            currPromptInp = inp;
-        }
-        // 评分公式
-        if(cellname == 'FSCORINGFORMULA'){  
-            inp.shrPromptBox("setBizFilterFieldsValues", hrOrgUnit);
-        }
-
-        // 单元格有滚动条时编辑取值修改
-        if(value.indexOf('class="cell-height scrollbarthin"') > -1){
-            inp.attr('fname',cellname).attr('rowid',rowid).val($(value).text());
-            // 平台可编辑列表初始化多语言组件有问题,需单独处理
-        }
-        // 多语言字段设置
-        that._setMultiField(cellname, inp, maxSize, _grid, rowData);
-    },
-    // 最大输入长度限制
-    _getFieldMaxSize: function(cellname, rowData, fieldType){
-        var maxSize = 255;
-        if(cellname == 'FNAME' || cellname == 'FKEYITEM'){
-            maxSize = 255;
-        }else if(cellname == 'FNUMBER' || cellname == 'FKEYCODE'){
-            maxSize = 80;
-        }else if(fieldType == 'LongText' || (cellname == 'FTARGETVALUE' && rowData.FQUALIORRATION == '0')){
-            maxSize = 1024;
-        }
-        return maxSize;
-    },
-    // 多语言字段设置
-    _setMultiField: function(cellname, inp, maxSize, _grid, rowData){
-        if(multiFields.indexOf(cellname) > -1 && isUseMultiLan){
-            inp.shrMultiLangBox({
-                value: '', // 默认值,必填
-                readonly: false, // 是否只读,非必填
-                // disabled: disabled, // 是否禁用
-                maxlength: maxSize,
-                trimAll: false,
-                onchange: function(e, obj){
-                    var _this = $(e.target);
-                    var cellName = _this.attr('fname');
-                    var gridId = _this.attr('grid').split('$')[0];
-                    var _grid = $('#'+gridId);
-                    var _rowid = _this.attr('rowid');
-                    _grid.jqGrid('setCell', _rowid, cellName+'Multi',shr.allEncrypt(JSON.stringify(obj.current)));
-                }
-            });
-            inp.shrMultiLangBox('setValue',rowData[cellname+'Multi'] ? JSON.parse(shr.allDecrypt(rowData[cellname+'Multi'])) : '')
-        }
-    },
-    _afterSaveCell: function(rowid, cellname, value, iRow, iCol, _grid){
-        var rowData = _grid.jqGrid('getOriginalRowData',rowid);
-        if(typeof value == 'string' && value.indexOf('class="cell-height scrollbarthin"') > -1){
-            value = $(value).text();
-        }
-        that.cellValueCheck(rowid, cellname, value, iRow, iCol, rowData, _grid);
-    },
-    _loadComplete: function (data, _grid) {
-        // console.log(data)
-        var maxH = $(window).height() - $('.evaluation').offset().top - $('.areaname').eq(0).height();
-        if(_grid.height() > maxH){
-            _grid.jqGrid('setGridHeight',maxH);
-        }
-        $.each(data.rows, function(i, item){
-            that.getDisableField(item,_grid);
-        })
-        var shrinkToFit = _grid.jqGrid('getGridParam','shrinkToFit');
-        _grid.jqGrid('setGridWidth',$('.tabwrap').eq(0).width(),shrinkToFit);
-        // 排序
-        // that.initTabSortable(_grid);
-    },
-    // 冻结列无法拖拽排序,先注释掉
-    // initTabSortable: function(_grid){
-    //     _grid.closest('.tabwrap').find('tbody').sortable({
-    //         axis: "y",
-    //         cursor: "move",
-    //         delay: 150,
-    //         // handle: ".tr-handle",
-    //         // items: "tr",
-    //         placeholder: "tr-ui-state-highlight",
-    //         start: function( event, ui ){
-    //             var thisItem = $(ui.item[0]);
-    //             var _grid = thisItem.closest('table');
-    //             var colModel = _grid.getGridParam('colModel');
-    //             $.each(colModel,function(i,item){
-    //                 if(!item.hidden){
-    //                     thisItem.find('td[aria-describedby*="_'+item.name+'"]').width(item.width);
-    //                 }
-    //             })
-    //         },
-    //         receive: function(e, ui) {
-    //             // ui.item.before(ui.item.data('items'));
-    //         },
-    //         stop: function( event, ui ) {
-    //             var thisItem = $(ui.item[0]);
-    //             var _grid = thisItem.closest('table');
-    //             var rowsData = _grid.getRowData();
-    //             var areaType = thisItem.closest('.areawrap').attr('areatype');
-    //             var data = [];
-    //             for(var i = 0; i < rowsData.length; i++){
-    //                  var id = rowsData[i].FID;
-    //                  data.push({
-    //                     id: id,
-    //                     type: areaType,
-    //                     index: i.toString(),
-    //                 })
-    //             }   
-    //             that.setOrder(data);
-    //         }
-    //     }).disableSelection();
-    // },
-    // 列表模式,获取不可编辑字段
-    getDisableField: function(item,_grid){
-        var disabledArr = [];
-        var cellEdit = _grid.getGridParam('cellEdit');
-        if(!cellEdit){
-            return false;
-        }
-        var fieldList = item.otherMsg.fieldList;
-        // 统一下达指标
-        if(item.FISUNITED == '1'){
-            // targetCanEdit为0,不可编辑、删除
-            if(targetCanEdit == 0){
-                $.each(fieldList,function(j,field){
-                    _grid.jqGrid('setCell', item.FID, field.colName,item[field.colName], 'not-editable-cell');
-                })
-            }else{
-                // 统一下达指标允许编辑时,不可编辑字段名称、编码、类型、否决项、定性/定量、单位、计划完成日期、可见性、评分公式
-                // disabledArr = ['FNAME','FNUMBER','FINDECATORTYPE','FREJECTION','FKEYITEM','FKEYCODE','FQUALIORRATION','FUNIT','FPLANEDDATE','FISVISIBLE','FSCORINGFORMULA'];
-                // BT-01579136【PT174764】【 V8.8SP1 】统一下达的直接仅控制指标编码、指标名称、指标类型、定性/定量、否决项, 评分公式几个字段不允许维护,其他字段应该是允许员工维护的。
-                disabledArr = ['FNAME','FNUMBER','FINDECATORTYPE','FREJECTION','FKEYITEM','FKEYCODE','FQUALIORRATION','FSCORINGFORMULA'];
-            }
-        }
-        // 引用指标不可编辑名称、编码、描述、定性/定量
-        if(item.otherMsg.isRefIndi){  
-            disabledArr = disabledArr.concat(['FNAME','FNUMBER','FINDECATORDESC','FKEYITEM','FKEYCODE','FQUALIORRATION']);
-        }
-        // 定性不可编辑评分公式
-        if(item['FQUALIORRATION'] == '0'){ 
-            disabledArr.push('FSCORINGFORMULA');
-        }
-        // 否决项不可编辑权重、定性定量、评分公式、目标分值
-        if(item['FREJECTION'] == '1'){
-            disabledArr = disabledArr.concat(['FWEIGHT','FQUALIORRATION','FSCORINGFORMULA','FTARSCORE']);
-        }
-        $.each(disabledArr,function(j,col){
-            _grid.jqGrid('setCell', item.FID, col,item[col], 'not-editable-cell');
-        })
-    },
-    // 判断是否是引用指标
-    isRefIndicator: function(FID){
-        var flag = false;
-        that.selfRemoteCall({
-            method : "judgeIsRefTarget",
-            param : {
-                indicatorId : FID
-            },
-            async : false,
-            type:"post",
-            success : function(data) {
-               if(data.result == '200' && data.isRefTarget == '1') {
-                   flag = true;
-               }
-            }
-        });
-        return flag;
-    },
-    // 列表模式鼠标离开输入框校验
-    cellValueCheck: function(rowid, cellname, value, iRow, iCol, rowData, _grid){
-        // if(lastTable){
-        //     $(lastTable).jqGrid('editStop');
-        // }
-        var tr = _grid[0].rows.namedItem(rowid),td = tr.cells[iCol],flag = true,
-            cellvalue = value,
-            colAttr = _grid.getColProp(cellname),
-            showName = colAttr.showName;
-            classes = colAttr.classes,
-            fieldType = colAttr.fieldType,
-            maxSize = 200,
-            errObj = {},FID = rowData.id;
-        if (cellvalue) {
-            cellvalue = cellvalue.trim();
-        }
-        if(cellname == 'FNAME' || cellname == 'FKEYITEM'){
-            maxSize = 255;
-        }else if(cellname == 'FNUMBER' || cellname == 'FKEYCODE'){
-            maxSize = 80;
-        }else if(fieldType == 'LongText' || (cellname == 'FTARGETVALUE' && rowData.FQUALIORRATION == '0')){
-            maxSize = 1024;
-        }
-
-        errObj.indicator = FID;
-        errObj.errorType = cellname;
-        errObj.name = cellname;
-        errObj.showName = showName;
-        existInArrThenDelete(_noPassVerifyArr, errObj);
-
-        if(isEmpty(cellvalue)){
-            if(classes && classes.indexOf('required') > -1){
-                errObj.errortext = shr.formatMsg(jsBizMultLan.perfweb_perfgoalsfill_20221201_i18n_01, [showName]);
-                flag = false;
-            }
-        }else{
-            if(cellvalue.length > maxSize){ // 长度校验
-               // var msg1 = "{0}最多输入{1}个字,已输入{2}个";
-                var msg1 =  jsBizMultLan.perfweb_perfgoalsfill_20221219ht_01;
-                errObj.errortext = shr.formatMsg(msg1, [showName,maxSize,cellvalue.length]);
-                flag = false;
-            }else if(fieldType == 'Number'){
-                if(cellname == 'FWEIGHT' || cellname == 'FTARSCORE'){
-                    if(!isNumberVerify(cellvalue)){//两位小数数字校验
-                        errObj.errortext = jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_52;
-                        flag = false;
-                    }
-                }else if(!isNumberVerify(cellvalue , 2) && !(cellname == 'FTARGETVALUE' && rowData.FQUALIORRATION == '0')){//10位小数数字校验,目标值且定性时不做数字校验
-                    errObj.errortext = jsBizMultLan.perfweb_achivementDataList_20220818ht_01;
-                    flag = false;
-                }else if(cellvalue > 999999999.99){
-                    errObj.errortext = shr.formatMsg(jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_55,[999999999.99]);
-                    flag = false;
-                }
-            }
-        }
-        
-
-        if(flag){
-            $(td).removeClass("errorval");
-        }else{
-            _grid.jqGrid('setCell', FID, cellname, cellvalue, 'errorval');
-            shr.showWarning({
-                message: errObj.errortext,
-                hideAfter: 3
-            });
-            _noPassVerifyArr.push(errObj);
-        }
-    },
-    // 设置绩效工作台iframe高度
-    setParentIframeHeight: function(){
-        if(parent && parent.setIframeHeight){
-            var iframeid = 'rightContentIframe';
-            if(pageType == 2 || pageType == 6){
-                iframeid = 'myGoalsIframe';
-            }
-            parent.setIframeHeight(iframeid);
-        }
-    },
-    /**
-     * BT1464430
-     * 点击添加指标,出现添加指标弹框,没有点击保存按钮,点击取消 ,表单还是多了一条空白指标
-     * type: addNew 表示新增,其他表示编辑
-     * @param index
-     * @param subindex
-     * @param type
-     */
-    editIndicator: function(index, subindex, type){
-        it.initEditBoxDialog(index, subindex, type);
-    },
-
-    // 组装重新组装目标数据结构
-    getTargetData: function(fieldLis,item){
-        var fieldList = [];
-        for(var j=0;j<fieldLis.length;j++){
-            var str = JSON.stringify(fieldLis[j]);
-            fieldList.push(JSON.parse(str));
-        }
-
-        var targetData = [];
-        for(var i = 0; i < fieldList.length; i++){
-            targetData.push(fieldList[i]);
-            targetData[i].fieldvalue = item[fieldList[i].colName];
-            //补丁11 指标实例字段多语言改造-yien
-            targetData[i].fieldvalue_l1 = item[fieldList[i].colName+"_L1"];
-            targetData[i].fieldvalue_l2 = item[fieldList[i].colName+"_L2"];
-            targetData[i].fieldvalue_l3 = item[fieldList[i].colName+"_L3"];
-        }
-        return targetData;
-    },
-
-    // 打开目标分解页面
-    openTargetDecomposePage: function(areaId, indicatorId, tabindex){
-        event.stopPropagation();
-        var params = shr.getUrlParams();
-        var curEvaObj = $('.current').attr('workerid');
-        var workflowftatus = shr.getUrlRequestParam('workflowftatus') || '';
-		if(!curEvaObj){
-		    curEvaObj = evaObj;
-        }
-		//填报页面进入指标分解页面
-		if(params.type == "0" || params.type == "1" || (params.type == "2" && isOrg =='1')){
-            var param = {
-                uipk:'com.kingdee.shr.perfweb.app.base.evaplan.TargetDecompose.core',
-                // serviceId: params.serviceId,
-                billId: params.billId,
-                evaObj   : curEvaObj ,
-                periodId   : params.periodId,
-                // personId : params.personId,
-                type     : params.type,
-                hrOrgUnit: hrOrgUnit,
-                isOrg:isOrg,
-                areaId: areaId,
-                indicatorId: indicatorId,
-                tabIndex: tabindex
-            }
-            //bug 【8612第一轮集成测试】【表单越权】绩效管理--绩效工作台--组织考核目标填报--用户kitty (没有员工指标分解权限 ,但是有组织指标分解权限 ) ,点击组织指标分解 提示无权限
-            if (isOrg =='1') {
-                var shruicode = shr.getUrlRequestParam("shruicode");
-                if (shruicode == "") {
-                    shruicode = 'AF_PERF_OT008';
-                }
-                if (tabindex == 0 || tabindex == "0") {//组织进度更新
-                    shruicode = 'AF_PERF_OT010';
-                }
-                param.shruicode = shruicode;
-            }
-		    that.reloadPage(param);
-		}else{//我的目标页面进入指标分解页面、或者进度更新页面
-
-		    var shruicode = 'AF_PERF_TD001';
-		    if(tabindex == 1 || tabindex == '1'){
-		        shruicode = 'AF_PERF_TD001';
-		    }else{
-		        shruicode = 'AF_PERF_TD002';
-		    }
-		    // 从我负责的绩效-员工目标-查看进度进入时,将shruicode置空,走默认验权器
-            if(pageType == '4'){
-                shruicode = '';
-            }
-		    that.reloadPage({
-                uipk:'com.kingdee.shr.perfweb.app.base.evaplan.TargetDecompose.core',
-                // serviceId: params.serviceId,
-                billId: params.billId,
-                evaObj   : curEvaObj ,
-                periodId   : params.periodId,
-                // personId : params.personId,
-                type     : params.type,
-                hrOrgUnit: hrOrgUnit,
-                areaId: areaId,
-                isOrg:isOrg,
-                indicatorId: indicatorId,
-                tabIndex: tabindex,
-                shruicode:shruicode,
-                workflowftatus: workflowftatus
-
-            });
-		}
-
-    },
-
-    // 查看更多字段
-    showMoreFields: function(e){
-        var indwrap = $(e).closest('li');
-        if($(e).hasClass('onspread')){
-            $(e).removeClass('onspread')
-                .html(jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_102);
-            indwrap.find('.field-box').removeClass('show-more');
-        }else{
-            $(e).addClass('onspread')
-                .html(jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_73);
-            indwrap.find('.field-box').addClass('show-more');
-        }
-        it.setParentIframeHeight();
-    },
-
-    // 指标编辑弹框
-    initEditBoxDialog: function(index, subindex, type){     // type, addNew:新增
-        var editBoxTpl = document.getElementById('editBoxTpl').innerHTML;
-        var _indicatorInfo,_fieldList;
-
-        // var editBoxHTML = juicer(editBoxTpl, {rows: evaAreaListGlobal[index].targetItems[subindex]});
-
-        //补丁10 是否必填-yien
-        //设置字段是否必填
-        var _areaInfo = evaAreaListGlobal[index];
-        _fieldList = _areaInfo.fieldList;
-        if(subindex || subindex === 0){   // 旧逻辑"新增"、"编辑",新逻辑"编辑"
-            _indicatorInfo = _areaInfo.targetItems[subindex];
-            _fieldList = _indicatorInfo['fieldslist'];
-        }else{          //新逻辑"新增"
-            _indicatorInfo = {};
-        }
-        var _areaType = _areaInfo.areaType;
-        var _areaId = _areaInfo.areaId;
-        for(var i=0; i<_fieldList.length; i++) {
-            _fieldList[i].isRequired = isRequiredOfField(isRequiredMap, _fieldList[i].colName, _areaId);
-        }
-        _indicatorInfo['fieldslist'] = _fieldList;
-        var editBoxHTML = juicer(editBoxTpl, {rows: _indicatorInfo});//evaAreaListGlobal[index].targetItems[subindex] _indicatorInfo
-
-        $(document.body).append(editBoxHTML);
-        var dialogtop = 'center';
-        var winheight = $(window.top).height();
-        var winscrolltop = $(window.top).scrollTop();
-        if(self != top){
-            dialogtop = (winheight - ($(window).height() > 600 ? 600 : $(window).height()-20))/2 + winscrolltop - 80;
-        }
-        $("#editboxDialog").dialog({
-            autoOpen : true,
-            // show : "blind",
-            width : $(window).width() > 1000 ? 1000 : $(window).width()-20,
-            height : $(window).height() > 600 ? 600 : $(window).height()-20,
-            title : type == 'addNew' ?
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_77 :
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_110,
-            resizable : true,
-            position : [ 'center', dialogtop ],
-            modal : true,
-            buttons : [{
-                text:jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_0,
-                click : function() {
-                    //处理新增的时候,点击保存指标又被移除的问题 yien
-                    if(it.checkRequiredField()) {
-                        type = 'edit';
-                        if(!subindex && subindex !== 0){ 
-                            var callback = function(FID){
-                                $('#editboxDialog').attr('indid',FID);
-                                $('#editboxDialog').attr('areatype',_areaType);
-                                it.saveTargetClick();
-                            }
-                            it.callAddIndicatorForAreaService(_areaId, _areaType, 'addIndicator', callback);
-                        }else{
-                            it.saveTargetClick();
-                        }
-                    }
-                }},{
-                text:jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_64,
-                click : function() {
-                    // if(type == 'addNew'){
-                    //     it.delgoal($('.areawrap').eq(index).find('.indicatorwrap li').eq(subindex).find('.btnwrap').get(0), 'addnew');
-                    // }
-                    $(this).dialog('close');
-                }
-            }],
-            close : function(){
-                if(type == 'addNew' && subindex){
-                    it.delgoal($('.areawrap').eq(index).find('.indicatorwrap li').eq(subindex).find('.btnwrap').get(0), 'addnew');
-                }
-                $('#editboxDialog').remove();
-            },
-            open:function(event, ui){ 
-                $('#ui-dialog-otherConfig').remove();
-                if(type=='addNew' && subindex){ // subindex有值时,是旧逻辑新增指标,无值是新逻辑新增指标
-                    $('div[aria-describedby="editboxDialog"] .ui-dialog-titlebar-close').hide();
-                    $('div[aria-describedby="editboxDialog"] .ui-dialog-buttonpane').prepend('<div class="continuousNewwrap"><input type="checkbox" name="continuousNew" id="continuousNew"><label for="continuousNew">'+
-                        jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_37+
-                        '</label></div>');
-                    $('#continuousNew').shrCheckbox();
-                }
-                it.initInputIndi(index, subindex, type);
-
-                if(type=='addNew'){
-                	 $('#FACTUALCOMPLETETIME').val('');
-                }
-            }
-        });
-        //指标复制与引用
-        if(type != 'addNew') {
-            //编辑指标判断是否为引用指标
-            var _indicatorId = evaAreaListGlobal[index].targetItems[subindex]['FID'];
-            it.initRefIndiForm(_indicatorId);
-        }
-        //补丁11 指标实例多语言字段改造-yien
-        initMultiFieldsInput();
-    },
-    //渲染引用指标的表单
-    initRefIndiForm: function(indicatorId) {
-        var _flag = false;
-        that.selfRemoteCall({
-            method : "judgeIsRefTarget",
-            param : {
-                indicatorId : indicatorId
-            },
-            async : false,
-            type:"post",
-            success : function(data) {
-               if(data.result == '200' && data.isRefTarget == '1') {
-                   _flag = true;
-               }
-            }
-        });
-        if(_flag) {
-            $('#FNAME').attr('disabled','disabled');
-            $('#FNUMBER').attr('disabled','disabled');
-            $('#FKEYITEM').attr({'disabled':'disabled'});
-            $('#FKEYCODE').attr({'disabled':'disabled'});
-            $('#FINDECATORDESC').attr({'disabled':'disabled'});
-            //屏蔽选择,屏蔽定性定量指标更改属性
-            $('#FQUALIORRATION').shrSelect('disable' , true);
-            //yien 增加是否引用的标识
-            $('#FNAME').data('isRef','1');
-            $('#FNUMBER').data('isRef','1');
-            $('#FKEYITEM').data('isRef','1');
-            $('#FKEYCODE').data('isRef','1');
-            $('#FINDECATORDESC').data('isRef','1');
-            //屏蔽选择,屏蔽定性定量指标更改属性
-            $('#FQUALIORRATION').data('isRef','1');
-        }
-        var isUnited = $('#editboxDialog').attr('isUnited');
-        if(targetCanEdit==1 && isUnited=='1'){
-            $('#FNAME').attr('disabled','disabled');
-            $('#FNUMBER').attr('disabled','disabled');
-            $('#FINDECATORTYPE').attr({'disabled':'disabled'});
-            var qualiOrRation = $('#FQUALIORRATION').shrSelect('getValue' ).value;
-            if(qualiOrRation=='0'){
-                $('#FUNIT').attr({'disabled':'disabled'});
-            }
-        }
-        return _flag;
-    },
-
-    // 初始化F7、checkedbox、select等
-    initInputIndi: function(index, subindex, type){
-        //对有”指标类型“字段的指标进行处理
-        var isUnited = $('#editboxDialog').attr('isUnited');
-        var _areaInfo = evaAreaListGlobal[index];
-        var _indicatorInfo = _areaInfo.targetItems[subindex];
-        var _areaType = _areaInfo.areaType;
-        if(_areaType != 200 && isUnited=='1'){
-            $('#FKEYITEM').attr({'disabled':'disabled'});
-            $('#FKEYCODE').attr({'disabled':'disabled'});
-        }
-        if(isExistIndecatoryType = 1){
-            var indicatorType = 'FINDECATORTYPE';
-            // var indicatorType_f7_json = {id:indicatorType,name:indicatorType,validate: 'required:true',displayFormat:"{BaseInfo.name}"};
-            //补丁10 是否必填-yien
-            var indicatorType_f7_json = {id:indicatorType,name:indicatorType,validate: 'required:true',displayFormat:"{BaseInfo.name}"};
-            var _indicatorType$ = $('#FINDECATORTYPE');
-            var _isRequired = _indicatorType$.data('isrequired') == '1';
-            if(!_isRequired) {
-                indicatorType_f7_json = {id:indicatorType,name:indicatorType,displayFormat:"{BaseInfo.name}"};
-            }
-            indicatorType_f7_json.subWidgetName = 'specialPromptGrid';
-            indicatorType_f7_json.subWidgetOptions = {
-                title: jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_113,
-                uipk: "com.kingdee.shr.perfweb.app.base.indecator.IndecatorType.available.F7",
-                query: "",
-                isHRBaseItem: true,
-                f7ReKeyValue: "BaseInfo.id:BaseInfo.longName",
-                currentHrOrgUnitId: hrOrgUnit,
-                filter: "hrOrgUse.id = '" + hrOrgUnit + "'",
-                bizFilterFieldsValues: "bizFilterFields=undefined:" + encodeURIComponent(hrOrgUnit),
-                filterConfig: [{name: 'isComUse', value: true,
-                    alias: jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_86,
-                    widgetType: 'checkbox'}],
-                onclikFunction : function(id){
-                    var dataSet = $("tr[id='" +id+ "']").parent().parent().parent().find("table[ctrlrole='grid']").jqGrid('getRowData', id);
-                    $("input[id='"+indicatorType+"']").shrPromptBox("setValue", dataSet);
-                    var msgShow = $("span[id='MSG_"+indicatorType+"']");
-                    msgShow.hide();
-                }
-            };
-            $('input[id="' +indicatorType+ '"]').shrPromptBox(indicatorType_f7_json);
-            // $('.ui-promptBox-icon').addClass('required');
-
-            //补丁10 是否必填-yien
-            if(_isRequired) {
-                $('.ui-promptBox-icon').addClass('required');
-            }
-
-            if(subindex || subindex === 0){
-                curIndecatorType =  evaAreaListGlobal[index].targetItems[subindex].FINDECATORTYPE;
-            }
-            if(curIndecatorType && curIndecatorType.id != undefined && curIndecatorType.id != null){//指标类型有值就填值
-            	curIndecatorType.BaseInfo = {};
-            	curIndecatorType.BaseInfo.name = curIndecatorType.name;
-            	curIndecatorType.BaseInfo.id = curIndecatorType.id;
-                curIndecatorType["BaseInfo.name"] = curIndecatorType.name;
-                $('input[id="' +indicatorType+ '"]').shrPromptBox("setValue", curIndecatorType);
-            }
-            //统一下达的指标移除F7的弹出选项
-            if(isUnited == 1){
-                $('input[id="' +indicatorType+ '"]').shrPromptBox("disable");
-            }
-        }
-
-        if(pageType == 2){
-            $('input[id="' +indicatorType+ '"]').shrPromptBox("disable");
-        }
-
-        //初始化评分公式
-        var scoringFormulaObj = {tagId : 'FSCORINGFORMULA'};
-        //定性定量
-        var qualiOrRationObj = {tagId : 'FQUALIORRATION'};
-        //单位
-        var unitObj = {tagId : 'FUNIT'};
-        //可见性
-        var isVisibleObj = {tagId : 'FISVISIBLE'};
-        //计划完成日期
-        var planedDateObj = {tagId : 'FPLANEDDATE'};
-        //完成时间
-        var completeTimeObj = {tagId : 'FCOMPLETETIME'};
-        //实际完成时间
-        var fieldname = '';
-        if($('#FActualCompleteTime').length > 0){
-            fieldname = 'FActualCompleteTime';
-        }else if($('#FACTUALCOMPLETETIME').length > 0){
-            fieldname = 'FACTUALCOMPLETETIME';
-        }
-        var actualCompleteTimeObj = {tagId : fieldname};
-        //更新日期
-        var updateDateObj = {tagId : 'FUPDATEDATE'};
-        //yien 添加否决项
-        var rejectionObj = {tagId : 'FREJECTION'};
-
-        //yien 增加目标值
-        var targetValObj = {tagId : 'FTARGETVALUE'};
-
-        // 评分公式
-        var _selectedVal = {};
-        if(subindex || subindex === 0){
-            var selectedScoringFormula = evaAreaListGlobal[index].targetItems[subindex].FSCORINGFORMULA
-        }
-        if (selectedScoringFormula && selectedScoringFormula.id) {
-            _selectedVal['BaseInfo.id'] = selectedScoringFormula.id;
-            _selectedVal['BaseInfo.name'] = selectedScoringFormula.name;
-        }
-        scoringFormulaObj['selectedVal'] = _selectedVal;
-
-        //初始化业绩指标
-        var _isUnited = isUnited;
-        if(pageType == 2) {
-            //绩效工作台-我的目标跳转-屏蔽编辑功能
-            _isUnited = 1;
-        }
-        initAchivementTargeEven(_isUnited ,
-            hrOrgUnit ,
-            scoringFormulaObj ,
-            qualiOrRationObj ,
-            isVisibleObj ,
-            planedDateObj ,
-            updateDateObj ,
-            unitObj,
-            rejectionObj,
-            actualCompleteTimeObj,
-            completeTimeObj,
-            targetValObj  //增加目标值
-        );
-        // 开放计划完成时间
-        var $tag = $('input[id="'+ planedDateObj.tagId +'"]');
-        $tag.shrDateTimePicker('enable');
-
-        //yien 增加否决项勾选事件
-        var weightId = "FWEIGHT";
-        if (scoringWay==1){
-            weightId = "FTARSCORE";
-        }
-        initRejectionChangedEvent(rejectionObj.tagId , weightId ,qualiOrRationObj.tagId);
-        that.inputFieldLenListener();
-
-        if(isUnited != 1 && pageType != 2){
-            // 实际完成值、实际完成时间、实际完成情况说明不可编辑
-            $('#FACTUALCOMPLEVALUE,#FACTUALCOMPLETEDESC').attr('disabled', true);
-            $('#FACTUALCOMPLETETIME').shrDateTimePicker('disable');
-        }
-
-        $('input[field-type="Select"]').each(function(){
-            var options = JSON.parse(decodeURIComponent($(this).attr('select-options')));
-            var targetOptions = [];
-            options.forEach(function(option){
-                targetOptions.push({
-                    alias: option.key,
-                    value: option.value
-                })
-            })
-            $(this).shrSelect({
-                'id': this.id,
-                'data':targetOptions,	//选项
-                'value': this.value,	//默认选中项
-                'onChange':function(){}
-            });
-        })
-        $('input[field-type="Date"],input[field-type="Time"],input[field-type="TimeStamp"]').each(function(){
-            $(this).shrDateTimePicker({
-                ctrlType: $(this).attr('field-type'),
-                isShowUTC: false,
-                validate: $(this).attr('data-isrequired') === '1' ? 'required:true' : ''
-                // value: this.value
-            })
-            $(this).shrDateTimePicker('setValue',this.value)
-        })
-        $('input[field-type="Boolean"]').shrCheckbox();
-        var fquali = $("#FQUALIORRATION").shrSelect("getValue");//定性定量
-        // if(fquali && fquali.value == 0){
-        //     $("#FTARGETVALUE").attr({'disabled':'disabled'});
-        // }
-    },
-
-    /**
-     * 重新设置左侧指标名称和权重,这样指标右侧区域已填写名称和权重但还未保存也可以显示在左侧了
-     * @param indicatorVal
-     */
-    setRealNameAndWeightForLeftItems : function(indicatorVal) {
-        //获取对应右侧区域的指标名称和权重
-        var divId = indicatorVal+"Itag0";
-        var $rightItem = $("div[id='" +divId+ "']");
-        var name = $rightItem.find('input[fname="FNAME"]').val();
-        var weight = $rightItem.find('input[fname="FWEIGHT"]').val();
-        var tarscore = $rightItem.find('input[fname="FTARSCORE"]').val();
-        $("li[numval='" +indicatorVal+ "']").find("div[name='liName']").text(name);
-        if (weight == undefined && tarscore != undefined) {
-            weight = tarscore;
-        }
-        if (weight) {
-            var liWeightObj = $("li[numval='" +indicatorVal+ "']").find("div[name='liWeight']");
-            if (scoringWay==1){
-                liWeightObj.text(shr.formatMsg(jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_18,[weight]));
-            }else {
-                liWeightObj.text(shr.formatMsg(jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_67,[weight]));
-            }
-            liWeightObj.attr("weight",weight);
-        }
-    },
-
-    judgeVal: function(e){
-        //由于F7无法捕捉焦点失去事件,不在这里校验空值问题,在必填必填那里统一校验
-        //PBG174716 目标审批页面,添加指标,指标类型为空点击保存,提示语之后把指标类型写上,保存按钮点了 没反应
-        if($(e).attr('ctrlrole') == 'promptBox') {
-            return;
-        }
-        var name = e.name;
-        var fieldVal = $(e).val();
-        var errowmsg = $('.errowmsg[for="'+name+'"]');
-        var fieldType = $(e).attr('field-type');
-        var fieldTypeConfig = $(e).attr('field-type-config');
-        // 权重校验、目标分值
-        if(name == 'FWEIGHT' || name == 'FTARSCORE'){
-            if(!isNumberVerify(fieldVal)){
-                // PBG172978 进去填报页面,先不输入指标 直接点击指标类型 ,搜索框输入不了
-                // $(e).focus();
-                errowmsg.text(jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_52);
-                $(e).val('');
-                errowmsg.show();
-                isValite=false;//校验不通过
-            }else{
-                //转换成数字类型,防止权重输入第一个数字为0的情况出现 yien_fan
-                if(fieldVal != '') {
-                    fieldVal = Number(fieldVal);
-                }
-                $(e).val(fieldVal);
-                errowmsg.hide();
-            }
-        }else if(name == 'FCOMPLETETIME' || name == 'FPLANEDDATE'){ //校验完成时间、计划完成日期
-            var dateReg = /^(\d{4})-(\d{2})-(\d{2})$/;
-            fieldVal = $('#'+name).shrDateTimePicker('getValue')
-            if(isEmpty(fieldVal) || !fieldVal.match(dateReg) || !(new Date(fieldVal).getDate()==fieldVal.substring(fieldVal.length-2))){
-                errowmsg.text(jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_57);
-                errowmsg.show();
-                isValite=false;//校验不通过
-            }else{
-                errowmsg.hide();
-                isValite=true;//校验不通过
-            }
-        }else if(name == 'FTARGETVALUE'){  //校验目标值
-            //补丁10 是否必填-yien
-            var _isRequired = $(e).data('isrequired');
-            var _isDisabled = $(e).attr('disabled');
-            var qualiorration = $('#FQUALIORRATION').shrSelect('getValue').value;
-            if((!isNumberVerify(fieldVal , 2) && qualiorration == '1') || (_isRequired == '1' && _isDisabled != 'disabled' && isEmpty(fieldVal))){
-                // $(e).focus();
-               // errowmsg.text("请输入数字且最多不超过十位小数!");
-                errowmsg.text(jsBizMultLan.perfweb_achivementDataList_20220818ht_01);
-                errowmsg.show();
-                isValite=false;//校验不通过
-            }else{
-                //转换成数字类型,防止权重输入第一个数字为0的情况出现 yien_fan
-                if(fieldVal != '' && qualiorration == '1') {
-                    fieldVal = Number(fieldVal);
-                }
-                
-                $(e).val(fieldVal);
-                errowmsg.hide();
-                isValite=true;//校验不通过
-            }
-        }else if(fieldType == 'Number'){
-            if(name.indexOf("FEXTEND") === 0){
-                isValite = !isNumberVerify(fieldVal,2);
-               // errowmsg.text("请输入数字且最多不超过十位小数!");
-                errowmsg.text( jsBizMultLan.perfweb_achivementDataList_20220818ht_01);
-            }else{
-                errowmsg.text(jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_52);
-                isValite = !isNumberVerify(fieldVal);
-            }
-            if(isValite){
-                errowmsg.show();
-            }else{
-                // $(e).val(fieldVal);
-                errowmsg.hide();
-            }
-        }else{
-            // errowmsg.hide();
-            //补丁10 是否必填-yien
-            var _isRequired = $(e).data('isrequired');
-            var _isDisabled = $(e).attr('disabled');
-            var _showName = $(e).data('showname');
-            if(_isRequired == '1' && _isDisabled != 'disabled' && isEmpty(fieldVal)){
-                // $(e).focus();
-                // errowmsg.text(_showName + '不能为空!');
-                $('.errowmsg[for="'+name+'"]').show().text(_showName+
-                    jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_5);
-                errowmsg.show();
-                isValite=false;//校验不通过
-            }else{
-                errowmsg.hide();
-                isValite=true;//校验不通过
-            }
-        }
-    },
-
-    //设置打分按钮位置
-    // setScoreBtnLocation: function(){
-    //     $('.scoreBtns').css({
-    //         'width': $('.content').innerWidth() + 'px',
-    //         'left': $('.content').offset().left + 'px'
-    //     })
-    // },
-
-    /**
-     * 保存指标事件
-     * action: submit 指标变更页面,列表模式提交前先保存
-     * @returns
-     */
-    saveTargetClick : function(action){
-        that.selfRemoteCall({
-            method : "getEvaObjTargetStatus",
-            param : {
-                evaObj : evaObj
-            },
-            async : false,
-            type:"post",
-            success : function(data) {
-                if(!data) {
-                    shr.showError({message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_30,hideAfter : 5});
-                    return false;
-                }
-                var _targetStatus = data.targetStatus;
-                //如果提交已经提交,这里还是保持原来的业务逻辑
-                if(pageType != '1' && _targetStatus == 2) {
-                    shr.showWarning({message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_22,hideAfter : 5});
-                    return false;
-                }else if(_targetStatus == 3){ //个人目标已下达
-                    shr.showWarning({message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_25,hideAfter : 5});
-                    return false;
-                }else{
-                    //必填字段校验
-                    // verifyIndicatorType(); //指标类型字段为空校验
-                    // if(!canSaveVerify()){
-                    //     return false;
-                    // }else{
-                    //     that.doSaveTarget(_targetStatus);
-                    // }
-                    // if(it.checkRequiredField()){
-                        that.doSaveTarget(_targetStatus,action);
-                    // }
-                }
-            }
-        });
-    },
-    // 校验必填字段
-    checkRequiredField: function(){
-        // 列表模式校验必填
-        if(viewType == 'list'){
-            return this.assembleTargetData();
-        }
-
-        //PBG169855
-        /**
-         * 指标描述 、指标标准没填写时,提示跟其他字段一下  输入框下面有提示语,显示是直接提示数据校验不通过,要手动点击了指标描述、指标标准框输入框下面才会又提示语
-         还有记录表的衡量标准字段
-         */
-        var requiredInput = $('#editboxDialog input.required,#editboxDialog textarea.required');
-        var flag = true;
-        for(var i = 0; i < requiredInput.length; i ++){
-            var requiredInputObj = requiredInput.eq(i);
-            var val = requiredInputObj.val();
-            var name = requiredInputObj.attr('name');
-            var disableattr = requiredInputObj.attr('disabled');
-
-            //补丁11 指标实例多语言字段改造-yien
-            if(requiredInputObj.attr('ctrlrole') == 'shrMultiLangBox') {
-                var _multiFieldValue = requiredInputObj.shrMultiLangBox('getValue');
-                val = _multiFieldValue[defaultLan];
-            }
-
-            if(!val && disableattr != 'disabled'){
-                flag = false;
-                $('.errowmsg[for="'+name+'"]').show().text(requiredInputObj.attr('showname')+
-                    jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_5);
-                // PBG172978 进去填报页面,先不输入指标 直接点击指标类型 ,搜索框输入不了
-                $('#' + name)[0].scrollIntoView(true);
-                break;
-            }
-        }
-        // if(flag){
-        //     var indType = $('#FINDECATORTYPE').shrPromptBox('getValue');
-        //     if(!indType){
-        //         flag = false;
-        //         $('.errowmsg[for="FINDECATORTYPE"]').show().text($('#FINDECATORTYPE').attr('showname')+'不能为空');
-        //     }
-        // }
-
-        //补丁10 是否必填-yien
-        //判断指标类型是否必填
-        if(flag){
-            var _indicatorType$ = $('#FINDECATORTYPE');
-            var indType = _indicatorType$.shrPromptBox('getValue');
-            var _isRequired = _indicatorType$.data('isrequired');
-            var _isDisabled = _indicatorType$.attr('disabled');
-            if(_isRequired == '1' && _isDisabled != 'disabled' && !indType){
-                flag = false;
-                $('.errowmsg[for="FINDECATORTYPE"]').show().text($('#FINDECATORTYPE').attr('showname')+
-                    jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_5);
-            }
-        }
-        return flag;
-    },
-
-    /*
-     * 保存指标数据
-     * action: submit 指标变更页面,列表模式提交前先保存
-     * */
-    doSaveTarget : function(_targetStatus,action){
-        $('.tabwrap').each(function(index,tab){
-            $('#tab'+index).jqGrid('editStop');
-        })
-        //组装数据
-        var flag =  that.assembleTargetData();
-         
-        if(!flag){
-            shr.showError({message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_75,hideAfter : 5});
-            return false;
-        }else{
-            
-                //BT1084637-强控制权重区域权重未做校验-liuzw-2018/01/19
-                //强控制权重校验
-                var checkFlag = true;
-                var currFID = $('#editboxDialog').attr('indid');
-                $('.partGrade .areaweight').each(function(){
-                    var areaControlWeight = parseFloat($(this).attr("areaControlWeight"));
-                    if (areaControlWeight) {
-                        var totalControlweight = 0;
-                        if(viewType == 'overview'){
-                            var $scoreList = $(this).closest('.areawrap').find('.indicatorwrap');
-                            if ($scoreList) {
-                                $scoreList.find('li').each(function(){
-                                    var _FID = $(this).attr('indid');
-                                    var fweight = Number($(this).find('.ind-weight').text());
-                                    
-                                    if($('#editboxDialog').is(':hidden')){
-                                        totalControlweight += fweight;
-                                    }else{
-                                        if(currFID == _FID){
-                                            totalControlweight += Number($('#FWEIGHT').val())
-                                        }else{
-                                            totalControlweight += fweight;
-                                        }
-                                    }
-                                });
-                            }
-                        }else{
-                            var areaid = $(this).closest('.areawrap').attr('areaid');
-                            var tab =  $(this).closest('.areawrap').find('.indictab').eq(0);
-                            var rows = tab.getRowData();
-                            $.each(rows,function(i,row){
-                                totalControlweight += Number(row.FWEIGHT)
-                            })
-                        }
-                        if (totalControlweight>areaControlWeight) {
-                            var area = $(this).closest('.areaname').attr('realAreaName');
-                            var text = area+
-                                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_63;
-                            if(viewType == 'list'){
-                                var dialogBoxhtml = dialogBox('succeed',
-                                    jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_2,
-                                    text,
-                                    jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_104);
-                                promptBox(dialogBoxhtml);
-                            }else{
-                                shr.showInfo({
-                                    message: text,
-                                    hideAfter: 5
-                                })
-                            }
-                            checkFlag = false;
-                            return false;
-                        }
-                    }
-                });
-                if (!checkFlag && viewType == 'list') {
-                    return;
-                }
-            
-
-            if(viewType != 'list'){
-                var indicatorLen = indicatorListObj.indicatorList.length;
-                var indicatorListBase = indicatorListObj.indicatorList;
-                for(var i=0; i<indicatorLen; i++){
-                    //BT1454284 考核目标填报--添加指标,保存不了
-                    var _evalStandard = indicatorListBase[i].EVALSTANDARD;
-                    // BT-00580949 绩效管理--绩效工作台--考核目标填报、目标变更--编辑指标,评价标准填写数字,保存js会报错
-                    if(!$.isEmptyObject(_evalStandard) && (_evalStandard+'').trim().length > 1024) {
-                        shr.showWarning({message : shr.formatMsg(
-                                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_107
-                                ,[indicatorListBase[i].NAME,1024])
-                            ,hideAfter : 5});
-                        return false;
-                    }
-                }
-            }
-            
-
-            //保存指标和记录表
-            var methodName = viewType == 'list' ? 'batchSaveTarget' : 'saveTarget';
-            var param = {
-                recordList : JSON.stringify(recordListObj),
-                indicatorList : JSON.stringify(indicatorListObj),
-                recordFieldArr : JSON.stringify(recordFieldArr),
-                indicatorFieldArr : JSON.stringify(indicatorFieldArr),
-                evaObj : evaObj,
-                billId : billId,
-                toDeleteIndicatorIds : toDeleteIndicatorIds.toString(),
-                periodId : periodId,
-                scoringWay:scoringWay,
-                encryptKeys: 'recordList,indicatorList'
-            }
-            if(viewType == 'list'){
-                param = {
-                    targetParam: JSON.stringify(targetParam),
-                    evaObj : evaObj,
-                    billId : billId,
-                    toDeleteIndicatorIds : toDeleteIndicatorIds.toString(),
-                    periodId : periodId,
-                    scoringWay:scoringWay,
-                    encryptKeys: 'targetParam'
-                }
-            }
-            that.selfRemoteCall({
-                method : methodName,
-                param : param,
-                async : false,
-                type:"post",
-                success : function(data) {
-                    //加载考核规则、考核计划、考核模式
-                    that.selfRemoteCall({
-                        method : "compositeEvaObjectData",
-                        param : {
-                            evaObj : evaObj,
-                            billId: billId
-                        },
-                        async : false,
-                        success : function(data) {
-                            if(data != null){
-                                $("li[workerid='" +evaObj+ "']").find("i[name='targetStatus']").text(data.rows.personalGoalStatusAlias);
-                                globalIndicatorData = data;
-                                it.initGoalsItems(data); //重新加载左侧区域指标列表
-                            }
-                        }
-                    });
-
-                    if(data != null && data.result == 'SUCCESS'){
-                        var totalweight = 0;
-
-                        var weightScorePrefix = jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_65;//权重或分值的名字
-                        var weightScorePostfix = "%";//权重或分值的名字
-                        if (scoringWay==1){
-                            weightScorePrefix=jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_41;
-                            weightScorePostfix=jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_16;
-                        }
-
-                        $('.partGrade .areaweight').each(function(){
-                            var sumScroreRule = $(this).attr("sumScoreRule");
-                            if(sumScroreRule != '400' && sumScroreRule != '500'){//非额外分区域才参与权重计算
-                                totalweight += parseFloat($(this).html());
-                            }
-                        })
-                        //yien 保留两位小数
-                        totalweight = Number(totalweight).toFixed(2);
-//                        if(totalweight > maxScore){
-//                            var text = shr.formatMsg(jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_94,[weightScorePrefix,maxScore + weightScorePostfix]);
-//                        }else{
-                            var text = jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_95+
-                                weightScorePrefix+ totalweight +weightScorePostfix;
-//                        }
-                        
-                        var isContinuousNew = false;
-                        if($('#continuousNew').length > 0){
-                            isContinuousNew = $('#continuousNew').shrCheckbox('getValue');  // 是否连续新增
-                        }
-                        $('#editboxDialog').dialog('close');
-                        var dialogBoxhtml = dialogBox(
-                            'succeed',
-                            jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_1,
-                            text,
-                            jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_104
-                        );
-                        if(isContinuousNew && viewType == 'overview'){
-                            it.addIndicatorAction();
-                        }else{
-                            if(action != 'submit'){ // 指标变更列表模式提交前先保存,不需弹出该弹框
-                                promptBox(dialogBoxhtml);
-                            }
-                        }
-                    }else{
-                        var dialogBoxhtml = dialogBox(
-                            'succeed',
-                            jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_2,
-                            jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_50,
-                            jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_104
-                        );
-                        promptBox(dialogBoxhtml);
-                    }
-                }
-            });
-        }
-    },
-
-    // 列表模式组装数据+校验
-    assembleTargetDataListModel: function(optionType){
-        var len = $('.tabwrap').length;
-        var flag = true;
-        var errMsg,_grid,FID,cellname,colvalue,td;
-        targetParam = [];
-        for(var i=0; i<len; i++){
-            var recordList = [], indicatorList = [], recordFieldArr = [], indicatorFieldArr = [];
-            _grid = $('#tab'+i);
-            var gridParam = _grid.getGridParam();
-            var areaType = gridParam.areaType;
-            var areaId = gridParam.areaId;
-            var areaName = gridParam.areaName;
-            var fieldList = gridParam.fieldList;
-            var indNameArr = [];
-            var data = _grid.getRowData();
-            //判断 202501
-            //第二部分:如何达成-Business leadership(至少选择一项)
-            //第二部分:如何达成-People leadership(至少选择一项)
-            //第二部分:如何达成-Self leadership(至少选择一项)
-            //如果名称areaName包含上面的字符串,则data要大于0
-            if(areaName.indexOf('Business leadership') > -1 || areaName.indexOf('People leadership') > -1 || areaName.indexOf('Self leadership') > -1){
-                if(data.length == 0 && optionType == "submit" ){
-                    flag = false;
-                    errMsg = areaName+",该区域指标为空!";
-                    shr.showWarning({
-                        message: errMsg,
-                        hideAfter: 3
-                    });
-                    break;
-                }
-            }
-            for(var j=0; j<data.length; j++){
-                FID = data[j]['id'];
-                var indData = {};
-                data[j]['FID'] = data[j]['id'];
-                for(var key in data[j]){
-                    if(key == 'otherMsg' || key == 'operateBtn' || key == 'id'){
-                        continue;
-                    }
-                    var colAttr = _grid.getColProp(key);
-                    var classes = colAttr.classes;
-                    var showName = colAttr.showName;
-                    var fieldType = colAttr.fieldType;
-                    td = _grid.find('tr[id="'+FID+'"] td[aria-describedby="tab'+i+'_'+key+'"]');
-                    cellname = colAttr.name || key;
-                    colvalue = data[j][key];
-                    var realName = cellname.substr(1,cellname.length);
-                    if(typeof colvalue == 'string' && colvalue.indexOf('class="cell-height scrollbarthin"') > -1){
-                        colvalue = $(colvalue).text();
-                    }
-                    if(fieldType == 'Date' || fieldType == 'Time' || fieldType == 'TimeStamp'){
-                        colvalue = colvalue ? moment(colvalue).format('YYYY-MM-DD HH:mm:ss') : '';
-                    }
-                    // 校验必填
-                    if(classes && classes.indexOf('required') > -1 && !colvalue && colAttr.editable && !td.hasClass('not-editable-cell') && optionType == "submit"){
-                        errMsg = shr.formatMsg(jsBizMultLan.perfweb_perfgoalsfill_20221201_i18n_01, [showName]);
-                        flag = false;
-                        break;
-                    }
-                    // 组装值
-                    if(cellname.indexOf('Multi') > -1){ // 多语言字段
-                        realName = cellname.substr(1,cellname.length-6);
-                        colvalue = shr.allDecrypt(colvalue);
-                        colvalue = colvalue ? JSON.parse(colvalue) : {l1: '', l2: '', l3: ''};
-                        if(isUseMultiLan){
-                            indData[realName+'_L1'] = colvalue.l1;
-                            indData[realName+'_L2'] = colvalue.l2;
-                            indData[realName+'_L3'] = colvalue.l3;
-                        }else{
-                            indData[realName+'_L2'] = indData[realName]
-                        }
-                    }else{
-                        indData[realName] = typeof colvalue == 'object' && colvalue.id ? colvalue.id : colvalue;
-                    }
-
-                    if(j == 0){
-                        if(areaType == '200'){
-                            if(cellname.indexOf('Multi') > -1){
-                                indNameArr.push(realName+'_L1');
-                                indNameArr.push(realName+'_L2');
-                                indNameArr.push(realName+'_L3');
-                            }else{
-                                if(realName != "ISUNITED"){
-                                    indNameArr.push(realName)
-                                }
-                            }
-                        }else{
-                            if(cellname.indexOf('Multi') > -1){
-                                cellname = cellname.substr(0,cellname.length-5);
-                                indNameArr.push(cellname+'_L1');
-                                indNameArr.push(cellname+'_L2');
-                                indNameArr.push(cellname+'_L3');
-                            }else{
-                                if(realName != "ISUNITED"){
-                                    indNameArr.push(cellname)
-                                }
-                            }
-                        }
-                    }
-                    
-                }
-                if(!flag &&  optionType == "submit"){
-                    break;
-                }
-                indicatorListObj.indicatorList = [];
-                recordListObj.recordList = [];
-                if(areaType == '200'){
-                    indicatorList.push(indData);
-                    indicatorListObj.indicatorList.push(indData);
-                    indicatorFieldArr = indNameArr;
-                }else{
-                    recordList.push(indData);
-                    recordListObj.recordList.push(indData);
-                    recordFieldArr = indNameArr;
-                }
-            }
-            if(!flag  && optionType == "submit" ){
-                break;
-            }
-            targetParam.push({
-                "areaBaseId": areaId, 
-                "areaBaseName": areaName, 
-                "indicatorList": indicatorList, 
-                "indicatorFieldArr": indicatorFieldArr, 
-                "recordList": recordList, 
-                "recordFieldArr": recordFieldArr
-            })
-        }
-
-        // console.log(targetParam)
-
-        if(!flag  && optionType == "submit"){
-            $('.errorval').removeClass("errorval");
-            shr.showWarning({
-                message: errMsg,
-                hideAfter: 3
-            })
-            _grid.jqGrid('setCell', FID, cellname, colvalue, 'errorval');
-        }
-        return flag;
-    },
-
-    assembleTargetData : function(optionType){
-        if(viewType == 'list'){ // 列表模式
-             return  this.assembleTargetDataListModel(optionType);
-        }
-        //组装要保存的指标数据
-        var jsonObj = new Object();
-        var recordList = new Array(); //记录表
-        var indicatorList = new Array(); //指标表
-        // var indicatorDom = $(".scoreContentbox");  //存在将其他评估对象的指标也保存的bug
-        var indicatorDom = $("div[evaObj='"+evaObj+"']");
-        var flag = true;
-        var inputs = $('#editboxDialog input, #editboxDialog textarea');
-        var fid = $('#editboxDialog').attr('indid');
-        var areatype = $('#editboxDialog').attr('areatype');
-        var formData = {};
-        var fieldsnameArr = [];
-        formData['ID'] = fid;
-        inputs.each(function(index, item){
-            if(item.name === item.id && item.id === $(this).attr('fname')){
-                console.log(item.name);
-                var fieldVal = '';
-                var filename = item.name.substr(1,item.name.length);
-                var fieldType = $(item).attr('field-type');
-                if(areatype == 200){
-                	 fieldsnameArr.push(item.name.substr(1,item.name.length));
-                }else{
-                	 fieldsnameArr.push(item.name);
-                }
-
-                //补丁11 指标实例多语言字段改造-yien
-                var $input = $('#'+item.id);
-                if($input.attr('ctrlrole') == 'shrMultiLangBox') {
-                    var _multiFieldValue = $input.shrMultiLangBox('getValue');
-                    //BT1454500 考核目标填报--记录表区域添加指标保存不了
-                    //多语言组件获取显示undefined,重设为空
-                    fieldVal = _multiFieldValue[defaultLan] == undefined ? '' : _multiFieldValue[defaultLan];
-                    formData[filename+'_L1'] = _multiFieldValue['l1'];
-                    formData[filename+'_L2'] = _multiFieldValue['l2'];
-                    formData[filename+'_L3'] = _multiFieldValue['l3'];
-
-                    var _name;
-                    if(areatype == 200){
-                        _name = item.name.substr(1,item.name.length);
-                    }else{
-                        _name = item.name;
-                    }
-                    fieldsnameArr.push(_name+"_L1");
-                    fieldsnameArr.push(_name+"_L2");
-                    fieldsnameArr.push(_name+"_L3");
-                }
-
-                //处理本地不开启多语言的情况-yien
-                if(multiFields.indexOf(item.id) > -1) {
-                    formData[filename+'_'+defaultLan.toUpperCase()] = $input.val();
-                    var _name;
-                    if(areatype == 200){
-                        _name = item.name.substr(1,item.name.length);
-                    }else{
-                        _name = item.name;
-                    }
-                    fieldsnameArr.push(_name+'_'+defaultLan.toUpperCase());
-                }
-
-
-                if(item.id == 'FREJECTION'){
-                    $('#'+item.name).shrCheckbox('getValue');
-                    fieldVal = $input.shrCheckbox('getValue') ? 1 : 0;
-                    formData[filename] = fieldVal;
-                }else if($(this).attr('ctrlrole') == 'promptBox'){
-                    fieldVal = $input.shrPromptBox('getValue');
-                    formData[filename] = fieldVal? fieldVal.id : '';
-                }else if($(this).attr('ctrlrole') == 'select'){
-                    fieldVal = $input.shrSelect('getValue').value;
-                    formData[filename] = fieldVal;
-                }else if($(this).attr('ctrlrole') == 'checkbox'){
-                    fieldVal = $(item).shrCheckbox('isSelected') ? 1 : 0;
-                    formData[filename] = fieldVal;
-                }else if(item.id == 'FWEIGHT'&& $input.val()){
-                    fieldVal = $input.val();
-                    if(!isNumberVerify(fieldVal)) {
-                		flag =false;
-                	}else if(parseFloat(fieldVal.trim()).toFixed(2) > 999999999.99){
-                		flag =false;
-                	}
-                    formData[filename] = parseFloat(fieldVal.trim()).toFixed(2);
-                }else if(item.id == 'FTARGETVALUE' && $input.val()){
-                    fieldVal = $input.val();
-                    var targetVal = '';
-                    var qualiorration = $('#FQUALIORRATION').shrSelect('getValue').value;
-                    if(qualiorration == '1'){
-                        if(!isNumberVerify(fieldVal,2)){
-                            flag =false;
-                            //$('.errowmsg[for="FTARGETVALUE"]').show().text("请输入数字且最多不超过十位小数!");
-                            $('.errowmsg[for="FTARGETVALUE"]').show().text(jsBizMultLan.perfweb_achivementDataList_20220818ht_01);
-                        }
-                        targetVal = fieldVal;
-                    }else{
-                        if(fieldVal.length > 255){
-                            flag = false;
-                            targetVal = fieldVal.substr(0,255);
-                        }else{
-                            targetVal = fieldVal;
-                        }
-                    }
-                    formData[filename] = targetVal;
-                }else if(fieldType == 'Number' && $input.val()){
-                    fieldVal = $input.val();
-                    if(filename.indexOf('EXTEND') === 0){
-                        flag = isNumberVerify(fieldVal,2);
-                    }else{
-                        flag = isNumberVerify(fieldVal)
-                    }
-                    formData[filename] = fieldVal;
-                }else if(item.type == 'textarea'){
-                    //补丁11 指标实例多语言字段改造-yien
-                    if(fieldVal == '') {
-                        fieldVal = $input.val();
-                    }
-                    formData[filename] = fieldVal;
-                }else{
-                    //补丁11 指标实例多语言字段改造-yien
-                    if(fieldVal == '') {
-                        fieldVal = $input.val().trim();
-                        if($(this).attr('ctrlrole') == 'datetimepicker'){
-                            fieldVal =  fieldVal ? moment(fieldVal).format('YYYY-MM-DD HH:mm:ss') : '';
-                        }
-                    }
-                    if(filename == 'NUMBER'){
-                		if(fieldVal && fieldVal.length > 80){
-                			formData[filename] = fieldVal.substr(0,80);
-                		}else{
-                			formData[filename] = fieldVal;
-                		}
-                	}if(filename == 'NAME'){
-                		if(fieldVal && fieldVal.length > 255){
-                			formData[filename] = fieldVal.substr(0,255);
-                		}else{
-                			formData[filename] = fieldVal;
-                		}
-                	}else{
-                		if(filename == 'REMA' || filename == 'MILESTONE' ){
-                			if( fieldVal.length > 1024){
-                				formData[filename] = fieldVal.substr(0,1023);
-                			}else{
-                				formData[filename] = fieldVal;
-                			}
-
-                		}else{
-                			formData[filename] = fieldVal;
-                		}
-
-                	}
-
-                }
-            }
-
-            //补丁10 字段必填-yine
-            if(flag) {
-                var _$this = $(this);
-                var _isRequired = _$this.data('isrequired');
-                var _isDisabled = _$this.attr('disabled');
-                if(_isRequired == '1' && _isDisabled != 'disabled' && isEmpty(fieldVal)) {
-                    flag = false;
-                }
-            }
-        });
-        indicatorListObj.indicatorList = [];
-        recordListObj.recordList = [];
-        if(areatype == 200){
-            indicatorListObj.indicatorList.push(formData);
-            indicatorFieldArr = fieldsnameArr;
-        }else{
-            recordListObj.recordList.push(formData);
-            recordFieldArr = fieldsnameArr;
-        }
-        return flag;
-    },
-    /**
-     * 删除一条指标
-     */
-    delgoal : function(e, type,ids,delIndiMsg){
-        if(type == 'addnew'){   // 新增指标未保存编辑,取消时直接删除
-            it.calldeleteIndicatorOrRecord(e, 'addnew');
-        }else{
-            shr.showConfirm(jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_44, function() {
-                //增加安全校验
-                if(typeof top.Messenger == "function") {
-                    top.Messenger().hideAll();
-                }
-                if(viewType == 'list'){
-                    it.calldelIndicatorListModel(ids,delIndiMsg);
-                }else{
-                    it.calldeleteIndicatorOrRecord(e);
-                }
-            });
-        }
-    },
-    // 列表模式删除指标
-    calldelIndicatorListModel: function(ids,delIndiMsg){
-        var numval = ids.join(',');
-        var callback = function(data){
-            var dom = '', count_total = 0, count_success = 0, count_failure = 0;  // count_total:选中指标数量
-            $.each(delIndiMsg, function(i, item){
-                var _grid = $('#'+item.tabId);
-                $.each(item.delData, function(j,list){
-                    that.dealWidthDelId(list.id);
-                    _grid.jqGrid('delRow', list.id)
-                })
-                var areaWeightObj = _grid.closest('.areawrap').find('.partGrade .areaweight');
-                that.dealWidthAreaweight(areaWeightObj,item.delWeight);
-                count_success += item.delInNameArr.length;
-                count_failure += item.notDelArr.length;
-            })
-            count_total = count_success + count_failure;
-            
-            if(count_total > 1){
-                var dom = juicer(delIndiMsgTpl,{rows: delIndiMsg, jsBizMultLan: jsBizMultLan, countSuccess: count_success, countFailure: count_failure})
-                $(document.body).append(dom);
-                var dialogtop = 'center';
-                var winheight = $(window.top).height();
-                var winscrolltop = $(window.top).scrollTop();
-                if(self != top){
-                    dialogtop = (winheight - ($(window).height() > 600 ? 600 : $(window).height()-20))/2 + winscrolltop - 80;
-                }
-                $("#delIndiMsgDialog").dialog({
-                    autoOpen : true,
-                    // show : "blind",
-                    width : 600,
-                    height : 450,
-                    title : jsBizMultLan.perfweb_perfgoalsfillnew_20220114yw_03,
-                    resizable : true,
-                    position : [ 'center', dialogtop ],
-                    modal : true,
-                    buttons : [{
-                        text:jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_29,
-                        click : function() {
-                            $('#delIndiMsgDialog').remove();
-                        }
-                    }],
-                    close : function(){
-                        $('#delIndiMsgDialog').remove();
-                    },
-                    open:function(event, ui){}
-                });
-            }else{
-                shr.showSuccess({
-                    message: jsBizMultLan.perfweb_perfgoalsfillnew_20220117yw_01,    // 指标删除成功
-                    hideAfter: 3
-                })
-            }
-            
-
-            // shr.showInfo({
-            //     message: dom,
-            //     hideAfter: Math.ceil(count / 3) * 5,
-            //     showCloseButton: true
-            // })
-        }
-        that.doDeleteIndicatorOrRecord(numval,callback);
-    },
-    // 执行删除指标方法
-    calldeleteIndicatorOrRecord: function(e, type){
-        var parent = $(e).closest('li');
-        var areawrap = parent.closest('.areawrap');
-        var numval = parent.attr("indid");
-        var index = areawrap.index();
-        var subindex = parent.index();
-        var deleteWeight,areaWeightObj;
-        deleteWeight = evaAreaListGlobal[index].targetItems[subindex].FWEIGHT ||evaAreaListGlobal[index].targetItems[subindex].FTARSCORE;
-        areaWeightObj = areawrap.find('.partGrade .areaweight');
-        
-        var callback = function(data){
-            that.dealWidthDelId(numval);
-            if(type != 'addnew'){
-                shr.showInfo({message : data.msg,hideAfter : 5});
-            }
-            parent.remove();
-            that.dealWidthAreaweight(areaWeightObj,deleteWeight);
-        }
-        that.doDeleteIndicatorOrRecord(numval,callback);
-    },
-    // 删除指标后指标id处理
-    dealWidthDelId: function(numval){
-        for(var i=0; i<_noPassVerifyArr.length; i++){
-            if(_noPassVerifyArr[i].indicator == numval){
-                _noPassVerifyArr.splice(i,1);
-            }
-        }
-
-        if(!isExistInArr(numval,toDeleteIndicatorIds)){
-            toDeleteIndicatorIds.push(numval);
-        }
-    },
-    // 删除指标后重新计算区域权重并赋值
-    dealWidthAreaweight: function(areaWeightObj,deleteWeight){
-        var areaWeight = areaWeightObj.attr("areaweight");
-        if(deleteWeight){
-            var lastWeight = parseFloat(areaWeight) - parseFloat(deleteWeight);
-            //yien 保留两位小数点
-            lastWeight = Number(lastWeight).toFixed(2);
-            areaWeightObj.text(lastWeight);
-            areaWeightObj.attr("areaweight",lastWeight);
-        }
-    },
-    // 执行删除操作
-    doDeleteIndicatorOrRecord: function(numval,callback){
-        that.selfRemoteCall({
-            method : "deleteIndicatorOrRecord",
-            param : {
-                todeleteId : numval,
-                evaObj : evaObj,
-                billId: billId,
-            },
-            async : false,
-            success : function(data) {
-                if(data != null && data.result == '200'){
-                    callback(data);
-                }else{
-                    shr.showError({message : data.msg,hideAfter : 5});
-                }
-            }
-        });
-    },
-    /**
-     * 添加绩效指标
-     */
-    addIndicatorAction: function(){
-        it.addPerformanceIndicators('add');
-    },
-    // 引用绩效指标
-    referenceIndicatorAction: function(){
-        it.addPerformanceIndicators('ref');
-    },
-    /**
-     * 引用绩效指标库通过权限控制
-     */
-    hideReferencePI: function () {
-        $("#referencePI_hidden").hide();
-        if (!$("#referencePI_hidden").length > 0) {
-            $("#referencePI").hide();
-        }
-    },
-    // 状态判断
-    callGetEvaObjTargetStatusService: function(callback){
-        that.selfRemoteCall({
-            method : "getEvaObjTargetStatus",
-            param : {
-                evaObj : evaObj
-            },
-            async : false,
-            type:"post",
-            success : function(data) {
-                callback(data);
-            }
-        });
-    },
-    // 获取新增指标FID
-    callAddIndicatorForAreaService: function(areaId, areaType, ways, callback){
-        //后台保存指标到指定区域
-        that.selfRemoteCall({
-            method : "addIndicatorForArea",
-            param : {
-                periodId : periodId,
-                indicatorCount : 1,
-                personId : personId,
-                areaId : areaId,
-                areaType : areaType,
-                evaObj : evaObj,
-                buttonName: ways
-            },
-            async : false,
-            success : function(data) {
-                if(data != null && data.result != null && data.result.length>0){
-                    // shr.showInfo({message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_78,hideAfter : 5});
-                    var newIndicatorFID = data.result[0];
-                    callback(newIndicatorFID);
-                }
-            }
-        });
-    },
-    // 列表模式新增指标
-    addNewIndiForListModel: function(areaId, areaType, ways){
-        var callback = function(FID){
-            that.callCompositeEvaObjectDataService(function(){
-                that.addIndicatorListModel(FID,areaId);
-            })
-        }
-        that.callAddIndicatorForAreaService(areaId, areaType, ways, callback);
-    },
-    //加载考核规则、考核计划、考核模式
-    callCompositeEvaObjectDataService: function(callback){
-        that.selfRemoteCall({
-            method : "compositeEvaObjectData",
-            param : {
-                evaObj : evaObj,
-                billId: billId
-            },
-            async : false,
-            success : function(data) {
-                if(data != null){
-                    globalIndicatorData = data;
-                    data = that.dealEmptyIndicatoName(data);
-                    callback(data)
-                }
-            }
-        });
-    },
-    /**
-     * 添加绩效指标优化
-     * ways: addIndicator,新建指标
-     * ways: referenceIndicator,引用指标
-     */
-    addIndicatorsNew: function(e, areaId, areaType, ways, areaIndex){
-        var callback = function(data){
-            if(!data) {
-                shr.showError({message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_30,hideAfter : 5});
-                return false;
-            }
-            var _targetStatus = data.targetStatus;
-            //如果是团队目标下达,则提交的目标也支持继续添加指标
-            if(pageType != '1' && _targetStatus == 2){  //个人目标已提交
-                shr.showWarning({message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_21,hideAfter : 5});
-                return false;
-            }else if(_targetStatus == 3){               //个人目标已下达
-                shr.showWarning({message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_24,hideAfter : 5});
-                return false;
-            }else{
-                if(ways == 'addIndicator'){             //新建指标
-                    if(viewType == 'list'){
-                        that.addNewIndiForListModel(areaId, areaType, ways);
-                    }else{  //概览模式新增指标
-                        // that.addNewIndiForOverviewModel(areaId, areaType, ways, areaIndex);
-                        that.initEditBoxDialog(areaIndex, '', 'addNew')
-                    }
-                }
-                if(ways == 'referenceIndicator'){       //引用指标
-                    that.refIndicatorNew(areaId, areaType, ways);
-                }
-            }
-        }
-        this.callGetEvaObjTargetStatusService(callback);
-    },
-    //引用指标
-    refIndicatorNew: function(areaId, areaType, ways){
-        var callback = function(isRefTarget,_this,addIndicatorType, areaId, areaType){
-            //获取已选指标库的指标id
-            indicatorSelectedIds = [];
-            var indicatorRows = $("#PIselected").jqGrid('getRowData');
-            for(var j=0,len=indicatorRows.length; j<len; j++) {
-                if(typeof indicatorRows[j].id != "undefined" && indicatorRows[j].id) {
-                    indicatorSelectedIds.push(indicatorRows[j].id);
-                }
-            }
-
-            if(indicatorSelectedIds.length<1){
-                shr.showWarning({message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_61,hideAfter : 5});
-                return false;
-            }
-            it.calladdIndicatorByReferenceService(isRefTarget,indicatorSelectedIds,areaId);
-            $(_this).dialog('close');
-        }
-        it.initReferenceInditorsDialog(callback, areaId, areaType);
-    },
-    // 获取引用指标FID
-    calladdIndicatorByReferenceService: function(isRefTarget,indicatorSelectedIds,areaId){
-        that.selfRemoteCall({
-            method : "addIndicatorByReference",
-            param : {
-                selectedIds : indicatorSelectedIds.toString(),
-                period : periodId,
-                areaId : areaId,
-                evaObj : evaObj,
-                personId : personId,
-                isRefTarget: isRefTarget
-            },
-            async : false,
-            success : function(data) {
-                if(data != null && data.result == 'OK'){
-                    var toClickIndicator = data.successIds[0];
-                    shr.showInfo({message : $.perfwebI18n.commonMsg.msg2,hideAfter : 5});
-                    that.callCompositeEvaObjectDataService(function(data){
-                        that.initGoalsItems(data);
-                    })
-                }
-            }
-        });
-    },
-    /**
-     * 添加绩效指标
-     * ways: add,新建指标
-     * ways: ref,引用指标
-     */
-    addPerformanceIndicators : function(ways){
-        //判断指标是否已提交
-        that.selfRemoteCall({
-            method : "getEvaObjTargetStatus",
-            param : {
-                evaObj : evaObj
-            },
-            async : false,
-            type:"post",
-            success : function(data) {
-                if(!data) {
-                    shr.showError({message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_30,hideAfter : 5});
-                    return false;
-                }
-                var _targetStatus = data.targetStatus;
-                //如果是团队目标下达,则提交的目标也支持继续添加指标
-                if(pageType != '1' && _targetStatus == 2){ //个人目标已提交
-                    shr.showWarning({message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_21,hideAfter : 5});
-                    return false;
-                }else if(_targetStatus == 3){ //个人目标已下达
-                    shr.showWarning({message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_24,hideAfter : 5});
-                    return false;
-                }else{
-                    //指标复制和引用
-                    var btnComfirmFunc = function(isRefTarget,_this,addIndicatorType){
-                        if(typeof isRefTarget == 'undefined') {
-                            isRefTarget = '0';
-                        }
-
-                        //新建指标
-                        if(addIndicatorType == '1'){
-                            var indicatorCount = 1; //添加指标数量
-                            var index = $("li[class='partlistselect']").index();
-                            var areaId = $(".partplist").find("li[class='partlistselect']").find(".partnumber_1").attr("areaid"); //要添加指标的区域id
-                            var areaType = $(".partplist").find("li[class='partlistselect']").find(".partnumber_1").attr("areaType"); //区域类型
-
-                            if(areaId == '' || areaId == undefined){
-                                shr.showWarning({message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_49,hideAfter : 5});
-                                return;
-                            }
-
-                            var g = /^[1-9]*[1-9][0-9]*$/;
-                            if(!g.test(indicatorCount) || parseInt(indicatorCount) > 10){
-                                shr.showWarning({message : shr.formatMsg(jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_56,[10]),hideAfter : 5});
-                                return;
-                            }
-                            //后台保存指标到指定区域
-                            that.selfRemoteCall({
-                                method : "addIndicatorForArea",
-                                param : {
-                                    periodId : periodId,
-                                    indicatorCount : indicatorCount,
-                                    personId : personId,
-                                    areaId : areaId,
-                                    areaType : areaType,
-                                    evaObj : evaObj,
-                                    buttonName: ways == 'ref' ? 'referenceIndicator' : 'addIndicator'
-                                },
-                                async : false,
-                                success : function(data) {
-                                    if(data != null && data.result != null && data.result.length>0){
-                                        // shr.showInfo({message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_78,hideAfter : 5});
-                                        var toClickIndicator = data.result[0];
-                                        //加载考核规则、考核计划、考核模式
-                                        that.selfRemoteCall({
-                                            method : "compositeEvaObjectData",
-                                            param : {
-                                                evaObj : evaObj,
-                                                billId: billId
-                                            },
-                                            async : false,
-                                            success : function(data) {
-                                                if(data != null){
-                                                    globalIndicatorData = data;
-                                                    data = that.dealEmptyIndicatoName(data);
-                                                    if(viewType == 'list'){
-                                                        that.addIndicatorListModel(toClickIndicator,areaId);
-                                                    }else{
-                                                        that.initGoalsItems(data); //重新生成左侧指标列表
-                                                    }
-                                                    
-                                                    //that.initTargetWorkflowDialog();
-                                                    // BT1464028 用一个空白的目标表单 先引用已有指标,再添加指标--指标弹框显示是最后一个指标内容
-                                                    // var subindex = evaAreaListGlobal[index].targetItems.length - 1;
-                                                    // it.initEditBoxDialog(index,subindex,'addNew');
-                                                }
-                                            }
-                                        });
-                                        if(viewType == 'overview'){
-                                            // $("li[numval='"+toClickIndicator+ "']").click();
-                                            // BT1464028 用一个空白的目标表单 先引用已有指标,再添加指标--指标弹框显示是最后一个指标内容
-                                            var targetBtnObj = $('div[indid="'+toClickIndicator+'"]:first').find('span[class="editbtn"]:first');
-                                            //BT1464430  点击添加指标,出现添加指标弹框,没有点击保存按钮,点击取消 ,表单还是多了一条空白指标
-                                            var clkfun = targetBtnObj.attr('onClick');
-                                            clkfun = clkfun.replace(')',',\'addNew\')');
-                                            targetBtnObj.attr('onClick',clkfun);
-                                            targetBtnObj.click();
-                                        }
-                                    }
-                                }
-                            });
-                            $(_this).dialog('close');
-                        }else if(addIndicatorType == '2'){//引用绩效指标库
-                            var areaId  = $(".partplist_1").find("li[class='partlistselect_1']").find(".partnumber_1").attr("areaid"); //要添加指标的区域id
-                            var areaType = $(".partplist_1").find("li[class='partlistselect_1']").find(".partnumber_1").attr("areaType"); //区域类型
-                            if(areaId == '' || areaId == null || areaId == undefined){
-                                shr.showWarning({message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_60,hideAfter : 5});
-                                return false;
-                            }
-
-                            //获取已选指标库的指标id
-                            indicatorSelectedIds = [];
-                            var indicatorRows = $("#PIselected").jqGrid('getRowData');
-                            for(var j=0,len=indicatorRows.length; j<len; j++) {
-                                if(typeof indicatorRows[j].id != "undefined" && indicatorRows[j].id) {
-                                    indicatorSelectedIds.push(indicatorRows[j].id);
-                                }
-                            }
-
-                            if(indicatorSelectedIds.length<1){
-                                shr.showWarning({message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_61,hideAfter : 5});
-                                return false;
-                            }
-                            that.selfRemoteCall({
-                                method : "addIndicatorByReference",
-                                param : {
-                                    selectedIds : indicatorSelectedIds.toString(),
-                                    period : periodId,
-                                    areaId : areaId,
-                                    evaObj : evaObj,
-                                    personId : personId,
-                                    isRefTarget: isRefTarget
-                                },
-                                async : false,
-                                success : function(data) {
-                                    if(data != null && data.result == 'OK'){
-                                        var toClickIndicator = data.successIds[0];
-                                        shr.showInfo({message : $.perfwebI18n.commonMsg.msg2,hideAfter : 5});
-
-                                        //加载考核规则、考核计划、考核模式
-                                        that.selfRemoteCall({
-                                            method : "compositeEvaObjectData",
-                                            param : {
-                                                evaObj : evaObj,
-                                                billId: billId
-                                            },
-                                            async : false,
-                                            success : function(data) {
-                                                if(data != null){
-                                                    globalIndicatorData = data;
-                                                    data = that.dealEmptyIndicatoName(data);
-                                                    that.initGoalsItems(data); //重新生成左侧指标列表
-                                                    //that.initTargetWorkflowDialog();
-                                                }
-                                            }
-                                        });
-                                        //BT1355334 个人目标添加--引用指标--引用指标时位到引用的指标
-                                        // $("li[numval='"+toClickIndicator+ "']").click();
-                                    }
-                                }
-                            });
-                            $(_this).dialog('close');
-                        }
-                    };
-                    if(ways == 'add'){
-                        it.initAddInditorsDialog(btnComfirmFunc);
-                    }else if(ways == 'ref'){
-                        it.initReferenceInditorsDialog(btnComfirmFunc);
-                    }
-
-                }
-            }
-        });
-    },
-    // 列表模式添加指标
-    addIndicatorListModel: function(FID, areaId){
-        var evaAreaList = globalIndicatorData.rows.evaAreaList;
-        var  newIndi = {}, _grid;
-        for(var i=0; i<evaAreaList.length; i++){
-            if(evaAreaList[i].areaId == areaId){
-                var indiList = evaAreaList[i].evaIndicatorList || evaAreaList[i].evaRecordList;
-                _grid = $('#tab'+i)
-                for(var j=0; j<indiList.length; j++){
-                    if(indiList[j].FID == FID){
-                        newIndi = indiList[j];
-                        newIndi.id = FID;
-                        break;
-                    }
-                }
-                newIndi.otherMsg = {};
-                newIndi.otherMsg.fieldList = evaAreaList[i].fieldList;
-                break;
-            }
-        }
-        _grid.jqGrid("addRowData",FID,newIndi,"last");
-        that.getDisableField(newIndi,_grid);
-
-        // 页面滚动条位置
-        var scrollT = _grid.offset().top - $('.evaluation').offset().top;
-        $(window).scrollTop(scrollT);
-        // 表格滚动条位置
-        var tHeight = _grid.height();
-        _grid.closest('.ui-jqgrid-bdiv').scrollTop(tHeight);
-    },
-    // 新建绩效指标弹框
-    initAddInditorsDialog: function(btnComfirmFunc){
-        var addNewIndicatorsTpl = document.getElementById('addNewIndicatorsTpl').innerHTML;
-        globalIndicatorData.jsBizMultLan = jsBizMultLan;
-        var addNewIndicatorsHTML = juicer(addNewIndicatorsTpl, globalIndicatorData);
-        $(document.body).append(addNewIndicatorsHTML);
-        $("#addPerfIndicatorsDialog").dialog({
-            autoOpen : true,
-            show : "blind",
-            //BT1408064 绩效工作台--流程审批下达时引用指标这个框太大了,屏幕小的看不到按钮
-            width : $(window).width()>800?800:$(window).width()-6,
-            height : $(window).height()>455?455:$(window).height()-6,
-            title : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_77,
-            resizable : false,
-            position : [ 'center', pageType == 2 ? 150 : 'center' ],
-            modal : true,
-            buttons: [
-                {
-                    id: 'dlg_confirm_btn',
-                    text: jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_70,
-                    click: function() {
-                        btnComfirmFunc('0',this,'1');
-                    }
-                },
-                {
-                    id: 'dlg_cancel_btn',
-                    text: jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_64,
-                    click: function() {
-                        $(this).dialog('close',this,'1');
-                    }
-                }
-            ],
-            close : function(){
-                $('#addPerfIndicatorsDialog').remove();
-                //BT1363381 动态计算区域权重
-                calcAndSetCurAreaWeight();
-            }
-        });
-        it.selectAddPart('partplist','partlistselect');
-    },
-    // 引用绩效指标弹框
-    // 新逻辑新增传参areaId, areaType,旧逻辑没有
-    initReferenceInditorsDialog: function(btnComfirmFunc, areaId, areaType){
-        var referenceIndicatorsTpl = document.getElementById('referenceIndicatorsTpl').innerHTML;
-        globalIndicatorData.jsBizMultLan = jsBizMultLan;
-        if(areaId){
-            globalIndicatorData.currAreaType = areaType;
-        }else{
-            globalIndicatorData.currAreaType = '';
-        }
-        //二开,过滤指标; 202501
-        let ardiv = document.querySelector("div[areaid='" + areaId + "']");
-        let arspan = ardiv.querySelector(".areaname-text");
-        let areaNameStr = arspan.textContent;
-
-        var referenceIndiHTML = juicer(referenceIndicatorsTpl, globalIndicatorData);
-        $(document.body).append(referenceIndiHTML);
-        $('#PIall').closest('.recordtab').prepend(page('indicator'));
-        $('#PIselected').closest('.recordtab').prepend(page('indicatorSelected'));
-        $('#existingPIall').closest('.recordtab').prepend(page('hadIndicator'));
-        $('#existingPIall_2').closest('.recordtab').prepend(page('hadIndicator_2'));
-        // that.hideReferencePI();
-        $("#addPerfIndicatorsDialog").dialog({
-            autoOpen : true,
-            show : "blind",
-            // width : isShrBill ? 800 : (pageType==2 ? 900 : 1100),
-            // height : isShrBill ? 455 : 555,
-            // BT1408064 绩效工作台--流程审批下达时引用指标这个框太大了,屏幕小的看不到按钮
-            width : $(window).width()>1100?1100:$(window).width()-6,
-            height : $(window).height()>555?555:$(window).height()-6,
-            title : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_99,
-            resizable : false,
-            position : [ 'center', pageType == 2 ? 150 : 'center' ],
-            modal : true,
-            buttons: [
-                {
-                    id: 'dlg_reference_btn',
-                    text: jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_98,
-                    click: function() {
-                        btnComfirmFunc('1',this,'2', areaId, areaType);
-                    }
-                },
-                {
-                    id: 'dlg_copy_btn',
-                    text: jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_20,
-                    click: function() {
-                        btnComfirmFunc('0',this,'2', areaId, areaType);
-                    }
-                },
-                {
-                    id: 'dlg_cancel_btn',
-                    text: jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_64,
-                    click: function() {
-                        $(this).dialog('close',this,'2');
-                    }
-                }
-            ],
-            close : function(){
-                $('#addPerfIndicatorsDialog').remove();
-                //BT1363381 动态计算区域权重
-                calcAndSetCurAreaWeight();
-            }
-        });
-
-        //指标引用与复制
-        // // 默认为新建指标信息
-        // $('#dlg_reference_btn').hide();
-        // $('#dlg_copy_btn').hide();
-
-        var indicatorType_f7_json2 = {
-            id:"indiType",
-            name:"indiType",
-            displayFormat:"{BaseInfo.name}",
-            // PBG170896-指标类型树,无法按绩效业务组织过滤,只能暂时隐藏这棵树 modified by janeou_xie
-            afterJqGridLoadComplete: function () {
-                $('#treeNavigation').hide();
-            },
-            onchange: function(e,value){
-                var dataSet = value.current;
-                var indecatorType = dataSet ? dataSet["BaseInfo.id"] : "null";
-                var rows = $("#indicatorPageSelect").val();
-                //指标库(全部)重加载
-                referencePIParam['filterItems'] = "{indecatorType:'" +indecatorType+"'}";
-                reloadCustomSearcherGrid({gridId : 'PIall' , pageNum : '1'});
-                indicatorSelectedIds.splice(0,indicatorSelectedIds.length); //将已选指标清空
-                //指标库(已选)重加载
-                $("#PI_selected").jqGrid("option","filterItems","{rows : "+rows+"; page : 1;indecatorType:'" +indecatorType+ "'}").jqGrid("reloadGrid");
-                $("#ui-dialog-otherConfig").remove();
-            }
-        };
-        indicatorType_f7_json2.subWidgetName = 'specialPromptGrid';
-        indicatorType_f7_json2.subWidgetOptions = {
-            title: jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_113,
-            uipk: "com.kingdee.shr.perfweb.app.base.indecator.IndecatorType.available.F7",
-            query: "",
-            multiselect : false,
-            isHRBaseItem: true,
-            f7ReKeyValue: "BaseInfo.id:BaseInfo.longName",
-            currentHrOrgUnitId: hrOrgUnit,
-            filter: "hrOrgUse.id = '" + hrOrgUnit + "'",
-            bizFilterFieldsValues: "bizFilterFields=undefined:" + encodeURIComponent(hrOrgUnit),
-            filterConfig: [{
-                name: 'isComUse', value: true,
-                alias: jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_86,
-                widgetType: 'checkbox',display:'none'
-            }],
-            // onclikFunction : function(id){
-            //     var dataSet = $("tr[id='" +id+ "']").parent().parent().parent().find("table[ctrlrole='grid']").jqGrid('getRowData', id);
-            //     $("#indiType").shrPromptBox("setValue", dataSet);
-            //     var indecatorType = "null"; //指标类型id
-            //     indecatorType = dataSet["BaseInfo.id"];
-            //     var rows = $("#indicatorPageSelect").val();
-            //     //指标库(全部)重加载
-            //     referencePIParam['filterItems'] = "{indecatorType:'" +indecatorType+"'}";
-            //     reloadCustomSearcherGrid({gridId : 'PIall' , pageNum : '1'});
-            //     // reloadReferencePIGrid();
-            //     // $("#PIall").jqGrid("option","filterItems","{rows : "+rows+"; page : 1;indecatorType:'" +indecatorType+"'}").jqGrid("reloadGrid");
-            //     indicatorSelectedIds.splice(0,indicatorSelectedIds.length); //将已选指标清空
-            //     //指标库(已选)重加载
-            //     $("#PI_selected").jqGrid("option","filterItems","{rows : "+rows+"; page : 1;indecatorType:'" +indecatorType+ "'}").jqGrid("reloadGrid");
-            //     $("#ui-dialog-otherConfig").remove();
-            // }
-        };
-
-        $('input[id="indiType"]').shrPromptBox(indicatorType_f7_json2);
-        //$('form[id="indiType"]').shrForm({id:indiTypeForm});//包裹一个form, 为了提供validate功能
-        $('.ui-promptBox-icon').addClass('required');
-
-        
-        it.selectAddPart('partplist_1','partlistselect_1');
-        it.switchTable();											//表格切换
-        it.initPIallTable(areaNameStr);										//加载弹出框表格——绩效指标库——全部
-        it.initPIselectedTable();									//加载弹出框表格——绩效指标库——已选
-        it.initexistingPIallTable(areaId, areaType);								//加载弹出框表格——引用已有指标——全部
-
-
-        if("1" == pageType) {
-            //隐藏个人目标填报标签,不移除避免已有功能的影响
-            $("#reference_existingPI").hide();
-            //获取考核周期的过滤条件
-            it.initexistingPIallTable2();								//加载弹出框表格——引用已有指标(根据考核周期引用考核周期下的考核对象已有指标)
-            // $('#reference_existingPI_2box').show();
-            //判断是否从团队目标填报进入
-            it.selfRemoteCall({
-                method: 'getPlanFilter',
-                async : false,
-                param : {
-                    period : periodId
-                },
-                success : function(data){
-                    planFilter = data.planFilter;
-                }
-            });
-
-            var perfPlay_f7_json = {id:"perfPlay",name:"perfPlay"};
-            var planfilter = "perfPlan in (" + planFilter + ")" ;
-            perfPlay_f7_json.subWidgetName = 'shrPromptGrid';
-            perfPlay_f7_json.subWidgetOptions = {title:jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_33,
-                uipk:"com.kingdee.shr.perfweb.app.base.evalplan.PerfPeriod.F7",filter : planfilter};//指标类型的F7,要改成考核计划的F7
-            $('#perfPlay').shrPromptBox(perfPlay_f7_json);
-            $('#perfPlayForm').shrForm({id:"perfPlayForm"});//包裹一个form, 为了提供validate功能
-
-            //绑定周期选中事件
-            $('#perfPlay').change(function () {
-                var periodid = $('#perfPlay_el').val();
-                reloadCustomSearcherGrid({gridId: 'existingPIall_2' , pageNum: 1, period: periodid, sord: "DESC"})
-            });
-
-            //初始化快速搜索
-            existingPIallParam = {rowsNum: 10 , pageNum: 1 , period: '' , useMyOwnTarget: useMyOwnTargetVal};
-            existingPIallFilterItems = "";
-            //组织考核-yien
-            if(isOrg == '1') {
-                existingPIallSearcherFields =
-                    [
-                        {columnName:'evaObj.number',label:$.perfwebI18n.tableConstant.msg6},
-                        {columnName:'evaObj.name',label:$.perfwebI18n.tableConstant.msg7}
-                    ];
-            }else {
-                existingPIallSearcherFields =
-                    [
-                    {
-                        columnName:'evaObj.number',
-                        label:jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_101
-                    },
-                    {
-                        columnName:'evaObj.name',
-                        label:jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_89
-                    },
-                    {
-                        columnName:'evaObj.positionName',
-                        label:jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_105
-                    }
-                    ];
-            }
-            initCustomQuickSearcher({gridId : 'existingPIall_2' , searcherId : 'existingPIall_searcher' , fields : existingPIallSearcherFields});
-            //组织考核-yien 隐藏仅显示我的指标
-            if(isOrg == '1') {
-                //BT1440992 引用已有指标“仅显示我的指标”勾选框去掉,直接显示 全部
-                // 搜索字段改成组织的
-                $('.useMyOwnTargetwrap').hide();
-            }else {
-                //渲染选中仅显示我的指标CheckBox
-                $('#useMyOwnTarget').shrCheckbox();
-                $('#useMyOwnTarget').shrCheckbox('onChange' , useMyOwnTarget);
-                $('#useMyOwnTarget').shrCheckbox("check"); //默认选中
-            }
-
-            initCustomPageClick('hadIndicator_2' , 'existingPIall_2');
-        }else {
-            //移除团队引用已有指标的tab标签
-            $("#reference_existingPI_2box").remove();
-            $("#reference_existingPI_2").remove();
-            // $('#reference_existingPIbox').show();
-        }
-
-        //2019/10/15 yien_fan
-        // 引用绩效指标库添加快速搜索
-        referencePIParam = {gridId: 'PIall' , rowsNum: 10 , pageNum: 1 , filterItems:''};
-        referencePIFilterItems = "";
-        var referencePISearcherFields = [
-            {
-                columnName:'name',
-                label:jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_119
-            },
-            {
-                columnName:'number',
-                label:jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_3
-            }
-        ];
-        initCustomQuickSearcher({gridId : 'PIall' , searcherId : 'referencePI_searcher' , fields : referencePISearcherFields});
-        initCustomPageClick('indicator' , 'PIall');
-
-        //补丁11 目标对齐-yien
-        if(isOrg == '1') {
-            //隐藏组织目标引用
-            $('#reference_orgPI').hide();
-        }else {
-            $('#existingOrgPI').closest('.recordtab').prepend(page('hadIndicatorOrg'));
-            it.selectAddPart('org_partplist_1','partlistselect_1');
-            var orgId_f7_json = {id: "refOrgUnit", name: "refOrgUnit"};
-            orgId_f7_json.subWidgetName = 'shrPromptGrid';
-            orgId_f7_json.subWidgetOptions = {
-                // title: '行政组织',
-                title: $.perfwebI18n.commonMsg.adminOrg,
-                uipk: "com.kingdee.eas.basedata.org.app.AdminOrgUnit.F7",
-                query: "",
-                permItemId: encodeURIComponent(permItemId),
-                serviceId : shr.getUrlRequestParam("serviceId",window.parent.location.href),
-            };
-            $('#refOrgUnit').shrPromptBox(orgId_f7_json);
-            $('#refOrgUnitForm').shrForm({id: "refOrgUnitForm"});//包裹一个form, 为了提供validate功能
-            $('#refOrgUnit').shrPromptBox('addRules', {required: false});
-
-            //绑定修改事件
-            $('#refOrgUnit').shrPromptBox("option", {
-                onchange: function (e, value) {
-                    //判断是否重新选择
-                    var filterOrg = value.current.id;
-                    if(value.previous == undefined || value.previous.id != filterOrg) {
-                        reloadCustomSearcherGrid({gridId : 'existingOrgPI' , pageNum : '1', filterOrg: filterOrg});
-                    }
-                }
-            });
-
-            //设置评估对象所属的行政组织
-            if(refOrgUnit['name'] != undefined) {
-                $('#refOrgUnit').val(refOrgUnit['name']);
-            }
-
-            //获取用户的当前行政组织
-            it.initOrgPITable(areaId, areaType);
-        }
-        if(globalIndicatorData.currAreaType == '300'){
-            $('#reference_existingPI').click();
-        }
-    },
-
-    dealEmptyIndicatoName : function(data){
-        //BT1226408 : 解决新建指标未保存,引用指标后原新建指标名称被刷没了的问题
-        var evaAreaObj = null;
-        var evaIndicatorLen = 0;
-        if(data.rows && data.rows.evaAreaList.length>0){
-            var len = data.rows.evaAreaList.length;
-            for(var i=0; i<len; i++){
-                evaAreaObj = data.rows.evaAreaList[i];
-                if(evaAreaObj.areaType == '200'){
-                    evaIndicatorLen = evaAreaObj.evaIndicatorList.length;
-                    if(evaIndicatorLen>0){
-                        for(var j=0; j<evaIndicatorLen; j++){
-                            if(evaAreaObj.evaIndicatorList[j].FNAME == ""){
-                                data.rows.evaAreaList[i].evaIndicatorList[j].FNAME =
-                                    $(shr.xssFilter("input[indicator='" +evaAreaObj.evaIndicatorList[j].FID+ "'][fname='FNAME']")).val();
-                            }
-                        }
-                    }
-                }
-            }
-        }
-        return data;
-    },
-
-    /**
-     * 单击单选按钮,切换添加绩效指标页签
-     * @param id
-     */
-    addPI : function(id){
-        var idObj=$('#'+id);
-        var index=idObj.index();
-        var PIbox=$('.PIbox');
-        var radio=idObj.find('.radio-btn');
-        if(!radio.hasClass('radio-checked')){
-            radio.parent().siblings('.radio-btn-wrap').find('.radio-checked').removeClass('radio-checked');
-            radio.addClass('radio-checked');
-            PIbox.eq(index).siblings('.PIbox').slideUp();
-            PIbox.eq(index).slideDown();
-
-            if(index == 0){
-                $("#partplist_1 li:first").click();
-            }
-        }
-
-        //考核规则复制与引用-控制顶部按钮的显示与隐藏
-        if(id === 'addnewPI') {
-            //新建指标
-            $('#dlg_reference_btn').hide();
-            $('#dlg_copy_btn').hide();
-            $('#dlg_confirm_btn').show();
-        }else {
-            $('#dlg_reference_btn').show();
-            $('#dlg_copy_btn').show();
-            $('#dlg_confirm_btn').hide();
-        }
-
-        //补丁11 目标对齐-yien
-        if(id == 'reference_orgPI') {
-            $('#reference_orgPIbox li:first').click();
-        }
-    },
-
-    /**
-     * 选择区域
-     * @param ulclass
-     * @param selectliclass
-     */
-    selectAddPart : function(ulclass,selectliclass){
-        $('.'+ulclass+' li').unbind('click').bind('click',function(){
-            var list=$(this);
-            var grouplistselect_icon=$('<span class="grouplistselect_icon"></span>');
-            if(!list.hasClass(selectliclass)){
-                $('.'+selectliclass).find('.grouplistselect_icon').remove();
-                $('.'+selectliclass).removeClass(selectliclass);
-                list.addClass(selectliclass).append(grouplistselect_icon);
-            }
-        });
-        if ($("#partplist_1").children().length > 0) {
-            $("#partplist_1").children()[0].click();
-        }
-    },
-
-    /**
-     * 选择添加数量--增加事件
-     */
-    increaseNumber : function(){
-        var number=parseInt($('#addcount').val());
-        if(number>0 && number<10){
-            $('#addcount').val(number+1);
-        }
-    },
-
-    /**
-     * 选择添加数量--减少事件
-     */
-    reduceNumber : function(){
-        var number=parseInt($('#addcount').val());
-        if(number>1 && number<=10){
-            $('#addcount').val(number-1);
-        }
-    },
-
-    /**
-     * 添加绩效指标条数--鼠标离开时校验>0,<=10
-     */
-    addcountonblur : function(){
-        var number=parseInt($('#addcount').val());
-        var g = /^[1-9]*[1-9][0-9]*$/;
-        if(g.test(number) && parseInt(number)<= 10){
-            return;
-        }else{
-            shr.showWarning({message : shr.formatMsg(jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_56,[10]),hideAfter : 5});
-        }
-    },
-
-    /**
-     * 表格切换
-     */
-    switchTable : function(){
-        $('.recordsmenu li').unbind('click').bind('click',function(){
-            if($(this).text().indexOf(jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_97)
-                != -1 && $(this).attr("id") == 'PIselectLi'){//已选
-                // var selectedIds = indicatorSelectedIds.toString();
-                // var selectedRecordLen = selectedIds.split(",").length;
-                // var postData = {recordLen : selectedRecordLen,page : 1,sord : "DESC",selectedIds : selectedIds,type : '002'};
-                //
-                // $("#PIselected").setGridParam({postData:postData,url:that.dynamicPage_url+"?method=getIndicatorList&uipk=" + that.uipk});
-                // $("#PIselected").jqGrid('reloadGrid');
-                $("#indicatorSelectedPager").hide();
-                $("#referencePI_searcher").hide(); //隐藏快速搜索框
-            }else{
-                $("#referencePI_searcher").show(); //显示快速搜索框
-            }
-
-            if(!$(this).hasClass('selectli')){
-                var index=$(this).index();
-                $(this).siblings('li.selectli').removeClass('selectli');
-                $(this).addClass('selectli');
-                $(this).parents('.datarecords').find('.tablewrap').find('.show').removeClass('show');
-                $(this).parents('.datarecords').find('.tablewrap').find('.recordtab').eq(index).addClass('show');
-            }
-        })
-    },
-
-    /**
-     * 【同时引用统一下达的指标】复选框按钮事件
-     * @param which
-     */
-    checkboxEvent : function(which){
-        var obj=$(which);
-        var checkboxs=obj.find('.checkboxs');
-        if(checkboxs.hasClass('checkedboxs')){
-            checkboxs.removeClass('checkedboxs');
-        }else{
-            checkboxs.addClass('checkedboxs');
-        }
-    },
-
-    /**
-     * 初始化jqGrid表格
-     * @param obj
-     * @param options
-     */
-    initjqGridTable : function(obj,options){
-        obj.jqGrid({
-            mtype:"POST",										//提交方式
-            datatype: "json",
-            height:options.height,								//高度,表格高度。可为数值、百分比或'auto'
-            width:options.width,								//这个宽度不能为百分比
-            autowidth:true,
-            colNames:options.name,
-            colModel:options.model,
-            rownumbers:false,									//添加左侧行号
-            sortname:'number',
-            sortorder: 'asc',
-            sortable:true,
-            rowNum: 20,											//每页显示记录数
-            multiselect: options.multiselect,					//复选框
-            forceFit:true,										//如果设置为true,改变列宽,相邻列也将调整以适应整体表格,将不会出现水平滚动条。
-            multiselectWidth:options.multiselectWidth,			//复选框列宽度
-            shrinkToFit:options.shrinkToFit,					//该项描述计算每列相对于表格宽度的初始宽度的类型。若为true,并且设置了列宽度,则每列的宽度根据定义宽度缩放。若为false,并且设置了列宽度,表格宽度为设置宽度,列宽度不会重新计算,使用colModel中定义的值
-            autoScroll: false,
-            hoverrows: true,
-            hidegrid:false,
-            url: options.url,
-            postData: options.postData,
-            loadComplete:options.loadComplete,
-            onSelectRow : options.onSelectRow,
-            onSelectAll : options.onSelectAll
-        });
-        //.jqGrid('setFrozenColumns');//.jqGrid('setFrozenColumns')冻结列,不生效\
-    },
-
-    /**
-     * 加载数据
-     */
-    loadingTableData : function(obj){
-        var data=it.simulatedData();
-        for(var i=0;i<data.length;i++){
-            obj.jqGrid("addRowData",i,data[i]);
-        }
-    },
-    /**
-     * 加载弹出框表格——绩效指标库——全部
-     */
-    initPIallTable : function(areaNameStr){
-        var indicatorOptions={
-            name:[
-                'ID',
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_3,
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_119,
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_118,
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_108,
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_113,
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_47,
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_15,
-                '',
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_12,
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_45,
-                '',
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_19,
-                ''],
-            model:[
-                {name:'id',"index":"id",hidden: true},
-                {name:'number',index:'FNumber', width:200, align:"left",frozen: true, frozen: true,sortable: true},
-                {name:'name',index:'FName_L2', width:800, align:"left",frozen: true, frozen: true,sortable: true},
-                {name:'indecatorDesc',index:'FIndecatorDesc_L2', width:180, align:"left",frozen: true,sortable: true,hidden: true},
-                {name:'indecatorTypeId',index:'indecatorTypeId', hidden: true},
-
-                {name:'indecatorType',index:'FIndecatorTypeID', width:100, align:"left", frozen: true,sortable: true,hidden: true},
-                {name:'evalStandard',index:'FEvalStandard', width:180, align:"left", frozen: true, sortable: true,hidden: true},
-                {name:'qualiOrRationName',index:'FQualiOrRation', width:100, align:"left", frozen: true,sortable: true,hidden: true},
-                {name:'qualiOrRation', hidden:true , dataType:"int"},
-                {name:'unit',index:'FUnit', width:83, align:"left", frozen: true, sortable: true,hidden: true},
-                {name:'scoringFormulaName',index:'FScoringFormulaID', width:100, align:"left", frozen: true, sortable: true,hidden: true},
-                {name:'scoringFormula', hidden:true },
-                {name:'rejectionName',index:'Frejection', width:70, align:"left", frozen: true, sortable: true,hidden: true},
-                {name:'rejection', hidden:true },
-            ],
-            multiselect:true,
-            multiselectWidth:30,									//复选框单元格宽度
-            shrinkToFit:false,										//true没有滚动条,false有滚动条
-            width:1040,												//这个宽度不能为百分比
-            height:260,											//高度,表格高度。可为数值、百分比或'auto'
-            sortname : 'FNumber',
-            sortorder : 'asc',
-            sortable:true,
-            rowNum : indicatorTypeDefaultRows,
-            url : that.dynamicPage_url+"?method=getIndicatorList&uipk=" + that.uipk + "&shruicode=" + shr.getUrlRequestParam("shruicode"),
-            postData : {
-                rows : indicatorTypeDefaultRows,
-                page : 1,
-                sord : 'asc',
-                type : INDICATORLISTALL,
-                selectedIds : '',
-                hrOrgUnit : hrOrgUnit,
-                areaNameStr: areaNameStr
-            },
-            nextPage : $("#indicatorPageNext"), //下一页对象
-            prevPage : $("#indicatorPagePrev"),//上一页对象
-            pageTotal : $("#indicatorPageTotal"), //总页数对象
-            curPage : $("#indicatorCurPage"), //当前页对象
-            // selectIds : indicatorSelectedIds, //选中的数据id //BT1363835 引用已有指标重新刷新表格,不勾选已选记录
-
-            allNum : $("#PIall_num"), //全部
-            pageNum : $("#indicatorPageNum"), //页面当前数及总页数显示对象
-            onSelectRow : function (rowid,status){
-                var row = getSelectDate('PIall',"NO_ALL",rowid);
-                if(status){
-                    LoadingSelectData('PIselected',row)
-                }else{
-                    LoadingRemovSelectData('PIselected',row);
-                }
-                var ids=$('#PIselected').jqGrid('getRowData');
-                $("#PIselected_num").text(ids.length);
-            },
-            onSelectAll : function (aRowids,status){
-                var rowdata = getSelectDate('PIall',"ALL",aRowids);
-                if(status){
-                    LoadingSelectData('PIselected',rowdata);
-                    $("#PIselected_num").text(rowdata.length);
-                }else{
-                    LoadingRemovSelectData('PIselected',rowdata);
-                    $("#PIselected_num").text(0);
-                }
-            }
-        };
-
-        hrtable.createTable($('#PIall'),indicatorOptions);
-        $("#PIall").setGridWidth(pageType == 2 ? 838 : 1038);
-    },
-
-    /**
-     * 加载弹出框表格——绩效指标库——已选
-     */
-    initPIselectedTable : function(){
-        indicatorSelectedOptions={
-            name:['',
-                'ID',
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_3,
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_119,
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_118,
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_114,
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_113,
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_47,
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_15,
-                '',
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_12,
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_45,
-                '',
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_19,
-                ''],
-            model:[
-                {name:'merge',index:'merge', width:30,align:"center",frozen: true,formatter: function (cellvalue, options, rowObject) { return '<span class="del_selected" onclick="that.removeSelected(this,'+rowObject.id+',\'DEL-INDICATORSELECTED\')" title="'+
-                        jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_92+
-                        '"></span>' }},
-                {name:'id',"index":"id","width":10,"label":"Id","align":"left",hidden: true,resizable:false},
-                {name:'number',index:'FNumber', width:100, align:"left",frozen: true, frozen: true,sortable: true},
-                {name:'name',index:'FName_L2', width:100, align:"left",frozen: true, frozen: true,sortable: true},
-                {name:'indecatorDesc',index:'FIndecatorDesc_L2', width:180, align:"left",frozen: true,sortable: true},
-                {name:'indecatorTypeId',index:'indecatorTypeId', hidden: true},
-
-                {name:'indecatorType',index:'FIndecatorTypeID', width:100, align:"left", frozen: true,sortable: true},
-                {name:'evalStandard',index:'FEvalStandard', width:180, align:"left", frozen: true, sortable: true},
-                {name:'qualiOrRationName',index:'FQualiOrRation', width:100, align:"left", frozen: true,sortable: true},
-                {name:'qualiOrRation', hidden:true , dataType:"int"},
-                {name:'unit',index:'FUnit', width:83, align:"left", frozen: true, sortable: true},
-                {name:'scoringFormulaName',index:'FScoringFormulaID', width:100, align:"left", frozen: true, sortable: true},
-                {name:'scoringFormula', hidden:true },
-                {name:'rejectionName',index:'FRejection', width:70, align:"left", frozen: true, sortable: true},
-                {name:'rejection', hidden:true },
-            ],
-            multiselect:false,
-            multiselectWidth:30,//复选框单元格宽度
-            shrinkToFit:false,
-            width:1040,												//这个宽度不能为百分比
-            height:500,											//高度,表格高度。可为数值、百分比或'auto'
-            sortname : 'FNumber',
-            sortorder : 'asc',
-            sortable:true,
-
-            rowNum : 5,
-            url: that.dynamicPage_url+"?method=getIndicatorList&uipk=" + that.uipk + "&shruicode=" + shr.getUrlRequestParam("shruicode"),
-            postData : {
-                rows : 5,
-                page : 1,
-                sord : 'DESC',
-                type : SELECTEDINDICATORLIST
-                // selectedIds : indicatorSelectedIds.toString() //BT1363835 引用已有指标重新刷新表格,不勾选已选记录
-            },
-            nextPage : $("#indicatorSelectedPageNext"), //下一页对象
-            prevPage : $("#indicatorSelectedPagePrev"),//上一页对象
-            pageTotal : $("#indicatorSelectedPageTotal"), //总页数对象
-            curPage : $("#indicatorSelectedCurPage"), //当前页对象
-            // selectIds : indicatorSelectedIds, //选中的数据id //BT1363835 引用已有指标重新刷新表格,不勾选已选记录
-
-            allNum : $("#PIselected_num"), //数量
-            pageNum : $("#indicatorSelectedPageNum"), //页面当前数及总页数显示对象
-
-            onSelectRow : function (rowid,status){},
-            onSelectAll : function (aRowids,status){}
-        };
-
-        hrtable.createTable($('#PIselected'),indicatorSelectedOptions);
-        $("#PIselected").setGridWidth(pageType == 2 ? 838 : 1038);
-    },
-
-    /**
-     * 移除选中事件
-     * @param obj
-     * @param rowsid
-     */
-
-    removeSelected : function(obj,rowsid,type){
-        $(obj).closest('table').jqGrid("delRowData", rowsid);
-
-        if(type == 'DEL-UNGROUPSELECTED'){ //移除待分组已选id
-
-            for(var i=0 ; i<ungroupSelectIds.length; i++){
-                if(rowsid == ungroupSelectIds[i]){
-                    ungroupSelectIds.splice(i, 1);
-                }
-            }
-            $("#unGroupSelected").html(' <span></span>'+
-                shr.formatMsg(jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_93,[ungroupSelectIds.length]));
-        }else if(type == 'DEL-INDICATORSELECTED'){//移除指标库已选id
-
-            // for(var i=0 ; i<indicatorSelectedIds.length; i++){
-            //     if(rowsid == indicatorSelectedIds[i]){
-            //         indicatorSelectedIds.splice(i, 1);
-            //     }
-            // }
-            // $("#indicatorSelected").html(' <span></span>已勾选(' +(indicatorSelectedIds.length)+ ')');
-            //2019/10/16 yien_fan 修复已知BUG
-            var rows = $('#PIselected').jqGrid('getRowData');
-            $("#PIselected_num").html(rows.length);
-            $("#PIall").setSelection(rowsid,false);
-        }else if(type == 'DEL-GROUPEDSELECTED'){//移除分组已选id
-            var tabTag = '';
-            //移除分组已下达中已选
-            for(var i=0 ; i<groupedTransmitedSids.length; i++){
-                if(rowsid == groupedTransmitedSids[i]){
-                    groupedTransmitedSids.splice(i, 1);
-                    tabTag = 'transmited';
-                }
-            }
-
-            //移除分组未下达中已选
-            for(var i=0 ; i<groupedUntransmitSids.length; i++){
-                if(rowsid == groupedUntransmitSids[i]){
-                    groupedUntransmitSids.splice(i, 1);
-                    tabTag = 'unTransmited';
-                }
-            }
-
-            if(tabTag == 'transmited'){
-                $("#gselectedNum").html(' <span></span>'+
-                    shr.formatMsg(jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_93,[groupedTransmitedSids.length]));
-            }else if(tabTag == 'unTransmited'){
-                $("#gselectedNum").html(' <span></span>'+
-                    shr.formatMsg(jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_93,[groupedUntransmitSids.length]));
-            }
-        }
-    },
-
-    /**
-     * 加载弹出框表格——引用已有指标
-     * 新逻辑新增传参areaId, areaType,旧逻辑没有
-     */
-    initexistingPIallTable : function(areaId, areaType){
-        existingPIallOptions={
-            name:['ID',
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_32,
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_33,
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_34,
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_7],
-            model:[
-                {"index":"id","width":10,"label":"Id","name":"fid","align":"left",hidden: true,resizable:false},
-                {name:'planName',index:'P.FName', width:250, align:"left",frozen: true, dataType: "String", sortable: true},
-                //白老师优化的地方影响到了
-                {name:'periodName',index:'P.FNumber', width:250, align:"left",frozen: true, dataType: "String", sortable: true},
-                {name:'evaPeriodStatus',index:'P.FEvaPeriodStatus', width:260, align:"left",frozen: true, dataType: "String", sortable: true},
-                {name:'existingPIDetail',index:'existingPIDetail', width:260, align:"center", dataType: "String", sortable: false,
-                    formatter:  function (cellvalue, options, rowObject) {
-                        return '<span class="detailedInformation" onclick="that.viewDetailPI(\''+areaId+'\',\''+areaType+'\',\''+rowObject.id+'\')" title="'+
-                            jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_7+
-                            '">'+
-                            jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_7+
-                            '</span>'
-                    }
-                },
-            ],
-            multiselect:false,
-            multiselectWidth:30,									//复选框单元格宽度
-            shrinkToFit:false,										//true没有滚动条,false有滚动条
-            width:'1040',												//这个宽度不能为百分比
-            height:'326',											//高度,表格高度。可为数值、百分比或'auto'
-            sortname : 'P.FNumber',
-            sortorder : 'desc',
-            sortable:true,
-            rowNum : defaultRows,
-
-            url: that.dynamicPage_url+"?method=getExistTransmitTargetList&uipk=" + that.uipk+ "&shruicode=" + shr.getUrlRequestParam('shruicode'),
-            postData : {
-                rows : defaultRows,
-                page : 1,
-                sord : 'DESC',
-                type : GETPERIODLIST,
-                periodId : periodId,
-                personId : personId,
-                evaObj : evaObj
-            },
-            nextPage : $("#hadIndicatorPageNext"), //下一页对象
-            prevPage : $("#hadIndicatorPagePrev"),//上一页对象
-            pageTotal : $("#hadIndicatorPageTotal"), //总页数对象
-            curPage : $("#hadIndicatorCurPage"), //当前页对象
-            selectIds : null, //选中的数据id
-
-            allNum : null, //全部
-            pageNum : $("#hadIndicatorPageNum"), //页面当前数及总页数显示对象
-
-            onSelectRow : function (rowid,status){},
-            onSelectAll : function (aRowids,status){}
-        };
-
-        hrtable.createTable($('#existingPIall'),existingPIallOptions);
-        $("#existingPIall").setGridWidth(pageType == 2 ? 838 : 1038);
-    },
-    /**
-     * 补丁11 加载组织目标-yien
-     * 新逻辑新增传参areaId, areaType,旧逻辑没有
-     */
-    initOrgPITable : function(areaId, areaType){
-       var options={
-            name:['ID',
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_32,
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_33,
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_34,
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_7],
-            model:[
-                {"index":"id","width":10,"label":"Id","name":"fid","align":"left",hidden: true,resizable:false},
-                {name:'planName',index:'P.FName', width:250, align:"left",frozen: true, dataType: "String", sortable: true},
-                //白老师优化的地方影响到了
-                {name:'periodName',index:'P.FNumber', width:250, align:"left",frozen: true, dataType: "String", sortable: true},
-                {name:'evaPeriodStatus',index:'P.FEvaPeriodStatus', width:260, align:"left",frozen: true, dataType: "String", sortable: true},
-                {name:'existingPIDetail',index:'existingPIDetail', width:260, align:"center", dataType: "String", sortable: false,
-                    formatter:  function (cellvalue, options, rowObject) {
-                        return '<span class="detailedInformation" onclick="that.viewDetailPI(\''+areaId+'\',\''+areaType+'\',\''+rowObject.id+'\' , 1)" title="'+
-                            jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_7+
-                            '">'+
-                            jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_7+
-                            '</span>'
-                    }
-                },
-            ],
-            multiselect:false,
-            multiselectWidth:30,									//复选框单元格宽度
-            shrinkToFit:false,										//true没有滚动条,false有滚动条
-            width:'1040',												//这个宽度不能为百分比
-            height:'326',											//高度,表格高度。可为数值、百分比或'auto'
-            sortname : 'P.FEvaPeriodStatus',
-            sortorder : 'desc',
-            sortable:true,
-            rowNum : defaultRows,
-
-            url: that.dynamicPage_url+"?method=getOrgTargetList&permItemId="+encodeURIComponent(permItemId)+"&uipk=" + that.uipk+ "&shruicode=" + shr.getUrlRequestParam('shruicode'),
-            postData : {
-                rows : defaultRows,
-                page : 1,
-                sord : 'DESC',
-                filterOrg: refOrgUnit['id']
-            },
-            nextPage : $("#hadIndicatorOrgPageNext"), //下一页对象
-            prevPage : $("#hadIndicatorOrgPagePrev"),//上一页对象
-            pageTotal : $("#hadIndicatorOrgPageTotal"), //总页数对象
-            curPage : $("#hadIndicatorOrgCurPage"), //当前页对象
-            selectIds : null, //选中的数据id
-
-            allNum : null, //全部
-            pageNum : $("#hadIndicatorOrgPageNum"), //页面当前数及总页数显示对象
-
-            onSelectRow : function (rowid,status){},
-            onSelectAll : function (aRowids,status){}
-        };
-
-        hrtable.createTable($('#existingOrgPI'),options);
-        $("#existingOrgPI").setGridWidth(pageType == 2 ? 838 : 1038);
-    },
-    /**
-     * 加载弹出框表格——引用已有指标(根据考核周期搜索该考核周期下的所有考核对象指标)
-     */
-    initexistingPIallTable2 : function(){
-        var buttonOptions  = {
-            nextPage : $("#hadIndicator_2PageNext"), //下一页对象
-            prevPage : $("#hadIndicator_2PagePrev"),//上一页对象
-            pageTotal : $("#hadIndicator_2PageTotal"), //总页数对象
-            curPage : $("#hadIndicator_2CurPage"), //当前页对象
-            pageNum : $("#hadIndicator_2PageNum"), //页面当前数及总页数显示对象
-        };
-        //组织考核-yien
-        var options_name = [];
-        var options_model = [];
-        if(isOrg == '1') {
-            options_name = [$.perfwebI18n.tableConstant.msg6,$.perfwebI18n.tableConstant.msg7,
-                $.perfwebI18n.tableConstant.msg8,$.perfwebI18n.tableConstant.msg9];
-            options_model = [
-                {name:'number',index:'number', width:100, align:"center",frozen: true, dataType: "int", sortable: true},
-                {name:'name',index:'name', width:100, align:"center",frozen: true, dataType: "int", sortable: true},
-                {name:'state',index:'appraisalStatus', width:190, align:"center", dataType: "int", sortable: true},
-                {name:'PIDetail',index:'PIDetail', width:110, align:"center", dataType: "int", sortable: true,
-                    formatter:  function (cellvalue, options, rowObject) {
-                        return "<span class='detailedInformation' onclick=\"that.viewDetailPI2('"+rowObject.id+"','" + rowObject.person +
-                            "' )\" title='"+$.perfwebI18n.tableConstant.msg7+"'>"+$.perfwebI18n.tableConstant.msg9+"</span>"
-                    }
-                },
-            ];
-        }else {
-            options_name = [jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_101,
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_89,
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_100,
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_105,
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_28,
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_7];
-            options_model = [
-                {name:'number',index:'number', width:100, align:"center",frozen: true, dataType: "int", sortable: true},
-                {name:'name',index:'name', width:100, align:"center",frozen: true, dataType: "int", sortable: true},
-                {name:'person',index:'person', width:90, align:"center",hidden : true, dataType: "int", sortable: true},
-                {name:'positionname',index:'position', width:230, align:"center", dataType: "int", sortable: true},
-                {name:'state',index:'appraisalStatus', width:190, align:"center", dataType: "int", sortable: true},
-                {name:'PIDetail',index:'PIDetail', width:110, align:"center", dataType: "int", sortable: true,
-                    formatter:  function (cellvalue, options, rowObject) {
-                        return '<span class="detailedInformation" onclick="that.viewDetailPI2(\''+rowObject.id+'\',\'' + rowObject.person +'\' )" title="'+
-                            jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_7+
-                            '">'+
-                            jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_7+
-                            '</span>'
-                    }
-                },
-            ];
-        }
-
-        var options={
-            name: options_name,
-            model:options_model,
-            multiselect:false,
-            multiselectWidth:30,//复选框单元格宽度
-            shrinkToFit:true,
-            width:815,//这个宽度不能为百分比
-            height:259,//高度,表格高度。可为数值、百分比或'auto'
-            url: that.dynamicPage_url+"?method=getEvaObjTabList&uipk=" + that.uipk + "&shruicode=" + shr.getUrlRequestParam('shruicode'),
-            postData: {
-                period : '',
-                rows : 10,
-                page : 1,
-                sord : "DESC",
-                isOrg : isOrg //组织考核-yien
-            }
-            ,loadComplete:function(data){ //完成服务器请求后,回调函数
-                var data = data.data;
-                if(data.rows == undefined || data.records == 0 || data.rows.length == 0){ //如果没有记录返回,追加提示信息,删除按钮不可用
-                    if(buttonOptions.prevPag){
-                        buttonOptions.prevPage.css('opacity','0.4');
-                    }
-                    if(buttonOptions.nextPage){
-                        buttonOptions.nextPage.css('opacity','0.4');
-                    }
-                    //总页码设置为1
-                    if(buttonOptions.pageTotal){
-                        buttonOptions.pageTotal.text(1);
-                    }
-                }else{
-                    if(buttonOptions.curPage){
-                        buttonOptions.curPage.val(data.page);
-                    }
-
-                    if(buttonOptions.pageTotal){
-                        buttonOptions.pageTotal.text(data.total);
-                    }
-
-                    if(buttonOptions.nextPage){
-                        //如果总页数<=当前页,点击"下一页"无反应
-                        if(data.total <= data.page){
-                            buttonOptions.nextPage.css('opacity','0.4');
-                        }else{
-                            buttonOptions.nextPage.css('opacity','1');
-                        }
-                    }
-
-                    if(buttonOptions.prevPage){
-                        //如果是第一页,”上一页”箭头灰选
-                        if(data.page == 1){
-                            buttonOptions.prevPage.css('opacity','0.4');
-                        }else{
-                            buttonOptions.prevPage.css('opacity','1');
-                        }
-                    }
-
-                    for(var i = 0,len = data.rows.length; i < len; i++){
-                        $('#existingPIall_2').jqGrid('addRowData',data.rows[i].id,data.rows[i])
-                    }
-                }
-            }
-        };
-        that.initjqGridTable($('#existingPIall_2'),options);
-        $("#existingPIall_2").setGridWidth(pageType == 2 ? 838 : 1038);
-    },
-
-    /**
-     * 查看指标明细弹出框
-     * 补丁11 目标对齐:isRefOrg 是否引用组织目标
-     * 新逻辑新增传参areaId, areaType,旧逻辑没有
-     */
-    viewDetailPI : function(areaId, areaType, rowId, isRefOrg){
-
-        var _evaObj = evaObj;
-        var obj;
-        var refAreaType = "200,300";
-        if(isRefOrg == 1) {
-            //判断是否勾选区域
-            var selectedAreaObj = $("#org_partplist_1").find("li[class='partlistselect_1']").find(".partnumber_1");
-            var areaId = selectedAreaObj.attr("areaid") || areaId; //要添加指标的区域id
-            var areaType = selectedAreaObj.attr("areaType") || areaType; //区域类型
-
-            if( $.isEmptyObject(areaId) || $.isEmptyObject(areaType) ){
-                // shr.showWarning({message : "请勾选要添加指标的区域!",hideAfter : 5});
-                shr.showWarning({message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_60 ,hideAfter : 5});
-                return;
-            }
-
-            refAreaType = areaType;
-
-            refAreaId = areaId;
-
-            _evaObj = rowId;
-            obj = getOrgTargetObj(rowId,areaType);
-        }else {
-            //生成指标详情区域表格框架,有几个区域生成几个表
-            obj = getOtherEvaObj(evaObj,rowId);
-        }
-
-        $(document.body).append(viewDetailInfoHtml(obj));
-
-        for(var i=0; i<obj.length; i++){
-            var tableId = "areaTable"+i;
-            var tableObj = $('#'+tableId);
-            var fieldList = obj[i].fieldList; //字段对象列表
-            var areaId = obj[i].areaId;
-
-            var areaType = obj[i].areaType;
-            var fieldArr = new Array();
-            for(var j=0; j<fieldList.length; j++){
-                fieldArr.push(fieldList[j].colName);
-            }
-
-            var oterParam = new Object();
-            oterParam.personId = personId; //personId;
-            oterParam.period = rowId;
-            oterParam.evaObj = _evaObj;
-            oterParam.areaId = areaId;
-            oterParam.areaType = areaType;
-            oterParam.fieldArr = fieldArr;
-
-            //区域指标表格初始化
-            //补丁11 目标对齐-yien
-            if(areaType == '200' && refAreaType.indexOf(areaType) > -1){
-                it.initIndicatorAreaDetailTable(tableObj,fieldList,oterParam, isRefOrg); //评估表区域表格
-                // indicatorIdSelected = indicatorIdSelected.splice(0,indicatorIdSelected.length); //将已选指标id清空
-                indicatorIdSelected = [];
-            }else if(areaType == '300' && refAreaType.indexOf(areaType) > -1){
-                it.initRecordAreaDetailTable(tableObj,fieldList,oterParam, isRefOrg); //记录表区域表格
-                // recordIdSelected = recordIdSelected.splice(0,recordIdSelected.length); //将已选记录id清空
-                recordIdSelected = [];
-            }
-        }
-
-        //指标复制和引用
-        var btnComfirmFunc = function(isRefTarget,_this){
-            if(typeof isRefTarget == 'undefined') {
-                isRefTarget = '0';
-            }
-
-            if((indicatorIdSelected == null || indicatorIdSelected.length<1) && (recordIdSelected == null || recordIdSelected.length<1)){
-                //复制  引用
-                var refCategoryName = isRefTarget == '0' ? jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_20:jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_98;
-                //'请选择您要'+refCategoryName+'的指标!'
-                shr.showWarning({message: shr.formatMsg(jsBizMultLan.perfweb_perfGoalsFillNew_888,[refCategoryName]),hideAfter: 5});
-                // shr.showWarning({message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_59,hideAfter : 5});
-                return false;
-            }
-            that.selfRemoteCall({
-                method : "saveRefExistIndicator",
-                param : {
-                    periodId : periodId,
-                    evaObj : evaObj,
-                    recordIdSelected : recordIdSelected.toString(),
-                    indicatorIdSelected : indicatorIdSelected.toString(),
-                    isRefTarget: isRefTarget,
-                    refAreaId: refAreaId, //补丁11 目标对齐-yien
-                    refAreaType: refAreaType, //补丁11 目标对齐-yien
-                    billId:billId
-                },
-                async : false,
-                success : function(data) {
-                    if(data.result == '200'){
-                        var toClickIndicator = data.successIds[0];
-                        $('#viewDetailPIDialog').remove(); //移除当前层弹出框
-                        $(".ui-button-icon-primary").click(); //关闭上一层弹出框
-                        //加载考核规则、考核计划、考核模式
-                        that.selfRemoteCall({
-                            method : "compositeEvaObjectData",
-                            param : {
-                                evaObj : evaObj,
-                                billId: billId
-                            },
-                            async : false,
-                            success : function(data) {
-                                if(data != null){
-                                    globalIndicatorData = data;
-                                    that.initGoalsItems(data); //重新生成左侧指标列表
-                                    //that.initTargetWorkflowDialog();
-                                }
-                            }
-                        });
-                        shr.showInfo({message : data.msg,hideAfter : 5});
-                        //清空已引用的指标 BT-00535086
-                        indicatorIdSelected = [];
-                        recordIdSelected = [];
-                        //BT1355334 个人目标添加--引用指标--引用指标时位到引用的指标
-                        // $("li[numval='"+toClickIndicator+ "']").click();
-                    }else{
-                        shr.showError({message : data.msg,hideAfter : 5});
-                    }
-
-                }
-            });
-        };
-
-        $("#viewDetailPIDialog").dialog({
-            autoOpen : true,
-            show : "blind",
-            width : 1000,
-            height : $(window).height() - 50,
-            title : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_7,
-            resizable : true,
-            position : [ 'center', 'center' ],
-            modal : true,
-            buttons: [
-                {
-                    id: 'dlg_reference_btn2',
-                    text: jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_98,
-                    click: function() {
-                        btnComfirmFunc('1',this);
-                    }
-                },
-                {
-                    id: 'dlg_copy_btn2',
-                    text: jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_20,
-                    click: function() {
-                        btnComfirmFunc('0',this);
-                    }
-                },
-                {
-                    id: 'dlg_cancel_btn2',
-                    text: jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_64,
-                    click: function() {
-                        $(this).dialog('close',this);
-                    }
-                }
-            ],
-            close : function(){
-                $('#viewDetailPIDialog').remove();
-                //BT1363381 动态计算区域权重
-                calcAndSetCurAreaWeight();
-            }
-        });
-    },
-    /**
-     * 查看指标明细弹出框
-     */
-    viewDetailPI2 : function(rowId,personId){
-        var obj = '';
-        it.selfRemoteCall({
-            method: 'getEvaTarget',
-            async : false,
-            //(8.6补丁5规则历史update by wei_baiii)
-            param : {
-                evaObj : rowId,
-                periodId:periodId
-            },
-            success : function(data){
-                obj = shr.xssFilter(data.rows.evaAreaList);
-            }
-        });
-        //生成指标详情区域表格框架,有几个区域生成几个表
-
-        $(document.body).append(viewDetailInfoHtml(obj));
-        //初始化已引用的指标
-        indicatorIdSelected = [];
-        recordIdSelected = [];
-
-        for(var i=0; i<obj.length; i++){
-            var tableId = "areaTable"+i;
-            var tableObj = $('#'+tableId);
-            var fieldList = obj[i].fieldList; //字段对象列表
-            var areaId = obj[i].areaId;
-
-            var areaType = obj[i].areaType;
-            var fieldArr = new Array();
-            for(var j=0; j<fieldList.length; j++){
-                fieldArr.push(fieldList[j].colName);
-            }
-
-            var oterParam = new Object();
-            oterParam.personId = personId; //personId;
-            // oterParam.period = $('#perfPlay_el').val();
-            oterParam.period = existingPIallParam['period'];
-            oterParam.evaObj = rowId;
-            oterParam.areaId = areaId;
-            oterParam.areaType = areaType;
-            oterParam.fieldArr = fieldArr;
-            oterParam.fillType = 'TEAM';
-
-            //区域指标表格初始化
-            if(areaType == '200'){
-                it.initIndicatorAreaDetailTable(tableObj,fieldList,oterParam); //评估表区域表格
-                // indicatorIdSelected = indicatorIdSelected.splice(0,indicatorIdSelected.length); //将已选指标id清空
-            }else if(areaType == '300'){
-                it.initRecordAreaDetailTable(tableObj,fieldList,oterParam); //记录表区域表格
-                // recordIdSelected = recordIdSelected.splice(0,recordIdSelected.length); //将已选记录id清空
-            }
-        }
-
-        //指标复制和引用
-        var btnComfirmFunc = function(isRefTarget,_this){
-            if(typeof isRefTarget == 'undefined') {
-                isRefTarget = '0';
-            }
-            if((indicatorIdSelected == null || indicatorIdSelected.length<1) && (recordIdSelected == null || recordIdSelected.length<1)){
-
-                var refCategoryName = isRefTarget == '0' ? jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_20:jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_98;
-                shr.showWarning({message: shr.formatMsg(jsBizMultLan.perfweb_perfGoalsFillNew_888,[refCategoryName]),hideAfter: 5});
-                // shr.showWarning({message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_59,hideAfter : 5});
-                return false;
-            }
-            that.selfRemoteCall({
-                method : "saveRefExistIndicator",
-                param : {
-                    periodId : periodId,
-                    evaObj : evaObj,
-                    recordIdSelected : recordIdSelected.toString(),
-                    indicatorIdSelected : indicatorIdSelected.toString(),
-                    isRefTarget: isRefTarget,
-                    billId:billId
-                },
-                async : false,
-                success : function(data) {
-                    if(data.result == '200'){
-                        var toClickIndicator = data.successIds[0];
-                        $('#viewDetailPIDialog').remove(); //移除当前层弹出框
-                        $(".ui-button-icon-primary").click(); //关闭上一层弹出框
-                        //加载考核规则、考核计划、考核模式
-                        that.selfRemoteCall({
-                            method : "compositeEvaObjectData",
-                            param : {
-                                evaObj : evaObj,
-                                billId: billId
-                            },
-                            async : false,
-                            success : function(data) {
-                                if(data != null){
-                                    globalIndicatorData = data;
-                                    that.initGoalsItems(data); //重新生成左侧指标列表
-                                }
-                            }
-                        });
-                        shr.showInfo({message : data.msg,hideAfter : 5});
-                        //BT1355334 个人目标添加--引用指标--引用指标时位到引用的指标
-                        // $("li[numval='"+toClickIndicator+ "']").click();
-                    }else{
-                        shr.showError({message : data.msg,hideAfter : 5});
-                    }
-
-                }
-            });
-        }
-
-        $("#viewDetailPIDialog").dialog({
-            autoOpen : true,
-            show : "blind",
-            width : 1000,
-            height : $(window).height() - 50,
-            title : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_7,
-            resizable : true,
-            position : [ 'center', 'center' ],
-            modal : true,
-            buttons: [
-                {
-                    id: 'dlg_reference_btn2',
-                    text: jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_98,
-                    click: function() {
-                        btnComfirmFunc('1',this);
-                    }
-                },
-                {
-                    id: 'dlg_copy_btn2',
-                    text: jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_20,
-                    click: function() {
-                        btnComfirmFunc('0',this);
-                    }
-                },
-                {
-                    id: 'dlg_cancel_btn2',
-                    text: jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_64,
-                    click: function() {
-                        $(this).dialog('close',this);
-                    }
-                }
-            ],
-            close : function(){
-                $('#viewDetailPIDialog').remove();
-                //BT1363381 动态计算区域权重
-                calcAndSetCurAreaWeight();
-            }
-        });
-    },
-
-    /**
-     * 补丁11 目标对齐-isRefOrg 判断是否引用组织指标
-     * 指标明细
-     */
-    initIndicatorAreaDetailTable : function(tableObj,fieldList,oterParam,isRefOrg){
-        var name = new Array(); //字段别名
-        var model = new Array();  //model
-        var shrinkToFit = false;
-        var j = 0;		// 记录显示字段的数量
-        name.push("ID");
-        model.push({"index":"id","width":20,"label":"Id","name":"FID","align":"left",hidden: true,resizable:false});
-        for(var i=0; i<fieldList.length; i++){
-            //业绩指标实际完成值、更新时间不显示
-            if(fieldList[i].colName == 'FSCORE' || "FACTUALCOMPLEVALUE" == fieldList[i].colName || "FUPDATEDATE" == fieldList[i].colName){
-                continue;
-            }
-            name.push(fieldList[i].showName);
-            var modelName = {name:fieldList[i].colName,index:fieldList[i].colName, width:150, align:"center",frozen: true,sortable:false};
-            model.push(modelName);
-            j++;
-
-        }
-        if(j < 6){
-            shrinkToFit = true;
-        }
-        var options={
-            name : name,
-            model:model,
-            multiselect:true,
-            multiselectWidth:30,						//复选框单元格宽度
-            shrinkToFit:shrinkToFit,
-            width:400,									//这个宽度不能为百分比
-            height:'200',									//高度,表格高度。可为数值、百分比或'auto',不填可自适应
-            url:that.dynamicPage_url+"?method=getAreaIndicatorList&uipk=" + that.uipk + "&shruicode=" + shr.getUrlRequestParam('shruicode'),
-            postData: {
-                rows : 100,
-                page : 1,
-                personId : oterParam.personId,
-                period : oterParam.period,
-                evaObj : oterParam.evaObj,
-                areaId : oterParam.areaId,
-                areaType : oterParam.areaType,
-                fillType : isRefOrg == 1 ? 'REFORGTARGET' : oterParam.fillType, //区分是个人目标填报还是团队目标填报, 补丁11 目标对齐-增加引用组织目标的区分
-                fieldArr : oterParam.fieldArr.toString(),
-                thisPeriod : periodId , //本周期id
-                isOrg:isRefOrg == 1 ? '1' : isOrg      //区分是否是组织考核
-            },
-            loadComplete:function(data){ 				//完成服务器请求后,回调函数
-                if(data.rows == undefined || data.records == 0){
-
-                }
-            },
-            onSelectRow : function (rowid,status){
-                hrtable.onSelectRow(rowid,status,indicatorIdSelected);
-            },
-            onSelectAll : function (aRowids,status){
-                hrtable.onSelectAll(aRowids,status,indicatorIdSelected);
-            }
-        };
-        that.initjqGridTable(tableObj,options);
-    },
-
-    /**
-     * 指标关联区域渲染
-     */
-    loadingIndicatorDetailData : function(tableObj,data){
-        for(var i=0;i<data.length;i++){
-            tableObj.jqGrid("addRowData",i,data[i]);
-        }
-    },
-
-    /**
-     *  补丁11 目标对齐-isRefOrg 判断是否引用组织指标
-     * 记录表明细
-     */
-    initRecordAreaDetailTable : function(tableObj,fieldList,oterParam,isRefOrg){
-        var name = new Array(); //字段别名
-        var model = new Array();  //model
-        var shrinkToFit = false;
-        var j = 0;		// 记录显示字段的数量
-        name.push("ID");
-        model.push({"index":"id","width":20,"label":"Id","name":"FID","align":"left",hidden: true,resizable:false,sortable:false});
-        for(var i=0; i<fieldList.length; i++){
-            if(fieldList[i].colName == 'FSCORE'){
-                continue;
-            }
-            name.push(fieldList[i].showName);
-            var modelName = {name:fieldList[i].colName,index:fieldList[i].colName, width:150, align:"center",frozen: true};
-            model.push(modelName);
-            j++;
-
-        }
-        if(j < 6){
-            shrinkToFit = true;
-        }
-        var options={
-            name:name,
-            model:model,
-            multiselect:true,
-            multiselectWidth:30,						//复选框单元格宽度
-            shrinkToFit:shrinkToFit,
-            width:400,									//这个宽度不能为百分比
-            height:'200',									//高度,表格高度。可为数值、百分比或'auto',不填可自适应
-            url: that.dynamicPage_url+"?method=getAreaIndicatorList&uipk=" + that.uipk + "&shruicode=" + shr.getUrlRequestParam('shruicode'),
-            postData: {
-                rows : 100,
-                page : 1,
-                personId : oterParam.personId,
-                period : oterParam.period,
-                evaObj : oterParam.evaObj,
-                areaId : oterParam.areaId,
-                areaType : oterParam.areaType,
-                fillType : isRefOrg == 1 ? 'REFORGTARGET' : oterParam.fillType, //区分是个人目标填报还是团队目标填报, 补丁11 目标对齐-增加引用组织目标的区分
-                fieldArr : oterParam.fieldArr.toString(),
-                thisPeriod:periodId , //本周期id
-                isOrg:isRefOrg == 1 ? '1' : isOrg      //区分是否是组织考核
-            },
-            loadComplete:function(data){ 				//完成服务器请求后,回调函数
-                if(data.rows == undefined || data.records == 0){
-
-                }
-            },
-            onSelectRow : function (rowid,status){
-                hrtable.onSelectRow(rowid,status,recordIdSelected)
-            },
-            onSelectAll : function (aRowids,status){
-                hrtable.onSelectAll(aRowids,status,recordIdSelected);
-            }
-        };
-        it.initjqGridTable(tableObj,options);
-    },
-
-    /**
-     * 获取指标明细数据
-     */
-    loadingRecordAreaDetailData : function(tableObj,data){
-        for(var i=0;i<data.length;i++){
-            tableObj.jqGrid("addRowData",i,data[i]);
-        }
-    },
-
-    viewHistoryAction : function(){
-        that.reloadPage({
-            uipk: 'com.kingdee.shr.perfweb.app.base.targetprocess.TargetReviseBillHis.list',
-            evaObj: evaObj,
-            isOrg: isOrg
-        });
-    },
-
-    //提交
-    submitAction : function(){
-        $('.tabwrap').each(function(index,tab){
-            $('#tab'+index).jqGrid('editStop');
-        })
-        that.selfRemoteCall({
-            method : "getEvaObjTargetStatus",
-            param : {
-                evaObj : evaObj
-            },
-            async : false,
-            type:"post",
-            success : function(data) {
-                if(data != null && data.targetStatus == 2){ //个人目标已提交
-                    shr.showWarning({message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_23,hideAfter : 5});
-                    return false;
-                }else if(data !=null && data.targetStatus == 3){ //个人目标已下达
-                    shr.showWarning({message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_26,hideAfter : 5});
-                    return false;
-                }else{
-                    if(data != null && data.filedRequired == '0'){
-                    shr.showWarning({message : data.filedRequiredMsg,hideAfter : 5});
-                    return false;
-                    }
-                    $('.scoreMenuList li').click();
-                    if(!canSaveVerify("submit")){
-                        return false;
-                    }else{
-                        doSumbit();
-                    }
-                }
-            }
-        });
-
-    },
-    //目标流程审批-重新model数据封装
-    assembleSaveData: function(action) {
-        if(that.targetTransmitBill['state'] == 0) {
-            shr.perfweb.perfGoalsFillNew.superClass.assembleSaveData.call(that , action);
-            return;
-        }
-        var data = {};
-        var modelObj = {};
-        var billId = that.targetTransmitBill['billId'];
-        modelObj['id'] = billId;
-
-        data['model'] = shr.toJSON(modelObj);
-        data['billId'] = billId;
-        data['uipk'] = "com.kingdee.shr.perfweb.app.base.targetprocess.TargetTransmitBill.form";
-        data['operateState'] = "VIEW";
-        data['method'] = "submit";
-
-        //提交工作流功能优化-yien
-        data['evaObj'] = evaObj;
-        data['periodId'] = periodId;
-
-        return data;
-    },
-    actSubmit: function(event, action) {
-        shr.stopMask();
-        if(that.targetTransmitBill['state'] == 0) {
-            shr.perfweb.perfGoalsFillNew.superClass.actSubmit.call(that, event, action);
-            return;
-        }
-
-        //新的指标填报不需要执行指标保存
-        that.selfRemoteCall({
-            method : "submitPersonalTarget",
-            param : {
-                evaObj : evaObj,
-                periodId : periodId
-            },
-            async : false,
-            success : function(data) {
-                if(data != null && data.detectedResult == '200' && data.submitResult == '200'){
-                    //提交工作流
-                    shr.perfweb.perfGoalsFillNew.superClass.actSubmit.call(that, event, action);
-                }else{
-                    shr.showError({message : data.detectedResult,hideAfter : 5});
-                }
-            }
-        });
-        // that.selfRemoteCall({
-        //     method : "saveTarget",
-        //     param : {
-        //         recordList : JSON.stringify(recordListObj),
-        //         indicatorList : JSON.stringify(indicatorListObj),
-        //         recordFieldArr : JSON.stringify(recordFieldArr),
-        //         indicatorFieldArr : JSON.stringify(indicatorFieldArr),
-        //         toDeleteIndicatorIds : toDeleteIndicatorIds.toString(),
-        //         evaObj : evaObj,
-        //         periodId : periodId
-        //     },
-        //     async : false,
-        //     type:"post",
-        //     success : function(data) {
-        //         if(data != null && data.result == 'SUCCESS'){
-        //             //3.指标保存成功后将评估对象的目标状态设置成已提交状态
-        //             that.selfRemoteCall({
-        //                 method : "submitPersonalTarget",
-        //                 param : {
-        //                     evaObj : evaObj,
-        //                     periodId : periodId
-        //                 },
-        //                 async : false,
-        //                 success : function(data) {
-        //                     if(data != null && data.detectedResult == '200' && data.submitResult == '200'){
-        //                         //提交工作流
-        //                         shr.perfweb.perfGoalsFillNew.superClass.actSubmit.call(that, event, action);
-        //                     }else{
-        //                         shr.showError({message : data.detectedResult,hideAfter : 5});
-        //                     }
-        //                 }
-        //             });
-        //         }else{
-        //             shr.showError({message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_109,hideAfter : 5});
-        //         }
-        //     }
-        // });
-
-    },
-    /**
-     * 下达
-     */
-    transmitAction : function(){
-         if(!canSaveVerify("submit")){
-            return false;
-         }
-        //判断定量指标是否维护评分公式和目标值
-        var unvalidArr = getUnvalidPerfAchievement();
-        if(unvalidArr.length > 0) {
-            shr.showConfirm( '【'+unvalidArr.join(',') + '】'+
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_117, function(){
-                doRemoteCallGetEvaObjTargetStatus();
-            });
-            return false;
-        }
-        //执行提交操作
-        doRemoteCallGetEvaObjTargetStatus();
-    },
-
-    /**
-     * 打回
-     */
-    backAction : function(){
-
-        //判断目标提交状态
-        var personalGoalStatus = $("li[workerid='" +evaObj+ "']").find("i[name='targetStatus']").text();
-        if (jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_80 != personalGoalStatus) {
-            var opeTips =
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_96 == personalGoalStatus ?
-                    jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_96 :
-                    jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_79;
-            shr.showError({message: shr.formatMsg(jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_6,[opeTips]),hideAfter : 5});
-            return;
-        }
-
-        //增加打回原因弹出框
-        var backHTML = '<div id="backToUpLevel">'+
-            // 打回原因
-            '<p class="dialog-text">'+jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_8+'</p>'+
-            '<p><textarea id="backReason" rows="8" maxlength="2000" placeholder="'+
-            shr.formatMsg(jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_53,[2000])+ '"></textarea>'+
-            '</p>'+
-            
-            // '<span>通知方式:</span>'+
-            '<p class="dialog-text">'+jsBizMultLan.perfweb_perfGoalsFillNew_bw0513_02+
-            // '<p >通知目标填报人:</p>'+
-            '<span class="note-msg">'+jsBizMultLan.perfweb_perfGoalsFillNew_bw0806_01+
-            '</span>'+
-            '</p>'+
-            '<div id="pickReminderDialog" >'+
-            '<div class="type-box">'+
-            '<div>'+
-            '<input id="msgReminder" type="checkbox" value="msg">'+
-            // '<label for="msgReminder" class ="checked">消息通知</label>'+
-            '<label for="msgReminder" class ="checked">'+jsBizMultLan.perfweb_perfGoalsFillNew_bw0513_03+
-            '</label>'+
-            '</div>'+
-            '<div>'+
-            '<input id="emailReminder" type="checkbox" value="email">'+
-            // '<label for="emailReminder">邮件</label>'+
-            '<label for="emailReminder">'+jsBizMultLan.perfweb_perfGoalsFillNew_bw0513_04+
-            '</label>'+
-            '</div>'+
-            '<div>'+
-            '<input id="SMSReminder" type="checkbox" value="sms">'+
-            // '<label for="SMSReminder">短信</label>'+
-            '<label for="SMSReminder">'+jsBizMultLan.perfweb_perfGoalsFillNew_bw0513_05+
-            '</label>'+
-            '</div>'+
-            '<div>'+
-            '<input id="cloudReminder" type="checkbox" value="cloud">'+
-            '<label for="cloudReminder">' +
-            // '<label for="cloudReminder">云之家</label>'+
-            jsBizMultLan.perfweb_perfGoalsFillNew_bw0513_06+
-            '</label>'+
-            '</div>'+
-            '</div>'+
-            '</div>'+
-            '</div>';
-        $(document.body).append(backHTML);
-        $('#msgReminder, #emailReminder, #SMSReminder, #cloudReminder').shrCheckbox();
-        $('#msgReminder, #emailReminder, #SMSReminder,#cloudReminder').shrCheckbox('onChange', function(){
-            var id = $(this).attr('id');
-            if($(this).shrCheckbox('getValue')){
-                $('label[for="'+id+'"]').addClass('checked');
-            }else{
-                $('label[for="'+id+'"]').removeClass('checked');
-            }
-        });
-        $('#msgReminder').shrCheckbox('check');
-        if($.browser.msie || $.browser.mozilla){
-            $('#backReason').unbind('focus').bind('focus',function(){
-                if($(this).attr('placeholder') == $(this).text()){
-                    $(this).text('');
-                }
-            })
-            if($.browser.version != "11.0"){
-                $('#backReason').unbind('blur').bind('blur',function(){
-                    if($(this).text() == ''){
-                        $(this).text($(this).attr('placeholder'));
-                    }
-                })
-            }
-        }
-        var isSendEmail = 0;
-         $("#isSendEmail").shrCheckbox();
-         $("#isSendEmail").shrCheckbox('onChange' , function () {
-             if($(this).shrCheckbox('isSelected')) {
-                 isSendEmail = 1
-             } else {
-                 isSendEmail = 0;
-             }
-         });
-        $("#backToUpLevel").show();
-        // 将弹出对话框弹出
-        $('#backToUpLevel').dialog({
-            title : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_8,
-            autoOpen : true,
-            show : "blind",
-            width : 700,
-            height : 406,
-            resizable : true,
-            position : [ 'center', 'center' ],
-            modal : true,
-            buttons : [{
-                text:jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_70,
-                click : function() {
-                    var SMSType = "NOSEND";
-                    var emailType = "NOSEND";
-                    var portalType = "NOSEND";
-                    var yzjMsgType = "NOSEND";
-
-                    var meg = $('#msgReminder').shrCheckbox('isSelected');
-                    var email = $('#emailReminder').shrCheckbox('isSelected');
-                    var SMS = $('#SMSReminder').shrCheckbox('isSelected');
-                    var yzj = $('#cloudReminder').shrCheckbox('isSelected');
-                    if (SMS) {
-                        SMSType = "SEND"
-                    }
-                    if (email) {
-                        emailType = "SEND"
-                    }
-                    if (meg) {
-                        portalType = "SEND"
-                    }
-                    if (yzj) {
-                        yzjMsgType = "SEND";
-                    }
-                    //执行打回操作
-                    var backReason = $("#backReason").val();
-                    if(backReason && backReason.length > 2000) {
-                        shr.showError({
-                            message: shr.formatMsg(
-                                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_11,
-                                [2000]
-                            ),
-                            hideAfter : 5
-                        });
-                        return;
-                    }else {
-                        that.selfRemoteCall({
-                            method : "back",
-                            param : {
-                                evaObj : evaObj,
-                                period : periodId,
-                                backReason : backReason,
-                                SMSType: SMSType,
-                                emailType: emailType,
-                                portalType: portalType,
-                                yzjMsgType: yzjMsgType
-                            },
-                            async : true,
-                            type:"post",
-                            success : function(data) {
-                                if(data.successCount != 0 ){
-                                    shr.showInfo({
-                                        message: jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_9,
-                                        hideAfter : 5
-                                    });
-                                    if ($('.workerList').find('li').length == 1) {
-                                        goTransmitList();
-                                    } else {
-                                        //location.reload();
-                                        $('#selectionList').utilsSelectionList('reloadList', {fetchOthers: 1});
-                                    }
-                                }else{
-                                    shr.showError({
-                                        message: jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_10+
-                                        data.result[0].muitTipsMessage,
-                                        hideAfter : 5
-                                    });
-                                }
-                            }
-                        });
-                    }
-
-                    $(this).dialog("destroy").remove();
-                }},{
-                text:jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_64,
-                click : function() {
-                    $(this).dialog("destroy").remove();
-                }
-            }],
-            close: function () {
-                $(this).dialog("destroy").remove();
-            }
-        });
-    },
-    /**
-     * 查看打回原因
-     */
-    viewBackReasonAction: function() {
-        //获取打回原因列表
-        if(backReasonList.list.length == 0) {
-            backReasonList.list = that.getBackReasonData(evaObj);
-        }
-        var backReasonListTpl = document.getElementById('backReasonListTpl').innerHTML;
-        backReasonList.jsBizMultLan = jsBizMultLan;
-        var backHTML = juicer(backReasonListTpl, backReasonList);
-        $(document.body).append(backHTML);
-        $("#backReasonForm").show();
-        // 将弹出对话框弹出
-        $('#backReasonForm').dialog({
-            title : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_40,
-            autoOpen : true,
-            show : "blind",
-            width : 600,
-            height : 350,
-            resizable : true,
-            position : [ 'center', 'center' ],
-            modal : true,
-            buttons : [{
-                text:jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_70,
-                click : function() {
-                    //查看打回原因
-                    $("#backReasonForm").dialog("destroy").remove();
-                }},{
-                text:jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_64,
-                click : function() {
-                    $("#backReasonForm").dialog("destroy").remove();
-                }
-            }]
-        });
-    },
-    getBackReasonData : function(evaObj,callback) {
-        //补丁11 绩效工作台性能优化 yien
-        var async = false;
-        if(typeof callback == 'function') {
-            async = true;
-        }
-        var result = [];
-        that.selfRemoteCall({
-            method : "getBackReasonData",
-            param : {
-                evaObj : evaObj,
-                type : pageType
-            },
-            async : async,
-            type:"post",
-            success : function(data) {
-                if(data != null && data.result == '200'){
-                    result = data.data;
-                    //补丁11 绩效工作台性能优化 yien
-                    if(async) {
-                        callback(result);
-                    }
-                }
-            }
-        });
-        return result;
-    },
-    //根据评估对象id获取单据id,如果是指定人下达则返回空,
-    getTargetTransmitBill: function(evaObj) {
-        var result = {};
-        that.selfRemoteCall({
-            method : "getTargetTransmitBill",
-            param : {
-                evaObj : evaObj
-            },
-            async : false,
-            type:"post",
-            success : function(data) {
-                if(data != null && data.result == '200'){
-                    result['billId'] = data.billId;
-                    result['state'] = data.state;
-                }
-            }
-        });
-        //补丁18
-        if(!$.isEmptyObject(result['billId'])) {
-            //显示查看审批意见按钮
-            that.billId = result.billId;
-            $('#auditResult').show();
-        }else {
-            $('#auditResult').hide();
-        }
-        return result;
-    },
-    //初始化 我的绩效-我的目标 页面按钮
-    initViewMyTargetFormCfg: function() {
-        $('#addwrap,#submit').hide();
-        //$('#breadcrumb').parent().hide();
-        //我的绩效-我的目标
-        $('.delgoal').remove();
-        // $('.scoreBtns').hide();
-        $('#addindibtngrout,#back, #transmit, #setTargetWorkflow,#importIndicator').hide();
-        //隐藏“查看打回原因”按钮
-        $("#viewBackReason").hide();
-        //判断是否显示 流程图、审批意见 按钮
-        if(that.targetTransmitBill['billId']) {
-            $('#workFlowDiagram').show();
-            $('#auditResult').show();
-        }
-    },
-    /**
-     * 查看流程图
-     */
-    workFlowDiagramAction: function() {
-        var billId = that.getTargetTransmitBill(evaObj)['billId'];
-        if(billId) {
-            that.getWorkFlowHelper().viewWorkFlowDiagram(billId);
-        }else {
-            //BT1393159 提示信息,目标填报已经提交,但是工作流发起报错,这里还不知道怎么处理好
-            shr.showError({message: jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_38});
-        }
-    },
-
-    /**
-     * 查看审批结果
-     */
-    auditResultAction: function() {
-        var billId = that.getTargetTransmitBill(evaObj)['billId'];
-        if(billId) {
-            that.getWorkFlowHelper().viewAuditResult(billId);
-        }else {
-            //BT1393159 提示信息,目标填报已经提交,但是工作流发起报错,这里还不知道怎么处理好
-            shr.showError({message: jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_38});
-        }
-    },
-
-    /**
-     * 生成下拉框信息
-     */
-    initWorkFlowList: function (evaObj) {
-        var _self = this;
-
-        that.selfRemoteCall({
-            method : "getWorkFlowList",
-            param : {
-                evaObj : evaObj,
-            },
-            success : function(data) {
-                var setTargetWorkflowTpl = document.getElementById('setTargetWorkflowTpl').innerHTML;
-                var html = juicer(setTargetWorkflowTpl, {jsBizMultLan: _self.jsBizMultLan});
-                $(document.body).append(html);
-
-                var options=[],curval;
-                for (var key in data) {
-                    options.push({value: key, alias: data[key]})
-                }
-                curval = options[0].value;
-                _self.initWorkFlowEvent(evaObj, curval, false);
-                $("#workFlows").shrSelect({
-                    'id': 'workFlows',
-                    'data':options,	//选项
-                    'value': curval,
-                    'onChange':function(){
-                        var option = $(this).shrSelect('getValue');
-                        _self.initWorkFlowEvent(evaObj, option.value, true);
-                    },
-                });
-            }
-        });
-    },
-
-    initWorkFlowEvent: function (evaObj, val, reload) {
-        var _self = this;
-        _self.setTargetWorkflow(val, reload);
-    },
-
-
-    /*
-     * 设置指标流程
-     * */
-    setTargetWorkflow : function(workFlowId, reload){
-        /*var html=juicer(setTargetWorkflowTpl,null);
-        $(document.body).append(html);*/
-        var name = new Array(); //字段别名
-        var model = new Array();  //model
-        name.push("ID");
-        model.push({"index":"id","width":20,"label":"Id","name":"targetId","align":"left",hidden: true,resizable:false});
-
-        name.push(jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_46);
-        model.push({"index":"evaObj","width":20,"label":"evaObj","name":"evaObj",align:"left",hidden: true,resizable:false});
-
-        var groupHeaders = null;
-        //获取表头字段定义
-        that.selfRemoteCall({
-            method : "initTargetNodeFieldList",
-            param : {
-                //evaObj : evaObj
-                workFlow :  workFlowId
-            },
-            async : false,
-            type:"post",
-            success : function(data) {
-                if(data != null && data.fieldList.length>0){
-                    groupHeaders = data.groupHeaders;
-                    var fieldList = data.fieldList;
-                    var fieldLen = fieldList.length;
-                    var cellwidth = 160;
-                    if(0 < data.fieldList.length < 3){
-                        // cellwidth = ($(window).width()*0.6 - 85*3 - 27) / data.fieldList.length;
-                        cellwidth = ($(window).width()*0.6 - 27) / (data.fieldList.length+3)-5;
-                    }
-                    name.push(jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_62);
-                    model.push({"index":"areaName","label":"Id","name":"areaName",width:cellwidth, align:"center",frozen: true,sortable:false});
-
-                    name.push(jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_111);
-                    model.push({"index":"targetNumber","label":"Id","name":"targetNumber",width:cellwidth, align:"center",frozen: true,sortable:false});
-
-                    name.push(jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_119);
-                    model.push({"index":"targetName","label":"Id","name":"targetName",width:cellwidth, align:"center",frozen: true,sortable:false});
-                    for(var i=0; i<fieldLen; i++){
-                        name.push(fieldList[i].showName);
-                        var modelName = {name:fieldList[i].colName,index:fieldList[i].colName, width:cellwidth, align:"center",frozen: true,sortable:false,cellattr: addCellAttr};
-                        model.push(modelName);
-                    }
-
-                    targetNodeTableOptions={
-                        name:name,
-                        model:model,
-                        multiselect:false,
-                        multiselectWidth:30,//复选框单元格宽度
-                        shrinkToFit:false,
-                        width:'auto',												//这个宽度不能为百分比
-                        height:'auto',											//高度,表格高度。可为数值、百分比或'auto'
-                        sortname : '',
-                        sortorder : '',
-                        sortable:false,
-
-                        rowNum : 50,
-                        url: that.dynamicPage_url+"?method=getNodeTargetListData&uipk=" + that.uipk  + "&shruicode=" + shr.getUrlRequestParam('shruicode'),
-                        postData : {
-                            evaObj : evaObj,
-                            workFlow :  workFlowId
-                        },
-                        onSelectRow : function (rowid,status){},
-                        onSelectAll : function (aRowids,status){},
-                        gridComplete: function () {
-                            var trsObj = $("#setTargetWorkflowTable>tbody>tr:gt(0)");
-                            trsObj.each(function (ind2, tr) {
-                                var tdObj = $(tr).children("td");
-                                tdObj.each(function (ind2, td) {
-                                    var tdo = $(td);
-                                    if (tdo.text() == " ") {
-                                        $(tdo).text(jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_36);
-                                        $(tdo).css("color","red");
-                                    }
-                                });
-                            });
-                        }
-                    };
-
-
-                    if (reload) {
-                        $('#setTargetWorkflowTable').gridUnload();
-                    }
-                    hrtable.createTable($('#setTargetWorkflowTable'),targetNodeTableOptions);
-                    //修复当groupHeaders=''的时候转json报错
-                    if(groupHeaders && null != groupHeaders){
-                        $("#setTargetWorkflowTable").jqGrid('setGroupHeaders', {
-                            useColSpanStyle: true,
-                            groupHeaders:JSON.parse(groupHeaders)
-                        });
-                        $("table[aria-labelledby='gbox_setTargetWorkflowTable'] th").css("text-align", "center");
-                    }
-                }
-            }
-        });
-    },
-    /**
-     * 初始化设置评分人弹框
-     */
-    initTargetWorkflowDialog : function(evaObjId) {
-        if (evaObjId) {
-            evaObj = evaObjId;
-        }
-        $("#setTargetWorkflowDialog").remove();
-        var setTargetWorkflowDialogHtlml = '<div id="setTargetWorkflowDialog"  style="overflow:hidden;display:none;">'
-            + '	<iframe id="operationDialog" name="operationDialog" width="100%" height="100%" frameborder="0" allowtransparency="true"></iframe>'
-            + '</div>';
-        $(document.body).append(setTargetWorkflowDialogHtlml);
-        that.selfRemoteCall({
-            method : "getWorkFlowList",
-            param : {
-                evaObj : evaObj,
-            },
-            async: false,
-            success : function(data) {
-                if (data && !$.isEmptyObject(data)) {
-                    var options = [];
-                    for (var key in data) {
-                        options.push({value: key, alias: data[key]})
-                    }
-                    var curVal = options[0].value;
-
-                    //组织考核-yien
-                    var _uipk = 'com.kingdee.shr.perfweb.app.base.evalplan.PerfEvaObject.nodeHandler.list';
-                    if(isOrg== '1') {
-                        _uipk = 'com.kingdee.shr.perfweb.app.base.evalplan.PerfEvaObject.nodeHandler4Org.list'
-                    }
-
-                    ////设置serviceId,设置评分人弹框出现行政组织树-yien
-                    var _serviceId = shr.getUrlRequestParam("serviceId",window.parent.location.href);
-
-
-                    var url = shr.getContextPath() + "/dynamic.do?uipk=" + _uipk
-                        + "&period=" + encodeURIComponent(periodId)
-                        + "&evaObj=" + encodeURIComponent(evaObj)
-                        + "&workFlow=" + encodeURIComponent(curVal)
-                        + "&pageType=dialog"
-                        + "&serviceId=" + _serviceId
-                        + "&scoringWay=" + scoringWay
-                        + "&planName=" + encodeURIComponent(planName)
-                        + "&shruicode=" + shr.getUrlRequestParam('shruicode')
-                        + "&isOrg=" + isOrg; //组织考核-yien
-                    $("#setTargetWorkflowDialog").find("iframe").attr('src', url);
-                    $("#setTargetWorkflowDialog").dialog({
-                        autoOpen : true,
-                        show : "blind",
-                        width : '90%',
-                        height : $(window).height()*0.9,
-                        title : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_71,
-                        resizable : true,
-                        position : [ 'center', 'center' ],
-                        modal : true,
-                        buttons : [{
-                            text:jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_69,
-                            click : function() {
-                                $(this).dialog('close');
-                            }},{
-                            text:jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_29,
-                            click : function() {
-                                $(this).dialog('close');
-                            }
-                        }],
-                        close : function(){
-                            $('#setTargetWorkflowDialog').hide();
-                        }
-                    });
-                } else {
-                    shr.showError({
-                        "message":
-                            jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_31,
-                        hideAfter : 5});
-                }
-            }
-        });
-
-    },
-
-    setTargetWorkflowAction : function() {
-        this.initTargetWorkflowDialog();
-    },
-    /**
-     * 指标名称,指标编码监听字数
-     */
-    inputFieldLenListener: function(){
-        $('#editboxDialog input, #editboxDialog textarea').live('input propertychange', function() {
-            var $input = $(this);
-            var objVal = $input.val();
-            var msgId = $input.attr("id");
-            var fname = $input.attr("fname");
-            var msgShow = $('.errowmsg[for="'+fname+'"]');
-            //BT1365179 yien 随便完善下,增加前端长度校验
-            var maxlength = 0;
-            var showName = $input.attr('showName');
-            var len = objVal.length;
-            var fieldType = $input.attr('field-type');
-            if(!$input.is(':focus') || fieldType === 'Number' || fieldType === 'Select' || fieldType === 'Date'){
-                return false;
-            }
-            //BT1372296 关键举措名称
-            if (fname == 'FNAME' || fname == 'FKEYITEM') {
-                //增加最大长度限制
-                maxlength = 255;
-            }else if (fname == 'FNUMBER') {
-                maxlength = 80;
-            }else if (fname == 'FREMA' || fname == 'FREMARK' || fname == 'FINDECATORDESC' || fname == 'FEVALSTANDARD' || fname == 'FMEASURESTANDARD') {
-                maxlength = 1024;
-            }else if (fname.indexOf('FEXTEND') > -1) {
-                maxlength = 1024;
-                //BT1372296 关键举措类型,关键举措编码 限制长度
-            }else if (fname == 'FKEYCODE' || fname == 'FKEYTYPE') {
-                maxlength = 44;
-            }
-            else {
-                return;
-            }
-            if($input.is(':focus')){
-                msgShow.text(showName +
-                    shr.formatMsg(jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_121,[maxlength,len])).show();
-                if(typeof $input.attr('maxlength') == "undefined") {
-                    $input.attr({maxlength : maxlength});
-                }
-            }
-        });
-    },
-    /**
-     * 指标描述、指标评语、评价标准、衡量标准、备注监听字数
-     */
-    textAreaFieldLenListener: function(){
-        $('div[name="textAreaFieldDiv"]').live('input propertychange', function() {
-            var $textArea = $(this).find("textarea");
-            if($textArea.length == 0) {
-                return;
-            }
-            //BT1365179 yien 随便完善下,增加前端长度校验
-            var objVal = $textArea.val();
-            var msgId = $textArea.attr("id");
-            var fname = $textArea.attr("fname");
-            var showName = $textArea.attr("showName");
-            var msgShow = $("span[msgId='MSG_" +msgId+ "']");
-            var maxlength = 1024;
-            var len = objVal.length;
-            if(fname == 'FINDECATORDESC'){
-                //额~抽象完了
-            }else if(fname == 'FEVALSTANDARD'){
-                //额~抽象完了
-            }else if(fname == 'FMEASURESTANDARD'){
-                //额~抽象完了
-            }else {
-                return;
-            }
-            msgShow.text(showName +
-                shr.formatMsg(jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_121,[maxlength,len])).show();
-            if(typeof $textArea.attr('maxlength') == "undefined") {
-                $textArea.attr({maxlength : maxlength});
-            }
-            msgShow.show();
-        })
-    },
-    /**
-     * 修改评分人弹框
-     */
-    createDialogDiv: function (targetId, wfNodeId, e) {
-        var _self = this;
-        $('#editNodeHandlerDiv').remove();
-        // 未生成dialog
-        var editNodeHandlerDiv = $('<div id="editNodeHandlerDiv"></div>').appendTo($('body'));
-
-        editNodeHandlerDiv.dialog({
-            modal: false,
-            title: jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_90,
-            width: 650,
-            minWidth: 650,
-            height: 430,
-            minHeight: 430,
-            open: function (event, ui) {
-                var url = shr.assembleURL('com.kingdee.eas.basedata.person.app.Person.editNodeHandler.dialog', 'view', {
-                    serviceId: '',
-                });
-                var content = '<iframe id="editNodeHandlerFrame" name="editNodeHandlerFrame" width="100%" height="98%" frameborder="0"  allowtransparency="true" src="' + url + '"></iframe>';
-                editNodeHandlerDiv.append(content);
-            },
-            close: function (event, ui) {
-                editNodeHandlerDiv.empty();
-            },
-            buttons: [{
-                text:jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_69,
-                click: function () {
-                    var _this = this;
-                    var weightReg = /^\d+(\.\d{1,2})?$/;
-                    var data = window.frames["editNodeHandlerFrame"].getSelectedData();
-                    if(null == data || data.length<1){
-                        shr.showError({message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_51,hideAfter : 5});
-                        return false;
-                    }else{
-                        var len = data.length;
-                        for(var i=0; i<len; i++){
-                            var weight = data[i].weight;
-                            if(!weightReg.test(weight)){
-                                shr.showError({message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_68,hideAfter : 5});
-                                return false;
-                            }
-                            //处理后端获取person.id为空的bug
-                            data[i]['person.id'] = data[i]['id'];
-                        }
-                    }
-                    var jsonData = JSON.stringify(data);
-                    //保存目标节点设置
-                    that.selfRemoteCall({
-                        method : "saveTargetNodeHandler",
-                        param : {
-                            evaObj : evaObj,
-                            wfNode : wfNodeId,
-                            indicatorId : targetId,
-                            data : jsonData
-                        },
-                        async : false,
-                        success : function(data) {
-                            if(data != null && data.code == 200){
-                                shr.showInfo({message : data.msg,hideAfter : 5});
-                                $(_this).dialog('close');
-                                $("#setTargetWorkflowTable").trigger("reloadGrid");
-                            }else{
-                                shr.showError({message : data.msg,hideAfter : 5});
-                            }
-                        }
-                    });
-                }},{
-                text:jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_64,
-                click: function () {
-                    $(this).dialog('close');
-                }
-            }],
-        });
-
-        $(".ui-dialog-titlebar-close").bind("click", function () {
-            editNodeHandlerDiv.dialog("close");
-        });
-    },
-
-    /**
-     * 导入目标
-     */
-    importIndicatorAction: function () {
-        var _self = this;
-        var customParam = {
-            shruicode: shr.getUrlRequestParam("shruicode")
-        };
-        this.doImportData('importIndicator', customParam, undefined);
-    },
-
-    	/**
-	 * 执行导入操作
-	 * @param {String} btnName 按钮名称
-	 * @param {Object} customParam 自定义参数
-	 * @param {function(dataList, customParams)} callback 导入任务执行成功后回调函数,参数为导入的数据、自定义参数。有此回调函数时,默认导入将不进行写入数据库操作
-	 */
-	doImportData: function(btnName, customParam, callback){
-		if(typeof(customParam)=='function'){
-			callback = customParam;
-			customParam = {shruicode: shr.getUrlRequestParam("shruicode")};
-		}
-		var autoReloadOnEndImport = callback && typeof(customParam)=='function' ? false : true;
-		var clsCallback = undefined;
-		if(autoReloadOnEndImport){
-			clsCallback = function(hasImport){
-				if(hasImport){
-					window.location.reload();
-				}
-			};
-		}
-		this.startImportData(btnName, customParam, clsCallback, callback);
-	},
-
-    /**
-     * 开始进行导入
-     * @param {String} btnName 按钮名称
-     * @param {Object} customParam 自定义参加,将传送至后台
-     * @param {function(hasImport)} clsCallback 关闭导入弹出框时回调处理,参加为是否有过导入
-     * @param {function(dataList, customParams)} callback 导入任务执行成功后回调函数,参数为导入的数据、自定义参数。有此回调函数时,默认导入将不进行写入数据库操作
-     */
-    startImportData: function (btnName, customParam, clsCallback, callback) {
-        var uipk = shr.getUrlRequestParam("uipk");
-        var serviceId = shr.getUrlRequestParam("serviceId",window.parent.location.href);
-        btnName = btnName || 'import';
-        shr.doImportExcel({
-            btnName: btnName,
-            uipk: uipk,
-            serviceId: serviceId,
-            customParam: customParam,
-            shruicode: shr.getUrlRequestParam("shruicode"),
-            enablePause: true,
-            clsCallback: clsCallback,
-            evaObj: evaObj,
-            periodId: periodId,
-        }, callback);
-    },
-    /**
-     * 上传附件弹出框
-     */
-    uploadFileDialog: function () {
-        $('#attachments').unbind('click').bind('click', function () {
-            //BT-00545259 【8611补丁测试PT161638】,绩效管理--考核计划执行--未发送--查看评估表单,附件查看不了
-            that.openFileDialog();
-        })
-    },
-
-    //BT-00545259 【8611补丁测试PT161638】,绩效管理--考核计划执行--未发送--查看评估表单,附件查看不了
-    openFileDialog: function() {
-
-        var html = juicer(uploadAttachmentsTpl, {uploadAttachSize:uploadAttachSize});
-        $(document.body).append(html);
-        if (showAttachsOnly) {
-            $('.uploadfilebtn').hide();
-            $(".delfile").hide();
-        }
-
-        $('#uploadFileBox').html('');
-
-        that.selfRemoteCall({
-            method: "initialAttachment",
-            param: {evaObj: evaObj},
-            async: false,
-            /*$.ajax({
-                url: shr.getContextPath() + "/attachmentUpload.do?method=initialAttachment",
-                data: {formId: evaObj},*/
-            success: function (data) {
-                if (data) {
-                    for (var i = 0; i < data.length; i++) {
-                        var tempData = data[i];
-                        var url = that._assembleDownloadUrl(tempData.id, tempData.attachKey);
-                        var basetr = '<tr id="' + tempData.id + '" attachKey="' + tempData.attachKey + '">' +
-                            '<td class="textOverflow paddingbox">' + tempData.name + '.' + tempData.simpleName + '</td>' +
-                            '<td>'+tempData.creator+'</td>'+'<td>'+tempData.createTime+'</td>';
-
-                        var del = '';
-                        if (tempData.isSelf && tempData.isSelf == "true") {
-                            // del = '<span class="delfile linkstyle">删除</span>';
-                            del = '<span class="delfile linkstyle">'+jsBizMultLan.perfweb_perfGoalsFillNew_i18n_b10_15626131368_0
-                                +'</span>';
-                        }
-                        if (tempData.simpleName.toUpperCase() == "TXT" || tempData.simpleName.toUpperCase() == "PDF" || tempData.simpleName.toUpperCase() == "GIF" || tempData.simpleName.toUpperCase() == "JPG" || tempData.simpleName.toUpperCase() == "PNG" || tempData.simpleName.toUpperCase() == "BMP") {
-                            // basetr += '<td>' + del + '<a class="uploadfile linkstyle" href="' + url + '" target="_blank" style="color:#388cff">下载</a></td>' +
-                            basetr += '<td>' + del + '<a class="uploadfile linkstyle" href="' + url + '" target="_blank" style="color:#388cff">'+jsBizMultLan.perfweb_perfGoalsFillNew_i18n_b10_15626131368_1
-                                +'</a></td>' +
-                                '</tr>';
-                        } else {
-                            // basetr += '<td>' + del + '<a class="uploadfile linkstyle" href="' + url + '" style="color:#388cff">下载</a></td>' +
-                            basetr += '<td>' + del + '<a class="uploadfile linkstyle" href="' + url + '" style="color:#388cff">'+jsBizMultLan.perfweb_perfGoalsFillNew_i18n_b10_15626131368_1
-                                +'</a></td>' +
-                                '</tr>';
-                        }
-                        $('#uploadFileBox').append(basetr);
-                        //shr.setIframeHeight();
-                    }
-                }
-                //it.uploadFile();//上传附件
-                $("#attachmentsDialog").dialog({
-                    autoOpen: true,
-                    show: "blind",
-                    width: 850,
-                    height: 500,
-                    // title: "附件",
-                    title: jsBizMultLan.perfweb_perfGoalsFillNew_i18n_b10_15626131368_2,
-                    resizable: false,
-                    position: ['center', self != top ? 70 : 'center'],
-                    modal: true,
-                    buttons: [
-                        {
-                            text: jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_70,
-                            click: function() {
-                                $(this).dialog('close');
-                            }
-                        },
-                        {
-                            text: jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_64,
-                            click: function() {
-                                $(this).dialog('close');
-                            }
-                        }
-                    ],
-                    // buttons: {
-                    //     '确定': function () {
-                    //         $(this).dialog('close');
-                    //         /**
-                    //          * 这时要刷新附件数
-                    //          */
-                    //         getAttachcount();
-                    //     },
-                    //     '取消': function () {
-                    //         $(this).dialog('close');
-                    //     }
-                    // },
-                    close: function () {
-                        $('#attachmentsDialog').remove();
-                    }
-                });
-                if (showAttachsOnly) {
-                    //不给上传,应该同时也不给删除啊
-                    $(".delfile").hide();
-                }
-            }
-        });
-    },
-
-    /**
-     * 获取上传文件的下载地址
-     * @param id
-     * @returns {string}
-     * @private
-     */
-    _assembleDownloadUrl: function (id, attachKey) {
-        // var params = {
-        //     method: 'download',
-        //     id: id,
-        //     key: attachKey
-        // }
-        // return shr.getContextPath() + '/attachmentUpload.do?' + $.param(params);
-        var self = this;
-        var permItemId = "";
-        if(!self.isFromWF()){
-            permItemId = shr.getCurrentPagePermItemId();
-        }
-        var params = {
-            method: 'download',
-            id: id,
-            permItemId: permItemId,
-            billId:shr.getUrlRequestParam('billId'),
-            shruicode:shr.getShruicode(),
-            uipk:shr.getUrlRequestParam('uipk')
-            // assigmentId:self.getAssignmentId(),
-            // ProcInstId:self.getProcInstId()
-        }
-        return shr.getContextPath() + '/attachmentUpload.do?' + $.param(params);
-    },
-
-    /**
-     * 上传文件
-     */
-    uploadFile: function (obj) {
-        /*$(document).on('change', '#uploadAttach', function (e) {*/
-        $('#uploadAttach').unbind().live('change', function(e) {
-            // 检测上传文件的类型
-            var acceptFileArr = ['doc','docx','xlsx','xls','jpg','jpeg','png','jpeg', 'pdf','zip'];
-            var fileList = e.target.files;
-            var fileLength = e.target.files.length;
-            if (!fileLength || fileLength == 0) {
-                // shr.showWarning({message: "请选择要上传的文件 !"});
-                shr.showWarning({message: jsBizMultLan.perfweb_perfGoalsFillNew_i18n_b10_15626131368_3});
-                return false;
-            }
-            if (fileLength > 10) {
-                shr.showWarning({message: $.perfwebI18n.evaobjBatchAttachment.toomanyfiles});
-                return false;
-            }
-            var totalSize = 0;
-            for (var i = 0; i < fileLength; i++) {
-                var fileItem = fileList[i];
-                var filePath = fileItem.name;
-                var ext, idx;
-                if (filePath == '') {
-                    // shr.showWarning({message: "请选择要上传的文件 !"});
-                    shr.showWarning({message: jsBizMultLan.perfweb_perfGoalsFillNew_i18n_b10_15626131368_3});
-                    return false;
-                } else {
-                    idx = filePath.lastIndexOf(".");
-                    if (idx != -1) {
-                        ext = filePath.substr(idx + 1).toUpperCase();
-                        ext = ext.toLowerCase();
-                        if (!array_contain(acceptFileArr, ext)) {
-                            // shr.showWarning({message: "只能上传 .doc,.docx,.xlsx,.xls,.jpg,.jpeg,.png,.jpeg,.pdf 类型的文件!"});
-                            shr.showWarning({message: shr.formatMsg(jsBizMultLan.perfweb_perfGoalsFillNew_i18n_b10_15626131368_4,['.doc,.docx,.xlsx,.xls,.jpg,.jpeg,.png,.jpeg,.pdf,.zip'])});
-                            return false;
-                        }
-                    } else {
-                        shr.showWarning({message: ""});
-                        return false;
-                    }
-
-                    // 在这里限制文件大小,ie9要想获取文件大小,就要使用flash插件
-                    var size = fileItem.size;
-                    if (size / (1024 * 1024 * uploadAttachSize) > 1) {
-                        shr.showWarning({
-                            // message: "上传文件不能大于5M",
-                            message: shr.formatMsg(jsBizMultLan.perfweb_perfGoalsFillNew_bw0406_01,[uploadAttachSize]),
-                            hideAfter: 3
-                        });
-                        return false;
-                    }
-                    totalSize = totalSize + size;
-                }
-            }
-            if (totalSize / (1024 * 1024 * uploadAttachSize) > 1) {
-                shr.showWarning({
-                    // message: "上传文件不能大于5M",
-                    message: shr.formatMsg(jsBizMultLan.perfweb_perfGoalsFillNew_bw0406_01, [uploadAttachSize]),
-                    hideAfter: 3
-                });
-                return false;
-            }
-            that.uploadFileMulity(e);
-        })
-    },
-
-    uploadFileMulity: function (e) {
-        var fileObj = $(e.target);
-        var id = fileObj.attr("id");
-        $('#uploadFileBox').append('<image id="loadingGif" src="' + shr.getContextPath() + '/addon/perfweb/web/images/upload.gif"/>').show();
-        $.ajaxFileUpload({
-            // url: shr.getContextPath() +
-            // "/attachmentUpload.do?method=uploadAttachment",
-            // //用于文件上传的服务器端请求地址
-            url: that.dynamicPage_url + "?method=uploadAttachment&uipk=" + that.uipk + "&shruicode=" + shr.getUrlRequestParam('shruicode'),
-            data: {boID: evaObj},
-            secureuri: false, // 是否需要安全协议,一般设置为false
-            fileElementId: id, // 文件上传域的ID
-            dataType: 'json', // 返回值类型 一般设置为json
-            success: function (results) {// 服务器成功响应处理函数
-                if (results && results.result == 'success') {
-                    $('#loadingGif').remove();
-                    if (results && results.data && results.data.length > 0) {
-                        for (var i = 0; i < results.data.length; i++) {
-                            var data = results.data[i];
-                            var url = that._assembleDownloadUrl(data.id, data.attachKey);
-                            // uploadFileEvent();
-                            var showDel = "";
-                            if (data.isSelf && data.isSelf == "true") {
-                                // showDel = '<span class="delfile linkstyle">删除</span>';
-                                showDel = '<span class="delfile linkstyle">'+jsBizMultLan.perfweb_perfGoalsFillNew_i18n_b10_15626131368_0
-                                    +'</span>';
-                            }
-                            var tr = $('<tr id="' + data.id + '" attachKey="' + data.attachKey + '">' +
-                                '<td class="textOverflow paddingbox">' + data.filename + '</td>' +
-                                '<td>' + data.creator + '</td>' +
-                                '<td>' + data.createTime + '</td>' +
-                                // '<td>' + showDel + '<a class="uploadfile linkstyle" href="' + url + '" style="color:#388cff">下载</a></td>' +
-                                '<td>' + showDel + '<a class="uploadfile linkstyle" href="' + url + '" style="color:#388cff">'+jsBizMultLan.perfweb_perfGoalsFillNew_i18n_b10_15626131368_1
-                                +'</a></td>' +
-                                '</tr>');
-                            $('#uploadFileBox').append(tr);
-                        }
-                        /**
-                         * 这时要刷新附件数
-                         */
-                        getAttachcount();
-                    }
-                } else if (results && results.result == 'failed') {
-                    // console.log(results);
-                    var failedMag = results.failedMag;
-                    var errMsg = $.perfwebI18n.evaobjBatchAttachment['PERFWEB_F_0021'];
-                    if(failedMag && $.perfwebI18n.evaobjBatchAttachment[failedMag]) {
-                        errMsg = $.perfwebI18n.evaobjBatchAttachment[failedMag];
-                    }else if(failedMag) {
-                        errMsg = failedMag;
-                    }
-                    shr.showError({
-                        message: errMsg
-                    });
-                    $('#loadingGif').remove();
-                }
-            }
-        });
-    },
-
-    /**
-     * 删除上传文件
-     */
-    delFile: function () {
-        $(document).on('click', '.delfile', function () {
-            var $del = $(this);
-            var $tr = $del.parent('td').parent('tr');
-            var attachId = $tr.attr('id');
-            var attachKey = $tr.attr('attachKey');
-            // shr.showConfirm('确认删除?', function () {
-            shr.showConfirm(jsBizMultLan.perfweb_perfGoalsFillNew_i18n_b10_15626131368_6, function () {
-                that.selfRemoteCall({
-                    method: "canAttachmentDelete",
-                    async: false,
-                    param: {attachmentId : attachId},
-                    success: function (result) {
-                        if (result && result.canDelete) {
-                            var formId = evaObj;
-                            var permItemId = "";
-                            var self = that;
-                            if(!self.isFromWF()){
-                                permItemId = shr.getCurrentPagePermItemId();
-                            }
-                            $.ajax({
-                                url: shr.getContextPath() + "/attachmentUpload.do?method=deleteAttachment",
-                                data: {boID: formId, attachId: attachId, key: attachKey,
-                                    permItemId: permItemId,
-                                    billId:shr.getUrlRequestParam('billId'),
-                                    shruicode:shr.getShruicode(),
-                                    uipk:shr.getUrlRequestParam('uipk')},
-                                success: function (msg) {
-                                    var tr = $del.parents('tr');
-                                    tr.remove();
-                                    getAttachcount();
-                                }
-                            });
-                        } else {
-                            shr.showWarning({
-                                // message: "您无权删除该附件!",
-                                message: jsBizMultLan.perfweb_perfGoalsFillNew_i18n_b10_15626131368_7,
-                                hideAfter: 3
-                            });
-                        }
-                    }
-                });
-
-
-            });
-        });
-    },
-
-    // 指标上移
-    moveUp: function(fId,areaType){
-        var thisItem = $('li[indid="'+fId+'"]');
-    	var prevItem = thisItem.prev('li');
-    	var lis = thisItem.parent().find('li');
-        if (prevItem.length > 0) {
-            prevItem.before(thisItem);
-            //this.setOrder(fId,areaType,thisItem.index())
-        };       
-    	var size = $(thisItem.parent().find('li')).size();
-    	var data = [];
-    	for(var i = 0; i < size; i++){
-    		 var id = $($(thisItem.parent().find('li'))[i]).attr('indid')
-    		 data.push({
-    	            id: id,
-    	            type: areaType,
-    	            index: i.toString(),
-    	        })
-    	}   
-    	this.setOrder(data);
-    },
-
-    // 指标下移
-    moveDown: function(fId,areaType){
-        var thisItem = $('li[indid="'+fId+'"]');
-    	var nextItem = thisItem.next('li');
-        if (nextItem.length > 0) {
-            nextItem.after(thisItem);
-            //this.setOrder(fId,areaType,thisItem.index())
-        };
-    	var size = $(thisItem.parent().find('li')).size();
-    	var data = [];
-    	for(var i = 0; i < size; i++){
-    		 var id = $($(thisItem.parent().find('li'))[i]).attr('indid')
-    		 data.push({
-    	            id: id,
-    	            type: areaType,
-    	            index: i.toString(),
-    	        })
-    	}   
-    	this.setOrder(data);
-    },
-
-    // 指标上移
-    moveUpForGrid: function(e, gridId, areaType){
-        var _grid = $('#'+gridId);
-        var checkedboxs = _grid.find('.cbox:checked');
-        var checkedIds = [];
-        $('.tabwrap').each(function(index,tab){
-            $('#tab'+index).jqGrid('editStop');
-        })
-        $.each(checkedboxs,function(i,item){
-            var _box = $(item);
-            var _id = _box.closest('tr').attr('id');
-            checkedIds.push(_id);
-        })
-        if(checkedIds.length == 0){
-            shr.showInfo({
-                message: jsBizMultLan.perfweb_perfgoalsfill_20221219ht_05
-            })
-            return false;
-        }
-        $.each(checkedIds,function(i, FID){
-            var _trs = $('tr[id="'+FID+'"]');
-            $.each(_trs,function(j, tr){
-                var _tr = $(tr);
-                var _prevTr = _tr.prev('tr:not(.jqgfirstrow)');
-                if (_prevTr.length > 0 && !_prevTr.find('.cbox').is(':checked')) {
-                    _prevTr.before(_tr);
-                }
-            })
-        })
-        var rows = _grid.getRowData();
-        var data = [];
-        $.each(rows,function(i, item){
-            data.push({
-                id: item.id,
-                type: areaType,
-                index: i.toString(),
-            })
-        })
-        this.setOrder(data);
-    },
-    // 指标下移
-    moveDownForGrid: function(e, gridId, areaType){
-        var _grid = $('#'+gridId);
-        var checkedboxs = _grid.find('.cbox:checked');
-        var checkedIds = [];
-        $('.tabwrap').each(function(index,tab){
-            $('#tab'+index).jqGrid('editStop');
-        })
-        $.each(checkedboxs,function(i,item){
-            var _box = $(item);
-            var _id = _box.closest('tr').attr('id');
-            checkedIds.push(_id);
-        })
-        if(checkedIds.length == 0){
-            shr.showInfo({
-                message: jsBizMultLan.perfweb_perfgoalsfill_20221219ht_05
-            })
-            return false;
-        }
-        $.each(checkedIds.reverse(),function(i, FID){
-            var _trs = $('tr[id="'+FID+'"]');
-            $.each(_trs,function(j, tr){
-                var _tr = $(tr);
-                var _nextTr = _tr.next('tr:not(.jqgfirstrow)');
-                if (_nextTr.length > 0 && !_nextTr.find('.cbox').is(':checked')) {
-                    _nextTr.after(_tr);
-                };  
-            })
-        })
-        var rows = _grid.getRowData();
-        var data = [];
-        $.each(rows,function(i, item){
-            data.push({
-                id: item.id,
-                type: areaType,
-                index: i.toString(),
-            })
-        })
-        this.setOrder(data);
-    },
-
-    // 保存顺序
-    setOrder: function(data){
-        // console.log(data)
-        this.selfRemoteCall({
-            method: "updateIndicatorSeq",
-            async: false,
-            param: {
-                data: JSON.stringify(data)
-            },
-            success: function (data) {
-                // console.log(data)
-            },
-            error: function(err){
-                // console.log(err)
-            }
-        });
-    },
-    //yien 表单越权
-    //处理流程中心发起请求的特殊处理
-    selfRemoteCall: function(options) {
-        if(isFromWFBill) {
-            options.param['isFromWFBill'] = 'true';
-            options.param['wfBillParentUipk'] = originWfUipk;
-            options.param['shrBillInWfId'] = billId;
-        }
-        that.remoteCall(options);
-    },
-//    selfCallHandler: function(options) {
-//        if(isFromWFBill) {
-//            options.param['isFromWFBill'] = 'true';
-//            options.param['wfBillParentUipk'] = originWfUipk;
-//            options.param['shrBillInWfId'] = billId;
-//        }
-//        shr.callHandler(options);
-//    },
-    // 指标列表折叠功能
-    foldIndicator: function(e){
-        var icon = $(e);
-        var areawrap = icon.closest('.areawrap');
-        var content = areawrap.find('.tabwrap'); 
-        if(viewType == 'overview'){
-            content = areawrap.find('.indicatorwrap');
-        }
-        if (icon.hasClass('controller_active')) {
-            content.hide();
-            icon.removeClass('controller_active');
-            areawrap.addClass('areawrap-active');
-        } else {
-            content.show();
-            icon.addClass('controller_active');
-            areawrap.removeClass('areawrap-active');
-        }
-    }
-
-
-})
-
-
-function isDisabledField(_indicatorInfo,colName){
-
-
-    //------------------不显示字段,当做禁用
-    if( colName == 'FISUNITED' || colName == 'FSCORE' || colName == 'FSUMSCORE' || colName == 'FACTUALCOMPLETE'
-    || colName == 'FCOMMENT' || colName == 'FUPDATEDATE' || (_indicatorInfo.scoringWay == 1 && colName == 'FWEIGHT')
-    || (_indicatorInfo.scoringWay == 0 && colName == 'FTARSCORE') || colName == 'FACTUALCOMPLEVALUE'
-    || colName == 'FACTUALCOMPLETETIME' || colName == 'FACTUALCOMPLETEDESC' ){
-        return true;
-    }
-
-
-
-    //------------------第二种
-    var isUnited  = _indicatorInfo.FISUNITED ;
-    if(isExistIndecatoryType = 1 && isUnited == 1 && colName  == "FINDECATORTYPE" ){
-        return true;
-    }
-
-    //先注释了
-    /*if(pageType == 2 && colName == "" ){
-    indicatorType 为禁用
-    }*/
-
-
-
-    //------------------第三种
-     //初始化业绩指标
-     var _isUnited = isUnited;
-     if(pageType == 2) {
-        //绩效工作台-我的目标跳转-屏蔽编辑功能
-        _isUnited = 1;
-     }
-     //定性定量
-      var qualiOrRationValue ; //定性:0 或 定量值:1
-      var fieldslist = _indicatorInfo['fieldslist'];
-      for(var i =0;i<fieldslist.length;i++){
-       if( fieldslist[i].colName == 'FQUALIORRATION'){
-        qualiOrRationValue = fieldslist[i].fieldvalue;
-       }
-      }
-     if(_isUnited == 1 && colName == 'FQUALIORRATION'){
-        return true;
-     }
-     if(_isUnited != 1 && qualiOrRationValue == 0 &&
-     (colName == 'FUNIT' || colName == 'FSCORINGFORMULA' ||colName == 'FTARGETVALUE' )){//定性:禁用评分公式和单位,目标值
-        return true;
-     }
-    //可见性
-    if(_isUnited == 1 || colName == 'FISVISIBLE'){
-        return true;
-     }
-    //业绩指标计划完成日期
-    if(colName == 'FPLANEDDATE'){
-        return true;
-    }
-    //实际完成时间
-    var fieldname = '';
-     if($('#FActualCompleteTime').length > 0){
-        fieldname = 'FActualCompleteTime';
-     }else if($('#FACTUALCOMPLETETIME').length > 0){
-        fieldname = 'FACTUALCOMPLETETIME';
-      }
-    if(colName == fieldname){
-           return true;
-     }
-     //完成时间
-    if(colName == 'FCOMPLETETIME' && _isUnited == 1){
-        return true;
-     }
-     //业绩指标更新日期
-     if(colName == 'FUPDATEDATE' && _isUnited == 1){
-        return true;
-     }
-     //否决项
-     if(colName == 'FREJECTION' && _isUnited == 1){
-        return true;
-     }
-
-
-
-//------------------引用指标
-
-  // 引用指标表单 屏蔽定性定量指标更改属性
-     var _flag = false;
-        that.selfRemoteCall({
-                 method : "judgeIsRefTarget",
-                 param : {
-                     indicatorId : _indicatorInfo.FID
-                 },
-                 async : false,
-                 type:"post",
-                 success : function(data) {
-                    if(data.result == '200' && data.isRefTarget == '1') {
-                        _flag = true;
-                    }
-                 }
-         });
-        if(_flag &&
-        (colName == 'FNAME' || colName == 'FNUMBER' || colName == 'FKEYITEM' || colName == 'FKEYCODE'
-        || colName == 'FINDECATORDESC' || colName == 'FQUALIORRATION' )
-        ){
-            return true;
-        }
-
-        return false;
-}
-
-/*
- * 保存及提交操作
- * */
-function doSumbit(){
-    //1.组装数据
-    var flag = that.assembleTargetData();
-    if(!flag){
-        shr.showError({message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_75,hideAfter : 5});
-        return false;
-    }
-    else{
-        //判断定量指标是否维护评分公式和目标值
-        var unvalidArr = getUnvalidPerfAchievement();
-        if(unvalidArr.length > 0) {
-            shr.showConfirm( '【'+unvalidArr.join(',') + '】'+
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_116, function(){
-                doRemoteCallSaveTarget();
-            });
-            return false;
-        }
-
-        //2.保存指标和记录表
-        doRemoteCallSaveTarget();
-
-    }
-    return true;
-}
-
-//执行目标工作流方式下达
-function doRemoteCallSaveTargetByProcess() {
-    if(viewType == 'list'){ // 列表模式提交前先保存指标
-        that.batchSaveTargetAction('submit')
-    }
-    that.doSubmit(event, 'submit');
-}
-
-/**
- * 执行指标保存
- */
-function doRemoteCallSaveTarget() {
-    //补丁11 绩效工作台优化-yien
-    if(that.targetTransmitBill['billId'] == '-1') {
-        //获取目标单据信息
-        that.targetTransmitBill = that.getTargetTransmitBill(evaObj);
-    }
-
-    if(that.targetTransmitBill['state'] == 0) {
-        doRealRemoteCallSaveTarget();
-    }else  {
-        //执行工作流
-        doRemoteCallSaveTargetByProcess();
-    }
-}
-
-function doRealRemoteCallSaveTarget() {
-    var methodName = viewType == 'list' ? 'batchSaveTarget' : 'saveTarget';
-    var param = {
-        recordList : JSON.stringify(recordListObj),
-        indicatorList : JSON.stringify(indicatorListObj),
-        recordFieldArr : JSON.stringify(recordFieldArr),
-        indicatorFieldArr : JSON.stringify(indicatorFieldArr),
-        toDeleteIndicatorIds : toDeleteIndicatorIds.toString(),
-        evaObj : evaObj,
-        periodId : periodId
-    }
-    if(viewType == 'list'){
-        param = {
-            targetParam: JSON.stringify(targetParam),
-            toDeleteIndicatorIds : toDeleteIndicatorIds.toString(),
-            evaObj : evaObj,
-            periodId : periodId
-        }
-        if(_noPassVerifyArr.length > 0){
-            shr.showWarning({
-                message: _noPassVerifyArr[0].showName+':'+_noPassVerifyArr[0].errortext,
-                hideAfter: 5
-            });
-            return false;
-        }
-    }
-    that.selfRemoteCall({
-        method : methodName,
-        param : param,
-        async : false,
-        type:"post",
-        success : function(data) {
-            if(data != null && data.result == 'SUCCESS'){
-                //3.指标保存成功后将评估对象的目标状态设置成已提交状态
-                that.selfRemoteCall({
-                    method : "submitPersonalTarget",
-                    param : {
-                        scoringWay: scoringWay,
-                        evaObj : evaObj,
-                        periodId : periodId,
-                        submitType : "201"
-                    },
-                    async : false,
-                    success : function(data) {
-                        if(data != null && data.detectedResult == '200' && data.submitResult == '200'){
-                            //加载考核规则、考核计划、考核模式
-                            that.selfRemoteCall({
-                                method : "compositeEvaObjectData",
-                                param : {
-                                    evaObj : evaObj,
-                                    billId: billId
-                                },
-                                async : false,
-                                success : function(data) {
-                                    if(data != null){
-                                        globalIndicatorData = data;
-                                        that.initGoalsItems(data); //重新生成左侧指标列表
-                                    }
-                                    //BT1357754 如果是个人填报页面,提交成功跳转到待办页面
-                                    if(pageType == '0') {
-                                        //组织考核-yien
-                                        //BT1440372
-                                        var _uipk = 'com.kingdee.shr.perfweb.app.base.evalplan.myTargetFill.list';
-                                        if(isOrg == '1') {
-                                            _uipk = 'com.kingdee.shr.perfweb.app.base.evalplan.myTargetFill4Org.list';
-                                        }
-                                        that.reloadPage({
-                                        	 uipk: _uipk,
-                                             period: periodId,
-                                             perfshruicode: shr.getUrlRequestParam('shruicode') //yien 表单越权
-                                        });
-                                    }
-                                }
-                            });
-                            //    location.reload();
-                            var selectid = $('.workMate.current').attr('workerid');
-                            $('#selectionList').utilsSelectionList('reloadList',{selectId: selectid});
-                            shr.showInfo({message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_42});
-                        }else{
-                            shr.showError({message : data.detectedResult,hideAfter : 5});
-                        }
-                    }
-                });
-            }else{
-                shr.showError({message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_109,hideAfter : 5});
-            }
-        }
-    });
-}
-
-/**
- * 执行下达
- */
-function doRemoteCallGetEvaObjTargetStatus() {
-    that.selfRemoteCall({
-        method : "getEvaObjTargetStatus",
-        param : {
-            evaObj : evaObj
-        },
-        async : false,
-        type:"post",
-        success : function(data) {
-            if(data) {
-                var _targetStatus = data.targetStatus;
-                if(_targetStatus == 3){ //个人目标已下达
-                    shr.showWarning({message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_27});
-                    return false;
-                } else {
-                    $('.scoreMenuList li').click();
-                    if(!canSaveVerify()){
-                        return false;
-                    }else{
-                        //模拟提交操作,如果提交成功,则直接调用下达
-                        var isDoTransmit = doSubmitForTransmit(_targetStatus , indicatorUpdateObj);
-                        if(isDoTransmit) {
-                            doTransmit(_targetStatus , updateIndicatorNameObj);
-                        }
-                    }
-                }
-            }else {
-                shr.showError({message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_30,hideAfter : 5});
-                return false;
-            }
-        }
-    });
-}
-
-/*
- * 下达前执行的提交操作
- * */
-function doSubmitForTransmit(targetStatus , _indicatorUpdateObj){
-    //1.组装数据
-    var flag = that.assembleTargetData();
-    var ret = true;
-    if(!flag){
-        shr.showError({message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_75,hideAfter : 5});
-        return false;
-    }else{
-        //2.保存指标和记录表
-        var _indicatorUpdateArr = [];
-        if(2 == targetStatus && _indicatorUpdateObj) {
-            //拼接指标的修改记录信息
-            //indicatorUpdateObj[indicatorId][fieldName] = {originVal : _fieldOriginVal , newVal : fieldValue , showName : _showName};
-            // updateIndicatorNameObj
-            for(var indicatorId in _indicatorUpdateObj) {
-                //获取指标名称
-                var _indicatorUpdateStr = '【'+ updateIndicatorNameObj[indicatorId] +'】:{';
-                //字段修改名称拼接
-                var _indicatorItem = _indicatorUpdateObj[indicatorId];
-                for(var fieldName in _indicatorItem) {
-                    var _fieldItem = _indicatorItem[fieldName];
-                    _indicatorUpdateStr += _fieldItem.showName + ":";
-                    _indicatorUpdateStr += _fieldItem.originVal + ' '+
-                        jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_91+
-                        ' ';
-                    _indicatorUpdateStr += _fieldItem.newVal + ";";
-                }
-                _indicatorUpdateStr += "}";
-                _indicatorUpdateArr.push(_indicatorUpdateStr);
-            }
-            //拼接新增的指标
-            if(newIndicatorNameObj) {
-                var _indicatorUpdateStr = '';
-                for(var indicatorId in newIndicatorNameObj) {
-                    _indicatorUpdateStr += newIndicatorNameObj[indicatorId] + ',';
-                }
-                if(_indicatorUpdateStr != '') {
-                    _indicatorUpdateArr.push(
-                        jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_88 +
-                        _indicatorUpdateStr
-                    );
-                }
-            }
-        }
-        that.selfRemoteCall({
-            method : "saveTarget",
-            param : {
-                recordList : JSON.stringify(recordListObj),
-                indicatorList : JSON.stringify(indicatorListObj),
-                recordFieldArr : JSON.stringify(recordFieldArr),
-                indicatorFieldArr : JSON.stringify(indicatorFieldArr),
-                toDeleteIndicatorIds : toDeleteIndicatorIds.toString(),
-                evaObj : evaObj,
-                periodId : periodId,
-                indicatorUpdateObj: _indicatorUpdateArr.join(';') //指标修改的详细记录信息
-            },
-            async : false,
-            type:"post",
-            success : function(data) {
-                if(data != null && data.result == 'SUCCESS'){
-                    if(2 == targetStatus) {
-                        //已经提交的指标,保存成功之后,不再进行提交
-                        ret = true;
-                    }else {
-                        //3.指标保存成功后将评估对象的目标状态设置成已提交状态
-                        that.selfRemoteCall({
-                            method : "submitPersonalTarget",
-                            param : {
-                                evaObj : evaObj,
-                                periodId : periodId,
-                                submitType : "301"
-                            },
-                            async : false,
-                            success : function(data) {
-                                if(data != null && data.detectedResult == '200' && data.submitResult == '200'){
-                                    ret = true;
-                                }else{
-                                    //将提交替换成下达
-                                    shr.showError({
-                                        message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_85 +
-                                        data.detectedResult.replace(
-                                            jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_76 ,
-                                            jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_83
-                                        ),
-                                        hideAfter : 5});
-                                    ret = false;
-                                }
-                            }
-                        });
-                    }
-                }else{
-                    shr.showError({message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_109,hideAfter : 5});
-                    ret = false;
-                }
-            }
-        });
-    }
-    return ret;
-}
-
-/**
- * 执行下达
- */
-function doTransmit(_targetStatus , _updateIndicatorNameObj) {
-    //如果目标下达人在指标提交状态下进行修改,则记录修改记录
-    var _updateIndicatorNameArr = [];
-    if(_updateIndicatorNameObj) {
-        for(var item in _updateIndicatorNameObj) {
-            _updateIndicatorNameArr.push(_updateIndicatorNameObj[item]);
-        }
-    }
-    //拼接详细的指标修改信息
-
-
-    that.selfRemoteCall({
-        method : "transmit",
-        param : {
-            evaObj : evaObj,
-            period : periodId,
-            targetStatus : _targetStatus, //目标状态
-            updateIndicatorNameArr : _updateIndicatorNameArr.join(',') //被修改的指标名称
-        },
-        async : false,
-        type:"post",
-        success : function(data) {
-            if(data.successCount != 0 ){
-                shr.showInfo({
-                    message: jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_84,
-                    hideAfter : 5
-                });
-                sessionStorage.prevgoalsfillindex = $('.workMate.current').index();
-                // 都打回完了,返回列表页
-                if ($('.workerList').find('li').length == 1) {
-                    goTransmitList();
-                } else {
-                    //location.reload();
-                    $('#selectionList').utilsSelectionList('reloadList', {fetchOthers: 1});
-                }
-            }else{
-                shr.showError({
-                    message: jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_85+ data.result[0].muitTipsMessage,
-                    hideAfter : 5
-                });
-            }
-        }
-    });
-}
-
-// 返回下达列表页
-function goTransmitList() {
-    var serviceId = shr.getUrlRequestParam("serviceId", window.parent.location.href);
-    var uipk = 'com.kingdee.shr.perfweb.app.teamPersonalTarget.core';
-    if(isOrg == "1") {
-        uipk = 'com.kingdee.shr.perfweb.app.teamPersonalTarget4Org.core';
-    }
-    that.reloadPage({
-        uipk: uipk,
-        serviceId: serviceId,
-        period: periodId,
-        isOrg: isOrg,
-        perfshruicode: shr.getUrlRequestParam('shruicode') //yien 表单越权
-    })
-}
-
-//单击其他地方下拉选择框隐藏
-$(document).click(function(e){
-    if(!$(e.target).hasClass('instructions') && !$(e.target).hasClass('instructionsboxwrap') && $(e.target).closest('.instructionsboxwrap').length < 1){
-        $(".instructionsboxwrap").fadeOut();
-    }
-});
-
-//判断数组中是否已有指定字段name
-function isExistInArr(name,arr){
-    for(var i=0; i<arr.length; i++){
-        if(name == arr[i]){
-            return true;
-        }
-    }
-
-    return false;
-}
-
-//输入框失去焦点后自动校验信息
-function inputOnblur(_this){
-    var indicatorVal = $(_this).attr("indicator");
-    var nameVal = $(_this).attr("fname");
-    var msgShow = $("span[id='MSG_"+indicatorVal+nameVal+"']");
-    var fieldLenMsgSpan =  $("span[msgId='MSG_"+nameVal+indicatorVal+"Itag0']");
-    fieldLenMsgSpan.hide();
-    var errObj = new Object();
-
-    errObj.indicator = indicatorVal;
-    errObj.name = nameVal;
-    var fieldVal = $(_this).val();
-    existInArrThenDelete(_noPassVerifyArr,errObj);
-
-    //校验指标编码
-    if(nameVal == 'FNUMBER'){
-        if(isEmpty(fieldVal)){
-            $(_this).focus();
-            msgShow.text(jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_112);
-            msgShow.show();
-            _noPassVerifyArr.push(errObj);
-        }else{
-            msgShow.hide();
-        }
-    }
-
-    //校验指标名称
-    if(nameVal == 'FNAME'){
-        if(isEmpty(fieldVal)){
-            $(_this).focus();
-            msgShow.text(jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_120);
-            msgShow.show();
-            _noPassVerifyArr.push(errObj);
-        }else{
-            $("li[numval='" +indicatorVal+ "']").find("div[name='liName']").text(fieldVal);
-            msgShow.hide();
-        }
-    }
-
-    //校验权重
-    if(nameVal == 'FWEIGHT'){
-        if(!isNumberVerify(fieldVal)){
-            $(_this).focus();
-            msgShow.text(jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_52);
-            msgShow.show();
-
-            existInArrThenDelete(_noPassVerifyArr,errObj);
-            _noPassVerifyArr.push(errObj);
-        }else{
-            //转换成数字类型,防止权重输入第一个数字为0的情况出现 yien_fan
-            if(fieldVal != '') {
-                fieldVal = Number(fieldVal);
-            }
-            $(_this).val(fieldVal);
-            var liWeightObj = $("li[numval='" +indicatorVal+ "']").find("div[name='liWeight']");
-            liWeightObj.text(jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_66
-                +fieldVal+ '%');
-            liWeightObj.attr("weight",fieldVal);
-            msgShow.hide();
-            existInArrThenDelete(_noPassVerifyArr,errObj);
-            //BT1363381 动态计算区域权重
-            calcAndSetCurAreaWeight();
-        }
-    }
-
-    //校验权重
-    if(nameVal == 'FTARSCORE'){
-        if(!isNumberVerify(fieldVal)){
-            $(_this).focus();
-            msgShow.text(jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_52);
-            msgShow.show();
-
-            existInArrThenDelete(_noPassVerifyArr,errObj);
-            _noPassVerifyArr.push(errObj);
-        }else{
-            //转换成数字类型,防止权重输入第一个数字为0的情况出现 yien_fan
-            if(fieldVal != '') {
-                fieldVal = Number(fieldVal);
-            }
-            $(_this).val(fieldVal);
-            var liWeightObj = $("li[numval='" +indicatorVal+ "']").find("div[name='liWeight']");
-            liWeightObj.text(
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_17 +
-                fieldVal+
-                jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_16);
-            liWeightObj.attr("weight",fieldVal);
-            msgShow.hide();
-            existInArrThenDelete(_noPassVerifyArr,errObj);
-            //BT1363381 动态计算区域权重
-            calcAndSetCurAreaWeight();
-        }
-    }
-
-    //校验关键举措编码
-    // if(nameVal == 'FKEYCODE'){
-    // 	if(isEmpty(fieldVal)){
-    // 		$(_this).focus();
-    // 		msgShow.text('校验关键举措编码为空!');
-    // 		msgShow.show();
-    // 		_noPassVerifyArr.push(errObj);
-    // 	}else{
-    // 		msgShow.hide();
-    // 	}
-    // }
-
-    //校验关键举措
-    if(nameVal == 'FKEYITEM'){
-        if(isEmpty(fieldVal)){
-            $(_this).focus();
-            msgShow.text(jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_87);
-            msgShow.show();
-            _noPassVerifyArr.push(errObj);
-        }else{
-            $("li[numval='" +indicatorVal+ "']").find("div[name='liName']").text(fieldVal);
-            msgShow.hide();
-        }
-    }
-
-    //校验完成时间
-    if(nameVal == 'FCOMPLETETIME'){
-        var dateReg = /^(\d{4})-(\d{2})-(\d{2})$/;
-        if(isEmpty(fieldVal) || !fieldVal.match(dateReg) || !(new Date(fieldVal).getDate()==fieldVal.substring(fieldVal.length-2))){
-            //$(_this).focus();
-            msgShow.text(jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_57);
-            msgShow.show();
-            _noPassVerifyArr.push(errObj);
-        }else{
-            msgShow.hide();
-        }
-    }
-
-    //校验目标值
-    if(nameVal == 'FTARGETVALUE'){
-        if(!isNumberVerify(fieldVal , 2)){
-            $(_this).focus();
-            //msgShow.text("请输入数字且最多不超过十位小数!");
-            msgShow.text(jsBizMultLan.perfweb_achivementDataList_20220818ht_01);
-            msgShow.show();
-            _noPassVerifyArr.push(errObj);
-        }else {
-            //转换成数字类型,防止权重输入第一个数字为0的情况出现 yien_fan
-            if(fieldVal != '') {
-                fieldVal = Number(fieldVal);
-            }
-            if(fieldVal > 999999999.99){
-            	 msgShow.text(shr.formatMsg(jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_55,[999999999.99]));
-                 msgShow.show();
-                 _noPassVerifyArr.push(errObj);
-            }else{
-                $(_this).val(fieldVal);
-                msgShow.hide();
-            }
-
-        }
-    }
-}
-
-//textArea去焦点后自动校验信息
-function textAreaOnblur(_this){
-    var id = $(_this).attr("id");
-    var nameVal = $(_this).attr("fname");
-    var fieldLenMsgSpan =  $("span[msgId='MSG_"+id+"']");
-    fieldLenMsgSpan.hide();
-    $(_this).attr('title',$(_this).val());
-}
-
-/**
- * 判断是否保留小数点后两位
- * @param _fieldVal
- * @param _type 1:整数或带两位小数;undefined/0:整数或带两位小数;2十位小数之内
- * @returns {boolean}
- */
-function isNumberVerify(_fieldVal , _type) {
-    var reg = /^\d+(\.\d{1,2})?$/;
-    if(1 == _type) {
-        reg = /^(-)?\d+(\.\d{1,2})?$/;
-    }
-
-    if(2 == _type) {
-        reg = /^(-)?\d+(\.\d{1,10})?$/;
-    }
-
-    if(_fieldVal) {
-        return reg.test(_fieldVal);
-    }
-    return true;
-}
-
-//数组中存在某个对象则删除
-function existInArrThenDelete(arr,obj){
-    for(var i=0; i<arr.length; i++){
-        if(arr[i].indicator == obj.indicator && arr[i].name == obj.name){
-            arr.splice(i,1);
-        }
-    }
-    return;
-}
-
-//判断值是否为空
-function isEmpty(fieldVal){
-    if(fieldVal == '' || fieldVal == undefined){
-        return true;
-    }
-    return false;
-}
-
-//校验页上所有的指标类型是否为空
-function verifyIndicatorType(){
-    var indicatorTypeDom = $("input[name ^='indicatorType']");
-    //_indicatorTypeNoPassVerifyArr.splice(0,_indicatorTypeNoPassVerifyArr.length); //清空数组
-    for(var i=0; i<indicatorTypeDom.length; i++){
-        var _this = $("input[name ^='indicatorType']")[i];
-        var indicatorType = $(_this).val();
-        var indicator = $(_this).attr("indicator");
-
-        var indicatorObjName = 'indicatorType' +indicator+ 'Itag0';
-        var indicatorObj = $("input[name='" +indicatorObjName+ "']");
-
-        var errObj = new Object();
-        errObj.indicator = indicator;
-        errObj.name = 'indicatorType';
-        existInArrThenDelete(_indicatorTypeNoPassVerifyArr,errObj);
-        var msgShow = $("span[id='MSG_indicatorType"+indicator+"Itag0']");
-        if(isEmpty(indicatorType)){
-            existInArrThenDelete(_indicatorTypeNoPassVerifyArr,errObj);
-            _indicatorTypeNoPassVerifyArr.push(errObj);
-
-            msgShow.text(jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_115);
-            msgShow.show();
-            // $(indicatorObj).attr("style","border : 1px solid red");
-        }else{
-            // $(indicatorObj).attr("style","border : 1px solid #ccc");
-            msgShow.hide();
-        }
-    }
-}
-
-function canSaveVerify(optionType){
-    var flag = that.assembleTargetData(optionType);
-    // if(!flag){
-    //     // shr.showError({message : '数据校验不通过,请检查!',hideAfter : 5});
-    //     shr.showError({message : jsBizMultLan.perfweb_perfGoalsFillNew_i18n_b10_15626131368_8,hideAfter : 5});
-    //     return false;
-    // }
-    return flag;
-
-    // golbalVerify(); //全局字段合法性校验
-    // verifyIndicatorType(); //指标类型字段为空校验
-    // //将校验不通过的数据从待删除的数据中除去
-    // var noPassVerifyArrLen = _noPassVerifyArr.length;
-    // for(var i=noPassVerifyArrLen-1; i>=0; i--){
-    //     if($.inArray(_noPassVerifyArr[i].indicator,toDeleteIndicatorIds) != -1){
-    //         _noPassVerifyArr.splice(i,1);
-    //     }
-    // }
-    // var indiTypeNoPassArrLen = _indicatorTypeNoPassVerifyArr.length;
-    // for(var j=indiTypeNoPassArrLen-1; j>=0; j--){
-    //     if($.inArray(_indicatorTypeNoPassVerifyArr[j].indicator,toDeleteIndicatorIds) != -1){
-    //         _indicatorTypeNoPassVerifyArr.splice(j,1);
-    //     }
-    // }
-    //
-    // if(_noPassVerifyArr.length>0 || _indicatorTypeNoPassVerifyArr.length>0){
-    //     if(_noPassVerifyArr.length>0){
-    //         $("li[numval='" +_noPassVerifyArr[0].indicator+ "']").click();
-    //         var inputObj = $("input[indicator='" +_noPassVerifyArr[0].indicator+"'][fname='" +_noPassVerifyArr[0].name+ "']");
-    //         $(inputObj).focus();
-    //         inputOnblur(inputObj);
-    //     }else{
-    //         $("li[numval='" +_indicatorTypeNoPassVerifyArr[0].indicator+ "']").click();
-    //         var indicator = _indicatorTypeNoPassVerifyArr[0].indicator;
-    //         var indicatorObjName = 'indicatorType' +indicator+ 'Itag0';
-    //         var indicatorObj = $("input[name='" +indicatorObjName+ "']");
-    //         $(indicatorObj).focus();
-    //         $(indicatorObj).blur();
-    //     }
-    //     shr.showWarning({message : '数据校验不通过,请检查!',hideAfter : 5});
-    //     return false;
-    // }
-    // return true;
-}
-
-/*
- * 对指标编码、指标名称、权重、关键举措三个字段进行全局校验
- * */
-function golbalVerify(){
-    //校验指标编码
-    commonVerify('FNUMBER');
-
-    //校验指标名称
-    commonVerify('FNAME');
-
-    //校验关键举措编码
-    // commonVerify('FKEYCODE');
-
-    //校验关键举措
-    commonVerify('FKEYITEM');
-
-    //权重校验
-    weightVerify();
-}
-
-/*
- * 字段为空校验(指标编码、指标名称、关键举措)
- * */
-function commonVerify(fname){
-    var baseDom = $($('input[fname="' +fname+ '"]'));
-    for(var i=0; i<baseDom.length; i++){
-        var errObj = new Object();
-        var _this = $(baseDom[i]);
-        var _thisVal = _this.val();
-        errObj.indicator = _this.attr("indicator");
-        errObj.name = fname;
-
-        //补丁10 是否必填-yien
-        var _isRequired = _this.data('isrequired');
-        var _isDisabled = _this.attr('disabled');
-
-        if(_isRequired == '1' && _isDisabled != 'disabled' && isEmpty(_thisVal)){
-            existInArrThenDelete(_noPassVerifyArr,errObj);
-            _noPassVerifyArr.push(errObj);
-        }else{
-            existInArrThenDelete(_noPassVerifyArr,errObj);
-        }
-    }
-}
-
-/*
- * 权重校验
- * */
-function weightVerify(){
-    var reg = /^\d+(\.\d{1,2})?$/;
-    var baseDom = $($("input[fname='FWEIGHT']"));
-    var errObj = new Object();
-    for(var i=0; i<baseDom.length; i++){
-        var _this = $(baseDom[i]);
-        var _thisVal = _this.val();
-        errObj.indicator = _this.attr("indicator");
-        errObj.name = 'FWEIGHT';
-        //yien 增加否决项判断
-        var isRejection = _this.attr('isRejection');
-
-        if(isRejection != 1 && (isEmpty(_thisVal) || !reg.test(_thisVal))){
-            existInArrThenDelete(_noPassVerifyArr,errObj);
-            _noPassVerifyArr.push(errObj);
-        }else{
-            existInArrThenDelete(_noPassVerifyArr,errObj);
-        }
-    }
-}
-
-//获取自定义过滤条件
-function getFilterItems(operate){
-    var rows = $("#indicatorPageSelect").val();
-    var page = $("#indicatorCurPage").val().trim();
-
-    if(isNaN(parseInt(page))){
-        shr.showError({message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_58,hideAfter : 5});
-    }else{
-        if('nextPage' == operate){//下一页
-            page = parseInt(page) + 1;
-        }else if('prevPage' == operate){//上一页
-            page = parseInt(page) - 1;
-        }else{
-            page = 1;
-        }
-    }
-    var indecatorType = null;
-    var $indiType = $('#indiType').shrPromptBox("getValue");
-    if ($indiType) {
-        indecatorType = $indiType.id;
-    }
-    var filterItems = "{rows : '" +rows+ "'; page : '" +page+ "'; sord:'DESC';indecatorType:'" +indecatorType+"'}";
-    return filterItems;
-}
-
-/**
- * 初始化自定义快速搜索
- * @param options
- */
-var referencePIParam = {gridId: 'PIall' , rowsNum: 10 , pageNum: 1 , filterItems:''}; //引用指标库查询条件
-var referencePIFilterItems = ""; //快速搜索查询条件
-var existingPIallParam = {rowsNum: 10 , pageNum: 1 , period: '' , useMyOwnTarget: useMyOwnTargetVal}; //已有指标查询条件
-var existingPIallFilterItems = "";
-function initCustomQuickSearcher(options) {
-    if(typeof options != "undefined" && options && options['searcherId']) {
-        var searcherId = options['searcherId'];
-        if(typeof options.fields == 'undefined' || options.fields == '') {
-            //组织考核-yien
-            if(isOrg == '1') {
-                options.fields = [
-                    {columnName: 'name', label: $.perfwebI18n.tableConstant.msg7},
-                    {columnName: 'number', label: $.perfwebI18n.tableConstant.msg6}
-                ];
-            }else {
-                options.fields = [
-                {
-                    columnName:'name',
-                    label:jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_39
-                },
-                {
-                    columnName:'number',
-                    label:jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_3
-                }
-                ];
-            }
-        }
-        $('#' + searcherId).shrSearchBar({fields : options.fields});
-
-        //高级搜索事件
-        $("#"+ searcherId +" i[class='icon-search icon-gray']").click(function(){
-            //触发表格重新加载
-            doCustomQuickSearch(options);
-        });
-        $('#'+ searcherId).bind('keyup', function(event) {
-            if (event.keyCode == "13") {
-                //触发表格重新加载
-                doCustomQuickSearch(options);
-            }
-        });
-    }
-}
-
-/**
- * 初始化自定义翻页事件
- */
-function initCustomPageClick(pageId , gridId){
-    if(typeof pageId != "undefined" && pageId != '' && typeof gridId != "undefined" && gridId != '') {
-        var $pageNext = $('#'+ pageId +'PageNext');
-        var $pagePrev = $('#' + pageId + 'PagePrev');
-        var $curPage = $('#' + pageId + 'CurPage');
-        var $pageTotal = $('#' + pageId + 'PageTotal');
-        var $pageNumSelect = $('#' + pageId + 'PageSelect')
-        if(typeof  $pageNext != "undefined" && $pageNext.length > 0) {
-            $pageNext.die().live('click',function(){
-                var totalPage = parseInt($pageTotal.html());
-                var page = parseInt($curPage.val());
-                if(page + 1 > totalPage){
-                    return;
-                }else{
-                    $curPage.val(page + 1);
-                    page = page + 1;
-                }
-                reloadCustomSearcherGrid({gridId: gridId,pageNum : page});
-            });
-        }
-
-        if(typeof  $pagePrev != "undefined" && $pagePrev.length > 0) {
-            $pagePrev.die().live('click',function(){
-                var page = parseInt($curPage.val());
-                if(page - 1 < 1 ){
-                    return;
-                }else{
-                    $curPage.val(page - 1);
-                    page = page - 1;
-                }
-
-                reloadCustomSearcherGrid({gridId:gridId,pageNum : page});
-            });
-        }
-
-        //每页显示记录数下拉事件
-        if(typeof  $pageNumSelect != "undefined" && $pageNumSelect.length > 0) {
-            $pageNumSelect.live('change',function(){
-                var numval = $(this).val();
-                reloadCustomSearcherGrid({gridId : gridId ,rowsNum : numval ,  pageNum : 1})
-            });
-        }
-    }
-}
-
-/**
- * 获取自定义快速搜索条件
- * @param options
- */
-function doCustomQuickSearch(options) {
-    if(typeof options != "undefined" && options.searcherId && options.gridId) {
-        var searcherId = options.searcherId;
-        var gridId = options.gridId;
-        var filter = $('#'+ searcherId).shrSearchBar('option', 'filterView');
-        if(filter != null && filter.filterItems){
-            filter = filter.filterItems;
-        }else{
-            filter = "";
-        }
-        if(gridId == 'existingPIall_2') {
-            existingPIallFilterItems = filter;
-        }else {
-            referencePIFilterItems = filter;
-        }
-        reloadCustomSearcherGrid({gridId : gridId , pageNum: 1});
-    }
-}
-
-/**
- * 重新加载自定义搜索列表
- * @param options
- */
-function reloadCustomSearcherGrid(options) {
-    if(typeof options != "undefined" && options.gridId) {
-        var gridId = options.gridId; //关联列表id
-        var postParam = {};    //重新加载列表查询参数
-        var curPageId = ''; //当前页码元素id
-        var filterItems  = '';  //自定义查询条件
-        var filterItemsName = 'filterItems'; //自定义查询条件键
-        if(gridId == 'existingPIall_2') {
-            curPageId = 'hadIndicator_2CurPage';
-            postParam = existingPIallParam;
-            filterItems = existingPIallFilterItems;
-        }else if(gridId == 'existingOrgPI') {
-            //补丁11 目标对齐-yien
-            curPageId = 'hadIndicatorOrgCurPage';
-            postParam = {
-                filterOrg : options.filterOrg
-            }
-        }
-        else {
-            curPageId = 'indicatorCurPage';
-            postParam = referencePIParam;
-            filterItems = referencePIFilterItems;
-            filterItemsName = 'fastFilterItems';
-        }
-        $.extend(postParam , options);
-        if(gridId == 'existingPIall_2') {
-            if(!postParam['period']) {
-                return;
-            }
-        }
-
-        //返写当前页码
-        $('#' + curPageId).val(postParam['pageNum']);
-        $('#' + gridId)
-            .jqGrid("option",filterItemsName, filterItems)
-            .jqGrid('setGridParam',{
-                datatype:'json',
-                postData: postParam
-            })
-            .jqGrid("reloadGrid");
-    }
-}
-
-
-//引用已有指标仅显示我的指标
-function useMyOwnTarget() {
-    //组织考核-yien
-    var useMyOwnTarget = '1';
-    if(isOrg == '1') {
-        useMyOwnTarget = '0';
-    }else {
-        useMyOwnTarget = $("#useMyOwnTarget").shrCheckbox('getValue') ? "1" : "0";
-    }
-    reloadCustomSearcherGrid({gridId:'existingPIall_2',pageNum : 1 , useMyOwnTarget : useMyOwnTarget})
-}
-
-/**
- * 获取校验不通过的定量业绩指标
- */
-function getUnvalidPerfAchievement() {
-    //组装要保存的指标数据
-    // var indicatorDom = $(".scoreContentbox");
-    var indicatorDom = $("div[evaObj='"+evaObj+"']");
-    var unvalidArr = [];
-
-    for(var i=0; i<indicatorDom.length ; i++){
-        var scoreContentbox = $(indicatorDom[i]);
-        var areaType = scoreContentbox.attr("areatype");
-        if(areaType == '200'){//评估表单
-            var fid = scoreContentbox.attr("id");
-            var valObject = {'FSCORINGFORMULA':'' , 'FQUALIORRATION':'' , 'FTARGETVALUE':'' , 'FNAME':''};
-            fid = fid.substr(0,fid.length-5);
-            var rowObj = $(scoreContentbox).find(".row1");
-
-            for(var j=0 ; j<rowObj.length; j++){
-                var labelObj = $(rowObj[j]).find("label");
-                if(labelObj.length >0){
-                    var fieldName = labelObj.attr("name");
-                    var fieldValue = '';
-                    if(fieldName == 'FSCORINGFORMULA'
-                        || fieldName == 'FQUALIORRATION'
-                    ) {
-                        //评分公式、定性定量
-                        fieldValue = $(rowObj[j]).find("input[id='" + fieldName +fid+ "Itag0_el']").val();
-                        valObject[fieldName] = fieldValue;
-                    }else if(fieldName == 'FNAME' || fieldName == 'FTARGETVALUE') {
-                        //指标名称、目标值
-                        var valueObj = $(rowObj[j]).find(".textOverflow");
-                        fieldValue = valueObj.val();
-                        valObject[fieldName] = fieldValue;
-                    }
-                }
-            }
-
-            //判断定量指标是否维护 评分公式和目标值
-            if(valObject['FQUALIORRATION'] == 1) {
-                if(valObject['FSCORINGFORMULA'] == '' || valObject['FTARGETVALUE'] == '') {
-                    unvalidArr.push(valObject['FNAME']);
-                }
-            }
-        }
-    }
-    return unvalidArr;
-}
-
-function addCellAttr(rowId, val, rawObject, cm, rdata) {
-    return "style='color:#0088cc' onclick=setTargetNodeHandler()";
-}
-
-function setTargetNodeHandler() {
-    var eventObj = $(event.target);
-    var wfNodeId = eventObj.attr("aria-describedby").split("_")[1].split("#")[0];
-    var targetId = $(eventObj.parent().find("td")[0]).attr("title");
-
-    that.createDialogDiv(targetId, wfNodeId, event);
-}
-
-
-/**
- * 处理内容修改事件
- * @param tagId
- */
-function handlerTagChange(tagId) {
-    // var $tag = $('#' + tagId);
-    var $tag = $('input[id="'+ tagId +'"]').length > 0 ?$('input[id="'+ tagId +'"]'):  $('textarea[id="'+ tagId +'"]');
-    //yien 增加安全判断
-    if($tag.length == 0) {
-        return false;
-    }
-    var objVal = $tag.val();
-    var msgShow = $("span[id='WHOLECOMMENT']");
-    var errObj = new Object();
-
-    var commentLen = objVal && objVal.length;
-    msgShow.text(shr.formatMsg(jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_48,[2000,commentLen]));
-    msgShow.show();
-    $tag.attr('title',objVal);
-
-    var indicatorId4Tag = $tag.attr('indicatorId');
-    if(indicatorId4Tag) {
-        var indicatorId = indicatorId4Tag.replace('Itag0' , '');
-        var fieldName = $tag.attr('fname');
-        //获取修改之后的值
-        var fieldValue = $tag.val();
-        if(indicatorOriginObj[evaObj]) {
-            var _originIndicator = indicatorOriginObj[evaObj][indicatorId];
-            var _fname = '';
-            if(_originIndicator) {
-                //指标有可能被修改
-                var _fieldOriginVal = _originIndicator[fieldName];
-                var _showName = _originIndicator[fieldName + '-SHOWNAME'];
-                if(_fieldOriginVal == undefined) {
-                    _fieldOriginVal = '';
-                }
-                if(fieldValue != _fieldOriginVal) {
-                    //指标内容被修改,保持指标名称
-                    _fname = _originIndicator['FNAME'];
-                    //记录修改详情
-                    if(!indicatorUpdateObj[indicatorId]) {
-                        indicatorUpdateObj[indicatorId] = {};
-                    }
-                    //评分公式单独处理
-                    if(_showName == undefined && fieldName == 'FSCORINGFORMULA') {
-                        _showName = jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_45;
-                    }
-                    //目标分值单独处理
-                    if( fieldName == 'FTARSCORE') {
-                        _showName = jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_41;
-                    }
-                    indicatorUpdateObj[indicatorId][fieldName] = {originVal : _fieldOriginVal , newVal : fieldValue , showName : _showName};
-                    updateIndicatorNameObj[indicatorId] = _fname;
-                }else {
-                    //移除该字段的修改日志记录
-                    if(indicatorUpdateObj[indicatorId]) {
-                        delete indicatorUpdateObj[indicatorId][fieldName];
-                    }
-                }
-            }else {
-                //新的指标,获取新的指标名称,并保存
-                // _fname = $('#FNAME' + indicatorId4Tag).val();
-                _fname = $('input[id="FNAME'+ indicatorId4Tag +'"]').val();
-                //保存到新增的指标修改对象
-                newIndicatorNameObj[indicatorId] = _fname;
-                updateIndicatorNameObj[indicatorId] = _fname;
-            }
-        }
-    }
-}
-
-/**
- * 初始化指标修改日志信息
- * @param evaObj
- */
-function initUpdateIndicatorLog(evaObj) {
-    //获取当前员工的编码
-    if(!indicatorOriginObj[evaObj]) {
-        //如果该员工信息不存在,则将indicatorOriginVal进行清空,保证只保留当前员工的指标信息
-        updateIndicatorNameObj = {}; //被修改的指标名称集合
-        indicatorUpdateObj = {}; //指标修改详情集合
-        indicatorOriginObj = {}; //原指标初始值
-        newIndicatorNameObj = {}; //新增的指标名称集合
-
-        var _indicatorObj = {};
-        //获取评估指标信息
-        var _evaAreaList = globalIndicatorData.rows.evaAreaList;
-        var _isExistIndicator = false;
-        _evaAreaList.forEach(function(item , i){
-            if(item.areaType == '200') {
-                var _evaIndicatorList = item.evaIndicatorList;
-                //保存表单字段的信息
-                var _fieldFormList = item.fieldList;
-                var _fieldFormObj = {};
-                _fieldFormList.forEach(function(field , index){
-                    _fieldFormObj[field.colName] = field.showName;
-                });
-                _evaIndicatorList.forEach(function(indicator , index){
-                    var _indicatorId = indicator.FID;
-                    if(_indicatorId) {
-                        //遍历每一个直接对象
-                        _isExistIndicator = true;
-                        var _fieldObj = {};
-                        for(var fieldName in indicator) {
-                            var _fieldValue = indicator[fieldName];
-                            //需要特殊处理评分公式、指标类型
-                            if(fieldName == 'FINDECATORTYPE' || fieldName == 'FSCORINGFORMULA') {
-                                _fieldValue = indicator[fieldName].name;
-                            }else if(fieldName == 'FISVISIBLE') {
-                                //可见性
-                                _fieldValue =  _fieldValue == 1 ?
-                                    jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_35 :
-                                    jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_4;
-                            }else if(fieldName == 'FQUALIORRATION') {
-                                //定性定量
-                                _fieldValue =  _fieldValue == 1 ?
-                                    jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_13 :
-                                    jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_14;
-                            }else if(fieldName == 'FUPDATEDATE' || fieldName == 'FPLANEDDATE' || fieldName == 'FCOMPLETETIME') {
-                                //需要特殊处理日期
-                                _fieldValue = _fieldValue.replace(' 00:00:00.0' , '');
-                            }
-                            _fieldObj[fieldName] = _fieldValue;
-                            _fieldObj[fieldName+'-SHOWNAME'] = _fieldFormObj[fieldName];
-                        }
-                        //增加字段在表单中的显示名称
-
-                        _indicatorObj[_indicatorId] = _fieldObj;
-                    }
-                });
-            }
-        });
-        if(_isExistIndicator) {
-            indicatorOriginObj[evaObj] = _indicatorObj;
-        }
-    }
-}
-
-
-/*
- * 加载数据
- */
-function LoadingSelectData(id,data){
-    var personArr = data;
-    if(personArr != null) {
-        for(var i=0;i < personArr.length;i++) {
-            $("#"+id).jqGrid('delRowData',personArr[i].id);
-            $("#"+id).jqGrid('addRowData',personArr[i].id,personArr[i]);
-        }
-    }
-}
-
-function getSelectDate(gridid,isAll,ids){
-    var rowList = new Array();
-    //获取多选到的id集合
-    if(isAll=="NO_ALL"){
-        var row = $('#' + gridid).jqGrid('getRowData', ids);
-        row['id'] = ids;
-        rowList.push(row);
-        return rowList;
-    }
-
-    //遍历访问这个集合
-    $(ids).each(function (index, id){
-        //由id获得对应数据行
-        var row = $('#' + gridid).jqGrid('getRowData', id);
-        row['id'] = id;
-        rowList.push(row);
-    })
-
-    return rowList;
-}
-
-/*
- * 加载数据
- */
-function LoadingRemovSelectData(id,data){
-    var personArr = data;
-    if(personArr != null) {
-        for(var i=0;i < personArr.length;i++) {
-            $("#"+id).jqGrid('delRowData',personArr[i].id);
-        }
-        //$("#"+id).trigger("reloadGrid");
-    }
-}
-
-/**
- * 计算并设置当前区域的权重
- */
-function calcAndSetCurAreaWeight() {
-    var $currentMenu = $(".currentMenu:eq(0)");
-    var numberReg = /^\d+(\.\d{1,2})?$/;
-    var areaWeight = Number(0);
-    if($currentMenu.length > 0) {
-        //保存当前指标的权重
-        var $currMenuWeight = $currentMenu.find('div[name="liWeight"]:eq(0)');
-        if($currMenuWeight.length > 0) {
-            var _weight = $currMenuWeight.attr('weight');
-            if(numberReg.test(_weight)) {
-                areaWeight += Number(_weight);
-            }
-        }
-        //计算同级的指标
-        $currentMenu.siblings('li').each(function(){
-            var $sibingsWeight = $(this).find('div[name="liWeight"]:eq(0)');
-            if($sibingsWeight.length > 0) {
-                var _sibingsWeight = $sibingsWeight.attr('weight');
-                if(numberReg.test(_sibingsWeight)) {
-                    areaWeight += Number(_sibingsWeight);
-                }
-            }
-        });
-        //设置区域权重
-        var $areaWeight = $currentMenu.parent(".scoreMenuList:eq(0)").siblings('.menuTitle:eq(0)').find('#areaWeight');
-        if($areaWeight.length == 0) {
-            //查询记录表区域
-            $areaWeight = $currentMenu.parent(".scoreMenuList:eq(0)").siblings('.menuTitle:eq(0)').find('#recordAreaWeight')
-        }
-        if($areaWeight.length > 0) {
-            $areaWeight.html(areaWeight.toFixed(2));
-            $areaWeight.attr('areaweight' , areaWeight.toFixed(2));
-        }
-    }
-    calcAndSetCurAreaWeightAll();
-    return areaWeight.toFixed(2);
-}
-
-/**
- * 计算所有的区域权重(分值)
- * @returns {string}
- */
-function calcAndSetCurAreaWeightAll() {
-    var $scoreMenu = $(".scoreMenu");
-    $scoreMenu.each(function(){
-        var numberReg = /^\d+(\.\d{1,2})?$/;
-        var areaWeight = Number(0);
-        //计算同级的指标
-        $(this).find('li').each(function () {
-            var $sibingsWeight = $(this).find('div[name="liWeight"]:eq(0)');
-            if ($sibingsWeight.length > 0) {
-                var _sibingsWeight = $sibingsWeight.attr('weight');
-                if (numberReg.test(_sibingsWeight)) {
-                    areaWeight += Number(_sibingsWeight);
-                }
-            }
-        });
-        //设置区域权重partGrade
-        var $areaWeight =  $(this).find('[areaweight]');
-        if ($areaWeight.length > 0) {
-            $areaWeight.html(areaWeight.toFixed(2));
-            $areaWeight.attr('areaweight', areaWeight.toFixed(2));
-        }
-    });
-}
-
-function editGrader(_self,rowid, iCol, e, isNormalEvalu,serviceId, nodeHandlerParam){
-    $('#editNodeHandlerDiv').remove();
-    // 未生成dialog
-    var editNodeHandlerDiv = $('<div id="editNodeHandlerDiv"></div>').appendTo($('body'));
-    editNodeHandlerDiv.dialog({
-        modal: true,
-        title: jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_90,
-        width: 650,
-        minWidth: 650,
-        height: 430,
-        minHeight: 430,
-        open: function (event, ui) {
-            document.getElementById("operationDialog").contentWindow.dialogOpenEvent(serviceId,$('#editNodeHandlerDiv'), nodeHandlerParam);
-        },
-        close: function (event, ui) {
-            editNodeHandlerDiv.empty();
-        },
-        buttons: [{
-            text:jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_69,
-            click: function () {
-                var childIframe = window.frames["editNodeHandlerFrame"];
-                document.getElementById("operationDialog").contentWindow.confirmEvent(_self,e,rowid,iCol,childIframe);
-            }},{
-            text:jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_64,
-            click: function () {
-                $(this).dialog('close');
-            }
-        }],
-    });
-    document.getElementById("operationDialog").contentWindow.setDialogStyle(_self,isNormalEvalu);
-}
-function editGraderDialogClose(){
-    $('#editNodeHandlerDiv').dialog('close');
-}
-
-/**
- * 获取评估对象其他周期的指标信息
- * @param evaObj
- * @param period
- */
-function getOtherEvaObj(evaObj,period) {
-    var obj = null;
-    //加载考核规则、考核计划、考核模式
-    that.selfRemoteCall({
-        method : "compositeOtherPeriodEvaObjectData",
-        param : {
-            evaObj : evaObj,
-            period : period,        //选择的周期
-            thisPeriod : periodId,   //当前页面评估对象的周期
-            personId: personId, //BT1442270 评估对象档案发生变化,引用已有指标报错问题
-            isOrg:isOrg
-        },
-        async : false,
-        success : function(data) {
-            if(data != null){
-                obj = shr.xssFilter(data.rows.evaAreaList);
-            }
-        }
-    });
-    return obj;
-}
-
-/**
- * 补丁11 目标对齐-yien
- * @param evaObj
- * @param period
- * @returns {*}
- */
-function getOrgTargetObj(evaObj, areaType) {
-    var obj = null;
-    //加载考核规则、考核计划、考核模式
-    that.selfRemoteCall({
-        method : "compositeOrgTargetData",
-        param : {
-            evaObj : evaObj,
-            areaType : areaType
-        },
-        async : false,
-        success : function(data) {
-            if(data != null){
-                obj = shr.xssFilter(data.rows.evaAreaList);
-            }
-        }
-    });
-    return obj;
-}
-
-function processGoalsGiver(obj){
-    if(!obj){
-        return;
-    }
-    var text = obj.text();
-    if(pageType != 0 || null == text || '' == text){
-        $(obj).hide();
-        $('span[name="goalsGiverSpan"]').hide();
-        return;
-    }
-    var str = text.split(",");
-    var show = "";
-    if(str.length > 3){
-        show = str[0] + ",";
-        show += str[1] + ",";
-        show += str[2] + "...";
-    }else{
-        show = text;
-    }
-    obj.text(show);
-    obj.attr('title',text);
-}
-
-//补丁10 是否必填-yien
-//根据colName判断字段是否必填
-function isRequiredOfField(isRequiredMap, colName, areaId) {
-    if(isRequiredMap == '' || isRequiredMap.length < 1) {
-        return '0';
-    }
-    var _isRequired = isRequiredMap[colName + '#' + areaId];
-    if(_isRequired != '1') {
-        _isRequired = '0';
-    }
-    return _isRequired;
-}
-
-function array_contain(array, obj){
-    for (var i = 0; i < array.length; i++){
-        if (array[i] == obj)//如果要求数据类型也一致,这里可使用恒等号===
-            return true;
-    }
-    return false;
-}
-
-function getAttachcount() {
-    that.selfRemoteCall({//附件数
-        method: "initialAttachment",
-        param: {evaObj: evaObj},
-        // async: false,   //补丁11 绩效工作台性能优化 改成异步执行
-        success: function (data) {
-            // 计算附件数量
-            var attachcount = data.length;
-            $('.attachcount').html(attachcount);
-        }
-    });
-}
-
-juicer.register('formatMsg', shr.formatMsg); //注册自定义函数
-
-
-/**
- * 判断是否为数字
- * @param fieldVal
- * @returns {boolean}
- */
-function isNumber(fieldVal) {
-    var reg = /^\d+(\.\d+)?$/;
-    if(fieldVal) {
-        return reg.test(fieldVal);
-    }
-    return false;
-}
-
-//补丁11 指标实例多语言改造-yien
-
-function getDefaultLang() {
-    return $.shrMultiLangBoxService.getLangObjByLocale(shr.getContext().locale).lang;
-}
-
-function isMultiField(field) {
-    return isUseMultiLan && multiFields.indexOf(field) > -1;
-}
-
-function initMultiFieldsInput() {
-    if(isUseMultiLan) {
-        for(var i=0,fieldLen= multiFields.length; i<fieldLen; i++) {
-            var $input = $('#'+multiFields[i]);
-            if($input) {
-                //获取多语言信息
-                var _multiVal = {
-                    l1 : $input.data('value_l1') || '',
-                    l2 : $input.data('value_l2') || '',
-                    l3 : $input.data('value_l3') || ''
-                };
-                //处理不可编辑的情况
-                var disabled = $input.attr('disabled') == 'disabled';
-                $input.shrMultiLangBox({
-                    value: '', // 默认值,必填
-                    readonly: false, // 是否只读,非必填
-                    disabled: disabled, // 是否禁用
-                    trimAll: false // 是否去除字符串之间的空格,只去除左右的空格,如果为true,则去除所有空格
-                });
-                $input.shrMultiLangBox('setValue',_multiVal);
-            }
-        }
-    }
-}
-
-var dealWithOptions = function(data){
-    var options = '';
-    if(data.fieldTypeConfig && typeof data.fieldTypeConfig === 'string'){
-        var fieldTypeConfig = JSON.parse(data.fieldTypeConfig);
-        options = fieldTypeConfig.options;
-    }
-    if(data.options && typeof data.options === 'object'){
-        options = data.options.options || data.options;
-    }
-	return encodeURIComponent(JSON.stringify(options));
-}
-juicer.register('dealWithOptions', dealWithOptions);
-
-var dealWithFieldType = function(fieldType){
-    var options = '';
-    if(typeof fieldType === 'string'){
-        return fieldType;
-    }
-    if(typeof fieldType === 'object'){
-        var type = '';
-        switch (fieldType.value) {
-            case '10':
-                type = 'Text';
-                break;
-            case '20':
-                type = 'LongText';
-                break;
-            case '30':
-                type = 'Number';
-                break;
-            case '40':
-                type = 'Boolean';
-                break;
-            case '50':
-                type = 'Select';
-                break;
-            case '60':
-                type = 'Date';
-                break;
-            case '70':
-                type = 'TimeStamp';
-                break;
-            default:
-                break;
-        }
-        return type;
-    }
-}
-juicer.register('dealWithFieldType', dealWithFieldType);
-
-// 返回指定区域的区域说明数据
-var getAreaRema = function(areaId){
-    var rema = '';
-    globalIndicatorData.areaBaseList.forEach(function(item){
-        if(item.id === areaId){
-            rema = item.rema;
-            return false;
-        }
-    })
-	return rema;
-}
-
-// 控制查看更多区域说明信息
-function showMoreRema(e, areaId){
-    var remabox = $('.area-rema-box[area-id="'+areaId+'"]');
-    var textArr = [jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_102,jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_73]; // 展开、收起
-    if(remabox.hasClass('opened')){
-        remabox.removeClass('opened');
-        $(e).text(textArr[0]);
-    }else{
-        remabox.addClass('opened');
-        $(e).text(textArr[1]);
-    }
-}
-
-(function($,shr){
-    waf.defineCustomeClass("cellformatter.operateBtn", cellformatter.defaultFormatter, {
-        format:function (cellvalue, rwd) {
-            var dom = '', btntxt = '', otherMsg = rwd.otherMsg;
-            // 删除指标
-            // if(cellvalue.canEdit && ((rwd.FISUNITED == '1' && targetCanEdit==1 ) || rwd.FISUNITED == '0')){
-            //     btntxt = jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_44;
-            //     dom += '<div class="list-btn" title="'+btntxt+'">'+btntxt+'</div>';
-            // }
-            // 查看进度、进度更新
-            if(otherMsg.hasUpdataBtn && rwd.FGOALSSTATUS.value > 1){
-                btntxt = pageType == 4 ? jsBizMultLan.perfweb_perfgoalsfillhtml_888 : jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_18;
-                dom += '<div class="list-btn" title="'+btntxt+'" onclick="it.openTargetDecomposePage(\''+otherMsg.areaId+'\',\''+rwd.FID+'\',0)">'+btntxt+'</div>';
-            }
-            // 指标分解
-            if(otherMsg.hasDecompseBtn){
-                btntxt = jsBizMultLan.perfweb_perfgoalsfill_26551093_i18n_65;
-                dom += '<div class="list-btn" title="'+btntxt+'" onclick="it.openTargetDecomposePage(\''+otherMsg.areaId+'\',\''+rwd.FID+'\',1)">'+btntxt+'</div>';
-            }
-            return dom;
-        },
-        unformat:function (cell, rowId) {
-        }
-    });
-    $.extend($.jgrid, {
-        focusKnv: function($t){}
-    })
-})(jQuery);