MCPcopy Create free account
hub / github.com/RealDevSquad/website-backend / fetchSkillLevelTask

Function fetchSkillLevelTask

models/tasks.js:516–539  ·  view source on GitHub ↗
(userId)

Source from the content-addressed store, hash-verified

514 */
515
516const fetchSkillLevelTask = async (userId) => {
517 try {
518 let task;
519 const data = await ItemModel.where("itemId", "==", userId).where("tagType", "==", "SKILL").limit(10).get();
520 const userSkills = [];
521
522 if (data.empty) {
523 task = await getNewTask();
524 } else {
525 data.forEach((doc) => {
526 const skill = doc.data().tagName;
527 const level = doc.data().levelValue;
528 userSkills.push({ skill, level });
529 });
530 const { skill, level } = userUtils.getLowestLevelSkill(userSkills);
531 task = await getNewTask(skill, level);
532 }
533
534 return task;
535 } catch (err) {
536 logger.error("error getting tasks", err);
537 throw err;
538 }
539};
540
541/**
542 *

Callers 1

assignTaskFunction · 0.85

Calls 2

getNewTaskFunction · 0.85
getMethod · 0.80

Tested by

no test coverage detected