Merge branch 'dev' into 7308-warning_inject
gitea/salix-front/pipeline/pr-dev This commit looks good Details

This commit is contained in:
Javier Segarra 2024-11-14 07:20:28 +00:00
commit 0fe5f6d54d
146 changed files with 701 additions and 1702 deletions

View File

@ -50,25 +50,25 @@ const loading = ref(false);
const tableColumns = computed(() => [ const tableColumns = computed(() => [
{ {
label: t('entry.buys.id'), label: t('globals.id'),
name: 'id', name: 'id',
field: 'id', field: 'id',
align: 'left', align: 'left',
}, },
{ {
label: t('entry.buys.name'), label: t('globals.name'),
name: 'name', name: 'name',
field: 'name', field: 'name',
align: 'left', align: 'left',
}, },
{ {
label: t('entry.buys.size'), label: t('globals.size'),
name: 'size', name: 'size',
field: 'size', field: 'size',
align: 'left', align: 'left',
}, },
{ {
label: t('entry.buys.producer'), label: t('globals.producer'),
name: 'producerName', name: 'producerName',
field: 'producer', field: 'producer',
align: 'left', align: 'left',
@ -152,10 +152,10 @@ const selectItem = ({ id }) => {
</span> </span>
<h1 class="title">{{ t('Filter item') }}</h1> <h1 class="title">{{ t('Filter item') }}</h1>
<VnRow> <VnRow>
<VnInput :label="t('entry.buys.name')" v-model="itemFilterParams.name" /> <VnInput :label="t('globals.name')" v-model="itemFilterParams.name" />
<VnInput :label="t('entry.buys.size')" v-model="itemFilterParams.size" /> <VnInput :label="t('entry.buys.size')" v-model="itemFilterParams.size" />
<VnSelect <VnSelect
:label="t('entry.buys.producer')" :label="t('globals.producer')"
:options="producersOptions" :options="producersOptions"
hide-selected hide-selected
option-label="name" option-label="name"
@ -163,7 +163,7 @@ const selectItem = ({ id }) => {
v-model="itemFilterParams.producerFk" v-model="itemFilterParams.producerFk"
/> />
<VnSelect <VnSelect
:label="t('entry.buys.type')" :label="t('globals.type')"
:options="ItemTypesOptions" :options="ItemTypesOptions"
hide-selected hide-selected
option-label="name" option-label="name"

View File

@ -48,13 +48,13 @@ const loading = ref(false);
const tableColumns = computed(() => [ const tableColumns = computed(() => [
{ {
label: t('entry.basicData.id'), label: t('globals.id'),
name: 'id', name: 'id',
field: 'id', field: 'id',
align: 'left', align: 'left',
}, },
{ {
label: t('entry.basicData.warehouseOut'), label: t('globals.warehouseOut'),
name: 'warehouseOutFk', name: 'warehouseOutFk',
field: 'warehouseOutFk', field: 'warehouseOutFk',
align: 'left', align: 'left',
@ -62,7 +62,7 @@ const tableColumns = computed(() => [
warehousesOptions.value.find((warehouse) => warehouse.id === val).name, warehousesOptions.value.find((warehouse) => warehouse.id === val).name,
}, },
{ {
label: t('entry.basicData.warehouseIn'), label: t('globals.warehouseIn'),
name: 'warehouseInFk', name: 'warehouseInFk',
field: 'warehouseInFk', field: 'warehouseInFk',
align: 'left', align: 'left',
@ -70,14 +70,14 @@ const tableColumns = computed(() => [
warehousesOptions.value.find((warehouse) => warehouse.id === val).name, warehousesOptions.value.find((warehouse) => warehouse.id === val).name,
}, },
{ {
label: t('entry.basicData.shipped'), label: t('globals.shipped'),
name: 'shipped', name: 'shipped',
field: 'shipped', field: 'shipped',
align: 'left', align: 'left',
format: (val) => toDate(val), format: (val) => toDate(val),
}, },
{ {
label: t('entry.basicData.landed'), label: t('globals.landed'),
name: 'landed', name: 'landed',
field: 'landed', field: 'landed',
align: 'left', align: 'left',
@ -146,7 +146,7 @@ const selectTravel = ({ id }) => {
<h1 class="title">{{ t('Filter travels') }}</h1> <h1 class="title">{{ t('Filter travels') }}</h1>
<VnRow> <VnRow>
<VnSelect <VnSelect
:label="t('entry.basicData.agency')" :label="t('globals.agency')"
:options="agenciesOptions" :options="agenciesOptions"
hide-selected hide-selected
option-label="name" option-label="name"
@ -154,7 +154,7 @@ const selectTravel = ({ id }) => {
v-model="travelFilterParams.agencyModeFk" v-model="travelFilterParams.agencyModeFk"
/> />
<VnSelect <VnSelect
:label="t('entry.basicData.warehouseOut')" :label="t('globals.warehouseOut')"
:options="warehousesOptions" :options="warehousesOptions"
hide-selected hide-selected
option-label="name" option-label="name"
@ -162,7 +162,7 @@ const selectTravel = ({ id }) => {
v-model="travelFilterParams.warehouseOutFk" v-model="travelFilterParams.warehouseOutFk"
/> />
<VnSelect <VnSelect
:label="t('entry.basicData.warehouseIn')" :label="t('globals.warehouseIn')"
:options="warehousesOptions" :options="warehousesOptions"
hide-selected hide-selected
option-label="name" option-label="name"
@ -170,11 +170,11 @@ const selectTravel = ({ id }) => {
v-model="travelFilterParams.warehouseInFk" v-model="travelFilterParams.warehouseInFk"
/> />
<VnInputDate <VnInputDate
:label="t('entry.basicData.shipped')" :label="t('globals.shipped')"
v-model="travelFilterParams.shipped" v-model="travelFilterParams.shipped"
/> />
<VnInputDate <VnInputDate
:label="t('entry.basicData.landed')" :label="t('globals.landed')"
v-model="travelFilterParams.landed" v-model="travelFilterParams.landed"
/> />
</VnRow> </VnRow>

View File

@ -248,7 +248,7 @@ const removeTag = (index, params, search) => {
> >
<QItemSection class="col"> <QItemSection class="col">
<VnSelect <VnSelect
:label="t('components.itemsFilterPanel.tag')" :label="t('globals.tag')"
v-model="value.selectedTag" v-model="value.selectedTag"
:options="tagOptions" :options="tagOptions"
option-label="name" option-label="name"

View File

@ -163,7 +163,7 @@ function addDefaultData(data) {
/> />
<QFile <QFile
ref="inputFileRef" ref="inputFileRef"
:label="t('entry.buys.file')" :label="t('globals.file')"
v-model="dms.files" v-model="dms.files"
:multiple="false" :multiple="false"
:accept="allowedContentTypes" :accept="allowedContentTypes"

View File

@ -59,7 +59,7 @@ globals:
downloadCSVSuccess: CSV downloaded successfully downloadCSVSuccess: CSV downloaded successfully
reference: Reference reference: Reference
agency: Agency agency: Agency
wareHouseOut: Warehouse Out warehouseOut: Warehouse Out
wareHouseIn: Warehouse In wareHouseIn: Warehouse In
landed: Landed landed: Landed
shipped: Shipped shipped: Shipped
@ -106,6 +106,26 @@ globals:
weight: Weight weight: Weight
error: Ups! Something went wrong error: Ups! Something went wrong
recalc: Recalculate recalc: Recalculate
alias: Alias
vat: VAT
intrastat: Intrastat
tags: Tags
size: Size
producer: Producer
origin: Origin
state: State
subtotal: Subtotal
visible: Visible
price: Price
client: Client
country: Country
phone: Phone
mobile: Mobile
postcode: Postcode
street: Street
tag: Tag
ticketId: Ticket ID
confirmed: Confirmed
small: Small small: Small
medium: Medium medium: Medium
big: Big big: Big
@ -300,13 +320,10 @@ globals:
maxTemperature: Max maxTemperature: Max
minTemperature: Min minTemperature: Min
params: params:
id: ID
clientFk: Client id clientFk: Client id
salesPersonFk: Sales person salesPersonFk: Sales person
warehouseFk: Warehouse warehouseFk: Warehouse
provinceFk: Province provinceFk: Province
from: From
To: To
stateFk: State stateFk: State
email: Email email: Email
SSN: SSN SSN: SSN
@ -336,16 +353,12 @@ login:
loginError: Invalid username or password loginError: Invalid username or password
fieldRequired: This field is required fieldRequired: This field is required
twoFactorRequired: Two-factor verification required twoFactorRequired: Two-factor verification required
twoFactor: twoFactorRequired:
code: Code
validate: Validate validate: Validate
insert: Enter the verification code insert: Enter the verification code
explanation: >- explanation: >-
Please, enter the verification code that we have sent to your email in the Please, enter the verification code that we have sent to your email in the
next 5 minutes next 5 minutes
verifyEmail:
pageTitles:
verifyEmail: Email verification
recoverPassword: recoverPassword:
userOrEmail: User or recovery email userOrEmail: User or recovery email
explanation: >- explanation: >-
@ -357,15 +370,7 @@ resetPassword:
entry: entry:
list: list:
newEntry: New entry newEntry: New entry
landed: Landed
invoiceNumber: Invoice number
supplier: Supplier
booked: Booked
confirmed: Confirmed
ordered: Ordered
tableVisibleColumns: tableVisibleColumns:
id: Id
reference: Reference
created: Creation created: Creation
supplierFk: Supplier supplierFk: Supplier
isBooked: Booked isBooked: Booked
@ -378,236 +383,117 @@ entry:
summary: summary:
commission: Commission commission: Commission
currency: Currency currency: Currency
company: Company
reference: Reference
invoiceNumber: Invoice number invoiceNumber: Invoice number
ordered: Ordered ordered: Ordered
confirmed: Confirmed
booked: Booked booked: Booked
excludedFromAvailable: Inventory excludedFromAvailable: Inventory
travelReference: Reference travelReference: Reference
travelAgency: Agency travelAgency: Agency
travelShipped: Shipped travelShipped: Shipped
travelWarehouseOut: Warehouse Out
travelDelivered: Delivered travelDelivered: Delivered
travelLanded: Landed travelLanded: Landed
travelWarehouseIn: Warehouse In
travelReceived: Received travelReceived: Received
buys: Buys buys: Buys
quantity: Quantity
stickers: Stickers stickers: Stickers
package: Package package: Package
weight: Weight
packing: Packing packing: Packing
grouping: Grouping grouping: Grouping
buyingValue: Buying value buyingValue: Buying value
import: Import import: Import
pvp: PVP pvp: PVP
item: Item
basicData: basicData:
supplier: Supplier
travel: Travel travel: Travel
reference: Reference
invoiceNumber: Invoice number
company: Company
currency: Currency currency: Currency
commission: Commission commission: Commission
observation: Observation observation: Observation
ordered: Ordered
confirmed: Confirmed
booked: Booked booked: Booked
excludedFromAvailable: Inventory excludedFromAvailable: Inventory
agency: Agency
warehouseOut: Warehouse Out
warehouseIn: Warehouse In
shipped: Shipped
landed: Landed
id: ID
buys: buys:
groupingPrice: Grouping price
packingPrice: Packing price
reference: Reference
observations: Observations observations: Observations
item: Item
size: Size
packing: Packing
grouping: Grouping
buyingValue: Buying value
packagingFk: Box packagingFk: Box
file: File
name: Name
producer: Producer
type: Type
color: Color color: Color
id: ID
printedStickers: Printed stickers printedStickers: Printed stickers
notes: notes:
observationType: Observation type observationType: Observation type
descriptor:
agency: Agency
landed: Landed
warehouseOut: Warehouse Out
latestBuys: latestBuys:
tableVisibleColumns: tableVisibleColumns:
image: Picture image: Picture
itemFk: Item ID itemFk: Item ID
packing: Packing
grouping: Grouping
quantity: Quantity
size: Size
tags: Tags
type: Type
intrastat: Intrastat
origin: Origin
weightByPiece: Weight/Piece weightByPiece: Weight/Piece
isActive: Active isActive: Active
family: Family family: Family
entryFk: Entry entryFk: Entry
buyingValue: Buying value
freightValue: Freight value freightValue: Freight value
comissionValue: Commission value comissionValue: Commission value
description: Description
packageValue: Package value packageValue: Package value
isIgnored: Is ignored isIgnored: Is ignored
price2: Grouping price2: Grouping
price3: Packing price3: Packing
minPrice: Min minPrice: Min
ektFk: Ekt ektFk: Ekt
weight: Weight
packagingFk: Package
packingOut: Package out packingOut: Package out
landing: Landing landing: Landing
isExcludedFromAvailable: Es inventory isExcludedFromAvailable: Es inventory
ticket: ticket:
pageTitles:
tickets: Tickets
list: List
ticketCreate: New ticket
summary: Summary
basicData: Basic Data
boxing: Boxing
sms: Sms
notes: Notes
sale: Sale
dms: File management
volume: Volume
observation: Notes
ticketAdvance: Advance tickets
futureTickets: Future tickets
purchaseRequest: Purchase request
weeklyTickets: Weekly tickets
list:
nickname: Nickname
state: State
shipped: Shipped
landed: Landed
salesPerson: Sales person
total: Total
card: card:
ticketId: Ticket ID
state: State
customerId: Customer ID customerId: Customer ID
salesPerson: Sales person
agency: Agency
shipped: Shipped
warehouse: Warehouse
customerCard: Customer card customerCard: Customer card
alias: Alias
ticketList: Ticket List ticketList: Ticket List
newOrder: New Order newOrder: New Order
boxing: boxing:
expedition: Expedition expedition: Expedition
item: Item
created: Created created: Created
worker: Worker
selectTime: 'Select time:' selectTime: 'Select time:'
selectVideo: 'Select video:' selectVideo: 'Select video:'
notFound: No videos available notFound: No videos available
summary: summary:
state: State
salesPerson: Sales person
agency: Agency
zone: Zone zone: Zone
warehouse: Warehouse
collection: Collection collection: Collection
route: Route route: Route
invoice: Invoice invoice: Invoice
shipped: Shipped shipped: Shipped
landed: Landed
consigneePhone: Consignee phone consigneePhone: Consignee phone
consigneeMobile: Consignee mobile consigneeMobile: Consignee mobile
consigneeAddress: Consignee address consigneeAddress: Consignee address
clientPhone: Client phone clientPhone: Client phone
clientMobile: Client mobile clientMobile: Client mobile
consignee: Consignee consignee: Consignee
subtotal: Subtotal
vat: VAT
total: Total total: Total
saleLines: Line items saleLines: Line items
item: Item
visible: Visible
available: Available available: Available
quantity: Quantity
price: Price
discount: Discount discount: Discount
packing: Packing packing: Packing
hasComponentLack: Component lack hasComponentLack: Component lack
itemShortage: Not visible itemShortage: Not visible
claim: Claim claim: Claim
reserved: Reserved reserved: Reserved
created: Created
package: Package package: Package
taxClass: Tax class taxClass: Tax class
services: Services services: Services
requester: Requester requester: Requester
atender: Atender atender: Atender
request: Request request: Request
weight: Weight
goTo: Go to goTo: Go to
summaryAmount: Summary summaryAmount: Summary
purchaseRequest: Purchase request purchaseRequest: Purchase request
service: Service service: Service
description: Description
attender: Attender attender: Attender
ok: Ok ok: Ok
create: create:
client: Client
address: Address address: Address
landed: Landed
warehouse: Warehouse
agency: Agency
invoiceOut: invoiceOut:
list:
ref: Reference
issued: Issued
shortIssued: Issued
client: Client
created: Created
shortCreated: Created
company: Company
dued: Due date
shortDued: Due date
amount: Amount
card: card:
issued: Issued issued: Issued
client: Client
company: Company
customerCard: Customer card customerCard: Customer card
summary: summary:
issued: Issued issued: Issued
created: Created
dued: Due dued: Due
booked: Booked booked: Booked
company: Company
taxBreakdown: Tax breakdown taxBreakdown: Tax breakdown
type: Type
taxableBase: Taxable base taxableBase: Taxable base
rate: Rate rate: Rate
fee: Fee fee: Fee
tickets: Tickets tickets: Tickets
ticketId: Ticket id
nickname: Alias
shipped: Shipped
totalWithVat: Amount totalWithVat: Amount
globalInvoices: globalInvoices:
errors: errors:
@ -621,22 +507,14 @@ invoiceOut:
noTicketsToInvoice: There are not tickets to invoice noTicketsToInvoice: There are not tickets to invoice
criticalInvoiceError: 'Critical invoicing error, process stopped' criticalInvoiceError: 'Critical invoicing error, process stopped'
table: table:
client: Client
addressId: Address id addressId: Address id
streetAddress: Street streetAddress: Street
statusCard: statusCard:
percentageText: '{getPercentage}% {getAddressNumber} of {getNAddresses}' percentageText: '{getPercentage}% {getAddressNumber} of {getNAddresses}'
pdfsNumberText: '{nPdfs} of {totalPdfs} PDFs' pdfsNumberText: '{nPdfs} of {totalPdfs} PDFs'
negativeBases: negativeBases:
from: From
to: To
company: Company
country: Country
clientId: Client Id clientId: Client Id
client: Client
amount: Amount
base: Base base: Base
ticketId: Ticket Id
active: Active active: Active
hasToInvoice: Has to Invoice hasToInvoice: Has to Invoice
verifiedData: Verified Data verifiedData: Verified Data
@ -649,15 +527,6 @@ shelving:
priority: Priority priority: Priority
newShelving: New Shelving newShelving: New Shelving
summary: summary:
code: Code
parking: Parking
priority: Priority
worker: Worker
recyclable: Recyclable
basicData:
code: Code
parking: Parking
priority: Priority
recyclable: Recyclable recyclable: Recyclable
parking: parking:
pickingOrder: Picking order pickingOrder: Picking order
@ -670,56 +539,27 @@ parking:
order: order:
field: field:
salesPersonFk: Sales Person salesPersonFk: Sales Person
clientFk: Client
isConfirmed: Confirmed
created: Created
landed: Landed
hour: Hour
agency: Agency
total: Total
form: form:
clientFk: Client clientFk: Client
addressFk: Address addressFk: Address
landed: Landed
agencyModeFk: Agency agencyModeFk: Agency
list: list:
newOrder: New Order newOrder: New Order
summary: summary:
basket: Basket basket: Basket
nickname: Nickname
company: Company
confirmed: Confirmed
notConfirmed: Not confirmed notConfirmed: Not confirmed
created: Created created: Created
landed: Landed
phone: Phone
createdFrom: Created From createdFrom: Created From
address: Address address: Address
notes: Notes
subtotal: Subtotal
total: Total total: Total
vat: VAT
state: State
alias: Alias
items: Items items: Items
orderTicketList: Order Ticket List orderTicketList: Order Ticket List
details: Details
item: Item
quantity: Quantity
price: Price
amount: Amount amount: Amount
confirm: Confirm confirm: Confirm
confirmLines: Confirm lines confirmLines: Confirm lines
department: department:
pageTitles:
basicData: Basic data
department: Department
summary: Summary
name: Name
code: Code
chat: Chat chat: Chat
bossDepartment: Boss Department bossDepartment: Boss Department
email: Email
selfConsumptionCustomer: Self-consumption customer selfConsumptionCustomer: Self-consumption customer
telework: Telework telework: Telework
notifyOnErrors: Notify on errors notifyOnErrors: Notify on errors
@ -728,47 +568,11 @@ department:
hasToSendMail: Send check-ins by email hasToSendMail: Send check-ins by email
departmentRemoved: Department removed departmentRemoved: Department removed
worker: worker:
pageTitles:
workers: Workers
list: List
basicData: Basic data
summary: Summary
notifications: Notifications
workerCreate: New worker
department: Department
pda: PDA
notes: Notas
dms: My documentation
pbx: Private Branch Exchange
log: Log
calendar: Calendar
timeControl: Time control
locker: Locker
balance: Balance
medical: Medical
operator: Operator
list: list:
name: Name
email: Email
phone: Phone
mobile: Mobile
active: Active
department: Department department: Department
schedule: Schedule schedule: Schedule
newWorker: New worker newWorker: New worker
card:
workerId: Worker ID
user: User
name: Name
email: Email
phone: Phone
mobile: Mobile
active: Active
warehouse: Warehouse
agency: Agency
salesPerson: Sales person
summary: summary:
basicData: Basic data
boss: Boss boss: Boss
phoneExtension: Phone extension phoneExtension: Phone extension
entPhone: Enterprise phone entPhone: Enterprise phone
@ -800,19 +604,12 @@ worker:
serialNumber: Serial number serialNumber: Serial number
removePDA: Deallocate PDA removePDA: Deallocate PDA
create: create:
name: Name
lastName: Last name lastName: Last name
birth: Birth birth: Birth
fi: Fi fi: Fi
code: Worker code code: Worker code
phone: Phone
postcode: Postcode
province: Province
city: City
street: Street
webUser: Web user webUser: Web user
personalEmail: Personal email personalEmail: Personal email
company: Company
boss: Boss boss: Boss
payMethods: Pay method payMethods: Pay method
iban: IBAN iban: IBAN
@ -824,16 +621,13 @@ worker:
endDate: End date endDate: End date
center: Training center center: Training center
invoice: Invoice invoice: Invoice
amount: Amount
remark: Remark remark: Remark
hasDiploma: Has diploma hasDiploma: Has diploma
medical: medical:
tableVisibleColumns: tableVisibleColumns:
date: Date
time: Hour time: Hour
center: Formation Center center: Formation Center
invoice: Invoice invoice: Invoice
amount: Amount
isFit: Fit isFit: Fit
remark: Observations remark: Observations
imageNotFound: Image not found imageNotFound: Image not found
@ -857,18 +651,7 @@ worker:
isOnReservationMode: Reservation mode isOnReservationMode: Reservation mode
machine: Machine machine: Machine
wagon: wagon:
pageTitles:
wagons: Wagons
wagonsList: Wagons List
wagonCreate: Create wagon
wagonEdit: Edit wagon
typesList: Types List
typeCreate: Create type
typeEdit: Edit type
wagonCounter: Trolley counter
wagonTray: Tray List
type: type:
name: Name
submit: Submit submit: Submit
reset: Reset reset: Reset
trayColor: Tray color trayColor: Tray color
@ -876,13 +659,10 @@ wagon:
list: list:
plate: Plate plate: Plate
volume: Volume volume: Volume
type: Type
remove: Remove remove: Remove
removeItem: Wagon removed successfully removeItem: Wagon removed successfully
create: create:
plate: Plate plate: Plate
volume: Volume
type: Type
label: Label label: Label
warnings: warnings:
noData: No data available noData: No data available
@ -899,26 +679,17 @@ wagon:
supplier: supplier:
list: list:
payMethod: Pay method payMethod: Pay method
payDeadline: Pay deadline
payDay: Pay day
account: Account account: Account
newSupplier: New supplier newSupplier: New supplier
tableVisibleColumns: tableVisibleColumns:
id: Id
name: Name
nif: NIF/CIF nif: NIF/CIF
nickname: Alias
account: Account account: Account
payMethod: Pay Method
payDay: Pay Day payDay: Pay Day
country: Country
summary: summary:
responsible: Responsible responsible: Responsible
notes: Notes
verified: Verified verified: Verified
isActive: Is active isActive: Is active
billingData: Billing data billingData: Billing data
payMethod: Pay method
payDeadline: Pay deadline payDeadline: Pay deadline
payDay: Pay day payDay: Pay day
account: Account account: Account
@ -931,15 +702,10 @@ supplier:
fiscalAddress: Fiscal address fiscalAddress: Fiscal address
socialName: Social name socialName: Social name
taxNumber: Tax number taxNumber: Tax number
street: Street
city: City city: City
postCode: Postcode
province: Province
country: Country
create: create:
supplierName: Supplier name supplierName: Supplier name
basicData: basicData:
alias: Alias
workerFk: Responsible workerFk: Responsible
isSerious: Verified isSerious: Verified
isActive: Active isActive: Active
@ -954,36 +720,18 @@ supplier:
sageWithholdingFk: Sage withholding sageWithholdingFk: Sage withholding
sageTransactionTypeFk: Sage transaction type sageTransactionTypeFk: Sage transaction type
supplierActivityFk: Supplier activity supplierActivityFk: Supplier activity
healthRegister: Health register
street: Street
postcode: Postcode
city: City *
provinceFk: Province
country: Country
isTrucker: Trucker isTrucker: Trucker
isVies: Vies isVies: Vies
billingData: billingData:
payMethodFk: Billing data payMethodFk: Billing data
payDemFk: Payment deadline payDemFk: Payment deadline
payDay: Pay day
accounts: accounts:
iban: Iban iban: Iban
bankEntity: Bank entity bankEntity: Bank entity
beneficiary: Beneficiary beneficiary: Beneficiary
contacts: contacts:
name: Name
phone: Phone
mobile: Mobile
email: Email email: Email
observation: Notes observation: Notes
addresses:
street: Street
postcode: Postcode
phone: Phone
name: Name
city: City
province: Province
mobile: Mobile
agencyTerms: agencyTerms:
agencyFk: Agency agencyFk: Agency
minimumM3: Minimum M3 minimumM3: Minimum M3
@ -995,25 +743,16 @@ supplier:
addRow: Add row addRow: Add row
consumption: consumption:
entry: Entry entry: Entry
date: Date
reference: Reference
travel: travel:
travelList: travelList:
tableVisibleColumns: tableVisibleColumns:
id: Id
ref: Reference ref: Reference
agency: Agency
shipped: Shipped
landed: Landed
shipHour: Shipment Hour shipHour: Shipment Hour
landHour: Landing Hour landHour: Landing Hour
warehouseIn: Warehouse in
warehouseOut: Warehouse out
totalEntries: Total entries totalEntries: Total entries
totalEntriesTooltip: Total entries totalEntriesTooltip: Total entries
daysOnward: Landed days onwards daysOnward: Landed days onwards
summary: summary:
confirmed: Confirmed
entryId: Entry Id entryId: Entry Id
freight: Freight freight: Freight
package: Package package: Package
@ -1026,64 +765,89 @@ travel:
AddEntry: Add entry AddEntry: Add entry
thermographs: Thermographs thermographs: Thermographs
hb: HB hb: HB
variables:
search: Id/Reference
agencyModeFk: Agency
warehouseInFk: ' Warehouse In'
warehouseOutFk: Warehouse Out
landedFrom: Landed from
landedTo: Landed to
continent: Continent out
totalEntries: Total entries
basicData: basicData:
reference: Reference
agency: Agency
shipped: Shipped
landed: Landed
warehouseOut: Warehouse Out
warehouseIn: Warehouse In
delivered: Delivered
received: Received
daysInForward: Days in forward daysInForward: Days in forward
thermographs: thermographs:
code: Code
temperature: Temperature temperature: Temperature
state: State
destination: Destination destination: Destination
created: Created
thermograph: Thermograph thermograph: Thermograph
reference: Reference
type: Type
company: Company
warehouse: Warehouse
travelFileDescription: 'Travel id { travelId }' travelFileDescription: 'Travel id { travelId }'
file: File item:
descriptor:
buyer: Buyer
color: Color
category: Category
available: Available
warehouseText: 'Calculated on the warehouse of { warehouseName }'
itemDiary: Item diary
list:
id: Identifier
stems: Stems
category: Category
typeName: Type
isActive: Active
userName: Buyer
weightByPiece: Weight/Piece
stemMultiplier: Multiplier
fixedPrice:
itemFk: Item ID
groupingPrice: Grouping price
packingPrice: Packing price
hasMinPrice: Has min price
minPrice: Min price
started: Started
ended: Ended
create:
priority: Priority
buyRequest:
requester: Requester
requested: Requested
attender: Atender
achieved: Achieved
concept: Concept
summary:
otherData: Other data
tax: Tax
botanical: Botanical
barcode: Barcode
completeName: Complete name
family: Familiy
stems: Stems
multiplier: Multiplier
buyer: Buyer
doPhoto: Do photo
intrastatCode: Intrastat code
ref: Reference
relevance: Relevance
weight: Weight (gram)/stem
units: Units/box
expense: Expense
generic: Generic
recycledPlastic: Recycled plastic
nonRecycledPlastic: Non recycled plastic
minSalesQuantity: Min sales quantity
genus: Genus
specie: Specie
components: components:
topbar: {} topbar: {}
itemsFilterPanel: itemsFilterPanel:
typeFk: Type typeFk: Type
tag: Tag
value: Value value: Value
# ItemFixedPriceFilter # ItemFixedPriceFilter
buyerFk: Buyer buyerFk: Buyer
warehouseFk: Warehouse
started: From started: From
ended: To ended: To
mine: For me mine: For me
hasMinPrice: Minimum price hasMinPrice: Minimum price
# LatestBuysFilter # LatestBuysFilter
salesPersonFk: Buyer salesPersonFk: Buyer
supplierFk: Supplier
from: From from: From
to: To
active: Is active active: Is active
visible: Is visible
floramondo: Is floramondo floramondo: Is floramondo
showBadDates: Show future items showBadDates: Show future items
userPanel: userPanel:
copyToken: Token copied to clipboard copyToken: Token copied to clipboard
settings: Settings settings: Settings
logOut: Log Out
localWarehouse: Local warehouse localWarehouse: Local warehouse
localBank: Local bank localBank: Local bank
localCompany: Local company localCompany: Local company
@ -1091,7 +855,6 @@ components:
userCompany: User company userCompany: User company
smartCard: smartCard:
downloadFile: Download file downloadFile: Download file
clone: Clone
openCard: View openCard: View
openSummary: Summary openSummary: Summary
cardDescriptor: cardDescriptor:

View File

@ -58,8 +58,8 @@ globals:
downloadCSVSuccess: Descarga de CSV exitosa downloadCSVSuccess: Descarga de CSV exitosa
reference: Referencia reference: Referencia
agency: Agencia agency: Agencia
wareHouseOut: Alm. salida warehouseOut: Alm. salida
wareHouseIn: Alm. entrada warehouseIn: Alm. entrada
landed: F. entrega landed: F. entrega
shipped: F. envío shipped: F. envío
totalEntries: Ent. totales totalEntries: Ent. totales
@ -108,6 +108,26 @@ globals:
weight: Peso weight: Peso
error: ¡Ups! Algo salió mal error: ¡Ups! Algo salió mal
recalc: Recalcular recalc: Recalcular
alias: Alias
vat: IVA
intrastat: Intrastat
tags: Etiquetas
size: Medida
producer: Productor
origin: Origen
state: Estado
subtotal: Subtotal
visible: Visible
price: Precio
client: Cliente
country: País
phone: Teléfono
mobile: Móvil
postcode: Código postal
street: Dirección
tag: Etiqueta
ticketId: ID ticket
confirmed: Confirmado
small: Pequeño/a small: Pequeño/a
medium: Mediano/a medium: Mediano/a
big: Grande big: Grande
@ -304,13 +324,10 @@ globals:
maxTemperature: Máx maxTemperature: Máx
minTemperature: Mín minTemperature: Mín
params: params:
id: Id
clientFk: Id cliente clientFk: Id cliente
salesPersonFk: Comercial salesPersonFk: Comercial
warehouseFk: Almacén warehouseFk: Almacén
provinceFk: Provincia provinceFk: Provincia
from: Desde
To: Hasta
stateFk: Estado stateFk: Estado
departmentFk: Departamento departmentFk: Departamento
email: Correo email: Correo
@ -341,13 +358,9 @@ login:
fieldRequired: Este campo es obligatorio fieldRequired: Este campo es obligatorio
twoFactorRequired: Verificación de doble factor requerida twoFactorRequired: Verificación de doble factor requerida
twoFactor: twoFactor:
code: Código
validate: Validar validate: Validar
insert: Introduce el código de verificación insert: Introduce el código de verificación
explanation: Por favor introduce el código de verificación que te hemos enviado a tu email en los próximos 5 minutos explanation: Por favor introduce el código de verificación que te hemos enviado a tu email en los próximos 5 minutos
verifyEmail:
pageTitles:
verifyEmail: Verificación de correo
recoverPassword: recoverPassword:
userOrEmail: Usuario o correo de recuperación userOrEmail: Usuario o correo de recuperación
explanation: >- explanation: >-
@ -359,15 +372,7 @@ resetPassword:
entry: entry:
list: list:
newEntry: Nueva entrada newEntry: Nueva entrada
landed: F. entrega
invoiceNumber: Núm. factura
supplier: Proveedor
booked: Asentado
confirmed: Confirmado
ordered: Pedida
tableVisibleColumns: tableVisibleColumns:
id: Id
reference: Referencia
created: Creación created: Creación
supplierFk: Proveedor supplierFk: Proveedor
isBooked: Asentado isBooked: Asentado
@ -380,11 +385,8 @@ entry:
summary: summary:
commission: Comisión commission: Comisión
currency: Moneda currency: Moneda
company: Empresa
reference: Referencia
invoiceNumber: Núm. factura invoiceNumber: Núm. factura
ordered: Pedida ordered: Pedida
confirmed: Confirmada
booked: Contabilizada booked: Contabilizada
excludedFromAvailable: Inventario excludedFromAvailable: Inventario
travelReference: Referencia travelReference: Referencia
@ -393,230 +395,108 @@ entry:
travelWarehouseOut: Alm. salida travelWarehouseOut: Alm. salida
travelDelivered: Enviada travelDelivered: Enviada
travelLanded: F. entrega travelLanded: F. entrega
travelWarehouseIn: Alm. entrada
travelReceived: Recibida travelReceived: Recibida
buys: Compras buys: Compras
quantity: Cantidad
stickers: Etiquetas stickers: Etiquetas
package: Embalaje package: Embalaje
weight: Peso
packing: Packing packing: Packing
grouping: Grouping grouping: Grouping
buyingValue: Coste buyingValue: Coste
import: Importe import: Importe
pvp: PVP pvp: PVP
item: Artículo
basicData: basicData:
supplier: Proveedor
travel: Envío travel: Envío
reference: Referencia
invoiceNumber: Núm. factura
company: Empresa
currency: Moneda currency: Moneda
observation: Observación observation: Observación
commission: Comisión commission: Comisión
ordered: Pedida
confirmed: Confirmado
booked: Asentado booked: Asentado
excludedFromAvailable: Inventario excludedFromAvailable: Inventario
agency: Agencia
warehouseOut: Alm. salida
warehouseIn: Alm. entrada
shipped: F. envío
landed: F. entrega
id: ID
buys: buys:
groupingPrice: Precio grouping
packingPrice: Precio packing
reference: Referencia
observations: Observaciónes observations: Observaciónes
item: Artículo
size: Medida
packing: Packing
grouping: Grouping
buyingValue: Coste
packagingFk: Embalaje packagingFk: Embalaje
file: Fichero
name: Nombre
producer: Productor
type: Tipo
color: Color color: Color
id: ID
printedStickers: Etiquetas impresas printedStickers: Etiquetas impresas
notes: notes:
observationType: Tipo de observación observationType: Tipo de observación
descriptor:
agency: Agencia
landed: F. entrega
warehouseOut: Alm. salida
latestBuys: latestBuys:
tableVisibleColumns: tableVisibleColumns:
image: Foto image: Foto
itemFk: Id Artículo itemFk: Id Artículo
packing: packing
grouping: Grouping
quantity: Cantidad
size: Medida
tags: Etiquetas
type: Tipo
intrastat: Intrastat
origin: Origen
weightByPiece: Peso (gramos)/tallo weightByPiece: Peso (gramos)/tallo
isActive: Activo isActive: Activo
family: Familia family: Familia
entryFk: Entrada entryFk: Entrada
buyingValue: Coste
freightValue: Porte freightValue: Porte
comissionValue: Comisión comissionValue: Comisión
description: Descripción
packageValue: Embalaje packageValue: Embalaje
isIgnored: Ignorado isIgnored: Ignorado
price2: Grouping price2: Grouping
price3: Packing price3: Packing
minPrice: Min minPrice: Min
ektFk: Ekt ektFk: Ekt
weight: Peso
packagingFk: Embalaje
packingOut: Embalaje envíos packingOut: Embalaje envíos
landing: Llegada landing: Llegada
isExcludedFromAvailable: Es inventario isExcludedFromAvailable: Es inventario
ticket: ticket:
pageTitles:
tickets: Tickets
list: Listado
ticketCreate: Nuevo ticket
summary: Resumen
basicData: Datos básicos
boxing: Encajado
sms: Sms
notes: Notas
sale: Lineas del pedido
dms: Gestión documental
volume: Volumen
observation: Notas
ticketAdvance: Adelantar tickets
futureTickets: Tickets a futuro
expedition: Expedición
purchaseRequest: Petición de compra
weeklyTickets: Tickets programados
saleTracking: Líneas preparadas
services: Servicios
tracking: Estados
components: Componentes
pictures: Fotos
packages: Embalajes
list:
nickname: Alias
state: Estado
shipped: Enviado
landed: Entregado
salesPerson: Comercial
total: Total
card: card:
ticketId: ID ticket
state: Estado
customerId: ID cliente customerId: ID cliente
salesPerson: Comercial
agency: Agencia
shipped: Enviado
warehouse: Almacén
customerCard: Ficha del cliente customerCard: Ficha del cliente
alias: Alias
ticketList: Listado de tickets ticketList: Listado de tickets
newOrder: Nuevo pedido newOrder: Nuevo pedido
boxing: boxing:
expedition: Expedición expedition: Expedición
item: Artículo
created: Creado created: Creado
worker: Trabajador
selectTime: 'Seleccionar hora:' selectTime: 'Seleccionar hora:'
selectVideo: 'Seleccionar vídeo:' selectVideo: 'Seleccionar vídeo:'
notFound: No hay vídeos disponibles notFound: No hay vídeos disponibles
summary: summary:
state: Estado
salesPerson: Comercial
agency: Agencia
zone: Zona zone: Zona
warehouse: Almacén
collection: Colección collection: Colección
route: Ruta route: Ruta
invoice: Factura invoice: Factura
shipped: Enviado shipped: Enviado
landed: Entregado
consigneePhone: Tel. consignatario consigneePhone: Tel. consignatario
consigneeMobile: Móv. consignatario consigneeMobile: Móv. consignatario
consigneeAddress: Dir. consignatario consigneeAddress: Dir. consignatario
clientPhone: Tel. cliente clientPhone: Tel. cliente
clientMobile: Móv. cliente clientMobile: Móv. cliente
consignee: Consignatario consignee: Consignatario
subtotal: Subtotal
vat: IVA
total: Total total: Total
saleLines: Líneas del pedido saleLines: Líneas del pedido
item: Artículo
visible: Visible
available: Disponible available: Disponible
quantity: Cantidad
price: Precio
discount: Descuento discount: Descuento
packing: Encajado packing: Encajado
hasComponentLack: Faltan componentes hasComponentLack: Faltan componentes
itemShortage: No visible itemShortage: No visible
claim: Reclamación claim: Reclamación
reserved: Reservado reserved: Reservado
created: Fecha creación
package: Embalaje package: Embalaje
taxClass: Tipo IVA taxClass: Tipo IVA
services: Servicios services: Servicios
requester: Solicitante requester: Solicitante
atender: Comprador atender: Comprador
request: Petición de compra request: Petición de compra
weight: Peso
goTo: Ir a goTo: Ir a
summaryAmount: Resumen summaryAmount: Resumen
purchaseRequest: Petición de compra purchaseRequest: Petición de compra
service: Servicio service: Servicio
description: Descripción
attender: Consignatario attender: Consignatario
create: create:
client: Cliente
address: Dirección address: Dirección
landed: F. entrega
warehouse: Almacén
agency: Agencia
invoiceOut: invoiceOut:
list:
ref: Referencia
issued: Fecha emisión
shortIssued: F. emisión
client: Cliente
created: Fecha creación
shortCreated: F. creación
company: Empresa
dued: Fecha vencimineto
shortDued: F. vencimiento
amount: Importe
card: card:
issued: Fecha emisión issued: Fecha emisión
client: Cliente
company: Empresa
customerCard: Ficha del cliente customerCard: Ficha del cliente
ticketList: Listado de tickets ticketList: Listado de tickets
summary: summary:
issued: Fecha issued: Fecha
created: Fecha creación
dued: Vencimiento dued: Vencimiento
booked: Contabilizada booked: Contabilizada
company: Empresa
taxBreakdown: Desglose impositivo taxBreakdown: Desglose impositivo
type: Tipo
taxableBase: Base imp. taxableBase: Base imp.
rate: Tarifa rate: Tarifa
fee: Cuota fee: Cuota
tickets: Tickets tickets: Tickets
ticketId: Id ticket
nickname: Alias
shipped: F. envío
totalWithVat: Importe totalWithVat: Importe
globalInvoices: globalInvoices:
errors: errors:
@ -630,20 +510,14 @@ invoiceOut:
noTicketsToInvoice: No existen tickets para facturar noTicketsToInvoice: No existen tickets para facturar
criticalInvoiceError: Error crítico en la facturación proceso detenido criticalInvoiceError: Error crítico en la facturación proceso detenido
table: table:
client: Cliente
addressId: Id dirección addressId: Id dirección
streetAddress: Dirección fiscal streetAddress: Dirección fiscal
statusCard: statusCard:
percentageText: '{getPercentage}% {getAddressNumber} de {getNAddresses}' percentageText: '{getPercentage}% {getAddressNumber} de {getNAddresses}'
pdfsNumberText: '{nPdfs} de {totalPdfs} PDFs' pdfsNumberText: '{nPdfs} de {totalPdfs} PDFs'
negativeBases: negativeBases:
company: Empresa
country: País
clientId: Id cliente clientId: Id cliente
client: Cliente
amount: Importe
base: Base base: Base
ticketId: Id ticket
active: Activo active: Activo
hasToInvoice: Facturar hasToInvoice: Facturar
verifiedData: Datos comprobados verifiedData: Datos comprobados
@ -653,43 +527,24 @@ invoiceOut:
order: order:
field: field:
salesPersonFk: Comercial salesPersonFk: Comercial
clientFk: Cliente
isConfirmed: Confirmada
created: Creado
landed: F. entrega
hour: Hora
agency: Agencia
total: Total
form: form:
clientFk: Cliente clientFk: Cliente
addressFk: Dirección addressFk: Dirección
landed: F. entrega
agencyModeFk: Agencia agencyModeFk: Agencia
list: list:
newOrder: Nuevo Pedido newOrder: Nuevo Pedido
summary: summary:
basket: Cesta basket: Cesta
nickname: Alias
company: Empresa
confirmed: Confirmada
notConfirmed: No confirmada notConfirmed: No confirmada
created: Creado created: Creado
landed: F. entrega
phone: Teléfono
createdFrom: Creado desde createdFrom: Creado desde
address: Dirección address: Dirección
notes: Notas
subtotal: Subtotal
total: Total total: Total
vat: IVA vat: IVA
state: Estado state: Estado
alias: Alias alias: Alias
items: Artículos items: Artículos
orderTicketList: Tickets del pedido orderTicketList: Tickets del pedido
details: Detalles
item: Item
quantity: Cantidad
price: Precio
amount: Monto amount: Monto
confirm: Confirmar confirm: Confirmar
confirmLines: Confirmar lineas confirmLines: Confirmar lineas
@ -699,15 +554,6 @@ shelving:
priority: Prioridad priority: Prioridad
newShelving: Nuevo Carro newShelving: Nuevo Carro
summary: summary:
code: Código
parking: Parking
priority: Prioridad
worker: Trabajador
recyclable: Reciclable
basicData:
code: Código
parking: Parking
priority: Prioridad
recyclable: Reciclable recyclable: Reciclable
parking: parking:
pickingOrder: Orden de recogida pickingOrder: Orden de recogida
@ -717,15 +563,8 @@ parking:
info: Puedes buscar por código de parking info: Puedes buscar por código de parking
label: Buscar parking... label: Buscar parking...
department: department:
pageTitles:
basicData: Basic data
department: Departamentos
summary: Resumen
name: Nombre
code: Código
chat: Chat chat: Chat
bossDepartment: Jefe de departamento bossDepartment: Jefe de departamento
email: Email
selfConsumptionCustomer: Cliente autoconsumo selfConsumptionCustomer: Cliente autoconsumo
telework: Teletrabaja telework: Teletrabaja
notifyOnErrors: Notificar errores notifyOnErrors: Notificar errores
@ -734,48 +573,11 @@ department:
hasToSendMail: Enviar fichadas por mail hasToSendMail: Enviar fichadas por mail
departmentRemoved: Departamento eliminado departmentRemoved: Departamento eliminado
worker: worker:
pageTitles:
workers: Trabajadores
list: Listado
basicData: Datos básicos
summary: Resumen
notifications: Notificaciones
workerCreate: Nuevo trabajador
department: Departamentos
pda: PDA
notes: Notas
dms: Mi documentación
pbx: Centralita
log: Historial
calendar: Calendario
timeControl: Control de horario
locker: Taquilla
balance: Balance
formation: Formación
medical: Mutua
operator: Operario
list: list:
name: Nombre
email: Email
phone: Teléfono
mobile: Móvil
active: Activo
department: Departamento department: Departamento
schedule: Horario schedule: Horario
newWorker: Nuevo trabajador newWorker: Nuevo trabajador
card:
workerId: ID Trabajador
user: Usuario
name: Nombre
email: Correo personal
phone: Teléfono
mobile: Móvil
active: Activo
warehouse: Almacén
agency: Empresa
salesPerson: Comercial
summary: summary:
basicData: Datos básicos
boss: Jefe boss: Jefe
phoneExtension: Extensión de teléfono phoneExtension: Extensión de teléfono
entPhone: Teléfono de empresa entPhone: Teléfono de empresa
@ -798,19 +600,12 @@ worker:
serialNumber: Número de serie serialNumber: Número de serie
removePDA: Desasignar PDA removePDA: Desasignar PDA
create: create:
name: Nombre
lastName: Apellido lastName: Apellido
birth: Fecha de nacimiento birth: Fecha de nacimiento
fi: DNI/NIF/NIE fi: DNI/NIF/NIE
code: Código de trabajador code: Código de trabajador
phone: Teléfono
postcode: Código postal
province: Provincia
city: Población
street: Dirección
webUser: Usuario Web webUser: Usuario Web
personalEmail: Correo personal personalEmail: Correo personal
company: Empresa
boss: Jefe boss: Jefe
payMethods: Método de pago payMethods: Método de pago
iban: IBAN iban: IBAN
@ -822,16 +617,13 @@ worker:
endDate: Fecha Fin endDate: Fecha Fin
center: Centro Formación center: Centro Formación
invoice: Factura invoice: Factura
amount: Importe
remark: Bonficado remark: Bonficado
hasDiploma: Diploma hasDiploma: Diploma
medical: medical:
tableVisibleColumns: tableVisibleColumns:
date: Fecha
time: Hora time: Hora
center: Centro de Formación center: Centro de Formación
invoice: Factura invoice: Factura
amount: Importe
isFit: Apto isFit: Apto
remark: Observaciones remark: Observaciones
imageNotFound: No se ha encontrado la imagen imageNotFound: No se ha encontrado la imagen
@ -856,18 +648,7 @@ worker:
machine: Máquina machine: Máquina
wagon: wagon:
pageTitles:
wagons: Vagones
wagonsList: Listado vagones
wagonCreate: Crear tipo
wagonEdit: Editar tipo
typesList: Listado tipos
typeCreate: Crear tipo
typeEdit: Editar tipo
wagonCounter: Contador de carros
wagonTray: Listado bandejas
type: type:
name: Nombre
submit: Guardar submit: Guardar
reset: Deshacer cambios reset: Deshacer cambios
trayColor: Color de la bandeja trayColor: Color de la bandeja
@ -875,13 +656,9 @@ wagon:
list: list:
plate: Matrícula plate: Matrícula
volume: Volumen volume: Volumen
type: Tipo
remove: Borrar remove: Borrar
removeItem: Vagón borrado correctamente removeItem: Vagón borrado correctamente
create: create:
plate: Matrícula
volume: Volumen
type: Tipo
label: Etiqueta label: Etiqueta
warnings: warnings:
noData: Sin datos disponibles noData: Sin datos disponibles
@ -897,26 +674,16 @@ wagon:
supplier: supplier:
list: list:
payMethod: Método de pago payMethod: Método de pago
payDeadline: Plazo de pago
payDay: Día de pago
account: Cuenta account: Cuenta
newSupplier: Nuevo proveedor newSupplier: Nuevo proveedor
tableVisibleColumns: tableVisibleColumns:
id: Id
name: Nombre
nif: NIF/CIF nif: NIF/CIF
nickname: Alias
account: Cuenta account: Cuenta
payMethod: Método de pago
payDay: Dia de pago
country: País
summary: summary:
responsible: Responsable responsible: Responsable
notes: Notas
verified: Verificado verified: Verificado
isActive: Está activo isActive: Está activo
billingData: Forma de pago billingData: Forma de pago
payMethod: Método de pago
payDeadline: Plazo de pago payDeadline: Plazo de pago
payDay: Día de pago payDay: Día de pago
account: Cuenta account: Cuenta
@ -929,15 +696,11 @@ supplier:
fiscalAddress: Dirección fiscal fiscalAddress: Dirección fiscal
socialName: Razón social socialName: Razón social
taxNumber: NIF/CIF taxNumber: NIF/CIF
street: Dirección
city: Población city: Población
postCode: Código postal
province: Provincia province: Provincia
country: País
create: create:
supplierName: Nombre del proveedor supplierName: Nombre del proveedor
basicData: basicData:
alias: Alias
workerFk: Responsable workerFk: Responsable
isSerious: Verificado isSerious: Verificado
isActive: Activo isActive: Activo
@ -952,36 +715,17 @@ supplier:
sageWithholdingFk: Retención sage sageWithholdingFk: Retención sage
sageTransactionTypeFk: Tipo de transacción sage sageTransactionTypeFk: Tipo de transacción sage
supplierActivityFk: Actividad proveedor supplierActivityFk: Actividad proveedor
healthRegister: Pasaporte sanitario
street: Calle
postcode: Código postal
city: Población *
provinceFk: Provincia
country: País
isTrucker: Transportista isTrucker: Transportista
isVies: Vies isVies: Vies
billingData: billingData:
payMethodFk: Forma de pago payMethodFk: Forma de pago
payDemFk: Plazo de pago payDemFk: Plazo de pago
payDay: Día de pago
accounts: accounts:
iban: Iban iban: Iban
bankEntity: Entidad bancaria bankEntity: Entidad bancaria
beneficiary: Beneficiario beneficiary: Beneficiario
contacts: contacts:
name: Nombre
phone: Teléfono
mobile: Móvil
email: Email
observation: Notas observation: Notas
addresses:
street: Dirección
postcode: Código postal
phone: Teléfono
name: Nombre
city: Población
province: Provincia
mobile: Móvil
agencyTerms: agencyTerms:
agencyFk: Agencia agencyFk: Agencia
minimumM3: M3 mínimos minimumM3: M3 mínimos
@ -993,25 +737,16 @@ supplier:
addRow: Añadir fila addRow: Añadir fila
consumption: consumption:
entry: Entrada entry: Entrada
date: Fecha
reference: Referencia
travel: travel:
travelList: travelList:
tableVisibleColumns: tableVisibleColumns:
id: Id
ref: Referencia ref: Referencia
agency: Agencia
shipped: F.envío
shipHour: Hora de envío shipHour: Hora de envío
landHour: Hora de llegada landHour: Hora de llegada
landed: F.entrega
warehouseIn: Alm.salida
warehouseOut: Alm.entrada
totalEntries: totalEntries:
totalEntriesTooltip: Entradas totales totalEntriesTooltip: Entradas totales
daysOnward: Días de llegada en adelante daysOnward: Días de llegada en adelante
summary: summary:
confirmed: Confirmado
entryId: Id entrada entryId: Id entrada
freight: Porte freight: Porte
package: Embalaje package: Embalaje
@ -1024,62 +759,88 @@ travel:
AddEntry: Añadir entrada AddEntry: Añadir entrada
thermographs: Termógrafos thermographs: Termógrafos
hb: HB hb: HB
variables:
search: Id/Referencia
agencyModeFk: Agencia
warehouseInFk: Alm. entrada
warehouseOutFk: ' Alm. salida'
landedFrom: Llegada desde
landedTo: Llegada hasta
continent: Cont. Salida
totalEntries: Ent. totales
basicData: basicData:
reference: Referencia
agency: Agencia
shipped: F. Envío
landed: F. entrega
warehouseOut: Alm. salida
warehouseIn: Alm. entrada
delivered: Enviada
received: Recibida
daysInForward: Días redada daysInForward: Días redada
thermographs: thermographs:
code: Código
temperature: Temperatura temperature: Temperatura
state: Estado
destination: Destino destination: Destino
created: Fecha creación
thermograph: Termógrafo thermograph: Termógrafo
reference: Referencia
type: Tipo
company: Empresa
warehouse: Almacén
travelFileDescription: 'Id envío { travelId }' travelFileDescription: 'Id envío { travelId }'
file: Fichero item:
descriptor:
buyer: Comprador
color: Color
category: Categoría
available: Disponible
warehouseText: 'Calculado sobre el almacén de { warehouseName }'
itemDiary: Registro de compra-venta
list:
id: Identificador
stems: Tallos
category: Reino
typeName: Tipo
isActive: Activo
weightByPiece: Peso (gramos)/tallo
userName: Comprador
stemMultiplier: Multiplicador
fixedPrice:
itemFk: ID Artículo
groupingPrice: Precio grouping
packingPrice: Precio packing
hasMinPrice: Tiene precio mínimo
minPrice: Precio min
started: Inicio
ended: Fin
create:
priority: Prioridad
summary:
otherData: Otros datos
tax: IVA
botanical: Botánico
barcode: Código de barras
completeName: Nombre completo
family: Familia
stems: Tallos
multiplier: Multiplicador
buyer: Comprador
doPhoto: Hacer foto
intrastatCode: Código intrastat
ref: Referencia
relevance: Relevancia
weight: Peso (gramos)/tallo
units: Unidades/caja
expense: Gasto
generic: Genérico
recycledPlastic: Plástico reciclado
nonRecycledPlastic: Plástico no reciclado
minSalesQuantity: Cantidad mínima de venta
genus: Genus
specie: Specie
buyRequest:
requester: Solicitante
requested: Solicitado
attender: Comprador
achieved: Conseguido
concept: Concepto
components: components:
topbar: {} topbar: {}
itemsFilterPanel: itemsFilterPanel:
typeFk: Tipo typeFk: Tipo
tag: Etiqueta
value: Valor value: Valor
# ItemFixedPriceFilter # ItemFixedPriceFilter
buyerFk: Comprador buyerFk: Comprador
warehouseFk: Almacén
started: Desde started: Desde
ended: Hasta ended: Hasta
mine: Para mi mine: Para mi
hasMinPrice: Precio mínimo hasMinPrice: Precio mínimo
# LatestBuysFilter # LatestBuysFilter
salesPersonFk: Comprador salesPersonFk: Comprador
supplierFk: Proveedor
active: Activo active: Activo
visible: Visible
floramondo: Floramondo floramondo: Floramondo
showBadDates: Ver items a futuro showBadDates: Ver items a futuro
userPanel: userPanel:
copyToken: Token copiado al portapapeles copyToken: Token copiado al portapapeles
settings: Configuración settings: Configuración
logOut: Cerrar sesión
localWarehouse: Almacén local localWarehouse: Almacén local
localBank: Banco local localBank: Banco local
localCompany: Empresa local localCompany: Empresa local
@ -1087,7 +848,6 @@ components:
userCompany: Empresa del usuario userCompany: Empresa del usuario
smartCard: smartCard:
downloadFile: Descargar archivo downloadFile: Descargar archivo
clone: Clonar
openCard: Ficha openCard: Ficha
openSummary: Detalles openSummary: Detalles
viewSummary: Vista previa viewSummary: Vista previa

View File

@ -37,7 +37,7 @@ const redirectToAccountBasicData = (_, { id }) => {
<div class="column q-gutter-sm"> <div class="column q-gutter-sm">
<VnInput <VnInput
v-model="data.name" v-model="data.name"
:label="t('account.create.name')" :label="t('globals.name')"
:rules="validate('VnUser.name')" :rules="validate('VnUser.name')"
/> />
<VnInput <VnInput
@ -47,12 +47,12 @@ const redirectToAccountBasicData = (_, { id }) => {
/> />
<VnInput <VnInput
v-model="data.email" v-model="data.email"
:label="t('account.create.email')" :label="t('globals.params.email')"
type="email" type="email"
:rules="validate('VnUser.email')" :rules="validate('VnUser.email')"
/> />
<VnSelect <VnSelect
:label="t('account.create.role')" :label="t('account.card.role')"
v-model="data.roleFk" v-model="data.roleFk"
:options="rolesOptions" :options="rolesOptions"
option-value="id" option-value="id"
@ -63,7 +63,7 @@ const redirectToAccountBasicData = (_, { id }) => {
/> />
<VnInput <VnInput
v-model="data.password" v-model="data.password"
:label="t('account.create.password')" :label="t('ldap.password')"
type="password" type="password"
:rules="validate('VnUser.password')" :rules="validate('VnUser.password')"
/> />

View File

@ -45,7 +45,7 @@ const rolesOptions = ref([]);
<QItem class="q-my-sm"> <QItem class="q-my-sm">
<QItemSection> <QItemSection>
<VnInput <VnInput
:label="t('account.card.name')" :label="t('globals.name')"
v-model="params.name" v-model="params.name"
lazy-rules lazy-rules
is-outlined is-outlined

View File

@ -102,11 +102,11 @@ onMounted(async () => await getInitialLdapConfig());
<QBtn <QBtn
class="q-ml-none" class="q-ml-none"
color="primary" color="primary"
:label="t('ldap.testConnection')" :label="t('account.card.testConnection')"
@click="onTestConection()" @click="onTestConection()"
> >
<QTooltip> <QTooltip>
{{ t('ldap.testConnection') }} {{ t('account.card.testConnection') }}
</QTooltip> </QTooltip>
</QBtn> </QBtn>
</template> </template>
@ -114,7 +114,7 @@ onMounted(async () => await getInitialLdapConfig());
<VnRow class="row q-gutter-md"> <VnRow class="row q-gutter-md">
<div class="col"> <div class="col">
<QCheckbox <QCheckbox
:label="t('ldap.enableSync')" :label="t('account.card.enableSync')"
v-model="data.hasData" v-model="data.hasData"
@update:model-value="($event) => (hasData = $event)" @update:model-value="($event) => (hasData = $event)"
:toggle-indeterminate="false" :toggle-indeterminate="false"
@ -146,7 +146,7 @@ onMounted(async () => await getInitialLdapConfig());
/> />
<VnInput :label="t('ldap.userDN')" clearable v-model="data.userDn" /> <VnInput :label="t('ldap.userDN')" clearable v-model="data.userDn" />
<VnInput <VnInput
:label="t('ldap.groupDN')" :label="t('account.card.groupDN')"
clearable clearable
v-model="data.groupDn" v-model="data.groupDn"
/> />

View File

@ -110,12 +110,12 @@ onMounted(async () => await getInitialSambaConfig());
<QBtn <QBtn
class="q-ml-none" class="q-ml-none"
color="primary" color="primary"
:label="t('samba.testConnection')" :label="t('account.card.testConnection')"
:disable="formModel.hasChanges" :disable="formModel.hasChanges"
@click="onTestConection()" @click="onTestConection()"
> >
<QTooltip> <QTooltip>
{{ t('samba.testConnection') }} {{ t('account.card.testConnection') }}
</QTooltip> </QTooltip>
</QBtn> </QBtn>
</template> </template>
@ -123,7 +123,7 @@ onMounted(async () => await getInitialSambaConfig());
<VnRow class="row q-gutter-md"> <VnRow class="row q-gutter-md">
<div class="col"> <div class="col">
<QCheckbox <QCheckbox
:label="t('samba.enableSync')" :label="t('account.card.enableSync')"
v-model="data.hasData" v-model="data.hasData"
@update:model-value="($event) => (hasData = $event)" @update:model-value="($event) => (hasData = $event)"
:toggle-indeterminate="false" :toggle-indeterminate="false"

View File

@ -36,15 +36,12 @@ const onDataSaved = ({ id }) => {
<template #form-inputs="{ data }"> <template #form-inputs="{ data }">
<VnRow> <VnRow>
<div class="col"> <div class="col">
<VnInput v-model="data.alias" :label="t('mailAlias.name')" /> <VnInput v-model="data.alias" :label="t('globals.name')" />
</div> </div>
</VnRow> </VnRow>
<VnRow> <VnRow>
<div class="col"> <div class="col">
<VnInput <VnInput v-model="data.description" :label="t('role.description')" />
v-model="data.description"
:label="t('mailAlias.description')"
/>
</div> </div>
</VnRow> </VnRow>
</template> </template>

View File

@ -11,8 +11,8 @@ const { t } = useI18n();
<FormModel model="Alias"> <FormModel model="Alias">
<template #form="{ data }"> <template #form="{ data }">
<div class="column q-gutter-y-md"> <div class="column q-gutter-y-md">
<VnInput v-model="data.alias" :label="t('mailAlias.name')" /> <VnInput v-model="data.alias" :label="t('globals.name')" />
<VnInput v-model="data.description" :label="t('mailAlias.description')" /> <VnInput v-model="data.description" :label="t('role.description')" />
<QCheckbox :label="t('mailAlias.isPublic')" v-model="data.isPublic" /> <QCheckbox :label="t('mailAlias.isPublic')" v-model="data.isPublic" />
</div> </div>
</template> </template>

View File

@ -71,7 +71,7 @@ const removeAlias = () => {
</QItem> </QItem>
</template> </template>
<template #body="{ entity }"> <template #body="{ entity }">
<VnLv :label="t('mailAlias.description')" :value="entity.description" /> <VnLv :label="t('role.description')" :value="entity.description" />
</template> </template>
</CardDescriptor> </CardDescriptor>
</template> </template>

View File

@ -42,8 +42,8 @@ const entityId = computed(() => $props.id || route.params.id);
<QIcon name="open_in_new" /> <QIcon name="open_in_new" />
</router-link> </router-link>
</QCardSection> </QCardSection>
<VnLv :label="t('mailAlias.id')" :value="alias.id" /> <VnLv :label="t('role.id')" :value="alias.id" />
<VnLv :label="t('mailAlias.description')" :value="alias.description" /> <VnLv :label="t('role.description')" :value="alias.description" />
</QCard> </QCard>
</template> </template>
</CardSummary> </CardSummary>

View File

@ -36,7 +36,7 @@ watch(
<div class="q-gutter-y-sm"> <div class="q-gutter-y-sm">
<VnInput v-model="data.name" :label="t('account.card.nickname')" /> <VnInput v-model="data.name" :label="t('account.card.nickname')" />
<VnInput v-model="data.nickname" :label="t('account.card.alias')" /> <VnInput v-model="data.nickname" :label="t('account.card.alias')" />
<VnInput v-model="data.email" :label="t('account.card.email')" /> <VnInput v-model="data.email" :label="t('globals.params.email')" />
<VnSelect <VnSelect
url="Languages" url="Languages"
v-model="data.lang" v-model="data.lang"

View File

@ -54,7 +54,7 @@ const hasAccount = ref(false);
</template> </template>
<template #before> <template #before>
<!-- falla id :id="entityId.value" collection="user" size="160x160" --> <!-- falla id :id="entityId.value" collection="user" size="160x160" -->
<VnImg :id="entityId" collection="user" resolution="160x160" class="photo"> <VnImg :id="entityId" collection="user" resolution="520x520" class="photo">
<template #error> <template #error>
<div <div
class="absolute-full picture text-center q-pa-md flex flex-center" class="absolute-full picture text-center q-pa-md flex flex-center"

View File

@ -29,7 +29,7 @@ const props = defineProps({
<QItem class="q-my-sm"> <QItem class="q-my-sm">
<QItemSection> <QItemSection>
<VnInput <VnInput
:label="t('role.name')" :label="t('globals.name')"
v-model="params.name" v-model="params.name"
lazy-rules lazy-rules
is-outlined is-outlined

View File

@ -12,15 +12,12 @@ const { t } = useI18n();
<template #form="{ data }"> <template #form="{ data }">
<VnRow> <VnRow>
<div class="col"> <div class="col">
<VnInput v-model="data.name" :label="t('role.card.name')" /> <VnInput v-model="data.name" :label="t('globals.name')" />
</div> </div>
</VnRow> </VnRow>
<VnRow> <VnRow>
<div class="col"> <div class="col">
<VnInput <VnInput v-model="data.description" :label="t('role.description')" />
v-model="data.description"
:label="t('role.card.description')"
/>
</div> </div>
</VnRow> </VnRow>
</template> </template>

View File

@ -58,7 +58,7 @@ const removeRole = async () => {
</QItem> </QItem>
</template> </template>
<template #body="{ entity }"> <template #body="{ entity }">
<VnLv :label="t('role.card.description')" :value="entity.description" /> <VnLv :label="t('role.description')" :value="entity.description" />
</template> </template>
</CardDescriptor> </CardDescriptor>
</template> </template>

View File

@ -22,15 +22,12 @@ const { t } = useI18n();
<template #form-inputs="{ data }"> <template #form-inputs="{ data }">
<VnRow> <VnRow>
<div class="col"> <div class="col">
<VnInput v-model="data.name" :label="t('role.card.name')" /> <VnInput v-model="data.name" :label="t('globals.name')" />
</div> </div>
</VnRow> </VnRow>
<VnRow> <VnRow>
<div class="col"> <div class="col">
<VnInput <VnInput v-model="data.description" :label="t('role.description')" />
v-model="data.description"
:label="t('role.card.description')"
/>
</div> </div>
</VnRow> </VnRow>
</template> </template>

View File

@ -44,9 +44,9 @@ const filter = {
<QIcon name="open_in_new" /> <QIcon name="open_in_new" />
</a> </a>
</QCardSection> </QCardSection>
<VnLv :label="t('role.card.id')" :value="role.id" /> <VnLv :label="t('role.id')" :value="role.id" />
<VnLv :label="t('role.card.name')" :value="role.name" /> <VnLv :label="t('globals.name')" :value="role.name" />
<VnLv :label="t('role.card.description')" :value="role.description" /> <VnLv :label="t('role.description')" :value="role.description" />
</QCard> </QCard>
</template> </template>
</CardSummary> </CardSummary>

View File

@ -1,32 +1,15 @@
account: account:
pageTitles:
users: Users
list: Users
roles: Roles
alias: Mail aliasses
accounts: Accounts
ldap: LDAP
samba: Samba
acls: ACLs
connections: Connections
inheritedRoles: Inherited Roles
subRoles: Sub Roles
newRole: New role
privileges: Privileges
mailAlias: Mail Alias
mailForwarding: Mail Forwarding
accountCreate: New user
aliasUsers: Users
card: card:
name: Name
nickname: User nickname: User
role: Role role: Role
email: Email
alias: Alias alias: Alias
lang: Language lang: Language
roleFk: Role roleFk: Role
newUser: New user newUser: New user
ticketTracking: Ticket tracking ticketTracking: Ticket tracking
enableSync: Habilitar sincronización
groupDN: DN grupos
testConnection: Probar conexión
privileges: privileges:
delegate: Can delegate privileges delegate: Can delegate privileges
enabled: Account enabled! enabled: Account enabled!
@ -74,11 +57,7 @@ account:
search: Search user search: Search user
searchInfo: You can search by id, name or nickname searchInfo: You can search by id, name or nickname
create: create:
name: Name
nickname: Nickname nickname: Nickname
email: Email
role: Role
password: Password
active: Active active: Active
mailForwarding: mailForwarding:
forwardingMail: Forward email forwardingMail: Forward email
@ -86,50 +65,30 @@ account:
enableMailForwarding: Enable mail forwarding enableMailForwarding: Enable mail forwarding
mailInputInfo: All emails will be forwarded to the specified address. mailInputInfo: All emails will be forwarded to the specified address.
role: role:
pageTitles:
inheritedRoles: Inherited Roles
subRoles: Sub Roles
card:
description: Description
id: Id
name: Name
newRole: New role newRole: New role
searchRoles: Search role searchRoles: Search role
searchInfo: Search role by id or name searchInfo: Search role by id or name
name: Name
description: Description description: Description
id: Id id: Id
mailAlias: mailAlias:
pageTitles:
aliasUsers: Users
search: Search mail alias search: Search mail alias
searchInfo: Search alias by id or name searchInfo: Search alias by id or name
alias: Alias
description: Description
id: Id
newAlias: New alias newAlias: New alias
name: Name
isPublic: Public isPublic: Public
ldap: ldap:
enableSync: Enable synchronization
server: Server server: Server
rdn: RDN rdn: RDN
userDN: User DN userDN: User DN
filter: Filter filter: Filter
groupDN: Group DN
testConnection: Test connection
success: LDAP connection established! success: LDAP connection established!
password: Password password: Password
samba: samba:
enableSync: Enable synchronization
domainController: Domain controller domainController: Domain controller
domainAD: AD domain domainAD: AD domain
userAD: AD user userAD: AD user
groupDN: Group DN
passwordAD: AD password passwordAD: AD password
domainPart: User DN (without domain part) domainPart: User DN (without domain part)
verifyCertificate: Verify certificate verifyCertificate: Verify certificate
testConnection: Test connection
success: Samba connection established! success: Samba connection established!
accounts: accounts:
homedir: Homedir base homedir: Homedir base
@ -147,8 +106,6 @@ connections:
created: Created created: Created
killSession: Kill session killSession: Kill session
acls: acls:
role: Role
accessType: Access type
permissions: Permission permissions: Permission
search: Search acls search: Search acls
searchInfo: Search acls by model name searchInfo: Search acls by model name

View File

@ -1,27 +1,7 @@
account: account:
pageTitles:
users: Usuarios
list: Usuarios
roles: Roles
alias: Alias de correo
accounts: Cuentas
ldap: LDAP
samba: Samba
acls: ACLs
connections: Conexiones
inheritedRoles: Roles heredados
newRole: Nuevo rol
subRoles: Subroles
privileges: Privilegios
mailAlias: Alias de correo
mailForwarding: Reenvío de correo
accountCreate: Nuevo usuario
aliasUsers: Usuarios
card: card:
nickname: Usuario nickname: Usuario
name: Nombre
role: Rol role: Rol
email: Mail
alias: Alias alias: Alias
lang: Idioma lang: Idioma
roleFk: Rol roleFk: Rol
@ -33,6 +13,9 @@ account:
deactivated: ¡Usuario desactivado! deactivated: ¡Usuario desactivado!
newUser: Nuevo usuario newUser: Nuevo usuario
twoFactor: Doble factor twoFactor: Doble factor
enableSync: Habilitar sincronización
groupDN: DN grupos
testConnection: Probar conexión
privileges: privileges:
delegate: Puede delegar privilegios delegate: Puede delegar privilegios
actions: actions:
@ -73,11 +56,7 @@ account:
search: Buscar usuario search: Buscar usuario
searchInfo: Puedes buscar por id, nombre o usuario searchInfo: Puedes buscar por id, nombre o usuario
create: create:
name: Nombre
nickname: Nombre mostrado nickname: Nombre mostrado
email: Email
role: Rol
password: Contraseña
active: Activo active: Activo
mailForwarding: mailForwarding:
forwardingMail: Dirección de reenvío forwardingMail: Dirección de reenvío
@ -85,51 +64,30 @@ account:
enableMailForwarding: Habilitar redirección de correo enableMailForwarding: Habilitar redirección de correo
mailInputInfo: Todos los correos serán reenviados a la dirección especificada, no se mantendrá copia de los mismos en el buzón del usuario. mailInputInfo: Todos los correos serán reenviados a la dirección especificada, no se mantendrá copia de los mismos en el buzón del usuario.
role: role:
pageTitles:
inheritedRoles: Roles heredados
subRoles: Subroles
newRole: Nuevo rol
card:
description: Descripción
id: Id
name: Nombre
newRole: Nuevo rol newRole: Nuevo rol
searchRoles: Buscar roles searchRoles: Buscar roles
searchInfo: Buscar rol por id o nombre searchInfo: Buscar rol por id o nombre
name: Nombre
description: Descripción description: Descripción
id: Id id: Id
mailAlias: mailAlias:
pageTitles:
aliasUsers: Usuarios
search: Buscar alias de correo search: Buscar alias de correo
searchInfo: Buscar alias por id o nombre searchInfo: Buscar alias por id o nombre
alias: Alias
description: Descripción
id: Id
newAlias: Nuevo alias newAlias: Nuevo alias
name: Nombre
isPublic: Público isPublic: Público
ldap: ldap:
password: Contraseña password: Contraseña
enableSync: Habilitar sincronización
server: Servidor server: Servidor
rdn: RDN rdn: RDN
userDN: DN usuarios userDN: DN usuarios
filter: Filtro filter: Filtro
groupDN: DN grupos
testConnection: Probar conexión
success: ¡Conexión con LDAP establecida! success: ¡Conexión con LDAP establecida!
samba: samba:
enableSync: Habilitar sincronización
domainController: Controlador de dominio domainController: Controlador de dominio
domainAD: Dominio AD domainAD: Dominio AD
groupDN: DN grupos
userAD: Usuario AD userAD: Usuario AD
passwordAD: Contraseña AD passwordAD: Contraseña AD
domainPart: DN usuarios (sin la parte del dominio) domainPart: DN usuarios (sin la parte del dominio)
verifyCertificate: Verificar certificado verifyCertificate: Verificar certificado
testConnection: Probar conexión
success: ¡Conexión con Samba establecida! success: ¡Conexión con Samba establecida!
accounts: accounts:
homedir: Directorio base para carpetas de usuario homedir: Directorio base para carpetas de usuario
@ -147,8 +105,6 @@ connections:
created: Creado created: Creado
killSession: Matar sesión killSession: Matar sesión
acls: acls:
role: Rol
accessType: Tipo de acceso
permissions: Permiso permissions: Permiso
search: Buscar acls search: Buscar acls
searchInfo: Buscar acls por nombre searchInfo: Buscar acls por nombre

View File

@ -55,7 +55,7 @@ const exprBuilder = (param, value) => {
/> />
<VnSelect <VnSelect
:input-debounce="0" :input-debounce="0"
:label="t('customer.basicData.businessType')" :label="t('customer.summary.businessType')"
:options="businessTypes" :options="businessTypes"
:rules="validate('client.businessTypeFk')" :rules="validate('client.businessTypeFk')"
emit-value emit-value
@ -67,13 +67,13 @@ const exprBuilder = (param, value) => {
</VnRow> </VnRow>
<VnRow> <VnRow>
<VnInput <VnInput
:label="t('customer.basicData.contact')" :label="t('customer.summary.contact')"
:rules="validate('client.contact')" :rules="validate('client.contact')"
clearable clearable
v-model="data.contact" v-model="data.contact"
/> />
<VnInput <VnInput
:label="t('customer.basicData.email')" :label="t('globals.params.email')"
:rules="validate('client.email')" :rules="validate('client.email')"
clearable clearable
type="email" type="email"
@ -90,13 +90,13 @@ const exprBuilder = (param, value) => {
</VnRow> </VnRow>
<VnRow> <VnRow>
<VnInput <VnInput
:label="t('customer.basicData.phone')" :label="t('customer.extendedList.tableVisibleColumns.phone')"
:rules="validate('client.phone')" :rules="validate('client.phone')"
clearable clearable
v-model="data.phone" v-model="data.phone"
/> />
<VnInput <VnInput
:label="t('customer.basicData.mobile')" :label="t('customer.summary.mobile')"
:rules="validate('client.mobile')" :rules="validate('client.mobile')"
clearable clearable
v-model="data.mobile" v-model="data.mobile"
@ -106,7 +106,7 @@ const exprBuilder = (param, value) => {
<VnSelect <VnSelect
url="Workers/search" url="Workers/search"
v-model="data.salesPersonFk" v-model="data.salesPersonFk"
:label="t('customer.basicData.salesPerson')" :label="t('customer.summary.salesPerson')"
:params="{ :params="{
departmentCodes: ['VT', 'shopping'], departmentCodes: ['VT', 'shopping'],
}" }"
@ -144,7 +144,7 @@ const exprBuilder = (param, value) => {
option-value="id" option-value="id"
option-label="name" option-label="name"
emit-value emit-value
:label="t('customer.basicData.contactChannel')" :label="t('customer.summary.contactChannel')"
map-options map-options
:rules="validate('client.contactChannelFk')" :rules="validate('client.contactChannelFk')"
:input-debounce="0" :input-debounce="0"

View File

@ -53,11 +53,17 @@ const setData = (entity) => (data.value = useCardDescription(entity?.name, entit
<CustomerDescriptorMenu :customer="entity" /> <CustomerDescriptorMenu :customer="entity" />
</template> </template>
<template #body="{ entity }"> <template #body="{ entity }">
<VnLv :label="t('customer.card.payMethod')" :value="entity.payMethod.name" />
<VnLv :label="t('customer.card.credit')" :value="toCurrency(entity.credit)" />
<VnLv <VnLv
:label="t('customer.card.securedCredit')" :label="t('customer.summary.payMethod')"
:value="entity.payMethod.name"
/>
<VnLv
:label="t('customer.summary.credit')"
:value="toCurrency(entity.credit)"
/>
<VnLv
:label="t('customer.summary.securedCredit')"
:value="toCurrency(entity.creditInsurance)" :value="toCurrency(entity.creditInsurance)"
/> />
@ -66,7 +72,7 @@ const setData = (entity) => (data.value = useCardDescription(entity?.name, entit
:value="toCurrency(entity.debt)" :value="toCurrency(entity.debt)"
:info="t('customer.summary.riskInfo')" :info="t('customer.summary.riskInfo')"
/> />
<VnLv :label="t('customer.card.salesPerson')"> <VnLv :label="t('customer.summary.salesPerson')">
<template #value> <template #value>
<VnUserLink <VnUserLink
v-if="entity.salesPersonUser" v-if="entity.salesPersonUser"
@ -77,7 +83,7 @@ const setData = (entity) => (data.value = useCardDescription(entity?.name, entit
</template> </template>
</VnLv> </VnLv>
<VnLv <VnLv
:label="t('customer.card.businessTypeFk')" :label="t('customer.extendedList.tableVisibleColumns.businessTypeFk')"
:value="entity.businessType.description" :value="entity.businessType.description"
/> />
</template> </template>

View File

@ -87,7 +87,7 @@ const sumRisk = ({ clientRisks }) => {
<VnLv :label="t('customer.summary.contact')" :value="entity.contact" /> <VnLv :label="t('customer.summary.contact')" :value="entity.contact" />
<VnLv :value="entity.phone"> <VnLv :value="entity.phone">
<template #label> <template #label>
{{ t('customer.summary.phone') }} {{ t('customer.extendedList.tableVisibleColumns.phone') }}
<VnLinkPhone :phone-number="entity.phone" /> <VnLinkPhone :phone-number="entity.phone" />
</template> </template>
</VnLv> </VnLv>
@ -105,7 +105,7 @@ const sumRisk = ({ clientRisks }) => {
</VnLv> </VnLv>
<VnLv :value="entity.email" copy <VnLv :value="entity.email" copy
><template #label> ><template #label>
{{ t('customer.summary.email') }} {{ t('globals.params.email') }}
<VnLinkMail email="entity.email"></VnLinkMail> </template <VnLinkMail email="entity.email"></VnLinkMail> </template
></VnLv> ></VnLv>
<VnLv <VnLv
@ -219,7 +219,7 @@ const sumRisk = ({ clientRisks }) => {
:value="entity.defaultAddress.city" :value="entity.defaultAddress.city"
/> />
<VnLv <VnLv
:label="t('customer.summary.addressStreet')" :label="t('customer.summary.street')"
:value="entity.defaultAddress.street" :value="entity.defaultAddress.street"
/> />
</QCard> </QCard>

View File

@ -34,7 +34,7 @@ defineProps({
<QItem class="q-mb-sm"> <QItem class="q-mb-sm">
<QItemSection> <QItemSection>
<VnInput <VnInput
:label="t('customerFilter.filter.name')" :label="t('globals.name')"
v-model="params.name" v-model="params.name"
is-outlined is-outlined
/> />
@ -43,7 +43,7 @@ defineProps({
<QItem class="q-mb-sm"> <QItem class="q-mb-sm">
<QItemSection> <QItemSection>
<VnInput <VnInput
:label="t('customerFilter.filter.socialName')" :label="t('customer.summary.socialName')"
v-model="params.socialName" v-model="params.socialName"
is-outlined is-outlined
/> />

View File

@ -77,7 +77,7 @@ const columns = computed(() => [
}, },
{ {
align: 'left', align: 'left',
label: t('customer.extendedList.tableVisibleColumns.credit'), label: t('customer.summary.credit'),
name: 'credit', name: 'credit',
columnFilter: { columnFilter: {
component: 'number', component: 'number',
@ -115,7 +115,7 @@ const columns = computed(() => [
}, },
{ {
align: 'left', align: 'left',
label: t('customer.extendedList.tableVisibleColumns.mobile'), label: t('customer.summary.mobile'),
name: 'mobile', name: 'mobile',
cardVisible: true, cardVisible: true,
columnFilter: { columnFilter: {
@ -162,17 +162,17 @@ const columns = computed(() => [
}, },
{ {
align: 'left', align: 'left',
label: t('customer.extendedList.tableVisibleColumns.city'), label: t('customer.summary.city'),
name: 'city', name: 'city',
}, },
{ {
align: 'left', align: 'left',
label: t('customer.extendedList.tableVisibleColumns.postcode'), label: t('customer.summary.postcode'),
name: 'postcode', name: 'postcode',
}, },
{ {
align: 'left', align: 'left',
label: t('customer.extendedList.tableVisibleColumns.email'), label: t('globals.params.email'),
name: 'email', name: 'email',
cardVisible: true, cardVisible: true,
}, },
@ -207,7 +207,7 @@ const columns = computed(() => [
}, },
{ {
align: 'left', align: 'left',
label: t('customer.extendedList.tableVisibleColumns.payMethodFk'), label: t('customer.summary.payMethodFk'),
name: 'payMethodFk', name: 'payMethodFk',
columnFilter: { columnFilter: {
component: 'select', component: 'select',
@ -250,7 +250,7 @@ const columns = computed(() => [
}, },
{ {
align: 'left', align: 'left',
label: t('customer.extendedList.tableVisibleColumns.isActive'), label: t('customer.summary.isActive'),
name: 'isActive', name: 'isActive',
chip: { chip: {
color: null, color: null,
@ -279,7 +279,7 @@ const columns = computed(() => [
}, },
{ {
align: 'left', align: 'left',
label: t('customer.extendedList.tableVisibleColumns.isEqualizated'), label: t('customer.summary.isEqualizated'),
name: 'isEqualizated', name: 'isEqualizated',
create: true, create: true,
columnFilter: { columnFilter: {
@ -325,7 +325,7 @@ const columns = computed(() => [
}, },
{ {
align: 'left', align: 'left',
label: t('customer.extendedList.tableVisibleColumns.hasLcr'), label: t('customer.summary.hasLcr'),
name: 'hasLcr', name: 'hasLcr',
columnFilter: { columnFilter: {
inWhere: true, inWhere: true,
@ -333,7 +333,7 @@ const columns = computed(() => [
}, },
{ {
align: 'left', align: 'left',
label: t('customer.extendedList.tableVisibleColumns.hasCoreVnl'), label: t('customer.summary.hasCoreVnl'),
name: 'hasCoreVnl', name: 'hasCoreVnl',
columnFilter: { columnFilter: {
inWhere: true, inWhere: true,
@ -424,7 +424,7 @@ function handleLocation(data, location) {
<VnSelect <VnSelect
url="Workers/search" url="Workers/search"
v-model="data.salesPersonFk" v-model="data.salesPersonFk"
:label="t('customer.basicData.salesPerson')" :label="t('customer.summary.salesPerson')"
:params="{ :params="{
departmentCodes: ['VT', 'shopping'], departmentCodes: ['VT', 'shopping'],
}" }"

View File

@ -1,21 +1,5 @@
customerFilter:
filter:
name: Name
socialName: Social name
customer: customer:
list:
phone: Phone
email: Email
customerOrders: Display customer orders
moreOptions: More options
card: card:
customerList: Customer list
customerId: Claim ID
salesPerson: Sales person
credit: Credit
risk: Risk
securedCredit: Secured credit
payMethod: Pay method
debt: Debt debt: Debt
isFrozen: Customer frozen isFrozen: Customer frozen
hasDebt: Customer has debt hasDebt: Customer has debt
@ -23,9 +7,7 @@ customer:
notChecked: Customer no checked notChecked: Customer no checked
webAccountInactive: Web account inactive webAccountInactive: Web account inactive
noWebAccess: Web access is disabled noWebAccess: Web access is disabled
businessType: Business type
passwordRequirements: 'The password must have at least { length } length characters, {nAlpha} alphabetic characters, {nUpper} capital letters, {nDigits} digits and {nPunct} symbols (Ex: $%&.)\n' passwordRequirements: 'The password must have at least { length } length characters, {nAlpha} alphabetic characters, {nUpper} capital letters, {nDigits} digits and {nPunct} symbols (Ex: $%&.)\n'
businessTypeFk: Business type
summary: summary:
basicData: Basic data basicData: Basic data
fiscalAddress: Fiscal address fiscalAddress: Fiscal address
@ -37,9 +19,7 @@ customer:
customerId: Customer ID customerId: Customer ID
name: Name name: Name
contact: Contact contact: Contact
phone: Phone
mobile: Mobile mobile: Mobile
email: Email
salesPerson: Sales person salesPerson: Sales person
contactChannel: Contact channel contactChannel: Contact channel
socialName: Social name socialName: Social name
@ -63,7 +43,6 @@ customer:
hasB2BVnl: Has B2B VNL hasB2BVnl: Has B2B VNL
addressName: Address name addressName: Address name
addressCity: City addressCity: City
addressStreet: Street
username: Username username: Username
webAccess: Web access webAccess: Web access
totalGreuge: Total greuge totalGreuge: Total greuge
@ -92,45 +71,27 @@ customer:
goToLines: Go to lines goToLines: Go to lines
basicData: basicData:
socialName: Fiscal name socialName: Fiscal name
businessType: Business type
contact: Contact
youCanSaveMultipleEmails: You can save multiple emails youCanSaveMultipleEmails: You can save multiple emails
email: Email
phone: Phone
mobile: Mobile
salesPerson: Sales person
contactChannel: Contact channel
previousClient: Previous client previousClient: Previous client
extendedList: extendedList:
tableVisibleColumns: tableVisibleColumns:
id: Identifier id: Identifier
name: Name
socialName: Social name socialName: Social name
fi: Tax number fi: Tax number
salesPersonFk: Salesperson salesPersonFk: Salesperson
credit: Credit
creditInsurance: Credit insurance creditInsurance: Credit insurance
phone: Phone phone: Phone
mobile: Mobile
street: Street street: Street
countryFk: Country countryFk: Country
provinceFk: Province provinceFk: Province
city: City
postcode: Postcode
email: Email
created: Created created: Created
businessTypeFk: Business type businessTypeFk: Business type
payMethodFk: Billing data
sageTaxTypeFk: Sage tax type sageTaxTypeFk: Sage tax type
sageTransactionTypeFk: Sage tr. type sageTransactionTypeFk: Sage tr. type
isActive: Active
isVies: Vies isVies: Vies
isTaxDataChecked: Verified data isTaxDataChecked: Verified data
isEqualizated: Is equalizated
isFreezed: Freezed isFreezed: Freezed
hasToInvoice: Invoice hasToInvoice: Invoice
hasToInvoiceByAddress: Invoice by address hasToInvoiceByAddress: Invoice by address
isToBeMailed: Mailing isToBeMailed: Mailing
hasLcr: Received LCR
hasCoreVnl: VNL core received
hasSepaVnl: VNL B2B received hasSepaVnl: VNL B2B received

View File

@ -1,22 +1,7 @@
Search customer: Buscar cliente Search customer: Buscar cliente
You can search by customer id or name: Puedes buscar por id o nombre del cliente You can search by customer id or name: Puedes buscar por id o nombre del cliente
customerFilter:
filter:
name: Nombre
socialName: Razón Social
customer: customer:
list:
phone: Teléfono
email: Email
customerOrders: Mostrar órdenes del cliente
moreOptions: Más opciones
card: card:
customerId: ID cliente
salesPerson: Comercial
credit: Crédito
risk: Riesgo
securedCredit: Crédito asegurado
payMethod: Método de pago
debt: Riesgo debt: Riesgo
isFrozen: Cliente congelado isFrozen: Cliente congelado
hasDebt: Cliente con riesgo hasDebt: Cliente con riesgo
@ -24,9 +9,7 @@ customer:
notChecked: Cliente no comprobado notChecked: Cliente no comprobado
webAccountInactive: Sin acceso web webAccountInactive: Sin acceso web
noWebAccess: El acceso web está desactivado noWebAccess: El acceso web está desactivado
businessType: Tipo de negocio
passwordRequirements: 'La contraseña debe tener al menos { length } caracteres de longitud, {nAlpha} caracteres alfabéticos, {nUpper} letras mayúsculas, {nDigits} dígitos y {nPunct} símbolos (Ej: $%&.)' passwordRequirements: 'La contraseña debe tener al menos { length } caracteres de longitud, {nAlpha} caracteres alfabéticos, {nUpper} letras mayúsculas, {nDigits} dígitos y {nPunct} símbolos (Ej: $%&.)'
businessTypeFk: Tipo de negocio
summary: summary:
basicData: Datos básicos basicData: Datos básicos
fiscalAddress: Dirección fiscal fiscalAddress: Dirección fiscal
@ -38,9 +21,7 @@ customer:
customerId: ID cliente customerId: ID cliente
name: Nombre name: Nombre
contact: Contacto contact: Contacto
phone: Teléfono
mobile: Móvil mobile: Móvil
email: Email
salesPerson: Comercial salesPerson: Comercial
contactChannel: Canal de contacto contactChannel: Canal de contacto
socialName: Razón social socialName: Razón social
@ -64,7 +45,6 @@ customer:
hasB2BVnl: Recibido B2B VNL hasB2BVnl: Recibido B2B VNL
addressName: Nombre de la dirección addressName: Nombre de la dirección
addressCity: Ciudad addressCity: Ciudad
addressStreet: Calle
username: Usuario username: Usuario
webAccess: Acceso web webAccess: Acceso web
totalGreuge: Greuge total totalGreuge: Greuge total
@ -93,45 +73,27 @@ customer:
goToLines: Ir a líneas goToLines: Ir a líneas
basicData: basicData:
socialName: Nombre fiscal socialName: Nombre fiscal
businessType: Tipo de negocio
contact: Contacto
youCanSaveMultipleEmails: Puede guardar varios correos electrónicos encadenándolos mediante comas sin espacios{','} ejemplo{':'} user{'@'}dominio{'.'}com, user2{'@'}dominio{'.'}com siendo el primer correo electrónico el principal youCanSaveMultipleEmails: Puede guardar varios correos electrónicos encadenándolos mediante comas sin espacios{','} ejemplo{':'} user{'@'}dominio{'.'}com, user2{'@'}dominio{'.'}com siendo el primer correo electrónico el principal
email: Email
phone: Teléfono
mobile: Móvil
salesPerson: Comercial
contactChannel: Canal de contacto
previousClient: Cliente anterior previousClient: Cliente anterior
extendedList: extendedList:
tableVisibleColumns: tableVisibleColumns:
id: Identificador id: Identificador
name: Nombre
socialName: Razón social socialName: Razón social
fi: NIF / CIF fi: NIF / CIF
salesPersonFk: Comercial salesPersonFk: Comercial
credit: Crédito
creditInsurance: Crédito asegurado creditInsurance: Crédito asegurado
phone: Teléfono phone: Teléfono
mobile: Móvil
street: Dirección fiscal street: Dirección fiscal
countryFk: País countryFk: País
provinceFk: Provincia provinceFk: Provincia
city: Población
postcode: Código postal
email: Email
created: Fecha creación created: Fecha creación
businessTypeFk: Tipo de negocio businessTypeFk: Tipo de negocio
payMethodFk: Forma de pago
sageTaxTypeFk: Tipo de impuesto Sage sageTaxTypeFk: Tipo de impuesto Sage
sageTransactionTypeFk: Tipo tr. sage sageTransactionTypeFk: Tipo tr. sage
isActive: Activo
isVies: Vies isVies: Vies
isTaxDataChecked: Datos comprobados isTaxDataChecked: Datos comprobados
isEqualizated: Recargo de equivalencias
isFreezed: Congelado isFreezed: Congelado
hasToInvoice: Factura hasToInvoice: Factura
hasToInvoiceByAddress: Factura por consigna hasToInvoiceByAddress: Factura por consigna
isToBeMailed: Env. emails isToBeMailed: Env. emails
hasLcr: Recibido LCR
hasCoreVnl: Recibido core VNL
hasSepaVnl: Recibido B2B VNL hasSepaVnl: Recibido B2B VNL

View File

@ -20,16 +20,16 @@ const { t } = useI18n();
<template #form="{ data, validate }"> <template #form="{ data, validate }">
<VnRow> <VnRow>
<VnInput <VnInput
:label="t('department.name')" :label="t('globals.name')"
v-model="data.name" v-model="data.name"
:rules="validate('department.name')" :rules="validate('globals.name')"
clearable clearable
autofocus autofocus
/> />
<VnInput <VnInput
v-model="data.code" v-model="data.code"
:label="t('department.code')" :label="t('globals.code')"
:rules="validate('department.code')" :rules="validate('globals.code')"
clearable clearable
/> />
</VnRow> </VnRow>
@ -42,8 +42,8 @@ const { t } = useI18n();
/> />
<VnInput <VnInput
v-model="data.notificationEmail" v-model="data.notificationEmail"
:label="t('department.email')" :label="t('globals.params.email')"
:rules="validate('department.email')" :rules="validate('globals.params.email')"
clearable clearable
/> />
</VnRow> </VnRow>

View File

@ -45,16 +45,8 @@ onMounted(async () => {
/> />
<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%">
<VnLv <VnLv :label="t('globals.name')" :value="department.name" dash />
:label="t('department.name')" <VnLv :label="t('globals.code')" :value="department.code" dash />
:value="department.name"
dash
/>
<VnLv
:label="t('department.code')"
:value="department.code"
dash
/>
<VnLv <VnLv
:label="t('department.chat')" :label="t('department.chat')"
:value="department.chatName" :value="department.chatName"

View File

@ -52,7 +52,7 @@ const onFilterTravelSelected = (formData, id) => {
<template #form="{ data }"> <template #form="{ data }">
<VnRow> <VnRow>
<VnSelect <VnSelect
:label="t('entry.basicData.supplier')" :label="t('globals.supplier')"
v-model="data.supplierFk" v-model="data.supplierFk"
url="Suppliers" url="Suppliers"
option-value="id" option-value="id"
@ -107,18 +107,15 @@ const onFilterTravelSelected = (formData, id) => {
</VnSelectDialog> </VnSelectDialog>
</VnRow> </VnRow>
<VnRow> <VnRow>
<VnInput <VnInput v-model="data.reference" :label="t('globals.reference')" />
v-model="data.reference"
:label="t('entry.basicData.reference')"
/>
</VnRow> </VnRow>
<VnRow> <VnRow>
<VnInput <VnInput
v-model="data.invoiceNumber" v-model="data.invoiceNumber"
:label="t('entry.basicData.invoiceNumber')" :label="t('entry.summary.invoiceNumber')"
/> />
<VnSelect <VnSelect
:label="t('entry.basicData.company')" :label="t('globals.company')"
v-model="data.companyFk" v-model="data.companyFk"
:options="companiesOptions" :options="companiesOptions"
option-value="id" option-value="id"
@ -130,14 +127,14 @@ const onFilterTravelSelected = (formData, id) => {
</VnRow> </VnRow>
<VnRow> <VnRow>
<VnSelect <VnSelect
:label="t('entry.basicData.currency')" :label="t('entry.summary.currency')"
v-model="data.currencyFk" v-model="data.currencyFk"
:options="currenciesOptions" :options="currenciesOptions"
option-value="id" option-value="id"
option-label="code" option-label="code"
/> />
<QInput <QInput
:label="t('entry.basicData.commission')" :label="t('entry.summary.commission')"
v-model="data.commission" v-model="data.commission"
type="number" type="number"
autofocus autofocus
@ -155,17 +152,11 @@ const onFilterTravelSelected = (formData, id) => {
/> />
</VnRow> </VnRow>
<VnRow> <VnRow>
<QCheckbox <QCheckbox v-model="data.isOrdered" :label="t('entry.summary.ordered')" />
v-model="data.isOrdered" <QCheckbox v-model="data.isConfirmed" :label="t('globals.confirmed')" />
:label="t('entry.basicData.ordered')"
/>
<QCheckbox
v-model="data.isConfirmed"
:label="t('entry.basicData.confirmed')"
/>
<QCheckbox <QCheckbox
v-model="data.isExcludedFromAvailable" v-model="data.isExcludedFromAvailable"
:label="t('entry.basicData.excludedFromAvailable')" :label="t('entry.summary.excludedFromAvailable')"
/> />
<QCheckbox <QCheckbox
v-if="isAdministrative()" v-if="isAdministrative()"

View File

@ -5,7 +5,6 @@ import { useI18n } from 'vue-i18n';
import { QBtn } from 'quasar'; import { QBtn } from 'quasar';
import VnPaginate from 'src/components/ui/VnPaginate.vue'; import VnPaginate from 'src/components/ui/VnPaginate.vue';
import FetchData from 'src/components/FetchData.vue';
import VnSelect from 'components/common/VnSelect.vue'; import VnSelect from 'components/common/VnSelect.vue';
import VnInput from 'src/components/common/VnInput.vue'; import VnInput from 'src/components/common/VnInput.vue';
import FetchedTags from 'components/ui/FetchedTags.vue'; import FetchedTags from 'components/ui/FetchedTags.vue';
@ -157,13 +156,13 @@ const tableColumnComponents = computed(() => ({
const entriesTableColumns = computed(() => { const entriesTableColumns = computed(() => {
return [ return [
{ {
label: t('entry.summary.item'), label: t('globals.item'),
field: 'itemFk', field: 'itemFk',
name: 'item', name: 'item',
align: 'left', align: 'left',
}, },
{ {
label: t('entry.summary.quantity'), label: t('globals.quantity'),
field: 'quantity', field: 'quantity',
name: 'quantity', name: 'quantity',
align: 'left', align: 'left',
@ -187,7 +186,7 @@ const entriesTableColumns = computed(() => {
align: 'left', align: 'left',
}, },
{ {
label: t('entry.summary.weight'), label: t('globals.weight'),
field: 'weight', field: 'weight',
name: 'weight', name: 'weight',
align: 'left', align: 'left',
@ -212,13 +211,13 @@ const entriesTableColumns = computed(() => {
format: (value) => toCurrency(value), format: (value) => toCurrency(value),
}, },
{ {
label: t('entry.buys.groupingPrice'), label: t('item.fixedPrice.groupingPrice'),
field: 'price2', field: 'price2',
name: 'price2', name: 'price2',
align: 'left', align: 'left',
}, },
{ {
label: t('entry.buys.packingPrice'), label: t('item.fixedPrice.packingPrice'),
field: 'price3', field: 'price3',
name: 'price3', name: 'price3',
align: 'left', align: 'left',

View File

@ -35,7 +35,7 @@ const packagingsOptions = ref([]);
const columns = computed(() => [ const columns = computed(() => [
{ {
label: t('entry.buys.item'), label: t('globals.item'),
name: 'item', name: 'item',
field: 'itemFk', field: 'itemFk',
options: lastItemBuysOptions.value, options: lastItemBuysOptions.value,
@ -56,19 +56,19 @@ const columns = computed(() => [
align: 'left', align: 'left',
}, },
{ {
label: t('entry.buys.packing'), label: t('entry.summary.packing'),
name: 'packing', name: 'packing',
field: 'packing', field: 'packing',
align: 'left', align: 'left',
}, },
{ {
label: t('entry.buys.grouping'), label: t('entry.summary.grouping'),
name: 'grouping', name: 'grouping',
field: 'grouping', field: 'grouping',
align: 'left', align: 'left',
}, },
{ {
label: t('entry.buys.buyingValue'), label: t('entry.summary.buyingValue'),
name: 'buyingValue', name: 'buyingValue',
field: 'buyingValue', field: 'buyingValue',
align: 'left', align: 'left',
@ -200,7 +200,7 @@ const redirectToBuysView = () => {
<VnRow> <VnRow>
<QFile <QFile
ref="inputFileRef" ref="inputFileRef"
:label="t('entry.buys.file')" :label="t('globals.file')"
v-model="importData.file" v-model="importData.file"
:multiple="false" :multiple="false"
accept=".json" accept=".json"
@ -220,10 +220,7 @@ const redirectToBuysView = () => {
</VnRow> </VnRow>
<div v-if="importData.file"> <div v-if="importData.file">
<VnRow> <VnRow>
<VnInput <VnInput :label="t('globals.reference')" v-model="importData.ref" />
:label="t('entry.buys.reference')"
v-model="importData.ref"
/>
</VnRow> </VnRow>
<VnRow> <VnRow>
<VnInput <VnInput

View File

@ -73,14 +73,11 @@ const showEntryReport = () => {
</QItem> </QItem>
</template> </template>
<template #body="{ entity }"> <template #body="{ entity }">
<VnLv <VnLv :label="t('globals.agency')" :value="entity.travel?.agency?.name" />
:label="t('entry.descriptor.agency')"
:value="entity.travel?.agency?.name"
/>
<VnLv :label="t('shipped')" :value="toDate(entity.travel?.shipped)" /> <VnLv :label="t('shipped')" :value="toDate(entity.travel?.shipped)" />
<VnLv :label="t('landed')" :value="toDate(entity.travel?.landed)" /> <VnLv :label="t('landed')" :value="toDate(entity.travel?.landed)" />
<VnLv <VnLv
:label="t('entry.descriptor.warehouseOut')" :label="t('globals.warehouseOut')"
:value="entity.travel?.warehouseOut?.name" :value="entity.travel?.warehouseOut?.name"
/> />
</template> </template>

View File

@ -84,7 +84,7 @@ const tableColumnComponents = {
const entriesTableColumns = computed(() => { const entriesTableColumns = computed(() => {
return [ return [
{ {
label: t('entry.summary.quantity'), label: t('globals.quantity'),
field: 'quantity', field: 'quantity',
name: 'quantity', name: 'quantity',
align: 'left', align: 'left',
@ -102,7 +102,7 @@ const entriesTableColumns = computed(() => {
align: 'left', align: 'left',
}, },
{ {
label: t('entry.summary.weight'), label: t('globals.weight'),
field: 'weight', field: 'weight',
name: 'weight', name: 'weight',
align: 'left', align: 'left',
@ -188,8 +188,8 @@ const fetchEntryBuys = async () => {
:label="t('entry.summary.currency')" :label="t('entry.summary.currency')"
:value="entry.currency?.name" :value="entry.currency?.name"
/> />
<VnLv :label="t('entry.summary.company')" :value="entry.company.code" /> <VnLv :label="t('globals.company')" :value="entry.company.code" />
<VnLv :label="t('entry.summary.reference')" :value="entry.reference" /> <VnLv :label="t('globals.reference')" :value="entry.reference" />
<VnLv <VnLv
:label="t('entry.summary.invoiceNumber')" :label="t('entry.summary.invoiceNumber')"
:value="entry.invoiceNumber" :value="entry.invoiceNumber"
@ -217,7 +217,7 @@ const fetchEntryBuys = async () => {
/> />
<VnLv :label="t('shipped')" :value="toDate(entry.travel.shipped)" /> <VnLv :label="t('shipped')" :value="toDate(entry.travel.shipped)" />
<VnLv <VnLv
:label="t('entry.summary.travelWarehouseOut')" :label="t('globals.warehouseOut')"
:value="entry.travel.warehouseOut?.name" :value="entry.travel.warehouseOut?.name"
/> />
<QCheckbox <QCheckbox
@ -227,7 +227,7 @@ const fetchEntryBuys = async () => {
/> />
<VnLv :label="t('landed')" :value="toDate(entry.travel.landed)" /> <VnLv :label="t('landed')" :value="toDate(entry.travel.landed)" />
<VnLv <VnLv
:label="t('entry.summary.travelWarehouseIn')" :label="t('globals.warehouseIn')"
:value="entry.travel.warehouseIn?.name" :value="entry.travel.warehouseIn?.name"
/> />
<QCheckbox <QCheckbox
@ -250,7 +250,7 @@ const fetchEntryBuys = async () => {
:disable="true" :disable="true"
/> />
<QCheckbox <QCheckbox
:label="t('entry.summary.confirmed')" :label="t('globals.confirmed')"
v-model="entry.isConfirmed" v-model="entry.isConfirmed"
:disable="true" :disable="true"
/> />

View File

@ -35,7 +35,7 @@ const entriesTableColumns = computed(() => [
{ {
align: 'left', align: 'left',
name: 'item', name: 'item',
label: t('entry.summary.item'), label: t('globals.item'),
field: (row) => row.item.name, field: (row) => row.item.name,
}, },
{ {

View File

@ -40,7 +40,7 @@ const columns = [
}, },
{ {
align: 'left', align: 'left',
label: t('entry.latestBuys.tableVisibleColumns.packing'), label: t('entry.summary.packing'),
name: 'packing', name: 'packing',
columnFilter: { columnFilter: {
component: 'number', component: 'number',
@ -49,7 +49,7 @@ const columns = [
}, },
{ {
align: 'left', align: 'left',
label: t('entry.latestBuys.tableVisibleColumns.grouping'), label: t('entry.summary.grouping'),
name: 'grouping', name: 'grouping',
columnFilter: { columnFilter: {
component: 'number', component: 'number',
@ -58,7 +58,7 @@ const columns = [
}, },
{ {
align: 'left', align: 'left',
label: t('entry.latestBuys.tableVisibleColumns.quantity'), label: t('globals.quantity'),
name: 'quantity', name: 'quantity',
columnFilter: { columnFilter: {
component: 'number', component: 'number',
@ -67,12 +67,12 @@ const columns = [
}, },
{ {
align: 'left', align: 'left',
label: t('entry.latestBuys.tableVisibleColumns.description'), label: t('globals.description'),
name: 'description', name: 'description',
}, },
{ {
align: 'left', align: 'left',
label: t('entry.latestBuys.tableVisibleColumns.size'), label: t('globals.size'),
name: 'size', name: 'size',
columnFilter: { columnFilter: {
component: 'number', component: 'number',
@ -81,27 +81,27 @@ const columns = [
}, },
{ {
align: 'left', align: 'left',
label: t('entry.latestBuys.tableVisibleColumns.tags'), label: t('globals.tags'),
name: 'tags', name: 'tags',
}, },
{ {
align: 'left', align: 'left',
label: t('entry.latestBuys.tableVisibleColumns.type'), label: t('globals.type'),
name: 'type', name: 'type',
}, },
{ {
align: 'left', align: 'left',
label: t('entry.latestBuys.tableVisibleColumns.intrastat'), label: t('globals.intrastat'),
name: 'intrastat', name: 'intrastat',
}, },
{ {
align: 'left', align: 'left',
label: t('entry.latestBuys.tableVisibleColumns.origin'), label: t('globals.origin'),
name: 'origin', name: 'origin',
}, },
{ {
align: 'left', align: 'left',
label: t('entry.latestBuys.tableVisibleColumns.weightByPiece'), label: t('globals.weightByPiece'),
name: 'weightByPiece', name: 'weightByPiece',
columnFilter: { columnFilter: {
component: 'number', component: 'number',
@ -129,7 +129,7 @@ const columns = [
}, },
{ {
align: 'left', align: 'left',
label: t('entry.latestBuys.tableVisibleColumns.buyingValue'), label: t('entry.summary.buyingValue'),
name: 'buyingValue', name: 'buyingValue',
columnFilter: { columnFilter: {
component: 'number', component: 'number',
@ -156,7 +156,7 @@ const columns = [
}, },
{ {
align: 'left', align: 'left',
label: t('entry.latestBuys.tableVisibleColumns.packageValue'), label: t('entry.buys.packageValue'),
name: 'packageValue', name: 'packageValue',
columnFilter: { columnFilter: {
component: 'number', component: 'number',
@ -202,7 +202,7 @@ const columns = [
}, },
{ {
align: 'left', align: 'left',
label: t('entry.latestBuys.tableVisibleColumns.weight'), label: t('globals.weight'),
name: 'weight', name: 'weight',
columnFilter: { columnFilter: {
component: 'number', component: 'number',
@ -211,7 +211,7 @@ const columns = [
}, },
{ {
align: 'left', align: 'left',
label: t('entry.latestBuys.tableVisibleColumns.packagingFk'), label: t('entry.buys.packagingFk'),
name: 'packagingFk', name: 'packagingFk',
columnFilter: { columnFilter: {
component: 'number', component: 'number',

View File

@ -47,14 +47,14 @@ const columns = computed(() => [
}, },
{ {
align: 'left', align: 'left',
label: t('entry.list.tableVisibleColumns.id'), label: t('globals.id'),
name: 'id', name: 'id',
isTitle: true, isTitle: true,
cardVisible: true, cardVisible: true,
}, },
{ {
align: 'left', align: 'left',
label: t('entry.list.tableVisibleColumns.reference'), label: t('globals.reference'),
name: 'reference', name: 'reference',
isTitle: true, isTitle: true,
component: 'input', component: 'input',

View File

@ -355,10 +355,10 @@ const createInvoiceInCorrection = async () => {
</QItem> </QItem>
</template> </template>
<template #body="{ entity }"> <template #body="{ entity }">
<VnLv :label="t('invoiceIn.card.issued')" :value="toDate(entity.issued)" /> <VnLv :label="t('invoiceIn.list.issued')" :value="toDate(entity.issued)" />
<VnLv :label="t('invoiceIn.summary.booked')" :value="toDate(entity.booked)" /> <VnLv :label="t('invoiceIn.summary.booked')" :value="toDate(entity.booked)" />
<VnLv :label="t('invoiceIn.card.amount')" :value="toCurrency(totalAmount)" /> <VnLv :label="t('invoiceIn.list.amount')" :value="toCurrency(totalAmount)" />
<VnLv :label="t('invoiceIn.summary.supplier')"> <VnLv :label="t('invoiceIn.list.supplier')">
<template #value> <template #value>
<span class="link"> <span class="link">
{{ entity?.supplier?.nickname }} {{ entity?.supplier?.nickname }}

View File

@ -95,7 +95,7 @@ const dueDayColumns = ref([
}, },
{ {
name: 'amount', name: 'amount',
label: 'invoiceIn.summary.amount', label: 'invoiceIn.list.amount',
field: (row) => row.amount, field: (row) => row.amount,
format: (value) => toCurrency(value), format: (value) => toCurrency(value),
sortable: true, sortable: true,
@ -123,7 +123,7 @@ const intrastatColumns = ref([
}, },
{ {
name: 'amount', name: 'amount',
label: 'invoiceIn.summary.amount', label: 'invoiceIn.list.amount',
field: (row) => toCurrency(row.amount), field: (row) => toCurrency(row.amount),
sortable: true, sortable: true,
align: 'left', align: 'left',
@ -210,7 +210,7 @@ const getLink = (param) => `#/invoice-in/${entityId.value}/${param}`;
/> />
</QCardSection> </QCardSection>
<VnLv <VnLv
:label="t('invoiceIn.summary.supplier')" :label="t('invoiceIn.list.supplier')"
:value="entity.supplier?.name" :value="entity.supplier?.name"
> >
<template #value> <template #value>
@ -221,7 +221,7 @@ const getLink = (param) => `#/invoice-in/${entityId.value}/${param}`;
</template> </template>
</VnLv> </VnLv>
<VnLv <VnLv
:label="t('invoiceIn.summary.supplierRef')" :label="t('invoiceIn.list.supplierRef')"
:value="entity.supplierRef" :value="entity.supplierRef"
/> />
<VnLv <VnLv
@ -271,7 +271,7 @@ const getLink = (param) => `#/invoice-in/${entityId.value}/${param}`;
:value="entity.expenseDeductible?.name" :value="entity.expenseDeductible?.name"
/> />
<VnLv <VnLv
:label="t('invoiceIn.summary.company')" :label="t('invoiceIn.card.company')"
:value="entity.company?.code" :value="entity.company?.code"
/> />
<VnLv :label="t('invoiceIn.isBooked')" :value="invoiceIn?.isBooked" /> <VnLv :label="t('invoiceIn.isBooked')" :value="invoiceIn?.isBooked" />

View File

@ -83,7 +83,7 @@ const redirectToInvoiceInBasicData = (__, { id }) => {
</template> </template>
</VnSelect> </VnSelect>
<VnInput <VnInput
:label="t('invoiceIn.summary.supplierRef')" :label="t('invoiceIn.list.supplierRef')"
v-model="data.supplierRef" v-model="data.supplierRef"
/> />
</VnRow> </VnRow>

View File

@ -50,7 +50,7 @@ const cols = computed(() => [
{ {
align: 'left', align: 'left',
name: 'serial', name: 'serial',
label: t('invoiceIn.list.serial'), label: t('invoiceIn.serial'),
}, },
{ {
align: 'left', align: 'left',
@ -151,7 +151,7 @@ const cols = computed(() => [
</template> </template>
</VnSelect> </VnSelect>
<VnInput <VnInput
:label="t('invoiceIn.summary.supplierRef')" :label="t('invoiceIn.list.supplierRef')"
v-model="data.supplierRef" v-model="data.supplierRef"
/> />
<VnSelect <VnSelect

View File

@ -5,14 +5,11 @@ invoiceIn:
ref: Reference ref: Reference
supplier: Supplier supplier: Supplier
supplierRef: Supplier ref. supplierRef: Supplier ref.
serial: Serial
file: File file: File
issued: Issued issued: Issued
awb: AWB awb: AWB
amount: Amount amount: Amount
card: card:
issued: Issued
amount: Amount
client: Client client: Client
company: Company company: Company
customerCard: Customer card customerCard: Customer card
@ -21,8 +18,6 @@ invoiceIn:
dueDay: Due day dueDay: Due day
intrastat: Intrastat intrastat: Intrastat
summary: summary:
supplier: Supplier
supplierRef: Supplier ref.
currency: Currency currency: Currency
issued: Expedition date issued: Expedition date
operated: Operation date operated: Operation date
@ -30,7 +25,6 @@ invoiceIn:
bookedDate: Booked date bookedDate: Booked date
sage: Sage withholding sage: Sage withholding
vat: Undeductible VAT vat: Undeductible VAT
company: Company
expense: Expense expense: Expense
taxableBase: Taxable base taxableBase: Taxable base
rate: Rate rate: Rate
@ -38,7 +32,6 @@ invoiceIn:
sageTransaction: Sage transaction sageTransaction: Sage transaction
dueDay: Date dueDay: Date
bank: Bank bank: Bank
amount: Amount
foreignValue: Foreign value foreignValue: Foreign value
dueTotal: Due day dueTotal: Due day
noMatch: Do not match noMatch: Do not match

View File

@ -11,8 +11,6 @@ invoiceIn:
awb: AWB awb: AWB
amount: Importe amount: Importe
card: card:
issued: Fecha emisión
amount: Importe
client: Cliente client: Cliente
company: Empresa company: Empresa
customerCard: Ficha del cliente customerCard: Ficha del cliente
@ -20,8 +18,6 @@ invoiceIn:
vat: Iva vat: Iva
dueDay: Fecha de vencimiento dueDay: Fecha de vencimiento
summary: summary:
supplier: Proveedor
supplierRef: Ref. proveedor
currency: Divisa currency: Divisa
docNumber: Número documento docNumber: Número documento
issued: Fecha de expedición issued: Fecha de expedición
@ -30,14 +26,12 @@ invoiceIn:
bookedDate: Fecha contable bookedDate: Fecha contable
sage: Retención sage sage: Retención sage
vat: Iva no deducible vat: Iva no deducible
company: Empresa
expense: Gasto expense: Gasto
taxableBase: Base imp. taxableBase: Base imp.
rate: Tasa rate: Tasa
sageTransaction: Sage transación sageTransaction: Sage transación
dueDay: Fecha dueDay: Fecha
bank: Caja bank: Caja
amount: Importe
foreignValue: Divisa foreignValue: Divisa
dueTotal: Vencimiento dueTotal: Vencimiento
code: Código code: Código

View File

@ -69,7 +69,7 @@ const setData = (entity) => (data.value = useCardDescription(entity.ref, entity.
<template #body="{ entity }"> <template #body="{ entity }">
<VnLv :label="t('invoiceOut.card.issued')" :value="toDate(entity.issued)" /> <VnLv :label="t('invoiceOut.card.issued')" :value="toDate(entity.issued)" />
<VnLv :label="t('globals.amount')" :value="toCurrency(entity.amount)" /> <VnLv :label="t('globals.amount')" :value="toCurrency(entity.amount)" />
<VnLv v-if="entity.client" :label="t('invoiceOut.card.client')"> <VnLv v-if="entity.client" :label="t('globals.client')">
<template #value> <template #value>
<span class="link"> <span class="link">
{{ entity.client.name }} {{ entity.client.name }}
@ -79,7 +79,7 @@ const setData = (entity) => (data.value = useCardDescription(entity.ref, entity.
</VnLv> </VnLv>
<VnLv <VnLv
v-if="entity.company" v-if="entity.company"
:label="t('invoiceOut.card.company')" :label="t('globals.company')"
:value="entity.company.code" :value="entity.company.code"
/> />
</template> </template>

View File

@ -42,7 +42,7 @@ function fetch() {
const taxColumns = ref([ const taxColumns = ref([
{ {
name: 'item', name: 'item',
label: 'invoiceOut.summary.type', label: 'globals.type',
field: (row) => row.name, field: (row) => row.name,
sortable: true, sortable: true,
}, },
@ -72,21 +72,21 @@ const taxColumns = ref([
const ticketsColumns = ref([ const ticketsColumns = ref([
{ {
name: 'item', name: 'item',
label: t('invoiceOut.summary.ticketId'), label: t('globals.ticketId'),
field: (row) => row.id, field: (row) => row.id,
sortable: true, sortable: true,
align: 'left', align: 'left',
}, },
{ {
name: 'nickname', name: 'nickname',
label: t('invoiceOut.summary.nickname'), label: t('globals.alias'),
field: (row) => row.nickname, field: (row) => row.nickname,
sortable: true, sortable: true,
align: 'left', align: 'left',
}, },
{ {
name: 'landed', name: 'landed',
label: t('invoiceOut.summary.shipped'), label: t('globals.shipped'),
field: (row) => row.shipped, field: (row) => row.shipped,
format: (value) => toDate(value), format: (value) => toDate(value),
sortable: true, sortable: true,
@ -124,18 +124,12 @@ const ticketsColumns = ref([
:label="t('invoiceOut.summary.dued')" :label="t('invoiceOut.summary.dued')"
:value="toDate(invoiceOut.dued)" :value="toDate(invoiceOut.dued)"
/> />
<VnLv <VnLv :label="t('globals.created')" :value="toDate(invoiceOut.created)" />
:label="t('invoiceOut.summary.created')"
:value="toDate(invoiceOut.created)"
/>
<VnLv <VnLv
:label="t('invoiceOut.summary.booked')" :label="t('invoiceOut.summary.booked')"
:value="toDate(invoiceOut.booked)" :value="toDate(invoiceOut.booked)"
/> />
<VnLv <VnLv :label="t('globals.company')" :value="invoiceOut.company.code" />
:label="t('invoiceOut.summary.company')"
:value="invoiceOut.company.code"
/>
</QCard> </QCard>
<QCard class="vn-three"> <QCard class="vn-three">
<VnTitle :text="t('invoiceOut.summary.taxBreakdown')" /> <VnTitle :text="t('invoiceOut.summary.taxBreakdown')" />

View File

@ -59,7 +59,7 @@ const columns = computed(() => [
field: 'clientId', field: 'clientId',
}, },
{ {
label: t('invoiceOut.globalInvoices.table.client'), label: t('globals.client'),
field: 'clientName', field: 'clientName',
name: 'clientName', name: 'clientName',
align: 'left', align: 'left',

View File

@ -33,7 +33,7 @@ const props = defineProps({
<QItemSection> <QItemSection>
<VnInputDate <VnInputDate
v-model="params.from" v-model="params.from"
:label="t('invoiceOut.negativeBases.from')" :label="t('globals.from')"
is-outlined is-outlined
/> />
</QItemSection> </QItemSection>
@ -42,7 +42,7 @@ const props = defineProps({
<QItemSection> <QItemSection>
<VnInputDate <VnInputDate
v-model="params.to" v-model="params.to"
:label="t('invoiceOut.negativeBases.to')" :label="t('globals.to')"
is-outlined is-outlined
/> />
</QItemSection> </QItemSection>
@ -51,7 +51,7 @@ const props = defineProps({
<QItemSection> <QItemSection>
<VnInput <VnInput
v-model="params.company" v-model="params.company"
:label="t('invoiceOut.negativeBases.company')" :label="t('globals.company')"
is-outlined is-outlined
/> />
</QItemSection> </QItemSection>
@ -60,7 +60,7 @@ const props = defineProps({
<QItemSection> <QItemSection>
<VnInput <VnInput
v-model="params.country" v-model="params.country"
:label="t('invoiceOut.negativeBases.country')" :label="t('globals.country')"
is-outlined is-outlined
/> />
</QItemSection> </QItemSection>
@ -79,7 +79,7 @@ const props = defineProps({
<QItemSection> <QItemSection>
<VnInput <VnInput
v-model="params.clientSocialName" v-model="params.clientSocialName"
:label="t('invoiceOut.negativeBases.client')" :label="t('globals.client')"
is-outlined is-outlined
/> />
</QItemSection> </QItemSection>
@ -88,7 +88,7 @@ const props = defineProps({
<QItemSection> <QItemSection>
<VnInputNumber <VnInputNumber
v-model="params.amount" v-model="params.amount"
:label="t('invoiceOut.negativeBases.amount')" :label="t('globals.amount')"
is-outlined is-outlined
/> />
</QItemSection> </QItemSection>

View File

@ -9,9 +9,6 @@ invoiceOutList:
id: ID id: ID
ref: Referencia ref: Referencia
issued: Fecha emisión issued: Fecha emisión
customer: Cliente
company: Empresa
amount: Importe
created: F. creación created: F. creación
dueDate: F. máxima dueDate: F. máxima
invoiceOutSerial: Serial invoiceOutSerial: Serial

View File

@ -42,7 +42,7 @@ onMounted(async () => {
:required="true" :required="true"
/> />
<VnInput <VnInput
:label="t('createIntrastatForm.description')" :label="t('itemBasicData.description')"
v-model="data.description" v-model="data.description"
:required="true" :required="true"
/> />

View File

@ -140,10 +140,7 @@ const openRegularizeStockForm = () => {
</span> </span>
</template> </template>
</VnLv> </VnLv>
<VnLv <VnLv :label="t('globals.producer')" :value="dashIfEmpty(entity.subName)" />
:label="t('item.descriptor.producer')"
:value="dashIfEmpty(entity.subName)"
/>
<VnLv <VnLv
v-if="entity.value5" v-if="entity.value5"
:label="t('item.descriptor.color')" :label="t('item.descriptor.color')"
@ -157,7 +154,7 @@ const openRegularizeStockForm = () => {
/> />
<VnLv <VnLv
v-if="entity.value7" v-if="entity.value7"
:label="t('item.descriptor.stems')" :label="t('item.list.stems')"
:value="entity.value7" :value="entity.value7"
/> />
</template> </template>

View File

@ -75,7 +75,7 @@ const handlePhotoUpdated = (evt = false) => {
<QIcon name="vn:item" /> <QIcon name="vn:item" />
</div> </div>
<div class="text-grey-5" style="opacity: 0.4"> <div class="text-grey-5" style="opacity: 0.4">
{{ t('item.descriptor.item') }} {{ t('globals.item') }}
</div> </div>
</div> </div>
</div> </div>
@ -107,7 +107,7 @@ const handlePhotoUpdated = (evt = false) => {
> >
<div class="col column items-center"> <div class="col column items-center">
<span class="text-uppercase color-vn-white" style="font-size: 11px"> <span class="text-uppercase color-vn-white" style="font-size: 11px">
{{ t('item.descriptor.visible') }} {{ t('globals.visible') }}
</span> </span>
<span class="text-weight-bold text-h5 color-vn-white">{{ visible }}</span> <span class="text-weight-bold text-h5 color-vn-white">{{ visible }}</span>
</div> </div>

View File

@ -90,7 +90,7 @@ const columns = computed(() => [
format: (val) => dashIfEmpty(val), format: (val) => dashIfEmpty(val),
}, },
{ {
label: t('itemDiary.reference'), label: t('itemBasicData.reference'),
field: 'reference', field: 'reference',
name: 'reference', name: 'reference',
align: 'left', align: 'left',

View File

@ -59,7 +59,7 @@ const columns = computed(() => [
align: 'center', align: 'center',
}, },
{ {
label: t('lastEntries.warehouse'), label: t('itemDiary.warehouse'),
name: 'warehouse', name: 'warehouse',
field: 'warehouse', field: 'warehouse',
align: 'left', align: 'left',
@ -94,7 +94,7 @@ const columns = computed(() => [
format: (val) => dashIfEmpty(val), format: (val) => dashIfEmpty(val),
}, },
{ {
label: t('lastEntries.packing'), label: t('shelvings.packing'),
name: 'packing', name: 'packing',
align: 'center', align: 'center',
}, },
@ -104,7 +104,7 @@ const columns = computed(() => [
align: 'center', align: 'center',
}, },
{ {
label: t('lastEntries.stems'), label: t('itemBasicData.stems'),
name: 'stems', name: 'stems',
field: 'stems', field: 'stems',
align: 'center', align: 'center',
@ -188,7 +188,7 @@ onUnmounted(() => (stateStore.rightDrawer = false));
<VnSubToolbar> <VnSubToolbar>
<template #st-data> <template #st-data>
<VnInputDate <VnInputDate
:label="t('lastEntries.since')" :label="t('itemDiary.since')"
dense dense
v-model="from" v-model="from"
class="q-mr-lg" class="q-mr-lg"

View File

@ -55,13 +55,13 @@ const getUrl = (id, param) => `#/Item/${id}/${param}`;
<QCard class="vn-one"> <QCard class="vn-one">
<VnTitle <VnTitle
:url="getUrl(entityId, 'basic-data')" :url="getUrl(entityId, 'basic-data')"
:text="t('item.summary.basicData')" :text="t('globals.summary.basicData')"
/> />
<VnLv :label="t('item.summary.name')" :value="item.name" /> <VnLv :label="t('globals.name')" :value="item.name" />
<VnLv :label="t('item.summary.completeName')" :value="item.longName" /> <VnLv :label="t('item.summary.completeName')" :value="item.longName" />
<VnLv :label="t('item.summary.family')" :value="item.itemType.name" /> <VnLv :label="t('item.summary.family')" :value="item.itemType.name" />
<VnLv :label="t('item.summary.size')" :value="item.size" /> <VnLv :label="t('globals.size')" :value="item.size" />
<VnLv :label="t('item.summary.origin')" :value="item.origin.name" /> <VnLv :label="t('globals.origin')" :value="item.origin.name" />
<VnLv :label="t('item.summary.stems')" :value="item.stems" /> <VnLv :label="t('item.summary.stems')" :value="item.stems" />
<VnLv <VnLv
:label="t('item.summary.multiplier')" :label="t('item.summary.multiplier')"
@ -96,7 +96,7 @@ const getUrl = (id, param) => `#/Item/${id}/${param}`;
:value="item.intrastat.id" :value="item.intrastat.id"
/> />
<VnLv <VnLv
:label="t('item.summary.intrastat')" :label="t('globals.intrastat')"
:value="item.intrastat.description" :value="item.intrastat.description"
/> />
<VnLv :label="t('item.summary.ref')" :value="item.comment" /> <VnLv :label="t('item.summary.ref')" :value="item.comment" />
@ -115,7 +115,7 @@ const getUrl = (id, param) => `#/Item/${id}/${param}`;
/> />
</QCard> </QCard>
<QCard class="vn-one"> <QCard class="vn-one">
<VnTitle :url="getUrl(entityId, 'tags')" :text="t('item.summary.tags')" /> <VnTitle :url="getUrl(entityId, 'tags')" :text="t('globals.tags')" />
<VnLv <VnLv
v-for="(tag, index) in tags" v-for="(tag, index) in tags"
:key="index" :key="index"
@ -126,7 +126,7 @@ const getUrl = (id, param) => `#/Item/${id}/${param}`;
<QCard class="vn-one" v-if="item.description"> <QCard class="vn-one" v-if="item.description">
<VnTitle <VnTitle
:url="getUrl(entityId, 'basic-data')" :url="getUrl(entityId, 'basic-data')"
:text="t('item.summary.description')" :text="t('globals.description')"
/> />
<p v-text="item.description" /> <p v-text="item.description" />
</QCard> </QCard>

View File

@ -151,7 +151,7 @@ const insertTag = (rows) => {
:is-clearable="false" :is-clearable="false"
/> />
<VnInput <VnInput
:label="t('itemTags.relevancy')" :label="t('itemBasicData.relevancy')"
type="number" type="number"
v-model="row.priority" v-model="row.priority"
:required="true" :required="true"

View File

@ -86,12 +86,9 @@ onBeforeMount(async () => {
> >
<template #form="{ data }"> <template #form="{ data }">
<VnRow> <VnRow>
<VnInput <VnInput v-model="data.provisionalName" :label="t('globals.name')" />
v-model="data.provisionalName"
:label="t('item.create.name')"
/>
<VnSelect <VnSelect
:label="t('item.create.tag')" :label="t('globals.tag')"
v-model="data.tag" v-model="data.tag"
:options="tagsOptions" :options="tagsOptions"
option-value="id" option-value="id"
@ -109,7 +106,7 @@ onBeforeMount(async () => {
</VnRow> </VnRow>
<VnRow> <VnRow>
<VnSelect <VnSelect
:label="t('item.create.type')" :label="t('globals.type')"
v-model="data.typeFk" v-model="data.typeFk"
:options="itemTypesOptions" :options="itemTypesOptions"
option-label="name" option-label="name"
@ -133,7 +130,7 @@ onBeforeMount(async () => {
</template> </template>
</VnSelect> </VnSelect>
<VnSelect <VnSelect
:label="t('item.create.intrastat')" :label="t('globals.intrastat')"
v-model="data.intrastatFk" v-model="data.intrastatFk"
:options="intrastatsOptions" :options="intrastatsOptions"
option-label="description" option-label="description"
@ -156,7 +153,7 @@ onBeforeMount(async () => {
</VnRow> </VnRow>
<VnRow> <VnRow>
<VnSelect <VnSelect
:label="t('item.create.origin')" :label="t('globals.origin')"
v-model="data.originFk" v-model="data.originFk"
:options="originsOptions" :options="originsOptions"
option-value="id" option-value="id"

View File

@ -132,7 +132,7 @@ const columns = computed(() => [
}, },
{ {
label: t('item.fixedPrice.warehouse'), label: t('globals.warehouse'),
field: 'warehouseFk', field: 'warehouseFk',
name: 'warehouseFk', name: 'warehouseFk',
...defaultColumnAttrs, ...defaultColumnAttrs,
@ -192,7 +192,7 @@ const editTableFieldsOptions = [
}, },
{ {
field: 'warehouseFk', field: 'warehouseFk',
label: t('item.fixedPrice.warehouse'), label: t('globals.warehouse'),
component: 'select', component: 'select',
attrs: { attrs: {
options: [], options: [],

View File

@ -80,7 +80,7 @@ const columns = computed(() => [
cardVisible: true, cardVisible: true,
}, },
{ {
label: t('item.list.grouping'), label: t('entry.summary.grouping'),
name: 'grouping', name: 'grouping',
align: 'left', align: 'left',
columnFilter: { columnFilter: {
@ -89,7 +89,7 @@ const columns = computed(() => [
}, },
}, },
{ {
label: t('item.list.packing'), label: t('entry.summary.packing'),
name: 'packing', name: 'packing',
align: 'left', align: 'left',
columnFilter: { columnFilter: {
@ -118,7 +118,7 @@ const columns = computed(() => [
cardVisible: true, cardVisible: true,
}, },
{ {
label: t('item.list.size'), label: t('globals.size'),
name: 'size', name: 'size',
align: 'left', align: 'left',
columnFilter: { columnFilter: {
@ -165,7 +165,7 @@ const columns = computed(() => [
}, },
}, },
{ {
label: t('item.list.intrastat'), label: t('globals.intrastat'),
name: 'intrastat', name: 'intrastat',
align: 'left', align: 'left',
component: 'select', component: 'select',
@ -184,7 +184,7 @@ const columns = computed(() => [
cardVisible: true, cardVisible: true,
}, },
{ {
label: t('item.list.origin'), label: t('globals.origin'),
name: 'origin', name: 'origin',
align: 'left', align: 'left',
component: 'select', component: 'select',
@ -258,7 +258,7 @@ const columns = computed(() => [
component: 'checkbox', component: 'checkbox',
}, },
{ {
label: t('item.list.producer'), label: t('globals.producer'),
name: 'producer', name: 'producer',
align: 'left', align: 'left',
component: 'select', component: 'select',
@ -275,7 +275,7 @@ const columns = computed(() => [
}, },
}, },
{ {
label: t('item.list.landed'), label: t('globals.landed'),
name: 'landed', name: 'landed',
align: 'left', align: 'left',
component: 'date', component: 'date',

View File

@ -40,7 +40,7 @@ watch(
const columns = computed(() => [ const columns = computed(() => [
{ {
label: t('item.buyRequest.ticketId'), label: t('globals.ticketId'),
name: 'ticketFk', name: 'ticketFk',
align: 'left', align: 'left',
isId: true, isId: true,
@ -50,7 +50,7 @@ const columns = computed(() => [
cardVisible: true, cardVisible: true,
}, },
{ {
label: t('item.buyRequest.shipped'), label: t('globals.shipped'),
name: 'shipped', name: 'shipped',
align: 'left', align: 'left',
component: 'date', component: 'date',
@ -90,7 +90,7 @@ const columns = computed(() => [
columnClass: 'shrink', columnClass: 'shrink',
}, },
{ {
label: t('item.buyRequest.price'), label: t('globals.price'),
name: 'price', name: 'price',
align: 'left', align: 'left',
format: (row) => toCurrency(row.price), format: (row) => toCurrency(row.price),
@ -115,7 +115,7 @@ const columns = computed(() => [
columnClass: 'shrink', columnClass: 'shrink',
}, },
{ {
label: t('item.buyRequest.item'), label: t('globals.item'),
name: 'item', name: 'item',
align: 'left', align: 'left',
component: 'input', component: 'input',
@ -137,7 +137,7 @@ const columns = computed(() => [
columnClass: 'expand', columnClass: 'expand',
}, },
{ {
label: t('item.buyRequest.state'), label: t('globals.state'),
name: 'state', name: 'state',
format: (row) => getState(row.isOk), format: (row) => getState(row.isOk),
align: 'left', align: 'left',

View File

@ -10,11 +10,6 @@ shared:
fragile: Frágil fragile: Frágil
summary: summary:
id: id id: id
code: Código
name: Nombre
worker: Trabajador
category: Reino
temperature: Temperatura
life: Vida life: Vida
promo: Promoción promo: Promoción
itemPackingType: Tipo de embalaje itemPackingType: Tipo de embalaje

View File

@ -16,7 +16,6 @@ itemDiary:
date: Date date: Date
origin: Origin origin: Origin
state: State state: State
reference: Reference
entity: Entity entity: Entity
in: In in: In
out: Out out: Out
@ -48,22 +47,17 @@ itemBasicData:
createIntrastatForm: createIntrastatForm:
title: New intrastat title: New intrastat
identifier: Identifier identifier: Identifier
description: Description
tax: tax:
country: Country country: Country
class: Class class: Class
lastEntries: lastEntries:
since: Since
to: To to: To
ig: Ig ig: Ig
warehouse: Warehouse
landed: Landed landed: Landed
entry: Entry entry: Entry
pvp: PVP pvp: PVP
label: Label label: Label
packing: Packing
grouping: Grouping grouping: Grouping
stems: Stems
quantity: Quantity quantity: Quantity
cost: Cost cost: Cost
kg: Kg. kg: Kg.
@ -77,7 +71,6 @@ itemTags:
addTag: Add tag addTag: Add tag
tag: Tag tag: Tag
value: Value value: Value
relevancy: Relevancy
searchbar: searchbar:
label: Search item label: Search item
info: Search by item id info: Search by item id

View File

@ -16,7 +16,6 @@ itemDiary:
date: Fecha date: Fecha
origin: Origen origin: Origen
state: Estado state: Estado
reference: Referencia
entity: Entidad entity: Entidad
in: Entrada in: Entrada
out: Salida out: Salida
@ -48,22 +47,17 @@ itemBasicData:
createIntrastatForm: createIntrastatForm:
title: Nuevo intrastat title: Nuevo intrastat
identifier: Identificador identifier: Identificador
description: Descripción
tax: tax:
country: País country: País
class: Clase class: Clase
lastEntries: lastEntries:
since: Desde
to: Hasta to: Hasta
ig: Ig ig: Ig
warehouse: Almacén
landed: F. Entrega landed: F. Entrega
entry: Entrada entry: Entrada
pvp: PVP pvp: PVP
label: Etiquetas label: Etiquetas
packing: Packing
grouping: Grouping grouping: Grouping
stems: Tallos
quantity: Cantidad quantity: Cantidad
cost: Coste cost: Coste
kg: Kg. kg: Kg.
@ -77,7 +71,6 @@ itemTags:
addTag: Añadir etiqueta addTag: Añadir etiqueta
tag: Etiqueta tag: Etiqueta
value: Valor value: Valor
relevancy: Relevancia
searchbar: searchbar:
label: Buscar artículo label: Buscar artículo
info: Buscar por id de artículo info: Buscar por id de artículo

View File

@ -44,7 +44,7 @@ const columns = computed(() => [
format: (row) => toDateTimeFormat(row.date_make), format: (row) => toDateTimeFormat(row.date_make),
}, },
{ {
label: t('salesOrdersTable.client'), label: t('salesClientsTable.client'),
name: 'clientFk', name: 'clientFk',
align: 'left', align: 'left',
columnFilter: { columnFilter: {
@ -63,7 +63,7 @@ const columns = computed(() => [
columnFilter: false, columnFilter: false,
}, },
{ {
label: t('salesOrdersTable.salesPerson'), label: t('salesClientsTable.salesPerson'),
name: 'salesPersonFk', name: 'salesPersonFk',
align: 'left', align: 'left',
optionFilter: 'firstName', optionFilter: 'firstName',

View File

@ -77,7 +77,7 @@ const columns = computed(() => [
}, },
}, },
{ {
label: t('salesTicketsTable.client'), label: t('salesClientsTable.client'),
name: 'clientFk', name: 'clientFk',
align: 'left', align: 'left',
field: 'nickname', field: 'nickname',
@ -91,7 +91,7 @@ const columns = computed(() => [
}, },
}, },
{ {
label: t('salesTicketsTable.salesPerson'), label: t('salesClientsTable.salesPerson'),
name: 'salesPersonFk', name: 'salesPersonFk',
field: 'userName', field: 'userName',
align: 'left', align: 'left',
@ -108,7 +108,7 @@ const columns = computed(() => [
}, },
}, },
{ {
label: t('salesTicketsTable.date'), label: t('salesClientsTable.date'),
name: 'shippedDate', name: 'shippedDate',
align: 'left', align: 'left',
columnFilter: { columnFilter: {

View File

@ -13,8 +13,6 @@ salesOrdersTable:
delete: Delete delete: Delete
dateSend: Send date dateSend: Send date
dateMake: Make date dateMake: Make date
client: Client
salesPerson: Salesperson
deleteConfirmMessage: All the selected elements will be deleted. Are you sure you want to continue? deleteConfirmMessage: All the selected elements will be deleted. Are you sure you want to continue?
agency: Agency agency: Agency
import: Import import: Import
@ -29,9 +27,6 @@ salesTicketsTable:
componentLack: Component lack componentLack: Component lack
tooLittle: Ticket too little tooLittle: Ticket too little
identifier: Identifier identifier: Identifier
client: Client
salesPerson: Salesperson
date: Date
theoretical: Theoretical theoretical: Theoretical
practical: Practical practical: Practical
province: Province province: Province

View File

@ -13,8 +13,6 @@ salesOrdersTable:
delete: Eliminar delete: Eliminar
dateSend: Fecha de envío dateSend: Fecha de envío
dateMake: Fecha de realización dateMake: Fecha de realización
client: Cliente
salesPerson: Comercial
deleteConfirmMessage: Todos los elementos seleccionados serán eliminados. ¿Seguro que quieres continuar? deleteConfirmMessage: Todos los elementos seleccionados serán eliminados. ¿Seguro que quieres continuar?
agency: Agencia agency: Agencia
import: Importe import: Importe
@ -29,9 +27,6 @@ salesTicketsTable:
componentLack: Faltan componentes componentLack: Faltan componentes
tooLittle: Ticket demasiado pequeño tooLittle: Ticket demasiado pequeño
identifier: Identificador identifier: Identificador
client: Cliente
salesPerson: Comercial
date: Fecha
theoretical: Teórica theoretical: Teórica
practical: Práctica practical: Práctica
province: Provincia province: Provincia

View File

@ -162,7 +162,7 @@ const onClientChange = async (clientId) => {
<VnRow> <VnRow>
<VnInputDate <VnInputDate
placeholder="dd-mm-aaa" placeholder="dd-mm-aaa"
:label="t('order.form.landed')" :label="t('globals.landed')"
v-model="data.landed" v-model="data.landed"
@update:model-value=" @update:model-value="
() => fetchAgencyList(data.landed, data.addressFk) () => fetchAgencyList(data.landed, data.addressFk)

View File

@ -185,7 +185,7 @@ onMounted(async () => {
<VnRow class="row q-gutter-md q-mb-md"> <VnRow class="row q-gutter-md q-mb-md">
<VnInputDate <VnInputDate
placeholder="dd-mm-aaa" placeholder="dd-mm-aaa"
:label="t('order.form.landed')" :label="t('globals.landed')"
v-model="data.landed" v-model="data.landed"
@update:model-value=" @update:model-value="
() => fetchAgencyList(data.landed, data.addressId) () => fetchAgencyList(data.landed, data.addressId)

View File

@ -67,7 +67,7 @@ const setData = (entity) => {
}; };
const getConfirmationValue = (isConfirmed) => { const getConfirmationValue = (isConfirmed) => {
return t(isConfirmed ? 'order.summary.confirmed' : 'order.summary.notConfirmed'); return t(isConfirmed ? 'globals.confirmed' : 'order.summary.notConfirmed');
}; };
const total = ref(null); const total = ref(null);
@ -94,7 +94,7 @@ const total = ref(null);
</template> </template>
<template #body="{ entity }"> <template #body="{ entity }">
<VnLv <VnLv
:label="t('order.summary.state')" :label="t('globals.state')"
:value="getConfirmationValue(entity.isConfirmed)" :value="getConfirmationValue(entity.isConfirmed)"
/> />
<VnLv :label="t('order.field.salesPersonFk')"> <VnLv :label="t('order.field.salesPersonFk')">
@ -105,9 +105,9 @@ const total = ref(null);
</span> </span>
</template> </template>
</VnLv> </VnLv>
<VnLv :label="t('order.summary.landed')" :value="toDate(entity?.landed)" /> <VnLv :label="t('globals.landed')" :value="toDate(entity?.landed)" />
<VnLv :label="t('order.field.agency')" :value="entity?.agencyMode?.name" /> <VnLv :label="t('globals.agency')" :value="entity?.agencyMode?.name" />
<VnLv :label="t('order.summary.alias')" :value="entity?.address?.nickname" /> <VnLv :label="t('globals.alias')" :value="entity?.address?.nickname" />
<VnLv <VnLv
:label="t('order.summary.items')" :label="t('order.summary.items')"
:value="(entity?.rows?.length || DEFAULT_ITEMS).toString()" :value="(entity?.rows?.length || DEFAULT_ITEMS).toString()"

View File

@ -30,7 +30,7 @@ const descriptorData = useArrayData('orderData');
const detailsColumns = ref([ const detailsColumns = ref([
{ {
name: 'item', name: 'item',
label: t('order.summary.item'), label: t('globals.item'),
field: (row) => row?.item?.id, field: (row) => row?.item?.id,
sortable: true, sortable: true,
}, },
@ -41,12 +41,12 @@ const detailsColumns = ref([
}, },
{ {
name: 'quantity', name: 'quantity',
label: t('order.summary.quantity'), label: t('globals.quantity'),
field: (row) => row?.quantity, field: (row) => row?.quantity,
}, },
{ {
name: 'price', name: 'price',
label: t('order.summary.price'), label: t('globals.price'),
field: (row) => toCurrency(row?.price), field: (row) => toCurrency(row?.price),
}, },
{ {
@ -98,7 +98,7 @@ async function handleConfirm() {
:text="t('globals.pageTitles.basicData')" :text="t('globals.pageTitles.basicData')"
/> />
<VnLv label="ID" :value="entity.id" /> <VnLv label="ID" :value="entity.id" />
<VnLv :label="t('order.summary.nickname')" dash> <VnLv :label="t('globals.alias')" dash>
<template #value> <template #value>
<span class="link"> <span class="link">
{{ dashIfEmpty(entity?.address?.nickname) }} {{ dashIfEmpty(entity?.address?.nickname) }}
@ -107,11 +107,11 @@ async function handleConfirm() {
</template> </template>
</VnLv> </VnLv>
<VnLv <VnLv
:label="t('order.summary.company')" :label="t('globals.company')"
:value="entity?.address?.companyFk" :value="entity?.address?.companyFk"
/> />
<VnLv <VnLv
:label="t('order.summary.confirmed')" :label="t('globals.confirmed')"
:value="Boolean(entity?.isConfirmed)" :value="Boolean(entity?.isConfirmed)"
/> />
</QCard> </QCard>
@ -125,14 +125,14 @@ async function handleConfirm() {
:value="toDateHourMinSec(entity?.created)" :value="toDateHourMinSec(entity?.created)"
/> />
<VnLv <VnLv
:label="t('order.summary.confirmed')" :label="t('globals.confirmed')"
:value="toDateHourMinSec(entity?.confirmed)" :value="toDateHourMinSec(entity?.confirmed)"
/> />
<VnLv <VnLv
:label="t('order.summary.landed')" :label="t('globals.landed')"
:value="toDateHourMinSec(entity?.landed)" :value="toDateHourMinSec(entity?.landed)"
/> />
<VnLv :label="t('order.summary.phone')"> <VnLv :label="t('globals.phone')">
<template #value> <template #value>
{{ dashIfEmpty(entity?.address?.phone) }} {{ dashIfEmpty(entity?.address?.phone) }}
<a <a
@ -164,7 +164,7 @@ async function handleConfirm() {
<VnTitle :text="t('order.summary.total')" /> <VnTitle :text="t('order.summary.total')" />
<VnLv> <VnLv>
<template #label> <template #label>
<span class="text-h6">{{ t('order.summary.subtotal') }}</span> <span class="text-h6">{{ t('globals.subtotal') }}</span>
</template> </template>
<template #value> <template #value>
<span class="text-h6">{{ <span class="text-h6">{{
@ -174,7 +174,7 @@ async function handleConfirm() {
</VnLv> </VnLv>
<VnLv> <VnLv>
<template #label> <template #label>
<span class="text-h6">{{ t('order.summary.vat') }}</span> <span class="text-h6">{{ t('globals.vat') }}</span>
</template> </template>
<template #value> <template #value>
<span class="text-h6">{{ toCurrency(entity?.VAT) }}</span> <span class="text-h6">{{ toCurrency(entity?.VAT) }}</span>
@ -190,14 +190,14 @@ async function handleConfirm() {
</VnLv> </VnLv>
</QCard> </QCard>
<QCard> <QCard>
<VnTitle :text="t('order.summary.details')" /> <VnTitle :text="t('globals.details')" />
<QTable :columns="detailsColumns" :rows="entity?.rows" flat> <QTable :columns="detailsColumns" :rows="entity?.rows" flat>
<template #header="props"> <template #header="props">
<QTr :props="props"> <QTr :props="props">
<QTh auto-width>{{ t('order.summary.item') }}</QTh> <QTh auto-width>{{ t('globals.item') }}</QTh>
<QTh>{{ t('globals.description') }}</QTh> <QTh>{{ t('globals.description') }}</QTh>
<QTh auto-width>{{ t('order.summary.quantity') }}</QTh> <QTh auto-width>{{ t('globals.quantity') }}</QTh>
<QTh auto-width>{{ t('order.summary.price') }}</QTh> <QTh auto-width>{{ t('globals.price') }}</QTh>
<QTh auto-width>{{ t('order.summary.amount') }}</QTh> <QTh auto-width>{{ t('order.summary.amount') }}</QTh>
</QTr> </QTr>
</template> </template>

View File

@ -53,9 +53,9 @@ const setData = (entity) => (data.value = useCardDescription(entity.code, entity
@on-fetch="setData" @on-fetch="setData"
> >
<template #body="{ entity }"> <template #body="{ entity }">
<VnLv :label="t('shelving.summary.code')" :value="entity.code" /> <VnLv :label="t('globals.code')" :value="entity.code" />
<VnLv :label="t('shelving.summary.parking')" :value="entity.parking?.code" /> <VnLv :label="t('shelving.list.parking')" :value="entity.parking?.code" />
<VnLv v-if="entity.worker" :label="t('shelving.summary.worker')"> <VnLv v-if="entity.worker" :label="t('globals.worker')">
<template #value> <template #value>
<VnUserLink <VnUserLink
:name="entity.worker?.user?.nickname" :name="entity.worker?.user?.nickname"

View File

@ -58,7 +58,7 @@ const onSave = (shelving, newShelving) => {
<VnRow> <VnRow>
<VnInput <VnInput
v-model="data.code" v-model="data.code"
:label="t('shelving.basicData.code')" :label="t('globals.code')"
:rules="validate('Shelving.code')" :rules="validate('Shelving.code')"
/> />
<VnSelect <VnSelect
@ -68,7 +68,7 @@ const onSave = (shelving, newShelving) => {
option-label="code" option-label="code"
:filter-options="['id', 'code']" :filter-options="['id', 'code']"
:fields="['id', 'code']" :fields="['id', 'code']"
:label="t('shelving.basicData.parking')" :label="t('shelving.list.parking')"
:rules="validate('Shelving.parkingFk')" :rules="validate('Shelving.parkingFk')"
/> />
</VnRow> </VnRow>
@ -76,12 +76,12 @@ const onSave = (shelving, newShelving) => {
<VnInput <VnInput
v-model="data.priority" v-model="data.priority"
type="number" type="number"
:label="t('shelving.basicData.priority')" :label="t('shelving.list.priority')"
:rules="validate('Shelving.priority')" :rules="validate('Shelving.priority')"
/> />
<QCheckbox <QCheckbox
v-model="data.isRecyclable" v-model="data.isRecyclable"
:label="t('shelving.basicData.recyclable')" :label="t('shelving.summary.recyclable')"
:rules="validate('Shelving.isRecyclable')" :rules="validate('Shelving.isRecyclable')"
/> />
</VnRow> </VnRow>

View File

@ -54,16 +54,13 @@ const filter = {
{{ t('globals.pageTitles.basicData') }} {{ t('globals.pageTitles.basicData') }}
<QIcon name="open_in_new" /> <QIcon name="open_in_new" />
</RouterLink> </RouterLink>
<VnLv :label="t('shelving.summary.code')" :value="entity.code" /> <VnLv :label="t('globals.code')" :value="entity.code" />
<VnLv <VnLv
:label="t('shelving.summary.parking')" :label="t('shelving.list.parking')"
:value="entity.parking?.code" :value="entity.parking?.code"
/> />
<VnLv <VnLv :label="t('shelving.list.priority')" :value="entity.priority" />
:label="t('shelving.summary.priority')" <VnLv v-if="entity.worker" :label="t('globals.worker')">
:value="entity.priority"
/>
<VnLv v-if="entity.worker" :label="t('shelving.summary.worker')">
<template #value> <template #value>
<VnUserLink <VnUserLink
:name="entity.worker?.user?.nickname" :name="entity.worker?.user?.nickname"

View File

@ -69,16 +69,13 @@ const redirectToUpdateView = (addressData) => {
@click="redirectToUpdateView(row)" @click="redirectToUpdateView(row)"
> >
<template #list-items> <template #list-items>
<VnLv :label="t('globals.street')" :value="row.street" />
<VnLv <VnLv
:label="t('supplier.addresses.street')" :label="t('globals.postcode')"
:value="row.street"
/>
<VnLv
:label="t('supplier.addresses.postcode')"
:value="`${row.postalCode} - ${row.city}, ${row.province.name}`" :value="`${row.postalCode} - ${row.city}, ${row.province.name}`"
/> />
<VnLv <VnLv
:label="t('supplier.addresses.phone')" :label="t('globals.phone')"
:value="`${row.phone}, ${row.mobile}`" :value="`${row.phone}, ${row.mobile}`"
/> />
</template> </template>

View File

@ -72,14 +72,8 @@ function handleLocation(data, location) {
> >
<template #form="{ data, validate }"> <template #form="{ data, validate }">
<VnRow> <VnRow>
<VnInput <VnInput v-model="data.nickname" :label="t('globals.name')" />
v-model="data.nickname" <VnInput v-model="data.street" :label="t('globals.street')" />
:label="t('supplier.addresses.name')"
/>
<VnInput
v-model="data.street"
:label="t('supplier.addresses.street')"
/>
</VnRow> </VnRow>
<VnRow> <VnRow>
<VnLocation <VnLocation
@ -101,14 +95,8 @@ function handleLocation(data, location) {
</VnLocation> </VnLocation>
</VnRow> </VnRow>
<VnRow> <VnRow>
<VnInput <VnInput v-model="data.phone" :label="t('globals.phone')" />
v-model="data.phone" <VnInput v-model="data.mobile" :label="t('globals.mobile')" />
:label="t('supplier.addresses.phone')"
/>
<VnInput
v-model="data.mobile"
:label="t('supplier.addresses.mobile')"
/>
</VnRow> </VnRow>
</template> </template>
</FormModel> </FormModel>

View File

@ -26,7 +26,7 @@ const companySizes = [
<VnRow> <VnRow>
<VnInput <VnInput
v-model="data.nickname" v-model="data.nickname"
:label="t('supplier.basicData.alias')" :label="t('globals.alias')"
:rules="validate('supplier.nickname')" :rules="validate('supplier.nickname')"
clearable clearable
/> />

View File

@ -58,7 +58,7 @@ const formatPayDems = (data) => {
</VnRow> </VnRow>
<VnRow> <VnRow>
<QInput <QInput
:label="t('supplier.billingData.payDay')" :label="t('supplier.summary.payDay')"
type="number" type="number"
v-model="data.payDay" v-model="data.payDay"
/> />

View File

@ -190,13 +190,11 @@ onMounted(async () => {
<span>{{ row.id }}</span> <span>{{ row.id }}</span>
</QTd> </QTd>
<QTd no-hover> <QTd no-hover>
<span class="label">{{ t('supplier.consumption.date') }}: </span> <span class="label">{{ t('globals.date') }}: </span>
<span>{{ toDate(row.shipped) }}</span></QTd <span>{{ toDate(row.shipped) }}</span></QTd
> >
<QTd colspan="6" no-hover> <QTd colspan="6" no-hover>
<span class="label" <span class="label">{{ t('globals.reference') }}: </span>
>{{ t('supplier.consumption.reference') }}:
</span>
<span>{{ row.invoiceNumber }}</span> <span>{{ row.invoiceNumber }}</span>
</QTd> </QTd>
</QTr> </QTr>

View File

@ -44,21 +44,12 @@ const insertRow = () => {
<VnRow class="row q-gutter-md"> <VnRow class="row q-gutter-md">
<VnInput <VnInput
input-name-focusable input-name-focusable
:label="t('supplier.contacts.name')" :label="t('globals.name')"
v-model="row.name" v-model="row.name"
/> />
<VnInput <VnInput :label="t('globals.phone')" v-model="row.phone" />
:label="t('supplier.contacts.phone')" <VnInput :label="t('globals.mobile')" v-model="row.mobile" />
v-model="row.phone" <VnInput :label="t('globals.params.email')" v-model="row.email" />
/>
<VnInput
:label="t('supplier.contacts.mobile')"
v-model="row.mobile"
/>
<VnInput
:label="t('supplier.contacts.email')"
v-model="row.email"
/>
</VnRow> </VnRow>
<VnRow class="row q-gutter-md"> <VnRow class="row q-gutter-md">
<QInput <QInput

View File

@ -116,7 +116,7 @@ const getEntryQueryParams = (supplier) => {
<VnLv :label="t('supplier.summary.taxNumber')" :value="entity.nif" /> <VnLv :label="t('supplier.summary.taxNumber')" :value="entity.nif" />
<VnLv label="Alias" :value="entity.nickname" /> <VnLv label="Alias" :value="entity.nickname" />
<VnLv <VnLv
:label="t('supplier.summary.payMethod')" :label="t('supplier.list.payMethod')"
:value="entity?.payMethod?.name" :value="entity?.payMethod?.name"
/> />
<VnLv <VnLv

View File

@ -147,16 +147,12 @@ function handleLocation(data, location) {
/> />
<VnInput <VnInput
v-model="data.healthRegister" v-model="data.healthRegister"
:label="t('supplier.fiscalData.healthRegister')" :label="t('supplier.summary.healthRegister')"
clearable clearable
/> />
</VnRow> </VnRow>
<VnRow> <VnRow>
<VnInput <VnInput v-model="data.street" :label="t('globals.street')" clearable />
v-model="data.street"
:label="t('supplier.fiscalData.street')"
clearable
/>
</VnRow> </VnRow>
<VnRow> <VnRow>
<VnLocation <VnLocation

View File

@ -60,7 +60,7 @@ const getUrl = (section) => `#/supplier/${entityId.value}/${section}`;
/> />
</template> </template>
</VnLv> </VnLv>
<VnLv :label="t('supplier.summary.notes')" class="q-mb-xs"> <VnLv :label="t('globals.notes')" class="q-mb-xs">
<template #value> <template #value>
<span> {{ dashIfEmpty(supplier.note) }} </span> <span> {{ dashIfEmpty(supplier.note) }} </span>
</template> </template>
@ -98,7 +98,7 @@ const getUrl = (section) => `#/supplier/${entityId.value}/${section}`;
:text="t('supplier.summary.billingData')" :text="t('supplier.summary.billingData')"
/> />
<VnLv <VnLv
:label="t('supplier.summary.payMethod')" :label="t('supplier.list.payMethod')"
:value="supplier.payMethod?.name" :value="supplier.payMethod?.name"
dash dash
/> />
@ -147,19 +147,16 @@ const getUrl = (section) => `#/supplier/${entityId.value}/${section}`;
/> />
<VnLv :label="t('supplier.summary.socialName')" :value="supplier.name" /> <VnLv :label="t('supplier.summary.socialName')" :value="supplier.name" />
<VnLv :label="t('supplier.summary.taxNumber')" :value="supplier.nif" /> <VnLv :label="t('supplier.summary.taxNumber')" :value="supplier.nif" />
<VnLv :label="t('supplier.summary.street')" :value="supplier.street" /> <VnLv :label="t('globals.street')" :value="supplier.street" />
<VnLv :label="t('supplier.summary.city')" :value="supplier.city" /> <VnLv :label="t('supplier.summary.city')" :value="supplier.city" />
<VnLv <VnLv :label="t('globals.postCode')" :value="supplier.postCode" />
:label="t('supplier.summary.postCode')"
:value="supplier.postCode"
/>
<VnLv <VnLv
:label="t('supplier.summary.province')" :label="t('supplier.summary.province')"
:value="supplier.province?.name" :value="supplier.province?.name"
dash dash
/> />
<VnLv <VnLv
:label="t('supplier.summary.country')" :label="t('globals.country')"
:value="supplier.country?.name" :value="supplier.country?.name"
dash dash
/> />

View File

@ -12,13 +12,13 @@ const tableRef = ref();
const columns = computed(() => [ const columns = computed(() => [
{ {
align: 'left', align: 'left',
label: t('supplier.list.tableVisibleColumns.id'), label: t('globals.id'),
name: 'id', name: 'id',
isTitle: true, isTitle: true,
}, },
{ {
align: 'left', align: 'left',
label: t('supplier.list.tableVisibleColumns.name'), label: t('globals.name'),
name: 'socialName', name: 'socialName',
create: true, create: true,
columnFilter: { columnFilter: {
@ -35,7 +35,7 @@ const columns = computed(() => [
}, },
{ {
align: 'left', align: 'left',
label: t('supplier.list.tableVisibleColumns.nickname'), label: t('globals.alias'),
name: 'alias', name: 'alias',
columnFilter: { columnFilter: {
name: 'search', name: 'search',
@ -51,7 +51,7 @@ const columns = computed(() => [
}, },
{ {
align: 'left', align: 'left',
label: t('supplier.list.tableVisibleColumns.payMethod'), label: t('supplier.list.payMethod'),
name: 'payMethod', name: 'payMethod',
columnFilter: { columnFilter: {
inWhere: true, inWhere: true,
@ -70,7 +70,7 @@ const columns = computed(() => [
}, },
{ {
align: 'left', align: 'left',
label: t('supplier.list.tableVisibleColumns.payDay'), label: t('supplier.summary.payDay'),
name: 'payDay', name: 'payDay',
columnFilter: { columnFilter: {
inWhere: true, inWhere: true,
@ -79,7 +79,7 @@ const columns = computed(() => [
}, },
{ {
align: 'left', align: 'left',
label: t('supplier.list.tableVisibleColumns.country'), label: t('globals.country'),
name: 'country', name: 'country',
columnFilter: { columnFilter: {
component: 'select', component: 'select',

View File

@ -299,7 +299,7 @@ async function getZone(options) {
<QForm> <QForm>
<VnRow> <VnRow>
<VnSelect <VnSelect
:label="t('basicData.client')" :label="t('ticketList.client')"
v-model="clientId" v-model="clientId"
option-value="id" option-value="id"
option-label="name" option-label="name"
@ -322,7 +322,7 @@ async function getZone(options) {
</template> </template>
</VnSelect> </VnSelect>
<VnSelect <VnSelect
:label="t('basicData.warehouse')" :label="t('ticketList.warehouse')"
v-model="warehouseId" v-model="warehouseId"
option-value="id" option-value="id"
option-label="name" option-label="name"
@ -330,7 +330,7 @@ async function getZone(options) {
hide-selected hide-selected
map-options map-options
:required="true" :required="true"
:rules="validate('basicData.warehouse')" :rules="validate('ticketList.warehouse')"
/> />
</VnRow> </VnRow>
<VnRow> <VnRow>
@ -396,7 +396,7 @@ async function getZone(options) {
</VnRow> </VnRow>
<VnRow class="row q-gutter-md q-mb-md no-wrap"> <VnRow class="row q-gutter-md q-mb-md no-wrap">
<VnSelect <VnSelect
:label="t('basicData.company')" :label="t('ticketList.company')"
v-model="formData.companyFk" v-model="formData.companyFk"
option-value="id" option-value="id"
option-label="code" option-label="code"
@ -404,7 +404,7 @@ async function getZone(options) {
hide-selected hide-selected
map-options map-options
:required="true" :required="true"
:rules="validate('basicData.company')" :rules="validate('ticketList.company')"
/> />
<VnSelect <VnSelect
:label="t('basicData.agency')" :label="t('basicData.agency')"
@ -419,7 +419,7 @@ async function getZone(options) {
/> />
<VnSelect <VnSelect
ref="zoneSelectRef" ref="zoneSelectRef"
:label="t('basicData.zone')" :label="t('ticketList.zone')"
v-model="zoneId" v-model="zoneId"
option-value="id" option-value="id"
option-label="name" option-label="name"
@ -427,7 +427,7 @@ async function getZone(options) {
:fields="['id', 'name']" :fields="['id', 'name']"
sort-by="id" sort-by="id"
:where="zoneWhere" :where="zoneWhere"
:rules="validate('basicData.zone')" :rules="validate('ticketList.zone')"
:required="true" :required="true"
:disable="!canEditZone" :disable="!canEditZone"
@update:options="getZone" @update:options="getZone"
@ -447,10 +447,10 @@ async function getZone(options) {
</VnRow> </VnRow>
<VnRow> <VnRow>
<VnInputDate <VnInputDate
:label="t('basicData.shipped')" :label="t('ticketList.shipped')"
v-model="formData.shipped" v-model="formData.shipped"
:required="true" :required="true"
:rules="validate('basicData.shipped')" :rules="validate('ticketList.shipped')"
/> />
<VnInputTime <VnInputTime
:label="t('basicData.shippedHour')" :label="t('basicData.shippedHour')"

View File

@ -60,7 +60,7 @@ const createTicket = async () => {
<template #form-inputs="{ data }"> <template #form-inputs="{ data }">
<VnRow> <VnRow>
<VnInputDate <VnInputDate
:label="t('expedition.landed')" :label="t('basicData.landed')"
v-model="data.landed" v-model="data.landed"
:model-value="date" :model-value="date"
/> />

View File

@ -136,13 +136,13 @@ async function getVideoList(expeditionId, timed) {
<QItemLabel class="text-h6">#{{ expedition.id }}</QItemLabel> <QItemLabel class="text-h6">#{{ expedition.id }}</QItemLabel>
</QItemSection> </QItemSection>
<QItemSection> <QItemSection>
<QItemLabel caption>{{ t('ticket.boxing.created') }}</QItemLabel> <QItemLabel caption>{{ t('globals.created') }}</QItemLabel>
<QItemLabel> <QItemLabel>
{{ {{
date.formatDate(expedition.created, 'YYYY-MM-DD HH:mm:ss') date.formatDate(expedition.created, 'YYYY-MM-DD HH:mm:ss')
}} }}
</QItemLabel> </QItemLabel>
<QItemLabel caption>{{ t('ticket.boxing.item') }}</QItemLabel> <QItemLabel caption>{{ t('globals.item') }}</QItemLabel>
<QItemLabel>{{ expedition.packagingItemFk }}</QItemLabel> <QItemLabel>{{ expedition.packagingItemFk }}</QItemLabel>
<QItemLabel caption>{{ t('ticket.boxing.worker') }}</QItemLabel> <QItemLabel caption>{{ t('ticket.boxing.worker') }}</QItemLabel>
<QItemLabel>{{ expedition.userName }}</QItemLabel> <QItemLabel>{{ expedition.userName }}</QItemLabel>

View File

@ -72,7 +72,7 @@ const salesFilter = computed(() => ({
const columns = computed(() => [ const columns = computed(() => [
{ {
label: t('ticketComponents.item'), label: t('basicData.item'),
name: 'item', name: 'item',
align: 'left', align: 'left',
}, },
@ -92,13 +92,13 @@ const columns = computed(() => [
columnFilter: false, columnFilter: false,
}, },
{ {
label: t('ticketComponents.description'), label: t('basicData.description'),
name: 'description', name: 'description',
align: 'left', align: 'left',
columnClass: 'expand', columnClass: 'expand',
}, },
{ {
label: t('ticketComponents.quantity'), label: t('basicData.quantity'),
name: 'quantity', name: 'quantity',
field: 'quantity', field: 'quantity',
align: 'left', align: 'left',
@ -116,12 +116,12 @@ const columns = computed(() => [
align: 'left', align: 'left',
}, },
{ {
label: t('ticketComponents.import'), label: t('advanceTickets.import'),
name: 'import', name: 'import',
align: 'left', align: 'left',
}, },
{ {
label: t('ticketComponents.total'), label: t('basicData.total'),
name: 'total', name: 'total',
align: 'left', align: 'left',
}, },
@ -184,7 +184,7 @@ onUnmounted(() => (stateStore.rightDrawer = false));
<QCard class="q-pa-sm color-vn-text" bordered flat style="border-color: black"> <QCard class="q-pa-sm color-vn-text" bordered flat style="border-color: black">
<QCardSection horizontal> <QCardSection horizontal>
<span class="text-weight-bold text-subtitle1 text-center full-width"> <span class="text-weight-bold text-subtitle1 text-center full-width">
{{ t('ticketComponents.total') }} {{ t('basicData.total') }}
</span> </span>
</QCardSection> </QCardSection>
<QCardSection horizontal> <QCardSection horizontal>
@ -226,9 +226,7 @@ onUnmounted(() => (stateStore.rightDrawer = false));
</span> </span>
</QCardSection> </QCardSection>
<QCardSection horizontal> <QCardSection horizontal>
<span class="q-mr-xs color-vn-label"> <span class="q-mr-xs color-vn-label"> {{ t('basicData.price') }}: </span>
{{ t('ticketComponents.price') }}:
</span>
<span>{{ toCurrency(ticketData?.zonePrice, 'EUR', 2) }}</span> <span>{{ toCurrency(ticketData?.zonePrice, 'EUR', 2) }}</span>
</QCardSection> </QCardSection>
<QCardSection horizontal> <QCardSection horizontal>
@ -238,18 +236,14 @@ onUnmounted(() => (stateStore.rightDrawer = false));
<span>{{ toCurrency(ticketData?.zoneBonus, 'EUR', 2) }}</span> <span>{{ toCurrency(ticketData?.zoneBonus, 'EUR', 2) }}</span>
</QCardSection> </QCardSection>
<QCardSection horizontal> <QCardSection horizontal>
<span class="q-mr-xs color-vn-label"> <span class="q-mr-xs color-vn-label"> {{ t('ticketList.zone') }}: </span>
{{ t('ticketComponents.zone') }}:
</span>
<span class="link"> <span class="link">
{{ dashIfEmpty(ticketData?.zone?.name) }} {{ dashIfEmpty(ticketData?.zone?.name) }}
<ZoneDescriptorProxy :id="ticketData?.zone?.id" /> <ZoneDescriptorProxy :id="ticketData?.zone?.id" />
</span> </span>
</QCardSection> </QCardSection>
<QCardSection v-if="ticketData?.zone?.isVolumetric" horizontal> <QCardSection v-if="ticketData?.zone?.isVolumetric" horizontal>
<span class="q-mr-xs color-vn-label"> <span class="q-mr-xs color-vn-label"> {{ t('volume.volume') }}: </span>
{{ t('ticketComponents.volume') }}:
</span>
<span>{{ ticketVolume }}</span> <span>{{ ticketVolume }}</span>
</QCardSection> </QCardSection>
<QCardSection horizontal> <QCardSection horizontal>

View File

@ -32,10 +32,7 @@ const attendersOptions = ref([]);
> >
<template #form-inputs="{ data }"> <template #form-inputs="{ data }">
<VnRow> <VnRow>
<VnInput <VnInput v-model="data.description" :label="t('basicData.description')" />
v-model="data.description"
:label="t('purchaseRequest.description')"
/>
<VnSelect <VnSelect
:label="t('purchaseRequest.atender')" :label="t('purchaseRequest.atender')"
v-model="data.attenderFk" v-model="data.attenderFk"
@ -48,13 +45,13 @@ const attendersOptions = ref([]);
<VnRow> <VnRow>
<VnInput <VnInput
v-model="data.quantity" v-model="data.quantity"
:label="t('purchaseRequest.quantity')" :label="t('basicData.quantity')"
type="number" type="number"
min="1" min="1"
/> />
<VnInput <VnInput
v-model="data.price" v-model="data.price"
:label="t('purchaseRequest.price')" :label="t('basicData.price')"
type="number" type="number"
step="0.01" step="0.01"
min="0" min="0"

View File

@ -34,7 +34,7 @@ onMounted(async () => {
<VnRow> <VnRow>
<VnInput <VnInput
ref="nameInputRef" ref="nameInputRef"
:label="t('service.description')" :label="t('basicData.description')"
v-model="data.name" v-model="data.name"
:required="true" :required="true"
/> />

View File

@ -39,7 +39,7 @@ const onStateFkChange = (formData) => (formData.userFk = user.value.id);
<VnRow> <VnRow>
<VnSelect <VnSelect
v-model="data.stateFk" v-model="data.stateFk"
:label="t('tracking.state')" :label="t('ticketList.state')"
:options="statesOptions" :options="statesOptions"
@update:model-value="onStateFkChange(data)" @update:model-value="onStateFkChange(data)"
hide-selected hide-selected
@ -47,7 +47,7 @@ const onStateFkChange = (formData) => (formData.userFk = user.value.id);
option-value="id" option-value="id"
/> />
<VnSelect <VnSelect
:label="t('tracking.worker')" :label="t('expedition.worker')"
v-model="data.userFk" v-model="data.userFk"
url="Workers/search" url="Workers/search"
fields=" ['id', 'name']" fields=" ['id', 'name']"

View File

@ -125,7 +125,7 @@ function ticketFilter(ticket) {
</span> </span>
</template> </template>
</VnLv> </VnLv>
<VnLv v-if="entity.ticketState" :label="t('ticket.card.state')"> <VnLv v-if="entity.ticketState" :label="t('globals.state')">
<template #value> <template #value>
<QBadge <QBadge
text-color="black" text-color="black"
@ -135,7 +135,7 @@ function ticketFilter(ticket) {
</QBadge> </QBadge>
</template> </template>
</VnLv> </VnLv>
<VnLv :label="t('ticket.summary.salesPerson')"> <VnLv :label="t('globals.salesPerson')">
<template #value> <template #value>
<VnUserLink <VnUserLink
:name="entity.client?.salesPersonUser?.name" :name="entity.client?.salesPersonUser?.name"
@ -144,16 +144,16 @@ function ticketFilter(ticket) {
</template> </template>
</VnLv> </VnLv>
<VnLv <VnLv
:label="t('ticket.card.shipped')" :label="t('globals.shipped')"
:value="toDateTimeFormat(entity.shipped)" :value="toDateTimeFormat(entity.shipped)"
/> />
<VnLv <VnLv
v-if="entity.agencyMode" v-if="entity.agencyMode"
:label="t('ticket.card.agency')" :label="t('globals.agency')"
:value="entity.agencyMode.name" :value="entity.agencyMode.name"
/> />
<VnLv :label="t('ticket.card.warehouse')" :value="entity.warehouse?.name" /> <VnLv :label="t('globals.warehouse')" :value="entity.warehouse?.name" />
<VnLv :label="t('ticket.card.alias')" :value="entity.nickname" /> <VnLv :label="t('globals.alias')" :value="entity.nickname" />
</template> </template>
<template #icons="{ entity }"> <template #icons="{ entity }">
<QCardActions class="q-gutter-x-xs"> <QCardActions class="q-gutter-x-xs">

View File

@ -57,7 +57,7 @@ const columns = computed(() => [
}, },
}, },
{ {
label: t('expedition.item'), label: t('basicData.item'),
name: 'packagingItemFk', name: 'packagingItemFk',
align: 'left', align: 'left',
cardVisible: true, cardVisible: true,
@ -107,7 +107,7 @@ const columns = computed(() => [
format: (row) => toDateTimeFormat(row.created), format: (row) => toDateTimeFormat(row.created),
}, },
{ {
label: t('expedition.state'), label: t('ticketList.state'),
name: 'state', name: 'state',
align: 'left', align: 'left',
cardVisible: true, cardVisible: true,
@ -129,7 +129,7 @@ const columns = computed(() => [
const logTableColumns = computed(() => [ const logTableColumns = computed(() => [
{ {
label: t('expedition.state'), label: t('ticketList.state'),
name: 'state', name: 'state',
field: 'state', field: 'state',
align: 'center', align: 'center',

View File

@ -88,7 +88,7 @@ async function handleSave() {
:disable="!!row.id" :disable="!!row.id"
/> />
<VnInput <VnInput
:label="t('ticketNotes.description')" :label="t('basicData.description')"
v-model="row.description" v-model="row.description"
class="col" class="col"
@keyup.enter="handleSave" @keyup.enter="handleSave"

View File

@ -93,7 +93,7 @@ watch(
</template> </template>
</VnSelect> </VnSelect>
<VnInput <VnInput
:label="t('package.quantity')" :label="t('basicData.quantity')"
v-model.number="row.quantity" v-model.number="row.quantity"
class="col" class="col"
type="number" type="number"

View File

@ -81,7 +81,7 @@ const crudModelFilter = reactive({
const columns = computed(() => [ const columns = computed(() => [
{ {
align: 'left', align: 'left',
label: t('purchaseRequest.id'), label: t('ticketList.id'),
name: 'id', name: 'id',
chip: { chip: {
condition: () => true, condition: () => true,
@ -90,13 +90,13 @@ const columns = computed(() => [
}, },
{ {
align: 'left', align: 'left',
label: t('purchaseRequest.description'), label: t('basicData.description'),
name: 'description', name: 'description',
columnClass: 'expand', columnClass: 'expand',
}, },
{ {
align: 'left', align: 'left',
label: t('purchaseRequest.created'), label: t('expedition.created'),
name: 'created', name: 'created',
format: (row) => toDateFormat(row.created), format: (row) => toDateFormat(row.created),
cardVisible: true, cardVisible: true,
@ -117,12 +117,12 @@ const columns = computed(() => [
}, },
{ {
align: 'left', align: 'left',
label: t('purchaseRequest.quantity'), label: t('basicData.quantity'),
name: 'quantity', name: 'quantity',
}, },
{ {
align: 'left', align: 'left',
label: t('purchaseRequest.price'), label: t('basicData.price'),
name: 'price', name: 'price',
}, },
{ {
@ -133,7 +133,7 @@ const columns = computed(() => [
}, },
{ {
align: 'left', align: 'left',
label: t('purchaseRequest.state'), label: t('ticketList.state'),
name: 'isOk', name: 'isOk',
cardVisible: true, cardVisible: true,
}, },
@ -248,10 +248,7 @@ onMounted(() => (stateStore.rightDrawer = false));
</template> </template>
<template #more-create-dialog="{ data }"> <template #more-create-dialog="{ data }">
<VnInput <VnInput v-model="data.description" :label="t('basicData.description')" />
v-model="data.description"
:label="t('purchaseRequest.description')"
/>
<VnSelect <VnSelect
:label="t('purchaseRequest.atender')" :label="t('purchaseRequest.atender')"
v-model="data.attenderFk" v-model="data.attenderFk"
@ -262,13 +259,13 @@ onMounted(() => (stateStore.rightDrawer = false));
/> />
<VnInput <VnInput
v-model="data.quantity" v-model="data.quantity"
:label="t('purchaseRequest.quantity')" :label="t('basicData.quantity')"
type="number" type="number"
min="1" min="1"
/> />
<VnInput <VnInput
v-model="data.price" v-model="data.price"
:label="t('purchaseRequest.price')" :label="t('basicData.price')"
type="number" type="number"
min="0" min="0"
/> />

View File

@ -94,25 +94,25 @@ const columns = computed(() => [
}, },
{ {
align: 'left', align: 'left',
label: t('ticketSale.id'), label: t('ticketList.id'),
name: 'itemFk', name: 'itemFk',
}, },
{ {
align: 'left', align: 'left',
label: t('ticketSale.quantity'), label: t('basicData.quantity'),
name: 'quantity', name: 'quantity',
format: (row) => toCurrency(row.quantity), format: (row) => toCurrency(row.quantity),
}, },
{ {
align: 'left', align: 'left',
label: t('ticketSale.item'), label: t('basicData.item'),
name: 'item', name: 'item',
format: (row) => row?.item?.name, format: (row) => row?.item?.name,
columnClass: 'expand', columnClass: 'expand',
}, },
{ {
align: 'left', align: 'left',
label: t('ticketSale.price'), label: t('basicData.price'),
name: 'price', name: 'price',
format: (row) => toCurrency(row.price), format: (row) => toCurrency(row.price),
}, },
@ -124,7 +124,7 @@ const columns = computed(() => [
}, },
{ {
align: 'left', align: 'left',
label: t('ticketSale.amount'), label: t('ticketList.amount'),
name: 'amount', name: 'amount',
format: (row) => parseInt(row.amount * row.quantity), format: (row) => parseInt(row.amount * row.quantity),
}, },
@ -583,7 +583,7 @@ watch(
<QBtnDropdown <QBtnDropdown
ref="stateBtnDropdownRef" ref="stateBtnDropdownRef"
color="primary" color="primary"
:label="t('ticketSale.state')" :label="t('ticketList.state')"
:disable="!isTicketEditable" :disable="!isTicketEditable"
> >
<VnSelect <VnSelect
@ -655,7 +655,7 @@ watch(
}}</span> }}</span>
</QCardSection> </QCardSection>
<QCardSection class="justify-end text-weight-bold text-subtitle1" horizontal> <QCardSection class="justify-end text-weight-bold text-subtitle1" horizontal>
<span class="q-mr-xs color-vn-label"> {{ t('ticketSale.total') }}: </span> <span class="q-mr-xs color-vn-label"> {{ t('basicData.total') }}: </span>
<span>{{ toCurrency(store.data?.totalWithVat) }}</span> <span>{{ toCurrency(store.data?.totalWithVat) }}</span>
</QCardSection> </QCardSection>
</div></QDrawer </div></QDrawer
@ -821,7 +821,7 @@ watch(
> >
<VnInput <VnInput
v-model.number="edit.price" v-model.number="edit.price"
:label="t('ticketSale.price')" :label="t('basicData.price')"
type="number" type="number"
/> />
</TicketEditManaProxy> </TicketEditManaProxy>

View File

@ -42,19 +42,19 @@ const columns = computed(() => [
sortable: true, sortable: true,
}, },
{ {
label: t('ticketSaleTracking.item'), label: t('basicData.item'),
name: 'item', name: 'item',
align: 'left', align: 'left',
sortable: true, sortable: true,
}, },
{ {
label: t('ticketSaleTracking.description'), label: t('basicData.description'),
name: 'description', name: 'description',
align: 'left', align: 'left',
sortable: true, sortable: true,
}, },
{ {
label: t('ticketSaleTracking.quantity'), label: t('basicData.quantity'),
name: 'quantity', name: 'quantity',
field: 'quantity', field: 'quantity',
align: 'left', align: 'left',
@ -78,7 +78,7 @@ const columns = computed(() => [
const logTableColumns = computed(() => [ const logTableColumns = computed(() => [
{ {
label: t('ticketSaleTracking.quantity'), label: t('basicData.quantity'),
name: 'quantity', name: 'quantity',
field: 'quantity', field: 'quantity',
align: 'left', align: 'left',
@ -92,20 +92,20 @@ const logTableColumns = computed(() => [
sortable: true, sortable: true,
}, },
{ {
label: t('ticketSaleTracking.worker'), label: t('expedition.worker'),
name: 'worker', name: 'worker',
align: 'left', align: 'left',
sortable: true, sortable: true,
}, },
{ {
label: t('ticketSaleTracking.state'), label: t('ticketList.state'),
name: 'state', name: 'state',
field: 'state', field: 'state',
align: 'left', align: 'left',
sortable: true, sortable: true,
}, },
{ {
label: t('ticketSaleTracking.created'), label: t('expedition.created'),
name: 'created', name: 'created',
field: 'created', field: 'created',
align: 'left', align: 'left',
@ -116,13 +116,13 @@ const logTableColumns = computed(() => [
const shelvingsTableColumns = computed(() => [ const shelvingsTableColumns = computed(() => [
{ {
label: t('ticketSaleTracking.quantity'), label: t('basicData.quantity'),
name: 'quantity', name: 'quantity',
align: 'left', align: 'left',
sortable: true, sortable: true,
}, },
{ {
label: t('ticketSaleTracking.worker'), label: t('expedition.worker'),
name: 'worker', name: 'worker',
align: 'left', align: 'left',
sortable: true, sortable: true,
@ -140,7 +140,7 @@ const shelvingsTableColumns = computed(() => [
sortable: true, sortable: true,
}, },
{ {
label: t('ticketSaleTracking.created'), label: t('expedition.created'),
name: 'created', name: 'created',
field: 'created', field: 'created',
align: 'left', align: 'left',

Some files were not shown because too many files have changed in this diff Show More