Bläddra i källkod

注册流程更改

linwu 1 år sedan
förälder
incheckning
a0b2861a57

+ 14 - 15
app/admin/controller/Home.php

@@ -23,23 +23,22 @@ class Home extends BaseController
 	public function index()
 	public function index()
 	{
 	{
 		$access_admin = session('access_admin');
 		$access_admin = session('access_admin');
-		$admin = AdminModel::findOrEmpty($access_admin['id']);
-		$menulist = MenuModel::where(['mtype'=>'admin','status'=>1])->where('id','in',$admin->powerids)->order(['pid'=>'asc','priority'=>'asc','id'=>'asc'])->select()->toArray();
-		$powerarr = array();
-//		$poweridsarr = ($admin->powerids==null||empty($admin->powerids)) ? [] : explode(",", $admin->powerids);
-		if (!empty($menulist)){
-			foreach ($menulist as $k=>$v){
-				if ($v['pid']==0){
-					$v['children'] = array();
-					$powerarr[$v['id']] = $v;
-				}else {
-					$powerarr[$v['pid']]['children'][] = $v;
-				}
-			}
-		}
+//		$admin = AdminModel::findOrEmpty($access_admin['id']);
+//		$menulist = MenuModel::where(['mtype'=>'admin','status'=>1])->where('id','in',$admin->powerids)->order(['pid'=>'asc','priority'=>'asc','id'=>'asc'])->select()->toArray();
+//		$powerarr = array();
+//		if (!empty($menulist)){
+//			foreach ($menulist as $k=>$v){
+//				if ($v['pid']==0){
+//					$v['children'] = array();
+//					$powerarr[$v['id']] = $v;
+//				}else {
+//					$powerarr[$v['pid']]['children'][] = $v;
+//				}
+//			}
+//		}
 		return view('index', [
 		return view('index', [
 			'access_admin'	=> $access_admin,
 			'access_admin'	=> $access_admin,
-			'powerarr'		=> $powerarr
+//			'powerarr'		=> $powerarr
 		]);
 		]);
 	}
 	}
 	
 	

+ 8 - 12
app/admin/controller/Sinpage.php

@@ -20,22 +20,18 @@ class Sinpage extends BaseController
 		$sinpage = SinpageModel::where(1)->find();
 		$sinpage = SinpageModel::where(1)->find();
 		if ($sinpage==null){
 		if ($sinpage==null){
 			SinpageModel::create([
 			SinpageModel::create([
-				'aboutus'		=> input('aboutus/s'),
-				'privacy'		=> input('privacy/s'),
-				'service'		=> input('service/s'),
-				'contact'		=> input('contact/s'),
-                'wxmp'		    => input('wxmp/s'),
-				'apptreaty'		=> input('apptreaty/s')
+				'woman_aboutus'		=> input('woman_aboutus/s'),
+				'woman_privacy'		=> input('woman_privacy/s'),
+				'woman_service'		=> input('woman_service/s'),
+				'woman_contact'		=> input('woman_contact/s'),
 			]);
 			]);
 		}else{
 		}else{
 			SinpageModel::update([
 			SinpageModel::update([
 				'id'			=> $sinpage['id'],
 				'id'			=> $sinpage['id'],
-				'aboutus'		=> input('aboutus/s'),
-				'privacy'		=> input('privacy/s'),
-				'service'		=> input('service/s'),
-				'contact'		=> input('contact/s'),
-                'wxmp'		    => input('wxmp/s'),
-				'apptreaty'		=> input('apptreaty/s')
+				'woman_aboutus'		=> input('woman_aboutus/s'),
+				'woman_privacy'		=> input('woman_privacy/s'),
+				'woman_service'		=> input('woman_service/s'),
+				'woman_contact'		=> input('woman_contact/s'),
 			]);
 			]);
 		}
 		}
 		exit(json_encode(array(
 		exit(json_encode(array(

+ 1 - 1
app/admin/controller/Slide.php

@@ -3,7 +3,7 @@ namespace app\admin\controller;
 
 
 use think\facade\Session;
 use think\facade\Session;
 use app\admin\BaseController;
 use app\admin\BaseController;
-use app\common\model\Slide as SlideModel;
+use app\common\model\SlideWoman as SlideModel;
 
 
 class Slide extends BaseController
 class Slide extends BaseController
 {
 {

+ 100 - 9
app/admin/view/index.html

@@ -80,22 +80,113 @@
 							</dd>
 							</dd>
 						</dl>
 						</dl>
 					</li>
 					</li>
-
-					{volist name="powerarr" id="pmenu"}
 					<li class="layui-nav-item">
 					<li class="layui-nav-item">
-						<a href="javascript:;" lay-tips="{$pmenu.title}">
-							<i class="layui-icon {$pmenu.layicon}"></i>
-							<cite>{$pmenu.title}</cite>
+						<a href="javascript:;" lay-tips="招聘">
+							<i class="layui-icon layui-icon-diamond"></i>
+							<cite>招聘</cite>
+						</a>
+						<dl class="layui-nav-child">
+							<dd>
+								<a lay-href="/admin.php/comjobs/comjobslist.html" lay-text="招聘信息">招聘信息</a>
+							</dd>
+							<dd>
+								<a lay-href="/admin.php/comjobs/loglist.html" lay-text="报名记录">报名记录</a>
+							</dd>
+							<dd>
+								<a lay-href="/admin.php/comjobs/catelist.html" lay-text="岗位类型">岗位类型</a>
+							</dd>
+						</dl>
+					</li>
+					<li class="layui-nav-item">
+						<a href="javascript:;" lay-tips="用户">
+							<i class="layui-icon layui-icon-user"></i>
+							<cite>用户</cite>
+						</a>
+						<dl class="layui-nav-child">
+							<dd>
+								<a lay-href="/admin.php/user/userlist.html" lay-text="系统用户">系统用户</a>
+							</dd>
+							<dd>
+								<a lay-href="/admin.php/user/userpublic.html" lay-text="公海用户">公海用户</a>
+							</dd>
+							<dd>
+								<a lay-href="/admin.php/user/groupslist.html" lay-text="用户组">用户组</a>
+							</dd>
+							<dd>
+								<a lay-href="/admin.php/user/willlist.html" lay-text="求职意向">求职意向</a>
+							</dd>
+							<dd>
+								<a lay-href="/admin.php/user/tags.html" lay-text="用户标签">用户标签</a>
+							</dd>
+						</dl>
+					</li>
+					<li class="layui-nav-item">
+						<a href="javascript:;" lay-tips="公司">
+							<i class="layui-icon layui-icon-engine"></i>
+							<cite>公司</cite>
+						</a>
+						<dl class="layui-nav-child">
+							<dd>
+								<a lay-href="/admin.php/worker/workerlist.html" lay-text="公司列表">公司列表</a>
+							</dd>
+						</dl>
+					</li>
+					<li class="layui-nav-item">
+						<a href="javascript:;" lay-tips="培训意愿">
+							<i class="layui-icon layui-icon-form"></i>
+							<cite>培训意愿</cite>
+						</a>
+						<dl class="layui-nav-child">
+							<dd>
+								<a lay-href="/admin.php/train/index.html" lay-text="培训列表">培训列表</a>
+							</dd>
+							<dd>
+								<a lay-href="/admin.php/trainjoin/index.html" lay-text="报名记录">报名记录</a>
+							</dd>
+						</dl>
+					</li>
+					<li class="layui-nav-item">
+						<a href="javascript:;" lay-tips="管理">
+							<i class="layui-icon layui-icon-set"></i>
+							<cite>管理</cite>
+						</a>
+						<dl class="layui-nav-child">
+							<dd>
+								<a lay-href="/admin.php/admin/adminlist.html" lay-text="后台管理员">后台管理员</a>
+							</dd>
+							<dd>
+								<a lay-href="/admin.php/admin/myinfo.html" lay-text="我的信息">我的信息</a>
+							</dd>
+							<dd>
+								<a lay-href="/admin.php/admin/mypassword.html" lay-text="修改密码">修改密码</a>
+							</dd>
+						</dl>
+					</li>
+					<li class="layui-nav-item">
+						<a href="javascript:;" lay-tips="设置">
+							<i class="layui-icon layui-icon-util"></i>
+							<cite>设置</cite>
+						</a>
+						<dl class="layui-nav-child">
+							<dd>
+								<a lay-href="/admin.php/slide/index.html" lay-text="轮播图片">轮播图片</a>
+							</dd>
+							<dd>
+								<a lay-href="/admin.php/sinpage/index.html" lay-text="单页内容">单页内容</a>
+							</dd>
+						</dl>
+					</li>
+					<li class="layui-nav-item">
+						<a href="javascript:;" lay-tips="意见反馈">
+							<i class="layui-icon layui-icon-chat"></i>
+							<cite>意见反馈</cite>
 						</a>
 						</a>
 						<dl class="layui-nav-child">
 						<dl class="layui-nav-child">
-							{volist name="pmenu.children" id="menu"}
 							<dd>
 							<dd>
-								<a lay-href="{:url($menu.urlstr, $menu.urlarr)}" lay-text="{$menu.title}">{$menu.title}</a>
+								<a lay-href="/admin.php/feedback/feedbacklist.html" lay-text="意见反馈">意见反馈</a>
 							</dd>
 							</dd>
-							{/volist}
 						</dl>
 						</dl>
 					</li>
 					</li>
-					{/volist}
 				</ul>
 				</ul>
 			</div>
 			</div>
 		</div>
 		</div>

+ 4 - 46
app/admin/view/set/sinpage.html

@@ -9,69 +9,27 @@
 						<div class="layui-form-item">
 						<div class="layui-form-item">
 							<label class="layui-form-label">关于我们</label>
 							<label class="layui-form-label">关于我们</label>
 							<div class="layui-input-block">
 							<div class="layui-input-block">
-								<textarea name="aboutus" placeholder="请输入..." rows="15" class="layui-textarea">{$sinpage.aboutus}</textarea>
-								<!-- 
-								<textarea class="layui-textarea" name="aboutus" id="aboutus" placeholder="请输入详情" style="display: none"
-								 lay-verify="editcontent"> 
-											{$sinpage['aboutus']}
-										</textarea> -->
+								<textarea name="aboutus" placeholder="请输入..." rows="15" class="layui-textarea">{$sinpage.woman_aboutus}</textarea>
 							</div>
 							</div>
 						</div>
 						</div>
 						<div class="layui-form-item">
 						<div class="layui-form-item">
 							<label class="layui-form-label">隐私政策</label>
 							<label class="layui-form-label">隐私政策</label>
 							<div class="layui-input-block">
 							<div class="layui-input-block">
-								<textarea name="privacy" placeholder="请输入..." rows="15" class="layui-textarea">{$sinpage.privacy}</textarea>
-								
-								<!-- <textarea class="layui-textarea" name="privacy" id="privacy" placeholder="请输入详情" style="display: none"
-								 lay-verify="editcontent">
-											{$sinpage['privacy']}
-										</textarea> -->
+								<textarea name="privacy" placeholder="请输入..." rows="15" class="layui-textarea">{$sinpage.woman_privacy}</textarea>
 							</div>
 							</div>
 						</div>
 						</div>
 						<div class="layui-form-item">
 						<div class="layui-form-item">
 							<label class="layui-form-label">服务协议</label>
 							<label class="layui-form-label">服务协议</label>
 							<div class="layui-input-block">
 							<div class="layui-input-block">
-								<textarea name="service" placeholder="请输入..." rows="15" class="layui-textarea">{$sinpage.service}</textarea>
-								<!-- <textarea class="layui-textarea" name="service" id="service" placeholder="请输入详情" style="display: none"
-								 lay-verify="editcontent">
-											{$sinpage['service']}
-										</textarea> -->
+								<textarea name="service" placeholder="请输入..." rows="15" class="layui-textarea">{$sinpage.woman_service}</textarea>
 							</div>
 							</div>
 						</div>
 						</div>
 						<div class="layui-form-item">
 						<div class="layui-form-item">
 							<label class="layui-form-label">联系客服</label>
 							<label class="layui-form-label">联系客服</label>
 							<div class="layui-input-block">
 							<div class="layui-input-block">
-								<textarea name="contact" placeholder="请输入..." rows="15" class="layui-textarea">{$sinpage.contact}</textarea>
-								<!-- <textarea class="layui-textarea" name="contact" id="contact" placeholder="请输入详情" style="display: none"
-								 lay-verify="editcontent">
-											{$sinpage['contact']}
-										</textarea> -->
+								<textarea name="contact" placeholder="请输入..." rows="15" class="layui-textarea">{$sinpage.woman_contact}</textarea>
 							</div>
 							</div>
 						</div>
 						</div>
-						
-						
-						<div class="layui-form-item">
-							<label class="layui-form-label">APP隐私协议</label>
-							<div class="layui-input-block">
-								<textarea name="apptreaty" placeholder="请输入..." rows="15" class="layui-textarea">{$sinpage.apptreaty}</textarea>
-								<!-- <textarea class="layui-textarea" name="contact" id="contact" placeholder="请输入详情" style="display: none"
-								 lay-verify="editcontent">
-											{$sinpage['contact']}
-										</textarea> -->
-							</div>
-						</div>
-
-						<div class="layui-form-item">
-							<label class="layui-form-label">嵌入公众号说明</label>
-							<div class="layui-input-block">
-								<textarea name="wxmp" placeholder="请输入..." rows="15" class="layui-textarea">{$sinpage.wxmp}</textarea>
-								<!-- <textarea class="layui-textarea" name="contact" id="contact" placeholder="请输入详情" style="display: none"
-								 lay-verify="editcontent">
-											{$sinpage['contact']}
-										</textarea> -->
-							</div>
-						</div>
-						
 						<div class="layui-form-item">
 						<div class="layui-form-item">
 							<div class="layui-input-block">
 							<div class="layui-input-block">
 								<button class="layui-btn" lay-submit lay-filter="LAY-set-sinpage-form-submit">确认修改</button>
 								<button class="layui-btn" lay-submit lay-filter="LAY-set-sinpage-form-submit">确认修改</button>

+ 3 - 2
app/admin/view/set/slideform.html

@@ -11,8 +11,9 @@
 							<label class="layui-form-label">位置</label>
 							<label class="layui-form-label">位置</label>
 							<div class="layui-input-block">
 							<div class="layui-input-block">
 								<select name="pagetab">
 								<select name="pagetab">
-									<option value="index" {$slide.pagetab==='index' ? 'selected' : '' }>招聘主页</option>
-									<option value="worker" {$slide.pagetab==='worker' ? 'selected' : '' }>公司主页</option>
+
+									<option value="index">首页</option>
+									<option value="index" {$slide.pagetab==='index' ? 'selected' : '' }>首页</option>
 								</select>
 								</select>
 							</div>
 							</div>
 						</div>
 						</div>

+ 1 - 2
app/admin/view/set/slidelist.html

@@ -13,8 +13,7 @@
 					<div class="layui-input-block">
 					<div class="layui-input-block">
 						<select name="pagetab">
 						<select name="pagetab">
 							<option value="">全部位置</option>
 							<option value="">全部位置</option>
-							<option value="index">招聘主页</option>
-							<option value="worker">公司主页</option>
+							<option value="index">首页</option>
 						</select>
 						</select>
 					</div>
 					</div>
 				</div>
 				</div>

+ 8 - 0
app/common/model/Comjobs.php

@@ -67,9 +67,17 @@ class Comjobs extends Model
         'updatetime' => 'timestamp:Y-m-d H:i:s',
         'updatetime' => 'timestamp:Y-m-d H:i:s',
         'createtime' => 'timestamp:Y-m-d H:i:s',
         'createtime' => 'timestamp:Y-m-d H:i:s',
     ];
     ];
+
     // 设置JSON数据返回数组
     // 设置JSON数据返回数组
     protected $jsonAssoc = true;
     protected $jsonAssoc = true;
 
 
+    //查询范围
+    protected $globalScope = ['sex'];
+    public function scopeSex($query)
+    {
+        $query->whereIn('sex',[0,2]);
+    }
+
     public function getWtypeTextAttr($value, $data)
     public function getWtypeTextAttr($value, $data)
     {
     {
         $wtype = [1 => '按月', 2 => '按时', 3 => '按件', 4 => '按项目', 5 => '其他'];
         $wtype = [1 => '按月', 2 => '按时', 3 => '按件', 4 => '按项目', 5 => '其他'];

+ 25 - 0
app/common/model/SlideWoman.php

@@ -0,0 +1,25 @@
+<?php
+namespace app\common\model;
+
+use think\Model;
+
+class SlideWoman extends Model
+{
+	// 设置字段信息
+    protected $schema = [
+        'id'			=> 'int',
+		'pagetab'		=> 'string',
+		'title'			=> 'string',
+		'tilpic'		=> 'string',
+		'stype'		    => 'tinyint',
+		'tilurl'		=> 'string',
+		'priority'		=> 'int'
+    ];
+	
+	public function getStypeTextAttr($value,$data)
+	{
+		$stype = [1=>'系统链接', 2=>'网络链接'];
+		return $stype[$data['stype']];
+	}
+	
+}

+ 3 - 3
app/mobile/controller/Ejobs.php

@@ -67,14 +67,14 @@ class Ejobs extends EmpBaseController
 
 
     public function listJob()
     public function listJob()
     {
     {
-        $page     = input('page/d', 1);
-        $size     = input('size/d', 20);
+        $page = input('page/d', 1);
+        $size = input('size/d', 20);
 
 
         $map      = [];
         $map      = [];
         $workerid = $this->worker->id;
         $workerid = $this->worker->id;
         $map[]    = ['workerid', '=', $workerid];
         $map[]    = ['workerid', '=', $workerid];
 
 
-        $status   = input('status/d', 1);
+        $status = input('status/d', 1);
         if (!empty($status)) {
         if (!empty($status)) {
             $map[] = ['status', '=', $status];
             $map[] = ['status', '=', $status];
         }
         }

+ 8 - 5
app/mobile/controller/Index.php

@@ -2,8 +2,7 @@
 
 
 namespace app\mobile\controller;
 namespace app\mobile\controller;
 
 
-use app\common\model\Slide as SlideModel;
-use app\common\model\Navigation as NavigationModel;
+use app\common\model\SlideWoman as SlideModel;
 use app\common\model\Comjobs as ComjobsModel;
 use app\common\model\Comjobs as ComjobsModel;
 use app\mobile\UserBaseController;
 use app\mobile\UserBaseController;
 
 
@@ -14,8 +13,12 @@ class Index extends UserBaseController
         //轮播图
         //轮播图
         $slide = SlideModel::where('pagetab', '=', 'index')->order(['priority' => 'desc', 'id' => 'desc'])->limit(10)->select();
         $slide = SlideModel::where('pagetab', '=', 'index')->order(['priority' => 'desc', 'id' => 'desc'])->limit(10)->select();
         //导航
         //导航
-        $navigation = NavigationModel::where('pagetab', '=', 'index')->order(['priority' => 'desc', 'id' => 'desc'])->select();
-
+        $navigation = [
+            ['title'=>'按月','tilurl'=>url('/jobs/index').'?type=1','tilpic'=>"https://linggong.jinjianghc.com/attachment/images/20221017/69ecf042019c1aa21d33e0d47cc9c535.png"],
+            ['title'=>'按时','tilurl'=>url('/jobs/index').'?type=2','tilpic'=>"https://linggong.jinjianghc.com/attachment/images/20221017/a0aad83651786e8f4b58b8b58d294c5a.png"],
+            ['title'=>'按件','tilurl'=>url('/jobs/index').'?type=3','tilpic'=>"https://linggong.jinjianghc.com/attachment/images/20221017/a0a399db96c6e0d0a6d7a3ced3491756.png"],
+            ['title'=>'按项目','tilurl'=>url('/jobs/index').'?type=4','tilpic'=>"https://linggong.jinjianghc.com/attachment/images/20221017/240c1f65071343575bf06ccbb060ef40.png"],
+        ];
         //列表
         //列表
         $map   = [];
         $map   = [];
         $map[] = ['createtime', '<=', time()];
         $map[] = ['createtime', '<=', time()];
@@ -33,7 +36,7 @@ class Index extends UserBaseController
 
 
         return view('index/index', [
         return view('index/index', [
                 'slide'      => $slide,
                 'slide'      => $slide,
-                'navigation' => $navigation,
+                'navigation' => json_encode($navigation),
                 'list'       => $list,
                 'list'       => $list,
             ]
             ]
         );
         );

+ 100 - 17
app/mobile/controller/Login.php

@@ -3,13 +3,15 @@
 namespace app\mobile\controller;
 namespace app\mobile\controller;
 
 
 use app\common\model\User;
 use app\common\model\User;
-use app\common\model\UserAuths;
+use app\common\model\UserAuths as UserAuthsModel;
 use app\common\model\Sinpage as SinpageModel;
 use app\common\model\Sinpage as SinpageModel;
 use app\common\model\User as UserModel;
 use app\common\model\User as UserModel;
 use app\common\model\RensheCode as RensheCodeModel;
 use app\common\model\RensheCode as RensheCodeModel;
 use app\common\model\ComjobsCate as ComjobsCateModel;
 use app\common\model\ComjobsCate as ComjobsCateModel;
 use app\common\model\UserWill as UserWillModel;
 use app\common\model\UserWill as UserWillModel;
 use app\common\model\Worker as WorkerModel;
 use app\common\model\Worker as WorkerModel;
+use app\common\service\SmsService;
+use think\facade\Session;
 
 
 class Login
 class Login
 {
 {
@@ -36,23 +38,13 @@ class Login
         $open_id = $param['openid'];
         $open_id = $param['openid'];
 
 
         //登录
         //登录
-        $auth = UserAuths::where(['identitytype' => 'weixin', 'identifier' => $open_id])->find();
+        $auth = UserAuthsModel::where(['identitytype' => 'weixin', 'identifier' => $open_id])->find();
         if (empty($auth)) {
         if (empty($auth)) {
-            $user = User::create([
-                'username'   => $param['nickname'],
-                'avatar'     => $param['headimgurl'],
-                'emp_time'   => [],
-                'user_tags'  => [],
-                'com_cate'   => [],
-                'work_place' => [],
-            ]);
-            $auth = UserAuths::create([
-                'userid'       => $user['id'],
-                'identitytype' => 'weixin',
-                'identifier'   => $open_id,
-                'logintime'    => time(),
-                'loginip'      => request()->ip(),
-            ]);
+            session('user.open_id', $open_id);
+            session('user.nickname', $param['nickname']);
+            session('user.headimgurl', $param['headimgurl']);
+
+            my_redirect('/login/mobile');
         } else {
         } else {
             $auth->logintime = time();
             $auth->logintime = time();
             $auth->loginip   = request()->ip();
             $auth->loginip   = request()->ip();
@@ -168,6 +160,97 @@ class Login
         page_result(0, '操作成功');
         page_result(0, '操作成功');
     }
     }
 
 
+    /**
+     * 手机登录
+     */
+    public function mobile()
+    {
+        return view('login/mobile');
+    }
+
+    public function mobilePost()
+    {
+        $mobile = input('mobile/s', '');
+        $verify = input('verify/s', '');
+
+        $session_verify = session('verify');
+        if ($verify != $session_verify) {
+            page_result(1, '验证码错误!');
+        }
+
+        $auth = UserAuthsModel::where(['identitytype' => 'mobile', 'identifier' => $mobile])->find();
+        if (empty($auth)) {
+            $open_id    = session('user.open_id');
+            $nickname   = session('user.nickname');
+            $headimgurl = session('user.headimgurl');
+            $user       = User::create([
+                'nickname'   => $nickname,
+                'avatar'     => $headimgurl ?? '',
+                'mobile'     => $mobile,
+                'groupsid'     => 7,
+                'education'     => 7,
+                'emp_time'   => [],
+                'user_tags'  => [],
+                'com_cate'   => [],
+                'work_place' => [],
+                'createtime' => time(),
+            ]);
+            $auth = UserAuthsModel::create([
+                'userid'       => $user['id'],
+                'identitytype' => 'weixin',
+                'identifier'   => $open_id,
+                'logintime'    => time(),
+                'loginip'      => request()->ip(),
+            ]);
+            UserAuthsModel::create([
+                'userid'       => $user['id'],
+                'identitytype' => 'mobile',
+                'identifier'   => $mobile,
+                'logintime'    => time(),
+                'loginip'      => request()->ip(),
+            ]);
+        } else {
+            $auth->logintime = time();
+            $auth->loginip   = request()->ip();
+            $auth->save();
+        }
+
+        session('user.id', $auth['userid']);
+
+        page_result();
+    }
+
+    public function sendSms()
+    {
+        Session::delete('verify');
+
+        $rand       = rand(100000, 999999);
+        $mobile     = trim(input('post.mobile'));
+        $preg_phone = '/^1[34578]\d{9}$/ims';
+
+        $rtn = [];
+
+        if (!$mobile) {
+            page_result(1, '手机号为空');
+        } else {
+            if (preg_match($preg_phone, $mobile)) {
+                $sms = new SmsService();
+                $res = $sms->send($mobile, 'verification', [$rand]);
+
+                if ($res['code'] == 0) {
+                    $rtn['code'] = 0;
+                    Session::set('verify', $rand);
+                } else {
+                    page_result(1, '网络故障,请重试');
+                }
+            } else {
+                page_result(1, '手机号格式不正确');
+            }
+        }
+
+        page_result();
+    }
+
     /**
     /**
      * 雇主注册
      * 雇主注册
      */
      */

+ 1 - 0
app/mobile/controller/My.php

@@ -21,6 +21,7 @@ class My extends UserBaseController
     {
     {
         $worker = WorkerModel::where('userid', $this->user->id)->find();
         $worker = WorkerModel::where('userid', $this->user->id)->find();
         return view('my/index', [
         return view('my/index', [
+                'user' => $this->user,
                 'worker' => $worker ?? 'false',
                 'worker' => $worker ?? 'false',
             ]
             ]
         );
         );

+ 121 - 0
app/mobile/view/login/mobile.html

@@ -0,0 +1,121 @@
+{extend name="public/base"/}
+{block name="css"}
+    <style>
+        .van-nav-bar__text, .van-nav-bar .van-icon{color:white;}
+        .uploader-box{
+            width:120px;
+            height:120px;
+            margin:0 auto;
+        }
+    </style>
+{/block}
+{block name="body"}
+    <van-nav-bar
+            class="bg-pink"
+            fixed="true"
+    >
+        <template #title>
+            <span class="text-white">绑定手机号</span>
+        </template>
+    </van-nav-bar>
+<div style="width:100%;height:46px;"></div>
+
+<van-cell-group>
+    <van-field v-model="form.mobile" required label="电话" placeholder="请输入电话"></van-field>
+    <van-field
+            v-model="form.verify"
+            required
+            center
+            clearable
+            label="短信验证码"
+            placeholder="请输入短信验证码"
+    >
+        <template #button>
+            <van-button size="small" :disabled="second != 60" type="primary" @click="sendSms">{{second_text}}</van-button>
+        </template>
+    </van-field>
+</van-cell-group>
+<div style="margin: 16px;">
+    <van-button block type="info" @click="onSubmit">确定</van-button>
+</div>
+{/block}
+{block name="script"}
+    <script>
+        new Vue({
+            el: '#app',
+            data() {
+                return {
+                    form: {
+                        mobile: '',
+                        verify: '',
+                    },
+                    second: 60,
+                    is_send: false,
+                    set: 0,
+                };
+            },
+            methods: {
+                onSubmit() {
+                    const fields = [
+                        {key: 'mobile', tip: '请输入电话'},
+                        {key: 'verify', tip: '请输入验证码'},
+                    ];
+                    for (let i = 0; i < fields.length; i++) {
+                        if (this.form[fields[i].key].trim() === '') {
+                            this.$toast(fields[i].tip);
+                            return false;
+                        }
+                    }
+
+                    let self = this;
+                    $.post("{:url('/login/mobilePost')}", this.form, function (json) {
+                        if (json.code == 0) {
+                            location.href = '/';
+                        } else {
+                            self.$toast(json.msg);
+                        }
+                    }, 'json')
+                },
+                sendSms() {
+                    if (this.is_send) {
+                        return false;
+                    }
+
+                    this.is_send = true;
+                    const _this = this;
+                    if (this.form.mobile == '') {
+                        this.$toast('请输入电话');
+                        return false;
+                    }
+                    $.post("{:url('/login/sendSms')}", {mobile:this.form.mobile}, function (json) {
+                        if (json.code == 0) {
+                            _this.dealSms();
+                        } else {
+                            _this.$toast(json.msg);
+                        }
+                    }, 'json')
+                },
+                dealSms() {
+                    const _this = this;
+                    this.set = setInterval(function(){
+                        _this.second--;
+                        if (_this.second == 0) {
+                            _this.second = 60;
+                            _this.is_send = false;
+                            clearInterval(_this.set);
+                        }
+                    },1000);
+                },
+            },
+            computed: {
+                second_text() {
+                    if (this.second == 60) {
+                        return '发送验证码';
+                    } else {
+                        return `${this.second}秒`
+                    }
+                },
+            }
+        });
+    </script>
+{/block}

+ 4 - 3
app/mobile/view/my/index.html

@@ -25,10 +25,10 @@
 <div class="my-header">
 <div class="my-header">
     <div class="my-box">
     <div class="my-box">
         <div class="my-inner">
         <div class="my-inner">
-            <img src="https://thirdwx.qlogo.cn/mmopen/vi_32/DYAIOgq83er2NA5CYfklr5iaNZ3rIkjcQNTIwGibwTkLibmqErCndmZOhQIf8JAj4j3nDGu0lYPy6APtgfzh3J57Q/132" alt="">
+            <img :src="user.avatar ? user.avatar : '__MIMG__/default_avatar.jpg'" alt="">
             <div class="my-right">
             <div class="my-right">
-                <div class="my-name">林武</div>
-                <div class="my-mobile">13313826760</div>
+                <div class="my-name">{{user.nickname}}</div>
+                <div class="my-mobile">{{user.mobile}}</div>
             </div>
             </div>
         </div>
         </div>
     </div>
     </div>
@@ -83,6 +83,7 @@
             return {
             return {
                 active: 2,
                 active: 2,
                 worker: {$worker},
                 worker: {$worker},
+                user: {$user},
             };
             };
         },
         },
         methods: {
         methods: {