Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
O
oms-ci-test
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
test-ci
oms-ci-test
Commits
4b26ab0e
提交
4b26ab0e
authored
6月 05, 2023
作者:
张小凤
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
coupon(update)
上级
f09ce294
隐藏空白字符变更
内嵌
并排
正在显示
7 个修改的文件
包含
177 行增加
和
4 行删除
+177
-4
CouponBackController.java
...ain/java/com/mmc/oms/controller/CouponBackController.java
+10
-1
RentalOrdersController.java
...n/java/com/mmc/oms/controller/RentalOrdersController.java
+3
-1
CouponDO.java
src/main/java/com/mmc/oms/entity/coupon/CouponDO.java
+39
-0
CouponInfoActivityVO.java
...ava/com/mmc/oms/model/vo/coupon/CouponInfoActivityVO.java
+1
-1
RedEnvelopeVO.java
src/main/java/com/mmc/oms/model/vo/coupon/RedEnvelopeVO.java
+79
-0
CouponBackService.java
src/main/java/com/mmc/oms/service/CouponBackService.java
+12
-1
CouponBackServiceImpl.java
.../java/com/mmc/oms/service/Impl/CouponBackServiceImpl.java
+33
-0
没有找到文件。
src/main/java/com/mmc/oms/controller/CouponBackController.java
浏览文件 @
4b26ab0e
...
...
@@ -12,6 +12,7 @@ import com.mmc.oms.model.qo.CouponUserInfoQO;
import
com.mmc.oms.model.qo.ProductCouponQO
;
import
com.mmc.oms.model.vo.coupon.CouponInfoActivityVO
;
import
com.mmc.oms.model.vo.coupon.CouponInfoVO
;
import
com.mmc.oms.model.vo.coupon.RedEnvelopeVO
;
import
com.mmc.oms.service.CouponBackService
;
import
io.swagger.annotations.*
;
import
org.springframework.validation.annotation.Validated
;
...
...
@@ -45,7 +46,7 @@ public class CouponBackController {
return
couponBackService
.
saveCouponBackInfo
(
couponInfoVO
,
file
);
}
@ApiOperation
(
value
=
"V1.0.1--新增裂变优惠券"
)
@ApiOperation
(
value
=
"V1.0.1--新增裂变优惠券
品牌卷
"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
)})
@PostMapping
(
"/saveActivity"
)
public
ResultBody
saveActivityCouponInfo
(
@Validated
(
Insert
.
class
)
@RequestBody
CouponInfoActivityVO
couponInfoActivityVO
)
{
...
...
@@ -53,6 +54,14 @@ public class CouponBackController {
}
@ApiOperation
(
value
=
"V1.0.1--新增裂变优惠券 红包"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
)})
@PostMapping
(
"/redEnvelope"
)
public
ResultBody
redEnvelope
(
@Validated
(
Insert
.
class
)
@RequestBody
RedEnvelopeVO
redEnvelopeVO
)
{
return
couponBackService
.
redEnvelope
(
redEnvelopeVO
);
}
@ApiOperation
(
value
=
"V1.0.1--优惠券列表-分页"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
CouponDTO
.
class
)})
@PostMapping
(
"/pageList"
)
...
...
src/main/java/com/mmc/oms/controller/RentalOrdersController.java
浏览文件 @
4b26ab0e
...
...
@@ -13,6 +13,7 @@ import io.swagger.annotations.*;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.*
;
import
springfox.documentation.annotations.ApiIgnore
;
import
javax.servlet.http.HttpServletRequest
;
...
...
@@ -70,7 +71,8 @@ public class RentalOrdersController extends BaseController {
}
@ApiOperation
(
value
=
"订单状态的变更"
)
@ApiIgnore
@ApiOperation
(
value
=
"前端不使用 订单状态的变更"
)
@GetMapping
(
"orderStatusChanges"
)
public
ResultBody
orderStatusChanges
(
@RequestParam
(
value
=
"orderNo"
,
required
=
true
)
String
orderNo
,
@RequestParam
(
value
=
"tranStatus"
,
required
=
true
)
Integer
tranStatus
)
{
...
...
src/main/java/com/mmc/oms/entity/coupon/CouponDO.java
浏览文件 @
4b26ab0e
...
...
@@ -7,6 +7,7 @@ import com.mmc.oms.model.dto.coupon.CouponDTO;
import
com.mmc.oms.model.dto.coupon.CouponListDTO
;
import
com.mmc.oms.model.vo.coupon.CouponInfoActivityVO
;
import
com.mmc.oms.model.vo.coupon.CouponInfoVO
;
import
com.mmc.oms.model.vo.coupon.RedEnvelopeVO
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
...
...
@@ -14,6 +15,7 @@ import lombok.EqualsAndHashCode;
import
lombok.experimental.Accessors
;
import
lombok.experimental.Tolerate
;
import
javax.validation.constraints.NotBlank
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.util.Date
;
...
...
@@ -32,6 +34,10 @@ public class CouponDO implements Serializable {
private
static
final
long
serialVersionUID
=
1L
;
@ApiModelProperty
(
value
=
"用户范围(1所有用户 2渠道用户 3非渠道用户 4注册用户)"
,
required
=
true
,
example
=
"1"
)
@NotBlank
(
message
=
"用户范围"
)
private
Integer
userScope
;
@ApiModelProperty
(
value
=
"优惠券ID"
)
@TableId
(
value
=
"id"
,
type
=
IdType
.
AUTO
)
private
Integer
id
;
...
...
@@ -211,6 +217,23 @@ public class CouponDO implements Serializable {
}
@Tolerate
public
CouponDO
(
RedEnvelopeVO
redEnvelopeVO
,
Integer
type
)
{
this
.
couponName
=
redEnvelopeVO
.
getCouponName
();
this
.
useType
=
redEnvelopeVO
.
getBeSharedUseType
();
this
.
useStartTime
=
redEnvelopeVO
.
getUseStartTime
();
this
.
useEndTime
=
redEnvelopeVO
.
getUseEndTime
();
this
.
couponMoney
=
redEnvelopeVO
.
getBeSharedCouponMoney
();
this
.
couponTotal
=
redEnvelopeVO
.
getBeSharedCouponTotal
();
this
.
userTag
=
redEnvelopeVO
.
getUserTag
();
this
.
restrictedAccess
=
1
;
this
.
isLimited
=
true
;
this
.
isFixedTime
=
CouponConstants
.
COUPON_USE_TIME_FIXED
;
this
.
getType
=
CouponConstants
.
COUPON_USR_TYPE_ACTIVITY
;
this
.
userScope
=
redEnvelopeVO
.
getUserScope
();
}
@Tolerate
public
CouponDO
(
CouponInfoActivityVO
couponInfoActivityVO
,
Integer
type
)
{
this
.
couponName
=
couponInfoActivityVO
.
getCouponName
();
this
.
useType
=
couponInfoActivityVO
.
getBeSharedUseType
();
...
...
@@ -230,4 +253,20 @@ public class CouponDO implements Serializable {
this
.
isFixedTime
=
CouponConstants
.
COUPON_USE_TIME_FIXED
;
this
.
getType
=
CouponConstants
.
COUPON_USR_TYPE_ACTIVITY
;
}
@Tolerate
public
CouponDO
(
RedEnvelopeVO
redEnvelopeVO
)
{
this
.
couponName
=
redEnvelopeVO
.
getCouponName
();
this
.
useType
=
redEnvelopeVO
.
getUseType
();
this
.
useStartTime
=
redEnvelopeVO
.
getUseStartTime
();
this
.
useEndTime
=
redEnvelopeVO
.
getUseEndTime
();
this
.
couponMoney
=
redEnvelopeVO
.
getCouponMoney
();
this
.
couponTotal
=
redEnvelopeVO
.
getCouponTotal
();
this
.
userScope
=
redEnvelopeVO
.
getUserScope
();
this
.
peopleNumber
=
redEnvelopeVO
.
getPeopleNumber
();
this
.
isLimited
=
true
;
this
.
isFixedTime
=
CouponConstants
.
COUPON_USE_TIME_FIXED
;
this
.
getType
=
CouponConstants
.
COUPON_USR_TYPE_ACTIVITY
;
}
}
src/main/java/com/mmc/oms/model/vo/coupon/CouponInfoActivityVO.java
浏览文件 @
4b26ab0e
...
...
@@ -69,7 +69,7 @@ public class CouponInfoActivityVO implements Serializable {
@ApiModelProperty
(
value
=
"分享者-每人限制领取张数"
,
required
=
true
)
private
Integer
restrictedAccess
;
@ApiModelProperty
(
value
=
"被分享用户标签"
)
@ApiModelProperty
(
value
=
"被分享用户标签
1新人 2实名认证 3企业认证 4 无
"
)
private
Integer
userTag
;
@ApiModelProperty
(
value
=
"分享者-分享人数"
)
...
...
src/main/java/com/mmc/oms/model/vo/coupon/RedEnvelopeVO.java
0 → 100644
浏览文件 @
4b26ab0e
package
com
.
mmc
.
oms
.
model
.
vo
.
coupon
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
lombok.experimental.Accessors
;
import
org.hibernate.validator.constraints.Length
;
import
org.hibernate.validator.constraints.Range
;
import
javax.validation.constraints.DecimalMax
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.NotNull
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.util.Date
;
/**
* @Author small
* @Date 2023/6/5 13:58
* @Version 1.0
*/
@Data
@EqualsAndHashCode
(
callSuper
=
false
)
@Accessors
(
chain
=
true
)
public
class
RedEnvelopeVO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
@ApiModelProperty
(
value
=
"用户范围(1所有用户 2渠道用户 3非渠道用户 4注册用户)"
,
required
=
true
,
example
=
"1"
)
@NotBlank
(
message
=
"用户范围"
)
private
Integer
userScope
;
@ApiModelProperty
(
value
=
"优惠券名称"
,
required
=
true
,
example
=
"123"
)
@NotBlank
(
message
=
"请填写优惠券名称"
)
@Length
(
max
=
64
,
message
=
"优惠券名称长度不能超过64个字符"
)
private
String
couponName
;
@ApiModelProperty
(
value
=
"分享者-优惠券使用类型 1vip券, 2品牌券 3红包"
,
required
=
true
,
example
=
"3"
)
@Range
(
min
=
1
,
max
=
2
,
message
=
"请选择优惠券使用类型"
)
private
Integer
useType
;
@ApiModelProperty
(
value
=
"分享者-可使用时间范围 开始时间 yyyy-MM-dd HH:mm:ss"
,
required
=
true
,
example
=
"2023-06-05 00:00:00"
)
private
Date
useStartTime
;
@ApiModelProperty
(
value
=
"分享者-可使用时间范围 结束时间 yyyy-MM-dd HH:mm:ss"
,
required
=
true
,
example
=
"2023-07-07 23:59:59"
)
private
Date
useEndTime
;
@ApiModelProperty
(
value
=
"分享者-兑换的优惠券面值"
,
required
=
true
,
example
=
"100"
)
@NotNull
(
message
=
"红包金额"
)
@DecimalMax
(
value
=
"99999.99"
,
message
=
"优惠券面值不能大于99999.99"
)
private
BigDecimal
couponMoney
;
@ApiModelProperty
(
value
=
"分享者-发放总数"
,
required
=
true
,
example
=
"10"
)
private
Integer
couponTotal
;
@ApiModelProperty
(
value
=
"分享者-分享人数"
,
required
=
true
,
example
=
"2"
)
private
Integer
peopleNumber
;
@ApiModelProperty
(
value
=
"被分享用户标签 1新人 2实名认证 3企业认证 4 无"
,
example
=
"4"
)
private
Integer
userTag
;
@ApiModelProperty
(
value
=
"被分享者-优惠券使用类型 1vip,2品牌券 3红包"
,
required
=
true
,
example
=
"3"
)
@Range
(
min
=
1
,
max
=
2
,
message
=
"请选择优惠券使用类型"
)
private
Integer
beSharedUseType
;
@ApiModelProperty
(
value
=
"被分享者-兑换的优惠券面值"
,
required
=
true
,
example
=
"50"
)
@NotNull
(
message
=
"红包金额"
)
@DecimalMax
(
value
=
"99999.99"
,
message
=
"优惠券面值不能大于99999.99"
)
private
BigDecimal
beSharedCouponMoney
;
@ApiModelProperty
(
value
=
"被分享者-发放总数"
,
required
=
true
,
example
=
"12"
)
private
Integer
beSharedCouponTotal
;
}
src/main/java/com/mmc/oms/service/CouponBackService.java
浏览文件 @
4b26ab0e
...
...
@@ -10,6 +10,7 @@ import com.mmc.oms.model.qo.CouponUserInfoQO;
import
com.mmc.oms.model.qo.ProductCouponQO
;
import
com.mmc.oms.model.vo.coupon.CouponInfoActivityVO
;
import
com.mmc.oms.model.vo.coupon.CouponInfoVO
;
import
com.mmc.oms.model.vo.coupon.RedEnvelopeVO
;
import
org.springframework.web.multipart.MultipartFile
;
import
javax.servlet.http.HttpServletResponse
;
...
...
@@ -33,13 +34,21 @@ public interface CouponBackService extends IService<CouponDO> {
ResultBody
saveCouponBackInfo
(
CouponInfoVO
couponVO
,
MultipartFile
file
);
/**
* 创建-裂变优惠券
* 创建-裂变优惠券
品牌卷
*
* @param couponInfoActivityVO
* @return
*/
ResultBody
saveActivityCouponInfo
(
CouponInfoActivityVO
couponInfoActivityVO
);
/**
* 创建-裂变优惠券 红包
*
* @param redEnvelopeVO
* @return
*/
ResultBody
redEnvelope
(
RedEnvelopeVO
redEnvelopeVO
);
/**
* 查询分页列表-优惠券
...
...
@@ -156,4 +165,6 @@ public interface CouponBackService extends IService<CouponDO> {
ResultBody
ordinaryActivities
(
ProductCouponQO
productCouponQO
);
ResultBody
fissionActivity
(
ProductCouponQO
productCouponQO
);
}
src/main/java/com/mmc/oms/service/Impl/CouponBackServiceImpl.java
浏览文件 @
4b26ab0e
...
...
@@ -36,6 +36,7 @@ import com.mmc.oms.model.qo.CouponUserInfoQO;
import
com.mmc.oms.model.qo.ProductCouponQO
;
import
com.mmc.oms.model.vo.coupon.CouponInfoActivityVO
;
import
com.mmc.oms.model.vo.coupon.CouponInfoVO
;
import
com.mmc.oms.model.vo.coupon.RedEnvelopeVO
;
import
com.mmc.oms.service.CouponBackService
;
import
com.mmc.oms.service.CouponUserService
;
import
org.apache.commons.lang3.StringUtils
;
...
...
@@ -183,6 +184,38 @@ public class CouponBackServiceImpl extends ServiceImpl<CouponBackDao, CouponDO>
}
}
@Override
public
ResultBody
redEnvelope
(
RedEnvelopeVO
redEnvelopeVO
)
{
LambdaQueryWrapper
<
CouponDO
>
wrapper
=
new
LambdaQueryWrapper
();
wrapper
.
eq
(
CouponDO:
:
getCouponName
,
redEnvelopeVO
.
getCouponName
()).
eq
(
CouponDO:
:
getIsDel
,
false
);
long
count
=
this
.
count
(
wrapper
);
if
(
count
>
0
)
{
return
ResultBody
.
error
(
"优惠券名重复"
);
}
if
(
redEnvelopeVO
.
getBeSharedCouponTotal
()
<
redEnvelopeVO
.
getCouponTotal
())
{
return
ResultBody
.
error
(
"被分享者券发行量应大于等于分享者券发行量*分享人数*1.5"
);
}
CouponDO
couponDO
=
new
CouponDO
(
redEnvelopeVO
);
couponDO
.
setLastTotal
(
redEnvelopeVO
.
getCouponTotal
());
couponDO
.
setCreateTime
(
new
Date
());
couponDO
.
setIsLimited
(
true
);
CouponDO
couponActivity
=
new
CouponDO
(
redEnvelopeVO
,
1
);
couponActivity
.
setLastTotal
(
redEnvelopeVO
.
getBeSharedCouponTotal
());
couponActivity
.
setCreateTime
(
new
Date
());
Boolean
execute
=
transactionTemplate
.
execute
(
e
->
{
this
.
save
(
couponDO
);
couponActivity
.
setParentId
(
couponDO
.
getId
());
this
.
save
(
couponActivity
);
return
Boolean
.
TRUE
;
});
if
(
execute
)
{
return
ResultBody
.
success
();
}
else
{
return
ResultBody
.
error
(
"请稍后重试"
);
}
}
private
List
<
CouponUserDO
>
extracted
(
CouponDO
couponDO
,
List
<
MallUserDTO
>
result
)
{
Integer
couponDay
=
couponDO
.
getCouponDay
();
DateTime
date
=
DateUtil
.
date
();
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论