Commit 8ec64449 authored by 吴琼's avatar 吴琼

交易凭证

parent d68a91af
......@@ -40,6 +40,7 @@ import org.springframework.data.domain.PageRequest;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
import javax.persistence.criteria.Predicate;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
......@@ -95,7 +96,7 @@ public class TransactionReceiptRecordServiceImpl implements ITransactionReceiptR
// 设置查询条件
criteriaQuery.where(criteriaBuilder.and(predicates.toArray(new Predicate[predicates.size()])));
// 指定排序
//criteriaQuery.orderBy(criteriaBuilder.desc(root.get("id")));
criteriaQuery.orderBy(criteriaBuilder.desc(root.get("id")));
return criteriaQuery.getRestriction();
......@@ -241,11 +242,13 @@ public class TransactionReceiptRecordServiceImpl implements ITransactionReceiptR
if(CollectionUtils.isEmpty(transactionReceiptRecordList)){
return JsonResult.buildErrorStateResult("没有可以导出得数据");
}
String basicPath="D:\\交易凭证0225";
for(TransactionReceiptRecord record : transactionReceiptRecordList){
Integer userId = record.getUserId();
String orderNo = record.getOrderNo();
//调用kdsp接口获取交易凭证订单信息
String url = kdspOperationUrl + "/api/kdsp/op/fa-cui/transaction-proof/query";
//String url = "http://kdsp-operation-qa2.liangkebang.net/api/kdsp/op/fa-cui/transaction-proof/query";
try {
Map<String, String> header = Maps.newHashMap();
header.put("Content-type", "application/json");
......@@ -267,40 +270,52 @@ public class TransactionReceiptRecordServiceImpl implements ITransactionReceiptR
String businessCode = json.getString("businessCode");
//查询报错
if(!"0000".equals(businessCode)){
return JsonResult.buildErrorStateResult("订单信息查询报错");
//导出失败,跳过
record.setExportStatus(2);
transactionReceiptRecordRepo.save(record);
continue;
}
if(jsonResult != null){
JSONObject jsonObject = JSONObject.parseObject(jsonResult);
JSONArray jsonArray = jsonObject.getJSONArray("dataList");
if(jsonArray.isEmpty()){
return JsonResult.buildErrorStateResult("未查询到对应的订单信息");
//导出失败,跳过
record.setExportStatus(2);
transactionReceiptRecordRepo.save(record);
continue;
}
List<TransactionReceiptVO> transactionReceiptVOList = jsonArray.toJavaList(TransactionReceiptVO.class);
if(transactionReceiptVOList.isEmpty()){
return JsonResult.buildErrorStateResult("未查询到对应的订单信息");
//导出失败,跳过
record.setExportStatus(2);
transactionReceiptRecordRepo.save(record);
continue;
}
//生成pdf
String basicPath="D:\\交易凭证0222";
String filePath =basicPath +"\\"+record.getBatchNo()+record.getUserName();
FileToZip.mkdir(filePath);
filePath = filePath+"\\"+record.getOrderNo()+".pdf";
generatePDF(transactionReceiptVOList.get(0),filePath);
//调用电子签章接口
//保存到文件服务器上
/* SFTPUtil sftpUtil = new SFTPUtil(username,password,host,port);
sftpUtil.login();
log.info("uploadFile | 成功连接ftp");
//sftpUtil.upload(basePath,directory,okFileName,new ByteArrayInputStream(okFileData));
sftpUtil.logout();*/
//调用电子签章接口,电子签章回调更新签章状态
//todo
//导出成功
record.setExportStatus(1);
transactionReceiptRecordRepo.save(record);
}
} catch (Exception e) {
log.error("[TransactionReceiptRecordServiceImpl][exportZipFile] 网络通讯异常,userId:{},ex:{}", ExceptionUtils.getStackTrace(e));
return JsonResult.buildErrorStateResult(e.getMessage());
}
}
FileOutputStream fos1 = new FileOutputStream(new File("D:/交易凭证.zip"));
FileToZip.toZip(basicPath, fos1,true);
return JsonResult.buildSuccessResult(null,null);
}
......
......@@ -169,10 +169,8 @@ public final class FileToZip {
}
public static void main(String[] args) throws Exception {
/** 测试压缩方法1 */
/* FileOutputStream fos1 = new FileOutputStream(new File("D:/交易凭证11.zip"));
FileToZip.toZip(
"D:/交易凭证",
fos1,true);*/
FileOutputStream fos1 = new FileOutputStream(new File("D:/交易凭证.zip"));
FileToZip.toZip("D:/交易凭证0219", fos1,true);
/** 测试压缩方法2 */
......@@ -190,7 +188,7 @@ public final class FileToZip {
ZipUtils.compress(file, zos, "鸡哈线", true);
zos.close();//这里必须切记关闭
*/
List<String>list =new ArrayList();
/*List<String>list =new ArrayList();
list.add("/1王五");
list.add("/1王二");
list.add("/2王三");
......@@ -198,7 +196,7 @@ public final class FileToZip {
for(String str : list){
mkdir("D:/交易凭证00"+str);
System.out.println(str);
};
};*/
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment