| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- const {
- OnboardingDataCollection,
- } = require('../../models/OnboardingDataCollection')
- const OError = require('@overleaf/o-error')
- async function getOnboardingDataCollection(userId) {
- try {
- return await OnboardingDataCollection.findOne({ _id: userId }).exec()
- } catch (error) {
- throw OError.tag(error, 'Failed to get OnboardingDataCollection')
- }
- }
- async function upsertOnboardingDataCollection({
- userId,
- firstName,
- lastName,
- usedLatex,
- primaryOccupation,
- companyDivisionDepartment,
- companyJobTitle,
- governmentJobTitle,
- institutionName,
- otherJobTitle,
- nonprofitDivisionDepartment,
- nonprofitJobTitle,
- role,
- subjectArea,
- updatedAt,
- }) {
- const odc = await OnboardingDataCollection.findOneAndUpdate(
- { _id: userId },
- {
- firstName,
- lastName,
- usedLatex,
- primaryOccupation,
- companyDivisionDepartment,
- companyJobTitle,
- governmentJobTitle,
- institutionName,
- otherJobTitle,
- nonprofitDivisionDepartment,
- nonprofitJobTitle,
- role,
- subjectArea,
- updatedAt,
- },
- { upsert: true }
- )
- return odc
- }
- function deleteOnboardingDataCollection(id) {
- return OnboardingDataCollection.deleteOne({ _id: id })
- }
- module.exports = {
- getOnboardingDataCollection,
- upsertOnboardingDataCollection,
- deleteOnboardingDataCollection,
- }
|