应给每个用户设定是按组方式查询还是按地区查询,这样设计灵性更大,这样可以与用户性质无关,只有设定有关
1.应建立用户与组关系
2.应建立用户与地级市关系
select groupid,operatorid from zy_yp1_group_operator
select areaid,operatorid from zy_yp1_city_operator
3.设定给用户是哪一种查询方式,即是按组查还是按地级市查询,需要再加一个字段,用于设定是组方式还是地级市方式
后台三种类型增加查询方式字段QyeryType(全部,地级市,组区域)
--代理商
ALTER TABLE dbo.zy_yp1_proxy ADD
QyeryType char(10) NULL
GO
ALTER TABLE dbo.zy_yp1_proxy ADD CONSTRAINT
DF_zy_yp1_proxy_QyeryType DEFAULT '' FOR QyeryType
GO
update zy_yp1_manager set QueryType='地级市'
--内部员工
BEGIN TRANSACTION
ALTER TABLE dbo.ZY_SYS2_YGBM ADD
QyeryType char(10) NULL
GO
ALTER TABLE dbo.ZY_SYS2_YGBM ADD CONSTRAINT
DF_ZY_SYS2_YGBM_QyeryType DEFAULT '' FOR QyeryType
GO
COMMIT
update ZY_SYS2_YGBM set QueryType='全部'
--招商经理和专员
BEGIN TRANSACTION
ALTER TABLE dbo.zy_yp1_manager ADD
QyeryType char(10) NULL
GO
ALTER TABLE dbo.zy_yp1_manager ADD CONSTRAINT
DF_zy_yp1_manager_QyeryType DEFAULT '' FOR QyeryType
GO
COMMIT
update zy_yp1_manager set QueryType='组区域'--或地级市
--写错query了,将错就错了
增加一个函数用于判断当前用户的查询方式,并控制组区域和地级市的数据显示
测试用户
admin 公司用户
p00023 286655 代理商员工(专员)
zzh 911911 招商经理
zy001 0000 招商专员