fix: correct text errors and add automatic translations
Details: - Fixed various text errors across the application. - Added automatic translations to improve localization.feat_faro
parent
6450fb6ea7
commit
7aba8c02f2
|
@ -2320,7 +2320,7 @@ async function setSoport(ticket: any, wbot: any, contact: any) {
|
||||||
|
|
||||||
botSendMessage(
|
botSendMessage(
|
||||||
ticket,
|
ticket,
|
||||||
`_*Respuesta*_\n\n*code_resp*: ${code_resp._}\n*msg_resp*: ${msg_resp._}`
|
`_*Respuesta*_\n\n*code_resp*: ${code_resp._}\n*msg_resp*: ${msg_resp._}\nGracias por contactarte con nosotros, tu id estará super recomendado... recuerda que te queremos ver , feliz como una lombriz 😃`
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
console.error(
|
console.error(
|
||||||
|
|
|
@ -45,7 +45,7 @@ import {
|
||||||
|
|
||||||
|
|
||||||
import ptBrLocale from "date-fns/locale/pt-BR";
|
import ptBrLocale from "date-fns/locale/pt-BR";
|
||||||
|
import esLocale from 'date-fns/locale/es';
|
||||||
|
|
||||||
const ResponsiveTimePickers = (props) => {
|
const ResponsiveTimePickers = (props) => {
|
||||||
|
|
||||||
|
@ -63,7 +63,7 @@ const ResponsiveTimePickers = (props) => {
|
||||||
|
|
||||||
<Fragment>
|
<Fragment>
|
||||||
|
|
||||||
<MuiPickersUtilsProvider utils={DateFnsUtils} locale={ptBrLocale}>
|
<MuiPickersUtilsProvider utils={DateFnsUtils} locale={esLocale}>
|
||||||
<TimePicker
|
<TimePicker
|
||||||
variant="outline"
|
variant="outline"
|
||||||
label={props.title}
|
label={props.title}
|
||||||
|
|
|
@ -11,6 +11,7 @@ import { TimePicker, DatePicker } from 'formik-material-ui-pickers'
|
||||||
import DateFnsUtils from '@date-io/date-fns'
|
import DateFnsUtils from '@date-io/date-fns'
|
||||||
|
|
||||||
import ptBrLocale from "date-fns/locale/pt-BR"
|
import ptBrLocale from "date-fns/locale/pt-BR"
|
||||||
|
import esLocale from 'date-fns/locale/es';
|
||||||
|
|
||||||
import { WhatsAppsContext } from "../../context/WhatsApp/WhatsAppsContext"
|
import { WhatsAppsContext } from "../../context/WhatsApp/WhatsAppsContext"
|
||||||
|
|
||||||
|
@ -257,7 +258,7 @@ const ConfigModal = ({ open, onClose, change }) => {
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
{({ values, touched, errors, isSubmitting }) => (
|
{({ values, touched, errors, isSubmitting }) => (
|
||||||
<MuiPickersUtilsProvider utils={DateFnsUtils} locale={ptBrLocale}>
|
<MuiPickersUtilsProvider utils={DateFnsUtils} locale={esLocale}>
|
||||||
<Form>
|
<Form>
|
||||||
|
|
||||||
<DialogContent dividers>
|
<DialogContent dividers>
|
||||||
|
@ -299,7 +300,7 @@ const ConfigModal = ({ open, onClose, change }) => {
|
||||||
<Field
|
<Field
|
||||||
component={TimePicker}
|
component={TimePicker}
|
||||||
name="startTimeBus"
|
name="startTimeBus"
|
||||||
label="Inicio atendimento"
|
label={i18n.t('configModal.titles.startService')}
|
||||||
ampm={false}
|
ampm={false}
|
||||||
openTo="hours"
|
openTo="hours"
|
||||||
views={['hours', 'minutes',]}
|
views={['hours', 'minutes',]}
|
||||||
|
@ -309,7 +310,7 @@ const ConfigModal = ({ open, onClose, change }) => {
|
||||||
<Field
|
<Field
|
||||||
component={TimePicker}
|
component={TimePicker}
|
||||||
name="endTimeBus"
|
name="endTimeBus"
|
||||||
label="Fim atendimento"
|
label={i18n.t('configModal.titles.endService')}
|
||||||
ampm={false}
|
ampm={false}
|
||||||
openTo="hours"
|
openTo="hours"
|
||||||
views={['hours', 'minutes',]}
|
views={['hours', 'minutes',]}
|
||||||
|
@ -325,13 +326,13 @@ const ConfigModal = ({ open, onClose, change }) => {
|
||||||
checked={values.businessTimeEnable}
|
checked={values.businessTimeEnable}
|
||||||
/>
|
/>
|
||||||
}
|
}
|
||||||
label={'Ativar/Desativar'} />
|
label={i18n.t('configModal.titles.enableDisable')} />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<Field
|
<Field
|
||||||
as={TextField}
|
as={TextField}
|
||||||
label={'Mensagem fora do horário de atendimento'}
|
label={i18n.t('configModal.titles.outOfHours')}
|
||||||
type="messageBus"
|
type="messageBus"
|
||||||
multiline
|
multiline
|
||||||
rows={5}
|
rows={5}
|
||||||
|
@ -355,7 +356,7 @@ const ConfigModal = ({ open, onClose, change }) => {
|
||||||
<Field
|
<Field
|
||||||
component={TimePicker}
|
component={TimePicker}
|
||||||
name="startTimeBusSaturday"
|
name="startTimeBusSaturday"
|
||||||
label="Inicio atendimentos"
|
label={i18n.t('configModal.titles.startService')}
|
||||||
ampm={false}
|
ampm={false}
|
||||||
openTo="hours"
|
openTo="hours"
|
||||||
views={['hours', 'minutes',]}
|
views={['hours', 'minutes',]}
|
||||||
|
@ -365,7 +366,7 @@ const ConfigModal = ({ open, onClose, change }) => {
|
||||||
<Field
|
<Field
|
||||||
component={TimePicker}
|
component={TimePicker}
|
||||||
name="endTimeBusSaturday"
|
name="endTimeBusSaturday"
|
||||||
label="Fim atendimento"
|
label={i18n.t('configModal.titles.endService')}
|
||||||
ampm={false}
|
ampm={false}
|
||||||
openTo="hours"
|
openTo="hours"
|
||||||
views={['hours', 'minutes',]}
|
views={['hours', 'minutes',]}
|
||||||
|
@ -381,13 +382,13 @@ const ConfigModal = ({ open, onClose, change }) => {
|
||||||
checked={values.businessTimeEnableSaturday}
|
checked={values.businessTimeEnableSaturday}
|
||||||
/>
|
/>
|
||||||
}
|
}
|
||||||
label={'Ativar/Desativar'} />
|
label={i18n.t('configModal.titles.enableDisable')} />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<Field
|
<Field
|
||||||
as={TextField}
|
as={TextField}
|
||||||
label={'Mensagem fora do horário de atendimento sábado'}
|
label={i18n.t('configModal.titles.outOfHoursSaturday')}
|
||||||
type="messageBusSaturday"
|
type="messageBusSaturday"
|
||||||
multiline
|
multiline
|
||||||
rows={5}
|
rows={5}
|
||||||
|
@ -430,13 +431,13 @@ const ConfigModal = ({ open, onClose, change }) => {
|
||||||
checked={values.enableWeekendMessage}
|
checked={values.enableWeekendMessage}
|
||||||
/>
|
/>
|
||||||
}
|
}
|
||||||
label={'Ativar/Desativar'}
|
label={i18n.t('configModal.titles.enableDisable')}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<Field
|
<Field
|
||||||
as={TextField}
|
as={TextField}
|
||||||
label={'Mensagem para final de semana'}
|
label={i18n.t('configModal.titles.forTheWeekend')}
|
||||||
type="weekendMessage"
|
type="weekendMessage"
|
||||||
multiline
|
multiline
|
||||||
rows={5}
|
rows={5}
|
||||||
|
@ -461,7 +462,7 @@ const ConfigModal = ({ open, onClose, change }) => {
|
||||||
<Field
|
<Field
|
||||||
component={DatePicker}
|
component={DatePicker}
|
||||||
name="holidayDate"
|
name="holidayDate"
|
||||||
label="Data do feriado"
|
label={i18n.t('configModal.titles.holiday')}
|
||||||
format="dd/MM/yyyy"
|
format="dd/MM/yyyy"
|
||||||
fullWidth
|
fullWidth
|
||||||
/>
|
/>
|
||||||
|
@ -475,13 +476,13 @@ const ConfigModal = ({ open, onClose, change }) => {
|
||||||
checked={values.holidayDateEnable}
|
checked={values.holidayDateEnable}
|
||||||
/>
|
/>
|
||||||
}
|
}
|
||||||
label={'Ativar/Desativar'}
|
label={i18n.t('configModal.titles.enableDisable')}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<Field
|
<Field
|
||||||
as={TextField}
|
as={TextField}
|
||||||
label={'Mensagem para feriado'}
|
label={i18n.t('configModal.titles.holidayMessage')}
|
||||||
type="holidayDateMessage"
|
type="holidayDateMessage"
|
||||||
multiline
|
multiline
|
||||||
rows={5}
|
rows={5}
|
||||||
|
@ -524,13 +525,13 @@ const ConfigModal = ({ open, onClose, change }) => {
|
||||||
checked={values.ticketExpirationEnable}
|
checked={values.ticketExpirationEnable}
|
||||||
/>
|
/>
|
||||||
}
|
}
|
||||||
label={'Ativar/Desativar'}
|
label={i18n.t('configModal.titles.enableDisable')}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<Field
|
<Field
|
||||||
as={TextField}
|
as={TextField}
|
||||||
label={'Mensagem por falta de atividade no atendimento'}
|
label={i18n.t('configModal.titles.inactivityMessage')}
|
||||||
type="ticketExpirationMsg"
|
type="ticketExpirationMsg"
|
||||||
multiline
|
multiline
|
||||||
rows={5}
|
rows={5}
|
||||||
|
@ -569,7 +570,7 @@ const ConfigModal = ({ open, onClose, change }) => {
|
||||||
size={24}
|
size={24}
|
||||||
className={classes.buttonProgress}
|
className={classes.buttonProgress}
|
||||||
/>
|
/>
|
||||||
) : 'Salvar'}
|
) : i18n.t('configModal.titles.save')}
|
||||||
</Button>
|
</Button>
|
||||||
</DialogActions>
|
</DialogActions>
|
||||||
</Form>
|
</Form>
|
||||||
|
|
|
@ -23,6 +23,8 @@ import CheckCircleIcon from "@material-ui/icons/CheckCircle";
|
||||||
import ErrorIcon from "@material-ui/icons/Error";
|
import ErrorIcon from "@material-ui/icons/Error";
|
||||||
import RemoveCircleIcon from "@material-ui/icons/RemoveCircle";
|
import RemoveCircleIcon from "@material-ui/icons/RemoveCircle";
|
||||||
|
|
||||||
|
import { i18n } from "../../translate/i18n";
|
||||||
|
|
||||||
const CardUser = ({ classes, usersOnlineInfo, logout }) => {
|
const CardUser = ({ classes, usersOnlineInfo, logout }) => {
|
||||||
const [search, setSearch] = React.useState("");
|
const [search, setSearch] = React.useState("");
|
||||||
|
|
||||||
|
@ -46,14 +48,14 @@ const CardUser = ({ classes, usersOnlineInfo, logout }) => {
|
||||||
color="primary"
|
color="primary"
|
||||||
style={{ marginBottom: "16px" }}
|
style={{ marginBottom: "16px" }}
|
||||||
>
|
>
|
||||||
Lista de Usuários
|
{i18n.t('dashboard.titles.listUser')}
|
||||||
</Typography>
|
</Typography>
|
||||||
</Grid>
|
</Grid>
|
||||||
<Grid item sx={8} width="100%">
|
<Grid item sx={8} width="100%">
|
||||||
<Box sx={{ marginBottom: 2, display: "flex", gap: "12px" }}>
|
<Box sx={{ marginBottom: 2, display: "flex", gap: "12px" }}>
|
||||||
<TextField
|
<TextField
|
||||||
id="outlined-basic"
|
id="outlined-basic"
|
||||||
label="Usuário"
|
label={i18n.t('dashboard.titles.user')}
|
||||||
variant="standard"
|
variant="standard"
|
||||||
value={search}
|
value={search}
|
||||||
onChange={handlesearch}
|
onChange={handlesearch}
|
||||||
|
@ -70,7 +72,7 @@ const CardUser = ({ classes, usersOnlineInfo, logout }) => {
|
||||||
<MenuItem value={null}>Todos</MenuItem>
|
<MenuItem value={null}>Todos</MenuItem>
|
||||||
<MenuItem value={"online"}>Online</MenuItem>
|
<MenuItem value={"online"}>Online</MenuItem>
|
||||||
<MenuItem value={"offline"}>Offline</MenuItem>
|
<MenuItem value={"offline"}>Offline</MenuItem>
|
||||||
<MenuItem value={"not"}>Não entrou</MenuItem>
|
<MenuItem value={"not"}>{i18n.t('dashboard.titles.notEnter')}</MenuItem>
|
||||||
</Select>
|
</Select>
|
||||||
</FormControl>
|
</FormControl>
|
||||||
</Box>
|
</Box>
|
||||||
|
@ -161,7 +163,7 @@ const CardUser = ({ classes, usersOnlineInfo, logout }) => {
|
||||||
<Typography component="p" color="textPrimary" paragraph>
|
<Typography component="p" color="textPrimary" paragraph>
|
||||||
{user.sumOnlineTime && user.sumOnlineTime.sum
|
{user.sumOnlineTime && user.sumOnlineTime.sum
|
||||||
? user.sumOnlineTime.sum
|
? user.sumOnlineTime.sum
|
||||||
: "Não entrou Hoje"}
|
: i18n.t('dashboard.titles.notEnterToday')}
|
||||||
</Typography>
|
</Typography>
|
||||||
</Typography>
|
</Typography>
|
||||||
</CardContent>
|
</CardContent>
|
||||||
|
|
|
@ -75,7 +75,7 @@ const TableUser = ({ classes, usersOnlineInfo, logout }) => {
|
||||||
<MenuItem value={null}>Todos</MenuItem>
|
<MenuItem value={null}>Todos</MenuItem>
|
||||||
<MenuItem value={"online"}>Online</MenuItem>
|
<MenuItem value={"online"}>Online</MenuItem>
|
||||||
<MenuItem value={"offline"}>Offline</MenuItem>
|
<MenuItem value={"offline"}>Offline</MenuItem>
|
||||||
<MenuItem value={"not"}>Não entrou</MenuItem>
|
<MenuItem value={"not"}>{i18n.t('dashboard.titles.notEnter')}</MenuItem>
|
||||||
</Select>
|
</Select>
|
||||||
</FormControl>
|
</FormControl>
|
||||||
</Box>
|
</Box>
|
||||||
|
@ -221,7 +221,7 @@ const TableUser = ({ classes, usersOnlineInfo, logout }) => {
|
||||||
</div>
|
</div>
|
||||||
</TableCell>
|
</TableCell>
|
||||||
<TableCell>
|
<TableCell>
|
||||||
{user.sumOnlineTime ? user.sumOnlineTime.sum : "Não entrou"}
|
{user.sumOnlineTime ? user.sumOnlineTime.sum : i18n.t('dashboard.titles.notEnter')}
|
||||||
</TableCell>
|
</TableCell>
|
||||||
<TableCell>
|
<TableCell>
|
||||||
{user.statusOnline && user.statusOnline.status === "online" ? (
|
{user.statusOnline && user.statusOnline.status === "online" ? (
|
||||||
|
|
|
@ -13,7 +13,7 @@ import {
|
||||||
|
|
||||||
|
|
||||||
import ptBrLocale from "date-fns/locale/pt-BR";
|
import ptBrLocale from "date-fns/locale/pt-BR";
|
||||||
|
import esLocale from 'date-fns/locale/es';
|
||||||
|
|
||||||
function formatDateDatePicker(data){
|
function formatDateDatePicker(data){
|
||||||
return String(new Date(data).getFullYear())+'-'+
|
return String(new Date(data).getFullYear())+'-'+
|
||||||
|
@ -50,7 +50,7 @@ function ResponsiveDatePickers(props) {
|
||||||
return (
|
return (
|
||||||
|
|
||||||
<Fragment>
|
<Fragment>
|
||||||
<MuiPickersUtilsProvider utils={DateFnsUtils} locale={ptBrLocale}>
|
<MuiPickersUtilsProvider utils={DateFnsUtils} locale={esLocale}>
|
||||||
<KeyboardDatePicker
|
<KeyboardDatePicker
|
||||||
// autoOk
|
// autoOk
|
||||||
|
|
||||||
|
|
|
@ -45,7 +45,7 @@ import {
|
||||||
|
|
||||||
|
|
||||||
import ptBrLocale from "date-fns/locale/pt-BR";
|
import ptBrLocale from "date-fns/locale/pt-BR";
|
||||||
|
import esLocale from 'date-fns/locale/es';
|
||||||
|
|
||||||
function formatDate(strDate){
|
function formatDate(strDate){
|
||||||
const date = strDate.split(' ')[0].split('/')
|
const date = strDate.split(' ')[0].split('/')
|
||||||
|
@ -70,7 +70,7 @@ const ResponsiveTimePickers = (props) => {
|
||||||
|
|
||||||
<Fragment>
|
<Fragment>
|
||||||
|
|
||||||
<MuiPickersUtilsProvider utils={DateFnsUtils} locale={ptBrLocale}>
|
<MuiPickersUtilsProvider utils={DateFnsUtils} locale={esLocale}>
|
||||||
<TimePicker
|
<TimePicker
|
||||||
variant="outline"
|
variant="outline"
|
||||||
label={props.title}
|
label={props.title}
|
||||||
|
|
|
@ -5,7 +5,6 @@ import { Formik, Form, Field } from "formik"
|
||||||
import { toast } from "react-toastify"
|
import { toast } from "react-toastify"
|
||||||
import openSocket from 'socket.io-client'
|
import openSocket from 'socket.io-client'
|
||||||
|
|
||||||
|
|
||||||
import {
|
import {
|
||||||
makeStyles,
|
makeStyles,
|
||||||
Button,
|
Button,
|
||||||
|
@ -191,7 +190,7 @@ const PositionModal = ({
|
||||||
<div className={classes.textQuickAnswerContainer}>
|
<div className={classes.textQuickAnswerContainer}>
|
||||||
<Field
|
<Field
|
||||||
as={TextField}
|
as={TextField}
|
||||||
label={'Nome'}
|
label={i18n.t('dashboard.titles.name')}
|
||||||
name="name"
|
name="name"
|
||||||
autoFocus
|
autoFocus
|
||||||
error={touched.name && Boolean(errors.name)}
|
error={touched.name && Boolean(errors.name)}
|
||||||
|
|
|
@ -15,7 +15,7 @@ import {
|
||||||
|
|
||||||
|
|
||||||
import ptBrLocale from "date-fns/locale/pt-BR";
|
import ptBrLocale from "date-fns/locale/pt-BR";
|
||||||
|
import esLocale from 'date-fns/locale/es';
|
||||||
|
|
||||||
function formatDateDatePicker(data){
|
function formatDateDatePicker(data){
|
||||||
return String(new Date(data).getFullYear())+'-'+
|
return String(new Date(data).getFullYear())+'-'+
|
||||||
|
@ -52,7 +52,7 @@ function ResponsiveDatePickers(props) {
|
||||||
return (
|
return (
|
||||||
|
|
||||||
<Fragment>
|
<Fragment>
|
||||||
<MuiPickersUtilsProvider utils={DateFnsUtils} locale={ptBrLocale}>
|
<MuiPickersUtilsProvider utils={DateFnsUtils} locale={esLocale}>
|
||||||
<KeyboardDatePicker
|
<KeyboardDatePicker
|
||||||
// autoOk
|
// autoOk
|
||||||
|
|
||||||
|
|
|
@ -52,7 +52,7 @@ const Modal = (props) => {
|
||||||
|
|
||||||
const dataChat = props.data.map((dt) => {
|
const dataChat = props.data.map((dt) => {
|
||||||
return {
|
return {
|
||||||
'fromMe': dt.fromMe ? 'Atendente' : 'Cliente',
|
'fromMe': dt.fromMe ? i18n.t('dashboard.titles.attendant') : 'Cliente',
|
||||||
'body': dt.body,
|
'body': dt.body,
|
||||||
'createdAt': dt.createdAt
|
'createdAt': dt.createdAt
|
||||||
}
|
}
|
||||||
|
|
|
@ -12,6 +12,7 @@ import InputLabel from '@mui/material/InputLabel';
|
||||||
import MenuItem from '@mui/material/MenuItem';
|
import MenuItem from '@mui/material/MenuItem';
|
||||||
import Select from '@mui/material/Select';
|
import Select from '@mui/material/Select';
|
||||||
|
|
||||||
|
import { i18n } from "../../translate/i18n";
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -56,11 +57,11 @@ useEffect(()=>{
|
||||||
open={open}
|
open={open}
|
||||||
onClose={handleClose}
|
onClose={handleClose}
|
||||||
>
|
>
|
||||||
<DialogTitle>Relatórios</DialogTitle>
|
<DialogTitle>{i18n.t('dashboard.titles.dialogTitle')}</DialogTitle>
|
||||||
|
|
||||||
<DialogContent>
|
<DialogContent>
|
||||||
<DialogContentText>
|
<DialogContentText>
|
||||||
Escolha uma opção de relatório abaixo
|
{i18n.t('dashboard.titles.dialogContentText')}
|
||||||
</DialogContentText>
|
</DialogContentText>
|
||||||
|
|
||||||
<Box
|
<Box
|
||||||
|
|
|
@ -262,7 +262,7 @@ const UserModal = ({ open, onClose, userId, }) => {
|
||||||
/>
|
/>
|
||||||
<div className={classes.multFieldLine}>
|
<div className={classes.multFieldLine}>
|
||||||
<label style={{display: 'flex', alignItems:'center'}}>
|
<label style={{display: 'flex', alignItems:'center'}}>
|
||||||
Transferir para outras filas
|
{i18n.t('dashboard.titles.transfer')}
|
||||||
<Switch
|
<Switch
|
||||||
name= 'transferToOtherQueues'
|
name= 'transferToOtherQueues'
|
||||||
checked={checked}
|
checked={checked}
|
||||||
|
|
|
@ -189,7 +189,7 @@ const MainListItems = (props) => {
|
||||||
/>
|
/>
|
||||||
<ListItemLink
|
<ListItemLink
|
||||||
to="/report"
|
to="/report"
|
||||||
primary="Relatório"
|
primary={i18n.t("mainDrawer.listItems.reports")}
|
||||||
icon={<ReportOutlinedIcon />}
|
icon={<ReportOutlinedIcon />}
|
||||||
/>
|
/>
|
||||||
</>
|
</>
|
||||||
|
@ -242,7 +242,7 @@ const MainListItems = (props) => {
|
||||||
(getSettingValue('hasCampaign') === 'enabled' || user.profile === 'master') && (
|
(getSettingValue('hasCampaign') === 'enabled' || user.profile === 'master') && (
|
||||||
<ListItemLink
|
<ListItemLink
|
||||||
to="/campaign"
|
to="/campaign"
|
||||||
primary="Campanha"
|
primary={i18n.t("mainDrawer.listItems.campaign") || 'Campaign'}
|
||||||
icon={<CampaignIcon />}
|
icon={<CampaignIcon />}
|
||||||
/>
|
/>
|
||||||
)
|
)
|
||||||
|
|
|
@ -5,6 +5,8 @@ import { PieChart as RechartsPieChart, Pie, Cell, ResponsiveContainer, Tooltip }
|
||||||
|
|
||||||
import Title from './Title';
|
import Title from './Title';
|
||||||
|
|
||||||
|
import { i18n } from "../../translate/i18n";
|
||||||
|
|
||||||
const generateDataExample = (amount) => {
|
const generateDataExample = (amount) => {
|
||||||
const arr = []
|
const arr = []
|
||||||
for (let i = 1; i <= amount; i++) {
|
for (let i = 1; i <= amount; i++) {
|
||||||
|
@ -76,7 +78,7 @@ const PieChart = ({ data = dataExample }) => {
|
||||||
>
|
>
|
||||||
<Box width="100%" height="100%" position="sticky" top="0" zIndex={1000}>
|
<Box width="100%" height="100%" position="sticky" top="0" zIndex={1000}>
|
||||||
<Box sx={{ position: "absolute" }}>
|
<Box sx={{ position: "absolute" }}>
|
||||||
<Title>Tickets encerramento</Title>
|
<Title>{i18n.t('dashboard.titles.title')}</Title>
|
||||||
</Box>
|
</Box>
|
||||||
<ResponsiveContainer width="100%" height="100%">
|
<ResponsiveContainer width="100%" height="100%">
|
||||||
<RechartsPieChart width={400} height={400}>
|
<RechartsPieChart width={400} height={400}>
|
||||||
|
|
|
@ -14,7 +14,7 @@ import Info from "@material-ui/icons/Info"
|
||||||
import SelectField from "../../components/Report/SelectField"
|
import SelectField from "../../components/Report/SelectField"
|
||||||
|
|
||||||
import { AuthContext } from "../../context/Auth/AuthContext"
|
import { AuthContext } from "../../context/Auth/AuthContext"
|
||||||
// import { i18n } from "../../translate/i18n";
|
import { i18n } from "../../translate/i18n";
|
||||||
import Chart from "./Chart"
|
import Chart from "./Chart"
|
||||||
import PieChart from "./PieChart"
|
import PieChart from "./PieChart"
|
||||||
import openSocket from "socket.io-client"
|
import openSocket from "socket.io-client"
|
||||||
|
@ -472,7 +472,7 @@ const Dashboard = () => {
|
||||||
func={handleSelectedQueue}
|
func={handleSelectedQueue}
|
||||||
textBoxFieldSelected={'All'}
|
textBoxFieldSelected={'All'}
|
||||||
emptyField={false}
|
emptyField={false}
|
||||||
header={'Filas'}
|
header={i18n.t('dashboard.titles.selectQueues')}
|
||||||
currencies={user.queues.map((obj) => {
|
currencies={user.queues.map((obj) => {
|
||||||
return { 'value': obj.id, 'label': obj.name }
|
return { 'value': obj.id, 'label': obj.name }
|
||||||
})} />
|
})} />
|
||||||
|
@ -485,7 +485,7 @@ const Dashboard = () => {
|
||||||
variant="outlined"
|
variant="outlined"
|
||||||
>
|
>
|
||||||
<Typography component="h3" variant="h6" color="primary" paragraph>
|
<Typography component="h3" variant="h6" color="primary" paragraph>
|
||||||
Aguardando
|
{i18n.t('dashboard.titles.waiting')}
|
||||||
</Typography>
|
</Typography>
|
||||||
<Grid item>
|
<Grid item>
|
||||||
<Typography component="h1" variant="h4">
|
<Typography component="h1" variant="h4">
|
||||||
|
@ -501,7 +501,7 @@ const Dashboard = () => {
|
||||||
variant="outlined"
|
variant="outlined"
|
||||||
>
|
>
|
||||||
<Typography component="h3" variant="h6" color="primary" style={{ marginBottom: "0" }} paragraph>
|
<Typography component="h3" variant="h6" color="primary" style={{ marginBottom: "0" }} paragraph>
|
||||||
Em Atendimento
|
{i18n.t('dashboard.titles.inService')}
|
||||||
</Typography>
|
</Typography>
|
||||||
<Typography paragraph style={{ fontSize: "12px", margin: "0px" }}>Hoje/Todo Periodo</Typography>
|
<Typography paragraph style={{ fontSize: "12px", margin: "0px" }}>Hoje/Todo Periodo</Typography>
|
||||||
|
|
||||||
|
@ -520,7 +520,7 @@ const Dashboard = () => {
|
||||||
variant="outlined"
|
variant="outlined"
|
||||||
>
|
>
|
||||||
<Typography component="h3" variant="h6" color="primary" paragraph>
|
<Typography component="h3" variant="h6" color="primary" paragraph>
|
||||||
Fechados
|
{i18n.t('dashboard.titles.ticketsClosed')}
|
||||||
</Typography>
|
</Typography>
|
||||||
<Grid item>
|
<Grid item>
|
||||||
<Typography component="h1" variant="h4">
|
<Typography component="h1" variant="h4">
|
||||||
|
@ -551,7 +551,7 @@ const Dashboard = () => {
|
||||||
color="primary"
|
color="primary"
|
||||||
style={{ marginBottom: "16px" }}
|
style={{ marginBottom: "16px" }}
|
||||||
>
|
>
|
||||||
Usuários
|
{i18n.t('dashboard.titles.users')}
|
||||||
<Tooltip
|
<Tooltip
|
||||||
title={`Os dados informados abaixo é baseado na data: ${new Date().toLocaleDateString(
|
title={`Os dados informados abaixo é baseado na data: ${new Date().toLocaleDateString(
|
||||||
"pt-BR",
|
"pt-BR",
|
||||||
|
|
|
@ -25,16 +25,16 @@ import Switch from '@mui/material/Switch'
|
||||||
const label = { inputProps: { 'aria-label': 'Size switch demo' } }
|
const label = { inputProps: { 'aria-label': 'Size switch demo' } }
|
||||||
|
|
||||||
const report = [
|
const report = [
|
||||||
{ 'value': '1', 'label': 'Atendimento por atendentes' },
|
{ 'value': '1', 'label': `${i18n.t("reports.listTitles.title1_1")}` },
|
||||||
{ 'value': '2', 'label': 'Usuários online/offline' },
|
{ 'value': '2', 'label': `${i18n.t("reports.listTitles.title3_1")}` },
|
||||||
{ 'value': '3', 'label': 'Relatorio de atendimento por numeros' },
|
{ 'value': '3', 'label': `${i18n.t("reports.listTitles.title4_1")}` },
|
||||||
{ 'value': '4', 'label': 'Relatorio de atendimento por filas' },
|
{ 'value': '4', 'label': `${i18n.t("reports.listTitles.title5_1")}` },
|
||||||
]
|
]
|
||||||
|
|
||||||
const reportOptType = [
|
const reportOptType = [
|
||||||
{ 'value': '1', 'label': 'Padrão' },
|
{ 'value': '1', 'label': i18n.t('reportOptType.listTitles.title1') },
|
||||||
{ 'value': '2', 'label': 'Sintético' },
|
{ 'value': '2', 'label': i18n.t('reportOptType.listTitles.title2') },
|
||||||
{ 'value': '3', 'label': 'Analítico' }
|
{ 'value': '3', 'label': i18n.t('reportOptType.listTitles.title3') }
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
|
@ -838,11 +838,11 @@ const Report = () => {
|
||||||
<Box sx={{ display: 'flex', flexDirection: 'column', padding: '10px 0', }}>
|
<Box sx={{ display: 'flex', flexDirection: 'column', padding: '10px 0', }}>
|
||||||
<FormControlLabel
|
<FormControlLabel
|
||||||
control={<Checkbox checked={selectedValue === 'created'} onChange={() => handleCheckBoxChange('created')} />}
|
control={<Checkbox checked={selectedValue === 'created'} onChange={() => handleCheckBoxChange('created')} />}
|
||||||
label="Criado"
|
label="Creado"
|
||||||
/>
|
/>
|
||||||
<FormControlLabel
|
<FormControlLabel
|
||||||
control={<Checkbox checked={selectedValue === 'updated'} onChange={() => handleCheckBoxChange('updated')} />}
|
control={<Checkbox checked={selectedValue === 'updated'} onChange={() => handleCheckBoxChange('updated')} />}
|
||||||
label="Atualizado"
|
label="Actualizado"
|
||||||
/>
|
/>
|
||||||
</Box> :
|
</Box> :
|
||||||
|
|
||||||
|
@ -896,7 +896,7 @@ const Report = () => {
|
||||||
localization={{
|
localization={{
|
||||||
|
|
||||||
header: {
|
header: {
|
||||||
actions: 'Deslogar'
|
actions: 'Unidad'
|
||||||
},
|
},
|
||||||
|
|
||||||
}}
|
}}
|
||||||
|
@ -906,7 +906,7 @@ const Report = () => {
|
||||||
[
|
[
|
||||||
|
|
||||||
// { title: 'Foto', field: 'ticket.contact.profilePicUrl', render: rowData => <img src={rowData['ticket.contact.profilePicUrl']} alt="imagem de perfil do whatsapp" style={{ width: 40, borderRadius: '50%' }} /> },
|
// { title: 'Foto', field: 'ticket.contact.profilePicUrl', render: rowData => <img src={rowData['ticket.contact.profilePicUrl']} alt="imagem de perfil do whatsapp" style={{ width: 40, borderRadius: '50%' }} /> },
|
||||||
{ title: 'Nome', field: 'name', cellStyle: { whiteSpace: 'nowrap' }, },
|
{ title: 'Nombre', field: 'name', cellStyle: { whiteSpace: 'nowrap' }, },
|
||||||
|
|
||||||
{
|
{
|
||||||
title: 'Status', field: 'statusOnline.status',
|
title: 'Status', field: 'statusOnline.status',
|
||||||
|
@ -935,11 +935,11 @@ const Report = () => {
|
||||||
|
|
||||||
},
|
},
|
||||||
|
|
||||||
{ title: 'Tempo online', field: 'sumOnlineTime.sum' },
|
{ title: `${i18n.t('reports.onlineTime')}`, field: 'sumOnlineTime.sum' },
|
||||||
{ title: `${i18n.t("reports.dateStart")}`, field: 'startDate' },
|
{ title: `${i18n.t("reports.dateStart")}`, field: 'startDate' },
|
||||||
{ title: `${i18n.t("reports.dateEnd")}`, field: 'endDate' },
|
{ title: `${i18n.t("reports.dateEnd")}`, field: 'endDate' },
|
||||||
{ title: 'Em atendimento', field: 'sumOpen.count' },
|
{ title: `${i18n.t('reports.inService')}`, field: 'sumOpen.count' },
|
||||||
{ title: 'Finalizado', field: 'sumClosed.count' },
|
{ title: `${i18n.t('reports.finished')}`, field: 'sumClosed.count' },
|
||||||
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
@ -1001,20 +1001,20 @@ const Report = () => {
|
||||||
title={i18n.t("reports.listTitles.title4_1")}
|
title={i18n.t("reports.listTitles.title4_1")}
|
||||||
columns={
|
columns={
|
||||||
!checkedRemote ? [
|
!checkedRemote ? [
|
||||||
{ title: 'Unidade', field: 'name', cellStyle: { whiteSpace: 'nowrap' }, },
|
{ title: i18n.t('reports.listColumns.column3_1'), field: 'name', cellStyle: { whiteSpace: 'nowrap' }, },
|
||||||
{ title: 'Conversas iniciadas', field: 'startedByAgent', },
|
{ title: i18n.t('reports.listColumns.column3_3'), field: 'startedByAgent', },
|
||||||
{ title: 'Conversas recebidas', field: 'startedByClient' },
|
{ title: i18n.t('reports.listColumns.column3_4'), field: 'startedByClient' },
|
||||||
{ title: `Conversas finalizadas`, field: 'closedChat' },
|
{ title: i18n.t('reports.listColumns.column3_5'), field: 'closedChat' },
|
||||||
{ title: `Tempo médio de espera`, field: 'avgChatWaitingTime' },
|
{ title: i18n.t('reports.listColumns.column3_6'), field: 'avgChatWaitingTime' },
|
||||||
{ title: 'Aguardando', field: 'pendingChat' }
|
{ title: i18n.t('reports.listColumns.column3_7'), field: 'pendingChat' }
|
||||||
|
|
||||||
] :
|
] :
|
||||||
[
|
[
|
||||||
{ title: 'Unidade', field: 'name', cellStyle: { whiteSpace: 'nowrap' }, },
|
{ title: i18n.t('reports.listColumns.column3_1'), field: 'name', cellStyle: { whiteSpace: 'nowrap' }, },
|
||||||
{ title: 'Conversas iniciadas', field: 'startedByAgent', },
|
{ title: i18n.t('reports.listColumns.column3_3'), field: 'startedByAgent', },
|
||||||
{ title: 'Conversas respondidas', field: 'startedByClient' },
|
{ title: i18n.t('reports.listColumns.column3_4'), field: 'startedByClient' },
|
||||||
{ title: `Conversas finalizadas`, field: 'closedChat' },
|
{ title: i18n.t('reports.listColumns.column3_5'), field: 'closedChat' },
|
||||||
{ title: 'Aguardando', field: 'pendingChat' }
|
{ title: i18n.t('reports.listColumns.column3_7'), field: 'pendingChat' }
|
||||||
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
@ -1054,9 +1054,9 @@ const Report = () => {
|
||||||
columns={
|
columns={
|
||||||
!checkedRemote ? [
|
!checkedRemote ? [
|
||||||
|
|
||||||
{ title: 'Unidade', field: 'name', cellStyle: { whiteSpace: 'nowrap' }, },
|
{ title: i18n.t('reports.listColumns.column3_1'), field: 'name', cellStyle: { whiteSpace: 'nowrap' }, },
|
||||||
{
|
{
|
||||||
title: 'Fila', field: 'queueName',
|
title: i18n.t('reports.listColumns.column3_2'), field: 'queueName',
|
||||||
cellStyle: (evt, rowData) => {
|
cellStyle: (evt, rowData) => {
|
||||||
return {
|
return {
|
||||||
whiteSpace: 'nowrap',
|
whiteSpace: 'nowrap',
|
||||||
|
@ -1066,19 +1066,19 @@ const Report = () => {
|
||||||
}
|
}
|
||||||
|
|
||||||
},
|
},
|
||||||
{ title: 'Conversas iniciadas', field: 'startedByAgent', },
|
{ title: i18n.t('reports.listColumns.column3_3'), field: 'startedByAgent', },
|
||||||
{ title: 'Conversas recebidas', field: 'startedByClient' },
|
{ title: i18n.t('reports.listColumns.column3_4'), field: 'startedByClient' },
|
||||||
{ title: `Conversas finalizadas`, field: 'closedChat' },
|
{ title: i18n.t('reports.listColumns.column3_5'), field: 'closedChat' },
|
||||||
{ title: `Tempo médio de espera`, field: 'avgChatWaitingTime' },
|
{ title: i18n.t('reports.listColumns.column3_6'), field: 'avgChatWaitingTime' },
|
||||||
{ title: 'Aguardando', field: 'pendingChat' }
|
{ title: i18n.t('reports.listColumns.column3_7'), field: 'pendingChat' }
|
||||||
|
|
||||||
] :
|
] :
|
||||||
|
|
||||||
[
|
[
|
||||||
|
|
||||||
{ title: 'Unidade', field: 'name', cellStyle: { whiteSpace: 'nowrap' }, },
|
{ title: i18n.t('reports.listColumns.column3_1'), field: 'name', cellStyle: { whiteSpace: 'nowrap' }, },
|
||||||
{
|
{
|
||||||
title: 'Fila', field: 'queueName',
|
title: i18n.t('reports.listColumns.column3_2'), field: 'queueName',
|
||||||
cellStyle: (evt, rowData) => {
|
cellStyle: (evt, rowData) => {
|
||||||
return {
|
return {
|
||||||
whiteSpace: 'nowrap',
|
whiteSpace: 'nowrap',
|
||||||
|
@ -1088,10 +1088,10 @@ const Report = () => {
|
||||||
}
|
}
|
||||||
|
|
||||||
},
|
},
|
||||||
{ title: 'Conversas iniciadas', field: 'startedByAgent', },
|
{ title: i18n.t('reports.listColumns.column3_3'), field: 'startedByAgent', },
|
||||||
{ title: 'Conversas respondidas', field: 'startedByClient' },
|
{ title: i18n.t('reports.listColumns.column3_4'), field: 'startedByClient' },
|
||||||
{ title: `Conversas finalizadas`, field: 'closedChat' },
|
{ title: i18n.t('reports.listColumns.column3_5'), field: 'closedChat' },
|
||||||
{ title: 'Aguardando', field: 'pendingChat' }
|
{ title: i18n.t('reports.listColumns.column3_7'), field: 'pendingChat' }
|
||||||
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
|
@ -217,7 +217,7 @@ const StatusChatEnd = () => {
|
||||||
<ConfirmationModal
|
<ConfirmationModal
|
||||||
title={
|
title={
|
||||||
deletingStatusChatEnds &&
|
deletingStatusChatEnds &&
|
||||||
`Você tem certeza que quer excluir esta Status de encerramento: ${deletingStatusChatEnds.name
|
`${i18n.t('dashboard.titles.confirmationModal')} ${deletingStatusChatEnds.name
|
||||||
}?`
|
}?`
|
||||||
}
|
}
|
||||||
open={confirmModalOpen}
|
open={confirmModalOpen}
|
||||||
|
@ -233,7 +233,7 @@ const StatusChatEnd = () => {
|
||||||
statusChatEndId={selectedStatusChatEnd && selectedStatusChatEnd.id}
|
statusChatEndId={selectedStatusChatEnd && selectedStatusChatEnd.id}
|
||||||
></StatusChatEndModal>
|
></StatusChatEndModal>
|
||||||
<MainHeader>
|
<MainHeader>
|
||||||
<Title>{"Status de encerramento"}</Title>
|
<Title>{i18n.t('dashboard.titles.status')}</Title>
|
||||||
<MainHeaderButtonsWrapper>
|
<MainHeaderButtonsWrapper>
|
||||||
<TextField
|
<TextField
|
||||||
placeholder={i18n.t("quickAnswers.searchPlaceholder")}
|
placeholder={i18n.t("quickAnswers.searchPlaceholder")}
|
||||||
|
@ -266,13 +266,13 @@ const StatusChatEnd = () => {
|
||||||
<TableHead>
|
<TableHead>
|
||||||
<TableRow>
|
<TableRow>
|
||||||
<TableCell align="center">
|
<TableCell align="center">
|
||||||
{"Status de encerramento"}
|
{i18n.t('dashboard.titles.status')}
|
||||||
</TableCell>
|
</TableCell>
|
||||||
<TableCell align="center">
|
<TableCell align="center">
|
||||||
{"Mensagem de despedida"}
|
{i18n.t('quickAnswers.table.farewellMessage')}
|
||||||
</TableCell>
|
</TableCell>
|
||||||
<TableCell align="center">
|
<TableCell align="center">
|
||||||
{"Padrão"}
|
{i18n.t('quickAnswers.table.standard')}
|
||||||
</TableCell>
|
</TableCell>
|
||||||
<TableCell align="center">
|
<TableCell align="center">
|
||||||
{i18n.t("quickAnswers.table.actions")}
|
{i18n.t("quickAnswers.table.actions")}
|
||||||
|
|
|
@ -59,6 +59,45 @@ const messages = {
|
||||||
column3: 'Closed by Queue',
|
column3: 'Closed by Queue',
|
||||||
column4: 'Online time',
|
column4: 'Online time',
|
||||||
column5: 'Actions',
|
column5: 'Actions',
|
||||||
|
},
|
||||||
|
titles: {
|
||||||
|
selectQueues: 'Queues',
|
||||||
|
waiting: 'In Waiting',
|
||||||
|
inService: 'In Service',
|
||||||
|
users: 'Users',
|
||||||
|
name: 'Name',
|
||||||
|
attendant: 'Attendant',
|
||||||
|
dialogContentText: 'Choose a reporting option below.',
|
||||||
|
transfer: 'Transfer to other queues',
|
||||||
|
title: 'Closing tickets',
|
||||||
|
confirmationModal: 'Are you sure you want to remove this closing state: ',
|
||||||
|
status: 'Closing status',
|
||||||
|
listUser: 'List user',
|
||||||
|
user: 'user',
|
||||||
|
notEnter: 'Did not enter',
|
||||||
|
notEnterToday: 'Did not enter today',
|
||||||
|
ticketsClosed: 'Closed'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
reportOptType: {
|
||||||
|
listTitles: {
|
||||||
|
title1: 'Standard',
|
||||||
|
title2: 'Synthetic',
|
||||||
|
title3: 'Analytical'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
configModal: {
|
||||||
|
titles: {
|
||||||
|
startService: 'Start Service',
|
||||||
|
endService: 'End Service',
|
||||||
|
enableDisable: 'Enable/Disable',
|
||||||
|
outOfHours: 'Message outside opening hours',
|
||||||
|
outOfHoursSaturday: 'Message outside opening hours Saturday',
|
||||||
|
forTheWeekend: 'Weekend message',
|
||||||
|
holiday: 'Holiday date',
|
||||||
|
holidayMessage: 'Message for holidays',
|
||||||
|
inactivityMessage: 'Message due to lack of service activity',
|
||||||
|
save: 'Save'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
connections: {
|
connections: {
|
||||||
|
@ -295,7 +334,8 @@ const messages = {
|
||||||
administration: "Administration",
|
administration: "Administration",
|
||||||
users: "Users",
|
users: "Users",
|
||||||
settings: "Settings",
|
settings: "Settings",
|
||||||
schedules: "Schedules"
|
schedules: "Schedules",
|
||||||
|
reports: "Reports"
|
||||||
},
|
},
|
||||||
appBar: {
|
appBar: {
|
||||||
user: {
|
user: {
|
||||||
|
@ -309,7 +349,9 @@ const messages = {
|
||||||
title0_1: "Reminders/Schedulings",
|
title0_1: "Reminders/Schedulings",
|
||||||
title1_1: "Calls by attendants",
|
title1_1: "Calls by attendants",
|
||||||
title2_1: "Whatsapp chat",
|
title2_1: "Whatsapp chat",
|
||||||
title3_1: "Users online/offline"
|
title3_1: "Users online/offline",
|
||||||
|
title4_1: "Attendance report by numbers",
|
||||||
|
title5_1: "Queue service report"
|
||||||
},
|
},
|
||||||
listColumns: {
|
listColumns: {
|
||||||
column0_1: 'Actions',
|
column0_1: 'Actions',
|
||||||
|
@ -330,13 +372,22 @@ const messages = {
|
||||||
column1_9: 'Closing status',
|
column1_9: 'Closing status',
|
||||||
|
|
||||||
column2_1: 'Attendant/Client',
|
column2_1: 'Attendant/Client',
|
||||||
|
|
||||||
|
column3_1: 'Unit',
|
||||||
|
column3_2: 'Row',
|
||||||
|
column3_3: 'Conversations started',
|
||||||
|
column3_4: 'Incoming conversations',
|
||||||
|
column3_5: 'Finished conversations',
|
||||||
|
column3_6: 'Average waiting time',
|
||||||
|
column3_7: 'Waiting',
|
||||||
},
|
},
|
||||||
search: 'Number/Name...',
|
search: 'Number/Name...',
|
||||||
dateStart: 'Start date',
|
dateStart: 'Start date',
|
||||||
dateEnd: 'End date',
|
dateEnd: 'End date',
|
||||||
user: 'User'
|
user: 'User',
|
||||||
|
onlineTime: 'Online time',
|
||||||
|
inService: 'In service',
|
||||||
|
finished: 'Finished'
|
||||||
},
|
},
|
||||||
notifications: {
|
notifications: {
|
||||||
noTickets: "No notifications.",
|
noTickets: "No notifications.",
|
||||||
|
@ -367,6 +418,8 @@ const messages = {
|
||||||
shortcut: "Shortcut",
|
shortcut: "Shortcut",
|
||||||
message: "Quick Reply",
|
message: "Quick Reply",
|
||||||
actions: "Actions",
|
actions: "Actions",
|
||||||
|
farewellMessage: "Farewell message",
|
||||||
|
standard: "Standard"
|
||||||
},
|
},
|
||||||
buttons: {
|
buttons: {
|
||||||
add: "Add Quick Reply",
|
add: "Add Quick Reply",
|
||||||
|
|
|
@ -61,6 +61,46 @@ const messages = {
|
||||||
column3: 'Cerrado por cola',
|
column3: 'Cerrado por cola',
|
||||||
column4: 'Tiempo Online',
|
column4: 'Tiempo Online',
|
||||||
column5: 'Actions',
|
column5: 'Actions',
|
||||||
|
},
|
||||||
|
titles: {
|
||||||
|
selectQueues: 'Colas',
|
||||||
|
waiting: 'En espera',
|
||||||
|
inService: 'En Atendimiento',
|
||||||
|
users: 'Usuarios',
|
||||||
|
name: 'Nombre',
|
||||||
|
attendant: 'Agente',
|
||||||
|
dialogTitle: 'Reportes',
|
||||||
|
dialogContentText: 'Escoja una opción de reporte abajo.',
|
||||||
|
transfer: 'Transferir para otras Colas',
|
||||||
|
title: 'Cierre de Tickets',
|
||||||
|
confirmationModal: 'Está seguro de que desea eliminar este estado de cierre: ',
|
||||||
|
status: 'Status de cierre',
|
||||||
|
listUser: 'Lista de Usuarios',
|
||||||
|
user: 'Usuario',
|
||||||
|
notEnter: 'No ingresó',
|
||||||
|
notEnterToday: 'No ingresó hoy',
|
||||||
|
ticketsClosed: 'Cerrados'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
reportOptType: {
|
||||||
|
listTitles: {
|
||||||
|
title1: 'Patrón',
|
||||||
|
title2: 'Sintético',
|
||||||
|
title3: 'Analítico'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
configModal: {
|
||||||
|
titles: {
|
||||||
|
startService: 'Inicio atención',
|
||||||
|
endService: 'Fin atención',
|
||||||
|
enableDisable: 'Activar/Desactivar',
|
||||||
|
outOfHours: 'Mensaje fuera de horario de atención',
|
||||||
|
outOfHoursSaturday: 'Mensaje fuera del horario de atención sábado',
|
||||||
|
forTheWeekend: 'Mensaje fin de semana',
|
||||||
|
holiday: 'Día Festivo',
|
||||||
|
holidayMessage: 'Mensaje para Festivos',
|
||||||
|
inactivityMessage: 'Mensaje por falta de actividad',
|
||||||
|
save: 'Guardar'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
connections: {
|
connections: {
|
||||||
|
@ -237,7 +277,7 @@ const messages = {
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
ticketsQueueSelect: {
|
ticketsQueueSelect: {
|
||||||
placeholder: "Linhas",
|
placeholder: "Líneas",
|
||||||
},
|
},
|
||||||
tickets: {
|
tickets: {
|
||||||
toasts: {
|
toasts: {
|
||||||
|
@ -296,11 +336,13 @@ const messages = {
|
||||||
tickets: "Tickets",
|
tickets: "Tickets",
|
||||||
contacts: "Contactos",
|
contacts: "Contactos",
|
||||||
quickAnswers: "Respuestas rápidas",
|
quickAnswers: "Respuestas rápidas",
|
||||||
queues: "Linhas",
|
queues: "Líneas",
|
||||||
administration: "Administración",
|
administration: "Administración",
|
||||||
users: "Usuarios",
|
users: "Usuarios",
|
||||||
settings: "Configuración",
|
settings: "Configuración",
|
||||||
schedules: "Recordatorio"
|
schedules: "Recordatorio",
|
||||||
|
reports: "Reportes",
|
||||||
|
campain: "Campañas"
|
||||||
},
|
},
|
||||||
appBar: {
|
appBar: {
|
||||||
user: {
|
user: {
|
||||||
|
@ -312,9 +354,11 @@ const messages = {
|
||||||
reports: {
|
reports: {
|
||||||
listTitles: {
|
listTitles: {
|
||||||
title0_1: "Recordatorios/Programación",
|
title0_1: "Recordatorios/Programación",
|
||||||
title1_1: "Llamadas de asistentes",
|
title1_1: "Atención por agentes",
|
||||||
title2_1: "Chat de whatsapp",
|
title2_1: "Chat de whatsapp",
|
||||||
title3_1: "Usuarios online/offline"
|
title3_1: "Usuarios online/offline",
|
||||||
|
title4_1: "Reporte de atención por números",
|
||||||
|
title5_1: "Reporte de atención por colas"
|
||||||
},
|
},
|
||||||
listColumns: {
|
listColumns: {
|
||||||
column0_1: 'Acción',
|
column0_1: 'Acción',
|
||||||
|
@ -335,18 +379,28 @@ const messages = {
|
||||||
column1_9: 'Estado de cierre',
|
column1_9: 'Estado de cierre',
|
||||||
|
|
||||||
column2_1: 'Secretario/Cliente',
|
column2_1: 'Secretario/Cliente',
|
||||||
|
|
||||||
|
column3_1: 'Unidad',
|
||||||
|
column3_2: 'Cola',
|
||||||
|
column3_3: 'Chats iniciados',
|
||||||
|
column3_4: 'Chats Recibidos',
|
||||||
|
column3_5: 'Chats Finalizados',
|
||||||
|
column3_6: 'Tiempo medio de espera',
|
||||||
|
column3_7: 'En Espera',
|
||||||
},
|
},
|
||||||
search: 'Número/Nombre...',
|
search: 'Número/Nombre...',
|
||||||
dateStart: 'Fecha de inicio',
|
dateStart: 'Fecha de inicio',
|
||||||
dateEnd: 'Fecha final',
|
dateEnd: 'Fecha final',
|
||||||
user: 'Usuario'
|
user: 'Usuario',
|
||||||
|
onlineTime: 'Tiempo online',
|
||||||
|
inService: 'En servicio',
|
||||||
|
finished: 'Finalizado'
|
||||||
},
|
},
|
||||||
notifications: {
|
notifications: {
|
||||||
noTickets: "Sin notificaciones.",
|
noTickets: "Sin notificaciones.",
|
||||||
},
|
},
|
||||||
queues: {
|
queues: {
|
||||||
title: "Linhas",
|
title: "Líneas",
|
||||||
table: {
|
table: {
|
||||||
name: "Nombre",
|
name: "Nombre",
|
||||||
color: "Color",
|
color: "Color",
|
||||||
|
@ -363,7 +417,7 @@ const messages = {
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
queueSelect: {
|
queueSelect: {
|
||||||
inputLabel: "Linhas",
|
inputLabel: "Líneas",
|
||||||
},
|
},
|
||||||
quickAnswers: {
|
quickAnswers: {
|
||||||
title: "Respuestas rápidas",
|
title: "Respuestas rápidas",
|
||||||
|
@ -371,6 +425,8 @@ const messages = {
|
||||||
shortcut: "Atajo",
|
shortcut: "Atajo",
|
||||||
message: "Respuesta rápida",
|
message: "Respuesta rápida",
|
||||||
actions: "Acciones",
|
actions: "Acciones",
|
||||||
|
farewellMessage: "Mensaje de despedida",
|
||||||
|
standard: "Patrón"
|
||||||
},
|
},
|
||||||
buttons: {
|
buttons: {
|
||||||
add: "Agregar respuesta rápida",
|
add: "Agregar respuesta rápida",
|
||||||
|
|
|
@ -59,6 +59,46 @@ const messages = {
|
||||||
column3: 'Fechados Por Fila',
|
column3: 'Fechados Por Fila',
|
||||||
column4: 'Tempo Online',
|
column4: 'Tempo Online',
|
||||||
column5: 'Ações',
|
column5: 'Ações',
|
||||||
|
},
|
||||||
|
titles: {
|
||||||
|
selectQueues: 'Filas',
|
||||||
|
waiting: 'Em espera',
|
||||||
|
inService: 'Em Atendimento',
|
||||||
|
users: 'Usuários',
|
||||||
|
name: 'Nome',
|
||||||
|
attendant: 'Atendente',
|
||||||
|
dialogTitle: 'Relatórios',
|
||||||
|
dialogContentText: 'Escolha uma opção de relatório abaixo.',
|
||||||
|
transfer: 'Transferir para outras filas',
|
||||||
|
title: 'Tickets encerramento',
|
||||||
|
confirmationModal: 'Você tem certeza que quer excluir esta Status de encerramento: ' ,
|
||||||
|
status: 'Status de encerramento',
|
||||||
|
listUser: 'Lista de Usuarios',
|
||||||
|
user: 'Usuario',
|
||||||
|
notEnter: 'Não entrou',
|
||||||
|
notEnterToday: 'Não entrou hoje',
|
||||||
|
ticketsClosed: 'Fechados'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
reportOptType: {
|
||||||
|
listTitles: {
|
||||||
|
title1: 'Padrão',
|
||||||
|
title2: 'Sintético',
|
||||||
|
title3: 'Analítico'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
configModal: {
|
||||||
|
titles: {
|
||||||
|
startService: 'Início atendimento',
|
||||||
|
endService: 'Fim atendimento',
|
||||||
|
enableDisable: 'Ativar/Desativar',
|
||||||
|
outOfHours: 'Mensagem fora do horário de atendimento',
|
||||||
|
outOfHoursSaturday: 'Mensagem fora do horário de atendimento sábado',
|
||||||
|
forTheWeekend: 'Mensagem fim de semana',
|
||||||
|
holiday: 'Data do feriado',
|
||||||
|
holidayMessage: 'Mensagem para feriados',
|
||||||
|
inactivityMessage: 'Mensagem por falta de atividade no atendimento',
|
||||||
|
save: 'Salvar'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
connections: {
|
connections: {
|
||||||
|
@ -299,7 +339,9 @@ const messages = {
|
||||||
administration: "Administração",
|
administration: "Administração",
|
||||||
users: "Usuários",
|
users: "Usuários",
|
||||||
settings: "Configurações",
|
settings: "Configurações",
|
||||||
schedules: "Lembretes"
|
schedules: "Lembretes",
|
||||||
|
reports: "Relatórios",
|
||||||
|
campaign: "Campanha"
|
||||||
},
|
},
|
||||||
appBar: {
|
appBar: {
|
||||||
user: {
|
user: {
|
||||||
|
@ -337,13 +379,21 @@ const messages = {
|
||||||
|
|
||||||
column2_1: 'Atendente/Cliente',
|
column2_1: 'Atendente/Cliente',
|
||||||
|
|
||||||
|
column3_1: 'Unidade',
|
||||||
|
column3_2: 'Fila',
|
||||||
|
column3_3: 'Conversas iniciadas',
|
||||||
|
column3_4: 'Conversas recebidas',
|
||||||
|
column3_5: 'Conversas finalizadas',
|
||||||
|
column3_6: 'Tempo médio de espera',
|
||||||
|
column3_7: 'Aguardando',
|
||||||
},
|
},
|
||||||
search: 'Numer/Nome...',
|
search: 'Numer/Nome...',
|
||||||
dateStart: 'Data início',
|
dateStart: 'Data início',
|
||||||
dateEnd: 'Data fim',
|
dateEnd: 'Data fim',
|
||||||
user: 'Usuário'
|
user: 'Usuário',
|
||||||
|
onlineTime: 'Tempo online',
|
||||||
|
inService: 'Em atendimento',
|
||||||
|
finished: 'Finalizado'
|
||||||
},
|
},
|
||||||
notifications: {
|
notifications: {
|
||||||
noTickets: "Nenhuma notificação.",
|
noTickets: "Nenhuma notificação.",
|
||||||
|
@ -374,6 +424,8 @@ const messages = {
|
||||||
shortcut: "Atalho",
|
shortcut: "Atalho",
|
||||||
message: "Resposta Rápida",
|
message: "Resposta Rápida",
|
||||||
actions: "Ações",
|
actions: "Ações",
|
||||||
|
farewellMessage: "Mensagem de despedida",
|
||||||
|
standard: "Padrão"
|
||||||
},
|
},
|
||||||
buttons: {
|
buttons: {
|
||||||
add: "Adicionar Resposta Rápida",
|
add: "Adicionar Resposta Rápida",
|
||||||
|
|
Loading…
Reference in New Issue