Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
Z
zhichan
Overview
Overview
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
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
蒋勇
zhichan
Commits
35de34ae
Commit
35de34ae
authored
Jun 30, 2020
by
孙亚楠
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
d
parent
85b0c389
Show whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
540 additions
and
1 deletions
+540
-1
esign-admin/app/base/controller/impl/order/orderCtl.js
+161
-0
esign-admin/app/base/controller/impl/order/orderauthlogCtl.js
+94
-0
esign-admin/app/base/controller/impl/order/orderproductCtl.js
+62
-0
esign-admin/app/base/controller/impl/order/ordersignlogCtl.js
+89
-0
esign-admin/app/base/service/impl/order/orderSve.js
+42
-0
esign-admin/app/base/service/impl/order/orderauthlogSve.js
+29
-0
esign-admin/app/base/service/impl/order/orderproductSve.js
+31
-0
esign-admin/app/base/service/impl/order/ordersignlogSve.js
+29
-0
esign-admin/app/base/system.js
+1
-1
esign-admin/app/config/routes/web.js
+1
-0
esign-admin/package.json
+1
-0
No files found.
esign-admin/app/base/controller/impl/order/orderCtl.js
0 → 100644
View file @
35de34ae
var
system
=
require
(
"../../../system"
)
const
settings
=
require
(
"../../../../config/settings"
)
const
CtlBase
=
require
(
"../../ctlms.base"
);
class
OrderCtl
extends
CtlBase
{
constructor
()
{
super
();
this
.
userSve
=
system
.
getObject
(
"service.uc.userSve"
);
this
.
orderSve
=
system
.
getObject
(
"service.order.orderSve"
);
// this.redisClient = system.getObject("util.redisClient");
}
/**
* fn:保存订单
* 如果是单价商品 product_type=1 product_id =xxx product_ids =[] product_unit_price=1
* 如果是组合产品 product_type=2 product_id=xxx product_ids=['xxx','xxxx'] product_unit_price=-1
* ps:需要对金额单位进行转化
* @param pobj
* @param pobj2
* @param req
* @param res
* @returns {Promise<void>}
*/
async
saveEorder
(
pobj
,
pobj2
,
req
,
res
)
{
try
{
//TODO:首先拿到商户的账号信息 (拿到合同ID 合同名称 )
// TODO:需要去调用商户钱包 扣钱
if
(
!
pobj
.
contract_url
){
return
system
.
getResult
(
null
,
`参数错误 业务合同不能为空`
);
}
if
(
!
pobj
.
live_start
){
return
system
.
getResult
(
null
,
`参数错误 生效时间不能为空`
);
}
if
(
!
pobj
.
live_end
){
return
system
.
getResult
(
null
,
`参数错误 结束时间不能为空`
);
}
//保存
let
res
=
await
this
.
orderSve
.
saveEorder
(
pobj
);
return
system
.
getResult
(
res
);
}
catch
(
e
)
{
console
.
log
(
e
);
return
system
.
getResult
(
null
,
`系统错误`
);
}
}
/**
* fn:审核订单
* @param pobj
* @param pobj2
* @param req
* @param res
* @returns {Promise<{msg: string, data: (*|null), bizmsg: string, status: number}>}
*/
async
auditEorder
(
pobj
,
pobj2
,
req
,
res
)
{
try
{
if
(
!
pobj
.
id
){
return
system
.
getResult
(
null
,
`订单【
${
pobj
.
id
}
】不存在`
);
}
if
(
!
pobj
.
audit_status
){
return
system
.
getResult
(
null
,
`参数错误 审核状态不能为空`
);
}
let
res
=
await
this
.
orderSve
.
auditEorder
(
pobj
);
//TODO:审核订单成功之后
if
(
res
.
status
==
0
){
pushMerchantTrade
(
pobj
);
}
return
system
.
getResult
(
res
);
}
catch
(
e
)
{
console
.
log
(
e
);
return
system
.
getResult
(
null
,
`系统错误`
);
}
}
/**
* fn:推送商户流水
* @param params
*/
async
pushMerchantTrade
(
params
){
let
orderBean
=
await
this
.
orderSve
.
getEorderById
({
id
:
this
.
trim
(
id
)});
if
(
!
orderBean
){
console
.
log
(
`推送流水失败 订单信息获取异常`
);
}
if
(
params
.
audit_status
==
'20'
){
//订单审核成功
}
if
(
params
.
audit_status
==
'30'
){
//订单审核失败
}
}
/**
* fn:查看订单(根据ID查询)
* @param pobj
* @param pobj2
* @param req
* @param res
* @returns {Promise<{msg: string, data: (*|null), bizmsg: string, status: number}>}
*/
async
getEorderById
(
pobj
,
pobj2
,
req
,
res
)
{
try
{
if
(
!
pobj
.
id
){
return
system
.
getResult
(
null
,
`订单【
${
pobj
.
id
}
】不存在`
);
}
let
res
=
await
this
.
orderSve
.
getEorderById
(
pobj
);
return
system
.
getResult
(
res
);
}
catch
(
e
)
{
console
.
log
(
e
);
return
system
.
getResult
(
null
,
`系统错误`
);
}
}
/**
* fn:查看订单列表(分页)
* @param pobj
* @param pobj2
* @param req
* @param res
* @returns {Promise<{msg: string, data: (*|null), bizmsg: string, status: number}>}
*/
async
pageEorder
(
pobj
,
pobj2
,
req
,
res
)
{
try
{
let
res
=
await
this
.
orderSve
.
pageEorder
(
pobj
);
return
system
.
getResult
(
res
);
}
catch
(
e
)
{
console
.
log
(
e
);
return
system
.
getResult
(
null
,
`系统错误`
);
}
}
/**
* fn:更改订单状态
* ps:可以修改的订单的状态 支付状态 审核状态 生效状态 状态code 依次 10 20 30 待xx 完成 失败
* 每次只能修改一个状态 (这里只能修改状态没有 状态标记注释 如果修改订单审核状态为失败请调用 “auditEorder” 接口)
* TODO:可能考虑修改生效状态需要加到 延迟消息队列中 用来处理过期失效的订单
* @param pobj
* @param pobj2
* @param req
* @param res
* @returns {Promise<void>}
*/
async
updEorderStatus
(
pobj
,
pobj2
,
req
,
res
){
if
(
!
pobj
.
id
){
return
system
.
getResult
(
null
,
`参数错误 订单ID不能为空`
);
}
try
{
//TODO:需要添加商户信息 (merchant_id)
return
await
this
.
orderSve
.
updEorderStatus
(
pobj
);
}
catch
(
e
)
{
console
.
log
(
e
);
return
system
.
getResult
(
null
,
`系统错误`
);
}
}
}
module
.
exports
=
ProductCtl
;
\ No newline at end of file
esign-admin/app/base/controller/impl/order/orderauthlogCtl.js
0 → 100644
View file @
35de34ae
var
system
=
require
(
"../../../system"
)
const
settings
=
require
(
"../../../../config/settings"
)
const
CtlBase
=
require
(
"../../ctlms.base"
);
const
moment
=
require
(
'moment'
);
class
OrderCtl
extends
CtlBase
{
constructor
()
{
super
();
this
.
userSve
=
system
.
getObject
(
"service.uc.userSve"
);
this
.
orderauthlogSve
=
system
.
getObject
(
"service.order.orderauthlogSve"
);
}
/**
* fn:保存身份认证日志
* ps:测试开发中开放 ,此接口不向外暴露, 认证引擎异步回调将此次操作插入到表中
* @param pobj 1.spendedBegin消费的开始时间 2.spendedEnd消费的结束时间
* @param pobj2
* @param req
* @param res
* @returns {Promise<void>}
*/
async
saveEorderAuthLog
(
pobj
,
pobj2
,
req
,
res
){
if
(
!
pobj
.
order_id
){
return
system
.
getResult
(
null
,
`参数错误 订单ID不能为空`
);
}
if
(
!
pobj
.
product_id
){
return
system
.
getResult
(
null
,
`参数错误 产品ID不能为空`
);
}
if
(
!
pobj
.
user_name
){
return
system
.
getResult
(
null
,
`参数错误 使用方不能为空`
);
}
if
(
!
pobj
.
platform_name
){
return
system
.
getResult
(
null
,
`参数错误 平台名称不能为空`
);
}
if
(
!
pobj
.
actual_spend_name
){
return
system
.
getResult
(
null
,
`参数错误 实际使用方不能为空`
);
}
pobj
.
engine_trade_id
=
this
.
trim
(
pobj
.
engine_trade_id
)
||
''
;
pobj
.
spended_num
=
Number
(
pobj
.
spended_num
||
0
);
pobj
.
spended_at
=
pobj
.
spended_at
?
pobj
.
spended_at
:
new
Date
();
pobj
.
pass
=
pobj
.
pass
?
pobj
.
pass
:
0
;
//是否通过 默认是不通过
try
{
return
await
this
.
orderauthlogSve
.
saveEorderAuthLog
(
pobj
);
}
catch
(
e
)
{
console
.
log
(
e
);
return
system
.
getResult
(
null
,
`系统错误`
);
}
}
/**
* fn:身份认证日志列表
* @param pobj
* @param pobj2
* @param req
* @param res
* @returns {Promise<void>}
*/
async
pageEorderAuthLog
(
pobj
,
pobj2
,
req
,
res
){
//如果存在时间筛选 时间格式 2020-05
if
(
pobj
.
spendedDate
){
let
dateRes
=
formatDate
(
pobj
.
spendedDate
);
pobj
.
spendedBegin
=
dateRes
.
spendedBegin
;
pobj
.
spendedEnd
=
dateRes
.
spendedEnd
;
}
try
{
//TODO:需要获取当前商户信息 (商户ID)
pobj
.
merchant_id
=
"xxx"
;
return
await
this
.
orderauthlogSve
.
pageEorderAuthLog
(
pobj
);
}
catch
(
e
)
{
console
.
log
(
e
);
return
system
.
getResult
(
null
,
`系统错误`
);
}
}
/**
* fn:格式化日期
* @param params
*/
formatDate
(
params
){
if
(
!
params
){
return
;}
let
date
=
moment
(
params
);
let
spendedBegin
=
date
.
format
(
"YYYY-MM-DD HH:mm:ss"
);
let
tempMonth
=
date
.
month
()
+
1
;
tempMonth
=
tempMonth
<
10
?
'0'
+
tempMonth
:
tempMonth
;
let
tempDay
=
date
.
daysInMonth
();
tempDay
=
tempDay
<
10
?
'0'
+
tempDay
:
tempDay
;
let
spendedEnd
=
date
.
year
()
+
"-"
+
tempMonth
+
'-'
+
tempDay
+
" 23:59:59"
;
return
{
spendedBegin
,
spendedEnd
};
}
}
module
.
exports
=
ProductCtl
;
\ No newline at end of file
esign-admin/app/base/controller/impl/order/orderproductCtl.js
0 → 100644
View file @
35de34ae
var
system
=
require
(
"../../../system"
)
const
settings
=
require
(
"../../../../config/settings"
)
const
CtlBase
=
require
(
"../../ctlms.base"
);
class
OrderCtl
extends
CtlBase
{
constructor
()
{
super
();
this
.
userSve
=
system
.
getObject
(
"service.uc.userSve"
);
this
.
orderproductSve
=
system
.
getObject
(
"service.order.orderproductSve"
);
}
/**
* fn:根据产品ID查询最早创建的订单
* ps:当前商户下如果存在 单个商品和组合商品 都包涵 同样的子产品 ,在实际消费的时候 应该扣除最先创建订单的子产品(订单的状态 生效中)
* @param pobj
* @param pobj2
* @param req
* @param res
* @returns {Promise<void>}
*/
async
listEorderProduct
(
pobj
,
pobj2
,
req
,
res
){
if
(
!
pobj
.
product_id
){
return
system
.
getResult
(
null
,
`参数错误 产品ID不能为空`
);
}
try
{
//TODO:需要获取当前商户信息 (商户ID)
pobj
.
merchant_id
=
"xxx"
;
return
await
this
.
orderproductSve
.
listEorderProduct
(
pobj
);
}
catch
(
e
)
{
console
.
log
(
e
);
return
system
.
getResult
(
null
,
`系统错误`
);
}
}
/**
* fn:查看当前商户下所有的订单相关的产品(没有分页)
* @param pobj
* @param pobj2
* @param req
* @param res
* @returns {Promise<{msg: string, data: (*|null), bizmsg: string, status: number}|void|*>}
*/
async
listEorderProductByMerchantId
(
pobj
,
pobj2
,
req
,
res
){
if
(
!
pobj
.
product_id
){
return
system
.
getResult
(
null
,
`参数错误 产品ID不能为空`
);
}
try
{
if
(
!
pobj
.
merchant_id
){
return
system
.
getResult
(
null
,
`获取数据错误`
);
}
return
await
this
.
orderproductSve
.
listEorderProductByMerchantId
(
pobj
);
}
catch
(
e
)
{
console
.
log
(
e
);
return
system
.
getResult
(
null
,
`系统错误`
);
}
}
}
module
.
exports
=
ProductCtl
;
\ No newline at end of file
esign-admin/app/base/controller/impl/order/ordersignlogCtl.js
0 → 100644
View file @
35de34ae
var
system
=
require
(
"../../../system"
)
const
settings
=
require
(
"../../../../config/settings"
)
const
CtlBase
=
require
(
"../../ctlms.base"
);
const
moment
=
require
(
'moment'
);
class
OrderCtl
extends
CtlBase
{
constructor
()
{
super
();
this
.
userSve
=
system
.
getObject
(
"service.uc.userSve"
);
this
.
ordersignlogSve
=
system
.
getObject
(
"service.order.ordersignlogSve"
);
}
/**
* fn:保存签约日志
* ps:测试开发中开放 ,此接口不向外暴露, 认证引擎异步回调将此次操作插入到表中
* @param pobj 1.spendedBegin消费的开始时间 2.spendedEnd消费的结束时间
* @param pobj2
* @param req
* @param res
* @returns {Promise<void>}
*/
async
saveEorderSignLog
(
pobj
,
pobj2
,
req
,
res
){
if
(
!
params
.
order_id
){
return
system
.
getResult
(
null
,
`参数错误 订单ID不能为空`
);
}
if
(
!
params
.
product_id
){
return
system
.
getResult
(
null
,
`参数错误 产品ID不能为空`
);
}
if
(
!
params
.
engine_contract_name
){
return
system
.
getResult
(
null
,
`参数错误 签署任务名称不能为空`
);
}
if
(
!
params
.
engine_contract_id
){
return
system
.
getResult
(
null
,
`参数错误 签署ID不能为空`
);
}
if
(
!
params
.
actual_spend_name
){
return
system
.
getResult
(
null
,
`参数错误 实际使用方不能为空`
);
}
params
.
spended_num
=
Number
(
params
.
spended_num
||
0
);
params
.
spended_at
=
params
.
spended_at
?
params
.
spended_at
:
new
Date
();
params
.
platform_id
=
params
.
platform_id
?
params
.
platform_id
:
''
;
try
{
return
await
this
.
ordersignlogSve
.
saveEorderSignLog
(
pobj
);
}
catch
(
e
)
{
console
.
log
(
e
);
return
system
.
getResult
(
null
,
`系统错误`
);
}
}
/**
* fn:签约日志列表(分页)
* @param pobj
* @param pobj2
* @param req
* @param res
* @returns {Promise<void>}
*/
async
pageEorderSignLog
(
pobj
,
pobj2
,
req
,
res
){
//如果存在时间筛选 时间格式 2020-05
if
(
pobj
.
spendedDate
){
let
dateRes
=
formatDate
(
pobj
.
spendedDate
);
pobj
.
spendedBegin
=
dateRes
.
spendedBegin
;
pobj
.
spendedEnd
=
dateRes
.
spendedEnd
;
}
try
{
return
await
this
.
ordersignlogSve
.
pageEorderSignLog
(
pobj
);
}
catch
(
e
)
{
console
.
log
(
e
);
return
system
.
getResult
(
null
,
`系统错误`
);
}
}
/**
* fn:格式化日期
* @param params
*/
formatDate
(
params
){
if
(
!
params
){
return
;}
let
date
=
moment
(
params
);
let
spendedBegin
=
date
.
format
(
"YYYY-MM-DD HH:mm:ss"
);
let
tempMonth
=
date
.
month
()
+
1
;
tempMonth
=
tempMonth
<
10
?
'0'
+
tempMonth
:
tempMonth
;
let
tempDay
=
date
.
daysInMonth
();
tempDay
=
tempDay
<
10
?
'0'
+
tempDay
:
tempDay
;
let
spendedEnd
=
date
.
year
()
+
"-"
+
tempMonth
+
'-'
+
tempDay
+
" 23:59:59"
;
return
{
spendedBegin
,
spendedEnd
};
}
}
module
.
exports
=
ProductCtl
;
\ No newline at end of file
esign-admin/app/base/service/impl/order/orderSve.js
0 → 100644
View file @
35de34ae
const
system
=
require
(
"../../../system"
);
const
ServiceBase
=
require
(
"../../svems.base"
)
class
UserService
extends
ServiceBase
{
constructor
()
{
super
();
}
/**
* fn:保存订单
* @param params
* @returns {Promise<{msg: *, data, bizmsg: *|string, status: number}|any|undefined>}
*/
async
saveEorder
(
params
)
{
return
await
this
.
callms
(
"sve_order"
,
"saveEorder"
,
params
);
}
/**
* fn:审核订单
* @param params
* @returns {Promise<{msg: *, data, bizmsg: *|string, status: number}|any|undefined>}
*/
async
auditEorder
(
params
)
{
return
await
this
.
callms
(
"sve_order"
,
"auditEorder"
,
params
);
}
/**
* fn:根据ID查看订单
* @param params
* @returns {Promise<{msg: *, data, bizmsg: *|string, status: number}|any|undefined>}
*/
async
getEorderById
(
params
)
{
return
await
this
.
callms
(
"sve_order"
,
"getEorderById"
,
params
);
}
}
module
.
exports
=
UserService
;
\ No newline at end of file
esign-admin/app/base/service/impl/order/orderauthlogSve.js
0 → 100644
View file @
35de34ae
const
system
=
require
(
"../../../system"
);
const
ServiceBase
=
require
(
"../../svems.base"
)
class
UserService
extends
ServiceBase
{
constructor
()
{
super
();
}
/**
* fn:保存身份认证日志
* @param params
* @returns {Promise<void>}
*/
async
saveEorderAuthLog
(
params
){
return
await
this
.
callms
(
"sve_order"
,
"saveEorderAuthLog"
,
params
);
}
/**
* fn:身份认证日志列表
* @param params
* @returns {Promise<void>}
*/
async
pageEorderAuthLog
(
params
){
return
await
this
.
callms
(
"sve_order"
,
"pageEorderAuthLog"
,
params
);
}
}
module
.
exports
=
UserService
;
\ No newline at end of file
esign-admin/app/base/service/impl/order/orderproductSve.js
0 → 100644
View file @
35de34ae
const
system
=
require
(
"../../../system"
);
const
ServiceBase
=
require
(
"../../svems.base"
)
class
UserService
extends
ServiceBase
{
constructor
()
{
super
();
}
/**
* fn:根据产品ID查询最早创建的订单
* ps:当前商户下如果存在 单个商品和组合商品 都包涵 同样的子产品 ,在实际消费的时候 应该扣除最先创建订单的子产品(订单的状态 生效中)
* @param params
* @returns {Promise<void>}
*/
async
listEorderProduct
(
params
){
return
await
this
.
callms
(
"sve_order"
,
"listEorderProduct"
,
params
);
}
/**
* fn:fn:查看当前商户下所有的订单相关的产品(没有分页)
* @param params
* @returns {Promise<{msg: string, data, bizmsg: *|string, status: number}|*|undefined>}
*/
async
listEorderProductByMerchantId
(
params
){
return
await
this
.
callms
(
"sve_order"
,
"listEorderProductByMerchantId"
,
params
);
}
}
module
.
exports
=
UserService
;
\ No newline at end of file
esign-admin/app/base/service/impl/order/ordersignlogSve.js
0 → 100644
View file @
35de34ae
const
system
=
require
(
"../../../system"
);
const
ServiceBase
=
require
(
"../../svems.base"
)
class
UserService
extends
ServiceBase
{
constructor
()
{
super
();
}
/**
* fn:保存签约日志
* @param params
* @returns {Promise<void>}
*/
async
saveEorderSignLog
(
params
){
return
await
this
.
callms
(
"sve_order"
,
"saveEorderSignLog"
,
params
);
}
/**
* fn:签约日志列表
* @param params
* @returns {Promise<void>}
*/
async
pageEorderSignLog
(
params
){
return
await
this
.
callms
(
"sve_order"
,
"pageEorderSignLog"
,
params
);
}
}
module
.
exports
=
UserService
;
\ No newline at end of file
esign-admin/app/base/system.js
View file @
35de34ae
...
...
@@ -200,7 +200,7 @@ class System {
// 商户服务
sve_merchant
:
dev
+
":3103"
+
path
,
// 订单服务
sve_order
:
dev
+
":3
10
3"
+
path
,
sve_order
:
dev
+
":3
65
3"
+
path
,
}
}
else
{
return
{
...
...
esign-admin/app/config/routes/web.js
View file @
35de34ae
...
...
@@ -91,6 +91,7 @@ module.exports = function (app) {
req
.
body
.
classname
=
classPath
;
if
(
req
.
loginUser
)
{
}
params
.
push
(
methodName
);
...
...
esign-admin/package.json
View file @
35de34ae
...
...
@@ -33,6 +33,7 @@
"
gm
"
:
"^1.23.1"
,
"
marked
"
:
"^0.7.0"
,
"
method-override
"
:
"^2.3.10"
,
"
moment
"
:
"^2.27.0"
,
"
morgan
"
:
"^1.9.0"
,
"
multer
"
:
"^1.3.0"
,
"
mysql2
"
:
"^1.5.3"
,
...
...
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