zqy
2024-05-26 b1643b619696f2578e22d7f3bcc2cacca63a1ce6
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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
package com.ruoyi.service.impl;
 
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.utils.MapUtils;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.domain.LiveStreaming;
import com.ruoyi.mapper.LiveStreamingBackMapper;
import com.ruoyi.service.LiveStreamingBackService;
import org.springframework.stereotype.Service;
 
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
 
@Service
public class LiveStreamingBackServiceImpl extends ServiceImpl<LiveStreamingBackMapper, LiveStreaming> implements LiveStreamingBackService {
 
    private LambdaQueryWrapper<LiveStreaming> buildCondition(LiveStreaming liveStreaming) {
        LambdaQueryWrapper<LiveStreaming> lqw = new LambdaQueryWrapper<>();
//        lqw.in(LiveStreaming::getFamilyId,familyIdList);
        lqw.orderByDesc(LiveStreaming::getCreateTime);
        lqw.like(StringUtils.isNotEmpty(liveStreaming.getTitle()), LiveStreaming::getTitle, liveStreaming.getTitle())
                .like(StringUtils.isNotEmpty(liveStreaming.getApplyPerson()),LiveStreaming::getApplyPerson,liveStreaming.getApplyPerson())
                .like(StringUtils.isNotEmpty(liveStreaming.getContactPerson()),LiveStreaming::getContactPerson,liveStreaming.getContactPerson());
        lqw.between(liveStreaming.getHappenStartTime() != null && liveStreaming.getHappenEndTime() != null,LiveStreaming::getCreateTime,liveStreaming.getHappenStartTime(),liveStreaming.getHappenEndTime());
 
        return lqw;
    }
 
    @Override
    public AjaxResult selectDataList(LiveStreaming liveStreaming, Integer pageNum, Integer pageSize) {
        //要查自己家庭的
//        ZInfoUser myself = zInfoUserService.getMyself();
//        if(myself==null)
//        {
//            //   System.out.println("ssssss");
//            return AjaxResult.success("您没加入到对应的家庭,请联系管理员");
//        }
//        Long familyId = myself.getFamilyId();
//        //也要查别人授权的
//        List<ZAuthority> authority = zAuthorityService.getAuthority();
//        List<Long> idList = authority.stream().filter(auth -> auth.getAuthority().toString().equals(DOCTOR_LIST)).map(ZAuthority::getFid).collect(Collectors.toList());
//        //加上自己家庭的id
//        idList.add(familyId);
//        String familyIds = listFamilyIds();
//        String secondFamilyAuthority = listSecondFamilyIds();
        LambdaQueryWrapper<LiveStreaming> lqw = buildCondition(liveStreaming);
 
 
        Page<LiveStreaming> liveStreamingPage = new Page<>(pageNum, pageSize);
        Page<LiveStreaming> pageResult = page(liveStreamingPage, lqw);
 
        List<LiveStreaming> beanRecords = pageResult.getRecords();//得到查询出来的数据
 
//        List<LiveStreaming> dtoResult = markOwnData(familyId, beanRecords);
 
        HashMap<String, Object> data = MapUtils.getResult(pageResult, beanRecords);
        return AjaxResult.success(data);
 
    }
 
 
    @Override
    public List<LiveStreaming> selectByIds(Long[] ids) {
        List<LiveStreaming> list = new ArrayList<>();
        if (ids.length != 0)
            list = listByIds(Arrays.asList(ids));
        else
            list = list();
        return list;
    }
 
}