You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

6717 lines
262 KiB
JavaScript

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

///<reference path="../../../../Views/../TruckMng/Scripts/vswd-ext_2.0.2.js" />
Ext.namespace('DsTruck');
var APPUsing=0;
DsTruck.XXHEdit = function (config) {
Ext.applyIf(this, config);
this.initUIComponents();
window.DsTruck.XXHEdit.superclass.constructor.call(this);
};
Ext.define('DsShipping.ux.OpDefValue', {
extend: 'Ext.data.Model',
fields: [
{ name: 'FIELDNAME', type: 'string' },
{ name: 'DEFVALUE', type: 'string' },
{ name: 'ISMUST', type: 'string' },
{ name: 'ISCOLOR', type: 'string' }
]
});
function getSaved(){
var CargoDirty=DsTruck.GetDirty(panelEdit.storeCargo,panelEdit.CargoDel);
var ReceiptDirty=DsTruck.GetDirty(panelEdit.storeReceipt,panelEdit.bodyDel);
var KCDirty=DsTruck.GetDirty(panelEdit.storeKC,panelEdit.KCDel);
//var ChfeeDirty=DsTruck.GetDirty(panelEdit.storeBodyChFee,panelEdit.feeBodyDel);
//var Chfee_YFDirty=DsTruck.GetDirty(panelEdit.storeBodyChFee_YF,panelEdit.feeBodyDel);
if (panelEdit.formEdit.getForm().isDirty()== true || CargoDirty==true|| ReceiptDirty==true
|| KCDirty==true)
{
return true;
}
else return false;
}
Ext.extend(DsTruck.XXHEdit, Ext.Panel, {
parentWin: null,
OpStatus: 'edit',
StoreList: null,
editRecord: null,
_this:null,
_First: true,
_buyer:"",
initUIComponents: function () {
this.storeMustBe = Ext.create('Ext.data.Store', {
model: 'DsShipping.ux.OpDefValue',
remoteSort: true,
async: false,
proxy: {
type: 'ajax',
url: '/MvcShipping/MsCodeOpMustField/GetDataList',
reader: {
id: 'GID',
root: 'data',
totalProperty: 'totalCount'
}
}
});
this.bodyDel = [];
this.CargoDel = [];
this.AppstateDel = [];
this.KCDel = [];
this.Loading = true;
this.seller="";
this.buyer="";
this.TRADINGAGENCY="";
this.BSNO="";
this.feeSerialNo = 0;
this.feeBodyDel = [];
this.CargoListName = "CargoList_Port";
//#region 枚举参照相关(编辑form)
this.comboxMainstate = getEnumcombox({ LABEL: '合同状态', NAME: 'Mainstate', FLEX: 5, enumTypeId: 3 });
this.comboxMainstate2 = getEnumcombox({ LABEL: '合同状态', NAME: 'Mainstate', FLEX: 5, enumTypeId: 3 });
this.storeYN = Ext.create('DsExt.ux.RefEnumStore', {});
this.storeYN.load({ params: { enumTypeId: 0 } });
//this.storePrinted = Ext.create('DsExt.ux.RefEnumStore', {});
//this.storePrinted.load({ params: { enumTypeId: 0 } });
this.comboxPrinted = Ext.create('DsExt.ux.RefEnumCombox', {
fieldLabel: '发票打印完成',
forceSelection: true,
readOnly: true,
store: this.storeYN,
name: 'Printed'
});
this.comboxPrinted2 = Ext.create('DsExt.ux.RefEnumCombox', {
fieldLabel: '发票打印完成',
forceSelection: true,
readOnly: true,
store: this.storeYN,
name: 'Printed'
});
//this.storeWriteoffs = Ext.create('DsExt.ux.RefEnumStore', {});
//this.storeWriteoffs.load({ params: { enumTypeId: 0 } });
this.comboxWriteoffs = Ext.create('DsExt.ux.RefEnumCombox', {
fieldLabel: '核销完成', flex: 1,
forceSelection: true,
store: this.storeYN,
name: 'Writeoffs'
});
this.comboxWriteoffs2 = Ext.create('DsExt.ux.RefEnumCombox', {
fieldLabel: '核销完成', readOnly: true,
forceSelection: true,
store: this.storeYN,
name: 'Writeoffs'
});
//this.storeCIQ_canbesearch = Ext.create('DsExt.ux.RefEnumStore', {});
//this.storeCIQ_canbesearch.load({ params: { enumTypeId: 0} });
this.comboxCIQ_canbesearch = Ext.create('DsExt.ux.RefEnumCombox', {
fieldLabel: '卫生证是否可查',
forceSelection: true,
store: this.storeYN,
name: 'CIQ_canbesearch'
});
this.comboxCIQ_canbesearch2 = Ext.create('DsExt.ux.RefEnumCombox', {
fieldLabel: '卫生证是否可查',
forceSelection: true, readOnly: true,
store: this.storeCIQ_canbesearch,
name: 'CIQ_canbesearch'
});
//this.storeAutoAPP = Ext.create('DsExt.ux.RefEnumStore', {});
//this.storeAutoAPP.load({ params: { enumTypeId: 0 } });
this.comboxAutoAPP = Ext.create('DsExt.ux.RefEnumCombox', {
fieldLabel: '自动证', flex: 1,
forceSelection: true,
async: false,
store: this.storeYN,
name: 'AutoAPP'
});
this.comboxAutoAPP2 = Ext.create('DsExt.ux.RefEnumCombox', {
fieldLabel: '自动证',
forceSelection: true, readOnly: true,
store: this.storeYN,
name: 'AutoAPP'
});
this.storeBillType = Ext.create('DsExt.ux.RefEnumStore', {});
this.storeBillType.load({ params: { enumTypeId: 6 } });
this.comboxBillType = Ext.create('DsExt.ux.RefEnumCombox', {
fieldLabel: '提单提交方式',
async: false,
forceSelection: true,
store: this.storeBillType,
name: 'BillType'
});
this.comboxBillType2 = Ext.create('DsExt.ux.RefEnumCombox', {
fieldLabel: '提单提交方式',
async: false,
forceSelection: true, readOnly: true,
store: this.storeBillType,
name: 'BillType', flex: 1
});
//this.storeShipCompany = Ext.create('DsExt.ux.RefEnumStore', {});
////this.storeShipCompany.load({ params: { enumTypeId: 5 } });
//this.comboxShipCompany = Ext.create('DsExt.ux.RefEnumCombox', {
// fieldLabel: '船公司',
// async: false,
// forceSelection: true,
// store: this.storeShipCompany,
// name: 'ShipCompany_id'
//});
this.comboxShipCompany = getEnumcombox({ LABEL: '船公司', NAME: 'ShipCompany_id', FLEX: 5, enumTypeId: 5 });
//this.storeSecurityDeposit = Ext.create('DsExt.ux.RefEnumStore', {});
//this.storeSecurityDeposit.load({ params: { enumTypeId: 0 } });
this.comboxSecurityDeposit = Ext.create('DsExt.ux.RefEnumCombox', {
fieldLabel: '是否已交保证金',
forceSelection: true,
store: this.storeYN,
name: 'SecurityDeposit'
});
this.comboxSecurityDeposit2 = Ext.create('DsExt.ux.RefEnumCombox', {
fieldLabel: '是否已交保证金',
forceSelection: true, readOnly: true,
store: this.storeYN,
name: 'SecurityDeposit'
});
//this.storePaymentMethods = Ext.create('DsExt.ux.RefEnumStore', {});
////this.storePaymentMethods.load({ params: { enumTypeId: 4} });
//this.comboxPaymentMethods = Ext.create('DsExt.ux.RefEnumCombox', {
// fieldLabel: '付款方式',
// forceSelection: true,
// store: this.storePaymentMethods,
// name: 'PaymentMethods',flex:1
//});
this.comboxPaymentMethods = getEnumcombox({ LABEL: '付款方式', NAME: 'PaymentMethods', FLEX: 1, enumTypeId: 4 });
//this.storePaymentMethods2 = Ext.create('DsExt.ux.RefEnumStore', {});
//this.comboxPaymentMethods2 = Ext.create('DsExt.ux.RefEnumCombox', {
// fieldLabel: '付款方式',
// forceSelection: true,readOnly:true,
// store: this.storePaymentMethods2,
// name: 'PaymentMethods',flex:1
//});
this.comboxPaymentMethods2 = getEnumcombox({ LABEL: '付款方式', NAME: 'PaymentMethods', FLEX: 1, enumTypeId: 4 });
//this.storeTransactionMethod = Ext.create('DsExt.ux.RefEnumStore', {});
////this.storeTransactionMethod.load({ params: { enumTypeId: 1} });
//this.comboxTransactionMethod = Ext.create('DsExt.ux.RefTableCombox', {
// fieldLabel: '成交方式',readOnly:true,
// forceSelection: true,
// store: this.storeTransactionMethod,
// name: 'TransactionMethod',
// valueField: 'EnumValueId',
// displayField: 'EnumValueName',
// triggerAction: 'all',
// selectOnFocus: true,
// flex:1
//});
this.comboxTransactionMethod = getEnumcombox({ LABEL: '成交方式', NAME: 'TransactionMethod', FLEX: 1, enumTypeId: 1 });
//this.storeTransactionMethod2 = Ext.create('DsExt.ux.RefEnumStore', {});
//this.comboxTransactionMethod2 = Ext.create('DsExt.ux.RefTableCombox', {
// fieldLabel: '成交方式',readOnly:true,
// forceSelection: true,
// store: this.storeTransactionMethod2,
// name: 'TransactionMethod',
// valueField: 'EnumValueId',
// displayField: 'EnumValueName',
// triggerAction: 'all',
// selectOnFocus: true,
// flex:1
//});
this.comboxTransactionMethod2 = getEnumcombox({ LABEL: '成交方式', NAME: 'TransactionMethod', FLEX: 1, enumTypeId: 1 });
//this.storeport = Ext.create('DsExt.ux.RefEnumStore', {});
//this.storeport.load({ params: { enumTypeId: 10}});
//this.comboxport = Ext.create('DsExt.ux.RefEnumCombox', {
// fieldLabel: '目的港',readOnly:true,
// forceSelection: true,
// store: this.storeport,
// name: 'port'
//});
//表参照相关
this.storeCountry = Ext.create('DsExt.ux.RefTableStore', {
model: 'ConutryRef',
proxy: { url: '/CommMng/BasicDataRef/GetCountryRefList' }
});
this.storeTradeCountry = Ext.create('DsExt.ux.RefTableStore', {
model: 'ConutryRef',
proxy: { url: '/CommMng/BasicDataRef/GetCountryRefList' }
});
this.comboxCountry = Ext.create('DsExt.ux.RefTableCombox', {
fieldLabel: '进口国',
forceSelection: true,
matchFieldWidth: false,
store: this.storeCountry,
name: 'countryid',
valueField: 'countryid',
displayField: 'country_idandname',
listeners: {
focus: function (field, newValue, oldValue) {
if (this.storeCountry.getCount() <= 1) {
this.storeCountry.load({ params: { condition: "" } });
}
},
beforequery: function (e) {
return FilterCombox(e);
},
scope: this
}
});
this.comboxTradeCountry = Ext.create('DsExt.ux.RefTableCombox', {
fieldLabel: '贸易国',//readOnly:true,
//forceSelection: true,
//queryMode: 'remote',
flex: 1,
matchFieldWidth: false,
store: this.storeTradeCountry,
name: 'TRADECOUNTRY',
valueField: 'countryid',
displayField: 'country_idandname',
listeners: {
focus: function (field, newValue, oldValue) {
if (this.storeTradeCountry.getCount() <= 1) {
this.storeTradeCountry.load({ params: { condition: "" } });
}
},
beforequery: function (e) {
return FilterCombox(e);
},
scope: this
}
});
this.storeSeller = Ext.create('DsExt.ux.RefTableStore', {
model: 'Tradermb',
proxy: { url: '/CommMng/BasicDataRef/GetTrader' }
//,
//listeners: {
// beforeload: function (store, op, options) {
// Ext.apply(store.proxy.extraParams, { condition: " isagent=1 " });
// },
// scope: this
//}
});
//this.storeSeller.load({ params: { condition: " isagent=1 " } });
this.storeSeller2 = Ext.create('DsExt.ux.RefTableStore', {
model: 'Tradermb',
proxy: { url: '/CommMng/BasicDataRef/GetTrader' }
});
//this.storeSeller2.load({ params: { condition: " isagent=1 and isnull(isstop,0)=0 " } });
this.comboxSeller = Ext.create('DsExt.ux.RefTableCombox', {
fieldLabel: '贸易商',
queryMode: 'local',
matchFieldWidth: false,
async: false,
forceSelection: true,
store: this.storeSeller,
name: 'seller', id: "seller",
valueField: 'name',
displayField: 'codename',
listeners: {
focus: function (field, newValue, oldValue) {
if (this.storeSeller.getCount() <= 1) {
this.storeSeller.load({ params: { condition: " isagent=1 " } });
}
},
blur: function (field, newValue, oldValue) {
_this.comboxSeller.store = _this.storeSeller;
if (field.value == "") {
field.value = _this.seller;
}
if (field.displayTplData[0].ISSTOP == "True") {
alert("该往来单位已经停用");
}
},
beforequery: function (e) {
return FilterCombox(e);
},
scope: this
}
});
this.comboxSeller2 = Ext.create('DsExt.ux.RefTableCombox', {
fieldLabel: '贸易商',
queryMode: 'remote',
store: this.storeSeller2,
name: 'seller', readOnly: true,
valueField: 'name',
displayField: 'codename',
listeners: {
focus: function (field, newValue, oldValue) {
if (this.storeSeller.getCount() <= 1) {
this.storeSeller.load({ params: { condition: " isagent=1 and isnull(isstop,0)=0 " } });
}
},
beforeload: function (store, op, options) {
Ext.apply(store.proxy.extraParams, { condition: " isagent=1 and isnull(isstop,0)=0 " });
},
scope: this
}
});
this.storeBuyer = Ext.create('DsExt.ux.RefTableStore', {
model: 'Tradermb',
proxy: { url: '/CommMng/BasicDataRef/GetTrader' }
});
//this.storeBuyer.load({params: {condition: " isagentcn=1 "}});
this.storeBuyer2 = Ext.create('DsExt.ux.RefTableStore', {
model: 'Tradermb',
proxy: { url: '/CommMng/BasicDataRef/GetTrader' }
});
//this.storeBuyer2.load({params: {condition: " isagentcn=1 and isnull(isstop,0)=0 "}});
this.comboxBuyer = Ext.create('DsExt.ux.RefTableCombox', {
fieldLabel: '客户(购货方)', readOnly: true,
queryMode: 'remote',
forceSelection: true,
store: this.storeBuyer,
async: false,
name: 'buyer',
valueField: 'name',
displayField: 'codename',
listeners: {
beforeload: function (store, op, options) {
Ext.apply(store.proxy.extraParams, { condition: " isagentcn=1 " });
},
focus: function (field, newValue, oldValue) {
_this.buyer = field.value;
_this.comboxBuyer.store = _this.storeBuyer2;
},
blur: function (field, newValue, oldValue) {
_this.comboxBuyer.store = _this.storeBuyer;
if (field.value == "") {
field.value = _this.buyer;
}
if (field.displayTplData[0].ISSTOP == "True") {
alert("该往来单位已经停用");
}
},
scope: this
}
});
this.comboxBuyer2 = Ext.create('DsExt.ux.RefTableCombox', {
fieldLabel: '客户(购货方)', readOnly: true,
queryMode: 'remote',
store: this.storeBuyer2,
name: 'buyer',
valueField: 'name',
displayField: 'codename',
listeners: {
beforeload: function (store, op, options) {
Ext.apply(store.proxy.extraParams, { condition: " isagentcn=1 and isnull(isstop,0)=0 " });
},
scope: this
}
});
this.storeTRADINGAGENCY = Ext.create('DsExt.ux.RefTableStore', {
model: 'Tradermb',
proxy: { url: '/CommMng/BasicDataRef/GetTrader' }
});
//this.storeTRADINGAGENCY.load({ params: { condition: " ISTRADINGAGENCY=1"} });
this.comboxTRADINGAGENCY = Ext.create('DsExt.ux.RefTableCombox', {
fieldLabel: '订货方(中间商)',
//queryMode: 'remote',
matchFieldWidth: false,
//async: false,
forceSelection: true,
store: this.storeTRADINGAGENCY,
name: 'TRADINGAGENCY',
valueField: 'name',
displayField: 'codename',
flex: 1,
listeners: {
focus: function (field, newValue, oldValue) {
if (this.storeTRADINGAGENCY.getCount() <= 1) {
this.storeTRADINGAGENCY.load({ params: { condition: " ISTRADINGAGENCY=1 " } });
}
},
blur: function (field, newValue, oldValue) {
//alert(newValue);
if (field.displayTplData[0].ISSTOP == "True") {
alert("该往来单位已经停用");
}
},
scope: this
}
});
this.comboxTRADINGAGENCY2 = Ext.create('DsExt.ux.RefTableCombox', {
fieldLabel: '订货方(中间商)',
forceSelection: true,
store: this.storeTRADINGAGENCY,
name: 'TRADINGAGENCY',
valueField: 'name',
displayField: 'codename',
flex: 1,
listeners: {
focus: function (field, newValue, oldValue) {
if (this.storeTRADINGAGENCY.getCount() <= 1) {
this.storeTRADINGAGENCY.load({ params: { condition: " ISTRADINGAGENCY=1 " } });
}
},
blur: function (field, newValue, oldValue) {
//alert(newValue);
if (field.displayTplData[0].ISSTOP == "True") {
alert("该往来单位已经停用");
}
},
scope: this
}
});
//this.comboxSeller,this.comboxBuyer
//this.comboxCountry.addListener('select',
//function(combo, record, index) {
// var s = " countryid='" + combo.value + "'";
// this.storeCargoinfo.load({ params: { condition: s } });
//},
//this);
this.storeCreator = Ext.create('DsExt.ux.RefTableStore', {
model: 'DsTruckMng.ux.UserRefModel',
proxy: { url: '/CommMng/BasicDataRef/GetUserRefList' }
});
//this.storeUser.load({ params: { condition: "(ISDELETED=0 and ISDISABLE=0)" } });
this.comboxCreator = Ext.create('DsExt.ux.RefTableCombox', {
fieldLabel: '接单人', readOnly: true,
queryMode: 'remote',
forceSelection: true,
store: this.storeCreator,
name: 'creator',
valueField: 'UserCode',
displayField: 'CodeAndName'
});
this.storeAuditor = Ext.create('DsExt.ux.RefTableStore', {
model: 'DsTruckMng.ux.UserRefModel',
proxy: { url: '/CommMng/BasicDataRef/GetUserRefList' }
});
this.comboxAuditor = Ext.create('DsExt.ux.RefTableCombox', {
fieldLabel: '审单人', readOnly: true,
queryMode: 'remote',
forceSelection: true,
store: this.storeAuditor,
name: 'Auditor',
valueField: 'UserCode',
displayField: 'CodeAndName'
});
this.comboxFStatus = getEnumcombox({ LABEL: '融资状态', NAME: 'FinanceStatusREF', FLEX: 5, enumTypeId: 16 });
//this.storeSampling_need = Ext.create('DsExt.ux.RefEnumStore', {});
//this.storeSampling_need.load({ params: { enumTypeId: 0 } });
this.comboxSampling_need = Ext.create('DsExt.ux.RefEnumCombox', {
fieldLabel: '海关是否验货',
forceSelection: true,
store: this.storeYN,
name: 'Sampling_need'
});
this.comboxSampling_need2 = Ext.create('DsExt.ux.RefEnumCombox', {
fieldLabel: '海关是否验货',
forceSelection: true, readOnly: true,
store: this.storeYN,
name: 'Sampling_need'
});
//this.storeInspection_Storage = Ext.create('DsExt.ux.RefEnumStore', {});
//this.storeInspection_Storage.load({ params: { enumTypeId: 0 } });
this.comboxInspection_Storage = Ext.create('DsExt.ux.RefEnumCombox', {
fieldLabel: '是否商检慢检', flex: 1,
labelWidth: 77,
forceSelection: true,
store: this.storeYN,
name: 'Inspection_Storage'
});
this.comboxInspection_Storage2 = Ext.create('DsExt.ux.RefEnumCombox', {
fieldLabel: '是否商检慢检', flex: 1,
labelWidth: 77,
forceSelection: true, readOnly: true,
store: this.storeYN,
name: 'Inspection_Storage'
});
//this.storeISREFORM = Ext.create('DsExt.ux.RefEnumStore', {});
//this.storeISREFORM.load({ params: { enumTypeId: 0 } });
this.comboxISREFORM = Ext.create('DsExt.ux.RefEnumCombox', {
fieldLabel: '是否整改', flex: 1,
labelWidth: 77,
forceSelection: true,
store: this.storeYN,
name: 'ISREFORM'
});
this.comboxISREFORM2 = Ext.create('DsExt.ux.RefEnumCombox', {
fieldLabel: '是否整改', flex: 1,
labelWidth: 77,
forceSelection: true, readOnly: true,
store: this.storeYN,
name: 'ISREFORM'
});
//this.storeReceiptStatus = Ext.create('DsExt.ux.RefEnumStore', {});
//this.storeReceiptStatus.load({ params: { enumTypeId: 0 } });
this.comboxReceiptStatus = Ext.create('DsExt.ux.RefEnumCombox', {
fieldLabel: '单据是否完备',
forceSelection: true,
store: this.storeYN,
name: 'ReceiptStatus'
});
this.comboxReceiptStatus2 = Ext.create('DsExt.ux.RefEnumCombox', {
fieldLabel: '单据是否完备',
forceSelection: true,
store: this.storeYN,
name: 'ReceiptStatus',
flex: 1
});
this.storeRCVMode = Ext.create('DsExt.ux.RefEnumStore', {});
this.storeRCVMode.load({ params: { enumTypeId: 23 } });
this.comboxRCVMode = Ext.create('DsExt.ux.RefEnumCombox', {
//labelWidth:70,
fieldLabel: '收单据模式', id: "RCVMode",
forceSelection: true,
store: this.storeRCVMode,
name: 'RCVMode'
});
this.comboxRCVMode2 = Ext.create('DsExt.ux.RefEnumCombox', {
//labelWidth:70,
fieldLabel: '收单据模式',
forceSelection: true,
store: this.storeRCVMode, flex: 2,
name: 'RCVMode'
});
this.storeBUZTYPE = Ext.create('DsExt.ux.RefEnumStore', {});
this.storeBUZTYPE.load({ params: { enumTypeId: 27 } });
this.comboxBUZTYPE = Ext.create('DsExt.ux.RefEnumCombox', {
fieldLabel: '业务类型',
forceSelection: true,
store: this.storeBUZTYPE,
name: 'BUZTYPE'
});
this.comboxInventoryState = Ext.create('DsExt.ux.RefEnumCombox', {
name: 'InventoryState',
store: new Ext.data.ArrayStore({
fields: ['value', 'text'],
data: [[0, '过车'], [1, '直送'], [2, '入库'], [3, '部分过车']]
}),
model: "local",
forceSelection: true,
valueField: 'value',
displayField: 'text',
fieldLabel: '库存状态',
emptyText: "请选择库存状态"
});
this.comboxBUZTYPE2 = Ext.create('DsExt.ux.RefEnumCombox', {
fieldLabel: '业务类型',
forceSelection: true,
store: this.storeBUZTYPE,
name: 'BUZTYPE', flex: 2
});
this.storeInspection_Buyer = Ext.create('DsExt.ux.RefTableStore', {
model: 'Tradermb',
proxy: { url: '/CommMng/BasicDataRef/GetTrader' }
});
//this.storeInspection_Buyer.load({ params: { condition: "" } });
this.comboxInspection_Buyer = Ext.create('DsExt.ux.RefTableCombox', {
fieldLabel: '商检收货单位',
//queryMode: 'remote',
queryMode: 'local',
matchFieldWidth: false,
forceSelection: true,
store: this.storeInspection_Buyer,
name: 'Inspection_Buyer',
valueField: 'name',
displayField: 'codename',
listeners: {
focus: function (field, newValue, oldValue) {
if (this.storeInspection_Buyer.getCount() <= 1) {
this.storeInspection_Buyer.load({ params: { condition: "" } });
}
},
blur: function (field, newValue, oldValue) {
//alert(newValue);
if (field.displayTplData[0].ISSTOP == "True") {
alert("该往来单位已经停用");
}
},
scope: this
}
});
this.storeInspection_Buyer2 = Ext.create('DsExt.ux.RefTableStore', {
model: 'Tradermb',
proxy: { url: '/CommMng/BasicDataRef/GetTrader' }
});
this.comboxInspection_Buyer2 = Ext.create('DsExt.ux.RefTableCombox', {
fieldLabel: '商检收货单位', flex: 2,
//forceSelection: true,
queryMode: 'remote',
readOnly: true,
store: this.storeInspection_Buyer2,
name: 'Inspection_Buyer',
valueField: 'name',
displayField: 'codename',
listeners: {
blur: function (field, newValue, oldValue) {
//alert(newValue);
if (field.displayTplData[0].ISSTOP == "True") {
alert("该往来单位已经停用");
}
},
scope: this
}
});
this.StoreDateCurr = Ext.create('DsExt.ux.RefTableStore', {
model: 'MsFeeCurr',
proxy: { url: '/MvcShipping/MsChFee/GetFeeDateCurrList' }
});
//this.StoreDateCurr.load();
this.storeContainerType = Ext.create('DsExt.ux.RefTableStore', {
model: 'DsTruckMng.ux.CtnRefModel',
proxy: { url: '/CommMng/BasicDataRef/GetCtnDispList' }
});
//this.storeContainerType.load({ params: { condition: ""} });
this.comboxContainerType = Ext.create('DsExt.ux.RefTableCombox', {
fieldLabel: '箱型',
queryMode: 'remote',
store: this.storeContainerType,
name: 'CTN',
valueField: 'CtnName',
flex: 1,
displayField: 'CtnName'
});
this.storeContainerType2 = Ext.create('DsExt.ux.RefTableStore', {
model: 'DsTruckMng.ux.CtnRefModel',
proxy: { url: '/CommMng/BasicDataRef/GetCtnDispList' }
});
this.comboxContainerType2 = Ext.create('DsExt.ux.RefTableCombox', {
fieldLabel: '箱型', readOnly: true,
queryMode: 'remote',
store: this.storeContainerType2,
name: 'CTN',
valueField: 'CtnName',
flex: 1,
displayField: 'CtnName'
});
this.storeAgentCompany = Ext.create('DsExt.ux.RefTableStore', {
model: 'MsCompanysEntity',
proxy: { url: '/MvcShipping/MsCompanys/GetNoPicDataList' }
});
this.storeAgentCompany.load({ params: { condition: " isDelegate = 1 " } });
this.comboxAgent = Ext.create('DsExt.ux.RefTableCombox', {
fieldLabel: '代理公司',
//queryMode: 'remote',
store: this.storeAgentCompany,
forceSelection: true,
name: 'Agent', id: "AGENT",
valueField: 'GID',
displayField: 'NAME',
flex: 1
});
//////////////////
Ext.define('DsShipping.ux.CodeLoadportModel', {
extend: 'Ext.data.Model',
fields: [
{ name: 'PORT', type: 'string' },
{ name: 'CNAME', type: 'string' },
{ name: 'EDICODE', type: 'string' },
{ name: 'CodeAndName', type: 'string' }
]
});
//国内港口(出口装货港、进口卸货港)
this.storeCodeLoadport = Ext.create('DsExt.ux.RefTableStore', {
model: 'DsShipping.ux.CodeLoadportModel',
proxy: { url: '/CommMng/BasicDataRef/GetCodeLoadportList' }
});
//this.storeCodeLoadport.load();
this.comboxPORTDISCHARGE = Ext.create('DsExt.ux.RefTableCombox', {
fieldLabel: '起运港',
queryMode: 'remote',
store: this.storeCodeLoadport,
name: 'PORTLOAD',
valueField: 'PORT',
queryMode: 'remote',
minChars: 1,
queryParam: 'PORT',
displayField: 'PORT'
});
//#endregion
//#region 编辑form:formEdit
this.formEdit = Ext.widget('form', {
// layout: "border",
//region: 'center',
//layout: "border",
region: "north",
height: 585,
id: "formEdit",
frame: true,
bodyPadding: 2,
trackResetOnLoad: true,
fieldDefaults: {
margins: '1 1 1 1',
labelAlign: 'right',
flex: 5,
//labelWidth: 90,//label标签宽度
msgTarget: 'qtip',
sourcelabelWidth: '100'
//,split:true
},
listeners: {
"actioncomplete": function (_form, _action)
{
//setSaveBtnEnable(true);
},
"beforeaction": function (_form, _action)
{
//setSaveBtnEnable(false);
}
},
//items: [{ //fieldset 1
// xtype: 'fieldset',
// defaultType: 'textfield',
// layout: 'anchor',
// defaults: {
// anchor: '100%'
// },
items: [
{ //container_1
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
fieldLabel: 'company',
name: 'company', hidden: true
}, {
fieldLabel: 'CORPID',
name: 'CORPID', hidden: true
}, {
fieldLabel: '合同序列号',
// allowBlank: false,
disabled: true,
name: 'ContractNo'
}, this.comboxCreator, {
fieldLabel: '接单时间',
format: 'Y-m-d H:i:s',
xtype: 'datefield', readOnly: true,
renderer: Ext.util.Format.dateRenderer('Y-m-d H:i:s'),
name: 'creattime'
}, this.comboxAuditor, {
fieldLabel: '审单时间',
format: 'Y-m-d H:i:s',
xtype: 'datefield', readOnly: true,
renderer: Ext.util.Format.dateRenderer('Y-m-d H:i:s'),
name: 'Audittime'
},
/**/
{
fieldLabel: 'id',
name: 'id',
flex: 0,
hidden: true,
margins: '0'
},
{
fieldLabel: 'cgid',
name: 'cgid',
flex: 0,
hidden: true,
margins: '0'
},
{
fieldLabel: '时间戳',
name: 'TimeMark',
flex: 0,
hidden: true,
margins: '0'
},
{
fieldLabel: '提单号是否可重复',
name: 'MBLNOREPEAT',
flex: 0,
hidden: true,
margins: '0',
listeners: {
//添加日期选择事件
"change": function ()
{
//alert("MBLNOREPEAT");
},
scope: this
}
}]
},
//container_1 end
{
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [
this.comboxSeller,
{
fieldLabel: '客户(购货方)',
name: 'buyer',readOnly:true
},
{
fieldLabel: '用证公司',
name: 'companyname'
}, {
fieldLabel: '双抬头',
name: 'STT'
}, this.comboxCountry]
},
{
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
fieldLabel: '目的港',
// allowBlank: false,
name: 'portRef'
}, {
fieldLabel: '合同号',
// allowBlank: false,
name: 'HTH'
}, {
fieldLabel: '提单号',
name: 'BillNo'
}, {
fieldLabel: '箱号',
name: 'ContainerNo'
},
{
fieldLabel: '铅封号',
name: 'SealNo'
}
]
},
{
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [
{
fieldLabel: '自贸区',
readOnly: true,
name: 'ZMQ'
}, this.comboxShipCompany, {
fieldLabel: '免箱期',
name: 'Freetime'
}, {
fieldLabel: '船名',
name: 'Vessel'
},
{
fieldLabel: '航次',
name: 'Voyage'
}]
},
{
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
fieldLabel: '预计开船日',
format: 'Y-m-d',
xtype: 'datefield',
renderer: Ext.util.Format.dateRenderer('Y-m-d'),
flex: 1,
name: 'Ex_sailingdate'
}, {
fieldLabel: '开船日期',
format: 'Y-m-d',
xtype: 'datefield',
name: 'Sailingdate', flex: 1
},
{
fieldLabel: '到港日期',
format: 'Y-m-d',
xtype: 'datefield',
name: 'ArrivalDate', flex: 1,
listeners: {
//添加日期选择事件
"change": function (othis,nv,ov,opt)
{
var form = Ext.getCmp("formEdit");
if (form.getForm().findField("preArrivalDate").getValue()==="")
form.getForm().findField("preArrivalDate").setValue(nv);
if (form.getForm().findField('RecDate').getRawValue() != "")
{
var startdate = form.getForm().findField('ArrivalDate').getRawValue();
var enddate = form.getForm().findField('RecDate').getRawValue();
var _e = Ext.util.Format.date(startdate); //格式化日期控件值
var _s = Ext.util.Format.date(enddate); //格式化日期控件值
var end = new Date(_s);
var start = new Date(_e);
var elapsed = Math.round((end.getTime() - start.getTime()) / (86400000)) + 1; // 计算间隔日数
//e.record.set('text',_s);
form.getForm().findField('PortDays').setValue(elapsed);
}
}
}
}, this.comboxPaymentMethods
, this.comboxTransactionMethod
]
},
{
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [
{
fieldLabel: '付货款时间(预付)',
format: 'Y-m-d',
xtype: 'datefield',
name: 'Prepaydate'
//,
//disabled: true
}, {
fieldLabel: '电放时间',
format: 'Y-m-d',
xtype: 'datefield',
name: 'E_Billtime'
}, {
fieldLabel: '正本时间',
format: 'Y-m-d',
xtype: 'datefield',
name: 'BillTime'
}, {
fieldLabel: '换单时间',
format: 'Y-m-d',
xtype: 'datefield',
name: 'HDtime'
}, this.comboxFStatus]
},
{
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
fieldLabel: '付货款时间(尾款)',
format: 'Y-m-d',
xtype: 'datefield',
name: 'Paydate'
},
this.comboxBillType,
this.comboxReceiptStatus,
this.comboxRCVMode, this.comboxPORTDISCHARGE]
},
{
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
fieldLabel: '寄单情况',
//readOnly:true,
name: 'Receiptremark',
flex: 3
}, this.comboxAgent, this.comboxTRADINGAGENCY]
},
{
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
fieldLabel: '分公司接单日期', flex: 1,
format: 'Y-m-d H:i:s',
xtype: 'datefield',
name: 'CreateTime_2'
}, {
fieldLabel: '分公司转单日期', flex: 1,
format: 'Y-m-d H:i:s',
xtype: 'datefield',
name: 'ResendTime'
}, {
fieldLabel: '靠泊码头', flex: 1,
name: 'Dock'
}, {
fieldLabel: '报关行', flex: 1,
name: 'Customs_broker'
}, {
fieldLabel: '报检行', flex: 1,
name: 'inspection_broker'
}]
},
{
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [this.comboxContainerType
, {
fieldLabel: '国外寄单快递号',
name: 'BILLTRANCNO', id: "BILLTRANCNO"
, flex: 1
}, {
xtype: 'checkbox', flex: 1,
fieldLabel: '是否锁汇',
name: 'LOCK_EXCHANGERATE'
}, {
flex: 1,
fieldLabel: '锁汇汇率',
name: 'EXCHANGERATE'
}
, this.comboxTradeCountry]
},
{
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
fieldLabel: '____备注1',
readOnly: true,
name: 'remark', flex: 3
}]
},
{
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [this.comboxMainstate,
this.comboxCIQ_canbesearch,
{
fieldLabel: '卫生许可证(ciq)',
name: 'CIQ_licence'
}, {
fieldLabel: '卫生证签发日期',
format: 'Y-m-d', readOnly: true,
xtype: 'datefield',
name: 'CIQDATE'
},
this.comboxPrinted
]
},
{
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
fieldLabel: '报检日期', flex: 1,
format: 'Y-m-d H:i:s',
xtype: 'datefield',
name: 'inspection_Signup_date'
}, {
fieldLabel: '报检号', flex: 1,
name: 'inspection_no'
}, {
fieldLabel: '通关单号', flex: 1,
name: 'ClearanceNo'
}, this.comboxWriteoffs
, this.comboxAutoAPP
]
},
{
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
anchor: '20%',
items: [{
fieldLabel: '转检日期', flex: 1,
format: 'Y-m-d',
xtype: 'datefield',
name: 'ZHUANJIAN_DATE'
}
]
},
{
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
fieldLabel: '____备注2',
flex: 4,
name: 'remark_2'
}, {
flex: 1, readOnly: true,
fieldLabel: '兽医官签字',
name: 'VSIGN'
}]
},
{
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
fieldLabel: '出税日期',
format: 'Y-m-d H:i:s',
xtype: 'datefield',
name: 'tax_date'
},
{
fieldLabel: '付税日期',
format: 'Y-m-d H:i:s',
xtype: 'datefield',
name: 'tax_paydate'
}, this.comboxSampling_need,
this.comboxSecurityDeposit,
{
fieldLabel: '报关单号',
name: 'DeclareNumber'
}
]
},
{
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
fieldLabel: '海关确定抽检',
format: 'Y-m-d',
xtype: 'datefield',
name: 'SamplingDate_Plan'
},
{
fieldLabel: '海关实际验货',
format: 'Y-m-d',
xtype: 'datefield',
name: 'SamplingDate_Act'
}, {
fieldLabel: '海关放行日期',
format: 'Y-m-d',
xtype: 'datefield',
name: 'CustomsReleaseDate'
}, {
fieldLabel: '回空日期',
format: 'Y-m-d',
xtype: 'datefield',
name: 'RecDate',
listeners: {
//添加日期选择事件
"select": function ()
{
var form = Ext.getCmp("formEdit");
var startdate = form.getForm().findField('ArrivalDate').getRawValue();
var enddate = form.getForm().findField('RecDate').getRawValue();
var _e = Ext.util.Format.date(startdate); //格式化日期控件值
var _s = Ext.util.Format.date(enddate); //格式化日期控件值
var end = new Date(_s);
var start = new Date(_e);
var elapsed = Math.round((end.getTime() - start.getTime()) / (86400000)) + 1; // 计算间隔日数
//e.record.set('text',_s);
form.getForm().findField('PortDays').setValue(elapsed);
}
}
},
{
fieldLabel: '港口天数',
name: 'PortDays',
readOnly: true
}]
},
{
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
fieldLabel: '____备注3',
name: 'remark_3'
}]
},
{
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
fieldLabel: '商检验货日期',
format: 'Y-m-d',
xtype: 'datefield',
name: 'inspection_date', flex: 2
}, {
fieldLabel: '启封/整改放行日',
format: 'Y-m-d',
xtype: 'datefield',
name: 'Unsealdate', flex: 2
},
this.comboxInspection_Storage,
this.comboxISREFORM,
{
fieldLabel: '送货日',
format: 'Y-m-d',
xtype: 'datefield',
name: 'DeliveryDate', flex: 2
}, {
fieldLabel: '送货地址',
name: 'DeliveryAddress', flex: 2
}
]
},
{
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
fieldLabel: '联系人',
name: 'Contacter',
flex: 1
}, {
fieldLabel: '电话',
name: 'Tel', flex: 1
},{
fieldLabel: '商检放行日期',
format: 'Y-m-d',
xtype: 'datefield',
name: 'InspectionReleaseDate', flex: 1
},{
fieldLabel: '溢短装',
name: 'Overfilled', flex: 2
}]
},
{
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
fieldLabel: '备注4',
name: 'remark_4'
}]
},
{
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [this.comboxInventoryState, {
xtype: 'checkbox',
fieldLabel: '库存清空',
name: 'KCClear'
}, this.comboxBUZTYPE,
this.comboxInspection_Buyer,
{
xtype: 'checkbox',
fieldLabel: '已有合同',
name: 'HaveContract'
},
{
xtype: 'checkbox',
fieldLabel: '有商品标签',
name: 'HaveCargoMark',
listeners: {
//添加日期选择事件
"change": function ()
{
//alert("HaveCargoMark");
},
scope: this
}
}]
},
{
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [
{
fieldLabel: '利息合计',
name: 'INTEREST',
readOnly: true,
listeners: {
//渲染完成后
"afterrender": function (othis, obj)
{
Ext.Ajax.request({
url: '/Import/Finance/GetINTEREST',
params: {
ContractNo: _this.editRecord.get('ContractNo')
},
callback: function (options, success, response)
{
var value = eval(response.responseText);
if (value == "") //不存在
value = "0.00";
othis.setValue(value);//设置利息合计显示
},
scope: this
});
},
scope: this
}
},
{
fieldLabel: '预计到港日期',
format: 'Y-m-d',
xtype: 'datefield',
name: 'preArrivalDate'
},
{
fieldLabel: '操作员',
xtype: 'textfield',
name: 'OP',
disabled: true
},
{
fieldLabel: 'MZBZ',
name: 'MZBZ', hidden: true,
listeners: {
//添加日期选择事件
"change": function ()
{
//alert("MZBZ");
},
scope: this
}
},
{
fieldLabel: 'LOADFINISH',
name: 'LOADFINISH', hidden: true,
listeners: {
//添加日期选择事件
"change": function ()
{
this.setSaveBtnEnable(true);
},
scope: this
}
}
]
}
]
//}]
});
//#endregion this.formEdit
this.LoadMustBe();
//#region 双击更新事件
//提单号
//var _form = this.formLocal.getForm();
//_this = this;
this.storecurr = Ext.create('DsExt.ux.RefTableStore', {
model: 'currRef',
proxy: { url: '/CommMng/BasicDataRef/GetcurrRefList' }
});
this.storecurr.load({ params: { condition: "" } });
this.comboxcurr = Ext.create('DsExt.ux.RefTableCombox', {
store: this.storecurr,
name: 'currid',
valueField: 'gid',
displayField: 'codename'
//币别
});
///商务汇率 取当日的应付汇率
this.storeExchangerate = Ext.create('DsExt.ux.RefTableStore', {
model: 'MsCurrencyExchange',
proxy: { url: '/MvcShipping/MsCurrencyExchange/GetExchangeRate' }
});
this.comboxExchangerate = Ext.create('DsExt.ux.DCombox', {
store: this.storeExchangerate,
name: 'Exchangerate', //id: "ISPAYED",
matchFieldWidth:false,
forceSelection: false,
valueField: 'CRVALUE',
displayField: 'CrRef'
});
///海关汇率 取到港日的海关汇率
this.storeExchangerate2 = Ext.create('DsExt.ux.RefTableStore', {
model: 'MsCurrencyExchange',
proxy: { url: '/MvcShipping/MsCurrencyExchange/GetExchangeRate' }
});
this.comboxExchangerate2 = Ext.create('DsExt.ux.RefTableCombox', {
store: this.storeExchangerate2,
name: 'Exchangerate_Customs', //id: "ISPAYED",
matchFieldWidth: false,
forceSelection: false,
valueField: 'CUSTOMVALUE',
displayField: 'CustomRef'
});
/*
//枚举参照
this.storeUnit = Ext.create('DsExt.ux.RefEnumStore', {});
this.storeUnit.load({ params: { enumTypeId: 11 } });
this.comboxUnit = Ext.create('DsExt.ux.RefEnumCombox', {
store: this.storeUnit,
name: 'Unit'
});
this.storepaypart = Ext.create('DsExt.ux.RefEnumStore', {});
this.storepaypart.load({ params: { enumTypeId: 12 } });
this.comboxpaypart = Ext.create('DsExt.ux.RefEnumCombox', {
store: this.storepaypart,
name: 'paypart'
});
//商品规格 20160420
this.storeSPECIFICATIONS = Ext.create('DsExt.ux.RefEnumStore', {});
this.storeSPECIFICATIONS.load({ params: { enumTypeId: 34 } });
this.comboxSPECIFICATIONS = Ext.create('DsExt.ux.RefEnumCombox', {
store: this.storeSPECIFICATIONS,
readOnly: true,
name: 'SPECIFICATIONS',
valueField: 'EnumValueName',
displayField: 'EnumValueName'
});
*/
//#endregion
//#region 明细 商品
this.storeCargo = Ext.create('Ext.data.Store', {
model: 'Cargomb',
remoteSort: false,
proxy: {
type: 'ajax',
url: '/Import/XXH/GetCargoList',
reader: {
id: 'id,ContractNo',
root: 'data',
totalProperty: 'totalCount'
}
}
});
//表格
this.cellEditingCargo = Ext.create('Ext.grid.plugin.CellEditing', {
clicksToEdit: 1
});
this.cargoCheckBoxModel = Ext.create('Ext.selection.CheckboxModel');
this.column = [
{
dataIndex: 'id',
header: '自增序列号',
width: 80,
hidden: true,
editor: {
xtype: 'textfield'
}
},
{
dataIndex: 'ContractNo',
header: '合同号',
width: 80,
hidden: true
},
{
dataIndex: 'SEQUENCE',
header: '序号',
width: 44
},
{
dataIndex: 'cargoinfo_id',
header: 'HS代码',
renderer: function (value, p, record) {
if (value == null || value == '') return '';
else return record.data.cicodeandname;
},
//editor: this.comboxCargoinfo,
width: 140
},
{
dataIndex: 'cargociq_id',
header: 'CIQ代码',
renderer: function (value, p, record) {
if (value == null || value == '') return '';
else return record.data.ciqcodeandname;
},
//editor: this.comboxCargociq,
width: 140
},
{
dataIndex: 'name',
header: '标签品名',
width: 80
}, {
dataIndex: 'Ename',
header: '英文品名',
width: 100
}, {
dataIndex: 'TAGPICURL',
header: '标签图片',
width: 60,
renderer: function (value, p, record) {
if (value == '' || typeof (value) == "undefined") {
//return '<input type="button" value="上传" onClick="javascript:this.UpLoadFile('+record.data.BillNo+')"';
return '';
} else
return '<a href="' + value + '" style=' + '"text-decoration:none" target="_blank"' + ' > 下载图片 </a>';
}
}, {
dataIndex: 'SPECIFICATIONS',
header: '商品规格',
width: 60,
editor: this.comboxSPECIFICATIONS
}, {
dataIndex: 'CargoType',
header: '产品类型',
width: 50
}, {
dataIndex: 'SBYS',
header: '申报要素',
width: 160,
editor: {
xtype: 'textfield',
selectOnFocus: true
}
}, {
dataIndex: 'AGENCRATE',
header: '代理费率(元/吨)',
width: 80,
editor: {
xtype: 'textfield',
selectOnFocus: true
}
},
{
dataIndex: 'Unit',
header: '重量单位',
renderer: function (value, p, record) {
if (value == null || value == '') return '';
else return record.data.UnitRef;
},
editor: this.comboxUnit,
width: 60
},
{
dataIndex: 'currid',
header: '币别',
renderer: function (value, p, record) {
if (value == null || value == '') return '';
else return record.data.codename;
},
editor: this.comboxcurr,
width: 50
},
{
dataIndex: 'Exchangerate',
header: '汇率_商务',
width: 75,
editor: this.comboxExchangerate
}, {
dataIndex: 'Exchangerate_Customs',
header: '汇率_海关',
width: 75,
editor: this.comboxExchangerate2
},
{
dataIndex: 'U_PRICE',
header: '单价(重量单位)',
width: 80,
editor: {
xtype: 'numberfield',
allowDecimals: true,
decimalPrecision: 2,
selectOnFocus: true
}
},
{
dataIndex: 'U_weight',
header: '净重(重量单位)',
width: 80,
editor: {
xtype: 'numberfield',
allowDecimals: true,
decimalPrecision: 6,
selectOnFocus: true
}
},
{
dataIndex: 'price',
header: '单价(币别/kg)',
width: 80,
editor: {
xtype: 'textfield',
selectOnFocus: true
}
},
{
dataIndex: 'weight',
header: '净重(kg)',
width: 80,
editor: {
xtype: 'textfield',
selectOnFocus: true
}
},
{
dataIndex: 'm_weight',
header: '毛重',
width: 50,
editor: {
xtype: 'textfield',
selectOnFocus: true
}
},
{
dataIndex: 'BoxCount',
header: '箱/件数',
width: 80,
editor: {
xtype: 'textfield',
selectOnFocus: true
}
},
{
dataIndex: 'BoxWeight',
header: '规格',
width: 50,
editor: {
xtype: 'textfield',
selectOnFocus: true
}
},
{
dataIndex: 'price_agio',
header: '单价(差价价格)',
width: 50,
editor: {
xtype: 'textfield',
selectOnFocus: true
}
},
{
dataIndex: 'price_limit',
header: '海关估价',
width: 60,
editor: {
xtype: 'textfield',
selectOnFocus: true
}
},
{
dataIndex: 'pay_Amount',
header: '合同金额',
width: 120/*,
editor: {
xtype: 'textfield',
selectOnFocus: true
}*/
},
{
dataIndex: 'tax_Amount',
header: '完税价格(外币)',
width: 87/*,
editor: {
xtype: 'textfield',
selectOnFocus: true
*/
},
{
dataIndex: 'tax_Amount_RMB',
header: '完税价格(RMB)',
width: 87
},
{
dataIndex: 'baolv',
header: '保率',
width: 55
},
{
dataIndex: 'Amount',
header: '合同金额(对客户)',
width: 80,
editor: {
xtype: 'textfield',
selectOnFocus: true
}
},
{
dataIndex: 'RecProportion',
header: '收预付款比例%',
width: 100,
//hidden: true,
editor: {
xtype: 'textfield',
selectOnFocus: true
}
},
{
dataIndex: 'PreProportion',
header: '付预付款比例%',
width: 100,
//hidden: true,
editor: {
xtype: 'textfield',
selectOnFocus: true
}
}, {
dataIndex: 'prepayments',
header: '预付款(应收)',
width: 80,
editor: {
xtype: 'textfield',
selectOnFocus: true
}
}, {
dataIndex: 'balance',
header: '尾款(应收)',
width: 80,
editor: {
xtype: 'textfield',
selectOnFocus: true
}
}, {
dataIndex: 'pay_prepayments',
header: '预付款(应付)',
width: 80,
editor: {
xtype: 'textfield',
selectOnFocus: true
}
}, {
dataIndex: 'pay_balance',
header: '尾款(应付)',
width: 80,
editor: {
xtype: 'textfield',
selectOnFocus: true
}
},
{
dataIndex: 'Paypart',
header: '付款方式',
renderer: function (value, p, record) {
if (value == null || value == '') return '';
else return record.data.paypartRef;
},
editor: this.comboxpaypart,
width: 50
},
{
dataIndex: 'tariff',
header: '关税类型',
width: 80,
editor: {
xtype: 'textfield',
selectOnFocus: true
}
},
{
dataIndex: 'tax',
header: '关税税率',
width: 80,
editor: {
xtype: 'numberfield',
allowDecimals: true,
decimalPrecision: 2,
selectOnFocus: true
}
},
{
dataIndex: 'tax_cl',
header: '从量税(分/kg)',
tooltip:'如不需要则改为0即可按正常关税计算.',
width: 80,
editor: {
xtype: 'numberfield',
allowDecimals: true,
decimalPrecision: 2,
selectOnFocus: true
}
},
{
dataIndex: 'tax_zz',
header: '增值税税率',
width: 80,
editor: {
xtype: 'numberfield',
allowDecimals: true,
decimalPrecision: 2,
selectOnFocus: true
}
}, {
dataIndex: 'tax_1',
header: '关税(应收)',
width: 80,
editor: {
xtype: 'numberfield',
selectOnFocus: true,
allowDecimals: true,
decimalPrecision: 2
}
},
{
dataIndex: 'tax_zz_1',
header: '增值税(应收)',
width: 80,
editor: {
xtype: 'numberfield',
selectOnFocus: true,
allowDecimals: true,
decimalPrecision: 2
}
}, {
dataIndex: 'tax_2',
header: '关税(应付)',
width: 80,
editor: {
xtype: 'numberfield',
selectOnFocus: true,
allowDecimals: true,
decimalPrecision: 2
}
},
{
dataIndex: 'tax_zz_2',
header: '增值税(应付)',
width: 80,
editor: {
xtype: 'numberfield',
selectOnFocus: true,
allowDecimals: true,
decimalPrecision: 2
}
},
{
dataIndex: 'Exporter',
header: '出口商',
width: 80,
editor: {
xtype: 'textfield',
selectOnFocus: true
}
},
{
dataIndex: 'FactoryNo',
header: '厂号',
width: 80,
editor: {
xtype: 'textfield',
selectOnFocus: true
}
},
{
dataIndex: 'Productiondate',
header: '生产日期',
width: 80,
editor: {
xtype: 'textfield',
selectOnFocus: true
}
},
{
dataIndex: 'BZTCHNO',
header: '批号',
width: 80
},
{
dataIndex: 'Declarenumber',
header: '报关单号',
width: 80,
editor: {
xtype: 'textfield',
selectOnFocus: true
}
},
{
dataIndex: 'AMOUNT_WRITEOFFS',
header: '申证金额',
width: 80
}, {
dataIndex: 'REMARK',
header: '备注',
width: 140,
editor: {
xtype: 'textfield',
selectOnFocus: true
}
}
];
this.formCargo = new Ext.grid.GridPanel({
store: this.storeCargo,
enableHdMenu: false,
layout: 'border',
region: 'center',
trackResetOnLoad: true,
autoScroll: true,
//height: 160,
//title: '商品信息',
loadMask: { msg: "数据加载中,请稍等..." },
trackMouseOver: true,
disableSelection: false,
plugins: [this.cellEditingCargo],
selModel: this.cargoCheckBoxModel,
selType: 'cellmodel',
tbar: [/*{
text: '增加明细',
tooltip: '增加明细',
iconCls: "btnadddetail",
handler: function (button, event) {
this.onAddCargoClick(button, event);
},
scope: this
}, '-', {
text: '删除明细',
tooltip: '删除明细',
iconCls: "btndeletedetail",
handler: function (button, event) {
this.onDelCargoClick(button, event);
},
scope: this
}, '-',*/ {
text: '库存初始化',
tooltip: '库存初始化',
id: "KCStart",
iconCls: "btnKCStart",
handler: function (button, event) {
this.onKCStartClick(button, event);
},
scope: this
}, '-', {
text: '生成应收应付',
menu: [
{ text: "全部生成", handler: this.onbtnCWStartClick },
"-",
{ text: "生成预付款", tooltip: "包含电汇费、手续费", handler: this.onbtnCWStartClick },
{ text: "生成尾款", tooltip: "包含电汇费、手续费", handler: this.onbtnCWStartClick },
"-",
{ text: "生成代理费", handler: this.onbtnCWStartClick },
{ text: "生成税金", handler: this.onbtnCWStartClick }
],
iconCls: "btnCWStart",
id: "CWStart",
scope: this
}, {
text: "保存列表样式",
id: "btnsavelist",
handler: function (button, event) {
var tempcolumns = this.formCargo.columns;
DsTruck.SaveGridPanel(USERID, _this.CargoListName, tempcolumns);
},
scope: this
}
],
columns: this.column
});
this.column = DsTruck.GetGridPanel(USERID, this.CargoListName, this.column);
//使用者id表名 中间column数组跳过一开始的几列
this.formCargo.reconfigure(this.storeList, this.column);
//this.formCargo.addListener('cellclick', function(view, cell, cellIdx, record, row, rowIdx, eOpts) {
// if(cellIdx === 4){
// //alert(record.get('cargoinfo_id'));
// //if (!record.get('cargoinfo_id')>=0) return;
// var s=" cargoinfoid="+record.get('cargoinfo_id');
// //alert(s);
// this.storeCargociq.load({ params: { condition: s} });
// }
//}, this);
//#endregion
//#region 明细 许可证使用
//表参照 可用许可证
this.storeApp = Ext.create('DsExt.ux.RefTableStore', {
model: 'Appmb',
proxy: { url: '/Import/XXH/GetApp' }
});
this.comboxApp = Ext.create('DsExt.ux.RefTableCombox', {
store: this.storeApp,
name: 'app_id',
valueField: 'app_id',
displayField: 'info'
});
this.comboxCargo_CHFEE = Ext.create('DsExt.ux.RefTableCombox', {
store: this.storeCargo,
name: 'cargo_id',
valueField: 'GID',
displayField: 'NAME_REF'
});
this.storecancellation = Ext.create('DsExt.ux.RefEnumStore', {});
this.storecancellation.load({ params: { enumTypeId: 13 } });
this.comboxcancellation = Ext.create('DsExt.ux.RefEnumCombox', {
//fieldLabel: '许可证使用',
store: this.storecancellation,
name: 'cancellation'
});
//结果集
this.storeAppstate = Ext.create('Ext.data.Store', {
model: 'Appstatemb',
remoteSort: false,
proxy: {
type: 'ajax',
url: '/Import/XXH/GetAppstate',
reader: {
id: 'id',
root: 'data',
totalProperty: 'totalCount'
}
}
});
//表格
this.cellEditingAppstate = Ext.create('Ext.grid.plugin.CellEditing', {
clicksToEdit: 1
});
this.formAppstate = new Ext.grid.GridPanel({
store: this.storeAppstate,
enableHdMenu: false,
region: 'north',
//height: 140,
title: '许可证使用 (注意,商品信息保存后才能选择使用许可证和商品)',
loadMask: { msg: "数据加载中,请稍等..." },
trackMouseOver: true,
disableSelection: false,
plugins: [this.cellEditingAppstate],
selType: 'cellmodel',
tbar: [{
text: '增加明细',
tooltip: '增加明细',
iconCls: "btnadddetail",
handler: function (button, event) {
this.onAddAppstateClick(button, event);
},
scope: this
}, '-', {
text: '删除明细',
tooltip: '删除明细',
iconCls: "btndeletedetail",
handler: function (button, event) {
this.onDelAppstateClick(button, event);
},
scope: this
}],
columns: [
{ hidden: true, dataIndex: 'id', header: 'id', width: 80 },
{ hidden: true, dataIndex: 'ContractNo', header: 'ContractNo', width: 80 },
{
dataIndex: 'app_id',
header: '许可证号',
allowBlank: false,
renderer: function (value, p, record) {
if (value == null || value == '')
return '';
else
return record.data.appno;
},
editor: this.comboxApp,
width: 180
},
// { hidden: true, dataIndex: 'app_id', header: 'app_id', width: 80 },
{
dataIndex: 'name',
header: '商品手册名称',
width: 80,
},
//this.comboxCargo,
{
dataIndex: 'cargo_id',
header: '货名',
allowBlank: false,
renderer: function (value, p, record) {
if (value == null || value == '')
return '';
else
return record.data.cargoname;
},
editor: this.comboxCargo,
width: 80
},
{
dataIndex: 'appweight',
header: '许可证额度(吨)',
width: 80
},
{
dataIndex: 'appremain',
header: '未核销(吨)',
width: 80
},
{
dataIndex: 'country',
header: '进口国',
width: 80
},
{
dataIndex: 'weight',
header: '使用重量(KG)',
editor: {
xtype: 'textfield',
selectOnFocus: true
}
}, {
dataIndex: 'cancellation',
header: '许可证使用状态',
allowBlank: false,
renderer: function (value, p, record) {
if (value == null || value == '')
return '';
else
return record.data.cancellationRef;
},
editor: this.comboxcancellation,
width: 100
}, {
dataIndex: 'validdate',
header: '有效期',
width: 80
}
]
});
//end--------------------------------------------------//明细<<<< 许可证使用 >>>>结束
//#endregion
//#region 明细 库存管理
//#region 枚举参照
this.storeczstate = Ext.create('DsExt.ux.RefEnumStore', {});
this.storeczstate.load({ params: { enumTypeId: 8 } });
this.comboxczstate = Ext.create('DsExt.ux.RefEnumCombox', {
forceSelection: true,
store: this.storeczstate,
name: 'czstate'
});
this.storekfstate = Ext.create('DsExt.ux.RefTableStore', {
model: 'DsTruckMng.ux.CustomRefModel',
proxy: { url: '/CommMng/BasicDataRef/GetCustomRefList' }
});
this.comboxkfstate = Ext.create('DsExt.ux.RefTableCombox', {
forceSelection: true,
store: this.storekfstate,
queryMode: 'local',
name: 'kfstate',
valueField: 'CustName',
displayField: 'KFCodename',
listeners: {
focus: function (field, newValue, oldValue) {
if (this.storekfstate.getCount() <= 1) {
this.storekfstate.load({
params: {
condition: " iswarehouse=1 "
}
});
}
},
scope: this
}
});
this.comboxCargo = Ext.create('DsExt.ux.RefTableCombox', {
forceSelection: true,
store: this.storeCargo,
name: 'cargo_id',
valueField: 'id',
displayField: 'NAME_REF'
});
this.storeKCFeeName = Ext.create('DsExt.ux.RefTableStore', {
model: 'DsTruckMng.ux.FeeTypeRefModel',
proxy: { url: '/CommMng/BasicDataRef/GetFeeTypeRefList' }
});
//this.storeKCFeeName.load({ params: { condition: ""} });
this.comboxKCFeeName = Ext.create('DsExt.ux.RefTableCombox', {
store: this.storeKCFeeName,
queryMode: 'remote',
name: 'FeeName',
valueField: 'Name',
displayField: 'CodeAndName'
});
//this.storeSended = Ext.create('DsExt.ux.RefEnumStore', {});
//this.storeSended.load({ params: { enumTypeId: 0 } });
this.comboxSended = Ext.create('DsExt.ux.RefEnumCombox', {
//fieldLabel: '是否已生成费用',
store: this.storeYN,
name: 'Sended'
});
this.storePLEDGE = Ext.create('DsExt.ux.RefTableStore', {
model: 'Tradermb',
proxy: { url: '/CommMng/BasicDataRef/GetTrader' }
});
//this.storePLEDGE.load({ params: { condition: " 1=1 "} });
this.comboxPLEDGE = Ext.create('DsExt.ux.RefTableCombox', {
//fieldLabel: '质押权',
queryMode: 'remote',
forceSelection: true,
store: this.storePLEDGE,
name: 'PLEDGE',
valueField: 'name',
displayField: 'codename',
listeners: {
beforeload: function (store, op, options) {
Ext.apply(store.proxy.extraParams, { condition: " 1=1 " });
},
scope: this
}
});
this.storeNEWPLEDGE = Ext.create('DsExt.ux.RefTableStore', {
model: 'Tradermb',
proxy: { url: '/CommMng/BasicDataRef/GetTrader' }
});
this.comboxNEWPLEDGE = Ext.create('DsExt.ux.RefTableCombox', {
//fieldLabel: '质押权',
queryMode: 'remote',
forceSelection: true,
store: this.storeNEWPLEDGE,
name: 'NEWPLEDGE',
valueField: 'name',
displayField: 'codename',
listeners: {
beforeload: function (store, op, options) {
Ext.apply(store.proxy.extraParams, { condition: " 1=1 " });
},
scope: this
}
});
//#endregion
//结果集
this.storeKC = Ext.create('Ext.data.Store', {
model: 'KCmb',
remoteSort: false,
proxy: {
type: 'ajax',
url: '/Import/XXH/GetKC',
reader: {
id: 'id',
root: 'data',
totalProperty: 'totalCount'
}
}
});
//表格
this.cellEditingKC = Ext.create('Ext.grid.plugin.CellEditing', {
clicksToEdit: 1
});
this.KCModel = Ext.create('Ext.selection.CheckboxModel');
this.formKC = new Ext.grid.GridPanel({
store: this.storeKC,
enableHdMenu: false,
region: 'center',
title: '库存 (注意,商品信息保存后才能选择使用许可证和商品)',
loadMask: { msg: "数据加载中,请稍等..." },
trackMouseOver: true,
disableSelection: false,
plugins: [this.cellEditingKC],
selType: 'cellmodel',
selModel: this.KCModel,
autoScroll: true,
tbar: [{
text: '增加明细',
tooltip: '增加明细',
iconCls: "btnadddetail",
handler: function (button, event) {
this.onAddKCClick(button, event);
},
scope: this
}, {
text: '删除明细',
tooltip: '删除明细',
iconCls: "btndeletedetail",
handler: function (button, event) {
this.onDelKCClick(button, event);
},
scope: this
}, '-', {
text: '生成选定费用',
tooltip: '生成选定费用', id: "ApplicationAdd",
iconCls: "ApplicationAdd",
handler: function (button, event) {
this.onKCFeeClick(button, event);
},
scope: this
}, {
text: '选定货物质押权转给:',
tooltip: '必须选择入库货物和新质押人', id: "PLEDGEChange",
iconCls: "ApplicationAdd",
handler: function (button, event) {
this.onPLEDGEClick(button, event);
},
scope: this
}],
columns: [
{ hidden: true, dataIndex: 'id', header: 'id', width: 80 },
{ hidden: true, dataIndex: 'ContractNo', header: 'ContractNo', width: 80 },
{
dataIndex: 'cargo_id',
header: '货名',
allowBlank: false,
renderer: function (value, p, record) {
if (value == null || value == '')
return '';
else
return record.data.cargoname;
},
editor: this.comboxCargo,
width: 120
},
{
dataIndex: 'czstate',
header: '操作状态',
renderer: function (value, p, record) {
if (value == null || value == '')
return '';
else
return record.data.czref;
},
editor: this.comboxczstate,
width: 80
},
{
dataIndex: 'innum',
header: '入库数量(箱件数)',
width: 80,
editor: {
xtype: 'textfield',
selectOnFocus: true
}
},
{
dataIndex: 'outnum',
header: '出库数量(箱件数)',
width: 80,
editor: {
xtype: 'textfield',
selectOnFocus: true
}
},
{
dataIndex: 'kfstate',
header: '库房',
renderer: function (value, p, record) {
if (value == null || value == '')
return '';
else
return record.data.kfstate;
},
editor: this.comboxkfstate,
width: 110
},
{
dataIndex: 'PLEDGE',
header: '质押权',
renderer: function (value, p, record) {
if (value == null || value == '')
return '';
else
return record.data.PLEDGE;
},
editor: this.comboxPLEDGE,
width: 110
},
{
dataIndex: 'czdate',
header: '操作时间',
width: 90,
renderer: Ext.util.Format.dateRenderer('Y-m-d'),
editor: {
xtype: 'datefield',
selectOnFocus: true
}
}, {
dataIndex: 'days',
header: '天数',
width: 45,
editor: {
xtype: 'textfield',
selectOnFocus: true
}
}, {
sortable: true,
dataIndex: 'FeeName',
header: '费用名称',
editor: this.comboxKCFeeName,
width: 80
}, {
dataIndex: 'UnitPrice',
header: '单价',
width: 45,
editor: {
xtype: 'textfield',
selectOnFocus: true
}
}, {
dataIndex: 'Quantity',
header: '数量(吨)',
width: 65,
editor: {
xtype: 'textfield',
selectOnFocus: true
}
}, {
dataIndex: 'Amount',
header: '金额',
width: 45,
editor: {
xtype: 'textfield',
selectOnFocus: true
}
}, {
dataIndex: 'Sended',
header: '已生成费用',
renderer: function (value, p, record) {
if (value == null || value == '')
return '';
else
return record.data.Sended;
},
editor: this.comboxSended,
width: 80
},
{
dataIndex: 'TRUCKNO',
header: '车号',
width: 80,
editor: {
xtype: 'textfield',
selectOnFocus: true
}
},
{
dataIndex: 'TRUCKTEL',
header: '司机电话',
width: 100,
editor: {
xtype: 'textfield',
selectOnFocus: true
}
},
{
dataIndex: 'text',
header: '备注',
width: 200,
editor: {
xtype: 'textfield',
selectOnFocus: true
}
}
]
});
//#endregion
//#region 明细<<<< 单据表 >>>>
//单据表用 枚举参照
this.storePaymentMethods = Ext.create('DsExt.ux.RefEnumStore', {});
this.storePaymentMethods.load({ params: { enumTypeId: 4 } });
this.comboxPaymentMethods = Ext.create('DsExt.ux.RefEnumCombox', {
fieldLabel: '付款方式',
forceSelection: true,
store: this.storePaymentMethods,
name: 'PaymentMethods'
});
this.storeReceiptid = Ext.create('DsExt.ux.RefEnumStore', {});
this.storeReceiptid.load({ params: { enumTypeId: 2 } });
this.comboxReceiptid = Ext.create('DsExt.ux.RefEnumCombox', {
store: this.storeReceiptid,
name: 'Receiptid'
});
this.storeReceiptstate = Ext.create('DsExt.ux.RefEnumStore', {});
this.storeReceiptstate.load({ params: { enumTypeId: 7 } });
this.comboxReceiptstate = Ext.create('DsExt.ux.RefEnumCombox', {
store: this.storeReceiptstate,
name: 'state'
});
this.storeReceiptName = Ext.create('DsExt.ux.RefEnumStore', {});
this.storeReceiptName.load({ params: { enumTypeId: 2 } });
this.comboxReceiptName = Ext.create('DsExt.ux.RefEnumCombox', {
//fieldLabel: '单据类型',
store: this.storeReceiptName,
name: 'RECEIPTNAME',
valueField: 'EnumValueName',
displayField: 'EnumValueName'
});
//单据表-数据集
this.storeReceipt = Ext.create('Ext.data.Store', {
model: 'MsOpReceiptEntity',
remoteSort: false,
proxy: {
type: 'ajax',
url: '/MvcShipping/MsOpReceipt/GetDataList',
reader: {
id: 'GID',
root: 'data',
totalProperty: 'totalCount'
}
}
});
//单据表表格
this.cellEditingReceipt = Ext.create('Ext.grid.plugin.CellEditing', {
clicksToEdit: 1
});
this.ReceiptGridCheckBoxModel = Ext.create('Ext.selection.CheckboxModel');
this.gridListReceipt = new Ext.grid.GridPanel({
store: this.storeReceipt,
enableHdMenu: false,
region: 'north',
height: 240,
loadMask: { msg: "数据加载中,请稍等..." },
trackMouseOver: true,
disableSelection: false,
plugins: [this.cellEditingReceipt],
selModel: this.ReceiptGridCheckBoxModel,
selType: 'cellmodel',
tbar: [{
text: '增加明细',
tooltip: '增加明细',
iconCls: "btnadddetail",
handler: function (button, event) {
this.onAddReceiptClick(button, event);
},
scope: this
}, '-', {
text: '删除明细',
tooltip: '删除明细',
iconCls: "btndeletedetail",
handler: function (button, event) {
this.onDelReceiptClick(button, event);
},
scope: this
}],
columns: [
{
sortable: true,
dataIndex: 'GID',
header: '惟一编号',
hidden: true,
width: 0
}, {
sortable: true,
dataIndex: 'BSNO',
header: '业务编号',
hidden: true,
width: 0
}, {
sortable: true,
dataIndex: 'RECEIPTNO',
header: '单据编号',
editor: {
xtype: 'textfield',
selectOnFocus: true,
enableKeyEvents: true,
listeners: {
keydown: function (textfield, e) {
if (e.getKey() == 40) {
_this.onNextKeyClick(17)
}
}
}
},
width: 100
}, {
sortable: true,
dataIndex: 'RECEIPTTYPE',
header: '单据类型',
editor: this.comboxReceiptName,
width: 80
}, {
sortable: true,
dataIndex: 'RECEIVE_MAN',
header: '接单人',
//editor: SHOWNAME,
editor: {
xtype: 'textfield',
selectOnFocus: true,
enableKeyEvents: true,
listeners: {
keydown: function (textfield, e) {
if (e.getKey() == 40) {
_this.onNextKeyClick(17)
}
}
}
},
width: 80
}, {
sortable: true,
dataIndex: 'RECEIVE_DATE',
header: '接单日期',
renderer: Ext.util.Format.dateRenderer('Y-m-d'), //format是'm/d/Y'结果是”09/24/2008”
editor: {
//dateFormat: Ext.util.Format.dateRenderer('Y-m-d'),
format: 'Y-m-d',
xtype: 'datefield',
selectOnFocus: true
},
width: 80
}, {
sortable: true,
dataIndex: 'SEND_MAN',
header: '送单人',
//editor: SHOWNAME,
editor: {
xtype: 'textfield',
selectOnFocus: true,
enableKeyEvents: true,
listeners: {
keydown: function (textfield, e) {
if (e.getKey() == 40) {
_this.onNextKeyClick(17)
}
}
}
},
width: 80
}, {
sortable: true,
dataIndex: 'SEND_DATE',
header: '送单日期',
renderer: Ext.util.Format.dateRenderer('Y-m-d'), //format是'm/d/Y'结果是”09/24/2008”
editor: {
//dateFormat: Ext.util.Format.dateRenderer('Y-m-d'),
format: 'Y-m-d',
xtype: 'datefield',
selectOnFocus: true
},
width: 80
}, {
sortable: true,
dataIndex: 'TRANCER',
header: '送单快递公司',
editor: {
xtype: 'textfield',
selectOnFocus: true,
enableKeyEvents: true,
listeners: {
keydown: function (textfield, e) {
if (e.getKey() == 40) {
_this.onNextKeyClick(17)
}
}
}
},
width: 80
}, {
sortable: true,
dataIndex: 'TRANCNO',
header: '送单快递单号',
editor: {
xtype: 'textfield',
selectOnFocus: true,
enableKeyEvents: true,
listeners: {
keydown: function (textfield, e) {
if (e.getKey() == 40) {
_this.onNextKeyClick(17)
}
}
}
},
width: 80
}, {
sortable: true,
dataIndex: 'ISREPEAT',
header: '是否回单',
//xtype: "checkboxfield",
//xtype:"booleancolumn",
//trueText: "是",
//falseText: " ",
editor: {
xtype: 'checkboxfield'
},
width: 60
}, {
sortable: true,
dataIndex: 'REPEAT_MAN',
header: '回单人',
//editor: SHOWNAME,
editor: {
xtype: 'textfield',
selectOnFocus: true,
enableKeyEvents: true,
listeners: {
keydown: function (textfield, e) {
if (e.getKey() == 40) {
_this.onNextKeyClick(17)
}
}
}
},
width: 80
}, {
sortable: true,
dataIndex: 'REPEAT_DATE',
header: '回单日期',
renderer: Ext.util.Format.dateRenderer('Y-m-d'), //format是'm/d/Y'结果是”09/24/2008”
editor: {
//dateFormat: Ext.util.Format.dateRenderer('Y-m-d'),
format: 'Y-m-d',
xtype: 'datefield',
selectOnFocus: true
},
width: 80
}, {
sortable: true,
dataIndex: 'ISRECEIVE',
header: '是否还单',
editor: {
xtype: 'checkboxfield'
},
width: 60
}, {
sortable: true,
dataIndex: 'RETURN_MAN',
header: '还单人',
//editor: SHOWNAME,
editor: {
xtype: 'textfield',
selectOnFocus: true,
enableKeyEvents: true,
listeners: {
keydown: function (textfield, e) {
if (e.getKey() == 40) {
_this.onNextKeyClick(17)
}
}
}
},
width: 80
}, {
sortable: true,
dataIndex: 'RETURN_DATE',
header: '还单日期',
renderer: Ext.util.Format.dateRenderer('Y-m-d'), //format是'm/d/Y'结果是”09/24/2008”
editor: {
//dateFormat: Ext.util.Format.dateRenderer('Y-m-d'),
format: 'Y-m-d',
xtype: 'datefield',
selectOnFocus: true
},
width: 80
}, {
sortable: true,
dataIndex: 'RETURN_TRANCER',
header: '还单的快递公司',
editor: {
xtype: 'textfield',
selectOnFocus: true,
enableKeyEvents: true,
listeners: {
keydown: function (textfield, e) {
if (e.getKey() == 40) {
_this.onNextKeyClick(17)
}
}
}
},
width: 100
}, {
sortable: true,
dataIndex: 'RETURN_TRANCNO',
header: '还单的快递单号',
editor: {
xtype: 'textfield',
selectOnFocus: true,
enableKeyEvents: true,
listeners: {
keydown: function (textfield, e) {
if (e.getKey() == 40) {
_this.onNextKeyClick(17)
}
}
}
},
width: 100
}, {
sortable: true,
dataIndex: 'REMARK',
header: '备注',
editor: {
xtype: 'textfield',
selectOnFocus: true,
enableKeyEvents: true,
listeners: {
keydown: function (textfield, e) {
if (e.getKey() == 40) {
_this.onNextKeyClick(17)
}
}
}
},
width: 200
}, {
sortable: true,
dataIndex: 'CORPID',
header: '分公司代码',
hidden: true,
width: 0
}, {
sortable: true,
dataIndex: 'CREATEUSER',
header: '创建人',
width: 0
}, {
sortable: true,
dataIndex: 'CREATETIME',
header: '创建时间',
width: 0
}, {
sortable: true,
dataIndex: 'MODIFIEDUSER',
header: '最后更改人',
width: 0
}, {
sortable: true,
dataIndex: 'MODIFIEDTIME',
header: '最后更改时间',
width: 0
}
]
});
//#endregion
//#region 附件上传
this.storeChfeeFile = Ext.create('Ext.data.Store', {
model: 'FeeFileModel',
remoteSort: false,
proxy: {
type: 'ajax',
url: '/Account/Chfee_payapplication/GetFileList',
reader: {
id: 'GID',
root: 'data',
totalProperty: 'totalCount'
}
}
});
//表格
this.FeeFileColumns = [
{
sortable: true, hidden: true,
dataIndex: 'GID', readOnly: true,
header: 'GID',
width: 80
}, {
sortable: true, hidden: false,
dataIndex: 'File_OriginalName', readOnly: true,
header: Zi.LAN.FileName, //文件名称
width: 120
}, {
sortable: true, hidden: false,
dataIndex: 'File_DocType', readOnly: true,
header: '单据类型', //单据类型
width: 80
}, {
sortable: true, hidden: false,
dataIndex: 'File_DocNo', readOnly: true,
header: '单据编号', //单据编号
width: 120
}, {
sortable: true, hidden: false,
dataIndex: 'UpdateTime', readOnly: true,
renderer: Ext.util.Format.dateRenderer('Y-m-d H:i:s'),
header: Zi.LAN.FileDate, //上传日期
width: 125
}, {
sortable: true, hidden: false,
dataIndex: 'Operator', readOnly: true,
header: Zi.LAN.FilePerson, //上传者
width: 80
}, {
sortable: true, hidden: true,
dataIndex: 'File_Name', readOnly: true,
header: Zi.LAN.FileWName, //文件物理名称
width: 80
},
{
sortable: true, hidden: true,
dataIndex: 'File_Path',
header: 'File_Path',
width: 80
}, {
xtype: 'actioncolumn',
width: 50,
text: Zi.LAN.Operating, //操作
items: [{
icon: '/images/icons/btnSearch.gif', // Use a URL in the icon config
tooltip: '预览',
handler: function (grid, rowIndex, colIndex) {
var rec = grid.getStore().getAt(rowIndex);
var filePath = "/Areas/Account/Files/" + rec.get('BillNo') + '/' + rec.get('File_Name');
if (filePath.match(/^[_a-zA-Z0-9\/]+.(jpg|gif|jpeg|png|bmp)$/g) != undefined) {
var imgView = new Shipping.FileView({ filePath: filePath });
imgView.show();
} else if (filePath.match(/^[_a-zA-Z0-9\/]+.(pdf|txt)$/g) != undefined) {
window.open(filePath, "_blank");
} else {
var a = document.createElement("a");
// 利用URL.createObjectURL()方法为a元素生成blob URL
a.href = filePath;
a.target = "_blank";
// 设置文件名目前只有Chrome和FireFox支持此属性
try {
a.download = filePath;
} catch (e) {
alert("浏览器不兼容!");
} finally {
a.click();
}
}
}
}]
}
];
var selCertModel = Ext.create('Ext.selection.CheckboxModel');
this.fileGrid = new Ext.grid.GridPanel({
store: this.storeChfeeFile,
enableHdMenu: false,
layout: 'border',
region: 'center',
loadMask: { msg: Zi.LAN.LoadData }, //数据加载中,请稍等...
trackMouseOver: true,
disableSelection: false,
selModel: selCertModel,
singleSelect: true,
selType: 'rowmodel',
tbar: [{
text: "上传文件", //上传图片
tooltip: "上传文件",
iconCls: "btnadddetail",
handler: function (button, event) {
this.onAddFileClick(button, event);
},
scope: this
}, '-', {
text: "删除文件", //删除
tooltip: "删除文件", //删除图片
iconCls: "btndeletedetail",
handler: function (button, event) {
this.onDelFileClick(button, event);
},
scope: this
}],
columns: this.FeeFileColumns
});
//#endregion
//#region 明细表<<<应收应付/费用表>>>
this.panelFee = new Shipping.FeeEditGrid({
region: 'center',
layout: 'border'
});
// this.panelFee.EditRecord = this.editRecord;
this.panelFee.stroplb = 'import_main';
this.panelFee.salefee ='';
this.panelFee.StoreCustType.add({ "SCUSTTYPE": "KH-客户", "CUSTTYPE": "客户", "CUSTNAME": "buyer" });
this.panelFee.StoreCustType.add({ "SCUSTTYPE": "CGS-船公司", "CUSTTYPE": "船公司", "CUSTNAME": "ShipCompanyRef" });
this.panelFee.StoreCustType.add({ "SCUSTTYPE": "MYS-贸易商", "CUSTTYPE": "贸易商", "CUSTNAME": "seller" });
this.panelFee.StoreCustType.add({ "SCUSTTYPE": "DHF-订货方", "CUSTTYPE": "订货方", "CUSTNAME": "TRADINGAGENCY" });
Ext.getCmp('SubmitRZCr').setVisible(true);
Ext.getCmp('CancelSubmitRZCr').setVisible(true);
Ext.getCmp('SubmitRZDr').setVisible(true);
Ext.getCmp('CancelSubmitRZDr').setVisible(true);
//this.panelFee.StoreCustType.add({ "SCUSTTYPE": "CD-车队", "CUSTTYPE": "车队", "CUSTNAME": "TRUCKER" });
//this.panelFee.StoreCustType.add({ "SCUSTTYPE": "FHR-发货人", "CUSTTYPE": "发货人", "CUSTNAME": "SHIPPERID" });
//this.panelFee.StoreCustType.add({ "SCUSTTYPE": "SHR-收货人", "CUSTTYPE": "收货人", "CUSTNAME": "CONSIGNEEID" });
//this.panelFee.StoreCustType.add({ "SCUSTTYPE": "TZR-通知人", "CUSTTYPE": "通知人", "CUSTNAME": "NOTIFYPARTYID" });
//this.panelFee.StoreCustType.add({ "SCUSTTYPE": "DL-代理", "CUSTTYPE": "代理", "CUSTNAME": "AGENTID" });
//this.panelFee.StoreCustType.add({ "SCUSTTYPE": "CZ-场站", "CUSTTYPE": "场站", "CUSTNAME": "YARD" });
//this.panelFee.StoreCustType.add({ "SCUSTTYPE": "CDD-船代", "CUSTTYPE": "船代", "CUSTNAME": "SHIPAGENCY" });
//this.panelFee.StoreCustType.add({ "SCUSTTYPE": "BXGS-保险公司", "CUSTTYPE": "保险公司", "CUSTNAME": "" });
//this.panelFee.StoreCustType.add({ "SCUSTTYPE": "QT-其他", "CUSTTYPE": "其他", "CUSTNAME": "" });
//this.panelFee.StoreCustType.add({ "SCUSTTYPE": "", "CUSTTYPE": "", "CUSTNAME": "" });
//#endregion
//公共按钮Toolbar:panelBtn
this.panelBtn = new Ext.Panel({
region: "north",
tbar: [
{
// id: "saveandclose",
text: "保存",
id:"btnSave",disabled: true,id:"SAVE1",
handler: function (button, event) {
this.Save('0');
},
scope: this
}, {
// id: "saveandclose",
text: "保存并关闭",
id:"btnSaveClose",disabled: true,id:"SAVE2",
handler: function (button, event) {
this.Save('1');
},
scope: this
}, '-',
{
// id: "saveandclose",
text: "关闭",
handler: function (button, event) {
window.close();
},
scope: this
}, '-',
{
// id: "saveandclose",
text: "打印",
handler: function (button, event) {
this.DoPrint();
},
scope: this
}, '-',
{
// id: "saveandclose",
text: "获取合同信息",hidden:true,
handler: function (button, event) {
//this.OnClickXML();
},
scope: this
}
]
}); //end 按钮Toolbar
//#region 布局
this.panelTop = new Ext.Panel({
layout: "border",
region: "north",
height: 32,
items: [this.panelBtn]//, this.formEdit]
});
// title: '货物信息和许可证使用',
this.panelCargoandApp = new Ext.Panel({
layout: "border",
region: 'center',
split: true,
//height: 500,
margin: '1 1',
items: [this.formCargo/*, this.formAppstate*/]
});
this.panelDoc =new Ext.Panel({
id: "panelDoc",
layout: "border",
region: "center",
//autoScroll: true,
frame: false,
split: true,
items: [this.fileGrid]
});
this.page_1 = new Ext.Panel({
id:"page_1",
title: "合同基础信息",
autoScroll: true,
region: 'center',
layout: 'border',
items: [this.formEdit, this.panelCargoandApp]
});
PanelKC = new Shipping.WMSDetailIndexXPW({ layout: 'border', region: 'center' });
this.page_2 = new Ext.Panel({
id:"page_2",
title: "库存管理",
region: 'center',
layout: "border",
items: [
//this.formKC
PanelKC.gridList
]
});
this.page_3 = new Ext.Panel({
id:"page_3",
title: "票据管理",
region: 'center',
layout: "border",
items: [this.gridListReceipt,this.panelDoc]
});
this.page_4 = new Ext.Panel({
id:"page_4",split: true,
layout: "border",
title: "应收应付录入",
items: [this.panelFee
]
});
this.page_5 = new Ext.Panel({
id:"page_5",
title: "本地同步合同基础信息",
autoScroll: true,
//closable:true,
items: [
//this.formLocal
]
});
this.MainTab = new Ext.tab.Panel({
layout: "border",
region: "center",split:true,
items: [this.page_1, this.page_2, this.page_3, this.page_4
//, this.page_5
]
});
Ext.apply(this, {
items: [this.panelTop, this.MainTab]
});
//#endregion
parentWin = window.parent.opener;
this.InitData();
//#region 集中绑定 事件
this.gridListReceipt.on('edit', function (editor, e, eOpts) {
this.ReceiptAfterEdit(editor, e, eOpts);
}, this);
this.formCargo.on('edit', function (editor, e, eOpts) {
this.CargoAfterEdit(editor, e, eOpts);
}, this);
this.cellEditingCargo.on('beforeedit', function (editor, e) {
return this.CargoBeforeEdit(editor, e);
}, this);
this.formAppstate.on('edit', function (editor, e, eOpts) {
this.AppstateAfterEdit(editor, e, eOpts);
}, this);
this.formKC.on('edit', function (editor, e, eOpts) {
this.KCAfterEdit(editor, e, eOpts);
}, this);
//this.gridListChFee.on('edit', function (editor, e, eOpts) {
// this.gridListChFeeAfterEdit(editor, e, eOpts);
//}, this);
//this.gridListChFee_YF.on('edit', function (editor, e, eOpts) {
// this.gridListChFeeAfterEdit(editor, e, eOpts);
//}, this);
//this.cellEditingChFee.on('beforeedit', function (editor, e) {
// return this.cellEditingChFeeBeforeEdit(editor, e);
//}, this);
//this.cellEditingChFee_YF.on('beforeedit', function (editor, e) {
// return this.cellEditingChFeeBeforeEdit(editor, e);
//}, this);
//this.gridListChFee.getSelectionModel().on('select', function (button, event) {
////Ext.getCmp("zongshu").setText("1234");
//this.onSelectFee(button, event);
//}, this);
//this.gridListChFee_YF.getSelectionModel().on('select', function (button, event) {
// //Ext.getCmp("zongshu").setText("1234");
// this.onSelectFee(button, event);
//}, this);
//this.gridListChFee.on('cellclick', function (button, event) {
// //Ext.getCmp("zongshu").setText("1234");
// this.onSelectFee(button, event);
//}, this);
//this.gridListChFee_YF.on('cellclick', function (button, event) {
// //Ext.getCmp("zongshu").setText("1234");
// this.onSelectFee(button, event);
//}, this);
_this = this;
//#endregion
}, //end initUIComponents
////////<<<商品>>>明细表相关方法
onAddCargoClick: function (button, event) {
var TransactionMethod = this.formEdit.getForm().findField('TransactionMethod').getRawValue();
var baolv = '1.000';
if (TransactionMethod == 'CFR') {
baolv = '1.003';
}
var USDGID = "740DF21C-BDE4-4C3E-A258-683A183AD3B4";
var Exchangerate = "1";
var record = Ext.create('Cargomb', {
'id': '',
'ContractNo': '',
'cargoinfo_id': '',
'name': '',
'price': '0',
'price_agio': '0',
'price_limit': '0',
'amount': '0',
'BoxCount': '0',
'BoxWeight': '0',
'Exporter': '',
'FactoryNo': '',
'Productiondate': '',
'baolv': '1.000',
'tax': '0.0',
'tax_zz': '0.0',
'Unit': '0',
'currid': '740DF21C-BDE4-4C3E-A258-683A183AD3B4',
'Exchangerate': Exchangerate,
'UnitRef': 'KG',
'codename': 'USD'
});
this.storeCargo.add(record);
var n = this.storeCargo.getCount();
this.cellEditingCargo.startEditByPosition({ row: n - 1, column: 2 });
},
onDelCargoClick: function (button, event) {
var selectedRecords = this.formCargo.selModel.getSelection();
Ext.MessageBox.confirm('提示', '确定删除记录吗?', function (btn) {
if (btn == 'yes') {
for (var i = 0; i < selectedRecords.length; i++) {
var rec = selectedRecords[i];
if (this.getCargoAPPUsed(rec.id) != true) {
alert("此商品已配证,不能删除");
}
if (rec.ContractNo != "" || rec.ContractNo != "*") //如果是新增但没有保存的数据,没有必要提交到后台
{
this.CargoDel.push(rec);
}
this.storeCargo.remove(selectedRecords[i]);
}
}
}, this);
},
getCargoAPPUsed: function (cargo_id) {
this.storeBank = Ext.create('DsExt.ux.RefTableStore', {
model: 'DsTruckMng.ux.GeneralValue', proxy: { url: '/CommMng/BasicDataRef/GeneralSelect' }
});
this.storeBank.load({
async: false,
params: { condition: "select Count(*) GVALUE,'' as GID from Import_appstate where isnull(cancellation,0)=0 and cargo_id=" + cargo_id + " " }
, callback: function (options, success, response) {
if (success) {
var result = Ext.JSON.decode(response.responseText);
/*if (!result.Success) {
Ext.Msg.show({
title: '提示',
msg: result.Message,
icon: Ext.MessageBox.ERROR,
buttons: Ext.Msg.OK
});
return;
}*/
var data = result.data;
if (parseFloat(data.GVALUE) > 0) {
return false;
} else
return true;
} else {
Ext.MessageBox.alert('请求出现错误,请重试', response.responseText);
}
}
});
},
onKCStartClick: function (button, event) {//初始化库存,
Ext.MessageBox.confirm('提示', '这将会清空该货物的所有库存重新开始记录。确定初始化库存吗?', function (btn) {
if (btn == 'yes') {
var selectedRecords = this.formCargo.selModel.getSelection();
if (selectedRecords.length == 0) {
alert('请选择至少一条商品记录');
return;
}
var cargoidlist = '';
for (var i = 0; i < selectedRecords.length; i++) {
var rec = selectedRecords[i];
if (i == 0) {
cargoidlist = "'" + rec.get('id') + "'";
}
else {
cargoidlist = cargoidlist + ',' + "'" + rec.get('id') + "'";
}
}
Ext.Ajax.request({//
waitMsg: '正在初始化库存数据...',
url: '/Import/XXH/KCStart',
params: {
cargo_id: cargoidlist
},
callback: function (_count) {
//alert('初始化完成');
//重新load库存表的store
//this.storeKC.load({ params: { condition: "K.ContractNo = '" + this.editRecord.get('ContractNo') + "' and K.corpid='" + COMPANYID + "'" } });
},
scope: this
});//request over
}
}, this);//确认窗口over
},
onbtnCWStartClick: function (button, event) { //全部生成
Ext.MessageBox.confirm('提示', '这将会在应收应付列表增加一些内容,如不保存就不会真正增加。确定吗?',
function (btn) {
if (btn === 'yes') {
var selectedRecords = _this.formCargo.selModel.getSelection();
switch (button.text) {
case "生成税金":
_this.setPaytax(selectedRecords);//设置税金
break;
case "生成预付款":
_this.setPrepayments(selectedRecords);//设置预付款(包括对应的电汇费、手续费)
break;
case "生成尾款":
_this.setBalance(selectedRecords);//设置尾款(包括对应的电汇费、手续费)
break;
case "生成代理费":
_this.setWeight(selectedRecords);//设置代理费
break;
default://全部生成
_this.setPaytax(selectedRecords);//设置税金
_this.setPrepayments(selectedRecords);//设置预付款(包括对应的电汇费、手续费)
_this.setBalance(selectedRecords);//设置尾款(包括对应的电汇费、手续费)
_this.setWeight(selectedRecords);//设置代理费
break;
}
}
},
this); //确认窗口over
},
/**
* 设置 关税、增值税
* @returns {void}
*/
setPaytax: function (selectedRecords) {
var paytax = 0;
var gettax = 0;
var paytaxZz = 0;
var gettaxZz = 0;
var usdTax1 = 0;
var usdTaxZz1 = 0;
var usdTax2 = 0;
var usdTaxZz2 = 0;
var tax = 0;
var taxZz = 0;
var taxAmount = 0;
var isChicken = false;
for (var i = 0; i < selectedRecords.length; i++) {
var rec = selectedRecords[i];
if (rec.get('cicode') === '0207142100' || rec.get('cicode') === '0207142200' || rec.get('cicode') === '0207142900' || rec.get('cicode') === '0207141100')
isChicken = true;
}
for (var i = 0; i < selectedRecords.length; i++) {
var rec = selectedRecords[i];
tax = parseFloat(rec.get('tax'));
taxZz = parseFloat(rec.get('tax_zz'));
taxAmount = rec.get('tax_Amount');
paytax = paytax + parseFloat(rec.get('tax_2'));
gettax = gettax + parseFloat(rec.get('tax_1'));
paytaxZz = paytaxZz + parseFloat(rec.get('tax_zz_2'));
gettaxZz = gettaxZz + parseFloat(rec.get('tax_zz_1'));
usdTax1 = Add(usdTax1, Mul(taxAmount, tax));
usdTaxZz1 = Add(usdTaxZz1, Mul(taxAmount, Mul(Add(1, tax), taxZz)));
usdTax2 = Add(usdTax2, Mul(taxAmount, tax));
usdTaxZz2 = Add(usdTaxZz2, Mul(taxAmount, Mul(Add(1, tax), taxZz)));
}
if (isChicken) {
this.addChFee(2, 'RMB', 1, '关税', round2(paytax, 2), 1, '');
this.addChFee(2, 'RMB', 1, '增值税', round2(paytaxZz, 2), 1, '');
this.addChFee(1, 'RMB', 1, '关税', round2(gettax, 2), 1, '');
this.addChFee(1, 'RMB', 1, '增值税', round2(gettaxZz, 2), 1, '');
} else {
this.addChFee(2, 'RMB', 1, '关税', round2(paytax, 2), 1, usdTax2 + ' USD');
this.addChFee(2, 'RMB', 1, '增值税', round2(paytaxZz, 2), 1, usdTaxZz2 + ' USD');
this.addChFee(1, 'RMB', 1, '关税', round2(gettax, 2), 1, usdTax1 + ' USD');
this.addChFee(1, 'RMB', 1, '增值税', round2(gettaxZz, 2), 1, usdTaxZz1 + ' USD');
}
},
//#region 设置 预付款
setPrepayments: function (selectedRecords) {
var prepayments1 = 0;
var prepayments2 = 0;
var preRemark = '';
var exchangerate = 0;
var codename = "";
for (var i = 0; i < selectedRecords.length; i++) {
var rec = selectedRecords[i];
preRemark = preRemark + rec.get('prepayments') + ' ';
prepayments1 = Add(prepayments1, rec.get('prepayments'), 2);
prepayments2 = Add(prepayments2, rec.get('pay_prepayments'), 2);
exchangerate = parseFloat(rec.get('Exchangerate'));
codename = rec.get('codename');
}
if (parseFloat(prepayments1) > 0) {
this.addChFee(1, 'RMB', 1, '预付款', Mul(prepayments1, exchangerate, 2), 1, prepayments1 + codename + ' 其中:' + preRemark);
this.addChFee(1, 'RMB', 1, '电汇费', 150, 1, '预付款电汇费');
this.addChFee(1, 'RMB', 1, '手续费', round2((prepayments1 * exchangerate) / 1000, 2), 1, '预付款手续费');
}
if (parseFloat(prepayments2) > 0) {
this.addChFee(2, codename, exchangerate, '预付款', prepayments2, 1, prepayments2 + codename);
}
},
//#endregion
/**
* 设置 尾款
* @returns {void}
*/
setBalance: function (selectedRecords) {
var balance1 = 0;
var balance2 = 0;
var balanceRemark = '';
var exchangerate = 0;
var codename = "";
for (var i = 0; i < selectedRecords.length; i++) {
var rec = selectedRecords[i];
exchangerate = parseFloat(rec.get('Exchangerate'));
balance1 = Add(balance1, rec.get('balance'), 2);
balance2 = Add(balance2, rec.get('pay_balance'), 2);
if (parseFloat(rec.get('price_agio')) > 0)
balanceRemark = balanceRemark + '差价' + rec.get('price_agio') + ' ';
codename = rec.get('codename');
}
this.addChFee(1, 'RMB', 1, '尾款', Mul(balance1, exchangerate, 2), 1, balance1 + codename);
this.addChFee(2, codename, exchangerate, '尾款', balance2, 1, balance2 + codename + " " + balanceRemark);
this.addChFee(1, 'RMB', 1, '电汇费', 150, 1, '尾款电汇费');
this.addChFee(1, 'RMB', 1, '手续费', round2((balance1 * exchangerate) / 1000, 2), 1, '尾款手续费');
},
//#region 设置 代理费
setWeight: function (selectedRecords) {
var weight = 0;
for (var i = 0; i < selectedRecords.length; i++) {
var rec = selectedRecords[i];
weight = weight + parseFloat(rec.get('weight'));
}
this.addChFee(1, 'RMB', 1, '代理费', rec.get('AGENCRATE'), (weight / 1000).toFixed(4));
},
//#endregion
onKCFeeClick: function (button, event) { //初始化应收应付,
Ext.MessageBox.confirm('提示', '这将会在应收应付列表增加一些内容,如不保存就不会真正增加。确定吗?',
function (btn) {
if (btn == 'yes') {
function GetDateStr(AddDayCount) {
var dd = new Date();
dd.setDate(dd.getDate() + AddDayCount);//获取AddDayCount天后的日期
var y = dd.getFullYear();
var m = dd.getMonth() + 1;//获取当前月份的日期
var d = dd.getDate();
return y + "-" + m + "-" + d;
}
var EnterDate = GetDateStr(0);
var selectedRecords = this.formKC.selModel.getSelection();
var CRK = 0.0;
var LC = 0.0;
var CustomerName = "";
for (var i = 0; i < selectedRecords.length; i++) {
var rec = selectedRecords[i];
var FeeName = rec.get('FeeName');
var Amount = rec.get('Amount');
var UnitPrice = rec.get('UnitPrice');
var Quantity = rec.get('Quantity');
var days = rec.get('days');
if (CustomerName == "") {
CustomerName = rec.get('kfstate');
} else {
if (CustomerName != rec.get('kfstate')) {
alert("不能同时生成多个库房的费用")
}
}
var dt = new Date(rec.get('czdate'));
var _dt = Ext.util.Format.date(dt, 'Y-m-d')
if (FeeName == '出入库费') {
//this.addChFee(1,'RMB',1,'出入库费',round2(Amount,2),1,'',rec.get('id'),rec.get('czdate'));
//this.addChFee(2,'RMB',1,'出入库费',round2(Amount,2),1,'',rec.get('id'),rec.get('czdate'));
CRK = CRK + round2(Amount, 2);
} else if (FeeName == '冷藏费') {
//this.addChFee(1,'RMB',1,FeeName,parseFloat(UnitPrice)*parseFloat(Quantity),parseFloat(days),'',rec.get('id'),rec.get('czdate'));
//this.addChFee(2,'RMB',1,FeeName,parseFloat(UnitPrice)*parseFloat(Quantity),parseFloat(days),'',rec.get('id'),rec.get('czdate'));
LC = LC + Mul(parseFloat(UnitPrice) * parseFloat(Quantity), parseFloat(days));
} else {
this.addChFee(1, 'RMB', 1, FeeName, parseFloat(UnitPrice) * parseFloat(Quantity), parseFloat(days), _dt + " " + FeeName, rec.get('id'), EnterDate, this.getCustName());
this.addChFee(2, 'RMB', 1, FeeName, parseFloat(UnitPrice) * parseFloat(Quantity), parseFloat(days), _dt + " " + FeeName, rec.get('id'), EnterDate, CustomerName);
}
}
if (CRK > 0) {
this.addChFee(1, 'RMB', 1, '出入库费', CRK, 1, _dt + " 出入库费", rec.get('id'), EnterDate, this.getCustName());
this.addChFee(2, 'RMB', 1, '出入库费', CRK, 1, _dt + " 出入库费", rec.get('id'), EnterDate, CustomerName);
}
if (LC > 0) {
this.addChFee(1, 'RMB', 1, '冷藏费', LC, 1, _dt + " 冷藏费", rec.get('id'), EnterDate, this.getCustName());
this.addChFee(2, 'RMB', 1, '冷藏费', LC, 1, _dt + " 冷藏费", rec.get('id'), EnterDate, CustomerName);
}
}
},
this); //确认窗口over
},
onPLEDGEClick: function (button, event) { //初始化应收应付,
Ext.MessageBox.confirm('提示', '将根据选中的入库信息生成质押权转移记录,。确定吗?',
function (btn) {
if (btn == 'yes') {
var selectedRecords = this.formKC.selModel.getSelection();
for (var i = 0; i < selectedRecords.length; i++) {
//查询剩余数量
//增加一个原质押者质押权转移 出库数量
var r_out = selectedRecords[i];
r_out.set('czstate', "7");
//r_out.
//增加一个新质押者质押权转移 入库数量
}
}
},
this); //确认窗口over
},
addChFee: function (FeeType, Currency, Exchangerate, FeeName, price, Quantity, Remark, FeeDescription, feedate, CustomerName, gid) {
var _CustomerName = "";
if (FeeType == 1) {
var _FeeType = 1;
var _FeeType_Ref = '应收';
_CustomerName = this.getCustName();
}
else {
var _FeeType = 2;
var _FeeType_Ref = '应付';
_CustomerName = this.getSellerName();
if (FeeName == '关税' || FeeName == '增值税') { _CustomerName = ''; }
if (FeeName == '冷藏费' || FeeName == '仓储费' || FeeName == '出入库费' || FeeName == '超期制冷费' || FeeName == '倒柜费') { _CustomerName = CustomerName; }
//CustomerName: this.formEdit.getForm().findField('seller');
};
var Sort = "0";
if (FeeName == '购货款') {
Sort = "1";
} else
if (FeeName == '预付款') {
Sort = "2";
} else
if (FeeName == '尾款') {
Sort = "3";
} else
if (FeeName == '关税') {
Sort = "4";
} else
if (FeeName == '增值税') {
Sort = "5";
} else
if (FeeName == '电汇费') {
Sort = "6";
} else
if (FeeName == '手续费') {
Sort = "7";
} else
if (FeeName == '代理费') {
Sort = "8";
} else
if (FeeName == '拖车费') {
Sort = "9";
} else
if (FeeName == '商检验货费') {
Sort = "10";
} else
if (FeeName == '出入库费') {
Sort = "11";
} else
if (FeeName == '冷藏费') {
Sort = "12";
} else
if (FeeName == '超期制冷费') {
Sort = "13";
} else
if (FeeName == '看货费') {
Sort = "14";
} else {
Sort = "999";
}
//var _Amount=price*Quantity;
var _Amount = 0;
function GetDateStr(AddDayCount) {
var dd = new Date();
dd.setDate(dd.getDate() + AddDayCount);//获取AddDayCount天后的日期
var y = dd.getFullYear();
var m = dd.getMonth() + 1;//获取当前月份的日期
var d = dd.getDate();
return y + "-" + m + "-" + d;
}
var EnterDate = GetDateStr(0);
if (feedate == "" || typeof (feedate) == "undefined") {
EnterDate = GetDateStr(0);
} else {
EnterDate = feedate;
}
var myDate = new Date();
record = Ext.create('MsChFee', {
GId: NewGuid(),
PaymentGID: gid,
BsNo: '*',
FeeStatus: 1,
FeeStatus_Ref: '录入状态',
FeeType: _FeeType,
FeeType_Ref: _FeeType_Ref,
FeeName: FeeName,
FeeName_Ref: '',
FeeDescription: FeeDescription,
CustomerType: '',
CustomerName: _CustomerName,
//this.formEdit.getForm().findField('buyer');
CustomerName_Ref: '',
Unit: '',
price: 0,
UnitPrice: price,
Quantity: Quantity,
Amount: _Amount,
Currency: Currency,
ExChangerate: Exchangerate,
Reason: '',
Remark: Remark,
Commissionrate: 0,
Settlement: 0,
Invoice: 0,
OrderAmount: 0,
OrderInvoice: 0,
SubmitDate: null,
Auditoperator: '',
AuditDate: null,
EnteroPerator: USERID,
OpName: SHOWNAME,
EnterDate: myDate,
DebitNo: '',
IsDebit: "0",
IsOpen: "0",
IsAdvancedpay: "0",
Sort: Sort,
IsInvoice: "0",
FeeFrt: 'PP',
IsCrmOrderFee: "0",
AuditStatus: 0,
InvoiceNum: '',
ChequeNum: '',
WmsOutBsNo: '',
ISACC: '0'
});
if (FeeType == 1) {
this.panelFee.storeDrChFee.add(record);
for (var i = 0; i < this.panelFee.storeDrChFee.getCount(); i++) {
_f = this.panelFee.storeDrChFee.getAt(i); //遍历每一行
if (_f.get('Amount') == 0 || _f.get('Amount') == "") {
_f.set('Amount', Mul(_f.get('UnitPrice'), _f.get('Quantity')));
}
}
}
else {
this.panelFee.storeCrChFee.add(record);
for (var i = 0; i < this.panelFee.storeCrChFee.getCount(); i++) {
_f = this.panelFee.storeCrChFee.getAt(i); //遍历每一行
if (_f.get('Amount') == 0 || _f.get('Amount') == "") {
_f.set('Amount', Mul(_f.get('UnitPrice'), _f.get('Quantity')));
}
}
}
},
//商品信息编辑前事件
CargoBeforeEdit: function (editor, e) {
var cargo_id = e.record.get('id');
var canedit = true;
this.APPUsing = 0;
if (e.field == 'cargoinfo_id' || e.field == 'cargociq_id' || e.field == 'Unit'
|| e.field == 'U_weight' || e.field == 'U_PRICE'/*||e.field == 'weight'*/)
//Unit U_weight weight
Ext.Ajax.request({
waitMsg: '正在查询数据...',
url: '/Import/UseApproval/Getused',
scope: this,
async: false,
params: { cargo_id: cargo_id },
waitMsg: "正在查询数据...",
callback: function (options, success, response) {
if (success) {
var jsonresult = Ext.JSON.decode(response.responseText);
var returnData = jsonresult.data;
//alert(returnData.Count);
this.APPUsing = parseInt(returnData.Count);
} else {
Ext.Msg.show({
title: '请重试',
msg: '服务器响应出错',
icon: Ext.Msg.ERROR, buttons: Ext.Msg.OK
});
return;
}
}
});
/*
if (this.APPUsing>0) {
canedit=false;
}*/
//20150505 当合同状态为审单或更往后的状态 禁止修改单价和重量。
var Mainstate = parseInt(this.editRecord.get('Mainstate'));
if (Mainstate > 1 && (e.field == 'weight' || e.field == 'price' || e.field == 'Unit' || e.field == 'U_weight' || e.field == 'U_PRICE'))//||e.field == 'price_agio'
{
canedit = false;
alert("审单之后即不能修改重量、重量单位和价格");
}
var USDGID = e.record.get('currid');
var Exchangerate = "1";
//var currrecords = DsStoreQueryBy(this.storecurrQZ, 'GID', USDGID);
//if (currrecords.getCount() > 0) {
// currdata=currrecords.getAt(0).data;
// this. storeExchangerate.add(new Exchangeratemb({
// Value: currdata.DEFRATE,
// SOURACE: currdata.DEFRATE+"_日期区间汇率"
// }));
//}
//var currrecords = DsStoreQueryBy(this.storecurr, 'gid', USDGID);
//if (currrecords.getCount() > 0) {
// currdata=currrecords.getAt(0).data;
// //Exchangerate=currdata.defaultrate;
// this.storeExchangerate.add(new Exchangeratemb({
// Value: currdata.defaultrate,
// SOURACE: currdata.defaultrate+"_默认汇率"
// }));
//}
var LOCK_EXCHANGERATE = this.formEdit.getForm().findField('LOCK_EXCHANGERATE').getValue();
if (LOCK_EXCHANGERATE == true && (e.field == 'Exchangerate' || e.field == 'currid'))//||e.field == 'price_agio'
{
canedit = false;
alert("锁汇状态下不能修改汇率");
}
if (LOCK_EXCHANGERATE == false && (e.field == 'Exchangerate' || e.field == 'Exchangerate_Customs' || e.field == 'currid')) {
//商务汇率 编辑前载入汇率 但只载入一次
//如果不同商品使用不同币别,则会有错误隐患
if (this.storeExchangerate.getCount() == 0) {
this.storeExchangerate.load({
params: {
Date: currdate.format('yyyy-MM-dd'),
Currency: USDGID //传入币别GID
}
});
}
//海关汇率
if (this.storeExchangerate2.getCount() == 0) {
data = this.formEdit.getForm().getValues();
this.storeExchangerate2.load({
params: {
Date: data.ArrivalDate,
Currency: USDGID //传入币别GID
}
});
}
}
return canedit;
},
CargoAfterEdit: function (editor, e, eOpts) {
//if (e.value==e.originalValue){return;}
function decimal(str, length) {
var _r = round2(str, length);
return (_r);
}
if (e.field == 'weight') {
var cargo_id = e.record.get('id');
APPUsing = 0;
Ext.Ajax.request({
waitMsg: '正在查询数据...',
url: '/Import/UseApproval/Getused',
scope: this,
async: false,
params: { cargo_id: cargo_id },
waitMsg: "正在查询数据...",
callback: function (options, success, response) {
if (success) {
var jsonresult = Ext.JSON.decode(response.responseText);
var returnData = jsonresult.data;
//alert(returnData.Count);
this.APPUsing = parseFloat(returnData.Count);
} else {
Ext.Msg.show({
title: '请重试',
msg: '服务器响应出错',
icon: Ext.Msg.ERROR, buttons: Ext.Msg.OK
});
return;
}
}
});
if (Div(parseFloat(e.value), 1000, 6) > this.APPUsing && this.APPUsing > 0) {//
alert("重量大于许可证用证重量:" + this.APPUsing);
e.record.set('weight', e.originalValue);
return;
}
}
//if (e.field == 'Exchangerate' && e.record.get('Exchangerate_Customs') == 0) {
// e.record.set('Exchangerate_Customs', parseFloat(e.record.get('Exchangerate')))
//}
if (e.field == 'Unit') {
var U_weight = parseFloat(e.record.get('U_weight'));
var Unitrecords = DsStoreQueryBy(this.storeUnit, 'EnumValueId', e.value);
if (Unitrecords.getCount() > 0) {
var Unitdata = Unitrecords.getAt(0).data;
e.record.set('UnitRef', Unitdata.EnumValueName);
if (Unitdata.EnumValueName == '磅') {
e.record.set('UnitRate', '0.4535970244035199');
var weight = Mul(U_weight, 0.4535970244035199);
e.record.set('weight', weight);
}
if (Unitdata.EnumValueName == '吨') {
e.record.set('UnitRate', '1000');
var weight = Mul(U_weight, 1000);
e.record.set('weight', weight);
}
if (Unitdata.EnumValueName == 'KG') {
e.record.set('UnitRate', '1');
var weight = Mul(U_weight, 1);
e.record.set('weight', weight);
}
} else {
e.record.set('UnitRef', '');
e.record.set('UnitRate', '1');
}
}
if (e.field == 'U_weight' || e.field == 'U_PRICE') {
if (parseFloat(e.value) == 0) {
return;
}
var U_weight = parseFloat(e.record.get('U_weight'));
var U_PRICE = parseFloat(e.record.get('U_PRICE'));
var UnitRate = parseFloat(e.record.get('UnitRate'));
var weight = parseFloat(e.record.get('weight'));
if (weight == 0) {
} else {
//if (e.record.get('Unit') != '1') {//不是磅
var weight = Mul(U_weight, UnitRate);
//decimal(U_weight * UnitRate, 2);
e.record.set('weight', weight);
var price = Div(U_PRICE, UnitRate, 4);
e.record.set('price', price);
}
//}
/*
var price = decimal(U_PRICE / UnitRate, 4);
e.record.set('price', price);
var price_agio = parseFloat(e.record.get('price_agio'));
var price_limit = parseFloat(e.record.get('price_limit'));
var baolv = parseFloat(e.record.get('baolv'));
var amount = Mul(U_weight,U_PRICE);
//decimal(U_weight * U_PRICE, 2);
var UNIT= e.record.get('UnitRef');
if ((UNIT=='磅')&&(price_agio==0)) {
if (price_limit != 0 && price_limit > (price)) {
var tax_amount = Mul3(price_limit , weight , baolv,2);
//decimal(price_limit * weight * baolv, 2);
} else {
var tax_amount = Mul3(U_weight , U_PRICE , baolv,2);
//decimal(U_weight * U_PRICE * baolv, 2);
}
var pay_amount = Mul(U_weight , U_PRICE );
}else{
if (price_limit != 0 && price_limit > (price - price_agio)) {
var tax_amount = Mul3(price_limit , weight , baolv,2);
//decimal(price_limit * weight * baolv, 2);
} else {
var tax_amount = Mul3(price , weight , baolv,2);
//decimal((price - price_agio) * weight * baolv, 2);
}
var pay_amount = Mul(price,weight);
//decimal((price - price_agio) * weight, 2);
}
e.record.set('Amount', amount);
e.record.set('tax_Amount', tax_amount);
e.record.set('pay_Amount', pay_amount);
var prepayments = parseFloat(parseFloat( e.record.get('prepayments')).toFixed(2));
var balance = Cut(amount,prepayments);
e.record.set('balance', balance);
var pay_prepayments = parseFloat(parseFloat( e.record.get('pay_prepayments')).toFixed(2));
var pay_balance = Cut(pay_amount,pay_prepayments);
e.record.set('pay_balance', pay_balance);
*/
}
if (e.field == 'Unit' || e.field == 'U_weight' || e.field == 'weight' || e.field == 'BoxCount') {
//计算规格 只舍不进
var BoxCount = e.record.get('BoxCount');
var weight = e.record.get('weight');
var _boxcount = Div(weight, BoxCount, 0);
if (parseFloat(_boxcount) > Div(weight, BoxCount, 2)) {
_boxcount = Cut(_boxcount, 1, 0);
} else {
}
e.record.set('BoxWeight', _boxcount);
}
if (e.field == 'currid') {
//alert(e.field);
var currrecords = DsStoreQueryBy(this.storecurr, 'gid', e.value);
if (currrecords.getCount() > 0) {
var currdata = currrecords.getAt(0).data;
e.record.set('codename', currdata.codename);
//e.record.set('Exchangerate', currdata.DEFRATE);
} else {
e.record.set('codename', '');
}
}
//price price_agio price_limit weight baolv
//单价 差价 估价 净重 保率
//amount tax_amount pax_amount
//合同金额 完税价格 购货价
if (e.field == 'price' || e.field == 'price_agio' || e.field == 'price_limit' || e.field == 'baolv' || e.field == 'U_weight' || e.field == 'U_PRICE'
|| e.field == 'weight' || e.field == 'Exchangerate' || e.field == 'Exchangerate_Customs' || e.field == 'tax' || e.field == 'tax_cl' || e.field == 'tax_zz' || e.field == 'Unit') {
var UNIT = e.record.get('UnitRef');
if (UNIT != '磅') {
var price = parseFloat(e.record.get('price'));
var price_agio = parseFloat(e.record.get('price_agio'));
var price_limit = parseFloat(e.record.get('price_limit'));
var baolv = parseFloat(e.record.get('baolv'));
var weight = parseFloat(e.record.get('weight'));
if (price_agio == 0) {
var amount = Mul(weight, price);
} //Mul(price_limit,weight,baolv,2)
else { amount = Mul(weight, price_agio); } //amount=对国内客户的合同金额
var amount_writeoffs = Mul(weight, price);
//get_tax_amount 用于向客户收税金的完税价格
//tax_amount 用于向海关交税金的完税价格
if (price_limit != 0 && price_limit > price) {
var tax_amount = Mul3(price_limit, weight, baolv, 2);
if (price_agio != 0 && price_limit > price_agio) {//海关限价最高
var get_tax_amount = tax_amount;
} else { var get_tax_amount = Mul3(price_agio, weight, baolv, 2); }//差价(对国内客户)高于限价
} else {
var tax_amount = Mul3(price, weight, baolv, 2);
if (price_agio != 0) {
var get_tax_amount = Mul3(price_agio, weight, baolv, 2);
} else { var get_tax_amount = tax_amount; }//差价(对国内客户)高于限价
}
var pay_amount = Mul(weight, price);//贸易商价格x重量x单价
e.record.set('Amount', amount);
e.record.set('tax_Amount', tax_amount);
e.record.set('pay_Amount', pay_amount);
}
else {
var U_weight = parseFloat(e.record.get('U_weight'));
var U_PRICE = parseFloat(e.record.get('U_PRICE'));
var UnitRate = parseFloat(e.record.get('UnitRate'));
//var weight = Mul(U_weight,UnitRate);
var weight = parseFloat(e.record.get('weight'));
//e.record.set('weight', weight);
var price = parseFloat(e.record.get('price'));
var price_agio = parseFloat(e.record.get('price_agio'));
var price_limit = parseFloat(e.record.get('price_limit'));
var baolv = parseFloat(e.record.get('baolv'));
var amount = Mul(U_weight, U_PRICE);
var amount_writeoffs = Mul(weight, price);
var tax_amount = 0;
var pay_amount = Mul(U_weight, U_PRICE);
var UNIT = e.record.get('UnitRef');
if ((UNIT == '磅') && (price_agio == 0)) {
if (price_limit != 0 && price_limit > (price)) {
tax_amount = Mul3(price_limit, weight, baolv, 2);
} else {
tax_amount = Mul3(U_weight, U_PRICE, baolv, 2);
}
//var pay_amount = Mul(U_weight,U_PRICE);
} else {
if (price_limit != 0 && price_limit > price_agio) {
tax_amount = Mul3(price_limit, weight, baolv, 2);
} else {
tax_amount = Mul3(U_weight, U_PRICE, baolv, 2);
}
if (price_agio > price) {
amount = Mul(weight, price_agio);
//pay_amount = Mul(U_weight,U_PRICE);
} else {
//amount = Mul(U_weight,U_PRICE);
//pay_amount = Mul(U_weight,U_PRICE);
}
}
e.record.set('Amount', amount);
e.record.set('AMOUNT_WRITEOFFS', amount_writeoffs);
e.record.set('tax_Amount', tax_amount);
e.record.set('pay_Amount', pay_amount);
amount = parseFloat(e.record.get('Amount'));
tax_amount = parseFloat(e.record.get('tax_Amount'));
pay_amount = parseFloat(e.record.get('pay_Amount'));
}
//if (amount>tax_amount){tax_amount=amount;}//确保tax_amount为给客户显示并使用的完税价格
var tax = parseFloat(e.record.get('tax'));//关税税率
var tax_zz = parseFloat(e.record.get('tax_zz'));//增值税税率
var tax_cl = parseFloat(e.record.get('tax_cl'));//从量税率
var Exchangerate_Customs = e.record.get('Exchangerate_Customs');//海关汇率
var HS = e.record.get('cicode');
var isChicken = false;
var ChickenTax = parseFloat('0.0');
if (tax_cl>0) {
isChicken = true;
ChickenTax = tax_cl;
}
if (isChicken) {
//Mul(weight,price);
var priceandtax = Mul(tax_amount, Exchangerate_Customs) + Div(Mul(weight, ChickenTax),100);
var tax_1 = Div(Mul(weight, ChickenTax), 100);
var tax_zz_1 = Mul(priceandtax, tax_zz);
var tax_2 = tax_1;
var tax_zz_2 = tax_zz_1;
} else {
var priceandtax = Mul(tax_amount, (1.0 + tax)); //完税价格x(1+关税税率)=含关税价格
//应付的
var tax_2 = Mul3(tax_amount, tax, Exchangerate_Customs, 2); //关税
var tax_zz_2 = Mul4(tax_amount, (1.0 + tax), tax_zz, Exchangerate_Customs); //decimal(tax_amount * (1.0 + tax) * tax_zz * Exchangerate_Customs,2); //增值税
//向客户收取的
var weight = parseFloat(e.record.get('weight'));
var price_agio = parseFloat(e.record.get('price_agio'));
if (price_agio != 0 && price_agio > price_limit) {//如果“差价(对国内客户价格)”不为零而且高于限价 关税的完税价格依据差价价格计算
var tax_1 = Mul3(Mul3(weight, price_agio, baolv), tax, Exchangerate_Customs); //应收关税
var tax_zz_1 = Mul4(Mul3(weight, price_agio, baolv), (1.0 + tax), tax_zz, Exchangerate_Customs);//应收增值税
} else {
var tax_1 = tax_2;
var tax_zz_1 = tax_zz_2;
}
}
e.record.set('tax_1', tax_1);
e.record.set('tax_zz_1', tax_zz_1);
e.record.set('tax_2', tax_2);
e.record.set('tax_zz_2', tax_zz_2);
var prepayments = parseFloat(parseFloat(e.record.get('prepayments')).toFixed(2));
var balance = Cut(amount, prepayments);
e.record.set('balance', balance);
var pay_prepayments = parseFloat(parseFloat(e.record.get('pay_prepayments')).toFixed(2));
var pay_balance = Cut(pay_amount, pay_prepayments);
e.record.set('pay_balance', pay_balance);
}
if (e.field == 'prepayments' || e.field == 'Amount') {
//alert(e.field);
var prepayments = e.record.get('prepayments');
var Amount = e.record.get('Amount');
var balance = Cut(Amount, prepayments);
e.record.set('balance', balance);
}
if (e.field == 'pay_prepayments' || e.field == 'pay_Amount') {
//alert(e.field);
var pay_prepayments = e.record.get('pay_prepayments');
var pay_Amount = e.record.get('pay_Amount');
var pay_balance = Cut(pay_Amount, pay_prepayments);
e.record.set('pay_balance', pay_balance);
}
if (e.field == 'PreProportion') {
//alert(e.field);
var Amount = parseFloat(e.record.get('Amount'));
var prepayments = round2(Amount * parseFloat(e.record.get('PreProportion')) * 0.01, 2);
var balance = Amount - prepayments;
e.record.set('pay_prepayments', prepayments);
e.record.set('pay_balance', balance);
}
if (e.field == 'RecProportion') {
//alert(e.field);
var Amount = parseFloat(e.record.get('Amount'));
var prepayments = round2(Amount * parseFloat(e.record.get('RecProportion')) * 0.01, 2);
var balance = Amount - prepayments;
e.record.set('prepayments', prepayments);
e.record.set('balance', balance);
}
},
/////////////明细表<<<商品>>>的相关方法
////////<<<许可证使用>>>明细表相关方法
onAddAppstateClick: function (button, event) {
var record = Ext.create('Appstatemb', {
'id': '',
'appno': '',
'cargoinfo_id': '',
'app_id': '',
'name': ' ',
'cargo_id': ' ',
'cargoname': ' ',
'appweight': '0 ',
'appremain': ' ',
'country': ' ',
'ValidDate': '',
'weight': '',
'info': ''
});
this.storeAppstate.add(record);
var n = this.storeAppstate.getCount();
this.cellEditingAppstate.startEditByPosition({ row: n - 1, column: 2 });
},
onDelAppstateClick: function (button, event) {
var selectedRecords = this.formAppstate.selModel.getSelection();
for (var i = 0; i < selectedRecords.length; i++) {
var rec = selectedRecords[i];
// alert(rec.ContractNo);
if (rec.ContractNo != "" || rec.ContractNo != "*") //如果是新增但没有保存的数据,没有必要提交到后台
{
this.AppstateDel.push(rec);
}
//alert(i);
this.storeAppstate.remove(selectedRecords[i]);
}
},
AppstateAfterEdit: function (editor, e, eOpts) {
//需要自己实现里面的事件
if (e.field == 'app_id') {
var apprecords = DsStoreQueryBy(this.storeApp, 'app_id', e.value);
if (apprecords.getCount() > 0) {
var appdata = apprecords.getAt(0).data;
e.record.set('app_id', appdata.app_id);
e.record.set('appno', appdata.appno);
e.record.set('name', appdata.name);
e.record.set('appweight', appdata.appweight);
e.record.set('appremain', appdata.appremain);
e.record.set('country', appdata.country);
e.record.set('ValidDate', appdata.ValidDate);
} else {
e.record.set('name', ' ');
e.record.set('appweight', ' ');
e.record.set('appremain', ' ');
e.record.set('country', ' ');
e.record.set('ValidDate', ' ');
}
}
if (e.field == 'cargo_id') {
var cargo = DsStoreQueryBy(this.storeCargo, 'id', e.value);
if (cargo.getCount() > 0) {
var cargodata = cargo.getAt(0).data;
e.record.set('cargo_id', cargodata.name);
e.record.set('cargoname', cargodata.name);
//alert(e.record.get('cargo_id'));
} else {
//alert(cargodata.name);
e.record.set('cargoname', ' ');
}
}
},
//-------------明细表<<<许可证使用>>>的相关方法 over
////////<<<库存记录>>>明细表相关方法
onAddKCClick: function (button, event) {
//var _date= currdate.format('yyyy-MM-dd HH:mm:ss');
var record = Ext.create('KCmb', {
'id': '',
'ContractNo': '',
'cargo_id': '',
'name': '',
'czstate': '',
'innum': '0',
'outnum': '0',
'kfstate': '',
'czdate': '',
'Quantity': '0',
'text': '',
'czref': '',
'kfref': '',
'CORPID': COMPANYID,
'ENTEROPERATOR': USERID
});
this.storeKC.add(record);
var n = this.storeKC.getCount();
this.cellEditingKC.startEditByPosition({ row: n - 1, column: 2 });
},
onDelKCClick: function (button, event) {
var selectedRecords = this.formKC.selModel.getSelection();
for (var i = 0; i < selectedRecords.length; i++) {
var rec = selectedRecords[i];
// alert(rec.ContractNo);
if (rec.ContractNo != "" || rec.ContractNo != "*") //如果是新增但没有保存的数据,没有必要提交到后台
{
this.KCDel.push(rec);
}
//alert(i);
this.storeKC.remove(selectedRecords[i]);
}
},
KCAfterEdit: function (editor, e, eOpts) {
if (e.field == 'czstate') {
var czstaterecords = DsStoreQueryBy(this.storeczstate, 'EnumValueId', e.value);
if (czstaterecords.getCount() > 0) {
var czstatedata = czstaterecords.getAt(0).data;
e.record.set('czref', czstatedata.EnumValueName);
if (czstatedata.EnumValueName == "入库") {
e.record.set('FeeName', "出入库费");
}
if (czstatedata.EnumValueName == "出库") {
e.record.set('FeeName', "冷藏费");
}
if (czstatedata.EnumValueName == "倒柜") {
e.record.set('FeeName', "倒柜费");
}
if (czstatedata.EnumValueName == "结费(未出库)") {
e.record.set('FeeName', "冷藏费");
}
} else {
e.record.set('czref', '');
}
}
if (e.field == 'kfstate') {
var kfstaterecords = DsStoreQueryBy(this.storekfstate, 'CustName', e.value);
if (kfstaterecords.getCount() > 0) {
var kfstatedata = kfstaterecords.getAt(0).data;
e.record.set('kfstate', kfstatedata.CustName);
} else {
e.record.set('kfstate', '');
}
//将单价更新到单价里
if (parseFloat(e.record.get('UnitPrice')) <= 0) {
e.record.set('UnitPrice', kfstatedata.UNITPRICE);
}
}
if (e.field == 'cargo_id') {
var cargo = DsStoreQueryBy(this.storeCargo, 'id', e.value);
if (cargo.getCount() > 0) {
var cargodata = cargo.getAt(0).data;
e.record.set('cargo_id', cargodata.id);
e.record.set('cargoname', cargodata.NAME_REF);
} else {
//alert(cargodata.name);
e.record.set('cargoname', ' ');
}
}
if (e.field == 'czstate' || e.field == 'cargo_id') {
var czstate = e.record.get('czstate');
var cargo_id = e.record.get('cargo_id');
if (czstate == "" || cargo_id == "") {
} else {
var cargo = DsStoreQueryBy(this.storeCargo, 'id', e.record.get('cargo_id'));
var weight = 0;
var BoxCount = 0;
if (cargo.getCount() > 0) {
var cargodata = cargo.getAt(0).data;
weight = parseFloat(Div(cargodata.weight, 1000, 6));
if (this.formEdit.getForm().findField('port').getRawValue() == "天津") {
BoxCount = Cut(cargodata.BoxCount, 1);
} else {
BoxCount = cargodata.BoxCount;
}
}
var czstate = e.record.get('czstate');
//////////////////////////////////////////////
var remind = 0;
var weight_remind = 0;
for (var i = 0; i < this.storeKC.getCount(); i += 1) {
var member = this.storeKC.getAt(i).data;
if (member.cargo_id == e.record.get('cargo_id') && member.id != e.record.get('id')) {
remind = Add(remind, parseFloat(member.innum));
remind = Cut(remind, parseFloat(member.outnum));
if (member.czstate == "1") {
weight_remind = Add(weight_remind, member.Quantity, 6);
}
if (member.czstate == "3") {
weight_remind = Cut(weight_remind, member.Quantity, 6);
}
}
}
var cargo = DsStoreQueryBy(this.storeCargo, 'id', e.record.get('cargo_id'));
var m_weight = 0;//中间值
//var BoxCount=0;
if (cargo.getCount() > 0) {
var cargodata = cargo.getAt(0).data;
m_weight = parseFloat(Div(cargodata.weight, 1000, 6));
//BoxCount = Cut(cargodata.BoxCount,1);
}
_weight = weight_remind;
//e.record.set('Quantity',_weight);
///////////////////////////////////////////////////
//1 入库 innum写入BoxCount Quantity写入weight
if (czstate == "1") {
e.record.set('Quantity', weight);
e.record.set('innum', BoxCount);
e.record.set('outnum', 0);
}
//2 转移库存 innumoutnum写入BoxCount Quantity写入weight
if (czstate == "2") {
e.record.set('innum', BoxCount);
e.record.set('outnum', BoxCount);
e.record.set('Quantity', weight);
}
//3 出库 outnum写入BoxCount Quantity写入weight
if (czstate == "3") {
e.record.set('innum', 0);
e.record.set('outnum', remind);
e.record.set('Quantity', _weight);
}
//4 倒柜 Quantity写入weight
if (czstate == "4") {
e.record.set('innum', BoxCount);
e.record.set('outnum', BoxCount);
e.record.set('Quantity', weight);
}
//5 直送 Quantity写入weight
if (czstate == "5") {
e.record.set('innum', 0);
e.record.set('outnum', 0);
e.record.set('Quantity', weight);
}
//6 结费未出库 Quantity写入weight
if (czstate == "6") {
e.record.set('innum', 0);
e.record.set('outnum', 0);
e.record.set('Quantity', _weight);
}
//7 质押权转移
}
}
if (e.field == 'outnum') {
var czstate = e.record.get('czstate');
if (czstate == "3" || czstate == "6") {
var remind = 0;
var weight_remind = 0;
var RealInNum = 0;
var firstOut = false;//用于标记是否出库过。第一次入库之外的操作,入库值都当作最初实际入库计算
for (var i = 0; i < this.storeKC.getCount(); i += 1) {
var member = this.storeKC.getAt(i).data;
if (member.cargo_id == e.record.get('cargo_id') && member.id != e.record.get('id')) {
remind = Add(remind, parseFloat(member.innum));
remind = Cut(remind, parseFloat(member.outnum));
if (member.czstate == "1") {
weight_remind = Add(weight_remind, member.Quantity, 6);
}
if (member.czstate == "3") {
weight_remind = Cut(weight_remind, member.Quantity, 6);
}
if (member.czstate != "1") {
firstOut = true;
}
if (firstOut == false) {
RealInNum = Add(RealInNum, member.innum);
}
}
}
var cargo = DsStoreQueryBy(this.storeCargo, 'id', e.record.get('cargo_id'));
var weight = 0;
//var BoxCount=0;
if (cargo.getCount() > 0) {
var cargodata = cargo.getAt(0).data;
weight = parseFloat(Div(cargodata.weight, 1000, 6));
//BoxCount = Cut(cargodata.BoxCount,1);
}
if (e.value != remind) {
_weight = Mul(Div(e.value, RealInNum), weight);
} else {
_weight = weight_remind;
}
e.record.set('Quantity', _weight);
}
}
/* for (var i = 0; i < this.storeKC.getCount(); i += 1) {
var member = this.storeKC.getAt(i).data;
if (member.czdate==null||member.czdate=="" ) {
alert("操作时间不应为空");
_r= false;
}else{_r= true;}
}*/
if (e.field == 'czstate' || e.field == 'czdate') {
if (!e.record.get('czdate') && e.field == 'czdate') {
alert("操作时间不应为空");
} else
if (e.record.get('czstate') == "3" || e.record.get('czstate') == "6") {//出库或结费
//获取此条出库之前最近的一条入库操作时间,
var ContractNo = this.editRecord.get('ContractNo');
var LastCZDate = "";
var LastCZState = "";
Ext.Ajax.request({
waitMsg: '正在查询数据...',
url: '/Import/XXH/GetLastCZ',
scope: this,
async: false,
params: { condition: ContractNo, id: e.record.get('id'), cargo_id: e.record.get('cargo_id') },
waitMsg: "正在查询数据...",
callback: function (options, success, response) {
if (success) {
var jsonresult = Ext.JSON.decode(response.responseText);
var returnData = jsonresult.data;
//alert(returnData.CZDate);
LastCZDate = returnData.CZDate;
LastCZState = returnData.CZstate;
var _e = Ext.util.Format.date(e.record.get('czdate'), 'Y-m-d'); //格式化日期控件值
var _s = Ext.util.Format.date(LastCZDate, 'Y-m-d'); //格式化日期控件值
var arr = _s.split("-");
var LastCZ = new Date(Number(arr[0]), Number(arr[1]) - 1, Number(arr[2]) + 1);
var nextday = LastCZ.getFullYear() + "-" + (LastCZ.getMonth() + 1) + "-" + LastCZ.getDate();
var end = new Date(_e);
var start = new Date(_s);
if (LastCZState == "1") {
var elapsed = Math.round((end.getTime() - start.getTime()) / (86400000)) + 1; // 计算间隔日数
//alert(nextday);
e.record.set('text', _s);
} else
var elapsed = Math.round((end.getTime() - start.getTime()) / (86400000)); // 计算间隔日数
//alert(_s);
e.record.set('days', elapsed);
e.record.set('text', nextday);
} else {
Ext.Msg.show({
title: '请重试',
msg: '服务器响应出错',
icon: Ext.Msg.ERROR, buttons: Ext.Msg.OK
});
return;
}
}
});
}
}
if (e.field == 'days' || e.field == 'UnitPrice' || e.field == 'Quantity') {
var days = parseFloat(e.record.get('days'));
var UnitPrice = parseFloat(e.record.get('UnitPrice'));
var Quantity = parseFloat(e.record.get('Quantity'));
var feename = e.record.get('FeeName');
if (feename == "出入库费") {
days = 1;
}
e.record.set('Amount', days * UnitPrice * Quantity);
}
},
///-------------明细表<<<库存记录>>>的相关方法 over
//单据表 明细表相关方法
onAddReceiptClick: function (button, event) {
// var newSerialno = DsGetNewSerialNo(this.storeBodyList, this.serialNo);
// this.serialNo = newSerialno;
var record = Ext.create('RECEIPTmb', {
'id': '',
'ContractNo': '',
'GID': NewGuid(),
'BSNO': '',
'RECEIPTNO': '',
'RECEIPTTYPE': '',
'RECEIVE_MAN': '',
'RECEIVE_DATE': '',
'SEND_MAN': '',
'SEND_DATE': '',
'TRANCER': '',
'TRANCNO': '',
'ISREPEAT': 'false',
'REPEAT_MAN': '',
'REPEAT_DATE': '',
'ISRECEIVE': 'false',
'RETURN_MAN': '',
'RETURN_DATE': '',
'RETURN_TRANCER': '',
'RETURN_TRANCNO': '',
'REMARK': '',
'CORPID': '',
'CREATEUSER': '',
'CREATETIME': '',
'MODIFIEDUSER': USERID,
'MODIFIEDTIME': ''
});
this.storeReceipt.add(record);
var n = this.storeReceipt.getCount();
this.cellEditingReceipt.startEditByPosition({ row: n - 1, column: 2 });
}, //end onAddDetailClick
onDelReceiptClick: function (button, event) {
this.deleteDetail();
}, //onDelDetailClick
ReceiptAfterEdit: function (editor, e, eOpts) {
//需要自己实现里面的事件
if (e.field == 'Receiptid') {
var Receiptrecords = DsStoreQueryBy(this.storeReceiptid, 'EnumValueId', e.value);
if (Receiptrecords.getCount() > 0) {
var Receiptdata = Receiptrecords.getAt(0).data;
e.record.set('ReceiptName', Receiptdata.EnumValueName);
} else {
e.record.set('ReceiptName', '');
}
}
if (e.field == 'state') {
var staterecords = DsStoreQueryBy(this.storeReceiptstate, 'EnumValueId', e.value);
if (staterecords.getCount() > 0) {
var statedata = staterecords.getAt(0).data;
e.record.set('statename', statedata.EnumValueName);
} else {
e.record.set('statename', '');
}
}
},
deleteDetail: function () {
var selectedRecords = this.gridListReceipt.selModel.getSelection();
for (var i = 0; i < selectedRecords.length; i++) {
var rec = selectedRecords[i];
// alert(rec.ContractNo);
if (rec.ContractNo != "" || rec.ContractNo != "*") //如果是新增但没有保存的数据,没有必要提交到后台
{
this.bodyDel.push(rec);
}
//alert(i);
this.storeReceipt.remove(selectedRecords[i]);
}
},
//end 单据表 明细表相关方法
// 明细表 <<<<<<<<<<<<<费用表相关方法
cellEditingChFeeBeforeEdit: function (editor, e) {
var chfeefeeStatus = e.record.get('FeeStatus');
var canedit = chfeefeeStatus == 1 || chfeefeeStatus == 6;
if (canedit == true) {
var type = e.record.get('FeeType');
var op = e.record.get('EnteroPerator');
var opname = e.record.get('OpName');
if (type == 1) {
var records = DsStoreQueryBy(this.StoreDrOpRange, 'OPID', op);
if (records.getCount() > 0) {
} else {
Ext.Msg.show({ title: '提示', msg: '你没有权限修改' + opname + '录入的费用!', icon: Ext.Msg.INFO, buttons: Ext.Msg.OK });
canedit = false;
}
} else if (type == 2) {
var records = DsStoreQueryBy(this.StoreCrOpRange, 'OPID', op);
if (records.getCount() > 0) {
} else {
Ext.Msg.show({ title: '提示', msg: '你没有权限修改' + opname + '录入的费用!', icon: Ext.Msg.INFO, buttons: Ext.Msg.OK });
canedit = false;
}
}
}
if (e.record.get('IsDebit') == "1") {
Ext.Msg.show({ title: '提示', msg: '当前费用已对账,无法修改!', icon: Ext.Msg.INFO, buttons: Ext.Msg.OK });
canedit = false;
}
return canedit;
},
onAddDetailClick: function (button, event, type) {
var allow = this.getAllowOperationDetail();
if (allow == false) {
return;
}
var store = null;
if (type == 1) {
store = this.storeBodyChFee;
} else if (type == 2) {
store = this.storeBodyChFee_YF;
} else {
alert('函数(onAddDetailClick)的参数type类型设置的不对');
return;
}
var CUSTNAME = this.getCustName();
if (store.getCount() > 0) {
var memberbody = store.getAt(store.getCount() - 1);
CUSTNAME = memberbody.data.CustomerName;
}
var newSerialno = this.GetHandleSerialNo(store, type);
var record = null;
function GetDateStr(AddDayCount) {
var dd = new Date();
dd.setDate(dd.getDate() + AddDayCount);//获取AddDayCount天后的日期
var y = dd.getFullYear();
var m = dd.getMonth() + 1;//获取当前月份的日期
var d = dd.getDate();
return y + "-" + m + "-" + d;
}
var EnterDate = GetDateStr(0);
if (USERID == "" || USERID == null) {
alert("登陆数据丢失,请重新登陆");
return;
}
record = Ext.create('MsChFee', {
GId: NewGuid(),
BsNo: '*',
FeeStatus: 1,
FeeStatus_Ref: '录入状态',
FeeType: type,
FeeType_Ref: '',
FeeName: '',
FeeName_Ref: '',
FeeDescription: '',
CustomerType: '',
CustomerName: CUSTNAME,
CustomerName_Ref: '',
Unit: '',
UnitPrice: 0,
Quantity: 1,
Amount: 0,
Currency: 'RMB',
ExChangerate: 1,
Reason: '',
Remark: '',
Commissionrate: 0,
Settlement: 0,
Invoice: 0,
OrderAmount: 0,
OrderInvoice: 0,
SubmitDate: null,
Auditoperator: '',
AuditDate: null,
EnteroPerator: USERID,
EnterDate: EnterDate,
DebitNo: '',
IsDebit: "0",
IsOpen: "0",
IsAdvancedpay: "0",
Sort: "0",
IsInvoice: "0",
FeeFrt: 'pp',
IsCrmOrderFee: "0",
AuditStatus: 0,
InvoiceNum: '',
ChequeNum: '',
WmsOutBsNo: ''
});
var editColumnIndex = 4;
if (type === "1") {
_this.storeBodyChFee.add(record);
var n = _this.storeBodyChFee.getCount();
_this.cellEditingChFee.startEditByPosition({ row: n - 1, column: editColumnIndex });
} else {
_this.storeBodyChFee_YF.add(record);
var n = _this.storeBodyChFee_YF.getCount();
_this.cellEditingChFee_YF.startEditByPosition({ row: n - 1, column: editColumnIndex });
}
//var n = store.getCount();
//cellediting.startEditByPosition({ row: n - 1, column: editColumnIndex });
},
onNextKeyClick: function (type, col) {
if (type == 1) {
var rows = this.gridListChFee.getSelectionModel().getSelection();
var row = rows[rows.length - 1];
var s = this.gridListChFee.getStore();
var number = s.indexOf(row) + 1;
if (number == this.gridListChFee.getStore().getCount()) {
this.onAddDetailClick(s, event, '1');
} else {
this.cellEditingChFee.startEditByPosition({ row: number, column: col });
}
} else {
var rows = this.gridListChFee_YF.getSelectionModel().getSelection();
var row = rows[rows.length - 1];
var s = this.gridListChFee_YF.getStore();
var number = s.indexOf(row) + 1;
if (number == this.gridListChFee_YF.getStore().getCount()) {
this.onAddDetailClick(s, event, '2');
} else {
this.cellEditingChFee_YF.startEditByPosition({ row: number, column: col });
}
}
},
onUpKeyClick: function (type, col) {
if (type == 1) {
var rows = this.gridListChFee.getSelectionModel().getSelection();
var row = rows[rows.length - 1];
var s = this.gridListChFee.getStore();
var number = s.indexOf(row) - 1;
if (number < 0) number = 0;
this.cellEditingChFee.startEditByPosition({ row: number, column: col });
} else {
var rows = this.gridListChFee_YF.getSelectionModel().getSelection();
var row = rows[rows.length - 1];
var s = this.gridListChFee_YF.getStore();
var number = s.indexOf(row) - 1;
if (number < 0) number = 0;
this.cellEditingChFee_YF.startEditByPosition({ row: number, column: col });
}
},
GetHandleSerialNo: function (store, type) {
var result = 0;
if (type == 1) {
result = this.fixSerialNo;
} else if (type == 2) {
result = this.feeSerialNo;
}
if (result == 0) {
for (var i = 0; i < store.getCount(); i += 1) {
var member = store.getAt(i);
if (member.data.SerialNo > result) {
result = member.data.SerialNo;
}
}
}
result = result + 1;
if (type == 1) {
this.fixSerialNo = result;
} else if (type == 2) {
this.feeSerialNo = result;
}
return result;
},
onDelDetailClick: function (button, event, type) {
var allow = this.getAllowOperationDetail();
if (allow == false) {
return;
}
var store = null;
if (type == 1) {
store = this.storeBodyChFee;
} else if (type == 2) {
store = this.storeBodyChFee_YF;
} else {
alert('函数(onAddDetailClick)的参数type类型设置的不对');
return;
}
var result = 0;
if (type == '1') {
result = this.feeSerialNo;
} else if (type == '2') {
result = this.feeSerialNo;
}
if (result == 0) {
for (var i = 0; i < store.getCount(); i += 1) {
var member = store.getAt(i);
if (member.data.SerialNo > this.giSerialNo) {
result = member.data.SerialNo;
}
}
}
if (type == '1') {
this.feeSerialNo = result;
} else if (type == '2') {
this.feeSerialNo = result;
}
var selectedRecords = [];
if (type == '1') {
selectedRecords = this.gridListChFee.selModel.getSelection();
var candelete = DsTruck.CheckChFeeDelete(selectedRecords, this.StoreDrOpRange);
if (candelete == false)
return;
} else if (type == '2') {
selectedRecords = this.gridListChFee_YF.selModel.getSelection();
var candelete = DsTruck.CheckChFeeDelete(selectedRecords, this.StoreCrOpRange);
if (candelete == false)
return;
}
if (selectedRecords.length > 0) {
for (var i = 0; i < selectedRecords.length; i++) {
var rec = selectedRecords[i];
if (rec.BillNo != "" || rec.BillNo != "*") //如果是新增但没有保存的数据,没有必要提交到后台
{
if (rec.IsDebit == "True" || rec.IsDebit == "1") {
alert("已经对账的费用不能删除");
continue;
}
if (type == '1') {
this.feeBodyDel.push(rec);
} else if (type == '2') {
this.feeBodyDel.push(rec);
}
}
if (type == '1') {
this.storeBodyChFee.remove(selectedRecords[i]);
} else if (type == '2') {
this.storeBodyChFee_YF.remove(selectedRecords[i]);
}
}
}
},
onSubmitAuditClick: function (button, event, type) {
this.Save('0');
if (type == '1') {
var records = this.feeGridCheckBoxModel.selected.items;
DsTruck.MsChFeeAudit(records, 2, '正在提交审核数据, 请稍侯..', USERID, "False");
} else if (type == '2') {
var selectedRecords = this.gridListChFee_YF.selModel.getSelection();
for (var i = 0; i < selectedRecords.length; i++) {
var rec = selectedRecords[i];
if ((rec.get('FeeName') == "预付款" || rec.get('FeeName') == "购货款" || rec.get('FeeName') == "尾款") && (rec.get('Currency') == "RMB")) {
if (!confirm("货款类费用币别为RMB确认吗")) {
//点击取消
return false;
}
}
}
var records = this.feeGridCheckBoxModel_YF.selected.items;
DsTruck.MsChFeeAudit(records, 2, '正在提交审核数据, 请稍侯..', USERID, "False");
}
},
onShenModifyClick: function (button, event, type) {
var allow = this.getAllowOperationDetail();
if (allow == false) {
return;
}
var selectedRecords = [];
if (type == '1') {
selectedRecords = this.feeGridCheckBoxModel.selected.items;
} else if (type == '2') {
selectedRecords = this.feeGridCheckBoxModel_YF.selected.items;
}
if (selectedRecords.count == 0) {
Ext.Msg.show({ title: '提示', msg: '没有选择要申请修改的业务!', icon: Ext.Msg.INFO, buttons: Ext.Msg.OK });
return;
}
var rec = selectedRecords[0];
if (rec.data.FeeStatus != 0) {
Ext.Msg.show({ title: '提示', msg: '当前费用状态无法申请修改!', icon: Ext.Msg.INFO, buttons: Ext.Msg.OK });
return;
}
if (rec.data.Settlement != 0) {
Ext.Msg.show({ title: '提示', msg: '当前费用已结算无法申请修改!', icon: Ext.Msg.INFO, buttons: Ext.Msg.OK });
return;
}
if (rec.data.IsDebit == 'True') {
Ext.Msg.show({ title: '提示', msg: '当前费用已对帐无法申请修改!', icon: Ext.Msg.INFO, buttons: Ext.Msg.OK });
return;
}
if (rec.data.Invoice != 0) {
Ext.Msg.show({ title: '提示', msg: '当前费用已开出发票无法申请修改!', icon: Ext.Msg.INFO, buttons: Ext.Msg.OK });
return;
}
if (rec.data.OrderAmount != 0) {
Ext.Msg.show({ title: '提示', msg: '当前费用已申请费用无法申请修改!', icon: Ext.Msg.INFO, buttons: Ext.Msg.OK });
return;
}
if (rec.data.OrderInvoice != 0) {
Ext.Msg.show({ title: '提示', msg: '当前费用已申请开票无法申请修改!', icon: Ext.Msg.INFO, buttons: Ext.Msg.OK });
return;
}
this.DataLoading = true;
this.NewFeeEdit.getForm().loadRecord(rec);
this.OldFee.getForm().loadRecord(rec);
this.DataLoading = false;
this.winShenModifyShow.show();
},
onRetractClick: function (button, event, type) {
var records = [];
if (type == '1') {
var selectedRecords = this.feeGridCheckBoxModel.selected.items;
for (var i = 0; i < selectedRecords.length; i++) {
var rec = selectedRecords[i];
if (rec.get('FeeStatus') == "2" || rec.get('FeeStatus') == "0") {
if (rec.get('OrderAmount') > 0) {
alert(rec.get('FeeName') + "还未取消申请,请撤回申请或重新加载。");
return;
}
records.push(rec);
}
}
} else if (type == '2') {
var selectedRecords = this.feeGridCheckBoxModel_YF.selected.items;
for (var i = 0; i < selectedRecords.length; i++) {
var rec = selectedRecords[i];
if (rec.get('FeeStatus') == "2" || rec.get('FeeStatus') == "0") {
if (rec.get('OrderAmount') > 0) {
alert(rec.get('FeeName') + "还未取消申请,请撤回申请或重新加载。");
return;
}
records.push(rec);
}
}
}
if (records.length > 0) {
DsTruck.MsChFeeAudit(records, 6, '正在提交审核数据, 请稍侯..', "False");
}
},
onSubmitRZClick: function (button, event, type) {
var records = [];
if (type == '1') {
var selectedRecords = this.feeGridCheckBoxModel.selected.items;
for (var i = 0; i < selectedRecords.length; i++) {
var rec = selectedRecords[i];
if (rec.get('FeeStatus') == "0" || rec.get('FeeStatus') == "1" || rec.get('FeeStatus') == "2") {
records.push(rec);
}
}
} else if (type == '2') {
var selectedRecords = this.feeGridCheckBoxModel_YF.selected.items;
for (var i = 0; i < selectedRecords.length; i++) {
var rec = selectedRecords[i];
if (rec.get('FeeStatus') == "0" || rec.get('FeeStatus') == "1" || rec.get('FeeStatus') == "2") {
records.push(rec);
}
}
}
if (records.length > 0) {
DsTruck.MsChFeeAudit(records, 10, '正在撤销提交融资数据, 请稍侯..', "False");
}
},
onRetractRZClick: function (button, event, type) {
var records = [];
if (type == '1') {
var selectedRecords = this.feeGridCheckBoxModel.getSelection();
for (var i = 0; i < selectedRecords.length; i++) {
var rec = selectedRecords[i];
if (rec.get('FeeStatus') == "10") {
records.push(rec);
}
}
} else if (type == '2') {
var selectedRecords = this.feeGridCheckBoxModel_YF.getSelection();
for (var i = 0; i < selectedRecords.length; i++) {
var rec = selectedRecords[i];
if (rec.get('FeeStatus') == "10") {
records.push(rec);
}
}
}
var a = [];
var b = [];
var c = [];
//20180614 zxb
for (var j = 0; j < records.length; j++) {
if (records[j].data.Settlement === 0) //审核通过
a.push(records[j]);
else if (records[j].data.Settlement !== records[j].data.Amount)//部分结算
b.push(records[j]);
else//结算完毕
c.push(records[j]);
}
if (a.length > 0)
DsTruck.MsChFeeAudit(a, 0, '正在撤销提交融资数据, 请稍侯..', "False");//恢复审核通过状态
if (b.length > 0)
DsTruck.MsChFeeAudit(b, 8, '正在撤销提交融资数据, 请稍侯..', "False");//恢复部分结算状态
if (c.length > 0)
DsTruck.MsChFeeAudit(c, 9, '正在撤销提交融资数据, 请稍侯..', "False");//恢复结算完毕状态
},
getCustName: function () {
var custName = this.formEdit.getForm().findField('buyer');
return custName.getValue();
},
getSellerName: function () {
var custName = this.formEdit.getForm().findField('seller');
return custName.getValue();
},
getAllowOperationDetail: function () {
/*
var feeStatus = this.getFeeStatus();
if (feeStatus == '0')
return true;
else {
Ext.Msg.show({ title: '错误', msg: "费用已锁定,不允许操作费用!", icon: Ext.Msg.ERROR, buttons: Ext.Msg.OK });
return false;
}*/
//var data = this.formEdit.getForm().getValues();
//if data.ContractStatus=="1"
var CORPID = this.formEdit.getForm().findField('CORPID').getValue();
if (CORPID != '' && CORPID == COMPANYID)
return true;
else {
Ext.Msg.show({ title: '错误', msg: "只有同一公司才能操作费用!", icon: Ext.Msg.ERROR, buttons: Ext.Msg.OK });
return false;
}
},
gridListChFeeAfterEdit: function (editor, e, eOpts) {
if (e.field == 'FeeType') {
var records = DsStoreQueryBy(this.storeFeeTypeRef, 'EnumValueId', e.value);
if (records.getCount() > 0) {
var data = records.getAt(0).data;
e.record.set('FeeType_Ref', data.EnumValueName);
} else {
e.record.set('FeeType_Ref', '');
}
} else if (e.field == 'UnitPrice' || e.field == 'Quantity' || e.field == 'ExChangerate') {
var unitPrice = e.record.data['UnitPrice'];
var quantity = e.record.data['Quantity'];
//var ExChangerate= e.record.data['ExChangerate'];
e.record.set('Amount', (unitPrice * quantity).toFixed(2));
}
if (e.field == 'Currency') {
//var ExChangerate = parseFloat(e.record.get('ExChangerate'));
if (e.record.get('Currency') == 'RMB') {
e.record.set('ExChangerate', '1');
}
}
if (e.field == 'FeeName') {
var FeeName = e.record.get('FeeName');
if (FeeName == '购货款') {
e.record.set('Sort', '1');
} else
if (FeeName == '预付款') {
e.record.set('Sort', '2');
} else
if (FeeName == '尾款') {
e.record.set('Sort', '3');
} else
if (FeeName == '关税') {
e.record.set('Sort', '4');
} else
if (FeeName == '增值税') {
e.record.set('Sort', '5');
} else
if (FeeName == '电汇费') {
e.record.set('Sort', '6');
} else
if (FeeName == '手续费') {
e.record.set('Sort', '7');
} else
if (FeeName == '代理费') {
e.record.set('Sort', '8');
} else
if (FeeName == '拖车费') {
e.record.set('Sort', '9');
} else
if (FeeName == '商检验货费') {
e.record.set('Sort', '10');
} else
if (FeeName == '出入库费') {
e.record.set('Sort', '11');
} else
if (FeeName == '冷藏费') {
e.record.set('Sort', '12');
} else
if (FeeName == '超期制冷费') {
e.record.set('Sort', '13');
} else
if (FeeName == '看货费') {
e.record.set('Sort', '14');
} else {
e.record.set('Sort', '999');
}
}
if (e.field == 'CARGO_GID') {
var cargo = DsStoreQueryBy(this.storeCargo, 'GID', e.value);
if (cargo.getCount() > 0) {
var cargodata = cargo.getAt(0).data;
e.record.set('CARGO_NAME', cargodata.name);
} else {
//alert(cargodata.name);
e.record.set('CARGO_NAME', '');
}
}
if (e.field == 'IsOpen') {
var records = DsStoreQueryBy(this.storeIsOpenType, 'IsOpen', e.value);
if (records.getCount() > 0) {
var data = records.getAt(0).data;
e.record.set('IsOpen_Ref', data.IsOpen_Ref);
} else {
e.record.set('IsOpen_Ref', '');
}
}
},
onSelectFee: function (button, event) {
//Ext.getCmp("zongshu").setText("1234");
var selectedRecords = this.gridListChFee.selModel.getSelection();
var sum = 0;
for (var i = 0; i < selectedRecords.length; i++) {
var rec = selectedRecords[i];
sum = sum + rec.get("Amount");
}
sum = sum.toFixed(2);
Ext.getCmp("zongshu").setText(" 选中金额:" + sum);
var selectedRecords_YF = this.gridListChFee_YF.selModel.getSelection();
var sum_YF = 0;
for (var i = 0; i < selectedRecords_YF.length; i++) {
var rec = selectedRecords_YF[i];
sum_YF = sum_YF + rec.get("Amount");
}
sum_YF = sum_YF.toFixed(2);
Ext.getCmp("zongshu_YF").setText(" 选中金额:" + sum_YF);
},
// 明细表 费用表相关方法 end
//--------更改单相关方法
onAddAmendClick: function (button, event) {
var store = this.storeAmendBill;
var newbsno = NewGuid();
this.strAmendBSNO = newbsno;
var ContractNo = this.editRecord.get('ContractNo');
var record = null;
record = Ext.create('MsOpFeeAmend', {
GID: DsTruck.newID(),
BSNO: '',
PARENTID: ContractNo,
FEESTATUS: "false",
FEESTATUSREF: '未锁定',
ACCDATE: '',
REASON: '',
REMARKS: '',
CREATETIME: currdate.format('yyyy-MM-dd hh:mm:ss'),
CREATEUSER: SHOWNAME
});
store.add(record);
var editColumnIndex = 4;
cellediting = this.cellEditingAmend;
var n = store.getCount();
cellediting.startEditByPosition({ row: n - 1, column: editColumnIndex });
},
onDeleteAmendClick: function (button, event) {
var selections = this.gridAmendList.getSelectionModel().getSelection();
if (selections.length == 0) {
Ext.Msg.show({ title: '提示', msg: '请先选择业务!', icon: Ext.Msg.INFO, buttons: Ext.Msg.OK });
return;
}
var record = selections[0];
if (record.data.FEESTATUS == '1') {
Ext.Msg.show({ title: '警告', msg: '费用已锁定,不允许删除!', icon: Ext.Msg.WARNING, buttons: Ext.Msg.OK });
return;
}
if (this.storeAmendChFee.getCount() > 0) {
Ext.Msg.show({ title: '警告', msg: '存在费用信息,不允许删除,请先删除费用信息!', icon: Ext.Msg.WARNING, buttons: Ext.Msg.OK });
return;
}
Ext.MessageBox.confirm('提示', '确定删除该记录吗?', function (btn) {
if (btn == 'yes') {
Ext.Msg.wait('正在删除数据...');
Ext.Ajax.request({
waitMsg: '正在删除数据...',
url: '/MvcShipping/MsChFee/DeleteAmend',
params: {
data: Ext.JSON.encode(record.data)
},
callback: function (options, success, response) {
if (success) {
var jsonresult = Ext.JSON.decode(response.responseText);
if (jsonresult.Success) {
this.storeAmendBill.remove(record);
Ext.Msg.show({ title: '提示', msg: jsonresult.Message, icon: Ext.Msg.INFO, buttons: Ext.Msg.OK });
}
else {
Ext.Msg.show({ title: '错误', msg: jsonresult.Message, icon: Ext.Msg.ERROR, buttons: Ext.Msg.OK });
}
}
},
failure: function (response, options) {
Ext.Msg.show({ title: '警告', msg: '服务器响应出错,请重试', icon: Ext.Msg.INFO, buttons: Ext.Msg.OK });
},
success: function (response, options) {
},
scope: this
}); //end Ext.Ajax.request
}
}, this);
},
onPostAmendClick: function (button, event) {
var selections = this.gridAmendList.getSelectionModel().getSelection();
if (selections.length == 0) {
Ext.Msg.show({ title: '提示', msg: '请先选择业务!', icon: Ext.Msg.INFO, buttons: Ext.Msg.OK });
return;
}
var record = selections[0];
//alert(record.data.feestatus);
this.strAmendBSNO = record.data.BSNO;
var bodyDrChFeeDatas = [];
var bodyCrChFeeDatas = [];
var i;
_this = this;
Ext.Msg.wait('正在保存数据, 请稍侯..');
Ext.Ajax.request({
waitMsg: '正在保存数据...',
url: '/Import/PortOperate/SaveAmend',
scope: this,
params: {
bsno: _this.strAmendBSNO,
data: Ext.JSON.encode(record.data),
chfeeBody: "",
chfeeBodyDel: ""
},
callback: function (options, success, response) {
if (success) {
Ext.MessageBox.hide();
_this.storeAmend.load({ params: { billno: _this.ContractNo } });
} else {
Ext.Msg.show({
title: '请重试',
msg: '服务器响应出错',
icon: Ext.Msg.ERROR, buttons: Ext.Msg.OK
});
}
}
});
}, //end save
//--------
parentfunction: function (button, event) {
var ret1 = window.parent.opener.OprationSwap();
// alert(this.First);
ret1[3]();
},
InitData: function () {
this.opStatus = 'edit';
var condition = '';
if (parentWin) {
var ret = parentWin.OprationSwap();
this.opStatus = ret[0];
if (ret[0] == 'view') {
this.StoreList = ret[1];
this.editRecord = ret[2];
} else if (ret[0] == 'blview') {
this.BSNO = ret[1];
this.editRecord = ret[1];
} else {
this.StoreList = ret[1];
this.editRecord = ret[2];
}
}
if (this.opStatus == 'edit') {
condition = " m.id='" + this.editRecord.get('id') + "'";
this.storeChfeeFile.load({
params: {
BillNo: window.parent.opener.OprationSwap()[2].get('ContractNo')
}
});
}
if (this.opStatus == 'view') {
condition = " m.ContractNo='" + this.editRecord.data.ContractNo + "'";
Ext.getCmp("SAVE1").disable();
Ext.getCmp("SAVE2").disable();
}
if (this.opStatus == 'blview') {
condition = " m.ContractNo='" + this.BSNO + "'";
Ext.getCmp("SAVE1").disable();
Ext.getCmp("SAVE2").disable();
}
this.LoadData(this.opStatus, condition);
}, //end InitData
//载入数据
LoadData: function (opstatus, condition) {
if (this.opStatus != 'blview')
this.formEdit.getForm().setValues(this.editRecord.data);
if (opstatus == 'blview') opstatus = 'view';
this.opStatus = opstatus;
var data = '';
Ext.Ajax.request({
waitMsg: '正在查询主表数据...',
url: '/Import/XXH/GetData',
params: {
handle: opstatus,
condition: condition
},
callback: function (options, success, response) {
if (success) {
var result = Ext.JSON.decode(response.responseText);
if (!result.Success) {
Ext.Msg.show({
title: '提示',
msg: result.Message,
icon: Ext.MessageBox.ERROR,
buttons: Ext.Msg.OK
});
return;
}
data = result.data;
// this.formEdit.getForm().reset();
if (data.KCClear == 'True') {
data.KCClear = '1';
} else { data.KCClear = '0' };
if (data.ContractStatus == 'True') {
data.ContractStatus = '1';
} else { data.ContractStatus = '0' };
if (data.HaveContract == 'True') {
data.HaveContract = '1';
} else { data.HaveContract = '0' };
if (data.HaveCargoMark == 'True') {
data.HaveCargoMark = '1';
} else { data.HaveCargoMark = '0' };
/*
if (data.VSIGN=='True'){
data.VSIGN='1';
}else{data.VSIGN='0'};
*/
if (data.LOCK_EXCHANGERATE == "1") {
data.LOCK_EXCHANGERATE = '1';
} else { data.LOCK_EXCHANGERATE = '0' };
this.LoadCMB(data);
if (_R = this.formEdit.getForm().setValues(data)) {
//this.setSaveBtnEnable(true);
}
// this.editRecord = data;
this.loadfee();
PanelKC.ParentCondition = " V.CONTRACTNO='" + data.HTH + "' ";
PanelKC.gridList.store.load({});
} else {
Ext.MessageBox.alert('请求出现错误,请重试', response.responseText);
}
},
scope: this
});//request over
var ContractNo = "";
if (this.opStatus == 'edit') {
ContractNo = this.editRecord.get('ContractNo');
//this.getLocalData(ContractNo);
}
if (this.opStatus == 'view') {
ContractNo = this.editRecord;
this.setSaveBtnEnable(false);
}
this.formEdit.getForm().findField('ContractNo').setDisabled(false);
this.storeReceipt.load({ params: { billno: ContractNo } });
this.storeCargo.load({ params: { condition: ContractNo } });
this.storeApp.load({ params: { condition: ContractNo } });
this.storeAppstate.load({ params: { condition: ContractNo } });
//this.storeKC.load({ params: { condition: ContractNo} });
//this.storeKC.load({ params: { condition: "K.ContractNo = '" + ContractNo + "' and K.corpid='" + COMPANYID + "'" } });
//this.storeBodyChFee.load({ params: { billno: ContractNo,Feetype:'1'} });
//this.storeBodyChFee_YF.load({ params: { billno: ContractNo,Feetype:'2'} });
if (this.opStatus == 'edit') {
//var s=" countryid='"+this.editRecord.get('countryid')+"'";
//this.storeCargoinfo.load({ params: { condition: s} });
this.formEdit.getForm().findField('ContractNo').setDisabled(true);
var ContractStatus = this.editRecord.get('ContractStatus');
if (ContractStatus == "True") {
Ext.getCmp("KCStart").disable();
Ext.getCmp("CWStart").disable();
//Ext.getCmp("addChfee").disable() ;
//Ext.getCmp("delChfee").disable();
//Ext.getCmp("addChfee_YF").disable() ;
//Ext.getCmp("delChfee_YF").disable();
Ext.getCmp("ApplicationAdd").disable();
}
}
if (this.opStatus == 'view') {
//var s=" countryid=(select countryid from import_main where contractno='"+ContractNo+"')";
//this.storeCargoinfo.load({ params: { condition: s} });
Ext.getCmp("KCStart").disable();
Ext.getCmp("CWStart").disable();
//Ext.getCmp("addChfee").disable() ;
//Ext.getCmp("delChfee").disable();
//Ext.getCmp("addChfee_YF").disable() ;
//Ext.getCmp("delChfee_YF").disable();
Ext.getCmp("ApplicationAdd").disable();
//Ext.getCmp("YSsubmitFinance").disable() ;
//Ext.getCmp("YSsubmitFinanceback").disable() ;
//Ext.getCmp("YFsubmitFinance").disable() ;
//Ext.getCmp("YFsubmitFinanceback").disable() ;
}
this.formEdit.getForm().findField('ContractNo').setDisabled(true);
//////////////////////
//设置毛利信息
// Ext.Ajax.request({
// waitMsg: '正在查询毛利数据...',
// url: '/Import/XXH/GetML',
// params: {
// contractno: ContractNo
// },
// callback: function (options, success, response) {
// if (success) {
// var result = Ext.JSON.decode(response.responseText);
// if (!result.Success) {
// Ext.Msg.show({
// title: '提示',
// msg: result.Message,
// icon: Ext.MessageBox.ERROR,
// buttons: Ext.Msg.OK
// });
// return;
// }
// var data = result.data;
// this.formML.getForm().setValues(data);
// } else {
// Ext.MessageBox.alert('请求出现错误,请重试', response.responseText);
// }
// },
// scope: this
//});//request over
}, // end LoadDate
LoadCMB: function (data) {
//this.comboxCountry = Ext.create('DsExt.ux.RefTableCombox', {
// fieldLabel: '进口国',
// //forceSelection: true,
// queryMode: 'remote',
// store: this.storeCountry,
// name: 'countryid',
// valueField: 'countryid',
// displayField: 'country_idandname'
//});
Data_storeCountry = { countryid: data.countryid, country_idandname: data.countryid + "_" + data.country };
this.storeCountry.add(Data_storeCountry);
Data_storeCreator = { UserCode: data.creator, CodeAndName: data.RECEIVE_MAN };
this.storeCreator.add(Data_storeCreator);
Data_storeAuditor = { UserCode: data.Auditor, CodeAndName: data.AuditorREF };
this.storeAuditor.add(Data_storeAuditor);
Data_storeSeller = { name: data.seller, codename: data.seller };
this.storeSeller.add(Data_storeSeller);
EnumcomboxAddRecord(this.comboxMainstate, data.Mainstate, data.MainstateRef);
EnumcomboxAddRecord(this.comboxShipCompany, data.ShipCompany_id, data.ShipCompanyRef);
Data_TRADINGAGENCY = { name: data.TRADINGAGENCY, codename: data.TRADINGAGENCY };
this.storeTRADINGAGENCY.add(Data_TRADINGAGENCY);
Data_Inspection_Buyer = { name: data.Inspection_Buyer, codename: data.Inspection_Buyer };
this.storeInspection_Buyer.add(Data_Inspection_Buyer);
EnumcomboxAddRecord(this.comboxPaymentMethods, data.PaymentMethods, data.PaymentMethodsRef);
EnumcomboxAddRecord(this.comboxTransactionMethod, data.TransactionMethod, data.TransactionMethodRef);
EnumcomboxAddRecord(this.comboxFStatus, data.FinanceStatus, data.FinanceStatusREF);
Data_ContainerType = { CtnName: data.CTN };
this.storeContainerType.add(Data_ContainerType);
//Data_AgentCompany = { GID: data.AGENT };
//this.storeAgentCompany.add(Data_ContainerType);
},
loadfee: function () {
this.panelFee.EditRecord = this.editRecord;
this.panelFee.strBSNO = this.editRecord.get('ContractNo');
this.panelFee.strMBLNO = this.editRecord.get('BillNo');
this.panelFee.StoreDrOpRange.load({ params: { optype: "modImport_Fee" } });
this.panelFee.StoreCrOpRange.load({ params: { optype: "modImport_Fee" } });
this.panelFee.storeFeeNameRef.load({ params: { condition: "ISSEA='1' " } });
this.panelFee.StoreDateCurr.load({ params: { optype: "import_main", bsno: this.panelFee.strBSNO } });
this.panelFee.StoreUnit.load({ params: { bsno: this.panelFee.strBSNO, bstype: "import_main" } });
this.panelFee.storeDrChFee.load({ params: { billno: this.panelFee.strBSNO, type: 1, optype: "import_main" } });
this.panelFee.storeCrChFee.load({ params: { billno: this.panelFee.strBSNO, type: 2, optype: "import_main" } });
this.panelFee.storeBodySum.load({
params: { bsno: this.panelFee.strBSNO, optype: "import_main" },
callback: function (r, options, success) {
if (success) {
_this.panelFee.setTotalHead();
}
}
});
this.panelFee.storeChFeeGain.load({ params: { bsno: this.panelFee.strBSNO, optype: "import_main" } });
},
setSaveBtnEnable: function (_enable) {
if (_enable == true) {
Ext.getCmp("SAVE1").enable();
Ext.getCmp("SAVE2").enable();
} else {
Ext.getCmp("SAVE1").disable();
Ext.getCmp("SAVE2").disable();
}
},
//DoSetDifferent: function (data) {
// this.setdifferent('HTH', '');
// this.setdifferent('BillNo', '');
// this.setdifferent('ContainerNo', '');
// this.setdifferent('SealNo', '');
// this.setdifferent('ShipCompany_id', 'ShipCompany');
// this.setdifferent('companyname', '');
// this.setdifferent('Vessel', '');
// this.setdifferent('Voyage', '');
// this.setdifferent('Ex_sailingdate', '');
// this.setdifferent('Sailingdate', '');
// this.setdifferent('ArrivalDate', '');
// this.setdifferent('RecDate', '');
// this.setdifferent('tax_date', '');
// this.setdifferent('tax_paydate', '');
// this.setdifferent('Sampling_need', '');
// this.setdifferent('SamplingDate_Act', '');
// this.setdifferent('CustomsReleaseDate', '');
// this.setdifferent('PortDays', '');
// this.setdifferent('inspection_date', '');
// this.setdifferent('seller', '');
// this.setdifferent('buyer', '');
// this.setdifferent('STT', '');
// this.setdifferent('countryid', 'countryid');
// this.setdifferent('creattime', '');
// this.setdifferent('Audittime', '');
// this.setdifferent('Mainstate', '');
// this.setdifferent('Printed', '');
// this.setdifferent('AutoAPP', '');
// this.setdifferent('BillTime', '');
// this.setdifferent('Freetime', '');
// this.setdifferent('TransactionMethod', '');
// this.setdifferent('PaymentMethods', '');
// this.setdifferent('SecurityDeposit', '');
// this.setdifferent('SamplingDate_Plan', '');
// this.setdifferent('inspection_Signup_date', '');
// this.setdifferent('inspection_no', '');
// this.setdifferent('CIQ_licence', '');
// this.setdifferent('CIQ_canbesearch', '');
// this.setdifferent('remark', '');
// this.setdifferent('portRef', 'port_Ref');
// this.setdifferent('Paydate', '');
// this.setdifferent('E_Billtime', '');
// this.setdifferent('HDtime', '');
// this.setdifferent('remark_2', '');
// this.setdifferent('remark_3', '');
// this.setdifferent('remark_4', '');
// this.setdifferent('Sampling_need', '');
// this.setdifferent('DeclareNumber', '');
// this.setdifferent('Inspection_Storage', '');
// this.setdifferent('DeliveryDate', '');
// this.setdifferent('DeliveryAddress', '');
// this.setdifferent('Contacter', '');
// this.setdifferent('Tel', '');
// this.setdifferent('Overfilled', '');
// this.setdifferent('ReceiptStatus', '');
// this.setdifferent('Receiptremark', '');
// this.setdifferent('Prepaydate', '');
// this.setdifferent('TRADINGAGENCY', '');
// this.setdifferent('KCClear', '');
// this.setdifferent('RCVMode', '');
// this.setdifferent('MZBZ', '');
// this.setdifferent('Inspection_Buyer', '');
// //this.setdifferent('Inspection_Contacter','');
// //this.setdifferent('Inspection_Tel','');
// //this.setdifferent('Inspection_DeliveryAddress','');
// this.setdifferent('HaveContract', '');
// this.setdifferent('HaveCargoMark', '');
// //this.setdifferent('HAVESAMPLE','');
// //this.setdifferent('CHECKSAMPLE','');
// this.setdifferent('CTN', '');
// this.setdifferent('BILLTRANCNO', '');
// this.setdifferent('LOCK_EXCHANGERATE', '');
// this.setdifferent('EXCHANGERATE', '');
// this.setdifferent('Unsealdate', '');
// this.setdifferent('ISREFORM', '');
// this.setdifferent('BillType', '');
// this.setdifferent('CreateTime_2', '');
// this.setdifferent('ResendTime', '');
// this.setdifferent('Dock', '');
// this.setdifferent('Customs_broker', '');
// this.setdifferent('inspection_broker', '');
//},
//setdifferent: function (FieldName, FieldName_REF) {
// if (FieldName_REF != '') {
// EditField = this.formEdit.getForm().findField(FieldName);
// LocalField = this.formLocal.getForm().findField(FieldName);
// LocalField_REF = this.formLocal.getForm().findField(FieldName_REF);
// EditValue = EditField.getValue();
// LocalValue = LocalField.getValue();
// if (EditValue == LocalValue) {
// } else {
// LocalField.setFieldStyle({ background: '#ffc' });
// if (LocalField.getValue() != "") {
// EditField.setFieldStyle({ background: '#ffc' });
// }
// }
// } else {
// EditField = this.formEdit.getForm().findField(FieldName);
// LocalField = this.formLocal.getForm().findField(FieldName);
// EditValue = EditField.getRawValue();
// LocalValue = LocalField.getRawValue();
// if (EditValue == LocalValue) {
// } else {
// LocalField.setFieldStyle({ background: '#ffc' });
// if (LocalField.getValue() != "") {
// EditField.setFieldStyle({ background: '#ffc' });
// }
// }
// }
//},
//SetDiffValue: function (FieldName, Value) {
// EditField = this.formEdit.getForm().findField(FieldName);
// EditField.setValue(Value);
// LocalField = this.formLocal.getForm().findField(FieldName);
// LocalField.setFieldStyle({ background: '#fff' });
// EditField.setFieldStyle({ background: '#fff' });
//},
//OnClickXML: function () {
// //商检销售记录
// var ContractNo = this.formLocal.getForm().findField('ContractNo').getValue();
// var Local_ContractNo = this.formLocal.getForm().findField('Local_ContractNo').getValue();
// if (ContractNo != "" && typeof (ContractNo) != "undefined") {
// var condition = " m.ContractNo='" + ContractNo + "' ";
// Ext.Msg.wait('正在从远程服务器上获取数据, 请稍侯..');
// Ext.Ajax.timeout = 9000000; //90秒
// Ext.Ajax.request({
// waitMsg: '正在从远程服务器上获取数据...',
// url: '/Import/XXH/SendXML',
// scope: this,
// params: {
// condition: condition
// },
// callback: function (options, success, response) {
// if (success) {
// Ext.MessageBox.hide();
// var jsonresult = Ext.JSON.decode(response.responseText);
// if (jsonresult._r) {
// //this.getLocalData(Local_ContractNo);
// } else {
// //Ext.Msg.show({ title: '错误', msg: jsonresult.Message, icon: Ext.Msg.ERROR, buttons: Ext.Msg.OK });
// }
// } else {
// Ext.Msg.show({
// title: '请重试',
// msg: '服务器响应出错',
// icon: Ext.Msg.ERROR, buttons: Ext.Msg.OK
// });
// }
// //alert('03');
// }
// });
// }
//},
//getLocalData: function (Local_Contractno) {
// Ext.Ajax.request({
// waitMsg: '正在查询主表数据...',
// url: '/Import/ImportSync/GetSyncData_Local',
// params: {
// Local_Contractno: Local_Contractno
// },
// callback: function (options, success, response) {
// if (success) {
// var result = Ext.JSON.decode(response.responseText);
// if (!result.Success) {
// Ext.Msg.show({
// title: '提示',
// msg: result.Message,
// icon: Ext.MessageBox.ERROR,
// buttons: Ext.Msg.OK
// });
// return;
// }
// data = result.data;
// // this.formEdit.getForm().reset();
// if (data.KCClear == 'True') {
// data.KCClear = '1';
// } else { data.KCClear = '0' };
// if (data.ContractStatus == 'True') {
// data.ContractStatus = '1';
// } else { data.ContractStatus = '0' };
// if (data.HaveContract == 'True') {
// data.HaveContract = '1';
// } else { data.HaveContract = '0' };
// /*
// if (data.VSIGN=='True'){
// data.VSIGN='1';
// }else{data.VSIGN='0'};
// */
// if (data.LOCK_EXCHANGERATE == "1") {
// data.LOCK_EXCHANGERATE = '1';
// } else { data.LOCK_EXCHANGERATE = '0' };
// this.LoadCMB2(data);
// //if (_R = this.formLocal.getForm().setValues(data)) {
// // //this.setSaveBtnEnable(true);
// //}
// //设置项目不同的背景色
// //this.DoSetDifferent(data);
// } else {
// Ext.MessageBox.alert('请求出现错误,请重试', response.responseText);
// }
// },
// scope: this
// });//request over
//},
//LoadCMB2: function (data) {
// Data_storeSeller2 = { name: data.seller, codename: data.seller };
// this.storeSeller2.add(Data_storeSeller2);
// EnumcomboxAddRecord(this.comboxMainstate2, data.Mainstate, data.MainstateRef);
// EnumcomboxAddRecord(this.comboxPaymentMethods2, data.PaymentMethods, data.PaymentMethodsRef);
// EnumcomboxAddRecord(this.comboxTransactionMethod2, data.TransactionMethod, data.TransactionMethodRef);
// Data_Inspection_Buyer = { name: data.Inspection_Buyer, codename: data.Inspection_Buyer };
// this.storeInspection_Buyer2.add(Data_Inspection_Buyer);
// Data_ContainerType = { CtnName: data.CTN };
// this.storeContainerType2.add(Data_ContainerType);
//},
checkedit: function () {
var _r = false;
//if (this.storeBodyChFee.getCount()==0){_r= true;}
//else{
//for (var i = 0; i < this.storeBodyChFee.getCount(); i += 1) {
// var member = this.storeBodyChFee.getAt(i).data;
// if (member.FeeName=="") {
// alert("请填写费用名称");
// _r= false;
// }else{_r= true;}
//}}
for (var i = 0; i < this.storeKC.getCount(); i += 1) {
var member = this.storeKC.getAt(i).data;
if (member.czdate == null || member.czdate == "") {
alert("操作时间不应为空");
_r = false;
} else { _r = true; }
}
var _L = this.formEdit.getForm().findField('LOCK_EXCHANGERATE').getValue();
if (_L == "True") {
_E = this.formEdit.getForm().findField('EXCHANGERATE').getValue();
for (var i = 0; i < this.storeCargo.getCount(); i += 1) {
var member = this.storeKC.getAt(i).data;
if (parseFloat(member.exchangerate) != parseFloat(_E)) {
alert("锁汇汇率与商品信息的汇率不一致");
//_r= false;
} else { _r = true; }
}
}
_form = this.formEdit.getForm();
var seller_name = _form.findField('seller').getValue();
var seller = DsStoreQueryBy(this.storeSeller, 'name', seller_name);
if (seller.getCount() > 0) {
var sellerdata = seller.getAt(0).data;
if (sellerdata.ISSTOP == "True") {
alert("你选择的贸易商已经停用");
_r = false;
//return;
}
}
var buyer_name = _form.findField('buyer').getValue();
var buyer = DsStoreQueryBy(this.storeBuyer, 'name', buyer_name);
if (buyer.getCount() > 0) {
var buyerdata = buyer.getAt(0).data;
if (buyerdata.ISSTOP == "True") {
alert("你选择的购货商已经停用");
//return;
_r = false;
}
}
var TRADINGAGENCY_name = _form.findField('TRADINGAGENCY').getValue();
var TRADINGAGENCY = DsStoreQueryBy(this.storeTRADINGAGENCY, 'name', TRADINGAGENCY_name);
if (TRADINGAGENCY.getCount() > 0) {
var buyerdata = TRADINGAGENCY.getAt(0).data;
if (buyerdata.ISSTOP == "True") {
alert("你选择的中间商已经停用");
//return;
_r = false;
}
}
return _r;
},
Save: function (type) {
//alert(this.opStatus);
//if (!this.checkedit()) {
// return;
//}
var basicForm = this.formEdit.getForm();
if (!basicForm.isValid()) {
return;
}
if (!validateEditorGridPanel(this.gridListReceipt)) {
return;
}
basicForm.findField('ContractNo').setDisabled(false);
var data = this.formEdit.getForm().getValues();
basicForm.findField('ContractNo').setDisabled(true);
var _MBLNOREPEAT = data.MBLNOREPEAT;
if (_MBLNOREPEAT == 0) {
this.BillNoCount = 0;
Ext.Ajax.request({
waitMsg: '正在查询数据...',
url: '/CommMng/BasicDataRef/GeneralSelect',
scope: this,
async: false,
params: { condition: "select BillNo as GVALUE,ContractNo as GID from Import_Main where isnull(ISDELETE,0)=0 and BillNo='" + data.BillNo + "' and isnull(BillNo,'')<>'' and ContractNo<>'" + data.ContractNo + "'" },
//params: {condition: "select BillNo as GVALUE,ContractNo as GID from Import_Main "},
waitMsg: "正在查询数据...",
callback: function (options, success, response) {
if (success) {
var jsonresult = Ext.JSON.decode(response.responseText);
if (jsonresult.success == false) {
} else {
var returnData = jsonresult.data;
//alert(returnData.Count);
this.BillNoCount = parseInt(returnData.length);
}
} else {
Ext.Msg.show({
title: '请重试',
msg: '服务器响应出错',
icon: Ext.Msg.ERROR, buttons: Ext.Msg.OK
});
return;
}
}
});
if (this.BillNoCount > 0) {
alert("提单号重复!");
return;
}
}
// #region 防止合同号重复
var HTHCount = 0;
Ext.Ajax.request({
waitMsg: '正在查询数据...',
url: '/CommMng/BasicDataRef/GeneralSelect',
scope: this,
async: false,
params: { condition: "select HTH as GVALUE,ContractNo as GID from Import_Main where HTH='" + data.HTH + "' and isnull(HTH,'')<>'' and ContractNo<>'" + data.ContractNo + "'" },
//params: {condition: "select BillNo as GVALUE,ContractNo as GID from Import_Main "},
waitMsg: "正在查询数据...",
callback: function (options, success, response) {
if (success) {
var jsonresult = Ext.JSON.decode(response.responseText);
if (jsonresult.success == false) {
} else {
var returnData = jsonresult.data;
HTHCount = parseInt(returnData.length);
}
} else {
Ext.Msg.show({
title: '请重试',
msg: '服务器响应出错',
icon: Ext.Msg.ERROR, buttons: Ext.Msg.OK
});
return;
}
}
});
if (HTHCount > 0) {
alert("合同号重复!");
return;
}
//#endregion
var bodydatas = [];
for (var i = 0; i < this.storeReceipt.getCount(); i += 1) {
var member = this.storeReceipt.getAt(i);
bodydatas.push(member);
}
var Cargodatas = [];
for (var i = 0; i < this.storeCargo.getCount(); i += 1) {
var member = this.storeCargo.getAt(i);
Cargodatas.push(member);
}
var Appstatedatas = [];
for (var i = 0; i < this.storeAppstate.getCount(); i += 1) {
var member = this.storeAppstate.getAt(i);
Appstatedatas.push(member);
}
var KCdatas = [];
for (var i = 0; i < this.storeKC.getCount(); i += 1) {
var member = this.storeKC.getAt(i);
KCdatas.push(member);
}
//票据明细用
var jsonBody = ConvertRecordsToJson(bodydatas);
var jsonDelBody = ConvertRecordsToJsonAll(this.bodyDel);
//商品明细
var CargoBody = ConvertRecordsToJson(Cargodatas);
var CargoDelBody = ConvertRecordsToJsonAll(this.CargoDel);
//许可证使用
var AppstateBody = ConvertRecordsToJson(Appstatedatas);
var AppstateDelBody = ConvertRecordsToJsonAll(this.AppstateDel);
//库存记录
var KCBody = ConvertRecordsToJson(KCdatas);
var KCDelBody = ConvertRecordsToJsonAll(this.KCDel);
//费用
var bodyChFeeDatas = [];
//for (i = 0; i < this.storeBodyChFee.getCount(); i += 1) {
// var memberyf = this.storeBodyChFee.getAt(i);
// bodyChFeeDatas.push(memberyf);
// var amount = memberyf.data.Amount;
// var CustomerName = memberyf.data.CustomerName;
// if (amount == 0) {
// Ext.Msg.show({ title: '警告',
// msg: '费用的金额不允许为0请修改后再保存',
// icon: Ext.Msg.ERROR, buttons: Ext.Msg.OK
// });
// return;
// }
// if (CustomerName == '') {
// Ext.Msg.show({ title: '警告',
// msg: '结算对象不能为空,请修改后再保存',
// icon: Ext.Msg.ERROR, buttons: Ext.Msg.OK
// });
// return;
// }
// /*
// var FeeStatus = memberyf.data.FeeStatus;
// if(FeeStatus=="10"||FeeStatus=="11"||FeeStatus=="12"){
// }else{*/
// if (parseFloat(ExChangerate) == 1 && Currency!="RMB") {
// Ext.Msg.show({ title: '警告',
// msg: '汇率错误,不能保存',
// icon: Ext.Msg.ERROR, buttons: Ext.Msg.OK
// });
// return;
// }
// if (parseFloat(ExChangerate) != 1 && Currency=="RMB") {
// Ext.Msg.show({ title: '警告',
// msg: '汇率错误,不能保存',
// icon: Ext.Msg.ERROR, buttons: Ext.Msg.OK
// });
// return;
// }
// //}
//};
//for (i = 0; i < this.storeBodyChFee_YF.getCount(); i += 1) {
// var memberyf = this.storeBodyChFee_YF.getAt(i);
// bodyChFeeDatas.push(memberyf);
// var amount = memberyf.data.Amount;
// var CustomerName = memberyf.data.CustomerName;
// var ExChangerate = memberyf.data.ExChangerate;
// var Currency = memberyf.data.Currency;
// if (amount == 0) {
// Ext.Msg.show({ title: '警告',
// msg: '费用的金额不允许为0请修改后再保存',
// icon: Ext.Msg.ERROR, buttons: Ext.Msg.OK
// });
// return;
// }
// if (CustomerName == '') {
// Ext.Msg.show({ title: '警告',
// msg: '结算对象不能为空,请修改后再保存',
// icon: Ext.Msg.ERROR, buttons: Ext.Msg.OK
// });
// return;
// }
// if (parseFloat(ExChangerate) == 1 && Currency != "RMB") {
// Ext.Msg.show({
// title: '警告',
// msg: '汇率错误,不能保存',
// icon: Ext.Msg.ERROR, buttons: Ext.Msg.OK
// });
// return;
// }
// if (parseFloat(ExChangerate) != 1 && Currency == "RMB") {
// Ext.Msg.show({
// title: '警告',
// msg: '汇率错误,不能保存',
// icon: Ext.Msg.ERROR, buttons: Ext.Msg.OK
// });
// return;
// }
//};
var jsonChFeeBody = ConvertRecordsToJson(bodyChFeeDatas);
var jsonChFeeDelBody = ConvertRecordsToJsonAll(this.feeBodyDel);
data.KCClear = this.formEdit.getForm().findField('KCClear').getValue() ? 1 : 0;
data.HaveContract = this.formEdit.getForm().findField('HaveContract').getValue() ? 1 : 0;
data.HaveCargoMark = this.formEdit.getForm().findField('HaveCargoMark').getValue() ? 1 : 0;
data.LOCK_EXCHANGERATE = this.formEdit.getForm().findField('LOCK_EXCHANGERATE').getValue() ? 1 : 0;
Ext.Msg.wait('正在保存数据, 请稍侯..');
Ext.Ajax.request({
waitMsg: '正在保存数据...',
url: '/Import/XXH/Save',
scope: this,
params: {
opstatus: this.opStatus,
data: Ext.JSON.encode(data),
Receiptbody: jsonBody,
Receiptdelbody: jsonDelBody,
CargoBody: CargoBody,
CargoDelBody: CargoDelBody,
AppstateBody: AppstateBody,
AppstateDelBody: AppstateDelBody,
KCBody: KCBody,
KCDelBody: KCDelBody,
chfeebody: jsonChFeeBody,
chfeedelbody: jsonChFeeDelBody
},
callback: function (options, success, response) {
if (success) {
Ext.MessageBox.hide();
var jsonresult = Ext.JSON.decode(response.responseText);
if (jsonresult.Success) {
this.storeCargo.commitChanges();
this.storeReceipt.commitChanges();
this.storeAppstate.commitChanges();
this.storeKC.commitChanges();
//this.storeBodyChFee.commitChanges();
//this.storeBodyChFee_YF.commitChanges();
var returnData = jsonresult.Data;
if (returnData.KCClear == 'True') {
returnData.KCClear = '1';
} else { returnData.KCClear = '0' };
if (returnData.ContractStatus == 'True') {
returnData.ContractStatus = '1';
} else { returnData.ContractStatus = '0' };
if (returnData.HaveContract == 'True') {
returnData.HaveContract = '1';
} else { returnData.HaveContract = '0' };
if (returnData.HaveCargoMark == 'True') {
returnData.HaveCargoMark = '1';
} else { returnData.HaveCargoMark = '0' };
if (returnData.LOCK_EXCHANGERATE == "1") {
returnData.LOCK_EXCHANGERATE = '1';
} else { returnData.LOCK_EXCHANGERATE = '0' };
/*
if (returnData.VSIGN=='True'){
returnData.VSIGN='1';
}else{returnData.VSIGN='0'};
*/
this.formEdit.getForm().setValues(returnData);
if (this.opStatus == 'add') {
var arrNewRecords = this.StoreList.add(returnData);
this.editRecord = arrNewRecords[0];
// alert(editRecord.get('ContractNo'));
}
else if (this.opStatus == 'edit') {
var editp = Ext.create('XXHmb', returnData);
this.editRecord.fields.each(function (field) {
if (field.persist) {
name = field.name;
//alert(name + ' -- ' + editp.get(name));
if (name != 'id') {
this.editRecord.set(name, editp.get(name));
if (name == 'ISREFORM') {
if (editp.get(name) == "1") {
this.editRecord.set(name, "是");
} else {
this.editRecord.set(name, "否");
}
}
}
}
}, this);
this.editRecord.commit();
}
if (type == '0') {
this.opStatus = 'edit';
basicForm.findField('ContractNo').setDisabled(false);
this.storeApp.load({ params: { condition: this.editRecord.get('ContractNo') } });
this.storeCargo.load({ params: { condition: this.editRecord.get('ContractNo') } });
//this.storeKC.load({ params: { condition: "K.ContractNo = '" + this.editRecord.get('ContractNo') + "' and K.corpid='" + COMPANYID + "'" } });
this.storeReceipt.load({ params: { billno: this.editRecord.get('ContractNo') } });
//this.storeBodyChFee.load({ params: { billno: this.editRecord.get('ContractNo'),Feetype:'1'} });
//this.storeBodyChFee_YF.load({ params: { billno: this.editRecord.get('ContractNo'),Feetype:'2'} });
//改为将所有费用的data里的BSNO改成 this.editRecord.get('ContractNo')
//而不是重新加载,以保持选中信息
//for(var i =0;i<this.storeBodyChFee.getCount();i++){
// _f=this.storeBodyChFee.getAt(i).data; //遍历每一行
// _f.BsNo=this.editRecord.get('ContractNo');
//}
//for(var i =0;i<this.storeBodyChFee_YF.getCount();i++){
// _f=this.storeBodyChFee_YF.getAt(i).data; //遍历每一行
// _f.BsNo=this.editRecord.get('ContractNo');
//}
basicForm.findField('ContractNo').setDisabled(true);
this.InitData();//重新获取数据
} else if (type == '1') {//保存并关闭
window.close();
} else if (type == '2') {//保存并全部新建
this.opStatus = 'add';
this.formEdit.getForm().reset();
//this.LoadData('add', '');
basicForm.findField('ContractNo').setDisabled(false);
this.storeCargo.removeAll();
this.storeApp.removeAll();
this.storeAppstate.removeAll();
this.storeKC.removeAll();
this.storeReceipt.removeAll();
} else if (type == '3') {//保存并新建,同时保留合同基础信息、货物信息、许可证使用信息
this.formEdit.getForm().setValues({ ContractNo: '' });
this.opStatus = 'add';
//this.LoadData('add', '');
this.formEdit.getForm().findField('ContractNo').setDisabled(true);
this.storeKC.removeAll();
this.storeReceipt.removeAll();
var Cargodatas = [];
for (var i = 0; i < this.storeCargo.getCount(); i += 1) {
this.storeCargo.getAt(i).set("ContractNo", "");
}
var Appstatedatas = [];
for (var i = 0; i < this.storeAppstate.getCount(); i += 1) {
var member = this.storeAppstate.getAt(i).set("ContractNo", "");
}
alert('注意,提单号、箱号、铅封号等信息不要重复');
}
} else {
Ext.Msg.show({ title: '错误', msg: jsonresult.Message, icon: Ext.Msg.ERROR, buttons: Ext.Msg.OK });
}
} else {
Ext.Msg.show({
title: '请重试',
msg: '服务器响应出错',
icon: Ext.Msg.ERROR, buttons: Ext.Msg.OK
});
}
//alert('03');
}
});
}, //end save
onAddFileClick: function (button, event) {
var selectedRecords = this.gridListReceipt.selModel.getSelection();
if (selectedRecords.length > 0) {
var winAccess = new Shipping.FileUpload({});
winAccess.BillNo = this.editRecord.get('ContractNo');
winAccess.File_DocType = selectedRecords[0].data.RECEIPTTYPE;
winAccess.File_DocNo = selectedRecords[0].data.RECEIPTNO;
winAccess.Obj = this;
winAccess.CallBackFun = function (obj) {
obj.storeChfeeFile.load({
params: {
BillNo: obj.editRecord.get('ContractNo')
}
});
}
winAccess.show();
}
else {
Ext.Msg.show({ title: "提示", msg: "请先选择单据", icon: Ext.Msg.INFO, buttons: Ext.Msg.OK });
}
},
onDelFileClick: function (button, event) {
var selections = this.fileGrid.getSelectionModel().getSelection();
if (selections.length == 0) {//提示', msg: '请先选择要删除的数据!
Ext.Msg.show({ title: Zi.LAN.Prompt, msg: Zi.LAN.selectdelete, icon: Ext.Msg.INFO, buttons: Ext.Msg.OK });
return;
}
var record = new Array();
for (var i = 0; i < selections.length; i++) {
record.push(selections[i].data);
} //提示', '确定删除该记录吗?'
Ext.MessageBox.confirm(Zi.LAN.Prompt, Zi.LAN.suredelete, function (btn) {
if (btn == 'yes') {
Ext.Msg.wait(Zi.LAN.nowdelete); //正在删除数据
Ext.Ajax.request({
waitMsg: Zi.LAN.nowdelete,
url: '/Account/Chfee_payapplication/CertDel',
params: {
data: Ext.JSON.encode(record)
},
callback: function (options, success, response) {
if (success) {
var jsonresult = Ext.JSON.decode(response.responseText);
if (jsonresult.Success) {
this.storeChfeeFile.load({
params: {
BillNo: window.parent.opener.OprationSwap()[2].get('ContractNo')
}
});
Ext.Msg.show({ title: Zi.LAN.Prompt, msg: jsonresult.Message, icon: Ext.Msg.INFO, buttons: Ext.Msg.OK });
} //提示
else {
Ext.Msg.show({ title: Zi.LAN.Prompt, msg: jsonresult.Message, icon: Ext.Msg.ERROR, buttons: Ext.Msg.OK });
}
}
},
failure: function (response, options) {//'警告', msg: '服务器响应出错,请重试'
Ext.Msg.show({ title: Zi.LAN.Caveat, msg: Zi.LAN.FuWuQiError, icon: Ext.Msg.INFO, buttons: Ext.Msg.OK });
},
success: function (response, options) {
},
scope: this
}); //end Ext.Ajax.request
}
}, this);
},
Print: function () {
var selectedRecords = this.gridListChFee.selModel.getSelection();
var chfeeList = "";
for (var i = 0; i < selectedRecords.length; i++) {
var rec = selectedRecords[i];
if (chfeeList == "") {
chfeeList = "'" + rec.get('GId') + "'";
}
else {
chfeeList = chfeeList + ",'" + rec.get('GId') + "'";
}
}
var selectedRecords = this.gridListChFee_YF.selModel.getSelection();
for (var i = 0; i < selectedRecords.length; i++) {
var rec = selectedRecords[i];
if (chfeeList == "") {
chfeeList = "'" + rec.get('GId') + "'";
}
else {
chfeeList = chfeeList + ",'" + rec.get('GId') + "'";
}
}
if (chfeeList == "") {
Ext.Msg.show({ title: '错误', msg: '至少选择一项费用', icon: Ext.Msg.ERROR, buttons: Ext.Msg.OK });
return;
}
var basicForm = this.formEdit.getForm();
var ContractNo = this.editRecord.get('ContractNo')
if (ContractNo == '*' || ContractNo == '') {
Ext.Msg.show({ title: '错误', msg: '单据还没有保存,请保存后再打印', icon: Ext.Msg.ERROR, buttons: Ext.Msg.OK });
return;
}
function GetDateStr(AddDayCount) {
var dd = new Date();
dd.setDate(dd.getDate() + AddDayCount);//获取AddDayCount天后的日期
var y = dd.getFullYear();
var m = dd.getMonth() + 1;//获取当前月份的日期
var d = dd.getDate();
return y + "-" + m + "-" + d;
}
//alert(GetDateStr(+5));
var needdate = GetDateStr(+5);
var printdate = GetDateStr(0);
var printType = 'XXH_Port_KHDZ';//单笔客户对账
//
var sql1 = " select *, ";
var sql1 = sql1 + "(select EnumValueName from tSysEnumValue where LangId=0 and EnumTypeID=10 and EnumValueID=M.port) as portRef ";
var sql1 = sql1 + " ,(select country from code_country where COUNTRYID=m.countryid) country ";
var sql1 = sql1 + " ,dbo.f_str(m.contractno) cargoname,dbo.F_FactoryNo(M.contractno) FactoryNo from import_main m where contractno='" + ContractNo + "' ";
var sql2 = " select feename,unitprice,quantity,currency,exchangerate, ";
var sql2 = sql2 + " case feetype when '1' then amount else 0-amount end Amount,remark ";
var sql2 = sql2 + " from ch_fee where gid in( ";
var sql2 = sql2 + chfeeList + " ) order by sort";
var sql3 = "select * from [user] where codename='" + usercode + "'";
var sql4 = "select '" + needdate + "' needdate,'" + printdate + "' printdate";
var sql5 = "select prtheadxml3 name,prtheadxml4 ZH,prtheadxml5 YH from company where gid=(select company from import_main where contractno='" + ContractNo + "')";
var sql6 = "select dbo.f_str('" + ContractNo + "'),sum(weight) [weight] from import_cargo where contractno='" + ContractNo + "'";
PrintComm(printType, sql1, sql2, sql3, sql4, sql5, sql6);
}
,
PrintKCFee: function () {
var selectedRecords = this.formKC.selModel.getSelection();
var KCList = "";
for (var i = 0; i < selectedRecords.length; i++) {
var rec = selectedRecords[i];
if (KCList == "") {
KCList = rec.get('id');
}
else {
KCList = KCList + "," + rec.get('id');
}
}
if (KCList == "") {
Ext.Msg.show({ title: '错误', msg: '至少选择一条库存记录', icon: Ext.Msg.ERROR, buttons: Ext.Msg.OK });
return;
}
var basicForm = this.formEdit.getForm();
var ContractNo = this.editRecord.get('ContractNo')
if (ContractNo == '*' || ContractNo == '') {
Ext.Msg.show({ title: '错误', msg: '单据还没有保存,请保存后再打印', icon: Ext.Msg.ERROR, buttons: Ext.Msg.OK });
return;
}
function GetDateStr(AddDayCount) {
var dd = new Date();
dd.setDate(dd.getDate() + AddDayCount);//获取AddDayCount天后的日期
var y = dd.getFullYear();
var m = dd.getMonth() + 1;//获取当前月份的日期
var d = dd.getDate();
return y + "-" + m + "-" + d;
}
//alert(GetDateStr(+5));
var needdate = GetDateStr(+5);
var printdate = GetDateStr(0);
var printType = 'XXH_Port_KHDZ_KC';//客户对账_KC
//
var sql1 = " select *, ";
var sql1 = sql1 + "(select EnumValueName from tSysEnumValue where LangId=0 and EnumTypeID=10 and EnumValueID=M.port) as portRef ";
var sql1 = sql1 + " from import_main m where contractno='" + ContractNo + "' ";
var sql2 = "SELECT [id],[ContractNo],[cargo_id],[CZState],[InNum],[OutNum],[KFstate],dbo.trimdate(CZdate) czdate ";
var sql2 = sql2 + ",[text],[days],[FeeName],[UnitPrice],[Quantity],[Amount],[Sended],[Weight],(select name from import_cargo where id=import_kc.cargo_id) cargoname ";
var sql2 = sql2 + " FROM [Shippingweb].[dbo].[Import_KC] ";
var sql2 = sql2 + " where id in( " + KCList + " ) order by czdate";
var sql3 = "select * from [user] where codename='" + usercode + "'";
var sql4 = "select '" + needdate + "' needdate,'" + printdate + "' printdate";
var sql5 = "select prtheadxml3 name,prtheadxml4 ZH,prtheadxml5 YH from company where gid=(select company from import_main where contractno='" + ContractNo + "')";
var sql6 = " select m.hth 合同号,k.outnum 出库数量,k.Weight 出库重量,k.kfstate 库房,k.czdate 出库日期 ";
sql6 = sql6 + " ,m.inspection_no 报检号,m.BillNo 提单号,m.ContainerNo 箱号,k.cargo_id 商品名称 ";
sql6 = sql6 + " ,(select top 1 isnull(name,'') from import_cargo where convert(varchar,id)=k.cargo_id) 商品名称_原 ";
sql6 = sql6 + " ,m.Buyer 客户名称,(select enumvaluename from tSysEnumValue where enumtypeid=8 and enumvalueid=k.czstate ) 作业内容 ";
sql6 = sql6 + " ,k.czdate 作业时间,substring((select top 1 country from code_country where countryid= m.countryid),0,(charindex('(',(select top 1 country from code_country where countryid= m.countryid))) ) 进口国 ";
sql6 = sql6 + " ,m.sealno 铅封号,M.Contacter 联系人,M.Tel 联系电话,K.text 备注,M.op 操作人,M.DeliveryAddress 送货地址,K.TRUCKNO 车号,K.TRUCKTEL 司机电话 ";
sql6 = sql6 + " ,(select EnumValueName from tSysEnumValue where EnumTypeID=8 and EnumValueID=K.CZSTATE) 业务类型 ";
sql6 = sql6 + " from import_kc k ";
sql6 = sql6 + " left join import_main m on m.contractno=k.contractno where k.id in(" + KCList + ")";
PrintComm(printType, sql1, sql2, sql3, sql4, sql5, sql6);
},
DoPrint: function () {
var _p = this.MainTab.getActiveTab().id;
if (_p == "page_2") {
//打印仓储费对账单
this.PrintKCFee();
}
if (_p == "page_4") {
//打印应收应付
this.Print();
}
},
LoadMustBe: function () {
this.storeMustBe.load({
params: { condition: "BSTYPE='进口贸易-港口操作'" },
callback: function (r, options, success) {
if (success) {
if (this.storeMustBe.getCount() > 0) {
for (var j = 0; j < this.storeMustBe.getCount(); j += 1) {
var member = this.storeMustBe.getAt(j);
var headfield = this.formEdit.getForm().findField(member.data.FIELDNAME);
if (headfield != NaN && headfield != null) {
if (member.data.ISMUST == "1")
headfield.allowBlank = false;
if (member.data.ISCOLOR == "1")
headfield.setFieldStyle({ background: '#ffc' });
}
};
} else {
}
}
},
scope: this
});
}
});