From 5580d056b3a49e40d637888f3fecac8e4269ea09 Mon Sep 17 00:00:00 2001 From: tangzh Date: Sat, 15 Mar 2025 17:50:18 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/zbkj/common/constants/Constants.java | 5 +- .../zbkj/common/model/category/Category.java | 2 +- .../model/system/SystemHelpProblem.java | 76 ++++++++++ .../com/zbkj/common/request/HelpRequest.java | 67 +++++++++ .../zbkj/common/response/HelpResponse.java | 74 +++++++++ .../com/zbkj/common/utils/DeliveryUtil.java | 8 +- .../java/com/zbkj/front/config/WebConfig.java | 1 + .../zbkj/front/controller/HelpController.java | 76 ++++++++++ .../front/controller/ProblemController.java | 12 +- .../controller/StoreOrderController.java | 2 +- .../java/com/zbkj/service/dao/HelpDao.java | 14 ++ .../com/zbkj/service/service/HelpService.java | 66 ++++++++ .../impl/DeliverySetTimeServiceImpl.java | 2 +- .../service/service/impl/HelpServiceImpl.java | 141 ++++++++++++++++++ .../mapper/system/SystemHelpProblemMapper.xml | 27 ++++ 15 files changed, 559 insertions(+), 14 deletions(-) create mode 100644 food-common/src/main/java/com/zbkj/common/model/system/SystemHelpProblem.java create mode 100644 food-common/src/main/java/com/zbkj/common/request/HelpRequest.java create mode 100644 food-common/src/main/java/com/zbkj/common/response/HelpResponse.java create mode 100644 food-front/src/main/java/com/zbkj/front/controller/HelpController.java create mode 100644 food-service/src/main/java/com/zbkj/service/dao/HelpDao.java create mode 100644 food-service/src/main/java/com/zbkj/service/service/HelpService.java create mode 100644 food-service/src/main/java/com/zbkj/service/service/impl/HelpServiceImpl.java create mode 100644 food-service/src/main/resources/mapper/system/SystemHelpProblemMapper.xml diff --git a/food-common/src/main/java/com/zbkj/common/constants/Constants.java b/food-common/src/main/java/com/zbkj/common/constants/Constants.java index 8759338..1342186 100644 --- a/food-common/src/main/java/com/zbkj/common/constants/Constants.java +++ b/food-common/src/main/java/com/zbkj/common/constants/Constants.java @@ -297,13 +297,16 @@ public class Constants { public static final String SEARCH_DATE_YEAR = "year"; //年 public static final String SEARCH_DATE_PRE_YEAR = "preYear"; //上一年 - //分类服务类型 类型,1 产品分类,2 附件分类,4 设置分类, 5 菜单分类,6 配置分类,11 套餐分类 + //分类服务类型 类型,1 产品分类,2 附件分类,4 设置分类, 5 菜单分类,6 配置分类,7 秒杀分类,8 套餐分类,9 帮助分类 public static final int CATEGORY_TYPE_PRODUCT = 1; //产品 public static final int CATEGORY_TYPE_ATTACHMENT = 2; //附件分类 public static final int CATEGORY_TYPE_ARTICLE = 3; //文章分类 public static final int CATEGORY_TYPE_SET = 4; //设置分类 public static final int CATEGORY_TYPE_MENU = 5; //菜单分类 public static final int CATEGORY_TYPE_CONFIG = 6; //配置分类 + public static final int CATEGORY_TYPE_SECKILL = 7; //秒杀分类 + public static final int CATEGORY_TYPE_SET_MEAL = 8; //套餐分类 + public static final int CATEGORY_TYPE_HELP = 9; //帮助分类 // 首页Banner图片 public static final int INDEX_RECOMMEND_BANNER = 1; //是否精品 推荐Banner图片 diff --git a/food-common/src/main/java/com/zbkj/common/model/category/Category.java b/food-common/src/main/java/com/zbkj/common/model/category/Category.java index b503b7e..9811f64 100644 --- a/food-common/src/main/java/com/zbkj/common/model/category/Category.java +++ b/food-common/src/main/java/com/zbkj/common/model/category/Category.java @@ -31,7 +31,7 @@ public class Category implements Serializable { @ApiModelProperty(value = "分类名称") private String name; - @ApiModelProperty(value = "类型ID | 类型,1 产品分类,2 附件分类,3 文章分类, 4 设置分类, 5 菜单分类, 6 配置分类, 7 秒杀配置,8 活动分类,9 游戏分类,10 文章分类 ") + @ApiModelProperty(value = "类型ID | 1 产品分类,2 附件分类,4 设置分类, 5 菜单分类,6 配置分类,7 秒杀配置,8 套餐分类,9 帮助分类 ") private Integer type; @ApiModelProperty(value = "地址") diff --git a/food-common/src/main/java/com/zbkj/common/model/system/SystemHelpProblem.java b/food-common/src/main/java/com/zbkj/common/model/system/SystemHelpProblem.java new file mode 100644 index 0000000..334c929 --- /dev/null +++ b/food-common/src/main/java/com/zbkj/common/model/system/SystemHelpProblem.java @@ -0,0 +1,76 @@ +package com.zbkj.common.model.system; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import java.io.Serializable; +import java.util.Date; + +/** + * 帮助问题 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@TableName("eb_system_help_problem") +@ApiModel(value="SystemHelpProblem对象", description="SystemHelpProblem对象") +public class SystemHelpProblem implements Serializable { + + private static final long serialVersionUID=1L; + + @ApiModelProperty(value = "id") + @TableId(value = "id", type = IdType.AUTO) + private Integer id; + + @ApiModelProperty(value = "分类id") + private String cid; + + @ApiModelProperty(value = "标题") + private String title; + + @ApiModelProperty(value = "简介") + private String synopsis; + + @ApiModelProperty(value = "内容") + private String content; + + @ApiModelProperty(value = "图片") + private String image; + + @ApiModelProperty(value = "跳转地址") + private String jumpUrl; + + @ApiModelProperty(value = "分享标题") + private String shareTitle; + + @ApiModelProperty(value = "分享简介") + private String shareSynopsis; + + @ApiModelProperty(value = "分享图片") + private String shareImage; + + @ApiModelProperty(value = "排序") + private Integer sort; + + @ApiModelProperty(value = "有用") + private Integer usefulNum; + + @ApiModelProperty(value = "无用") + private Integer uselessNum; + + @ApiModelProperty(value = "状态") + private Boolean status; + + @ApiModelProperty(value = "创建时间") + private Date createTime; + + @ApiModelProperty(value = "创建时间") + private Date updateTime; + +} diff --git a/food-common/src/main/java/com/zbkj/common/request/HelpRequest.java b/food-common/src/main/java/com/zbkj/common/request/HelpRequest.java new file mode 100644 index 0000000..36cfe7e --- /dev/null +++ b/food-common/src/main/java/com/zbkj/common/request/HelpRequest.java @@ -0,0 +1,67 @@ +package com.zbkj.common.request; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.hibernate.validator.constraints.Length; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * 文章管理 Request + + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@ApiModel(value="HelpRequest对象", description="HelpRequest对象") +public class HelpRequest implements Serializable { + + private static final long serialVersionUID=1L; + + @ApiModelProperty(value = "分类id", required = true) + @NotBlank(message = "请选择分类") + private String cid; + + @ApiModelProperty(value = "标题", required = true) + @NotBlank(message = "请填写标题") + @Length(max = 200, message = "标题最多200个字符") + private String title; + + @ApiModelProperty(value = "简介") + @Length(max = 200, message = "简介最多200个字符") + private String synopsis; + + @ApiModelProperty(value = "内容", required = true) + @NotBlank(message = "请填写内容") + private String content; + + @ApiModelProperty(value = "图片") + private String image; + + @ApiModelProperty(value = "跳转地址") + private String jumpUrl; + + @ApiModelProperty(value = "分享标题") + @Length(max = 200, message = "分享标题最多200个字符") + private String shareTitle; + + @ApiModelProperty(value = "分享简介") + @Length(max = 200, message = "分享简介最多200个字符") + private String shareSynopsis; + + @ApiModelProperty(value = "分析图片") + @Length(max = 255, message = "分析图片名称最多255个字符") + private String shareImage; + + @ApiModelProperty(value = "排序") + private String sort; + + @ApiModelProperty(value = "状态 0无效,1有效") + private String status; + +} diff --git a/food-common/src/main/java/com/zbkj/common/response/HelpResponse.java b/food-common/src/main/java/com/zbkj/common/response/HelpResponse.java new file mode 100644 index 0000000..e4332d3 --- /dev/null +++ b/food-common/src/main/java/com/zbkj/common/response/HelpResponse.java @@ -0,0 +1,74 @@ +package com.zbkj.common.response; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.springframework.data.annotation.Transient; + +import java.io.Serializable; +import java.util.Date; + +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@ApiModel(value="HelpResponse对象", description="HelpResponse对象") +public class HelpResponse implements Serializable { + + private static final long serialVersionUID = -4585094537501770138L; + + @ApiModelProperty(value = "id") + private Integer id; + + @ApiModelProperty(value = "分类id") + private String cid; + + @Transient + @TableField(exist = false) + @ApiModelProperty(value = "分类名称") + private String cName; + + @ApiModelProperty(value = "标题") + private String title; + + @ApiModelProperty(value = "简介") + private String synopsis; + + @ApiModelProperty(value = "内容") + private String content; + + @ApiModelProperty(value = "图片") + private String image; + + @ApiModelProperty(value = "跳转地址") + private String jumpUrl; + + @ApiModelProperty(value = "分享标题") + private String shareTitle; + + @ApiModelProperty(value = "分享简介") + private String shareSynopsis; + + @ApiModelProperty(value = "分享图片") + private String shareImage; + + @ApiModelProperty(value = "排序") + private Integer sort; + + @ApiModelProperty(value = "有用") + private Integer usefulNum; + + @ApiModelProperty(value = "无用") + private Integer uselessNum; + + @ApiModelProperty(value = "状态") + private Boolean status; + + @ApiModelProperty(value = "创建时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8") + private Date createTime; + +} diff --git a/food-common/src/main/java/com/zbkj/common/utils/DeliveryUtil.java b/food-common/src/main/java/com/zbkj/common/utils/DeliveryUtil.java index 214c6bf..3ddd271 100644 --- a/food-common/src/main/java/com/zbkj/common/utils/DeliveryUtil.java +++ b/food-common/src/main/java/com/zbkj/common/utils/DeliveryUtil.java @@ -92,15 +92,15 @@ public class DeliveryUtil { long daysUntil = ChronoUnit.DAYS.between(today, targetDate); // 判断日期 if (targetDate.isEqual(today)) { - return "今天 " + md; + return "今天 " + targetDate.format(md); } else if (targetDate.isAfter(today)) { switch ((int) daysUntil) { case 1: - return "明天 " + md; + return "明天 " + targetDate.format(md); case 2: - return "后天 " + md; + return "后天 " + targetDate.format(md); default: - return "其他 " + md; + return "其他 " + targetDate.format(md); } } return ""; diff --git a/food-front/src/main/java/com/zbkj/front/config/WebConfig.java b/food-front/src/main/java/com/zbkj/front/config/WebConfig.java index 414342e..c1a6513 100644 --- a/food-front/src/main/java/com/zbkj/front/config/WebConfig.java +++ b/food-front/src/main/java/com/zbkj/front/config/WebConfig.java @@ -85,6 +85,7 @@ public class WebConfig implements WebMvcConfigurer { excludePathPatterns("/api/front/setMeal/**"). excludePathPatterns("/api/front/problem/*"). excludePathPatterns("/api/front/problem/son/*"). + excludePathPatterns("/api/front/help/**"). excludePathPatterns("/swagger-resources/**", "/webjars/**", "/v2/**", "/swagger-ui.html/**"); } diff --git a/food-front/src/main/java/com/zbkj/front/controller/HelpController.java b/food-front/src/main/java/com/zbkj/front/controller/HelpController.java new file mode 100644 index 0000000..99f3a1a --- /dev/null +++ b/food-front/src/main/java/com/zbkj/front/controller/HelpController.java @@ -0,0 +1,76 @@ +package com.zbkj.front.controller; + +import com.zbkj.common.model.system.SystemHelpProblem; +import com.zbkj.common.page.CommonPage; +import com.zbkj.common.response.CommonResult; +import com.zbkj.common.request.PageParamRequest; +import com.zbkj.common.model.category.Category; +import com.zbkj.common.response.HelpResponse; +import com.zbkj.service.service.HelpService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.List; +import java.util.stream.Collectors; + +@Slf4j +@RestController("HelpController") +@RequestMapping("api/front/help") +@Api(tags = "帮助与问题") +public class HelpController { + + @Autowired + private HelpService helpService; + + @ApiOperation(value = "分类列表") + @RequestMapping(value = "/category/list", method = RequestMethod.GET) + public CommonResult> categoryList() { + return CommonResult.success(CommonPage.restPage(helpService.getCategoryList())); + } + + @ApiOperation(value = "分页列表") + @RequestMapping(value = "/list/{cid}", method = RequestMethod.GET) + public CommonResult> getListArticle(@PathVariable(name="cid") String cid, @Validated PageParamRequest pageParamRequest) { + List list = helpService.getListHelp(cid, pageParamRequest); + List responseList = list.stream().map(e -> { + HelpResponse response = new HelpResponse(); + BeanUtils.copyProperties(e, response); + return response; + }).collect(Collectors.toList()); + return CommonResult.success(CommonPage.restPage(responseList)); + } + + @ApiOperation(value = "详情") + @RequestMapping(value = "/info", method = RequestMethod.GET) + @ApiImplicitParam(name="id", value="id") + public CommonResult info(@RequestParam(value = "id") Integer id) { + SystemHelpProblem detail = helpService.getDetail(id); + HelpResponse response = new HelpResponse(); + BeanUtils.copyProperties(detail, response); + return CommonResult.success(response); + } + + @ApiOperation(value = "有用/无用") + @RequestMapping(value = "/praise", method = RequestMethod.GET) + @ApiImplicitParams({ + @ApiImplicitParam(name = "id", value = "id"), + @ApiImplicitParam(name = "type", value = "类型:1已解决,2为解决", allowableValues = "range[1,2]") + }) + public CommonResult praise(@RequestParam(value = "id") Integer id, @RequestParam(value = "type") Integer type) { + if (helpService.feedback(id, type)) { + return CommonResult.success(); + } else { + return CommonResult.failed(); + } + } +} + + + diff --git a/food-front/src/main/java/com/zbkj/front/controller/ProblemController.java b/food-front/src/main/java/com/zbkj/front/controller/ProblemController.java index e74fda3..69ab1ef 100644 --- a/food-front/src/main/java/com/zbkj/front/controller/ProblemController.java +++ b/food-front/src/main/java/com/zbkj/front/controller/ProblemController.java @@ -19,26 +19,26 @@ import java.util.List; @Slf4j @RestController("ProblemController") -@RequestMapping("api/front") +@RequestMapping("api/front/problem") @Api(tags = "商品常见问题") public class ProblemController { @Autowired private StoreProductProblemService storeProductProblemService; @ApiOperation(value = "常见问题列表") - @RequestMapping(value = "/problem/{productId}", method = RequestMethod.GET) + @RequestMapping(value = "/{productId}", method = RequestMethod.GET) public CommonResult> getResponseList(@PathVariable Integer productId, @Validated PageParamRequest pageParamRequest) { return CommonResult.success(storeProductProblemService.getResponseList(productId, pageParamRequest)); } @ApiOperation(value = "常见问题列表-子回复列表") - @RequestMapping(value = "/problem/son/{majorId}", method = RequestMethod.GET) + @RequestMapping(value = "/son/{majorId}", method = RequestMethod.GET) public CommonResult> getSonResponseList(@PathVariable Integer majorId, @Validated PageParamRequest pageParamRequest) { return CommonResult.success(storeProductProblemService.getSonResponseList(majorId, pageParamRequest)); } @ApiOperation(value = "常见问题-提问/回复") - @PostMapping("/problem/commit") + @PostMapping("/commit") public CommonResult commitProblem(@RequestBody CommitProblemRequest request) { if (storeProductProblemService.commitProblem(request) > 0) { return CommonResult.success(); @@ -47,7 +47,7 @@ public class ProblemController { } @ApiOperation(value = "常见问题-点赞/取消点赞") - @RequestMapping(value = "/problem/praise/{majorId}", method = RequestMethod.GET) + @RequestMapping(value = "/praise/{majorId}", method = RequestMethod.GET) public CommonResult praise(@PathVariable Integer majorId) { if (storeProductProblemService.praiseProblem(majorId) > 0) { return CommonResult.success(); @@ -56,7 +56,7 @@ public class ProblemController { } @ApiOperation(value = "常见问题列表-删除") - @RequestMapping(value = "/problem/del/{majorId}", method = RequestMethod.GET) + @RequestMapping(value = "/del/{majorId}", method = RequestMethod.GET) public CommonResult delProblem(@PathVariable Integer majorId) { if (storeProductProblemService.delProblem(majorId) > 0) { return CommonResult.success(); diff --git a/food-front/src/main/java/com/zbkj/front/controller/StoreOrderController.java b/food-front/src/main/java/com/zbkj/front/controller/StoreOrderController.java index 4048497..d6d3655 100644 --- a/food-front/src/main/java/com/zbkj/front/controller/StoreOrderController.java +++ b/food-front/src/main/java/com/zbkj/front/controller/StoreOrderController.java @@ -22,7 +22,7 @@ import java.util.Map; */ @Slf4j -@RestController("StoreOrderFrontController") +@RestController("StoreOrderController") @RequestMapping("api/front/order") @Api(tags = "订单") public class StoreOrderController { diff --git a/food-service/src/main/java/com/zbkj/service/dao/HelpDao.java b/food-service/src/main/java/com/zbkj/service/dao/HelpDao.java new file mode 100644 index 0000000..38c619b --- /dev/null +++ b/food-service/src/main/java/com/zbkj/service/dao/HelpDao.java @@ -0,0 +1,14 @@ +package com.zbkj.service.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.zbkj.common.model.article.Article; +import com.zbkj.common.model.system.SystemHelpProblem; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +public interface HelpDao extends BaseMapper { + + List getListHelp(@Param("cid") String cid); + +} diff --git a/food-service/src/main/java/com/zbkj/service/service/HelpService.java b/food-service/src/main/java/com/zbkj/service/service/HelpService.java new file mode 100644 index 0000000..f801f94 --- /dev/null +++ b/food-service/src/main/java/com/zbkj/service/service/HelpService.java @@ -0,0 +1,66 @@ +package com.zbkj.service.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.zbkj.common.model.category.Category; +import com.zbkj.common.model.system.SystemHelpProblem; +import com.zbkj.common.request.HelpRequest; +import com.zbkj.common.request.PageParamRequest; + +import java.util.List; + +/** +* ArticleService 接口 + +*/ +public interface HelpService extends IService { + + + /** + * 列表 + * @param cid 分类id + * @param pageParamRequest 分页类参数 + */ + List getListHelp(String cid, PageParamRequest pageParamRequest); + + /** + * 获取文章分类列表 + * @return List + */ + List getCategoryList(); + + /** + * 新增 + * @param request 新增参数 + * @return Boolean + */ + Boolean create(HelpRequest request); + + /** + * 删除 + * @param id 文章id + * @return Boolean + */ + Boolean deleteById(Integer id); + + /** + * 修改 + * @param id id + * @param request 修改参数 + */ + Boolean updateHelp(Integer id, HelpRequest request); + + /** + * 详情 + * @param id 文章id + * @return Article + */ + SystemHelpProblem getDetail(Integer id); + + /** + * 有用/无用 + * @param id + * @return + */ + Boolean feedback(Integer id, Integer type); + +} diff --git a/food-service/src/main/java/com/zbkj/service/service/impl/DeliverySetTimeServiceImpl.java b/food-service/src/main/java/com/zbkj/service/service/impl/DeliverySetTimeServiceImpl.java index b59b094..ef6148d 100644 --- a/food-service/src/main/java/com/zbkj/service/service/impl/DeliverySetTimeServiceImpl.java +++ b/food-service/src/main/java/com/zbkj/service/service/impl/DeliverySetTimeServiceImpl.java @@ -24,7 +24,7 @@ public class DeliverySetTimeServiceImpl extends ServiceImpl getDeliveryTime() { LambdaQueryWrapper lqw = new LambdaQueryWrapper<>(); lqw.eq(DeliverySetTime::getType, 1); - lqw.eq(DeliverySetTime::getStatus, Constants.COMMON_SWITCH_CLOSE); + lqw.eq(DeliverySetTime::getStatus, Constants.COMMON_SWITCH_OPEN); DeliverySetTime deliverySetTime = dao.selectOne(lqw); // 设置起始日期和天数 LocalDate startDate = LocalDate.now();; // 起始日期 diff --git a/food-service/src/main/java/com/zbkj/service/service/impl/HelpServiceImpl.java b/food-service/src/main/java/com/zbkj/service/service/impl/HelpServiceImpl.java new file mode 100644 index 0000000..bbcbd33 --- /dev/null +++ b/food-service/src/main/java/com/zbkj/service/service/impl/HelpServiceImpl.java @@ -0,0 +1,141 @@ +package com.zbkj.service.service.impl; + +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import com.alibaba.fastjson.JSON; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.github.pagehelper.Page; +import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; +import com.zbkj.common.constants.Constants; +import com.zbkj.common.exception.CrmebException; +import com.zbkj.common.model.article.Article; +import com.zbkj.common.model.category.Category; +import com.zbkj.common.model.system.SystemHelpProblem; +import com.zbkj.common.page.CommonPage; +import com.zbkj.common.request.*; +import com.zbkj.common.response.ArticleResponse; +import com.zbkj.common.utils.RedisUtil; +import com.zbkj.common.vo.ArticleVo; +import com.zbkj.service.dao.ArticleDao; +import com.zbkj.service.dao.HelpDao; +import com.zbkj.service.service.*; +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; +import java.util.stream.Collectors; + +/** +* ArticleServiceImpl 接口实现 + +*/ +@Service +public class HelpServiceImpl extends ServiceImpl implements HelpService { + + private Logger logger = LoggerFactory.getLogger(HelpServiceImpl.class); + + @Resource + private HelpDao dao; + + @Autowired + private CategoryService categoryService; + + @Autowired + private SystemAttachmentService systemAttachmentService; + + @Override + public List getListHelp(String cid, PageParamRequest page) { + PageHelper.startPage(page.getPage(), page.getLimit()); + return dao.getListHelp(cid); + } + + /** + * 获取分类列表(移动端) + * @return List + */ + @Override + public List getCategoryList() { + return categoryService.findCategoryList(Constants.CATEGORY_TYPE_HELP); + } + + /** + * 新增 + * @param request 新增参数 + * @return Boolean + */ + @Override + public Boolean create(HelpRequest request) { + SystemHelpProblem entity = JSON.parseObject(JSON.toJSONString(request), SystemHelpProblem.class); + entity.setImage(systemAttachmentService.clearPrefix(request.getImage())); + entity.setContent(systemAttachmentService.clearPrefix(request.getContent())); + return save(entity); + } + + /** + * 删除 + * @param id id + * @return Boolean + */ + @Override + public Boolean deleteById(Integer id) { + SystemHelpProblem entity = getById(id); + if (ObjectUtil.isNull(entity)) { + throw new CrmebException("已删除"); + } + return removeById(id); + } + + /** + * 修改 + * @param id id + * @param request 修改参数 + */ + @Override + public Boolean updateHelp(Integer id, HelpRequest request) { + SystemHelpProblem entity = JSON.parseObject(JSON.toJSONString(request), SystemHelpProblem.class); + entity.setId(id); + entity.setImage(systemAttachmentService.clearPrefix(request.getImage())); + entity.setContent(systemAttachmentService.clearPrefix(request.getContent())); + return updateById(entity); + } + + /** + * 获取详情 + * @param id 文章id + * @return Article + */ + @Override + public SystemHelpProblem getDetail(Integer id) { + SystemHelpProblem entity = getById(id); + if (ObjectUtil.isNull(entity)) { + throw new CrmebException("不存在"); + } + return entity; + } + + @Override + public Boolean feedback(Integer id, Integer type) { + SystemHelpProblem entity = getById(id); + if (ObjectUtil.isNull(entity)) { + throw new CrmebException("不存在"); + } + SystemHelpProblem upd = new SystemHelpProblem(); + upd.setId(id); + if (type == 1) { + upd.setUsefulNum(entity.getUsefulNum() + 1); + } else { + upd.setUselessNum(entity.getUselessNum() + 1); + } + return updateById(upd); + } +} + diff --git a/food-service/src/main/resources/mapper/system/SystemHelpProblemMapper.xml b/food-service/src/main/resources/mapper/system/SystemHelpProblemMapper.xml new file mode 100644 index 0000000..8410ff5 --- /dev/null +++ b/food-service/src/main/resources/mapper/system/SystemHelpProblemMapper.xml @@ -0,0 +1,27 @@ + + + + + + +