Trang đích vai trò


10

Chúng tôi có một số người dùng khác nhau sử dụng back end Magento cho các mục đích sử dụng khác nhau.

Ví dụ: chúng tôi có những người chủ yếu chỉ gửi các gói hàng và tất cả những gì chúng tôi thực sự muốn họ nhìn thấy là trang giao hàng - và nếu không chỉ trang đó, họ nên hạ cánh ở đó khi đăng nhập.

Khi cố gắng để có được thiết lập này, tôi đã tạo một "ship" người dùng mới và liên kết nó với vai trò "shipper" mới. Vai trò này đã được cấp quyền truy cập vào tài nguyên Bán hàng -> Lô hàng.

Tôi đăng nhập như tàu, và thì đấy! Hoàn hảo! Hạ cánh ngay trong lưới lô hàng, tôi đã có thể mở một lô hàng - và sau đó tôi nhận thấy vấn đề. Người dùng này không thể gửi thông tin theo dõi, đây là điều bắt buộc phải có cho vai trò này.

Tôi đã có thể có nút này để hiển thị / chức năng trên màn hình giao hàng bằng cách bật tài nguyên vai trò Bán hàng -> Đơn hàng -> Hành động -> Gửi email bán hàng.

Bây giờ khi tàu đăng nhập, tuy nhiên, nó được đổ vào lưới đơn hàng, không phải lưới lô hàng. Tôi phỏng đoán rằng đó đơn giản là vì "Đơn hàng" trên cây tài nguyên cao hơn "Lô hàng". Điều đó có đúng không?

Câu chuyện dài : có cách nào hiệu quả để đưa người dùng quản trị vào một màn hình / lưới cụ thể không?

Tốt nhất là từ trong màn hình cấu hình - Tôi không nghi ngờ rằng điều này có thể được thực hiện bởi một trong những nhà phát triển của chúng tôi.

Có một số vai trò khác nhau mà chúng tôi yêu cầu có thể được sắp xếp hợp lý bằng cách đặt những người dùng này ở nơi họ cần đến 99%.


1
@ j0k: bây giờ bạn sẽ chỉnh sửa mọi bài viết chứ?
dùng487772

@Tim không phải mỗi một người, chỉ những người có lỗi đánh máy bên trong.
j0k

Câu trả lời:


8

Đây là một cách để làm điều đó:

  • Tạo người quan sát để xem khi quản trị viên đăng nhập, cụ thể là admin_session_user_login_successsự kiện
  • Kiểm tra vai trò của quản trị viên hiện tại là gì, sử dụng mã sau:

    $roleId = implode('', Mage::getSingleton('admin/session')->getUser()->getRoles());
    $roleName = Mage::getModel('admin/roles')->load($roleId)->getRoleName();
    
  • Chuyển hướng đến trang mong muốn dựa trên vai trò, sử dụng mã sau:

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

Hy vọng điều này hữu ích :)


Thú vị - và điều này sẽ hoạt động với chức năng "Thêm khóa bí mật vào URL" được bật?
blckgrffn

nên hoạt động, mặc dù không bao giờ thử nghiệm nó
pzirkind
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.