SchoolPhysicalExamination/application/NewReedaw/controller/app/Role.php

853 lines
39 KiB
PHP
Raw Normal View History

2025-10-11 18:11:41 +08:00
<?php
namespace app\NewReedaw\controller\app;
use think\Db;
2026-03-06 18:02:49 +08:00
use app\NewReedaw\controller\app\Login;
use app\NewReedaw\controller\app\Kitchenscale;
2025-10-11 18:11:41 +08:00
class Role extends Base{
protected $role_db_name = [
'zhanghao'=>'app_account_number',
'juese'=>'app_user_data',
2026-03-06 18:02:49 +08:00
'quyu_card'=>'admin_estimate',
'cfc_user'=>'app_user_data'
2025-10-11 18:11:41 +08:00
];
protected $identity_list = ['P0'=>'陌生人','P1'=>'爸爸','P2'=>'妈妈','P3'=>'大宝','P4'=>'二宝','P5'=>'三宝','P6'=>'四宝','P7'=>'爷爷','P8'=>'奶奶'];
protected $grade_list = [
['id'=>'nothing','name'=>'无'],
['id'=>'grade_s_1','name'=>'小学一年级'],
['id'=>'grade_s_2','name'=>'小学二年级'],
['id'=>'grade_s_3','name'=>'小学三年级'],
['id'=>'grade_s_4','name'=>'小学四年级'],
['id'=>'grade_s_5','name'=>'小学五年级'],
['id'=>'grade_s_6','name'=>'小学六年级'],
['id'=>'grade_m_1','name'=>'初中一年级'],
['id'=>'grade_m_2','name'=>'初中二年级'],
['id'=>'grade_m_3','name'=>'初中三年级'],
['id'=>'grade_h_1','name'=>'高中一年级'],
['id'=>'grade_h_2','name'=>'高中二年级'],
['id'=>'grade_h_3','name'=>'高中三年级'],
['id'=>'grade_u_12','name'=>'大学一、二年级'],
['id'=>'grade_u_34','name'=>'大学三、四年级']
];
protected $grade_list2 = [
'nothing' => '无',
'grade_s_1' => '小学一年级',
'grade_s_2' => '小学二年级',
'grade_s_3' => '小学三年级',
'grade_s_4' => '小学四年级',
'grade_s_5' => '小学五年级',
'grade_s_6' => '小学六年级',
'grade_m_1' => '初中一年级',
'grade_m_2' => '初中二年级',
'grade_m_3' => '初中三年级',
'grade_h_1' => '高中一年级',
'grade_h_2' => '高中二年级',
'grade_h_3' => '高中三年级',
'grade_u_12' => '大学一、二年级',
'grade_u_34' => '大学三、四年级'
];
// 阶段性称谓
protected $stage_appellation = [
['min'=>'0','max'=>'3','value'=>'婴儿'],
['min'=>'3','max'=>'16','value'=>'儿童'],
['min'=>'16','max'=>'500','value'=>'成人']
];
// 加 bcadd(,,20)
// 减 bcsub(,,20)
// 乘 bcmul(,,20)
// 除 bcdiv(,,20)
// 测试token=>'caadd1be045a65f30b92aa805f1de54a'
################################################################接口################################################################
################################################################接口################################################################
################################################################接口################################################################
2026-03-06 18:02:49 +08:00
// 获取账号下信息
public function get_my_account_msg(){
$data = input('post.');
try {
if(!array_key_exists('token', $data)){
return $this->msg(10001);
}
if($data['token'] == ''){
return $this->msg(-2,'特殊状态',[]);
}
if(!$this->verify_data_is_ok($data['token'],'str')){
return $this->msg(10005);
}
$return_data = $this->get_my_account_msg_action($data);
// 成功
$this->record_api_log($data, null, $return_data);
return $return_data;
} catch (\Exception $e) {
// 捕获异常
$logContent["flie"] = $e->getFile();
$logContent["line"] = $e->getLine();
$logContent['all_content'] = "异常信息:\n";
$logContent['all_content'] .= "消息: " . $e->getMessage() . "\n";
$logContent['all_content'] .= "代码: " . $e->getCode() . "\n";
$logContent['all_content'] .= "文件: " . $e->getFile() . "\n";
$logContent['all_content'] .= "行号: " . $e->getLine() . "\n";
$logContent['all_content'] .= "跟踪信息:\n" . $e->getTraceAsString() . "\n";
$this->record_api_log($data, $logContent, null);
return $this->msg(99999);
}
}
// 邮箱/手机绑定
public function update_my_account_msg(){
$data = input('post.');
try {
if(!array_key_exists('data', $data) || !array_key_exists('token', $data) || !array_key_exists('code', $data)){
return $this->msg(10001);
}
if(!$this->verify_data_is_ok($data['token'],'str')){
return $this->msg(10005);
}
if(!$this->verify_data_is_ok($data['code'],'intnum')){
return $this->msg(10005);
}
return $this->update_my_account_msg_action($data);
} catch (\Exception $e) {
// 捕获异常
$logContent["flie"] = $e->getFile();
$logContent["line"] = $e->getLine();
$logContent['all_content'] = "异常信息:\n";
$logContent['all_content'] .= "消息: " . $e->getMessage() . "\n";
$logContent['all_content'] .= "代码: " . $e->getCode() . "\n";
$logContent['all_content'] .= "文件: " . $e->getFile() . "\n";
$logContent['all_content'] .= "行号: " . $e->getLine() . "\n";
$logContent['all_content'] .= "跟踪信息:\n" . $e->getTraceAsString() . "\n";
$this->record_api_log($data, $logContent, null);
return $this->msg(99999);
}
}
// 修改密码
public function update_my_password(){
$data = input('post.');
try {
if(!array_key_exists('password', $data) || !array_key_exists('c_password', $data) || !array_key_exists('token', $data)){
return $this->msg(10001);
}
if(!$this->verify_data_is_ok($data['token'],'str')){
return $this->msg(10005);
}
if(!$this->verify_data_is_ok($data['password'],'str')){
return $this->msg(10005);
}
if(!$this->verify_data_is_ok($data['c_password'],'str')){
return $this->msg(10005);
}
$return_data = $this->update_my_password_action($data);
// 成功
$this->record_api_log($data, null, $return_data);
return $return_data;
} catch (\Exception $e) {
// 捕获异常
$logContent["flie"] = $e->getFile();
$logContent["line"] = $e->getLine();
$logContent['all_content'] = "异常信息:\n";
$logContent['all_content'] .= "消息: " . $e->getMessage() . "\n";
$logContent['all_content'] .= "代码: " . $e->getCode() . "\n";
$logContent['all_content'] .= "文件: " . $e->getFile() . "\n";
$logContent['all_content'] .= "行号: " . $e->getLine() . "\n";
$logContent['all_content'] .= "跟踪信息:\n" . $e->getTraceAsString() . "\n";
$this->record_api_log($data, $logContent, null);
return $this->msg(99999);
}
}
2026-03-12 07:40:45 +08:00
// 修改账号信息
2026-03-06 18:02:49 +08:00
public function set_my_account_msg(){
$data = input('post.');
try {
if(!array_key_exists('weight', $data) || !array_key_exists('height', $data) || !array_key_exists('birthday', $data) || !array_key_exists('gender', $data) || !array_key_exists('activity_level', $data) || !array_key_exists('token', $data)){
return $this->msg(10001);
}
if(!$this->verify_data_is_ok($data['token'],'str')){
return $this->msg(10005);
}
if(!$this->verify_data_is_ok($data['weight'],'num')){
return $this->msg(10005);
}
if(!$this->verify_data_is_ok($data['height'],'num')){
return $this->msg(10005);
}
if(!$this->verify_data_is_ok($data['birthday'],'datetime')){
return $this->msg(10005);
}
if(!$this->verify_data_is_ok($data['gender'],'num')){
return $this->msg(10005);
}
if(!$this->verify_data_is_ok($data['activity_level'],'num')){
return $this->msg(10005);
}
$return_data = $this->set_my_account_msg_action($data);
// 成功
$this->record_api_log($data, null, $return_data);
return $return_data;
} catch (\Exception $e) {
// 捕获异常
$logContent["flie"] = $e->getFile();
$logContent["line"] = $e->getLine();
$logContent['all_content'] = "异常信息:\n";
$logContent['all_content'] .= "消息: " . $e->getMessage() . "\n";
$logContent['all_content'] .= "代码: " . $e->getCode() . "\n";
$logContent['all_content'] .= "文件: " . $e->getFile() . "\n";
$logContent['all_content'] .= "行号: " . $e->getLine() . "\n";
$logContent['all_content'] .= "跟踪信息:\n" . $e->getTraceAsString() . "\n";
$this->record_api_log($data, $logContent, null);
return $this->msg(99999);
}
}
2025-10-11 18:11:41 +08:00
// 添加角色
public function add_member(){
2026-03-06 18:02:49 +08:00
$data = input('post.');
2025-10-11 18:11:41 +08:00
try {
// 你的业务逻辑
2026-03-06 18:02:49 +08:00
2026-03-16 19:29:36 +08:00
if(!array_key_exists('token', $data) || !array_key_exists('nickname', $data) || !array_key_exists('birthday', $data) || !array_key_exists('gender', $data) || !array_key_exists('height', $data) || !array_key_exists('weight', $data) || !array_key_exists('activity_level', $data)){
2025-10-11 18:11:41 +08:00
return $this->msg(10001);
}
2026-03-16 19:29:36 +08:00
if(!$this->verify_data_is_ok($data['activity_level'],'num')){
return $this->msg(10005,'activity_level type error');
2025-10-11 18:11:41 +08:00
}
if(!$this->verify_data_is_ok($data['token'],'str')){
return $this->msg(10005,'token type error');
}
if(!$this->verify_data_is_ok($data['birthday'],'datetime')){
return $this->msg(10005,'birthday type error');
}
if(!$this->verify_data_is_ok($data['gender'],'intnum')){
return $this->msg(10005,'gender type error');
}
if(!$this->verify_data_is_ok($data['height'],'num')){
return $this->msg(10005,'height type error');
}
if(!$this->verify_data_is_ok($data['weight'],'num')){
return $this->msg(10005,'weight type error');
}
return $this->add_member_action($data);
} catch (\Exception $e) {
// 捕获异常
$logContent["flie"] = $e->getFile();
$logContent["line"] = $e->getLine();
$logContent['all_content'] = "异常信息:\n";
$logContent['all_content'] .= "消息: " . $e->getMessage() . "\n";
$logContent['all_content'] .= "代码: " . $e->getCode() . "\n";
$logContent['all_content'] .= "文件: " . $e->getFile() . "\n";
$logContent['all_content'] .= "行号: " . $e->getLine() . "\n";
$logContent['all_content'] .= "跟踪信息:\n" . $e->getTraceAsString() . "\n";
$this->record_api_log($data, $logContent, null);
return $this->msg(99999);
}
}
2025-10-13 03:35:56 +08:00
// 更新角色
2025-10-11 18:11:41 +08:00
public function update_member(){
2026-03-06 18:02:49 +08:00
$data = input('post.');
2025-10-11 18:11:41 +08:00
try {
// 你的业务逻辑
2026-03-06 18:02:49 +08:00
2026-03-16 19:29:36 +08:00
if(!array_key_exists('token', $data) || !array_key_exists('id', $data) || !array_key_exists('nickname', $data) || !array_key_exists('birthday', $data) || !array_key_exists('gender', $data) || !array_key_exists('height', $data) || !array_key_exists('weight', $data) || !array_key_exists('activity_level', $data)){
2025-10-11 18:11:41 +08:00
return $this->msg(10001);
}
2026-03-16 19:29:36 +08:00
if(!$this->verify_data_is_ok($data['activity_level'],'num')){
return $this->msg(10005,'activity_level type error');
2025-10-11 18:11:41 +08:00
}
if(!$this->verify_data_is_ok($data['token'],'str')){
return $this->msg(10005,'token type error');
}
2025-11-21 19:13:01 +08:00
if(!$this->verify_data_is_ok($data['id'],'intnum')){
return $this->msg(10005,'id type error');
2025-10-11 18:11:41 +08:00
}
if(!$this->verify_data_is_ok($data['birthday'],'datetime')){
return $this->msg(10005,'birthday type error');
}
if(!$this->verify_data_is_ok($data['gender'],'intnum')){
return $this->msg(10005,'gender type error');
}
if(!$this->verify_data_is_ok($data['height'],'num')){
return $this->msg(10005,'height type error');
}
if(!$this->verify_data_is_ok($data['weight'],'num')){
return $this->msg(10005,'weight type error');
}
return $this->update_member_action($data);
} catch (\Exception $e) {
// 捕获异常
$logContent["flie"] = $e->getFile();
$logContent["line"] = $e->getLine();
$logContent['all_content'] = "异常信息:\n";
$logContent['all_content'] .= "消息: " . $e->getMessage() . "\n";
$logContent['all_content'] .= "代码: " . $e->getCode() . "\n";
$logContent['all_content'] .= "文件: " . $e->getFile() . "\n";
$logContent['all_content'] .= "行号: " . $e->getLine() . "\n";
$logContent['all_content'] .= "跟踪信息:\n" . $e->getTraceAsString() . "\n";
$this->record_api_log($data, $logContent, null);
return $this->msg(99999);
}
}
2025-10-13 03:35:56 +08:00
// 获取角色列表
2025-10-11 18:11:41 +08:00
public function role_list(){
2026-03-06 18:02:49 +08:00
$data = input('post.');
2025-10-11 18:11:41 +08:00
try {
// 你的业务逻辑
2026-03-06 18:02:49 +08:00
2025-10-11 18:11:41 +08:00
if(!array_key_exists('token', $data)){
return $this->msg(10001);
}
if(!$this->verify_data_is_ok($data['token'],'str')){
return $this->msg(10005,'token type error');
}
return $this->role_list_action($data);
} catch (\Exception $e) {
// 捕获异常
$logContent["flie"] = $e->getFile();
$logContent["line"] = $e->getLine();
$logContent['all_content'] = "异常信息:\n";
$logContent['all_content'] .= "消息: " . $e->getMessage() . "\n";
$logContent['all_content'] .= "代码: " . $e->getCode() . "\n";
$logContent['all_content'] .= "文件: " . $e->getFile() . "\n";
$logContent['all_content'] .= "行号: " . $e->getLine() . "\n";
$logContent['all_content'] .= "跟踪信息:\n" . $e->getTraceAsString() . "\n";
$this->record_api_log($data, $logContent, null);
return $this->msg(99999);
}
}
2026-03-06 18:02:49 +08:00
// 修改昵称
public function update_my_nickname(){
$data = input('post.');
try {
if(!array_key_exists('nickname', $data) || !array_key_exists('token', $data)){
return $this->msg(10001);
}
if(!$this->verify_data_is_ok($data['token'],'str')){
return $this->msg(10005);
}
if(!$this->verify_data_is_ok($data['nickname'],'str')){
return $this->msg(10005);
}
$return_data = $this->update_my_nickname_action($data);
// 成功
$this->record_api_log($data, null, $return_data);
return $return_data;
} catch (\Exception $e) {
// 捕获异常
$logContent["flie"] = $e->getFile();
$logContent["line"] = $e->getLine();
$logContent['all_content'] = "异常信息:\n";
$logContent['all_content'] .= "消息: " . $e->getMessage() . "\n";
$logContent['all_content'] .= "代码: " . $e->getCode() . "\n";
$logContent['all_content'] .= "文件: " . $e->getFile() . "\n";
$logContent['all_content'] .= "行号: " . $e->getLine() . "\n";
$logContent['all_content'] .= "跟踪信息:\n" . $e->getTraceAsString() . "\n";
$this->record_api_log($data, $logContent, null);
return $this->msg(99999);
}
}
// 获取指定用户详细信息
public function get_user_data_information(){
$data = input('post.');
2026-03-12 07:40:45 +08:00
try {
2026-03-06 18:02:49 +08:00
if(!array_key_exists('token', $data)){
return $this->msg(10001);
}
if(!array_key_exists('aud_id', $data)){
return $this->msg(10001);
}
if(!$this->verify_data_is_ok($data['aud_id'],'intnum')){
return $this->msg(10005);
}
if(!$this->verify_data_is_ok($data['token'],'str')){
return $this->msg(10005);
}
return $this->get_user_data_information_action($data);
2026-03-12 07:40:45 +08:00
} catch (\Exception $e) {
// 捕获异常
$logContent["flie"] = $e->getFile();
$logContent["line"] = $e->getLine();
$logContent['all_content'] = "异常信息:\n";
$logContent['all_content'] .= "消息: " . $e->getMessage() . "\n";
$logContent['all_content'] .= "代码: " . $e->getCode() . "\n";
$logContent['all_content'] .= "文件: " . $e->getFile() . "\n";
$logContent['all_content'] .= "行号: " . $e->getLine() . "\n";
$logContent['all_content'] .= "跟踪信息:\n" . $e->getTraceAsString() . "\n";
$this->record_api_log($data, $logContent, null);
return $this->msg(99999);
}
}
// 删除角色
public function del_member(){
$data = input('post.');
try {
if(!array_key_exists('aud_id', $data) || !array_key_exists('token', $data)){
return $this->msg(10001);
}
if(!$this->verify_data_is_ok($data['token'],'str')){
return $this->msg(10005);
}
if(!$this->verify_data_is_ok($data['aud_id'],'intnum')){
return $this->msg(10005);
}
return $this->del_member_action($data);
} catch (\Exception $e) {
// 捕获异常
$logContent["flie"] = $e->getFile();
$logContent["line"] = $e->getLine();
$logContent['all_content'] = "异常信息:\n";
$logContent['all_content'] .= "消息: " . $e->getMessage() . "\n";
$logContent['all_content'] .= "代码: " . $e->getCode() . "\n";
$logContent['all_content'] .= "文件: " . $e->getFile() . "\n";
$logContent['all_content'] .= "行号: " . $e->getLine() . "\n";
$logContent['all_content'] .= "跟踪信息:\n" . $e->getTraceAsString() . "\n";
$this->record_api_log($data, $logContent, null);
return $this->msg(99999);
}
2026-03-06 18:02:49 +08:00
}
2025-10-11 18:11:41 +08:00
################################################################action################################################################
################################################################action################################################################
2026-03-06 18:02:49 +08:00
public function get_my_account_msg_action($data){
$result = Db::table($this->role_db_name['zhanghao'])->where(['token'=>$data['token'],'is_del'=>0])->find();
$cfc = Db::connect('cfc_db');
$cfc_user = $cfc->table($this->role_db_name['cfc_user'])
->where(['token'=>$data['token']])
->find(); // 然后获取结果
//
if($result){
$return_data = [
'my_tel'=>$result['tel'],
'my_email'=>$result['email'],
'create_time'=>$result['create_time'],
'token'=>$result['token'],
'nickname'=>$result['nickname'],
'head_pic'=>$result['head_pic'],
];
if($cfc_user){
// dump($result);
$return_data['weight'] = $cfc_user['weight'];
$return_data['height'] = $cfc_user['height'];
$return_data['birthday'] = $cfc_user['birthday'];
$return_data['gender'] = $cfc_user['gender'];
$return_data['activity_level'] = $cfc_user['activity_level'];
}else{
$return_data['weight'] = 0;
$return_data['height'] = 0;
$return_data['birthday'] = '';
$return_data['gender'] = '';
$return_data['activity_level'] = '';
}
return $this->msg($return_data);
}else{
return $this->msg(10002);
}
}
public function update_my_account_msg_action($data){
$login_action = new Login();
$validate_result = $login_action->check_code($data['data'],$data['code']);
if($validate_result !== true){
return $this->msg(10001,$validate_result);
}
$montage_data = $this->is_tel_email($data['data']);
if($montage_data == false){
return $this->msg(10005);
}
$result = Db::table($this->role_db_name['zhanghao'])->where(['token'=>$data['token'],'is_del'=>0])->update([
$montage_data=>$data['data'],
'update_time'=>date('Y-m-d H:i:s')
]);
if($result){
return $this->msg([]);
}else{
return $this->msg(10002);
}
}
public function update_my_password_action($data){
if($data['password'] != $data['c_password']){
return $this->msg(10003,'两次密码不一致');
}
if($data['password'] == ''){
return $this->msg(10003,'密码不能为空');
}
$result = Db::table($this->role_db_name['zhanghao'])->where(['token'=>$data['token'],'is_del'=>0])->update([
'password'=>$data['password'],
'update_time'=>date('Y-m-d H:i:s')
]);
if($result){
return $this->msg([]);
}else{
return $this->msg(10002);
}
}
public function set_my_account_msg_action($data){
$cfc = Db::connect('cfc_db');
$user = Db::table($this->role_db_name['zhanghao'])->where(['token'=>$data['token'],'is_del'=>0])->find();
if($user){
$cfc_user = $cfc->table($this->role_db_name['cfc_user'])
->where(['token'=>$data['token']])
->find(); // 然后获取结果
if($cfc_user){
$cfc_user = $cfc->table($this->role_db_name['cfc_user'])
->where(['token'=>$data['token']])
->update([
'weight'=>$data['weight'],
'height'=>$data['height'],
'birthday'=>$data['birthday'],
'gender'=>$data['gender'],
'activity_level'=>$data['activity_level'],
]);
}else{
$add_data = [
'token'=>$data['token'],
'nickname'=>$user['nickname'],
'gender'=>$data['gender'],
'height'=>$data['height'],
'weight'=>$data['weight'],
'birthday'=>$data['birthday'],
'activity_level'=>$data['activity_level'],
];
$user_age = $this->calculate_age($data['birthday']);
if($data['gender'] == 2){
if($user_age <= 18){
$data['head_pic'] = "https://tc.pcxbc.com/kitchenscale_all/woman1.png";
}else if($user_age <= 39 && $user_age > 18){
$data['head_pic'] = "https://tc.pcxbc.com/kitchenscale_all/woman2.png";
}else if($user_age <= 59 && $user_age > 39){
$data['head_pic'] = "https://tc.pcxbc.com/kitchenscale_all/woman3.png";
}else if($user_age >= 60){
$data['head_pic'] = "https://tc.pcxbc.com/kitchenscale_all/woman4.png";
}
}else{
if($user_age <= 18){
$data['head_pic'] = "https://tc.pcxbc.com/kitchenscale_all/man1.png";
}else if($user_age <= 39 && $user_age > 18){
$data['head_pic'] = "https://tc.pcxbc.com/kitchenscale_all/man2.png";
}else if($user_age <= 59 && $user_age > 39){
$data['head_pic'] = "https://tc.pcxbc.com/kitchenscale_all/man3.png";
}else if($user_age >= 60){
$data['head_pic'] = "https://tc.pcxbc.com/kitchenscale_all/man4.png";
}
}
$cfc_user = $cfc->table($this->role_db_name['cfc_user'])->insert($add_data);
}
}else{
return $this->msg(10003);
}
}
2025-10-11 18:11:41 +08:00
public function add_member_action($data){
$aan_id = Db::table($this->role_db_name['zhanghao'])->where(['token'=>$data['token']])->field('id,token')->find();
if(!$aan_id){
return $this->msg(10002,'账号信息错误');
}
$parameter['aan_id'] = $aan_id['id'];
$parameter['nickname'] = $data['nickname'];
$parameter['birthday'] = $data['birthday'];
$parameter['gender'] = $data['gender'];
$parameter['height'] = $data['height'];
$parameter['weight'] = $data['weight'];
$parameter['head_pic'] = $data['gender'] == 2?'http://tc.pcxbc.com/tsf/2.png':'http://tc.pcxbc.com/tsf/1.png';
$parameter['card_order'] = '';
$parameter['create_time'] = date('Y-m-d H:i:s');
$parameter['last_update_time'] = $parameter['create_time'];
2026-03-16 19:29:36 +08:00
$parameter['activity_level'] = $data['activity_level'];
2025-10-11 18:11:41 +08:00
$is_nickname_ok = Db::table($this->role_db_name['juese'])->where(['nickname'=>$parameter['nickname'],'aan_id'=>$parameter['aan_id'],'is_del'=>0])->count();
if($is_nickname_ok>0){
return $this->msg(10002,'该角色已存在');
}
2026-03-16 19:29:36 +08:00
// if($parameter['measure_model'] == 1){
// if(!array_key_exists('grade',$data) || !array_key_exists('identity_id',$data) || !array_key_exists('address',$data)){
// return $this->msg(10001);
// }
// if(!array_key_exists($data['identity_id'],$this->identity_lis3t)){
// return $this->msg(10005,'身份信息错误');
// }
// if(!array_key_exists($data['grade'],$this->grade_list2)){
// return $this->msg(10005,'年级信息错误');
// }
// $parameter['grade'] = $data['grade'];
// $parameter['identity_id'] = $data['identity_id'];
// $parameter['identity_name'] = $this->identity_list[$data['identity_id']];
// $parameter['address'] = $data['address'];
// $address_data = Db::table($this->role_db_name['quyu_card'])->where(['province'=>explode(',',$parameter['address'])[0],'is_del'=>0])->field('id,recommend_cards')->find();
// $parameter['card_order'] = $address_data['recommend_cards'];
// }else{
// $parameter['grade'] = 'nothing';
// $parameter['identity_id'] = 'P0';
// $parameter['identity_name'] = '陌生人';
// $parameter['address'] = '';
// }
// if($parameter['identity_id'] != 'P0'){
// $result = Db::table($this->role_db_name['juese'])->where(['identity_id'=>$parameter['identity_id'],'aan_id'=>$parameter['aan_id'],'is_del'=>0])->count();
// if($result>0){
// return $this->msg(10005,'该身份已存在');
// }
// }
$return_result = Db::table($this->role_db_name['juese'])->insertGetId($parameter);
2025-10-11 18:11:41 +08:00
if($return_result){
2026-03-16 19:29:36 +08:00
return $this->msg(['aud_id'=>$return_result]);
2025-10-11 18:11:41 +08:00
}else{
return $this->msg(10002);
}
}
public function update_member_action($data){
$aan_id = Db::table($this->role_db_name['zhanghao'])->where(['token'=>$data['token']])->field('id,token')->find();
if(!$aan_id){
return $this->msg(10002,'账号信息错误');
}
// $parameter['aan_id'] = $aan_id['id'];
$parameter['nickname'] = $data['nickname'];
$parameter['birthday'] = $data['birthday'];
$parameter['gender'] = $data['gender'];
$parameter['height'] = $data['height'];
$parameter['weight'] = $data['weight'];
$parameter['head_pic'] = $data['gender'] == 2?'http://tc.pcxbc.com/tsf/2.png':'http://tc.pcxbc.com/tsf/1.png';
$parameter['last_update_time'] = date('Y-m-d H:i:s');
2026-03-16 19:29:36 +08:00
$parameter['activity_level'] = $data['activity_level'];
// if($parameter['measure_model'] == 1){
// if(!array_key_exists('grade',$data) || !array_key_exists('identity_id',$data) || !array_key_exists('address',$data)){
// return $this->msg(10001);
// }
// if(!array_key_exists($data['identity_id'],$this->identity_list)){
// return $this->msg(10005,'身份信息错误');
// }
// if(!array_key_exists($data['grade'],$this->grade_list2)){
// return $this->msg(10005,'年级信息错误');
// }
// $parameter['grade'] = $data['grade'];
// $parameter['identity_id'] = $data['identity_id'];
// $parameter['identity_name'] = $this->identity_list[$data['identity_id']];
// $parameter['address'] = $data['address'];
// if($parameter['identity_id'] != 'P0'){
// $result = Db::table($this->role_db_name['juese'])->where(['identity_id'=>$parameter['identity_id'],'aan_id'=>$aan_id['id'],'is_del'=>0])->count();
// if($result>0){
// return $this->msg(10005,'该身份已存在');
// }
// }
// $address_data = Db::table($this->role_db_name['quyu_card'])->where(['province'=>explode(',',$parameter['address'])[0],'is_del'=>0])->field('id,recommend_cards')->find();
// $parameter['card_order'] = $address_data['recommend_cards'];
// }
2025-10-11 18:11:41 +08:00
2025-11-21 19:13:01 +08:00
$return_result = Db::table($this->role_db_name['juese'])->where(['id'=>$data['id']])->update($parameter);
2025-10-11 18:11:41 +08:00
if($return_result){
return $this->msg([]);
}else{
return $this->msg(10002);
}
}
public function role_list_action($data){
if(array_key_exists('type', $data)){
if(!$this->verify_data_is_ok($data['type'],'intnum')){
return $this->msg(10005,'type type error');
}
}else{
$data['type'] = 1;
}
$user = Db::table($this->role_db_name['zhanghao'])->where(['token'=>$data['token']])->field('id,token')->find();
if(!$user){
return $this->msg(10002,'账号信息错误');
}
$result = Db::table($this->role_db_name['juese'])
->where(['aan_id'=>$user['id'],'is_del'=>0])
->field('id,aan_id,nickname,birthday,gender,card_order,target_weight,initial_weight,initial_date,grade,head_pic,weight,height,identity_name,address,identity_id,measure_model')
->select();
$temporary_data = [];
if($data['type'] == 1){
for ($i=0; $i < count($result); $i++) {
array_push($temporary_data,[
'id'=>$result[$i]['id'],
'nickname'=>$result[$i]['nickname'],
'identity_name'=>$result[$i]['identity_name'],
'identity_id'=>$result[$i]['identity_id'],
]);
}
}else{
for ($i=0; $i < count($result); $i++) {
$result[$i]['age'] = $this->calculate_age($result[$i]['birthday']);
// 添加阶段称谓、婴儿、儿童、成人
foreach ($this->stage_appellation as $key => $value) {
if($result[$i]['age'] >= $value['min'] && $result[$i]['age'] < $value['max']){
$result[$i]['stage'] = $value['value'];
}
}
}
$temporary_data = $result;
}
return $this->msg($temporary_data);
}
2026-03-06 18:02:49 +08:00
public function update_my_nickname_action($data){
$result = Db::table($this->role_db_name['zhanghao'])->where(['token'=>$data['token'],'is_del'=>0])->update([
'nickname'=>$data['nickname'],
'update_time'=>date('Y-m-d H:i:s')
]);
if($result){
return $this->msg([]);
}else{
return $this->msg(10002);
}
}
public function get_user_data_information_action($data){
// 获取账号下信息以及用户信息
$zhanghao_data = Db::table($this->role_db_name['zhanghao'])->where(['token'=>$data['token']])->field('id,token,nickname,head_pic,tel,email')->find();
if(!$zhanghao_data){
return $this->msg(10004);
}
// 获取账号下信息以及用户信息start
$user_all_data['aud_id'] = '';
$user_all_data['token'] = $zhanghao_data['token'];
$user_all_data['nickname'] = '';
$user_all_data['head_pic'] = $zhanghao_data['head_pic'];
$user_all_data['gender'] = '';
$user_all_data['age'] = '';
$user_all_data['height'] = '';
$user_all_data['weight'] = '';
$user_all_data['set_kcal'] = '';
$user_all_data['is_use_set_kcal'] = '';
$user_all_data['tel'] = $zhanghao_data['tel'];
$user_all_data['email'] = $zhanghao_data['email'];
$user_all_data['aan_id'] = $zhanghao_data['id'];
$user_all_data['card_order'] = [];
$user_all_data['target_weight'] = 0;
$user_all_data['initial_weight'] = 0;
$user_all_data['initial_date'] = 0;
$user_all_data['address'] = '';
$user_all_data['identity_id'] = 'P0';
$user_all_data['measure_model'] = 1;
$user_all_data['head_data'] = 0;
$user_all_data['stage'] = 0;
$user_account = Db::table($this->role_db_name['juese'])
->where(["id"=>$data['aud_id']])
// ->field('id as aud_id,nickname,head_pic,gender,height,weight,birthday,set_kcal,is_use_set_kcal,activity_level')
->field('id as aud_id,nickname,head_pic,gender,height,weight,birthday,card_order,target_weight,initial_weight,initial_date,address,identity_id,measure_model,head_data,set_kcal,is_use_set_kcal,activity_level')
->find();
if($user_account){
if($user_account['set_kcal'] == '.00'){
$user_account['set_kcal'] = 0;
}
$user_all_data['aud_id'] = $user_account['aud_id'];
$user_all_data['nickname'] = $user_account['nickname'];
$user_all_data['gender'] = $user_account['gender'];
$user_all_data['age'] = $this->calculate_age($user_account['birthday']);
$user_all_data['height'] = $user_account['height'];
$user_all_data['weight'] = $user_account['weight'];
$user_all_data['set_kcal'] = $user_account['set_kcal'];
$user_all_data['is_use_set_kcal'] = $user_account['is_use_set_kcal'];
$user_all_data['birthday'] = $user_account['birthday'];
$user_all_data['activity_level'] = $user_account['activity_level'];
$user_all_data['card_order'] = explode(',',$user_account['card_order']);
$user_all_data['target_weight'] = $user_account['target_weight'];
$user_all_data['initial_weight'] = $user_account['initial_weight'];
$user_all_data['initial_date'] = $user_account['initial_date'];
$user_all_data['address'] = $user_account['address'];
$user_all_data['identity_id'] = $user_account['identity_id'];
$user_all_data['measure_model'] = $user_account['measure_model'];
$user_all_data['head_data'] = $user_account['head_data'];
foreach ($this->stage_appellation as $key => $value) {
if($user_all_data['age'] >= $value['min'] && $user_all_data['age'] < $value['max']){
$user_all_data['stage'] = $value['value'];
}
}
// if($user_all_data['gender'] == 2){
// if($user_all_data['age'] <= 18){
// $user_all_data['head_pic'] = "https://tc.pcxbc.com/kitchenscale_all/woman1.png";
// }else if($user_all_data['age'] <= 39 && $user_all_data['age'] > 18){
// $user_all_data['head_pic'] = "https://tc.pcxbc.com/kitchenscale_all/woman2.png";
// }else if($user_all_data['age'] <= 59 && $user_all_data['age'] > 39){
// $user_all_data['head_pic'] = "https://tc.pcxbc.com/kitchenscale_all/woman3.png";
// }else if($user_all_data['age'] >= 60){
// $user_all_data['head_pic'] = "https://tc.pcxbc.com/kitchenscale_all/woman4.png";
// }
// }else{
// if($user_all_data['age'] <= 18){
// $user_all_data['head_pic'] = "https://tc.pcxbc.com/kitchenscale_all/man1.png";
// }else if($user_all_data['age'] <= 39 && $user_all_data['age'] > 18){
// $user_all_data['head_pic'] = "https://tc.pcxbc.com/kitchenscale_all/man2.png";
// }else if($user_all_data['age'] <= 59 && $user_all_data['age'] > 39){
// $user_all_data['head_pic'] = "https://tc.pcxbc.com/kitchenscale_all/man3.png";
// }else if($user_all_data['age'] >= 60){
// $user_all_data['head_pic'] = "https://tc.pcxbc.com/kitchenscale_all/man4.png";
// }
// }
$kitchenscale = NEW Kitchenscale;
$user_all_data['food_count'] = $kitchenscale->get_countfoot_content_action(['token'=>$data['token'],'aud_id'=>$user_all_data['aud_id'],'time'=>date('Y-m-d')]);
$user_all_data['food_count'] = ($user_all_data['food_count']->getData())['data'];
// dump($user_all_data['food_count']);
}else{
$user_account['set_kcal'] = 0;
$user_all_data['aud_id'] = null;
$user_all_data['gender'] = 0;
$user_all_data['age'] = false;
$user_all_data['height'] = null;
$user_all_data['weight'] = null;
$user_all_data['set_kcal'] = 0;
$user_all_data['is_use_set_kcal'] = 0;
$user_all_data['birthday'] = null;
$user_all_data['activity_level'] = null;
$user_all_data['head_pic'] = "https://tc.pcxbc.com/kitchenscale_all/man1.png";
$user_all_data['food_count'] = [];
// $user_all_data['food_count'] = ($user_all_data['food_count']->getData())['data'];
}
return $this->msg($user_all_data);
}
2026-03-12 07:40:45 +08:00
public function del_member_action($data){
// $zh_data = Db::table($this->role_db_name['zhanghao'])->where(['token'=>$data['token'],'is_del'=>0])->field('id,token')->find();
$result = Db::table($this->role_db_name['juese'])->where(['id'=>$data['aud_id']])->update([
'is_del'=>1
]);
if($result){
return $this->msg([]);
}else{
return $this->msg(10002);
}
}
2025-10-11 18:11:41 +08:00
}