mirror of
https://github.com/vas3k/TaxHacker.git
synced 2026-01-01 11:09:35 -06:00
feat: filters, settings, backups fix: ts compile errors feat: new dashboard, webp previews and settings feat: use webp for pdfs feat: use webp fix: analyze resets old data fix: switch to corsproxy fix: switch to free cors fix: max upload limit fix: currency conversion feat: transaction export fix: currency conversion feat: refactor settings actions feat: new loader feat: README + LICENSE doc: update readme doc: update readme doc: update readme doc: update screenshots ci: bump prisma
35 lines
812 B
TypeScript
35 lines
812 B
TypeScript
import { prisma } from "@/lib/db"
|
|
import { codeFromName } from "@/lib/utils"
|
|
import { Prisma } from "@prisma/client"
|
|
import { cache } from "react"
|
|
|
|
export const getProjects = cache(async () => {
|
|
return await prisma.project.findMany({
|
|
orderBy: {
|
|
name: "asc",
|
|
},
|
|
})
|
|
})
|
|
|
|
export const createProject = async (project: Prisma.ProjectCreateInput) => {
|
|
if (!project.code) {
|
|
project.code = codeFromName(project.name as string)
|
|
}
|
|
return await prisma.project.create({
|
|
data: project,
|
|
})
|
|
}
|
|
|
|
export const updateProject = async (code: string, project: Prisma.ProjectUpdateInput) => {
|
|
return await prisma.project.update({
|
|
where: { code },
|
|
data: project,
|
|
})
|
|
}
|
|
|
|
export const deleteProject = async (code: string) => {
|
|
return await prisma.project.delete({
|
|
where: { code },
|
|
})
|
|
}
|