Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Q
qk_backend
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
quanku
qk_backend
Commits
f71d4590
Commit
f71d4590
authored
Nov 14, 2024
by
shiyu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
盲盒专区列表
parent
44fe0598
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
101 additions
and
8 deletions
+101
-8
ch-wx-api/src/main/java/com/wwdz/ch/wx/impl/distribution/BlindBoxServiceImpl.java
...com/wwdz/ch/wx/impl/distribution/BlindBoxServiceImpl.java
+7
-1
ch-wx-api/src/main/java/com/wwdz/ch/wx/impl/distribution/DistributionOrderServiceImpl.java
...ch/wx/impl/distribution/DistributionOrderServiceImpl.java
+17
-5
ch-wx-api/src/main/java/com/wwdz/ch/wx/impl/distribution/SellActivityServiceImpl.java
...wwdz/ch/wx/impl/distribution/SellActivityServiceImpl.java
+42
-0
ch-wx-api/src/main/java/com/wwdz/ch/wx/impl/distribution/SupplierItemServiceImpl.java
...wwdz/ch/wx/impl/distribution/SupplierItemServiceImpl.java
+7
-2
ch-wx-api/src/main/java/com/wwdz/ch/wx/service/distribution/SellActivityService.java
.../wwdz/ch/wx/service/distribution/SellActivityService.java
+15
-0
ch-wx-api/src/main/java/com/wwdz/ch/wx/web/distribution/BlindBoxController.java
...a/com/wwdz/ch/wx/web/distribution/BlindBoxController.java
+13
-0
No files found.
ch-wx-api/src/main/java/com/wwdz/ch/wx/impl/distribution/BlindBoxServiceImpl.java
View file @
f71d4590
...
...
@@ -10,6 +10,7 @@ import com.wwdz.ch.core.util.StringUtil;
import
com.wwdz.ch.db.dao.distribution.DistributionOrderDao
;
import
com.wwdz.ch.db.dao.distribution.ItemSkuDao
;
import
com.wwdz.ch.db.dao.distribution.SupplierItemDao
;
import
com.wwdz.ch.db.domain.Item
;
import
com.wwdz.ch.db.domain.User
;
import
com.wwdz.ch.db.domain.distribution.DistributionOrder
;
import
com.wwdz.ch.db.domain.distribution.ItemSku
;
...
...
@@ -221,7 +222,12 @@ public class BlindBoxServiceImpl implements BlindBoxService {
@Override
public
Result
findSkuDetail
(
ItemSkuRequestDto
dto
)
{
try
{
ItemSku
itemSku
=
itemSkuDao
.
findBySkuCode
(
dto
.
getSkuCode
());
ItemSkuVo
itemSkuVo
=
new
ItemSkuVo
();
EntityMapper
.
copyAttribute
(
itemSku
,
itemSkuVo
);
itemSkuVo
.
setPrice
(
PriceUtil
.
convertPriceFenToYuan
(
itemSku
.
getPrice
()));
itemSkuVo
.
setImages
(
Arrays
.
asList
(
itemSku
.
getImages
().
split
(
";"
)));
return
Result
.
success
(
itemSkuVo
);
}
catch
(
Exception
e
)
{
logger
.
error
(
"查询商品sku详情 error : {}"
,
e
);
}
...
...
ch-wx-api/src/main/java/com/wwdz/ch/wx/impl/distribution/DistributionOrderServiceImpl.java
View file @
f71d4590
...
...
@@ -20,6 +20,7 @@ import com.wwdz.ch.db.domain.distribution.*;
import
com.wwdz.ch.db.dto.request.FollowFansRecordRequestDto
;
import
com.wwdz.ch.db.dto.request.distribution.DistributionOrderRequestDto
;
import
com.wwdz.ch.db.dto.request.distribution.GroupPurchaseRecordRequestDto
;
import
com.wwdz.ch.db.dto.request.distribution.SellActivityRequestDto
;
import
com.wwdz.ch.db.dto.request.distribution.SupplierItemRequestDto
;
import
com.wwdz.ch.core.api.WxAppletApi
;
import
com.wwdz.ch.core.entity.AuctionOfferNoticeMsg
;
...
...
@@ -29,11 +30,8 @@ import com.wwdz.ch.wx.entity.GroupPurchaseInfo;
import
com.wwdz.ch.wx.entity.vo.distribution.DistributionOrderDetailVo
;
import
com.wwdz.ch.wx.entity.vo.distribution.DistributionOrderVo
;
import
com.wwdz.ch.wx.entity.vo.distribution.UserExchangeInfo
;
import
com.wwdz.ch.wx.service.distribution.DistributionOrderService
;
import
com.wwdz.ch.wx.service.distribution.DistributorProfitService
;
import
com.wwdz.ch.wx.service.distribution.*
;
import
com.wwdz.ch.core.service.SendMsgService
;
import
com.wwdz.ch.wx.service.distribution.GroupPurchaseService
;
import
com.wwdz.ch.wx.service.distribution.IdentifyOrderService
;
import
com.wwdz.ch.wx.service.openShop.AuctionEarnestService
;
import
com.xxdxxs.utils.DateUtils
;
import
com.xxdxxs.utils.EntityMapper
;
...
...
@@ -148,6 +146,9 @@ public class DistributionOrderServiceImpl implements DistributionOrderService {
@Autowired
AuctionEarnestService
auctionEarnestService
;
@Autowired
SellActivityService
sellActivityService
;
@Transactional
@Override
public
Result
createDistributionOrder
(
DistributionOrderRequestDto
dto
)
{
...
...
@@ -470,7 +471,18 @@ public class DistributionOrderServiceImpl implements DistributionOrderService {
distributionOrder
.
setBuyerOpenid
(
dto
.
getBuyerOpenid
());
distributionOrder
.
setShopId
(
supplierItem
.
getCreatorId
());
distributionOrder
.
setSellerId
(
supplierItem
.
getCreatorId
());
distributionOrder
.
setAmount
(
supplierItem
.
getDistributionPrice
()
*
dto
.
getItemNum
());
long
orderAmount
=
supplierItem
.
getDistributionPrice
()
*
dto
.
getItemNum
();
//盲盒订单存在优惠活动,特殊处理
if
(
dto
.
getType
()
!=
null
&&
DistributionEnum
.
DistributionTypeEnum
.
BLACK_COLLECTION
.
getCode
()
==
dto
.
getType
())
{
SellActivityRequestDto
sellActivityRequestDto
=
new
SellActivityRequestDto
();
sellActivityRequestDto
.
setOrderAmount
(
orderAmount
);
//查询优惠活动后的订单价格
Result
<
Long
>
result
=
sellActivityService
.
getActivityDiscountPrice
(
sellActivityRequestDto
);
if
(
result
.
getSuccess
())
{
orderAmount
=
result
.
getData
();
}
}
distributionOrder
.
setAmount
(
orderAmount
);
distributionOrder
.
setAddressId
(
dto
.
getAddressId
());
distributionOrder
.
setReceiverAddress
(
dto
.
getReceiverAddress
());
distributionOrder
.
setReceiverName
(
dto
.
getReceiverName
());
...
...
ch-wx-api/src/main/java/com/wwdz/ch/wx/impl/distribution/SellActivityServiceImpl.java
0 → 100644
View file @
f71d4590
package
com.wwdz.ch.wx.impl.distribution
;
import
com.wwdz.ch.core.type.Result
;
import
com.wwdz.ch.db.dao.distribution.SellActivityDao
;
import
com.wwdz.ch.db.domain.distribution.SellActivity
;
import
com.wwdz.ch.db.dto.request.distribution.SellActivityRequestDto
;
import
com.wwdz.ch.wx.service.distribution.SellActivityService
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.Date
;
import
java.util.List
;
@Service
public
class
SellActivityServiceImpl
implements
SellActivityService
{
private
static
final
Logger
logger
=
LoggerFactory
.
getLogger
(
SellActivityServiceImpl
.
class
);
@Autowired
SellActivityDao
sellActivityDao
;
@Override
public
Result
<
Long
>
getActivityDiscountPrice
(
SellActivityRequestDto
dto
)
{
try
{
//优惠活动的起始时间小于当前,结束时间大于当前时间,按照使用门槛倒序排列
dto
.
setCurrentTime
(
new
Date
());
List
<
SellActivity
>
sellActivityList
=
sellActivityDao
.
findList
(
dto
);
long
orderAmount
=
dto
.
getOrderAmount
();
for
(
SellActivity
sellActivity
:
sellActivityList
)
{
if
(
sellActivity
.
getThresholdAmount
()
<=
orderAmount
)
{
return
Result
.
success
(
orderAmount
-
sellActivity
.
getDiscountAmount
());
}
}
return
Result
.
success
(
orderAmount
);
}
catch
(
Exception
e
)
{
logger
.
error
(
"选择活动优惠失败error:{}"
,
e
);
}
return
Result
.
failed
();
}
}
ch-wx-api/src/main/java/com/wwdz/ch/wx/impl/distribution/SupplierItemServiceImpl.java
View file @
f71d4590
...
...
@@ -816,11 +816,12 @@ public class SupplierItemServiceImpl implements SupplierItemService {
if
(!
lock
.
tryLock
(
0
,
1
,
TimeUnit
.
SECONDS
))
{
return
Result
.
failed
(
"操作过快,稍后再试"
);
}
//检查用户历史上传的
long
totalItemNum
=
supplierItemDao
.
countAllItemByCreatorId
(
dto
.
getUserId
(),
null
);
//不在白名单中的用户,上传商品数量有限制
CollectorWhiteList
collectorWhiteList
=
collectorWhiteListDao
.
findById
(
dto
.
getUserId
());
if
(
collectorWhiteList
==
null
||
collectorWhiteList
.
getIsUploadLimit
())
{
//检查用户历史上传的
if
(
supplierItemDao
.
countAllItemByCreatorId
(
dto
.
getUserId
(),
null
)
>=
100
)
{
if
(
totalItemNum
>=
100
)
{
return
Result
.
failed
(
"普通用户最多上传100件商品"
);
}
//用户每天上传商品不可超过10件
...
...
@@ -829,6 +830,10 @@ public class SupplierItemServiceImpl implements SupplierItemService {
if
(
supplierItemDao
.
countAllItemByCreatorId
(
dto
.
getUserId
(),
DateUtils
.
fromLocalDateTime
(
startOfDay
))
>=
10
)
{
return
Result
.
failed
(
"普通用户每天最多上传10件商品"
);
}
}
else
{
if
(
totalItemNum
>=
2000
)
{
return
Result
.
failed
(
"藏家最多上传2000件商品"
);
}
}
SupplierItem
supplierItem
=
new
SupplierItem
();
...
...
ch-wx-api/src/main/java/com/wwdz/ch/wx/service/distribution/SellActivityService.java
0 → 100644
View file @
f71d4590
package
com.wwdz.ch.wx.service.distribution
;
import
com.wwdz.ch.core.type.Result
;
import
com.wwdz.ch.db.dto.request.distribution.SellActivityRequestDto
;
public
interface
SellActivityService
{
/**
* 获取订单折扣后的价格
* 没有合适优惠就返回原订单价格
* @param dto
* @return
*/
Result
getActivityDiscountPrice
(
SellActivityRequestDto
dto
);
}
ch-wx-api/src/main/java/com/wwdz/ch/wx/web/distribution/BlindBoxController.java
View file @
f71d4590
...
...
@@ -4,12 +4,14 @@ package com.wwdz.ch.wx.web.distribution;
import
com.alibaba.fastjson.JSON
;
import
com.wwdz.ch.core.consts.ResultCode
;
import
com.wwdz.ch.core.type.Result
;
import
com.wwdz.ch.db.dto.request.distribution.ItemSkuRequestDto
;
import
com.wwdz.ch.db.dto.request.distribution.SupplierItemRequestDto
;
import
com.wwdz.ch.wx.service.distribution.BlindBoxService
;
import
io.swagger.annotations.ApiOperation
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.util.StringUtils
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
...
...
@@ -49,4 +51,15 @@ public class BlindBoxController {
}
return
blindBoxService
.
findDetail
(
dto
);
}
@ApiOperation
(
value
=
"查询福袋sku详情"
)
@PostMapping
(
"/findSkuDetail"
)
public
Result
findSkuDetail
(
@RequestBody
ItemSkuRequestDto
dto
)
{
logger
.
info
(
"查询福袋sku详情,请求参数:{}"
,
JSON
.
toJSONString
(
dto
));
if
(
StringUtils
.
isEmpty
(
dto
.
getSkuCode
()))
{
return
Result
.
failed
(
ResultCode
.
PARAM_ERROR
);
}
return
blindBoxService
.
findSkuDetail
(
dto
);
}
}
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