@yiranblade
2019-11-11T09:37:44.000000Z
字数 7581
阅读 294
工作
应对公司各个业务系统的收集需求

| 标示 | 数字码 | 中文解释 |
|---|---|---|
| STUDENT_INFO | 1 | 学生信息 |
| USER_INFO | 2 | 客户信息 |
| EVALUATE | 3 | 能力测评 |
| OPTION | 1 | 选择题 |
| MULTIPLE_OPTION | 2 | 多选题 |
| SCALE | 3 | 量表 |
| FILL_BLANK | 4 | 填空题 |
| FILE | 5 | 附件题 |
| NO_LIMIT | 0 | 无限制 |
| ZH_LIMIT | 1 | 中文限制 |
| EN_LIMIT | 2 | 英文限制 |
| DATE_LIMIT | 3 | 数字限制 |
| MAIL_LIMIT | 4 | 电子邮箱限制 |
| ID_LIMIT | 5 | 居民身份证限制 |
| PHONE_LIMIT | 6 | 手机号码限制 |
| TELPHONE_LIMIT | 7 | 电话号码限制 |
| MINUTE_SECOND | 8 | 分秒限制 |
| SECOND | 9 | 秒限制 |
| METER | 10 | 米限制 |
| CENTIMETER | 11 | 米限制 |
| KILOGRAM | 12 | 千克限制 |
| MILLILITER | 13 | 毫升限制 |
| TIME | 14 | 次限制 |
| NO_UPLOAD_LIMIT | 0 | 无上传限制 |
| IMAGE_LIMIT | 1 | 仅可以上传图片 |
| PDF_LIMIT | 2 | 仅可以上传PDF |
| VIDEO_LIMIT | 3 | 仅可以视频上传 |

表单表 tb_form
| 字段名 | 数据类型 | 中文解释 |
|---|---|---|
| id | string | 表单标识 |
| template_id | string | 模版id |
| name | string | 表单名称 |
| status | integer | 1启用,0不启用 |
| source | integer | 表单来源,看具体需求 |
| type | integer | 表单类型,1.学生信息2.客户信息.3.能力测评 |
| instruction | string | 表单说明 |
| any_one | integer | 0设置任何人可填写,1特定人群 |
| re_user | integer | 注册用户,1设置,0不设置 |
| sys_user | integer | 系统学员,1设置,0不设置 |
| is_show_ques_number | integer | 是否展示题号 |
| end_time | string | 结束时间 |
| create_user_id | string | 创建用户id |
| update_user_id | string | 更新用户id |
| create_company_id | string | 创建团队Id |
| update_company_id | string | 更新团队Id |
| create_time | string | 创建时间 |
| update_time | string | 更新时间 |
| deleted_at | string | 删除时间 |
表单统计数据中间表 tb_form_statistical
| 字段名 | 数据类型 | 中文解释 |
|---|---|---|
| id | string | 表单id |
| click_number | integer | 点击次数 |
| re_number | integer | 回收数目 |
| create_time | string | 创建时间 |
| update_time | string | 更新时间 |
| deleted_at | string | 删除时间 |
模版表 tb_template
| 字段名 | 数据类型 | 中文解释 |
|---|---|---|
| id | string | 表单标识 |
| name | string | 表单名称 |
| source | integer | 表单来源,看具体需求 |
| type | integer | 表单类型,1.学生信息2.客户信息.3.能力测评 |
| form_instruction | string | 表单说明 |
| instruction | string | 模版说明 |
| any_one | integer | 0设置任何人可填写,1特定人群 |
| re_user | integer | 注册用户,1设置,0不设置 |
| sys_user | integer | 系统学员,1设置,0不设置 |
| is_show_ques_number | integer | 是否展示题号 |
| end_time | string | 结束时间 |
| create_user_id | string | 创建用户id |
| update_user_id | string | 更新用户id |
| create_company_id | string | 创建团队Id |
| update_company_id | string | 更新团队Id |
| create_time | string | 创建时间 |
| update_time | string | 更新时间 |
| deleted_at | string | 删除时间 |
tb_question 自定义问题
| 字段名 | 数据类型 | 中文解释 |
|---|---|---|
| id | string | 题目id |
| type | integer | 题目类型 |
| name | string | 题目名称 |
| note | string | 题目备注 |
| config | string | 题目配置 |
| content | string | 内容 |
| create_user_id | string | 创建用户id |
| update_user_id | string | 更新用户id |
| create_company_id | string | 创建团队Id |
| update_company_id | string | 更新团队Id |
| create_time | string | 创建时间 |
| update_time | string | 更新时间 |
| deleted_at | string | 删除时间 |
tb_public_question
| 字段名 | 数据类型 | 中文解释 |
|---|---|---|
| id | string | 题目id |
| type | integer | 题目类型 |
| name | string | 题目名称 |
| note | string | 题目备注 |
| config | string | 题目配置 |
| content | string | 内容 |
| create_user_id | string | 创建用户id |
| update_user_id | string | 更新用户id |
| create_company_id | string | 创建团队Id |
| update_company_id | string | 更新团队Id |
| create_time | string | 创建时间 |
| update_time | string | 更新时间 |
| deleted_at | string | 删除时间 |
tb_aggregation_public_question 公共题目聚合表
| 字段名 | 数据类型 | 中文解释 |
|---|---|---|
| id | string | 标记id |
| level | integer | 聚合层级 |
| type | integer | 聚合类型 |
| question_id | string | 聚合id |
| create_time | string | 创建时间 |
| update_time | string | 更新时间 |
| deleted_at | string | 删除时间 |
tb_form_question_relation 关联题目表
| 字段名 | 数据类型 | 中文解释 |
|---|---|---|
| id | string | 题目id |
| question_id | string | 题目id |
| form_id | string | 表单id |
| order | integer | 题目顺序 |
| is_remove | integer | 是否可被删除 |
| is_write | integer | 是否可必填 |
| is_modify | integer | 是否可被修改 |
| create_time | string | 创建时间 |
| update_time | string | 更新时间 |
| deleted_at | string | 删除时间 |
tb_paper 收集的答卷
| 字段名 | 数据类型 | 中文解释 |
|---|---|---|
| id | string | 答卷id |
| serial_number | integer | 编号 |
| form_id | string | 表单id |
| source | integer | 提交来源 |
| objected_id | string | 对象id |
| objected_type | integer | 对象类型 |
| submit_user_id | string | 提交人id |
| create_user_id | string | 创建用户id |
| update_user_id | string | 更新用户id |
| create_company_id | string | 创建团队Id |
| update_company_id | string | 更新团队Id |
| submit_time | 提交时间 | |
| create_time | string | 创建时间 |
| update_time | string | 更新时间 |
| deleted_at | string | 删除时间 |
tb_paper_detail收集答卷详情
| 字段名 | 数据类型 | 中文解释 |
|---|---|---|
| id | string | string |
| question_id | string | 问题id |
| paper_id | string | 答卷id |
| content | 用户原始数据 | 消息内容 |
| create_time | string | 创建时间 |
| update_time | string | 更新时间 |
| deleted_at | string | 删除时间 |
tb_paper_draft 草稿表
| 字段名 | 数据类型 | 中文解释 |
|---|---|---|
| id | string | id |
| paper_id | string | 答卷id |
| form_id | string | 表单id |
| submit_user_id | string | 提交用户id |
| objected_id | string | 对象id |
| content | text | 草稿数据 |
| create_time | string | 创建时间 |
| update_time | string | 更新时间 |
| deleted_at | string | 删除时间 |
tb_admin_operation_log
| 字段名 | 数据类型 | 中文解释 |
|---|---|---|
| id | string | 标示id |
| type | integer | 操作对象类型 |
| company_id | string | 操作者团队id |
| company_name | string | 操作者名称 |
| merchant_id | string | 操作者商户 |
| group_id | string | 操作者集团 |
| operation_group_id | string | 筛选的集团id |
| operation_merchant_id | string | 筛选的商户id |
| operator_id | string | 操作者id |
| operatior_name | string | 操作者名称 |
| phone_code | string | 手机前缀码 |
| phone_no | string | 电话号码 |
| object_id | string | 被操作对象id |
| explain | string | 操作,例如编辑 |
| description | string | 被操作对象简介 |
| remark | TEXT | 操作具体内容 |
| create_user_id | string | 创建用户id |
| update_user_id | string | 更新用户id |
| create_time | string | 创建时间 |
| update_time | string | 更新时间 |
| deleted_at | string | 删除时间 |
问题统一字段定义如下:
{"name":"名称","note":"备注","type":"题目类型,1单选题。2多选题。3填空题。4量表题。5附件题","isWrite":"是否必填","config":"问题配置","content":"问题详细内容"}
单选题
{"config":{},"content":[{"optionData":"","score":"得分","description":"描述"}]}
多选题
{"config":{"choiceUpper":"选择上限","choiceLower":"选择下限"},"content":[{"optionData":"","score":"得分","description":"描述"}]}
填空题
{"config":{"contentRestrict":"内容限制","minCount":"","maxCount":""}"content":""}

量表题
{"config":{"stepSize":"步长"},"content":{"startDesc":"起始描述","startNmber":"起始数值","endDesc":"结尾描述","endNumber":"结尾数值"}}
"config":{"uploadType":""},"content":"url"

功能页面

涉及api
返回字段结构
[{"id":"团队id","name":"团队名称"}]
逻辑图说明

涉及api
返回字段结构
[{"id":"团队id","name":"团队名称"}]

涉及api
请求字段结构
[{"status":"0暂停,1发布","userCompanyIds":"用户团队","formCompanyIds":"表单团队","type":"表单类型","searchType":"1按id搜索,2标题","searchField":""}]
返回字段结构
[{"id":"表单id","name":"表单名称","type":"表单类型","companyName":"团队名称","updateTime":"修改时间","paperCount":"答卷数","status":"表单状态","viewCount":"查看次数","reRate":"回收率"}]

涉及api
请求字段结构
[{"name":"表单名称","templateId":"模版id","type":"表单类型"}]
返回字段结构
{"id":"表单id"}
接口逻辑图
/api/admin/form/template/get_list_info 获取模版信息
请求字段结构
返回字段结构
[{"id":"模版id","instruction":"说明","createCompanyName":"创建团队名称"}]

涉及接口
请求字段
{"type":"表单类型"}
返回字段
[{"aggregationName":"聚合名称","aggregationDesc":"聚合描述""list":[{"id":"问题id","name":"问题标题"}]}]
功能页面

涉及api
/api/admin/form/edit 编辑
请求字段:
{"name":"","instruction":""}
/api/admin/form/save 保存表单
请求字段:
{"anyOne":"0,不设置,1设置","reUser":"1设置,0不设置","sysUser":"1设置,0不设置","isShowQuesNumber":"1设置,0不设置","endTime":""}
请求字段:
{"formId":"表单id","status":"状态"}
涉及api
/api/admin/form/detail
{"formId":"表单id"}
{"formId":"表单id","setting":{"anyOne":"0,不设置,1设置","reUser":"1设置,0不设置","sysUser":"1设置,0不设置","isShowQuesNumber":"1设置,0不设置","endTime":""},"questionList":[],"name":"表单标题","instruction":"说明"}
涉及api
/api/admin/question/create 创建问题
请求字段:
{"formId":"表单id","id":"问题id,仅公共题目有""name":"问题名称","type":"问题类型","isWrite":"是否必填写","config":"配置信息","content":"详细内容,区分类型"}
/api/admin/question/edit 编辑问题
请求字段:
{"id":"问题id""name":"问题名称","type":"问题类型","isWrite":"是否必填写","config":"配置信息","content":"详细内容,区分类型"}
/api/admin/question/delete 删除问题
请求字段:
{"id":"问题id"}

涉及api
/api/h5/form/get_form_answer 获取表单信息填写情况
{"formId":"表单id"}
{"formName":"表单名称","formDesc":"表单描述","questionList":[{"id":"","name":"","type":"","config":"","content":"","answer":"",}]}
/api/h5/question/edit_answer 填写问题答案
/api/h5/form/commit 提交
请求字段
{"formId":"表单id","id":"问题id","answer":""}
{"formId":"表单id",}
填写逻辑

涉及接口
/api/admin/recycle/get_statistical_data 获取统计数据
{"formId":"表单id"}
{"clickNumber":"浏览量","reNumber":"回收量","reRate":"回收率"}
/api/admin/recycle/get_list 获取数据list
{"formId":"表单id"}
{"count":"数据量","currentPage":"当前页面","head":[{"key":"","value"}],"lastPage":"上个页面","list":["number":"",....题目]}
/api/admin/recycle/export_list 获取数据list
{"ids":[“导出选中”]}

涉及接口
请求字段:
{"formId":"表单id"}
返回字段:
{"name":"问卷名称","id":"id","createUserName":"创建用户名称","type":"类型","updateTime":"更新时间"}
/api/admin/form/excel/download_template 下载excel导入模版
针对填空题中对于电话,邮箱,等校验逻辑。统一使用util类,写正则表达式进行校验。
后端登录分为,普通登录与微信中分享登录。