| | |
| | | const pointsApi = { |
| | | // 积分规则设置相关接口 |
| | | // 获取积分规则配置 |
| | | getPointsRules(data?: object): ApiPromise { |
| | | getPointsRules(data: object): ApiPromise { |
| | | return createAxios({ |
| | | url: `${url}main/page`, |
| | | data: data, |
| | |
| | | }, |
| | | |
| | | // 根据ID获取积分规则 |
| | | getPointsRuleById(ruleId: string): ApiPromise { |
| | | |
| | | getPointsRuleById(data: URLSearchParams): ApiPromise { |
| | | return createAxios({ |
| | | url: `${url}rules/getById`, |
| | | method: 'get', |
| | | params: { ruleId } |
| | | url: `${url}rule/list`, |
| | | method: 'post', |
| | | data: data, |
| | | headers: { |
| | | 'Content-Type': 'application/x-www-form-urlencoded' |
| | | } |
| | | }) as ApiPromise |
| | | }, |
| | | |
| | | // 保存积分规则配置 |
| | | savePointsRules(data: object): ApiPromise { |
| | | return createAxios({ |
| | | url: `${url}rules/save`, |
| | | url: `${url}rule/update`, |
| | | data: data, |
| | | }) as ApiPromise |
| | | }, |
| | | |
| | | // 个人积分相关接口 |
| | | // 获取个人积分统计 |
| | | getPersonalPointsStats(): ApiPromise { |
| | | getPersonalPointsStats(userId: number): ApiPromise { |
| | | return createAxios({ |
| | | url: `${url}personal/stats`, |
| | | url: `${url}/total/user/` + userId, |
| | | method: 'get', |
| | | }) as ApiPromise |
| | | }, |
| | |
| | | // 获取个人积分流水 |
| | | getPersonalPointsFlow(data: object): ApiPromise { |
| | | return createAxios({ |
| | | url: `${url}personal/flow`, |
| | | url: `${url}flow/personal/page`, |
| | | data: data, |
| | | }) as ApiPromise |
| | | }, |
| | |
| | | data, |
| | | }) as ApiPromise |
| | | }, |
| | | |
| | | // 获取积分流水数据类目列表 |
| | | getPointsFlowCategories(): ApiPromise { |
| | | return createAxios({ |
| | | url: `${url}flow/categories`, |
| | | method: 'get', |
| | | }) as ApiPromise |
| | | }, |
| | | |
| | | // 获取用户积分余额 - 使用已存在的接口 |
| | | getUserPoints(userId: number): ApiPromise { |
| | | return createAxios({ |
| | | url: `${url}total/user/${userId}`, // 修改为实际存在的路径 |
| | | method: 'get', |
| | | }) as ApiPromise |
| | | }, |
| | | |
| | | // 使用专门的积分扣减接口 |
| | | deductPointsByFlow(userId: string, unitId: string, points: number, orderId: string, remark?: string, dataCategory?: string, providerId?: String): ApiPromise { |
| | | return createAxios({ |
| | | url: `${url}user/deduct`, // 使用新的专门积分扣减接口 |
| | | method: 'post', |
| | | data: { |
| | | userId, |
| | | unitId, |
| | | points, // 直接传入要扣减的积分数量 |
| | | orderId, |
| | | remark: remark || `订单${orderId}交易扣减积分`, |
| | | dataCategory: dataCategory || 'resource_transaction', |
| | | dataType: 1, // 1表示消耗 |
| | | providerId: providerId |
| | | }, |
| | | }) as ApiPromise |
| | | }, |
| | | } |
| | | |
| | | export default pointsApi |