sunrise-cms/database/addContractFeeCategory.ts

43 lines
928 B
TypeScript

import sqlite from 'better-sqlite3'
import { sunriseDB } from '../helpers/database.helpers.js'
import addContractFee from './addContractFee.js'
import { getFeeCategory } from './getFeeCategories.js'
export interface AddContractCategoryForm {
contractId: number | string
feeCategoryId: number | string
}
export default async function addContractFeeCategory(
addFeeCategoryForm: AddContractCategoryForm,
user: User
): Promise<number> {
const database = sqlite(sunriseDB)
const feeCategory = getFeeCategory(addFeeCategoryForm.feeCategoryId, database)
let addedFeeCount = 0
for (const fee of feeCategory?.fees ?? []) {
const success = await addContractFee(
{
contractId: addFeeCategoryForm.contractId,
feeId: fee.feeId,
quantity: 1
},
user,
database
)
if (success) {
addedFeeCount += 1
}
}
database.close()
return addedFeeCount
}