feiyu02
2024-04-25 0392c333ed3d987cb2ab3dac4e1a972cff405f21
src/main/resources/mapper/ds1/SubtaskMapper.xml
@@ -153,6 +153,7 @@
        <result column="ST_GUID" property="stGuid" jdbcType="VARCHAR" />
        <result column="ST_name" property="stName" jdbcType="VARCHAR" />
        <result column="ST_PlanStartTime" property="stPlanTime" jdbcType="TIMESTAMP" />
        <result column="ST_Status" property="stStatus" jdbcType="VARCHAR" />
        <result column="S_GUID" property="sceneId" jdbcType="VARCHAR" />
        <result column="S_Name" property="sceneName" jdbcType="VARCHAR" />
        <result column="S_Type" property="sceneType" jdbcType="VARCHAR" />
@@ -279,6 +280,7 @@
        a.ST_GUID,
        a.ST_name,
        a.ST_PlanStartTime,
        a.ST_Status,
        b.S_GUID,
        b.S_Name,
        b.S_Type,
@@ -303,4 +305,51 @@
        GROUP BY
        a.ST_GUID
    </select>
    <select id="getSummaryByScene" resultMap="SubTaskSummary">
        SELECT
        a.ST_GUID,
        a.ST_name,
        a.ST_PlanStartTime,
        a.ST_Status,
        b.S_GUID,
        b.S_Name,
        b.S_Type,
        c.I_GUID,
        SUM(d.PL_GUID is NOT null) AS proNum,
        SUM(d.PL_IsChanged = TRUE) AS changeNum,
        SUM(d.PL_Extension3 != 'unCheck') AS proCheckedNum,
        SUM(
        d.PL_Extension3 = 'change_pass' || d.PL_Extension3 = 'change_fail'
        ) AS changeCheckedNum
        FROM
        tm_t_subtask AS a
        LEFT JOIN sm_t_scense AS b ON a.ST_ScenseID = b.S_GUID
        LEFT JOIN im_t_inspection AS c ON a.ST_GUID = c.ST_GUID
        LEFT JOIN im_t_problemlist AS d ON a.ST_GUID = d.ST_GUID
        WHERE
        a.ST_ScenseID = #{sceneId}
        <if test="startTime != null">
            and a.ST_PlanStartTime BETWEEN #{startTime} AND #{endTime}
        </if>
        GROUP BY
        a.ST_GUID
        ORDER BY a.ST_PlanStartTime DESC
    </select>
    <select id="findSubTasksByProType" resultMap="BaseResultMap">
        SELECT
        a.*
        FROM
        tm_t_subtask AS a
        LEFT JOIN im_t_problemlist AS b ON a.ST_GUID = b.ST_GUID
        LEFT JOIN sm_t_problemtype AS c ON b.PT_GUID = c.PT_GUID
        LEFT JOIN sm_t_scense AS d ON a.ST_ScenseID = d.S_GUID
        WHERE
        a.T_GUID = #{topTaskId}
        AND c.PT_TypeName = #{proType}
        AND d.S_TypeID = #{sceneTypeId}
        GROUP BY a.ST_GUID
    </select>
</mapper>