瀏覽代碼

增加文件导出

master
yangpeilai 2 週之前
父節點
當前提交
3ede84a333
共有 25 個文件被更改,包括 564 次插入11 次删除
  1. 1
    0
      zhywpt-app-invw/build.gradle
  2. 8
    0
      zhywpt-app-invw/src/main/java/cn/com/taiji/invw/api/card/InvwQryCardBatchController.java
  3. 9
    1
      zhywpt-app-invw/src/main/java/cn/com/taiji/invw/api/card/InvwQryCardsController.java
  4. 8
    0
      zhywpt-app-invw/src/main/java/cn/com/taiji/invw/api/obu/InvwQryObuBatchController.java
  5. 9
    1
      zhywpt-app-invw/src/main/java/cn/com/taiji/invw/api/obu/InvwQryObusController.java
  6. 1
    1
      zhywpt-app-invw/src/main/java/cn/com/taiji/invw/config/AppConfig.java
  7. 0
    1
      zhywpt-app-invw/src/main/java/cn/com/taiji/invw/dto/card/InvwQryCardBatchPageRequestDTO.java
  8. 0
    1
      zhywpt-app-invw/src/main/java/cn/com/taiji/invw/dto/card/InvwQryCardsPageRequestDTO.java
  9. 17
    0
      zhywpt-app-invw/src/main/java/cn/com/taiji/invw/dto/comm/CommExcelFileResponseDTO.java
  10. 0
    1
      zhywpt-app-invw/src/main/java/cn/com/taiji/invw/dto/obu/InvwQryObuBatchPageRequestDTO.java
  11. 0
    1
      zhywpt-app-invw/src/main/java/cn/com/taiji/invw/dto/obu/InvwQryObusPageRequestDTO.java
  12. 6
    0
      zhywpt-app-invw/src/main/java/cn/com/taiji/invw/manager/card/InvwQryCardBatchManager.java
  13. 46
    0
      zhywpt-app-invw/src/main/java/cn/com/taiji/invw/manager/card/InvwQryCardBatchManagerImpl.java
  14. 6
    0
      zhywpt-app-invw/src/main/java/cn/com/taiji/invw/manager/card/InvwQryCardsManager.java
  15. 46
    0
      zhywpt-app-invw/src/main/java/cn/com/taiji/invw/manager/card/InvwQryCardsManagerImpl.java
  16. 6
    0
      zhywpt-app-invw/src/main/java/cn/com/taiji/invw/manager/obu/InvwQryObuBatchManager.java
  17. 46
    1
      zhywpt-app-invw/src/main/java/cn/com/taiji/invw/manager/obu/InvwQryObuBatchManagerImpl.java
  18. 6
    0
      zhywpt-app-invw/src/main/java/cn/com/taiji/invw/manager/obu/InvwQryObusManager.java
  19. 46
    0
      zhywpt-app-invw/src/main/java/cn/com/taiji/invw/manager/obu/InvwQryObusManagerImpl.java
  20. 3
    3
      zhywpt-app-invw/src/main/java/cn/com/taiji/invw/manager/transfer/InvwTransferApplyManagerImpl.java
  21. 73
    0
      zhywpt-app-invw/src/main/java/cn/com/taiji/invw/model/excel/InvwQryCardBatchExcelModel.java
  22. 76
    0
      zhywpt-app-invw/src/main/java/cn/com/taiji/invw/model/excel/InvwQryCardsExcelModel.java
  23. 64
    0
      zhywpt-app-invw/src/main/java/cn/com/taiji/invw/model/excel/InvwQryObuBatchExcelModel.java
  24. 85
    0
      zhywpt-app-invw/src/main/java/cn/com/taiji/invw/model/excel/InvwQryObusExcelModel.java
  25. 2
    0
      zhywpt-app-invw/src/main/resources/bootstrap.yml

+ 1
- 0
zhywpt-app-invw/build.gradle 查看文件

@@ -23,6 +23,7 @@ dependencies {
//ORACLE+库编码问题
runtimeOnly 'com.oracle.database.jdbc:ojdbc8:19.10.0.0'
runtimeOnly 'cn.easyproject:orai18n:12.1.0.2.0'
implementation 'com.alibaba:easyexcel:3.2.1'

}


+ 8
- 0
zhywpt-app-invw/src/main/java/cn/com/taiji/invw/api/card/InvwQryCardBatchController.java 查看文件

@@ -1,9 +1,11 @@
package cn.com.taiji.invw.api.card;

import cn.com.taiji.common.manager.ManagerException;
import cn.com.taiji.common.model.dao.Pagination;
import cn.com.taiji.common.web.ApiResponse;
import cn.com.taiji.invw.api.MyValidController;
import cn.com.taiji.invw.dto.card.InvwQryCardBatchPageRequestDTO;
import cn.com.taiji.invw.dto.comm.CommExcelFileResponseDTO;
import cn.com.taiji.invw.manager.card.InvwQryCardBatchManager;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -28,4 +30,10 @@ public class InvwQryCardBatchController extends MyValidController {
public ApiResponse<Pagination> page(@Valid @RequestBody InvwQryCardBatchPageRequestDTO req) {
return ApiResponse.of(manager.page(req));
}

@ApiOperation(value = "02-卡片发行批次导出")
@PostMapping("/export")
public ApiResponse<CommExcelFileResponseDTO> export(@Valid @RequestBody InvwQryCardBatchPageRequestDTO req) throws ManagerException {
return ApiResponse.of(manager.export(req));
}
}

+ 9
- 1
zhywpt-app-invw/src/main/java/cn/com/taiji/invw/api/card/InvwQryCardsController.java 查看文件

@@ -1,9 +1,11 @@
package cn.com.taiji.invw.api.card;

import cn.com.taiji.common.manager.ManagerException;
import cn.com.taiji.common.model.dao.Pagination;
import cn.com.taiji.common.web.ApiResponse;
import cn.com.taiji.invw.api.MyValidController;
import cn.com.taiji.invw.dto.card.InvwQryCardsPageRequestDTO;
import cn.com.taiji.invw.dto.comm.CommExcelFileResponseDTO;
import cn.com.taiji.invw.manager.card.InvwQryCardsManager;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -23,9 +25,15 @@ public class InvwQryCardsController extends MyValidController {
@Autowired
private InvwQryCardsManager manager;

@ApiOperation(value = "01-卡片行分页")
@ApiOperation(value = "01-卡片行分页")
@PostMapping("/page")
public ApiResponse<Pagination> page(@Valid @RequestBody InvwQryCardsPageRequestDTO req) {
return ApiResponse.of(manager.page(req));
}

@ApiOperation(value = "02-卡片一发导出")
@PostMapping("/export")
public ApiResponse<CommExcelFileResponseDTO> export(@Valid @RequestBody InvwQryCardsPageRequestDTO req) throws ManagerException {
return ApiResponse.of(manager.export(req));
}
}

+ 8
- 0
zhywpt-app-invw/src/main/java/cn/com/taiji/invw/api/obu/InvwQryObuBatchController.java 查看文件

@@ -1,8 +1,10 @@
package cn.com.taiji.invw.api.obu;

import cn.com.taiji.common.manager.ManagerException;
import cn.com.taiji.common.model.dao.Pagination;
import cn.com.taiji.common.web.ApiResponse;
import cn.com.taiji.invw.api.MyValidController;
import cn.com.taiji.invw.dto.comm.CommExcelFileResponseDTO;
import cn.com.taiji.invw.dto.obu.InvwQryObuBatchPageRequestDTO;
import cn.com.taiji.invw.manager.obu.InvwQryObuBatchManager;
import io.swagger.annotations.Api;
@@ -28,4 +30,10 @@ public class InvwQryObuBatchController extends MyValidController {
public ApiResponse<Pagination> page(@Valid @RequestBody InvwQryObuBatchPageRequestDTO req) {
return ApiResponse.of(manager.page(req));
}

@ApiOperation(value = "02-OBU发行批次导出")
@PostMapping("/export")
public ApiResponse<CommExcelFileResponseDTO> export(@Valid @RequestBody InvwQryObuBatchPageRequestDTO req) throws ManagerException {
return ApiResponse.of(manager.export(req));
}
}

+ 9
- 1
zhywpt-app-invw/src/main/java/cn/com/taiji/invw/api/obu/InvwQryObusController.java 查看文件

@@ -1,8 +1,10 @@
package cn.com.taiji.invw.api.obu;

import cn.com.taiji.common.manager.ManagerException;
import cn.com.taiji.common.model.dao.Pagination;
import cn.com.taiji.common.web.ApiResponse;
import cn.com.taiji.invw.api.MyValidController;
import cn.com.taiji.invw.dto.comm.CommExcelFileResponseDTO;
import cn.com.taiji.invw.dto.obu.InvwQryObusPageRequestDTO;
import cn.com.taiji.invw.manager.obu.InvwQryObusManager;
import io.swagger.annotations.Api;
@@ -15,7 +17,7 @@ import org.springframework.web.bind.annotation.RestController;

import javax.validation.Valid;

@Api(tags = {"004-OBU一明细"})
@Api(tags = {"004-OBU一发明细"})
@RestController
@RequestMapping("/api/queryGmobus")
public class InvwQryObusController extends MyValidController {
@@ -28,4 +30,10 @@ public class InvwQryObusController extends MyValidController {
public ApiResponse<Pagination> page(@Valid @RequestBody InvwQryObusPageRequestDTO req) {
return ApiResponse.of(manager.page(req));
}

@ApiOperation(value = "02-OBU一发导出")
@PostMapping("/export")
public ApiResponse<CommExcelFileResponseDTO> export(@Valid @RequestBody InvwQryObusPageRequestDTO req) throws ManagerException {
return ApiResponse.of(manager.export(req));
}
}

+ 1
- 1
zhywpt-app-invw/src/main/java/cn/com/taiji/invw/config/AppConfig.java 查看文件

@@ -31,7 +31,7 @@ import cn.com.taiji.invw.model.MyFinals;
basePackages = {"cn.com.taiji." + AppConfig.APP_NAME + ".repo.jpa", "cn.com.taiji.core.repo.jpa"},
repositoryFactoryBeanClass = MyJpaRespositoryFactoryBean.class)
@EnableTransactionManagement(mode = AdviceMode.ASPECTJ, proxyTargetClass = true)
@ComponentScan(value = {"cn.com.taiji.core.manager.comm.client.feign","cn.com.taiji.core.manager.comm"})
@ComponentScan(value = {"cn.com.taiji.core.manager.comm.client.feign","cn.com.taiji.core.manager.comm","cn.com.taiji.core.manager.tools.minio"})
public class AppConfig extends AbstractManager {
public static final String APP_NAME = "invw";
@Autowired

+ 0
- 1
zhywpt-app-invw/src/main/java/cn/com/taiji/invw/dto/card/InvwQryCardBatchPageRequestDTO.java 查看文件

@@ -1,6 +1,5 @@
package cn.com.taiji.invw.dto.card;

import cn.com.taiji.common.model.finals.SysFinals;
import cn.com.taiji.invw.dto.AbstractBizPageRequestDTO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

+ 0
- 1
zhywpt-app-invw/src/main/java/cn/com/taiji/invw/dto/card/InvwQryCardsPageRequestDTO.java 查看文件

@@ -1,6 +1,5 @@
package cn.com.taiji.invw.dto.card;

import cn.com.taiji.common.model.finals.SysFinals;
import cn.com.taiji.invw.dto.AbstractBizPageRequestDTO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

+ 17
- 0
zhywpt-app-invw/src/main/java/cn/com/taiji/invw/dto/comm/CommExcelFileResponseDTO.java 查看文件

@@ -0,0 +1,17 @@
package cn.com.taiji.invw.dto.comm;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

@ApiModel(description = "文件导出地址")
@Getter
@Setter
@Accessors(chain = true)
public class CommExcelFileResponseDTO {
@ApiModelProperty(value = "文件地址")
private String filePath;
}


+ 0
- 1
zhywpt-app-invw/src/main/java/cn/com/taiji/invw/dto/obu/InvwQryObuBatchPageRequestDTO.java 查看文件

@@ -1,6 +1,5 @@
package cn.com.taiji.invw.dto.obu;

import cn.com.taiji.common.model.finals.SysFinals;
import cn.com.taiji.invw.dto.AbstractBizPageRequestDTO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

+ 0
- 1
zhywpt-app-invw/src/main/java/cn/com/taiji/invw/dto/obu/InvwQryObusPageRequestDTO.java 查看文件

@@ -1,6 +1,5 @@
package cn.com.taiji.invw.dto.obu;

import cn.com.taiji.common.model.finals.SysFinals;
import cn.com.taiji.invw.dto.AbstractBizPageRequestDTO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

+ 6
- 0
zhywpt-app-invw/src/main/java/cn/com/taiji/invw/manager/card/InvwQryCardBatchManager.java 查看文件

@@ -1,8 +1,14 @@
package cn.com.taiji.invw.manager.card;

import cn.com.taiji.common.manager.ManagerException;
import cn.com.taiji.common.model.dao.Pagination;
import cn.com.taiji.invw.dto.card.InvwQryCardBatchPageRequestDTO;
import cn.com.taiji.invw.dto.comm.CommExcelFileResponseDTO;

import java.io.IOException;

public interface InvwQryCardBatchManager {
Pagination page(InvwQryCardBatchPageRequestDTO request);

CommExcelFileResponseDTO export(InvwQryCardBatchPageRequestDTO request) throws ManagerException, IOException;
}

+ 46
- 0
zhywpt-app-invw/src/main/java/cn/com/taiji/invw/manager/card/InvwQryCardBatchManagerImpl.java 查看文件

@@ -1,23 +1,69 @@
package cn.com.taiji.invw.manager.card;

import cn.com.taiji.common.manager.ManagerException;
import cn.com.taiji.common.model.dao.Pagination;
import cn.com.taiji.core.entity.invw.InvwQryCardBatch;
import cn.com.taiji.core.manager.tools.minio.MinioUtile;
import cn.com.taiji.core.repo.jpa.invw.InvwQryCardBatchRepo;
import cn.com.taiji.core.repo.request.invw.InvwQryCardBatchPageRequest;
import cn.com.taiji.invw.dto.card.InvwQryCardBatchPageRequestDTO;
import cn.com.taiji.invw.dto.comm.CommExcelFileResponseDTO;
import cn.com.taiji.invw.manager.AbstractCommManager;
import cn.com.taiji.invw.model.excel.InvwQryCardBatchExcelModel;
import com.alibaba.excel.EasyExcel;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.io.File;
import java.io.IOException;
import java.util.List;
import java.util.stream.Collectors;

@Service
public class InvwQryCardBatchManagerImpl extends AbstractCommManager implements InvwQryCardBatchManager {

@Autowired
private InvwQryCardBatchRepo invwQryCardBatchRepo;
@Autowired
private MinioUtile minioUtile;

@Override
public Pagination page(InvwQryCardBatchPageRequestDTO request) {
InvwQryCardBatchPageRequest req = new InvwQryCardBatchPageRequest();
BeanUtils.copyProperties(request, req);
return invwQryCardBatchRepo.page(req);
}

@Override
public CommExcelFileResponseDTO export(InvwQryCardBatchPageRequestDTO request) throws ManagerException, IOException {
InvwQryCardBatchPageRequest req = new InvwQryCardBatchPageRequest();
BeanUtils.copyProperties(request, req);
List<InvwQryCardBatch> list = invwQryCardBatchRepo.list(req);
if (list.size() > 10000) {
throw new RuntimeException("导出数据超过10000条,请缩小范围");
}
if (list.size() == 0) {
throw new RuntimeException("所选导出数据为空");
}

// 转换成excelModel
List<InvwQryCardBatchExcelModel> excelModels = list.stream()
.map(invwQryCardBatch -> {
InvwQryCardBatchExcelModel excelModel = new InvwQryCardBatchExcelModel();
BeanUtils.copyProperties(invwQryCardBatch, excelModel);
return excelModel;
}).collect(Collectors.toList());

// 生成excel文件
String excelName = "卡片发行批次";
File file = File.createTempFile("temp_"+excelName, ".xlsx");
// 写入数据
EasyExcel.write(file, InvwQryCardBatchExcelModel.class).sheet(excelName).doWrite(excelModels);
// 上传文件
String uploadUrl = minioUtile.fileUploadHttp(file);
CommExcelFileResponseDTO response = new CommExcelFileResponseDTO();
response.setFilePath(uploadUrl);
return response;
}
}

+ 6
- 0
zhywpt-app-invw/src/main/java/cn/com/taiji/invw/manager/card/InvwQryCardsManager.java 查看文件

@@ -1,8 +1,14 @@
package cn.com.taiji.invw.manager.card;

import cn.com.taiji.common.manager.ManagerException;
import cn.com.taiji.common.model.dao.Pagination;
import cn.com.taiji.invw.dto.card.InvwQryCardsPageRequestDTO;
import cn.com.taiji.invw.dto.comm.CommExcelFileResponseDTO;

import java.io.IOException;

public interface InvwQryCardsManager {
Pagination page(InvwQryCardsPageRequestDTO request);

CommExcelFileResponseDTO export(InvwQryCardsPageRequestDTO req) throws ManagerException, IOException;
}

+ 46
- 0
zhywpt-app-invw/src/main/java/cn/com/taiji/invw/manager/card/InvwQryCardsManagerImpl.java 查看文件

@@ -1,23 +1,69 @@
package cn.com.taiji.invw.manager.card;

import cn.com.taiji.common.manager.ManagerException;
import cn.com.taiji.common.model.dao.Pagination;
import cn.com.taiji.core.entity.invw.InvwQryCards;
import cn.com.taiji.core.manager.tools.minio.MinioUtile;
import cn.com.taiji.core.repo.jpa.invw.InvwQryCardsRepo;
import cn.com.taiji.core.repo.request.invw.InvwQryCardsPageRequest;
import cn.com.taiji.invw.dto.card.InvwQryCardsPageRequestDTO;
import cn.com.taiji.invw.dto.comm.CommExcelFileResponseDTO;
import cn.com.taiji.invw.manager.AbstractCommManager;
import cn.com.taiji.invw.model.excel.InvwQryCardsExcelModel;
import com.alibaba.excel.EasyExcel;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.io.File;
import java.io.IOException;
import java.util.List;
import java.util.stream.Collectors;

@Service
public class InvwQryCardsManagerImpl extends AbstractCommManager implements InvwQryCardsManager {

@Autowired
private InvwQryCardsRepo invwQryCardsRepo;
@Autowired
private MinioUtile minioUtile;

@Override
public Pagination page(InvwQryCardsPageRequestDTO request) {
InvwQryCardsPageRequest req = new InvwQryCardsPageRequest();
BeanUtils.copyProperties(request, req);
return invwQryCardsRepo.page(req);
}

@Override
public CommExcelFileResponseDTO export(InvwQryCardsPageRequestDTO request) throws ManagerException, IOException {
InvwQryCardsPageRequest req = new InvwQryCardsPageRequest();
BeanUtils.copyProperties(request, req);
List<InvwQryCards> list = invwQryCardsRepo.list(req);
if (list.size() > 10000) {
throw new RuntimeException("导出数据超过10000条,请缩小范围");
}
if (list.size() == 0) {
throw new RuntimeException("所选导出数据为空");
}

// 转换成excelModel
List<InvwQryCardsExcelModel> excelModels = list.stream()
.map(InvwQryCards -> {
InvwQryCardsExcelModel excelModel = new InvwQryCardsExcelModel();
BeanUtils.copyProperties(InvwQryCards, excelModel);
return excelModel;
}).collect(Collectors.toList());

// 生成excel文件
String excelName = "卡片一行";
File file = File.createTempFile("temp_"+excelName, ".xlsx");
// 写入数据
EasyExcel.write(file, InvwQryCardsExcelModel.class).sheet(excelName).doWrite(excelModels);
// 上传文件
String uploadUrl = minioUtile.fileUploadHttp(file);
CommExcelFileResponseDTO response = new CommExcelFileResponseDTO();
response.setFilePath(uploadUrl);
return response;
}
}

+ 6
- 0
zhywpt-app-invw/src/main/java/cn/com/taiji/invw/manager/obu/InvwQryObuBatchManager.java 查看文件

@@ -1,8 +1,14 @@
package cn.com.taiji.invw.manager.obu;

import cn.com.taiji.common.manager.ManagerException;
import cn.com.taiji.common.model.dao.Pagination;
import cn.com.taiji.invw.dto.comm.CommExcelFileResponseDTO;
import cn.com.taiji.invw.dto.obu.InvwQryObuBatchPageRequestDTO;

import java.io.IOException;

public interface InvwQryObuBatchManager {
Pagination page(InvwQryObuBatchPageRequestDTO request);

CommExcelFileResponseDTO export(InvwQryObuBatchPageRequestDTO req) throws ManagerException, IOException;
}

+ 46
- 1
zhywpt-app-invw/src/main/java/cn/com/taiji/invw/manager/obu/InvwQryObuBatchManagerImpl.java 查看文件

@@ -1,24 +1,69 @@
package cn.com.taiji.invw.manager.obu;

import cn.com.taiji.common.manager.ManagerException;
import cn.com.taiji.common.model.dao.Pagination;

import cn.com.taiji.core.entity.invw.InvwQryObuBatch;
import cn.com.taiji.core.manager.tools.minio.MinioUtile;
import cn.com.taiji.core.repo.jpa.invw.InvwQryObuBatchRepo;
import cn.com.taiji.core.repo.request.invw.InvwQryObuBatchPageRequest;
import cn.com.taiji.invw.dto.comm.CommExcelFileResponseDTO;
import cn.com.taiji.invw.dto.obu.InvwQryObuBatchPageRequestDTO;
import cn.com.taiji.invw.manager.AbstractCommManager;
import cn.com.taiji.invw.model.excel.InvwQryObuBatchExcelModel;
import com.alibaba.excel.EasyExcel;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.io.File;
import java.io.IOException;
import java.util.List;
import java.util.stream.Collectors;

@Service
public class InvwQryObuBatchManagerImpl extends AbstractCommManager implements InvwQryObuBatchManager {

@Autowired
private InvwQryObuBatchRepo invwQryObuBatchRepo;
@Autowired
private MinioUtile minioUtile;

@Override
public Pagination page(InvwQryObuBatchPageRequestDTO request) {
InvwQryObuBatchPageRequest req = new InvwQryObuBatchPageRequest();
BeanUtils.copyProperties(request, req);
return invwQryObuBatchRepo.page(req);
}

@Override
public CommExcelFileResponseDTO export(InvwQryObuBatchPageRequestDTO request) throws ManagerException, IOException {
InvwQryObuBatchPageRequest req = new InvwQryObuBatchPageRequest();
BeanUtils.copyProperties(request, req);
List<InvwQryObuBatch> list = invwQryObuBatchRepo.list(req);
if (list.size() > 10000) {
throw new RuntimeException("导出数据超过10000条,请缩小范围");
}
if (list.size() == 0) {
throw new RuntimeException("所选导出数据为空");
}

// 转换成excelModel
List<InvwQryObuBatchExcelModel> excelModels = list.stream()
.map(InvwQryObuBatch -> {
InvwQryObuBatchExcelModel excelModel = new InvwQryObuBatchExcelModel();
BeanUtils.copyProperties(InvwQryObuBatch, excelModel);
return excelModel;
}).collect(Collectors.toList());

// 生成excel文件
String excelName = "OBU发行批次";
File file = File.createTempFile("temp_"+excelName, ".xlsx");
// 写入数据
EasyExcel.write(file, InvwQryObuBatchExcelModel.class).sheet(excelName).doWrite(excelModels);
// 上传文件
String uploadUrl = minioUtile.fileUploadHttp(file);
CommExcelFileResponseDTO response = new CommExcelFileResponseDTO();
response.setFilePath(uploadUrl);
return response;
}
}

+ 6
- 0
zhywpt-app-invw/src/main/java/cn/com/taiji/invw/manager/obu/InvwQryObusManager.java 查看文件

@@ -1,8 +1,14 @@
package cn.com.taiji.invw.manager.obu;

import cn.com.taiji.common.manager.ManagerException;
import cn.com.taiji.common.model.dao.Pagination;
import cn.com.taiji.invw.dto.comm.CommExcelFileResponseDTO;
import cn.com.taiji.invw.dto.obu.InvwQryObusPageRequestDTO;

import java.io.IOException;

public interface InvwQryObusManager {
Pagination page(InvwQryObusPageRequestDTO request);

CommExcelFileResponseDTO export(InvwQryObusPageRequestDTO req) throws ManagerException, IOException;
}

+ 46
- 0
zhywpt-app-invw/src/main/java/cn/com/taiji/invw/manager/obu/InvwQryObusManagerImpl.java 查看文件

@@ -1,23 +1,69 @@
package cn.com.taiji.invw.manager.obu;

import cn.com.taiji.common.manager.ManagerException;
import cn.com.taiji.common.model.dao.Pagination;
import cn.com.taiji.core.entity.invw.InvwQryObus;
import cn.com.taiji.core.manager.tools.minio.MinioUtile;
import cn.com.taiji.core.repo.jpa.invw.InvwQryObusRepo;
import cn.com.taiji.core.repo.request.invw.InvwQryObusPageRequest;
import cn.com.taiji.invw.dto.comm.CommExcelFileResponseDTO;
import cn.com.taiji.invw.dto.obu.InvwQryObusPageRequestDTO;
import cn.com.taiji.invw.manager.AbstractCommManager;
import cn.com.taiji.invw.model.excel.InvwQryObusExcelModel;
import com.alibaba.excel.EasyExcel;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.io.File;
import java.io.IOException;
import java.util.List;
import java.util.stream.Collectors;

@Service
public class InvwQryObusManagerImpl extends AbstractCommManager implements InvwQryObusManager {

@Autowired
private InvwQryObusRepo invwQryObusRepo;
@Autowired
private MinioUtile minioUtile;

@Override
public Pagination page(InvwQryObusPageRequestDTO request) {
InvwQryObusPageRequest req = new InvwQryObusPageRequest();
BeanUtils.copyProperties(request, req);
return invwQryObusRepo.page(req);
}

@Override
public CommExcelFileResponseDTO export(InvwQryObusPageRequestDTO request) throws ManagerException, IOException {
InvwQryObusPageRequest req = new InvwQryObusPageRequest();
BeanUtils.copyProperties(request, req);
List<InvwQryObus> list = invwQryObusRepo.list(req);
if (list.size() > 10000) {
throw new RuntimeException("导出数据超过10000条,请缩小范围");
}
if (list.size() == 0) {
throw new RuntimeException("所选导出数据为空");
}

// 转换成excelModel
List<InvwQryObusExcelModel> excelModels = list.stream()
.map(InvwQryObus -> {
InvwQryObusExcelModel excelModel = new InvwQryObusExcelModel();
BeanUtils.copyProperties(InvwQryObus, excelModel);
return excelModel;
}).collect(Collectors.toList());

// 生成excel文件
String excelName = "OBU一发";
File file = File.createTempFile("temp_"+excelName, ".xlsx");
// 写入数据
EasyExcel.write(file, InvwQryObusExcelModel.class).sheet(excelName).doWrite(excelModels);
// 上传文件
String uploadUrl = minioUtile.fileUploadHttp(file);
CommExcelFileResponseDTO response = new CommExcelFileResponseDTO();
response.setFilePath(uploadUrl);
return response;
}
}

+ 3
- 3
zhywpt-app-invw/src/main/java/cn/com/taiji/invw/manager/transfer/InvwTransferApplyManagerImpl.java 查看文件

@@ -238,7 +238,9 @@ public class InvwTransferApplyManagerImpl extends AbstractCommManager implements
setupTransferApplyDetails(transferApply, transferApplyModel);

//保留一份原来的明细transferApplyDetails
List<InvwTransferApplyDetails> oldTransferApplyDetails = new ArrayList(transferApplyDetails);
// List<InvwTransferApplyDetails> oldTransferApplyDetails = new ArrayList(transferApplyDetails);
//删除原来的明细
transferDetailsRepo.deleteAll(transferApplyDetails);
transferApplyDetails.clear();

//处理新明细单
@@ -248,8 +250,6 @@ public class InvwTransferApplyManagerImpl extends AbstractCommManager implements
//添加调拨明细
addTransferDetail(transferApplyDetails, transferApply.getApplyNo(), detailsModel, LocalDateTime.now());
}
//删除原来的明细
transferDetailsRepo.deleteAll(oldTransferApplyDetails);
}

//设置调拨单

+ 73
- 0
zhywpt-app-invw/src/main/java/cn/com/taiji/invw/model/excel/InvwQryCardBatchExcelModel.java 查看文件

@@ -0,0 +1,73 @@
package cn.com.taiji.invw.model.excel;

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.*;
import com.alibaba.excel.enums.poi.HorizontalAlignmentEnum;
import lombok.Getter;
import lombok.Setter;

import java.io.Serializable;
import java.time.LocalDateTime;

@HeadStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER)
@HeadFontStyle(fontHeightInPoints = 12)
@ContentStyle(horizontalAlignment = HorizontalAlignmentEnum.LEFT)
@ContentFontStyle(fontHeightInPoints = 10, fontName = "宋体")
@ExcelIgnoreUnannotated
@Getter
@Setter
public class InvwQryCardBatchExcelModel implements Serializable {

@ColumnWidth(10)
@ExcelProperty(value = "结果集", index = 0)
private String datas;

@ColumnWidth(10)
@ExcelProperty(value = "批次号", index = 1)
private String batchNo;

@ColumnWidth(10)
@ExcelProperty(value = "批次申请日期", index = 3)
private String batchDate;

@ColumnWidth(10)
@ExcelProperty(value = "卡片类型", index = 4)
private String cardType;

@ColumnWidth(10)
@ExcelProperty(value = "卡片起始号", index = 5)
private String startNum;

@ColumnWidth(10)
@ExcelProperty(value = "卡片结束号", index = 6)
private String endNum;

@ColumnWidth(10)
@ExcelProperty(value = "批次总张数", index = 7)
private String totalCount;

@ColumnWidth(10)
@ExcelProperty(value = "申请状态", index = 8)
private String status;

@ColumnWidth(10)
@ExcelProperty(value = "卡片版本号", index = 9)
private Integer cardVersion;

@ColumnWidth(10)
@ExcelProperty(value = "设备类型", index = 10)
private String seType;

@ColumnWidth(10)
@ExcelProperty(value = "发行方代码", index = 11)
private String orgId;

@ColumnWidth(10)
@ExcelProperty(value = "渠道", index = 12)
private String chanel;

@ColumnWidth(10)
@ExcelProperty(value = "入库时间", index = 13)
private LocalDateTime insertTime;
}

+ 76
- 0
zhywpt-app-invw/src/main/java/cn/com/taiji/invw/model/excel/InvwQryCardsExcelModel.java 查看文件

@@ -0,0 +1,76 @@
package cn.com.taiji.invw.model.excel;

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.*;
import com.alibaba.excel.enums.poi.HorizontalAlignmentEnum;
import lombok.Getter;
import lombok.Setter;

import java.time.LocalDateTime;

@HeadStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER)
@HeadFontStyle(fontHeightInPoints = 12)
@ContentStyle(horizontalAlignment = HorizontalAlignmentEnum.LEFT)
@ContentFontStyle(fontHeightInPoints = 10, fontName = "宋体")
@ExcelIgnoreUnannotated
@Getter
@Setter
public class InvwQryCardsExcelModel {

@ColumnWidth(10)
@ExcelProperty(value = "结果集", index = 0)
private String datas;

@ColumnWidth(10)
@ExcelProperty(value = "批次号", index = 1)
private String batchNo;

@ColumnWidth(10)
@ExcelProperty(value = "卡号", index = 3)
private String cardNo;

@ColumnWidth(10)
@ExcelProperty(value = "卡片厂商", index = 4)
private String provider;

@ColumnWidth(10)
@ExcelProperty(value = "卡片类型", index = 5)
private String cardType;

@ColumnWidth(10)
@ExcelProperty(value = "发行状态", index = 6)
private Integer status;

@ColumnWidth(10)
@ExcelProperty(value = "一发日期", index = 7)
private String formatTime;

@ColumnWidth(10)
@ExcelProperty(value = "二发/客服日期", index = 8)
private String lastUpdateTime;

@ColumnWidth(10)
@ExcelProperty(value = "卡片SNR", index = 9)
private String cardSnr;

@ColumnWidth(10)
@ExcelProperty(value = "发行次数", index = 10)
private Integer issueCount;

@ColumnWidth(10)
@ExcelProperty(value = "渠道", index = 11)
private String chanel;

@ColumnWidth(10)
@ExcelProperty(value = "渠道ID", index = 12)
private String chanelId;

@ColumnWidth(10)
@ExcelProperty(value = "卡片厂商代码", index = 13)
private String providerID;

@ColumnWidth(10)
@ExcelProperty(value = "入库时间", index = 14)
private LocalDateTime insertTime;
}

+ 64
- 0
zhywpt-app-invw/src/main/java/cn/com/taiji/invw/model/excel/InvwQryObuBatchExcelModel.java 查看文件

@@ -0,0 +1,64 @@
package cn.com.taiji.invw.model.excel;

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.*;
import com.alibaba.excel.enums.poi.HorizontalAlignmentEnum;
import lombok.Getter;
import lombok.Setter;

import java.time.LocalDateTime;

@HeadStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER)
@HeadFontStyle(fontHeightInPoints = 12)
@ContentStyle(horizontalAlignment = HorizontalAlignmentEnum.LEFT)
@ContentFontStyle(fontHeightInPoints = 10, fontName = "宋体")
@ExcelIgnoreUnannotated
@Getter
@Setter
public class InvwQryObuBatchExcelModel {

@ColumnWidth(10)
@ExcelProperty(value = "单号数据的结果集", index = 0)
private String datas;

@ColumnWidth(10)
@ExcelProperty(value = "批次号", index = 1)
private String batchNo;

@ColumnWidth(10)
@ExcelProperty(value = "批次申请日期", index = 3)
private String applyDate;

@ColumnWidth(10)
@ExcelProperty(value = "OBU类型", index = 4)
private String obuType;

@ColumnWidth(10)
@ExcelProperty(value = "OBU起始号", index = 5)
private String startNum;

@ColumnWidth(10)
@ExcelProperty(value = "OBU结束号", index = 6)
private String endNum;

@ColumnWidth(10)
@ExcelProperty(value = "卡片起始号", index = 7)
private String startCardNum;

@ColumnWidth(10)
@ExcelProperty(value = "卡片结束号", index = 8)
private String endCardNum;

@ColumnWidth(10)
@ExcelProperty(value = "批次总张数", index = 9)
private String totalCount;

@ColumnWidth(10)
@ExcelProperty(value = "渠道名称", index = 10)
private String chanel;

@ColumnWidth(10)
@ExcelProperty(value = "入库时间", index = 11)
private LocalDateTime insertTime;
}

+ 85
- 0
zhywpt-app-invw/src/main/java/cn/com/taiji/invw/model/excel/InvwQryObusExcelModel.java 查看文件

@@ -0,0 +1,85 @@
package cn.com.taiji.invw.model.excel;

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.*;
import com.alibaba.excel.enums.poi.HorizontalAlignmentEnum;
import lombok.Getter;
import lombok.Setter;

import javax.persistence.Column;
import java.time.LocalDateTime;

@HeadStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER)
@HeadFontStyle(fontHeightInPoints = 12)
@ContentStyle(horizontalAlignment = HorizontalAlignmentEnum.LEFT)
@ContentFontStyle(fontHeightInPoints = 10, fontName = "宋体")
@ExcelIgnoreUnannotated
@Getter
@Setter
public class InvwQryObusExcelModel {

@ColumnWidth(10)
@ExcelProperty(value = "单号数据的结果集", index = 0)
private String datas;

@ColumnWidth(10)
@ExcelProperty(value = "批次号", index = 1)
private String batchNo;

@ColumnWidth(10)
@ExcelProperty(value = "合同序列号", index = 3)
private String serialNo;

@ColumnWidth(10)
@ExcelProperty(value = "卡号", index = 4)
private String cardNo;

@ColumnWidth(10)
@ExcelProperty(value = "卡片类型", index = 5)
private String cardType;

@ColumnWidth(10)
@ExcelProperty(value = "卡片厂商", index = 6)
private String provider;

@ColumnWidth(10)
@ExcelProperty(value = "卡片厂商代码", index = 7)
private String providerId;

@ColumnWidth(10)
@ExcelProperty(value = "激活日期", index = 8)
private String activeDate;

@ColumnWidth(10)
@ExcelProperty(value = "发行状态", index = 9)
private Integer status;

@ColumnWidth(10)
@ExcelProperty(value = "一发日期", index = 10)
private String formatTime;

@ColumnWidth(10)
@ExcelProperty(value = "二发/客服日期", index = 11)
private String lastUpdateTime;

@ColumnWidth(10)
@ExcelProperty(value = "OBU物理号", index = 12)
private String obuMac;

@ColumnWidth(10)
@ExcelProperty(value = "卡片SNR", index = 13)
private String cardSnr;

@ColumnWidth(10)
@ExcelProperty(value = "渠道", index = 14)
private String chanel;

@ColumnWidth(10)
@ExcelProperty(value = "渠道ID", index = 15)
private String chanelId;

@ColumnWidth(10)
@ExcelProperty(value = "入库时间", index = 16)
private LocalDateTime insertTime;
}

+ 2
- 0
zhywpt-app-invw/src/main/resources/bootstrap.yml 查看文件

@@ -31,6 +31,8 @@ spring:
refresh: true
- data-id: comm-client.yaml
refresh: true
- data-id: minio-client.yaml
refresh: true
server:
port: 9085
servlet:

Loading…
取消
儲存