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

1318 lines
51 KiB
JavaScript

11 months ago
Ext.namespace('Shipping');
Shipping.MsExchangesUnitEdit = function (config) {
Ext.applyIf(this, config);
this.initUIComponents();
window.Shipping.MsExchangesUnitEdit.superclass.constructor.call(this);
};
Ext.extend(Shipping.MsExchangesUnitEdit, Ext.Panel, {
ParentWin: null,
OpStatus: 'add',
StoreList: null,
editRecord: null,
Editdata: null,
initUIComponents: function () {
//#region formSearch 下拉框信息加载
//权限范围
this.StoreOpRange = Ext.create('DsExt.ux.RefTableStore', {
model: 'MsOP',
proxy: { url: '/MvcShipping/MsBaseInfo/GetOpRang' }
});
//人员信息加载
this.storeOpCode = Ext.create('DsExt.ux.RefTableStore', {
model: 'DsShipping.ux.UserRefModel',
proxy: { url: '/CommMng/BasicDataRef/GetUserRefList' }
});
this.storeOpCode.load();
//揽货人
this.comboxSALE = Ext.create('DsExt.ux.RefTableCombox', {
fieldLabel: '揽货人',
store: this.storeOpCode,
forceSelection: true,
name: 'SALE',
valueField: 'UserName',
displayField: 'CodeAndName',
value: SHOWNAME
});
//操 作
this.comboxOP = Ext.create('DsExt.ux.RefTableCombox', {
fieldLabel: '操作',
store: this.storeOpCode,
forceSelection: true,
name: 'OP',
valueField: 'UserName',
displayField: 'CodeAndName'
});
//单证
this.comboxDOC = Ext.create('DsExt.ux.RefTableCombox', {
fieldLabel: '单证',
store: this.storeOpCode,
forceSelection: true,
name: 'DOC',
valueField: 'UserName',
displayField: 'CodeAndName'
});
//结算方式
Ext.define('STLNAMEModel', { extend: 'Ext.data.Model', fields: [{ name: 'Name', type: 'string'}] });
var dataSTLNAME = [{ "Name": "票结" }, { "Name": "月结" }, { "Name": "半月结" }, { "Name": "周结" }, { "Name": ""}];
var storeSTLNAME = Ext.create('Ext.data.Store', { model: 'STLNAMEModel', data: dataSTLNAME });
this.comboxSTLNAME = Ext.create('DsExt.ux.RefTableCombox', {
fieldLabel: '结算方式',
forceSelection: true,
store: storeSTLNAME,
name: 'STLNAME',
valueField: 'Name',
displayField: 'Name',
listeners: {
scope: this,
'change': function (_Field, newValue, oldValue, eOpts) {
if (newValue == "票结") {
this.formJSFS.getForm().findField('STLDATEPJ').show(); //票结
Ext.getCmp('lbPJ').show(); //票结
Ext.getCmp('lbZJ').hide(); //周结
this.formJSFS.getForm().findField('STLDATE').hide(); //月结
this.formJSFS.getForm().findField('STLFIRSTHALFDATE').hide(); //上半月
this.formJSFS.getForm().findField('STLMIDDLEDATE').hide(); //下半月
}
else if (newValue == "月结") {
this.formJSFS.getForm().findField('STLDATEPJ').hide(); //票结
Ext.getCmp('lbPJ').hide(); //票结
Ext.getCmp('lbZJ').hide(); //周结
this.formJSFS.getForm().findField('STLDATE').show(); //月结
this.formJSFS.getForm().findField('STLFIRSTHALFDATE').hide(); //上半月
this.formJSFS.getForm().findField('STLMIDDLEDATE').hide(); //下半月
}
else if (newValue == "半月结") {
this.formJSFS.getForm().findField('STLDATEPJ').hide(); //票结
Ext.getCmp('lbPJ').hide(); //票结
Ext.getCmp('lbZJ').hide(); //周结
this.formJSFS.getForm().findField('STLDATE').hide(); //月结
this.formJSFS.getForm().findField('STLFIRSTHALFDATE').show(); //上半月
this.formJSFS.getForm().findField('STLMIDDLEDATE').show(); //下半月
}
else if (newValue == "周结") {
this.formJSFS.getForm().findField('STLDATEPJ').show(); //票结
Ext.getCmp('lbPJ').hide(); //票结
Ext.getCmp('lbZJ').show(); //周结
this.formJSFS.getForm().findField('STLDATE').hide(); //月结
this.formJSFS.getForm().findField('STLFIRSTHALFDATE').hide(); //上半月
this.formJSFS.getForm().findField('STLMIDDLEDATE').hide(); //下半月
}
}
}
});
//#endregion
//#region 编辑formHead 基本信息
this.formHead = Ext.widget('form', {
region: 'north',
style: 'border:0px solid black; border-top:0;', //隐藏边框
frame: true,
fieldDefaults: {
labelAlign: 'right',
flex: 1,
labelWidth: 60
},
items: [{
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
fieldLabel: '编号',
name: 'GID',
hidden: true,
value: "*"
}, {
xtype: "checkbox", //checkbox控件
id: "ISSTOP",
name: "ISSTOP",
boxLabel: "该往来单位停止使用",
width: 160,
inputValue: "true", //选中的值
uncheckedValue: "false" //未选中的值
}, this.comboxSALE, this.comboxOP, this.comboxDOC]
}]
});
this.formJBXX = Ext.widget('form', {
title: '基本信息',
region: 'north',
frame: true,
collapsible: true, //将激活折叠功能
fieldDefaults: {
labelAlign: 'right',
flex: 1,
labelWidth: 90
},
items: [{
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
fieldLabel: '*客户代码',
name: 'CODENAME',
style: 'color:red',
allowBlank: false
},
{
fieldLabel: '*客户简称',
name: 'SHORTNAME',
style: 'color:red',
allowBlank: false
},
{
fieldLabel: '*客户全称',
name: 'DESCRIPTION',
style: 'color:red',
allowBlank: false,
listeners: {
scope: this,
'blur': {
fn: function (_field, e) {
var qc = _field.value.toString();
//发票抬头 本位币
var sBillRises1 = this.formCWXX.getForm().findField('BillRises1').getValue("").toString();
if (sBillRises1 == "") {
this.formCWXX.getForm().findField('BillRises1').setValue(qc);
}
//发票抬头 外币
var sBillRises2 = this.formCWXX.getForm().findField('BillRises2').getValue("").toString();
if (sBillRises2 == "") {
this.formCWXX.getForm().findField('BillRises2').setValue(qc);
}
//支票抬头 本位币
var sRMBBillRises = this.formCWXX.getForm().findField('RMBBillRises').getValue("").toString();
if (sRMBBillRises == "") {
this.formCWXX.getForm().findField('RMBBillRises').setValue(qc);
}
//支票抬头 外币
var sUSDBillRises = this.formCWXX.getForm().findField('USDBillRises').getValue("").toString();
if (sUSDBillRises == "") {
this.formCWXX.getForm().findField('USDBillRises').setValue(qc);
}
}
}
}
}]
}, {
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{ xtype: 'hiddenfield', height: 5}]
}, {
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
fieldLabel: '序号',
name: 'TAXNO'
},
{
fieldLabel: '英文简称',
name: 'NAME'
},
{
fieldLabel: '英文全称',
name: 'ENFULLNAME'
}]
}, {
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{ xtype: 'hiddenfield', height: 5}]
}, {
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
fieldLabel: '负责人',
name: 'CHIEF'
},
{
fieldLabel: '电话',
name: 'TEL'
}, {
fieldLabel: '传真',
name: 'FAX'
}]
}, {
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{ xtype: 'hiddenfield', height: 5}]
}, {
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
fieldLabel: '公司地址',
name: 'ADDR'
},
{
fieldLabel: '邮箱',
name: 'EMAIL'
},
{
fieldLabel: '网页',
name: 'WEB'
}]
}, {
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{ xtype: 'hiddenfield', height: 5}]
}, {
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
fieldLabel: 'QQ',
name: 'QQ'
},
{
fieldLabel: 'MSN',
name: 'MSN'
},
{
fieldLabel: '组织机构代码',
name: 'ORGANIZATIONCODE'
}]
}]
});
this.formQYSX = Ext.widget('form', {
title: '*往来单位属性(可以多选)',
region: 'north',
frame: true,
collapsible: true, //将激活折叠功能
fieldDefaults: {
labelAlign: 'right',
flex: 1,
labelWidth: 60
},
items: [{
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
xtype: "checkbox", //checkbox控件
name: "ISCARRIER",
boxLabel: "船公司",
inputValue: "true", //选中的值
uncheckedValue: "false" //未选中的值
}, {
xtype: "checkbox", //checkbox控件
name: "ISCONTROLLER",
boxLabel: "委托单位",
inputValue: "true", //选中的值
uncheckedValue: "false" //未选中的值
}, {
xtype: "checkbox", //checkbox控件
name: "ISYARD",
boxLabel: "场站",
inputValue: "true", //选中的值
uncheckedValue: "false" //未选中的值
}, {
xtype: "checkbox", //checkbox控件
name: "ISCUSTOM",
boxLabel: "报关行",
inputValue: "true", //选中的值
uncheckedValue: "false" //未选中的值
}, {
xtype: "checkbox", //checkbox控件
name: "ISSHIPPER",
boxLabel: "发货人",
inputValue: "true", //选中的值
uncheckedValue: "false" //未选中的值
}, {
xtype: "checkbox", //checkbox控件
name: "ISCONSIGNEE",
boxLabel: "收货人",
inputValue: "true", //选中的值
uncheckedValue: "false" //未选中的值
}]
}, {
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
xtype: "checkbox", //checkbox控件
name: "ISBOOKING",
boxLabel: "订舱代理",
inputValue: "true", //选中的值
uncheckedValue: "false" //未选中的值
}, {
xtype: "checkbox", //checkbox控件
name: "ISAIRLINES",
boxLabel: "航空公司",
inputValue: "true", //选中的值
uncheckedValue: "false" //未选中的值
}, {
xtype: "checkbox", //checkbox控件
name: "ISWAREHOUSE",
boxLabel: "仓库",
inputValue: "true", //选中的值
uncheckedValue: "false" //未选中的值
}, {
xtype: "checkbox", //checkbox控件
name: "ISEXPRESS",
boxLabel: "快递公司",
inputValue: "true", //选中的值
uncheckedValue: "false" //未选中的值
}, {
xtype: "checkbox", //checkbox控件
name: "ISAGENTCN",
boxLabel: "国内代理",
inputValue: "true", //选中的值
uncheckedValue: "false" //未选中的值
}, {
xtype: "checkbox", //checkbox控件
name: "ISAGENT",
boxLabel: "国外代理",
inputValue: "true", //选中的值
uncheckedValue: "false" //未选中的值
}]
}, {
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
xtype: "checkbox", //checkbox控件
name: "ISTRUCK",
boxLabel: "车队",
inputValue: "true", //选中的值
uncheckedValue: "false" //未选中的值
}, {
xtype: "checkbox", //checkbox控件
name: "ISWHARF",
boxLabel: "码头",
inputValue: "true", //选中的值
uncheckedValue: "false" //未选中的值
}, {
xtype: "checkbox", //checkbox控件
name: "ISSHIPPINGAGENT",
boxLabel: "船代",
inputValue: "true", //选中的值
uncheckedValue: "false" //未选中的值
}, {
xtype: "checkbox", //checkbox控件
name: "ISINSURE",
boxLabel: "保险公司",
inputValue: "true", //选中的值
uncheckedValue: "false" //未选中的值
}, {
xtype: "checkbox", //checkbox控件
name: "ISLEASING",
boxLabel: "租箱公司",
inputValue: "true", //选中的值
uncheckedValue: "false" //未选中的值
}, {
xtype: "checkbox", //checkbox控件
name: "ISTRADINGAGENCY",
boxLabel: "贸易代理",
inputValue: "true", //选中的值
uncheckedValue: "false" //未选中的值
}]
}, {
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
xtype: "checkbox", //checkbox控件
name: "ISENTERP",
boxLabel: "经营单位",
inputValue: "true", //选中的值
uncheckedValue: "false" //未选中的值
}, {
xtype: "checkbox", //checkbox控件
name: "ISOTHER",
boxLabel: "其他_",
inputValue: "true", //选中的值
uncheckedValue: "false" //未选中的值
}, {
name: 'OTHERS'
}, { xtype: 'hiddenfield' }, { xtype: 'hiddenfield' }, { xtype: 'hiddenfield'}]
}]//end items(fieldset 1)
});
this.formYWXX = Ext.widget('form', {
title: '业务信息设置',
region: 'north',
frame: true,
collapsible: true, //将激活折叠功能
fieldDefaults: {
labelAlign: 'right',
flex: 1,
labelWidth: 110
},
items: [{
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
fieldLabel: '仓储费(吨/天)',
name: 'UNITPRICE'
}, {
fieldLabel: '企业备案号',
name: 'REGISTRATIONNO'
}, {
fieldLabel: 'Edi代码',
name: 'EDICODE'
}]
}, {
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{ xtype: 'hiddenfield', height: 5}]
}, {
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
fieldLabel: '备注',
name: 'REMARK',
height: 80,
flex: 4
}]
}]//end items(fieldset 1)
});
this.formKHYJ = Ext.widget('form', {
//title: '客户运价信息设置',
region: 'north',
style: 'border:0px solid black; border-top:0;', //隐藏边框
frame: true,
fieldDefaults: {
labelAlign: 'right',
flex: 1,
labelWidth: 60
},
items: [{
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
fieldLabel: '登陆代码',
name: 'LOGINNAME'
}, {
fieldLabel: '登录密码',
name: 'LOGINPASSWORD'
}]
}]
});
this.formCWXX = Ext.widget('form', {
//title: '财务信息',
region: 'north',
frame: true,
fieldDefaults: {
labelAlign: 'right',
flex: 1,
labelWidth: 120
},
items: [{
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
fieldLabel: '税号',
name: 'TAXNUMBER'
}, { xtype: 'hiddenfield'}]
}, {
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{ xtype: 'hiddenfield', height: 5}]
}, {
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
fieldLabel: '发票抬头 本位币',
name: 'BillRises1'
}, {
fieldLabel: '发票抬头 外币',
name: 'BillRises2'
}]
}, {
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{ xtype: 'hiddenfield', height: 5}]
}, {
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
fieldLabel: '支票抬头 本位币',
name: 'RMBBillRises'
}, {
fieldLabel: '支票抬头 外币',
name: 'USDBillRises'
}]
}, {
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{ xtype: 'hiddenfield', height: 5}]
}, {
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
fieldLabel: '开户银行 本位币',
name: 'RMBBank'
}, {
fieldLabel: '开户银行 外币',
name: 'USDBank'
}]
}, {
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{ xtype: 'hiddenfield', height: 5}]
}, {
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
fieldLabel: '开户行账号 本位币',
name: 'RMBAccount'
}, {
fieldLabel: '开户行账号 外币',
name: 'USDAccount'
}]
}, {
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{ xtype: 'hiddenfield', height: 5}]
}, {
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
fieldLabel: '联机行号 本位币',
name: 'RMBOnlineNO'
}, {
fieldLabel: '联机行号 外币',
name: 'USDOnlineNO'
}]
}, {
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{ xtype: 'hiddenfield', height: 5}]
}, {
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
fieldLabel: '开户行地址 本位币',
name: 'RMBBankAddress'
}, {
fieldLabel: '开户行地址 外币',
name: 'USDBankAddress'
}]
}, {
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{ xtype: 'hiddenfield', height: 5}]
}, {
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
fieldLabel: '财务帐款代码 应收',
name: 'FARCODE'
},
{
fieldLabel: '财务帐款代码 应付',
name: 'FAPCODE'
}]
}]//end items(fieldset 1)
});
this.formJSFS = Ext.widget('form', {
title: '结算方式',
region: 'north',
frame: true,
collapsible: true, //将激活折叠功能
fieldDefaults: {
labelAlign: 'right',
flex: 1,
labelWidth: 120
},
items: [{
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
fieldLabel: '信用最大金额 本位币',
name: 'RMBMaxAmountCredit',
value: 0,
blankText: '请填写数值!',
allowBlank: false,
regex: /^\d+(\.\d{1,4})?$/,
regexText: '请输入正确的数值!',
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: '信用最大金额 外币',
name: 'USDMaxAmountCredit',
value: 0,
blankText: '请填写数值!',
allowBlank: false,
regex: /^\d+(\.\d{1,4})?$/,
regexText: '请输入正确的数值!',
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: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{ xtype: 'hiddenfield', height: 5}]
}, {
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
fieldLabel: '(本位币+外币)合计',
name: 'MaxAmountCredit',
value: 0,
blankText: '请填写数值!',
allowBlank: false,
regex: /^\d+(\.\d{1,4})?$/,
regexText: '请输入正确的数值!'
},
{
fieldLabel: '外币汇率',
name: 'USDExchangeRate',
value: 0,
blankText: '请填写数值!',
allowBlank: false,
regex: /^\d+(\.\d{1,4})?$/,
regexText: '请输入正确的数值!'
}]
}, {
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{ xtype: 'hiddenfield', height: 5}]
}, {
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [this.comboxSTLNAME, { xtype: 'hiddenfield'}]
}, {
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{ xtype: 'hiddenfield', height: 5}]
}, {
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
fieldLabel: '结算时间',
name: 'STLDATEPJ',
blankText: '请填写数值!',
regex: /^\+?[1-9][0-9]*$/,
regexText: '请输入正确的数值!',
listeners: {
scope: this,
'blur': {
fn: function (_field, e) {
this.getDay(3);
}
}
}
}, {
//票结时间
xtype: 'label',
id: 'lbPJ',
name: 'lbPJ',
flex: 1,
text: "业务日期发生“XX”日即为最晚结算日期"
}, {
//周结时间
xtype: 'label',
id: 'lbZJ',
name: 'lbZJ',
flex: 1,
text: "(注:业务日期发生在星期“几”!)"
}]
}, {
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
//月结时间
fieldLabel: '结算时间',
name: 'STLDATE',
blankText: '请填写数值!',
regex: /^\+?[1-9][0-9]*$/,
regexText: '请输入正确的数值!',
listeners: {
scope: this,
'blur': {
fn: function (_field, e) {
this.getDay(0);
}
}
}
}, { xtype: 'hiddenfield'}]
}, {
xtype: 'container',
layout: 'hbox',
defaultType: 'textfield',
items: [{
//半月结时间
fieldLabel: '结算时间 上半月',
name: 'STLFIRSTHALFDATE',
blankText: '请填写数值!',
regex: /^\+?[1-9][0-9]*$/,
regexText: '请输入正确的数值!',
listeners: {
scope: this,
'blur': {
fn: function (_field, e) {
this.getDay(1);
}
}
}
}, {
//半月结时间
fieldLabel: '下半月',
name: 'STLMIDDLEDATE',
blankText: '请填写数值!',
regex: /^\+?[1-9][0-9]*$/,
regexText: '请输入正确的数值!',
listeners: {
scope: this,
'blur': {
fn: function (_field, e) {
this.getDay(2);
}
}
}
}]
}]//end items(fieldset 1)
});
this.formBlank = Ext.widget('form', {
region: 'south',
height: 30,
style: 'border:0px solid black; border-top:0;', //隐藏边框
frame: true,
items: [{ xtype: 'container'}]
});
//#endregion
//#region 工具条
this.panelBtn = new Ext.Panel({
region: "north",
tbar: [{
id: 'btnESave',
text: "保存",
iconCls: "btnsave",
handler: function (button, event) {
this.Save('0');
},
scope: this
}, {
id: 'btnESaveAndClose',
text: "保存并关闭",
handler: function (button, event) {
this.Save('1');
},
scope: this
}, {
id: 'btnESaveAndNew',
text: "保存并新建",
handler: function (button, event) {
this.Save('2');
},
scope: this
}, {
text: "新建",
handler: function (button, event) {
this.LoadData('add', '');
},
scope: this
}, '-', {
text: "关闭",
handler: function (button, event) {
window.close();
},
scope: this
}]
}); //end 按钮Toolbar
//#endregion
//#region 页面布局
//根节点
this.treestore = new Ext.data.TreeStore({
model: 'DsShipping.ux.ModuleModel',
nodeParam: 'PARENTID',
proxy: {
type: 'ajax',
url: '/MvcShipping/MsBaseInfo/GetModuTreeRefList',
reader: {
id: 'GID',
root: 'data',
totalProperty: 'totalCount'
}
},
autoLoad: true,
root: {
name: '根节点',
expanded: true,
//id: '0791bbcc-8079-49de-8175-6063b9826ac1'
id: '0791bbcc-8079-49de-8175-6063b9826ac0'
}
});
this.tabtree = new Ext.tree.Panel({
region: 'west',
title: '往来单位管理',
split: true,
width: 180,
collapsible: true,
margins: '0 0 0 0',
store: this.treestore,
rootVisible: false,
hideHeaders: true,
animate: false,
lines: false,
columns: [{
xtype: 'treecolumn',
text: '模块名称',
width: 178,
dataIndex: 'DESCRIPTION'
}],
listeners: {
scope: this,
'itemclick': function (_this, record, item, index, e, eOpts) {
if (record.data.MODULEURL == '@') {
this.tabCompanysPanel.setActiveTab(0);
} else if (record.data.MODULEURL != '#') {
if (Ext.getCmp('pnl' + record.data.NAME)) {
var children = this.tabCompanysPanel.items;
if (children) {
for (var i = 0, len = children.length; i < len; i++) {
if (children.items[i].id) {
if (children.items[i].id == 'pnl' + record.data.NAME) {
this.tabCompanysPanel.setActiveTab(i);
}
}
}
}
} else {
if (this.formHead.getForm().findField('GID').getValue() == "") {
Ext.Msg.show({ title: '注意', msg: '请先保存往来单位后再打开其他模块!', icon: Ext.Msg.ERROR, buttons: Ext.Msg.OK });
} else {
var paneltabitems = new Ext.Panel({
id: 'pnl' + record.data.NAME,
layout: "fit",
region: "center",
autoScroll: true,
frame: false,
closable: true,
title: record.data.DESCRIPTION,
html: ' <iframe scrolling="auto" frameborder="0" width="100%" height="100%" src="' + record.data.MODULEURL + '"> </iframe>'
});
this.tabCompanysPanel.add(paneltabitems);
this.tabCompanysPanel.setActiveTab(paneltabitems);
this.tabCompanysPanel.doLayout();
}
}
}
}
}
});
//#region tab页
this.panelJBXX = new Ext.Panel({
title: '基本信息',
layout: "border",
region: 'center',
margin: '0 0',
frame: true,
items: [this.formHead, this.formJBXX, this.formQYSX, this.formYWXX, this.formBlank]
});
this.panelCWXX = new Ext.Panel({
title: '财务信息',
layout: "border",
region: 'center',
margin: '0 0',
frame: true,
items: [this.formCWXX, this.formJSFS]
});
this.panelKHYJXXSZ = new Ext.Panel({
title: '客户运价信息设置',
layout: "border",
region: 'center',
margin: '0 0',
frame: true,
items: [this.formKHYJ, this.formBlank]
});
this.tabpanel = new Ext.TabPanel({
activeTab: 0,
autoWidth: true,
border: false,
frame: false,
region: 'center',
id: "TabPanelID",
enableTabScroll: true,
items:
[
this.panelJBXX,
this.panelCWXX,
this.panelKHYJXXSZ
]
});
//#endregion
this.panelCompanys = new Ext.Panel({
title: '往来单位',
id: 'pnlmodExchangesUnitInfo',
layout: "border",
region: 'center',
animate: true,
autoScroll: true,
frame: false,
items: [this.panelBtn, this.tabpanel]
});
this.tabCompanysPanel = new Ext.TabPanel({
activeTab: 0,
autoWidth: true,
border: true,
frame: false,
region: 'center',
id: "tabCompanysPanel",
enableTabScroll: true,
items: [this.panelCompanys]
});
Ext.apply(this, {
items: [this.tabtree, this.tabCompanysPanel]
});
//#endregion
parentWin = window.parent.opener;
this.InitData();
}, //end initUIComponents
InitData: function () {
this.opStatus = 'add';
var condition = '';
_this = this;
if (parentWin) {
var ret = parentWin.OprationSwap();
this.opStatus = ret[0];
this.StoreList = ret[1];
this.editRecord = ret[2];
}
if (this.opStatus == 'edit') {
condition = " GID='" + this.editRecord.get('GID') + "'";
}
this.LoadData(this.opStatus, condition);
}, //end InitData
LoadData: function (opstatus, condition) {
this.bodyDel = [];
this.opStatus = opstatus;
//
this.formJSFS.getForm().findField('STLDATEPJ').hide(); //票结
Ext.getCmp('lbPJ').hide(); //票结
Ext.getCmp('lbZJ').hide(); //周结
this.formJSFS.getForm().findField('STLDATE').hide(); //月结
this.formJSFS.getForm().findField('STLFIRSTHALFDATE').hide(); //上半月
this.formJSFS.getForm().findField('STLMIDDLEDATE').hide(); //下半月
//
if (this.opStatus == 'add') {
this.formHead.getForm().reset();
this.formJBXX.getForm().reset();
this.formQYSX.getForm().reset();
this.formYWXX.getForm().reset();
this.formKHYJ.getForm().reset();
this.formCWXX.getForm().reset();
this.formHead.getForm().findField('GID').setDisabled(false);
this.formHead.getForm().findField('GID').setValue("*");
this.formHead.getForm().findField('GID').setDisabled(true);
}
else {
Ext.Ajax.request({
waitMsg: '正在查询主表数据...',
url: '/MvcShipping/MsExchangesUnit/GetData',
params: {
handle: opstatus,
condition: condition
},
callback: function (options, success, response) {
if (success) {
var result = Ext.JSON.decode(response.responseText);
if (!result.Success) {
Ext.Msg.show({ title: '提示', msg: result.Message, icon: Ext.MessageBox.ERROR, buttons: Ext.Msg.OK });
return;
}
data = result.data;
this.formHead.getForm().reset();
this.formHead.getForm().setValues(data);
this.formJBXX.getForm().reset();
this.formJBXX.getForm().setValues(data);
this.formQYSX.getForm().reset();
this.formQYSX.getForm().setValues(data);
this.formYWXX.getForm().reset();
this.formYWXX.getForm().setValues(data);
this.formKHYJ.getForm().reset();
this.formKHYJ.getForm().setValues(data);
this.formCWXX.getForm().reset();
this.formCWXX.getForm().setValues(data);
//
//this.GetEditStatus(data.MODIFIEDUSERNAME.toString());
this.GetEditStatus(SHOWNAME.toString());
} else {
Ext.MessageBox.alert('请求出现错误,请重试', response.responseText);
}
},
scope: this
});
}
}, // end LoadDate
GetEditStatus: function (MODIFIEDUSERNAME) {
var canedit = false;
//var MODIFIEDUSERNAME = this.formHead.getForm().findField('MODIFIEDUSERNAME').getValue();
_this = this;
this.StoreOpRange.load({ params: { optype: "modExchangesUnit" },
callback: function (r, options, success) {
if (success) {
if (r.length != 0) {
var recordins = DsStoreQueryBy(_this.StoreOpRange, 'OPID', MODIFIEDUSERNAME);
if (recordins.getCount() > 0) {
canedit = true;
} else {
canedit = false;
}
} else { canedit = false; }
_this.setSaveBtnStatus(canedit);
}
}
});
},
setSaveBtnStatus: function (enable) {
var btnESave = Ext.getCmp('btnESave');
var btnESaveAndClose = Ext.getCmp('btnESaveAndClose');
var btnESaveAndNew = Ext.getCmp('btnESaveAndNew');
if (enable) {
btnESave.enable();
btnESaveAndClose.enable();
btnESaveAndNew.enable();
} else {
btnESave.disable();
btnESaveAndClose.disable();
btnESaveAndNew.disable();
}
},
Save: function (type) {
var basicForm1 = this.formHead.getForm();
if (!basicForm1.isValid()) {
return;
}
var basicForm2 = this.formJBXX.getForm();
if (!basicForm2.isValid()) {
return;
}
var basicForm3 = this.formQYSX.getForm();
if (!basicForm3.isValid()) {
return;
}
var basicForm4 = this.formYWXX.getForm();
if (!basicForm4.isValid()) {
return;
}
var basicForm5 = this.formKHYJ.getForm();
if (!basicForm5.isValid()) {
return;
}
var basicForm6 = this.formCWXX.getForm();
if (!basicForm6.isValid()) {
return;
}
var basicForm7 = this.formJSFS.getForm();
if (!basicForm7.isValid()) {
return;
}
//
this.formHead.getForm().findField('GID').setDisabled(false);
var dataHead = this.formHead.getForm().getValues(false, false, false);
var dataJBXX = this.formJBXX.getForm().getValues(false, false, false);
var dataQYSX = this.formQYSX.getForm().getValues(false, false, false);
var dataYWXX = this.formYWXX.getForm().getValues(false, false, false);
var dataKHYJ = this.formKHYJ.getForm().getValues(false, false, false);
var dataCWXX = this.formCWXX.getForm().getValues(false, false, false);
var dataJSFS = this.formJSFS.getForm().getValues(false, false, false);
this.formHead.getForm().findField('GID').setDisabled(true);
//
Ext.Msg.wait('正在保存数据, 请稍侯..');
Ext.Ajax.request({
waitMsg: '正在保存数据...',
url: '/MvcShipping/MsExchangesUnit/Save',
scope: this,
params: {
opstatus: this.opStatus,
data: Ext.JSON.encode(dataHead),
data2: Ext.JSON.encode(dataJBXX),
data3: Ext.JSON.encode(dataQYSX),
data4: Ext.JSON.encode(dataYWXX),
data5: Ext.JSON.encode(dataKHYJ),
data6: Ext.JSON.encode(dataCWXX),
data7: Ext.JSON.encode(dataJSFS)
},
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.formHead.getForm().reset();
this.formHead.getForm().setValues(returnData);
this.formJBXX.getForm().reset();
this.formJBXX.getForm().setValues(returnData);
this.formQYSX.getForm().reset();
this.formQYSX.getForm().setValues(returnData);
this.formYWXX.getForm().reset();
this.formYWXX.getForm().setValues(returnData);
this.formKHYJ.getForm().reset();
this.formKHYJ.getForm().setValues(returnData);
this.formCWXX.getForm().reset();
this.formCWXX.getForm().setValues(returnData);
this.formJSFS.getForm().reset();
this.formJSFS.getForm().setValues(returnData);
//
if (this.opStatus == 'add') {
var arrNewRecords = this.StoreList.add(returnData);
this.editRecord = arrNewRecords[0];
}
else if (this.opStatus == 'edit') {
var editp = Ext.create('MsExchangesUnitEntity', 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';
if (type == '0') {
Ext.Msg.show({ title: '提示', msg: '操作成功!', icon: Ext.Msg.INFO, buttons: Ext.Msg.OK });
} 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 });
}
}
});
}, //end save
getDay: function (sday) {
if (sday == 0) {
var syue = this.formJSFS.getForm().findField('STLDATE').getValue();
if (syue != "") {
if (parseInt(syue) > 0 && parseInt(syue) < 32) {
}
else {
//alert("月结期限超出正常天数!");
Ext.Msg.show({ title: '提示', msg: '月结期限超出正常天数!', icon: Ext.Msg.INFO, buttons: Ext.Msg.OK });
this.formJSFS.getForm().findField('STLDATE').setValue("");
return;
}
}
}
else if (sday == 1) {
var shang = this.formJSFS.getForm().findField('STLFIRSTHALFDATE').getValue();
if (shang != "") {
if (parseInt(shang) > 0 && parseInt(shang) < 16) {
}
else {
//alert("上半月结期限超出正常天数!");
Ext.Msg.show({ title: '提示', msg: '上半月结期限超出正常天数!', icon: Ext.Msg.INFO, buttons: Ext.Msg.OK });
this.formJSFS.getForm().findField('STLFIRSTHALFDATE').setValue("");
return;
}
}
}
else if (sday == 2) {
var xia = this.formJSFS.getForm().findField('STLMIDDLEDATE').getValue();
if (xia != "") {
if (parseInt(xia) > 15 && parseInt(xia) < 32) {
}
else {
//alert("下半月结期限超出正常天数!");
Ext.Msg.show({ title: '提示', msg: '下半月结期限超出正常天数!', icon: Ext.Msg.INFO, buttons: Ext.Msg.OK });
this.formJSFS.getForm().findField('STLMIDDLEDATE').setValue("");
return;
}
}
}
}
});