193 lines
6.7 KiB
PHP
193 lines
6.7 KiB
PHP
<?php
|
||
// +----------------------------------------------------------------------
|
||
// | likeadmin快速开发前后端分离管理后台(PHP版)
|
||
// +----------------------------------------------------------------------
|
||
// | 欢迎阅读学习系统程序代码,建议反馈是我们前进的动力
|
||
// | 开源版本可自由商用,可去除界面版权logo
|
||
// | gitee下载:https://gitee.com/likeshop_gitee/likeadmin
|
||
// | github下载:https://github.com/likeshop-github/likeadmin
|
||
// | 访问官网:https://www.likeadmin.cn
|
||
// | likeadmin团队 版权所有 拥有最终解释权
|
||
// +----------------------------------------------------------------------
|
||
// | author: likeadminTeam
|
||
// +----------------------------------------------------------------------
|
||
|
||
namespace app\adminapi\logic;
|
||
|
||
|
||
use app\common\model\teamaster\Teamaster;
|
||
use app\common\model\teamaster\TeamasterAddress;
|
||
use app\common\model\teamaster\TeamasterUser;
|
||
use app\common\model\TeamasterReal;
|
||
use app\common\logic\BaseLogic;
|
||
use app\common\model\teastore\TeaStoreCity;
|
||
use app\common\service\FileService;
|
||
use think\facade\Config;
|
||
use think\facade\Db;
|
||
|
||
|
||
/**
|
||
* TeamasterReal逻辑
|
||
* Class TeamasterRealLogic
|
||
* @package app\adminapi\logic
|
||
*/
|
||
class TeamasterRealLogic extends BaseLogic
|
||
{
|
||
|
||
public static function lists($data){
|
||
// 如果 $data 是 Json 响应对象,先获取其数据
|
||
if ($data instanceof \think\response\Json) {
|
||
$data = $data->getData();
|
||
}
|
||
foreach($data['data']['lists'] as $key=>$value){
|
||
$data['data']['lists'][$key]['license_img'] = FileService::getImgUrl($value['license_img']);
|
||
$data['data']['lists'][$key]['avatar'] = FileService::getImgUrl($value['avatar']);
|
||
$certificate = explode(",",$data['data']['lists'][$key]['certificate']);
|
||
$arr = [];
|
||
foreach($certificate as $k=>$v){
|
||
$arr[] = FileService::getImgUrl($v);
|
||
}
|
||
|
||
$data['data']['lists'][$key]['certificate'] = $arr;
|
||
$data['data']['lists'][$key]['city_name'] = TeaStoreCity::where("id",$value['city_id'])->value("name");
|
||
}
|
||
return $data;
|
||
}
|
||
/**
|
||
* @notes 添加
|
||
* @param array $params
|
||
* @return bool
|
||
* @author likeadmin
|
||
* @date 2026/02/02 00:24
|
||
*/
|
||
public static function add(array $params): bool
|
||
{
|
||
Db::startTrans();
|
||
try {
|
||
TeamasterReal::create([
|
||
'city_id' => $params['city_id'],
|
||
// 'nickname' => $params['nickname'],
|
||
'username' => $params['username'],
|
||
'mobile' => $params['mobile'],
|
||
'gender' => $params['gender'],
|
||
'user_id' => $params['user_id'],
|
||
'both' => $params['both'],
|
||
'height' => $params['height'],
|
||
'weight' => $params['weight'],
|
||
'avatar' => $params['avatar'],
|
||
'information' => $params['information'],
|
||
'certificate' => $params['certificate'],
|
||
'license_img' => $params['license_img'],
|
||
'hobby_introduce' => $params['hobby_introduce'],
|
||
'status' => $params['status']
|
||
]);
|
||
|
||
Db::commit();
|
||
return true;
|
||
} catch (\Exception $e) {
|
||
Db::rollback();
|
||
self::setError($e->getMessage());
|
||
return false;
|
||
}
|
||
}
|
||
|
||
|
||
/**
|
||
* @notes 编辑
|
||
* @param array $params
|
||
* @return bool
|
||
* @author likeadmin
|
||
* @date 2026/02/02 00:24
|
||
*/
|
||
public static function edit(array $params): bool
|
||
{
|
||
Db::startTrans();
|
||
try {
|
||
if($params['status'] == 1){
|
||
$passwordSalt = Config::get('project.unique_identification');
|
||
$password = create_password("123456", $passwordSalt);
|
||
$id = TeamasterUser::insertGetId([
|
||
'avatar' => $params['avatar'],
|
||
'nickname' => $params['username'],
|
||
'account' => $params['mobile'],
|
||
'mobile' => $params['mobile'],
|
||
'password'=>$password
|
||
]);
|
||
$city = TeaStoreCity::where("id",$params['city_id'])->find();
|
||
$address_id = TeamasterAddress::insertGetId([
|
||
'team_user_id' => $id,
|
||
'city_id' => $params['city_id'],
|
||
'longitude' => $city['longitude'],
|
||
'latitude' => $city['latitude'],
|
||
'address' => $city['name'],
|
||
'dtime' => time()
|
||
|
||
]);
|
||
TeamasterUser::where("id",$id)->update(['address_id'=>$address_id]);
|
||
Teamaster::create([
|
||
'team_user_id' => $id,
|
||
'image'=>$params['avatar'],
|
||
'name' => $params['username'],
|
||
'both' => $params['both'],
|
||
'weight' => $params['weight'],
|
||
'height' => $params['height'],
|
||
'sex' => $params['gender'],
|
||
'hobby_introduce'=>$params['hobby_introduce'],
|
||
'dtime'=>time()
|
||
|
||
]);
|
||
}
|
||
|
||
TeamasterReal::where('id', $params['id'])->update([
|
||
// 'city_id' => $params['city_id'],
|
||
// 'nickname' => $params['nickname'],
|
||
// 'username' => $params['username'],
|
||
// 'mobile' => $params['mobile'],
|
||
// 'gender' => $params['gender'],
|
||
// 'user_id' => $params['user_id'],
|
||
// 'both' => $params['both'],
|
||
// 'height' => $params['height'],
|
||
// 'weight' => $params['weight'],
|
||
// 'avatar' => $params['avatar'],
|
||
// 'information' => $params['information'],
|
||
// 'certificate' => $params['certificate'],
|
||
// 'license_img' => $params['license_img'],
|
||
// 'hobby_introduce' => $params['hobby_introduce'],
|
||
'status' => $params['status']
|
||
]);
|
||
|
||
Db::commit();
|
||
return true;
|
||
} catch (\Exception $e) {
|
||
Db::rollback();
|
||
self::setError($e->getMessage());
|
||
return false;
|
||
}
|
||
}
|
||
|
||
|
||
/**
|
||
* @notes 删除
|
||
* @param array $params
|
||
* @return bool
|
||
* @author likeadmin
|
||
* @date 2026/02/02 00:24
|
||
*/
|
||
public static function delete(array $params): bool
|
||
{
|
||
return TeamasterReal::destroy($params['id']);
|
||
}
|
||
|
||
|
||
/**
|
||
* @notes 获取详情
|
||
* @param $params
|
||
* @return array
|
||
* @author likeadmin
|
||
* @date 2026/02/02 00:24
|
||
*/
|
||
public static function detail($params): array
|
||
{
|
||
return TeamasterReal::findOrEmpty($params['id'])->toArray();
|
||
}
|
||
} |