张晓波
2023-12-12 766effa6e04db9b37b1dc3886d988beaa595c38d
hd/pipe/screen/src/main/resources/mapping/BigScreenMapper.xml
@@ -207,5 +207,143 @@
        ) x on x.`month` = DATE_FORMAT(m.`month`,'%Y-%m')
    </select>
    <insert id="insertAudioGroup">
        INSERT INTO t_audio_group
        <trim suffix=")" prefix="(" suffixOverrides=",">
            <if test="id != null and id !=null">
                id,
            </if>
            <if test="groupId != null">
                group_id,
            </if>
            <if test="groupName != null and groupName !=null">
                group_name,
            </if>
        </trim>
        <trim suffix=")" prefix=" values(" suffixOverrides=",">
            <if test="id != null and id !=null">
                #{id},
            </if>
            <if test="groupId != null">
                #{groupId},
            </if>
            <if test="groupName != null and groupName !=null">
                #{groupName},
            </if>
        </trim>
    </insert>
    <select id="queryGroups" resultType="com.thhy.screen.modules.biz.audio.entity.AudioGroup">
        select id,group_id as groupId,group_name as groupName from t_audio_group
        <where>
            <if test="groupId != null and groupId !=''">
                id = #{groupId}
            </if>
        </where>
    </select>
    <!--钢筋总消耗,周消耗,月消耗-->
    <select id="querySteelMake" resultType="hashmap">
        select steel.steel_id,CONCAT(steel.steel_name,'-',steel_model) as steelName,
               case when a.totalStock is NULL then 0 else a.totalStock end as totalStock,
               case when b.weekStock is NULL then 0 else b.weekStock end as weekStock,
               case when c.monthStock is NULL then 0 else c.monthStock end as monthStock
        from sys_steel steel
                 left join
             (
                 select ssr.steel_id,sum(ssr.change_stock) as totalStock from sys_steel_record ssr
                 where ssr.stock_type = 2
                 group by ssr.steel_id
             ) a on steel.steel_id = a.steel_id
                 left join
             (
                 select ssr.steel_id,sum(ssr.change_stock) as weekStock from sys_steel_record ssr
                 where ssr.stock_type = 2 and YEAR(SYSDATE()) = YEAR(ssr.create_time) and WEEK(sysdate(),1) = WEEK(ssr.create_time,1)
        group by ssr.steel_id
            ) b on steel.steel_id = b.steel_id
            left join
            (
            select ssr.steel_id,sum(ssr.change_stock) as monthStock from sys_steel_record ssr
            where ssr.stock_type = 2 and YEAR(SYSDATE()) = YEAR(ssr.create_time) and MONTH(SYSDATE()) = MONTH(ssr.create_time)
            group by ssr.steel_id
            ) c on steel.steel_id = c.steel_id
            ORDER BY c.monthStock desc
    </select>
    <!--获取静养区-->
    <select id="queryRestInfo" resultType="hashmap">
        select sd.device_id as deviceId,sd.device_name as deviceName,(select tem from t_rest_data trd where trd.device_id = sd.device_id order by check_time desc limit 1) as tem
        from sys_device sd where sd.produce_order = '静养'
    </select>
    <insert id="insertAudioFile">
        insert into  t_audio_group_file
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="id !=null and id !=''">
                id,
            </if>
            <if test="name !=null and name !=''">
                name,
            </if>
            <if test="groupId !=null and groupId !=''">
                group_id,
            </if>
            <if test="audioFile !=null and audioFile !=''">
                audio_file,
            </if>
            <if test="defaults !=null">
                `defaults`,
            </if>
        </trim>
        <trim prefix=" values (" suffix=")" suffixOverrides=",">
            <if test="id !=null and id !=''">
                #{id},
            </if>
            <if test="name !=null and name !=''">
                #{name},
            </if>
            <if test="groupId !=null and groupId !=''">
                #{groupId},
            </if>
            <if test="audioFile !=null and audioFile !=''">
                #{audioFile},
            </if>
            <if test="defaults !=null">
                #{defaults},
            </if>
        </trim>
    </insert>
    <update id="updateAudioFile">
        UPDATE  t_audio_group_file
        <set>
            <trim suffixOverrides=",">
                <if test="groupId !=null and groupId !=''">
                    group_id = #{groupId},
                </if>
                <if test="audioFile !=null and audioFile !=''">
                    audio_file = #{groupFile},
                </if>
                <if test="defaults !=null">
                    `defaults` = #{defaults},
                </if>
            </trim>
        </set>
        where id = #{id}
    </update>
    <delete id="deleteAudioFile">
        delete from t_audio_group_file where group_id = #{groupId}
    </delete>
    <select id="queryGroupInfo" resultType="com.thhy.screen.modules.biz.audio.entity.GroupInfoVo">
        select id,group_name as groupName
            from t_audio_group where id = #{id}
    </select>
    <select id="queryFileByGroup" resultType="com.thhy.screen.modules.biz.audio.entity.AudioFile">
        select id,group_id as groupId,audio_file as audioFile,`defaults` from t_audio_group_file where group_id = #{groupId}
    </select>
</mapper>