package com.bootdo.blog.dao;

import com.bootdo.blog.domain.BContentDO;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Options;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;
/**
 * 文章内容
 * 
 * @author chglee
 * @email 1992lcg@163.com
 * @date 2017-09-11 13:48:19
 */
@Mapper
public interface BContentMapper {

	@Select("select `cid`, `title`, `slug`, `created`, `modified`, `content`, `type`, `tags`, `categories`, `hits`, `comments_num`, `allow_comment`, `allow_ping`, `allow_feed`, `status`, `author` from b_content where cid = #{id}")
	BContentDO get(Long cid);
	
	@Select("<script>" +
	"select * from b_content " + 
			"<where>" + 
		  		  "<if test=\"cid != null and cid != ''\">"+ "and cid = #{cid} " + "</if>" + 
		  		  "<if test=\"title != null and title != ''\">"+ "and title = #{title} " + "</if>" + 
		  		  "<if test=\"slug != null and slug != ''\">"+ "and slug = #{slug} " + "</if>" + 
		  		  "<if test=\"created != null and created != ''\">"+ "and created = #{created} " + "</if>" + 
		  		  "<if test=\"modified != null and modified != ''\">"+ "and modified = #{modified} " + "</if>" + 
		  		  "<if test=\"content != null and content != ''\">"+ "and content = #{content} " + "</if>" + 
		  		  "<if test=\"type != null and type != ''\">"+ "and type = #{type} " + "</if>" + 
		  		  "<if test=\"tags != null and tags != ''\">"+ "and tags = #{tags} " + "</if>" + 
		  		  "<if test=\"categories != null and categories != ''\">"+ "and categories = #{categories} " + "</if>" + 
		  		  "<if test=\"hits != null and hits != ''\">"+ "and hits = #{hits} " + "</if>" + 
		  		  "<if test=\"commentsNum != null and commentsNum != ''\">"+ "and comments_num = #{commentsNum} " + "</if>" + 
		  		  "<if test=\"allowComment != null and allowComment != ''\">"+ "and allow_comment = #{allowComment} " + "</if>" + 
		  		  "<if test=\"allowPing != null and allowPing != ''\">"+ "and allow_ping = #{allowPing} " + "</if>" + 
		  		  "<if test=\"allowFeed != null and allowFeed != ''\">"+ "and allow_feed = #{allowFeed} " + "</if>" + 
		  		  "<if test=\"status != null and status != ''\">"+ "and status = #{status} " + "</if>" + 
		  		  "<if test=\"author != null and author != ''\">"+ "and author = #{author} " + "</if>" + 
		  			"</where>"+ 
			" <choose>" + 
	            "<when test=\"sort != null and sort.trim() != ''\">" + 
	                "order by ${sort} ${order}" + 
	            "</when>" + 
				"<otherwise>" + 
	                "order by cid desc" + 
				"</otherwise>" + 
	        "</choose>"+
			"<if test=\"offset != null and limit != null\">"+
			"limit #{offset}, #{limit}" + 
			"</if>"+
			"</script>")
	List<BContentDO> list(Map<String,Object> map);
	
	@Select("<script>" +
	"select count(*) from b_content " + 
			"<where>" + 
		  		  "<if test=\"cid != null and cid != ''\">"+ "and cid = #{cid} " + "</if>" + 
		  		  "<if test=\"title != null and title != ''\">"+ "and title = #{title} " + "</if>" + 
		  		  "<if test=\"slug != null and slug != ''\">"+ "and slug = #{slug} " + "</if>" + 
		  		  "<if test=\"created != null and created != ''\">"+ "and created = #{created} " + "</if>" + 
		  		  "<if test=\"modified != null and modified != ''\">"+ "and modified = #{modified} " + "</if>" + 
		  		  "<if test=\"content != null and content != ''\">"+ "and content = #{content} " + "</if>" + 
		  		  "<if test=\"type != null and type != ''\">"+ "and type = #{type} " + "</if>" + 
		  		  "<if test=\"tags != null and tags != ''\">"+ "and tags = #{tags} " + "</if>" + 
		  		  "<if test=\"categories != null and categories != ''\">"+ "and categories = #{categories} " + "</if>" + 
		  		  "<if test=\"hits != null and hits != ''\">"+ "and hits = #{hits} " + "</if>" + 
		  		  "<if test=\"commentsNum != null and commentsNum != ''\">"+ "and comments_num = #{commentsNum} " + "</if>" + 
		  		  "<if test=\"allowComment != null and allowComment != ''\">"+ "and allow_comment = #{allowComment} " + "</if>" + 
		  		  "<if test=\"allowPing != null and allowPing != ''\">"+ "and allow_ping = #{allowPing} " + "</if>" + 
		  		  "<if test=\"allowFeed != null and allowFeed != ''\">"+ "and allow_feed = #{allowFeed} " + "</if>" + 
		  		  "<if test=\"status != null and status != ''\">"+ "and status = #{status} " + "</if>" + 
		  		  "<if test=\"author != null and author != ''\">"+ "and author = #{author} " + "</if>" + 
		  			"</where>"+ 
			"</script>")
	int count(Map<String,Object> map);
	
	@Options(useGeneratedKeys = true, keyProperty = "cid")
	@Insert("insert into b_content (`title`, `slug`, `created`, `modified`, `content`, `type`, `tags`, `categories`, `hits`, `comments_num`, `allow_comment`, `allow_ping`, `allow_feed`, `status`, `author`)"
	+ "values (#{title}, #{slug}, #{created}, #{modified}, #{content}, #{type}, #{tags}, #{categories}, #{hits}, #{commentsNum}, #{allowComment}, #{allowPing}, #{allowFeed}, #{status}, #{author})")
	int save(BContentDO bContent);
	
	@Update("<script>"+ 
			"update b_content " + 
					"<set>" + 
		            "<if test=\"cid != null\">`cid` = #{cid}, </if>" + 
                    "<if test=\"title != null\">`title` = #{title}, </if>" + 
                    "<if test=\"slug != null\">`slug` = #{slug}, </if>" + 
                    "<if test=\"created != null\">`created` = #{created}, </if>" + 
                    "<if test=\"modified != null\">`modified` = #{modified}, </if>" + 
                    "<if test=\"content != null\">`content` = #{content}, </if>" + 
                    "<if test=\"type != null\">`type` = #{type}, </if>" + 
                    "<if test=\"tags != null\">`tags` = #{tags}, </if>" + 
                    "<if test=\"categories != null\">`categories` = #{categories}, </if>" + 
                    "<if test=\"hits != null\">`hits` = #{hits}, </if>" + 
                    "<if test=\"commentsNum != null\">`comments_num` = #{commentsNum}, </if>" + 
                    "<if test=\"allowComment != null\">`allow_comment` = #{allowComment}, </if>" + 
                    "<if test=\"allowPing != null\">`allow_ping` = #{allowPing}, </if>" + 
                    "<if test=\"allowFeed != null\">`allow_feed` = #{allowFeed}, </if>" + 
                    "<if test=\"status != null\">`status` = #{status}, </if>" + 
                    "<if test=\"author != null\">`author` = #{author}, </if>" + 
          					"</set>" + 
					"where cid = #{cid}"+
			"</script>")
	int update(BContentDO bContent);
	
	@Delete("delete from b_content where cid =#{cid}")
	int remove(Long cid);
	
	@Delete("<script>"+ 
			"delete from b_content where cid in " + 
					"<foreach item=\"cid\" collection=\"array\" open=\"(\" separator=\",\" close=\")\">" + 
						"#{cid}" + 
					"</foreach>"+
			"</script>")
	int batchRemove(Long[] cids);
}
最近下载更多
shuangfu  LV25 2024年5月7日
大白兔奶糖  LV2 2023年7月11日
森sdfgf  LV8 2023年6月14日
啥也不会ddd  LV1 2023年5月25日
an1127  LV3 2023年4月4日
lyws1986  LV17 2023年3月28日
liaozhenlei  LV8 2022年9月3日
刘亦菲9527  LV15 2022年7月21日
LLLLLL_77  LV2 2022年6月16日
1529860026  LV24 2022年6月1日
最近浏览更多
bluerstar  LV1 2024年10月23日
颜菜菜  LV2 2024年6月19日
计科一班  LV7 2024年6月19日
f22m1a2b2  LV17 2024年5月31日
shuangfu  LV25 2024年5月7日
wushui  LV1 2024年3月9日
zcwmmd  LV20 2024年1月4日
WBelong  LV8 2023年12月27日
fff2003  LV9 2023年12月21日
3334004690  LV10 2023年11月1日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友