|
|
@@ -11999,10 +11999,22 @@ class StoreOrderRepository extends BaseRepository
|
|
11999
|
11999
|
$userSignGongxianRepository = app()->make(UserSignGongxianRepository::class);
|
|
12000
|
12000
|
$userSignGongxianEntityList = $userSignGongxianRepository->getUserSignGongxianEntityListByOrderIdListAndPending(UserSignGongxianEnum::ORDER_TYPE['Platform']['code'], $unsettledOrderIdList);
|
|
12001
|
12001
|
if (!empty($userSignGongxianEntityList)) {
|
|
12002
|
|
- $userSignGongxianIdList = array_map(function ($userSignGongxianEntity) {
|
|
|
12002
|
+ $affectedUserIdListByMember = [];
|
|
|
12003
|
+ $userSignGongxianIdList = array_map(function ($userSignGongxianEntity) use (&$affectedUserIdListByMember) {
|
|
|
12004
|
+ $affectedUserIdListByMember[] = $userSignGongxianEntity->getUid();
|
|
12003
|
12005
|
return $userSignGongxianEntity->getId();
|
|
12004
|
12006
|
}, $userSignGongxianEntityList);
|
|
12005
|
12007
|
$userSignGongxianRepository->executeByIdList($userSignGongxianIdList);
|
|
|
12008
|
+ // 会员体系结构 依靠贡献值变化而升级,所以当贡献值产生变化时 需记录用户ID 进行升级
|
|
|
12009
|
+ if (!empty($affectedUserIdListByMember)) {
|
|
|
12010
|
+ $affectedUserIdListByMember = array_unique($affectedUserIdListByMember);
|
|
|
12011
|
+ // 结算完成后更新用户的身份信息 设置用户 身份
|
|
|
12012
|
+ /** @var UserRepository $userRepository */
|
|
|
12013
|
+ $userRepository = app()->make(UserRepository::class);
|
|
|
12014
|
+ foreach ($affectedUserIdListByMember as $userId) {
|
|
|
12015
|
+ $userRepository->setUserIdentity($userId);
|
|
|
12016
|
+ }
|
|
|
12017
|
+ }
|
|
12006
|
12018
|
}
|
|
12007
|
12019
|
|
|
12008
|
12020
|
/** 结算 PV */
|
|
|
@@ -12032,10 +12044,21 @@ class StoreOrderRepository extends BaseRepository
|
|
12032
|
12044
|
$sharedProsperityRewardRecordRepository = app()->make(SharedProsperityRewardRecordRepository::class);
|
|
12033
|
12045
|
$sharedProsperityRewardRecordEntityList = $sharedProsperityRewardRecordRepository->getSharedProsperityRewardRecordEntityListByOrderSnListAndPending(SharedProsperityRewardRecordEnum::TYPE_SHOP['Platform']['code'], $unsettledOrderSnList);
|
|
12034
|
12046
|
if (!empty($sharedProsperityRewardRecordEntityList)) {
|
|
12035
|
|
- $sharedProsperityRewardRecordIdList = array_map(function ($sharedProsperityRewardRecordEntity) {
|
|
|
12047
|
+ $affectedUserIdListBySharedProsperity = [];
|
|
|
12048
|
+ $sharedProsperityRewardRecordIdList = array_map(function ($sharedProsperityRewardRecordEntity) use (&$affectedUserIdListBySharedProsperity) {
|
|
|
12049
|
+ if ($sharedProsperityRewardRecordEntity->getType() == SharedProsperityRewardRecordEnum::TYPE['PV']['code']) {
|
|
|
12050
|
+ $affectedUserIdListBySharedProsperity[] = $sharedProsperityRewardRecordEntity->getUserId();
|
|
|
12051
|
+ }
|
|
12036
|
12052
|
return $sharedProsperityRewardRecordEntity->getId();
|
|
12037
|
12053
|
}, $sharedProsperityRewardRecordEntityList);
|
|
12038
|
12054
|
$sharedProsperityRewardRecordRepository->executeByIdList($sharedProsperityRewardRecordIdList);
|
|
|
12055
|
+ // 当用户PV产生变化时,需要更新产生变化用户的 共富体系等级
|
|
|
12056
|
+ if (!empty($affectedUserIdListBySharedProsperity)) {
|
|
|
12057
|
+ $affectedUserIdListBySharedProsperity = array_unique($affectedUserIdListBySharedProsperity);
|
|
|
12058
|
+ /** @var SharedProsperityUserRepository $sharedProsperityUserRepository */
|
|
|
12059
|
+ $sharedProsperityUserRepository = app()->make(SharedProsperityUserRepository::class);
|
|
|
12060
|
+ $sharedProsperityUserRepository->identityUpgrade($affectedUserIdListBySharedProsperity);
|
|
|
12061
|
+ }
|
|
12039
|
12062
|
}
|
|
12040
|
12063
|
|
|
12041
|
12064
|
// 订单奖励结算时 更新订单自身 结算字段
|