1
1
mirror of https://github.com/Fabio286/antares.git synced 2025-04-13 01:32:02 +02:00

fix: issue with ENUM and SET fields on table filler modal

This commit is contained in:
Fabio Di Stasio 2021-05-13 20:46:44 +02:00
parent 7a62131cc7
commit 475397ca34
3 changed files with 29 additions and 4 deletions

View File

@ -1341,7 +1341,7 @@ export class MySQLClient extends AntaresCore {
remappedFields = remappedFields.map(field => { remappedFields = remappedFields.map(field => {
const detailedField = response.find(f => f.name === field.name); const detailedField = response.find(f => f.name === field.name);
if (detailedField && field.orgTable === paramObj.table && field.schema === paramObj.schema) if (detailedField && field.orgTable === paramObj.table && field.schema === paramObj.schema)
field = { ...detailedField, ...field }; field = { ...field, ...detailedField };
return field; return field;
}); });
} }

View File

@ -66,6 +66,21 @@
:type="inputProps().type" :type="inputProps().type"
:disabled="!isChecked" :disabled="!isChecked"
> >
<select
v-else-if="enumArray"
v-model="selectedValue"
class="form-select"
:disabled="!isChecked"
@change="onChange"
>
<option
v-for="val in enumArray"
:key="val"
:value="val"
>
{{ val }}
</option>
</select>
<input <input
v-else v-else
ref="formInput" ref="formInput"
@ -121,7 +136,8 @@ export default {
selectedMethod: '', selectedMethod: '',
selectedValue: '', selectedValue: '',
debounceTimeout: null, debounceTimeout: null,
methodParams: {} methodParams: {},
enumArray: null
}; };
}, },
computed: { computed: {
@ -150,8 +166,14 @@ export default {
}, },
watch: { watch: {
fieldObj () { fieldObj () {
if (this.fieldObj) if (this.fieldObj) {
if (Array.isArray(this.fieldObj.value)) {
this.enumArray = this.fieldObj.value;
this.selectedValue = this.fieldObj.value[0];
}
else
this.selectedValue = this.fieldObj.value; this.selectedValue = this.fieldObj.value;
}
}, },
selectedGroup () { selectedGroup () {
if (this.fakerMethods.length) if (this.fakerMethods.length)

View File

@ -269,6 +269,9 @@ export default {
fieldDefault = moment().format(`YYYY-MM-DD HH:mm:ss${datePrecision}`); fieldDefault = moment().format(`YYYY-MM-DD HH:mm:ss${datePrecision}`);
} }
} }
if (field.enumValues)
fieldDefault = field.enumValues.replaceAll('\'', '').split(',');
} }
rowObj[field.name] = { value: fieldDefault }; rowObj[field.name] = { value: fieldDefault };