diff --git a/pages/case/followup-detail.vue b/pages/case/followup-detail.vue index 5625ec0..48d0a98 100644 --- a/pages/case/followup-detail.vue +++ b/pages/case/followup-detail.vue @@ -368,6 +368,16 @@ function markDone() { const result = String(form.result || '').trim() || '已完成'; const r = await api('setTodoStatus', { corpId, id: taskId.value, eventStatus: 'treated', result, userId, todoMethod: methodValue }); if (!r?.success) return toast(r?.message || '操作失败'); + if (todo.value?.benefitDeductOnComplete && todo.value?.benefitRecordId) { + const deductRes = await api('completeBenefitTodo', { + corpId, + todoId: taskId.value, + treatmentRecordId: todo.value.benefitRecordId, + executorUserId: userId, + completedAt: Date.now(), + }); + if (!deductRes?.success) return toast(deductRes?.message || '待办已完成,但权益自动核销失败'); + } toast('操作成功'); uni.$emit('archive-detail:followup-changed'); setTimeout(() => uni.navigateBack(), 300); diff --git a/pages/message/benefit-entry.vue b/pages/message/benefit-entry.vue index 7e0a9ce..904d198 100644 --- a/pages/message/benefit-entry.vue +++ b/pages/message/benefit-entry.vue @@ -83,6 +83,17 @@ 有效期 {{ projectEntry.validTime }} + + 生成待办 + + + + + 类型:{{ getTodoTypeLabel(projectEntry.todoConfig.eventType) }} + 回访日期{{ projectEntry.todoConfig.planDate }}截止日期{{ projectEntry.todoConfig.expireDate }} + {{ projectEntry.todoConfig.executorName || '请选择团队和处理人' }} + 完成关联核销权益 + 删除套餐 @@ -185,6 +196,17 @@ + + 生成待办 + + + + + 类型:{{ getTodoTypeLabel(entry.todoConfig.eventType) }} + 回访日期{{ entry.todoConfig.planDate }}截止日期{{ entry.todoConfig.expireDate }} + {{ entry.todoConfig.executorName || '请选择团队和处理人' }} + 完成关联核销权益 + 计划治疗医生 @@ -211,6 +233,22 @@ 添加权益项目 + + + 请选择团队和处理人 + + + {{ team.name }} + + {{ member.name }}已选择 + + 暂无团队成员 + + 暂无可选团队 + + + + @@ -254,11 +292,12 @@