yuanzhi_kuang 3 天之前
父節點
當前提交
ea5cbd6c11
共有 1 個文件被更改,包括 90 次插入62 次删除
  1. 90 62
      addon/customer/nx/empBatchAffair/PlatformPreResignList.js

+ 90 - 62
addon/customer/nx/empBatchAffair/PlatformPreResignList.js

@@ -1,6 +1,8 @@
 /**
  * 员工预离职列表
  */
+
+var gridId = '#grid';
 shr.defineClass("shr.batchAffair.PlatformPreResignList", shr.framework.List, {
 
     initalizeDOM: function() {
@@ -8,51 +10,7 @@ shr.defineClass("shr.batchAffair.PlatformPreResignList", shr.framework.List, {
 
     },
 
-    // 单据反审核
-    doDelete: function(selectedIds) {
-         var _self = this;
-        var url = shr.getContextPath() + "/dynamic.do?method=delete&uipk=" + jsBinder.uipk;
-        shr.showConfirm('您确认要删除吗?',
-        function() {
-            top.Messenger().hideAll();
-            shr.remoteCall({
-                url: url,
-                type: 'POST',
-                param: {
-                    billId: selectedIds,
-                    logModel: shr.toJSON($("#grid").jqGrid("getSelectedRowsData"))
-                },
-                success: function(response) {
-                    shr.showInfo({
-                        message: "成功清除预离职信息",
-                        hideAfter: 5
-                    });
-                    _self.reloadGrid();
-                }
-            });
-        });
-    },
-
-    /**
-	 * 描述:删除操作 
-	 */
-    deleteRecord: function(selectedIds) {
-        var _self = this;
-
-        compareBillStateVal = [0],
-        billState = '';
-        if (_self.beforeAbortBill()) {
-            billState = _self.getGridCellValue('billState');
-            if ($.inArray(billState, compareBillStateVal) != -1) {
-                _self.doDelete(selectedIds);
-            } else {
-                shr.showWarning({
-                    message: '只有单据状态为【未提交】的预离职单,才能被清除!'
-                });
-            }
-        }
-
-    },
+   
 
     getNewDataAction: function() {
         var _self = this;
@@ -172,17 +130,9 @@ shr.defineClass("shr.batchAffair.PlatformPreResignList", shr.framework.List, {
     abortBillAction: function() {
         var _self = this,
         compareBillStateTxt = ['未审批', '审批中', '审批不通过'],
-        compareBillStateVal = [1, 2, 4],
-        billState = '';
-        if (_self.beforeAbortBill()) {
-            billState = _self.getGridCellValue('billState');
-            if ($.inArray(billState, compareBillStateVal) != -1) {
-                _self.doAbortBill();
-            } else {
-                shr.showWarning({
-                    message: '只有单据状态为' + compareBillStateTxt.join(',') + '的单据,才能被撤回'
-                });
-            }
+        compareBillStateVal = [1, 2, 4] ;
+        if (_self.beforeAbortBill2(compareBillStateVal)) {
+            _self.doAbortBill();
         }
     },
 
@@ -206,13 +156,45 @@ shr.defineClass("shr.batchAffair.PlatformPreResignList", shr.framework.List, {
         });
     },
 
-    getGridCellValue: function(colName) {
-        var self = this,
-        rowid = self.getSelectedIds(),
-        $grid = $(self.gridId);
-        return $grid.jqGrid("getCell", rowid, colName);
+
+
+     // 单据删除
+    doDelete: function(selectedIds) {
+         var _self = this;
+        var url = shr.getContextPath() + "/dynamic.do?method=delete&uipk=" + jsBinder.uipk;
+        shr.showConfirm('您确认要删除吗?',
+        function() {
+            top.Messenger().hideAll();
+            shr.remoteCall({
+                url: url,
+                type: 'POST',
+                param: {
+                    billId: selectedIds,
+                    logModel: shr.toJSON($("#grid").jqGrid("getSelectedRowsData"))
+                },
+                success: function(response) {
+                    shr.showInfo({
+                        message: "成功清除预离职信息",
+                        hideAfter: 5
+                    });
+                    _self.reloadGrid();
+                }
+            });
+        });
     },
 
+    /**
+	 * 描述:删除操作 
+	 */
+    deleteRecord: function(selectedIds) {
+        var _self = this,
+        compareBillStateVal = [0] ;
+        if (_self.beforeAbortBill2(compareBillStateVal)) {
+            _self.doDelete(selectedIds);
+        }
+    },
+ 
+
     beforeAbortBill: function() {
         var billId = $("#grid").jqGrid("getSelectedRows");
         if (!billId || billId.length == 0) {
@@ -220,7 +202,8 @@ shr.defineClass("shr.batchAffair.PlatformPreResignList", shr.framework.List, {
                 message: '请先选中表格中的数据!'
             });
             return false;
-        } else if (billId.length > 1) {
+        } 
+		else if (billId.length > 1) {
             shr.showInfo({
                 message: '请选中一行。'
             });
@@ -229,6 +212,51 @@ shr.defineClass("shr.batchAffair.PlatformPreResignList", shr.framework.List, {
         return true;
     },
 
+
+
+
+    getGridCellValue: function(colName) {
+        var self = this,
+        rowid = self.getSelectedIds(),
+        $grid = $(self.gridId);
+        return $grid.jqGrid("getCell", rowid, colName);
+    },
+
+
+    getGridCellValue2:function(rowid,colName ){
+        var self = this;
+        var $grid = $(self.gridId);
+		var colVal = $grid.jqGrid('getCell', rowid, colName);
+		if (colVal !== '' &&  colVal != undefined) {
+			 return colVal
+		}
+		return "";
+	},
+	
+	  beforeAbortBill2: function(compareBillStateVal) {
+          var self = this;
+        var billId = $("#grid").jqGrid("getSelectedRows");
+        if (!billId || billId.length == 0) {
+            shr.showWarning({
+                message: '请先选中表格中的数据!'
+            });
+            return false;
+        } 
+        for(var i = 0; billId.length>i;i++){
+          var thisId =  billId[i];
+            var billState = Number (self.getGridCellValue2(thisId,'billState'));
+            var personName = self.getGridCellValue2(thisId, "person.name");
+             if( $.inArray( billState,compareBillStateVal ) == -1 ){
+                shr.showWarning({
+                    message:  personName + '的数据状态不匹配,请不能执行此操作!'
+                });
+                return false;
+             }
+        }
+        return true;
+    },
+	
+
     // 单据反审核
     untiCheckAction: function() {
         var _self = this,