记得上下班打卡 | 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
ff49b580
Commit
ff49b580
authored
Dec 09, 2021
by
jiangxiulong
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
增加是否无限库存标识
parent
acce922a
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
42 additions
and
19 deletions
+42
-19
SweetIntegralActivityPrizeFormParam.java
.../dto/param/admin/SweetIntegralActivityPrizeFormParam.java
+5
-0
SweetIntegralActivityServiceImpl.java
.../sweet/service/impl/SweetIntegralActivityServiceImpl.java
+20
-12
SweetRedisAdminUtils.java
...ient/admin/zhengzai/sweet/utils/SweetRedisAdminUtils.java
+7
-1
SweetIntegralActivityPrize.java
...dnet/service/sweet/entity/SweetIntegralActivityPrize.java
+9
-6
db_sweet_integral_activity_20211020.sql
...ervice-sweet/docu/db_sweet_integral_activity_20211020.sql
+1
-0
No files found.
liquidnet-bus-api/liquidnet-service-sweet-api/src/main/java/com/liquidnet/service/sweet/dto/param/admin/SweetIntegralActivityPrizeFormParam.java
View file @
ff49b580
...
@@ -58,6 +58,10 @@ public class SweetIntegralActivityPrizeFormParam implements Serializable,Cloneab
...
@@ -58,6 +58,10 @@ public class SweetIntegralActivityPrizeFormParam implements Serializable,Cloneab
@NotNull
(
message
=
"prizeNum不能为空"
)
@NotNull
(
message
=
"prizeNum不能为空"
)
private
Integer
prizeNum
;
private
Integer
prizeNum
;
@ApiModelProperty
(
required
=
true
,
value
=
"是否是无限库存 1有限库存 2无限库存"
,
example
=
"1"
)
@NotNull
(
message
=
"isInfinite不能为空"
)
private
Integer
isInfinite
;
@ApiModelProperty
(
required
=
true
,
value
=
"中奖概率"
,
example
=
"1"
)
@ApiModelProperty
(
required
=
true
,
value
=
"中奖概率"
,
example
=
"1"
)
@NotNull
(
message
=
"winningProbability不能为空"
)
@NotNull
(
message
=
"winningProbability不能为空"
)
private
BigDecimal
winningProbability
;
private
BigDecimal
winningProbability
;
...
@@ -84,6 +88,7 @@ public class SweetIntegralActivityPrizeFormParam implements Serializable,Cloneab
...
@@ -84,6 +88,7 @@ public class SweetIntegralActivityPrizeFormParam implements Serializable,Cloneab
sweetIntegralActivityPrize
.
setPrizeType
(
source
.
getPrizeType
());
sweetIntegralActivityPrize
.
setPrizeType
(
source
.
getPrizeType
());
sweetIntegralActivityPrize
.
setPrizeTypeNum
(
source
.
getPrizeTypeNum
());
sweetIntegralActivityPrize
.
setPrizeTypeNum
(
source
.
getPrizeTypeNum
());
sweetIntegralActivityPrize
.
setPrizeNum
(
source
.
getPrizeNum
());
sweetIntegralActivityPrize
.
setPrizeNum
(
source
.
getPrizeNum
());
sweetIntegralActivityPrize
.
setIsInfinite
(
source
.
getIsInfinite
());
sweetIntegralActivityPrize
.
setWinningProbability
(
source
.
getWinningProbability
());
sweetIntegralActivityPrize
.
setWinningProbability
(
source
.
getWinningProbability
());
return
sweetIntegralActivityPrize
;
return
sweetIntegralActivityPrize
;
}
}
...
...
liquidnet-bus-client/liquidnet-client-admin/liquidnet-client-admin-zhengzai/src/main/java/com/liquidnet/client/admin/zhengzai/sweet/service/impl/SweetIntegralActivityServiceImpl.java
View file @
ff49b580
...
@@ -73,6 +73,9 @@ public class SweetIntegralActivityServiceImpl extends ServiceImpl<SweetIntegralA
...
@@ -73,6 +73,9 @@ public class SweetIntegralActivityServiceImpl extends ServiceImpl<SweetIntegralA
String
prizeId
=
IDGenerator
.
nextSnowId
();
String
prizeId
=
IDGenerator
.
nextSnowId
();
sweetIntegralActivityPrize
.
setPrizeId
(
prizeId
);
sweetIntegralActivityPrize
.
setPrizeId
(
prizeId
);
sweetIntegralActivityPrize
.
setIntegralActivityId
(
integralActivityId
);
sweetIntegralActivityPrize
.
setIntegralActivityId
(
integralActivityId
);
if
(
prize
.
getIsInfinite
()
==
2
)
{
sweetIntegralActivityPrize
.
setPrizeNum
(
0
);
}
sweetIntegralActivityPrizeMapper
.
insert
(
sweetIntegralActivityPrize
);
sweetIntegralActivityPrizeMapper
.
insert
(
sweetIntegralActivityPrize
);
// 奖品库存
// 奖品库存
sweetRedisAdminUtils
.
incrIntegralActivityPrizeNum
(
integralActivityId
,
sweetIntegralActivityPrize
.
getPrizeId
(),
sweetIntegralActivityPrize
.
getPrizeNum
());
sweetRedisAdminUtils
.
incrIntegralActivityPrizeNum
(
integralActivityId
,
sweetIntegralActivityPrize
.
getPrizeId
(),
sweetIntegralActivityPrize
.
getPrizeNum
());
...
@@ -119,22 +122,27 @@ public class SweetIntegralActivityServiceImpl extends ServiceImpl<SweetIntegralA
...
@@ -119,22 +122,27 @@ public class SweetIntegralActivityServiceImpl extends ServiceImpl<SweetIntegralA
SweetIntegralActivityPrize
sweetIntegralActivityPrize
=
SweetIntegralActivityPrizeFormParam
.
getNew
().
copy
(
prize
);
SweetIntegralActivityPrize
sweetIntegralActivityPrize
=
SweetIntegralActivityPrizeFormParam
.
getNew
().
copy
(
prize
);
sweetIntegralActivityPrize
.
setUpdatedAt
(
nowTime
);
sweetIntegralActivityPrize
.
setUpdatedAt
(
nowTime
);
String
prizeId
=
prize
.
getPrizeId
();
String
prizeId
=
prize
.
getPrizeId
();
// 处理奖品库存
if
(
prize
.
getIsInfinite
()
==
2
)
{
SweetIntegralActivityPrize
sweetIntegralActivityPrizeOld
=
sweetIntegralActivityPrizeMapper
.
selectOne
(
sweetIntegralActivityPrize
.
setPrizeNum
(
0
);
Wrappers
.
lambdaQuery
(
SweetIntegralActivityPrize
.
class
).
eq
(
SweetIntegralActivityPrize:
:
getPrizeId
,
prizeId
)
sweetRedisAdminUtils
.
delIntegralActivityPrizeNum
(
integralActivityId
,
prizeId
);
);
}
else
{
// 处理奖品库存
SweetIntegralActivityPrize
sweetIntegralActivityPrizeOld
=
sweetIntegralActivityPrizeMapper
.
selectOne
(
Wrappers
.
lambdaQuery
(
SweetIntegralActivityPrize
.
class
).
eq
(
SweetIntegralActivityPrize:
:
getPrizeId
,
prizeId
)
);
Integer
prizeNum
=
sweetIntegralActivityPrizeOld
.
getPrizeNum
();
Integer
prizeNumNew
=
sweetIntegralActivityPrize
.
getPrizeNum
();
int
prizeNumDiff
=
prizeNumNew
-
prizeNum
;
if
(
prizeNumDiff
>
0
)
{
//增加库存
sweetRedisAdminUtils
.
incrIntegralActivityPrizeNum
(
integralActivityId
,
prizeId
,
prizeNumDiff
);
}
else
if
(
prizeNumDiff
<
0
)
{
// 减少库存
sweetRedisAdminUtils
.
decrIntegralActivityPrizeNum
(
integralActivityId
,
prizeId
,
Math
.
abs
(
prizeNumDiff
));
}
}
sweetIntegralActivityPrizeMapper
.
update
(
sweetIntegralActivityPrizeMapper
.
update
(
sweetIntegralActivityPrize
,
sweetIntegralActivityPrize
,
Wrappers
.
lambdaUpdate
(
SweetIntegralActivityPrize
.
class
).
eq
(
SweetIntegralActivityPrize:
:
getPrizeId
,
prizeId
)
Wrappers
.
lambdaUpdate
(
SweetIntegralActivityPrize
.
class
).
eq
(
SweetIntegralActivityPrize:
:
getPrizeId
,
prizeId
)
);
);
Integer
prizeNum
=
sweetIntegralActivityPrizeOld
.
getPrizeNum
();
Integer
prizeNumNew
=
sweetIntegralActivityPrize
.
getPrizeNum
();
int
prizeNumDiff
=
prizeNumNew
-
prizeNum
;
if
(
prizeNumDiff
>
0
)
{
//增加库存
sweetRedisAdminUtils
.
incrIntegralActivityPrizeNum
(
integralActivityId
,
prizeId
,
prizeNumDiff
);
}
else
if
(
prizeNumDiff
<
0
)
{
// 减少库存
sweetRedisAdminUtils
.
decrIntegralActivityPrizeNum
(
integralActivityId
,
prizeId
,
Math
.
abs
(
prizeNumDiff
));
}
}
}
}
}
// 活动redis处理
// 活动redis处理
...
...
liquidnet-bus-client/liquidnet-client-admin/liquidnet-client-admin-zhengzai/src/main/java/com/liquidnet/client/admin/zhengzai/sweet/utils/SweetRedisAdminUtils.java
View file @
ff49b580
...
@@ -36,7 +36,6 @@ public class SweetRedisAdminUtils {
...
@@ -36,7 +36,6 @@ public class SweetRedisAdminUtils {
.
concat
(
prizeId
);
.
concat
(
prizeId
);
redisDataSourceUtil
.
getRedisSweetUtil
().
incr
(
redisKey
,
num
);
redisDataSourceUtil
.
getRedisSweetUtil
().
incr
(
redisKey
,
num
);
}
}
public
void
decrIntegralActivityPrizeNum
(
String
integralActivityId
,
String
prizeId
,
Integer
num
)
{
public
void
decrIntegralActivityPrizeNum
(
String
integralActivityId
,
String
prizeId
,
Integer
num
)
{
String
redisKey
=
SweetConstant
.
REDIS_KEY_SWEET_INTEGRAL_ACTIVITY_PRIZE_NUM
String
redisKey
=
SweetConstant
.
REDIS_KEY_SWEET_INTEGRAL_ACTIVITY_PRIZE_NUM
.
concat
(
integralActivityId
)
.
concat
(
integralActivityId
)
...
@@ -44,6 +43,13 @@ public class SweetRedisAdminUtils {
...
@@ -44,6 +43,13 @@ public class SweetRedisAdminUtils {
.
concat
(
prizeId
);
.
concat
(
prizeId
);
redisDataSourceUtil
.
getRedisSweetUtil
().
decr
(
redisKey
,
num
);
redisDataSourceUtil
.
getRedisSweetUtil
().
decr
(
redisKey
,
num
);
}
}
public
void
delIntegralActivityPrizeNum
(
String
integralActivityId
,
String
prizeId
)
{
String
redisKey
=
SweetConstant
.
REDIS_KEY_SWEET_INTEGRAL_ACTIVITY_PRIZE_NUM
.
concat
(
integralActivityId
)
.
concat
(
SweetConstant
.
REDIS_KEY_SWEET_INTEGRAL_ACTIVITY_PRIZE_ID
)
.
concat
(
prizeId
);
redisDataSourceUtil
.
getRedisSweetUtil
().
del
(
redisKey
);
}
public
int
getIntegralActivityPrizeNum
(
String
integralActivityId
,
String
prizeId
)
{
public
int
getIntegralActivityPrizeNum
(
String
integralActivityId
,
String
prizeId
)
{
String
redisKey
=
SweetConstant
.
REDIS_KEY_SWEET_INTEGRAL_ACTIVITY_PRIZE_NUM
String
redisKey
=
SweetConstant
.
REDIS_KEY_SWEET_INTEGRAL_ACTIVITY_PRIZE_NUM
...
...
liquidnet-bus-do/liquidnet-service-sweet-do/src/main/java/com/liquidnet/service/sweet/entity/SweetIntegralActivityPrize.java
View file @
ff49b580
package
com
.
liquidnet
.
service
.
sweet
.
entity
;
package
com
.
liquidnet
.
service
.
sweet
.
entity
;
import
java.math.BigDecimal
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
java.time.LocalDateTime
;
import
java.io.Serializable
;
import
lombok.Data
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
lombok.EqualsAndHashCode
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.time.LocalDateTime
;
/**
/**
* <p>
* <p>
* 积分活动奖品表
* 积分活动奖品表
...
@@ -73,6 +71,11 @@ public class SweetIntegralActivityPrize implements Serializable, Cloneable {
...
@@ -73,6 +71,11 @@ public class SweetIntegralActivityPrize implements Serializable, Cloneable {
*/
*/
private
Integer
prizeNum
;
private
Integer
prizeNum
;
/**
* 是否是无限库存 1有限库存 2无限
*/
private
Integer
isInfinite
;
/**
/**
* 中奖概率
* 中奖概率
*/
*/
...
...
liquidnet-bus-service/liquidnet-service-sweet/docu/db_sweet_integral_activity_20211020.sql
View file @
ff49b580
...
@@ -40,6 +40,7 @@ CREATE TABLE `sweet_integral_activity_prize`
...
@@ -40,6 +40,7 @@ CREATE TABLE `sweet_integral_activity_prize`
`prize_type`
tinyint
NOT
NULL
DEFAULT
0
COMMENT
'奖品类型 1积分 2优惠券 3实物 4登登登VIP'
,
`prize_type`
tinyint
NOT
NULL
DEFAULT
0
COMMENT
'奖品类型 1积分 2优惠券 3实物 4登登登VIP'
,
`prize_type_num`
int
NOT
NULL
DEFAULT
0
COMMENT
'单次奖励数量如积分 中奖给多少'
,
`prize_type_num`
int
NOT
NULL
DEFAULT
0
COMMENT
'单次奖励数量如积分 中奖给多少'
,
`prize_num`
int
NOT
NULL
DEFAULT
0
COMMENT
'奖品数量库存'
,
`prize_num`
int
NOT
NULL
DEFAULT
0
COMMENT
'奖品数量库存'
,
`is_infinite`
tinyint
NOT
NULL
DEFAULT
1
COMMENT
'是否是无限库存 1有限库存 2无限库存'
,
`winning_probability`
decimal
(
10
,
2
)
NOT
NULL
DEFAULT
0
COMMENT
'中奖概率'
,
`winning_probability`
decimal
(
10
,
2
)
NOT
NULL
DEFAULT
0
COMMENT
'中奖概率'
,
`created_at`
datetime
NULL
DEFAULT
CURRENT_TIMESTAMP
COMMENT
'创建时间'
,
`created_at`
datetime
NULL
DEFAULT
CURRENT_TIMESTAMP
COMMENT
'创建时间'
,
`updated_at`
datetime
NULL
DEFAULT
CURRENT_TIMESTAMP
COMMENT
'更新时间'
,
`updated_at`
datetime
NULL
DEFAULT
CURRENT_TIMESTAMP
COMMENT
'更新时间'
,
...
...
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