db, $this->def); return $LogM -> addMemberLog($uid,$usertype,$content,$opera='',$type=''); } /** * 获取px_train 列表 * $whereData 查询条件 * $data 自定义处理数组 */ public function getList($whereData, $data = array()) { $data['field'] = empty($data['field']) ? '*' : $data['field']; $List = $this -> select_all('px_train', $whereData, $data['field']); if(!empty($List)){ foreach ($List as $k=>$v){ $UIDList[] = $v['uid']; $sid[] = $v['id']; } /* 查询培训课程 */ if($data['num']){ $SubjectList = $this -> getSubList( array('uid' => array('in', pylode(',',$UIDList)) , 'status'=>1 , 'pause_status'=>1,'groupby'=>'uid'), array('field'=>'`id`,`uid`,`name`,`pic`,count(*) as num') ); if(is_array($SubjectList)){ foreach($SubjectList as $key=>$value){ $SubNum[$value['uid']] = $value['num']; } } } if($data['utype']=='wap'){ $SubjectList = $this -> getSubList( array('uid' => array('in', pylode(',',$UIDList)) , 'status'=>1 , 'pause_status'=>1), array('field'=>'`id`,`uid`,`name`,`pic`') ); $TeacherList = $this->getTeaList( array('uid' => array('in', pylode(',',$UIDList)) , 'status'=>1 , 'r_status'=>1 , 'groupby'=>'uid'), array('field'=>'`uid`,count(*) as num') ); $ZixunList = $this->getPxzxList( array('s_uid' => array('in', pylode(',',$UIDList)) ), array('field'=>'`s_uid`') ); if(is_array($TeacherList)){ foreach($TeacherList as $key=>$value){ $TeaNum[$value['uid']] = $value['num']; } } } foreach ($List as $k=>$v){ if(strpos($v['cert'],'3')){ $List[$k]['iscert'] = 1; } if($data['utype']=='wap'){ if($TeaNum[$v['uid']]){ $List[$k]['teanum'] = $TeaNum[$v['uid']]; }else{ $List[$k]['teanum'] = 0; } $List[$k]['num'] = 0; foreach($SubjectList as $value){ if($v['uid']==$value['uid']){ $List[$k]['slist'][] = $value; $List[$k]['num'] += 1; } } $List[$k]['zixunnum'] = 0; foreach($ZixunList as $value){ if($v['uid']==$value['s_uid']){ $List[$k]['zixunnum'] += 1; } } } /* 获取课程数量 */ if($data['num']){ if($SubNum[$v['uid']]){ $List[$k]['num'] = $SubNum[$v['uid']]; }else{ $List[$k]['num'] = 0; } } if(!empty($v['logo'])&&$v['logo_status']==0||$data['utype']=='admin'){ $List[$k]['logo'] = checkpic($v['logo'],$this->config['sy_px_icon']); }else{ $List[$k]['logo'] = checkpic($this->config['sy_px_icon']); } } } return $List; } /** * 获取px_train 详情 * $whereData 查询条件 * $data 自定义处理数组 */ public function getInfo($whereData, $data = array()) { $data['field'] = empty($data['field']) ? '*' : $data['field']; $Info = $this -> select_once('px_train', $whereData, $data['field']); if(!empty($Info['logo'])&&$Info['logo_status']==0||$data['utype']=='user'){ $Info['logo_n'] = checkpic($Info['logo'],$this->config['sy_px_icon']); }else{ $Info['logo_n'] = checkpic($this->config['sy_px_icon']); } return $Info; } /** * 修改px_train 详情 * $whereData 修改条件数据 * $upData 修改的数据 * $data 自定义处理数组 * 此方法只为修改一下简单的字段操作,如需编辑操作,需访问upTrainInfo方法 */ public function upInfo($whereData = array(), $upData = array(), $data = array()){ $nid = 0; if (!empty($upData) && !empty($whereData)){ $nid = $this -> update_once('px_train', $upData, $whereData); } return $nid; } /** * 获取px_teacher 列表 * $whereData 查询条件 * $data 自定义处理数组 */ public function getTeaList($whereData = array(), $data = array()) { $data['field'] = empty($data['field']) ? '*' : $data['field']; $List = $this -> select_all('px_teacher', $whereData, $data['field']); if(!empty($List)){ foreach($List as $val){ $uid[]=$val['uid']; } if($data['utype']=='front'){ $train = $this->getList(array('uid'=>array('in', pylode(',',$uid))),array('field'=>'`uid`,`name`')); $atn = $this->select_all('atn',array('uid'=>$data['uid'] , 'tid'=>array('<>','') , 'sc_usertype'=>4)); // $num = $this->getPxSubjectNum(array('uid'=>$data['uid']) ); $SubList = $this -> getSubList(array('uid'=>array('in', pylode(',',$uid)),'status'=>1,'pause_status'=>1),array('field' => '`uid`,`teachid`')); foreach($SubList as $k=>$v){ $teachid = explode(',',$v['teachid']); foreach($teachid as $key=>$val){ if($val){ $ids[] = $val; } } } $idsArr = array_count_values($ids); } foreach ($List as $k=>$v){ $List[$k]['pic'] = checkpic($v['pic'],$this->config['sy_pxteacher_icon']); if(!empty($train)){ if($idsArr[$v['id']]){ $List[$k]['num'] = $idsArr[$v['id']]; }else{ $List[$k]['num'] = 0; } foreach($train as $val){ if($v['uid']==$val['uid']){ $List[$k]['train_name'] = $val['name']; } } } if(!empty($atn)){ foreach ($atn as $val){ if($v['id']==$val['tid']){ $List[$k]['atn'] = 1; } } } } } return $List; } /** * 获取px_teacher 详情 * $whereData 查询条件 * $data 自定义处理数组 */ public function getTeaInfo($whereData = array(), $data = array()) { $data['field'] = empty($data['field']) ? '*' : $data['field']; $Info = $this -> select_once('px_teacher', $whereData, $data['field']); if(!empty($Info )){ /* 关注 */ if(!empty($data['uid'])){ $atn = $this->select_once('atn',array('uid'=>$data['uid'] , 'tid'=>$Info['id'])); if(!empty($atn)){ $Info['atn'] = 1; } } if($Info['pic']){ $Info['pic'] = checkpic($Info['pic'],$this->config['sy_pxteacher_icon']); } $train = $this->getInfo(array('uid'=>$Info['uid']),array('field'=>'`uid`,`name`')); $Info['train_name']=$train['name']; } return $Info; } /** * 统计px_teacher 列表 * $whereData 查询条件 * $data 自定义处理数组 */ public function getPxTeacherNum($whereData) { return $this -> select_num('px_teacher', $whereData); } /** * 修改px_teacher 详情 * $whereData 修改条件数据 * $upData 修改的数据 * $data 自定义处理数组 */ public function upTeaInfo($whereData = array(), $upData = array(), $data = array()){ $return = 0; if (!empty($upData) && !empty($whereData)){ if ($upData['file']['tmp_name'] || $upData['base']){ $upArr = array( 'file' => $upData['file'], 'dir' => 'team', 'base' => $upData['base'], 'preview' => $upData['preview'] ); $result = $this -> upload($upArr); if (!empty($result['msg'])){ $return['msg'] = $result['msg']; $return['errcode'] = '8'; return $return; }elseif (!empty($result['picurl'])){ $picurl = $result['picurl']; } } unset($upData['file']); unset($upData['base']); unset($upData['preview']); if(isset($picurl)){ $upData['pic'] = $picurl; } if(!empty($upData['content'])){ $oneArr = array('&','background-color:#ffffff','background-color:#fff','white-space:nowrap;'); $twoArr = array('&','background-color:','background-color:','white-space:'); $upData['content'] = str_replace($oneArr, $twoArr, $upData['content']); } $return = $this -> update_once('px_teacher', $upData, $whereData); if($data['member']){ if($return){ $this -> addMemberLog($data['uid'],$data['usertype'],'更新培训师',20,2);//会员日志 $returns['msg'] = '更新成功!'; $returns['cod'] = 9; $returns['url'] = 'index.php?c=team&status=0'; }else{ $returns['msg'] = '更新失败,请重新填写!'; $returns['cod'] = 8; if($data['wap']){ $returns['url'] = ''; }else{ $returns['url'] = 'index.php?c=team_add'; } } $return = array(); $return = $returns; } } return $return; } /** * 修改px_teacher 详情 * $addData 修改的数据 * $data 自定义处理数组 */ public function addTeaInfo($addData = array(), $data = array()){ $return = 0; if (!empty($addData)){ if(!empty($addData['content'])){ $oneArr = array('&','background-color:#ffffff','background-color:#fff','white-space:nowrap;'); $twoArr = array('&','background-color:','background-color:','white-space:'); $addData['content'] = str_replace($oneArr, $twoArr, $addData['content']); } if ($addData['file']['tmp_name'] || $addData['base']){ $upArr = array( 'file' => $addData['file'], 'dir' => 'team', 'base' => $addData['base'], 'preview' => $addData['preview'] ); $result = $this -> upload($upArr); if (!empty($result['msg'])){ $return['msg'] = $result['msg']; $return['errcode'] = '8'; return $return; }elseif (!empty($result['picurl'])){ $picurl = $result['picurl']; } } unset($addData['file']); unset($addData['base']); unset($addData['preview']); if(isset($picurl)){ $addData['pic'] = $picurl; } $return = $this -> insert_into('px_teacher', $addData); if($data['member']){ if($return){ $this -> addMemberLog($data['uid'],$data['usertype'],'添加培训师',20,1);//会员日志 $returns['msg'] = '添加成功!'; $returns['cod'] = 9; $returns['url'] = 'index.php?c=team&status=0'; }else{ $returns['msg'] = '添加失败,请重新填写!'; $returns['cod'] = 8; if($data['wap']){ $returns['url'] = ''; }else{ $returns['url'] = 'index.php?c=team_add'; } } $return = array(); $return = $returns; } } return $return; } /** * 删除px_teacher 详情 * $whereData 查询条件 */ public function delTea($whereData = array(),$data=array()) { $return = $this -> delete_all('px_teacher', $whereData, ''); if($data['member']){ if($return){ $this -> addMemberLog($data['uid'],$data['usertype'],'删除培训师',20,3);//会员日志 $returns['msg'] = '删除成功!'; $returns['cod'] = 9; $returns['laytype'] = 0; $returns['url'] = $_SERVER['HTTP_REFERER']; }else{ $returns['msg'] = '删除失败!'; $returns['cod'] = 8; $returns['laytype'] = 0; $returns['url'] = $_SERVER['HTTP_REFERER']; } $return = array(); $return = $returns; } return $return; } /** * 获取px_train_show列表 * $whereData 查询条件 * $data 自定义处理数组 */ public function getPxshowList($whereData, $data = array()) { $data['field'] = empty($data['field']) ? '*' : $data['field']; $List = $this -> select_all('px_train_show', $whereData, $data['field']); if(!empty($List)){ foreach($List as $k=>$v){ $List[$k]['picurl'] = checkpic($v['picurl']); } } return $List; } /** * 获取px_train_show详情 * $whereData 查询条件 * $data 自定义处理数组 */ public function getPxshowInfo($whereData = array(), $data = array()) { $data['field'] = empty($data['field']) ? '*' : $data['field']; $Info = $this -> select_once('px_train_show', $whereData, $data['field']); return $Info; } /** * 修改px_train_show详情 * $whereData 修改条件数据 * $upData 修改的数据 * $data 自定义处理数组 */ public function upPxshowInfo($whereData = array(), $upData = array(), $data = array()){ $nid = 0; if (!empty($upData) && !empty($whereData)){ $nid = $this -> update_once('px_train_show', $upData, $whereData); } return $nid; } /** * 删除px_train_show * $data 自定义处理数组 */ public function delPxshowInfo($data = array()){ if($data['utype'] != 'admin'){ $where['uid'] = $data['uid']; } if(is_array($data['id'])){ $where['id'] = array('in',pylode(',',$data['id'])); }else{ $where['id'] = $data['id']; } $row = $this -> getPxshowList($where); if(is_array($row)){ $nid = $this -> delete_all('px_train_show', $where, ''); } if($nid){ if($data['member']){ $this -> addMemberLog($data['uid'],$data['usertype'],'删除机构环境展示',16,3);//会员日志 } $return=array('msg'=>'删除成功!','cod'=>9); }else{ $return=array('msg'=>'删除失败!','cod'=>8); } return $return; } /** * 插入px_train_show详情 * $addData 修改的数据 * $data 自定义处理数组 */ public function addPxshowInfo($addData = array(), $data = array()){ $nid = 0; if (!empty($addData)){ //wap端上传图片 if ($addData['base'] || $addData['file']['tmp_name']){ $upArr = array( 'file' => $addData['file'], 'dir' => 'show', 'base' => $addData['base'], ); $result = $this -> upload($upArr); if (!empty($result['msg'])){ $return['msg'] = $result['msg']; $return['errcode'] = '8'; return $return; }elseif (!empty($result['picurl'])){ $picurl = $result['picurl']; } } unset($addData['base']); unset($addData['file']); if(isset($picurl)){ $addData['picurl'] = $picurl; } $member = $this->select_once('member',array('uid'=>$data['uid']),'`did`'); $addData['did'] = $member['did']; $nid = $this -> insert_into('px_train_show', $addData); if($data['member']){ $this -> addMemberLog($data['uid'],$data['usertype'],'添加环境展示',16,1); } } return $nid; } /** * 获取px_train_news列表 * $whereData 查询条件 * $data 自定义处理数组 */ public function getPxnewsList($whereData, $data = array()) { $data['field'] = empty($data['field']) ? '*' : $data['field']; $List = $this -> select_all('px_train_news', $whereData, $data['field']); if(!empty($List)){ foreach($List as $lv){ $pxuid[] = $lv['uid']; } $bcWhere['uid'] = array('in', pylode(',', $pxuid)); $pxList = $this -> getList($bcWhere, array('field' => '`uid`, `name`')); foreach($List as $k => $v){ foreach($pxList as $val){ if($v['uid']==$val['uid']){ $List[$k]['name'] = $val['name']; } } } } return $List; } /** * 获取px_train_news详情 * $whereData 查询条件 * $data 自定义处理数组 */ public function getPxnewsInfo($whereData = array(), $data = array()) { $data['field'] = empty($data['field']) ? '*' : $data['field']; $Info = $this -> select_once('px_train_news', $whereData, $data['field']); return $Info; } /** * 修改px_train_news详情 * $whereData 修改条件数据 * $upData 修改的数据 * $data 自定义处理数组 */ public function upPxnewsInfo($whereData = array(), $upData = array(), $data = array()){ $return = 0; if (!empty($upData) && !empty($whereData)){ if($this->config['sy_outlinks']!=1){ $patten = array("\r\n", "\n", "\r"); $patea = "/]*>(.*?)<\/a>/is";//匹配a标签 $patet = "/href=\"(.*)\"/";//取a标签的值 $pateh = '//is'; $content = str_replace($patten, "
", $upData['body']); $str = htmlspecialchars_decode($content); if(!empty($upData['body'])){ $upData['body'] = preg_replace($patea,"$1", $str); } } $return = $this -> update_once('px_train_news', $upData, $whereData); if($data['member']){ if($return){ $this -> addMemberLog($data['uid'],$data['usertype'],'更新培训新闻',22,1);//会员日志 $returns['msg'] = '更新培训新闻成功'; $returns['cod'] = 9; $returns['url'] = 'index.php?c=news'; }else{ $returns['msg'] = '更新培训新闻失败,请稍后再试'; $returns['cod'] = 8; $returns['url'] = 'index.php?c=news'; } $return = array(); $return = $returns; } } return $return; } /** * 添加px_train_news详情 * $addData 修改的数据 * $data 自定义处理数组 */ public function addPxnewsInfo($addData = array(), $data = array()){ $return = 0; if (!empty($addData)){ if($this->config['sy_outlinks']!=1){ $patten = array("\r\n", "\n", "\r"); $patea = "/]*>(.*?)<\/a>/is";//匹配a标签 $patet = "/href=\"(.*)\"/";//取a标签的值 $pateh = '/
/is'; $content = str_replace($patten, "
", $addData['body']); $str = htmlspecialchars_decode($content); $addData['body'] = preg_replace($patea,"$1", $str); } $return = $this -> insert_into('px_train_news', $addData); if($data['member']){ if($return){ $this -> addMemberLog($data['uid'],$data['usertype'],'添加培训新闻',22,1);//会员日志 $returns['msg'] = '添加培训新闻成功'; $returns['cod'] = 9; $returns['url'] = 'index.php?c=news'; }else{ $returns['msg'] = '添加培训新闻失败,请稍后再试'; $returns['cod'] = 8; $returns['url'] = 'index.php?c=news'; } $return = array(); $return = $returns; } } return $return; } /** * 统计px_train_news 列表 * $whereData 查询条件 * $data 自定义处理数组 */ public function getPxTrainNewsNum($whereData) { return $this -> select_num('px_train_news', $whereData); } /** * 删除px_train_news详情 * $whereData 查询条件 * $data 自定义 */ public function delPxnews($whereData = array(),$data=array()) { $return = $this -> delete_all('px_train_news', $whereData, ''); if($data['member']){ if($return){ $this -> addMemberLog($data['uid'],$data['usertype'],'删除培训新闻',22,3);//会员日志 $returns['msg'] = '删除成功!'; $returns['cod'] = 9; $returns['url'] = $_SERVER['HTTP_REFERER']; }else{ $returns['msg'] = '删除失败!'; $returns['cod'] = 8; $returns['url'] = $_SERVER['HTTP_REFERER']; } $return = array(); $return = $returns; } return $return; } /** * 获取px_zixun 列表 * $whereData 查询条件 * $data 自定义处理数组 */ public function getPxzxList($whereData, $data = array()) { $data['field'] = empty($data['field']) ? '*' : $data['field']; $List = $this -> select_all('px_zixun', $whereData, $data['field']); foreach($List as $val){ $sids[] = $val['s_uid']; $uid[] = $val['uid']; } if($data['utype']=='zixun'){ // 查询培训 $trWhere['uid'] = array('in', pylode(',', $sids)); $trData['field'] = '`uid`,`logo`,`name`'; $train = $this->getList($trWhere,$trData['field']); // 查询培训课程 $sWhere['uid'] = array('in',pylode(',', $sids)); $sWhere['status'] = '1'; $sWhere['r_status'] = 1; $sData['field'] = '`uid`,`name`,`id`'; $subject = $this->select_all('px_subject',$sWhere,$sData['field']); foreach($subject as $v){ if($data['wap']){ $url = Url('wap',array('c'=>'train','a'=>'subshow','id'=>$v['id'])); }else{ $url = Url('train',array('c'=>'subshow','id'=>$v['id'])); } $subname[$v['uid']][] = '
'.$v['name'].''; } } if($data['utype']=='front'){ $result = $this->select_all('member', array('uid'=>array('in',pylode(',',$uid))),'uid,username,usertype'); $resume = $this->select_all('resume', array('uid'=>array('in',pylode(',',$uid))),'uid,name,photo,sex'); $company = $this->select_all('company', array('uid'=>array('in',pylode(',',$uid))),'uid,name,logo'); $lietou = $this->select_all('lt_info', array('uid'=>array('in',pylode(',',$uid))),'uid,realname,photo'); $train = $this->select_all('px_train',array('uid'=>array('in',pylode(',',$uid))),'uid,name,logo'); foreach ($result as $key=>$val){ foreach ($resume as $v){ if($val['uid']==$v['uid']&&$val['usertype']==1){ $result[$key]['pic'] = $v['photo']; if($v['sex'] == 1){ $result[$key]['nickname'] = mb_substr($v['name'], 0, 1, 'utf-8').'先生'; }else{ $result[$key]['nickname'] = mb_substr($v['name'], 0, 1, 'utf-8').'女士'; } } } foreach ($company as $v){ if($val['uid']==$v['uid']&&$val['usertype']==2){ $result[$key]['pic'] = $v['logo']; $result[$key]['nickname'] = $v['name']; } } foreach ($lietou as $v){ if($val['uid']==$v['uid']&&$val['usertype']==3){ $result[$key]['pic'] = $v['photo']; $result[$key]['nickname'] = $v['realname']; } } foreach ($train as $v){ if($val['uid']==$v['uid']&&$val['usertype']==4){ $result[$key]['pic'] = $v['logo']; $result[$key]['nickname'] = $v['name']; } } } } if(!empty($List)){ foreach($List as $key=>$val){ if($data['utype']=='zixun'){ foreach($train as $v){ if($val['s_uid']==$v['uid']){ $List[$key]['name'] = $v['name']; if($v['logo']){ $List[$key]['logo'] = $v['logo']; }else{ $List[$key]['logo'] = $this->config['sy_px_icon']; } } } foreach($subname as $k=>$v){ if($val['s_uid']==$k){ $List[$key]['num'] = count($v); $i=0; foreach($v as $value){ if($i<2){ $sublist[$key][] = $value; } $i++; } $List[$key]['subname'] = @implode(',',$sublist[$key]); } } } if(!empty($result)){ foreach($result as $v){ if($v['uid']==$val['uid']){ $List[$key]['name'] = $v['username']; $List[$key]['nickname'] = $v['nickname']; if($v['pic']){ $List[$key]['pic'] = checkpic($v['pic']); }else{ $List[$key]['pic'] = checkpic($this->config['sy_friend_icon']); } } } } } } return $List; } /** * 获取px_zixun详情 * $whereData 查询条件 * $data 自定义处理数组 */ public function getPxzixunInfo($whereData = array(), $data = array()) { $data['field'] = empty($data['field']) ? '*' : $data['field']; $Info = $this -> select_once('px_zixun', $whereData, $data['field']); return $Info; } /** * 修改px_zixun 详情 * $whereData 修改条件数据 * $upData 修改的数据 * $data 自定义处理数组 */ public function upPxzixun($whereData = array(), $data = array()){ $nid = $this -> update_once('px_zixun', $data, $whereData); return $nid; } /** * 添加px_zixun * $whereData 修改条件数据 * $upData 修改的数据 * $data 自定义处理数组 */ public function addPxzixun($addData = array()){ if (!empty($addData)){ $nid = $this -> insert_into('px_zixun', $addData); } return $nid; } /** * 删除px_zixun 详情 * $id 查询条件 */ public function delPxzx($id,$data=array()){ if(!empty($id) || !empty($data['where'])){ $where = array(); if (!empty($id)) { if(is_array($id)){ $ids = $id; $return['layertype'] = 1; }else{ $ids = @explode(',', $id); $return['layertype'] = 0; } $ids = pylode(',', $ids); $where['id'] = array('in', $ids); if($data['uid']){ if($data['usertype'] == '4'){ $where['s_uid'] = $data['uid']; }else{ $where['uid'] = $data['uid']; } } } if (!empty($data['where'])) { $where = array_merge($where, $data['where']); } $return['id'] = $this -> delete_all('px_zixun', $where, ''); if($return['id']){ $this ->addMemberLog ($data['uid'],$data['usertype'],'删除培训机构留言',18,3); $return['msg'] = '删除成功'; $return['errcode'] = '9'; } else{ $return['msg'] = '删除失败'; $return['errcode'] = '8'; } }else{ $return['msg'] = '请选择您要删除的数据!'; $return['errcode'] = 8; $return['layertype'] = 0; } return $return; } /** * 获取px_banner 列表 * $whereData 查询条件 * $data 自定义处理数组 */ public function getBannerList($whereData, $data = array()) { $data['field'] = empty($data['field']) ? '*' : $data['field']; $List = $this -> select_all('px_banner', $whereData, $data['field']); if(!empty($List)){ foreach ($List as $k => $v) { $List[$k]['pic']=checkpic($v['pic']); } } return $List; } /** * 统计px_banner 列表 * $whereData 查询条件 * $data 自定义处理数组 */ public function getBannerNum($whereData) { return $this -> select_num('px_banner', $whereData); } /** * 获取px_banner 详情 * $whereData 查询条件 * $data 自定义处理数组 */ public function getBannerInfo($whereData = array(), $data = array()) { $data['field'] = empty($data['field']) ? '*' : $data['field']; $Info = $this -> select_once('px_banner', $whereData, $data['field']); if(!empty($Info)){ if($data['pic']){ $Info['pic'] = checkpic($Info['pic']); } } return $Info; } /** * 修改px_banner 详情 * $whereData 修改条件数据 * $upData 修改的数据 * $data 自定义处理数组 uid 为必传参数 */ public function upBannerInfo($whereData = array(), $upData = array(), $data = array()){ if (!empty($upData) && !empty($whereData)){ if($data['member']){ $pxinfo = $this -> getInfo(array('uid'=>$data['uid']),array('field'=>'r_status')); $upData['status'] = $pxinfo['r_status'] != 2 ? 1 : $this->config['px_banner_status']; } $nid = $this -> update_once('px_banner', $upData, $whereData); $return = array(); if($data['member']){ $this -> addMemberLog($data['uid'],$data['usertype'],'编辑机构横幅',16,2);//会员日志 } if($nid){ $return['url'] = 'index.php?c=banner'; $return['msg'] = '设置成功!'; $return['cod'] = 9; }else{ $return['msg'] = '设置失败!'; $return['cod'] = 8; } } return $return; } /** * 删除px_banner * $data 自定义处理数组 */ public function delBanner($data = array()) { if(is_array($data['id'])){ $where['id'] = array('in',pylode(',',$data['id'])); }else{ $where['id'] = $data['id']; } $row = $this -> getBannerList($where); if(is_array($row)){ $nid = $this -> delete_all('px_banner', $where, ''); } if($nid){ $return=array('msg'=>'删除成功!','cod'=>9); }else{ $return=array('msg'=>'删除失败!','cod'=>8); } return $return; } /** * 会员设置px_banner * * $data 自定义处理数组 */ public function setBanner($data=array()){ if(!empty($data)){ if ($data['file']['tmp_name'] || $data['base']){ $upArr = array( 'file' => $data['file'], 'dir' => 'train', 'base' => $data['base'], 'preview' => $data['preview'] ); $result = $this -> upload($upArr); if (!empty($result['msg'])){ $return['msg'] = $result['msg']; $return['errcode'] = '8'; return $return; }elseif (!empty($result['picurl'])){ $picurl = $result['picurl']; } } if(isset($picurl)){ $valueData['pic'] = $picurl; if($data['type']=='add'){ $member = $this->select_once('member',array('uid'=>$data['uid']),'`did`'); $valueData['did'] = $member['did']; $valueData['uid'] = $data['uid']; $return=$this -> addBannerInfo($valueData,array('member'=>'train','uid'=>$data['uid'],'usertype'=>$data['usertype'],)); }elseif($data['type']=='update'){ $whereData['uid'] = $data['uid']; $return = $this -> upBannerInfo($whereData,$valueData, array( 'uid' => $data['uid'], 'usertype' => $data['usertype'], 'member' => 'train' ) ); } }else{ $return['msg'] = '请上传机构横幅'; $return['errcode'] = 8; } return $return; } } /** * 添加px_banner详情 * $addData 修改的数据 * $data 自定义处理数组 */ public function addBannerInfo($addData = array(), $data = array()){ if (!empty($addData)){ if($data['member']){ $pxinfo = $this -> getInfo(array('uid'=>$data['uid']),array('field'=>'r_status')); $addData['status'] = $pxinfo['r_status']!= 2 ? 1 : $this->config['px_banner_status']; } $nid = $this -> insert_into('px_banner', $addData); $return = array(); if($data['member']){ $this -> addMemberLog($data['uid'],$data['usertype'],'上传机构横幅',16,1);//会员日志 require_once ('integral.model.php'); $IntegralM = new integral_model($this->db, $this->def); $IntegralM -> invtalCheck($addData['uid'],$data['usertype'],'integral_px_banner','上传培训横幅'); } if($nid){ $return['url'] = 'index.php?c=banner'; $return['msg'] = '设置成功!'; $return['cod'] = 9; }else{ $return['msg'] = '设置失败!'; $return['cod'] = 8; } } return $return; } /** * 获取px_subject 列表 * $whereData 查询条件 * $data 自定义处理数组 */ public function getSubList($whereData, $data = array('utype'=>'')) { $data['field'] = empty($data['field']) ? '*' : $data['field']; $List = $this -> select_all('px_subject', $whereData, $data['field']); if(!empty($List)){ require_once ('cache.model.php'); $CacheM = new cache_model($this->db, $this->def); $CacheList = $CacheM->GetCache(array('subject','subjecttype')); foreach($List as $k=>$v){ $uid[] = $v['uid']; $ids[] = $v['id']; } /* 获取报名数量 */ if($data['num']){ $NumList = $this->getBmList(array('sid'=>array('in' , pylode(',' , $ids)),'groupby'=>'sid'),array('field'=>'`sid`,count(*) as num')); if(is_array($NumList)){ foreach($NumList as $key=>$value){ $BmNum[$value['sid']] = $value['num']; } } } /* 查询是否报名 */ if($data['uid'] && !empty($ids)){ $baomingList = $this -> getBmList( array('sid' => array('in' , pylode(',' , $ids)) , 'uid' => $data['uid'])); if(is_array($baomingList)){ foreach($baomingList as $key=>$value){ $BmID[$value['sid']] = $value['sid']; } } } //获取培训信息 if($data['utype']=='front' && !empty($uid)){ $reccom = $this->getList(array('uid' => array('in' , pylode(',' , $uid))),array('field' => '`uid`,`name`')); } foreach($List as $k=>$v){ if($v['isprice']){ $List[$k]['isprice_n'] = $v['isprice']==1 ? '在线收费':'到场收费'; } $List[$k]['pic'] = checkpic($v['pic'],$this -> config['sy_pxsubject_icon']); $List[$k]['price'] = floatval($v['price']); //处理报名数据 if(!empty($BmNum)){ if($BmNum[$v['id']]){ $List[$k]['baomingnum'] = $BmNum[$v['id']]; }else{ $List[$k]['baomingnum'] = 0; } } if(!empty($BmID)){ $List[$k]['baoming'] = $BmID[$v['id']]; } //处理前台数据 if($data['utype']=='front'){ foreach($reccom as $val){ if($v['uid'] == $val['uid']){ $List[$k]['comname'] = $val['name']; } } if($v['type']!=''){ $type_name = array(); $type = @explode(',',$v['type']); foreach($type as $val){ $type_name[] = $CacheList['subject_type_name'][$val]; } $List[$k]['type_n'] = @implode(',',$type_name); } } } } return $List; } /** * 获取px_subject 详情 * $whereData 查询条件 * $data 自定义处理数组 */ public function getSubInfo($whereData, $data = array()) { $data['field'] = empty($data['field']) ? '*' : $data['field']; $Info = $this -> select_once('px_subject', $whereData, $data['field']); if($Info['pic']){ $Info['pic'] = checkpic($Info['pic'],$this->config['sy_pxsubject_icon']); } if($data['utype']=='front'){ require_once ('cache.model.php'); $CacheM = new cache_model($this->db, $this->def); $CacheList = $CacheM->GetCache('subjecttype'); $subject_type_name = $CacheList['subject_type_name']; if($Info['type']!=''){ $type = @explode(',',$Info['type']); $type_name = array(); foreach($type as $v){ $type_name[] = $subject_type_name[$v]; } $Info['type'] = @implode(',',$type_name); } if($Info['teachid']!=''){ $teach = $this->getTeaList(array('id'=>array('in' , $Info['teachid']) , 'status'=>'1')); foreach($teach as $v){ $teachname[$v['id']] = $v['name']; } $teachid = @explode(',',$Info['teachid']); $teach_name = array(); foreach($teachid as $v){ $teach_name[] = $teachname[$v]; } $Info['teach'] = @implode('/',$teach_name); } $Info['price']=floatval($Info['price']); } return $Info; } /** * 添加px_subject 详情 */ public function addSubjectInfo($data = array()) { $post = $data['post']; $id = $data['id']; if ($post['file']['tmp_name'] || $post['base']){ $upArr = array( 'file' => $post['file'], 'dir' => 'subject', 'base' => $post['base'], 'preview' => $post['preview'] ); $result = $this -> upload($upArr); if (!empty($result['msg'])){ $return['msg'] = $result['msg']; $return['errcode'] = '8'; return $return; }elseif (!empty($result['picurl'])){ $picurl = $result['picurl']; } } unset($post['file']); unset($post['preview']); unset($post['base']); if(isset($picurl)){ $post['pic'] = $picurl; } if($id){ $nid = $this->upSubInfo(array('id'=>$id,'uid'=>$data['uid']),$post); $type = 2; $msg = '更新课程'; }else{ $post['uid'] = $data['uid']; $post['did'] = $data['did']; $post['ctime'] = time(); $nid = $this->addSubInfo($post); $type = 1; $msg = '发布课程'; } if($nid){ $this -> addMemberLog($data['uid'],$data['usertype'],$msg,21,$type); $return['msg'] = $msg.'成功!'; $return['errcode'] = 9; $return['url'] = 'index.php?c=subject&status=1'; }else{ $return['msg'] = $msg.'失败!'; $return['errcode'] = 8; $return['url'] = 'index.php?c=subject_add'; } return $return; } /** * 添加px_subject 详情 * $whereData 查询条件 * $data 自定义处理数组 */ public function addSubInfo($upData = array(), $data = array()) { $nid = 0; if (!empty($upData)){ if(!empty($upData['content'])){ $oneArr = array('&','background-color:#ffffff','background-color:#fff','white-space:nowrap;'); $twoArr = array('&','background-color:','background-color:','white-space:'); $upData['content'] = str_replace($oneArr, $twoArr, $upData['content']); } $nid = $this -> insert_into('px_subject', $upData); } return $nid; } /** * 修改px_subject 详情 * $whereData 修改条件数据 * $upData 修改的数据 * $data 自定义处理数组 */ public function upSubInfo($whereData = array(), $upData = array(), $data = array()){ $nid = 0; if (!empty($upData) && !empty($whereData)){ if(!empty($upData['content'])){ $oneArr = array('&','background-color:#ffffff','background-color:#fff','white-space:nowrap;'); $twoArr = array('&','background-color:','background-color:','white-space:'); $upData['content'] = str_replace($oneArr, $twoArr, $upData['content']); } $nid = $this -> update_once('px_subject', $upData, $whereData); } return $nid; } /** * @desc 删除培训课程信息 */ public function delsubInfo($id,$data=array()){ $nid = $this -> delete_all('px_subject',array('id'=>$id,'uid'=>$data['uid']), ''); if($nid){ $baoming = $this->getBmInfo(array('sid'=>$id,'uid'=>$data['uid'])); if($baoming){ $this->delete_all('company_order',array('sid'=>$baoming['id'],'uid'=>$data['uid']),''); } $this->delete_all('px_baoming',array('id'=>$id,'uid'=>$data['uid']), ''); $this->delete_all('px_subject_collect',array('id'=>$id,'uid'=>$data['uid']), ''); $this->addMemberLog($data['uid'],$data['usertype'],'删除培训课程',21,3); $return['errcode'] = 9; $return['msg'] = '培训课程(ID:'.$id.')删除成功!'; }else{ $return['errcode'] = 8; $return['msg'] = '培训课程(ID:'.$id.')删除失败!'; } return $return; } /** * 删除px_subject 详情 * $whereData 查询条件 * $data 自定义处理数组 */ public function delSub($whereData = array()) { $return = array( 'errcode' => 8, 'msg' => '' ); $del = $whereData['id']; $whereData = array('id' => array('in', $del)); $list = $this -> getSubList($whereData, array('field' => '`uid`, `name`, `pic`')); if(empty($list)){ $return['msg'] = '数据错误'; return $return; } require_once('sysmsg.model.php'); $sysmsgM = new sysmsg_model($this->db, $this->def); foreach($list as $v){ $sysmsgM -> addInfo(array('content' => '管理员操作:删除课程《'.$v['name'].'》','usertype'=>4, 'uid' => $v['uid'])); } $baomingid = $this -> getBmList(array('sid' => array('in', $del)), array('field' => '`id`')); $sid = array(); if(!empty($baomingid)){ foreach($baomingid as $v){ $sid[] = $v['id']; } } //删除相关数据 $sidWhereData = array('sid' => array('in', $del)); $result = $this -> delete_all('px_subject', $whereData, ''); if($result){ $this -> delete_all('company_order', array('sid' => array('in', pylode($sid))), ''); $this -> delete_all('px_baoming', $sidWhereData, ''); $this -> delete_all('px_subject_collect', $sidWhereData, ''); } $return['errcode'] = 9; $return['msg'] = '培训课程(ID:'.$del.')删除成功!'; return $return; } /** * 获取px_baoming 列表 * $whereData 查询条件 * $data 自定义处理数组 scene 场景值,定制不同场景返回的数据 */ public function getBmList($whereData, $data = array()) { $List = array(); $data['field'] = empty($data['field']) ? '*' : $data['field']; $List = $this -> select_all('px_baoming', $whereData, $data['field']); if(empty($List)){ return $List; } //详情 if(isset($data['scene']) && $data['scene'] == 'detail'){ $sid = $s_uid = $ids = array(); foreach($List as $val){ $sid[] = $val['sid']; $s_uid[] = $val['s_uid']; $ids[] = $val['id']; } //课程数据 $subject = $this -> getSubList(array('id' => array('in', pylode(',',$sid))), array('field' => '`id`,`uid`,`name`,`price`,`isprice`,`pic`')); $subjectIndex = array(); if(!empty($subject)){ foreach ($subject as $subV) { $subjectIndex[$subV['id']] = $subV; } } //培训数据 $train = $this -> getList(array('uid' => array('in', pylode(',',$s_uid))), array('field' => '`uid`,`name`')); $trainIndex = array(); if(!empty($train)){ foreach ($train as $tV) { $trainIndex[$tV['uid']] = $tV; } } //订单数据 $order = $this -> select_all('company_order', array('sid' => array('in', pylode(',',$ids)), 'type' => 6), '`id`,`sid`,`order_state`'); $orderIndex = array(); if(!empty($order)){ foreach ($order as $oV) { $orderIndex[$oV['sid']] = $oV; } } foreach($List as $key=>$val){ if(isset($subjectIndex[$val['sid']])){ $List[$key]['subname'] = $subjectIndex[$val['sid']]['name']; $List[$key]['price'] = number_format($subjectIndex[$val['sid']]['price'],2); $List[$key]['isprice'] = $subjectIndex[$val['sid']]['isprice']; $List[$key]['isprice_n'] = $subjectIndex[$val['sid']]['isprice_n']; $List[$key]['pic_n'] = $subjectIndex[$val['sid']]['pic']; } if(isset($trainIndex[$val['s_uid']])){ $List[$key]['trainname'] = $trainIndex[$val['s_uid']]['name']; } if(isset($orderIndex[$val['id']])){ $List[$key]['order_state'] = $orderIndex[$val['id']]['order_state']; $List[$key]['oid'] = $orderIndex[$val['id']]['id']; } } } return $List; } /** * 获取px_baoming 详情 * $whereData 查询条件 * $data 自定义处理数组 */ public function getBmInfo($whereData, $data = array()) { $data['field'] = empty($data['field']) ? '*' : $data['field']; $Info = $this -> select_once('px_baoming', $whereData, $data['field']); return $Info; } /** *修改px_baoming 详情 * $whereData 查询条件 * $data 自定义处理数组 */ public function upBmInfo($whereData = array(), $data = array()){ $nid = $this -> update_once('px_baoming', $data, $whereData); return $nid; } /** * 删除px_baoming 详情 * @param $whereData 查询条件 * @param $data 自定义处理数组 * @return array */ public function delBm($whereData = array(), $data = array()) { $return = array( 'errcode' => 8, 'msg' => '' ); $del = $whereData['id']; $where['id'] = array('in', $del); if($whereData['uid']){ $where['uid'] = $whereData['uid']; } $list = $this -> getBmList($where, array('field' => '`s_uid`,`uid`')); if(empty($list)){ $return['msg'] = '数据错误'; return $return; }else{ foreach($list as $key=>$value){ if($data['s_uid'] && $data['s_uid'] != $value['s_uid']){ $return['msg'] = '数据错误'; return $return; } } } //删除相关数据 $result = $this -> delete_all('px_baoming', array('id' => array('in', $del)), ''); if($result){ $this -> delete_all('company_order', array('sid' => array('in', $del), 'type' => array('=', 6)), ''); } $this -> addMemberLog($data['uid'],$data['usertype'],'取消报名的课程',6,3); $return['errcode'] = 9; $return['msg'] = '报名记录(ID:'.$del.')删除成功!'; return $return; } /** * 修改培训基本信息 * $whereData 修改条件 * $data mData member表要修改数据; trainData px_train表要修改数据(简单的修改只需要带上此参数); sData 后台修改操作数量数据; utype 修改操作类型:admin-后台,user-会员中心 */ public function upTrainInfo($whereData, $data=array('mData'=>null, 'trainData'=>null, 'sData'=>null, 'utype'=>null)) { $return = array(); if(is_array($whereData) && !empty($whereData)){ //会员操作的修改,需要判断手机号、邮件是否已绑定,绑定的不能修改 if ($data['utype'] == 'user'){ $px = $this -> select_once('px_train',array('uid'=>$whereData['uid']),'`moblie_status`,`email_status`'); if (!empty($px)){ if ($px['moblie_status'] == '1'){ if (!empty($data['mData']) && $data['mData']['moblie']){ unset($data['mData']['moblie']); } if (!empty($data['trainData']) && $data['trainData']['moblie']){ unset($data['trainData']['moblie']); } } if ($px['email_status'] == '1'){ if (!empty($data['mData']) && $data['mData']['email']){ unset($data['mData']['email']); } if (!empty($data['trainData']) && $data['trainData']['email']){ unset($data['trainData']['email']); } } } } // 处理会员基本信息 if (!empty($data['mData'])){ require_once ('userinfo.model.php'); $UserinfoM = new userinfo_model($this->db, $this->def); $ckresult = $UserinfoM -> addMemberCheck($data['mData'], $whereData['uid'], $data['utype']); if (isset($ckresult) && $ckresult['msg']){ $ckresult['errcode'] = 8; return $ckresult; } } // 处理培训基本信息 if (!empty($data['trainData'])){ if(!empty($data['trainData']['linkphone'])){ $pxphone = $this -> select_once('px_train', array('linkphone' => $data['trainData']['linkphone']),'`uid`'); if(!empty($pxphone) && $pxphone['uid'] != $whereData['uid']){ $return['msg'] = '座机已存在!'; $return['errcode'] = 8; return $return; } } $return['id'] = $this -> update_once('px_train', $data['trainData'], $whereData); if ($return['id']){ // 会员操作的要记录会员日志 if ($data['utype'] == 'user'){ $this -> addMemberLog($whereData['uid'], 4, '完善基本资料',7); // 如是第一次完善,需要进行积分处理 if(!empty($px) && $px['name'] == ''){ require_once ('integral.model.php'); $IntegralM = new integral_model($this->db, $this->def); $IntegralM -> invtalCheck($whereData['uid'],4,'integral_userinfo','完善基本资料'); } } $return['msg'] = $data['utype'] == 'user' ? '基本信息修改成功' : '培训会员(ID:'.$whereData['uid'].')基本信息修改成功'; $return['errcode'] = 9; $return['url'] = $_SERVER['HTTP_REFERER']; }else{ $return['msg'] = $data['utype'] == 'user' ? '基本信息修改失败' :'培训会员(ID:'.$whereData['uid'].')基本信息修改失败'; $return['errcode'] = 8; $return['url'] = $_SERVER['HTTP_REFERER']; } } } return $return; } /** * 修改个人头像 * @param array $whereData * @param array $data photo/需上传的图片文件; thumb/已处理好的缩略图; utype/操作的用户类型; base/需上传的base4图片; preview/pc预览即上传 */ public function upLogo($whereData = array(),$data=array('photo'=>null,'thumb'=>null,'utype'=>null,'base'=>null,'preview'=>null)) { if (!empty($whereData['uid'])){ $uid = $whereData['uid']; // 头像还需上传的 if ($data['photo'] || $data['base']){ $upArr = array( 'file' => $data['photo'], 'dir' => 'train', 'type' => 'logo', 'base' => $data['base'], 'preview' => $data['preview'] ); $result = $this -> upload($upArr); if (!empty($result['msg'])){ $return['msg'] = $result['msg']; $return['errcode'] = '8'; return $return; }elseif (!empty($result['picurl'])){ $photo = $result['picurl']; } } // 已处理好的头像缩略图 if ($data['thumb']){ $photo = str_replace('../data','./data',$data['thumb'][1]); } if (!empty($photo)){ // 用户操作,且后台设置用户头像需要审核的 $pxinfo = $this -> getInfo(array('uid'=>$uid),array('field'=>'r_status')); if(empty($pxinfo)){ include_once('userinfo.model.php'); $userinfoM = new userinfo_model($this->db, $this->def); $userinfoM -> activUser($uid,4); } if ($data['utype'] == 'user' && $this -> config['px_logo_status'] == 1){ $photo_status = 1; }else{ $photo_status = $pxinfo['r_status']==0?1:0; } $return['id'] = $this -> update_once('px_train',array('logo'=>$photo,'logo_status'=>$photo_status),array('uid'=>$uid)); $this -> update_once('answer',array('pic'=>$photo),array('uid'=>$uid)); $this -> update_once('question',array('pic'=>$photo),array('uid'=>$uid)); } if (isset($return['id'])) { // 用户操作的,判断处理头像上传积分 if ($data['utype'] == 'user'){ require_once ('integral.model.php'); $IntegralM = new integral_model($this -> db, $this -> def); $IntegralM -> invtalCheck($uid,4,'integral_avatar','上传头像'); $this -> addMemberLog($uid, 4, '上传头像', 16, 1); if ($this -> config['px_logo_status'] == 1){ $return['errcode'] = '9'; $return['msg'] = '上传成功,管理员审核后对其他用户开放显示'; }else{ $return['errcode'] = '9'; $return['msg'] = '上传成功'; } // pc会员中心预览即上传,处理预览图 if ($data['preview']){ $return['picurl'] = checkpic($photo); } }else{ $return['msg'] = '培训头像(ID:'.$uid.')修改成功'; $return['errcode'] = '9'; } }else{ $return['msg'] = '培训头像(ID:'.$uid.')修改失败'; $return['errcode'] = '8'; } }else{ $return['msg'] = '请选择需要修改的用户'; $return['errcode'] = '8'; } return $return; } /** * px_subject_collect 列表 * $whereData 查询条件 * $data 自定义处理数组 scene 场景值,定制不同场景返回的数据 */ public function getFavSubList($whereData, $data = array()) { $List = array(); $data['field'] = empty($data['field']) ? '*' : $data['field']; $List = $this -> select_all('px_subject_collect', $whereData, $data['field']); if(empty($List)){ return $List; } //详情 if(isset($data['scene']) && $data['scene'] == 'detail'){ $sid = $s_uid = $ids = array(); foreach($List as $val){ $sid[] = $val['sid']; $s_uid[] = $val['s_uid']; } //课程数据 $subject = $this -> getSubList(array('id' => array('in', pylode(',',$sid))), array('field' => '`id`,`name`,`address`,`pic`,`price`,`isprice`')); $subjectIndex = array(); if(!empty($subject)){ foreach ($subject as $subV) { $subjectIndex[$subV['id']] = $subV; } } //培训数据 $train = $this -> getList(array('uid' => array('in', pylode(',',$s_uid))), array('field' => '`uid`,`name`')); $trainIndex = array(); if(!empty($train)){ foreach ($train as $tV) { $trainIndex[$tV['uid']] = $tV; } } foreach($List as $key=>$val){ if(isset($subjectIndex[$val['sid']])){ $List[$key]['name'] = $subjectIndex[$val['sid']]['name']; $List[$key]['price'] = number_format($subjectIndex[$val['sid']]['price'],2); $List[$key]['address'] = $subjectIndex[$val['sid']]['address']; $List[$key]['isprice_n'] = $subjectIndex[$val['sid']]['isprice_n']; if($subjectIndex[$val['sid']]['pic']){ $List[$key]['pic'] = $subjectIndex[$val['sid']]['pic']; }else{ $List[$key]['pic'] = $this->config['sy_pxsubject_icon']; } } if(isset($trainIndex[$val['s_uid']])){ $List[$key]['train_name'] = $trainIndex[$val['s_uid']]['name']; } } } return $List; } /** * 删除px_subject_collect * $delId id */ public function delFavSub($id,$data=array()) { if(!empty($id)){ if(is_array($id)){ $ids = $id; $return['layertype'] = 1; }else{ $ids = @explode(',', $id); $return['layertype'] = 0; } $id = pylode(',', $ids); $delWhere['id'] = array('in',$id); if($data['uid']){ $delWhere['uid'] = $data['uid']; } $return['id'] = $this -> delete_all('px_subject_collect',$delWhere,''); if($return['id']){ $this -> addMemberLog($data['uid'],$data['usertype'],'删除收藏的课程',5,3); $return['msg'] = '收藏的课程(ID:'.$id.')取消成功'; $return['errcode'] = '9'; } else{ $return['msg'] = '收藏的课程(ID:'.$id.')取消失败'; $return['errcode'] = '8'; } }else{ $return['msg'] = '系统繁忙'; $return['errcode'] = '8'; $return['layertype'] = '0'; } return $return; } /** * px_subject_collect 列表 * $whereData 查询条件 * $data 自定义处理数组 scene 场景值,定制不同场景返回的数据 */ public function getFavAgencyList($whereData, $data = array()) { $List = array(); $data['field'] = empty($data['field']) ? '*' : $data['field']; $List = $this -> select_all('px_subject_collect', $whereData, $data['field']); if(empty($List)){ return $List; } //详情 if(isset($data['scene']) && $data['scene'] == 'detail'){ $sid = $s_uid = $ids = array(); foreach($List as $val){ $sid[] = $val['sid']; $s_uid[] = $val['s_uid']; } //课程数据 $subject = $this -> getSubList(array('id' => array('in', pylode(',',$sid))), array('field' => '`id`,`name`,`address`,`pic`')); $subjectIndex = array(); if(!empty($subject)){ foreach ($subject as $subV) { $subjectIndex[$subV['id']] = $subV; } } //培训数据 $train = $this -> getList(array('uid' => array('in', pylode(',',$s_uid))), array('field' => '`uid`,`name`')); $trainIndex = array(); if(!empty($train)){ foreach ($train as $tV) { $trainIndex[$tV['uid']] = $tV; } } foreach($List as $key=>$val){ if(isset($subjectIndex[$val['sid']])){ $List[$key]['name'] = $subjectIndex[$val['sid']]['name']; $List[$key]['address'] = number_format($subjectIndex[$val['sid']]['price'],2); if($subjectIndex[$val['sid']]['pic']){ $List[$key]['pic'] = $subjectIndex[$val['sid']]['pic']; }else{ $List[$key]['pic'] = $this->config['sy_pxsubject_icon']; } } if(isset($trainIndex[$val['s_uid']])){ $List[$key]['train_name'] = $trainIndex[$val['s_uid']]['name']; } } } return $List; } /** * 统计px_subject 课程数目 * $whereData 查询条件 * $data 自定义处理数组 */ public function getPxSubjectNum($whereData) { return $this -> select_num('px_subject', $whereData); } /** * 统计px_baoming 课程预约数目 * $whereData 查询条件 * $data 自定义处理数组 */ public function getPxBaomingNum($whereData) { return $this -> select_num('px_baoming', $whereData); } /** * 统计px_zixun 咨询留言数目 * $whereData 查询条件 * $data 自定义处理数组 */ public function getZixungNum($whereData) { return $this -> select_num('px_zixun', $whereData); } /** * px_subject_collect 课程收藏数目 * $whereData 查询条件 * $data 自定义处理数组 */ function getSubCollectNum($Where=array()){ return $this->select_num('px_subject_collect',$Where); } /** * px_subject_collect 详情 * $whereData 查询条件 * $data 自定义处理数组 */ public function getSubCollectInfo($whereData, $data = array()) { $data['field'] = empty($data['field']) ? '*' : $data['field']; $Info = $this -> select_once('px_subject_collect', $whereData, $data['field']); return $Info; } /** * 收藏课程 * $whereData 查询条件 * $data 自定义处理数组 */ public function collectSub($data) { if(!empty($data)){ if(!$data['uid']){ return -3; }elseif($this->usertype==4){ return -1; } $subject = $this->getSubInfo(array('id'=>(int)$data['id']),array('field'=>'`uid`')); if(empty($subject)){ return -2; } $info = $this->getSubCollectInfo(array('uid'=>$data['uid'],'sid'=>(int)$data['id'])); if(empty($info)){ $this->insert_into('px_subject_collect',array('sid'=>(int)$data['id'],'s_uid'=>$subject['uid'],'uid'=>$data['uid'],'ctime'=>time(),'usertype'=>$data['usertype'])); $num = $this->getSubCollectNum(array('sid'=>(int)$data['id'])); return $num; }else{ return 0; } }else{ return -3; } } /** * 添加报名 * $addData 添加参数 * $data 自定义处理数组 */ public function addBaoming($addData = array(), $data = array()){ if(!empty($addData)){ $nid = $this -> insert_into('px_baoming',$addData); } return $nid; } /** * 添加px_train * $addData 添加参数 * $data 自定义处理数组 */ public function addPxTrain($addData = array(), $data = array()){ if(!empty($addData)){ $nid = $this -> insert_into('px_train',$addData); } return $nid; } /** * 处理单个图片上传 * @param file/需上传文件; dir/上传目录; type/上传图片类型; base/需上传base64; preview/pc预览即上传 */ private function upload($data = array('file'=>null,'dir'=>null,'type'=>null,'base'=>null,'preview'=>null)){ include_once('upload.model.php'); $UploadM = new upload_model($this->db, $this->def); $upArr = array( 'file' => $data['file'], 'dir' => $data['dir'], 'type' => $data['type'], 'base' => $data['base'], 'preview' => $data['preview'] ); $return = $UploadM -> newUpload($upArr); return $return; } public function statusLogo($uid,$data = array()){ $uid = @explode(',',$uid); foreach($uid as $v){ if($v){ $uids[] = $v; } } if (!empty($uids)){ $uidstr = pylode(',', $uids); $post = $data['post']; if ($post['logo_status'] == 2){ //审核不通过删除图片 $post['logo'] =''; } $result = $this -> update_once('px_train', $post, array('uid'=>array('in',$uidstr))); if ($result){ if ($post['logo_status'] == 2){ // 审核不通过,相关表头像删除 $this -> update_once('answer',array('pic'=>''),array('uid'=>array('in',$uidstr))); $this -> update_once('question',array('pic'=>''),array('uid'=>array('in',$uidstr))); $statusInfo = '您的LOGO'; foreach ($uids as $k=>$v){ /* 处理审核信息 */ if($post['logo_statusbody']){ $statusInfo .= ' , 因为'.$post['logo_statusbody'].' , '; } $statusInfo .= '已被管理员删除'; $msg[$v] = $statusInfo; } //发送系统通知 include_once('sysmsg.model.php'); $sysmsgM = new sysmsg_model($this->db, $this->def); $sysmsgM -> addInfo(array('uid'=>$uids,'usertype'=>4, 'content'=>$msg)); }else{ $pxtrain = $this->select_all('px_train',array('uid'=>array('in',$uidstr)),'`uid`,`logo`'); foreach ($pxtrain as $k=>$v){ $newlogo[$v['uid']] = $v['logo']; } $this -> update_once('answer',array('pic'=>array('CASE','uid',$newlogo)),array('uid'=>array('in',$uidstr))); $this -> update_once('question',array('pic'=>array('CASE','uid',$newlogo)),array('uid'=>array('in',$uidstr))); } $return['msg'] = '培训LOGO审核(ID:'.$uidstr.')设置成功'; $return['errcode'] = '9'; }else{ $return['msg'] = '培训LOGO审核(ID:'.$uidstr.')设置失败'; $return['errcode'] = '8'; } }else{ $return['msg'] = '请选择要培训审核的LOGO'; $return['errcode'] = '8'; } return $return; } /** * 后台培训机构环境审核 * @param string $id 格式:单个,如1 ; 批量,如1,2,3 * @param array $data */ public function statusShow($id,$data = array()){ $id = @explode(',',$id); foreach($id as $v){ if($v){ $ids[] = $v; } } if (!empty($ids)){ $idstr = pylode(',', $ids); $shows = $this -> getPxshowList(array('id'=>array('in',$idstr)),array('field'=>'`uid`,`title`')); $post = $data['post']; if ($post['status'] == 2){ //审核不通过删除 $result = $this -> delete_all('px_train_show', array('id'=>array('in',$idstr)),''); }elseif($post['status'] == 0){ $result = $this -> update_once('px_train_show',$post, array('id'=>array('in',$idstr)),''); } if ($result){ if ($post['status'] == 0 || $post['status'] == 2){ foreach ($shows as $k=>$v){ $uids[] = $v['uid']; /* 处理审核信息 */ if ($post['status'] == 2){ $statusInfo = '您的机构环境('.$v['title'].')审核未通过'; if($post['statusbody']){ $statusInfo .= ', 原因:'.$post['statusbody']; } $msg[$v['uid']][] = $statusInfo; }elseif($post['status'] == 0){ $msg[$v['uid']][] = '您的机构环境('.$v['title'].')已审核通过'; } } //发送系统通知 include_once('sysmsg.model.php'); $sysmsgM = new sysmsg_model($this->db, $this->def); $sysmsgM -> addInfo(array('uid'=>$uids,'usertype'=>4, 'content'=>$msg)); } $return['msg'] = '机构环境审核(ID:'.$idstr.')设置成功'; $return['errcode'] = '9'; }else{ $return['msg'] = '机构环境审核(ID:'.$idstr.')设置失败'; $return['errcode'] = '8'; } }else{ $return['msg'] = '请选择要审核的机构环境'; $return['errcode'] = '8'; } return $return; } /** * 后台培训机构环境审核 * @param string $id 格式:单个,如1 ; 批量,如1,2,3 * @param array $data */ public function statusBanner($id,$data = array()){ $id = @explode(',',$id); foreach($id as $v){ if($v){ $ids[] = $v; } } if (!empty($ids)){ $idstr = pylode(',', $ids); $shows = $this->getBannerList(array('id'=>array('in',$idstr)), array('field' => '`uid`')); $post = $data['post']; if ($post['status'] == 2){ //审核不通过删除 $result = $this -> delete_all('px_banner', array('id'=>array('in',$idstr)),''); }elseif($post['status'] == 0){ $result = $this -> update_once('px_banner',$post, array('id'=>array('in',$idstr)),''); } if ($result){ if ($post['status'] == 0 || $post['status'] == 2){ foreach ($shows as $k=>$v){ $uids[] = $v['uid']; /* 处理审核信息 */ if ($post['status'] == 2){ $statusInfo = '您的机构横幅审核未通过'; if($post['statusbody']){ $statusInfo .= ', 原因:'.$post['statusbody']; } $msg[$v['uid']][] = $statusInfo; }elseif($post['status'] == 0){ $msg[$v['uid']][] = '您的机构横幅已审核通过'; } } //发送系统通知 include_once('sysmsg.model.php'); $sysmsgM = new sysmsg_model($this->db, $this->def); $sysmsgM -> addInfo(array('uid'=>$uids,'usertype'=>4, 'content'=>$msg)); } $return['msg'] = '机构横幅审核(ID:'.$idstr.')设置成功'; $return['errcode'] = '9'; }else{ $return['msg'] = '机构横幅审核(ID:'.$idstr.')设置失败'; $return['errcode'] = '8'; } }else{ $return['msg'] = '请选择要审核的机构横幅'; $return['errcode'] = '8'; } return $return; } /** * @desc 讲师审核,培训机构不是已审核状态,弹出同步操作状态审核 * @param int $id * @param array $data|state statusbody */ public function statusTeacher($id, $data = array()){ if (!$id){ $return = array( 'errcode' => 8, 'msg' => '参数错误!' ); return $return; }else{ $teacher = $this->select_once('px_teacher', array('id' => $id), '`id`,`uid`,`name`'); $upData = array( 'status' => intval($data['status']), 'statusbody'=> trim($data['statusbody']), 'lastupdate'=> time() ); $uid = $data['uid']; $result = $this -> update_once('px_teacher', $upData, array('id' => $id, 'uid' => $uid)); if ($result) { if ($data['status'] == '1') { require_once 'userinfo.model.php'; $userinfoM = new userinfo_model($this->db, $this->def); $post = array( 'id' => $id, 'status' => 1 ); $userinfoM -> status(array('uid' => $uid, 'usertype' => 4), array('post' => $post)); } //发送系统通知 require_once 'sysmsg.model.php'; $sysmsgM = new sysmsg_model($this->db, $this->def); $msg = $data['status'] == 2 ? '讲师《'.$teacher['name'].'》审核未通过;原因:'.$data['statusbody'] : '讲师《'.$teacher['name'].'》审核通过'; $sysmsgM -> addInfo(array('uid' => $uid,'usertype'=>4,'content'=>$msg)); $return = array( 'errcode' => 9, 'msg' => '讲师(ID:'.$id.')审核设置成功!' ); }else{ $return = array( 'errcode' => 8, 'msg' => '讲师(ID:'.$id.')审核设置失败!' ); } return $return; } } /** * @desc 课程审核,培训机构不是已审核状态,弹出同步操作状态审核 * @param int $id * @param array $data|state statusbody */ public function statusSubject($id, $data = array()){ if (!$id){ $return = array( 'errcode' => 8, 'msg' => '参数错误!' ); return $return; }else{ $subject = $this->select_once('px_subject', array('id' => $id), '`id`,`uid`,`name`'); $upData = array( 'status' => intval($data['status']), 'statusbody'=> trim($data['statusbody']), 'lastupdate'=> time() ); $uid = $data['uid']; $result = $this -> update_once('px_subject', $upData, array('id' => $id, 'uid' => $uid)); if ($result) { if ($data['status'] == '1') { require_once 'userinfo.model.php'; $userinfoM = new userinfo_model($this->db, $this->def); $post = array( 'id' => $id, 'status' => 1 ); $userinfoM -> status(array('uid' => $uid, 'usertype' => 4), array('post' => $post)); } //发送系统通知 require_once 'sysmsg.model.php'; $sysmsgM = new sysmsg_model($this->db, $this->def); $msg = $data['status'] == 2 ? '课程《'.$subject['name'].'》审核未通过;原因:'.$data['statusbody'] : '课程《'.$subject['name'].'》审核通过'; $sysmsgM -> addInfo(array('uid' => $uid,'usertype'=>4,'content'=>$msg)); $return = array( 'errcode' => 9, 'msg' => '课程(ID:'.$id.')审核设置成功!' ); }else{ $return = array( 'errcode' => 8, 'msg' => '课程(ID:'.$id.')审核设置失败!' ); } return $return; } } /** * @desc 新闻审核,培训机构不是已审核状态,弹出同步操作状态审核 * @param int $id * @param array $data|state statusbody */ public function statusNews($id, $data = array()){ if (!$id){ $return = array( 'errcode' => 8, 'msg' => '参数错误!' ); return $return; }else{ $news = $this->select_once('px_train_news', array('id' => $id), '`id`,`uid`,`title`'); $upData = array( 'status' => intval($data['status']), 'statusbody'=> trim($data['statusbody']), 'lastupdate'=> time() ); $uid = $data['uid']; $result = $this -> update_once('px_train_news', $upData, array('id' => $id, 'uid' => $uid)); if ($result) { if ($data['status'] == '1') { require_once 'userinfo.model.php'; $userinfoM = new userinfo_model($this->db, $this->def); $post = array( 'id' => $id, 'status' => 1 ); $userinfoM -> status(array('uid' => $uid, 'usertype' => 4), array('post' => $post)); } //发送系统通知 require_once 'sysmsg.model.php'; $sysmsgM = new sysmsg_model($this->db, $this->def); $msg = $data['status'] == 2 ? '新闻《'.$news['title'].'》审核未通过;原因:'.$data['statusbody'] : '新闻《'.$news['title'].'》审核通过'; $sysmsgM -> addInfo(array('uid' => $uid,'usertype'=>4,'content'=>$msg)); $return = array( 'errcode' => 9, 'msg' => '培训机构新闻(ID:'.$id.')审核设置成功!' ); }else{ $return = array( 'errcode' => 8, 'msg' => '培训机构新闻(ID:'.$id.')审核设置失败!' ); } return $return; } } } ?>