|
|
@@ -24,10 +24,15 @@ import com.xunmei.system.api.RemoteOrgService;
|
|
|
import com.xunmei.system.api.domain.SysOrg;
|
|
|
import com.xunmei.system.api.function.RemoteCallHandlerExecutor;
|
|
|
import com.xunmei.system.api.vo.SysOrgVO;
|
|
|
+import feign.Response;
|
|
|
import org.springframework.beans.BeanUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
+import javax.servlet.http.HttpServletResponse;
|
|
|
+import java.io.IOException;
|
|
|
+import java.io.InputStream;
|
|
|
+import java.io.OutputStream;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.Collections;
|
|
|
import java.util.List;
|
|
|
@@ -56,10 +61,10 @@ public class CoreRegisterBookPdfServiceImpl extends ServiceImpl<CoreRegisterBook
|
|
|
|
|
|
LambdaQueryWrapper<CoreRegisterBookPdf> wrapper = new LambdaQueryWrapper<>();
|
|
|
|
|
|
- if (req.getCheckSub()){
|
|
|
- wrapper.likeRight(CoreRegisterBookPdf::getOrgPath,sysOrg.getPath());
|
|
|
- }else {
|
|
|
- wrapper.eq(CoreRegisterBookPdf::getOrgId,req.getOrgId());
|
|
|
+ if (req.getCheckSub()) {
|
|
|
+ wrapper.likeRight(CoreRegisterBookPdf::getOrgPath, sysOrg.getPath());
|
|
|
+ } else {
|
|
|
+ wrapper.eq(CoreRegisterBookPdf::getOrgId, req.getOrgId());
|
|
|
}
|
|
|
Page<CoreRegisterBookPdf> pageRequest = req.getPageRequest();
|
|
|
Page<CoreRegisterBookPdf> page = coreRegisterBookPdfMapper.selectPage(pageRequest, wrapper);
|
|
|
@@ -71,15 +76,32 @@ public class CoreRegisterBookPdfServiceImpl extends ServiceImpl<CoreRegisterBook
|
|
|
}
|
|
|
|
|
|
private CoreRegisterBookPdfPageVo getCoreRegisterBookPdfPageVo(CoreRegisterBookPdf coreRegisterBookPdf) {
|
|
|
- CoreRegisterBookPdfPageVo vo=new CoreRegisterBookPdfPageVo();
|
|
|
- BeanUtils.copyProperties(coreRegisterBookPdf,vo);
|
|
|
+ CoreRegisterBookPdfPageVo vo = new CoreRegisterBookPdfPageVo();
|
|
|
+ BeanUtils.copyProperties(coreRegisterBookPdf, vo);
|
|
|
return vo;
|
|
|
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public void export(ExportPdfDto pdfDto) {
|
|
|
- fileService.registerBookCompressPdf(pdfDto);
|
|
|
+ public void export(ExportPdfDto pdfDto, HttpServletResponse response) throws IOException {
|
|
|
+ InputStream inputStream = null;
|
|
|
+ OutputStream outputStream = null;
|
|
|
+ try {
|
|
|
+ Response result = fileService.registerBookCompressPdf(pdfDto);
|
|
|
+ Response.Body body = result.body();
|
|
|
+ inputStream = body.asInputStream();
|
|
|
+ outputStream = response.getOutputStream();
|
|
|
+ int length = 0;
|
|
|
+ byte[] temp = new byte[1024 * 10];
|
|
|
+ while ((length = inputStream.read(temp)) != -1) {
|
|
|
+ outputStream.write(temp, 0, length);
|
|
|
+ }
|
|
|
+ outputStream.flush();
|
|
|
+ outputStream.close();
|
|
|
+ inputStream.close();
|
|
|
+ } catch (IOException e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
@@ -125,7 +147,8 @@ public class CoreRegisterBookPdfServiceImpl extends ServiceImpl<CoreRegisterBook
|
|
|
return result;
|
|
|
}
|
|
|
|
|
|
- private List<IdName<Long, String>> get(List<SysOrgVO> all, List<IdName<Long, String>> orgList, SysOrgVO org, Long orgId) {
|
|
|
+ private List<IdName<Long, String>> get(List<SysOrgVO> all, List<IdName<Long, String>> orgList, SysOrgVO
|
|
|
+ org, Long orgId) {
|
|
|
|
|
|
final Optional<SysOrgVO> optional = all.stream()
|
|
|
.filter(org1 -> org1.getId().equals(org.getParentId()) && org.getPath().contains(org1.getPath()))
|