| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114 |
- <?php
- /**
- * 重庆赤晓店信息科技有限公司
- * https://www.chixiaodian.com
- * Copyright (c) 2023 赤店商城 All rights reserved.
- */
- /*
- * @Author: your name
- * @Date: 2021-05-08 17:38:35
- * @LastEditTime: 2021-05-18 18:31:26
- * @LastEditors: Please set LastEditors
- * @Description: In User Settings Edit
- * @FilePath: \admin_php\modules\client\models\v1\admin\UserForm.php
- */
- namespace app\modules\client\models\v1\admin;
- use app\models\Clerk;
- use app\models\Order;
- use app\models\Shop;
- use app\models\User;
- use Yii;
- use yii\base\Model;
- class UserForm extends Model
- {
- public $store_id;
- public $name;
- public $status;
- /**
- * @return array the validation rules.
- */
- public function rules()
- {
- return [
- [['name'], 'trim'],
- [['status'], 'integer'],
- ];
- }
- public function getUserList()
- {
- $query = User::find()->alias('u')->where([
- 'u.type' => User::USER_TYPE_NORMAL,
- 'u.store_id' => $this->store_id,
- 'u.is_delete' => User::USER_NOT_DELETE,
- ]);
- // 名称或者昵称
- if ($this->name) {
- $query->andWhere(['or', ['like', 'u.nickname', $this->name], ['like', 'u.username', $this->name]]);
- }
- if ($this->status == 1) {
- $query->andWhere([
- 'u.is_clerk' => 1
- ]);
- }
- $orderQuery = Order::find()->where(['store_id' => $this->store_id, 'is_delete' => 0,
- 'mch_id' => 0])->andWhere('user_id = u.id')->andWhere(['<>', 'trade_status', Order::ORDER_FLOW_CANCEL])->select('count(1)');
- $query->select(['u.nickname', 'u.avatar_url', 'u.id', 'u.integral', 'u.money', 'u.is_clerk', 'u.shop_id' ,'order_num' => $orderQuery])->orderBy('u.created_at DESC');
- $pagination = pagination_make($query);
- $list = $pagination['list'];
- foreach ($list as $key => $value) {
- $list[$key]['shop'] = [];
- if ($value['is_clerk']) {
- $list[$key]['shop'] = Shop::find()->select('name, id')->one();
- $list[$key]['clerk_id'] = Clerk::findOne(['user_id' => $value['id'], 'is_delete' => 0])->id;
- }
- }
- return [
- 'code' => 0,
- 'msg' => 'success',
- 'data' => [
- 'data' => $list,
- 'pageNo' => $pagination['pageNo'],
- 'totalCount' => $pagination['totalCount'],
- ],
- ];
- }
- public function delClerk($id, $user_id)
- {
- $t = \Yii::$app->db->beginTransaction();
- $model = Clerk::findOne(['id' => $id]);
- if ($model) {
- $model->is_delete = Clerk::IS_DELETE_YES;
- if (!$model || !$model->save()) {
- $t->rollBack();
- return [
- 'code' => 1,
- 'msg' => $model->getErrorSummary(false)[0]
- ];
- }
- }
- // 核銷園同步到user表
- if ($user_id > 0) {
- $user = User::findOne(['id' => $user_id]);
- $user->is_clerk = 0;
- $user->shop_id = 0;
- $user->save();
- }
- $t->commit();
- return [
- 'code' => 0,
- 'msg' => '删除成功'
- ];
- }
- }
|