diff --git a/README.md b/README.md index e368264..094b2b6 100644 --- a/README.md +++ b/README.md @@ -37,13 +37,15 @@ Tduck 填鸭:是基于B/S架构的一款开源的表单在线收集系统, http://demo.tduckapp.com/ 演示账号/密码:可注册登录或使用测试账号 test@tduck.com/12345678 - + 文档地址:http://demo.tduckapp.com/ V2更新日志:https://doc.tduckapp.com/log/ +### 加入社群 + logo -开源不易如果喜欢请给作者 Star 鼓励 👇** +开源不易如果喜欢请给作者 Star 鼓励 👇*** #### 项目源码 @@ -52,6 +54,58 @@ V2更新日志:https://doc.tduckapp.com/log/ | https://gitee.com/TDuckApp/tduck-platform | https://gitee.com/TDuckApp/tduck-front | | https://github.com/TDuckCloud/tduck-platform | https://github.com/TDuckCloud/tduck-platform | -感谢: - -![输入图片说明](https://images.gitee.com/uploads/images/2021/0624/105039_de3beb64_1495174.png "公司logo应用规范 -07.png" ) +感谢:logo +提供云服务器资源! + +### “项目背景” +目前市面上的表单平台虽然功能强大,但是部分业务组件或者额外收取存储等费用,且费用较高,在数据隐私性较强且有特殊表单需求的场景下无法满足业务需求, +目前国内的的开源平台表单问卷平台比较少,tduck表单平台应运而生。让中小公司拥有独立自定义表单问卷,快速赋能业务。 + +### “新特性” + +- 【表单逻辑】支持对单选,多选框,下拉框等组件进行逻辑设置,目前仅支持选中 未选中等逻辑关系 +- 【表单分页】支持对问卷问题较多时,进行分页 +- 【手写签名】支持手写签名保存上传 +- 【位置选择】支持高德地图进行地理位置选择 +- 【手机验证】支持对输入手机号进行短信验证 验证通过则能保存 +- 【省市联动】支持省市县联动选择输入 +- 【图形选择】图片选择组件,支持单选多选 +- 【图片展示】图片展示组件,展示二维码引流等 +- 【图片轮播】图片轮播组件,图片和文字轮播显示 +- 【文字描述】文件描述组件,支持颜色,位置设置 +- 【分割线】 内容分割线 +- 【联系人】 手机号,邮箱,身份证输入 格式校验 +- 【公开反馈结果】 公开反馈结果设置,开启后填写完成将看到他人填写结果 +- 【附件导出】填写完成后可对收集的附件进行导出zip下载 +- 【统计筛选】可对填写完的结果进行筛选查询 支持模糊等 +- 【表单预览】添加预览按钮,实时预览内容,预览二维码 +- 【另存为模板】添加另存为模板按钮,保存项目为模板 +- 【UI重构】项目整体UI全面重构,更美观,更简洁 +- 【验证码】验证逻辑重构,支持验证码开关 +- 【微信功能】 微信功能增加开关配置,可配置关闭微信功能 +- 【代码优化】对前后端代码进行部分优化,结构调整 +![输入图片说明](https://images.gitee.com/uploads/images/2021/0625/000932_eb5728c8_1674451.png "屏幕截图.png") +### “文档支持” +新的文档平台,后续会不断完善文档,有需要完善的内容可以在GItee提issues反馈,收到反馈我们将第一时间调整,当然有想共享文档的也欢迎提Pr。 + +![输入图片说明](https://images.gitee.com/uploads/images/2021/0625/001013_eb945bce_1674451.png "屏幕截图.png") +### “更新说明” +本项目非商业产品,不提供兼容更新,v2中存在破坏性更新,对v1中的部分数据存在无法兼容。 + +![输入图片说明](https://images.gitee.com/uploads/images/2021/0625/001053_f3c320c4_1674451.png "屏幕截图.png") + +### “付费支持” +V1版本中,社群内有很多非Java的朋友很喜欢我们的产品,但是在部署中遇到很多困难,也非常希望我们能提供付费部署的服务,之前一直忙于v2的规划开发,没有时间承接。 +为了使产品做的更好,给大家带来更多的功能,我们在后续将会推出了付费服务,支持付费部署,定制等服务(后续推出详细说明),当然免费的技术支持一直会有。 + +### “项目规划” +“让每个企业轻松拥有自己的问卷系统”是Tduck团队不变的初衷;v2版本的开发工作目前算是暂时结束,经过团队内部自测推出,同时欢迎大家进行测试,对存在的问题在Gitee提issues,社群内反馈可能无法及时解决,后续可能会遗忘。我们会定期对issues问题修复和做一些优化,竭力维护一个稳定的v2版本。 + +![输入图片说明](https://images.gitee.com/uploads/images/2021/0625/001803_d0b579e3_1674451.png "屏幕截图.png") + +### :heart: 致谢 ! + +Tduck诞生非常有趣,不经意之间的一个想法,一步步实现至今。在v2开发期间,团队成员非全职开发,都是业余时间进行打码,所以迭代时间较长,期间群中反馈的问题没有及时给予反馈(深感抱歉)。 + +Tduck永远珍惜每一位用户,重视每一个issues。 +感谢对Tduck团队的支持,以及大家对v2期盼与鼓励。 diff --git a/tduck-project/src/main/java/com/tduck/cloud/project/service/impl/UserProjectResultServiceImpl.java b/tduck-project/src/main/java/com/tduck/cloud/project/service/impl/UserProjectResultServiceImpl.java index 89808d3..9822c5e 100644 --- a/tduck-project/src/main/java/com/tduck/cloud/project/service/impl/UserProjectResultServiceImpl.java +++ b/tduck-project/src/main/java/com/tduck/cloud/project/service/impl/UserProjectResultServiceImpl.java @@ -35,10 +35,7 @@ import org.springframework.stereotype.Service; import java.io.File; import java.io.FileInputStream; -import java.util.Iterator; -import java.util.List; -import java.util.Map; -import java.util.Set; +import java.util.*; import java.util.stream.Collectors; import static com.tduck.cloud.project.constant.ProjectRedisKeyConstants.PROJECT_RESULT_NUMBER; @@ -126,7 +123,8 @@ public class UserProjectResultServiceImpl extends ServiceImpl allHeaderList = ExportProjectResultVO.DEFAULT_HEADER_NAME; + List allHeaderList = new ArrayList<>(); + allHeaderList.addAll(ExportProjectResultVO.DEFAULT_HEADER_NAME); allHeaderList.addAll(titleList); return new ExportProjectResultVO(allHeaderList, resultList); } diff --git a/tduck-project/src/main/java/com/tduck/cloud/project/service/impl/UserProjectSettingServiceImpl.java b/tduck-project/src/main/java/com/tduck/cloud/project/service/impl/UserProjectSettingServiceImpl.java index d940f84..667ad54 100644 --- a/tduck-project/src/main/java/com/tduck/cloud/project/service/impl/UserProjectSettingServiceImpl.java +++ b/tduck-project/src/main/java/com/tduck/cloud/project/service/impl/UserProjectSettingServiceImpl.java @@ -19,6 +19,7 @@ import com.tduck.cloud.project.service.UserProjectService; import com.tduck.cloud.project.service.UserProjectSettingService; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; +import org.springframework.util.StringUtils; import java.time.LocalDateTime; import java.util.Optional; @@ -53,18 +54,18 @@ public class UserProjectSettingServiceImpl extends ServiceImpllambdaQuery().eq(UserProjectResultEntity::getProjectKey, projectKey)); if (resultCount >= timedQuantitativeQuantity) { - return Result.success(setting, setting.getTimedEndPromptText()); + return Result.success(setting, StringUtils.isEmpty(setting.getTimedEndPromptText())?"收集数量已达到。":setting.getTimedEndPromptText()); } } //每个人只需填写一次 根据IP判断