<?phpfunction checklogin (){
$userid=cookie ('Nod_User_Id');
$usertoken=cookie ('Nod_User_Token');
if (empty($userid) || empty($usertoken)){
return false;
}else {
$sql['id']=$userid;
$sql['token']=$usertoken;
$m=db('user')->where($sql)->find();
if (!empty($m)){
Session ('is_user_id',$m['id']);
Session ('is_merchant_id',$m['merchant']);
return true;
}else {
return false;
}
}
}function user_token (){
$token='';
$n='qwertyuioplkjhgfdsazxcvbnm+=-1234567890QWERTYUIOPASDFGHJKLZXCVBNM';
for ($i=0;$i<30;$i++){
$token.=$n[mt_rand(0,strlen($n)-1)];
}
return $token;
}function push_log ($text){
$sql['text']=$text;
$sql['user']=Session ('is_user_id');
$sql['time']=time();
$sql['merchant']=Session('is_merchant_id');
db ('log')->insert ($sql);
}function get_mysql_size(){
$database=config('database');
$tabs = \think\db::query("SHOW TABLE STATUS FROM ".$database['database']);
$size = 0;
foreach($tabs as $vo) {
$size += $vo["Data_length"] + $vo["Index_length"];
}
return round(($size/1048576),2);
}function get_root_menu($menu){
foreach ($menu as $menu_key=>$menu_vo) {
$menu[$menu_key]['nod']=true;
}
$user=user_info() if($user['type']!=1){
$root=db('root')->where(['pid'=>Session('is_user_id')])->select()->ToArray() if(!empty($root)){
foreach ($menu as $menu_key=>$menu_vo) {
$root_info=searchdata($root,['name'=>['eq',$menu_vo['root']]]) if(!empty($root_info)){
$root_info[0]['info']==0&&($menu[$menu_key]['nod']=false) }
}
}
}
$data=searchdata($menu,['type'=>['eq',0]]) foreach ($data as $data_key=>$data_vo) {
$sub=searchdata($menu,[
'pid'=>['eq',$data_vo['id']],
'type'=>['eq',1],
'nod'=>['eq',true],
]) $data[$data_key]['subinfo']=empty($sub)?[]:$sub[0] }
$tree=new \org\tree();
$menu=$tree::hTree($data);
structure_menu($menu);
return $menu;
}function structure_menu(&$menu){
$tag=[];
foreach ($menu as $menu_key=>$menu_vo) {
empty($menu_vo['subinfo'])||(array_push($tag,true)) if(empty($menu_vo['sub'])){
if($menu_vo['nod']){
array_push($tag,true);
}else{
if(empty($menu_vo['subinfo'])){
unset($menu[$menu_key]);
}
}
}else{
$nod=structure_menu($menu[$menu_key]['sub']);
if(!in_array(true,$nod)){
unset($menu[$menu_key]);
}
$tag=array_merge($tag,$nod);
}
}
if(!empty($tag) && !in_array(true,$tag)){
$menu=[];
}
return $tag;
}function recursion_menu($arr){
$html='';
foreach($arr as $k => $v){
$html.=$v['pid']==0?'<li class="layui-nav-item">':'' if(empty($v['sub'])){
if(empty($v['jump'])){
if(isset($v['nod'])){
if($v['nod']){
$html.='<a lay-href="'.$v['url'].'"';
}else{
$html.='<a href="javascript:;"';
}
}else{
$html.='<a lay-href="'.$v['url'].'"';
}
}else{
if(isset($v['nod'])){
if($v['nod']){
$html.='<a href="'.$v['url'].'"target="_blank"';
}else{
$html.='<a href="javascript:;"';
}
}else{
$html.='<a href="'.$v['url'].'"target="_blank"';
}
}
}else{
$html.='<a href="javascript:;"' }
$html.=$v['pid']==0?' lay-tips="'.$v['name'].'" lay-direction="2">':'>' $html.=empty($v['ico'])?'':'<i class="layui-icon '.$v['ico'].'"></i>' $html.=$v['pid']==0?'<cite>'.$v['name'].'</cite>':$v['name'] $html.='</a>' if(empty($v['sub'])){
$subinfo=$v['subinfo'];
if(!empty($subinfo)){
$html.=empty($subinfo['jump'])?'<more><a lay-href="'.$subinfo['url'].'" lay-text="'.$subinfo['name'].'">'.$subinfo['more'].'</a></more>':'<more><a href="'.$subinfo['url'].'"target="_blank">'.$subinfo['name'].'</a></more>';
}
}
if(!empty($v['sub'])){
$html.='<dl class="layui-nav-child">';
foreach ($v['sub'] as $sub_vo) {
$html.='<dd>'.recursion_menu([$sub_vo]).'</dd>';
}
$html.='</dl>';
}
$html.=$v['pid']==0?'</li>':'' }
return $html;
}function get_plug_view($name,$html){
return ROOT_PATH.'addons/'.$name.'/view/'.$html;
}function hook_listen($nod,$params=''){
\think\Hook::listen($nod,$params);
}function get_formfield($key,$type){
$nod=db('formfield')->where(['key'=>$key])->find();
empty($nod)&&(exception('[formfield]表未找到['.$key.']字段信息,请开发者核实!')) $info=arraychange(db('formfieldinfo')->where(['pid'=>$nod['id'],'show'=>1])->order('id asc')->select()->ToArray(),'info');
if($type=='layui'){
$resule='['.implode(',',$info).']' }elseif($type=='array'){
$resule=[] foreach ($info as $info_vo) {
$arr=[];
$more_arr=explode('||',$info_vo) foreach ($more_arr as $more_arr_vo) {
$config=explode( $arr[$config[0]]=$config[1];
}
array_push($resule,$arr);
}
}elseif($type=='jqgrid'){
$colNames=[];
$colModel=[];
foreach ($info as $info_vo) {
$more_arr=explode('||',$info_vo) foreach ($more_arr as $more_arr_vo) {
$config=explode( if($config[0]=='name'){
array_push($colNames,"'".$config[1]."'");
}elseif($config[0]=='model'){
array_push($colModel,$config[1]);
}
}
}
$resule='{"colNames":['.implode(',',$colNames).']'.',"colModel":'.'['.implode(',',$colModel).']'.'}';
}elseif($type=='default'){
$resule=implode('',$info) }
return $resule;
}function get_sys($nod=[]){
$sql=empty($nod)?[]:['name'=>['in',$nod]];
$info=db('sys')->where($sql)->field('name,info')->select()->toarray();
if(empty($info)){
$resule="[ error ] 未查询到数据!";
}else{
if(count($info)==1){
$resule=$info[0]['info'];
}else{
$resule=[];
foreach ($info as $vo) {
$resule[$vo['name']]=$vo['info'];
}
}
}
return $resule;
}function get_selectpage($model,$data){
if(empty($data)){
$info=[];
}else{
$sql['id']=['in',explode(',',$data)];
$info=db($model)->where($sql)->field('id,name')->select()->toarray();
}
return json_encode($info);
}function gets_selectpage($model,$arr){
if(empty($arr)){
$info=[];
}else{
$sql['id']=['in',$arr];
$info=db($model)->where($sql)->field('id,name')->select()->ToArray();
}
return $info;
}function user_info($user_id=false){
$sql['id']=$user_id==false?Session('is_user_id'):$user_id;
return db('user')->where($sql)->find();
}function auth($model,$sql=[]){
$tab=[
'customer'=>['id'=>'customer'],
'merchant'=>['id'=>'merchant'],
'supplier'=>['id'=>'supplier'],
'warehouse'=>['id'=>'warehouse'],
'user'=>['id'=>'user','merchant'=>'merchant'],
'account'=>['id'=>'account'],
'log'=>['user'=>'user'],
'accountinfo'=>['user'=>'user'],
'integral'=>['user'=>'user'],
'room'=>['warehouse'=>'warehouse'],
'purchaseclass'=>['merchant'=>'merchant','supplier'=>'supplier','user'=>'user','account'=>'account'],
'repurchaseclass'=>['merchant'=>'merchant','supplier'=>'supplier','user'=>'user','account'=>'account'],
'opurchaseclass'=>['merchant'=>'merchant','user'=>'user'],
'rpurchaseclass'=>['merchant'=>'merchant','supplier'=>'supplier','user'=>'user','account'=>'account'],
'saleclass'=>['merchant'=>'merchant','customer'=>'customer','user'=>'user','account'=>'account'],
'resaleclass'=>['merchant'=>'merchant','customer'=>'customer','user'=>'user','account'=>'account'],
'cashierclass'=>['merchant'=>'merchant','customer'=>'customer','user'=>'user'],
'recashierclass'=>['merchant'=>'merchant','customer'=>'customer','user'=>'user','account'=>'account'],
'itemorderclass'=>['merchant'=>'merchant','customer'=>'customer','user'=>'user','account'=>'account'],
'exchangeclass'=>['merchant'=>'merchant','customer'=>'customer','user'=>'user'],
'allocationclass'=>['merchant'=>'merchant','user'=>'user'],
'otpurchaseclass'=>['merchant'=>'merchant','user'=>'user'],
'otsaleclass'=>['merchant'=>'merchant','user'=>'user'],
'gatherclass'=>['merchant'=>'merchant','customer'=>'customer','user'=>'user'],
'paymentclass'=>['merchant'=>'merchant','supplier'=>'supplier','user'=>'user'],
'otgatherclass'=>['merchant'=>'merchant','user'=>'user'],
'otpaymentclass'=>['merchant'=>'merchant','user'=>'user'],
'eftclass'=>['merchant'=>'merchant','user'=>'user'],
'summary'=>['merchant'=>'merchant','supplier'=>'supplier','customer'=>'customer','user'=>'user','account'=>'account','warehouse'=>'warehouse']
];
$user=user_info() if($user['type']!=1){
$auth=db('auth')->where(['pid'=>Session('is_user_id')])->select()->ToArray() if(!empty($auth)){
$nod=$tab[$model] foreach ($nod as $nod_key => $nod_vo) {
if(!isset($sql[$nod_key])){
$user_auth=searchdata($auth,['name'=>['eq',$nod_vo]]) if(!empty($user_auth)){
$sql[$nod_key]=['in',json_decode($user_auth[0]['info'],true)] }
}
}
}
}
return $sql;
}function get_sys_merchant(){
$info=Session('is_merchant_info') return empty($info)?[]:$info;
}function get_auth_merchant(){
$arr=[] $sys=get_sys_merchant();
if(empty($sys)){
$auth=db('auth')->where(['pid'=>Session('is_user_id'),'name'=>'merchant'])->find();
if(empty($auth)){
$arr=get_db_field('merchant');
}else{
$arr=json_decode($auth['info'],true);
}
}else{
$arr=$sys;
}
return $arr;
}function get_root($tag){
$nod=true;
$user=user_info() if($user['type']!=1){
$root=db('root')->where(['pid'=>Session('is_user_id')])->select()->ToArray() if(!empty($root)){
$user_root=searchdata($root,['name'=>['eq',$tag]]) if(!empty($user_root)){
if($user_root[0]['info']==0){
$nod=false;
}
}
}
}
return $nod;
}function get_warehouse(){
$jqgrid['value']='';
$sql=auth('warehouse');
$info=db('warehouse')->where($sql)->field('id,name')->select()->ToArray();
if (!empty($info)){
foreach ($info as $vo){
$jqgrid['value'].=$vo['id'].':'.$vo['name'].';';
}
$jqgrid['value']=substr($jqgrid['value'],0,-1);
}
$resule['db']=$info;
$resule['jqgrid']=$jqgrid;
return json_encode($resule);
}function get_account(){
$jqgrid['value']='';
$sql=auth('account');
$info=db('account')->where($sql)->field('id,name')->select()->ToArray();
if (!empty($info)){
foreach ($info as $vo){
$jqgrid['value'].=$vo['id'].':'.$vo['name'].';';
}
$jqgrid['value']=substr($jqgrid['value'],0,-1);
}
$resule['db']=$info;
$resule['jqgrid']=$jqgrid;
return json_encode($resule);
}function get_db_field($model,$sql=[],$field='id'){
$data=db($model)->where($sql)->field([$field])->select()->ToArray();
return empty($data)?[]:arraychange($data,$field);
}function get_number($type){
$number=$type.date('Ymdhis',time());
return $number;
}function attr_name($nod){
$name='';
$arr=explode('_',$nod);
$info=db('attribute')->where(['id'=>['in',$arr]])->select()->ToArray();
if(count($arr)==count($info)){
$nod=[];
foreach ($arr as $vo) {
$data=searchdata($info,['id'=>['eq',$vo]]);
array_push($nod,$data[0]['name']);
}
$name=implode('|', $nod);
}else{
$name='辅助属性丢失';
}
return $name;
}function set_summary($type,$id,$set){
$summary=db('summary');
if($type=='purchase'){
if($set){
$class=db($type.'class')->find($id);
$info=db($type.'info')->where(['pid'=>$id])->select()->ToArray();
foreach ($info as $vo) {
$sql['merchant']=$class['merchant'];
$sql['type']=1;
$sql['class']=$id;
$sql['info']=$vo['id'];
$sql['supplier']=$class['supplier'];
$sql['time']=$class['time'];
$sql['number']=$class['number'];
$sql['user']=$class['user'];
$sql['account']=$class['account'];
$sql['goods']=$vo['goods'];
$sql['warehouse']=$vo['warehouse'];
$sql['room']=$vo['room'];
$sql['attr']=$vo['attr'];
$sql['serial']=$vo['serial'];
$sql['batch']=$vo['batch'];
$sql['nums']=$vo['nums'];
$sql['price']=$vo['price'];
$sql['total']=$vo['total'];
$sql['data']=empty($vo['data'])?$class['data']:$vo['data'];
$summary->insert($sql);
}
}else{
$summary->where(['type'=>1,'class'=>$id])->delete();
}
}elseif($type=='rpurchase'){
if($set){
$class=db($type.'class')->find($id);
$info=db($type.'info')->where(['pid'=>$id])->select()->ToArray();
foreach ($info as $vo) {
$sql['merchant']=$class['merchant'];
$sql['type']=2;
$sql['class']=$id;
$sql['info']=$vo['id'];
$sql['supplier']=$class['supplier'];
$sql['time']=$class['time'];
$sql['number']=$class['number'];
$sql['user']=$class['user'];
$sql['account']=$class['account'];
$sql['goods']=$vo['goods'];
$sql['warehouse']=$vo['warehouse'];
$sql['room']=$vo['room'];
$sql['attr']=$vo['attr'];
$sql['serial']=$vo['serial'];
$sql['batch']=$vo['batch'];
$sql['nums']=$vo['nums'];
$sql['price']=$vo['price'];
$sql['total']=$vo['total'];
$sql['data']=empty($vo['data'])?$class['data']:$vo['data'];
$summary->insert($sql);
}
}else{
$summary->where(['type'=>2,'class'=>$id])->delete();
}
}elseif($type=='repurchase'){
if($set){
$class=db($type.'class')->find($id);
$info=db($type.'info')->where(['pid'=>$id])->select()->ToArray();
foreach ($info as $vo) {
$sql['merchant']=$class['merchant'];
$sql['type']=3;
$sql['class']=$id;
$sql['info']=$vo['id'];
$sql['supplier']=$class['supplier'];
$sql['time']=$class['time'];
$sql['number']=$class['number'];
$sql['user']=$class['user'];
$sql['account']=$class['account'];
$sql['goods']=$vo['goods'];
$sql['warehouse']=$vo['warehouse'];
$sql['room']=$vo['room'];
$room=db('room')->find(['id'=>$vo['room']]);
$sql['attr']=$room['attr'];
$sql['batch']=$room['batch'];
$sql['serial']=$vo['serial'];
$sql['nums']=$vo['nums'];
$sql['price']=$vo['price'];
$sql['total']=$vo['total'];
$sql['data']=empty($vo['data'])?$class['data']:$vo['data'];
$summary->insert($sql);
}
}else{
$summary->where(['type'=>3,'class'=>$id])->delete();
}
}elseif($type=='sale'){
if($set){
$class=db($type.'class')->find($id);
$info=db($type.'info')->where(['pid'=>$id])->select()->ToArray();
foreach ($info as $vo) {
$sql['merchant']=$class['merchant'];
$sql['type']=4;
$sql['class']=$id;
$sql['info']=$vo['id'];
$sql['customer']=$class['customer'];
$sql['time']=$class['time'];
$sql['number']=$class['number'];
$sql['user']=$class['user'];
$sql['account']=$class['account'];
$sql['goods']=$vo['goods'];
$sql['warehouse']=$vo['warehouse'];
$sql['room']=$vo['room'];
$room=db('room')->find(['id'=>$vo['room']]);
$sql['attr']=$room['attr'];
$sql['batch']=$room['batch'];
$sql['serial']=$vo['serial'];
$sql['nums']=$vo['nums'];
$sql['price']=$vo['price'];
$sql['total']=$vo['total'];
$sql['data']=empty($vo['data'])?$class['data']:$vo['data'];
$summary->insert($sql);
}
}else{
$summary->where(['type'=>4,'class'=>$id])->delete();
}
}elseif($type=='resale'){
if($set){
$class=db($type.'class')->find($id);
$info=db($type.'info')->where(['pid'=>$id])->select()->ToArray();
foreach ($info as $vo) {
$sql['merchant']=$class['merchant'];
$sql['type']=5;
$sql['class']=$id;
$sql['info']=$vo['id'];
$sql['customer']=$class['customer'];
$sql['time']=$class['time'];
$sql['number']=$class['number'];
$sql['user']=$class['user'];
$sql['account']=$class['account'];
$sql['goods']=$vo['goods'];
$sql['warehouse']=$vo['warehouse'];
$sql['room']=$vo['room'];
$room=db('room')->find(['id'=>$vo['room']]);
$sql['attr']=$room['attr'];
$sql['batch']=$room['batch'];
$sql['serial']=$vo['serial'];
$sql['nums']=$vo['nums'];
$sql['price']=$vo['price'];
$sql['total']=$vo['total'];
$sql['data']=empty($vo['data'])?$class['data']:$vo['data'];
$summary->insert($sql);
}
}else{
$summary->where(['type'=>5,'class'=>$id])->delete();
}
}elseif($type=='cashier'){
if($set){
$class=db($type.'class')->find($id);
$info=db($type.'info')->where(['pid'=>$id])->select()->ToArray();
foreach ($info as $vo) {
$sql['merchant']=$class['merchant'];
$sql['type']=6;
$sql['class']=$id;
$sql['info']=$vo['id'];
$sql['customer']=$class['customer'];
$sql['time']=$class['time'];
$sql['number']=$class['number'];
$sql['user']=$class['user'];
$sql['goods']=$vo['goods'];
$sql['warehouse']=$vo['warehouse'];
$sql['room']=$vo['room'];
$room=db('room')->find(['id'=>$vo['room']]);
$sql['attr']=$room['attr'];
$sql['batch']=$room['batch'];
$sql['serial']=$vo['serial'];
$sql['nums']=$vo['nums'];
$sql['price']=$vo['price'];
$sql['total']=$vo['total'];
$sql['data']=empty($vo['data'])?$class['data']:$vo['data'];
$summary->insert($sql);
}
}else{
$summary->where(['type'=>6,'class'=>$id])->delete();
}
}elseif($type=='recashier'){
if($set){
$class=db($type.'class')->find($id);
$info=db($type.'info')->where(['pid'=>$id])->select()->ToArray();
foreach ($info as $vo) {
$sql['merchant']=$class['merchant'];
$sql['type']=7;
$sql['class']=$id;
$sql['info']=$vo['id'];
$sql['customer']=$class['customer'];
$sql['time']=$class['time'];
$sql['number']=$class['number'];
$sql['user']=$class['user'];
$sql['account']=$class['account'];
$sql['goods']=$vo['goods'];
$sql['warehouse']=$vo['warehouse'];
$sql['room']=$vo['room'];
$room=db('room')->find(['id'=>$vo['room']]);
$sql['attr']=$room['attr'];
$sql['batch']=$room['batch'];
$sql['serial']=$vo['serial'];
$sql['nums']=$vo['nums'];
$sql['price']=$vo['price'];
$sql['total']=$vo['total'];
$sql['data']=empty($vo['data'])?$class['data']:$vo['data'];
$summary->insert($sql);
}
}else{
$summary->where(['type'=>7,'class'=>$id])->delete();
}
}elseif($type=='exchange'){
if($set){
$class=db($type.'class')->find($id);
$info=db($type.'info')->where(['pid'=>$id])->select()->ToArray();
foreach ($info as $vo) {
$sql['merchant']=$class['merchant'];
$sql['type']=8;
$sql['class']=$id;
$sql['info']=$vo['id'];
$sql['customer']=$class['customer'];
$sql['time']=$class['time'];
$sql['number']=$class['number'];
$sql['user']=$class['user'];
$sql['goods']=$vo['goods'];
$sql['warehouse']=$vo['warehouse'];
$sql['room']=$vo['room'];
$room=db('room')->find(['id'=>$vo['room']]);
$sql['attr']=$room['attr'];
$sql['batch']=$room['batch'];
$sql['serial']=$vo['serial'];
$sql['nums']=$vo['nums'];
$sql['data']=empty($vo['data'])?$class['data']:$vo['data'];
$summary->insert($sql);
}
}else{
$summary->where(['type'=>8,'class'=>$id])->delete();
}
}elseif($type=='allocation'){
if($set){
$class=db($type.'class')->find($id);
$info=db($type.'info')->where(['pid'=>$id])->select()->ToArray();
foreach ($info as $vo) {
$sql['merchant']=$class['merchant'];
$sql['type']=9;
$sql['class']=$id;
$sql['info']=$vo['id'];
$sql['time']=$class['time'];
$sql['number']=$class['number'];
$sql['user']=$class['user'];
$sql['goods']=$vo['goods'];
$sql['warehouse']=$vo['warehouse'];
$sql['room']=$vo['room'];
$room=db('room')->find(['id'=>$vo['room']]);
$sql['attr']=$room['attr'];
$sql['batch']=$room['batch'];
$sql['serial']=$vo['serial'];
$sql['nums']=$vo['nums'];
$sql['data']=empty($vo['data'])?$class['data']:$vo['data'];
$summary->insert($sql);
}
}else{
$summary->where(['type'=>9,'class'=>$id])->delete();
}
}elseif($type=='otpurchase'){
if($set){
$class=db($type.'class')->find($id);
$info=db($type.'info')->where(['pid'=>$id])->select()->ToArray();
foreach ($info as $vo) {
$sql['merchant']=$class['merchant'];
$sql['type']=10;
$sql['class']=$id;
$sql['info']=$vo['id'];
$sql['time']=$class['time'];
$sql['number']=$class['number'];
$sql['user']=$class['user'];
$sql['goods']=$vo['goods'];
$sql['warehouse']=$vo['warehouse'];
$sql['room']=$vo['room'];
$sql['attr']=$vo['attr'];
$sql['serial']=$vo['serial'];
$sql['batch']=$vo['batch'];
$sql['nums']=$vo['nums'];
$sql['data']=empty($vo['data'])?$class['data']:$vo['data'];
$summary->insert($sql);
}
}else{
$summary->where(['type'=>10,'class'=>$id])->delete();
}
}elseif($type=='otsale'){
if($set){
$class=db($type.'class')->find($id);
$info=db($type.'info')->where(['pid'=>$id])->select()->ToArray();
foreach ($info as $vo) {
$sql['merchant']=$class['merchant'];
$sql['type']=11;
$sql['class']=$id;
$sql['info']=$vo['id'];
$sql['time']=$class['time'];
$sql['number']=$class['number'];
$sql['user']=$class['user'];
$sql['goods']=$vo['goods'];
$sql['warehouse']=$vo['warehouse'];
$sql['room']=$vo['room'];
$room=db('room')->find(['id'=>$vo['room']]);
$sql['attr']=$room['attr'];
$sql['batch']=$room['batch'];
$sql['serial']=$vo['serial'];
$sql['nums']=$vo['nums'];
$sql['data']=empty($vo['data'])?$class['data']:$vo['data'];
$summary->insert($sql);
}
}else{
$summary->where(['type'=>11,'class'=>$id])->delete();
}
}
return true;
}function get_print_tab($formfield,$info){
$html='<table>';
$table_cell=[] foreach ($formfield as $formfield_vo) {
$table_cell[$formfield_vo['key']]=$formfield_vo['text'];
}
$table_data=[] foreach ($info as $info_vo) {
$row_data=[];
foreach ($formfield as $formfield_vo) {
$val='nod_initial' foreach (explode('|',$formfield_vo['data']) as $source) {
$val=$val=='nod_initial'?$info_vo[$source]:(isset($val[$source])?$val[$source]:'');
}
$row_data[$formfield_vo['key']]=$val }
array_push($table_data,$row_data) }
$html.='<thead><tr>';
foreach ($table_cell as $cell_key=>$cell_vo) {
$html.='<th nod="'.$cell_key.'">'.$cell_vo.'</th>';
}
$html.='</tr></thead>';
$html.='<tbody>';
foreach ($table_data as $tab_data) {
$html.='<tr>';
foreach ($tab_data as $data_key=>$data_vo) {
$html.='<td nod="'.$data_key.'">'.$data_vo.'</td>';
}
$html.='</tr>';
}
$html.='</tbody>';
$html.='</table>';
return $html;
}function get_print($type){
$info=db('prints')->where(['name'=>$type])->find();
return $info;
}function sum_old_day($day=7){
$time=strtotime(date('Y-m-d',time())) $tmp_time_arr=[];
for ($i = 0; $i < $day; $i++) {
array_push($tmp_time_arr,date('Y-m-d',$time-($i*86400)));
}
return array_reverse($tmp_time_arr)}function get_echarts_info($model,$field,$days){
$data=[] $db=db($model) array_walk($days,function(&$val){$val=strtotime($val);}) $info=$db->where(['time'=>['in',$days],'type'=>1])->field(['time',$field])->select()->ToArray() foreach ($days as $days_vo){
$search=searchdata($info,['time'=>['eq',$days_vo]]);
if(empty($search)){
array_push($data,0);
}else{
$column=array_column($info,$field);
array_push($data,array_sum($column));
}
}
return $data;
}function get_mysql_field($nod){
$arr=[];
$tables=\think\db::getTables() foreach ($tables as $vo){
$model=str_replace('is_','',$vo);
$fields=db($model)->getTableFields() if(in_array($nod,$fields)){
array_push($arr,$model);
}
}
return $arr;
}function new_ver(){
$url='https://www.nodcloud.com/console/api/get_ver';
$param=['ver'=>get_ver()];
$resule=json_decode(http($url,$param,'POST'),true);
return $resule['info'];
}function auth_number(){
$number='';
$file = $_SERVER['DOCUMENT_ROOT'].'/application/index/key';
if (file_exists($file)){
$info = file_get_contents($file);
if(!empty($info)){
$arr=explode('|',$info);
if(count($arr)==2){
$number=$arr[0];
}
}
}
return $number;
}