记得上下班打卡 | 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
72c255f7
Commit
72c255f7
authored
Aug 19, 2021
by
张国柄
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/dev_member_voucher_refund' into dev_member_voucher_refund
parents
a72599dd
43c67127
Changes
9
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
254 additions
and
5 deletions
+254
-5
CandyCouponRuleDto.java
...a/com/liquidnet/service/candy/dto/CandyCouponRuleDto.java
+11
-1
CandyRedisConst.java
...com/liquidnet/service/candy/constant/CandyRedisConst.java
+0
-4
CandyCouponController.java
...idnet/service/candy/controller/CandyCouponController.java
+46
-0
CouponBaseUtil.java
...java/com/liquidnet/service/candy/util/CouponBaseUtil.java
+56
-0
ObjectUtil.java
...ain/java/com/liquidnet/service/candy/util/ObjectUtil.java
+19
-0
RedisDataUtils.java
...java/com/liquidnet/service/candy/util/RedisDataUtils.java
+15
-0
CandyCouponRulesVo.java
...va/com/liquidnet/service/candy/vo/CandyCouponRulesVo.java
+29
-0
CandyCouponVo.java
...in/java/com/liquidnet/service/candy/vo/CandyCouponVo.java
+51
-0
CandyMyCouponListVo.java
...a/com/liquidnet/service/candy/vo/CandyMyCouponListVo.java
+27
-0
No files found.
liquidnet-bus-do/liquidnet-service-candy-do/src/main/java/com/liquidnet/service/candy/dto/CandyCouponRuleDto.java
View file @
72c255f7
...
@@ -5,7 +5,7 @@ import lombok.Data;
...
@@ -5,7 +5,7 @@ import lombok.Data;
import
java.io.Serializable
;
import
java.io.Serializable
;
@Data
@Data
public
class
CandyCouponRuleDto
implements
Serializable
{
public
class
CandyCouponRuleDto
implements
Serializable
,
Cloneable
{
private
static
final
long
serialVersionUID
=
-
3727352492315559906L
;
private
static
final
long
serialVersionUID
=
-
3727352492315559906L
;
private
String
cruleId
;
private
String
cruleId
;
...
@@ -15,4 +15,14 @@ public class CandyCouponRuleDto implements Serializable {
...
@@ -15,4 +15,14 @@ public class CandyCouponRuleDto implements Serializable {
private
String
busiId
;
private
String
busiId
;
//private Integer state;
//private Integer state;
//private String comment;
//private String comment;
private
static
final
CandyCouponRuleDto
obj
=
new
CandyCouponRuleDto
();
public
static
CandyCouponRuleDto
getNew
()
{
try
{
return
(
CandyCouponRuleDto
)
obj
.
clone
();
}
catch
(
CloneNotSupportedException
e
)
{
e
.
printStackTrace
();
}
return
new
CandyCouponRuleDto
();
}
}
}
liquidnet-bus-service/liquidnet-service-candy/liquidnet-service-candy-impl/src/main/java/com/liquidnet/service/candy/constant/CandyRedisConst.java
deleted
100644 → 0
View file @
a72599dd
package
com
.
liquidnet
.
service
.
candy
.
constant
;
public
class
CandyRedisConst
{
}
liquidnet-bus-service/liquidnet-service-candy/liquidnet-service-candy-impl/src/main/java/com/liquidnet/service/candy/controller/CandyCouponController.java
View file @
72c255f7
package
com
.
liquidnet
.
service
.
candy
.
controller
;
package
com
.
liquidnet
.
service
.
candy
.
controller
;
import
com.liquidnet.commons.lang.util.BeanUtil
;
import
com.liquidnet.commons.lang.util.CurrentUtil
;
import
com.liquidnet.commons.lang.util.DateUtil
;
import
com.liquidnet.service.base.ResponseDto
;
import
com.liquidnet.service.candy.dto.CandyCouponRuleDto
;
import
com.liquidnet.service.candy.dto.CandyUserCouponBasicDto
;
import
com.liquidnet.service.candy.util.CouponBaseUtil
;
import
com.liquidnet.service.candy.util.ObjectUtil
;
import
com.liquidnet.service.candy.util.RedisDataUtils
;
import
com.liquidnet.service.candy.vo.CandyCouponRulesVo
;
import
com.liquidnet.service.candy.vo.CandyCouponVo
;
import
com.liquidnet.service.candy.vo.CandyMyCouponListVo
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiImplicitParams
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.RestController
;
import
java.time.LocalDateTime
;
import
java.util.List
;
/**
/**
* <p>
* <p>
* 券基础信息 前端控制器
* 券基础信息 前端控制器
...
@@ -13,8 +36,31 @@ import org.springframework.web.bind.annotation.RestController;
...
@@ -13,8 +36,31 @@ import org.springframework.web.bind.annotation.RestController;
* @author liquidnet
* @author liquidnet
* @since 2021-08-18
* @since 2021-08-18
*/
*/
@Api
(
"券相关接口"
)
@RestController
@RestController
@RequestMapping
(
"/candy-coupon"
)
@RequestMapping
(
"/candy-coupon"
)
public
class
CandyCouponController
{
public
class
CandyCouponController
{
@Autowired
private
RedisDataUtils
redisDataUtils
;
@GetMapping
(
"my"
)
@ApiOperation
(
"我的券列表"
)
public
ResponseDto
<
CandyMyCouponListVo
>
myCoupon
()
{
String
uid
=
CurrentUtil
.
getCurrentUid
();
List
<
CandyUserCouponBasicDto
>
dtoList
=
redisDataUtils
.
getCouponByUid
(
uid
);
CandyMyCouponListVo
vo
=
CandyMyCouponListVo
.
getNew
();
List
<
CandyCouponVo
>
memberCoupon
=
ObjectUtil
.
getCandyCouponVoArrayList
();
List
<
CandyCouponVo
>
myCoupon
=
ObjectUtil
.
getCandyCouponVoArrayList
();
for
(
CandyUserCouponBasicDto
dtoItem
:
dtoList
)
{
CandyCouponVo
baseVo
=
CouponBaseUtil
.
getBaseCouponUserVo
(
dtoItem
);
if
(
dtoItem
.
getBusiType
().
equals
(
4
))
{
//会员券
memberCoupon
.
add
(
baseVo
);
}
else
{
//非会员券
myCoupon
.
add
(
baseVo
);
}
}
return
ResponseDto
.
success
(
vo
);
}
}
}
liquidnet-bus-service/liquidnet-service-candy/liquidnet-service-candy-impl/src/main/java/com/liquidnet/service/candy/util/CouponBaseUtil.java
0 → 100644
View file @
72c255f7
package
com
.
liquidnet
.
service
.
candy
.
util
;
import
com.liquidnet.commons.lang.util.DateUtil
;
import
com.liquidnet.service.candy.dto.CandyCouponRuleDto
;
import
com.liquidnet.service.candy.dto.CandyUserCouponBasicDto
;
import
com.liquidnet.service.candy.vo.CandyCouponRulesVo
;
import
com.liquidnet.service.candy.vo.CandyCouponVo
;
import
java.time.LocalDateTime
;
import
java.util.List
;
public
class
CouponBaseUtil
{
public
static
CandyCouponVo
getBaseCouponUserVo
(
CandyUserCouponBasicDto
dtoItem
)
{
LocalDateTime
now
=
LocalDateTime
.
now
();
CandyCouponVo
vo
=
CandyCouponVo
.
getNew
();
List
<
CandyCouponRulesVo
>
rulesVoList
=
ObjectUtil
.
getCandyCouponRulesVos
();
vo
.
setTitle
(
dtoItem
.
getTitle
());
vo
.
setExpireAt
(
DateUtil
.
format
(
dtoItem
.
getExpireAt
(),
DateUtil
.
Formatter
.
yyyy_MM_dd
));
vo
.
setValFace
(
dtoItem
.
getValFace
());
vo
.
setValOver
(
dtoItem
.
getValOver
());
vo
.
setValMinus
(
dtoItem
.
getValMinus
());
vo
.
setBindType
(
dtoItem
.
getBindType
());
vo
.
setLabel
(
dtoItem
.
getLabel
());
vo
.
setNotice
(
dtoItem
.
getNotice
());
vo
.
setUcouponId
(
dtoItem
.
getUcouponId
());
vo
.
setUsedAt
(
DateUtil
.
format
(
dtoItem
.
getUsedAt
(),
DateUtil
.
Formatter
.
yyyy_MM_dd
));
vo
.
setUsedFor
(
dtoItem
.
getUsedFor
());
//适用范围 规则
for
(
CandyCouponRuleDto
ruleItem
:
dtoItem
.
getUseRules
())
{
CandyCouponRulesVo
voRules
=
CandyCouponRulesVo
.
getNew
();
voRules
.
setUseScope
(
ruleItem
.
getUseScope
());
voRules
.
setBusiId
(
ruleItem
.
getBusiId
());
voRules
.
setBusiName
(
ruleItem
.
getBusiName
());
rulesVoList
.
add
(
voRules
);
}
//券类别
if
(
dtoItem
.
getBusiType
().
equals
(
3
))
{
vo
.
setCouType
(
101
);
}
else
{
vo
.
setCouType
(
dtoItem
.
getCouType
());
}
//券状态
if
(
dtoItem
.
getState
().
equals
(
1
))
{
if
(
now
.
isAfter
(
dtoItem
.
getExpireAt
()))
{
vo
.
setState
(
3
);
}
else
{
vo
.
setState
(
dtoItem
.
getState
());
}
}
else
{
vo
.
setState
(
dtoItem
.
getState
());
}
vo
.
setUseRules
(
rulesVoList
);
return
vo
;
}
}
liquidnet-bus-service/liquidnet-service-candy/liquidnet-service-candy-impl/src/main/java/com/liquidnet/service/candy/util/ObjectUtil.java
0 → 100644
View file @
72c255f7
package
com
.
liquidnet
.
service
.
candy
.
util
;
import
com.liquidnet.service.candy.vo.CandyCouponRulesVo
;
import
com.liquidnet.service.candy.vo.CandyCouponVo
;
import
java.util.ArrayList
;
public
class
ObjectUtil
{
private
static
final
ArrayList
<
CandyCouponVo
>
candyCouponVoArrayList
=
new
ArrayList
<>();
private
static
final
ArrayList
<
CandyCouponRulesVo
>
candyCouponRulesVos
=
new
ArrayList
<>();
public
static
ArrayList
<
CandyCouponVo
>
getCandyCouponVoArrayList
()
{
return
(
ArrayList
<
CandyCouponVo
>)
candyCouponVoArrayList
.
clone
();
}
public
static
ArrayList
<
CandyCouponRulesVo
>
getCandyCouponRulesVos
()
{
return
(
ArrayList
<
CandyCouponRulesVo
>)
candyCouponRulesVos
.
clone
();
}
}
liquidnet-bus-service/liquidnet-service-candy/liquidnet-service-candy-impl/src/main/java/com/liquidnet/service/candy/util/RedisDataUtils.java
View file @
72c255f7
package
com
.
liquidnet
.
service
.
candy
.
util
;
package
com
.
liquidnet
.
service
.
candy
.
util
;
import
com.liquidnet.common.cache.redis.util.RedisUtil
;
import
com.liquidnet.common.cache.redis.util.RedisUtil
;
import
com.liquidnet.service.candy.constant.CandyRedisConst
;
import
com.liquidnet.service.candy.dto.CandyUserCouponBasicDto
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
import
java.util.ArrayList
;
import
java.util.List
;
@Component
@Component
public
class
RedisDataUtils
{
public
class
RedisDataUtils
{
@Autowired
@Autowired
RedisUtil
redisUtil
;
RedisUtil
redisUtil
;
public
List
<
CandyUserCouponBasicDto
>
getCouponByUid
(
String
uid
){
String
redisKey
=
CandyRedisConst
.
BASIC_USER_COUPON
.
concat
(
uid
);
Object
obj
=
redisUtil
.
get
(
redisKey
);
if
(
obj
==
null
){
//降级
return
new
ArrayList
();
}
else
{
return
(
List
<
CandyUserCouponBasicDto
>)
obj
;
}
}
}
}
liquidnet-bus-service/liquidnet-service-candy/liquidnet-service-candy-impl/src/main/java/com/liquidnet/service/candy/vo/CandyCouponRulesVo.java
0 → 100644
View file @
72c255f7
package
com
.
liquidnet
.
service
.
candy
.
vo
;
import
com.liquidnet.service.candy.dto.CandyCouponRuleDto
;
import
lombok.Data
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.util.List
;
@Data
public
class
CandyCouponRulesVo
implements
Serializable
,
Cloneable
{
private
static
final
long
serialVersionUID
=
4073256621782131607L
;
private
Integer
useScope
;
private
String
busiName
;
private
String
busiId
;
private
static
final
CandyCouponRulesVo
obj
=
new
CandyCouponRulesVo
();
public
static
CandyCouponRulesVo
getNew
()
{
try
{
return
(
CandyCouponRulesVo
)
obj
.
clone
();
}
catch
(
CloneNotSupportedException
e
)
{
e
.
printStackTrace
();
}
return
new
CandyCouponRulesVo
();
}
}
liquidnet-bus-service/liquidnet-service-candy/liquidnet-service-candy-impl/src/main/java/com/liquidnet/service/candy/vo/CandyCouponVo.java
0 → 100644
View file @
72c255f7
package
com
.
liquidnet
.
service
.
candy
.
vo
;
import
com.liquidnet.service.candy.dto.CandyCouponRuleDto
;
import
lombok.Data
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.time.LocalDateTime
;
import
java.util.List
;
@Data
public
class
CandyCouponVo
implements
Serializable
,
Cloneable
{
private
static
final
long
serialVersionUID
=
4073256621782131606L
;
/* --- --- --- CandyCoupon */
private
String
title
;
//标题
private
String
label
;
//标注
private
String
notice
;
//须知
// private Integer exclusive;//专享标识[0-常规|1-会员礼包]
// private Integer busiType;//业务类别[0-全场|1-演出|2-商品|3-优先购|4-会员]
private
Integer
couType
;
//券类型[1-代金券|2-满减券|3-兑换券|4-折扣券]
private
Integer
bindType
;
//[0-用户输入兑换|1-发放至用户]
private
BigDecimal
discount
;
//折扣
private
BigDecimal
valFace
;
//面值
private
BigDecimal
valOver
;
//满减~满
private
BigDecimal
valMinus
;
//满减~减少
private
String
expireAt
;
//过期时间
/* --- --- --- CandyUserCoupon */
private
String
ucouponId
;
//券id
private
Integer
state
;
//券状态[1-可用|2-无效|3-已过期|5-已使用]
// private String bindAt;//激活时间
private
String
usedAt
;
//使用时间
private
String
usedFor
;
//购买内容
/* --- --- --- CandyCouponRule */
private
List
<
CandyCouponRulesVo
>
useRules
;
private
static
final
CandyCouponVo
obj
=
new
CandyCouponVo
();
public
static
CandyCouponVo
getNew
()
{
try
{
return
(
CandyCouponVo
)
obj
.
clone
();
}
catch
(
CloneNotSupportedException
e
)
{
e
.
printStackTrace
();
}
return
new
CandyCouponVo
();
}
}
liquidnet-bus-service/liquidnet-service-candy/liquidnet-service-candy-impl/src/main/java/com/liquidnet/service/candy/vo/CandyMyCouponListVo.java
0 → 100644
View file @
72c255f7
package
com
.
liquidnet
.
service
.
candy
.
vo
;
import
lombok.Data
;
import
java.io.Serializable
;
import
java.util.List
;
@Data
public
class
CandyMyCouponListVo
implements
Serializable
,
Cloneable
{
private
static
final
long
serialVersionUID
=
4073256621782131607L
;
private
List
<
CandyCouponVo
>
memberCoupon
;
private
List
<
CandyCouponVo
>
myCoupon
;
private
static
final
CandyMyCouponListVo
obj
=
new
CandyMyCouponListVo
();
public
static
CandyMyCouponListVo
getNew
()
{
try
{
return
(
CandyMyCouponListVo
)
obj
.
clone
();
}
catch
(
CloneNotSupportedException
e
)
{
e
.
printStackTrace
();
}
return
new
CandyMyCouponListVo
();
}
}
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