小程序会员权益

This commit is contained in:
2026-04-28 15:29:14 +08:00
parent 370a994ba8
commit 317016f2a8

View File

@@ -63,7 +63,7 @@ class MemberBenefits extends Api
// 查询该入会类型下的所有会员级别(按权重升序)
$levels = $this->level_model
->field(['id', 'join_config_id', 'benefits_id', 'name', 'image', 'fees', 'content'])
->field(['id', 'join_config_id', 'name', 'image', 'fees', 'content'])
->where('join_config_id', $join_config_id)
->where('status', 'normal')
->order('weigh', 'asc')
@@ -71,7 +71,7 @@ class MemberBenefits extends Api
// 查询该入会类型下的所有会员权益(按排序值升序,排除禁用的)
$all_benefits = $this->benefits_model
->field(['id', 'join_config_id', 'title', 'image', 'desc'])
->field(['id', 'join_config_id', 'level_id', 'title', 'image', 'desc'])
->where('join_config_id', $join_config_id)
->where('disabled', 0)
->order('sort', 'asc')
@@ -80,9 +80,6 @@ class MemberBenefits extends Api
// 为每个级别构建完整的权益列表(含 has 标记)
$result_levels = [];
foreach ($levels as $level) {
$owned_ids = json_decode($level['benefits_id'], true) ?: [];
$owned_ids = array_map('intval', $owned_ids);
$benefits_with_flag = [];
foreach ($all_benefits as $key => $val) {
$benefits_with_flag[] = [
@@ -91,7 +88,7 @@ class MemberBenefits extends Api
'title' => $val['title'],
'image' => $val['image'],
'desc' => $val['desc'],
'has' => !empty($owned_ids) && in_array($val['id'], $owned_ids, true),
'has' => $level['id'] == $val['level_id'],
];
}