|
|
|
|
|
|
|
|
|
Ext.namespace('Shipping');
|
|
|
|
|
Shipping.MsOpSeaeCancelIndex = function (config) {
|
|
|
|
|
Ext.applyIf(this, config);
|
|
|
|
|
this.initUIComponents();
|
|
|
|
|
window.Shipping.MsOpSeaeCancelIndex.superclass.constructor.call(this);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
Ext.extend(Shipping.MsOpSeaeCancelIndex, Ext.Panel, {
|
|
|
|
|
PageSize: 100,
|
|
|
|
|
OprationStatus: null, //仅当弹出界面时使用
|
|
|
|
|
SelectedRecord: null,
|
|
|
|
|
isShowAdvancedQuery: 0, //是否显示高级查询面板
|
|
|
|
|
sqlcontext: '',
|
|
|
|
|
editype: '',
|
|
|
|
|
selectbsno: '',
|
|
|
|
|
sortfield: '',
|
|
|
|
|
sortdire: '',
|
|
|
|
|
selectfee: '',
|
|
|
|
|
bsno: '',
|
|
|
|
|
id: "MainPanel",
|
|
|
|
|
结费类型: '',
|
|
|
|
|
欠费超期: '',
|
|
|
|
|
累计欠费: '',
|
|
|
|
|
信用额度: '',
|
|
|
|
|
IS欠费超期: 'no',
|
|
|
|
|
|
|
|
|
|
initUIComponents: function () {
|
|
|
|
|
this.formname = "formMsOpSeaeCancelIndex"; //页面名称
|
|
|
|
|
this.PluginCover = new Shipping.OpSeaCover({ region: "center" }, 1);
|
|
|
|
|
this.bsno = '111';
|
|
|
|
|
this.BLMUSTBEQR = 0;
|
|
|
|
|
|
|
|
|
|
//#region 定义数据集
|
|
|
|
|
|
|
|
|
|
this.storePLList = Ext.create('Ext.data.Store', {
|
|
|
|
|
model: 'MsOpSeaeModel'
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
this.storectndisp = Ext.create('DsExt.ux.RefTableStore', {
|
|
|
|
|
model: 'DsShipping.ux.CtnDispModel',
|
|
|
|
|
proxy: { url: '/CommMng/BasicDataRef/GetCtnDisp' }
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
this.storecodeservice = Ext.create('DsExt.ux.RefTableStore', {
|
|
|
|
|
model: 'MsCodeOpService',
|
|
|
|
|
proxy: { url: '/MvcShipping/MsCodeOpService/GetDataCtnList' }
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
this.storeList = Ext.create('Ext.data.Store', {
|
|
|
|
|
pageSize: this.PageSize,
|
|
|
|
|
model: 'MsOpSeaeModel',
|
|
|
|
|
remoteSort: true,
|
|
|
|
|
proxy: {
|
|
|
|
|
type: 'ajax',
|
|
|
|
|
url: '/MvcShipping/MsOpSeae/GetCancelDataList',
|
|
|
|
|
reader: {
|
|
|
|
|
id: 'BSNO',
|
|
|
|
|
root: 'data',
|
|
|
|
|
totalProperty: 'totalCount'
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
//#endregion
|
|
|
|
|
|
|
|
|
|
//#region List列表显示信息
|
|
|
|
|
// Ext.define('Ext.grid.column.Actiontextcolumn', {
|
|
|
|
|
// extend: 'Ext.grid.column.Column',
|
|
|
|
|
// alias: ['widget.actiontextcolumn'],
|
|
|
|
|
|
|
|
|
|
// defaultRenderer: function (value) {
|
|
|
|
|
// var me = this;
|
|
|
|
|
// prefix = Ext.baseCSSPrefix;
|
|
|
|
|
// scope = me.origScope || me;
|
|
|
|
|
// // if (value == "") {
|
|
|
|
|
|
|
|
|
|
// // }
|
|
|
|
|
// // else
|
|
|
|
|
// value = value + '<img role="button" src="' + (me.icon || Ext.BLANK_IMAGE_URL)
|
|
|
|
|
// + '" class="' + this.iconCls + ' x-action-col-icon"/>';
|
|
|
|
|
// // value = '<label class="x-action-col-icon">' + value + '</label><img role="button" src="' + (me.icon || Ext.BLANK_IMAGE_URL)
|
|
|
|
|
// // + '" class="' + this.iconCls + ' x-action-col-icon"/>';
|
|
|
|
|
// return value;
|
|
|
|
|
// },
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// processEvent: function (type, view, cell, recordIndex, cellIndex, e, record, row) {
|
|
|
|
|
// var me = this;
|
|
|
|
|
// if (type == 'click') {
|
|
|
|
|
// me.handler.call(me.scope || me.origScope || me, view, recordIndex, cellIndex, e, record, row);
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
// });
|
|
|
|
|
|
|
|
|
|
_this = this;
|
|
|
|
|
this.Pagenum = Ext.create('Ext.form.field.Number', {
|
|
|
|
|
name: 'bottles',
|
|
|
|
|
fieldLabel: Zi.LAN.bottles, //'每页记录数',
|
|
|
|
|
labelAlign: 'right',
|
|
|
|
|
value: this.PageSize,
|
|
|
|
|
maxValue: 100000,
|
|
|
|
|
width: 180,
|
|
|
|
|
minValue: 0,
|
|
|
|
|
listeners: {
|
|
|
|
|
specialkey: function (field, e) {
|
|
|
|
|
if (e.getKey() == e.ENTER) {
|
|
|
|
|
_this.onRefreshClick();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
Ext.grid.RowNumberer = Ext.extend(Ext.grid.RowNumberer, {
|
|
|
|
|
width: 40
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
this.initgirdcolums = [{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: '',
|
|
|
|
|
header: '',
|
|
|
|
|
width: 0
|
|
|
|
|
}, {
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'BSNO',
|
|
|
|
|
header: Zi.LAN.BSNO2, //'业务编号',
|
|
|
|
|
width: 0
|
|
|
|
|
}, {
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'CUSTNO',
|
|
|
|
|
header: Zi.LAN.CUSTNO, //'委托编号',
|
|
|
|
|
width: 120,
|
|
|
|
|
filter: true
|
|
|
|
|
}, {
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'ORDERNO',
|
|
|
|
|
header: Zi.LAN.ORDERNO, //'订舱编号',
|
|
|
|
|
width: 120,
|
|
|
|
|
filter: true
|
|
|
|
|
}, {
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'ORDERTYPE',
|
|
|
|
|
header: Zi.LAN.ORDERTYPE, //'订舱方式',
|
|
|
|
|
width: 120,
|
|
|
|
|
filter: {
|
|
|
|
|
type: 'list',
|
|
|
|
|
options: ['操作录入', '销售订舱']
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'BSSTATUSREF',
|
|
|
|
|
header: Zi.LAN.BSSTATUSREF, //'业务锁定',
|
|
|
|
|
align: 'center',
|
|
|
|
|
width: 60,
|
|
|
|
|
renderer: function (value, cellmeta) {
|
|
|
|
|
if (value == '锁定') {
|
|
|
|
|
return "<img src='../../../../TruckMng/Content/Images/Lock.png' />";
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
filter: {
|
|
|
|
|
type: 'list',
|
|
|
|
|
options: ['锁定', '未锁定']
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'FEESTATUSREF',
|
|
|
|
|
header: Zi.LAN.FEESTATUSREF, //'费用锁定',
|
|
|
|
|
align: 'center',
|
|
|
|
|
width: 60,
|
|
|
|
|
renderer: function (value, cellmeta) {
|
|
|
|
|
if (value == '锁定') {
|
|
|
|
|
return "<img src='../../../../TruckMng/Content/Images/Lock.png' />";
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
filter: {
|
|
|
|
|
type: 'list',
|
|
|
|
|
options: ['锁定', '未锁定']
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'DRFEESTATUS',
|
|
|
|
|
header: Zi.LAN.DRFEESTATUS, //'应收费用',
|
|
|
|
|
align: 'center',
|
|
|
|
|
width: 60,
|
|
|
|
|
renderer: function (value, meta) {
|
|
|
|
|
|
|
|
|
|
if (value == '审核通过') {
|
|
|
|
|
meta.tdCls = 'feestatus_pass';
|
|
|
|
|
} else if (value == '录入状态') {
|
|
|
|
|
|
|
|
|
|
} else if (value == '提交审核') {
|
|
|
|
|
meta.tdCls = 'feestatus_refer';
|
|
|
|
|
} else if (value == '部分结算') {
|
|
|
|
|
meta.tdCls = 'feestatus_refer';
|
|
|
|
|
} else if (value == '结算完毕') {
|
|
|
|
|
meta.tdCls = 'feestatus_settle';
|
|
|
|
|
} else if (value == '未录入') {
|
|
|
|
|
} else if (value == '部分结算') {
|
|
|
|
|
meta.tdCls = 'feestatus_settle';
|
|
|
|
|
} else if (value == '部分审核') {
|
|
|
|
|
meta.tdCls = 'feestatus_pass';
|
|
|
|
|
} else if (value == '部分提交') {
|
|
|
|
|
meta.tdCls = 'feestatus_refer';
|
|
|
|
|
}
|
|
|
|
|
return value;
|
|
|
|
|
},
|
|
|
|
|
filter: {
|
|
|
|
|
type: 'list',
|
|
|
|
|
options: ['录入状态', '提交审核', '部分结算',
|
|
|
|
|
'未录入', '部分审核', '部分提交', '审核通过']
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'CRFEESTATUS',
|
|
|
|
|
header: Zi.LAN.CRFEESTATUS, //'应付费用',
|
|
|
|
|
align: 'center',
|
|
|
|
|
width: 60,
|
|
|
|
|
renderer: function (value, meta) {
|
|
|
|
|
|
|
|
|
|
if (value == '审核通过') {
|
|
|
|
|
meta.tdCls = 'feestatus_pass';
|
|
|
|
|
} else if (value == '录入状态') {
|
|
|
|
|
|
|
|
|
|
} else if (value == '提交审核') {
|
|
|
|
|
meta.tdCls = 'feestatus_refer';
|
|
|
|
|
} else if (value == '部分结算') {
|
|
|
|
|
meta.tdCls = 'feestatus_refer';
|
|
|
|
|
} else if (value == '结算完毕') {
|
|
|
|
|
meta.tdCls = 'feestatus_settle';
|
|
|
|
|
} else if (value == '未录入') {
|
|
|
|
|
} else if (value == '部分结算') {
|
|
|
|
|
meta.tdCls = 'feestatus_settle';
|
|
|
|
|
} else if (value == '部分审核') {
|
|
|
|
|
meta.tdCls = 'feestatus_pass';
|
|
|
|
|
} else if (value == '部分提交') {
|
|
|
|
|
meta.tdCls = 'feestatus_refer';
|
|
|
|
|
}
|
|
|
|
|
return value;
|
|
|
|
|
},
|
|
|
|
|
filter: {
|
|
|
|
|
type: 'list',
|
|
|
|
|
options: ['录入状态', '提交审核', '部分结算',
|
|
|
|
|
'未录入', '部分审核', '部分提交', '审核通过']
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'DRINVSTATUS',
|
|
|
|
|
header: Zi.LAN.DRINVSTATUS, //'应收开票',
|
|
|
|
|
align: 'center',
|
|
|
|
|
width: 60,
|
|
|
|
|
renderer: function (value, meta) {
|
|
|
|
|
|
|
|
|
|
if (value == '已开票') {
|
|
|
|
|
meta.tdCls = 'feestatus_pass';
|
|
|
|
|
} else if (value == '部分开票') {
|
|
|
|
|
meta.tdCls = 'feestatus_refer';
|
|
|
|
|
}
|
|
|
|
|
return value;
|
|
|
|
|
},
|
|
|
|
|
filter: {
|
|
|
|
|
type: 'list',
|
|
|
|
|
options: ['已开票', '部分开票', '未开票']
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
,
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'OPSTATUS',
|
|
|
|
|
header: Zi.LAN.OPSTATUS, //'业务状态',
|
|
|
|
|
width: 60,
|
|
|
|
|
handler: function (grid, rowIndex, colIndex) {
|
|
|
|
|
alert(rowIndex);
|
|
|
|
|
},
|
|
|
|
|
filter: true
|
|
|
|
|
}
|
|
|
|
|
// ,
|
|
|
|
|
// {
|
|
|
|
|
|
|
|
|
|
// text: Zi.LAN.MANIFESTSTATUS, //'舱单状态',
|
|
|
|
|
// align: 'center',
|
|
|
|
|
// width: 130,
|
|
|
|
|
// menuDisabled: true,
|
|
|
|
|
// sortable: false,
|
|
|
|
|
// dataIndex: 'MANIFESTSTATUS',
|
|
|
|
|
// icon: '../../../../TruckMng/Content/Images/search.png',
|
|
|
|
|
// xtype: 'actiontextcolumn',
|
|
|
|
|
// handler: function (grid, rowIndex, colIndex) {
|
|
|
|
|
// var rec = grid.getStore().getAt(rowIndex);
|
|
|
|
|
// // alert(rec.get('BSNO'));
|
|
|
|
|
// _this.onCustomStatusClick(rec);
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
,
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'BLTYPE',
|
|
|
|
|
header: Zi.LAN.BLTYPE, //'装运方式',
|
|
|
|
|
width: 60
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'ETD',
|
|
|
|
|
header: Zi.LAN.ETD2, //'开船日期',
|
|
|
|
|
width: 80,
|
|
|
|
|
filter: {
|
|
|
|
|
type: 'date',
|
|
|
|
|
dataIndex: 'ETD'
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'MBLNO',
|
|
|
|
|
header: Zi.LAN.MBLNO, //'主提单号',
|
|
|
|
|
width: 120,
|
|
|
|
|
filter: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
dataIndex: 'MBLNO'
|
|
|
|
|
},
|
|
|
|
|
renderer: function (value, meta) {
|
|
|
|
|
|
|
|
|
|
meta.tdCls = 'mblno';
|
|
|
|
|
|
|
|
|
|
return value;
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'CUSTOMERNAME',
|
|
|
|
|
header: Zi.LAN.CUSTOMERNAME, //'委托单位',
|
|
|
|
|
width: 120,
|
|
|
|
|
filter: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
dataIndex: 'CUSTOMERNAME'
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'ETA',
|
|
|
|
|
header: Zi.LAN.ETA, //'预抵日期',
|
|
|
|
|
width: 80,
|
|
|
|
|
filter: {
|
|
|
|
|
type: 'date',
|
|
|
|
|
dataIndex: 'ETD'
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'BSDATE',
|
|
|
|
|
header: Zi.LAN.BSDATE, //'修改日期',
|
|
|
|
|
width: 80
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'GOODSNAME',
|
|
|
|
|
header: Zi.LAN.GOODSNAME, //'品名',
|
|
|
|
|
width: 120
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'PKGS',
|
|
|
|
|
header: Zi.LAN.PKGS, //'件数',
|
|
|
|
|
width: 80
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'KGS',
|
|
|
|
|
header: Zi.LAN.KGS2, //'毛重',
|
|
|
|
|
width: 80
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'CBM',
|
|
|
|
|
header: Zi.LAN.CBM2, //'尺码',
|
|
|
|
|
width: 80
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'CNTRTOTAL',
|
|
|
|
|
header: Zi.LAN.CNTRTOTAL2, //'集装箱',
|
|
|
|
|
width: 80
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'HBLNO',
|
|
|
|
|
header: Zi.LAN.HBLNO, //'分提单号',
|
|
|
|
|
width: 120,
|
|
|
|
|
filter: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
dataIndex: 'HBLNO'
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'ACCDATE',
|
|
|
|
|
header: Zi.LAN.ACCDATE, //'会计期间',
|
|
|
|
|
width: 60
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'BSSOURCE',
|
|
|
|
|
header: Zi.LAN.BSSOURCE, //'业务来源',
|
|
|
|
|
width: 80,
|
|
|
|
|
filter: true
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'BSSOURCEDETAIL',
|
|
|
|
|
header: Zi.LAN.BSSOURCEDETAIL, //'来源明细',
|
|
|
|
|
width: 80,
|
|
|
|
|
filter: true
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'INPUTBY',
|
|
|
|
|
header: Zi.LAN.INPUTBY2, //'录入人',
|
|
|
|
|
width: 80
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'CREATETIME',
|
|
|
|
|
header: Zi.LAN.CREATETIME2, //'创建时间',
|
|
|
|
|
width: 120
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'OP',
|
|
|
|
|
header: Zi.LAN.OP, //'操作员',
|
|
|
|
|
width: 80,
|
|
|
|
|
filter: true
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'SALE',
|
|
|
|
|
header: Zi.LAN.SALE, //'揽货人',
|
|
|
|
|
width: 80,
|
|
|
|
|
filter: true
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'VESSEL',
|
|
|
|
|
header: Zi.LAN.VESSEL, //'船名',
|
|
|
|
|
width: 100,
|
|
|
|
|
filter: true
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'VOYNO',
|
|
|
|
|
header: Zi.LAN.VOYNO, //'航次',
|
|
|
|
|
width: 60,
|
|
|
|
|
filter: true
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'PORTLOAD',
|
|
|
|
|
header: Zi.LAN.PORTLOAD, //'装货港',
|
|
|
|
|
width: 100,
|
|
|
|
|
filter: true
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'PORTDISCHARGE',
|
|
|
|
|
header: Zi.LAN.PORTDISCHARGE, //'卸货港',
|
|
|
|
|
width: 100,
|
|
|
|
|
filter: true
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'DESTINATION',
|
|
|
|
|
header: Zi.LAN.DESTINATION, //'目的地',
|
|
|
|
|
width: 100,
|
|
|
|
|
filter: true
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'CNTR1',
|
|
|
|
|
header: Zi.LAN.CNTR1, //'箱型1',
|
|
|
|
|
width: 60
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'CNTR2',
|
|
|
|
|
header: Zi.LAN.CNTR2, //'箱型2',
|
|
|
|
|
width: 60
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'CNTR3',
|
|
|
|
|
header: Zi.LAN.CNTR3, //'箱型3',
|
|
|
|
|
width: 60
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'CNTR4',
|
|
|
|
|
header: Zi.LAN.CNTR4, //'箱型4',
|
|
|
|
|
width: 60
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'CNTR5',
|
|
|
|
|
header: Zi.LAN.CNTR5, //'箱型5',
|
|
|
|
|
width: 60
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'CNTR6',
|
|
|
|
|
header: Zi.LAN.CNTR6, //'箱型6',
|
|
|
|
|
width: 60
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'CNTR7',
|
|
|
|
|
header: Zi.LAN.CNTR7, //'箱型7',
|
|
|
|
|
width: 60
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'CNTR8',
|
|
|
|
|
header: Zi.LAN.CNTR8, //'箱型8',
|
|
|
|
|
width: 60
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'CNTR9',
|
|
|
|
|
header: Zi.LAN.CNTR9, //'箱型9',
|
|
|
|
|
width: 60
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'CNTR10',
|
|
|
|
|
header: Zi.LAN.CNTR10, //'箱型10',
|
|
|
|
|
width: 60
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'OTCNTR',
|
|
|
|
|
header: Zi.LAN.OTCNTR, //'其他箱型',
|
|
|
|
|
width: 60
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'TEU',
|
|
|
|
|
header: Zi.LAN.TEU, //'箱TEU',
|
|
|
|
|
width: 40
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'CUSTOMSER',
|
|
|
|
|
header: Zi.LAN.CUSTOMSER, //'报关行',
|
|
|
|
|
width: 80
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'KINDPKGS',
|
|
|
|
|
header: Zi.LAN.KINDPKGS, //'件数包装',
|
|
|
|
|
width: 60
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'CARRIER',
|
|
|
|
|
header: Zi.LAN.CARRIER, //'船公司',
|
|
|
|
|
width: 100
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'TRUCKER',
|
|
|
|
|
header: Zi.LAN.TRUCKER, //'承运车队',
|
|
|
|
|
width: 100
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'LANE',
|
|
|
|
|
header: Zi.LAN.LANE, //'航线',
|
|
|
|
|
width: 100
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'AGENTID',
|
|
|
|
|
header: Zi.LAN.AGENTID, //'代理',
|
|
|
|
|
width: 100
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'FORWARDER',
|
|
|
|
|
header: Zi.LAN.FORWARDER, //'订舱代理',
|
|
|
|
|
width: 100
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'PORTDISCHARGEID',
|
|
|
|
|
header: Zi.LAN.PORTDISCHARGEID, //'卸港代码',
|
|
|
|
|
width: 100
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'YARD',
|
|
|
|
|
header: Zi.LAN.YARD, //'场站',
|
|
|
|
|
width: 100
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'SERVICECONTRACTNO',
|
|
|
|
|
header: Zi.LAN.SERVICECONTRACTNO, //'服务合同号',
|
|
|
|
|
width: 100
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'CUSTSERVICE',
|
|
|
|
|
header: Zi.LAN.CUSTSERVICE, //'客服',
|
|
|
|
|
width: 100
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'FRCUSTSERVICE',
|
|
|
|
|
header: Zi.LAN.FRCUSTSERVICE, //'客服',
|
|
|
|
|
width: 100
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'DOC',
|
|
|
|
|
header: Zi.LAN.DOC, //'单证',
|
|
|
|
|
width: 100
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'VOUNO',
|
|
|
|
|
header: Zi.LAN.VOUNO, //'凭证号',
|
|
|
|
|
width: 60
|
|
|
|
|
}, {
|
|
|
|
|
sortable: true,
|
|
|
|
|
dataIndex: 'ISPRINTPR',
|
|
|
|
|
header: Zi.LAN.ISPRINTPR, //'打印核算单',
|
|
|
|
|
width: 80,
|
|
|
|
|
renderer: function (value, meta, record) {
|
|
|
|
|
if (value == '1')
|
|
|
|
|
return '√';
|
|
|
|
|
else
|
|
|
|
|
return '';
|
|
|
|
|
}
|
|
|
|
|
}, {
|
|
|
|
|
sortable: true,
|
|
|
|
|
dataIndex: 'ISFUMIGATION',
|
|
|
|
|
header: Zi.LAN.ISFUMIGATION, //'服务项目1',
|
|
|
|
|
hidden: true,
|
|
|
|
|
width: 100,
|
|
|
|
|
renderer: function (value, meta, record) {
|
|
|
|
|
if (value == true || value == '1')
|
|
|
|
|
return '√';
|
|
|
|
|
else
|
|
|
|
|
return '';
|
|
|
|
|
}
|
|
|
|
|
}, {
|
|
|
|
|
sortable: true,
|
|
|
|
|
dataIndex: 'ISSTORAGE',
|
|
|
|
|
header: Zi.LAN.ISSTORAGE, //'服务项目2',
|
|
|
|
|
hidden: true,
|
|
|
|
|
width: 100,
|
|
|
|
|
renderer: function (value, meta, record) {
|
|
|
|
|
if (value == true || value == '1')
|
|
|
|
|
return '√';
|
|
|
|
|
else
|
|
|
|
|
return '';
|
|
|
|
|
}
|
|
|
|
|
}, {
|
|
|
|
|
sortable: true,
|
|
|
|
|
dataIndex: 'ISLAND',
|
|
|
|
|
header: Zi.LAN.ISLAND, //'服务项目3',
|
|
|
|
|
hidden: true,
|
|
|
|
|
width: 100,
|
|
|
|
|
renderer: function (value, meta, record) {
|
|
|
|
|
if (value == true || value == '1')
|
|
|
|
|
return '√';
|
|
|
|
|
else
|
|
|
|
|
return '';
|
|
|
|
|
}
|
|
|
|
|
}, {
|
|
|
|
|
sortable: true,
|
|
|
|
|
dataIndex: 'ISCUSTOMS',
|
|
|
|
|
header: Zi.LAN.ISCUSTOMS, //'服务项目4',
|
|
|
|
|
hidden: true,
|
|
|
|
|
width: 100,
|
|
|
|
|
renderer: function (value, meta, record) {
|
|
|
|
|
if (value == true || value == '1')
|
|
|
|
|
return '√';
|
|
|
|
|
else
|
|
|
|
|
return '';
|
|
|
|
|
}
|
|
|
|
|
}, {
|
|
|
|
|
sortable: true,
|
|
|
|
|
dataIndex: 'ISINSPECTION',
|
|
|
|
|
header: Zi.LAN.ISINSPECTION, //'服务项目5',
|
|
|
|
|
hidden: true,
|
|
|
|
|
width: 100,
|
|
|
|
|
renderer: function (value, meta, record) {
|
|
|
|
|
if (value == true || value == '1')
|
|
|
|
|
return '√';
|
|
|
|
|
else
|
|
|
|
|
return '';
|
|
|
|
|
}
|
|
|
|
|
}, {
|
|
|
|
|
sortable: true,
|
|
|
|
|
dataIndex: 'ISBOOKING',
|
|
|
|
|
header: Zi.LAN.ISBOOKING, //'服务项目6',
|
|
|
|
|
hidden: true,
|
|
|
|
|
width: 100,
|
|
|
|
|
renderer: function (value, meta, record) {
|
|
|
|
|
if (value == true || value == '1')
|
|
|
|
|
return '√';
|
|
|
|
|
else
|
|
|
|
|
return '';
|
|
|
|
|
}
|
|
|
|
|
}, {
|
|
|
|
|
sortable: true,
|
|
|
|
|
dataIndex: 'ISAGENT',
|
|
|
|
|
header: Zi.LAN.ISAGENT, //'服务项目7',
|
|
|
|
|
hidden: true,
|
|
|
|
|
width: 100,
|
|
|
|
|
renderer: function (value, meta, record) {
|
|
|
|
|
if (value == true || value == '1')
|
|
|
|
|
return '√';
|
|
|
|
|
else
|
|
|
|
|
return '';
|
|
|
|
|
}
|
|
|
|
|
}, {
|
|
|
|
|
sortable: true,
|
|
|
|
|
dataIndex: 'ISHBLNO',
|
|
|
|
|
header: Zi.LAN.ISHBLNO, //'服务项目8',
|
|
|
|
|
hidden: true,
|
|
|
|
|
width: 100,
|
|
|
|
|
renderer: function (value, meta, record) {
|
|
|
|
|
if (value == true || value == '1')
|
|
|
|
|
return '√';
|
|
|
|
|
else
|
|
|
|
|
return '';
|
|
|
|
|
}
|
|
|
|
|
}, {
|
|
|
|
|
sortable: true,
|
|
|
|
|
dataIndex: 'SERVICE9',
|
|
|
|
|
header: Zi.LAN.SERVICE9, //'服务项目9',
|
|
|
|
|
hidden: true,
|
|
|
|
|
width: 100,
|
|
|
|
|
renderer: function (value, meta, record) {
|
|
|
|
|
if (value == true || value == '1')
|
|
|
|
|
return '√';
|
|
|
|
|
else
|
|
|
|
|
return '';
|
|
|
|
|
}
|
|
|
|
|
}, {
|
|
|
|
|
sortable: true,
|
|
|
|
|
dataIndex: 'SERVICE10',
|
|
|
|
|
header: Zi.LAN.SERVICE10, //'服务项目10',
|
|
|
|
|
hidden: true,
|
|
|
|
|
width: 100,
|
|
|
|
|
renderer: function (value, meta, record) {
|
|
|
|
|
if (value == true || value == '1')
|
|
|
|
|
return '√';
|
|
|
|
|
else
|
|
|
|
|
return '';
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'SHIPAGENCY',
|
|
|
|
|
header: Zi.LAN.SHIPAGENCY, //'船代',
|
|
|
|
|
width: 100
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'SHIPPER',
|
|
|
|
|
header: Zi.LAN.SHIPPER, //'SHIPPER',
|
|
|
|
|
width: 100
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'CONSIGNEE',
|
|
|
|
|
header: Zi.LAN.CONSIGNEE, //'CONSIGNEE',
|
|
|
|
|
width: 100,
|
|
|
|
|
filter: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
dataIndex: 'CONSIGNEE'
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'NOTIFYPARTY',
|
|
|
|
|
header: Zi.LAN.NOTIFYPARTY, //'NOTIFYPARTY',
|
|
|
|
|
width: 100
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'SHIPPERID',
|
|
|
|
|
header: Zi.LAN.SHIPPERNAME, //'SHIPPER',
|
|
|
|
|
width: 100
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'CONTRACTNO',
|
|
|
|
|
header: Zi.LAN.CONTRACTNO, //'运费协议号',
|
|
|
|
|
width: 100,
|
|
|
|
|
filter: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
dataIndex: 'CONTRACTNO'
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'ISSUETYPE',
|
|
|
|
|
header: Zi.LAN.ISSUETYPE, //'签单方式',
|
|
|
|
|
width: 100
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'OPERATOR',
|
|
|
|
|
header: Zi.LAN.OPERATOR2, //'委托单位联系人',
|
|
|
|
|
width: 100
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'CLOSINGDATE',
|
|
|
|
|
header: Zi.LAN.CLOSINGDATE, //'截港日期',
|
|
|
|
|
width: 100
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
sortable: true,
|
|
|
|
|
id: '',
|
|
|
|
|
dataIndex: 'CLOSEDOCDATE',
|
|
|
|
|
header: Zi.LAN.CLOSEDOCDATE, //'截单日期',
|
|
|
|
|
width: 100
|
|
|
|
|
}, {
|
|
|
|
|
sortable: true,
|
|
|
|
|
dataIndex: 'AMEND',
|
|
|
|
|
header: Zi.LAN.AMEND, //'更改单',
|
|
|
|
|
width: 80,
|
|
|
|
|
renderer: function (value, meta, record) {
|
|
|
|
|
if (value != '0')
|
|
|
|
|
return '√';
|
|
|
|
|
else
|
|
|
|
|
return '';
|
|
|
|
|
}
|
|
|
|
|
}, {
|
|
|
|
|
sortable: true,
|
|
|
|
|
dataIndex: 'ISAPPLY',
|
|
|
|
|
header: Zi.LAN.ISAPPLY, //'是否生成报关',
|
|
|
|
|
width: 80,
|
|
|
|
|
renderer: function (value, meta, record) {
|
|
|
|
|
if (value != '0')
|
|
|
|
|
return '√';
|
|
|
|
|
else
|
|
|
|
|
return '';
|
|
|
|
|
}
|
|
|
|
|
}, {
|
|
|
|
|
sortable: true,
|
|
|
|
|
dataIndex: 'STLNAME',
|
|
|
|
|
header: Zi.LAN.STLNAME, //'结算方式',
|
|
|
|
|
width: 80
|
|
|
|
|
}, {
|
|
|
|
|
sortable: true,
|
|
|
|
|
dataIndex: 'STLDATE',
|
|
|
|
|
header: Zi.LAN.STLDATE, //'结算日期',
|
|
|
|
|
width: 80
|
|
|
|
|
}, {
|
|
|
|
|
dataIndex: 'BLFRT',
|
|
|
|
|
header: Zi.LAN.BLFRT, //'付费方式',
|
|
|
|
|
width: 120
|
|
|
|
|
}, {
|
|
|
|
|
dataIndex: 'APPLYNO',
|
|
|
|
|
header: Zi.LAN.APPLYNO, //'申请放箱号',
|
|
|
|
|
width: 120
|
|
|
|
|
}, {
|
|
|
|
|
dataIndex: 'CARGOID',
|
|
|
|
|
header: '货物标示', //'货物标识',
|
|
|
|
|
width: 120
|
|
|
|
|
}, {
|
|
|
|
|
dataIndex: 'BLISSUESTATUS',
|
|
|
|
|
header: '提单签发状态', //'货物标识',
|
|
|
|
|
width: 120
|
|
|
|
|
}, {
|
|
|
|
|
dataIndex: 'INVNO',
|
|
|
|
|
header: '发票号', //'货物标识',
|
|
|
|
|
width: 120
|
|
|
|
|
}, {
|
|
|
|
|
dataIndex: 'REMARK',
|
|
|
|
|
header: Zi.LAN.REMARK, //'货物标识',
|
|
|
|
|
width: 120
|
|
|
|
|
}, {
|
|
|
|
|
dataIndex: 'OPERATORFAX',
|
|
|
|
|
header: Zi.LAN.OTREMARK, //'其他备注',
|
|
|
|
|
width: 120
|
|
|
|
|
}, {
|
|
|
|
|
dataIndex: 'PLACERECEIPT',
|
|
|
|
|
header: Zi.LAN.PLACERECEIPTID, //'货物标识',
|
|
|
|
|
width: 120
|
|
|
|
|
}, {
|
|
|
|
|
dataIndex: 'ISCANCEL',
|
|
|
|
|
header: '退舱', //'退舱',
|
|
|
|
|
width: 60,
|
|
|
|
|
renderer: function (value, meta, record) {
|
|
|
|
|
if (value == '1')
|
|
|
|
|
return '√';
|
|
|
|
|
else if (value == '2')
|
|
|
|
|
return '申请退舱';
|
|
|
|
|
else if (value == '4')
|
|
|
|
|
return '驳回申请';
|
|
|
|
|
else
|
|
|
|
|
return '';
|
|
|
|
|
}
|
|
|
|
|
}, {
|
|
|
|
|
dataIndex: 'ISTUI',
|
|
|
|
|
header: '推航次', //'推航次',
|
|
|
|
|
width: 70,
|
|
|
|
|
renderer: function (value, meta, record) {
|
|
|
|
|
if (value == '1')
|
|
|
|
|
return '√';
|
|
|
|
|
else if (value == '2')
|
|
|
|
|
return '申请推航次';
|
|
|
|
|
else if (value == '4')
|
|
|
|
|
return '驳回申请';
|
|
|
|
|
else
|
|
|
|
|
return '';
|
|
|
|
|
}
|
|
|
|
|
}, {
|
|
|
|
|
dataIndex: 'TRANSREMARK',
|
|
|
|
|
header: Zi.LAN.CANCELREASON, //'货物标识',
|
|
|
|
|
width: 120
|
|
|
|
|
}];
|
|
|
|
|
|
|
|
|
|
this.girdcolums = this.initgirdcolums;
|
|
|
|
|
|
|
|
|
|
this.GridCheckBoxModel = Ext.create('Ext.selection.CheckboxModel');
|
|
|
|
|
|
|
|
|
|
// configure whether filter query is encoded or not (initially)
|
|
|
|
|
var encode = false;
|
|
|
|
|
|
|
|
|
|
// configure whether filtering is performed locally or remotely (initially)
|
|
|
|
|
var local = true;
|
|
|
|
|
|
|
|
|
|
this.filters = {
|
|
|
|
|
ftype: 'filters',
|
|
|
|
|
// encode and local configuration options defined previously for easier reuse
|
|
|
|
|
encode: encode, // json encode the filter query
|
|
|
|
|
local: local, // defaults to false (remote filtering)
|
|
|
|
|
|
|
|
|
|
// Filters are most naturally placed in the column definition, but can also be
|
|
|
|
|
// added here.
|
|
|
|
|
filters: [{
|
|
|
|
|
type: 'boolean',
|
|
|
|
|
dataIndex: 'visible'
|
|
|
|
|
}, {
|
|
|
|
|
type: 'string',
|
|
|
|
|
dataIndex: 'MBLNO'
|
|
|
|
|
}]
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
//定义Grid
|
|
|
|
|
this.gridList = new Ext.grid.GridPanel({
|
|
|
|
|
store: this.storeList,
|
|
|
|
|
enableHdMenu: false,
|
|
|
|
|
region: 'center',
|
|
|
|
|
id: 'gridlist',
|
|
|
|
|
loadMask: {
|
|
|
|
|
msg: Zi.LAN.ShuJuJiaZaiZhongQingShaoDeng //"数据加载中,请稍等..."
|
|
|
|
|
},
|
|
|
|
|
trackMouseOver: true,
|
|
|
|
|
disableSelection: false,
|
|
|
|
|
features: [this.filters],
|
|
|
|
|
selModel: this.GridCheckBoxModel,
|
|
|
|
|
viewConfig: {
|
|
|
|
|
enableTextSelection: true, //允许复制数据
|
|
|
|
|
autoFill: true
|
|
|
|
|
},
|
|
|
|
|
listeners: {
|
|
|
|
|
cellclick: function (thisTab, record, item, index, e, eOpts) {
|
|
|
|
|
/*if (index == 10) {//设置按钮列
|
|
|
|
|
// alert('用户编号=' + this.getStore().getAt(rowIndex).data.usercode);
|
|
|
|
|
|
|
|
|
|
} */
|
|
|
|
|
var _status = record.innerText;
|
|
|
|
|
_status = _status.substring(0, _status.length - 1);
|
|
|
|
|
if (dicStatus.containsValue(_status)) {
|
|
|
|
|
//if (_status.indexOf("接单") != -1 || _status.indexOf("订舱") != -1 || _status.indexOf("出号") != -1 || _status.indexOf("入货通知") != -1 || _status.indexOf("派车") != -1 || _status.indexOf("提空箱") != -1 || _status.indexOf("重箱返场") != -1 || _status.indexOf("预配") != -1 || _status.indexOf("运抵") != -1 || _status.indexOf("报关放行") != -1 || _status.indexOf("装载放行") != -1 || _status.indexOf("开船") != -1) {
|
|
|
|
|
steplay.fnLoad(index.data.MBLNO, index.data.BSNO);
|
|
|
|
|
//alert("ok");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
columns: this.girdcolums,
|
|
|
|
|
// paging bar on the bottom
|
|
|
|
|
bbar: [Ext.create('Ext.PagingToolbar', {
|
|
|
|
|
store: this.storeList,
|
|
|
|
|
displayInfo: true,
|
|
|
|
|
displayMsg: Zi.LAN.displayMsg, //'当前显示 {0} - {1}条记录 /共 {2}条记录',
|
|
|
|
|
emptyMsg: Zi.LAN.emptyMsg//'没有数据'
|
|
|
|
|
}), this.Pagenum]
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/////////////以下部分为获取存储的gridpanel显示样式
|
|
|
|
|
this.girdcolums = DsTruck.GetGridPanel(USERID, this.formname, this.girdcolums, 1); //使用者id,表名,中间column数组,跳过一开始的几列
|
|
|
|
|
this.gridList.reconfigure(this.storeList, this.girdcolums);
|
|
|
|
|
this.gridList.columns[1] = new Ext.grid.RowNumberer();
|
|
|
|
|
////////////////////////////////////////////////
|
|
|
|
|
|
|
|
|
|
this.gridList.addListener('itemdblclick', function (dataview, record, item, index, e, b) {
|
|
|
|
|
this.SelectedRecord = record;
|
|
|
|
|
this.OprationStatus = 'edit';
|
|
|
|
|
// DsOpenEditWin('/MvcShipping/MsOpSeae/Edit', record.data.BSNO);
|
|
|
|
|
// var MainCenter = window.parent._this.MainCenter;
|
|
|
|
|
// DsOpenAtMain('/MvcShipping/MsOpSeae/Edit', '海运出口'+record.data.CUSTNO, MainCenter);
|
|
|
|
|
}, this);
|
|
|
|
|
|
|
|
|
|
var isloadfee = true;
|
|
|
|
|
this.gridList.getSelectionModel().on('select', function (model, record, index) {
|
|
|
|
|
if (isloadfee) {
|
|
|
|
|
if (this.panelgridListEdiLog.isHidden() != true) {
|
|
|
|
|
var bsno = record.data.BSNO;
|
|
|
|
|
var sql = "";
|
|
|
|
|
sql = " BSNO='" + bsno + "'";
|
|
|
|
|
isloadfee = false;
|
|
|
|
|
this.storeListEdiLog.load({ params: { condition: sql },
|
|
|
|
|
callback: function (r, options, success) {
|
|
|
|
|
if (success) {
|
|
|
|
|
isloadfee = true;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
var bsno = record.data.BSNO;
|
|
|
|
|
_this.bsno = bsno;
|
|
|
|
|
var btntxt = Ext.getCmp('btnCover').getText();
|
|
|
|
|
if (btntxt == '隐藏Cover')
|
|
|
|
|
_this.RefreshCover(bsno);
|
|
|
|
|
}, this);
|
|
|
|
|
|
|
|
|
|
this.gridList.addListener('sortchange', function (ct, column, direction, eOpts) {
|
|
|
|
|
this.sortfield = column.dataIndex;
|
|
|
|
|
this.sortdire = direction;
|
|
|
|
|
}, this);
|
|
|
|
|
|
|
|
|
|
this.gridList.view.on('expandBody', function (rowNode, record, expandRow, eOpts) {
|
|
|
|
|
_this.displayInnerGrid(record.get('BSNO'), record.get('FENPIAO'));
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
this.gridList.view.on('collapsebody', function (rowNode, record, expandRow, eOpts) {
|
|
|
|
|
_this.destroyInnerGrid(record);
|
|
|
|
|
});
|
|
|
|
|
//#endregion
|
|
|
|
|
|
|
|
|
|
//#region formSearch 下拉框信息加载
|
|
|
|
|
//权限范围
|
|
|
|
|
this.StoreOpRange = Ext.create('DsExt.ux.RefTableStore', {
|
|
|
|
|
model: 'MsOP',
|
|
|
|
|
proxy: { url: '/MvcShipping/MsBaseInfo/GetOpRang' }
|
|
|
|
|
});
|
|
|
|
|
this.StoreOpRange.load({ params: { optype: "modOrderManagement"} });
|
|
|
|
|
|
|
|
|
|
//人员信息加载
|
|
|
|
|
this.storeOpCode = Ext.create('DsExt.ux.RefTableStore', {
|
|
|
|
|
model: 'DsShipping.ux.UserRefModel',
|
|
|
|
|
proxy: { url: '/CommMng/BasicDataRef/GetUserLinkRefListRm' }
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
this.storeSaleCode = Ext.create('DsExt.ux.RefTableStore', {
|
|
|
|
|
model: 'DsShipping.ux.UserRefModel',
|
|
|
|
|
proxy: { url: '/CommMng/BasicDataRef/GetUserLinkRefListRm' }
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
// this.storeOpCode.load({
|
|
|
|
|
// callback: function (r, options, success) {
|
|
|
|
|
// if (success) {
|
|
|
|
|
// _this.storeSaleCode.add(r);
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
// });
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//客服
|
|
|
|
|
this.comboxCUSTSERVICE = Ext.create('DsExt.ux.RefTableCombox', {
|
|
|
|
|
fieldLabel: Zi.LAN.CUSTSERVICE, //'客服',
|
|
|
|
|
store: this.storeOpCode,
|
|
|
|
|
forceSelection: true,
|
|
|
|
|
queryMode: 'remote',
|
|
|
|
|
minChars: 0,
|
|
|
|
|
queryParam: 'CODENAME',
|
|
|
|
|
name: 'CUSTSERVICE',
|
|
|
|
|
valueField: 'UserName',
|
|
|
|
|
displayField: 'CodeAndName'
|
|
|
|
|
});
|
|
|
|
|
//揽货人
|
|
|
|
|
this.comboxSALE = Ext.create('DsExt.ux.RefTableCombox', {
|
|
|
|
|
fieldLabel: Zi.LAN.SALE, //'揽货人',
|
|
|
|
|
store: this.storeSaleCode,
|
|
|
|
|
forceSelection: true,
|
|
|
|
|
queryMode: 'remote',
|
|
|
|
|
minChars: 0,
|
|
|
|
|
queryParam: 'CODENAME',
|
|
|
|
|
labelWidth: 45,
|
|
|
|
|
name: 'SALE',
|
|
|
|
|
flex: 0.6,
|
|
|
|
|
valueField: 'UserName',
|
|
|
|
|
displayField: 'CodeAndName'
|
|
|
|
|
});
|
|
|
|
|
//操 作
|
|
|
|
|
this.comboxOP = Ext.create('DsExt.ux.RefTableCombox', {
|
|
|
|
|
fieldLabel: Zi.LAN.OP, //'操 作',
|
|
|
|
|
store: this.storeOpCode,
|
|
|
|
|
queryMode: 'remote',
|
|
|
|
|
minChars: 0,
|
|
|
|
|
queryParam: 'CODENAME',
|
|
|
|
|
labelWidth: 30,
|
|
|
|
|
forceSelection: true,
|
|
|
|
|
name: 'OP',
|
|
|
|
|
flex: 0.6, valueField: 'UserName',
|
|
|
|
|
displayField: 'CodeAndName',
|
|
|
|
|
enableKeyEvents: true,
|
|
|
|
|
listeners: {
|
|
|
|
|
keyup: function (field, e) {
|
|
|
|
|
if (e.getKey() == e.ENTER) {
|
|
|
|
|
_this.onRefreshClick();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
//录入人
|
|
|
|
|
this.comboxINPUTBY = Ext.create('DsExt.ux.RefTableCombox', {
|
|
|
|
|
fieldLabel: Zi.LAN.INPUTBY2, //'录入人',
|
|
|
|
|
store: this.storeOpCode,
|
|
|
|
|
forceSelection: true,
|
|
|
|
|
name: 'INPUTBY',
|
|
|
|
|
valueField: 'UserName',
|
|
|
|
|
displayField: 'CodeAndName',
|
|
|
|
|
enableKeyEvents: true,
|
|
|
|
|
listeners: {
|
|
|
|
|
keyup: function (field, e) {
|
|
|
|
|
if (e.getKey() == e.ENTER) {
|
|
|
|
|
_this.onRefreshClick();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
//客户加载_委托单位
|
|
|
|
|
this.storeCustCode = Ext.create('DsExt.ux.RefTableStore', {
|
|
|
|
|
model: 'DsShipping.ux.CustomRefModel',
|
|
|
|
|
proxy: { url: '/CommMng/BasicDataRef/GetCustomRefListController' }
|
|
|
|
|
});
|
|
|
|
|
// this.storeCustCode.load({ params: { condition: "ISCONTROLLER='1'"} });
|
|
|
|
|
//委托单位
|
|
|
|
|
_this = this;
|
|
|
|
|
this.comboxCustCode = Ext.create('DsExt.ux.RefTableCombox', {
|
|
|
|
|
fieldLabel: Zi.LAN.CUSTOMERNAME, //'委托单位',
|
|
|
|
|
store: this.storeCustCode,
|
|
|
|
|
queryMode: 'remote',
|
|
|
|
|
minChars: 1,
|
|
|
|
|
queryParam: 'CODENAME',
|
|
|
|
|
name: 'CUSTOMERNAME',
|
|
|
|
|
valueField: 'CustName',
|
|
|
|
|
displayField: 'CodeAndName',
|
|
|
|
|
enableKeyEvents: true,
|
|
|
|
|
listeners: {
|
|
|
|
|
keyup: function (field, e) {
|
|
|
|
|
if (e.getKey() == e.ENTER) {
|
|
|
|
|
_this.onRefreshClick();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
this.storeLANE = Ext.create('DsExt.ux.RefTableStore', {
|
|
|
|
|
model: 'DsShipping.ux.Lane',
|
|
|
|
|
proxy: { url: '/CommMng/BasicDataRef/GetCodeLaneList' }
|
|
|
|
|
});
|
|
|
|
|
// this.storeLANE.load();
|
|
|
|
|
this.comboxLANE = Ext.create('DsExt.ux.RefTableCombox', {
|
|
|
|
|
fieldLabel: Zi.LAN.LANE, //'航线',
|
|
|
|
|
store: this.storeLANE,
|
|
|
|
|
labelWidth: 30,
|
|
|
|
|
queryMode: 'remote',
|
|
|
|
|
minChars: 0,
|
|
|
|
|
queryParam: 'CODENAME',
|
|
|
|
|
flex: 0.8,
|
|
|
|
|
name: 'LANE',
|
|
|
|
|
valueField: 'LANE',
|
|
|
|
|
displayField: 'LANE',
|
|
|
|
|
enableKeyEvents: true,
|
|
|
|
|
listeners: {
|
|
|
|
|
keyup: function (field, e) {
|
|
|
|
|
if (e.getKey() == e.ENTER) {
|
|
|
|
|
_this.onRefreshClick();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
//#endregion
|
|
|
|
|
|
|
|
|
|
//#region formSearch 查询面板
|
|
|
|
|
_this = this;
|
|
|
|
|
this.formSearch = Ext.widget('form', {
|
|
|
|
|
frame: true,
|
|
|
|
|
region: 'center',
|
|
|
|
|
bodyPadding: 5,
|
|
|
|
|
fieldDefaults: {
|
|
|
|
|
margins: '2 2 2 2',
|
|
|
|
|
labelAlign: 'right',
|
|
|
|
|
flex: 1,
|
|
|
|
|
labelWidth: 60,
|
|
|
|
|
msgTarget: 'qtip'
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
items: [{//fieldset 1
|
|
|
|
|
xtype: 'container',
|
|
|
|
|
defaultType: 'textfield',
|
|
|
|
|
layout: 'anchor',
|
|
|
|
|
defaults: {
|
|
|
|
|
anchor: '100%'
|
|
|
|
|
},
|
|
|
|
|
items: [{
|
|
|
|
|
xtype: 'container',
|
|
|
|
|
layout: 'hbox',
|
|
|
|
|
defaultType: 'textfield',
|
|
|
|
|
items: [{
|
|
|
|
|
fieldLabel: Zi.LAN.MblNo2, //'编号',
|
|
|
|
|
name: 'MblNo',
|
|
|
|
|
labelWidth: 30,
|
|
|
|
|
flex: 0.8,
|
|
|
|
|
enableKeyEvents: true,
|
|
|
|
|
listeners: {
|
|
|
|
|
specialkey: function (field, e) {
|
|
|
|
|
if (e.getKey() == e.ENTER) {
|
|
|
|
|
_this.onRefreshClick();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},{
|
|
|
|
|
fieldLabel:'HBLNO', //'编号',
|
|
|
|
|
name: 'HblNo',
|
|
|
|
|
labelWidth: 40,
|
|
|
|
|
flex: 0.8,
|
|
|
|
|
enableKeyEvents: true,
|
|
|
|
|
listeners: {
|
|
|
|
|
specialkey: function (field, e) {
|
|
|
|
|
if (e.getKey() == e.ENTER) {
|
|
|
|
|
_this.onRefreshClick();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}, this.comboxCustCode, {
|
|
|
|
|
fieldLabel: Zi.LAN.ETD2, //'开船日期',
|
|
|
|
|
labelWidth: 60,
|
|
|
|
|
format: 'Y-m-d',
|
|
|
|
|
xtype: 'datefield',
|
|
|
|
|
name: 'ETDbgn',
|
|
|
|
|
enableKeyEvents: true,
|
|
|
|
|
listeners: {
|
|
|
|
|
specialkey: function (field, e) {
|
|
|
|
|
if (e.getKey() == e.ENTER) {
|
|
|
|
|
_this.onRefreshClick();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}, {
|
|
|
|
|
fieldLabel: Zi.LAN.ETDend, //'到',
|
|
|
|
|
labelWidth: 20,
|
|
|
|
|
flex: 0.8,
|
|
|
|
|
format: 'Y-m-d',
|
|
|
|
|
xtype: 'datefield',
|
|
|
|
|
name: 'ETDend',
|
|
|
|
|
enableKeyEvents: true,
|
|
|
|
|
listeners: {
|
|
|
|
|
specialkey: function (field, e) {
|
|
|
|
|
if (e.getKey() == e.ENTER) {
|
|
|
|
|
_this.onRefreshClick();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}, this.comboxLANE, this.comboxOP, this.comboxSALE, {
|
|
|
|
|
xtype: 'button',
|
|
|
|
|
width: 90,
|
|
|
|
|
text: Zi.LAN.btnrefresh, //"执行查询",
|
|
|
|
|
iconCls: "btnrefresh",
|
|
|
|
|
handler: function (button, event) {
|
|
|
|
|
this.onRefreshClick(button, event);
|
|
|
|
|
},
|
|
|
|
|
scope: this
|
|
|
|
|
}, {
|
|
|
|
|
xtype: 'button',
|
|
|
|
|
width: 90,
|
|
|
|
|
text: Zi.LAN.btnmore, //"高级查询",
|
|
|
|
|
iconCls: "btnmore",
|
|
|
|
|
handler: function (button, event) {
|
|
|
|
|
var sql = this.getCondition();
|
|
|
|
|
var winAccess = new Shipping.DsQuery({
|
|
|
|
|
|
|
|
|
|
});
|
|
|
|
|
winAccess.StoreList = this.storeList;
|
|
|
|
|
winAccess.formname = this.formname;
|
|
|
|
|
winAccess.condition = sql;
|
|
|
|
|
winAccess.show();
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
},
|
|
|
|
|
scope: this
|
|
|
|
|
}]
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//
|
|
|
|
|
// , {
|
|
|
|
|
// xtype: 'container',
|
|
|
|
|
// layout: 'hbox',
|
|
|
|
|
// defaultType: 'textfield',
|
|
|
|
|
// items: [this.comboxVoyVeg, {
|
|
|
|
|
// fieldLabel: '航次',
|
|
|
|
|
// name: 'VOYNO',
|
|
|
|
|
// enableKeyEvents: true,
|
|
|
|
|
// listeners: {
|
|
|
|
|
// specialkey: function (field, e) {
|
|
|
|
|
// if (e.getKey() == e.ENTER) {
|
|
|
|
|
// _this.onRefreshClick();
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
// }, {
|
|
|
|
|
// fieldLabel: '会计期间',
|
|
|
|
|
// format: 'Y-m',
|
|
|
|
|
// xtype: 'datefield',
|
|
|
|
|
// name: 'ACCDATE',
|
|
|
|
|
// enableKeyEvents: true,
|
|
|
|
|
// listeners: {
|
|
|
|
|
// specialkey: function (field, e) {
|
|
|
|
|
// if (e.getKey() == e.ENTER) {
|
|
|
|
|
// _this.onRefreshClick();
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
// }, this.comboxPORTLOAD]
|
|
|
|
|
// }, {
|
|
|
|
|
// xtype: 'container',
|
|
|
|
|
// layout: 'hbox',
|
|
|
|
|
// defaultType: 'textfield',
|
|
|
|
|
// items: [this.comboxCARRIER, this.comboxAgent, this.comboxPORTDISCHARGE, this.comboxFEESTATUS]
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
]//end items(fieldset 1)
|
|
|
|
|
}]//end root items
|
|
|
|
|
});
|
|
|
|
|
//#endregion formSearch
|
|
|
|
|
|
|
|
|
|
_this = this;
|
|
|
|
|
|
|
|
|
|
//#region 按钮工具条
|
|
|
|
|
this.panelBtn = new Ext.Panel({
|
|
|
|
|
region: "north",
|
|
|
|
|
tbar: [{
|
|
|
|
|
text: Zi.LAN.btnreset, //"重置条件",
|
|
|
|
|
iconCls: "btnreset",
|
|
|
|
|
handler: function (button, event) {
|
|
|
|
|
this.onClearSql(button, event);
|
|
|
|
|
},
|
|
|
|
|
scope: this
|
|
|
|
|
}, '-', {
|
|
|
|
|
text: '取消退舱', //"重置条件",
|
|
|
|
|
iconCls: "btnreset",
|
|
|
|
|
handler: function (button, event) {
|
|
|
|
|
this.onReStore(button, event);
|
|
|
|
|
},
|
|
|
|
|
scope: this
|
|
|
|
|
}, '-', {
|
|
|
|
|
text: Zi.LAN.btntest, //"保存列表样式",
|
|
|
|
|
id: "btntest",
|
|
|
|
|
menu: [
|
|
|
|
|
{ text: Zi.LAN.SaveGridPanel, //"保存",
|
|
|
|
|
handler: function (button, event) {
|
|
|
|
|
this.girdcolums = DsTruck.SaveGridPanel(USERID, _this.formname, _this.gridList.columns, _this.girdcolums, 2, true);
|
|
|
|
|
}
|
|
|
|
|
}, { text: Zi.LAN.SaveGridPanel2, //"初始化",
|
|
|
|
|
handler: function (menu, event) {
|
|
|
|
|
_this.InitGrid(_this.initgirdcolums);
|
|
|
|
|
_this.girdcolums = DsTruck.SaveGridPanel(USERID, _this.formname, _this.gridList.columns, _this.initgirdcolums, 2, true);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
scope: this
|
|
|
|
|
}, '-',
|
|
|
|
|
{
|
|
|
|
|
text: Zi.LAN.btnprint, //"打印",
|
|
|
|
|
iconCls: 'btnprint',
|
|
|
|
|
menu: [
|
|
|
|
|
{ text: Zi.LAN.Print, //"全部",
|
|
|
|
|
handler: function (menu, event) {
|
|
|
|
|
_this.Print();
|
|
|
|
|
}
|
|
|
|
|
}, { text: Zi.LAN.PrintSelect, //"选择打印",
|
|
|
|
|
handler: function (menu, event) {
|
|
|
|
|
_this.PrintSelect();
|
|
|
|
|
}
|
|
|
|
|
}],
|
|
|
|
|
|
|
|
|
|
scope: this
|
|
|
|
|
}, '-', {
|
|
|
|
|
text: Zi.LAN.ListExpExcel, //"EXCEL导出",
|
|
|
|
|
iconCls: "btnexportexcel",
|
|
|
|
|
handler: function (button, event) {
|
|
|
|
|
_this.onExportClick();
|
|
|
|
|
|
|
|
|
|
},
|
|
|
|
|
scope: this
|
|
|
|
|
}, '-',{
|
|
|
|
|
text: '显示Cover',
|
|
|
|
|
id: 'btnCover',
|
|
|
|
|
handler: function (button, event) {
|
|
|
|
|
this.readingPaneChange(button);
|
|
|
|
|
},
|
|
|
|
|
scope: this
|
|
|
|
|
}]
|
|
|
|
|
});
|
|
|
|
|
//#endregion
|
|
|
|
|
|
|
|
|
|
//#region 合计列表
|
|
|
|
|
this.SumField = [
|
|
|
|
|
{ name: 'NOBILL', type: 'number' },
|
|
|
|
|
{ name: 'TEU', type: 'number' },
|
|
|
|
|
{ name: 'KGS', type: 'number' },
|
|
|
|
|
{ name: 'PKGS', type: 'number' },
|
|
|
|
|
{ name: 'CBM', type: 'number' }
|
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
this.storeSumList = Ext.create('Ext.data.Store', {
|
|
|
|
|
pageSize: this.PageSize,
|
|
|
|
|
fields: this.SumField,
|
|
|
|
|
remoteSort: true,
|
|
|
|
|
proxy: {
|
|
|
|
|
type: 'ajax',
|
|
|
|
|
url: '/MvcShipping/MsOpSeae/GetCancelCtnSum',
|
|
|
|
|
reader: {
|
|
|
|
|
id: '',
|
|
|
|
|
root: 'data',
|
|
|
|
|
totalProperty: 'totalCount'
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
this.girdcolumsSum = [{
|
|
|
|
|
sortable: true,
|
|
|
|
|
dataIndex: 'TEU',
|
|
|
|
|
header: Zi.LAN.TEU, //'TEU',
|
|
|
|
|
align: 'right',
|
|
|
|
|
width: 80
|
|
|
|
|
}, {
|
|
|
|
|
sortable: true,
|
|
|
|
|
dataIndex: 'PKGS',
|
|
|
|
|
header: Zi.LAN.PKGS, //'件数',
|
|
|
|
|
renderer: function (value, cellmeta, record, rowIndex, columnIndex, store) { try { var lsValue = usMoney(value, 2, '', false); if (lsValue != "NaN") { value = lsValue; if (parseFloat(lsValue) < 0) { return '<SPAN style="COLOR: red">' + lsValue + '</SPAN>'; } } else { return value; } } catch (e) { return value; } return value; },
|
|
|
|
|
align: 'right',
|
|
|
|
|
width: 80
|
|
|
|
|
}, {
|
|
|
|
|
sortable: true,
|
|
|
|
|
dataIndex: 'KGS',
|
|
|
|
|
header: Zi.LAN.KGS2, //'毛重',
|
|
|
|
|
align: 'right',
|
|
|
|
|
width: 80
|
|
|
|
|
}, {
|
|
|
|
|
sortable: true,
|
|
|
|
|
dataIndex: 'CBM',
|
|
|
|
|
header: Zi.LAN.CBM2, //'尺码',
|
|
|
|
|
// renderer: function (value, cellmeta, record, rowIndex, columnIndex, store) { try { var lsValue = usMoney(value, 2, '', false); if (lsValue != "NaN") { value = lsValue; if (parseFloat(lsValue) < 0) { return '<SPAN style="COLOR: red">' + lsValue + '</SPAN>'; } } else { return value; } } catch (e) { return value; } return value; },
|
|
|
|
|
align: 'right',
|
|
|
|
|
width: 80
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
this.gridListSum = new Ext.grid.GridPanel({
|
|
|
|
|
store: this.storeSumList,
|
|
|
|
|
enableHdMenu: false,
|
|
|
|
|
region: 'center',
|
|
|
|
|
loadMask: {
|
|
|
|
|
msg: Zi.LAN.ShuJuJiaZaiZhongQingShaoDeng //"数据加载中,请稍等..."
|
|
|
|
|
},
|
|
|
|
|
trackMouseOver: true,
|
|
|
|
|
disableSelection: false,
|
|
|
|
|
columns: this.girdcolumsSum
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
this.panelSum = new Ext.Panel({
|
|
|
|
|
// title: '合 计',
|
|
|
|
|
layout: "border",
|
|
|
|
|
height: 70,
|
|
|
|
|
region: 'south',
|
|
|
|
|
margin: '0 0',
|
|
|
|
|
frame: true,
|
|
|
|
|
items: [this.gridListSum]
|
|
|
|
|
});
|
|
|
|
|
//#endregion
|
|
|
|
|
|
|
|
|
|
this.panelTop = new Ext.Panel({
|
|
|
|
|
layout: "border",
|
|
|
|
|
region: "north",
|
|
|
|
|
height: 75,
|
|
|
|
|
items: [this.panelBtn, this.formSearch]
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
Ext.apply(this, {
|
|
|
|
|
items: [this.panelTop, this.gridList, this.panelSum,this.createEast()]
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
//#region 数据加载
|
|
|
|
|
this.storeCtnList = Ext.create('Ext.data.Store', {
|
|
|
|
|
pageSize: this.PageSize,
|
|
|
|
|
fields: [
|
|
|
|
|
{ name: 'CTNALL', type: 'string' }
|
|
|
|
|
],
|
|
|
|
|
remoteSort: true,
|
|
|
|
|
proxy: {
|
|
|
|
|
type: 'ajax',
|
|
|
|
|
url: '/MvcShipping/MsOpSeae/GetCtnList',
|
|
|
|
|
reader: {
|
|
|
|
|
id: '',
|
|
|
|
|
root: 'data',
|
|
|
|
|
totalProperty: 'totalCount'
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
this.InitGrid(this.girdcolums);
|
|
|
|
|
// this.onRefreshClick();
|
|
|
|
|
|
|
|
|
|
var myDate = new Date();
|
|
|
|
|
var mydatestr = Ext.util.Format.date(myDate, 'Y-m');
|
|
|
|
|
this.sqlcontext = " B.ISCANCEL=1 AND B.ACCDATE='" + mydatestr + "'";
|
|
|
|
|
this.storeList.clearFilter();
|
|
|
|
|
|
|
|
|
|
this.storeList.load({
|
|
|
|
|
params: { start: 0, limit: this.PageSize, sort: '', condition: _this.sqlcontext, load: 'true' },
|
|
|
|
|
waitMsg: Zi.LAN.ZhengZaiChaXunShuJu, //"正在查询数据...",
|
|
|
|
|
scope: this
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
this.storeList.on('beforeload', function (store) {
|
|
|
|
|
|
|
|
|
|
Ext.apply(store.proxy.extraParams, { condition: _this.sqlcontext });
|
|
|
|
|
}, this);
|
|
|
|
|
//#endregion
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
this.relayEvents(this.PluginCover, ['opentab']);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}, //end initUIComponents
|
|
|
|
|
|
|
|
|
|
//#region 加载函数
|
|
|
|
|
InitGrid: function (grid) {
|
|
|
|
|
//var agirdcolums = Ext.clone(this.gridList.columns);
|
|
|
|
|
var agirdcolums = grid;
|
|
|
|
|
this.storecodeservice.load({ params: { condition: "OPTYPE='1'" },
|
|
|
|
|
callback: function (r, options, success) {
|
|
|
|
|
if (success) {
|
|
|
|
|
if (r.length != 0) {
|
|
|
|
|
for (i = 0; i < this.storecodeservice.getCount(); i += 1) {
|
|
|
|
|
var itemindex = i + 1;
|
|
|
|
|
var memberyf = this.storecodeservice.getAt(i);
|
|
|
|
|
for (var j = 0; j < agirdcolums.length; j++) {
|
|
|
|
|
if (agirdcolums[j].dataIndex == memberyf.data.OPField) {
|
|
|
|
|
agirdcolums[j].header = memberyf.data.SERVICENAME;
|
|
|
|
|
agirdcolums[j].hidden = false;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
this.gridList.reconfigure(this.storeList, agirdcolums);
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
scope: this
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
//#endregion
|
|
|
|
|
|
|
|
|
|
//#region 基本按钮函数
|
|
|
|
|
onRefreshClick: function (button, event) {
|
|
|
|
|
//var girdcolums = this.gridList.getColumnMode();
|
|
|
|
|
this.gridList.filters.clearFilters();
|
|
|
|
|
// this.filters.removeAll();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var sql = this.getCondition();
|
|
|
|
|
this.sqlcontext = sql;
|
|
|
|
|
this.PageSize = this.Pagenum.getValue();
|
|
|
|
|
this.storeList.pageSize = this.PageSize;
|
|
|
|
|
this.storeList.load({
|
|
|
|
|
params: { start: 0, limit: this.PageSize, sort: '', condition: sql },
|
|
|
|
|
waitMsg: Zi.LAN.ZhengZaiChaXunShuJu, //"正在查询数据...",
|
|
|
|
|
scope: this
|
|
|
|
|
});
|
|
|
|
|
this.onRefreshSumClick(sql);
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
onDsQuery: function () {
|
|
|
|
|
//var girdcolums = this.gridList.getColumnMode();
|
|
|
|
|
this.PageSize = this.Pagenum.getValue();
|
|
|
|
|
var sql = this.sqlcontext;
|
|
|
|
|
this.storeList.pageSize = this.PageSize;
|
|
|
|
|
// this.gridList.filters.clearFilters();
|
|
|
|
|
var sortstr = '';
|
|
|
|
|
|
|
|
|
|
if (this.sortfield != '' && this.sortdire != '') {
|
|
|
|
|
|
|
|
|
|
sortstr = this.sortfield + ' ' + this.sortdire;
|
|
|
|
|
}
|
|
|
|
|
this.gridList.filters.clearFilters();
|
|
|
|
|
|
|
|
|
|
this.storeList.load({
|
|
|
|
|
params: { start: 0, limit: this.PageSize, sort: sortstr, condition: sql },
|
|
|
|
|
waitMsg: Zi.LAN.ZhengZaiChaXunShuJu, //"正在查询数据...",
|
|
|
|
|
scope: this
|
|
|
|
|
});
|
|
|
|
|
this.onRefreshSumClick(sql);
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
onRefreshSumClick: function (sql) {
|
|
|
|
|
this.SumField = [
|
|
|
|
|
{ name: 'NOBILL', type: 'number' },
|
|
|
|
|
{ name: 'TTLBILL', type: 'number' },
|
|
|
|
|
{ name: 'TEU', type: 'number' },
|
|
|
|
|
{ name: 'KGS', type: 'number' },
|
|
|
|
|
{ name: 'PKGS', type: 'number' },
|
|
|
|
|
{ name: 'CBM', type: 'number' }
|
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
this.girdcolumsSum = [{
|
|
|
|
|
sortable: true,
|
|
|
|
|
dataIndex: 'NOBILL',
|
|
|
|
|
header: Zi.LAN.NOBILL2, //'票数',
|
|
|
|
|
align: 'right',
|
|
|
|
|
width: 80
|
|
|
|
|
}, {
|
|
|
|
|
sortable: true,
|
|
|
|
|
dataIndex: 'TTLBILL',
|
|
|
|
|
header: Zi.LAN.TTLBILL, //'票数',
|
|
|
|
|
align: 'right',
|
|
|
|
|
width: 100
|
|
|
|
|
}, {
|
|
|
|
|
sortable: true,
|
|
|
|
|
dataIndex: 'TEU',
|
|
|
|
|
header: Zi.LAN.TEU, //'TEU',
|
|
|
|
|
align: 'right',
|
|
|
|
|
width: 80
|
|
|
|
|
}, {
|
|
|
|
|
sortable: true,
|
|
|
|
|
dataIndex: 'PKGS',
|
|
|
|
|
header: Zi.LAN.PKGS, //'件数',
|
|
|
|
|
renderer: function (value, cellmeta, record, rowIndex, columnIndex, store) { try { var lsValue = usMoney(value, 2, '', false); if (lsValue != "NaN") { value = lsValue; if (parseFloat(lsValue) < 0) { return '<SPAN style="COLOR: red">' + lsValue + '</SPAN>'; } } else { return value; } } catch (e) { return value; } return value; },
|
|
|
|
|
align: 'right',
|
|
|
|
|
width: 80
|
|
|
|
|
}, {
|
|
|
|
|
sortable: true,
|
|
|
|
|
dataIndex: 'KGS',
|
|
|
|
|
header: Zi.LAN.KGS2, //'毛重',
|
|
|
|
|
renderer: function (value, cellmeta, record, rowIndex, columnIndex, store) { try { var lsValue = usMoney(value, 2, '', false); if (lsValue != "NaN") { value = lsValue; if (parseFloat(lsValue) < 0) { return '<SPAN style="COLOR: red">' + lsValue + '</SPAN>'; } } else { return value; } } catch (e) { return value; } return value; },
|
|
|
|
|
align: 'right',
|
|
|
|
|
width: 80
|
|
|
|
|
}, {
|
|
|
|
|
sortable: true,
|
|
|
|
|
dataIndex: 'CBM',
|
|
|
|
|
header: Zi.LAN.CBM2, //'尺码',
|
|
|
|
|
// renderer: function (value, cellmeta, record, rowIndex, columnIndex, store) { try { var lsValue = usMoney(value, 2, '', false); if (lsValue != "NaN") { value = lsValue; if (parseFloat(lsValue) < 0) { return '<SPAN style="COLOR: red">' + lsValue + '</SPAN>'; } } else { return value; } } catch (e) { return value; } return value; },
|
|
|
|
|
align: 'right',
|
|
|
|
|
width: 80
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
_this = this;
|
|
|
|
|
this.storeCtnList.load({
|
|
|
|
|
params: { condition: sql },
|
|
|
|
|
callback: function (r, options, success) {
|
|
|
|
|
if (success) {
|
|
|
|
|
if (r.length != 0) {
|
|
|
|
|
for (i = 0; i < _this.storeCtnList.getCount(); i += 1) {
|
|
|
|
|
var itemindex = i + 1;
|
|
|
|
|
var memberyf = _this.storeCtnList.getAt(i);
|
|
|
|
|
_this.SumField.push({ name: 'C' + memberyf.data.CTNALL, type: 'number' });
|
|
|
|
|
_this.girdcolumsSum.push({
|
|
|
|
|
sortable: true,
|
|
|
|
|
dataIndex: 'C' + memberyf.data.CTNALL,
|
|
|
|
|
header: memberyf.data.CTNALL,
|
|
|
|
|
width: 80
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
_this.storeSumList = Ext.create('Ext.data.Store', {
|
|
|
|
|
pageSize: this.PageSize,
|
|
|
|
|
fields: _this.SumField,
|
|
|
|
|
remoteSort: true,
|
|
|
|
|
proxy: {
|
|
|
|
|
type: 'ajax',
|
|
|
|
|
url: '/MvcShipping/MsOpSeae/GetCancelCtnSum',
|
|
|
|
|
reader: {
|
|
|
|
|
id: '',
|
|
|
|
|
root: 'data',
|
|
|
|
|
totalProperty: 'totalCount'
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
_this.gridListSum.reconfigure(_this.storeSumList, _this.girdcolumsSum);
|
|
|
|
|
_this.storeSumList.load({
|
|
|
|
|
params: { condition: sql },
|
|
|
|
|
waitMsg: Zi.LAN.ZhengZaiChaXunShuJu, //"正在查询数据...",
|
|
|
|
|
scope: this
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
onClearSql: function () {
|
|
|
|
|
var form = this.formSearch.getForm();
|
|
|
|
|
form.reset();
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
onReStore:function(){
|
|
|
|
|
var selections = this.gridList.getSelectionModel().getSelection();
|
|
|
|
|
if (selections.length == 0) {
|
|
|
|
|
Ext.Msg.show({ title: Zi.LAN.TiShi, msg:'请选项要恢复的业务', icon: Ext.Msg.INFO, buttons: Ext.Msg.OK });
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
var reg = new RegExp("<", "g"); //创建正则RegExp对象
|
|
|
|
|
var stringObj = "";
|
|
|
|
|
var bodyAddDatas = [];
|
|
|
|
|
for (var i = 0; i < selections.length; i++) {
|
|
|
|
|
var rec = selections[i];
|
|
|
|
|
bodyAddDatas.push(rec);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Ext.MessageBox.confirm(Zi.LAN.TiShi,'确认要取消退舱吗?', function (btn) {
|
|
|
|
|
if (btn == 'yes') {
|
|
|
|
|
|
|
|
|
|
var jsonbodyAddDatas = ConvertRecordsToJsonAll(bodyAddDatas);
|
|
|
|
|
Ext.Msg.wait(Zi.LAN.ZhengZaiCaoZuoShuJu);
|
|
|
|
|
Ext.Ajax.request({
|
|
|
|
|
waitMsg: Zi.LAN.ZhengZaiCaoZuoShuJu,
|
|
|
|
|
url: '/MvcShipping/MsOpSeae/CancelShippingOrderList',
|
|
|
|
|
params: {
|
|
|
|
|
data: jsonbodyAddDatas,
|
|
|
|
|
type:0
|
|
|
|
|
},
|
|
|
|
|
callback: function (options, success, response) {
|
|
|
|
|
if (success) {
|
|
|
|
|
var jsonresult = Ext.JSON.decode(response.responseText);
|
|
|
|
|
if (jsonresult.Success) {
|
|
|
|
|
this.onDsQuery();
|
|
|
|
|
Ext.Msg.show({ title: Zi.LAN.TiShi, msg: jsonresult.Message, icon: Ext.Msg.INFO, buttons: Ext.Msg.OK });
|
|
|
|
|
}
|
|
|
|
|
else {
|
|
|
|
|
Ext.Msg.show({ title: Zi.LAN.ChuoWu, msg: jsonresult.Message, icon: Ext.Msg.ERROR, buttons: Ext.Msg.OK });
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
failure: function (response, options) {
|
|
|
|
|
Ext.Msg.show({ title: Zi.LAN.JingGao, msg: Zi.LAN.FuWuQiXiangYingChuCuo, icon: Ext.Msg.INFO, buttons: Ext.Msg.OK });
|
|
|
|
|
},
|
|
|
|
|
success: function (response, options) { },
|
|
|
|
|
scope: this
|
|
|
|
|
}); //end Ext.Ajax.request
|
|
|
|
|
}
|
|
|
|
|
}, this);
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
getCondition: function () {
|
|
|
|
|
var form = this.formSearch.getForm();
|
|
|
|
|
// var form2 = this.formSearch2.getForm();
|
|
|
|
|
if (!form.isValid()) {
|
|
|
|
|
Ext.Msg.alert(Zi.LAN.TiShi, '查询条件赋值错误,请检查。');
|
|
|
|
|
return '';
|
|
|
|
|
}
|
|
|
|
|
//隐藏查询面板
|
|
|
|
|
// this.panelSearch.hide();
|
|
|
|
|
this.isShowAdvancedQuery = 0;
|
|
|
|
|
//
|
|
|
|
|
var sql = 'ISCANCEL=1';
|
|
|
|
|
|
|
|
|
|
//#region formSearch 查询面板
|
|
|
|
|
//编号包括(主提单号)
|
|
|
|
|
var MblNo = form.findField('MblNo').getValue();
|
|
|
|
|
sql = sql + getAndConSql(sql, MblNo, "(B.MblNo like '%" + MblNo + "%' or B.CONTRACTNO like '%" + MblNo + "%' or B.CUSTNO like '%" + MblNo + "%' or B.HBLNO like '%"
|
|
|
|
|
+ MblNo + "%' or B.ORDERNO like '%" + MblNo + "%' or B.APPLYNO like '%" + MblNo + "%' )");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var HblNo = form.findField('HblNo').getValue();
|
|
|
|
|
sql = sql + getAndConSql(sql, HblNo, "(B.HBLNO like '%"
|
|
|
|
|
+ MblNo + "%' OR EXISTS (select 1 from op_seae_billmanage a where a.BSNO=B.BSNO AND a.HBLNO LIKE '" + MblNo + "') )");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//客户名称
|
|
|
|
|
var CUSTOMERNAME = form.findField('CUSTOMERNAME').getValue();
|
|
|
|
|
sql = sql + getAndConSql(sql, CUSTOMERNAME, "B.CUSTOMERNAME='" + CUSTOMERNAME + "'");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//到港日期
|
|
|
|
|
var ETDbgn = form.findField('ETDbgn').getRawValue();
|
|
|
|
|
sql = sql + getAndConSql(sql, ETDbgn, "B.ETD >='" + ETDbgn + "'");
|
|
|
|
|
var ETDend = form.findField('ETDend').getRawValue();
|
|
|
|
|
sql = sql + getAndConSql(sql, ETDend, "B.ETD <='" + ETDend + "'");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//操作人
|
|
|
|
|
var OP = form.findField('OP').getValue();
|
|
|
|
|
sql = sql + getAndConSql(sql, OP, "B.OP='" + OP + "'");
|
|
|
|
|
|
|
|
|
|
//揽货人
|
|
|
|
|
var SALE = form.findField('SALE').getValue();
|
|
|
|
|
sql = sql + getAndConSql(sql, SALE, "B.SALE='" + SALE + "'");
|
|
|
|
|
|
|
|
|
|
//航线
|
|
|
|
|
var LANE = form.findField('LANE').getValue();
|
|
|
|
|
sql = sql + getAndConSql(sql, LANE, "B.LANE='" + LANE + "'");
|
|
|
|
|
|
|
|
|
|
// //会计期间
|
|
|
|
|
// var ACCDATE = form.findField('ACCDATE').getRawValue();
|
|
|
|
|
// sql = sql + getAndConSql(sql, ACCDATE, "B.ACCDATE='" + ACCDATE + "'");
|
|
|
|
|
|
|
|
|
|
// //船名
|
|
|
|
|
// var VESSEL = form.findField('VESSEL').getValue();
|
|
|
|
|
// sql = sql + getAndConSql(sql, VESSEL, "B.VESSEL like '%" + VESSEL + "%'");
|
|
|
|
|
|
|
|
|
|
// //航次
|
|
|
|
|
// var VOYNO = form.findField('VOYNO').getValue();
|
|
|
|
|
// sql = sql + getAndConSql(sql, VOYNO, "B.VOYNO like '%" + VOYNO + "%'");
|
|
|
|
|
|
|
|
|
|
// //装货港
|
|
|
|
|
// var PORTLOAD = form.findField('PORTLOAD').getValue();
|
|
|
|
|
// sql = sql + getAndConSql(sql, PORTLOAD, "B.PORTLOAD like '%" + PORTLOAD + "%'");
|
|
|
|
|
|
|
|
|
|
// //卸货港
|
|
|
|
|
// var PORTDISCHARGE = form.findField('PORTDISCHARGE').getValue();
|
|
|
|
|
// sql = sql + getAndConSql(sql, PORTDISCHARGE, "B.PORTDISCHARGE like '%" + PORTDISCHARGE + "%'");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// //船公司
|
|
|
|
|
// var CARRIER = form.findField('CARRIER').getValue();
|
|
|
|
|
// sql = sql + getAndConSql(sql, CARRIER, "B.CARRIER='" + CARRIER + "'");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// //代理
|
|
|
|
|
// var AGENTID = form.findField('AGENTID').getValue();
|
|
|
|
|
// sql = sql + getAndConSql(sql, AGENTID, "B.AGENTID='" + AGENTID + "'");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// //费用状态
|
|
|
|
|
// var FEESTATUS = form.findField('FEESTATUS').getValue();
|
|
|
|
|
// if (FEESTATUS != null) {
|
|
|
|
|
// if (FEESTATUS.toString().trim() == "锁定") {
|
|
|
|
|
// sql = sql + getAndConSql(sql, FEESTATUS, "B.FEESTATUS=1");
|
|
|
|
|
// }
|
|
|
|
|
// else if (FEESTATUS.toString().trim() == "未锁定") {
|
|
|
|
|
// sql = sql + getAndConSql(sql, FEESTATUS, "B.FEESTATUS=0");
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//#endregion formSearch
|
|
|
|
|
|
|
|
|
|
//#region formSearch2 隐藏查询面板
|
|
|
|
|
// //建单日期
|
|
|
|
|
// var CREATETIMEbgn = form2.findField('CREATETIMEbgn').getRawValue();
|
|
|
|
|
// sql = sql + getAndConSql(sql, CREATETIMEbgn, "B.CREATETIME >='" + CREATETIMEbgn + "'");
|
|
|
|
|
// var CREATETIMEend = form2.findField('CREATETIMEend').getRawValue();
|
|
|
|
|
// sql = sql + getAndConSql(sql, CREATETIMEend, "B.CREATETIME <='" + CREATETIMEend + "'");
|
|
|
|
|
|
|
|
|
|
// //接单日期
|
|
|
|
|
// var BSDATEbgn = form2.findField('BSDATEbgn').getRawValue();
|
|
|
|
|
// sql = sql + getAndConSql(sql, BSDATEbgn, "B.BSDATE >='" + BSDATEbgn + "'");
|
|
|
|
|
// var BSDATEend = form2.findField('BSDATEend').getRawValue();
|
|
|
|
|
// sql = sql + getAndConSql(sql, BSDATEend, "B.BSDATE <='" + BSDATEend + "'");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// //操作人
|
|
|
|
|
// var OP = form2.findField('OP').getValue();
|
|
|
|
|
// sql = sql + getAndConSql(sql, OP, "B.OP='" + OP + "'");
|
|
|
|
|
|
|
|
|
|
// //揽货人
|
|
|
|
|
// var SALE = form2.findField('SALE').getValue();
|
|
|
|
|
// sql = sql + getAndConSql(sql, SALE, "B.SALE='" + SALE + "'");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// // //录入人
|
|
|
|
|
// // var INPUTBY = form2.findField('INPUTBY').getValue();
|
|
|
|
|
// // sql = sql + getAndConSql(sql, INPUTBY, "INPUTBY='" + INPUTBY + "'");
|
|
|
|
|
|
|
|
|
|
// // //
|
|
|
|
|
// // var BSTYPE = form2.findField('BSTYPE').getValue();
|
|
|
|
|
// // sql = sql + getAndConSql(sql, BSTYPE, "BSTYPE='" + BSTYPE + "'");
|
|
|
|
|
|
|
|
|
|
// //牌号
|
|
|
|
|
// var CNTRTOTAL = form2.findField('CNTRTOTAL').getValue();
|
|
|
|
|
// sql = sql + getAndConSql(sql, CNTRTOTAL, "B.CNTRTOTAL like '%" + CNTRTOTAL + "%'");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// //业务状态
|
|
|
|
|
// var BSSTATUS = form2.findField('BSSTATUS').getValue();
|
|
|
|
|
// if (BSSTATUS != null) {
|
|
|
|
|
// if (BSSTATUS.toString().trim() == "锁定") {
|
|
|
|
|
// sql = sql + getAndConSql(sql, BSSTATUS, "B.BSSTATUS=1");
|
|
|
|
|
// }
|
|
|
|
|
// else if (BSSTATUS.toString().trim() == "未锁定") {
|
|
|
|
|
// sql = sql + getAndConSql(sql, BSSTATUS, "B.BSSTATUS=0");
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// // //车队
|
|
|
|
|
// // var TRUCKER = form2.findField('TRUCKER').getValue();
|
|
|
|
|
// // sql = sql + getAndConSql(sql, TRUCKER, "TRUCKER='" + TRUCKER + "'");
|
|
|
|
|
|
|
|
|
|
// // //报关行
|
|
|
|
|
// // var CUSTOMSER = form2.findField('CUSTOMSER').getValue();
|
|
|
|
|
// // sql = sql + getAndConSql(sql, CUSTOMSER, "CUSTOMSER='" + CUSTOMSER + "'");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// //业务来源
|
|
|
|
|
// var BSSOURCE = form2.findField('BSSOURCE').getValue();
|
|
|
|
|
// sql = sql + getAndConSql(sql, BSSOURCE, "B.BSSOURCE='" + BSSOURCE + "'");
|
|
|
|
|
|
|
|
|
|
// //来源明细
|
|
|
|
|
// var BSSOURCEDETAIL = form2.findField('BSSOURCEDETAIL').getValue();
|
|
|
|
|
// sql = sql + getAndConSql(sql, BSSOURCEDETAIL, "B.BSSOURCEDETAIL='" + BSSOURCEDETAIL + "'");
|
|
|
|
|
|
|
|
|
|
// //装运方式
|
|
|
|
|
// var BLTYPE = form2.findField('BLTYPE').getValue();
|
|
|
|
|
// sql = sql + getAndConSql(sql, BLTYPE, "B.BLTYPE='" + BLTYPE + "'");
|
|
|
|
|
|
|
|
|
|
// // //备注
|
|
|
|
|
// // var REMARK = form2.findField('REMARK').getValue();
|
|
|
|
|
// // sql = sql + getAndConSql(sql, REMARK, "B.REMARK like '%" + REMARK + "%'");
|
|
|
|
|
//#endregion formSearch2
|
|
|
|
|
|
|
|
|
|
return sql;
|
|
|
|
|
},
|
|
|
|
|
//#endregion
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//#region 打印
|
|
|
|
|
Print: function () {
|
|
|
|
|
|
|
|
|
|
_this = this;
|
|
|
|
|
if (this.storeList.getCount() == 0) {
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var bsno = '11111';
|
|
|
|
|
var selections = this.gridList.getSelectionModel().getSelection();
|
|
|
|
|
if (selections.length != 0) {
|
|
|
|
|
var record = selections[0];
|
|
|
|
|
bsno = record.data.BSNO;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var sortstr = 'ETD,MBLNO ';
|
|
|
|
|
|
|
|
|
|
if (this.sortfield != '' && this.sortdire != '') {
|
|
|
|
|
|
|
|
|
|
sortstr = this.sortfield + ' ' + this.sortdire;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Ext.Msg.wait(Zi.LAN.ZhengZaiCaoZuoShuJu);
|
|
|
|
|
Ext.Ajax.request({
|
|
|
|
|
waitMsg: Zi.LAN.ZhengZaiCaoZuoShuJu,
|
|
|
|
|
url: '/MvcShipping/MsOpSeae/GetDataListStr',
|
|
|
|
|
scope: this,
|
|
|
|
|
params: {
|
|
|
|
|
condition: _this.sqlcontext,
|
|
|
|
|
printstr: 'true',
|
|
|
|
|
sort: sortstr
|
|
|
|
|
},
|
|
|
|
|
callback: function (options, success, response) {
|
|
|
|
|
if (success) {
|
|
|
|
|
Ext.MessageBox.hide();
|
|
|
|
|
var jsonresult = Ext.JSON.decode(response.responseText);
|
|
|
|
|
if (jsonresult.Success) {
|
|
|
|
|
var returnstr = jsonresult.data;
|
|
|
|
|
var condition = jsonresult.Message;
|
|
|
|
|
if (condition != '') condition = ' where ' + condition;
|
|
|
|
|
|
|
|
|
|
var printType = 'MSOPSEAELIST';
|
|
|
|
|
var sql1 = returnstr;
|
|
|
|
|
var sql2 = "select * from op_seae where BSNO='" + bsno + "'";
|
|
|
|
|
var sql3 = "select CUSTOMERNAME,COUNT(BSNO) BLCOUNT,SUM(TEU) TEU from op_seae B " + condition + " group by CUSTOMERNAME";
|
|
|
|
|
var sql4 = "select CARRIER,COUNT(BSNO) BLCOUNT,SUM(TEU) TEU from op_seae B " + condition + " group by CARRIER";
|
|
|
|
|
var sql5 = "select OP,COUNT(BSNO) BLCOUNT,SUM(TEU) TEU from op_seae B " + condition + " group by OP";
|
|
|
|
|
var sql6 = "select COUNT(BSNO) BLCOUNT,SUM(TEU) TEU from op_seae B " + condition;
|
|
|
|
|
|
|
|
|
|
PrintComm(printType, sql1, sql2, sql3, sql4, sql5, sql6);
|
|
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
Ext.Msg.show({ title: Zi.LAN.ChuoWu, msg: jsonresult.Message, icon: Ext.Msg.ERROR, buttons: Ext.Msg.OK });
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
Ext.Msg.show({ title: Zi.LAN.JingGao, msg: Zi.LAN.FuWuQiXiangYingChuCuo, icon: Ext.Msg.ERROR, buttons: Ext.Msg.OK });
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
PrintSelect: function () {
|
|
|
|
|
|
|
|
|
|
_this = this;
|
|
|
|
|
if (this.storeList.getCount() == 0) {
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
var selectedRecords = [];
|
|
|
|
|
var storeadd = null;
|
|
|
|
|
selectedRecords = this.GridCheckBoxModel.selected.items;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (selectedRecords.length == 0) {
|
|
|
|
|
Ext.Msg.show({ title: Zi.LAN.TiShi, msg: Zi.LAN.QingXianXuanZeYeWu, icon: Ext.Msg.INFO, buttons: Ext.Msg.OK });
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var sortstr = 'MBLNO desc';
|
|
|
|
|
|
|
|
|
|
if (this.sortfield != '' && this.sortdire != '') {
|
|
|
|
|
|
|
|
|
|
sortstr = this.sortfield + ' ' + this.sortdire;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var feeGidSql = '';
|
|
|
|
|
for (var i = 0; i < selectedRecords.length; i++) {
|
|
|
|
|
var record = selectedRecords[i];
|
|
|
|
|
var feeGId = "'" + record.get('BSNO') + "'";
|
|
|
|
|
if (feeGidSql == '') {
|
|
|
|
|
feeGidSql = feeGId;
|
|
|
|
|
} else {
|
|
|
|
|
feeGidSql = feeGidSql + "," + feeGId;
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
var bsno = '11111';
|
|
|
|
|
var mblno = '';
|
|
|
|
|
var selections = this.gridList.getSelectionModel().getSelection();
|
|
|
|
|
if (selections.length != 0) {
|
|
|
|
|
var record = selections[0];
|
|
|
|
|
bsno = record.data.BSNO;
|
|
|
|
|
mblno = record.data.MBLNO;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var printType = 'MSOPSEAELISTSELECT';
|
|
|
|
|
var sql1 = "select *,(SELECT TOP 1 STATUS FROM OP_STATUS WHERE BSNO=op_seae.BSNO ORDER BY COMPTIME DESC,INPUTTIME DESC) as OPSTATUS from op_seae WHERE MASTERNO IN (" + feeGidSql + ") order by " + sortstr;
|
|
|
|
|
var sql2 = "select *,(SELECT TOP 1 STATUS FROM OP_STATUS WHERE BSNO=op_seae.BSNO ORDER BY COMPTIME DESC,INPUTTIME DESC) as OPSTATUS from op_seae where BSNO='" + bsno + "'";
|
|
|
|
|
var sql3 = "";
|
|
|
|
|
var sql4 = "";
|
|
|
|
|
var sql5 = "";
|
|
|
|
|
var sql6 = "";
|
|
|
|
|
|
|
|
|
|
PrintComm(printType, sql1, sql2, sql3, sql4, sql5, sql6, mblno);
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Print_FDTZ: function () {
|
|
|
|
|
|
|
|
|
|
_this = this;
|
|
|
|
|
if (this.storeList.getCount() == 0) {
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var bsno = '11111';
|
|
|
|
|
var selections = this.gridList.getSelectionModel().getSelection();
|
|
|
|
|
if (selections.length != 0) {
|
|
|
|
|
var record = selections[0];
|
|
|
|
|
bsno = record.data.BSNO;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var sortstr = 'ETD,MBLNO ';
|
|
|
|
|
|
|
|
|
|
if (this.sortfield != '' && this.sortdire != '') {
|
|
|
|
|
|
|
|
|
|
sortstr = this.sortfield + ' ' + this.sortdire;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Ext.Msg.wait(Zi.LAN.ZhengZaiCaoZuoShuJu);
|
|
|
|
|
Ext.Ajax.request({
|
|
|
|
|
waitMsg: Zi.LAN.ZhengZaiCaoZuoShuJu,
|
|
|
|
|
url: '/MvcShipping/MsOpSeae/GetDataListStr',
|
|
|
|
|
scope: this,
|
|
|
|
|
params: {
|
|
|
|
|
condition: _this.sqlcontext,
|
|
|
|
|
printstr: 'true',
|
|
|
|
|
sort: sortstr
|
|
|
|
|
},
|
|
|
|
|
callback: function (options, success, response) {
|
|
|
|
|
if (success) {
|
|
|
|
|
Ext.MessageBox.hide();
|
|
|
|
|
var jsonresult = Ext.JSON.decode(response.responseText);
|
|
|
|
|
if (jsonresult.Success) {
|
|
|
|
|
var returnstr = jsonresult.data;
|
|
|
|
|
var condition = jsonresult.Message;
|
|
|
|
|
if (condition != '') condition = ' where ' + condition;
|
|
|
|
|
|
|
|
|
|
var printType = 'MSOPSEAE_FDTZ';
|
|
|
|
|
var sql1 = returnstr;
|
|
|
|
|
var sql2 = "select * from op_seae where BSNO='" + bsno + "'";
|
|
|
|
|
var sql3 = "select CUSTOMERNAME,COUNT(BSNO) BLCOUNT,SUM(TEU) TEU from op_seae B " + condition + " group by CUSTOMERNAME";
|
|
|
|
|
var sql4 = "select CARRIER,COUNT(BSNO) BLCOUNT,SUM(TEU) TEU from op_seae B " + condition + " group by CARRIER";
|
|
|
|
|
var sql5 = "select OP,COUNT(BSNO) BLCOUNT,SUM(TEU) TEU from op_seae B " + condition + " group by OP";
|
|
|
|
|
var sql6 = " select '" + Ext.getCmp("REASON").getValue() + "' 放单通知说明,'" + _this.结费类型 + "' 结费类型,'" + _this.欠费超期 + "' 欠费超期,'" + _this.累计欠费 + "' 累计欠费,'" + _this.信用额度 + "' 信用额度";
|
|
|
|
|
|
|
|
|
|
PrintComm(printType, sql1, sql2, sql3, sql4, sql5, sql6);
|
|
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
Ext.Msg.show({ title: Zi.LAN.ChuoWu, msg: jsonresult.Message, icon: Ext.Msg.ERROR, buttons: Ext.Msg.OK });
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
Ext.Msg.show({ title: Zi.LAN.JingGao, msg: Zi.LAN.FuWuQiXiangYingChuCuo, icon: Ext.Msg.ERROR, buttons: Ext.Msg.OK });
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
onExportClick: function () {
|
|
|
|
|
|
|
|
|
|
_this = this;
|
|
|
|
|
if (this.storeList.getCount() == 0) {
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var bsno = '11111';
|
|
|
|
|
var selections = this.gridList.getSelectionModel().getSelection();
|
|
|
|
|
if (selections.length != 0) {
|
|
|
|
|
var record = selections[0];
|
|
|
|
|
bsno = record.data.BSNO;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var sortstr = 'ETD,MBLNO ';
|
|
|
|
|
|
|
|
|
|
if (this.sortfield != '' && this.sortdire != '') {
|
|
|
|
|
|
|
|
|
|
sortstr = this.sortfield + ' ' + this.sortdire;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Ext.Msg.wait(Zi.LAN.ZhengZaiCaoZuoShuJu);
|
|
|
|
|
Ext.Ajax.request({
|
|
|
|
|
waitMsg: Zi.LAN.ZhengZaiCaoZuoShuJu,
|
|
|
|
|
url: '/MvcShipping/MsOpSeae/GetDataListStr',
|
|
|
|
|
scope: this,
|
|
|
|
|
params: {
|
|
|
|
|
condition: _this.sqlcontext,
|
|
|
|
|
printstr: 'true',
|
|
|
|
|
sort: sortstr
|
|
|
|
|
},
|
|
|
|
|
callback: function (options, success, response) {
|
|
|
|
|
if (success) {
|
|
|
|
|
Ext.MessageBox.hide();
|
|
|
|
|
var jsonresult = Ext.JSON.decode(response.responseText);
|
|
|
|
|
if (jsonresult.Success) {
|
|
|
|
|
var returnstr = jsonresult.data;
|
|
|
|
|
var sql1 = returnstr;
|
|
|
|
|
sql1 = sql1.replace(/\+/g, "@@@")
|
|
|
|
|
if (sql1 != '') {
|
|
|
|
|
GridExportBySql(sql1, this.formname, '海运出口退舱列表.xls');
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
Ext.Msg.show({ title: Zi.LAN.ChuoWu, msg: jsonresult.Message, icon: Ext.Msg.ERROR, buttons: Ext.Msg.OK });
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
Ext.Msg.show({ title: Zi.LAN.JingGao, msg: Zi.LAN.FuWuQiXiangYingChuCuo, icon: Ext.Msg.ERROR, buttons: Ext.Msg.OK });
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
//#endregion
|
|
|
|
|
|
|
|
|
|
//#region 增加cover模块
|
|
|
|
|
readingPaneChange: function (btn) {
|
|
|
|
|
this.east.add(this.PluginCover);
|
|
|
|
|
switch (btn.text) {
|
|
|
|
|
case '显示Cover':
|
|
|
|
|
this.east.show();
|
|
|
|
|
Ext.getCmp('btnCover').setText('隐藏Cover');
|
|
|
|
|
_this.RefreshCover(this.bsno);
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
this.east.hide();
|
|
|
|
|
Ext.getCmp('btnCover').setText('显示Cover');
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
createEast: function () {
|
|
|
|
|
this.east = Ext.create('Ext.panel.Panel', {
|
|
|
|
|
layout: 'fit',
|
|
|
|
|
region: 'east',
|
|
|
|
|
title: 'COVER',
|
|
|
|
|
flex: 1,
|
|
|
|
|
split: true,
|
|
|
|
|
hidden: true,
|
|
|
|
|
width: 150,
|
|
|
|
|
minWidth: 150,
|
|
|
|
|
border: false
|
|
|
|
|
});
|
|
|
|
|
return this.east;
|
|
|
|
|
},
|
|
|
|
|
RefreshCover: function (bsno) {
|
|
|
|
|
this.PluginCover.loadCoverWithBSNO(bsno);
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
//#endregion
|
|
|
|
|
|
|
|
|
|
OprationSwap: function () {
|
|
|
|
|
var ret = new Array();
|
|
|
|
|
ret[0] = this.OprationStatus;
|
|
|
|
|
ret[1] = this.storeList;
|
|
|
|
|
ret[2] = this.SelectedRecord;
|
|
|
|
|
ret[3] = this.selectbsno;
|
|
|
|
|
ret[4] = 'op_seae';
|
|
|
|
|
ret[5] = this.storePLList;
|
|
|
|
|
ret[6] = this.selectfee;
|
|
|
|
|
return ret;
|
|
|
|
|
}
|
|
|
|
|
//
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
function fnSearch() {
|
|
|
|
|
steplay.fnSearch();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function fnClose() {
|
|
|
|
|
steplay.fnClose();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function fnClearText() {
|
|
|
|
|
steplay.fnClearText();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function fnBlur() {
|
|
|
|
|
steplay.fnBlur();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//监听Enter键自动提交事件
|
|
|
|
|
function keyboardEvent(event) {
|
|
|
|
|
//var keyCode = event.keyCode ? event.keyCode : event.which; //? event.which : event.charCode; //解决浏览器之间的差异问题
|
|
|
|
|
//if (keyCode == 13) {
|
|
|
|
|
//submitForm();
|
|
|
|
|
//alert("keydown");
|
|
|
|
|
steplay.fnSearch();
|
|
|
|
|
//}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|