|
@@ -74,21 +74,29 @@ Ext.define('erp.view.core.button.BatchPrint',{
|
|
|
}
|
|
|
});
|
|
|
me.beforePrint(lps_Barcaller,function(data){
|
|
|
- if(data.datas.length>1){
|
|
|
- this.window = Ext.create('Ext.window.Window', {
|
|
|
+ if(data.datas.length>1){
|
|
|
+ var win = Ext.getCmp('pt-win-bp');
|
|
|
+ if(win) {
|
|
|
+ win.destroy();
|
|
|
+ }
|
|
|
+ this.window = Ext.create('Ext.window.Window', {
|
|
|
autoShow: true,
|
|
|
title: '选择打印类型',
|
|
|
width: 400,
|
|
|
height: 300,
|
|
|
layout: 'anchor',
|
|
|
+ id :'pt-win-bp',
|
|
|
+ modal:true,
|
|
|
+ closable: false,
|
|
|
+ closeAction:'destroy',
|
|
|
items: [{
|
|
|
anchor:'100% 100%',
|
|
|
xtype:'form',
|
|
|
- id :'printbycondition',
|
|
|
+ id :'printbycondition-bp',
|
|
|
buttonAlign : 'center',
|
|
|
items:[{
|
|
|
xtype: 'combo',
|
|
|
- id: 'template',
|
|
|
+ id: 'template-bp',
|
|
|
fieldLabel: '选择打印类型',
|
|
|
store: Ext.create('Ext.data.Store', {
|
|
|
autoLoad: true,
|
|
@@ -113,7 +121,7 @@ Ext.define('erp.view.core.button.BatchPrint',{
|
|
|
buttons: [{
|
|
|
text: '确定',
|
|
|
handler: function(b) {
|
|
|
- var temp = Ext.getCmp('template');
|
|
|
+ var temp = Ext.getCmp('template-bp');
|
|
|
if(temp && temp.value!= null){
|
|
|
var selData = temp.valueModels[0].data;
|
|
|
me.jasperReportPrint(lps_Barcaller,selData.REPORTNAME,idS);
|
|
@@ -166,6 +174,10 @@ Ext.define('erp.view.core.button.BatchPrint',{
|
|
|
// 获取选择打印文件,用户选择分辨率,和打印机
|
|
|
var me = this;
|
|
|
var bo = false;
|
|
|
+ var win = Ext.getCmp('template-win-bp');
|
|
|
+ if(win) {
|
|
|
+ win.destroy();
|
|
|
+ }
|
|
|
Ext.Ajax.request({
|
|
|
url: basePath + 'ma/setting/config.action?caller=BarCodeSetting&code=zebraOrderPrint',
|
|
|
method: 'GET',
|
|
@@ -181,87 +193,85 @@ Ext.define('erp.view.core.button.BatchPrint',{
|
|
|
}
|
|
|
}
|
|
|
});
|
|
|
- if(!me.window){
|
|
|
- setup_web_print(function(printers,selected_printer){
|
|
|
- me.window = Ext.create('Ext.window.Window', {
|
|
|
- autoShow: true,
|
|
|
- title: '选择打印模板',
|
|
|
- width: 400,
|
|
|
- height: bo?200:300,
|
|
|
- layout: 'anchor',
|
|
|
- id :'template-win',
|
|
|
- closeAction:'hide',
|
|
|
- items: [{
|
|
|
- anchor:'100% 100%',
|
|
|
- xtype:'form',
|
|
|
- buttonAlign : 'center',
|
|
|
- items:[{
|
|
|
- xtype: 'combo',
|
|
|
- id: 'printers',
|
|
|
- fieldLabel: '打印机列表',
|
|
|
- store: Ext.create('Ext.data.Store', {
|
|
|
- autoLoad: true,
|
|
|
- fields: ['display', 'value'],
|
|
|
- data:printers
|
|
|
- }),
|
|
|
- queryMode: 'local',
|
|
|
- displayField: 'display',
|
|
|
- valueField: 'value',
|
|
|
- width:361,
|
|
|
- allowBlank:false,
|
|
|
- value:selected_printer.uid,
|
|
|
- selectOnFocus:true,//用户不能自己输入,只能选择列表中有的记录
|
|
|
- style:'margin-left:15px;margin-top:15px;'
|
|
|
- },{
|
|
|
- xtype: 'combo',
|
|
|
- id: 'dpi',
|
|
|
- fieldLabel: '打印机分辨率',
|
|
|
- style:'margin-left:15px;margin-top:15px;',
|
|
|
- store: Ext.create('Ext.data.Store', {
|
|
|
- fields: ['display', 'value'],
|
|
|
- data : [{"display": '203dpi', "value": '203'},
|
|
|
- {"display": '300dpi', "value": '300'},
|
|
|
- {"display": '600dpi', "value": '600'},
|
|
|
- {"display": '1200dpi', "value": '1200'}]
|
|
|
- }),
|
|
|
- displayField: 'display',
|
|
|
- valueField: 'value',
|
|
|
- queryMode: 'local',
|
|
|
- value:resolutionCookie||'203',
|
|
|
- width:bo?0:361,
|
|
|
- allowBlank:false,
|
|
|
- selectOnFocus:true,//用户不能自己输入,只能选择列表中有的记录
|
|
|
- hidden:bo?true:false
|
|
|
- }]
|
|
|
- }],
|
|
|
- buttonAlign: 'center',
|
|
|
- buttons: [{
|
|
|
- text: '确定',
|
|
|
- handler: function(b) {
|
|
|
- var printers = Ext.getCmp('printers');
|
|
|
- var dpi = Ext.getCmp('dpi');
|
|
|
- if(printers && printers.value!= null){
|
|
|
- if(bo){
|
|
|
- me.getLabelInfo(caller,printers.value,dpi.value);
|
|
|
- }else{
|
|
|
- me.zebraPrint(caller,printers.value,dpi.value);
|
|
|
- }
|
|
|
- b.ownerCt.ownerCt.close();
|
|
|
+ setup_web_print(function(printers,selected_printer){
|
|
|
+ me.window = Ext.create('Ext.window.Window', {
|
|
|
+ autoShow: true,
|
|
|
+ title: '选择打印模板',
|
|
|
+ width: 400,
|
|
|
+ height: bo?200:300,
|
|
|
+ layout: 'anchor',
|
|
|
+ id :'template-win-bp',
|
|
|
+ modal:true,
|
|
|
+ closable: false,
|
|
|
+ closeAction:'destroy',
|
|
|
+ items: [{
|
|
|
+ anchor:'100% 100%',
|
|
|
+ xtype:'form',
|
|
|
+ buttonAlign : 'center',
|
|
|
+ items:[{
|
|
|
+ xtype: 'combo',
|
|
|
+ id: 'printers-bp',
|
|
|
+ fieldLabel: '打印机列表',
|
|
|
+ store: Ext.create('Ext.data.Store', {
|
|
|
+ autoLoad: true,
|
|
|
+ fields: ['display', 'value'],
|
|
|
+ data:printers
|
|
|
+ }),
|
|
|
+ queryMode: 'local',
|
|
|
+ displayField: 'display',
|
|
|
+ valueField: 'value',
|
|
|
+ width:361,
|
|
|
+ allowBlank:false,
|
|
|
+ value:selected_printer.uid,
|
|
|
+ selectOnFocus:true,//用户不能自己输入,只能选择列表中有的记录
|
|
|
+ style:'margin-left:15px;margin-top:15px;'
|
|
|
+ },{
|
|
|
+ xtype: 'combo',
|
|
|
+ id: 'dpi',
|
|
|
+ fieldLabel: '打印机分辨率',
|
|
|
+ style:'margin-left:15px;margin-top:15px;',
|
|
|
+ store: Ext.create('Ext.data.Store', {
|
|
|
+ fields: ['display', 'value'],
|
|
|
+ data : [{"display": '203dpi', "value": '203'},
|
|
|
+ {"display": '300dpi', "value": '300'},
|
|
|
+ {"display": '600dpi', "value": '600'},
|
|
|
+ {"display": '1200dpi', "value": '1200'}]
|
|
|
+ }),
|
|
|
+ displayField: 'display',
|
|
|
+ valueField: 'value',
|
|
|
+ queryMode: 'local',
|
|
|
+ value:resolutionCookie||'203',
|
|
|
+ width:bo?0:361,
|
|
|
+ allowBlank:false,
|
|
|
+ selectOnFocus:true,//用户不能自己输入,只能选择列表中有的记录
|
|
|
+ hidden:bo?true:false
|
|
|
+ }]
|
|
|
+ }],
|
|
|
+ buttonAlign: 'center',
|
|
|
+ buttons: [{
|
|
|
+ text: '确定',
|
|
|
+ handler: function(b) {
|
|
|
+ var printers = Ext.getCmp('printers-bp');
|
|
|
+ var dpi = Ext.getCmp('dpi');
|
|
|
+ if(printers && printers.value!= null){
|
|
|
+ if(bo){
|
|
|
+ me.getLabelInfo(caller,printers.value,dpi.value);
|
|
|
}else{
|
|
|
- alert("请选择打印机 ");
|
|
|
- }
|
|
|
- }
|
|
|
- }, {
|
|
|
- text: '取消',
|
|
|
- handler: function(b) {
|
|
|
+ me.zebraPrint(caller,printers.value,dpi.value);
|
|
|
+ }
|
|
|
b.ownerCt.ownerCt.close();
|
|
|
+ }else{
|
|
|
+ alert("请选择打印机 ");
|
|
|
}
|
|
|
- }]
|
|
|
- });
|
|
|
- });
|
|
|
- }else if(me.window.isHidden()){
|
|
|
- me.window.show();
|
|
|
- }
|
|
|
+ }
|
|
|
+ }, {
|
|
|
+ text: '取消',
|
|
|
+ handler: function(b) {
|
|
|
+ b.ownerCt.ownerCt.close();
|
|
|
+ }
|
|
|
+ }]
|
|
|
+ });
|
|
|
+ });
|
|
|
},
|
|
|
|
|
|
zebraPrint:function(caller,printer,dpi){
|
|
@@ -278,109 +288,110 @@ Ext.define('erp.view.core.button.BatchPrint',{
|
|
|
},
|
|
|
getLabelInfo:function(caller,printer,dpi){
|
|
|
var me = this;
|
|
|
- if(!me.window1){
|
|
|
- Ext.Ajax.request({
|
|
|
- url : basePath + 'vendbarcode/label/getLabelInfo.action',
|
|
|
- async: false,
|
|
|
- params: {
|
|
|
- formCaller:caller
|
|
|
- },
|
|
|
- method : 'post',
|
|
|
- callback : function(opt, s, res){
|
|
|
- var r = new Ext.decode(res.responseText);
|
|
|
- if(r.exceptionInfo){
|
|
|
- showError(r.exceptionInfo);return;
|
|
|
- } else if(r.success){
|
|
|
- if(r.count == 0){ //r.filemodel r.label
|
|
|
- showError("未配置标签模板");return;
|
|
|
- }else if(r.count == 1){
|
|
|
- me.fastPrintOrder(caller,printer,dpi,r.label[0].FM_ID);
|
|
|
- }else if(r.count >1){
|
|
|
- me.window1 = Ext.create('Ext.window.Window', {
|
|
|
- autoShow: true,
|
|
|
- title: '选择打印标签模板',
|
|
|
- width: 400,
|
|
|
- height: 180,
|
|
|
- layout: 'anchor',
|
|
|
- id :'labels-win',
|
|
|
- closeAction:'hide',
|
|
|
- autoscroll:true,
|
|
|
- items: [{
|
|
|
- anchor:'100% 100%',
|
|
|
- xtype:'form',
|
|
|
- buttonAlign : 'center',
|
|
|
- items:[{
|
|
|
- xtype: 'combo',
|
|
|
- id: 'labels',
|
|
|
- fieldLabel: '标签列表',
|
|
|
- editable:false,
|
|
|
- queryMode: 'local',
|
|
|
- store: Ext.create('Ext.data.Store', {
|
|
|
- autoLoad: true,
|
|
|
- fields: ['fm_name','fm_id'],
|
|
|
- proxy: {
|
|
|
- type: 'ajax',
|
|
|
- async : false,
|
|
|
- url : basePath + 'vendbarcode/label/getLabelInf.action',
|
|
|
- extraParams:{caller:caller},
|
|
|
- reader: {
|
|
|
- type: 'json',
|
|
|
- root: 'datas'
|
|
|
- },
|
|
|
- headers: {
|
|
|
- 'Content-Type': 'application/json;charset=utf-8'
|
|
|
- }
|
|
|
- },
|
|
|
- listeners:{
|
|
|
- load : function (store){
|
|
|
- var myCookieVal = Ext.util.Cookies.get('beforeFmid');
|
|
|
- var bo = false;
|
|
|
- Ext.each(store.data.items, function(item, index){
|
|
|
- if(item.data.fm_id == myCookieVal){
|
|
|
- bo = true;
|
|
|
- }
|
|
|
- });
|
|
|
- if(myCookieVal == null || myCookieVal =='' || !bo){
|
|
|
- Ext.getCmp('labels').select(store.getAt(0));
|
|
|
- }else{
|
|
|
- Ext.getCmp('labels').select(myCookieVal);
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }),
|
|
|
- displayField: 'fm_name',
|
|
|
- valueField: 'fm_id',
|
|
|
- width:361,
|
|
|
- triggerAction : 'all',
|
|
|
- selectOnFocus:true,
|
|
|
- allowBlank:false,
|
|
|
- style:'margin-left:15px;margin-top:15px;',
|
|
|
- }]
|
|
|
- }],
|
|
|
- buttonAlign: 'center',
|
|
|
- buttons: [{
|
|
|
- text: '确定',
|
|
|
- handler: function(b) {
|
|
|
- Ext.util.Cookies.set('beforeFmid',Ext.getCmp('labels').value);
|
|
|
- if(r.filemodel == null || r.filemodel == ''){
|
|
|
- showError('未找到对应附件');return;
|
|
|
- }
|
|
|
- me.fastPrintOrder(caller,printer,dpi,Ext.getCmp('labels').value);
|
|
|
- b.ownerCt.ownerCt.close();
|
|
|
- }
|
|
|
- }, {
|
|
|
- text: '取消',
|
|
|
- handler: function(b) {
|
|
|
- b.ownerCt.ownerCt.close();
|
|
|
- }
|
|
|
- }]
|
|
|
- });
|
|
|
- }
|
|
|
- }
|
|
|
- }});
|
|
|
-
|
|
|
- }else if(me.window1.isHidden()){
|
|
|
- me.window1.show();
|
|
|
- }
|
|
|
+ var win = Ext.getCmp('labels-win-bp');
|
|
|
+ if(win) {
|
|
|
+ win.destroy();
|
|
|
+ }
|
|
|
+ Ext.Ajax.request({
|
|
|
+ url : basePath + 'vendbarcode/label/getLabelInfo.action',
|
|
|
+ async: false,
|
|
|
+ params: {
|
|
|
+ formCaller:caller
|
|
|
+ },
|
|
|
+ method : 'post',
|
|
|
+ callback : function(opt, s, res){
|
|
|
+ var r = new Ext.decode(res.responseText);
|
|
|
+ if(r.exceptionInfo){
|
|
|
+ showError(r.exceptionInfo);return;
|
|
|
+ } else if(r.success){
|
|
|
+ if(r.count == 0){ //r.filemodel r.label
|
|
|
+ showError("未配置标签模板");return;
|
|
|
+ }else if(r.count == 1){
|
|
|
+ me.fastPrintOrder(caller,printer,dpi,r.label[0].FM_ID);
|
|
|
+ }else if(r.count >1){
|
|
|
+ me.window1 = Ext.create('Ext.window.Window', {
|
|
|
+ autoShow: true,
|
|
|
+ title: '选择打印标签模板',
|
|
|
+ width: 400,
|
|
|
+ height: 180,
|
|
|
+ layout: 'anchor',
|
|
|
+ id :'labels-win-bp',
|
|
|
+ modal:true,
|
|
|
+ closable: false,
|
|
|
+ closeAction:'destroy',
|
|
|
+ autoscroll:true,
|
|
|
+ items: [{
|
|
|
+ anchor:'100% 100%',
|
|
|
+ xtype:'form',
|
|
|
+ buttonAlign : 'center',
|
|
|
+ items:[{
|
|
|
+ xtype: 'combo',
|
|
|
+ id: 'labels-bp',
|
|
|
+ fieldLabel: '标签列表',
|
|
|
+ editable:false,
|
|
|
+ queryMode: 'local',
|
|
|
+ store: Ext.create('Ext.data.Store', {
|
|
|
+ autoLoad: true,
|
|
|
+ fields: ['fm_name','fm_id'],
|
|
|
+ proxy: {
|
|
|
+ type: 'ajax',
|
|
|
+ async : false,
|
|
|
+ url : basePath + 'vendbarcode/label/getLabelInf.action',
|
|
|
+ extraParams:{caller:caller},
|
|
|
+ reader: {
|
|
|
+ type: 'json',
|
|
|
+ root: 'datas'
|
|
|
+ },
|
|
|
+ headers: {
|
|
|
+ 'Content-Type': 'application/json;charset=utf-8'
|
|
|
+ }
|
|
|
+ },
|
|
|
+ listeners:{
|
|
|
+ load : function (store){
|
|
|
+ var myCookieVal = Ext.util.Cookies.get('beforeFmid');
|
|
|
+ var bo = false;
|
|
|
+ Ext.each(store.data.items, function(item, index){
|
|
|
+ if(item.data.fm_id == myCookieVal){
|
|
|
+ bo = true;
|
|
|
+ }
|
|
|
+ });
|
|
|
+ if(myCookieVal == null || myCookieVal =='' || !bo){
|
|
|
+ Ext.getCmp('labels-bp').select(store.getAt(0));
|
|
|
+ }else{
|
|
|
+ Ext.getCmp('labels-bp').select(myCookieVal);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }),
|
|
|
+ displayField: 'fm_name',
|
|
|
+ valueField: 'fm_id',
|
|
|
+ width:361,
|
|
|
+ triggerAction : 'all',
|
|
|
+ selectOnFocus:true,
|
|
|
+ allowBlank:false,
|
|
|
+ style:'margin-left:15px;margin-top:15px;',
|
|
|
+ }]
|
|
|
+ }],
|
|
|
+ buttonAlign: 'center',
|
|
|
+ buttons: [{
|
|
|
+ text: '确定',
|
|
|
+ handler: function(b) {
|
|
|
+ Ext.util.Cookies.set('beforeFmid',Ext.getCmp('labels-bp').value);
|
|
|
+ if(r.filemodel == null || r.filemodel == ''){
|
|
|
+ showError('未找到对应附件');return;
|
|
|
+ }
|
|
|
+ me.fastPrintOrder(caller,printer,dpi,Ext.getCmp('labels-bp').value);
|
|
|
+ b.ownerCt.ownerCt.close();
|
|
|
+ }
|
|
|
+ }, {
|
|
|
+ text: '取消',
|
|
|
+ handler: function(b) {
|
|
|
+ b.ownerCt.ownerCt.close();
|
|
|
+ }
|
|
|
+ }]
|
|
|
+ });
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }});
|
|
|
}
|
|
|
});
|