<?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"> 
<mapper namespace="com.spd.sw.dao.AutoPublishDao"> 
	
    <!-- 这里的id必须和IStatisticsMapper接口中的接口方法名相同，不然运行的时候也要报错 --> 

    
     <select id="findAll" resultType="java.util.HashMap"  parameterType="map"> 
	    <![CDATA[
	    	
	    	select recordId, name, alias, interfaceType, path, moduleName,interfaceOrder,isUse from t_interfaceInfo 
	    	left join 
		]]>
    </select>

     <select id="getBySQL" resultType="java.util.LinkedHashMap"  parameterType="map"> 
     	 <![CDATA[
	    	${sql}
	    ]]>	
    </select>
    
    <select id="getByPublishType" resultType="java.util.LinkedHashMap"  parameterType="java.lang.String">
    	 SELECT [USERNAME], upp.[Publish_Param],pl.[Productname],p.[Publish_Type]
		 FROM [User].[dbo].[t_users] u
		 inner join [User].[dbo].[t_user_product] up on u.[USERID]=up.[User_ID]
		 inner join [Product].[dbo].[t_product_list] pl on  pl.[id] = up.[Product_ID]
		 inner join [User].[dbo].[t_user_product_publish] upp on up.[UUID] = upp.[User_Product_ID]
		 inner join [User].[dbo].[t_publish] p on upp.[Publish_id]= p.[UUID]
		 where upp.[Publish_Param] is not null and p.[Publish_Type] = #{type}
    </select> 
   
    
    <select id="getByName" resultType="java.util.HashMap"  parameterType="java.lang.String">
    	select * from t_interfaceInfo where name = #{name}
    </select> 
    
   <insert id="save" parameterType="map" useGeneratedKeys="true" keyProperty="id">
    	insert into [Publish].[dbo].[send_mt]([uuid],[product_name],[issue_time],[issue_type],[subject],[body],[issue_from],[issue_to],[is_immediate],[issue_timing])
		values(#{id},#{product_name},#{issue_time},#{issue_type},#{subject},#{body},#{issue_from},#{issue_to},#{is_immediate},#{issue_timing})
   </insert>
   
   <insert id="saveAtt" parameterType="map" useGeneratedKeys="true" keyProperty="id">
    	insert [Publish].[dbo].[send_attachment]([uuid],[send_mt_uuid])
		values(#{id},#{send_mt_uuid})
   </insert>
   
    <insert id="saveFile" parameterType="map" useGeneratedKeys="true" keyProperty="id">
    	insert [Publish].[dbo].[Send_File]([Send_Attachment_UUID],[FIleContent],[FileType],[FileName])
		values(#{Send_Attachment_UUID},#{FIleContent},#{FileType},#{FileName})
   </insert>
   
   	<delete id="delete" parameterType="java.lang.String">
		delete from t_interfaceInfo where recordId=#{id}
	</delete>
	
	<update id="update">
		update t_interfaceInfo 
		set name=#{name}, alias=#{alias}, interfaceType=#{interfaceType}, path=#{path},
		 moduleName=#{moduleName}, interfaceOrder=#{interfaceOrder}, isUse=#{isUse}
		where recordId=#{id} 
	</update>
 <!-- 		, =#{}, =#{}, =#{}, =#{}, =#{}  -->
</mapper> 