2024-04-30 17:39:37 +08:00
< ? php
namespace app\app\controller ;
use think\Controller ;
use think\Db ;
class Vitalcapacity extends Base {
2024-05-27 18:42:33 +08:00
protected $color = [ '无效' => '#FF5656' , '不及格' => '#FF5656' , '及格' => '#FFAB00' , '良好' => '#5AD06D' , '优秀' => '#6492F6' , '牛逼' => '#3967D6' ];
2024-05-28 18:43:48 +08:00
protected $curve_data_format = [ 'one_val' => [ '第一次' , '容积/ml' , '#009DFF' ], 'two_val' => [ '第二次' , '容积/ml' , '#009DFF' ], 'three_val' => [ '第三次' , '容积/ml' , '#009DFF' ], 'average_val' => [ '平均' , '容积/ml' , '#009DFF' ], 'score_val' => [ '分数' , '分/分' , '#009DFF' ],];
2024-05-27 18:42:33 +08:00
protected $standard0 = [ '优秀' , '良好' , '及格' , '不及格' , '无效' ];
protected $standard = [
[ 'min_val' => '90' , 'max_val' => '100' , 'text' => '优秀' , 'color' => '#6492F6' ],
[ 'min_val' => '80' , 'max_val' => '89' , 'text' => '良好' , 'color' => '#5AD06D' ],
2024-06-07 16:49:19 +08:00
[ 'min_val' => '60' , 'max_val' => '79' , 'text' => '及格' , 'color' => '#FFAB00' ],
[ 'min_val' => '10' , 'max_val' => '59' , 'text' => '不及格' , 'color' => '#FF5656' ],
2024-05-27 18:42:33 +08:00
[ 'min_val' => '0' , 'max_val' => '9' , 'text' => '无效' , 'color' => '#FF5656' ],
];
2024-04-30 17:39:37 +08:00
protected $result_end_data_mould = [
'name' => '' ,
'value' => '' ,
'unit' => '' ,
'standard' => '' ,
'color' => '' ,
'list' => []
];
2024-05-27 18:42:33 +08:00
// 加 bcadd(,,20)
// 减 bcsub(,,20)
// 乘 bcmul(,,20)
// 除 bcdiv(,,20)
2024-04-30 17:39:37 +08:00
################################################################接口################################################################
################################################################接口################################################################
################################################################接口################################################################
2024-07-26 18:34:47 +08:00
// 手动数据记录
2024-08-03 17:56:26 +08:00
public function vitalcapacity_save_record_data ( $data = [ 'aud_id' => '89' , 'one' => '1560' , 'two' => '1560' , 'three' => '1560' , 'time' => '2024-07-23' , 'token' => '0dafb98a10995c98b5a33b7d59d986ca' ]){
2024-05-27 18:42:33 +08:00
if ( count ( input ( 'post.' )) > 0 ){
$data = input ( 'post.' );
2024-04-30 17:39:37 +08:00
}
2024-05-27 18:42:33 +08:00
if ( ! array_key_exists ( 'aud_id' , $data ) || ! array_key_exists ( 'time' , $data ) || ! array_key_exists ( 'token' , $data )){
return $this -> msg ( 10001 );
2024-04-30 17:39:37 +08:00
}
2024-05-27 18:42:33 +08:00
if ( $this -> token_time_validate ( $data [ 'token' ]) === false ){
return $this -> msg ( 20001 );
2024-04-30 17:39:37 +08:00
}
2024-05-27 18:42:33 +08:00
unset ( $data [ 'token' ]);
$data [ 'one' ] = $this -> isPositiveNumber ( $data [ 'one' ]) === false ? 0 : $data [ 'one' ];
$data [ 'two' ] = $this -> isPositiveNumber ( $data [ 'one' ]) === false ? 0 : $data [ 'two' ];
$data [ 'three' ] = $this -> isPositiveNumber ( $data [ 'one' ]) === false ? 0 : $data [ 'three' ];
return $this -> vitalcapacity_save_record_data_action ( $data );
2024-04-30 17:39:37 +08:00
}
2024-07-26 18:34:47 +08:00
// 设备数据记录
2024-08-03 17:56:26 +08:00
public function vitalcapacity_save_record_data_device ( $data = [ 'aud_id' => '89' , 'one' => '1500' , 'two' => '1500' , 'three' => '1200' , 'flow' => '88.88' , 'token' => '0dafb98a10995c98b5a33b7d59d986ca' ]){
2024-07-26 18:34:47 +08:00
if ( count ( input ( 'post.' )) > 0 ){
$data = input ( 'post.' );
}
if ( ! array_key_exists ( 'aud_id' , $data ) || ! array_key_exists ( 'flow' , $data ) || ! array_key_exists ( 'token' , $data )){
return $this -> msg ( 10001 );
}
if ( $this -> token_time_validate ( $data [ 'token' ]) === false ){
return $this -> msg ( 20001 );
}
unset ( $data [ 'token' ]);
$data [ 'one' ] = $this -> isPositiveNumber ( $data [ 'one' ]) === false ? 0 : $data [ 'one' ];
$data [ 'two' ] = $this -> isPositiveNumber ( $data [ 'one' ]) === false ? 0 : $data [ 'two' ];
$data [ 'three' ] = $this -> isPositiveNumber ( $data [ 'one' ]) === false ? 0 : $data [ 'three' ];
return $this -> vitalcapacity_save_record_data_action ( $data );
}
2024-05-27 18:42:33 +08:00
// 数据报告
2024-08-03 17:56:26 +08:00
public function vitalcapacity_data_report ( $data = [ 'aud_id' => '89' , 'token' => 'caadd1be045a65f30b92aa805f1de54a' ]){
2024-05-27 18:42:33 +08:00
if ( count ( input ( 'post.' )) > 0 ){
$data = input ( 'post.' );
2024-05-21 18:43:56 +08:00
}
2024-05-27 18:42:33 +08:00
if ( ! array_key_exists ( 'aud_id' , $data ) || ! array_key_exists ( 'token' , $data )){
return $this -> msg ( 10001 );
2024-05-21 18:43:56 +08:00
}
if ( $this -> token_time_validate ( $data [ 'token' ]) === false ){
2024-05-27 18:42:33 +08:00
return $this -> msg ( 20001 );
2024-05-21 18:43:56 +08:00
}
unset ( $data [ 'token' ]);
2024-05-27 18:42:33 +08:00
return $this -> vitalcapacity_data_report_action ( $data );
}
2024-05-28 18:43:48 +08:00
// 曲线
2024-08-03 17:56:26 +08:00
public function vitalcapacity_curve_chart ( $data = [ 'aud_id' => '89' , 'time' => '2024-07-23' , 'token' => 'caadd1be045a65f30b92aa805f1de54a' ]){
2024-05-28 18:43:48 +08:00
if ( count ( input ( 'post.' )) > 0 ){
$data = input ( 'post.' );
}
if ( ! array_key_exists ( 'aud_id' , $data ) || ! array_key_exists ( 'time' , $data ) || ! array_key_exists ( 'token' , $data )){
return $this -> msg ( 10001 );
}
if ( $this -> token_time_validate ( $data [ 'token' ]) === false ){
return $this -> msg ( 20001 );
}
unset ( $data [ 'token' ]);
return $this -> vitalcapacity_curve_chart_action ( $data );
}
2024-05-21 18:43:56 +08:00
2024-05-27 18:42:33 +08:00
################################################################业务################################################################
################################################################vitalcapacity_save_record_data
public function vitalcapacity_save_record_data_action ( $data ){
$temporary_arr [ 'aud_id' ] = $data [ 'aud_id' ];
2024-07-26 18:34:47 +08:00
$temporary_arr [ 'record_time' ] = array_key_exists ( 'time' , $data ) ? $data [ 'time' ] : date ( 'Y-m-d H:i:s' );
2024-05-27 18:42:33 +08:00
$temporary_arr [ 'one' ] = $data [ 'one' ];
$temporary_arr [ 'two' ] = $data [ 'two' ];
$temporary_arr [ 'three' ] = $data [ 'three' ];
$temporary_arr [ 'average' ] = bcdiv ( bcadd ( bcadd ( $data [ 'one' ], $data [ 'two' ], 2 ), $data [ 'three' ], 2 ), 3 , 2 );
$temporary_arr [ 'create_time' ] = date ( 'Y-m-d H:i:s' );
$temporary_arr [ 'one_val' ] = $data [ 'one' ];
$temporary_arr [ 'two_val' ] = $data [ 'two' ];
$temporary_arr [ 'three_val' ] = $data [ 'three' ];
$temporary_arr [ 'average_val' ] = $temporary_arr [ 'average' ];
2024-07-26 18:34:47 +08:00
$temporary_arr [ 'flow_val' ] = array_key_exists ( 'flow' , $data ) ? $data [ 'flow' ] : '0.00' ;
2024-08-03 17:56:26 +08:00
// 处理记录时间
2024-07-26 18:34:47 +08:00
if ( strlen ( $temporary_arr [ 'record_time' ]) <= 12 ){
$temporary_arr [ 'record_time' ] = $this -> addCurrentTimeToDateString ( $temporary_arr [ 'record_time' ]);
}
2024-08-03 17:56:26 +08:00
2024-05-21 18:43:56 +08:00
$user_msg = Db :: name ( 'app_user_data' ) -> where ([ 'id' => $data [ 'aud_id' ]]) -> field ( 'grade,gender' ) -> find ();
2024-05-27 18:42:33 +08:00
if ( $user_msg ){
2024-08-03 17:56:26 +08:00
// 根据性别&年级&年龄查规则
if ( $user_msg [ 'grade' ] != 'nothing' ){
// 有年级项
// 等级项(及格优秀良好等)
$achievement_judge_data = $this -> vitalcapacity_achievement_judge ([ 'average' => $temporary_arr [ 'average' ], 'grade' => $user_msg [ 'grade' ], 'gender' => $user_msg [ 'gender' ]]);
$temporary_arr [ 'score' ] = $achievement_judge_data [ 'score' ] . ',' . $achievement_judge_data [ 'level' ] . ',' . $this -> color [ $achievement_judge_data [ 'level' ]];
$temporary_arr [ 'score_val' ] = $achievement_judge_data [ 'score' ];
// 获取肺活量标准
} else {
$achievement_judge_data [ 'level' ] = " 无 " ;
$temporary_arr [ 'score' ] = " 0,无,无 " ;
$temporary_arr [ 'score_val' ] = " 0 " ;
}
2024-05-27 18:42:33 +08:00
} else {
return $this -> msg ( 10004 );
}
2024-06-07 16:49:19 +08:00
2024-07-26 18:34:47 +08:00
$standard_data = $this -> get_vitalcapacity_data ( $data [ 'aud_id' ]);
2024-05-27 18:42:33 +08:00
$result = Db :: table ( 'app_card_vitalcapacity_data' ) -> insert ( $temporary_arr );
2024-07-26 18:34:47 +08:00
2024-05-16 10:33:57 +08:00
if ( $result ){
2024-05-27 18:42:33 +08:00
$time = $result [ 0 ][ 'record_time' ];
$time = strtotime ( $time );
$time = date ( 'Y年m月d日 H:i:s' , $time );
2024-07-26 18:34:47 +08:00
return $this -> msg ([
'average' => $temporary_arr [ 'average' ] . 'ml' ,
'level' => $achievement_judge_data [ 'level' ],
'time' => $time ,
'flow_val' => $temporary_arr [ 'flow_val' ],
'list' => $standard_data ,
'offset' => $this -> vitalcapacity_standard_interval ( $temporary_arr [ 'average' ], $standard_data )
]);
2024-05-16 10:33:57 +08:00
} else {
2024-05-27 18:42:33 +08:00
return $this -> msg ( 10002 );
2024-05-16 10:33:57 +08:00
}
}
2024-05-27 18:42:33 +08:00
################################################################vitalcapacity_data_report
public function vitalcapacity_data_report_action ( $data ){
2024-07-26 18:34:47 +08:00
$result = Db :: table ( 'app_card_vitalcapacity_data' ) -> where ([ 'aud_id' => $data [ 'aud_id' ]]) -> order ( 'record_time desc' ) -> field ( 'record_time,score,average,flow_val' ) -> limit ( 1 ) -> select ();
2024-05-27 18:42:33 +08:00
if ( count ( $result ) <= 0 ){
2024-07-26 18:34:47 +08:00
// return $this->msg(10004);
return $this -> msg ([
'average' => '' ,
'level' => '' ,
'time' => '' ,
'flow_val' => '' ,
'list' => '' ,
'offset' => ''
]);
2024-05-27 18:42:33 +08:00
} else {
2024-08-03 17:56:26 +08:00
2024-05-27 18:42:33 +08:00
$time = $result [ 0 ][ 'record_time' ];
$time = strtotime ( $time );
$time = date ( 'Y年m月d日 H:i:s' , $time );
$o_l = explode ( ',' , $result [ 0 ][ 'score' ]);
2024-08-03 17:56:26 +08:00
$standard_data = $this -> get_vitalcapacity_data ( $data [ 'aud_id' ]);
2024-07-26 18:34:47 +08:00
return $this -> msg ([
'average' => $result [ 0 ][ 'average' ] . 'ml' ,
'level' => $o_l [ 1 ],
'time' => $time ,
'flow_val' => $result [ 0 ][ 'flow_val' ] == '.00' ? '0.00' : $result [ 0 ][ 'flow_val' ],
'list' => $standard_data ,
'offset' => $this -> vitalcapacity_standard_interval ( $result [ 0 ][ 'average' ], $standard_data )
]);
2024-05-27 18:42:33 +08:00
}
}
2024-05-28 18:43:48 +08:00
2024-07-26 18:34:47 +08:00
################################################################vitalcapacity_curve_chart
2024-05-28 18:43:48 +08:00
public function vitalcapacity_curve_chart_action ( $data ){
$audid = $data [ 'aud_id' ];
2024-07-26 18:34:47 +08:00
$timeData = explode ( '-' , $data [ 'time' ]);
2024-05-28 18:43:48 +08:00
// 根据$timeData的长度构建不同的查询条件
$map = [ 'aud_id' => $audid ];
switch ( count ( $timeData )) {
case 3 : // 年月日
$map [ 'record_time' ] = [ 'between' , [ date ( 'Y-m-d 00:00:00' , strtotime ( $timeData [ 0 ] . '-' . $timeData [ 1 ] . '-' . $timeData [ 2 ])), date ( 'Y-m-d 23:59:59' , strtotime ( $timeData [ 0 ] . '-' . $timeData [ 1 ] . '-' . $timeData [ 2 ]))]];
break ;
case 2 : // 年月
$map [ 'record_time' ] = [ 'between' , [ date ( 'Y-m-01 00:00:00' , strtotime ( $timeData [ 0 ] . '-' . $timeData [ 1 ])), date ( 'Y-m-t 23:59:59' , strtotime ( $timeData [ 0 ] . '-' . $timeData [ 1 ]))]];
break ;
case 1 : // 年
$map [ 'record_time' ] = [ 'between' , [ date ( 'Y-01-01 00:00:00' , strtotime ( $timeData [ 0 ])), date ( 'Y-12-31 23:59:59' , strtotime ( $timeData [ 0 ]))]];
break ;
default :
return $this -> msg ( 10005 ); // 无效的时间数据格式
}
2024-06-07 16:49:19 +08:00
// dump($map);
// die;
2024-05-28 18:43:48 +08:00
// 使用查询构造器进行查询
2024-07-26 18:34:47 +08:00
$result = Db :: name ( 'app_card_vitalcapacity_data' ) -> where ( $map ) -> field ( 'id,one_val,two_val,three_val,average_val,score_val,aud_id,record_time,DATEPART(hour, record_time) AS hour,DATEPART(day, record_time) AS day,DATEPART(month, record_time) AS month' ) -> order ( 'record_time' ) -> select ();
// dump($map);
// dump($result);
// die;
2024-05-28 18:43:48 +08:00
$return_data = [];
if ( count ( $timeData ) == 3 ){
$key_condition = 'hour' ;
} else if ( count ( $timeData ) == 2 ){
$key_condition = 'day' ;
} else if ( count ( $timeData ) == 1 ){
$key_condition = 'month' ;
}
// dump($map);
2024-06-07 16:49:19 +08:00
// dump($key_condition);
2024-05-28 18:43:48 +08:00
// die;
foreach ( $this -> curve_data_format as $key => $value ) {
2024-07-26 18:34:47 +08:00
$temporary_arr [ 'title' ] = $value [ 0 ] . '(' . $value [ 1 ] . ')' ;
2024-05-28 18:43:48 +08:00
$temporary_arr [ 'key' ] = $key ;
$temporary_arr [ 'line' ][ 'categories' ] = [];
$temporary_arr [ 'line' ][ 'series' ][ 0 ][ 'color' ] = $value [ 2 ];
2024-07-26 18:34:47 +08:00
$temporary_arr [ 'line' ][ 'series' ][ 0 ][ 'name' ] = $value [ 0 ] . '(' . $value [ 1 ] . ')' ;
2024-05-28 18:43:48 +08:00
$temporary_arr [ 'line' ][ 'series' ][ 0 ][ 'data' ] = [];
2024-07-26 18:34:47 +08:00
// dump($temporary_arr['title']);
2024-05-28 18:43:48 +08:00
foreach ( $result as $k => $v ) {
2024-06-07 16:49:19 +08:00
// dump($key_condition);
2024-07-26 18:34:47 +08:00
// if($result[$k][$key] == 26.43){
// dump(123);
// }
2024-05-28 18:43:48 +08:00
if ( $key_condition == 'hour' ){
2024-07-26 18:34:47 +08:00
// dump($result[$k][$key]);
// die;
2024-05-28 18:43:48 +08:00
if ( in_array ( $result [ $k ][ $key_condition ] . '时' , $temporary_arr [ 'line' ][ 'categories' ])){
2024-07-26 18:34:47 +08:00
2024-05-28 18:43:48 +08:00
$num = array_search ( $result [ $k ][ $key_condition ] . '时' , $temporary_arr [ 'line' ][ 'categories' ]);
2024-07-26 18:34:47 +08:00
// $temporary_arr['line']['series'][0]['data'][$num] = bcadd($temporary_arr['line']['series'][0]['data'][$num],$result[$k][$key],2);
$temporary_arr [ 'line' ][ 'series' ][ 0 ][ 'data' ][ $num ] = $temporary_arr [ 'line' ][ 'series' ][ 0 ][ 'data' ][ $num ] >= $result [ $k ][ $key ] ? $temporary_arr [ 'line' ][ 'series' ][ 0 ][ 'data' ][ $num ] : $result [ $k ][ $key ];
2024-05-28 18:43:48 +08:00
} else {
array_push ( $temporary_arr [ 'line' ][ 'categories' ], $result [ $k ][ $key_condition ] . '时' );
array_push ( $temporary_arr [ 'line' ][ 'series' ][ 0 ][ 'data' ], $result [ $k ][ $key ]);
}
2024-07-26 18:34:47 +08:00
// dump($temporary_arr['line']['series'][0]['data']);
2024-06-07 16:49:19 +08:00
} else if ( $key_condition == 'day' ){
2024-07-26 18:34:47 +08:00
if ( in_array ( $result [ $k ][ 'month' ] . '-' . $result [ $k ][ $key_condition ], $temporary_arr [ 'line' ][ 'categories' ])){
$num = array_search ( $result [ $k ][ 'month' ] . '-' . $result [ $k ][ $key_condition ], $temporary_arr [ 'line' ][ 'categories' ]);
// $temporary_arr['line']['series'][0]['data'][$num] = bcadd($temporary_arr['line']['series'][0]['data'][$num],$result[$k][$key],2);
$temporary_arr [ 'line' ][ 'series' ][ 0 ][ 'data' ][ $num ] = $temporary_arr [ 'line' ][ 'series' ][ 0 ][ 'data' ][ $num ] >= $result [ $k ][ $key ] ? $temporary_arr [ 'line' ][ 'series' ][ 0 ][ 'data' ][ $num ] : $result [ $k ][ $key ];
2024-05-28 18:43:48 +08:00
} else {
2024-07-26 18:34:47 +08:00
array_push ( $temporary_arr [ 'line' ][ 'categories' ], $result [ $k ][ 'month' ] . '-' . $result [ $k ][ $key_condition ]);
2024-05-28 18:43:48 +08:00
array_push ( $temporary_arr [ 'line' ][ 'series' ][ 0 ][ 'data' ], $result [ $k ][ $key ]);
}
} else {
if ( in_array ( $result [ $k ][ 'month' ] . '月' , $temporary_arr [ 'line' ][ 'categories' ])){
$num = array_search ( $result [ $k ][ 'month' ] . '月' , $temporary_arr [ 'line' ][ 'categories' ]);
2024-07-26 18:34:47 +08:00
// $temporary_arr['line']['series'][0]['data'][$num] = bcadd($temporary_arr['line']['series'][0]['data'][$num],$result[$k][$key],2);
$temporary_arr [ 'line' ][ 'series' ][ 0 ][ 'data' ][ $num ] = $temporary_arr [ 'line' ][ 'series' ][ 0 ][ 'data' ][ $num ] >= $result [ $k ][ $key ] ? $temporary_arr [ 'line' ][ 'series' ][ 0 ][ 'data' ][ $num ] : $result [ $k ][ $key ];
2024-05-28 18:43:48 +08:00
} else {
array_push ( $temporary_arr [ 'line' ][ 'categories' ], $result [ $k ][ 'month' ] . '月' );
array_push ( $temporary_arr [ 'line' ][ 'series' ][ 0 ][ 'data' ], $result [ $k ][ $key ]);
}
}
}
// dump($temporary_arr);
array_push ( $return_data , $temporary_arr );
}
2024-07-26 18:34:47 +08:00
// dump($return_data);
// foreach ($return_data[1]['line']['series'][0]['data'] as $key => $value) {
// $return_data[1]['line']['series'][0]['data'][$key] = bcdiv($return_data[1]['line']['series'][0]['data'][$key],60,2);
// }
// // dump($temporary_arr);
// dump($return_data);
// die;
2024-05-28 18:43:48 +08:00
return $this -> msg ( $return_data );
}
2024-04-30 17:39:37 +08:00
2024-05-21 18:43:56 +08:00
################################################################肺活量数据卡片接口################################################################
################################################################肺活量数据卡片接口################################################################
2024-06-07 16:49:19 +08:00
// 加 bcadd(,,20)
// 减 bcsub(,,20)
// 乘 bcmul(,,20)
// 除 bcdiv(,,20)
2024-08-03 17:56:26 +08:00
2024-05-27 18:42:33 +08:00
// 肺活量成绩判断
public function vitalcapacity_achievement_judge ( $data ){
$str = " sex = " . $data [ 'gender' ] . " and " . $data [ 'grade' ] . " <= " . $data [ 'average' ];
$user_achievement = Db :: name ( 'pc_vitalcapacity_standard' ) -> where ( $str ) -> order ( $data [ 'grade' ] . ' desc' ) -> field ( 'level,score,' . $data [ 'grade' ]) -> limit ( 1 ) -> select ();
2024-07-26 18:34:47 +08:00
// dump($data);
// dump($user_achievement);
2024-05-27 18:42:33 +08:00
if ( count ( $user_achievement ) <= 0 ){
2024-07-26 18:34:47 +08:00
$user_achievement [ 0 ] = [ 'level' => '无效' , 'score' => '0' ];
2024-05-27 18:42:33 +08:00
}
2024-07-26 18:34:47 +08:00
// dump($user_achievement);
2024-05-27 18:42:33 +08:00
return $user_achievement [ 0 ];
}
// 肺活量判断区间
2024-07-26 18:34:47 +08:00
public function vitalcapacity_standard_interval ( $val , $data ){
2024-05-27 18:42:33 +08:00
// 缓存一周
2024-08-03 17:56:26 +08:00
$result = '' ;
if ( count ( $data ) <= 0 ){
return $result ;
}
2024-07-26 18:34:47 +08:00
$temporary_qj = $data ;
2024-06-07 16:49:19 +08:00
$max = 0 ;
$min = 0 ;
$num = 0 ;
foreach ( $temporary_qj as $key => $value ) {
2024-07-26 18:34:47 +08:00
if ( $val >= $value [ 'min_val' ] && $val <= $value [ 'max_val' ]){
2024-06-07 16:49:19 +08:00
$max = $value [ 'max_val' ];
$min = $value [ 'min_val' ];
$num = $key ;
break ;
}
}
2024-08-03 17:56:26 +08:00
2024-06-07 16:49:19 +08:00
$num = count ( $temporary_qj ) - 1 - $num ;
2024-07-26 18:34:47 +08:00
$temporary_num = bcmul ( bcdiv ( bcsub ( $val , $min , 20 ), bcsub ( $max , $min , 20 ), 2 ), bcdiv ( 100 , count ( $temporary_qj ), 2 ), 2 );
2024-06-07 16:49:19 +08:00
$result = bcadd ( bcmul ( bcdiv ( 100 , count ( $temporary_qj ), 2 ), $num , 2 ), $temporary_num , 2 );
2024-05-27 18:42:33 +08:00
2024-08-03 17:56:26 +08:00
return $result ;
2024-05-27 18:42:33 +08:00
}
2024-05-21 18:43:56 +08:00
2024-04-30 17:39:37 +08:00
################################################################other################################################################
################################################################other################################################################
################################################################other################################################################
}