部分测试

This commit is contained in:
tsf 2024-06-29 19:11:24 +08:00
parent eed9a5f41a
commit b4fe295077
6 changed files with 188 additions and 37 deletions

View File

@ -10,6 +10,8 @@ use \think\Validate;
class Member extends Controller{
protected $db_name = ['2'=>'app_card_body_data','6'=>'app_card_skip_data','8'=>'app_card_vitalcapacity_data'];
################################################################账号################################################################
################################################################账号################################################################
################################################################账号################################################################
@ -53,7 +55,11 @@ class Member extends Controller{
]);
return $this->fetch();
}
// 用户账号下角色列表
public function member_user_list(){
$data = input();
return $this->user_list(1,$data['id']);
}
// 用户账号停用
public function member_is_del(){
$data = input();
@ -76,7 +82,7 @@ class Member extends Controller{
################################################################角色################################################################
// 角色列表
public function user_list($page = 1){
public function user_list($page = 1,$id = null){
$data = input();
$pd = true;
$parameter = [];
@ -86,27 +92,31 @@ class Member extends Controller{
unset($data['page_num']);
unset($data['tt']);
$pd = false;
if(in_array($data['status_num'], $status)){
$parameter['is_del'] = $data['status_num'];
if(array_key_exists('status_num', $data)){
if(in_array($data['status_num'], $status)){
$parameter['is_del'] = $data['status_num'];
}
}
if($data['aan_id']){
$parameter['aan_id'] = $data['aan_id'];
if(array_key_exists('aan_id', $data)){
if($data['aan_id']){
$parameter['aan_id'] = $data['aan_id'];
}
}
if($data['nickname']){
$parameter['nickname'] = $data['nickname'];
if(array_key_exists('nickname', $data)){
if($data['nickname']){
$parameter['nickname'] = $data['nickname'];
}
}
if(in_array($data['gender'], $status)){
$parameter['gender'] = $data['gender'];
if(array_key_exists('gender', $data)){
if(in_array($data['gender'], $status)){
$parameter['gender'] = $data['gender'];
}
}
}else{
if($id){
$parameter['aan_id'] = $id;
}
// if($data['s_time']){
// $parameter['create_time'] = ['>=',$data['s_time']];
// }
// if($data['e_time']){
// $parameter['create_time'] = ['<=',$data['e_time']];
// }
}
// dump($parameter);
// die;
$num = Db::table('app_user_data')->where($parameter)->count();
$member_list = Db::table('app_user_data')->where($parameter)->page("$page,10")->order('is_del,id desc')->select();
if(!$pd){
@ -117,6 +127,33 @@ class Member extends Controller{
$this->assign([
'result' => $member_list,
'num' => $num,
'aanid' => $id,
]);
return $this->fetch();
}
// 用户行为简报
public function user_record_briefing(){
$data = input();
$result_card_order = Db::table('app_user_data')->where(['id'=>$data['id']])->field('id,card_order')->find();
$db_num = explode(',',$result_card_order['card_order']);
$end_result['身体数据'] = Db::table('app_card_body_data')->where(['aud_id'=>$data['id']])->order('record_time desc')->field('height_val,weight_val,record_time')->select();
foreach ($db_num as $key => $value) {
$result = Db::table('app_card_data')->where(['id'=>$value])->field('id,name')->find();
$result2 = Db::table($this->db_name[$value])->where(['aud_id'=>$data['id']])->order('record_time desc')->select();
$end_result[$result['name']] = $result2;
}
$end_result2 = [];
foreach ($end_result as $key => $value) {
array_push($end_result2,[
'name' => $key,
'num' => count($value),
'time' => count($value)>0?$value[0]['record_time']:'已创建未测量',
]);
}
// dump($end_result2);
// die;
$this->assign([
'result' => $end_result2
]);
return $this->fetch();
}
@ -141,6 +178,12 @@ class Member extends Controller{
}
}
################################################################角色使用记录################################################################
################################################################角色使用记录################################################################
################################################################角色使用记录################################################################
################################################################other################################################################
################################################################other################################################################

View File

@ -61,6 +61,11 @@
<i class="iconfont">&#xe6a7;</i>
<cite>APP角色数据列表</cite></a>
</li>
<li>
<a onclick="xadmin.add_tab('APP角色数据列表','/member/user_list')">
<i class="iconfont">&#xe6a7;</i>
<cite>角色使用记录查询</cite></a>
</li>
</ul>
</li>
<li>

View File

@ -17,7 +17,7 @@
</style>
</head>
<body>
<div class="x-nav">
<!-- <div class="x-nav">
<span class="layui-breadcrumb">
<a href="">首页</a>
<a href="">演示</a>
@ -26,7 +26,7 @@
</span>
<a class="layui-btn layui-btn-small" style="line-height:1.6em;margin-top:3px;float:right" onclick="location.reload()" title="刷新">
<i class="layui-icon layui-icon-refresh" style="line-height:30px"></i></a>
</div>
</div> -->
<div class="layui-fluid">
<div class="layui-row layui-col-space15">
<div class="layui-col-md12">
@ -65,13 +65,15 @@
<table class="layui-table layui-form">
<thead>
<tr>
<th><input type="checkbox" lay-filter="checkall" name="" lay-skin="primary"></th>
<th>账号ID</th>
<th>唯一token</th>
<th width="30"><input type="checkbox" lay-filter="checkall" name="" lay-skin="primary"></th>
<th width="30">账号ID</th>
<!-- <th>唯一token</th> -->
<th>昵称</th>
<!-- <th>头像</th> -->
<th>手机</th>
<th>邮箱</th>
<th>创建时间</th>
<th>状态</th>
<th>操作</th>
<!-- <th>操作</th></tr> -->
</thead>
<tbody id='content'>
@ -80,7 +82,9 @@
<tr>
<td><input type="checkbox" name="id" value="{$vo.id}" lay-skin="primary"></td>
<td>{$vo.id}</td>
<td>{$vo.token}</td>
<!-- <td>{$vo.token}</td> -->
<td>{$vo.nickname}</td>
<!-- <td><img src="{$vo.head_pic}" alt=""></td> -->
<td>{$vo.tel}</td>
<td>{$vo.email}</td>
<td>{$vo.create_time}</td>
@ -90,7 +94,7 @@
{else /}
<span onclick="member_stop(this,'{$vo.id}')" class="layui-btn layui-btn-normal layui-btn-mini" title="启用">已启用</span>
{/if}
<span onclick="xadmin.open('用户列表','/member/user_list?id={$vo.id}','100%','100%')" class="layui-btn layui-btn-sm">详情</span>
</td>
<!-- <td class="td-manage">
<span class="layui-btn layui-btn-normal layui-btn-mini" title="启用">详细</span>
@ -238,7 +242,7 @@
layer.confirm('确认要停用吗ID为'+ids.toString(),function(index){
//捉到所有被选中的,发异步进行删除
$.ajax({
url:"member_is_del", //请求的url地址
url:"/member/member_is_del", //请求的url地址
dataType:"json", //返回格式为json
async:true,//请求是否异步默认为异步这也是ajax重要特性
data:{"id":ids,'is_del':1}, //参数值
@ -300,7 +304,9 @@
str_c = "<tr>"+
'<td><input type="checkbox" name="id" value="'+req['data']['data'][i]['id']+'" lay-skin="primary"></td>'+
'<td>'+req['data']['data'][i]['id']+'</td>'+
'<td>'+req['data']['data'][i]['token']+'</td>'+
// '<td>'+req['data']['data'][i]['token']+'</td>'+
'<td>'+req['data']['data'][i]['nickname']+'</td>'+
// '<td><img src="'+req['data']['data'][i]['head_pic']+'" alt=""></td>'+
'<td>'+req['data']['data'][i]['tel']+'</td>'+
'<td>'+req['data']['data'][i]['email']+'</td>'+
'<td>'+req['data']['data'][i]['create_time']+'</td>'+

View File

@ -17,16 +17,17 @@
</style>
</head>
<body>
<div class="x-nav">
<!-- <div class="x-nav">
<span class="layui-breadcrumb">
<a href="">首页</a>
<a href="">演示</a>
<a>
<cite>导航元素</cite></a>
<cite>导航元素</cite>
</a>
</span>
<a class="layui-btn layui-btn-small" style="line-height:1.6em;margin-top:3px;float:right" onclick="location.reload()" title="刷新">
<i class="layui-icon layui-icon-refresh" style="line-height:30px"></i></a>
</div>
</div> -->
<div class="layui-fluid">
<div class="layui-row layui-col-space15">
<div class="layui-col-md12">
@ -39,9 +40,16 @@
<div class="layui-inline layui-show-xs-block">
<input class="layui-input" autocomplete="off" placeholder="截止日" name="end" id="e_time">
</div> -->
<div class="layui-inline layui-show-xs-block">
<input type="text" name="username" placeholder="请输入账号ID" autocomplete="off" class="layui-input" id="aan_id">
</div>
{if condition="$aanid == null"}
<div class="layui-inline layui-show-xs-block">
<input type="text" name="username" placeholder="请输入账号ID" autocomplete="off" class="layui-input" id="aan_id">
</div>
{else /}
<div class="layui-inline layui-show-xs-block" style="display: none;">
<input type="text" name="username" placeholder="请输入账号ID" autocomplete="off" class="layui-input" id="aan_id" value="{$aanid}">
</div>
{/if}
<div class="layui-inline layui-show-xs-block">
<input type="text" name="username" placeholder="请输入昵称" autocomplete="off" class="layui-input" id="nickname">
</div>
@ -77,12 +85,14 @@
<th>角色ID</th>
<th>账号ID</th>
<th>昵称</th>
<th>头像</th>
<th>生日</th>
<th>性别</th>
<th>创建时间</th>
<th>最后修改时间</th>
<th>状态</th>
<!-- <th>操作</th></tr> -->
<!-- <th>状态</th> -->
<th>操作</th>
</tr>
</thead>
<tbody id='content'>
@ -92,6 +102,7 @@
<td>{$vo.id}</td>
<td>{$vo.aan_id}</td>
<td>{$vo.nickname}</td>
<td><img src="{$vo.head_pic}" alt=""></td>
<td>{$vo.birthday}</td>
{if condition="$vo.gender == 1"}
<td></td>
@ -108,6 +119,7 @@
{else /}
<span onclick="user_stop(this,'{$vo.id}')" class="layui-btn layui-btn-normal layui-btn-mini" title="启用">已启用</span>
{/if}
<span onclick="xadmin.open('用户行为简报','/member/user_record_briefing?id={$vo.id}','30%','70%')" class="layui-btn layui-btn-sm">用户行为简报</span>
</td>
</tr>
{/volist}
@ -153,6 +165,7 @@
});
// var aan_id;
var page_num;
var laypage;
var all_page = "{$num}";
@ -240,7 +253,7 @@
layer.confirm('确认要停用吗ID为'+ids.toString(),function(index){
//捉到所有被选中的,发异步进行删除
$.ajax({
url:"user_is_del", //请求的url地址
url:"/member/user_is_del", //请求的url地址
dataType:"json", //返回格式为json
async:true,//请求是否异步默认为异步这也是ajax重要特性
data:{"id":ids,'is_del':1}, //参数值
@ -313,6 +326,7 @@
'<td>'+req['data']['data'][i]['id']+'</td>'+
'<td>'+req['data']['data'][i]['aan_id']+'</td>'+
'<td>'+req['data']['data'][i]['nickname']+'</td>'+
'<td><img src="'+req['data']['data'][i]['head_pic']+'" alt=""></td>'+
'<td>'+req['data']['data'][i]['birthday']+'</td>'+
str_s+
'<td>'+req['data']['data'][i]['create_time']+'</td>'+

View File

@ -0,0 +1,80 @@
<!DOCTYPE html>
<html class="x-admin-sm">
<head>
<meta charset="UTF-8">
<title>欢迎页面-X-admin2.2</title>
<meta name="renderer" content="webkit">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width,user-scalable=yes, minimum-scale=0.4, initial-scale=0.8,target-densitydpi=low-dpi" />
<link rel="stylesheet" href="/x_admin/css/font.css">
<link rel="stylesheet" href="/x_admin/css/xadmin.css">
<script src="/x_admin/lib/layui/layui.js" charset="utf-8"></script>
<script type="text/javascript" src="/x_admin/js/xadmin.js"></script>
<style>
/* th{
min-width:30px;
} */
</style>
</head>
<body>
<!-- <div class="x-nav">
<span class="layui-breadcrumb">
<a href="">首页</a>
<a href="">演示</a>
<a>
<cite>导航元素</cite>
</a>
</span>
<a class="layui-btn layui-btn-small" style="line-height:1.6em;margin-top:3px;float:right" onclick="location.reload()" title="刷新">
<i class="layui-icon layui-icon-refresh" style="line-height:30px"></i></a>
</div> -->
<div class="layui-fluid">
<div class="layui-row layui-col-space15">
<div class="layui-col-md12">
<div class="layui-card">
<div class="layui-card-body layui-table-body layui-table-main">
<table class="layui-table layui-form">
<thead>
<tr>
<th>项目</th>
<th>测量次数</th>
<th>最后一次测量时间</th>
</tr>
</thead>
<tbody id='content'>
{volist name="result" id="vo"}
<tr>
<td>{$vo.name}</td>
<td>{$vo.num}</td>
<td>{$vo.time}</td>
</tr>
{/volist}
</tbody>
</table>
</div>
<div class="layui-card-body ">
<div id="page" style="text-align: center;">
</div>
</div>
</div>
</div>
</div>
</div>
</body>
<script>
//加载提示开启
function load() {
var index = layer.load(1, {
shade: [0.1, '#fff'] //0.1透明度的白色背景
});
}
// 关闭加载提示
function c_load() {
layer.close(layer.index)
}
</script>
</html>

View File

@ -30,7 +30,10 @@ Route::any('/admin/welcome', 'admin/index/welcome');
// APP账号角色管理
Route::any('/member/member_list', 'admin/member/member_list');
Route::any('/member/member_is_del', 'admin/member/member_is_del');
Route::any('/member/user_list', 'admin/member/user_list');
Route::any('/member/user_record_briefing', 'admin/member/user_record_briefing');
Route::any('/member/user_is_del', 'admin/member/user_is_del');
// 卡片管理
Route::any('/card/index', 'admin/card/index');