记得上下班打卡 | git大法好,push需谨慎
Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
liquidnet-bus-v1
Project
Project
Details
Activity
Releases
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
董敬伟
liquidnet-bus-v1
Commits
0fb5b506
Commit
0fb5b506
authored
Sep 15, 2021
by
jiangxiulong
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
refund表增加票务审核字段;票务和财务权限对于状态的特殊处理;完善确认收货和优化 + 完善 + 快递演出列表,只展示支持快递票的演出
parent
6095fc98
Changes
17
Hide whitespace changes
Inline
Side-by-side
Showing
17 changed files
with
185 additions
and
64 deletions
+185
-64
KylinTableStatusConst.java
...quidnet/service/kylin/constant/KylinTableStatusConst.java
+3
-1
RefundSearchParam.java
.../liquidnet/service/kylin/dto/param/RefundSearchParam.java
+2
-0
KylinOrderRefundsVo.java
...net/service/kylin/dto/vo/returns/KylinOrderRefundsVo.java
+13
-0
KylinOrderRefundAdminController.java
...oller/zhengzai/kylin/KylinOrderRefundAdminController.java
+0
-2
KylinOrderRefundBatchAdminController.java
.../zhengzai/kylin/KylinOrderRefundBatchAdminController.java
+17
-0
details.html
...in/resources/templates/zhengzai/kylin/refund/details.html
+8
-0
refund.html
...ain/resources/templates/zhengzai/kylin/refund/refund.html
+7
-1
refundBatch.html
...ces/templates/zhengzai/kylin/refundBatch/refundBatch.html
+4
-5
KylinOrderRefundsServiceImpl.java
...gzai/kylin/service/impl/KylinOrderRefundsServiceImpl.java
+44
-23
KylinRefundPerformancesAdminServiceImpl.java
...service/impl/KylinRefundPerformancesAdminServiceImpl.java
+4
-0
KylinRefundsStatusServiceImpl.java
...zai/kylin/service/impl/KylinRefundsStatusServiceImpl.java
+16
-20
PerformancesExpressServiceImpl.java
...ai/kylin/service/impl/PerformancesExpressServiceImpl.java
+1
-0
OrderRefundDao.java
.../java/com/liquidnet/service/kylin/dao/OrderRefundDao.java
+11
-0
KylinOrderRefunds.java
...com/liquidnet/service/kylin/entity/KylinOrderRefunds.java
+20
-0
KylinOrderRefundsMapper.xml
...iquidnet.service.kylin.mapper/KylinOrderRefundsMapper.xml
+26
-6
KylinPerformancesMapper.xml
...iquidnet.service.kylin.mapper/KylinPerformancesMapper.xml
+8
-5
db_kylin_structure.sql
.../liquidnet-service-kylin-impl/docu/db_kylin_structure.sql
+1
-1
No files found.
liquidnet-bus-api/liquidnet-service-kylin-api/src/main/java/com/liquidnet/service/kylin/constant/KylinTableStatusConst.java
View file @
0fb5b506
...
...
@@ -37,7 +37,9 @@ public class KylinTableStatusConst {
public
static
final
Integer
ORDER_REFUND_STATUS_REFUSE
=
8
;
// 二审拒绝
public
static
final
Integer
ORDER_REFUND_STATUS_TICKET
=
9
;
// 票务确认收货
public
static
final
Integer
ORDER_REFUND_TYPE_APPLY
=
0
;
// 人工申请(后台客服和用户),可以取消退款,回调再处理库存和券
public
static
final
Integer
ORDER_REFUND_TYPE_APPLY
=
0
;
// 客服、票务人工申请,可以取消退款,回调再处理库存和券
public
static
final
Integer
ORDER_REFUND_TYPE_APPLY2
=
2
;
// 用户申请普通退款,可以取消退款,回调再处理库存和券
public
static
final
Integer
ORDER_REFUND_TYPE_APPLY3
=
3
;
// 用户申请快递退款,可以取消退款,回调再处理库存和券,需确认收货
public
static
final
Integer
ORDER_REFUND_TYPE_AUTO
=
1
;
// 超时退款,无法取消退款,直接返还库存和券,回调不再处理库存和券
/**
...
...
liquidnet-bus-api/liquidnet-service-kylin-api/src/main/java/com/liquidnet/service/kylin/dto/param/RefundSearchParam.java
View file @
0fb5b506
...
...
@@ -37,4 +37,6 @@ public class RefundSearchParam implements Serializable {
@NotNull
(
message
=
"数量不能为空"
)
private
Integer
pageNum
;
private
Integer
roleType
;
}
liquidnet-bus-api/liquidnet-service-kylin-api/src/main/java/com/liquidnet/service/kylin/dto/vo/returns/KylinOrderRefundsVo.java
View file @
0fb5b506
...
...
@@ -109,6 +109,19 @@ public class KylinOrderRefundsVo implements Serializable,Cloneable {
@ApiModelProperty
(
value
=
"回绝原因"
)
private
String
refuse
;
@ApiModelProperty
(
value
=
"票务审核人id"
)
private
String
ticketAuditId
;
@ApiModelProperty
(
value
=
"票务审核人名称"
)
private
String
ticketAuditName
;
@ApiModelProperty
(
value
=
"票务审核时间"
)
@JsonFormat
(
shape
=
JsonFormat
.
Shape
.
STRING
,
pattern
=
DateUtil
.
DATE_FULL_STR
)
private
LocalDateTime
ticketAuditAt
;
@ApiModelProperty
(
value
=
"票务审核备注"
)
private
String
ticketAuditRemark
;
@ApiModelProperty
(
value
=
"票务/快递费/票和快递费"
)
private
String
refundType
;
...
...
liquidnet-bus-client/liquidnet-client-admin/liquidnet-client-admin-web/src/main/java/com/liquidnet/client/admin/web/controller/zhengzai/kylin/KylinOrderRefundAdminController.java
View file @
0fb5b506
...
...
@@ -16,9 +16,7 @@ import com.liquidnet.service.kylin.dao.OrderRefundDao;
import
com.liquidnet.service.kylin.dto.param.RefundApplyParam
;
import
com.liquidnet.service.kylin.dto.param.RefundSearchParam
;
import
com.liquidnet.service.kylin.dto.vo.returns.KylinOrderRefundsVo
;
import
com.liquidnet.service.kylin.dto.vo.returns.RefundOrderDetailsVo
;
import
com.liquidnet.service.kylin.service.IKylinOrderRefundsService
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiImplicitParams
;
import
io.swagger.annotations.ApiOperation
;
...
...
liquidnet-bus-client/liquidnet-client-admin/liquidnet-client-admin-web/src/main/java/com/liquidnet/client/admin/web/controller/zhengzai/kylin/KylinOrderRefundBatchAdminController.java
View file @
0fb5b506
...
...
@@ -174,6 +174,23 @@ public class KylinOrderRefundBatchAdminController extends BaseController {
}
}
// 批量没有快递数据 所以没有此功能 如果加的话就用演出id查订单再查退款
@Log
(
title
=
"演出退款管理"
,
businessType
=
BusinessType
.
AUDIT3
)
@RequiresPermissions
(
"kylin:refundBatch:ticketAudit"
)
@PostMapping
(
"ticketAudit"
)
@ResponseBody
public
AjaxResult
ticketAudit
(
RefundBatchApplyParam
refundBatchApplyParam
)
{
try
{
ResponseDto
res
=
kylinRefundPerformancesAdminServiceImpl
.
ticketAuditAll
(
refundBatchApplyParam
);
if
(
res
.
isSuccess
())
{
return
success
();
}
else
{
return
error
(
res
.
getMessage
());
}
}
catch
(
Exception
e
)
{
return
error
(
e
.
getMessage
());
}
}
@Log
(
title
=
"演出退款管理"
,
businessType
=
BusinessType
.
AUDIT2
)
@RequiresPermissions
(
"kylin:refundBatch:execute"
)
...
...
liquidnet-bus-client/liquidnet-client-admin/liquidnet-client-admin-web/src/main/resources/templates/zhengzai/kylin/refund/details.html
View file @
0fb5b506
...
...
@@ -48,6 +48,14 @@
<label
class=
"col-sm-2 control-label"
>
审核备注:
</label>
<div
class=
"form-control-static"
th:text=
"${KylinOrderRefundsVo.reject}"
></div>
</div>
<div
class=
"form-group"
>
<label
class=
"col-sm-2 control-label"
>
确认收货人名称:
</label>
<div
class=
"form-control-static"
th:text=
"${KylinOrderRefundsVo.ticketAuditName}"
></div>
<label
class=
"col-sm-2 control-label"
>
确认收货执行时间:
</label>
<div
class=
"form-control-static"
th:text=
"${KylinOrderRefundsVo.ticketAuditAt}"
></div>
<label
class=
"col-sm-2 control-label"
>
确认收货执行备注:
</label>
<div
class=
"form-control-static"
th:text=
"${KylinOrderRefundsVo.ticketAuditRemark}"
></div>
</div>
<div
class=
"form-group"
>
<label
class=
"col-sm-2 control-label"
>
执行人名称:
</label>
<div
class=
"form-control-static"
th:text=
"${KylinOrderRefundsVo.executorName}"
></div>
...
...
liquidnet-bus-client/liquidnet-client-admin/liquidnet-client-admin-web/src/main/resources/templates/zhengzai/kylin/refund/refund.html
View file @
0fb5b506
...
...
@@ -53,9 +53,16 @@
<option
value=
"8"
>
二审驳回退款
</option>
</shiro:lacksRole>
</shiro:hasPermission>
<shiro:hasPermission
name=
"kylin:refund:ticketAudit"
>
<shiro:lacksRole
name=
"admin"
>
<option
value=
"1"
>
一审审核通过
</option>
</shiro:lacksRole>
</shiro:hasPermission>
<shiro:hasPermission
name=
"kylin:refund:execute"
>
<shiro:lacksRole
name=
"admin"
>
<option
value=
"1,9"
>
全部
</option>
<option
value=
"1"
>
一审审核通过
</option>
<option
value=
"9"
>
已确认收货
</option>
</shiro:lacksRole>
</shiro:hasPermission>
</select>
...
...
@@ -209,7 +216,6 @@
yes
:
function
(
index
,
layero
)
{
var
remark
=
$
(
layero
).
find
(
"[name='remark']"
).
val
();
data
[
'ticketRemark'
]
=
remark
;
data
[
'status'
]
=
1
;
$
.
operate
.
save
(
prefix
+
"/ticketAudit"
,
data
);
layer
.
close
(
index
)
},
...
...
liquidnet-bus-client/liquidnet-client-admin/liquidnet-client-admin-web/src/main/resources/templates/zhengzai/kylin/refundBatch/refundBatch.html
View file @
0fb5b506
...
...
@@ -134,15 +134,14 @@
type
:
1
,
fixed
:
false
,
maxmin
:
true
,
title
:
'
运营
审核'
,
title
:
'
票务
审核'
,
area
:
[
'500px'
,
'220px'
],
content
:
$
(
"#form-refund-review"
).
html
(),
btn
:
[
"确认收货"
,
'没收到,再等等吧~'
],
yes
:
function
(
index
,
layero
)
{
var
remark
=
$
(
layero
).
find
(
"[name='remark']"
).
val
();
data
[
'ticketRemark'
]
=
remark
;
data
[
'status'
]
=
44
;
$
.
operate
.
save
(
prefix
+
"/review"
,
data
);
$
.
operate
.
save
(
prefix
+
"/ticketAudit"
,
data
);
layer
.
close
(
index
)
},
btn2
:
function
(
index
,
layero
)
{}
...
...
@@ -214,8 +213,8 @@
actions
.
push
(
'<a class="btn btn-info btn-xs'
+
detailFlag
+
'" href="javascript:void(0)" onclick="$.operate.detailTab(
\'
'
+
row
.
refundBatchId
+
'
\'
)"></i>查看</a> '
);
actions
.
push
(
'<a class="btn btn-success btn-xs '
+
reviewFlag
+
'" href="javascript:void(0)" onclick="review(
\'
'
+
row
.
refundBatchId
+
'
\'
)"></i>运营审核</a> '
);
actions
.
push
(
'<a class="btn btn-primary btn-xs '
+
ticketAuditFlag
+
'" href="javascript:void(0)" onclick="ticketAudit(
\'
'
+
row
.
refundBatchId
+
'
\'
)"></i>票务审核</a> '
);
actions
.
push
(
'<a class="btn btn-
success
btn-xs '
+
executeFlag
+
'" href="javascript:void(0)" onclick="execute(
\'
'
+
row
.
refundBatchId
+
'
\'
)"></i>财务审核</a> '
);
//
actions.push('
<
a
class
=
"btn btn-primary btn-xs ' + ticketAuditFlag + '"
href
=
"javascript:void(0)"
onclick
=
"ticketAudit(
\
'' + row.refundBatchId + '
\
')"
><
/i>票务审核</
a
>
');
actions.push('
<
a
class
=
"btn btn-
primary
btn-xs ' + executeFlag + '"
href
=
"javascript:void(0)"
onclick
=
"execute(
\
'' + row.refundBatchId + '
\
')"
><
/i>财务审核</
a
>
');
actions.push('
<
a
class
=
"btn btn-danger btn-xs ' + cancelFlag + '"
href
=
"javascript:void(0)"
onclick
=
"$.operate.remove(
\
'' + row.refundBatchId + '
\
',
\
'确定取消退款申请吗?
\
', table.options.cancelUrl)"
><
/i>取消</
a
>
');
// actions.push('
<
a
class
=
"btn btn-warning btn-xs ' + reapplyFlag + '"
href
=
"javascript:void(0)"
onclick
=
"$.operate.remove(
\
'' + row.refundBatchId + '
\
',
\
'确定重新提交退款审核吗?
\
', table.options.reapplyUrl)"
><
/i>重新提交</
a
>
');
return actions.join('');
...
...
liquidnet-bus-client/liquidnet-client-admin/liquidnet-client-admin-zhengzai/src/main/java/com/liquidnet/client/admin/zhengzai/kylin/service/impl/KylinOrderRefundsServiceImpl.java
View file @
0fb5b506
...
...
@@ -229,49 +229,57 @@ public class KylinOrderRefundsServiceImpl extends ServiceImpl<KylinOrderRefundsM
if
(
orderRefundsIdList
.
size
()
<=
0
)
{
return
ResponseDto
.
failure
(
"无退款订单"
);
}
Integer
[]
orderRefundStatus
=
null
;
Integer
orderType
=
null
;
List
<
Integer
>
orderRefundStatus
=
null
;
List
<
Integer
>
orderTypeList
=
null
;
switch
(
type
)
{
default
:
return
ResponseDto
.
failure
(
"type类型错误"
);
case
"cancel"
:
// orderRefundStatus = new Integer[]{KylinTableStatusConst.ORDER_REFUND_STATUS_APPLY, KylinTableStatusConst.ORDER_REFUND_STATUS_REJECT, KylinTableStatusConst.ORDER_REFUND_STATUS_REFUSE};
orderRefundStatus
=
new
Integer
[]{
KylinTableStatusConst
.
ORDER_REFUND_STATUS_APPLY
,
KylinTableStatusConst
.
ORDER_REFUND_STATUS_APPROVED
};
orderType
=
KylinTableStatusConst
.
ORDER_REFUND_TYPE_APPLY
;
orderRefundStatus
=
Arrays
.
asList
(
KylinTableStatusConst
.
ORDER_REFUND_STATUS_APPLY
,
KylinTableStatusConst
.
ORDER_REFUND_STATUS_APPROVED
);
orderTypeList
=
Arrays
.
asList
(
KylinTableStatusConst
.
ORDER_REFUND_TYPE_APPLY
,
KylinTableStatusConst
.
ORDER_REFUND_TYPE_APPLY2
,
KylinTableStatusConst
.
ORDER_REFUND_TYPE_APPLY3
);
break
;
case
"reapply"
:
// orderRefundStatus = new Integer[]{KylinTableStatusConst.ORDER_REFUND_STATUS_REJECT, KylinTableStatusConst.ORDER_REFUND_STATUS_REFUSE};
orderRefundStatus
=
new
Integer
[]{
KylinTableStatusConst
.
ORDER_REFUND_STATUS_REJECT
};
orderRefundStatus
=
Arrays
.
asList
(
KylinTableStatusConst
.
ORDER_REFUND_STATUS_REJECT
);
break
;
case
"approved"
:
orderRefundStatus
=
new
Integer
[]{
KylinTableStatusConst
.
ORDER_REFUND_STATUS_APPLY
,
KylinTableStatusConst
.
ORDER_REFUND_STATUS_REFUSE
}
;
orderRefundStatus
=
Arrays
.
asList
(
KylinTableStatusConst
.
ORDER_REFUND_STATUS_APPLY
,
KylinTableStatusConst
.
ORDER_REFUND_STATUS_REFUSE
)
;
break
;
case
"reject"
:
orderRefundStatus
=
new
Integer
[]{
KylinTableStatusConst
.
ORDER_REFUND_STATUS_APPLY
,
KylinTableStatusConst
.
ORDER_REFUND_STATUS_REFUSE
}
;
orderType
=
KylinTableStatusConst
.
ORDER_REFUND_TYPE_APPLY
;
case
"reject"
:
// 运营驳回
orderRefundStatus
=
Arrays
.
asList
(
KylinTableStatusConst
.
ORDER_REFUND_STATUS_APPLY
,
KylinTableStatusConst
.
ORDER_REFUND_STATUS_REFUSE
)
;
orderType
List
=
Arrays
.
asList
(
KylinTableStatusConst
.
ORDER_REFUND_TYPE_APPLY
,
KylinTableStatusConst
.
ORDER_REFUND_TYPE_APPLY2
,
KylinTableStatusConst
.
ORDER_REFUND_TYPE_APPLY3
)
;
break
;
case
"ticketAudit"
:
orderRefundStatus
=
new
Integer
[]{
KylinTableStatusConst
.
ORDER_REFUND_STATUS_APPROVED
}
;
orderType
=
KylinTableStatusConst
.
ORDER_REFUND_TYPE_APPLY
;
orderRefundStatus
=
Arrays
.
asList
(
KylinTableStatusConst
.
ORDER_REFUND_STATUS_APPROVED
)
;
orderType
List
=
Arrays
.
asList
(
KylinTableStatusConst
.
ORDER_REFUND_TYPE_APPLY3
)
;
break
;
case
"unfilled"
:
orderRefundStatus
=
new
Integer
[]{
KylinTableStatusConst
.
ORDER_REFUND_STATUS_APPROVED
,
KylinTableStatusConst
.
ORDER_REFUND_STATUS_ERROR
}
;
orderRefundStatus
=
Arrays
.
asList
(
KylinTableStatusConst
.
ORDER_REFUND_STATUS_APPROVED
,
KylinTableStatusConst
.
ORDER_REFUND_STATUS_ERROR
,
KylinTableStatusConst
.
ORDER_REFUND_STATUS_TICKET
)
;
break
;
case
"refuse"
:
orderRefundStatus
=
new
Integer
[]{
KylinTableStatusConst
.
ORDER_REFUND_STATUS_APPROVED
,
KylinTableStatusConst
.
ORDER_REFUND_STATUS_ERROR
}
;
orderRefundStatus
=
Arrays
.
asList
(
KylinTableStatusConst
.
ORDER_REFUND_STATUS_APPROVED
,
KylinTableStatusConst
.
ORDER_REFUND_STATUS_ERROR
,
KylinTableStatusConst
.
ORDER_REFUND_STATUS_TICKET
)
;
break
;
}
QueryWrapper
<
KylinOrderRefunds
>
listQuery
=
new
QueryWrapper
();
listQuery
.
in
(
"order_refunds_id"
,
orderRefundsIdList
).
in
(
"status"
,
orderRefundStatus
);
if
(
null
!=
orderType
)
{
listQuery
.
eq
(
"type"
,
orderType
);
if
(
null
!=
orderType
List
)
{
listQuery
.
in
(
"type"
,
orderTypeList
);
}
List
<
KylinOrderRefunds
>
refundList
=
kylinOrderRefundsMapper
.
selectList
(
listQuery
);
if
(
orderRefundsIdList
.
size
()
!=
refundList
.
size
())
{
return
ResponseDto
.
failure
(
"当前状态不允许操作"
);
}
if
(
type
.
equals
(
"unfilled"
)
||
type
.
equals
(
"refuse"
))
{
for
(
KylinOrderRefunds
info
:
refundList
)
{
if
(
info
.
getType
()
==
KylinTableStatusConst
.
ORDER_REFUND_TYPE_APPLY3
)
{
if
(
info
.
getStatus
()
==
KylinTableStatusConst
.
ORDER_REFUND_STATUS_APPROVED
)
{
return
ResponseDto
.
failure
(
"存在待确认收货的订单,当前不允许操作"
);
}
}
}
}
boolean
res
=
false
;
String
reject
=
refundApplyParam
.
getReject
();
String
refuse
=
refundApplyParam
.
getRefuse
();
...
...
@@ -280,21 +288,24 @@ public class KylinOrderRefundsServiceImpl extends ServiceImpl<KylinOrderRefundsM
res
=
kylinRefundsStatusServiceImpl
.
orderTicketRefundCancel
(
refundList
,
true
);
break
;
case
"reapply"
:
res
=
kylinRefundsStatusServiceImpl
.
orderRefundChangeStatus
(
refundList
,
type
,
""
,
""
,
authId
,
authName
);
res
=
kylinRefundsStatusServiceImpl
.
orderRefundChangeStatus
(
refundList
,
refundApplyParam
,
authId
,
authName
);
break
;
case
"approved"
:
res
=
kylinRefundsStatusServiceImpl
.
orderRefundChangeStatus
(
refundList
,
type
,
reject
,
""
,
authId
,
authName
);
res
=
kylinRefundsStatusServiceImpl
.
orderRefundChangeStatus
(
refundList
,
refundApplyParam
,
authId
,
authName
);
break
;
case
"reject"
:
boolean
cancelRes
=
kylinRefundsStatusServiceImpl
.
orderTicketRefundCancel
(
refundList
,
false
);
res
=
kylinRefundsStatusServiceImpl
.
orderRefundChangeStatus
(
refundList
,
type
,
reject
,
""
,
authId
,
authName
);
res
=
kylinRefundsStatusServiceImpl
.
orderRefundChangeStatus
(
refundList
,
refundApplyParam
,
authId
,
authName
);
break
;
case
"ticketAudit"
:
res
=
kylinRefundsStatusServiceImpl
.
orderRefundChangeStatus
(
refundList
,
refundApplyParam
,
authId
,
authName
);
break
;
case
"unfilled"
:
kylinRefundsStatusServiceImpl
.
orderTicketRefundUnfilled
(
refundList
,
refu
se
,
authId
,
authName
);
kylinRefundsStatusServiceImpl
.
orderTicketRefundUnfilled
(
refundList
,
refu
ndApplyParam
,
authId
,
authName
);
res
=
true
;
break
;
case
"refuse"
:
res
=
kylinRefundsStatusServiceImpl
.
orderRefundChangeStatus
(
refundList
,
type
,
""
,
refuse
,
authId
,
authName
);
res
=
kylinRefundsStatusServiceImpl
.
orderRefundChangeStatus
(
refundList
,
refundApplyParam
,
authId
,
authName
);
break
;
}
if
(
res
)
{
...
...
@@ -325,7 +336,6 @@ public class KylinOrderRefundsServiceImpl extends ServiceImpl<KylinOrderRefundsM
refundCallbackParam
.
setRefundCode
(
refundInfo
.
getRefundCode
());
BigDecimal
refundPrice
=
refundInfo
.
getPrice
().
add
(
refundInfo
.
getPriceExpress
());
refundCallbackParam
.
setRefundPrice
(
refundPrice
);
// refundCallbackParam.setRefund_type("UNKNOWN");
refundCallbackParam
.
setRefundId
(
refundInfo
.
getRefundId
());
refundCallbackParam
.
setRefundAt
(
DateUtils
.
dateTimeNow
());
refundCallbackParam
.
setRefundError
(
refundInfo
.
getRefundError
());
...
...
@@ -397,6 +407,17 @@ public class KylinOrderRefundsServiceImpl extends ServiceImpl<KylinOrderRefundsM
public
PageInfo
<
OrderRefundDao
>
refundList
(
RefundSearchParam
refundSearchParam
)
{
PageInfo
<
OrderRefundDao
>
pageInfoTmp
=
null
;
try
{
if
(!
ShiroUtils
.
getSysUser
().
isAdmin
())
{
if
(
ShiroUtils
.
getSubject
().
hasRole
(
"kylin:refund:ticketAudit"
))
{
// 票务
refundSearchParam
.
setRoleType
(
1
);
}
if
(
ShiroUtils
.
getSubject
().
hasRole
(
"kylin:refund:execute"
))
{
// 财务
refundSearchParam
.
setRoleType
(
2
);
}
}
PageHelper
.
startPage
(
refundSearchParam
.
getPageNum
(),
refundSearchParam
.
getPageSize
());
if
(!
refundSearchParam
.
getStatus
().
isEmpty
())
{
refundSearchParam
.
setStatusStr
(
Arrays
.
asList
(
refundSearchParam
.
getStatus
().
split
(
","
)));
...
...
liquidnet-bus-client/liquidnet-client-admin/liquidnet-client-admin-zhengzai/src/main/java/com/liquidnet/client/admin/zhengzai/kylin/service/impl/KylinRefundPerformancesAdminServiceImpl.java
View file @
0fb5b506
...
...
@@ -200,6 +200,10 @@ public class KylinRefundPerformancesAdminServiceImpl {
}
}
public
ResponseDto
ticketAuditAll
(
RefundBatchApplyParam
refundBatchApplyParam
)
{
return
ResponseDto
.
success
();
}
public
KylinOrderRefundBatchesVo
detail
(
String
refundBatchId
)
{
KylinOrderRefundBatches
data
=
kylinOrderRefundBatchesMapper
.
selectOne
(
new
QueryWrapper
<
KylinOrderRefundBatches
>()
...
...
liquidnet-bus-client/liquidnet-client-admin/liquidnet-client-admin-zhengzai/src/main/java/com/liquidnet/client/admin/zhengzai/kylin/service/impl/KylinRefundsStatusServiceImpl.java
View file @
0fb5b506
...
...
@@ -326,9 +326,9 @@ public class KylinRefundsStatusServiceImpl {
return
true
;
}
public
boolean
orderRefundChangeStatus
(
List
<
KylinOrderRefunds
>
refundList
,
String
type
,
String
reject
,
String
refuse
,
String
authId
,
String
authName
)
{
KylinOrderRefunds
kylinOrderRefunds
=
new
KylinOrderRefunds
();
switch
(
type
)
{
public
boolean
orderRefundChangeStatus
(
List
<
KylinOrderRefunds
>
refundList
,
RefundApplyParam
refundApplyParam
,
String
authId
,
String
authName
)
{
KylinOrderRefunds
kylinOrderRefunds
=
KylinOrderRefunds
.
getNew
();
switch
(
refundApplyParam
.
getType
()
)
{
case
"reapply"
:
kylinOrderRefunds
.
setStatus
(
KylinTableStatusConst
.
ORDER_REFUND_STATUS_APPLY
);
kylinOrderRefunds
.
setApplicantId
(
authId
);
...
...
@@ -340,21 +340,28 @@ public class KylinRefundsStatusServiceImpl {
kylinOrderRefunds
.
setAuditorId
(
authId
);
kylinOrderRefunds
.
setAuditorName
(
authName
);
kylinOrderRefunds
.
setAuditorAt
(
LocalDateTime
.
now
());
kylinOrderRefunds
.
setReject
(
re
ject
);
kylinOrderRefunds
.
setReject
(
re
fundApplyParam
.
getReject
()
);
break
;
case
"reject"
:
kylinOrderRefunds
.
setStatus
(
KylinTableStatusConst
.
ORDER_REFUND_STATUS_REJECT
);
kylinOrderRefunds
.
setAuditorId
(
authId
);
kylinOrderRefunds
.
setAuditorName
(
authName
);
kylinOrderRefunds
.
setAuditorAt
(
LocalDateTime
.
now
());
kylinOrderRefunds
.
setReject
(
reject
);
kylinOrderRefunds
.
setReject
(
refundApplyParam
.
getReject
());
break
;
case
"ticketAudit"
:
kylinOrderRefunds
.
setStatus
(
KylinTableStatusConst
.
ORDER_REFUND_STATUS_TICKET
);
kylinOrderRefunds
.
setTicketAuditId
(
authId
);
kylinOrderRefunds
.
setTicketAuditName
(
authName
);
kylinOrderRefunds
.
setTicketAuditAt
(
LocalDateTime
.
now
());
kylinOrderRefunds
.
setTicketAuditRemark
(
refundApplyParam
.
getTicketRemark
());
break
;
case
"refuse"
:
kylinOrderRefunds
.
setStatus
(
KylinTableStatusConst
.
ORDER_REFUND_STATUS_REFUSE
);
kylinOrderRefunds
.
setExecutorId
(
authId
);
kylinOrderRefunds
.
setExecutorName
(
authName
);
kylinOrderRefunds
.
setExecutorAt
(
LocalDateTime
.
now
());
kylinOrderRefunds
.
setRefuse
(
refu
se
);
kylinOrderRefunds
.
setRefuse
(
refu
ndApplyParam
.
getRefuse
()
);
break
;
}
...
...
@@ -370,7 +377,7 @@ public class KylinRefundsStatusServiceImpl {
new
UpdateWrapper
<
KylinOrderRefunds
>().
in
(
"order_refunds_id"
,
orderRefundIds
)
);
// 修改缓存
KylinOrderRefundsVo
kylinOrderRefundsVo
=
new
KylinOrderRefundsVo
();
KylinOrderRefundsVo
kylinOrderRefundsVo
=
KylinOrderRefundsVo
.
getNew
();
BeanUtils
.
copyProperties
(
kylinOrderRefunds
,
kylinOrderRefundsVo
);
kylinOrderRefundsVo
.
setUpdatedAt
(
LocalDateTime
.
now
());
for
(
String
refundId
:
orderRefundIds
)
{
...
...
@@ -380,11 +387,6 @@ public class KylinRefundsStatusServiceImpl {
object
);
}
/*BasicDBObject object = new BasicDBObject("$set", mongoConverter.convertToMongoType(kylinOrderRefundsVo));
UpdateResult updateResult = mongoTemplate.getCollection(KylinOrderRefundsVo.class.getSimpleName()).updateOne(
Query.query(Criteria.where("orderRefundsId").in(orderRefundIds)).getQueryObject(),
object
);*/
dataUtils
.
delOrderRefundVo
(
orderRefundIds
);
dataUtils
.
delOrderRefundVoByOrderId
(
orderIds
);
...
...
@@ -392,13 +394,13 @@ public class KylinRefundsStatusServiceImpl {
}
@Async
public
void
orderTicketRefundUnfilled
(
List
<
KylinOrderRefunds
>
refundList
,
String
refuse
,
String
authId
,
String
authName
)
{
public
void
orderTicketRefundUnfilled
(
List
<
KylinOrderRefunds
>
refundList
,
RefundApplyParam
refundApplyParam
,
String
authId
,
String
authName
)
{
KylinOrderRefunds
kylinOrderRefunds
=
new
KylinOrderRefunds
();
kylinOrderRefunds
.
setStatus
(
KylinTableStatusConst
.
ORDER_REFUND_STATUS_UNFILLED
);
kylinOrderRefunds
.
setExecutorId
(
authId
);
kylinOrderRefunds
.
setExecutorName
(
authName
);
kylinOrderRefunds
.
setExecutorAt
(
LocalDateTime
.
now
());
kylinOrderRefunds
.
setRefuse
(
refu
se
);
kylinOrderRefunds
.
setRefuse
(
refu
ndApplyParam
.
getRefuse
()
);
kylinOrderRefunds
.
setUpdatedAt
(
LocalDateTime
.
now
());
for
(
KylinOrderRefunds
refund
:
refundList
)
{
...
...
@@ -416,14 +418,8 @@ public class KylinRefundsStatusServiceImpl {
params
.
add
(
"paymentType"
,
oderInfo
.
getPaymentType
());
params
.
add
(
"price"
,
String
.
valueOf
(
refundPrice
));
params
.
add
(
"priceTotal"
,
String
.
valueOf
(
oderInfo
.
getPriceTotal
()));
// params.add("reason", refund.getReason());
params
.
add
(
"reason"
,
"按需退款"
);
/*String sign = StringUtils.Ksort(params);
sign = sign.concat("&key=").concat("R7tXY9smPQPG9Ku5yI0u6sfnlckmk04V");
// sign = MD5.getStrMD5(sign);
sign = sign.toUpperCase();
params.add("sign", sign);*/
MultiValueMap
<
String
,
String
>
headers
=
new
LinkedMultiValueMap
();
// headers.add("Content-Type", "application/json;charset=UTF-8");
headers
.
add
(
"Accept"
,
"application/json;charset=UTF-8"
);
...
...
liquidnet-bus-client/liquidnet-client-admin/liquidnet-client-admin-zhengzai/src/main/java/com/liquidnet/client/admin/zhengzai/kylin/service/impl/PerformancesExpressServiceImpl.java
View file @
0fb5b506
...
...
@@ -126,6 +126,7 @@ public class PerformancesExpressServiceImpl extends ServiceImpl<KylinOrderExpres
}
}
}
catch
(
Exception
e
)
{
log
.
error
(
"getPerformancesListException"
,
e
);
}
return
voList
;
}
...
...
liquidnet-bus-do/liquidnet-service-kylin-do/src/main/java/com/liquidnet/service/kylin/dao/OrderRefundDao.java
View file @
0fb5b506
...
...
@@ -58,6 +58,14 @@ public class OrderRefundDao implements Serializable {
private
String
refuse
;
private
String
ticketAuditId
;
private
String
ticketAuditName
;
private
LocalDateTime
ticketAuditAt
;
private
String
ticketAuditRemark
;
private
String
refundType
;
private
String
createdAt
;
...
...
@@ -98,6 +106,9 @@ public class OrderRefundDao implements Serializable {
case
8
:
this
.
statusName
=
"二审驳回退款"
;
break
;
case
9
:
this
.
statusName
=
"已确认收货"
;
break
;
default
:
this
.
statusName
=
"其他"
;
break
;
...
...
liquidnet-bus-do/liquidnet-service-kylin-do/src/main/java/com/liquidnet/service/kylin/entity/KylinOrderRefunds.java
View file @
0fb5b506
...
...
@@ -142,6 +142,26 @@ public class KylinOrderRefunds implements Serializable {
*/
private
String
refuse
;
/**
* 票务审核人id
*/
private
String
ticketAuditId
;
/**
* 票务审核人名称
*/
private
String
ticketAuditName
;
/**
* 票务审核时间
*/
private
LocalDateTime
ticketAuditAt
;
/**
* 票务审核备注
*/
private
String
ticketAuditRemark
;
/**
* 票务/快递费/票和快递费
*/
...
...
liquidnet-bus-do/liquidnet-service-kylin-do/src/main/resources/com.liquidnet.service.kylin.mapper/KylinOrderRefundsMapper.xml
View file @
0fb5b506
...
...
@@ -48,12 +48,32 @@
<if
test=
"orderCode!=''"
>
AND b.order_code = #{orderCode}
</if>
<if
test=
"status!=''"
>
AND a.status IN
<foreach
collection=
"statusStr"
item=
"status"
index=
"index"
open=
"("
close=
")"
separator=
","
>
${status}
</foreach>
</if>
<choose>
<when
test=
"roleType!=''"
>
<if
test=
"roleType == 1"
>
AND a.type = 3 AND a.status = 1
</if>
<if
test=
"roleType == 2"
>
<if
test=
"statusStr == '9'"
>
AND a.status = 9
</if>
<if
test=
"statusStr 1= '1'"
>
AND a.status = 1 AND a.type != 3
</if>
<if
test=
"statusStr != '1' and statusStr != '9'"
>
AND (a.status = 9 OR (a.status = 1 AND a.type != 3)
</if>
</if>
</when>
<otherwise>
<if
test=
"status!=''"
>
AND a.status IN
<foreach
collection=
"statusStr"
item=
"status"
index=
"index"
open=
"("
close=
")"
separator=
","
>
${status}
</foreach>
</if>
</otherwise>
</choose>
</where>
ORDER BY mid DESC
</select>
...
...
liquidnet-bus-do/liquidnet-service-kylin-do/src/main/resources/com.liquidnet.service.kylin.mapper/KylinPerformancesMapper.xml
View file @
0fb5b506
...
...
@@ -527,8 +527,6 @@
p.time_start ,
p.time_end ,
p.created_at,
p.created_at,
p.created_at,
oep.total1,
oep.total2,
...
...
@@ -538,15 +536,20 @@
LEFT JOIN kylin_performance_status AS ps ON p.performances_id = ps.performance_id
LEFT JOIN kylin_performance_relations AS pr ON p.performances_id = pr.performance_id
LEFT JOIN kylin_order_express_performances AS oep ON oep.performances_id = pr.performance_id
JOIN kylin_ticket_time_relation AS a ON a.performance_id = p.performances_id
JOIN kylin_ticket_relations AS b ON b.times_id = a.times_id
JOIN kylin_ticket_status AS c ON c.ticket_id = b.ticket_id
<where>
c.is_express = 1
<if
test=
"title!=''"
>
AND title LIKE concat('%', #{title}, '%')
AND
p.
title LIKE concat('%', #{title}, '%')
</if>
<if
test=
"performancesId!=''"
>
AND performances_id = #{performancesId}
AND p
.p
erformances_id = #{performancesId}
</if>
</where>
ORDER BY created_at DESC
GROUP BY p.performances_id
ORDER BY p.created_at DESC
</select>
<select
id=
"countExpressNumber"
resultType=
"com.liquidnet.service.kylin.dao.PerformanceExpressPerformanceListAdminDao"
>
...
...
liquidnet-bus-service/liquidnet-service-kylin/liquidnet-service-kylin-impl/docu/db_kylin_structure.sql
View file @
0fb5b506
...
...
@@ -758,7 +758,7 @@ CREATE TABLE `kylin_order_refunds`
`price`
decimal
(
10
,
2
)
NOT
NULL
DEFAULT
'0.00'
COMMENT
'退款票总金额'
,
`price_express`
decimal
(
10
,
2
)
NOT
NULL
DEFAULT
'0.00'
COMMENT
'退款快递费'
,
`status`
tinyint
NOT
NULL
DEFAULT
'0'
COMMENT
'退款状态: 0请求退款 2取消退款 1审核通过 5驳回退款 7等待退款 3正在退款 4完成退款 6退款失败'
,
`type`
tinyint
NOT
NULL
DEFAULT
'0'
COMMENT
'退款
差异: 0客服或票务申请 1超时自动退款不占库存
'
,
`type`
tinyint
NOT
NULL
DEFAULT
'0'
COMMENT
'退款
发起类型 0客服、票务人工申请 1超时退款 2用户申请普通退款 3用户申请快递退款
'
,
`applicant_id`
varchar
(
255
)
NOT
NULL
DEFAULT
''
COMMENT
'申请人id'
,
`applicant_name`
varchar
(
100
)
NOT
NULL
DEFAULT
''
COMMENT
'申请人名称'
,
`applicant_at`
timestamp
NULL
DEFAULT
NULL
COMMENT
'申请时间'
,
...
...
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