2020-06-11 10:03:42 版本 : 人防开发框架 — 审计信息配置方法
作者: 余承浩 于 2020年06月11日 发布在分类 / 人防组 / 人防后端 下,并于 2020年06月11日 编辑
 历史版本

修改日期 修改人 备注
2020-06-12 12:30:01[当前版本] 余承浩 修改标题
2020-06-11 10:23:40 余承浩 格式调整
2020-06-11 10:03:42 余承浩 创建版本

前提

        ABP框架自带审计,但是审计字段属于long? 类型,与人防产品的权限校验系统不符合,无法直接完全使用该审计功能,所以只能基于现有权限校验进行重写

如何使用

引用人防框架类库

        应用层引用人防框架的Nugrt包 RunGo.Application.Shared v1.2.3.8

        领域层引用人防框架的Buget包 RunGo.Core.Shared v1.2.3.8

实体基类修改

        所有实体需要继承  IMayBeHaveTenant 接口,基类修改为 程序集RunGo.Core.Shared下的 命名空间 RunGo.Core 里面的FullAuditedEntity<TPrimaryKey> 泛型类,内置ABP原有的所有审计字段

有部分新增审计字段


        public virtual string CreatorUserId { get; set; }
        public virtual string CreatorAccountId { get; set; }
        public virtual string LastModifierUserId { get; set; }
        public virtual string LastModifierAccountId { get; set; }
        public virtual string DeleterUserId { get; set; }
        public virtual string DeleterAccountId { get; set; }
修改所有字段类型为string,用于适配现有权限体系


领域层动态API继承RunGoAppServiceFullBase基类

  1. 更新和详情Dto需要继承 程序集RunGo.Core.Shared下的 命名空间 RunGo.Core 里面的 EntityDto<TPrimaryKey>基类,内置主键Id属性
  2. 更新Dto中,特有属性(即不属于数据库字段的特有字段)需要标注[IgnoreMapAttribute]特性,用于更新时忽略该属性
  3. 基类构造需要注入 IHttpContextAccessor accessor
  4. 基类提供userMsg属性,可以在派生类中提取当前操作者信息
  5. 提供全部的审计功能

PS:修改范围挺大,请谨慎更新!!!

历史版本-目录  [回到顶端]
    知识分享平台 -V 4.8.7 -wcp