跳转到内容

有巢应用脚手架分析

有巢应用脚手架主要是为了简化开发流程,提高开发效率,减少重复劳动。它可以帮助开发者快速搭建一个基本的有巢应用,包括但不限于以下几点:

1. 多应用,每个新应用都要重跑一遍。 基础配置不是一次性动作,而是可复制的流程。没有脚手架,第一次靠想、第二次靠记、第三次开始漏——三次之后就想不全了。

2. 插件会往系统里塞东西,不写清楚就是黑箱。 数据字典插件插字典,组织机构插件插机构类型 / 性别 / 人员类型 / 学历 / 专业,审批状态插件插审批状态。这些是插件的隐式副作用——装完插件后系统里多出来什么,如果不提前列清楚,出问题根本不知道该去哪查。

3. 字典和枚举必须集中管。 税率、单位、计量单位这类业务常量,散在各业务表里就是灾难:改一次要改 N 处,改漏一处账就对不上。集中成字典项,改一处全生效。

4. 基础数据不预置,等于没上线。 角色(root / member / worker / admin / supporter)和组织(机构 → 部门)装完插件系统能跑,但没人有权限、组织树是空的,实际还是不能干活。

分类插件包名说明
官方插件@nocobase/plugin-map地图插件
官方插件@nocobase/plugin-field-m2m-array多对多数组
官方插件@nocobase/plugin-field-component-mask掩码
官方插件@nocobase/plugin-password-policy密码策略
官方插件@nocobase/plugin-field-encryption加密
官方插件@nocobase/plugin-auth-wecom企业微信
自研插件@youchaoyun/plugin-common-collections公共表
自研插件@youchaoyun/plugin-field-sequence-pro高级自动编码
自研插件@youchaoyun/plugin-data-dictionary数据字典
自研插件@youchaoyun/plugin-attachment高级附件上传
自研插件@youchaoyun/plugin-paas-organization组织机构
自研插件@youchaoyun/plugin-auto-generate快速构建
自研插件@youchaoyun/plugin-header-logo顶栏Logo标题
自研插件@youchaoyun/plugin-icon-library图标库扩展
自研插件@youchaoyun/plugin-quick-filter快速筛选
自研插件@youchaoyun/plugin-notification通用提醒通知
自研插件@youchaoyun/plugin-edit-metadata元数据编辑
自研插件@youchaoyun/plugin-approval-status审批状态
自研插件@youchaoyun/plugin-login-setting登录页设置
自研插件@youchaoyun/plugin-watermark水印
第三方插件……—
字典类别系统字典项(枚举值)自动插入来源
字典类别#DictCatalog是系统【内置】数据字典插件
税率#TaxRate——数据字典插件
计量单位#Unit——数据字典插件
机构类型#OrganizationType是机构(集团/子分公司/项目部)、部门、外协队伍组织机构插件
性别#Sex—男、女、未说明的性别、未知的性别组织机构插件
人员类型#PersonType—管理人员(系统)、作业人员(系统)、网格人员、协作人员组织机构插件
学历#Degree——组织机构插件
专业#Major——组织机构插件
审批状态#ApprovalStatus是—审批状态插件
角色类型#RoleType是内置数据字典插件
合同类型#ContractType是—数据字典插件
伙伴类型#PartnerType是—数据字典插件
角色名称 角色标识 类别 说明 系统管理 数据权限 路由 AI员工 业务权限 功能权限 人员范围
Root root 角色 系统内置超级管理,主要用于系统初始化,部署用 ✓ ✓ ✓ ✓ ✓ ✓ ✓
管理人员 member 角色 默认角色,查看本机构及下级机构或公开信息,添加,编辑/删除个人数据 本级机构及下级
作业人员 worker 角色 自己的数据
系统管理员 admin 角色 用户后台管理、权限分配,不可查看业务数据 允许配置插件(与系统搭建相关的关闭权限)允许清除缓存,重启应用
技术支持 supporter 角色 技术支持用,由admin按需开通 ✓ ✓ ✓ ✓ ✓ ✓ ✓
董事长/书记 chairman 岗位 ✓ ✓ ✓ ✓ ✓
总经理/项目经理 GM 岗位 ✓ ✓ ✓ ✓ ✓
插件数据表主键
数据字典dictTypestypeCode
数据字典dictItemsid
组织机构organizationsid
组织机构identitiesid
组织机构employeesid

主键 typeCode · 唯一约束 typeName

#字段类型可空
1typeCodevarcharNOT NULL
2typeNamevarcharNOT NULL
3categoryvarcharNULL
4enabledbooleanNOT NULL
5builtInbooleanNULL
6remarktextNULL
7orderbigintNULL
8sortbigintNULL
9createdByIdbigintNULL
10updatedByIdbigintNULL
11createdAttimestamptzNULL
12updatedAttimestamptzNULL

主键 id · 唯一约束 —

#字段类型可空
1idbigintNOT NULL
2codevarcharNOT NULL
3namevarcharNOT NULL
4enabledbooleanNOT NULL
5builtInbooleanNULL
6colorvarcharNOT NULL
7remarkvarcharNULL
8parentIdbigintNULL
9fTypeCodevarcharNULL
10orderbigintNULL
11sortbigintNULL
12iconvarcharNULL
13createdByIdbigintNULL
14updatedByIdbigintNULL
15createdAttimestamptzNULL
16updatedAttimestamptzNULL

主键 id · 唯一约束 —

#字段类型可空
1idbigintNOT NULL
2namevarcharNOT NULL
3codevarcharNOT NULL
4fullCodevarcharNULL
5orderbigintNULL
6enabledbooleanNOT NULL
7parentIdbigintNULL
8organizationTypevarcharNULL
9ownerIdbigintNULL
10organizationIdbigintNULL
11levelbigintNULL
12descriptionvarcharNULL
13sortbigintNULL
14createdOrgIdbigintNULL
15createdDeptIdbigintNULL
16createdByIdbigintNULL
17updatedByIdbigintNULL
18createdAttimestamptzNULL
19updatedAttimestamptzNULL

主键 id · 唯一约束 departmentId + employeeId

#字段类型可空
1idbigintNOT NULL
2departmentIdbigintNOT NULL
3organizationIdbigintNOT NULL
4employeeIdbigintNOT NULL
5userIdbigintNULL
6roleNamevarcharNULL
7isMainbooleanNOT NULL
8isOwnerbooleanNOT NULL
9enabledbooleanNOT NULL
10isCurrentbooleanNOT NULL
11sortbigintNULL
12directSupervisorIdbigintNULL
13createdOrgIdbigintNULL
14createdDeptIdbigintNULL
15createdByIdbigintNULL
16updatedByIdbigintNULL
17createdAttimestamptzNULL
18updatedAttimestamptzNULL

主键 id · 唯一约束 idCard

#字段类型可空
1idbigintNOT NULL
2namevarcharNULL
3numbervarcharNULL
4userIdbigintNULL
5phonevarcharNULL
6idCardvarcharNULL
7agevarcharNULL
8sexvarcharNULL
9birthdaydateNULL
10personTypevarcharNULL
11emergencyContactvarcharNULL
12emergencyPhonevarcharNULL
13schoolvarcharNULL
14firstDegreevarcharNULL
15highestDegreevarcharNULL
16eduMajorvarcharNULL
17graduationTimedateNULL
18sortbigintNULL
19emailvarcharNULL
20isValidbooleanNULL
21orderbigintNULL
22createdByIdbigintNULL
23updatedByIdbigintNULL
24createdAttimestamptzNULL
25updatedAttimestamptzNULL
  • 人员基础
    • 管理人员
      • 组织机构
      • 员工信息
      • 员工花名册
    • 基础设置
      • 职称
      • 专业
  • 系统设置
    • 数字员工
    • 岗位维护
    • 角色维护
角色名称角色标识类别
Rootroot角色
管理人员member角色
作业人员worker角色
系统管理员admin角色
技术支持supporter角色
董事长/书记chairman岗位
总经理/项目经理GM岗位
用户名所属角色类别
adminroot角色
youchaosupporter角色
  • 消息模版
  • 租户开通开启(租户)

    • 运营系统租户管理员为系统的管理员
    • 系统语言(enabledLanguages)
    • 角色模式(允许角色并集)(roleMode)
    • 默认主题(default)、颜色(default/compact):themeConfig
    • 角色模式(允许角色并集)(roleMode)
  • 系统基础信息(内部)

    • 系统名称(title)
    • 系统语言(enabledLanguages)
    • 角色模式(允许角色并集)(roleMode)
    • 默认主题(default)、颜色(default/compact):themeConfig
    • 技术支持/品牌/关于/网站图标(applicationPlugins->custom-brand->options)