一二三应用开发平台使用手册——系统管理-组织机构-使用说明

概述

平台文档是平台的重要组成部分,这块容易被忽视或不被重视。即使一个平台或系统架构优秀、设计合理、代码优雅,但文档缺失,对于平台的使用方而言,熟悉成本高、难度大。不可避免存在疑问,需要动手尝试验证或翻看源码才能确定系统的实际处理逻辑,效率低下。

此外,有些平台或系统虽然有文档,但文档流于形式化,为了写文档而写文档的产物。这样的文档质量堪忧,常见的问题主要有两个:
1.形式化与套路化,把功能模块和实体一列,然后增删改查,放几张截图,实际上都是些正确而无用的套话,提供的价值非常有限。
2.文档与系统实现不符,没有随系统重构或优化同步调整,这种实际危害更大,容易产生误导。

个人认为,文档应该站在使用者角度去编写,除了把属性和功能说清楚说完整,更重要的是把注意事项、最佳实践表达出来。在描述过程中,也应该提下为什么这么设计,有什么优点,以及有什么局限。

这样的文档,才能发挥自身的作用,给使用者必要的指引,让使用者快速了解与入门,遵循平台的设计,合理使用平台,追求最佳实践,发挥平台价值。

好了,就说这么多,接下来进入今天的正题,系统管理模块中的组织机构使用说明。

对于企业应用,组织机构是重要的基础数据,用来组织和管理人员。
同时,组织机构往往是系统数据权限控制的重要维度。
对于新系统,初始化组织机构通常是第一步工作。

属性

  • 名称:组织机构的名称,核心属性。
  • 编码:组织机构的编码,全局唯一。系统处理时可通过编码来为指定的组织机构执行特定的逻辑处理。当企业内存在重名的组织机构时,如生产一部和生产二部下都存在1号车间,这时候可以通过唯一性编码来区分。
  • 上级:组织机构通过自关联形成树状结构,因此上级属性非常重要。
  • 类型:一般而言,企业不是简单的公司-部门两级机构,而是复杂的组织层次,集团-公司-部门-模块(小组)。同时,公司还会存在子公司和分公司。为组织机构设置类型,系统处理时可对指定类型的组织机构进行特定的逻辑处理。此外,可以通过人员的组织机构标识,结合组织机构类型属性,往上递归获取到人员所属的部门和公司。
  • 状态:正常与停用两种状态,组织机构会拆分、合并、废弃。对于组织机构这样的核心基础数据,通常不能直接删除,否则会影响历史单据的正常展示,而是通过设置状态的方式来实现停用的目的。停用后仅在组织机构管理界面可见,组织机构选择时不可见,从而也不会被选取和使用。
  • 排序:用于控制列表显示次序,注意字段类型为字符串而不是整形,这么做是为了便于数据插入。对于01,02,03……09这样的组织机构列表,如需要在02与03中间插入一个组织机构,可以将排序设置为0201。如采用整形,则需要将第3条记录及以后所有记录序号都加1,变动范围广,数据量大的时候可能会引发性能问题和并发问题。
  • 备注:放一些辅助说明,没什么好说的。

可扩展
负责人:可以考虑将组织机构负责人作为属性来维护,这样业务实现时可以通过该方式获取部门负责人或公司负责人,不过这只是实现方案之一。实际往往通过角色来设置部门经理或公司总经理,而不是在组织机构上通过属性来维护。

功能项

常规功能

新增:新增单条数据。
修改:修改单条数据。
删除:删除数据,这里的删除跟上文中的设置状态停用不同,是真正的删除(逻辑删除)。对于确认录入错误的数据,尚未被单据使用,应当彻底清理掉而不是将其状态设置为停用。考虑到组织机构的作为基础数据重要性,删除前会验证是否存在下级和下属人员,若存在则提示并终止操作。
查询:多条件组合,模糊匹配当前系统中的数据。
查看:查看单条数据。
复制新增:以某条数据为基础,拷贝方式快速创建数据。

扩展功能

启用、停用:快速设置状态。
批量导入:通过预置的excel模板,填充数据,上传并批量导入,导入时附带了数据验证。注意,本功能的目的主要是实现组织机构初始化功能,功能实现内部是新增,如数据已存在,会提示。批量导入功能在规划设计上不具备批量更新数据的职责,组织机构的更新需求,通过系统修改功能直接操作。
批量导出:批量导出到excel表中,该功能与数据查询进行了结合,将查询结果导出,因此既可以导出全量数据(查询条件为空),也可以只导出经过查询条件筛选后的数据。
下载模板:辅助功能,下载批量导入的exce模板。

注:若需了解该功能excel导入导出相关设计与实现,参见https://blog.csdn.net/seawaving/article/details/131299250。

界面设计

树表查询

典型布局,组织机构是树形结构数据,如列表方式平铺,难以直观看出组织机构的层次关系。因此采用左树右表的方式,左侧树用于导航,并参与数据查询。点击树节点时自动查询该节点下的组织机构。
右侧上方为查询区域,可灵活组合多种查询条件,筛选需要的数据。
此外,为应对全局搜索是否存在某个名称或编码的组织机构的需求场景,附加了一个“查询全部”的复选框,勾选后将忽略当前选择的组织机构。
image.png

新建/修改/查看

这三个功能界面差不多,操作上略有差异。
新建会打开空白表单,部分属性以默认值填充。
修改则会查询数据库,填充实体属性值,在此基础上修改。
查看也是查询数据库填充实体属性,但不能保存。
image.png

Excel模板

对于组织机构而言,有可能存在重名,如生产一部和生产二部两个部门下各存在一个名称为“1号车间”的部门,这时候通过上级名称就没法确定这条数据到底要导入到哪个部门下,因此引入了上级编码。编码是全局唯一的,系统处理时优先找编码,编码为空的时候再通过名称来处理,如还是找到多个同名部门,则放到一个名为“未分配”预置组织机构里,转人工处理。

数据导出结果

image.png

开源平台资料

平台名称:一二三开发平台
简介: 企业级通用低代码开发平台
设计资料:CSDN专栏
开源地址:Gitee
开源协议:MIT
欢迎收藏、点赞、评论,你的支持是我前行的动力。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/800343.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使数组连续的最少操作数

使数组连续的最少操作数 给你一个整数数组 nums 。每一次操作中,你可以将 nums 中 任意 一个元素替换成 任意 整数。 如果 nums 满足以下条件,那么它是 连续的 : nums 中所有元素都是 互不相同 的。 nums 中 最大 元素与 最小 元素的差等于…

(表征学习论文阅读)A Simple Framework for Contrastive Learning of Visual Representations

Chen T, Kornblith S, Norouzi M, et al. A simple framework for contrastive learning of visual representations[C]//International conference on machine learning. PMLR, 2020: 1597-1607. 1. 前言 本文作者为了了解对比学习是如何学习到有效的表征,对本文所…

LeetCode题练习与总结:螺旋矩阵Ⅱ--59

一、题目描述 给你一个正整数 n ,生成一个包含 1 到 n^2 所有元素,且元素按顺时针顺序螺旋排列的 n x n 正方形矩阵 matrix 。 示例 1: 输入:n 3 输出:[[1,2,3],[8,9,4],[7,6,5]]示例 2: 输入&#xff1…

conda在【已有环境】上新建虚拟环境

在做Python工程时,经常遇到的一个问题就是:为了复现某个项目需要特地新建一个虚拟环境。但是,我们两个Project需要的环境几乎相同,只是有少数模块的版本互斥,这个时候都从0装一遍虚拟环境,就比较耽误时间。…

VMware启动显示“打开虚拟机时出错: 获取该虚拟机的所有权失败”

提示框(忘截图了)里提示目录C:\Users\mosep\Documents\Virtual Machines\VM-Win10 x64\中的某个文件(在我这里好像是VM-Win10 x64.vmx,VM-Win10 x64是我给虚拟机取的名字)在被使用中。 找到这个目录,删除.…

【面试题】如何在亿级别用户中检查用户名是否存在?

前言 不知道大家有没有留意过,在使用一些app或者网站注册的时候,提示你用户名已经被占用了,比如我们熟知的《英雄联盟》有些人不知道取啥名字,干脆就叫“不知道取啥名”。 但是有这样困惑的可不止他一个,于是就出现了“…

如何从应用商店Microsoft Store免费下载安装HEVC视频扩展插件

在电脑上打开一张HEIC类型的图片提示缺少HEVC解码器,无法打开查看,现象如下: 这种情况一般会提示我们需要下载安装HEVC解码器,点击“立即下载并安装”会跳转到应用商店,但是我们发现需要付费7元才能下载安装 免费安装…

6. Z 字形变换(Java)

目录 题目描述:输入:输出:代码实现: 题目描述: 将一个给定字符串 s 根据给定的行数 numRows ,以从上往下、从左到右进行 Z 字形排列。 比如输入字符串为 “PAYPALISHIRING” 行数为 3 时,排列如…

mac | Windows 本地部署 Seata2.0.0,Nacos 作为配置中心、注册中心,MySQL 存储信息

1、本人环境介绍 系统 macOS sonama 14.1.1 MySQL 8.2.0 (官方默认是5.7版本) Seata 2.0.0 Nacos 2.2.3 2、下载&数据库初始化 默认你已经有 Nacos、MySQL,如果没有 Nacos 请参考我的文章 : Docker 部署 Nacos(单机…

订阅edk2社区邮件列表

给社区发邮件步骤 UEFI订阅邮件列表 开发者订阅邮箱 develedk2.groups.io | Home 点击Join This Group,按照步骤填写自己邮箱地址(该地址是edk2,发送邮件到该邮箱的地址) 自己邮箱确认就可以自动收到邮件了 比如:

虚拟串口工具vspd.exe的使用

关于vspd虚拟串口工具的获取: 工具下载 (1、 虚拟串口工具官方下载链接 2、通过本文资源下载)工具按照步骤(过于简单,此处省略) 关于vspd虚拟串口工具的使用: 打开软件,如下&…

鸡哥的蛋糕大作战(蓝桥杯)

文章目录 鸡哥的蛋糕大作战问题描述模拟 鸡哥的蛋糕大作战 问题描述 鸡哥是一位著名的糕点师傅,他特别擅长做各种形状的蛋糕。他有一种特殊的蛋糕制作方法,那就是在蛋糕上开洞。有一天,他想到一个有趣的想法:不同的数字可以代表…

Ethernet 汇总

Ethernet系统 硬件最小系统 CPU:可以是复杂的芯片,也可以是小的单片机DMA:用于减轻CPU负担,搬运数据系统Memory<->FIFOMAC:可以集成在芯片里面,用于CPU和PHY之间的通信MII:接口用于MAC和PHY的通信,包括控制MDIO和数据DataPHY:模拟器件,最底层,数据收发源头软件…

【json.dump()】的用法和【pickle.dump()】的用法

json.dump()写入 json.dump() 函数用于将 Python 对象序列化为 JSON 格式的字符串,并将该字符串写入文件。它接受两个参数:要序列化的 Python 对象和要写入的文件对象。 下面是 json.dump() 函数的基本用法示例: import json# 要序列化的 Python 对象 data = {"name…

本地电脑渲染不行怎么解决?自助式渲染助你渲染无忧

有时候&#xff0c;即使购买了昂贵的新电脑&#xff0c;我们也可能会遇到渲染速度缓慢、画质不佳或渲染失败等问题。这些问题可能由多种因素引起。针对该问题&#xff0c;为大家推荐了自助式的渲染&#xff0c;解决你本地电脑渲染不佳问题。 电脑渲染不行原因 新电脑渲染效果不…

【Vue】Vue3开发从入门到实战目录【最新版本vue3+typescript前端开发教程】

Vue3开发从入门到实战目录 1. vue3简介与环境配置 2. 创建vue3项目 3. 我的第一个组件 4. 编写简单页面效果 5. OptionsAPI与CompositionAPI 6. setup概述与使用 7. ref基本类型的响应式数据 8. ref对象类型的响应式数据 9. reactive对象类型的响应式数据 10…

Node.js从基础到高级运用】二十二、同步执行的子进程

引言 在 Node.js 的应用程序中&#xff0c;我们有时候需要在父进程中同步地执行子进程&#xff0c;这对于需要顺序执行任务或者处理命令行工具的输出特别有用。child_process 模块在 Node.js 中用于创建子进程&#xff0c;并且提供了几种同步执行子进程的方法。在 Windows 系统…

MongoDB主从复制模式基于银河麒麟V10系统

MongoDB主从复制模式基于银河麒麟V10系统 背景介绍 MongoDB自4.0版本开始已经不再建议使用传统的master/slave复制架构,而是全面采用了复制集(Replica Sets)作为标准的复制和高可用性解决方案。 复制集是MongoDB的一种数据复制和高可用性机制,通过异步同步数据至多个服务…

为什么企业推广需要品牌故事?媒介盒子分享

从时代来看&#xff0c;我们正处“信息超载的商业时代”&#xff0c;品牌传播面临着“产品同质化”和“信息超载化”的困境。近日小米SU7的出圈除了汽车本身的话题度外&#xff0c;离不开小米的品牌故事、创始人雷军的话题等等。今天媒介盒子就来和大家聊聊&#xff1a;为什么企…

postgresql发布和订阅

一、发布订阅介绍 发布和订阅使用了pg的逻辑复制的功能&#xff0c;通过发布端创建publication与表绑定&#xff0c;订阅端创建subscription同时会在发布端创建逻辑复制槽实现逻辑复制功能 逻辑复制基于 发布&#xff08;Publication&#xff09; 与 订阅&#xff08;Subscri…