2.2 KiB
2.2 KiB
2026-06-03 工作记录
钉钉智能薪酬平台对接
- 新增
dingtalk_salary平台 + 2个接口到sql/seed_data_dingtalk_salary.sql - 新认证类型
APP_SIGNATURE:app-id + signature 头部认证 - 签名算法:MD5(body_string + app_secret).toUpperCase()
接口明细
- salary_dept_list —
POST /oapi/salary/dept/list,无入参,单次拉取全量部门 - salary_statistics —
POST /oapi/salary/statistics/dept,prefetch 自 salary_dept_list,row_inject statisticsMonth
代码改动
api_client.go:applyAuthHeader扩展支持APP_SIGNATURE认证,新增applyAppSignatureAuth+computeBodySignatureplatform_manager.go: 新增APP_SIGNATUREcase,从 auth_config 提取 app_id/app_secretdynamic_sync.go:toFloat64扩展支持 string→float64(适配 salary API 返回 code: "200" 字符串)buildReqBody/buildPrefetchParamsskip list 新增row_inject- 新增
injectRowFields函数:将请求参数注入响应行 injectRowFields调用于 syncWithPrefetch 中3处 row 注入点
新增钉钉智能薪酬人力成本报表接口 (2026-06-03 第二阶段)
新增接口
-
salary_statistic_report —
POST /oapi/salary/statistic/report/data,无分页,single_record,获取指定月份的人力成本报表- 入参:
calBizId(格式 yyyyMM"M",如 "202606M",为空默认当月) - 出参:
data.calBizId+data.sumStatisticsData(成本项数组 JSONB) - 表:
dingtalk_salary_statistic_report,conflict_key:calBizId
- 入参:
-
salary_statistic_report_group —
POST /oapi/salary/statistic/report/groupData,无分页,single_record- 入参:
calBizId+salaryGroupName(必填),使用row_inject注入 salaryGroupName - 表:
dingtalk_salary_statistic_report_group,conflict_keys:calBizId+salaryGroupName
- 入参:
代码改动
dynamic_sync.go:修复主同步路径(非 prefetch)中injectRowFields未调用的问题- 在 5 处 savePage 调用前添加 injectRowFields:初始页、游标分页循环、hasMore 分页、普通分页(有/无 response_config)
- 使
row_inject在单记录(single_record)非 prefetch 接口中也能生效