记得上下班打卡 | 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
309ac069
Commit
309ac069
authored
Jul 29, 2022
by
GaoHu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
MIX组合购新增预约功能
parent
4d9146cf
Changes
8
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
145 additions
and
13 deletions
+145
-13
GoblinRedisConst.java
...m/liquidnet/service/goblin/constant/GoblinRedisConst.java
+5
-0
GoblinMixReserveVo.java
...m/liquidnet/service/goblin/dto/vo/GoblinMixReserveVo.java
+47
-0
IGoblinGoodsAnticipateMgService.java
...oblin/service/manage/IGoblinGoodsAnticipateMgService.java
+9
-0
GoblinMixAppController.java
...net/service/goblin/controller/GoblinMixAppController.java
+24
-0
GoblinMixAppServiceImpl.java
.../service/goblin/service/impl/GoblinMixAppServiceImpl.java
+0
-13
GoblinGoodsAnticipateMgServiceImpl.java
...rvice/impl/manage/GoblinGoodsAnticipateMgServiceImpl.java
+48
-0
GoblinRedisUtils.java
...a/com/liquidnet/service/goblin/util/GoblinRedisUtils.java
+11
-0
sqlmap.properties
...-service-goblin-impl/src/main/resources/sqlmap.properties
+1
-0
No files found.
liquidnet-bus-api/liquidnet-service-goblin-api/src/main/java/com/liquidnet/service/goblin/constant/GoblinRedisConst.java
View file @
309ac069
...
@@ -338,6 +338,11 @@ public class GoblinRedisConst {
...
@@ -338,6 +338,11 @@ public class GoblinRedisConst {
public
static
final
String
GOBLIN_MIX_LIMIT
=
PREFIX
.
concat
(
"mix:limit:"
);
//$key:$mixId:$uid 混合售开始列表
public
static
final
String
GOBLIN_MIX_LIMIT
=
PREFIX
.
concat
(
"mix:limit:"
);
//$key:$mixId:$uid 混合售开始列表
public
static
final
String
GOBLIN_MIX_RESERVE_UID
=
PREFIX
.
concat
(
"mix:reserve:uid:"
);
//$mixId:$uid 混合售用户预约保存
/* ----------------------------------------------------------------- */
/* ----------------------------------------------------------------- */
public
static
final
String
GOBLIN_ORDER_LOG
=
PREFIX
.
concat
(
"order:log:"
);
//无用
public
static
final
String
GOBLIN_ORDER_LOG
=
PREFIX
.
concat
(
"order:log:"
);
//无用
...
...
liquidnet-bus-api/liquidnet-service-goblin-api/src/main/java/com/liquidnet/service/goblin/dto/vo/GoblinMixReserveVo.java
0 → 100644
View file @
309ac069
package
com
.
liquidnet
.
service
.
goblin
.
dto
.
vo
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.liquidnet.commons.lang.util.DateUtil
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
java.io.Serializable
;
import
java.time.LocalDateTime
;
/**
* <p>
* 商城订单表
* </p>
*
* @author liquidnet
* @since 2021-12-27
*/
@Data
@EqualsAndHashCode
(
callSuper
=
false
)
public
class
GoblinMixReserveVo
implements
Serializable
,
Cloneable
{
private
static
final
long
serialVersionUID
=
1L
;
@ApiModelProperty
(
value
=
" mix预约表生成id"
)
private
String
mid
;
@ApiModelProperty
(
value
=
" mixId"
)
private
String
mixId
;
@ApiModelProperty
(
value
=
" uid"
)
private
String
uid
;
@ApiModelProperty
(
value
=
" 预约人手机号"
)
private
String
phone
;
@ApiModelProperty
(
value
=
" 预约时间"
)
@JsonFormat
(
shape
=
JsonFormat
.
Shape
.
STRING
,
pattern
=
DateUtil
.
DATE_FULL_STR
)
private
LocalDateTime
createdDate
;
private
static
final
GoblinMixReserveVo
obj
=
new
GoblinMixReserveVo
();
public
static
GoblinMixReserveVo
getNew
()
{
try
{
return
(
GoblinMixReserveVo
)
obj
.
clone
();
}
catch
(
CloneNotSupportedException
e
)
{
return
new
GoblinMixReserveVo
();
}
}
}
liquidnet-bus-api/liquidnet-service-goblin-api/src/main/java/com/liquidnet/service/goblin/service/manage/IGoblinGoodsAnticipateMgService.java
View file @
309ac069
...
@@ -55,4 +55,13 @@ public interface IGoblinGoodsAnticipateMgService {
...
@@ -55,4 +55,13 @@ public interface IGoblinGoodsAnticipateMgService {
* @return 预约关联sku和spu表
* @return 预约关联sku和spu表
*/
*/
AnticipateValueVo
getAnticipateValueBySkuId
(
String
skuId
,
int
hasHead
);
AnticipateValueVo
getAnticipateValueBySkuId
(
String
skuId
,
int
hasHead
);
/**
* 组合购用户预约
* @param mixId 组合购id
* @return Boolean
*/
ResponseDto
<
Boolean
>
reserveByMix
(
String
mixId
);
ResponseDto
<
Boolean
>
reserveMixByUid
(
String
mixId
);
}
}
liquidnet-bus-service/liquidnet-service-goblin/liquidnet-service-goblin-impl/src/main/java/com/liquidnet/service/goblin/controller/GoblinMixAppController.java
View file @
309ac069
...
@@ -5,6 +5,7 @@ import com.github.xiaoymin.knife4j.annotations.ApiSupport;
...
@@ -5,6 +5,7 @@ import com.github.xiaoymin.knife4j.annotations.ApiSupport;
import
com.liquidnet.commons.lang.util.CurrentUtil
;
import
com.liquidnet.commons.lang.util.CurrentUtil
;
import
com.liquidnet.service.base.ResponseDto
;
import
com.liquidnet.service.base.ResponseDto
;
import
com.liquidnet.service.goblin.dto.vo.*
;
import
com.liquidnet.service.goblin.dto.vo.*
;
import
com.liquidnet.service.goblin.service.manage.IGoblinGoodsAnticipateMgService
;
import
com.liquidnet.service.goblin.service.manage.IGoblinMixAppService
;
import
com.liquidnet.service.goblin.service.manage.IGoblinMixAppService
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiImplicitParam
;
...
@@ -29,6 +30,9 @@ public class GoblinMixAppController {
...
@@ -29,6 +30,9 @@ public class GoblinMixAppController {
@Autowired
@Autowired
IGoblinMixAppService
goblinMixAppService
;
IGoblinMixAppService
goblinMixAppService
;
@Autowired
IGoblinGoodsAnticipateMgService
goblinGoodsAnticipateMgService
;
@ApiOperationSupport
(
order
=
1
)
@ApiOperationSupport
(
order
=
1
)
@ApiOperation
(
value
=
"列表"
)
@ApiOperation
(
value
=
"列表"
)
@ApiImplicitParams
({
@ApiImplicitParams
({
...
@@ -78,4 +82,24 @@ public class GoblinMixAppController {
...
@@ -78,4 +82,24 @@ public class GoblinMixAppController {
public
ResponseDto
<
Boolean
>
mixCanBy
(
@RequestParam
(
value
=
"mixId"
,
required
=
true
)
String
mixId
)
{
public
ResponseDto
<
Boolean
>
mixCanBy
(
@RequestParam
(
value
=
"mixId"
,
required
=
true
)
String
mixId
)
{
return
goblinMixAppService
.
canBy
(
mixId
,
CurrentUtil
.
getCurrentUid
());
return
goblinMixAppService
.
canBy
(
mixId
,
CurrentUtil
.
getCurrentUid
());
}
}
@ApiOperationSupport
(
order
=
6
)
@ApiOperation
(
value
=
"用户预约MIX混合购"
)
@GetMapping
(
"reserveByMix"
)
@ApiImplicitParams
({
@ApiImplicitParam
(
type
=
"form"
,
required
=
true
,
dataType
=
"String"
,
name
=
"mixId"
,
value
=
"混合售id"
),
})
public
ResponseDto
<
Boolean
>
reserveByMix
(
@RequestParam
(
value
=
"mixId"
,
required
=
true
)
String
mixId
)
{
return
goblinGoodsAnticipateMgService
.
reserveByMix
(
mixId
);
}
@ApiOperationSupport
(
order
=
7
)
@ApiOperation
(
value
=
"用户是否预约Mix"
)
@GetMapping
(
"reserveMixByUid"
)
@ApiImplicitParams
({
@ApiImplicitParam
(
type
=
"form"
,
required
=
true
,
dataType
=
"String"
,
name
=
"mixId"
,
value
=
"混合售id"
),
})
public
ResponseDto
<
Boolean
>
reserveMixByUid
(
@RequestParam
(
value
=
"mixId"
,
required
=
true
)
String
mixId
)
{
return
goblinGoodsAnticipateMgService
.
reserveMixByUid
(
mixId
);
}
}
}
liquidnet-bus-service/liquidnet-service-goblin/liquidnet-service-goblin-impl/src/main/java/com/liquidnet/service/goblin/service/impl/GoblinMixAppServiceImpl.java
View file @
309ac069
package
com
.
liquidnet
.
service
.
goblin
.
service
.
impl
;
package
com
.
liquidnet
.
service
.
goblin
.
service
.
impl
;
import
com.alibaba.fastjson.JSON
;
import
com.github.pagehelper.PageInfo
;
import
com.liquidnet.commons.lang.util.CollectionUtil
;
import
com.liquidnet.commons.lang.util.CurrentUtil
;
import
com.liquidnet.commons.lang.util.CurrentUtil
;
import
com.liquidnet.commons.lang.util.DateUtil
;
import
com.liquidnet.commons.lang.util.DateUtil
;
import
com.liquidnet.commons.lang.util.IDGenerator
;
import
com.liquidnet.service.base.ResponseDto
;
import
com.liquidnet.service.base.ResponseDto
;
import
com.liquidnet.service.base.SqlMapping
;
import
com.liquidnet.service.base.constant.MQConst
;
import
com.liquidnet.service.goblin.dto.vo.*
;
import
com.liquidnet.service.goblin.dto.vo.*
;
import
com.liquidnet.service.goblin.param.GoblinMixDetailsItemParam
;
import
com.liquidnet.service.goblin.param.GoblinMixDetailsParam
;
import
com.liquidnet.service.goblin.param.GoblinMixUpdateParam
;
import
com.liquidnet.service.goblin.service.manage.IGoblinMixAppService
;
import
com.liquidnet.service.goblin.service.manage.IGoblinMixAppService
;
import
com.liquidnet.service.goblin.service.manage.IGoblinMixService
;
import
com.liquidnet.service.goblin.util.*
;
import
com.liquidnet.service.goblin.util.*
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang.StringUtils
;
import
org.apache.commons.lang.StringUtils
;
...
@@ -22,12 +12,9 @@ import org.springframework.beans.BeanUtils;
...
@@ -22,12 +12,9 @@ import org.springframework.beans.BeanUtils;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
java.math.BigDecimal
;
import
java.time.LocalDateTime
;
import
java.time.LocalDateTime
;
import
java.util.HashMap
;
import
java.util.HashMap
;
import
java.util.LinkedList
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
import
static
com
.
liquidnet
.
commons
.
lang
.
util
.
DateUtil
.
DTF_YMD_HMS
;
import
static
com
.
liquidnet
.
commons
.
lang
.
util
.
DateUtil
.
DTF_YMD_HMS
;
...
...
liquidnet-bus-service/liquidnet-service-goblin/liquidnet-service-goblin-impl/src/main/java/com/liquidnet/service/goblin/service/impl/manage/GoblinGoodsAnticipateMgServiceImpl.java
View file @
309ac069
...
@@ -14,6 +14,8 @@ import com.liquidnet.service.goblin.dto.manage.GoblinGoodsAnticipateValueParam;
...
@@ -14,6 +14,8 @@ import com.liquidnet.service.goblin.dto.manage.GoblinGoodsAnticipateValueParam;
import
com.liquidnet.service.goblin.dto.manage.vo.AnticipateValueVo
;
import
com.liquidnet.service.goblin.dto.manage.vo.AnticipateValueVo
;
import
com.liquidnet.service.goblin.dto.manage.vo.GoblinGoodsAnticipateValueVo
;
import
com.liquidnet.service.goblin.dto.manage.vo.GoblinGoodsAnticipateValueVo
;
import
com.liquidnet.service.goblin.dto.vo.GoblinGoodsAnticipateVo
;
import
com.liquidnet.service.goblin.dto.vo.GoblinGoodsAnticipateVo
;
import
com.liquidnet.service.goblin.dto.vo.GoblinMixDetailsVo
;
import
com.liquidnet.service.goblin.dto.vo.GoblinMixReserveVo
;
import
com.liquidnet.service.goblin.service.manage.IGoblinGoodsAnticipateMgService
;
import
com.liquidnet.service.goblin.service.manage.IGoblinGoodsAnticipateMgService
;
import
com.liquidnet.service.goblin.util.GoblinAnticipateUtils
;
import
com.liquidnet.service.goblin.util.GoblinAnticipateUtils
;
import
com.liquidnet.service.goblin.util.GoblinMongoUtils
;
import
com.liquidnet.service.goblin.util.GoblinMongoUtils
;
...
@@ -30,6 +32,8 @@ import java.util.HashMap;
...
@@ -30,6 +32,8 @@ import java.util.HashMap;
import
java.util.LinkedList
;
import
java.util.LinkedList
;
import
java.util.List
;
import
java.util.List
;
import
static
com
.
liquidnet
.
commons
.
lang
.
util
.
DateUtil
.
DTF_YMD_HMS
;
/**
/**
* <p>
* <p>
* 预约表 服务实现类
* 预约表 服务实现类
...
@@ -243,4 +247,48 @@ public class GoblinGoodsAnticipateMgServiceImpl implements IGoblinGoodsAnticipat
...
@@ -243,4 +247,48 @@ public class GoblinGoodsAnticipateMgServiceImpl implements IGoblinGoodsAnticipat
sqlStr
);
sqlStr
);
}
}
@Override
public
ResponseDto
<
Boolean
>
reserveByMix
(
String
mixId
)
{
//获取udi
String
uid
=
CurrentUtil
.
getCurrentUid
();
LocalDateTime
now
=
LocalDateTime
.
now
();
//redis查询用户预约组合购记录
if
(
goblinRedisUtils
.
getReserveMixByUid
(
uid
,
mixId
)
==
null
)
{
//该混合狗能否被预约
GoblinMixDetailsVo
mixDetails
=
goblinRedisUtils
.
getMixDetails
(
mixId
);
LocalDateTime
st
=
LocalDateTime
.
parse
(
mixDetails
.
getTimeStartOrShelvesTime
(
mixDetails
),
DTF_YMD_HMS
);
//组合购开启预约且当前时间大于预约购开始时间或者上架时间才可预约
if
(
mixDetails
.
getReserve
()
!=
0
&&
now
.
isBefore
(
st
))
{
GoblinMixReserveVo
goblinMixReserveVo
=
GoblinMixReserveVo
.
getNew
();
goblinMixReserveVo
.
setMixId
(
mixId
);
goblinMixReserveVo
.
setCreatedDate
(
now
);
goblinMixReserveVo
.
setUid
(
uid
);
String
mobile
=
StringUtils
.
defaultString
(((
String
)
CurrentUtil
.
getTokenClaims
().
get
(
CurrentUtil
.
TOKEN_MOBILE
)),
""
);
goblinMixReserveVo
.
setPhone
(
mobile
);
//redis保存用户预约组合购记录
goblinRedisUtils
.
setReserveMixByUid
(
goblinMixReserveVo
);
//sql插入
String
mid
=
IDGenerator
.
nextTimeId2
();
//发送redis消息修改mysql记录用户预约
LinkedList
<
Object
[]>
sqlValue
=
CollectionUtil
.
linkedListObjectArr
();
sqlValue
.
add
(
new
Object
[]{
mid
,
uid
,
mobile
,
mixId
,
0
});
sendRedis
(
"goblin_goods_anticipate_mix"
,
sqlValue
);
}
}
return
ResponseDto
.
success
();
}
@Override
public
ResponseDto
<
Boolean
>
reserveMixByUid
(
String
mixId
)
{
//获取udi
String
uid
=
CurrentUtil
.
getCurrentUid
();
return
ResponseDto
.
success
(
goblinRedisUtils
.
getReserveMixByUid
(
uid
,
mixId
)
!=
null
);
}
}
}
liquidnet-bus-service/liquidnet-service-goblin/liquidnet-service-goblin-impl/src/main/java/com/liquidnet/service/goblin/util/GoblinRedisUtils.java
View file @
309ac069
...
@@ -2593,6 +2593,17 @@ public class GoblinRedisUtils {
...
@@ -2593,6 +2593,17 @@ public class GoblinRedisUtils {
mixIds
.
add
(
mixId
);
mixIds
.
add
(
mixId
);
setGoblinMixSkuStartList
(
mixIds
);
setGoblinMixSkuStartList
(
mixIds
);
}
}
public
void
setReserveMixByUid
(
GoblinMixReserveVo
goblinMixReserveVo
)
{
String
rdk
=
GoblinRedisConst
.
GOBLIN_MIX_RESERVE_UID
.
concat
(
goblinMixReserveVo
.
getMixId
()).
concat
(
":"
).
concat
(
goblinMixReserveVo
.
getUid
());
redisUtil
.
set
(
rdk
,
1
);
}
public
GoblinMixReserveVo
getReserveMixByUid
(
String
uid
,
String
mixId
)
{
return
(
GoblinMixReserveVo
)
redisUtil
.
get
(
GoblinRedisConst
.
GOBLIN_MIX_RESERVE_UID
.
concat
(
mixId
).
concat
(
":"
).
concat
(
uid
));
}
/* ---------------------------------------- ---------------------------------------- */
/* ---------------------------------------- ---------------------------------------- */
/* ---------------------------------------- ---------------------------------------- */
/* ---------------------------------------- ---------------------------------------- */
}
}
liquidnet-bus-service/liquidnet-service-goblin/liquidnet-service-goblin-impl/src/main/resources/sqlmap.properties
View file @
309ac069
...
@@ -142,6 +142,7 @@ goblin_goods_anticipate_help=INSERT INTO goblin_goods_anticipate_help(sid,help_u
...
@@ -142,6 +142,7 @@ goblin_goods_anticipate_help=INSERT INTO goblin_goods_anticipate_help(sid,help_u
goblin_goods_anticipate_share
=
INSERT INTO goblin_goods_anticipate_share(sid,uid,sku_id,created_date) VALUES(?,?,?,?)
goblin_goods_anticipate_share
=
INSERT INTO goblin_goods_anticipate_share(sid,uid,sku_id,created_date) VALUES(?,?,?,?)
goblin_goods_anticipate_user_update
=
UPDATE goblin_goods_anticipate_user SET state = 1 WHERE uid = ? AND sku_id = ?
goblin_goods_anticipate_user_update
=
UPDATE goblin_goods_anticipate_user SET state = 1 WHERE uid = ? AND sku_id = ?
goblin_goods_anticipate_user_update_sku
=
UPDATE goblin_goods_anticipate_user SET state = 1 WHERE sku_id = ?
goblin_goods_anticipate_user_update_sku
=
UPDATE goblin_goods_anticipate_user SET state = 1 WHERE sku_id = ?
goblin_goods_anticipate_mix
=
INSERT INTO goblin_goods_anticipate_mix ( mid, uid, phone, mix_id, state, created_date ) VALUES(?,?,?,?,?,NOW())
#---- \u4E1A\u52A1\u8D26\u53F7\u8BB0\u5F55
#---- \u4E1A\u52A1\u8D26\u53F7\u8BB0\u5F55
adam_user_busi_acct.add
=
INSERT INTO adam_user_busi_acct (`uid`, busi, uuid, `work`, ppwd, `state`, created_at) VALUES (?,?,?,?,?,?,?)
adam_user_busi_acct.add
=
INSERT INTO adam_user_busi_acct (`uid`, busi, uuid, `work`, ppwd, `state`, created_at) VALUES (?,?,?,?,?,?,?)
#---- \u9ED1\u767D\u540D\u5355 ----
#---- \u9ED1\u767D\u540D\u5355 ----
...
...
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