diff --git a/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/config/SwaggerConfig.java b/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/config/SwaggerConfig.java index be614c9..bc4f13c 100644 --- a/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/config/SwaggerConfig.java +++ b/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/config/SwaggerConfig.java @@ -39,8 +39,8 @@ public class SwaggerConfig { String email = "tinyants@163.com"; return new ApiInfoBuilder() - .title("LikeAdmin【后台】接口文档") - .description("likeadmin是一套使用流行的技术栈的快速开发管理后台") + .title("ZJ【后台】接口文档") + .description("这是一个后台的接口文档") .version(GlobalConfig.version) .contact(new Contact(author, url, email)) .build(); diff --git a/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/controller/news/NewsCateController.java b/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/controller/news/NewsCateController.java index 4e2d29f..82a2335 100644 --- a/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/controller/news/NewsCateController.java +++ b/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/controller/news/NewsCateController.java @@ -9,6 +9,7 @@ import com.wyh.admin.validate.news.NewsCateSearchValidate; import com.wyh.admin.validate.news.NewsCateUpdateValidate; import com.wyh.admin.vo.news.NewsCateDetailVo; import com.wyh.admin.vo.news.NewsCateListedVo; +import com.wyh.common.aop.NotPower; import com.wyh.common.core.AjaxResult; import com.wyh.common.core.PageResult; import com.wyh.common.validator.annotation.IDMust; @@ -18,6 +19,7 @@ import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; +import java.util.List; @RestController @RequestMapping("api/news/cate") @@ -35,7 +37,15 @@ public class NewsCateController { return AjaxResult.success(list); } - @GetMapping("/detail") + @NotPower + @GetMapping("all") + @ApiOperation(value="新闻分类列表(下拉框)") + public AjaxResult> all(){ + + return AjaxResult.success(iNewsCateService.all()); + } + + @GetMapping("/detail") @ApiOperation(value="新闻分类详情") public AjaxResult detail(@Validated @IDMust() @RequestParam("id") Integer id) { NewsCateDetailVo detail = iNewsCateService.detail(id); diff --git a/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/controller/news/NewsController.java b/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/controller/news/NewsController.java new file mode 100644 index 0000000..622ed2d --- /dev/null +++ b/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/controller/news/NewsController.java @@ -0,0 +1,69 @@ +package com.wyh.admin.controller.news; + +import com.wyh.admin.aop.Log; +import com.wyh.admin.service.INewsService; +import com.wyh.admin.validate.commons.IdValidate; +import com.wyh.admin.validate.commons.PageValidate; +import com.wyh.admin.validate.news.NewsCreateValidate; +import com.wyh.admin.validate.news.NewsSearchValidate; +import com.wyh.admin.validate.news.NewsUpdateValidate; +import com.wyh.admin.vo.NewsDetailVo; +import com.wyh.admin.vo.news.NewsListedVo; +import com.wyh.common.core.AjaxResult; +import com.wyh.common.core.PageResult; +import com.wyh.common.validator.annotation.IDMust; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; + +@RestController +@RequestMapping("api/news") +@Api(tags = "新闻信息管理") +public class NewsController { + + @Resource + INewsService iNewsService; + + @GetMapping("/list") + @ApiOperation(value="新闻信息列表") + public AjaxResult> list(@Validated PageValidate pageValidate, + @Validated NewsSearchValidate searchValidate) { + PageResult list = iNewsService.list(pageValidate, searchValidate); + return AjaxResult.success(list); + } + + @GetMapping("/detail") + @ApiOperation(value="新闻信息详情") + public AjaxResult detail(@Validated @IDMust() @RequestParam("id") Integer id) { + NewsDetailVo detail = iNewsService.detail(id); + return AjaxResult.success(detail); + } + + @Log(title = "新闻信息新增") + @PostMapping("/add") + @ApiOperation(value="新闻信息新增") + public AjaxResult add(@Validated @RequestBody NewsCreateValidate createValidate) { + iNewsService.add(createValidate); + return AjaxResult.success(); + } + + @Log(title = "新闻信息编辑") + @PostMapping("/edit") + @ApiOperation(value="新闻信息编辑") + public AjaxResult edit(@Validated @RequestBody NewsUpdateValidate updateValidate) { + iNewsService.edit(updateValidate); + return AjaxResult.success(); + } + + @Log(title = "新闻信息删除") + @PostMapping("/del") + @ApiOperation(value="新闻信息删除") + public AjaxResult del(@Validated @RequestBody IdValidate idValidate) { + iNewsService.del(idValidate.getId()); + return AjaxResult.success(); + } + +} diff --git a/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/service/INewsCateService.java b/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/service/INewsCateService.java index 1b68e57..e99bf56 100644 --- a/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/service/INewsCateService.java +++ b/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/service/INewsCateService.java @@ -9,6 +9,8 @@ import com.wyh.admin.vo.news.NewsCateDetailVo; import com.wyh.admin.vo.news.NewsCateListedVo; import com.wyh.common.core.PageResult; +import java.util.List; + /** * 新闻分类服务接口类 * @author LikeAdmin @@ -58,4 +60,5 @@ public interface INewsCateService { */ void del(Integer id); + List all(); } diff --git a/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/service/INewsService.java b/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/service/INewsService.java new file mode 100644 index 0000000..ff3c256 --- /dev/null +++ b/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/service/INewsService.java @@ -0,0 +1,60 @@ +package com.wyh.admin.service; + +import com.wyh.admin.validate.commons.PageValidate; +import com.wyh.admin.validate.news.NewsCreateValidate; +import com.wyh.admin.validate.news.NewsSearchValidate; +import com.wyh.admin.validate.news.NewsUpdateValidate; +import com.wyh.admin.vo.NewsDetailVo; +import com.wyh.admin.vo.news.NewsListedVo; +import com.wyh.common.core.PageResult; + +/** + * 新闻信息服务接口类 + * @author LikeAdmin + */ +public interface INewsService { + + /** + * 新闻信息列表 + * + * @author LikeAdmin + * @param pageValidate 分页参数 + * @param searchValidate 搜索参数 + * @return PageResult + */ + PageResult list(PageValidate pageValidate, NewsSearchValidate searchValidate); + + /** + * 新闻信息详情 + * + * @author LikeAdmin + * @param id 主键ID + * @return NewsDetailVo + */ + NewsDetailVo detail(Integer id); + + /** + * 新闻信息新增 + * + * @author LikeAdmin + * @param createValidate 参数 + */ + void add(NewsCreateValidate createValidate); + + /** + * 新闻信息编辑 + * + * @author LikeAdmin + * @param updateValidate 参数 + */ + void edit(NewsUpdateValidate updateValidate); + + /** + * 新闻信息删除 + * + * @author LikeAdmin + * @param id 主键ID + */ + void del(Integer id); + +} diff --git a/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/service/impl/NewsCateServiceImpl.java b/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/service/impl/NewsCateServiceImpl.java index 344ef74..5e35251 100644 --- a/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/service/impl/NewsCateServiceImpl.java +++ b/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/service/impl/NewsCateServiceImpl.java @@ -1,6 +1,7 @@ package com.wyh.admin.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.github.yulichang.query.MPJQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -152,4 +153,18 @@ public class NewsCateServiceImpl implements INewsCateService { newsCateMapper.updateById(model); } + @Override + public List all() { + List newsCates = newsCateMapper.selectList(Wrappers.lambdaQuery().eq(NewsCate::getIsDelete, 0)); + List list = new LinkedList<>(); + for(NewsCate item : newsCates) { + NewsCateListedVo vo = new NewsCateListedVo(); + BeanUtils.copyProperties(item, vo); + vo.setCreateTime(TimeUtils.timestampToDate(item.getCreateTime())); + vo.setUpdateTime(TimeUtils.timestampToDate(item.getUpdateTime())); + list.add(vo); + } + return list; + } + } diff --git a/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/service/impl/NewsServiceImpl.java b/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/service/impl/NewsServiceImpl.java new file mode 100644 index 0000000..c1e805d --- /dev/null +++ b/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/service/impl/NewsServiceImpl.java @@ -0,0 +1,181 @@ +package com.wyh.admin.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.github.yulichang.query.MPJQueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.wyh.admin.service.INewsService; +import com.wyh.admin.validate.commons.PageValidate; + +import com.wyh.admin.validate.news.NewsCreateValidate; +import com.wyh.admin.validate.news.NewsSearchValidate; +import com.wyh.admin.validate.news.NewsUpdateValidate; +import com.wyh.admin.vo.NewsDetailVo; +import com.wyh.admin.vo.news.NewsListedVo; +import com.wyh.common.core.PageResult; +import com.wyh.common.entity.News; +import com.wyh.common.entity.news.NewsCate; +import com.wyh.common.mapper.news.NewsCateMapper; +import com.wyh.common.mapper.news.NewsMapper; +import com.wyh.common.util.ListUtils; +import com.wyh.common.util.TimeUtils; +import com.wyh.common.util.UrlUtils; +import org.springframework.beans.BeanUtils; +import org.springframework.stereotype.Service; +import org.springframework.util.Assert; + +import javax.annotation.Resource; +import java.util.*; + +/** + * 新闻信息实现类 + * @author LikeAdmin + */ +@Service +public class NewsServiceImpl implements INewsService { + + @Resource + NewsMapper newsMapper; + @Resource + NewsCateMapper newsCateMapper; + + /** + * 新闻信息列表 + * + * @author LikeAdmin + * @param pageValidate 分页参数 + * @param searchValidate 搜索参数 + * @return PageResult + */ + @Override + public PageResult list(PageValidate pageValidate, NewsSearchValidate searchValidate) { + Integer page = pageValidate.getPageNo(); + Integer limit = pageValidate.getPageSize(); + + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("is_delete", 0); + queryWrapper.orderByDesc(Arrays.asList("sort", "id")); + + newsMapper.setSearch(queryWrapper, searchValidate, new String[]{ + "=:isShow@is_show:long", + "=:sort:long", + "like:title:str", + "=:subhead:str", + "=:newsImg@news_img:str", + "=:content:str", + "=:cateId@cate_id:long", + }); + + IPage iPage = newsMapper.selectPage(new Page<>(page, limit), queryWrapper); + + List list = new LinkedList<>(); + for(News item : iPage.getRecords()) { + NewsListedVo vo = new NewsListedVo(); + BeanUtils.copyProperties(item, vo); + if (item.getCateId() != null) { + NewsCate newsCate = newsCateMapper.selectById(item.getCateId()); + if (newsCate != null) { + vo.setCateName(newsCate.getName()); + } + } + vo.setCreateTime(TimeUtils.timestampToDate(item.getCreateTime())); + vo.setUpdateTime(TimeUtils.timestampToDate(item.getUpdateTime())); + list.add(vo); + } + + return PageResult.iPageHandle(iPage.getTotal(), iPage.getCurrent(), iPage.getSize(), list); + } + + /** + * 新闻信息详情 + * + * @author LikeAdmin + * @param id 主键参数 + * @return News + */ + @Override + public NewsDetailVo detail(Integer id) { + News model = newsMapper.selectOne( + new QueryWrapper() + .eq("id", id) + .eq("is_delete", 0) + .last("limit 1")); + + Assert.notNull(model, "数据不存在"); + + NewsDetailVo vo = new NewsDetailVo(); + BeanUtils.copyProperties(model, vo); + return vo; + } + + /** + * 新闻信息新增 + * + * @author LikeAdmin + * @param createValidate 参数 + */ + @Override + public void add(NewsCreateValidate createValidate) { + News model = new News(); + model.setCreateTime(System.currentTimeMillis() / 1000); + model.setUpdateTime(System.currentTimeMillis() / 1000); + model.setIsShow(createValidate.getIsShow()); + model.setSort(createValidate.getSort()); + model.setTitle(createValidate.getTitle()); + model.setSubhead(createValidate.getSubhead()); + model.setNewsImg(createValidate.getNewsImg()); + model.setContent(createValidate.getContent()); + model.setCateId(createValidate.getCateId()); + newsMapper.insert(model); + } + + /** + * 新闻信息编辑 + * + * @author LikeAdmin + * @param updateValidate 参数 + */ + @Override + public void edit(NewsUpdateValidate updateValidate) { + News model = newsMapper.selectOne( + new QueryWrapper() + .eq("id", updateValidate.getId()) + .eq("is_delete", 0) + .last("limit 1")); + + Assert.notNull(model, "数据不存在!"); + + model.setId(updateValidate.getId()); + model.setUpdateTime(System.currentTimeMillis() / 1000); + model.setIsShow(updateValidate.getIsShow()); + model.setSort(updateValidate.getSort()); + model.setTitle(updateValidate.getTitle()); + model.setSubhead(updateValidate.getSubhead()); + model.setNewsImg(updateValidate.getNewsImg()); + model.setContent(updateValidate.getContent()); + model.setCateId(updateValidate.getCateId()); + newsMapper.updateById(model); + } + + /** + * 新闻信息删除 + * + * @author LikeAdmin + * @param id 主键ID + */ + @Override + public void del(Integer id) { + News model = newsMapper.selectOne( + new QueryWrapper() + .eq("id", id) + .eq("is_delete", 0) + .last("limit 1")); + + Assert.notNull(model, "数据不存在!"); + + model.setIsDelete(1); + model.setDeleteTime(System.currentTimeMillis() / 1000); + newsMapper.updateById(model); + } + +} diff --git a/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/validate/news/NewsCreateValidate.java b/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/validate/news/NewsCreateValidate.java new file mode 100644 index 0000000..b9828cf --- /dev/null +++ b/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/validate/news/NewsCreateValidate.java @@ -0,0 +1,43 @@ +package com.wyh.admin.validate.news; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import java.io.Serializable; +import javax.validation.constraints.*; + +@Data +@ApiModel("新闻信息创建参数") +public class NewsCreateValidate implements Serializable { + + private static final long serialVersionUID = 1L; + + @NotNull(message = "isShow参数缺失") + @ApiModelProperty(value = "是否显示") + private Integer isShow; + + @NotNull(message = "sort参数缺失") + @ApiModelProperty(value = "排序") + private Integer sort; + + @NotNull(message = "title参数缺失") + @ApiModelProperty(value = "新闻标题") + private String title; + + @NotNull(message = "subhead参数缺失") + @ApiModelProperty(value = "副标题") + private String subhead; + + @NotNull(message = "newsImg参数缺失") + @ApiModelProperty(value = "新闻主图") + private String newsImg; + + @NotNull(message = "content参数缺失") + @ApiModelProperty(value = "新闻内容") + private String content; + + @NotNull(message = "cateId参数缺失") + @ApiModelProperty(value = "新闻分类id") + private Integer cateId; + +} diff --git a/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/validate/news/NewsSearchValidate.java b/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/validate/news/NewsSearchValidate.java new file mode 100644 index 0000000..bb4ce86 --- /dev/null +++ b/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/validate/news/NewsSearchValidate.java @@ -0,0 +1,35 @@ +package com.wyh.admin.validate.news; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import java.io.Serializable; + +@Data +@ApiModel("新闻信息搜素参数") +public class NewsSearchValidate implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "是否显示") + private Integer isShow; + + @ApiModelProperty(value = "排序") + private Integer sort; + + @ApiModelProperty(value = "新闻标题") + private String title; + + @ApiModelProperty(value = "副标题") + private String subhead; + + @ApiModelProperty(value = "新闻主图") + private String newsImg; + + @ApiModelProperty(value = "新闻内容") + private String content; + + @ApiModelProperty(value = "新闻分类id") + private Integer cateId; + +} diff --git a/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/validate/news/NewsUpdateValidate.java b/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/validate/news/NewsUpdateValidate.java new file mode 100644 index 0000000..40f8e3a --- /dev/null +++ b/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/validate/news/NewsUpdateValidate.java @@ -0,0 +1,52 @@ +package com.wyh.admin.validate.news; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import java.io.Serializable; +import javax.validation.constraints.*; +import com.wyh.common.validator.annotation.IDMust; + +/** + * 新闻信息参数 + * @author LikeAdmin + */ +@Data +@ApiModel("新闻信息更新参数") +public class NewsUpdateValidate implements Serializable { + + private static final long serialVersionUID = 1L; + + @IDMust(message = "id参数必传且需大于0") + @ApiModelProperty(value = "主键") + private String id; + + @NotNull(message = "isShow参数缺失") + @ApiModelProperty(value = "是否显示") + private Integer isShow; + + @NotNull(message = "sort参数缺失") + @ApiModelProperty(value = "排序") + private Integer sort; + + @NotNull(message = "title参数缺失") + @ApiModelProperty(value = "新闻标题") + private String title; + + @NotNull(message = "subhead参数缺失") + @ApiModelProperty(value = "副标题") + private String subhead; + + @NotNull(message = "newsImg参数缺失") + @ApiModelProperty(value = "新闻主图") + private String newsImg; + + @NotNull(message = "content参数缺失") + @ApiModelProperty(value = "新闻内容") + private String content; + + @NotNull(message = "cateId参数缺失") + @ApiModelProperty(value = "新闻分类id") + private Integer cateId; + +} diff --git a/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/vo/news/NewsDetailVo.java b/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/vo/news/NewsDetailVo.java new file mode 100644 index 0000000..7c286ba --- /dev/null +++ b/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/vo/news/NewsDetailVo.java @@ -0,0 +1,40 @@ +package com.wyh.admin.vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +@Data +@ApiModel("新闻信息详情Vo") +public class NewsDetailVo implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "主键") + private String id; + + @ApiModelProperty(value = "是否显示") + private Integer isShow; + + @ApiModelProperty(value = "排序") + private Integer sort; + + @ApiModelProperty(value = "新闻标题") + private String title; + + @ApiModelProperty(value = "副标题") + private String subhead; + + @ApiModelProperty(value = "新闻主图") + private String newsImg; + + @ApiModelProperty(value = "新闻内容") + private String content; + + @ApiModelProperty(value = "新闻分类id") + private Integer cateId; + + +} diff --git a/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/vo/news/NewsListedVo.java b/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/vo/news/NewsListedVo.java new file mode 100644 index 0000000..2444f24 --- /dev/null +++ b/ZJ-java/ZJ-admin/src/main/java/com/wyh/admin/vo/news/NewsListedVo.java @@ -0,0 +1,46 @@ +package com.wyh.admin.vo.news; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +@Data +@ApiModel("新闻信息列表Vo") +public class NewsListedVo implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "主键") + private String id; + + @ApiModelProperty(value = "创建时间") + private String createTime; + + @ApiModelProperty(value = "更新时间") + private String updateTime; + + @ApiModelProperty(value = "是否显示") + private Integer isShow; + + @ApiModelProperty(value = "排序") + private Integer sort; + + @ApiModelProperty(value = "新闻标题") + private String title; + + @ApiModelProperty(value = "副标题") + private String subhead; + + @ApiModelProperty(value = "新闻主图") + private String newsImg; + + @ApiModelProperty(value = "新闻分类id") + private Integer cateId; + + @ApiModelProperty(value = "新闻分类名称") + private String cateName; + + +} diff --git a/ZJ-java/ZJ-admin/src/main/resources/application.yml b/ZJ-java/ZJ-admin/src/main/resources/application.yml index 7fee6d9..b2bf98d 100644 --- a/ZJ-java/ZJ-admin/src/main/resources/application.yml +++ b/ZJ-java/ZJ-admin/src/main/resources/application.yml @@ -14,7 +14,7 @@ ZJ-java: # 是否开启swagger enabled: true # 请求前缀 - pathMapping: /dev-api + pathMapping: # 服务配置 server: diff --git a/ZJ-java/ZJ-common/src/main/java/com/wyh/common/entity/news/News.java b/ZJ-java/ZJ-common/src/main/java/com/wyh/common/entity/news/News.java new file mode 100644 index 0000000..3905e13 --- /dev/null +++ b/ZJ-java/ZJ-common/src/main/java/com/wyh/common/entity/news/News.java @@ -0,0 +1,54 @@ +package com.wyh.common.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +@Data +@ApiModel("新闻信息实体") +public class News implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableId(value="id", type= IdType.AUTO) + @ApiModelProperty(value = "主键") + private String id; + + @ApiModelProperty(value = "是否删除: 0=否, 1=是") + private Integer isDelete; + + @ApiModelProperty(value = "创建时间") + private Long createTime; + + @ApiModelProperty(value = "更新时间") + private Long updateTime; + + @ApiModelProperty(value = "删除时间") + private Long deleteTime; + + @ApiModelProperty(value = "是否显示") + private Integer isShow; + + @ApiModelProperty(value = "排序") + private Integer sort; + + @ApiModelProperty(value = "新闻标题") + private String title; + + @ApiModelProperty(value = "副标题") + private String subhead; + + @ApiModelProperty(value = "新闻主图") + private String newsImg; + + @ApiModelProperty(value = "新闻内容") + private String content; + + @ApiModelProperty(value = "新闻分类id") + private Integer cateId; + +} \ No newline at end of file diff --git a/ZJ-java/ZJ-common/src/main/java/com/wyh/common/mapper/news/NewsMapper.java b/ZJ-java/ZJ-common/src/main/java/com/wyh/common/mapper/news/NewsMapper.java new file mode 100644 index 0000000..a25d752 --- /dev/null +++ b/ZJ-java/ZJ-common/src/main/java/com/wyh/common/mapper/news/NewsMapper.java @@ -0,0 +1,14 @@ +package com.wyh.common.mapper.news; + + +import com.wyh.common.core.basics.IBaseMapper; +import com.wyh.common.entity.News; +import org.apache.ibatis.annotations.Mapper; + +/** + * 新闻信息Mapper + * @author LikeAdmin + */ +@Mapper +public interface NewsMapper extends IBaseMapper { +} diff --git a/admin/src/api/news.ts b/admin/src/api/news.ts new file mode 100644 index 0000000..f19f46e --- /dev/null +++ b/admin/src/api/news.ts @@ -0,0 +1,26 @@ +import request from '@/utils/request' + +// 新闻信息列表 +export function newsLists(params?: Record) { + return request.get({ url: '/news/list', params }) +} + +// 新闻信息详情 +export function newsDetail(params: Record) { + return request.get({ url: '/news/detail', params }) +} + +// 新闻信息新增 +export function newsAdd(params: Record) { + return request.post({ url: '/news/add', params }) +} + +// 新闻信息编辑 +export function newsEdit(params: Record) { + return request.post({ url: '/news/edit', params }) +} + +// 新闻信息删除 +export function newsDelete(params: Record) { + return request.post({ url: '/news/del', params }) +} diff --git a/admin/src/api/newscate.ts b/admin/src/api/newscate.ts index 6ea9cf1..e478ddd 100644 --- a/admin/src/api/newscate.ts +++ b/admin/src/api/newscate.ts @@ -24,3 +24,8 @@ export function newsCateEdit(params: Record) { export function newsCateDelete(params: Record) { return request.post({ url: '/news/cate/del', params }) } + +export function listAll() { + return request.get({ url: '/news/cate/all' }) +} + diff --git a/admin/src/views/basic/company/case/edit.vue b/admin/src/views/basic/company/case/edit.vue index 978feae..11c47be 100644 --- a/admin/src/views/basic/company/case/edit.vue +++ b/admin/src/views/basic/company/case/edit.vue @@ -9,7 +9,7 @@ @confirm="handleSubmit" @close="handleClose" > - + diff --git a/admin/src/views/news/edit.vue b/admin/src/views/news/edit.vue new file mode 100644 index 0000000..42f8936 --- /dev/null +++ b/admin/src/views/news/edit.vue @@ -0,0 +1,197 @@ + + diff --git a/admin/src/views/news/index.vue b/admin/src/views/news/index.vue new file mode 100644 index 0000000..2c59279 --- /dev/null +++ b/admin/src/views/news/index.vue @@ -0,0 +1,173 @@ + +