mirror of
https://github.com/201206030/novel-plus.git
synced 2025-04-26 17:20:52 +00:00
feat: 后台小说管理
This commit is contained in:
parent
0c59adf23b
commit
9f23f817b1
@ -89,4 +89,17 @@ VALUES (501, 500, '订单列表', 'novel/pay', 'novel:pay:pay', '1', 'fa', '6');
|
|||||||
INSERT INTO sys_role_menu (role_id, menu_id)
|
INSERT INTO sys_role_menu (role_id, menu_id)
|
||||||
VALUES (1, 500);
|
VALUES (1, 500);
|
||||||
INSERT INTO sys_role_menu (role_id, menu_id)
|
INSERT INTO sys_role_menu (role_id, menu_id)
|
||||||
VALUES (1, 501);
|
VALUES (1, 501);
|
||||||
|
|
||||||
|
|
||||||
|
INSERT INTO sys_menu (menu_id, parent_id, name, url, perms, type, icon, order_num, gmt_create, gmt_modified)
|
||||||
|
VALUES (600, 0, '小说管理', '', '', 0, 'fa fa-book', 15, null, null);
|
||||||
|
|
||||||
|
INSERT
|
||||||
|
INTO `sys_menu`(`menu_id`, `parent_id`, `name`, `url`, `perms`, `type`, `icon`, `order_num`)
|
||||||
|
VALUES (601, 600, '小说列表', 'novel/book', 'novel:book:book', '1', 'fa', '6');
|
||||||
|
|
||||||
|
INSERT INTO sys_role_menu (role_id, menu_id)
|
||||||
|
VALUES (1, 600);
|
||||||
|
INSERT INTO sys_role_menu (role_id, menu_id)
|
||||||
|
VALUES (1, 601);
|
@ -2919,4 +2919,16 @@ VALUES (501, 500, '订单列表', 'novel/pay', 'novel:pay:pay', '1', 'fa', '6');
|
|||||||
INSERT INTO sys_role_menu (role_id, menu_id)
|
INSERT INTO sys_role_menu (role_id, menu_id)
|
||||||
VALUES (1, 500);
|
VALUES (1, 500);
|
||||||
INSERT INTO sys_role_menu (role_id, menu_id)
|
INSERT INTO sys_role_menu (role_id, menu_id)
|
||||||
VALUES (1, 501);
|
VALUES (1, 501);
|
||||||
|
|
||||||
|
INSERT INTO sys_menu (menu_id, parent_id, name, url, perms, type, icon, order_num, gmt_create, gmt_modified)
|
||||||
|
VALUES (600, 0, '小说管理', '', '', 0, 'fa fa-book', 15, null, null);
|
||||||
|
|
||||||
|
INSERT
|
||||||
|
INTO `sys_menu`(`menu_id`, `parent_id`, `name`, `url`, `perms`, `type`, `icon`, `order_num`)
|
||||||
|
VALUES (601, 600, '小说列表', 'novel/book', 'novel:book:book', '1', 'fa', '6');
|
||||||
|
|
||||||
|
INSERT INTO sys_role_menu (role_id, menu_id)
|
||||||
|
VALUES (1, 600);
|
||||||
|
INSERT INTO sys_role_menu (role_id, menu_id)
|
||||||
|
VALUES (1, 601);
|
@ -1,493 +1,455 @@
|
|||||||
package com.java2nb.novel.domain;
|
package com.java2nb.novel.domain;
|
||||||
|
|
||||||
import java.io.Serializable;
|
|
||||||
|
|
||||||
|
|
||||||
import java.math.BigDecimal;
|
|
||||||
|
|
||||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||||
import com.java2nb.common.jsonserializer.LongToStringSerializer;
|
import com.java2nb.common.jsonserializer.LongToStringSerializer;
|
||||||
|
|
||||||
|
|
||||||
import org.springframework.format.annotation.DateTimeFormat;
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
import java.util.Date;
|
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 小说表
|
* 小说表
|
||||||
*
|
*
|
||||||
* @author xiongxy
|
* @author xiongxy
|
||||||
* @email 1179705413@qq.com
|
* @email 1179705413@qq.com
|
||||||
* @date 2020-12-01 03:49:46
|
* @date 2023-04-14 17:42:55
|
||||||
*/
|
*/
|
||||||
public class BookDO implements Serializable {
|
public class BookDO implements Serializable {
|
||||||
private static final long serialVersionUID = 1L;
|
|
||||||
|
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
//主键
|
|
||||||
//java中的long能表示的范围比js中number大,也就意味着部分数值在js中存不下(变成不准确的值)
|
|
||||||
//所以通过序列化成字符串来解决
|
|
||||||
@JsonSerialize(using = LongToStringSerializer.class)
|
|
||||||
private Long id;
|
|
||||||
//作品方向,0:男频,1:女频'
|
|
||||||
private Integer workDirection;
|
|
||||||
//分类ID
|
|
||||||
private Integer catId;
|
|
||||||
//分类名
|
|
||||||
private String catName;
|
|
||||||
//子分类ID
|
|
||||||
private Integer catChildId;
|
|
||||||
//子分类名
|
|
||||||
private String catChildName;
|
|
||||||
//小说封面
|
|
||||||
private String picUrl;
|
|
||||||
//小说名
|
|
||||||
private String bookName;
|
|
||||||
//男主角姓名
|
|
||||||
private String heroName;
|
|
||||||
//女主角姓名
|
|
||||||
private String ladyName;
|
|
||||||
//作品风格,0:甜宠,1:虐恋,2:其他
|
|
||||||
private Integer bookStyle;
|
|
||||||
//作品标签
|
|
||||||
private String bookLabel;
|
|
||||||
//作者id
|
|
||||||
//java中的long能表示的范围比js中number大,也就意味着部分数值在js中存不下(变成不准确的值)
|
|
||||||
//所以通过序列化成字符串来解决
|
|
||||||
@JsonSerialize(using = LongToStringSerializer.class)
|
|
||||||
private Long authorId;
|
|
||||||
//作者名
|
|
||||||
private String authorName;
|
|
||||||
//书籍描述
|
|
||||||
private String bookDesc;
|
|
||||||
//评分,预留字段
|
|
||||||
private Float score;
|
|
||||||
//书籍状态,0:连载中,1:已完结
|
|
||||||
private Integer bookStatus;
|
|
||||||
//点击量
|
|
||||||
//java中的long能表示的范围比js中number大,也就意味着部分数值在js中存不下(变成不准确的值)
|
|
||||||
//所以通过序列化成字符串来解决
|
|
||||||
@JsonSerialize(using = LongToStringSerializer.class)
|
|
||||||
private Long visitCount;
|
|
||||||
//总字数
|
|
||||||
private Integer wordCount;
|
|
||||||
//评论数
|
|
||||||
private Integer commentCount;
|
|
||||||
//昨日订阅数
|
|
||||||
private Integer yesterdayBuy;
|
|
||||||
//最新目录ID
|
|
||||||
//java中的long能表示的范围比js中number大,也就意味着部分数值在js中存不下(变成不准确的值)
|
|
||||||
//所以通过序列化成字符串来解决
|
|
||||||
@JsonSerialize(using = LongToStringSerializer.class)
|
|
||||||
private Long lastIndexId;
|
|
||||||
//最新目录名
|
|
||||||
private String lastIndexName;
|
|
||||||
//最新目录更新时间
|
|
||||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
|
||||||
private Date lastIndexUpdateTime;
|
|
||||||
//是否收费,1:收费,0:免费
|
|
||||||
private Integer isVip;
|
|
||||||
//状态,0:入库,1:上架
|
|
||||||
private Integer status;
|
|
||||||
//更新时间
|
|
||||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
|
||||||
private Date updateTime;
|
|
||||||
//创建时间
|
|
||||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
|
||||||
private Date createTime;
|
|
||||||
//爬虫源站ID
|
|
||||||
private Integer crawlSourceId;
|
|
||||||
//抓取的源站小说ID
|
|
||||||
private String crawlBookId;
|
|
||||||
//最后一次的抓取时间
|
|
||||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
|
||||||
private Date crawlLastTime;
|
|
||||||
//是否已停止更新,0:未停止,1:已停止
|
|
||||||
private Integer crawlIsStop;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 设置:主键
|
//主键
|
||||||
*/
|
//java中的long能表示的范围比js中number大,也就意味着部分数值在js中存不下(变成不准确的值)
|
||||||
public void setId(Long id) {
|
//所以通过序列化成字符串来解决
|
||||||
this.id = id;
|
@JsonSerialize(using = LongToStringSerializer.class)
|
||||||
}
|
private Long id;
|
||||||
/**
|
//作品方向,0:男频,1:女频'
|
||||||
* 获取:主键
|
private Integer workDirection;
|
||||||
*/
|
//分类ID
|
||||||
public Long getId() {
|
private Integer catId;
|
||||||
return id;
|
//分类名
|
||||||
}
|
private String catName;
|
||||||
/**
|
//小说封面
|
||||||
* 设置:作品方向,0:男频,1:女频'
|
private String picUrl;
|
||||||
*/
|
//小说名
|
||||||
public void setWorkDirection(Integer workDirection) {
|
private String bookName;
|
||||||
this.workDirection = workDirection;
|
//作者id
|
||||||
}
|
//java中的long能表示的范围比js中number大,也就意味着部分数值在js中存不下(变成不准确的值)
|
||||||
/**
|
//所以通过序列化成字符串来解决
|
||||||
* 获取:作品方向,0:男频,1:女频'
|
@JsonSerialize(using = LongToStringSerializer.class)
|
||||||
*/
|
private Long authorId;
|
||||||
public Integer getWorkDirection() {
|
//作者名
|
||||||
return workDirection;
|
private String authorName;
|
||||||
}
|
//书籍描述
|
||||||
/**
|
private String bookDesc;
|
||||||
* 设置:分类ID
|
//评分,预留字段
|
||||||
*/
|
private Float score;
|
||||||
public void setCatId(Integer catId) {
|
//书籍状态,0:连载中,1:已完结
|
||||||
this.catId = catId;
|
private Integer bookStatus;
|
||||||
}
|
//点击量
|
||||||
/**
|
//java中的long能表示的范围比js中number大,也就意味着部分数值在js中存不下(变成不准确的值)
|
||||||
* 获取:分类ID
|
//所以通过序列化成字符串来解决
|
||||||
*/
|
@JsonSerialize(using = LongToStringSerializer.class)
|
||||||
public Integer getCatId() {
|
private Long visitCount;
|
||||||
return catId;
|
//总字数
|
||||||
}
|
private Integer wordCount;
|
||||||
/**
|
//评论数
|
||||||
* 设置:分类名
|
private Integer commentCount;
|
||||||
*/
|
//昨日订阅数
|
||||||
public void setCatName(String catName) {
|
private Integer yesterdayBuy;
|
||||||
this.catName = catName;
|
//最新目录ID
|
||||||
}
|
//java中的long能表示的范围比js中number大,也就意味着部分数值在js中存不下(变成不准确的值)
|
||||||
/**
|
//所以通过序列化成字符串来解决
|
||||||
* 获取:分类名
|
@JsonSerialize(using = LongToStringSerializer.class)
|
||||||
*/
|
private Long lastIndexId;
|
||||||
public String getCatName() {
|
//最新目录名
|
||||||
return catName;
|
private String lastIndexName;
|
||||||
}
|
//最新目录更新时间
|
||||||
/**
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
* 设置:子分类ID
|
private Date lastIndexUpdateTime;
|
||||||
*/
|
//是否收费,1:收费,0:免费
|
||||||
public void setCatChildId(Integer catChildId) {
|
private Integer isVip;
|
||||||
this.catChildId = catChildId;
|
//状态,0:入库,1:上架
|
||||||
}
|
private Integer status;
|
||||||
/**
|
//更新时间
|
||||||
* 获取:子分类ID
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
*/
|
private Date updateTime;
|
||||||
public Integer getCatChildId() {
|
//创建时间
|
||||||
return catChildId;
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
}
|
private Date createTime;
|
||||||
/**
|
//爬虫源站ID
|
||||||
* 设置:子分类名
|
private Integer crawlSourceId;
|
||||||
*/
|
//抓取的源站小说ID
|
||||||
public void setCatChildName(String catChildName) {
|
private String crawlBookId;
|
||||||
this.catChildName = catChildName;
|
//最后一次的抓取时间
|
||||||
}
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
/**
|
private Date crawlLastTime;
|
||||||
* 获取:子分类名
|
//是否已停止更新,0:未停止,1:已停止
|
||||||
*/
|
private Integer crawlIsStop;
|
||||||
public String getCatChildName() {
|
|
||||||
return catChildName;
|
/**
|
||||||
}
|
* 设置:主键
|
||||||
/**
|
*/
|
||||||
* 设置:小说封面
|
public void setId(Long id) {
|
||||||
*/
|
this.id = id;
|
||||||
public void setPicUrl(String picUrl) {
|
}
|
||||||
this.picUrl = picUrl;
|
|
||||||
}
|
/**
|
||||||
/**
|
* 获取:主键
|
||||||
* 获取:小说封面
|
*/
|
||||||
*/
|
public Long getId() {
|
||||||
public String getPicUrl() {
|
return id;
|
||||||
return picUrl;
|
}
|
||||||
}
|
|
||||||
/**
|
/**
|
||||||
* 设置:小说名
|
* 设置:作品方向,0:男频,1:女频'
|
||||||
*/
|
*/
|
||||||
public void setBookName(String bookName) {
|
public void setWorkDirection(Integer workDirection) {
|
||||||
this.bookName = bookName;
|
this.workDirection = workDirection;
|
||||||
}
|
}
|
||||||
/**
|
|
||||||
* 获取:小说名
|
/**
|
||||||
*/
|
* 获取:作品方向,0:男频,1:女频'
|
||||||
public String getBookName() {
|
*/
|
||||||
return bookName;
|
public Integer getWorkDirection() {
|
||||||
}
|
return workDirection;
|
||||||
/**
|
}
|
||||||
* 设置:男主角姓名
|
|
||||||
*/
|
/**
|
||||||
public void setHeroName(String heroName) {
|
* 设置:分类ID
|
||||||
this.heroName = heroName;
|
*/
|
||||||
}
|
public void setCatId(Integer catId) {
|
||||||
/**
|
this.catId = catId;
|
||||||
* 获取:男主角姓名
|
}
|
||||||
*/
|
|
||||||
public String getHeroName() {
|
/**
|
||||||
return heroName;
|
* 获取:分类ID
|
||||||
}
|
*/
|
||||||
/**
|
public Integer getCatId() {
|
||||||
* 设置:女主角姓名
|
return catId;
|
||||||
*/
|
}
|
||||||
public void setLadyName(String ladyName) {
|
|
||||||
this.ladyName = ladyName;
|
/**
|
||||||
}
|
* 设置:分类名
|
||||||
/**
|
*/
|
||||||
* 获取:女主角姓名
|
public void setCatName(String catName) {
|
||||||
*/
|
this.catName = catName;
|
||||||
public String getLadyName() {
|
}
|
||||||
return ladyName;
|
|
||||||
}
|
/**
|
||||||
/**
|
* 获取:分类名
|
||||||
* 设置:作品风格,0:甜宠,1:虐恋,2:其他
|
*/
|
||||||
*/
|
public String getCatName() {
|
||||||
public void setBookStyle(Integer bookStyle) {
|
return catName;
|
||||||
this.bookStyle = bookStyle;
|
}
|
||||||
}
|
|
||||||
/**
|
/**
|
||||||
* 获取:作品风格,0:甜宠,1:虐恋,2:其他
|
* 设置:小说封面
|
||||||
*/
|
*/
|
||||||
public Integer getBookStyle() {
|
public void setPicUrl(String picUrl) {
|
||||||
return bookStyle;
|
this.picUrl = picUrl;
|
||||||
}
|
}
|
||||||
/**
|
|
||||||
* 设置:作品标签
|
/**
|
||||||
*/
|
* 获取:小说封面
|
||||||
public void setBookLabel(String bookLabel) {
|
*/
|
||||||
this.bookLabel = bookLabel;
|
public String getPicUrl() {
|
||||||
}
|
return picUrl;
|
||||||
/**
|
}
|
||||||
* 获取:作品标签
|
|
||||||
*/
|
/**
|
||||||
public String getBookLabel() {
|
* 设置:小说名
|
||||||
return bookLabel;
|
*/
|
||||||
}
|
public void setBookName(String bookName) {
|
||||||
/**
|
this.bookName = bookName;
|
||||||
* 设置:作者id
|
}
|
||||||
*/
|
|
||||||
public void setAuthorId(Long authorId) {
|
/**
|
||||||
this.authorId = authorId;
|
* 获取:小说名
|
||||||
}
|
*/
|
||||||
/**
|
public String getBookName() {
|
||||||
* 获取:作者id
|
return bookName;
|
||||||
*/
|
}
|
||||||
public Long getAuthorId() {
|
|
||||||
return authorId;
|
/**
|
||||||
}
|
* 设置:作者id
|
||||||
/**
|
*/
|
||||||
* 设置:作者名
|
public void setAuthorId(Long authorId) {
|
||||||
*/
|
this.authorId = authorId;
|
||||||
public void setAuthorName(String authorName) {
|
}
|
||||||
this.authorName = authorName;
|
|
||||||
}
|
/**
|
||||||
/**
|
* 获取:作者id
|
||||||
* 获取:作者名
|
*/
|
||||||
*/
|
public Long getAuthorId() {
|
||||||
public String getAuthorName() {
|
return authorId;
|
||||||
return authorName;
|
}
|
||||||
}
|
|
||||||
/**
|
/**
|
||||||
* 设置:书籍描述
|
* 设置:作者名
|
||||||
*/
|
*/
|
||||||
public void setBookDesc(String bookDesc) {
|
public void setAuthorName(String authorName) {
|
||||||
this.bookDesc = bookDesc;
|
this.authorName = authorName;
|
||||||
}
|
}
|
||||||
/**
|
|
||||||
* 获取:书籍描述
|
/**
|
||||||
*/
|
* 获取:作者名
|
||||||
public String getBookDesc() {
|
*/
|
||||||
return bookDesc;
|
public String getAuthorName() {
|
||||||
}
|
return authorName;
|
||||||
/**
|
}
|
||||||
* 设置:评分,预留字段
|
|
||||||
*/
|
/**
|
||||||
public void setScore(Float score) {
|
* 设置:书籍描述
|
||||||
this.score = score;
|
*/
|
||||||
}
|
public void setBookDesc(String bookDesc) {
|
||||||
/**
|
this.bookDesc = bookDesc;
|
||||||
* 获取:评分,预留字段
|
}
|
||||||
*/
|
|
||||||
public Float getScore() {
|
/**
|
||||||
return score;
|
* 获取:书籍描述
|
||||||
}
|
*/
|
||||||
/**
|
public String getBookDesc() {
|
||||||
* 设置:书籍状态,0:连载中,1:已完结
|
return bookDesc;
|
||||||
*/
|
}
|
||||||
public void setBookStatus(Integer bookStatus) {
|
|
||||||
this.bookStatus = bookStatus;
|
/**
|
||||||
}
|
* 设置:评分,预留字段
|
||||||
/**
|
*/
|
||||||
* 获取:书籍状态,0:连载中,1:已完结
|
public void setScore(Float score) {
|
||||||
*/
|
this.score = score;
|
||||||
public Integer getBookStatus() {
|
}
|
||||||
return bookStatus;
|
|
||||||
}
|
/**
|
||||||
/**
|
* 获取:评分,预留字段
|
||||||
* 设置:点击量
|
*/
|
||||||
*/
|
public Float getScore() {
|
||||||
public void setVisitCount(Long visitCount) {
|
return score;
|
||||||
this.visitCount = visitCount;
|
}
|
||||||
}
|
|
||||||
/**
|
/**
|
||||||
* 获取:点击量
|
* 设置:书籍状态,0:连载中,1:已完结
|
||||||
*/
|
*/
|
||||||
public Long getVisitCount() {
|
public void setBookStatus(Integer bookStatus) {
|
||||||
return visitCount;
|
this.bookStatus = bookStatus;
|
||||||
}
|
}
|
||||||
/**
|
|
||||||
* 设置:总字数
|
/**
|
||||||
*/
|
* 获取:书籍状态,0:连载中,1:已完结
|
||||||
public void setWordCount(Integer wordCount) {
|
*/
|
||||||
this.wordCount = wordCount;
|
public Integer getBookStatus() {
|
||||||
}
|
return bookStatus;
|
||||||
/**
|
}
|
||||||
* 获取:总字数
|
|
||||||
*/
|
/**
|
||||||
public Integer getWordCount() {
|
* 设置:点击量
|
||||||
return wordCount;
|
*/
|
||||||
}
|
public void setVisitCount(Long visitCount) {
|
||||||
/**
|
this.visitCount = visitCount;
|
||||||
* 设置:评论数
|
}
|
||||||
*/
|
|
||||||
public void setCommentCount(Integer commentCount) {
|
/**
|
||||||
this.commentCount = commentCount;
|
* 获取:点击量
|
||||||
}
|
*/
|
||||||
/**
|
public Long getVisitCount() {
|
||||||
* 获取:评论数
|
return visitCount;
|
||||||
*/
|
}
|
||||||
public Integer getCommentCount() {
|
|
||||||
return commentCount;
|
/**
|
||||||
}
|
* 设置:总字数
|
||||||
/**
|
*/
|
||||||
* 设置:昨日订阅数
|
public void setWordCount(Integer wordCount) {
|
||||||
*/
|
this.wordCount = wordCount;
|
||||||
public void setYesterdayBuy(Integer yesterdayBuy) {
|
}
|
||||||
this.yesterdayBuy = yesterdayBuy;
|
|
||||||
}
|
/**
|
||||||
/**
|
* 获取:总字数
|
||||||
* 获取:昨日订阅数
|
*/
|
||||||
*/
|
public Integer getWordCount() {
|
||||||
public Integer getYesterdayBuy() {
|
return wordCount;
|
||||||
return yesterdayBuy;
|
}
|
||||||
}
|
|
||||||
/**
|
/**
|
||||||
* 设置:最新目录ID
|
* 设置:评论数
|
||||||
*/
|
*/
|
||||||
public void setLastIndexId(Long lastIndexId) {
|
public void setCommentCount(Integer commentCount) {
|
||||||
this.lastIndexId = lastIndexId;
|
this.commentCount = commentCount;
|
||||||
}
|
}
|
||||||
/**
|
|
||||||
* 获取:最新目录ID
|
/**
|
||||||
*/
|
* 获取:评论数
|
||||||
public Long getLastIndexId() {
|
*/
|
||||||
return lastIndexId;
|
public Integer getCommentCount() {
|
||||||
}
|
return commentCount;
|
||||||
/**
|
}
|
||||||
* 设置:最新目录名
|
|
||||||
*/
|
/**
|
||||||
public void setLastIndexName(String lastIndexName) {
|
* 设置:昨日订阅数
|
||||||
this.lastIndexName = lastIndexName;
|
*/
|
||||||
}
|
public void setYesterdayBuy(Integer yesterdayBuy) {
|
||||||
/**
|
this.yesterdayBuy = yesterdayBuy;
|
||||||
* 获取:最新目录名
|
}
|
||||||
*/
|
|
||||||
public String getLastIndexName() {
|
/**
|
||||||
return lastIndexName;
|
* 获取:昨日订阅数
|
||||||
}
|
*/
|
||||||
/**
|
public Integer getYesterdayBuy() {
|
||||||
* 设置:最新目录更新时间
|
return yesterdayBuy;
|
||||||
*/
|
}
|
||||||
public void setLastIndexUpdateTime(Date lastIndexUpdateTime) {
|
|
||||||
this.lastIndexUpdateTime = lastIndexUpdateTime;
|
/**
|
||||||
}
|
* 设置:最新目录ID
|
||||||
/**
|
*/
|
||||||
* 获取:最新目录更新时间
|
public void setLastIndexId(Long lastIndexId) {
|
||||||
*/
|
this.lastIndexId = lastIndexId;
|
||||||
public Date getLastIndexUpdateTime() {
|
}
|
||||||
return lastIndexUpdateTime;
|
|
||||||
}
|
/**
|
||||||
/**
|
* 获取:最新目录ID
|
||||||
* 设置:是否收费,1:收费,0:免费
|
*/
|
||||||
*/
|
public Long getLastIndexId() {
|
||||||
public void setIsVip(Integer isVip) {
|
return lastIndexId;
|
||||||
this.isVip = isVip;
|
}
|
||||||
}
|
|
||||||
/**
|
/**
|
||||||
* 获取:是否收费,1:收费,0:免费
|
* 设置:最新目录名
|
||||||
*/
|
*/
|
||||||
public Integer getIsVip() {
|
public void setLastIndexName(String lastIndexName) {
|
||||||
return isVip;
|
this.lastIndexName = lastIndexName;
|
||||||
}
|
}
|
||||||
/**
|
|
||||||
* 设置:状态,0:入库,1:上架
|
/**
|
||||||
*/
|
* 获取:最新目录名
|
||||||
public void setStatus(Integer status) {
|
*/
|
||||||
this.status = status;
|
public String getLastIndexName() {
|
||||||
}
|
return lastIndexName;
|
||||||
/**
|
}
|
||||||
* 获取:状态,0:入库,1:上架
|
|
||||||
*/
|
/**
|
||||||
public Integer getStatus() {
|
* 设置:最新目录更新时间
|
||||||
return status;
|
*/
|
||||||
}
|
public void setLastIndexUpdateTime(Date lastIndexUpdateTime) {
|
||||||
/**
|
this.lastIndexUpdateTime = lastIndexUpdateTime;
|
||||||
* 设置:更新时间
|
}
|
||||||
*/
|
|
||||||
public void setUpdateTime(Date updateTime) {
|
/**
|
||||||
this.updateTime = updateTime;
|
* 获取:最新目录更新时间
|
||||||
}
|
*/
|
||||||
/**
|
public Date getLastIndexUpdateTime() {
|
||||||
* 获取:更新时间
|
return lastIndexUpdateTime;
|
||||||
*/
|
}
|
||||||
public Date getUpdateTime() {
|
|
||||||
return updateTime;
|
/**
|
||||||
}
|
* 设置:是否收费,1:收费,0:免费
|
||||||
/**
|
*/
|
||||||
* 设置:创建时间
|
public void setIsVip(Integer isVip) {
|
||||||
*/
|
this.isVip = isVip;
|
||||||
public void setCreateTime(Date createTime) {
|
}
|
||||||
this.createTime = createTime;
|
|
||||||
}
|
/**
|
||||||
/**
|
* 获取:是否收费,1:收费,0:免费
|
||||||
* 获取:创建时间
|
*/
|
||||||
*/
|
public Integer getIsVip() {
|
||||||
public Date getCreateTime() {
|
return isVip;
|
||||||
return createTime;
|
}
|
||||||
}
|
|
||||||
/**
|
/**
|
||||||
* 设置:爬虫源站ID
|
* 设置:状态,0:入库,1:上架
|
||||||
*/
|
*/
|
||||||
public void setCrawlSourceId(Integer crawlSourceId) {
|
public void setStatus(Integer status) {
|
||||||
this.crawlSourceId = crawlSourceId;
|
this.status = status;
|
||||||
}
|
}
|
||||||
/**
|
|
||||||
* 获取:爬虫源站ID
|
/**
|
||||||
*/
|
* 获取:状态,0:入库,1:上架
|
||||||
public Integer getCrawlSourceId() {
|
*/
|
||||||
return crawlSourceId;
|
public Integer getStatus() {
|
||||||
}
|
return status;
|
||||||
/**
|
}
|
||||||
* 设置:抓取的源站小说ID
|
|
||||||
*/
|
/**
|
||||||
public void setCrawlBookId(String crawlBookId) {
|
* 设置:更新时间
|
||||||
this.crawlBookId = crawlBookId;
|
*/
|
||||||
}
|
public void setUpdateTime(Date updateTime) {
|
||||||
/**
|
this.updateTime = updateTime;
|
||||||
* 获取:抓取的源站小说ID
|
}
|
||||||
*/
|
|
||||||
public String getCrawlBookId() {
|
/**
|
||||||
return crawlBookId;
|
* 获取:更新时间
|
||||||
}
|
*/
|
||||||
/**
|
public Date getUpdateTime() {
|
||||||
* 设置:最后一次的抓取时间
|
return updateTime;
|
||||||
*/
|
}
|
||||||
public void setCrawlLastTime(Date crawlLastTime) {
|
|
||||||
this.crawlLastTime = crawlLastTime;
|
/**
|
||||||
}
|
* 设置:创建时间
|
||||||
/**
|
*/
|
||||||
* 获取:最后一次的抓取时间
|
public void setCreateTime(Date createTime) {
|
||||||
*/
|
this.createTime = createTime;
|
||||||
public Date getCrawlLastTime() {
|
}
|
||||||
return crawlLastTime;
|
|
||||||
}
|
/**
|
||||||
/**
|
* 获取:创建时间
|
||||||
* 设置:是否已停止更新,0:未停止,1:已停止
|
*/
|
||||||
*/
|
public Date getCreateTime() {
|
||||||
public void setCrawlIsStop(Integer crawlIsStop) {
|
return createTime;
|
||||||
this.crawlIsStop = crawlIsStop;
|
}
|
||||||
}
|
|
||||||
/**
|
/**
|
||||||
* 获取:是否已停止更新,0:未停止,1:已停止
|
* 设置:爬虫源站ID
|
||||||
*/
|
*/
|
||||||
public Integer getCrawlIsStop() {
|
public void setCrawlSourceId(Integer crawlSourceId) {
|
||||||
return crawlIsStop;
|
this.crawlSourceId = crawlSourceId;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取:爬虫源站ID
|
||||||
|
*/
|
||||||
|
public Integer getCrawlSourceId() {
|
||||||
|
return crawlSourceId;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 设置:抓取的源站小说ID
|
||||||
|
*/
|
||||||
|
public void setCrawlBookId(String crawlBookId) {
|
||||||
|
this.crawlBookId = crawlBookId;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取:抓取的源站小说ID
|
||||||
|
*/
|
||||||
|
public String getCrawlBookId() {
|
||||||
|
return crawlBookId;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 设置:最后一次的抓取时间
|
||||||
|
*/
|
||||||
|
public void setCrawlLastTime(Date crawlLastTime) {
|
||||||
|
this.crawlLastTime = crawlLastTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取:最后一次的抓取时间
|
||||||
|
*/
|
||||||
|
public Date getCrawlLastTime() {
|
||||||
|
return crawlLastTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 设置:是否已停止更新,0:未停止,1:已停止
|
||||||
|
*/
|
||||||
|
public void setCrawlIsStop(Integer crawlIsStop) {
|
||||||
|
this.crawlIsStop = crawlIsStop;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取:是否已停止更新,0:未停止,1:已停止
|
||||||
|
*/
|
||||||
|
public Integer getCrawlIsStop() {
|
||||||
|
return crawlIsStop;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -3,304 +3,287 @@
|
|||||||
|
|
||||||
<mapper namespace="com.java2nb.novel.dao.BookDao">
|
<mapper namespace="com.java2nb.novel.dao.BookDao">
|
||||||
|
|
||||||
<select id="get" resultType="com.java2nb.novel.domain.BookDO">
|
<select id="get" resultType="com.java2nb.novel.domain.BookDO">
|
||||||
select `id`,`work_direction`,`cat_id`,`cat_name`,`cat_child_id`,`cat_child_name`,`pic_url`,`book_name`,`hero_name`,`lady_name`,`book_style`,`book_label`,`author_id`,`author_name`,`book_desc`,`score`,`book_status`,`visit_count`,`word_count`,`comment_count`,`yesterday_buy`,`last_index_id`,`last_index_name`,`last_index_update_time`,`is_vip`,`status`,`update_time`,`create_time`,`crawl_source_id`,`crawl_book_id`,`crawl_last_time`,`crawl_is_stop` from book where id = #{value}
|
select `id`,
|
||||||
</select>
|
`work_direction`,
|
||||||
|
`cat_id`,
|
||||||
|
`cat_name`,
|
||||||
|
`pic_url`,
|
||||||
|
`book_name`,
|
||||||
|
`author_id`,
|
||||||
|
`author_name`,
|
||||||
|
`book_desc`,
|
||||||
|
`score`,
|
||||||
|
`book_status`,
|
||||||
|
`visit_count`,
|
||||||
|
`word_count`,
|
||||||
|
`comment_count`,
|
||||||
|
`yesterday_buy`,
|
||||||
|
`last_index_id`,
|
||||||
|
`last_index_name`,
|
||||||
|
`last_index_update_time`,
|
||||||
|
`is_vip`,
|
||||||
|
`status`,
|
||||||
|
`update_time`,
|
||||||
|
`create_time`,
|
||||||
|
`crawl_source_id`,
|
||||||
|
`crawl_book_id`,
|
||||||
|
`crawl_last_time`,
|
||||||
|
`crawl_is_stop`
|
||||||
|
from book
|
||||||
|
where id = #{value}
|
||||||
|
</select>
|
||||||
|
|
||||||
<select id="list" resultType="com.java2nb.novel.domain.BookDO">
|
<select id="list" resultType="com.java2nb.novel.domain.BookDO">
|
||||||
select `id`,`work_direction`,`cat_id`,`cat_name`,`cat_child_id`,`cat_child_name`,`pic_url`,`book_name`,`hero_name`,`lady_name`,`book_style`,`book_label`,`author_id`,`author_name`,`book_desc`,`score`,`book_status`,`visit_count`,`word_count`,`comment_count`,`yesterday_buy`,`last_index_id`,`last_index_name`,`last_index_update_time`,`is_vip`,`status`,`update_time`,`create_time`,`crawl_source_id`,`crawl_book_id`,`crawl_last_time`,`crawl_is_stop` from book
|
select
|
||||||
<where>
|
`id`,`work_direction`,`cat_id`,`cat_name`,`pic_url`,`book_name`,`author_id`,`author_name`,`book_desc`,`score`,`book_status`,`visit_count`,`word_count`,`comment_count`,`yesterday_buy`,`last_index_id`,`last_index_name`,`last_index_update_time`,`is_vip`,`status`,`update_time`,`create_time`,`crawl_source_id`,`crawl_book_id`,`crawl_last_time`,`crawl_is_stop`
|
||||||
<if test="id != null and id != ''"> and id = #{id} </if>
|
from book
|
||||||
<if test="workDirection != null and workDirection != ''"> and work_direction = #{workDirection} </if>
|
<where>
|
||||||
<if test="catId != null and catId != ''"> and cat_id = #{catId} </if>
|
<if test="id != null and id != ''">and id = #{id}</if>
|
||||||
<if test="catName != null and catName != ''"> and cat_name = #{catName} </if>
|
<if test="workDirection != null and workDirection != ''">and work_direction = #{workDirection}</if>
|
||||||
<if test="catChildId != null and catChildId != ''"> and cat_child_id = #{catChildId} </if>
|
<if test="catId != null and catId != ''">and cat_id = #{catId}</if>
|
||||||
<if test="catChildName != null and catChildName != ''"> and cat_child_name = #{catChildName} </if>
|
<if test="catName != null and catName != ''">and cat_name = #{catName}</if>
|
||||||
<if test="picUrl != null and picUrl != ''"> and pic_url = #{picUrl} </if>
|
<if test="picUrl != null and picUrl != ''">and pic_url = #{picUrl}</if>
|
||||||
<if test="bookName != null and bookName != ''"> and book_name = #{bookName} </if>
|
<if test="bookName != null and bookName != ''">and book_name = #{bookName}</if>
|
||||||
<if test="heroName != null and heroName != ''"> and hero_name = #{heroName} </if>
|
<if test="authorId != null and authorId != ''">and author_id = #{authorId}</if>
|
||||||
<if test="ladyName != null and ladyName != ''"> and lady_name = #{ladyName} </if>
|
<if test="authorName != null and authorName != ''">and author_name = #{authorName}</if>
|
||||||
<if test="bookStyle != null and bookStyle != ''"> and book_style = #{bookStyle} </if>
|
<if test="bookDesc != null and bookDesc != ''">and book_desc = #{bookDesc}</if>
|
||||||
<if test="bookLabel != null and bookLabel != ''"> and book_label = #{bookLabel} </if>
|
<if test="score != null and score != ''">and score = #{score}</if>
|
||||||
<if test="authorId != null and authorId != ''"> and author_id = #{authorId} </if>
|
<if test="bookStatus != null and bookStatus != ''">and book_status = #{bookStatus}</if>
|
||||||
<if test="authorName != null and authorName != ''"> and author_name = #{authorName} </if>
|
<if test="visitCount != null and visitCount != ''">and visit_count = #{visitCount}</if>
|
||||||
<if test="bookDesc != null and bookDesc != ''"> and book_desc = #{bookDesc} </if>
|
<if test="wordCount != null and wordCount != ''">and word_count = #{wordCount}</if>
|
||||||
<if test="score != null and score != ''"> and score = #{score} </if>
|
<if test="commentCount != null and commentCount != ''">and comment_count = #{commentCount}</if>
|
||||||
<if test="bookStatus != null and bookStatus != ''"> and book_status = #{bookStatus} </if>
|
<if test="yesterdayBuy != null and yesterdayBuy != ''">and yesterday_buy = #{yesterdayBuy}</if>
|
||||||
<if test="visitCount != null and visitCount != ''"> and visit_count = #{visitCount} </if>
|
<if test="lastIndexId != null and lastIndexId != ''">and last_index_id = #{lastIndexId}</if>
|
||||||
<if test="wordCount != null and wordCount != ''"> and word_count = #{wordCount} </if>
|
<if test="lastIndexName != null and lastIndexName != ''">and last_index_name = #{lastIndexName}</if>
|
||||||
<if test="commentCount != null and commentCount != ''"> and comment_count = #{commentCount} </if>
|
<if test="lastIndexUpdateTime != null and lastIndexUpdateTime != ''">and last_index_update_time =
|
||||||
<if test="yesterdayBuy != null and yesterdayBuy != ''"> and yesterday_buy = #{yesterdayBuy} </if>
|
#{lastIndexUpdateTime}
|
||||||
<if test="lastIndexId != null and lastIndexId != ''"> and last_index_id = #{lastIndexId} </if>
|
</if>
|
||||||
<if test="lastIndexName != null and lastIndexName != ''"> and last_index_name = #{lastIndexName} </if>
|
<if test="isVip != null and isVip != ''">and is_vip = #{isVip}</if>
|
||||||
<if test="lastIndexUpdateTime != null and lastIndexUpdateTime != ''"> and last_index_update_time = #{lastIndexUpdateTime} </if>
|
<if test="status != null and status != ''">and status = #{status}</if>
|
||||||
<if test="isVip != null and isVip != ''"> and is_vip = #{isVip} </if>
|
<if test="updateTime != null and updateTime != ''">and update_time = #{updateTime}</if>
|
||||||
<if test="status != null and status != ''"> and status = #{status} </if>
|
<if test="createTime != null and createTime != ''">and create_time = #{createTime}</if>
|
||||||
<if test="updateTime != null and updateTime != ''"> and update_time = #{updateTime} </if>
|
<if test="crawlSourceId != null and crawlSourceId != ''">and crawl_source_id = #{crawlSourceId}</if>
|
||||||
<if test="createTime != null and createTime != ''"> and create_time = #{createTime} </if>
|
<if test="crawlBookId != null and crawlBookId != ''">and crawl_book_id = #{crawlBookId}</if>
|
||||||
<if test="crawlSourceId != null and crawlSourceId != ''"> and crawl_source_id = #{crawlSourceId} </if>
|
<if test="crawlLastTime != null and crawlLastTime != ''">and crawl_last_time = #{crawlLastTime}</if>
|
||||||
<if test="crawlBookId != null and crawlBookId != ''"> and crawl_book_id = #{crawlBookId} </if>
|
<if test="crawlIsStop != null and crawlIsStop != ''">and crawl_is_stop = #{crawlIsStop}</if>
|
||||||
<if test="crawlLastTime != null and crawlLastTime != ''"> and crawl_last_time = #{crawlLastTime} </if>
|
</where>
|
||||||
<if test="crawlIsStop != null and crawlIsStop != ''"> and crawl_is_stop = #{crawlIsStop} </if>
|
|
||||||
</where>
|
|
||||||
<choose>
|
<choose>
|
||||||
<when test="sort != null and sort.trim() != ''">
|
<when test="sort != null and sort.trim() != ''">
|
||||||
order by ${sort} ${order}
|
order by ${sort} ${order}
|
||||||
</when>
|
</when>
|
||||||
<otherwise>
|
<otherwise>
|
||||||
order by id desc
|
order by id desc
|
||||||
</otherwise>
|
</otherwise>
|
||||||
</choose>
|
</choose>
|
||||||
<if test="offset != null and limit != null">
|
<if test="offset != null and limit != null">
|
||||||
limit #{offset}, #{limit}
|
limit #{offset}, #{limit}
|
||||||
</if>
|
</if>
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="count" resultType="int">
|
|
||||||
select count(*) from book
|
|
||||||
<where>
|
|
||||||
<if test="id != null and id != ''"> and id = #{id} </if>
|
|
||||||
<if test="workDirection != null and workDirection != ''"> and work_direction = #{workDirection} </if>
|
|
||||||
<if test="catId != null and catId != ''"> and cat_id = #{catId} </if>
|
|
||||||
<if test="catName != null and catName != ''"> and cat_name = #{catName} </if>
|
|
||||||
<if test="catChildId != null and catChildId != ''"> and cat_child_id = #{catChildId} </if>
|
|
||||||
<if test="catChildName != null and catChildName != ''"> and cat_child_name = #{catChildName} </if>
|
|
||||||
<if test="picUrl != null and picUrl != ''"> and pic_url = #{picUrl} </if>
|
|
||||||
<if test="bookName != null and bookName != ''"> and book_name = #{bookName} </if>
|
|
||||||
<if test="heroName != null and heroName != ''"> and hero_name = #{heroName} </if>
|
|
||||||
<if test="ladyName != null and ladyName != ''"> and lady_name = #{ladyName} </if>
|
|
||||||
<if test="bookStyle != null and bookStyle != ''"> and book_style = #{bookStyle} </if>
|
|
||||||
<if test="bookLabel != null and bookLabel != ''"> and book_label = #{bookLabel} </if>
|
|
||||||
<if test="authorId != null and authorId != ''"> and author_id = #{authorId} </if>
|
|
||||||
<if test="authorName != null and authorName != ''"> and author_name = #{authorName} </if>
|
|
||||||
<if test="bookDesc != null and bookDesc != ''"> and book_desc = #{bookDesc} </if>
|
|
||||||
<if test="score != null and score != ''"> and score = #{score} </if>
|
|
||||||
<if test="bookStatus != null and bookStatus != ''"> and book_status = #{bookStatus} </if>
|
|
||||||
<if test="visitCount != null and visitCount != ''"> and visit_count = #{visitCount} </if>
|
|
||||||
<if test="wordCount != null and wordCount != ''"> and word_count = #{wordCount} </if>
|
|
||||||
<if test="commentCount != null and commentCount != ''"> and comment_count = #{commentCount} </if>
|
|
||||||
<if test="yesterdayBuy != null and yesterdayBuy != ''"> and yesterday_buy = #{yesterdayBuy} </if>
|
|
||||||
<if test="lastIndexId != null and lastIndexId != ''"> and last_index_id = #{lastIndexId} </if>
|
|
||||||
<if test="lastIndexName != null and lastIndexName != ''"> and last_index_name = #{lastIndexName} </if>
|
|
||||||
<if test="lastIndexUpdateTime != null and lastIndexUpdateTime != ''"> and last_index_update_time = #{lastIndexUpdateTime} </if>
|
|
||||||
<if test="isVip != null and isVip != ''"> and is_vip = #{isVip} </if>
|
|
||||||
<if test="status != null and status != ''"> and status = #{status} </if>
|
|
||||||
<if test="updateTime != null and updateTime != ''"> and update_time = #{updateTime} </if>
|
|
||||||
<if test="createTime != null and createTime != ''"> and create_time = #{createTime} </if>
|
|
||||||
<if test="crawlSourceId != null and crawlSourceId != ''"> and crawl_source_id = #{crawlSourceId} </if>
|
|
||||||
<if test="crawlBookId != null and crawlBookId != ''"> and crawl_book_id = #{crawlBookId} </if>
|
|
||||||
<if test="crawlLastTime != null and crawlLastTime != ''"> and crawl_last_time = #{crawlLastTime} </if>
|
|
||||||
<if test="crawlIsStop != null and crawlIsStop != ''"> and crawl_is_stop = #{crawlIsStop} </if>
|
|
||||||
</where>
|
|
||||||
</select>
|
|
||||||
|
|
||||||
<insert id="save" parameterType="com.java2nb.novel.domain.BookDO">
|
|
||||||
insert into book
|
|
||||||
(
|
|
||||||
`id`,
|
|
||||||
`work_direction`,
|
|
||||||
`cat_id`,
|
|
||||||
`cat_name`,
|
|
||||||
`cat_child_id`,
|
|
||||||
`cat_child_name`,
|
|
||||||
`pic_url`,
|
|
||||||
`book_name`,
|
|
||||||
`hero_name`,
|
|
||||||
`lady_name`,
|
|
||||||
`book_style`,
|
|
||||||
`book_label`,
|
|
||||||
`author_id`,
|
|
||||||
`author_name`,
|
|
||||||
`book_desc`,
|
|
||||||
`score`,
|
|
||||||
`book_status`,
|
|
||||||
`visit_count`,
|
|
||||||
`word_count`,
|
|
||||||
`comment_count`,
|
|
||||||
`yesterday_buy`,
|
|
||||||
`last_index_id`,
|
|
||||||
`last_index_name`,
|
|
||||||
`last_index_update_time`,
|
|
||||||
`is_vip`,
|
|
||||||
`status`,
|
|
||||||
`update_time`,
|
|
||||||
`create_time`,
|
|
||||||
`crawl_source_id`,
|
|
||||||
`crawl_book_id`,
|
|
||||||
`crawl_last_time`,
|
|
||||||
`crawl_is_stop`
|
|
||||||
)
|
|
||||||
values
|
|
||||||
(
|
|
||||||
#{id},
|
|
||||||
#{workDirection},
|
|
||||||
#{catId},
|
|
||||||
#{catName},
|
|
||||||
#{catChildId},
|
|
||||||
#{catChildName},
|
|
||||||
#{picUrl},
|
|
||||||
#{bookName},
|
|
||||||
#{heroName},
|
|
||||||
#{ladyName},
|
|
||||||
#{bookStyle},
|
|
||||||
#{bookLabel},
|
|
||||||
#{authorId},
|
|
||||||
#{authorName},
|
|
||||||
#{bookDesc},
|
|
||||||
#{score},
|
|
||||||
#{bookStatus},
|
|
||||||
#{visitCount},
|
|
||||||
#{wordCount},
|
|
||||||
#{commentCount},
|
|
||||||
#{yesterdayBuy},
|
|
||||||
#{lastIndexId},
|
|
||||||
#{lastIndexName},
|
|
||||||
#{lastIndexUpdateTime},
|
|
||||||
#{isVip},
|
|
||||||
#{status},
|
|
||||||
#{updateTime},
|
|
||||||
#{createTime},
|
|
||||||
#{crawlSourceId},
|
|
||||||
#{crawlBookId},
|
|
||||||
#{crawlLastTime},
|
|
||||||
#{crawlIsStop}
|
|
||||||
)
|
|
||||||
</insert>
|
|
||||||
|
|
||||||
<insert id="saveSelective" parameterType="com.java2nb.novel.domain.BookDO">
|
<select id="count" resultType="int">
|
||||||
insert into book
|
select count(*) from book
|
||||||
(
|
<where>
|
||||||
<if test="id != null"> `id`, </if>
|
<if test="id != null and id != ''">and id = #{id}</if>
|
||||||
<if test="workDirection != null"> `work_direction`, </if>
|
<if test="workDirection != null and workDirection != ''">and work_direction = #{workDirection}</if>
|
||||||
<if test="catId != null"> `cat_id`, </if>
|
<if test="catId != null and catId != ''">and cat_id = #{catId}</if>
|
||||||
<if test="catName != null"> `cat_name`, </if>
|
<if test="catName != null and catName != ''">and cat_name = #{catName}</if>
|
||||||
<if test="catChildId != null"> `cat_child_id`, </if>
|
<if test="picUrl != null and picUrl != ''">and pic_url = #{picUrl}</if>
|
||||||
<if test="catChildName != null"> `cat_child_name`, </if>
|
<if test="bookName != null and bookName != ''">and book_name = #{bookName}</if>
|
||||||
<if test="picUrl != null"> `pic_url`, </if>
|
<if test="authorId != null and authorId != ''">and author_id = #{authorId}</if>
|
||||||
<if test="bookName != null"> `book_name`, </if>
|
<if test="authorName != null and authorName != ''">and author_name = #{authorName}</if>
|
||||||
<if test="heroName != null"> `hero_name`, </if>
|
<if test="bookDesc != null and bookDesc != ''">and book_desc = #{bookDesc}</if>
|
||||||
<if test="ladyName != null"> `lady_name`, </if>
|
<if test="score != null and score != ''">and score = #{score}</if>
|
||||||
<if test="bookStyle != null"> `book_style`, </if>
|
<if test="bookStatus != null and bookStatus != ''">and book_status = #{bookStatus}</if>
|
||||||
<if test="bookLabel != null"> `book_label`, </if>
|
<if test="visitCount != null and visitCount != ''">and visit_count = #{visitCount}</if>
|
||||||
<if test="authorId != null"> `author_id`, </if>
|
<if test="wordCount != null and wordCount != ''">and word_count = #{wordCount}</if>
|
||||||
<if test="authorName != null"> `author_name`, </if>
|
<if test="commentCount != null and commentCount != ''">and comment_count = #{commentCount}</if>
|
||||||
<if test="bookDesc != null"> `book_desc`, </if>
|
<if test="yesterdayBuy != null and yesterdayBuy != ''">and yesterday_buy = #{yesterdayBuy}</if>
|
||||||
<if test="score != null"> `score`, </if>
|
<if test="lastIndexId != null and lastIndexId != ''">and last_index_id = #{lastIndexId}</if>
|
||||||
<if test="bookStatus != null"> `book_status`, </if>
|
<if test="lastIndexName != null and lastIndexName != ''">and last_index_name = #{lastIndexName}</if>
|
||||||
<if test="visitCount != null"> `visit_count`, </if>
|
<if test="lastIndexUpdateTime != null and lastIndexUpdateTime != ''">and last_index_update_time =
|
||||||
<if test="wordCount != null"> `word_count`, </if>
|
#{lastIndexUpdateTime}
|
||||||
<if test="commentCount != null"> `comment_count`, </if>
|
</if>
|
||||||
<if test="yesterdayBuy != null"> `yesterday_buy`, </if>
|
<if test="isVip != null and isVip != ''">and is_vip = #{isVip}</if>
|
||||||
<if test="lastIndexId != null"> `last_index_id`, </if>
|
<if test="status != null and status != ''">and status = #{status}</if>
|
||||||
<if test="lastIndexName != null"> `last_index_name`, </if>
|
<if test="updateTime != null and updateTime != ''">and update_time = #{updateTime}</if>
|
||||||
<if test="lastIndexUpdateTime != null"> `last_index_update_time`, </if>
|
<if test="createTime != null and createTime != ''">and create_time = #{createTime}</if>
|
||||||
<if test="isVip != null"> `is_vip`, </if>
|
<if test="crawlSourceId != null and crawlSourceId != ''">and crawl_source_id = #{crawlSourceId}</if>
|
||||||
<if test="status != null"> `status`, </if>
|
<if test="crawlBookId != null and crawlBookId != ''">and crawl_book_id = #{crawlBookId}</if>
|
||||||
<if test="updateTime != null"> `update_time`, </if>
|
<if test="crawlLastTime != null and crawlLastTime != ''">and crawl_last_time = #{crawlLastTime}</if>
|
||||||
<if test="createTime != null"> `create_time`, </if>
|
<if test="crawlIsStop != null and crawlIsStop != ''">and crawl_is_stop = #{crawlIsStop}</if>
|
||||||
<if test="crawlSourceId != null"> `crawl_source_id`, </if>
|
</where>
|
||||||
<if test="crawlBookId != null"> `crawl_book_id`, </if>
|
</select>
|
||||||
<if test="crawlLastTime != null"> `crawl_last_time`, </if>
|
|
||||||
<if test="crawlIsStop != null"> `crawl_is_stop` </if>
|
|
||||||
)
|
|
||||||
values
|
|
||||||
(
|
|
||||||
<if test="id != null"> #{id}, </if>
|
|
||||||
<if test="workDirection != null"> #{workDirection}, </if>
|
|
||||||
<if test="catId != null"> #{catId}, </if>
|
|
||||||
<if test="catName != null"> #{catName}, </if>
|
|
||||||
<if test="catChildId != null"> #{catChildId}, </if>
|
|
||||||
<if test="catChildName != null"> #{catChildName}, </if>
|
|
||||||
<if test="picUrl != null"> #{picUrl}, </if>
|
|
||||||
<if test="bookName != null"> #{bookName}, </if>
|
|
||||||
<if test="heroName != null"> #{heroName}, </if>
|
|
||||||
<if test="ladyName != null"> #{ladyName}, </if>
|
|
||||||
<if test="bookStyle != null"> #{bookStyle}, </if>
|
|
||||||
<if test="bookLabel != null"> #{bookLabel}, </if>
|
|
||||||
<if test="authorId != null"> #{authorId}, </if>
|
|
||||||
<if test="authorName != null"> #{authorName}, </if>
|
|
||||||
<if test="bookDesc != null"> #{bookDesc}, </if>
|
|
||||||
<if test="score != null"> #{score}, </if>
|
|
||||||
<if test="bookStatus != null"> #{bookStatus}, </if>
|
|
||||||
<if test="visitCount != null"> #{visitCount}, </if>
|
|
||||||
<if test="wordCount != null"> #{wordCount}, </if>
|
|
||||||
<if test="commentCount != null"> #{commentCount}, </if>
|
|
||||||
<if test="yesterdayBuy != null"> #{yesterdayBuy}, </if>
|
|
||||||
<if test="lastIndexId != null"> #{lastIndexId}, </if>
|
|
||||||
<if test="lastIndexName != null"> #{lastIndexName}, </if>
|
|
||||||
<if test="lastIndexUpdateTime != null"> #{lastIndexUpdateTime}, </if>
|
|
||||||
<if test="isVip != null"> #{isVip}, </if>
|
|
||||||
<if test="status != null"> #{status}, </if>
|
|
||||||
<if test="updateTime != null"> #{updateTime}, </if>
|
|
||||||
<if test="createTime != null"> #{createTime}, </if>
|
|
||||||
<if test="crawlSourceId != null"> #{crawlSourceId}, </if>
|
|
||||||
<if test="crawlBookId != null"> #{crawlBookId}, </if>
|
|
||||||
<if test="crawlLastTime != null"> #{crawlLastTime}, </if>
|
|
||||||
<if test="crawlIsStop != null"> #{crawlIsStop} </if>
|
|
||||||
)
|
|
||||||
</insert>
|
|
||||||
|
|
||||||
<update id="update" parameterType="com.java2nb.novel.domain.BookDO">
|
|
||||||
update book
|
|
||||||
<set>
|
|
||||||
<if test="workDirection != null">`work_direction` = #{workDirection}, </if>
|
|
||||||
<if test="catId != null">`cat_id` = #{catId}, </if>
|
|
||||||
<if test="catName != null">`cat_name` = #{catName}, </if>
|
|
||||||
<if test="catChildId != null">`cat_child_id` = #{catChildId}, </if>
|
|
||||||
<if test="catChildName != null">`cat_child_name` = #{catChildName}, </if>
|
|
||||||
<if test="picUrl != null">`pic_url` = #{picUrl}, </if>
|
|
||||||
<if test="bookName != null">`book_name` = #{bookName}, </if>
|
|
||||||
<if test="heroName != null">`hero_name` = #{heroName}, </if>
|
|
||||||
<if test="ladyName != null">`lady_name` = #{ladyName}, </if>
|
|
||||||
<if test="bookStyle != null">`book_style` = #{bookStyle}, </if>
|
|
||||||
<if test="bookLabel != null">`book_label` = #{bookLabel}, </if>
|
|
||||||
<if test="authorId != null">`author_id` = #{authorId}, </if>
|
|
||||||
<if test="authorName != null">`author_name` = #{authorName}, </if>
|
|
||||||
<if test="bookDesc != null">`book_desc` = #{bookDesc}, </if>
|
|
||||||
<if test="score != null">`score` = #{score}, </if>
|
|
||||||
<if test="bookStatus != null">`book_status` = #{bookStatus}, </if>
|
|
||||||
<if test="visitCount != null">`visit_count` = #{visitCount}, </if>
|
|
||||||
<if test="wordCount != null">`word_count` = #{wordCount}, </if>
|
|
||||||
<if test="commentCount != null">`comment_count` = #{commentCount}, </if>
|
|
||||||
<if test="yesterdayBuy != null">`yesterday_buy` = #{yesterdayBuy}, </if>
|
|
||||||
<if test="lastIndexId != null">`last_index_id` = #{lastIndexId}, </if>
|
|
||||||
<if test="lastIndexName != null">`last_index_name` = #{lastIndexName}, </if>
|
|
||||||
<if test="lastIndexUpdateTime != null">`last_index_update_time` = #{lastIndexUpdateTime}, </if>
|
|
||||||
<if test="isVip != null">`is_vip` = #{isVip}, </if>
|
|
||||||
<if test="status != null">`status` = #{status}, </if>
|
|
||||||
<if test="updateTime != null">`update_time` = #{updateTime}, </if>
|
|
||||||
<if test="createTime != null">`create_time` = #{createTime}, </if>
|
|
||||||
<if test="crawlSourceId != null">`crawl_source_id` = #{crawlSourceId}, </if>
|
|
||||||
<if test="crawlBookId != null">`crawl_book_id` = #{crawlBookId}, </if>
|
|
||||||
<if test="crawlLastTime != null">`crawl_last_time` = #{crawlLastTime}, </if>
|
|
||||||
<if test="crawlIsStop != null">`crawl_is_stop` = #{crawlIsStop}</if>
|
|
||||||
</set>
|
|
||||||
where id = #{id}
|
|
||||||
</update>
|
|
||||||
|
|
||||||
<delete id="remove">
|
|
||||||
delete from book where id = #{value}
|
|
||||||
</delete>
|
|
||||||
|
|
||||||
<delete id="batchRemove">
|
|
||||||
delete from book where id in
|
|
||||||
<foreach item="id" collection="array" open="(" separator="," close=")">
|
|
||||||
#{id}
|
|
||||||
</foreach>
|
|
||||||
</delete>
|
|
||||||
|
|
||||||
<select id="tableSta" resultType="map">
|
<insert id="save" parameterType="com.java2nb.novel.domain.BookDO">
|
||||||
SELECT
|
insert into book
|
||||||
DATE_FORMAT( create_time, "%Y-%m-%d" ) AS staDate,
|
(`id`,
|
||||||
COUNT( 1 ) bookCount
|
`work_direction`,
|
||||||
FROM
|
`cat_id`,
|
||||||
book
|
`cat_name`,
|
||||||
WHERE
|
`pic_url`,
|
||||||
create_time >= #{minDate}
|
`book_name`,
|
||||||
GROUP BY
|
`author_id`,
|
||||||
DATE_FORMAT( create_time, "%Y-%m-%d" )
|
`author_name`,
|
||||||
ORDER BY
|
`book_desc`,
|
||||||
staDate
|
`score`,
|
||||||
</select>
|
`book_status`,
|
||||||
|
`visit_count`,
|
||||||
|
`word_count`,
|
||||||
|
`comment_count`,
|
||||||
|
`yesterday_buy`,
|
||||||
|
`last_index_id`,
|
||||||
|
`last_index_name`,
|
||||||
|
`last_index_update_time`,
|
||||||
|
`is_vip`,
|
||||||
|
`status`,
|
||||||
|
`update_time`,
|
||||||
|
`create_time`,
|
||||||
|
`crawl_source_id`,
|
||||||
|
`crawl_book_id`,
|
||||||
|
`crawl_last_time`,
|
||||||
|
`crawl_is_stop`)
|
||||||
|
values (#{id},
|
||||||
|
#{workDirection},
|
||||||
|
#{catId},
|
||||||
|
#{catName},
|
||||||
|
#{picUrl},
|
||||||
|
#{bookName},
|
||||||
|
#{authorId},
|
||||||
|
#{authorName},
|
||||||
|
#{bookDesc},
|
||||||
|
#{score},
|
||||||
|
#{bookStatus},
|
||||||
|
#{visitCount},
|
||||||
|
#{wordCount},
|
||||||
|
#{commentCount},
|
||||||
|
#{yesterdayBuy},
|
||||||
|
#{lastIndexId},
|
||||||
|
#{lastIndexName},
|
||||||
|
#{lastIndexUpdateTime},
|
||||||
|
#{isVip},
|
||||||
|
#{status},
|
||||||
|
#{updateTime},
|
||||||
|
#{createTime},
|
||||||
|
#{crawlSourceId},
|
||||||
|
#{crawlBookId},
|
||||||
|
#{crawlLastTime},
|
||||||
|
#{crawlIsStop})
|
||||||
|
</insert>
|
||||||
|
|
||||||
|
<insert id="saveSelective" parameterType="com.java2nb.novel.domain.BookDO">
|
||||||
|
insert into book
|
||||||
|
(
|
||||||
|
<if test="id != null">`id`,</if>
|
||||||
|
<if test="workDirection != null">`work_direction`,</if>
|
||||||
|
<if test="catId != null">`cat_id`,</if>
|
||||||
|
<if test="catName != null">`cat_name`,</if>
|
||||||
|
<if test="picUrl != null">`pic_url`,</if>
|
||||||
|
<if test="bookName != null">`book_name`,</if>
|
||||||
|
<if test="authorId != null">`author_id`,</if>
|
||||||
|
<if test="authorName != null">`author_name`,</if>
|
||||||
|
<if test="bookDesc != null">`book_desc`,</if>
|
||||||
|
<if test="score != null">`score`,</if>
|
||||||
|
<if test="bookStatus != null">`book_status`,</if>
|
||||||
|
<if test="visitCount != null">`visit_count`,</if>
|
||||||
|
<if test="wordCount != null">`word_count`,</if>
|
||||||
|
<if test="commentCount != null">`comment_count`,</if>
|
||||||
|
<if test="yesterdayBuy != null">`yesterday_buy`,</if>
|
||||||
|
<if test="lastIndexId != null">`last_index_id`,</if>
|
||||||
|
<if test="lastIndexName != null">`last_index_name`,</if>
|
||||||
|
<if test="lastIndexUpdateTime != null">`last_index_update_time`,</if>
|
||||||
|
<if test="isVip != null">`is_vip`,</if>
|
||||||
|
<if test="status != null">`status`,</if>
|
||||||
|
<if test="updateTime != null">`update_time`,</if>
|
||||||
|
<if test="createTime != null">`create_time`,</if>
|
||||||
|
<if test="crawlSourceId != null">`crawl_source_id`,</if>
|
||||||
|
<if test="crawlBookId != null">`crawl_book_id`,</if>
|
||||||
|
<if test="crawlLastTime != null">`crawl_last_time`,</if>
|
||||||
|
<if test="crawlIsStop != null">`crawl_is_stop`</if>
|
||||||
|
)
|
||||||
|
values
|
||||||
|
(
|
||||||
|
<if test="id != null">#{id},</if>
|
||||||
|
<if test="workDirection != null">#{workDirection},</if>
|
||||||
|
<if test="catId != null">#{catId},</if>
|
||||||
|
<if test="catName != null">#{catName},</if>
|
||||||
|
<if test="picUrl != null">#{picUrl},</if>
|
||||||
|
<if test="bookName != null">#{bookName},</if>
|
||||||
|
<if test="authorId != null">#{authorId},</if>
|
||||||
|
<if test="authorName != null">#{authorName},</if>
|
||||||
|
<if test="bookDesc != null">#{bookDesc},</if>
|
||||||
|
<if test="score != null">#{score},</if>
|
||||||
|
<if test="bookStatus != null">#{bookStatus},</if>
|
||||||
|
<if test="visitCount != null">#{visitCount},</if>
|
||||||
|
<if test="wordCount != null">#{wordCount},</if>
|
||||||
|
<if test="commentCount != null">#{commentCount},</if>
|
||||||
|
<if test="yesterdayBuy != null">#{yesterdayBuy},</if>
|
||||||
|
<if test="lastIndexId != null">#{lastIndexId},</if>
|
||||||
|
<if test="lastIndexName != null">#{lastIndexName},</if>
|
||||||
|
<if test="lastIndexUpdateTime != null">#{lastIndexUpdateTime},</if>
|
||||||
|
<if test="isVip != null">#{isVip},</if>
|
||||||
|
<if test="status != null">#{status},</if>
|
||||||
|
<if test="updateTime != null">#{updateTime},</if>
|
||||||
|
<if test="createTime != null">#{createTime},</if>
|
||||||
|
<if test="crawlSourceId != null">#{crawlSourceId},</if>
|
||||||
|
<if test="crawlBookId != null">#{crawlBookId},</if>
|
||||||
|
<if test="crawlLastTime != null">#{crawlLastTime},</if>
|
||||||
|
<if test="crawlIsStop != null">#{crawlIsStop}</if>
|
||||||
|
)
|
||||||
|
</insert>
|
||||||
|
|
||||||
|
<update id="update" parameterType="com.java2nb.novel.domain.BookDO">
|
||||||
|
update book
|
||||||
|
<set>
|
||||||
|
<if test="workDirection != null">`work_direction` = #{workDirection},</if>
|
||||||
|
<if test="catId != null">`cat_id` = #{catId},</if>
|
||||||
|
<if test="catName != null">`cat_name` = #{catName},</if>
|
||||||
|
<if test="picUrl != null">`pic_url` = #{picUrl},</if>
|
||||||
|
<if test="bookName != null">`book_name` = #{bookName},</if>
|
||||||
|
<if test="authorId != null">`author_id` = #{authorId},</if>
|
||||||
|
<if test="authorName != null">`author_name` = #{authorName},</if>
|
||||||
|
<if test="bookDesc != null">`book_desc` = #{bookDesc},</if>
|
||||||
|
<if test="score != null">`score` = #{score},</if>
|
||||||
|
<if test="bookStatus != null">`book_status` = #{bookStatus},</if>
|
||||||
|
<if test="visitCount != null">`visit_count` = #{visitCount},</if>
|
||||||
|
<if test="wordCount != null">`word_count` = #{wordCount},</if>
|
||||||
|
<if test="commentCount != null">`comment_count` = #{commentCount},</if>
|
||||||
|
<if test="yesterdayBuy != null">`yesterday_buy` = #{yesterdayBuy},</if>
|
||||||
|
<if test="lastIndexId != null">`last_index_id` = #{lastIndexId},</if>
|
||||||
|
<if test="lastIndexName != null">`last_index_name` = #{lastIndexName},</if>
|
||||||
|
<if test="lastIndexUpdateTime != null">`last_index_update_time` = #{lastIndexUpdateTime},</if>
|
||||||
|
<if test="isVip != null">`is_vip` = #{isVip},</if>
|
||||||
|
<if test="status != null">`status` = #{status},</if>
|
||||||
|
<if test="updateTime != null">`update_time` = #{updateTime},</if>
|
||||||
|
<if test="createTime != null">`create_time` = #{createTime},</if>
|
||||||
|
<if test="crawlSourceId != null">`crawl_source_id` = #{crawlSourceId},</if>
|
||||||
|
<if test="crawlBookId != null">`crawl_book_id` = #{crawlBookId},</if>
|
||||||
|
<if test="crawlLastTime != null">`crawl_last_time` = #{crawlLastTime},</if>
|
||||||
|
<if test="crawlIsStop != null">`crawl_is_stop` = #{crawlIsStop}</if>
|
||||||
|
</set>
|
||||||
|
where id = #{id}
|
||||||
|
</update>
|
||||||
|
|
||||||
|
<delete id="remove">
|
||||||
|
delete
|
||||||
|
from book
|
||||||
|
where id = #{value}
|
||||||
|
</delete>
|
||||||
|
|
||||||
|
<delete id="batchRemove">
|
||||||
|
delete from book where id in
|
||||||
|
<foreach item="id" collection="array" open="(" separator="," close=")">
|
||||||
|
#{id}
|
||||||
|
</foreach>
|
||||||
|
</delete>
|
||||||
|
|
||||||
|
<select id="tableSta" resultType="map">
|
||||||
|
SELECT DATE_FORMAT(create_time, "%Y-%m-%d") AS staDate,
|
||||||
|
COUNT(1) bookCount
|
||||||
|
FROM book
|
||||||
|
WHERE create_time >= #{minDate}
|
||||||
|
GROUP BY DATE_FORMAT(create_time, "%Y-%m-%d")
|
||||||
|
ORDER BY staDate
|
||||||
|
</select>
|
||||||
|
|
||||||
</mapper>
|
</mapper>
|
@ -59,220 +59,91 @@ function load() {
|
|||||||
return arguments[2] + 1;
|
return arguments[2] + 1;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
|
||||||
field: 'id',
|
|
||||||
title: '主键'
|
|
||||||
},
|
|
||||||
|
|
||||||
|
{
|
||||||
{
|
field: 'workDirection',
|
||||||
field: 'workDirection',
|
title: '作品方向',
|
||||||
title: '作品方向,0:男频,1:女频'
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
{
|
|
||||||
field: 'catId',
|
|
||||||
title: '分类ID'
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
{
|
|
||||||
field: 'catName',
|
|
||||||
title: '分类名'
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
{
|
|
||||||
field: 'catChildId',
|
|
||||||
title: '子分类ID'
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
{
|
|
||||||
field: 'catChildName',
|
|
||||||
title: '子分类名'
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
{
|
|
||||||
field: 'picUrl',
|
|
||||||
title: '小说封面'
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
{
|
|
||||||
field: 'bookName',
|
|
||||||
title: '小说名'
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
{
|
|
||||||
field: 'heroName',
|
|
||||||
title: '男主角姓名'
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
{
|
|
||||||
field: 'ladyName',
|
|
||||||
title: '女主角姓名'
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
{
|
|
||||||
field: 'bookStyle',
|
|
||||||
title: '作品风格,0:甜宠,1:虐恋,2:其他'
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
{
|
|
||||||
field: 'bookLabel',
|
|
||||||
title: '作品标签'
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
{
|
|
||||||
field: 'authorId',
|
|
||||||
title: '作者id'
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
{
|
|
||||||
field: 'authorName',
|
|
||||||
title: '作者名'
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
{
|
|
||||||
field: 'bookDesc',
|
|
||||||
title: '书籍描述'
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
{
|
|
||||||
field: 'score',
|
|
||||||
title: '评分,预留字段'
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
{
|
|
||||||
field: 'bookStatus',
|
|
||||||
title: '书籍状态,0:连载中,1:已完结'
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
{
|
|
||||||
field: 'visitCount',
|
|
||||||
title: '点击量'
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
{
|
|
||||||
field: 'wordCount',
|
|
||||||
title: '总字数'
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
{
|
|
||||||
field: 'commentCount',
|
|
||||||
title: '评论数'
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
{
|
|
||||||
field: 'yesterdayBuy',
|
|
||||||
title: '昨日订阅数'
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
{
|
|
||||||
field: 'lastIndexId',
|
|
||||||
title: '最新目录ID'
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
{
|
|
||||||
field: 'lastIndexName',
|
|
||||||
title: '最新目录名'
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
{
|
|
||||||
field: 'lastIndexUpdateTime',
|
|
||||||
title: '最新目录更新时间'
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
{
|
|
||||||
field: 'isVip',
|
|
||||||
title: '是否收费,1:收费,0:免费'
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
{
|
|
||||||
field: 'status',
|
|
||||||
title: '状态,0:入库,1:上架'
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
{
|
|
||||||
field: 'updateTime',
|
|
||||||
title: '更新时间'
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
{
|
|
||||||
field: 'createTime',
|
|
||||||
title: '创建时间'
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
{
|
|
||||||
field: 'crawlSourceId',
|
|
||||||
title: '爬虫源站ID'
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
{
|
|
||||||
field: 'crawlBookId',
|
|
||||||
title: '抓取的源站小说ID'
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
{
|
|
||||||
field: 'crawlLastTime',
|
|
||||||
title: '最后一次的抓取时间'
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
{
|
|
||||||
field: 'crawlIsStop',
|
|
||||||
title: '是否已停止更新,0:未停止,1:已停止'
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
{
|
|
||||||
title: '操作',
|
|
||||||
field: 'id',
|
|
||||||
align: 'center',
|
|
||||||
formatter: function (value, row, index) {
|
formatter: function (value, row, index) {
|
||||||
var d = '<a class="btn btn-primary btn-sm ' + s_detail_h + '" href="#" mce_href="#" title="详情" onclick="detail(\''
|
return value === 0 ? '男频' : '女频';
|
||||||
+ row.id
|
|
||||||
+ '\')"><i class="fa fa-file"></i></a> ';
|
|
||||||
var e = '<a class="btn btn-primary btn-sm ' + s_edit_h + '" href="#" mce_href="#" title="编辑" onclick="edit(\''
|
|
||||||
+ row.id
|
|
||||||
+ '\')"><i class="fa fa-edit"></i></a> ';
|
|
||||||
var r = '<a class="btn btn-warning btn-sm ' + s_remove_h + '" href="#" title="删除" mce_href="#" onclick="remove(\''
|
|
||||||
+ row.id
|
|
||||||
+ '\')"><i class="fa fa-remove"></i></a> ';
|
|
||||||
return d + e + r;
|
|
||||||
}
|
}
|
||||||
}]
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
field: 'catName',
|
||||||
|
title: '分类名'
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
field: 'bookName',
|
||||||
|
title: '小说名'
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
field: 'authorName',
|
||||||
|
title: '作者名'
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
field: 'bookStatus',
|
||||||
|
title: '书籍状态',
|
||||||
|
formatter: function (value, row, index) {
|
||||||
|
return value === 0 ? '连载中' : '已完结';
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
field: 'visitCount',
|
||||||
|
title: '点击量'
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
field: 'wordCount',
|
||||||
|
title: '总字数'
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
field: 'commentCount',
|
||||||
|
title: '评论数'
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
field: 'yesterdayBuy',
|
||||||
|
title: '昨日订阅数'
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
field: 'lastIndexName',
|
||||||
|
title: '最新章节'
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
{
|
||||||
|
field: 'lastIndexUpdateTime',
|
||||||
|
title: '最新章节更新时间'
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
{
|
||||||
|
field: 'isVip',
|
||||||
|
title: '是否收费',
|
||||||
|
formatter: function (value, row, index) {
|
||||||
|
return value === 1 ? '收费' : '免费';
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
field: 'createTime',
|
||||||
|
title: '入库时间'
|
||||||
|
}
|
||||||
|
|
||||||
|
]
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
function reLoad() {
|
function reLoad() {
|
||||||
$('#exampleTable').bootstrapTable('refresh');
|
$('#exampleTable').bootstrapTable('refresh');
|
||||||
}
|
}
|
||||||
|
|
||||||
function add() {
|
function add() {
|
||||||
layer.open({
|
layer.open({
|
||||||
type: 2,
|
type: 2,
|
||||||
@ -283,6 +154,7 @@ function add() {
|
|||||||
content: prefix + '/add' // iframe的url
|
content: prefix + '/add' // iframe的url
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
function detail(id) {
|
function detail(id) {
|
||||||
layer.open({
|
layer.open({
|
||||||
type: 2,
|
type: 2,
|
||||||
@ -293,6 +165,7 @@ function detail(id) {
|
|||||||
content: prefix + '/detail/' + id // iframe的url
|
content: prefix + '/detail/' + id // iframe的url
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
function edit(id) {
|
function edit(id) {
|
||||||
layer.open({
|
layer.open({
|
||||||
type: 2,
|
type: 2,
|
||||||
@ -303,6 +176,7 @@ function edit(id) {
|
|||||||
content: prefix + '/edit/' + id // iframe的url
|
content: prefix + '/edit/' + id // iframe的url
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
function remove(id) {
|
function remove(id) {
|
||||||
layer.confirm('确定要删除选中的记录?', {
|
layer.confirm('确定要删除选中的记录?', {
|
||||||
btn: ['确定', '取消']
|
btn: ['确定', '取消']
|
||||||
@ -327,6 +201,7 @@ function remove(id) {
|
|||||||
|
|
||||||
function resetPwd(id) {
|
function resetPwd(id) {
|
||||||
}
|
}
|
||||||
|
|
||||||
function batchRemove() {
|
function batchRemove() {
|
||||||
var rows = $('#exampleTable').bootstrapTable('getSelections'); // 返回所有选择的行,当没有选择的记录时,返回一个空数组
|
var rows = $('#exampleTable').bootstrapTable('getSelections'); // 返回所有选择的行,当没有选择的记录时,返回一个空数组
|
||||||
if (rows.length == 0) {
|
if (rows.length == 0) {
|
||||||
|
@ -10,28 +10,142 @@
|
|||||||
<link rel="stylesheet" href="/layuimini/lib/font-awesome-4.7.0/css/font-awesome.min.css" media="all">
|
<link rel="stylesheet" href="/layuimini/lib/font-awesome-4.7.0/css/font-awesome.min.css" media="all">
|
||||||
<link rel="stylesheet" href="/layuimini/css/public.css" media="all">
|
<link rel="stylesheet" href="/layuimini/css/public.css" media="all">
|
||||||
<style>
|
<style>
|
||||||
.layui-card {border:1px solid #f2f2f2;border-radius:5px;}
|
.layui-card {
|
||||||
.icon {margin-right:10px;color:#1aa094;}
|
border: 1px solid #f2f2f2;
|
||||||
.icon-cray {color:#ffb800!important;}
|
border-radius: 5px;
|
||||||
.icon-blue {color:#1e9fff!important;}
|
}
|
||||||
.icon-tip {color:#ff5722!important;}
|
|
||||||
.layuimini-qiuck-module {text-align:center;margin-top: 10px}
|
.icon {
|
||||||
.layuimini-qiuck-module a i {display:inline-block;width:100%;height:60px;line-height:60px;text-align:center;border-radius:2px;font-size:30px;background-color:#F8F8F8;color:#333;transition:all .3s;-webkit-transition:all .3s;}
|
margin-right: 10px;
|
||||||
.layuimini-qiuck-module a cite {position:relative;top:2px;display:block;color:#666;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-size:14px;}
|
color: #1aa094;
|
||||||
.welcome-module {width:100%;height:210px;}
|
}
|
||||||
.panel {background-color:#fff;border:1px solid transparent;border-radius:3px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.05);box-shadow:0 1px 1px rgba(0,0,0,.05)}
|
|
||||||
.panel-body {padding:10px}
|
.icon-cray {
|
||||||
.panel-title {margin-top:0;margin-bottom:0;font-size:12px;color:inherit}
|
color: #ffb800 !important;
|
||||||
.label {display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em;margin-top: .3em;}
|
}
|
||||||
.layui-red {color:red}
|
|
||||||
.main_btn > p {height:40px;}
|
.icon-blue {
|
||||||
.layui-bg-number {background-color:#F8F8F8;}
|
color: #1e9fff !important;
|
||||||
.layuimini-notice:hover {background:#f6f6f6;}
|
}
|
||||||
.layuimini-notice {padding:7px 16px;clear:both;font-size:12px !important;cursor:pointer;position:relative;transition:background 0.2s ease-in-out;}
|
|
||||||
.layuimini-notice-title,.layuimini-notice-label {
|
.icon-tip {
|
||||||
padding-right: 70px !important;text-overflow:ellipsis!important;overflow:hidden!important;white-space:nowrap!important;}
|
color: #ff5722 !important;
|
||||||
.layuimini-notice-title {line-height:28px;font-size:14px;}
|
}
|
||||||
.layuimini-notice-extra {position:absolute;top:50%;margin-top:-8px;right:16px;display:inline-block;height:16px;color:#999;}
|
|
||||||
|
.layuimini-qiuck-module {
|
||||||
|
text-align: center;
|
||||||
|
margin-top: 10px
|
||||||
|
}
|
||||||
|
|
||||||
|
.layuimini-qiuck-module a i {
|
||||||
|
display: inline-block;
|
||||||
|
width: 100%;
|
||||||
|
height: 60px;
|
||||||
|
line-height: 60px;
|
||||||
|
text-align: center;
|
||||||
|
border-radius: 2px;
|
||||||
|
font-size: 30px;
|
||||||
|
background-color: #F8F8F8;
|
||||||
|
color: #333;
|
||||||
|
transition: all .3s;
|
||||||
|
-webkit-transition: all .3s;
|
||||||
|
}
|
||||||
|
|
||||||
|
.layuimini-qiuck-module a cite {
|
||||||
|
position: relative;
|
||||||
|
top: 2px;
|
||||||
|
display: block;
|
||||||
|
color: #666;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
overflow: hidden;
|
||||||
|
white-space: nowrap;
|
||||||
|
font-size: 14px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.welcome-module {
|
||||||
|
width: 100%;
|
||||||
|
height: 210px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.panel {
|
||||||
|
background-color: #fff;
|
||||||
|
border: 1px solid transparent;
|
||||||
|
border-radius: 3px;
|
||||||
|
-webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .05);
|
||||||
|
box-shadow: 0 1px 1px rgba(0, 0, 0, .05)
|
||||||
|
}
|
||||||
|
|
||||||
|
.panel-body {
|
||||||
|
padding: 10px
|
||||||
|
}
|
||||||
|
|
||||||
|
.panel-title {
|
||||||
|
margin-top: 0;
|
||||||
|
margin-bottom: 0;
|
||||||
|
font-size: 12px;
|
||||||
|
color: inherit
|
||||||
|
}
|
||||||
|
|
||||||
|
.label {
|
||||||
|
display: inline;
|
||||||
|
padding: .2em .6em .3em;
|
||||||
|
font-size: 75%;
|
||||||
|
font-weight: 700;
|
||||||
|
line-height: 1;
|
||||||
|
color: #fff;
|
||||||
|
text-align: center;
|
||||||
|
white-space: nowrap;
|
||||||
|
vertical-align: baseline;
|
||||||
|
border-radius: .25em;
|
||||||
|
margin-top: .3em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.layui-red {
|
||||||
|
color: red
|
||||||
|
}
|
||||||
|
|
||||||
|
.main_btn > p {
|
||||||
|
height: 40px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.layui-bg-number {
|
||||||
|
background-color: #F8F8F8;
|
||||||
|
}
|
||||||
|
|
||||||
|
.layuimini-notice:hover {
|
||||||
|
background: #f6f6f6;
|
||||||
|
}
|
||||||
|
|
||||||
|
.layuimini-notice {
|
||||||
|
padding: 7px 16px;
|
||||||
|
clear: both;
|
||||||
|
font-size: 12px !important;
|
||||||
|
cursor: pointer;
|
||||||
|
position: relative;
|
||||||
|
transition: background 0.2s ease-in-out;
|
||||||
|
}
|
||||||
|
|
||||||
|
.layuimini-notice-title, .layuimini-notice-label {
|
||||||
|
padding-right: 70px !important;
|
||||||
|
text-overflow: ellipsis !important;
|
||||||
|
overflow: hidden !important;
|
||||||
|
white-space: nowrap !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.layuimini-notice-title {
|
||||||
|
line-height: 28px;
|
||||||
|
font-size: 14px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.layuimini-notice-extra {
|
||||||
|
position: absolute;
|
||||||
|
top: 50%;
|
||||||
|
margin-top: -8px;
|
||||||
|
right: 16px;
|
||||||
|
display: inline-block;
|
||||||
|
height: 16px;
|
||||||
|
color: #999;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
@ -133,7 +247,7 @@
|
|||||||
<tr>
|
<tr>
|
||||||
<td>项目名称</td>
|
<td>项目名称</td>
|
||||||
<td>
|
<td>
|
||||||
小说精品屋
|
novel
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
@ -142,21 +256,25 @@
|
|||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>主要特色</td>
|
<td>主要特色</td>
|
||||||
<td>小说 / 漫画 / 自适应 / 弹幕 / 采集</td>
|
<td>Spring Boot 3 / Vue 3 / 项目实战 / 保姆级教程</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>下载地址</td>
|
<td>下载地址</td>
|
||||||
<td>
|
<td>
|
||||||
<a href="https://gitee.com/novel_dev_team/fiction_house" target="_blank">Gitee</a> /
|
<a href="https://gitee.com/novel_dev_team/novel" target="_blank">Gitee</a> /
|
||||||
<a href="https://github.com/201206030/fiction_house" target="_blank">Github</a>
|
<a href="https://github.com/201206030/novel" target="_blank">Github</a>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>Gitee</td>
|
<td>Gitee</td>
|
||||||
<td style="padding-bottom: 0;">
|
<td style="padding-bottom: 0;">
|
||||||
<div class="layui-btn-container">
|
<div class="layui-btn-container">
|
||||||
<a href='https://gitee.com/novel_dev_team/fiction_house/stargazers'><img src='https://gitee.com/novel_dev_team/fiction_house/badge/star.svg?theme=dark' alt='star'></img></a>
|
<a href='https://gitee.com/novel_dev_team/novel/stargazers'><img
|
||||||
<a href='https://gitee.com/novel_dev_team/fiction_house/members'><img src='https://gitee.com/novel_dev_team/fiction_house/badge/fork.svg?theme=dark' alt='fork'></img></a>
|
src='https://gitee.com/novel_dev_team/novel/badge/star.svg?theme=dark'
|
||||||
|
alt='star'></img></a>
|
||||||
|
<a href='https://gitee.com/novel_dev_team/novel/members'><img
|
||||||
|
src='https://gitee.com/novel_dev_team/novel/badge/fork.svg?theme=dark'
|
||||||
|
alt='fork'></img></a>
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@ -164,8 +282,10 @@
|
|||||||
<td>Github</td>
|
<td>Github</td>
|
||||||
<td style="padding-bottom: 0;">
|
<td style="padding-bottom: 0;">
|
||||||
<div class="layui-btn-container">
|
<div class="layui-btn-container">
|
||||||
<iframe src="https://ghbtns.com/github-btn.html?user=201206030&repo=fiction_house&type=star&count=true" frameborder="0" scrolling="0" width="110px" height="20px"></iframe>
|
<iframe src="https://ghbtns.com/github-btn.html?user=201206030&repo=novel&type=star&count=true"
|
||||||
<iframe src="https://ghbtns.com/github-btn.html?user=201206030&repo=fiction_house&type=fork&count=true" frameborder="0" scrolling="0" width="101px" height="20px"></iframe>
|
frameborder="0" scrolling="0" width="110px" height="20px"></iframe>
|
||||||
|
<iframe src="https://ghbtns.com/github-btn.html?user=201206030&repo=novel&type=fork&count=true"
|
||||||
|
frameborder="0" scrolling="0" width="101px" height="20px"></iframe>
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@ -186,7 +306,7 @@
|
|||||||
<tr>
|
<tr>
|
||||||
<td>项目名称</td>
|
<td>项目名称</td>
|
||||||
<td>
|
<td>
|
||||||
小说精品屋-plus
|
novel-plus
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
@ -208,8 +328,12 @@
|
|||||||
<td>Gitee</td>
|
<td>Gitee</td>
|
||||||
<td style="padding-bottom: 0;">
|
<td style="padding-bottom: 0;">
|
||||||
<div class="layui-btn-container">
|
<div class="layui-btn-container">
|
||||||
<a href='https://gitee.com/novel_dev_team/novel-plus/stargazers'><img src='https://gitee.com/novel_dev_team/novel-plus/badge/star.svg?theme=dark' alt='star'></img></a>
|
<a href='https://gitee.com/novel_dev_team/novel-plus/stargazers'><img
|
||||||
<a href='https://gitee.com/novel_dev_team/novel-plus/members'><img src='https://gitee.com/novel_dev_team/novel-plus/badge/fork.svg?theme=dark' alt='fork'></img></a>
|
src='https://gitee.com/novel_dev_team/novel-plus/badge/star.svg?theme=dark'
|
||||||
|
alt='star'></img></a>
|
||||||
|
<a href='https://gitee.com/novel_dev_team/novel-plus/members'><img
|
||||||
|
src='https://gitee.com/novel_dev_team/novel-plus/badge/fork.svg?theme=dark'
|
||||||
|
alt='fork'></img></a>
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@ -217,8 +341,10 @@
|
|||||||
<td>Github</td>
|
<td>Github</td>
|
||||||
<td style="padding-bottom: 0;">
|
<td style="padding-bottom: 0;">
|
||||||
<div class="layui-btn-container">
|
<div class="layui-btn-container">
|
||||||
<iframe src="https://ghbtns.com/github-btn.html?user=201206030&repo=novel-plus&type=star&count=true" frameborder="0" scrolling="0" width="110px" height="20px"></iframe>
|
<iframe src="https://ghbtns.com/github-btn.html?user=201206030&repo=novel-plus&type=star&count=true"
|
||||||
<iframe src="https://ghbtns.com/github-btn.html?user=201206030&repo=novel-plus&type=fork&count=true" frameborder="0" scrolling="0" width="101px" height="20px"></iframe>
|
frameborder="0" scrolling="0" width="110px" height="20px"></iframe>
|
||||||
|
<iframe src="https://ghbtns.com/github-btn.html?user=201206030&repo=novel-plus&type=fork&count=true"
|
||||||
|
frameborder="0" scrolling="0" width="101px" height="20px"></iframe>
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@ -239,7 +365,7 @@
|
|||||||
<tr>
|
<tr>
|
||||||
<td>项目名称</td>
|
<td>项目名称</td>
|
||||||
<td>
|
<td>
|
||||||
小说精品屋-微服务版
|
novel-cloud
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
@ -248,7 +374,7 @@
|
|||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>主要特色</td>
|
<td>主要特色</td>
|
||||||
<td>SpringCloudAlibaba / Redis / RabbitMq / ElasticSearch / Sharding-Jdbc / Docker</td>
|
<td>微服务 / Spring Cloud 2022 / Spring Cloud Alibaba 2022</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>下载地址</td>
|
<td>下载地址</td>
|
||||||
@ -261,8 +387,12 @@
|
|||||||
<td>Gitee</td>
|
<td>Gitee</td>
|
||||||
<td style="padding-bottom: 0;">
|
<td style="padding-bottom: 0;">
|
||||||
<div class="layui-btn-container">
|
<div class="layui-btn-container">
|
||||||
<a href='https://gitee.com/novel_dev_team/novel-cloud/stargazers'><img src='https://gitee.com/novel_dev_team/novel-cloud/badge/star.svg?theme=dark' alt='star'></img></a>
|
<a href='https://gitee.com/novel_dev_team/novel-cloud/stargazers'><img
|
||||||
<a href='https://gitee.com/novel_dev_team/novel-cloud/members'><img src='https://gitee.com/novel_dev_team/novel-cloud/badge/fork.svg?theme=dark' alt='fork'></img></a>
|
src='https://gitee.com/novel_dev_team/novel-cloud/badge/star.svg?theme=dark'
|
||||||
|
alt='star'></img></a>
|
||||||
|
<a href='https://gitee.com/novel_dev_team/novel-cloud/members'><img
|
||||||
|
src='https://gitee.com/novel_dev_team/novel-cloud/badge/fork.svg?theme=dark'
|
||||||
|
alt='fork'></img></a>
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@ -270,8 +400,10 @@
|
|||||||
<td>Github</td>
|
<td>Github</td>
|
||||||
<td style="padding-bottom: 0;">
|
<td style="padding-bottom: 0;">
|
||||||
<div class="layui-btn-container">
|
<div class="layui-btn-container">
|
||||||
<iframe src="https://ghbtns.com/github-btn.html?user=201206030&repo=novel-cloud&type=star&count=true" frameborder="0" scrolling="0" width="110px" height="20px"></iframe>
|
<iframe src="https://ghbtns.com/github-btn.html?user=201206030&repo=novel-cloud&type=star&count=true"
|
||||||
<iframe src="https://ghbtns.com/github-btn.html?user=201206030&repo=novel-cloud&type=fork&count=true" frameborder="0" scrolling="0" width="101px" height="20px"></iframe>
|
frameborder="0" scrolling="0" width="110px" height="20px"></iframe>
|
||||||
|
<iframe src="https://ghbtns.com/github-btn.html?user=201206030&repo=novel-cloud&type=fork&count=true"
|
||||||
|
frameborder="0" scrolling="0" width="101px" height="20px"></iframe>
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@ -303,7 +435,7 @@
|
|||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
layui.use(['layer', 'layuimini','echarts'], function () {
|
layui.use(['layer', 'layuimini', 'echarts'], function () {
|
||||||
var $ = layui.jquery,
|
var $ = layui.jquery,
|
||||||
layer = layui.layer,
|
layer = layui.layer,
|
||||||
layuimini = layui.layuimini,
|
layuimini = layui.layuimini,
|
||||||
@ -322,14 +454,14 @@
|
|||||||
'</div>\n';
|
'</div>\n';
|
||||||
parent.layer.open({
|
parent.layer.open({
|
||||||
type: 1,
|
type: 1,
|
||||||
title: '系统公告'+'<span style="float: right;right: 1px;font-size: 12px;color: #b1b3b9;margin-top: 1px">'+noticeTime+'</span>',
|
title: '系统公告' + '<span style="float: right;right: 1px;font-size: 12px;color: #b1b3b9;margin-top: 1px">' + noticeTime + '</span>',
|
||||||
area: '300px;',
|
area: '300px;',
|
||||||
shade: 0.8,
|
shade: 0.8,
|
||||||
id: 'layuimini-notice',
|
id: 'layuimini-notice',
|
||||||
btn: ['查看', '取消'],
|
btn: ['查看', '取消'],
|
||||||
btnAlign: 'c',
|
btnAlign: 'c',
|
||||||
moveType: 1,
|
moveType: 1,
|
||||||
content:html,
|
content: html,
|
||||||
success: function (layero) {
|
success: function (layero) {
|
||||||
var btn = layero.find('.layui-layer-btn');
|
var btn = layero.find('.layui-layer-btn');
|
||||||
btn.find('.layui-layer-btn0').attr({
|
btn.find('.layui-layer-btn0').attr({
|
||||||
@ -349,52 +481,51 @@
|
|||||||
data: {},
|
data: {},
|
||||||
success: function (r) {
|
success: function (r) {
|
||||||
if (r.code == 0) {
|
if (r.code == 0) {
|
||||||
var legendData = ['会员新增','作家新增','作品新增','交易新增'];
|
var legendData = ['会员新增', '作家新增', '作品新增', '交易新增'];
|
||||||
var userSeries = [
|
var userSeries = [
|
||||||
{
|
{
|
||||||
name:'会员新增',
|
name: '会员新增',
|
||||||
type:'line',
|
type: 'line',
|
||||||
data:[]
|
data: []
|
||||||
},{
|
}, {
|
||||||
name:'作家新增',
|
name: '作家新增',
|
||||||
type:'line',
|
type: 'line',
|
||||||
data:[]
|
data: []
|
||||||
},{
|
}, {
|
||||||
name:'作品新增',
|
name: '作品新增',
|
||||||
type:'line',
|
type: 'line',
|
||||||
data:[]
|
data: []
|
||||||
},{
|
}, {
|
||||||
name:'交易新增',
|
name: '交易新增',
|
||||||
type:'line',
|
type: 'line',
|
||||||
data:[]
|
data: []
|
||||||
}];
|
}];
|
||||||
var xAxisData = r.dateList;
|
var xAxisData = r.dateList;
|
||||||
var userTableSta = r.userTableSta;
|
var userTableSta = r.userTableSta;
|
||||||
for(var i = 0 ; i < xAxisData.length ; i++){
|
for (var i = 0; i < xAxisData.length; i++) {
|
||||||
userSeries[0].data[i] = userTableSta[xAxisData[i]] ? userTableSta[xAxisData[i]] : 0;
|
userSeries[0].data[i] = userTableSta[xAxisData[i]] ? userTableSta[xAxisData[i]] : 0;
|
||||||
}
|
}
|
||||||
var authorTableSta = r.authorTableSta;
|
var authorTableSta = r.authorTableSta;
|
||||||
for(var i = 0 ; i < xAxisData.length ; i++){
|
for (var i = 0; i < xAxisData.length; i++) {
|
||||||
userSeries[1].data[i] = authorTableSta[xAxisData[i]] ? authorTableSta[xAxisData[i]] : 0;
|
userSeries[1].data[i] = authorTableSta[xAxisData[i]] ? authorTableSta[xAxisData[i]] : 0;
|
||||||
}
|
}
|
||||||
var bookTableSta = r.bookTableSta;
|
var bookTableSta = r.bookTableSta;
|
||||||
for(var i = 0 ; i < xAxisData.length ; i++){
|
for (var i = 0; i < xAxisData.length; i++) {
|
||||||
userSeries[2].data[i] = bookTableSta[xAxisData[i]] ? bookTableSta[xAxisData[i]] : 0;
|
userSeries[2].data[i] = bookTableSta[xAxisData[i]] ? bookTableSta[xAxisData[i]] : 0;
|
||||||
}
|
}
|
||||||
var orderTableSta = r.orderTableSta;
|
var orderTableSta = r.orderTableSta;
|
||||||
for(var i = 0 ; i < xAxisData.length ; i++){
|
for (var i = 0; i < xAxisData.length; i++) {
|
||||||
userSeries[3].data[i] = orderTableSta[xAxisData[i]] ? orderTableSta[xAxisData[i]] : 0;
|
userSeries[3].data[i] = orderTableSta[xAxisData[i]] ? orderTableSta[xAxisData[i]] : 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
var echartsRecords = echarts.init(document.getElementById('echarts-records'), 'walden');
|
var echartsRecords = echarts.init(document.getElementById('echarts-records'), 'walden');
|
||||||
var optionRecords = {
|
var optionRecords = {
|
||||||
tooltip: {
|
tooltip: {
|
||||||
trigger: 'axis'
|
trigger: 'axis'
|
||||||
},
|
},
|
||||||
legend: {
|
legend: {
|
||||||
data:legendData
|
data: legendData
|
||||||
},
|
},
|
||||||
grid: {
|
grid: {
|
||||||
left: '3%',
|
left: '3%',
|
||||||
@ -420,7 +551,7 @@
|
|||||||
echartsRecords.setOption(optionRecords);
|
echartsRecords.setOption(optionRecords);
|
||||||
|
|
||||||
// echarts 窗口缩放自适应
|
// echarts 窗口缩放自适应
|
||||||
window.onresize = function(){
|
window.onresize = function () {
|
||||||
echartsRecords.resize();
|
echartsRecords.resize();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -9,294 +9,294 @@
|
|||||||
<div class="ibox float-e-margins">
|
<div class="ibox float-e-margins">
|
||||||
<div class="ibox-content">
|
<div class="ibox-content">
|
||||||
<form class="form-horizontal m-t" id="signupForm">
|
<form class="form-horizontal m-t" id="signupForm">
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col-sm-3 control-label">作品方向,0:男频,1:女频:</label>
|
<label class="col-sm-3 control-label">作品方向,0:男频,1:女频:</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input id="workDirection" name="workDirection"
|
<input id="workDirection" name="workDirection"
|
||||||
class="form-control"
|
class="form-control"
|
||||||
type="text">
|
type="text">
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col-sm-3 control-label">分类ID:</label>
|
<label class="col-sm-3 control-label">分类ID:</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input id="catId" name="catId"
|
<input id="catId" name="catId"
|
||||||
class="form-control"
|
class="form-control"
|
||||||
type="text">
|
type="text">
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col-sm-3 control-label">分类名:</label>
|
<label class="col-sm-3 control-label">分类名:</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input id="catName" name="catName"
|
<input id="catName" name="catName"
|
||||||
class="form-control"
|
class="form-control"
|
||||||
type="text">
|
type="text">
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col-sm-3 control-label">子分类ID:</label>
|
<label class="col-sm-3 control-label">子分类ID:</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input id="catChildId" name="catChildId"
|
<input id="catChildId" name="catChildId"
|
||||||
class="form-control"
|
class="form-control"
|
||||||
type="text">
|
type="text">
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col-sm-3 control-label">子分类名:</label>
|
<label class="col-sm-3 control-label">子分类名:</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input id="catChildName" name="catChildName"
|
<input id="catChildName" name="catChildName"
|
||||||
class="form-control"
|
class="form-control"
|
||||||
type="text">
|
type="text">
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col-sm-3 control-label">小说封面:</label>
|
<label class="col-sm-3 control-label">小说封面:</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input id="picUrl" name="picUrl"
|
<input id="picUrl" name="picUrl"
|
||||||
class="form-control"
|
class="form-control"
|
||||||
type="text">
|
type="text">
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col-sm-3 control-label">小说名:</label>
|
<label class="col-sm-3 control-label">小说名:</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input id="bookName" name="bookName"
|
<input id="bookName" name="bookName"
|
||||||
class="form-control"
|
class="form-control"
|
||||||
type="text">
|
type="text">
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col-sm-3 control-label">男主角姓名:</label>
|
<label class="col-sm-3 control-label">男主角姓名:</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input id="heroName" name="heroName"
|
<input id="heroName" name="heroName"
|
||||||
class="form-control"
|
class="form-control"
|
||||||
type="text">
|
type="text">
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col-sm-3 control-label">女主角姓名:</label>
|
<label class="col-sm-3 control-label">女主角姓名:</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input id="ladyName" name="ladyName"
|
<input id="ladyName" name="ladyName"
|
||||||
class="form-control"
|
class="form-control"
|
||||||
type="text">
|
type="text">
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col-sm-3 control-label">作品风格,0:甜宠,1:虐恋,2:其他:</label>
|
<label class="col-sm-3 control-label">作品风格,0:甜宠,1:虐恋,2:其他:</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input id="bookStyle" name="bookStyle"
|
<input id="bookStyle" name="bookStyle"
|
||||||
class="form-control"
|
class="form-control"
|
||||||
type="text">
|
type="text">
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col-sm-3 control-label">作品标签:</label>
|
<label class="col-sm-3 control-label">作品标签:</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input id="bookLabel" name="bookLabel"
|
<input id="bookLabel" name="bookLabel"
|
||||||
class="form-control"
|
class="form-control"
|
||||||
type="text">
|
type="text">
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col-sm-3 control-label">作者id:</label>
|
<label class="col-sm-3 control-label">作者id:</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input id="authorId" name="authorId"
|
<input id="authorId" name="authorId"
|
||||||
class="form-control"
|
class="form-control"
|
||||||
type="text">
|
type="text">
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col-sm-3 control-label">作者名:</label>
|
<label class="col-sm-3 control-label">作者名:</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input id="authorName" name="authorName"
|
<input id="authorName" name="authorName"
|
||||||
class="form-control"
|
class="form-control"
|
||||||
type="text">
|
type="text">
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col-sm-3 control-label">书籍描述:</label>
|
<label class="col-sm-3 control-label">书籍描述:</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input id="bookDesc" name="bookDesc"
|
<input id="bookDesc" name="bookDesc"
|
||||||
class="form-control"
|
class="form-control"
|
||||||
type="text">
|
type="text">
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col-sm-3 control-label">评分,预留字段:</label>
|
<label class="col-sm-3 control-label">评分,预留字段:</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input id="score" name="score"
|
<input id="score" name="score"
|
||||||
class="form-control"
|
class="form-control"
|
||||||
type="text">
|
type="text">
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col-sm-3 control-label">书籍状态,0:连载中,1:已完结:</label>
|
<label class="col-sm-3 control-label">书籍状态,0:连载中,1:已完结:</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input id="bookStatus" name="bookStatus"
|
<input id="bookStatus" name="bookStatus"
|
||||||
class="form-control"
|
class="form-control"
|
||||||
type="text">
|
type="text">
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col-sm-3 control-label">点击量:</label>
|
<label class="col-sm-3 control-label">点击量:</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input id="visitCount" name="visitCount"
|
<input id="visitCount" name="visitCount"
|
||||||
class="form-control"
|
class="form-control"
|
||||||
type="text">
|
type="text">
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col-sm-3 control-label">总字数:</label>
|
<label class="col-sm-3 control-label">总字数:</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input id="wordCount" name="wordCount"
|
<input id="wordCount" name="wordCount"
|
||||||
class="form-control"
|
class="form-control"
|
||||||
type="text">
|
type="text">
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col-sm-3 control-label">评论数:</label>
|
<label class="col-sm-3 control-label">评论数:</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input id="commentCount" name="commentCount"
|
<input id="commentCount" name="commentCount"
|
||||||
class="form-control"
|
class="form-control"
|
||||||
type="text">
|
type="text">
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col-sm-3 control-label">昨日订阅数:</label>
|
<label class="col-sm-3 control-label">昨日订阅数:</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input id="yesterdayBuy" name="yesterdayBuy"
|
<input id="yesterdayBuy" name="yesterdayBuy"
|
||||||
class="form-control"
|
class="form-control"
|
||||||
type="text">
|
type="text">
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col-sm-3 control-label">最新目录ID:</label>
|
<label class="col-sm-3 control-label">最新目录ID:</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input id="lastIndexId" name="lastIndexId"
|
<input id="lastIndexId" name="lastIndexId"
|
||||||
class="form-control"
|
class="form-control"
|
||||||
type="text">
|
type="text">
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col-sm-3 control-label">最新目录名:</label>
|
<label class="col-sm-3 control-label">最新目录名:</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input id="lastIndexName" name="lastIndexName"
|
<input id="lastIndexName" name="lastIndexName"
|
||||||
class="form-control"
|
class="form-control"
|
||||||
type="text">
|
type="text">
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col-sm-3 control-label">最新目录更新时间:</label>
|
<label class="col-sm-3 control-label">最新目录更新时间:</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input type="text" class="laydate-icon layer-date form-control"
|
<input type="text" class="laydate-icon layer-date form-control"
|
||||||
id="lastIndexUpdateTime"
|
id="lastIndexUpdateTime"
|
||||||
name="lastIndexUpdateTime"
|
name="lastIndexUpdateTime"
|
||||||
onclick="laydate({istime: true, format: 'YYYY-MM-DD hh:mm:ss'})"
|
onclick="laydate({istime: true, format: 'YYYY-MM-DD hh:mm:ss'})"
|
||||||
style="background-color: #fff;" readonly="readonly"/>
|
style="background-color: #fff;" readonly="readonly"/>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col-sm-3 control-label">是否收费,1:收费,0:免费:</label>
|
<label class="col-sm-3 control-label">是否收费,1:收费,0:免费:</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input id="isVip" name="isVip"
|
<input id="isVip" name="isVip"
|
||||||
class="form-control"
|
class="form-control"
|
||||||
type="text">
|
type="text">
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col-sm-3 control-label">状态,0:入库,1:上架:</label>
|
<label class="col-sm-3 control-label">状态,0:入库,1:上架:</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input id="status" name="status"
|
<input id="status" name="status"
|
||||||
class="form-control"
|
class="form-control"
|
||||||
type="text">
|
type="text">
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col-sm-3 control-label">更新时间:</label>
|
<label class="col-sm-3 control-label">更新时间:</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input type="text" class="laydate-icon layer-date form-control"
|
<input type="text" class="laydate-icon layer-date form-control"
|
||||||
id="updateTime"
|
id="updateTime"
|
||||||
name="updateTime"
|
name="updateTime"
|
||||||
onclick="laydate({istime: true, format: 'YYYY-MM-DD hh:mm:ss'})"
|
onclick="laydate({istime: true, format: 'YYYY-MM-DD hh:mm:ss'})"
|
||||||
style="background-color: #fff;" readonly="readonly"/>
|
style="background-color: #fff;" readonly="readonly"/>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col-sm-3 control-label">创建时间:</label>
|
<label class="col-sm-3 control-label">创建时间:</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input type="text" class="laydate-icon layer-date form-control"
|
<input type="text" class="laydate-icon layer-date form-control"
|
||||||
id="createTime"
|
id="createTime"
|
||||||
name="createTime"
|
name="createTime"
|
||||||
onclick="laydate({istime: true, format: 'YYYY-MM-DD hh:mm:ss'})"
|
onclick="laydate({istime: true, format: 'YYYY-MM-DD hh:mm:ss'})"
|
||||||
style="background-color: #fff;" readonly="readonly"/>
|
style="background-color: #fff;" readonly="readonly"/>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col-sm-3 control-label">爬虫源站ID:</label>
|
<label class="col-sm-3 control-label">爬虫源站ID:</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input id="crawlSourceId" name="crawlSourceId"
|
<input id="crawlSourceId" name="crawlSourceId"
|
||||||
class="form-control"
|
class="form-control"
|
||||||
type="text">
|
type="text">
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col-sm-3 control-label">抓取的源站小说ID:</label>
|
<label class="col-sm-3 control-label">抓取的源站小说ID:</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input id="crawlBookId" name="crawlBookId"
|
<input id="crawlBookId" name="crawlBookId"
|
||||||
class="form-control"
|
class="form-control"
|
||||||
type="text">
|
type="text">
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col-sm-3 control-label">最后一次的抓取时间:</label>
|
<label class="col-sm-3 control-label">最后一次的抓取时间:</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input type="text" class="laydate-icon layer-date form-control"
|
<input type="text" class="laydate-icon layer-date form-control"
|
||||||
id="crawlLastTime"
|
id="crawlLastTime"
|
||||||
name="crawlLastTime"
|
name="crawlLastTime"
|
||||||
onclick="laydate({istime: true, format: 'YYYY-MM-DD hh:mm:ss'})"
|
onclick="laydate({istime: true, format: 'YYYY-MM-DD hh:mm:ss'})"
|
||||||
style="background-color: #fff;" readonly="readonly"/>
|
style="background-color: #fff;" readonly="readonly"/>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="col-sm-3 control-label">是否已停止更新,0:未停止,1:已停止:</label>
|
<label class="col-sm-3 control-label">是否已停止更新,0:未停止,1:已停止:</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
<input id="crawlIsStop" name="crawlIsStop"
|
<input id="crawlIsStop" name="crawlIsStop"
|
||||||
class="form-control"
|
class="form-control"
|
||||||
type="text">
|
type="text">
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<div class="col-sm-8 col-sm-offset-3">
|
<div class="col-sm-8 col-sm-offset-3">
|
||||||
<button type="submit" class="btn btn-primary">提交</button>
|
<button type="submit" class="btn btn-primary">提交</button>
|
||||||
</div>
|
</div>
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
<div class="ibox">
|
<div class="ibox">
|
||||||
<div class="ibox-body">
|
<div class="ibox-body">
|
||||||
<div class="fixed-table-toolbar">
|
<div class="fixed-table-toolbar">
|
||||||
<div class="columns pull-left">
|
<!--<div class="columns pull-left">
|
||||||
<button shiro:hasPermission="novel:book:add" type="button"
|
<button shiro:hasPermission="novel:book:add" type="button"
|
||||||
class="btn btn-primary" onclick="add()">
|
class="btn btn-primary" onclick="add()">
|
||||||
<i class="fa fa-plus" aria-hidden="true"></i>添加
|
<i class="fa fa-plus" aria-hidden="true"></i>添加
|
||||||
@ -18,15 +18,19 @@
|
|||||||
onclick="batchRemove()">
|
onclick="batchRemove()">
|
||||||
<i class="fa fa-trash" aria-hidden="true"></i>删除
|
<i class="fa fa-trash" aria-hidden="true"></i>删除
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>-->
|
||||||
<div class="columns pull-right">
|
<div class="columns pull-right">
|
||||||
<button class="btn btn-success" onclick="reLoad()">查询</button>
|
<button class="btn btn-success" onclick="reLoad()">查询</button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<form id="searchForm">
|
<form id="searchForm">
|
||||||
<div class="columns pull-right col-md-2">
|
<div class="columns pull-right col-md-2">
|
||||||
<input id="id" name="id" type="text" class="form-control"
|
<input id="bookName" name="bookName" type="text" class="form-control"
|
||||||
placeholder="主键">
|
placeholder="小说名">
|
||||||
|
</div>
|
||||||
|
<div class="columns pull-right col-md-2">
|
||||||
|
<input id="authorName" name="authorName" type="text" class="form-control"
|
||||||
|
placeholder="作者名">
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user