master
面包骑士 2024-08-13 09:40:38 +08:00
parent 5b3a61e706
commit 3c630c05c6
7 changed files with 30 additions and 23 deletions

View File

@ -23,6 +23,10 @@
<artifactId>cloud-common-core</artifactId> <artifactId>cloud-common-core</artifactId>
</dependency> </dependency>
<dependency>
<groupId>com.muyu</groupId>
<artifactId>cloud-common-redis</artifactId>
</dependency>
</dependencies> </dependencies>

View File

@ -68,6 +68,7 @@ public class ResourceInfo {
/** /**
* *
*/ */
public void setFlag(ResourceReq req) { public void setFlag(ResourceReq req) {
this.flag = this.getTitle().equals(req.getTitle()) this.flag = this.getTitle().equals(req.getTitle())
&& this.getPissn().equals(req.getPissn()) && this.getPissn().equals(req.getPissn())

View File

@ -2,8 +2,11 @@ package com.muyu.resource.domain.resp;
import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelProperty;
import com.muyu.common.core.annotation.Excel; import com.muyu.common.core.annotation.Excel;
import com.muyu.resource.domain.ResourceInfo;
import lombok.*; import lombok.*;
import java.util.List;
/** /**
* @Author: * @Author:
* @Name: ResourceInfo * @Name: ResourceInfo
@ -18,6 +21,8 @@ import lombok.*;
@NoArgsConstructor @NoArgsConstructor
@AllArgsConstructor @AllArgsConstructor
public class ResourceInfoResp { public class ResourceInfoResp {
// 序号
private Integer id;
/* /*
* *
*/ */
@ -84,7 +89,9 @@ public class ResourceInfoResp {
@Excel(name = "语种") @Excel(name = "语种")
private String language; private String language;
private List<ResourceInfo> resourceInfoList;
private Integer code = 0;
} }

View File

@ -39,8 +39,8 @@ public class ResourceController {
* @return * @return
*/ */
@PostMapping("/upload") @PostMapping("/upload")
public Result<PageResult<ResourceInfoResp>> upload(@RequestParam("file") MultipartFile file) { public Result<Boolean> upload(@RequestParam("file") MultipartFile file) {
return Result.success(service.upload(file)); return Result.success(service.upload(file), "上传成功");
} }
/** /**

View File

@ -17,7 +17,7 @@ import java.util.List;
*/ */
public interface ResourceService{ public interface ResourceService{
PageResult<ResourceInfoResp> upload(MultipartFile file); Boolean upload(MultipartFile file);
List<ResourceInfo> findResourceByPissn(ResourceReq req); List<ResourceInfo> findResourceByPissn(ResourceReq req);

View File

@ -7,8 +7,6 @@ import javax.annotation.Resource;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.muyu.common.core.utils.StringUtils; import com.muyu.common.core.utils.StringUtils;
import com.muyu.resource.domain.result.PageResult; import com.muyu.resource.domain.result.PageResult;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.muyu.resource.domain.ResourceInfo; import com.muyu.resource.domain.ResourceInfo;
import com.muyu.resource.domain.req.ResourceReq; import com.muyu.resource.domain.req.ResourceReq;
import com.muyu.resource.domain.resp.ResourceInfoResp; import com.muyu.resource.domain.resp.ResourceInfoResp;
@ -38,18 +36,17 @@ public class ResourceServiceImpl implements ResourceService {
@Resource @Resource
private ResourceMapper mapper; private ResourceMapper mapper;
@Resource @Resource
private RedisTemplate<String,String> redisTemplate; private RedisTemplate<String,Object> redisTemplate;
private static Integer on = 1;
@Override @Override
public PageResult<ResourceInfoResp> upload(MultipartFile file) { public Boolean upload(MultipartFile file) {
ExcelUtils<ResourceInfoResp> excelUtils = new ExcelUtils<>(ResourceInfoResp.class); ExcelUtils<ResourceInfoResp> excelUtils = new ExcelUtils<>(ResourceInfoResp.class);
try { try {
PageHelper.startPage(1, 10);
// 调用导入方法 // 调用导入方法
List<ResourceInfoResp> respList = excelUtils.importExcel(null, file); List<ResourceInfoResp> respList = excelUtils.importExcel(null, file);
redisTemplate.opsForValue().set("list",JSONObject.toJSONString(respList),1,TimeUnit.HOURS); redisTemplate.opsForValue().set("list",respList,1,TimeUnit.HOURS);
PageInfo<ResourceInfoResp> pageInfo = new PageInfo<>(respList); return true;
return PageResult.toPageResult(pageInfo.getTotal(), pageInfo.getList());
} catch (Exception e) { } catch (Exception e) {
throw new RuntimeException(e); throw new RuntimeException(e);
} }
@ -57,28 +54,26 @@ public class ResourceServiceImpl implements ResourceService {
@Override @Override
public List<ResourceInfo> findResourceByPissn(ResourceReq req) { public List<ResourceInfo> findResourceByPissn(ResourceReq req) {
String resString = redisTemplate.opsForValue().get(req.toString());
if (StringUtils.isNotEmpty(resString)){
return JSONObject.parseObject(resString, List.class);
}
List<ResourceInfo> resourceInfos = mapper.findResourceByPissn(req); List<ResourceInfo> resourceInfos = mapper.findResourceByPissn(req);
resourceInfos.forEach(resourceInfo -> resourceInfo.setFlag(req)); resourceInfos.forEach(resourceInfo -> resourceInfo.setFlag(req));
redisTemplate.opsForValue().set(req.toString(), JSONObject.toJSONString(resourceInfos),1, TimeUnit.HOURS); redisTemplate.opsForValue().set("ResourceReq:"+req.toString(), resourceInfos,1, TimeUnit.HOURS);
return resourceInfos; return resourceInfos;
} }
@Override @Override
public PageResult<ResourceInfoResp> list(Integer pageNum) { public PageResult<ResourceInfoResp> list(Integer pageNum) {
String resString = redisTemplate.opsForValue().get("list"); Object o = redisTemplate.opsForValue().get("list");
if (StringUtils.isNotEmpty(resString)){ if (o!=null){
List<ResourceInfoResp> respList = JSONObject.parseObject(resString, List.class); List<ResourceInfoResp> respListAll = (List<ResourceInfoResp>) o;
int index = (pageNum-1)*10; int index = (pageNum-1)*10;
int toIndex = (pageNum-1)*10+10; int toIndex = index+10;
if (toIndex>respList.size()){ if (toIndex>respListAll.size()){
return null; return null;
} }
return PageResult.toPageResult(respList.size(), List<ResourceInfoResp> respList = respListAll.subList(index, toIndex);
respList.subList(index,toIndex)); respList.forEach(resourceInfoResp -> resourceInfoResp.setId(on++));
on = 1;
return PageResult.toPageResult(respListAll.size(), respList);
} }
return null; return null;
} }