记得上下班打卡 | 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
953b1dc0
Commit
953b1dc0
authored
Apr 13, 2022
by
胡佳晨
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
增加 预约字段
parent
ba6c73bb
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
79 additions
and
18 deletions
+79
-18
AnticipateValueVo.java
...idnet/service/goblin/dto/manage/vo/AnticipateValueVo.java
+11
-1
GoblinNftGoodsSkuInfoVo.java
...uidnet/service/goblin/dto/vo/GoblinNftGoodsSkuInfoVo.java
+20
-1
GoblinNftGoodsSkuListVo.java
...uidnet/service/goblin/dto/vo/GoblinNftGoodsSkuListVo.java
+20
-1
GoblinGoodsAnticipateServiceImpl.java
...goblin/service/impl/GoblinGoodsAnticipateServiceImpl.java
+17
-13
GoblinNftGoodsAppServiceImpl.java
...ice/goblin/service/impl/GoblinNftGoodsAppServiceImpl.java
+11
-2
No files found.
liquidnet-bus-api/liquidnet-service-goblin-api/src/main/java/com/liquidnet/service/goblin/dto/manage/vo/AnticipateValueVo.java
View file @
953b1dc0
...
...
@@ -2,6 +2,7 @@ package com.liquidnet.service.goblin.dto.manage.vo;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.liquidnet.commons.lang.util.DateUtil
;
import
com.liquidnet.service.goblin.dto.vo.GoblinNftGoodsSkuListVo
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
...
...
@@ -17,7 +18,7 @@ import java.time.LocalDateTime;
* @since 2022-04-08
*/
@Data
public
class
AnticipateValueVo
{
public
class
AnticipateValueVo
implements
Cloneable
{
private
static
final
long
serialVersionUID
=
1L
;
...
...
@@ -44,5 +45,14 @@ public class AnticipateValueVo {
@ApiModelProperty
(
"预约状态(0:未开始,1:可预约,3:已结束)"
)
private
Integer
state
;
private
static
final
AnticipateValueVo
obj
=
new
AnticipateValueVo
();
public
static
AnticipateValueVo
getNew
()
{
try
{
return
(
AnticipateValueVo
)
obj
.
clone
();
}
catch
(
CloneNotSupportedException
e
)
{
return
new
AnticipateValueVo
();
}
}
}
liquidnet-bus-api/liquidnet-service-goblin-api/src/main/java/com/liquidnet/service/goblin/dto/vo/GoblinNftGoodsSkuInfoVo.java
View file @
953b1dc0
...
...
@@ -3,6 +3,7 @@ package com.liquidnet.service.goblin.dto.vo;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.fasterxml.jackson.annotation.JsonIgnoreProperties
;
import
com.liquidnet.commons.lang.util.DateUtil
;
import
com.liquidnet.service.goblin.dto.manage.vo.AnticipateValueVo
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
...
...
@@ -67,6 +68,13 @@ public class GoblinNftGoodsSkuInfoVo implements Serializable, Cloneable {
@ApiModelProperty
(
position
=
58
,
value
=
"当前用户还可以购买数量 有限购的时候用"
)
private
int
canBuyNum
;
@ApiModelProperty
(
position
=
59
,
value
=
"当前用户还可以购买数量 有限购的时候用"
)
private
String
aboutStartDate
;
@ApiModelProperty
(
position
=
60
,
value
=
"当前用户还可以购买数量 有限购的时候用"
)
private
String
aboutEndDate
;
@ApiModelProperty
(
position
=
61
,
value
=
"预约状态(0:未开始,1:可预约,3:已结束)"
)
private
Integer
state
;
private
static
final
GoblinNftGoodsSkuInfoVo
obj
=
new
GoblinNftGoodsSkuInfoVo
();
public
static
GoblinNftGoodsSkuInfoVo
getNew
()
{
...
...
@@ -77,7 +85,7 @@ public class GoblinNftGoodsSkuInfoVo implements Serializable, Cloneable {
}
}
public
GoblinNftGoodsSkuInfoVo
copy
(
GoblinGoodsSkuInfoVo
source
)
{
public
GoblinNftGoodsSkuInfoVo
copy
(
GoblinGoodsSkuInfoVo
source
,
AnticipateValueVo
anticipateValueVo
)
{
if
(
null
==
source
)
return
this
;
this
.
setSkuId
(
source
.
getSkuId
());
this
.
setSpuId
(
source
.
getSpuId
());
...
...
@@ -93,6 +101,17 @@ public class GoblinNftGoodsSkuInfoVo implements Serializable, Cloneable {
this
.
setSaleStartTime
(
source
.
getSaleStartTime
());
this
.
setSkuCanbuy
(
source
.
getSkuCanbuy
());
this
.
setExtagVoList
(
source
.
getExtagVoList
());
if
(
anticipateValueVo
!=
null
)
{
if
(
anticipateValueVo
.
getAboutEndDate
()
!=
null
)
{
this
.
setAboutEndDate
(
DateUtil
.
Formatter
.
yyyyMMddHHmmss
.
format
(
anticipateValueVo
.
getAboutEndDate
()));
}
if
(
anticipateValueVo
.
getAboutEndDate
()
!=
null
)
{
this
.
setAboutStartDate
(
DateUtil
.
Formatter
.
yyyyMMddHHmmss
.
format
(
anticipateValueVo
.
getAboutStartDate
()));
}
if
(
anticipateValueVo
.
getState
()
!=
null
)
{
this
.
setState
(
anticipateValueVo
.
getState
());
}
}
return
this
;
}
}
liquidnet-bus-api/liquidnet-service-goblin-api/src/main/java/com/liquidnet/service/goblin/dto/vo/GoblinNftGoodsSkuListVo.java
View file @
953b1dc0
...
...
@@ -3,6 +3,7 @@ package com.liquidnet.service.goblin.dto.vo;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.fasterxml.jackson.annotation.JsonIgnoreProperties
;
import
com.liquidnet.commons.lang.util.DateUtil
;
import
com.liquidnet.service.goblin.dto.manage.vo.AnticipateValueVo
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
...
...
@@ -43,6 +44,13 @@ public class GoblinNftGoodsSkuListVo implements Serializable, Cloneable {
@ApiModelProperty
(
position
=
57
,
value
=
"是否还有库存 0没有库存即售罄 1有库存"
)
private
int
isStock
;
@ApiModelProperty
(
position
=
59
,
value
=
"当前用户还可以购买数量 有限购的时候用"
)
private
String
aboutStartDate
;
@ApiModelProperty
(
position
=
60
,
value
=
"当前用户还可以购买数量 有限购的时候用"
)
private
String
aboutEndDate
;
@ApiModelProperty
(
position
=
61
,
value
=
"预约状态(0:未开始,1:可预约,3:已结束)"
)
private
Integer
state
;
private
static
final
GoblinNftGoodsSkuListVo
obj
=
new
GoblinNftGoodsSkuListVo
();
public
static
GoblinNftGoodsSkuListVo
getNew
()
{
...
...
@@ -53,7 +61,7 @@ public class GoblinNftGoodsSkuListVo implements Serializable, Cloneable {
}
}
public
GoblinNftGoodsSkuListVo
copy
(
GoblinGoodsSkuInfoVo
source
)
{
public
GoblinNftGoodsSkuListVo
copy
(
GoblinGoodsSkuInfoVo
source
,
AnticipateValueVo
anticipateValueVo
)
{
if
(
null
==
source
)
return
this
;
this
.
setSkuId
(
source
.
getSkuId
());
this
.
setSpuId
(
source
.
getSpuId
());
...
...
@@ -63,6 +71,17 @@ public class GoblinNftGoodsSkuListVo implements Serializable, Cloneable {
this
.
setSaleStartTime
(
source
.
getSaleStartTime
());
this
.
setSoldoutStatus
(
source
.
getSoldoutStatus
());
this
.
setUnbox
(
source
.
getUnbox
());
if
(
anticipateValueVo
!=
null
)
{
if
(
anticipateValueVo
.
getAboutEndDate
()
!=
null
)
{
this
.
setAboutEndDate
(
DateUtil
.
Formatter
.
yyyyMMddHHmmss
.
format
(
anticipateValueVo
.
getAboutEndDate
()));
}
if
(
anticipateValueVo
.
getAboutEndDate
()
!=
null
)
{
this
.
setAboutStartDate
(
DateUtil
.
Formatter
.
yyyyMMddHHmmss
.
format
(
anticipateValueVo
.
getAboutStartDate
()));
}
if
(
anticipateValueVo
.
getState
()
!=
null
)
{
this
.
setState
(
anticipateValueVo
.
getState
());
}
}
return
this
;
}
}
liquidnet-bus-service/liquidnet-service-goblin/liquidnet-service-goblin-impl/src/main/java/com/liquidnet/service/goblin/service/impl/GoblinGoodsAnticipateServiceImpl.java
View file @
953b1dc0
...
...
@@ -141,7 +141,7 @@ public class GoblinGoodsAnticipateServiceImpl implements IGoblinGoodsAnticipateS
//实际预约人数
anticipateValueVo
.
setActualPeople
(
autIdPeople
);
//设置预约状态
anticipateValueVo
.
setState
(
setState
(
anticipateValueVo
.
getAboutStartDate
(),
anticipateValueVo
.
getAboutEndDate
()));
anticipateValueVo
.
setState
(
setState
(
anticipateValueVo
.
getAboutStartDate
(),
anticipateValueVo
.
getAboutEndDate
()));
}
pageInfo
.
setList
(
data
);
...
...
@@ -149,7 +149,7 @@ public class GoblinGoodsAnticipateServiceImpl implements IGoblinGoodsAnticipateS
return
ResponseDto
.
success
(
pageInfo
);
}
private
Integer
setState
(
LocalDateTime
StartDate
,
LocalDateTime
EndDate
)
{
private
Integer
setState
(
LocalDateTime
StartDate
,
LocalDateTime
EndDate
)
{
LocalDateTime
now
=
LocalDateTime
.
now
();
if
(
StartDate
.
isAfter
(
now
))
{
...
...
@@ -186,10 +186,10 @@ public class GoblinGoodsAnticipateServiceImpl implements IGoblinGoodsAnticipateS
public
ResponseDto
<
Object
>
delete
(
String
skuId
)
{
//更具skuId查询
GoblinGoodsAnticipateValueVo
goodsAnticipateValueVo
=
goblinMongoUtils
.
getAnticipateValueVo
(
skuId
);
if
(
goodsAnticipateValueVo
!=
null
)
{
goodsAnticipateValueVo
.
setState
(
setState
(
goodsAnticipateValueVo
.
getAboutStartDate
(),
goodsAnticipateValueVo
.
getAboutEndDate
()));
if
(
goodsAnticipateValueVo
!=
null
)
{
goodsAnticipateValueVo
.
setState
(
setState
(
goodsAnticipateValueVo
.
getAboutStartDate
(),
goodsAnticipateValueVo
.
getAboutEndDate
()));
//没有开启则可以删除预约
if
(!
goodsAnticipateValueVo
.
getState
().
equals
(
0
)){
if
(!
goodsAnticipateValueVo
.
getState
().
equals
(
0
))
{
return
ResponseDto
.
failure
(
"预约状态为已开启或已结束,不可删除!"
);
}
//mysql删除
...
...
@@ -214,15 +214,15 @@ public class GoblinGoodsAnticipateServiceImpl implements IGoblinGoodsAnticipateS
sqlValue
.
add
(
new
Object
[]{
skuId
});
sendRedis
(
"goblin_goods_anticipate_user_update_sku"
,
sqlValue
);
sendRedis
(
"goblin_goods_anticipate_user_update_sku"
,
sqlValue
);
}
@Override
public
ResponseDto
<
Object
>
userAbout
(
String
skuId
,
String
uid
,
String
phone
)
{
//查询该skuId是否能被预约
GoblinGoodsAnticipateValueVo
anticipateValueVo
=
goblinMongoUtils
.
getAnticipateValueVo
(
skuId
);
if
(
anticipateValueVo
!=
null
)
{
anticipateValueVo
.
setState
(
setState
(
anticipateValueVo
.
getAboutStartDate
(),
anticipateValueVo
.
getAboutEndDate
()));
if
(
anticipateValueVo
!=
null
)
{
anticipateValueVo
.
setState
(
setState
(
anticipateValueVo
.
getAboutStartDate
(),
anticipateValueVo
.
getAboutEndDate
()));
if
(!
anticipateValueVo
.
getState
().
equals
(
1
))
{
return
ResponseDto
.
failure
(
"预约尚未开始或已结束!"
);
}
...
...
@@ -252,16 +252,20 @@ public class GoblinGoodsAnticipateServiceImpl implements IGoblinGoodsAnticipateS
}
return
ResponseDto
.
success
();
}
return
ResponseDto
.
failure
(
"该预约不存在!"
);
return
ResponseDto
.
failure
(
"该预约不存在!"
);
}
@Override
public
ResponseDto
<
AnticipateValueVo
>
getAnticipateValueBySkuId
(
String
skuId
)
{
GoblinGoodsAnticipateValueVo
anticipateValueVo
=
goblinMongoUtils
.
getAnticipateValueVo
(
skuId
);
AnticipateValueVo
valueVo
=
new
AnticipateValueVo
();
if
(
anticipateValueVo
!=
null
){
BeanUtils
.
copyProperties
(
anticipateValueVo
,
valueVo
);
valueVo
.
setState
(
setState
(
valueVo
.
getAboutStartDate
(),
valueVo
.
getAboutEndDate
()));
AnticipateValueVo
valueVo
=
AnticipateValueVo
.
getNew
();
if
(
anticipateValueVo
!=
null
)
{
BeanUtils
.
copyProperties
(
anticipateValueVo
,
valueVo
);
valueVo
.
setState
(
setState
(
valueVo
.
getAboutStartDate
(),
valueVo
.
getAboutEndDate
()));
}
else
{
valueVo
.
setState
(
null
);
valueVo
.
setAboutEndDate
(
null
);
valueVo
.
setAboutStartDate
(
null
);
}
return
ResponseDto
.
success
(
valueVo
);
}
...
...
liquidnet-bus-service/liquidnet-service-goblin/liquidnet-service-goblin-impl/src/main/java/com/liquidnet/service/goblin/service/impl/GoblinNftGoodsAppServiceImpl.java
View file @
953b1dc0
...
...
@@ -4,8 +4,10 @@ import com.liquidnet.common.cache.redis.util.RedisUtil;
import
com.liquidnet.commons.lang.util.CurrentUtil
;
import
com.liquidnet.service.base.PagedResult
;
import
com.liquidnet.service.base.ResponseDto
;
import
com.liquidnet.service.goblin.dto.manage.vo.AnticipateValueVo
;
import
com.liquidnet.service.goblin.dto.vo.*
;
import
com.liquidnet.service.goblin.service.GoblinCouponService
;
import
com.liquidnet.service.goblin.service.IGoblinGoodsAnticipateService
;
import
com.liquidnet.service.goblin.service.IGoblinNftGoodsAppService
;
import
com.liquidnet.service.goblin.util.GoblinMongoUtils
;
import
com.liquidnet.service.goblin.util.GoblinRedisUtils
;
...
...
@@ -45,6 +47,8 @@ public class GoblinNftGoodsAppServiceImpl implements IGoblinNftGoodsAppService {
RedisUtil
redisUtil
;
@Autowired
GoblinCouponService
goblinCouponService
;
@Autowired
IGoblinGoodsAnticipateService
goblinGoodsAnticipateService
;
@Override
public
ResponseDto
<
PagedResult
<
GoblinNftGoodsSkuListVo
>>
goodsList
(
int
page
)
{
...
...
@@ -68,8 +72,10 @@ public class GoblinNftGoodsAppServiceImpl implements IGoblinNftGoodsAppService {
List
<
GoblinGoodsSkuInfoVo
>
skuInfoVos
=
mongoTemplate
.
find
(
query
,
GoblinGoodsSkuInfoVo
.
class
,
GoblinGoodsSkuInfoVo
.
class
.
getSimpleName
());
for
(
GoblinGoodsSkuInfoVo
info
:
skuInfoVos
)
{
//获取预约相关
AnticipateValueVo
anticipateValueVo
=
goblinGoodsAnticipateService
.
getAnticipateValueBySkuId
(
info
.
getSkuId
()).
getData
();
// sku信息
GoblinNftGoodsSkuListVo
nftGoodsSkuInfoVo
=
GoblinNftGoodsSkuListVo
.
getNew
().
copy
(
info
);
GoblinNftGoodsSkuListVo
nftGoodsSkuInfoVo
=
GoblinNftGoodsSkuListVo
.
getNew
().
copy
(
info
,
anticipateValueVo
);
// spu信息
GoblinGoodsInfoVo
goodsInfoVo
=
goblinRedisUtils
.
getGoodsInfoVo
(
info
.
getSpuId
());
GoblinNftGoodsSpuInfoVo
nftGoodsSpuInfoVo
=
GoblinNftGoodsSpuInfoVo
.
getNew
().
copy
(
goodsInfoVo
);
...
...
@@ -112,7 +118,10 @@ public class GoblinNftGoodsAppServiceImpl implements IGoblinNftGoodsAppService {
public
GoblinNftGoodsSkuInfoVo
goodsDetail
(
String
skuId
)
{
GoblinGoodsSkuInfoVo
goodsSkuInfoVo
=
goblinRedisUtils
.
getGoodsSkuInfoVo
(
skuId
);
if
(
goblinRedisUtils
.
getSkuAllStatusShow
(
goodsSkuInfoVo
))
{
GoblinNftGoodsSkuInfoVo
nftGoodsSkuInfoVo
=
GoblinNftGoodsSkuInfoVo
.
getNew
().
copy
(
goodsSkuInfoVo
);
//获取预约相关
AnticipateValueVo
anticipateValueVo
=
goblinGoodsAnticipateService
.
getAnticipateValueBySkuId
(
skuId
).
getData
();
GoblinNftGoodsSkuInfoVo
nftGoodsSkuInfoVo
=
GoblinNftGoodsSkuInfoVo
.
getNew
().
copy
(
goodsSkuInfoVo
,
anticipateValueVo
);
// 限购数量
Integer
buyCount
=
0
;
String
userId
=
CurrentUtil
.
getCurrentUid
();
...
...
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