376 Commits

Author SHA1 Message Date
Your Name
c592ba2234 feat: 添加可接任务页面盲盒模式功能
- 后端:在SystemConfigService添加task.blind_box_mode配置项
- 前端:在Settings.vue任务数据管理中添加盲盒模式开关
- 前端:在TaskHall.vue实现盲盒卡片显示
  - 开启后普通部门成员看到的任务卡片变成盲盒样式
  - 盲盒显示排队序号,隐藏所有任务信息
  - 部门负责人和管理员不受盲盒模式影响
2026-02-02 15:25:08 +08:00
Your Name
22169c73ed fix: 子任务接单人名称始终从用户表实时获取
问题:子任务的receiverName存储了过期值,与实际receiver_id对应的用户名不一致
原因:任务转让时只更新了receiver_id,没有更新receiver_name字段
修复:fillSubTaskStats中始终根据receiver_id查询并刷新receiverName

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-01-31 18:55:58 +08:00
Your Name
59e8f23370 fix: 一级需求发起人可以评分和填写商品ID
问题:一级需求部门成员发布任务完结后无法评分和填写商品ID
原因:权限判断只检查publisherId,未考虑primaryPublisherId和detailCompleterId

修复:
- 前端:isTaskPublisher和canManageProducts函数增加对一级需求发起人和明细完善人的判断
- 后端:rateTask方法增加对primaryPublisherId和detailCompleterId的权限验证

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-01-31 18:32:27 +08:00
Your Name
24671de157 feat: 为一级需求部门发起人开启草稿箱功能
- 前端:showDraftTab 增加 primary_demand 类型判断
- 后端:getMyPublishedTasks 增加 primaryPublisherId 查询条件
2026-01-30 16:45:20 +08:00
Your Name
211de3a8fa fix: 修复积分明细弹窗样式变量名 2026-01-30 15:45:33 +08:00
Your Name
6f03198833 feat: 设计师绩效排行榜添加积分明细弹窗功能
- 后端添加 /api/analytics/designer-score-details API
- 前端添加积分列点击事件,显示积分明细弹窗
- 显示子任务和主任务的完成积分列表
2026-01-30 15:38:48 +08:00
Your Name
4c28716ab5 fix: 子任务列表支持品牌、类目、平台等筛选条件
- 后端TaskItemController添加brandId/categoryId/platformId/taskSubType参数
- 后端TaskItemMapper添加selectAvailableItemsWithFilters方法
- 前端task.ts更新getAvailableTaskItems参数类型
2026-01-30 14:56:16 +08:00
Your Name
d9d8663823 fix: 一级需求待审核任务显示审核按钮
- 修复canApproveTask函数,增加对pending_primary_approval状态的支持
2026-01-30 14:39:06 +08:00
Your Name
754b885e29 fix: 一级需求部门负责人可查看子部门成员发起的任务
- 后端: 对于primary_demand类型部门负责人,返回managedDepartments时包含子部门
- 前端: 支持primary_demand类型部门的任务查询
2026-01-30 14:25:27 +08:00
Your Name
7392fd2908 fix: 修复压缩后文件名显示问题
- 确保压缩后的文件在前端显示正确的 .zip 后缀
- 使用 nextTick 强制更新文件名避免被组件覆盖
2026-01-29 19:58:13 +08:00
Your Name
3b47701e81 feat: 大文件自动压缩上传优化
- 超过50MB的Excel/Word/PDF文件自动压缩成zip后上传
- 显示压缩进度和压缩率
- 大幅减少大文件上传时间和存储空间
2026-01-29 19:27:15 +08:00
Your Name
00649e4b30 fix: 修复一级需求人名字不显示的问题
将 isPrimaryTask === 1 改为 Number(isPrimaryTask) === 1
兼容后端返回的不同数据类型
2026-01-29 15:40:32 +08:00
Your Name
17fa304c91 feat: 调整任务排队配置上限
- 每日最少解锁数上限从100改为1000
- 触发补充解锁数上限从50改为500
2026-01-29 14:56:42 +08:00
Your Name
d15a15a507 fix: 移除前端二次排序,使用后端排序结果 2026-01-29 12:18:41 +08:00
Your Name
4d4b1e2189 fix: 完善任务排队状态显示和抢单按钮
- 修改getStatusText函数显示排队中状态
- 修改canGrabTask函数检查canGrab和unlockStatus
- 抢单按钮显示排队位置信息
2026-01-29 11:32:36 +08:00
Your Name
7dc5df6f80 fix: 修复任务排队状态样式不显示的问题
添加非scoped样式块确保badge-queuing和badge-grabbing样式不被tree-shaking移除
2026-01-29 11:28:48 +08:00
Your Name
7bb3c953ef feat: 实现任务排队解锁机制
- 新增任务排队解锁功能,确保先发布的任务优先被处理
- 添加系统设置中的任务排队配置(启用开关、每日解锁数、补充解锁数)
- 新增 TaskUnlockStatus 实体和 Mapper
- 新增 TaskUnlockService 处理排队解锁逻辑
- 新增 TaskStatusNotificationService 发送钉钉通知
- 更新 TaskItemService 和 TaskItemController 支持排队状态
- 前端新增 TaskStatusBadge 组件显示排队/抢单状态
- 更新 TaskCard 和 TaskHall 支持排队状态展示
- 添加数据库迁移脚本 V15
2026-01-29 10:36:38 +08:00
Your Name
5a1a5fba84 feat: 任务卡片日期信息添加鼠标悬停提示
- 为发布时间、截止时间、完成时间等添加title属性
- 鼠标悬停时显示完整的日期时间(年月日 时分秒)
- 修复日期显示不完整时无法查看完整信息的问题
2026-01-28 17:16:45 +08:00
Your Name
3d6c649388 fix: 修复需求部门审核备注信息不传递给后续节点的问题
1. TaskApprovalService: 在approvePrimaryTask中将审核备注保存到task.remark字段
2. TaskItem: 添加remark字段用于传递主任务备注信息
3. TaskItemController: 在enrichTaskItemsWithSubTasks中填充remark
4. TaskHall.vue: 在mapTaskItemToTask中映射remark字段

同时将190条历史审核备注从task_approval_log同步到task表
2026-01-27 21:32:14 +08:00
Your Name
397f4b4040 feat: 为我的任务接口添加多维度筛选功能
- 后端:扩展 getMyPublishedTasks 支持 taskTypeId/brandId/categoryId/platformId/taskSubType/minScore/maxScore/timeRange/keyword 筛选
- 后端:扩展 getMyReceivedTasks 支持 taskTypeId/brandId/categoryId/platformId 筛选
- 后端:扩展 getMyDetailCompleterTasks 支持 taskTypeId/brandId/categoryId/platformId 筛选
- 后端:更新 Controller 接收所有筛选参数
- 前端:更新 MyTasksParams 接口添加筛选参数
- 前端:更新 loadPublishedTasks 传递完整筛选参数
2026-01-26 18:10:08 +08:00
Your Name
f48a43dd9a 优化:当前节点卡片改为深色风格,减少视觉突兀感 2026-01-24 11:04:23 +08:00
Your Name
d987fb6016 优化:全面重构任务节点查询弹窗UI设计,统一使用网站设计风格 2026-01-24 11:02:06 +08:00
Your Name
0bb9975f31 fix: 将TaskFlowQueryDialog改为使用Ant Design Vue组件 2026-01-24 10:48:09 +08:00
Your Name
27314fada7 fix: 使用ant-design-vue的message替代element-plus 2026-01-24 10:39:52 +08:00
Your Name
c104523aa4 fix: 修复TaskFlowQueryDialog组件图标导入问题 2026-01-24 10:38:07 +08:00
Your Name
c575d6fedb feat: 添加任务节点查询功能 - 支持通过任务编号或标题查询任务流程状态和当前节点 2026-01-24 10:35:04 +08:00
Your Name
b4f9f7a47f 修复:一级需求部门任务提交时添加pipelineMode字段 2026-01-23 15:44:10 +08:00
Your Name
fa4cd70bc8 修复:一级需求部门任务在编辑模式下提交时触发审核流程 2026-01-23 15:06:55 +08:00
Your Name
83bb75597e 修复:支持待完善明细状态任务的驳回功能 2026-01-23 13:56:32 +08:00
Your Name
bb5dde2b1b 修复:保存草稿时使用正确的变量名editTaskId 2026-01-23 13:16:49 +08:00
Your Name
1e7e6fd456 修复:删除待审核卡片中重复的一级需求人和需求部门发起人显示 2026-01-23 12:00:04 +08:00
Your Name
f7596ae7cb 修复:一级需求任务的发起人显示为明细完善人,而不是一级需求部门发起人 2026-01-23 11:55:58 +08:00
Your Name
f4d5aab530 修复:子任务组卡片显示一级需求部门发起人信息 2026-01-23 11:50:34 +08:00
Your Name
647e9a777d 数据分析页面-多维度分析增加任务明细类型分析(一级、二级、三级分类) 2026-01-23 10:49:06 +08:00
Your Name
f96f093f99 fix: 修复一级需求部门任务在接单部门审核时使用完整审核弹窗 2026-01-22 17:51:47 +08:00
Your Name
d364b8173c fix: 修复一级需求部门撤回重新编辑任务后发布时的数据格式错误 2026-01-22 16:27:54 +08:00
Your Name
3352469b3b fix: 修复用户维度统计表格列宽溢出问题,添加横向滚动 2026-01-22 16:18:52 +08:00
Your Name
348e7ed71e feat: 在一级需求部门统计页面增加用户维度的数据分析功能 2026-01-22 16:01:37 +08:00
Your Name
dce3b8ec58 fix: 修复筛选功能搜索报错 - Assignment to constant variable
问题:使用 v-model 绑定 reactive 对象时,Vue 尝试重新赋值整个对象导致报错

解决方案:
- 将所有 TaskFilters 组件的 v-model 改为 :model-value 和 @update:model-value
- 在事件处理函数中使用 Object.assign 来更新 reactive 对象的属性,而不是重新赋值整个对象
- 修复了 filters、reviewFilters、inProgressFilters、completedFilters、publishedFilters、draftsFilters 的绑定方式
2026-01-22 15:26:46 +08:00
Your Name
9b5449cf75 feat: 任务卡片需求人名字过长时显示省略号,鼠标悬停显示完整信息
1. 导入 Tooltip 组件
2. 添加 truncateText 辅助函数用于截断文本
3. 所有显示需求人名字的地方(一级需求人、需求部门发起人、发布人):
   - 使用 truncateText 截断显示(最多8个字符)
   - 使用 Tooltip 组件鼠标悬停显示完整信息
   - 添加 cursor: help 样式提示可悬停查看
2026-01-22 14:57:33 +08:00
Your Name
75a7a760a6 feat: 一级需求部门发起任务必须上传预览图
1. 前端 CreateTask.vue:
   - 预览图表单项添加 required 属性(当是一级需求部门用户时)
   - 添加预览图的动态验证规则,一级需求部门用户必须上传预览图
   - 在提交时添加额外的预览图验证
   - 预览图提示信息针对一级需求部门用户显示必填提示

2. 后端 TaskService.java:
   - createTask 方法中添加一级需求部门用户预览图必填验证
   - createPipelineTask 方法中添加一级需求部门用户预览图必填验证
2026-01-22 14:53:17 +08:00
Your Name
77175573c7 fix: 子任务卡片显示一级需求人和需求部门发起人
1. TaskItem 实体添加 isPrimaryTask、primaryPublisherName、primaryPublisherDeptName、detailCompleterName 字段
2. TaskItemMapper 所有查询SQL添加一级需求人相关字段的关联查询
3. 前端 mapTaskItemToTask 函数映射一级需求任务相关字段
4. 子任务卡片现在可以正确显示一级需求人和需求部门发起人
2026-01-22 14:35:44 +08:00
Your Name
93da7aca22 feat: 一级需求任务卡片显示一级需求人和需求部门发起人
1. 后端 fillTaskRelatedInfo 填充明细完善人姓名 (detailCompleterName)
2. 前端任务卡片统一显示:
   - 一级需求人(橙色):一级需求部门的原始发起人 + 部门名称
   - 需求部门发起人(绿色):明细完善人
   - 发布人:非一级需求任务时显示
3. 需求部门负责人和成员可以看到一级需求任务(明细完善人在本部门的)
4. 后端增加 getMyDetailCompleterTasks 接口查询明细完善人任务
2026-01-22 14:15:56 +08:00
Your Name
2457f13d43 fix: 一级需求部门用户发布任务时使用普通任务接口(不填写任务明细时) 2026-01-22 11:43:13 +08:00
Your Name
f6d612c998 fix: TeamScorePoolService 改用 dept_id 查询积分池,支持二级部门独立配置 2026-01-22 09:17:29 +08:00
Your Name
98c393ed2e feat: 一级需求部门排名表格增加一级部门和二级部门名称列 2026-01-21 20:45:27 +08:00
Your Name
0afea4aa08 fix: 跨部门分配成员下拉只显示需求部门成员,不包括一级需求部门成员 2026-01-21 16:15:01 +08:00
Your Name
634806e7cf 功能:一级需求部门任务支持跨部门分配成员
1. 在系统设置中添加'允许跨部门分配成员'开关
2. 后端添加获取所有需求部门成员的API
3. 前端根据配置决定是查询单个部门还是所有需求部门的成员
4. 下拉框显示成员所属部门名称,支持按部门名称搜索
2026-01-21 14:53:46 +08:00
Your Name
db860ee73b 功能:允许一级需求部门和需求部门成员查看任务大厅(可接任务)所有任务卡片 2026-01-21 14:29:22 +08:00
Your Name
b88db53737 修复:任务状态显示逻辑优化,审核通过的任务正确显示'待接单'或'进行中' 2026-01-21 14:07:08 +08:00