예제 #1
0
        public static NskdSessionLite GetById(Guid sessionId)
        {
            NskdSessionLite session = new NskdSessionLite();
            // загружаем данные сессии
            DataTable dt = HomeData.Home.GetSessionById(sessionId);

            if (dt != null)
            {
                if (dt.Rows.Count > 0)
                {
                    DataRow dr = dt.Rows[0];
                    session.SessionId = (Guid)dr["id"];
                    session.UserId    = (dr["user_id"] == DBNull.Value) ? 0 : (Int32)dr["user_id"];
                    session.UserName  = (dr["name"] == DBNull.Value) ? "Гость" : (String)dr["name"];
                }
            }
            return(session);
        }
예제 #2
0
        public UserMainMenu(NskdSessionLite session)
        {
            SelectedNodePath = "[" + session.UserName + "]";
            switch (session.UserId)
            {
            case 2:     // Соколов Евгений Анатольевич - программист
            case 3:     // Шанин Григорий Олегович - управляющий
            case 4:     // Мартовицкий Дмитрий Владимрович - ген. директор
            case 6:     // Родоманченко Наталья Витальевна - отд. кадров
            case 14:    // Максутов Игорь
            case 26:    // Мурзина Татьяна - секретарь
            case 43:    // Малютин М.
            case 60:    // Миловидов Василий Александрович
            case 63:    // Воронов Максим Владимирович - склад
            case 65:    // Мурашова Т. Н. - склад
            case 66:    // Ястребова Елена - зам. Шанина
            case 70:    // Золкина (с правами как у Шанина Г.)
            case 71:    // Админ (полные права, полный интерфейс)
            case 72:    // Гусева Екаткрина - менеджер по продажам - помощник Королькова Анна
            case 73:    // Кирсанова Татьяна - менеджер по продажам - помощник Скворцова Марина
                JsonUserMainMenu = @"
                        { name: '" + session.UserName + @"', url: null, cont: [
                            { name: 'Сообщения', url: null, cont: [
                                { name: 'Обязательные для ознакомления', url: '/Mess/F0' },
                                { name: 'Информационные', url: null } ] },
                            { name: 'Документы 1с', url: null, cont: [
                                { name: 'Расходная (трек)', url: '/Docs1c/F0' },
                                { name: 'Расх. ==> Прих.', url: '/ImEx/F0' } ] },
                            { name: 'Заявки', url: null, cont: [
                                { name: 'Список', url: '/Prep/F0' } ] },
                            { name: 'Договоры', url: '/Agrs/F0', cont: [] },
                            { name: 'Закупки', url: null, cont: [
                                { name: 'Спецификации', url: null, cont: [
                                    { name: 'Список', url: '/Order/F0' },
                                    { name: 'Загрузка', url: '/Order/F3' },
                                    { name: 'Зачёты', url: '/AdminPages/F0' } ] },
                                { name: 'Уведомления', url: null } ] },
                            { name: 'Снабжение', url: null, cont:[
                                { name: 'Товары', url: '/Supply/F0' } ] },
                            { name: 'Документы', url: null, cont: [
                                { name: 'РУ', url: '/Docs/Rd' },
                                { name: 'СТ-1', url: '/Docs/Ct' } ] },
                            { name: 'Отчёты', url: null, cont: [
                                { name: 'Неоплаченные отгрузки', url: '/Reports/R1' },
                                { name: 'Отчёт по оплатам', url: '/Reports/R2' },
                                { name: 'Судебные документы', url: '/Reports/R3' },
                                { name: 'Обеспечение', url: null, cont: [
                                    { name: 'Долги по клиентам', url: 'Deposits/F0' },
                                    { name: 'Расчеты по аукционам', url: 'Deposits/F1' } ] },
                                { name: 'МДВ1', url: '/MDVReports/F0' } ] },
                            { name: 'Номенклатура', url: null, cont: [
                                { name: 'Препараты', url: '/Items/Search' },
                                { name: 'Группы', url: '/Items/Groups' } ] },
                            { name: 'Настройки', url: '/Settings/F0' },
                            { name: 'ExternalPages', url: '/ExternalPages'} ]
                        }";
                break;

            case 5:      // Пирожкова Вероника - отдел продаж помошница Заваловой Елены
            case 13:     // Коледова Юлия Ивановна - бывший регистратор теперь помощник Августовой Ангелины
            case 17:     // Магергут Татьяна - менеджер по продажам
            case 18:     // Скворцова Марина - менеджер по продажам
            case 19:     // Сущева Ольга - менеджер по продажам
            case 21:     // Романова Нина - менеджер по продажам
            case 22:     // Каблукова М.
            case 23:     // Завалова Елена - менеджер по продажам
            case 24:     // Борисова Валентина
            case 25:     // Миронова Кристина - менеджер по продажам
            case 27:     // Волостных Роман - менеджер по продажам
            case 28:     // Горинова Анастасия
            case 29:     // Борисяк Ольга - менеджер по продажам
            case 30:     // Ерастова Людмила - менеджер по продажам
            case 31:     // Августова Ангелина - менеджер по продажам
            case 32:     // Королькова Анна - менеджер по продажам
            case 33:     // Шаповалова Валентина
            case 35:     // Шанина Елена - менеджер по продажам - помощник Сущевой Ольги
            case 36:     // Кравчук Ирина - менеджер по продажам - помощник Заваловой Елены
            case 37:     // Алдущенкова Эльвира - менеджер по продажам - помощник Магергут Татьяны
            case 38:     // Коробкова Юля - менеджер по продажам - помощник Корольковой Анны
            case 39:     // Синицкая Иветта - менеджер по продажам - помощник Августовой Ангелины
            case 40:     // Легонькова Анастасия - менеджер по продажам - помощник Заваловой Елены (Горинова?)
            case 41:
            case 42:     // Баризова Н - менеджер по продажам - помощник Сущевой Ольги
            case 44:
            case 46:
            case 47:
            case 48:
            case 49:
            case 50:
            case 51:     // Кочкурова Е. - склад
            case 52:     // Саблина Л. - склад
            case 53:
            case 55:     // Паннафидина Екатерина - помощник менеджера Ерастовой Людмилы
            case 56:     // Серкерова
            case 57:     // Тарунтаева - помощник Мироновой
            case 58:     // Лобанова Елена - помощник Магергут Татьяны
            case 59:     // Углова Алёна Александрована - помощник менеджера Корольковой Анны
            case 61:     // Морева Марина - помощник Августовой Ангелины
            case 62:     // Перевалова Юлия Викторовна - менеджер
            case 64:     // Мехрабова
            case 67:     // Барабина Олеся - менеджер по продажам - помощник Сущевой Ольги
                JsonUserMainMenu = @"
                        { name: '" + session.UserName + @"', url: null, cont: [
                            { name: 'Сообщения', url: null, cont: [
                                { name: 'Обязательные для ознакомления', url: null },
                                { name: 'Информационные', url: null } ] },
                            { name: 'Документы 1с', url: null, cont: [
                                { name: 'Расходная (трек)', url: '/Docs1c/F0' },
                                { name: 'Расх. ==> Прих.', url: '/ImEx/F0' } ] },
                            { name: 'Заявки', url: null, cont: [
                                { name: 'Список', url: '/Prep/F0' } ] },
                            { name: 'Закупки', url: null, cont: [
                                { name: 'Спецификации', url: null, cont: [
                                    { name: 'Список', url: '/Order/F0' },
                                    { name: 'Загрузка', url: '/Order/F3' } ] },
                                { name: 'Уведомления', url: null } ] },
                            { name: 'Отчёты', url: null, cont: [
                                { name: 'Неоплаченные отгрузки', url: '/Reports/R1' },
                                { name: 'Отчёт по оплатам', url: '/Reports/R2' },
                                { name: 'Судебные документы', url: '/Reports/R3' },
                                { name: 'Обеспечение', url: null, cont: [
                                    { name: 'Долги по клиентам', url: 'Deposits/F0' },
                                    { name: 'Расчеты по аукционам', url: 'Deposits/F1' } ] } ] },
                            { name: 'Препараты', url: '/Items/Search' },
                            { name: 'Настройки', url: '/Settings/F0' } ]
                        }";
                break;

            case 7:     // Сорокина Надежда Анатольевна - тендерный отдел (договоры)
            case 34:    // Егорова Евгения Валерьевна - тендерный отдел
                JsonUserMainMenu = @"
                        { name: '" + session.UserName + @"', url: null, cont: [
                            { name: 'Сообщения', url: null, cont: [
                                { name: 'Обязательные для ознакомления', url: null },
                                { name: 'Информационные', url: null } ] },
                            { name: 'Договоры', url: '/Agrs/F0', cont: [] },
                            { name: 'Заявки', url: null, cont: [
                                { name: 'Список', url: '/Prep/F0' } ] },
                            { name: 'Закупки', url: null, cont: [
                                { name: 'Спецификации', url: null, cont: [
                                    { name: 'Список', url: '/Order/F0' },
                                    { name: 'Загрузка', url: '/Order/F3' } ] },
                                { name: 'Уведомления', url: null } ] },
                            { name: 'Отчёты', url: null, cont: [
                                { name: 'Неоплаченные отгрузки', url: '/Reports/R1' },
                                { name: 'Отчёт по оплатам', url: '/Reports/R2' },
                                { name: 'Судебные документы', url: '/Reports/R3' },
                                { name: 'Обеспечение', url: null, cont: [
                                    { name: 'Долги по клиентам', url: 'Deposits/F0' } ] } ] },
                            { name: 'Настройки', url: '/Settings/F0' } ]
                        }";
                break;

            case 8:     // Максимова Екатерина Викторовна - юр. отдел
            case 9:     // Бельченко Юлия Викторовна - юр. отдел
            case 10:    // Федущак Роман Владимирович - юр. отдел
            case 20:    // Потекаева Ирина Ивановна - юр. отдел
            case 68:    // Митюшина Е. (с правами как у Потекаевой)
            case 69:    // Кашуркина А. (с правами как у Потекаевой)
                JsonUserMainMenu = @"
                        { name: '" + session.UserName + @"', url: null, cont: [
                            { name: 'Сообщения', url: null, cont: [
                                { name: 'Обязательные для ознакомления', url: null },
                                { name: 'Информационные', url: null } ] },
                            { name: 'Договоры', url: '/Agrs/F0', cont: [] },
                            { name: 'Документы 1с', url: null, cont: [
                                { name: 'Расходная (трек)', url: '/Docs1c/F0' } ] },
                            { name: 'Отчёты', url: null, cont: [
                                { name: 'Неоплаченные отгрузки', url: '/Reports/R1' },
                                { name: 'Отчёт по оплатам', url: '/Reports/R2' },
                                { name: 'Судебные документы', url: '/Reports/R3' } ] },
                            { name: 'Настройки', url: '/Settings/F0' } ]
                        }";
                break;

            case 11:     // Баржина Татьяна - секретарь
            case 12:     // Баризова Наталья - секретарь
                JsonUserMainMenu = @"
                        { name: '" + session.UserName + @"', url: null, cont: [
                            { name: 'Сообщения', url: null, cont: [
                                { name: 'Обязательные для ознакомления', url: null },
                                { name: 'Информационные', url: null } ] },
                            { name: 'Документы 1с', url: null, cont: [
                                { name: 'Расходная (трек)', url: '/Docs1c/F0' } ] },
                            { name: 'Настройки', url: '/Settings/F0' } ]
                        }";
                break;

            case 45:     // Синенок Ю. - закупка
            case 54:     // Михайлова Анна Андреевна - ассистент отдела закупок
                JsonUserMainMenu = @"
                        { name: '" + session.UserName + @"', url: null, cont: [
                            { name: 'Сообщения', url: null, cont: [
                                { name: 'Обязательные для ознакомления', url: null },
                                { name: 'Информационные', url: null } ] },
                            { name: 'Снабжение', url: null, cont:[
                                { name: 'Товары', url: '/Supply/F0' } ] },
                            { name: 'Документы', url: null, cont:[
                                { name: 'РУ', url: '/Docs/Rd' },
                                { name: 'СТ-1', url: '/Docs/Ct' } ] },
                            { name: 'Препараты', url: '/Items/Search' },
                            { name: 'Настройки', url: '/Settings/F0' } ]
                        }";
                break;

            case 0:     // Не прошел проверку
            case 1:     // Пустой
            case 15:    // Заколодкин Владимир
            case 16:    // Кодина Марина
            default:    // Все остальные
                JsonUserMainMenu = @"
                        { name: '" + session.UserName + @"', url: null, cont: [
                            { name: 'Препараты', url: '/Items/Search' } ]
                        }";
                break;
            }
        }