Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const employees = {
- };
- userAvailabilityCheck(mailPoroler, 'poroler1', 'poroler2', 'poroler3')
- const poroler = new SimpleRecord('employee'); // если нет, то сначала создаем его
- poroler.get('email', mailPoroler);
- // Цикл для распечатки ключей и каждого слова из значений отдельно
- let first_name=''
- let last_name = ''
- let middle_name = ''
- let count = 0
- for (const email in employees) {
- if (employees.hasOwnProperty(email)) {
- const fullName = employees[email];
- const words = fullName.split(" ");
- first_name = words[0]
- last_name = words[1]
- middle_name = words[2] || ''
- ss.info(email)
- ss.info(first_name)
- ss.info(last_name)
- ss.info(middle_name)
- ss.info("--------------------");
- const recordID = userAvailabilityCheck(email, first_name, last_name, middle_name)
- if(!!recordID) {
- poroler.notes += `${first_name} ${last_name}: "${generateFourDigitPassword()}"\n`
- poroler.update()
- count++
- } else {
- poroler.notes += `${first_name} ${last_name}: "пользователь не создан"`
- poroler.update()
- }
- }
- }
- poroler.notes += `\n\nВСЕГО ЗАДАНО ${count} __________________________________________________________________________\n\n`
- poroler.update()
- function userAvailabilityCheck(email, first_name, last_name, middle_name) { // функция определения автора
- const username = convertToLatin(`${first_name} ${last_name}`)
- const COMPANY = '168847606792543577'
- const TIME_ZONE = '156076775207685877'
- const DATE_FORMAT = '159836398502430507'
- const LANGUAGE = '156628684306200767'
- const WORK_SHEDULE = '170551520911010095'
- const user = new SimpleRecord('employee');
- user.addQuery('email', email);
- user.setLimit(1);
- user.query();
- if (user.getRowCount() != 0) {
- user.next();
- user.username = username;
- user.first_name = first_name;
- user.last_name = last_name;
- user.middle_name = middle_name;
- user.email = email;
- user.company = COMPANY;
- user.timezone_id = TIME_ZONE;
- user.date_format_id = DATE_FORMAT;
- user.language_id = LANGUAGE;
- user.work_schedule = WORK_SHEDULE;
- user.update()
- }
- if (user.getRowCount() == 0) { // проверяем обращался ли пользователь до этого
- const newUser = new SimpleRecord('employee'); // если нет, то сначала создаем его
- newUser.username = username;
- newUser.first_name = first_name;
- newUser.last_name = last_name;
- newUser.middle_name = middle_name;
- newUser.email = email;
- newUser.company = COMPANY;
- newUser.timezone_id = TIME_ZONE;
- newUser.date_format_id = DATE_FORMAT;
- newUser.language_id = LANGUAGE;
- newUser.work_schedule = WORK_SHEDULE;
- const isInserted = newUser.insert();
- if (isInserted == 0) {
- ss.error(newUser.getErrors());
- } else {
- ss.info(`Создан пользователь с ID ${isInserted}`);
- return isInserted;
- }
- } else { // если есть передаем его ID для дальнейшего использования
- user.next();
- return user.sys_id;
- }
- }
- function convertToLatin(fullName) {
- // Разбиваем полное имя на слова
- const words = fullName.split(" ");
- // Преобразуем каждое слово в нижний регистр и из кириллицы в латиницу
- const latinizedWords = words.map(word => {
- // Создаем массив символов из слова
- const characters = word.split('');
- // Проходимся по каждому символу
- const latinizedCharacters = characters.map(character => {
- // Проверяем, есть ли кириллическая версия символа в таблице
- const cyrillicCharIndex = 'абвгдеёжзийклмнопрстуфхцчшщъыьэюя'.indexOf(character.toLowerCase());
- // Если символ найден, заменяем его на соответствующий латинский символ
- if (cyrillicCharIndex !== -1) {
- const latinChar = 'a,b,v,g,d,e,e,zh,z,i,y,k,l,m,n,o,p,r,s,t,u,f,kh,ts,ch,sh,shch,,y,,e,yu,ya'.split(',')[cyrillicCharIndex];
- // Проверяем регистр и возвращаем символ с тем же регистром
- return character === character.toLowerCase() ? latinChar : latinChar.toUpperCase();
- } else {
- // Если символ не найден в таблице кириллических символов, возвращаем его как есть
- return character;
- }
- });
- // Соединяем массив символов обратно в слово
- return latinizedCharacters.join('');
- });
- // Формируем адрес электронной почты из имени и фамилии, разделенных точкой
- const email = latinizedWords.join('.').toLowerCase();
- return email;
- }
- function generateFourDigitPassword() {
- // Генерация случайного числа от 0 до 9999
- const randomNumber = Math.floor(Math.random() * 1000000);
- // Преобразование числа в строку
- let password = randomNumber.toString();
- // Добавление ведущих нулей, если длина строки меньше 4
- while (password.length < 6) {
- password = '0' + password;
- }
- return password;
- }
Advertisement
Add Comment
Please, Sign In to add comment