find($id); $where['where_id'] = $id; if ($type == 1) { $where['status'] = 4; } else { $where['status'] = 3; } $where['fdate'] = time(); $where['chdate'] = time(); Dever::db('work/info')->update($where); $log = Dever::db('work/info_log')->find(array('info_id'=>$id)); $w['where_id'] = $log['id']; $w['fdate'] = time(); if($type == 1){ $w['cloce_date'] = time(); } Dever::db('work/info_log')->update($w); return 'ok'; } } public function updateInfo($id,$name,$data) { $mobile = Dever::param('mobile',$data); $name = Dever::param('name',$data); $user = Dever::db('work/user')->find(array('mobile'=>$mobile)); if ($name && $user['name'] != $name) { Dever::db('work/user')->update(array('where_id'=>$user['id'],'name'=>$name)); } $info = Dever::db('work/info')->find($id); if ($info && !$info['work_num']) { $w['where_id'] = $id; $w['work_num'] = $this->getWorkId(); Dever::db('work/info')->update($w); } } public function getWorkId() { $where['work_num'] = Dever::order('W'); $state = Dever::db('work/info')->one($where); if (!$state) { return $where['work_num']; } else { return $this->getWorkId(); } } public function getUser($id) { $info = Dever::db('work/info')->find($id); $data= Dever::db('work/user')->find(array('mobile'=>$info['mobile'])); if ($data) { $html['user'] = $data['name'].'
'.$data['mobile']; if (isset($info['fdate']) && $info['fdate']) { $fdate = date('Y-m-d H:i:s',$info['fdate']); } else { $fdate = ''; } $html['time'] = date('Y-m-d H:i:s',$info['cdate']).'
'.$fdate; $cate_id = explode(',',$info['cate_id']); $cate_name = ''; $question_name = ''; if (isset($cate_id[0]) && $cate_id[0]) { $cate = Dever::db('work/q_cate')->find($cate_id[0]); $cate_name = $cate['name']; } if (isset($cate_id[1]) && $cate_id[1]) { $question = Dever::db('work/question')->find($cate_id[1]); $question_name = $question['name']; } $html['cate_name'] = $cate_name.'
'.$question_name; return $html; } else { return ''; } } public function xietiao_api($id) { $data = Dever::db('work/branch')->find($id); $data['group'] = explode(',',$data['group']); $group = Dever::db('manage/group')->find($data['group'][0]); $admin = Dever::load('manage/company')->getAdmin($group['id'], $data['group'][1]); // Dever::db('manage/admin')->fetchAll('select * from churen_manage_admin where group='.$group['id'].' and id !='.$data['group'][1]); // state(array('group'=>$group['id'])); $gad = Dever::db('manage/admin')->find($data['group'][1]); $res = array(); foreach ($admin as $k => $v) { $res[$k] = $v['username'].'
'.$v['email']; } $html = array(); $html['group'] = $group['name'].'
'.$gad['username']; $html['name'] = implode('
',$res); return $html; } #获取客户信息 public function search_api() { $value = Dever::input('value'); if(!preg_match('/^1[3|5|6|7|8|9]\d{9}$/', $value)){ return '代理商手机号不正确'; } if ($value) { $user = Dever::db('work/user')->find(array('mobile'=>$value)); if (!$user) { $uid = $this->member($value); $user = Dever::db('work/user')->find($uid); } if ($user){ $table = array(); $role_name = ''; $type = ''; $table['head'] = array('名称', '电话号码', '平台' ,'角色'); if ($user['agent_uid'] && $user['agent_uid'] > 0) { $member = Dever::db('agent/member')->find($user['agent_uid']); if ($member['role']) { $role = Dever::db('setting/role')->find($member['role']); if ($role) { $role_name = $role['name']; } } $type = '代理商'; if ($user['option_uid'] && $user['option_uid']>0) { $type = $type.'
期权账户'; } if ($user['passport_uid'] && $user['passport_uid']>0) { $type = $type.'
小程序'; } } else { if ($user['option_uid'] && $user['option_uid']>0) { $type = '期权账户'; if ($user['passport_uid'] && $user['passport_uid']>0) { $type = $type.'
小程序'; } } else { if ($user['passport_uid'] && $user['passport_uid']>0) { $type = '小程序'; } else { return '无系统关联关系'; } } } $table['body'] = array(); $table['body'] = array($user['name'], $user['mobile'], $type, $role_name); $result[] = array ( 'type' => 'table', 'content' => $table, ); $html = Dever::show('', $result, false, false); return array('html' => $html, 'data' => array('name' => $user['name'])); } } } private function member($value) { $uid =''; $member = Dever::db('agent/member')->find(array('mobile'=>$value)); if ($member) { $uid = $this->upUser($member); } if ($uid && $uid > 0) { $option = Dever::db('option/member')->find(array('mobile'=>$value)); $user = Dever::db('work/user')->find($uid); if ($option) { $type = $user['type'].',2'; $uid = Dever::db('work/user')->update(array('where_id'=>$uid,'type'=>$type,'option_uid'=>$option['id'])); if ($uid && $uid > 0) { $passport = Dever::db('passport/user')->find(array('mobile'=>$value)); if ($passport) { $user = Dever::db('work/user')->find($uid); $type = $user['type'].',3'; $uid = Dever::db('work/user')->update(array('where_id'=>$uid,'type'=>$type,'passport_uid'=>$passport['id'])); } } } else { $passport = Dever::db('passport/user')->find(array('mobile'=>$value)); $uid = $this->upUser($passport); } } else { $option = Dever::db('option/member')->find(array('mobile'=>$value)); if($option) { $uid = $this->upUser(false,$option); $user = Dever::db('work/user')->find($uid); if ($uid && $uid > 0){ $passport = Dever::db('passport/user')->find(array('mobile'=>$value)); if ($passport) { $user = Dever::db('work/user')->find($uid); $type = $user['type'].',3'; $uid = Dever::db('work/user')->update(array('where_id'=>$uid,'type'=>$type,'passport_uid'=>$passport['id'])); } } } else { $passport = Dever::db('passport/user')->find(array('mobile'=>$value)); if ($passport) { $uid = $this->upUser(false,false,$passport); } if (!$uid) { $uid = Dever::db('work/user')->insert(array('mobile'=>$value)); } } } return $uid; } private function upUser($member = false, $option = false, $passport = false) { if ($member) { $w['agent_uid'] = $member['id']; $w['name'] = $member['name']; $w['mobile'] = $member['mobile']; $w['idcard'] = $member['idcard']; $w['username'] = $member['username']; $w['avatar'] = $member['avatar']; $w['type'] = 1; } elseif ($option) { $w['option_uid'] = $option['id']; $w['name'] = $option['name']; $w['mobile'] = $option['mobile']; $w['idcard'] = $option['idcard']; $w['type'] = 2; } elseif ($passport) { $w['passport_uid'] = $passport['id']; $w['name'] = $passport['username']; $w['mobile'] = $passport['mobile']; $w['username'] = $passport['truename']; $w['avatar'] = $passport['avatar']; } if ($w) { $uid = Dever::db('work/user')->insert($w); return $uid; } } public function admin($id) { $data = Dever::db('work/product')->find(array($id)); $admin_id = explode(',',$data['admin_id']); $admin = Dever::db('manage/admin')->find($admin_id[1]); if ($admin) { return $admin['username'].'
'.$admin['email']; } } public function branch($id) { $group = Dever::db('manage/group')->find($id); return $group['name']; } #工单列表导出 public function out_info($data) { $header = array('客户名称','手机号','问题类型','问题类型描述','优先级','问题描述','处理结果','创建时间','完成时间'); $body = array(); $config = Dever::db('work/info')->config['config_status']; foreach ($data as $k => $v ) { $cate_name = ''; $cate_id = explode(',',$v['cate_id']); if (isset($cate_id[0]) && $cate_id[0]) { $cate = Dever::db('work/q_cate')->find(array('id'=>$cate_id[0])); if ($cate) { $cate_name = $cate['name']; } } $question_name = ''; if (isset($cate_id[1]) && $cate_id[1]) { $question = Dever::db('work/question')->find(array('id'=>$cate_id[1])); if ($question) { $question_name = $question['name']; } } $priority_name = ''; $priority = Dever::db('work/priority')->find(array('id'=>$v['priority_id'])); if ($priority) { $priority_name = $priority['name']; } $status_name = Dever::status($config,$v['status']); $cdate = date('Y-m-d H:i',$v['cdate']); $fdate = ''; if ($v['fdate']){ $fdate = date('Y-m-d H:i',$v['fdate']); } $d = array ( $v['name'], $v['mobile'], $cate_name, $question_name, $priority_name, $v['desc'], $status_name, $cdate, $fdate, ); $body[] = $d; } $file = Dever::input('excel_name'); return Dever::excelExport($body, $header, $file); } public function getTotal($admin_id,$status=false) { $company = Dever::load('manage/company.get'); $where = array(); if ($status){ $where['status'] = $status; $where['appoint_id'] = $admin_id; } else { $where['audit_admin'] = $admin_id; } if ($company) { $where['company_id'] = $company; } $data = Dever::db('work/info')->getTotal($where); return $data; } }