First test

This commit is contained in:
2023-01-14 15:37:59 +01:00
parent 6ee5c3d6ef
commit b68fdb31a7
14 changed files with 548 additions and 410 deletions

View File

@@ -1,90 +0,0 @@
let rpoFields = [{name: 'identifiers.value', desc: 'Identifikátor' },
{name: 'identifiers.validFrom', desc: 'Identifikátor, platnosť od' },
{name: 'fullNames.value', desc: 'Plné meno' },
{name: 'fullNames.validFrom', desc: 'Plné meno, platnosť od' },
{name: 'addresses.validFrom', desc: 'Adresa, platnosť od' },
{name: 'addresses.street', desc: 'Ulica' },
{name: 'addresses.regNumber', desc: 'Reg. číslo' },
{name: 'addresses.buildingNumber', desc: 'čislo budovy' },
{name: 'addresses.postalCodes', desc: 'PSČ' },
{name: 'addresses.municipality.value', desc: 'Mesto' },
{name: 'addresses.country.codelistCode', desc: 'Kód zoznamu krajiny' },
{name: 'addresses.country.code', desc: 'Kód krajiny' },
{name: 'addresses.country.value', desc: 'Krajina' },
{name: 'legalForms.value.codelistCode', desc: 'Právna forma kód zoznamu' },
{name: 'legalForms.value.code', desc: 'Právna forma kód' },
{name: 'legalForms.value.value', desc: 'Právna forma' },
{name: 'legalForms.validFrom', desc: 'Právna forma platná od' },
{name: 'establishment', desc: 'Založenie' },
{name: 'activities.economicActivityDescription', desc: 'Typ ekonomickej aktivity' },
{name: 'activities.validFrom', desc: 'Typ ekonomickej aktivity platný od' },
{name: 'statutoryBodies.stakeholderType.codelistCode', desc: 'Partneri v podnikaní zoznam kód' },
{name: 'statutoryBodies.stakeholderType.code', desc: 'Partneri v podnikaní kód' },
{name: 'statutoryBodies.stakeholderType.value', desc: 'Partneri v podnikaní' },
{name: 'statutoryBodies.validFrom', desc: 'Štatutári platný od' },
{name: 'statutoryBodies.address.street', desc: 'Štatutári, adresa, ulica' },
{name: 'statutoryBodies.address.regNumber', desc: 'Štatutári, adresa, reg. číslo' },
{name: 'statutoryBodies.address.buildingNumber', desc: 'Štatutári, adresa, číslo budovy' },
{name: 'statutoryBodies.address.postalCodes', desc: 'Štatutári, adresa, PSČ' },
{name: 'statutoryBodies.address.municipality.value', desc: 'Štatutári, adresa, miesto' },
{name: 'statutoryBodies.address.country.codelistCode', desc: 'Štatutári, adresa, krajina CL' },
{name: 'statutoryBodies.address.country.code', desc: 'Štatutári, adresa, krajina, kód' },
{name: 'statutoryBodies.address.country.value', desc: 'Štatutári, krajina' },
{name: 'statutoryBodies.personName.formatedName', desc: 'Štatutári, celé meno' },
{name: 'statutoryBodies.personName.givenNames', desc: 'Štatutári, krstné meno' },
{name: 'statutoryBodies.personName.familyNames', desc: 'Štatutári, priezvisko' },
{name: 'stakeholders.stakeholderType.codelistCode', desc: 'Prartneri v podnikaní, CL' },
{name: 'stakeholders.stakeholderType.code', desc: 'Prartneri v podnikaní, kód' },
{name: 'stakeholders.stakeholderType.value', desc: 'Prartneri v podnikaní' },
{name: 'stakeholders.validFrom', desc: 'Prartneri v podnikaní, platné od' },
{name: 'stakeholders.address.street', desc: 'Prartneri v podnikaní, ulica' },
{name: 'stakeholders.address.regNumber', desc: 'Prartneri v podnikaní, reg. číslo' },
{name: 'stakeholders.address.buildingNumber', desc: 'Prartneri v podnikaní, budova číslo' },
{name: 'stakeholders.address.postalCodes', desc: 'Prartneri v podnikaní, PSČ' },
{name: 'stakeholders.address.municipality.value', desc: 'Prartneri v podnikaní, miesto' },
{name: 'stakeholders.address.country.codelistCode', desc: 'Prartneri v podnikaní, adresa, CL' },
{name: 'stakeholders.address.country.code', desc: 'Prartneri v podnikaní, krajina, kód' },
{name: 'stakeholders.address.country.value', desc: 'Prartneri v podnikaní, krajina' },
{name: 'stakeholders.personName.formatedName', desc: 'Prartneri v podnikaní, celé meno' },
{name: 'stakeholders.personName.givenNames', desc: 'Prartneri v podnikaní, krstné meno' },
{name: 'otherLegalFacts.value', desc: 'Poznámky k právnym informáciam' },
{name: 'otherLegalFacts.validFrom', desc: 'Poznámky k právnym informáciam, platné od' },
{name: 'authorizations.value', desc: 'Autorizácia' },
{name: 'authorizations.validFrom', desc: 'Autorizácia, platná od' },
{name: 'equities.validFrom', desc: 'Cenné papiere, platné od' },
{name: 'equities.value', desc: 'Cenné papiere' },
{name: 'equities.currency.codelistCode', desc: 'Cenné papiere, mena, CL' },
{name: 'equities.currency.code', desc: 'Cenné papiere, mena, kód' },
{name: 'equities.currency.value', desc: 'Cenné papiere, mena' },
{name: 'equities.valuePaid', desc: 'Cenné papiere, zaplatené' },
{name: 'deposits.validTo', desc: 'Depozit, platný' },
{name: 'deposits.personName.formatedName', desc: 'Depozit, celé meno' },
{name: 'deposits.personName.givenNames', desc: 'Depozit, krstné meno' },
{name: 'deposits.personName.familyNames', desc: 'Depozit, priezvisko' },
{name: 'deposits.amount', desc: 'Depozit, čiastka' },
{name: 'deposits.currency.codelistCode', desc: 'Depozit, mena, CL' },
{name: 'deposits.currency.code', desc: 'Depozit, mena, kód' },
{name: 'deposits.currency.value', desc: 'Depozit, mena, hodnota' },
{name: 'deposits.validFrom', desc: 'Depozit, platné od' },
{name: 'deposits.personName.formatedName', desc: 'Depozit, celé meno' },
{name: 'deposits.personName.givenNames', desc: 'Depozit, krstné meno' },
{name: 'deposits.personName.familyNames', desc: 'Depozit, priezvisko' },
{name: 'deposits.amount', desc: 'Depozit, čiastka' },
{name: 'deposits.validTo', desc: 'Depozit, platný do' },
{name: 'sourceRegister.value.codelistCode', desc: 'Registračný úrad, CL' },
{name: 'sourceRegister.value.code', desc: 'Registračný úrad, kód' },
{name: 'sourceRegister.value.value', desc: 'Registračný úrad' },
{name: 'sourceRegister.registrationOffices.value', desc: 'Registračný úrad, kancelária' },
{name: 'sourceRegister.registrationOffices.validFrom', desc: 'Registračný úrad, kancelária, platné od' },
{name: 'sourceRegister.registrationNumbers.value', desc: 'Registračný úrad, registračné číslo' },
{name: 'sourceRegister.registrationNumbers.validFrom', desc: 'Registračný úrad, registračné číslo, platné od' },
{name: 'statisticalCodes.statCodesActualization', desc: 'Štatistický kód, aktualizácia' },
{name: 'statisticalCodes.mainActivity.codelistCode', desc: 'Štatistický kód, hlavná aktivita, CL' },
{name: 'statisticalCodes.mainActivity.code', desc: 'Štatistický kód, hlavná aktivita, kód' },
{name: 'statisticalCodes.mainActivity.value', desc: 'Štatistický kód, hlavná aktivita' },
{name: 'statisticalCodes.esa2010.codelistCode', desc: 'Štatistický kód, ESA 2010, CL' },
{name: 'statisticalCodes.esa2010.code', desc: 'Štatistický kód, ESA 2010, kód' },
{name: 'statisticalCodes.esa2010.value', desc: 'Štatistický kód, ESA 2010' }
];
export default rpoFields;

View File

@@ -7,59 +7,43 @@ import SecondaryButton from '@/Components/SecondaryButton.vue';
import TextInput from '@/Components/TextInput.vue';
import Multiselect from '@/Components/MultiSelect.vue';
import { Head, Link, useForm } from '@inertiajs/inertia-vue3';
import rpoFields from './Data/MultiSelectOptionsRPO';
import rpoFields from '../Data/MultiSelectOptionsRPO';
import ConditionDisplay from '@/Components/ConditionStatement.vue';
import QueryBuilder from '@phongthien/vue3-query-builder';
import Input from '@/Components/Input.vue';
import Number from '@/Components/Number.vue';
import JsonQueryBuilder from '@/Components/JsonQueryBuilder.vue';
import { onMounted, ref } from 'vue';
import { defineEmits } from 'vue'
import { Inertia } from '@inertiajs/inertia';
import { ref } from 'vue';
const preoperator_val1 = ref(['-', 'NOT']);
const preoperator_val2 = ref(['AND', 'AND NOT', 'OR', 'OR NOT']);
const level = ref(0);
const podmienka = ref([]);
const count = ref(0);
const criteria_val = ref([
{ name: "Obsahuje", operator: 'LIKE'},
{ name: "Začína", operator: 'LIKE START'},
{ name: "Rovná sa", operator: '='}
]);
const form = useForm({
groupoperator: '',
preoperator: '',
field: '',
value: '',
criteria: '',
});
const query = ref({
condition: 'and',
rules: [{
id: 'addresses.street',
operator: '=',
value: 'V. Clementisa'
}, {
condition: 'and',
rules: [{
id: 'fullNames.value',
operator: '(',
value: 'Cobra s.r.o.'
}, {
id: 'equities.valuePaid',
operator: '<=',
value: 80000
}]
}]
})
const submit = () => {
console.log('Post data');
Inertia.post(`/search`, podmienka.value);
console.log(query.value);
Inertia.post(`/search`, query.value);
};
const AddContition = () => {
podmienka.value.push({groupop: form.groupoperator,pre: form.preoperator, field: form.field, value: form.value, criteria: form.criteria, level: level.value, count: count.value});
for (var i = count.value; i >= 0; i--) {
podmienka.value[podmienka.value.length - i - 1]["groupop"] = form.groupoperator;
}
count.value++;
ConstructCondition();
}
const AddLevel = () => {
level.value++;
count.value=0;
}
const RemLevel = () => {
level.value--;
count.value=0;
}
const ConstructCondition = () => {
}
</script>
<template>
@@ -67,71 +51,7 @@ const ConstructCondition = () => {
<Head title="Register" />
<ConditionDisplay :conditions="podmienka"></ConditionDisplay>
<div class="min-h-screen flex flex-col sm:justify-center items-center pt-6 sm:pt-0 bg-gray-100">
<div class="w-full sm:max-w-md mt-6 px-6 py-4 bg-white shadow-md sm:rounded-lg">
<form @submit.prevent="submit">
<template v-if="level > 0">
<InputLabel for="Operator" value="Skupinový operátor" />
<Multiselect v-model="form.groupoperator" :options="preoperator_val2">
</Multiselect>
</template>
<InputLabel for="Operator" value="Operator" />
<Multiselect v-model="form.preoperator" :options="count == 0 ? preoperator_val1 : preoperator_val2">
</Multiselect>
<InputLabel for="field" value="Pole" />
<Multiselect v-model="form.field" label="desc" trackby="desc" :options="rpoFields"></Multiselect>
<InputLabel for="Kriteria" value="Kriteria" />
<Multiselect v-model="form.criteria" label="name" trackby="name" :options="criteria_val">
</Multiselect>
<div class="mt-4">
<InputLabel for="Hodnota" value="Hodnota" />
<TextInput id="value" type="text" class="mt-1 block w-full" v-model="form.value" required />
<InputError class="mt-2" :message="form.errors.email" />
</div>
<pre>podmienka = {{ podmienka }} </pre>
<pre>level = {{ level }}</pre>
<pre>count = {{ count }}</pre>
<div class="flex items-center justify-end mt-4">
<PrimaryButton class="ml-4" :class="{ 'opacity-25': form.processing }"
:disabled="form.processing">
Hľadaj
</PrimaryButton>
<SecondaryButton class="ml-4" @click="AddLevel">
<font-awesome-icon icon="fa-solid fa-right-from-bracket" />
</SecondaryButton>
<SecondaryButton class="ml-4" @click="RemLevel">
<font-awesome-icon icon="fa-solid fa-right-to-bracket" />
</SecondaryButton>
<SecondaryButton class="ml-4" @click="AddContition">
<font-awesome-icon icon="fa-solid fa-circle-plus" />
</SecondaryButton>
</div>
</form>
</div>
</div>
<JsonQueryBuilder :query="query" :queryOptions="rpoFields" @run-query="submit" ></JsonQueryBuilder>
</GuestLayout>
</template>