李旭东
2023-12-08 7efc6ed86025b610cab109a2e9f83362740d8ed4
hd/pipe/mobile/src/main/resources/mapping/PipeInfoMapper.xml
@@ -490,6 +490,25 @@
                      )c where c.isExist = 0 order by c.ringnum limit 1
    </select>
    <select id="queryRingCompleteByMod" resultType="com.thhy.mobile.modules.biz.mouldcheck.entity.RingCompleteCheck">
        select a.ringnum,a.pipeModNum,a.allModNum
        from
            (
                select tpi.ring_num as ringnum,GROUP_CONCAT(sm.mould_num order by sm.mould_num) as pipeModNum,
                       (
                           select GROUP_CONCAT(sm1.mould_num order by sm1.mould_num)
                           from sys_mould sm1
                           where SUBSTRING_INDEX(sm1.mould_num,'-',-1) = SUBSTRING_INDEX(#{mouldNum},'-',-1) and sm1.is_use = 1 and sm1.pro_id = #{proId}
                           group by sm1.is_use
                       ) as allModNum
                from t_pipe_info tpi
                         left join sys_mould sm on sm.mould_id = tpi.mod_id
                where SUBSTRING_INDEX(sm.mould_num,'-',-1) = SUBSTRING_INDEX(#{mouldNum},'-',-1) and sm.is_use = 1 and tpi.pro_id = #{proId}
                GROUP BY tpi.ring_num
            ) a
        where a.pipeModNum != a.allModNum and a.pipeModNum not LIKE CONCAT('%',#{mouldNum},'%')
    </select>
    <select id="queryMaxRingNum" resultType="int">
        select case when a.maxRingNum is null then 1 else a.maxRingNum end as maxRingNum
        from
@@ -827,6 +846,32 @@
        group by m.mould_type
    </select>
    <select id="queryMouldByNumType" resultType="com.thhy.mobile.modules.biz.mouldcheck.entity.Mould">
        select
            t.mould_id as mouldId,
            t.come_factory_time as comeFactoryTime,
            t.create_time as createTime,
            t.create_user as createUser,
            t.current_cycle_time as currentCycleTime,
            t.is_use as isUse,
            t.max_cycle_time as maxCycleTime,
            t.mould_code as mouldCode,
            t.mould_num as mouldNum,
            t.mould_size as mouldSize,
            t.mould_turn as mouldTurn,
            t.mould_type as mouldType,
            t.pro_id as proId,
            t.product_date as productDate,
            t.status as status,
            t.supplier_id as supplierId,
            t.update_time as updateTime,
            t.update_user as updateUser,
            t.grouting_holes as groutingHoles,
            t.free
        from sys_mould t
        where t.pro_id = #{proId} and SUBSTRING_INDEX(t.mould_num,'-',-1) = #{numType}
    </select>
    <select id="queryMaxNumBySteelProduce" resultType="int">
        select
            max(a.number)
@@ -922,4 +967,56 @@
    <update id="updateInRepoTime">
        update t_repo_record set create_time = #{createTime} where record_id =#{recordId}
    </update>
    <select id="queryAllNumType" resultType="integer">
        select DISTINCT a.numType from (select SUBSTRING_INDEX(m.mould_num,'-',-1) as numType from sys_mould m) a
    </select>
    <select id="materialInfo" resultType="com.thhy.mobile.modules.biz.pipeinfo.entity.MaterialThingDto">
    select
   Piece as piece,
   MAX(CASE WHEN Material = '河砂' THEN FactAmnt END) AS sand,
   MAX(CASE WHEN Material = '小石子' THEN FactAmnt END) AS pebbles,
   MAX(CASE WHEN Material = '水泥3' THEN FactAmnt END) AS cement3,
   MAX(CASE WHEN Material = '粉煤灰2' THEN FactAmnt END) AS flyAsh2,
   MAX(CASE WHEN Material = '大石子' THEN FactAmnt END) AS dashizi,
   MAX(CASE WHEN Material = '水' THEN FactAmnt END) AS water,
   MAX(CASE WHEN Material = '外剂1' THEN FactAmnt END) AS externalAgent1,
   MAX(CASE WHEN Material = '粉煤灰1' THEN FactAmnt END) AS flyAsh1,
   MAX(CASE WHEN Material = '水泥4' THEN FactAmnt END) AS cement4,
   MAX(CASE WHEN Material = '水泥2' THEN FactAmnt END) AS cement2
   from
   t_raw_material where types=1
   GROUP BY Piece
   ORDER BY Piece desc limit 0,10
    </select>
    <select id="materialInfoTwo" resultType="com.thhy.mobile.modules.biz.pipeinfo.entity.MaterialThingDto">
    select
   Piece as piece,
   MAX(CASE WHEN Material = '河砂' THEN FactAmnt END) AS sand,
   MAX(CASE WHEN Material = '小石子' THEN FactAmnt END) AS pebbles,
   MAX(CASE WHEN Material = '水泥3' THEN FactAmnt END) AS cement3,
   MAX(CASE WHEN Material = '粉煤灰2' THEN FactAmnt END) AS flyAsh2,
   MAX(CASE WHEN Material = '大石子' THEN FactAmnt END) AS dashizi,
   MAX(CASE WHEN Material = '水' THEN FactAmnt END) AS water,
   MAX(CASE WHEN Material = '外剂1' THEN FactAmnt END) AS externalAgent1,
   MAX(CASE WHEN Material = '粉煤灰1' THEN FactAmnt END) AS flyAsh1,
   MAX(CASE WHEN Material = '水泥4' THEN FactAmnt END) AS cement4,
   MAX(CASE WHEN Material = '水泥2' THEN FactAmnt END) AS cement2
   from
   t_raw_material where types=2
   GROUP BY Piece
   ORDER BY Piece desc limit 0,10
    </select>
    <select id="materialNumInfo" resultType="com.thhy.mobile.modules.biz.pipeinfo.entity.MaterialThingNumDto">
        SELECT
   Material as material,
   CAST( SUM( FactAmnt ) AS FLOAT ) AS counts
FROM
   t_raw_material
GROUP BY
   Material
    </select>
</mapper>