2021-11-15 09:43:03 +00:00
|
|
|
package com.zhangmeng.fiction.controller;
|
|
|
|
|
|
|
|
|
|
import com.github.pagehelper.PageHelper;
|
|
|
|
|
import com.github.pagehelper.PageInfo;
|
|
|
|
|
import com.zhangmeng.api.service.fiction.FictionControllerApi;
|
|
|
|
|
import com.zhangmeng.fiction.service.*;
|
|
|
|
|
import com.zhangmeng.model.base.baseController.BaseController;
|
|
|
|
|
import com.zhangmeng.model.base.baseUtil.CommonUtil;
|
|
|
|
|
import com.zhangmeng.model.dto.system.SysConstant;
|
|
|
|
|
import com.zhangmeng.model.entity.Fiction;
|
|
|
|
|
import com.zhangmeng.model.entity.FictionChapter;
|
|
|
|
|
import com.zhangmeng.model.entity.FictionCollection;
|
|
|
|
|
import com.zhangmeng.model.entity.FictionDetails;
|
|
|
|
|
import com.zhangmeng.model.vo.Result;
|
|
|
|
|
import com.zhangmeng.model.vo.StatusCode;
|
|
|
|
|
import io.swagger.annotations.Api;
|
|
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
|
import org.springframework.ui.Model;
|
|
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
|
import org.springframework.web.servlet.ModelAndView;
|
|
|
|
|
import springfox.documentation.annotations.ApiIgnore;
|
|
|
|
|
import tk.mybatis.mapper.entity.Condition;
|
|
|
|
|
import tk.mybatis.mapper.entity.Example;
|
|
|
|
|
|
|
|
|
|
import java.util.Date;
|
|
|
|
|
import java.util.List;
|
|
|
|
|
import java.util.Map;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@RestController
|
|
|
|
|
@RequestMapping("/fiction")
|
|
|
|
|
public class FictionController extends BaseController implements FictionControllerApi {
|
|
|
|
|
|
|
|
|
|
@Autowired
|
|
|
|
|
private FictionService fictionService;
|
|
|
|
|
|
|
|
|
|
@Autowired
|
|
|
|
|
private FictionCollectionService fictionCollectionService;
|
|
|
|
|
|
|
|
|
|
@Autowired
|
|
|
|
|
private FictionChapterService fictionChapterService;
|
|
|
|
|
|
|
|
|
|
@Autowired
|
|
|
|
|
private FictionDetailsService fictionDetailsService;
|
|
|
|
|
|
|
|
|
|
@Autowired
|
|
|
|
|
private TianYuXiaoShuoJsoupService tianYuXiaoShuoJsoupService;
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
@PostMapping("/save")
|
|
|
|
|
public Result save(@RequestParam @RequestBody Map<String, Object> map) {
|
|
|
|
|
|
|
|
|
|
FictionCollection fictionCollection = CommonUtil.map2Obj(map, FictionCollection.class);
|
|
|
|
|
fictionCollection.setAddTime(new Date());
|
|
|
|
|
fictionCollection.setDeleteStatus(false);
|
|
|
|
|
fictionCollection.setUpdateTime(new Date());
|
|
|
|
|
fictionCollection.setGenStatus(0);
|
|
|
|
|
List<FictionCollection> collections = this.fictionCollectionService.findByObj(fictionCollection);
|
|
|
|
|
if (collections.size() > 0) {
|
|
|
|
|
this.fictionCollectionService.update(fictionCollection);
|
|
|
|
|
}
|
|
|
|
|
this.fictionCollectionService.save(fictionCollection);
|
|
|
|
|
return this.success();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
@GetMapping("/check")
|
|
|
|
|
public Result check() {
|
|
|
|
|
List<FictionCollection> all = this.fictionCollectionService.findAll();
|
|
|
|
|
if (all.size() > 0) {
|
|
|
|
|
for (FictionCollection fictionCollection : all) {
|
|
|
|
|
String bookName = fictionCollection.getTitle();
|
|
|
|
|
Fiction fiction = this.fictionService.finbByBookName(bookName);
|
|
|
|
|
if (fiction != null) {
|
|
|
|
|
fictionCollection.setUpdateTime(new Date());
|
|
|
|
|
fictionCollection.setGenStatus(1);
|
|
|
|
|
this.fictionCollectionService.update(fictionCollection);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
return this.success();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
@GetMapping("/fictionName")
|
|
|
|
|
public Result update_fiction(String fictionName) {
|
|
|
|
|
//查询小说
|
|
|
|
|
Fiction fiction = this.fictionService.finbByBookName(fictionName);
|
|
|
|
|
if (fiction != null) {
|
|
|
|
|
String links = fiction.getLinks();
|
|
|
|
|
//获取该小说的最新章节
|
|
|
|
|
this.tianYuXiaoShuoJsoupService.update_fiction(links);
|
|
|
|
|
}
|
|
|
|
|
return new Result(true, StatusCode.OK, "更新成功");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
@GetMapping("/findBy/{id}")
|
|
|
|
|
public Fiction getFictionById(@PathVariable("id") Long id) {
|
|
|
|
|
return this.fictionService.findById(id);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
@GetMapping("/findByFictionId")
|
|
|
|
|
public List<FictionChapter> findByFictionId(@RequestParam("id") Long id) {
|
2021-12-13 09:10:28 +00:00
|
|
|
Condition condition = new Condition(FictionChapter.class);
|
|
|
|
|
Example.Criteria criteria = condition.createCriteria();
|
|
|
|
|
criteria.andEqualTo("fiction_id",id);
|
|
|
|
|
return this.fictionChapterService.findByCondition(condition);
|
2021-11-15 09:43:03 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
@GetMapping("/fictionDetailsId")
|
|
|
|
|
public List<FictionDetails> fictionDetailsId(@RequestParam("id") Long id) {
|
|
|
|
|
Condition condition = new Condition(FictionDetails.class);
|
|
|
|
|
Example.Criteria criteria = condition.createCriteria();
|
|
|
|
|
if (CommonUtil.isNotNull(id)) {
|
|
|
|
|
criteria.andEqualTo("fiction_chapter_id", id);
|
|
|
|
|
}
|
|
|
|
|
return this.fictionDetailsService.findByCondition(condition);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@GetMapping("/findAllToFiction")
|
|
|
|
|
public List<Fiction> findAll() {
|
|
|
|
|
return this.fictionService.findAll();
|
|
|
|
|
}
|
|
|
|
|
}
|