|
|
@@ -302,6 +302,7 @@
|
|
|
v-model="row.selfCheckDesc"
|
|
|
placeholder="请输入"
|
|
|
:disabled="row.status != 0 || mode == 'detail'"
|
|
|
+ @input="calcCheckResult(row, 'selfCheckDesc')"
|
|
|
/>
|
|
|
</template>
|
|
|
|
|
|
@@ -347,6 +348,7 @@
|
|
|
v-model="row.specialCheckDesc"
|
|
|
:disabled="row.status != 2 || mode == 'detail'"
|
|
|
placeholder="请输入"
|
|
|
+ @input="calcCheckResult(row, 'specialCheckDesc')"
|
|
|
/>
|
|
|
</template>
|
|
|
</ele-pro-table>
|
|
|
@@ -718,6 +720,52 @@
|
|
|
return true;
|
|
|
},
|
|
|
|
|
|
+ calcCheckResult(row, field) {
|
|
|
+ const value = Number(row[field]);
|
|
|
+
|
|
|
+ // 不是数字直接跳过
|
|
|
+ if (isNaN(value)) return;
|
|
|
+
|
|
|
+ let pass = true;
|
|
|
+
|
|
|
+ if (row.textType == 3) {
|
|
|
+ const min = Number(row.minValue);
|
|
|
+ const max = Number(row.maxValue);
|
|
|
+
|
|
|
+ if (!isNaN(min) && value < min) pass = false;
|
|
|
+ if (!isNaN(max) && value > max) pass = false;
|
|
|
+ } else {
|
|
|
+ const defaultVal = Number(row.defaultValue);
|
|
|
+
|
|
|
+ if (isNaN(defaultVal)) return;
|
|
|
+
|
|
|
+ switch (row.symbol) {
|
|
|
+ case '>':
|
|
|
+ pass = value > defaultVal;
|
|
|
+ break;
|
|
|
+ case '<':
|
|
|
+ pass = value < defaultVal;
|
|
|
+ break;
|
|
|
+ case '>=':
|
|
|
+ pass = value >= defaultVal;
|
|
|
+ break;
|
|
|
+ case '<=':
|
|
|
+ pass = value <= defaultVal;
|
|
|
+ break;
|
|
|
+ case '=':
|
|
|
+ pass = value == defaultVal;
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (this.type == 1) {
|
|
|
+ row.selfCheckResult = pass ? 1 : 2;
|
|
|
+ }
|
|
|
+
|
|
|
+ if (this.type == 2) {
|
|
|
+ row.specialCheckResult = pass ? 1 : 2;
|
|
|
+ }
|
|
|
+ },
|
|
|
+
|
|
|
async getData() {
|
|
|
const data = await getDetail(this.item.id);
|
|
|
|