fuliqi
2025-02-10 27e913d6d28a9cfa0785d15453a4de10fd36ce6d
ycl-server/src/main/resources/mapper/zgyw/CalculateReportMapper.xml
@@ -79,6 +79,7 @@
        <result column="id" property="id"/>
        <result column="create_time" property="createTime"/>
        <result column="unit_name" property="unitName"/>
        <result column="unit_id" property="unitId"/>
        <result column="name" property="contractName"/>
        <result column="contract_id" property="contractId"/>
        <result column="which_year" property="whichYear"/>
@@ -121,12 +122,14 @@
                AND tcr.status=#{status}
            </if>
        </where>
        group by tcr.id
        ORDER BY
        tcr.create_time
    </select>
    <select id="getById" resultMap="DetailResultMap">
        SELECT tyu.unit_name,
        tyu.id as unit_id,
        tc.name,
        tcr.id,
        tcr.contract_id,
@@ -144,14 +147,26 @@
    </select>
    <select id="exportData" resultType="com.ycl.platform.domain.excel.CalculateExport">
        SELECT a.rule_name,
               COUNT(b.id)              AS num,
               IFNULL(-SUM(b.score), 0) AS score
        SELECT
        a.rule_name as ruleName,
        a.rule_condition as detailName,
        COUNT(b.id) AS num,
        IFNULL(-SUM(b.score), 0) AS score
        FROM t_calculate_rule a
        LEFT JOIN t_calculate_record tcr ON a.contract_id = tcr.contract_id And tcr.id = #{calculateId}
        LEFT JOIN t_contract_score b ON b.rule_id = a.id AND auditing_status = 'PASS' AND b.deleted = 0 AND YEAR (b.create_time) = tcr.which_year
        WHERE a.deleted = 0
        GROUP BY a.rule_name
        LEFT JOIN t_calculate_record tcr ON a.contract_id = tcr.contract_id
        LEFT JOIN t_contract_score b ON b.rule_id = a.id AND auditing_status = 'PASS' AND b.deleted = 0
            AND MONTH(b.create_time) = tcr.which_month
            AND YEAR(b.create_time) = tcr.which_year
        <where>
            a.deleted = 0 and a.contract_id = #{contractId}
            <if test="whichMonth!=null">
                and tcr.which_month = #{whichMonth}
            </if>
            <if test="whichYear!=null">
                and tcr.which_year = #{whichYear}
            </if>
        </where>
        GROUP BY a.id
    </select>
</mapper>