역할 방문 페이지


10

다양한 용도로 Magento 백엔드를 사용하는 여러 사용자가 있습니다.

예를 들어, 우리는 본질적으로 패키지를 배송하는 사람들을 가지고 있으며, 실제로보고 싶어하는 것은 배송 페이지입니다. 해당 페이지가 아니라면 로그인 할 때 도착해야합니다.

이 설정을 가져 오려고 할 때 새 사용자 "ship"을 만들고 새 역할 "shipper"와 연결했습니다. 이 역할은 자원 Sales-> Shipments에 대한 액세스 권한이 부여되었습니다.

나는 배로 로그인하고 짜잔! 완전한! 발송물 그리드에 바로 도착하여 발송물을 열 수 있었고 문제가 발견되었습니다. 이 사용자는 추적 정보를 보낼 수 없습니다.이 역할에 반드시 필요한 정보입니다.

영업 자원-> 주문-> 작업-> 영업 전자 메일 보내기를 활성화하여이 버튼을 선적 화면에 표시 / 기능 할 수있었습니다.

그러나 선박이 로그인하면 선적 그리드가 아닌 주문 그리드에 덤프됩니다. "Orers"가 "Shipments"보다 리소스 트리에서 더 높기 때문이라고 생각합니다. 그게 사실입니까?

간단히 말해 : 특정 화면 / 그리드에 관리자를 착륙시키는 효과적인 방법이 있습니까?

바람직하게는 구성 화면 내에서-개발자 중 한 명이이를 구현할 수있을 것입니다.

99 %의 시간을 필요로하는 곳에 사용자를 배치하여 능률화 할 수있는 다양한 역할이 있습니다.


1
@ j0k : 이제 모든 게시물을 편집 하시겠습니까?
user487772

@ 오직 하나만있는 것이 아니라 안에 오타가있는 사람들을 말합니다.
j0k

답변:


8

이를 수행하는 한 가지 방법이 있습니다.

  • 관리자가 로그인 할 때 관찰하는 admin_session_user_login_success이벤트 , 즉 이벤트
  • 현재 관리자의 역할을 확인하고 다음 코드를 사용하십시오.

    $roleId = implode('', Mage::getSingleton('admin/session')->getUser()->getRoles());
    $roleName = Mage::getModel('admin/roles')->load($roleId)->getRoleName();
    
  • 역할에 따라 원하는 페이지로 리디렉션하려면 다음 코드를 사용하십시오.

    Mage::app()->getResponse()
               ->setRedirect(Mage::helper('adminhtml')
               ->getUrl("admin/sales_order/view", array('id'=>'1')));
    

이것이 도움이 되었기를 바랍니다 :)


흥미 롭습니다. "URL에 비밀 키 추가"기능이 활성화되어 있습니까?
blckgrffn

테스트하지는 않았지만 작동해야 함
pzirkind
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.