<?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.fuxi.ws.data.dao.WSendmapMapper">
  <resultMap id="BaseResultMap" type="com.fuxi.ws.data.entity.WSendmap">
    <!--
      WARNING - @mbggenerated
      This element is automatically generated by MyBatis Generator, do not modify.
      This element was generated on Fri Dec 25 16:02:58 CST 2015.
    -->
    <id column="SendMapID" jdbcType="INTEGER" property="sendmapid" />
    <result column="MapID" jdbcType="SMALLINT" property="mapid" />
    <result column="SendLabels" jdbcType="NVARCHAR" property="sendlabels" />
    <result column="SendNum" jdbcType="INTEGER" property="sendnum" />
    <result column="Sender" jdbcType="VARCHAR" property="sender" />
    <result column="Sended" jdbcType="TIMESTAMP" property="sended" />
  </resultMap>
  <sql id="Example_Where_Clause">
    <!--
      WARNING - @mbggenerated
      This element is automatically generated by MyBatis Generator, do not modify.
      This element was generated on Fri Dec 25 16:02:58 CST 2015.
    -->
    <where>
      <foreach collection="oredCriteria" item="criteria" separator="or">
        <if test="criteria.valid">
          <trim prefix="(" prefixOverrides="and" suffix=")">
            <foreach collection="criteria.criteria" item="criterion">
              <choose>
                <when test="criterion.noValue">
                  and ${criterion.condition}
                </when>
                <when test="criterion.singleValue">
                  and ${criterion.condition} #{criterion.value}
                </when>
                <when test="criterion.betweenValue">
                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
                </when>
                <when test="criterion.listValue">
                  and ${criterion.condition}
                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
                    #{listItem}
                  </foreach>
                </when>
              </choose>
            </foreach>
          </trim>
        </if>
      </foreach>
    </where>
  </sql>
  <sql id="Base_Column_List">
    <!--
      WARNING - @mbggenerated
      This element is automatically generated by MyBatis Generator, do not modify.
      This element was generated on Fri Dec 25 16:02:58 CST 2015.
    -->
    SendMapID, MapID, SendLabels, SendNum, Sender, Sended
  </sql>
  <select id="selectByExample" parameterType="com.fuxi.ws.data.entity.WSendmapExample" resultMap="BaseResultMap">
    <!--
      WARNING - @mbggenerated
      This element is automatically generated by MyBatis Generator, do not modify.
      This element was generated on Fri Dec 25 16:02:58 CST 2015.
    -->
    select
    <if test="distinct">
      distinct
    </if>
    'false' as QUERYID,
    <include refid="Base_Column_List" />
    from W_SendMap
    <if test="_parameter != null">
      <include refid="Example_Where_Clause" />
    </if>
    <if test="orderByClause != null">
      order by ${orderByClause}
    </if>
  </select>
  <select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultMap="BaseResultMap">
    <!--
      WARNING - @mbggenerated
      This element is automatically generated by MyBatis Generator, do not modify.
      This element was generated on Fri Dec 25 16:02:58 CST 2015.
    -->
    select 
    <include refid="Base_Column_List" />
    from W_SendMap
    where SendMapID = #{sendmapid,jdbcType=INTEGER}
  </select>
  <delete id="deleteByPrimaryKey" parameterType="java.lang.Integer">
    <!--
      WARNING - @mbggenerated
      This element is automatically generated by MyBatis Generator, do not modify.
      This element was generated on Fri Dec 25 16:02:58 CST 2015.
    -->
    delete from W_SendMap
    where SendMapID = #{sendmapid,jdbcType=INTEGER}
  </delete>
  <insert id="insert" parameterType="com.fuxi.ws.data.entity.WSendmap">
    <!--
      WARNING - @mbggenerated
      This element is automatically generated by MyBatis Generator, do not modify.
      This element was generated on Fri Dec 25 16:02:58 CST 2015.
    -->
    insert into W_SendMap (SendMapID, MapID, SendLabels, 
      SendNum, Sender, Sended
      )
    values (#{sendmapid,jdbcType=INTEGER}, #{mapid,jdbcType=SMALLINT}, #{sendlabels,jdbcType=NVARCHAR}, 
      #{sendnum,jdbcType=INTEGER}, #{sender,jdbcType=VARCHAR}, #{sended,jdbcType=TIMESTAMP}
      )
  </insert>
  <insert id="insertSelective" parameterType="com.fuxi.ws.data.entity.WSendmap">
    <!--
      WARNING - @mbggenerated
      This element is automatically generated by MyBatis Generator, do not modify.
      This element was generated on Fri Dec 25 16:02:58 CST 2015.
    -->
    insert into W_SendMap
    <trim prefix="(" suffix=")" suffixOverrides=",">
      <if test="sendmapid != null">
        SendMapID,
      </if>
      <if test="mapid != null">
        MapID,
      </if>
      <if test="sendlabels != null">
        SendLabels,
      </if>
      <if test="sendnum != null">
        SendNum,
      </if>
      <if test="sender != null">
        Sender,
      </if>
      <if test="sended != null">
        Sended,
      </if>
    </trim>
    <trim prefix="values (" suffix=")" suffixOverrides=",">
      <if test="sendmapid != null">
        #{sendmapid,jdbcType=INTEGER},
      </if>
      <if test="mapid != null">
        #{mapid,jdbcType=SMALLINT},
      </if>
      <if test="sendlabels != null">
        #{sendlabels,jdbcType=NVARCHAR},
      </if>
      <if test="sendnum != null">
        #{sendnum,jdbcType=INTEGER},
      </if>
      <if test="sender != null">
        #{sender,jdbcType=VARCHAR},
      </if>
      <if test="sended != null">
        #{sended,jdbcType=TIMESTAMP},
      </if>
    </trim>
  </insert>
  <select id="countByExample" parameterType="com.fuxi.ws.data.entity.WSendmapExample" resultType="java.lang.Integer">
    <!--
      WARNING - @mbggenerated
      This element is automatically generated by MyBatis Generator, do not modify.
      This element was generated on Fri Dec 25 16:02:58 CST 2015.
    -->
    select count(*) from W_SendMap
    <if test="_parameter != null">
      <include refid="Example_Where_Clause" />
    </if>
  </select>
  <update id="updateByPrimaryKeySelective" parameterType="com.fuxi.ws.data.entity.WSendmap">
    <!--
      WARNING - @mbggenerated
      This element is automatically generated by MyBatis Generator, do not modify.
      This element was generated on Fri Dec 25 16:02:58 CST 2015.
    -->
    update W_SendMap
    <set>
      <if test="mapid != null">
        MapID = #{mapid,jdbcType=SMALLINT},
      </if>
      <if test="sendlabels != null">
        SendLabels = #{sendlabels,jdbcType=NVARCHAR},
      </if>
      <if test="sendnum != null">
        SendNum = #{sendnum,jdbcType=INTEGER},
      </if>
      <if test="sender != null">
        Sender = #{sender,jdbcType=VARCHAR},
      </if>
      <if test="sended != null">
        Sended = #{sended,jdbcType=TIMESTAMP},
      </if>
    </set>
    where SendMapID = #{sendmapid,jdbcType=INTEGER}
  </update>
  <update id="updateByPrimaryKey" parameterType="com.fuxi.ws.data.entity.WSendmap">
    <!--
      WARNING - @mbggenerated
      This element is automatically generated by MyBatis Generator, do not modify.
      This element was generated on Fri Dec 25 16:02:58 CST 2015.
    -->
    update W_SendMap
    set MapID = #{mapid,jdbcType=SMALLINT},
      SendLabels = #{sendlabels,jdbcType=NVARCHAR},
      SendNum = #{sendnum,jdbcType=INTEGER},
      Sender = #{sender,jdbcType=VARCHAR},
      Sended = #{sended,jdbcType=TIMESTAMP}
    where SendMapID = #{sendmapid,jdbcType=INTEGER}
  </update>
  
  <!-- 后台已发送的图文消息 -->
  <select id="wSenMapList" resultType="java.util.LinkedHashMap">
		SELECT a.MapID,a.Face, a.Title, a.dec, c.SendNum,
			CONVERT(varchar(10),c.Sended, 121) as Date,CONVERT(varchar(10), c.Sended, 108) AS Time
		FROM  W_Map a inner join
		W_SendMap c on c.MapID=a.MapID left join
		Department b on b.departmentid=a.departmentid
		<if test="conditions != null and conditions != ''">
			where
			${conditions}
		</if>		
		order by c.Sended desc
	</select>
	
	<!-- 会员中心——获取我的信息 -->
	<select id="selectMessageList" parameterType="java.lang.String" resultType="java.util.LinkedHashMap">
		SELECT a.SendMapID,a.VIPID,c.Title,c.Face,CONVERT(varchar(10),b.Sended, 121) Sended,a.Readed,c.MapUrl,b.MapID
		FROM  W_SendMapDtl AS a INNER JOIN
        W_SendMap AS b ON b.SendMapID = a.SendMapID INNER JOIN
        W_Map AS c ON b.MapID = c.MapID
		where a.VIPID = #{vipid,jdbcType=VARCHAR}
		order by b.Sended desc
	</select>
	
	<!-- 会员中心——获取我的未读信息个数 -->
	<select id="getMessageNoRead" parameterType="java.lang.String" resultType="java.lang.Integer">
		SELECT count(*) rows
		FROM  W_SendMapDtl AS a 
		where a.VIPID = #{vipid,jdbcType=VARCHAR}
		and a.Readed = 0
	</select>
	
	<!-- 后台图文信息——预览 -->
	<select id="viewMessageList" parameterType="java.lang.Short" resultType="java.util.LinkedHashMap">
		SELECT a.Title,a.Face,CONVERT(varchar(10),getdate(), 121) Sended,0 as Readed,a.MapUrl
		FROM  W_Map AS a 
		where a.MapID = #{mapid,jdbcType=SMALLINT}		
	</select>
</mapper>