q-koa 9.3.4 → 9.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/core/app.js CHANGED
@@ -1819,7 +1819,6 @@ APP.getAppByCtx = (ctx) => {
1819
1819
  const appName = ctx.router.opts.prefix.substring(1)
1820
1820
 
1821
1821
  let controller = ''
1822
- let payName = appName
1823
1822
  try {
1824
1823
  const url = ctx.request.url
1825
1824
  const _split = url.split('/')
@@ -1827,23 +1826,10 @@ APP.getAppByCtx = (ctx) => {
1827
1826
  } catch (e) {
1828
1827
  console.warn(e)
1829
1828
  }
1830
- try {
1831
- const url = ctx.request.url
1832
- const referer = ctx.request.header.referer
1833
- if (!referer.includes(url)) {
1834
- const arr = ctx.request.header.referer.split('/').reverse()
1835
- if (arr.length >= 4) {
1836
- payName = arr[2]
1837
- }
1838
- }
1839
- } catch (e) {
1840
- console.warn(e)
1841
- }
1842
1829
  const { [appName]: app } = ctx.app
1843
1830
  return {
1844
1831
  appName,
1845
1832
  app,
1846
- payName,
1847
1833
  controller,
1848
1834
  }
1849
1835
  }
@@ -15,7 +15,7 @@ exports.h5_pay = async (ctx) => {
15
15
  } = ctx.request.body
16
16
 
17
17
  const appConfig = getConfig(app)
18
- const { alipay_key, partner } = await appConfig.getObject('alipay')
18
+ const { alipay_key, key, partner } = await appConfig.getObject('alipay')
19
19
  const { is_dev } = await appConfig.getObject('base')
20
20
 
21
21
  const alipay = new Alipay({
@@ -25,8 +25,8 @@ exports.h5_pay = async (ctx) => {
25
25
  out_trade_no: out_trade_no
26
26
  ? out_trade_no
27
27
  : prefix
28
- ? `${appName}_${prefix}-${order_id}_${type}`
29
- : `${appName}_${order_id}_${type}`,
28
+ ? `${key}_${prefix}-${order_id}_${type}`
29
+ : `${key}_${order_id}_${type}`,
30
30
  total_fee: is_dev ? 0.01 : price,
31
31
  notify_url: `https://api.kuashou.com/${appName}/alipay/notify`,
32
32
  return_url,
@@ -765,7 +765,7 @@ exports.h5_pay = async (ctx) => {
765
765
  }/${appName}/weixin/notify`
766
766
  const result = await payObj.run({
767
767
  body: name,
768
- out_trade_no: `${appName}_${order_id}_${type}`,
768
+ out_trade_no: `${key}_${order_id}_${type}`,
769
769
  total_fee: is_admin || is_dev ? 1 : Math.round(price * 100),
770
770
  notify_url,
771
771
  scene_info: `{"h5_info": {"type":"Wap","wap_url": ${
@@ -782,7 +782,7 @@ exports.h5_pay = async (ctx) => {
782
782
  }
783
783
 
784
784
  exports.mp_pay = async (ctx) => {
785
- const { app, appName, payName } = getAppByCtx(ctx)
785
+ const { app, appName } = getAppByCtx(ctx)
786
786
  const {
787
787
  name,
788
788
  order_id,
@@ -814,6 +814,7 @@ exports.mp_pay = async (ctx) => {
814
814
  const appConfig = getConfig(app)
815
815
 
816
816
  const { mchId, key, partner_key } = await appConfig.getObject(pay_config)
817
+
817
818
  const { is_dev, site_host } = await appConfig.getObject('base')
818
819
  // 公众号支付用 服务号 appid,其他用小程序 appid
819
820
  const app_id =
@@ -843,12 +844,12 @@ exports.mp_pay = async (ctx) => {
843
844
  const out_trade_no = _out_trade_no
844
845
  ? _out_trade_no
845
846
  : prefix
846
- ? `${payName}_${prefix}-${order_id}_${type}`
847
- : `${payName}_${order_id}_${type}`
847
+ ? `${key}_${prefix}-${order_id}_${type}`
848
+ : `${key}_${order_id}_${type}`
848
849
 
849
850
  const notify_url = `https://${
850
851
  site_host || 'api.kuashou.com'
851
- }/${payName}/weixin/notify`
852
+ }/${appName}/weixin/notify`
852
853
  const prePayResult = await pay({
853
854
  openid: userDetail.openid,
854
855
  body: name,
@@ -944,7 +945,7 @@ exports.mp_pay_new = async (ctx) => {
944
945
  const appConfig = getConfig(app)
945
946
 
946
947
  const { app_id, app_secrect } = await appConfig.getObject(config)
947
- const { mchId } = await appConfig.getObject(pay_config)
948
+ const { mchId, key } = await appConfig.getObject(pay_config)
948
949
  const { is_dev, site_host } = await appConfig.getObject('base')
949
950
 
950
951
  const weixinMp = new WeixinMp({
@@ -958,8 +959,8 @@ exports.mp_pay_new = async (ctx) => {
958
959
  const out_trade_no = _out_trade_no
959
960
  ? _out_trade_no
960
961
  : prefix
961
- ? `${appName}_${prefix}-${order_id}`
962
- : `${appName}_${order_id}`
962
+ ? `${key}_${prefix}-${order_id}`
963
+ : `${key}_${order_id}`
963
964
 
964
965
  const prePayResult = await weixinMp.createOrder({
965
966
  openid: userDetail.openid,
@@ -1004,6 +1005,7 @@ exports.notify = async (ctx) => {
1004
1005
  order: model,
1005
1006
  order_price,
1006
1007
  transactionid,
1008
+ out_trade_no: result.xml.out_trade_no,
1007
1009
  })
1008
1010
  }
1009
1011
 
@@ -1227,6 +1229,7 @@ exports.checkPay = async (ctx) => {
1227
1229
  prefix,
1228
1230
  config = 'weixin_mp',
1229
1231
  pay_config = 'weixin_pay',
1232
+ out_trade_no: _out_trade_no,
1230
1233
  } = ctx.request.body
1231
1234
 
1232
1235
  const orderModel = prefix ? `${prefix}_order` : 'order'
@@ -1256,7 +1259,9 @@ exports.checkPay = async (ctx) => {
1256
1259
  })
1257
1260
  }
1258
1261
  const orderPrefix = prefix ? `${prefix}-` : ''
1259
- const out_trade_no = `${appName}_${orderPrefix}${id}_MP-WEIXIN`
1262
+ const out_trade_no = _out_trade_no
1263
+ ? _out_trade_no
1264
+ : `${key}_${orderPrefix}${id}_MP-WEIXIN`
1260
1265
  const payResult = await checkOrder({
1261
1266
  out_trade_no,
1262
1267
  })
@@ -1282,6 +1287,7 @@ exports.checkPayNew = async (ctx) => {
1282
1287
  prefix,
1283
1288
  config = 'weixin_mp',
1284
1289
  pay_config = 'weixin_pay',
1290
+ out_trade_no: _out_trade_no,
1285
1291
  } = ctx.request.body
1286
1292
 
1287
1293
  const orderModel = prefix ? `${prefix}_order` : 'order'
@@ -1294,7 +1300,7 @@ exports.checkPayNew = async (ctx) => {
1294
1300
 
1295
1301
  const appConfig = getConfig(app)
1296
1302
  const { app_id, app_secrect } = await appConfig.getObject(config)
1297
- const { mchId } = await appConfig.getObject(pay_config)
1303
+ const { mchId, key } = await appConfig.getObject(pay_config)
1298
1304
 
1299
1305
  const weixinMp = new WeixinMp({
1300
1306
  appid: app_id,
@@ -1303,7 +1309,9 @@ exports.checkPayNew = async (ctx) => {
1303
1309
  weixinMp.init()
1304
1310
 
1305
1311
  const orderPrefix = prefix ? `${prefix}-` : ''
1306
- const out_trade_no = `${appName}_${orderPrefix}${id}`
1312
+ const out_trade_no = _out_trade_no
1313
+ ? _out_trade_no
1314
+ : `${key}_${orderPrefix}${id}`
1307
1315
 
1308
1316
  const payResult = await weixinMp.getOrder({
1309
1317
  trade_no: out_trade_no,
@@ -15,6 +15,7 @@ exports.refund = async ({
15
15
  type = '',
16
16
  config = 'weixin_mp',
17
17
  pay_config = 'weixin_pay',
18
+ out_trade_no: _out_trade_no,
18
19
  ...rest
19
20
  }) => {
20
21
  const { app, appName } = getAppByCtx(ctx)
@@ -36,9 +37,11 @@ exports.refund = async ({
36
37
  ), // 微信商户平台证书
37
38
  })
38
39
  const orderModel = prefix ? `${prefix}_order` : 'order'
39
- const out_trade_no = prefix
40
- ? `${appName}_${prefix}-${id}_MP-WEIXIN`
41
- : `${appName}_${id}_MP-WEIXIN`
40
+ const out_trade_no = _out_trade_no
41
+ ? _out_trade_no
42
+ : prefix
43
+ ? `${key}_${prefix}-${id}_MP-WEIXIN`
44
+ : `${key}_${id}_MP-WEIXIN`
42
45
  const orderDetail = await app.model[orderModel].findOne({
43
46
  where: {
44
47
  id,
@@ -77,13 +80,14 @@ exports.refund_new = async ({
77
80
  type = '',
78
81
  config = 'weixin_mp',
79
82
  pay_config = 'weixin_pay',
83
+ out_trade_no: _out_trade_no,
80
84
  ...rest
81
85
  }) => {
82
86
  const { app, appName } = getAppByCtx(ctx)
83
87
  const appConfig = getConfig(app)
84
88
 
85
89
  const { app_id, app_secrect } = await appConfig.getObject(config)
86
- const { mchId } = await appConfig.getObject(pay_config)
90
+ const { mchId, key } = await appConfig.getObject(pay_config)
87
91
 
88
92
  const weixinMp = new WeixinMp({
89
93
  appid: app_id,
@@ -92,9 +96,11 @@ exports.refund_new = async ({
92
96
  weixinMp.init()
93
97
 
94
98
  const orderModel = prefix ? `${prefix}_order` : 'order'
95
- const out_trade_no = prefix
96
- ? `${appName}_${prefix}-${id}`
97
- : `${appName}_${id}`
99
+ const out_trade_no = _out_trade_no
100
+ ? _out_trade_no
101
+ : prefix
102
+ ? `${key}_${prefix}-${id}`
103
+ : `${key}_${id}`
98
104
 
99
105
  const orderDetail = await app.model[orderModel].findOne({
100
106
  where: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "q-koa",
3
- "version": "9.3.4",
3
+ "version": "9.4.1",
4
4
  "description": "",
5
5
  "main": "index.js",
6
6
  "scripts": {