Browse Source

客户档案日志修改新增日志

anderx 1 year ago
parent
commit
fed023993e

+ 181 - 0
src/main/java/com/goafanti/common/mapper/AdminProjectStatisticsMapper.xml

@@ -0,0 +1,181 @@
+<?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.goafanti.common.dao.AdminProjectStatisticsMapper">
+
+    <resultMap type="com.goafanti.common.model.AdminProjectStatistics" id="AdminProjectStatisticsMap">
+        <result property="id" column="id" jdbcType="INTEGER"/>
+        <result property="aid" column="aid" jdbcType="VARCHAR"/>
+        <result property="htsatcount" column="htSatCount" jdbcType="INTEGER"/>
+        <result property="htsatscorecount" column="htSatScoreCount" jdbcType="INTEGER"/>
+        <result property="htsatscoreaverage" column="htSatScoreAverage" jdbcType="INTEGER"/>
+        <result property="membercount" column="memberCount" jdbcType="INTEGER"/>
+        <result property="memberscorecount" column="memberScoreCount" jdbcType="INTEGER"/>
+        <result property="memberscoreaverage" column="memberScoreAverage" jdbcType="INTEGER"/>
+        <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
+    </resultMap>
+
+    <sql id="AdminProjectStatisticsAllSql">
+        id, aid, htSatCount, htSatScoreCount, htSatScoreAverage, memberCount, memberScoreCount, memberScoreAverage, create_time
+    </sql>
+
+    <!--查询单个-->
+    <select id="queryById" resultMap="AdminProjectStatisticsMap">
+        select
+        <include refid="AdminProjectStatisticsAllSql"/>
+        from admin_project_statistics
+        where id = #{id}
+    </select>
+
+    <!--查询指定行数据-->
+    <select id="findAdminProjectStatisticsList" resultMap="AdminProjectStatisticsMap">
+        select
+        <include refid="AdminProjectStatisticsAllSql"/>
+
+        from admin_project_statistics
+        <where>
+            <if test="id != null">
+                and id = #{id}
+            </if>
+            <if test="aid != null and aid != ''">
+                and aid = #{aid}
+            </if>
+            <if test="htsatcount != null">
+                and htSatCount = #{htsatcount}
+            </if>
+            <if test="htsatscorecount != null">
+                and htSatScoreCount = #{htsatscorecount}
+            </if>
+            <if test="htsatscoreaverage != null">
+                and htSatScoreAverage = #{htsatscoreaverage}
+            </if>
+            <if test="membercount != null">
+                and memberCount = #{membercount}
+            </if>
+            <if test="memberscorecount != null">
+                and memberScoreCount = #{memberscorecount}
+            </if>
+            <if test="memberscoreaverage != null">
+                and memberScoreAverage = #{memberscoreaverage}
+            </if>
+            <if test="createTime != null">
+                and create_time = #{createTime}
+            </if>
+        </where>
+        <if test="page_sql != null">
+            ${page_sql}
+        </if>
+    </select>
+
+    <!--统计总行数-->
+    <select id="findAdminProjectStatisticsCount" resultType="java.lang.Integer">
+        select count(1)
+        from admin_project_statistics
+        <where>
+            <if test="id != null">
+                and id = #{id}
+            </if>
+            <if test="aid != null and aid != ''">
+                and aid = #{aid}
+            </if>
+            <if test="htsatcount != null">
+                and htSatCount = #{htsatcount}
+            </if>
+            <if test="htsatscorecount != null">
+                and htSatScoreCount = #{htsatscorecount}
+            </if>
+            <if test="htsatscoreaverage != null">
+                and htSatScoreAverage = #{htsatscoreaverage}
+            </if>
+            <if test="membercount != null">
+                and memberCount = #{membercount}
+            </if>
+            <if test="memberscorecount != null">
+                and memberScoreCount = #{memberscorecount}
+            </if>
+            <if test="memberscoreaverage != null">
+                and memberScoreAverage = #{memberscoreaverage}
+            </if>
+            <if test="createTime != null">
+                and create_time = #{createTime}
+            </if>
+        </where>
+    </select>
+
+    <!--新增所有列-->
+    <insert id="insert" keyProperty="id" useGeneratedKeys="true">
+        insert into admin_project_statistics(aid, htSatCount, htSatScoreCount, htSatScoreAverage, memberCount,
+                                             memberScoreCount, memberScoreAverage, create_time)
+        values (#{aid}, #{htsatcount}, #{htsatscorecount}, #{htsatscoreaverage}, #{membercount}, #{memberscorecount},
+                #{memberscoreaverage}, #{createTime})
+    </insert>
+
+    <insert id="insertBatch">
+        insert into admin_project_statistics(aid, htSatCount, htSatScoreCount, htSatScoreAverage, memberCount,
+        memberScoreCount, memberScoreAverage, create_time)
+        values
+        <foreach collection="entities" item="entity" separator=",">
+            (#{entity.aid}, #{entity.htsatcount}, #{entity.htsatscorecount}, #{entity.htsatscoreaverage},
+            #{entity.membercount}, #{entity.memberscorecount}, #{entity.memberscoreaverage}, #{entity.createTime})
+        </foreach>
+    </insert>
+
+    <insert id="insertOrUpdateBatch" keyProperty="id" useGeneratedKeys="true">
+        insert into admin_project_statistics(aid, htSatCount, htSatScoreCount, htSatScoreAverage, memberCount,
+        memberScoreCount, memberScoreAverage, create_time)
+        values
+        <foreach collection="entities" item="entity" separator=",">
+            (#{entity.aid}, #{entity.htsatcount}, #{entity.htsatscorecount}, #{entity.htsatscoreaverage},
+            #{entity.membercount}, #{entity.memberscorecount}, #{entity.memberscoreaverage}, #{entity.createTime})
+        </foreach>
+        on duplicate key update
+        aid = values(aid),
+        htSatCount = values(htSatCount),
+        htSatScoreCount = values(htSatScoreCount),
+        htSatScoreAverage = values(htSatScoreAverage),
+        memberCount = values(memberCount),
+        memberScoreCount = values(memberScoreCount),
+        memberScoreAverage = values(memberScoreAverage),
+        create_time = values(create_time)
+    </insert>
+
+    <!--通过主键修改数据-->
+    <update id="update">
+        update admin_project_statistics
+        <set>
+            <if test="aid != null and aid != ''">
+                aid = #{aid},
+            </if>
+            <if test="htsatcount != null">
+                htSatCount = #{htsatcount},
+            </if>
+            <if test="htsatscorecount != null">
+                htSatScoreCount = #{htsatscorecount},
+            </if>
+            <if test="htsatscoreaverage != null">
+                htSatScoreAverage = #{htsatscoreaverage},
+            </if>
+            <if test="membercount != null">
+                memberCount = #{membercount},
+            </if>
+            <if test="memberscorecount != null">
+                memberScoreCount = #{memberscorecount},
+            </if>
+            <if test="memberscoreaverage != null">
+                memberScoreAverage = #{memberscoreaverage},
+            </if>
+            <if test="createTime != null">
+                create_time = #{createTime},
+            </if>
+        </set>
+        where id = #{id}
+    </update>
+
+    <!--通过主键删除-->
+    <delete id="deleteById">
+        delete
+        from admin_project_statistics
+        where id = #{id}
+    </delete>
+
+</mapper>
+

+ 2 - 2
src/main/java/com/goafanti/common/mapper/TOrderTaskMapper.xml

@@ -3067,10 +3067,10 @@
         where order_no in (SELECT order_no from t_order_task where id= #{tid})
     </select>
     <select id="selectAdminTaskByTid" resultType="com.goafanti.order.bo.TOrderTaskBo">
-        select a.id,a.task_receiver taskReceiver,a.score_number scoreNumber,c.sort cSort
+        select a.id,a.task_receiver taskReceiver,a.score_number scoreNumber,c.sort cSort,a.score_status scoreStatus
         from t_order_task a left join business_project b on a.commodity_id =b.id
                             left join business_category c on b.cid =c.id
-            where c.sort in (3,6,9) and a.score_status =2
+            where c.sort in (3,6,9)
           and a.task_receiver in (SELECT task_receiver from t_order_task
                                   where id = #{tid})
     </select>

+ 126 - 0
src/main/java/com/goafanti/common/model/AdminProjectStatistics.java

@@ -0,0 +1,126 @@
+package com.goafanti.common.model;
+
+import java.io.Serializable;
+import java.util.Date;
+
+
+/**
+ * 管理员用户项目评分表(AdminProjectStatistics)实体类
+ *
+ * @author makejava
+ * @since 2024-09-29 11:42:03
+ */
+public class AdminProjectStatistics implements Serializable {
+    private static final long serialVersionUID = 416767347864934366L;
+    /**
+     * id
+     */
+    private Integer id;
+    /**
+     * 管理员编号
+     */
+    private String aid;
+    /**
+     * 高新&科技数
+     */
+    private Integer htsatcount;
+    /**
+     * 高新&科技评分数
+     */
+    private Integer htsatscorecount;
+    /**
+     * 高新&科技平均分
+     */
+    private Integer htsatscoreaverage;
+    /**
+     * 会员数
+     */
+    private Integer membercount;
+    /**
+     * 会员评分数
+     */
+    private Integer memberscorecount;
+    /**
+     * 会员平均分
+     */
+    private Integer memberscoreaverage;
+    /**
+     * 创建时间
+     */
+    private Date createTime;
+
+
+    public Integer getId() {
+        return id;
+    }
+
+    public void setId(Integer id) {
+        this.id = id;
+    }
+
+    public String getAid() {
+        return aid;
+    }
+
+    public void setAid(String aid) {
+        this.aid = aid;
+    }
+
+    public Integer getHtsatcount() {
+        return htsatcount;
+    }
+
+    public void setHtsatcount(Integer htsatcount) {
+        this.htsatcount = htsatcount;
+    }
+
+    public Integer getHtsatscorecount() {
+        return htsatscorecount;
+    }
+
+    public void setHtsatscorecount(Integer htsatscorecount) {
+        this.htsatscorecount = htsatscorecount;
+    }
+
+    public Integer getHtsatscoreaverage() {
+        return htsatscoreaverage;
+    }
+
+    public void setHtsatscoreaverage(Integer htsatscoreaverage) {
+        this.htsatscoreaverage = htsatscoreaverage;
+    }
+
+    public Integer getMembercount() {
+        return membercount;
+    }
+
+    public void setMembercount(Integer membercount) {
+        this.membercount = membercount;
+    }
+
+    public Integer getMemberscorecount() {
+        return memberscorecount;
+    }
+
+    public void setMemberscorecount(Integer memberscorecount) {
+        this.memberscorecount = memberscorecount;
+    }
+
+    public Integer getMemberscoreaverage() {
+        return memberscoreaverage;
+    }
+
+    public void setMemberscoreaverage(Integer memberscoreaverage) {
+        this.memberscoreaverage = memberscoreaverage;
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+
+}
+

+ 26 - 0
src/main/java/com/goafanti/order/service/impl/TaskScoreServiceImpl.java

@@ -13,6 +13,8 @@ import com.goafanti.order.service.TaskScoreService;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
+import java.math.BigDecimal;
+import java.math.RoundingMode;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -66,6 +68,30 @@ public class TaskScoreServiceImpl extends BaseMybatisDao<TaskScoreMapper> implem
 
     private void updateAdminByTid(Integer tid) {
         List<TOrderTaskBo> tOrderTaskBos = tOrderTaskMapper.selectAdminTaskByTid(tid);
+        int size = tOrderTaskBos.size();
+        //项目数量
+        int htSatCount = 0,htSatScoreCount = 0,memberCount=0,memberScoreCount = 0;
+        BigDecimal ht_satSum=new BigDecimal(0);
+        BigDecimal hySum=new BigDecimal(0);
+        for (TOrderTaskBo tOrderTaskBo : tOrderTaskBos) {
+            if (tOrderTaskBo.getcSort()==3||tOrderTaskBo.getcSort()==9){
+                htSatCount++;
+                if (tOrderTaskBo.getScoreStatus()==2){
+                    htSatScoreCount++;
+                ht_satSum=ht_satSum.add(new BigDecimal(tOrderTaskBo.getScoreNumber()));
+                }
+            }else  if (tOrderTaskBo.getcSort()==6) {
+                memberCount++;
+                if (tOrderTaskBo.getScoreStatus()==2){
+                    memberScoreCount++;
+                    hySum=hySum.add(new BigDecimal(tOrderTaskBo.getScoreNumber()));
+                }
+            }
+        }
+        BigDecimal htSatScoreAverage = BigDecimal.ZERO;
+        BigDecimal memberScoreAverage = BigDecimal.ZERO;
+        if (htSatCount>0)htSatScoreAverage=ht_satSum.divide(new BigDecimal(htSatCount),2, RoundingMode.HALF_UP);
+        if (memberCount>0)memberScoreAverage=hySum.divide(new BigDecimal(memberCount),2, RoundingMode.HALF_UP);
     }
 
     /**