记得上下班打卡 | 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
09c7da68
Commit
09c7da68
authored
Aug 27, 2021
by
张国柄
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
+会员订单:订单退款;
parent
1652e54d
Changes
7
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
155 additions
and
5 deletions
+155
-5
AdamMemberOrderRefundParam.java
...vice/adam/dto/param/admin/AdamMemberOrderRefundParam.java
+30
-0
BusinessType.java
...com/liquidnet/client/admin/common/enums/BusinessType.java
+5
-0
AdamMemberOrderAdminController.java
...troller/zhengzai/adam/AdamMemberOrderAdminController.java
+85
-0
IAdamMemberOrderAdminService.java
...n/zhengzai/adam/service/IAdamMemberOrderAdminService.java
+4
-0
AdamMemberOrderAdminServiceImpl.java
...ai/adam/service/impl/AdamMemberOrderAdminServiceImpl.java
+22
-0
AdamMemberRightsAdminServiceImpl.java
...i/adam/service/impl/AdamMemberRightsAdminServiceImpl.java
+1
-1
IDGenerator.java
...ain/java/com/liquidnet/commons/lang/util/IDGenerator.java
+8
-4
No files found.
liquidnet-bus-api/liquidnet-service-adam-api/src/main/java/com/liquidnet/service/adam/dto/param/admin/AdamMemberOrderRefundParam.java
0 → 100644
View file @
09c7da68
package
com
.
liquidnet
.
service
.
adam
.
dto
.
param
.
admin
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
javax.validation.constraints.DecimalMin
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.NotNull
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
@ApiModel
(
value
=
"AdamMemberOrderRefundParam"
,
description
=
"会员订单退款入参"
)
@Data
public
class
AdamMemberOrderRefundParam
implements
Serializable
{
private
static
final
long
serialVersionUID
=
3811495229630522458L
;
@NotBlank
(
message
=
"订单号不能为空"
)
@ApiModelProperty
(
required
=
true
,
value
=
"订单号"
)
private
String
orderNo
;
@NotNull
(
message
=
"退款金额不能为空"
)
@DecimalMin
(
value
=
"0.01"
,
message
=
"退款金额不能小于0.01"
)
@ApiModelProperty
(
required
=
true
,
value
=
"退款金额"
)
private
BigDecimal
refundAmt
;
@NotNull
(
message
=
"请选择是否能继续购买会员"
)
@ApiModelProperty
(
required
=
true
,
value
=
"是否能继续购买会员[1-是|2-否]"
)
private
Integer
buyMark
;
@NotBlank
(
message
=
"请输入退款原因"
)
@ApiModelProperty
(
required
=
true
,
value
=
"退款原因"
)
private
String
reason
;
}
liquidnet-bus-client/liquidnet-client-admin/liquidnet-client-admin-common/src/main/java/com/liquidnet/client/admin/common/enums/BusinessType.java
View file @
09c7da68
...
...
@@ -124,4 +124,9 @@ public enum BusinessType
* 快递-打印 23
*/
BATCH_PRINT
,
/**
* 会员订单退款
*/
MORDER_REFUND
,
}
liquidnet-bus-client/liquidnet-client-admin/liquidnet-client-admin-web/src/main/java/com/liquidnet/client/admin/web/controller/zhengzai/adam/AdamMemberOrderController.java
→
liquidnet-bus-client/liquidnet-client-admin/liquidnet-client-admin-web/src/main/java/com/liquidnet/client/admin/web/controller/zhengzai/adam/AdamMemberOrder
Admin
Controller.java
View file @
09c7da68
package
com
.
liquidnet
.
client
.
admin
.
web
.
controller
.
zhengzai
.
adam
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.liquidnet.client.admin.common.annotation.Log
;
import
com.liquidnet.client.admin.common.core.controller.BaseController
;
import
com.liquidnet.client.admin.common.core.domain.AjaxResult
;
import
com.liquidnet.client.admin.common.core.page.TableDataInfo
;
import
com.liquidnet.client.admin.common.enums.BusinessType
;
import
com.liquidnet.client.admin.zhengzai.adam.service.IAdamMemberOrderAdminService
;
import
com.liquidnet.service.adam.dto.MemberOrderDto
;
import
com.liquidnet.service.adam.dto.param.admin.AdamMemberOrderRefundParam
;
import
com.liquidnet.service.adam.dto.param.admin.MemberOrderListReq
;
import
com.liquidnet.service.adam.dto.vo.admin.MemberOrderDetailAdminVo
;
import
com.liquidnet.service.adam.entity.AdamMemberOrder
;
import
org.apache.shiro.authz.annotation.RequiresPermissions
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Controller
;
import
org.springframework.ui.ModelMap
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.*
;
import
java.util.List
;
...
...
@@ -27,8 +33,7 @@ import java.util.List;
*/
@Controller
@RequestMapping
(
"adam/order"
)
public
class
AdamMemberOrderController
extends
BaseController
{
public
class
AdamMemberOrderAdminController
extends
BaseController
{
private
String
prefix
=
"zhengzai/adam/order"
;
@Autowired
...
...
@@ -36,30 +41,21 @@ public class AdamMemberOrderController extends BaseController
@RequiresPermissions
(
"adam:order:orderlist:view"
)
@GetMapping
(
"/orderList"
)
public
String
order
()
{
public
String
order
()
{
return
prefix
+
"/orderList/order"
;
}
/**
* 查询【请填写功能名称】列表
*/
@Log
(
title
=
"会员订单"
,
businessType
=
BusinessType
.
LIST
)
@Log
(
title
=
"会员订单列表"
,
businessType
=
BusinessType
.
LIST
)
@RequiresPermissions
(
"adam:order:orderlist:list"
)
@PostMapping
(
"/orderList/list"
)
@ResponseBody
public
TableDataInfo
list
(
MemberOrderListReq
memberOrderListReq
)
{
public
TableDataInfo
list
(
MemberOrderListReq
memberOrderListReq
)
{
startPage
();
List
<
MemberOrderDto
>
list
=
adamMemberOrderAdminService
.
getMemberOrderList
(
memberOrderListReq
);
return
getDataTable
(
list
);
}
/**
* 订单详情
*/
@Log
(
title
=
"会员订单"
,
businessType
=
BusinessType
.
DETAIL
)
@Log
(
title
=
"会员订单详情"
,
businessType
=
BusinessType
.
DETAIL
)
@RequiresPermissions
(
"adam:order:orderlist:detail"
)
@GetMapping
(
"/orderList/detail/{orderId}"
)
public
String
orderDetail
(
@PathVariable
(
"orderId"
)
String
orderId
,
ModelMap
mmap
)
{
...
...
@@ -68,73 +64,22 @@ public class AdamMemberOrderController extends BaseController
return
prefix
+
"/orderList/detail"
;
}
// /**
// * 导出【请填写功能名称】列表
// */
// @RequiresPermissions("adam:order:export")
// @Log(title = "【请填写功能名称】", businessType = BusinessType.EXPORT)
// @PostMapping("/export")
// @ResponseBody
// public AjaxResult export(AdamMemberOrder adamMemberOrder)
// {
// List<AdamMemberOrder> list = adamMemberOrderService.selectAdamMemberOrderList(adamMemberOrder);
// ExcelUtil<AdamMemberOrder> util = new ExcelUtil<AdamMemberOrder>(AdamMemberOrder.class);
// return util.exportExcel(list, "【请填写功能名称】数据");
// }
// /**
// * 新增【请填写功能名称】
// */
// @GetMapping("/add")
// public String add()
// {
// return prefix + "/add";
// }
@Log
(
title
=
"会员订单退款"
,
businessType
=
BusinessType
.
MORDER_REFUND
)
@RequiresPermissions
(
"adam:order:orderlist:refund"
)
@PostMapping
(
"/orderList/refund"
)
@ResponseBody
public
AjaxResult
orderRefund
(
@Validated
AdamMemberOrderRefundParam
parameter
)
{
LambdaQueryWrapper
<
AdamMemberOrder
>
queryWrapper
=
Wrappers
.
lambdaQuery
(
AdamMemberOrder
.
class
)
.
eq
(
AdamMemberOrder:
:
getOrderNo
,
parameter
.
getOrderNo
());
AdamMemberOrder
memberOrder
=
adamMemberOrderAdminService
.
getOne
(
queryWrapper
);
// /**
// * 新增保存【请填写功能名称】
// */
// @RequiresPermissions("adam:order:add")
// @Log(title = "【请填写功能名称】", businessType = BusinessType.INSERT)
// @PostMapping("/add")
// @ResponseBody
// public AjaxResult addSave(AdamMemberOrder adamMemberOrder)
// {
// return toAjax(adamMemberOrderService.insertAdamMemberOrder(adamMemberOrder));
// }
if
(
null
==
memberOrder
)
{
return
this
.
error
(
"订单不存在"
);
}
if
(
memberOrder
.
getPricePaid
().
compareTo
(
parameter
.
getRefundAmt
())
<
0
)
{
return
this
.
error
(
"退款金额超出订单实际支付金额"
);
}
// /**
// * 修改【请填写功能名称】
// */
// @GetMapping("/edit/{mid}")
// public String edit(@PathVariable("mid") String mid, ModelMap mmap)
// {
// AdamMemberOrder adamMemberOrder = adamMemberOrderService.selectAdamMemberOrderById(mid);
// mmap.put("adamMemberOrder", adamMemberOrder);
// return prefix + "/edit";
// }
//
// /**
// * 修改保存【请填写功能名称】
// */
// @RequiresPermissions("adam:order:edit")
// @Log(title = "【请填写功能名称】", businessType = BusinessType.UPDATE)
// @PostMapping("/edit")
// @ResponseBody
// public AjaxResult editSave(AdamMemberOrder adamMemberOrder)
// {
// return toAjax(adamMemberOrderService.updateAdamMemberOrder(adamMemberOrder));
// }
//
// /**
// * 删除【请填写功能名称】
// */
// @RequiresPermissions("adam:order:remove")
// @Log(title = "【请填写功能名称】", businessType = BusinessType.DELETE)
// @PostMapping( "/remove")
// @ResponseBody
// public AjaxResult remove(String ids)
// {
// return toAjax(adamMemberOrderService.deleteAdamMemberOrderByIds(ids));
// }
return
this
.
toAjax
(
adamMemberOrderAdminService
.
refundProcessing
(
parameter
,
memberOrder
));
}
}
liquidnet-bus-client/liquidnet-client-admin/liquidnet-client-admin-zhengzai/src/main/java/com/liquidnet/client/admin/zhengzai/adam/service/IAdamMemberOrderAdminService.java
View file @
09c7da68
...
...
@@ -2,6 +2,7 @@ package com.liquidnet.client.admin.zhengzai.adam.service;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.liquidnet.service.adam.dto.MemberOrderDto
;
import
com.liquidnet.service.adam.dto.param.admin.AdamMemberOrderRefundParam
;
import
com.liquidnet.service.adam.dto.param.admin.MemberOrderListReq
;
import
com.liquidnet.service.adam.dto.vo.admin.MemberOrderDetailAdminVo
;
import
com.liquidnet.service.adam.entity.AdamMemberOrder
;
...
...
@@ -18,7 +19,10 @@ import java.util.List;
* @date 2021/6/6 16:23
*/
public
interface
IAdamMemberOrderAdminService
extends
IService
<
AdamMemberOrder
>
{
List
<
MemberOrderDto
>
getMemberOrderList
(
MemberOrderListReq
memberOrderListReq
);
MemberOrderDetailAdminVo
getMemberOrderDetail
(
String
orderNo
);
boolean
refundProcessing
(
AdamMemberOrderRefundParam
param
,
AdamMemberOrder
memberOrder
);
}
liquidnet-bus-client/liquidnet-client-admin/liquidnet-client-admin-zhengzai/src/main/java/com/liquidnet/client/admin/zhengzai/adam/service/impl/AdamMemberOrderAdminServiceImpl.java
View file @
09c7da68
...
...
@@ -5,7 +5,9 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.liquidnet.client.admin.zhengzai.adam.service.IAdamMemberOrderAdminService
;
import
com.liquidnet.commons.lang.util.BeanUtil
;
import
com.liquidnet.commons.lang.util.IDGenerator
;
import
com.liquidnet.service.adam.dto.MemberOrderDto
;
import
com.liquidnet.service.adam.dto.param.admin.AdamMemberOrderRefundParam
;
import
com.liquidnet.service.adam.dto.param.admin.MemberOrderListReq
;
import
com.liquidnet.service.adam.dto.vo.AdamMemberOrderExtVo
;
import
com.liquidnet.service.adam.dto.vo.AdamMemberOrderVo
;
...
...
@@ -16,6 +18,8 @@ import com.liquidnet.service.adam.entity.*;
import
com.liquidnet.service.adam.mapper.*
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.util.LinkedMultiValueMap
;
import
java.beans.IntrospectionException
;
import
java.lang.reflect.InvocationTargetException
;
...
...
@@ -98,4 +102,22 @@ public class AdamMemberOrderAdminServiceImpl extends ServiceImpl<AdamMemberOrder
detailAdminVo
.
setAdamMemberOrderExtVo
(
AdamMemberOrderExtVo
.
getNew
().
copy
(
adamMemberOrderExt
));
return
detailAdminVo
;
}
@Override
@Transactional
public
boolean
refundProcessing
(
AdamMemberOrderRefundParam
param
,
AdamMemberOrder
memberOrder
)
{
LinkedMultiValueMap
<
String
,
Object
>
linkedMultiValueMap
=
new
LinkedMultiValueMap
<>();
linkedMultiValueMap
.
add
(
"code"
,
memberOrder
.
getPayNo
());
linkedMultiValueMap
.
add
(
"notifyUrl"
,
null
);
linkedMultiValueMap
.
add
(
"orderCode"
,
memberOrder
.
getOrderNo
());
linkedMultiValueMap
.
add
(
"orderRefundCode"
,
IDGenerator
.
nextTimeId2
());
linkedMultiValueMap
.
add
(
"paymentId"
,
null
);
linkedMultiValueMap
.
add
(
"paymentType"
,
(
memberOrder
.
getDeviceFrom
()
+
memberOrder
.
getPayType
()).
toUpperCase
());
linkedMultiValueMap
.
add
(
"price"
,
param
.
getRefundAmt
());
linkedMultiValueMap
.
add
(
"priceTotal"
,
memberOrder
.
getPricePaid
());
linkedMultiValueMap
.
add
(
"reason"
,
param
.
getReason
());
return
true
;
}
}
liquidnet-bus-client/liquidnet-client-admin/liquidnet-client-admin-zhengzai/src/main/java/com/liquidnet/client/admin/zhengzai/adam/service/impl/AdamMemberRightsAdminServiceImpl.java
View file @
09c7da68
...
...
@@ -24,7 +24,7 @@ public class AdamMemberRightsAdminServiceImpl extends ServiceImpl<AdamMemberRigh
boolean
saveOrUpadateRst
;
AdamMemberRights
saveOrUpdateInfo
=
new
AdamMemberRights
();
if
(
StringUtils
.
isEmpty
(
mrightsId
))
{
saveOrUpdateInfo
.
setMrightsId
(
IDGenerator
.
next
BilliId
());
saveOrUpdateInfo
.
setMrightsId
(
IDGenerator
.
next
MilliId2
());
saveOrUpdateInfo
.
setMemberId
(
param
.
getMemberId
());
saveOrUpdateInfo
.
setState
(
1
);
...
...
liquidnet-bus-common/liquidnet-common-base/src/main/java/com/liquidnet/commons/lang/util/IDGenerator.java
View file @
09c7da68
...
...
@@ -9,7 +9,7 @@ public class IDGenerator {
private
static
final
String
CROSS_BAR
=
"-"
;
private
static
final
String
EMPTY_STR
=
""
;
private
static
final
DateTimeFormatter
MILLISECOND
=
DateTimeFormatter
.
ofPattern
(
"yyyyMMddHHmmssSSS"
);
private
static
final
DateTimeFormatter
BILLISECOND
=
DateTimeFormatter
.
ofPattern
(
"yyDN
"
);
private
static
final
DateTimeFormatter
MILLISECOND_2
=
DateTimeFormatter
.
ofPattern
(
"yyDHHmmssSSS
"
);
public
static
String
nextSnowId
()
{
return
GenSnowFlowerUtil
.
next
();
...
...
@@ -19,12 +19,16 @@ public class IDGenerator {
return
nextMilliId
()
+
String
.
valueOf
(
System
.
nanoTime
()).
substring
(
9
);
}
public
static
String
nextTimeId2
()
{
return
nextMilliId2
()
+
String
.
valueOf
(
System
.
nanoTime
()).
substring
(
8
);
}
public
static
String
nextMilliId
()
{
return
LocalDateTime
.
now
().
format
(
MILLISECOND
);
}
public
static
String
next
BilliId
()
{
return
LocalDateTime
.
now
().
format
(
BILLISECOND
);
public
static
String
next
MilliId2
()
{
return
LocalDateTime
.
now
().
format
(
MILLISECOND_2
);
}
public
static
String
get32UUID
()
{
...
...
@@ -74,7 +78,7 @@ public class IDGenerator {
System
.
out
.
println
(
""
+
IDGenerator
.
refundCode
());
System
.
out
.
println
(
"nextTimeId==="
+
IDGenerator
.
nextTimeId
());
System
.
out
.
println
(
"nextMilliId==="
+
IDGenerator
.
nextMilliId
());
System
.
out
.
println
(
"next
BilliId==="
+
IDGenerator
.
nextBilliId
());
System
.
out
.
println
(
"next
MilliId2==="
+
IDGenerator
.
nextMilliId2
());
System
.
out
.
println
(
"nextSnowId==="
+
IDGenerator
.
nextSnowId
());
System
.
out
.
println
(
"get32UUID==="
+
IDGenerator
.
get32UUID
());
}
...
...
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