2022-01-06 01:26:15 +00:00
|
|
|
import AppError from "../../errors/AppError";
|
|
|
|
import Setting from "../../models/Setting";
|
|
|
|
|
|
|
|
interface Request {
|
|
|
|
key: string;
|
|
|
|
value: string;
|
2024-04-23 22:51:11 +00:00
|
|
|
obj?: string;
|
2022-01-06 01:26:15 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
const UpdateSettingService = async ({
|
|
|
|
key,
|
2024-04-23 22:51:11 +00:00
|
|
|
value,
|
|
|
|
obj
|
2022-01-06 01:26:15 +00:00
|
|
|
}: Request): Promise<Setting | undefined> => {
|
2024-04-23 22:51:11 +00:00
|
|
|
console.log("key: ", key, " | value: ", value, " | obj: ", obj);
|
2022-01-06 01:26:15 +00:00
|
|
|
|
2023-04-20 18:48:42 +00:00
|
|
|
try {
|
|
|
|
const setting = await Setting.findOne({
|
|
|
|
where: { key }
|
|
|
|
});
|
|
|
|
|
|
|
|
if (!setting) {
|
|
|
|
throw new AppError("ERR_NO_SETTING_FOUND", 404);
|
|
|
|
}
|
2022-01-06 01:26:15 +00:00
|
|
|
|
2024-04-23 22:51:11 +00:00
|
|
|
if (obj) {
|
|
|
|
obj = JSON.stringify(obj);
|
|
|
|
}
|
|
|
|
await setting.update({ value, obj });
|
2022-01-06 01:26:15 +00:00
|
|
|
|
2024-04-23 22:51:11 +00:00
|
|
|
await setting.reload();
|
2023-04-20 18:48:42 +00:00
|
|
|
|
2024-04-23 22:51:11 +00:00
|
|
|
return setting;
|
2023-04-20 18:48:42 +00:00
|
|
|
} catch (error: any) {
|
2024-04-23 22:51:11 +00:00
|
|
|
console.error("===> Error on UpdateSettingService.ts file: \n", error);
|
2023-04-20 18:48:42 +00:00
|
|
|
throw new AppError(error.message);
|
|
|
|
}
|
2022-01-06 01:26:15 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
export default UpdateSettingService;
|