Browse Source

fix:【生成报告】修改

master
zhangjing 3 months ago
parent
commit
c471263ca1
9 changed files with 100 additions and 11 deletions
  1. +3
    -2
      src/main/java/com/fkzy/warn/controller/PdfController.java
  2. +1
    -1
      src/main/java/com/fkzy/warn/controller/PermissionController.java
  3. +16
    -0
      src/main/java/com/fkzy/warn/controller/ReportController.java
  4. +14
    -0
      src/main/java/com/fkzy/warn/model/Report.java
  5. +17
    -0
      src/main/java/com/fkzy/warn/model/params/GenerateReportParams.java
  6. +13
    -0
      src/main/java/com/fkzy/warn/model/params/PdfRequestParams.java
  7. +7
    -7
      src/main/java/com/fkzy/warn/service/PdfService.java
  8. +3
    -1
      src/main/java/com/fkzy/warn/service/ReportService.java
  9. +26
    -0
      src/main/java/com/fkzy/warn/service/impl/ReportServiceImpl.java

+ 3
- 2
src/main/java/com/fkzy/warn/controller/PdfController.java View File

@ -1,6 +1,7 @@
package com.fkzy.warn.controller; package com.fkzy.warn.controller;
import com.fkzy.warn.model.Report; import com.fkzy.warn.model.Report;
import com.fkzy.warn.model.params.PdfRequestParams;
import com.fkzy.warn.service.PdfService; import com.fkzy.warn.service.PdfService;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
@ -24,8 +25,8 @@ public class PdfController {
private PdfService pdfService; private PdfService pdfService;
@PostMapping("download") @PostMapping("download")
public ResponseEntity<byte[]> generateReport(@RequestBody String url) {
byte[] pdfBytes = pdfService.generatePdfFromUrl(url);
public ResponseEntity<byte[]> generateReport(@RequestBody PdfRequestParams params) {
byte[] pdfBytes = pdfService.generatePdfFromUrl(params.getUrl());
HttpHeaders headers = new HttpHeaders(); HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_PDF); headers.setContentType(MediaType.APPLICATION_PDF);

+ 1
- 1
src/main/java/com/fkzy/warn/controller/PermissionController.java View File

@ -26,7 +26,7 @@ import javax.annotation.Resource;
@Slf4j @Slf4j
public class PermissionController { public class PermissionController {
@Resource @Resource
private PermissionService permissionService ;
private PermissionService permissionService;
@RequestMapping(value = "save", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE) @RequestMapping(value = "save", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
@ApiOperation(value = "新增") @ApiOperation(value = "新增")

+ 16
- 0
src/main/java/com/fkzy/warn/controller/ReportController.java View File

@ -2,6 +2,7 @@ package com.fkzy.warn.controller;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.fkzy.warn.model.Report; import com.fkzy.warn.model.Report;
import com.fkzy.warn.model.params.GenerateReportParams;
import com.fkzy.warn.service.ReportService; import com.fkzy.warn.service.ReportService;
import com.fkzy.warn.common.constants.ResponseMsgConstants; import com.fkzy.warn.common.constants.ResponseMsgConstants;
import com.fkzy.warn.common.request.RequestParameter; import com.fkzy.warn.common.request.RequestParameter;
@ -96,4 +97,19 @@ public class ReportController {
return apiResponse; return apiResponse;
} }
@PostMapping(value = "generateReport")
@ApiOperation(value = "生成报告")
public ApiResponse generateReport(@ApiParam("{\n" +
"\"id\":\"报告id\",\n" +
"}") @RequestBody GenerateReportParams params, @RequestHeader String ticket) {
ApiResponse apiResponse = new ApiResponse();
try {
apiResponse.setData(reportService.generateReport(params,ticket));
apiResponse.setMessage(ResponseMsgConstants.OPERATE_SUCCESS);
} catch (Exception e) {
apiResponse.recordError(ResponseMsgConstants.OPERATE_FAIL);
}
return apiResponse;
}
} }

+ 14
- 0
src/main/java/com/fkzy/warn/model/Report.java View File

@ -40,6 +40,20 @@ public class Report extends BaseField{
@ApiModelProperty("报告时间") @ApiModelProperty("报告时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private Date reportTime; private Date reportTime;
/**
* 报告时间
*/
@ApiModelProperty("范围开始时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private Date startTime;
/**
* 报告时间
*/
@ApiModelProperty("范围结束时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private Date endTime;
/** /**
* 企业名称 * 企业名称
*/ */

+ 17
- 0
src/main/java/com/fkzy/warn/model/params/GenerateReportParams.java View File

@ -0,0 +1,17 @@
package com.fkzy.warn.model.params;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author zhangjing
* @date 2026/01/15 16:31
* @description
*/
@Data
public class GenerateReportParams {
private Integer id;
}

+ 13
- 0
src/main/java/com/fkzy/warn/model/params/PdfRequestParams.java View File

@ -0,0 +1,13 @@
package com.fkzy.warn.model.params;
import lombok.Data;
/**
* @author zhangjing
* @date 2026/01/13 11:14
* @description
*/
@Data
public class PdfRequestParams {
private String url;
}

+ 7
- 7
src/main/java/com/fkzy/warn/service/PdfService.java View File

@ -72,14 +72,14 @@ public class PdfService {
byte[] pdfBytes = page.pdf(new Page.PdfOptions() byte[] pdfBytes = page.pdf(new Page.PdfOptions()
.setFormat("A4") .setFormat("A4")
.setPrintBackground(true) .setPrintBackground(true)
.setMargin(margin)
// .setMargin(margin)
.setDisplayHeaderFooter(true) .setDisplayHeaderFooter(true)
.setHeaderTemplate("<div style='font-size:10px; text-align:center; width:100%;'>公司名称</div>")
.setFooterTemplate(
"<div style='font-size:9px; width:100%;'>" +
"<span style='float:left;'>© 2026 MyCompany</span>" +
"<span style='float:right;'>第 <span class='pageNumber'></span> 页 / 共 <span class='totalPages'></span> 页</span>" +
"</div>")
// .setHeaderTemplate("<div style='font-size:10px; text-align:center; width:100%;'>公司名称</div>")
// .setFooterTemplate(
// "<div style='font-size:9px; width:100%;'>" +
// "<span style='float:left;'>© 2026 MyCompany</span>" +
// "<span style='float:right;'>第 <span class='pageNumber'></span> 页 / 共 <span class='totalPages'></span> 页</span>" +
// "</div>")
); );
browser.close(); browser.close();

+ 3
- 1
src/main/java/com/fkzy/warn/service/ReportService.java View File

@ -5,8 +5,10 @@ import com.baomidou.mybatisplus.extension.service.IService;
import com.fkzy.warn.model.Report; import com.fkzy.warn.model.Report;
import com.fkzy.warn.common.request.RequestParameter; import com.fkzy.warn.common.request.RequestParameter;
import com.fkzy.warn.common.response.ApiResponse; import com.fkzy.warn.common.response.ApiResponse;
import com.fkzy.warn.model.params.GenerateReportParams;
import java.util.List; import java.util.List;
import java.util.Map;
/** /**
* @author zhangjing * @author zhangjing
@ -44,5 +46,5 @@ public interface ReportService extends IService {
Page<Report> queryPage(RequestParameter parameter); Page<Report> queryPage(RequestParameter parameter);
Map<String,Object> generateReport(GenerateReportParams params, String ticket);
} }

+ 26
- 0
src/main/java/com/fkzy/warn/service/impl/ReportServiceImpl.java View File

@ -4,14 +4,22 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.fkzy.warn.mapper.ReportMapper; import com.fkzy.warn.mapper.ReportMapper;
import com.fkzy.warn.model.EnterpriseInfo;
import com.fkzy.warn.model.Report; import com.fkzy.warn.model.Report;
import com.fkzy.warn.model.User;
import com.fkzy.warn.model.params.GenerateReportParams;
import com.fkzy.warn.service.EnterpriseInfoService;
import com.fkzy.warn.service.ReportService; import com.fkzy.warn.service.ReportService;
import com.fkzy.warn.common.constants.EntityConstants; import com.fkzy.warn.common.constants.EntityConstants;
import com.fkzy.warn.common.request.RequestParameter; import com.fkzy.warn.common.request.RequestParameter;
import com.fkzy.warn.common.response.ApiResponse; import com.fkzy.warn.common.response.ApiResponse;
import com.fkzy.warn.service.UserService;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map;
/** /**
* @author zhangjing * @author zhangjing
@ -22,6 +30,13 @@ import java.util.List;
public class ReportServiceImpl extends ServiceImpl<ReportMapper, Report> implements public class ReportServiceImpl extends ServiceImpl<ReportMapper, Report> implements
ReportService { ReportService {
@Resource
EnterpriseInfoService enterpriseInfoService;
@Resource
UserService userService;
@Resource
ReportService reportService;
@Override @Override
public ApiResponse saveModel(Report entity, String ticket) { public ApiResponse saveModel(Report entity, String ticket) {
@ -55,4 +70,15 @@ public class ReportServiceImpl extends ServiceImpl impleme
Page<Report> result = this.page(page, eWrapper); Page<Report> result = this.page(page, eWrapper);
return result; return result;
} }
@Override
public Map<String,Object> generateReport(GenerateReportParams params, String ticket) {
Report report = getById(params.getId());
Map<String,Object> result = new HashMap<>();
QueryWrapper<EnterpriseInfo> enterpriseInfoQueryWrapper = new QueryWrapper<>();
enterpriseInfoQueryWrapper.eq("CREDITCODE", report.getCreditCode());
EnterpriseInfo enterpriseInfo = enterpriseInfoService.getOne(enterpriseInfoQueryWrapper);
result.put("basicEnterprise",enterpriseInfo);
return result;
}
} }

Loading…
Cancel
Save