From 2e7ce01632012ccc0dd440a8bc37a9ec9bd55fac Mon Sep 17 00:00:00 2001 From: Ivan Kohler Date: Thu, 24 Oct 2013 23:29:58 -0700 Subject: limit sales reports for employee, RT#25524 --- FS/FS/Schema.pm | 1 + FS/FS/access_user.pm | 14 ++++++++++++++ 2 files changed, 15 insertions(+) (limited to 'FS') diff --git a/FS/FS/Schema.pm b/FS/FS/Schema.pm index fcc2092a7..59c2abee9 100644 --- a/FS/FS/Schema.pm +++ b/FS/FS/Schema.pm @@ -3804,6 +3804,7 @@ sub tables_hashref { 'last', 'varchar', 'NULL', $char_d, '', '', 'first', 'varchar', 'NULL', $char_d, '', '', 'user_custnum', 'int', 'NULL', '', '', '', + 'report_salesnum', 'int', 'NULL', '', '', '', 'disabled', 'char', 'NULL', 1, '', '', ], 'primary_key' => 'usernum', diff --git a/FS/FS/access_user.pm b/FS/FS/access_user.pm index 7c25acbe3..c938474a6 100644 --- a/FS/FS/access_user.pm +++ b/FS/FS/access_user.pm @@ -11,6 +11,7 @@ use FS::access_user_pref; use FS::access_usergroup; use FS::agent; use FS::cust_main; +use FS::sales; $DEBUG = 0; $me = '[FS::access_user]'; @@ -213,6 +214,7 @@ sub check { || $self->ut_textn('last') || $self->ut_textn('first') || $self->ut_foreign_keyn('user_custnum', 'cust_main', 'custnum') + || $self->ut_foreign_keyn('report_salesnum', 'sales', 'salesnum') || $self->ut_enum('disabled', [ '', 'Y' ] ) ; return $error if $error; @@ -246,6 +248,18 @@ sub user_cust_main { qsearchs( 'cust_main', { 'custnum' => $self->user_custnum } ); } +=item report_sales + +Returns the FS::sales object (see L), if any, for this +user. + +=cut + +sub report_sales { + my $self = shift; + qsearchs( 'sales', { 'salesnum' => $self->report_salesnum } ); +} + =item access_usergroup Returns links to the the groups this user is a part of, as FS::access_usergroup -- cgit v1.2.1