MakeKindList.js 7.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220
  1. /**
  2. * 制造类型列表
  3. */
  4. Ext.define('make.view.make.makeKind.MakeKindList', {
  5. extend: 'Ext.panel.Panel',
  6. xtype: 'make-makekind-makekindlist',
  7. viewModel: {
  8. stores: {
  9. tplStore: {
  10. model: 'make.model.make.MakeKind',
  11. autoLoad: true,
  12. }
  13. }
  14. },
  15. controller: 'make-makekind-makekindlist',
  16. caller:'MakeKind',
  17. layout: 'border',
  18. items: [{
  19. xtype: 'toolbar',
  20. margin: '0 0 12 0',
  21. padding: '10 4',
  22. region: 'north',
  23. items: [{
  24. xtype: 'tbfill'
  25. }, {
  26. text: '新增',
  27. handler: 'handleAdd'
  28. },{
  29. xtype:'button',
  30. text:'刷新',
  31. listeners: {
  32. click: 'onRefresh'
  33. }
  34. }]
  35. }, {
  36. region: 'center',
  37. layout: 'fit',
  38. items: [{
  39. xtype: 'grid',
  40. padding: '8 12',
  41. selModel: {
  42. type: 'cellmodel'
  43. },
  44. border: true,
  45. bind: {
  46. store: '{tplStore}'
  47. },
  48. columns: [{
  49. text: '操作',
  50. width: 80,
  51. focusCls: null,
  52. resizable: false,
  53. draggable: false,
  54. align: 'center',
  55. xtype: 'actioncolumn',
  56. items: [{
  57. tooltip: '修改',
  58. iconCls: 'x-fa fa-pencil fa-fw',
  59. handler: 'handleUpdate'
  60. }, {
  61. iconCls: 'x-fa fa-trash-o fa-fw',
  62. tooltip: '删除',
  63. handler: 'handleDelete'
  64. }]
  65. }, {
  66. text: '类型名称',
  67. width: 120,
  68. focusCls: null,
  69. resizable: false,
  70. draggable: false,
  71. dataIndex: 'mk_name'
  72. }, {
  73. text: '制造/委外',
  74. width: 100,
  75. align: 'center',
  76. focusCls: null,
  77. resizable: false,
  78. draggable: false,
  79. dataIndex: 'mk_makind',
  80. renderer: function(v, m, r) {
  81. if(v == 'MAKE'){
  82. return '制造';
  83. }
  84. if(v == 'OSMAKE'){
  85. return '委外';
  86. }
  87. },
  88. }, {
  89. text: '允许超工单发料',
  90. width: 160,
  91. align: 'center',
  92. focusCls: null,
  93. resizable: false,
  94. draggable: false,
  95. dataIndex: 'mk_allowover',
  96. renderer: function(v, m, r) {
  97. return v==0 ? '否' : '是';
  98. },
  99. }, {
  100. text: '允许超工单完工',
  101. width: 160,
  102. align: 'center',
  103. focusCls: null,
  104. resizable: false,
  105. draggable: false,
  106. dataIndex: 'mk_overfinish',
  107. renderer: function(v, m, r) {
  108. return (v||0)==0 ? '否' : '是';
  109. },
  110. }, {
  111. text: '领料齐套才允许完工',
  112. width: 180,
  113. align: 'center',
  114. focusCls: null,
  115. resizable: false,
  116. draggable: false,
  117. dataIndex: 'mk_unsetfinish',
  118. renderer: function(v, m, r) {
  119. return v==0 ? '否' : '是';
  120. },
  121. }, {
  122. text: '允许0单价',
  123. width: 180,
  124. align: 'center',
  125. focusCls: null,
  126. resizable: false,
  127. draggable: false,
  128. dataIndex: 'mk_zeroprice',
  129. renderer: function(v, m, r) {
  130. return v==0 ? '否' : '是';
  131. },
  132. }, {
  133. text: '工单完工自动结案',
  134. width: 180,
  135. align: 'center',
  136. focusCls: null,
  137. resizable: false,
  138. draggable: false,
  139. dataIndex: 'mk_autoend',
  140. renderer: function(v, m, r) {
  141. return v==0 ? '否' : '是';
  142. },
  143. }, {
  144. text: '未结案提醒天数',
  145. width: 150,
  146. align: 'center',
  147. focusCls: null,
  148. resizable: false,
  149. draggable: false,
  150. dataIndex: 'mk_reminddays',
  151. renderer: function(v, m, r) {
  152. return saas.util.BaseUtil.numberFormat(v, 2, false);
  153. }
  154. }, {
  155. text: '默认类型',
  156. width: 80,
  157. align: 'center',
  158. focusCls: null,
  159. resizable: false,
  160. draggable: false,
  161. dataIndex: 'mk_ifmrpkind',
  162. renderer: function(v, m, r) {
  163. return v==0 ? '否' : '是';
  164. },
  165. }, {
  166. text: '状态',
  167. xtype: 'actioncolumn',
  168. dataIndex: 'mk_statuscode',
  169. align: 'center',
  170. width: 60,
  171. items: [{
  172. iconCls:'',
  173. getClass: function(v, meta, rec) {
  174. if(rec.get('mk_statuscode')=='ENABLE'){
  175. return 'x-grid-checkcolumn-checked-btn';
  176. }else{
  177. return 'x-grid-checkcolumn-btn';
  178. }
  179. },
  180. handler: function(view, rowIndex, colIndex) {
  181. var rec = view.getStore().getAt(rowIndex);
  182. var type=rec.get('mk_statuscode')=='ENABLE'?true:false;
  183. // 禁用/启用
  184. var form = this.ownerCt.ownerCt.ownerCt;
  185. var grid = this.ownerCt.ownerCt;
  186. saas.util.BaseUtil.request({
  187. url: ('/api/make/kind/' + (!type ? 'open' : 'close') +'/'+rec.get('id')),
  188. params: '',
  189. method: 'POST',
  190. })
  191. .then(function(localJson) {
  192. if(localJson.success){
  193. saas.util.BaseUtil.showSuccessToast('操作成功');
  194. grid.store.load();
  195. var remotecombo = Ext.ComponentQuery.query("[xtype='remotecombo']");
  196. Ext.each(remotecombo,(i)=>{
  197. if(i){
  198. i.store.load(function () {
  199. //重新设置combo高度
  200. var count = i.store.getCount();
  201. var newHeight = count > 5 ? 248 - (i.hiddenBtn ? 50 : 0) : (33 * (count-0.5) + (i.hiddenBtn ? 0 : 50));
  202. i.picker && i.picker.setHeight(newHeight);
  203. });
  204. }
  205. })
  206. }
  207. })
  208. .catch(function(e) {
  209. saas.util.BaseUtil.showErrorToast('操作失败: ' + e.message);
  210. });
  211. }
  212. }]
  213. }, {
  214. flex: 1
  215. }]
  216. }]
  217. }]
  218. });