feat(zy): 添加圈子审核功能并优化相关页面

- 在 User 控制器中加入 Club 模型引用,用于获取俱乐部信息
- 在 Circle 控制器中添加 approve 方法,用于审核圈子帖子
- 更新圈子列表查询逻辑,支持按状态筛选
- 修改圈子添加和编辑页面,增加状态选择字段
- 更新圈子列表页面,显示帖子状态并支持状态筛选
This commit is contained in:
2025-05-25 20:10:58 +08:00
parent 185578aa6a
commit d48daea477
6 changed files with 73 additions and 38 deletions

View File

@@ -17,6 +17,7 @@ use app\admin\model\shopro\user\User as UserModel;
use app\admin\model\shopro\order\Order as OrderModel;
use app\admin\model\shopro\user\Coupon as UserCouponModel;
use app\admin\model\shopro\order\Aftersale as AftersaleModel;
use app\admin\model\zy\Club;
use app\admin\model\zy\Menber;
class User extends Common
@@ -90,10 +91,10 @@ class User extends Common
$user->hidden(['password', 'salt', 'createtime', 'updatetime', 'deletetime', 'remember_token', 'login_fail', 'login_ip', 'login_time']);
$user = $user->toArray();
$user['msg_num'] = Message::where('user_id', $user['id'])->where('status', 0)->count();
$user['club_list'] = Menber::where('user_id', $user['id'])->where('role','>', 0)->select();
$user['club_num'] = count($user['club_list']);
$user['card_num'] = 0;
$user['msg_num'] = Message::where('user_id', $user['id'])->where('status', 0)->count();
$user['club_list'] = Menber::alias('m')->join([Club::$tableName => 'c'], 'c.id=m.club_id')->field('m.*,c.name')->where('user_id', $user['id'])->where('role', '>', 0)->select();
$user['club_num'] = count($user['club_list']);
$user['card_num'] = 0;
$this->success('个人详情', $user);
}

View File

@@ -44,6 +44,11 @@ class Circle extends Base
'content', m.content,
'create_time', m.create_time
)) AS comment")->group('c.id');
if (isset($params['status'])) {
$query->where('c.status', $params['status']);
} else {
$query->where('c.status', 1);
}
if (isset($params['club_id'])) {
$query->where('c.club_id', $params['club_id']);
}
@@ -92,7 +97,7 @@ class Circle extends Base
$params['avatar'] = $user['avatar'];
$params['gender'] = $user['gender'];
$params['club_name'] = $club['name'];
$params['status'] = 1;
$params['status'] = 0;
Db::startTrans();
try {
$result = (new CircleModel)->allowField(true)->save($params);
@@ -174,4 +179,26 @@ class Circle extends Base
}
$this->success('Success');
}
public function approve()
{
$params = $this->request->param();
$model = CircleModel::get($params['id'] ?? NULL);
if (empty($model)) {
$this->error(__('No rows were found'));
}
$member = Menber::get(['club_id' => $model->club_id, 'user_id' => $this->auth->id]);
if (empty($member) || $member->role < 2) {
$this->error('无权审核');
}
if ($model->status != 0) {
$this->error('已审核');
}
if ($params['status'] != -1 && $params['status'] != 1) {
$this->error('status:参数错误');
}
$model->save(['status' => $params['status']]);
$this->success('Success');
}
}