57 lines
1.2 KiB
TypeScript
57 lines
1.2 KiB
TypeScript
import { PrismaClient } from "@prisma/client";
|
|
const db = new PrismaClient();
|
|
async function del(id: number) {
|
|
return await db.job
|
|
.findUnique({
|
|
where: {
|
|
id: id,
|
|
},
|
|
select: {
|
|
id: true,
|
|
pin: true,
|
|
},
|
|
})
|
|
.then(async (job) => {
|
|
return await db.job
|
|
.update({
|
|
data: {
|
|
pin: !job?.pin,
|
|
},
|
|
where: {
|
|
id: job?.id,
|
|
},
|
|
select: {
|
|
pin: true,
|
|
},
|
|
})
|
|
.then((job) => {
|
|
return JSON.stringify({
|
|
code: 1,
|
|
status: "success",
|
|
job: {
|
|
pin: job.pin,
|
|
},
|
|
});
|
|
})
|
|
.catch((err) => {
|
|
return JSON.stringify({
|
|
code: 0,
|
|
status: "failed",
|
|
reason: err,
|
|
});
|
|
});
|
|
})
|
|
.catch((err) => {
|
|
return JSON.stringify({
|
|
code: 0,
|
|
status: "failed",
|
|
reason: err,
|
|
});
|
|
});
|
|
}
|
|
|
|
export default defineEventHandler(async (event) => {
|
|
const body = await readBody(event);
|
|
return await del(Number(body.id));
|
|
});
|