| const prisma = require("../utils/prisma"); |
|
|
| const CacheData = { |
| new: async function (inputs = {}) { |
| try { |
| const cache = await prisma.cache_data.create({ |
| data: inputs, |
| }); |
| return { cache, message: null }; |
| } catch (error) { |
| console.error(error.message); |
| return { cache: null, message: error.message }; |
| } |
| }, |
|
|
| get: async function (clause = {}, limit = null, orderBy = null) { |
| try { |
| const cache = await prisma.cache_data.findFirst({ |
| where: clause, |
| ...(limit !== null ? { take: limit } : {}), |
| ...(orderBy !== null ? { orderBy } : {}), |
| }); |
| return cache || null; |
| } catch (error) { |
| console.error(error.message); |
| return null; |
| } |
| }, |
|
|
| delete: async function (clause = {}) { |
| try { |
| await prisma.cache_data.deleteMany({ |
| where: clause, |
| }); |
| return true; |
| } catch (error) { |
| console.error(error.message); |
| return false; |
| } |
| }, |
|
|
| where: async function (clause = {}, limit = null, orderBy = null) { |
| try { |
| const caches = await prisma.cache_data.findMany({ |
| where: clause, |
| ...(limit !== null ? { take: limit } : {}), |
| ...(orderBy !== null ? { orderBy } : {}), |
| }); |
| return caches; |
| } catch (error) { |
| console.error(error.message); |
| return []; |
| } |
| }, |
|
|
| count: async function (clause = {}) { |
| try { |
| const count = await prisma.cache_data.count({ |
| where: clause, |
| }); |
| return count; |
| } catch (error) { |
| console.error(error.message); |
| return 0; |
| } |
| }, |
| }; |
|
|
| module.exports = { CacheData }; |
|
|