- 4张表: voucher_template, voucher_rule, voucher_instance, voucher_usage_log - 可配置规则引擎: registry + validators + engine - 8种内置规则: min_amount, max_amount, applicable_product_type, applicable_product, exclude_product, max_usage_count, valid_period, user_level - CRUD定义 + API接口 + 前端页面 - SQL建表脚本 + RBAC权限配置 - 一次性使用,不找零
18 lines
561 B
Plaintext
18 lines
561 B
Plaintext
import json
|
|
|
|
customer_id = params_kw.get('customer_id', '')
|
|
order_id = params_kw.get('order_id', '')
|
|
voucher_ids = params_kw.get('voucher_ids', [])
|
|
if isinstance(voucher_ids, str):
|
|
voucher_ids = json.loads(voucher_ids)
|
|
|
|
context = {
|
|
'request_amount': params_kw.get('request_amount', 0),
|
|
'product_type': params_kw.get('product_type', ''),
|
|
'product_name': params_kw.get('product_name', ''),
|
|
'user_level': params_kw.get('user_level', 0),
|
|
}
|
|
|
|
result = await apply_voucher_api(customer_id, order_id, voucher_ids, context)
|
|
return json.dumps(result)
|