Oneshop商城开发第2天
今日计划:
1.完成商户登录页面,以及登陆后商户页面首页;
首页左侧菜单以及权限控制,根据之前的城市后台改进;尽量抽取之前的城市后台代码,做代码重构;
之前CITY=2,STORE=1,城市超级管理员分组id=1,商户超级管理员分组id=2;判断是否是超级管理员比较麻烦;现在统一修改成与之对应的id.
总结: 项目中有些变量要用常量,否则改代码,可麻烦了;
/** * Class WebType * @package app\lib\enum * 城市超级管理员分组id=1 * 商户超级管理员分组id=2 * 这样正好 超级管理员所属分组id与之对应,后期判断管理员比较方便 */ class WebType { //城市平台 const CITY = 1; //商家平台 const STORE = 2; //总平台 const SITE = 3; }
关于平台登录后平台标记问题:
用户登陆后,判断登录类型,并存到localStorage中,并存储LOGIN_URL,这样在vue http拦截器中,发生错误时,就可以被跳转到对应的登录页了;
const loginUrl = localStorage.getItem('WEB_TYPE_LOGIN');
router.replace({ path: loginUrl, query: {redirect: router.currentRoute.fullPath} })
平台首页截图
城市平台首页
商户平台首页
Tp5接口中,用到了获取管理员信息的接口,这里总结下:
管理员接口id不应该是传递过来的,应该根据token查找缓存的userInfo.然后userInfo.uid 获取到uid;
这里容易挖坑,一定不要根据传递的id操作后台数据;
Admin.php get代码; public function get() { $vars = Token::getCurrentIdentity(['uid']); $groupId = $vars['uid']; if($groupId){ $data = AdminModel::where('id',$groupId)->find(); unset($data['pwd']); }else{ $data = null; } return [ 'data'=>$data ]; }