Перейти к содержимому


Группа доступа-выбрать пользователя


Сообщений в теме: 20

#1 Dinara

    Активный участник

  • Пользователи
  • PipPipPip
  • 527 сообщений
  • Пол:Женщина
  • Город:Уфа

Отправлено 21 Январь 2014 - 12:17

Если группы доступа, где только один пользователь. Как можно сделать так, чтобы когда выбираешь эту группу доступа-в дополнительное какое-нибудь выбирается пользователь из этой группы доступа?...

#2 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 759 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 21 Январь 2014 - 12:24

Запрос к таблице cb_users с выборкой по группе -> получаем id пользователя и заносим в нужное поле (если оно с типом пользователь)

$my_user = sql_select_array(USERS_TABLE, "`group_id`=",$line['Группа']);
$line['Пользователь'] = $my_user['id'];

Если поле текстовое, то берем ФИО:

$my_user = sql_select_array(USERS_TABLE, "`group_id`=",$line['Группа']);
$line['Текст'] = $my_user['fio'];


#3 Dinara

    Активный участник

  • Пользователи
  • PipPipPip
  • 527 сообщений
  • Пол:Женщина
  • Город:Уфа

Отправлено 21 Январь 2014 - 12:39

Благодарю за столь скорый ответ)помогло)))

#4 Dinara

    Активный участник

  • Пользователи
  • PipPipPip
  • 527 сообщений
  • Пол:Женщина
  • Город:Уфа

Отправлено 04 Март 2014 - 10:48

$my_user = sql_select_array(GROUPS_TABLE, "`user_id`=",$line['Сотрудник']);
$line['Группа'] = $my_user['id'];
А если в обратку делать (выбрали сотрудника-проставилась группа) - такой код корректен будет или нет?

#5 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 759 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 04 Март 2014 - 11:05

В таблице групп нет поля `user_id`, и не может быть, т.к. в одной группе может быть несколько пользователей. Нужно обращаться к той же таблице USERS_TABLE:

$my_user = sql_select_array(USERS_TABLE, "`id`=",$line['Сотрудник']);
$line['Группа'] = $my_user['group_id'];


#6 Dinara

    Активный участник

  • Пользователи
  • PipPipPip
  • 527 сообщений
  • Пол:Женщина
  • Город:Уфа

Отправлено 04 Март 2014 - 12:42

Спасибо,запомню)

#7 bottrop

    Активный участник

  • Пользователи
  • PipPipPip
  • 153 сообщений
  • Пол:Мужчина
  • Город:Армавир

Отправлено 17 Март 2016 - 00:40

Добрый день.
Вопрос по пользователям.
В таблице "Задачи" есть поле "Исполнитель" (тип поля пользователь), необходимо выбирать несколько исполнителей для одного задания.
Включаю множественный выбор в поле "исполнитель", выбираю несколько пользователей, но задание ставиться только первому из всего списка, у остальных оно не отображается.
Стоит правило разграничения доступа, где если исполнитель текущий, то он может видеть запись. Может оно не корректно срабатывает? Помогите разобраться с задачей. Спасибо.

#8 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 759 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 17 Март 2016 - 09:15

Правило пересохранять не пробовали после изменения поля? Если да и не помогло, то возможно и баг, отправьте заявку в ТП.

#9 alexrus

    Активный участник

  • Пользователи
  • PipPipPip
  • 32 сообщений

Отправлено 17 Март 2016 - 15:31

Может надо в правиле установить "содержит" {текущий}, если было "равно".

Сообщение отредактировал alexrus: 17 Март 2016 - 15:33


#10 bottrop

    Активный участник

  • Пользователи
  • PipPipPip
  • 153 сообщений
  • Пол:Мужчина
  • Город:Армавир

Отправлено 17 Март 2016 - 17:16

Не работает.
Вообще отключаю правила, и это не помогает.
В базе не предусмотрена возможность постановки одной задачи сразу нескольким менеджерам??? Создается именно такое впечатление.

#11 alexrus

    Активный участник

  • Пользователи
  • PipPipPip
  • 32 сообщений

Отправлено 17 Март 2016 - 17:56

А фильтры настраивали?

#12 GoGPS

    Активный участник

  • Пользователи
  • PipPipPip
  • 159 сообщений
  • Пол:Мужчина

Отправлено 17 Март 2016 - 17:58

Просмотр сообщенияbottrop (17 Март 2016 - 17:16) писал:

В базе не предусмотрена возможность постановки одной задачи сразу нескольким менеджерам???

Скорее всего так и есть. Таблица "Задания" завязана на "Отчет", в котором отражается кол-во заданий в назначенных/в очереди/выполненных per пользователь.

В случае множественного выбора не совсем понятно как будет работать отчет, если одно задание назначено сразу нескольким, а исполнитель у задания будет один.

Поправьте меня если я не прав

Сообщение отредактировал GoGPS: 17 Март 2016 - 17:59


#13 alexrus

    Активный участник

  • Пользователи
  • PipPipPip
  • 32 сообщений

Отправлено 17 Март 2016 - 18:11

Отчет разве может повлиять на отображение таблиц?

#14 GoGPS

    Активный участник

  • Пользователи
  • PipPipPip
  • 159 сообщений
  • Пол:Мужчина

Отправлено 17 Март 2016 - 19:41

Просмотр сообщенияalexrus (17 Март 2016 - 18:11) писал:

Отчет разве может повлиять на отображение таблиц?

Возможно множественный выбор в конкретно этой таблице не вяжется с концепцией работы этой таблицы, так как она завязана на "Рабочий стол" и на отчеты по заданиям.

Но я не уверен на 100%.

По моей логике: одно задание - один пользователь. Иначе не понятно кому бонусы начислять за выполнение :)))

Ждем что скажет CbCoder :)

Сообщение отредактировал GoGPS: 17 Март 2016 - 19:45


#15 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 759 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 18 Март 2016 - 10:13

Цитата

В базе не предусмотрена возможность постановки одной задачи сразу нескольким менеджерам??? Создается именно такое впечатление.

Вам же сказали - отправьте заявку в техподдержку, если не работает. Логика конкретной таблицы не имеет абсолютно никакого отношения к проблеме.

#16 bottrop

    Активный участник

  • Пользователи
  • PipPipPip
  • 153 сообщений
  • Пол:Мужчина
  • Город:Армавир

Отправлено 18 Март 2016 - 14:12

Просмотр сообщенияGoGPS (17 Март 2016 - 19:41) писал:

По моей логике: одно задание - один пользователь. Иначе не понятно кому бонусы начислять за выполнение :)))

Ждем что скажет CbCoder :)

На само деле это очень актуальная тема у нас, когда одна задача поручается нескольким менеджерам. Бонусы в этом случае не предусмотрены)

Просмотр сообщенияCbCoder (18 Март 2016 - 10:13) писал:

Вам же сказали - отправьте заявку в техподдержку, если не работает. Логика конкретной таблицы не имеет абсолютно никакого отношения к проблеме.
Отправил, жду. Становиться интересно

#17 GoGPS

    Активный участник

  • Пользователи
  • PipPipPip
  • 159 сообщений
  • Пол:Мужчина

Отправлено 21 Март 2016 - 12:31

Просмотр сообщенияbottrop (18 Март 2016 - 14:12) писал:

На само деле это очень актуальная тема у нас, когда одна задача поручается нескольким менеджерам. Бонусы в этом случае не предусмотрены)


Отправил, жду. Становиться интересно

Есть ли новости? :)

#18 bottrop

    Активный участник

  • Пользователи
  • PipPipPip
  • 153 сообщений
  • Пол:Мужчина
  • Город:Армавир

Отправлено 21 Март 2016 - 17:15

Сказали можно, но нужно отдельным вычислением делать, не простой вопрос как я понял. В общем обдумываем своими силами.

#19 GoGPS

    Активный участник

  • Пользователи
  • PipPipPip
  • 159 сообщений
  • Пол:Мужчина

Отправлено 21 Март 2016 - 20:04

Просмотр сообщенияbottrop (21 Март 2016 - 17:15) писал:

Сказали можно, но нужно отдельным вычислением делать, не простой вопрос как я понял. В общем обдумываем своими силами.

Дайте плс знать если получится. Вообщем то тоже нужна такая возможность.

#20 GoGPS

    Активный участник

  • Пользователи
  • PipPipPip
  • 159 сообщений
  • Пол:Мужчина

Отправлено 01 Апрель 2016 - 10:47

bottrop, вот вычисление
if(isset($event['is_new_line'])) {
	$result = data_select(47, "`id` = ", $line['ID']);
	$dataRow = sql_fetch_assoc($result);
	unset($dataRow['id']);
	$parts = explode("-", $dataRow['f492']);
	unset($parts[0]);
	unset($parts[count($parts)]);
	sort($parts);
	if(count($parts) > 1) {
		for ($i = 0; $i < count($parts); $i++) {
			if($i == 0) {
				data_update(47, EVENTS_ENABLE, array('f492' => '-'.$parts[$i].'-'), "`id` = ", $line['ID']);
			} else {
				$dataRow['f492'] = '-'.$parts[$i].'-';
				data_insert(47, EVENTS_ENABLE, $dataRow);
			}
		}
	}
}

47 - ID таблицы
f492 - ID поля Исполнитель

Вычислять при сохранении в таблице

Сообщение отредактировал GoGPS: 01 Апрель 2016 - 10:53






Количество пользователей, читающих эту тему: 2

0 пользователей, 2 гостей, 0 анонимных