| <?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.matrix.system.hive.dao.ArticleDao"> | 
|      | 
|     <resultMap type="Article" id="ArticleMap"> | 
|             <id property="id" column="id" /> | 
|             <result property="typeId" column="type_id" /> | 
|             <result property="articleAuthor" column="article_author" /> | 
|             <result property="title" column="title" /> | 
|             <result property="isPublish" column="is_publish" /> | 
|             <result property="articleAbstract" column="article_abstract" /> | 
|             <result property="content" column="content" /> | 
|             <result property="image" column="image" /> | 
|             <result property="sort" column="sort" /> | 
|             <result property="createtiem" column="createtiem" /> | 
|             <result property="url" column="url" /> | 
|         <result property="shopId" column="shop_id"/> | 
|              | 
|              | 
|             <result property="articleTypeName" column="article_type_name" /> | 
|             <result property="type" column="type" /> | 
|             <result property="likeNumber" column="like_number" /> | 
|             <result property="classify" column="classify" /> | 
|             <result property="commentNum" column="commentNum" /> | 
|              | 
|     </resultMap> | 
|     <!--  插入方法   --> | 
|     <insert id="insert" parameterType="Article" | 
|         useGeneratedKeys="true" keyProperty="id"> | 
|         INSERT INTO article ( | 
|             id, | 
|             type_id, | 
|             article_author, | 
|             title, | 
|             is_publish, | 
|             article_abstract, | 
|             content, | 
|             image, | 
|             sort, | 
|             createtiem, | 
|             url, | 
|             like_number, | 
|             classify, | 
|             shop_id | 
|         ) | 
|     VALUES ( | 
|             #{id}, | 
|             #{typeId}, | 
|             #{articleAuthor}, | 
|             #{title}, | 
|             #{isPublish}, | 
|             #{articleAbstract}, | 
|             #{content}, | 
|             #{image}, | 
|             #{sort}, | 
|             #{createtiem}, | 
|             #{url}, | 
|             #{likeNumber}, | 
|             #{classify}, | 
|             #{shopId} | 
|     ) | 
|     </insert> | 
|      | 
|      | 
|     <!--  根据id更新 部分更新   --> | 
|     <update id="update" > | 
|         UPDATE article | 
|         <set> | 
|                 <if test="typeId != null and typeId !='' "> | 
|                     type_id = #{typeId}, | 
|                 </if>         | 
|                 <if test="articleAuthor != null and articleAuthor !='' "> | 
|                     article_author = #{articleAuthor}, | 
|                 </if>         | 
|                 <if test="title != null and title !='' "> | 
|                     title = #{title}, | 
|                 </if>         | 
|                 <if test="isPublish != null and isPublish !='' "> | 
|                     is_publish = #{isPublish}, | 
|                 </if>         | 
|                 <if test="articleAbstract != null and articleAbstract !='' "> | 
|                     article_abstract = #{articleAbstract}, | 
|                 </if>         | 
|                 <if test="content != null and content !='' "> | 
|                     content = #{content}, | 
|                 </if>         | 
|                 <if test="image != null and image !='' "> | 
|                     image = #{image}, | 
|                 </if>         | 
|                 <if test="sort != null and sort !='' "> | 
|                     sort = #{sort}, | 
|                 </if>         | 
|                 <if test="createtiem != null   "> | 
|                     createtiem = #{createtiem}, | 
|                 </if>         | 
|                 <if test="url != null and url !='' "> | 
|                     url = #{url}, | 
|                 </if>         | 
|                 <if test="likeNumber != null and likeNumber !='' "> | 
|                     like_number = #{likeNumber}, | 
|                 </if> | 
|                 <if test="classify != null and classify !='' "> | 
|                     classify = #{classify}, | 
|                 </if> | 
|         </set> | 
|         WHERE id=#{id}  | 
|     </update> | 
|      | 
|      | 
|      | 
|     <!-- 批量删除 --> | 
|     <delete id="deleteByIds" parameterType="java.util.List"> | 
|         delete from article where  id in | 
|         <foreach collection="list" index="index" item="item" open="(" | 
|             separator="," close=")"> | 
|             #{item} | 
|         </foreach> | 
|     </delete> | 
|          | 
|     <!-- 根据id删除--> | 
|     <delete id="deleteById" > | 
|         DELETE FROM article | 
|         where  id=#{id}  | 
|     </delete> | 
|      | 
|      | 
|      | 
|     <!-- 分页查询 --> | 
|     <select id="selectInPage" resultMap="ArticleMap"> | 
|         select  | 
|             id, | 
|             type_id, | 
|             article_author, | 
|             title, | 
|             is_publish, | 
|             article_abstract, | 
|             content, | 
|             image, | 
|             sort, | 
|             createtiem, | 
|             url, | 
|             classify, | 
|             like_number, | 
|             shop_id, | 
|             (select article_type_name from article_type c where type_id = c.id) articleTypeName, | 
|             (select type from article_type c where type_id = c.id) type | 
|         from article | 
|         where 1=1 | 
|         <if test="record!=null"> | 
|             <if test="record.id != null and record.id !='' "> | 
|                 and id = #{record.id} | 
|             </if> | 
|             <if test="record.typeId != null and record.typeId !='' "> | 
|                 and type_id = #{record.typeId} | 
|             </if> | 
|             <if test="record.articleAuthor != null and record.articleAuthor !='' "> | 
|                 and article_author = #{record.articleAuthor} | 
|             </if> | 
|             <if test="record.title != null and record.title !='' "> | 
|                 and title like CONCAT('%',#{record.title},'%') | 
|             </if> | 
|             <if test="record.isPublish != null and record.isPublish !='' "> | 
|                 and is_publish = #{record.isPublish} | 
|             </if> | 
|             <if test="record.articleAbstract != null and record.articleAbstract !='' "> | 
|                 and article_abstract like CONCAT('%',#{ecord.articleAbstract},'%') | 
|             </if> | 
|             <if test="record.content != null and record.content !='' "> | 
|                 and content like CONCAT('%',#{record.content},'%') | 
|             </if> | 
|             <if test="record.image != null and record.image !='' "> | 
|                 and image = #{record.image} | 
|             </if> | 
|             <if test="record.sort != null and record.sort !='' "> | 
|                 and sort = #{record.sort} | 
|             </if> | 
|             <if test="record.createtiem != null   "> | 
|                 and createtiem = #{record.createtiem} | 
|             </if> | 
|             <if test="record.url != null and record.url !='' "> | 
|                 and url = #{record.url} | 
|             </if> | 
|             <if test="record.classify != null and record.classify !='' "> | 
|                 and classify = #{record.classify} | 
|             </if> | 
|             <if test="record.likeNumber != null and record.likeNumber !='' "> | 
|                 and like_number = #{record.likeNumber} | 
|             </if> | 
|             <if test="record.shopId != null and record.shopId !='' "> | 
|                 and shop_id = #{record.shopId} | 
|             </if> | 
|             <if test="record.type != null and record.type !='' "> | 
|                 and (select type from article_type c where type_id = c.id) = #{record.type} | 
|             </if> | 
|             <if test="record.articleTypeName != null and record.url !='' "> | 
|                 and (select article_type_name from article_type c where type_id = c.id) = #{record.articleTypeName} | 
|             </if> | 
|         </if> | 
|         order by type_id,sort | 
|         <if test="pageVo !=null"><!-- 判断pageVo对象是否为空 --> | 
|             <if test="pageVo.sort !=null  and pageVo.order !=null"> | 
|                 order by | 
|                 ${pageVo.sort} ${pageVo.order} | 
|             </if> | 
|             <if test="pageVo.offset >=0  and pageVo.limit >0"> | 
|                 limit | 
|                 #{pageVo.offset},#{pageVo.limit} | 
|             </if> | 
|         </if> | 
|     </select> | 
|      | 
|      | 
|     <!-- 分页查询 --> | 
|     <select id="selectInPag" resultMap="ArticleMap"> | 
|         select  | 
|             id, | 
|             type_id, | 
|             article_author, | 
|             title, | 
|             is_publish, | 
|             article_abstract, | 
|             content, | 
|             image, | 
|             sort, | 
|             createtiem, | 
|             url, | 
|             classify, | 
|             like_number, | 
|             shop_id, | 
|             (select article_type_name from article_type c where type_id = c.id) articleTypeName, | 
|             (select type from article_type c where type_id = c.id) type | 
|         from article | 
|         where 1=1 | 
|         <if test="record!=null"> | 
|             <if test="record.id != null and record.id !='' "> | 
|                 and id = #{record.id} | 
|             </if> | 
|             <if test="record.typeId != null and record.typeId !='' "> | 
|                 and type_id = #{record.typeId} | 
|             </if> | 
|             <if test="record.articleAuthor != null and record.articleAuthor !='' "> | 
|                 and article_author = #{record.articleAuthor} | 
|             </if> | 
|             <if test="record.title != null and record.title !='' "> | 
|                 and title like CONCAT('%',#{record.title},'%') | 
|             </if> | 
|             <if test="record.isPublish != null and record.isPublish !='' "> | 
|                 and is_publish = #{record.isPublish} | 
|             </if> | 
|             <if test="record.articleAbstract != null and record.articleAbstract !='' "> | 
|                 and article_abstract like CONCAT('%',#{ecord.articleAbstract},'%') | 
|             </if> | 
|             <if test="record.content != null and record.content !='' "> | 
|                 and content like CONCAT('%',#{record.content},'%') | 
|             </if> | 
|             <if test="record.image != null and record.image !='' "> | 
|                 and image = #{record.image} | 
|             </if> | 
|             <if test="record.sort != null and record.sort !='' "> | 
|                 and sort = #{record.sort} | 
|             </if> | 
|             <if test="record.createtiem != null  "> | 
|                 and createtiem = #{record.createtiem} | 
|             </if> | 
|             <if test="record.url != null and record.url !='' "> | 
|                 and url = #{record.url} | 
|             </if> | 
|             <if test="record.classify != null and record.classify !='' "> | 
|                 and classify = #{record.classify} | 
|             </if> | 
|             <if test="record.likeNumber != null and record.likeNumber !='' "> | 
|                 and like_number = #{record.likeNumber} | 
|             </if> | 
|             <if test="record.type != null and record.type !='' "> | 
|                 and (select type from article_type c where type_id = c.id) = #{record.type} | 
|             </if> | 
|             <if test="record.articleTypeName != null and record.url !='' "> | 
|                 and (select article_type_name from article_type c where type_id = c.id) = #{record.articleTypeName} | 
|             </if> | 
|             <if test="record.shopId != null and record.shopId !='' "> | 
|                 and shop_id = #{record.shopId} | 
|             </if> | 
|         </if> | 
|         order by type_id,sort,createtiem desc | 
|         limit #{staPage},#{endPage} | 
|     </select> | 
|      | 
|     <!-- 查询总条数 --> | 
|     <select id="selectTotalRecord"    resultType="java.lang.Integer"> | 
|     select count(*) | 
|     from article | 
|         where 1=1 | 
|         <if test="record!=null"> | 
|             <if test="record.id != null and record.id !='' "> | 
|                 and id = #{record.id} | 
|             </if> | 
|             <if test="record.typeId != null and record.typeId !='' "> | 
|                 and type_id = #{record.typeId} | 
|             </if> | 
|             <if test="record.articleAuthor != null and record.articleAuthor !='' "> | 
|                 and article_author = #{record.articleAuthor} | 
|             </if> | 
|             <if test="record.title != null and record.title !='' "> | 
|                 and title like CONCAT('%',#{record.title},'%') | 
|             </if> | 
|             <if test="record.isPublish != null and record.isPublish !='' "> | 
|                 and is_publish = #{record.isPublish} | 
|             </if> | 
|             <if test="record.articleAbstract != null and record.articleAbstract !='' "> | 
|                 and article_abstract like CONCAT('%',#{ecord.articleAbstract},'%') | 
|             </if> | 
|             <if test="record.content != null and record.content !='' "> | 
|                 and content like CONCAT('%',#{record.content},'%') | 
|             </if> | 
|             <if test="record.image != null and record.image !='' "> | 
|                 and image = #{record.image} | 
|             </if> | 
|             <if test="record.sort != null and record.sort !='' "> | 
|                 and sort = #{record.sort} | 
|             </if> | 
|             <if test="record.createtiem != null  "> | 
|                 and createtiem = #{record.createtiem} | 
|             </if> | 
|             <if test="record.url != null and record.url !='' "> | 
|                 and url = #{record.url} | 
|             </if> | 
|             <if test="record.classify != null and record.classify !='' "> | 
|                 and classify = #{record.classify} | 
|             </if> | 
|             <if test="record.likeNumber != null and record.likeNumber !='' "> | 
|                 and like_number = #{record.likeNumber} | 
|             </if> | 
|             <if test="record.type != null and record.type !='' "> | 
|                 and (select type from article_type c where type_id = c.id) = #{record.type} | 
|             </if> | 
|             <if test="record.articleTypeName != null and record.url !='' "> | 
|                 and (select article_type_name from article_type c where type_id = c.id) = #{record.articleTypeName} | 
|             </if> | 
|             <if test="record.shopId != null and record.shopId !='' "> | 
|                 and shop_id = #{record.shopId} | 
|             </if> | 
|         </if> | 
|     </select> | 
|   | 
|     <!-- 根据id查询--> | 
|     <select id="selectById" resultMap="ArticleMap"> | 
|         select  | 
|             id, | 
|             type_id, | 
|             article_author, | 
|             title, | 
|             is_publish, | 
|             article_abstract, | 
|             content, | 
|             image, | 
|             sort, | 
|             createtiem, | 
|             url, | 
|             like_number, | 
|             classify, | 
|             shop_id, | 
|            (select article_type_name from article_type c where type_id = c.id) articleTypeName<!-- 所属门店名称 --> | 
|         from article | 
|         where  id=#{id}  | 
|     </select>     | 
|      | 
|      | 
|     <!-- 根据对象查询--> | 
|     <select id="selectByModel" resultMap="ArticleMap"> | 
|         select  | 
|             a.id, | 
|             a.type_id, | 
|             a.article_author, | 
|             a.title, | 
|             a.is_publish, | 
|             a.article_abstract, | 
|             a.content, | 
|             a.image, | 
|             a.sort, | 
|             a.createtiem, | 
|             a.url, | 
|             a.classify, | 
|             a.like_number, | 
|             a.shop_id, | 
|            (select article_type_name from article_type c where a.type_id = c.id) articleTypeName,<!-- 所属门店名称 --> | 
|            (select count(*) from article_comment ac where ac.article_id=a.id) commentNum | 
|         from article a | 
|         where 1=1 | 
|         <if test="record!=null"> | 
|             <if test="record.id != null and record.id !='' "> | 
|                 and a.id = #{record.id} | 
|             </if> | 
|             <if test="record.typeId != null and record.typeId !='' "> | 
|                 and a.type_id = #{record.typeId} | 
|             </if> | 
|             <if test="record.articleAuthor != null and record.articleAuthor !='' "> | 
|                 and a.article_author = #{record.articleAuthor} | 
|             </if> | 
|             <if test="record.title != null and record.title !='' "> | 
|                 and a.title like CONCAT('%',#{record.title},'%') | 
|             </if> | 
|             <if test="record.isPublish != null and record.isPublish !='' "> | 
|                 and a.is_publish = #{record.isPublish} | 
|             </if> | 
|             <if test="record.articleAbstract != null and record.articleAbstract !='' "> | 
|                 and a.article_abstract like CONCAT('%',#{ecord.articleAbstract},'%') | 
|             </if> | 
|             <if test="record.content != null and record.content !='' "> | 
|                 and a.content like CONCAT('%',#{record.content},'%') | 
|             </if> | 
|             <if test="record.image != null and record.image !='' "> | 
|                 and a.image = #{record.image} | 
|             </if> | 
|             <if test="record.sort != null and record.sort !='' "> | 
|                 and a.sort = #{record.sort} | 
|             </if> | 
|             <if test="record.createtiem != null  "> | 
|                 and a.createtiem = #{record.createtiem} | 
|             </if> | 
|             <if test="record.url != null and record.url !='' "> | 
|                 and a.url = #{record.url} | 
|             </if> | 
|             <if test="record.classify != null and record.classify !='' "> | 
|                 and a.classify = #{record.classify} | 
|             </if> | 
|             <if test="record.likeNumber != null and record.likeNumber !='' "> | 
|                 and a.like_number = #{record.likeNumber} | 
|             </if> | 
|             <if test="record.articleTypeName != null and record.url !='' "> | 
|                 and (select article_type_name from article_type c where a.type_id = c.id) = #{record.articleTypeName} | 
|             </if> | 
|             <if test="record.shopId != null and record.shopId !='' "> | 
|                 and a.shop_id = #{record.shopId} | 
|             </if> | 
|         </if> | 
|         order by type_id,sort,createtiem desc | 
|     </select> | 
|   | 
|     <select id="selectApiArticleListInPage" resultMap="ArticleMap"> | 
|         select * from article a | 
|         inner join article_type b on a.type_id=b.id and find_in_set(#{record.typeId}, b.parent_ids) | 
|         order by a.createtiem desc | 
|         <if test="pageVo !=null"><!-- 判断pageVo对象是否为空 --> | 
|             <if test="pageVo.offset >=0  and pageVo.limit >0"> | 
|                 limit | 
|                 #{pageVo.offset},#{pageVo.limit} | 
|             </if> | 
|         </if> | 
|     </select> | 
|   | 
| </mapper> |