Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
S
sb_h5
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
data_server
sb_h5
Commits
ddc2160b
Commit
ddc2160b
authored
Apr 29, 2019
by
高诸锋
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[fix]
parent
35a5cfc7
Pipeline
#6716
passed with stage
in 23 seconds
Changes
6
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
30 additions
and
48 deletions
+30
-48
order.js
app/controller/order.js
+2
-2
task.js
app/controller/task.js
+3
-6
router.js
app/router.js
+1
-1
order.js
app/service/order.js
+2
-2
partner.js
app/service/partner.js
+19
-33
scripts.js
app/service/scripts.js
+3
-4
No files found.
app/controller/order.js
View file @
ddc2160b
...
...
@@ -81,7 +81,7 @@ class OrderController extends Controller {
return
ctx
.
fail
(
'未开通此服务'
);
}
await
service
.
signature
.
signatureCheck
(
ctx
.
request
.
body
);
const
data
=
await
service
.
order
.
getOneByOrderId
(
orderId
);
const
data
=
await
service
.
order
.
getOneByOrderId
(
{
orderId
}
);
if
(
data
)
{
if
(
data
.
status
===
'success'
)
{
const
result
=
await
service
.
storage
.
read
(
orderId
,
appKey
);
...
...
@@ -149,7 +149,7 @@ class OrderController extends Controller {
if
(
!
(
appKeyInfo
&&
appKeyInfo
.
valid
===
true
&&
appKeyInfo
.
enableHfView
===
true
))
{
return
ctx
.
fail
(
'未开通此服务'
);
}
const
data
=
await
service
.
order
.
getOneByOrderId
(
orderId
);
const
data
=
await
service
.
order
.
getOneByOrderId
(
{
orderId
}
);
if
(
data
)
{
if
(
data
.
status
===
'success'
&&
(
data
.
appKey
===
appKey
))
{
const
result
=
await
service
.
storage
.
read
(
orderId
,
appKey
);
...
...
app/controller/task.js
View file @
ddc2160b
...
...
@@ -23,7 +23,6 @@ class TaskController extends Controller {
};
this
.
centersInfoRule
=
{
sign
:
'string'
,
type
:
{
type
:
'enum'
,
values
:
[
'shebao'
]
},
params
:
{
type
:
'object'
,
rule
:
{
...
...
@@ -139,7 +138,7 @@ class TaskController extends Controller {
if
(
!
order
)
{
throw
new
Error
(
`【taskId】:
${
taskId
}
任务已经结束.`
);
}
const
{
orderId
,
appKey
,
notifyUrl
,
userId
,
cityId
}
=
order
;
const
{
orderId
,
appKey
,
cityId
}
=
order
;
insertData
.
orderId
=
orderId
;
// insertData.cityName = result.data.jsName.split('.')[0];
insertData
.
jsName
=
result
.
data
.
jsName
;
...
...
@@ -149,7 +148,7 @@ class TaskController extends Controller {
insertData
.
appKey
=
appKey
;
delete
insertData
.
code
;
await
service
.
storage
.
write
(
insertData
);
await
service
.
partner
.
notify
(
{
taskId
,
notifyUrl
,
orderId
,
userId
,
appKey
}
);
await
service
.
partner
.
notify
(
order
);
}
catch
(
err
)
{
ctx
.
logger
.
error
(
`【controller/task/handleCallback err】:
${
err
}${
JSON
.
stringify
(
result
)}
`
);
taskNote
=
{
...
...
@@ -172,7 +171,6 @@ class TaskController extends Controller {
const
{
ctx
,
service
}
=
this
;
try
{
ctx
.
validate
(
this
.
centersInfoRule
);
// await service.signature.signatureCheck(ctx.request.body);
const
result
=
await
service
.
scripts
.
getCentersInfo
(
ctx
.
request
.
body
);
ctx
.
body
=
result
;
return
;
...
...
@@ -193,8 +191,7 @@ class TaskController extends Controller {
async
fetchCityConfig
()
{
const
{
ctx
,
service
}
=
this
;
try
{
ctx
.
validate
(
this
.
centersInfoRule
);
const
result
=
await
service
.
scripts
.
getCityInfo
(
ctx
.
request
.
body
);
const
result
=
await
service
.
scripts
.
getCityInfo
();
ctx
.
body
=
result
;
return
;
}
catch
(
err
)
{
...
...
app/router.js
View file @
ddc2160b
...
...
@@ -35,6 +35,6 @@ module.exports = app => {
sbRouter
.
post
(
'/getOrderSn'
,
controller
.
order
.
fetchOrderId
);
// 合作方获取订单号(老版H5)
sbRouter
.
post
(
'/getData'
,
controller
.
order
.
partnerShow
);
// 合作方获取订单数据
sbRouter
.
post
(
'/getCentersInfo'
,
controller
.
task
.
fetchCentersInfo
);
// 合作方获取社保中心配置
sbRouter
.
pos
t
(
'/getCityConfig'
,
controller
.
task
.
fetchCityConfig
);
// 合作方获取社保省份和社保中心关系
sbRouter
.
ge
t
(
'/getCityConfig'
,
controller
.
task
.
fetchCityConfig
);
// 合作方获取社保省份和社保中心关系
sbRouter
.
get
(
'/orderData/:appKey/:orderId'
,
controller
.
order
.
orderShow
);
// 获取展示页面数据
};
app/service/order.js
View file @
ddc2160b
...
...
@@ -3,10 +3,10 @@
const
Service
=
require
(
'egg'
).
Service
;
class
OrderService
extends
Service
{
async
getOneByOrderId
(
orderId
)
{
async
getOneByOrderId
(
params
)
{
const
{
ctx
}
=
this
;
const
order
=
await
ctx
.
model
.
TaskStatus
.
findOne
({
where
:
{
orderId
}
,
where
:
params
,
});
return
order
;
}
...
...
app/service/partner.js
View file @
ddc2160b
...
...
@@ -96,43 +96,29 @@ class PartnerService extends Service {
// 查询结束后回调通知合作方
// 对于状态已经是成功的订单号不会在做通知
// orderId/userId/status
async
notify
(
{
taskId
,
cb
,
orderId
,
userId
,
appKey
,
status
=
'success'
}
)
{
async
notify
(
order
)
{
const
{
ctx
,
service
}
=
this
;
if
(
!
cb
)
{
if
(
ctx
.
app
.
notifyMap
.
has
(
appKey
))
{
cb
=
ctx
.
app
.
notifyMap
.
get
(
appKey
);
}
else
{
ctx
.
logger
.
info
(
`【orderId】:
${
orderId
}
没有回调地址`
);
return
;
const
{
orderId
,
notifyUrl
,
userId
,
notice
}
=
order
;
const
dbRes
=
await
service
.
order
.
getOneByOrderId
({
orderId
,
notice
:
1
});
if
(
!
dbRes
&&
notifyUrl
&&
notice
!==
'1'
)
{
const
ret
=
await
ctx
.
curl
(
notifyUrl
,
{
charset
:
'utf-8'
,
timeout
:
[
30000
,
30000
],
contentType
:
'json'
,
method
:
'POST'
,
data
:
{
order_id
:
orderId
,
user_id
:
userId
,
status
:
'success'
,
},
}
}
const
data
=
await
service
.
cache
.
get
({
key
:
taskId
});
if
(
data
&&
data
.
status
===
'success'
)
{
ctx
.
logger
.
info
(
`【taskId】:
${
taskId
}
模拟器多次通知任务成功情况`
);
return
;
}
if
(
data
)
{
try
{
await
ctx
.
curl
(
cb
,
{
method
:
'POST'
,
data
:
{
orderSn
:
orderId
,
status
,
userId
},
dataType
:
'json'
,
contentType
:
'json'
,
timeout
:
[
'30s'
,
'30s'
],
});
ctx
.
model
.
TaskStatus
.
update
(
{
notice
:
1
},
{
where
:
{
taskId
}
}
);
}
catch
(
e
)
{
// 回调失败
ctx
.
logger
.
error
(
`【cb】:
${
cb
}
回调通知失败`
);
ctx
.
model
.
TaskStatus
.
update
(
{
notice
:
0
},
{
where
:
{
taskId
}
}
);
);
ctx
.
logger
.
info
(
`【Partner】 notice
${
notifyUrl
}
`
,
'orderId:'
,
orderId
,
'result:'
,
ret
.
status
,
JSON
.
stringify
(
ret
.
data
));
if
(
ret
.
status
===
200
)
{
await
order
.
update
({
notice
:
'1'
});
}
}
return
;
}
}
...
...
app/service/scripts.js
View file @
ddc2160b
...
...
@@ -183,7 +183,7 @@ class ScriptsService extends Service {
dataType
:
'json'
,
contentType
:
'json'
,
method
:
'POST'
,
data
:
params
,
data
:
{
type
:
'shebao'
,
...
params
}
,
});
return
result
.
data
;
}
catch
(
err
)
{
...
...
@@ -192,7 +192,7 @@ class ScriptsService extends Service {
}
}
async
getCityInfo
(
params
)
{
async
getCityInfo
()
{
try
{
const
{
cityInfoUrl
,
ctx
}
=
this
;
const
result
=
await
ctx
.
curl
(
cityInfoUrl
,
{
...
...
@@ -200,8 +200,7 @@ class ScriptsService extends Service {
timeout
:
[
'30s'
,
'30s'
],
dataType
:
'json'
,
contentType
:
'json'
,
method
:
'POST'
,
data
:
params
,
method
:
'get'
,
});
return
result
.
data
;
}
catch
(
err
)
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment