记得上下班打卡 | 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
8416da87
Commit
8416da87
authored
Sep 03, 2021
by
张国柄
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
opt|会员券编辑+校验;
parent
1b4c6f18
Changes
6
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
197 additions
and
139 deletions
+197
-139
CandyCouponRuleBuildParam.java
...et/service/candy/dto/admin/CandyCouponRuleBuildParam.java
+3
-0
CandyMemberCouponBuildParam.java
.../service/candy/dto/admin/CandyMemberCouponBuildParam.java
+9
-5
CandyMgtCouponBuildParam.java
...net/service/candy/dto/admin/CandyMgtCouponBuildParam.java
+11
-4
AdamMemberAdminController.java
...b/controller/zhengzai/adam/AdamMemberAdminController.java
+32
-125
ICandyMgtCouponAdminService.java
...n/zhengzai/candy/service/ICandyMgtCouponAdminService.java
+5
-0
CandyMgtCouponAdminServiceImpl.java
...ai/candy/service/impl/CandyMgtCouponAdminServiceImpl.java
+137
-5
No files found.
liquidnet-bus-api/liquidnet-service-candy-api/src/main/java/com/liquidnet/service/candy/dto/admin/CandyCouponRuleBuildParam.java
View file @
8416da87
...
@@ -4,9 +4,12 @@ import io.swagger.annotations.ApiModel;
...
@@ -4,9 +4,12 @@ import io.swagger.annotations.ApiModel;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.Data
;
import
javax.validation.constraints.Pattern
;
@ApiModel
(
value
=
"CandyCouponRuleBuildParam"
,
description
=
"添加券规则入参"
)
@ApiModel
(
value
=
"CandyCouponRuleBuildParam"
,
description
=
"添加券规则入参"
)
@Data
@Data
public
class
CandyCouponRuleBuildParam
{
public
class
CandyCouponRuleBuildParam
{
@Pattern
(
regexp
=
"\\b(100|90|91|92|80|81)\\b"
,
message
=
"适用范围无效"
)
@ApiModelProperty
(
required
=
true
,
value
=
"适用范围[100-全场|90-演出|91-场次|92-票|80-商品|81-款式]"
,
allowableValues
=
"100,90,91,92,80,81"
)
@ApiModelProperty
(
required
=
true
,
value
=
"适用范围[100-全场|90-演出|91-场次|92-票|80-商品|81-款式]"
,
allowableValues
=
"100,90,91,92,80,81"
)
private
Integer
useScope
;
private
Integer
useScope
;
@ApiModelProperty
(
required
=
true
,
value
=
"适用名称"
,
allowableValues
=
"适用名称"
)
@ApiModelProperty
(
required
=
true
,
value
=
"适用名称"
,
allowableValues
=
"适用名称"
)
...
...
liquidnet-bus-api/liquidnet-service-candy-api/src/main/java/com/liquidnet/service/candy/dto/admin/CandyMemberCouponBuildParam.java
View file @
8416da87
...
@@ -4,15 +4,14 @@ import io.swagger.annotations.ApiModel;
...
@@ -4,15 +4,14 @@ import io.swagger.annotations.ApiModel;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.Data
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.*
;
import
javax.validation.constraints.NotNull
;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
import
java.util.List
;
import
java.util.List
;
@ApiModel
(
value
=
"CandyMemberCouponBuildParam"
,
description
=
"新建券入参"
)
@ApiModel
(
value
=
"CandyMemberCouponBuildParam"
,
description
=
"新建券入参"
)
@Data
@Data
public
class
CandyMemberCouponBuildParam
{
public
class
CandyMemberCouponBuildParam
{
@ApiModelProperty
(
required
=
true
,
value
=
"会员类型ID[64]"
)
@ApiModelProperty
(
required
=
true
,
value
=
"会员类型ID[64]"
,
example
=
"1"
)
private
String
memberId
;
private
String
memberId
;
@ApiModelProperty
(
required
=
true
,
value
=
"权益ID[64]"
)
@ApiModelProperty
(
required
=
true
,
value
=
"权益ID[64]"
)
private
String
mrightsId
;
private
String
mrightsId
;
...
@@ -32,9 +31,11 @@ public class CandyMemberCouponBuildParam {
...
@@ -32,9 +31,11 @@ public class CandyMemberCouponBuildParam {
// private String notice;
// private String notice;
//private Integer exclusive;
//private Integer exclusive;
@NotNull
(
message
=
"券类别不能为空"
)
@NotNull
(
message
=
"券类别不能为空"
)
@ApiModelProperty
(
required
=
true
,
value
=
"业务类别[0-全场|1-演出|2-商品|3-优先购]"
,
allowableValues
=
"0,1,2,3,4"
)
@Pattern
(
regexp
=
"\\b(0|1|2|3)\\b"
,
message
=
"业务类别无效"
)
@ApiModelProperty
(
required
=
true
,
value
=
"业务类别[0-全场|1-演出|2-商品|3-优先购]"
,
allowableValues
=
"0,1,2,3"
)
private
Integer
busiType
;
private
Integer
busiType
;
@NotNull
(
message
=
"券类型不能为空"
)
@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-折扣券]", allowableValues = "1,2,3,4")
@ApiModelProperty
(
required
=
true
,
value
=
"券类型[1-代金券|2-满减券]"
,
allowableValues
=
"1,2"
)
@ApiModelProperty
(
required
=
true
,
value
=
"券类型[1-代金券|2-满减券]"
,
allowableValues
=
"1,2"
)
private
Integer
couType
;
private
Integer
couType
;
...
@@ -50,6 +51,7 @@ public class CandyMemberCouponBuildParam {
...
@@ -50,6 +51,7 @@ public class CandyMemberCouponBuildParam {
@ApiModelProperty
(
required
=
false
,
value
=
"满减~减"
,
example
=
"0.01"
)
@ApiModelProperty
(
required
=
false
,
value
=
"满减~减"
,
example
=
"0.01"
)
private
BigDecimal
valMinus
;
private
BigDecimal
valMinus
;
@NotNull
(
message
=
"券叠加限制不能为空"
)
@NotNull
(
message
=
"券叠加限制不能为空"
)
@Pattern
(
regexp
=
"\\b(0|1)\\b"
,
message
=
"叠加限制无效"
)
@ApiModelProperty
(
required
=
false
,
value
=
"叠加限制[0-限制|1-叠加]"
,
allowableValues
=
"0,1"
)
@ApiModelProperty
(
required
=
false
,
value
=
"叠加限制[0-限制|1-叠加]"
,
allowableValues
=
"0,1"
)
private
Integer
overlay
;
private
Integer
overlay
;
//private Integer overlayLevel;
//private Integer overlayLevel;
...
@@ -68,7 +70,7 @@ public class CandyMemberCouponBuildParam {
...
@@ -68,7 +70,7 @@ public class CandyMemberCouponBuildParam {
//private String comment;
//private String comment;
@ApiModelProperty
(
required
=
true
,
value
=
"适用
规则
列表"
,
dataType
=
"List"
,
example
=
"[{\"useScope\": 100,\"busiName\": \"适用名称1\",\"busiId\": \"IDIDIDIDIDIDID1\"},{\"useScope\": 100,\"busiName\": \"适用名称2\",\"busiId\": \"IDIDIDIDIDIDID2\"}]"
)
@ApiModelProperty
(
required
=
true
,
value
=
"适用
范围
列表"
,
dataType
=
"List"
,
example
=
"[{\"useScope\": 100,\"busiName\": \"适用名称1\",\"busiId\": \"IDIDIDIDIDIDID1\"},{\"useScope\": 100,\"busiName\": \"适用名称2\",\"busiId\": \"IDIDIDIDIDIDID2\"}]"
)
private
List
<
CandyCouponRuleBuildParam
>
couponRuleList
;
private
List
<
CandyCouponRuleBuildParam
>
couponRuleList
;
...
@@ -76,6 +78,8 @@ public class CandyMemberCouponBuildParam {
...
@@ -76,6 +78,8 @@ public class CandyMemberCouponBuildParam {
//private String couponId;
//private String couponId;
//private Integer state;
//private Integer state;
@NotNull
(
message
=
"券发放量不能为空"
)
@NotNull
(
message
=
"券发放量不能为空"
)
@Max
(
value
=
10
,
message
=
"发放量不满足1~10范围"
)
@Min
(
value
=
1
,
message
=
"发放量不满足1~10范围"
)
@ApiModelProperty
(
required
=
true
,
value
=
"发放量"
,
example
=
"1"
)
@ApiModelProperty
(
required
=
true
,
value
=
"发放量"
,
example
=
"1"
)
private
Integer
eventAmt
;
private
Integer
eventAmt
;
// @NotNull(message = "券发放类型不能为空")
// @NotNull(message = "券发放类型不能为空")
...
...
liquidnet-bus-api/liquidnet-service-candy-api/src/main/java/com/liquidnet/service/candy/dto/admin/CandyMgtCouponBuildParam.java
View file @
8416da87
package
com
.
liquidnet
.
service
.
candy
.
dto
.
admin
;
package
com
.
liquidnet
.
service
.
candy
.
dto
.
admin
;
import
com.liquidnet.commons.lang.constant.LnsRegex
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.Data
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.*
;
import
javax.validation.constraints.NotNull
;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
import
java.util.List
;
import
java.util.List
;
...
@@ -25,12 +25,15 @@ public class CandyMgtCouponBuildParam {
...
@@ -25,12 +25,15 @@ public class CandyMgtCouponBuildParam {
private
String
notice
;
private
String
notice
;
//private Integer exclusive;
//private Integer exclusive;
@NotNull
(
message
=
"券类别不能为空"
)
@NotNull
(
message
=
"券类别不能为空"
)
@Pattern
(
regexp
=
"\\b(0|1|2|3)\\b"
,
message
=
"业务类别无效"
)
@ApiModelProperty
(
required
=
true
,
value
=
"业务类别[0-全场|1-演出|2-商品|3-优先购]"
,
allowableValues
=
"0,1,2,3,4"
)
@ApiModelProperty
(
required
=
true
,
value
=
"业务类别[0-全场|1-演出|2-商品|3-优先购]"
,
allowableValues
=
"0,1,2,3,4"
)
private
Integer
busiType
;
private
Integer
busiType
;
@NotNull
(
message
=
"券类型不能为空"
)
@NotNull
(
message
=
"券类型不能为空"
)
@Pattern
(
regexp
=
"\\b(1|2|3|4)\\b"
,
message
=
"券类型无效"
)
@ApiModelProperty
(
required
=
true
,
value
=
"券类型[1-代金券|2-满减券|3-兑换券|4-折扣券]"
,
allowableValues
=
"1,2,3,4"
)
@ApiModelProperty
(
required
=
true
,
value
=
"券类型[1-代金券|2-满减券|3-兑换券|4-折扣券]"
,
allowableValues
=
"1,2,3,4"
)
private
Integer
couType
;
private
Integer
couType
;
@NotNull
(
message
=
"券领取方式不能为空"
)
@NotNull
(
message
=
"券领取方式不能为空"
)
@Pattern
(
regexp
=
"\\b(0|1)\\b"
,
message
=
"券类型无效"
)
@ApiModelProperty
(
required
=
true
,
value
=
"领取方式[0-用户输入兑换|1-发放至用户]"
,
allowableValues
=
"0,1"
)
@ApiModelProperty
(
required
=
true
,
value
=
"领取方式[0-用户输入兑换|1-发放至用户]"
,
allowableValues
=
"0,1"
)
private
Integer
bindType
;
private
Integer
bindType
;
@ApiModelProperty
(
required
=
false
,
value
=
"折扣[8折即0.8]"
,
example
=
"0.8"
)
@ApiModelProperty
(
required
=
false
,
value
=
"折扣[8折即0.8]"
,
example
=
"0.8"
)
...
@@ -42,6 +45,7 @@ public class CandyMgtCouponBuildParam {
...
@@ -42,6 +45,7 @@ public class CandyMgtCouponBuildParam {
@ApiModelProperty
(
required
=
false
,
value
=
"满减~减"
,
example
=
"0.01"
)
@ApiModelProperty
(
required
=
false
,
value
=
"满减~减"
,
example
=
"0.01"
)
private
BigDecimal
valMinus
;
private
BigDecimal
valMinus
;
@NotNull
(
message
=
"券叠加限制不能为空"
)
@NotNull
(
message
=
"券叠加限制不能为空"
)
@Pattern
(
regexp
=
"\\b(0|1)\\b"
,
message
=
"叠加限制无效"
)
@ApiModelProperty
(
required
=
true
,
value
=
"叠加限制[0-限制|1-叠加]"
,
allowableValues
=
"0,1"
)
@ApiModelProperty
(
required
=
true
,
value
=
"叠加限制[0-限制|1-叠加]"
,
allowableValues
=
"0,1"
)
private
Integer
overlay
;
private
Integer
overlay
;
//private Integer overlayLevel;
//private Integer overlayLevel;
...
@@ -60,7 +64,7 @@ public class CandyMgtCouponBuildParam {
...
@@ -60,7 +64,7 @@ public class CandyMgtCouponBuildParam {
//private String comment;
//private String comment;
@ApiModelProperty
(
required
=
true
,
value
=
"适用
规则
列表"
,
dataType
=
"List"
,
example
=
"[{\"useScope\": 100,\"busiName\": \"适用名称1\",\"busiId\": \"IDIDIDIDIDIDID1\"},{\"useScope\": 100,\"busiName\": \"适用名称2\",\"busiId\": \"IDIDIDIDIDIDID2\"}]"
)
@ApiModelProperty
(
required
=
true
,
value
=
"适用
范围
列表"
,
dataType
=
"List"
,
example
=
"[{\"useScope\": 100,\"busiName\": \"适用名称1\",\"busiId\": \"IDIDIDIDIDIDID1\"},{\"useScope\": 100,\"busiName\": \"适用名称2\",\"busiId\": \"IDIDIDIDIDIDID2\"}]"
)
private
List
<
CandyCouponRuleBuildParam
>
couponRuleList
;
private
List
<
CandyCouponRuleBuildParam
>
couponRuleList
;
...
@@ -68,14 +72,17 @@ public class CandyMgtCouponBuildParam {
...
@@ -68,14 +72,17 @@ public class CandyMgtCouponBuildParam {
//private String couponId;
//private String couponId;
//private Integer state;
//private Integer state;
@NotNull
(
message
=
"券发放量不能为空"
)
@NotNull
(
message
=
"券发放量不能为空"
)
@Min
(
value
=
1
,
message
=
"发放量不能小于1"
)
@ApiModelProperty
(
required
=
true
,
value
=
"发放量"
,
example
=
"1"
)
@ApiModelProperty
(
required
=
true
,
value
=
"发放量"
,
example
=
"1"
)
private
Integer
eventAmt
;
private
Integer
eventAmt
;
@NotNull
(
message
=
"券发放类型不能为空"
)
@NotNull
(
message
=
"券发放类型不能为空"
)
@Pattern
(
regexp
=
"\\b(1|2|10)\\b"
,
message
=
"叠加限制无效"
)
@ApiModelProperty
(
required
=
true
,
value
=
"发放类型[1-会员|2-手机号|10-全体用户]"
,
allowableValues
=
"1,2,10"
)
@ApiModelProperty
(
required
=
true
,
value
=
"发放类型[1-会员|2-手机号|10-全体用户]"
,
allowableValues
=
"1,2,10"
)
private
Integer
eventType
;
private
Integer
eventType
;
@ApiModelProperty
(
required
=
false
,
value
=
"`发放类型`为2-手机号时发放手机号以,分隔"
,
example
=
"1
7701223310
,17701223310"
)
@ApiModelProperty
(
required
=
false
,
value
=
"`发放类型`为2-手机号时发放手机号以,分隔"
,
example
=
"1
8510957291
,17701223310"
)
private
String
eventLimit
;
private
String
eventLimit
;
@NotNull
(
message
=
"券发放时间不能为空"
)
@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"
)
@ApiModelProperty
(
required
=
true
,
value
=
"发放时间[yyyy-MM-dd HH:mm:ss](立即-当前时间|预约-点选时间)"
,
example
=
"2021-08-26 00:00:00"
)
private
String
eventAt
;
private
String
eventAt
;
//private String operator;
//private String operator;
...
...
liquidnet-bus-client/liquidnet-client-admin/liquidnet-client-admin-web/src/main/java/com/liquidnet/client/admin/web/controller/zhengzai/adam/AdamMemberAdminController.java
View file @
8416da87
This diff is collapsed.
Click to expand it.
liquidnet-bus-client/liquidnet-client-admin/liquidnet-client-admin-zhengzai/src/main/java/com/liquidnet/client/admin/zhengzai/candy/service/ICandyMgtCouponAdminService.java
View file @
8416da87
package
com
.
liquidnet
.
client
.
admin
.
zhengzai
.
candy
.
service
;
package
com
.
liquidnet
.
client
.
admin
.
zhengzai
.
candy
.
service
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.liquidnet.service.candy.dto.admin.CandyMemberCouponBuildParam
;
import
com.liquidnet.service.candy.dto.admin.CandyMgtCouponInfoDto
;
import
com.liquidnet.service.candy.dto.admin.CandyMgtCouponInfoDto
;
import
com.liquidnet.service.candy.dto.admin.CandyMgtCouponListParam
;
import
com.liquidnet.service.candy.dto.admin.CandyMgtCouponListParam
;
import
com.liquidnet.service.candy.dto.admin.CandyMgtCouponMemberDto
;
import
com.liquidnet.service.candy.dto.admin.CandyMgtCouponMemberDto
;
...
@@ -12,6 +13,10 @@ import java.util.List;
...
@@ -12,6 +13,10 @@ import java.util.List;
public
interface
ICandyMgtCouponAdminService
extends
IService
<
CandyMgtCoupon
>
{
public
interface
ICandyMgtCouponAdminService
extends
IService
<
CandyMgtCoupon
>
{
boolean
saveMgtCouponForMemberRights
(
CandyMemberCouponBuildParam
parameter
);
boolean
editMgtCouponForMemberRights
(
CandyMemberCouponBuildParam
parameter
);
boolean
saveMgtCouponInfo
(
CandyCoupon
initCoupon
,
CandyMgtCoupon
initMgtCoupon
,
List
<
CandyCouponRule
>
initCouponRuleList
);
boolean
saveMgtCouponInfo
(
CandyCoupon
initCoupon
,
CandyMgtCoupon
initMgtCoupon
,
List
<
CandyCouponRule
>
initCouponRuleList
);
boolean
updateMgtCouponInfo
(
CandyCoupon
updateCoupon
,
CandyMgtCoupon
updateMgtCoupon
,
List
<
CandyCouponRule
>
initCouponRuleList
);
boolean
updateMgtCouponInfo
(
CandyCoupon
updateCoupon
,
CandyMgtCoupon
updateMgtCoupon
,
List
<
CandyCouponRule
>
initCouponRuleList
);
...
...
liquidnet-bus-client/liquidnet-client-admin/liquidnet-client-admin-zhengzai/src/main/java/com/liquidnet/client/admin/zhengzai/candy/service/impl/CandyMgtCouponAdminServiceImpl.java
View file @
8416da87
package
com
.
liquidnet
.
client
.
admin
.
zhengzai
.
candy
.
service
.
impl
;
package
com
.
liquidnet
.
client
.
admin
.
zhengzai
.
candy
.
service
.
impl
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper
;
import
com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.liquidnet.client.admin.common.utils.ShiroUtils
;
import
com.liquidnet.client.admin.zhengzai.adam.service.IAdamMemberPriceAdminService
;
import
com.liquidnet.client.admin.zhengzai.candy.service.ICandyCouponAdminService
;
import
com.liquidnet.client.admin.zhengzai.candy.service.ICandyCouponRuleAdminService
;
import
com.liquidnet.client.admin.zhengzai.candy.service.ICandyCouponRuleAdminService
;
import
com.liquidnet.client.admin.zhengzai.candy.service.ICandyMgtCouponAdminService
;
import
com.liquidnet.client.admin.zhengzai.candy.service.ICandyMgtCouponAdminService
;
import
com.liquidnet.common.cache.redis.util.RedisUtil
;
import
com.liquidnet.common.cache.redis.util.RedisUtil
;
import
com.liquidnet.common.exception.LiquidnetServiceException
;
import
com.liquidnet.common.exception.LiquidnetServiceException
;
import
com.liquidnet.commons.lang.util.IDGenerator
;
import
com.liquidnet.service.adam.constant.AdamRedisConst
;
import
com.liquidnet.service.adam.constant.AdamRedisConst
;
import
com.liquidnet.service.adam.dto.vo.AdamMemberRightsCouponRuleVo
;
import
com.liquidnet.service.adam.dto.vo.AdamMemberRightsCouponRuleVo
;
import
com.liquidnet.service.adam.dto.vo.AdamMemberRightsCouponVo
;
import
com.liquidnet.service.adam.dto.vo.AdamMemberRightsCouponVo
;
import
com.liquidnet.service.candy.dto.admin.CandyMgtCouponInfoDto
;
import
com.liquidnet.service.adam.entity.AdamMemberPrice
;
import
com.liquidnet.service.candy.dto.admin.CandyMgtCouponListParam
;
import
com.liquidnet.service.candy.dto.admin.*
;
import
com.liquidnet.service.candy.dto.admin.CandyMgtCouponMemberDto
;
import
com.liquidnet.service.candy.entity.CandyCoupon
;
import
com.liquidnet.service.candy.entity.CandyCoupon
;
import
com.liquidnet.service.candy.entity.CandyCouponRule
;
import
com.liquidnet.service.candy.entity.CandyCouponRule
;
import
com.liquidnet.service.candy.entity.CandyMgtCoupon
;
import
com.liquidnet.service.candy.entity.CandyMgtCoupon
;
...
@@ -24,6 +28,7 @@ import org.springframework.stereotype.Service;
...
@@ -24,6 +28,7 @@ import org.springframework.stereotype.Service;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.util.CollectionUtils
;
import
org.springframework.util.CollectionUtils
;
import
java.time.LocalDateTime
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.List
;
...
@@ -34,12 +39,139 @@ public class CandyMgtCouponAdminServiceImpl extends ServiceImpl<CandyMgtCouponMa
...
@@ -34,12 +39,139 @@ public class CandyMgtCouponAdminServiceImpl extends ServiceImpl<CandyMgtCouponMa
private
CandyMgtCouponMapper
candyMgtCouponMapper
;
private
CandyMgtCouponMapper
candyMgtCouponMapper
;
@Autowired
@Autowired
private
CandyCouponMapper
candyCouponMapper
;
private
CandyCouponMapper
candyCouponMapper
;
@Autowired
private
ICandyCouponRuleAdminService
candyCouponRuleAdminService
;
@Autowired
@Autowired
private
RedisUtil
redisUtil
;
private
RedisUtil
redisUtil
;
@Autowired
private
ICandyCouponAdminService
candyCouponAdminService
;
@Autowired
private
ICandyCouponRuleAdminService
candyCouponRuleAdminService
;
@Autowired
private
ICandyMgtCouponAdminService
candyMgtCouponAdminService
;
@Autowired
private
IAdamMemberPriceAdminService
adamMemberPriceAdminService
;
@Override
public
boolean
saveMgtCouponForMemberRights
(
CandyMemberCouponBuildParam
parameter
)
{
String
memberId
=
parameter
.
getMemberId
(),
operator
=
ShiroUtils
.
getLoginName
();
LocalDateTime
nowTime
=
LocalDateTime
.
now
();
LambdaQueryWrapper
<
AdamMemberPrice
>
memberPriceLambdaQueryWrapper
=
Wrappers
.
lambdaQuery
(
AdamMemberPrice
.
class
)
.
eq
(
AdamMemberPrice:
:
getMemberId
,
memberId
).
eq
(
AdamMemberPrice:
:
getState
,
1
);
AdamMemberPrice
memberPrice
=
adamMemberPriceAdminService
.
getOne
(
memberPriceLambdaQueryWrapper
);
CandyCoupon
initCoupon
=
new
CandyCoupon
();
initCoupon
.
setCouponId
(
IDGenerator
.
nextMilliId
());
initCoupon
.
setState
(
1
);
initCoupon
.
setTitle
(
parameter
.
getTitle
());
initCoupon
.
setLabel
(
parameter
.
getLabel
());
initCoupon
.
setNotice
(
"会员权益"
);
initCoupon
.
setExclusive
(
1
);
initCoupon
.
setBusiType
(
parameter
.
getBusiType
());
initCoupon
.
setCouType
(
parameter
.
getCouType
());
initCoupon
.
setBindType
(
1
);
// 领取方式[0-用户输入兑换|1-发放至用户]
//initCoupon.setDiscount();
initCoupon
.
setValFace
(
parameter
.
getValFace
());
initCoupon
.
setValOver
(
parameter
.
getValOver
());
initCoupon
.
setValMinus
(
parameter
.
getValMinus
());
initCoupon
.
setOverlay
(
parameter
.
getOverlay
());
initCoupon
.
setValidity
(
memberPrice
.
getDays
());
//initCoupon.setRedeemValidity();
//initCoupon.setRedeemStart();
//initCoupon.setRedeemStop();
//initCoupon.setEffectAt();
//initCoupon.setExpireAt();
initCoupon
.
setOperator
(
operator
);
initCoupon
.
setCreatedAt
(
nowTime
);
List
<
CandyCouponRuleBuildParam
>
couponRuleList
=
parameter
.
getCouponRuleList
();
List
<
CandyCouponRule
>
initCouponRuleList
=
new
ArrayList
<>();
if
(!
CollectionUtils
.
isEmpty
(
couponRuleList
))
{
couponRuleList
.
forEach
(
r
->
{
CandyCouponRule
initCouponRule
=
new
CandyCouponRule
();
initCouponRule
.
setCruleId
(
IDGenerator
.
nextTimeId2
());
initCouponRule
.
setCouponId
(
initCoupon
.
getCouponId
());
initCouponRule
.
setUseScope
(
r
.
getUseScope
());
initCouponRule
.
setBusiName
(
r
.
getBusiName
());
initCouponRule
.
setBusiId
(
r
.
getBusiId
());
initCouponRule
.
setState
(
1
);
initCouponRuleList
.
add
(
initCouponRule
);
});
}
CandyMgtCoupon
initMgtCoupon
=
new
CandyMgtCoupon
();
initMgtCoupon
.
setMcouponId
(
parameter
.
getMrightsId
());
initMgtCoupon
.
setCouponId
(
initCoupon
.
getCouponId
());
initMgtCoupon
.
setState
(
10
);
// 发放状态[0-未发放|1-已发放|2-无效|9-发放中|10-会员礼包初始模版]
initMgtCoupon
.
setEventAmt
(
parameter
.
getEventAmt
());
initMgtCoupon
.
setEventType
(
2
);
//initMgtCoupon.setEventLimit();
//initMgtCoupon.setEventAt();
initMgtCoupon
.
setOperator
(
operator
);
initMgtCoupon
.
setCreatedAt
(
nowTime
);
return
candyMgtCouponAdminService
.
saveMgtCouponInfo
(
initCoupon
,
initMgtCoupon
,
initCouponRuleList
);
}
@Override
public
boolean
editMgtCouponForMemberRights
(
CandyMemberCouponBuildParam
parameter
)
{
String
couponId
=
parameter
.
getCouponId
(),
operator
=
ShiroUtils
.
getLoginName
();
LocalDateTime
nowTime
=
LocalDateTime
.
now
();
LambdaQueryWrapper
<
CandyCoupon
>
candyCouponLambdaQueryWrapper
=
Wrappers
.
lambdaQuery
(
CandyCoupon
.
class
)
.
eq
(
CandyCoupon:
:
getCouponId
,
couponId
)
.
eq
(
CandyCoupon:
:
getState
,
1
)
.
eq
(
CandyCoupon:
:
getExclusive
,
1
);
if
(
candyCouponAdminService
.
count
(
candyCouponLambdaQueryWrapper
)
>
0
)
{
CandyCoupon
updateCoupon
=
new
CandyCoupon
();
updateCoupon
.
setCouponId
(
couponId
);
updateCoupon
.
setTitle
(
parameter
.
getTitle
());
updateCoupon
.
setExclusive
(
1
);
updateCoupon
.
setBusiType
(
parameter
.
getBusiType
());
updateCoupon
.
setCouType
(
parameter
.
getCouType
());
updateCoupon
.
setValFace
(
parameter
.
getValFace
());
updateCoupon
.
setValOver
(
parameter
.
getValOver
());
updateCoupon
.
setValMinus
(
parameter
.
getValMinus
());
updateCoupon
.
setOverlay
(
parameter
.
getOverlay
());
updateCoupon
.
setOperator
(
operator
);
updateCoupon
.
setUpdatedAt
(
nowTime
);
List
<
CandyCouponRuleBuildParam
>
couponRuleList
=
parameter
.
getCouponRuleList
();
List
<
CandyCouponRule
>
initCouponRuleList
=
new
ArrayList
<>();
if
(!
CollectionUtils
.
isEmpty
(
couponRuleList
))
{
couponRuleList
.
forEach
(
r
->
{
CandyCouponRule
initCouponRule
=
new
CandyCouponRule
();
initCouponRule
.
setCruleId
(
IDGenerator
.
nextTimeId2
());
initCouponRule
.
setCouponId
(
couponId
);
initCouponRule
.
setUseScope
(
r
.
getUseScope
());
initCouponRule
.
setBusiName
(
r
.
getBusiName
());
initCouponRule
.
setBusiId
(
r
.
getBusiId
());
initCouponRule
.
setState
(
1
);
initCouponRuleList
.
add
(
initCouponRule
);
});
}
CandyMgtCoupon
updateMgtCoupon
=
new
CandyMgtCoupon
();
updateMgtCoupon
.
setMcouponId
(
parameter
.
getMrightsId
());
updateMgtCoupon
.
setEventAmt
(
parameter
.
getEventAmt
());
updateMgtCoupon
.
setOperator
(
operator
);
updateMgtCoupon
.
setUpdatedAt
(
nowTime
);
return
candyMgtCouponAdminService
.
updateMgtCouponInfo
(
updateCoupon
,
updateMgtCoupon
,
initCouponRuleList
);
}
return
false
;
}
@Override
@Override
@Transactional
@Transactional
public
boolean
saveMgtCouponInfo
(
CandyCoupon
initCoupon
,
CandyMgtCoupon
initMgtCoupon
,
List
<
CandyCouponRule
>
initCouponRuleList
)
{
public
boolean
saveMgtCouponInfo
(
CandyCoupon
initCoupon
,
CandyMgtCoupon
initMgtCoupon
,
List
<
CandyCouponRule
>
initCouponRuleList
)
{
...
...
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