优维低代码实践:统计视图

优维低代码技术专栏,是一个全新的、技术为主的专栏,由优维技术委员会成员执笔,基于优维7年低代码技术研发及运维成果,主要介绍低代码相关的技术原理及架构逻辑,目的是给广大运维人提供一个技术交流与学习的平台。


优维低代码实践连载第⑩期

《统计视图》

Visual Builder内部提供了很多图标类型的构件,方便在用户做一些数据统计,同样在大屏项目中也可以得到很广泛地使用,下面我们简单地修改我们的编排,做一个建议的数据统计图表出来吧~

一、新增图表构件

定位到任务详情路由页面的 general-card 构件,将其子构件都删除,并添加我们新的图表构件: chart-v2.bar-chart,效果如下图:

下面我们收到一个需求,在这个图标中,我们要现实任务卡片的状态还在处理中,或者未处理的情况,并进行展示,这里我们的修改如下:

二、对接后台数据

复制代码
数据名称: taskList
类型: Provider
Provider: providers-of-cmdb.instance-api-post-search-v3
Args:
  - TASK_FOR_VB_LESSON
  - fields:
      - assignee
      - state
    page: 1
    pageSize: 3000

三、图表编排修改

复制代码
属性面板-属性:
  data: <% FN.computedTaskList(CTX.taskList) %>
  height: 450
  legends: false
  xField: assignee
  yField: unFinishTask

四、新增 computedTaskList 微应用函数

复制代码
function computedTaskList({ list }: Params): ResultItem[] {
  const obj = {};
  list.forEach((item) => {
    if (item.state === "研发完成") return;
    if (obj[item.assignee]) {
      obj[item.assignee]++;
    } else {
      obj[item.assignee] = 1;
    }
  });


  const arr: ResultItem[] = [];


  Object.entries(obj).forEach(([key, value]) => {
    arr.push({
      assignee: key,
      unFinishTask: value as number,
    });
  });


  return arr;
}


interface Params {
  list: Array<any>;
}


interface ResultItem {
  assignee: string;
  unFinishTask: number;
}

在处理完这些后,我们的图标就可以预期工作啦~看下预览图:

五、页面样式优化,加入图片

我们模拟一个需求,这个页面太过单调了,我们想增加点图片让内容丰富一些,那么我们要怎么做呢?

首先在左侧侧边栏菜单选中图片tab,进入页面,点击右上角的 upload 按钮,上传图片,最后点击build & push,我们即可以对我们上传的图片进行使用了~详细请查看 《图片》章节

然后回到我们的任务详情页面,修改编排,具体如下图:

其中img的src,每个项目,每张图片都将不一样,请各位结合自己的项目使用相应的url。

相关推荐
SL-staff2 小时前
(二十一)「JVS-Rules规则引擎 V2.5」— 决策流的在线调试
低代码·规则引擎·jvs-rules·jvs·模拟测试
SL-staff4 小时前
企业文档系统私有化部署方案技术对比:JVS企业文档 vs 语雀 vs 飞书
低代码·私有化部署·飞书·jvs·企业文档·jvs企业文档·生态集成
ZGi.ai21 小时前
ZGI工作流引擎:把AI应用的执行过程从黑盒变成流程图
人工智能·低代码·流程图·ai应用·ai工作流·zgi
快乐非自愿2 天前
AI低代码破局:数字化降本增效的核心逻辑与商业落地
人工智能·低代码
SL-staff2 天前
(十九)「JVS-Rules规则引擎 V2.5」— 简单评分卡节点
人工智能·低代码·规则引擎·jvs-rules·决策流·信用评分卡·简单评分卡节点
工业甲酰苯胺2 天前
AI×JNPF实战:3个案例拆解企业数智转型核心逻辑
大数据·数据库·人工智能·低代码
SL_staff2 天前
JVS低代码完整源码解析:如何二次开发自己的表单组件?
java·低代码·vuex
Jeking2175 天前
低代码平台 Docker一键部署实战:工程项目立项&竣工验收一体化管理系统
低代码·流程引擎·表单设计·流程设计·表单引擎·unione clouod
液态不合群5 天前
卡死在生产流程?AI破解制造业数字化落地顽疾
网络·人工智能·低代码·重构
CIO_Alliance5 天前
iPaaS概念原理(2)| iPaaS的架构模型是怎样的?
人工智能·低代码·架构·ipaas·系统集成