NoFile.js 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208
  1. Ext.QuickTips.init();
  2. Ext.define('erp.controller.oa.officialDocument.fileManagement.NoFile', {
  3. extend: 'Ext.app.Controller',
  4. FormUtil: Ext.create('erp.util.FormUtil'),
  5. GridUtil: Ext.create('erp.util.GridUtil'),
  6. BaseUtil: Ext.create('erp.util.BaseUtil'),
  7. views:[
  8. 'oa.officialDocument.fileManagement.noFile.Viewport','common.datalist.GridPanel','common.datalist.Toolbar',
  9. 'oa.officialDocument.fileManagement.noFile.Form',
  10. 'core.trigger.DbfindTrigger','core.form.ConDateField','core.form.WordSizeField','oa.mail.MailPaging'
  11. ],
  12. init:function(){
  13. var me = this;
  14. this.control({
  15. 'erpDatalistGridPanel': {
  16. afterrender: function(grid){
  17. grid.onGridItemClick = function(){//改为点击button进入详细界面
  18. me.onGridItemClick(grid.selModel.lastSelected);
  19. };
  20. }
  21. },
  22. 'button[id=delete]': {
  23. click: function(){
  24. me.vastDelete();
  25. }
  26. },
  27. 'button[id=file]': {
  28. click: function(){
  29. var who = getUrlParam('whoami');
  30. var tablename = '';
  31. var field = new Array();
  32. if(contains(who, 'Send', true)){
  33. tablename = 'SendOfficialDocument';
  34. field[0] = 'sod_isfile';
  35. field[1] = 'sod_id';
  36. } else if(contains(who, 'Receive', true)){
  37. tablename = 'ReceiveOfficialDocument';
  38. field[0] = 'rod_isfile';
  39. field[1] = 'rod_id';
  40. } else if(contains(who, 'Instruction', true)){
  41. tablename = 'Instruction';
  42. field[0] = 'in_isfile';
  43. field[1] = 'in_id';
  44. }
  45. me.newFile(tablename);
  46. // me.vastFile(tablename, field);
  47. }
  48. },
  49. 'button[id=rod]': {
  50. click: function(){
  51. var condition = "urlcondition=rod_statuscode='OVERED' AND rod_isfile=0";
  52. var path = window.location.href.toString().split('?');
  53. window.location.href = path[0] + '?whoami=File!ReceiveOfficialDocument&' + condition;
  54. }
  55. },
  56. 'button[id=sod]': {
  57. click: function(){
  58. var condition = "urlcondition=sod_statuscode='OVERED' AND sod_isfile=0";
  59. var path = window.location.href.toString().split('?');
  60. window.location.href = path[0] + '?whoami=File!SendOfficialDocument&' + condition;
  61. }
  62. },
  63. 'button[id=in]': {
  64. click: function(){
  65. var condition = "urlcondition=in_statuscode='OVERED' AND in_isfile=0";
  66. var path = window.location.href.toString().split('?');
  67. window.location.href = path[0] + '?whoami=File!Instruction&' + condition;
  68. }
  69. },
  70. });
  71. },
  72. onGridItemClick: function(record){//grid行选择
  73. // console.log(record);
  74. var me = this;
  75. var who = getUrlParam('whoami');
  76. var path = '';
  77. var id = 0;
  78. var title = '';
  79. if(contains(who, 'Send', true)){
  80. id = record.data.sod_id;
  81. title = record.data.sod_title;
  82. path = 'jsps/oa/officialDocument/sendODManagement/sodDetail.jsp';
  83. } else if(contains(who, 'Receive', true)){
  84. id = record.data.rod_id;
  85. title = record.data.rod_title;
  86. path = 'jsps/oa/officialDocument/receiveODManagement/rodDetail.jsp';
  87. } else if(contains(who, 'Instruction', true)){
  88. id = record.data.in_id;
  89. title = record.data.in_title;
  90. path = 'jsps/oa/officialDocument/instruction/instructionDetail.jsp';
  91. }
  92. var panel = Ext.getCmp(who + id);
  93. var main = parent.Ext.getCmp("content-panel");
  94. if(!panel){
  95. panel = {
  96. title : "文件查看",
  97. tag : 'iframe',
  98. tabConfig:{tooltip: title},
  99. frame : true,
  100. border : false,
  101. layout : 'fit',
  102. iconCls : 'x-tree-icon-tab-tab1',
  103. html : '<iframe id="iframe_' + who + id + '" src="' + basePath + path + "?flag=query&id=" + id + '" height="100%" width="100%" frameborder="0" scrolling="yes"></iframe>',
  104. closable : true,
  105. listeners : {
  106. close : function(){
  107. main.setActiveTab(main.getActiveTab().id);
  108. }
  109. }
  110. };
  111. me.FormUtil.openTab(panel, who + id);
  112. }else{
  113. main.setActiveTab(panel);
  114. }
  115. },
  116. vastDelete: function(){
  117. var grid = Ext.getCmp('grid');
  118. var records = grid.selModel.getSelection();
  119. if(records.length > 0){
  120. var id = new Array();
  121. Ext.each(records, function(record, index){
  122. id[index] = record.data[keyField];
  123. });
  124. var main = parent.Ext.getCmp("content-panel");
  125. main.getActiveTab().setLoading(true);//loading...
  126. Ext.Ajax.request({
  127. url : basePath + 'common/vastDelete.action',
  128. params: {
  129. caller: caller,
  130. id: id
  131. },
  132. method : 'post',
  133. callback : function(options,success,response){
  134. main.getActiveTab().setLoading(false);
  135. var localJson = new Ext.decode(response.responseText);
  136. if(localJson.exceptionInfo){
  137. showError(localJson.exceptionInfo);
  138. return "";
  139. }
  140. if(localJson.success){
  141. Ext.Msg.alert("提示", "删除成功!", function(){
  142. window.location.href = window.location.href;
  143. });
  144. }
  145. }
  146. });
  147. }
  148. },
  149. newFile: function(tablename){
  150. var grid = Ext.getCmp('grid');
  151. var records = grid.selModel.getSelection();
  152. if(records.length == 1){
  153. var id = records[0].data[keyField];
  154. var win = new Ext.window.Window({
  155. id : 'win',
  156. title: "添加档案",
  157. height: "80%",
  158. width: "90%",
  159. maximizable : false,
  160. buttonAlign : 'left',
  161. layout : 'anchor',
  162. items: [{
  163. tag : 'iframe',
  164. frame : true,
  165. anchor : '100% 100%',
  166. layout : 'fit',
  167. html : '<iframe id="iframe_' + new Date() + '" src="' + basePath + 'jsps/oa/officialDocument/fileManagement/newFile.jsp?odtype=' + tablename + '&odid=' + id + '" height="100%" width="100%" frameborder="0" scrolling="yes"></iframe>'
  168. }]
  169. });
  170. win.show();
  171. }
  172. },
  173. vastFile: function(tablename, field){
  174. var grid = Ext.getCmp('grid');
  175. var records = grid.selModel.getSelection();
  176. if(records.length > 0){
  177. var id = new Array();
  178. Ext.each(records, function(record, index){
  179. id[index] = record.data[keyField];
  180. });
  181. var main = parent.Ext.getCmp("content-panel");
  182. main.getActiveTab().setLoading(true);//loading...
  183. Ext.Ajax.request({
  184. url : basePath + 'oa/officialDocument/vastFile.action',
  185. params: {
  186. tablename: tablename,
  187. field: field,
  188. id: id
  189. },
  190. method : 'post',
  191. callback : function(options,success,response){
  192. main.getActiveTab().setLoading(false);
  193. var localJson = new Ext.decode(response.responseText);
  194. if(localJson.exceptionInfo){
  195. showError(localJson.exceptionInfo);
  196. return "";
  197. }
  198. if(localJson.success){
  199. Ext.Msg.alert("提示", "归档成功!", function(){
  200. window.location.href = window.location.href;
  201. });
  202. }
  203. }
  204. });
  205. }
  206. }
  207. });