代码调整

This commit is contained in:
daichao 2025-07-01 10:49:35 +08:00
parent d0cb7f11e9
commit c08ff946fe
17 changed files with 277 additions and 197 deletions

View File

@ -14,6 +14,36 @@ public class DrugDeliveryNoteInfoVO implements Serializable {
private static final long serialVersionUID = -6817830718249051422L; private static final long serialVersionUID = -6817830718249051422L;
/**
* 药品追溯码
*/
private String ypzsm;
/**
* 上一级包装药品追溯码
*/
private String syjbzypzsm;
/**
* 国家药品标识码
*/
private String gjypbsm;
/**
* 药品通用名称
*/
private String yptymc;
/**
* 收货机构名称
*/
private String shjgmc;
/**
* 统一社会信用代码收货机构
*/
private String tyshxydmshjg;
/** /**
* 收货时间 * 收货时间
*/ */
@ -21,17 +51,19 @@ public class DrugDeliveryNoteInfoVO implements Serializable {
private Date shsj; private Date shsj;
/** /**
* 收货公司社会信用代码 * 收货数量
*/ */
private String tyshxydmshjg; private Integer shsl;
/** /**
* 收货公司名称 * 发货机构名称
*/ */
private String shjgmc; private String fhjgmc;
/** /**
* 收货单号 * 统一社会信用代码发货机构
*/ */
private String shdbh; private String tyshxydmfhjg;
} }

View File

@ -14,16 +14,55 @@ public class DrugInvoiceInfoVO implements Serializable {
private static final long serialVersionUID = 6502538268319598412L; private static final long serialVersionUID = 6502538268319598412L;
/** 发货时间 */ /**
* 药品追溯码
*/
private String ypzsm;
/**
* 上一级包装药品追溯码
*/
private String syjbzypzsm;
/**
* 国家药品标识码
*/
private String gjypbsm;
/**
* 药品通用名称
*/
private String yptymc;
/**
* 发货机构名称
*/
private String fhjgmc;
/**
* 统一社会信用代码发货机构
*/
private String tyshxydmfhjg;
/**
* 发货时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date fhsj; private Date fhsj;
/** 发货公司社会信用代码 */ /**
private String tyshxydmfhjg; * 发货数量
*/
private Integer fhsl;
/** 发货公司名称 */ /**
private String fhjgmc; * 收货机构名称
*/
private String shjgmc;
/**
* 统一社会信用代码收货机构
*/
private String tyshxydmshjg;
/** 发货单号 */
private String fhdbh;
} }

View File

@ -15,31 +15,19 @@ public class DrugProductionInfoVO implements Serializable {
private static final long serialVersionUID = 2214859259608999147L; private static final long serialVersionUID = 2214859259608999147L;
/** /**
* 药品生产日期 * 药品追溯码
*/ */
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") private String ypzsm;
private Date scrq;
/** /**
* 药品有效期截止日期 * 上一级包装药品追溯码
*/ */
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") private String syjbzypzsm;
private Date ymyxqjzrq;
/** /**
* 药品生产批号 * 国家药品标识码
*/ */
private String ypscph; private String gjypbsm;
/**
* 药品生产企业信用代码
*/
private String tyshxydm;
/**
* 药品生产企业名称
*/
private String scqymc;
/** /**
* 药品通用名称 * 药品通用名称
@ -47,59 +35,29 @@ public class DrugProductionInfoVO implements Serializable {
private String yptymc; private String yptymc;
/** /**
* 药品商用名称中文 * 统一社会信用代码生产企业
*/ */
private String ypspmc; private String tyshxydm;
/** /**
* 国家药品标识码 * 生产企业名称
*/ */
private String gjypbsm; private String scqymc;
/** /**
* 药品本位码 * 生产日期
*/
private String ypbwm;
/**
* 剂型
*/
private String jx;
/**
* 制剂规格
*/
private String zjgg;
/**
* 包装规格
*/
private String bzgg;
/**
* 包装转换比
*/
private Integer bzzhb;
/**
* 药品有效期
*/
private Integer ypyxq;
/**
* 药品有效期单位
*/
private String ypyxqdw;
/**
* 药品批准文号
*/
private String yppzwh;
/**
* 药品批准文号有效期
*/ */
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
private Date yppzwhyxq; private Date scrq;
/**
* 药品生产批号
*/
private String ypscph;
/**
* 生产数量
*/
private Integer scsl;
} }

View File

@ -14,28 +14,58 @@ public class DrugRetailAndUseInfoVO implements Serializable {
private static final long serialVersionUID = 8169288349155391871L; private static final long serialVersionUID = 8169288349155391871L;
/** 售药时间 */ /**
* 药品追溯码
*/
private String ypzsm;
/**
* 上一级包装药品追溯码
*/
private String syjbzypzsm;
/**
* 国家药品标识码
*/
private String gjypbsm;
/**
* 药品通用名称
*/
private String yptymc;
/**
* 售药数量
*/
private Integer sysl;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
/** 售出时间 */
private Date scsj; private Date scsj;
/** 购买人身份信息 */ /**
* 购买人身份信息
*/
private String gmrsfxx; private String gmrsfxx;
/** 购买人电话号码 */ /**
* 购买人电话号码
*/
private String gmrdhhm; private String gmrdhhm;
/** 互联网订单标识 */ /**
* 互联网订单标志
*/
private String hlwddbz; private String hlwddbz;
/** 零售药店名称 */ /**
* 零售药店名称
*/
private String lsydmc; private String lsydmc;
/** 零售药店编号 */ /**
private String lsdjbh; * 统一社会信用代码零售药店
*/
/** 统一社会信用代码(零售药店) */
private String tyshxydmlsyd; private String tyshxydmlsyd;
/** 开方医师(非处方药没有该字段) */
private String kfys;
} }

View File

@ -13,12 +13,17 @@ public class DrugRetraceVO implements Serializable {
/** /**
* 药品生产信息 * 药品生产信息
*/ */
private DrugProductionInfoVO drugProductionInfoVO; private List<DrugProductionInfoVO> drugProductionInfoVOList;
/** /**
* 药品发货单与收货单信息 * 药品发货单信息
*/ */
private List<DrugInvoiceAndDeliveryInfoVO> drugInvoiceAndDeliveryInfoVOList; private List<DrugInvoiceInfoVO> drugInvoiceInfoVOList;
/**
* 收货单信息
*/
private List<DrugDeliveryNoteInfoVO> drugDeliveryNoteInfoVOList;
/** /**
* 药品零售与药品使用信息 * 药品零售与药品使用信息

View File

@ -63,4 +63,23 @@ public class ResolveTest {
return AjaxResult.success(true); return AjaxResult.success(true);
} }
@PostMapping(value = "/resolve3")
public AjaxResult resolve3() throws NoSuchPaddingException, IllegalBlockSizeException, NoSuchAlgorithmException, InvalidKeySpecException, BadPaddingException, IOException, InvalidKeyException {
List<ReceiveDataLog> list = receiveDataLogService.list(new QueryWrapper<ReceiveDataLog>()
.lambda().eq(ReceiveDataLog::getEventId, "04bfe7514e444bd68458f71c147d0718")
);
String privateKey = certManager.getPrivateKey();
for (ReceiveDataLog receiveDataLog : list) {
String eventId = receiveDataLog.getEventId();
String de = certManager.testDecrypt(privateKey, receiveDataLog.getData());
String xml = StreamUtil.getUnStreamContent(de);
EventPojo eventPojo = new EventPojo();
eventPojo.setData(receiveDataLog.getData());
eventPojo.setSubType(receiveDataLog.getSubType());
processingService.processEvent(eventPojo, xml, eventId);
}
return AjaxResult.success(true);
}
} }

View File

@ -5,12 +5,15 @@ import com.alihealth.d2d.provtest.domain.DomesticDrugProductionApplyInfo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import java.util.List;
public interface DomesticDrugProductionApplyInfoMapper extends BaseMapper<DomesticDrugProductionApplyInfo> { public interface DomesticDrugProductionApplyInfoMapper extends BaseMapper<DomesticDrugProductionApplyInfo> {
/** /**
* 根据药品追溯码查询药品信息 * 根据药品追溯码查询药品信息
*
* @param ypzsm * @param ypzsm
* @return * @return
*/ */
DrugProductionInfoVO selectByYpzsm(@Param("ypzsm") String ypzsm); List<DrugProductionInfoVO> selectByYpzsm(@Param("ypzsm") String ypzsm);
} }

View File

@ -1,10 +1,12 @@
package com.alihealth.d2d.provtest.mapper; package com.alihealth.d2d.provtest.mapper;
import com.alihealth.d2d.provtest.VO.DrugProductionInfoVO; import com.alihealth.d2d.provtest.VO.DrugProductionInfoVO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.alihealth.d2d.provtest.domain.DrugImportApplyInfo; import com.alihealth.d2d.provtest.domain.DrugImportApplyInfo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import java.util.List;
/** /**
* 药品进口信息数据子集(DrugImportApplyInfo)表数据库访问层 * 药品进口信息数据子集(DrugImportApplyInfo)表数据库访问层
* *
@ -16,6 +18,6 @@ public interface DrugImportApplyInfoMapper extends BaseMapper<DrugImportApplyInf
/* /*
* 根据药品追溯码查询药品生产信息 * 根据药品追溯码查询药品生产信息
*/ */
DrugProductionInfoVO selectByYpzsm(@Param("ypzsm") String ypzsm); List<DrugProductionInfoVO> selectByYpzsm(@Param("ypzsm") String ypzsm);
} }

View File

@ -37,14 +37,14 @@ public abstract class AbstractEventDataHandler<T> implements EventDataHandler {
try { try {
entities.add(convertToEntity(eventBody, item, instance, eventId)); entities.add(convertToEntity(eventBody, item, instance, eventId));
} catch (Exception e) { } catch (Exception e) {
log.error("转换实体失败", e); log.error("转换实体失败{},对应的eventId是={}", e.getMessage(), eventId);
} }
} }
} else { } else {
try { try {
entities.add(convertToEntity(eventBody, item, null, eventId)); entities.add(convertToEntity(eventBody, item, null, eventId));
} catch (Exception e) { } catch (Exception e) {
log.error("转换实体失败", e); log.error("转换实体失败{},对应的eventId是={}", e.getMessage(), eventId);
} }
} }
@ -53,7 +53,7 @@ public abstract class AbstractEventDataHandler<T> implements EventDataHandler {
try { try {
entities.add(convertToEntity(eventBody, null, null, eventId)); entities.add(convertToEntity(eventBody, null, null, eventId));
} catch (Exception e) { } catch (Exception e) {
log.error("转换实体失败", e); log.error("转换实体失败{},对应的eventId是={}", e.getMessage(), eventId);
} }
} }
} }

View File

@ -44,14 +44,14 @@ public abstract class EventData2017Handler implements EventDataHandler {
try { try {
entities.add(convertToEntity(eventBody, item, instance, eventId)); entities.add(convertToEntity(eventBody, item, instance, eventId));
} catch (Exception e) { } catch (Exception e) {
log.error("转换实体失败", e); log.error("转换实体失败{},对应的eventId是={}", e.getMessage(), eventId);
} }
} }
} else { } else {
try { try {
entities.add(convertToEntity(eventBody, item, null, eventId)); entities.add(convertToEntity(eventBody, item, null, eventId));
} catch (Exception e) { } catch (Exception e) {
log.error("转换实体失败", e); log.error("转换实体失败{},对应的eventId是={}", e.getMessage(), eventId);
} }
} }
@ -60,7 +60,7 @@ public abstract class EventData2017Handler implements EventDataHandler {
try { try {
entities.add(convertToEntity(eventBody, null, null, eventId)); entities.add(convertToEntity(eventBody, null, null, eventId));
} catch (Exception e) { } catch (Exception e) {
log.error("转换实体失败", e); log.error("转换实体失败{},对应的eventId是={}", e.getMessage(), eventId);
} }
} }
} }

View File

@ -8,9 +8,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils; import org.springframework.util.CollectionUtils;
import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Objects;
@Service("drugRetraceService") @Service("drugRetraceService")
public class DrugRetraceServiceImpl implements DrugRetraceService { public class DrugRetraceServiceImpl implements DrugRetraceService {
@ -35,47 +33,20 @@ public class DrugRetraceServiceImpl implements DrugRetraceService {
public DrugRetraceVO retrace(DrugRetraceSearcher searcher) { public DrugRetraceVO retrace(DrugRetraceSearcher searcher) {
DrugRetraceVO drugRetraceVO = new DrugRetraceVO(); DrugRetraceVO drugRetraceVO = new DrugRetraceVO();
//先查国内的要是国内没有查询到再查询国外的 //先查国内的要是国内没有查询到再查询国外的
DrugProductionInfoVO drugProductionInfoVO = domesticDrugProductionApplyInfoMapper.selectByYpzsm(searcher.getYpzsm()); List<DrugProductionInfoVO> drugProductionInfoVOList = domesticDrugProductionApplyInfoMapper.selectByYpzsm(searcher.getYpzsm());
if (Objects.isNull(drugProductionInfoVO)) { if (CollectionUtils.isEmpty(drugProductionInfoVOList)) {
drugProductionInfoVO = drugImportApplyInfoMapper.selectByYpzsm(searcher.getYpzsm()); drugProductionInfoVOList = drugImportApplyInfoMapper.selectByYpzsm(searcher.getYpzsm());
} }
// if (Objects.isNull(drugProductionInfoVO)) {
// throw new ServiceException("未查询到该药品!"); drugRetraceVO.setDrugProductionInfoVOList(drugProductionInfoVOList);
// }
drugRetraceVO.setDrugProductionInfoVO(drugProductionInfoVO);
//统一发货单与收货单并行排序
List<DrugInvoiceAndDeliveryInfoVO> drugInvoiceAndDeliveryInfoVOList = new ArrayList<>();
// 查询发货单 // 查询发货单
List<DrugInvoiceInfoVO> drugInvoiceInfoVOList = drugInvoiceApplyInfoMapper.selectByYpzsm(searcher.getYpzsm()); List<DrugInvoiceInfoVO> drugInvoiceInfoVOList = drugInvoiceApplyInfoMapper.selectByYpzsm(searcher.getYpzsm());
if (!CollectionUtils.isEmpty(drugInvoiceInfoVOList)) { drugRetraceVO.setDrugInvoiceInfoVOList(drugInvoiceInfoVOList);
for (DrugInvoiceInfoVO drugInvoiceInfoVO : drugInvoiceInfoVOList) {
DrugInvoiceAndDeliveryInfoVO drugInvoiceAndDeliveryInfoVO = new DrugInvoiceAndDeliveryInfoVO();
drugInvoiceAndDeliveryInfoVO.setSj(drugInvoiceInfoVO.getFhsj());
drugInvoiceAndDeliveryInfoVO.setTyshxydm(drugInvoiceInfoVO.getTyshxydmfhjg());
drugInvoiceAndDeliveryInfoVO.setGsmc(drugInvoiceInfoVO.getFhjgmc());
drugInvoiceAndDeliveryInfoVO.setDdh(drugInvoiceInfoVO.getFhdbh());
drugInvoiceAndDeliveryInfoVO.setDjlx("invoice");
drugInvoiceAndDeliveryInfoVOList.add(drugInvoiceAndDeliveryInfoVO);
}
}
// 查询收货单 // 查询收货单
List<DrugDeliveryNoteInfoVO> drugDeliveryNoteInfoVOList = drugDeliveryNoteApplyInfoMapper.selectByYpzsm(searcher.getYpzsm()); List<DrugDeliveryNoteInfoVO> drugDeliveryNoteInfoVOList = drugDeliveryNoteApplyInfoMapper.selectByYpzsm(searcher.getYpzsm());
if (!CollectionUtils.isEmpty(drugDeliveryNoteInfoVOList)) { drugRetraceVO.setDrugDeliveryNoteInfoVOList(drugDeliveryNoteInfoVOList);
for (DrugDeliveryNoteInfoVO drugDeliveryNoteInfoVO : drugDeliveryNoteInfoVOList) {
DrugInvoiceAndDeliveryInfoVO drugInvoiceAndDeliveryInfoVO = new DrugInvoiceAndDeliveryInfoVO();
drugInvoiceAndDeliveryInfoVO.setSj(drugDeliveryNoteInfoVO.getShsj());
drugInvoiceAndDeliveryInfoVO.setTyshxydm(drugDeliveryNoteInfoVO.getTyshxydmshjg());
drugInvoiceAndDeliveryInfoVO.setGsmc(drugDeliveryNoteInfoVO.getShjgmc());
drugInvoiceAndDeliveryInfoVO.setDdh(drugDeliveryNoteInfoVO.getShdbh());
drugInvoiceAndDeliveryInfoVO.setDjlx("delivery");
drugInvoiceAndDeliveryInfoVOList.add(drugInvoiceAndDeliveryInfoVO);
}
}
if (!CollectionUtils.isEmpty(drugInvoiceAndDeliveryInfoVOList)) {
drugInvoiceAndDeliveryInfoVOList.sort((o1, o2) -> o1.getSj().compareTo(o2.getSj()));
}
drugRetraceVO.setDrugInvoiceAndDeliveryInfoVOList(drugInvoiceAndDeliveryInfoVOList);
// 查询零售及使用信息 // 查询零售及使用信息
List<DrugRetailAndUseInfoVO> drugRetailAndUseInfoVOList = drugRetailAndUseApplyInfoMapper.selectByYpzsm(searcher.getYpzsm()); List<DrugRetailAndUseInfoVO> drugRetailAndUseInfoVOList = drugRetailAndUseApplyInfoMapper.selectByYpzsm(searcher.getYpzsm());

View File

@ -5,6 +5,7 @@ import com.alihealth.d2d.provtest.factory.EventHandlerFactory;
import com.alihealth.d2d.provtest.service.handle.EventDataHandler; import com.alihealth.d2d.provtest.service.handle.EventDataHandler;
import com.alihealth.d2d.provtest.utils.EventPojo; import com.alihealth.d2d.provtest.utils.EventPojo;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.scheduling.annotation.Async; import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -14,6 +15,7 @@ import org.springframework.stereotype.Service;
*/ */
@Service("eventProcessingService") @Service("eventProcessingService")
@RequiredArgsConstructor @RequiredArgsConstructor
@Slf4j
public class EventProcessingServiceImpl { public class EventProcessingServiceImpl {
private final XmlParserServiceImpl xmlParserServiceImpl; private final XmlParserServiceImpl xmlParserServiceImpl;
@ -21,6 +23,7 @@ public class EventProcessingServiceImpl {
/** /**
* 解析xml并处理接收的事件 * 解析xml并处理接收的事件
*
* @param eventPojo * @param eventPojo
* @param xml * @param xml
* @param eventId * @param eventId
@ -36,7 +39,12 @@ public class EventProcessingServiceImpl {
throw new RuntimeException(e); throw new RuntimeException(e);
} }
//处理数据时关联到外层的eventId,方便通过日志排查问题 //处理数据时关联到外层的eventId,方便通过日志排查问题
try {
handler.handle(eventS, eventId); handler.handle(eventS, eventId);
} catch (Exception e) {
log.error("数据处理异常{},对应的eventId是={}", e.getMessage(), eventId);
}
} else { } else {
handler.handleBase(xml, eventId); handler.handleBase(xml, eventId);
} }

View File

@ -6,25 +6,21 @@
<select id="selectByYpzsm" resultType="com.alihealth.d2d.provtest.VO.DrugProductionInfoVO"> <select id="selectByYpzsm" resultType="com.alihealth.d2d.provtest.VO.DrugProductionInfoVO">
SELECT yptymc, SELECT
ypspmc, ypzsm,
syjbzypzsm,
gjypbsm, gjypbsm,
ypbwm, yptymc,
jx,
zjgg,
bzgg,
bzzhb,
ypyxq,
ypyxqdw,
yppzwh,
yppzwhyxq,
scrq,
ymyxqjzrq,
ypscph,
tyshxydmscqy AS tyshxydm, tyshxydmscqy AS tyshxydm,
scqymc scqymc,
FROM domestic_drug_production_apply_info scrq,
WHERE ypzsm = #{ypzsm} ypscph,
scsl
FROM
domestic_drug_production_apply_info
WHERE
ypzsm = #{ypzsm}
ORDER BY
scrq ASC
</select> </select>
</mapper> </mapper>

View File

@ -5,14 +5,22 @@
<select id="selectByYpzsm" resultType="com.alihealth.d2d.provtest.VO.DrugDeliveryNoteInfoVO"> <select id="selectByYpzsm" resultType="com.alihealth.d2d.provtest.VO.DrugDeliveryNoteInfoVO">
SELECT SELECT
shsj, ypzsm,
tyshxydmshjg, syjbzypzsm,
gjypbsm,
yptymc,
shjgmc, shjgmc,
shdbh tyshxydmshjg,
shsj,
shsl,
fhjgmc,
tyshxydmfhjg
FROM FROM
drug_delivery_note_apply_info drug_delivery_note_apply_info
WHERE WHERE
ypzsm = #{ypzsm} ypzsm = #{ypzsm}
ORDER BY
shsj ASC
</select> </select>
</mapper> </mapper>

View File

@ -4,26 +4,22 @@
<select id="selectByYpzsm" resultType="com.alihealth.d2d.provtest.VO.DrugProductionInfoVO"> <select id="selectByYpzsm" resultType="com.alihealth.d2d.provtest.VO.DrugProductionInfoVO">
SELECT yptymc, SELECT
ypspmc, ypzsm,
syjbzypzsm,
gjypbsm, gjypbsm,
ypbwm, yptymc,
jx,
zjgg,
bzgg,
bzzhb,
ypyxq,
ypyxqdw,
yppzwh,
yppzwhyxq,
scrq,
ypyxqjzrq,
ypscph,
tyshxydmjkypdlqy AS tyshxydm, tyshxydmjkypdlqy AS tyshxydm,
jkypdlqymc AS scqymc jkypdlqymc AS scqymc,
FROM drug_import_apply_info scrq,
WHERE ypzsm = #{ypzsm} ypscph,
scsl
FROM
drug_import_apply_info
WHERE
ypzsm = #{ypzsm}
ORDER BY
scrq ASC
</select> </select>
</mapper> </mapper>

View File

@ -5,14 +5,22 @@
<select id="selectByYpzsm" resultType="com.alihealth.d2d.provtest.VO.DrugInvoiceInfoVO"> <select id="selectByYpzsm" resultType="com.alihealth.d2d.provtest.VO.DrugInvoiceInfoVO">
SELECT SELECT
fhsj, ypzsm,
tyshxydmfhjg, syjbzypzsm,
gjypbsm,
yptymc,
fhjgmc, fhjgmc,
fhdbh tyshxydmfhjg,
fhsj,
fhsl,
shjgmc,
tyshxydmshjg
FROM FROM
drug_invoice_apply_info drug_invoice_apply_info
WHERE WHERE
ypzsm = #{ypzsm} ypzsm = #{ypzsm}
ORDER BY
fhsj ASC
</select> </select>
</mapper> </mapper>

View File

@ -5,18 +5,23 @@
<select id="selectByYpzsm" resultType="com.alihealth.d2d.provtest.VO.DrugRetailAndUseInfoVO"> <select id="selectByYpzsm" resultType="com.alihealth.d2d.provtest.VO.DrugRetailAndUseInfoVO">
SELECT SELECT
ypzsm,
syjbzypzsm,
gjypbsm,
yptymc,
sysl,
scsj, scsj,
gmrsfxx, gmrsfxx,
gmrdhhm, gmrdhhm,
hlwddbz, hlwddbz,
lsydmc, lsydmc,
lsdjbh, tyshxydmlsyd
tyshxydmlsyd,
kfys
FROM FROM
drug_retail_and_use_apply_info drug_retail_and_use_apply_info
WHERE WHERE
ypzsm = #{ypzsm} ypzsm = #{ypzsm}
ORDER BY
scsj ASC
</select> </select>
<select id="queryByYpzsm" resultType="com.alihealth.d2d.provtest.VO.DrugRetailAndUseApplyInfoVO"> <select id="queryByYpzsm" resultType="com.alihealth.d2d.provtest.VO.DrugRetailAndUseApplyInfoVO">