forked from Vladislav_k0ncept/Element_Test_V2
519 lines
41 KiB
Plaintext
519 lines
41 KiB
Plaintext
импорт Пресейл
|
||
импорт Мероприятия
|
||
импорт Общие
|
||
импорт Общие::КурсыВалют
|
||
|
||
конст ИМЯ_СТАДИИ_ЗАКЛЮЧЕН_ДОГОВОР = "Заключен договор"
|
||
конст ИМЯ_СТАДИИ_ОТКАЗАНО = "Отказано"
|
||
|
||
@ВПроекте
|
||
метод КлючЗаданияЗаполненияДанными(Пользователь: Пользователи.Ссылка): Строка
|
||
возврат "ГенерацияДанных_%{Пользователь.Ид}"
|
||
;
|
||
|
||
@ВПроекте
|
||
метод Заполнить()
|
||
исп новый ОперацияЗаполненияДемоДанными().ЗаписатьНачало()
|
||
|
||
исп Транзакция = Транзакции.Начать()
|
||
|
||
Валюты.СоздатьБазовуюВалюту()
|
||
|
||
знч Регионы = СоздатьРегионы()
|
||
знч Направления = СоздатьНаправления()
|
||
знч Услуги = СоздатьУслуги(Направления)
|
||
знч Стадии = СоздатьСтадииСделок()
|
||
знч Сотрудники = СоздатьСотрудников(Регионы, Ложь)
|
||
знч Клиенты = СоздатьКлиентов(Регионы, Направления, Сотрудники)
|
||
знч КонтактныеЛица = СоздатьКонтактныхЛиц(Клиенты, Сотрудники)
|
||
знч Сделки = СоздатьСделки(Сотрудники, Направления, Клиенты, КонтактныеЛица, Стадии, Услуги)
|
||
СоздатьЗадачи(Сделки)
|
||
СоздатьСобытия(Сделки)
|
||
СоздатьВалюты()
|
||
|
||
Транзакция.Фиксировать()
|
||
|
||
ПолнотекстовыйПоиск.ПерестроитьИндекс()
|
||
;
|
||
|
||
@ВПроекте
|
||
метод ЗаполнитьДляНовогоПользователя(Пользователь: Пользователи.Ссылка)
|
||
исп новый ОперацияЗаполненияДемоДаннымиДляПользователя(Пользователь = Пользователь.Представление()).ЗаписатьНачало()
|
||
|
||
исп КонтекстДоступа.Привилегированный()
|
||
|
||
знч Регионы = СоздатьРегионы()
|
||
знч Направления = Направления.ПолучитьНаправления()
|
||
знч СтадииСделок = СтадииСделок.ПолучитьСтадииСделок()
|
||
знч Услуги = Услуги.ПолучитьУслуги()
|
||
|
||
знч Сотрудник = новый Сотрудники.Объект(
|
||
Наименование = Пользователь.Представление(),
|
||
Пользователь = Пользователь,
|
||
Регион = Регионы[0],
|
||
Роль = РольСотрудника.Менеджер
|
||
)
|
||
|
||
Сотрудник.Записать()
|
||
|
||
знч Сотрудники = СоздатьСотрудников(Регионы, Ложь)
|
||
Сотрудники.Вставить(0, Сотрудник.Ссылка)
|
||
|
||
знч Клиенты = СоздатьКлиентов(Регионы, Направления, Сотрудники)
|
||
знч КонтактныеЛица = СоздатьКонтактныхЛиц(Клиенты, Сотрудники)
|
||
знч Сделки = СоздатьСделки(Сотрудники, Направления, Клиенты, КонтактныеЛица, СтадииСделок, Услуги)
|
||
СоздатьЗадачи(Сделки)
|
||
СоздатьСобытия(Сделки)
|
||
;
|
||
|
||
метод СоздатьРегионы(): ЧитаемыйМассив<Регионы.Ссылка>
|
||
знч Регионы = <Регионы.Ссылка>[]
|
||
|
||
знч Регион = новый Регионы.Объект(Наименование = "Россия")
|
||
Регион.Записать()
|
||
|
||
Регионы.Добавить(Регион.Ссылка)
|
||
|
||
возврат Регионы
|
||
;
|
||
|
||
метод СоздатьНаправления(): ЧитаемыйМассив<Направления.Ссылка>
|
||
знч Направления = <Направления.Ссылка>[]
|
||
|
||
пер Направление = новый Направления.Объект(Наименование = "Разработка и продвижение сайтов")
|
||
Направление.Записать()
|
||
Направления.Добавить(Направление.Ссылка)
|
||
|
||
Направление = новый Направления.Объект(Наименование = "Разработка мобильных приложений")
|
||
Направление.Записать()
|
||
Направления.Добавить(Направление.Ссылка)
|
||
|
||
возврат Направления
|
||
;
|
||
|
||
метод СоздатьУслуги(Направления: ЧитаемыйМассив<Направления.Ссылка>): ЧитаемыйМассив<Услуги.Ссылка>
|
||
знч Услуги = <Услуги.Ссылка>[]
|
||
|
||
// 0
|
||
пер Услуга = новый Услуги.Объект(Наименование = "Лендинг для рекламной кампании", Владелец = Направления[0])
|
||
Услуга.Записать()
|
||
Услуги.Добавить(Услуга.Ссылка)
|
||
|
||
// 1
|
||
Услуга = новый Услуги.Объект(Наименование = "Разработка корпоративного сайта", Владелец = Направления[0])
|
||
Услуга.Записать()
|
||
Услуги.Добавить(Услуга.Ссылка)
|
||
|
||
// 2
|
||
Услуга = новый Услуги.Объект(Наименование = "Разработка дизайна сайта", Владелец = Направления[0])
|
||
Услуга.Записать()
|
||
Услуги.Добавить(Услуга.Ссылка)
|
||
|
||
// 3
|
||
Услуга = новый Услуги.Объект(Наименование = "Сайт для фотовыставки", Владелец = Направления[0])
|
||
Услуга.Записать()
|
||
Услуги.Добавить(Услуга.Ссылка)
|
||
|
||
// 4
|
||
Услуга = новый Услуги.Объект(Наименование = "Приложение для сотрудников", Владелец = Направления[1])
|
||
Услуга.Записать()
|
||
Услуги.Добавить(Услуга.Ссылка)
|
||
|
||
// 5
|
||
Услуга = новый Услуги.Объект(Наименование = "Разработка интернет-магазина", Владелец = Направления[0])
|
||
Услуга.Записать()
|
||
Услуги.Добавить(Услуга.Ссылка)
|
||
|
||
// 6
|
||
Услуга = новый Услуги.Объект(Наименование = "Приложение для клиентов", Владелец = Направления[1])
|
||
Услуга.Записать()
|
||
Услуги.Добавить(Услуга.Ссылка)
|
||
|
||
// 7
|
||
Услуга = новый Услуги.Объект(Наименование = "Продвижение интернет-магазина", Владелец = Направления[0])
|
||
Услуга.Записать()
|
||
Услуги.Добавить(Услуга.Ссылка)
|
||
|
||
// 8
|
||
Услуга = новый Услуги.Объект(Наименование = "Редизайн сайта", Владелец = Направления[0])
|
||
Услуга.Записать()
|
||
Услуги.Добавить(Услуга.Ссылка)
|
||
|
||
// 9
|
||
Услуга = новый Услуги.Объект(Наименование = "Приложение доставки", Владелец = Направления[1])
|
||
Услуга.Записать()
|
||
Услуги.Добавить(Услуга.Ссылка)
|
||
|
||
возврат Услуги
|
||
;
|
||
|
||
метод СоздатьСтадииСделок(): ЧитаемыйМассив<СтадииСделок.Ссылка>
|
||
знч Стадии = <СтадииСделок.Ссылка>[]
|
||
|
||
пер Стадия = новый СтадииСделок.Объект(
|
||
Наименование = "Первичный контакт",
|
||
Вид = ВидСтадииСделки.Активна,
|
||
Порядок = 10,
|
||
Иконка = Ресурс{РесурсыДемо/СтадияПервичныйКонтакт.png}.Ссылка,
|
||
ИмяФайлаИконки = "СтадияПервичныйКонтакт.png"
|
||
)
|
||
|
||
Стадия.Записать()
|
||
Стадии.Добавить(Стадия.Ссылка)
|
||
|
||
Стадия = новый СтадииСделок.Объект(
|
||
Наименование = "Сделано предложение",
|
||
Вид = ВидСтадииСделки.Активна,
|
||
Порядок = 20,
|
||
Иконка = Ресурс{РесурсыДемо/СтадияСделаноПредложение.png}.Ссылка,
|
||
ИмяФайлаИконки = "СтадияСделаноПредложение.png"
|
||
)
|
||
|
||
Стадия.Записать()
|
||
Стадии.Добавить(Стадия.Ссылка)
|
||
|
||
Стадия = новый СтадииСделок.Объект(
|
||
Наименование = "Переговоры",
|
||
Вид = ВидСтадииСделки.Активна,
|
||
Порядок = 30,
|
||
Иконка = Ресурс{РесурсыДемо/СтадияПереговоры.png}.Ссылка,
|
||
ИмяФайлаИконки = "СтадияПереговоры.png"
|
||
)
|
||
|
||
Стадия.Записать()
|
||
Стадии.Добавить(Стадия.Ссылка)
|
||
|
||
Стадия = новый СтадииСделок.Объект(
|
||
Наименование = ИМЯ_СТАДИИ_ЗАКЛЮЧЕН_ДОГОВОР,
|
||
Вид = ВидСтадииСделки.ЗакрытаВыиграна,
|
||
Порядок = 40,
|
||
Иконка = Ресурс{РесурсыДемо/СтадияЗаключенДоговор.png}.Ссылка,
|
||
ИмяФайлаИконки = "СтадияЗаключенДоговор.png"
|
||
)
|
||
|
||
Стадия.Записать()
|
||
Стадии.Добавить(Стадия.Ссылка)
|
||
|
||
Стадия = новый СтадииСделок.Объект(
|
||
Наименование = ИМЯ_СТАДИИ_ОТКАЗАНО,
|
||
Вид = ВидСтадииСделки.ЗакрытаПроиграна,
|
||
Порядок = 50,
|
||
Иконка = Ресурс{РесурсыДемо/СтадияОтказано.png}.Ссылка,
|
||
ИмяФайлаИконки = "СтадияОтказано.png"
|
||
)
|
||
|
||
Стадия.Записать()
|
||
Стадии.Добавить(Стадия.Ссылка)
|
||
|
||
возврат Стадии
|
||
;
|
||
|
||
метод СоздатьВалюты()
|
||
пер Валюта = новый Валюты.Объект(Код = "USD", Наименование = "Доллар")
|
||
Валюта.Записать()
|
||
|
||
Валюта = новый Валюты.Объект(Код = "EUR", Наименование = "Евро")
|
||
Валюта.Записать()
|
||
;
|
||
|
||
метод СоздатьСотрудников(Регионы: ЧитаемыйМассив<Регионы.Ссылка>, СоздатьПользователей: Булево): Массив<Сотрудники.Ссылка>
|
||
знч Сотрудники = <Сотрудники.Ссылка>[]
|
||
|
||
пер Сотрудник = новый Сотрудники.Объект(
|
||
Наименование = "Яковлев С.Л.",
|
||
Регион = Регионы[0],
|
||
Роль = РольСотрудника.Менеджер
|
||
)
|
||
|
||
если СоздатьПользователей
|
||
Сотрудник.Пользователь = ПользователиКлиентИСервер.СоздатьПользователя("yakovlev", "yakovlev")
|
||
;
|
||
|
||
Сотрудник.Записать()
|
||
Сотрудники.Добавить(Сотрудник.Ссылка)
|
||
|
||
Сотрудник = новый Сотрудники.Объект(
|
||
Наименование = "Смирнов В.Т.",
|
||
Регион = Регионы[0],
|
||
Роль = РольСотрудника.Менеджер
|
||
)
|
||
|
||
если СоздатьПользователей
|
||
Сотрудник.Пользователь = ПользователиКлиентИСервер.СоздатьПользователя("smirnov", "smirnov")
|
||
;
|
||
|
||
Сотрудник.Записать()
|
||
Сотрудники.Добавить(Сотрудник.Ссылка)
|
||
|
||
возврат Сотрудники
|
||
;
|
||
|
||
метод СоздатьКлиентов(Регионы: ЧитаемыйМассив<Регионы.Ссылка>, Направления: ЧитаемыйМассив<Направления.Ссылка>, Сотрудники: ЧитаемыйМассив<Сотрудники.Ссылка>): ЧитаемыйМассив<Клиенты.Ссылка>
|
||
знч Клиенты = <Клиенты.Ссылка>[]
|
||
Клиенты.Добавить(СоздатьКлиента("Мастерская \"Планета-3\"", Регионы[0], "620143, г. Екатеринбург, ул. Победы, д. 108", Сотрудники[0], Направления))
|
||
Клиенты.Добавить(СоздатьКлиента("Художественный музей", Регионы[0], "150040, г. Ярославль, ул. Некрасова, д. 94", Сотрудники[1], Направления))
|
||
Клиенты.Добавить(СоздатьКлиента("Предприятие \"Ротор-К\"", Регионы[0], "119501, г. Красногорск, ул. Речная, д. 83", Сотрудники[1], Направления))
|
||
Клиенты.Добавить(СоздатьКлиента("Ресторан \"Ибис\"", Регионы[0], "420099, г. Казань, ул. Чехова, д. 86", Сотрудники[0], Направления))
|
||
Клиенты.Добавить(СоздатьКлиента("Агентство \"Город\"", Регионы[0], "194044, г. Санкт-Петербург, Лесной пр., д. 117", Сотрудники[1], Направления))
|
||
Клиенты.Добавить(СоздатьКлиента("Магазин \"Луч 24\"", Регионы[0], "105187, г. Москва, ул. Ткацкая, д. 137", Сотрудники[0], Направления))
|
||
|
||
возврат Клиенты
|
||
;
|
||
|
||
метод СоздатьКлиента(Наименование: Строка, Регион: Регионы.Ссылка, Адрес: Строка, Ответственный: Сотрудники.Ссылка, Направления: ЧитаемыйМассив<Направления.Ссылка>): Клиенты.Ссылка
|
||
знч Клиент = новый Клиенты.Объект(
|
||
Наименование = Наименование,
|
||
Адрес = Адрес,
|
||
Ответственный = Ответственный,
|
||
Регион = Регион
|
||
)
|
||
|
||
Клиент.Записать()
|
||
|
||
возврат Клиент.Ссылка
|
||
;
|
||
|
||
метод СоздатьКонтактныхЛиц(Клиенты: ЧитаемыйМассив<Клиенты.Ссылка>, Сотрудники: ЧитаемыйМассив<Сотрудники.Ссылка>): ЧитаемыйМассив<КонтактныеЛица.Ссылка>
|
||
знч КонтактныеЛица = <КонтактныеЛица.Ссылка>[]
|
||
КонтактныеЛица.Добавить(СоздатьКонтактноеЛицо(Клиенты[0], "Новиков Пётр Матвеевич", "Директор", "", "novikov@clplnt.ru", Сотрудники[0]))
|
||
КонтактныеЛица.Добавить(СоздатьКонтактноеЛицо(Клиенты[1], "Гусев Максим Константинович", "Руководитель проекта", "+7 (999) 480-23-82", "", Сотрудники[1]))
|
||
КонтактныеЛица.Добавить(СоздатьКонтактноеЛицо(Клиенты[2], "Казакова Людмила Федоровна", "Руководитель отдела продаж", "", "kazakova@rtrmsk.ru", Сотрудники[1]))
|
||
КонтактныеЛица.Добавить(СоздатьКонтактноеЛицо(Клиенты[3], "Орлова Ольга Николаевна", "Менеджер по маркетингу", "+7 (999) 372-94-13", "orlova@ibisrst.ru", Сотрудники[0]))
|
||
КонтактныеЛица.Добавить(СоздатьКонтактноеЛицо(Клиенты[4], "Соколов Николай Сергеевич", "Руководитель департамента", "+7 (999) 232-76-22", "sokolov@grdspb.ru", Сотрудники[1]))
|
||
КонтактныеЛица.Добавить(СоздатьКонтактноеЛицо(Клиенты[5], "Фролов Дмитрий Андреевич", "Директор", "+7 (999) 834-73-46", "", Сотрудники[0]))
|
||
|
||
возврат КонтактныеЛица
|
||
;
|
||
|
||
метод СоздатьКонтактноеЛицо(Клиент: Клиенты.Ссылка, Наименование: Строка, Должность: Строка, Телефон: Строка,
|
||
ЭлектроннаяПочта: Строка, Ответственный: Сотрудники.Ссылка): КонтактныеЛица.Ссылка
|
||
|
||
знч КонтактноеЛицо = новый КонтактныеЛица.Объект(
|
||
Владелец = Клиент,
|
||
Наименование = Наименование,
|
||
Должность = Должность,
|
||
Телефон = Телефон,
|
||
ЭлектроннаяПочта = ЭлектроннаяПочта,
|
||
Ответственный = Ответственный
|
||
)
|
||
|
||
КонтактноеЛицо.Записать()
|
||
возврат КонтактноеЛицо.Ссылка
|
||
;
|
||
|
||
метод СоздатьСделки(Сотрудники: ЧитаемыйМассив<Сотрудники.Ссылка>,
|
||
Направления: ЧитаемыйМассив<Направления.Ссылка>,
|
||
Клиенты: ЧитаемыйМассив<Клиенты.Ссылка>,
|
||
КонтактныеЛица: ЧитаемыйМассив<КонтактныеЛица.Ссылка>,
|
||
Стадии: ЧитаемыйМассив<СтадииСделок.Ссылка>,
|
||
Услуги: ЧитаемыйМассив<Услуги.Ссылка>): ЧитаемыйМассив<Сделки.Ссылка>
|
||
|
||
знч Сделки = <Сделки.Ссылка>[]
|
||
|
||
знч Валюта = Валюты.ПолучитьБазовуюВалюту()
|
||
|
||
знч ЧасовойПояс = ЧасовойПояс.Текущий()
|
||
знч Сейчас = ДатаВремя.Сейчас()
|
||
|
||
знч Генератор = новый СлучайныйГенератор()
|
||
знч СекундВСутках = 86400
|
||
|
||
Сделки.Добавить(СоздатьСделку(Сотрудники[0], Сейчас.ДобавитьДни(-5).ДобавитьСекунды(Генератор.СлучайноеЦелое(До = СекундВСутках)).ВМомент(ЧасовойПояс),
|
||
Сейчас.ДобавитьДни(27).Дата, Направления[0], Клиенты[4], КонтактныеЛица[4], "Лендинг для рекламной кампании", Стадии[0], Валюта, 22000, [Услуги[0], Услуги[2]]))
|
||
Сделки.Добавить(СоздатьСделку(Сотрудники[1], Сейчас.ДобавитьДни(-6).ВМомент(ЧасовойПояс), Сейчас.ДобавитьДни(20).Дата, Направления[1], Клиенты[3],
|
||
КонтактныеЛица[3], "Приложение доставки", Стадии[1], Валюта, 105000, [Услуги[9], Услуги[6]]))
|
||
Сделки.Добавить(СоздатьСделку(Сотрудники[0], Сейчас.ДобавитьДни(-5).ДобавитьСекунды(Генератор.СлучайноеЦелое(До = СекундВСутках)).ВМомент(ЧасовойПояс),
|
||
Сейчас.ДобавитьДни(20).Дата, Направления[0], Клиенты[5], КонтактныеЛица[5], "Разработка корпоративного сайта", Стадии[1], Валюта, 240000, [Услуги[1], Услуги[2]]))
|
||
Сделки.Добавить(СоздатьСделку(Сотрудники[0], Сейчас.ДобавитьДни(-7).ДобавитьСекунды(Генератор.СлучайноеЦелое(До = СекундВСутках)).ВМомент(ЧасовойПояс),
|
||
Сейчас.ДобавитьДни(14).Дата, Направления[0], Клиенты[1], КонтактныеЛица[1], "Разработка дизайна сайта", Стадии[0], Валюта, 138000, [Услуги[2], Услуги[8]]))
|
||
|
||
Сделки.Добавить(СоздатьСделку(Сотрудники[0], Сейчас.ДобавитьДни(-6).ДобавитьСекунды(Генератор.СлучайноеЦелое(До = СекундВСутках)).ВМомент(ЧасовойПояс),
|
||
Сейчас.ДобавитьДни(40).Дата, Направления[0], Клиенты[1], КонтактныеЛица[1], "Сайт для фотовыставки", Стадии[2], Валюта, 64000, [Услуги[3], Услуги[8]]))
|
||
Сделки.Добавить(СоздатьСделку(Сотрудники[1], Сейчас.ДобавитьДни(-7).ДобавитьСекунды(Генератор.СлучайноеЦелое(До = СекундВСутках)).ВМомент(ЧасовойПояс),
|
||
Сейчас.ДобавитьДни(37).Дата, Направления[1], Клиенты[2], КонтактныеЛица[2], "Приложение для сотрудников", Стадии[0], Валюта, 78000, [Услуги[4], Услуги[6]]))
|
||
|
||
Сделки.Добавить(СоздатьСделку(Сотрудники[0], Сейчас.ДобавитьДни(-5).ДобавитьСекунды(Генератор.СлучайноеЦелое(До = СекундВСутках)).ВМомент(ЧасовойПояс),
|
||
Сейчас.ДобавитьДни(28).Дата, Направления[0], Клиенты[5], КонтактныеЛица[5], "Разработка интернет-магазина", Стадии[1], Валюта, 131000, [Услуги[5], Услуги[7]]))
|
||
Сделки.Добавить(СоздатьСделку(Сотрудники[1], Сейчас.ДобавитьДни(-5).ДобавитьСекунды(Генератор.СлучайноеЦелое(До = СекундВСутках)).ВМомент(ЧасовойПояс),
|
||
Сейчас.ДобавитьДни(25).Дата, Направления[1], Клиенты[0], КонтактныеЛица[0], "Приложение для клиентов", Стадии[2], Валюта, 68000, [Услуги[6], Услуги[4]]))
|
||
|
||
Сделки.Добавить(СоздатьСделку(Сотрудники[0], Сейчас.ДобавитьДни(-14).ДобавитьСекунды(Генератор.СлучайноеЦелое(До = СекундВСутках)).ВМомент(ЧасовойПояс),
|
||
Сейчас.ДобавитьДни(-9).Дата, Направления[0], Клиенты[5], КонтактныеЛица[5], "Продвижение интернет-магазина", Стадии[0], Валюта, 35000, [Услуги[7], Услуги[8]]))
|
||
Сделки.Добавить(СоздатьСделку(Сотрудники[0], Сейчас.ДобавитьДни(-5).ДобавитьСекунды(Генератор.СлучайноеЦелое(До = СекундВСутках)).ВМомент(ЧасовойПояс),
|
||
Сейчас.ДобавитьДни(35).Дата, Направления[0], Клиенты[4], КонтактныеЛица[4], "Редизайн сайта", Стадии[0], Валюта, 56000, [Услуги[8], Услуги[7]]))
|
||
|
||
Сделки.Добавить(СоздатьСделку(Сотрудники[0], Сейчас.ДобавитьДни(-127).ДобавитьСекунды(Генератор.СлучайноеЦелое(До = СекундВСутках)).ВМомент(ЧасовойПояс),
|
||
Сейчас.ДобавитьДни(-96).Дата, Направления[0], Клиенты[4], КонтактныеЛица[4], "Лендинг для рекламной кампании", Стадии[3], Валюта, 22000, [Услуги[0], Услуги[8]]))
|
||
Сделки.Добавить(СоздатьСделку(Сотрудники[1], Сейчас.ДобавитьДни(-123).ДобавитьСекунды(Генератор.СлучайноеЦелое(До = СекундВСутках)).ВМомент(ЧасовойПояс),
|
||
Сейчас.ДобавитьДни(-103).Дата, Направления[1], Клиенты[3], КонтактныеЛица[3], "Приложение доставки", Стадии[3], Валюта, 105000, [Услуги[9], Услуги[6]]))
|
||
|
||
Сделки.Добавить(СоздатьСделку(Сотрудники[0], Сейчас.ДобавитьДни(-96).ДобавитьСекунды(Генератор.СлучайноеЦелое(До = СекундВСутках)).ВМомент(ЧасовойПояс),
|
||
Сейчас.ДобавитьДни(-52).Дата, Направления[0], Клиенты[1], КонтактныеЛица[1], "Сайт для фотовыставки", Стадии[3], Валюта, 64000, [Услуги[3], Услуги[8]]))
|
||
Сделки.Добавить(СоздатьСделку(Сотрудники[1], Сейчас.ДобавитьДни(-95).ДобавитьСекунды(Генератор.СлучайноеЦелое(До = СекундВСутках)).ВМомент(ЧасовойПояс),
|
||
Сейчас.ДобавитьДни(-55).Дата, Направления[1], Клиенты[2], КонтактныеЛица[2], "Приложение для сотрудников", Стадии[3], Валюта, 78000, [Услуги[4], Услуги[6]]))
|
||
|
||
Сделки.Добавить(СоздатьСделку(Сотрудники[0], Сейчас.ДобавитьДни(-66).ДобавитьСекунды(Генератор.СлучайноеЦелое(До = СекундВСутках)).ВМомент(ЧасовойПояс),
|
||
Сейчас.ДобавитьДни(-34).Дата, Направления[0], Клиенты[5], КонтактныеЛица[5], "Разработка интернет-магазина", Стадии[3], Валюта, 131000, [Услуги[5], Услуги[7]]))
|
||
Сделки.Добавить(СоздатьСделку(Сотрудники[1], Сейчас.ДобавитьДни(-65).ДобавитьСекунды(Генератор.СлучайноеЦелое(До = СекундВСутках)).ВМомент(ЧасовойПояс),
|
||
Сейчас.ДобавитьДни(-37).Дата, Направления[1], Клиенты[0], КонтактныеЛица[0], "Приложение для клиентов", Стадии[3], Валюта, 68000, [Услуги[6], Услуги[4]]))
|
||
|
||
Сделки.Добавить(СоздатьСделку(Сотрудники[0], Сейчас.ДобавитьДни(-13).ДобавитьСекунды(Генератор.СлучайноеЦелое(До = СекундВСутках)).ВМомент(ЧасовойПояс),
|
||
Сейчас.ДобавитьДни(-1).Дата, Направления[0], Клиенты[5], КонтактныеЛица[5], "Продвижение интернет-магазина", Стадии[3], Валюта, 35000, [Услуги[7], Услуги[8]]))
|
||
Сделки.Добавить(СоздатьСделку(Сотрудники[1], Сейчас.ДобавитьДни(-13).ДобавитьСекунды(Генератор.СлучайноеЦелое(До = СекундВСутках)).ВМомент(ЧасовойПояс),
|
||
Сейчас.ДобавитьДни(-1).Дата, Направления[1], Клиенты[2], КонтактныеЛица[2], "Приложение для сотрудников", Стадии[3], Валюта, 89000, [Услуги[4], Услуги[6]]))
|
||
Сделки.Добавить(СоздатьСделку(Сотрудники[0], Сейчас.ДобавитьДни(-14).ДобавитьСекунды(Генератор.СлучайноеЦелое(До = СекундВСутках)).ВМомент(ЧасовойПояс),
|
||
Сейчас.ДобавитьДни(-1).Дата, Направления[0], Клиенты[4], КонтактныеЛица[4], "Редизайн сайта", Стадии[3], Валюта, 12000, [Услуги[8], Услуги[7]]))
|
||
возврат Сделки
|
||
;
|
||
|
||
метод СоздатьСделку(Ответственный: Сотрудники.Ссылка,
|
||
ДатаСоздания: Момент,
|
||
ДатаЗакрытия: Дата,
|
||
Направление: Направления.Ссылка,
|
||
Клиент: Клиенты.Ссылка,
|
||
КонтактноеЛицо: КонтактныеЛица.Ссылка,
|
||
Наименование: Строка,
|
||
Стадия: СтадииСделок.Ссылка,
|
||
ВалютаСделки: Валюты.Ссылка,
|
||
Сумма: Число,
|
||
Услуги: ЧитаемыйМассив<Услуги.Ссылка>): Сделки.Ссылка
|
||
|
||
знч Сделка = новый Сделки.Объект(
|
||
Ответственный = Ответственный,
|
||
ДатаСоздания = ДатаСоздания,
|
||
ДатаЗакрытия = ДатаЗакрытия,
|
||
Направление = Направление,
|
||
Клиент = Клиент,
|
||
КонтактноеЛицо = КонтактноеЛицо,
|
||
Наименование = Наименование,
|
||
Стадия = Стадия,
|
||
ВалютаСделки = ВалютаСделки,
|
||
СуммаВВалютеСделки = Сумма,
|
||
СуммаВВалютеУчета = Сумма
|
||
)
|
||
|
||
знч СтоимостьУслуги = Сумма / 2
|
||
знч УслугиСделки = Услуги.Преобразовать(Услуга -> новый Сделки.Услуги(Услуга = Услуга, Количество = 1, Цена = СтоимостьУслуги, Сумма = СтоимостьУслуги))
|
||
Сделка.Услуги.ДобавитьВсе(УслугиСделки)
|
||
|
||
Сделка.Записать()
|
||
|
||
возврат Сделка.Ссылка
|
||
;
|
||
|
||
метод СоздатьЗадачи(Сделки: ЧитаемыйМассив<Сделки.Ссылка>): ЧитаемыйМассив<Задачи.Ссылка>
|
||
знч Задачи = <Задачи.Ссылка>[]
|
||
|
||
знч ДанныеСделок = Пресейл::Сделки.ПолучитьДанныеСделок(Сделки)
|
||
|
||
знч ЧасовойПояс = ЧасовойПояс.Текущий()
|
||
знч Генератор = новый СлучайныйГенератор()
|
||
знч СекундВСутках = 86400
|
||
|
||
для ДанныеСделки из ДанныеСделок
|
||
знч ДатаСделки = ДанныеСделки.ДатаСоздания.ВДатаВремя(ЧасовойПояс)
|
||
|
||
Задачи.Добавить(СоздатьЗадачу(ДанныеСделки.Ссылка,
|
||
ДатаСделки.ДобавитьДни(1).ДобавитьСекунды(Генератор.СлучайноеЦелое(До = СекундВСутках)).ВМомент(ЧасовойПояс),
|
||
ДанныеСделки.Ответственный, "Отправить предложение", "",
|
||
ДатаСделки.ДобавитьДни(8).ДобавитьСекунды(Генератор.СлучайноеЦелое(До = СекундВСутках)).ВМомент(ЧасовойПояс),
|
||
СтатусМероприятия.Завершено, ПриоритетЗадачи.Высокий))
|
||
|
||
Задачи.Добавить(СоздатьЗадачу(ДанныеСделки.Ссылка,
|
||
ДатаСделки.ДобавитьДни(2).ДобавитьСекунды(Генератор.СлучайноеЦелое(До = СекундВСутках)).ВМомент(ЧасовойПояс),
|
||
ДанныеСделки.Ответственный, "Договориться о встрече", "",
|
||
ДатаСделки.ДобавитьДни(3).ДобавитьСекунды(Генератор.СлучайноеЦелое(До = СекундВСутках)).ВМомент(ЧасовойПояс),
|
||
СтатусМероприятия.ВПроцессе, ПриоритетЗадачи.Высокий))
|
||
|
||
Задачи.Добавить(СоздатьЗадачу(ДанныеСделки.Ссылка,
|
||
ДатаСделки.ДобавитьДни(2).ДобавитьСекунды(Генератор.СлучайноеЦелое(До = СекундВСутках)).ВМомент(ЧасовойПояс),
|
||
ДанныеСделки.Ответственный, "Проинформировать о готовности", "",
|
||
ДатаСделки.ДобавитьДни(9).ДобавитьСекунды(Генератор.СлучайноеЦелое(До = СекундВСутках)).ВМомент(ЧасовойПояс),
|
||
СтатусМероприятия.Запланировано, ПриоритетЗадачи.Обычный))
|
||
;
|
||
|
||
возврат Задачи
|
||
;
|
||
|
||
метод СоздатьЗадачу(Сделка: Сделки.Ссылка,
|
||
ДатаСоздания: Момент,
|
||
Ответственный: Сотрудники.Ссылка,
|
||
Наименование: Строка,
|
||
Описание: Строка,
|
||
ДатаЗавершения: Момент,
|
||
Статус: СтатусМероприятия,
|
||
Приоритет: ПриоритетЗадачи = ПриоритетЗадачи.Обычный): Задачи.Ссылка
|
||
|
||
знч Задача = новый Задачи.Объект(
|
||
Владелец = Сделка,
|
||
ДатаСоздания = ДатаСоздания,
|
||
Ответственный = Ответственный,
|
||
Наименование = Наименование,
|
||
Описание = Описание,
|
||
ДатаЗавершения = ДатаЗавершения,
|
||
Статус = Статус,
|
||
Приоритет = Приоритет
|
||
)
|
||
|
||
Задача.Записать()
|
||
|
||
возврат Задача.Ссылка
|
||
;
|
||
|
||
метод СоздатьСобытия(Сделки: ЧитаемыйМассив<Сделки.Ссылка>): ЧитаемыйМассив<События.Ссылка>
|
||
знч События = <События.Ссылка>[]
|
||
|
||
знч ДанныеСделок = Пресейл::Сделки.ПолучитьДанныеСделок(Сделки)
|
||
|
||
знч ЧасовойПояс = ЧасовойПояс.Текущий()
|
||
знч Генератор = новый СлучайныйГенератор()
|
||
знч МинутВЧасе = 60
|
||
|
||
для ДанныеСделки из ДанныеСделок
|
||
знч ДатаСделки = ДанныеСделки.ДатаСоздания.ВДатаВремя(ЧасовойПояс)
|
||
|
||
События.Добавить(СоздатьСобытие(ДанныеСделки.Ссылка,
|
||
ДатаСделки.ДобавитьДни(2).ДобавитьМинуты(Генератор.СлучайноеЦелое(До = МинутВЧасе)).ВМомент(ЧасовойПояс),
|
||
ДанныеСделки.Ответственный, "Звонок от клиента", "",
|
||
ДатаСделки.ДобавитьДни(3).ВМомент(ЧасовойПояс),
|
||
ДатаСделки.ДобавитьДни(3).ДобавитьМинуты(Генератор.СлучайноеЦелое(До = МинутВЧасе)).ВМомент(ЧасовойПояс)))
|
||
|
||
События.Добавить(СоздатьСобытие(ДанныеСделки.Ссылка,
|
||
ДатаСделки.ДобавитьДни(2).ДобавитьМинуты(Генератор.СлучайноеЦелое(До = МинутВЧасе)).ВМомент(ЧасовойПояс),
|
||
ДанныеСделки.Ответственный, "E-mail от клиента", "",
|
||
ДатаСделки.ДобавитьДни(2).ДобавитьМинуты(Генератор.СлучайноеЦелое(До = МинутВЧасе)).ВМомент(ЧасовойПояс),
|
||
Момент{}))
|
||
|
||
События.Добавить(СоздатьСобытие(ДанныеСделки.Ссылка,
|
||
ДатаСделки.ДобавитьДни(2).ДобавитьМинуты(Генератор.СлучайноеЦелое(До = МинутВЧасе)).ВМомент(ЧасовойПояс),
|
||
ДанныеСделки.Ответственный, "Звонок клиенту", "",
|
||
ДатаСделки.ДобавитьДни(7).ВМомент(ЧасовойПояс),
|
||
ДатаСделки.ДобавитьДни(7).ДобавитьМинуты(Генератор.СлучайноеЦелое(До = МинутВЧасе)).ВМомент(ЧасовойПояс)))
|
||
;
|
||
|
||
возврат События
|
||
;
|
||
|
||
метод СоздатьСобытие(Сделка: Сделки.Ссылка,
|
||
ДатаСоздания: Момент,
|
||
Ответственный: Сотрудники.Ссылка,
|
||
Наименование: Строка,
|
||
Описание: Строка,
|
||
ДатаНачала: Момент,
|
||
ДатаЗавершения: Момент): События.Ссылка
|
||
|
||
знч Событие = новый События.Объект(
|
||
Владелец = Сделка,
|
||
ДатаСоздания = ДатаСоздания,
|
||
Ответственный = Ответственный,
|
||
Наименование = Наименование,
|
||
Описание = Описание,
|
||
ДатаНачала = ДатаНачала,
|
||
ДатаЗавершения = ДатаЗавершения
|
||
)
|
||
|
||
Событие.Записать()
|
||
|
||
возврат Событие.Ссылка
|
||
;
|