Ext . namespace ( 'Shipping' ) ;
Shipping . MsChPayapplicationBLEdit = function ( config ) {
Ext . applyIf ( this , config ) ;
this . initUIComponents ( ) ;
window . Shipping . MsChPayapplicationBLEdit . superclass . constructor . call ( this ) ;
} ;
var BillNo ;
var BillState ;
Ext . extend ( Shipping . MsChPayapplicationBLEdit , Ext . Panel , {
ParentWin : null ,
OpStatus : 'add' ,
StoreList : null ,
EditRecord : null ,
addstore : false ,
PageSize : 30 ,
BodyPageSize : 100 ,
sqlcontext : '' ,
sortfield : '' ,
sortdire : '' ,
addsortfield : '' ,
addsortdire : '' ,
initUIComponents : function ( ) {
this . serialNo = 0 ;
this . workSerialNo = 0 ;
this . bodyDel = [ ] ;
this . FeeSql = '' ;
this . BillSql = '' ;
this . DuiBillSql = '' ;
this . IsDebit = '0' ;
this . sortfield = '' ;
this . sortdire = '' ;
this . addsortfield = '' ;
this . addsortdire = '' ;
this . canedit = false ;
this . selectfeesql = '' ;
this . formname = "MsChPayapplicationBLEdit" ; //页面名称
Ext . Ajax . timeout = 1200000 ;
this . bsnosql = getUrlParam ( 'bsnosql' ) ;
this . bsCust = getUrlParam ( 'bsCust' ) ;
//parentWin = window.parent.opener;
//mainWin = getMainForm(parentWin);
if ( ! this . bsCust ) {
parentWin = window . parent . opener ;
mainWin = getMainForm ( parentWin ) ;
} else {
parentWin = window . parent . opener . parent . opener ;
mainWin = getMainForm ( parentWin ) ;
}
Ext . define ( 'DsShipping.ux.MsClientGroup' , {
extend : 'Ext.data.Model' ,
fields : [
{ name : 'SHORTNAME' , type : 'string' } ,
{ name : 'PCORPNAME' , type : 'string' } ,
{ name : 'CODENAME' , type : 'string' }
]
} ) ;
_this = this ;
this . StoreClientGroup = Ext . create ( 'DsExt.ux.RefTableStore' , {
model : 'DsShipping.ux.MsClientGroup' ,
proxy : { url : '/MvcShipping/MsInfoClient/GetClientGroupList' }
} ) ;
this . StoreClientGroup . load ( { params : { condition : "PCORPNAME<>'' " }
} ) ;
this . storeMustBe = Ext . create ( 'Ext.data.Store' , {
model : 'DsShipping.ux.OpDefValue' ,
remoteSort : true ,
proxy : {
type : 'ajax' ,
url : '/MvcShipping/MsCodeOpMustField/GetDataList' ,
reader : {
id : 'GID' ,
root : 'data' ,
totalProperty : 'totalCount'
}
}
} ) ;
//#region 编辑form
//枚举参照相关(编辑form)
//表参照相关(编辑form)
// this.storeCustACCOUNT = Ext.create('DsExt.ux.RefTableStore', {
// model: 'DsShipping.ux.CustomACCOUNTModel',
// proxy: { url: '/CommMng/BasicDataRef/GetCustomACCOUNTList' }
// });
// this.comboxCustACCOUNT = Ext.create('DsExt.ux.RefTableCombox', {
// fieldLabel: '结算对象账户', flex: 2, id: "CUSTACCOUNTGID",
// store: this.storeCustACCOUNT,
// forceSelection: true,
// name: 'CUSTACCOUNTGID',
// valueField: 'GID',
// displayField: 'BANKNAME_ACCOUNT',
// listeners: {
// scope: this,
// 'select': function (combo, records, eOpts) {
// if (records.length > 0) {
// //alert(records[0].data.GID);
// //alert(records[0].data.BANKNAME_ACCOUNT);
// }
// }
// }
// });
this . storeCustACCOUNT = Ext . create ( 'DsExt.ux.RefTableStore' , {
model : 'DsShipping.ux.CustomACCOUNTModel' ,
proxy : { url : '/CommMng/BasicDataRef/GetCustomACCOUNTList' }
} ) ;
this . comboxCustACCOUNT = Ext . create ( 'DsExt.ux.RefTableCombox' , {
fieldLabel : Zi . LAN . jsuanzh , //结算对象账户
store : this . storeCustACCOUNT ,
forceSelection : true ,
name : 'CUSTACCOUNTGID' ,
valueField : 'GID' ,
displayField : 'BANKNAME_ACCOUNT' ,
listeners : {
scope : this ,
'select' : function ( combo , records , eOpts ) {
if ( records . length > 0 ) {
var CUSTACCOUNT = this . formEdit . getForm ( ) . findField ( 'CUSTACCOUNT' ) ;
CUSTACCOUNT . setValue ( records [ 0 ] . data . ACCOUNT ) ;
}
}
}
} ) ;
this . storeCustCode = Ext . create ( 'DsExt.ux.RefTableStore' , {
model : 'DsShipping.ux.CustomRefModel' ,
proxy : { url : '/CommMng/BasicDataRef/GetCustomRefListRmAll' }
} ) ;
// this.storeCustCode.load({ params: { condition: ""} });
this . storeCustCode . loadData ( mainWin . GetPubStore ( "PubStore_CustomerAll" ) . data . items ) ;
this . comboxCustCode = Ext . create ( 'DsExt.ux.RefTableCombox' , {
fieldLabel : Zi . LAN . SettlementUnit , //结算单位
store : this . storeCustCode ,
allowBlank : false ,
matchFieldWidth : false ,
//queryMode: 'remote',
//minChars: 1,
queryParam : 'CODENAME' ,
name : 'CUSTOMERNAME' ,
valueField : 'CustName' ,
displayField : 'CodeAndName' ,
listeners : {
scope : this ,
'select' : function ( combo , records , eOpts ) {
if ( records . length > 0 ) {
var CUSTOMERNAME = this . formEdit . getForm ( ) . findField ( 'CUSTOMERNAME' ) . getValue ( ) ;
if ( CUSTOMERNAME == '' ) return ;
var CUSTNAME = this . formSearch . getForm ( ) . findField ( 'CUSTNAME' ) ;
var tmpcust = CUSTNAME . getValue ( ) ;
// if (tmpcust == '' || tmpcust == null || tmpcust == undefined) {
CUSTNAME . setValue ( CUSTOMERNAME ) ;
// }
//this.storeCustACCOUNT.load({ params: { condition: " LINKID=(select GID from info_client where shortname='" + CUSTOMERNAME + "') "} });
this . LoadCustACCOUNT ( CUSTOMERNAME ) ;
}
}
}
} ) ;
this . StoreOpRange = Ext . create ( 'DsExt.ux.RefTableStore' , {
model : 'MsOP' ,
proxy : { url : '/MvcShipping/MsBaseInfo/GetOpRang' }
} ) ;
this . StoreCurr = Ext . create ( 'DsExt.ux.RefTableStore' , {
model : 'MsFeeCurr' ,
proxy : { url : '/MvcShipping/MsChFee/GetFeeCurrList' }
} ) ;
this . StoreCurr . load ( { params : { condition : "" } } ) ;
this . StoreDateCurr = Ext . create ( 'DsExt.ux.RefTableStore' , {
model : 'MsFeeCurr' ,
proxy : { url : '/MvcShipping/MsChFee/GetFeeNowCurrList' }
} ) ;
this . StoreDateCurr . load ( { params : { condition : "" } } ) ;
this . comboxCurr = Ext . create ( 'DsExt.ux.RefTableCombox' , {
fieldLabel : Zi . LAN . Currency , //币别
store : this . StoreCurr ,
forceSelection : true ,
emptyText : Zi . LAN . ybsq , //原币申请
name : 'CURR' ,
valueField : 'CURR' ,
displayField : 'CURR' ,
listeners : {
scope : this ,
'select' : function ( combo , records , eOpts ) {
if ( records . length > 0 ) {
var CUSTOMERNAME = this . formEdit . getForm ( ) . findField ( 'CUSTOMERNAME' ) . getValue ( ) ;
if ( CUSTOMERNAME == '' ) { return ; }
else {
this . LoadCustACCOUNT ( CUSTOMERNAME ) ;
}
}
}
}
} ) ;
this . StoreStlMode = Ext . create ( 'DsExt.ux.RefTableStore' , {
model : 'STLMODE' ,
proxy : { url : '/MvcShipping/MsBaseInfo/GetStlModeList' }
} ) ;
this . StoreStlMode . load ( { params : { condition : "" } } ) ;
this . comboxStlMode = Ext . create ( 'DsExt.ux.RefTableCombox' , {
fieldLabel : Zi . LAN . jstype , //结算方式
store : this . StoreStlMode ,
forceSelection : true ,
name : 'SETTLETYPE' ,
valueField : 'STLCODE' ,
displayField : 'STLNAME'
} ) ;
this . storeSaleCompany = Ext . create ( 'DsExt.ux.RefTableStore' , {
model : 'MsCompanysEntity' ,
proxy : { url : '/MvcShipping/MsCompanys/GetNoPicDataList' }
} ) ;
this . storeSaleCompany . load ( { params : { condition : "" } } ) ;
this . comboxSaleCompany = Ext . create ( 'DsExt.ux.RefTableCombox' , {
fieldLabel : Zi . LAN . DepartmentName , //'委托分公司',
store : this . storeSaleCompany ,
forceSelection : true ,
name : 'SALECORPID' ,
valueField : 'GID' ,
displayField : 'NAME'
} ) ;
this . storeReplacePaymentCORPID = Ext . create ( 'DsExt.ux.RefTableStore' , {
model : 'MsCompanysEntity' ,
proxy : { url : '/MvcShipping/MsCompanys/GetNoPicDataList' }
} ) ;
//this.storeReplacePaymentCORPID.load({ params: { condition: "" } });
this . storeReplacePaymentCORPID . loadData ( mainWin . GetPubStore ( "Company" ) . data . items ) ;
this . storeReplacePaymentCORPID . add ( { GID : '' , NAME : '' } ) ;
this . comboxReplacePaymentCORPID = Ext . create ( 'DsExt.ux.RefTableCombox' , {
fieldLabel : '代付公司' , //'委托分公司',
store : this . storeReplacePaymentCORPID ,
forceSelection : true ,
readOnly : false ,
name : 'ReplacePaymentCORPID' ,
valueField : 'GID' ,
displayField : 'NAME'
} ) ;
//编辑form
this . formEdit = Ext . widget ( 'form' , {
region : 'center' ,
frame : true ,
bodyPadding : 3 ,
trackResetOnLoad : true ,
// autoScroll: true,
fieldDefaults : {
margins : '2 2 2 2' ,
labelAlign : 'right' ,
flex : 1 ,
labelWidth : 90 ,
msgTarget : 'qtip'
} ,
items : [
{ //fieldset 1
xtype : 'fieldset' ,
defaultType : 'textfield' ,
layout : 'anchor' ,
defaults : {
anchor : '100%'
} ,
items : [ {
xtype : 'container' ,
layout : 'hbox' ,
defaultType : 'textfield' ,
items : [ {
fieldLabel : 'GID' ,
name : 'GID' , flex : 0 , hidden : true , margins : '0'
} , {
fieldLabel : 'BILLSTATUS' ,
name : 'BILLSTATUS' , flex : 0 , hidden : true , margins : '0'
} , {
fieldLabel : 'ISPRINT' ,
name : 'ISPRINT' , flex : 0 , hidden : true , margins : '0'
} , {
fieldLabel : 'APPLICANT' ,
name : 'APPLICANT' , flex : 0 , hidden : true , margins : '0'
} , {
fieldLabel : 'COMPANYID' ,
name : 'COMPANYID' , flex : 0 , hidden : true , margins : '0'
} ,
{
fieldLabel : Zi . LAN . sqnum , //申请编号
readOnly : true ,
name : 'BILLNO'
} , {
fieldLabel : Zi . LAN . status , //状态
readOnly : true ,
name : 'BILLSTATUSREF'
} , this . comboxCustCode
, this . comboxCustACCOUNT , {
fieldLabel : Zi . LAN . jsdxzh , //结算对象账号
readOnly : true ,
name : 'CUSTACCOUNT'
} ,
{
fieldLabel : Zi . LAN . DateApplication , //申请日期
readOnly : true ,
name : 'APPLYTIME'
}
]
} , {
xtype : 'container' ,
layout : 'hbox' ,
defaultType : 'textfield' ,
items : [ this . comboxCurr , {
fieldLabel : 'RMB' + Zi . LAN . AmountOfMoney , //RMB金额
readOnly : true ,
name : 'AMOUNTRMB' ,
renderer : function ( value , cellmeta , record , rowIndex , columnIndex , store ) {
try {
var lsValue = usMoney ( value , 2 , '' , false ) ;
if ( lsValue != "NaN" ) {
value = lsValue ; if ( parseFloat ( lsValue ) < 0 ) {
return '<SPAN style="COLOR: red">' + lsValue + '</SPAN>' ;
}
}
else {
return value ;
}
}
catch ( e ) {
return value ;
}
return value ;
}
} , {
fieldLabel : 'USD' + Zi . LAN . AmountOfMoney , //USD金额'
readOnly : true ,
name : 'AMOUNTUSD' ,
renderer : function ( value , cellmeta , record , rowIndex , columnIndex , store ) {
try {
var lsValue = usMoney ( value , 2 , '' , false ) ;
if ( lsValue != "NaN" ) {
value = lsValue ; if ( parseFloat ( lsValue ) < 0 ) {
return '<SPAN style="COLOR: red">' + lsValue + '</SPAN>' ;
}
}
else {
return value ;
}
}
catch ( e ) {
return value ;
}
return value ;
}
} , {
fieldLabel : Zi . LAN . otherwb , //其他外币金额'
readOnly : true ,
name : 'AMOUNTOT' ,
renderer : function ( value , cellmeta , record , rowIndex , columnIndex , store ) {
try {
var lsValue = usMoney ( value , 2 , '' , false ) ;
if ( lsValue != "NaN" ) {
value = lsValue ; if ( parseFloat ( lsValue ) < 0 ) {
return '<SPAN style="COLOR: red">' + lsValue + '</SPAN>' ;
}
}
else {
return value ;
}
}
catch ( e ) {
return value ;
}
return value ;
}
} , {
fieldLabel : Zi . LAN . jhEMB , //计划结算RMB
name : 'PREAMOUNTRMB'
} , {
fieldLabel : Zi . LAN . jhUSD , //计划结算USD
name : 'PREAMOUNTUSD'
} ]
} , {
xtype : 'container' ,
layout : 'hbox' ,
defaultType : 'textfield' ,
items : [ this . comboxStlMode , {
fieldLabel : Zi . LAN . ApplyPaymentDate , //最晚支付日期
format : 'Y-m-d' ,
xtype : 'datetimefield' ,
allowBlank : false ,
name : 'PAYABLETIME'
} , {
fieldLabel : Zi . LAN . Applicant , //申请人
readOnly : true ,
name : 'APPLICANTNAME'
} , {
fieldLabel : Zi . LAN . jhjies , //计划结算其他'
name : 'PREAMOUNTOT'
} , {
fieldLabel : Zi . LAN . weisq + 'RMB' , //未申请RMB
readOnly : true ,
name : 'BALAMOUNTRMB'
} , {
fieldLabel : Zi . LAN . weisq + 'USD' , //未申请USD
readOnly : true ,
name : 'BALAMOUNTUSD'
}
]
} , {
xtype : 'container' ,
layout : 'hbox' ,
defaultType : 'textfield' ,
items : [ {
fieldLabel : Zi . LAN . zptait , //支票抬头
name : 'CHEQUEPAYABLE'
} , {
fieldLabel : Zi . LAN . zpbzhu , //支票备注
flex : 1 ,
name : 'CHEQUENUMREMARK'
} , {
fieldLabel : Zi . LAN . InvoiceNumber , //发票号
flex : 1 ,
name : 'INVNO'
} , {
fieldLabel : Zi . LAN . fpdate , //发票日期
flex : 1 ,
format : 'Y-m-d' ,
xtype : 'datefield' ,
name : 'INVDATE'
} , {
fieldLabel : Zi . LAN . weisqOther , //未申请其他
readOnly : true ,
name : 'BALAMOUNTOT'
} , this . comboxSaleCompany
]
} , {
xtype : 'container' ,
layout : 'hbox' ,
defaultType : 'textfield' ,
items : [ {
fieldLabel : Zi . LAN . Remarks , //备注
flex : 4 ,
name : 'REMARK'
} ]
} , {
xtype : 'container' ,
layout : 'hbox' ,
defaultType : 'textfield' ,
items : [
{
xtype : "checkbox" , //checkbox控件
name : "IsReplacePayment" ,
fieldLabel : "是否代付" ,
inputValue : "true" , //选中的值
uncheckedValue : "false" //未选中的值
} , this . comboxReplacePaymentCORPID
, {
name : "ReplacePaymentStatus" ,
fieldLabel : "代付状态" ,
readOnly : true
} , {
name : "ReplacePaymentOPNAME" ,
fieldLabel : "代付操作人" ,
readOnly : true
} , {
format : 'Y-m-d' ,
xtype : 'datetimefield' ,
name : "ReplacePaymentOPTIME" ,
fieldLabel : "代付时间" ,
readOnly : true
} , { xtype : 'hiddenfield' , flex : 1 } ]
}
] //end items(fieldset 1)
} //end fieldset 1
] //end root items
} ) ; //end this.formEdit
//#endregion
//#region 按钮Toolbar
this . panelBtn = new Ext . Panel ( {
region : "north" ,
tbar : [
{
id : 'btnEPrev' ,
text : Zi . LAN . sypiao , //上一票
// iconCls: "btnsave",
handler : function ( button , event ) {
this . PrevRecord ( ) ;
} ,
scope : this
} , {
id : 'btnENext' ,
text : Zi . LAN . xypiao , //下一票"
// iconCls: "btnsave",
handler : function ( button , event ) {
this . NextRecord ( ) ;
} ,
scope : this
} , {
id : 'btnESave' ,
text : Zi . LAN . Save , //保存"
iconCls : "btnsave" ,
handler : function ( button , event ) {
this . Save ( '0' , '0' ) ;
} ,
scope : this
} , '-' ,
{
text : Zi . LAN . print , //打印
handler : function ( button , event ) {
this . Print ( ) ;
} ,
scope : this
} ,
'-' ,
{
id : 'btnESaveAndClose' ,
text : Zi . LAN . saveandclose , //保存并关闭
handler : function ( button , event ) {
this . Save ( '1' , '0' ) ;
} ,
scope : this
} ,
'-' ,
{
id : 'btnESaveAndNew' ,
text : Zi . LAN . saveandnew , //保存并新建
handler : function ( button , event ) {
this . Save ( '2' , '0' ) ;
this . GetEditStatus ( ) ;
} ,
scope : this
} ,
'-' ,
{
id : 'btnENew' ,
text : Zi . LAN . xnew , //新建
handler : function ( button , event ) {
this . LoadData ( 'add' , '*' ) ;
} ,
scope : this
} , '-' , {
id : 'btnSubmitAudit' ,
text : Zi . LAN . tjshe ,
tooltip : Zi . LAN . tjshe , //提交审核
handler : function ( button , event ) {
// this.onSubmitAuditClick();
this . Save ( '0' , '1' ) ;
} ,
scope : this
} , '-' , {
id : 'btnSubmitAuditBack' ,
text : Zi . LAN . cxsh ,
tooltip : Zi . LAN . cxsh , //撤销审核
handler : function ( button , event ) {
this . onSubmitAuditBackClick ( ) ;
} ,
scope : this
} , '-' ,
{
text : Zi . LAN . delete1 , //删除
id : 'btndelete' ,
iconCls : "btndelete" ,
handler : function ( button , event ) {
this . onDeleteBillClick ( button , event ) ;
} ,
scope : this
} , '-' , {
xtype : 'checkbox' ,
fieldLabel : Zi . LAN . chatts , //微信推送
labelWidth : 60 ,
labelAlign : "right" ,
id : 'wxpush' ,
vertical : true ,
handler : function ( obj , checked ) {
} ,
scope : this
}
]
} ) ; //end 按钮Toolbar
//#endregion
//#region 明细表
//明细表表格相关
this . GridCheckBoxModel = Ext . create ( 'Ext.selection.CheckboxModel' ) ;
//明细表-数据集
this . storeBodyList = Ext . create ( 'Ext.data.Store' , {
model : 'Chfee_do_detail' ,
pageSize : this . BodyPageSize ,
remoteSort : true ,
proxy : {
type : 'ajax' ,
url : '/Account/Chfee_payapplication/GetBillList' ,
timeout : 120000 ,
reader : {
id : 'BSNO,FEEDOID' ,
root : 'data' ,
totalProperty : 'totalCount'
}
}
} ) ;
this . BodyPagenum = Ext . create ( 'Ext.form.field.Number' , {
name : 'bottles' ,
fieldLabel : Zi . LAN . NumberOfpage , //每页记录数
labelAlign : 'right' ,
value : this . BodyPageSize ,
maxValue : 100000 ,
width : 180 ,
minValue : 0 ,
listeners : {
specialkey : function ( field , e ) {
if ( e . getKey ( ) == e . ENTER ) {
_this . storeBodyList . reload ( ) ;
}
}
}
} ) ;
//明细表表格
this . gridListCellEditing = Ext . create ( 'Ext.grid.plugin.CellEditing' , {
clicksToEdit : 1
} ) ;
this . initgirdbillcolums = [ {
sortable : true ,
dataIndex : 'BILLNO' ,
header : 'BILL' ,
hidden : true ,
width : 100
} , {
sortable : true ,
dataIndex : 'BSNO' ,
header : 'BSNO' ,
hidden : true ,
width : 100
} , {
sortable : true ,
dataIndex : 'FEEDOID' ,
header : 'FEEDOID' ,
hidden : true ,
width : 100
} , {
sortable : true ,
dataIndex : 'CUSTNO' ,
header : Zi . LAN . DelegateNumber , //委托编号
width : 120
} , {
sortable : true ,
dataIndex : 'MBLNO' ,
header : Zi . LAN . ZhuTDH , //主提单号
width : 120
} , {
sortable : true ,
dataIndex : 'CUSTOMERNAME' ,
header : Zi . LAN . Requester , //委托单位
width : 100
} , {
sortable : true ,
dataIndex : 'ETD' ,
header : Zi . LAN . SailingDate , //开船日期
renderer : Ext . util . Format . dateRenderer ( 'Y-m-d' ) ,
width : 100
} , {
sortable : true ,
dataIndex : 'BSSOURCE' ,
header : Zi . LAN . BusinessSource , //业务来源
width : 80
} , {
sortable : true ,
dataIndex : 'FEENAME' ,
header : Zi . LAN . CostName , //费用名称
width : 80
} , {
sortable : true ,
dataIndex : 'FEETYPEREF' ,
header : Zi . LAN . PayReceive , //收付
width : 40
} , {
sortable : true ,
dataIndex : 'FEEOBJNAME' ,
header : Zi . LAN . fyduixiang , //费用对象
width : 80
} , {
sortable : true ,
dataIndex : 'AMOUNT' ,
header : Zi . LAN . sjmoney , //申请金额
width : 80 ,
renderer : function ( value , cellmeta , record , rowIndex , columnIndex , store ) {
try {
var lsValue = usMoney ( value , 2 , '' , false ) ;
if ( lsValue != "NaN" ) {
value = lsValue ; if ( parseFloat ( lsValue ) < 0 ) {
return '<SPAN style="COLOR: red">' + lsValue + '</SPAN>' ;
}
}
else {
return value ;
}
}
catch ( e ) {
return value ;
}
return value ;
}
} , {
sortable : true ,
dataIndex : 'ORIGCURRENCY' ,
header : Zi . LAN . OriginalCurrency , //原始币别
width : 80
} , {
sortable : true ,
dataIndex : 'ORIGEXCHANGERATE' ,
header : Zi . LAN . OriginalExchangeRate , //原始汇率
width : 80
} , {
sortable : true ,
dataIndex : 'EXCHANGERATE' ,
header : Zi . LAN . ExchangeRate , //折算汇率
width : 80
} , {
sortable : true ,
dataIndex : 'ORIGAMOUNT' ,
header : Zi . LAN . OriginalAmount , //原始金额
width : 80 ,
renderer : function ( value , cellmeta , record , rowIndex , columnIndex , store ) {
try {
var lsValue = usMoney ( value , 2 , '' , false ) ;
if ( lsValue != "NaN" ) {
value = lsValue ; if ( parseFloat ( lsValue ) < 0 ) {
return '<SPAN style="COLOR: red">' + lsValue + '</SPAN>' ;
}
}
else {
return value ;
}
}
catch ( e ) {
return value ;
}
return value ;
}
} , {
sortable : true ,
dataIndex : 'ACCTAXRATE' ,
header : Zi . LAN . AccTaxRate , //揽货人
width : 80
} , {
sortable : true ,
dataIndex : 'SALE' ,
header : Zi . LAN . LanhuoPeople , //揽货人
width : 80
} , {
sortable : true ,
dataIndex : 'COMPANYNAME' ,
header : Zi . LAN . DepartmentName , //揽货人
width : 80
} , {
sortable : true ,
dataIndex : 'ENTERP' ,
header : Zi . LAN . ENTERP , //揽货人
width : 80
} , {
sortable : true ,
dataIndex : 'OPTYPE' ,
header : Zi . LAN . ChangeSingle , //更改单
width : 80
} , {
sortable : true ,
dataIndex : 'ACCDATE' ,
header : Zi . LAN . AccountingPeriod , //会计期间
width : 80
} , {
sortable : true ,
dataIndex : 'BLISSUESTATUS' ,
header : Zi . LAN . SignatureStatus , //签单状态
width : 80
} , {
sortable : true ,
dataIndex : 'Remark' ,
header : Zi . LAN . Remarks , //备注
width : 160
} , {
sortable : true ,
dataIndex : 'INPUTMODE' ,
header : Zi . LAN . EntryMethod , //录入方式
width : 160
} , {
sortable : true ,
dataIndex : 'CNTRTOTAL' ,
header : Zi . LAN . CNTRTOTAL , //录入方式
width : 100
} , {
sortable : true ,
dataIndex : 'OP' ,
header : Zi . LAN . Operating , //揽货人
width : 80
} , {
sortable : true ,
dataIndex : 'BSSTATUSREF' ,
header : Zi . LAN . BSSTATUSREF , //揽货人
width : 80
} , {
sortable : true ,
dataIndex : 'FEESTATUSREF' ,
header : Zi . LAN . FEESTATUSREF , //揽货人
width : 80
} , {
sortable : true ,
dataIndex : 'VESSEL' ,
header : Zi . LAN . chuanname , //揽货人
width : 80
} , {
sortable : true ,
dataIndex : 'VOYNO' ,
header : Zi . LAN . vessel , //揽货人
width : 80
} , {
sortable : true ,
dataIndex : 'CARRIER' ,
header : Zi . LAN . CARRIER , //揽货人
width : 80
}
] ;
this . girdbillcolums = this . initgirdbillcolums ;
this . storeFeeNameRef = Ext . create ( 'DsExt.ux.RefTableStore' , {
model : 'DsShipping.ux.FeeTypeRefModel' ,
proxy : { url : '/MvcShipping/MsChFee/GetFeeTypeRefListNew' }
} ) ;
this . comboxFeeNameRef = Ext . create ( 'DsExt.ux.RefTableCombox' , {
store : this . storeFeeNameRef ,
forceSelection : true ,
queryMode : 'remote' ,
fieldLabel : "费用名称" ,
labelWidth : 60 ,
minChars : 1 ,
queryParam : 'Name' ,
lazyRender : false ,
name : 'FeeName' ,
id : 'BILLFEENAME' ,
valueField : 'Name' ,
displayField : 'CodeAndName' ,
enableKeyEvents : true ,
listeners : {
keyup : function ( field , e ) {
if ( e . getKey ( ) == e . ENTER ) {
var billno = _this . formEdit . getForm ( ) . findField ( 'BILLNO' ) . getValue ( ) ;
var BILLBSNO = Ext . getCmp ( 'BILLBSNO' ) ;
var mblno = BILLBSNO . value ;
var sql = " BILLNO='" + billno + "' " ;
if ( mblno != '' && mblno != null ) {
sql = sql + " and (isnull(b.CUSTNO,'')+' '+isnull(b.MBLNO,'')+' '+isnull(b.HBLNO,'') like '%" + mblno + "%') " ;
}
var feename = field . value ;
if ( feename != '' && feename != null ) {
sql = sql + " and c.FEENAME='" + feename + "'" ;
}
_this . storeBodyList . load ( { params : { start : 0 , limit : _this . BodyPageSize , condition : sql } } ) ;
}
}
}
} ) ;
this . gridList = new Ext . grid . GridPanel ( {
store : this . storeBodyList ,
enableHdMenu : false ,
region : 'center' ,
loadMask : { msg : Zi . LAN . LoadData } , //数据加载中,请稍等...
trackMouseOver : true ,
disableSelection : false ,
selModel : this . GridCheckBoxModel ,
viewConfig : {
enableTextSelection : true
} ,
tbar : [ {
text : Zi . LAN . deletemx , //删除申请明细
tooltip : Zi . LAN . deletemx , //删除申请明细
id : 'btndeldetail' ,
iconCls : "btndeletedetail" ,
handler : function ( button , event ) {
this . onDeleteClick ( button , event , 1 ) ;
} ,
scope : this
} , '-' , {
text : Zi . LAN . ExportExcel , //导出Excel
id : "btnExportExcel" ,
iconCls : 'btnexportexcel' ,
handler : function ( button , event ) {
this . onExportClick ( button , event ) ;
} ,
scope : this
} , '-' , {
text : Zi . LAN . Saveliststyle , //保存列表样式
id : "btntestbody" ,
menu : [
{ text : Zi . LAN . Save , //保存
handler : function ( button , event ) {
_this . girdbillcolums = DsTruck . SaveGridPanel ( USERID , _this . formname + 'bill' , _this . gridList . columns , _this . girdbillcolums , 1 , true ) ;
}
} , { text : Zi . LAN . Initialization , //初始化
handler : function ( menu , event ) {
_this . girdbillcolums = DsTruck . SaveGridPanel ( USERID , _this . formname + 'bill' , _this . gridList . columns , _this . initgirdbillcolums , 1 , true ) ;
}
} ] ,
scope : this
} ,
{
fieldLabel : "单号" ,
labelWidth : 40 ,
xtype : 'textfield' ,
name : 'BSNO' ,
id : 'BILLBSNO' ,
listeners : {
specialkey : function ( field , e ) {
if ( e . getKey ( ) == e . ENTER ) {
var billno = _this . formEdit . getForm ( ) . findField ( 'BILLNO' ) . getValue ( ) ;
var mblno = field . value ;
var sql = " BILLNO='" + billno + "' " ;
if ( mblno != '' && mblno != null ) {
sql = sql + " and (b.MBLNO+b.HBLNO+b.CUSTNO+b.ORDERNO like '%" + mblno + "%') " ;
}
var BILLFEENAME = Ext . getCmp ( 'BILLFEENAME' ) ;
var feename = BILLFEENAME . value ;
if ( feename != '' && feename != null ) {
sql = sql + " and c.FEENAME='" + feename + "'" ;
}
_this . storeBodyList . load ( { params : { start : 0 , limit : _this . BodyPageSize , condition : sql } } ) ;
}
}
}
} , this . comboxFeeNameRef ] ,
columns : this . girdbillcolums ,
// paging bar on the bottom
bbar : [ Ext . create ( 'Ext.PagingToolbar' , {
store : this . storeBodyList ,
displayInfo : true ,
displayMsg : Zi . LAN . FenYe , //当前显示条数据
emptyMsg : Zi . LAN . Nodata //没有数据
} ) , this . BodyPagenum ]
} ) ;
this . gridList . addListener ( 'sortchange' , function ( ct , column , direction , eOpts ) {
this . sortfield = column . dataIndex ;
this . sortdire = direction ;
} , this ) ;
this . gridList . addListener ( 'itemdblclick' , function ( dataview , record , item , index , e , b ) {
this . SelectedRecord = record ;
var openSet = "height=700, width=1024, toolbar=no, menubar=no,scrollbars=1, resizable=1,location=no, status=no,Top= " + ( screen . height - 750 ) / 2 + ",Left= " + ( screen . width - 1100 ) / 2
var openType = "_blank" ;
var openUrl = "" ;
openUrl = "../../MvcShipping/MsOpBill/MsOpFeeView?handle=check&bsno=" + record . data . BSNO ;
window . open ( openUrl , openType , openSet ) ;
} , this ) ;
this . girdbillcolums = DsTruck . GetGridPanel ( USERID , this . formname + 'bill' , this . girdbillcolums , 1 ) ; //使用者id, 表名, 中间column数组, 跳过一开始的几列
this . girdbillcolums . unshift ( new Ext . grid . RowNumberer ( ) ) ;
this . gridList . reconfigure ( this . storeBodyList , this . girdbillcolums ) ;
this . storeBodySum = Ext . create ( 'Ext.data.Store' , {
model : 'Chfee_do_sum' ,
remoteSort : true ,
proxy : {
type : 'ajax' ,
url : '/Account/Chfee_payapplication/GetBillSum' ,
reader : {
root : 'data' ,
totalProperty : 'totalCount'
}
}
} ) ;
this . gridSum = new Ext . grid . GridPanel ( {
store : this . storeBodySum ,
enableHdMenu : false ,
region : 'center' ,
loadMask : { msg : Zi . LAN . LoadData } , //数据加载中,请稍等...
trackMouseOver : true ,
disableSelection : false ,
tbar : [ {
xtype : 'label' ,
width : 120 ,
height : 22 ,
text : Zi . LAN . TotalAmount //申请金额合计
} ] ,
columns : [ {
sortable : true ,
dataIndex : 'FEETYPEREF' ,
header : Zi . LAN . PayReceive , //收付
width : 40
} , {
sortable : true ,
dataIndex : 'CURRENCY' ,
header : Zi . LAN . Currency , //币 别
width : 80
} , {
sortable : true ,
dataIndex : 'AMOUNT' ,
header : Zi . LAN . AmountOfMoney , //金额
width : 80 ,
renderer : function ( value , cellmeta , record , rowIndex , columnIndex , store ) {
try {
var lsValue = usMoney ( value , 2 , '' , false ) ;
if ( lsValue != "NaN" ) {
value = lsValue ; if ( parseFloat ( lsValue ) < 0 ) {
return '<SPAN style="COLOR: red">' + lsValue + '</SPAN>' ;
}
}
else {
return value ;
}
}
catch ( e ) {
return value ;
}
return value ;
}
}
]
} ) ;
//#endregion
//#region 待添加业务列表
this . storeBodyAddList = Ext . create ( 'Ext.data.Store' , {
pageSize : this . PageSize ,
model : 'MsAddBillCustFee' ,
remoteSort : true ,
proxy : {
type : 'ajax' ,
url : '/Account/Chfee_payapplication/GetBillDataList' ,
reader : {
id : 'BSNO' ,
root : 'data' ,
totalProperty : 'totalCount'
}
}
} ) ;
this . Pagenum = Ext . create ( 'Ext.form.field.Number' , {
name : 'bottles' ,
fieldLabel : Zi . LAN . NumberOfpage , //每页记录数
labelAlign : 'right' ,
value : this . PageSize ,
maxValue : 100000 ,
width : 180 ,
minValue : 0 ,
listeners : {
specialkey : function ( field , e ) {
if ( e . getKey ( ) == e . ENTER ) {
_this . onRefreshClick ( ) ;
}
}
}
} ) ;
this . initgirdbilladdcolums = [ {
sortable : true ,
dataIndex : 'BSNO' ,
header : 'BSNO' ,
hidden : true ,
width : 100
} , {
sortable : true ,
dataIndex : 'CUSTNO' ,
header : Zi . LAN . DelegateNumber , //委托编号
width : 108
} , {
sortable : true ,
dataIndex : 'MBLNO' ,
header : Zi . LAN . ZhuTDH , //主提单号
width : 108
} , {
sortable : true ,
dataIndex : 'FEEOBJNAME' ,
header : Zi . LAN . jfdanwei , //结费单位
width : 90
} , {
sortable : true ,
dataIndex : 'RMBCrBalAmount' ,
header : 'RMB' + Zi . LAN . weifu , //RMB未付
width : 85
} , {
sortable : true ,
dataIndex : 'USDCrBalAmount' ,
header : 'USD' + Zi . LAN . weifu , //USD未付
width : 85
} , {
sortable : true ,
dataIndex : 'OTCrBalAmount' ,
header : Zi . LAN . Otherwf , //其他未付
width : 85
} , {
sortable : true ,
dataIndex : 'RMBDrBalAmount' ,
header : 'RMB' + Zi . LAN . weishou , //RMB未收
width : 85
} , {
sortable : true ,
dataIndex : 'USDDrBalAmount' ,
header : 'USD' + Zi . LAN . weishou ,
width : 85
} , {
sortable : true ,
dataIndex : 'OTDrBalAmount' ,
header : Zi . LAN . otherws , //其他未收
width : 85
} , {
sortable : true ,
dataIndex : 'ORDERNO' ,
header : Zi . LAN . dcnum , //订舱编号
width : 90
} , {
sortable : true ,
dataIndex : 'BALRMBINVCR' ,
header : 'RMB' + Zi . LAN . fwkpiao , //RMB付未开票
width : 70
} , {
sortable : true ,
dataIndex : 'BALUSDINVCR' ,
header : 'USD' + Zi . LAN . fwkpiao , //USD付未开票
width : 70
} , {
sortable : true ,
dataIndex : 'BALTTLDR' ,
header : Zi . LAN . BALTTLDR , //USD付未开票
width : 70
} , {
sortable : true ,
dataIndex : 'OPLBNAME' ,
header : Zi . LAN . yewutype , //业务类别
width : 80
} , {
sortable : true ,
dataIndex : 'HBLNO' ,
header : Zi . LAN . ftdnum , //分提单号
width : 80
} , {
sortable : true ,
dataIndex : 'CUSTOMERNAME' ,
header : Zi . LAN . Requester , //委托单位
width : 100
} , {
sortable : true ,
dataIndex : 'ETD' ,
header : Zi . LAN . SailingDate , //开船日期
renderer : Ext . util . Format . dateRenderer ( 'Y-m-d' ) ,
width : 100
} , {
sortable : true ,
dataIndex : 'SALE' ,
header : Zi . LAN . LanhuoPeople , //揽货人
width : 80
} , {
sortable : true ,
dataIndex : 'OPTYPE' ,
header : Zi . LAN . ChangeSingle , //更改单
width : 80
} , {
sortable : true ,
dataIndex : 'ACCDATE' ,
header : Zi . LAN . AccountingPeriod , //会计期间
width : 80
} , {
sortable : true ,
dataIndex : 'OP' ,
header : Zi . LAN . Operating , //操作
width : 80
} , {
sortable : true ,
dataIndex : 'CNTRTOTAL' ,
header : Zi . LAN . CNTRTOTAL , //操作
width : 80
} , {
sortable : true ,
dataIndex : 'RMBDRSTATUS' ,
header : Zi . LAN . RMBDRSTATUS , //操作
width : 80 ,
renderer : function ( value , meta ) {
if ( value == '已收回' ) {
meta . tdCls = 'feestatus_pass' ;
} else if ( value == '部分收回' ) {
meta . tdCls = 'feestatus_refer' ;
}
return value ;
}
} , {
sortable : true ,
dataIndex : 'USDDRSTATUS' ,
header : Zi . LAN . USDDRSTATUS , //操作
width : 80 ,
renderer : function ( value , meta ) {
if ( value == '已收回' ) {
meta . tdCls = 'feestatus_pass' ;
} else if ( value == '部分收回' ) {
meta . tdCls = 'feestatus_refer' ;
}
return value ;
}
} , {
sortable : true ,
dataIndex : 'INPUTBY' ,
header : Zi . LAN . lurmen , //录入人
width : 80
} , {
sortable : true ,
dataIndex : 'PORTLOAD' ,
header : Zi . LAN . qiyunport , //起运港
width : 120
} , {
sortable : true ,
dataIndex : 'PORTDISCHARGE' ,
header : Zi . LAN . mudport , //目的港
width : 120
} , {
sortable : true ,
dataIndex : 'VESSEL' ,
header : Zi . LAN . chuanname , //船名
width : 150
} , {
sortable : true ,
dataIndex : 'VOYNO' ,
header : Zi . LAN . vessel , //航次
width : 60
} , {
sortable : true ,
dataIndex : 'STLNAME' ,
header : Zi . LAN . STLNAME , //航次
width : 60
} ] ;
this . girdbilladdcolums = this . initgirdbilladdcolums ; //使用者id, 表名, 中间column数组, 跳过一开始的几列
this . AddGridCheckBoxModel = Ext . create ( 'Ext.selection.CheckboxModel' ) ;
this . gridAddList = new Ext . grid . GridPanel ( {
store : this . storeBodyAddList ,
enableHdMenu : false ,
region : 'center' ,
loadMask : { msg : Zi . LAN . LoadData } , //数据加载中,请稍等...
trackMouseOver : true ,
disableSelection : false ,
selModel : this . AddGridCheckBoxModel ,
viewConfig : {
enableTextSelection : true
} ,
tbar : [ {
text : Zi . LAN . addjsmx , //添加结算明细
tooltip : Zi . LAN . addjsmx ,
id : 'btnaddbill' ,
iconCls : "btnadddetail" ,
handler : function ( button , event ) {
this . onAddClick ( button , event ) ;
} ,
scope : this
} , '-' , {
text : Zi . LAN . Saveliststyle , //保存列表样式
id : "btntest" ,
menu : [
{ text : Zi . LAN . Save , //保存
handler : function ( button , event ) {
_this . girdbilladdcolums = DsTruck . SaveGridPanel ( USERID , _this . formname + 'billadd' , _this . gridAddList . columns , _this . girdbilladdcolums , 1 , true ) ;
}
} , { text : Zi . LAN . Initialization , //初始化
handler : function ( menu , event ) {
_this . girdbilladdcolums = DsTruck . SaveGridPanel ( USERID , _this . formname + 'billadd' , _this . gridAddList . columns , _this . initgirdbilladdcolums , 1 , true ) ;
}
} ] ,
scope : this
} ] ,
columns : this . girdbilladdcolums ,
// paging bar on the bottom
bbar : [ Ext . create ( 'Ext.PagingToolbar' , {
store : this . storeBodyAddList ,
displayInfo : true ,
displayMsg : Zi . LAN . FenYe , //当前显示 {0} - {1}条记录 /共 {2}条记录
emptyMsg : Zi . LAN . Nodata //没有数据
} ) , this . Pagenum ]
} ) ;
this . gridAddList . addListener ( 'itemdblclick' , function ( dataview , record , item , index , e , b ) {
this . SelectedRecord = record ;
var openSet = "height=700, width=1024, toolbar=no, menubar=no,scrollbars=1, resizable=1,location=no, status=no,Top= " + ( screen . height - 750 ) / 2 + ",Left= " + ( screen . width - 1100 ) / 2
var openType = "_blank" ;
var openUrl = "" ;
openUrl = "../../MvcShipping/MsOpBill/MsOpFeeView?handle=check&bsno=" + record . data . BSNO ;
window . open ( openUrl , openType , openSet ) ;
} , this ) ;
this . girdbilladdcolums = DsTruck . GetGridPanel ( USERID , this . formname + 'billadd' , this . girdbilladdcolums , 1 ) ; //使用者id, 表名, 中间column数组, 跳过一开始的几列
this . girdbilladdcolums . unshift ( new Ext . grid . RowNumberer ( ) ) ;
this . gridAddList . reconfigure ( this . storeBodyAddList , this . girdbilladdcolums ) ;
this . gridAddList . addListener ( 'sortchange' , function ( ct , column , direction , eOpts ) {
this . addsortfield = column . dataIndex ;
this . addsortdire = direction ;
} , this ) ;
_this = this ;
this . CurrGroup = new Ext . form . RadioGroup ( {
id : 'CurrGroup' ,
xtype : 'radiogroup' ,
fieldLabel : Zi . LAN . zdbibie , //折算币别
columns : 2 ,
items : [
{ boxLabel : 'RMB' , name : 'Curr' , inputValue : 'RMB' , checked : true } ,
{ boxLabel : 'USD' , name : 'Curr' , inputValue : 'USD' }
]
} ) ;
//#endregion
//#region 添加费用列表
this . storeAddFeeList = Ext . create ( 'Ext.data.Store' , {
pageSize : this . PageSize ,
model : 'Chfee_add_detail' ,
remoteSort : true ,
proxy : {
type : 'ajax' ,
url : '/Account/Chfee_payapplication/GetFeeDetailList' ,
reader : {
id : 'CH_ID' ,
root : 'data' ,
totalProperty : 'totalCount'
}
}
} ) ;
this . AddFeeGridCheckBoxModel = Ext . create ( 'Ext.selection.CheckboxModel' ) ;
this . cellEditingFee = Ext . create ( 'Ext.grid.plugin.CellEditing' , {
clicksToEdit : 1 ,
listeners : {
'edit' : function ( editor , e ) {
}
}
} ) ;
this . initgirdfeecolums = [ {
sortable : true ,
dataIndex : 'CH_ID' ,
header : 'CH_ID' ,
hidden : true ,
width : 100
} , {
sortable : true ,
dataIndex : 'BSNO' ,
header : 'BSNO' ,
hidden : true ,
width : 100
} , {
sortable : true ,
dataIndex : 'CustomerName' ,
header : Zi . LAN . kehname , //客户名称
width : 90
} , {
sortable : true ,
dataIndex : 'FeeType_Ref' ,
header : Zi . LAN . PayReceive , //收付
width : 40
} , {
sortable : true ,
dataIndex : 'FeeName' ,
header : Zi . LAN . CostName , //费用名称
width : 90
} , {
sortable : true ,
dataIndex : 'Amount' ,
header : Zi . LAN . AmountOfMoney , //金额
width : 70 ,
renderer : function ( value , cellmeta , record , rowIndex , columnIndex , store ) {
try {
var lsValue = usMoney ( value , 2 , '' , false ) ;
if ( lsValue != "NaN" ) {
value = lsValue ; if ( parseFloat ( lsValue ) < 0 ) {
return '<SPAN style="COLOR: red">' + lsValue + '</SPAN>' ;
}
}
else {
return value ;
}
}
catch ( e ) {
return value ;
}
return value ;
}
} , {
sortable : true ,
dataIndex : 'Currency' ,
header : Zi . LAN . Currency , //币别
width : 40
} , {
sortable : true ,
dataIndex : 'BalAmount' ,
header : Zi . LAN . wjmoney , //未结金额
width : 70
} , {
sortable : true ,
dataIndex : 'StlAmount' ,
header : Zi . LAN . bcjsmoney , //本次结算金额
editor : {
xtype : 'numberfield' ,
keyNavEnabled : false ,
allowDecimals : true ,
decimalPrecision : 2 ,
selectOnFocus : true ,
mouseWheelEnabled : false ,
enableKeyEvents : true ,
listeners : {
keydown : function ( textfield , e ) {
if ( e . getKey ( ) == 40 ) {
_this . onNextKeyClick ( 9 )
} else if ( e . getKey ( ) == 38 ) {
_this . onUpKeyClick ( 9 )
}
}
}
} ,
renderer : function ( value , cellmeta , record , rowIndex , columnIndex , store ) {
try {
var lsValue = usMoney ( value , 2 , '' , false ) ;
if ( lsValue != "NaN" ) {
value = lsValue ; if ( parseFloat ( lsValue ) < 0 ) {
return '<SPAN style="COLOR: red">' + lsValue + '</SPAN>' ;
}
}
else {
return value ;
}
}
catch ( e ) {
return value ;
}
return value ;
} ,
width : 70
} , {
sortable : true ,
dataIndex : 'ExChangerate' ,
header : Zi . LAN . OriginalExchangeRate , //原始汇率
width : 60
} , {
sortable : true ,
dataIndex : 'Invoice' ,
header : Zi . LAN . kpmoney , //开票金额
width : 60 ,
renderer : function ( value , cellmeta , record , rowIndex , columnIndex , store ) {
try {
var lsValue = usMoney ( value , 2 , '' , false ) ;
if ( lsValue != "NaN" ) {
value = lsValue ; if ( parseFloat ( lsValue ) < 0 ) {
return '<SPAN style="COLOR: red">' + lsValue + '</SPAN>' ;
}
}
else {
return value ;
}
}
catch ( e ) {
return value ;
}
return value ;
}
} , {
sortable : true ,
dataIndex : 'Remark' ,
header : Zi . LAN . Remarks , //备注
width : 180
} , {
sortable : true ,
dataIndex : 'SALECORP' ,
header : Zi . LAN . SALECORP , //备注
width : 180
} , {
sortable : true ,
dataIndex : 'INPUTBY' ,
header : Zi . LAN . INPUTBY , //备注
width : 180
} , {
sortable : true ,
dataIndex : 'AccTaxRate' ,
header : Zi . LAN . AccTaxRate ,
width : 60
} , {
sortable : true ,
dataIndex : 'INPUTMODE' ,
header : Zi . LAN . EntryMethod , //备注
width : 180
}
] ;
this . girdfeecolums = this . initgirdfeecolums ;
this . gridAddFeeList = new Ext . grid . GridPanel ( {
store : this . storeAddFeeList ,
enableHdMenu : false ,
region : 'center' ,
loadMask : { msg : Zi . LAN . LoadData } , //数据加载中,请稍等..
trackMouseOver : true ,
disableSelection : false ,
plugins : [ this . cellEditingFee ] ,
selModel : this . AddFeeGridCheckBoxModel ,
tbar : [ {
text : Zi . LAN . addfsymx , //添加申请费用明细
tooltip : Zi . LAN . addfsymx ,
iconCls : "btnadddetail" ,
id : "btnadddetail" ,
handler : function ( button , event ) {
this . onAddDetailClick ( button , event ) ;
} ,
scope : this
} , '-' , {
text : Zi . LAN . Saveliststyle , //保存列表样式
id : "btntestfee" ,
menu : [
{ text : Zi . LAN . Save , //保存
handler : function ( button , event ) {
_this . girdfeecolums = DsTruck . SaveGridPanel ( USERID , _this . formname + 'feeadd' , _this . gridAddFeeList . columns , _this . girdfeecolums , 1 , true ) ;
}
} , { text : Zi . LAN . Initialization , //初始化
handler : function ( menu , event ) {
_this . girdfeecolums = DsTruck . SaveGridPanel ( USERID , _this . formname + 'feeadd' , _this . gridAddFeeList . columns , _this . initgirdfeecolums , 1 , true ) ;
_this . gridAddFeeList . reconfigure ( _this . storeAddFeeList , _this . girdfeecolums ) ;
}
} ] ,
scope : this
} , { xtype : "label" , id : "zongshu" , text : "" ,
handler : function ( ) { ; }
} ] ,
columns : this . girdfeecolums ,
// paging bar on the bottom
bbar : Ext . create ( 'Ext.PagingToolbar' , {
store : this . storeAddFeeList ,
displayInfo : true ,
displayMsg : Zi . LAN . FenYe , //当前显示 {0} - {1}条记录 /共 {2}条记录
emptyMsg : Zi . LAN . Nodata //没有数据
} )
} ) ;
this . girdfeecolums = DsTruck . GetGridPanel ( USERID , this . formname + 'feeadd' , this . girdfeecolums , 1 ) ; //使用者id, 表名, 中间column数组, 跳过一开始的几列
this . gridAddFeeList . reconfigure ( this . storeAddFeeList , this . girdfeecolums ) ;
this . gridAddFeeList . on ( 'edit' , function ( editor , e , eOpts ) {
this . gridAddFeeListAfterEdit ( editor , e , eOpts ) ;
} , this ) ;
//this.gridAddFeeList.on('cellclick', function (button, event) {
// this.onSelectFee(button, event);
//}, this);
this . storeSelectSum = Ext . create ( 'Ext.data.Store' , {
model : 'Chfee_do_selectsum'
} ) ;
this . gridSelectSum = new Ext . grid . GridPanel ( {
store : this . storeSelectSum ,
enableHdMenu : false ,
// anchor: '100% 50%',
region : 'south' ,
height : 80 ,
loadMask : { msg : Zi . LAN . LoadData } , //数据加载中,请稍等...
trackMouseOver : true ,
disableSelection : false ,
tbar : [ {
xtype : 'label' ,
width : 220 ,
id : 'SelectGrid' ,
height : 22 ,
text : Zi . LAN . countfyong //所选费用合计
} ] ,
columns : [ {
sortable : true ,
dataIndex : 'RMBDRAMOUNT' ,
header : 'RMB' + Zi . LAN . weishou , //RMB未收
width : 80
} , {
sortable : true ,
dataIndex : 'RMBCRAMOUNT' ,
header : 'RMB' + Zi . LAN . weifu , //RMB未付
width : 80
} , {
sortable : true ,
dataIndex : 'USDDRAMOUNT' ,
header : 'USD' + Zi . LAN . weishou , //USD未收
width : 80
} , {
sortable : true ,
dataIndex : 'USDCRAMOUNT' ,
header : 'USD' + Zi . LAN . weifu , //USD未付
width : 80
} , {
sortable : true ,
dataIndex : 'OTDRAMOUNT' ,
header : Zi . LAN . otherws , //其他未收
width : 80
} , {
sortable : true ,
dataIndex : 'OTCRAMOUNT' ,
header : Zi . LAN . Otherwf , //其他未付
width : 80
}
]
} ) ;
//#endregion
_this = this ;
this . storeCustCodefee = Ext . create ( 'DsExt.ux.RefTableStore' , {
model : 'DsShipping.ux.CustomRefModel' ,
proxy : { url : '/CommMng/BasicDataRef/GetCustomRefListRmAll' }
} ) ;
// this.storeCustCodefee.load({ params: { condition: ""} });
this . storeCustCodefee . loadData ( mainWin . GetPubStore ( "PubStore_CustomerAll" ) . data . items ) ;
this . comboxAddCustCode = Ext . create ( 'DsExt.ux.RefTableCombox' , {
fieldLabel : Zi . LAN . fyduixiang , //费用对象
store : this . storeCustCodefee ,
//queryMode: 'remote',
forceSelection : true ,
matchFieldWidth : false ,
//minChars: 1,
queryParam : 'CODENAME' ,
name : 'CUSTNAME' ,
valueField : 'CustName' ,
displayField : 'CodeAndName' ,
enableKeyEvents : true ,
listeners : {
keyup : function ( field , e ) {
if ( e . getKey ( ) == e . ENTER ) {
_this . onRefreshClick ( ) ;
}
} , beforequery : function ( e ) {
return FilterCombox ( e , 1 ) ;
} ,
specialkey : function ( combo , e ) {
//将回车13转义成tab9
GetComboxFirstValueOnTableClick _RefTable ( combo , e , 'CustName' ) ;
if ( e . getKey ( ) == e . ENTER ) {
_this . onRefreshClick ( ) ;
}
} ,
}
} ) ;
this . StoreOpLb = Ext . create ( 'DsExt.ux.RefEnumStore' , { } ) ;
this . StoreOpLb . load ( { params : { enumTypeId : 96005 } } ) ;
this . comboxOpLb = Ext . create ( 'DsExt.ux.RefTableCombox' , {
fieldLabel : Zi . LAN . yewutype , //业务类别
store : this . StoreOpLb ,
valueField : 'EnumValueName' ,
displayField : 'EnumValueName' ,
forceSelection : true ,
name : 'OPLBNAME' ,
enableKeyEvents : true ,
listeners : {
keyup : function ( field , e ) {
if ( e . getKey ( ) == e . ENTER ) {
_this . onRefreshClick ( ) ;
}
}
}
} ) ;
this . storeAddDCType = Ext . create ( 'Ext.data.Store' , {
fields : [ 'DC' , 'NAME' ]
} ) ;
this . storeAddDCType . add ( { "DC" : "" , "NAME" : "全部" } ) ; //全部
this . storeAddDCType . add ( { "DC" : "1" , "NAME" : "应收" } ) ; //应收
this . storeAddDCType . add ( { "DC" : "2" , "NAME" : "应付" } ) ; //应付
this . comboxaddDCType = Ext . create ( 'DsExt.ux.RefTableCombox' , {
fieldLabel : Zi . LAN . shoufu , //收/付
store : this . storeAddDCType ,
valueField : 'DC' ,
labelWidth : 50 ,
flex : 0.5 ,
displayField : 'NAME' ,
forceSelection : true ,
name : 'DC' ,
value : '2' ,
enableKeyEvents : true ,
listeners : {
keyup : function ( field , e ) {
if ( e . getKey ( ) == e . ENTER ) {
_this . onRefreshClick ( ) ;
}
}
}
} ) ;
this . comboxCurr2 = Ext . create ( 'DsExt.ux.RefTableCombox' , {
fieldLabel : Zi . LAN . Currency , //币别
store : this . StoreCurr ,
forceSelection : true ,
labelWidth : 50 ,
flex : 0.5 ,
name : 'Currency' ,
valueField : 'CURR' ,
displayField : 'CURR' ,
enableKeyEvents : true ,
listeners : {
keyup : function ( field , e ) {
if ( e . getKey ( ) == e . ENTER ) {
_this . onRefreshClick ( ) ;
}
}
}
} ) ;
this . storeFeeNameRef = Ext . create ( 'DsExt.ux.RefTableStore' , {
model : 'DsShipping.ux.FeeTypeRefModel' ,
proxy : { url : '/MvcShipping/MsChFee/GetFeeTypeRefList' }
} ) ;
this . comboxFeeNameRef = Ext . create ( 'DsExt.ux.RefTableCombox' , {
fieldLabel : Zi . LAN . CostName , //费用名称
store : this . storeFeeNameRef ,
forceSelection : true ,
name : 'FeeName' ,
valueField : 'Name' ,
displayField : 'CodeAndName' ,
enableKeyEvents : true ,
listeners : {
keyup : function ( field , e ) {
if ( e . getKey ( ) == e . ENTER ) {
_this . onRefreshClick ( ) ;
}
}
}
} ) ;
this . storeFeeNameRef . load ( { params : { condition : "" } } ) ;
this . storeCurrExrate = Ext . create ( 'Ext.data.Store' , {
fields : [ 'CURR' , 'EXRATE' , 'DFEXRATE' ]
} ) ;
this . storeINVSTATUS = Ext . create ( 'Ext.data.Store' , {
fields : [ 'FSTATUS' , 'NAME' ]
} ) ;
this . storeINVSTATUS . add ( { "FSTATUS" : "" , "NAME" : "全部" } ) ; //全部
this . storeINVSTATUS . add ( { "FSTATUS" : "0" , "NAME" : "仅开票" } ) ; //仅开票
this . storeINVSTATUS . add ( { "FSTATUS" : "1" , "NAME" : "仅不开票" } ) ; //仅不开票
this . comboxINVSTATUS = Ext . create ( 'DsExt.ux.RefTableCombox' , {
fieldLabel : Zi . LAN . iskaipiao , //是否开票
store : this . storeINVSTATUS ,
valueField : 'FSTATUS' ,
displayField : 'NAME' ,
flex : 0.5 ,
forceSelection : true ,
name : 'ISINVOICE' ,
value : '' ,
enableKeyEvents : true ,
listeners : {
keyup : function ( field , e ) {
if ( e . getKey ( ) == e . ENTER ) {
_this . onRefreshClick ( ) ;
}
}
}
} ) ;
this . storeISADVANCEDPAY = Ext . create ( 'Ext.data.Store' , {
fields : [ 'FSTATUS' , 'NAME' ]
} ) ;
this . storeISADVANCEDPAY . add ( { "FSTATUS" : "" , "NAME" : "全部" } ) ; //全部
this . storeISADVANCEDPAY . add ( { "FSTATUS" : "0" , "NAME" : "仅未代付" } ) ; //仅未垫付
this . storeISADVANCEDPAY . add ( { "FSTATUS" : "1" , "NAME" : "仅代付" } ) ; //仅垫付
this . comboxISADVANCEDPAY = Ext . create ( 'DsExt.ux.RefTableCombox' , {
fieldLabel : Zi . LAN . isdianfu , //是否开垫付
store : this . storeISADVANCEDPAY ,
valueField : 'FSTATUS' ,
displayField : 'NAME' ,
flex : 0.5 ,
forceSelection : true ,
name : 'ISADVANCEDPAY' ,
value : '' ,
enableKeyEvents : true ,
listeners : {
keyup : function ( field , e ) {
if ( e . getKey ( ) == e . ENTER ) {
_this . onRefreshClick ( ) ;
}
}
}
} ) ;
this . storeSALECORP = Ext . create ( 'DsExt.ux.RefTableStore' , {
model : 'MsCompanySale' ,
proxy : { url : '/MvcShipping/MsCompanys/GetNoPicDataList' }
} ) ;
this . storeSALECORP . load ( ) ;
this . comboxSALECORP = Ext . create ( 'DsExt.ux.RefTableCombox' , {
store : this . storeSALECORP ,
fieldLabel : Zi . LAN . SALECORP , //是否开垫付
name : 'SALECORP' ,
valueField : 'NAME' ,
displayField : 'CodeAndName'
} ) ;
this . formSearch = Ext . widget ( 'form' , {
frame : true ,
region : 'north' ,
bodyPadding : 5 ,
fieldDefaults : {
margins : '2 2 2 2' ,
labelAlign : 'right' ,
flex : 1 ,
labelWidth : 70 ,
msgTarget : 'qtip'
} ,
items : [
{ //fieldset 1
xtype : 'container' ,
defaultType : 'textfield' ,
layout : 'anchor' ,
defaults : {
anchor : '100%'
} ,
items : [ {
xtype : 'container' ,
layout : 'hbox' ,
defaultType : 'textfield' ,
items : [ this . comboxAddCustCode , {
fieldLabel : Zi . LAN . selectnum , //编号检索
name : 'CustomNo' ,
enableKeyEvents : true ,
listeners : {
specialkey : function ( field , e ) {
if ( e . getKey ( ) == e . ENTER ) {
_this . onRefreshClick ( ) ;
}
}
}
} , {
fieldLabel : Zi . LAN . duiznum , //対帐编号
name : 'DuiNo' ,
enableKeyEvents : true ,
listeners : {
specialkey : function ( field , e ) {
if ( e . getKey ( ) == e . ENTER ) {
_this . onRefreshClick ( ) ;
}
}
}
} , {
fieldLabel : Zi . LAN . fphexiaohao , //发票核销号
name : 'InvNo' ,
enableKeyEvents : true ,
listeners : {
specialkey : function ( field , e ) {
if ( e . getKey ( ) == e . ENTER ) {
_this . onRefreshClick ( ) ;
}
}
}
} , {
fieldLabel : Zi . LAN . cywdate , //从业务日期
format : 'Y-m-d' ,
xtype : 'datefield' ,
name : 'ExpDateBgn' ,
enableKeyEvents : true ,
listeners : {
specialkey : function ( field , e ) {
if ( e . getKey ( ) == e . ENTER ) {
_this . onRefreshClick ( ) ;
}
}
}
} , {
fieldLabel : Zi . LAN . dywdate , //到业务日期
format : 'Y-m-d' ,
xtype : 'datefield' ,
name : 'ExpDateEnd' ,
enableKeyEvents : true ,
listeners : {
specialkey : function ( field , e ) {
if ( e . getKey ( ) == e . ENTER ) {
_this . onRefreshClick ( ) ;
}
}
}
} , {
xtype : 'button' ,
width : 30 ,
// text: "重置条件",
iconCls : "btnreset" ,
handler : function ( button , event ) {
this . onClearSql ( button , event ) ;
} ,
scope : this
} , {
xtype : 'button' ,
width : 30 ,
// text: "高级查询",
iconCls : "btnmore" ,
handler : function ( button , event ) {
if ( this . bsnosql == undefined ) {
var sql = this . getCondition ( ) ;
} else {
var sql = this . sqlcontext ;
}
var winAccess = new Shipping . DsQuery ( {
} ) ;
winAccess . StoreList = this . storeBodyAddList ;
winAccess . formname = this . formname ;
winAccess . condition = sql ;
winAccess . show ( ) ;
return ;
} ,
scope : this
}
]
} , {
xtype : 'container' ,
layout : 'hbox' ,
defaultType : 'textfield' ,
items : [ this . comboxaddDCType , this . comboxCurr2 , this . comboxFeeNameRef , {
fieldLabel : Zi . LAN . AccountingPeriod , //会计期间
xtype : 'monthfield' ,
name : 'ACCDATEFR' ,
enableKeyEvents : true ,
listeners : {
specialkey : function ( field , e ) {
if ( e . getKey ( ) == e . ENTER ) {
_this . onRefreshClick ( ) ;
}
}
}
} , {
fieldLabel : Zi . LAN . AccountingPeriod , //会计期间
xtype : 'monthfield' ,
name : 'ACCDATETO' ,
enableKeyEvents : true ,
listeners : {
specialkey : function ( field , e ) {
if ( e . getKey ( ) == e . ENTER ) {
_this . onRefreshClick ( ) ;
}
}
}
} , this . comboxINVSTATUS , this . comboxISADVANCEDPAY , this . comboxSALECORP , {
xtype : 'button' ,
width : 60 ,
text : Zi . LAN . onselect , //查询
iconCls : "btnrefresh" ,
handler : function ( button , event ) {
this . onRefreshClick ( button , event ) ;
} ,
scope : this
}
]
}
] //end items(fieldset 1)
} //end fieldset 1
] //end root items
} ) ;
//#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 : 240
} , {
sortable : true , hidden : false ,
dataIndex : 'UpdateTime' , readOnly : true ,
header : Zi . LAN . FileDate , //上传日期
width : 140
} , {
sortable : true , hidden : false ,
dataIndex : 'Operator' , readOnly : true ,
header : Zi . LAN . FilePerson , //上传者
width : 120
} , {
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
} ,
{
sortable : true ,
dataIndex : 'File_DocType' ,
header : '文件类型' ,
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');
var filePath = rec . get ( 'File_Path' ) ;
//var imgView = new Shipping.FileView({ filePath: filePath });
//imgView.show();
DsOpenEditWin ( filePath , "" , "650" , "1250" ) ;
}
} ]
}
] ;
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 : Zi . LAN . filetp , //上传图片
tooltip : Zi . LAN . filetp ,
iconCls : "btnadddetail" ,
handler : function ( button , event ) {
this . onAddFileClick ( button , event ) ;
} ,
scope : this
} , '-' , {
text : Zi . LAN . delete1 , //删除
tooltip : Zi . LAN . delete1 , //删除图片
iconCls : "btndeletedetail" ,
handler : function ( button , event ) {
this . onDelFileClick ( button , event ) ;
} ,
scope : this
} ] ,
columns : this . FeeFileColumns
} ) ;
//#endregion附件上传
this . panelService = new Ext . Panel ( {
layout : "border" ,
region : 'center' ,
margin : '2 2' ,
items : [ this . gridList ]
} ) ;
this . panelSum = new Ext . Panel ( {
layout : "border" ,
region : 'east' ,
width : 260 ,
split : true ,
margin : '2 2' ,
items : [ this . gridSum ]
} ) ;
this . paneldetail = new Ext . Panel ( {
// title: '申请明细',
layout : "border" ,
height : 210 ,
region : "north" ,
split : true ,
items : [
this . panelService , this . panelSum
]
} ) ;
//#region 增加附件上传tab
this . page _1 = new Ext . Panel ( {
id : "page_1" ,
title : Zi . LAN . sqmxi , //申请明细
autoScroll : true ,
layout : "border" ,
region : 'center' ,
//closable:true,
items : [ this . paneldetail ]
} ) ;
this . page _2 = new Ext . Panel ( {
id : "page_2" ,
title : Zi . LAN . filefujina , //附件上传
autoScroll : true ,
layout : "border" ,
region : 'center' ,
//closable:true,
items : [ this . fileGrid ]
} ) ;
this . MainTab = new Ext . tab . Panel ( {
layout : "border" ,
height : 250 ,
region : "north" , split : true ,
items : [
this . page _1
, this . page _2
]
} ) ;
//#endregion
this . panelAddService = new Ext . Panel ( {
layout : "border" ,
region : 'center' ,
margin : '2 2' ,
items : [ this . gridAddList ]
} ) ;
this . panelAddfee = new Ext . Panel ( {
layout : "border" ,
region : 'east' ,
width : 550 ,
split : true ,
margin : '2 2' ,
items : [ this . gridAddFeeList , this . gridSelectSum ]
} ) ;
this . paneladddetail = new Ext . Panel ( {
layout : "border" ,
region : 'center' ,
height : 300 ,
items : [ this . panelAddService , this . panelAddfee
]
} ) ;
this . paneladd = new Ext . Panel ( {
title : Zi . LAN . addjsmingxi , //添加支付结算明细
layout : "border" ,
// region: 'south',
region : "center" ,
// height: 420,
items : [
this . formSearch , this . paneladddetail
]
} ) ;
//#endregion 明细表
//#region 布局
//控件布局
this . panelTop = new Ext . Panel ( {
layout : "border" ,
region : "north" ,
height : 210 ,
items : [ this . panelBtn , this . formEdit ]
} ) ;
Ext . apply ( this , {
items : [ this . panelTop , this . MainTab , this . paneladd ]
} ) ;
//#endregion
//绑定查询窗体
this . ParentWin = window . parent . opener ;
//初始化数据
if ( this . bsnosql == undefined ) {
this . InitData ( ) ;
} else {
this . opStatus = 'add'
this . StoreList = Ext . create ( 'Ext.data.Store' , {
pageSize : 50 ,
model : 'MsChPayapplication' ,
remoteSort : true ,
proxy : {
type : 'ajax' ,
url : '/Account/Chfee_payapplication/GetDataList' ,
reader : {
id : 'BILLNO' ,
root : 'data' ,
totalProperty : 'totalCount'
}
}
} ) ;
// this.StoreList.load({ params: { condition:" 1=2 "} });
var bsnos = "" ;
var currsql = "" ;
if ( this . ParentWin && this . bsnosql == 'oplist' ) {
var ret = this . ParentWin . OprationSwap ( ) ;
bsnos = ret [ 3 ] ;
currsql = ret [ 6 ] ;
} else if ( this . ParentWin && this . bsnosql == 'feelist' ) {
this . ParentWin = this . ParentWin . _thisfee ;
var ret = this . ParentWin . OprationSwap ( ) ;
bsnos = ret [ 4 ] ;
currsql = ret [ 5 ] ;
} else if ( this . ParentWin && this . bsnosql == 'amendfeelist' ) {
this . ParentWin = this . ParentWin . _thisAmendfee ;
var ret = this . ParentWin . OprationSwap ( ) ;
bsnos = ret [ 4 ] ;
currsql = ret [ 5 ] ;
} else if ( this . ParentWin && this . bsnosql == 'duilist' ) {
var ret = this . ParentWin . panelEdit . OprationSwap ( ) ;
bsnos = ret [ 0 ] ;
currsql = ret [ 1 ] ;
}
this . comboxCustCode . allowBlank = true ;
// this.comboxCurr.allowBlank = true;
var condition = '' ;
var sql = this . getCondition ( ) ;
this . sqlcontext = sql + ' and ' + bsnos ;
if ( currsql != '' )
this . FeeSqlStr = this . FeeSqlStr + ' and ' + currsql ;
this . PageSize = this . Pagenum . getValue ( ) ;
this . LoadData ( this . opStatus , condition ) ;
this . LoadMustBe ( ) ;
}
//绑定事件
var billno = '*' ;
if ( this . opStatus == 'edit' ) {
billno = this . editRecord . get ( 'BILLNO' ) ;
} ;
this . storeBodyList . on ( 'beforeload' , function ( store ) {
var billno = _this . formEdit . getForm ( ) . findField ( 'BILLNO' ) . getValue ( ) ;
var sql = " BILLNO='" + billno + "'" ;
Ext . apply ( store . proxy . extraParams , { condition : sql } ) ;
} , this ) ;
this . storeBodyList . on ( 'load' , function ( store , records ) {
if ( store . getCount ( ) > 0 ) {
//this.gridList.getSelectionModel().select(0);
}
} , this ) ;
this . storeBodyAddList . on ( 'beforeload' , function ( store ) {
// var sql = this.getCondition();
Ext . apply ( store . proxy . extraParams , { condition : this . sqlcontext } ) ;
} , this ) ;
this . storeAddFeeList . on ( 'beforeload' , function ( store ) {
var sql = '' ;
if ( this . selectfeesql == '' )
sql = '1=2 ' ;
else
sql = this . selectfeesql ;
Ext . apply ( store . proxy . extraParams , { condition : sql } ) ;
} , this ) ;
this . storeBodyAddList . on ( 'load' , function ( store , records ) {
if ( store . getCount ( ) > 0 ) {
// this.gridAddList.getSelectionModel().select(0);
var btnEAddbill = Ext . getCmp ( 'btnaddbill' ) ;
if ( this . canedit )
btnEAddbill . enable ( ) ;
} else {
this . storeAddFeeList . removeAll ( ) ;
}
} , this ) ;
this . storeAddFeeList . on ( 'load' , function ( store , records ) {
if ( store . getCount ( ) > 0 ) {
var btnEAddDetail = Ext . getCmp ( 'btnadddetail' ) ;
if ( this . canedit )
btnEAddDetail . enable ( ) ;
} else {
}
} , this ) ;
var isloadfee = true ;
this . gridAddList . getSelectionModel ( ) . on ( 'select' , function ( model , record , index ) {
if ( ! isloadfee ) return ;
var bsno = record . data . BSNO ;
var feeobjname = record . data . FEEOBJNAME ;
var sql = "" ;
sql = " BSNO='" + bsno + "' AND CUSTOMERNAME='" + feeobjname + "'" ;
sql = sql + getAndConSql ( sql , this . FeeSqlStr , this . FeeSqlStr ) ;
isloadfee = false ;
this . selectfeesql = sql ;
this . storeAddFeeList . load ( { params : { condition : sql } ,
callback : function ( r , options , success ) {
if ( success ) {
isloadfee = true ;
}
}
} ) ;
// this.onSelectFee(button, event);
} , this ) ;
_this = this ;
this . gridAddList . on ( {
selectionchange : function ( sm , selections ) {
var SelectGridtext = Ext . getCmp ( 'SelectGrid' ) ;
_this . storeSelectSum . removeAll ( ) ;
SelectGridtext . setText ( Zi . LAN . countfyong ) ; //所选费用合计
if ( selections . length == 0 ) {
return ;
}
_this . storeSelectSum . add ( { "RMBDRAMOUNT" : 0 , "RMBCRAMOUNT" : 0 , "USDDRAMOUNT" : 0 , "USDCRAMOUNT" : 0 , "OTDRAMOUNT" : 0 , "OTCRAMOUNT" : 0 } ) ;
var R = selections . length ;
for ( var i = 0 ; i < selections . length ; i ++ ) {
var rec = selections [ i ] ;
var memberyf = _this . storeSelectSum . getAt ( 0 ) ;
var amount = memberyf . data . RMBDRAMOUNT ;
var cramount = memberyf . data . RMBCRAMOUNT ;
amount = ( parseFloat ( amount ) . add ( parseFloat ( rec . data . RMBDrBalAmount ) ) ) . toFixed ( 2 ) ;
cramount = ( parseFloat ( cramount ) . add ( parseFloat ( rec . data . RMBCrBalAmount ) ) ) . toFixed ( 2 ) ;
var usdamount = memberyf . data . USDDRAMOUNT ;
var usdcramount = memberyf . data . USDCRAMOUNT ;
usdamount = ( parseFloat ( usdamount ) . add ( parseFloat ( rec . data . USDDrBalAmount ) ) ) . toFixed ( 2 ) ;
usdcramount = ( parseFloat ( usdcramount ) . add ( parseFloat ( rec . data . USDCrBalAmount ) ) ) . toFixed ( 2 ) ;
var otamount = memberyf . data . OTDRAMOUNT ;
var otcramount = memberyf . data . OTCRAMOUNT ;
otamount = ( parseFloat ( otamount ) . add ( parseFloat ( rec . data . OTDrBalAmount ) ) ) . toFixed ( 2 ) ;
otcramount = ( parseFloat ( otcramount ) . add ( parseFloat ( rec . data . OTCrBalAmount ) ) ) . toFixed ( 2 ) ;
memberyf . set ( "RMBDRAMOUNT" , amount ) ;
memberyf . set ( "RMBCRAMOUNT" , cramount ) ;
memberyf . set ( "USDDRAMOUNT" , usdamount ) ;
memberyf . set ( "USDCRAMOUNT" , usdcramount ) ;
memberyf . set ( "OTDRAMOUNT" , otamount ) ;
memberyf . set ( "OTCRAMOUNT" , otcramount ) ;
memberyf . commit ( ) ;
}
SelectGridtext . setText ( Zi . LAN . countfyong + Zi . LAN . selecto + R + Zi . LAN . pyewu ) ; //所选费用合计(选中' + R + '票业务)'
}
} ) ;
this . gridAddFeeList . on ( {
selectionchange : function ( sm , selections ) {
_this . onSelectFee ( ) ;
}
} ) ;
} , //end initUIComponents
InitData : function ( ) {
this . opStatus = 'add' ;
var condition = '' ;
if ( this . ParentWin ) {
if ( this . ParentWin . panelEdit != undefined )
this . ParentWin = this . ParentWin . panelEdit ;
var ret = this . ParentWin . OprationSwap ( ) ;
this . opStatus = ret [ 0 ] ;
this . StoreList = ret [ 1 ] ;
this . editRecord = ret [ 2 ] ;
}
if ( this . opStatus == 'edit' ) {
document . title = "付费申请-" + this . editRecord . get ( 'BILLNO' ) . toString ( ) . trim ( ) ;
}
else {
document . title = "付费申请-新增" ;
}
if ( this . opStatus == 'edit' )
condition = " BILLNO='" + this . editRecord . get ( 'BILLNO' ) + "'" ;
this . LoadData ( this . opStatus , condition ) ;
this . LoadMustBe ( ) ;
} , //end InitData
LoadData : function ( opstatus , condition ) {
this . serialNo = 0 ;
this . workSerialNo = 0 ;
this . bodyDel = [ ] ;
this . opStatus = opstatus ;
_this = this ;
Ext . Ajax . request ( {
waitMsg : Zi . LAN . onselect , //正在查询主表数据...'
url : '/Account/Chfee_payapplication/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 : Zi . LAN . Prompt , //提示
msg : result . Message ,
icon : Ext . MessageBox . ERROR ,
buttons : Ext . Msg . OK
} ) ;
return ;
}
var data = result . data ;
_this . formEdit . getForm ( ) . findField ( 'BILLSTATUS' ) . setDisabled ( false ) ;
_this . formEdit . getForm ( ) . reset ( ) ;
_this . formEdit . getForm ( ) . setValues ( data ) ;
_this . formEdit . getForm ( ) . findField ( 'BILLSTATUS' ) . setDisabled ( true ) ;
if ( data . IsReplacePayment == "True" ) {
_this . formEdit . getForm ( ) . findField ( 'IsReplacePayment' ) . setValue ( true ) ;
}
BillNo = data . BILLNO ;
BillState = data . BILLSTATUSREF ;
this . storeChfeeFile . load ( {
params : { start : 0 , limit : 9999 , BillNo : BillNo }
} ) ;
if ( this . bsCust != undefined ) {
_this . formEdit . getForm ( ) . findField ( 'CUSTOMERNAME' ) . setValue ( this . bsCust )
this . LoadCustACCOUNT ( this . bsCust ) ;
_this . formSearch . getForm ( ) . findField ( 'CUSTNAME' ) . setValue ( this . bsCust ) ;
} else {
if ( data . CUSTOMERNAME != "" ) {
/ *
this . storeCustACCOUNT . load ( {
async : false ,
params : { condition : " LINKID=(select GID from info_client where shortname='" + data . CUSTOMERNAME + "') " }
} ) ; * /
this . LoadCustACCOUNT ( data . CUSTOMERNAME , true , data ) ;
}
_this . formSearch . getForm ( ) . findField ( 'CUSTNAME' ) . setValue ( data . CUSTOMERNAME ) ;
}
if ( this . bsnosql != undefined ) {
this . storeBodyAddList . pageSize = this . PageSize ;
this . storeBodyAddList . load ( { params : { start : 0 , limit : this . PageSize , sort : '' , condition : this . sqlcontext } ,
callback : function ( r , options , success ) {
if ( success ) {
if ( r . length != 0 ) {
_this . gridAddList . getSelectionModel ( ) . selectAll ( ) ;
_this . addBill ( ) ;
} else {
//Ext.MessageBox.alert('提示', '无添加申请费用明细!');
}
}
}
} ) ;
}
_this . GetEditStatus ( ) ;
if ( data . WxPush == 0 ) {
Ext . getCmp ( "wxpush" ) . setValue ( false ) ;
} else {
Ext . getCmp ( "wxpush" ) . setValue ( true ) ;
}
} else {
Ext . MessageBox . alert ( Zi . LAN . qqerror , response . responseText ) ; //请求出现错误,请重试
}
} ,
scope : this
} ) ;
var billno = '*' ;
if ( this . opStatus == 'edit' ) {
billno = this . editRecord . get ( 'BILLNO' ) ;
} ;
this . storeBodyList . load ( { params : { start : 0 , limit : this . BodyPageSize , condition : " BILLNO='" + billno + "'" } ,
callback : function ( r , options , success ) {
if ( success ) {
if ( this . storeBodyList . getCount ( ) > 0 ) {
// this.comboxCurr.setReadOnly(true);
this . comboxCustCode . setReadOnly ( true ) ;
}
else {
// this.comboxCurr.setReadOnly(false);
this . comboxCustCode . setReadOnly ( false ) ;
}
}
} ,
scope : this
} ) ;
this . storeBodySum . load ( { params : { condition : " BILLNO='" + billno + "'" } } ) ;
// this.storeFeeList.load({ params: { condition: " DUINO='" + billno + "'"} });
} , // end LoadDate
Save : function ( type , submit ) {
var basicForm = this . formEdit . getForm ( ) ;
if ( ! basicForm . isValid ( ) ) {
return ;
}
this . formEdit . getForm ( ) . findField ( 'BILLSTATUS' ) . setDisabled ( false ) ;
this . formEdit . getForm ( ) . findField ( 'APPLICANT' ) . setDisabled ( false ) ;
this . formEdit . getForm ( ) . findField ( 'COMPANYID' ) . setDisabled ( false ) ;
var data = basicForm . getValues ( ) ;
this . formEdit . getForm ( ) . findField ( 'BILLSTATUS' ) . setDisabled ( true ) ;
this . formEdit . getForm ( ) . findField ( 'APPLICANT' ) . setDisabled ( true ) ;
this . formEdit . getForm ( ) . findField ( 'COMPANYID' ) . setDisabled ( true ) ;
var wxpush = Ext . getCmp ( "wxpush" ) . getValue ( ) ;
var pushvalue = 0 ;
if ( wxpush ) {
pushvalue = 1 ;
} else {
pushvalue = 0 ;
}
data . wxpush = pushvalue ;
Ext . Msg . wait ( Zi . LAN . nowsave ) ; //正在保存数据, 请稍侯.
Ext . Ajax . request ( {
waitMsg : Zi . LAN . nowsave , //正在保存数据..
url : '/Account/Chfee_payapplication/Save' ,
scope : this ,
params : {
opstatus : this . opStatus ,
data : Ext . JSON . encode ( data )
} ,
callback : function ( options , success , response ) {
if ( success ) {
Ext . MessageBox . hide ( ) ;
var jsonresult = Ext . JSON . decode ( response . responseText ) ;
if ( jsonresult . Success ) {
var returnData = jsonresult . Data ;
this . formEdit . getForm ( ) . setValues ( returnData ) ;
if ( returnData . IsReplacePayment == "True" ) {
this . formEdit . getForm ( ) . findField ( 'IsReplacePayment' ) . setValue ( true ) ;
}
if ( this . opStatus == 'add' ) {
var arrNewRecords = this . StoreList . insert ( 0 , returnData ) ;
this . editRecord = this . StoreList . getAt ( 0 ) ;
}
else if ( this . opStatus == 'edit' ) {
var editp = Ext . create ( 'MsChPayapplication' , returnData ) ;
this . editRecord . fields . each ( function ( field ) {
if ( field . persist ) {
name = field . name ;
if ( name != 'id' )
this . editRecord . set ( name , editp . get ( name ) ) ;
}
} , this ) ;
this . editRecord . commit ( ) ;
}
if ( type == '0' ) {
this . opStatus = 'edit' ;
} else if ( type == '1' ) {
window . close ( ) ;
} else {
this . LoadData ( 'add' , '' ) ;
}
//提交审核
if ( submit == '1' ) {
this . onSubmitAuditClick ( ) ;
}
} else { //错误
Ext . Msg . show ( { title : Zi . LAN . Error , msg : jsonresult . Message , icon : Ext . Msg . ERROR , buttons : Ext . Msg . OK } ) ;
}
} else { //请重试
Ext . Msg . show ( { title : Zi . LAN . qagin ,
msg : Zi . LAN . FuWuQiError , //服务器响应出错
icon : Ext . Msg . ERROR , buttons : Ext . Msg . OK
} ) ;
}
}
} ) ;
} , //end save
onAddDetailClick : function ( button , event ) {
this . addstore = true ;
this . addDetail ( ) ;
} , //end onAddDetailClick
onAddBillClick : function ( button , event ) {
this . addstore = true ;
this . addBill ( ) ;
} , //end onAddDetailClick
onDelDetailClick : function ( button , event , type ) {
this . deleteDetail ( ) ;
} , //onDelDetailClick
onAddClick : function ( button , event ) {
this . addstore = true ;
this . addBill ( ) ;
} , //end onAddDetailClick
onDeleteClick : function ( button , event ) {
this . deleteBill ( ) ;
} , //end onAddDetailClick
gridAddFeeListAfterEdit : function ( editor , e , eOpts ) {
//需要自己实现里面的事件
if ( e . value == e . originalValue ) return ;
if ( e . field == 'StlAmount' ) {
var BalAmount = e . record . data [ 'BalAmount' ] ;
var StlAmount = e . record . data [ 'StlAmount' ] ;
if ( BalAmount >= 0 ) {
if ( StlAmount > BalAmount ) {
e . record . set ( 'StlAmount' , BalAmount ) ; //提示', msg: '申请金额不能大于未申金额!
Ext . Msg . show ( { title : Zi . LAN . Prompt , msg : Zi . LAN . sqmoneybuneng , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
}
if ( StlAmount < 0 ) {
e . record . set ( 'StlAmount' , BalAmount ) ;
Ext . Msg . show ( { title : Zi . LAN . Prompt , msg : '申请金额不能小于0' , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
}
} else {
if ( StlAmount < BalAmount ) {
e . record . set ( 'StlAmount' , BalAmount ) ; //提示', msg: '申请金额不能大于未申金额!'
Ext . Msg . show ( { title : Zi . LAN . Prompt , msg : Zi . LAN . sqmoneybuneng , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
}
if ( StlAmount > 0 ) {
e . record . set ( 'StlAmount' , BalAmount ) ;
Ext . Msg . show ( { title : Zi . LAN . Prompt , msg : '申请金额不能大于0' , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
}
}
}
} ,
onNextKeyClick : function ( col ) {
var rows = this . gridAddFeeList . getSelectionModel ( ) . getSelection ( ) ;
var row = rows [ rows . length - 1 ] ;
var s = this . gridAddFeeList . getStore ( ) ;
var number = s . indexOf ( row ) + 1 ;
this . cellEditingFee . startEditByPosition ( { row : number , column : col } ) ;
} ,
onUpKeyClick : function ( col ) {
var rows = this . gridAddFeeList . getSelectionModel ( ) . getSelection ( ) ;
var row = rows [ rows . length - 1 ] ;
var s = this . gridAddFeeList . getStore ( ) ;
var number = s . indexOf ( row ) - 1 ;
if ( number < 0 ) number = 0 ;
this . cellEditingFee . startEditByPosition ( { row : number , column : col } ) ;
} ,
addDetail : function ( ) {
var btnEAddDetail = Ext . getCmp ( 'btnadddetail' ) ;
btnEAddDetail . disable ( ) ;
var btnEAddbill = Ext . getCmp ( 'btnaddbill' ) ;
btnEAddbill . disable ( ) ;
var basicForm = this . formEdit . getForm ( ) ;
var Duino = this . formEdit . getForm ( ) . findField ( 'BILLNO' ) . getValue ( ) ;
_this = this ;
var SALECORP = '' ;
if ( ( Duino == '*' ) || basicForm . isDirty ( ) ) {
var CUSTOMERNAME = this . formEdit . getForm ( ) . findField ( 'CUSTOMERNAME' ) . getValue ( ) ;
var CURR = this . formEdit . getForm ( ) . findField ( 'CURR' ) . getValue ( ) ;
if ( ( CUSTOMERNAME == '' ) || ( CUSTOMERNAME == null ) ) {
var selectedRecords = this . gridAddFeeList . selModel . getSelection ( ) ;
if ( selectedRecords . length > 0 ) {
var rec = selectedRecords [ 0 ] ;
var cust = rec . data . CustomerName ;
var curr = rec . data . Currency ;
//SALECORP = rec.data.SALECORP;
var selectedRecords = this . gridAddList . selModel . getSelection ( ) ;
if ( selectedRecords . length > 0 ) {
var SALECORPID = selectedRecords [ 0 ] . data . SALECORPID ;
this . formEdit . getForm ( ) . findField ( 'SALECORPID' ) . setValue ( SALECORPID )
}
if ( ( CUSTOMERNAME == '' ) || ( CUSTOMERNAME == null ) )
this . formEdit . getForm ( ) . findField ( 'CUSTOMERNAME' ) . setValue ( cust ) ;
/ *
this . storeCustACCOUNT . load ( {
async : false ,
params : { condition : " LINKID=(select GID from info_client where shortname='" + cust + "') " }
} ) ; * /
this . LoadCustACCOUNT ( cust ) ;
}
}
var STLDATE = this . formEdit . getForm ( ) . findField ( 'PAYABLETIME' ) . getValue ( ) ;
if ( ( STLDATE == '' ) || ( STLDATE == null ) ) {
var myDate = new Date ( ) ;
var mydatestr = Ext . util . Format . date ( myDate , 'Y-m-d H:i:s' ) ;
this . formEdit . getForm ( ) . findField ( 'PAYABLETIME' ) . setValue ( mydatestr ) ;
}
//var SALECORPID = this.formEdit.getForm().findField('SALECORPID').getValue();
//if ((SALECORPID == '') || (SALECORPID == null)) {
// var recs = DsStoreQueryBy(this.storeSaleCompany, 'NAME', SALECORP);
// if (recs.getCount() > 0) {
// var data = recs.getAt(0).data;
// this.formEdit.getForm().findField('SALECORPID').setValue(data.GID)
// }
//}
if ( ! basicForm . isValid ( ) ) {
btnEAddDetail . enable ( ) ;
btnEAddbill . enable ( ) ;
return ;
}
var type = 0 ;
this . formEdit . getForm ( ) . findField ( 'BILLSTATUS' ) . setDisabled ( false ) ;
this . formEdit . getForm ( ) . findField ( 'APPLICANT' ) . setDisabled ( false ) ;
this . formEdit . getForm ( ) . findField ( 'COMPANYID' ) . setDisabled ( false ) ;
var data = basicForm . getValues ( ) ;
this . formEdit . getForm ( ) . findField ( 'BILLSTATUS' ) . setDisabled ( true ) ;
this . formEdit . getForm ( ) . findField ( 'APPLICANT' ) . setDisabled ( true ) ;
this . formEdit . getForm ( ) . findField ( 'COMPANYID' ) . setDisabled ( true ) ;
Ext . Msg . wait ( Zi . LAN . nowsave ) ; //正在保存数据, 请稍侯..
Ext . Ajax . request ( {
waitMsg : Zi . LAN . nowsave , //正在保存数据...
url : '/Account/Chfee_payapplication/Save' ,
scope : this ,
params : {
opstatus : this . opStatus ,
data : Ext . JSON . encode ( data )
} ,
callback : function ( options , success , response ) {
if ( success ) {
Ext . MessageBox . hide ( ) ;
var jsonresult = Ext . JSON . decode ( response . responseText ) ;
if ( jsonresult . Success ) {
var returnData = jsonresult . Data ;
this . formEdit . getForm ( ) . setValues ( returnData ) ;
if ( this . opStatus == 'add' ) {
var arrNewRecords = this . StoreList . insert ( 0 , returnData ) ;
this . editRecord = this . StoreList . getAt ( 0 ) ;
}
else if ( this . opStatus == 'edit' ) {
var editp = Ext . create ( 'MsChPayapplication' , returnData ) ;
this . editRecord . fields . each ( function ( field ) {
if ( field . persist ) {
name = field . name ;
if ( name != 'id' )
this . editRecord . set ( name , editp . get ( name ) ) ;
}
} , this ) ;
this . editRecord . commit ( ) ;
}
this . opStatus = 'edit' ;
_this . addDetailfn ( ) ;
} else {
btnEAddDetail . enable ( ) ; //错误
btnEAddbill . enable ( ) ;
Ext . Msg . show ( { title : Zi . LAN . Error , msg : jsonresult . Message , icon : Ext . Msg . ERROR , buttons : Ext . Msg . OK } ) ;
}
} else {
btnEAddDetail . enable ( ) ;
btnEAddbill . enable ( ) ;
Ext . Msg . show ( { title : Zi . LAN . qagin , //请重试
msg : Zi . LAN . FuWuQiError , //服务器响应出错
icon : Ext . Msg . ERROR , buttons : Ext . Msg . OK
} ) ;
}
}
} ) ;
} else {
this . addDetailfn ( ) ;
}
} ,
addDetailfn : function ( ) {
var btnEAddDetail = Ext . getCmp ( 'btnadddetail' ) ;
var btnEAddbill = Ext . getCmp ( 'btnaddbill' ) ;
if ( this . addstore ) {
this . storeCurrExrate . removeAll ( ) ;
this . addstore = false ;
}
var Duino = this . formEdit . getForm ( ) . findField ( 'BILLNO' ) . getValue ( ) ;
var billstatus = this . formEdit . getForm ( ) . findField ( 'BILLSTATUS' ) . getValue ( ) ;
var salecorp = this . formEdit . getForm ( ) . findField ( 'SALECORPID' ) . getRawValue ( ) ;
if ( ( billstatus != 1 ) && ( billstatus != 6 ) ) {
//提示', msg: '当前状态无法添加付费申请明细!
Ext . Msg . show ( { title : Zi . LAN . Prompt , msg : Zi . LAN . dqstatenot , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
btnEAddDetail . enable ( ) ;
btnEAddbill . enable ( ) ;
return ;
}
var basicForm = this . formEdit . getForm ( ) ;
var billcust = this . editRecord . data . CUSTOMERNAME ;
var billno = this . editRecord . data . BILLNO ;
var billcurr = this . editRecord . data . CURR ;
var billgroupcorp = this . GetGroupCorp ( billcust ) ;
var selectedRecords = this . gridAddFeeList . selModel . getSelection ( ) ;
var bodyAddDatas = [ ] ;
_this = this ;
for ( var i = 0 ; i < selectedRecords . length ; i ++ ) {
var rec = selectedRecords [ i ] ;
var cust = rec . data . CustomerName ;
var custgroupcorp = this . GetGroupCorp ( cust ) ;
var bsno = rec . data . BSNO ;
var curr = rec . data . Currency ;
var ExChangerate = rec . data . ExChangerate ;
if ( cust == billcust || cust == billgroupcorp || ( custgroupcorp == billgroupcorp && custgroupcorp != '' ) ) {
if ( billcurr == curr || billcurr == null || billcurr == '' ) {
rec . data . DoAmount = rec . data . StlAmount ;
} else {
var recs = DsStoreQueryBy ( _this . storeCurrExrate , 'CURR' , curr ) ;
if ( recs . getCount ( ) > 0 ) {
var data = recs . getAt ( 0 ) . data ;
var EXRATE = data . EXRATE ;
rec . data . ExChangerate = EXRATE ;
rec . data . DoAmount = parseFloat ( rec . data . StlAmount ) . mul ( parseFloat ( EXRATE ) ) ;
} else {
_this . ExrateConversion ( curr , billcurr , 'detail' , ExChangerate ) ;
return ;
}
}
bodyAddDatas . push ( rec ) ;
} else {
// Ext.Msg.show({ title: '提示', msg: '费用对象与付费申请客户不一致,不能添加此费用明细!', icon: Ext.Msg.INFO, buttons: Ext.Msg.OK });
alert ( Zi . LAN . notaddfeiyongmingxi ) ; //费用对象与付费申请客户不一致,不能添加此费用明细!
}
}
if ( bodyAddDatas . length == 0 ) { //'提示', msg: '没有要添加的费用明细!
Ext . Msg . show ( { title : Zi . LAN . Prompt , msg : Zi . LAN . notaddmingxi , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
btnEAddDetail . enable ( ) ;
btnEAddbill . enable ( ) ;
return ;
} ;
var jsonbodyAddDatas = ConvertRecordsToJsonAll ( bodyAddDatas ) ;
Ext . Ajax . request ( {
waitMsg : Zi . LAN . addnumnow , //正在添加数据
url : '/Account/Chfee_payapplication/AddDetail' ,
params : {
bill : billno ,
data : jsonbodyAddDatas ,
curr : billcurr ,
salecorp : salecorp
} ,
callback : function ( options , success , response ) {
if ( success ) {
var result = Ext . JSON . decode ( response . responseText ) ;
if ( ! result . Success ) {
Ext . Msg . show ( {
title : Zi . LAN . Prompt , //提示
msg : result . Message ,
icon : Ext . MessageBox . ERROR ,
buttons : Ext . Msg . OK
} ) ;
btnEAddDetail . enable ( ) ;
btnEAddbill . enable ( ) ;
return ;
} else {
if ( result . Message != '添加成功' ) { //添加成功
Ext . MessageBox . alert ( Zi . LAN . Prompt , result . Message ) ; //提示
}
btnEAddDetail . enable ( ) ;
btnEAddbill . enable ( ) ;
var sql = this . sqlcontext ;
this . storeAddFeeList . reload ( ) ;
// this.storeBodyAddList.load({ params: { start: 0, limit: _this.PageSize, sort: '', condition: sql} });
if ( this . storeBodyList . getCount ( ) != 0 ) {
_this . storeBodyList . reload ( {
callback : function ( r , options , success ) {
if ( success ) {
if ( _this . storeBodyList . getCount ( ) > 0 ) {
// _this.comboxCurr.setReadOnly(true);
_this . comboxCustCode . setReadOnly ( true ) ;
}
else {
// _this.comboxCurr.setReadOnly(false);
_this . comboxCustCode . setReadOnly ( false ) ;
}
}
} ,
scope : this
} ) ;
} else {
_this . storeBodyList . load ( {
params : { start : 0 , limit : _this . BodyPageSize , condition : " BILLNO='" + billno + "'" } ,
callback : function ( r , options , success ) {
if ( success ) {
if ( _this . storeBodyList . getCount ( ) > 0 ) {
// _this.comboxCurr.setReadOnly(true);
_this . comboxCustCode . setReadOnly ( true ) ;
}
else {
// _this.comboxCurr.setReadOnly(false);
_this . comboxCustCode . setReadOnly ( false ) ;
}
}
} ,
scope : this
} ) ;
}
this . storeBodySum . load ( { params : { condition : " BILLNO='" + billno + "'" } } ) ;
Ext . Ajax . request ( {
waitMsg : Zi . LAN . onselect , //正在查询主表数据
url : '/Account/Chfee_payapplication/GetData' ,
params : {
handle : 'edit' ,
condition : " BILLNO='" + billno + "'"
} ,
callback : function ( options , success , response ) {
if ( success ) {
var result = Ext . JSON . decode ( response . responseText ) ;
if ( ! result . Success ) {
Ext . Msg . show ( {
title : Zi . LAN . Prompt , //提示
msg : result . Message ,
icon : Ext . MessageBox . ERROR ,
buttons : Ext . Msg . OK
} ) ;
return ;
}
var data = result . data ;
this . formEdit . getForm ( ) . reset ( ) ;
this . formEdit . getForm ( ) . setValues ( data ) ;
var editp = Ext . create ( 'MsChPayapplication' , data ) ;
this . editRecord . fields . each ( function ( field ) {
if ( field . persist ) {
name = field . name ;
if ( name != 'id' )
this . editRecord . set ( name , editp . get ( name ) ) ;
}
} , this ) ;
this . editRecord . commit ( ) ;
} else { //请求出现错误,请重试
Ext . MessageBox . alert ( Zi . LAN . qqerror , response . responseText ) ;
}
} ,
scope : this
} ) ;
}
} else {
btnEAddDetail . enable ( ) ; //请求出现错误,请重试
btnEAddbill . enable ( ) ;
Ext . MessageBox . alert ( Zi . LAN . qqerror , response . responseText ) ;
}
} ,
scope : this
} ) ;
} ,
addBill : function ( ) {
var basicForm = this . formEdit . getForm ( ) ;
var btnEAddbill = Ext . getCmp ( 'btnaddbill' ) ;
btnEAddbill . disable ( ) ;
var btnEAddDetail = Ext . getCmp ( 'btnadddetail' ) ;
btnEAddDetail . disable ( ) ;
var Duino = this . formEdit . getForm ( ) . findField ( 'BILLNO' ) . getValue ( ) ;
_this = this ;
var SALECORP = "" ;
if ( ( Duino == '*' ) || basicForm . isDirty ( ) ) {
var CUSTOMERNAME = this . formEdit . getForm ( ) . findField ( 'CUSTOMERNAME' ) . getValue ( ) ;
var CURR = this . formEdit . getForm ( ) . findField ( 'CURR' ) . getValue ( ) ;
if ( ( CUSTOMERNAME == '' ) || ( CUSTOMERNAME == null ) ) {
if ( this . storeAddFeeList . getCount ( ) > 0 ) {
var rec = this . storeAddFeeList . getAt ( 0 ) ;
var cust = rec . data . CustomerName ;
var curr = rec . data . Currency ;
//SALECORP = rec.data.SALECORP;
var selectedRecords = this . gridAddList . selModel . getSelection ( ) ;
if ( selectedRecords . length > 0 ) {
var SALECORPID = selectedRecords [ 0 ] . data . SALECORPID ;
this . formEdit . getForm ( ) . findField ( 'SALECORPID' ) . setValue ( SALECORPID )
}
if ( ( CUSTOMERNAME == '' ) || ( CUSTOMERNAME == null ) )
this . formEdit . getForm ( ) . findField ( 'CUSTOMERNAME' ) . setValue ( cust ) ;
// if ((CURR == '') || (CURR == null))
// this.formEdit.getForm().findField('CURR').setValue(curr);
} else {
btnEAddbill . enable ( ) ; //'提示', msg: '核算客户不能为空!'
btnEAddDetail . enable ( ) ;
Ext . Msg . show ( { title : Zi . LAN . Prompt , msg : Zi . LAN . hesnotnull , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
return ;
}
}
//var SALECORPID = this.formEdit.getForm().findField('SALECORPID').getValue();
//if ((SALECORPID == '') || (SALECORPID == null)) {
// var recs = DsStoreQueryBy(this.storeSaleCompany, 'NAME', SALECORP);
// if (recs.getCount() > 0) {
// var data = recs.getAt(0).data;
// this.formEdit.getForm().findField('SALECORPID').setValue(data.GID)
// }
//}
var STLDATE = this . formEdit . getForm ( ) . findField ( 'PAYABLETIME' ) . getValue ( ) ;
if ( ( STLDATE == '' ) || ( STLDATE == null ) ) {
var myDate = new Date ( ) ;
var mydatestr = Ext . util . Format . date ( myDate , 'Y-m-d H:i:s' ) ;
this . formEdit . getForm ( ) . findField ( 'PAYABLETIME' ) . setValue ( mydatestr ) ;
}
var CUSTOMERNAME = this . formEdit . getForm ( ) . findField ( 'CUSTOMERNAME' ) . getValue ( ) ;
this . LoadCustACCOUNT ( CUSTOMERNAME ) ;
if ( ! basicForm . isValid ( ) ) {
return ;
}
var type = 0 ;
var data = basicForm . getValues ( ) ;
//正在保存数据, 请稍侯..
Ext . Msg . wait ( Zi . LAN . nowsave ) ;
Ext . Ajax . request ( {
waitMsg : Zi . LAN . nowsave , //正在保存数据...
url : '/Account/Chfee_payapplication/Save' ,
scope : this ,
params : {
opstatus : this . opStatus ,
data : Ext . JSON . encode ( data )
} ,
callback : function ( options , success , response ) {
if ( success ) {
Ext . MessageBox . hide ( ) ;
var jsonresult = Ext . JSON . decode ( response . responseText ) ;
if ( jsonresult . Success ) {
var returnData = jsonresult . Data ;
this . formEdit . getForm ( ) . setValues ( returnData ) ;
BillNo = returnData . BILLNO ;
if ( this . opStatus == 'add' ) {
var arrNewRecords = this . StoreList . insert ( 0 , returnData ) ;
this . editRecord = this . StoreList . getAt ( 0 ) ;
}
else if ( this . opStatus == 'edit' ) {
var editp = Ext . create ( 'MsChPayapplication' , returnData ) ;
this . editRecord . fields . each ( function ( field ) {
if ( field . persist ) {
name = field . name ;
if ( name != 'id' )
this . editRecord . set ( name , editp . get ( name ) ) ;
}
} , this ) ;
this . editRecord . commit ( ) ;
}
this . opStatus = 'edit' ;
_this . addBillfn ( ) ;
} else {
btnEAddbill . enable ( ) ; //错误
btnEAddDetail . enable ( ) ;
Ext . Msg . show ( { title : Zi . LAN . Error , msg : jsonresult . Message , icon : Ext . Msg . ERROR , buttons : Ext . Msg . OK } ) ;
}
} else {
btnEAddbill . enable ( ) ;
btnEAddDetail . enable ( ) ;
Ext . Msg . show ( { title : Zi . LAN . qagin , //请重试
msg : Zi . LAN . FuWuQiError , //服务器响应出错
icon : Ext . Msg . ERROR , buttons : Ext . Msg . OK
} ) ;
}
}
} ) ;
} else {
this . addBillfn ( ) ;
}
} , //end save
addBillfn : function ( ) {
var btnEAddbill = Ext . getCmp ( 'btnaddbill' ) ;
var btnEAddDetail = Ext . getCmp ( 'btnadddetail' ) ;
var billstatus = this . formEdit . getForm ( ) . findField ( 'BILLSTATUS' ) . getValue ( ) ;
var salecorp = this . formEdit . getForm ( ) . findField ( 'SALECORPID' ) . getRawValue ( ) ;
if ( ( billstatus != 1 ) && ( billstatus != 6 ) ) {
btnEAddbill . enable ( ) ; //'提示', msg: '当前状态无法添加付费申请明细!'
btnEAddDetail . enable ( ) ;
Ext . Msg . show ( { title : Zi . LAN . Prompt , msg : Zi . LAN . dqstatenot , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
return ;
}
if ( this . addstore ) {
this . storeCurrExrate . removeAll ( ) ;
this . addstore = false ;
}
var billcust = this . editRecord . data . CUSTOMERNAME ;
var billno = this . editRecord . data . BILLNO ;
var billcurr = this . editRecord . data . CURR ;
var billgroupcorp = this . GetGroupCorp ( billcust ) ;
var feeBSNOSql = '' ;
var sql = '' ;
var selectedRecords = this . gridAddList . selModel . getSelection ( ) ;
if ( selectedRecords . length == 0 ) {
btnEAddbill . enable ( ) ; //提示', msg: '没有选择要添加的业务!
btnEAddDetail . enable ( ) ;
Ext . Msg . show ( { title : Zi . LAN . Prompt , msg : Zi . LAN . notselectaddyw , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
return ;
} ;
var bodyAddDatas = [ ] ;
for ( var i = 0 ; i < selectedRecords . length ; i ++ ) {
var rec = selectedRecords [ i ] ;
var custgroupcorp = this . GetGroupCorp ( rec . data . FEEOBJNAME ) ;
if ( rec . data . FEEOBJNAME == billcust || rec . data . FEEOBJNAME == billgroupcorp || ( custgroupcorp == billgroupcorp && custgroupcorp != '' ) ) {
var feeBSNO = " (BSNO='" + rec . data . BSNO + "' AND CUSTOMERNAME='" + rec . data . FEEOBJNAME + "') " ;
if ( feeBSNOSql == '' ) {
feeBSNOSql = feeBSNO ;
} else {
feeBSNOSql = feeBSNOSql + " OR " + feeBSNO ;
}
}
}
if ( feeBSNOSql == '' ) {
btnEAddbill . enable ( ) ; //提示', msg: '没有要添加的费用明细!
btnEAddDetail . enable ( ) ;
Ext . Msg . show ( { title : Zi . LAN . Prompt , msg : Zi . LAN . notaddmingxi , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
sql = " " ;
return ;
}
else {
sql = " (" + feeBSNOSql + ")" ;
sql = sql + getAndConSql ( sql , this . FeeSqlStr , this . FeeSqlStr ) ;
}
_this = this ;
var bodydatas = [ ] ;
for ( var i = 0 ; i < this . storeCurrExrate . getCount ( ) ; i += 1 ) {
var member = this . storeCurrExrate . getAt ( i ) ;
if ( member . data . EXRATE == 0 ) {
_this . ExrateConversion ( member . CURR , billcurr , 'bill' , 0 ) ;
return ;
}
bodydatas . push ( member ) ;
}
var currBody = ConvertRecordsToJsonAll ( bodydatas ) ;
Ext . Ajax . request ( {
waitMsg : Zi . LAN . addnumnow , //正在添加数据...
url : '/Account/Chfee_payapplication/AddBill' ,
params : {
billno : billno ,
billcust : billcust ,
billcurr : billcurr ,
feesql : sql ,
storeCurrExrate : currBody ,
custgroup : true ,
salecorp : salecorp
} ,
callback : function ( options , success , response ) {
if ( success ) {
var result = Ext . JSON . decode ( response . responseText ) ;
if ( ! result . Success ) {
btnEAddbill . enable ( ) ;
btnEAddDetail . enable ( ) ;
Ext . Msg . show ( {
title : Zi . LAN . Prompt , //提示
msg : result . Message ,
icon : Ext . MessageBox . ERROR ,
buttons : Ext . Msg . OK
} ) ;
return ;
} else {
dataList = result . Data ;
if ( dataList == null ) {
if ( result . Message != '添加成功' ) { //添加成功
Ext . MessageBox . alert ( Zi . LAN . Prompt , result . Message ) ; //提示
}
var sql = this . sqlcontext ;
var sortstr = 'b.ETD,b.MBLNO,b.BsNo ' ;
if ( this . addsortfield != '' && this . addsortdire != '' ) {
sortstr = this . addsortfield + ' ' + this . addsortdire ;
}
// this.storeBodyAddList.load({ params: { start: 0, limit: _this.PageSize, sort: sortstr, condition: sql} });
this . storeBodyAddList . reload ( ) ;
if ( this . storeBodyList . getCount ( ) != 0 ) {
_this . storeBodyList . reload ( {
callback : function ( r , options , success ) {
if ( success ) {
if ( _this . storeBodyList . getCount ( ) > 0 ) {
// _this.comboxCurr.setReadOnly(true);
_this . comboxCustCode . setReadOnly ( true ) ;
}
else {
// _this.comboxCurr.setReadOnly(false);
_this . comboxCustCode . setReadOnly ( false ) ;
}
}
} ,
scope : this
} ) ;
} else {
_this . storeBodyList . load ( {
params : { start : 0 , limit : _this . BodyPageSize , condition : " BILLNO='" + billno + "'" } ,
callback : function ( r , options , success ) {
if ( success ) {
if ( _this . storeBodyList . getCount ( ) > 0 ) {
// _this.comboxCurr.setReadOnly(true);
_this . comboxCustCode . setReadOnly ( true ) ;
}
else {
// _this.comboxCurr.setReadOnly(false);
_this . comboxCustCode . setReadOnly ( false ) ;
}
}
} ,
scope : this
} ) ;
}
this . storeBodySum . load ( { params : { condition : " BILLNO='" + billno + "'" } } ) ;
Ext . Ajax . request ( {
waitMsg : Zi . LAN . onselect , //正在查询主表数据
url : '/Account/Chfee_payapplication/GetData' ,
params : {
handle : 'edit' ,
condition : " BILLNO='" + billno + "'"
} ,
callback : function ( options , success , response ) {
if ( success ) {
var result = Ext . JSON . decode ( response . responseText ) ;
if ( ! result . Success ) {
Ext . Msg . show ( {
title : Zi . LAN . Prompt , //提示
msg : result . Message ,
icon : Ext . MessageBox . ERROR ,
buttons : Ext . Msg . OK
} ) ;
return ;
}
var data = result . data ;
this . formEdit . getForm ( ) . reset ( ) ;
this . formEdit . getForm ( ) . setValues ( data ) ;
var editp = Ext . create ( 'MsChPayapplication' , data ) ;
this . editRecord . fields . each ( function ( field ) {
if ( field . persist ) {
name = field . name ;
if ( name != 'id' )
this . editRecord . set ( name , editp . get ( name ) ) ;
}
} , this ) ;
this . editRecord . commit ( ) ;
} else { //请求出现错误,请重试
Ext . MessageBox . alert ( Zi . LAN . qqerror , response . responseText ) ;
}
} ,
scope : this
} ) ;
} else {
if ( dataList . lenght != 0 ) {
for ( var i = 0 ; i < dataList . length ; i ++ ) {
var record = dataList [ i ] ;
_this . storeCurrExrate . add ( record ) ;
}
_this . ExrateConversion ( record . CURR , billcurr , 'bill' , 0 ) ;
return ;
}
}
}
} else {
btnEAddbill . enable ( ) ; //请求出现错误,请重试
btnEAddDetail . enable ( ) ;
Ext . MessageBox . alert ( Zi . LAN . qqerror , response . responseText ) ;
}
} ,
scope : this
} ) ;
} ,
deleteBill : function ( type ) {
var btnEDeleteDetail = Ext . getCmp ( 'btndeldetail' ) ;
btnEDeleteDetail . disable ( ) ;
var billno = this . formEdit . getForm ( ) . findField ( 'BILLNO' ) . getValue ( ) ;
var selectedRecords = this . gridList . selModel . getSelection ( ) ;
if ( selectedRecords . length == 0 ) { //提示', msg: '没有要删除的费用明细!
Ext . Msg . show ( { title : Zi . LAN . Prompt , msg : Zi . LAN . nodeletemingxi , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
btnEDeleteDetail . enable ( ) ;
return ;
} ;
var billstatus = this . formEdit . getForm ( ) . findField ( 'BILLSTATUS' ) . getValue ( ) ;
if ( ( billstatus != 1 ) && ( billstatus != 6 ) ) {
//提示', msg: '当前状态无法删除付费申请明细!
Ext . Msg . show ( { title : Zi . LAN . Prompt , msg : Zi . LAN . dqztnotdelectmx , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
btnEDeleteDetail . enable ( ) ;
return ;
}
var bodyAddDatas = [ ] ;
for ( var i = 0 ; i < selectedRecords . length ; i ++ ) {
var rec = selectedRecords [ i ] ;
bodyAddDatas . push ( rec ) ;
}
var jsonbodyAddDatas = ConvertRecordsToJsonAll ( bodyAddDatas ) ;
var sql = this . sqlcontext ;
_this = this ; //正在删除数据., 请稍侯..
Ext . Msg . wait ( Zi . LAN . nowdelete ) ;
Ext . Ajax . request ( {
waitMsg : Zi . LAN . nowdelete ,
url : '/Account/Chfee_payapplication/DelBill' ,
params : {
data : jsonbodyAddDatas ,
billno : billno
} ,
callback : function ( options , success , response ) {
if ( success ) {
var result = Ext . JSON . decode ( response . responseText ) ;
if ( ! result . Success ) {
Ext . Msg . show ( {
title : Zi . LAN . Prompt , //提示
msg : result . Message ,
icon : Ext . MessageBox . ERROR ,
buttons : Ext . Msg . OK
} ) ;
btnEDeleteDetail . enable ( ) ;
return ;
} else {
Ext . MessageBox . hide ( ) ;
var sql = this . sqlcontext ;
this . storeBodyAddList . load ( { params : { start : 0 , limit : _this . PageSize , sort : '' , condition : sql } } ) ;
_this . storeBodyList . load ( { params : { start : 0 , limit : _this . BodyPageSize , condition : " BILLNO='" + billno + "'" } ,
callback : function ( r , options , success ) {
if ( success ) {
if ( _this . storeBodyList . getCount ( ) > 0 ) {
// _this.comboxCurr.setReadOnly(true);
_this . comboxCustCode . setReadOnly ( true ) ;
}
else {
// _this.comboxCurr.setReadOnly(false);
_this . comboxCustCode . setReadOnly ( false ) ;
}
}
} ,
scope : this
} ) ;
this . storeBodySum . load ( { params : { condition : " BILLNO='" + billno + "'" } } ) ;
Ext . Ajax . request ( {
waitMsg : Zi . LAN . onselect , //正在查询主表数据
url : '/Account/Chfee_payapplication/GetData' ,
params : {
handle : 'edit' ,
condition : " BILLNO='" + billno + "'"
} ,
callback : function ( options , success , response ) {
if ( success ) {
var result = Ext . JSON . decode ( response . responseText ) ;
if ( ! result . Success ) {
Ext . Msg . show ( {
title : Zi . LAN . Prompt , //提示
msg : result . Message ,
icon : Ext . MessageBox . ERROR ,
buttons : Ext . Msg . OK
} ) ;
return ;
}
var data = result . data ;
this . formEdit . getForm ( ) . reset ( ) ;
this . formEdit . getForm ( ) . setValues ( data ) ;
var editp = Ext . create ( 'MsChPayapplication' , data ) ;
this . editRecord . fields . each ( function ( field ) {
if ( field . persist ) {
name = field . name ;
if ( name != 'id' )
this . editRecord . set ( name , editp . get ( name ) ) ;
}
} , this ) ;
this . editRecord . commit ( ) ;
btnEDeleteDetail . enable ( ) ;
} else {
btnEDeleteDetail . enable ( ) ; //请求出现错误,请重试
Ext . MessageBox . alert ( Zi . LAN . qqerror , response . responseText ) ;
}
} ,
scope : this
} ) ;
}
} else {
btnEDeleteDetail . enable ( ) ; //请求出现错误,请重试
Ext . MessageBox . alert ( Zi . LAN . qqerror , response . responseText ) ;
}
} ,
scope : this
} ) ;
} ,
onSubmitAuditClick : function ( ) {
var Duino = this . formEdit . getForm ( ) . findField ( 'BILLNO' ) . getValue ( ) ;
var billstatus = this . formEdit . getForm ( ) . findField ( 'BILLSTATUS' ) . getValue ( ) ;
if ( Duino == '*' ) { //提示', msg: '请先保存付费申请,然后才能提交审核
Ext . Msg . show ( { title : Zi . LAN . Prompt , msg : Zi . LAN . baocunshenq , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
return ;
} ;
if ( ( billstatus != 1 ) && ( billstatus != 6 ) ) {
//提示', msg: '当前状态无法提交审核
Ext . Msg . show ( { title : Zi . LAN . Prompt , msg : Zi . LAN . nowcanntsh , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
return ;
}
if ( this . storeBodyList . getCount ( ) == 0 ) { //提示', msg: '没有付费明细,无法提交审核
Ext . Msg . show ( { title : Zi . LAN . Prompt , msg : Zi . LAN . notmingxish , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
return ;
}
_this = this ;
Ext . Ajax . request ( {
waitMsg : Zi . LAN . addnumnow , //正在添加数据..
url : '/Account/Chfee_payapplication/SubmitAudit' ,
params : {
bill : Duino
} ,
callback : function ( options , success , response ) {
if ( success ) {
var result = Ext . JSON . decode ( response . responseText ) ;
if ( ! result . Success ) {
Ext . Msg . show ( {
title : Zi . LAN . Prompt , //提示
msg : result . Message ,
icon : Ext . MessageBox . ERROR ,
buttons : Ext . Msg . OK
} ) ;
return ;
} else {
if ( this . opStatus == 'edit' )
condition = " BILLNO='" + this . editRecord . get ( 'BILLNO' ) + "'" ;
this . LoadData ( this . opStatus , condition ) ;
}
} else { //请求出现错误,请重试'
Ext . MessageBox . alert ( Zi . LAN . qqerror , response . responseText ) ;
}
} ,
scope : this
} ) ;
} ,
onSubmitAuditBackClick : function ( ) {
var Duino = this . formEdit . getForm ( ) . findField ( 'BILLNO' ) . getValue ( ) ;
var billstatus = this . formEdit . getForm ( ) . findField ( 'BILLSTATUS' ) . getValue ( ) ;
if ( Duino == '*' ) { //提示', msg: '请先保存付费申请,然后才能提交审核!
Ext . Msg . show ( { title : Zi . LAN . Prompt , msg : Zi . LAN . baocunshenq , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
return ;
} ;
if ( billstatus != 2 ) {
//提示', msg: '当前状态无法撤销提交!
Ext . Msg . show ( { title : Zi . LAN . Prompt , msg : Zi . LAN . wufachexiaotj , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
return ;
}
_this = this ;
Ext . Ajax . request ( { //正在添加数据..
waitMsg : Zi . LAN . addnumnow ,
url : '/Account/Chfee_payapplication/SubmitAuditBack' ,
params : {
bill : Duino
} ,
callback : function ( options , success , response ) {
if ( success ) {
var result = Ext . JSON . decode ( response . responseText ) ;
if ( ! result . Success ) {
Ext . Msg . show ( { //提示
title : Zi . LAN . Prompt ,
msg : result . Message ,
icon : Ext . MessageBox . ERROR ,
buttons : Ext . Msg . OK
} ) ;
return ;
} else {
if ( this . opStatus == 'edit' )
condition = " BILLNO='" + this . editRecord . get ( 'BILLNO' ) + "'" ;
this . LoadData ( this . opStatus , condition ) ;
}
} else { //请求出现错误,请重试'
Ext . MessageBox . alert ( Zi . LAN . qqerror , response . responseText ) ;
}
} ,
scope : this
} ) ;
} ,
onDeleteBillClick : function ( ) {
var Duino = this . formEdit . getForm ( ) . findField ( 'BILLNO' ) . getValue ( ) ;
var billstatus = this . formEdit . getForm ( ) . findField ( 'BILLSTATUS' ) . getValue ( ) ;
if ( Duino == '*' ) { //提示', msg: '请先保存付费申请,然后才能提交审核!
Ext . Msg . show ( { title : Zi . LAN . Prompt , msg : Zi . LAN . baocunshenq , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
return ;
} ;
if ( billstatus != '1' && billstatus != '6' ) {
// 提示 当前状态无法删除此单据
Ext . Msg . show ( { title : Zi . LAN . Prompt , msg : Zi . LAN . nodelete , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
return ;
}
_this = this ;
var basicForm = this . formEdit . getForm ( ) ;
var data = basicForm . getValues ( ) ;
//提示', '确定删除该记录吗?
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/Delete' ,
params : {
data : Ext . JSON . encode ( data )
} ,
callback : function ( options , success , response ) {
if ( success ) {
var jsonresult = Ext . JSON . decode ( response . responseText ) ;
if ( jsonresult . Success ) {
this . StoreList . reload ( ) ;
window . close ( ) ;
}
else {
Ext . Msg . show ( { title : Zi . LAN . Error , 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 ) ;
} ,
onRefreshClick : function ( button , event ) {
var sql = this . getCondition ( ) ;
this . sqlcontext = sql ;
this . PageSize = this . Pagenum . getValue ( ) ;
this . storeBodyAddList . pageSize = this . PageSize ;
this . storeBodyAddList . load ( { params : { start : 0 , limit : this . PageSize , sort : '' , condition : sql } } ) ;
} ,
onDsQuery : function ( ) {
//var girdcolums = this.gridList.getColumnMode();
var sql = this . sqlcontext ;
this . storeBodyAddList . load ( { params : { start : 0 , limit : this . PageSize , sort : '' , condition : sql } } ) ;
} ,
onClearSql : function ( ) {
var form = this . formSearch . getForm ( ) ;
form . reset ( ) ;
} ,
LoadCustACCOUNT : function ( CUSTOMERNAME , ISLOAD , loaddata ) {
var CURR = this . formEdit . getForm ( ) . findField ( 'CURR' ) . getValue ( ) ;
var CUSTBANK = this . formEdit . getForm ( ) . findField ( 'CUSTACCOUNTGID' ) ;
var CUSTACCOUNT = this . formEdit . getForm ( ) . findField ( 'CUSTACCOUNT' ) ;
var condition = " LINKID=(select GID from info_client where shortname='" + CUSTOMERNAME + "') " ;
if ( CURR != "" && CURR != undefined ) {
condition = condition + " and CURRENCY='" + CURR + "'" ;
}
this . storeCustACCOUNT . load ( { params : { condition : condition } ,
callback : function ( r , options , success ) {
if ( success ) {
if ( r . length != 0 ) {
if ( ISLOAD ) {
CUSTBANK . setValue ( loaddata . CUSTACCOUNTGID ) ;
CUSTACCOUNT . setValue ( loaddata . CUSTACCOUNT ) ;
} else {
CUSTBANK . setValue ( this . storeCustACCOUNT . data . items [ 0 ] . data . GID ) ;
CUSTACCOUNT . setValue ( this . storeCustACCOUNT . data . items [ 0 ] . data . ACCOUNT ) ;
}
}
}
} ,
scope : this
} ) ;
} ,
getCondition : function ( ) {
var form = this . formSearch . getForm ( ) ;
if ( ! form . isValid ( ) ) { //提示', '查询条件赋值错误,请检查
Ext . Msg . alert ( Zi . LAN . Prompt , Zi . LAN . SelectError ) ;
return '' ;
}
var sql = '' ;
var customNo = form . findField ( 'CustomNo' ) . getValue ( ) ;
if ( customNo ) {
if ( customNo . indexOf ( "," ) > 0 ) {
var customNOList = customNo . split ( "," ) ;
var customNOListStr = "(" ;
for ( var _i = 0 ; _i < customNOList . length ; _i ++ ) {
if ( customNOListStr != "(" ) customNOListStr += " OR " ;
customNOListStr += " (ISNULL(b.CUSTNO, '') + '' + ISNULL(b.MBLNO, '') + '' + ISNULL(b.HBLNO, '') + '' + ISNULL(b.CUSTOMNO, '') + '' + ISNULL(b.ORDERNO, '')) like '%" + customNOList [ _i ] + "%' " ;
}
customNOListStr += ")" ;
sql = sql + getAndConSql ( sql , customNOListStr , customNOListStr ) ;
} else {
sql = sql + getAndConSql ( sql , customNo , " (ISNULL(b.CUSTNO,'')+''+ISNULL(b.MBLNO,'')+''+ISNULL(b.HBLNO,'')+''+ISNULL(b.CUSTOMNO,'')+''+ISNULL(b.ORDERNO,'')) like '%" + customNo + "%' " ) ;
}
}
// var OPLBNAME = form.findField('OPLBNAME').getValue();
// sql = sql + getAndConSql(sql, OPLBNAME, "b.OPLBNAME='" + OPLBNAME + "'");
var expDateBgn = form . findField ( 'ExpDateBgn' ) . getRawValue ( ) ;
sql = sql + getAndConSql ( sql , expDateBgn , "b.ETD >='" + expDateBgn + "'" ) ;
var expDateEnd = form . findField ( 'ExpDateEnd' ) . getRawValue ( ) ;
sql = sql + getAndConSql ( sql , expDateEnd , "b.ETD <='" + expDateEnd + "'" ) ;
var ACCDATE = form . findField ( 'ACCDATEFR' ) . getRawValue ( ) ;
sql = sql + getAndConSql ( sql , ACCDATE , "b.ACCDATE>='" + ACCDATE + "'" ) ;
var ACCDATETO = form . findField ( 'ACCDATETO' ) . getRawValue ( ) ;
sql = sql + getAndConSql ( sql , ACCDATETO , "b.ACCDATE<='" + ACCDATETO + "'" ) ;
this . FeeSqlStr = this . getFeeCondition ( ) ;
sql = sql + getAndConSql ( sql , this . FeeSqlStr , this . FeeSqlStr ) ;
// sql = sql + getAndConSql(sql, feesql, feesql);
// this.BillSql = sql;
return sql ;
} ,
getFeeCondition : function ( ) {
var form = this . formSearch . getForm ( ) ;
var feesql = ' (f.amount-isnull(f.SETTLEMENT,0))<>0 ' ;
var CUSTNAME = form . findField ( 'CUSTNAME' ) . getValue ( ) ;
feesql = feesql + getAndConSql ( feesql , CUSTNAME , "f.CUSTOMERNAME='" + CUSTNAME + "'" ) ;
var SALECORP = form . findField ( 'SALECORP' ) . getValue ( ) ;
feesql = feesql + getAndConSql ( feesql , SALECORP , "f.SALECORP='" + SALECORP + "'" ) ;
var DC = form . findField ( 'DC' ) . getValue ( ) ;
feesql = feesql + getAndConSql ( feesql , DC , "f.FEETYPE=" + DC ) ;
var Currency = form . findField ( 'Currency' ) . getValue ( ) ;
feesql = feesql + getAndConSql ( feesql , Currency , "f.Currency='" + Currency + "'" ) ;
var FeeName = form . findField ( 'FeeName' ) . getValue ( ) ;
feesql = feesql + getAndConSql ( feesql , FeeName , "f.FeeName='" + FeeName + "'" ) ;
var ISINVOICE = form . findField ( 'ISINVOICE' ) . getValue ( ) ;
feesql = feesql + getAndConSql ( feesql , ISINVOICE , "f.ISINVOICE=" + ISINVOICE ) ;
var ISADVANCEDPAY = form . findField ( 'ISADVANCEDPAY' ) . getValue ( ) ;
feesql = feesql + getAndConSql ( feesql , ISADVANCEDPAY , "f.ISADVANCEDPAY=" + ISADVANCEDPAY ) ;
var DuiNo = form . findField ( 'DuiNo' ) . getValue ( ) ;
//feesql = feesql + getAndConSql(feesql, DuiNo, " f.GID IN (SELECT GID FROM V_DUI_FEE WHERE DUINO='" + DuiNo + "')");
//展濠模糊查询
feesql = feesql + getAndConSql ( feesql , DuiNo , " f.GID IN (SELECT GID FROM V_DUI_FEE WHERE DUINO like '%" + DuiNo + "%')" ) ;
var InvNo = form . findField ( 'InvNo' ) . getValue ( ) ;
feesql = feesql + getAndConSql ( feesql , InvNo , " f.GID IN (SELECT FEEID FROM ch_fee_do_invoice WHERE BILLNO='" + InvNo + "')" ) ;
return feesql ;
} ,
ExrateConversion : function ( bfcurr , afcurr , fntype , dfexrate ) {
var EXRATE = 0 ;
var achange = true ;
var bchange = true ;
formExrateConversion = Ext . widget ( 'form' , {
frame : true ,
region : 'center' ,
bodyPadding : 5 ,
fieldDefaults : {
margins : '2 2 2 2' ,
labelAlign : 'right' ,
flex : 1 ,
labelWidth : 90 ,
msgTarget : 'qtip'
} ,
items : [
{ //fieldset 1
xtype : 'container' ,
defaultType : 'textfield' ,
layout : 'anchor' ,
defaults : {
anchor : '100%'
} ,
items : [ {
xtype : 'container' ,
layout : 'hbox' ,
defaultType : 'textfield' ,
items : [ {
fieldLabel : '1' + bfcurr + '=' ,
xtype : 'numberfield' ,
name : 'bfcurr' ,
decimalPrecision : 10 ,
value : 0 ,
renderer : function ( value , cellmeta , record , rowIndex , columnIndex , store ) {
try {
var lsValue = usMoney ( value , 10 , '' , false ) ;
if ( lsValue != "NaN" ) {
value = lsValue ; if ( parseFloat ( lsValue ) < 0 ) {
return '<SPAN style="COLOR: red">' + lsValue + '</SPAN>' ;
}
}
else {
return value ;
}
}
catch ( e ) {
return value ;
}
return value ;
} ,
listeners : {
change : function ( ) {
if ( bchange ) {
var bfcurr = formExrateConversion . getForm ( ) . findField ( 'bfcurr' ) . getValue ( ) ;
var field = formExrateConversion . getForm ( ) . findField ( 'afcurr' ) ;
if ( bfcurr == 0 ) { field . setValue ( 0 ) ; } else {
var taxrate = ( parseFloat ( 1 ) . div ( parseFloat ( bfcurr ) ) ) . toFixed ( 10 ) ;
achange = false ;
field . setValue ( taxrate ) ;
}
}
achange = true ;
}
}
} , {
xtype : 'label' ,
width : 120 ,
text : afcurr ,
name : 'bfcurr2'
}
]
} , {
xtype : 'container' ,
layout : 'hbox' ,
defaultType : 'textfield' ,
items : [ {
fieldLabel : '1' + afcurr + '=' ,
xtype : 'numberfield' ,
name : 'afcurr' ,
decimalPrecision : 10 ,
value : 0 ,
renderer : function ( value , cellmeta , record , rowIndex , columnIndex , store ) {
try {
var lsValue = usMoney ( value , 10 , '' , false ) ;
if ( lsValue != "NaN" ) {
value = lsValue ; if ( parseFloat ( lsValue ) < 0 ) {
return '<SPAN style="COLOR: red">' + lsValue + '</SPAN>' ;
}
}
else {
return value ;
}
}
catch ( e ) {
return value ;
}
return value ;
} ,
listeners : {
change : function ( ) {
if ( achange ) {
var afcurr = formExrateConversion . getForm ( ) . findField ( 'afcurr' ) . getValue ( ) ;
var field = formExrateConversion . getForm ( ) . findField ( 'bfcurr' ) ;
if ( afcurr == 0 ) { field . setValue ( 0 ) ; } else {
var taxrate = ( parseFloat ( 1 ) . div ( parseFloat ( afcurr ) ) ) . toFixed ( 10 ) ;
bchange = false ;
field . setValue ( taxrate ) ;
}
}
bchange = true ;
}
}
} , {
xtype : 'label' ,
width : 120 ,
text : bfcurr ,
name : 'afcurr2'
}
]
}
] //end items(fieldset 1)
} //end fieldset 1
] //end root items
} ) ;
me = this ;
winExrateShow = Ext . create ( 'Ext.window.Window' , {
title : Zi . LAN . bibiezesuan , //币别汇率折算
width : 450 ,
iconCls : "addicon" ,
resizable : false ,
collapsible : true , // 允许缩放条
closeAction : 'close' ,
closable : true ,
modal : 'true' ,
buttonAlign : "center" ,
bodyStyle : "padding:0 0 0 0" ,
items : [ formExrateConversion ] ,
buttons : [ {
text : Zi . LAN . asure , //确定
minWidth : 70 ,
handler : function ( ) {
var form = formExrateConversion . getForm ( ) ;
var UsdExrate = form . findField ( 'bfcurr' ) . getValue ( ) ;
if ( UsdExrate == '' || UsdExrate == null || UsdExrate == undefined ) { //提示', msg: '必须填折算汇率!
Ext . Msg . show ( { title : Zi . LAN . Prompt , msg : Zi . LAN . surezesuanhuil , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
return ;
} ;
var recs = DsStoreQueryBy ( me . storeCurrExrate , 'CURR' , bfcurr ) ;
if ( recs . getCount ( ) > 0 ) {
for ( var i = 0 ; i < me . storeCurrExrate . getCount ( ) ; i += 1 ) {
var member = me . storeCurrExrate . getAt ( i ) ;
if ( member . data . CURR == bfcurr ) {
member . set ( 'EXRATE' , UsdExrate ) ;
member . commit ( ) ;
}
}
} else {
me . storeCurrExrate . add ( { "CURR" : bfcurr , "EXRATE" : UsdExrate } )
}
winExrateShow . close ( ) ;
if ( fntype == 'detail' ) {
me . addDetail ( ) ;
}
if ( fntype == 'bill' ) {
me . addBill ( ) ;
}
return ;
}
} , {
text : Zi . LAN . close , //关闭
minWidth : 70 ,
handler : function ( ) {
winExrateShow . close ( ) ;
me . GetEditStatus ( ) ;
return ;
}
} ]
} ) ;
if ( bfcurr == LOCALCURR ) {
var FFrecords = DsStoreQueryBy ( this . StoreDateCurr , 'CURR' , afcurr ) ;
if ( FFrecords . getCount ( ) > 0 ) {
var ffdata = FFrecords . getAt ( 0 ) . data ;
var DEFRATE = ffdata . DEFRATE ;
} else {
var DFrecords = DsStoreQueryBy ( this . StoreCurr , 'CURR' , afcurr ) ;
if ( DFrecords . getCount ( ) > 0 ) {
var dfdata = DFrecords . getAt ( 0 ) . data ;
var DEFRATE = dfdata . DEFRATE ;
} else {
var DEFRATE = 1 ;
}
}
var field = formExrateConversion . getForm ( ) . findField ( 'afcurr' ) ;
achange = true ;
field . setValue ( DEFRATE ) ;
} else if ( afcurr == LOCALCURR ) {
var FFrecords = DsStoreQueryBy ( this . StoreDateCurr , 'CURR' , bfcurr ) ;
if ( FFrecords . getCount ( ) > 0 ) {
var ffdata = FFrecords . getAt ( 0 ) . data ;
var DEFRATE = ffdata . DEFRATE ;
} else {
var recs = DsStoreQueryBy ( me . storeCurrExrate , 'CURR' , bfcurr ) ;
if ( recs . getCount ( ) > 0 ) {
var dfdata = recs . getAt ( 0 ) . data ;
var DEFRATE = dfdata . DFEXRATE ;
} else var DEFRATE = dfexrate ;
}
var field = formExrateConversion . getForm ( ) . findField ( 'bfcurr' ) ;
achange = true ;
field . setValue ( DEFRATE ) ;
} else {
var field = formExrateConversion . getForm ( ) . findField ( 'bfcurr' ) ;
var recs = DsStoreQueryBy ( me . storeCurrExrate , 'CURR' , bfcurr ) ;
if ( recs . getCount ( ) > 0 ) {
var dfdata = recs . getAt ( 0 ) . data ;
var DEFRATE = dfdata . DFEXRATE ;
} else var DEFRATE = dfexrate ;
bchange = true ;
field . setValue ( DEFRATE ) ;
}
winExrateShow . show ( ) ;
} ,
GetGroupCorp : function ( custname ) {
_this = this ;
var records = DsStoreQueryBy ( _this . StoreClientGroup , 'SHORTNAME' , custname ) ;
if ( records . getCount ( ) > 0 ) {
return records . getAt ( 0 ) . data . PCORPNAME ;
} else {
return '' ;
}
} ,
//#region 必填字段
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
} ) ;
} ,
//#endregion
// #region 根据权限和状态判断是否允许修改
GetEditStatus : function ( ) {
var canedit = false ;
var btnESubmitAudit = Ext . getCmp ( 'btnSubmitAudit' ) ;
var btnESubmitAuditBack = Ext . getCmp ( 'btnSubmitAuditBack' ) ;
this . formEdit . getForm ( ) . findField ( 'BILLSTATUS' ) . setDisabled ( false ) ;
var bsStatus = this . formEdit . getForm ( ) . findField ( 'BILLSTATUS' ) . getValue ( ) ;
var op = this . formEdit . getForm ( ) . findField ( 'APPLICANTNAME' ) . getValue ( ) ;
this . formEdit . getForm ( ) . findField ( 'BILLSTATUS' ) . setDisabled ( true ) ;
_this = this ;
this . StoreOpRange . load ( { params : { optype : "modPaySettleAppList" } ,
callback : function ( r , options , success ) {
if ( success ) {
if ( r . length != 0 ) {
var records = DsStoreQueryBy ( _this . StoreOpRange , 'OPID' , op ) ;
if ( records . getCount ( ) > 0 ) {
canedit = true ;
if ( bsStatus == 1 || bsStatus == 6 )
btnESubmitAudit . enable ( ) ;
else
btnESubmitAudit . disable ( ) ;
if ( bsStatus == 2 )
btnESubmitAuditBack . enable ( ) ;
else
btnESubmitAuditBack . disable ( ) ;
} else {
canedit = false ;
btnESubmitAudit . disable ( ) ;
btnESubmitAuditBack . disable ( ) ;
}
if ( ( bsStatus != 1 ) && ( bsStatus != 6 ) ) {
_this . setSaveBtnStatus ( false ) ;
} else {
_this . setSaveBtnStatus ( canedit ) ;
}
}
}
}
} ) ;
} ,
setSaveBtnStatus : function ( enable ) {
var btnESave = Ext . getCmp ( 'btnESave' ) ;
var btnESaveAndClose = Ext . getCmp ( 'btnESaveAndClose' ) ;
var btnESaveAndNew = Ext . getCmp ( 'btnESaveAndNew' ) ;
var btnEAddDetail = Ext . getCmp ( 'btnadddetail' ) ;
var btnEAddbill = Ext . getCmp ( 'btnaddbill' ) ;
var btnEDeleteDetail = Ext . getCmp ( 'btndeldetail' ) ;
var wxpush = Ext . getCmp ( 'wxpush' ) ;
this . canedit = enable ;
if ( enable ) {
btnESave . enable ( ) ;
btnESaveAndClose . enable ( ) ;
btnESaveAndNew . enable ( ) ;
btnEAddDetail . enable ( ) ;
btnEDeleteDetail . enable ( ) ;
btnEAddbill . enable ( ) ;
wxpush . enable ( ) ;
} else {
btnESave . disable ( ) ;
btnESaveAndClose . disable ( ) ;
btnESaveAndNew . disable ( ) ;
btnEAddDetail . disable ( ) ;
btnEDeleteDetail . disable ( ) ;
btnEAddbill . disable ( ) ;
wxpush . disable ( ) ;
}
} ,
// #endregion
onExportClick : function ( button , event ) {
if ( this . storeBodyList . getCount ( ) == 0 ) {
return ;
}
var sortstr = '' ;
if ( this . sortfield != '' && this . sortdire != '' ) {
sortstr = this . sortfield + ' ' + this . sortdire ;
}
var billno = _this . formEdit . getForm ( ) . findField ( 'BILLNO' ) . getValue ( ) ;
var sql = " BILLNO='" + billno + "' " ;
Ext . Msg . wait ( '正在组织数据, 请稍侯..' ) ;
Ext . Ajax . request ( {
waitMsg : '正在组织数据...' ,
url : '/Account/Chfee_payapplication/GetBillListPrint' ,
scope : this ,
params : {
condition : sql ,
sort : sortstr
} ,
callback : function ( options , success , response ) {
if ( success ) {
Ext . MessageBox . hide ( ) ;
var jsonresult = Ext . JSON . decode ( response . responseText ) ;
if ( jsonresult . Success ) {
var returnstr = jsonresult . Data ;
var sql1 = returnstr ;
sql1 = sql1 . replace ( /\+/g , "@@@" )
if ( sql1 != '' ) {
GridExportBySql ( sql1 , _this . formname + 'bill' , '付费申请明细.xls' ) ;
}
} 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
} ) ;
}
}
} ) ;
} ,
PrevRecord : function ( ) {
// var modifystr = this.getIsModify();
// if (modifystr != "") {
// Ext.Msg.show({ title: '警告', msg: modifystr + '未保存,如果离开此页,将丢失未保存的更改 ! ! ! ', icon: Ext.Msg.ERROR, buttons: Ext.Msg.OK });
// return;
// }
var j = this . StoreList . indexOf ( this . editRecord ) ;
if ( j == 0 ) { //警告', msg: '已是最前一票'
Ext . Msg . show ( { title : Zi . LAN . Caveat , msg : Zi . LAN . islast , icon : Ext . Msg . ERROR , buttons : Ext . Msg . OK } ) ;
return ;
}
if ( j == this . StoreList . count ) { //警告', msg: '已是最后一票'
Ext . Msg . show ( { title : Zi . LAN . Caveat , msg : Zi . LAN . islast , icon : Ext . Msg . ERROR , buttons : Ext . Msg . OK } ) ;
return ;
}
j = j - 1 ;
this . editRecord = this . StoreList . getAt ( j ) ;
if ( this . opStatus == 'edit' )
condition = " BILLNO='" + this . editRecord . get ( 'BILLNO' ) + "'" ;
this . LoadData ( this . opStatus , condition ) ;
} ,
NextRecord : function ( ) {
// var modifystr = this.getIsModify();
// if (modifystr != "") {
// Ext.Msg.show({ title: Zi.LAN.Caveat, msg: modifystr + '未保存,如果离开此页,将丢失未保存的更改 ! ! ! ', icon: Ext.Msg.ERROR, buttons: Ext.Msg.OK });
// return;
// }
var j = this . StoreList . indexOf ( this . editRecord ) ;
if ( j == ( this . StoreList . data . length - 1 ) ) { //警告', msg: '已是最后一票
Ext . Msg . show ( { title : Zi . LAN . Caveat , msg : Zi . LAN . islast , icon : Ext . Msg . ERROR , buttons : Ext . Msg . OK } ) ;
return ;
}
j = j + 1 ;
this . editRecord = this . StoreList . getAt ( j ) ;
if ( this . opStatus == 'edit' )
condition = " BILLNO='" + this . editRecord . get ( 'BILLNO' ) + "'" ;
this . LoadData ( this . opStatus , condition ) ;
} ,
Print : function ( ) {
var basicForm = this . formEdit . getForm ( ) ;
var BILLSTATUSREF = basicForm . findField ( 'BILLSTATUSREF' ) . value ;
if ( billNo == '*' || billNo == '' ) { //错误', msg: '单据还没有保存,请保存后再打印
Ext . Msg . show ( { title : Zi . LAN . Error , msg : Zi . LAN . djnotsave , icon : Ext . Msg . ERROR , buttons : Ext . Msg . OK } ) ;
return ;
}
var billNo = basicForm . findField ( 'BILLNO' ) . value ;
var sortstr = ' b.VESSEL,b.VOYNO,b.MBLNO ' ;
if ( this . sortfield != '' && this . sortdire != '' ) {
sortstr = this . sortfield + ' ' + this . sortdire ;
}
var printType = 'MSCHFEEPAYAPPLICATION' ;
var sql1 = "SELECT p.*,(select ShowName from [user] where GID=p.APPLICANT) as APPLICANTNAME,(select bankname from info_client_bank where gid=p.CUSTACCOUNTGID) CUSTBANKNAME," ;
sql1 = sql1 + "(select ACCOUNT from info_client_bank where gid=p.CUSTACCOUNTGID) CUSTACCOUNT,(select top 1 DESCRIPTION from info_client where SHORTNAME=p.CUSTOMERNAME) CUSTFULLNAME FROM ch_fee_payapplication p WHERE BILLNO='" + billNo + "'" ;
var sql2 = "SELECT c.GID,c.BSNO,c.FEEID,c.FEENAME,c.CURRENCY,c.AMOUNT,c.DOAMOUNT,c.ORIGCURRENCY,c.ORIGAMOUNT,c.EXCHANGERATE,FEETYPE " ;
sql2 = sql2 + ",b.CUSTOMERNAME,b.VESSEL,b.VOYNO,b.ETD,b.PORTLOAD" ;
sql2 = sql2 + " ,b.PORTDISCHARGE,b.INPUTBY,b.OP,b.CUSTSERVICE,b.DOC,b.SALE,b.MBLNO,b.CUSTNO"
sql2 = sql2 + " FROM ch_fee_do c left join v_op_bill b on (b.bsno=c.bsno)" ;
sql2 = sql2 + " WHERE C.BILLNO='" + billNo + "' ORDER BY " + sortstr ;
var sql3 = "" ;
var sql4 = "" ;
var sql5 = "" ;
var sql6 = "" ;
Ext . Ajax . request ( {
waitMsg : '' ,
url : '/Account/Chfee_payapplication/GetPrint' ,
params : {
billno : billNo
} ,
callback : function ( options , success , response ) {
if ( success ) {
var jsonresult = Ext . JSON . decode ( response . responseText ) ;
if ( jsonresult . Success ) {
PrintComm ( printType , sql1 , sql2 , sql3 , sql4 , sql5 , sql6 ) ;
Ext . Ajax . request ( {
waitMsg : '' ,
url : '/Account/Chfee_payapplication/UpdatePrint' ,
params : {
billnos : "'" + billNo + "'"
} ,
callback : function ( options , success , response ) {
if ( success ) {
} else {
}
} ,
scope : this
} ) ;
} else { //错误
Ext . Msg . show ( { title : Zi . LAN . Error , msg : jsonresult . Message , icon : Ext . Msg . ERROR , buttons : Ext . Msg . OK } ) ;
}
} else {
}
} ,
scope : this
} ) ;
}
, onSelectFee : function ( button , event ) {
//Ext.getCmp("zongshu").setText("1234");
var selectedRecords = this . gridAddFeeList . selModel . getSelection ( ) ;
var sum = 0 ;
var usdsum = 0 ;
for ( var i = 0 ; i < selectedRecords . length ; i ++ ) {
var rec = selectedRecords [ i ] ;
if ( rec . data . Currency == 'USD' ) {
var stlamount = rec . get ( "StlAmount" ) ;
if ( rec . data . FeeType == '1' )
usdsum = Add ( usdsum , - stlamount ) ;
else
usdsum = Add ( usdsum , stlamount ) ;
} else if ( rec . data . Currency == 'RMB' ) {
var stlamount = rec . get ( "StlAmount" ) ;
if ( rec . data . FeeType == '1' )
sum = Add ( sum , - stlamount ) ;
else
sum = Add ( sum , stlamount ) ;
}
}
var sumstr = '' ;
if ( sum != 0 ) {
sumstr = 'RMB:' + sum ;
}
if ( usdsum != 0 ) {
sumstr = sumstr + ' USD:' + usdsum ;
}
Ext . getCmp ( "zongshu" ) . setText ( Zi . LAN . selectmoney + " :" + sumstr ) ;
}
, CanSaveFile ( ) {
var replacepayment = this . formEdit . getForm ( ) . findField ( "IsReplacePayment" ) . getValue ( ) ;
if ( BillState == '未提交' || BillState == '审核驳回' || ( BillState == '审核通过' && replacepayment == true ) ) {
return true ;
} else {
Ext . MessageBox . alert ( Zi . LAN . Prompt , Zi . LAN . noallowxiugai ) ; //提示', '当前状态不允许修改附件列表
return false ;
}
} , CanDelFile ( ) {
if ( BillState == '未提交' || BillState == '审核驳回' ) {
return true ;
} else {
Ext . MessageBox . alert ( Zi . LAN . Prompt , Zi . LAN . noallowxiugai ) ; //提示', '当前状态不允许修改附件列表
return false ;
}
} , onAddFileClick : function ( ) {
if ( ! this . CanSaveFile ( ) ) { //未提交
//Ext.MessageBox.alert(Zi.LAN.Prompt, Zi.LAN.noallowxiugai); //提示', '当前状态不允许修改附件列表
return ;
}
if ( BillNo == '' || BillNo == '*' ) {
Ext . MessageBox . alert ( Zi . LAN . Prompt , Zi . LAN . pscnum ) ; //提示', '请先生成申请编号!
return ;
}
var winAccess = new Shipping . FileUpload ( { } ) ;
winAccess . BillNo = BillNo ;
winAccess . show ( ) ;
} , onDelFileClick : function ( ) {
if ( ! this . CanDelFile ( ) ) { //未提交
//Ext.MessageBox.alert(Zi.LAN.Prompt, Zi.LAN.noallowxiugai); //提示', '当前状态不允许修改附件列表!
return ;
}
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 ) {
panelEdit . LoadData ( 'edit' , "BILLNO='" + BillNo + "'" ) ;
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 ) ;
}
} ) ;