1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
package cc.mrbird.febs.ai.service.impl;
 
import cc.mrbird.febs.ai.entity.AiMemberProductUnlock;
import cc.mrbird.febs.ai.mapper.AiMemberProductUnlockMapper;
import cc.mrbird.febs.ai.service.AiMemberProductUnlockService;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
 
import java.util.Date;
import java.util.List;
import java.util.Set;
 
@Slf4j
@Service
@RequiredArgsConstructor
public class AiMemberProductUnlockServiceImpl extends ServiceImpl<AiMemberProductUnlockMapper, AiMemberProductUnlock> implements AiMemberProductUnlockService {
 
    private final AiMemberProductUnlockMapper aiMemberProductUnlockMapper;
 
    @Override
    public List<AiMemberProductUnlock> selectListByMemberId(String memberId) {
        return aiMemberProductUnlockMapper.selectList(
                Wrappers.lambdaQuery(AiMemberProductUnlock.class)
                .eq(AiMemberProductUnlock::getMemberId, memberId)
        );
    }
 
    @Override
    public List<AiMemberProductUnlock> selectListByProductIds(Set<String> targetProductIds, String memberId) {
        return aiMemberProductUnlockMapper.selectList(
                Wrappers.lambdaQuery(AiMemberProductUnlock.class)
                        .eq(AiMemberProductUnlock::getMemberId, memberId)
                        .in(AiMemberProductUnlock::getProductId, targetProductIds)
        );
    }
 
    @Override
    public void insertList(String companyId, Set<String> unlockProductIds, String memberUuid, int intValue) {
        unlockProductIds.forEach(productId -> {
            AiMemberProductUnlock unlock = new AiMemberProductUnlock();
            unlock.setCompanyId(companyId);
            unlock.setProductId(productId);
            unlock.setMemberId(memberUuid);
            unlock.setUnlockScore(intValue);
            unlock.setCreatedTime(new Date());
            this.save(unlock);
        });
 
    }
}