0
0
Fork 0

Merge pull request '6486-salixColors' (!219) from 6486-salixColors into dev

Reviewed-on: verdnatura/salix-front#219
Reviewed-by: Javi Gallego <jgallego@verdnatura.es>
Reviewed-by: Alex Moreno <alexm@verdnatura.es>
This commit is contained in:
Pablo Natek 2024-03-06 08:44:29 +00:00
commit 759dbaa066
19 changed files with 177 additions and 132 deletions

View File

@ -67,7 +67,7 @@ module.exports = configure(function (/* ctx */) {
// analyze: true, // analyze: true,
// env: {}, // env: {},
rawDefine: { rawDefine: {
'process.env.NODE_ENV': JSON.stringify(process.env.NODE_ENV) 'process.env.NODE_ENV': JSON.stringify(process.env.NODE_ENV),
}, },
// ignorePublicFolder: true, // ignorePublicFolder: true,
// minify: false, // minify: false,
@ -92,7 +92,7 @@ module.exports = configure(function (/* ctx */) {
vitePlugins: [ vitePlugins: [
[ [
VueI18nPlugin({ VueI18nPlugin({
runtimeOnly: false runtimeOnly: false,
}), }),
{ {
// if you want to use Vue I18n Legacy API, you need to set `compositionOnly: false` // if you want to use Vue I18n Legacy API, you need to set `compositionOnly: false`
@ -123,9 +123,6 @@ module.exports = configure(function (/* ctx */) {
framework: { framework: {
config: { config: {
config: { config: {
brand: {
primary: 'orange',
},
dark: 'auto', dark: 'auto',
}, },
}, },

View File

@ -171,6 +171,7 @@ const emit = defineEmits(['onFetch']);
<style lang="scss"> <style lang="scss">
.body { .body {
background-color: var(--vn-gray);
.text-h5 { .text-h5 {
padding-top: 5px; padding-top: 5px;
padding-bottom: 5px; padding-bottom: 5px;

View File

@ -81,8 +81,9 @@ onMounted(() => {
}); });
async function search() { async function search() {
const staticParams = Object.entries(store.userParams) const staticParams = Object.entries(store.userParams).filter(
.filter(([key, value]) => value && (props.staticParams || []).includes(key)); ([key, value]) => value && (props.staticParams || []).includes(key)
);
await arrayData.applyFilter({ await arrayData.applyFilter({
params: { params: {
...Object.fromEntries(staticParams), ...Object.fromEntries(staticParams),
@ -155,11 +156,9 @@ async function search() {
.cursor-info { .cursor-info {
cursor: help; cursor: help;
} }
#searchbar {
.body--light #searchbar {
.q-field--standout.q-field--highlighted .q-field__control { .q-field--standout.q-field--highlighted .q-field__control {
background-color: $grey-7; background-color: var(--vn-text);
color: #333;
} }
} }
</style> </style>

View File

@ -1,17 +1,58 @@
// app global css in SCSS form // app global css in SCSS form
@import './icons.scss'; @import './icons.scss';
body.body--light {
--fount-color: black;
--vn-sectionColor: #ffffff;
--vn-pageColor: #e0e0e0;
background-color: var(--vn-pageColor);
.q-header .q-toolbar {
color: var(--fount-color);
}
--vn-text: var(--fount-color);
--vn-gray: var(--vn-sectionColor);
--vn-label: #5f5f5f;
--vn-dark: var(--vn-sectionColor);
--vn-light-gray: #e7e3e3;
}
body.body--dark {
--vn-pageColor: #222;
--vn-SectionColor: #3c3b3b;
background-color: var(--vn-pageColor);
--vn-text: white;
--vn-gray: var(--vn-SectionColor);
--vn-label: #a8a8a8;
--vn-dark: var(--vn-SectionColor);
--vn-light-gray: #424242;
}
a { a {
text-decoration: none; text-decoration: none;
} }
.link { .link {
color: $primary; color: $color-link;
cursor: pointer; cursor: pointer;
} }
.tx-color-link {
color: $color-link !important;
}
.header-link {
color: $color-link !important;
cursor: pointer;
border-bottom: solid $primary;
border-width: 2px;
width: 100%;
.q-icon {
float: right;
}
}
.link:hover { .link:hover {
color: $orange-4; text-decoration: underline;
} }
// Removes chrome autofill background // Removes chrome autofill background
@ -24,26 +65,6 @@ select:-webkit-autofill {
background-clip: text !important; background-clip: text !important;
} }
body.body--light {
.q-header .q-toolbar {
background-color: $white;
color: #555;
}
--vn-text: #000000;
--vn-gray: #f5f5f5;
--vn-label: #5f5f5f;
--vn-dark: white;
--vn-light-gray: #e7e3e3;
}
body.body--dark {
--vn-text: #ffffff;
--vn-gray: #313131;
--vn-label: #a8a8a8;
--vn-dark: #292929;
--vn-light-gray: #424242;
}
.bg-vn-dark { .bg-vn-dark {
background-color: var(--vn-dark); background-color: var(--vn-dark);
} }

View File

@ -11,26 +11,32 @@
// It's highly recommended to change the default colors // It's highly recommended to change the default colors
// to match your app's branding. // to match your app's branding.
// Tip: Use the "Theme Builder" on Quasar's documentation website. // Tip: Use the "Theme Builder" on Quasar's documentation website.
// Tip: to add new colors https://quasar.dev/style/color-palette/#adding-your-own-colors
$primary: #ec8916; $primary: #ec8916;
$primary-light: lighten($primary, 35%); $secondary: $primary;
$secondary: #26a69a;
$accent: #9c27b0;
$white: #fff;
$positive: #21ba45; $positive: #21ba45;
$negative: #c10015; $negative: #c10015;
$info: #31ccec; $info: #31ccec;
$warning: #f2c037; $warning: #f2c037;
$vnColor: #8ebb27;
// Pendiente de cuadrar con la base de datos // Pendiente de cuadrar con la base de datos
$success: $positive; $success: $positive;
$alert: $negative; $alert: $negative;
$white: #fff;
$dark: #3c3b3b;
// custom
$color-link: #66bfff;
$color-spacer-light: #a3a3a31f;
$color-spacer: #7979794d;
$border-thin-light: 1px solid $color-spacer-light;
$dark-shadow-color: black;
$layout-shadow-dark: 0 0 10px 2px #00000033, 0 0px 10px #0000003d;
$spacing-md: 16px;
.bg-success { .bg-success {
background-color: $positive; background-color: $positive;
} }
.bg-notice { .bg-notice {
background-color: $info; background-color: $info;
} }
@ -40,12 +46,3 @@ $alert: $negative;
.bg-alert { .bg-alert {
background-color: $negative; background-color: $negative;
} }
$color-spacer-light: rgba(255, 255, 255, 0.12);
$color-spacer: rgba(255, 255, 255, 0.3);
$border-thin-light: 1px solid $color-spacer-light;
$dark-shadow-color: #000;
$dark: #292929;
$layout-shadow-dark: 0 0 10px 2px rgba(0, 0, 0, 0.2), 0 0px 10px rgba(0, 0, 0, 0.24);
$spacing-md: 16px;

View File

@ -40,7 +40,7 @@ const langs = ['en', 'es'];
<template> <template>
<QLayout view="hHh LpR fFf"> <QLayout view="hHh LpR fFf">
<QHeader reveal class="bg-dark"> <QHeader reveal class="bg-vn-dark">
<QToolbar class="justify-end"> <QToolbar class="justify-end">
<QBtn <QBtn
id="switchLanguage" id="switchLanguage"

View File

@ -179,9 +179,9 @@ function openDialog(dmsId) {
</template> </template>
<template #body="{ entity: { claim, salesClaimed, developments } }"> <template #body="{ entity: { claim, salesClaimed, developments } }">
<QCard class="vn-one"> <QCard class="vn-one">
<a class="header" :href="`#/claim/${entityId}/basic-data`"> <a class="header header-link" :href="`#/claim/${entityId}/basic-data`">
{{ t('claim.pageTitles.basicData') }} {{ t('claim.pageTitles.basicData') }}
<QIcon name="open_in_new" color="primary" /> <QIcon name="open_in_new" />
</a> </a>
<VnLv <VnLv
:label="t('claim.summary.created')" :label="t('claim.summary.created')"
@ -226,16 +226,16 @@ function openDialog(dmsId) {
/> />
</QCard> </QCard>
<QCard class="vn-three claimVnNotes full-height"> <QCard class="vn-three claimVnNotes full-height">
<a class="header" :href="`#/claim/${entityId}/notes`"> <a class="header header-link" :href="`#/claim/${entityId}/notes`">
{{ t('claim.summary.notes') }} {{ t('claim.summary.notes') }}
<QIcon name="open_in_new" color="primary" /> <QIcon name="open_in_new" />
</a> </a>
<ClaimNotes :add-note="false" style="height: 350px" order="created ASC" /> <ClaimNotes :add-note="false" style="height: 350px" order="created ASC" />
</QCard> </QCard>
<QCard class="vn-two" v-if="salesClaimed.length > 0"> <QCard class="vn-two" v-if="salesClaimed.length > 0">
<a class="header" :href="`#/claim/${entityId}/lines`"> <a class="header header-link" :href="`#/claim/${entityId}/lines`">
{{ t('claim.summary.details') }} {{ t('claim.summary.details') }}
<QIcon name="open_in_new" color="primary" /> <QIcon name="open_in_new" />
</a> </a>
<QTable :columns="detailsColumns" :rows="salesClaimed" flat> <QTable :columns="detailsColumns" :rows="salesClaimed" flat>
<template #header="props"> <template #header="props">
@ -268,9 +268,9 @@ function openDialog(dmsId) {
</QTable> </QTable>
</QCard> </QCard>
<QCard class="vn-two" v-if="developments.length > 0"> <QCard class="vn-two" v-if="developments.length > 0">
<a class="header" :href="claimUrl + 'development'"> <a class="header header-link" :href="claimUrl + 'development'">
{{ t('claim.summary.development') }} {{ t('claim.summary.development') }}
<QIcon name="open_in_new" color="primary" /> <QIcon name="open_in_new" />
</a> </a>
<QTable :columns="developmentColumns" :rows="developments" flat> <QTable :columns="developmentColumns" :rows="developments" flat>
<template #header="props"> <template #header="props">
@ -283,9 +283,9 @@ function openDialog(dmsId) {
</QTable> </QTable>
</QCard> </QCard>
<QCard class="vn-max" v-if="claimDms.length > 0"> <QCard class="vn-max" v-if="claimDms.length > 0">
<a class="header" :href="`#/claim/${entityId}/photos`"> <a class="header header-link" :href="`#/claim/${entityId}/photos`">
{{ t('claim.summary.photos') }} {{ t('claim.summary.photos') }}
<QIcon name="open_in_new" color="primary" /> <QIcon name="open_in_new" />
</a> </a>
<div class="container"> <div class="container">
<div <div
@ -302,7 +302,7 @@ function openDialog(dmsId) {
v-if="media.isVideo" v-if="media.isVideo"
@click.stop="openDialog(media.dmsFk)" @click.stop="openDialog(media.dmsFk)"
> >
<QTooltip>Video</QTooltip> <QTooltip>Video</QTooltip>header
</QIcon> </QIcon>
<QCard class="multimedia relative-position"> <QCard class="multimedia relative-position">
<QImg <QImg
@ -326,9 +326,9 @@ function openDialog(dmsId) {
</QCard> </QCard>
<QCard class="vn-max"> <QCard class="vn-max">
<a class="header" :href="claimUrl + 'action'"> <a class="header header-link" :href="claimUrl + 'action'">
{{ t('claim.summary.actions') }} {{ t('claim.summary.actions') }}
<QIcon name="open_in_new" color="primary" /> <QIcon name="open_in_new" class="link" />
</a> </a>
<div id="slider-container" class="q-px-xl q-py-md"> <div id="slider-container" class="q-px-xl q-py-md">
<QSlider <QSlider
@ -336,7 +336,7 @@ function openDialog(dmsId) {
label label
:label-value="t('claim.summary.responsibility')" :label-value="t('claim.summary.responsibility')"
label-always label-always
color="primary" color="var()"
markers markers
:marker-labels="[ :marker-labels="[
{ value: 1, label: t('claim.summary.company') }, { value: 1, label: t('claim.summary.company') },

View File

@ -62,9 +62,9 @@ const creditWarning = computed(() => {
<CardSummary ref="summary" :url="`Clients/${entityId}/summary`"> <CardSummary ref="summary" :url="`Clients/${entityId}/summary`">
<template #body="{ entity }"> <template #body="{ entity }">
<QCard class="vn-one"> <QCard class="vn-one">
<a class="header" :href="`#/customer/${entityId}/basic-data`"> <a class="header header-link" :href="`#/customer/${entityId}/basic-data`">
{{ t('customer.summary.basicData') }} {{ t('customer.summary.basicData') }}
<QIcon name="open_in_new" color="primary" /> <QIcon name="open_in_new" />
</a> </a>
<VnLv :label="t('customer.summary.customerId')" :value="entity.id" /> <VnLv :label="t('customer.summary.customerId')" :value="entity.id" />
<VnLv :label="t('customer.summary.name')" :value="entity.name" /> <VnLv :label="t('customer.summary.name')" :value="entity.name" />
@ -96,9 +96,12 @@ const creditWarning = computed(() => {
/> />
</QCard> </QCard>
<QCard class="vn-one"> <QCard class="vn-one">
<a class="header" :href="`#/customer/${entityId}/fiscal-data`"> <a
class="header header-link"
:href="`#/customer/${entityId}/fiscal-data`"
>
{{ t('customer.summary.fiscalAddress') }} {{ t('customer.summary.fiscalAddress') }}
<QIcon name="open_in_new" color="primary" /> <QIcon name="open_in_new" />
</a> </a>
<VnLv <VnLv
:label="t('customer.summary.socialName')" :label="t('customer.summary.socialName')"
@ -121,9 +124,13 @@ const creditWarning = computed(() => {
<VnLv :label="t('customer.summary.street')" :value="entity.street" /> <VnLv :label="t('customer.summary.street')" :value="entity.street" />
</QCard> </QCard>
<QCard class="vn-one"> <QCard class="vn-one">
<a class="header link" :href="`#/customer/${entityId}/fiscal-data`" link> <a
class="header header-link"
:href="`#/customer/${entityId}/fiscal-data`"
link
>
{{ t('customer.summary.fiscalData') }} {{ t('customer.summary.fiscalData') }}
<QIcon name="open_in_new" color="primary" /> <QIcon name="open_in_new" />
</a> </a>
<QCheckbox <QCheckbox
:label="t('customer.summary.isEqualizated')" :label="t('customer.summary.isEqualizated')"
@ -162,9 +169,13 @@ const creditWarning = computed(() => {
/> />
</QCard> </QCard>
<QCard class="vn-one"> <QCard class="vn-one">
<a class="header link" :href="`#/customer/${entityId}/billing-data`" link> <a
class="header header-link"
:href="`#/customer/${entityId}/billing-data`"
link
>
{{ t('customer.summary.billingData') }} {{ t('customer.summary.billingData') }}
<QIcon name="open_in_new" color="primary" /> <QIcon name="open_in_new" />
</a> </a>
<VnLv <VnLv
:label="t('customer.summary.payMethod')" :label="t('customer.summary.payMethod')"
@ -191,9 +202,13 @@ const creditWarning = computed(() => {
/> />
</QCard> </QCard>
<QCard class="vn-one" v-if="entity.defaultAddress"> <QCard class="vn-one" v-if="entity.defaultAddress">
<a class="header link" :href="`#/customer/${entityId}/consignees`" link> <a
class="header header-link"
:href="`#/customer/${entityId}/consignees`"
link
>
{{ t('customer.summary.consignee') }} {{ t('customer.summary.consignee') }}
<QIcon name="open_in_new" color="primary" /> <QIcon name="open_in_new" />
</a> </a>
<VnLv <VnLv
:label="t('customer.summary.addressName')" :label="t('customer.summary.addressName')"
@ -209,9 +224,9 @@ const creditWarning = computed(() => {
/> />
</QCard> </QCard>
<QCard class="vn-one" v-if="entity.account"> <QCard class="vn-one" v-if="entity.account">
<a class="header link" :href="`#/customer/${entityId}/web-access`"> <a class="header header-link" :href="`#/customer/${entityId}/web-access`">
{{ t('customer.summary.webAccess') }} {{ t('customer.summary.webAccess') }}
<QIcon name="open_in_new" color="primary" /> <QIcon name="open_in_new" />
</a> </a>
<VnLv <VnLv
:label="t('customer.summary.username')" :label="t('customer.summary.username')"
@ -224,7 +239,7 @@ const creditWarning = computed(() => {
/> />
</QCard> </QCard>
<QCard class="vn-one" v-if="entity.account"> <QCard class="vn-one" v-if="entity.account">
<div class="header"> <div class="header header-link">
{{ t('customer.summary.businessData') }} {{ t('customer.summary.businessData') }}
</div> </div>
<VnLv <VnLv
@ -252,12 +267,12 @@ const creditWarning = computed(() => {
</QCard> </QCard>
<QCard class="vn-one" v-if="entity.account"> <QCard class="vn-one" v-if="entity.account">
<a <a
class="header link" class="header header-link"
:href="`https://grafana.verdnatura.es/d/40buzE4Vk/comportamiento-pagos-clientes?orgId=1&var-clientFk=${entityId}`" :href="`https://grafana.verdnatura.es/d/40buzE4Vk/comportamiento-pagos-clientes?orgId=1&var-clientFk=${entityId}`"
link link
> >
{{ t('customer.summary.financialData') }} {{ t('customer.summary.financialData') }}
<QIcon name="vn:grafana" color="primary" /> <QIcon name="vn:grafana" />
</a> </a>
<VnLv <VnLv
:label="t('customer.summary.risk')" :label="t('customer.summary.risk')"

View File

@ -37,11 +37,11 @@ onMounted(async () => {
<template #body="{ entity: department }"> <template #body="{ entity: department }">
<QCard class="column"> <QCard class="column">
<a <a
class="header" class="header header-link"
:href="`#/department/department/${entityId}/basic-data`" :href="`#/department/department/${entityId}/basic-data`"
> >
{{ t('Basic data') }} {{ t('Basic data') }}
<QIcon name="open_in_new" color="primary" /> <QIcon name="open_in_new" />
</a> </a>
<div class="full-width row wrap justify-between content-between"> <div class="full-width row wrap justify-between content-between">
<div class="column" style="min-width: 50%"> <div class="column" style="min-width: 50%">

View File

@ -164,15 +164,20 @@ const fetchEntryBuys = async () => {
:url="`Entries/${entityId}/getEntry`" :url="`Entries/${entityId}/getEntry`"
@on-fetch="(data) => setEntryData(data)" @on-fetch="(data) => setEntryData(data)"
> >
<template #header-left>
<a class="header-link" :href="entryUrl">
<QIcon name="open_in_new" color="white" size="sm" />
</a>
</template>
<template #header> <template #header>
<span>{{ entry.id }} - {{ entry.supplier.nickname }}</span> <span>{{ entry.id }} - {{ entry.supplier.nickname }}</span>
</template> </template>
<template #body> <template #body>
<QCard class="vn-one"> <QCard class="vn-one">
<a class="header link" :href="`#/entry/${entityId}/basic-data`"> <a class="header header-link" :href="`#/entry/${entityId}/basic-data`">
{{ t('globals.summary.basicData') }} {{ t('globals.summary.basicData') }}
<QIcon name="open_in_new" color="primary" /> <QIcon name="open_in_new" />
</a> </a>
<VnLv :label="t('entry.summary.commission')" :value="entry.commission" /> <VnLv :label="t('entry.summary.commission')" :value="entry.commission" />
@ -214,8 +219,9 @@ const fetchEntryBuys = async () => {
/> />
</QCard> </QCard>
<QCard class="vn-one"> <QCard class="vn-one">
<a class="header"> <a class="header header-link" :href="entryUrl">
{{ t('Travel data') }} {{ t('Travel data') }}
<QIcon name="open_in_new" />
</a> </a>
<VnLv :label="t('entry.summary.travelReference')"> <VnLv :label="t('entry.summary.travelReference')">
@ -264,8 +270,9 @@ const fetchEntryBuys = async () => {
/> />
</QCard> </QCard>
<QCard class="vn-two" style="min-width: 100%"> <QCard class="vn-two" style="min-width: 100%">
<a class="header"> <a class="header header-link">
{{ t('entry.summary.buys') }} {{ t('entry.summary.buys') }}
<QIcon name="open_in_new" />
</a> </a>
<QTable <QTable
:rows="entryBuys" :rows="entryBuys"

View File

@ -209,9 +209,9 @@ function getLink(param) {
<!--Basic Data--> <!--Basic Data-->
<QCard class="vn-one"> <QCard class="vn-one">
<QCardSection class="q-pa-none"> <QCardSection class="q-pa-none">
<a class="header" :href="getLink('basic-data')"> <a class="header header-link" :href="getLink('basic-data')">
{{ t('invoiceIn.pageTitles.basicData') }} {{ t('invoiceIn.pageTitles.basicData') }}
<QIcon name="open_in_new" color="primary" /> <QIcon name="open_in_new" />
</a> </a>
</QCardSection> </QCardSection>
<VnLv <VnLv
@ -233,9 +233,9 @@ function getLink(param) {
</QCard> </QCard>
<QCard class="vn-one"> <QCard class="vn-one">
<QCardSection class="q-pa-none"> <QCardSection class="q-pa-none">
<a class="header" :href="getLink('basic-data')"> <a class="header header-link" :href="getLink('basic-data')">
{{ t('invoiceIn.pageTitles.basicData') }} {{ t('invoiceIn.pageTitles.basicData') }}
<QIcon name="open_in_new" color="primary" /> <QIcon name="open_in_new" />
</a> </a>
</QCardSection> </QCardSection>
<VnLv <VnLv
@ -258,9 +258,9 @@ function getLink(param) {
</QCard> </QCard>
<QCard class="vn-one"> <QCard class="vn-one">
<QCardSection class="q-pa-none"> <QCardSection class="q-pa-none">
<a class="header" :href="getLink('basic-data')"> <a class="header header-link" :href="getLink('basic-data')">
{{ t('invoiceIn.pageTitles.basicData') }} {{ t('invoiceIn.pageTitles.basicData') }}
<QIcon name="open_in_new" color="primary" /> <QIcon name="open_in_new" />
</a> </a>
</QCardSection> </QCardSection>
<VnLv <VnLv
@ -283,9 +283,9 @@ function getLink(param) {
</QCard> </QCard>
<QCard class="vn-one"> <QCard class="vn-one">
<QCardSection class="q-pa-none"> <QCardSection class="q-pa-none">
<a class="header" :href="getLink('basic-data')"> <a class="header header-link" :href="getLink('basic-data')">
{{ t('invoiceIn.pageTitles.basicData') }} {{ t('invoiceIn.pageTitles.basicData') }}
<QIcon name="open_in_new" color="primary" /> <QIcon name="open_in_new" />
</a> </a>
</QCardSection> </QCardSection>
<QCardSection class="q-pa-none"> <QCardSection class="q-pa-none">
@ -319,9 +319,9 @@ function getLink(param) {
</QCard> </QCard>
<!--Vat--> <!--Vat-->
<QCard v-if="invoiceIn.invoiceInTax.length"> <QCard v-if="invoiceIn.invoiceInTax.length">
<a class="header" :href="getLink('vat')"> <a class="header header-link" :href="getLink('vat')">
{{ t('invoiceIn.card.vat') }} {{ t('invoiceIn.card.vat') }}
<QIcon name="open_in_new" color="primary" /> <QIcon name="open_in_new" />
</a> </a>
<QTable <QTable
:columns="vatColumns" :columns="vatColumns"
@ -352,9 +352,9 @@ function getLink(param) {
</QCard> </QCard>
<!--Due Day--> <!--Due Day-->
<QCard v-if="invoiceIn.invoiceInDueDay.length"> <QCard v-if="invoiceIn.invoiceInDueDay.length">
<a class="header" :href="getLink('due-day')"> <a class="header header-link" :href="getLink('due-day')">
{{ t('invoiceIn.card.dueDay') }} {{ t('invoiceIn.card.dueDay') }}
<QIcon name="open_in_new" color="primary" /> <QIcon name="open_in_new" />
</a> </a>
<QTable <QTable
class="full-width" class="full-width"
@ -382,9 +382,9 @@ function getLink(param) {
</QCard> </QCard>
<!--Intrastat--> <!--Intrastat-->
<QCard v-if="invoiceIn.invoiceInIntrastat.length"> <QCard v-if="invoiceIn.invoiceInIntrastat.length">
<a class="header" :href="getLink('intrastat')"> <a class="header header-link" :href="getLink('intrastat')">
{{ t('invoiceIn.card.intrastat') }} {{ t('invoiceIn.card.intrastat') }}
<QIcon name="open_in_new" color="primary" /> <QIcon name="open_in_new" />
</a> </a>
<QTable <QTable
:columns="intrastatColumns" :columns="intrastatColumns"

View File

@ -101,9 +101,10 @@ const ticketsColumns = ref([
</template> </template>
<template #body="{ entity: { invoiceOut } }"> <template #body="{ entity: { invoiceOut } }">
<QCard class="vn-one"> <QCard class="vn-one">
<div class="header"> <a class="header header-link">
{{ t('invoiceOut.pageTitles.basicData') }} {{ t('invoiceOut.pageTitles.basicData') }}
</div> <QIcon name="open_in_new" />
</a>
<VnLv <VnLv
:label="t('invoiceOut.summary.issued')" :label="t('invoiceOut.summary.issued')"
:value="toDate(invoiceOut.issued)" :value="toDate(invoiceOut.issued)"
@ -126,9 +127,10 @@ const ticketsColumns = ref([
/> />
</QCard> </QCard>
<QCard class="vn-three"> <QCard class="vn-three">
<div class="header"> <a class="header header-link">
{{ t('invoiceOut.summary.taxBreakdown') }} {{ t('invoiceOut.summary.taxBreakdown') }}
</div> <QIcon name="open_in_new" />
</a>
<QTable :columns="taxColumns" :rows="invoiceOut.taxesBreakdown" flat> <QTable :columns="taxColumns" :rows="invoiceOut.taxesBreakdown" flat>
<template #header="props"> <template #header="props">
<QTr :props="props"> <QTr :props="props">
@ -140,9 +142,10 @@ const ticketsColumns = ref([
</QTable> </QTable>
</QCard> </QCard>
<QCard class="vn-three"> <QCard class="vn-three">
<div class="header"> <a class="header header-link">
{{ t('invoiceOut.summary.tickets') }} {{ t('invoiceOut.summary.tickets') }}
</div> <QIcon name="open_in_new" />
</a>
<QTable v-if="tickets" :columns="ticketsColumns" :rows="tickets" flat> <QTable v-if="tickets" :columns="ticketsColumns" :rows="tickets" flat>
<template #header="props"> <template #header="props">
<QTr :props="props"> <QTr :props="props">

View File

@ -69,12 +69,12 @@ async function onSubmit() {
<template> <template>
<QForm @submit="onSubmit" class="q-gutter-y-md q-pa-lg formCard"> <QForm @submit="onSubmit" class="q-gutter-y-md q-pa-lg formCard">
<VnLogo alt="Logo" fit="contain" :ratio="16 / 9" class="q-mb-md" /> <VnLogo alt="Logo" fit="contain" :ratio="16 / 9" class="q-mb-md" />
<VnInput <VnInput
v-model="username" v-model="username"
:label="t('login.username')" :label="t('login.username')"
lazy-rules lazy-rules
:rules="[(val) => (val && val.length > 0) || t('login.fieldRequired')]" :rules="[(val) => (val && val.length > 0) || t('login.fieldRequired')]"
color="primary"
/> />
<VnInput <VnInput
type="password" type="password"
@ -82,9 +82,8 @@ async function onSubmit() {
:label="t('login.password')" :label="t('login.password')"
lazy-rules lazy-rules
:rules="[(val) => (val && val.length > 0) || t('login.fieldRequired')]" :rules="[(val) => (val && val.length > 0) || t('login.fieldRequired')]"
class="red"
/> />
<QToggle v-model="keepLogin" :label="t('login.keepLogin')" />
<div> <div>
<QBtn <QBtn
:label="t('login.submit')" :label="t('login.submit')"
@ -95,6 +94,7 @@ async function onSubmit() {
unelevated unelevated
/> />
</div> </div>
<QToggle v-model="keepLogin" :label="t('login.keepLogin')" />
</QForm> </QForm>
</template> </template>
@ -104,6 +104,9 @@ async function onSubmit() {
min-width: 300px; min-width: 300px;
} }
.q-input {
color: $primary;
}
@media (max-width: $breakpoint-xs-max) { @media (max-width: $breakpoint-xs-max) {
.formCard { .formCard {
min-width: 100%; min-width: 100%;

View File

@ -99,6 +99,8 @@ onMounted(async () => {
</i18n> </i18n>
<style lang="scss"> <style lang="scss">
$vnColor: #8ebb27;
.formCard { .formCard {
max-width: 1500px; max-width: 1500px;
min-width: 700px; min-width: 700px;

View File

@ -71,11 +71,11 @@ const filter = {
<template #body="{ entity }"> <template #body="{ entity }">
<QCard class="vn-one"> <QCard class="vn-one">
<RouterLink <RouterLink
class="header" class="header header-link"
:to="{ name: 'ShelvingBasicData', params: { id: entityId } }" :to="{ name: 'ShelvingBasicData', params: { id: entityId } }"
> >
{{ t('shelving.pageTitles.basicData') }} {{ t('shelving.pageTitles.basicData') }}
<QIcon name="open_in_new" color="primary" /> <QIcon name="open_in_new" />
</RouterLink> </RouterLink>
<VnLv :label="t('shelving.summary.code')" :value="entity.code" /> <VnLv :label="t('shelving.summary.code')" :value="entity.code" />
<VnLv <VnLv

View File

@ -52,7 +52,7 @@ const isAdministrative = computed(() => {
@on-fetch="(data) => setData(data)" @on-fetch="(data) => setData(data)"
> >
<template #header-left> <template #header-left>
<a v-if="isAdministrative" class="header link" :href="supplierUrl"> <a v-if="isAdministrative" class="header header-link" :href="supplierUrl">
<QIcon name="open_in_new" color="white" size="sm" /> <QIcon name="open_in_new" color="white" size="sm" />
</a> </a>
</template> </template>
@ -64,11 +64,11 @@ const isAdministrative = computed(() => {
<QCard class="vn-one"> <QCard class="vn-one">
<a <a
v-if="isAdministrative" v-if="isAdministrative"
class="header link" class="header header-link"
:href="`#/supplier/${entityId}/basic-data`" :href="`#/supplier/${entityId}/basic-data`"
> >
{{ t('globals.summary.basicData') }} {{ t('globals.summary.basicData') }}
<QIcon name="open_in_new" color="primary" /> <QIcon name="open_in_new" />
</a> </a>
<span v-else> {{ t('globals.summary.basicData') }}</span> <span v-else> {{ t('globals.summary.basicData') }}</span>
<VnLv label="Id" :value="supplier.id" /> <VnLv label="Id" :value="supplier.id" />
@ -100,11 +100,11 @@ const isAdministrative = computed(() => {
<QCard class="vn-one"> <QCard class="vn-one">
<a <a
v-if="isAdministrative" v-if="isAdministrative"
class="header link" class="header header-link"
:href="`#/supplier/${entityId}/billing-data`" :href="`#/supplier/${entityId}/billing-data`"
> >
{{ t('supplier.summary.billingData') }} {{ t('supplier.summary.billingData') }}
<QIcon name="open_in_new" color="primary" /> <QIcon name="open_in_new" />
</a> </a>
<span v-else> {{ t('supplier.summary.billingData') }}</span> <span v-else> {{ t('supplier.summary.billingData') }}</span>
<VnLv <VnLv
@ -123,11 +123,11 @@ const isAdministrative = computed(() => {
<QCard class="vn-one"> <QCard class="vn-one">
<a <a
v-if="isAdministrative" v-if="isAdministrative"
class="header link" class="header header-link"
:href="`#/supplier/${entityId}/fiscal-data`" :href="`#/supplier/${entityId}/fiscal-data`"
> >
{{ t('supplier.summary.fiscalData') }} {{ t('supplier.summary.fiscalData') }}
<QIcon name="open_in_new" color="primary" /> <QIcon name="open_in_new" />
</a> </a>
<span v-else> {{ t('supplier.summary.fiscalData') }}</span> <span v-else> {{ t('supplier.summary.fiscalData') }}</span>
<VnLv <VnLv
@ -158,11 +158,11 @@ const isAdministrative = computed(() => {
<QCard class="vn-one"> <QCard class="vn-one">
<a <a
v-if="isAdministrative" v-if="isAdministrative"
class="header link" class="header header-link"
:href="`#/supplier/${entityId}/fiscal-data`" :href="`#/supplier/${entityId}/fiscal-data`"
> >
{{ t('supplier.summary.fiscalAddress') }} {{ t('supplier.summary.fiscalAddress') }}
<QIcon name="open_in_new" color="primary" /> <QIcon name="open_in_new" />
</a> </a>
<span v-else> {{ t('supplier.summary.fiscalAddress') }}</span> <span v-else> {{ t('supplier.summary.fiscalAddress') }}</span>
<VnLv :label="t('supplier.summary.socialName')" :value="supplier.name" /> <VnLv :label="t('supplier.summary.socialName')" :value="supplier.name" />

View File

@ -149,7 +149,7 @@ async function changeState(value) {
<QCard class="vn-one"> <QCard class="vn-one">
<a class="header link" :href="ticketUrl + 'basic-data/step-one'"> <a class="header link" :href="ticketUrl + 'basic-data/step-one'">
{{ t('globals.summary.basicData') }} {{ t('globals.summary.basicData') }}
<QIcon name="open_in_new" color="primary" /> <QIcon name="open_in_new" />
</a> </a>
<VnLv :label="t('ticket.summary.state')"> <VnLv :label="t('ticket.summary.state')">
<template #value> <template #value>
@ -195,7 +195,7 @@ async function changeState(value) {
<QCard class="vn-one"> <QCard class="vn-one">
<a class="header link" :href="ticketUrl + 'basic-data/step-one'"> <a class="header link" :href="ticketUrl + 'basic-data/step-one'">
{{ t('globals.summary.basicData') }} {{ t('globals.summary.basicData') }}
<QIcon name="open_in_new" color="primary" /> <QIcon name="open_in_new" />
</a> </a>
<VnLv <VnLv
:label="t('ticket.summary.shipped')" :label="t('ticket.summary.shipped')"
@ -238,7 +238,7 @@ async function changeState(value) {
<QCard class="vn-one"> <QCard class="vn-one">
<a class="header link" :href="ticketUrl + 'observation'"> <a class="header link" :href="ticketUrl + 'observation'">
{{ t('ticket.pageTitles.notes') }} {{ t('ticket.pageTitles.notes') }}
<QIcon name="open_in_new" color="primary" /> <QIcon name="open_in_new" />
</a> </a>
<VnLv <VnLv
v-for="note in ticket.notes" v-for="note in ticket.notes"
@ -260,7 +260,7 @@ async function changeState(value) {
<QCard class="vn-max"> <QCard class="vn-max">
<a class="header link" :href="ticketUrl + 'sale'"> <a class="header link" :href="ticketUrl + 'sale'">
{{ t('ticket.summary.saleLines') }} {{ t('ticket.summary.saleLines') }}
<QIcon name="open_in_new" color="primary" /> <QIcon name="open_in_new" />
</a> </a>
<QTable :rows="ticket.sales"> <QTable :rows="ticket.sales">
<template #header="props"> <template #header="props">
@ -398,7 +398,7 @@ async function changeState(value) {
> >
<a class="header link" :href="ticketUrl + 'package'"> <a class="header link" :href="ticketUrl + 'package'">
{{ t('globals.packages') }} {{ t('globals.packages') }}
<QIcon name="open_in_new" color="primary" /> <QIcon name="open_in_new" />
</a> </a>
<QTable :rows="ticket.packagings" flat> <QTable :rows="ticket.packagings" flat>
<template #header="props"> <template #header="props">
@ -419,7 +419,7 @@ async function changeState(value) {
<a class="header link q-mt-xl" :href="ticketUrl + 'service'"> <a class="header link q-mt-xl" :href="ticketUrl + 'service'">
{{ t('ticket.summary.service') }} {{ t('ticket.summary.service') }}
<QIcon name="open_in_new" color="primary" /> <QIcon name="open_in_new" />
</a> </a>
<QTable :rows="ticket.services" flat> <QTable :rows="ticket.services" flat>
<template #header="props"> <template #header="props">

View File

@ -294,7 +294,7 @@ async function setTravelData(travelData) {
<VnLv :label="t('globals.totalEntries')" :value="travel.totalEntries" /> <VnLv :label="t('globals.totalEntries')" :value="travel.totalEntries" />
</QCard> </QCard>
<QCard class="full-width" v-if="entriesTableRows.length > 0"> <QCard class="full-width" v-if="entriesTableRows.length > 0">
<span class="header"> <span class="header header-link">
{{ t('travel.summary.entries') }} {{ t('travel.summary.entries') }}
</span> </span>
<QTable <QTable
@ -353,14 +353,14 @@ async function setTravelData(travelData) {
<QCard class="full-width" v-if="thermographs.length > 0"> <QCard class="full-width" v-if="thermographs.length > 0">
<RouterLink <RouterLink
class="header" class="header header-link"
:to="{ :to="{
name: 'TravelThermographsIndex', name: 'TravelThermographsIndex',
params: { id: travel.id }, params: { id: travel.id },
}" }"
> >
{{ t('travel.summary.thermographs') }} {{ t('travel.summary.thermographs') }}
<QIcon name="open_in_new" color="primary" /> <QIcon name="open_in_new" />
</RouterLink> </RouterLink>
<QTable <QTable
:rows="thermographs" :rows="thermographs"

View File

@ -71,9 +71,9 @@ const filter = {
</template> </template>
<template #body="{ entity: worker }"> <template #body="{ entity: worker }">
<QCard class="vn-one"> <QCard class="vn-one">
<a class="header" :href="workerUrl + `basic-data`"> <a class="header header-link" :href="workerUrl + `basic-data`">
{{ t('worker.summary.basicData') }} {{ t('worker.summary.basicData') }}
<QIcon name="open_in_new" color="primary" /> <QIcon name="open_in_new" />
</a> </a>
<VnLv :label="t('worker.card.name')" :value="worker.user.nickname" /> <VnLv :label="t('worker.card.name')" :value="worker.user.nickname" />
<VnLv <VnLv
@ -111,7 +111,7 @@ const filter = {
<VnLv :label="t('worker.summary.locker')" :value="worker.locker" /> <VnLv :label="t('worker.summary.locker')" :value="worker.locker" />
</QCard> </QCard>
<QCard class="vn-one"> <QCard class="vn-one">
<div class="header"> <div class="header header-link">
{{ t('worker.summary.userData') }} {{ t('worker.summary.userData') }}
</div> </div>
<VnLv :label="t('worker.summary.userId')" :value="worker.user.id" /> <VnLv :label="t('worker.summary.userId')" :value="worker.user.id" />