Ext.define('make.view.osmake.makeDetail.QueryPanelController', { extend: 'saas.view.core.query.QueryPanelController', alias: 'controller.osmake-makedetail-querypanel', init: function (form) { var me = this; this.control({ // 物料编号 'dbfindtrigger[name=pr_detail]':{ beforerender:function(f){ Ext.apply(f,{ dbfinds:[{ from:'pr_code',to:'mm_prodcode' }, { from:'pr_detail',to:'pr_detail' }, { from:'pr_orispeccode',to:'pr_orispeccode' }], }) ; } },'dbfindtrigger[name=make.creatorName]':{ beforerender:function(f){ Ext.apply(f,{ dbfinds:[{ from:'em_name',to:'make.creatorName' }], }) ; } },'dbfindtrigger[name=ma_auditman]':{ beforerender:function(f){ Ext.apply(f,{ dbfinds:[{ from:'em_name',to:'ma_auditman', }], }) ; } },'dbfindtrigger[name=makematerial.mm_prodcode]':{ beforerender:function(f){ Ext.apply(f,{ dbfinds:[{ from:'pr_code',to:'makematerial.mm_prodcode', }, { from:'pr_detail',to:'pr_detail' }, { from:'pr_orispeccode',to:'pr_orispeccode' }, { from:'pr_brand',to:'pr_brand' }], }) ; } },'dbfindtrigger[name=ma_prodcode]':{ beforerender:function(f){ Ext.apply(f,{ //放大镜赋值设置 dbfinds:[{ from:'pr_code',to:'ma_prodcode' },{ from:'pr_detail',to:'pr_detail' },{ from:'pr_spec',to:'pr_spec' },{ from: 'pr_brand', to: 'pr_brand' },{ from: 'pr_orispeccode', to: 'pr_orispeccode' },{ from: 'pr_unit', to: 'pr_unit' }], }); } } }); }, /** * 批量发料 */ turnPick:function(form){ var me = this; var queryPanel = me.getView(), queryGrid = queryPanel.down('core-query-querygridpanel'); var data = me.getGridSelected(queryGrid); if(data && data.length>0){ form.setLoading(true); var params = JSON.stringify(data); saas.util.BaseUtil.request({ url: queryGrid.baseVastUrl+'batchPickWithQty', params: params, method: 'POST', async:false }) .then(function(res) { if (res.success) { form.setLoading(false); queryGrid.store.load(); if(res.data.error){ saas.util.BaseUtil.showErrorToast(res.data.error); }else{ saas.util.BaseUtil.showSuccessToast('转单成功'); } if(res.data.result){ Ext.Array.each(res.data.result, function(value) { var intValue = value.id, codeValue = value.code, name = '外协领料'; saas.util.BaseUtil.openTab('osmakepick-formpanel', name + "(" + codeValue + ")", codeValue + intValue, { initId: intValue }); }); } } }) .catch(function(res) { form.setLoading(false); saas.util.BaseUtil.showErrorToast(('操作失败: ') + res.message); }); }else{ saas.util.BaseUtil.showErrorToast('请勾选至少一条有效明细。'); } }, /** * 批量退料 */ turnBack:function(form){ var me = this; var queryPanel = me.getView(), queryGrid = queryPanel.down('core-query-querygridpanel'); var data = me.getGridSelected(queryGrid); if(data && data.length>0){ form.setLoading(true); var params = JSON.stringify(data); saas.util.BaseUtil.request({ url: queryGrid.baseVastUrl+'batchBackWithQty', params: params, method: 'POST', async:false }) .then(function(res) { if (res.success) { form.setLoading(false); queryGrid.store.load(); if(res.data.error){ saas.util.BaseUtil.showErrorToast(res.data.error); }else{ saas.util.BaseUtil.showSuccessToast('生成退料单成功'); } if(res.data.result){ Ext.Array.each(res.data.result, function(value) { var intValue = value.id, codeValue = value.code, name = '外协退料'; saas.util.BaseUtil.openTab('osmakereturn-formpanel', name + "(" + codeValue + ")", codeValue + intValue, { initId: intValue }); }); } } }) .catch(function(res) { form.setLoading(false); saas.util.BaseUtil.showErrorToast(('操作失败: ') + res.message); }); }else{ saas.util.BaseUtil.showErrorToast('请勾选至少一条有效明细。'); } }, /** * 批量报废 */ turnScrap:function(form){ var me = this; var queryPanel = me.getView(), queryGrid = queryPanel.down('core-query-querygridpanel'); var data = me.getGridSelected(queryGrid); if(data && data.length>0){ form.setLoading(true); var params = JSON.stringify(data); saas.util.BaseUtil.request({ url: queryGrid.baseVastUrl+'batchScrapWithQty', params: params, method: 'POST', async:false }) .then(function(res) { if (res.success) { form.setLoading(false); queryGrid.store.load(); if(res.data.error){ saas.util.BaseUtil.showErrorToast(res.data.error); }else{ saas.util.BaseUtil.showSuccessToast('生成报废单成功'); } if(res.data.result){ Ext.Array.each(res.data.result, function(value) { var intValue = value.id, codeValue = value.code, name = '外协报废'; saas.util.BaseUtil.openTab('osmakescrap-formpanel', name + "(" + codeValue + ")", codeValue + intValue, { initId: intValue }); }); } } }) .catch(function(res) { form.setLoading(false); saas.util.BaseUtil.showErrorToast(('操作失败: ') + res.message); }); }else{ saas.util.BaseUtil.showErrorToast('请勾选至少一条有效明细。'); } }, /** * 成套发料 */ turnSetPick:function(form){ var me = this; var queryPanel = me.getView(), queryGrid = queryPanel.down('core-query-querygridpanel'); var data = queryGrid.getGridSelected(); if(data && data.length>0){ form.setLoading(true); var params = JSON.stringify({baseDTOs:data}); saas.util.BaseUtil.request({ url: queryGrid.baseVastUrl+'batchSetPick', params: params, method: 'POST', async:false }) .then(function(res) { if (res.success) { form.setLoading(false); queryGrid.store.load(); if(res.data.error){ saas.util.BaseUtil.showErrorToast(res.data.error); }else{ saas.util.BaseUtil.showSuccessToast('套料发料成功'); } if(res.data.result){ Ext.Array.each(res.data.result, function(value) { var intValue = value.id, codeValue = value.code, name = '外协领料'; saas.util.BaseUtil.openTab('osmakepick-formpanel', name + "(" + codeValue + ")", codeValue + intValue, { initId: intValue }); }); } } }) .catch(function(res) { form.setLoading(false); saas.util.BaseUtil.showErrorToast(('操作失败: ') + res.message); }); }else{ saas.util.BaseUtil.showErrorToast('请勾选至少一条有效明细。'); } }, /** *获取grid 数据 */ getGridSelected:function(grid){ var me = this, items = grid.selModel.getSelection(), data = new Array() ; var ids=[]; Ext.each(items, function(item, index){ var o = new Object(); if(item.data['mm_thisqty']>0){ o['mm_id'] = item.data['mm_id']; o['mm_maid'] = item.data['ma_id']; o['mm_thisqty'] = item.data['mm_thisqty']; o['mm_prodcode'] = item.data['mm_prodcode']; data.push(o); } }); return data; } });