pupilsList.js 1.1 KB

123456789101112131415161718192021222324252627282930
  1. /**
  2. * ПОЛУЧЕНИЕ СПИСКА УЧАЩИХСЯ ОДНОГО КЛАССА
  3. * Copyright © 2019, А.М.Гольдин. Modified BSD License
  4. */
  5. "use strict";
  6. // Аргумент - ["10Б"]
  7. // Возвращает [["Иванов Иван", "ivanov"], ...] или "none"
  8. // Заблокированные учащиеся класса тоже возвращаются в общем списке
  9. module.exports = async (args) => {
  10. try {
  11. let clName = args[0].substr(0, 3).trim();
  12. if (!clName) return "none";
  13. if (!/^\d{1,2}[A-Я]{1}$/.test(clName)) return "none";
  14. let resp = [];
  15. // Идем циклом по всем ученикам данного класса
  16. let pupilsArr = await dbFind("pupils", {Uclass: clName});
  17. if (!pupilsArr.length) return "none";
  18. pupilsArr.sort((p1, p2) => p1.Ufamil.localeCompare(p2.Ufamil, "ru"));
  19. for (let pupil of pupilsArr)
  20. resp.push([`${pupil.Ufamil} ${pupil.Uname}`, pupil.Ulogin]);
  21. return JSON.stringify(resp);
  22. }
  23. catch(e) {return "none";}
  24. };