pull/1/head
limu 1 year ago
parent 1e922f3595
commit c1ed784f48
  1. 48
      app/api/controller/User.php
  2. 60
      app/api/service/Feedback.php
  3. 6
      app/api/service/Store.php
  4. 49
      app/common/model/UserFeedback.php

@ -12,6 +12,7 @@ declare (strict_types=1);
namespace app\api\controller;
use app\api\service\Feedback;
use think\response\Json;
use app\api\model\User as UserModel;
use app\api\model\UserCoupon as UserCouponModel;
@ -38,12 +39,12 @@ class User extends Controller
// 获取用户头像和会员等级
$userInfo = UserModel::related($userInfo, ['avatar', 'grade']);
//获取提现次数
$userInfo['finace_count'] = BalanceLog::where(['user_id' => $userInfo->user_id, 'scene' => 50])->count()??0;
$userInfo['finace_count'] = BalanceLog::where(['user_id' => $userInfo->user_id, 'scene' => 50])->count() ?? 0;
//获取用户收入
$userInfo['income'] = BalanceLog::where(['user_id' => $userInfo->user_id])
->whereIn('scene',[10,30,40,60])
->where('money','>',0)
->sum('money')??0;
->whereIn('scene', [10, 30, 40, 60])
->where('money', '>', 0)
->sum('money') ?? 0;
return $this->renderSuccess(compact('userInfo'));
}
@ -96,4 +97,43 @@ class User extends Controller
}
return $this->renderSuccess('恭喜您,信息修改成功');
}
/**
* 提交反馈
*/
public function addFeedback(): Json
{
// 当前用户信息
$userInfo = UserService::getCurrentLoginUser(true);
$params = $this->request->param();
if (empty($params['content']) || (empty($params['store_id']) && $params['object_type'] != 1) || empty($params['type'])) {
return $this->renderError('请补全信息');
}
$userData = [
'user_id' => $userInfo->user_id,
'user_name' => $userInfo->nick_name,
'mobile' => $userInfo->mobile,
];
$service = new Feedback();
$res = $service->addFeedback($params, $userData);
if ($res) {
return $this->renderSuccess('提交成功,请耐心等待');
} else {
return $this->renderError('提交失败');
}
}
//获取反馈列表
public function getFeedBack(): Json
{
$params = $this->request->param();
// 当前用户信息
if (!empty($params['is_my'])) {
$userInfo = UserService::getCurrentLoginUser(true);
$params['user_id'] = $userInfo->user_id;
}
$service = new Feedback();
$list = $service->getFeedback($params);
return $this->renderSuccess(compact('list'));
}
}

@ -0,0 +1,60 @@
<?php
// +----------------------------------------------------------------------
// | 萤火商城系统 [ 致力于通过产品和服务,帮助商家高效化开拓市场 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2017~2023 https://www.yiovo.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed 这不是一个自由软件,不允许对程序代码以任何形式任何目的的再发行
// +----------------------------------------------------------------------
// | Author: 萤火科技 <admin@yiovo.com>
// +----------------------------------------------------------------------
declare (strict_types=1);
namespace app\api\service;
use app\common\model\UserFeedback;
use app\common\service\BaseService;
use cores\exception\BaseException;
/**
* 用户余额充值服务
* Class Recharge
* @package app\api\controller
*/
class Feedback extends BaseService
{
//添加反馈
public function addFeedback($data, $user_data)
{
$addData = [
'user_id' => $user_data['user_id'],
'store_id' => $data['store_id'] ?? 0,
'type' => $data['type'],
'object_type' => $data['object_type'],
'content' => $data['content'],
'user_name' => $user_data['user_name'],
'mobile' => $user_data['mobile'],
'status' => 0,
'created_at' => time(),
];
$model = new UserFeedback();
return $model->insert($addData);
}
//反馈列表
public function getFeedback($params, $listRows = 10)
{
$query = new UserFeedback();
if (!empty($params['is_my']) && !empty($params['user_id'])) {
$query = $query->where(['user_id' => $params['user_id']]);
}
$list = $query->with(['store'])
->order('replay_at desc,created_at desc')
->paginate($listRows)->toArray();
foreach ($list['data'] as $k => $v) {
$list['data'][$k]['store_name'] = !empty($v['store']['store_name']) ? $v['store']['store_name'] : '';
unset($list['data'][$k]['store']);
}
return $list;
}
}

@ -13,6 +13,7 @@ declare (strict_types=1);
namespace app\api\service;
use app\api\model\Store as StoreModel;
use \app\common\model\Store as StoreInfoModel;
use app\api\service\Client as ClientService;
use app\api\service\Setting as SettingService;
use app\api\model\store\Module as StoreModuleModel;
@ -116,7 +117,7 @@ class Store extends BaseService
//申请入驻
public function joinStore($data, $user_id)
{
$has = \app\admin\model\Store::where(['user_id' => $user_id])->find();
$has = Db::query('select * from yoshop_store where user_id = ' . $user_id . ' and status != 2 and is_recycle = 0 and is_delete= 0');
if ($has) {
return ['code' => 1, 'msg' => '请勿重复申请入驻'];
}
@ -170,7 +171,7 @@ class Store extends BaseService
public function joinData($user_id)
{
$storeInfo = Db::query('select * from yoshop_store where user_id = ' . $user_id);
$storeInfo = Db::query('select * from yoshop_store where user_id = ' . $user_id . ' and and is_recycle = 0 and is_delete= 0');
$settle = [];
if (!empty($storeInfo)) {
$res = Db::query('select * from yoshop_store_settle where store_id = ' . $storeInfo[0]['store_id']);
@ -182,4 +183,5 @@ class Store extends BaseService
'settle' => $settle,
];
}
}

@ -0,0 +1,49 @@
<?php
// +----------------------------------------------------------------------
// | 萤火商城系统 [ 致力于通过产品和服务,帮助商家高效化开拓市场 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2017~2023 https://www.yiovo.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed 这不是一个自由软件,不允许对程序代码以任何形式任何目的的再发行
// +----------------------------------------------------------------------
// | Author: 萤火科技 <admin@yiovo.com>
// +----------------------------------------------------------------------
declare (strict_types=1);
namespace app\common\model;
use cores\BaseModel;
use think\model\relation\HasOne;
/**
* 用户模型类
* Class User
* @package app\common\model
*/
class UserFeedback extends BaseModel
{
// 定义表名
protected $name = 'user_feedback';
// 定义主键
protected $pk = 'id';
/**
* 关联用户
* @return HasOne
*/
public function user(): HasOne
{
return $this->hasOne('user', 'user_id', 'user_id');
}
/**
* 关联商家
* @return HasOne
*/
public function store(): HasOne
{
return $this->hasOne('store', 'store_id', 'store_id');
}
}
Loading…
Cancel
Save