EmpTransferCheck.js 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188
  1. Ext.QuickTips.init();
  2. Ext.define('erp.controller.hr.emplmana.EmpTransferCheck', {
  3. extend: 'Ext.app.Controller',
  4. FormUtil: Ext.create('erp.util.FormUtil'),
  5. BaseUtil: Ext.create('erp.util.BaseUtil'),
  6. GridUtil: Ext.create('erp.util.GridUtil'),
  7. views:[
  8. 'hr.emplmana.EmpTransferCheck','core.form.Panel','core.grid.Panel2','core.toolbar.Toolbar',
  9. 'core.button.Add','core.button.Save','core.button.Close','core.button.DeleteDetail',
  10. 'core.button.Update','core.button.Delete','core.form.YnField','core.button.EmpTransferCheck',
  11. 'core.button.ResAudit','core.button.Audit','core.button.Submit','core.button.ResSubmit',
  12. 'core.trigger.TextAreaTrigger','core.trigger.DbfindTrigger','core.form.MultiField'
  13. ],
  14. init:function(){
  15. var me = this;
  16. this.control({
  17. 'erpGridPanel2': {
  18. //itemclick: this.onGridItemClick
  19. },
  20. 'erpEmpTransferCheckButton':{
  21. afterrender:function(btn){
  22. var status = Ext.getCmp('ec_statuscode');
  23. if((status && status.value != 'ENTERING')){
  24. btn.hide();
  25. }
  26. },
  27. click:function(btn){
  28. var check=Ext.getCmp('ec_check').value;
  29. if(check){
  30. warnMsg("此张单据已检测,重新检测会清除明细数据,是否重新检测?", function(btn){
  31. if(btn == 'yes'){
  32. me.check();
  33. }
  34. });
  35. }else{
  36. me.check();
  37. }
  38. }
  39. },
  40. 'field[name=ec_codevalue]': {
  41. afterrender:function(f){
  42. f.setFieldStyle({
  43. 'color': 'blue'
  44. });
  45. f.focusCls = 'mail-attach';
  46. var c = Ext.Function.bind(me.openRelative, me);
  47. Ext.EventManager.on(f.inputEl, {
  48. mousedown : c,
  49. scope: f,
  50. buffer : 100
  51. });
  52. }
  53. },
  54. 'erpSaveButton': {
  55. click: function(btn){
  56. var form = me.getForm(btn);
  57. if(Ext.getCmp(form.codeField).value == null || Ext.getCmp(form.codeField).value == ''){
  58. me.BaseUtil.getRandomNumber();//自动添加编号
  59. }
  60. this.FormUtil.beforeSave(this);
  61. }
  62. },
  63. 'erpCloseButton': {
  64. click: function(btn){
  65. this.FormUtil.beforeClose(this);
  66. }
  67. },
  68. 'erpUpdateButton': {
  69. afterrender:function(btn){
  70. if(Ext.getCmp('ec_check').value==0){
  71. btn.hide();
  72. }
  73. },
  74. click: function(btn){
  75. this.FormUtil.onUpdate(this);
  76. }
  77. },
  78. 'erpDeleteButton': {
  79. click: function(btn){
  80. me.FormUtil.onDelete(Ext.getCmp('ec_id').value);
  81. }
  82. },
  83. 'erpAddButton': {
  84. click: function(){
  85. me.FormUtil.onAdd('EmpTransferCheck', '新增员工异动工作交接', 'jsps/hr/emplmana/employee/empTransferCheck.jsp');
  86. }
  87. },
  88. 'erpSubmitButton': {
  89. afterrender: function(btn){
  90. var status = Ext.getCmp('ec_statuscode');
  91. if((status && status.value != 'ENTERING')||Ext.getCmp('ec_check').value==0){
  92. btn.hide();
  93. }
  94. },
  95. click: function(btn){
  96. var grid = Ext.getCmp('grid');
  97. var check=Ext.getCmp('ec_check').value;
  98. var flag=true;
  99. var param=grid.GridUtil.getAllGridStore(grid);
  100. if((param == null || param == '')&&check!=0){
  101. me.FormUtil.onSubmit(Ext.getCmp('ec_id').value,true);
  102. }else{
  103. Ext.Array.each(grid.store.data.items, function(item){
  104. if(item.data['ecd_change']==0){
  105. flag=false;
  106. return false;
  107. }
  108. });
  109. if(flag){
  110. me.FormUtil.onSubmit(Ext.getCmp('ec_id').value);
  111. }else{
  112. showError('明细中仍存在未变更数据,不能提交');
  113. }
  114. }
  115. }
  116. },
  117. 'erpResSubmitButton': {
  118. afterrender: function(btn){
  119. var status = Ext.getCmp('ec_statuscode');
  120. if(status && status.value != 'COMMITED'){
  121. btn.hide();
  122. }
  123. },
  124. click: function(btn){
  125. me.FormUtil.onResSubmit(Ext.getCmp('ec_id').value);
  126. }
  127. },
  128. 'erpAuditButton': {
  129. afterrender: function(btn){
  130. var status = Ext.getCmp('ec_statuscode');
  131. if(status && status.value != 'COMMITED'){
  132. btn.hide();
  133. }
  134. },
  135. click: function(btn){
  136. me.FormUtil.onAudit(Ext.getCmp('ec_id').value);
  137. }
  138. }
  139. });
  140. },
  141. onGridItemClick: function(selModel, record){//grid行选择
  142. this.GridUtil.onGridItemClick(selModel, record);
  143. },
  144. getForm: function(btn){
  145. return btn.ownerCt.ownerCt;
  146. },
  147. check:function(){
  148. var me=this;
  149. var id=Ext.getCmp('ec_id').value;
  150. var form =Ext.getCmp('form');
  151. form.setLoading(true);
  152. Ext.Ajax.request({
  153. url : basePath + 'hr/emplmana/check.action?caller=EmpTransferCheck',
  154. params: {
  155. id: id
  156. },
  157. method : 'post',
  158. callback : function(options,success,response){
  159. form.setLoading(false);
  160. var localJson = new Ext.decode(response.responseText);
  161. if(localJson.success){
  162. window.location.href = window.location.href + '&formCondition=ec_idIS' +id
  163. + '&gridCondition=ecd_ecidIS' + id;
  164. }
  165. }
  166. });
  167. },
  168. openRelative:function(e, el, obj){
  169. if(Ext.getCmp('ec_caller').value==''||Ext.getCmp('ec_keyvalue').value=='')return;
  170. var ec_caller=Ext.getCmp('ec_caller').value;
  171. var ec_keyvalue=Ext.getCmp('ec_keyvalue').value;
  172. var url='',name='',title='';
  173. if(ec_caller=='Turnposition'){
  174. name='Turnposition';
  175. title='员工调动申请';
  176. url='jsps/hr/emplmana/employee/turnposition.jsp?formCondition=tp_idIS'+ec_keyvalue+'' +
  177. '&gridCondition=td_tpidIS' +ec_keyvalue;
  178. this.FormUtil.onAdd(name, title, url);
  179. }else if(ec_caller=='Turnover'){
  180. name='Turnover';
  181. title='人员离职申请';
  182. url='jsps/hr/emplmana/employee/turnover.jsp?formCondition=to_idIS'+ec_keyvalue+'' +
  183. '&gridCondition=td_tpidIS'+ec_keyvalue;
  184. this.FormUtil.onAdd(name, title, url);
  185. }
  186. }
  187. });