Bläddra i källkod

增加渠道中位数

wangyunpeng 1 vecka sedan
förälder
incheckning
7e7b71cf37

+ 3 - 0
core/src/main/java/com/tzld/videoVector/job/ChannelDemandMatchJob.java

@@ -327,6 +327,7 @@ public class ChannelDemandMatchJob {
         result.setUvRatio(safeGetDouble(record, "uv占比"));
         result.setVideoCount(safeGetInt(record, "内容数量"));
         result.setTotalRov(safeGetDouble(record, "效率值"));
+        result.setChannelMedian(safeGetDouble(record, "渠道中位数"));
 
         result.setMatchStatus((short) 0); // 待匹配
         return result;
@@ -510,6 +511,7 @@ public class ChannelDemandMatchJob {
         row.setUvRatio(demand.getUvRatio());
         row.setVideoCount(demand.getVideoCount());
         row.setTotalRov(demand.getTotalRov());
+        row.setChannelMedian(demand.getChannelMedian());
         return row;
     }
 
@@ -686,6 +688,7 @@ public class ChannelDemandMatchJob {
         sb.append(",需求特征类");
         sb.append(",三级渠道");
         sb.append(",元素维度");
+        sb.append(",渠道中位数");
         sb.append(",round(人群总数量, 0) as 人群总数量");
         sb.append(",群体访问uv");
         sb.append(",uv占比");

+ 36 - 0
core/src/main/java/com/tzld/videoVector/model/po/pgVector/ChannelDemandMatchResult.java

@@ -459,6 +459,17 @@ public class ChannelDemandMatchResult {
      */
     private String elementDimension;
 
+    /**
+     * Database Column Remarks:
+     *   渠道中位数
+     *
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database column channel_demand_match_result.channel_median
+     *
+     * @mbg.generated
+     */
+    private Double channelMedian;
+
     /**
      * This method was generated by MyBatis Generator.
      * This method returns the value of the database column channel_demand_match_result.id
@@ -1443,6 +1454,30 @@ public class ChannelDemandMatchResult {
         this.elementDimension = elementDimension;
     }
 
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method returns the value of the database column channel_demand_match_result.channel_median
+     *
+     * @return the value of channel_demand_match_result.channel_median
+     *
+     * @mbg.generated
+     */
+    public Double getChannelMedian() {
+        return channelMedian;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method sets the value of the database column channel_demand_match_result.channel_median
+     *
+     * @param channelMedian the value for channel_demand_match_result.channel_median
+     *
+     * @mbg.generated
+     */
+    public void setChannelMedian(Double channelMedian) {
+        this.channelMedian = channelMedian;
+    }
+
     /**
      * This method was generated by MyBatis Generator.
      * This method corresponds to the database table channel_demand_match_result
@@ -1496,6 +1531,7 @@ public class ChannelDemandMatchResult {
         sb.append(", experimentId=").append(experimentId);
         sb.append(", channelLevel3=").append(channelLevel3);
         sb.append(", elementDimension=").append(elementDimension);
+        sb.append(", channelMedian=").append(channelMedian);
         sb.append("]");
         return sb.toString();
     }

+ 60 - 0
core/src/main/java/com/tzld/videoVector/model/po/pgVector/ChannelDemandMatchResultExample.java

@@ -2924,6 +2924,66 @@ public class ChannelDemandMatchResultExample {
             addCriterion("element_dimension not between", value1, value2, "elementDimension");
             return (Criteria) this;
         }
+
+        public Criteria andChannelMedianIsNull() {
+            addCriterion("channel_median is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelMedianIsNotNull() {
+            addCriterion("channel_median is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelMedianEqualTo(Double value) {
+            addCriterion("channel_median =", value, "channelMedian");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelMedianNotEqualTo(Double value) {
+            addCriterion("channel_median <>", value, "channelMedian");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelMedianGreaterThan(Double value) {
+            addCriterion("channel_median >", value, "channelMedian");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelMedianGreaterThanOrEqualTo(Double value) {
+            addCriterion("channel_median >=", value, "channelMedian");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelMedianLessThan(Double value) {
+            addCriterion("channel_median <", value, "channelMedian");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelMedianLessThanOrEqualTo(Double value) {
+            addCriterion("channel_median <=", value, "channelMedian");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelMedianIn(List<Double> values) {
+            addCriterion("channel_median in", values, "channelMedian");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelMedianNotIn(List<Double> values) {
+            addCriterion("channel_median not in", values, "channelMedian");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelMedianBetween(Double value1, Double value2) {
+            addCriterion("channel_median between", value1, value2, "channelMedian");
+            return (Criteria) this;
+        }
+
+        public Criteria andChannelMedianNotBetween(Double value1, Double value2) {
+            addCriterion("channel_median not between", value1, value2, "channelMedian");
+            return (Criteria) this;
+        }
     }
 
     /**

+ 3 - 0
core/src/main/java/com/tzld/videoVector/model/vo/ChannelDemandMatchVO.java

@@ -94,6 +94,9 @@ public class ChannelDemandMatchVO {
     /** 元素维度 */
     private String elementDimension;
 
+    /** 渠道中位数 */
+    private Double channelMedian;
+
     /** 匹配到的视频列表 */
     private List<MatchedVideo> matchedVideos;
 

+ 1 - 0
core/src/main/java/com/tzld/videoVector/service/impl/VideoSearchServiceImpl.java

@@ -1578,6 +1578,7 @@ public class VideoSearchServiceImpl implements VideoSearchService {
                 v.setOnlineAction(r.getOnlineAction());
                 v.setChannelLevel3(r.getChannelLevel3());
                 v.setElementDimension(r.getElementDimension());
+                v.setChannelMedian(r.getChannelMedian());
                 v.setMatchedVideos(new ArrayList<>());
                 return v;
             });

+ 22 - 5
core/src/main/resources/mapper/pgVector/ChannelDemandMatchResultMapper.xml

@@ -47,6 +47,7 @@
     <result column="experiment_id" jdbcType="VARCHAR" property="experimentId" />
     <result column="channel_level3" jdbcType="VARCHAR" property="channelLevel3" />
     <result column="element_dimension" jdbcType="VARCHAR" property="elementDimension" />
+    <result column="channel_median" jdbcType="DOUBLE" property="channelMedian" />
   </resultMap>
   <sql id="Example_Where_Clause">
     <!--
@@ -125,7 +126,7 @@
     online_action, match_experiment_id, demand_id, crowd_package, conversion_target, 
     partner, account, scene_value, demand_strategy, drive_dimension_time, demand_filter_sort_strategy, 
     demand_type, demand_content_id, demand_content_title, demand_content_topic, uv_ratio, 
-    experiment_id, channel_level3, element_dimension
+    experiment_id, channel_level3, element_dimension, channel_median
   </sql>
   <select id="selectByExample" parameterType="com.tzld.videoVector.model.po.pgVector.ChannelDemandMatchResultExample" resultMap="BaseResultMap">
     <!--
@@ -191,7 +192,8 @@
       drive_dimension_time, demand_filter_sort_strategy, 
       demand_type, demand_content_id, demand_content_title, 
       demand_content_topic, uv_ratio, experiment_id, 
-      channel_level3, element_dimension)
+      channel_level3, element_dimension, channel_median
+      )
     values (#{configId,jdbcType=BIGINT}, #{dt,jdbcType=VARCHAR}, #{channelName,jdbcType=VARCHAR}, 
       #{crowdSegment,jdbcType=VARCHAR}, #{dimension,jdbcType=VARCHAR}, #{pointType,jdbcType=VARCHAR}, 
       #{standardElement,jdbcType=VARCHAR}, #{categoryName,jdbcType=VARCHAR}, #{crowdCount,jdbcType=INTEGER}, 
@@ -205,7 +207,8 @@
       #{driveDimensionTime,jdbcType=VARCHAR}, #{demandFilterSortStrategy,jdbcType=VARCHAR}, 
       #{demandType,jdbcType=VARCHAR}, #{demandContentId,jdbcType=VARCHAR}, #{demandContentTitle,jdbcType=VARCHAR}, 
       #{demandContentTopic,jdbcType=VARCHAR}, #{uvRatio,jdbcType=DOUBLE}, #{experimentId,jdbcType=VARCHAR}, 
-      #{channelLevel3,jdbcType=VARCHAR}, #{elementDimension,jdbcType=VARCHAR})
+      #{channelLevel3,jdbcType=VARCHAR}, #{elementDimension,jdbcType=VARCHAR}, #{channelMedian,jdbcType=DOUBLE}
+      )
   </insert>
   <insert id="insertSelective" keyColumn="id" keyProperty="id" parameterType="com.tzld.videoVector.model.po.pgVector.ChannelDemandMatchResult" useGeneratedKeys="true">
     <!--
@@ -334,6 +337,9 @@
       <if test="elementDimension != null">
         element_dimension,
       </if>
+      <if test="channelMedian != null">
+        channel_median,
+      </if>
     </trim>
     <trim prefix="values (" suffix=")" suffixOverrides=",">
       <if test="configId != null">
@@ -456,6 +462,9 @@
       <if test="elementDimension != null">
         #{elementDimension,jdbcType=VARCHAR},
       </if>
+      <if test="channelMedian != null">
+        #{channelMedian,jdbcType=DOUBLE},
+      </if>
     </trim>
   </insert>
   <select id="countByExample" parameterType="com.tzld.videoVector.model.po.pgVector.ChannelDemandMatchResultExample" resultType="java.lang.Long">
@@ -598,6 +607,9 @@
       <if test="record.elementDimension != null">
         element_dimension = #{record.elementDimension,jdbcType=VARCHAR},
       </if>
+      <if test="record.channelMedian != null">
+        channel_median = #{record.channelMedian,jdbcType=DOUBLE},
+      </if>
     </set>
     <if test="_parameter != null">
       <include refid="Update_By_Example_Where_Clause" />
@@ -649,7 +661,8 @@
       uv_ratio = #{record.uvRatio,jdbcType=DOUBLE},
       experiment_id = #{record.experimentId,jdbcType=VARCHAR},
       channel_level3 = #{record.channelLevel3,jdbcType=VARCHAR},
-      element_dimension = #{record.elementDimension,jdbcType=VARCHAR}
+      element_dimension = #{record.elementDimension,jdbcType=VARCHAR},
+      channel_median = #{record.channelMedian,jdbcType=DOUBLE}
     <if test="_parameter != null">
       <include refid="Update_By_Example_Where_Clause" />
     </if>
@@ -781,6 +794,9 @@
       <if test="elementDimension != null">
         element_dimension = #{elementDimension,jdbcType=VARCHAR},
       </if>
+      <if test="channelMedian != null">
+        channel_median = #{channelMedian,jdbcType=DOUBLE},
+      </if>
     </set>
     where id = #{id,jdbcType=BIGINT}
   </update>
@@ -829,7 +845,8 @@
       uv_ratio = #{uvRatio,jdbcType=DOUBLE},
       experiment_id = #{experimentId,jdbcType=VARCHAR},
       channel_level3 = #{channelLevel3,jdbcType=VARCHAR},
-      element_dimension = #{elementDimension,jdbcType=VARCHAR}
+      element_dimension = #{elementDimension,jdbcType=VARCHAR},
+      channel_median = #{channelMedian,jdbcType=DOUBLE}
     where id = #{id,jdbcType=BIGINT}
   </update>
 </mapper>

+ 3 - 2
core/src/main/resources/mapper/pgVector/ext/ChannelDemandMatchResultMapperExt.xml

@@ -13,7 +13,8 @@
       partner, account, scene_value,
       demand_strategy, drive_dimension_time, demand_filter_sort_strategy,
       demand_type, demand_content_id, demand_content_title,
-      demand_content_topic, uv_ratio, experiment_id, channel_level3, element_dimension)
+      demand_content_topic, uv_ratio, experiment_id, channel_level3, element_dimension,
+      channel_median)
     values
     <foreach collection="list" item="item" separator=",">
       (#{item.configId,jdbcType=BIGINT}, #{item.dt,jdbcType=VARCHAR}, #{item.channelName,jdbcType=VARCHAR},
@@ -28,7 +29,7 @@
       #{item.demandStrategy,jdbcType=VARCHAR}, #{item.driveDimensionTime,jdbcType=VARCHAR}, #{item.demandFilterSortStrategy,jdbcType=VARCHAR},
       #{item.demandType,jdbcType=VARCHAR}, #{item.demandContentId,jdbcType=VARCHAR}, #{item.demandContentTitle,jdbcType=VARCHAR},
       #{item.demandContentTopic,jdbcType=VARCHAR}, #{item.uvRatio,jdbcType=DOUBLE}, #{item.experimentId,jdbcType=VARCHAR}, #{item.channelLevel3,jdbcType=VARCHAR},
-      #{item.elementDimension,jdbcType=VARCHAR})
+      #{item.elementDimension,jdbcType=VARCHAR}, #{item.channelMedian,jdbcType=DOUBLE})
     </foreach>
   </insert>
 </mapper>