填鸭表单!开箱即用的开源问卷调查系统!

TDuck社区版是一款免费的表单问卷系统,支持快速创建问卷或业务表单,采用无代码理念支持开发自定义组件。采用 SpringBoot + Vue + ElementUI 技术栈,功能强大界面清新,支持一键部署。

功能特性

  • 支持 27+自定义组件 ,拖拽式快速生成表单问卷。
  • 支持单行文本、多行文本、日期、下拉、单选、文件上传、排序、级联、轮播、一键定位、手机号验证、矩阵量表、子表单等组件。
  • 支持通过文本批量导入表单组件,支持题目显隐逻辑设置。
  • 表单数据,支持数据新增、编辑、导出、打印、预览和打包下载附件。
  • 表单外观支持头图、背景图、背景颜色、按钮文字等配置。
  • 报表支持对问题实时统计分析并以图形(柱状图、折线图、饼图)的形式展示输出和导出png图片。
  • 提交后自定义文案、提交后自动跳转网址。
  • 每个微信、账号、ip、设备、答题次数限制、支持设置允许填写时间、记录微信个人信息
  • 支持发邮件、微信公众号模板推送提醒。
  • 支持 数据同步Api(全量数据)、数据WebHook推送(可订阅事件:新增、修改、删除)
  • 支持保存至模板中心,支持从模板中心选用模板创建表单问卷。
  • 用户管理,新增用户、修改用户、删除用户。
  • 文件存储自定义配置: 支持阿里云、七牛云、又拍云、本地、通用S3协议上传
  • 支持 邮件、短信(阿里云、腾讯云、中昱维信)、微信公众号参数配置
  • 支持回收中心,快速恢复问卷。

技术栈:

  • SpringBoot
  • Mybatis-Plus
  • Vue2
  • ElementUI

项目截图

我的项目

问卷基础组件设计

问卷导入题目

问卷逻辑设置

问卷外观主题设置

问卷设置

问卷发布

问卷填写

问卷数据

问卷统计

共享模板

用户管理

系统设置

快速上手

环境依赖:

  • MySQL5.7或以上
  • JDK1.8或以上
  • Maven
  • Nodejs

后端服务

1、拉取代码

复制代码
bash 体验AI代码助手 代码解读复制代码git clone https://gitee.com/TDuckApp/tduck-platform.git

2、将项目以 Maven 的形式导入到 IDEA 中

3、项目结构

  • tduck-common 通用模块
  • tduck-account 账号模块
  • tduck-storage 存储模块
  • tduck-project 项目模块
  • tduck-wx-mp 微信公众号模块
  • tduck-api 客户端API

4、创建数据库

复制代码
sql 体验AI代码助手 代码解读复制代码CREATE DATABASE tduck DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;

5、执行项目目录下 doc/tduck.sql 文件

6、修改 tduck-api 模块下配置文件 application-prod.yml 中的配置信息

需要将数据库的连接地址、用户名、密码修改成自己的环境地址信息。

7、运行 com.tduck.cloud.api.TduckApiApplication 启动项目

前端服务

1、拉取代码

复制代码
git clone https://gitee.com/TDuckApp/tduck-front.git

2、安装依赖

复制代码
npm install

3、启动项目

复制代码
npm run dev

#or

npm run serve

4、构建项目

复制代码
npm run build

Docker 部署

Docker 部署项目

1、启动命令

复制代码
docker run \
-e SPRING_DATASOURCE_URL="jdbc:mysql://127.0.0.1:3310/tduck-v4?useSSL=false&useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai&tinyInt1isBit=false&nullCatalogMeansCurrent=true" \
-e SPRING_DATASOURCE_USERNAME=root \
-e SPRING_DATASOURCE_PASSWORD=tduck@tduck \
-p 8999:8999 \
-v /upload:/application/BOOT-INF/lib/upload \
tduckcloud/tduck-platform

2、参数说明:

  • SPRING_DATASOURCE_URL 数据库连接
  • SPRING_DATASOURCE_USERNAME 数据库用户名
  • SPRING_DATASOURCE_PASSWORD 数据库密码
  • -p 8999:8999 容器内部端口:宿主机端口 端口映射
  • -v /upload:/application/BOOT-INF/lib/upload 文件挂载

启动时,需将对应的参数改成自己的环境地址参数。

Docker Compose 部署项目

1、下载 docker-compose.yaml

复制代码
wget https://gitee.com/TDuckApp/tduck-platform/blob/master/docker/docker-compose.yaml

2、一键启动

复制代码
docker-compose up

作者:Java陈序员

相关推荐
摇滚侠3 分钟前
尚硅谷 Java 零基础全套视频教程,System、Runtime、BigDecimal、BigInteger、Random,笔记 151
java·开发语言·笔记
fo安方4 分钟前
软考~系统规划与管理师考试——真题篇——章节——第5章 应用系统规划——解析版
java·运维·网络
鲨莎分不晴9 分钟前
【实战】老项目焕发新生:从 Webpack 平滑迁移到 Vite 避坑全记录
前端·webpack·node.js
阿杰真不会敲代码9 分钟前
POI 讲解
java·spring boot
海鸥819 分钟前
ArgoCD App of Apps 模式详解
java·elasticsearch·argocd
二哈喇子!16 分钟前
面向对象经典题整理
java·面向对象·
二哈喇子!17 分钟前
模仿淘宝购物系统的Java Web前端项目(开源项目)
java·javaweb
二哈喇子!28 分钟前
Java Web项目怎么创建 & 没有出现web.xml的解决方法
java·web·web.xml
web小白成长日记30 分钟前
从零起步,用TypeScript写一个Todo App:踩坑与收获分享
前端·javascript·typescript
一起养小猫38 分钟前
LeetCode100天Day13-移除元素与多数元素
java·算法·leetcode