代码调整
This commit is contained in:
parent
9617b16473
commit
f27000a5a6
|
@ -22,7 +22,11 @@ public class DrugRetraceController {
|
||||||
|
|
||||||
@PostMapping(value = "/retrace")
|
@PostMapping(value = "/retrace")
|
||||||
public AjaxResult retrace(@RequestBody DrugRetraceSearcher searcher) {
|
public AjaxResult retrace(@RequestBody DrugRetraceSearcher searcher) {
|
||||||
DrugRetraceVO drugRetraceVO = drugRetraceService.retrace(searcher);
|
try {
|
||||||
return AjaxResult.success(drugRetraceVO);
|
DrugRetraceVO drugRetraceVO = drugRetraceService.retrace(searcher);
|
||||||
|
return AjaxResult.success(drugRetraceVO);
|
||||||
|
} catch (Exception e) {
|
||||||
|
return AjaxResult.error(e.getMessage());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,7 +7,6 @@ import lombok.Builder;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
import javax.persistence.Column;
|
import javax.persistence.Column;
|
||||||
import java.math.BigDecimal;
|
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -73,8 +72,8 @@ public class DrugRetailAndUseApplyInfo {
|
||||||
@Column(name = "scrq")
|
@Column(name = "scrq")
|
||||||
private Date scrq;
|
private Date scrq;
|
||||||
//药品有效期截止日期
|
//药品有效期截止日期
|
||||||
@Column(name = "ypqjzrq")
|
@Column(name = "ypyxqjzrq")
|
||||||
private Date ypqjzrq;
|
private Date ypyxqjzrq;
|
||||||
//售药日期
|
//售药日期
|
||||||
@Column(name = "syrq")
|
@Column(name = "syrq")
|
||||||
private Date syrq;
|
private Date syrq;
|
||||||
|
|
|
@ -56,7 +56,7 @@ public class ReceiveDataLog {
|
||||||
|
|
||||||
|
|
||||||
@Column(name = "is_deleted")
|
@Column(name = "is_deleted")
|
||||||
private Date isDeleted;
|
private Long isDeleted;
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -14,6 +14,7 @@ import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import java.text.ParseException;
|
import java.text.ParseException;
|
||||||
import java.text.SimpleDateFormat;
|
import java.text.SimpleDateFormat;
|
||||||
|
import java.util.Optional;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Jason
|
* @author Jason
|
||||||
|
@ -71,10 +72,12 @@ public class SubType2011Handler extends AbstractEventDataHandler<DomesticDrugPro
|
||||||
.jx(item.getString("JX"))
|
.jx(item.getString("JX"))
|
||||||
.zjgg(item.getString("ZJGG"))
|
.zjgg(item.getString("ZJGG"))
|
||||||
.bzgg(item.getString("BZGG"))
|
.bzgg(item.getString("BZGG"))
|
||||||
.bzzhb(Integer.parseInt(item.getString("BZZHB")))
|
.bzzhb(Integer.parseInt(Optional.ofNullable(item.getString("BZZHB")).orElse("0")))
|
||||||
.ypyxq(Integer.parseInt(item.getString("YPYXQ")))
|
.ypyxq(Integer.parseInt(Optional.ofNullable(item.getString("YPYXQ")).orElse("0")))
|
||||||
.ypyxqdw(item.getString("YPYXQDW"))
|
.ypyxqdw(item.getString("YPYXQDW"))
|
||||||
.yppzwh(item.getString("YPPZWH"))
|
.yppzwh(item.getString("YPPZWH"))
|
||||||
|
|
||||||
|
//TODO 提供一个公共判空方法及转换方法,提高代码的鲁棒性
|
||||||
.yppzwhyxq(formatterDate.parse(item.getString("YPPZWHYXQ")))
|
.yppzwhyxq(formatterDate.parse(item.getString("YPPZWHYXQ")))
|
||||||
.ypscph(item.getString("YPSCPH"))
|
.ypscph(item.getString("YPSCPH"))
|
||||||
|
|
||||||
|
|
|
@ -12,7 +12,6 @@ import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import java.math.BigDecimal;
|
|
||||||
import java.text.ParseException;
|
import java.text.ParseException;
|
||||||
import java.text.SimpleDateFormat;
|
import java.text.SimpleDateFormat;
|
||||||
|
|
||||||
|
@ -61,7 +60,9 @@ public class SubType2017Handler extends AbstractEventDataHandler<DrugRetailAndUs
|
||||||
.yppzwhyxq(formatterDate.parse(item.getString("YPPZWHYXQ")))
|
.yppzwhyxq(formatterDate.parse(item.getString("YPPZWHYXQ")))
|
||||||
.ymscph(item.getString("YMSCPH"))
|
.ymscph(item.getString("YMSCPH"))
|
||||||
.scrq(formatterDate.parse(item.getString("SCRQ")))
|
.scrq(formatterDate.parse(item.getString("SCRQ")))
|
||||||
.ypqjzrq(formatterDate.parse(item.getString("YPQJZRQ")))
|
|
||||||
|
.ypyxqjzrq(formatterDate.parse(item.getString("YPYXQJZRQ")))
|
||||||
|
|
||||||
.syrq(formatterDate.parse(item.getString("SYRQ")))
|
.syrq(formatterDate.parse(item.getString("SYRQ")))
|
||||||
.tyshxydmjkymdlqy(item.getString("TYSHXYDMJKYMDLQY"))
|
.tyshxydmjkymdlqy(item.getString("TYSHXYDMJKYMDLQY"))
|
||||||
.jkymdlqymc(item.getString("JKYMDLQYMC"))
|
.jkymdlqymc(item.getString("JKYMDLQYMC"))
|
||||||
|
|
|
@ -2,14 +2,50 @@ package com.alihealth.d2d.provtest.service.impl;
|
||||||
|
|
||||||
import com.alihealth.d2d.provtest.domain.ReceiveDataLog;
|
import com.alihealth.d2d.provtest.domain.ReceiveDataLog;
|
||||||
import com.alihealth.d2d.provtest.mapper.ReceiveDataLogMapper;
|
import com.alihealth.d2d.provtest.mapper.ReceiveDataLogMapper;
|
||||||
|
import com.alihealth.d2d.provtest.searcher.DrugResolveSearcher;
|
||||||
import com.alihealth.d2d.provtest.service.IReceiveDataLogService;
|
import com.alihealth.d2d.provtest.service.IReceiveDataLogService;
|
||||||
|
import com.alihealth.d2d.provtest.utils.CertManager;
|
||||||
|
import com.alihealth.d2d.provtest.utils.StreamUtil;
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
|
import org.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import javax.crypto.BadPaddingException;
|
||||||
|
import javax.crypto.IllegalBlockSizeException;
|
||||||
|
import javax.crypto.NoSuchPaddingException;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.security.InvalidKeyException;
|
||||||
|
import java.security.NoSuchAlgorithmException;
|
||||||
|
import java.security.spec.InvalidKeySpecException;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Jason
|
* @author Jason
|
||||||
* @date 2025年06月03日 15:37:17
|
* @date 2025年06月03日 15:37:17
|
||||||
*/
|
*/
|
||||||
@Service("receiveDataLogService")
|
@Service("receiveDataLogService")
|
||||||
public class ReceiveDataLogServiceImpl extends ServiceImpl<ReceiveDataLogMapper, ReceiveDataLog> implements IReceiveDataLogService {
|
public class ReceiveDataLogServiceImpl extends ServiceImpl<ReceiveDataLogMapper, ReceiveDataLog> implements IReceiveDataLogService {
|
||||||
|
Logger logger = LoggerFactory.getLogger(getClass());
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private ReceiveDataLogMapper receiveDataLogMapper;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private CertManager certManager;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void resolve(DrugResolveSearcher searcher) throws NoSuchPaddingException, IllegalBlockSizeException, NoSuchAlgorithmException, InvalidKeySpecException, BadPaddingException, IOException, InvalidKeyException {
|
||||||
|
ReceiveDataLog receiveDataLog = receiveDataLogMapper.selectOne(
|
||||||
|
new QueryWrapper<ReceiveDataLog>().lambda()
|
||||||
|
.eq(ReceiveDataLog::getEventId, searcher.getEventId())
|
||||||
|
);
|
||||||
|
String data = receiveDataLog.getData();
|
||||||
|
String privateKey = certManager.getPrivateKey();
|
||||||
|
String de = certManager.testDecrypt(privateKey, data);
|
||||||
|
String xml = StreamUtil.getUnStreamContent(de);
|
||||||
|
logger.info("解密之后的文件内容:{}", xml);
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue