608 Commits

Author SHA1 Message Date
Your Name
72f23a782a feat: 增强任务节点查询-展示流水线子任务的详细节点进度
- 为流水线任务添加每个节点的执行状态展示
- 显示节点完成情况(如 已完成 1/1 项)
- 显示接单人信息
- 支持待审批、进行中、等待中等状态
2026-01-30 11:08:48 +08:00
Your Name
11b94b8438 fix: 修复需求趋势图完成数量统计错误
- 完成数量改为按完成时间(complete_time)统计,而非创建时间
- 需求数量保持按创建时间(create_time)统计
2026-01-29 20:31:12 +08:00
Your Name
7392fd2908 fix: 修复压缩后文件名显示问题
- 确保压缩后的文件在前端显示正确的 .zip 后缀
- 使用 nextTick 强制更新文件名避免被组件覆盖
2026-01-29 19:58:13 +08:00
Your Name
3b6f5f9659 fix: 修复文件下载时文件名乱码问题
- 上传时设置 Content-Disposition 头保存原始文件名
- 支持中文文件名的 URL 编码
2026-01-29 19:36:01 +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
2ca9626e50 fix: 任务节点查询显示流水线任务当前待处理子任务的接单人
问题:流水线任务完成子任务1后,节点查询仍显示子任务1的接单人
修复:查询当前pending状态的子任务接单人,而不是主任务的receiver_id
2026-01-29 13:28:57 +08:00
Your Name
7332e48f0d fix: 修复流水线子任务解锁逻辑
问题:当子任务状态是pending但is_locked=1时,完成前置任务后不会解锁
原因:代码只检查status='locked',没有检查is_locked字段
修复:同时检查is_locked=1且未完成的子任务
2026-01-29 13:19:54 +08:00
Your Name
d15a15a507 fix: 移除前端二次排序,使用后端排序结果 2026-01-29 12:18:41 +08:00
Your Name
186aef053b feat: 优化排序逻辑 - 可抢单任务默认排前面 2026-01-29 12:08:07 +08:00
Your Name
bf2f720fe7 fix: 修复排队状态查询逻辑
当任务没有 receiver_dept_id 时,从 task_unlock_status 表中查询对应的部门ID
2026-01-29 11:50:12 +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
a8ecc8a11f fix: 修复旧用户钉钉登录报重复键错误的问题
优化钉钉登录用户查找逻辑:
- 优先通过ding_user_id查找用户(处理旧账户数据)
- 其次通过unionId生成的email查找
- 解决非钉钉创建的用户使用钉钉登录时的重复键约束错误
2026-01-28 17:11:07 +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
1d66f0d7f5 修复子任务积分计算错误的bug
问题:当子任务包含多个任务类型时,updateTaskItemsQuantityAndScore方法
只用第一个任务类型的单价计算总积分,导致积分显示错误。

解决:
1. 先更新typeDetails JSON,再从更新后的typeDetails中重新计算总积分
2. 新增calculateTotalScoreFromTypeDetails方法从JSON中累加所有类型积分
3. 新增calculateTotalQuantityFromTypeDetails方法计算总数量
4. 同时更新平均单价以保持数据一致性
2026-01-27 20:57:28 +08:00
Your Name
2d08524f41 fix: 修复预先指定的任务无法更新进度的问题
问题描述:
- 预先指定设计师的任务(receiver_id已设置)但状态仍为pending
- 设计师尝试更新进度时报错"只能更新进行中的子任务"
- 因为设计师没有点击"接单"按钮将状态变为in_progress

解决方案:
- 在updateProgress方法中检测到这种情况时
- 自动将子任务状态从pending变为in_progress
- 同时计算deadline并更新主任务状态
- 让设计师可以直接更新进度,无需单独接单
2026-01-26 19:15:30 +08:00
Your Name
b49c9e411a fix: 修复接单部门审核页面重新调整任务明细数量后无法生效的问题
问题描述:
- 接单部门负责人在审核页面调整任务明细数量时
- applyTaskUpdates方法只更新了主任务的taskTypeIds、quantity和score
- 但没有同步更新子任务(task_item)表中的quantity、totalScore和typeDetails字段
- 导致调整后的数量无法生效

解决方案:
- 在applyTaskUpdates方法中添加updateTaskItemsQuantityAndScore调用
- 新增updateTaskItemsQuantityAndScore方法:同步更新子任务的数量和积分
- 新增updateTypeDetailsJson方法:更新typeDetails JSON字段中的数量信息
2026-01-26 18:57:36 +08:00
Your Name
20e7ede2d5 fix: 修复一级需求任务明细完善后再次编辑导致重新启动一级审批的问题
问题描述:
- 一级需求任务在明细完善后被再次编辑时,如果approval_status为null
- 系统无法识别一级审批已通过,导致任务被重新设为pending_primary_approval
- 需求部门负责人需要再次审批并指定明细完善人

解决方案:
- 在updatePipelineTask方法中增强判断逻辑
- 通过查询审批日志(approve_primary记录)判断一级审批是否已通过
- 如果已通过,直接进入接单部门审核流程,跳过重复的一级审批

新增方法:
- TaskApprovalService.hasPrimaryApprovalPassed() - 检查一级审批是否已通过
2026-01-26 18:51:06 +08:00
Your Name
62a6357d1e fix: 修复已完成任务查询SQL语法错误
- 移除子查询中的表别名前缀 t.
- MyBatis-Plus selectPage 不使用表别名
2026-01-26 18:35:09 +08:00
Your Name
18d36c8264 fix: 修复已提交审核但status仍为draft的任务不显示问题
- 修改 getMyPublishedTasks 查询逻辑
- 如果 approval_status 存在且不是 draft,即使 status 是 draft 也显示
2026-01-26 18:15:53 +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
785248c5d7 任务大厅导出:每个任务类型单独一列,方便数据分析
- 动态生成任务类型列:每种任务类型自动生成两列(数量和积分)
- 表头格式:xxx(数量)、xxx(积分)
- 同一任务的多个子任务组数据会汇总到一起
- 支持任意数量的任务类型,自动扩展列
2026-01-24 12:00:56 +08:00
Your Name
27ed077290 任务大厅导出数据增加任务明细和积分明细列
- 新增'积分明细'列:显示每种任务类型的积分(如:全新场景: 21.0分; 部分调整: 1.0分)
- 新增'任务明细'列:显示每种任务类型的数量(如:全新场景 x7; 部分调整 x1)
- 支持多个子任务组,按组号显示(如:第1组: xxx; 第2组: xxx)
2026-01-24 11:53:18 +08:00
Your Name
7d9ef13125 修复:添加ArrayList全限定名 2026-01-24 11:46:31 +08:00
Your Name
93c1d58f7c 修复:流水线任务第二节点预先指定的设计师现在会收到解锁通知
问题:当流水线任务(如建模+美工)的第一个节点完成后,如果第二个节点已预先指定了设计师,
该设计师不会收到通知,导致不知道任务已解锁。

修复:在子任务解锁逻辑中,区分处理已预先指定设计师和未指定设计师的子任务:
1. 已预先指定设计师的子任务:直接设为待接单状态(pending),并立即通知该设计师
2. 未指定设计师的子任务:设为待审核状态(pending_approval),通知接单部门负责人审核分配
2026-01-24 11:45:24 +08:00
Your Name
d20b5fc989 修复:子任务组审核通过后钉钉通知显示完整任务明细
问题:当子任务组逐个审核通过时,钉钉通知只显示当前审核通过的这一组子任务的积分(如46分),
而任务卡片显示的是所有子任务组的汇总积分(如59.30分),导致数据不一致。

修复:在 TaskItemService.approveTaskItemGroup 发送通知时,
获取该任务的所有子任务组明细,而不是只显示当前审核的这一组,
确保通知中的积分与任务卡片保持一致。
2026-01-24 11:38:17 +08:00
Your Name
a41553fe88 一级需求任务:补充各节点对一级发起人的通知
补充以下节点的一级发起人通知:
1. 子任务被接单 - 同时通知一级发起人
2. 子任务进度更新 - 同时通知一级发起人
3. 流水线任务全部完成 - 同时通知一级发起人
4. 子任务组审核通过并指派 - 通知一级发起人
5. 需求部门审批通过 - 通知一级发起人审核进度
6. 需求部门审批驳回 - 同时通知一级发起人
7. 接单部门审批通过 - 通知一级发起人任务已发布
8. 接单部门审批驳回 - 同时通知一级发起人

确保一级需求发起人能够全程跟踪任务状态变化
2026-01-24 11:34:19 +08:00
Your Name
dc2cb78b26 修复:子任务组审核时自动识别预先指定的接收人
问题:在明细完善阶段预先指定了设计师的子任务,审核通过后没有自动指派给该设计师,
而是变成 pending 状态等待抢单,导致设计师没有收到钉钉个人通知。

修复:在 approveTaskItemGroup 方法中,优先检查子任务是否已预先指定了接收人,
如果有且审核人没有重新指定其他人,则自动使用预先指定的接收人。
2026-01-24 11:29:10 +08:00
Your Name
b4bafab04f 修复:一级需求任务明细完善后子任务状态未正确更新的问题
问题原因:
- 当管理员或任务发布人(非明细完善人、非需求部门成员)编辑一级需求任务时
- 原有条件判断 isPrimaryTaskDetailCompletion 为 false
- 导致进入 initApprovalStatus 重新初始化审核状态,而不是 handlePrimaryTaskDetailCompletion
- 子任务状态没有被更新为 pending_approval,导致接单部门负责人看不到待审核的子任务组

修复方案:
- 简化条件判断:只要是一级需求任务且原状态为 pending_detail_completion,都应该调用 handlePrimaryTaskDetailCompletion
- 这样可以确保无论谁编辑提交,子任务状态都会被正确更新
2026-01-24 11:17:26 +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
e3cb59539f 修复:子部门共享上级部门积分池 - 余额为0且未充值时自动向上查找 2026-01-24 09:59:01 +08:00
Your Name
2cb38df288 修复:导出功能需求类型使用taskSubType字段显示新品/优化等 2026-01-23 22:19:48 +08:00
Your Name
bc3fea4b74 修复:升级commons-io版本以兼容POI 5.2.5,解决导出功能报错 2026-01-23 22:07:52 +08:00
Your Name
3974b2eb24 修复:一级需求部门任务在草稿状态下可以不填写子任务 2026-01-23 15:48:01 +08:00
Your Name
b4f9f7a47f 修复:一级需求部门任务提交时添加pipelineMode字段 2026-01-23 15:44:10 +08:00
Your Name
81d21aa063 修复:一级需求部门任务在草稿状态下也允许转换为流水线任务 2026-01-23 15:34:55 +08:00
Your Name
9056099413 添加详细错误日志以排查任务数据格式错误 2026-01-23 15:24:06 +08:00
Your Name
fa4cd70bc8 修复:一级需求部门任务在编辑模式下提交时触发审核流程 2026-01-23 15:06:55 +08:00
Your Name
4a6813a7fe 修复:接单部门审核通过后更新主任务状态为approved/pending 2026-01-23 14:06:29 +08:00
Your Name
83bb75597e 修复:支持待完善明细状态任务的驳回功能 2026-01-23 13:56:32 +08:00
Your Name
2422298864 修复:需求部门成员完善一级需求任务后应直接进入接单部门审核流程 2026-01-23 13:46:36 +08:00