2023-08-08 15:09:03 +00:00
|
|
|
import AppError from "../../errors/AppError";
|
|
|
|
import SettingTicket from "../../models/SettingTicket";
|
|
|
|
|
|
|
|
interface Request {
|
|
|
|
key: string;
|
|
|
|
startTime: string;
|
|
|
|
endTime: string;
|
|
|
|
value: string;
|
|
|
|
message: string;
|
2024-02-01 20:16:56 +00:00
|
|
|
number: string;
|
2023-08-08 15:09:03 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
const updateSettingTicket = async ({
|
|
|
|
key,
|
|
|
|
startTime,
|
|
|
|
endTime,
|
|
|
|
value,
|
2024-02-01 20:16:56 +00:00
|
|
|
message,
|
|
|
|
number
|
2023-08-08 15:09:03 +00:00
|
|
|
}: Request): Promise<SettingTicket | undefined> => {
|
|
|
|
try {
|
2024-02-01 20:16:56 +00:00
|
|
|
let businessHours = await SettingTicket.findOne({ where: { key, number } });
|
2023-08-08 15:09:03 +00:00
|
|
|
|
|
|
|
if (!businessHours) {
|
2024-02-01 20:16:56 +00:00
|
|
|
// throw new AppError("ERR_NO_SETTING_FOUND", 404);
|
|
|
|
|
|
|
|
businessHours = await SettingTicket.create({
|
|
|
|
key,
|
|
|
|
startTime,
|
|
|
|
endTime,
|
|
|
|
value,
|
|
|
|
message,
|
|
|
|
number
|
|
|
|
});
|
|
|
|
return businessHours;
|
2023-08-08 15:09:03 +00:00
|
|
|
}
|
|
|
|
|
2024-02-01 20:16:56 +00:00
|
|
|
await businessHours.update(
|
|
|
|
{ startTime, endTime, message, value, number },
|
|
|
|
{ where: { key, number } }
|
|
|
|
);
|
2023-08-08 15:09:03 +00:00
|
|
|
|
|
|
|
return businessHours;
|
|
|
|
} catch (error: any) {
|
|
|
|
console.error("===> Error on UpdateSettingService.ts file: \n", error);
|
|
|
|
throw new AppError(error.message);
|
|
|
|
}
|
|
|
|
};
|
|
|
|
|
|
|
|
export default updateSettingTicket;
|