Parcourir la source

App端维修资料分页查询和根据id查询

bmmx il y a 1 an
Parent
commit
62469652c8

+ 43 - 0
src/main/java/com/om/controller/user/APPWxscController.java

@@ -0,0 +1,43 @@
+package com.om.controller.user;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.om.entity.dto.AppWxscQueryPageDTO;
+import com.om.entity.po.Wxsc;
+import com.om.entity.vo.AppWxscQueryPageVO;
+import com.om.entity.vo.WxscVO;
+import com.om.service.IWxscService;
+import com.om.utils.Result;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.time.LocalDateTime;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+
+
+@RestController
+@RequestMapping("app/wxsc")
+@Api(tags = "维修手册管理模块")
+public class APPWxscController {
+    private final IWxscService wxscService;
+
+    @Autowired
+    public APPWxscController(IWxscService wxscService) {
+        this.wxscService = wxscService;
+    }
+
+    @PostMapping("getPageList")
+    @ApiOperation("获取维修资料列表")
+    public Result<AppWxscQueryPageVO> appGetPageList(@RequestBody AppWxscQueryPageDTO dto){
+        return wxscService.appGetPageList(dto);
+    }
+
+    @GetMapping("getById")
+    @ApiOperation("根据ID和语言获取维修资料H5")
+    public Result<Wxsc> appGetById(@RequestParam("id") Integer id,@RequestParam("language") String language){
+        return wxscService.appGetById(id,language);
+    }
+}

+ 16 - 0
src/main/java/com/om/entity/dto/AppWxscQueryPageDTO.java

@@ -0,0 +1,16 @@
+package com.om.entity.dto;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+@Data
+@NoArgsConstructor
+public class AppWxscQueryPageDTO {
+    @ApiModelProperty(value = "当前页码")
+    private Integer pageIndex;
+
+    @ApiModelProperty(value = "每个页码的大小")
+    private Integer pageSize;
+
+}

+ 31 - 0
src/main/java/com/om/entity/vo/AppWxscQueryPageVO.java

@@ -0,0 +1,31 @@
+package com.om.entity.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.util.List;
+
+@Data
+@NoArgsConstructor
+public class AppWxscQueryPageVO {
+
+    @ApiModelProperty(value = "当前页码")
+    private Integer current;
+
+    @ApiModelProperty(value = "总页码")
+    private Integer pages;
+
+    @ApiModelProperty(value = "每个页码的大小")
+    private Integer size;
+
+    @ApiModelProperty(value = "总数量")
+    private Integer total;
+
+    @ApiModelProperty(value = "是否是查询")
+    private Boolean searchCount = false;
+
+    @ApiModelProperty(value = "结果集")
+    private List<AppWxscVO> records;
+
+}

+ 24 - 0
src/main/java/com/om/entity/vo/AppWxscVO.java

@@ -0,0 +1,24 @@
+package com.om.entity.vo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.time.LocalDateTime;
+
+@Data
+@NoArgsConstructor
+public class AppWxscVO {
+    @ApiModelProperty("维修资料id")
+    private Integer maintenanceManualId;
+
+    @ApiModelProperty("维修资料名称")
+    private String maintenanceManualName;
+
+    @ApiModelProperty("创建时间")
+    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
+    private LocalDateTime createTime;
+
+}

+ 7 - 0
src/main/java/com/om/service/IWxscService.java

@@ -1,8 +1,11 @@
 package com.om.service;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.om.entity.dto.AppWxscQueryPageDTO;
 import com.om.entity.po.Wxsc;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.om.entity.vo.AppWxscQueryPageVO;
+import com.om.utils.Result;
 
 /**
  * <p>
@@ -15,4 +18,8 @@ import com.baomidou.mybatisplus.extension.service.IService;
 public interface IWxscService extends IService<Wxsc> {
 
   Page<Wxsc> findManual(Page<Wxsc> objectPage, String code, String title);
+
+    Result<AppWxscQueryPageVO> appGetPageList(AppWxscQueryPageDTO dto);
+
+    Result<Wxsc> appGetById(Integer id, String language);
 }

+ 60 - 0
src/main/java/com/om/service/impl/WxscServiceImpl.java

@@ -1,12 +1,23 @@
 package com.om.service.impl;
 
+import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.util.PageUtil;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.om.entity.dto.AppWxscQueryPageDTO;
 import com.om.entity.po.Wxsc;
+import com.om.entity.vo.AppWxscQueryPageVO;
+import com.om.entity.vo.AppWxscVO;
+import com.om.exception.BadReqException;
 import com.om.mapper.WxscMapper;
 import com.om.service.IWxscService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.om.utils.Result;
+import org.springframework.context.annotation.Bean;
 import org.springframework.stereotype.Service;
 
+import java.util.ArrayList;
+import java.util.List;
+
 /**
  * <p>
  *  服务实现类
@@ -27,4 +38,53 @@ public class WxscServiceImpl extends ServiceImpl<WxscMapper, Wxsc> implements IW
   public Page<Wxsc> findManual(Page<Wxsc> page, String code, String title) {
     return wxscMapper.findManual(page, code, title);
   }
+
+    @Override
+    public Result<AppWxscQueryPageVO> appGetPageList(AppWxscQueryPageDTO dto) {
+      if (BeanUtil.isEmpty(dto)){
+          throw new BadReqException("数据为空");
+      }
+
+        Integer pageIndex = dto.getPageIndex();
+        Integer pageSize = dto.getPageSize();
+
+        Page<Wxsc> page = this.lambdaQuery()
+                .page(new Page<>(pageIndex, pageSize));
+
+        if (BeanUtil.isEmpty(page)){
+            return Result.ok();
+        }
+
+        AppWxscQueryPageVO vo = new AppWxscQueryPageVO();
+        vo.setCurrent((int) page.getCurrent());
+        vo.setTotal((int) page.getTotal());
+        vo.setPages((int) page.getPages());
+        vo.setSize((int) page.getSize());
+
+        List<AppWxscVO> appWxscVOS = new ArrayList<>();
+
+        List<Wxsc> records = page.getRecords();
+        for (Wxsc record : records) {
+            AppWxscVO appWxscVO = new AppWxscVO();
+            appWxscVO.setMaintenanceManualId(record.getId());
+            appWxscVO.setMaintenanceManualName(record.getScName());
+            appWxscVO.setCreateTime(record.getCreateTime());
+            appWxscVOS.add(appWxscVO);
+        }
+        vo.setRecords(appWxscVOS);
+        return Result.ok(vo);
+    }
+
+    @Override
+    public Result<Wxsc> appGetById(Integer id, String language) {
+        //todo 先不考虑语言
+        //根据id查询
+        Wxsc wxsc = this.getById(id);
+
+        if (BeanUtil.isEmpty(wxsc)){
+            throw new BadReqException("该维修资料不存在!");
+        }
+
+        return Result.ok(wxsc);
+    }
 }