Query.js 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. Ext.QuickTips.init();
  2. Ext.define('erp.controller.oa.persontask.workPlan.Query', {
  3. extend: 'Ext.app.Controller',
  4. FormUtil: Ext.create('erp.util.FormUtil'),
  5. BaseUtil: Ext.create('erp.util.BaseUtil'),
  6. views:[
  7. 'oa.persontask.workPlan.Query','core.form.Panel',
  8. 'common.datalist.GridPanel','common.datalist.Toolbar','core.form.ConDateField',
  9. 'core.trigger.TextAreaTrigger','core.trigger.DbfindTrigger','core.form.DetailTextField','core.form.FileField'
  10. ],
  11. init:function(){
  12. var me = this;
  13. this.control({
  14. 'erpDatalistGridPanel': {
  15. // afterrender: function(grid){
  16. // grid.onGridItemClick = function(){//改为点击button进入详细界面
  17. // me.onGridItemClick(grid.selModel.lastSelected);
  18. // };
  19. // }
  20. itemclick: this.onGridItemClick
  21. },
  22. });
  23. },
  24. getForm: function(btn){
  25. return btn.ownerCt.ownerCt;
  26. },
  27. onGridItemClick: function(selModel, record){//grid行选择
  28. console.log(record);
  29. var me = this;
  30. var path = 'jsps/oa/persontask/workPlan/register.jsp';
  31. var id = record.data.wp_id;
  32. var title = '工作计划查看';
  33. var last = me.getLast(record.data.wp_title);
  34. var panel = Ext.getCmp('workplan' + id);
  35. var main = parent.Ext.getCmp("content-panel");
  36. if(!panel){
  37. panel = {
  38. title : title,
  39. tag : 'iframe',
  40. tabConfig:{tooltip: record.data.wp_title},
  41. frame : true,
  42. border : false,
  43. layout : 'fit',
  44. iconCls : 'x-tree-icon-tab-tab1',
  45. html : '<iframe id="iframe_' + id + '" src="' + basePath + path + "?nextworkplan=wp_idIS" + id + (last == 0 ? '':'&lastworkplan=wp_idIS' + last ) + '" height="100%" width="100%" frameborder="0" scrolling="yes"></iframe>',
  46. closable : true,
  47. listeners : {
  48. close : function(){
  49. main.setActiveTab(main.getActiveTab().id);
  50. }
  51. }
  52. };
  53. me.FormUtil.openTab(panel, 'workplan' + id);
  54. }else{
  55. main.setActiveTab(panel);
  56. }
  57. },
  58. getLast: function(title){
  59. var lt = '';
  60. var f = title.split(/\d{4}/);
  61. console.log(f);
  62. if(contains(title, '年度', true)){
  63. lt = f[0] + (title.substr(em_name.length+1, 4)-1) + f[1];
  64. } else if(contains(title, '季度', true)){
  65. var fv = f[1].split(/\d{1}/);
  66. if(contains(f[1], '1', true)){
  67. lt = f[0] + (title.substr(em_name.length+1, 4)-1) + fv[0] + '4' + fv[1];
  68. } else {
  69. lt = f[0] + (title.substr(em_name.length+1, 4)) + fv[0] + (title.charAt(title.indexOf('第') + 1)-1) + fv[1];
  70. }
  71. } else if(contains(title, '月', true)){
  72. var fu = f[1].split(/\d{2}/);
  73. if(contains(f[1], '01', true)){
  74. lt = f[0] + (title.substr(em_name.length+1, 4)-1) + fu[0] + '12' + fu[1];
  75. } else {
  76. var moo = title.substr(title.indexOf('年')+1, 2);
  77. lt = f[0] + (title.substr(em_name.length+1, 4)) + fu[0] + (moo-1>9 ? moo-1 : '0'+(moo-1)) + fu[1];
  78. }
  79. }
  80. var lp = 0;
  81. Ext.Ajax.request({
  82. url : basePath + 'oa/persontask/workPlan/queryWorkPlan.action',
  83. method : 'post',
  84. params:{
  85. title: lt
  86. },
  87. async: false,
  88. callback : function(options,success,response){
  89. var rs = new Ext.decode(response.responseText);
  90. if(rs.exceptionInfo){
  91. showError(rs.exceptionInfo);return;
  92. }
  93. if(rs.success && rs.workplan){
  94. lp = rs.workplan.wp_id;
  95. }
  96. }
  97. });
  98. return lp;
  99. }
  100. });