Проблема с видимостью задач при ограничении прав

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • dimyy
    Active Community Member
    • Jun 2018
    • 569

    Проблема с видимостью задач при ограничении прав

    Для ограничения работы с задачами настроены права: http://joxi.ru/8234q6gHJKdqJA

    Пользователь видит только назначенные ему задачи, но не видит созданные им задачи.

    По логике если ограничение по группе то либо он пока не проставлена группа не должен видеть оба варианта, либо в любом случае видит оба варианта, но не селективно.

    Два вопроса:

    1. Как сделать при создании автоматическое проставление контрагента в задачу?
    2. Как сделать автоматическое подтягивание групп от источника при сохранении задачи?
    3. Или как сделать автоматическое подтягивание групп от создающего пользователя?

    Или же это архитектурно неправильный подход и добиться что бы пользователь видел задачи только по своему контрагенту надо каким то иным образом?
    Last edited by dimyy; 06-27-2018, 08:22 AM.
  • tanya
    Senior Member
    • Jun 2014
    • 4308

    #2
    Когда пользователь создаёт задачи, кому он их назначет?
    исходный код https://github.com/espocrm/espocrm/b.../Base.php#L204

    Comment

    • dimyy
      Active Community Member
      • Jun 2018
      • 569

      #3
      Если пользователь назначает себе то задачу видит,
      Если после этого задача переназначается кому то еще то после этого нет

      Comment

      • tanya
        Senior Member
        • Jun 2014
        • 4308

        #4
        Так в коде и написано и как по мне - логично. Это уже не его задача и он имеет право её не видеть.

        Comment

        • dimyy
          Active Community Member
          • Jun 2018
          • 569

          #5
          Создано то не меняется.

          Есть роль создатель и согласно коду он в любом случае должен ее видеть
          Есть роль исполнитель - кому она назначается и кто так же должен ее видеть.

          Судя по коду именно это и написано - isOwner === true
          либо при if ($user->id === $entity->get('assignedUserId'))
          либо при if ($entity->hasAttribute('createdById'))

          а на практике так не происходит. Видимо где то еще фильтрация есть - например где проверяются доступы по группе.

          Comment

          • tanya
            Senior Member
            • Jun 2014
            • 4308

            #6
            там же ж не либо / либо
            если назначен пользователь ...
            ИНАЧЕ если создатель

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

            Comment

            • dimyy
              Active Community Member
              • Jun 2018
              • 569

              #7
              По коду согласился. По логике - честно говоря странно почему создатель теряет доступ к задаче?

              И было продолжение вопрос - как протянуть при сохранении сущности группы от создателя для сохранения видимости.

              Comment

              • tanya
                Senior Member
                • Jun 2014
                • 4308

                #8
                В пользователей есть поле Default Team (возможно перевод Группа по-умолчанию, не проверяла).
                Если это поле задано, то автоматически группа создателя добавится в список груп при создании любой сущности.

                Comment

                • tanya
                  Senior Member
                  • Jun 2014
                  • 4308

                  #9
                  Хотя прошу прощение. Default team берётся от пользователя. Вот в формуле можно добавить Default team создателя
                  https://www.espocrm.com/documentatio...ation/formula/


                  Hello, i have tried to set assigned user from the entity formula and is not working i have tried the following configs: entity\addLinkMultipleId("assign


                  https://www.espocrm.com/documentation/administration/formula/#user-content-envuserattribute
                  Last edited by tanya; 06-27-2018, 09:33 AM.

                  Comment

                  • dimyy
                    Active Community Member
                    • Jun 2018
                    • 569

                    #10
                    Спасибо большое.

                    Правда что бы пользователь ручками не гадил надо еще запретить редактировании поля с группой - тогда все отлично. (В противном случае если стоит запрет на сущность то удалить группу по умолчанию при создании сущности пользователь может, а вот вернуть обратно уже нет)

                    Comment

                    • tanya
                      Senior Member
                      • Jun 2014
                      • 4308

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

                      Comment

                      • dimyy
                        Active Community Member
                        • Jun 2018
                        • 569

                        #12
                        А есть ли возможность сделать "контрагент по умолчанию" уже в рамках портала для пользователя портала?

                        Задачи создаваемые в портале в итоге к данному порталу никак не подвязаны?

                        Comment

                        • tanya
                          Senior Member
                          • Jun 2014
                          • 4308

                          #13
                          Это поле автоматически вычесляется https://github.com/espocrm/espocrm/b...s/Task.php#L72

                          Попробуйте в Formula переопределить accountId (и возможно для визуализации и accountName)

                          Comment

                          • dimyy
                            Active Community Member
                            • Jun 2018
                            • 569

                            #14
                            Будем пробовать.
                            А есть кастомизация на уровне портала или только глобально на уровне сущности?
                            И есть ли возможность макеты править на уровне портала?

                            Comment

                            • tanya
                              Senior Member
                              • Jun 2014
                              • 4308

                              #15
                              - А есть кастомизация на уровне портала или только глобально на уровне сущности?

                              О какой именно кастомизации идет речь?

                              Относительно макетов портала - пока поддерживаются отдельные макеты для портала в сущностях Обращение и База Знаний

                              Comment

                              Working...