|
|
@@ -12,6 +12,7 @@ Ext.define('saas.view.core.form.FormPanel', {
|
|
|
_codeField: '',
|
|
|
_statusField: '',
|
|
|
_idField: '',
|
|
|
+ detailCount: 0,
|
|
|
|
|
|
//基础属性
|
|
|
initId: 0,
|
|
|
@@ -90,22 +91,22 @@ Ext.define('saas.view.core.form.FormPanel', {
|
|
|
|
|
|
var o = {};
|
|
|
o[statusField] = {
|
|
|
- bind: '{' + statusCodeField + '}',
|
|
|
+ bind: '{form.' + statusCodeField + '}',
|
|
|
get: function(value) {
|
|
|
return value == 'AUDITED' ? '已审核' : '未审核'
|
|
|
}
|
|
|
};
|
|
|
o['auditBtnText'] = {
|
|
|
- bind: '{' + statusCodeField + '}',
|
|
|
+ bind: '{form.' + statusCodeField + '}',
|
|
|
get: function(value) {
|
|
|
return value == 'AUDITED' ? '反审核' : '审核'
|
|
|
}
|
|
|
};
|
|
|
viewModel.setFormulas(o);
|
|
|
|
|
|
- viewModel.set('createTime', new Date());
|
|
|
- viewModel.set('updateTime', new Date());
|
|
|
- statusCodeField ? viewModel.set(statusCodeField, "UNAUDITED") : viewModel.set('auditBtnText', "审核");
|
|
|
+ viewModel.set('form.createTime', new Date());
|
|
|
+ viewModel.set('form.updateTime', new Date());
|
|
|
+ statusCodeField ? viewModel.set('form.' + statusCodeField, "UNAUDITED") : viewModel.set('auditBtnText', "审核");
|
|
|
},
|
|
|
|
|
|
addItems: function(items) {
|
|
|
@@ -122,24 +123,37 @@ Ext.define('saas.view.core.form.FormPanel', {
|
|
|
viewModel = me.getViewModel(),
|
|
|
allData = viewModel.getData(),
|
|
|
formData = allData['form'],
|
|
|
- detailStore = allData['detailStore'],
|
|
|
+ detailCount = me.detailCount,
|
|
|
data = {
|
|
|
main: formData,
|
|
|
- detail: detailStore.getData().items
|
|
|
};
|
|
|
|
|
|
+ for(var i = 0; i < detailCount; i++) {
|
|
|
+ var detail = allData['detail' + i],
|
|
|
+ store = detail.detailStore;
|
|
|
+
|
|
|
+ data['detail' + i] = store.getData().items;
|
|
|
+ }
|
|
|
+
|
|
|
return data;
|
|
|
},
|
|
|
|
|
|
setFormData: function(formData) {
|
|
|
var me = this,
|
|
|
main = formData.main,
|
|
|
- detail = formData.detail,
|
|
|
+ detailCount = me.detailCount,
|
|
|
viewModel = me.getViewModel(),
|
|
|
- detailStore = viewModel.get('detailStore');
|
|
|
+ viewData = viewModel.getData();
|
|
|
+
|
|
|
+ viewModel.set('form', main);
|
|
|
|
|
|
- viewModel.setData(main);
|
|
|
- detailStore.loadData(detail);
|
|
|
+ for(var i = 0; i < detailCount; i++) {
|
|
|
+ var detailData = formData['detail' + i],
|
|
|
+ detail = viewData['detail' + i],
|
|
|
+ store = detail.detailStore;
|
|
|
+
|
|
|
+ store.loadData(detailData);
|
|
|
+ }
|
|
|
},
|
|
|
|
|
|
/**
|
|
|
@@ -150,11 +164,16 @@ Ext.define('saas.view.core.form.FormPanel', {
|
|
|
viewModel = me.getViewModel();
|
|
|
|
|
|
Ext.Array.each(items, function(item) {
|
|
|
- var bind = item.bind,
|
|
|
+ var xtype = item.xtype,
|
|
|
+ bind = item.bind,
|
|
|
name = item.name,
|
|
|
ignore = item.ignore,
|
|
|
defaultValue = item.defaultValue;
|
|
|
|
|
|
+ if(xtype == 'detailGridField') {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
// 设置model绑定
|
|
|
if(!ignore) {
|
|
|
if(bind) {
|
|
|
@@ -179,15 +198,4 @@ Ext.define('saas.view.core.form.FormPanel', {
|
|
|
|
|
|
});
|
|
|
},
|
|
|
-
|
|
|
- initFormData: function(formData) {
|
|
|
- var me = this,
|
|
|
- main = formData.main,
|
|
|
- detail = formData.detail,
|
|
|
- viewModel = me.getViewModel();
|
|
|
-
|
|
|
- viewModel.setData(main);
|
|
|
- // viewModel.set('detailGridField');
|
|
|
- }
|
|
|
-
|
|
|
});
|