Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
G
gjjh5
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
gjjh5
Commits
45b5c8a8
Commit
45b5c8a8
authored
Feb 26, 2019
by
姜登
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
gjj
parent
ffc11e89
Pipeline
#3898
passed with stage
in 3 seconds
Changes
15
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
105 additions
and
63 deletions
+105
-63
order.js
app/controller/order.js
+15
-15
task.js
app/controller/task.js
+2
-2
token.js
app/controller/token.js
+1
-1
verifyAppKey.js
app/middleware/verifyAppKey.js
+13
-0
appKey.js
app/schedule/appKey.js
+23
-0
cache.js
app/service/cache.js
+2
-2
partner.js
app/service/partner.js
+4
-4
schedule.js
app/service/schedule.js
+0
-20
scripts.js
app/service/scripts.js
+2
-2
signature.js
app/service/signature.js
+4
-4
storage.js
app/service/storage.js
+3
-3
task.js
app/service/task.js
+5
-5
config.default.js
config/config.default.js
+4
-0
config.local.js
config/config.local.js
+11
-0
config.prod.js
config/config.prod.js
+16
-5
No files found.
app/controller/order.js
View file @
45b5c8a8
...
...
@@ -91,21 +91,21 @@ class OrderController extends Controller {
}
}
async
fetchOrderId
()
{
const
{
ctx
,
service
}
=
this
;
const
signParams
=
ctx
.
helper
.
buildRequestBody
({
token
});
const
{
appKey
}
=
signParams
.
params
;
const
orderId
=
await
service
.
signature
.
createOrderId
(
signParams
);
await
service
.
order
.
create
({
orderId
,
taskId
:
''
,
userId
:
''
,
cityId
:
''
,
appKey
:
appKey
,
status
:
'init'
,
});
ctx
.
success
({
orderId
});
}
//
async fetchOrderId() {
//
const { ctx, service } = this;
//
const signParams = ctx.helper.buildRequestBody({ token });
//
const { appKey } = signParams.params;
//
const orderId = await service.signature.createOrderId(signParams);
//
await service.order.create({
//
orderId,
//
taskId: '',
//
userId: '',
//
cityId: '',
//
appKey: appKey,
//
status: 'init',
//
});
//
ctx.success({ orderId });
//
}
}
module
.
exports
=
OrderController
;
app/controller/task.js
View file @
45b5c8a8
...
...
@@ -137,7 +137,7 @@ class TaskController extends Controller {
await
service
.
storage
.
write
(
insertData
);
await
service
.
partner
.
notice
(
order
);
}
catch
(
err
)
{
ctx
.
logger
.
error
(
'handleCallback'
,
err
,
result
);
ctx
.
logger
.
error
(
'handleCallback'
,
JSON
.
stringify
(
err
),
JSON
.
stringify
(
result
)
);
taskNote
=
{
status
:
'failure'
,
note
:
{
message
:
err
.
message
},
...
...
@@ -145,7 +145,7 @@ class TaskController extends Controller {
}
break
;
default
:
ctx
.
logger
.
warn
(
'handleCallback'
,
result
);
ctx
.
logger
.
warn
(
'handleCallback'
,
JSON
.
stringify
(
result
)
);
break
;
}
await
service
.
cache
.
set
({
...
...
app/controller/token.js
View file @
45b5c8a8
...
...
@@ -28,7 +28,7 @@ class TokenController extends Controller {
try
{
ctx
.
validate
(
this
.
createRule
);
}
catch
(
err
)
{
ctx
.
logger
.
info
(
err
);
ctx
.
logger
.
info
(
JSON
.
stringify
(
err
)
);
return
ctx
.
body
=
{
code
:
-
1
,
message
:
err
.
message
};
}
try
{
...
...
app/middleware/verifyAppKey.js
0 → 100644
View file @
45b5c8a8
'use strict'
;
module
.
exports
=
(
options
,
app
)
=>
{
return
async
function
(
ctx
,
next
)
{
const
{
appKey
}
=
ctx
.
request
.
body
;
// 可以在这里增加验签的功能;
if
(
appKey
&&
ctx
.
app
.
appKeyArr
.
includes
(
appKey
))
{
await
next
();
}
else
{
ctx
.
throw
(
400
,
'无效的appKey'
);
}
};
};
app/schedule/appKey.js
0 → 100644
View file @
45b5c8a8
'use strict'
;
module
.
exports
=
{
schedule
:
{
interval
:
'5m'
,
// 5分钟间隔
type
:
'all'
,
// 所有woker
immediate
:
true
,
},
async
task
(
ctx
)
{
try
{
const
dbRes
=
await
ctx
.
cusPro
.
query
(
'SELECT app_key FROM customer_product WHERE goods_sn = 102 AND state = 1'
,
{
type
:
'SELECT'
,
});
const
arr
=
[];
for
(
const
item
of
dbRes
)
{
arr
.
push
(
item
.
app_key
);
}
ctx
.
app
.
appKeyArr
=
arr
;
}
catch
(
e
)
{
ctx
.
logger
.
error
(
'【schedule/flash_cus_pro】catch error:'
,
JSON
.
stringify
(
e
));
}
},
};
app/service/cache.js
View file @
45b5c8a8
...
...
@@ -33,7 +33,7 @@ class CacheService extends Service {
}
else
{
ctx
.
logger
.
error
(
'【Cache】set no order or already success'
,
key
);
}
ctx
.
logger
.
info
(
`【Cache】set
${
key
}
value:`
,
value
,
'order:'
,
order
);
ctx
.
logger
.
info
(
`【Cache】set
${
key
}
value:`
,
JSON
.
stringify
(
value
)
,
'order:'
,
order
);
}
/**
...
...
@@ -53,7 +53,7 @@ class CacheService extends Service {
where
:
{
taskId
:
key
},
});
if
(
order
)
{
ctx
.
logger
.
info
(
`【Cache】get From Model
${
key
}
order:`
,
{
status
:
order
.
status
,
note
:
order
.
note
}
);
ctx
.
logger
.
info
(
`【Cache】get From Model
${
key
}
order:`
,
JSON
.
stringify
({
status
:
order
.
status
,
note
:
order
.
note
})
);
return
{
status
:
order
.
status
,
note
:
order
.
note
};
}
ctx
.
logger
.
error
(
`【Cache】get No Result
${
key
}
`
);
...
...
app/service/partner.js
View file @
45b5c8a8
...
...
@@ -44,7 +44,7 @@ class PartnerService extends Service {
try
{
return
JSON
.
parse
(
data
);
}
catch
(
err
)
{
ctx
.
logger
.
error
(
'【Partner】 fetchScripts'
,
redisScriptsPrefix
+
appKey
,
'result:'
,
data
,
err
);
ctx
.
logger
.
error
(
'【Partner】 fetchScripts'
,
redisScriptsPrefix
+
appKey
,
'result:'
,
JSON
.
stringify
(
data
)
,
err
);
await
this
.
app
.
cache
.
del
(
redisScriptsPrefix
+
appKey
);
}
}
...
...
@@ -56,7 +56,7 @@ class PartnerService extends Service {
dataType
:
'json'
,
method
:
'GET'
,
});
ctx
.
logger
.
info
(
`【Partner】 fetchTheme
${
url
}
`
,
ret
.
data
);
ctx
.
logger
.
info
(
`【Partner】 fetchTheme
${
url
}
`
,
JSON
.
stringify
(
ret
.
data
)
);
if
(
ret
.
status
===
200
&&
ret
.
data
&&
ret
.
data
.
id
===
appKey
)
{
await
this
.
app
.
cache
.
set
(
redisScriptsPrefix
+
appKey
,
JSON
.
stringify
(
ret
.
data
),
300
);
}
...
...
@@ -69,7 +69,7 @@ class PartnerService extends Service {
try
{
return
JSON
.
parse
(
data
);
}
catch
(
err
)
{
ctx
.
logger
.
error
(
'【Partner】 fetchAgreements'
,
redisAgreementsPrefix
+
id
,
'result:'
,
data
,
err
);
ctx
.
logger
.
error
(
'【Partner】 fetchAgreements'
,
redisAgreementsPrefix
+
id
,
'result:'
,
JSON
.
stringify
(
data
)
,
err
);
await
this
.
app
.
cache
.
del
(
redisAgreementsPrefix
+
id
);
}
}
...
...
@@ -80,7 +80,7 @@ class PartnerService extends Service {
dataType
:
'json'
,
method
:
'GET'
,
});
ctx
.
logger
.
info
(
`【Partner】 fetchAgreements
${
url
}
`
,
ret
.
data
);
ctx
.
logger
.
info
(
`【Partner】 fetchAgreements
${
url
}
`
,
JSON
.
stringify
(
ret
.
data
)
);
if
(
ret
.
status
===
200
&&
ret
.
data
&&
ret
.
data
.
id
===
id
)
{
await
this
.
app
.
cache
.
set
(
redisScriptsPrefix
+
appKey
,
JSON
.
stringify
(
ret
.
data
),
300
);
}
...
...
app/service/schedule.js
deleted
100644 → 0
View file @
ffc11e89
'use strict'
;
const
Service
=
require
(
'egg'
).
Service
;
class
scheduleService
extends
Service
{
constructor
()
{
}
async
fetchCityList
()
{
}
async
fetchPartnerLimit
()
{
}
}
module
.
exports
=
scheduleService
;
\ No newline at end of file
app/service/scripts.js
View file @
45b5c8a8
...
...
@@ -136,7 +136,7 @@ class ScriptsService extends Service {
if
(
result
.
data
.
status
===
0
)
{
return
result
.
data
.
content
.
address_detail
.
city
;
}
ctx
.
logger
.
error
(
'fetchCityFormIp'
,
url
,
result
.
data
);
ctx
.
logger
.
error
(
'fetchCityFormIp'
,
url
,
JSON
.
stringify
(
result
.
data
)
);
return
'北京市'
;
}
...
...
@@ -148,7 +148,7 @@ class ScriptsService extends Service {
dataType
:
'json'
,
contentType
:
'json'
,
});
ctx
.
logger
.
info
(
`fetchScriptByCityName,
${
baseURL
+
fetchScriptByCityNameUrl
+
'?name='
+
name
}
`
,
'result:'
,
result
.
data
);
ctx
.
logger
.
info
(
`fetchScriptByCityName,
${
baseURL
+
fetchScriptByCityNameUrl
+
'?name='
+
name
}
`
,
'result:'
,
JSON
.
stringify
(
result
.
data
)
);
return
result
.
data
;
}
...
...
app/service/signature.js
View file @
45b5c8a8
...
...
@@ -35,7 +35,7 @@ class SignatureService extends Service {
if
(
result
.
status
!==
200
)
{
const
errorMsg
=
result
.
data
&&
result
.
data
.
error_msg
?
result
.
data
.
error_msg
:
'unknown error'
;
this
.
ctx
.
throw
(
result
.
status
,
errorMsg
);
}
}
if
(
result
.
data
.
code
!==
0
)
{
this
.
ctx
.
throw
(
400
,
{
message
:
result
.
data
.
msg
,
code
:
result
.
data
.
code
});
}
...
...
@@ -48,7 +48,7 @@ class SignatureService extends Service {
data
:
params
,
contentType
:
'json'
,
});
ctx
.
logger
.
info
(
'【Signature】createToken params'
,
params
,
'result:'
,
result
.
data
);
ctx
.
logger
.
info
(
'【Signature】createToken params'
,
JSON
.
stringify
(
params
),
'result:'
,
JSON
.
stringify
(
result
.
data
)
);
this
.
_checkSuccess
(
result
);
return
result
.
data
.
data
.
token
;
}
...
...
@@ -60,7 +60,7 @@ class SignatureService extends Service {
data
:
params
,
contentType
:
'json'
,
});
ctx
.
logger
.
info
(
'【Signature】createOrderId params'
,
params
,
'result:'
,
result
.
data
);
ctx
.
logger
.
info
(
'【Signature】createOrderId params'
,
JSON
.
stringify
(
params
),
'result:'
,
JSON
.
stringify
(
result
.
data
)
);
this
.
_checkSuccess
(
result
);
return
result
.
data
.
data
.
orderSn
;
}
...
...
@@ -72,7 +72,7 @@ class SignatureService extends Service {
data
:
{
...
params
,
type
:
signatureType
},
contentType
:
'json'
,
});
ctx
.
logger
.
info
(
'【Signature】signatureCheck params'
,
params
,
'result:'
,
result
.
data
);
ctx
.
logger
.
info
(
'【Signature】signatureCheck params'
,
JSON
.
stringify
(
params
),
'result:'
,
JSON
.
stringify
(
result
.
data
)
);
this
.
_checkSuccess
(
result
);
return
result
.
data
.
data
;
...
...
app/service/storage.js
View file @
45b5c8a8
...
...
@@ -35,7 +35,7 @@ class StorageService extends Service {
contentType
:
'json'
,
});
ctx
.
logger
.
info
(
`【Storage】write url:
${
writeUrl
}
params`
,
{
...
data
,
serviceType
:
writeType
},
'result:'
,
result
.
data
);
ctx
.
logger
.
info
(
`【Storage】write url:
${
writeUrl
}
params`
,
JSON
.
stringify
({
...
data
,
serviceType
:
writeType
}),
'result:'
,
JSON
.
stringify
(
result
.
data
)
);
if
(
result
.
data
.
code
!==
'0'
)
{
throw
new
Error
(
'存储数据出错'
);
}
...
...
@@ -48,10 +48,10 @@ class StorageService extends Service {
method
:
'get'
,
contentType
:
'json'
,
});
ctx
.
logger
.
info
(
`【Storage】read url:
${
readUrl
}
/
${
orderId
}
write result:`
,
result
.
data
);
ctx
.
logger
.
info
(
`【Storage】read url:
${
readUrl
}
/
${
orderId
}
write result:`
,
JSON
.
stringify
(
result
.
data
)
);
if
(
result
&&
result
.
data
&&
result
.
data
.
code
!==
0
)
{
ctx
.
logger
.
error
(
`storageAPI read
${
readUrl
}
/
${
orderId
}
`
,
result
.
data
);
ctx
.
logger
.
error
(
`storageAPI read
${
readUrl
}
/
${
orderId
}
`
,
JSON
.
stringify
(
result
.
data
)
);
ctx
.
throw
(
400
,
{
message
:
result
.
data
.
msg
});
}
return
result
.
data
.
data
[
readDataKey
];
...
...
app/service/task.js
View file @
45b5c8a8
...
...
@@ -42,7 +42,7 @@ class TaskService extends Service {
data
:
{
cityId
:
data
},
contentType
:
'json'
,
});
ctx
.
logger
.
info
(
`【Task】create
${
createTaskUrl
}
cityId:
${
data
}
result:`
,
result
.
data
);
ctx
.
logger
.
info
(
`【Task】create
${
createTaskUrl
}
cityId:
${
data
}
result:`
,
JSON
.
stringify
(
result
.
data
)
);
this
.
_checkSuccess
(
result
);
return
result
.
data
.
data
.
taskId
;
}
...
...
@@ -58,10 +58,10 @@ class TaskService extends Service {
},
contentType
:
'json'
,
});
ctx
.
logger
.
info
(
`【Task】fetchCapture
${
fetchCodeUrl
}
params`
,
{
ctx
.
logger
.
info
(
`【Task】fetchCapture
${
fetchCodeUrl
}
params`
,
JSON
.
stringify
(
{
taskId
,
type
,
}
,
result
.
data
);
}
),
JSON
.
stringify
(
result
.
data
)
);
this
.
_checkSuccess
(
result
);
return
result
.
data
.
data
;
}
...
...
@@ -73,7 +73,7 @@ class TaskService extends Service {
data
,
contentType
:
'json'
,
});
ctx
.
logger
.
info
(
`【Task】submit
${
submitTaskUrl
}
params`
,
data
,
result
.
data
);
ctx
.
logger
.
info
(
`【Task】submit
${
submitTaskUrl
}
params`
,
JSON
.
stringify
(
data
),
JSON
.
stringify
(
result
.
data
)
);
this
.
_checkSuccess
(
result
);
return
result
;
}
...
...
@@ -85,7 +85,7 @@ class TaskService extends Service {
data
,
contentType
:
'json'
,
});
ctx
.
logger
.
info
(
`【Task】fetchTask
${
fetchTaskUrl
}
params`
,
data
,
result
.
data
);
ctx
.
logger
.
info
(
`【Task】fetchTask
${
fetchTaskUrl
}
params`
,
JSON
.
stringify
(
data
),
JSON
.
stringify
(
result
.
data
)
);
return
result
.
data
;
}
...
...
config/config.default.js
View file @
45b5c8a8
...
...
@@ -11,6 +11,10 @@ module.exports = appInfo => {
// add your config here
config
.
middleware
=
[
'requestLog'
,
'errorHandler'
];
// config.verifyAppKey = {
// match: '/orders',
// }
// 是否启用csrf安全
config
.
security
=
{
csrf
:
{
...
...
config/config.local.js
View file @
45b5c8a8
...
...
@@ -88,6 +88,17 @@ module.exports = () => {
username
:
'hexin'
,
password
:
'gYUHszn9#q'
,
port
:
3306
,
},
{
// 东八时区
timezone
:
'+08:00'
,
delegate
:
'cusPro'
,
baseDir
:
'model'
,
dialect
:
'mysql'
,
host
:
'rm-bp1272001633qc0x9o.mysql.rds.aliyuncs.com'
,
database
:
'java_open_platform'
,
username
:
'hexin'
,
password
:
'gYUHszn9#q'
,
port
:
3306
,
}],
};
...
...
config/config.prod.js
View file @
45b5c8a8
...
...
@@ -88,11 +88,22 @@ module.exports = () => {
delegate
:
'model'
,
baseDir
:
'model'
,
dialect
:
'mysql'
,
host
:
'rm-bp1272001633qc0x9.mysql.rds.aliyuncs.com'
,
database
:
'data_service_dev'
,
username
:
'hexin'
,
password
:
'gYUHszn9#q'
,
port
:
3306
,
host
:
process
.
env
.
MYSQL_PACHONG_HOST
||
'rm-bp1272001633qc0x9.mysql.rds.aliyuncs.com'
,
database
:
process
.
env
.
MYSQL_DATA_SERVER_DB_NAME
||
'data_service_dev'
,
username
:
process
.
env
.
MYSQL_USER
||
'hexin'
,
password
:
process
.
env
.
MYSQL_PWD
||
'gYUHszn9#q'
,
port
:
process
.
env
.
MYSQL_PORT
||
3306
,
},
{
// 东八时区
timezone
:
'+08:00'
,
delegate
:
'cusPro'
,
baseDir
:
'model'
,
dialect
:
'mysql'
,
host
:
process
.
env
.
MYSQL_PACHONG_HOST
||
'rm-bp1272001633qc0x9.mysql.rds.aliyuncs.com'
,
database
:
process
.
env
.
MYSQL_JAVA_DB_NAME
||
'java_open_platform'
,
username
:
process
.
env
.
MYSQL_USER
||
'hexin'
,
password
:
process
.
env
.
MYSQL_PWD
||
'gYUHszn9#q'
,
port
:
process
.
env
.
MYSQL_PORT
||
3306
,
}],
};
...
...
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