Ext . namespace ( 'Shipping' ) ;
Shipping . MsChPayInvSettlementEdit = function ( config ) {
Ext . applyIf ( this , config ) ;
this . initUIComponents ( ) ;
window . Shipping . MsChPayInvSettlementEdit . superclass . constructor . call ( this ) ;
} ;
Ext . extend ( Shipping . MsChPayInvSettlementEdit , Ext . Panel , {
ParentWin : null ,
OpStatus : 'add' ,
StoreList : null ,
EditRecord : null ,
addstore : false ,
PageSize : 30 ,
initUIComponents : function ( ) {
this . serialNo = 0 ;
this . workSerialNo = 0 ;
this . bodyDel = [ ] ;
this . FeeSql = '' ;
this . BillSql = '' ;
this . DuiBillSql = '' ;
this . IsDebit = '0' ;
this . sortfield = '' ;
this . sortdire = '' ;
this . MsPeriod = null ;
this . ISRATESET = 0 ;
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'
}
}
} ) ;
this . StoreLockOp = Ext . create ( 'DsExt.ux.RefTableStore' , {
model : 'MsFeeOP' ,
proxy : { url : '/MvcShipping/MsBaseInfo/GetOpIDRang' }
} ) ;
// this.StoreLockOp.load({ params: { optype: "modPayFeeSettlementLock"} });
this . StoreUnLockOp = Ext . create ( 'DsExt.ux.RefTableStore' , {
model : 'MsFeeOP' ,
proxy : { url : '/MvcShipping/MsBaseInfo/GetOpIDRang' }
} ) ;
// this.StoreUnLockOp.load({ params: { optype: "modPayFeeSettlementUnLock"} });
//#region 编辑form
//枚举参照相关(编辑form)
//表参照相关(编辑form)
this . storeCustCode = Ext . create ( 'DsExt.ux.RefTableStore' , {
model : 'DsShipping.ux.CustomRefModel' ,
proxy : { url : '/CommMng/BasicDataRef/GetCustomRefList' }
} ) ;
this . storeCustCode . load ( { params : { condition : "" } } ) ;
this . comboxCustCode = Ext . create ( 'DsExt.ux.RefTableCombox' , {
fieldLabel : Zi . LAN . CustomerName ,
store : this . storeCustCode ,
allowBlank : false ,
forceSelection : true ,
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 ) ;
}
var CUSTBANK = this . formEdit . getForm ( ) . findField ( 'CUSTBANK' ) ;
var CUSTACCOUNT = this . formEdit . getForm ( ) . findField ( 'CUSTACCOUNT' ) ;
var CURR = this . formEdit . getForm ( ) . findField ( 'CURR' ) . getValue ( ) ;
if ( CURR == 'RMB' ) {
this . storecustbank . load ( { params : { condition : " CURRENCY='RMB' AND LINKID=(SELECT TOP 1 GID FROM INFO_CLIENT WHERE SHORTNAME='" + CUSTOMERNAME + "')" } ,
callback : function ( r , options , success ) {
if ( success ) {
if ( r . length != 0 ) {
CUSTBANK . setValue ( this . storecustbank . data . items [ 0 ] . data . GID ) ;
CUSTACCOUNT . setValue ( this . storecustbank . data . items [ 0 ] . data . ACCOUNT ) ;
}
}
} ,
scope : this
} ) ;
} else if ( CURR == 'USD' ) {
this . storecustbank . load ( { params : { condition : " CURRENCY='USD' AND LINKID=(SELECT TOP 1 GID FROM INFO_CLIENT WHERE SHORTNAME='" + CUSTOMERNAME + "')" } ,
callback : function ( r , options , success ) {
if ( success ) {
if ( r . length != 0 ) {
CUSTBANK . setValue ( this . storecustbank . data . items [ 0 ] . data . GID ) ;
CUSTACCOUNT . setValue ( this . storecustbank . data . items [ 0 ] . data . ACCOUNT ) ;
}
}
} ,
scope : this
} ) ;
} else {
this . storecustbank . load ( { params : { condition : " LINKID=(SELECT TOP 1 GID FROM INFO_CLIENT WHERE SHORTNAME='" + CUSTOMERNAME + "')" } ,
callback : function ( r , options , success ) {
if ( success ) {
if ( r . length != 0 ) {
CUSTBANK . setValue ( this . storecustbank . data . items [ 0 ] . data . GID ) ;
CUSTACCOUNT . setValue ( this . storecustbank . data . items [ 0 ] . data . ACCOUNT ) ;
}
}
} ,
scope : this
} ) ;
}
}
}
}
} ) ;
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 ,
labelWidth : 70 ,
flex : 0.5 ,
allowBlank : false ,
name : 'CURR' ,
valueField : 'CURR' ,
displayField : 'CURR' ,
listeners : {
scope : this ,
'select' : function ( combo , records , eOpts ) {
if ( records . length > 0 ) {
var CUST = this . formEdit . getForm ( ) . findField ( 'CUSTOMERNAME' ) . getValue ( ) ;
var recs = DsStoreQueryBy ( this . storeCustCode , 'CustName' , CUST ) ;
var CUSTBANK = this . formEdit . getForm ( ) . findField ( 'CUSTBANK' ) ;
var CUSTACCOUNT = this . formEdit . getForm ( ) . findField ( 'CUSTACCOUNT' ) ;
var CURR = this . formEdit . getForm ( ) . findField ( 'CURR' ) . getValue ( ) ;
var curr = this . formACCOUNTS . getForm ( ) . findField ( 'ACCOUNTS_CURRENCY' ) ;
curr . setValue ( records [ 0 ] . data . CURR ) ;
var curr = this . formPREPAY . getForm ( ) . findField ( 'PREPAY_CURRENCY' ) ;
curr . setValue ( records [ 0 ] . data . CURR ) ;
var curr = this . formAHSR . getForm ( ) . findField ( 'AHSR_CURRENCY' ) ;
curr . setValue ( records [ 0 ] . data . CURR ) ;
var curr = this . formFINANCIAL . getForm ( ) . findField ( 'FINANCIAL_CURRENCY' ) ;
curr . setValue ( records [ 0 ] . data . CURR ) ;
var curr = this . formADVANCE . getForm ( ) . findField ( 'ADVANCE_CURRENCY' ) ;
curr . setValue ( records [ 0 ] . data . CURR ) ;
if ( CURR == 'RMB' ) {
this . formEdit . getForm ( ) . findField ( 'RATE' ) . setValue ( 1 ) ;
} else {
var FFrecords = DsStoreQueryBy ( this . StoreDateCurr , 'CURR' , CURR ) ;
if ( FFrecords . getCount ( ) > 0 ) {
var ffdata = FFrecords . getAt ( 0 ) . data ;
var DEFRATE = ffdata . DEFRATE ;
this . formEdit . getForm ( ) . findField ( 'RATE' ) . setValue ( DEFRATE ) ;
} else {
var DFrecords = DsStoreQueryBy ( this . StoreCurr , 'CURR' , CURR ) ;
if ( DFrecords . getCount ( ) > 0 ) {
var dfdata = DFrecords . getAt ( 0 ) . data ;
var DEFRATE = dfdata . DEFRATE ;
this . formEdit . getForm ( ) . findField ( 'RATE' ) . setValue ( DEFRATE ) ;
} else {
this . formEdit . getForm ( ) . findField ( 'RATE' ) . setValue ( 1 ) ;
}
}
}
if ( CURR == 'RMB' ) {
this . storecustbank . load ( { params : { condition : " CURRENCY='RMB' AND LINKID=(SELECT TOP 1 GID FROM INFO_CLIENT WHERE SHORTNAME='" + CUST + "')" } ,
callback : function ( r , options , success ) {
if ( success ) {
if ( r . length != 0 ) {
CUSTBANK . setValue ( this . storecustbank . data . items [ 0 ] . data . GID ) ;
CUSTACCOUNT . setValue ( this . storecustbank . data . items [ 0 ] . data . ACCOUNT ) ;
}
}
} ,
scope : this
} ) ;
} else if ( CURR == 'USD' ) {
this . storecustbank . load ( { params : { condition : " CURRENCY='USD' AND LINKID=(SELECT TOP 1 GID FROM INFO_CLIENT WHERE SHORTNAME='" + CUST + "')" } ,
callback : function ( r , options , success ) {
if ( success ) {
if ( r . length != 0 ) {
CUSTBANK . setValue ( this . storecustbank . data . items [ 0 ] . data . GID ) ;
CUSTACCOUNT . setValue ( this . storecustbank . data . items [ 0 ] . data . ACCOUNT ) ;
}
}
} ,
scope : this
} ) ;
} else {
this . storecustbank . load ( { params : { condition : " LINKID=(SELECT TOP 1 GID FROM INFO_CLIENT WHERE SHORTNAME='" + CUST + "')" } ,
callback : function ( r , options , success ) {
if ( success ) {
if ( r . length != 0 ) {
CUSTBANK . setValue ( this . storecustbank . data . items [ 0 ] . data . GID ) ;
CUSTACCOUNT . setValue ( this . storecustbank . data . items [ 0 ] . data . ACCOUNT ) ;
}
}
} ,
scope : this
} ) ;
}
}
}
}
} ) ;
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 . SettlementType ,
store : this . StoreStlMode ,
forceSelection : true ,
name : 'SETTLETYPE' ,
valueField : 'STLCODE' ,
displayField : 'STLNAME'
} ) ;
this . StoreBANK = Ext . create ( 'DsExt.ux.RefTableStore' , {
model : 'BANK' ,
proxy : { url : '/MvcShipping/MsBaseInfo/GetBANKList' }
} ) ;
this . StoreBANK . load ( { params : { condition : "" } } ) ;
this . comboxBANK = Ext . create ( 'DsExt.ux.RefTableCombox' , {
fieldLabel : Zi . LAN . BankAccount ,
store : this . StoreBANK ,
forceSelection : true ,
name : 'ACCOUNT' ,
valueField : 'GID' ,
displayField : 'BANKACCOUNT'
} ) ;
this . storeSTLCATEGROY = Ext . create ( 'DsExt.ux.RefEnumStore' , { } ) ;
this . storeSTLCATEGROY . load ( { params : { enumTypeId : 97020 } } ) ;
this . comboxSTLCATEGROY = Ext . create ( 'DsExt.ux.RefTableCombox' , {
fieldLabel : Zi . LAN . ServiceCategory ,
name : 'STLCATEGROY' ,
store : this . storeSTLCATEGROY ,
valueField : 'EnumValueName' ,
displayField : 'EnumValueName' ,
forceSelection : true
} ) ;
this . storecustbank = Ext . create ( 'DsExt.ux.RefTableStore' , {
model : 'MsInfoClientBankModel' ,
proxy : { url : '/MvcShipping/MsInfoClient/GetBankList' }
} ) ;
this . comboxCustBank = Ext . create ( 'DsExt.ux.RefTableCombox' , {
fieldLabel : Zi . LAN . CustomerBank ,
store : this . storecustbank ,
labelWidth : 70 ,
forceSelection : true ,
name : 'CUSTBANK' ,
valueField : 'GID' ,
displayField : 'ACCOUNTNAMEREF' ,
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 ) ;
}
}
}
} ) ;
//编辑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 : 'BILLDATE' ,
name : 'BILLDATE' , flex : 0 , hidden : true , margins : '0'
} , {
fieldLabel : 'SETTLEUSER' ,
name : 'SETTLEUSER' , flex : 0 , hidden : true , margins : '0'
} , {
fieldLabel : 'COMPANYID' ,
name : 'COMPANYID' , flex : 0 , hidden : true , margins : '0'
} , {
fieldLabel : 'SETTLEMODE' ,
name : 'SETTLEMODE' , flex : 0 , hidden : true , margins : '0'
} , {
fieldLabel : 'BILLTYPE' ,
name : 'BILLTYPE' , flex : 0 , hidden : true , margins : '0'
} , {
fieldLabel : 'ISEXPORT' ,
name : 'ISEXPORT' , flex : 0 , hidden : true , margins : '0'
} , {
fieldLabel : 'CREATEUSER' ,
name : 'CREATEUSER' , flex : 0 , hidden : true , margins : '0'
} , {
fieldLabel : 'CREATETIME' ,
name : 'CREATETIME' , flex : 0 , hidden : true , margins : '0'
} , {
fieldLabel : 'REMITTANCE' ,
name : 'REMITTANCE' , flex : 0 , hidden : true , margins : '0'
} , {
fieldLabel : 'BUYRATE' ,
name : 'BUYRATE' , flex : 0 , hidden : true , margins : '0'
} , {
fieldLabel : 'SELLRATE' ,
name : 'SELLRATE' , flex : 0 , hidden : true , margins : '0'
} , {
fieldLabel : 'STLAMOUNT' ,
name : 'STLAMOUNT' , flex : 0 , hidden : true , margins : '0'
} , {
fieldLabel : 'HXBILLNO' ,
name : 'HXBILLNO' , flex : 0 , hidden : true , margins : '0'
} ,
{
fieldLabel : Zi . LAN . BillNo ,
readOnly : true ,
labelWidth : 70 ,
name : 'BILLNO'
} , {
fieldLabel : Zi . LAN . BillStatus ,
readOnly : true ,
name : 'BILLSTATUSREF'
} , this . comboxCustCode , {
fieldLabel : Zi . LAN . SettlementTime ,
format : 'Y-m-d H:i:s' ,
xtype : 'datefield' ,
name : 'SETTLETIME'
} , {
fieldLabel : Zi . LAN . SettlementUser ,
readOnly : true ,
name : 'SETTLEUSERREF'
}
]
} , {
xtype : 'container' ,
layout : 'hbox' ,
defaultType : 'textfield' ,
items : [ this . comboxCurr , {
fieldLabel : Zi . LAN . Money ,
flex : 0.5 ,
labelWidth : 40 ,
readOnly : true ,
name : 'AMOUNT' ,
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 ;
}
} , this . comboxStlMode , this . comboxBANK , {
fieldLabel : Zi . LAN . SettlementNo ,
flex : 1 ,
name : 'SETTLENO'
} , {
fieldLabel : Zi . LAN . VoucherNo _PayBL ,
name : 'VOUCHERNO'
} ]
} , {
xtype : 'container' ,
layout : 'hbox' ,
defaultType : 'textfield' ,
items : [ this . comboxCustBank , {
fieldLabel : Zi . LAN . CustomerAccount ,
flex : 1 ,
name : 'CUSTACCOUNT'
} , {
fieldLabel : Zi . LAN . ExchangeRate ,
flex : 1 ,
name : 'RATE'
} , this . comboxSTLCATEGROY , {
fieldLabel : Zi . LAN . Remark ,
flex : 1 ,
name : 'REMARK'
} ]
}
] //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 : 'btnESave' ,
text : Zi . LAN . Save ,
iconCls : "btnsave" ,
handler : function ( button , event ) {
this . Save ( '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' ) ;
} ,
scope : this
} ,
'-' ,
{
id : 'btnESaveAndNew' ,
text : Zi . LAN . SaveAndNew ,
handler : function ( button , event ) {
this . Save ( '2' ) ;
this . GetEditStatus ( ) ;
} ,
scope : this
} ,
'-' ,
{
id : 'btnENew' ,
text : Zi . LAN . New ,
handler : function ( button , event ) {
this . LoadData ( 'add' , '*' ) ;
} ,
scope : this
} ,
'-' ,
{
id : 'btnEDeleteAndNew' ,
text : Zi . LAN . DeleteAndNew ,
handler : function ( button , event ) {
this . Delete ( ) ;
} ,
scope : this
} , '-' , {
id : 'btnSubmitAudit' ,
text : Zi . LAN . SubmitAudit ,
tooltip : Zi . LAN . SubmitAudit ,
handler : function ( button , event ) {
this . onSubmitAuditClick ( ) ;
} ,
scope : this
} , '-' , {
id : 'btnSubmitAuditBack' ,
text : Zi . LAN . SubmitAuditBack ,
tooltip : Zi . LAN . SubmitAuditBack ,
handler : function ( button , event ) {
this . onSubmitAuditBackClick ( ) ;
} ,
scope : this
} , '-' ,
{
text : Zi . LAN . AddCwVouchers ,
id : "btnAddCwVouchers" ,
iconCls : "btnadd" ,
handler : function ( button , event ) {
this . onAddCwVouchers ( ) ;
} ,
scope : this
} , '-' ,
{
text : Zi . LAN . CreateCheque ,
id : "btnCreateCheque" ,
iconCls : "btnadd" ,
handler : function ( button , event ) {
var ISCHEQUE = this . formEdit . getForm ( ) . findField ( 'ISCHEQUE' ) . getValue ( ) ;
if ( ISCHEQUE == '是' ) {
Ext . Msg . show ( { title : '提示' , msg : '已生成支票,不允许重复生成!' , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
return ;
}
var openSet = "height=400, 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 = "/Account/Chfee_cheque/Edit?handle=check&bstype=stledit" ;
window . open ( openUrl , openType , openSet ) ;
} ,
scope : this
}
]
} ) ; //end 按钮Toolbar
//#endregion
//#region 明细表
//明细表表格相关
this . GridCheckBoxModel = Ext . create ( 'Ext.selection.CheckboxModel' ) ;
//明细表-数据集
this . storeBodyList = Ext . create ( 'Ext.data.Store' , {
model : 'MsChInvoicehexiao' ,
remoteSort : true ,
proxy : {
type : 'ajax' ,
url : '/Account/Chfee_settlement/GetPayInvdetailList' ,
reader : {
id : 'BILLNO' ,
root : 'data' ,
totalProperty : 'totalCount'
}
}
} ) ;
//明细表表格
this . gridListCellEditing = Ext . create ( 'Ext.grid.plugin.CellEditing' , {
clicksToEdit : 1
} ) ;
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 ,
tbar : [ {
text : Zi . LAN . DelFaPiaoDetail ,
tooltip : Zi . LAN . DelFaPiaoDetail ,
id : 'btndeldetail' ,
iconCls : "btndeletedetail" ,
handler : function ( button , event ) {
this . onDeleteClick ( button , event , 1 ) ;
} ,
scope : this
} ] ,
columns : [ {
sortable : true ,
dataIndex : 'BILLNO' ,
header : Zi . LAN . FaPiaoHeXiaoNo ,
width : 120
} , {
sortable : true ,
dataIndex : 'BILLSTATUS' ,
header : Zi . LAN . BillStatus ,
width : 80
} , {
sortable : true ,
dataIndex : 'INVDATE' ,
header : Zi . LAN . FaPiaoDate ,
width : 100
} , {
sortable : true ,
dataIndex : 'INVNO' ,
header : Zi . LAN . InvoiceNumber ,
width : 120
} , {
sortable : true ,
dataIndex : 'CUSTOMERNAME' ,
header : Zi . LAN . KPDanWei ,
width : 160
} , {
sortable : true ,
dataIndex : 'CURR' ,
header : Zi . LAN . Currency ,
width : 60
} , {
sortable : true ,
dataIndex : 'AMOUNT' ,
header : Zi . LAN . Money ,
align : 'right' ,
width : 120 ,
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 : 'INVOICECUSTNAME' ,
header : Zi . LAN . FaPiaoTaiTou ,
width : 160
} , {
sortable : true ,
dataIndex : 'OP' ,
header : Zi . LAN . VerificationUser ,
width : 160
} , {
sortable : true ,
dataIndex : 'REMARKS' ,
header : Zi . LAN . Remark ,
width : 160
}
]
} ) ;
this . storeBodydetail = Ext . create ( 'Ext.data.Store' , {
model : 'Chfee_do_detail' ,
remoteSort : true ,
proxy : {
type : 'ajax' ,
url : '/Account/Chfee_settlement/GetAppBodyList' ,
reader : {
root : 'data' ,
totalProperty : 'totalCount'
}
}
} ) ;
this . gridBodydetail = new Ext . grid . GridPanel ( {
store : this . storeBodydetail ,
enableHdMenu : false ,
region : 'center' ,
loadMask : { msg : Zi . LAN . LoadData } ,
trackMouseOver : true ,
disableSelection : false ,
tbar : [ {
xtype : 'label' ,
width : 120 ,
height : 22 ,
text : Zi . LAN . ChargeDetails
} ] ,
columns : [ {
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 . LadingNumber ,
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 . FeeTypeRef ,
width : 40
} , {
sortable : true ,
dataIndex : 'AMOUNT' ,
header : Zi . LAN . SettlementAmount ,
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 . ConvertExchangeRate ,
width : 80
} , {
sortable : true ,
dataIndex : 'ORIGAMOUNT' ,
header : Zi . LAN . OriginalMoney ,
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 : 'SALE' ,
header : Zi . LAN . LanhuoPeople ,
width : 80
} , {
sortable : true ,
dataIndex : 'ACCDATE' ,
header : '会计期间' ,
width : 80
}
]
} ) ;
this . gridBodydetail . addListener ( 'sortchange' , function ( ct , column , direction , eOpts ) {
this . sortfield = column . dataIndex ;
this . sortdire = direction ;
} , this ) ;
this . storeAddFeeList = Ext . create ( 'Ext.data.Store' , {
pageSize : this . PageSize ,
model : 'MsChInvoicehexiao' ,
remoteSort : true ,
proxy : {
type : 'ajax' ,
url : '/Account/Chfee_settlement/GetPayInvList' ,
reader : {
id : 'BILLNO' ,
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 = this ;
this . CurrGroup = new Ext . form . RadioGroup ( {
id : 'CurrGroup' ,
xtype : 'radiogroup' ,
fieldLabel : Zi . LAN . ExchangeCurrency ,
columns : 2 ,
items : [
{ boxLabel : 'RMB' , name : 'Curr' , inputValue : 'RMB' , checked : true } ,
{ boxLabel : 'USD' , name : 'Curr' , inputValue : 'USD' }
]
} ) ;
this . gridAddFeeList = new Ext . grid . GridPanel ( {
store : this . storeAddFeeList ,
enableHdMenu : false ,
region : 'west' ,
split : true ,
width : 860 ,
loadMask : { msg : Zi . LAN . LoadData } ,
trackMouseOver : true ,
disableSelection : false ,
plugins : [ this . cellEditingFee ] ,
selModel : this . AddFeeGridCheckBoxModel ,
tbar : [ {
text : Zi . LAN . AddFaPiaoDetail ,
tooltip : Zi . LAN . AddFaPiaoDetail ,
iconCls : "btnadddetail" ,
id : "btnadddetail" ,
handler : function ( button , event ) {
this . onAddDetailClick ( button , event ) ;
} ,
scope : this
} ] ,
columns : [ {
sortable : true ,
dataIndex : 'BILLNO' ,
header : Zi . LAN . FaPiaoHeXiaoNo ,
width : 120
} , {
sortable : true ,
dataIndex : 'BILLSTATUS' ,
header : Zi . LAN . BillStatus ,
width : 80
} , {
sortable : true ,
dataIndex : 'INVDATE' ,
header : Zi . LAN . FaPiaoDate ,
width : 100
} , {
sortable : true ,
dataIndex : 'INVNO' ,
header : Zi . LAN . InvoiceNumber ,
width : 120
} , {
sortable : true ,
dataIndex : 'CUSTOMERNAME' ,
header : Zi . LAN . KPDanWei ,
width : 160
} , {
sortable : true ,
dataIndex : 'CURR' ,
header : Zi . LAN . Currency ,
width : 60
} , {
sortable : true ,
dataIndex : 'AMOUNT' ,
header : Zi . LAN . Money ,
align : 'right' ,
width : 120 ,
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 : 'INVOICECUSTNAME' ,
header : Zi . LAN . FaPiaoTaiTou ,
width : 160
} , {
sortable : true ,
dataIndex : 'OP' ,
header : Zi . LAN . VerificationUser ,
width : 160
} , {
sortable : true ,
dataIndex : 'REMARKS' ,
header : Zi . LAN . Remark ,
width : 160
}
] ,
// paging bar on the bottom
bbar : Ext . create ( 'Ext.PagingToolbar' , {
store : this . storeAddFeeList ,
displayInfo : true ,
displayMsg : Zi . LAN . FenYe ,
emptyMsg : Zi . LAN . DataEmptyMsg
} )
} ) ;
this . gridAddFeeList . on ( 'edit' , function ( editor , e , eOpts ) {
this . gridAddFeeListAfterEdit ( editor , e , eOpts ) ;
} , this ) ;
_this = this ;
this . storeAddBodydetail = Ext . create ( 'Ext.data.Store' , {
model : 'Chfee_do_detail' ,
remoteSort : true ,
proxy : {
type : 'ajax' ,
url : '/Account/Chfee_Invoicehexiao/GetBillList' ,
reader : {
root : 'data' ,
totalProperty : 'totalCount'
}
}
} ) ;
this . gridAddBodydetail = new Ext . grid . GridPanel ( {
store : this . storeAddBodydetail ,
enableHdMenu : false ,
region : 'center' ,
loadMask : { msg : Zi . LAN . LoadData } ,
trackMouseOver : true ,
disableSelection : false ,
tbar : [ {
xtype : 'label' ,
width : 120 ,
height : 22 ,
text : Zi . LAN . ChargeDetails
} ] ,
columns : [ {
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 . LadingNumber ,
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 . FeeTypeRef ,
width : 40
} , {
sortable : true ,
dataIndex : 'AMOUNT' ,
header : Zi . LAN . ApplyAmount ,
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 : 'DOAMOUNT' ,
header : Zi . LAN . SettlementAmount ,
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 : 'ORIGAMOUNT' ,
header : Zi . LAN . OriginalMoney ,
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 : 'SALE' ,
header : Zi . LAN . LanhuoPeople ,
width : 80
}
]
} ) ;
this . storeCustCodefee = Ext . create ( 'DsExt.ux.RefTableStore' , {
model : 'DsShipping.ux.CustomRefModel' ,
proxy : { url : '/CommMng/BasicDataRef/GetCustomRefList' }
} ) ;
this . storeCustCodefee . load ( { params : { condition : "" } } ) ;
this . comboxAddCustCode = Ext . create ( 'DsExt.ux.RefTableCombox' , {
fieldLabel : Zi . LAN . KPDanWei ,
store : this . storeCustCodefee ,
forceSelection : true ,
name : 'CUSTNAME' ,
valueField : 'CustName' ,
displayField : 'CodeAndName' ,
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 ,
flex : 0.5 ,
labelWidth : 60 ,
forceSelection : true ,
name : 'Currency' ,
valueField : 'CURR' ,
displayField : 'CURR' ,
enableKeyEvents : true ,
listeners : {
keyup : function ( field , e ) {
if ( e . getKey ( ) == e . ENTER ) {
_this . onRefreshClick ( ) ;
}
}
}
} ) ;
this . storeCurrExrate = Ext . create ( 'Ext.data.Store' , {
fields : [ 'CURR' , 'EXRATE' , 'DFEXRATE' ]
} ) ;
this . formSearch = Ext . widget ( 'form' , {
frame : true ,
region : 'north' ,
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 : [ this . comboxAddCustCode , {
fieldLabel : Zi . LAN . FaPiaoHeXiaoNo ,
name : 'CustomNo' ,
enableKeyEvents : true ,
listeners : {
specialkey : function ( field , e ) {
if ( e . getKey ( ) == e . ENTER ) {
_this . onRefreshClick ( ) ;
}
}
}
} , {
fieldLabel : Zi . LAN . Number ,
name : 'BsNo' ,
enableKeyEvents : true ,
listeners : {
specialkey : function ( field , e ) {
if ( e . getKey ( ) == e . ENTER ) {
_this . onRefreshClick ( ) ;
}
}
}
} , this . comboxCurr2 , {
fieldLabel : Zi . LAN . FromFaPiaoDate ,
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 . ToFaPiaoDate ,
format : 'Y-m-d' ,
xtype : 'datefield' ,
name : 'ExpDateEnd' ,
enableKeyEvents : true ,
listeners : {
specialkey : function ( field , e ) {
if ( e . getKey ( ) == e . ENTER ) {
_this . onRefreshClick ( ) ;
}
}
}
} , {
fieldLabel : Zi . LAN . InvHead ,
//xtype: 'datefield',
name : 'InvHead' ,
enableKeyEvents : true ,
listeners : {
specialkey : function ( field , e ) {
if ( e . getKey ( ) == e . ENTER ) {
_this . onRefreshClick ( ) ;
}
}
}
} , {
xtype : 'button' ,
width : 90 ,
text : Zi . LAN . SearchOrRefresh ,
iconCls : "btnrefresh" ,
handler : function ( button , event ) {
this . onRefreshClick ( ) ;
} ,
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 : 80
} , {
sortable : true , hidden : false ,
dataIndex : 'UpdateTime' , readOnly : true ,
header : Zi . LAN . FileDate , //上传日期
width : 80
} , {
sortable : true , hidden : false ,
dataIndex : 'Operator' , readOnly : true ,
header : Zi . LAN . FilePerson , //上传者
width : 80
} , {
sortable : true , hidden : true ,
dataIndex : 'File_Name' , readOnly : true ,
header : Zi . LAN . FileWName , //文件物理名称
width : 80
} ,
{
sortable : true , hidden : true ,
dataIndex : 'File_Path' ,
header : 'File_Path' ,
width : 80
} , {
xtype : 'actioncolumn' ,
width : 50 ,
text : Zi . LAN . Operating , //操作
items : [ {
icon : '/images/icons/btnSearch.gif' , // Use a URL in the icon config
tooltip : '预览' ,
handler : function ( grid , rowIndex , colIndex ) {
var rec = grid . getStore ( ) . getAt ( rowIndex ) ;
var filePath = "/Areas/Account/Files/" + rec . get ( 'BillNo' ) + '/' + rec . get ( 'File_Name' ) + '?a=' + Math . random ( ) ;
var imgView = new Shipping . FileView ( { filePath : filePath } ) ;
imgView . show ( ) ;
}
} ]
}
] ;
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
} ) ;
this . page _2 = new Ext . Panel ( {
id : "page_2" ,
title : Zi . LAN . filefujina , //附件上传
autoScroll : true ,
layout : "border" ,
region : 'center' ,
//closable:true,
items : [ this . fileGrid ]
} ) ;
//#endregion附件上传
this . panelService = new Ext . Panel ( {
layout : "border" ,
region : 'west' ,
split : true ,
width : 860 ,
margin : '2 2' ,
items : [ this . gridList ]
} ) ;
this . panelBodydetail = new Ext . Panel ( {
layout : "border" ,
region : 'center' ,
margin : '2 2' ,
items : [ this . gridBodydetail ]
} ) ;
this . panelAddBodydetail = new Ext . Panel ( {
layout : "border" ,
region : 'center' ,
margin : '2 2' ,
items : [ this . gridAddBodydetail ]
} ) ;
this . paneldetail = new Ext . Panel ( {
// title: '结算明细',
layout : "border" ,
height : 260 ,
region : "north" ,
split : true ,
items : [
this . panelService , this . panelBodydetail
]
} ) ;
this . panelAddService = new Ext . Panel ( {
layout : "border" ,
region : 'center' ,
margin : '2 2' ,
items : [ this . gridAddFeeList , this . panelAddBodydetail ]
} ) ;
this . paneladd = new Ext . Panel ( {
title : Zi . LAN . AddPaySettlementDetail ,
layout : "border" ,
// region: 'south',
region : "center" ,
// height: 420,
items : [
this . formSearch , this . panelAddService
]
} ) ;
//#endregion 明细表
//#region 预收预付
this . formACCOUNTS = Ext . widget ( 'form' , {
anchor : '20% 100%' ,
columnWidth : . 20 ,
frame : true ,
trackResetOnLoad : true ,
bodyPadding : 5 ,
title : Zi . LAN . BookKeepingData ,
trackResetOnLoad : true ,
fieldDefaults : {
margins : '2 2 2 2' ,
labelAlign : 'right' ,
flex : 1 ,
labelWidth : 40 ,
msgTarget : 'qtip'
} ,
items : [
{ //fieldset 1
xtype : 'fieldset' ,
defaultType : 'textfield' ,
layout : 'anchor' ,
defaults : {
anchor : '100%'
} ,
items : [ {
xtype : 'container' ,
layout : 'hbox' ,
defaultType : 'textfield' ,
items : [ {
fieldLabel : Zi . LAN . Currency ,
labelWidth : 40 ,
readOnly : true ,
name : 'ACCOUNTS_CURRENCY'
}
] //end items(fieldset 1)
} , {
xtype : 'container' ,
layout : 'hbox' ,
defaultType : 'textfield' ,
items : [ {
fieldLabel : Zi . LAN . ExchangeRate ,
labelWidth : 40 ,
name : 'ACCOUNTS_RATE'
}
] //end items(fieldset 1)
} , {
xtype : 'container' ,
layout : 'hbox' ,
defaultType : 'textfield' ,
items : [ {
fieldLabel : Zi . LAN . Money ,
labelWidth : 40 ,
name : 'ACCOUNTS_MONEY' ,
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 ;
} ,
listeners : {
scope : this ,
'blur' : function ( textfield , eOpts ) {
var curr = this . formPREPAY . getForm ( ) . findField ( 'PREPAY_MONEY' ) ;
var allamount = textfield . value ;
var amount = this . formEdit . getForm ( ) . findField ( 'AMOUNT' ) . getValue ( ) ;
var aftamount = parseFloat ( allamount ) - parseFloat ( amount ) ;
curr . setValue ( aftamount ) ;
this . formACCOUNTS . getForm ( ) . findField ( 'ACCOUNTS_MONEY' ) . setValue ( amount ) ;
var financialamount = this . formFINANCIAL . getForm ( ) . findField ( 'FINANCIAL_MONEY' ) . getValue ( ) ;
var advanceamount = this . formADVANCE . getForm ( ) . findField ( 'ADVANCE_MONEY' ) . getValue ( ) ;
amount = parseFloat ( allamount ) . add ( parseFloat ( - advanceamount ) ) ;
amount = parseFloat ( amount ) . add ( parseFloat ( - financialamount ) ) ;
this . formAHSR . getForm ( ) . findField ( 'AHSR_MONEY' ) . setValue ( amount ) ;
}
}
}
] //end items(fieldset 1)
} //end fieldset 1
] //end root items
} ]
} ) ;
this . comboxCurrPREPAY = Ext . create ( 'DsExt.ux.RefTableCombox' , {
fieldLabel : Zi . LAN . Currency ,
store : this . StoreCurr ,
forceSelection : true ,
name : 'PREPAY_CURRENCY' ,
valueField : 'CURR' ,
displayField : 'CURR'
} ) ;
this . formPREPAY = Ext . widget ( 'form' , {
anchor : '20% 100%' ,
columnWidth : . 20 ,
frame : true ,
trackResetOnLoad : true ,
bodyPadding : 5 ,
title : "+" + Zi . LAN . PrepaidData ,
trackResetOnLoad : true ,
fieldDefaults : {
margins : '2 2 2 2' ,
labelAlign : 'right' ,
flex : 1 ,
labelWidth : 40 ,
msgTarget : 'qtip'
} ,
items : [
{ //fieldset 1
xtype : 'fieldset' ,
defaultType : 'textfield' ,
layout : 'anchor' ,
defaults : {
anchor : '100%'
} ,
items : [ {
xtype : 'container' ,
layout : 'hbox' ,
defaultType : 'textfield' ,
items : [ this . comboxCurrPREPAY
] //end items(fieldset 1)
} , {
xtype : 'container' ,
layout : 'hbox' ,
defaultType : 'textfield' ,
items : [ {
fieldLabel : Zi . LAN . ExchangeRate ,
labelWidth : 40 ,
name : 'PREPAY_RATE'
}
] //end items(fieldset 1)
} , {
xtype : 'container' ,
layout : 'hbox' ,
defaultType : 'textfield' ,
items : [ {
fieldLabel : Zi . LAN . Money ,
labelWidth : 40 ,
name : 'PREPAY_MONEY' ,
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 ;
} ,
listeners : {
scope : this ,
'blur' : function ( textfield , eOpts ) {
var curr = this . formAHSR . getForm ( ) . findField ( 'AHSR_MONEY' ) ;
var accamount = this . formACCOUNTS . getForm ( ) . findField ( 'ACCOUNTS_MONEY' ) . getValue ( ) ;
var prepamount = this . formPREPAY . getForm ( ) . findField ( 'PREPAY_MONEY' ) . getValue ( ) ;
var advanceamount = this . formADVANCE . getForm ( ) . findField ( 'ADVANCE_MONEY' ) . getValue ( ) ;
var financialamount = this . formFINANCIAL . getForm ( ) . findField ( 'FINANCIAL_MONEY' ) ;
var amount = parseFloat ( accamount ) . add ( parseFloat ( prepamount ) ) ;
amount = parseFloat ( amount ) . add ( parseFloat ( - advanceamount ) ) ;
amount = parseFloat ( amount ) . add ( parseFloat ( - financialamount ) ) ;
curr . setValue ( amount ) ;
}
}
} , {
xtype : 'button' ,
width : 115 ,
text : Zi . LAN . ShowVerificationDetail ,
iconCls : "btnrefresh" ,
handler : function ( button , event ) {
if ( _this . paneldetailacc2 . isVisible ( ) )
_this . paneldetailacc2 . hide ( ) ;
else {
_this . paneldetailacc2 . show ( ) ;
var billno = _this . formEdit . getForm ( ) . findField ( 'BILLNO' ) . getValue ( ) ;
_this . storeBodyListAcc2 . load ( { params : { condition : " BILLNO='" + billno + "'" } } ) ;
}
} ,
scope : this
}
] //end items(fieldset 1)
} //end fieldset 1
] //end root items
} ]
} ) ;
this . comboxCurrAHSR = Ext . create ( 'DsExt.ux.RefTableCombox' , {
fieldLabel : Zi . LAN . Currency ,
store : this . StoreCurr ,
forceSelection : true ,
name : 'AHSR_CURRENCY' ,
valueField : 'CURR' ,
displayField : 'CURR'
} ) ;
this . formAHSR = Ext . widget ( 'form' , {
anchor : '20% 100%' ,
columnWidth : . 20 ,
frame : true ,
trackResetOnLoad : true ,
bodyPadding : 5 ,
title : "=" + Zi . LAN . RelPaidData ,
trackResetOnLoad : true ,
fieldDefaults : {
margins : '2 2 2 2' ,
labelAlign : 'right' ,
flex : 1 ,
labelWidth : 40 ,
msgTarget : 'qtip'
} ,
items : [
{ //fieldset 1
xtype : 'fieldset' ,
defaultType : 'textfield' ,
layout : 'anchor' ,
defaults : {
anchor : '100%'
} ,
items : [ {
xtype : 'container' ,
layout : 'hbox' ,
defaultType : 'textfield' ,
items : [ this . comboxCurrAHSR
] //end items(fieldset 1)
} , {
xtype : 'container' ,
layout : 'hbox' ,
defaultType : 'textfield' ,
items : [ {
fieldLabel : Zi . LAN . ExchangeRate ,
name : 'AHSR_RATE'
}
] //end items(fieldset 1)
} , {
xtype : 'container' ,
layout : 'hbox' ,
defaultType : 'textfield' ,
items : [ {
fieldLabel : Zi . LAN . Money ,
name : 'AHSR_MONEY' ,
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 ;
}
}
] //end items(fieldset 1)
} //end fieldset 1
] //end root items
} ]
} ) ;
this . comboxCurrFINANCIAL = Ext . create ( 'DsExt.ux.RefTableCombox' , {
fieldLabel : Zi . LAN . Currency ,
store : this . StoreCurr ,
forceSelection : true ,
name : 'FINANCIAL_CURRENCY' ,
valueField : 'CURR' ,
displayField : 'CURR' ,
enableKeyEvents : true , //激活键盘事件
listeners : {
scope : this ,
'select' : function blur ( combo , eOpts ) {
if ( combo . value == 'RMB' || combo . value == '' ) {
this . formFINANCIAL . getForm ( ) . findField ( 'FINANCIAL_RATE' ) . setValue ( 1 ) ;
} else {
var Duino = this . formEdit . getForm ( ) . findField ( 'BILLNO' ) . getValue ( ) ;
Ext . Ajax . request ( {
waitMsg : '' ,
url : '/Account/Chfee_settlement/GetDefaulExrate' ,
params : {
billno : Duino ,
curr : combo . value
} ,
callback : function ( options , success , response ) {
if ( success ) {
var result = Ext . JSON . decode ( response . responseText ) ;
if ( result . Success != true ) {
} else {
var data = result . Data ;
this . formFINANCIAL . getForm ( ) . findField ( 'FINANCIAL_RATE' ) . setValue ( data ) ;
}
} else {
}
} ,
scope : this
} ) ;
}
}
}
} ) ;
this . formFINANCIAL = Ext . widget ( 'form' , {
anchor : '20% 100%' ,
columnWidth : . 20 ,
frame : true ,
trackResetOnLoad : true ,
bodyPadding : 5 ,
title : "+" + Zi . LAN . FinanceCose ,
trackResetOnLoad : true ,
fieldDefaults : {
margins : '2 2 2 2' ,
labelAlign : 'right' ,
flex : 1 ,
labelWidth : 40 ,
msgTarget : 'qtip'
} ,
items : [
{ //fieldset 1
xtype : 'fieldset' ,
defaultType : 'textfield' ,
layout : 'anchor' ,
defaults : {
anchor : '100%'
} ,
items : [ {
xtype : 'container' ,
layout : 'hbox' ,
defaultType : 'textfield' ,
items : [ this . comboxCurrFINANCIAL ]
} , {
xtype : 'container' ,
layout : 'hbox' ,
defaultType : 'textfield' ,
items : [ {
fieldLabel : Zi . LAN . ExchangeRate ,
// readOnly: true,
name : 'FINANCIAL_RATE'
}
] //end items(fieldset 1)
} , {
xtype : 'container' ,
layout : 'hbox' ,
defaultType : 'textfield' ,
items : [ {
fieldLabel : Zi . LAN . Money ,
name : 'FINANCIAL_MONEY' ,
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 ;
} ,
listeners : {
scope : this ,
'blur' : function ( textfield , eOpts ) {
var curr = this . formAHSR . getForm ( ) . findField ( 'AHSR_MONEY' ) ;
var accamount = this . formACCOUNTS . getForm ( ) . findField ( 'ACCOUNTS_MONEY' ) . getValue ( ) ;
var prepamount = this . formPREPAY . getForm ( ) . findField ( 'PREPAY_MONEY' ) . getValue ( ) ;
var advanceamount = this . formADVANCE . getForm ( ) . findField ( 'ADVANCE_MONEY' ) . getValue ( ) ;
var amount = parseFloat ( accamount ) . add ( parseFloat ( prepamount ) ) ;
amount = parseFloat ( amount ) . add ( parseFloat ( - advanceamount ) ) ;
amount = parseFloat ( amount ) . add ( parseFloat ( - textfield . value ) ) ;
curr . setValue ( amount ) ;
}
}
}
] //end items(fieldset 1)
} //end fieldset 1
] //end root items
} ]
} ) ;
this . comboxCurrADVANCE = Ext . create ( 'DsExt.ux.RefTableCombox' , {
fieldLabel : Zi . LAN . Currency ,
store : this . StoreCurr ,
forceSelection : true ,
name : 'ADVANCE_CURRENCY' ,
valueField : 'CURR' ,
displayField : 'CURR'
} ) ;
_this = this ;
this . formADVANCE = Ext . widget ( 'form' , {
anchor : '20% 100%' ,
columnWidth : . 20 ,
frame : true ,
trackResetOnLoad : true ,
bodyPadding : 5 ,
title : "+" + Zi . LAN . PrepaidUseData ,
trackResetOnLoad : true ,
fieldDefaults : {
margins : '2 2 2 2' ,
labelAlign : 'right' ,
flex : 1 ,
labelWidth : 40 ,
msgTarget : 'qtip'
} ,
items : [
{ //fieldset 1
xtype : 'fieldset' ,
defaultType : 'textfield' ,
layout : 'anchor' ,
defaults : {
anchor : '100%'
} ,
items : [ {
xtype : 'container' ,
layout : 'hbox' ,
defaultType : 'textfield' ,
items : [ this . comboxCurrADVANCE
] //end items(fieldset 1)
} , {
xtype : 'container' ,
layout : 'hbox' ,
defaultType : 'textfield' ,
items : [ {
fieldLabel : Zi . LAN . ExchangeRate ,
name : 'ADVANCE_RATE'
}
] //end items(fieldset 1)
} , {
xtype : 'container' ,
layout : 'hbox' ,
defaultType : 'textfield' ,
items : [ {
fieldLabel : Zi . LAN . Money ,
readOnly : true ,
name : 'ADVANCE_MONEY' ,
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 ;
}
} , {
xtype : 'button' ,
width : 90 ,
text : Zi . LAN . Btn _UseOrCancel ,
iconCls : "btnrefresh" ,
handler : function ( button , event ) {
var Duino = _this . formEdit . getForm ( ) . findField ( 'BILLNO' ) . getValue ( ) ;
if ( Duino == '*' ) {
Ext . Msg . show ( { title : Zi . LAN . TiShi , msg : Zi . LAN . SaveDillFirst , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
return ;
} ;
if ( _this . panelaccdetail . isVisible ( ) )
_this . panelaccdetail . hide ( ) ;
else {
_this . panelaccdetail . show ( ) ;
var custome = _this . formEdit . getForm ( ) . findField ( 'CUSTOMERNAME' ) . getValue ( ) ;
var billno = _this . formEdit . getForm ( ) . findField ( 'BILLNO' ) . getValue ( ) ;
var curr = _this . formADVANCE . getForm ( ) . findField ( 'ADVANCE_CURRENCY' ) . getValue ( ) ;
var sql = "CUSTOMERNAME='" + custome + "' and (ISFINISH=0 or ISFINISH IS NULL) AND FEETYPE=2 AND currency='" + curr + "' AND BILLNO<>'" + billno + "' AND (ap.amount<>ap.doamount) " ;
_this . storeAccBodyList . load ( { params : { start : 0 , limit : _this . PageSize , sort : '' , condition : sql } } ) ;
_this . storeBodyListAcc . load ( { params : { condition : " SETTLEBILLNO='" + billno + "'" } ,
callback : function ( r , options , success ) {
if ( success ) {
if ( _this . storeBodyListAcc . getCount ( ) > 0 ) ( this . comboxCurrADVANCE . readOnly = true )
}
} ,
scope : this
} ) ;
}
} ,
scope : this
}
] //end items(fieldset 1)
} //end fieldset 1
] //end root items
} ]
} ) ;
//#endregion
this . panelAcc = new Ext . Panel ( {
layout : "column" ,
region : "north" ,
height : 140 ,
items : [ this . formACCOUNTS , this . formPREPAY , this . formAHSR , this . formFINANCIAL , this . formADVANCE ]
} ) ;
//#region 预付取用
this . storePaymentList = Ext . create ( 'Ext.data.Store' , {
model : 'CWAdvancePaymentmb' ,
remoteSort : true ,
proxy : {
type : 'ajax' ,
url : '/Account/Chfee_settlement/GetAdvancePayment' ,
reader : {
id : 'BILLNO' ,
root : 'data' ,
totalProperty : 'totalCount'
}
}
} ) ;
this . GridAccCheckBoxModel = Ext . create ( 'Ext.selection.CheckboxModel' ) ;
//明细表-数据集
this . storeAccBodyList = Ext . create ( 'Ext.data.Store' , {
model : 'CWAdvancePaymentmb' ,
remoteSort : true ,
proxy : {
type : 'ajax' ,
url : '/Account/Chfee_settlement/GetAdvancePayment' ,
reader : {
id : 'BILLNO' ,
root : 'data' ,
totalProperty : 'totalCount'
}
}
} ) ;
//明细表表格
this . gridListAccCellEditing = Ext . create ( 'Ext.grid.plugin.CellEditing' , {
clicksToEdit : 1
} ) ;
this . gridListAcc = new Ext . grid . GridPanel ( {
store : this . storeAccBodyList ,
enableHdMenu : false ,
region : 'center' ,
loadMask : { msg : Zi . LAN . LoadData } ,
trackMouseOver : true ,
disableSelection : false ,
plugins : [ this . gridListAccCellEditing ] ,
selModel : this . GridAccCheckBoxModel ,
tbar : [ {
text : Zi . LAN . AddUseDetail ,
tooltip : Zi . LAN . AddUseDetail ,
iconCls : "btnadddetail" ,
handler : function ( button , event ) {
this . onAddAPDetailClick ( button , event ) ;
} ,
scope : this
} ] ,
columns : [ {
sortable : true ,
dataIndex : 'GID' ,
header : 'GID' ,
width : 80 , hidden : true
} ,
{
sortable : true ,
dataIndex : 'LINKGID' ,
header : 'LINKGID' ,
width : 80 , hidden : true
} ,
{
sortable : true ,
dataIndex : 'BILLNO' ,
header : Zi . LAN . BillNo ,
width : 120
} ,
{
sortable : true ,
dataIndex : 'FEETYPEREF' ,
header : Zi . LAN . FeeTypeRef ,
width : 60
} ,
{
sortable : true ,
dataIndex : 'CUSTOMERNAME' ,
header : Zi . LAN . SettlementObject ,
width : 100
} ,
{
sortable : true ,
dataIndex : 'CURRENCY' ,
header : Zi . LAN . Currency ,
width : 80
} ,
{
sortable : true ,
dataIndex : 'AMOUNT' ,
header : Zi . LAN . Money ,
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 : 'DOAMOUNT' ,
header : Zi . LAN . HasVerificationAmount ,
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 : 'REMAIN' ,
header : Zi . LAN . ThisVerification ,
editor : {
xtype : 'numberfield' ,
keyNavEnabled : false ,
allowDecimals : true ,
decimalPrecision : 2 ,
selectOnFocus : true ,
mouseWheelEnabled : false ,
enableKeyEvents : true
} ,
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 : 80
} ,
{
sortable : true ,
dataIndex : 'CREATEUSERREF' ,
header : Zi . LAN . NotIncludederson ,
width : 80
} ,
{
sortable : true ,
dataIndex : 'CREATETIME' ,
header : Zi . LAN . notIncludedersonTime ,
width : 80
} ,
{
sortable : true ,
dataIndex : 'REMARK' ,
header : Zi . LAN . Remark ,
width : 120
}
]
} ) ;
this . storeBodyListAcc = Ext . create ( 'Ext.data.Store' , {
model : 'CWAdvancePaymentBodymb' ,
remoteSort : true ,
proxy : {
type : 'ajax' ,
url : '/Account/Chfee_settlement/GetAPBodyList' ,
reader : {
id : 'GID' ,
root : 'data' ,
totalProperty : 'totalCount'
}
}
} ) ;
this . GridBodyAccCheckBoxModel = Ext . create ( 'Ext.selection.CheckboxModel' ) ;
this . gridBodyListAcc = new Ext . grid . GridPanel ( {
store : this . storeBodyListAcc ,
enableHdMenu : false ,
region : 'center' ,
//height: 600,
loadMask : { msg : Zi . LAN . LoadData } ,
trackMouseOver : true ,
disableSelection : false ,
selModel : this . GridBodyAccCheckBoxModel ,
viewConfig : {
autoFill : true ,
enableTextSelection : true
} ,
tbar : [ {
text : Zi . LAN . DeleteUseDetail ,
tooltip : Zi . LAN . DeleteUseDetail ,
iconCls : "btnadddetail" ,
handler : function ( button , event ) {
this . onDeleteApClick ( button , event ) ;
} ,
scope : this
} ] ,
columns : [
{
sortable : true ,
dataIndex : 'GID' ,
header : 'GID' , hidden : true ,
width : 80
} ,
{
sortable : true ,
dataIndex : 'LINKGID' ,
header : 'LINKGID' , hidden : true ,
width : 80
} ,
{
sortable : true ,
dataIndex : 'BILLNO' ,
header : Zi . LAN . BillNo ,
width : 120
} ,
{
sortable : true ,
dataIndex : 'SETTLELINKGID' ,
header : 'SETTLELINKGID' , hidden : true ,
width : 80
} ,
{
sortable : true ,
dataIndex : 'SETTLEBILLNO' ,
header : Zi . LAN . VerificationUseBillNo ,
width : 120
} ,
{
sortable : true ,
dataIndex : 'FEETYPE' ,
header : 'FEETYPE' ,
width : 80
} ,
{
sortable : true ,
dataIndex : 'CUSTOMERNAME' ,
header : Zi . LAN . SettlementObject , hidden : true ,
width : 100
} ,
{
sortable : true ,
dataIndex : 'CURRENCY' ,
header : Zi . LAN . Currency ,
width : 80
} ,
{
sortable : true ,
dataIndex : 'DOAMOUNT' ,
header : Zi . LAN . VerificationAmount ,
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 : 'SETTLEUSERREF' ,
header : Zi . LAN . VerificationUser ,
width : 80
} ,
{
sortable : true ,
dataIndex : 'SETTLETIME' ,
header : Zi . LAN . VerificationTime ,
width : 80
} ,
{
sortable : true ,
dataIndex : 'REMARK' ,
header : Zi . LAN . Remark ,
width : 80
} ,
{
sortable : true ,
dataIndex : 'VOUCHERNO' ,
header : Zi . LAN . VerificationNo ,
width : 80
}
]
} ) ;
this . storeBodyListAcc2 = Ext . create ( 'Ext.data.Store' , {
model : 'CWAdvancePaymentBodymb' ,
remoteSort : true ,
proxy : {
type : 'ajax' ,
url : '/Account/Chfee_settlement/GetAPBodyList' ,
reader : {
id : 'GID' ,
root : 'data' ,
totalProperty : 'totalCount'
}
}
} ) ;
this . gridBodyListAcc2 = new Ext . grid . GridPanel ( {
store : this . storeBodyListAcc2 ,
enableHdMenu : false ,
region : 'center' ,
//height: 600,
loadMask : { msg : Zi . LAN . LoadData } ,
trackMouseOver : true ,
disableSelection : false ,
selType : 'cellmodel' ,
viewConfig : {
autoFill : true ,
enableTextSelection : true
} ,
columns : [
{
sortable : true ,
dataIndex : 'GID' ,
header : 'GID' , hidden : true ,
width : 80
} ,
{
sortable : true ,
dataIndex : 'LINKGID' ,
header : 'LINKGID' , hidden : true ,
width : 80
} ,
{
sortable : true ,
dataIndex : 'BILLNO' ,
header : Zi . LAN . BillNo ,
width : 80
} ,
{
sortable : true ,
dataIndex : 'SETTLELINKGID' ,
header : 'SETTLELINKGID' , hidden : true ,
width : 80
} ,
{
sortable : true ,
dataIndex : 'SETTLEBILLNO' ,
header : Zi . LAN . VerificationUseBillNo ,
width : 80
} ,
{
sortable : true ,
dataIndex : 'FEETYPE' ,
header : 'FEETYPE' ,
width : 80
} ,
{
sortable : true ,
dataIndex : 'CUSTOMERNAME' ,
header : Zi . LAN . SettlementObject , hidden : true ,
width : 80
} ,
{
sortable : true ,
dataIndex : 'CURRENCY' ,
header : Zi . LAN . Currency ,
width : 80
} ,
{
sortable : true ,
dataIndex : 'DOAMOUNT' ,
header : Zi . LAN . VerificationAmount ,
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 : 'SETTLEUSER' ,
header : Zi . LAN . VerificationUser ,
width : 80
} ,
{
sortable : true ,
dataIndex : 'SETTLETIME' ,
header : Zi . LAN . VerificationTime ,
width : 80
} ,
{
sortable : true ,
dataIndex : 'REMARK' ,
header : Zi . LAN . Remark ,
width : 80
} ,
{
sortable : true ,
dataIndex : 'VOUCHERNO' ,
header : Zi . LAN . VerificationNo ,
width : 80
}
]
} ) ;
this . paneldetailacc = new Ext . Panel ( {
// title: Zi.LAN.SettlementDetail ,
layout : "border" ,
height : 160 ,
region : "north" ,
split : true ,
items : [
this . gridBodyListAcc
]
} ) ;
this . panelAddacc = new Ext . Panel ( {
layout : "border" ,
height : 160 ,
region : "north" ,
margin : '2 2' ,
items : [ this . gridListAcc ]
} ) ;
this . paneldetailacc2 = new Ext . Panel ( {
title : Zi . LAN . VerificationDetail ,
layout : "border" ,
height : 160 ,
region : "north" ,
hidden : true ,
items : [
this . gridBodyListAcc2
]
} ) ;
this . panelaccdetail = new Ext . Panel ( {
title : Zi . LAN . UseOrCancelPrePaidDetail ,
layout : "border" ,
hidden : true ,
height : 360 ,
region : "north" ,
split : true ,
items : [
this . paneldetailacc , this . panelAddacc
]
} ) ;
//#endregion
//#region 布局
//控件布局
this . panelTop = new Ext . Panel ( {
layout : "border" ,
region : "north" ,
height : 145 ,
items : [ this . panelBtn , this . formEdit ]
} ) ;
this . panelBody = new Ext . Panel ( {
title : Zi . LAN . SettlementDetail ,
layout : "border" ,
region : "center" ,
items : [ this . paneldetail , this . paneladd ]
} ) ;
this . panelAccAll = new Ext . Panel ( {
title : Zi . LAN . AdvancePrepaidInformation ,
layout : "border" ,
region : "north" ,
height : 450 ,
items : [ this . panelAcc , this . panelaccdetail , this . paneldetailacc2 ]
} ) ;
this . tabpanel = new Ext . TabPanel
( {
activeTab : 0 ,
autoWidth : true ,
border : false ,
frame : false ,
region : 'center' ,
id : "TabPanelID" ,
enableTabScroll : true ,
items :
[
this . panelBody ,
this . panelAccAll ,
this . page _2
]
} ) ;
Ext . apply ( this , {
items : [ this . panelTop , this . tabpanel ]
} ) ;
//#endregion
//绑定查询窗体
this . ParentWin = window . parent . opener ;
//初始化数据
this . InitData ( ) ;
//绑定事件
var billno = '*' ;
if ( this . opStatus == 'edit' ) {
billno = this . editRecord . get ( 'BILLNO' ) ;
} ;
this . storeBodyList . on ( 'beforeload' , function ( store ) {
Ext . apply ( store . proxy . extraParams , { billno : billno } ) ;
} , this ) ;
this . storeBodyList . on ( 'load' , function ( store , records ) {
if ( store . getCount ( ) > 0 ) {
//this.gridList.getSelectionModel().select(0);
} else {
this . storeBodydetail . load ( { params : { condition : " f.BILLNO='XX'" } } ) ;
}
} , this ) ;
this . gridList . getSelectionModel ( ) . on ( 'select' , function ( model , record , index ) {
var billno = this . formEdit . getForm ( ) . findField ( 'BILLNO' ) . getValue ( ) ;
var paybillno = record . data . BILLNO ;
var sql = "" ;
sql = " f.BILLNO='" + billno + "' and f.PAYBILLNO='" + paybillno + "'" ;
this . storeBodydetail . load ( { params : { condition : sql } } ) ;
} , this ) ;
this . storeAddFeeList . on ( 'beforeload' , function ( store ) {
var sql = this . getCondition ( ) ;
Ext . apply ( store . proxy . extraParams , { condition : this . BillSql } ) ;
} , this ) ;
this . storeAddFeeList . on ( 'load' , function ( store , records ) {
if ( store . getCount ( ) > 0 ) {
this . gridAddFeeList . getSelectionModel ( ) . select ( 0 ) ;
} else {
this . storeAddBodydetail . load ( { params : { condition : " BILLNO='XX'" } } ) ;
}
} , this ) ;
this . gridAddFeeList . getSelectionModel ( ) . on ( 'select' , function ( model , record , index ) {
var bsno = record . data . BILLNO ;
var sql = "" ;
sql = " BILLNO='" + bsno + "'" ;
this . storeAddBodydetail . load ( { params : { condition : sql } } ) ;
} , this ) ;
//#region 生成凭证_汇率列表
//#region 加载数据
//权限加载
this . StoreIsCwVouchers = Ext . create ( 'DsExt.ux.RefTableStore' , {
model : 'DsShipping.ux.ModuleModel' ,
proxy : { url : '/MvcShipping/MsBaseInfo/GetSysModuleList' }
} ) ;
this . StoreIsCwVouchers . load ( {
params : { condition : "[name]='modChPaySettlementIndexCwVouchers'" } ,
waitMsg : Zi . LAN . NowSelect ,
callback : function ( options , success , response ) {
if ( success ) {
//判断是否显示凭证按钮
if ( options . length > 0 ) {
Ext . getCmp ( 'btnAddCwVouchers' ) . show ( ) ;
} else {
Ext . getCmp ( 'btnAddCwVouchers' ) . hide ( ) ;
}
}
} ,
scope : this
} ) ;
//制单人
this . storePREPAREDCode = Ext . create ( 'DsExt.ux.RefTableStore' , {
model : 'DsShipping.ux.UserRefModel' ,
proxy : { url : '/CommMng/BasicDataRef/GetUserRefList' }
} ) ;
this . storePREPAREDCode . load ( ) ;
this . comboxPREPARED = Ext . create ( 'DsExt.ux.RefTableCombox' , {
fieldLabel : Zi . LAN . DocumentMakerUser ,
store : this . storePREPAREDCode ,
forceSelection : true ,
id : 'PREPARED' ,
name : 'PREPARED' ,
valueField : 'UserName' ,
displayField : 'CodeAndName' ,
value : SHOWNAME
} ) ;
//键值维护表_凭证字//需求编号: SR2017080200007
this . storeCrmKeyCodeCode = Ext . create ( 'DsExt.ux.RefTableStore' , {
model : 'DsShipping.ux.CrmKeyCodeModel' ,
proxy : { url : '/CommMng/BasicDataRef/GetCrmKeyCodeList' }
} ) ;
this . storeCrmKeyCodeCode . load ( { params : { condition : " and KEYTYPE='凭证字'" } } ) ;
this . comboxVKNO = Ext . create ( 'DsExt.ux.RefTableCombox' , {
fieldLabel : Zi . LAN . CertificateKeyValue ,
store : this . storeCrmKeyCodeCode ,
forceSelection : true ,
name : 'VKNO' ,
valueField : 'KEYVALUE' ,
displayField : 'KEYVALUE'
} ) ;
this . storeMerGeType = Ext . create ( 'Ext.data.Store' , {
fields : [ 'DC' , 'NAME' ]
} ) ;
this . storeMerGeType . add ( { "DC" : "" , "NAME" : Zi . LAN . SystemSet } ) ;
this . storeMerGeType . add ( { "DC" : "1" , "NAME" : Zi . LAN . Merge } ) ;
this . storeMerGeType . add ( { "DC" : "2" , "NAME" : Zi . LAN . UnMerge } ) ;
this . comboxMergeType = Ext . create ( 'DsExt.ux.RefTableCombox' , {
fieldLabel : Zi . LAN . IsConsolidatedGeneratedCertificate ,
store : this . storeMerGeType ,
labelWidth : 110 ,
width : 210 ,
valueField : 'DC' ,
value : '' ,
displayField : 'NAME' ,
forceSelection : true ,
name : 'MERGE'
} ) ;
//#endregion
//#region 定义数据集
this . storeListCw = Ext . create ( 'Ext.data.Store' , {
pageSize : this . PageSize ,
model : 'MsCodeCurrencyList' ,
remoteSort : true ,
proxy : {
type : 'ajax' ,
url : '/Account/Chfee_settlement/GetCodeCurrencyList' ,
reader : {
id : 'CURR' ,
root : 'data' ,
totalProperty : 'totalCount'
}
}
} ) ;
//#endregion
//#region 列定义
this . girdcolums = [ {
sortable : false ,
text : Zi . LAN . Currency ,
dataIndex : 'CURR' ,
width : 100 ,
align : 'center'
} , {
sortable : false ,
text : Zi . LAN . AdjustmentsRate ,
dataIndex : 'FCYEXRATE' ,
width : 118 ,
align : 'right' ,
renderer : function ( value , cellmeta , record , rowIndex , columnIndex , store ) { try { var lsValue = usMoney ( value , 5 , '' , 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 ; } ,
editor : {
xtype : 'numberfield' ,
selectOnFocus : true , //得到焦点时自动选择文本
allowDecimals : true , //允许输入小数
decimalPrecision : 5 , //允许保留的小数位数,并四舍五入
nanText : Zi . LAN . Msg _NotNumber ,
hideTrigger : true //是否隐藏上下调节按钮
}
} ] ;
//#endregion
//#region gridList列表显示信息
this . gridListCellEditing = Ext . create ( 'Ext.grid.plugin.CellEditing' , {
clicksToEdit : 1 //1单击, 2双击
} ) ;
this . gridListCw = new Ext . grid . GridPanel ( {
region : 'center' ,
width : 220 ,
store : this . storeListCw ,
enableHdMenu : false , //是否显示表格列的菜单
hideHeaders : false , //是否隐藏表头
rowLines : true ,
columnLines : true ,
loadMask : { msg : Zi . LAN . LoadData } ,
plugins : [ this . gridListCellEditing ] ,
selType : 'cellmodel' ,
columns : this . girdcolums
} ) ;
//#endregion
//#endregion
} , //end initUIComponents
InitData : function ( ) {
this . opStatus = 'add' ;
var condition = '' ;
if ( this . ParentWin ) {
var ret = this . ParentWin . OprationSwap ( ) ;
this . opStatus = ret [ 0 ] ;
this . StoreList = ret [ 1 ] ;
this . editRecord = ret [ 2 ] ;
if ( this . ParentWin . panelIndex . MsPeriod != NaN && this . ParentWin . panelIndex . MsPeriod != null )
this . MsPeriod = this . ParentWin . panelIndex . MsPeriod ;
}
if ( this . opStatus == 'edit' )
condition = " BILLNO='" + this . editRecord . get ( 'BILLNO' ) + "'" ;
if ( this . opStatus == 'edit' ) {
document . title = "付费结算" + this . editRecord . get ( 'BILLNO' ) . toString ( ) . trim ( ) ;
}
else {
document . title = "付费结算-新增" ;
}
this . LoadData ( this . opStatus , condition ) ;
this . LoadMustBe ( ) ;
} , //end InitData
LoadData : function ( opstatus , condition ) {
this . serialNo = 0 ;
this . workSerialNo = 0 ;
this . bodyDel = [ ] ;
this . opStatus = opstatus ;
var billno = '*' ;
if ( this . opStatus == 'edit' ) {
billno = this . editRecord . get ( 'BILLNO' ) ;
} ;
_this = this ;
Ext . Ajax . request ( {
waitMsg : Zi . LAN . OnSelect ,
url : '/Account/Chfee_settlement/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 . TiShi ,
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 . formACCOUNTS . getForm ( ) . reset ( ) ;
_this . formPREPAY . getForm ( ) . reset ( ) ;
_this . formAHSR . getForm ( ) . reset ( ) ;
_this . formFINANCIAL . getForm ( ) . reset ( ) ;
_this . formADVANCE . getForm ( ) . reset ( ) ;
_this . formEdit . getForm ( ) . setValues ( data ) ;
_this . formACCOUNTS . getForm ( ) . setValues ( data ) ;
_this . formPREPAY . getForm ( ) . setValues ( data ) ;
_this . formAHSR . getForm ( ) . setValues ( data ) ;
_this . formFINANCIAL . getForm ( ) . setValues ( data ) ;
_this . formADVANCE . getForm ( ) . setValues ( data ) ;
_this . formEdit . getForm ( ) . findField ( 'BILLSTATUS' ) . setDisabled ( true ) ;
_this . GetEditStatus ( ) ;
_this . LoadPeriod ( this . opStatus ) ;
_this . storeChfeeFile . load ( { params : { start : 0 , limit : 9999 , BillNo : data . BILLNO } } ) ;
_this . storeBodyList . load ( { params : { 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
} ) ;
var CUSTOMERNAME = this . formEdit . getForm ( ) . findField ( 'CUSTOMERNAME' ) . getValue ( ) ;
if ( CUSTOMERNAME != '' ) {
this . storecustbank . load ( { params : { condition : "LINKID=(SELECT TOP 1 GID FROM INFO_CLIENT WHERE SHORTNAME='" + CUSTOMERNAME + "')" } ,
callback : function ( r , options , success ) {
if ( success ) {
this . formEdit . getForm ( ) . findField ( 'CUSTBANK' ) . setValue ( data . CUSTBANK ) ;
}
} ,
scope : this
} ) ;
}
} else {
Ext . MessageBox . alert ( Zi . LAN . Error , response . responseText ) ;
}
} ,
scope : this
} ) ;
this . onRefreshClick ( ) ;
// this.storeBodySum.load({ params: { condition: " BILLNO='" + billno + "'"} });
// this.storePaymentList.load({ params: { start: 0, limit: this.PageSize, sort: '', condition: "BILLNO='" + billno + "'" },
// callback: function (r, options, success) {
// if (success) {
// if (this.storePaymentList.getCount() > 0) {
// var member = this.storePaymentList.getAt(0);
// if (member.data.ISVOU) {
// this.formACCOUNTS.getForm().findField('ACCOUNTS_MONEY').readOnly = true;
// this.formPREPAY.getForm().findField('PREPAY_MONEY').readOnly = true;
// }
// }
// }
// },
// scope: this
// });
} , // end LoadDate
LoadPeriod : function ( opstatus ) {
Ext . Ajax . request ( {
waitMsg : Zi . LAN . OnSelect ,
url : '/Account/ChMonthClose/GetNowPeriod' ,
params : {
condition : ''
} ,
callback : function ( options , success , response ) {
if ( success ) {
var result = Ext . JSON . decode ( response . responseText ) ;
if ( ! result . Success ) {
return ;
}
data = result . data ;
this . MsPeriod = data ;
this . LoadPeriodStatus ( opstatus ) ;
} else {
Ext . MessageBox . alert ( Zi . LAN . Error , response . responseText ) ;
}
} ,
scope : this
} ) ;
} ,
LoadPeriodStatus : function ( opstatus ) {
var SETTLETIME = this . formEdit . getForm ( ) . findField ( 'SETTLETIME' ) . getRawValue ( ) ;
if ( SETTLETIME == '' ) {
this . formEdit . getForm ( ) . findField ( 'SETTLETIME' ) . setMinValue ( this . MsPeriod . FDAY ) ;
this . formEdit . getForm ( ) . findField ( 'SETTLETIME' ) . setReadOnly ( false ) ;
} else {
var oDate1 = new Date ( Ext . util . Format . date ( SETTLETIME , 'Y-m-d' ) ) ;
var oDate2 = new Date ( this . MsPeriod . FDAY ) ;
if ( oDate1 . getTime ( ) >= oDate2 . getTime ( ) ) {
this . formEdit . getForm ( ) . findField ( 'SETTLETIME' ) . setMinValue ( this . MsPeriod . FDAY ) ;
this . formEdit . getForm ( ) . findField ( 'SETTLETIME' ) . setReadOnly ( false ) ;
} else {
if ( opstatus == 'add' || opstatus == 'copyadd' ) {
this . formEdit . getForm ( ) . findField ( 'SETTLETIME' ) . setMinValue ( this . MsPeriod . FDAY ) ;
this . formEdit . getForm ( ) . findField ( 'SETTLETIME' ) . setReadOnly ( false ) ;
}
else {
this . formEdit . getForm ( ) . findField ( 'SETTLETIME' ) . setMinValue ( '' ) ;
this . formEdit . getForm ( ) . findField ( 'SETTLETIME' ) . setReadOnly ( true ) ;
this . setSaveBtnStatus ( false ) ;
}
}
}
} ,
Save : function ( type ) {
var basicForm = this . formEdit . getForm ( ) ;
if ( ! basicForm . isValid ( ) ) {
return ;
}
this . formEdit . getForm ( ) . findField ( 'BILLSTATUS' ) . setDisabled ( false ) ;
this . formEdit . getForm ( ) . findField ( 'SETTLEUSER' ) . setDisabled ( false ) ;
this . formEdit . getForm ( ) . findField ( 'COMPANYID' ) . setDisabled ( false ) ;
this . formEdit . getForm ( ) . findField ( 'SETTLEMODE' ) . setDisabled ( false ) ;
this . formEdit . getForm ( ) . findField ( 'BILLTYPE' ) . setDisabled ( false ) ;
var field = this . formEdit . getForm ( ) . findField ( 'SETTLEMODE' ) ;
field . setValue ( 3 ) ;
var field = this . formEdit . getForm ( ) . findField ( 'BILLTYPE' ) ;
field . setValue ( 2 ) ;
var data = basicForm . getValues ( ) ;
var accountsdata = this . formACCOUNTS . getForm ( ) . getValues ( ) ;
var prepaydata = this . formPREPAY . getForm ( ) . getValues ( ) ;
var prepaychange = this . formPREPAY . getForm ( ) . findField ( 'PREPAY_MONEY' ) . isDirty ( ) ;
var ahsrdata = this . formAHSR . getForm ( ) . getValues ( ) ;
var financialdata = this . formFINANCIAL . getForm ( ) . getValues ( ) ;
var advancedata = this . formADVANCE . getForm ( ) . getValues ( ) ;
this . formEdit . getForm ( ) . findField ( 'BILLSTATUS' ) . setDisabled ( true ) ;
this . formEdit . getForm ( ) . findField ( 'SETTLEUSER' ) . setDisabled ( true ) ;
this . formEdit . getForm ( ) . findField ( 'COMPANYID' ) . setDisabled ( true ) ;
this . formEdit . getForm ( ) . findField ( 'SETTLEMODE' ) . setDisabled ( true ) ;
this . formEdit . getForm ( ) . findField ( 'BILLTYPE' ) . setDisabled ( true ) ;
Ext . Msg . wait ( Zi . LAN . Msg _SavingAndWait ) ;
Ext . Ajax . request ( {
waitMsg : Zi . LAN . Msg _Saving ,
url : '/Account/Chfee_settlement/Save' ,
scope : this ,
params : {
opstatus : this . opStatus ,
data : Ext . JSON . encode ( data ) ,
accountsdata : Ext . JSON . encode ( accountsdata ) ,
prepaydata : Ext . JSON . encode ( prepaydata ) ,
ahsrdata : Ext . JSON . encode ( ahsrdata ) ,
financialdata : Ext . JSON . encode ( financialdata ) ,
advancedata : Ext . JSON . encode ( advancedata ) ,
billtype : 2 ,
prepaychange : prepaychange
} ,
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 ( 'MsChSettlement' , 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' ;
this . LoadPeriodStatus ( _this . opStatus ) ;
} else if ( type == '1' ) {
window . close ( ) ;
} else {
this . LoadData ( 'add' , '' ) ;
}
} else {
Ext . Msg . show ( { title : Zi . LAN . E , msg : jsonresult . Message , icon : Ext . Msg . ERROR , buttons : Ext . Msg . OK } ) ;
}
} else {
Ext . Msg . show ( { title : Zi . LAN . Retry ,
msg : Zi . LAN . ServerResponseError ,
icon : Ext . Msg . ERROR , buttons : Ext . Msg . OK
} ) ;
}
}
} ) ;
} , //end save
onAddDetailClick : function ( button , event ) {
this . addstore = true ;
this . addDetail ( ) ;
} , //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 ) ;
Ext . Msg . show ( { title : Zi . LAN . TiShi , msg : Zi . LAN . SettlementAmountTooLarge , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
}
} else {
if ( StlAmount < BalAmount ) {
e . record . set ( 'STLAMOUNT' , BalAmount ) ;
Ext . Msg . show ( { title : Zi . LAN . TiShi , msg : Zi . LAN . SettlementAmountTooLarge , 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 basicForm = this . formEdit . getForm ( ) ;
var Duino = this . formEdit . getForm ( ) . findField ( 'BILLNO' ) . getValue ( ) ;
_this = this ;
if ( ( Duino == '*' ) || basicForm . isDirty ( ) ) {
var CUSTOMERNAME = this . formEdit . getForm ( ) . findField ( 'CUSTOMERNAME' ) . getValue ( ) ;
var CURR = this . formEdit . getForm ( ) . findField ( 'CURR' ) . getValue ( ) ;
if ( ( CUSTOMERNAME == '' ) || ( CUSTOMERNAME == null ) || ( CURR == '' ) || ( CURR == null ) ) {
var selectedRecords = this . gridAddFeeList . selModel . getSelection ( ) ;
if ( selectedRecords . length > 0 ) {
var rec = selectedRecords [ 0 ] ;
var cust = rec . data . CUSTOMERNAME ;
var curr = rec . data . CURR ;
if ( ( CUSTOMERNAME == '' ) || ( CUSTOMERNAME == null ) )
this . formEdit . getForm ( ) . findField ( 'CUSTOMERNAME' ) . setValue ( cust ) ;
if ( ( CURR == '' ) || ( CURR == null ) )
this . formEdit . getForm ( ) . findField ( 'CURR' ) . setValue ( curr ) ;
}
}
if ( ! basicForm . isValid ( ) ) {
return ;
}
var type = 0 ;
this . formEdit . getForm ( ) . findField ( 'BILLSTATUS' ) . setDisabled ( false ) ;
this . formEdit . getForm ( ) . findField ( 'SETTLEUSER' ) . setDisabled ( false ) ;
this . formEdit . getForm ( ) . findField ( 'COMPANYID' ) . setDisabled ( false ) ;
this . formEdit . getForm ( ) . findField ( 'SETTLEMODE' ) . setDisabled ( false ) ;
this . formEdit . getForm ( ) . findField ( 'BILLTYPE' ) . setDisabled ( false ) ;
var field = this . formEdit . getForm ( ) . findField ( 'SETTLEMODE' ) ;
field . setValue ( 3 ) ;
var field = this . formEdit . getForm ( ) . findField ( 'BILLTYPE' ) ;
field . setValue ( 2 ) ;
var data = basicForm . getValues ( ) ;
var accountsdata = this . formACCOUNTS . getForm ( ) . getValues ( ) ;
var prepaydata = this . formPREPAY . getForm ( ) . getValues ( ) ;
var prepaychange = this . formPREPAY . getForm ( ) . findField ( 'PREPAY_MONEY' ) . isDirty ( ) ;
var ahsrdata = this . formAHSR . getForm ( ) . getValues ( ) ;
var financialdata = this . formFINANCIAL . getForm ( ) . getValues ( ) ;
var advancedata = this . formADVANCE . getForm ( ) . getValues ( ) ;
this . formEdit . getForm ( ) . findField ( 'BILLSTATUS' ) . setDisabled ( true ) ;
this . formEdit . getForm ( ) . findField ( 'SETTLEUSER' ) . setDisabled ( true ) ;
this . formEdit . getForm ( ) . findField ( 'COMPANYID' ) . setDisabled ( true ) ;
this . formEdit . getForm ( ) . findField ( 'SETTLEMODE' ) . setDisabled ( true ) ;
this . formEdit . getForm ( ) . findField ( 'BILLTYPE' ) . setDisabled ( true ) ;
Ext . Msg . wait ( Zi . LAN . Msg _SavingAndWait ) ;
Ext . Ajax . request ( {
waitMsg : Zi . LAN . Msg _Saving ,
url : '/Account/Chfee_settlement/Save' ,
scope : this ,
params : {
opstatus : this . opStatus ,
data : Ext . JSON . encode ( data ) ,
accountsdata : Ext . JSON . encode ( accountsdata ) ,
prepaydata : Ext . JSON . encode ( prepaydata ) ,
ahsrdata : Ext . JSON . encode ( ahsrdata ) ,
financialdata : Ext . JSON . encode ( financialdata ) ,
advancedata : Ext . JSON . encode ( advancedata ) ,
billtype : 2 ,
prepaychange : prepaychange
} ,
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 ( 'MsChSettlement' , 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 {
Ext . Msg . show ( { title : Zi . LAN . E , msg : jsonresult . Message , icon : Ext . Msg . ERROR , buttons : Ext . Msg . OK } ) ;
}
} else {
Ext . Msg . show ( { title : Zi . LAN . Retry ,
msg : Zi . LAN . ServerResponseError ,
icon : Ext . Msg . ERROR , buttons : Ext . Msg . OK
} ) ;
}
}
} ) ;
} else {
_this . addDetailfn ( ) ;
}
} , //end save
addDetailfn : function ( ) {
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 ( ) ;
if ( billstatus != 2 ) {
Ext . Msg . show ( { title : Zi . LAN . TiShi , msg : Zi . LAN . CannotAddFeeDetailOfStatus , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
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 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 bsno = rec . data . BILLNO ;
var curr = rec . data . CURR ;
if ( cust == billcust ) {
// if (billcurr == curr) {
// 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.DOAMOUNT = parseFloat(rec.data.STLAMOUNT).mul(parseFloat(EXRATE));
// } else {
// _this.ExrateConversion(curr, billcurr, 'detail');
// return;
// }
// }
// bodyAddDatas.push(rec);
if ( billcurr == curr ) {
bodyAddDatas . push ( rec ) ;
} else {
Ext . Msg . show ( { title : Zi . LAN . TiShi , msg : Zi . LAN . NoApply4CurrencyDiff , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
}
} else {
Ext . Msg . show ( { title : Zi . LAN . TiShi , msg : Zi . LAN . FyduixiangDifSettlCust , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
}
}
if ( bodyAddDatas . length == 0 ) {
Ext . Msg . show ( { title : Zi . LAN . TiShi , msg : Zi . LAN . NoFeeDetai2Add , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
return ;
} ;
var jsonbodyAddDatas = ConvertRecordsToJsonAll ( bodyAddDatas ) ;
Ext . Ajax . request ( {
waitMsg : Zi . LAN . Msg _Adding ,
url : '/Account/Chfee_settlement/AddPayInvAppDetail' ,
params : {
bill : billno ,
data : jsonbodyAddDatas ,
curr : billcurr ,
billtype : 2
} ,
callback : function ( options , success , response ) {
if ( success ) {
var result = Ext . JSON . decode ( response . responseText ) ;
if ( ! result . Success ) {
Ext . Msg . show ( {
title : Zi . LAN . TiShi ,
msg : result . Message ,
icon : Ext . MessageBox . ERROR ,
buttons : Ext . Msg . OK
} ) ;
return ;
} else {
var sql = this . BillSql ;
this . storeAddFeeList . load ( { params : { start : 0 , limit : _this . PageSize , sort : '' , condition : sql } } ) ;
this . storeBodyList . load ( { params : { 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
} ) ;
Ext . Ajax . request ( {
waitMsg : Zi . LAN . OnSelect ,
url : '/Account/Chfee_settlement/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 . TiShi ,
msg : result . Message ,
icon : Ext . MessageBox . ERROR ,
buttons : Ext . Msg . OK
} ) ;
return ;
}
var data = result . data ;
_this . formEdit . getForm ( ) . reset ( ) ;
_this . formACCOUNTS . getForm ( ) . reset ( ) ;
_this . formPREPAY . getForm ( ) . reset ( ) ;
_this . formAHSR . getForm ( ) . reset ( ) ;
_this . formFINANCIAL . getForm ( ) . reset ( ) ;
_this . formADVANCE . getForm ( ) . reset ( ) ;
_this . formEdit . getForm ( ) . setValues ( data ) ;
_this . formACCOUNTS . getForm ( ) . setValues ( data ) ;
_this . formPREPAY . getForm ( ) . setValues ( data ) ;
_this . formAHSR . getForm ( ) . setValues ( data ) ;
_this . formFINANCIAL . getForm ( ) . setValues ( data ) ;
_this . formADVANCE . getForm ( ) . setValues ( data ) ;
var editp = Ext . create ( 'MsChSettlement' , 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 . Error , response . responseText ) ;
}
} ,
scope : this
} ) ;
}
} else {
Ext . MessageBox . alert ( Zi . LAN . Error , response . responseText ) ;
}
} ,
scope : this
} ) ;
} ,
deleteBill : function ( type ) {
var billno = this . formEdit . getForm ( ) . findField ( 'BILLNO' ) . getValue ( ) ;
var selectedRecords = this . gridList . selModel . getSelection ( ) ;
if ( selectedRecords . length == 0 ) {
Ext . Msg . show ( { title : Zi . LAN . TiShi , msg : Zi . LAN . NoFeeDetai2Del , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
return ;
} ;
var billstatus = this . formEdit . getForm ( ) . findField ( 'BILLSTATUS' ) . getValue ( ) ;
if ( billstatus != 2 ) {
Ext . Msg . show ( { title : Zi . LAN . TiShi , msg : Zi . LAN . CannotDelFeeDetailOfStatus , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
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 . BillSql ;
Ext . Ajax . request ( {
waitMsg : Zi . LAN . Msg _Deleting ,
url : '/Account/Chfee_settlement/DelPayInvAppBill' ,
params : {
data : jsonbodyAddDatas ,
billno : billno ,
billtype : 2
} ,
callback : function ( options , success , response ) {
if ( success ) {
var result = Ext . JSON . decode ( response . responseText ) ;
if ( ! result . Success ) {
Ext . Msg . show ( {
title : Zi . LAN . TiShi ,
msg : result . Message ,
icon : Ext . MessageBox . ERROR ,
buttons : Ext . Msg . OK
} ) ;
return ;
} else {
var sql = this . BillSql ;
this . storeAddFeeList . load ( { params : { start : 0 , limit : _this . PageSize , sort : '' , condition : sql } } ) ;
this . storeBodyList . load ( { params : { 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
} ) ;
Ext . Ajax . request ( {
waitMsg : Zi . LAN . OnSelect ,
url : '/Account/Chfee_settlement/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 . TiShi ,
msg : result . Message ,
icon : Ext . MessageBox . ERROR ,
buttons : Ext . Msg . OK
} ) ;
return ;
}
var data = result . data ;
_this . formEdit . getForm ( ) . reset ( ) ;
_this . formACCOUNTS . getForm ( ) . reset ( ) ;
_this . formPREPAY . getForm ( ) . reset ( ) ;
_this . formAHSR . getForm ( ) . reset ( ) ;
_this . formFINANCIAL . getForm ( ) . reset ( ) ;
_this . formADVANCE . getForm ( ) . reset ( ) ;
_this . formEdit . getForm ( ) . setValues ( data ) ;
_this . formACCOUNTS . getForm ( ) . setValues ( data ) ;
_this . formPREPAY . getForm ( ) . setValues ( data ) ;
_this . formAHSR . getForm ( ) . setValues ( data ) ;
_this . formFINANCIAL . getForm ( ) . setValues ( data ) ;
_this . formADVANCE . getForm ( ) . setValues ( data ) ;
var editp = Ext . create ( 'MsChSettlement' , 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 . Error , response . responseText ) ;
}
} ,
scope : this
} ) ;
}
} else {
Ext . MessageBox . alert ( Zi . LAN . Error , response . responseText ) ;
}
} ,
scope : this
} ) ;
} ,
//#region 预收付操作
onAddAPDetailClick : function ( button , event ) {
var gid = this . formEdit . getForm ( ) . findField ( 'GID' ) . getValue ( ) ;
var billno = this . formEdit . getForm ( ) . findField ( 'BILLNO' ) . getValue ( ) ;
var billstatus = this . formEdit . getForm ( ) . findField ( 'BILLSTATUS' ) . getValue ( ) ;
if ( billstatus != 2 ) {
Ext . Msg . show ( { title : Zi . LAN . TiShi , msg : Zi . LAN . CannotAddDetailOfStatus , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
return ;
}
var basicForm = this . formEdit . getForm ( ) ;
var basicForm1 = this . formACCOUNTS . getForm ( ) ;
var basicForm2 = this . formPREPAY . getForm ( ) ;
var basicForm3 = this . formAHSR . getForm ( ) ;
var basicForm4 = this . formFINANCIAL . getForm ( ) ;
var basicForm5 = this . formADVANCE . getForm ( ) ;
if ( basicForm . isDirty ( ) || basicForm1 . isDirty ( )
|| basicForm2 . isDirty ( ) || basicForm3 . isDirty ( ) || basicForm4 . isDirty ( ) || basicForm5 . isDirty ( ) ) {
Ext . Msg . show ( { title : Zi . LAN . TiShi , msg : Zi . LAN . AddDetailAfterSaveFFJSD , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
return ;
} ;
var selectedRecords = this . gridListAcc . selModel . getSelection ( ) ;
var bodyAddDatas = [ ] ;
_this = this ;
for ( var i = 0 ; i < selectedRecords . length ; i ++ ) {
var rec = selectedRecords [ i ] ;
bodyAddDatas . push ( rec ) ;
}
if ( bodyAddDatas . length == 0 ) {
Ext . Msg . show ( { title : Zi . LAN . TiShi , msg : Zi . LAN . NoFeeDetai2Add , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
return ;
} ;
var jsonbodyAddDatas = ConvertRecordsToJsonAll ( bodyAddDatas ) ;
_this = this ;
Ext . Msg . wait ( Zi . LAN . Msg _SavingAndWait ) ;
Ext . Ajax . request ( {
waitMsg : Zi . LAN . Msg _Saving ,
url : '/Account/Chfee_settlement/AddAPDetail' ,
scope : this ,
params : {
billno : billno ,
data : jsonbodyAddDatas ,
stlnogid : gid ,
feetype : 2
} ,
callback : function ( options , success , response ) {
if ( success ) {
Ext . MessageBox . hide ( ) ;
var jsonresult = Ext . JSON . decode ( response . responseText ) ;
if ( jsonresult . Success ) {
var custome = _this . formEdit . getForm ( ) . findField ( 'CUSTOMERNAME' ) . getValue ( ) ;
var billno = _this . formEdit . getForm ( ) . findField ( 'BILLNO' ) . getValue ( ) ;
var curr = _this . formADVANCE . getForm ( ) . findField ( 'ADVANCE_CURRENCY' ) . getValue ( ) ;
var sql = "CUSTOMERNAME='" + custome + "' and (ISFINISH=0 or ISFINISH IS NULL) AND FEETYPE=2 AND currency='" + curr + "' AND BILLNO<>'" + billno + "'" ;
_this . storeAccBodyList . load ( { params : { start : 0 , limit : _this . PageSize , sort : '' , condition : sql } } ) ;
// _this.storePaymentList.load({ params: { start: 0, limit: _this.PageSize, sort: '', condition: "BILLNO='" + billno + "'"} });
_this . storeBodyListAcc . load ( { params : { condition : " SETTLEBILLNO='" + billno + "'" } ,
callback : function ( r , options , success ) {
if ( success ) {
if ( _this . storeBodyListAcc . getCount ( ) > 0 ) ( this . comboxCurrADVANCE . readOnly = true )
}
} ,
scope : this
} ) ;
Ext . Ajax . request ( {
waitMsg : Zi . LAN . OnSelect ,
url : '/Account/Chfee_settlement/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 . TiShi ,
msg : result . Message ,
icon : Ext . MessageBox . ERROR ,
buttons : Ext . Msg . OK
} ) ;
return ;
}
var data = result . data ;
_this . formAHSR . getForm ( ) . reset ( ) ;
_this . formADVANCE . getForm ( ) . reset ( ) ;
_this . formAHSR . getForm ( ) . setValues ( data ) ;
_this . formADVANCE . getForm ( ) . setValues ( data ) ;
var editp = Ext . create ( 'MsChSettlement' , 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 . Error , response . responseText ) ;
}
} ,
scope : this
} ) ;
} else {
Ext . Msg . show ( { title : Zi . LAN . E , msg : jsonresult . Message , icon : Ext . Msg . ERROR , buttons : Ext . Msg . OK } ) ;
}
} else {
Ext . Msg . show ( { title : Zi . LAN . Retry ,
msg : Zi . LAN . ServerResponseError ,
icon : Ext . Msg . ERROR , buttons : Ext . Msg . OK
} ) ;
}
}
} ) ;
} ,
onDeleteApClick : function ( button , event ) {
var billno = this . formEdit . getForm ( ) . findField ( 'BILLNO' ) . getValue ( ) ;
var billstatus = this . formEdit . getForm ( ) . findField ( 'BILLSTATUS' ) . getValue ( ) ;
if ( billstatus != 2 ) {
Ext . Msg . show ( { title : Zi . LAN . TiShi , msg : Zi . LAN . CannotDelDetailOfStatus , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
return ;
}
var selectedRecords = this . gridBodyListAcc . selModel . getSelection ( ) ;
_this = this ;
for ( var i = 0 ; i < selectedRecords . length ; i ++ ) {
var rec = selectedRecords [ i ] ;
var voucherno = rec . data . VOUCHERNO ;
if ( voucherno == '' ) {
bodyAddDatas . push ( rec ) ;
} else {
Ext . Msg . show ( { title : Zi . LAN . TiShi , msg : Zi . LAN . HasCertificateCanotDel , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
}
}
var bodyAddDatas = [ ] ;
_this = this ;
for ( var i = 0 ; i < selectedRecords . length ; i ++ ) {
var rec = selectedRecords [ i ] ;
var voucherno = rec . data . VOUCHERNO ;
if ( voucherno == '' ) {
bodyAddDatas . push ( rec ) ;
} else {
Ext . Msg . show ( { title : Zi . LAN . TiShi , msg : Zi . LAN . HasCertificateCanotDel , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
}
}
if ( bodyAddDatas . length == 0 ) {
Ext . Msg . show ( { title : Zi . LAN . TiShi , msg : Zi . LAN . NoDetai2Del , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
return ;
} ;
var jsonbodyAddDatas = ConvertRecordsToJsonAll ( bodyAddDatas ) ;
_this = this ;
Ext . Msg . wait ( Zi . LAN . Msg _SavingAndWait ) ;
Ext . Ajax . request ( {
waitMsg : Zi . LAN . Msg _Saving ,
url : '/Account/Chfee_settlement/DelAPBill' ,
scope : this ,
params : {
data : jsonbodyAddDatas
} ,
callback : function ( options , success , response ) {
if ( success ) {
Ext . MessageBox . hide ( ) ;
var jsonresult = Ext . JSON . decode ( response . responseText ) ;
if ( jsonresult . Success ) {
var custome = _this . formEdit . getForm ( ) . findField ( 'CUSTOMERNAME' ) . getValue ( ) ;
var billno = _this . formEdit . getForm ( ) . findField ( 'BILLNO' ) . getValue ( ) ;
var curr = _this . formADVANCE . getForm ( ) . findField ( 'ADVANCE_CURRENCY' ) . getValue ( ) ;
var sql = "CUSTOMERNAME='" + custome + "' and (ISFINISH=0 or ISFINISH IS NULL) AND FEETYPE=2 AND currency='" + curr + "' AND BILLNO<>'" + billno + "'" ;
_this . storeAccBodyList . load ( { params : { start : 0 , limit : _this . PageSize , sort : '' , condition : sql } } ) ;
// _this.storePaymentList.load({ params: { start: 0, limit: _this.PageSize, sort: '', condition: "BILLNO='" + billno + "'"} });
_this . storeBodyListAcc . load ( { params : { condition : " SETTLEBILLNO='" + billno + "'" } ,
callback : function ( r , options , success ) {
if ( success ) {
if ( _this . storeBodyListAcc . getCount ( ) > 0 ) ( this . comboxCurrADVANCE . readOnly = true )
}
} ,
scope : this
} ) ;
Ext . Ajax . request ( {
waitMsg : Zi . LAN . OnSelect ,
url : '/Account/Chfee_settlement/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 . TiShi ,
msg : result . Message ,
icon : Ext . MessageBox . ERROR ,
buttons : Ext . Msg . OK
} ) ;
return ;
}
var data = result . data ;
_this . formAHSR . getForm ( ) . reset ( ) ;
_this . formADVANCE . getForm ( ) . reset ( ) ;
_this . formAHSR . getForm ( ) . setValues ( data ) ;
_this . formADVANCE . getForm ( ) . setValues ( data ) ;
var editp = Ext . create ( 'MsChSettlement' , 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 . Error , response . responseText ) ;
}
} ,
scope : this
} ) ;
} else {
Ext . Msg . show ( { title : Zi . LAN . E , msg : jsonresult . Message , icon : Ext . Msg . ERROR , buttons : Ext . Msg . OK } ) ;
}
} else {
Ext . Msg . show ( { title : Zi . LAN . Retry ,
msg : Zi . LAN . ServerResponseError ,
icon : Ext . Msg . ERROR , buttons : Ext . Msg . OK
} ) ;
}
}
} ) ;
} ,
//#endregion
onSubmitAuditClick : function ( ) {
var Duino = this . formEdit . getForm ( ) . findField ( 'BILLNO' ) . getValue ( ) ;
var billstatus = this . formEdit . getForm ( ) . findField ( 'BILLSTATUS' ) . getValue ( ) ;
var REMARK = this . formEdit . getForm ( ) . findField ( 'REMARK' ) . getValue ( ) ;
if ( Duino == '*' ) {
Ext . Msg . show ( { title : Zi . LAN . TiShi , msg : Zi . LAN . LockAfterSaveSettlement , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
return ;
} ;
if ( ( billstatus != 0 ) ) {
Ext . Msg . show ( { title : Zi . LAN . TiShi , msg : Zi . LAN . CanotLock4CurrStatus , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
return ;
}
//if (this.storeBodyList.getCount() == 0) {
// Ext.Msg.show({ title: Zi.LAN.TiShi, msg:Zi.LAN.CanotLock4NoFeeDetail, icon: Ext.Msg.INFO, buttons: Ext.Msg.OK });
// return;
//}
_this = this ;
Ext . Ajax . request ( {
waitMsg : Zi . LAN . Msg _Adding ,
url : '/Account/Chfee_settlement/Lock' ,
params : {
bill : Duino ,
remark : REMARK
} ,
callback : function ( options , success , response ) {
if ( success ) {
var result = Ext . JSON . decode ( response . responseText ) ;
if ( ! result . Success ) {
Ext . Msg . show ( {
title : Zi . LAN . TiShi ,
msg : result . Message ,
icon : Ext . MessageBox . ERROR ,
buttons : Ext . Msg . OK
} ) ;
return ;
} else {
Ext . Ajax . request ( {
waitMsg : Zi . LAN . OnSelect ,
url : '/Account/Chfee_settlement/GetData' ,
params : {
handle : 'edit' ,
condition : " BILLNO='" + Duino + "'"
} ,
callback : function ( options , success , response ) {
if ( success ) {
var result = Ext . JSON . decode ( response . responseText ) ;
if ( ! result . Success ) {
Ext . Msg . show ( {
title : Zi . LAN . TiShi ,
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 ) ;
var editp = Ext . create ( 'MsChSettlement' , 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 ( ) ;
_this . GetEditStatus ( ) ;
} else {
Ext . MessageBox . alert ( Zi . LAN . Error , response . responseText ) ;
}
} ,
scope : this
} ) ;
}
} else {
Ext . MessageBox . alert ( Zi . LAN . Error , response . responseText ) ;
}
} ,
scope : this
} ) ;
} ,
onSubmitAuditBackClick : function ( ) {
var Duino = this . formEdit . getForm ( ) . findField ( 'BILLNO' ) . getValue ( ) ;
var billstatus = this . formEdit . getForm ( ) . findField ( 'BILLSTATUS' ) . getValue ( ) ;
if ( Duino == '*' ) {
Ext . Msg . show ( { title : Zi . LAN . TiShi , msg : Zi . LAN . UnlockAfterSaveSettlement , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
return ;
} ;
if ( billstatus != 1 ) {
Ext . Msg . show ( { title : Zi . LAN . TiShi , msg : Zi . LAN . CanotUnlock4CurrStatus , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
return ;
}
var isvou = this . formEdit . getForm ( ) . findField ( 'ISEXPORT' ) . getValue ( ) ;
if ( isvou == true ) {
Ext . Msg . show ( { title : Zi . LAN . TiShi , msg : Zi . LAN . CanotUnlock4HasCert , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
return ;
}
var ISVOUCHERNO = this . formEdit . getForm ( ) . findField ( 'VOUCHERNO' ) . getValue ( ) ;
if ( ISVOUCHERNO != "" ) {
Ext . Msg . show ( { title : Zi . LAN . TiShi , msg : Zi . LAN . CanotUnlock4HasVoucher , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
return ;
}
_this = this ;
Ext . Ajax . request ( {
waitMsg : Zi . LAN . Msg _Adding ,
url : '/Account/Chfee_settlement/UnLock' ,
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 . TiShi ,
msg : result . Message ,
icon : Ext . MessageBox . ERROR ,
buttons : Ext . Msg . OK
} ) ;
return ;
} else {
Ext . Ajax . request ( {
waitMsg : Zi . LAN . OnSelect ,
url : '/Account/Chfee_settlement/GetData' ,
params : {
handle : 'edit' ,
condition : " BILLNO='" + Duino + "'"
} ,
callback : function ( options , success , response ) {
if ( success ) {
var result = Ext . JSON . decode ( response . responseText ) ;
if ( ! result . Success ) {
Ext . Msg . show ( {
title : Zi . LAN . TiShi ,
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 ) ;
var editp = Ext . create ( 'MsChSettlement' , 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 ( ) ;
_this . GetEditStatus ( ) ;
} else {
Ext . MessageBox . alert ( Zi . LAN . Error , response . responseText ) ;
}
} ,
scope : this
} ) ;
}
} else {
Ext . MessageBox . alert ( Zi . LAN . Error , response . responseText ) ;
}
} ,
scope : this
} ) ;
} ,
Delete : function ( ) {
var basicForm = this . formEdit . getForm ( ) ;
if ( ! basicForm . isValid ( ) ) {
return ;
}
this . formEdit . getForm ( ) . findField ( 'BILLSTATUS' ) . setDisabled ( false ) ;
this . formEdit . getForm ( ) . findField ( 'SETTLEUSER' ) . setDisabled ( false ) ;
this . formEdit . getForm ( ) . findField ( 'COMPANYID' ) . setDisabled ( false ) ;
this . formEdit . getForm ( ) . findField ( 'SETTLEMODE' ) . setDisabled ( false ) ;
this . formEdit . getForm ( ) . findField ( 'BILLTYPE' ) . setDisabled ( false ) ;
var data = basicForm . getValues ( ) ;
this . formEdit . getForm ( ) . findField ( 'BILLSTATUS' ) . setDisabled ( true ) ;
this . formEdit . getForm ( ) . findField ( 'SETTLEUSER' ) . setDisabled ( true ) ;
this . formEdit . getForm ( ) . findField ( 'COMPANYID' ) . setDisabled ( true ) ;
this . formEdit . getForm ( ) . findField ( 'SETTLEMODE' ) . setDisabled ( true ) ;
this . formEdit . getForm ( ) . findField ( 'BILLTYPE' ) . setDisabled ( true ) ;
Ext . Msg . wait ( Zi . LAN . Msg _SavingAndWait ) ;
Ext . Ajax . request ( {
waitMsg : Zi . LAN . Msg _Saving ,
url : '/Account/Chfee_settlement/Delete' ,
scope : this ,
params : {
data : Ext . JSON . encode ( data ) ,
settlemode : 3
} ,
callback : function ( options , success , response ) {
if ( success ) {
Ext . MessageBox . hide ( ) ;
var jsonresult = Ext . JSON . decode ( response . responseText ) ;
if ( jsonresult . Success ) {
this . LoadData ( 'add' , '' ) ;
} else {
Ext . Msg . show ( { title : Zi . LAN . E , msg : jsonresult . Message , icon : Ext . Msg . ERROR , buttons : Ext . Msg . OK } ) ;
}
} else {
Ext . Msg . show ( {
title : Zi . LAN . Retry ,
msg : Zi . LAN . ServerResponseError ,
icon : Ext . Msg . ERROR , buttons : Ext . Msg . OK
} ) ;
}
}
} ) ;
} , //end save
onRefreshClick : function ( button , event ) {
var sql = this . getCondition ( ) ;
this . storeAddFeeList . load ( { params : { start : 0 , limit : this . PageSize , sort : '' , condition : sql } } ) ;
} ,
onInitRefreshClick : function ( button , event ) {
var sql = " 1=2 " ;
this . storeAddFeeList . load ( { params : { start : 0 , limit : this . PageSize , sort : '' , condition : sql } } ) ;
} ,
onClearSql : function ( ) {
var form = this . formSearch . getForm ( ) ;
form . reset ( ) ;
} ,
getCondition : function ( ) {
var form = this . formSearch . getForm ( ) ;
if ( ! form . isValid ( ) ) {
Ext . Msg . alert ( Zi . LAN . TiShi , Zi . LAN . SelectConditionValError ) ;
return '' ;
}
var sql = '' ;
var customNo = form . findField ( 'CustomNo' ) . getValue ( ) ;
sql = sql + getAndConSql ( sql , customNo , " BILLNO='" + customNo + "'" ) ;
var CUSTNAME = form . findField ( 'CUSTNAME' ) . getValue ( ) ;
sql = sql + getAndConSql ( sql , CUSTNAME , " CUSTOMERNAME='" + CUSTNAME + "'" ) ;
var Currency = form . findField ( 'Currency' ) . getValue ( ) ;
sql = sql + getAndConSql ( sql , Currency , "CURR='" + Currency + "'" ) ;
var expDateBgn = form . findField ( 'ExpDateBgn' ) . getRawValue ( ) ;
sql = sql + getAndConSql ( sql , expDateBgn , "OPDATE >='" + expDateBgn + "'" ) ;
var expDateEnd = form . findField ( 'ExpDateEnd' ) . getRawValue ( ) ;
sql = sql + getAndConSql ( sql , expDateEnd , "OPDATE <='" + expDateEnd + "'" ) ;
var BsNo = form . findField ( 'BsNo' ) . getValue ( ) ;
sql = sql + getAndConSql ( sql , BsNo , " EXISTS (select 1 from ch_fee_do_invoice left join v_op_bill on (v_op_bill.bsno=ch_fee_do_invoice.bsno) where BILLNO=cm.BILLNO AND (v_op_bill.CUSTNO like '%" + BsNo + "%' or v_op_bill.MBLNO like '%" + BsNo + "%' or v_op_bill.HBLNO like '%" + BsNo + "%')) " ) ;
var InvHead = form . findField ( 'InvHead' ) . getRawValue ( ) ;
sql = sql + getAndConSql ( sql , InvHead , "INVOICECUSTNAME like '%" + InvHead + "%'" ) ;
// this.FeeSqlStr = this.getFeeCondition();
// feesql = feesql + getAndConSql(feesql, this.FeeSqlStr, this.FeeSqlStr);
// sql = sql + getAndConSql(sql, feesql, feesql);
this . BillSql = sql ;
return sql ;
} ,
getFeeCondition : function ( ) {
var form = this . formSearch . getForm ( ) ;
var feesql = '' ;
var BsNo = form . findField ( 'BsNo' ) . getValue ( ) ;
sql = sql + getAndConSql ( sql , BsNo , " EXISTS (select 1 from ch_fee_do_invoice left join v_op_bill on (v_op_bill.bsno=ch_fee_do_invoice.bsno) where BILLNO=cm.BILLNO AND (v_op_bill.CUSTNO like '%" + BsNo + "%' or v_op_bill.MBLNO like '%" + BsNo + "%' or v_op_bill.HBLNO like '%" + BsNo + "%')) " ) ;
return feesql ;
} ,
ExrateConversion : function ( bfcurr , afcurr , fntype ) {
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 : 6 ,
value : 0 ,
renderer : function ( value , cellmeta , record , rowIndex , columnIndex , store ) {
try {
var lsValue = usMoney ( value , 6 , '' , 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 ( 4 ) ;
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 : 6 ,
value : 0 ,
renderer : function ( value , cellmeta , record , rowIndex , columnIndex , store ) {
try {
var lsValue = usMoney ( value , 6 , '' , 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 ( 4 ) ;
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 . CurrencyRateConvert ,
width : 450 ,
//height : 120,
//plain : true,
iconCls : "addicon" ,
resizable : false ,
// 是否可以拖动
// draggable:false,
collapsible : true , // 允许缩放条
closeAction : 'close' ,
closable : true ,
modal : 'true' ,
buttonAlign : "center" ,
bodyStyle : "padding:0 0 0 0" ,
items : [ formExrateConversion ] ,
buttons : [ {
text : Zi . LAN . OK ,
minWidth : 70 ,
handler : function ( ) {
var form = formExrateConversion . getForm ( ) ;
var UsdExrate = form . findField ( 'bfcurr' ) . getValue ( ) ;
if ( UsdExrate == '' || UsdExrate == null || UsdExrate == undefined ) {
Ext . Msg . show ( { title : Zi . LAN . TiShi , msg : Zi . LAN . ConvertRateMust , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
return ;
} ;
var recs = DsStoreQueryBy ( me . storeCurrExrate , 'CURR' , bfcurr ) ;
if ( recs . getCount ( ) > 0 ) {
// var dfdata = DFrecords.getAt(0).data;
// dfdata.EXRATE = UsdExrate;
for ( var i = 0 ; i < me . storeCurrExrate . getCount ( ) ; i += 1 ) {
var member = me . storeCurrExrate . getAt ( i ) ;
if ( member . data . CURR == bfcurr ) {
// member.EXRATE = UsdExrate;
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 ( ) ;
return ;
}
} ]
} ) ;
if ( bfcurr == 'RMB' ) {
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 == 'RMB' ) {
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 DFrecords = DsStoreQueryBy ( this . StoreCurr , 'CURR' , bfcurr ) ;
if ( DFrecords . getCount ( ) > 0 ) {
var dfdata = DFrecords . getAt ( 0 ) . data ;
var DEFRATE = dfdata . DEFRATE ;
} else {
var DEFRATE = 0 ;
}
var field = formExrateConversion . getForm ( ) . findField ( 'bfcurr' ) ;
bchange = true ;
field . setValue ( DEFRATE ) ;
}
winExrateShow . show ( ) ;
// S=setInterval(function () {
// if (EXRATE != 0) {
// alert(EXRATE);
// clearInterval(S);
// }
// }, 500)
} ,
onAddFileClick : function ( ) {
var billstatus = this . formEdit . getForm ( ) . findField ( 'BILLSTATUS' ) . getValue ( ) ;
if ( ( billstatus == 1 ) ) {
Ext . Msg . show ( { title : Zi . LAN . TiShi , msg : Zi . LAN . CanotLock4CurrStatus , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
return ;
}
var Duino = this . formEdit . getForm ( ) . findField ( 'BILLNO' ) . getValue ( ) ;
if ( Duino == '*' ) {
Ext . Msg . show ( { title : Zi . LAN . TiShi , msg : Zi . LAN . SaveSFJSBeforCancleLock , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
return ;
} ;
var winAccess = new Shipping . FileUpload ( { } ) ;
winAccess . BillNo = Duino ;
winAccess . show ( ) ;
} ,
onDelFileClick : function ( ) {
var billstatus = this . formEdit . getForm ( ) . findField ( 'BILLSTATUS' ) . getValue ( ) ;
if ( ( billstatus == 1 ) ) {
Ext . Msg . show ( { title : Zi . LAN . TiShi , msg : Zi . LAN . CanotLock4CurrStatus , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
return ;
}
var selections = this . fileGrid . getSelectionModel ( ) . getSelection ( ) ;
if ( selections . length == 0 ) { //提示', msg: '请先选择要删除的数据!
Ext . Msg . show ( { title : Zi . LAN . TiShi , msg : Zi . LAN . NoFeeDetai2Del , 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 . TiShi , Zi . LAN . Sure2DelTheRecode , function ( btn ) {
if ( btn == 'yes' ) {
Ext . Msg . wait ( Zi . LAN . Msg _Deleting ) ; //正在删除数据
Ext . Ajax . request ( {
waitMsg : Zi . LAN . Msg _Deleting ,
url : '/Account/Chfee_payapplication/CertDel' ,
params : {
data : Ext . JSON . encode ( record )
} ,
callback : function ( options , success , response ) {
if ( success ) {
var jsonresult = Ext . JSON . decode ( response . responseText ) ;
if ( jsonresult . Success ) {
_this . storeChfeeFile . reload ( ) ;
Ext . Msg . show ( { title : Zi . LAN . TiShi , msg : jsonresult . Message , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
} //提示
else {
Ext . Msg . show ( { title : Zi . LAN . TiShi , msg : jsonresult . Message , icon : Ext . Msg . ERROR , buttons : Ext . Msg . OK } ) ;
}
}
} ,
failure : function ( response , options ) { //'警告', msg: '服务器响应出错,请重试'
Ext . Msg . show ( { title : Zi . LAN . TiShi , msg : Zi . LAN . ServerResponseError , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
} ,
success : function ( response , options ) {
} ,
scope : this
} ) ; //end Ext.Ajax.request
}
} , this ) ;
} ,
//#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 ;
this . formEdit . getForm ( ) . findField ( 'BILLSTATUS' ) . setDisabled ( false ) ;
var bsStatus = this . formEdit . getForm ( ) . findField ( 'BILLSTATUS' ) . getValue ( ) ;
var op = this . formEdit . getForm ( ) . findField ( 'SETTLEUSERREF' ) . getValue ( ) ;
var opid = this . formEdit . getForm ( ) . findField ( 'SETTLEUSER' ) . getValue ( ) ;
this . formEdit . getForm ( ) . findField ( 'BILLSTATUS' ) . setDisabled ( true ) ;
var btnESubmitAudit = Ext . getCmp ( 'btnSubmitAudit' ) ;
var btnESubmitAuditBack = Ext . getCmp ( 'btnSubmitAuditBack' ) ;
_this = this ;
if ( bsStatus != 2 ) {
canedit = false ;
this . setSaveBtnStatus ( canedit ) ;
} else {
this . StoreOpRange . load ( { params : { optype : "modPaySettlementList" } ,
callback : function ( r , options , success ) {
if ( success ) {
if ( r . length != 0 ) {
var records = DsStoreQueryBy ( _this . StoreOpRange , 'OPID' , op ) ;
if ( records . getCount ( ) > 0 ) {
canedit = true ;
} else {
canedit = false ;
}
_this . setSaveBtnStatus ( canedit ) ;
_this . LoadPeriodStatus ( this . opStatus ) ;
}
}
}
} ) ;
}
this . StoreLockOp . load ( {
params : { optype : "modPayFeeSettlementLock" } ,
callback : function ( r , options , success ) {
if ( success ) {
if ( r . length != 0 ) {
var records = DsStoreQueryBy ( _this . StoreLockOp , 'OPID' , opid ) ;
if ( records . getCount ( ) > 0 ) {
if ( bsStatus == 1 ) {
btnESubmitAudit . disable ( ) ;
} else {
btnESubmitAudit . enable ( ) ;
}
} else {
btnESubmitAudit . disable ( ) ;
}
} else {
btnESubmitAudit . disable ( ) ;
}
}
}
} ) ;
this . StoreUnLockOp . load ( {
params : { optype : "modPayFeeSettlementUnLock" } ,
callback : function ( r , options , success ) {
if ( success ) {
if ( r . length != 0 ) {
var records = DsStoreQueryBy ( _this . StoreUnLockOp , 'OPID' , opid ) ;
if ( records . getCount ( ) > 0 ) {
if ( bsStatus == 1 ) {
btnESubmitAuditBack . enable ( ) ;
} else {
btnESubmitAuditBack . disable ( ) ;
}
} else {
btnESubmitAuditBack . disable ( ) ;
}
} else {
btnESubmitAuditBack . disable ( ) ;
}
}
}
} ) ;
} ,
setSaveBtnStatus : function ( enable ) {
var btnESave = Ext . getCmp ( 'btnESave' ) ;
var btnESaveAndClose = Ext . getCmp ( 'btnESaveAndClose' ) ;
var btnESaveAndNew = Ext . getCmp ( 'btnESaveAndNew' ) ;
var btnEAddDetail = Ext . getCmp ( 'btnadddetail' ) ;
var btnEDeleteDetail = Ext . getCmp ( 'btndeldetail' ) ;
var btnEDeleteAndNew = Ext . getCmp ( 'btnEDeleteAndNew' ) ;
if ( enable ) {
btnESave . enable ( ) ;
btnESaveAndClose . enable ( ) ;
btnESaveAndNew . enable ( ) ;
btnEAddDetail . enable ( ) ;
btnEDeleteDetail . enable ( ) ;
btnEDeleteAndNew . enable ( ) ;
} else {
btnESave . disable ( ) ;
btnESaveAndClose . disable ( ) ;
btnESaveAndNew . disable ( ) ;
btnEAddDetail . disable ( ) ;
btnEDeleteDetail . disable ( ) ;
btnEDeleteAndNew . disable ( ) ;
}
} ,
OprationSwap : function ( ) {
var ret = new Array ( ) ;
ret [ 0 ] = this . opStatus ;
ret [ 1 ] = this . StoreList ;
ret [ 2 ] = this . editRecord ;
return ret ;
} ,
// #endregion
Print : function ( ) {
var basicForm = this . formEdit . getForm ( ) ;
var billNo = basicForm . findField ( 'BILLNO' ) . value ;
if ( billNo == '*' || billNo == '' ) {
Ext . Msg . show ( { title : Zi . LAN . E , msg : Zi . LAN . PrintMustAfterSave , icon : Ext . Msg . ERROR , buttons : Ext . Msg . OK } ) ;
return ;
}
var sortstr = ' b.VESSEL,b.VOYNO,b.MBLNO' ;
if ( this . sortfield != '' && this . sortdire != '' ) {
sortstr = this . sortfield + ' ' + this . sortdire ;
}
var printType = 'MSCHFEEPAYSETTLEMENT' ;
var sql1 = "SELECT s.*,(select ShowName from [user] where GID=s.SETTLEUSER) as SETTLEUSERREF " ;
sql1 = sql1 + " ,(select STLNAME from [code_stlmode] where STLCODE=s.SETTLETYPE) as SETTLETYPERE " ;
sql1 = sql1 + " ,(select BANKNAME from [sys_bank] where GID=s.ACCOUNTRMB) as ACCOUNTRMBREF" ;
sql1 = sql1 + " ,(select BANKNAME from [sys_bank] where GID=s.ACCOUNTUSD) as ACCOUNTUSDREF" ;
sql1 = sql1 + " ,(select EnumValueName from tSysEnumValue where LangId=0 and EnumTypeID=97007 and EnumValueID=s.SETTLEMODE) as SETTLEMODEREF " ;
sql1 = sql1 + " ,(select DESCRIPTION from info_client where SHORTNAME=s.CUSTOMERNAME) CUSTFULLNAME" ;
sql1 = sql1 + ",总账凭证号=(select top 1 VOUALLNO from cw_vouno_bs_gl WITH(NOLOCK) where BSGID=s.GID and BSTABLENAME='ch_fee_settlement' and STARTGID in (select top 1 GID from cw_design_startusing WITH(NOLOCK) where (ISDELETE=0 or ISDELETE is null) and ISENABLE=1 and GID=(select top 1 STARTGID from [cw_design_startusing_user] WITH(NOLOCK) where USERGID='" + USERID + "')))" ;
sql1 = sql1 + " FROM ch_fee_settlement s 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 = "" ;
PrintComm ( printType , sql1 , sql2 , sql3 , sql4 , sql5 , sql6 ) ;
} ,
//#region 生成凭证
onAddCwVouchers : function ( button , event ) {
var billNo = this . formEdit . getForm ( ) . findField ( 'BILLNO' ) . value ;
if ( billNo == '*' || billNo == '' ) {
Ext . Msg . show ( { title : Zi . LAN . TiShi , msg : Zi . LAN . SaveDillFirst , icon : Ext . Msg . INFO , buttons : Ext . Msg . OK } ) ;
return ;
}
// //
// var strGids = "";
// var VOUCHERNO = this.formEdit.getForm().findField('VOUCHERNO').value; //凭证号
// var BILLSTATUS = this.formEdit.getForm().findField('BILLSTATUS').value; //是否锁定
// var SETTLETYPEREF = this.formEdit.getForm().findField('SETTLETYPE').value; //结算方式
// var ACCOUNTREF = this.formEdit.getForm().findField('ACCOUNT').value; //结算账户
// if (VOUCHERNO == "" && BILLSTATUS == 1 && ((SETTLETYPEREF != "现金" && ACCOUNTREF != "") || SETTLETYPEREF == "现金")) {
// strGids = this.editRecord.data.GID.toString();
// }
// if (strGids == "") {
// Ext.Msg.show({ title: '提示', msg: '请选择已锁定、结算账户不为空(结算方式为现金除外),且未生成凭证的单据!', icon: Ext.Msg.INFO, buttons: Ext.Msg.OK });
// return;
// }
//
Ext . Ajax . request ( {
waitMsg : Zi . LAN . PreReadDataWait ,
url : '/Account/Chfee_settlement/GetIsVoucher' ,
params : {
strGids : this . editRecord . data . GID . toString ( )
} ,
callback : function ( options , success , response ) {
if ( success ) {
var result = Ext . JSON . decode ( response . responseText ) ;
if ( ! result . Success ) {
Ext . Msg . show ( { title : Zi . LAN . TiShi , msg : result . Message , icon : Ext . MessageBox . ERROR , buttons : Ext . Msg . OK } ) ;
return ;
}
//
this . storeListCw . load ( {
params : { strGids : this . editRecord . data . GID . toString ( ) } ,
callback : function ( r , options , success ) {
if ( success ) {
this . showContactForm ( false , this . editRecord . data . GID . toString ( ) , this ) ;
}
} , waitMsg : Zi . LAN . RefreshDataWait , scope : this
} ) ;
} else {
Ext . MessageBox . alert ( Zi . LAN . Error , response . responseText ) ;
}
} ,
scope : this
} ) ;
} ,
//#endregion
//#region 层_显示信息
showContactForm : function ( win , strGids , _this ) {
var required = '<span style="color:red;font-weight:bold;" data-qtip="Required">*</span>' ;
if ( ! win ) {
//#region 编辑formDiv 基本信息
var formDiv = Ext . widget ( 'form' , {
border : false ,
bodyPadding : 10 ,
fieldDefaults : {
labelAlign : 'right' ,
labelWidth : 60 ,
labelStyle : 'font-weight:bold'
} ,
items : [ this . comboxPREPARED , {
fieldLabel : Zi . LAN . AccountingDate ,
format : 'Y-m-d' ,
xtype : 'datefield' ,
allowBlank : false ,
name : 'VOUDATE' ,
value : Ext . util . Format . date ( Ext . Date . add ( new Date ( ) , Ext . Date . MONTH - 1 , 1 ) , "Y-m-d" )
} , this . comboxVKNO , //需求编号: SR2017080200007
{
xtype : "checkbox" , //checkbox控件
name : "ButtSettlement" ,
boxLabel : Zi . LAN . IsCreateBankAccount ,
width : 200 ,
inputValue : "true" , //选中的值
uncheckedValue : "false" //未选中的值
} , this . comboxMergeType , {
xtype : "checkbox" , //checkbox控件
name : "ISRATE" ,
boxLabel : Zi . LAN . IsReferSysTemRate ,
width : 200 ,
inputValue : "true" , //选中的值
uncheckedValue : "false" , //未选中的值
checked : true , //绘制时的选中状态,
listeners : {
'change' : function ( field , newValue , oldValue , eOpts ) {
if ( field . checked . toString ( ) == "false" ) {
this . gridListCw . show ( ) ;
}
else {
this . gridListCw . hide ( ) ;
}
} ,
scope : this
}
} , this . gridListCw
] ,
buttons : [ {
text : Zi . LAN . AddCwVouchers ,
handler : function ( options , success , response ) {
if ( ! this . up ( 'form' ) . getForm ( ) . isValid ( ) ) {
return ;
}
var dataDiv = this . up ( 'form' ) . getForm ( ) . getValues ( false , false , false ) ;
//
var j = 0 ;
var bodydatas = [ ] ;
for ( var i = 0 ; i < _this . storeListCw . getCount ( ) ; i += 1 ) {
var member = _this . storeListCw . getAt ( i ) ;
bodydatas . push ( member ) ;
}
var jsonBody ;
if ( bodydatas . length > 0 ) {
jsonBody = ConvertRecordsToJsonAll ( bodydatas ) ;
}
//
Ext . Msg . wait ( Zi . LAN . Msg _SavingAndWait ) ;
Ext . Ajax . request ( {
waitMsg : Zi . LAN . Msg _Saving ,
url : '/Account/Chfee_settlement/onAddCwVouchers' ,
scope : this ,
params : {
strGids : strGids ,
dataDiv : Ext . JSON . encode ( dataDiv ) ,
jsonBody : jsonBody
} ,
callback : function ( options , success , response ) {
if ( success ) {
Ext . MessageBox . hide ( ) ;
var jsonresult = Ext . JSON . decode ( response . responseText ) ;
if ( jsonresult . Success ) {
Ext . Msg . show ( { title : Zi . LAN . TiShi , msg : jsonresult . Message , icon : Ext . MessageBox . INFO , buttons : Ext . Msg . OK } ) ;
//刷新页面
var billno = _this . formEdit . getForm ( ) . findField ( 'BILLNO' ) . getValue ( ) ;
Ext . Ajax . request ( {
waitMsg : Zi . LAN . OnSelect ,
url : '/Account/Chfee_settlement/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 . TiShi ,
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 ) ;
var editp = Ext . create ( 'MsChSettlement' , 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 ( ) ;
_this . GetEditStatus ( ) ;
} else {
Ext . MessageBox . alert ( Zi . LAN . Error , response . responseText ) ;
}
} ,
scope : this
} ) ;
//Ext.getCmp('btnAddCwVouchers').setText("撤销凭证");
return ;
} else {
Ext . Msg . show ( { title : Zi . LAN . E , msg : jsonresult . Message , icon : Ext . Msg . ERROR , buttons : Ext . Msg . OK } ) ;
}
} else {
Ext . Msg . show ( { title : Zi . LAN . Retry , msg : Zi . LAN . ServerResponseError , icon : Ext . Msg . ERROR , buttons : Ext . Msg . OK } ) ;
}
}
} ) ;
//
this . up ( 'form' ) . getForm ( ) . reset ( ) ;
this . up ( 'window' ) . hide ( ) ;
}
} , {
text : Zi . LAN . Btn _Cancel ,
handler : function ( ) {
this . up ( 'form' ) . getForm ( ) . reset ( ) ;
this . up ( 'window' ) . hide ( ) ;
}
} ] ,
listeners : {
scope : this ,
'render' : function ( thisDiv , thisExtend ) {
//var ISRATE = thisDiv.form.findField('ISRATE').getValue().toString();
//if (ISRATE == "false") {
// this.gridListCw.show();
//}
//else {
// this.gridListCw.hide();
//}
this . gridListCw . hide ( ) ;
//
Ext . Ajax . request ( {
waitMsg : Zi . LAN . SelectDelegateNumberStatus ,
url : '/MvcShipping/MsBaseInfo/GetCwVOUNO' ,
params : {
VKNO : "记"
} ,
callback : function ( options , success , response ) {
if ( success ) {
var result = Ext . JSON . decode ( response . responseText ) ;
if ( ! result . Success ) {
Ext . Msg . show ( { title : Zi . LAN . TiShi , msg : result . Message , icon : Ext . MessageBox . INFO , buttons : Ext . Msg . OK } ) ;
return ;
}
//
data = result . data ;
var arrayList = new Array ( ) ;
arrayList = data . split ( "~" ) ;
var strY = arrayList [ 0 ] . toString ( ) ;
var strM = arrayList [ 1 ] . toString ( ) ;
var sVOUNO = arrayList [ 2 ] . toString ( ) ;
var strVOUNO = arrayList [ 3 ] . toString ( ) ;
var strVOUDATE = arrayList [ 4 ] . toString ( ) ;
var strACCDATE = arrayList [ 5 ] . toString ( ) ;
//
thisDiv . form . findField ( 'VOUDATE' ) . setValue ( strVOUDATE ) ;
thisDiv . form . findField ( 'VOUDATE' ) . setMinValue ( strACCDATE + "-01" ) ;
//Ext.getCmp('VOUDATE').setValue(strVOUDATE);
//Ext.getCmp('VOUDATE').setMinValue(strACCDATE + "-01");
} else {
Ext . MessageBox . alert ( Zi . LAN . Error , response . responseText ) ;
}
} ,
scope : this
} ) ;
}
}
} ) ;
//#endregion
win = Ext . widget ( 'window' , {
title : Zi . LAN . AuxiliaryAccounting ,
closeAction : 'hide' ,
width : 250 ,
height : 300 ,
layout : 'fit' ,
resizable : true ,
modal : true ,
closable : false ,
items : formDiv
} ) ;
}
win . show ( ) ;
}
//#endregion
} ) ;