bri-components 1.3.74 → 1.3.76
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/components/controls/base/BriUpload/BriUpload.vue +2 -4
- package/src/components/controls/base/DshDate/DshDate.vue +13 -25
- package/src/components/controls/base/DshDate/DshDaterange.vue +21 -21
- package/src/components/controls/controlMap.js +0 -3
- package/src/components/controls/mixins/controlMixin.js +1 -1
- package/src/components/controls/senior/selectDepartments.vue +1 -1
- package/src/components/controls/senior/selectUsers/selectUsers.vue +1 -1
- package/src/components/form/DshForm.vue +22 -6
- package/src/components/list/mixins/DshCascaderTableMixin.js +2 -2
- package/src/components/list/mixins/DshTreeTableMixin.js +42 -41
- package/src/components/list/mixins/tableBaseMixin.js +10 -8
package/package.json
CHANGED
|
@@ -143,15 +143,13 @@
|
|
|
143
143
|
return {
|
|
144
144
|
_fileType: "file",
|
|
145
145
|
_showMode: this.isHeightAuto ? "old" : "inline", // 宽度为100%、且不在级联表格或内部表格里的 显示老版
|
|
146
|
-
|
|
146
|
+
_multiple: true,
|
|
147
147
|
_useType: "drag",
|
|
148
148
|
_maxSize: 1024 * 1024,
|
|
149
149
|
_format: [],
|
|
150
150
|
|
|
151
151
|
...this.propsObj,
|
|
152
|
-
...this.commonDealPropsObj
|
|
153
|
-
|
|
154
|
-
_multiple: true // TODO: 解决后端返回的配置数据里,内部表格里的上传字段有脏属性_multiple且为false,早晚要删除这行用上面的那行
|
|
152
|
+
...this.commonDealPropsObj
|
|
155
153
|
};
|
|
156
154
|
},
|
|
157
155
|
subType () {
|
|
@@ -93,21 +93,8 @@
|
|
|
93
93
|
...this.commonDealPropsObj
|
|
94
94
|
};
|
|
95
95
|
},
|
|
96
|
-
|
|
97
|
-
curValDate: {
|
|
98
|
-
get () {
|
|
99
|
-
const val = this.value[this.controlKey];
|
|
100
|
-
return this.$transformDateCompatible(val, this.subType);
|
|
101
|
-
},
|
|
102
|
-
set (val) {
|
|
103
|
-
this.$set(this.value, this.controlKey, this.$transformDate(val, "-", this.subType));
|
|
104
|
-
}
|
|
105
|
-
},
|
|
106
96
|
subType () {
|
|
107
|
-
return this.selfPropsObj._dateType;
|
|
108
|
-
},
|
|
109
|
-
writeSort () {
|
|
110
|
-
return this.selfPropsObj._writeSort;
|
|
97
|
+
return this.selfPropsObj._dateType; // 5种,"date", "datetime", "year", "month", "time"
|
|
111
98
|
},
|
|
112
99
|
options () {
|
|
113
100
|
return {
|
|
@@ -120,21 +107,22 @@
|
|
|
120
107
|
|
|
121
108
|
// 日期字段的平级对比
|
|
122
109
|
const compareBool = this.$normalComparedFunc(this.selfPropsObj, selfValue, this.allFormList, this.parentObj, this.parentFormList, this.inTableType);
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
const caluBool = (
|
|
126
|
-
this.inTableType === "treeTable" &&
|
|
127
|
-
this.writeSort === "downToUp" &&
|
|
128
|
-
this.value.children &&
|
|
129
|
-
this.value.children.length &&
|
|
130
|
-
this.value.children.some(child => this.$isEmptyData(child[this.controlKey]))
|
|
131
|
-
)
|
|
132
|
-
? true
|
|
133
|
-
: this.$levelComparedFunc(this.selfPropsObj, selfValue, this.allListRows, this.inTableType);
|
|
110
|
+
// 层级表格里-日期字段的上下级对比
|
|
111
|
+
const caluBool = this.$levelComparedFunc(this.selfPropsObj, selfValue, this.allListRows, this.inTableType, undefined, true);
|
|
134
112
|
|
|
135
113
|
return !compareBool || !caluBool;
|
|
136
114
|
}
|
|
137
115
|
};
|
|
116
|
+
},
|
|
117
|
+
|
|
118
|
+
curValDate: {
|
|
119
|
+
get () {
|
|
120
|
+
const val = this.value[this.controlKey];
|
|
121
|
+
return this.$transformDateCompatible(val, this.subType);
|
|
122
|
+
},
|
|
123
|
+
set (val) {
|
|
124
|
+
this.$set(this.value, this.controlKey, this.$transformDate(val, "-", this.subType));
|
|
125
|
+
}
|
|
138
126
|
}
|
|
139
127
|
},
|
|
140
128
|
created () {},
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div class="DshDaterange">
|
|
3
|
-
<template v-if="['time'
|
|
3
|
+
<template v-if="['time'].includes(subType)">
|
|
4
4
|
<!-- 时间范围 -->
|
|
5
5
|
<TimePicker
|
|
6
6
|
style="width: 100%;"
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
</template>
|
|
16
16
|
|
|
17
17
|
<!-- 动态日期 -->
|
|
18
|
-
<template v-else-if="['date', 'datetime', '
|
|
18
|
+
<template v-else-if="['date', 'datetime', 'year', 'month'].includes(subType)">
|
|
19
19
|
<DatePicker
|
|
20
20
|
class="DshDaterange-left"
|
|
21
21
|
:model-value="val0"
|
|
@@ -94,115 +94,115 @@
|
|
|
94
94
|
_key: "dyn_today_start",
|
|
95
95
|
name: "今天",
|
|
96
96
|
numbers: [0],
|
|
97
|
-
dateTypes: ["date", "datetime"
|
|
97
|
+
dateTypes: ["date", "datetime"]
|
|
98
98
|
},
|
|
99
99
|
{
|
|
100
100
|
_key: "dyn_today_end",
|
|
101
101
|
name: "今天",
|
|
102
102
|
numbers: [1],
|
|
103
|
-
dateTypes: ["date", "datetime"
|
|
103
|
+
dateTypes: ["date", "datetime"]
|
|
104
104
|
},
|
|
105
105
|
{
|
|
106
106
|
_key: "dyn_now",
|
|
107
107
|
name: "现在",
|
|
108
108
|
numbers: [0, 1],
|
|
109
|
-
dateTypes: ["date", "datetime"
|
|
109
|
+
dateTypes: ["date", "datetime"]
|
|
110
110
|
},
|
|
111
111
|
{
|
|
112
112
|
_key: "dyn_yesterday",
|
|
113
113
|
name: "昨天",
|
|
114
114
|
numbers: [0],
|
|
115
|
-
dateTypes: ["date", "datetime"
|
|
115
|
+
dateTypes: ["date", "datetime"]
|
|
116
116
|
},
|
|
117
117
|
{
|
|
118
118
|
_key: "dyn_subtract_3_days",
|
|
119
119
|
name: "三天前",
|
|
120
120
|
numbers: [0],
|
|
121
|
-
dateTypes: ["date", "datetime"
|
|
121
|
+
dateTypes: ["date", "datetime"]
|
|
122
122
|
},
|
|
123
123
|
{
|
|
124
124
|
_key: "dyn_subtract_7_days",
|
|
125
125
|
name: "七天前",
|
|
126
126
|
numbers: [0],
|
|
127
|
-
dateTypes: ["date", "datetime"
|
|
127
|
+
dateTypes: ["date", "datetime"]
|
|
128
128
|
},
|
|
129
129
|
{
|
|
130
130
|
_key: "dyn_subtract_30_days",
|
|
131
131
|
name: "三十天前",
|
|
132
132
|
numbers: [0],
|
|
133
|
-
dateTypes: ["date", "datetime"
|
|
133
|
+
dateTypes: ["date", "datetime"]
|
|
134
134
|
},
|
|
135
135
|
{
|
|
136
136
|
_key: "dyn_add_3_days",
|
|
137
137
|
name: "三天后",
|
|
138
138
|
numbers: [1],
|
|
139
|
-
dateTypes: ["date", "datetime"
|
|
139
|
+
dateTypes: ["date", "datetime"]
|
|
140
140
|
},
|
|
141
141
|
{
|
|
142
142
|
_key: "dyn_add_7_days",
|
|
143
143
|
name: "七天后",
|
|
144
144
|
numbers: [1],
|
|
145
|
-
dateTypes: ["date", "datetime"
|
|
145
|
+
dateTypes: ["date", "datetime"]
|
|
146
146
|
},
|
|
147
147
|
{
|
|
148
148
|
_key: "dyn_add_30_days",
|
|
149
149
|
name: "三十后",
|
|
150
150
|
numbers: [1],
|
|
151
|
-
dateTypes: ["date", "datetime"
|
|
151
|
+
dateTypes: ["date", "datetime"]
|
|
152
152
|
},
|
|
153
153
|
{
|
|
154
154
|
_key: "last_month_start",
|
|
155
155
|
name: "上月初",
|
|
156
156
|
numbers: [0],
|
|
157
|
-
dateTypes: ["month", "date", "datetime"
|
|
157
|
+
dateTypes: ["month", "date", "datetime"]
|
|
158
158
|
},
|
|
159
159
|
{
|
|
160
160
|
_key: "dyn_month_start",
|
|
161
161
|
name: "月初",
|
|
162
162
|
numbers: [0, 1],
|
|
163
|
-
dateTypes: ["month", "date", "datetime"
|
|
163
|
+
dateTypes: ["month", "date", "datetime"]
|
|
164
164
|
},
|
|
165
165
|
{
|
|
166
166
|
_key: "dyn_month_end",
|
|
167
167
|
name: "月末",
|
|
168
168
|
numbers: [1],
|
|
169
|
-
dateTypes: ["month", "date", "datetime"
|
|
169
|
+
dateTypes: ["month", "date", "datetime"]
|
|
170
170
|
},
|
|
171
171
|
{
|
|
172
172
|
_key: "dyn_quarter_start",
|
|
173
173
|
name: "本季初",
|
|
174
174
|
numbers: [0],
|
|
175
|
-
dateTypes: ["month", "date", "datetime"
|
|
175
|
+
dateTypes: ["month", "date", "datetime"]
|
|
176
176
|
},
|
|
177
177
|
{
|
|
178
178
|
_key: "dyn_quarter_end",
|
|
179
179
|
name: "本季末",
|
|
180
180
|
numbers: [1],
|
|
181
|
-
dateTypes: ["month", "date", "datetime"
|
|
181
|
+
dateTypes: ["month", "date", "datetime"]
|
|
182
182
|
},
|
|
183
183
|
{
|
|
184
184
|
_key: "dyn_year_start",
|
|
185
185
|
name: "年初",
|
|
186
186
|
numbers: [0],
|
|
187
|
-
dateTypes: ["year", "date", "datetime"
|
|
187
|
+
dateTypes: ["year", "date", "datetime"]
|
|
188
188
|
},
|
|
189
189
|
{
|
|
190
190
|
_key: "dyn_year_end",
|
|
191
191
|
name: "年末",
|
|
192
192
|
numbers: [1],
|
|
193
|
-
dateTypes: ["year", "date", "datetime"
|
|
193
|
+
dateTypes: ["year", "date", "datetime"]
|
|
194
194
|
},
|
|
195
195
|
{
|
|
196
196
|
_key: "dyn_nextyear_start",
|
|
197
197
|
name: "次年初",
|
|
198
198
|
numbers: [0],
|
|
199
|
-
dateTypes: ["year", "date", "datetime"
|
|
199
|
+
dateTypes: ["year", "date", "datetime"]
|
|
200
200
|
},
|
|
201
201
|
{
|
|
202
202
|
_key: "dyn_nextyear_end",
|
|
203
203
|
name: "次年末",
|
|
204
204
|
numbers: [1],
|
|
205
|
-
dateTypes: ["year", "date", "datetime"
|
|
205
|
+
dateTypes: ["year", "date", "datetime"]
|
|
206
206
|
}
|
|
207
207
|
]
|
|
208
208
|
};
|
|
@@ -17,11 +17,8 @@ const componentNameMap = {
|
|
|
17
17
|
url: "DshInput",
|
|
18
18
|
password: "DshInput",
|
|
19
19
|
serialNumber: "DshInput",
|
|
20
|
-
texts: "DshInput",
|
|
21
20
|
number: "DshNumber",
|
|
22
|
-
numberange: "DshNumber",
|
|
23
21
|
date: "DshDate",
|
|
24
|
-
daterange: "DshDate",
|
|
25
22
|
switch: "DshSwitch",
|
|
26
23
|
select: "DshSelect",
|
|
27
24
|
checkbox: "DshCheckbox",
|
|
@@ -132,7 +132,7 @@ export default {
|
|
|
132
132
|
multipleMode () {
|
|
133
133
|
return this.isOnDftSearch || this.isOnSearch
|
|
134
134
|
? true
|
|
135
|
-
: ["
|
|
135
|
+
: ["checkbox", "regions", "cascaders"].includes(this.controlType) || !!this.selfPropsObj._multiple;
|
|
136
136
|
},
|
|
137
137
|
// 是否为tag显示
|
|
138
138
|
tagShow () {
|
|
@@ -168,7 +168,7 @@
|
|
|
168
168
|
computed: {
|
|
169
169
|
selfPropsObj () {
|
|
170
170
|
return {
|
|
171
|
-
_icon: this.
|
|
171
|
+
_icon: this.propsObj._multiple === true ? "ios-people" : "ios-person",
|
|
172
172
|
_highSearch: false,
|
|
173
173
|
_changeOnSelect: true,
|
|
174
174
|
_searchString: "",
|
|
@@ -283,7 +283,7 @@
|
|
|
283
283
|
computed: {
|
|
284
284
|
selfPropsObj () {
|
|
285
285
|
return {
|
|
286
|
-
_icon: this.
|
|
286
|
+
_icon: this.propsObj._multiple === true ? "ios-people" : "ios-person",
|
|
287
287
|
_highSearch: false,
|
|
288
288
|
_reverseFilter: false, // 是否反向过滤,默认正向过滤
|
|
289
289
|
_userDepartFilterVals: [], // 过滤的数据
|
|
@@ -342,7 +342,8 @@
|
|
|
342
342
|
_displayType: "show",
|
|
343
343
|
canEdit: !["createdAt", "updatedAt", "_creaters"].includes(formData._key)
|
|
344
344
|
}).forEach(arr => {
|
|
345
|
-
!this.ignoreProperties.includes(arr[0]) &&
|
|
345
|
+
!this.ignoreProperties.includes(arr[0]) &&
|
|
346
|
+
(formData.__parentKey__ ? !this.subIgnoreProperties.includes(arr[0]) : true) &&
|
|
346
347
|
this.$set(formItem, arr[0], arr[1]);
|
|
347
348
|
});
|
|
348
349
|
}
|
|
@@ -388,16 +389,31 @@
|
|
|
388
389
|
});
|
|
389
390
|
}
|
|
390
391
|
|
|
391
|
-
//
|
|
392
|
-
|
|
393
|
-
if (["number", "date"].includes(formItem._type)) {
|
|
392
|
+
// 对比校验(横向同类型字段对比)-暂时只number和date对比校验
|
|
393
|
+
if (formItem._saveRuleConfigs) {
|
|
394
394
|
const ruleObj = {
|
|
395
395
|
message: `${formItem._name}对比不通过!`,
|
|
396
396
|
trigger: "blur, change",
|
|
397
397
|
type: "string",
|
|
398
398
|
transform: (val) => {
|
|
399
|
-
return this.$normalComparedFunc(formItem, this.formData, this.allFormList, this.parentObj, this.parentFormList, this.inTableType, ruleObj)
|
|
400
|
-
|
|
399
|
+
return this.$normalComparedFunc(formItem, this.formData, this.allFormList, this.parentObj, this.parentFormList, this.inTableType, ruleObj)
|
|
400
|
+
? val
|
|
401
|
+
: false;
|
|
402
|
+
},
|
|
403
|
+
...ruleConfig
|
|
404
|
+
};
|
|
405
|
+
|
|
406
|
+
rules.push(ruleObj);
|
|
407
|
+
}
|
|
408
|
+
|
|
409
|
+
// 对比校验(层级表格的层级对比)-暂时只number和date对比校验
|
|
410
|
+
if (this.inTableType === "treeTable" && ["downToUp", "upToDown"].includes(formItem._writeSort)) {
|
|
411
|
+
const ruleObj = {
|
|
412
|
+
message: `${formItem._name}层级对比不通过!`,
|
|
413
|
+
trigger: "blur, change",
|
|
414
|
+
type: "string",
|
|
415
|
+
transform: (val) => {
|
|
416
|
+
return this.$levelComparedFunc(formItem, this.formData, this.allListRows, this.inTableType, ruleObj)
|
|
401
417
|
? val
|
|
402
418
|
: false;
|
|
403
419
|
},
|
|
@@ -313,7 +313,7 @@ export default {
|
|
|
313
313
|
colType: "data"
|
|
314
314
|
}
|
|
315
315
|
))
|
|
316
|
-
|
|
316
|
+
);
|
|
317
317
|
},
|
|
318
318
|
// 转化树数据
|
|
319
319
|
getCalcuedTree (nodes = [], treeForm = [], subForm = []) {
|
|
@@ -785,7 +785,7 @@ export default {
|
|
|
785
785
|
}
|
|
786
786
|
: {
|
|
787
787
|
textAlign: col._align || "left"
|
|
788
|
-
|
|
788
|
+
};
|
|
789
789
|
|
|
790
790
|
return {
|
|
791
791
|
width: `${width}px`,
|
|
@@ -269,16 +269,18 @@ export default {
|
|
|
269
269
|
list.forEach((row) => {
|
|
270
270
|
// 递归到叶子节点前 从上往下执行 要处理的
|
|
271
271
|
columns.reduce((newRow, column) => {
|
|
272
|
-
if (
|
|
273
|
-
["
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
272
|
+
if (["number", "date"].includes(column._type)) {
|
|
273
|
+
if (![undefined, null, "", "no"].includes(column._summaryType)) {
|
|
274
|
+
// 不做处理,_summaryType和_writeSort互反,更安全的判断
|
|
275
|
+
}
|
|
276
|
+
else if (["upToDown"].includes(column._writeSort) && column._noLimitWrite !== true) {
|
|
277
|
+
// 有父级且值为空的 值置空
|
|
278
|
+
const val = parentRow && this.$isEmptyData(parentRow[column._key])
|
|
279
|
+
? this.$deepCopy(this.initDftValMap[column._type])
|
|
280
|
+
: newRow[column._key];
|
|
280
281
|
|
|
281
|
-
|
|
282
|
+
this.$set(newRow, column._key, val);
|
|
283
|
+
}
|
|
282
284
|
}
|
|
283
285
|
|
|
284
286
|
return newRow;
|
|
@@ -290,34 +292,31 @@ export default {
|
|
|
290
292
|
|
|
291
293
|
// 递归到叶子节点后到 从下往上执行 要处理的(非叶子节点)
|
|
292
294
|
columns.reduce((newRow, column) => {
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
295
|
+
if (["number", "date"].includes(column._type)) {
|
|
296
|
+
if (![undefined, null, "", "no"].includes(column._summaryType)) {
|
|
297
|
+
const val = ["number"].includes(column._type)
|
|
298
|
+
? this.$calNumList(
|
|
299
|
+
newRow.children.map(subRow => subRow[column._key]),
|
|
300
|
+
column._summaryType,
|
|
301
|
+
{ ...column, _defaultDigit: 2 },
|
|
302
|
+
false
|
|
303
|
+
)
|
|
304
|
+
: this.$calDateList(
|
|
305
|
+
newRow.children.map(subRow => subRow[column._key]),
|
|
306
|
+
column._summaryType,
|
|
307
|
+
column._dateType
|
|
308
|
+
);
|
|
302
309
|
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
newRow
|
|
310
|
-
column._summaryType,
|
|
311
|
-
{ ...column, _defaultDigit: 2 },
|
|
312
|
-
false
|
|
313
|
-
)
|
|
314
|
-
: this.$calDateList(
|
|
315
|
-
newRow.children.map(subRow => subRow[column._key]),
|
|
316
|
-
column._summaryType,
|
|
317
|
-
column._dateType
|
|
318
|
-
);
|
|
310
|
+
this.$set(newRow, column._key, val);
|
|
311
|
+
}
|
|
312
|
+
else if (["downToUp"].includes(column._writeSort) && column._noLimitWrite !== true) {
|
|
313
|
+
// 子行有空值的 值置空
|
|
314
|
+
const val = newRow.children.some(sonRow => this.$isEmptyData(sonRow[column._key]))
|
|
315
|
+
? this.$deepCopy(this.initDftValMap[column._type])
|
|
316
|
+
: newRow[column._key];
|
|
319
317
|
|
|
320
|
-
|
|
318
|
+
this.$set(newRow, column._key, val);
|
|
319
|
+
}
|
|
321
320
|
}
|
|
322
321
|
|
|
323
322
|
return newRow;
|
|
@@ -325,13 +324,15 @@ export default {
|
|
|
325
324
|
} else {
|
|
326
325
|
row.isLeaf = true;
|
|
327
326
|
|
|
328
|
-
//
|
|
327
|
+
// 递归到叶子节点后到 从下往上执行 要处理的(叶子节点)
|
|
329
328
|
columns.reduce((newRow, column) => {
|
|
330
|
-
if (
|
|
331
|
-
["
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
329
|
+
if (["number", "date"].includes(column._type)) {
|
|
330
|
+
if (![undefined, null, "", "no"].includes(column._summaryType)) {
|
|
331
|
+
this.$set(newRow, column._key, newRow[column._key]);
|
|
332
|
+
}
|
|
333
|
+
else if (["downToUp"].includes(column._writeSort) && column._noLimitWrite !== true) {
|
|
334
|
+
this.$set(newRow, column._key, newRow[column._key]);
|
|
335
|
+
}
|
|
335
336
|
}
|
|
336
337
|
|
|
337
338
|
return newRow;
|
|
@@ -207,7 +207,7 @@ export default {
|
|
|
207
207
|
_isImport: false, // 导入
|
|
208
208
|
_isExport: false, // 导出
|
|
209
209
|
_isQuote: false, // 引用
|
|
210
|
-
|
|
210
|
+
_quoteDisabledColKeys: [], // 引用数据行不可编辑咧
|
|
211
211
|
_quoteListFields: [], // 引用列表的显示字段
|
|
212
212
|
_quoteAdvSearch: {
|
|
213
213
|
logic: "and",
|
|
@@ -274,8 +274,8 @@ export default {
|
|
|
274
274
|
isQuote () {
|
|
275
275
|
return this.selfPropsObj._isQuote;
|
|
276
276
|
},
|
|
277
|
-
|
|
278
|
-
return this.selfPropsObj.
|
|
277
|
+
quoteDisabledColKeys () {
|
|
278
|
+
return this.selfPropsObj._quoteDisabledColKeys;
|
|
279
279
|
},
|
|
280
280
|
quoteListFields () {
|
|
281
281
|
return this.selfPropsObj._quoteListFields;
|
|
@@ -1040,15 +1040,17 @@ export default {
|
|
|
1040
1040
|
["treeTable"].includes(this.inTableType) && ["number", "date"].includes(col._type)
|
|
1041
1041
|
? ![undefined, null, "", "no"].includes(col._summaryType)
|
|
1042
1042
|
? row.isLeaf === true
|
|
1043
|
-
|
|
1044
|
-
|
|
1045
|
-
|
|
1046
|
-
|
|
1043
|
+
: ["downToUp", "upToDown"].includes(col._writeSort)
|
|
1044
|
+
? col._noLimitWrite === true
|
|
1045
|
+
? true
|
|
1046
|
+
: ["downToUp"].includes(col._writeSort)
|
|
1047
|
+
? !(row.children && row.children.length) || row.children.every(sonRow => !this.$isEmptyData(sonRow[col._key]))
|
|
1048
|
+
: row.level === 1 || !this.$isEmptyData(this.getParentNode(row, this.allTreeData)[col._key])
|
|
1047
1049
|
: true
|
|
1048
1050
|
: true
|
|
1049
1051
|
) &&
|
|
1050
1052
|
(col._oldReadonly ? row.__old__ !== true : true) && // 老数据行里某些列不可编辑
|
|
1051
|
-
(row.__isQuote__ ? this.
|
|
1053
|
+
(row.__isQuote__ ? !this.quoteDisabledColKeys.includes(col._key) : true) && // 引用过来的数据是否可编辑
|
|
1052
1054
|
col._enterType !== "calculate" && // 计算的不可编辑
|
|
1053
1055
|
col._readonly !== true && // 不能为只读
|
|
1054
1056
|
col.canEdit !== false; // 字段本身编辑权限 考虑为undefined时候
|