|
|
@@ -2,6 +2,8 @@ Ext.define('saas.view.core.form.field.DetailGridField', {
|
|
|
extend: 'Ext.grid.Panel',
|
|
|
xtype: 'detailGridField',
|
|
|
|
|
|
+ BaseUtil: Ext.create('saas.util.BaseUtil'),
|
|
|
+
|
|
|
cls: 'x-detailgridfield',
|
|
|
|
|
|
border: 1,
|
|
|
@@ -27,7 +29,7 @@ Ext.define('saas.view.core.form.field.DetailGridField', {
|
|
|
showIndex: true,
|
|
|
configUrl: '',
|
|
|
editable: true,
|
|
|
- allowEmpty: false, // 校验时只校验dirty数据
|
|
|
+ allowEmpty: false, // 表格为空时校验合法
|
|
|
showCount: true, // 显示合计栏
|
|
|
|
|
|
initComponent: function() {
|
|
|
@@ -231,27 +233,26 @@ Ext.define('saas.view.core.form.field.DetailGridField', {
|
|
|
|
|
|
var id = selectedRecord.data.id;
|
|
|
if(id&&id!=0&&(typeof id) == 'number'){
|
|
|
- Ext.Ajax.request({
|
|
|
+ me.BaseUtil.request({
|
|
|
url: me.deleteDetailUrl+id,
|
|
|
params: '',
|
|
|
method: 'POST',
|
|
|
- headers: {
|
|
|
- 'Access-Control-Allow-Origin': '*'
|
|
|
- },
|
|
|
- success: function (response, opts) {
|
|
|
- store.remove(selectedRecord);
|
|
|
- //解析参数
|
|
|
- showToast('删除成功');
|
|
|
- },
|
|
|
- failure: function (response, opts) {
|
|
|
- //失败
|
|
|
- showToast('删除失败');
|
|
|
- }
|
|
|
+ })
|
|
|
+ .then(function() {
|
|
|
+ store.remove(selectedRecord);
|
|
|
+ me.fireEvent('validChange');
|
|
|
+ //解析参数
|
|
|
+ showToast('删除成功');
|
|
|
+ })
|
|
|
+ .catch(function() {
|
|
|
+ me.fireEvent('validChange');
|
|
|
+ //失败
|
|
|
+ showToast('删除失败');
|
|
|
});
|
|
|
}else{
|
|
|
store.remove(selectedRecord);
|
|
|
+ me.fireEvent('validChange');
|
|
|
}
|
|
|
- me.fireEvent('validChange');
|
|
|
},
|
|
|
|
|
|
swapUp: function() {
|
|
|
@@ -326,7 +327,7 @@ Ext.define('saas.view.core.form.field.DetailGridField', {
|
|
|
var me = this,
|
|
|
allowEmpty = me.allowEmpty;
|
|
|
columns = me.columns,
|
|
|
- data = allowEmpty ? me.getDirtyData() : me.getAllData(),
|
|
|
+ data = me.getTrueData(),
|
|
|
valid = allowEmpty;
|
|
|
|
|
|
// 判断列必填
|
|
|
@@ -388,13 +389,13 @@ Ext.define('saas.view.core.form.field.DetailGridField', {
|
|
|
},
|
|
|
|
|
|
/**
|
|
|
- * 获得已修改的数据
|
|
|
+ * 获得有效数据
|
|
|
*/
|
|
|
- getDirtyData: function() {
|
|
|
+ getTrueData: function() {
|
|
|
var me = this,
|
|
|
store = me.getStore(),
|
|
|
allData = store.getData().items,
|
|
|
- dirtyData = [];
|
|
|
+ trueData = [];
|
|
|
|
|
|
Ext.Array.each(allData, function(item){
|
|
|
var d = Object.assign({}, item.data),
|
|
|
@@ -409,10 +410,14 @@ Ext.define('saas.view.core.form.field.DetailGridField', {
|
|
|
d[k] = Ext.Date.format(d[k], 'Y-m-d H:i:s');
|
|
|
}
|
|
|
}
|
|
|
- dirtyData.push(d);
|
|
|
+ trueData.push(d);
|
|
|
+ }else {
|
|
|
+ if(typeof d.id == "number") {
|
|
|
+ trueData.push(d);
|
|
|
+ }
|
|
|
}
|
|
|
});
|
|
|
- return dirtyData;
|
|
|
+ return trueData;
|
|
|
}
|
|
|
|
|
|
});
|