Browse Source

chore: 表报重构

master
wangxiang 2 years ago
parent
commit
3d5157aeb4
  1. 34
      kicc-platform/kicc-platform-api/kicc-report-api/src/main/java/com/cloud/kicc/report/api/entity/ReportSystemFile.java
  2. 42
      kicc-platform/kicc-platform-biz/kicc-report-biz/src/main/java/com/cloud/kicc/report/endpoint/ReportEndpoint.java
  3. 39
      kicc-platform/kicc-platform-biz/kicc-report-biz/src/main/java/com/cloud/kicc/report/entity/ReportFileEntity.java
  4. 4
      kicc-platform/kicc-platform-biz/kicc-report-biz/src/main/java/com/cloud/kicc/report/mapper/ReportFileMapper.java
  5. 33
      kicc-platform/kicc-platform-biz/kicc-report-biz/src/main/java/com/cloud/kicc/report/provider/DatabaseProvider.java
  6. 4
      kicc-platform/kicc-platform-biz/kicc-report-biz/src/main/java/com/cloud/kicc/report/service/IReportFileService.java
  7. 4
      kicc-platform/kicc-platform-biz/kicc-report-biz/src/main/java/com/cloud/kicc/report/service/impl/ReportFileServiceImpl.java

34
kicc-platform/kicc-platform-api/kicc-report-api/src/main/java/com/cloud/kicc/report/api/entity/ReportSystemFile.java

@ -0,0 +1,34 @@ @@ -0,0 +1,34 @@
package com.cloud.kicc.report.api.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.cloud.kicc.common.data.entity.CommonEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
*<p>
* UReport 系统文件
*</p>
*
* @Author: wangxiang4
* @since: 2023/7/5
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("report_file")
public class ReportSystemFile extends CommonEntity {
private static final long serialVersionUID = 1L;
/** 主键 */
private String id;
/** 文件名 */
private String name;
/** 文件内容 */
private byte[] content;
}

42
kicc-platform/kicc-platform-biz/kicc-report-biz/src/main/java/com/cloud/kicc/report/endpoint/ReportEndpoint.java

@ -1,19 +1,19 @@ @@ -1,19 +1,19 @@
package com.cloud.kicc.report.endpoint;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.cloud.kicc.common.core.api.R;
import com.cloud.kicc.common.core.constant.AppConstants;
import com.cloud.kicc.report.entity.ReportFileEntity;
import com.cloud.kicc.report.api.entity.ReportSystemFile;
import com.cloud.kicc.report.service.IReportFileService;
import com.cloud.kicc.system.api.entity.Config;
import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.*;
import springfox.documentation.annotations.ApiIgnore;
import java.util.Arrays;
import java.util.Map;
/**
*<p>
@ -31,31 +31,27 @@ public class ReportEndpoint { @@ -31,31 +31,27 @@ public class ReportEndpoint {
private final IReportFileService service;
/**
* 详情
*/
@GetMapping("/detail")
public R<ReportFileEntity> detail(ReportFileEntity file) {
ReportFileEntity detail = service.getOne(Wrappers.lambdaQuery());
return R.ok(detail);
private LambdaQueryWrapper<ReportSystemFile> getQueryWrapper(ReportSystemFile reportFile) {
return new LambdaQueryWrapper<ReportSystemFile>()
.like(StrUtil.isNotBlank(reportFile.getName()), ReportSystemFile::getName, reportFile.getName())
.orderByDesc(ReportSystemFile::getCreateTime);
}
/**
* 分页
*/
@GetMapping("/list")
public R<IPage<ReportFileEntity>> list(Page page, @RequestParam Map<String, Object> file) {
IPage<ReportFileEntity> pages = service.page(page, Wrappers.lambdaQuery());
return R.ok(pages);
public R list(Page page, ReportSystemFile reportFile) {
IPage<Config> configPage = service.page(page, getQueryWrapper(reportFile));
return R.ok(configPage.getRecords(), configPage.getTotal());
}
/**
* 删除
*/
@PostMapping("/remove")
public R remove(@RequestParam String ids) {
boolean temp = service.removeByIds(Arrays.asList(StrUtil.join(",", ids)));
return R.ok(temp);
@GetMapping("/{id:\\w+}")
public R getById(@PathVariable("id") String id) {
return R.ok(service.getById(id));
}
@DeleteMapping("/remove/{ids:[\\w,]+}")
public R remove(@PathVariable String[] ids) {
service.removeByIds(Arrays.asList(ids));
return R.ok();
}
}

39
kicc-platform/kicc-platform-biz/kicc-report-biz/src/main/java/com/cloud/kicc/report/entity/ReportFileEntity.java

@ -1,39 +0,0 @@ @@ -1,39 +0,0 @@
package com.cloud.kicc.report.entity;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.cloud.kicc.common.data.entity.CommonEntity;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
*<p>
* UReport实体类
*</p>
*
* @Author: wangxiang4
* @since: 2023/7/5
*/
@Data
@TableName("sys_report_file")
public class ReportFileEntity extends CommonEntity {
private static final long serialVersionUID = 1L;
/**
* 主键
*/
private String id;
/**
* 文件名
*/
private String name;
/**
* 文件内容
*/
private byte[] content;
}

4
kicc-platform/kicc-platform-biz/kicc-report-biz/src/main/java/com/cloud/kicc/report/mapper/ReportFileMapper.java

@ -1,7 +1,7 @@ @@ -1,7 +1,7 @@
package com.cloud.kicc.report.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.cloud.kicc.report.entity.ReportFileEntity;
import com.cloud.kicc.report.api.entity.ReportSystemFile;
/**
*<p>
@ -11,5 +11,5 @@ import com.cloud.kicc.report.entity.ReportFileEntity; @@ -11,5 +11,5 @@ import com.cloud.kicc.report.entity.ReportFileEntity;
* @Author: wangxiang4
* @since: 2023/7/5
*/
public interface ReportFileMapper extends BaseMapper<ReportFileEntity> {
public interface ReportFileMapper extends BaseMapper<ReportSystemFile> {
}

33
kicc-platform/kicc-platform-biz/kicc-report-biz/src/main/java/com/cloud/kicc/report/provider/DatabaseProvider.java

@ -3,7 +3,7 @@ package com.cloud.kicc.report.provider; @@ -3,7 +3,7 @@ package com.cloud.kicc.report.provider;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.bstek.ureport.provider.report.ReportFile;
import com.bstek.ureport.provider.report.ReportProvider;
import com.cloud.kicc.report.entity.ReportFileEntity;
import com.cloud.kicc.report.api.entity.ReportSystemFile;
import com.cloud.kicc.report.props.ReportDatabaseProperties;
import com.cloud.kicc.report.service.IReportFileService;
import lombok.AllArgsConstructor;
@ -31,37 +31,39 @@ public class DatabaseProvider implements ReportProvider { @@ -31,37 +31,39 @@ public class DatabaseProvider implements ReportProvider {
@Override
public InputStream loadReport(String file) {
ReportFileEntity reportFileEntity = service.getOne(Wrappers.<ReportFileEntity>lambdaQuery().eq(ReportFileEntity::getName, getFileName(file)));
byte[] content = reportFileEntity.getContent();
ReportSystemFile reportSystemFile = service.getOne(Wrappers.<ReportSystemFile>lambdaQuery().eq(ReportSystemFile::getName, getFileName(file)));
byte[] content = reportSystemFile.getContent();
return new ByteArrayInputStream(content);
}
@Override
public void deleteReport(String file) {
service.remove(Wrappers.<ReportFileEntity>lambdaUpdate().eq(ReportFileEntity::getName, getFileName(file)));
service.remove(Wrappers.<ReportSystemFile>lambdaUpdate().eq(ReportSystemFile::getName, getFileName(file)));
}
@Override
public List<ReportFile> getReportFiles() {
List<ReportFileEntity> list = service.list();
List<ReportFile> reportFiles = new ArrayList<>();
list.forEach(reportFileEntity -> reportFiles.add(new ReportFile(reportFileEntity.getName(),
Date.from(reportFileEntity.getUpdateTime().toInstant(OffsetDateTime.now().getOffset())))));
List<ReportSystemFile> list = service.list();
List<ReportFile> reportFiles= new ArrayList<>();
list.forEach(reportSystemFile -> reportFiles.add(
new ReportFile(reportSystemFile.getName(),
Date.from(reportSystemFile.getUpdateTime().toInstant(OffsetDateTime.now().getOffset()))))
);
return reportFiles;
}
@Override
public void saveReport(String file, String content) {
String fileName = getFileName(file);
ReportFileEntity reportFileEntity = service.getOne(Wrappers.<ReportFileEntity>lambdaQuery().eq(ReportFileEntity::getName, fileName));
if (reportFileEntity == null) {
reportFileEntity = new ReportFileEntity();
reportFileEntity.setName(fileName);
reportFileEntity.setContent(content.getBytes());
ReportSystemFile reportFile = service.getOne(Wrappers.<ReportSystemFile>lambdaQuery().eq(ReportSystemFile::getName, fileName));
if (reportFile == null) {
reportFile = new ReportSystemFile();
reportFile.setName(fileName);
reportFile.setContent(content.getBytes());
} else {
reportFileEntity.setContent(content.getBytes());
reportFile.setContent(content.getBytes());
}
service.saveOrUpdate(reportFileEntity);
service.saveOrUpdate(reportFile);
}
@Override
@ -81,7 +83,6 @@ public class DatabaseProvider implements ReportProvider { @@ -81,7 +83,6 @@ public class DatabaseProvider implements ReportProvider {
/**
* 获取标准格式文件名
*
* @param name 原文件名
*/
private String getFileName(String name) {

4
kicc-platform/kicc-platform-biz/kicc-report-biz/src/main/java/com/cloud/kicc/report/service/IReportFileService.java

@ -1,7 +1,7 @@ @@ -1,7 +1,7 @@
package com.cloud.kicc.report.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.cloud.kicc.report.entity.ReportFileEntity;
import com.cloud.kicc.report.api.entity.ReportSystemFile;
/**
*<p>
@ -11,5 +11,5 @@ import com.cloud.kicc.report.entity.ReportFileEntity; @@ -11,5 +11,5 @@ import com.cloud.kicc.report.entity.ReportFileEntity;
* @Author: wangxiang4
* @since: 2023/7/5
*/
public interface IReportFileService extends IService<ReportFileEntity> {
public interface IReportFileService extends IService<ReportSystemFile> {
}

4
kicc-platform/kicc-platform-biz/kicc-report-biz/src/main/java/com/cloud/kicc/report/service/impl/ReportFileServiceImpl.java

@ -1,7 +1,7 @@ @@ -1,7 +1,7 @@
package com.cloud.kicc.report.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.cloud.kicc.report.entity.ReportFileEntity;
import com.cloud.kicc.report.api.entity.ReportSystemFile;
import com.cloud.kicc.report.mapper.ReportFileMapper;
import com.cloud.kicc.report.service.IReportFileService;
import org.springframework.stereotype.Service;
@ -15,5 +15,5 @@ import org.springframework.stereotype.Service; @@ -15,5 +15,5 @@ import org.springframework.stereotype.Service;
* @since: 2023/7/5
*/
@Service
public class ReportFileServiceImpl extends ServiceImpl<ReportFileMapper, ReportFileEntity> implements IReportFileService {
public class ReportFileServiceImpl extends ServiceImpl<ReportFileMapper, ReportSystemFile> implements IReportFileService {
}

Loading…
Cancel
Save