关注JEECG发展历程 关注最新动态和版本, 记录JEECG成长点滴 更新日志 - 技术支持 - 招聘英才

JEECG最新版本下载 JEECG智能开发平台 - 显著提高开发效率 常见问题 - 入门视频 - 参与开源团队

商务QQ: 69893005、3102411850 商务热线(5*8小时): 010-64808099 官方邮箱: jeecgos@163.com

查看: 8260|回复: 3

[系统权限] hql如何按部门和公司过滤数据

[复制链接]
发表于 2018-3-21 14:28:39 | 显示全部楼层 |阅读模式
如图,怎么设置数据规则,让不同角色看不同数据,部门只能看部门员工,公司可以看公司下所有员工。



2101.png
发表于 2018-3-21 19:37:30 | 显示全部楼层
看下数据权限文档
 楼主| 发表于 2018-3-21 19:54:51 | 显示全部楼层
admin 发表于 2018-3-21 19:37
看下数据权限文档

package org.jeecgframework.web.system.pojo.base;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.JoinColumn;
import javax.persistence.OneToOne;
import javax.persistence.PrimaryKeyJoinColumn;
import javax.persistence.Table;

import org.jeecgframework.poi.excel.annotation.Excel;

import com.jeecg.mealstandard.entity.MealStandardEntity;

/**
* 系统用户表
*  @author  张代浩
*/
@Entity
@Table(name = "t_s_user")
@PrimaryKeyJoinColumn(name = "id")
public class TSUser extends TSBaseUser implements java.io.Serializable {
        private static final long serialVersionUID = 1L;
        private String signatureFile;// 签名文件

        @Excel(name = "手机" ,width = 20)
        private String mobilePhone;// 手机
        @Excel(name = "办公电话",width = 20)
        private String officePhone;// 办公电话
        @Excel(name = "邮箱",width = 25)

        private String email;// 邮箱
        /**创建时间*/
        private java.util.Date createDate;
        /**创建人ID*/
        private java.lang.String createBy;
        /**创建人名称*/
        private java.lang.String createName;
        /**修改时间*/
        private java.util.Date updateDate;
        /**修改人*/
        private java.lang.String updateBy;
        /**修改人名称*/
        private java.lang.String updateName;
        /**头像*/
        private java.lang.String portrait;
        /**开发权限标志*/
        private java.lang.String devFlag;
        private String userType;//用户类型  1:系统用户 \2接口用户
        private String personType;//人员类型
        private String sex;//性别
        private String empNo;//工号
        private String citizenNo;//身份证号
        private String fax;//传真
        private String address;//联系地址
        private String post;//邮编
        private String memo;//备注
        private MealStandardEntity mealStandard;//餐费标准
        private Integer windowPort;//食堂窗口
        @Column(name="windowPort")
        public Integer getWindowPort() {
                return windowPort;
        }

        public void setWindowPort(Integer windowPort) {
                this.windowPort = windowPort;
        }
       
        @OneToOne(targetEntity=MealStandardEntity.class)
        @JoinColumn(name="MealStandardId")
        public MealStandardEntity getMealStandard() {
                return mealStandard;
        }

        public void setMealStandard(MealStandardEntity mealStandard) {
                this.mealStandard = mealStandard;
        }

        @Column(name = "dev_flag", length = 2)
        public String getDevFlag() {
                return devFlag;
        }

        public void setDevFlag(String devFlag) {
                this.devFlag = devFlag;
        }
        @Column(name = "signatureFile", length = 100)
        public String getSignatureFile() {
                return this.signatureFile;
        }

        public void setSignatureFile(String signatureFile) {
                this.signatureFile = signatureFile;
        }

        @Column(name = "mobilePhone", length = 30)
        public String getMobilePhone() {
                return this.mobilePhone;
        }

        public void setMobilePhone(String mobilePhone) {
                this.mobilePhone = mobilePhone;
        }

        @Column(name = "officePhone", length = 20)
        public String getOfficePhone() {
                return this.officePhone;
        }

        public void setOfficePhone(String officePhone) {
                this.officePhone = officePhone;
        }

        @Column(name = "email", length = 50)
        public String getEmail() {
                return this.email;
        }

        public void setEmail(String email) {
                this.email = email;
        }
        /**
         *方法: 取得java.util.Date
         *@return: java.util.Date  创建时间
         */
        @Column(name ="create_date",nullable=true)
        public java.util.Date getCreateDate(){
                return this.createDate;
        }

        /**
         *方法: 设置java.util.Date
         *@param: java.util.Date  创建时间
         */
        public void setCreateDate(java.util.Date createDate){
                this.createDate = createDate;
        }
        /**
         *方法: 取得java.lang.String
         *@return: java.lang.String  创建人ID
         */
        @Column(name ="create_by",nullable=true,length=32)
        public java.lang.String getCreateBy(){
                return this.createBy;
        }

        /**
         *方法: 设置java.lang.String
         *@param: java.lang.String  创建人ID
         */
        public void setCreateBy(java.lang.String createBy){
                this.createBy = createBy;
        }
        /**
         *方法: 取得java.lang.String
         *@return: java.lang.String  创建人名称
         */
        @Column(name ="create_name",nullable=true,length=32)
        public java.lang.String getCreateName(){
                return this.createName;
        }

        /**
         *方法: 设置java.lang.String
         *@param: java.lang.String  创建人名称
         */
        public void setCreateName(java.lang.String createName){
                this.createName = createName;
        }
        /**
         *方法: 取得java.util.Date
         *@return: java.util.Date  修改时间
         */
        @Column(name ="update_date",nullable=true)
        public java.util.Date getUpdateDate(){
                return this.updateDate;
        }

        /**
         *方法: 设置java.util.Date
         *@param: java.util.Date  修改时间
         */
        public void setUpdateDate(java.util.Date updateDate){
                this.updateDate = updateDate;
        }
        /**
         *方法: 取得java.lang.String
         *@return: java.lang.String  修改人ID
         */
        @Column(name ="update_by",nullable=true,length=32)
        public java.lang.String getUpdateBy(){
                return this.updateBy;
        }

        /**
         *方法: 设置java.lang.String
         *@param: java.lang.String  修改人ID
         */
        public void setUpdateBy(java.lang.String updateBy){
                this.updateBy = updateBy;
        }
        /**
         *方法: 取得java.lang.String
         *@return: java.lang.String  修改人名称
         */
        @Column(name ="update_name",nullable=true,length=32)
        public java.lang.String getUpdateName(){
                return this.updateName;
        }

        /**
         *方法: 设置java.lang.String
         *@param: java.lang.String  修改人名称
         */
        public void setUpdateName(java.lang.String updateName){
                this.updateName = updateName;
        }
        @Column(name = "portrait", length = 100)
        public String getPortrait() {
                return portrait;
        }

        public void setPortrait(String portrait) {
                this.portrait = portrait;
        }
       
        @Column(name = "user_type")
        public String getUserType() {
                return userType;
        }

        public void setUserType(String userType) {
                this.userType = userType;
        }
       
        @Column(name = "person_type")
        public String getPersonType() {
                return personType;
        }

        public void setPersonType(String personType) {
                this.personType = personType;
        }

        @Column(name = "sex")
        public String getSex() {
                return sex;
        }

        public void setSex(String sex) {
                this.sex = sex;
        }

        @Column(name = "emp_no")
        public String getEmpNo() {
                return empNo;
        }

        public void setEmpNo(String empNo) {
                this.empNo = empNo;
        }

        @Column(name = "citizen_no")
        public String getCitizenNo() {
                return citizenNo;
        }

        public void setCitizenNo(String citizenNo) {
                this.citizenNo = citizenNo;
        }

        @Column(name = "fax")
        public String getFax() {
                return fax;
        }

        public void setFax(String fax) {
                this.fax = fax;
        }

        @Column(name = "address")
        public String getAddress() {
                return address;
        }

        public void setAddress(String address) {
                this.address = address;
        }

        @Column(name = "post")
        public String getPost() {
                return post;
        }

        public void setPost(String post) {
                this.post = post;
        }

        @Column(name = "memo")
        public String getMemo() {
                return memo;
        }

        public void setMemo(String memo) {
                this.memo = memo;
        }
       
        @Override
        public String toString() {
                StringBuilder builder = new StringBuilder();
                builder.append("TSUser [signatureFile=");
                builder.append(signatureFile);
                builder.append(", mobilePhone=");
                builder.append(mobilePhone);
                builder.append(", officePhone=");
                builder.append(officePhone);
                builder.append(", email=");
                builder.append(email);
                builder.append(", createDate=");
                builder.append(createDate);
                builder.append(", createBy=");
                builder.append(createBy);
                builder.append(", createName=");
                builder.append(createName);
                builder.append(", updateDate=");
                builder.append(updateDate);
                builder.append(", updateBy=");
                builder.append(updateBy);
                builder.append(", updateName=");
                builder.append(updateName);
                builder.append(", portrait=");
                builder.append(portrait);
                builder.append(", devFlag=");
                builder.append(devFlag);
                builder.append(", userType=");
                builder.append(userType);
                builder.append(", personType=");
                builder.append(personType);
                builder.append(", sex=");
                builder.append(sex);
                builder.append(", empNo=");
                builder.append(empNo);
                builder.append(", citizenNo=");
                builder.append(citizenNo);
                builder.append(", fax=");
                builder.append(fax);
                builder.append(", address=");
                builder.append(address);
                builder.append(", post=");
                builder.append(post);
                builder.append(", memo=");
                builder.append(memo);
                builder.append("]");
                return builder.toString();
        }

}









找不到hibernate对应实体

找不到hibernate对应实体
 楼主| 发表于 2018-3-21 19:55:48 | 显示全部楼层
1042843694 发表于 2018-3-21 19:54
package org.jeecgframework.web.system.pojo.base;

import javax.persistence.Column;

public class TSBaseUser extends IdEntity implements java.io.Serializable {
        private static final long serialVersionUID = 1L;

        @Excel(name = "用户名",width = 15)
        private String userName;// 用户名
        @Excel(name = "真实姓名",width = 15)
        private String realName;// 真实姓名
        private String browser;// 用户使用浏览器类型
        @Excel(name = "角色编码(多个角色编码用逗号分隔,非必填)",width =50)

        private String userKey;// 用户验证唯一标示
        private String password;//用户密码
        private Short activitiSync;//是否同步工作流引擎
        /*@Excel(name = "状态")*/
        private Short status;// 状态1:在线,2:离线,0:禁用
       
        private Short deleteFlag;// 状态: 0:不删除  1:删除
       
        private byte[] signature;// 签名文件
        private String userNameEn;//英文名
       
        @Excel(name = "组织机构编码(多个组织机构编码用逗号分隔,非必填)",width = 50)
        private String departid;

        public void setDepartid(String departid){
                this.departid = departid;
        }
        @Column(name = "departid",length=32)
        public String getDepartid(){
                return departid;
        }

    //        private TSDepart TSDepart = new TSDepart();// 部门
    private List<TSUserOrg> userOrgList = new ArrayList<TSUserOrg>();
        private TSDepart currentDepart = new TSDepart();// 当前部门
    //省略get set
}
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表