///<reference path="../../../../Views/../TruckMng/Scripts/vswd-ext_2.0.2.js" />
Ext . namespace ( 'DsTruck' ) ;
var C _cargoinfo _id = "" ;
var HTHCount = 0 ;
DsTruck . JiekuanEdit = function ( config ) {
Ext . applyIf ( this , config ) ;
this . initUIComponents ( ) ;
window . DsTruck . JiekuanEdit . superclass . constructor . call ( this ) ;
} ;
Date . prototype . format = function ( format ) {
var o = {
"M+" : this . getMonth ( ) + 1 , //month
"d+" : this . getDate ( ) , //day
"h+" : this . getHours ( ) , //hour
"m+" : this . getMinutes ( ) , //minute
"s+" : this . getSeconds ( ) , //second
"q+" : Math . floor ( ( this . getMonth ( ) + 3 ) / 3 ) , //quarter
"S" : this . getMilliseconds ( ) //millisecond
}
if ( /(y+)/ . test ( format ) ) format = format . replace ( RegExp . $1 ,
( this . getFullYear ( ) + "" ) . substr ( 4 - RegExp . $1 . length ) ) ;
for ( var k in o ) if ( new RegExp ( "(" + k + ")" ) . test ( format ) )
format = format . replace ( RegExp . $1 ,
RegExp . $1 . length == 1 ? o [ k ] :
( "00" + o [ k ] ) . substr ( ( "" + o [ k ] ) . length ) ) ;
return format ;
}
var xhr = new XMLHttpRequest ( ) ;
var currdate = new Date ( ) ;
if ( ! xhr ) {
//...其他生成xmlhttprequest方法
}
xhr . open ( "HEAD" , location . href , true ) ;
xhr . onreadystatechange = function ( ) {
if ( xhr . readyState == 4 && xhr . status == 200 ) {
var datestr = xhr . getResponseHeader ( "Date" ) ;
currdate = new Date ( datestr ) ;
// alert(currdate.format('yyyy-MM-dd'));
}
}
xhr . send ( null ) ;
function getSaved ( ) {
var feedirty = DsTruck . GetDirty ( panelEdit . storeCHEQUE , panelEdit . storeCHEQUEDel ) ;
if ( panelEdit . formEdit . getForm ( ) . isDirty ( ) == true )
{
return true ;
}
else return false ;
}
Ext . extend ( DsTruck . JiekuanEdit , Ext . Panel , {
parentWin : null ,
OpStatus : 'add' ,
StoreList : null ,
editRecord : null ,
// parentfunction: null,
_First : true ,
initUIComponents : function ( ) {
this . feeSerialNo = 0 ;
this . CHEQUEDel = [ ] ;
//#region 枚举参照相关(编辑form)
Ext . define ( 'PayTypeMd' , {
extend : 'Ext.data.Model' ,
fields : [
{ name : 'PayTypeID' , type : 'string' } ,
{ name : 'PayTypeName' , type : 'string' }
]
} ) ;
var PayTypeData = [ { "PayTypeID" : "1" , "PayTypeName" : "成本" } ,
{ "PayTypeID" : "2" , "PayTypeName" : "费用" } ] ;
var storePayType = Ext . create ( 'Ext.data.Store' , {
model : 'PayTypeMd' ,
data : PayTypeData
} ) ;
this . comboxPayType = Ext . create ( 'DsExt.ux.RefEnumCombox' , {
//fieldLabel: '收付类型',
forceSelection : true ,
store : storePayType ,
name : 'Reason' ,
valueField : 'PayTypeName' ,
displayField : 'PayTypeName'
} ) ;
Ext . define ( 'TFmb' , {
extend : 'Ext.data.Model' ,
fields : [
{ name : 'TFID' , type : 'string' } ,
{ name : 'TFName' , type : 'string' }
]
} ) ;
var TFData = [ { "TFID" : "0" , "TFName" : "未借出" } ,
{ "TFID" : "1" , "TFName" : "已借出" } / * ,
{ "PayTypeID" : "2" , "PayTypeName" : "原单原转" } * / ] ;
this . storeTF = Ext . create ( 'Ext.data.Store' , {
model : 'TFmb' ,
data : TFData
} ) ;
this . comboxTF = Ext . create ( 'DsExt.ux.RefEnumCombox' , {
fieldLabel : '借款状态' ,
forceSelection : true ,
store : this . storeTF ,
name : 'ISOVER' ,
valueField : 'TFID' ,
displayField : 'TFName'
} ) ;
this . storeUser = Ext . create ( 'DsExt.ux.RefTableStore' , {
model : 'DsTruckMng.ux.UserRefModel' ,
proxy : { url : '/CommMng/BasicDataRef/GetUserRefList' }
} ) ;
this . storeUser . load ( { params : { condition : " 1=1 " } } ) ;
this . comboxCreator = Ext . create ( 'DsExt.ux.RefTableCombox' , {
fieldLabel : '制单人' ,
forceSelection : true ,
store : this . storeUser ,
name : 'ENTEROPERATOR' ,
id : "ENTEROPERATOR" ,
valueField : 'GID' ,
displayField : 'CodeAndName' ,
allowBlank : false ,
readOnly : true
} ) ;
this . comboxAuditor = Ext . create ( 'DsExt.ux.RefTableCombox' , {
fieldLabel : '审核人' ,
forceSelection : true ,
store : this . storeUser ,
name : 'AUDITOR' ,
id : "AUDITOR" ,
valueField : 'UserCode' ,
displayField : 'CodeAndName'
} ) ;
this . storecurr = Ext . create ( 'DsExt.ux.RefTableStore' , {
model : 'currRef' ,
proxy : { url : '/CommMng/BasicDataRef/GetcurrRefList' }
} ) ;
this . storecurr . load ( { params : { condition : "" } } ) ;
this . comboxcurr = Ext . create ( 'DsExt.ux.RefTableCombox' , {
forceSelection : true ,
fieldLabel : '币别' ,
store : this . storecurr ,
name : 'CURRENCY' ,
valueField : 'codename' ,
displayField : 'codename' ,
value : "RMB"
} ) ;
this . storeJKSTATUS = Ext . create ( 'DsExt.ux.RefEnumStore' , { } ) ;
this . storeJKSTATUS . load ( { params : { enumTypeId : 99024 } } ) ;
this . comboxJKSTATUS = Ext . create ( 'DsExt.ux.RefEnumCombox' , {
fieldLabel : '借款单状态' ,
//forceSelection :true,
store : this . storeJKSTATUS ,
name : 'JKSTATUS' ,
readOnly : true ,
id : "JKSTATUS"
} ) ;
this . storeFEESTATUS = Ext . create ( 'DsExt.ux.RefEnumStore' , { } ) ;
this . storeFEESTATUS . load ( { params : { enumTypeId : 99024 } } ) ;
this . comboxFEESTATUS = Ext . create ( 'DsExt.ux.RefEnumCombox' , {
fieldLabel : '费用状态' ,
forceSelection : true ,
store : this . storeFEESTATUS ,
name : 'FEESTATUS' ,
readOnly : true ,
id : "STATUS"
} ) ;
this . storeAccitems = Ext . create ( 'DsExt.ux.RefTableStore' , {
model : 'Accitemsmb' ,
proxy : { url : '/CommMng/BasicDataRef/GetAccitems' }
} ) ;
this . storeAccitems . load ( { params : { condition : "" } } ) ;
//通过mblno获取bsno
this . storeBS = Ext . create ( 'DsExt.ux.RefTableStore' , {
model : 'BSmb' ,
proxy : { url : '/OA/Baoxiao/GetBSNO' }
} ) ;
this . storeBS . load ( { params : { COMPANYID : COMPANYID } } ) ;
this . comboxMAKETIMEUPPER = Ext . create ( 'DsExt.ux.RefTableCombox' , {
//fieldLabel: '业务编号',
forceSelection : true ,
store : this . storeBS ,
name : 'MAKETIMEUPPER' ,
valueField : 'BSNO' ,
displayField : 'MBLNO'
} ) ;
this . comboxBANK = Ext . create ( 'DsExt.ux.RefTableCombox' , {
//fieldLabel: '收支方式', //收支的银行账户
store : this . storeAccitems ,
forceSelection : true ,
name : 'OPERATORSIDE' ,
valueField : 'ACCID' ,
displayField : 'ACCIDNAME' ,
flex : 1
} ) ;
//#endregion
//编辑form:formEdit
this . formEdit = Ext . widget ( 'form' , {
// layout: "border",
region : 'center' ,
frame : true ,
bodyPadding : 5 ,
trackResetOnLoad : true ,
fieldDefaults : {
margins : '2 2 2 2' ,
labelAlign : 'right' ,
flex : 1 ,
labelWidth : 90 ,
msgTarget : 'qtip'
//,split:true
} ,
bodyStyle : 'background:#FFF' ,
items : [
{ //fieldset 1
xtype : 'fieldset' ,
defaultType : 'textfield' ,
layout : 'anchor' ,
defaults : {
anchor : '100%'
} ,
items : [ { //container_1
xtype : 'container' ,
layout : 'hbox' ,
defaultType : 'textfield' ,
items : [ {
fieldLabel : '借款单单号' ,
// allowBlank: false,
//disabled: true,
name : 'GID'
} , {
fieldLabel : '金额' ,
//allowBlank: false,
readOnly : true ,
id : "AMOUNT_ALL" ,
name : 'AMOUNT' , flex : 1 ,
renderer : function ( value , cellmeta , record , rowIndex , columnIndex , store ) {
try {
var lsValue = usMoney ( value , 2 , '' , false ) ;
if ( lsValue != "NaN" ) {
value = lsValue ; if ( parseFloat ( lsValue ) < 0 ) {
return '<SPAN style="COLOR: red">' + lsValue + '</SPAN>' ;
}
}
else {
return value ;
}
}
catch ( e ) {
return value ;
}
return value ;
}
} , {
fieldLabel : 'COMPANYID' ,
hidden : true ,
id : "COMPANYID" ,
name : 'COMPANYID' , flex : 1
} , this . comboxCreator , {
fieldLabel : '制单时间' ,
format : 'Y-m-d H:i:s' , id : "ENTERDATE" ,
xtype : 'datefield' ,
renderer : Ext . util . Format . dateRenderer ( 'Y-m-d H:i:s' ) ,
name : 'ENTERDATE'
} , {
fieldLabel : 'DEPTID' ,
hidden : true ,
id : "DEPTID" ,
name : 'DEPTID' , flex : 1
} ]
} , //container_1 end
{
xtype : 'container' ,
layout : 'hbox' ,
defaultType : 'textfield' ,
items : [ {
fieldLabel : '剩余资金额度' , id : "REMAIN" ,
name : 'REMAIN' , readOnly : true ,
flex : 1 ,
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 . comboxJKSTATUS ,
{
fieldLabel : '备注' ,
name : 'REMARK' ,
flex : 2
} ]
} ,
{
xtype : 'container' ,
layout : 'hbox' ,
defaultType : 'textfield' ,
items : [ {
fieldLabel : 'COMPANY' ,
name : 'COMPANY' , hidden : true ,
flex : 1
} , {
fieldLabel : 'DEPTNAME' ,
name : 'DEPTNAME' , hidden : true ,
flex : 1
} , {
fieldLabel : 'BSNO' , id : "BSNO" ,
name : 'BSNO' , hidden : true ,
flex : 1
} ]
} ]
} ]
} ) ;
//////////////////////////////////
//明细 <<<< 收支费用明细 >>>>
//
/ *
this . storeAccitems = Ext . create ( 'DsExt.ux.RefTableStore' , {
model : 'Accitemsmb' ,
proxy : { url : '/CommMng/BasicDataRef/GetAccitems' }
} ) ;
this . storeAccitems . load ( { params : { condition : "" } } ) ;
* /
this . comboxAccitems = Ext . create ( 'DsExt.ux.RefTableCombox' , {
//fieldLabel: '费用科目',
store : this . storeAccitems ,
name : 'FEENAME' ,
valueField : 'ACCID' ,
displayField : 'ACCIDNAME'
} ) ;
this . storeFeeNameRef = Ext . create ( 'DsExt.ux.RefTableStore' , {
model : 'DsTruckMng.ux.FeeTypeRefModel' ,
proxy : { url : '/CommMng/BasicDataRef/GetFeeTypeRefList' }
} ) ;
this . storeFeeNameRef . load ( { params : { condition : "" } } ) ;
this . comboxFeeNameRef = Ext . create ( 'DsExt.ux.RefTableCombox' , {
store : this . storeFeeNameRef ,
name : 'FeeName' ,
valueField : 'Name' ,
displayField : 'CodeAndName'
} ) ;
this . storeCustomerNameRef = Ext . create ( 'DsExt.ux.RefTableStore' , {
model : 'DsTruckMng.ux.CustomRefModel' ,
proxy : { url : '/CommMng/BasicDataRef/GetCustomRefList' }
} ) ;
this . storeCustomerNameRef . load ( { params : { condition : "" } } ) ;
this . comboxCustomerNameRef = Ext . create ( 'DsExt.ux.RefTableCombox' , {
store : this . storeCustomerNameRef ,
name : 'CUSTOMERNAME' ,
valueField : 'CustName' ,
displayField : 'CodeAndName'
} ) ;
this . storecurr = Ext . create ( 'DsExt.ux.RefTableStore' , {
model : 'currRef' ,
proxy : { url : '/CommMng/BasicDataRef/GetcurrRefList' }
} ) ;
this . storecurr . load ( { params : { condition : "" } } ) ;
this . comboxcurr = Ext . create ( 'DsExt.ux.RefTableCombox' , {
store : this . storecurr ,
name : 'currid' ,
valueField : 'gid' ,
displayField : 'codename'
//币别
} ) ;
this . storeTAXRATE = Ext . create ( 'DsExt.ux.RefEnumStore' , { } ) ;
this . storeTAXRATE . load ( { params : { enumTypeId : 25 } } ) ;
this . comboxTAXRATE = Ext . create ( 'DsExt.ux.RefEnumCombox' , {
//fieldLabel: '税率',
store : this . storeTAXRATE ,
name : 'TAXRATE' ,
valueField : 'EnumValueName' ,
displayField : 'EnumValueName' ,
id : "TAXRATE"
} ) ;
//数据集
this . storeCHEQUE = Ext . create ( 'Ext.data.Store' , {
model : 'CHEQUEmb' ,
remoteSort : false ,
pruneModifiedRecords : true ,
proxy : {
type : 'ajax' ,
url : '/OA/Jiekuan/GetCHEQUE' ,
reader : {
id : 'gid' ,
root : 'data' ,
totalProperty : 'totalCount'
}
}
} ) ;
//表格
this . cellEditing = Ext . create ( 'Ext.grid.plugin.CellEditing' , {
clicksToEdit : 1
} ) ;
this . CheckBoxModel = Ext . create ( 'Ext.selection.CheckboxModel' ) ;
this . formCHEQUE = new Ext . grid . GridPanel ( {
store : this . storeCHEQUE ,
enableHdMenu : false ,
region : 'north' , bodyStyle : 'background:#FFF' ,
trackResetOnLoad : true ,
//height: 160,
title : '费用明细' ,
loadMask : { msg : "数据加载中,请稍等..." } ,
trackMouseOver : true ,
disableSelection : false ,
plugins : [ this . cellEditing ] ,
selModel : this . CheckBoxModel ,
selType : 'cellmodel' ,
tbar : [ {
text : '增加明细' ,
tooltip : '增加明细' ,
iconCls : "btnadddetail" ,
handler : function ( button , event ) {
this . onAddFeeClick ( button , event ) ;
} ,
scope : this
} , '-' , {
text : '删除明细' ,
tooltip : '删除明细' ,
iconCls : "btndeletedetail" ,
handler : function ( button , event ) {
this . onDelFeeClick ( button , event ) ;
} ,
scope : this
} ] ,
columns : [
{
sortable : true , hidden : true ,
dataIndex : 'GID' ,
header : 'GID' ,
width : 80
} , {
sortable : true ,
dataIndex : 'CUSTOMERNAME' ,
header : '客户名称' ,
editor : this . comboxCustomerNameRef ,
width : 120
} ,
{
sortable : true , hidden : true ,
dataIndex : 'BILLNO' ,
header : 'BILLNO' ,
width : 80
} , {
sortable : true ,
dataIndex : 'MAKETIMEUPPER' ,
header : '业务编号(提单号)' ,
//hidden: true,
width : 150 ,
renderer : function ( value , p , record ) {
if ( value == null || value == '' ) return '' ;
else return record . data . MBLNO ;
} ,
editor : this . comboxMAKETIMEUPPER
} ,
{
sortable : true , id : "CHEQUENO" ,
dataIndex : 'CHEQUENO' ,
header : '支票号' ,
editor : {
xtype : 'textfield' , //numberfield
selectOnFocus : true
} ,
width : 80
} ,
{
sortable : true ,
dataIndex : 'CHEQUEAMOUNTUPPER' ,
header : '借款金额' ,
editor : {
xtype : 'textfield' , //numberfield
selectOnFocus : true
} ,
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 : 'PURPOSE' ,
header : '用途' ,
editor : {
xtype : 'textfield' , //numberfield
selectOnFocus : true
} ,
width : 80
} ,
{
sortable : true ,
dataIndex : 'ModifiedTime' ,
header : '预计收回时间' ,
width : 80 ,
renderer : Ext . util . Format . dateRenderer ( 'Y-m-d' ) ,
editor : {
format : 'Y-m-d' ,
xtype : 'datefield' ,
selectOnFocus : true
}
} ,
{
sortable : true ,
dataIndex : 'CHEQUEAMOUNT' ,
header : '实际支取金额' ,
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 : 'PASSWORD' ,
header : '密码' ,
editor : {
xtype : 'textfield' , //numberfield
selectOnFocus : true
} ,
width : 80
} ,
{
sortable : true ,
dataIndex : 'CHEQUECUSTNAME' ,
header : '密码领取人' ,
width : 80
} ,
{
sortable : true ,
dataIndex : 'CHEQUEMAKETIME' ,
header : '支取时间' ,
width : 80 / * ,
renderer : Ext . util . Format . dateRenderer ( 'Y-m-d' ) ,
editor : {
xtype : 'datefield' ,
selectOnFocus : true
} * /
} ,
{
sortable : true ,
dataIndex : 'PRINTTIME' ,
header : '开出时间' ,
width : 80 ,
renderer : Ext . util . Format . dateRenderer ( 'Y-m-d' ) ,
editor : {
xtype : 'datefield' ,
selectOnFocus : true
}
} ,
{
sortable : true ,
dataIndex : 'PRINTUSER' ,
header : '开出人' ,
width : 80
} ]
} ) ;
//////////////////////////////////////////////明细<<<< 收支费用明细 >>>>结束
//公共按钮Toolbar:panelBtn
this . panelBtn = new Ext . Panel ( {
region : "north" ,
tbar : [
{
// id: "saveandclose",
text : "保存" ,
handler : function ( button , event ) {
this . Save ( '0' ) ;
} ,
scope : this
} , {
// id: "saveandclose",
text : "保存并关闭" ,
handler : function ( button , event ) {
this . Save ( '1' ) ;
} ,
scope : this
} ,
{
// id: "saveandclose",
text : "保存并新建" ,
handler : function ( button , event ) {
this . Save ( '2' ) ;
} ,
scope : this
} , '-' ,
{
// id: "saveandclose",
text : "关闭" ,
handler : function ( button , event ) {
window . close ( ) ;
} ,
scope : this
} , '-' ,
{
// id: "saveandclose",
text : "打印" ,
handler : function ( button , event ) {
this . DoPrint ( ) ;
} ,
scope : this
}
]
} ) ; //end 按钮Toolbar
//布局
/* 3 */
this . panelTop = new Ext . Panel ( {
layout : "border" ,
region : "north" ,
height : 32 , bodyStyle : 'background:#FFF' ,
items : [ this . panelBtn ] //, this.formEdit]
} ) ;
this . page _1 = new Ext . Panel ( {
title : "借款单" , bodyStyle : 'background:#FFF' ,
items : [ this . formCHEQUE , this . formEdit ]
} ) ;
/ *
this . page _2 = new Ext . Panel ( {
title : "库存管理" ,
items : [ this . formKC ]
} ) ;
this . page _3 = new Ext . Panel ( {
title : "票据管理" ,
items : [ this . gridListReceipt ]
} ) ;
this . page _4 = new Ext . Panel ( {
title : "应收应付录入" ,
items : [ this . gridListChFee ]
} ) ;
this . panelReceipt = new Ext . Panel ( {
layout : "border" ,
region : "center" ,
items : [ this . panelBodyReceipt ]
} ) ; * /
this . MainTab = new Ext . tab . Panel ( {
layout : "border" ,
region : "center" , bodyStyle : 'background:#FFF' ,
items : [
this . page _1
//, this.page_2
//, this.page_3
//, this.page_4
]
} )
Ext . apply ( this , {
items : [ this . panelTop , this . MainTab ]
} ) ;
parentWin = window . parent . opener ;
this . InitData ( ) ;
//集中绑定事件
this . formCHEQUE . on ( 'edit' , function ( editor , e , eOpts ) {
this . CHEQUEAfterEdit ( editor , e , eOpts ) ;
} , this ) ;
this . cellEditing . on ( 'beforeedit' , function ( editor , e ) {
//Ext.getCmp("zongshu").setText("1234");
return this . cellEditingBeforeEdit ( editor , e ) ;
} , this ) ;
} , //end initUIComponents
parentfunction : function ( button , event ) {
var ret1 = window . parent . opener . OprationSwap ( ) ;
// alert(this.First);
ret1 [ 3 ] ( ) ;
} ,
onAddFeeClick : function ( button , event , type ) {
/ *
if ( this . OpStatus == 'add' ) {
this . Save ( '0' ) ;
this . onAddFeeClick ( button , event ) ;
} * /
function newID ( ) {
var guid = "" ;
for ( var i = 1 ; i <= 32 ; i ++ ) {
var n = Math . floor ( Math . random ( ) * 16.0 ) . toString ( 16 ) ;
guid += n ;
if ( ( i == 8 ) || ( i == 12 ) || ( i == 16 ) || ( i == 20 ) )
guid += "-" ;
}
return guid . toUpperCase ( ) ;
}
var store = null ;
store = this . storeCHEQUE ;
//var newSerialno = this.GetHandleSerialNo(store, type);
var record = null ;
record = Ext . create ( 'CHEQUEmb' , {
GID : newID ( ) ,
BILLNO : '' ,
CHEQUENO : '' ,
CHEQUEAMOUNT : '0' ,
CHEQUEAMOUNTUPPER : '0' ,
PASSWORD : '' ,
CHEQUEMAKETIME : '' ,
CREATEUSER : '' ,
CREATETIME : '' ,
PRINTTIME : '' ,
PRINTUSER : '' ,
PURPOSE : ''
} ) ;
//alert(Ext.getCmp("CREATEDATE").getRawValue());
store . add ( record ) ;
cellediting = this . cellEditing ;
var n = store . getCount ( ) ;
cellediting . startEditByPosition ( { row : n - 1 , column : 2 } ) ;
} ,
onDelFeeClick : function ( button , event ) {
var selectedRecords = this . formCHEQUE . selModel . getSelection ( ) ;
Ext . MessageBox . confirm ( '提示' , '确定删除记录吗?' , function ( btn ) {
if ( btn == 'yes' ) {
for ( var i = 0 ; i < selectedRecords . length ; i ++ ) {
var rec = selectedRecords [ i ] ;
if ( rec . GID != "" || rec . GID != "*" ) //如果是新增但没有保存的数据,没有必要提交到后台
{
this . CHEQUEDel . push ( rec ) ;
}
this . storeCHEQUE . remove ( selectedRecords [ i ] ) ;
}
}
} , this ) ;
//aftereditform();
} ,
CHEQUEAfterEdit : function ( editor , e , eOpts ) {
//需要自己实现里面的事件
if ( e . field == 'MAKETIMEUPPER' ) {
var BSrecords = DsStoreQueryBy ( this . storeBS , 'BSNO' , e . value ) ;
if ( BSrecords . getCount ( ) > 0 ) {
var BSdata = BSrecords . getAt ( 0 ) . data ;
e . record . set ( 'MAKETIMEUPPER' , BSdata . BSNO ) ;
e . record . set ( 'MBLNO' , BSdata . MBLNO ) ;
} else {
e . record . set ( 'MAKETIMEUPPER' , '' ) ;
e . record . set ( 'MBLNO' , '' ) ;
}
}
var Amount _ALL = 0 ;
for ( var i = 0 ; i < this . storeCHEQUE . getCount ( ) ; i += 1 ) {
Amount _ALL = Amount _ALL + parseFloat ( this . storeCHEQUE . getAt ( i ) . get ( "CHEQUEAMOUNTUPPER" ) ) ;
}
//this.editRecord.set('AMOUNT', Amount + '');
//this.formEdit.getForm().setValues(this.editRecord.data);
Ext . getCmp ( "AMOUNT_ALL" ) . setValue ( Amount _ALL + "" ) ;
//getElementById("AMOUNT_ALL").value = Amount + "";
} ,
cellEditingBeforeEdit : function ( editor , e ) {
if ( this . OpStatus == "add" ) {
var JKStatus = "1" ;
} else {
var JKStatus = this . editRecord . get ( 'JKSTATUS' ) ;
}
/ * t h i s . V I S I B L E R A N G E 可 视
this . OPERATERANGE 可操作 ; * /
//可操作为0则全都可见, 3为可提交/驳回,2为可审核/驳回, 1为只能看
var canedit = true ;
if ( this . OPERATERANGE == 1 ) {
canedit = false ;
} //chfeefeeStatus == 1 || chfeefeeStatus == 2 || chfeefeeStatus == 6
if ( this . OPERATERANGE == 2 ) {
canedit = JKStatus == 0 || JKStatus == 2 ;
}
if ( this . OPERATERANGE == 3 ) {
canedit = JKStatus == 1 || JKStatus == 6 ;
}
//alert(canedit);
return canedit ;
} ,
InitData : function ( ) {
this . OpStatus = 'add' ;
var condition = '' ;
if ( parentWin ) {
var ret = parentWin . OprationSwap ( ) ;
this . OpStatus = ret [ 0 ] ;
this . StoreList = ret [ 1 ] ;
this . editRecord = ret [ 2 ] ;
// this.parentfunction = ret[3];
}
if ( this . OpStatus == 'edit' ) {
condition = " jk.GID='" + this . editRecord . get ( 'GID' ) + "'" ;
}
else {
Ext . getCmp ( "AMOUNT_ALL" ) . setValue ( "0" ) ;
//Ext.getCmp("CHEQUEAMOUNT").setValue("0");
}
var me = this ;
Ext . Ajax . request ( {
waitMsg : '正在查询用户权限...' ,
url : '/CommMng/BasicDataRef/GetAuthorityRange' ,
params : {
modName : "mod_Baoxiao" ,
USERID : USERID
} ,
callback : function ( options , success , response ) {
if ( success ) {
var result = Ext . JSON . decode ( response . responseText ) ;
rec = result . data ;
//alert(rec.VISIBLERANGE);
//alert(rec.OPERATERANGE);
//可操作为0则全都可见, 3为可提交/驳回,2为可审核/驳回, 1为只能看
this . VISIBLERANGE = rec . VISIBLERANGE ;
this . OPERATERANGE = rec . OPERATERANGE ;
if ( this . OPERATERANGE == '0' ) {
//me.formPayBody.show();
} else
if ( this . OPERATERANGE == '1' ) {
//me.formPayBody.hide();
} else
if ( this . OPERATERANGE == '2' ) {
//me.formPayBody.show();
} else { //3
//me.formPayBody.hide();
}
} else {
Ext . MessageBox . alert ( '请求出现错误,请重试' , response . responseText ) ;
}
} ,
scope : this
} ) ; //request over
this . LoadData ( this . OpStatus , condition ) ;
//Ext.getCmp("CHEQUENO").disable();
} , //end InitData
//载入数据
LoadData : function ( OpStatus , condition ) {
this . OpStatus = OpStatus ;
Ext . Ajax . request ( {
waitMsg : '正在查询主表数据...' ,
url : '/OA/Jiekuan/GetData' ,
params : {
handle : OpStatus ,
condition : condition
} ,
callback : function ( options , success , response ) {
if ( success ) {
var result = Ext . JSON . decode ( response . responseText ) ;
if ( ! result . Success ) {
Ext . Msg . show ( {
title : '提示' ,
msg : result . Message ,
icon : Ext . MessageBox . ERROR ,
buttons : Ext . Msg . OK
} ) ;
return ;
}
var basicForm = this . formEdit . getForm ( ) ;
var data = result . data ;
// this.formEdit.getForm().reset();
if ( data . ENTERDATE == "" ) { data . ENTERDATE = currdate . format ( 'yyyy-MM-dd hh:mm:ss' ) } ;
if ( data . ENTEROPERATOR == "" ) {
//basicForm.findField('ENTEROPERATOR').setDisabled(false);
data . ENTEROPERATOR = USERID ;
//basicForm.findField('ENTEROPERATOR').setDisabled(true);
} ;
if ( data . DEPTID == "" ) { data . DEPTID = DEPTID } ;
if ( DEPTID == "" ) {
alert ( "登陆信息不完整,请重新登陆" ) ;
return ;
}
if ( data . AMOUNT == "" ) { data . AMOUNT = 0 } ;
//if (data.CHEQUEAMOUNT == "") { data.CHEQUEAMOUNT = 0 };
//if (data.BXSTATUS_REF == "") { data.BXSTATUS_REF = "录入状态" };
//if (data.BXSTATUS == "") { data.BXSTATUS = 1 };
if ( this . OpStatus == 'add' ) {
data . COMPANYID = COMPANYID ;
data . DEPTID = DEPTGID ;
data . JKSTATUS = "1" ;
}
if ( data . DEPTID == "" || data . ENTEROPERATOR == "" || data . COMPANYID == "" ) {
alert ( "登陆信息不完整,请重新登陆" ) ;
return ;
}
basicForm . findField ( 'GID' ) . setDisabled ( false ) ;
//basicForm.findField('ENTEROPERATOR').setDisabled(false);
//basicForm.findField('BXSTATUS').setDisabled(false);
this . formEdit . getForm ( ) . setValues ( data ) ;
basicForm . findField ( 'GID' ) . setDisabled ( true ) ;
//basicForm.findField('ENTEROPERATOR').setDisabled(true);
//basicForm.findField('BXSTATUS').setDisabled(true);
//alert(data.TimeMark);
if ( data . BSNO != '' ) {
Ext . getCmp ( "MBLNO" ) . setRawValue ( data . MBLNO ) ;
}
} else {
Ext . MessageBox . alert ( '请求出现错误,请重试' , response . responseText ) ;
}
} ,
scope : this
} ) ; //request over
if ( this . OpStatus == 'edit' ) {
this . formEdit . getForm ( ) . findField ( 'GID' ) . setDisabled ( false ) ;
var bsno = this . editRecord . get ( 'GID' ) ;
this . storeCHEQUE . load ( { params : { condition : " BILLNO='" + this . editRecord . get ( 'GID' ) + "' " } } ) ;
this . formEdit . getForm ( ) . findField ( 'GID' ) . setDisabled ( true ) ;
}
} , // end LoadDate
checkedit : function ( status ) {
/ *
if ( status != 1 && status != 2 && status != 6 ) {
alert ( "只有 录入状态/提交审核/驳回提交 的费用才能保存" ) ;
return false ;
} else { return true ; } * /
} ,
Save : function ( type ) {
var Amount _ALL = 0 ;
for ( var i = 0 ; i < this . storeCHEQUE . getCount ( ) ; i += 1 ) {
Amount _ALL = Amount _ALL + parseFloat ( this . storeCHEQUE . getAt ( i ) . get ( "CHEQUEAMOUNTUPPER" ) ) ;
}
Ext . getCmp ( "AMOUNT_ALL" ) . setValue ( Amount _ALL + "" ) ;
var basicForm = this . formEdit . getForm ( ) ;
if ( ! basicForm . isValid ( ) ) {
return ;
}
basicForm . findField ( 'GID' ) . setDisabled ( false ) ;
//basicForm.findField('AMOUNT').setDisabled(false);
//basicForm.findField('ENTEROPERATOR').setDisabled(false);
//basicForm.findField('JKSTATUS').setDisabled(false);
//basicForm.findField('MBLNO').setDisabled(true);
var data = this . formEdit . getForm ( ) . getValues ( ) ;
var GID = data . GID ;
basicForm . findField ( 'GID' ) . setDisabled ( true ) ;
//basicForm.findField('AMOUNT').setDisabled(true);
//basicForm.findField('ENTEROPERATOR').setDisabled(true);
//basicForm.findField('JKSTATUS').setDisabled(true);
//basicForm.findField('CUSTNO').setDisabled(false);
//basicForm.findField('MBLNO').setDisabled(false);
/ *
if ( ! this . checkedit ( status ) ) {
return ;
} * /
var CHEQUEdatas = [ ] ;
for ( var i = 0 ; i < this . storeCHEQUE . getCount ( ) ; i += 1 ) {
var member = this . storeCHEQUE . getAt ( i ) ;
CHEQUEdatas . push ( member ) ;
}
//明细
var CHEQUEBody = ConvertRecordsToJson ( CHEQUEdatas ) ;
var CHEQUEDelBody = ConvertRecordsToJsonAll ( this . CHEQUEDel ) ;
var _this = this ;
Ext . Msg . wait ( '正在保存数据, 请稍侯..' ) ;
Ext . Ajax . request ( {
waitMsg : '正在保存数据...' ,
url : '/OA/Jiekuan/Save' ,
scope : this ,
async : false ,
params : {
OpStatus : this . OpStatus ,
data : Ext . JSON . encode ( data ) ,
CHEQUEBody : CHEQUEBody ,
CHEQUEDelBody : CHEQUEDelBody
} ,
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 . add ( returnData ) ;
this . editRecord = arrNewRecords [ 0 ] ;
this . OpStatus = 'edit' ;
}
else if ( this . OpStatus == 'edit' ) {
var editp = Ext . create ( 'Jiekuanmb' , returnData ) ;
this . editRecord . fields . each ( function ( field ) {
if ( field . persist ) {
name = field . name ;
//alert(name + ' -- ' + editp.get(name));
if ( name != 'GID' )
this . editRecord . set ( name , editp . get ( name ) ) ;
}
} , this ) ;
this . editRecord . commit ( ) ;
}
this . storeCHEQUE . commitChanges ( ) ;
if ( type == '0' ) {
this . OpStatus = 'edit' ;
//this.storeCHEQUE.load({ params: { condition: " BILLNO='" + this.editRecord.get('GID') + "' "} });
this . storeCHEQUE . each ( function ( record ) {
var BILLNO = _this . editRecord . get ( 'GID' ) ;
record . set ( 'BILLNO' , BILLNO ) ;
} ) ;
this . storeCHEQUE . commitChanges ( ) ;
} else if ( type == '1' ) { //保存并关闭
window . close ( ) ;
} else if ( type == '2' ) { //保存并全部新建
this . LoadData ( 'add' , '' ) ;
}
} else {
Ext . Msg . show ( { title : '错误' , msg : jsonresult . Message , icon : Ext . Msg . ERROR , buttons : Ext . Msg . OK } ) ;
}
} else {
Ext . Msg . show ( { title : '请重试' ,
msg : '服务器响应出错' ,
icon : Ext . Msg . ERROR , buttons : Ext . Msg . OK
} ) ;
}
//alert('03');
}
} ) ;
}
//end save
, DoPrint : function ( ) {
var basicForm = this . formEdit . getForm ( ) ;
var GID = this . editRecord . get ( 'GID' )
/ *
if ( ContractNo == '*' || ContractNo == '' ) {
Ext . Msg . show ( { title : '错误' , msg : '单据还没有保存,请保存后再打印' , icon : Ext . Msg . ERROR , buttons : Ext . Msg . OK } ) ;
return ;
} * /
function GetDateStr ( AddDayCount ) {
var dd = new Date ( ) ;
dd . setDate ( dd . getDate ( ) + AddDayCount ) ; //获取AddDayCount天后的日期
var y = dd . getFullYear ( ) ;
var m = dd . getMonth ( ) + 1 ; //获取当前月份的日期
var d = dd . getDate ( ) ;
return y + "-" + m + "-" + d ;
}
//alert(GetDateStr(+5));
//var needdate = GetDateStr(+5);
//var printdate = GetDateStr(0);
var _date = Ext . getCmp ( "ENTERDATE" ) . getRawValue ( ) ;
var printType = 'Jiekuan' ; //打印借款单
//
var data = this . formEdit . getForm ( ) . getValues ( ) ;
var JKUSERID = data . USERID ;
var sql1 = " select jk.GID,jk.ENTEROPERATOR,u.showname,dbo.trimdate(jk.ENTERDATE) ENTERDATE,jk.COMPANYID,jk.DEPTID,jk.AMOUNT " ;
var sql1 = sql1 + " ,sd.deptname,jk.ISDELETE,jk.DELETEUSER,jk.DELETETIME,vs.MBLNO,vs.CUSTNO,vs.customername,jk.remark " ;
var sql1 = sql1 + " FROM OA_Jiekuan jk " ;
var sql1 = sql1 + " left join sys_dept sd on sd.gid=jk.deptid " ;
var sql1 = sql1 + " left join [user] u on u.gid=jk.ENTEROPERATOR " ;
var sql1 = sql1 + " left join [vw_settlement] vs on vs.bsno=jk.bsno " ;
var sql1 = sql1 + " where jk.GID='" + GID + "' " ;
var sql2 = " select cfc.GID,BILLNO,CHEQUENO,convert(numeric(18,2),isnull(CHEQUEAMOUNTUPPER,0)) CHEQUEAMOUNTUPPER,PASSWORD,dbo.trimdate(CHEQUEMAKETIME) CHEQUEMAKETIME,PRINTTIME,PRINTUSER,PURPOSE,CHEQUECUSTNAME,vs.CUSTNO " ;
var sql2 = sql2 + " ,vs.mblno,cfc.customername" ;
/ * v a r s q l 2 = s q l 2 + " , i s n u l l ( ( s e l e c t s u m ( i s n u l l ( a m o u n t , 0 ) ) f r o m c h _ f e e w h e r e F E E T Y P E = 1 a n d C U S T O M E R N A M E = c f c . c u s t o m e r n a m e " ;
var sql2 = sql2 + " and enterdate>(select starttime from Customer_Balance where CustomerGID=(select gid from info_client where SHORTNAME=cfc.customername)) " ;
var sql2 = sql2 + " and enterdate<='" + _date + "' and ISADVANCEDPAY=0 ),0) w_w_amount " ;
var sql2 = sql2 + " ,isnull((select sum(isnull(doamount,0)) from ch_fee_do cfd where CUSTOMERNAME=cfc.customername and feetype=1 and createtime> " ;
var sql2 = sql2 + " (select starttime from Customer_Balance where CustomerGID=(select gid from info_client where SHORTNAME=cfc.customername)) " ;
var sql2 = sql2 + " and createtime<='" + _date + "' and billno like '%iv%' and (ISDELETED is null or ISDELETED=0) and (select ISADVANCEDPAY from ch_fee where gid=cfd.feeid)='false'),0) y_w_amount " ;
var sql2 = sql2 + " ,isnull((select sum(isnull(doamount,0)) from ch_fee_do cfd2 where CUSTOMERNAME=cfc.customername and feetype=1 and createtime> " ;
var sql2 = sql2 + " (select starttime from Customer_Balance where CustomerGID=(select gid from info_client where SHORTNAME=cfc.customername)) " ;
var sql2 = sql2 + " and billno like '%ad%' and (ISDELETED is null or ISDELETED=0) and (select isadvancedpay from ch_fee where ch_fee.gid=cfd2.feeid)='false'),0) y_y_amount,balance_1,balance_2 " ; * /
var sql2 = sql2 + " ,Modifiedtime,(select email from op_seai where bsno=cfc.Maketimeupper) email " ; //OPERATOREMAIL
var sql2 = sql2 + " ,(select OPERATOREMAIL from op_seae where mblno=vs.mblno) email_2 " ;
var sql2 = sql2 + " ,(select top 1 email from info_client where shortname=cfc.customername) cust_email " ;
var sql2 = sql2 + " from ch_fee_cheque cfc left join vw_settlement vs on vs.bsno=cfc.Maketimeupper " ;
var sql2 = sql2 + " left join customer_balance cb on cb.customergid=(select gid from info_client where SHORTNAME=cfc.customername) and cb.DeptGID=(select top 1 DeptGID from VW_User where SHOWNAME=vs.inputby) " ;
var sql2 = sql2 + " where billno= '" + GID + "' " ;
var sql3 = "" ;
var sql4 = "select dbo.GetRemain_ZWC ((select gid from sys_dept where linkid= " ;
var sql4 = sql4 + "(select companyid from user_company where userid='" + JKUSERID + "') " ;
var sql4 = sql4 + "and deptname= " ;
var sql4 = sql4 + "(select deptname from user_baseinfo where userid='" + JKUSERID + "') " ;
var sql4 = sql4 + "),'" + _date + "')" ; //获取该部门剩余资金
var sql5 = " select * from (select * from vw_customerbalance " ;
sql5 = sql5 + " union all " ;
sql5 = sql5 + " select '',ic.gid,0,0,0,0,0,ic.SHORTNAME,'','','','',ic.CODENAME,0,0,0,0,0,null from info_client ic " ;
sql5 = sql5 + " where gid not in(select customergid from Customer_Balance))tt " ;
sql5 = sql5 + " where tt.customername in( " ;
sql5 = sql5 + " select distinct customername from ch_fee_cheque where billno='" + GID + "' ) " ;
var sql6 = "" ;
PrintComm ( printType , sql1 , sql2 , sql3 , sql4 , sql5 , sql6 ) ;
}
} ) ;