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

fix: wrong result fields type and order with some queries

This commit is contained in:
Fabio 2020-10-20 13:12:12 +02:00
parent 580105e9f3
commit a8cd17748f
5 changed files with 15 additions and 9 deletions

View File

@ -351,6 +351,7 @@ export class MySQLClient extends AntaresCore {
const remappedFields = fields ? fields.map(field => { const remappedFields = fields ? fields.map(field => {
return { return {
name: field.name, name: field.name,
orgName: field.orgName,
schema: field.db, schema: field.db,
table: field.orgTable, table: field.orgTable,
type: 'varchar' type: 'varchar'

View File

@ -71,7 +71,7 @@ export default {
}), }),
confirmDeleteConnection () { confirmDeleteConnection () {
this.deleteConnection(this.contextConnection); this.deleteConnection(this.contextConnection);
this.$emit('close-context'); this.closeContext();
}, },
showEditModal () { showEditModal () {
this.isEditModal = true; this.isEditModal = true;
@ -85,6 +85,7 @@ export default {
}, },
hideConfirmModal () { hideConfirmModal () {
this.isConfirmModal = false; this.isConfirmModal = false;
this.closeContext();
}, },
closeContext () { closeContext () {
this.$emit('close-context'); this.$emit('close-context');

View File

@ -136,12 +136,10 @@ export default {
let qI = 0;// queries index let qI = 0;// queries index
for (const result of this.results) { // cycle queries for (const result of this.results) { // cycle queries
let fI = 0;// fields index
if (result.rows) { // if is a select if (result.rows) { // if is a select
const paramsArr = this.getResultParams(qI); const paramsArr = this.getResultParams(qI);
selectedFields = result.fields.map(field => field.name); selectedFields = result.fields.map(field => field.orgName || field.name);
this.resultsCount += result.rows.length; this.resultsCount += result.rows.length;
for (const paramObj of paramsArr) { for (const paramObj of paramsArr) {
@ -154,15 +152,20 @@ export default {
const { status, response } = await Tables.getTableColumns(params); const { status, response } = await Tables.getTableColumns(params);
if (status === 'success') { if (status === 'success') {
let fields = response.filter(field => selectedFields.includes(field.name)); let fields = response.length ? selectedFields.map(selField => {
return response.find(field => field.name === selField);
}) : [];
if (selectedFields.length) { if (selectedFields.length) {
fields = fields.map(field => { fields = fields.map(field => {
return { ...field, alias: result.fields[fI++].name }; const alias = result.fields.find(resField => resField.orgName === field.name).name || field.name;
return { ...field, alias };
}); });
} }
if (!fields.length) { if (!fields.length) {
fields = response.map(field => { fields = result.fields.map(field => {
return { ...field, alias: result.fields[fI++].name }; return { ...field, alias: field.name };
}); });
} }

View File

@ -73,7 +73,7 @@
@contextmenu="contextMenu" @contextmenu="contextMenu"
/> />
</template> </template>
</basevirtualscroll> </BaseVirtualScroll>
</div> </div>
</div> </div>
</template> </template>

View File

@ -177,6 +177,7 @@ export default {
} }
if (BIT.includes(type)) { if (BIT.includes(type)) {
if (typeof val === 'number') val = [val];
const hex = Buffer.from(val).toString('hex'); const hex = Buffer.from(val).toString('hex');
return hexToBinary(hex); return hexToBinary(hex);
} }