2012-10-26 5 views
1

저는 Spring Roo와 Spring MVC를 사용하고 있습니다.로그인 이름을 캡처하고 사용자가 제출 한 레코드 만보기로 제한하는 방법

나는 표준 데이터베이스, 테이블 사용자, 테이블 권한을 사용하여 MySQL 데이터베이스와 인증을 사용하기 위해 스프링 보안을 설정했다.

내가 가진 것은 현장에서 영업 직원의 주문을받는 웹 응용 프로그램입니다. 단순히 양식을 채우고 데이터베이스에 제출하기 만하면됩니다.

ROO 생성 MVC 페이지를 시작하는 것이 좋지만 몇 가지 사항을 변경해야하며 정확한 수행 방법을 모르겠습니다. 나는 방금 자바를 배우는 습식을 얻고있다.

판매 주문 양식에서 사용자 이름을 캡처해야하고 제출 된 레코드에 사용자 이름이 태그로 지정된 다음 영업 담당자가 자신이 제출 한 레코드 만 볼 수 있도록보기를 필터링하십시오.

또한 폼의 맨 아래에 스타일러스 서명 캡처를 구현하고 싶습니다. 나는 http://thomasjbradley.ca/lab/signature-pad/#howto을 사용하는 방법을 알아 내려고 노력했지만 코드를 어디에 넣어야할지 모르겠다. src \ main \ views \ salesorders \ create.jspx에서 가정합니다. 이 부분은 원래 게시물의 주제가 아닌 것으로 알고 있습니다.

답변

0

데이터베이스에 주문 양식을 보관하는 테이블이 필요합니다. 이 테이블의 중요한 부분은 각 행에 제출 된 사용자에게 다시 매핑하는 방법이 있어야합니다. 이것은 대부분 사용자 테이블에 대한 외래 키인 컬럼으로 구현하는 것이 가장 쉽습니다.

특정 사용자의 양식을 가져올 시간이 오면 주문 양식 테이블을 쿼리하고 행을 현재 사용자로 제한하는 WHERE 절을 사용해야합니다.

두 번째 질문은 실제로 원래 질문과 전혀 관련이 없기 때문에 stackoverflow에 대한 다른 질문을하는 것이 더 가치가 있습니다.

+0

감사합니다. 주문을 담을 테이블이 있습니다. 당분간 영업 사원 이름이 채워진 다른 테이블을 작성한 다음 주문을 제출할 때 드롭 다운 목록에서 이름을 선택합니다. 잠재적 인 악용을 피하기 위해 목록에서 선택하는 대신 로그인 이름을 기반으로 이름을 붙잡고 싶습니다. 그 기능이 무엇인지 아십니까? 여기 내 create.jspx의 줄이 있습니다. Basics

+0

꽤 구체적인 질문입니다. –

+0

이것은 다소 까다 롭습니다. 권한, ROLE_SALES, ROLE_CSR이 있습니다. CSR은 모든 레코드를 볼 수 있어야합니다 .SALES는 자체 레코드 만 표시해야합니다. 아마도 특정 검색기를 자신의 역할 만 볼 수있게하는 것이 하나의 방법 일 수 있습니다.하지만 다른 사용자의 레코드를 보는 것을 막을 수는 없으므로 SalesOrder.java에서 '@NotNull @ManyToOne private SalesTechnician salesTech;'를 사용자 이름'SecurityContextHolder.getContext(). getAuthentication(). getName();'이 어딘가에 있지만 어디 있는지 모른다. : \ – Basics

관련 문제