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
3deb99dd
Commit
3deb99dd
authored
Jul 29, 2024
by
shiyu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
查询团购进度
parent
617874e3
Changes
7
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
134 additions
and
26 deletions
+134
-26
ch-wx-api/src/main/java/com/wwdz/ch/wx/entity/GroupPurchaseInfo.java
...rc/main/java/com/wwdz/ch/wx/entity/GroupPurchaseInfo.java
+61
-0
ch-wx-api/src/main/java/com/wwdz/ch/wx/entity/vo/distribution/DistributionOrderDetailVo.java
.../wx/entity/vo/distribution/DistributionOrderDetailVo.java
+20
-0
ch-wx-api/src/main/java/com/wwdz/ch/wx/entity/vo/distribution/GroupPurchaseItemVo.java
...wdz/ch/wx/entity/vo/distribution/GroupPurchaseItemVo.java
+2
-1
ch-wx-api/src/main/java/com/wwdz/ch/wx/impl/distribution/DistributionOrderServiceImpl.java
...ch/wx/impl/distribution/DistributionOrderServiceImpl.java
+20
-2
ch-wx-api/src/main/java/com/wwdz/ch/wx/impl/distribution/GroupPurchaseServiceImpl.java
...wdz/ch/wx/impl/distribution/GroupPurchaseServiceImpl.java
+26
-19
ch-wx-api/src/main/java/com/wwdz/ch/wx/impl/distribution/SupplierItemServiceImpl.java
...wwdz/ch/wx/impl/distribution/SupplierItemServiceImpl.java
+3
-3
ch-wx-api/src/main/java/com/wwdz/ch/wx/service/distribution/GroupPurchaseService.java
...wwdz/ch/wx/service/distribution/GroupPurchaseService.java
+2
-1
No files found.
ch-wx-api/src/main/java/com/wwdz/ch/wx/entity/GroupPurchaseInfo.java
0 → 100644
View file @
3deb99dd
package
com.wwdz.ch.wx.entity
;
import
com.xxdxxs.entity.Entity
;
import
lombok.Data
;
import
java.util.Date
;
import
java.util.List
;
@Data
public
class
GroupPurchaseInfo
implements
Entity
{
/**
* 团购优惠要求件数
*/
private
Integer
requireNum
;
/**
* 已达到的件数
*/
private
Integer
itemNum
;
/**
* 参团人数
*/
private
Integer
peopleNum
;
/**
* 定金
*/
private
String
deposit
;
/**
* 商品售价
*/
private
String
salePrice
;
/**
* 参团用户头像
*/
private
List
<
String
>
userAvatarList
;
/**
* 优惠比例
*/
private
String
rebate
;
/**
* 团购结束时间
*/
private
Date
endTime
;
/**
* 团购状态
*/
private
Integer
state
;
/**
* 团购是否成功
*/
private
Boolean
groupPurchaseSuccess
;
}
ch-wx-api/src/main/java/com/wwdz/ch/wx/entity/vo/distribution/DistributionOrderDetailVo.java
View file @
3deb99dd
...
...
@@ -245,4 +245,24 @@ public class DistributionOrderDetailVo implements Entity {
* 平台收货地址
*/
private
String
channelReceiveAddress
;
/**
* 团购定金
*/
private
String
deposit
;
/**
* 团购尾款金额
*/
private
String
surplusAmount
;
/**
* 团购折扣
*/
private
String
discountRebate
;
/**
* 团购结束时间
*/
private
Date
groupPurchaseEndTime
;
}
ch-wx-api/src/main/java/com/wwdz/ch/wx/entity/vo/distribution/GroupPurchaseItemVo.java
View file @
3deb99dd
package
com.wwdz.ch.wx.entity.vo.distribution
;
import
com.wwdz.ch.wx.entity.GroupPurchaseInfo
;
import
com.xxdxxs.entity.Entity
;
import
lombok.Data
;
import
java.util.Map
;
...
...
@@ -54,6 +55,6 @@ public class GroupPurchaseItemVo implements Entity {
/**
* 折扣相关信息、进度
*/
private
Map
<
String
,
Object
>
discountInfo
;
private
GroupPurchaseInfo
discountInfo
;
}
ch-wx-api/src/main/java/com/wwdz/ch/wx/impl/distribution/DistributionOrderServiceImpl.java
View file @
3deb99dd
...
...
@@ -24,11 +24,13 @@ import com.wwdz.ch.db.dto.request.distribution.SupplierItemRequestDto;
import
com.wwdz.ch.core.api.WxAppletApi
;
import
com.wwdz.ch.core.entity.AuctionOfferNoticeMsg
;
import
com.wwdz.ch.core.entity.SignedNoticeMsg
;
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.service.distribution.DistributionOrderService
;
import
com.wwdz.ch.wx.service.distribution.DistributorProfitService
;
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.xxdxxs.utils.DateUtils
;
import
com.xxdxxs.utils.EntityMapper
;
...
...
@@ -131,6 +133,9 @@ public class DistributionOrderServiceImpl implements DistributionOrderService {
@Autowired
GroupPurchaseRecordDao
groupPurchaseRecordDao
;
@Autowired
GroupPurchaseService
groupPurchaseService
;
@Transactional
@Override
public
Result
createDistributionOrder
(
DistributionOrderRequestDto
dto
)
{
...
...
@@ -996,7 +1001,20 @@ public class DistributionOrderServiceImpl implements DistributionOrderService {
distributionOrderDetailVo
.
setHomePageImage
(
MediaUtil
.
getHomePageImage
(
supplierItem
.
getImages
(),
supplierItem
.
getVideos
()));
distributionOrderDetailVo
.
setTypeName
(
DistributionEnum
.
DistributionTypeEnum
.
getNameByCode
(
distributionOrder
.
getType
()));
distributionOrderDetailVo
.
setLogisticsName
(
LogisticsEnum
.
getNameByCode
(
distributionOrder
.
getLogisticsCode
()));
if
(
type
==
DistributionEnum
.
DistributionTypeEnum
.
GROUP_PURCHASE
.
getCode
())
{
GroupPurchaseRecordRequestDto
groupPurchaseRecordRequestDto
=
new
GroupPurchaseRecordRequestDto
();
groupPurchaseRecordRequestDto
.
setItemId
(
distributionOrder
.
getItemId
());
Result
<
GroupPurchaseInfo
>
result
=
groupPurchaseService
.
checkGroupPurchase
(
groupPurchaseRecordRequestDto
);
GroupPurchaseConfig
groupPurchaseConfig
=
groupPurchaseConfigDao
.
findByItemId
(
distributionOrder
.
getItemId
());
distributionOrderDetailVo
.
setDeposit
(
PriceUtil
.
convertPriceFenToYuan
(
groupPurchaseConfig
.
getDeposit
()));
distributionOrderDetailVo
.
setSurplusAmount
(
PriceUtil
.
convertPriceFenToYuan
(
distributionOrder
.
getAmount
()
-
groupPurchaseConfig
.
getDeposit
()));
distributionOrderDetailVo
.
setGroupPurchaseEndTime
(
groupPurchaseConfig
.
getEndTime
());
Date
endTime
=
groupPurchaseConfig
.
getEndTime
();
Instant
instant
=
endTime
.
toInstant
().
plus
(
Duration
.
ofHours
(
24
));
Date
time
=
Date
.
from
(
instant
);
distributionOrderDetailVo
.
setPayEndTime
(
time
);
}
if
(
distributionOrder
.
getType
()
==
DistributionEnum
.
DistributionTypeEnum
.
COLLECT
.
getCode
()
&&
distributionOrder
.
getState
()
==
DistributionEnum
.
DistributionOrderStateEnum
.
CANCEL
.
getCode
())
{
//如果藏家订单是取消状态,查询对应鉴定单信息
...
...
@@ -1017,7 +1035,7 @@ public class DistributionOrderServiceImpl implements DistributionOrderService {
Instant
instant
=
date
.
toInstant
().
plus
(
Duration
.
ofMinutes
(
30
));
Date
time
=
Date
.
from
(
instant
);
distributionOrderDetailVo
.
setPayEndTime
(
time
);
}
else
{
}
else
if
(
type
!=
DistributionEnum
.
DistributionTypeEnum
.
GROUP_PURCHASE
.
getCode
())
{
Instant
instant
=
date
.
toInstant
().
plus
(
Duration
.
ofHours
(
24
));
Date
time
=
Date
.
from
(
instant
);
distributionOrderDetailVo
.
setPayEndTime
(
time
);
...
...
ch-wx-api/src/main/java/com/wwdz/ch/wx/impl/distribution/GroupPurchaseServiceImpl.java
View file @
3deb99dd
...
...
@@ -16,6 +16,7 @@ import com.wwdz.ch.db.dto.request.distribution.DistributionOrderRequestDto;
import
com.wwdz.ch.db.dto.request.distribution.GroupPurchaseConfigRequestDto
;
import
com.wwdz.ch.db.dto.request.distribution.GroupPurchaseRecordRequestDto
;
import
com.wwdz.ch.db.dto.request.distribution.SpecialPerformanceRequestDto
;
import
com.wwdz.ch.wx.entity.GroupPurchaseInfo
;
import
com.wwdz.ch.wx.entity.vo.distribution.GroupPurchaseItemVo
;
import
com.wwdz.ch.wx.service.distribution.DistributorProfitService
;
import
com.wwdz.ch.wx.service.distribution.GroupPurchaseService
;
...
...
@@ -98,12 +99,11 @@ public class GroupPurchaseServiceImpl implements GroupPurchaseService {
groupPurchaseItemVo
.
setHomePageImage
(
MediaUtil
.
getHomePageImage
(
supplierItem
.
getImages
(),
supplierItem
.
getVideos
()));
GroupPurchaseRecordRequestDto
groupPurchaseRecordRequestDto
=
new
GroupPurchaseRecordRequestDto
();
groupPurchaseRecordRequestDto
.
setItemId
(
groupPurchaseConfig
.
getItemId
());
Result
<
Map
<
String
,
Object
>
>
result
=
checkGroupPurchase
(
groupPurchaseRecordRequestDto
);
Result
<
GroupPurchaseInfo
>
result
=
checkGroupPurchase
(
groupPurchaseRecordRequestDto
);
if
(!
result
.
getSuccess
())
{
continue
;
}
Map
<
String
,
Object
>
map
=
result
.
getData
();
groupPurchaseItemVo
.
setDiscountInfo
(
map
);
groupPurchaseItemVo
.
setDiscountInfo
(
result
.
getData
());
groupPurchaseItemVos
.
add
(
groupPurchaseItemVo
);
}
return
Result
.
success
(
groupPurchaseItemVos
);
...
...
@@ -129,12 +129,11 @@ public class GroupPurchaseServiceImpl implements GroupPurchaseService {
groupPurchaseItemVo
.
setHomePageImage
(
MediaUtil
.
getHomePageImage
(
supplierItem
.
getImages
(),
supplierItem
.
getVideos
()));
GroupPurchaseRecordRequestDto
groupPurchaseRecordRequestDto
=
new
GroupPurchaseRecordRequestDto
();
groupPurchaseRecordRequestDto
.
setItemId
(
itemId
);
Result
<
Map
<
String
,
Object
>
>
result
=
checkGroupPurchase
(
groupPurchaseRecordRequestDto
);
Result
<
GroupPurchaseInfo
>
result
=
checkGroupPurchase
(
groupPurchaseRecordRequestDto
);
if
(!
result
.
getSuccess
())
{
return
Result
.
failed
(
"查询团购信息错误"
);
}
Map
<
String
,
Object
>
map
=
result
.
getData
();
groupPurchaseItemVo
.
setDiscountInfo
(
map
);
groupPurchaseItemVo
.
setDiscountInfo
(
result
.
getData
());
groupPurchaseItemVo
.
setIsSubscribedOfCloseToSuccess
(
disposableSubscribeRecordDao
.
isSubscribed
(
dto
.
getUserId
(),
itemId
,
DisposableSubscribeRecordEnum
.
TypeEnum
.
GROUPPURASE_CLOSER_TO_SUCCESS
.
getType
()));
groupPurchaseItemVo
.
setIsSubscribedOfPay
(
disposableSubscribeRecordDao
.
isSubscribed
(
dto
.
getUserId
(),
itemId
,
DisposableSubscribeRecordEnum
.
TypeEnum
.
GROUPPURASE_SURPLUS_AMOUNT_PAY
.
getType
()));
return
Result
.
success
(
groupPurchaseItemVo
);
...
...
@@ -238,7 +237,7 @@ public class GroupPurchaseServiceImpl implements GroupPurchaseService {
}
@Override
public
Result
checkGroupPurchase
(
GroupPurchaseRecordRequestDto
dto
)
{
public
Result
<
GroupPurchaseInfo
>
checkGroupPurchase
(
GroupPurchaseRecordRequestDto
dto
)
{
try
{
//默认团购数量没达到要求,没有折扣
BigDecimal
rebate
=
new
BigDecimal
(
"1"
);
...
...
@@ -270,30 +269,38 @@ public class GroupPurchaseServiceImpl implements GroupPurchaseService {
if
(
itemNum
>=
requireNum
)
{
rebate
=
groupPurchaseDiscount
.
getRebate
();
}
GroupPurchaseInfo
groupPurchaseInfo
=
new
GroupPurchaseInfo
();
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"requireNum"
,
requireNum
);
map
.
put
(
"itemNum"
,
itemNum
);
map
.
put
(
"peopleNum"
,
peopleNum
);
map
.
put
(
"deposit"
,
PriceUtil
.
convertPriceFenToYuan
(
groupPurchaseConfig
.
getDeposit
()));
map
.
put
(
"rebate"
,
rebate
);
map
.
put
(
"endTime"
,
groupPurchaseConfig
.
getEndTime
());
map
.
put
(
"salePrice"
,
PriceUtil
.
convertPriceFenToYuan
(
groupPurchaseConfig
.
getPrice
()));
map
.
put
(
"userAvatarList"
,
userAvatarList
);
if
(
itemNum
>=
requireNum
)
{
groupPurchaseInfo
.
setGroupPurchaseSuccess
(
true
);
}
else
{
groupPurchaseInfo
.
setGroupPurchaseSuccess
(
false
);
}
groupPurchaseInfo
.
setRequireNum
(
requireNum
);
groupPurchaseInfo
.
setItemNum
((
int
)
itemNum
);
groupPurchaseInfo
.
setPeopleNum
((
int
)
peopleNum
);
groupPurchaseInfo
.
setDeposit
(
PriceUtil
.
convertPriceFenToYuan
(
groupPurchaseConfig
.
getDeposit
()));
groupPurchaseInfo
.
setRebate
(
rebate
.
toPlainString
());
groupPurchaseInfo
.
setEndTime
(
groupPurchaseConfig
.
getEndTime
());
groupPurchaseInfo
.
setSalePrice
(
PriceUtil
.
convertPriceFenToYuan
(
groupPurchaseConfig
.
getPrice
()));
groupPurchaseInfo
.
setUserAvatarList
(
userAvatarList
);
Date
now
=
new
Date
();
if
(
groupPurchaseConfig
.
getStartTime
().
after
(
now
)
&&
groupPurchaseConfig
.
getEndTime
().
after
(
now
))
{
map
.
put
(
"state"
,
GroupPurchaseEnum
.
ItemStateEnum
.
PROCESSING
);
groupPurchaseInfo
.
setState
(
GroupPurchaseEnum
.
ItemStateEnum
.
PROCESSING
.
getCode
()
);
}
else
if
(
groupPurchaseConfig
.
getEndTime
().
before
(
now
))
{
map
.
put
(
"state"
,
GroupPurchaseEnum
.
ItemStateEnum
.
END
);
groupPurchaseInfo
.
setState
(
GroupPurchaseEnum
.
ItemStateEnum
.
END
.
getCode
()
);
}
else
{
map
.
put
(
"state"
,
GroupPurchaseEnum
.
ItemStateEnum
.
NOT_START
);
groupPurchaseInfo
.
setState
(
GroupPurchaseEnum
.
ItemStateEnum
.
NOT_START
.
getCode
()
);
}
return
Result
.
success
(
map
);
return
Result
.
success
(
groupPurchaseInfo
);
}
catch
(
Exception
e
)
{
logger
.
error
(
"查询团购进度失败 error : {}"
,
e
);
}
return
Result
.
failed
(
"查询团购进度失败"
);
}
@Override
@Transactional
public
Result
calculateProfit
(
GroupPurchaseRecordRequestDto
dto
)
{
...
...
ch-wx-api/src/main/java/com/wwdz/ch/wx/impl/distribution/SupplierItemServiceImpl.java
View file @
3deb99dd
...
...
@@ -19,6 +19,7 @@ import com.wwdz.ch.db.dto.request.distribution.*;
import
com.wwdz.ch.core.entity.SupplierItemVo
;
import
com.wwdz.ch.wx.aspect.AddBrowseLog
;
import
com.wwdz.ch.wx.constant.CollectionBookConstants
;
import
com.wwdz.ch.wx.entity.GroupPurchaseInfo
;
import
com.wwdz.ch.wx.entity.vo.distribution.AuctionDetailVo
;
import
com.wwdz.ch.wx.entity.vo.distribution.AuctionRecordRowVo
;
import
com.wwdz.ch.wx.service.FollowFansRecordService
;
...
...
@@ -1007,14 +1008,13 @@ public class SupplierItemServiceImpl implements SupplierItemService {
supplierItemVo
.
setHomePageImage
(
MediaUtil
.
getHomePageImage
(
supplierItem
.
getImages
(),
supplierItem
.
getVideos
()));
GroupPurchaseRecordRequestDto
groupPurchaseRecordRequestDto
=
new
GroupPurchaseRecordRequestDto
();
groupPurchaseRecordRequestDto
.
setItemId
(
itemId
);
Result
<
Map
<
String
,
Object
>
>
result
=
groupPurchaseService
.
checkGroupPurchase
(
groupPurchaseRecordRequestDto
);
Result
<
GroupPurchaseInfo
>
result
=
groupPurchaseService
.
checkGroupPurchase
(
groupPurchaseRecordRequestDto
);
if
(!
result
.
getSuccess
())
{
return
Result
.
failed
(
"查询商品团购信息失败"
);
}
Map
<
String
,
Object
>
map
=
result
.
getData
();
Map
<
String
,
Object
>
resultData
=
new
HashMap
<>();
resultData
.
put
(
"itemInfo"
,
supplierItemVo
);
resultData
.
put
(
"groupPurchaseInfo"
,
map
);
resultData
.
put
(
"groupPurchaseInfo"
,
result
.
getData
()
);
return
Result
.
success
(
resultData
);
}
catch
(
Exception
e
)
{
logger
.
error
(
"查询团购藏品详情 error : {}"
,
e
);
...
...
ch-wx-api/src/main/java/com/wwdz/ch/wx/service/distribution/GroupPurchaseService.java
View file @
3deb99dd
...
...
@@ -3,6 +3,7 @@ package com.wwdz.ch.wx.service.distribution;
import
com.wwdz.ch.core.type.Result
;
import
com.wwdz.ch.db.dto.request.distribution.GroupPurchaseConfigRequestDto
;
import
com.wwdz.ch.db.dto.request.distribution.GroupPurchaseRecordRequestDto
;
import
com.wwdz.ch.wx.entity.GroupPurchaseInfo
;
import
java.util.Map
;
...
...
@@ -45,7 +46,7 @@ public interface GroupPurchaseService {
* @param dto
* @return
*/
Result
<
Map
<
String
,
Object
>
>
checkGroupPurchase
(
GroupPurchaseRecordRequestDto
dto
);
Result
<
GroupPurchaseInfo
>
checkGroupPurchase
(
GroupPurchaseRecordRequestDto
dto
);
Result
calculateProfit
(
GroupPurchaseRecordRequestDto
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