Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
5
51business
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
方斌
51business
Commits
730aa56a
Commit
730aa56a
authored
Oct 10, 2019
by
Hsinli
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of t-git.51gjj.com:fangbin/51business
parents
66492aec
838d8d50
Pipeline
#14659
passed with stage
in 34 seconds
Changes
9
Pipelines
1
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
71 additions
and
31 deletions
+71
-31
test.js
app/controller/common/test.js
+1
-1
callrisk.js
app/controller/credit/callrisk.js
+2
-1
order.js
app/controller/credit/order.js
+1
-1
institution.js
app/service/course/institution.js
+0
-0
option.js
app/service/course/option.js
+2
-2
apply.js
app/service/credit/apply.js
+17
-8
callrisk.js
app/service/credit/callrisk.js
+39
-10
yys.js
app/service/credit/yys.js
+8
-7
config.local.js
config/config.local.js
+1
-1
No files found.
app/controller/common/test.js
View file @
730aa56a
...
...
@@ -6,7 +6,7 @@ class TestController extends Controller {
const
{
service
,
ctx
}
=
this
;
const
from
=
{
lng
:
120.069206
,
lat
:
30.291121
};
const
to
=
{
lng
:
120.212997
,
lat
:
30.29133
};
const
ret
=
await
service
.
course
.
lbs
.
getLBSDistance
(
'
driving'
,
from
,
[
to
]);
const
ret
=
await
service
.
course
.
lbs
.
getLBSDistance
(
'
walking'
,
from
,
[
to
,
to
]);
ctx
.
success
(
ret
);
}
}
...
...
app/controller/credit/callrisk.js
View file @
730aa56a
...
...
@@ -39,7 +39,8 @@ class CallriskController extends Controller {
name
:
{
type
:
'string'
,
required
:
true
},
phone
:
{
type
:
'string'
,
required
:
true
},
id_card
:
{
type
:
'string'
,
required
:
true
},
password
:
{
type
:
'string'
,
required
:
true
}
password
:
{
type
:
'string'
,
required
:
true
},
net
:
{
type
:
'string'
,
required
:
true
},
}
ctx
.
validate
(
rule
,
input_params
);
const
result
=
await
ctx
.
service
.
credit
.
apply
.
applyCallrisk
(
input_params
);
...
...
app/controller/credit/order.js
View file @
730aa56a
...
...
@@ -34,7 +34,7 @@ class OrderController extends Controller {
const
{
method
,
order_id
,
reject_url
}
=
input_params
;
let
result
=
await
ctx
.
service
.
credit
.
order
.
unifiedOrder
(
method
,
order_id
);
// result.reject_url = reject_url;
result
.
url
=
`
${
result
.
url
}
&
py=#shanp.com&
redirect_url=
${
reject_url
}
`
;
result
.
url
=
`
${
result
.
url
}
&redirect_url=
${
reject_url
}
`
;
ctx
.
success
({
result
});
}
...
...
app/service/course/institution.js
View file @
730aa56a
This diff is collapsed.
Click to expand it.
app/service/course/option.js
View file @
730aa56a
...
...
@@ -39,7 +39,7 @@ class OptionService extends Service {
cats
:
tree_cats
,
ages
:
AGE_CATS
,
institutions
:
INSTITUTION_TYPE
,
}
};
return
options
;
}
...
...
@@ -58,7 +58,7 @@ class OptionService extends Service {
newNode
.
level
=
node
.
level
;
newNode
.
value
=
node
.
id
;
newNode
.
_child
=
this
.
getTrees
(
data
,
node
.
id
);
if
(
newNode
.
_child
.
length
!==
0
)
newNode
.
_child
.
unshift
({
id
:
0
,
name
:
'全部'
,
value
:
0
});
if
(
newNode
.
_child
.
length
!==
0
)
newNode
.
_child
.
unshift
({
id
:
0
,
name
:
'全部'
,
value
:
node
.
id
});
ret
.
push
(
newNode
);
}
}
...
...
app/service/credit/apply.js
View file @
730aa56a
...
...
@@ -58,20 +58,29 @@ class ApplyService extends Service {
return
ret
;
}
/**
* 进入个人通话查询页面
*/
async
callriskInit
()
{
const
{
ctx
}
=
this
;
if
(
!
ctx
.
userId
)
{
ctx
.
failed
(
'登录异常'
);
}
let
ret
=
{
have_be_pay_order
:
false
,
order_id
:
null
,
phone
:
''
,
placeholder
:
{
name
:
''
,
id_card
:
''
id_card
:
''
,
}
}
let
bePayOrder
=
await
ctx
.
service
.
credit
.
order
.
getBePayOrder
(
'callrisk'
);
if
(
bePayOrder
.
length
!==
0
)
{
ret
.
have_be_pay_order
=
true
;
ret
.
order_id
=
bePayOrder
[
0
].
id
;
ret
.
phone
=
bePayOrder
[
0
].
phone
.
substring
(
0
,
3
)
+
'****'
+
bePayOrder
[
0
].
phone
.
substring
(
7
,
11
)
}
//第一次查询成功的订单,反显姓名和身份证
...
...
@@ -330,7 +339,7 @@ class ApplyService extends Service {
async
applyCallrisk
(
input
)
{
const
{
ctx
}
=
this
;
const
{
name
,
phone
,
id_card
,
password
}
=
input
;
const
{
name
,
phone
,
id_card
,
password
,
net
}
=
input
;
const
user_id
=
ctx
.
userId
;
const
app_type_id
=
ctx
.
appTypeId
;
const
app_user_id
=
ctx
.
appUserId
;
...
...
@@ -353,7 +362,7 @@ class ApplyService extends Service {
const
order_id
=
order
.
id
;
//创建yys-order apply 记录
const
apply
=
await
this
.
createYysApply
({
name
,
phone
,
id_card
,
password
,
order_id
});
const
apply
=
await
this
.
createYysApply
({
name
,
phone
,
id_card
,
password
,
net
,
order_id
});
const
order_sn
=
apply
.
r_order_id
;
//第一次调用运营商获取验证码接口
...
...
@@ -392,10 +401,10 @@ class ApplyService extends Service {
const
app_type_id
=
ctx
.
appTypeId
;
const
app_user_id
=
ctx
.
appUserId
;
const
app_id
=
ctx
.
appId
;
const
{
name
,
phone
,
id_card
,
password
,
order_id
}
=
input
;
const
{
name
,
phone
,
id_card
,
password
,
net
,
order_id
}
=
input
;
//运营商API.创建订单号
const
order_sn_info
=
await
ctx
.
service
.
credit
.
yys
.
getOrderSn
(
phone
);
const
order_sn_info
=
await
ctx
.
service
.
credit
.
yys
.
getOrderSn
(
{
phone
,
net
}
);
if
(
order_sn_info
.
code
!==
0
)
{
ctx
.
failed
(
'getOrderSn error msg:'
+
order_sn_info
.
msg
);
}
...
...
@@ -430,14 +439,14 @@ class ApplyService extends Service {
let
orderFilter
=
{
arrtibutes
:
[
'id'
,
'name'
,
'id_card'
],
where
:
{
user_id
:
ctx
.
userI
d
,
user_id
:
user_i
d
,
state
:
'已支付'
,
type
:
2
,
type
:
type
,
valid
:
1
}
}
let
orderInfo
=
await
ctx
.
prometheusModel
.
CreditOrder
.
findOne
(
orderFilter
);
if
(
orderInfo
!==
null
&&
(
inputParams
.
name
!==
orderInfo
.
name
||
inputParams
.
id_card
!==
orderInfo
.
id_card
))
{
if
(
orderInfo
!==
null
&&
(
name
!==
orderInfo
.
name
||
id_card
!==
orderInfo
.
id_card
))
{
ctx
.
failed
(
'仅供本人查询使用,无法查询其他人信息'
);
}
...
...
app/service/credit/callrisk.js
View file @
730aa56a
...
...
@@ -82,7 +82,7 @@ class CallriskService extends Service {
//订单是否在有效期内
const
report_valid
=
await
ctx
.
service
.
credit
.
order
.
getReportValid
(
'callrisk'
,
report_id
);
cons
t
report
=
{
le
t
report
=
{
basics
:
{
data
:
basics
},
call_overview
:
{
data
:
call_overview
},
call_type
:
{
data
:
call_type
},
...
...
@@ -90,6 +90,7 @@ class CallriskService extends Service {
call_behavior
:
{
data
:
call_behavior
},
report_valid
,
};
report
.
basics
.
data
.
call_result_assessment
=
await
this
.
getEvaluationLevel
(
report
);
const
ret
=
this
.
formatHeadExplainMsg
(
report
);
...
...
@@ -138,9 +139,30 @@ class CallriskService extends Service {
const
{
ctx
}
=
this
;
const
call_behavior
=
await
ctx
.
prometheusModel
.
CreditCallriskCallBehavior
.
one
({
where
:
{
report_id
}
});
const
call_behavior_silence_cycles
=
await
ctx
.
prometheusModel
.
CreditCallriskSilenceCycle
.
all
({
where
:
{
report_id
}
});
call_behavior
.
silence_cycle
=
call_behavior
?
[]
:
call_behavior_silence_cycles
;
const
ret
=
{
silence_count_3day
:
call_behavior
.
silence_count_3day
,
silence_time_3day
:
call_behavior
.
silence_time_3day
,
silence_time_rate_3day
:
call_behavior
.
silence_time_rate_3day
,
silence_cycle
:
call_behavior_silence_cycles
,
call_each_other
:
{
active_call_count
:
call_behavior
.
active_call_count
,
passive_call_count
:
call_behavior
.
passive_call_count
,
each_call_count
:
call_behavior
.
each_call_count
,
},
call_rank
:
{
maximum_active_call_count
:
call_behavior
.
maximum_active_call_count
,
maximum_active_call_number
:
call_behavior
.
maximum_active_call_number
,
maximum_active_call_city
:
call_behavior
.
maximum_active_call_city
,
maximum_passive_call_count
:
call_behavior
.
maximum_passive_call_count
,
maximum_passive_call_number
:
call_behavior
.
maximum_passive_call_number
,
maximum_passive_call_city
:
call_behavior
.
maximum_passive_call_city
,
maximum_call_time
:
call_behavior
.
maximum_call_time
,
maximum_call_time_number
:
call_behavior
.
maximum_call_time_number
,
maximum_call_time_city
:
call_behavior
.
maximum_call_time_city
,
},
};
return
call_behavior
;
return
ret
;
}
async
formatReport
()
{
...
...
@@ -338,8 +360,8 @@ class CallriskService extends Service {
const
{
ctx
}
=
this
;
const
basics
=
report
.
basics
.
data
;
const
call_overview
=
report
.
call_overview
.
data
;
//
const call_type = report.call_type.data;
//
const call_active = report.call_active.data;
const
call_type
=
report
.
call_type
.
data
;
const
call_active
=
report
.
call_active
.
data
;
const
call_behavior
=
report
.
call_behavior
.
data
;
//入网时长分数计算
...
...
@@ -357,11 +379,11 @@ class CallriskService extends Service {
//话费分数计算
let
month_fee_sum
=
0
;
for
(
let
i
in
call_overview
.
data
)
{
const
month_call_overview
=
call_overview
.
data
[
i
];
for
(
let
i
in
call_overview
)
{
const
month_call_overview
=
call_overview
[
i
];
month_fee_sum
+=
month_call_overview
.
call_fee_month
;
}
const
fee_avg
=
month_fee_sum
/
call_overview
.
data
.
length
;
//平均月话费
const
fee_avg
=
month_fee_sum
/
call_overview
.
length
;
//平均月话费
let
fee_avg_score
=
0
;
if
(
fee_avg
<
20
)
{
fee_avg_score
=
20
;
...
...
@@ -370,6 +392,12 @@ class CallriskService extends Service {
}
//通话类型分数计算
const
loan_call_count
=
call_type
.
loan_call_count
;
const
bank_call_count
=
call_type
.
bank_call_count
;
const
court_call_count
=
call_type
.
court_call_count
;
const
collection_call_count
=
call_type
.
collection_call_count
;
const
laywer_call_count
=
call_type
.
laywer_call_count
;
const
macao_call_count
=
call_type
.
macao_call_count
;
let
call_type_score
=
0
;
if
(
loan_call_count
>=
1
)
{
call_type_score
+=
7
;
...
...
@@ -391,8 +419,8 @@ class CallriskService extends Service {
}
//通话活跃分数计算
const
call_time_percent
=
night_call_time
/
routine_call_time
;
const
call_count_percent
=
night_call_count
/
routine_call_count
;
const
call_time_percent
=
call_active
.
night_call_time
/
call_active
.
routine_call_time
;
const
call_count_percent
=
call_active
.
night_call_count
/
call_active
.
routine_call_count
;
let
call_time_score
=
0
;
let
call_count_score
=
0
;
if
(
call_time_percent
>=
0.2
)
{
...
...
@@ -426,6 +454,7 @@ class CallriskService extends Service {
call_behavior_socre
=
10
;
}
console
.
info
(
net_time_score
,
fee_avg_score
,
call_type_score
,
call_active_score
,
call_behavior_socre
);
const
sum_score
=
net_time_score
+
fee_avg_score
+
call_type_score
+
call_active_score
+
call_behavior_socre
;
let
call_result_assessment
=
'优质'
;
...
...
app/service/credit/yys.js
View file @
730aa56a
...
...
@@ -12,13 +12,14 @@ class YysService extends Service {
* 创建订单号
* @param {*}
*/
async
getOrderSn
(
phone
)
{
async
getOrderSn
(
{
phone
,
net
}
)
{
const
{
ctx
}
=
this
;
let
params
=
{
phone
:
phone
phone
:
phone
,
net
:
Number
(
net
),
}
let
url
=
this
.
config
.
NODE_BASE_URL
+
'/yys_api/getorderSn'
+
'?appKey='
+
this
.
config
.
YYS_APP_KEY
;
let
resp
=
await
ctx
.
helper
.
send_request
(
url
,
params
,
{
method
:
'POST'
});
let
resp
=
await
ctx
.
helper
.
send_request
(
url
,
params
,
{
method
:
'POST'
,
timeout
:
30000
});
ctx
.
logger
.
info
(
JSON
.
stringify
({
yys_getorderSn_params
:
params
,
yys_getorderSn_result
:
resp
}));
if
(
resp
.
data
.
code
===
undefined
||
resp
.
data
.
code
!==
0
)
{
ctx
.
failed
(
'getorderSn error:'
+
resp
.
data
.
msg
);
...
...
@@ -43,7 +44,7 @@ class YysService extends Service {
// }
// }
let
url
=
this
.
config
.
NODE_BASE_URL
+
'/yys_api/getCode'
+
'?appKey='
+
this
.
config
.
YYS_APP_KEY
;
let
resp
=
await
ctx
.
helper
.
send_request
(
url
,
params
,
{
method
:
'POST'
});
let
resp
=
await
ctx
.
helper
.
send_request
(
url
,
params
,
{
method
:
'POST'
,
timeout
:
30000
});
ctx
.
logger
.
info
(
JSON
.
stringify
({
yys_getCode_params
:
params
,
yys_getCode_result
:
resp
}));
await
this
.
addCreditLogYys
(
params
.
orderSn
,
'/yys_api/getCode'
,
params
,
resp
.
data
);
// console.info(resp);
...
...
@@ -65,7 +66,7 @@ class YysService extends Service {
// }
// }
const
url
=
this
.
config
.
NODE_BASE_URL
+
'/yys_api/commit'
+
'?appKey='
+
this
.
config
.
YYS_APP_KEY
;
const
resp
=
await
ctx
.
helper
.
send_request
(
url
,
params
,
{
method
:
'POST'
});
const
resp
=
await
ctx
.
helper
.
send_request
(
url
,
params
,
{
method
:
'POST'
,
timeout
:
30000
});
ctx
.
logger
.
info
(
JSON
.
stringify
({
yys_commit_params
:
params
,
yys_commit_result
:
resp
}));
await
this
.
addCreditLogYys
(
params
.
orderSn
,
'/yys_api/commit'
,
params
,
resp
.
data
);
return
resp
.
data
;
...
...
@@ -81,7 +82,7 @@ class YysService extends Service {
orderSn
:
orderSn
,
}
let
url
=
this
.
config
.
NODE_BASE_URL
+
'/yys_api/query'
+
'?appKey='
+
this
.
config
.
YYS_APP_KEY
;
let
resp
=
await
ctx
.
helper
.
send_request
(
url
,
params
,
{
method
:
'POST'
});
let
resp
=
await
ctx
.
helper
.
send_request
(
url
,
params
,
{
method
:
'POST'
,
timeout
:
30000
});
ctx
.
logger
.
info
(
JSON
.
stringify
({
yys_query_params
:
params
,
yys_query_result
:
resp
}));
await
this
.
addCreditLogYys
(
orderSn
,
'/yys_api/query'
,
params
,
resp
.
data
);
return
resp
.
data
;
...
...
@@ -106,7 +107,7 @@ class YysService extends Service {
}
params
.
sign
=
await
ctx
.
service
.
credit
.
common
.
sign
(
params
.
signParams
,
this
.
config
.
YYS_REPORT_APPSECRET
);
const
url
=
this
.
config
.
YYS_REPORT_URL
;
const
result
=
await
ctx
.
helper
.
send_request
(
url
,
params
,
{
method
:
'POST'
});
const
result
=
await
ctx
.
helper
.
send_request
(
url
,
params
,
{
method
:
'POST'
,
timeout
:
30000
});
ctx
.
logger
.
info
(
JSON
.
stringify
({
thxdReport_parmas
:
params
,
thxdReport_result
:
result
}));
return
result
.
data
;
...
...
config/config.local.js
View file @
730aa56a
...
...
@@ -103,7 +103,7 @@ module.exports = appInfo => {
// other sequelize configurations
dialect
:
'mysql'
,
host
:
'rm-bp1mnwmta5778y0d3jo.mysql.rds.aliyuncs.com'
,
database
:
'class_
dev
'
,
database
:
'class_
uat
'
,
username
:
'class_testing'
,
password
:
'WV862L32451I6KD58tU9K'
,
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