yuanzhi_kuang 9 ヶ月 前
コミット
46fc017699
1 ファイル変更58 行追加25 行削除
  1. 58 25
      js/addon/customer/perfweb/web/js/perfGoalsFillNewEx.js

+ 58 - 25
js/addon/customer/perfweb/web/js/perfGoalsFillNewEx.js

@@ -1227,8 +1227,8 @@ shr.defineClass("shr.perfweb.perfGoalsFillNewEx", shr.framework.Edit, {
                     // 第二部分:如何达成-总评(评估人评估)----不显示
                     row.hideadd = true;
                     row.hideref = true;
-                }else if(r_areaName.includes('第二部分:如何达成-Business leadership') || r_areaName.includes('第二部分:如何达成-People leadership') 
-                     || r_areaName.includes('如何达成-Self leadership') ){
+               }else if( r_areaName.includes('第二部分:如何达成-Business leadership') || r_areaName.includes('第二部分:如何达成-People leadership') 
+                     || r_areaName.includes('如何达成-Self leadership') || r_areaName.includes('如何达成-B2') ){
                     // 第二部分:如何达成-Business leadership(至少选择一项)----只显示引用指标
                     // 第二部分:如何达成-People leadership(至少选择一项)----只显示引用指标
                     // 第二部分:如何达成-Self leadership(至少选择一项)----只显示引用指标
@@ -2572,8 +2572,9 @@ shr.defineClass("shr.perfweb.perfGoalsFillNewEx", shr.framework.Edit, {
      * 保存指标事件
      * action: submit 指标变更页面,列表模式提交前先保存
      * @returns
+     *isTemp 二开添加; 用于在引用指标前临时保存,不刷新界面
      */
-    saveTargetClick : function(action){
+    saveTargetClick : function(action,isTemp){
         that.selfRemoteCall({
             method : "getEvaObjTargetStatus",
             param : {
@@ -2603,7 +2604,7 @@ shr.defineClass("shr.perfweb.perfGoalsFillNewEx", shr.framework.Edit, {
                     //     that.doSaveTarget(_targetStatus);
                     // }
                     // if(it.checkRequiredField()){
-                        that.doSaveTarget(_targetStatus,action);
+                        that.doSaveTarget(_targetStatus,action,isTemp);
                     // }
                 }
             }
@@ -2672,7 +2673,7 @@ shr.defineClass("shr.perfweb.perfGoalsFillNewEx", shr.framework.Edit, {
      * 保存指标数据
      * action: submit 指标变更页面,列表模式提交前先保存
      * */
-    doSaveTarget : function(_targetStatus,action){
+    doSaveTarget : function(_targetStatus,action,isTemp){
         $('.tabwrap').each(function(index,tab){
             $('#tab'+index).jqGrid('editStop');
         })
@@ -2680,7 +2681,7 @@ shr.defineClass("shr.perfweb.perfGoalsFillNewEx", shr.framework.Edit, {
         var flag =  that.assembleTargetData();
          
         if(!flag){
-            shr.showError({message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_75,hideAfter : 5});
+            // shr.showError({message : jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_75,hideAfter : 5});
             return false;
         }else{
             
@@ -2793,6 +2794,9 @@ shr.defineClass("shr.perfweb.perfGoalsFillNewEx", shr.framework.Edit, {
                 async : false,
                 type:"post",
                 success : function(data) {
+                    if(isTemp){
+                        return;
+                    }
                     //加载考核规则、考核计划、考核模式
                     that.selfRemoteCall({
                         method : "compositeEvaObjectData",
@@ -2802,7 +2806,7 @@ shr.defineClass("shr.perfweb.perfGoalsFillNewEx", shr.framework.Edit, {
                         },
                         async : false,
                         success : function(data) {
-                            if(data != null){
+                            if(data != null ){
                                 $("li[workerid='" +evaObj+ "']").find("i[name='targetStatus']").text(data.rows.personalGoalStatusAlias);
                                 globalIndicatorData = data;
                                 it.initGoalsItems(data); //重新加载左侧区域指标列表
@@ -2812,7 +2816,6 @@ shr.defineClass("shr.perfweb.perfGoalsFillNewEx", shr.framework.Edit, {
 
                     if(data != null && data.result == 'SUCCESS'){
                         var totalweight = 0;
-
                         var weightScorePrefix = jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_65;//权重或分值的名字
                         var weightScorePostfix = "%";//权重或分值的名字
                         if (scoringWay==1){
@@ -2884,14 +2887,12 @@ shr.defineClass("shr.perfweb.perfGoalsFillNewEx", shr.framework.Edit, {
             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" ){
+            //202501 改 
+            if(areaName.indexOf('如何达成-B2') > -1 ){
+                if( (data.length < 2  || data.length > 4 ) && optionType == "submit" ){
                     flag = false;
-                    errMsg = areaName+",该区域指标为空!";
+                    errMsg = areaName+",需选择2-4项能力!";
                     shr.showWarning({
                         message: errMsg,
                         hideAfter: 3
@@ -2906,6 +2907,20 @@ shr.defineClass("shr.perfweb.perfGoalsFillNewEx", shr.framework.Edit, {
                 for(var key in data[j]){
                     if(key == 'otherMsg' || key == 'operateBtn' || key == 'id'){
                         continue;
+                    }
+            		  //202502 
+                    if(key == 'FWEIGHT'){
+                        var weighttext = data[j]['FWEIGHT']
+                        if(!isNumberVerify(weighttext)){
+                            optionType = "submit" ;
+                            flag = false;
+                            errMsg = areaName+"【权重】的值【"+weighttext+"】不符合要求; ("+jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_52+")";
+                            shr.showWarning({
+                                message: errMsg,
+                                hideAfter: 6
+                            });
+                            break;
+                        }
                     }
                     var colAttr = _grid.getColProp(key);
                     var classes = colAttr.classes;
@@ -3749,6 +3764,18 @@ shr.defineClass("shr.perfweb.perfGoalsFillNewEx", shr.framework.Edit, {
     // 引用绩效指标弹框
     // 新逻辑新增传参areaId, areaType,旧逻辑没有
     initReferenceInditorsDialog: function(btnComfirmFunc, areaId, areaType){
+        var that = this;
+        $('.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;
+        // }
+        that.saveTargetClick("",true);
         var referenceIndicatorsTpl = document.getElementById('referenceIndicatorsTpl').innerHTML;
         globalIndicatorData.jsBizMultLan = jsBizMultLan;
         if(areaId){
@@ -3788,13 +3815,13 @@ shr.defineClass("shr.perfweb.perfGoalsFillNewEx", shr.framework.Edit, {
                         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_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,
@@ -4230,12 +4257,14 @@ shr.defineClass("shr.perfweb.perfGoalsFillNewEx", shr.framework.Edit, {
      * 加载弹出框表格——绩效指标库——全部
      */
     initPIallTable : function(areaNameStr){
+        //202501 指标引用更改
         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_118,
+                "重点提示",
                 jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_108,
                 jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_113,
                 jsBizMultLan.perfweb_perfGoalsFillNew_26551296_i18n_47,
@@ -4248,9 +4277,9 @@ shr.defineClass("shr.perfweb.perfGoalsFillNewEx", shr.framework.Edit, {
                 ''],
             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:'number',index:'FNumber', width:100, align:"left",frozen: true, frozen: true,sortable: true},
+                {name:'name',index:'FName_L2', width:280, align:"left",frozen: true, frozen: true,sortable: true},
+                {name:'indecatorDesc',index:'FIndecatorDesc_L2', width:620, align:"left",frozen: true,sortable: true},
                 {name:'indecatorTypeId',index:'indecatorTypeId', hidden: true},
 
                 {name:'indecatorType',index:'FIndecatorTypeID', width:100, align:"left", frozen: true,sortable: true,hidden: true},
@@ -5284,9 +5313,13 @@ shr.defineClass("shr.perfweb.perfGoalsFillNewEx", shr.framework.Edit, {
      * 下达
      */
     transmitAction : function(){
+        $('.tabwrap').each(function(index,tab){
+            $('#tab'+index).jqGrid('editStop');
+        })
          if(!canSaveVerify("submit")){
             return false;
          }
+        that.saveTargetClick("",true);
         //判断定量指标是否维护评分公式和目标值
         var unvalidArr = getUnvalidPerfAchievement();
         if(unvalidArr.length > 0) {