Compare commits
2 Commits
bfae2956a5
...
42073cc821
Author | SHA1 | Date |
---|---|---|
adriano | 42073cc821 | |
adriano | c9750222c0 |
|
@ -264,7 +264,8 @@ export const remoteTicketCreation = async (
|
|||
whatsappId,
|
||||
0,
|
||||
undefined,
|
||||
queueId
|
||||
queueId,
|
||||
true
|
||||
);
|
||||
botSendMessage(ticket, `${msg}`);
|
||||
}
|
||||
|
|
|
@ -0,0 +1,15 @@
|
|||
import { QueryInterface, DataTypes } from "sequelize";
|
||||
|
||||
module.exports = {
|
||||
up: (queryInterface: QueryInterface) => {
|
||||
return queryInterface.addColumn("Tickets", "isRemote", {
|
||||
type: DataTypes.BOOLEAN,
|
||||
allowNull: true,
|
||||
defaultValue: false
|
||||
});
|
||||
},
|
||||
|
||||
down: (queryInterface: QueryInterface) => {
|
||||
return queryInterface.removeColumn("Tickets", "isRemote");
|
||||
}
|
||||
};
|
|
@ -1,22 +0,0 @@
|
|||
import { QueryInterface } from "sequelize";
|
||||
|
||||
module.exports = {
|
||||
up: (queryInterface: QueryInterface) => {
|
||||
return queryInterface.bulkInsert(
|
||||
"Settings",
|
||||
[
|
||||
{
|
||||
key: "filterMediasByType",
|
||||
value: "disabled",
|
||||
createdAt: new Date(),
|
||||
updatedAt: new Date()
|
||||
}
|
||||
],
|
||||
{}
|
||||
);
|
||||
},
|
||||
|
||||
down: (queryInterface: QueryInterface) => {
|
||||
return queryInterface.bulkDelete("Settings", {});
|
||||
}
|
||||
};
|
|
@ -5,10 +5,11 @@ export default function quickAnswearByQueueFiltered(
|
|||
quickAnswers: QuickAnswer[]
|
||||
) {
|
||||
let auxQuickAnswear = [];
|
||||
let repet: any[] = [];
|
||||
const userQueues = queueIds.map((uq: any) => uq.queueId);
|
||||
|
||||
for (const quickAnswer of quickAnswers) {
|
||||
const { queues } = quickAnswer;
|
||||
const { queues, id } = quickAnswer;
|
||||
|
||||
if (queues.length == 0) {
|
||||
auxQuickAnswear.push(quickAnswer);
|
||||
|
@ -17,6 +18,9 @@ export default function quickAnswearByQueueFiltered(
|
|||
|
||||
for (const q of queues) {
|
||||
if (userQueues.includes(q.id)) {
|
||||
if (repet.includes(id)) continue;
|
||||
repet.push(id);
|
||||
|
||||
auxQuickAnswear.push(quickAnswer);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -43,6 +43,10 @@ class Ticket extends Model<Ticket> {
|
|||
@Column
|
||||
isGroup: boolean;
|
||||
|
||||
@Default(false)
|
||||
@Column
|
||||
isRemote: boolean;
|
||||
|
||||
@ForeignKey(() => StatusChatEnd)
|
||||
@Column
|
||||
statusChatEndId: number;
|
||||
|
|
|
@ -14,7 +14,8 @@ const FindOrCreateTicketService = async (
|
|||
whatsappId: number,
|
||||
unreadMessages: number,
|
||||
groupContact?: Contact,
|
||||
queueId?: number | string
|
||||
queueId?: number | string,
|
||||
isRemote?: boolean
|
||||
): Promise<Ticket> => {
|
||||
try {
|
||||
let ticket;
|
||||
|
@ -106,7 +107,8 @@ const FindOrCreateTicketService = async (
|
|||
queueId,
|
||||
unreadMessages,
|
||||
whatsappId,
|
||||
phoneNumberId
|
||||
phoneNumberId,
|
||||
isRemote
|
||||
});
|
||||
}
|
||||
|
||||
|
|
|
@ -21,6 +21,7 @@ interface TicketData {
|
|||
statusChatEndId?: number;
|
||||
unreadMessages?: number;
|
||||
whatsappId?: string | number;
|
||||
isRemote?: boolean;
|
||||
}
|
||||
|
||||
interface Request {
|
||||
|
@ -48,7 +49,8 @@ const UpdateTicketService = async ({
|
|||
statusChatEnd,
|
||||
unreadMessages,
|
||||
statusChatEndId,
|
||||
whatsappId
|
||||
whatsappId,
|
||||
isRemote
|
||||
} = ticketData;
|
||||
|
||||
const ticket = await ShowTicketService(ticketId);
|
||||
|
@ -76,7 +78,8 @@ const UpdateTicketService = async ({
|
|||
unreadMessages,
|
||||
statusChatEnd,
|
||||
statusChatEndId,
|
||||
whatsappId
|
||||
whatsappId,
|
||||
isRemote
|
||||
});
|
||||
|
||||
await ticket.reload();
|
||||
|
|
|
@ -70,11 +70,10 @@ const PositionModal = ({
|
|||
}
|
||||
|
||||
const [position, setPosition] = useState(initialState)
|
||||
const [selectedQueueIds, setSelectedQueueIds] = useState([])
|
||||
const { user, setting, getSettingValue } = useContext(AuthContext)
|
||||
// const [selectedQueueIds, setSelectedQueueIds] = useState([])
|
||||
const { setting } = useContext(AuthContext)
|
||||
const [settings, setSettings] = useState(setting)
|
||||
|
||||
// console.log('USER: ', JSON.stringify(user, null, 6))
|
||||
|
||||
useEffect(() => {
|
||||
return () => {
|
||||
|
@ -121,11 +120,11 @@ const PositionModal = ({
|
|||
if (isMounted.current) {
|
||||
setPosition(data)
|
||||
|
||||
if (data?.queues) {
|
||||
console.log('data.queues: ', data.queues)
|
||||
const quickQueueIds = data.queues?.map((queue) => queue.id)
|
||||
setSelectedQueueIds(quickQueueIds)
|
||||
}
|
||||
// if (data?.queues) {
|
||||
// console.log('data.queues: ', data.queues)
|
||||
// const quickQueueIds = data.queues?.map((queue) => queue.id)
|
||||
// setSelectedQueueIds(quickQueueIds)
|
||||
// }
|
||||
}
|
||||
} catch (err) {
|
||||
toastError(err)
|
||||
|
@ -203,7 +202,7 @@ const PositionModal = ({
|
|||
fullWidth
|
||||
/>
|
||||
</div>
|
||||
<div>
|
||||
{/* <div>
|
||||
{
|
||||
((settings && getSettingValue('quickAnswerByQueue') === 'enabled')) && (
|
||||
<QueueSelect
|
||||
|
@ -215,7 +214,7 @@ const PositionModal = ({
|
|||
/>
|
||||
)
|
||||
}
|
||||
</div>
|
||||
</div> */}
|
||||
</DialogContent>
|
||||
<DialogActions>
|
||||
<Button
|
||||
|
|
|
@ -81,8 +81,6 @@ const QuickAnswersModal = ({
|
|||
const { user, setting, getSettingValue } = useContext(AuthContext)
|
||||
const [settings, setSettings] = useState(setting)
|
||||
|
||||
// console.log('USER: ', JSON.stringify(user, null, 6))
|
||||
|
||||
useEffect(() => {
|
||||
return () => {
|
||||
isMounted.current = false
|
||||
|
@ -93,6 +91,14 @@ const QuickAnswersModal = ({
|
|||
setSettings(setting)
|
||||
}, [setting])
|
||||
|
||||
useEffect(() => {
|
||||
|
||||
setSelectedQueueIds([])
|
||||
if (open && selectedQueueIds.length === 0 && !quickAnswerId) {
|
||||
setSelectedQueueIds(user.queues.map(q => q.id))
|
||||
}
|
||||
|
||||
}, [open,])
|
||||
|
||||
useEffect(() => {
|
||||
const socket = openSocket(process.env.REACT_APP_BACKEND_URL)
|
||||
|
@ -114,6 +120,9 @@ const QuickAnswersModal = ({
|
|||
}, [])
|
||||
|
||||
useEffect(() => {
|
||||
|
||||
// setSelectedQueueIds([])
|
||||
|
||||
const fetchQuickAnswer = async () => {
|
||||
if (initialValues) {
|
||||
setQuickAnswer((prevState) => {
|
||||
|
@ -121,7 +130,9 @@ const QuickAnswersModal = ({
|
|||
})
|
||||
}
|
||||
|
||||
if (!quickAnswerId) return
|
||||
if (!quickAnswerId) {
|
||||
return
|
||||
}
|
||||
|
||||
try {
|
||||
const { data } = await api.get(`/quickAnswers/${quickAnswerId}`)
|
||||
|
@ -129,7 +140,6 @@ const QuickAnswersModal = ({
|
|||
setQuickAnswer(data)
|
||||
|
||||
if (data?.queues) {
|
||||
console.log('data.queues: ', data.queues)
|
||||
const quickQueueIds = data.queues?.map((queue) => queue.id)
|
||||
setSelectedQueueIds(quickQueueIds)
|
||||
}
|
||||
|
|
|
@ -246,7 +246,17 @@ const TicketListItem = ({ ticket }) => {
|
|||
loading={loading}
|
||||
onClick={e => handleAcepptTicket(ticket.id)}
|
||||
>
|
||||
{i18n.t("ticketsList.buttons.accept")}
|
||||
{/* {i18n.t("ticketsList.buttons.accept")} */}
|
||||
<>
|
||||
{/* {i18n.t("ticketsList.buttons.accept")}<br />CAMPANHA */}
|
||||
|
||||
{ticket?.isRemote ? (
|
||||
<>{i18n.t("ticketsList.buttons.accept")}<br />CAMPANHA</>
|
||||
) : (
|
||||
<>{i18n.t("ticketsList.buttons.accept")}</>
|
||||
)}
|
||||
|
||||
</>
|
||||
</ButtonWithSpinner>
|
||||
)}
|
||||
</ListItem>
|
||||
|
|
Loading…
Reference in New Issue