src/main/java/cc/mrbird/febs/mall/controller/AdminMallMemberController.java
@@ -280,44 +280,6 @@ return mallMemberService.updateAppVersion(appVersion); } /** * 新闻中心-列表 * @param mallNewsInfo * @param request * @return */ @GetMapping("getNewInfoList") public FebsResponse getNewInfoList(MallNewsInfo mallNewsInfo, QueryRequest request) { Map<String, Object> data = getDataTable(mallMemberService.getNewInfoList(mallNewsInfo, request)); return new FebsResponse().success().data(data); } /** * 新闻中心-新增 */ @PostMapping("addNewsInfo") @ControllerEndpoint(operation = " 新闻中心-新增", exceptionMessage = "操作失败") public FebsResponse addNewsInfo(@Valid MallNewsInfoDto mallNewsInfoDto) { return mallMemberService.addNewsInfo(mallNewsInfoDto); } /** * 新闻中心-删除 */ @GetMapping("delNewsInfo/{id}") @ControllerEndpoint(operation = " 新闻中心-删除", exceptionMessage = "操作失败") public FebsResponse delNewsInfo(@NotNull(message = "{required}") @PathVariable Long id) { return mallMemberService.delNewsInfo(id); } /** * 新闻中心-更新 */ @PostMapping("updateNewsInfo") @ControllerEndpoint(operation = "新闻中心-更新", exceptionMessage = "操作失败") public FebsResponse updateNewsInfo(@Valid MallNewsInfoDto mallNewsInfoDto) { return mallMemberService.updateNewsInfo(mallNewsInfoDto); } @PostMapping("resetPwd/{id}") @ControllerEndpoint(operation = "会员列表---重置密码", exceptionMessage = "重置密码失败") src/main/java/cc/mrbird/febs/mall/controller/AdminNewsInfoController.java
New file @@ -0,0 +1,71 @@ package cc.mrbird.febs.mall.controller; import cc.mrbird.febs.common.annotation.ControllerEndpoint; import cc.mrbird.febs.common.controller.BaseController; import cc.mrbird.febs.common.entity.FebsResponse; import cc.mrbird.febs.common.entity.QueryRequest; import cc.mrbird.febs.mall.dto.MallNewsInfoDto; import cc.mrbird.febs.mall.entity.MallNewsInfo; import cc.mrbird.febs.mall.service.IMallNewsInfoService; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import javax.validation.constraints.NotNull; import java.util.Map; /** * @author wzy * @date 2022-05-13 **/ @Slf4j @Validated @RestController @RequiredArgsConstructor @RequestMapping(value = "/admin/news") public class AdminNewsInfoController extends BaseController { private final IMallNewsInfoService mallNewsInfoService; /** * 新闻中心-列表 * @param mallNewsInfo * @param request * @return */ @GetMapping("getNewInfoList") public FebsResponse getNewInfoList(MallNewsInfo mallNewsInfo, QueryRequest request) { Map<String, Object> data = getDataTable(mallNewsInfoService.getNewInfoList(mallNewsInfo, request)); return new FebsResponse().success().data(data); } /** * 新闻中心-新增 */ @PostMapping("addNewsInfo") @ControllerEndpoint(operation = " 新闻中心-新增", exceptionMessage = "操作失败") public FebsResponse addNewsInfo(@Valid MallNewsInfoDto mallNewsInfoDto) { return mallNewsInfoService.addNewsInfo(mallNewsInfoDto); } /** * 新闻中心-删除 */ @GetMapping("delNewsInfo/{id}") @ControllerEndpoint(operation = " 新闻中心-删除", exceptionMessage = "操作失败") public FebsResponse delNewsInfo(@NotNull(message = "{required}") @PathVariable Long id) { return mallNewsInfoService.delNewsInfo(id); } /** * 新闻中心-更新 */ @PostMapping("updateNewsInfo") @ControllerEndpoint(operation = "新闻中心-更新", exceptionMessage = "操作失败") public FebsResponse updateNewsInfo(@Valid MallNewsInfoDto mallNewsInfoDto) { return mallNewsInfoService.updateNewsInfo(mallNewsInfoDto); } } src/main/java/cc/mrbird/febs/mall/controller/ViewMallMemberController.java
@@ -240,41 +240,6 @@ return FebsUtil.view("modules/mallMember/appVerSionUpdate"); } /** * 新闻中心-列表 * @return */ @GetMapping("newsInfoList") @RequiresPermissions("newsInfoList:view") public String newsInfoList() { return FebsUtil.view("modules/mallMember/newsInfoList"); } /** * 新闻中心-新增 * @return */ @GetMapping("newsInfoAdd") @RequiresPermissions("newsInfoAdd:add") public String newsInfoAdd() { return FebsUtil.view("modules/mallMember/newsInfoAdd"); } /** * 新闻中心-详情 * @param id * @param model * @return */ @GetMapping("newsInfoUpdate/{id}") @RequiresPermissions("newsInfoUpdate:update") public String newsInfoUpdate(@PathVariable long id, Model model) { MallNewsInfo data = mallMemberService.getNewsInfoById(id); model.addAttribute("newsInfo", data); return FebsUtil.view("modules/mallMember/newsInfoUpdate"); } @GetMapping("shopApply") public String shopApply() { src/main/java/cc/mrbird/febs/mall/controller/ViewNewsController.java
New file @@ -0,0 +1,59 @@ package cc.mrbird.febs.mall.controller; import cc.mrbird.febs.common.entity.FebsConstant; import cc.mrbird.febs.common.utils.FebsUtil; import cc.mrbird.febs.mall.entity.MallNewsInfo; import cc.mrbird.febs.mall.service.IMallNewsInfoService; import lombok.RequiredArgsConstructor; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; /** * @author wzy * @date 2022-05-13 **/ @Controller("newView") @RequestMapping(FebsConstant.VIEW_PREFIX + "modules/news") @RequiredArgsConstructor public class ViewNewsController { private final IMallNewsInfoService mallNewsInfoService; /** * 新闻中心-列表 * @return */ @GetMapping("newsInfoList") @RequiresPermissions("newsInfoList:view") public String newsInfoList() { return FebsUtil.view("modules/news/newsInfoList"); } /** * 新闻中心-新增 * @return */ @GetMapping("newsInfoAdd") @RequiresPermissions("newsInfoAdd:add") public String newsInfoAdd() { return FebsUtil.view("modules/news/newsInfoAdd"); } /** * 新闻中心-详情 * @param id * @param model * @return */ @GetMapping("newsInfoUpdate/{id}") @RequiresPermissions("newsInfoUpdate:update") public String newsInfoUpdate(@PathVariable long id, Model model) { MallNewsInfo data = mallNewsInfoService.getNewsInfoById(id); model.addAttribute("newsInfo", data); return FebsUtil.view("modules/news/newsInfoUpdate"); } } src/main/java/cc/mrbird/febs/mall/entity/MallNewsCategory.java
New file @@ -0,0 +1,16 @@ package cc.mrbird.febs.mall.entity; import cc.mrbird.febs.common.entity.BaseEntity; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; /** * @author wzy * @date 2022-05-13 **/ @Data @TableName("mall_news_category") public class MallNewsCategory extends BaseEntity { private String title; } src/main/java/cc/mrbird/febs/mall/service/IAdminMallMemberService.java
@@ -66,16 +66,6 @@ FebsResponse activateAccount(Long id); MallNewsInfo getNewsInfoById(long id); IPage<AdminMallNewsInfoVo> getNewInfoList(MallNewsInfo mallNewsInfo, QueryRequest request); FebsResponse addNewsInfo(MallNewsInfoDto mallNewsInfoDto); FebsResponse delNewsInfo(Long id); FebsResponse updateNewsInfo(MallNewsInfoDto mallNewsInfoDto); FebsResponse updateSystemPay(MallSystemPayDto mallSystemPayDto); AdminAgentLevelSetInfoVo getAgentLevelSetInfoByMemberId(long id); src/main/java/cc/mrbird/febs/mall/service/IMallNewsInfoService.java
New file @@ -0,0 +1,22 @@ package cc.mrbird.febs.mall.service; import cc.mrbird.febs.common.entity.FebsResponse; import cc.mrbird.febs.common.entity.QueryRequest; import cc.mrbird.febs.mall.dto.MallNewsInfoDto; import cc.mrbird.febs.mall.entity.MallNewsInfo; import cc.mrbird.febs.mall.vo.AdminMallNewsInfoVo; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.IService; public interface IMallNewsInfoService extends IService<MallNewsInfo> { IPage<AdminMallNewsInfoVo> getNewInfoList(MallNewsInfo mallNewsInfo, QueryRequest request); FebsResponse addNewsInfo(MallNewsInfoDto mallNewsInfoDto); FebsResponse delNewsInfo(Long id); FebsResponse updateNewsInfo(MallNewsInfoDto mallNewsInfoDto); MallNewsInfo getNewsInfoById(long id); } src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java
@@ -319,73 +319,6 @@ } @Override public MallNewsInfo getNewsInfoById(long id) { return mallNewsInfoMapper.selectById(id); } @Override public IPage<AdminMallNewsInfoVo> getNewInfoList(MallNewsInfo mallNewsInfo, QueryRequest request) { Page<AdminMallNewsInfoVo> page = new Page<>(request.getPageNum(), request.getPageSize()); IPage<AdminMallNewsInfoVo> adminMallNewsInfoVos = mallNewsInfoMapper.getNewInfoListInPage(page, mallNewsInfo); return adminMallNewsInfoVos; } @Override public FebsResponse addNewsInfo(MallNewsInfoDto mallNewsInfoDto) { Integer type = mallNewsInfoDto.getType(); if(type == 2){ Long goodsId = mallNewsInfoDto.getGoodsId()==null?0L:mallNewsInfoDto.getGoodsId(); if(goodsId == 0L){ return new FebsResponse().fail().message("请选择跳转的产品"); } } MallNewsInfo mallNewsInfo = new MallNewsInfo(); mallNewsInfo.setTitle(mallNewsInfoDto.getTitle()); mallNewsInfo.setContent(mallNewsInfoDto.getContent()); mallNewsInfo.setType(mallNewsInfoDto.getType()); if(mallNewsInfoDto.getType() == 2){ mallNewsInfo.setTargetId(mallNewsInfoDto.getGoodsId()); } mallNewsInfoMapper.insert(mallNewsInfo); return new FebsResponse().success(); } @Override public FebsResponse delNewsInfo(Long id) { MallNewsInfo mallNewsInfo = mallNewsInfoMapper.selectById(id); if(ObjectUtil.isEmpty(mallNewsInfo)){ return new FebsResponse().fail().message("系统繁忙,请刷新页面重试"); } mallNewsInfoMapper.deleteById(id); return new FebsResponse().success(); } @Override public FebsResponse updateNewsInfo(MallNewsInfoDto mallNewsInfoDto) { MallNewsInfo mallNewsInfoBefore = mallNewsInfoMapper.selectById(mallNewsInfoDto.getId()); if(ObjectUtil.isEmpty(mallNewsInfoBefore)){ return new FebsResponse().fail().message("系统繁忙,请刷新页面重试"); } Integer type = mallNewsInfoDto.getType(); if(type == 2){ Long goodsId = mallNewsInfoDto.getGoodsId()==null?0L:mallNewsInfoDto.getGoodsId(); if(goodsId == 0L){ return new FebsResponse().fail().message("请选择跳转的产品"); } } MallNewsInfo mallNewsInfo = new MallNewsInfo(); mallNewsInfo.setTitle(mallNewsInfoDto.getTitle()); mallNewsInfo.setContent(mallNewsInfoDto.getContent()); mallNewsInfo.setType(mallNewsInfoDto.getType()); if(mallNewsInfoDto.getType() == 2){ mallNewsInfo.setTargetId(mallNewsInfoDto.getGoodsId()); } mallNewsInfoMapper.insert(mallNewsInfo); mallNewsInfoMapper.deleteById(mallNewsInfoDto.getId()); return new FebsResponse().success(); } @Override @Transactional public FebsResponse updateSystemPay(MallSystemPayDto mallSystemPayDto) { Long memberId = mallSystemPayDto.getId(); src/main/java/cc/mrbird/febs/mall/service/impl/MallNewsInfoServiceImpl.java
New file @@ -0,0 +1,93 @@ package cc.mrbird.febs.mall.service.impl; import cc.mrbird.febs.common.entity.FebsResponse; import cc.mrbird.febs.common.entity.QueryRequest; import cc.mrbird.febs.mall.dto.MallNewsInfoDto; import cc.mrbird.febs.mall.entity.MallNewsInfo; import cc.mrbird.febs.mall.mapper.MallNewsInfoMapper; import cc.mrbird.febs.mall.service.IMallNewsInfoService; import cc.mrbird.febs.mall.vo.AdminMallNewsInfoVo; import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; /** * @author wzy * @date 2022-05-13 **/ @Slf4j @Service @RequiredArgsConstructor public class MallNewsInfoServiceImpl extends ServiceImpl<MallNewsInfoMapper, MallNewsInfo> implements IMallNewsInfoService { @Override public IPage<AdminMallNewsInfoVo> getNewInfoList(MallNewsInfo mallNewsInfo, QueryRequest request) { Page<AdminMallNewsInfoVo> page = new Page<>(request.getPageNum(), request.getPageSize()); IPage<AdminMallNewsInfoVo> adminMallNewsInfoVos = this.baseMapper.getNewInfoListInPage(page, mallNewsInfo); return adminMallNewsInfoVos; } @Override public FebsResponse addNewsInfo(MallNewsInfoDto mallNewsInfoDto) { Integer type = mallNewsInfoDto.getType(); if(type == 2){ Long goodsId = mallNewsInfoDto.getGoodsId()==null?0L:mallNewsInfoDto.getGoodsId(); if(goodsId == 0L){ return new FebsResponse().fail().message("请选择跳转的产品"); } } MallNewsInfo mallNewsInfo = new MallNewsInfo(); mallNewsInfo.setTitle(mallNewsInfoDto.getTitle()); mallNewsInfo.setContent(mallNewsInfoDto.getContent()); mallNewsInfo.setType(mallNewsInfoDto.getType()); if(mallNewsInfoDto.getType() == 2){ mallNewsInfo.setTargetId(mallNewsInfoDto.getGoodsId()); } this.baseMapper.insert(mallNewsInfo); return new FebsResponse().success(); } @Override public FebsResponse delNewsInfo(Long id) { MallNewsInfo mallNewsInfo = this.baseMapper.selectById(id); if(ObjectUtil.isEmpty(mallNewsInfo)){ return new FebsResponse().fail().message("系统繁忙,请刷新页面重试"); } this.baseMapper.deleteById(id); return new FebsResponse().success(); } @Override public FebsResponse updateNewsInfo(MallNewsInfoDto mallNewsInfoDto) { MallNewsInfo mallNewsInfoBefore = this.baseMapper.selectById(mallNewsInfoDto.getId()); if(ObjectUtil.isEmpty(mallNewsInfoBefore)){ return new FebsResponse().fail().message("系统繁忙,请刷新页面重试"); } Integer type = mallNewsInfoDto.getType(); if(type == 2){ Long goodsId = mallNewsInfoDto.getGoodsId()==null?0L:mallNewsInfoDto.getGoodsId(); if(goodsId == 0L){ return new FebsResponse().fail().message("请选择跳转的产品"); } } MallNewsInfo mallNewsInfo = new MallNewsInfo(); mallNewsInfo.setTitle(mallNewsInfoDto.getTitle()); mallNewsInfo.setContent(mallNewsInfoDto.getContent()); mallNewsInfo.setType(mallNewsInfoDto.getType()); if(mallNewsInfoDto.getType() == 2){ mallNewsInfo.setTargetId(mallNewsInfoDto.getGoodsId()); } this.baseMapper.insert(mallNewsInfo); this.baseMapper.deleteById(mallNewsInfoDto.getId()); return new FebsResponse().success(); } @Override public MallNewsInfo getNewsInfoById(long id) { return this.baseMapper.selectById(id); } } src/main/resources/templates/febs/views/modules/news/newsInfoAdd.html
src/main/resources/templates/febs/views/modules/news/newsInfoList.html
File was renamed from src/main/resources/templates/febs/views/modules/mallMember/newsInfoList.html @@ -58,7 +58,7 @@ var data = obj.data, layEvent = obj.event; if (layEvent === 'newsInfoUpdate') { febs.modal.open('编辑', 'modules/mallMember/newsInfoUpdate/' + data.id, { febs.modal.open('编辑', 'modules/news/newsInfoUpdate/' + data.id, { btn: ['提交', '取消'], yes: function (index, layero) { $('#systemPay-update').find('#submit').trigger('click'); @@ -76,7 +76,7 @@ }); function delNewsInfo(id) { febs.get(ctx + 'admin/mallMember/delNewsInfo/' + id, null, function () { febs.get(ctx + 'admin/news/delNewsInfo/' + id, null, function () { febs.alert.success('操作成功'); $query.click(); }); @@ -96,7 +96,7 @@ }); $add.on('click', function () { febs.modal.open('新增', 'modules/mallMember/newsInfoAdd/', { febs.modal.open('新增', 'modules/news/newsInfoAdd/', { btn: ['提交', '取消'], yes: function (index, layero) { $('#newsInfo-add').find('#submit').trigger('click'); @@ -111,7 +111,7 @@ tableIns = febs.table.init({ elem: $view.find('table'), id: 'newInfoTable', url: ctx + 'admin/mallMember/getNewInfoList', url: ctx + 'admin/news/getNewInfoList', cols: [[ {field: 'title', title: '标题', minWidth: 120,align:'center'}, {field: 'content', title: '内容', minWidth: 120,align:'center'}, src/main/resources/templates/febs/views/modules/news/newsInfoUpdate.html