employeeResignationContractList.js 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417
  1. var sidValue = [];
  2. var orgLongNum="";
  3. var sumType = "1";
  4. var colNames;
  5. var colModel;
  6. shr.defineClass("shr.customer.gtiit.rpt.employeeResignationContractList", shr.framework.List, {
  7. gridId: '#reportGrid',
  8. reportUipk : "com.kingdee.eas.employeeResignationContract.list" ,
  9. rowNumPerPage : 30, // 设置默认分页30
  10. colModelData: null,
  11. isFirstTimeLoad: 0,
  12. initalizeDOM : function () {
  13. var that = this;
  14. that.setColModelData();
  15. shr.customer.gtiit.rpt.employeeResignationContractList.superClass.initalizeDOM.call(this);
  16. // 快速查询添加事件
  17. $('#searcher').shrSearchBar('option', {
  18. afterSearchClick: this.queryGridByEvent
  19. });
  20. $("#proposer").attr("maxlength","").attr("validate","");
  21. //快速过滤展开
  22. if($(".filter-containers").is(":hidden")){
  23. $("#filter-slideToggle").click();
  24. }
  25. }
  26. /**
  27. * 选择导航节点
  28. */
  29. ,queryGridByEvent: function(e) {
  30. var viewPage;
  31. var self=this;
  32. if (e.target) {
  33. viewPage = shr.getCurrentViewPage(e.target);
  34. } else {
  35. viewPage = shr.getCurrentViewPage(e);
  36. }
  37. // 将页码恢复为第1页
  38. $(viewPage.gridId).jqGrid('option', 'page', 1);
  39. viewPage.queryAction();
  40. },
  41. /**
  42. * 获得search查询条件
  43. */
  44. getSearchFilterItems: function() {
  45. var filter = $('#searcher').shrSearchBar('option', 'filterView');
  46. if (filter && filter.filterItems) {
  47. return filter.filterItems;
  48. }
  49. }
  50. ,queryAction : function () {
  51. var self = this;
  52. //search搜索
  53. var searchFilterItems = self.getSearchFilterItems();
  54. if( searchFilterItems == undefined)
  55. searchFilterItems = "" ;
  56. //快速过滤
  57. var fastFilterItems = self.getFastFilterItems();
  58. if(fastFilterItems == undefined){
  59. fastFilterItems = "";
  60. }
  61. if(fastFilterItems["add"] == ""){
  62. fastFilterItems["add"] = null;
  63. }
  64. //R20190625-2369保存方案后,其它条件设置的条件被清空
  65. //需把视图的filterItem其他条件name="add"改成name="advancedFilter"
  66. var advancedFilterItems = self.getAdvancedFilterItems();
  67. if(advancedFilterItems != undefined){
  68. fastFilterItems["add"] = advancedFilterItems;
  69. }
  70. $("#reportGrid").jqGrid('setGridParam', {
  71. datatype : 'json',
  72. postData : {
  73. 'NewRearch' : 'newRearch',
  74. 'fastFilterItems' : $.toJSON(fastFilterItems),
  75. 'searchFilterItems' : searchFilterItems,
  76. 'sumType' : sumType,
  77. 'page' : 1
  78. },
  79. page : 0
  80. });
  81. self.doRenderDataGrid();
  82. },
  83. setColModelData: function () {
  84. var self = this;
  85. self.remoteCall({
  86. method : "getGridColModel",
  87. success : function (data) {
  88. colNames = data.colNames;
  89. colModel = data.colModel;
  90. }
  91. })
  92. },
  93. /**
  94. * 表格数据请求URL
  95. */
  96. getGridDataRequestURL : function () {
  97. var serviceId = shr.getUrlRequestParam("serviceId");
  98. return this.dynamicPage_url + "?method=getGridData" + "&uipk=" + this.reportUipk + '&serviceId='+encodeURIComponent(serviceId);
  99. },
  100. doRenderDataGrid : function () {
  101. var self = this, table = $("#reportGrid");
  102. var searchFilterItems = self.getSearchFilterItems();
  103. var fastFilterItems = self.getFastFilterItems();
  104. if( searchFilterItems == undefined)
  105. searchFilterItems = "" ;
  106. if( fastFilterItems == undefined)
  107. fastFilterItems = "" ;
  108. if(fastFilterItems["add"] == ""){
  109. fastFilterItems["add"] = null;
  110. }
  111. //R20190625-2369保存方案后,其它条件设置的条件被清空
  112. //需把视图的filterItem其他条件name="add"改成name="advancedFilter"
  113. var advancedFilterItems = self.getAdvancedFilterItems();
  114. if(advancedFilterItems != undefined){
  115. fastFilterItems["add"] = advancedFilterItems;
  116. }
  117. postData = {
  118. 'searchFilterItems' : searchFilterItems,
  119. 'fastFilterItems' : $.toJSON(fastFilterItems),
  120. 'page1' : 1
  121. };
  122. var url = self.getGridDataRequestURL();
  123. var options = {
  124. url : url ,
  125. datatype : "json",
  126. multiselect : true,
  127. rownumbers : false,
  128. colNames : colNames,
  129. colModel : colModel,
  130. rowNum : self.rowNumPerPage,
  131. // pager : '#gridPager1',
  132. mtype: 'POST',
  133. postData: postData ,
  134. // height : 'auto',
  135. height : '600px',
  136. // height : self.rowNumPerPage > 21 ? '600px' : 'auto',
  137. rowList : [30,45,60],
  138. recordpos : 'left',
  139. recordtext : '({0}-{1})/{2}',
  140. gridview : true,
  141. // pginput : true,
  142. shrinkToFit :colModel.length>10?false:true,
  143. viewrecords : true,
  144. //cellEdit:true,
  145. // cellsubmit:"clientArray" ,
  146. // sortname : "sumsql.fproposerid",
  147. //caption: "Frozen Header",
  148. customPager : '#gridPager1',
  149. pagerpos:"center",
  150. pginputpos:"right",
  151. pginput:true,
  152. synchTotal:"true",
  153. onSelectRow: function(id){
  154. jQuery('#reportGrid').jqGrid('editRow', id, false, function(){});
  155. sidValue.push(id);
  156. lastsel2 = id;
  157. $("#reportGrid").attr("sid", sidValue.join(","));
  158. }
  159. };
  160. options.loadComplete = function (data) {
  161. if($("#gridPager1").html() == "" && "true" == "true"){
  162. $("#reportGrid").setCustomPager("#gridPager1");
  163. }
  164. shr.setIframeHeight();
  165. $('#gridPager1_left').click(function(){
  166. $('.ui-pg-selbox').show();
  167. $('.ui-pg-selbox').css({"left":"-60px"})
  168. $(this).children('.ui-paging-info').hide();
  169. });
  170. $("#microToolbar").parent().hide()
  171. $("#gridPager1").parent().css({"position":"relative"})
  172. $("#gridPager1").addClass("shrPage").css({
  173. "position":"absolute",
  174. "top":"-25px",
  175. "right":"0px",
  176. "background":"#FFF"
  177. })
  178. shr.customer.gtiit.rpt.employeeResignationContractList.superClass.gridLoadComplete.call(this,data);
  179. };
  180. table.html();
  181. table.jqGrid(options);
  182. jQuery("#reportGrid").jqGrid(options).jqGrid("reloadGrid");
  183. jQuery('#reportGrid').jqGrid('setFrozenColumns');
  184. self.firstTime = 1;
  185. },
  186. handleMicroToolbarInfo : function () {
  187. var self = this;
  188. var html = "";
  189. html += "<div class='shrPage page-Title' >";
  190. html += "<span id='gripage' class='ui-paging-info' style='cursor: default;display: inline-block;font-size: 13px;padding: 2px 5px 0 0;'></span>";
  191. html += "<span id='prevId' style='vertical-align: text-top;cursor: pointer;' class='ui-icon ui-icon-seek-prev'></span>";
  192. html += "<span id='nextId' style='vertical-align: text-top;cursor: pointer;' class='ui-icon ui-icon-seek-next'></span></div>";
  193. $('#microToolbar').html("");
  194. $('#microToolbar').append(html);
  195. $("#gripage").on("click", self.selectRowNumPerPage);
  196. $("#prevId").on("click", self.prePage);
  197. $("#nextId").on("click", self.nextPage);
  198. //页码 (1-4)/4
  199. self.updatePageEnable();
  200. $("#gripage").text($("#gridPager1_left >div[dir='ltr']").text());
  201. $("#gridPager1").hide();
  202. var ids=jQuery("#reportGrid").jqGrid('getDataIDs');
  203. var rowdata=jQuery("#reportGrid").jqGrid('getRowData',ids[0]);
  204. shr.setIframeHeight();
  205. $("#reportGrid_frozen").parent().height('583px');
  206. },
  207. updatePageEnable:function () {
  208. var temp = $("#gridPager1_left >div[dir='ltr']").text();
  209. if (temp.substring(1, temp.indexOf('-')) == '1') {
  210. $("#prevId").addClass("ui-state-disabled");
  211. } else {
  212. $("#prevId").removeClass("ui-state-disabled");
  213. }
  214. if (parseInt(temp.substring(temp.indexOf('-') + 1, temp.indexOf(')'))) >= parseInt(temp.substring(temp.indexOf('/') + 1).replace(new RegExp(",","gm"),""))) {
  215. $("#nextId").addClass("ui-state-disabled");
  216. } else {
  217. $("#nextId").removeClass("ui-state-disabled");
  218. }
  219. },
  220. getCurPage:function(){
  221. //(1-4)/4
  222. var self = this,
  223. rowNum = self.rowNumPerPage;
  224. var temp = $("#gridPager1_left >div[dir='ltr']").text();
  225. var curPageNum = (parseInt(temp.substring(1, temp.indexOf('-')))-1)/rowNum+1;
  226. return curPageNum;
  227. },
  228. prePage : function () {
  229. $("#prev_gridPager1").trigger("click");
  230. shr.setIframeHeight();
  231. $("#gripage").text($("#gridPager1_left >div[dir='ltr']").text());
  232. },
  233. nextPage : function () {
  234. $("#next_gridPager1").trigger("click");
  235. shr.setIframeHeight();
  236. $("#gripage").text($("#gridPager1_left >div[dir='ltr']").text());
  237. },
  238. selectRowNumPerPage:function(){
  239. }
  240. ,
  241. exportToExcelAction : function () {
  242. openLoader
  243. var _self = this ;
  244. var url = _self.exportCommonParam();
  245. var fastFilterItems = _self.getFastFilterItems();
  246. if( fastFilterItems == undefined)
  247. fastFilterItems = "" ;
  248. if(fastFilterItems["add"] == ""){
  249. fastFilterItems["add"] = null;
  250. }
  251. var serviceId = shr.getUrlRequestParam("serviceId");
  252. url += '&serviceId='+encodeURIComponent(serviceId) + "&isAll=true";
  253. //document.location.href = url;
  254. var callback=function(psw){
  255. var params = _self.getExportAllParams();
  256. params.exportPrivteProtected = $.allEncrypt(psw);
  257. openLoader(1,jsBizMultLan.atsManager_attendanceResultSumList_i18n_28);
  258. shr.ajax({
  259. type:"post",
  260. url:url,
  261. data: $.extend(_self.assemExportData(),{exportPrivteProtected: psw} ),
  262. success:function(res){
  263. closeLoader();
  264. if(null != res && null != res.url){ //这里有可能返回空,所以这里要做飞空判断的,但是不知道这里的业务逻辑,所以这里要问常青和飞羽
  265. shr.redirect(res.url,"");
  266. }
  267. //document.location.href = url;
  268. },
  269. error : function(res){
  270. shr.showError({message: jsBizMultLan.atsManager_attendanceResultSumList_i18n_6});
  271. closeLoader();
  272. }
  273. });
  274. }
  275. if(_self.isNeedExportFilePassword('#exportToExcel')) {
  276. fieldSensitiveService.setExportPsw(callback);
  277. }else{
  278. callback();
  279. }
  280. },
  281. assemExportData:function(exportData){
  282. var _self = this ;
  283. var fastFilterItems = _self.getFastFilterItems();
  284. var advancedFilterItems = _self.getAdvancedFilterItems();
  285. if( fastFilterItems == undefined)
  286. fastFilterItems = "" ;
  287. if(fastFilterItems["add"] == ""){
  288. fastFilterItems["add"] = null;
  289. }
  290. if(advancedFilterItems != undefined){
  291. fastFilterItems["add"] = advancedFilterItems;
  292. }
  293. var postData = {fastFilterItems : $.toJSON(fastFilterItems)};
  294. exportData && (postData = $.extend(postData, exportData));
  295. return postData;
  296. },
  297. exportCommonParam : function(){
  298. var self = this;
  299. var url = shr.getContextPath() + shr.dynamicURL + "?method=exportToExcel";
  300. var uipk = "com.kingdee.eas.hr.ats.app.AttendanceResultSumList";
  301. var filterItems = self.getQuickFilterItems();
  302. var sorder = $('#reportGrid').jqGrid('getGridParam', 'sortorder') || "";
  303. var sordName = $('#reportGrid').jqGrid('getGridParam', 'sortname') || "";
  304. //标题
  305. url += "&title="+jsBizMultLan.atsManager_attendanceResultSumList_i18n_8;
  306. url = url + '&uipk=' + uipk + "&sidx=" + sordName+"&page=0"+"&sumType="+sumType + "&sord=" + sorder + "&transverse=1";
  307. //如果存在高级搜索的条件,则拼上条件。
  308. if(filterItems){
  309. url += "&searchFilterItems=" + encodeURIComponent(filterItems);
  310. }
  311. return url;
  312. },
  313. exportCurrentAction : function(){
  314. var Exchange_json=[];
  315. var _self = this;
  316. var exportData = {
  317. exportSelect:"yes",
  318. serviceId:shr.getUrlRequestParam("serviceId")
  319. };
  320. var selectedIds = $("#reportGrid").jqGrid("getSelectedRows");
  321. if (selectedIds.length > 0) {
  322. for (var i = 0, length = selectedIds.length; i < length; i++) {
  323. // personIds.push($("#reportGrid").jqGrid("getCell", selectedIds[i], "id"));
  324. var item = selectedIds[i];
  325. var data = $("#reportGrid").jqGrid("getRowData", item);
  326. var personId=data["personId"] ;
  327. var adminOrgUnit=data["adminOrgUnitId"] ;
  328. Exchange_json.push({'personId':personId,'adminOrgUnit':adminOrgUnit});
  329. }
  330. }
  331. if(Exchange_json.length > 0){
  332. exportData.PersonJson = $.toJSON(Exchange_json);
  333. }else{
  334. shr.showWarning({
  335. message: jsBizMultLan.atsManager_attendanceResultSumList_i18n_13
  336. });
  337. return false;
  338. }
  339. var callback=function(psw){
  340. var params = _self.getExportCurrentParams();
  341. params.exportPrivteProtected = $.allEncrypt(psw);
  342. openLoader(1,jsBizMultLan.atsManager_attendanceResultSumList_i18n_28);
  343. shr.ajax({
  344. type:"post",
  345. url:_self.exportCommonParam(),
  346. data: $.extend( _self.assemExportData(exportData),params ),
  347. success:function(res){
  348. closeLoader();
  349. //document.location.href = url;
  350. shr.redirect(res.url,"");
  351. },
  352. error : function(res){
  353. shr.showError({message: jsBizMultLan.atsManager_attendanceResultSumList_i18n_6});
  354. closeLoader();
  355. }
  356. });
  357. }
  358. if(_self.isNeedExportFilePassword('#exportCurrent')) {
  359. fieldSensitiveService.setExportPsw(callback);
  360. }else{
  361. callback();
  362. }
  363. },
  364. //导出选中参数,供领域获取
  365. getExportCurrentParams: function() {
  366. var _self = this;
  367. var isenableexcelpwd = $('#exportCurrent').attr('data-isenableexcelpwd');
  368. var fieldName = this.getExportFieldName();
  369. if(isenableexcelpwd == 'false') {
  370. if(window.isShrSensitiveRuleOpen) isenableexcelpwd = _self.isSensitiveGrid();
  371. }
  372. var ids = $("#reportGrid").jqGrid("getSelectedRows");
  373. var params = {
  374. supportQueryUuid: false,
  375. selectedData: ids,
  376. fieldName_key: fieldName,
  377. encryptKeys: 'exportPrivteProtected',
  378. isEnableExcelPwd: typeof(isenableexcelpwd) === 'undefined' ? 'false' : JSON.parse(isenableexcelpwd)
  379. }
  380. return params;
  381. }
  382. });