Skip to content

Commit ff9b6b7

Browse files
committed
查询收获地址
1 parent f2b63a1 commit ff9b6b7

File tree

3 files changed

+557
-5
lines changed

3 files changed

+557
-5
lines changed

db/order.js

+130
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,130 @@
1+
// 引入 models
2+
const models = require('../models');
3+
const code = require('../lib/code');
4+
const Sequelize = require('sequelize');
5+
const Op = Sequelize.Op;
6+
7+
submitAction = async (parms) => {
8+
try{
9+
// const { openId } = request.body.openId;
10+
// let goodsId = request.body.goodsId;
11+
// let allPrise = request.body.allPrise
12+
// 是否存在订单
13+
const isOrder = await models.nideshop_order.findAndCountAll({
14+
where: {
15+
user_id: parms.openId,
16+
},
17+
});
18+
/**
19+
* 存在
20+
*
21+
*/
22+
if (isOrder.length > 0) {
23+
//现在的goodsId加上以前的
24+
// goodsId = isOrder[0].goods_id + ',' + goodsId;
25+
// allPrise = isOrder[0].allprise + allPrise
26+
const data = await models.nideshop_order.findAndCountAll({
27+
where: {
28+
user_id: parms.openId,
29+
}
30+
}).update(parms,{
31+
where: {
32+
user_id: parms.openId,
33+
goods_id: parms.goodsId,
34+
allprice: parms.allPrise
35+
}
36+
37+
});
38+
console.log(data);
39+
if (data) {
40+
return {
41+
results: {
42+
data: true,
43+
},
44+
dataBaseError: false
45+
}
46+
} else {
47+
return {
48+
results: {
49+
data: false,
50+
},
51+
dataBaseError: false
52+
}
53+
}
54+
} else {
55+
const data = await models.nideshop_order.create({
56+
user_id: parms.openId,
57+
goods_id: parms.goodsId,
58+
allprice: parms.allPrise
59+
});
60+
if (data) {
61+
return {
62+
results: {
63+
data: true,
64+
},
65+
dataBaseError: false
66+
};
67+
} else {
68+
return {
69+
results: {
70+
data: false,
71+
},
72+
dataBaseError: false
73+
}
74+
}
75+
}
76+
}
77+
catch(e){
78+
return { results: e, dataBaseError: true}
79+
}
80+
}
81+
82+
detailAction = async (request) => {
83+
try{
84+
// const openId = request.query.openId;
85+
const addressId = request.query.addressId || '';
86+
const orderDetail = await models.nideshop_order.findAndCountAll({
87+
where: {
88+
user_id: request.query.openId,
89+
}
90+
});
91+
// var goodsIds = orderDetail[0].goods_id.split(",");
92+
// console.log(goodsIds);
93+
94+
const list = await models.nideshop_cart.findAndCountAll({
95+
where: {
96+
user_id: request.query.openIder,
97+
},
98+
});
99+
// 收获地址
100+
// var addressList ;
101+
102+
const addressList = await models.nideshop_address.findAndCountAll({
103+
where: {
104+
user_id: request.query.openIdUser,
105+
id: request.query.addressIdUser
106+
},
107+
order: [
108+
['is_default', 'desc']
109+
]
110+
});
111+
112+
return {
113+
results: {
114+
orderDetail,
115+
list,
116+
// orderDetail,
117+
addressList
118+
},
119+
dataBaseError: false
120+
}
121+
}
122+
catch(e){
123+
return { results: e, dataBaseError: true}
124+
}
125+
}
126+
127+
module.exports = {
128+
submitAction,
129+
detailAction
130+
}

routes/order.js

+29-5
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,50 @@
1+
const controllers = require('../db/index');
2+
const middleware = require('../middleware');
3+
const Joi = require('joi');
4+
const { paginationDefine } = require('../lib/router-helper');
15
const GROUP_NAME = 'order';
26

37
module.exports = [
48
{
59
method: 'POST',
6-
path: `/${GROUP_NAME}/{isOrder}/submitAction`,
10+
path: `/${GROUP_NAME}/submitAction`,
711
handler: async (request, reply) => {
8-
reply();
12+
let parms = request.payload;
13+
let res = await controllers.order.submitAction(parms);
14+
middleware.dbErrorMiddleware(request, res, reply);
915
},
1016
config: {
1117
tags: ['api', GROUP_NAME],
1218
description: '提交订单',
19+
validate: {
20+
// ...jwtHeaderDefine,
21+
payload: Joi.object().keys({
22+
goodsId: Joi.string(),
23+
openId: Joi.string(),
24+
allPrise: Joi.string(),
25+
})
26+
},
1327
},
1428
},
1529
{
1630
method: 'GET',
17-
path: `/${GROUP_NAME}/{addressId}/detailAction`,
31+
path: `/${GROUP_NAME}/detailAction`,
1832
handler: async (request, reply) => {
19-
reply();
33+
let res = await controllers.order.detailAction(request);
34+
middleware.dbErrorMiddleware(request, res, reply);
2035
},
2136
config: {
2237
tags: ['api', GROUP_NAME],
23-
description: '提交订单的详细数据'
38+
description: '提交订单的详细数据',
39+
validate: {
40+
query: {
41+
...paginationDefine,
42+
openId: Joi.string(),
43+
openIder: Joi.string(),
44+
openIdUser: Joi.string(),
45+
addressIdUser: Joi.string().required(),
46+
}
47+
},
2448
},
2549
},
2650
];

0 commit comments

Comments
 (0)