|
|
@@ -6,12 +6,13 @@
|
|
|
<result column="province" jdbcType="INTEGER" property="province" />
|
|
|
<result column="dep_id" jdbcType="VARCHAR" property="depId" />
|
|
|
<result column="uid" jdbcType="VARCHAR" property="uid" />
|
|
|
- <result column="quantity" jdbcType="VARCHAR" property="quantity" />
|
|
|
+ <result column="quantity" jdbcType="INTEGER" property="quantity" />
|
|
|
+ <result column="new_user" jdbcType="INTEGER" property="newUser" />
|
|
|
<result column="total" jdbcType="DECIMAL" property="total" />
|
|
|
<result column="date" jdbcType="VARCHAR" property="date" />
|
|
|
</resultMap>
|
|
|
<sql id="Base_Column_List">
|
|
|
- id, province, dep_id, `uid`, quantity, total, `date`
|
|
|
+ id, province, dep_id, `uid`, quantity, new_user, total, `date`
|
|
|
</sql>
|
|
|
<select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultMap="BaseResultMap">
|
|
|
select
|
|
|
@@ -19,17 +20,67 @@
|
|
|
from public_release_count
|
|
|
where id = #{id,jdbcType=INTEGER}
|
|
|
</select>
|
|
|
+ <select id="followStatisticsList" resultType="com.goafanti.user.bo.outFollowStatisticsList">
|
|
|
+ select z.*,(z.totalQuantity/z.totalInterview)totalRatio from(select name,use_interview useInterview,
|
|
|
+ use_quantity useQuantity,use_total useTotal,(use_quantity/use_interview)useRatio,
|
|
|
+ new_interview newInterview,new_quantity newQuantity,new_total newTotal,(new_quantity/new_interview)newRatio,
|
|
|
+ (use_interview+new_interview)totalInterview,(use_quantity+new_quantity)totalQuantity,(use_total+new_total)total
|
|
|
+ from (select dg.name,sum(use_interview)use_interview,sum(use_quantity)use_quantity,sum(use_total)use_total,
|
|
|
+ sum(new_interview)new_interview,sum(new_quantity)new_quantity,sum(new_total)new_total
|
|
|
+ from (select province,if(new_user=1,1,0)use_interview,if(new_user=1,a.quantity ,0)use_quantity,
|
|
|
+ if(new_user=1,a.total ,0)use_total,if(new_user=0,1,0)new_interview,if(new_user=0,a.quantity ,0)new_quantity,
|
|
|
+ if(new_user=0,a.total ,0)new_total from public_release_count a
|
|
|
+ where a.`date` = #{date}
|
|
|
+ <if test="depId !=null">
|
|
|
+ and a.dep_id= #{depId}
|
|
|
+ </if>
|
|
|
+ <if test="province !=null">
|
|
|
+ and a.province= #{province}
|
|
|
+ </if>
|
|
|
+ )x
|
|
|
+ left join district_glossory dg on x.province=dg.id group by dg.id )y )z
|
|
|
+ order by
|
|
|
+ <if test="sort==0">
|
|
|
+ totalQuantity
|
|
|
+ </if>
|
|
|
+ <if test="sort==1">
|
|
|
+ total
|
|
|
+ </if>
|
|
|
+ <if test="sort==2">
|
|
|
+ totalInterview
|
|
|
+ </if>
|
|
|
+ desc
|
|
|
+ </select>
|
|
|
+ <select id="provinceFollowStatisticsList" resultType="com.goafanti.user.bo.outProvinceFollowStatistic">
|
|
|
+ select x.name,c.nickname ,x.new_user newUser,d.counts interviewCount,x.quantity
|
|
|
+ from (select b.name,a.new_user,a.uid,sum(a.quantity)quantity from public_release_count a left join department b on a.dep_id =b.id
|
|
|
+ where a.date= #{date} and a.province = #{province}
|
|
|
+ <if test="depId !=null">
|
|
|
+ and a.dep_id = #{depId}
|
|
|
+ </if>
|
|
|
+ group by b.name ,a.uid ,a.new_user )x
|
|
|
+ left join `user` c on x.uid =c.id left join (select uid,count(*)counts from public_release group by uid) d on x.uid =d.uid
|
|
|
+ order by
|
|
|
+ <if test="sort==0">
|
|
|
+ d.counts
|
|
|
+ </if>
|
|
|
+ <if test="sort==1">
|
|
|
+ x.quantity
|
|
|
+ </if>
|
|
|
+ desc
|
|
|
+ </select>
|
|
|
+
|
|
|
<delete id="deleteByPrimaryKey" parameterType="java.lang.Integer">
|
|
|
delete from public_release_count
|
|
|
where id = #{id,jdbcType=INTEGER}
|
|
|
</delete>
|
|
|
<insert id="insert" keyColumn="id" keyProperty="id" parameterType="com.goafanti.common.model.PublicReleaseCount" useGeneratedKeys="true">
|
|
|
insert into public_release_count (province, dep_id, `uid`,
|
|
|
- quantity, total, `date`
|
|
|
- )
|
|
|
+ quantity, new_user, total,
|
|
|
+ `date`)
|
|
|
values (#{province,jdbcType=INTEGER}, #{depId,jdbcType=VARCHAR}, #{uid,jdbcType=VARCHAR},
|
|
|
- #{quantity,jdbcType=VARCHAR}, #{total,jdbcType=DECIMAL}, #{date,jdbcType=VARCHAR}
|
|
|
- )
|
|
|
+ #{quantity,jdbcType=INTEGER}, #{newUser,jdbcType=INTEGER}, #{total,jdbcType=DECIMAL},
|
|
|
+ #{date,jdbcType=VARCHAR})
|
|
|
</insert>
|
|
|
<insert id="insertSelective" keyColumn="id" keyProperty="id" parameterType="com.goafanti.common.model.PublicReleaseCount" useGeneratedKeys="true">
|
|
|
insert into public_release_count
|
|
|
@@ -46,6 +97,9 @@
|
|
|
<if test="quantity != null">
|
|
|
quantity,
|
|
|
</if>
|
|
|
+ <if test="newUser != null">
|
|
|
+ new_user,
|
|
|
+ </if>
|
|
|
<if test="total != null">
|
|
|
total,
|
|
|
</if>
|
|
|
@@ -64,7 +118,10 @@
|
|
|
#{uid,jdbcType=VARCHAR},
|
|
|
</if>
|
|
|
<if test="quantity != null">
|
|
|
- #{quantity,jdbcType=VARCHAR},
|
|
|
+ #{quantity,jdbcType=INTEGER},
|
|
|
+ </if>
|
|
|
+ <if test="newUser != null">
|
|
|
+ #{newUser,jdbcType=INTEGER},
|
|
|
</if>
|
|
|
<if test="total != null">
|
|
|
#{total,jdbcType=DECIMAL},
|
|
|
@@ -74,6 +131,17 @@
|
|
|
</if>
|
|
|
</trim>
|
|
|
</insert>
|
|
|
+ <insert id="insertBatch">
|
|
|
+ insert into public_release_count (province, dep_id, `uid`,
|
|
|
+ quantity, new_user, total,
|
|
|
+ `date`)
|
|
|
+ values
|
|
|
+ <foreach collection="list" index="index" item="item" separator=",">
|
|
|
+ (#{item.province,jdbcType=INTEGER}, #{item.depId,jdbcType=VARCHAR}, #{item.uid,jdbcType=VARCHAR},
|
|
|
+ #{item.quantity,jdbcType=INTEGER}, #{item.newUser,jdbcType=INTEGER}, #{item.total,jdbcType=DECIMAL},
|
|
|
+ #{item.date,jdbcType=VARCHAR})
|
|
|
+ </foreach>
|
|
|
+ </insert>
|
|
|
<update id="updateByPrimaryKeySelective" parameterType="com.goafanti.common.model.PublicReleaseCount">
|
|
|
update public_release_count
|
|
|
<set>
|
|
|
@@ -87,7 +155,10 @@
|
|
|
`uid` = #{uid,jdbcType=VARCHAR},
|
|
|
</if>
|
|
|
<if test="quantity != null">
|
|
|
- quantity = #{quantity,jdbcType=VARCHAR},
|
|
|
+ quantity = #{quantity,jdbcType=INTEGER},
|
|
|
+ </if>
|
|
|
+ <if test="newUser != null">
|
|
|
+ new_user = #{newUser,jdbcType=INTEGER},
|
|
|
</if>
|
|
|
<if test="total != null">
|
|
|
total = #{total,jdbcType=DECIMAL},
|
|
|
@@ -103,7 +174,8 @@
|
|
|
set province = #{province,jdbcType=INTEGER},
|
|
|
dep_id = #{depId,jdbcType=VARCHAR},
|
|
|
`uid` = #{uid,jdbcType=VARCHAR},
|
|
|
- quantity = #{quantity,jdbcType=VARCHAR},
|
|
|
+ quantity = #{quantity,jdbcType=INTEGER},
|
|
|
+ new_user = #{newUser,jdbcType=INTEGER},
|
|
|
total = #{total,jdbcType=DECIMAL},
|
|
|
`date` = #{date,jdbcType=VARCHAR}
|
|
|
where id = #{id,jdbcType=INTEGER}
|