Crud配置说明

应用场景 #

开发个性化的数据提报或业务系统

配置说明 #

只针对一些特殊配置进行说明, 注意所有字段配置都是原始查询的字段名

模块 功能 样列 说明
表格显示 表格ds 0 定义表格数据来源的数据集编号
表格显示 详情ds 0 定义当点击查看时, 显示的钻取业页的数据集, 传参为只读字段(在新增修改中设定)的第一个字段的值
表格显示 表格字段 name1,name2 用于指定表头显示的字段
表格显示 短表格字段 name1,name2 指定后,将开启折叠显示,表头显示为短表格,展开显示为表格字段
表格显示 固定字段 name1,name2 当字段过多时,定义需要固定在左边显示的列
表格显示 字段宽度 OP:80,name1:100 定义字段宽度,如针对OP字段定义了宽度,那么操作列会自动转为非浮动
表格显示 字段对齐 code:left 默认为中间对齐,可以修改为left,right
表格显示 tag字段 name1,name2 定义那些字段显示为标签样式
表格显示 tag颜色 完成:green,未完成:yellow 定义tag字段的内容显示颜色
表格显示 分页条数 999 当设定为大于999时,将不开启分页
表格显示 后端分页 false 默认为前端分启,开启后为后端分页,此时你需要在表格数据集加入一个总数的查询,另外加入limit和offset参数
表格显示 树形ds 5 开启树形表格显示,点击时将第一列的数据作为参数传给指定数据集
筛选过滤 查询头 false 默认查询区与过滤区是分开的,开启后查询区并入过滤区
筛选过滤 选项ds 4 系统为自动从这个ds获取选项的值, ds的格式为多个查询,注意查询字段名要与选项的字段一一对应
筛选过滤 字段类型 status:select,photo:img 目前支持number,date,select,selects,text,file,photo
筛选过滤 选项定义 参考页面 手动定义选项值,会被选项ds的值覆盖
筛选过滤 可变维度 province,city 用于切换维度显示,切换时会向表格数据集维度名的参数
新增修改 带出ds映射 code:5 用于在编辑界面通过输入选项,然后自动带出相关的内容,注意数据集的查询字段要与需要带出的内容一致
新增修改 只读字段 code,.. 定义在编辑界面显示为只读参考用的字段, 注意第一个字段为主键
新增修改 功能ds 3 用于执行批量处理,参考下文使用方法
新增修改 导入ds 1 用于导入excel数据,注意在数据集中需要定义好导入字段
新增修改 审批ds 1 按字段提交修改要求,审批后生效,具体方法参考下文

批量动作设定 #

  • 在新增修改界面可以配置指量动作及功能ds设定
  • 如下方法
{"action1":["动作1","black"],...}
  • 在用户批量选择行后, 会自动提交两个参数:
action: 按钮的名称,如上是action1
updatelist: 选择行清单主键的字符串,主键是在只读字段中定义了, 如:'key1','key2', 注意已自带单引号了
  • 在功能ds中配置如下,推荐使python数据源
action='$action'
updatelist="$updatelist"
sql=''
if action=='arrive':
    sql=f"update action_log set remark='已到达' where code in ({updatelist})"

if sql:
    ds=ds_sql('local',sql)

后端分页实现方法 #

  • 设定中开启后端分页
  • 在表格数据集(一般是0号), 加总数量的查询, 并加入limit 和 offset参数
select count(1)  from programmers_food
where 1=1 /* and province = '$province' */;

select * from programmers_food
where 1=1 /* and province = '$province' */
limit $limit /* offset $offset */

可变维度实现方法 #

  • 在筛选过滤页面中,设定可变维度,如: province,city
  • 在表格查询中编写,注意参数前带_, 即可实现切换不同维度统计
select 
customer,
/* $_province, */
/* $_city, */
sum(qty) as qty
from programmers_food
group by
customer,
/* $_province, */
/* $_city */

树形表格实现方法 #

  • 在表格显示设定树形ds, 如4号数据集
  • 编写数据集查询即可,注意传参为表格的第一列的名称和值

选项自动化 #

  • 在筛选过滤中设定选项ds,如4号数据集
  • 在字段类型中定义字段为select,如:city:select,province:select
  • 数据中编写查询,注意查询的字段名需要与对应的字段相同,如
select distinct province from programmers_food;
select distinct city from programmers_food

实现在编辑界面数据自动带出 #

  • 在新增修改中设定带出ds映射, 如: city:3
  • 在指定的3号数据集中编写查询,如
select province,owner from programmers_food
where city = '$city'
  • 即可实现选择city时,自动带出province,owner的数据

个性化的定制 #

更多个性化定制可以模板开发中完成,具体使用方法,需要专业版本的服务支持

新增修改的配置方法 #

  • 不管是新增,更新,审批,导入的数据集配置方法都是一样的,参考 数据更新
  • 新建好数据集后,指定对定的数据集序号就可以开启了
  • 关于审批ds, 你需要先建好审批表,然后定义写入审批即可,以下为建表样列
create table modify_request(
    id INT NOT NULL AUTO_INCREMENT,
    tablename VARCHAR(50) NOT NULL,
    codename VARCHAR(50) NOT NULL,
    code VARCHAR(50) NOT NULL,
    columnname varchar(50) not null,
    oldvalue varchar(100),
    newvalue varchar(100),
    requester varchar(50),
    checker varchar(50),
    flag int default 0,
    request_remark varchar(200),
    check_remark varchar(200),
    create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
    PRIMARY KEY (id)
) comment '变更清单';
dataset={
    "table":"modify_request(tablename,code,name,oldvalue,newvalue,requester)",
    "sFields":[],
    "id":"id",
    "fDict":{},
    "autoDict":{"tablename":"erp_order","codename":"order_number","requester":"$username"}
}