renderError($validate['msg']); $this->renderSuccess('成功'); } /** * 企业商户认证申请(商务合作) * @return void */ public function applyMerchantCertified() { global $_W , $_GPC; $type = $_GPC['type'] ?: 'get'; // get 获取数据 | set 创建申请 $storeid = $_GPC['storeid']; // 商户id # 验证是否有申请条件 $validate = Member::validateMemberIdentity($_W['mid'],false); if (!$validate['status']) $this->renderError($validate['msg']); $identity_id = pdo_getcolumn(PDO_NAME . 'member',['id' => $_W['mid']],'identity_id'); if ($identity_id != 5) $this->renderError('非企业身份,禁止申请商户合作'); # 创建申请 if ($type == 'set') { $mobile = $_GPC['mobile']; // 手机号 $position = $_GPC['position']; // 职务 $name = $_GPC['name']; // 姓名 $code = $_GPC['code']; // 短信验证码 if (empty($storeid) || !is_numeric($storeid)) $this->renderError('缺少商户id'); if (empty($name)) $this->renderError('请输入姓名'); if (empty($position)) $this->renderError('请输入职务'); if (empty($mobile)) $this->renderError('请输入手机号'); if (!preg_match("/^1[3-9]\d{9}$/",$mobile)) $this->renderError('请输入正确的手机号'); $nameRes = Filter::init($name,$_W['source'],1); if ($nameRes['errno'] == 0) $this->renderError('姓名'.$nameRes['message']); $positionRes = Filter::init($position,$_W['source'],1); if ($positionRes['errno'] == 0) $this->renderError('职务'.$positionRes['message']); $this->checkCode($mobile,$code); $queryRes = pdo_get(PDO_NAME . 'merchant_certified',['storeid'=>$storeid,'status' => [0,1]],'status'); if ($queryRes) { $this->renderError($queryRes['status'] == 1 ? '商务合作认证申请已通过,请勿重复申请' : '商户合作认证申请信息已提交,请勿重复申请'); } $data = [ 'uniacid' => $_W['uniacid'], 'storeid' => $storeid, 'name' => trim($name), 'position' => trim($position), 'mobile' => $mobile, 'create_time' => time() ]; $insertRes = pdo_insert(PDO_NAME . 'merchant_certified',$data); if (!$insertRes) $this->renderError('认证申请失败'); $this->renderSuccess('已提交申请'); } else { if (empty($storeid)) $storeid = pdo_getcolumn(PDO_NAME . 'merchantuser',['mid' => $_W['mid']],'storeid'); $list = ['name' => '', 'position' => '', 'mobile' => '', 'remark' => '', 'status' => 0]; # 获取上次审核数据 $lastRes = pdo_getall(PDO_NAME . 'merchant_certified',['storeid' => $storeid],array_keys($list),'',' check_time desc',1); foreach ($lastRes as $lastRow) { $list = $lastRow; } $list['reject'] = $list['remark']; unset($list['remark']); $this->renderSuccess('数据返回成功',$list); } } /** * 教师认证申请 * @return void */ public function applyTeacherCertified() { global $_W , $_GPC; $type = $_GPC['type'] ?: 'get'; // get 获取上次申请数据 set 创建申请 $validate = Member::validateMemberIdentity($_W['mid']); if (!$validate['status']) $this->renderError($validate['msg']); if ($type == 'set') { $name = $_GPC['name']; // 姓名 $mobile = $_GPC['mobile']; // 手机号 $code = $_GPC['code']; // 短信验证码 $school_name = $_GPC['school_name']; // 学校名称 $faculty = $_GPC['faculty']; // 院系 $documents = $_GPC['documents']; // 教师工作证件 if (empty($name)) $this->renderError('请输入姓名'); if (empty($mobile)) $this->renderError('请输入手机号'); if (!preg_match("/^1[3-9]\d{9}$/",$mobile)) $this->renderError('请输入正确的手机号'); if (empty($school_name)) $this->renderError('请输入学校名称'); if (empty($faculty)) $this->renderError('请输入院系'); if (empty($documents)) $this->renderError('请上传教师工作证件'); $nameRes = Filter::init($name,$_W['source'],1); if ($nameRes['errno'] == 0) $this->renderError('姓名'.$nameRes['message']); $school_nameRes = Filter::init($school_name,$_W['source'],1); if ($school_nameRes['errno'] == 0) $this->renderError('学校名称'.$school_nameRes['message']); $facultyRes = Filter::init($faculty,$_W['source'],1); if ($facultyRes['errno'] == 0) $this->renderError('院系'.$facultyRes['message']); $documentsRes = Filter::init($documents,$_W['source'],2); if($documentsRes['errno'] == 0) $this->renderError('教师工作证件'.$documentsRes['message']); $this->checkCode($mobile,$code); $queryRes = pdo_get(PDO_NAME . 'member_teacher_certified',['mid'=>$_W['mid'],'status' => [0,1]],'status'); if ($queryRes) { $this->renderError($queryRes['status'] == 1 ? '教师认证申请已通过,请勿重复申请' : '教师认证申请信息已提交,请勿重复申请'); } $data = [ 'uniacid' => $_W['uniacid'], 'mid' => $_W['mid'], 'name' => trim($name), 'mobile' => trim($mobile), 'school_name' => trim($school_name), 'faculty' => trim($faculty), 'documents' => trim($documents), 'create_time' => time() ]; $insertRes = pdo_insert(PDO_NAME . 'member_teacher_certified',$data); if (!$insertRes) $this->renderError('认证申请失败'); $this->renderSuccess('已提交申请'); } else { $list = ['name' => '', 'mobile' => '', 'school_name' => '', 'faculty' => '', 'documents' => '', 'remark' => '', 'status' => 0]; # 获取上次审核数据 $lastRes = pdo_getall(PDO_NAME . 'member_teacher_certified',['mid' => $_W['mid']],array_keys($list),'',' certified_time desc',1); foreach ($lastRes as $lastRow) { $lastRow['documents'] = tomedia($lastRow['documents']); $list = $lastRow; } $list['reject'] = $list['remark']; unset($list['remark']); $this->renderSuccess('数据返回成功',$list); } } /** * 达人认证申请 * @return void */ public function applyBloggerCertified() { global $_W , $_GPC; $type = $_GPC['type'] ?: 'get'; // get 获取上次申请数据 set 创建申请 $validate = Member::validateMemberIdentity($_W['mid']); if (!$validate['status']) $this->renderError($validate['msg']); if ($type == 'set') { $name = $_GPC['name']; // 姓名/昵称 $mobile = $_GPC['mobile']; // 联系电话 $code = $_GPC['code']; // 短信验证码 $screenshot = $_GPC['screenshot']; // 请上传其他平台粉丝截图 if (empty($name)) $this->renderError('请输入姓名'); if (empty($mobile)) $this->renderError('请输入手机号'); if (!preg_match("/^1[3-9]\d{9}$/",$mobile)) $this->renderError('请输入正确的手机号'); if (empty($screenshot)) $this->renderError('请上传其他平台粉丝截图'); $nameRes = Filter::init($name,$_W['source'],1); if ($nameRes['errno'] == 0) $this->renderError('姓名'.$nameRes['message']); $screenshotRes = Filter::init($screenshot,$_W['source'],2); if($screenshotRes['errno'] == 0) $this->renderError('其他平台粉丝截图'.$screenshotRes['message']); $this->checkCode($mobile,$code); $queryRes = pdo_get(PDO_NAME . 'member_daren_certified',['mid'=>$_W['mid'],'status' => [0,1]],'status'); if ($queryRes) { $this->renderError($queryRes['status'] == 1 ? '达人认证申请已通过,请勿重复申请' : '达人认证申请信息已提交,请勿重复申请'); } $data = [ 'uniacid' => $_W['uniacid'], 'mid' => $_W['mid'], 'name' => trim($name), 'mobile' => $mobile, 'screenshot' => $screenshot, 'create_time' => time() ]; $insertRes = pdo_insert(PDO_NAME . 'member_daren_certified',$data); if (!$insertRes) $this->renderError('认证申请失败'); $this->renderSuccess('已提交申请'); } else { $list = ['name' => '', 'mobile' => '', 'screenshot' => '', 'remark' => '', 'status' => 0]; # 获取上次审核数据 $lastRes = pdo_getall(PDO_NAME . 'member_daren_certified',['mid' => $_W['mid']],array_keys($list),'',' certified_time desc',1); foreach ($lastRes as $lastRow) { $lastRow['screenshot'] = tomedia($lastRow['screenshot']); $list = $lastRow; } $list['reject'] = $list['remark']; unset($list['remark']); $this->renderSuccess('数据返回成功',$list); } } /** * 短信验证码验证 * @param $mobile * @param $code * @return void */ private function checkCode($mobile,$code) { $pin_info = pdo_get('wlmerchant_pincode' , ['mobile' => $mobile]); if (empty($pin_info)) { $this->renderError('验证码错误'); } if ($pin_info['time'] < time() - 300) { $this->renderError('验证码已过期,请重新获取'); } if ($code != $pin_info['code']) $this->renderError('验证码错误'); } }