83 Star 826 Fork 342

刘亚平 / 简搭云在线可视化表单设计,低码平台

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
Apache-2.0

简搭云可视化表单设计

有可能是扩展性最好的表单设计器之一

star fork GitHub license

# 🏆相关文档

仓库代码地址:

码云仓库

文档地址

体验地址 用户名:admin 密码:admin123】

🏆使用技术点:

vue2.0 element-ui monaco vuedraggable jsplumb.js jquery jquerytemplate等插件

🏆安装教程

nodejs其他版本下载地址: 输入链接说明

  • 首次下载项目后,安装项目依赖:
npm install
  • 本地开发
npm run serve
  • 构建
npm run build

🏆简搭云可视化表单特性与介绍。

简搭云可视化表单最大的优势是直接vue代码直接渲染,而非JSON数组性渲染,市面上大部分vue可视化表单都是json渲染,vue源码渲染具有更好的高类聚,低耦合,复用性高,封装性强,易扩展的等特点。因为vue源码直接渲染模式,只要在线编写的代码和生成vue代码符合vue语法风格,就能进行渲染,无需编译,充分继承了vue强大的扩展性,可读性,聚合性,复用性,封装性等特点,他也可以很轻松集成市面上所有vue组件。如echart,datav,饿了么UI,百度地图,高德地图,antUI,各种自定义组件等。

与市面上表单不一样的特点有:

🚀1.一套表单三种模式一起设计
🚀2.生成一套代码同时适应PC,ipad,手机端的预览。
🚀3.支持在线编辑vue代码逻辑,不与可视化设计器生成的vue代码进行冲突。也可支持输入debugger,进行设计同时进行调试。
🚀4.支持css代码在线编写,可针对表单风格进行编写css。
🚀5.可下载vue源码到本地,无需更改任何更改,可直接预览。
🚀6.属性,组件,事件,通用css都可以通过配置文件进行配置。
🚀7.vue源码生成采用jquery+jquerytemplate模板生成,根据不同业务,框架生成不同风格,业务,框架的代码,如目前已有项目适应的表单有:element-ui表单,ant-ui表单,mini-ui的表单,同样也可以支持也可以生成appui,小程序语法代码等。
🚀8.根据业务制定不同模板,生成不同的业务表单:如问卷调查表单,可视化大屏,流程表单,通用增删改查表单,只要业务存在一定的通用性,我们就可以创建一个不同的模板解析
🚀9.支持很多快捷的方式,如点击事件,可切换源码,编辑对应事件的方法。
🚀10.明细组件拖拽完成自动支持导入,导出。
🚀11.增加行列控件,能更好的精确布局。

🏆简搭云可视化表单实现无码开发设计运行思维图

可视化表单实现无码开发设计运行思维图

由思维图中可以看出可视化平台主要由两个部分构成:表单设计器与mybatis语法解析引擎构成。而生成的代码由jquerytemplate 模板语法生成,所以可以支持element-ui框架,mini——ui框架,ant design框架,uniapp框架的源码生成,但是需要如下解决红色文字问题

好了废话少说,直接上图

pc端设计 idad端设计 手机端设计
pc端设计 idad端设计 手机端设计
pc端预览 idad端预览 手机端预览
pc端设计 idad端设计 手机端设计
查看源码js部分 ,可在线编辑代码,可添加函数,与设计生成代码进行融合 template html部分 css部分,可根据界面风格进行调整,自行调整
pc端设计 idad端设计 手机端设计

导出vue源码,直接拷贝到项目中可直接使用,配置路由后就可以访问。

输入图片说明

🏆Mybatis动态接口

在线动态接口,保存后即可生成增,删,查,导出,导入的动态接口,也可以编辑修改动态接口 输入图片说明 动态接口

接口编辑,可智能提示表名,表字段 接口参数后端验证 列表接口字段显示 接口在线测试
输入图片说明 输入图片说明 输入图片说明 输入图片说明

🏆动态接口使用方法说明

Mybatis语法是个不错的语法,能够将实体与数据库紧密的结合在一起,减少了存贮过程,视图的编写,而且比存贮过程,视图更多元化,更强大,有人说Mybatis已经很成熟了,为什么自己还需要开发一套这个组件,第一:主要是因为Mybatis语法只能写在Mapping和Dao实体中,写在这里就必须要编译。第二:传入的Map实体不能是解析的。

我的Mybatis语法引擎能够动态解析Json实体,获取其属性值进行拼装SQL,那我将Mybatis语法配置提取到前端网页中,保存到数据库中,设置好两者约定好提交json实体结构, 然后封装一个通用Api接口提供调用,通过请求参数找到Mybatis配置信息,提交约定好的Json实体结构的数据,从而实现对数据库的各交互的一个万能接口。该模式去掉了我们平时开发的实体层,Service层,Dao层,能够实现60%的后端业务功能,配置好接口就可以立马使用,同时也解决了无码开发后端的编码问题。遇到复杂的逻辑需二开,也支持后端java代码的调用。

Mybatis语法引擎设计思路就是参照了Mybatis底层实现原理实现的,在编写时在Mybatis sql语法中约定提交的实体,约定的实体可以是任何JSON

通过#{属性名}映射获取json的属性值.例如:{bb:"323",cc:"434",fff:'fdsf'} 配置获取bb的值,如:#{bb} 获取cc的值,如:#{cc}

通过#{属性名.子属性名称}映射获取属性对应子属性值.例如:提交json为:{bb:{cc:"fdsfds"}} 想获取cc的值#{bb.cc}

通过#{属性名[0].子属性}映射获取数组属性,第一行的子属性值。例如:提交json为:{bb:[{cc:'dsad'},{cc:'324'},{cc:'434'},{cc:'343'}]} 获取bb第一行cc的值,如:#{bb[0].cc}

通过#{属性名[$index0].子属性} 通过循坏获取子属性数组中具体的子属性.例如:提交json为{bb:[{cc:'dsad'},{cc:'324'},{cc:'434'},{cc:'343'}]} 选循坏获取所有的cc select *from table where column=#{bb[$index0].cc}

select * from AA 将sql语句查询的结果放入JSON实体对象属性ccc中,后面sql脚本就可以用#{ccc[0].子属性} 并做参数入值。

select * from AA test属性也支持条件判断

也支持#{A属性+B属性},#{A属性*B属性},#{A属性/B属性},#{A属性-B属性},#{A属性==''?B属性:A属性} 最基础的运算与三元表达式的支持。

编写的Mybatis语法代码不是保存在xml中,而是保存在在数据库中,随时更改,随时生效。

结合当前环境变量#{$user}当前登录对象,#{$user.userId} #{$user.userName} #{$user.realaname} #{$user.deptcode} #{$user.deptname} #{$user.organcode} #{$user.organname} #{$user.deptid} #{$user.organid} #{$user.password} #{$user.phone} #{$user.avatar}

详细教程文档地址:【 文档地址

🏆优点
🚀1.可以节省了开发人员的各种实体编写,不同层级之间的调用,直接编写mybastis语法,目标功能实现,效率能够大大提升。
🚀2.可根据需求变化而变化,灵活更改对应接口,灵活性非常好
🚀3.后期运维,逻辑简单,响应速度非常快。
🚀5.迁移与重复非常方便,因为整个配置只有一张表,只要将一条数据迁移过去,功能就迁移过去了,与数据库的藕合性低。
🚀6.可以与java紧密结合起来,(前期使用配置开发,发现后期需求变变化到无法满足的地步,就需要二次开发,可在java代码中调用。)
🏆扩展思维
🚀1. 系统之间接口的对接,接口返回的json格式是固定的,如何将接口数据对接我们系统中,结合定时任务的配置是可以完美解决,各种系统数据对接和输出,实现万能对接接口
🚀2. MQ队列,MQ队列接收也是实体JSON格式,也是可以完美解决各种数据的同步与数据处理入库
🚀3. 各种xls的导入,导入的模板固定,对应JSON格式也就固定,同样可以适应,实现万能数据导入、导出接口
🚀4. 各种Api接口的开发,Api接口提交JSON格式数据是固定的,如现在系统的各种功能开发就用到了该接口。
🚀5. 因为接口是一个组件,也可以支持各种接口微服务,服务器负载均衡部署。

🏆流程平台

流程平台与表单引擎进行了很好融合,每个节点可以控制表单控件的只读,必填,显示,审批人可以是具体人员,角色,机构部门,也可以是表单控件值。 路由支持表单数据为条件控制流程走向,业务数据会自动保存,也可以每个节点进行设置回调Api和执行的动态Mybatis语法接口,表单设计器如下:

流程发起PC端

流程信息 审批记录 流程走向
输入图片说明 输入图片说明 输入图片说明

流程发起手机端

流程信息 审批记录
输入图片说明 输入图片说明

🏆交流

  • QQ群 109434403(1群 已满)
  • QQ群 467810261(2群)
  • qq联系人:329175905 微信号: 18670793619 扫一扫加好友
微信 qq qq群
微信
联系qq qq群
Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and (b) You must cause any modified files to carry prominent notices stating that You changed the files; and (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS APPENDIX: How to apply the Apache License to your work. To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. Copyright [yyyy] [name of copyright owner] Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

简介

🚀🚀🚀简搭云可视化表单设计器致力于无码开发,构建各种管理系统,向简道云方向前进,预览采用vue源码进行预览,同时支持在线编辑各种业务逻辑,可轻松定义各种控件事件。同时完美仿写了简道云的关联数据库控件,关联查询数据控件,逻辑配置等功能,可无码构建各种微系统。 展开 收起
JavaScript 等 4 种语言
Apache-2.0
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
JavaScript
1
https://gitee.com/liuyaping007/vuefrom1.1.0.git
git@gitee.com:liuyaping007/vuefrom1.1.0.git
liuyaping007
vuefrom1.1.0
简搭云在线可视化表单设计,低码平台
master

搜索帮助