import { getJsjInfo } from '@/api/lqKhxx' /** * 按健康师 + 业绩日期查询金三角 ID(与后端 Helper 口径一致) */ export async function resolveJsjId(userId, dateYmd) { if (!userId || !dateYmd) return '' try { const res = await getJsjInfo(userId, dateYmd) if (res.code === 200 && res.data) return res.data.jsjId || '' } catch (e) { /* 提交前兜底失败时由服务端 FillMissingJsjId 补全 */ } return '' } async function fillWorkerJsjIds(rows, dateYmd, cache) { for (const w of rows) { if (!w || !w.workerId || w.jsjId) continue if (cache[w.workerId] === undefined) { cache[w.workerId] = await resolveJsjId(w.workerId, dateYmd) } w.jsjId = cache[w.workerId] } } /** 耗卡:健康师 + 陪同 */ export async function ensureStoreConsumeJsjIds(form, dateYmd) { if (!form || !dateYmd) return const cache = {} for (const it of form.items || []) { await fillWorkerJsjIds(it.workers || [], dateYmd, cache) await fillWorkerJsjIds(it.accompanied || [], dateYmd, cache) } } /** 开单 */ export async function ensureStoreBillingJsjIds(form, dateYmd) { if (!form || !dateYmd) return const cache = {} for (const it of form.items || []) { await fillWorkerJsjIds(it.workers || [], dateYmd, cache) } } /** 退卡 */ export async function ensureStoreRefundJsjIds(form, dateYmd) { if (!form || !dateYmd) return const cache = {} for (const it of form.items || []) { await fillWorkerJsjIds(it.workers || [], dateYmd, cache) } }