Browse Source

增加公众号名称查询 混合模式 文章设置

xueyiming 3 months ago
parent
commit
7cc3a6926a

+ 3 - 2
api-module/src/main/java/com/tzld/piaoquan/api/controller/AccountDetailController.java

@@ -29,8 +29,9 @@ public class AccountDetailController {
     @GetMapping("/getList")
     public CommonResponse<Page<GhDetailVo>> getAccountDetailList(@RequestParam Integer pageNum,
                                                                  @RequestParam Integer pageSize,
-                                                                 @RequestParam(defaultValue = "") String accountId) {
-        return ghDetailService.getGhDetailList(pageNum, pageSize, accountId);
+                                                                 @RequestParam(defaultValue = "") String accountId,
+                                                                 @RequestParam(defaultValue = "") String accountName) {
+        return ghDetailService.getGhDetailList(pageNum, pageSize, accountId, accountName);
     }
 
     @PostMapping("/add")

+ 4 - 0
api-module/src/main/java/com/tzld/piaoquan/api/model/vo/GhDetailVo.java

@@ -34,4 +34,8 @@ public class GhDetailVo {
     private String strategyStatusName;
 
     private Integer autoreplySendMinigramNum;
+
+    private String rate;
+
+    private String contentDetail;
 }

+ 1 - 1
api-module/src/main/java/com/tzld/piaoquan/api/service/GhDetailService.java

@@ -7,7 +7,7 @@ import com.tzld.piaoquan.growth.common.utils.page.Page;
 
 public interface GhDetailService {
 
-    CommonResponse<Page<GhDetailVo>> getGhDetailList(Integer pageNum, Integer pageSize, String accountId);
+    CommonResponse<Page<GhDetailVo>> getGhDetailList(Integer pageNum, Integer pageSize, String accountId, String accountName);
 
     CommonResponse<Void> addGhDetail(GhDetailVo ghDetailVo);
 

+ 52 - 1
api-module/src/main/java/com/tzld/piaoquan/api/service/impl/GhDetailServiceImpl.java

@@ -1,5 +1,6 @@
 package com.tzld.piaoquan.api.service.impl;
 
+import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.tzld.piaoquan.growth.common.common.enums.GhTypeEnum;
 import com.tzld.piaoquan.growth.common.common.enums.StrategyStatusEnum;
@@ -20,6 +21,7 @@ import org.springframework.util.CollectionUtils;
 
 import java.util.ArrayList;
 import java.util.List;
+import java.util.Objects;
 
 @Slf4j
 @Service
@@ -30,7 +32,8 @@ public class GhDetailServiceImpl implements GhDetailService {
 
 
     @Override
-    public CommonResponse<Page<GhDetailVo>> getGhDetailList(Integer pageNum, Integer pageSize, String accountId) {
+    public CommonResponse<Page<GhDetailVo>> getGhDetailList(Integer pageNum, Integer pageSize,
+                                                            String accountId, String accountName) {
         if (pageNum == null) {
             pageNum = 1;
         }
@@ -49,6 +52,9 @@ public class GhDetailServiceImpl implements GhDetailService {
         if (StringUtils.isNotEmpty(accountId)) {
             criteria.andGhIdEqualTo(accountId);
         }
+        if (StringUtils.isNotEmpty(accountName)) {
+            criteria.andGhNameLike(accountName);
+        }
         example.setPage(page);
         long total = ghDetailMapper.countByExample(example);
         page.setTotalSize((int) total);
@@ -87,6 +93,11 @@ public class GhDetailServiceImpl implements GhDetailService {
             return CommonResponse.create(500, "参数错误");
         }
 
+        CommonResponse<Void> checkParamRes = checkParam(ghDetailVo);
+        if (checkParamRes != null) {
+            return checkParamRes;
+        }
+
         try {
             GhDetail ghDetail = new GhDetail();
             BeanUtils.copyProperties(ghDetailVo, ghDetail);
@@ -111,6 +122,10 @@ public class GhDetailServiceImpl implements GhDetailService {
 
     @Override
     public CommonResponse<Void> updateDetail(GhDetailVo ghDetailVo) {
+        CommonResponse<Void> checkParamRes = checkParam(ghDetailVo);
+        if (checkParamRes != null) {
+            return checkParamRes;
+        }
         try {
             GhDetail ghDetail = new GhDetail();
             BeanUtils.copyProperties(ghDetailVo, ghDetail);
@@ -141,4 +156,40 @@ public class GhDetailServiceImpl implements GhDetailService {
         return CommonResponse.success();
     }
 
+    private CommonResponse<Void> checkParam(GhDetailVo ghDetailVo) {
+        if (StringUtils.isNotEmpty(ghDetailVo.getRate())) {
+            if (!JSONArray.isValidArray(ghDetailVo.getRate())) {
+                return CommonResponse.create(500, "参数错误");
+            }
+            List<Integer> list = JSONArray.parseArray(ghDetailVo.getRate(), Integer.class);
+            if (!CollectionUtils.isEmpty(list)) {
+                for (Integer i : list) {
+                    if (i < 0 || i > 9) {
+                        return CommonResponse.create(500, "参数错误");
+                    }
+                }
+            }
+        }
+
+        if (StringUtils.isNotEmpty(ghDetailVo.getContentDetail())) {
+            if (!JSONObject.isValidObject(ghDetailVo.getContentDetail())) {
+                return CommonResponse.create(500, "文章内容格式错误");
+            }
+            JSONObject contentDetail = JSONObject.parseObject(ghDetailVo.getContentDetail());
+            if (StringUtils.isEmpty(contentDetail.getString("coverUrl"))) {
+                return CommonResponse.create(500, "文章封面信息错误");
+            }
+            if (StringUtils.isEmpty(contentDetail.getString("newsDescription"))) {
+                return CommonResponse.create(500, "文章内容错误");
+            }
+            if (StringUtils.isEmpty(contentDetail.getString("newsUrl"))) {
+                return CommonResponse.create(500, "文章路径错误");
+            }
+            if (StringUtils.isEmpty(contentDetail.getString("title"))) {
+                return CommonResponse.create(500, "文章标题错误");
+            }
+        }
+        return null;
+    }
+
 }

+ 2 - 2
api-module/src/main/resources/mybatis-generator-config.xml

@@ -51,11 +51,11 @@
         </javaClientGenerator>
 
 <!--        <table tableName="we_com_alert_message" domainObjectName="AlertMessage" alias=""/>-->
-<!--        <table tableName="gh_detail" domainObjectName="GhDetail" alias=""/>-->
+        <table tableName="gh_detail" domainObjectName="GhDetail" alias=""/>
 <!--        <table tableName="we_com_guarantees_video" domainObjectName="GuaranteesVideo" alias=""/>-->
 <!--        <table tableName="we_com_staff" domainObjectName="Staff" alias=""/>-->
 <!--        <table tableName="we_com_message_attachment" domainObjectName="MessageAttachment" alias=""/>-->
-        <table tableName="we_com_special_pre_send_message" domainObjectName="PreSpecialSendMessage" alias=""/>
+<!--        <table tableName="we_com_special_pre_send_message" domainObjectName="PreSpecialSendMessage" alias=""/>-->
 <!--        <table tableName="we_com_send_msg_result" domainObjectName="SendMsgResult" alias=""/>-->
 <!--        <table tableName="we_com_corp" domainObjectName="Corp" alias=""/>-->
 

+ 2 - 1
common-module/src/main/java/com/tzld/piaoquan/growth/common/common/enums/StrategyStatusEnum.java

@@ -5,7 +5,8 @@ import java.util.Objects;
 public enum StrategyStatusEnum {
 
     DEFAULT(0, "保底视频"),
-    STRATEGY(1, "策略视频");
+    STRATEGY(1, "策略视频"),
+    MIXED_STRATEGY(2,"混合策略");
 
     StrategyStatusEnum(Integer status, String name) {
         this.status = status;

+ 1 - 7
common-module/src/main/java/com/tzld/piaoquan/growth/common/dao/mapper/GhDetailMapper.java

@@ -1,16 +1,10 @@
 package com.tzld.piaoquan.growth.common.dao.mapper;
 
-
 import com.tzld.piaoquan.growth.common.model.po.GhDetail;
 import com.tzld.piaoquan.growth.common.model.po.GhDetailExample;
-import org.apache.ibatis.annotations.Mapper;
-import org.apache.ibatis.annotations.Param;
-import org.springframework.stereotype.Repository;
-
 import java.util.List;
+import org.apache.ibatis.annotations.Param;
 
-@Mapper
-@Repository
 public interface GhDetailMapper {
     long countByExample(GhDetailExample example);
 

+ 22 - 0
common-module/src/main/java/com/tzld/piaoquan/growth/common/model/po/GhDetail.java

@@ -29,6 +29,10 @@ public class GhDetail {
 
     private Integer autoreplySendMinigramNum;
 
+    private String rate;
+
+    private String contentDetail;
+
     public Long getId() {
         return id;
     }
@@ -133,6 +137,22 @@ public class GhDetail {
         this.autoreplySendMinigramNum = autoreplySendMinigramNum;
     }
 
+    public String getRate() {
+        return rate;
+    }
+
+    public void setRate(String rate) {
+        this.rate = rate;
+    }
+
+    public String getContentDetail() {
+        return contentDetail;
+    }
+
+    public void setContentDetail(String contentDetail) {
+        this.contentDetail = contentDetail;
+    }
+
     @Override
     public String toString() {
         StringBuilder sb = new StringBuilder();
@@ -152,6 +172,8 @@ public class GhDetail {
         sb.append(", videoIds=").append(videoIds);
         sb.append(", strategyStatus=").append(strategyStatus);
         sb.append(", autoreplySendMinigramNum=").append(autoreplySendMinigramNum);
+        sb.append(", rate=").append(rate);
+        sb.append(", contentDetail=").append(contentDetail);
         sb.append("]");
         return sb.toString();
     }

+ 140 - 0
common-module/src/main/java/com/tzld/piaoquan/growth/common/model/po/GhDetailExample.java

@@ -957,6 +957,146 @@ public class GhDetailExample {
             addCriterion("autoreply_send_minigram_num not between", value1, value2, "autoreplySendMinigramNum");
             return (Criteria) this;
         }
+
+        public Criteria andRateIsNull() {
+            addCriterion("rate is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andRateIsNotNull() {
+            addCriterion("rate is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andRateEqualTo(String value) {
+            addCriterion("rate =", value, "rate");
+            return (Criteria) this;
+        }
+
+        public Criteria andRateNotEqualTo(String value) {
+            addCriterion("rate <>", value, "rate");
+            return (Criteria) this;
+        }
+
+        public Criteria andRateGreaterThan(String value) {
+            addCriterion("rate >", value, "rate");
+            return (Criteria) this;
+        }
+
+        public Criteria andRateGreaterThanOrEqualTo(String value) {
+            addCriterion("rate >=", value, "rate");
+            return (Criteria) this;
+        }
+
+        public Criteria andRateLessThan(String value) {
+            addCriterion("rate <", value, "rate");
+            return (Criteria) this;
+        }
+
+        public Criteria andRateLessThanOrEqualTo(String value) {
+            addCriterion("rate <=", value, "rate");
+            return (Criteria) this;
+        }
+
+        public Criteria andRateLike(String value) {
+            addCriterion("rate like", value, "rate");
+            return (Criteria) this;
+        }
+
+        public Criteria andRateNotLike(String value) {
+            addCriterion("rate not like", value, "rate");
+            return (Criteria) this;
+        }
+
+        public Criteria andRateIn(List<String> values) {
+            addCriterion("rate in", values, "rate");
+            return (Criteria) this;
+        }
+
+        public Criteria andRateNotIn(List<String> values) {
+            addCriterion("rate not in", values, "rate");
+            return (Criteria) this;
+        }
+
+        public Criteria andRateBetween(String value1, String value2) {
+            addCriterion("rate between", value1, value2, "rate");
+            return (Criteria) this;
+        }
+
+        public Criteria andRateNotBetween(String value1, String value2) {
+            addCriterion("rate not between", value1, value2, "rate");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentDetailIsNull() {
+            addCriterion("content_detail is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentDetailIsNotNull() {
+            addCriterion("content_detail is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentDetailEqualTo(String value) {
+            addCriterion("content_detail =", value, "contentDetail");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentDetailNotEqualTo(String value) {
+            addCriterion("content_detail <>", value, "contentDetail");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentDetailGreaterThan(String value) {
+            addCriterion("content_detail >", value, "contentDetail");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentDetailGreaterThanOrEqualTo(String value) {
+            addCriterion("content_detail >=", value, "contentDetail");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentDetailLessThan(String value) {
+            addCriterion("content_detail <", value, "contentDetail");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentDetailLessThanOrEqualTo(String value) {
+            addCriterion("content_detail <=", value, "contentDetail");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentDetailLike(String value) {
+            addCriterion("content_detail like", value, "contentDetail");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentDetailNotLike(String value) {
+            addCriterion("content_detail not like", value, "contentDetail");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentDetailIn(List<String> values) {
+            addCriterion("content_detail in", values, "contentDetail");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentDetailNotIn(List<String> values) {
+            addCriterion("content_detail not in", values, "contentDetail");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentDetailBetween(String value1, String value2) {
+            addCriterion("content_detail between", value1, value2, "contentDetail");
+            return (Criteria) this;
+        }
+
+        public Criteria andContentDetailNotBetween(String value1, String value2) {
+            addCriterion("content_detail not between", value1, value2, "contentDetail");
+            return (Criteria) this;
+        }
     }
 
     public static class Criteria extends GeneratedCriteria {

+ 37 - 5
common-module/src/main/resources/mapper/GhDetailMapper.xml

@@ -15,6 +15,8 @@
     <result column="video_ids" jdbcType="VARCHAR" property="videoIds" />
     <result column="strategy_status" jdbcType="INTEGER" property="strategyStatus" />
     <result column="autoreply_send_minigram_num" jdbcType="INTEGER" property="autoreplySendMinigramNum" />
+    <result column="rate" jdbcType="VARCHAR" property="rate" />
+    <result column="content_detail" jdbcType="CHAR" property="contentDetail" />
   </resultMap>
   <sql id="Example_Where_Clause">
     <where>
@@ -76,7 +78,7 @@
   </sql>
   <sql id="Base_Column_List">
     id, gh_id, gh_name, `type`, category1, category2, is_delete, create_time, update_time, 
-    channel, video_ids, strategy_status, autoreply_send_minigram_num
+    channel, video_ids, strategy_status, autoreply_send_minigram_num, rate, content_detail
   </sql>
   <select id="selectByExample" parameterType="com.tzld.piaoquan.growth.common.model.po.GhDetailExample" resultMap="BaseResultMap">
     select
@@ -116,12 +118,14 @@
       `type`, category1, category2, 
       is_delete, create_time, update_time, 
       channel, video_ids, strategy_status, 
-      autoreply_send_minigram_num)
+      autoreply_send_minigram_num, rate, content_detail
+      )
     values (#{id,jdbcType=BIGINT}, #{ghId,jdbcType=VARCHAR}, #{ghName,jdbcType=VARCHAR}, 
       #{type,jdbcType=INTEGER}, #{category1,jdbcType=VARCHAR}, #{category2,jdbcType=VARCHAR}, 
       #{isDelete,jdbcType=INTEGER}, #{createTime,jdbcType=TIMESTAMP}, #{updateTime,jdbcType=TIMESTAMP}, 
       #{channel,jdbcType=VARCHAR}, #{videoIds,jdbcType=VARCHAR}, #{strategyStatus,jdbcType=INTEGER}, 
-      #{autoreplySendMinigramNum,jdbcType=INTEGER})
+      #{autoreplySendMinigramNum,jdbcType=INTEGER}, #{rate,jdbcType=VARCHAR}, #{contentDetail,jdbcType=CHAR}
+      )
   </insert>
   <insert id="insertSelective" parameterType="com.tzld.piaoquan.growth.common.model.po.GhDetail">
     insert into gh_detail
@@ -165,6 +169,12 @@
       <if test="autoreplySendMinigramNum != null">
         autoreply_send_minigram_num,
       </if>
+      <if test="rate != null">
+        rate,
+      </if>
+      <if test="contentDetail != null">
+        content_detail,
+      </if>
     </trim>
     <trim prefix="values (" suffix=")" suffixOverrides=",">
       <if test="id != null">
@@ -206,6 +216,12 @@
       <if test="autoreplySendMinigramNum != null">
         #{autoreplySendMinigramNum,jdbcType=INTEGER},
       </if>
+      <if test="rate != null">
+        #{rate,jdbcType=VARCHAR},
+      </if>
+      <if test="contentDetail != null">
+        #{contentDetail,jdbcType=CHAR},
+      </if>
     </trim>
   </insert>
   <select id="countByExample" parameterType="com.tzld.piaoquan.growth.common.model.po.GhDetailExample" resultType="java.lang.Long">
@@ -256,6 +272,12 @@
       <if test="record.autoreplySendMinigramNum != null">
         autoreply_send_minigram_num = #{record.autoreplySendMinigramNum,jdbcType=INTEGER},
       </if>
+      <if test="record.rate != null">
+        rate = #{record.rate,jdbcType=VARCHAR},
+      </if>
+      <if test="record.contentDetail != null">
+        content_detail = #{record.contentDetail,jdbcType=CHAR},
+      </if>
     </set>
     <if test="_parameter != null">
       <include refid="Update_By_Example_Where_Clause" />
@@ -275,7 +297,9 @@
       channel = #{record.channel,jdbcType=VARCHAR},
       video_ids = #{record.videoIds,jdbcType=VARCHAR},
       strategy_status = #{record.strategyStatus,jdbcType=INTEGER},
-      autoreply_send_minigram_num = #{record.autoreplySendMinigramNum,jdbcType=INTEGER}
+      autoreply_send_minigram_num = #{record.autoreplySendMinigramNum,jdbcType=INTEGER},
+      rate = #{record.rate,jdbcType=VARCHAR},
+      content_detail = #{record.contentDetail,jdbcType=CHAR}
     <if test="_parameter != null">
       <include refid="Update_By_Example_Where_Clause" />
     </if>
@@ -319,6 +343,12 @@
       <if test="autoreplySendMinigramNum != null">
         autoreply_send_minigram_num = #{autoreplySendMinigramNum,jdbcType=INTEGER},
       </if>
+      <if test="rate != null">
+        rate = #{rate,jdbcType=VARCHAR},
+      </if>
+      <if test="contentDetail != null">
+        content_detail = #{contentDetail,jdbcType=CHAR},
+      </if>
     </set>
     where id = #{id,jdbcType=BIGINT}
   </update>
@@ -335,7 +365,9 @@
       channel = #{channel,jdbcType=VARCHAR},
       video_ids = #{videoIds,jdbcType=VARCHAR},
       strategy_status = #{strategyStatus,jdbcType=INTEGER},
-      autoreply_send_minigram_num = #{autoreplySendMinigramNum,jdbcType=INTEGER}
+      autoreply_send_minigram_num = #{autoreplySendMinigramNum,jdbcType=INTEGER},
+      rate = #{rate,jdbcType=VARCHAR},
+      content_detail = #{contentDetail,jdbcType=CHAR}
     where id = #{id,jdbcType=BIGINT}
   </update>
 </mapper>