Authored by 郝肖肖

'installment-ctx'

@@ -37,7 +37,7 @@ const _repaymentList = (req, res, next, opt, params) => { @@ -37,7 +37,7 @@ const _repaymentList = (req, res, next, opt, params) => {
37 uid: req.user.uid 37 uid: req.user.uid
38 }, params); 38 }, params);
39 39
40 - installmentModel.getQueryAmtList(params).then((result) => { 40 + req.ctx(installmentModel).getQueryAmtList(params).then((result) => {
41 res.render('installment/repayment-list', _.assign({ 41 res.render('installment/repayment-list', _.assign({
42 module: 'home', 42 module: 'home',
43 page: 'repayment-list', 43 page: 'repayment-list',
@@ -58,8 +58,8 @@ const index = (req, res, next) => { @@ -58,8 +58,8 @@ const index = (req, res, next) => {
58 58
59 logger.info(`installment index info: client_type=${req.query.client_type},req.user.uid=${req.user.uid},req.query.uid=${req.query.uid},cookies=${JSON.stringify(req.cookies)}`); // eslint-disable-line 59 logger.info(`installment index info: client_type=${req.query.client_type},req.user.uid=${req.user.uid},req.query.uid=${req.query.uid},cookies=${JSON.stringify(req.cookies)}`); // eslint-disable-line
60 Promise.all([ 60 Promise.all([
61 - installmentModel.getStauts(uid),  
62 - installmentModel.getSearchIntallment({ 61 + req.ctx(installmentModel).getStauts(uid),
  62 + req.ctx(installmentModel).getSearchIntallment({
63 uid: uid 63 uid: uid
64 }) 64 })
65 ]).then((result) => { 65 ]).then((result) => {
@@ -77,7 +77,10 @@ const index = (req, res, next) => { @@ -77,7 +77,10 @@ const index = (req, res, next) => {
77 }; 77 };
78 78
79 if (openStatus === '0') { 79 if (openStatus === '0') {
80 - return Promise.all([installmentModel.getResources('openN'), installmentModel.getNotices()]).then(data => { 80 + return Promise.all([
  81 + req.ctx(installmentModel).getResources('openN'),
  82 + req.ctx(installmentModel).getNotices()
  83 + ]).then(data => {
81 _.forEach(data[0], (item) => { 84 _.forEach(data[0], (item) => {
82 if (item.singleOne) { 85 if (item.singleOne) {
83 item.data[0].url = 'javascript:void(0)'; //eslint-disable-line 86 item.data[0].url = 'javascript:void(0)'; //eslint-disable-line
@@ -93,10 +96,10 @@ const index = (req, res, next) => { @@ -93,10 +96,10 @@ const index = (req, res, next) => {
93 }); 96 });
94 } else if (openStatus === '2') { 97 } else if (openStatus === '2') {
95 return Promise.all([ 98 return Promise.all([
96 - installmentModel.getQueryCreditInfo(uid),  
97 - installmentModel.getQueryAmtInfo(uid),  
98 - installmentModel.getResources('openY'),  
99 - installmentModel.getNotices() 99 + req.ctx(installmentModel).getQueryCreditInfo(uid),
  100 + req.ctx(installmentModel).getQueryAmtInfo(uid),
  101 + req.ctx(installmentModel).getResources('openY'),
  102 + req.ctx(installmentModel).getNotices()
100 ]).then((data) => { 103 ]).then((data) => {
101 let params = _.assign({ 104 let params = _.assign({
102 isOverdue: false, 105 isOverdue: false,
@@ -161,7 +164,7 @@ const getInstallmentGoods = (req, res, next) => { @@ -161,7 +164,7 @@ const getInstallmentGoods = (req, res, next) => {
161 uid: req.user.uid 164 uid: req.user.uid
162 }; 165 };
163 166
164 - installmentModel.getSearchIntallment(params).then((result) => { 167 + req.ctx(installmentModel).getSearchIntallment(params).then((result) => {
165 if (result) { 168 if (result) {
166 res.render('installment/goods-template', { 169 res.render('installment/goods-template', {
167 layout: false, 170 layout: false,
@@ -192,11 +195,11 @@ const review = (req, res, next) => { @@ -192,11 +195,11 @@ const review = (req, res, next) => {
192 195
193 if (openStatus === '2') { 196 if (openStatus === '2') {
194 Promise.all([ 197 Promise.all([
195 - installmentModel.getSearchIntallment({ 198 + req.ctx(installmentModel).getSearchIntallment({
196 page: 1 199 page: 1
197 }), 200 }),
198 - installmentModel.getQueryCreditInfo(uid),  
199 - installmentModel.getResources('advertisement') 201 + req.ctx(installmentModel).getQueryCreditInfo(uid),
  202 + req.ctx(installmentModel).getResources('advertisement')
200 ]).then((result) => { 203 ]).then((result) => {
201 let advertisement = false; 204 let advertisement = false;
202 205
@@ -314,7 +317,7 @@ const getRepayRecord = (req, res, next) => { @@ -314,7 +317,7 @@ const getRepayRecord = (req, res, next) => {
314 pageNo: req.query.page || 1 317 pageNo: req.query.page || 1
315 }); 318 });
316 319
317 - installmentModel.getQueryRePayList(params).then((result) => { 320 + req.ctx(installmentModel).getQueryRePayList(params).then((result) => {
318 if (result) { 321 if (result) {
319 res.render('installment/record-template', { 322 res.render('installment/record-template', {
320 layout: false, 323 layout: false,
@@ -378,7 +381,7 @@ const postAccount = (req, res, next) => { @@ -378,7 +381,7 @@ const postAccount = (req, res, next) => {
378 uid: req.user.uid 381 uid: req.user.uid
379 }, req.query); 382 }, req.query);
380 383
381 - installmentModel.postAccount(params).then((result) => { 384 + req.ctx(installmentModel).postAccount(params).then((result) => {
382 res.json(result); 385 res.json(result);
383 }).catch((err) => { 386 }).catch((err) => {
384 _serverCrash(res, { 387 _serverCrash(res, {
@@ -417,7 +420,7 @@ function getRealIP(req) { @@ -417,7 +420,7 @@ function getRealIP(req) {
417 420
418 const activateService = (req, res, next) => { 421 const activateService = (req, res, next) => {
419 422
420 - installmentModel.activateService({ 423 + req.ctx(installmentModel).activateService({
421 uid: req.user.uid, 424 uid: req.user.uid,
422 userName: req.body.userName, 425 userName: req.body.userName,
423 identityCardNo: req.body.identityCardNo, 426 identityCardNo: req.body.identityCardNo,
@@ -440,7 +443,7 @@ const activateService = (req, res, next) => { @@ -440,7 +443,7 @@ const activateService = (req, res, next) => {
440 }; 443 };
441 444
442 const getBankInfo = (req, res, next) => { 445 const getBankInfo = (req, res, next) => {
443 - installmentModel.getBankInfo({ 446 + req.ctx(installmentModel).getBankInfo({
444 cardNo: req.query.cardNo, 447 cardNo: req.query.cardNo,
445 uid: req.user.uid 448 uid: req.user.uid
446 }).then((result)=> { 449 }).then((result)=> {
@@ -453,7 +456,7 @@ const getBankInfo = (req, res, next) => { @@ -453,7 +456,7 @@ const getBankInfo = (req, res, next) => {
453 }; 456 };
454 457
455 const verifyCode = (req, res, next) => { 458 const verifyCode = (req, res, next) => {
456 - installmentModel.sendVerifyCode(req.user.uid || 1, req.query.mobile).then((result)=> { 459 + req.ctx(installmentModel).sendVerifyCode(req.user.uid || 1, req.query.mobile).then((result)=> {
457 res.json(result); 460 res.json(result);
458 }).catch((err) => { 461 }).catch((err) => {
459 _serverCrash(res, { 462 _serverCrash(res, {
@@ -481,7 +484,7 @@ const orderList = (req, res, next) => { @@ -481,7 +484,7 @@ const orderList = (req, res, next) => {
481 limit: req.query.limit || 10 484 limit: req.query.limit || 10
482 }; 485 };
483 486
484 - installmentModel.getInstallmentOrders(params).then((result)=> { 487 + req.ctx(installmentModel).getInstallmentOrders(params).then((result)=> {
485 res.render('installment/order-list', { 488 res.render('installment/order-list', {
486 title: '我的分期订单', 489 title: '我的分期订单',
487 orders: ((()=> { 490 orders: ((()=> {
@@ -515,7 +518,7 @@ const orderDetail = (req, res, next) => { @@ -515,7 +518,7 @@ const orderDetail = (req, res, next) => {
515 orderCode: req.params.id 518 orderCode: req.params.id
516 }; 519 };
517 520
518 - installmentModel.getInstallmentOrderDetail(params).then((result)=> { 521 + req.ctx(installmentModel).getInstallmentOrderDetail(params).then((result)=> {
519 res.render('installment/order-detail', { 522 res.render('installment/order-detail', {
520 module: 'home', 523 module: 'home',
521 page: 'installment.order-detail', 524 page: 'installment.order-detail',
@@ -610,7 +613,7 @@ const repayDetail = (req, res, next) => { @@ -610,7 +613,7 @@ const repayDetail = (req, res, next) => {
610 pageNo: 1 613 pageNo: 1
611 }; 614 };
612 615
613 - installmentModel.getQueryRePayList(params).then((result) => { 616 + req.ctx(installmentModel).getQueryRePayList(params).then((result) => {
614 res.render('installment/repay-detail', _.assign({ 617 res.render('installment/repay-detail', _.assign({
615 title: '还款详情', 618 title: '还款详情',
616 isInstallmentPage: true, 619 isInstallmentPage: true,
@@ -628,7 +631,7 @@ const repayDetail = (req, res, next) => { @@ -628,7 +631,7 @@ const repayDetail = (req, res, next) => {
628 const help = (req, res, next) => { 631 const help = (req, res, next) => {
629 let id = 263; 632 let id = 263;
630 633
631 - installmentModel.getHelpDetail(id).then((result) => { 634 + req.ctx(installmentModel).getHelpDetail(id).then((result) => {
632 res.render('installment/help', { 635 res.render('installment/help', {
633 title: '分期支付帮助中心', 636 title: '分期支付帮助中心',
634 helpdetail_list: result.helpdetail_list 637 helpdetail_list: result.helpdetail_list
@@ -646,7 +649,7 @@ const agreement = (req, res) => { @@ -646,7 +649,7 @@ const agreement = (req, res) => {
646 649
647 // 计算金额 650 // 计算金额
648 const totalAmount = (req, res, next) => { 651 const totalAmount = (req, res, next) => {
649 - installmentModel.totalAmount(req.query.prices).then((result) => { 652 + req.ctx(installmentModel).totalAmount(req.query.prices).then((result) => {
650 res.json(result); 653 res.json(result);
651 }).catch((err) => { 654 }).catch((err) => {
652 _serverCrash(res, { 655 _serverCrash(res, {
@@ -657,7 +660,7 @@ const totalAmount = (req, res, next) => { @@ -657,7 +660,7 @@ const totalAmount = (req, res, next) => {
657 660
658 // 检查验证码 661 // 检查验证码
659 const checkVerifyCode = (req, res, next) => { 662 const checkVerifyCode = (req, res, next) => {
660 - installmentModel.checkVerifyCode(req.user.uid, req.query.mobile, req.query.code).then((result) => { 663 + req.ctx(installmentModel).checkVerifyCode(req.user.uid, req.query.mobile, req.query.code).then((result) => {
661 res.json(result); 664 res.json(result);
662 }).catch((err) => { 665 }).catch((err) => {
663 _serverCrash(res, { 666 _serverCrash(res, {
@@ -675,7 +678,7 @@ const serverCrash = (req, res) => { @@ -675,7 +678,7 @@ const serverCrash = (req, res) => {
675 const bankCard = (req, res, next) => { 678 const bankCard = (req, res, next) => {
676 let uid = req.user.uid; 679 let uid = req.user.uid;
677 680
678 - installmentModel.getBankCards(uid).then((result) => { 681 + req.ctx(installmentModel).getBankCards(uid).then((result) => {
679 let noBank = true; 682 let noBank = true;
680 683
681 _.forEach(result, (val) => { 684 _.forEach(result, (val) => {
@@ -706,7 +709,7 @@ const cardDetail = (req, res, next) => { @@ -706,7 +709,7 @@ const cardDetail = (req, res, next) => {
706 let uid = req.user.uid; 709 let uid = req.user.uid;
707 let cardIdNo = req.query.cardIdNo; 710 let cardIdNo = req.query.cardIdNo;
708 711
709 - installmentModel.getCardDetail(uid, cardIdNo).then((result) => { 712 + req.ctx(installmentModel).getCardDetail(uid, cardIdNo).then((result) => {
710 res.render('installment/card-detail', { 713 res.render('installment/card-detail', {
711 module: 'home', 714 module: 'home',
712 page: 'card-detail', 715 page: 'card-detail',
@@ -730,7 +733,7 @@ const delBankCard = (req, res, next) => { @@ -730,7 +733,7 @@ const delBankCard = (req, res, next) => {
730 cardIdNo: req.query.cardIdNo 733 cardIdNo: req.query.cardIdNo
731 }; 734 };
732 735
733 - installmentModel.delBankCard(params).then((result) => { 736 + req.ctx(installmentModel).delBankCard(params).then((result) => {
734 res.json(result); 737 res.json(result);
735 }).catch((err) => { 738 }).catch((err) => {
736 _serverCrash(res, { 739 _serverCrash(res, {
@@ -747,7 +750,7 @@ const setMasterCard = (req, res, next) => { @@ -747,7 +750,7 @@ const setMasterCard = (req, res, next) => {
747 cardIdNo: req.query.cardIdNo 750 cardIdNo: req.query.cardIdNo
748 }; 751 };
749 752
750 - installmentModel.setMasterCard(params).then((result) => { 753 + req.ctx(installmentModel).setMasterCard(params).then((result) => {
751 res.json(result); 754 res.json(result);
752 }).catch((err) => { 755 }).catch((err) => {
753 _serverCrash(res, { 756 _serverCrash(res, {
@@ -9,7 +9,6 @@ const productProcess = require(`${utils}/product-process`); @@ -9,7 +9,6 @@ const productProcess = require(`${utils}/product-process`);
9 const resourcesProcess = require(`${utils}/resources-process`); 9 const resourcesProcess = require(`${utils}/resources-process`);
10 const _ = require('lodash'); 10 const _ = require('lodash');
11 const helpers = global.yoho.helpers; 11 const helpers = global.yoho.helpers;
12 -const api = global.yoho.API;  
13 const serviceAPI = global.yoho.ServiceAPI; 12 const serviceAPI = global.yoho.ServiceAPI;
14 const logger = global.yoho.logger; 13 const logger = global.yoho.logger;
15 const stringProcess = require(`${global.utils}/string-process`); 14 const stringProcess = require(`${global.utils}/string-process`);
@@ -19,7 +18,8 @@ const codeContent = { @@ -19,7 +18,8 @@ const codeContent = {
19 openY: 'c233ad4ca91fef45ed7d0b26d9953e61', 18 openY: 'c233ad4ca91fef45ed7d0b26d9953e61',
20 advertisement: 'f3fe0793a7d59479542a14b15359c47d' 19 advertisement: 'f3fe0793a7d59479542a14b15359c47d'
21 }; 20 };
22 - 21 +const response = require('./response.json');
  22 +const _DEBUG = false;// true;
23 23
24 // 处理还款列表数据 24 // 处理还款列表数据
25 const _processAmtList = (listData, queryDays) => { 25 const _processAmtList = (listData, queryDays) => {
@@ -29,7 +29,6 @@ const _processAmtList = (listData, queryDays) => { @@ -29,7 +29,6 @@ const _processAmtList = (listData, queryDays) => {
29 currFeeCount: 0 29 currFeeCount: 0
30 }; 30 };
31 31
32 -  
33 if (listData !== 'NULL') { 32 if (listData !== 'NULL') {
34 let list = listData.amtList; 33 let list = listData.amtList;
35 34
@@ -175,410 +174,445 @@ const _processCardDetail = (list) => { @@ -175,410 +174,445 @@ const _processCardDetail = (list) => {
175 return list; 174 return list;
176 }; 175 };
177 176
178 -/**  
179 - * 获取资源位数据  
180 - * @return {[array]}  
181 - */  
182 -const getResources = (code) => {  
183 - return serviceAPI.get('/operations/api/v5/resource/get', {  
184 - content_code: codeContent[code],  
185 - platform: 'iphone'  
186 - }, {  
187 - cache: true  
188 - }).then((result) => {  
189 - if (result && result.code === 200) {  
190 - return resourcesProcess(result.data);  
191 - } else {  
192 - logger.error('get resources data return code is not 200');  
193 - return [];  
194 - }  
195 - });  
196 -}; 177 +module.exports = class extends global.yoho.BaseModel {
  178 + constructor(ctx) {
  179 + super(ctx);
  180 + }
197 181
198 -const response = require('./response.json');  
199 -const _DEBUG = false;// true; 182 + /**
  183 + * 获取资源位数据
  184 + * @return {[array]}
  185 + */
  186 + getResources(code) {
  187 + return this.get({
  188 + api: serviceAPI,
  189 + url: '/operations/api/v5/resource/get',
  190 + data: {
  191 + content_code: codeContent[code],
  192 + platform: 'iphone'
  193 + },
  194 + param: {
  195 + cache: true
  196 + }
  197 + }).then((result) => {
  198 + if (result && result.code === 200) {
  199 + return resourcesProcess(result.data);
  200 + } else {
  201 + logger.error('get resources data return code is not 200');
  202 + return [];
  203 + }
  204 + });
  205 + }
200 206
201 -// 获取分期开通状态  
202 -const getStauts = (uid) => {  
203 - return api.get('', {  
204 - method: 'user.instalment.getStatus',  
205 - uid: uid  
206 - }, {  
207 - timeout: API_TIMEOUT  
208 - }).then((result) => {  
209 - if (result && result.code === 200) {  
210 - return result.data.status;  
211 - } else {  
212 - logger.error(`get installment open status return code is not 200,uid:${uid},result=${JSON.stringify(result)}`); // eslint-disable-line  
213 - return Promise.reject(result);  
214 - }  
215 - });  
216 -}; 207 + // 获取分期开通状态
  208 + getStauts(uid) {
  209 + return this.get({
  210 + data: {
  211 + method: 'user.instalment.getStatus',
  212 + uid: uid
  213 + },
  214 + param: {
  215 + timeout: API_TIMEOUT
  216 + }
  217 + }).then((result) => {
  218 + if (result && result.code === 200) {
  219 + return result.data.status;
  220 + } else {
  221 + logger.error(`get installment open status return code is not 200,uid:${uid},result=${JSON.stringify(result)}`); // eslint-disable-line
  222 + return Promise.reject(result);
  223 + }
  224 + });
  225 + }
217 226
218 -// 获取用户可用额度信息  
219 -const getQueryCreditInfo = (uid) => {  
220 - return api.get('', {  
221 - method: 'user.instalment.queryCreditLimit',  
222 - uid: uid  
223 - }, {  
224 - timeout: API_TIMEOUT  
225 - }).then((result) => {  
226 - if (result && result.code === 200) {  
227 - return result.data;  
228 - } else {  
229 - logger.error('get user installment usable price info return code is not 200');  
230 - return Promise.reject(result);  
231 - }  
232 - });  
233 -}; 227 + // 获取用户可用额度信息
  228 + getQueryCreditInfo(uid) {
  229 + return this.get({
  230 + data: {
  231 + method: 'user.instalment.queryCreditLimit',
  232 + uid: uid
  233 + },
  234 + param: {
  235 + timeout: API_TIMEOUT
  236 + }
  237 + }).then((result) => {
  238 + if (result && result.code === 200) {
  239 + return result.data;
  240 + } else {
  241 + logger.error('get user installment usable price info return code is not 200');
  242 + return Promise.reject(result);
  243 + }
  244 + });
  245 + }
234 246
235 -// 获取用户待还款金额  
236 -const getQueryAmtInfo = (uid) => {  
237 - return api.get('', {  
238 - method: 'app.order.queryAmtInfo',  
239 - uid: uid  
240 - }, {  
241 - timeout: API_TIMEOUT  
242 - }).then((result) => {  
243 - if (result && result.code === 200) {  
244 - result.data.dayAmt = result.data.s_7daysAmt;  
245 - return result.data;  
246 - } else {  
247 - logger.error('get user installment repay info return code is not 200');  
248 - return Promise.reject(result);  
249 - }  
250 - });  
251 -}; 247 + // 获取用户待还款金额
  248 + getQueryAmtInfo(uid) {
  249 + return this.get({
  250 + data: {
  251 + method: 'app.order.queryAmtInfo',
  252 + uid: uid
  253 + },
  254 + param: {
  255 + timeout: API_TIMEOUT
  256 + }
  257 + }).then((result) => {
  258 + if (result && result.code === 200) {
  259 + result.data.dayAmt = result.data.s_7daysAmt;
  260 + return result.data;
  261 + } else {
  262 + logger.error('get user installment repay info return code is not 200');
  263 + return Promise.reject(result);
  264 + }
  265 + });
  266 + }
252 267
  268 + // 获取用户待还列表信息 queryDays -1:逾期待还;0:全部待还;7:七日待还;30:本月待还
  269 + getQueryAmtList(params) {
  270 + return this.get({
  271 + data: _.assign({
  272 + method: 'app.order.queryAmtList',
  273 + pageSize: '20'
  274 + }, params),
  275 + param: {
  276 + timeout: API_TIMEOUT
  277 + }
  278 + }).then((result) => {
  279 + if (result && result.code === 200) {
  280 + return _processAmtList(result.data, params.queryDays);
  281 + } else {
  282 + logger.error('get queryAmtList data return code is not 200');
  283 + return Promise.reject(result);
  284 + }
  285 + });
  286 + }
253 287
254 -// 获取用户待还列表信息 queryDays -1:逾期待还;0:全部待还;7:七日待还;30:本月待还  
255 -const getQueryAmtList = (params) => {  
256 - return api.get('', _.assign({  
257 - method: 'app.order.queryAmtList',  
258 - pageSize: '20'  
259 - }, params), {  
260 - timeout: API_TIMEOUT  
261 - }).then((result) => {  
262 - if (result && result.code === 200) {  
263 - return _processAmtList(result.data, params.queryDays);  
264 - } else {  
265 - logger.error('get queryAmtList data return code is not 200');  
266 - return Promise.reject(result);  
267 - }  
268 - });  
269 -}; 288 + // 分期专享推荐商品
  289 + getSearchIntallment(params) {
  290 + return this.get({
  291 + data: {
  292 + method: 'app.search.recInstal',
  293 + uid: params.uid
  294 + },
  295 + param: {
  296 + cache: true,
  297 + timeout: API_TIMEOUT
  298 + }
  299 + }).then((result) => {
  300 + if (result && result.code === 200) {
  301 + let goods = productProcess.processProductList(result.data.product_list);
270 302
271 -// 分期专享推荐商品  
272 -const getSearchIntallment = (params) => {  
273 - return api.post('', {  
274 - method: 'app.search.recInstal',  
275 - uid: params.uid  
276 - }, {  
277 - cache: true,  
278 - timeout: API_TIMEOUT  
279 - }).then((result) => {  
280 - if (result && result.code === 200) {  
281 - let goods = productProcess.processProductList(result.data.product_list);  
282 -  
283 - _.forEach(goods, (data) => {  
284 - data.url = helpers.appUrlFormat(data.url, 'go.productDetail', {  
285 - product_skn: data.product_skn 303 + _.forEach(goods, (data) => {
  304 + data.url = helpers.appUrlFormat(data.url, 'go.productDetail', {
  305 + product_skn: data.product_skn
  306 + });
286 }); 307 });
287 - });  
288 -  
289 - return goods;  
290 - } else {  
291 - logger.error('get instalment promote goods return code is not 200');  
292 - return Promise.reject(result);  
293 - }  
294 - });  
295 -};  
296 308
297 -/**  
298 - * 获取短信验证码  
299 - *  
300 - * @param uid 用户ID  
301 - * @param mobile 手机号码  
302 - */  
303 -const sendVerifyCode = (uid, mobile) => {  
304 - return api.get('', {  
305 - method: 'user.instalment.getSnsCheckCode',  
306 - uid: uid,  
307 - mobile: mobile,  
308 - codeType: 1 // 授信  
309 - }, {  
310 - timeout: API_TIMEOUT  
311 - });  
312 -};  
313 -  
314 -/**  
315 - * 开通服务  
316 - *  
317 - * @param 参数  
318 - * uid 用户id  
319 - * userName 姓名  
320 - * identityCardNo 身份证号码  
321 - * cardNo 银行卡号码  
322 - * mobile 手机号码  
323 - * snsCheckCode 验证码  
324 - * @returns {*}  
325 - */  
326 -const activateService = (params) => {  
327 - return api.get('', Object.assign({  
328 - method: 'user.instalment.activate'  
329 - }, params), {  
330 - timeout: 30000  
331 - });  
332 -}; 309 + return goods;
  310 + } else {
  311 + logger.error('get instalment promote goods return code is not 200');
  312 + return Promise.reject(result);
  313 + }
  314 + });
  315 + }
333 316
334 -/**  
335 - * 获取银行信息  
336 - *  
337 - * @param cardNo  
338 - * @param uid  
339 - * @returns {*}  
340 - */  
341 -const getBankInfo = (params) => {  
342 - return api.get('', {  
343 - method: 'user.instalment.getBankInfoByCardNo',  
344 - cardNo: params.cardNo,  
345 - uid: params.uid  
346 - }, {  
347 - timeout: API_TIMEOUT  
348 - });  
349 -}; 317 + /**
  318 + * 获取短信验证码
  319 + *
  320 + * @param uid 用户ID
  321 + * @param mobile 手机号码
  322 + */
  323 + sendVerifyCode(uid, mobile) {
  324 + return this.get({
  325 + data: {
  326 + method: 'user.instalment.getSnsCheckCode',
  327 + uid: uid,
  328 + mobile: mobile,
  329 + codeType: 1 // 授信
  330 + },
  331 + param: {
  332 + timeout: API_TIMEOUT
  333 + }
  334 + });
  335 + }
350 336
351 -/**  
352 - * 分期订单列表  
353 - *  
354 - * @params 参数  
355 - * uid  
356 - * type 订单类型 1:全部订单,2:还款中,3:已还清  
357 - * page 页数  
358 - * limit  
359 - * @returns {*}  
360 - */  
361 -const getInstallmentOrders = (params) => {  
362 - const method = 'app.SpaceOrders.getInstallment';  
363 -  
364 - if (!_DEBUG) {  
365 - return api.get('', {  
366 - method: method,  
367 - uid: params.uid,  
368 - type: params.type || 1,  
369 - page: params.page || 1,  
370 - limit: params.limit || 10  
371 - }, {  
372 - timeout: API_TIMEOUT  
373 - }).then((result) => {  
374 - return Promise.resolve(result); 337 + /**
  338 + * 开通服务
  339 + *
  340 + * @param 参数
  341 + * uid 用户id
  342 + * userName 姓名
  343 + * identityCardNo 身份证号码
  344 + * cardNo 银行卡号码
  345 + * mobile 手机号码
  346 + * snsCheckCode 验证码
  347 + * @returns {*}
  348 + */
  349 + activateService(params) {
  350 + return this.get({
  351 + data: Object.assign({
  352 + method: 'user.instalment.activate'
  353 + }, params),
  354 + param: {
  355 + timeout: 30000
  356 + }
375 }); 357 });
376 - } else {  
377 - return Promise.resolve(response[method]);  
378 } 358 }
379 -};  
380 359
381 -// 还款记录查询  
382 -const getQueryRePayList = (params) => {  
383 - return api.get('', _.assign({  
384 - method: 'app.order.queryRePayList',  
385 - pageSize: '20'  
386 - }, params), {  
387 - timeout: API_TIMEOUT  
388 - }).then((result) => {  
389 - if (result && result.code === 200) {  
390 - return _processRepayList(result.data);  
391 - } else {  
392 - logger.error('get queryRePayList data return code is not 200');  
393 - return {};  
394 - }  
395 - });  
396 -}; 360 + /**
  361 + * 获取银行信息
  362 + *
  363 + * @param cardNo
  364 + * @param uid
  365 + * @returns {*}
  366 + */
  367 + getBankInfo(params) {
  368 + return this.get({
  369 + data: {
  370 + method: 'user.instalment.getBankInfoByCardNo',
  371 + cardNo: params.cardNo,
  372 + uid: params.uid
  373 + },
  374 + param: {
  375 + timeout: API_TIMEOUT
  376 + }
  377 + });
  378 + }
397 379
398 -// 账号管理  
399 -const getBankCards = (uid) => {  
400 - return api.get('', {  
401 - method: 'user.instalment.getBankCards',  
402 - uid: uid  
403 - }, {  
404 - timeout: API_TIMEOUT  
405 - }).then((result) => {  
406 - if (result && result.code === 200) {  
407 - return _processBankCards(result.data); 380 + /**
  381 + * 分期订单列表
  382 + *
  383 + * @params 参数
  384 + * uid
  385 + * type 订单类型 1:全部订单,2:还款中,3:已还清
  386 + * page 页数
  387 + * limit
  388 + * @returns {*}
  389 + */
  390 + getInstallmentOrders(params) {
  391 + const method = 'app.SpaceOrders.getInstallment';
  392 +
  393 + if (!_DEBUG) {
  394 + return this.get({
  395 + data: {
  396 + method: method,
  397 + uid: params.uid,
  398 + type: params.type || 1,
  399 + page: params.page || 1,
  400 + limit: params.limit || 10
  401 + },
  402 + param: {
  403 + timeout: API_TIMEOUT
  404 + }
  405 + }).then((result) => {
  406 + return Promise.resolve(result);
  407 + });
408 } else { 408 } else {
409 - logger.error('get getBankCards data return code is not 200');  
410 - return ''; 409 + return Promise.resolve(response[method]);
411 } 410 }
412 - });  
413 -};  
414 -  
415 -/**  
416 - * 获取订单号  
417 - *  
418 - * @param 参数  
419 - * orderCode 订单号  
420 - *  
421 - * @returns {*}  
422 - */  
423 -const getInstallmentOrderDetail = (params) => {  
424 - const method = 'app.SpaceOrders.installDetail'; 411 + }
425 412
426 - if (!params.uid || !params.orderCode || !stringProcess.isNumeric(params.orderCode)) {  
427 - return Promise.resolve({}); 413 + // 还款记录查询
  414 + getQueryRePayList(params) {
  415 + return this.get({
  416 + data: _.assign({
  417 + method: 'app.order.queryRePayList',
  418 + pageSize: '20'
  419 + }, params),
  420 + param: {
  421 + timeout: API_TIMEOUT
  422 + }
  423 + }).then((result) => {
  424 + if (result && result.code === 200) {
  425 + return _processRepayList(result.data);
  426 + } else {
  427 + logger.error('get queryRePayList data return code is not 200');
  428 + return {};
  429 + }
  430 + });
428 } 431 }
429 432
430 - return api.get('', {  
431 - method: method,  
432 - uid: params.uid,  
433 - order_code: params.orderCode  
434 - }, {  
435 - timeout: API_TIMEOUT  
436 - }).then((result)=> {  
437 - return Promise.resolve(result);  
438 - });  
439 -}; 433 + // 账号管理
  434 + getBankCards(uid) {
  435 + return this.get({
  436 + data: {
  437 + method: 'user.instalment.getBankCards',
  438 + uid: uid
  439 + },
  440 + param: {
  441 + timeout: API_TIMEOUT
  442 + }
  443 + }).then((result) => {
  444 + if (result && result.code === 200) {
  445 + return _processBankCards(result.data);
  446 + } else {
  447 + logger.error('get getBankCards data return code is not 200');
  448 + return '';
  449 + }
  450 + });
  451 + }
440 452
441 -/**  
442 - * 计算总金额  
443 - *  
444 - * @param params 金额  
445 - *  
446 - * @returns {*|Promise.<TResult>}  
447 - */  
448 -const totalAmount = (params) => {  
449 - const method = 'app.order.calPrice';  
450 -  
451 - return api.get('', {  
452 - method: method,  
453 - prices: params  
454 - }, {  
455 - timeout: API_TIMEOUT  
456 - }).then((result)=> {  
457 - return Promise.resolve(result);  
458 - });  
459 -}; 453 + /**
  454 + * 获取订单号
  455 + *
  456 + * @param 参数
  457 + * orderCode 订单号
  458 + *
  459 + * @returns {*}
  460 + */
  461 + getInstallmentOrderDetail(params) {
  462 + const method = 'app.SpaceOrders.installDetail';
  463 +
  464 + if (!params.uid || !params.orderCode || !stringProcess.isNumeric(params.orderCode)) {
  465 + return Promise.resolve({});
  466 + }
460 467
  468 + return this.get({
  469 + data: {
  470 + method: method,
  471 + uid: params.uid,
  472 + order_code: params.orderCode
  473 + },
  474 + param: {
  475 + timeout: API_TIMEOUT
  476 + }
  477 + }).then((result)=> {
  478 + return Promise.resolve(result);
  479 + });
  480 + }
461 481
462 -const checkVerifyCode = (uid, mobile, code) => {  
463 - const method = 'user.instalment.validateSnsCheckCode'; 482 + /**
  483 + * 计算总金额
  484 + *
  485 + * @param params 金额
  486 + *
  487 + * @returns {*|Promise.<TResult>}
  488 + */
  489 + totalAmount(params) {
  490 + const method = 'app.order.calPrice';
  491 +
  492 + return this.get({
  493 + data: {
  494 + method: method,
  495 + prices: params
  496 + },
  497 + param: {
  498 + timeout: API_TIMEOUT
  499 + }
  500 + }).then((result)=> {
  501 + return Promise.resolve(result);
  502 + });
  503 + }
464 504
465 - return api.get('', {  
466 - uid: uid,  
467 - method: method,  
468 - mobile: mobile,  
469 - snsCheckCode: code,  
470 - codeType: 1 // 授信  
471 - }, {  
472 - timeout: API_TIMEOUT  
473 - }).then((result)=> {  
474 - return Promise.resolve(result);  
475 - });  
476 -}; 505 + checkVerifyCode(uid, mobile, code) {
  506 + const method = 'user.instalment.validateSnsCheckCode';
  507 +
  508 + return this.get({
  509 + data: {
  510 + uid: uid,
  511 + method: method,
  512 + mobile: mobile,
  513 + snsCheckCode: code,
  514 + codeType: 1 // 授信
  515 + },
  516 + param: {
  517 + timeout: API_TIMEOUT
  518 + }
  519 + }).then((result)=> {
  520 + return Promise.resolve(result);
  521 + });
  522 + }
477 523
478 -// 添加银行卡请求  
479 -const postAccount = (params) => {  
480 - return api.get('', _.assign({  
481 - method: 'user.instalment.bindingCards'  
482 - }, params), {  
483 - timeout: 6000  
484 - });  
485 -}; 524 + // 添加银行卡请求
  525 + postAccount(params) {
  526 + return this.get({
  527 + data: _.assign({
  528 + method: 'user.instalment.bindingCards'
  529 + }, params),
  530 + param: {
  531 + timeout: 6000
  532 + }
  533 + });
  534 + }
486 535
487 -// 获取银行卡详情  
488 -const getCardDetail = (uid, cardIdNo) => {  
489 - return api.get('', {  
490 - method: 'user.instalment.getBankCardDetail',  
491 - uid: uid,  
492 - cardIdNo: cardIdNo  
493 - }, {  
494 - timeout: API_TIMEOUT  
495 - }).then((result) => {  
496 - if (result && result.code === 200) {  
497 - return _processCardDetail(result.data);  
498 - } else {  
499 - logger.error('get getBankCards data return code is not 200');  
500 - return Promise.reject(result);  
501 - }  
502 - });  
503 -}; 536 + // 获取银行卡详情
  537 + getCardDetail(uid, cardIdNo) {
  538 + return this.get({
  539 + data: {
  540 + method: 'user.instalment.getBankCardDetail',
  541 + uid: uid,
  542 + cardIdNo: cardIdNo
  543 + },
  544 + param: {
  545 + timeout: API_TIMEOUT
  546 + }
  547 + }).then((result) => {
  548 + if (result && result.code === 200) {
  549 + return _processCardDetail(result.data);
  550 + } else {
  551 + logger.error('get getCardDetail data return code is not 200');
  552 + return Promise.reject(result);
  553 + }
  554 + });
  555 + }
504 556
505 -// 解除银行卡绑定  
506 -const delBankCard = (params) => {  
507 - return api.get('', _.assign({  
508 - method: 'user.instalment.unbindCard'  
509 - }, params)).then((res) => {  
510 - return res;  
511 - });  
512 -}; 557 + // 解除银行卡绑定
  558 + delBankCard(params) {
  559 + return this.get({
  560 + data: _.assign({
  561 + method: 'user.instalment.unbindCard'
  562 + }, params)
  563 + });
  564 + }
513 565
514 -// 切换银行卡主卡  
515 -const setMasterCard = (params) => {  
516 - return api.get('', _.assign({  
517 - method: 'user.instalment.toggleCard'  
518 - }, params)).then((res) => {  
519 - return res;  
520 - });  
521 -}; 566 + // 切换银行卡主卡
  567 + setMasterCard(params) {
  568 + return this.get({
  569 + data: _.assign({
  570 + method: 'user.instalment.toggleCard'
  571 + }, params)
  572 + });
  573 + }
522 574
523 -// 公告  
524 -const getNotices = () => {  
525 - return api.get('', {  
526 - method: 'app.resources.getNotices',  
527 - position: 8  
528 - }, {  
529 - cache: true  
530 - }).then((res) => {  
531 - if (res && res.code === 200) {  
532 - if (res.data && res.data.list.length < 1) {  
533 - return false; 575 + // 公告
  576 + getNotices() {
  577 + return this.get({
  578 + data: {
  579 + method: 'app.resources.getNotices',
  580 + position: 8
  581 + },
  582 + param: {
  583 + cache: true
  584 + }
  585 + }).then((res) => {
  586 + if (res && res.code === 200) {
  587 + if (res.data && res.data.list.length < 1) {
  588 + return false;
  589 + } else {
  590 + return res.data;
  591 + }
534 } else { 592 } else {
535 - return res.data; 593 + return false;
536 } 594 }
537 - } else {  
538 - return false;  
539 - }  
540 - });  
541 -};  
542 -  
543 -// 帮助中心  
544 -const getHelpDetail = (id) => {  
545 - return api.get('', {  
546 - method: 'app.helper.detail',  
547 - id: id  
548 - }, {  
549 - cache: true  
550 - }).then((result) => {  
551 - if (result && result.code === 200) {  
552 - return result.data;  
553 - } else {  
554 - return false;  
555 - }  
556 - });  
557 -}; 595 + });
  596 + }
558 597
559 -module.exports = {  
560 - getStauts,  
561 - getQueryCreditInfo,  
562 - getQueryAmtInfo,  
563 - getSearchIntallment,  
564 - sendVerifyCode,  
565 - activateService,  
566 - getResources,  
567 - getQueryAmtList,  
568 - getQueryRePayList,  
569 - getBankCards,  
570 - getBankInfo,  
571 - getInstallmentOrders,  
572 - getInstallmentOrderDetail,  
573 - totalAmount,  
574 - checkVerifyCode,  
575 - postAccount,  
576 - getCardDetail,  
577 - delBankCard,  
578 - setMasterCard,  
579 - getNotices,  
580 - getHelpDetail 598 + // 帮助中心
  599 + getHelpDetail(id) {
  600 + return this.get({
  601 + data: {
  602 + method: 'app.helper.detail',
  603 + id: id
  604 + },
  605 + param: {
  606 + cache: true
  607 + }
  608 + }).then((result) => {
  609 + if (result && result.code === 200) {
  610 + return result.data;
  611 + } else {
  612 + return false;
  613 + }
  614 + });
  615 + }
581 }; 616 };
582 617
583 618
584 -