应用中心

main
@t2652009480 2 years ago
parent b7730707c5
commit 77673e42c6

@ -1,4 +1,69 @@
package com.zhiyun.zhiyun03.academic.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zhiyun.zhiyun03.academic.service.AcademicService;
import com.zhiyun.zhiyun03.academic.vo.AcademicVo;
import com.zhiyun.zhiyun03.game.vo.GameVo;
import com.zhiyun.zhiyun03.utils.common.JsonResult;
import com.zhiyun.zhiyun03.utils.common.ResultCode;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
@RestController
@RequestMapping("/academic")
@Api("学术中心")
public class AcademicController {
@Resource
AcademicService academicService;
@RequestMapping("/queryAcademic")
@ApiOperation("查询学术信息")
public JsonResult<AcademicVo> queryAcademic(@RequestParam(name="page") Integer page,
@RequestParam(name="limit") Integer limit){
Page<AcademicVo> academicVoPage = academicService.queryAcademic(page,limit);
return JsonResult.success(academicVoPage);
}
@RequestMapping("/addAcademic")
@ApiOperation("新增学术信息")
public JsonResult addAcademic(@RequestBody AcademicVo academicVo){
int result = academicService.addAcademic(academicVo);
if(result>0){
return JsonResult.success(ResultCode.SUCCESS);
}
return JsonResult.success(ResultCode.Fail);
}
@RequestMapping("/selectByIdAcademic")
@ApiOperation("根据id查询学术信息")
public JsonResult<AcademicVo> selectByIdAcademic(Integer id){
AcademicVo academicVo = academicService.selectByIdAcademic(id);
return JsonResult.success(academicVo);
}
@RequestMapping("/updateAcademic")
@ApiOperation("更新学术信息")
public JsonResult updateAcademic(@RequestBody AcademicVo academicVo){
int result = academicService.updateAcademic(academicVo);
if(result>0){
return JsonResult.success(ResultCode.SUCCESS);
}
return JsonResult.success(ResultCode.Fail);
}
@RequestMapping("/deleteAcademic")
@ApiOperation("删除学术信息")
public JsonResult deleteAcademic(Integer id){
int result = academicService.deleteAcademic(id);
if(result>0){
return JsonResult.success(ResultCode.SUCCESS);
}
return JsonResult.success(ResultCode.Fail);
}
}

@ -21,7 +21,7 @@ public class Academic {
* id
*/
@TableId(value = "id",type = IdType.AUTO)
private int id;
private Integer id;
/**
*

@ -1,7 +1,19 @@
package com.zhiyun.zhiyun03.academic.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zhiyun.zhiyun03.academic.entity.Academic;
import com.zhiyun.zhiyun03.academic.vo.AcademicVo;
import com.zhiyun.zhiyun03.game.vo.GameVo;
public interface AcademicService extends IService<Academic> {
Page<AcademicVo> queryAcademic(Integer page,Integer limit);
int addAcademic(AcademicVo academicVo);
AcademicVo selectByIdAcademic(Integer id);
int updateAcademic(AcademicVo academicVo);
int deleteAcademic(Integer id);
}

@ -1,11 +1,133 @@
package com.zhiyun.zhiyun03.academic.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zhiyun.zhiyun03.academic.entity.Academic;
import com.zhiyun.zhiyun03.academic.mapper.AcademicMapper;
import com.zhiyun.zhiyun03.academic.service.AcademicService;
import com.zhiyun.zhiyun03.academic.vo.AcademicVo;
import com.zhiyun.zhiyun03.application.entity.Directory;
import com.zhiyun.zhiyun03.application.mapper.DirectoryMapper;
import com.zhiyun.zhiyun03.game.entity.Game;
import com.zhiyun.zhiyun03.game.vo.GameVo;
import com.zhiyun.zhiyun03.utils.convert.ConvertUtil;
import com.zhiyun.zhiyun03.utils.convert.Switch;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
@Service
public class AcademicServiceImpl extends ServiceImpl<AcademicMapper, Academic> implements AcademicService {
@Resource
AcademicMapper academicMapper;
@Resource
DirectoryMapper directoryMapper;
/**
*
*/
@Override
public Page<AcademicVo> queryAcademic(Integer page,Integer limit) {
Page page1=new Page();
page1.setCurrent(limit);
page1.setSize(page);
QueryWrapper<Academic> qwa=new QueryWrapper<>();
Page<Academic> academicPage = academicMapper.selectPage(page1,qwa);
//查询目录
QueryWrapper<Directory> qwd=new QueryWrapper<>();
List<Directory> directories = directoryMapper.selectList(qwd);
ConvertUtil convertUtil=new ConvertUtil();
// 将实体类转换成vo类
List<AcademicVo> academicVos = convertUtil.entityToVoList(academicPage.getRecords(), AcademicVo.class);
for (int i = 0; i < academicPage.getRecords().size(); i++) {
for (int j = 0; j <directories.size() ; j++) {
//判断目录id是否相等
if(academicPage.getRecords().get(i).getDirId()==directories.get(j).getId()){
//将目录名称添加到vo类中
academicVos.get(i).setDirName(directories.get(j).getDirName());
}
}
}
Page<AcademicVo> pageVo=new Page<>();
//将List转成page并返回
Switch aSwitch=new Switch();
aSwitch.ListToPage(pageVo,academicVos);
return pageVo;
}
/**
*
*/
@Override
public int addAcademic(AcademicVo academicVo) {
//将vo类转换为实体类
ConvertUtil convertUtil=new ConvertUtil();
Academic academic = convertUtil.VoToEntity(academicVo, Academic.class);
//根据目录名称查询目录id
QueryWrapper<Directory> qwd=new QueryWrapper<>();
qwd.lambda().eq(Directory::getDirName,academicVo.getDirName());
Directory directory = directoryMapper.selectOne(qwd);
//将目录id封装到实体类
academic.setDirId(directory.getId());
academic.setAcademicAddtime(new Date());
int insert = academicMapper.insert(academic);
return insert;
}
/**
* id
*/
@Override
public AcademicVo selectByIdAcademic(Integer id) {
//根据id查询大赛中心
QueryWrapper<Academic> qwa=new QueryWrapper<>();
qwa.lambda().eq(Academic::getId,id);
Academic academic= academicMapper.selectOne(qwa);
//查询目录
QueryWrapper<Directory> qwd=new QueryWrapper<>();
qwd.lambda().eq(Directory::getId,academic.getDirId());
Directory directory = directoryMapper.selectOne(qwd);
ConvertUtil convertUtil=new ConvertUtil();
AcademicVo academicVo = convertUtil.entityToVo(academic, AcademicVo.class);
//给目录名称赋值
academicVo.setDirName(directory.getDirName());
return academicVo;
}
/**
*
*/
@Override
public int updateAcademic(AcademicVo academicVo) {
//将vo类转换为实体类
ConvertUtil convertUtil=new ConvertUtil();
Academic academic = convertUtil.VoToEntity(academicVo, Academic.class);
//根据目录名称查询目录id
QueryWrapper<Directory> qwd=new QueryWrapper<>();
qwd.lambda().eq(Directory::getDirName,academicVo.getDirName());
Directory directory = directoryMapper.selectOne(qwd);
//将目录id封装到实体类
academic.setDirId(directory.getId());
academic.setAcademicUpdatetime(new Date());
int update = academicMapper.updateById(academic);
return update;
}
/**
*
*/
@Override
public int deleteAcademic(Integer id) {
if(id!=null){
int delete = academicMapper.deleteById(id);
return delete;
}
return 0;
}
}

@ -0,0 +1,44 @@
package com.zhiyun.zhiyun03.academic.vo;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModel;
import lombok.Data;
@Data
@ApiModel("学术中心")
public class AcademicVo {
private static final long serialVersionUID = 1L;
/**
* id
*/
@TableId
private Integer id;
/**
*
*/
private String academicName;
/**
*
*/
private String academicBiref;
/**
*
*/
private String academicUrl;
/**
*
*/
private String dirName;
/**
*
*/
private String academicImg;
}

@ -8,15 +8,15 @@ import com.zhiyun.zhiyun03.application.service.ApplicationService;
import com.zhiyun.zhiyun03.application.vo.ApplicationVo;
import com.zhiyun.zhiyun03.utils.common.JsonResult;
import com.zhiyun.zhiyun03.utils.common.ResultCode;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.context.annotation.ApplicationScope;
import javax.annotation.Resource;
import java.util.List;
@Api("应用中心")
@RestController
@RequestMapping("/application")
public class ApplicationController {
@ -24,19 +24,23 @@ public class ApplicationController {
ApplicationService applicationService;
@RequestMapping("/queryApplication")
public JsonResult<ApplicationVo> queryApplication(@RequestBody Page page){
Page<ApplicationVo> list = applicationService.queryApplication(page);
@GetMapping ("/queryApplication")
@ApiOperation("查询应用")
public JsonResult<ApplicationVo> queryApplication(@RequestParam(name="page") Integer page,
@RequestParam(name="limit") Integer limit){
Page<ApplicationVo> list = applicationService.queryApplication(page,limit);
return JsonResult.success(list);
}
@RequestMapping("/queryDir")
@ApiOperation("查询目录")
public JsonResult<Directory> queryDir(){
List<Directory> list = applicationService.queryDir();
return JsonResult.success(list);
}
@RequestMapping("/addApplication")
@ApiOperation("新增应用")
public JsonResult addApplication(@RequestBody ApplicationVo applicationVo){
int result = applicationService.addApplication(applicationVo);
if(result>0){
@ -46,12 +50,14 @@ public class ApplicationController {
}
@RequestMapping("/selectByIdApplication")
public JsonResult<ApplicationVo> selectByIdApplication(int id){
@ApiOperation("根据id查询应用")
public JsonResult<ApplicationVo> selectByIdApplication(Integer id){
ApplicationVo applicationVo = applicationService.selectByIdApplication(id);
return JsonResult.success(applicationVo);
}
@RequestMapping("/updateApplication")
@ApiOperation("更新应用")
public JsonResult updateApplication(@RequestBody ApplicationVo applicationVo){
int result = applicationService.updateApplication(applicationVo);
if(result>0){
@ -61,7 +67,8 @@ public class ApplicationController {
}
@RequestMapping("/deleteApplication")
public JsonResult deleteApplication(int id){
@ApiOperation("删除应用")
public JsonResult deleteApplication(Integer id){
int result = applicationService.deleteApplication(id);
if(result>0){
return JsonResult.success(ResultCode.SUCCESS);
@ -70,6 +77,7 @@ public class ApplicationController {
}
@RequestMapping("/addDirectory")
@ApiOperation("新增目录")
public JsonResult addDirectory(@RequestBody Directory directory){
int result = applicationService.addDirectory(directory);
if(result>0){

@ -23,7 +23,7 @@ public class Application {
* id
*/
@TableId(value = "id",type = IdType.AUTO)
private int id;
private Integer id;
/**
*

@ -18,7 +18,7 @@ public class Directory {
* id
*/
@TableId(value ="id")
private int id;
private Integer id;
/**
*

@ -1,5 +1,6 @@
package com.zhiyun.zhiyun03.application.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zhiyun.zhiyun03.application.entity.Application;
@ -9,17 +10,17 @@ import com.zhiyun.zhiyun03.application.vo.ApplicationVo;
import java.util.List;
public interface ApplicationService extends IService<Application> {
Page<ApplicationVo> queryApplication(Page page);
Page<ApplicationVo> queryApplication(Integer page,Integer limit);
int addApplication(ApplicationVo applicationVo);
List<Directory> queryDir();
ApplicationVo selectByIdApplication(int id);
ApplicationVo selectByIdApplication(Integer id);
int updateApplication(ApplicationVo applicationVo);
int deleteApplication(int id);
int deleteApplication(Integer id);
int addDirectory(Directory directory);
}

@ -1,6 +1,7 @@
package com.zhiyun.zhiyun03.application.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.fasterxml.jackson.databind.util.BeanUtil;
@ -34,10 +35,13 @@ public class ApplicationServiceImpl extends ServiceImpl<ApplicationMapper, Appli
*
*/
@Override
public Page<ApplicationVo> queryApplication(Page page) {
public Page<ApplicationVo> queryApplication(Integer page,Integer limit) {
Page page1=new Page();
page1.setCurrent(limit);
page1.setSize(page);
//查询应用中心
QueryWrapper<Application> qwa=new QueryWrapper<>();
Page<Application> applicationPage = applicationMapper.selectPage(page,qwa);
Page<Application> applicationPage = applicationMapper.selectPage(page1,qwa);
//查询目录
QueryWrapper<Directory> qwd=new QueryWrapper<>();
List<Directory> directories = directoryMapper.selectList(qwd);
@ -76,7 +80,7 @@ public class ApplicationServiceImpl extends ServiceImpl<ApplicationMapper, Appli
* id
*/
@Override
public ApplicationVo selectByIdApplication(int id) {
public ApplicationVo selectByIdApplication(Integer id) {
//根据id查询应用中心
QueryWrapper<Application> qwa=new QueryWrapper<>();
qwa.lambda().eq(Application::getId,id);
@ -103,7 +107,6 @@ public class ApplicationServiceImpl extends ServiceImpl<ApplicationMapper, Appli
qwd.lambda().eq(Directory::getDirName,applicationVo.getDirName());
Directory directory = directoryMapper.selectOne(qwd);
application.setDirId(directory.getId());
application.setAppAddtime(new Date());
application.setAppUpdatetime(new Date());
int update = applicationMapper.updateById(application);
return update;
@ -114,9 +117,12 @@ public class ApplicationServiceImpl extends ServiceImpl<ApplicationMapper, Appli
*
*/
@Override
public int deleteApplication(int id) {
int delete = applicationMapper.deleteById(id);
return delete;
public int deleteApplication(Integer id) {
if(id!=null){
int delete = applicationMapper.deleteById(id);
return delete;
}
return 0;
}
@ -154,7 +160,6 @@ public class ApplicationServiceImpl extends ServiceImpl<ApplicationMapper, Appli
Directory directory = directoryMapper.selectOne(qwd);
application.setDirId(directory.getId());
application.setAppAddtime(new Date());
application.setAppUpdatetime(new Date());
int insert = applicationMapper.insert(application);
return insert;
}

@ -7,7 +7,7 @@ import lombok.Data;
@Data
public class ApplicationVo {
@TableId
private int id;
private Integer id;
private String appName;

@ -21,7 +21,7 @@ public class Download {
* id
*/
@TableId(value = "id",type = IdType.AUTO)
private int id;
private Integer id;
/**
*

@ -1,4 +1,74 @@
package com.zhiyun.zhiyun03.game.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zhiyun.zhiyun03.application.entity.Directory;
import com.zhiyun.zhiyun03.application.vo.ApplicationVo;
import com.zhiyun.zhiyun03.game.entity.Game;
import com.zhiyun.zhiyun03.game.service.GameService;
import com.zhiyun.zhiyun03.game.vo.GameVo;
import com.zhiyun.zhiyun03.utils.common.JsonResult;
import com.zhiyun.zhiyun03.utils.common.ResultCode;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.List;
@RestController
@RequestMapping("/game")
@Api("大赛中心")
public class GameController {
@Resource
GameService gameService;
@RequestMapping("/queryGame")
@ApiOperation("查询大赛信息")
public JsonResult<GameVo> queryGame(@RequestParam(name="page") Integer page,
@RequestParam(name="limit") Integer limit){
Page<GameVo> gameVos = gameService.queryGame(page,limit);
return JsonResult.success(gameVos);
}
@RequestMapping("/addGame")
@ApiOperation("新增大赛信息")
public JsonResult addGame(@RequestBody GameVo gameVo){
int result = gameService.addApplication(gameVo);
if(result>0){
return JsonResult.success(ResultCode.SUCCESS);
}
return JsonResult.success(ResultCode.Fail);
}
@RequestMapping("/selectByIdGame")
@ApiOperation("根据id查询大赛信息")
public JsonResult<GameVo> selectByIdGame(Integer id){
GameVo gameVo = gameService.selectByIdGame(id);
return JsonResult.success(gameVo);
}
@RequestMapping("/updateGame")
@ApiOperation("更新大赛信息")
public JsonResult updateGame(@RequestBody GameVo gameVo){
int result = gameService.updateGame(gameVo);
if(result>0){
return JsonResult.success(ResultCode.SUCCESS);
}
return JsonResult.success(ResultCode.Fail);
}
@RequestMapping("/deleteGame")
@ApiOperation("删除大赛信息")
public JsonResult deleteGame(Integer id){
int result = gameService.deleteGame(id);
if(result>0){
return JsonResult.success(ResultCode.SUCCESS);
}
return JsonResult.success(ResultCode.Fail);
}
}

@ -21,7 +21,7 @@ public class Game {
* id
*/
@TableId(value = "id",type = IdType.AUTO)
private int id;
private Integer id;
/**
*

@ -1,7 +1,20 @@
package com.zhiyun.zhiyun03.game.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zhiyun.zhiyun03.game.entity.Game;
import com.zhiyun.zhiyun03.game.vo.GameVo;
import java.util.List;
public interface GameService extends IService<Game> {
Page<GameVo> queryGame(Integer page,Integer limit);
int addApplication(GameVo gameVo);
GameVo selectByIdGame(Integer id);
int updateGame(GameVo gameVo);
int deleteGame(Integer id);
}

@ -1,11 +1,133 @@
package com.zhiyun.zhiyun03.game.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zhiyun.zhiyun03.application.entity.Application;
import com.zhiyun.zhiyun03.application.entity.Directory;
import com.zhiyun.zhiyun03.application.mapper.DirectoryMapper;
import com.zhiyun.zhiyun03.application.vo.ApplicationVo;
import com.zhiyun.zhiyun03.game.entity.Game;
import com.zhiyun.zhiyun03.game.mapper.GameMapper;
import com.zhiyun.zhiyun03.game.service.GameService;
import com.zhiyun.zhiyun03.game.vo.GameVo;
import com.zhiyun.zhiyun03.utils.convert.ConvertUtil;
import com.zhiyun.zhiyun03.utils.convert.Switch;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
@Service
public class GameServiceImpl extends ServiceImpl<GameMapper, Game> implements GameService {
@Resource
GameMapper gameMapper;
@Resource
DirectoryMapper directoryMapper;
/**
*
*/
@Override
public Page<GameVo> queryGame(Integer page,Integer limit) {
Page page1=new Page();
page1.setCurrent(limit);
page1.setSize(page);
//查询大赛中心
QueryWrapper<Game> qwg=new QueryWrapper<>();
Page<Game> gamePage = gameMapper.selectPage(page1,qwg);
//查询目录
QueryWrapper<Directory> qwd=new QueryWrapper<>();
List<Directory> directories = directoryMapper.selectList(qwd);
ConvertUtil convertUtil=new ConvertUtil();
// 将实体类转换成vo类
List<GameVo> gamesVo = convertUtil.entityToVoList(gamePage.getRecords(), GameVo.class);
for (int i = 0; i < gamePage.getRecords().size(); i++) {
for (int j = 0; j <directories.size() ; j++) {
//判断目录id是否相等
if(gamePage.getRecords().get(i).getDirId()==directories.get(j).getId()){
//将目录名称添加到vo类中
gamesVo.get(i).setDirName(directories.get(j).getDirName());
}
}
}
Page<GameVo> pageVo=new Page<>();
//将List转成page并返回
Switch aSwitch=new Switch();
aSwitch.ListToPage(pageVo,gamesVo);
return pageVo;
}
/**
*
*/
@Override
public int addApplication(GameVo gameVo) {
//将vo类转换为实体类
ConvertUtil convertUtil=new ConvertUtil();
Game game = convertUtil.VoToEntity(gameVo, Game.class);
//根据目录名称查询目录id
QueryWrapper<Directory> qwd=new QueryWrapper<>();
qwd.lambda().eq(Directory::getDirName,gameVo.getDirName());
Directory directory = directoryMapper.selectOne(qwd);
//将目录id封装到实体类
game.setDirId(directory.getId());
game.setGameAddtime(new Date());
int insert = gameMapper.insert(game);
return insert;
}
/**
* id
*/
@Override
public GameVo selectByIdGame(Integer id) {
//根据id查询大赛中心
QueryWrapper<Game> qwa=new QueryWrapper<>();
qwa.lambda().eq(Game::getId,id);
Game game = gameMapper.selectOne(qwa);
//查询目录
QueryWrapper<Directory> qwd=new QueryWrapper<>();
qwd.lambda().eq(Directory::getId,game.getDirId());
Directory directory = directoryMapper.selectOne(qwd);
ConvertUtil convertUtil=new ConvertUtil();
GameVo gameVo = convertUtil.entityToVo(game, GameVo.class);
//给目录名称赋值
gameVo.setDirName(directory.getDirName());
return gameVo;
}
/**
*
*/
@Override
public int updateGame(GameVo gameVo) {
//将vo类转换为实体类
ConvertUtil convertUtil=new ConvertUtil();
Game game = convertUtil.VoToEntity(gameVo, Game.class);
//根据目录名称查询目录id
QueryWrapper<Directory> qwd=new QueryWrapper<>();
qwd.lambda().eq(Directory::getDirName,gameVo.getDirName());
Directory directory = directoryMapper.selectOne(qwd);
//将目录id封装到实体类
game.setDirId(directory.getId());
game.setGameUpdatetime(new Date());
int update = gameMapper.updateById(game);
return update;
}
/**
*
*/
@Override
public int deleteGame(Integer id) {
if(id!=null){
int delete = gameMapper.deleteById(id);
return delete;
}
return 0;
}
}

@ -0,0 +1,50 @@
package com.zhiyun.zhiyun03.game.vo;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
@Data
@ApiModel("大赛中心Vo")
public class GameVo {
private static final long serialVersionUID = 1L;
/**
* id
*/
@TableId
private Integer id;
/**
*
*/
private String gameName;
/**
*
*/
private String gameBiref;
/**
*
*/
private String gameUrl;
/**
*
*/
private String dirName;
/**
*
*/
private String gameImg;
}

@ -21,7 +21,7 @@ public class Invite {
* id
*/
@TableId(value = "id",type = IdType.AUTO)
private int id;
private Integer id;
/**
*

@ -1,4 +1,68 @@
package com.zhiyun.zhiyun03.knowledge.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zhiyun.zhiyun03.knowledge.service.KnowledgeService;
import com.zhiyun.zhiyun03.knowledge.vo.KnowledgeVo;
import com.zhiyun.zhiyun03.textual.vo.TextualVo;
import com.zhiyun.zhiyun03.utils.common.JsonResult;
import com.zhiyun.zhiyun03.utils.common.ResultCode;
import io.swagger.annotations.ApiOperation;
import lombok.Data;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
@RestController
@RequestMapping("/knowledge")
public class KnowledgeController {
@Resource
KnowledgeService knowledgeService;
@RequestMapping("/queryKnowledge")
@ApiOperation("查询考证信息")
public JsonResult<KnowledgeVo> queryKnowledge(@RequestParam(name="page") Integer page,
@RequestParam(name="limit") Integer limit){
Page<KnowledgeVo> knowledge = knowledgeService.queryKnowledge(page,limit);
return JsonResult.success(knowledge);
}
@RequestMapping("/addKnowledge")
@ApiOperation("新增考证信息")
public JsonResult addKnowledge(@RequestBody KnowledgeVo knowledgeVo){
int result = knowledgeService.addKnowledge(knowledgeVo);
if(result>0){
return JsonResult.success(ResultCode.SUCCESS);
}
return JsonResult.success(ResultCode.Fail);
}
@RequestMapping("/selectByIdKnowledge")
@ApiOperation("根据id查询大赛信息")
public JsonResult<KnowledgeVo> selectByIdKnowledge(Integer id){
KnowledgeVo knowledgeVo = knowledgeService.selectByIdKnowledge(id);
return JsonResult.success(knowledgeVo);
}
@RequestMapping("/updateKnowledge")
@ApiOperation("更新大赛信息")
public JsonResult updateKnowledge(@RequestBody KnowledgeVo knowledgeVo){
int result = knowledgeService.updateKnowledge(knowledgeVo);
if(result>0){
return JsonResult.success(ResultCode.SUCCESS);
}
return JsonResult.success(ResultCode.Fail);
}
@RequestMapping("/deleteKnowledge")
@ApiOperation("删除大赛信息")
public JsonResult deleteKnowledge(Integer id){
int result = knowledgeService.deleteKnowledge(id);
if(result>0){
return JsonResult.success(ResultCode.SUCCESS);
}
return JsonResult.success(ResultCode.Fail);
}
}

@ -21,7 +21,7 @@ public class Knowledge {
* id
*/
@TableId(value = "id",type = IdType.AUTO)
private int id;
private Integer id;
/**
*

@ -1,7 +1,18 @@
package com.zhiyun.zhiyun03.knowledge.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zhiyun.zhiyun03.knowledge.entity.Knowledge;
import com.zhiyun.zhiyun03.knowledge.vo.KnowledgeVo;
public interface KnowledgeService extends IService<Knowledge> {
Page<KnowledgeVo> queryKnowledge(Integer page,Integer limit);
int addKnowledge(KnowledgeVo knowledgeVo);
KnowledgeVo selectByIdKnowledge(Integer id);
int updateKnowledge(KnowledgeVo knowledgeVo);
int deleteKnowledge(Integer id);
}

@ -1,11 +1,137 @@
package com.zhiyun.zhiyun03.knowledge.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zhiyun.zhiyun03.application.entity.Directory;
import com.zhiyun.zhiyun03.application.mapper.DirectoryMapper;
import com.zhiyun.zhiyun03.knowledge.entity.Knowledge;
import com.zhiyun.zhiyun03.knowledge.mapper.KnowledgeMapper;
import com.zhiyun.zhiyun03.knowledge.service.KnowledgeService;
import com.zhiyun.zhiyun03.knowledge.vo.KnowledgeVo;
import com.zhiyun.zhiyun03.textual.entity.Textual;
import com.zhiyun.zhiyun03.textual.vo.TextualVo;
import com.zhiyun.zhiyun03.utils.convert.ConvertUtil;
import com.zhiyun.zhiyun03.utils.convert.Switch;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
@Service
public class KnowledgeServiceImpl extends ServiceImpl<KnowledgeMapper,Knowledge> implements KnowledgeService {
@Resource
KnowledgeMapper knowledgeMapper;
@Resource
DirectoryMapper directoryMapper;
/**
*
*/
@Override
public Page<KnowledgeVo> queryKnowledge(Integer page,Integer limit) {
Page page1=new Page();
page1.setCurrent(limit);
page1.setSize(page);
//查询知识分享信息
QueryWrapper<Knowledge> qwk=new QueryWrapper<>();
Page<Knowledge> knowledgePage = knowledgeMapper.selectPage(page1,qwk);
//查询目录
QueryWrapper<Directory> qwd=new QueryWrapper<>();
List<Directory> directories = directoryMapper.selectList(qwd);
ConvertUtil convertUtil=new ConvertUtil();
// 将实体类转换成vo类
List<KnowledgeVo> knowledgeVos = convertUtil.entityToVoList(knowledgePage.getRecords(), KnowledgeVo.class);
for (int i = 0; i < knowledgePage.getRecords().size(); i++) {
for (int j = 0; j <directories.size() ; j++) {
//判断目录id是否相等
if(knowledgePage.getRecords().get(i).getDirId()==directories.get(j).getId()){
//将目录名称添加到vo类中
knowledgeVos.get(i).setDirName(directories.get(j).getDirName());
}
}
}
Page<KnowledgeVo> pageVo=new Page<>();
//将List转成page并返回
Switch aSwitch=new Switch();
aSwitch.ListToPage(pageVo,knowledgeVos);
return pageVo;
}
/**
*
*/
@Override
public int addKnowledge(KnowledgeVo knowledgeVo) {
//将vo类转换为实体类
ConvertUtil convertUtil=new ConvertUtil();
Knowledge knowledge = convertUtil.VoToEntity(knowledgeVo, Knowledge.class);
//根据目录名称查询目录id
QueryWrapper<Directory> qwd=new QueryWrapper<>();
qwd.lambda().eq(Directory::getDirName,knowledgeVo.getDirName());
Directory directory = directoryMapper.selectOne(qwd);
//将目录id封装到实体类
knowledge.setDirId(directory.getId());
knowledge.setKnowledgeAddtime(new Date());
int insert = knowledgeMapper.insert(knowledge);
return insert;
}
/**
* id
*/
@Override
public KnowledgeVo selectByIdKnowledge(Integer id) {
//根据id查询考证中心
QueryWrapper<Knowledge> qwa=new QueryWrapper<>();
qwa.lambda().eq(Knowledge::getId,id);
Knowledge knowledge = knowledgeMapper.selectOne(qwa);
//查询目录
QueryWrapper<Directory> qwd=new QueryWrapper<>();
qwd.lambda().eq(Directory::getId,knowledge.getDirId());
Directory directory = directoryMapper.selectOne(qwd);
ConvertUtil convertUtil=new ConvertUtil();
KnowledgeVo knowledgeVo = convertUtil.entityToVo(knowledge, KnowledgeVo.class);
//给目录名称赋值
knowledgeVo.setDirName(directory.getDirName());
return knowledgeVo;
}
/**
*
*/
@Override
public int updateKnowledge(KnowledgeVo knowledgeVo) {
//将vo类转换为实体类
ConvertUtil convertUtil=new ConvertUtil();
Knowledge knowledge = convertUtil.VoToEntity(knowledgeVo, Knowledge.class);
//根据目录名称查询目录id
QueryWrapper<Directory> qwd=new QueryWrapper<>();
qwd.lambda().eq(Directory::getDirName,knowledgeVo.getDirName());
Directory directory = directoryMapper.selectOne(qwd);
//将目录id封装到实体类
knowledge.setDirId(directory.getId());
knowledge.setKnowledgeUpdatetime(new Date());
int update = knowledgeMapper.updateById(knowledge);
return update;
}
/**
*
*/
@Override
public int deleteKnowledge(Integer id) {
if(id!=null){
int delete = knowledgeMapper.deleteById(id);
return delete;
}
return 0;
}
}

@ -0,0 +1,44 @@
package com.zhiyun.zhiyun03.knowledge.vo;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
@Data
@ApiModel("知识中心")
public class KnowledgeVo {
private static final long serialVersionUID = 1L;
/**
* id
*/
@TableId
private Integer id;
/**
*
*/
private String knowledgeName;
/**
*
*/
private String knowledgeUrl;
/**
* id
*/
private String dirName;
/**
*
*/
private String knowledgeImg;
}

@ -21,7 +21,7 @@ public class Serve {
* id
*/
@TableId(value = "id",type = IdType.AUTO)
private int id;
private Integer id;
/**
*

@ -1,4 +1,67 @@
package com.zhiyun.zhiyun03.textual.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zhiyun.zhiyun03.game.vo.GameVo;
import com.zhiyun.zhiyun03.textual.service.TextualService;
import com.zhiyun.zhiyun03.textual.vo.TextualVo;
import com.zhiyun.zhiyun03.utils.common.JsonResult;
import com.zhiyun.zhiyun03.utils.common.ResultCode;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
@RestController
@RequestMapping("/textual")
public class TextualController {
@Resource
TextualService textualService;
@RequestMapping("/queryTextual")
@ApiOperation("查询考证信息")
public JsonResult<TextualVo> queryTextual(@RequestParam(name="page") Integer page,
@RequestParam(name="limit") Integer limit){
Page<TextualVo> textualVoPage = textualService.queryTextual(page,limit);
return JsonResult.success(textualVoPage);
}
@RequestMapping("/addTextual")
@ApiOperation("新增考证信息")
public JsonResult addTextual(@RequestBody TextualVo textualVo){
int result = textualService.addTextual(textualVo);
if(result>0){
return JsonResult.success(ResultCode.SUCCESS);
}
return JsonResult.success(ResultCode.Fail);
}
@RequestMapping("/selectByIdTextual")
@ApiOperation("根据id查询大赛信息")
public JsonResult<TextualVo> selectByIdTextual(Integer id){
TextualVo textualVo = textualService.selectByIdTextual(id);
return JsonResult.success(textualVo);
}
@RequestMapping("/updateTextual")
@ApiOperation("更新大赛信息")
public JsonResult updateTextual(@RequestBody TextualVo textualVo){
int result = textualService.updateTextual(textualVo);
if(result>0){
return JsonResult.success(ResultCode.SUCCESS);
}
return JsonResult.success(ResultCode.Fail);
}
@RequestMapping("/deleteTextual")
@ApiOperation("删除大赛信息")
public JsonResult deleteTextual(Integer id){
int result = textualService.deleteGame(id);
if(result>0){
return JsonResult.success(ResultCode.SUCCESS);
}
return JsonResult.success(ResultCode.Fail);
}
}

@ -21,7 +21,7 @@ public class Textual {
* id
*/
@TableId(value = "id",type = IdType.AUTO)
private int id;
private Integer id;
/**
*

@ -1,7 +1,18 @@
package com.zhiyun.zhiyun03.textual.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zhiyun.zhiyun03.textual.entity.Textual;
import com.zhiyun.zhiyun03.textual.vo.TextualVo;
public interface TextualService extends IService<Textual> {
Page<TextualVo> queryTextual(Integer page,Integer limit);
int addTextual(TextualVo textualVo);
TextualVo selectByIdTextual(Integer id);
int updateTextual(TextualVo textualVo);
int deleteGame(Integer id);
}

@ -1,11 +1,133 @@
package com.zhiyun.zhiyun03.textual.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zhiyun.zhiyun03.application.entity.Directory;
import com.zhiyun.zhiyun03.application.mapper.DirectoryMapper;
import com.zhiyun.zhiyun03.game.entity.Game;
import com.zhiyun.zhiyun03.game.vo.GameVo;
import com.zhiyun.zhiyun03.textual.entity.Textual;
import com.zhiyun.zhiyun03.textual.mapper.TextualMapper;
import com.zhiyun.zhiyun03.textual.service.TextualService;
import com.zhiyun.zhiyun03.textual.vo.TextualVo;
import com.zhiyun.zhiyun03.utils.convert.ConvertUtil;
import com.zhiyun.zhiyun03.utils.convert.Switch;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
@Service
public class TextualServiceImpl extends ServiceImpl<TextualMapper, Textual> implements TextualService {
@Resource
TextualMapper textualMapper;
@Resource
DirectoryMapper directoryMapper;
/**
*
*/
@Override
public Page<TextualVo> queryTextual(Integer page,Integer limit) {
Page page1=new Page();
page1.setCurrent(limit);
page1.setSize(page);
//查询大赛中心
QueryWrapper<Textual> qwt=new QueryWrapper<>();
Page<Textual> textualPage = textualMapper.selectPage(page1,qwt);
//查询目录
QueryWrapper<Directory> qwd=new QueryWrapper<>();
List<Directory> directories = directoryMapper.selectList(qwd);
ConvertUtil convertUtil=new ConvertUtil();
// 将实体类转换成vo类
List<TextualVo> textualVos = convertUtil.entityToVoList(textualPage.getRecords(), TextualVo.class);
for (int i = 0; i < textualPage.getRecords().size(); i++) {
for (int j = 0; j <directories.size() ; j++) {
//判断目录id是否相等
if(textualPage.getRecords().get(i).getDirId()==directories.get(j).getId()){
//将目录名称添加到vo类中
textualVos.get(i).setDirName(directories.get(j).getDirName());
}
}
}
Page<TextualVo> pageVo=new Page<>();
//将List转成page并返回
Switch aSwitch=new Switch();
aSwitch.ListToPage(pageVo,textualVos);
return pageVo;
}
/**
*
*/
@Override
public int addTextual(TextualVo textualVo) {
//将vo类转换为实体类
ConvertUtil convertUtil=new ConvertUtil();
Textual textual = convertUtil.VoToEntity(textualVo, Textual.class);
//根据目录名称查询目录id
QueryWrapper<Directory> qwd=new QueryWrapper<>();
qwd.lambda().eq(Directory::getDirName,textualVo.getDirName());
Directory directory = directoryMapper.selectOne(qwd);
//将目录id封装到实体类
textual.setDirId(directory.getId());
textual.setTextualAddtime(new Date());
int insert = textualMapper.insert(textual);
return insert;
}
/**
* id
*/
@Override
public TextualVo selectByIdTextual(Integer id) {
//根据id查询考证中心
QueryWrapper<Textual> qwa=new QueryWrapper<>();
qwa.lambda().eq(Textual::getId,id);
Textual textual = textualMapper.selectOne(qwa);
//查询目录
QueryWrapper<Directory> qwd=new QueryWrapper<>();
qwd.lambda().eq(Directory::getId,textual.getDirId());
Directory directory = directoryMapper.selectOne(qwd);
ConvertUtil convertUtil=new ConvertUtil();
TextualVo textualVo = convertUtil.entityToVo(textual, TextualVo.class);
//给目录名称赋值
textualVo.setDirName(directory.getDirName());
return textualVo;
}
/**
*
*/
@Override
public int updateTextual(TextualVo textualVo) {
//将vo类转换为实体类
ConvertUtil convertUtil=new ConvertUtil();
Textual textual = convertUtil.VoToEntity(textualVo, Textual.class);
//根据目录名称查询目录id
QueryWrapper<Directory> qwd=new QueryWrapper<>();
qwd.lambda().eq(Directory::getDirName,textualVo.getDirName());
Directory directory = directoryMapper.selectOne(qwd);
//将目录id封装到实体类
textual.setDirId(directory.getId());
textual.setTextualUpdatetime(new Date());
int update = textualMapper.updateById(textual);
return update;
}
/**
*
*/
@Override
public int deleteGame(Integer id) {
if(id!=null){
int delete = textualMapper.deleteById(id);
return delete;
}
return 0;
}
}

@ -0,0 +1,44 @@
package com.zhiyun.zhiyun03.textual.vo;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiOperation;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
@Data
@ApiOperation("考证中心")
public class TextualVo {
private static final long serialVersionUID = 1L;
/**
* id
*/
@TableId
private Integer id;
/**
*
*/
private String textualName;
/**
*
*/
private String textualUrl;
/**
*
*/
private String dirName;
/**
*
*/
private String textualImg;
}

@ -0,0 +1,33 @@
package com.zhiyun.zhiyun03.utils.config;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.cors.CorsConfiguration;
import org.springframework.web.cors.UrlBasedCorsConfigurationSource;
import org.springframework.web.filter.CorsFilter;
@Configuration
public class GlobalCrossConfig {
@Bean
public CorsFilter corsFilter() {
//1. 添加 CORS配置信息
CorsConfiguration config = new CorsConfiguration();
//放行哪些原始域,*表示所有
// config.addAllowedOrigin("*");
// 注意springboot2.4以上使用该方式
config.addAllowedOriginPattern("*");
//是否发送 Cookie
config.setAllowCredentials(true);
//放行哪些请求方式
config.addAllowedMethod("*");
//放行哪些原始请求头部信息
config.addAllowedHeader("*");
//暴露哪些头部信息
config.addExposedHeader("*");
//2. 添加映射路径
UrlBasedCorsConfigurationSource corsConfigurationSource = new UrlBasedCorsConfigurationSource();
corsConfigurationSource.registerCorsConfiguration("/**", config);
//3. 返回新的CorsFilter
return new CorsFilter(corsConfigurationSource);
}
}

@ -0,0 +1,80 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Layui</title>
<meta name="renderer" content="webkit">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<link rel="stylesheet" href="layui/css/layui.css" tppabs="//res.ilayuis.com/layui/dist/css/layui.css" media="all">
<!-- 注意如果你直接复制所有代码到本地上述css路径需要改成你本地的 -->
</head>
<body>
<table class="layui-hide" id="test" lay-filter="test"></table>
<script type="text/html" id="toolbarDemo">
<div class="layui-btn-container">
<button class="layui-btn layui-btn-sm" lay-event="getCheckData">获取选中行数据</button>
<button class="layui-btn layui-btn-sm" lay-event="getCheckLength">获取选中数目</button>
<button class="layui-btn layui-btn-sm" lay-event="isAll">验证是否全选</button>
</div>
</script>
<script type="text/html" id="barDemo">
<a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>
<a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>
</script>
<script src="layui/layui.js" charset="utf-8"></script>
<!-- 注意:如果你直接复制所有代码到本地,上述 JS 路径需要改成你本地的 -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script>
layui.use('table', function(){
var table = layui.table;
//温馨提示:默认由前端自动合计当前行数据。从 layui 2.5.6 开始: 若接口直接返回了合计行数据,则优先读取接口合计行数据。
//详见http://www.ilayuis.com/doc/modules/table.html#totalRow
table.render({
elem: '#test'
,url:'http://localhost:8080/application/queryApplication'
,toolbar: '#toolbarDemo'
,title: '应用中心'
,totalRow: true
,cols: [[
{type: 'checkbox', fixed: 'left'}
,{field:'id', title:'编号', width:120, sort: true, }
,{field:'appName', title:'应用名称', width:120}
,{field:'appBiref', title:'应用简介', width:120}
,{field:'appUrl', title:'超链接', width:120}
,{field:'dirName', title:'归属目录', width:120}
// ,{field:'courseIcon', title:'编号', width:120}
,{fixed: 'right', title:'操作', toolbar: '#barDemo', width:150}
]]
,page: true
});
//工具栏事件
table.on('toolbar(test)', function(obj){
var checkStatus = table.checkStatus(obj.config.id);
switch(obj.event){
case 'getCheckData':
var data = checkStatus.data;
layer.alert(JSON.stringify(data));
break;
case 'getCheckLength':
var data = checkStatus.data;
layer.msg('选中了:'+ data.length + ' 个');
break;
case 'isAll':
layer.msg(checkStatus.isAll ? '全选': '未全选')
break;
};
});
});
</script>
</body>
</html>

@ -50,7 +50,7 @@
,{field:'courseBrief', title:'课程简介', width:120}
,{field:'courseUrl', title:'超链接', width:120}
,{field:'dirName', title:'归属目录', width:120}
// ,{field:'courseIcon', title:'编号', width:120}
,{field:'courseIcon', title:'编号', width:120}
,{fixed: 'right', title:'操作', toolbar: '#barDemo', width:150}
]]
,page: true

Loading…
Cancel
Save