<?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">
	 
	<!-- 해당 부분의 namespace는 project package + Mapper Package + Mapper Interface 이름입니다. -->
	<mapper namespace="com.elt.ems.mapper.PlantMapper">
			
		<!-- 
		<resultMap id="plantResult" type="com.elt.ems.vo.PlantVo">
		  <id property="seq" column="seq" />
		  <id property="name" column="name" />
		  <id property="plantType" column="plantType" />
		  <id property="plantStatus" column="plantStatus" />
		  <id property="supplyPower" column="supplyPower" />
		  <id property="beginDate" column="beginDate" />
		  <id property="geox" column="geox" />
		  <id property="geoy" column="geoy" />
		  <id property="weatherx" column="weatherx" />
		  <id property="weathery" column="weathery" />
		  <id property="omStartDate" column="omStartDate" />
		  <id property="omEndDate" column="omEndDate" />
		  <id property="createDatetime" column="createDatetime" />
		  <id property="updateDatetime" column="updateDatetime" />
		  <id property="pmsdataDatetime" column="pmsdataDatetime" />
		  
		  <association property="pms" column="plantSeq" javaType="com.elt.ems.vo.PmsVo" resultMap="pmsResult"/>
		</resultMap>
			
		<resultMap id="pmsResult" type="com.elt.ems.vo.PmsVo">
		  <id property="plantSeq" column="plantSeq"/>
		  <result property="ip" column="ip"/>
		  <result property="port" column="port"/>
		  <result property="status" column="status"/>
		  <result property="startIdx" column="startIdx"/>
		  <result property="pmsMaker" column="pmsMaker"/>
		  <result property="pcsMaker" column="pcsMaker"/>
		  <result property="batteryMaker" column="batteryMaker"/>
		  <result property="pcsQuantity" column="pcsQuantity"/>
		  <result property="pcsVolume" column="pcsVolume"/>
		</resultMap>    
		 -->    

		<!-- 해당 부분의 id는 MapperClass의 함수 이름과 유사하여야 합니다. -->
	    <sql id="commonPagingHeader"  >
	      SELECT R1.* FROM (
	    </sql>
	    
	    <sql id="commonPagingFooter"  >
	      ) R1 LIMIT #{pgtl.startNo}, #{pgtl.listPerPage}
	    </sql>  
	    
	    <sql id="includePlantSeqs"  >
	      and p.seq in ( ${plantSeqs} )
	    </sql>
	     		
	    <select id="selectListCount"  parameterType="com.elt.ems.vo.PlantVo" resultType="integer">
	
			select count(p.seq) as count 
			from t_plant p 
			where 1=1 
			<if test="seq > 0"> and p.seq = #{seq}</if>
			<if test="plantStatus != null and plantStatus != '' "> and p.plantStatus = #{plantStatus}</if>
			<if test="plantType != null and plantType != '' "> and p.plantType = #{plantType}</if>
			<if test="name != null and name != '' "> and p.name like concat('%', #{name}, '%')</if>    
	    </select>
	    		
	    <select id="selectList"  parameterType="com.elt.ems.vo.PlantVo" resultType="com.elt.ems.vo.PlantVo">
	
	      <if test="pgtl != null">
	        <include refid="commonPagingHeader" /> 
	      </if>
	
			select 
				p.*
			from t_plant p
			where 1=1 	 
			<if test="seq > 0"> and p.seq = #{seq}</if>			
			<if test="plantStatus != null and plantStatus != '' "> and p.plantStatus = #{plantStatus}</if>
			<if test="plantType != null and plantType != '' "> and p.plantType = #{plantType}</if>	
			<if test="name != null and name != '' "> and p.name like concat('%', #{name}, '%')</if> 
			<if test="plantSeqs != null and plantSeqs != '' "><include refid="includePlantSeqs" /></if>		 
			order by p.seq desc
			
	      <if test="pgtl != null">
	        <include refid="commonPagingFooter" />
	      </if>
	      
	    </select>
	    
	    
	    <select id="selectListKescoPlantCount"  parameterType="com.elt.ems.vo.KescoPlantVo" resultType="int">

	      select count(plantSeq) count from (
				select 
					p.seq as plantSeq, p.name, p.plantType, p.plantStatus, p.supplyPower, p.beginDate, p.omStartDate, p.omEndDate, p.createDatetime,
					k.customerId, k.aesKey, k.kescoStatus, k.protoVer, k.kepcoId, k.rpsId, k.specialStatus,
				    (select count(d.seq) from t_kesco_data d where d.plantSeq = p.seq and d.inputDate = #{inputDate} <if test="inputHour != null and inputHour != '' "> and d.inputHour = #{inputHour}</if> ) as count,
				    (select count(d.seq) from t_kesco_data d where d.plantSeq = p.seq and d.inputDate = #{inputDate} and d.sendStatus='01' <if test="inputHour != null and inputHour != '' "> and d.inputHour = #{inputHour}</if> ) as successCount,
					(select max(d.createDatetime) from t_kesco_data d where d.plantSeq = p.seq and d.inputDate = #{inputDate} <if test="inputHour != null and inputHour != '' "> and d.inputHour = #{inputHour}</if> ) as kescodataDatetime
				from t_plant p left join t_kesco k
				on p.seq = k.plantSeq
				where 1=1
				<if test="plantSeq > 0"> and p.seq = #{plantSeq}</if>
				<if test="plantStatus != null and plantStatus != '-1' "> and p.plantStatus = #{plantStatus}</if>
				<if test="kescoStatus != null and kescoStatus != '-1' "> and k.kescoStatus = #{kescoStatus} </if>
				<if test="name != null and name != '' "> and p.name like concat('%', #{name}, '%')</if>
				order by p.seq desc 
		 ) d
		 <if test="successCount != null and successCount > 0 "> where d.successCount &lt; #{successCount} </if>
	      
	    </select>
	    	    
	    <select id="selectListKescoPlant"  parameterType="com.elt.ems.vo.KescoPlantVo" resultType="com.elt.ems.vo.KescoPlantVo">
	
	      <if test="pgtl != null">
	        <include refid="commonPagingHeader" /> 
	      </if>
	      select * from (
				select 
					p.seq as plantSeq, p.name, p.plantType, p.plantStatus, p.supplyPower, p.beginDate, p.omStartDate, p.omEndDate, 
					k.customerId, k.aesKey, k.kescoStatus, k.protoVer, k.kepcoId, k.rpsId, k.specialStatus, k.updateDatetime, k.createDatetime,
				    (select count(d.seq) from t_kesco_data d where d.plantSeq = p.seq and d.inputDate = #{inputDate} <if test="inputHour != null and inputHour != '' "> and d.inputHour = #{inputHour}</if> ) as count,
				    (select count(d.seq) from t_kesco_data d where d.plantSeq = p.seq and d.inputDate = #{inputDate} and d.sendStatus='01' <if test="inputHour != null and inputHour != '' "> and d.inputHour = #{inputHour}</if> ) as successCount,
					(select max(d.createDatetime) from t_kesco_data d where d.plantSeq = p.seq and d.inputDate = #{inputDate} <if test="inputHour != null and inputHour != '' "> and d.inputHour = #{inputHour}</if> ) as kescodataDatetime
				from t_plant p left join t_kesco k
				on p.seq = k.plantSeq
				where 1=1
				<if test="plantSeq > 0"> and p.seq = #{plantSeq}</if>
				<if test="plantStatus != null and plantStatus != '-1' "> and p.plantStatus = #{plantStatus}</if>
				<if test="kescoStatus != null and kescoStatus != '-1' "> and k.kescoStatus = #{kescoStatus} </if>
				<if test="name != null and name != '' "> and p.name like concat('%', #{name}, '%')</if>
				<if test="orderby == 'beginDate' "> order by p.beginDate desc, p.seq desc</if>
				<if test="orderby != 'beginDate' "> order by p.seq desc	</if> 
				 
		 ) d
		 <if test="successCount != null and successCount > 0 "> where d.successCount &lt; #{successCount} </if>
			
	      <if test="pgtl != null">
	        <include refid="commonPagingFooter" />
	      </if>
	      
	    </select>
	    
	    <select id="selectListKescoTimetable"  parameterType="com.elt.ems.vo.KescoDataVo" resultType="com.elt.ems.vo.KescoDataVo">
	
			select
			*
			from t_kesco_data k
			where inputDate = #{inputDate} and plantSeq = #{plantSeq}
			order by inputHour desc
			
	    </select>	
	    
	    <select id="selectListKescoData"  parameterType="com.elt.ems.vo.KescoDataVo" resultType="com.elt.ems.vo.KescoDataVo">
			select 
			k.*,
			d.seq as pmsdataSeq, d.pcsIdx, d.inputDate, d.inputHour,
		    d.chargePower, d.dischargePower, d.pvPower,
			d.data1, d.data2, d.data3, d.data4, d.data5, d.data6, d.data7, d.data8, d.data9, d.data10,
			d.data11, d.data12, d.data13, d.data14, d.data15, d.data16, d.data17, d.data18, d.data19, d.data20,
			d.data21, d.data22, d.data23, d.data24, d.data25, d.data26, d.data27, d.data28, d.data29, d.data30,
			d.data31, d.data32, d.data33,
			d.data51, d.data52, d.data53, d.data54, d.data55, d.data56, d.data57, d.data58, d.data59, d.data60, 
			d.data61, d.data62, d.data63, d.data64, d.data65, d.data66, d.data67, d.data68, d.data69, d.data70
			from (
				select k.*, p.pcsMaker, p.batteryMaker
	            from t_kesco_data k, t_pms p
				where k.inputDate=#{inputDate} and k.plantSeq = p.plantSeq
			) k left join t_pmsdata_statistic_hour d
			on k.plantSeq = d.plantSeq and k.pmsdataSeq = d.seq and d.pcsIdx=0 and d.inputDate=#{inputDate}
			where k.inputDate = #{inputDate} and k.plantSeq = #{plantSeq}
			order by d.inputDate desc, d.inputHour desc, k.createDatetime desc
			
	    </select>	    
	    
	    
	    <select id="selectListPmsPlantCount"  parameterType="com.elt.ems.vo.PmsPlantVo" resultType="integer">
	
			select count(p.seq) as count 
			from t_plant p left join t_pms m
			on p.seq = m.plantSeq
			where 1=1 
			<if test="seq > 0"> and p.seq = #{seq}</if>
			<if test="plantStatus != null and plantStatus != '-1' "> and p.plantStatus = #{plantStatus}</if>
			<if test="pmsStatus != null and pmsStatus != '-1' "> and m.pmsStatus = #{pmsStatus}</if>
			<if test="pmsModel != null and pmsModel != '' "> and m.pmsModel = #{pmsModel}</if>
			<if test="plantType != null and plantType != '' "> and p.plantType = #{plantType}</if>
			<if test="pcsMaker != null and pcsMaker != '' "> and m.pcsMaker = #{pcsMaker}</if>
			<if test="batteryMaker != null and batteryMaker != '' "> and m.batteryMaker = #{batteryMaker}</if> 	
				<if test="batteryModel != null and batteryModel != '' "> and m.batteryModel = #{batteryModel}</if>	
			<if test="name != null and name != '' "> and p.name like concat('%', #{name}, '%')</if> 
			<if test="clientOrderSeq != null and clientOrderSeq > 0 "> and p.clientOrderSeq = #{clientOrderSeq}</if>   
	    </select>
	    	    
	    <select id="selectListPmsPlant"  parameterType="com.elt.ems.vo.PmsPlantVo" resultType="com.elt.ems.vo.PmsPlantVo"> 
				select p.*, d.createDatetime as pmsdataDatetime, d.count as count, d.timetableSeq
				from (   
					select p.*, 
						m.plantSeq, m.ip, m.port, m.pmsStatus, m.startIdx, m.pmsMaker, m.pmsModel, m.pcsMaker, m.pcsVolume, m.pcsQuantity, m.batteryMaker, m.batteryModel, m.batteryVolume, m.batteryQuantity, 
						(m.pcsVolume * m.pcsQuantity) as supplyPcsPower, (m.batteryVolume * m.batteryQuantity) as supplyBatteryPower,					         
				        ( select name from t_code where groupType='pcs_maker' and code=m.pcsMaker ) as pcsMakerName,
				        ( select name from t_code where groupType='battery_maker' and code=m.batteryMaker ) as batteryMakerName, 
				        m.msgGroupPcs, m.msgGroupBattery
					from t_plant p left join t_pms m 
					on p.seq = m.plantSeq 
					where 1=1 
				<if test="seq > 0"> and p.seq = #{seq}</if>
				<if test="plantStatus != null and plantStatus != '-1' "> and p.plantStatus = #{plantStatus}</if>
				<if test="pmsStatus != null and pmsStatus != '-1' "> and m.pmsStatus = #{pmsStatus}</if>
				<if test="pmsModel != null and pmsModel != '' "> and m.pmsModel = #{pmsModel}</if>
				<if test="plantType != null and plantType != '' "> and p.plantType = #{plantType}</if>
				<if test="pcsMaker != null and pcsMaker != '' "> and m.pcsMaker = #{pcsMaker}</if>
				<if test="batteryMaker != null and batteryMaker != '' "> and m.batteryMaker = #{batteryMaker}</if>	
				<if test="batteryModel != null and batteryModel != '' "> and m.batteryModel = #{batteryModel}</if>
				<if test="name != null and name != '' "> and p.name like concat('%', #{name}, '%')</if> 	
				<if test="clientOrderSeq != null and clientOrderSeq > 0 "> and p.clientOrderSeq = #{clientOrderSeq}</if>				
				) p left join (
					select plantSeq,  d.inputDate, d.pcsIdx, max(d.createDatetime) as createDatetime , count(d.seq) as count, max(timetableSeq) as timetableSeq 
					from t_pmsdata_${realtimeYear} d 
					where d.inputDate = #{inputDate} and d.pcsIdx = 0 group by plantSeq
				) d
				on p.plantSeq = d.plantSeq and d.inputDate = #{inputDate} and d.pcsIdx = 0
				<if test="orderby == 'beginDate' "> order by p.beginDate desc, p.seq desc</if>
				<if test="orderby == 'supplyPower' "> order by p.supplyPower desc, p.seq desc</if>
				<if test="orderby == 'supplyPcsPower' "> order by p.supplyPcsPower desc, p.seq desc</if>
				<if test="orderby == 'pcsQuantity' "> order by p.pcsQuantity desc, p.seq desc</if>
				<if test="orderby == null || orderby == '' || orderby == 'seq' "> order by p.seq desc	</if> 
	    </select>
	    
	    
	    <select id="selectListPmsPlantDetail"  parameterType="com.elt.ems.vo.PmsPlantVo" resultType="com.elt.ems.vo.PmsPlantDetailVo"> 
	    	select p.*, w.* from (
				select p.*, d.createDatetime as pmsdataDatetime, d.count as count, d.timetableSeq
				from (   
					select p.*, 
						m.plantSeq, m.ip, m.port, m.pmsStatus, m.startIdx, m.pmsMaker, m.pmsModel, m.pcsMaker, m.pcsVolume, m.pcsQuantity, m.batteryMaker, m.batteryModel, m.batteryVolume, m.batteryQuantity, 
						(m.pcsVolume * m.pcsQuantity) as supplyPcsPower, (m.batteryVolume * m.batteryQuantity) as supplyBatteryPower,					         
				        ( select name from t_code where groupType='pcs_maker' and code=m.pcsMaker ) as pcsMakerName,
				        ( select name from t_code where groupType='battery_maker' and code=m.batteryMaker ) as batteryMakerName, 
				        m.msgGroupPcs, m.msgGroupBattery
					from t_plant p left join t_pms m 
					on p.seq = m.plantSeq 
					where 1=1 
				<if test="seq > 0"> and p.seq = #{seq}</if>
				<if test="plantStatus != null and plantStatus != '-1' "> and p.plantStatus = #{plantStatus}</if>
				<if test="pmsStatus != null and pmsStatus != '-1' "> and m.pmsStatus = #{pmsStatus}</if>
				<if test="pmsModel != null and pmsModel != '' "> and m.pmsModel = #{pmsModel}</if>
				<if test="plantType != null and plantType != '' "> and p.plantType = #{plantType}</if>
				<if test="pcsMaker != null and pcsMaker != '' "> and m.pcsMaker = #{pcsMaker}</if>
				<if test="batteryMaker != null and batteryMaker != '' "> and m.batteryMaker = #{batteryMaker}</if>	
				<if test="batteryModel != null and batteryModel != '' "> and m.batteryModel = #{batteryModel}</if>
				<if test="name != null and name != '' "> and p.name like concat('%', #{name}, '%')</if> 	
				<if test="clientOrderSeq != null and clientOrderSeq > 0 "> and p.clientOrderSeq = #{clientOrderSeq}</if>				
				) p left join (
					select plantSeq,  d.inputDate, d.pcsIdx, max(d.createDatetime) as createDatetime , count(d.seq) as count, max(timetableSeq) as timetableSeq 
					from t_pmsdata_${realtimeYear} d 
					where d.inputDate = #{inputDate} and d.pcsIdx = 0 group by plantSeq
				) d
				on p.plantSeq = d.plantSeq and d.inputDate = #{inputDate} and d.pcsIdx = 0
			) p left join t_weather_${realtimeYear} w
			on p.weatherCode = w.weatherCode and w.inputYmd= #{inputDate} and w.inputHour = (select max(inputHour) from t_weather_${realtimeYear} where inputYmd=#{inputDate})						
			<if test="orderby == 'beginDate' "> order by p.beginDate desc, p.seq desc</if>
			<if test="orderby == 'supplyPower' "> order by p.supplyPower desc, p.seq desc</if>
			<if test="orderby == 'supplyPcsPower' "> order by p.supplyPcsPower desc, p.seq desc</if>
			<if test="orderby == 'pcsQuantity' "> order by p.pcsQuantity desc, p.seq desc</if>
			<if test="orderby == null || orderby == '' || orderby == 'seq' "> order by p.seq desc	</if> 
	    </select>
	    	    
	    <select id="selectListKescoMonthResult"  parameterType="com.elt.ems.vo.KescoDataVo" resultType="com.elt.ems.vo.KescoDataVo">
	    <!-- 
			select plantSeq, inputDate,  sendStatus, count(seq) as count
			from t_kesco_data t
			where inputDate like concat(#{inputDate}, '-__')
			<if test="plantSeq > 0"> and t.plantSeq = #{plantSeq}</if>
			group by plantSeq, inputDate, sendStatus
		 -->
			
			select 
				k.plantSeq, p.name as plantName, k.inputDate, count(k.seq) as count, sum(k.succCount) as succCount
			from 
			(
				select t1.*,
				CASE
					WHEN sendStatus='01' THEN '1'
					ELSE '0'
				END AS succCount
				from t_kesco_data t1
				where inputDate like concat(#{inputDate}, '-__')
				<if test="plantSeq > 0"> and t1.plantSeq = #{plantSeq}</if> 
			)  k, t_plant p
			where k.plantSeq = p.seq
			group by k.plantSeq, k.inputDate
			order by k.plantSeq, k.inputDate					
			    
	    </select>
	    	    
	    	
	    <select id="selectListInverterPlant"  parameterType="com.elt.ems.vo.InverterPlantVo" resultType="com.elt.ems.vo.InverterPlantVo"> 
 
				select p.*, p.seq as plantSeq
				from t_plant p
				where p.plantType in ('02', '03')
				<if test="seq > 0"> and p.seq = #{seq}</if>
				<if test="plantStatus != null and plantStatus != '-1' "> and p.plantStatus = #{plantStatus}</if>				
				<if test="name != null and name != '' "> and p.name like concat('%', #{name}, '%')</if> 	
				<if test="clientOrderSeq != null and clientOrderSeq > 0 "> and p.clientOrderSeq = #{clientOrderSeq}</if>				
				order by p.seq desc	      
	    </select>
	    	    	    	    
	    	    
<!-- 	    	    
	    <select id="selectDetailList"  parameterType="com.elt.ems.vo.PmsVo" resultType="com.elt.ems.vo.PmsVo">
	
	      <if test="pgtl != null">
	        <include refid="commonPagingHeader" /> 
	      </if>
	
			select 
				p.*,
				(select max(d.createDatetime) from t_pmsdata_2020 d where d.plantSeq = p.seq and d.pcsIdx = 1 and d.inputDate = date_format(now(), '%Y-%m-%d')) as pmsdataDatetime,
				m.plantSeq, m.ip, m.port, m.pmsStatus, m.startIdx, m.pmsMaker, m.pmsModel, m.pcsMaker, m.pcsVolume, m.pcsQuantity, m.batteryMaker, m.batteryModel, m.batteryVolume, m.batteryQuantity,
				(m.pcsVolume * m.pcsQuantity) as pcsPower, (m.batteryVolume * m.batteryQuantity) as batteryPower
			from t_plant p  left join t_pms m
			on p.seq = m.plantSeq
			where 1=1 
			<if test="seq > 0"> and p.seq = #{seq}</if>
			<if test="plantStatus != null and plantStatus != '' "> and p.plantStatus = #{plantStatus}</if>
			<if test="plantType != null and plantType != '' "> and p.plantType = #{plantType}</if>
			<if test="pmsStatus != null and pmsStatus != '' "> and m.pmsStatus = #{pmsStatus}</if>
			<if test="pcsMaker != null and pcsMaker != '' "> and m.pcsMaker = #{pcsMaker}</if>
			<if test="batteryMaker != null and batteryMaker != '' "> and m.batteryMaker = #{batteryMaker}</if>	
			<if test="name != null and name != '' "> and p.name like concat('%', #{name}, '%')</if> 
			order by p.seq desc 
	      <if test="pgtl != null">
	        <include refid="commonPagingFooter" />
	      </if>
	      
	    </select>	
 -->      
	    
	<!-- 	    
		<select id="selectBySeq"  parameterType="int" resultMap="plantResult">
	       select * 
	       from t_plant p
	       where seq = #{seq} 		
	
			select 
				seq, name, plantType, plantStatus, beginDate, manageType, manageCompany,
				omStatus, omStartDay,  omEndDay, omPeriod, safetyManagerSeq, clientSeq, regionCode, address, memo, 
				supplyPower, battaryPower, pcsPower, pcsMadeby, battaryMadeby,
				ip, port, pcsStatus, pcsNum, startIdx, geox, geoy, createDateTime, updateDatetime,
        (select c.name from t_code c where c.groupType='battery_madeby' and c.id=p.battaryMadeby) as battaryMadebyName,
        (select c.name from t_code c where c.groupType='pcs_madeby' and c.id=p.pcsMadeby) as pcsMadebyName				
			from t_plant p where seq = #{seq}
 		
		</select>
	    
		<select id="selectDetailBySeq"  parameterType="int" resultType="com.elt.ems.vo.PlantDetailVo">
			select 
				p.*,
				m.ip, m.port 
				m.ip, m.port, m.status, m.startIdx, m.pmsMaker, m.pmsModel, m.pcsMaker, m.pcsVolume, m.pcsQuantity, m.batteryMaker, m.batteryModel, m.batteryVolume, m.batteryQuantity  
			from t_plant p left join t_pms m
			on p.seq = m.plantSeq
			where seq = #{seq} 				
		</select>		    
	-->	
	
		<update id="update"  parameterType="com.elt.ems.vo.PlantVo">
			update t_plant set 
				name = #{name},
				plantType = #{plantType},
				plantStatus = #{plantStatus},
				beginDate = #{beginDate},
				omStartDate = #{omStartDate},
				omEndDate = #{omEndDate},
				supplyPower = #{supplyPower},
				address = #{address},
				weatherCode = #{weatherCode},
		        geox = #{geox},
		        geoy = #{geoy},
		        weatherx = #{weatherx},
		        weathery = #{weathery},
				memo = #{memo},
				clientOrderSeq = #{clientOrderSeq},
				ownerName = #{ownerName},
				ownerTel = #{ownerTel},
				safetyName = #{safetyName},
				safetyTel = #{safetyTel},
				prate = #{prate},
				drate = #{drate},
				updateId = #{updateId},
				updateDatetime = now()
			where seq = #{seq}
		</update>	
		
		
		<insert id="insert"  parameterType="com.elt.ems.vo.PlantVo">
			insert into t_plant (
				name, plantType, plantStatus, beginDate, omStartDate,  omEndDate, supplyPower, address, weatherCode, geox, geoy, weatherx, weathery, memo, 
				clientOrderSeq, ownerName, ownerTel, safetyName, safetyTel, createDateTime, updateDatetime
			) values (
				#{name},
				#{plantType},
				#{plantStatus},
				#{beginDate},
				#{omStartDate},
				#{omEndDate},
				#{supplyPower},
				#{address},
		        #{weatherCode},
		        #{geox},
				#{geoy},
				#{weatherx},
				#{weathery},
				#{memo},
				#{clientOrderSeq},
				#{ownerName},
				#{ownerTel},
				#{safetyName},
				#{safetyTel},
				now(),
				now()
			)
		</insert>	
			
			
		<select id="selectDeviceEtcList"  parameterType="int" resultType="com.elt.ems.vo.DeviceVo">
		
			select d.*, (select name from t_code where groupType ='device_etc' and code = d.typeCode) as typeName, c.name as modelName
			from t_device d, t_code c
			where d.plantSeq = #{plantSeq} and c.groupType = concat("device_", d.typeCode) and modelCode = c.code
		</select>
				
	</mapper>