恋仙传奇 搬移。
This commit is contained in:
250
application/adminapi/model/Monster.php
Normal file
250
application/adminapi/model/Monster.php
Normal file
@@ -0,0 +1,250 @@
|
||||
<?php
|
||||
|
||||
namespace app\adminapi\model;
|
||||
|
||||
use think\Db;
|
||||
use think\Model;
|
||||
|
||||
class Monster extends Model
|
||||
{
|
||||
//列表
|
||||
public function get_monster_list($order, $sort, $page = 1, $limit = 20)
|
||||
{
|
||||
|
||||
$list = db::name('Monster')->order($order, $sort)->page($page, $limit)->select();
|
||||
$total_num = db::name('Monster')->sum('num');
|
||||
foreach ($list as $k => &$v) {
|
||||
$gift_info = db::name('vs_gift')->where('gid', $v['gid'])->find();
|
||||
$v['gift_name'] = $gift_info['gift_name'];
|
||||
$v['base_image'] = localpath_to_netpath($gift_info['base_image']);
|
||||
$v['gift_price'] = $gift_info['gift_price'];
|
||||
$v['rate'] = round(($v['num']/$total_num), 6) * 100;
|
||||
$v['rate'] .= '%';
|
||||
$v['createtime'] = date('Y-m-d H:i:s', $v['createtime']);
|
||||
$v['updatetime'] = date('Y-m-d H:i:s', $v['updatetime']);
|
||||
}
|
||||
$data = [];
|
||||
$data['count'] = db::name('Monster')->count();
|
||||
$data['list'] = $list;
|
||||
return ['code' => 1, 'msg' => '获取成功', 'data' => $data];
|
||||
}
|
||||
|
||||
//获取礼物列表
|
||||
public function get_gift_list(){
|
||||
$map = [];
|
||||
// $map[] = ['gid', 'not in', [36,37,38]];
|
||||
$map['type'] = ['=', 1];
|
||||
$map['is_show'] = ['=',1];
|
||||
$map['delete_time'] = ['=', 0];
|
||||
$list = db::name('vs_gift')->where($map)->order('gift_price asc')->select();
|
||||
$data = [];
|
||||
$data['count'] = db::name('vs_gift')->where($map)->count();
|
||||
$data['list'] = $list;
|
||||
return ['code' => 1, 'msg' => '获取成功', 'data' => $data];
|
||||
|
||||
|
||||
}
|
||||
|
||||
//编辑
|
||||
public function edit_monster($data)
|
||||
{
|
||||
if (empty($data)) {
|
||||
return ['code' => 0, 'msg' => '参数异常', 'data' => null];
|
||||
}
|
||||
|
||||
$monster_info = db::name('Monster')->find($data['id']);
|
||||
if (empty($monster_info)) {
|
||||
return ['code' => 0, 'msg' => '参数异常', 'data' => null];
|
||||
}
|
||||
|
||||
$map = [];
|
||||
$map['gid'] = ['=', $data['gid']];
|
||||
// $map['type'] = ['=', 1];
|
||||
$map['is_show'] = ['=',1];
|
||||
$map['delete_time'] = ['=', 0];
|
||||
$gift_info = db::name('vs_gift')->where($map)->find();
|
||||
if(!$gift_info){
|
||||
return ['code' => 0, 'msg' => '配置礼物不存在', 'data' => null];
|
||||
}
|
||||
|
||||
if($monster_info['multiple'] * 10 != $gift_info['gift_price']){
|
||||
return ['code' => 0, 'msg' => '配置礼物的价格必须为倍数的10倍', 'data' => null];
|
||||
}
|
||||
|
||||
Db::startTrans();
|
||||
try {
|
||||
|
||||
$update_data = [];
|
||||
$update_data['type_name'] = $data['type_name'];
|
||||
// $update_data['multiple'] = $data['multiple'];
|
||||
$update_data['gid'] = $data['gid'];
|
||||
$update_data['num'] = $data['num'];
|
||||
$update_data['updatetime'] = time();
|
||||
$reslut = db::name('Monster')->where(['id' => $data['id']])->update($update_data);
|
||||
if (!$reslut) {
|
||||
Db::rollback();
|
||||
return ['code' => 0, 'msg' => '修改失败', 'data' => null];
|
||||
}
|
||||
|
||||
Db::commit();
|
||||
return ['code' => 1, 'msg' => '修改成功', 'data' => null];
|
||||
} catch (\Exception $e) {
|
||||
// 回滚事务
|
||||
dump($e);
|
||||
Db::rollback();
|
||||
return ['code' => 0, 'msg' => '修改失败', 'data' => null];
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
//获取信息
|
||||
public function get_monster_info($id)
|
||||
{
|
||||
if (empty($id)) {
|
||||
return ['code' => 201, 'msg' => '参数异常', 'data' => null];
|
||||
}
|
||||
$monster_info = db::name('Monster')->where(['id' => $id])->find();
|
||||
return ['code' => 1, 'msg' => '获取成功', 'data' => $monster_info];
|
||||
}
|
||||
|
||||
|
||||
//列表
|
||||
public function get_monster_multiple_list($order, $sort, $page = 1, $limit = 20)
|
||||
{
|
||||
|
||||
$list = db::name('monster_multiple')->order($order, $sort)->page($page, $limit)->select();
|
||||
foreach ($list as $k => &$v) {
|
||||
|
||||
}
|
||||
$data = [];
|
||||
$data['count'] = db::name('monster_multiple')->count();
|
||||
$data['list'] = $list;
|
||||
return ['code' => 1, 'msg' => '获取成功', 'data' => $data];
|
||||
}
|
||||
|
||||
//编辑
|
||||
public function edit_monster_multiple($data)
|
||||
{
|
||||
if (empty($data)) {
|
||||
return ['code' => 201, 'msg' => '参数异常', 'data' => null];
|
||||
}
|
||||
|
||||
$monster_info = db::name('monster_multiple')->find($data['id']);
|
||||
if (empty($monster_info)) {
|
||||
return ['code' => 201, 'msg' => '参数异常', 'data' => null];
|
||||
}
|
||||
|
||||
Db::startTrans();
|
||||
try {
|
||||
|
||||
$update_data = [];
|
||||
$update_data['multiple'] = $data['multiple'];
|
||||
$update_data['updatetime'] = time();
|
||||
$reslut = db::name('monster_multiple')->where(['id' => $data['id']])->update($update_data);
|
||||
if (!$reslut) {
|
||||
Db::rollback();
|
||||
return ['code' => 0, 'msg' => '修改失败', 'data' => null];
|
||||
}
|
||||
|
||||
Db::commit();
|
||||
return ['code' => 1, 'msg' => '修改成功', 'data' => null];
|
||||
} catch (\Exception $e) {
|
||||
// 回滚事务
|
||||
dump($e);
|
||||
Db::rollback();
|
||||
return ['code' => 0, 'msg' => '修改失败', 'data' => null];
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
//获取信息
|
||||
public function get_monster_multiple_info($id)
|
||||
{
|
||||
if (empty($id)) {
|
||||
return ['code' => 0, 'msg' => '参数异常', 'data' => null];
|
||||
}
|
||||
$monster_info = db::name('monster_multiple')->where(['id' => $id])->find();
|
||||
return ['code' => 1, 'msg' => '获取成功', 'data' => $monster_info];
|
||||
}
|
||||
|
||||
|
||||
//列表
|
||||
public function get_monster_log($order, $sort, $page = 1, $limit = 20)
|
||||
{
|
||||
|
||||
$list = db::name('monster_log')->order($order, $sort)->page($page, $limit)->select();
|
||||
foreach ($list as $k => &$v) {
|
||||
$v['type_name'] = '暂未开奖';
|
||||
$v['gid'] = 0;
|
||||
$v['gift_name'] = '';
|
||||
$v['base_image'] = '';
|
||||
$v['gift_price'] = 0;
|
||||
if($v['is_delete'] == 2){
|
||||
$gift_info = db::name('Monster')->alias('a')->join('vs_gift b', 'a.gid = b.gid')->field('b.gid,b.gift_name,b.base_image,b.gift_price,a.type_name')->where('a.type', $v['win_type'])->find();
|
||||
$v['gid'] = $gift_info['gid'];
|
||||
$v['gift_name'] = $gift_info['gift_name'];
|
||||
$v['base_image'] = localpath_to_netpath($gift_info['base_image']);
|
||||
$v['gift_price'] = $gift_info['gift_price'];
|
||||
$v['type_name'] = $gift_info['type_name'];
|
||||
$v['createtime'] = date('Y-m-d H:i:s', $v['createtime']);
|
||||
$v['updatetime'] = date('Y-m-d H:i:s', $v['updatetime']);
|
||||
$v['end_time'] = date('Y-m-d H:i:s', $v['end_time']);
|
||||
}
|
||||
}
|
||||
$data = [];
|
||||
$data['count'] = db::name('monster_log')->count();
|
||||
$data['list'] = $list;
|
||||
$totalRowData = db::name('monster_log')->field('count(1) as count,SUM(out_amount) as out_amount,SUM(in_amount) as in_amount')->find();
|
||||
unset($totalRowData['count']);
|
||||
$data['totalRow'] = $totalRowData;
|
||||
return ['code' => 1, 'msg' => '获取成功', 'data' => $data];
|
||||
}
|
||||
|
||||
//列表
|
||||
public function get_user_monster_log($mid, $order, $sort, $page = 1, $limit = 20)
|
||||
{
|
||||
|
||||
$list = db::name('user_monster_log')->where('mid', $mid)->order($order, $sort)->page($page, $limit)->select();
|
||||
foreach ($list as $k => &$v) {
|
||||
$user_info = db::name('user')->where('id', $v['uid'])->field('id,nickname,avatar')->find();
|
||||
$v['nickname'] = $user_info['nickname'];
|
||||
$v['avatar'] = localpath_to_netpath($user_info['avatar']);
|
||||
$v['type_name'] = db::name('Monster')->where('type', $v['type'])->value('type_name');
|
||||
$v['createtime'] = date('Y-m-d H:i:s', $v['createtime']);
|
||||
$v['updatetime'] = date('Y-m-d H:i:s', $v['updatetime']);
|
||||
}
|
||||
|
||||
$data = [];
|
||||
$data['count'] = db::name('user_monster_log')->where('mid', $mid)->count();
|
||||
$data['list'] = $list;
|
||||
return ['code' => 1, 'msg' => '获取成功', 'data' => $data];
|
||||
}
|
||||
|
||||
//列表
|
||||
public function get_user_monster_win_log($mid, $order, $sort, $page = 1, $limit = 20)
|
||||
{
|
||||
|
||||
$list = db::name('user_monster_win_log')->where('mid', $mid)->order($order, $sort)->page($page, $limit)->select();
|
||||
foreach ($list as $k => &$v) {
|
||||
$user_info = db::name('user')->where('id', $v['uid'])->field('id,nickname,avatar')->find();
|
||||
$v['nickname'] = $user_info['nickname'];
|
||||
$v['avatar'] = localpath_to_netpath($user_info['avatar']);
|
||||
$v['type_name'] = db::name('Monster')->where('type', $v['win_type'])->value('type_name');
|
||||
$gift_info = db::name('vs_gift')->where('gid', $v['win_gid'])->field('gid,gift_name,base_image,gift_price')->find();
|
||||
$v['gift_name'] = $gift_info['gift_name'];
|
||||
$v['base_image'] = localpath_to_netpath($gift_info['base_image']);
|
||||
$v['gift_price'] = $gift_info['gift_price'];
|
||||
$v['createtime'] = date('Y-m-d H:i:s', $v['createtime']);
|
||||
$v['updatetime'] = date('Y-m-d H:i:s', $v['updatetime']);
|
||||
}
|
||||
$data = [];
|
||||
$data['count'] = db::name('user_monster_win_log')->where('mid', $mid)->count();
|
||||
$data['list'] = $list;
|
||||
return ['code' => 1, 'msg' => '获取成功', 'data' => $data];
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user