Showing
7 changed files
with
98 additions
and
16 deletions
@@ -9,6 +9,12 @@ | @@ -9,6 +9,12 @@ | ||
9 | const headerModel = require('../../../doraemon/models/header'); // 头部model | 9 | const headerModel = require('../../../doraemon/models/header'); // 头部model |
10 | const indexModel = require('../models/index'); | 10 | const indexModel = require('../models/index'); |
11 | 11 | ||
12 | +/** | ||
13 | + * 用户中心首页 | ||
14 | + * @param req | ||
15 | + * @param res | ||
16 | + * @param next | ||
17 | + */ | ||
12 | exports.index = (req, res, next) => { | 18 | exports.index = (req, res, next) => { |
13 | let params = { | 19 | let params = { |
14 | uid: req.user.uid | 20 | uid: req.user.uid |
@@ -32,3 +38,29 @@ exports.index = (req, res, next) => { | @@ -32,3 +38,29 @@ exports.index = (req, res, next) => { | ||
32 | }).catch(next); | 38 | }).catch(next); |
33 | 39 | ||
34 | }; | 40 | }; |
41 | + | ||
42 | +/** | ||
43 | + * 个人基本资料页面 | ||
44 | + * @param req | ||
45 | + * @param res | ||
46 | + * @param next | ||
47 | + */ | ||
48 | +exports.myDetails = (req, res, next) => { | ||
49 | + let headerData = headerModel.setNav({ | ||
50 | + navTitle: '基本资料' | ||
51 | + }); | ||
52 | + | ||
53 | + let responseData = { | ||
54 | + pageHeader: headerData, | ||
55 | + module: 'home', | ||
56 | + page: 'personal-details', | ||
57 | + title: '基本资料', | ||
58 | + pageFooter: true | ||
59 | + }; | ||
60 | + | ||
61 | + indexModel.myDetails({ | ||
62 | + | ||
63 | + }).then(result => { | ||
64 | + res.render('personal-details', Object.assign(responseData, result)); | ||
65 | + }).catch(next); | ||
66 | +}; |
@@ -115,6 +115,33 @@ const index = (params) => { | @@ -115,6 +115,33 @@ const index = (params) => { | ||
115 | }); | 115 | }); |
116 | }; | 116 | }; |
117 | 117 | ||
118 | +/** | ||
119 | + * 个人基本资料 | ||
120 | + * @param params | ||
121 | + */ | ||
122 | +const myDetails = (params) => { | ||
123 | + return api.get('', { | ||
124 | + method: 'app.passport.profile', | ||
125 | + uid: params.uid | ||
126 | + }, {code: 200}).then((result) => { | ||
127 | + result = camelCase(result); | ||
128 | + if (result.data) { | ||
129 | + return result.data; | ||
130 | + // { | ||
131 | + // nickname: result.data.nickname, | ||
132 | + // gender: result.data.gender, | ||
133 | + // birthday: result.data.birthday, | ||
134 | + // headIco: result.data.headIco, | ||
135 | + // vipInfo: { | ||
136 | + // curLevel: result.data.vipInfo.curLevel | ||
137 | + // } | ||
138 | + // } | ||
139 | + } | ||
140 | + // return finalResult; | ||
141 | + }); | ||
142 | +}; | ||
143 | + | ||
118 | module.exports = { | 144 | module.exports = { |
119 | - index | 145 | + index, |
146 | + myDetails | ||
120 | }; | 147 | }; |
@@ -16,7 +16,7 @@ const orderDetail = (uid, orderCode) => { | @@ -16,7 +16,7 @@ const orderDetail = (uid, orderCode) => { | ||
16 | order_code: orderCode | 16 | order_code: orderCode |
17 | }).then((result) => { | 17 | }).then((result) => { |
18 | let orderDetail = camelCase(result.data); | 18 | let orderDetail = camelCase(result.data); |
19 | - console.log(result); | 19 | + //console.log(result); |
20 | 20 | ||
21 | // if(orderDetail.virtualType && orderDetail.virtualType === 3) { | 21 | // if(orderDetail.virtualType && orderDetail.virtualType === 3) { |
22 | // orderDetail = _.assign(orderDetail, { | 22 | // orderDetail = _.assign(orderDetail, { |
@@ -21,6 +21,8 @@ const orderDetailController = require(`${cRoot}/orderDetail`); | @@ -21,6 +21,8 @@ const orderDetailController = require(`${cRoot}/orderDetail`); | ||
21 | 21 | ||
22 | // 查看二维码 | 22 | // 查看二维码 |
23 | router.get('/QRcode/:id', personalController.QRcode); | 23 | router.get('/QRcode/:id', personalController.QRcode); |
24 | + | ||
25 | +/* 个人中心地址管理相关路由 */ | ||
24 | router.get('/address', auth, addressController.address); // 地址管理页面 | 26 | router.get('/address', auth, addressController.address); // 地址管理页面 |
25 | router.get('/addressAct', auth, addressController.addressAct); // 地址添加页面 | 27 | router.get('/addressAct', auth, addressController.addressAct); // 地址添加页面 |
26 | router.get('/addressAct/:id', addressController.addressAct); // 地址添加修改页面 | 28 | router.get('/addressAct/:id', addressController.addressAct); // 地址添加修改页面 |
@@ -28,12 +30,15 @@ router.post('/saveAddress', addressController.saveAddress); // 新增或者保 | @@ -28,12 +30,15 @@ router.post('/saveAddress', addressController.saveAddress); // 新增或者保 | ||
28 | router.post('/defaultAddress', addressController.defaultAddress); // 设置默认地址 | 30 | router.post('/defaultAddress', addressController.defaultAddress); // 设置默认地址 |
29 | router.post('/delAddress', addressController.delAddress); // 删除地址 | 31 | router.post('/delAddress', addressController.delAddress); // 删除地址 |
30 | router.get('/locationList', addressController.locationList); // 异步获取三级地址数据 | 32 | router.get('/locationList', addressController.locationList); // 异步获取三级地址数据 |
31 | -router.get('/orders', orderController.order); | ||
32 | -router.get('/getOrders', orderController.getOrders); | ||
33 | -router.get('/orderDetail', orderDetailController.orderDetail); | ||
34 | 33 | ||
35 | -// 个人中心 | ||
36 | -router.get('/', homeController.index); | 34 | +/* 个人中心订单相关路由 */ |
35 | +router.get('/orders', orderController.order); // 订单列表 | ||
36 | +router.get('/getOrders', orderController.getOrders); // 获取订单列表数据 | ||
37 | +router.get('/orderDetail', orderDetailController.orderDetail); // 订单详情页 | ||
38 | + | ||
39 | + | ||
40 | +router.get('/', homeController.index); // 个人中心首页 | ||
41 | +router.get('/mydetails', homeController.myDetails); // 个人基本资料页面 | ||
37 | 42 | ||
38 | // 我的收藏 | 43 | // 我的收藏 |
39 | router.get('/favorite', favorite.favorite); | 44 | router.get('/favorite', favorite.favorite); |
1 | <div class="personal-details yoho-page"> | 1 | <div class="personal-details yoho-page"> |
2 | <ul> | 2 | <ul> |
3 | - <li><span>头像</span><span><i class="head-portrait user-avatar" data-avatar="{{head_ico}}"></i></span></li> | 3 | + <li><span>头像</span><span><i class="head-portrait user-avatar" data-avatar="{{image headIco 128 128}}"></i></span></li> |
4 | <li><span>昵称</span><span>{{ nickname }}</span></li> | 4 | <li><span>昵称</span><span>{{ nickname }}</span></li> |
5 | <li><span>性别</span><span>{{ gender }}</span></li> | 5 | <li><span>性别</span><span>{{ gender }}</span></li> |
6 | <li><span>生日</span><span>{{ birthday }}</span></li> | 6 | <li><span>生日</span><span>{{ birthday }}</span></li> |
7 | <li class="tap-hightlight"><span>会员等级</span> | 7 | <li class="tap-hightlight"><span>会员等级</span> |
8 | <span> | 8 | <span> |
9 | <a href="grade" class="grade"> | 9 | <a href="grade" class="grade"> |
10 | - {{# vip_info}} | ||
11 | - <i class="vip-icon vip-{{ cur_level}}"></i> | ||
12 | - {{/ vip_info}} | 10 | + {{# vipInfo}} |
11 | + <i class="vip-icon vip-{{ curLevel}}"></i> | ||
12 | + {{/ vipInfo}} | ||
13 | <span class="iconfont"></span> | 13 | <span class="iconfont"></span> |
14 | </a> | 14 | </a> |
15 | </span> | 15 | </span> |
16 | </li> | 16 | </li> |
17 | </ul> | 17 | </ul> |
18 | -</div> | ||
18 | +</div> |
public/js/home/personal-details.page.js
0 → 100644
1 | +/** | ||
2 | + * Created by PhpStorm. | ||
3 | + * User: Targaryen | ||
4 | + * Date: 2016/8/22 | ||
5 | + * Time: 18:05 | ||
6 | + */ | ||
7 | +/** | ||
8 | + * 个人信息 | ||
9 | + * @author: bikai<kai.bi@yoho.cn> | ||
10 | + * @date: 2015/11/19 | ||
11 | + */ | ||
12 | +var $ = require('yoho-jquery'); | ||
13 | +var $userAvatar = $('.user-avatar'); | ||
14 | +var myImage = new Image(), | ||
15 | + avatar; | ||
16 | + | ||
17 | +// 部分老用户没有头像,显示默认头像 | ||
18 | +avatar = $userAvatar.data('avatar'); | ||
19 | +myImage.src = avatar; | ||
20 | +myImage.onload = function() { | ||
21 | + $userAvatar.css('background-image', 'url(' + avatar + ')'); | ||
22 | +}; |
@@ -4,16 +4,12 @@ | @@ -4,16 +4,12 @@ | ||
4 | padding-bottom: 20px; | 4 | padding-bottom: 20px; |
5 | 5 | ||
6 | .service { | 6 | .service { |
7 | - /*margin-left: 50px; | ||
8 | - width: 494px;*/ | ||
9 | height: 28px; | 7 | height: 28px; |
10 | background: resolve('product/service.png') no-repeat; | 8 | background: resolve('product/service.png') no-repeat; |
11 | background-size: cover; | 9 | background-size: cover; |
12 | } | 10 | } |
13 | 11 | ||
14 | .limit-service { | 12 | .limit-service { |
15 | - /*margin-left: 50px; | ||
16 | - width: 494px;*/ | ||
17 | height: 28px; | 13 | height: 28px; |
18 | background: resolve('product/limit.png') no-repeat; | 14 | background: resolve('product/limit.png') no-repeat; |
19 | background-size: cover; | 15 | background-size: cover; |
-
Please register or login to post a comment