Ver código fonte

Merge branch 'dev-xym-only-mini1' of Server/long-article-manage into master

xueyiming 4 meses atrás
pai
commit
cb598757f0
27 arquivos alterados com 3817 adições e 177 exclusões
  1. 40 0
      long-article-server/src/main/java/com/tzld/piaoquan/longarticle/common/enums/SourceTypesEnum.java
  2. 30 0
      long-article-server/src/main/java/com/tzld/piaoquan/longarticle/dao/mapper/OffVideoMapper.java
  3. 30 0
      long-article-server/src/main/java/com/tzld/piaoquan/longarticle/dao/mapper/SingleVideoSourceMapper.java
  4. 2 0
      long-article-server/src/main/java/com/tzld/piaoquan/longarticle/model/bo/MatchContent.java
  5. 0 61
      long-article-server/src/main/java/com/tzld/piaoquan/longarticle/model/bo/PublishMiniprogramBo.java
  6. 1 0
      long-article-server/src/main/java/com/tzld/piaoquan/longarticle/model/dto/PublishArticleData.java
  7. 79 0
      long-article-server/src/main/java/com/tzld/piaoquan/longarticle/model/po/OffVideo.java
  8. 581 0
      long-article-server/src/main/java/com/tzld/piaoquan/longarticle/model/po/OffVideoExample.java
  9. 11 0
      long-article-server/src/main/java/com/tzld/piaoquan/longarticle/model/po/PublishContent.java
  10. 60 0
      long-article-server/src/main/java/com/tzld/piaoquan/longarticle/model/po/PublishContentExample.java
  11. 277 0
      long-article-server/src/main/java/com/tzld/piaoquan/longarticle/model/po/SingleVideoSource.java
  12. 1751 0
      long-article-server/src/main/java/com/tzld/piaoquan/longarticle/model/po/SingleVideoSourceExample.java
  13. 2 0
      long-article-server/src/main/java/com/tzld/piaoquan/longarticle/model/vo/ContentItemVO.java
  14. 1 1
      long-article-server/src/main/java/com/tzld/piaoquan/longarticle/service/local/PlanAccountService.java
  15. 45 29
      long-article-server/src/main/java/com/tzld/piaoquan/longarticle/service/local/impl/CardServiceImpl.java
  16. 41 14
      long-article-server/src/main/java/com/tzld/piaoquan/longarticle/service/local/impl/ContentServiceImpl.java
  17. 61 53
      long-article-server/src/main/java/com/tzld/piaoquan/longarticle/service/local/impl/CoreServiceImpl.java
  18. 2 1
      long-article-server/src/main/java/com/tzld/piaoquan/longarticle/service/local/impl/PlanAccountServiceImpl.java
  19. 1 0
      long-article-server/src/main/java/com/tzld/piaoquan/longarticle/service/local/impl/PublicContentServiceImpl.java
  20. 7 7
      long-article-server/src/main/java/com/tzld/piaoquan/longarticle/service/local/impl/RootSourceServiceImpl.java
  21. 3 0
      long-article-server/src/main/java/com/tzld/piaoquan/longarticle/service/remote/VideoService.java
  22. 2 0
      long-article-server/src/main/java/com/tzld/piaoquan/longarticle/service/remote/impl/MatchServiceImpl.java
  23. 17 2
      long-article-server/src/main/java/com/tzld/piaoquan/longarticle/service/remote/impl/VideoServiceImpl.java
  24. 231 0
      long-article-server/src/main/resources/mapper/OffVideoMapper.xml
  25. 23 8
      long-article-server/src/main/resources/mapper/PublishContentMapper.xml
  26. 517 0
      long-article-server/src/main/resources/mapper/SingleVideoSourceMapper.xml
  27. 2 1
      long-article-server/src/main/resources/mybatis-generator-config.xml

+ 40 - 0
long-article-server/src/main/java/com/tzld/piaoquan/longarticle/common/enums/SourceTypesEnum.java

@@ -0,0 +1,40 @@
+package com.tzld.piaoquan.longarticle.common.enums;
+
+import lombok.Getter;
+
+import java.util.Objects;
+
+@Getter
+public enum SourceTypesEnum {
+    producePlan(1, "生成计划"),
+    produceContent(2, "单个生成内容"),
+    crawlerPlan(3, "抓取计划"),
+    crawlerContent(4, "单个抓取内容"),
+    publishPlan(5, "发布计划"),
+    publishContent(6, "单个发布内容"),
+    pretreatPlan(7, "处理计划"),
+    pretreatContent(8, "单个处理内容"),
+    monitor_plan_query_contents(9, "监控计划查找输入源"),
+    template(10, "评论/私信模板"),
+    monitor_plan(11, "监控计划内容"),
+    longArticleVideoPoolSource(12, "长文视频池内容"),
+    other(999, ""),
+    ;
+
+    private final Integer val;
+    private final String description;
+
+    SourceTypesEnum(Integer val, String description) {
+        this.val = val;
+        this.description = description;
+    }
+
+    public static SourceTypesEnum from(Integer val) {
+        for (SourceTypesEnum typesEnum : SourceTypesEnum.values()) {
+            if (Objects.equals(typesEnum.val, val)) {
+                return typesEnum;
+            }
+        }
+        return null;
+    }
+}

+ 30 - 0
long-article-server/src/main/java/com/tzld/piaoquan/longarticle/dao/mapper/OffVideoMapper.java

@@ -0,0 +1,30 @@
+package com.tzld.piaoquan.longarticle.dao.mapper;
+
+import com.tzld.piaoquan.longarticle.model.po.OffVideo;
+import com.tzld.piaoquan.longarticle.model.po.OffVideoExample;
+import java.util.List;
+import org.apache.ibatis.annotations.Param;
+
+public interface OffVideoMapper {
+    long countByExample(OffVideoExample example);
+
+    int deleteByExample(OffVideoExample example);
+
+    int deleteByPrimaryKey(Long videoId);
+
+    int insert(OffVideo record);
+
+    int insertSelective(OffVideo record);
+
+    List<OffVideo> selectByExample(OffVideoExample example);
+
+    OffVideo selectByPrimaryKey(Long videoId);
+
+    int updateByExampleSelective(@Param("record") OffVideo record, @Param("example") OffVideoExample example);
+
+    int updateByExample(@Param("record") OffVideo record, @Param("example") OffVideoExample example);
+
+    int updateByPrimaryKeySelective(OffVideo record);
+
+    int updateByPrimaryKey(OffVideo record);
+}

+ 30 - 0
long-article-server/src/main/java/com/tzld/piaoquan/longarticle/dao/mapper/SingleVideoSourceMapper.java

@@ -0,0 +1,30 @@
+package com.tzld.piaoquan.longarticle.dao.mapper;
+
+import com.tzld.piaoquan.longarticle.model.po.SingleVideoSource;
+import com.tzld.piaoquan.longarticle.model.po.SingleVideoSourceExample;
+import java.util.List;
+import org.apache.ibatis.annotations.Param;
+
+public interface SingleVideoSourceMapper {
+    long countByExample(SingleVideoSourceExample example);
+
+    int deleteByExample(SingleVideoSourceExample example);
+
+    int deleteByPrimaryKey(Integer id);
+
+    int insert(SingleVideoSource record);
+
+    int insertSelective(SingleVideoSource record);
+
+    List<SingleVideoSource> selectByExample(SingleVideoSourceExample example);
+
+    SingleVideoSource selectByPrimaryKey(Integer id);
+
+    int updateByExampleSelective(@Param("record") SingleVideoSource record, @Param("example") SingleVideoSourceExample example);
+
+    int updateByExample(@Param("record") SingleVideoSource record, @Param("example") SingleVideoSourceExample example);
+
+    int updateByPrimaryKeySelective(SingleVideoSource record);
+
+    int updateByPrimaryKey(SingleVideoSource record);
+}

+ 2 - 0
long-article-server/src/main/java/com/tzld/piaoquan/longarticle/model/bo/MatchContent.java

@@ -20,4 +20,6 @@ public class MatchContent {
     private String title;
 
     private String flowPoolLevelTag;
+
+    private Integer sourceType;
 }

+ 0 - 61
long-article-server/src/main/java/com/tzld/piaoquan/longarticle/model/bo/PublishMiniprogramBo.java

@@ -1,61 +0,0 @@
-package com.tzld.piaoquan.longarticle.model.bo;
-
-import lombok.Data;
-import lombok.ToString;
-
-import java.util.Date;
-
-@Data
-@ToString
-public class PublishMiniprogramBo {
-
-    private Long contentId;
-
-    private Long planAccountId;
-
-    private String publishContentId;
-
-    private String appId;
-
-    private String appName;
-
-    private String avatar;
-
-    private Integer miniId;
-
-    private Integer miniProgramType;
-
-    private Long videoId;
-
-    private String source;
-
-    private String videoTitle;
-
-    private String videoCover;
-
-    private String videoPath;
-
-    private String productionPath;
-
-    private String rootSourceId;
-
-    private String rootShareId;
-
-    private Integer index;
-
-    private String traceId;
-
-    private String wxUrl;
-
-    private Integer crawlerVideoId;
-
-    private String videoOssPath;
-
-    private String userId;
-
-    private Integer isDelete;
-
-    private Date createTime;
-
-    private Date updateTime;
-}

+ 1 - 0
long-article-server/src/main/java/com/tzld/piaoquan/longarticle/model/dto/PublishArticleData.java

@@ -19,4 +19,5 @@ public class PublishArticleData {
     private String filterReason;
     private Double score;
     private String contentPoolType;
+    private Integer sourceType;
 }

+ 79 - 0
long-article-server/src/main/java/com/tzld/piaoquan/longarticle/model/po/OffVideo.java

@@ -0,0 +1,79 @@
+package com.tzld.piaoquan.longarticle.model.po;
+
+public class OffVideo {
+    private Long videoId;
+
+    private Long publishTime;
+
+    private Integer videoStatus;
+
+    private String traceId;
+
+    private Long getOffTime;
+
+    private Integer checkStatus;
+
+    public Long getVideoId() {
+        return videoId;
+    }
+
+    public void setVideoId(Long videoId) {
+        this.videoId = videoId;
+    }
+
+    public Long getPublishTime() {
+        return publishTime;
+    }
+
+    public void setPublishTime(Long publishTime) {
+        this.publishTime = publishTime;
+    }
+
+    public Integer getVideoStatus() {
+        return videoStatus;
+    }
+
+    public void setVideoStatus(Integer videoStatus) {
+        this.videoStatus = videoStatus;
+    }
+
+    public String getTraceId() {
+        return traceId;
+    }
+
+    public void setTraceId(String traceId) {
+        this.traceId = traceId;
+    }
+
+    public Long getGetOffTime() {
+        return getOffTime;
+    }
+
+    public void setGetOffTime(Long getOffTime) {
+        this.getOffTime = getOffTime;
+    }
+
+    public Integer getCheckStatus() {
+        return checkStatus;
+    }
+
+    public void setCheckStatus(Integer checkStatus) {
+        this.checkStatus = checkStatus;
+    }
+
+    @Override
+    public String toString() {
+        StringBuilder sb = new StringBuilder();
+        sb.append(getClass().getSimpleName());
+        sb.append(" [");
+        sb.append("Hash = ").append(hashCode());
+        sb.append(", videoId=").append(videoId);
+        sb.append(", publishTime=").append(publishTime);
+        sb.append(", videoStatus=").append(videoStatus);
+        sb.append(", traceId=").append(traceId);
+        sb.append(", getOffTime=").append(getOffTime);
+        sb.append(", checkStatus=").append(checkStatus);
+        sb.append("]");
+        return sb.toString();
+    }
+}

+ 581 - 0
long-article-server/src/main/java/com/tzld/piaoquan/longarticle/model/po/OffVideoExample.java

@@ -0,0 +1,581 @@
+package com.tzld.piaoquan.longarticle.model.po;
+
+import com.tzld.piaoquan.longarticle.utils.page.Page;
+import java.util.ArrayList;
+import java.util.List;
+
+public class OffVideoExample {
+    protected String orderByClause;
+
+    protected boolean distinct;
+
+    protected List<Criteria> oredCriteria;
+
+    protected Page page;
+
+    public OffVideoExample() {
+        oredCriteria = new ArrayList<Criteria>();
+    }
+
+    public void setOrderByClause(String orderByClause) {
+        this.orderByClause = orderByClause;
+    }
+
+    public String getOrderByClause() {
+        return orderByClause;
+    }
+
+    public void setDistinct(boolean distinct) {
+        this.distinct = distinct;
+    }
+
+    public boolean isDistinct() {
+        return distinct;
+    }
+
+    public List<Criteria> getOredCriteria() {
+        return oredCriteria;
+    }
+
+    public void or(Criteria criteria) {
+        oredCriteria.add(criteria);
+    }
+
+    public Criteria or() {
+        Criteria criteria = createCriteriaInternal();
+        oredCriteria.add(criteria);
+        return criteria;
+    }
+
+    public Criteria createCriteria() {
+        Criteria criteria = createCriteriaInternal();
+        if (oredCriteria.size() == 0) {
+            oredCriteria.add(criteria);
+        }
+        return criteria;
+    }
+
+    protected Criteria createCriteriaInternal() {
+        Criteria criteria = new Criteria();
+        return criteria;
+    }
+
+    public void clear() {
+        oredCriteria.clear();
+        orderByClause = null;
+        distinct = false;
+    }
+
+    public void setPage(Page page) {
+        this.page=page;
+    }
+
+    public Page getPage() {
+        return page;
+    }
+
+    protected abstract static class GeneratedCriteria {
+        protected List<Criterion> criteria;
+
+        protected GeneratedCriteria() {
+            super();
+            criteria = new ArrayList<Criterion>();
+        }
+
+        public boolean isValid() {
+            return criteria.size() > 0;
+        }
+
+        public List<Criterion> getAllCriteria() {
+            return criteria;
+        }
+
+        public List<Criterion> getCriteria() {
+            return criteria;
+        }
+
+        protected void addCriterion(String condition) {
+            if (condition == null) {
+                throw new RuntimeException("Value for condition cannot be null");
+            }
+            criteria.add(new Criterion(condition));
+        }
+
+        protected void addCriterion(String condition, Object value, String property) {
+            if (value == null) {
+                throw new RuntimeException("Value for " + property + " cannot be null");
+            }
+            criteria.add(new Criterion(condition, value));
+        }
+
+        protected void addCriterion(String condition, Object value1, Object value2, String property) {
+            if (value1 == null || value2 == null) {
+                throw new RuntimeException("Between values for " + property + " cannot be null");
+            }
+            criteria.add(new Criterion(condition, value1, value2));
+        }
+
+        public Criteria andVideoIdIsNull() {
+            addCriterion("video_id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoIdIsNotNull() {
+            addCriterion("video_id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoIdEqualTo(Long value) {
+            addCriterion("video_id =", value, "videoId");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoIdNotEqualTo(Long value) {
+            addCriterion("video_id <>", value, "videoId");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoIdGreaterThan(Long value) {
+            addCriterion("video_id >", value, "videoId");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoIdGreaterThanOrEqualTo(Long value) {
+            addCriterion("video_id >=", value, "videoId");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoIdLessThan(Long value) {
+            addCriterion("video_id <", value, "videoId");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoIdLessThanOrEqualTo(Long value) {
+            addCriterion("video_id <=", value, "videoId");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoIdIn(List<Long> values) {
+            addCriterion("video_id in", values, "videoId");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoIdNotIn(List<Long> values) {
+            addCriterion("video_id not in", values, "videoId");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoIdBetween(Long value1, Long value2) {
+            addCriterion("video_id between", value1, value2, "videoId");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoIdNotBetween(Long value1, Long value2) {
+            addCriterion("video_id not between", value1, value2, "videoId");
+            return (Criteria) this;
+        }
+
+        public Criteria andPublishTimeIsNull() {
+            addCriterion("publish_time is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPublishTimeIsNotNull() {
+            addCriterion("publish_time is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPublishTimeEqualTo(Long value) {
+            addCriterion("publish_time =", value, "publishTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andPublishTimeNotEqualTo(Long value) {
+            addCriterion("publish_time <>", value, "publishTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andPublishTimeGreaterThan(Long value) {
+            addCriterion("publish_time >", value, "publishTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andPublishTimeGreaterThanOrEqualTo(Long value) {
+            addCriterion("publish_time >=", value, "publishTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andPublishTimeLessThan(Long value) {
+            addCriterion("publish_time <", value, "publishTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andPublishTimeLessThanOrEqualTo(Long value) {
+            addCriterion("publish_time <=", value, "publishTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andPublishTimeIn(List<Long> values) {
+            addCriterion("publish_time in", values, "publishTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andPublishTimeNotIn(List<Long> values) {
+            addCriterion("publish_time not in", values, "publishTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andPublishTimeBetween(Long value1, Long value2) {
+            addCriterion("publish_time between", value1, value2, "publishTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andPublishTimeNotBetween(Long value1, Long value2) {
+            addCriterion("publish_time not between", value1, value2, "publishTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoStatusIsNull() {
+            addCriterion("video_status is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoStatusIsNotNull() {
+            addCriterion("video_status is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoStatusEqualTo(Integer value) {
+            addCriterion("video_status =", value, "videoStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoStatusNotEqualTo(Integer value) {
+            addCriterion("video_status <>", value, "videoStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoStatusGreaterThan(Integer value) {
+            addCriterion("video_status >", value, "videoStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoStatusGreaterThanOrEqualTo(Integer value) {
+            addCriterion("video_status >=", value, "videoStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoStatusLessThan(Integer value) {
+            addCriterion("video_status <", value, "videoStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoStatusLessThanOrEqualTo(Integer value) {
+            addCriterion("video_status <=", value, "videoStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoStatusIn(List<Integer> values) {
+            addCriterion("video_status in", values, "videoStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoStatusNotIn(List<Integer> values) {
+            addCriterion("video_status not in", values, "videoStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoStatusBetween(Integer value1, Integer value2) {
+            addCriterion("video_status between", value1, value2, "videoStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoStatusNotBetween(Integer value1, Integer value2) {
+            addCriterion("video_status not between", value1, value2, "videoStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andTraceIdIsNull() {
+            addCriterion("trace_id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andTraceIdIsNotNull() {
+            addCriterion("trace_id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andTraceIdEqualTo(String value) {
+            addCriterion("trace_id =", value, "traceId");
+            return (Criteria) this;
+        }
+
+        public Criteria andTraceIdNotEqualTo(String value) {
+            addCriterion("trace_id <>", value, "traceId");
+            return (Criteria) this;
+        }
+
+        public Criteria andTraceIdGreaterThan(String value) {
+            addCriterion("trace_id >", value, "traceId");
+            return (Criteria) this;
+        }
+
+        public Criteria andTraceIdGreaterThanOrEqualTo(String value) {
+            addCriterion("trace_id >=", value, "traceId");
+            return (Criteria) this;
+        }
+
+        public Criteria andTraceIdLessThan(String value) {
+            addCriterion("trace_id <", value, "traceId");
+            return (Criteria) this;
+        }
+
+        public Criteria andTraceIdLessThanOrEqualTo(String value) {
+            addCriterion("trace_id <=", value, "traceId");
+            return (Criteria) this;
+        }
+
+        public Criteria andTraceIdLike(String value) {
+            addCriterion("trace_id like", value, "traceId");
+            return (Criteria) this;
+        }
+
+        public Criteria andTraceIdNotLike(String value) {
+            addCriterion("trace_id not like", value, "traceId");
+            return (Criteria) this;
+        }
+
+        public Criteria andTraceIdIn(List<String> values) {
+            addCriterion("trace_id in", values, "traceId");
+            return (Criteria) this;
+        }
+
+        public Criteria andTraceIdNotIn(List<String> values) {
+            addCriterion("trace_id not in", values, "traceId");
+            return (Criteria) this;
+        }
+
+        public Criteria andTraceIdBetween(String value1, String value2) {
+            addCriterion("trace_id between", value1, value2, "traceId");
+            return (Criteria) this;
+        }
+
+        public Criteria andTraceIdNotBetween(String value1, String value2) {
+            addCriterion("trace_id not between", value1, value2, "traceId");
+            return (Criteria) this;
+        }
+
+        public Criteria andGetOffTimeIsNull() {
+            addCriterion("get_off_time is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andGetOffTimeIsNotNull() {
+            addCriterion("get_off_time is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andGetOffTimeEqualTo(Long value) {
+            addCriterion("get_off_time =", value, "getOffTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andGetOffTimeNotEqualTo(Long value) {
+            addCriterion("get_off_time <>", value, "getOffTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andGetOffTimeGreaterThan(Long value) {
+            addCriterion("get_off_time >", value, "getOffTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andGetOffTimeGreaterThanOrEqualTo(Long value) {
+            addCriterion("get_off_time >=", value, "getOffTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andGetOffTimeLessThan(Long value) {
+            addCriterion("get_off_time <", value, "getOffTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andGetOffTimeLessThanOrEqualTo(Long value) {
+            addCriterion("get_off_time <=", value, "getOffTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andGetOffTimeIn(List<Long> values) {
+            addCriterion("get_off_time in", values, "getOffTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andGetOffTimeNotIn(List<Long> values) {
+            addCriterion("get_off_time not in", values, "getOffTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andGetOffTimeBetween(Long value1, Long value2) {
+            addCriterion("get_off_time between", value1, value2, "getOffTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andGetOffTimeNotBetween(Long value1, Long value2) {
+            addCriterion("get_off_time not between", value1, value2, "getOffTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCheckStatusIsNull() {
+            addCriterion("check_status is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCheckStatusIsNotNull() {
+            addCriterion("check_status is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCheckStatusEqualTo(Integer value) {
+            addCriterion("check_status =", value, "checkStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andCheckStatusNotEqualTo(Integer value) {
+            addCriterion("check_status <>", value, "checkStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andCheckStatusGreaterThan(Integer value) {
+            addCriterion("check_status >", value, "checkStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andCheckStatusGreaterThanOrEqualTo(Integer value) {
+            addCriterion("check_status >=", value, "checkStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andCheckStatusLessThan(Integer value) {
+            addCriterion("check_status <", value, "checkStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andCheckStatusLessThanOrEqualTo(Integer value) {
+            addCriterion("check_status <=", value, "checkStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andCheckStatusIn(List<Integer> values) {
+            addCriterion("check_status in", values, "checkStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andCheckStatusNotIn(List<Integer> values) {
+            addCriterion("check_status not in", values, "checkStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andCheckStatusBetween(Integer value1, Integer value2) {
+            addCriterion("check_status between", value1, value2, "checkStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andCheckStatusNotBetween(Integer value1, Integer value2) {
+            addCriterion("check_status not between", value1, value2, "checkStatus");
+            return (Criteria) this;
+        }
+    }
+
+    public static class Criteria extends GeneratedCriteria {
+
+        protected Criteria() {
+            super();
+        }
+    }
+
+    public static class Criterion {
+        private String condition;
+
+        private Object value;
+
+        private Object secondValue;
+
+        private boolean noValue;
+
+        private boolean singleValue;
+
+        private boolean betweenValue;
+
+        private boolean listValue;
+
+        private String typeHandler;
+
+        public String getCondition() {
+            return condition;
+        }
+
+        public Object getValue() {
+            return value;
+        }
+
+        public Object getSecondValue() {
+            return secondValue;
+        }
+
+        public boolean isNoValue() {
+            return noValue;
+        }
+
+        public boolean isSingleValue() {
+            return singleValue;
+        }
+
+        public boolean isBetweenValue() {
+            return betweenValue;
+        }
+
+        public boolean isListValue() {
+            return listValue;
+        }
+
+        public String getTypeHandler() {
+            return typeHandler;
+        }
+
+        protected Criterion(String condition) {
+            super();
+            this.condition = condition;
+            this.typeHandler = null;
+            this.noValue = true;
+        }
+
+        protected Criterion(String condition, Object value, String typeHandler) {
+            super();
+            this.condition = condition;
+            this.value = value;
+            this.typeHandler = typeHandler;
+            if (value instanceof List<?>) {
+                this.listValue = true;
+            } else {
+                this.singleValue = true;
+            }
+        }
+
+        protected Criterion(String condition, Object value) {
+            this(condition, value, null);
+        }
+
+        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
+            super();
+            this.condition = condition;
+            this.value = value;
+            this.secondValue = secondValue;
+            this.typeHandler = typeHandler;
+            this.betweenValue = true;
+        }
+
+        protected Criterion(String condition, Object value, Object secondValue) {
+            this(condition, value, secondValue, null);
+        }
+    }
+}

+ 11 - 0
long-article-server/src/main/java/com/tzld/piaoquan/longarticle/model/po/PublishContent.java

@@ -15,6 +15,8 @@ public class PublishContent {
 
     private String contentPoolType;
 
+    private Integer sourceType;
+
     private Integer status;
 
     private String pushId;
@@ -75,6 +77,14 @@ public class PublishContent {
         this.contentPoolType = contentPoolType;
     }
 
+    public Integer getSourceType() {
+        return sourceType;
+    }
+
+    public void setSourceType(Integer sourceType) {
+        this.sourceType = sourceType;
+    }
+
     public Integer getStatus() {
         return status;
     }
@@ -135,6 +145,7 @@ public class PublishContent {
         sb.append(", sourceId=").append(sourceId);
         sb.append(", score=").append(score);
         sb.append(", contentPoolType=").append(contentPoolType);
+        sb.append(", sourceType=").append(sourceType);
         sb.append(", status=").append(status);
         sb.append(", pushId=").append(pushId);
         sb.append(", reason=").append(reason);

+ 60 - 0
long-article-server/src/main/java/com/tzld/piaoquan/longarticle/model/po/PublishContentExample.java

@@ -506,6 +506,66 @@ public class PublishContentExample {
             return (Criteria) this;
         }
 
+        public Criteria andSourceTypeIsNull() {
+            addCriterion("source_type is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceTypeIsNotNull() {
+            addCriterion("source_type is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceTypeEqualTo(Integer value) {
+            addCriterion("source_type =", value, "sourceType");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceTypeNotEqualTo(Integer value) {
+            addCriterion("source_type <>", value, "sourceType");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceTypeGreaterThan(Integer value) {
+            addCriterion("source_type >", value, "sourceType");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceTypeGreaterThanOrEqualTo(Integer value) {
+            addCriterion("source_type >=", value, "sourceType");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceTypeLessThan(Integer value) {
+            addCriterion("source_type <", value, "sourceType");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceTypeLessThanOrEqualTo(Integer value) {
+            addCriterion("source_type <=", value, "sourceType");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceTypeIn(List<Integer> values) {
+            addCriterion("source_type in", values, "sourceType");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceTypeNotIn(List<Integer> values) {
+            addCriterion("source_type not in", values, "sourceType");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceTypeBetween(Integer value1, Integer value2) {
+            addCriterion("source_type between", value1, value2, "sourceType");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceTypeNotBetween(Integer value1, Integer value2) {
+            addCriterion("source_type not between", value1, value2, "sourceType");
+            return (Criteria) this;
+        }
+
         public Criteria andStatusIsNull() {
             addCriterion("`status` is null");
             return (Criteria) this;

+ 277 - 0
long-article-server/src/main/java/com/tzld/piaoquan/longarticle/model/po/SingleVideoSource.java

@@ -0,0 +1,277 @@
+package com.tzld.piaoquan.longarticle.model.po;
+
+public class SingleVideoSource {
+    private Integer id;
+
+    private String contentTraceId;
+
+    private String articleTitle;
+
+    private String outAccountId;
+
+    private String outAccountName;
+
+    private Integer readCnt;
+
+    private Integer likeCnt;
+
+    private Boolean articleIndex;
+
+    private String articlePublishType;
+
+    private String articleUrl;
+
+    private String coverUrl;
+
+    private String videoOssPath;
+
+    private Integer flowPoolLevel;
+
+    private Boolean badStatus;
+
+    private Long publishTimestamp;
+
+    private Long crawlerTimestamp;
+
+    private String urlUniqueMd5;
+
+    private Long upLevelTimestamp;
+
+    private Long exitTimestamp;
+
+    private Integer sourceAccount;
+
+    private Integer auditStatus;
+
+    private Long auditVideoId;
+
+    private Long auditTimestamp;
+
+    private String miniProgramTitle;
+
+    public Integer getId() {
+        return id;
+    }
+
+    public void setId(Integer id) {
+        this.id = id;
+    }
+
+    public String getContentTraceId() {
+        return contentTraceId;
+    }
+
+    public void setContentTraceId(String contentTraceId) {
+        this.contentTraceId = contentTraceId;
+    }
+
+    public String getArticleTitle() {
+        return articleTitle;
+    }
+
+    public void setArticleTitle(String articleTitle) {
+        this.articleTitle = articleTitle;
+    }
+
+    public String getOutAccountId() {
+        return outAccountId;
+    }
+
+    public void setOutAccountId(String outAccountId) {
+        this.outAccountId = outAccountId;
+    }
+
+    public String getOutAccountName() {
+        return outAccountName;
+    }
+
+    public void setOutAccountName(String outAccountName) {
+        this.outAccountName = outAccountName;
+    }
+
+    public Integer getReadCnt() {
+        return readCnt;
+    }
+
+    public void setReadCnt(Integer readCnt) {
+        this.readCnt = readCnt;
+    }
+
+    public Integer getLikeCnt() {
+        return likeCnt;
+    }
+
+    public void setLikeCnt(Integer likeCnt) {
+        this.likeCnt = likeCnt;
+    }
+
+    public Boolean getArticleIndex() {
+        return articleIndex;
+    }
+
+    public void setArticleIndex(Boolean articleIndex) {
+        this.articleIndex = articleIndex;
+    }
+
+    public String getArticlePublishType() {
+        return articlePublishType;
+    }
+
+    public void setArticlePublishType(String articlePublishType) {
+        this.articlePublishType = articlePublishType;
+    }
+
+    public String getArticleUrl() {
+        return articleUrl;
+    }
+
+    public void setArticleUrl(String articleUrl) {
+        this.articleUrl = articleUrl;
+    }
+
+    public String getCoverUrl() {
+        return coverUrl;
+    }
+
+    public void setCoverUrl(String coverUrl) {
+        this.coverUrl = coverUrl;
+    }
+
+    public String getVideoOssPath() {
+        return videoOssPath;
+    }
+
+    public void setVideoOssPath(String videoOssPath) {
+        this.videoOssPath = videoOssPath;
+    }
+
+    public Integer getFlowPoolLevel() {
+        return flowPoolLevel;
+    }
+
+    public void setFlowPoolLevel(Integer flowPoolLevel) {
+        this.flowPoolLevel = flowPoolLevel;
+    }
+
+    public Boolean getBadStatus() {
+        return badStatus;
+    }
+
+    public void setBadStatus(Boolean badStatus) {
+        this.badStatus = badStatus;
+    }
+
+    public Long getPublishTimestamp() {
+        return publishTimestamp;
+    }
+
+    public void setPublishTimestamp(Long publishTimestamp) {
+        this.publishTimestamp = publishTimestamp;
+    }
+
+    public Long getCrawlerTimestamp() {
+        return crawlerTimestamp;
+    }
+
+    public void setCrawlerTimestamp(Long crawlerTimestamp) {
+        this.crawlerTimestamp = crawlerTimestamp;
+    }
+
+    public String getUrlUniqueMd5() {
+        return urlUniqueMd5;
+    }
+
+    public void setUrlUniqueMd5(String urlUniqueMd5) {
+        this.urlUniqueMd5 = urlUniqueMd5;
+    }
+
+    public Long getUpLevelTimestamp() {
+        return upLevelTimestamp;
+    }
+
+    public void setUpLevelTimestamp(Long upLevelTimestamp) {
+        this.upLevelTimestamp = upLevelTimestamp;
+    }
+
+    public Long getExitTimestamp() {
+        return exitTimestamp;
+    }
+
+    public void setExitTimestamp(Long exitTimestamp) {
+        this.exitTimestamp = exitTimestamp;
+    }
+
+    public Integer getSourceAccount() {
+        return sourceAccount;
+    }
+
+    public void setSourceAccount(Integer sourceAccount) {
+        this.sourceAccount = sourceAccount;
+    }
+
+    public Integer getAuditStatus() {
+        return auditStatus;
+    }
+
+    public void setAuditStatus(Integer auditStatus) {
+        this.auditStatus = auditStatus;
+    }
+
+    public Long getAuditVideoId() {
+        return auditVideoId;
+    }
+
+    public void setAuditVideoId(Long auditVideoId) {
+        this.auditVideoId = auditVideoId;
+    }
+
+    public Long getAuditTimestamp() {
+        return auditTimestamp;
+    }
+
+    public void setAuditTimestamp(Long auditTimestamp) {
+        this.auditTimestamp = auditTimestamp;
+    }
+
+    public String getMiniProgramTitle() {
+        return miniProgramTitle;
+    }
+
+    public void setMiniProgramTitle(String miniProgramTitle) {
+        this.miniProgramTitle = miniProgramTitle;
+    }
+
+    @Override
+    public String toString() {
+        StringBuilder sb = new StringBuilder();
+        sb.append(getClass().getSimpleName());
+        sb.append(" [");
+        sb.append("Hash = ").append(hashCode());
+        sb.append(", id=").append(id);
+        sb.append(", contentTraceId=").append(contentTraceId);
+        sb.append(", articleTitle=").append(articleTitle);
+        sb.append(", outAccountId=").append(outAccountId);
+        sb.append(", outAccountName=").append(outAccountName);
+        sb.append(", readCnt=").append(readCnt);
+        sb.append(", likeCnt=").append(likeCnt);
+        sb.append(", articleIndex=").append(articleIndex);
+        sb.append(", articlePublishType=").append(articlePublishType);
+        sb.append(", articleUrl=").append(articleUrl);
+        sb.append(", coverUrl=").append(coverUrl);
+        sb.append(", videoOssPath=").append(videoOssPath);
+        sb.append(", flowPoolLevel=").append(flowPoolLevel);
+        sb.append(", badStatus=").append(badStatus);
+        sb.append(", publishTimestamp=").append(publishTimestamp);
+        sb.append(", crawlerTimestamp=").append(crawlerTimestamp);
+        sb.append(", urlUniqueMd5=").append(urlUniqueMd5);
+        sb.append(", upLevelTimestamp=").append(upLevelTimestamp);
+        sb.append(", exitTimestamp=").append(exitTimestamp);
+        sb.append(", sourceAccount=").append(sourceAccount);
+        sb.append(", auditStatus=").append(auditStatus);
+        sb.append(", auditVideoId=").append(auditVideoId);
+        sb.append(", auditTimestamp=").append(auditTimestamp);
+        sb.append(", miniProgramTitle=").append(miniProgramTitle);
+        sb.append("]");
+        return sb.toString();
+    }
+}

+ 1751 - 0
long-article-server/src/main/java/com/tzld/piaoquan/longarticle/model/po/SingleVideoSourceExample.java

@@ -0,0 +1,1751 @@
+package com.tzld.piaoquan.longarticle.model.po;
+
+import com.tzld.piaoquan.longarticle.utils.page.Page;
+import java.util.ArrayList;
+import java.util.List;
+
+public class SingleVideoSourceExample {
+    protected String orderByClause;
+
+    protected boolean distinct;
+
+    protected List<Criteria> oredCriteria;
+
+    protected Page page;
+
+    public SingleVideoSourceExample() {
+        oredCriteria = new ArrayList<Criteria>();
+    }
+
+    public void setOrderByClause(String orderByClause) {
+        this.orderByClause = orderByClause;
+    }
+
+    public String getOrderByClause() {
+        return orderByClause;
+    }
+
+    public void setDistinct(boolean distinct) {
+        this.distinct = distinct;
+    }
+
+    public boolean isDistinct() {
+        return distinct;
+    }
+
+    public List<Criteria> getOredCriteria() {
+        return oredCriteria;
+    }
+
+    public void or(Criteria criteria) {
+        oredCriteria.add(criteria);
+    }
+
+    public Criteria or() {
+        Criteria criteria = createCriteriaInternal();
+        oredCriteria.add(criteria);
+        return criteria;
+    }
+
+    public Criteria createCriteria() {
+        Criteria criteria = createCriteriaInternal();
+        if (oredCriteria.size() == 0) {
+            oredCriteria.add(criteria);
+        }
+        return criteria;
+    }
+
+    protected Criteria createCriteriaInternal() {
+        Criteria criteria = new Criteria();
+        return criteria;
+    }
+
+    public void clear() {
+        oredCriteria.clear();
+        orderByClause = null;
+        distinct = false;
+    }
+
+    public void setPage(Page page) {
+        this.page=page;
+    }
+
+    public Page getPage() {
+        return page;
+    }
+
+    protected abstract static class GeneratedCriteria {
+        protected List<Criterion> criteria;
+
+        protected GeneratedCriteria() {
+            super();
+            criteria = new ArrayList<Criterion>();
+        }
+
+        public boolean isValid() {
+            return criteria.size() > 0;
+        }
+
+        public List<Criterion> getAllCriteria() {
+            return criteria;
+        }
+
+        public List<Criterion> getCriteria() {
+            return criteria;
+        }
+
+        protected void addCriterion(String condition) {
+            if (condition == null) {
+                throw new RuntimeException("Value for condition cannot be null");
+            }
+            criteria.add(new Criterion(condition));
+        }
+
+        protected void addCriterion(String condition, Object value, String property) {
+            if (value == null) {
+                throw new RuntimeException("Value for " + property + " cannot be null");
+            }
+            criteria.add(new Criterion(condition, value));
+        }
+
+        protected void addCriterion(String condition, Object value1, Object value2, String property) {
+            if (value1 == null || value2 == null) {
+                throw new RuntimeException("Between values for " + property + " cannot be null");
+            }
+            criteria.add(new Criterion(condition, value1, value2));
+        }
+
+        public Criteria andIdIsNull() {
+            addCriterion("id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdIsNotNull() {
+            addCriterion("id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdEqualTo(Integer value) {
+            addCriterion("id =", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotEqualTo(Integer value) {
+            addCriterion("id <>", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdGreaterThan(Integer value) {
+            addCriterion("id >", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
+            addCriterion("id >=", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLessThan(Integer value) {
+            addCriterion("id <", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLessThanOrEqualTo(Integer value) {
+            addCriterion("id <=", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdIn(List<Integer> values) {
+            addCriterion("id in", values, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotIn(List<Integer> values) {
+            addCriterion("id not in", values, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdBetween(Integer value1, Integer value2) {
+            addCriterion("id between", value1, value2, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotBetween(Integer value1, Integer value2) {
+            addCriterion("id not between", value1, value2, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentTraceIdIsNull() {
+            addCriterion("content_trace_id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentTraceIdIsNotNull() {
+            addCriterion("content_trace_id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentTraceIdEqualTo(String value) {
+            addCriterion("content_trace_id =", value, "contentTraceId");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentTraceIdNotEqualTo(String value) {
+            addCriterion("content_trace_id <>", value, "contentTraceId");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentTraceIdGreaterThan(String value) {
+            addCriterion("content_trace_id >", value, "contentTraceId");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentTraceIdGreaterThanOrEqualTo(String value) {
+            addCriterion("content_trace_id >=", value, "contentTraceId");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentTraceIdLessThan(String value) {
+            addCriterion("content_trace_id <", value, "contentTraceId");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentTraceIdLessThanOrEqualTo(String value) {
+            addCriterion("content_trace_id <=", value, "contentTraceId");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentTraceIdLike(String value) {
+            addCriterion("content_trace_id like", value, "contentTraceId");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentTraceIdNotLike(String value) {
+            addCriterion("content_trace_id not like", value, "contentTraceId");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentTraceIdIn(List<String> values) {
+            addCriterion("content_trace_id in", values, "contentTraceId");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentTraceIdNotIn(List<String> values) {
+            addCriterion("content_trace_id not in", values, "contentTraceId");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentTraceIdBetween(String value1, String value2) {
+            addCriterion("content_trace_id between", value1, value2, "contentTraceId");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentTraceIdNotBetween(String value1, String value2) {
+            addCriterion("content_trace_id not between", value1, value2, "contentTraceId");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleTitleIsNull() {
+            addCriterion("article_title is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleTitleIsNotNull() {
+            addCriterion("article_title is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleTitleEqualTo(String value) {
+            addCriterion("article_title =", value, "articleTitle");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleTitleNotEqualTo(String value) {
+            addCriterion("article_title <>", value, "articleTitle");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleTitleGreaterThan(String value) {
+            addCriterion("article_title >", value, "articleTitle");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleTitleGreaterThanOrEqualTo(String value) {
+            addCriterion("article_title >=", value, "articleTitle");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleTitleLessThan(String value) {
+            addCriterion("article_title <", value, "articleTitle");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleTitleLessThanOrEqualTo(String value) {
+            addCriterion("article_title <=", value, "articleTitle");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleTitleLike(String value) {
+            addCriterion("article_title like", value, "articleTitle");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleTitleNotLike(String value) {
+            addCriterion("article_title not like", value, "articleTitle");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleTitleIn(List<String> values) {
+            addCriterion("article_title in", values, "articleTitle");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleTitleNotIn(List<String> values) {
+            addCriterion("article_title not in", values, "articleTitle");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleTitleBetween(String value1, String value2) {
+            addCriterion("article_title between", value1, value2, "articleTitle");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleTitleNotBetween(String value1, String value2) {
+            addCriterion("article_title not between", value1, value2, "articleTitle");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutAccountIdIsNull() {
+            addCriterion("out_account_id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutAccountIdIsNotNull() {
+            addCriterion("out_account_id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutAccountIdEqualTo(String value) {
+            addCriterion("out_account_id =", value, "outAccountId");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutAccountIdNotEqualTo(String value) {
+            addCriterion("out_account_id <>", value, "outAccountId");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutAccountIdGreaterThan(String value) {
+            addCriterion("out_account_id >", value, "outAccountId");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutAccountIdGreaterThanOrEqualTo(String value) {
+            addCriterion("out_account_id >=", value, "outAccountId");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutAccountIdLessThan(String value) {
+            addCriterion("out_account_id <", value, "outAccountId");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutAccountIdLessThanOrEqualTo(String value) {
+            addCriterion("out_account_id <=", value, "outAccountId");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutAccountIdLike(String value) {
+            addCriterion("out_account_id like", value, "outAccountId");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutAccountIdNotLike(String value) {
+            addCriterion("out_account_id not like", value, "outAccountId");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutAccountIdIn(List<String> values) {
+            addCriterion("out_account_id in", values, "outAccountId");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutAccountIdNotIn(List<String> values) {
+            addCriterion("out_account_id not in", values, "outAccountId");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutAccountIdBetween(String value1, String value2) {
+            addCriterion("out_account_id between", value1, value2, "outAccountId");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutAccountIdNotBetween(String value1, String value2) {
+            addCriterion("out_account_id not between", value1, value2, "outAccountId");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutAccountNameIsNull() {
+            addCriterion("out_account_name is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutAccountNameIsNotNull() {
+            addCriterion("out_account_name is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutAccountNameEqualTo(String value) {
+            addCriterion("out_account_name =", value, "outAccountName");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutAccountNameNotEqualTo(String value) {
+            addCriterion("out_account_name <>", value, "outAccountName");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutAccountNameGreaterThan(String value) {
+            addCriterion("out_account_name >", value, "outAccountName");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutAccountNameGreaterThanOrEqualTo(String value) {
+            addCriterion("out_account_name >=", value, "outAccountName");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutAccountNameLessThan(String value) {
+            addCriterion("out_account_name <", value, "outAccountName");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutAccountNameLessThanOrEqualTo(String value) {
+            addCriterion("out_account_name <=", value, "outAccountName");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutAccountNameLike(String value) {
+            addCriterion("out_account_name like", value, "outAccountName");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutAccountNameNotLike(String value) {
+            addCriterion("out_account_name not like", value, "outAccountName");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutAccountNameIn(List<String> values) {
+            addCriterion("out_account_name in", values, "outAccountName");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutAccountNameNotIn(List<String> values) {
+            addCriterion("out_account_name not in", values, "outAccountName");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutAccountNameBetween(String value1, String value2) {
+            addCriterion("out_account_name between", value1, value2, "outAccountName");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutAccountNameNotBetween(String value1, String value2) {
+            addCriterion("out_account_name not between", value1, value2, "outAccountName");
+            return (Criteria) this;
+        }
+
+        public Criteria andReadCntIsNull() {
+            addCriterion("read_cnt is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andReadCntIsNotNull() {
+            addCriterion("read_cnt is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andReadCntEqualTo(Integer value) {
+            addCriterion("read_cnt =", value, "readCnt");
+            return (Criteria) this;
+        }
+
+        public Criteria andReadCntNotEqualTo(Integer value) {
+            addCriterion("read_cnt <>", value, "readCnt");
+            return (Criteria) this;
+        }
+
+        public Criteria andReadCntGreaterThan(Integer value) {
+            addCriterion("read_cnt >", value, "readCnt");
+            return (Criteria) this;
+        }
+
+        public Criteria andReadCntGreaterThanOrEqualTo(Integer value) {
+            addCriterion("read_cnt >=", value, "readCnt");
+            return (Criteria) this;
+        }
+
+        public Criteria andReadCntLessThan(Integer value) {
+            addCriterion("read_cnt <", value, "readCnt");
+            return (Criteria) this;
+        }
+
+        public Criteria andReadCntLessThanOrEqualTo(Integer value) {
+            addCriterion("read_cnt <=", value, "readCnt");
+            return (Criteria) this;
+        }
+
+        public Criteria andReadCntIn(List<Integer> values) {
+            addCriterion("read_cnt in", values, "readCnt");
+            return (Criteria) this;
+        }
+
+        public Criteria andReadCntNotIn(List<Integer> values) {
+            addCriterion("read_cnt not in", values, "readCnt");
+            return (Criteria) this;
+        }
+
+        public Criteria andReadCntBetween(Integer value1, Integer value2) {
+            addCriterion("read_cnt between", value1, value2, "readCnt");
+            return (Criteria) this;
+        }
+
+        public Criteria andReadCntNotBetween(Integer value1, Integer value2) {
+            addCriterion("read_cnt not between", value1, value2, "readCnt");
+            return (Criteria) this;
+        }
+
+        public Criteria andLikeCntIsNull() {
+            addCriterion("like_cnt is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andLikeCntIsNotNull() {
+            addCriterion("like_cnt is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andLikeCntEqualTo(Integer value) {
+            addCriterion("like_cnt =", value, "likeCnt");
+            return (Criteria) this;
+        }
+
+        public Criteria andLikeCntNotEqualTo(Integer value) {
+            addCriterion("like_cnt <>", value, "likeCnt");
+            return (Criteria) this;
+        }
+
+        public Criteria andLikeCntGreaterThan(Integer value) {
+            addCriterion("like_cnt >", value, "likeCnt");
+            return (Criteria) this;
+        }
+
+        public Criteria andLikeCntGreaterThanOrEqualTo(Integer value) {
+            addCriterion("like_cnt >=", value, "likeCnt");
+            return (Criteria) this;
+        }
+
+        public Criteria andLikeCntLessThan(Integer value) {
+            addCriterion("like_cnt <", value, "likeCnt");
+            return (Criteria) this;
+        }
+
+        public Criteria andLikeCntLessThanOrEqualTo(Integer value) {
+            addCriterion("like_cnt <=", value, "likeCnt");
+            return (Criteria) this;
+        }
+
+        public Criteria andLikeCntIn(List<Integer> values) {
+            addCriterion("like_cnt in", values, "likeCnt");
+            return (Criteria) this;
+        }
+
+        public Criteria andLikeCntNotIn(List<Integer> values) {
+            addCriterion("like_cnt not in", values, "likeCnt");
+            return (Criteria) this;
+        }
+
+        public Criteria andLikeCntBetween(Integer value1, Integer value2) {
+            addCriterion("like_cnt between", value1, value2, "likeCnt");
+            return (Criteria) this;
+        }
+
+        public Criteria andLikeCntNotBetween(Integer value1, Integer value2) {
+            addCriterion("like_cnt not between", value1, value2, "likeCnt");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleIndexIsNull() {
+            addCriterion("article_index is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleIndexIsNotNull() {
+            addCriterion("article_index is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleIndexEqualTo(Boolean value) {
+            addCriterion("article_index =", value, "articleIndex");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleIndexNotEqualTo(Boolean value) {
+            addCriterion("article_index <>", value, "articleIndex");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleIndexGreaterThan(Boolean value) {
+            addCriterion("article_index >", value, "articleIndex");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleIndexGreaterThanOrEqualTo(Boolean value) {
+            addCriterion("article_index >=", value, "articleIndex");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleIndexLessThan(Boolean value) {
+            addCriterion("article_index <", value, "articleIndex");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleIndexLessThanOrEqualTo(Boolean value) {
+            addCriterion("article_index <=", value, "articleIndex");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleIndexIn(List<Boolean> values) {
+            addCriterion("article_index in", values, "articleIndex");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleIndexNotIn(List<Boolean> values) {
+            addCriterion("article_index not in", values, "articleIndex");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleIndexBetween(Boolean value1, Boolean value2) {
+            addCriterion("article_index between", value1, value2, "articleIndex");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleIndexNotBetween(Boolean value1, Boolean value2) {
+            addCriterion("article_index not between", value1, value2, "articleIndex");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticlePublishTypeIsNull() {
+            addCriterion("article_publish_type is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticlePublishTypeIsNotNull() {
+            addCriterion("article_publish_type is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticlePublishTypeEqualTo(String value) {
+            addCriterion("article_publish_type =", value, "articlePublishType");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticlePublishTypeNotEqualTo(String value) {
+            addCriterion("article_publish_type <>", value, "articlePublishType");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticlePublishTypeGreaterThan(String value) {
+            addCriterion("article_publish_type >", value, "articlePublishType");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticlePublishTypeGreaterThanOrEqualTo(String value) {
+            addCriterion("article_publish_type >=", value, "articlePublishType");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticlePublishTypeLessThan(String value) {
+            addCriterion("article_publish_type <", value, "articlePublishType");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticlePublishTypeLessThanOrEqualTo(String value) {
+            addCriterion("article_publish_type <=", value, "articlePublishType");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticlePublishTypeLike(String value) {
+            addCriterion("article_publish_type like", value, "articlePublishType");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticlePublishTypeNotLike(String value) {
+            addCriterion("article_publish_type not like", value, "articlePublishType");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticlePublishTypeIn(List<String> values) {
+            addCriterion("article_publish_type in", values, "articlePublishType");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticlePublishTypeNotIn(List<String> values) {
+            addCriterion("article_publish_type not in", values, "articlePublishType");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticlePublishTypeBetween(String value1, String value2) {
+            addCriterion("article_publish_type between", value1, value2, "articlePublishType");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticlePublishTypeNotBetween(String value1, String value2) {
+            addCriterion("article_publish_type not between", value1, value2, "articlePublishType");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleUrlIsNull() {
+            addCriterion("article_url is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleUrlIsNotNull() {
+            addCriterion("article_url is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleUrlEqualTo(String value) {
+            addCriterion("article_url =", value, "articleUrl");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleUrlNotEqualTo(String value) {
+            addCriterion("article_url <>", value, "articleUrl");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleUrlGreaterThan(String value) {
+            addCriterion("article_url >", value, "articleUrl");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleUrlGreaterThanOrEqualTo(String value) {
+            addCriterion("article_url >=", value, "articleUrl");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleUrlLessThan(String value) {
+            addCriterion("article_url <", value, "articleUrl");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleUrlLessThanOrEqualTo(String value) {
+            addCriterion("article_url <=", value, "articleUrl");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleUrlLike(String value) {
+            addCriterion("article_url like", value, "articleUrl");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleUrlNotLike(String value) {
+            addCriterion("article_url not like", value, "articleUrl");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleUrlIn(List<String> values) {
+            addCriterion("article_url in", values, "articleUrl");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleUrlNotIn(List<String> values) {
+            addCriterion("article_url not in", values, "articleUrl");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleUrlBetween(String value1, String value2) {
+            addCriterion("article_url between", value1, value2, "articleUrl");
+            return (Criteria) this;
+        }
+
+        public Criteria andArticleUrlNotBetween(String value1, String value2) {
+            addCriterion("article_url not between", value1, value2, "articleUrl");
+            return (Criteria) this;
+        }
+
+        public Criteria andCoverUrlIsNull() {
+            addCriterion("cover_url is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCoverUrlIsNotNull() {
+            addCriterion("cover_url is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCoverUrlEqualTo(String value) {
+            addCriterion("cover_url =", value, "coverUrl");
+            return (Criteria) this;
+        }
+
+        public Criteria andCoverUrlNotEqualTo(String value) {
+            addCriterion("cover_url <>", value, "coverUrl");
+            return (Criteria) this;
+        }
+
+        public Criteria andCoverUrlGreaterThan(String value) {
+            addCriterion("cover_url >", value, "coverUrl");
+            return (Criteria) this;
+        }
+
+        public Criteria andCoverUrlGreaterThanOrEqualTo(String value) {
+            addCriterion("cover_url >=", value, "coverUrl");
+            return (Criteria) this;
+        }
+
+        public Criteria andCoverUrlLessThan(String value) {
+            addCriterion("cover_url <", value, "coverUrl");
+            return (Criteria) this;
+        }
+
+        public Criteria andCoverUrlLessThanOrEqualTo(String value) {
+            addCriterion("cover_url <=", value, "coverUrl");
+            return (Criteria) this;
+        }
+
+        public Criteria andCoverUrlLike(String value) {
+            addCriterion("cover_url like", value, "coverUrl");
+            return (Criteria) this;
+        }
+
+        public Criteria andCoverUrlNotLike(String value) {
+            addCriterion("cover_url not like", value, "coverUrl");
+            return (Criteria) this;
+        }
+
+        public Criteria andCoverUrlIn(List<String> values) {
+            addCriterion("cover_url in", values, "coverUrl");
+            return (Criteria) this;
+        }
+
+        public Criteria andCoverUrlNotIn(List<String> values) {
+            addCriterion("cover_url not in", values, "coverUrl");
+            return (Criteria) this;
+        }
+
+        public Criteria andCoverUrlBetween(String value1, String value2) {
+            addCriterion("cover_url between", value1, value2, "coverUrl");
+            return (Criteria) this;
+        }
+
+        public Criteria andCoverUrlNotBetween(String value1, String value2) {
+            addCriterion("cover_url not between", value1, value2, "coverUrl");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoOssPathIsNull() {
+            addCriterion("video_oss_path is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoOssPathIsNotNull() {
+            addCriterion("video_oss_path is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoOssPathEqualTo(String value) {
+            addCriterion("video_oss_path =", value, "videoOssPath");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoOssPathNotEqualTo(String value) {
+            addCriterion("video_oss_path <>", value, "videoOssPath");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoOssPathGreaterThan(String value) {
+            addCriterion("video_oss_path >", value, "videoOssPath");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoOssPathGreaterThanOrEqualTo(String value) {
+            addCriterion("video_oss_path >=", value, "videoOssPath");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoOssPathLessThan(String value) {
+            addCriterion("video_oss_path <", value, "videoOssPath");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoOssPathLessThanOrEqualTo(String value) {
+            addCriterion("video_oss_path <=", value, "videoOssPath");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoOssPathLike(String value) {
+            addCriterion("video_oss_path like", value, "videoOssPath");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoOssPathNotLike(String value) {
+            addCriterion("video_oss_path not like", value, "videoOssPath");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoOssPathIn(List<String> values) {
+            addCriterion("video_oss_path in", values, "videoOssPath");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoOssPathNotIn(List<String> values) {
+            addCriterion("video_oss_path not in", values, "videoOssPath");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoOssPathBetween(String value1, String value2) {
+            addCriterion("video_oss_path between", value1, value2, "videoOssPath");
+            return (Criteria) this;
+        }
+
+        public Criteria andVideoOssPathNotBetween(String value1, String value2) {
+            addCriterion("video_oss_path not between", value1, value2, "videoOssPath");
+            return (Criteria) this;
+        }
+
+        public Criteria andFlowPoolLevelIsNull() {
+            addCriterion("flow_pool_level is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andFlowPoolLevelIsNotNull() {
+            addCriterion("flow_pool_level is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andFlowPoolLevelEqualTo(Integer value) {
+            addCriterion("flow_pool_level =", value, "flowPoolLevel");
+            return (Criteria) this;
+        }
+
+        public Criteria andFlowPoolLevelNotEqualTo(Integer value) {
+            addCriterion("flow_pool_level <>", value, "flowPoolLevel");
+            return (Criteria) this;
+        }
+
+        public Criteria andFlowPoolLevelGreaterThan(Integer value) {
+            addCriterion("flow_pool_level >", value, "flowPoolLevel");
+            return (Criteria) this;
+        }
+
+        public Criteria andFlowPoolLevelGreaterThanOrEqualTo(Integer value) {
+            addCriterion("flow_pool_level >=", value, "flowPoolLevel");
+            return (Criteria) this;
+        }
+
+        public Criteria andFlowPoolLevelLessThan(Integer value) {
+            addCriterion("flow_pool_level <", value, "flowPoolLevel");
+            return (Criteria) this;
+        }
+
+        public Criteria andFlowPoolLevelLessThanOrEqualTo(Integer value) {
+            addCriterion("flow_pool_level <=", value, "flowPoolLevel");
+            return (Criteria) this;
+        }
+
+        public Criteria andFlowPoolLevelIn(List<Integer> values) {
+            addCriterion("flow_pool_level in", values, "flowPoolLevel");
+            return (Criteria) this;
+        }
+
+        public Criteria andFlowPoolLevelNotIn(List<Integer> values) {
+            addCriterion("flow_pool_level not in", values, "flowPoolLevel");
+            return (Criteria) this;
+        }
+
+        public Criteria andFlowPoolLevelBetween(Integer value1, Integer value2) {
+            addCriterion("flow_pool_level between", value1, value2, "flowPoolLevel");
+            return (Criteria) this;
+        }
+
+        public Criteria andFlowPoolLevelNotBetween(Integer value1, Integer value2) {
+            addCriterion("flow_pool_level not between", value1, value2, "flowPoolLevel");
+            return (Criteria) this;
+        }
+
+        public Criteria andBadStatusIsNull() {
+            addCriterion("bad_status is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andBadStatusIsNotNull() {
+            addCriterion("bad_status is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andBadStatusEqualTo(Boolean value) {
+            addCriterion("bad_status =", value, "badStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andBadStatusNotEqualTo(Boolean value) {
+            addCriterion("bad_status <>", value, "badStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andBadStatusGreaterThan(Boolean value) {
+            addCriterion("bad_status >", value, "badStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andBadStatusGreaterThanOrEqualTo(Boolean value) {
+            addCriterion("bad_status >=", value, "badStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andBadStatusLessThan(Boolean value) {
+            addCriterion("bad_status <", value, "badStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andBadStatusLessThanOrEqualTo(Boolean value) {
+            addCriterion("bad_status <=", value, "badStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andBadStatusIn(List<Boolean> values) {
+            addCriterion("bad_status in", values, "badStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andBadStatusNotIn(List<Boolean> values) {
+            addCriterion("bad_status not in", values, "badStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andBadStatusBetween(Boolean value1, Boolean value2) {
+            addCriterion("bad_status between", value1, value2, "badStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andBadStatusNotBetween(Boolean value1, Boolean value2) {
+            addCriterion("bad_status not between", value1, value2, "badStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andPublishTimestampIsNull() {
+            addCriterion("publish_timestamp is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPublishTimestampIsNotNull() {
+            addCriterion("publish_timestamp is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPublishTimestampEqualTo(Long value) {
+            addCriterion("publish_timestamp =", value, "publishTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andPublishTimestampNotEqualTo(Long value) {
+            addCriterion("publish_timestamp <>", value, "publishTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andPublishTimestampGreaterThan(Long value) {
+            addCriterion("publish_timestamp >", value, "publishTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andPublishTimestampGreaterThanOrEqualTo(Long value) {
+            addCriterion("publish_timestamp >=", value, "publishTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andPublishTimestampLessThan(Long value) {
+            addCriterion("publish_timestamp <", value, "publishTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andPublishTimestampLessThanOrEqualTo(Long value) {
+            addCriterion("publish_timestamp <=", value, "publishTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andPublishTimestampIn(List<Long> values) {
+            addCriterion("publish_timestamp in", values, "publishTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andPublishTimestampNotIn(List<Long> values) {
+            addCriterion("publish_timestamp not in", values, "publishTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andPublishTimestampBetween(Long value1, Long value2) {
+            addCriterion("publish_timestamp between", value1, value2, "publishTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andPublishTimestampNotBetween(Long value1, Long value2) {
+            addCriterion("publish_timestamp not between", value1, value2, "publishTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andCrawlerTimestampIsNull() {
+            addCriterion("crawler_timestamp is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCrawlerTimestampIsNotNull() {
+            addCriterion("crawler_timestamp is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCrawlerTimestampEqualTo(Long value) {
+            addCriterion("crawler_timestamp =", value, "crawlerTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andCrawlerTimestampNotEqualTo(Long value) {
+            addCriterion("crawler_timestamp <>", value, "crawlerTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andCrawlerTimestampGreaterThan(Long value) {
+            addCriterion("crawler_timestamp >", value, "crawlerTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andCrawlerTimestampGreaterThanOrEqualTo(Long value) {
+            addCriterion("crawler_timestamp >=", value, "crawlerTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andCrawlerTimestampLessThan(Long value) {
+            addCriterion("crawler_timestamp <", value, "crawlerTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andCrawlerTimestampLessThanOrEqualTo(Long value) {
+            addCriterion("crawler_timestamp <=", value, "crawlerTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andCrawlerTimestampIn(List<Long> values) {
+            addCriterion("crawler_timestamp in", values, "crawlerTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andCrawlerTimestampNotIn(List<Long> values) {
+            addCriterion("crawler_timestamp not in", values, "crawlerTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andCrawlerTimestampBetween(Long value1, Long value2) {
+            addCriterion("crawler_timestamp between", value1, value2, "crawlerTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andCrawlerTimestampNotBetween(Long value1, Long value2) {
+            addCriterion("crawler_timestamp not between", value1, value2, "crawlerTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andUrlUniqueMd5IsNull() {
+            addCriterion("url_unique_md5 is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUrlUniqueMd5IsNotNull() {
+            addCriterion("url_unique_md5 is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUrlUniqueMd5EqualTo(String value) {
+            addCriterion("url_unique_md5 =", value, "urlUniqueMd5");
+            return (Criteria) this;
+        }
+
+        public Criteria andUrlUniqueMd5NotEqualTo(String value) {
+            addCriterion("url_unique_md5 <>", value, "urlUniqueMd5");
+            return (Criteria) this;
+        }
+
+        public Criteria andUrlUniqueMd5GreaterThan(String value) {
+            addCriterion("url_unique_md5 >", value, "urlUniqueMd5");
+            return (Criteria) this;
+        }
+
+        public Criteria andUrlUniqueMd5GreaterThanOrEqualTo(String value) {
+            addCriterion("url_unique_md5 >=", value, "urlUniqueMd5");
+            return (Criteria) this;
+        }
+
+        public Criteria andUrlUniqueMd5LessThan(String value) {
+            addCriterion("url_unique_md5 <", value, "urlUniqueMd5");
+            return (Criteria) this;
+        }
+
+        public Criteria andUrlUniqueMd5LessThanOrEqualTo(String value) {
+            addCriterion("url_unique_md5 <=", value, "urlUniqueMd5");
+            return (Criteria) this;
+        }
+
+        public Criteria andUrlUniqueMd5Like(String value) {
+            addCriterion("url_unique_md5 like", value, "urlUniqueMd5");
+            return (Criteria) this;
+        }
+
+        public Criteria andUrlUniqueMd5NotLike(String value) {
+            addCriterion("url_unique_md5 not like", value, "urlUniqueMd5");
+            return (Criteria) this;
+        }
+
+        public Criteria andUrlUniqueMd5In(List<String> values) {
+            addCriterion("url_unique_md5 in", values, "urlUniqueMd5");
+            return (Criteria) this;
+        }
+
+        public Criteria andUrlUniqueMd5NotIn(List<String> values) {
+            addCriterion("url_unique_md5 not in", values, "urlUniqueMd5");
+            return (Criteria) this;
+        }
+
+        public Criteria andUrlUniqueMd5Between(String value1, String value2) {
+            addCriterion("url_unique_md5 between", value1, value2, "urlUniqueMd5");
+            return (Criteria) this;
+        }
+
+        public Criteria andUrlUniqueMd5NotBetween(String value1, String value2) {
+            addCriterion("url_unique_md5 not between", value1, value2, "urlUniqueMd5");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpLevelTimestampIsNull() {
+            addCriterion("up_level_timestamp is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpLevelTimestampIsNotNull() {
+            addCriterion("up_level_timestamp is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpLevelTimestampEqualTo(Long value) {
+            addCriterion("up_level_timestamp =", value, "upLevelTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpLevelTimestampNotEqualTo(Long value) {
+            addCriterion("up_level_timestamp <>", value, "upLevelTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpLevelTimestampGreaterThan(Long value) {
+            addCriterion("up_level_timestamp >", value, "upLevelTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpLevelTimestampGreaterThanOrEqualTo(Long value) {
+            addCriterion("up_level_timestamp >=", value, "upLevelTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpLevelTimestampLessThan(Long value) {
+            addCriterion("up_level_timestamp <", value, "upLevelTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpLevelTimestampLessThanOrEqualTo(Long value) {
+            addCriterion("up_level_timestamp <=", value, "upLevelTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpLevelTimestampIn(List<Long> values) {
+            addCriterion("up_level_timestamp in", values, "upLevelTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpLevelTimestampNotIn(List<Long> values) {
+            addCriterion("up_level_timestamp not in", values, "upLevelTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpLevelTimestampBetween(Long value1, Long value2) {
+            addCriterion("up_level_timestamp between", value1, value2, "upLevelTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpLevelTimestampNotBetween(Long value1, Long value2) {
+            addCriterion("up_level_timestamp not between", value1, value2, "upLevelTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andExitTimestampIsNull() {
+            addCriterion("exit_timestamp is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andExitTimestampIsNotNull() {
+            addCriterion("exit_timestamp is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andExitTimestampEqualTo(Long value) {
+            addCriterion("exit_timestamp =", value, "exitTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andExitTimestampNotEqualTo(Long value) {
+            addCriterion("exit_timestamp <>", value, "exitTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andExitTimestampGreaterThan(Long value) {
+            addCriterion("exit_timestamp >", value, "exitTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andExitTimestampGreaterThanOrEqualTo(Long value) {
+            addCriterion("exit_timestamp >=", value, "exitTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andExitTimestampLessThan(Long value) {
+            addCriterion("exit_timestamp <", value, "exitTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andExitTimestampLessThanOrEqualTo(Long value) {
+            addCriterion("exit_timestamp <=", value, "exitTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andExitTimestampIn(List<Long> values) {
+            addCriterion("exit_timestamp in", values, "exitTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andExitTimestampNotIn(List<Long> values) {
+            addCriterion("exit_timestamp not in", values, "exitTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andExitTimestampBetween(Long value1, Long value2) {
+            addCriterion("exit_timestamp between", value1, value2, "exitTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andExitTimestampNotBetween(Long value1, Long value2) {
+            addCriterion("exit_timestamp not between", value1, value2, "exitTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceAccountIsNull() {
+            addCriterion("source_account is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceAccountIsNotNull() {
+            addCriterion("source_account is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceAccountEqualTo(Integer value) {
+            addCriterion("source_account =", value, "sourceAccount");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceAccountNotEqualTo(Integer value) {
+            addCriterion("source_account <>", value, "sourceAccount");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceAccountGreaterThan(Integer value) {
+            addCriterion("source_account >", value, "sourceAccount");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceAccountGreaterThanOrEqualTo(Integer value) {
+            addCriterion("source_account >=", value, "sourceAccount");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceAccountLessThan(Integer value) {
+            addCriterion("source_account <", value, "sourceAccount");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceAccountLessThanOrEqualTo(Integer value) {
+            addCriterion("source_account <=", value, "sourceAccount");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceAccountIn(List<Integer> values) {
+            addCriterion("source_account in", values, "sourceAccount");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceAccountNotIn(List<Integer> values) {
+            addCriterion("source_account not in", values, "sourceAccount");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceAccountBetween(Integer value1, Integer value2) {
+            addCriterion("source_account between", value1, value2, "sourceAccount");
+            return (Criteria) this;
+        }
+
+        public Criteria andSourceAccountNotBetween(Integer value1, Integer value2) {
+            addCriterion("source_account not between", value1, value2, "sourceAccount");
+            return (Criteria) this;
+        }
+
+        public Criteria andAuditStatusIsNull() {
+            addCriterion("audit_status is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andAuditStatusIsNotNull() {
+            addCriterion("audit_status is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andAuditStatusEqualTo(Integer value) {
+            addCriterion("audit_status =", value, "auditStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andAuditStatusNotEqualTo(Integer value) {
+            addCriterion("audit_status <>", value, "auditStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andAuditStatusGreaterThan(Integer value) {
+            addCriterion("audit_status >", value, "auditStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andAuditStatusGreaterThanOrEqualTo(Integer value) {
+            addCriterion("audit_status >=", value, "auditStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andAuditStatusLessThan(Integer value) {
+            addCriterion("audit_status <", value, "auditStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andAuditStatusLessThanOrEqualTo(Integer value) {
+            addCriterion("audit_status <=", value, "auditStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andAuditStatusIn(List<Integer> values) {
+            addCriterion("audit_status in", values, "auditStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andAuditStatusNotIn(List<Integer> values) {
+            addCriterion("audit_status not in", values, "auditStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andAuditStatusBetween(Integer value1, Integer value2) {
+            addCriterion("audit_status between", value1, value2, "auditStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andAuditStatusNotBetween(Integer value1, Integer value2) {
+            addCriterion("audit_status not between", value1, value2, "auditStatus");
+            return (Criteria) this;
+        }
+
+        public Criteria andAuditVideoIdIsNull() {
+            addCriterion("audit_video_id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andAuditVideoIdIsNotNull() {
+            addCriterion("audit_video_id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andAuditVideoIdEqualTo(Long value) {
+            addCriterion("audit_video_id =", value, "auditVideoId");
+            return (Criteria) this;
+        }
+
+        public Criteria andAuditVideoIdNotEqualTo(Long value) {
+            addCriterion("audit_video_id <>", value, "auditVideoId");
+            return (Criteria) this;
+        }
+
+        public Criteria andAuditVideoIdGreaterThan(Long value) {
+            addCriterion("audit_video_id >", value, "auditVideoId");
+            return (Criteria) this;
+        }
+
+        public Criteria andAuditVideoIdGreaterThanOrEqualTo(Long value) {
+            addCriterion("audit_video_id >=", value, "auditVideoId");
+            return (Criteria) this;
+        }
+
+        public Criteria andAuditVideoIdLessThan(Long value) {
+            addCriterion("audit_video_id <", value, "auditVideoId");
+            return (Criteria) this;
+        }
+
+        public Criteria andAuditVideoIdLessThanOrEqualTo(Long value) {
+            addCriterion("audit_video_id <=", value, "auditVideoId");
+            return (Criteria) this;
+        }
+
+        public Criteria andAuditVideoIdIn(List<Long> values) {
+            addCriterion("audit_video_id in", values, "auditVideoId");
+            return (Criteria) this;
+        }
+
+        public Criteria andAuditVideoIdNotIn(List<Long> values) {
+            addCriterion("audit_video_id not in", values, "auditVideoId");
+            return (Criteria) this;
+        }
+
+        public Criteria andAuditVideoIdBetween(Long value1, Long value2) {
+            addCriterion("audit_video_id between", value1, value2, "auditVideoId");
+            return (Criteria) this;
+        }
+
+        public Criteria andAuditVideoIdNotBetween(Long value1, Long value2) {
+            addCriterion("audit_video_id not between", value1, value2, "auditVideoId");
+            return (Criteria) this;
+        }
+
+        public Criteria andAuditTimestampIsNull() {
+            addCriterion("audit_timestamp is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andAuditTimestampIsNotNull() {
+            addCriterion("audit_timestamp is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andAuditTimestampEqualTo(Long value) {
+            addCriterion("audit_timestamp =", value, "auditTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andAuditTimestampNotEqualTo(Long value) {
+            addCriterion("audit_timestamp <>", value, "auditTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andAuditTimestampGreaterThan(Long value) {
+            addCriterion("audit_timestamp >", value, "auditTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andAuditTimestampGreaterThanOrEqualTo(Long value) {
+            addCriterion("audit_timestamp >=", value, "auditTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andAuditTimestampLessThan(Long value) {
+            addCriterion("audit_timestamp <", value, "auditTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andAuditTimestampLessThanOrEqualTo(Long value) {
+            addCriterion("audit_timestamp <=", value, "auditTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andAuditTimestampIn(List<Long> values) {
+            addCriterion("audit_timestamp in", values, "auditTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andAuditTimestampNotIn(List<Long> values) {
+            addCriterion("audit_timestamp not in", values, "auditTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andAuditTimestampBetween(Long value1, Long value2) {
+            addCriterion("audit_timestamp between", value1, value2, "auditTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andAuditTimestampNotBetween(Long value1, Long value2) {
+            addCriterion("audit_timestamp not between", value1, value2, "auditTimestamp");
+            return (Criteria) this;
+        }
+
+        public Criteria andMiniProgramTitleIsNull() {
+            addCriterion("mini_program_title is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andMiniProgramTitleIsNotNull() {
+            addCriterion("mini_program_title is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andMiniProgramTitleEqualTo(String value) {
+            addCriterion("mini_program_title =", value, "miniProgramTitle");
+            return (Criteria) this;
+        }
+
+        public Criteria andMiniProgramTitleNotEqualTo(String value) {
+            addCriterion("mini_program_title <>", value, "miniProgramTitle");
+            return (Criteria) this;
+        }
+
+        public Criteria andMiniProgramTitleGreaterThan(String value) {
+            addCriterion("mini_program_title >", value, "miniProgramTitle");
+            return (Criteria) this;
+        }
+
+        public Criteria andMiniProgramTitleGreaterThanOrEqualTo(String value) {
+            addCriterion("mini_program_title >=", value, "miniProgramTitle");
+            return (Criteria) this;
+        }
+
+        public Criteria andMiniProgramTitleLessThan(String value) {
+            addCriterion("mini_program_title <", value, "miniProgramTitle");
+            return (Criteria) this;
+        }
+
+        public Criteria andMiniProgramTitleLessThanOrEqualTo(String value) {
+            addCriterion("mini_program_title <=", value, "miniProgramTitle");
+            return (Criteria) this;
+        }
+
+        public Criteria andMiniProgramTitleLike(String value) {
+            addCriterion("mini_program_title like", value, "miniProgramTitle");
+            return (Criteria) this;
+        }
+
+        public Criteria andMiniProgramTitleNotLike(String value) {
+            addCriterion("mini_program_title not like", value, "miniProgramTitle");
+            return (Criteria) this;
+        }
+
+        public Criteria andMiniProgramTitleIn(List<String> values) {
+            addCriterion("mini_program_title in", values, "miniProgramTitle");
+            return (Criteria) this;
+        }
+
+        public Criteria andMiniProgramTitleNotIn(List<String> values) {
+            addCriterion("mini_program_title not in", values, "miniProgramTitle");
+            return (Criteria) this;
+        }
+
+        public Criteria andMiniProgramTitleBetween(String value1, String value2) {
+            addCriterion("mini_program_title between", value1, value2, "miniProgramTitle");
+            return (Criteria) this;
+        }
+
+        public Criteria andMiniProgramTitleNotBetween(String value1, String value2) {
+            addCriterion("mini_program_title not between", value1, value2, "miniProgramTitle");
+            return (Criteria) this;
+        }
+    }
+
+    public static class Criteria extends GeneratedCriteria {
+
+        protected Criteria() {
+            super();
+        }
+    }
+
+    public static class Criterion {
+        private String condition;
+
+        private Object value;
+
+        private Object secondValue;
+
+        private boolean noValue;
+
+        private boolean singleValue;
+
+        private boolean betweenValue;
+
+        private boolean listValue;
+
+        private String typeHandler;
+
+        public String getCondition() {
+            return condition;
+        }
+
+        public Object getValue() {
+            return value;
+        }
+
+        public Object getSecondValue() {
+            return secondValue;
+        }
+
+        public boolean isNoValue() {
+            return noValue;
+        }
+
+        public boolean isSingleValue() {
+            return singleValue;
+        }
+
+        public boolean isBetweenValue() {
+            return betweenValue;
+        }
+
+        public boolean isListValue() {
+            return listValue;
+        }
+
+        public String getTypeHandler() {
+            return typeHandler;
+        }
+
+        protected Criterion(String condition) {
+            super();
+            this.condition = condition;
+            this.typeHandler = null;
+            this.noValue = true;
+        }
+
+        protected Criterion(String condition, Object value, String typeHandler) {
+            super();
+            this.condition = condition;
+            this.value = value;
+            this.typeHandler = typeHandler;
+            if (value instanceof List<?>) {
+                this.listValue = true;
+            } else {
+                this.singleValue = true;
+            }
+        }
+
+        protected Criterion(String condition, Object value) {
+            this(condition, value, null);
+        }
+
+        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
+            super();
+            this.condition = condition;
+            this.value = value;
+            this.secondValue = secondValue;
+            this.typeHandler = typeHandler;
+            this.betweenValue = true;
+        }
+
+        protected Criterion(String condition, Object value, Object secondValue) {
+            this(condition, value, secondValue, null);
+        }
+    }
+}

+ 2 - 0
long-article-server/src/main/java/com/tzld/piaoquan/longarticle/model/vo/ContentItemVO.java

@@ -20,4 +20,6 @@ public class ContentItemVO {
     private String content;
     private String flowPoolLevelTag;
 
+    private Integer sourceType;
+
 }

+ 1 - 1
long-article-server/src/main/java/com/tzld/piaoquan/longarticle/service/local/PlanAccountService.java

@@ -17,7 +17,7 @@ public interface PlanAccountService {
 
     List<PlanAccount> getNormalPlanAccount();
 
-    List<PlanAccount> getPlanAccount(String accountId);
+    List<PlanAccount> getPlanAccount(String planId, String accountId);
 
     List<Plan> getPlanList();
 

+ 45 - 29
long-article-server/src/main/java/com/tzld/piaoquan/longarticle/service/local/impl/CardServiceImpl.java

@@ -2,7 +2,6 @@ package com.tzld.piaoquan.longarticle.service.local.impl;
 
 import com.alibaba.fastjson.JSONObject;
 import com.ctrip.framework.apollo.spring.annotation.ApolloJsonValue;
-import com.tzld.piaoquan.longarticle.model.bo.PublishMiniprogramBo;
 import com.tzld.piaoquan.longarticle.model.bo.VideoDetail;
 import com.tzld.piaoquan.longarticle.model.po.PlanAccount;
 import com.tzld.piaoquan.longarticle.model.po.PublishContent;
@@ -19,7 +18,10 @@ import java.net.URLEncoder;
 import java.nio.charset.StandardCharsets;
 import java.security.MessageDigest;
 import java.security.NoSuchAlgorithmException;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Random;
+import java.util.UUID;
 
 @Slf4j
 @Service
@@ -45,6 +47,12 @@ public class CardServiceImpl implements CardService {
             case 3:
                 rootSourceId = "WeCom_" + generateSourceId();
                 break;
+            case 4:
+                rootSourceId = "DaiTou_" + ghId + "_" + generateSourceId();
+                break;
+            case 5:
+                rootSourceId = "gzhhzdx_" + generateSourceId();
+                break;
             default:
                 rootSourceId = "Error mini_program_type " + miniProgramType;
         }
@@ -80,7 +88,7 @@ public class CardServiceImpl implements CardService {
         }
     }
 
-    public PublishMiniprogramBo generateSingleCard(Integer index, Integer miniId, VideoDetail videoDetail,
+    public PublishMiniprogram generateSingleCard(Integer index, Integer miniId, VideoDetail videoDetail,
                                                    PlanAccount planAccount, PublishContent publishContent) throws UnsupportedEncodingException {
         String strMiniId = String.valueOf(miniId);
         JSONObject miniInfo = miniProgramMap.getJSONObject(strMiniId);
@@ -92,38 +100,40 @@ public class CardServiceImpl implements CardService {
         String uid = videoDetail.getUid();
         JSONObject jsonObject = createGzhPath(videoId, uid, planAccount.getGhId(), planAccount.getMiniprogramUseType());
 
-        PublishMiniprogramBo publishMiniprogramBo = new PublishMiniprogramBo();
-        publishMiniprogramBo.setContentId(publishContent.getId());
-        publishMiniprogramBo.setPlanAccountId(planAccount.getId());
-        publishMiniprogramBo.setAppId(appId);
-        publishMiniprogramBo.setPublishContentId(publishContent.getPublishContentId());
-        publishMiniprogramBo.setAppName(appName);
-        publishMiniprogramBo.setAvatar(avatar);
-        publishMiniprogramBo.setMiniId(miniId);
-        publishMiniprogramBo.setMiniProgramType(planAccount.getMiniprogramUseType());
-        publishMiniprogramBo.setVideoId(Long.parseLong(videoId));
-        publishMiniprogramBo.setSource(videoDetail.getSource());
-        publishMiniprogramBo.setVideoTitle(videoDetail.getKimiTitle());
-        publishMiniprogramBo.setVideoCover(videoDetail.getVideoCover());
-        publishMiniprogramBo.setVideoPath(videoDetail.getVideoPath());
-        publishMiniprogramBo.setProductionPath(jsonObject.getString("productionPath"));
-        publishMiniprogramBo.setRootSourceId(jsonObject.getString("rootSourceId"));
-        publishMiniprogramBo.setRootShareId(jsonObject.getString("rootShareId"));
-        publishMiniprogramBo.setIndex(index);
-        publishMiniprogramBo.setTraceId(videoDetail.getTraceId());
-        publishMiniprogramBo.setCrawlerVideoId(videoDetail.getCrawlerVideoId());
-        publishMiniprogramBo.setVideoOssPath(videoDetail.getVideoOss());
-        publishMiniprogramBo.setUserId(videoDetail.getUid());
-        return publishMiniprogramBo;
+        PublishMiniprogram publishMiniprogram = new PublishMiniprogram();
+        publishMiniprogram.setContentId(publishContent.getId());
+        publishMiniprogram.setPlanAccountId(planAccount.getId());
+        publishMiniprogram.setAppId(appId);
+        publishMiniprogram.setPublishContentId(publishContent.getPublishContentId());
+        publishMiniprogram.setAppName(appName);
+        publishMiniprogram.setAvatar(avatar);
+        publishMiniprogram.setMiniId(miniId);
+        publishMiniprogram.setMiniProgramType(planAccount.getMiniprogramUseType());
+        publishMiniprogram.setVideoId(Long.parseLong(videoId));
+        publishMiniprogram.setSource(videoDetail.getSource());
+        publishMiniprogram.setVideoTitle(videoDetail.getKimiTitle());
+        publishMiniprogram.setVideoCover(videoDetail.getVideoCover());
+        publishMiniprogram.setVideoPath(videoDetail.getVideoPath());
+        publishMiniprogram.setProductionPath(jsonObject.getString("productionPath"));
+        publishMiniprogram.setRootSourceId(jsonObject.getString("rootSourceId"));
+        publishMiniprogram.setRootShareId(jsonObject.getString("rootShareId"));
+        publishMiniprogram.setIndex(index);
+        publishMiniprogram.setTraceId(videoDetail.getTraceId());
+        publishMiniprogram.setCrawlerVideoId(videoDetail.getCrawlerVideoId());
+        publishMiniprogram.setVideoOssPath(videoDetail.getVideoOss());
+        publishMiniprogram.setUserId(videoDetail.getUid());
+        return publishMiniprogram;
     }
 
-    public List<PublishMiniprogramBo> generateCards(List<VideoDetail> videoDetails, PlanAccount planAccount, PublishContent publishContent) {
+    public List<PublishMiniprogram> generateCards(List<VideoDetail> videoDetails, PlanAccount planAccount, PublishContent publishContent) {
         try {
             int longArticlesMiniProgramId = 25;
             int touliuMiniProgramId = 33;
             int weComMiniProgramId = 27;
+            int daiTouMiniProgramId = 25;
+            int gzhhzdxMiniProgramId = 25;
             int miniId = 0;
-            List<PublishMiniprogramBo> cardList = new ArrayList<>();
+            List<PublishMiniprogram> cardList = new ArrayList<>();
             switch (planAccount.getMiniprogramUseType()) {
                 case 1:
                     miniId = longArticlesMiniProgramId;
@@ -134,6 +144,12 @@ public class CardServiceImpl implements CardService {
                 case 3:
                     miniId = weComMiniProgramId;
                     break;
+                case 4:
+                    miniId = daiTouMiniProgramId;
+                    break;
+                case 5:
+                    miniId = gzhhzdxMiniProgramId;
+                    break;
                 default:
                     break;
             }
@@ -142,7 +158,7 @@ public class CardServiceImpl implements CardService {
             }
             for (int index = 0; index < videoDetails.size(); index++) {
                 VideoDetail videoDetail = videoDetails.get(index);
-                PublishMiniprogramBo card = generateSingleCard(index + 1, miniId, videoDetail, planAccount, publishContent);
+                PublishMiniprogram card = generateSingleCard(index + 1, miniId, videoDetail, planAccount, publishContent);
                 if (card != null) {
                     String videoCover = card.getVideoCover();
                     String wxUrl = aigcService.pushCover(videoCover, card.getPublishContentId());

+ 41 - 14
long-article-server/src/main/java/com/tzld/piaoquan/longarticle/service/local/impl/ContentServiceImpl.java

@@ -6,7 +6,7 @@ import com.ctrip.framework.apollo.spring.annotation.ApolloJsonValue;
 import com.tzld.piaoquan.longarticle.common.enums.PublishGzhPushTypeEnum;
 import com.tzld.piaoquan.longarticle.dao.mapper.CrawlerVideoMapper;
 import com.tzld.piaoquan.longarticle.dao.mapper.MatchVideoMapper;
-import com.tzld.piaoquan.longarticle.model.bo.PublishMiniprogramBo;
+import com.tzld.piaoquan.longarticle.dao.mapper.SingleVideoSourceMapper;
 import com.tzld.piaoquan.longarticle.model.bo.VideoDetail;
 import com.tzld.piaoquan.longarticle.model.dto.ArticleSortRequest;
 import com.tzld.piaoquan.longarticle.model.dto.ArticleSortResponse;
@@ -34,6 +34,8 @@ public class ContentServiceImpl implements ContentService {
     @ApolloJsonValue("${testAccountLevel2:{}}")
     private Map<String, Integer> ghIdMap;
 
+    private final String SINGLE_VIDEO_UID = "76862180";
+
     @Autowired
     private MatchVideoMapper matchVideoMapper;
 
@@ -55,6 +57,9 @@ public class ContentServiceImpl implements ContentService {
     @Autowired
     private VideoService videoService;
 
+    @Autowired
+    private SingleVideoSourceMapper singleVideoSourceMapper;
+
 
     public MatchVideo getContent(String contentId, String ghId, Integer publishFlag) {
         MatchVideoExample matchVideoExample = new MatchVideoExample();
@@ -80,9 +85,9 @@ public class ContentServiceImpl implements ContentService {
     }
 
     public void updateMatchContent(PublishContent publishContent,
-                                   List<PublishMiniprogramBo> publishMiniprogramBoList, MatchVideo matchVideo) {
+                                   List<PublishMiniprogram> publishMiniprogramList, MatchVideo matchVideo) {
         try {
-            JSONArray jsonArray = getResponse(publishMiniprogramBoList);
+            JSONArray jsonArray = getResponse(publishMiniprogramList);
             String traceId = matchVideo.getTraceId();
             MatchVideo updateMatchVideo = new MatchVideo();
             updateMatchVideo.setId(matchVideo.getId());
@@ -96,19 +101,19 @@ public class ContentServiceImpl implements ContentService {
         }
     }
 
-    private JSONArray getResponse(List<PublishMiniprogramBo> publishMiniprogramBoList) {
+    private JSONArray getResponse(List<PublishMiniprogram> publishMiniprogramList) {
         JSONArray jsonArray = new JSONArray();
-        for (PublishMiniprogramBo publishMiniprogramBo : publishMiniprogramBoList) {
+        for (PublishMiniprogram publishMiniprogram : publishMiniprogramList) {
             //生成match表json数据
             JSONObject jsonObject = new JSONObject();
-            jsonObject.put("uid", publishMiniprogramBo.getUserId());
-            jsonObject.put("source", publishMiniprogramBo.getSource());
-            jsonObject.put("kimiTitle", publishMiniprogramBo.getVideoTitle());
-            jsonObject.put("videoId", publishMiniprogramBo.getVideoId());
-            jsonObject.put("videoCover", publishMiniprogramBo.getVideoCover());
-            jsonObject.put("videoPath", publishMiniprogramBo.getVideoPath());
-            jsonObject.put("videoOss", publishMiniprogramBo.getVideoOssPath());
-            jsonObject.put("rootSourceId", publishMiniprogramBo.getRootSourceId());
+            jsonObject.put("uid", publishMiniprogram.getUserId());
+            jsonObject.put("source", publishMiniprogram.getSource());
+            jsonObject.put("kimiTitle", publishMiniprogram.getVideoTitle());
+            jsonObject.put("videoId", publishMiniprogram.getVideoId());
+            jsonObject.put("videoCover", publishMiniprogram.getVideoCover());
+            jsonObject.put("videoPath", publishMiniprogram.getVideoPath());
+            jsonObject.put("videoOss", publishMiniprogram.getVideoOssPath());
+            jsonObject.put("rootSourceId", publishMiniprogram.getRootSourceId());
             jsonArray.add(jsonObject);
         }
         return jsonArray;
@@ -136,6 +141,7 @@ public class ContentServiceImpl implements ContentService {
             publishArticleData.setSourceId(contentItemVO.getSourceId());
             publishArticleData.setTitle(contentItemVO.getTitle());
             publishArticleData.setContentPoolType(contentItemVO.getFlowPoolLevelTag());
+            publishArticleData.setSourceType(contentItemVO.getSourceType());
             waitSortList.add(publishArticleData);
         }
         return waitSortList;
@@ -156,7 +162,7 @@ public class ContentServiceImpl implements ContentService {
         }
         articleSortRequest.setPlanId(planAccount.getPlanId());
         articleSortRequest.setPushType(planAccount.getPushType());
-        log.info("articleSortRequest={}",JSONObject.toJSONString(articleSortRequest));
+        log.info("articleSortRequest={}", JSONObject.toJSONString(articleSortRequest));
         ArticleSortResponse articleSortResponse = sortService.publishArticleSort(articleSortRequest);
 
         if (articleSortResponse == null || articleSortResponse.getData() == null) {
@@ -206,6 +212,27 @@ public class ContentServiceImpl implements ContentService {
         return videoDetails;
     }
 
+    public List<VideoDetail> getOnlyMiniPublishVideoDetail(PublishContent publishContent) {
+        List<VideoDetail> res = new ArrayList<>();
+        SingleVideoSourceExample example = new SingleVideoSourceExample();
+        example.createCriteria().andContentTraceIdEqualTo(publishContent.getSourceId()).andAuditStatusEqualTo(1);
+        List<SingleVideoSource> singleVideoSources = singleVideoSourceMapper.selectByExample(example);
+        if (CollectionUtils.isEmpty(singleVideoSources)) {
+            return null;
+        }
+        SingleVideoSource singleVideoSource = singleVideoSources.get(0);
+        VideoDetail videoDetail = videoService.publish(singleVideoSource.getVideoOssPath(),
+                SINGLE_VIDEO_UID, singleVideoSource.getMiniProgramTitle());
+        videoDetail.setCrawlerVideoId(singleVideoSource.getId());
+        videoDetail.setKimiTitle(singleVideoSource.getMiniProgramTitle());
+        videoDetail.setUid(SINGLE_VIDEO_UID);
+        videoDetail.setVideoOss(singleVideoSource.getVideoOssPath());
+        String traceId = "direct-" + UUID.randomUUID() + "-" + System.currentTimeMillis() / 1000;
+        videoDetail.setTraceId(traceId);
+        res.add(videoDetail);
+        return res;
+    }
+
     public List<VideoDetail> publishVideo(List<CrawlerVideo> contentMiniVideos, MatchVideo matchVideo) {
         List<VideoDetail> videoDetails = new ArrayList<>();
         //发布小程序

+ 61 - 53
long-article-server/src/main/java/com/tzld/piaoquan/longarticle/service/local/impl/CoreServiceImpl.java

@@ -4,12 +4,12 @@ import com.alibaba.fastjson.JSON;
 import com.tzld.piaoquan.longarticle.common.constants.TimeConstant;
 import com.tzld.piaoquan.longarticle.common.enums.ContentStatusEnum;
 import com.tzld.piaoquan.longarticle.common.enums.PublishGzhPushTypeEnum;
+import com.tzld.piaoquan.longarticle.common.enums.SourceTypesEnum;
 import com.tzld.piaoquan.longarticle.dao.mapper.PlanAccountMapper;
 import com.tzld.piaoquan.longarticle.dao.mapper.PublishContentMapper;
 import com.tzld.piaoquan.longarticle.dao.mapper.PublishMiniprogramMapper;
 import com.tzld.piaoquan.longarticle.dao.mapper.RootSourceMapper;
 import com.tzld.piaoquan.longarticle.model.bo.MatchContent;
-import com.tzld.piaoquan.longarticle.model.bo.PublishMiniprogramBo;
 import com.tzld.piaoquan.longarticle.model.bo.VideoDetail;
 import com.tzld.piaoquan.longarticle.model.dto.MiniprogramCardRequest;
 import com.tzld.piaoquan.longarticle.model.dto.PublishArticleData;
@@ -26,7 +26,6 @@ import com.tzld.piaoquan.longarticle.utils.LarkRobotUtil;
 import com.tzld.piaoquan.longarticle.utils.TimeZoneUtil;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
-import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.redis.core.RedisTemplate;
 import org.springframework.stereotype.Service;
@@ -212,6 +211,14 @@ public class CoreServiceImpl implements CoreService {
                             if (matchContent == null) {
                                 break; // 退出当前线程
                             }
+                            //只匹配小程序文章不做处理
+                            if (Objects.equals(matchContent.getSourceType(), SourceTypesEnum.longArticleVideoPoolSource.getVal())) {
+                                MatchMiniprogramStatusParam statusParam = new MatchMiniprogramStatusParam();
+                                statusParam.setStatus(2);
+                                statusParam.setPublishContentId(matchContent.getPublishContentId());
+                                aigcService.updateMatchMiniprogramStatus(statusParam);
+                                continue;
+                            }
                             MatchVideo content = contentService.getContent(matchContent.getSourceId(), matchContent.getGhId(), 2);
                             if (content != null) {
                                 Integer contentStatus = content.getContentStatus();
@@ -274,6 +281,7 @@ public class CoreServiceImpl implements CoreService {
                     matchContent.setContent(contentItemVO.getContent());
                     matchContent.setTitle(contentItemVO.getTitle());
                     matchContent.setFlowPoolLevelTag(contentItemVO.getFlowPoolLevelTag());
+                    matchContent.setSourceType(contentItemVO.getSourceType());
                     try {
                         matchQueue.put(matchContent);
                     } catch (InterruptedException e) {
@@ -483,31 +491,26 @@ public class CoreServiceImpl implements CoreService {
             List<PublishMiniprogram> publishMiniprogramList = publicContentService.getPublishMiniprograms(publishContent);
             //不存在则重新生成
             if (CollectionUtils.isEmpty(publishMiniprogramList)) {
-                MatchVideo matchVideo = contentService.getMatchVideo(publishContent, planAccount);
-                if (matchVideo == null) {
-                    continue;
-                }
-                List<VideoDetail> videoDetails = contentService.getPublishVideoDetail(publishContent, planAccount, matchVideo);
-                log.info("publishContentId={}, videoDetails={}", publishContent.getId(), videoDetails);
-                if (CollectionUtils.isEmpty(videoDetails)) {
-                    continue;
-                }
-                //获取小程序卡片  判断封面是否可用
-                List<PublishMiniprogramBo> publishMiniprogramBoList = cardService.generateCards(videoDetails, planAccount, publishContent);
-                if (CollectionUtils.isEmpty(publishMiniprogramBoList) && publishMiniprogramBoList.size() < 2) {
-                    continue;
-                }
-                for (PublishMiniprogramBo publishMiniprogramBo : publishMiniprogramBoList) {
-                    //插入rootSource
-                    rootSourceService.addRootSource(publishMiniprogramBo, planAccount, publishArticleData);
-
-                    //拷贝小程序BO到PO中 写入数据库
-                    PublishMiniprogram publishMiniprogram = new PublishMiniprogram();
-                    BeanUtils.copyProperties(publishMiniprogramBo, publishMiniprogram);
-                    publishMiniprogramMapper.insertSelective(publishMiniprogram);
-                    publishMiniprogramList.add(publishMiniprogram);
+                if (Objects.equals(publishContent.getSourceType(), SourceTypesEnum.longArticleVideoPoolSource.getVal())) {
+                    List<VideoDetail> videoDetails = contentService.getOnlyMiniPublishVideoDetail(publishContent);
+                    log.info("publishContentId={}, videoDetails={}", publishContent.getId(), videoDetails);
+                    publishMiniprogramList = getPublishMiniprogramList(videoDetails, planAccount, publishContent);
+                    if (CollectionUtils.isEmpty(publishMiniprogramList)) {
+                        continue;
+                    }
+                } else {
+                    MatchVideo matchVideo = contentService.getMatchVideo(publishContent, planAccount);
+                    if (matchVideo == null) {
+                        continue;
+                    }
+                    List<VideoDetail> videoDetails = contentService.getPublishVideoDetail(publishContent, planAccount, matchVideo);
+                    log.info("publishContentId={}, videoDetails={}", publishContent.getId(), videoDetails);
+                    publishMiniprogramList = getPublishMiniprogramList(videoDetails, planAccount, publishContent);
+                    if (CollectionUtils.isEmpty(publishMiniprogramList) || publishMiniprogramList.size() < 2) {
+                        continue;
+                    }
+                    contentService.updateMatchContent(publishContent, publishMiniprogramList, matchVideo);
                 }
-                contentService.updateMatchContent(publishContent, publishMiniprogramBoList, matchVideo);
             }
             sendIds.add(publishContent.getId());
             log.info("publishMiniprogramList={}", publishMiniprogramList);
@@ -528,6 +531,29 @@ public class CoreServiceImpl implements CoreService {
         }
     }
 
+    private List<PublishMiniprogram> getPublishMiniprogramList(List<VideoDetail> videoDetails, PlanAccount planAccount,
+                                                               PublishContent publishContent) {
+        if (CollectionUtils.isEmpty(videoDetails)) {
+            return null;
+        }
+        //获取小程序卡片  判断封面是否可用
+        List<PublishMiniprogram> publishMiniprogramList = cardService.generateCards(videoDetails, planAccount, publishContent);
+        if (CollectionUtils.isEmpty(publishMiniprogramList)) {
+            return null;
+        }
+        if (!Objects.equals(publishContent.getSourceType(), SourceTypesEnum.longArticleVideoPoolSource.getVal())) {
+            if (publishMiniprogramList.size() < 2) {
+                return null;
+            }
+        }
+        for (PublishMiniprogram publishMiniprogram : publishMiniprogramList) {
+            //插入rootSource
+            rootSourceService.addRootSource(publishMiniprogram, planAccount, publishContent);
+            publishMiniprogramMapper.insertSelective(publishMiniprogram);
+        }
+        return publishMiniprogramList;
+    }
+
     private CreatePushTaskParam getCreatePushTaskParam(PlanAccount planAccount, List<PushContentParam> pushContentList) {
         CreatePushTaskParam gzhPushParam = new CreatePushTaskParam();
         gzhPushParam.setPlanId(planAccount.getPlanId());
@@ -636,11 +662,15 @@ public class CoreServiceImpl implements CoreService {
             if (updateStatus == 2) {
                 for (PublishContent publishContent : entry.getValue()) {
                     publicContentService.updatePublishContentStatus(updateStatus, publishContent.getId(), pushStatusVO.getErrorMsg());
-//                    if (StringUtils.isNotEmpty(publishContent.getTraceId())) {
-//                        videoService.miniProgramVideoOff(publishContent.getTraceId());
-//                    } else {
-//                        LarkRobotUtil.sendMessage("publishContent traceId is null publishContent id=" + publishContent.getId());
-//                    }
+                    if (Objects.equals(publishContent.getSourceType(), SourceTypesEnum.longArticleVideoPoolSource.getVal())) {
+                        List<PublishMiniprogram> publishMiniprogramList = publicContentService.getPublishMiniprograms(publishContent);
+                        if (CollectionUtils.isEmpty(publishMiniprogramList)) {
+                            continue;
+                        }
+                        for (PublishMiniprogram publishMiniprogram : publishMiniprogramList) {
+                            videoService.addOffVideo(publishMiniprogram);
+                        }
+                    }
                 }
                 if (planAccount == null) {
                     continue;
@@ -671,28 +701,6 @@ public class CoreServiceImpl implements CoreService {
                     }
                 }
             }
-//            if (updateStatus == 0) {
-//                //查询创建时间   重试超过2h 直接设置失败
-//                long createTimestamp = entry.getValue().get(0).getCreateTime().getTime();
-//                long nowTimestamp = System.currentTimeMillis();
-//                if (nowTimestamp - createTimestamp > TimeConstant.MILLISECOND_HOUR * 2) {
-//                    if (StringUtils.isNotEmpty(pushStatusVO.getErrorMsg())) {
-//                        PublishContentExample publishContentExample = new PublishContentExample();
-//                        publishContentExample.createCriteria().andPushIdEqualTo(pushId);
-//                        PublishContent update = new PublishContent();
-//                        if (StringUtils.isNotEmpty(pushStatusVO.getErrorMsg())) {
-//                            update.setReason(pushStatusVO.getErrorMsg());
-//                        }
-//                        update.setStatus(3);
-//                        publishContentMapper.updateByExampleSelective(update, publishContentExample);
-//                        planAccountService.updateRetry(planAccount);
-//                        LarkRobotUtil.sendMessage("重试超过2h失败,pushId=", pushId);
-//                    } else {
-//                        long hour = (nowTimestamp - createTimestamp) / 1000 / 3600;
-//                        LarkRobotUtil.sendMessage("重试时间:" + hour + "pushId=", pushId);
-//                    }
-//                }
-//            }
             if (StringUtils.isNotEmpty(pushStatusVO.getErrorMsg()) && !pushStatusVO.getErrorMsg().contains("45028")) {
                 log.error("push error pushId={} msg={}", pushId, pushStatusVO.getErrorMsg());
                 String message = String.format("发布失败,请查看,pushId=%s 失败信息:%s 账号名称:%s 计划名称:%s",

+ 2 - 1
long-article-server/src/main/java/com/tzld/piaoquan/longarticle/service/local/impl/PlanAccountServiceImpl.java

@@ -75,9 +75,10 @@ public class PlanAccountServiceImpl implements PlanAccountService {
         return planAccountMapper.selectByExample(example);
     }
 
-    public List<PlanAccount> getPlanAccount(String accountId) {
+    public List<PlanAccount> getPlanAccount(String planId, String accountId) {
         PlanAccountExample example = new PlanAccountExample();
         example.createCriteria().andCreateTimeGreaterThan(DateUtil.getThatDayDate())
+                .andPlanIdEqualTo(planId)
                 .andAccountIdEqualTo(accountId);
         return planAccountMapper.selectByExample(example);
     }

+ 1 - 0
long-article-server/src/main/java/com/tzld/piaoquan/longarticle/service/local/impl/PublicContentServiceImpl.java

@@ -60,6 +60,7 @@ public class PublicContentServiceImpl {
         publishContent.setSourceId(publishArticleData.getSourceId());
         publishContent.setScore(publishArticleData.getScore());
         publishContent.setContentPoolType(publishArticleData.getContentPoolType());
+        publishContent.setSourceType(publishArticleData.getSourceType());
         publishContentMapper.insertSelective(publishContent);
         return publishContent;
     }

+ 7 - 7
long-article-server/src/main/java/com/tzld/piaoquan/longarticle/service/local/impl/RootSourceServiceImpl.java

@@ -1,9 +1,9 @@
 package com.tzld.piaoquan.longarticle.service.local.impl;
 
 import com.tzld.piaoquan.longarticle.dao.mapper.RootSourceMapper;
-import com.tzld.piaoquan.longarticle.model.bo.PublishMiniprogramBo;
-import com.tzld.piaoquan.longarticle.model.dto.PublishArticleData;
 import com.tzld.piaoquan.longarticle.model.po.PlanAccount;
+import com.tzld.piaoquan.longarticle.model.po.PublishContent;
+import com.tzld.piaoquan.longarticle.model.po.PublishMiniprogram;
 import com.tzld.piaoquan.longarticle.model.po.RootSource;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -14,16 +14,16 @@ public class RootSourceServiceImpl {
     @Autowired
     private RootSourceMapper rootSourceMapper;
 
-    public void addRootSource(PublishMiniprogramBo publishMiniprogramBo, PlanAccount planAccount, PublishArticleData publishArticleData){
+    public void addRootSource(PublishMiniprogram publishMiniprogram, PlanAccount planAccount, PublishContent publishContent){
         RootSource rootSource = new RootSource();
         rootSource.setAccountName(planAccount.getAccountName());
-        rootSource.setRootSourceId(publishMiniprogramBo.getRootSourceId());
+        rootSource.setRootSourceId(publishMiniprogram.getRootSourceId());
         rootSource.setGhId(planAccount.getGhId());
         rootSource.setRequestTime(Integer.valueOf(String.valueOf(System.currentTimeMillis() / 1000)));
-        rootSource.setTraceId(publishMiniprogramBo.getTraceId());
+        rootSource.setTraceId(publishMiniprogram.getTraceId());
         rootSource.setPushType(2);
-        rootSource.setVideoId(publishMiniprogramBo.getVideoId());
-        rootSource.setContentId(publishArticleData.getSourceId());
+        rootSource.setVideoId(publishMiniprogram.getVideoId());
+        rootSource.setContentId(publishContent.getSourceId());
         //TODO 更新crawler_videos表
         rootSourceMapper.insertSelective(rootSource);
     }

+ 3 - 0
long-article-server/src/main/java/com/tzld/piaoquan/longarticle/service/remote/VideoService.java

@@ -1,10 +1,13 @@
 package com.tzld.piaoquan.longarticle.service.remote;
 
 import com.tzld.piaoquan.longarticle.model.bo.VideoDetail;
+import com.tzld.piaoquan.longarticle.model.po.PublishMiniprogram;
 
 public interface VideoService {
 
     VideoDetail publish(String ossPath, String uid, String title);
 
     void miniProgramVideoOff(String traceId);
+
+    void addOffVideo(PublishMiniprogram publishMiniprogram);
 }

+ 2 - 0
long-article-server/src/main/java/com/tzld/piaoquan/longarticle/service/remote/impl/MatchServiceImpl.java

@@ -20,8 +20,10 @@ public class MatchServiceImpl implements MatchService {
     public String matchMiniprogramVideo(MiniprogramCardRequest request) {
         String apiUrl = "http://47.99.132.47:8111/search_videos";
         try {
+            log.info("matchMiniprogramVideo request={}", request);
             String res = HTTP_POOL_CLIENT_UTIL_DEFAULT.post(apiUrl, JSON.toJSONString(request));
             JSONObject jsonObject = JSON.parseObject(res);
+            log.info("matchMiniprogramVideo request={} res={}", request, res);
             Integer code = jsonObject.getInteger("code");
             if (code == 0) {
                 return jsonObject.getString("traceId");

+ 17 - 2
long-article-server/src/main/java/com/tzld/piaoquan/longarticle/service/remote/impl/VideoServiceImpl.java

@@ -4,13 +4,17 @@ import cn.hutool.http.HttpRequest;
 import cn.hutool.http.HttpResponse;
 import cn.hutool.json.JSONObject;
 import cn.hutool.json.JSONUtil;
+import com.tzld.piaoquan.longarticle.dao.mapper.OffVideoMapper;
 import com.tzld.piaoquan.longarticle.model.bo.VideoDetail;
+import com.tzld.piaoquan.longarticle.model.po.OffVideo;
+import com.tzld.piaoquan.longarticle.model.po.PublishMiniprogram;
 import com.tzld.piaoquan.longarticle.service.remote.VideoService;
 import com.tzld.piaoquan.longarticle.utils.HttpClientUtil;
 import com.tzld.piaoquan.longarticle.utils.HttpPoolClientUtil;
 import com.tzld.piaoquan.longarticle.utils.LarkRobotUtil;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.util.CollectionUtils;
 
@@ -24,11 +28,12 @@ import java.util.Objects;
 public class VideoServiceImpl implements VideoService {
 
     private static final HttpPoolClientUtil HTTP_POOL_CLIENT_UTIL_DEFAULT = HttpClientUtil.create(5000, 5000, 20, 100, 3, 3000);
-
-
     private static final String PUBLISH_URL = "https://vlogapi.piaoquantv.com/longvideoapi/crawler/video/send";
     private static final String VIDEO_DETAIL_URL = "https://longvideoapi.piaoquantv.com/longvideoapi/openapi/video/batchSelectVideoInfo";
 
+    @Autowired
+    private OffVideoMapper offVideoMapper;
+
     public VideoDetail publish(String ossPath, String uid, String title) {
         String videoId = publishToPQ(ossPath, uid, title);
         if (videoId == null) {
@@ -119,4 +124,14 @@ public class VideoServiceImpl implements VideoService {
             log.error("miniProgramVideoOff error {}", e.getMessage());
         }
     }
+
+    @Override
+    public void addOffVideo(PublishMiniprogram publishMiniprogram) {
+        OffVideo offVideo = new OffVideo();
+        offVideo.setVideoId(publishMiniprogram.getVideoId());
+        offVideo.setVideoStatus(1);
+        offVideo.setPublishTime(System.currentTimeMillis() / 1000);
+        offVideo.setTraceId(publishMiniprogram.getTraceId());
+        offVideoMapper.insertSelective(offVideo);
+    }
 }

+ 231 - 0
long-article-server/src/main/resources/mapper/OffVideoMapper.xml

@@ -0,0 +1,231 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.tzld.piaoquan.longarticle.dao.mapper.OffVideoMapper">
+  <resultMap id="BaseResultMap" type="com.tzld.piaoquan.longarticle.model.po.OffVideo">
+    <id column="video_id" jdbcType="BIGINT" property="videoId" />
+    <result column="publish_time" jdbcType="BIGINT" property="publishTime" />
+    <result column="video_status" jdbcType="INTEGER" property="videoStatus" />
+    <result column="trace_id" jdbcType="VARCHAR" property="traceId" />
+    <result column="get_off_time" jdbcType="BIGINT" property="getOffTime" />
+    <result column="check_status" jdbcType="INTEGER" property="checkStatus" />
+  </resultMap>
+  <sql id="Example_Where_Clause">
+    <where>
+      <foreach collection="oredCriteria" item="criteria" separator="or">
+        <if test="criteria.valid">
+          <trim prefix="(" prefixOverrides="and" suffix=")">
+            <foreach collection="criteria.criteria" item="criterion">
+              <choose>
+                <when test="criterion.noValue">
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue">
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue">
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue">
+                  and ${criterion.condition}
+                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Update_By_Example_Where_Clause">
+    <where>
+      <foreach collection="example.oredCriteria" item="criteria" separator="or">
+        <if test="criteria.valid">
+          <trim prefix="(" prefixOverrides="and" suffix=")">
+            <foreach collection="criteria.criteria" item="criterion">
+              <choose>
+                <when test="criterion.noValue">
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue">
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue">
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue">
+                  and ${criterion.condition}
+                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Base_Column_List">
+    video_id, publish_time, video_status, trace_id, get_off_time, check_status
+  </sql>
+  <select id="selectByExample" parameterType="com.tzld.piaoquan.longarticle.model.po.OffVideoExample" resultMap="BaseResultMap">
+    select
+    <if test="distinct">
+      distinct
+    </if>
+    <include refid="Base_Column_List" />
+    from get_off_videos
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+    <if test="orderByClause != null">
+      order by ${orderByClause}
+    </if>
+    <if test="page != null">
+      limit #{page.offset} , #{page.pageSize}
+    </if>
+  </select>
+  <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
+    select 
+    <include refid="Base_Column_List" />
+    from get_off_videos
+    where video_id = #{videoId,jdbcType=BIGINT}
+  </select>
+  <delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
+    delete from get_off_videos
+    where video_id = #{videoId,jdbcType=BIGINT}
+  </delete>
+  <delete id="deleteByExample" parameterType="com.tzld.piaoquan.longarticle.model.po.OffVideoExample">
+    delete from get_off_videos
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+  </delete>
+  <insert id="insert" parameterType="com.tzld.piaoquan.longarticle.model.po.OffVideo">
+    insert into get_off_videos (video_id, publish_time, video_status, 
+      trace_id, get_off_time, check_status
+      )
+    values (#{videoId,jdbcType=BIGINT}, #{publishTime,jdbcType=BIGINT}, #{videoStatus,jdbcType=INTEGER}, 
+      #{traceId,jdbcType=VARCHAR}, #{getOffTime,jdbcType=BIGINT}, #{checkStatus,jdbcType=INTEGER}
+      )
+  </insert>
+  <insert id="insertSelective" parameterType="com.tzld.piaoquan.longarticle.model.po.OffVideo">
+    insert into get_off_videos
+    <trim prefix="(" suffix=")" suffixOverrides=",">
+      <if test="videoId != null">
+        video_id,
+      </if>
+      <if test="publishTime != null">
+        publish_time,
+      </if>
+      <if test="videoStatus != null">
+        video_status,
+      </if>
+      <if test="traceId != null">
+        trace_id,
+      </if>
+      <if test="getOffTime != null">
+        get_off_time,
+      </if>
+      <if test="checkStatus != null">
+        check_status,
+      </if>
+    </trim>
+    <trim prefix="values (" suffix=")" suffixOverrides=",">
+      <if test="videoId != null">
+        #{videoId,jdbcType=BIGINT},
+      </if>
+      <if test="publishTime != null">
+        #{publishTime,jdbcType=BIGINT},
+      </if>
+      <if test="videoStatus != null">
+        #{videoStatus,jdbcType=INTEGER},
+      </if>
+      <if test="traceId != null">
+        #{traceId,jdbcType=VARCHAR},
+      </if>
+      <if test="getOffTime != null">
+        #{getOffTime,jdbcType=BIGINT},
+      </if>
+      <if test="checkStatus != null">
+        #{checkStatus,jdbcType=INTEGER},
+      </if>
+    </trim>
+  </insert>
+  <select id="countByExample" parameterType="com.tzld.piaoquan.longarticle.model.po.OffVideoExample" resultType="java.lang.Long">
+    select count(*) from get_off_videos
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+  </select>
+  <update id="updateByExampleSelective" parameterType="map">
+    update get_off_videos
+    <set>
+      <if test="record.videoId != null">
+        video_id = #{record.videoId,jdbcType=BIGINT},
+      </if>
+      <if test="record.publishTime != null">
+        publish_time = #{record.publishTime,jdbcType=BIGINT},
+      </if>
+      <if test="record.videoStatus != null">
+        video_status = #{record.videoStatus,jdbcType=INTEGER},
+      </if>
+      <if test="record.traceId != null">
+        trace_id = #{record.traceId,jdbcType=VARCHAR},
+      </if>
+      <if test="record.getOffTime != null">
+        get_off_time = #{record.getOffTime,jdbcType=BIGINT},
+      </if>
+      <if test="record.checkStatus != null">
+        check_status = #{record.checkStatus,jdbcType=INTEGER},
+      </if>
+    </set>
+    <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByExample" parameterType="map">
+    update get_off_videos
+    set video_id = #{record.videoId,jdbcType=BIGINT},
+      publish_time = #{record.publishTime,jdbcType=BIGINT},
+      video_status = #{record.videoStatus,jdbcType=INTEGER},
+      trace_id = #{record.traceId,jdbcType=VARCHAR},
+      get_off_time = #{record.getOffTime,jdbcType=BIGINT},
+      check_status = #{record.checkStatus,jdbcType=INTEGER}
+    <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByPrimaryKeySelective" parameterType="com.tzld.piaoquan.longarticle.model.po.OffVideo">
+    update get_off_videos
+    <set>
+      <if test="publishTime != null">
+        publish_time = #{publishTime,jdbcType=BIGINT},
+      </if>
+      <if test="videoStatus != null">
+        video_status = #{videoStatus,jdbcType=INTEGER},
+      </if>
+      <if test="traceId != null">
+        trace_id = #{traceId,jdbcType=VARCHAR},
+      </if>
+      <if test="getOffTime != null">
+        get_off_time = #{getOffTime,jdbcType=BIGINT},
+      </if>
+      <if test="checkStatus != null">
+        check_status = #{checkStatus,jdbcType=INTEGER},
+      </if>
+    </set>
+    where video_id = #{videoId,jdbcType=BIGINT}
+  </update>
+  <update id="updateByPrimaryKey" parameterType="com.tzld.piaoquan.longarticle.model.po.OffVideo">
+    update get_off_videos
+    set publish_time = #{publishTime,jdbcType=BIGINT},
+      video_status = #{videoStatus,jdbcType=INTEGER},
+      trace_id = #{traceId,jdbcType=VARCHAR},
+      get_off_time = #{getOffTime,jdbcType=BIGINT},
+      check_status = #{checkStatus,jdbcType=INTEGER}
+    where video_id = #{videoId,jdbcType=BIGINT}
+  </update>
+</mapper>

+ 23 - 8
long-article-server/src/main/resources/mapper/PublishContentMapper.xml

@@ -8,6 +8,7 @@
     <result column="source_id" jdbcType="VARCHAR" property="sourceId" />
     <result column="score" jdbcType="DOUBLE" property="score" />
     <result column="content_pool_type" jdbcType="VARCHAR" property="contentPoolType" />
+    <result column="source_type" jdbcType="INTEGER" property="sourceType" />
     <result column="status" jdbcType="INTEGER" property="status" />
     <result column="push_id" jdbcType="VARCHAR" property="pushId" />
     <result column="reason" jdbcType="VARCHAR" property="reason" />
@@ -74,8 +75,8 @@
     </where>
   </sql>
   <sql id="Base_Column_List">
-    id, plan_account_id, publish_content_id, source_id, score, content_pool_type, `status`, 
-    push_id, reason, trace_id, create_time, update_time
+    id, plan_account_id, publish_content_id, source_id, score, content_pool_type, source_type, 
+    `status`, push_id, reason, trace_id, create_time, update_time
   </sql>
   <select id="selectByExample" parameterType="com.tzld.piaoquan.longarticle.model.po.PublishContentExample" resultMap="BaseResultMap">
     select
@@ -113,14 +114,14 @@
   <insert id="insert" parameterType="com.tzld.piaoquan.longarticle.model.po.PublishContent">
     insert into long_articles_publish_content (id, plan_account_id, publish_content_id, 
       source_id, score, content_pool_type, 
-      `status`, push_id, reason, 
-      trace_id, create_time, update_time
-      )
+      source_type, `status`, push_id, 
+      reason, trace_id, create_time, 
+      update_time)
     values (#{id,jdbcType=BIGINT}, #{planAccountId,jdbcType=BIGINT}, #{publishContentId,jdbcType=VARCHAR}, 
       #{sourceId,jdbcType=VARCHAR}, #{score,jdbcType=DOUBLE}, #{contentPoolType,jdbcType=VARCHAR}, 
-      #{status,jdbcType=INTEGER}, #{pushId,jdbcType=VARCHAR}, #{reason,jdbcType=VARCHAR}, 
-      #{traceId,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP}, #{updateTime,jdbcType=TIMESTAMP}
-      )
+      #{sourceType,jdbcType=INTEGER}, #{status,jdbcType=INTEGER}, #{pushId,jdbcType=VARCHAR}, 
+      #{reason,jdbcType=VARCHAR}, #{traceId,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP}, 
+      #{updateTime,jdbcType=TIMESTAMP})
   </insert>
   <insert id="insertSelective" parameterType="com.tzld.piaoquan.longarticle.model.po.PublishContent" useGeneratedKeys="true" keyProperty="id">
     insert into long_articles_publish_content
@@ -143,6 +144,9 @@
       <if test="contentPoolType != null">
         content_pool_type,
       </if>
+      <if test="sourceType != null">
+        source_type,
+      </if>
       <if test="status != null">
         `status`,
       </if>
@@ -181,6 +185,9 @@
       <if test="contentPoolType != null">
         #{contentPoolType,jdbcType=VARCHAR},
       </if>
+      <if test="sourceType != null">
+        #{sourceType,jdbcType=INTEGER},
+      </if>
       <if test="status != null">
         #{status,jdbcType=INTEGER},
       </if>
@@ -231,6 +238,9 @@
       <if test="record.contentPoolType != null">
         content_pool_type = #{record.contentPoolType,jdbcType=VARCHAR},
       </if>
+      <if test="record.sourceType != null">
+        source_type = #{record.sourceType,jdbcType=INTEGER},
+      </if>
       <if test="record.status != null">
         `status` = #{record.status,jdbcType=INTEGER},
       </if>
@@ -262,6 +272,7 @@
       source_id = #{record.sourceId,jdbcType=VARCHAR},
       score = #{record.score,jdbcType=DOUBLE},
       content_pool_type = #{record.contentPoolType,jdbcType=VARCHAR},
+      source_type = #{record.sourceType,jdbcType=INTEGER},
       `status` = #{record.status,jdbcType=INTEGER},
       push_id = #{record.pushId,jdbcType=VARCHAR},
       reason = #{record.reason,jdbcType=VARCHAR},
@@ -290,6 +301,9 @@
       <if test="contentPoolType != null">
         content_pool_type = #{contentPoolType,jdbcType=VARCHAR},
       </if>
+      <if test="sourceType != null">
+        source_type = #{sourceType,jdbcType=INTEGER},
+      </if>
       <if test="status != null">
         `status` = #{status,jdbcType=INTEGER},
       </if>
@@ -318,6 +332,7 @@
       source_id = #{sourceId,jdbcType=VARCHAR},
       score = #{score,jdbcType=DOUBLE},
       content_pool_type = #{contentPoolType,jdbcType=VARCHAR},
+      source_type = #{sourceType,jdbcType=INTEGER},
       `status` = #{status,jdbcType=INTEGER},
       push_id = #{pushId,jdbcType=VARCHAR},
       reason = #{reason,jdbcType=VARCHAR},

+ 517 - 0
long-article-server/src/main/resources/mapper/SingleVideoSourceMapper.xml

@@ -0,0 +1,517 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.tzld.piaoquan.longarticle.dao.mapper.SingleVideoSourceMapper">
+  <resultMap id="BaseResultMap" type="com.tzld.piaoquan.longarticle.model.po.SingleVideoSource">
+    <id column="id" jdbcType="INTEGER" property="id" />
+    <result column="content_trace_id" jdbcType="VARCHAR" property="contentTraceId" />
+    <result column="article_title" jdbcType="VARCHAR" property="articleTitle" />
+    <result column="out_account_id" jdbcType="VARCHAR" property="outAccountId" />
+    <result column="out_account_name" jdbcType="VARCHAR" property="outAccountName" />
+    <result column="read_cnt" jdbcType="INTEGER" property="readCnt" />
+    <result column="like_cnt" jdbcType="INTEGER" property="likeCnt" />
+    <result column="article_index" jdbcType="BIT" property="articleIndex" />
+    <result column="article_publish_type" jdbcType="VARCHAR" property="articlePublishType" />
+    <result column="article_url" jdbcType="VARCHAR" property="articleUrl" />
+    <result column="cover_url" jdbcType="VARCHAR" property="coverUrl" />
+    <result column="video_oss_path" jdbcType="VARCHAR" property="videoOssPath" />
+    <result column="flow_pool_level" jdbcType="INTEGER" property="flowPoolLevel" />
+    <result column="bad_status" jdbcType="BIT" property="badStatus" />
+    <result column="publish_timestamp" jdbcType="BIGINT" property="publishTimestamp" />
+    <result column="crawler_timestamp" jdbcType="BIGINT" property="crawlerTimestamp" />
+    <result column="url_unique_md5" jdbcType="VARCHAR" property="urlUniqueMd5" />
+    <result column="up_level_timestamp" jdbcType="BIGINT" property="upLevelTimestamp" />
+    <result column="exit_timestamp" jdbcType="BIGINT" property="exitTimestamp" />
+    <result column="source_account" jdbcType="INTEGER" property="sourceAccount" />
+    <result column="audit_status" jdbcType="INTEGER" property="auditStatus" />
+    <result column="audit_video_id" jdbcType="BIGINT" property="auditVideoId" />
+    <result column="audit_timestamp" jdbcType="BIGINT" property="auditTimestamp" />
+    <result column="mini_program_title" jdbcType="VARCHAR" property="miniProgramTitle" />
+  </resultMap>
+  <sql id="Example_Where_Clause">
+    <where>
+      <foreach collection="oredCriteria" item="criteria" separator="or">
+        <if test="criteria.valid">
+          <trim prefix="(" prefixOverrides="and" suffix=")">
+            <foreach collection="criteria.criteria" item="criterion">
+              <choose>
+                <when test="criterion.noValue">
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue">
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue">
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue">
+                  and ${criterion.condition}
+                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Update_By_Example_Where_Clause">
+    <where>
+      <foreach collection="example.oredCriteria" item="criteria" separator="or">
+        <if test="criteria.valid">
+          <trim prefix="(" prefixOverrides="and" suffix=")">
+            <foreach collection="criteria.criteria" item="criterion">
+              <choose>
+                <when test="criterion.noValue">
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue">
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue">
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue">
+                  and ${criterion.condition}
+                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Base_Column_List">
+    id, content_trace_id, article_title, out_account_id, out_account_name, read_cnt, 
+    like_cnt, article_index, article_publish_type, article_url, cover_url, video_oss_path, 
+    flow_pool_level, bad_status, publish_timestamp, crawler_timestamp, url_unique_md5, 
+    up_level_timestamp, exit_timestamp, source_account, audit_status, audit_video_id, 
+    audit_timestamp, mini_program_title
+  </sql>
+  <select id="selectByExample" parameterType="com.tzld.piaoquan.longarticle.model.po.SingleVideoSourceExample" resultMap="BaseResultMap">
+    select
+    <if test="distinct">
+      distinct
+    </if>
+    <include refid="Base_Column_List" />
+    from publish_single_video_source
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+    <if test="orderByClause != null">
+      order by ${orderByClause}
+    </if>
+    <if test="page != null">
+      limit #{page.offset} , #{page.pageSize}
+    </if>
+  </select>
+  <select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultMap="BaseResultMap">
+    select 
+    <include refid="Base_Column_List" />
+    from publish_single_video_source
+    where id = #{id,jdbcType=INTEGER}
+  </select>
+  <delete id="deleteByPrimaryKey" parameterType="java.lang.Integer">
+    delete from publish_single_video_source
+    where id = #{id,jdbcType=INTEGER}
+  </delete>
+  <delete id="deleteByExample" parameterType="com.tzld.piaoquan.longarticle.model.po.SingleVideoSourceExample">
+    delete from publish_single_video_source
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+  </delete>
+  <insert id="insert" parameterType="com.tzld.piaoquan.longarticle.model.po.SingleVideoSource">
+    insert into publish_single_video_source (id, content_trace_id, article_title, 
+      out_account_id, out_account_name, read_cnt, 
+      like_cnt, article_index, article_publish_type, 
+      article_url, cover_url, video_oss_path, 
+      flow_pool_level, bad_status, publish_timestamp, 
+      crawler_timestamp, url_unique_md5, up_level_timestamp, 
+      exit_timestamp, source_account, audit_status, 
+      audit_video_id, audit_timestamp, mini_program_title
+      )
+    values (#{id,jdbcType=INTEGER}, #{contentTraceId,jdbcType=VARCHAR}, #{articleTitle,jdbcType=VARCHAR}, 
+      #{outAccountId,jdbcType=VARCHAR}, #{outAccountName,jdbcType=VARCHAR}, #{readCnt,jdbcType=INTEGER}, 
+      #{likeCnt,jdbcType=INTEGER}, #{articleIndex,jdbcType=BIT}, #{articlePublishType,jdbcType=VARCHAR}, 
+      #{articleUrl,jdbcType=VARCHAR}, #{coverUrl,jdbcType=VARCHAR}, #{videoOssPath,jdbcType=VARCHAR}, 
+      #{flowPoolLevel,jdbcType=INTEGER}, #{badStatus,jdbcType=BIT}, #{publishTimestamp,jdbcType=BIGINT}, 
+      #{crawlerTimestamp,jdbcType=BIGINT}, #{urlUniqueMd5,jdbcType=VARCHAR}, #{upLevelTimestamp,jdbcType=BIGINT}, 
+      #{exitTimestamp,jdbcType=BIGINT}, #{sourceAccount,jdbcType=INTEGER}, #{auditStatus,jdbcType=INTEGER}, 
+      #{auditVideoId,jdbcType=BIGINT}, #{auditTimestamp,jdbcType=BIGINT}, #{miniProgramTitle,jdbcType=VARCHAR}
+      )
+  </insert>
+  <insert id="insertSelective" parameterType="com.tzld.piaoquan.longarticle.model.po.SingleVideoSource">
+    insert into publish_single_video_source
+    <trim prefix="(" suffix=")" suffixOverrides=",">
+      <if test="id != null">
+        id,
+      </if>
+      <if test="contentTraceId != null">
+        content_trace_id,
+      </if>
+      <if test="articleTitle != null">
+        article_title,
+      </if>
+      <if test="outAccountId != null">
+        out_account_id,
+      </if>
+      <if test="outAccountName != null">
+        out_account_name,
+      </if>
+      <if test="readCnt != null">
+        read_cnt,
+      </if>
+      <if test="likeCnt != null">
+        like_cnt,
+      </if>
+      <if test="articleIndex != null">
+        article_index,
+      </if>
+      <if test="articlePublishType != null">
+        article_publish_type,
+      </if>
+      <if test="articleUrl != null">
+        article_url,
+      </if>
+      <if test="coverUrl != null">
+        cover_url,
+      </if>
+      <if test="videoOssPath != null">
+        video_oss_path,
+      </if>
+      <if test="flowPoolLevel != null">
+        flow_pool_level,
+      </if>
+      <if test="badStatus != null">
+        bad_status,
+      </if>
+      <if test="publishTimestamp != null">
+        publish_timestamp,
+      </if>
+      <if test="crawlerTimestamp != null">
+        crawler_timestamp,
+      </if>
+      <if test="urlUniqueMd5 != null">
+        url_unique_md5,
+      </if>
+      <if test="upLevelTimestamp != null">
+        up_level_timestamp,
+      </if>
+      <if test="exitTimestamp != null">
+        exit_timestamp,
+      </if>
+      <if test="sourceAccount != null">
+        source_account,
+      </if>
+      <if test="auditStatus != null">
+        audit_status,
+      </if>
+      <if test="auditVideoId != null">
+        audit_video_id,
+      </if>
+      <if test="auditTimestamp != null">
+        audit_timestamp,
+      </if>
+      <if test="miniProgramTitle != null">
+        mini_program_title,
+      </if>
+    </trim>
+    <trim prefix="values (" suffix=")" suffixOverrides=",">
+      <if test="id != null">
+        #{id,jdbcType=INTEGER},
+      </if>
+      <if test="contentTraceId != null">
+        #{contentTraceId,jdbcType=VARCHAR},
+      </if>
+      <if test="articleTitle != null">
+        #{articleTitle,jdbcType=VARCHAR},
+      </if>
+      <if test="outAccountId != null">
+        #{outAccountId,jdbcType=VARCHAR},
+      </if>
+      <if test="outAccountName != null">
+        #{outAccountName,jdbcType=VARCHAR},
+      </if>
+      <if test="readCnt != null">
+        #{readCnt,jdbcType=INTEGER},
+      </if>
+      <if test="likeCnt != null">
+        #{likeCnt,jdbcType=INTEGER},
+      </if>
+      <if test="articleIndex != null">
+        #{articleIndex,jdbcType=BIT},
+      </if>
+      <if test="articlePublishType != null">
+        #{articlePublishType,jdbcType=VARCHAR},
+      </if>
+      <if test="articleUrl != null">
+        #{articleUrl,jdbcType=VARCHAR},
+      </if>
+      <if test="coverUrl != null">
+        #{coverUrl,jdbcType=VARCHAR},
+      </if>
+      <if test="videoOssPath != null">
+        #{videoOssPath,jdbcType=VARCHAR},
+      </if>
+      <if test="flowPoolLevel != null">
+        #{flowPoolLevel,jdbcType=INTEGER},
+      </if>
+      <if test="badStatus != null">
+        #{badStatus,jdbcType=BIT},
+      </if>
+      <if test="publishTimestamp != null">
+        #{publishTimestamp,jdbcType=BIGINT},
+      </if>
+      <if test="crawlerTimestamp != null">
+        #{crawlerTimestamp,jdbcType=BIGINT},
+      </if>
+      <if test="urlUniqueMd5 != null">
+        #{urlUniqueMd5,jdbcType=VARCHAR},
+      </if>
+      <if test="upLevelTimestamp != null">
+        #{upLevelTimestamp,jdbcType=BIGINT},
+      </if>
+      <if test="exitTimestamp != null">
+        #{exitTimestamp,jdbcType=BIGINT},
+      </if>
+      <if test="sourceAccount != null">
+        #{sourceAccount,jdbcType=INTEGER},
+      </if>
+      <if test="auditStatus != null">
+        #{auditStatus,jdbcType=INTEGER},
+      </if>
+      <if test="auditVideoId != null">
+        #{auditVideoId,jdbcType=BIGINT},
+      </if>
+      <if test="auditTimestamp != null">
+        #{auditTimestamp,jdbcType=BIGINT},
+      </if>
+      <if test="miniProgramTitle != null">
+        #{miniProgramTitle,jdbcType=VARCHAR},
+      </if>
+    </trim>
+  </insert>
+  <select id="countByExample" parameterType="com.tzld.piaoquan.longarticle.model.po.SingleVideoSourceExample" resultType="java.lang.Long">
+    select count(*) from publish_single_video_source
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+  </select>
+  <update id="updateByExampleSelective" parameterType="map">
+    update publish_single_video_source
+    <set>
+      <if test="record.id != null">
+        id = #{record.id,jdbcType=INTEGER},
+      </if>
+      <if test="record.contentTraceId != null">
+        content_trace_id = #{record.contentTraceId,jdbcType=VARCHAR},
+      </if>
+      <if test="record.articleTitle != null">
+        article_title = #{record.articleTitle,jdbcType=VARCHAR},
+      </if>
+      <if test="record.outAccountId != null">
+        out_account_id = #{record.outAccountId,jdbcType=VARCHAR},
+      </if>
+      <if test="record.outAccountName != null">
+        out_account_name = #{record.outAccountName,jdbcType=VARCHAR},
+      </if>
+      <if test="record.readCnt != null">
+        read_cnt = #{record.readCnt,jdbcType=INTEGER},
+      </if>
+      <if test="record.likeCnt != null">
+        like_cnt = #{record.likeCnt,jdbcType=INTEGER},
+      </if>
+      <if test="record.articleIndex != null">
+        article_index = #{record.articleIndex,jdbcType=BIT},
+      </if>
+      <if test="record.articlePublishType != null">
+        article_publish_type = #{record.articlePublishType,jdbcType=VARCHAR},
+      </if>
+      <if test="record.articleUrl != null">
+        article_url = #{record.articleUrl,jdbcType=VARCHAR},
+      </if>
+      <if test="record.coverUrl != null">
+        cover_url = #{record.coverUrl,jdbcType=VARCHAR},
+      </if>
+      <if test="record.videoOssPath != null">
+        video_oss_path = #{record.videoOssPath,jdbcType=VARCHAR},
+      </if>
+      <if test="record.flowPoolLevel != null">
+        flow_pool_level = #{record.flowPoolLevel,jdbcType=INTEGER},
+      </if>
+      <if test="record.badStatus != null">
+        bad_status = #{record.badStatus,jdbcType=BIT},
+      </if>
+      <if test="record.publishTimestamp != null">
+        publish_timestamp = #{record.publishTimestamp,jdbcType=BIGINT},
+      </if>
+      <if test="record.crawlerTimestamp != null">
+        crawler_timestamp = #{record.crawlerTimestamp,jdbcType=BIGINT},
+      </if>
+      <if test="record.urlUniqueMd5 != null">
+        url_unique_md5 = #{record.urlUniqueMd5,jdbcType=VARCHAR},
+      </if>
+      <if test="record.upLevelTimestamp != null">
+        up_level_timestamp = #{record.upLevelTimestamp,jdbcType=BIGINT},
+      </if>
+      <if test="record.exitTimestamp != null">
+        exit_timestamp = #{record.exitTimestamp,jdbcType=BIGINT},
+      </if>
+      <if test="record.sourceAccount != null">
+        source_account = #{record.sourceAccount,jdbcType=INTEGER},
+      </if>
+      <if test="record.auditStatus != null">
+        audit_status = #{record.auditStatus,jdbcType=INTEGER},
+      </if>
+      <if test="record.auditVideoId != null">
+        audit_video_id = #{record.auditVideoId,jdbcType=BIGINT},
+      </if>
+      <if test="record.auditTimestamp != null">
+        audit_timestamp = #{record.auditTimestamp,jdbcType=BIGINT},
+      </if>
+      <if test="record.miniProgramTitle != null">
+        mini_program_title = #{record.miniProgramTitle,jdbcType=VARCHAR},
+      </if>
+    </set>
+    <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByExample" parameterType="map">
+    update publish_single_video_source
+    set id = #{record.id,jdbcType=INTEGER},
+      content_trace_id = #{record.contentTraceId,jdbcType=VARCHAR},
+      article_title = #{record.articleTitle,jdbcType=VARCHAR},
+      out_account_id = #{record.outAccountId,jdbcType=VARCHAR},
+      out_account_name = #{record.outAccountName,jdbcType=VARCHAR},
+      read_cnt = #{record.readCnt,jdbcType=INTEGER},
+      like_cnt = #{record.likeCnt,jdbcType=INTEGER},
+      article_index = #{record.articleIndex,jdbcType=BIT},
+      article_publish_type = #{record.articlePublishType,jdbcType=VARCHAR},
+      article_url = #{record.articleUrl,jdbcType=VARCHAR},
+      cover_url = #{record.coverUrl,jdbcType=VARCHAR},
+      video_oss_path = #{record.videoOssPath,jdbcType=VARCHAR},
+      flow_pool_level = #{record.flowPoolLevel,jdbcType=INTEGER},
+      bad_status = #{record.badStatus,jdbcType=BIT},
+      publish_timestamp = #{record.publishTimestamp,jdbcType=BIGINT},
+      crawler_timestamp = #{record.crawlerTimestamp,jdbcType=BIGINT},
+      url_unique_md5 = #{record.urlUniqueMd5,jdbcType=VARCHAR},
+      up_level_timestamp = #{record.upLevelTimestamp,jdbcType=BIGINT},
+      exit_timestamp = #{record.exitTimestamp,jdbcType=BIGINT},
+      source_account = #{record.sourceAccount,jdbcType=INTEGER},
+      audit_status = #{record.auditStatus,jdbcType=INTEGER},
+      audit_video_id = #{record.auditVideoId,jdbcType=BIGINT},
+      audit_timestamp = #{record.auditTimestamp,jdbcType=BIGINT},
+      mini_program_title = #{record.miniProgramTitle,jdbcType=VARCHAR}
+    <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByPrimaryKeySelective" parameterType="com.tzld.piaoquan.longarticle.model.po.SingleVideoSource">
+    update publish_single_video_source
+    <set>
+      <if test="contentTraceId != null">
+        content_trace_id = #{contentTraceId,jdbcType=VARCHAR},
+      </if>
+      <if test="articleTitle != null">
+        article_title = #{articleTitle,jdbcType=VARCHAR},
+      </if>
+      <if test="outAccountId != null">
+        out_account_id = #{outAccountId,jdbcType=VARCHAR},
+      </if>
+      <if test="outAccountName != null">
+        out_account_name = #{outAccountName,jdbcType=VARCHAR},
+      </if>
+      <if test="readCnt != null">
+        read_cnt = #{readCnt,jdbcType=INTEGER},
+      </if>
+      <if test="likeCnt != null">
+        like_cnt = #{likeCnt,jdbcType=INTEGER},
+      </if>
+      <if test="articleIndex != null">
+        article_index = #{articleIndex,jdbcType=BIT},
+      </if>
+      <if test="articlePublishType != null">
+        article_publish_type = #{articlePublishType,jdbcType=VARCHAR},
+      </if>
+      <if test="articleUrl != null">
+        article_url = #{articleUrl,jdbcType=VARCHAR},
+      </if>
+      <if test="coverUrl != null">
+        cover_url = #{coverUrl,jdbcType=VARCHAR},
+      </if>
+      <if test="videoOssPath != null">
+        video_oss_path = #{videoOssPath,jdbcType=VARCHAR},
+      </if>
+      <if test="flowPoolLevel != null">
+        flow_pool_level = #{flowPoolLevel,jdbcType=INTEGER},
+      </if>
+      <if test="badStatus != null">
+        bad_status = #{badStatus,jdbcType=BIT},
+      </if>
+      <if test="publishTimestamp != null">
+        publish_timestamp = #{publishTimestamp,jdbcType=BIGINT},
+      </if>
+      <if test="crawlerTimestamp != null">
+        crawler_timestamp = #{crawlerTimestamp,jdbcType=BIGINT},
+      </if>
+      <if test="urlUniqueMd5 != null">
+        url_unique_md5 = #{urlUniqueMd5,jdbcType=VARCHAR},
+      </if>
+      <if test="upLevelTimestamp != null">
+        up_level_timestamp = #{upLevelTimestamp,jdbcType=BIGINT},
+      </if>
+      <if test="exitTimestamp != null">
+        exit_timestamp = #{exitTimestamp,jdbcType=BIGINT},
+      </if>
+      <if test="sourceAccount != null">
+        source_account = #{sourceAccount,jdbcType=INTEGER},
+      </if>
+      <if test="auditStatus != null">
+        audit_status = #{auditStatus,jdbcType=INTEGER},
+      </if>
+      <if test="auditVideoId != null">
+        audit_video_id = #{auditVideoId,jdbcType=BIGINT},
+      </if>
+      <if test="auditTimestamp != null">
+        audit_timestamp = #{auditTimestamp,jdbcType=BIGINT},
+      </if>
+      <if test="miniProgramTitle != null">
+        mini_program_title = #{miniProgramTitle,jdbcType=VARCHAR},
+      </if>
+    </set>
+    where id = #{id,jdbcType=INTEGER}
+  </update>
+  <update id="updateByPrimaryKey" parameterType="com.tzld.piaoquan.longarticle.model.po.SingleVideoSource">
+    update publish_single_video_source
+    set content_trace_id = #{contentTraceId,jdbcType=VARCHAR},
+      article_title = #{articleTitle,jdbcType=VARCHAR},
+      out_account_id = #{outAccountId,jdbcType=VARCHAR},
+      out_account_name = #{outAccountName,jdbcType=VARCHAR},
+      read_cnt = #{readCnt,jdbcType=INTEGER},
+      like_cnt = #{likeCnt,jdbcType=INTEGER},
+      article_index = #{articleIndex,jdbcType=BIT},
+      article_publish_type = #{articlePublishType,jdbcType=VARCHAR},
+      article_url = #{articleUrl,jdbcType=VARCHAR},
+      cover_url = #{coverUrl,jdbcType=VARCHAR},
+      video_oss_path = #{videoOssPath,jdbcType=VARCHAR},
+      flow_pool_level = #{flowPoolLevel,jdbcType=INTEGER},
+      bad_status = #{badStatus,jdbcType=BIT},
+      publish_timestamp = #{publishTimestamp,jdbcType=BIGINT},
+      crawler_timestamp = #{crawlerTimestamp,jdbcType=BIGINT},
+      url_unique_md5 = #{urlUniqueMd5,jdbcType=VARCHAR},
+      up_level_timestamp = #{upLevelTimestamp,jdbcType=BIGINT},
+      exit_timestamp = #{exitTimestamp,jdbcType=BIGINT},
+      source_account = #{sourceAccount,jdbcType=INTEGER},
+      audit_status = #{auditStatus,jdbcType=INTEGER},
+      audit_video_id = #{auditVideoId,jdbcType=BIGINT},
+      audit_timestamp = #{auditTimestamp,jdbcType=BIGINT},
+      mini_program_title = #{miniProgramTitle,jdbcType=VARCHAR}
+    where id = #{id,jdbcType=INTEGER}
+  </update>
+</mapper>

+ 2 - 1
long-article-server/src/main/resources/mybatis-generator-config.xml

@@ -60,11 +60,12 @@
 <!--            <columnOverride column="cover_url" javaType="java.lang.String" jdbcType="LONGVARCHAR" />-->
 <!--        </table>-->
 <!--        <table tableName="long_articles_root_source_id" domainObjectName="RootSource" alias=""/>-->
-        <table tableName="long_articles_plan_account" domainObjectName="PlanAccount" alias=""/>
+        <table tableName="publish_single_video_source" domainObjectName="SingleVideoSource" alias=""/>
 <!--            <table tableName="long_articles_plan" domainObjectName="Plan" alias=""/>-->
 
 <!--                <table tableName="long_articles_publish_content" domainObjectName="PublishContent" alias=""/>-->
 <!--                <table tableName="long_articles_publish_miniprogram" domainObjectName="PublishMiniprogram" alias=""/>-->
+<!--        <table tableName="get_off_videos" domainObjectName="OffVideo" alias=""/>-->
 
     </context>