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
15abe8ac
Commit
15abe8ac
authored
Jul 31, 2024
by
shiyu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
团购商品列表2
parent
4dd4c6ca
Changes
18
Show whitespace changes
Inline
Side-by-side
Showing
18 changed files
with
211 additions
and
55 deletions
+211
-55
ch-dao/src/main/java/com/wwdz/ch/db/dao/distribution/UserAccountDetailDao.java
...com/wwdz/ch/db/dao/distribution/UserAccountDetailDao.java
+5
-0
ch-dao/src/main/java/com/wwdz/ch/db/dto/request/distribution/SupplierItemRequestDto.java
...h/db/dto/request/distribution/SupplierItemRequestDto.java
+2
-0
ch-dao/src/main/java/com/wwdz/ch/db/impl/distribution/UserAccountDetailDaoImpl.java
...wdz/ch/db/impl/distribution/UserAccountDetailDaoImpl.java
+2
-0
ch-dao/src/main/java/com/wwdz/ch/db/mapper/distribution/UserAccountDetailMapper.java
...dz/ch/db/mapper/distribution/UserAccountDetailMapper.java
+3
-0
ch-dao/src/main/resources/com/wwdz/ch/db/mapper/distribution/GroupPurchaseRecordMapper.xml
...z/ch/db/mapper/distribution/GroupPurchaseRecordMapper.xml
+1
-1
ch-dao/src/main/resources/com/wwdz/ch/db/mapper/distribution/UserAccountDetailMapper.xml
...wdz/ch/db/mapper/distribution/UserAccountDetailMapper.xml
+7
-0
ch-wx-api/src/main/java/com/wwdz/ch/wx/config/WebMvcConfiguration.java
.../main/java/com/wwdz/ch/wx/config/WebMvcConfiguration.java
+1
-1
ch-wx-api/src/main/java/com/wwdz/ch/wx/entity/GroupPurchaseInfo.java
...rc/main/java/com/wwdz/ch/wx/entity/GroupPurchaseInfo.java
+0
-10
ch-wx-api/src/main/java/com/wwdz/ch/wx/entity/vo/distribution/GroupPurchaseItemVo.java
...wdz/ch/wx/entity/vo/distribution/GroupPurchaseItemVo.java
+26
-2
ch-wx-api/src/main/java/com/wwdz/ch/wx/impl/distribution/DistributionOrderServiceImpl.java
...ch/wx/impl/distribution/DistributionOrderServiceImpl.java
+17
-1
ch-wx-api/src/main/java/com/wwdz/ch/wx/impl/distribution/GroupPurchaseServiceImpl.java
...wdz/ch/wx/impl/distribution/GroupPurchaseServiceImpl.java
+78
-25
ch-wx-api/src/main/java/com/wwdz/ch/wx/impl/distribution/UserAccountDetailServiceImpl.java
...ch/wx/impl/distribution/UserAccountDetailServiceImpl.java
+26
-2
ch-wx-api/src/main/java/com/wwdz/ch/wx/job/GroupPurchaseJob.java
...pi/src/main/java/com/wwdz/ch/wx/job/GroupPurchaseJob.java
+27
-5
ch-wx-api/src/main/java/com/wwdz/ch/wx/service/distribution/DistributionOrderService.java
.../ch/wx/service/distribution/DistributionOrderService.java
+1
-1
ch-wx-api/src/main/java/com/wwdz/ch/wx/service/distribution/GroupPurchaseService.java
...wwdz/ch/wx/service/distribution/GroupPurchaseService.java
+2
-1
ch-wx-api/src/main/java/com/wwdz/ch/wx/service/distribution/UserAccountDetailService.java
.../ch/wx/service/distribution/UserAccountDetailService.java
+10
-1
ch-wx-api/src/main/java/com/wwdz/ch/wx/web/distribution/DistributionOrderController.java
...z/ch/wx/web/distribution/DistributionOrderController.java
+1
-1
ch-wx-api/src/main/java/com/wwdz/ch/wx/web/distribution/GroupPurchaseController.java
.../wwdz/ch/wx/web/distribution/GroupPurchaseController.java
+2
-4
No files found.
ch-dao/src/main/java/com/wwdz/ch/db/dao/distribution/UserAccountDetailDao.java
View file @
15abe8ac
...
@@ -19,6 +19,7 @@ public interface UserAccountDetailDao {
...
@@ -19,6 +19,7 @@ public interface UserAccountDetailDao {
/**
/**
* 根据交易id和收支类型查询账单明细
* 根据交易id和收支类型查询账单明细
*
* @param transactionId
* @param transactionId
* @param type
* @param type
* @return
* @return
...
@@ -27,8 +28,12 @@ public interface UserAccountDetailDao {
...
@@ -27,8 +28,12 @@ public interface UserAccountDetailDao {
/**
/**
* 按照筛选条件汇总账户金额
* 按照筛选条件汇总账户金额
*
* @param dto
* @param dto
* @return
* @return
*/
*/
long
summaryAmount
(
UserAccountDetailRequestDto
dto
);
long
summaryAmount
(
UserAccountDetailRequestDto
dto
);
}
}
ch-dao/src/main/java/com/wwdz/ch/db/dto/request/distribution/SupplierItemRequestDto.java
View file @
15abe8ac
...
@@ -18,6 +18,8 @@ public class SupplierItemRequestDto extends BaseRequestDto implements Entity {
...
@@ -18,6 +18,8 @@ public class SupplierItemRequestDto extends BaseRequestDto implements Entity {
*/
*/
private
Long
id
;
private
Long
id
;
private
Long
itemId
;
/**
/**
* 批量操作,逗号分隔
* 批量操作,逗号分隔
*/
*/
...
...
ch-dao/src/main/java/com/wwdz/ch/db/impl/distribution/UserAccountDetailDaoImpl.java
View file @
15abe8ac
...
@@ -98,4 +98,6 @@ public class UserAccountDetailDaoImpl implements UserAccountDetailDao {
...
@@ -98,4 +98,6 @@ public class UserAccountDetailDaoImpl implements UserAccountDetailDao {
JdbcHelper
.
ifPresent
(
dto
.
getFundType
(),
criteria:
:
andFundTypeEqualTo
);
JdbcHelper
.
ifPresent
(
dto
.
getFundType
(),
criteria:
:
andFundTypeEqualTo
);
return
userAccountDetailMapper
.
summaryAmount
(
example
);
return
userAccountDetailMapper
.
summaryAmount
(
example
);
}
}
}
}
ch-dao/src/main/java/com/wwdz/ch/db/mapper/distribution/UserAccountDetailMapper.java
View file @
15abe8ac
...
@@ -69,5 +69,8 @@ public interface UserAccountDetailMapper {
...
@@ -69,5 +69,8 @@ public interface UserAccountDetailMapper {
long
summaryAmount
(
UserAccountDetailExample
example
);
long
summaryAmount
(
UserAccountDetailExample
example
);
long
summaryIntroduceAmount
(
UserAccountDetailExample
example
);
}
}
\ No newline at end of file
ch-dao/src/main/resources/com/wwdz/ch/db/mapper/distribution/GroupPurchaseRecordMapper.xml
View file @
15abe8ac
...
@@ -101,7 +101,7 @@
...
@@ -101,7 +101,7 @@
@project https://github.com/itfsw/mybatis-generator-plugin
@project https://github.com/itfsw/mybatis-generator-plugin
-->
-->
select
select
'true' as QUERYID,
<if
test=
"example.distinct"
>
<if
test=
"example.distinct"
>
distinct
distinct
</if>
</if>
...
...
ch-dao/src/main/resources/com/wwdz/ch/db/mapper/distribution/UserAccountDetailMapper.xml
View file @
15abe8ac
...
@@ -375,4 +375,11 @@
...
@@ -375,4 +375,11 @@
<include
refid=
"Example_Where_Clause"
/>
<include
refid=
"Example_Where_Clause"
/>
</if>
</if>
</select>
</select>
<select
id=
"summaryIntroduceAmount"
parameterType=
"com.wwdz.ch.db.domain.distribution.UserAccountDetailExample"
resultType=
"java.lang.Long"
>
select IFNULL(sum(amount), 0) as totalAmount from user_account_detail
<if
test=
"_parameter != null"
>
<include
refid=
"Example_Where_Clause"
/>
</if>
</select>
</mapper>
</mapper>
\ No newline at end of file
ch-wx-api/src/main/java/com/wwdz/ch/wx/config/WebMvcConfiguration.java
View file @
15abe8ac
...
@@ -45,7 +45,7 @@ public class WebMvcConfiguration implements WebMvcConfigurer {
...
@@ -45,7 +45,7 @@ public class WebMvcConfiguration implements WebMvcConfigurer {
"/wx/returnOrder/**"
,
"/wx/distributionOrder/confirmSigned"
,
"/wx/distributionOrder/delivery"
,
"/wx/distributionOrder/cancel"
,
"/wx/returnOrder/**"
,
"/wx/distributionOrder/confirmSigned"
,
"/wx/distributionOrder/delivery"
,
"/wx/distributionOrder/cancel"
,
"/wx/distributionOrder/refund"
,
"/wx/distributionOrder/refund"
,
"/wx/supplierItem/findItemsOfCurrentDistributor"
,
"/wx/selfPage/updateSwitch"
,
"/wx/supplierItem/findHomePage"
,
"/wx/supplierItem/findItemsOfCurrentDistributor"
,
"/wx/selfPage/updateSwitch"
,
"/wx/supplierItem/findHomePage"
,
"/wx/specialPerformance/sendMsg"
,
"/wx/specialPerformance/sendMsgTest"
"/wx/specialPerformance/sendMsg"
,
"/wx/specialPerformance/sendMsgTest"
,
"/wx/groupPurchase/**"
//下列路径上线注释
//下列路径上线注释
/*,"/wx/specialPerformance/**"
/*,"/wx/specialPerformance/**"
, "/wx/supplierItem/**", "/wx/shareRecord/**", "/wx/distributionOrder/**", "/wx/selfPage/**", "/wx/auctionRecord/**",
, "/wx/supplierItem/**", "/wx/shareRecord/**", "/wx/distributionOrder/**", "/wx/selfPage/**", "/wx/auctionRecord/**",
...
...
ch-wx-api/src/main/java/com/wwdz/ch/wx/entity/GroupPurchaseInfo.java
View file @
15abe8ac
...
@@ -24,21 +24,11 @@ public class GroupPurchaseInfo implements Entity {
...
@@ -24,21 +24,11 @@ public class GroupPurchaseInfo implements Entity {
*/
*/
private
Integer
peopleNum
;
private
Integer
peopleNum
;
/**
* 定金
*/
private
String
deposit
;
/**
/**
* 商品售价
* 商品售价
*/
*/
private
String
salePrice
;
private
String
salePrice
;
/**
* 参团用户头像
*/
private
List
<
String
>
userAvatarList
;
/**
/**
* 进度比例
* 进度比例
*/
*/
...
...
ch-wx-api/src/main/java/com/wwdz/ch/wx/entity/vo/distribution/GroupPurchaseItemVo.java
View file @
15abe8ac
...
@@ -33,6 +33,16 @@ public class GroupPurchaseItemVo implements Entity {
...
@@ -33,6 +33,16 @@ public class GroupPurchaseItemVo implements Entity {
*/
*/
private
String
creatorAvatar
;
private
String
creatorAvatar
;
/**
* 商品图片
*/
private
String
images
;
/**
* 商品视频
*/
private
String
videos
;
/**
/**
* 简介
* 简介
*/
*/
...
@@ -48,13 +58,27 @@ public class GroupPurchaseItemVo implements Entity {
...
@@ -48,13 +58,27 @@ public class GroupPurchaseItemVo implements Entity {
private
Boolean
isSubscribedOfCloseToSuccess
;
private
Boolean
isSubscribedOfCloseToSuccess
;
/**
/**
*
是否订阅了尾款支付提醒消息
*
团购状态
*/
*/
private
Boolean
isSubscribedOfPay
;
private
Integer
state
;
private
String
stateName
;
/**
/**
* 团购进度
* 团购进度
*/
*/
private
GroupPurchaseInfo
rateInfo
;
private
GroupPurchaseInfo
rateInfo
;
private
String
ruleUrl
;
/**
* 商品类型
*/
private
Integer
type
;
private
String
wxQrcode
;
/**
* 限购数量
*/
private
Integer
buyLimitNum
;
}
}
ch-wx-api/src/main/java/com/wwdz/ch/wx/impl/distribution/DistributionOrderServiceImpl.java
View file @
15abe8ac
...
@@ -489,9 +489,20 @@ public class DistributionOrderServiceImpl implements DistributionOrderService {
...
@@ -489,9 +489,20 @@ public class DistributionOrderServiceImpl implements DistributionOrderService {
@Override
@Override
public
Result
createGroupPurchaseOrder
(
GroupPurchaseRecord
RequestDto
dto
)
{
public
Result
createGroupPurchaseOrder
(
DistributionOrder
RequestDto
dto
)
{
try
{
try
{
long
itemId
=
dto
.
getItemId
();
long
itemId
=
dto
.
getItemId
();
GroupPurchaseRecordRequestDto
groupPurchaseRecordRequestDto
=
new
GroupPurchaseRecordRequestDto
();
groupPurchaseRecordRequestDto
.
setItemId
(
itemId
);
groupPurchaseRecordRequestDto
.
setUserId
(
dto
.
getUserId
());
long
buyNum
=
groupPurchaseRecordDao
.
summaryItemNum
(
groupPurchaseRecordRequestDto
);
GroupPurchaseConfig
groupPurchaseConfig
=
groupPurchaseConfigDao
.
findByItemId
(
itemId
);
int
limit
=
groupPurchaseConfig
.
getLimitNum
();
if
(
limit
!=
-
1
&&
(
buyNum
+
dto
.
getItemNum
())
>
limit
)
{
return
Result
.
failed
(
"超出购买上限"
);
}
SupplierItem
supplierItem
=
supplierItemDao
.
findById
(
itemId
);
SupplierItem
supplierItem
=
supplierItemDao
.
findById
(
itemId
);
//查询该用户和藏家的介绍人
//查询该用户和藏家的介绍人
FollowFansRecordRequestDto
followFansRecordRequestDto
=
new
FollowFansRecordRequestDto
();
FollowFansRecordRequestDto
followFansRecordRequestDto
=
new
FollowFansRecordRequestDto
();
...
@@ -528,6 +539,10 @@ public class DistributionOrderServiceImpl implements DistributionOrderService {
...
@@ -528,6 +539,10 @@ public class DistributionOrderServiceImpl implements DistributionOrderService {
distributionOrder
.
setShopId
(
supplierItem
.
getCreatorId
());
distributionOrder
.
setShopId
(
supplierItem
.
getCreatorId
());
distributionOrder
.
setSellerId
(
supplierItem
.
getCreatorId
());
distributionOrder
.
setSellerId
(
supplierItem
.
getCreatorId
());
distributionOrder
.
setAmount
(
PriceUtil
.
convertPriceFromStr
(
dto
.
getAmount
()));
distributionOrder
.
setAmount
(
PriceUtil
.
convertPriceFromStr
(
dto
.
getAmount
()));
distributionOrder
.
setAddressId
(
dto
.
getAddressId
());
distributionOrder
.
setReceiverAddress
(
dto
.
getReceiverAddress
());
distributionOrder
.
setReceiverName
(
dto
.
getReceiverName
());
distributionOrder
.
setReceiverPhone
(
dto
.
getReceiverPhone
());
distributionOrder
.
setCreateTime
(
new
Date
());
distributionOrder
.
setCreateTime
(
new
Date
());
distributionOrder
.
setUpdateTime
(
new
Date
());
distributionOrder
.
setUpdateTime
(
new
Date
());
distributionOrder
.
setState
(
DistributionEnum
.
DistributionOrderStateEnum
.
PRE_PAY
.
getCode
());
distributionOrder
.
setState
(
DistributionEnum
.
DistributionOrderStateEnum
.
PRE_PAY
.
getCode
());
...
@@ -538,6 +553,7 @@ public class DistributionOrderServiceImpl implements DistributionOrderService {
...
@@ -538,6 +553,7 @@ public class DistributionOrderServiceImpl implements DistributionOrderService {
String
depositPayId
=
IdUtils
.
getOrderNumber
(
CommConsts
.
GROUPPURCHASE_DEPOSIT_PREFIX
);
String
depositPayId
=
IdUtils
.
getOrderNumber
(
CommConsts
.
GROUPPURCHASE_DEPOSIT_PREFIX
);
GroupPurchaseRecord
groupPurchaseRecord
=
new
GroupPurchaseRecord
();
GroupPurchaseRecord
groupPurchaseRecord
=
new
GroupPurchaseRecord
();
groupPurchaseRecord
.
setDepositPayId
(
depositPayId
);
groupPurchaseRecord
.
setDepositPayId
(
depositPayId
);
groupPurchaseRecord
.
setDistributionOrderId
(
distributionOrderId
);
groupPurchaseRecord
.
setPrepayId
(
prepayId
);
groupPurchaseRecord
.
setPrepayId
(
prepayId
);
groupPurchaseRecord
.
setItemId
(
distributionOrder
.
getItemId
());
groupPurchaseRecord
.
setItemId
(
distributionOrder
.
getItemId
());
groupPurchaseRecord
.
setItemNum
(
distributionOrder
.
getItemNum
());
groupPurchaseRecord
.
setItemNum
(
distributionOrder
.
getItemNum
());
...
...
ch-wx-api/src/main/java/com/wwdz/ch/wx/impl/distribution/GroupPurchaseServiceImpl.java
View file @
15abe8ac
package
com.wwdz.ch.wx.impl.distribution
;
package
com.wwdz.ch.wx.impl.distribution
;
import
com.github.pagehelper.PageInfo
;
import
com.wechat.pay.java.service.refund.model.Refund
;
import
com.wechat.pay.java.service.refund.model.Refund
;
import
com.wechat.pay.java.service.refund.model.Status
;
import
com.wechat.pay.java.service.refund.model.Status
;
import
com.wwdz.ch.core.api.wxpay.WxPayServiceApi
;
import
com.wwdz.ch.core.api.wxpay.WxPayServiceApi
;
import
com.wwdz.ch.core.consts.*
;
import
com.wwdz.ch.core.consts.*
;
import
com.wwdz.ch.core.entity.wxPay.DistributionOrderRefundRequestDto
;
import
com.wwdz.ch.core.entity.wxPay.DistributionOrderRefundRequestDto
;
import
com.wwdz.ch.core.type.PageSearchResult
;
import
com.wwdz.ch.core.type.Result
;
import
com.wwdz.ch.core.type.Result
;
import
com.wwdz.ch.core.util.*
;
import
com.wwdz.ch.core.util.*
;
import
com.wwdz.ch.db.dao.DisposableSubscribeRecordDao
;
import
com.wwdz.ch.db.dao.DisposableSubscribeRecordDao
;
...
@@ -15,11 +17,14 @@ import com.wwdz.ch.db.dto.request.FollowFansRecordRequestDto;
...
@@ -15,11 +17,14 @@ 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.DistributionOrderRequestDto
;
import
com.wwdz.ch.db.dto.request.distribution.GroupPurchaseConfigRequestDto
;
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.GroupPurchaseRecordRequestDto
;
import
com.wwdz.ch.db.dto.request.distribution.SupplierItemRequestDto
;
import
com.wwdz.ch.wx.entity.GroupPurchaseInfo
;
import
com.wwdz.ch.wx.entity.GroupPurchaseInfo
;
import
com.wwdz.ch.wx.entity.vo.distribution.GroupPurchaseItemVo
;
import
com.wwdz.ch.wx.entity.vo.distribution.GroupPurchaseItemVo
;
import
com.wwdz.ch.wx.service.FollowFansRecordService
;
import
com.wwdz.ch.wx.service.distribution.DistributorProfitService
;
import
com.wwdz.ch.wx.service.distribution.DistributorProfitService
;
import
com.wwdz.ch.wx.service.distribution.GroupPurchaseService
;
import
com.wwdz.ch.wx.service.distribution.GroupPurchaseService
;
import
com.wwdz.ch.wx.service.distribution.UserAccountDetailService
;
import
com.wwdz.ch.wx.service.distribution.UserAccountDetailService
;
import
com.xxdxxs.utils.StringUtils
;
import
org.redisson.api.RLock
;
import
org.redisson.api.RLock
;
import
org.slf4j.Logger
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.slf4j.LoggerFactory
;
...
@@ -27,7 +32,6 @@ import org.springframework.beans.factory.annotation.Autowired;
...
@@ -27,7 +32,6 @@ import org.springframework.beans.factory.annotation.Autowired;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.interceptor.TransactionAspectSupport
;
import
org.springframework.transaction.interceptor.TransactionAspectSupport
;
import
org.springframework.util.StringUtils
;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
import
java.util.*
;
import
java.util.*
;
...
@@ -70,6 +74,12 @@ public class GroupPurchaseServiceImpl implements GroupPurchaseService {
...
@@ -70,6 +74,12 @@ public class GroupPurchaseServiceImpl implements GroupPurchaseService {
@Autowired
@Autowired
UserAccountDetailService
userAccountDetailService
;
UserAccountDetailService
userAccountDetailService
;
@Autowired
CollectionShareRecordDao
collectionShareRecordDao
;
@Autowired
FollowFansRecordService
followFansRecordService
;
@Override
@Override
public
Result
findList
(
GroupPurchaseConfigRequestDto
dto
)
{
public
Result
findList
(
GroupPurchaseConfigRequestDto
dto
)
{
try
{
try
{
...
@@ -78,22 +88,32 @@ public class GroupPurchaseServiceImpl implements GroupPurchaseService {
...
@@ -78,22 +88,32 @@ public class GroupPurchaseServiceImpl implements GroupPurchaseService {
dto
.
setState
(
GroupPurchaseEnum
.
ItemStateEnum
.
NOT_START
.
getCode
());
dto
.
setState
(
GroupPurchaseEnum
.
ItemStateEnum
.
NOT_START
.
getCode
());
List
<
GroupPurchaseConfig
>
groupPurchaseConfigList
=
groupPurchaseConfigDao
.
findList
(
dto
);
List
<
GroupPurchaseConfig
>
groupPurchaseConfigList
=
groupPurchaseConfigDao
.
findList
(
dto
);
for
(
GroupPurchaseConfig
groupPurchaseConfig
:
groupPurchaseConfigList
)
{
for
(
GroupPurchaseConfig
groupPurchaseConfig
:
groupPurchaseConfigList
)
{
if
(
groupPurchaseConfig
.
getStartTime
()
!=
null
&&
groupPurchaseConfig
.
getEndTime
()
!=
null
)
{
if
(
now
.
after
(
groupPurchaseConfig
.
getStartTime
())
&&
groupPurchaseConfig
.
getEndTime
().
after
(
now
))
{
if
(
now
.
after
(
groupPurchaseConfig
.
getStartTime
())
&&
groupPurchaseConfig
.
getEndTime
().
after
(
now
))
{
groupPurchaseConfigDao
.
updateState
(
groupPurchaseConfig
.
getItemId
(),
GroupPurchaseEnum
.
ItemStateEnum
.
PROCESSING
.
getCode
());
groupPurchaseConfigDao
.
updateState
(
groupPurchaseConfig
.
getItemId
(),
GroupPurchaseEnum
.
ItemStateEnum
.
PROCESSING
.
getCode
());
}
}
}
}
}
//查询进行中的团购
//查询进行中的团购
dto
.
setState
(
GroupPurchaseEnum
.
ItemStateEnum
.
PROCESSING
.
getCode
());
dto
.
setState
(
GroupPurchaseEnum
.
ItemStateEnum
.
PROCESSING
.
getCode
());
List
<
GroupPurchaseConfig
>
groupPurchaseConfigs
=
groupPurchaseConfigDao
.
findList
(
dto
);
List
<
GroupPurchaseConfig
>
groupPurchaseConfigs
=
groupPurchaseConfigDao
.
findList
(
dto
);
PageInfo
<
GroupPurchaseConfig
>
pageInfo
=
new
PageInfo
<>(
groupPurchaseConfigs
);
List
<
GroupPurchaseItemVo
>
groupPurchaseItemVos
=
new
ArrayList
<>();
List
<
GroupPurchaseItemVo
>
groupPurchaseItemVos
=
new
ArrayList
<>();
for
(
GroupPurchaseConfig
groupPurchaseConfig
:
groupPurchaseConfigs
)
{
for
(
GroupPurchaseConfig
groupPurchaseConfig
:
groupPurchaseConfigs
)
{
GroupPurchaseItemVo
groupPurchaseItemVo
=
new
GroupPurchaseItemVo
();
//检测是否结束
//检测是否结束
if
(
groupPurchaseConfig
.
getEndTime
().
before
(
now
))
{
if
(
groupPurchaseConfig
.
getEndTime
().
before
(
now
))
{
groupPurchaseConfigDao
.
updateState
(
groupPurchaseConfig
.
getItemId
(),
GroupPurchaseEnum
.
ItemStateEnum
.
END
.
getCode
());
groupPurchaseConfigDao
.
updateState
(
groupPurchaseConfig
.
getItemId
(),
GroupPurchaseEnum
.
ItemStateEnum
.
END
.
getCode
());
continue
;
groupPurchaseItemVo
.
setState
(
GroupPurchaseEnum
.
ItemStateEnum
.
END
.
getCode
());
groupPurchaseItemVo
.
setStateName
(
GroupPurchaseEnum
.
ItemStateEnum
.
END
.
getDes
());
}
else
{
groupPurchaseItemVo
.
setState
(
groupPurchaseConfig
.
getState
());
groupPurchaseItemVo
.
setStateName
(
GroupPurchaseEnum
.
ItemStateEnum
.
getNameByCode
(
groupPurchaseConfig
.
getState
()));
}
}
SupplierItem
supplierItem
=
supplierItemDao
.
findById
(
groupPurchaseConfig
.
getItemId
());
SupplierItem
supplierItem
=
supplierItemDao
.
findById
(
groupPurchaseConfig
.
getItemId
());
GroupPurchaseItemVo
groupPurchaseItemVo
=
new
GroupPurchaseItemVo
();
groupPurchaseItemVo
.
setImages
(
supplierItem
.
getImages
());
groupPurchaseItemVo
.
setVideos
(
supplierItem
.
getVideos
());
groupPurchaseItemVo
.
setItemId
(
supplierItem
.
getId
());
groupPurchaseItemVo
.
setItemId
(
supplierItem
.
getId
());
groupPurchaseItemVo
.
setItemName
(
supplierItem
.
getName
());
groupPurchaseItemVo
.
setItemName
(
supplierItem
.
getName
());
groupPurchaseItemVo
.
setCreatorId
(
supplierItem
.
getCreatorId
());
groupPurchaseItemVo
.
setCreatorId
(
supplierItem
.
getCreatorId
());
...
@@ -107,7 +127,7 @@ public class GroupPurchaseServiceImpl implements GroupPurchaseService {
...
@@ -107,7 +127,7 @@ public class GroupPurchaseServiceImpl implements GroupPurchaseService {
groupPurchaseItemVo
.
setRateInfo
(
result
.
getData
());
groupPurchaseItemVo
.
setRateInfo
(
result
.
getData
());
groupPurchaseItemVos
.
add
(
groupPurchaseItemVo
);
groupPurchaseItemVos
.
add
(
groupPurchaseItemVo
);
}
}
return
Result
.
success
(
groupPurchaseItemVos
);
return
Result
.
success
(
PageSearchResult
.
of
(
pageInfo
,
groupPurchaseItemVos
)
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
logger
.
error
(
"查询团购商品失败 error : {}"
,
e
);
logger
.
error
(
"查询团购商品失败 error : {}"
,
e
);
}
}
...
@@ -115,16 +135,51 @@ public class GroupPurchaseServiceImpl implements GroupPurchaseService {
...
@@ -115,16 +135,51 @@ public class GroupPurchaseServiceImpl implements GroupPurchaseService {
}
}
@Override
@Override
public
Result
findItemDetail
(
GroupPurchaseConfig
RequestDto
dto
)
{
public
Result
findItemDetail
(
SupplierItem
RequestDto
dto
)
{
try
{
try
{
long
itemId
=
dto
.
getItemId
();
Long
itemId
;
String
shareRecordId
=
dto
.
getShareRecordId
();
CollectionShareRecord
collectionShareRecord
=
null
;
long
introducerId
=
CommConsts
.
SYSTEM_ACCOUNT
;
if
(
com
.
xxdxxs
.
utils
.
StringUtils
.
isEmpty
(
shareRecordId
)
&&
dto
.
getId
()
==
null
)
{
return
Result
.
failed
(
"商品信息为空"
);
}
else
if
(
StringUtils
.
hasLength
(
shareRecordId
)
&&
!
shareRecordId
.
equals
(
CommConsts
.
DEFAULT_SHARE_ID
))
{
collectionShareRecord
=
collectionShareRecordDao
.
findById
(
dto
.
getShareRecordId
());
introducerId
=
collectionShareRecord
.
getSharerId
();
itemId
=
collectionShareRecord
.
getShareTargetId
();
if
(
collectionShareRecord
!=
null
&&
collectionShareRecord
.
getItemUserId
().
longValue
()
!=
dto
.
getUserId
().
longValue
())
{
//客态进入别人的藏馆,自动关注
FollowFansRecordRequestDto
followFansRecordRequestDto
=
new
FollowFansRecordRequestDto
();
followFansRecordRequestDto
.
setFollowerId
(
collectionShareRecord
.
getItemUserId
());
followFansRecordRequestDto
.
setFansId
(
dto
.
getUserId
());
followFansRecordRequestDto
.
setIntroducerId
(
introducerId
);
Result
followResult
=
followFansRecordService
.
follow
(
followFansRecordRequestDto
);
if
(
followResult
.
getSuccess
())
{
logger
.
info
(
"查询团购商品详情api-通过分享点击,用户id:{} 关注了 用户id为 {}, 介绍人为{}"
,
dto
.
getUserId
(),
collectionShareRecord
.
getItemUserId
(),
collectionShareRecord
.
getSharerId
());
}
else
{
logger
.
info
(
"查询团购商品详情api-通过分享点击关注用户返回信息 : {}"
+
followResult
.
getErrmsg
());
}
}
}
else
{
itemId
=
dto
.
getId
();
}
if
(
itemId
==
null
)
{
return
Result
.
failed
(
"没有对应的商品id"
);
}
SupplierItem
supplierItem
=
supplierItemDao
.
findById
(
itemId
);
SupplierItem
supplierItem
=
supplierItemDao
.
findById
(
itemId
);
GroupPurchaseItemVo
groupPurchaseItemVo
=
new
GroupPurchaseItemVo
();
GroupPurchaseItemVo
groupPurchaseItemVo
=
new
GroupPurchaseItemVo
();
groupPurchaseItemVo
.
setItemId
(
supplierItem
.
getId
());
groupPurchaseItemVo
.
setItemId
(
supplierItem
.
getId
());
groupPurchaseItemVo
.
setItemName
(
supplierItem
.
getName
());
groupPurchaseItemVo
.
setItemName
(
supplierItem
.
getName
());
groupPurchaseItemVo
.
setImages
(
supplierItem
.
getImages
());
groupPurchaseItemVo
.
setVideos
(
supplierItem
.
getVideos
());
groupPurchaseItemVo
.
setType
(
supplierItem
.
getType
());
groupPurchaseItemVo
.
setDescription
(
supplierItem
.
getDescription
());
groupPurchaseItemVo
.
setDescription
(
supplierItem
.
getDescription
());
//众筹规则的图片url
groupPurchaseItemVo
.
setRuleUrl
(
"https://cdn.wanwudezhi.com/quanku/802de83c450f4b15b518496cabc5079c_720x722.jpg"
);
User
user
=
cacheUtil
.
appletUserInfoCache
.
get
(
supplierItem
.
getCreatorId
()).
get
();
User
user
=
cacheUtil
.
appletUserInfoCache
.
get
(
supplierItem
.
getCreatorId
()).
get
();
groupPurchaseItemVo
.
setCreatorName
(
user
.
getNickname
());
groupPurchaseItemVo
.
setCreatorName
(
user
.
getNickname
());
groupPurchaseItemVo
.
setCreatorId
(
supplierItem
.
getCreatorId
());
groupPurchaseItemVo
.
setCreatorAvatar
(
user
.
getAvatar
());
groupPurchaseItemVo
.
setCreatorAvatar
(
user
.
getAvatar
());
groupPurchaseItemVo
.
setCreatorProfile
(
user
.
getProfile
());
groupPurchaseItemVo
.
setCreatorProfile
(
user
.
getProfile
());
groupPurchaseItemVo
.
setHomePageImage
(
MediaUtil
.
getHomePageImage
(
supplierItem
.
getImages
(),
supplierItem
.
getVideos
()));
groupPurchaseItemVo
.
setHomePageImage
(
MediaUtil
.
getHomePageImage
(
supplierItem
.
getImages
(),
supplierItem
.
getVideos
()));
...
@@ -134,9 +189,21 @@ public class GroupPurchaseServiceImpl implements GroupPurchaseService {
...
@@ -134,9 +189,21 @@ public class GroupPurchaseServiceImpl implements GroupPurchaseService {
if
(!
result
.
getSuccess
())
{
if
(!
result
.
getSuccess
())
{
return
Result
.
failed
(
"查询团购信息错误"
);
return
Result
.
failed
(
"查询团购信息错误"
);
}
}
groupPurchaseItemVo
.
setRateInfo
(
result
.
getData
());
GroupPurchaseInfo
groupPurchaseInfo
=
result
.
getData
();
groupPurchaseItemVo
.
setRateInfo
(
groupPurchaseInfo
);
Date
now
=
new
Date
();
if
(
groupPurchaseInfo
.
getEndTime
().
before
(
now
))
{
groupPurchaseConfigDao
.
updateState
(
itemId
,
GroupPurchaseEnum
.
ItemStateEnum
.
END
.
getCode
());
groupPurchaseItemVo
.
setState
(
GroupPurchaseEnum
.
ItemStateEnum
.
END
.
getCode
());
groupPurchaseItemVo
.
setStateName
(
GroupPurchaseEnum
.
ItemStateEnum
.
END
.
getDes
());
}
else
{
groupPurchaseItemVo
.
setState
(
groupPurchaseInfo
.
getState
());
groupPurchaseItemVo
.
setStateName
(
GroupPurchaseEnum
.
ItemStateEnum
.
getNameByCode
(
groupPurchaseInfo
.
getState
()));
}
GroupPurchaseConfig
groupPurchaseConfig
=
groupPurchaseConfigDao
.
findByItemId
(
itemId
);
groupPurchaseItemVo
.
setBuyLimitNum
(
groupPurchaseConfig
.
getLimitNum
());
groupPurchaseConfig
.
setWxQrcode
(
groupPurchaseConfig
.
getWxQrcode
());
groupPurchaseItemVo
.
setIsSubscribedOfCloseToSuccess
(
disposableSubscribeRecordDao
.
isSubscribed
(
dto
.
getUserId
(),
itemId
,
DisposableSubscribeRecordEnum
.
TypeEnum
.
GROUPPURASE_CLOSER_TO_SUCCESS
.
getType
()));
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
);
return
Result
.
success
(
groupPurchaseItemVo
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
logger
.
error
(
"查询团购商品详情失败 error : {}"
,
e
);
logger
.
error
(
"查询团购商品详情失败 error : {}"
,
e
);
...
@@ -209,23 +276,10 @@ public class GroupPurchaseServiceImpl implements GroupPurchaseService {
...
@@ -209,23 +276,10 @@ public class GroupPurchaseServiceImpl implements GroupPurchaseService {
@Override
@Override
public
Result
<
GroupPurchaseInfo
>
checkGroupPurchase
(
GroupPurchaseRecordRequestDto
dto
)
{
public
Result
<
GroupPurchaseInfo
>
checkGroupPurchase
(
GroupPurchaseRecordRequestDto
dto
)
{
try
{
try
{
//默认团购数量没达到要求,没有折扣
BigDecimal
rebate
=
new
BigDecimal
(
"1"
);
//查询当前团购的商品数量
//查询当前团购的商品数量
long
itemNum
=
groupPurchaseRecordDao
.
summaryItemNum
(
dto
);
long
itemNum
=
groupPurchaseRecordDao
.
summaryItemNum
(
dto
);
List
<
GroupPurchaseRecord
>
groupPurchaseRecords
=
groupPurchaseRecordDao
.
countPeople
(
dto
);
List
<
GroupPurchaseRecord
>
groupPurchaseRecords
=
groupPurchaseRecordDao
.
countPeople
(
dto
);
long
peopleNum
=
groupPurchaseRecords
.
size
();
long
peopleNum
=
groupPurchaseRecords
.
size
();
List
<
String
>
userAvatarList
=
new
ArrayList
<>();
//查询参加团购用户头像
long
limitNum
=
3
;
if
(
0
<
peopleNum
&&
peopleNum
<
3
)
{
limitNum
=
peopleNum
;
}
for
(
int
i
=
0
;
i
<
limitNum
;
i
++)
{
long
userId
=
groupPurchaseRecords
.
get
(
0
).
getUserId
();
String
avatarUrl
=
cacheUtil
.
appletUserInfoCache
.
get
(
userId
).
get
().
getAvatar
();
userAvatarList
.
add
(
StringUtils
.
isEmpty
(
avatarUrl
)
?
CommConsts
.
DEFAULT_AVATAR_URL
:
avatarUrl
);
}
//查询团购配置信息
//查询团购配置信息
GroupPurchaseConfig
groupPurchaseConfig
=
groupPurchaseConfigDao
.
findByItemId
(
dto
.
getItemId
());
GroupPurchaseConfig
groupPurchaseConfig
=
groupPurchaseConfigDao
.
findByItemId
(
dto
.
getItemId
());
...
@@ -244,9 +298,8 @@ public class GroupPurchaseServiceImpl implements GroupPurchaseService {
...
@@ -244,9 +298,8 @@ public class GroupPurchaseServiceImpl implements GroupPurchaseService {
groupPurchaseInfo
.
setPeopleNum
((
int
)
peopleNum
);
groupPurchaseInfo
.
setPeopleNum
((
int
)
peopleNum
);
groupPurchaseInfo
.
setEndTime
(
groupPurchaseConfig
.
getEndTime
());
groupPurchaseInfo
.
setEndTime
(
groupPurchaseConfig
.
getEndTime
());
groupPurchaseInfo
.
setSalePrice
(
PriceUtil
.
convertPriceFenToYuan
(
groupPurchaseConfig
.
getPrice
()));
groupPurchaseInfo
.
setSalePrice
(
PriceUtil
.
convertPriceFenToYuan
(
groupPurchaseConfig
.
getPrice
()));
groupPurchaseInfo
.
setUserAvatarList
(
userAvatarList
);
Date
now
=
new
Date
();
Date
now
=
new
Date
();
if
(
groupPurchaseConfig
.
getStartTime
().
after
(
now
)
&&
groupPurchaseConfig
.
getEndTime
().
after
(
now
))
{
if
(
groupPurchaseConfig
.
getStartTime
().
before
(
now
)
&&
groupPurchaseConfig
.
getEndTime
().
after
(
now
))
{
groupPurchaseInfo
.
setState
(
GroupPurchaseEnum
.
ItemStateEnum
.
PROCESSING
.
getCode
());
groupPurchaseInfo
.
setState
(
GroupPurchaseEnum
.
ItemStateEnum
.
PROCESSING
.
getCode
());
}
else
if
(
groupPurchaseConfig
.
getEndTime
().
before
(
now
))
{
}
else
if
(
groupPurchaseConfig
.
getEndTime
().
before
(
now
))
{
groupPurchaseInfo
.
setState
(
GroupPurchaseEnum
.
ItemStateEnum
.
END
.
getCode
());
groupPurchaseInfo
.
setState
(
GroupPurchaseEnum
.
ItemStateEnum
.
END
.
getCode
());
...
...
ch-wx-api/src/main/java/com/wwdz/ch/wx/impl/distribution/UserAccountDetailServiceImpl.java
View file @
15abe8ac
...
@@ -3,12 +3,14 @@ package com.wwdz.ch.wx.impl.distribution;
...
@@ -3,12 +3,14 @@ package com.wwdz.ch.wx.impl.distribution;
import
com.wwdz.ch.core.consts.BillEnum
;
import
com.wwdz.ch.core.consts.BillEnum
;
import
com.wwdz.ch.core.consts.CommConsts
;
import
com.wwdz.ch.core.consts.CommConsts
;
import
com.wwdz.ch.core.type.Result
;
import
com.wwdz.ch.core.type.Result
;
import
com.wwdz.ch.core.util.PriceUtil
;
import
com.wwdz.ch.db.dao.distribution.UserAccountDetailDao
;
import
com.wwdz.ch.db.dao.distribution.UserAccountDetailDao
;
import
com.wwdz.ch.db.dao.distribution.UserBillDao
;
import
com.wwdz.ch.db.dao.distribution.UserBillDao
;
import
com.wwdz.ch.db.domain.distribution.DistributionOrder
;
import
com.wwdz.ch.db.domain.distribution.DistributionOrder
;
import
com.wwdz.ch.db.domain.distribution.DistributorProfit
;
import
com.wwdz.ch.db.domain.distribution.DistributorProfit
;
import
com.wwdz.ch.db.domain.distribution.UserAccountDetail
;
import
com.wwdz.ch.db.domain.distribution.UserAccountDetail
;
import
com.wwdz.ch.db.domain.distribution.UserBill
;
import
com.wwdz.ch.db.domain.distribution.UserBill
;
import
com.wwdz.ch.db.dto.request.distribution.UserAccountDetailRequestDto
;
import
com.wwdz.ch.wx.service.distribution.UserAccountDetailService
;
import
com.wwdz.ch.wx.service.distribution.UserAccountDetailService
;
import
com.wwdz.ch.wx.service.distribution.UserBillService
;
import
com.wwdz.ch.wx.service.distribution.UserBillService
;
import
com.xxdxxs.utils.StringUtils
;
import
com.xxdxxs.utils.StringUtils
;
...
@@ -29,8 +31,6 @@ public class UserAccountDetailServiceImpl implements UserAccountDetailService {
...
@@ -29,8 +31,6 @@ public class UserAccountDetailServiceImpl implements UserAccountDetailService {
private
static
final
Logger
logger
=
LoggerFactory
.
getLogger
(
SelfPageServiceImpl
.
class
);
private
static
final
Logger
logger
=
LoggerFactory
.
getLogger
(
SelfPageServiceImpl
.
class
);
@Autowired
@Autowired
UserAccountDetailDao
userAccountDetailDao
;
UserAccountDetailDao
userAccountDetailDao
;
...
@@ -143,4 +143,28 @@ public class UserAccountDetailServiceImpl implements UserAccountDetailService {
...
@@ -143,4 +143,28 @@ public class UserAccountDetailServiceImpl implements UserAccountDetailService {
}
}
return
Result
.
failed
();
return
Result
.
failed
();
}
}
@Override
public
Result
countIntroduceAmount
(
long
userId
)
{
try
{
//统计未到账佣金
UserAccountDetailRequestDto
waitIntroduceDto
=
new
UserAccountDetailRequestDto
();
waitIntroduceDto
.
setUserId
(
userId
);
waitIntroduceDto
.
setType
(
BillEnum
.
AccountDetailTypeEnum
.
INTRODUCE
.
getCode
());
waitIntroduceDto
.
setState
(
BillEnum
.
AccountDetailStateEnum
.
WAIT_ENTRY
.
getCode
());
long
waitIntroduceAmount
=
userAccountDetailDao
.
summaryAmount
(
waitIntroduceDto
);
UserAccountDetailRequestDto
entryIntroduceDto
=
new
UserAccountDetailRequestDto
();
entryIntroduceDto
.
setUserId
(
userId
);
entryIntroduceDto
.
setType
(
BillEnum
.
AccountDetailTypeEnum
.
INTRODUCE
.
getCode
());
entryIntroduceDto
.
setState
(
BillEnum
.
AccountDetailStateEnum
.
ENTRY
.
getCode
());
long
entryIntroduceAmount
=
userAccountDetailDao
.
summaryAmount
(
entryIntroduceDto
);
long
totalIntroduceAmount
=
waitIntroduceAmount
+
entryIntroduceAmount
;
return
Result
.
success
(
PriceUtil
.
convertPriceFenToYuan
(
totalIntroduceAmount
));
}
catch
(
Exception
e
)
{
logger
.
error
(
"统计介绍佣金 error:{}"
,
e
);
}
return
Result
.
failed
();
}
}
}
ch-wx-api/src/main/java/com/wwdz/ch/wx/job/GroupPurchaseJob.java
View file @
15abe8ac
package
com.wwdz.ch.wx.job
;
package
com.wwdz.ch.wx.job
;
import
com.wwdz.ch.core.consts.CommConsts
;
import
com.wwdz.ch.core.consts.DistributionEnum
;
import
com.wwdz.ch.core.consts.DistributionEnum
;
import
com.wwdz.ch.core.consts.GroupPurchaseEnum
;
import
com.wwdz.ch.core.consts.GroupPurchaseEnum
;
import
com.wwdz.ch.db.dao.distribution.DistributionOrderDao
;
import
com.wwdz.ch.db.dao.distribution.DistributionOrderDao
;
...
@@ -9,6 +10,8 @@ import com.wwdz.ch.db.dao.distribution.GroupPurchaseRecordDao;
...
@@ -9,6 +10,8 @@ import com.wwdz.ch.db.dao.distribution.GroupPurchaseRecordDao;
import
com.wwdz.ch.db.domain.distribution.GroupPurchaseConfig
;
import
com.wwdz.ch.db.domain.distribution.GroupPurchaseConfig
;
import
com.wwdz.ch.db.domain.distribution.GroupPurchaseRecord
;
import
com.wwdz.ch.db.domain.distribution.GroupPurchaseRecord
;
import
com.wwdz.ch.db.dto.request.distribution.GroupPurchaseConfigRequestDto
;
import
com.wwdz.ch.db.dto.request.distribution.GroupPurchaseConfigRequestDto
;
import
com.wwdz.ch.db.dto.request.distribution.GroupPurchaseRecordRequestDto
;
import
com.wwdz.ch.wx.service.distribution.GroupPurchaseService
;
import
org.redisson.api.RLock
;
import
org.redisson.api.RLock
;
import
org.redisson.api.RedissonClient
;
import
org.redisson.api.RedissonClient
;
import
org.slf4j.Logger
;
import
org.slf4j.Logger
;
...
@@ -42,6 +45,9 @@ public class GroupPurchaseJob {
...
@@ -42,6 +45,9 @@ public class GroupPurchaseJob {
@Autowired
@Autowired
DistributorProfitDao
distributorProfitDao
;
DistributorProfitDao
distributorProfitDao
;
@Autowired
GroupPurchaseService
groupPurchaseService
;
/**
/**
* 隔2分钟运行一次
* 隔2分钟运行一次
*/
*/
...
@@ -56,6 +62,8 @@ public class GroupPurchaseJob {
...
@@ -56,6 +62,8 @@ public class GroupPurchaseJob {
try
{
try
{
//查询状态进行中,但实际已经结束的团购商品
//查询状态进行中,但实际已经结束的团购商品
checkProcessGroupPurchase
();
checkProcessGroupPurchase
();
//查询已经结束,还未处理订单的团购商品
checkEndGroupPurchase
();
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
logger
.
error
(
"检测团购进度任务 error:{}"
,
e
);
logger
.
error
(
"检测团购进度任务 error:{}"
,
e
);
}
finally
{
}
finally
{
...
@@ -79,25 +87,39 @@ public class GroupPurchaseJob {
...
@@ -79,25 +87,39 @@ public class GroupPurchaseJob {
}
}
}
}
//查询已经结束,还未处理订单的团购商品
/**
* 查询已经结束,还未处理订单的团购商品
*/
public
void
checkEndGroupPurchase
()
{
public
void
checkEndGroupPurchase
()
{
GroupPurchaseConfigRequestDto
groupPurchaseConfigRequestDto
=
new
GroupPurchaseConfigRequestDto
();
GroupPurchaseConfigRequestDto
groupPurchaseConfigRequestDto
=
new
GroupPurchaseConfigRequestDto
();
groupPurchaseConfigRequestDto
.
setState
(
GroupPurchaseEnum
.
ItemStateEnum
.
END
.
getCode
());
groupPurchaseConfigRequestDto
.
setState
(
GroupPurchaseEnum
.
ItemStateEnum
.
END
.
getCode
());
groupPurchaseConfigRequestDto
.
setIsDeal
(
false
);
groupPurchaseConfigRequestDto
.
setIsDeal
(
false
);
List
<
GroupPurchaseConfig
>
purchaseConfigList
=
groupPurchaseConfigDao
.
findList
(
groupPurchaseConfigRequestDto
);
List
<
GroupPurchaseConfig
>
purchaseConfigList
=
groupPurchaseConfigDao
.
findList
(
groupPurchaseConfigRequestDto
);
for
(
GroupPurchaseConfig
groupPurchaseConfig
:
purchaseConfigList
)
{
for
(
GroupPurchaseConfig
groupPurchaseConfig
:
purchaseConfigList
)
{
//判断是否成功成团,暂时默认true
int
targetNum
=
groupPurchaseConfig
.
getTargetNum
();
boolean
flag
=
true
;
long
itemId
=
groupPurchaseConfig
.
getItemId
();
long
itemId
=
groupPurchaseConfig
.
getItemId
();
List
<
GroupPurchaseRecord
>
groupPurchaseRecordList
=
groupPurchaseRecordDao
.
findByItemId
(
itemId
);
List
<
GroupPurchaseRecord
>
groupPurchaseRecordList
=
groupPurchaseRecordDao
.
findByItemId
(
itemId
);
GroupPurchaseRecordRequestDto
dto
=
new
GroupPurchaseRecordRequestDto
();
dto
.
setItemId
(
itemId
);
long
itemNum
=
groupPurchaseRecordDao
.
summaryItemNum
(
dto
);
//判断是否成功成团
boolean
flag
=
true
;
if
(
itemNum
<
targetNum
)
{
flag
=
false
;
}
for
(
GroupPurchaseRecord
groupPurchaseRecord
:
groupPurchaseRecordList
)
{
for
(
GroupPurchaseRecord
groupPurchaseRecord
:
groupPurchaseRecordList
)
{
if
(
groupPurchaseRecord
.
getUserId
()
==
CommConsts
.
SYSTEM_ACCOUNT
.
longValue
())
{
//系统为了团购成功插入的假数据不用处理
continue
;
}
String
distributionOrderId
=
groupPurchaseRecord
.
getDistributionOrderId
();
String
distributionOrderId
=
groupPurchaseRecord
.
getDistributionOrderId
();
if
(
flag
)
{
if
(
flag
)
{
//更改订单的状态为待发货
//更改订单的状态为待发货
distributionOrderDao
.
updateState
(
distributionOrderId
,
DistributionEnum
.
DistributionOrderStateEnum
.
PRE_SEND
.
getCode
());
distributionOrderDao
.
updateState
(
distributionOrderId
,
DistributionEnum
.
DistributionOrderStateEnum
.
PRE_SEND
.
getCode
());
}
else
{
}
else
{
distributionOrderDao
.
updateState
(
distributionOrderId
,
DistributionEnum
.
DistributionOrderStateEnum
.
CANCEL
.
getCode
());
GroupPurchaseRecordRequestDto
groupPurchaseRecordRequestDto
=
new
GroupPurchaseRecordRequestDto
();
groupPurchaseRecordRequestDto
.
setDistributionOrderId
(
groupPurchaseRecord
.
getDistributionOrderId
());
groupPurchaseService
.
cancelOrder
(
groupPurchaseRecordRequestDto
);
}
}
}
}
groupPurchaseConfigDao
.
updateDealByPrimaryKey
(
groupPurchaseConfig
.
getId
(),
true
);
groupPurchaseConfigDao
.
updateDealByPrimaryKey
(
groupPurchaseConfig
.
getId
(),
true
);
...
...
ch-wx-api/src/main/java/com/wwdz/ch/wx/service/distribution/DistributionOrderService.java
View file @
15abe8ac
...
@@ -36,7 +36,7 @@ public interface DistributionOrderService {
...
@@ -36,7 +36,7 @@ public interface DistributionOrderService {
* @param dto
* @param dto
* @return
* @return
*/
*/
Result
createGroupPurchaseOrder
(
GroupPurchaseRecord
RequestDto
dto
);
Result
createGroupPurchaseOrder
(
DistributionOrder
RequestDto
dto
);
/**
/**
...
...
ch-wx-api/src/main/java/com/wwdz/ch/wx/service/distribution/GroupPurchaseService.java
View file @
15abe8ac
...
@@ -3,6 +3,7 @@ package com.wwdz.ch.wx.service.distribution;
...
@@ -3,6 +3,7 @@ package com.wwdz.ch.wx.service.distribution;
import
com.wwdz.ch.core.type.Result
;
import
com.wwdz.ch.core.type.Result
;
import
com.wwdz.ch.db.dto.request.distribution.GroupPurchaseConfigRequestDto
;
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.GroupPurchaseRecordRequestDto
;
import
com.wwdz.ch.db.dto.request.distribution.SupplierItemRequestDto
;
import
com.wwdz.ch.wx.entity.GroupPurchaseInfo
;
import
com.wwdz.ch.wx.entity.GroupPurchaseInfo
;
...
@@ -22,7 +23,7 @@ public interface GroupPurchaseService {
...
@@ -22,7 +23,7 @@ public interface GroupPurchaseService {
* @param dto
* @param dto
* @return
* @return
*/
*/
Result
findItemDetail
(
GroupPurchaseConfig
RequestDto
dto
);
Result
findItemDetail
(
SupplierItem
RequestDto
dto
);
/**
/**
...
...
ch-wx-api/src/main/java/com/wwdz/ch/wx/service/distribution/UserAccountDetailService.java
View file @
15abe8ac
...
@@ -19,5 +19,14 @@ public interface UserAccountDetailService {
...
@@ -19,5 +19,14 @@ public interface UserAccountDetailService {
* @param distributionOrder
* @param distributionOrder
* @return
* @return
*/
*/
Result
cancel
(
DistributionOrder
distributionOrder
)
throws
Exception
;
Result
cancel
(
DistributionOrder
distributionOrder
);
/**
* 统计介绍佣金
* @param userId
* @return
*/
Result
countIntroduceAmount
(
long
userId
);
}
}
ch-wx-api/src/main/java/com/wwdz/ch/wx/web/distribution/DistributionOrderController.java
View file @
15abe8ac
...
@@ -108,7 +108,7 @@ public class DistributionOrderController {
...
@@ -108,7 +108,7 @@ public class DistributionOrderController {
@ApiOperation
(
value
=
"创建团购订单"
)
@ApiOperation
(
value
=
"创建团购订单"
)
@PostMapping
(
"/createGroupPurchaseOrder"
)
@PostMapping
(
"/createGroupPurchaseOrder"
)
public
Result
createGroupPurchaseOrder
(
@RequestBody
GroupPurchaseRecord
RequestDto
dto
)
{
public
Result
createGroupPurchaseOrder
(
@RequestBody
DistributionOrder
RequestDto
dto
)
{
logger
.
info
(
"创建团购订单,请求参数:{}"
,
JSON
.
toJSONString
(
dto
));
logger
.
info
(
"创建团购订单,请求参数:{}"
,
JSON
.
toJSONString
(
dto
));
if
(!
StringUtils
.
isAllNotEmpty
(
dto
.
getItemId
(),
dto
.
getItemNum
(),
dto
.
getUserId
(),
dto
.
getBuyerOpenid
(),
dto
.
getAmount
()))
{
if
(!
StringUtils
.
isAllNotEmpty
(
dto
.
getItemId
(),
dto
.
getItemNum
(),
dto
.
getUserId
(),
dto
.
getBuyerOpenid
(),
dto
.
getAmount
()))
{
return
Result
.
failed
(
ResultCode
.
PARAM_ERROR
);
return
Result
.
failed
(
ResultCode
.
PARAM_ERROR
);
...
...
ch-wx-api/src/main/java/com/wwdz/ch/wx/web/distribution/GroupPurchaseController.java
View file @
15abe8ac
...
@@ -5,6 +5,7 @@ import com.wwdz.ch.core.consts.ResultCode;
...
@@ -5,6 +5,7 @@ import com.wwdz.ch.core.consts.ResultCode;
import
com.wwdz.ch.core.type.Result
;
import
com.wwdz.ch.core.type.Result
;
import
com.wwdz.ch.db.dto.request.distribution.GroupPurchaseConfigRequestDto
;
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.GroupPurchaseRecordRequestDto
;
import
com.wwdz.ch.db.dto.request.distribution.SupplierItemRequestDto
;
import
com.wwdz.ch.wx.service.distribution.GroupPurchaseService
;
import
com.wwdz.ch.wx.service.distribution.GroupPurchaseService
;
import
com.xxdxxs.utils.StringUtils
;
import
com.xxdxxs.utils.StringUtils
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
...
@@ -35,11 +36,8 @@ public class GroupPurchaseController {
...
@@ -35,11 +36,8 @@ public class GroupPurchaseController {
@ApiOperation
(
value
=
"查询团购商品详情"
)
@ApiOperation
(
value
=
"查询团购商品详情"
)
@PostMapping
(
"/findItemDetail"
)
@PostMapping
(
"/findItemDetail"
)
public
Result
findItemDetail
(
@RequestBody
GroupPurchaseConfig
RequestDto
dto
)
{
public
Result
findItemDetail
(
@RequestBody
SupplierItem
RequestDto
dto
)
{
logger
.
info
(
"查询团购商品详情,请求参数:{}"
,
JSON
.
toJSONString
(
dto
));
logger
.
info
(
"查询团购商品详情,请求参数:{}"
,
JSON
.
toJSONString
(
dto
));
if
(
dto
.
getItemId
()
==
null
)
{
return
Result
.
failed
(
ResultCode
.
PARAM_ERROR
);
}
return
groupPurchaseService
.
findItemDetail
(
dto
);
return
groupPurchaseService
.
findItemDetail
(
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