|
|
@@ -12,6 +12,8 @@ import com.etotem.cfc.entity.PromotionTierConfig;
|
|
|
import com.etotem.cfc.entity.ReferralTree;
|
|
|
import com.etotem.cfc.entity.User;
|
|
|
import com.etotem.cfc.entity.WithdrawalRequest;
|
|
|
+import com.etotem.cfc.entity.FamilyMember;
|
|
|
+import com.etotem.cfc.mapper.FamilyMemberMapper;
|
|
|
import com.etotem.cfc.mapper.CommissionRecordMapper;
|
|
|
import com.etotem.cfc.mapper.ProductMapper;
|
|
|
import com.etotem.cfc.mapper.ProductOrderMapper;
|
|
|
@@ -43,6 +45,9 @@ public class CommissionService {
|
|
|
@Resource
|
|
|
private UserMapper userMapper;
|
|
|
|
|
|
+ @Resource
|
|
|
+ private FamilyMemberMapper familyMemberMapper;
|
|
|
+
|
|
|
@Resource
|
|
|
private ProductMapper productMapper;
|
|
|
|
|
|
@@ -699,9 +704,21 @@ public class CommissionService {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 获取我的推荐人信息(直推人)
|
|
|
+ * 获取我的推荐人信息(直推人),支持按家庭成员维度查询
|
|
|
+ * memberId 不为空时按成员查其关联用户的推荐人;为空时直接用 userId
|
|
|
*/
|
|
|
- public Map<String, Object> getMyReferrer(Long userId) {
|
|
|
+ public Map<String, Object> getMyReferrer(Long userId, Long memberId) {
|
|
|
+ Long effectiveUserId = userId;
|
|
|
+ if (memberId != null && memberId > 0) {
|
|
|
+ FamilyMember member = familyMemberMapper.selectById(memberId);
|
|
|
+ if (member != null && member.getUserId() != null) {
|
|
|
+ effectiveUserId = member.getUserId();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return doGetMyReferrer(effectiveUserId);
|
|
|
+ }
|
|
|
+
|
|
|
+ private Map<String, Object> doGetMyReferrer(Long userId) {
|
|
|
Map<String, Object> result = new LinkedHashMap<>();
|
|
|
User user = userMapper.selectById(userId);
|
|
|
if (user == null || user.getReferrerId() == null) {
|
|
|
@@ -718,7 +735,7 @@ public class CommissionService {
|
|
|
result.put("nickname", referrer.getNickname());
|
|
|
result.put("avatar", referrer.getAvatar());
|
|
|
result.put("referralCode", referrer.getReferralCode());
|
|
|
- result.put("bindTime", user.getCreatedAt()); // 以用户创建时间作为绑定时间近似
|
|
|
+ result.put("bindTime", user.getCreatedAt());
|
|
|
return result;
|
|
|
}
|
|
|
|