/** * 员工预离职列表 */ var gridId = '#grid'; shr.defineClass("shr.batchAffair.PlatformPreResignList", shr.framework.List, { initalizeDOM: function() { shr.batchAffair.PlatformPreResignList.superClass.initalizeDOM.call(this); }, getNewDataAction: function() { var _self = this; // openLoader(1,"正在更新,请稍等..."); var url = shr.getContextPath() + "/dynamic.do?method=getNewData&uipk=" + jsBinder.uipk; shr.remoteCall({ url: url, type: 'POST', success: function(response) { shr.showInfo({ message: "最新名单获取成功", hideAfter: 5 }); _self.reloadGrid(); } }); // closeLoader(); }, /** * 生成单人离职单 */ effectSingleEmpResignBillAction: function() { var _self = this; if ($("#grid").jqGrid("getSelectedRows").length == 0) { shr.showWarning({ message: "请先选中表格中的数据!" }); return; } var billId = _self.getSelectedIds(); _self.remoteCall({ method: 'createResign', param: { billId: billId }, success: function(reponse) { if(reponse && reponse.code == 200){ shr.showInfo({ message: '执行成功,请在离职流程跟踪查看生成的数据!' }); }else{ shr.showError({ message: "执行错误!" }); } } }); }, //批量维护 batchMaintainAction: function() { //当前列表没有数据时,弹出提示语,不出现弹出框 var gridData = $("#grid").jqGrid("getRowData"); if (!gridData.length) { shr.showInfo({ message: '当前列表没有数据!' }); return; } var selectedIds = this.getSelectedIds(); if (!selectedIds || selectedIds.length == 0) { shr.showError({ message: "请先选中表格中的数据!" }); return; } var self = this, _propfield_data = [{ value: 'applyDate', alias: '提出离职日期', type: 'Date' }, { value: 'preResignDate', alias: '预离职日期', type: 'Date' }, { value: 'preResignType', alias: '预离职状态', type: 'F7', f7uipk: 'com.kingdee.eas.hr.emp.app.PreResignType.FastFilter.F7', f7value: '', f7valText: '', f7title: '预离职状态' }, { value: 'variationReason', alias: '预离职原因', type: 'F7', f7uipk: 'com.kingdee.eas.hr.base.app.VariationReason.FastFilter.F7', f7value: '', f7valText: '', f7title: '预离职原因', f7filter: tempfilter }]; //维护字段 var data = {}; data.propfield_data = _propfield_data; data.maintainEntityName = "com.kingdee.eas.hr.customextend.PlatformPreResign"; data.objectName_FieldName = "person.name"; data.executeHandler = "com.kingdee.shr.batchAffair.web.handler.EmpBatchPlatformPreResignListHandler"; employeeBatchMaintainProp.initBatchMaintainOperate(self, data); }, bathPreResignByExcelAction: function() { var curIOModelString = "com.kingdee.eas.hr.customextend.PlatformPreResign"; var customData = tempfilter; this.doImportData("bathPreResignByExcel", { tempfilter: tempfilter }); }, // 单据撤回 abortBillAction: function() { var _self = this, compareBillStateTxt = ['未审批', '审批中', '审批不通过'], compareBillStateVal = [1, 2, 4] ; if (_self.beforeAbortBill2(compareBillStateVal)) { _self.doAbortBill(); } }, doAbortBill: function() { var self = this, billId = self.getSelectedIds(); shr.showConfirm('撤回单据后,单据状态将变成 \'未提交\' 状态,确认撤回?', function() { self.remoteCall({ method: 'abortBill', param: { billId: billId }, success: function(reponse) { shr.showInfo({ message: '单据撤回成功。' }); self.reloadGrid(); } }); }); }, // 单据删除 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) { shr.showWarning({ message: '请先选中表格中的数据!' }); return false; } else if (billId.length > 1) { shr.showInfo({ message: '请选中一行。' }); return false; } 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, compareBillStateVal = [3], billState = ''; if (_self.beforeAbortBill()) { billState = _self.getGridCellValue('billState'); if ($.inArray(billState, compareBillStateVal) != -1) { _self.doAntiApproval(); } else { shr.showWarning({ message: '只有单据状态为【审批通过】的单据,才能被反审批' }); } } }, doAntiApproval: function() { var self = this, billId = self.getSelectedIds(); shr.showConfirm('反审批单据后,单据状态将变成 \'未提交\' 状态,确认反审批?', function() { self.remoteCall({ method: 'untiCheck', param: { billId: billId }, success: function(reponse) { shr.showInfo({ message: '单据反审批成功。' }); self.reloadGrid(); } }); }); }, //exportToExcelAction:function(){ // // shr.batchAffair.EmpBatchPreResignList.superClass.exportToExcelAction.call(this); //}, });