|
@@ -0,0 +1,549 @@
|
|
|
|
+Ext.QuickTips.init();
|
|
|
|
+Ext.define('erp.controller.scm.reserve.ProdCreateBarcode', {
|
|
|
|
+ extend: 'Ext.app.Controller',
|
|
|
|
+ requires: ['erp.util.FormUtil', 'erp.util.GridUtil', 'erp.util.BaseUtil'],
|
|
|
|
+ views:[
|
|
|
|
+ 'core.form.Panel','common.CommonPage','core.grid.Panel2','core.toolbar.Toolbar','core.trigger.MultiDbfindTrigger','core.trigger.HrOrgTreeDbfindTrigger',
|
|
|
|
+ 'core.button.Close','core.trigger.DbfindTrigger','core.grid.YnColumn','core.button.GenerateBarcode'
|
|
|
|
+ ],
|
|
|
|
+ init:function(){
|
|
|
|
+ var me = this;
|
|
|
|
+ me.FormUtil = Ext.create('erp.util.FormUtil');
|
|
|
|
+ me.GridUtil = Ext.create('erp.util.GridUtil');
|
|
|
|
+ me.BaseUtil = Ext.create('erp.util.BaseUtil');
|
|
|
|
+ this.control({
|
|
|
|
+ '#barCode': {
|
|
|
|
+ specialkey: function(f, e){//按ENTER自动复制到下一行
|
|
|
|
+ if (e.getKey() == e.ENTER) {
|
|
|
|
+ if(f.value != null && f.value != ''){
|
|
|
|
+ me.getBarInfo();
|
|
|
|
+ Ext.getCmp('pr_partNumber').focus(false, 100);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ 'erpProdCreateBarcode': {
|
|
|
|
+ },
|
|
|
|
+ 'erpGenerateBarcodeButton': {
|
|
|
|
+ click: function(btn){
|
|
|
|
+ var pr_code = Ext.getCmp('pr_code').value;
|
|
|
|
+ var number = Ext.getCmp('pr_partNumber').value;
|
|
|
|
+ var zxbzNumber = Ext.getCmp('pr_zxbzNumber').value;
|
|
|
|
+ if(pr_code == null || pr_code ==''){
|
|
|
|
+ Ext.Msg.alert('温馨提示',
|
|
|
|
+ '请先选择物料编号');
|
|
|
|
+ return;
|
|
|
|
+ }else if(number == null || number ==''){
|
|
|
|
+ Ext.Msg.alert('温馨提示',
|
|
|
|
+ '请输入数量');
|
|
|
|
+ return;
|
|
|
|
+ }else if(zxbzNumber == null || zxbzNumber ==''){
|
|
|
|
+ Ext.Msg.alert('温馨提示',
|
|
|
|
+ '请输入最小包装数量');
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
|
|
+ var re=/^\d+(,\d+)*$/;
|
|
|
|
+ var sum=0;
|
|
|
|
+ number=number.replace(/,/ig,',');
|
|
|
|
+ if(re.test(number)){
|
|
|
|
+ var str = new Array();
|
|
|
|
+ str = number.split( "," );
|
|
|
|
+ for (var i = 0; i < str.length; i++ )
|
|
|
|
+ {
|
|
|
|
+ if(str[i] <= 0){
|
|
|
|
+ Ext.Msg.alert('温馨提示',
|
|
|
|
+ '数量必须大于0');
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
|
|
+ sum+=parseFloat(str[i]);
|
|
|
|
+ }}else{
|
|
|
|
+ showError("请输入正确的数量,例如20");
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
|
|
+ if(!re.test(zxbzNumber)){
|
|
|
|
+ showError("请输入正确的数量,例如20");
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
|
|
+ if(zxbzNumber<0){
|
|
|
|
+ Ext.Msg.alert('温馨提示',
|
|
|
|
+ '最小包装数量必须大于0');
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
|
|
+ if (sum <= 0) {
|
|
|
|
+ Ext.Msg.alert('温馨提示',
|
|
|
|
+ '数量必须大于0');
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
|
|
+ if(pr_code && number){
|
|
|
|
+ Ext.getCmp("pr_partNumber").setValue('');
|
|
|
|
+ var batchcode = Ext.getCmp('batchCode').value;
|
|
|
|
+ if(batchcode != null && batchcode != ''){
|
|
|
|
+ me.batchGenerateBarcode(pr_code,number,batchcode,zxbzNumber);
|
|
|
|
+ }else{
|
|
|
|
+ me.batchGenerateBarcode(pr_code,number,'',zxbzNumber);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ 'erpCloseButton': {
|
|
|
|
+ click: function(btn){
|
|
|
|
+ me.FormUtil.beforeClose(me);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+ },
|
|
|
|
+ onGridItemClick: function(selModel, record){//grid行选择
|
|
|
|
+ this.GridUtil.onGridItemClick(selModel, record);
|
|
|
|
+ },
|
|
|
|
+ getForm: function(btn){
|
|
|
|
+ return btn.ownerCt.ownerCt;
|
|
|
|
+ },
|
|
|
|
+ resize: function(form, grid){
|
|
|
|
+ if(!this.resized && form && grid && form.items.items.length > 0){
|
|
|
|
+ var height = window.innerHeight,
|
|
|
|
+ fh = form.getEl().down('.x-panel-body>.x-column-inner').getHeight();
|
|
|
|
+ if(Ext.isIE){
|
|
|
|
+ height = screen.height*0.75;
|
|
|
|
+ }
|
|
|
|
+ form.setHeight(70 + fh);
|
|
|
|
+ grid.setHeight(height - fh - 70);
|
|
|
|
+ this.resized = true;
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ setLoading : function(b) {
|
|
|
|
+ var mask = this.mask;
|
|
|
|
+ if (!mask) {
|
|
|
|
+ this.mask = mask = new Ext.LoadMask(Ext.getBody(), {
|
|
|
|
+ msg : "处理中,请稍后...",
|
|
|
|
+ msgCls : 'z-index:10000;'
|
|
|
|
+ });
|
|
|
|
+ }
|
|
|
|
+ if (b)
|
|
|
|
+ mask.show();
|
|
|
|
+ else
|
|
|
|
+ mask.hide();
|
|
|
|
+ },
|
|
|
|
+ batchGenerateBarcode: function(pr_code,number,batchcode,zxbzNumber){
|
|
|
|
+ var me=this;
|
|
|
|
+ me.setLoading(true);
|
|
|
|
+ console.log(basePath);
|
|
|
|
+ Ext.Ajax.request({
|
|
|
|
+ url : basePath +'scm/reserve/batchGenerateBarcode.action',
|
|
|
|
+ params: {
|
|
|
|
+ pr_code:pr_code,
|
|
|
|
+ number:number,
|
|
|
|
+ batchcode:batchcode,
|
|
|
|
+ zxbzNumber:zxbzNumber
|
|
|
|
+ },
|
|
|
|
+ method : 'post',
|
|
|
|
+ callback : function(options,success,response){
|
|
|
|
+ me.setLoading(false);
|
|
|
|
+ var res = new Ext.decode(response.responseText);
|
|
|
|
+ if(res.success){
|
|
|
|
+ var data = res.data;
|
|
|
|
+ Ext.MessageBox.alert('提示', '条码生成成功!',function(){
|
|
|
|
+ var win = new Ext.window.Window({
|
|
|
|
+ id: 'winBar',
|
|
|
|
+ height: '75%',
|
|
|
|
+ width: '75%',
|
|
|
|
+ maximizable: false,
|
|
|
|
+ title:'<span>条码打印</span>',
|
|
|
|
+ buttonAlign: 'center',
|
|
|
|
+ layout: 'column',
|
|
|
|
+ bodyStyle:"background-color:#F5F5F5;",
|
|
|
|
+ items: [{
|
|
|
|
+ xtype: 'gridpanel',
|
|
|
|
+ id: 'grid',
|
|
|
|
+ anchor : '100% 70%',
|
|
|
|
+ columnWidth:1,
|
|
|
|
+ multiSelect: true,
|
|
|
|
+ multiselected: [],
|
|
|
|
+ forceFit : true,
|
|
|
|
+ checkOnly:true,
|
|
|
|
+ columns: [
|
|
|
|
+ {
|
|
|
|
+ style :"text-align:center",
|
|
|
|
+ text: 'ID',
|
|
|
|
+ width: 0,
|
|
|
|
+ hidden : true,
|
|
|
|
+ dataIndex: 'bar_id',
|
|
|
|
+ ignore: true,
|
|
|
|
+ },{
|
|
|
|
+ style :"text-align:center",
|
|
|
|
+ text: '条码',
|
|
|
|
+ flex : 7,
|
|
|
|
+ dataIndex: 'bar_code',
|
|
|
|
+ logic:"necessaryField",
|
|
|
|
+ editor: {
|
|
|
|
+ xtype: "displayfield",
|
|
|
|
+ hideTrigger: true,
|
|
|
|
+ store: null,
|
|
|
|
+ queryMode: "local"
|
|
|
|
+ }
|
|
|
|
+ },{
|
|
|
|
+ style :"text-align:center",
|
|
|
|
+ text: '数量',
|
|
|
|
+ logic:"necessaryField",
|
|
|
|
+ flex : 3,
|
|
|
|
+ dataIndex: 'bar_remain',
|
|
|
|
+ editor: {
|
|
|
|
+ xtype: "displayfield",
|
|
|
|
+ hideTrigger: true,
|
|
|
|
+ store: null,
|
|
|
|
+ queryMode: "local"
|
|
|
|
+ },
|
|
|
|
+ xtype: 'numbercolumn',
|
|
|
|
+ align: "left",
|
|
|
|
+ format: ""
|
|
|
|
+ }],
|
|
|
|
+ GridUtil: Ext.create('erp.util.GridUtil'),
|
|
|
|
+ listeners:{
|
|
|
|
+ beforeedit:function(editor, e, eOpts){
|
|
|
|
+ return false;//不可编辑
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ selType:'checkboxmodel',
|
|
|
|
+ dbfinds: [],
|
|
|
|
+ columnLines: true,
|
|
|
|
+ plugins: [Ext.create('Ext.grid.plugin.CellEditing', {
|
|
|
|
+ clicksToEdit: 10
|
|
|
|
+ }),
|
|
|
|
+ Ext.create('erp.view.core.plugin.CopyPasteMenu')],
|
|
|
|
+ store: new Ext.data.Store({
|
|
|
|
+ fields: ['bar_id', 'bar_code', 'bar_remain'],
|
|
|
|
+ data: []
|
|
|
|
+ }),
|
|
|
|
+ onGridItemClick: function(selModel, record){// grid行选择
|
|
|
|
+ this.GridUtil.onGridItemClick(selModel, record);
|
|
|
|
+ },
|
|
|
|
+ }],
|
|
|
|
+ buttons : [{
|
|
|
|
+ text : '打印条码',
|
|
|
|
+ id : 'printNew',
|
|
|
|
+ iconCls: 'x-button-icon-print',
|
|
|
|
+ disabled : true,
|
|
|
|
+ handler : function(btn) {
|
|
|
|
+ var me = this;
|
|
|
|
+ caller = 'Barcode!BaPrint';
|
|
|
|
+ me.idS = '';
|
|
|
|
+ var lps_Barcaller = 'Barcode!Print';
|
|
|
|
+ var bool = false;
|
|
|
|
+ var grid = Ext.getCmp('grid');
|
|
|
|
+ var items = grid.selModel.getSelection();
|
|
|
|
+ var idArray = [];
|
|
|
|
+ Ext.each(items, function(item, index){
|
|
|
|
+ if(this.data['bar_id'] != null && this.data['bar_id'] != ''
|
|
|
|
+ && this.data['bar_id'] != '0' && this.data['bar_id'] != 0){
|
|
|
|
+ bool = true;
|
|
|
|
+ idArray.push(this.data['bar_id']);
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+ if(bool){
|
|
|
|
+ var idS = idArray.toString();
|
|
|
|
+ //me.print(idS,lps_Barcaller);
|
|
|
|
+ me.idS = idS;
|
|
|
|
+ me.zplPrint(lps_Barcaller);
|
|
|
|
+ }else{
|
|
|
|
+ showError("没有需要打印的行");
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ zplPrint:function(caller){//zpl打印语句
|
|
|
|
+ // 获取选择打印文件,用户选择分辨率,和打印机
|
|
|
|
+ var me = this;
|
|
|
|
+ if(!me.window){
|
|
|
|
+ setup_web_print(function(printers,selected_printer){
|
|
|
|
+ me.window = Ext.create('Ext.window.Window', {
|
|
|
|
+ autoShow: true,
|
|
|
|
+ title: '选择打印模板',
|
|
|
|
+ width: 400,
|
|
|
|
+ height: 300,
|
|
|
|
+ layout: 'anchor',
|
|
|
|
+ id :'template-win4',
|
|
|
|
+ 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:361,
|
|
|
|
+ allowBlank:false,
|
|
|
|
+ selectOnFocus:true//用户不能自己输入,只能选择列表中有的记录
|
|
|
|
+ }]
|
|
|
|
+ }],
|
|
|
|
+ buttonAlign: 'center',
|
|
|
|
+ buttons: [{
|
|
|
|
+ text: '确定',
|
|
|
|
+ handler: function(b) {
|
|
|
|
+ var printers = Ext.getCmp('printers');
|
|
|
|
+ var dpi = Ext.getCmp('dpi');
|
|
|
|
+ if(printers && printers.value!= null){
|
|
|
|
+ me.zebraPrint(caller,printers.value,dpi.value);
|
|
|
|
+ b.ownerCt.ownerCt.close();
|
|
|
|
+ }else{
|
|
|
|
+ alert("请选择打印机 ");
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }, {
|
|
|
|
+ text: '取消',
|
|
|
|
+ handler: function(b) {
|
|
|
|
+ b.ownerCt.ownerCt.close();
|
|
|
|
+ }
|
|
|
|
+ }]
|
|
|
|
+ });
|
|
|
|
+ });
|
|
|
|
+ }else if(me.window.isHidden()){
|
|
|
|
+ me.window.show();
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ zebraPrint:function(caller,printer,dpi){
|
|
|
|
+ var me = this;
|
|
|
|
+ var params = new Object();
|
|
|
|
+ params['condition'] = 'bar_id in ('+me.idS +")";
|
|
|
|
+ sendData(caller,printer,dpi,params);
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ text : '取消',
|
|
|
|
+ id : 'cancle',
|
|
|
|
+ handler : function(btn) {
|
|
|
|
+ var win = btn.ownerCt.ownerCt;
|
|
|
|
+ win.close();
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ ],
|
|
|
|
+ });
|
|
|
|
+ win.show();
|
|
|
|
+ var ids = new Array();
|
|
|
|
+ for(var i= 0;i<data.length;i++){
|
|
|
|
+ ids.push(data[i].BAR_ID);
|
|
|
|
+ }
|
|
|
|
+ me.loadData(ids);
|
|
|
|
+ Ext.getCmp('printNew').enable();
|
|
|
|
+
|
|
|
|
+ var lps_Barcaller = 'Barcode!Print';
|
|
|
|
+ var grid = Ext.getCmp("grid");
|
|
|
|
+ var items = grid.store.data.items;
|
|
|
|
+ var idArray = [];
|
|
|
|
+ Ext.each(items, function(item, index){
|
|
|
|
+ var id=item.data['bar_id'];
|
|
|
|
+ if(id != null && id != ''&& id != '0' && id != 0){
|
|
|
|
+ idArray.push(id);
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ var idS = idArray.toString();
|
|
|
|
+ //me.print(idS,lps_Barcaller);
|
|
|
|
+ me.idS = idS;
|
|
|
|
+ Ext.MessageBox.confirm('提示', '是否自动打印?',function(btn){
|
|
|
|
+ if(btn=='yes'){
|
|
|
|
+ me.zplPrint(lps_Barcaller);
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+ });
|
|
|
|
+ }else if(res.exceptionInfo){
|
|
|
|
+ showError(res.exceptionInfo);
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+ },
|
|
|
|
+ getBarInfo: function(){
|
|
|
|
+ var bar = Ext.getCmp('barCode');
|
|
|
|
+ if(bar && bar.value != null && bar.value != ''){
|
|
|
|
+ var me=this;
|
|
|
|
+ me.setLoading(true);
|
|
|
|
+ Ext.Ajax.request({
|
|
|
|
+ url : basePath +'scm/reserve/getBarInfo.action',
|
|
|
|
+ params: {
|
|
|
|
+ bar_code:bar.value,
|
|
|
|
+ },
|
|
|
|
+ method : 'post',
|
|
|
|
+ callback : function(options,success,response){
|
|
|
|
+ me.setLoading(false);
|
|
|
|
+ var res = new Ext.decode(response.responseText);
|
|
|
|
+ if(res.success){
|
|
|
|
+ var data = res.data;
|
|
|
|
+ var prod = data['prodcode'];
|
|
|
|
+ var batch = data['batchcode'];
|
|
|
|
+ var remain = data['remain'];
|
|
|
|
+ var errMsg = data['errmsg'];
|
|
|
|
+ Ext.getCmp("pr_code").setValue(prod);
|
|
|
|
+ Ext.getCmp("batchCode").setValue(batch);
|
|
|
|
+ Ext.getCmp("pr_partNumber").setValue(remain);
|
|
|
|
+ Ext.getCmp("errMsg").setValue(errMsg);
|
|
|
|
+ Ext.getCmp('errMsg').setFieldStyle('color:#FF0000;');
|
|
|
|
+ if(errMsg == null || errMsg ==''){
|
|
|
|
+ Ext.getCmp("errMsg").setValue('条码: '+Ext.getCmp('barCode').value+' 采集成功!');
|
|
|
|
+ Ext.getCmp('errMsg').setFieldStyle('color:#22C32E;');
|
|
|
|
+ }
|
|
|
|
+ }else if(res.exceptionInfo){
|
|
|
|
+ showError(res.exceptionInfo);
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+ }
|
|
|
|
+ } ,
|
|
|
|
+ loadData: function(value) {
|
|
|
|
+ var me = this;
|
|
|
|
+ me.getFieldsValues("barcode",
|
|
|
|
+ 'bar_id, bar_code, bar_remain', "bar_id in (" +value+") order by bar_id desc", [], function(data){
|
|
|
|
+ var datas = Ext.JSON.decode(data), _datas = [];
|
|
|
|
+ var grid = Ext.getCmp('grid');
|
|
|
|
+ if(datas.length > 0) {
|
|
|
|
+ var keys = Ext.Object.getKeys(datas[0]);
|
|
|
|
+ Ext.Array.each(datas, function(d){
|
|
|
|
+ var obj = {};
|
|
|
|
+ Ext.Array.each(keys, function(key){
|
|
|
|
+ obj[key.toLowerCase()] = d[key];
|
|
|
|
+ });
|
|
|
|
+ _datas.push(obj);
|
|
|
|
+ });
|
|
|
|
+ }
|
|
|
|
+ store = grid.getStore();
|
|
|
|
+ _datas.length > 0 && grid.store.loadData(_datas);
|
|
|
|
+ grid.store.each(function(){
|
|
|
|
+ this.dirty = true;
|
|
|
|
+ });
|
|
|
|
+ });
|
|
|
|
+ },
|
|
|
|
+ getFieldsValues: function(caller, fields, condition, data, fn){
|
|
|
|
+ Ext.Ajax.request({
|
|
|
|
+ url : basePath + 'common/getFieldsDatas.action',
|
|
|
|
+ async: false,
|
|
|
|
+ params: {
|
|
|
|
+ caller: caller,
|
|
|
|
+ fields: fields,
|
|
|
|
+ condition: condition
|
|
|
|
+ },
|
|
|
|
+ method : 'post',
|
|
|
|
+ callback : function(options,success,response){
|
|
|
|
+ var localJson = new Ext.decode(response.responseText);
|
|
|
|
+ if(localJson.exceptionInfo){
|
|
|
|
+ showError(localJson.exceptionInfo);return;
|
|
|
|
+ }
|
|
|
|
+ if(localJson.success){
|
|
|
|
+ data = localJson.data;
|
|
|
|
+ fn && fn.call(null, localJson.data);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+ },
|
|
|
|
+ zplPrint:function(caller){//zpl打印语句
|
|
|
|
+ // 获取选择打印文件,用户选择分辨率,和打印机
|
|
|
|
+ var me = this;
|
|
|
|
+ if(!me.window){
|
|
|
|
+ setup_web_print(function(printers,selected_printer){
|
|
|
|
+ me.window = Ext.create('Ext.window.Window', {
|
|
|
|
+ autoShow: true,
|
|
|
|
+ title: '选择打印模板',
|
|
|
|
+ width: 400,
|
|
|
|
+ height: 300,
|
|
|
|
+ layout: 'anchor',
|
|
|
|
+ id :'template-win5',
|
|
|
|
+ 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:361,
|
|
|
|
+ allowBlank:false,
|
|
|
|
+ selectOnFocus:true//用户不能自己输入,只能选择列表中有的记录
|
|
|
|
+ }]
|
|
|
|
+ }],
|
|
|
|
+ buttonAlign: 'center',
|
|
|
|
+ buttons: [{
|
|
|
|
+ text: '确定',
|
|
|
|
+ handler: function(b) {
|
|
|
|
+ var printers = Ext.getCmp('printers');
|
|
|
|
+ var dpi = Ext.getCmp('dpi');
|
|
|
|
+ if(printers && printers.value!= null){
|
|
|
|
+ me.zebraPrint(caller,printers.value,dpi.value);
|
|
|
|
+ b.ownerCt.ownerCt.close();
|
|
|
|
+ }else{
|
|
|
|
+ alert("请选择打印机 ");
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }, {
|
|
|
|
+ text: '取消',
|
|
|
|
+ handler: function(b) {
|
|
|
|
+ b.ownerCt.ownerCt.close();
|
|
|
|
+ }
|
|
|
|
+ }]
|
|
|
|
+ });
|
|
|
|
+ });
|
|
|
|
+ }else if(me.window.isHidden()){
|
|
|
|
+ me.window.show();
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ zebraPrint:function(caller,printer,dpi){
|
|
|
|
+ var me = this;
|
|
|
|
+ var params = new Object();
|
|
|
|
+ params['condition'] = 'bar_id in ('+me.idS +")";
|
|
|
|
+ sendData(caller,printer,dpi,params);
|
|
|
|
+ }
|
|
|
|
+});
|