记得上下班打卡 | 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
a654ca39
Commit
a654ca39
authored
Sep 06, 2021
by
张国柄
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
后台发放券校验调整;
parent
eb8a40f0
Changes
9
Show whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
80 additions
and
43 deletions
+80
-43
member_voucher_refund.sql
docu/member_voucher_refund.sql
+1
-1
AdamMemberRightsCouponVo.java
...quidnet/service/adam/dto/vo/AdamMemberRightsCouponVo.java
+1
-1
CandyMemberCouponBuildParam.java
.../service/candy/dto/admin/CandyMemberCouponBuildParam.java
+1
-1
CandyMgtCouponBuildParam.java
...net/service/candy/dto/admin/CandyMgtCouponBuildParam.java
+5
-2
CandyMgtCouponAdminController.java
...troller/zhengzai/candy/CandyMgtCouponAdminController.java
+68
-34
CandyMgtCouponListParam.java
...dnet/service/candy/dto/admin/CandyMgtCouponListParam.java
+1
-1
CandyCoupon.java
.../java/com/liquidnet/service/candy/entity/CandyCoupon.java
+1
-1
db_ln_candy_initialdata.sql
...idnet-service-candy-impl/docu/db_ln_candy_initialdata.sql
+1
-1
CandyCouponServiceImpl.java
...et/service/candy/service/impl/CandyCouponServiceImpl.java
+1
-1
No files found.
docu/member_voucher_refund.sql
View file @
a654ca39
...
...
@@ -61,7 +61,7 @@ create table candy_coupon
notice
varchar
(
200
)
comment
'注意/须知'
,
exclusive
smallint
comment
'专享标识[0-常规|1-会员礼包]'
,
busi_type
smallint
comment
'业务类别[0-全场|1-演出|2-商品|3-优先购]'
,
cou_type
smallint
comment
'券类型[1-代金券|2-满减券|3-兑换券|4-折扣券]'
,
cou_type
smallint
comment
'券类型[1-代金券|2-满减券|3-兑换券|4-折扣券
|101-优先券
]'
,
bind_type
smallint
comment
'领取方式[0-用户输入兑换|1-发放至用户]'
,
discount
decimal
(
8
,
2
)
comment
'折扣[8折即0.8]'
,
...
...
liquidnet-bus-api/liquidnet-service-adam-api/src/main/java/com/liquidnet/service/adam/dto/vo/AdamMemberRightsCouponVo.java
View file @
a654ca39
...
...
@@ -17,7 +17,7 @@ public class AdamMemberRightsCouponVo implements java.io.Serializable, Cloneable
private
String
couponId
;
@ApiModelProperty
(
position
=
3
,
value
=
"券类别[0-全场|1-演出|2-商品|3-优先购]"
)
private
Integer
busiType
;
@ApiModelProperty
(
position
=
4
,
value
=
"券类型[1-代金券|2-满减券|3-兑换券|4-折扣券]"
)
@ApiModelProperty
(
position
=
4
,
value
=
"券类型[1-代金券|2-满减券|3-兑换券|4-折扣券
|101-优先券
]"
)
private
Integer
couType
;
@ApiModelProperty
(
position
=
5
,
value
=
"券标题"
)
private
String
title
;
...
...
liquidnet-bus-api/liquidnet-service-candy-api/src/main/java/com/liquidnet/service/candy/dto/admin/CandyMemberCouponBuildParam.java
View file @
a654ca39
...
...
@@ -38,7 +38,7 @@ public class CandyMemberCouponBuildParam {
private
Integer
busiType
;
@NotNull
(
message
=
"券类型不能为空"
)
@Pattern
(
regexp
=
"\\b(1|2)\\b"
,
message
=
"券类型无效"
)
// @ApiModelProperty(required = true, value = "券类型[1-代金券|2-满减券|3-兑换券|4-折扣券]", allowableValues = "1,2,3,4")
// @ApiModelProperty(required = true, value = "券类型[1-代金券|2-满减券|3-兑换券|4-折扣券
|101-优先券
]", allowableValues = "1,2,3,4")
@ApiModelProperty
(
required
=
true
,
value
=
"券类型[1-代金券|2-满减券]"
,
allowableValues
=
"1,2"
)
private
Integer
couType
;
// @NotNull(message = "券领取方式不能为空")
...
...
liquidnet-bus-api/liquidnet-service-candy-api/src/main/java/com/liquidnet/service/candy/dto/admin/CandyMgtCouponBuildParam.java
View file @
a654ca39
...
...
@@ -27,7 +27,7 @@ public class CandyMgtCouponBuildParam {
@ApiModelProperty
(
required
=
true
,
value
=
"业务类别[0-全场|1-演出|2-商品|3-优先购]"
,
allowableValues
=
"0,1,2,3,4"
)
private
Integer
busiType
;
@NotNull
(
message
=
"券类型不能为空"
)
@ApiModelProperty
(
required
=
true
,
value
=
"券类型[1-代金券|2-满减券|3-兑换券|4-折扣券]"
,
allowableValues
=
"1,2,3,4"
)
@ApiModelProperty
(
required
=
true
,
value
=
"券类型[1-代金券|2-满减券|3-兑换券|4-折扣券
|101-优先券
]"
,
allowableValues
=
"1,2,3,4"
)
private
Integer
couType
;
@NotNull
(
message
=
"券领取方式不能为空"
)
@ApiModelProperty
(
required
=
true
,
value
=
"领取方式[0-用户输入兑换|1-发放至用户]"
,
allowableValues
=
"0,1"
)
...
...
@@ -41,11 +41,15 @@ public class CandyMgtCouponBuildParam {
@ApiModelProperty
(
required
=
false
,
value
=
"满减~减"
,
example
=
"0.01"
)
private
BigDecimal
valMinus
;
@ApiModelProperty
(
required
=
false
,
value
=
"叠加限制[0-限制|1-叠加]"
,
allowableValues
=
"0,1"
)
@Min
(
value
=
0
,
message
=
"叠加限制配置无效"
)
@Max
(
value
=
1
,
message
=
"叠加限制配置无效"
)
private
Integer
overlay
;
//private Integer overlayLevel;
@NotNull
(
message
=
"券有效期不能为空"
)
@Min
(
value
=
1
,
message
=
"有效期不能小于1"
)
@ApiModelProperty
(
required
=
true
,
value
=
"有效期(单位天)"
,
example
=
"30"
)
private
Integer
validity
;
@Min
(
value
=
1
,
message
=
"兑换有效期不能小于1"
)
@ApiModelProperty
(
required
=
false
,
value
=
"兑换有效期(单位天)"
,
example
=
"30"
)
private
Integer
redeemValidity
;
//private LocalDateTime redeemStart;
...
...
@@ -73,7 +77,6 @@ public class CandyMgtCouponBuildParam {
private
Integer
eventType
;
@ApiModelProperty
(
required
=
false
,
value
=
"`发放类型`为2-手机号时发放手机号以,分隔"
,
example
=
"18510957291,17701223310"
)
private
String
eventLimit
;
@NotNull
(
message
=
"券发放时间不能为空"
)
@Pattern
(
regexp
=
LnsRegex
.
Valid
.
DATETIME_FULL
,
message
=
"发放时间格式有误"
)
@ApiModelProperty
(
required
=
true
,
value
=
"发放时间[yyyy-MM-dd HH:mm:ss](立即-当前时间|预约-点选时间)"
,
example
=
"2021-08-26 00:00:00"
)
private
String
eventAt
;
...
...
liquidnet-bus-client/liquidnet-client-admin/liquidnet-client-admin-web/src/main/java/com/liquidnet/client/admin/web/controller/zhengzai/candy/CandyMgtCouponAdminController.java
View file @
a654ca39
...
...
@@ -73,49 +73,83 @@ public class CandyMgtCouponAdminController extends BaseController {
@PostMapping
(
"add"
)
@ResponseBody
public
AjaxResult
addSave
(
@RequestBody
@Validated
CandyMgtCouponBuildParam
buildParam
)
{
BigDecimal
discount
=
null
,
valFace
=
null
,
valOver
=
null
,
valMinus
=
null
;
Integer
couType
=
buildParam
.
getCouType
(),
validity
=
buildParam
.
getValidity
(),
redeemValidity
=
buildParam
.
getRedeemValidity
();
LocalDateTime
nowTime
=
LocalDateTime
.
now
(),
redeemStart
=
null
,
redeemStop
=
null
,
effectAt
,
expireAt
,
eventAt
=
LocalDateTime
.
parse
(
buildParam
.
getEventAt
(),
DateTimeFormatter
.
ofPattern
(
DateUtils
.
YYYY_MM_DD_HH_MM_SS
));
switch
(
couType
)
{
// TODO: 2021/8/20 校验
LocalDateTime
nowTime
=
LocalDateTime
.
now
(),
redeemStart
=
null
,
redeemStop
=
null
,
effectAt
,
expireAt
;
String
eventAtStr
=
buildParam
.
getEventAt
();
LocalDateTime
eventAt
=
StringUtils
.
isEmpty
(
eventAtStr
.
trim
())
?
nowTime
:
LocalDateTime
.
parse
(
eventAtStr
,
DateTimeFormatter
.
ofPattern
(
DateUtils
.
YYYY_MM_DD_HH_MM_SS
));
switch
(
buildParam
.
getCouType
())
{
// TODO: 2021/8/20 校验
case
1
:
// 代金券
valFace
=
buildParam
.
getValFace
();
BigDecimal
valFace
=
buildParam
.
getValFace
();
if
(
null
==
valFace
||
valFace
.
compareTo
(
BigDecimal
.
ZERO
)
<=
0
)
{
return
AjaxResult
.
warn
(
"代金券金额无效"
);
}
buildParam
.
setDiscount
(
null
);
buildParam
.
setValOver
(
null
);
buildParam
.
setValMinus
(
null
);
buildParam
.
setOverlay
(
0
);
break
;
case
2
:
// 满减券
valOver
=
buildParam
.
getValOver
();
valMinus
=
buildParam
.
getValMinus
();
BigDecimal
valOver
=
buildParam
.
getValOver
();
BigDecimal
valMinus
=
buildParam
.
getValMinus
();
if
(
null
==
valOver
||
valOver
.
compareTo
(
BigDecimal
.
ZERO
)
<=
0
||
null
==
valMinus
||
valMinus
.
compareTo
(
BigDecimal
.
ZERO
)
<=
0
)
{
return
AjaxResult
.
warn
(
"满减金额无效"
);
}
buildParam
.
setDiscount
(
null
);
buildParam
.
setValFace
(
valMinus
);
buildParam
.
setOverlay
(
0
);
break
;
case
3
:
// 兑换券
redeemStart
=
eventAt
.
with
(
LocalTime
.
MIN
);
redeemStop
=
eventAt
.
plusDays
(
redeemValidity
).
withHour
(
23
).
withMinute
(
59
).
withSecond
(
59
);
buildParam
.
setBindType
(
0
);
buildParam
.
setDiscount
(
null
);
buildParam
.
setValFace
(
null
);
buildParam
.
setValOver
(
null
);
buildParam
.
setValMinus
(
null
);
buildParam
.
setOverlay
(
0
);
break
;
case
4
:
// 折扣券
discount
=
buildParam
.
getDiscount
();
BigDecimal
discount
=
buildParam
.
getDiscount
();
if
(
null
==
discount
||
discount
.
compareTo
(
BigDecimal
.
ZERO
)
<=
0
)
{
return
AjaxResult
.
warn
(
"折扣配置无效"
);
}
break
;
case
101
:
buildParam
.
setDiscount
(
null
);
buildParam
.
setValFace
(
null
);
buildParam
.
setValOver
(
null
);
buildParam
.
setValMinus
(
null
);
if
(
null
==
buildParam
.
getOverlay
())
{
return
AjaxResult
.
warn
(
"叠加限制配置无效"
);
}
break
;
default
:
logger
.
warn
(
"Invalid operation[buildParam.couType={}]"
,
couType
);
logger
.
warn
(
"Invalid operation[buildParam.couType={}]"
,
buildParam
.
getCouType
()
);
return
this
.
error
(
AjaxResult
.
Type
.
WARN
,
"券类型无效"
);
}
effectAt
=
eventAt
.
with
(
LocalTime
.
MIN
);
expireAt
=
eventAt
.
plusDays
(
validity
).
withHour
(
23
).
withMinute
(
59
).
withSecond
(
59
);
StringBuilder
eventLimit
=
new
StringBuilder
();
String
operator
=
ShiroUtils
.
getLoginName
();
Integer
validity
=
buildParam
.
getValidity
();
Integer
redeemValidity
=
buildParam
.
getRedeemValidity
();
if
(
0
==
buildParam
.
getBindType
())
{
buildParam
.
setEventType
(
null
);
buildParam
.
setEventLimit
(
null
);
if
(
null
==
redeemValidity
)
{
return
AjaxResult
.
warn
(
"兑换有效期无效"
);
}
redeemStart
=
eventAt
.
with
(
LocalTime
.
MIN
);
redeemStop
=
eventAt
.
plusDays
(
redeemValidity
).
withHour
(
23
).
withMinute
(
59
).
withSecond
(
59
);
}
else
{
if
(
buildParam
.
getEventType
()
==
2
)
{
// 指定用户手机号
String
eventLimitStr
=
buildParam
.
getEventLimit
().
trim
();
// TODO: 2021/8/20 正则校验手机号字符串
if
(
StringUtils
.
isEmpty
(
eventLimitStr
))
{
if
(
StringUtils
.
isEmpty
(
buildParam
.
getEventLimit
().
trim
()))
{
return
this
.
error
(
AjaxResult
.
Type
.
WARN
,
"请指定手机号"
);
}
Set
<
String
>
eventLimitSet
=
Stream
.
of
(
eventLimitStr
.
split
(
","
)).
collect
(
Collectors
.
toSet
());
for
(
String
l
:
eventLimitSet
)
{
eventLimit
.
append
(
l
).
append
(
","
);
}
}
effectAt
=
eventAt
.
with
(
LocalTime
.
MIN
);
expireAt
=
eventAt
.
plusDays
(
validity
).
withHour
(
23
).
withMinute
(
59
).
withSecond
(
59
);
String
operator
=
ShiroUtils
.
getLoginName
();
CandyCoupon
initCoupon
=
new
CandyCoupon
();
initCoupon
.
setCouponId
(
IDGenerator
.
nextMilliId
());
...
...
@@ -125,12 +159,12 @@ public class CandyMgtCouponAdminController extends BaseController {
initCoupon
.
setNotice
(
buildParam
.
getNotice
());
initCoupon
.
setExclusive
(
0
);
initCoupon
.
setBusiType
(
buildParam
.
getBusiType
());
initCoupon
.
setCouType
(
couType
);
initCoupon
.
setCouType
(
buildParam
.
getCouType
()
);
initCoupon
.
setBindType
(
buildParam
.
getBindType
());
initCoupon
.
setDiscount
(
discount
);
initCoupon
.
setValFace
(
valFace
);
initCoupon
.
setValOver
(
valOver
);
initCoupon
.
setValMinus
(
valMinus
);
initCoupon
.
setDiscount
(
buildParam
.
getDiscount
()
);
initCoupon
.
setValFace
(
buildParam
.
getValFace
()
);
initCoupon
.
setValOver
(
buildParam
.
getValOver
()
);
initCoupon
.
setValMinus
(
buildParam
.
getValMinus
()
);
initCoupon
.
setOverlay
(
buildParam
.
getOverlay
());
initCoupon
.
setValidity
(
validity
);
initCoupon
.
setRedeemValidity
(
redeemValidity
);
...
...
@@ -163,7 +197,7 @@ public class CandyMgtCouponAdminController extends BaseController {
initMgtCoupon
.
setState
(
0
);
initMgtCoupon
.
setEventAmt
(
buildParam
.
getEventAmt
());
initMgtCoupon
.
setEventType
(
buildParam
.
getEventType
());
initMgtCoupon
.
setEventLimit
(
eventLimit
.
toString
());
initMgtCoupon
.
setEventLimit
(
buildParam
.
getEventLimit
());
initMgtCoupon
.
setEventAt
(
eventAt
);
initMgtCoupon
.
setOperator
(
operator
);
initMgtCoupon
.
setCreatedAt
(
nowTime
);
...
...
liquidnet-bus-do/liquidnet-service-candy-do/src/main/java/com/liquidnet/service/candy/dto/admin/CandyMgtCouponListParam.java
View file @
a654ca39
...
...
@@ -5,7 +5,7 @@ import lombok.Data;
@Data
public
class
CandyMgtCouponListParam
{
/**
* 券类型[1-代金券|2-满减券|3-兑换券|4-折扣券]
* 券类型[1-代金券|2-满减券|3-兑换券|4-折扣券
|101-优先券
]
*/
private
Integer
couType
;
/**
...
...
liquidnet-bus-do/liquidnet-service-candy-do/src/main/java/com/liquidnet/service/candy/entity/CandyCoupon.java
View file @
a654ca39
...
...
@@ -60,7 +60,7 @@ public class CandyCoupon implements Serializable {
private
Integer
busiType
;
/**
* 券类型[1-代金券|2-满减券|3-兑换券|4-折扣券]
* 券类型[1-代金券|2-满减券|3-兑换券|4-折扣券
|101-优先券
]
*/
private
Integer
couType
;
...
...
liquidnet-bus-service/liquidnet-service-candy/liquidnet-service-candy-impl/docu/db_ln_candy_initialdata.sql
View file @
a654ca39
...
...
@@ -38,7 +38,7 @@ create table candy_coupon
notice
varchar
(
200
)
comment
'注意/须知'
,
exclusive
smallint
comment
'专享标识[0-常规|1-会员礼包]'
,
busi_type
smallint
comment
'业务类别[0-全场|1-演出|2-商品|3-优先购]'
,
cou_type
smallint
comment
'券类型[1-代金券|2-满减券|3-兑换券|4-折扣券]'
,
cou_type
smallint
comment
'券类型[1-代金券|2-满减券|3-兑换券|4-折扣券
|101-优先券
]'
,
bind_type
smallint
comment
'领取方式[0-用户输入兑换|1-发放至用户]'
,
discount
decimal
(
8
,
2
)
comment
'折扣[8折即0.8]'
,
...
...
liquidnet-bus-service/liquidnet-service-candy/liquidnet-service-candy-impl/src/main/java/com/liquidnet/service/candy/service/impl/CandyCouponServiceImpl.java
View file @
a654ca39
...
...
@@ -260,7 +260,7 @@ public class CandyCouponServiceImpl implements ICandyCouponService {
dto
.
setCouType
(
dto
.
getCouType
());
}
vo
.
setCouType
(
dto
.
getCouType
());
switch
(
dto
.
getCouType
())
{
//券类型[1-代金券|2-满减券|3-兑换券|4-折扣券]
switch
(
dto
.
getCouType
())
{
//券类型[1-代金券|2-满减券|3-兑换券|4-折扣券
|101-优先券
]
case
1
:
vo
.
setValue
(
dto
.
getValFace
());
break
;
...
...
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