基于smardaten无代码快速开发智慧城管系统

news2024/11/23 4:59:05

img


0️⃣需求背景

现代城市管理的面临着一系列问题:如执法人员不足、信息化手段应用少和时间处理不及时等,开发一个智慧城管回访系统的需求与日俱增…

通过引入智慧城管回访系统,可以提高城市管理的科学性、智能化和透明度,为城市发展和居民生活带来更多的便利和效益。

​ ● 提升城市管理效率:智慧城管回访系统可以实现对城市管理工作的全面监督和回访,通过数据化的方式记录和管理城市问题的处理情况,提升城市管理的效率和质量。

​ ● 实时问题反馈和处理:智慧城管回访系统可以实现问题上报和处理的实时化,公众可以通过手机APP或网站提交问题,相关部门可以及时处理和回复,提高问题处理的响应速度。

​ ● 数据分析和决策支持:智慧城管回访系统可以收集和分析大量的城市问题数据,帮助相关部门进行数据挖掘和分析,发现问题的症结和规律,为城市管理决策提供科学依据。

​ ● 优化资源配置:通过智慧城管回访系统,可以实现对城市问题的分类、统计和分析,帮助相关部门合理规划和调配资源,提高城市管理的效果和资源利用率。

​ ● 提升公众满意度:智慧城管回访系统可以提供便捷的问题反馈渠道和及时的处理反馈,增强公众对城市管理的参与感和满意度,提升城市形象和居民生活质量。


1️⃣系统介绍

智慧城管是智慧城市领域的一个分支,主要是针对城市管理治理方面。

比如在某个街道发现类似于井盖破损、乱贴小广告等现象,一线的调查人员就会将问题在系统里进行登记,然后会按照政府的工作流程,一步一步的进行派遣、处理、结案、回访等等。img这里面包含业务流程的设计、不同节点的权限属性等等。实现的方法是多样的,由于本次项目交付要求高、且交付时间短, 因此我决定尝试使用无代码开发。这次我选择使用无代码平台smardaten尝试一番(据说smardaten可以减少大量开发工作,快速开发)

交付要求:6大系统、5级监管网格、30+评测指标,打造30+专题分析决策大屏。(25天,2名配置人员完成)


2️⃣搭建步骤

通过smardaten无码化配置实现这样一个业务系统主要分为三个大的步骤:

img
首先,对整个业务系统进行页面层级的拆分

​ ● 比如,这一个系统包含多少个页面、包含哪些功能菜单,每个菜单对应哪个页面。将这些对应关系搞清楚后,在我们的应用设计这个模块里直接进行配置就可以了。第二步,对页面进行模块的拆分

​ ● 每个页面包含哪些内容,由哪些元素组成。比如列表、图标、画布、大屏等等。而且这些元素都支持拖拽导入和自定义布局。最后,对页面的每个模块进行数据的绑定。

通过数据的灌入,实现真正的业务逻辑。总体来讲,任何一个完整的业务系统用smardaten只需要这三个大的步骤就可以完成。


3️⃣应用设计

下面结合智慧城管系统这个案例讲一下这三个大步骤具体应该怎么做。

首先大家可以看到,这个页面就是我们的应用设计。我们可以在这里面进行页面和菜单的新增,并且进行绑定。

img「1:页面的模块化拼装」

选中某个页面,可以看到这个页面包含列表、详情、地图、照片多种元素,其实就是通过我们模块化拼装实现的。

比如我页面上想展示一个列表页,直接可以进行导入,甚至做好的大屏也可以进行导入。

「2:数据驱动下的页面联动效果」

img在这一步大家可以看到,我们每一个模块其实是可以联动的,比如我选择其中的一个问题,下面对应的办理过程、图片、地图位置甚至上面对应的派遣、核实、结案等等这些按钮都是会根据你的选择进行显示或者隐藏的。

这是如何实现的呢。其实这些组件的联动是以数据来驱动的,所以我们只需要设置组件关联的数据就可以保障底层的业务逻辑。

「3:样式/数据/交互数据绑定」

这就是我上面说到的第三步——数据绑定,每一个组件都会抽象成样式、数据、交互这三种属性。

我们只需要在每个组件的数据这里进行变量的设置,整个页面的其他组件也是可以接收或者读取的。

这时候只需要对每个组件进行一个交互行为的配置,就可以实现业务逻辑。

这也就是我们定义的:软件=数据+形式。

比如,我选中一个【当前状态编号】为【派遣市级】的问题,上面显示的按钮是派遣、派往区级、核实、判重、作废(当然这些按钮动作需要结合实际的业务场景来设计。这边我们只讲smardaten是如何实现的)。因为我们对这个页面进行了数据的抽取,并将他们定义成变量进行传递。

img
这些变量是整个页面共享的,我们只需要在【派遣】这个按钮上配置一下隐藏条件就可以实现上述业务逻辑,组件的联动也就实现了。

img「4:页面之间的数据互通」

当然了,这只是一个页面之间的联动,那如何实现不同页面之间的数据互通呢?其实数据是灵活的,我们的产品基于灵活的数据,配以数据统一的载体(变量),从而进行柔性的治理。

比如这个【派遣】按钮点击后会弹出一个新的页面,这是通过我们逻辑控制的能力实现的。配置一个【点击】触发弹窗就可以跳到你想要的页面。

img跳转到一个新的页面后,大家可以看到

img这是两个步骤,每个步骤填写的数据不一样,都填写完成后才能提交业务。这两个页面的数据同样是通过变量来进行传递和共享的。

当我信息提交后,下一个节点或者说页面怎么进行接收呢。这里要用到我们的【逻辑控制】了。

img

我们的逻辑控制可以支持到组件级别的颗粒度,比如不同页面的两个组件都可以通过逻辑控制来进行联动。这里通过逻辑控制,对刚才弹窗里的组件进行取值,并且再配一个服务编排。

img

就可以对底层的数据进行计算,从而将刚才填写的信息流转到下个节点或页面。同时数据提交后,当前页面也会触发一个逻辑控制,进行页面的刷新。问题的状态编号也会随时更新。


4️⃣业务流程设计

针对这种有多节点审批的业务系统,一定离不开业务流程的设计。

我们的业务流设计其实很简单,只需要两大步骤就可以实现:

第一步通过拖拽,画出整个业务流的节点和审批顺序。

第二步对每个节点进行权限和属性的配置就可以完成。 这里的属性其实就是这个节点要展示的内容,具体到系统里就是某个页面。

完全不需要传统开发的方式通过大量的代码来实现复杂的业务流程,只需要按照产品经理给的业务流程图画一遍就可以实现。真正的实现了所画即所得。

img

以上就是智慧城管系统案例的完整演示。


5️⃣体验感受

一整套操作下来行云流水,smardaten平台给我最大的感受就是,整体功能很强大的同时操作也比较简单,和其他产品相比也没有那么多花里胡哨的东西。开发模板、文档和教学视频也很齐全,担心不会使用,所有初学者都能快速上手。同时还可以实现多人协助配置,让开发交付效率倍增。

拖拉拽半小时就能完成的工作,很多程序员可能得好几天才完成,强烈推荐不想编程的小伙伴们自行上手体验一番,去他们的S3社区20分钟快速配置https://s3.smardaten.com/ ,把更多的精力放在业务逻辑实现上。

并且smardaten不只是能做大屏,人家主打“数据驱动、企业级、无代码”。数据域、分析域、管理域、运营域,一体化开发、加速企业级复杂级应用无码化构建。还可以全过程数据接入、治理与管控,构建数字化应用支撑基座。以及强大的智能分析工具, 2/3D可视化应用场景无码化构建,这些充满魅力的功能等待你的解锁…

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

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

相关文章

【软考网络管理员】2023年软考网管初级常见知识考点(14)- linux命令及目录相关详解

涉及知识点 Linux 目录结构, Linux 常用命令, Linux 下的文件基本属性, Linux 的启动与关闭 软考网络管理员常考知识点,软考网络管理员网络安全,网络管理员考点汇总。 原创于:CSDN博主-《拄杖盲学轻声码》…

HTML5 游戏开发实战 | 推箱子

经典的推箱子是一个来自日本的古老游戏,目的是在训练玩家的逻辑思考能力。在一个狭小的仓库中,要求把木箱放到指定的位置,稍不小心就会出现箱子无法移动或者通道被堵住的情况,所以需要巧妙地利用有限的空间和通道,合理…

java9新特性之-String存储结构变更--集合工厂方法-- InputStream 加强--增强的 Stream API讲解

String存储结构变更 Motivation The current implementation of the String class stores characters in a char array, using two bytes (sixteen bits) for each character. Data gathered from many different applications indicates that strings are a major component o…

Ubuntu22.04编译安装FFmpeg

FFmpeg介绍 概述 FFmpeg是一款用C语言编写的跨平台免费开源多媒体处理工具,该软件可实现音视频的采集、编解码、转码、过滤以及流媒体相关操作等功能。 同时,FFmpeg也为其他多种语言和操作系统提供了开发组件,包括Java、Python、C等和Wind…

【吴恩达deeplearning.ai】基于LangChain开发大语言应用模型(下)

以下内容均整理来自deeplearning.ai的同名课程 Location 课程访问地址 DLAI - Learning Platform Beta (deeplearning.ai) LangChain for LLM Application Development 基于LangChain开发大语言应用模型(上) 一、LangChain: Q&A over Documents基于文…

SpringMVC原理分析 | Controller配置、RestFul风格

💗wei_shuo的个人主页 💫wei_shuo的学习社区 🌐Hello World ! Controller配置 控制器Controller 控制器复杂提供访问应用程序的行为,通常通过接口定义或注释定义的两种方法实现控制器负责解析用户的请求并将其转换为一…

ModaHub AI模型开源社区——Milvus向量数据库存储相关概念

目录 存储相关概念 分区和数据段 数据段(segment) 分区(partition) 集合、分区和数据段的关系 元数据 常见问题 存储相关概念 分区和数据段 建立集合时,Milvus 根据参数 index_file_size 控制数据段的大小。另…

R+VIC 模型融合实践技术应用及未来气候变化模型预测

目前,无论是工程实践或是科学研究中都存在很多著名的水文模型如SWAT/HSPF/HEC-HMS等。虽然,这些软件有各自的优点;但是,由于适用的尺度主要的是中小流域,所以在预测气候变化对水文过程影响等方面都有所不足。 VIC模型…

“未来之光:揭秘创新科技下的挂灯魅力“

写在前面: 高度信息化当下时代,对电脑及数字设备的需求与日俱增无处不在,随之而来的视觉疲劳和眼睛问题也攀升到了前所未有的高度。传统台灯对于长时间使用电脑的人群来说是完全无法解决这些问题的。一款ScreenBar Halo 屏幕挂灯,…

【Java】Java核心要点总结 71:ThreadPoolExecutor

文章目录 1)为什么需要线程池?2)线程池内部怎么保证线程安全?3)创建线程的方式 newSingleThreadExecutor底层4) ThreadPoolExecutor参数使用5) 线程池的工作机制6)拒绝策略分四种7)队列有哪些? 参考: 1)为什么需要线程池? 重复利…

设计模式之备忘录模式笔记

设计模式之备忘录模式笔记 说明Memento(备忘录)目录白箱备忘录模式备忘录模式示例类图游戏角色类备忘录角色类备忘录对象管理对象测试类 黑箱备忘录模式备忘录模式示例类图备忘录接口游戏角色类备忘录对象管理对象测试类 说明 记录下学习设计模式-备忘录模式的写法。JDK使用版…

JDBC小记——连接池

目录 连接池介绍 常用连接池 DBCP连接池 硬编码方式 配置文件方式 C3P0连接池 C3P0和DBCP的区别 硬编码方式 配置文件方式 Druid连接池 硬编码方式 配置文件方式 DBUtils 连接池介绍 由于建立数据库连接是一种非常耗时、耗资源的行为,所以预先通过连接…

在vite+vue3项目中配置使用css预处理器(less/sass)以及路径别名

一、在vite项目中使用css预处理器 vite已经将这些预处理器的loader内置了,我们不用再像在webpack项目中那样,需要下载和配置一堆相关的loader,我们只需要下载less,sass依赖,就能直接在项目中使用啦 使用npm或者yarn来…

Springboot-- 注解字段校验,并统一设置返回值

Springboot-- 注解字段校验&#xff0c;并统一设置返回值 引包&#xff1a;import org.springframework.validation.annotation.Validated; <!--web--> <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-star…

配置鼠标右键菜单功能 :一键csv转excel

配置右键菜单功能 &#xff1a;一键csv转excel 无需点开文件&#xff0c;双击即可以生成新的excel文件 步骤&#xff1a; 1、配置Python&#xff0c;安装依赖库 pip install openpyxl pip install pandas2、创建Python文件 csv_to_excel.py # -*- coding:utf-8 -*- impor…

【计算机组成原理】函数栈帧

目录 一、源代码理论分析 二、主函数的创建 三、c语言代码的汇编 注&#xff1a;不同编译器环境的函数栈帧存在一定差异&#xff0c;本文使用VS2019 一、源代码理论分析 源代码&#xff1a; int Add(int x, int y) {int z 0;z x y;return z; }int main() {int a 10;…

u盘安装centos 7

1.下载 通过阿里云站点&#xff1a;http://mirrors.aliyun.com/centos/7/isos/x86_64/&#xff0c;下载iso文件。 2.制作启动u盘镜像 2.1 下载制作工具 下载u启动 http://uqidong.als98.cn/ 。 2.2 制作镜像 准备u盘&#xff0c;插入机器&#xff0c;运行u启动。 注意…

机器学习之基于PCA的人脸识别

目录 PCA人脸数据降维 matlab代码实现 思路分析 PCA人脸重构 matlab代码实现 思路分析 PCA人脸可视化 matlab代码实现 思路分析&#xff1a; PCA人脸识别 matlab代码实现 思路分析 PCA人脸数据降维 matlab代码实现 picturesdir(C:\Users\Yezi\Desktop\机…

数字逻辑与模拟电子技术-部分知识点(2)——模电部分-半导体三极管、基本线性运放电路、正弦波振荡电路

目录 半导体三极管 三极管的放大的条件 基本放大电路计算 基本线性运放电路 同相放大电路 反相放大电路 加法器放大电路 正弦波振荡电路 正弦波振荡的条件 半导体三极管 三极管的放大的条件 主要是依靠它的发射极电流能够通过基区传输&#xff0c;然后到达集电极而实现…

【KMP算法】时间复杂度O(N)的字符串匹配算法

目录 案例&#xff1a;假定我们给出字符串 ”ababcabcdabcde”作为主串&#xff0c; 然后给出子串&#xff1a; ”abcd”,现在我们需要查找子串是否在主串中 出现&#xff0c;出现返回主串中的第一个匹配的下标&#xff0c;失败返回-1 ; 1.BF算法&#xff08;暴力算法&#x…