2016 数据集测试成功OK

This commit is contained in:
daichao 2025-06-12 15:39:41 +08:00
parent 31400217ee
commit 9e10a168eb
3 changed files with 185 additions and 64 deletions

View File

@ -1,11 +1,14 @@
package com.alihealth.d2d.provtest.domain; package com.alihealth.d2d.provtest.domain;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Builder; 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;
/** /**
* 收货单信息数据子集(DrugDeliveryNoteApplyInfo)表实体类 * 收货单信息数据子集(DrugDeliveryNoteApplyInfo)表实体类
* *
@ -17,178 +20,178 @@ import java.util.Date;
@Builder @Builder
@TableName("drug_delivery_note_apply_info") @TableName("drug_delivery_note_apply_info")
public class DrugDeliveryNoteApplyInfo { public class DrugDeliveryNoteApplyInfo {
//主键ID //主键ID
@Column(name = "id") @Column(name = "id")
private Long id; private Long id;
//事件流水号 //事件流水号
@Column(name = "event_id") @Column(name = "event_id")
private String eventId; private String eventId;
//事件响应时间 //事件响应时间
@Column(name = "rec_time") @Column(name = "rec_time")
private Date recTime; private Date recTime;
//药品追溯码 //药品追溯码
@Column(name = "ypzsm") @Column(name = "ypzsm")
private String ypzsm; private String ypzsm;
//包装层级 //包装层级
@Column(name = "bzcj") @Column(name = "bzcj")
private String bzcj; private String bzcj;
//上一级药品追溯码 //上一级药品追溯码
@Column(name = "syjbzypzsm") @Column(name = "syjbzypzsm")
private String syjbzypzsm; private String syjbzypzsm;
//追溯码验证状态 //追溯码验证状态
@Column(name = "zsmyzzt") @Column(name = "zsmyzzt")
private String zsmyzzt; private String zsmyzzt;
//暂无 //暂无
@Column(name = "ymzt") @Column(name = "ymzt")
private String ymzt; private String ymzt;
//统一社会信用代码生产企业 //统一社会信用代码生产企业
@Column(name = "tyshxydmscqy") @Column(name = "tyshxydmscqy")
private String tyshxydmscqy; private String tyshxydmscqy;
//生产企业名称 //生产企业名称
@Column(name = "scqymc") @Column(name = "scqymc")
private String scqymc; private String scqymc;
//药品通用名称 //药品通用名称
@Column(name = "yptymc") @Column(name = "yptymc")
private String yptymc; private String yptymc;
//国家药品标识码 //国家药品标识码
@Column(name = "gjypbsm") @Column(name = "gjypbsm")
private String gjypbsm; private String gjypbsm;
//疫苗生产批号 //疫苗生产批号
@Column(name = "ymscph") @Column(name = "ymscph")
private String ymscph; private String ymscph;
//生产日期 //生产日期
@Column(name = "scrq") @Column(name = "scrq")
private Date scrq; private Date scrq;
//统一社会信用代码进口疫苗代理企业 //统一社会信用代码进口疫苗代理企业
@Column(name = "tyshxydmjkymdlqy") @Column(name = "tyshxydmjkymdlqy")
private String tyshxydmjkymdlqy; private String tyshxydmjkymdlqy;
//进口疫苗代理企业名称 //进口疫苗代理企业名称
@Column(name = "jkymdlqymc") @Column(name = "jkymdlqymc")
private String jkymdlqymc; private String jkymdlqymc;
//疫苗有效期截止日期 //疫苗有效期截止日期
@Column(name = "ymyxqjzrq") @Column(name = "ymyxqjzrq")
private Date ymyxqjzrq; private Date ymyxqjzrq;
//应收货数量 //应收货数量
@Column(name = "yshsl") @Column(name = "yshsl")
private Integer yshsl; private Integer yshsl;
//收货数量 //收货数量
@Column(name = "shsl") @Column(name = "shsl")
private Integer shsl; private Integer shsl;
//疫苗上市许可持有人名称 //疫苗上市许可持有人名称
@Column(name = "ymssxkcyrmc") @Column(name = "ymssxkcyrmc")
private String ymssxkcyrmc; private String ymssxkcyrmc;
//统一社会信用代码疫苗上市许可持有人 //统一社会信用代码疫苗上市许可持有人
@Column(name = "tyshxydmymssxkcyr") @Column(name = "tyshxydmymssxkcyr")
private String tyshxydmymssxkcyr; private String tyshxydmymssxkcyr;
//剂型 //剂型
@Column(name = "jx") @Column(name = "jx")
private String jx; private String jx;
//包装规格 //包装规格
@Column(name = "bzgg") @Column(name = "bzgg")
private String bzgg; private String bzgg;
//制剂规格 //制剂规格
@Column(name = "zjgg") @Column(name = "zjgg")
private String zjgg; private String zjgg;
//包装转换比 //包装转换比
@Column(name = "bzzhb") @Column(name = "bzzhb")
private Double bzzhb; private BigDecimal bzzhb;
//包装转换比单位 //包装转换比单位
@Column(name = "bzzhbdw") @Column(name = "bzzhbdw")
private String bzzhbdw; private String bzzhbdw;
//药品注册分类 //药品注册分类
@Column(name = "ypzcfl") @Column(name = "ypzcfl")
private String ypzcfl; private String ypzcfl;
//特殊药品管理分类 //特殊药品管理分类
@Column(name = "tsypglfl") @Column(name = "tsypglfl")
private String tsypglfl; private String tsypglfl;
//订货单编号 //订货单编号
@Column(name = "dhdbh") @Column(name = "dhdbh")
private String dhdbh; private String dhdbh;
//发货单编号 //发货单编号
@Column(name = "fhdbh") @Column(name = "fhdbh")
private String fhdbh; private String fhdbh;
//收货单编号 //收货单编号
@Column(name = "shdbh") @Column(name = "shdbh")
private String shdbh; private String shdbh;
//统一社会信用代码(发货机构) //统一社会信用代码(发货机构)
@Column(name = "tyshxydmfhjg") @Column(name = "tyshxydmfhjg")
private String tyshxydmfhjg; private String tyshxydmfhjg;
//暂无 //暂无
@Column(name = "jzdwbmfhjg") @Column(name = "jzdwbmfhjg")
private String jzdwbmfhjg; private String jzdwbmfhjg;
//发货机构名称 //发货机构名称
@Column(name = "fhjgmc") @Column(name = "fhjgmc")
private String fhjgmc; private String fhjgmc;
//发货地址 //发货地址
@Column(name = "fhdz") @Column(name = "fhdz")
private String fhdz; private String fhdz;
//统一社会信用代码(收货机构) //统一社会信用代码(收货机构)
@Column(name = "tyshxydmshjg") @Column(name = "tyshxydmshjg")
private String tyshxydmshjg; private String tyshxydmshjg;
//暂无 //暂无
@Column(name = "jzdwbmshjg") @Column(name = "jzdwbmshjg")
private String jzdwbmshjg; private String jzdwbmshjg;
//收货地址 //收货地址
@Column(name = "shdz") @Column(name = "shdz")
private String shdz; private String shdz;
//收货机构名称 //收货机构名称
@Column(name = "shjgmc") @Column(name = "shjgmc")
private String shjgmc; private String shjgmc;
//收货类型 //收货类型
@Column(name = "shlx") @Column(name = "shlx")
private String shlx; private String shlx;
//收货时间 //收货时间
@Column(name = "shsj") @Column(name = "shsj")
private Date shsj; private Date shsj;
//单据验证状态 //单据验证状态
@Column(name = "djyzzt") @Column(name = "djyzzt")
private String djyzzt; private String djyzzt;
//单据验证日期 //单据验证日期
@Column(name = "djyzrq") @Column(name = "djyzrq")
private Date djyzrq; private Date djyzrq;
//单据验证未通过原因 //单据验证未通过原因
@Column(name = "djyzwtgyy") @Column(name = "djyzwtgyy")
private String djyzwtgyy; private String djyzwtgyy;
//收货人 //收货人
@Column(name = "shr") @TableField("shr")
private String shr; private String shrmc;
//发货机构类型 //发货机构类型
@Column(name = "fhjglx") @Column(name = "fhjglx")
private String fhjglx; private String fhjglx;
//收货机构类型 //收货机构类型
@Column(name = "shjglx") @Column(name = "shjglx")
private String shjglx; private String shjglx;
//发货机构小类 //发货机构小类
@Column(name = "fhjgxl") @Column(name = "fhjgxl")
private String fhjgxl; private String fhjgxl;
//收货机构小类 //收货机构小类
@Column(name = "shjgxl") @Column(name = "shjgxl")
private String shjgxl; private String shjgxl;
//卫生机构代码收货机构 //卫生机构代码收货机构
@Column(name = "wsjgdmshjg") @Column(name = "wsjgdmshjg")
private String wsjgdmshjg; private String wsjgdmshjg;
//卫生机构代码发货机构 //卫生机构代码发货机构
@Column(name = "wsjgdmfhjg") @Column(name = "wsjgdmfhjg")
private String wsjgdmfhjg; private String wsjgdmfhjg;
//执业许可证登记号/诊所备案编号发货机构 //执业许可证登记号/诊所备案编号发货机构
@Column(name = "zyxkzdjhfhjg") @Column(name = "zyxkzdjhfhjg")
private String zyxkzdjhfhjg; private String zyxkzdjhfhjg;
//执业许可证登记号/诊所备案编号收货机构 //执业许可证登记号/诊所备案编号收货机构
@Column(name = "zyxkzdjhshjg") @Column(name = "zyxkzdjhshjg")
private String zyxkzdjhshjg; private String zyxkzdjhshjg;
//委托单位名称 //委托单位名称
@Column(name = "wtdwmc") @Column(name = "wtdwmc")
private String wtdwmc; private String wtdwmc;
//委托单位统一社会信用代码 //委托单位统一社会信用代码
@Column(name = "wtdwtyshxydm") @Column(name = "wtdwtyshxydm")
private String wtdwtyshxydm; private String wtdwtyshxydm;
//创建时间 //创建时间
@Column(name = "create_time") @Column(name = "create_time")
private Date createTime; private Date createTime;
//更新时间 //更新时间
@Column(name = "update_time") @Column(name = "update_time")
private Date updateTime; private Date updateTime;
//是否删除(0- 1-) //是否删除(0- 1-)
@Column(name = "is_deleted") @Column(name = "is_deleted")
private Integer isDeleted; private Integer isDeleted;

View File

@ -14,8 +14,6 @@ import org.springframework.stereotype.Service;
import java.text.ParseException; import java.text.ParseException;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
/** /**
* @author Jason * @author Jason
@ -44,7 +42,7 @@ public class SubType2011Handler extends AbstractEventDataHandler<DomesticDrugPro
//时间格式 //时间格式
SimpleDateFormat formatterDatetime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); SimpleDateFormat formatterDatetime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//日期格式 //日期格式
SimpleDateFormat formatterDate = new SimpleDateFormat("yyyy-MM-dd"); SimpleDateFormat formatterDate = new SimpleDateFormat("yyyyMMdd");
try { try {
return DomesticDrugProductionApplyInfo.builder() return DomesticDrugProductionApplyInfo.builder()

View File

@ -0,0 +1,120 @@
package com.alihealth.d2d.provtest.service.handle.business;
import com.alihealth.d2d.provtest.domain.DrugDeliveryNoteApplyInfo;
import com.alihealth.d2d.provtest.entity.EventBasic;
import com.alihealth.d2d.provtest.entity.EventBody;
import com.alihealth.d2d.provtest.entity.InstanceDetail;
import com.alihealth.d2d.provtest.entity.ItemDetail;
import com.alihealth.d2d.provtest.service.IDrugDeliveryNoteApplyInfoService;
import com.alihealth.d2d.provtest.service.handle.AbstractEventDataHandler;
import com.alihealth.d2d.provtest.service.handle.EventSubType;
import com.baomidou.mybatisplus.extension.service.IService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.text.ParseException;
import java.text.SimpleDateFormat;
@Service
@EventSubType("2016")
public class SubType2016Handler extends AbstractEventDataHandler<DrugDeliveryNoteApplyInfo> {
@Autowired
private IDrugDeliveryNoteApplyInfoService service;
@Override
protected Class<DrugDeliveryNoteApplyInfo> getEntityClass() {
return DrugDeliveryNoteApplyInfo.class;
}
@Override
protected IService<DrugDeliveryNoteApplyInfo> getService() {
return service;
}
@Override
protected DrugDeliveryNoteApplyInfo convertToEntity(EventBody eventBody, ItemDetail item, InstanceDetail instance) {
EventBasic evtBasic = eventBody.getEvtBasic();
//时间格式
SimpleDateFormat formatterDatetime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//日期格式
SimpleDateFormat formatterDate = new SimpleDateFormat("yyyyMMdd");
try {
return DrugDeliveryNoteApplyInfo.builder()
.eventId(eventBody.getEventID())
.recTime(formatterDatetime.parse(eventBody.getRecTime()))
.ypzsm(instance.getString("YPZSM"))
.bzcj(instance.getString("BZCJ"))
.syjbzypzsm(instance.getString("SYJBZYPZSM"))
.zsmyzzt(instance.getString("ZSMYZZT"))
.ymzt(instance.getString(("YMZT")))
.tyshxydmscqy(item.getString("TYSHXYDMSCQY"))
.scqymc(item.getString("SCQYMC"))
.yptymc(item.getString("YPTYMC"))
.gjypbsm(item.getString("GJYPBSM"))
.ymscph(item.getString("YMSCPH"))
.scrq(formatterDate.parse(item.getString("SCRQ")))
.tyshxydmjkymdlqy(item.getString("TYSHXYDMJKYMDLQY"))
.jkymdlqymc(item.getString("JKYMDLQYMC"))
.ymyxqjzrq(formatterDate.parse(item.getString("YMYXQJZRQ")))
.yshsl(item.getInt("YSHSL"))
.shsl(item.getInt("SHSL"))
.ymssxkcyrmc(item.getString("YMSSXKCYRMC"))
.tyshxydmymssxkcyr(item.getString("TYSHXYDMMYMSSXKCYR"))
.jx(item.getString("JX"))
.bzgg(item.getString("BZGG"))
.zjgg(item.getString("ZJGG"))
.bzzhb(new BigDecimal(item.getString("BZZHB")))
.bzzhbdw(item.getString("BZZHBDW"))
.ypzcfl(item.getString("YPZCFL"))
.tsypglfl(item.getString("TSYPGLFL"))
.dhdbh(evtBasic.getString("DHDBH"))
.fhdbh(evtBasic.getString("FHDBH"))
.shdbh(evtBasic.getString("SHDBH"))
.tyshxydmfhjg(evtBasic.getString("TYSHXYDMFHJG"))
.jzdwbmfhjg(evtBasic.getString("JZDWBMMFHJG"))
.fhjgmc(evtBasic.getString("FHJGMC"))
.fhdz(evtBasic.getString("FHDZ"))
.tyshxydmshjg(evtBasic.getString("TYSHXYDMSHJG"))
.jzdwbmshjg(evtBasic.getString("JZDWBMSHJG"))
.shdz(evtBasic.getString("SHDZ"))
.shjgmc(evtBasic.getString("SHJGMC"))
.shlx(evtBasic.getString("SHLX"))
.shsj(formatterDatetime.parse(evtBasic.getString("SHSJ")))
.djyzzt(evtBasic.getString("DJYZZT"))
.djyzrq(formatterDate.parse(evtBasic.getString("DJYZRQ")))
.djyzwtgyy(evtBasic.getString("DJYZWTGYY"))
.shrmc(evtBasic.getString("SHR"))
.fhjglx(evtBasic.getString("FHJGLX"))
.shjglx(evtBasic.getString("SHJGLX"))
.fhjgxl(evtBasic.getString("FHJGXL"))
.shjgxl(evtBasic.getString("SHJGXL"))
.wsjgdmshjg(evtBasic.getString("WSJGDMSHJG"))
.wsjgdmfhjg(evtBasic.getString("WSJGDMFHJG"))
.zyxkzdjhfhjg(evtBasic.getString("ZYXKZDJHFHJG"))
.zyxkzdjhshjg(evtBasic.getString("ZYXKZDJHSHJG"))
.wtdwmc(evtBasic.getString("WTDWMC"))
.wtdwtyshxydm(evtBasic.getString("WTDWTYSHXYDM"))
.build();
} catch (ParseException e) {
throw new RuntimeException(e);
}
}
@Override
public String getSubType() {
return "2016";
}
@Override
public void handleBase(String xml, String eventId) {
}
}