admin
2021-07-30 19533a17aa55fafc70d0a385928e785cb50e1ebc
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
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
package com.yeshi.buwan.dao.juhe.bilibili;
 
import com.yeshi.buwan.videos.bilibili.entity.BilibiliEpInfo;
import com.yeshi.buwan.dao.base.MongodbBaseDao;
import org.springframework.data.domain.Sort;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.data.mongodb.core.query.Update;
import org.springframework.stereotype.Repository;
 
import java.util.Date;
import java.util.List;
 
@Repository
public class BilibiliEpInfoDao extends MongodbBaseDao<BilibiliEpInfo> {
 
    public void updateSelective(BilibiliEpInfo bean) {
        Query query = new Query();
        Update update = new Update();
        query.addCriteria(Criteria.where("id").is(bean.getId()));
        if (bean.getAid() != null) {
            update.set("aid", bean.getAid());
        }
        if (bean.getMediaId() != null) {
            update.set("mediaId", bean.getMediaId());
        }
        if (bean.getBadge() != null) {
            update.set("badge", bean.getBadge());
        }
        if (bean.getBadge_type() != null) {
            update.set("badge_type", bean.getBadge_type());
        }
        if (bean.getBvid() != null) {
            update.set("bvid", bean.getBvid());
        }
        if (bean.getCid() != null) {
            update.set("cid", bean.getCid());
        }
        if (bean.getCover() != null) {
            update.set("cover", bean.getCover());
        }
        if (bean.getLink() != null) {
            update.set("link", bean.getLink());
        }
        if (bean.getLong_title() != null) {
            update.set("long_title", bean.getLong_title());
        }
        if (bean.getPub_time() != null) {
            update.set("pub_time", bean.getPub_time());
        }
        if (bean.getPv() != null) {
            update.set("pv", bean.getPv());
        }
        if (bean.getRelease_date() != null) {
            update.set("release_date", bean.getRelease_date());
        }
        if (bean.getShare_copy() != null) {
            update.set("share_copy", bean.getShare_copy());
        }
        if (bean.getShare_url() != null) {
            update.set("share_url", bean.getShare_url());
        }
        if (bean.getShort_link() != null) {
            update.set("short_link", bean.getShort_link());
        }
        if (bean.getStatus() != null) {
            update.set("status", bean.getStatus());
        }
        if (bean.getSubtitle() != null) {
            update.set("subtitle", bean.getSubtitle());
        }
        if (bean.getTitle() != null) {
            update.set("title", bean.getTitle());
        }
        if (bean.getVid() != null) {
            update.set("vid", bean.getVid());
        }
        if (bean.getCreateTime() != null) {
            update.set("createTime", bean.getCreateTime());
        }
        update.set("updateTime", new Date());
        update(query, update);
    }
 
    public List<BilibiliEpInfo> listByMediaId(Long mediaId, int start, int count) {
        Query query = new Query();
        query.addCriteria(Criteria.where("mediaId").is(mediaId));
        query.with(new Sort(new Sort.Order(Sort.Direction.ASC, "_id")));
        query.skip(start);
        query.limit(count);
        return findList(query);
    }
}