eletrotupi / tcc/ api/src/services/medicineRegimen.service.ts2984ae1cefef3e0e22e3367867ce09be0d69026e
1.1 KB | 42 lines Raw
1
import { prisma } from '@app/lib/prisma';
2
import { MedicineRegimen } from '@prisma/client';
3
import { CreateMedicineRegimenInput, UpdateMedicineRegimenInput } from '@app/schemas';
4

5
export const getMedicineRegimensByUserId = async (
6
  userId: number,
7
): Promise<MedicineRegimen[]> => {
8
  return prisma.medicineRegimen.findMany({
9
    where: { userId, active: true },
10
    orderBy: { createdAt: 'desc' },
11
  });
12
};
13

14
export const createMedicineRegimen = async (
15
  userId: number,
16
  input: CreateMedicineRegimenInput,
17
): Promise<MedicineRegimen> => {
18
  return prisma.medicineRegimen.create({
19
    data: { ...input, userId },
20
  });
21
};
22

23
export const updateMedicineRegimen = async (
24
  userId: number,
25
  id: number,
26
  input: UpdateMedicineRegimenInput,
27
): Promise<MedicineRegimen> => {
28
  return prisma.medicineRegimen.update({
29
    where: { id, userId },
30
    data: input,
31
  });
32
};
33

34
export const deactivateMedicineRegimen = async (
35
  userId: number,
36
  id: number,
37
): Promise<MedicineRegimen> => {
38
  return prisma.medicineRegimen.update({
39
    where: { id, userId },
40
    data: { active: false },
41
  });
42
};