118 lines
3.1 KiB
PHP
118 lines
3.1 KiB
PHP
<?php
|
|
|
|
namespace app\common\repository;
|
|
|
|
use app\common\newmodel\UserModel;
|
|
use think\Db;
|
|
|
|
class UserReposotpry extends UserModel
|
|
{
|
|
/**
|
|
* 根据手机号查询用户信息 function
|
|
*
|
|
* @author dotdotdot <6383846@qq.com>
|
|
* @date 2022-08-08
|
|
* @param array $fiels
|
|
* @param string $phone
|
|
* @return array
|
|
*/
|
|
public function selectByPhone(array $fiels, string $phone): array
|
|
{
|
|
$object = UserModel::field($fiels)->where('phone', '=', $phone)->find();
|
|
|
|
return empty($object) ? [] : $object->toArray();
|
|
}
|
|
|
|
/**
|
|
* 根据手机号和密码查询用户信息 function
|
|
*
|
|
* @author dotdotdot <6383846@qq.com>
|
|
* @date 2022-08-08
|
|
* @param array $fiels
|
|
* @param string $phone
|
|
* @return array
|
|
*/
|
|
public function selectByPhoneAndPassword(array $fiels, string $phone, string $passWord): array
|
|
{
|
|
$object = UserModel::field($fiels)->where(['phone' => $phone, 'password' => $passWord])->find();
|
|
|
|
return empty($object) ? [] : $object->toArray();
|
|
}
|
|
|
|
/**
|
|
* 插入数据 function
|
|
*
|
|
* @author dotdotdot <6383846@qq.com>
|
|
* @date 2022-08-08
|
|
* @param array $data
|
|
* @return integer
|
|
*/
|
|
public function insert(array $data): int
|
|
{
|
|
return UserModel::insert($data);
|
|
}
|
|
|
|
/**
|
|
* 根据Uid更新Egold数量 function
|
|
*
|
|
* @author dotdotdot <6383846@qq.com>
|
|
* @date 2022-08-09
|
|
* @param integer $uid
|
|
* @param integer $sum
|
|
* @return integer
|
|
*/
|
|
public function updateIncEgoldByUid(int $uid, int $sum): int
|
|
{
|
|
return UserModel::where(['uid' => $uid])->setInc('egold', $sum);
|
|
}
|
|
|
|
/**
|
|
* 根据Uid查询信息 function
|
|
*
|
|
* @author dotdotdot <6383846@qq.com>
|
|
* @date 2022-08-11
|
|
* @param array $fields
|
|
* @param integer $uid
|
|
* @return array
|
|
*/
|
|
public function selectByUid(array $fields, int $uid): array
|
|
{
|
|
$object = UserModel::field($fields)->where(['uid' => $uid])->find();
|
|
|
|
return empty($object) ? [] : $object->toArray();
|
|
}
|
|
|
|
/**
|
|
* 根据Uid更新数据 function
|
|
*
|
|
* @author dotdotdot <6383846@qq.com>
|
|
* @date 2022-08-11
|
|
* @param array $data
|
|
* @param integer $uid
|
|
* @return integer
|
|
*/
|
|
public function updateData(array $data, int $uid): int
|
|
{
|
|
return UserModel::where(['uid' => $uid])->update($data);
|
|
}
|
|
|
|
/**
|
|
* 查询历史记录 function
|
|
*
|
|
* @author dotdotdot <6383846@qq.com>
|
|
* @date 2022-08-12
|
|
* @param integer $uid
|
|
* @return array
|
|
*/
|
|
public function selectHistory(int $uid)
|
|
{
|
|
return Db::view('History', ['History.order' => 'current_order', 'History.chapterid' => 'sid'])
|
|
->view('Skits_video', ['max(Skits_video.order)' => 'max_order'], 'History.articleid=Skits_video.sid')
|
|
->view('Skits_library', 'id,cover,name,description', 'Skits_library.id=Skits_video.sid')
|
|
->where(['History.uid' => $uid])
|
|
->group('Skits_video.sid,History.create_time')
|
|
->order(['History.create_time' => 'desc'])
|
|
->select();
|
|
}
|
|
}
|