Showing
7 changed files
with
153 additions
and
0 deletions
apps/preference/controllers/preference.js
0 → 100644
1 | +'use strict'; | ||
2 | + | ||
3 | +const mRoot = '../models'; | ||
4 | +const couponModel = require(`${mRoot}/preference`); // 领取优惠券 model | ||
5 | + | ||
6 | +exports.index = (req, res, next) => { | ||
7 | + var renderData = { | ||
8 | + module: 'preference', | ||
9 | + page: 'index' | ||
10 | + }, | ||
11 | + udid = req.query.udid, | ||
12 | + uid = req.query.uid, | ||
13 | + recPos = req.query.rec_pos, | ||
14 | + yhChannel = req.query.yh_channel, | ||
15 | + limit = 30; | ||
16 | + | ||
17 | + renderData.udid = udid; | ||
18 | + renderData.rec_pos = recPos; | ||
19 | + renderData.yh_channel = yhChannel; | ||
20 | + | ||
21 | + // 测试假数据 | ||
22 | + // res.render('coupon', renderData); // 渲染页面 | ||
23 | + couponModel.getPreference({ | ||
24 | + yh_channel: yhChannel, | ||
25 | + udid: udid, | ||
26 | + limit: limit, | ||
27 | + rec_pos: recPos, | ||
28 | + uid: uid | ||
29 | + }).then((preferenceData) => { | ||
30 | + | ||
31 | + if (preferenceData.code === 200) { | ||
32 | + // 获取信息成功 | ||
33 | + console.log(preferenceData); | ||
34 | + console.log('哈哈哈哈哈哈啊哈哈哈哈哈哈哈哈'); | ||
35 | + } | ||
36 | + res.render('preference', { | ||
37 | + result: preferenceData, | ||
38 | + module: 'preference', | ||
39 | + page: 'index' | ||
40 | + }); | ||
41 | + }).catch(next); | ||
42 | +}; |
apps/preference/index.js
0 → 100644
1 | +/** | ||
2 | + * sub app preference | ||
3 | + * @author: lixia.zhang@yoho.cn<lixia.zhang@yoho.cn> | ||
4 | + * @date: 2016/07/01 | ||
5 | + */ | ||
6 | + | ||
7 | +var express = require('express'), | ||
8 | + path = require('path'), | ||
9 | + hbs = require('express-handlebars'); | ||
10 | + | ||
11 | +var app = express(); | ||
12 | + | ||
13 | +// set view engin | ||
14 | +var doraemon = path.join(__dirname, '../../doraemon/views'); // parent view root | ||
15 | + | ||
16 | +app.on('mount', function(parent) { | ||
17 | + delete parent.locals.settings; // 不继承父 App 的设置 | ||
18 | + Object.assign(app.locals, parent.locals); | ||
19 | +}); | ||
20 | + | ||
21 | +app.set('views', path.join(__dirname, 'views/action')); | ||
22 | +app.engine('.hbs', hbs({ | ||
23 | + extname: '.hbs', | ||
24 | + defaultLayout: 'layout', | ||
25 | + layoutsDir: doraemon, | ||
26 | + partialsDir: ['./views/partial', `${doraemon}/partial`], | ||
27 | + helpers: global.yoho.helpers | ||
28 | +})); | ||
29 | + | ||
30 | +// router | ||
31 | +app.use(require('./router')); | ||
32 | + | ||
33 | +module.exports = app; |
apps/preference/models/preference.js
0 → 100644
1 | +var API = require('../../../library/api').API; | ||
2 | +var api = new API(); | ||
3 | + | ||
4 | +const camelCase = global.yoho.camelCase; | ||
5 | + | ||
6 | +/** | ||
7 | + * 分享页面基础参数 | ||
8 | + * @param {object} sizeInfo [接口原始数据] | ||
9 | + * @return {object} [description] | ||
10 | + */ | ||
11 | +const getPreferenceData = (data) => { | ||
12 | + var dest = {}; | ||
13 | + | ||
14 | + let list = data.data || {}; | ||
15 | + | ||
16 | + list = camelCase(list); | ||
17 | + console.log(list); | ||
18 | + dest.code = list.code; | ||
19 | + dest.goods = list.productList; | ||
20 | + dest.rec_id = list.recId; | ||
21 | + dest.message = list.message; | ||
22 | + | ||
23 | + // 清空变量,释放内存 | ||
24 | + data = {}; | ||
25 | + return dest; | ||
26 | +}; | ||
27 | + | ||
28 | +/** | ||
29 | + * 获取为你优选数据 | ||
30 | + */ | ||
31 | +exports.getPreference = (data) => { | ||
32 | + var defaultParam = { | ||
33 | + method: 'app.home.newPreference' | ||
34 | + }, | ||
35 | + infoData = Object.assign(defaultParam, data); // 处理完成后,发给后端 | ||
36 | + | ||
37 | + return api.get('', infoData).then(result => { | ||
38 | + return getPreferenceData(result); | ||
39 | + }); // 所有数据返回一个 Promise,方便 Promise.all 调用 | ||
40 | +}; |
apps/preference/router.js
0 → 100644
1 | +/** | ||
2 | + * router of sub app preference | ||
3 | + * @author: lixia.zhang@yoho.cn<lixia.zhang@yoho.cn> | ||
4 | + * @date: 2016/07/01 | ||
5 | + */ | ||
6 | + | ||
7 | +'use strict'; | ||
8 | + | ||
9 | +const express = require('express'); | ||
10 | +const router = express.Router(); // eslint-disable-line | ||
11 | +const cRoot = './controllers'; | ||
12 | + | ||
13 | +// Your controller here | ||
14 | +const preference = require(`${cRoot}/preference`); | ||
15 | + | ||
16 | +// routers | ||
17 | + | ||
18 | +router.get('/', preference.index); | ||
19 | + | ||
20 | +module.exports = router; |
apps/preference/views/action/preference.hbs
0 → 100644
public/js/preference/index.page.js
0 → 100644
-
Please register or login to post a comment