feat: 器械处方

scpwxyy
chenhc 9 months ago
parent 3bf09cf9c5
commit 5c6b1d8fc5

@ -287,4 +287,11 @@ public interface BaseHttpClient {
* @return * @return
*/ */
BaseResponse uploadCollectOrder(PostCollectOrderRequest postCollectOrderRequest); BaseResponse uploadCollectOrder(PostCollectOrderRequest postCollectOrderRequest);
/**
*
* @param udiwmsBasicSkPrescribeRequest
* @return
*/
BaseResponse getPrescribesQx(UdiwmsBasicSkPrescribeRequest udiwmsBasicSkPrescribeRequest);
} }

@ -315,6 +315,11 @@ public abstract class CommonHttpClient implements BaseHttpClient {
return null; return null;
} }
@Override
public BaseResponse getPrescribesQx(UdiwmsBasicSkPrescribeRequest udiwmsBasicSkPrescribeRequest) {
return null;
}
@Resource @Resource
private DataSource dataSource; private DataSource dataSource;
@ -328,6 +333,15 @@ public abstract class CommonHttpClient implements BaseHttpClient {
databaseProductName = metaData.getDatabaseProductName();//MySQL //Oracle databaseProductName = metaData.getDatabaseProductName();//MySQL //Oracle
} catch (SQLException throwables) { } catch (SQLException throwables) {
throwables.printStackTrace(); throwables.printStackTrace();
}finally {
// 释放连接资源
if (conn != null) {
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
} }
return databaseProductName; return databaseProductName;

@ -124,6 +124,8 @@ public class CtqyyClient extends CommonHttpClient {
@Resource @Resource
private VYpzsPresInfoMapper vYpzsPresInfoMapper; private VYpzsPresInfoMapper vYpzsPresInfoMapper;
@Resource @Resource
private VInsurNationGoodsClMapper vInsurNationGoodsClMapper;
@Resource
private VYpzsPresInfoReturnMapper vYpzsPresInfoReturnMapper; private VYpzsPresInfoReturnMapper vYpzsPresInfoReturnMapper;
@Resource @Resource
private VYpzsPlanInfoMapper vYpzsPlanInfoMapper; private VYpzsPlanInfoMapper vYpzsPlanInfoMapper;
@ -1397,6 +1399,12 @@ public class CtqyyClient extends CommonHttpClient {
IPage<VYpzsPresInfo> page = vYpzsPresInfoMapper.selectGroupedWithPagination(new Page<VYpzsPresInfo>(udiwmsBasicSkPrescribeRequest.getPage(), udiwmsBasicSkPrescribeRequest.getLimit()), IPage<VYpzsPresInfo> page = vYpzsPresInfoMapper.selectGroupedWithPagination(new Page<VYpzsPresInfo>(udiwmsBasicSkPrescribeRequest.getPage(), udiwmsBasicSkPrescribeRequest.getLimit()),
udiwmsBasicSkPrescribeRequest); udiwmsBasicSkPrescribeRequest);
if (page.getTotal() == 0){
PageSimpleResponse<IoCollectOrder> pageSimpleResponse = new PageSimpleResponse<>();
pageSimpleResponse.setTotal(page.getTotal());
pageSimpleResponse.setList(null);
return ResultVOUtils.success(pageSimpleResponse);
}
return this.covertSellOrder(udiwmsBasicSkPrescribeRequest, page); return this.covertSellOrder(udiwmsBasicSkPrescribeRequest, page);
} else { } else {
LambdaQueryWrapper<VInsurNationGoodsReturn> wrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<VInsurNationGoodsReturn> wrapper = new LambdaQueryWrapper<>();
@ -1423,6 +1431,12 @@ public class CtqyyClient extends CommonHttpClient {
//拉取处方退货时改成拉取v_ypzs_pres_info_return //拉取处方退货时改成拉取v_ypzs_pres_info_return
IPage<VYpzsPresInfoReturn> page = vYpzsPresInfoReturnMapper.selectGroupedWithPagination(new Page<VYpzsPresInfoReturn>(udiwmsBasicSkPrescribeRequest.getPage(), udiwmsBasicSkPrescribeRequest.getLimit()), IPage<VYpzsPresInfoReturn> page = vYpzsPresInfoReturnMapper.selectGroupedWithPagination(new Page<VYpzsPresInfoReturn>(udiwmsBasicSkPrescribeRequest.getPage(), udiwmsBasicSkPrescribeRequest.getLimit()),
udiwmsBasicSkPrescribeRequest); udiwmsBasicSkPrescribeRequest);
if (page.getTotal() == 0){
PageSimpleResponse<IoCollectOrder> pageSimpleResponse = new PageSimpleResponse<>();
pageSimpleResponse.setTotal(page.getTotal());
pageSimpleResponse.setList(null);
return ResultVOUtils.success(pageSimpleResponse);
}
return this.covertReturnOrder(udiwmsBasicSkPrescribeRequest, page); return this.covertReturnOrder(udiwmsBasicSkPrescribeRequest, page);
} }
@ -1643,6 +1657,41 @@ public class CtqyyClient extends CommonHttpClient {
return ResultVOUtils.success(); return ResultVOUtils.success();
} }
@Override
public BaseResponse getPrescribesQx(UdiwmsBasicSkPrescribeRequest udiwmsBasicSkPrescribeRequest) {
LambdaQueryWrapper<VInsurNationGoodsCl> wrapper = new LambdaQueryWrapper<>();
String startTime = udiwmsBasicSkPrescribeRequest.getStartTime();
String endTime = udiwmsBasicSkPrescribeRequest.getEndTime();
wrapper.ge(StrUtil.isNotEmpty(startTime), VInsurNationGoodsCl::getSEL_RETN_TIME, startTime);
wrapper.le(StrUtil.isNotEmpty(endTime), VInsurNationGoodsCl::getSEL_RETN_TIME, endTime);
String code = udiwmsBasicSkPrescribeRequest.getCode();
String fromCorpName = udiwmsBasicSkPrescribeRequest.getFromCorpName();
String key = udiwmsBasicSkPrescribeRequest.getKey();
wrapper.and(StrUtil.isNotEmpty(code), t -> t.eq(VInsurNationGoodsCl::getSTOOUT_NO, code).or().eq(VInsurNationGoodsCl::getRXNO, code));
wrapper.and(StrUtil.isNotEmpty(key), t -> t.like(VInsurNationGoodsCl::getSTOOUT_NO, key)
.or().like(VInsurNationGoodsCl::getRXNO, key)
.or().like(VInsurNationGoodsCl::getPSN_NAME, key)
.or().like(VInsurNationGoodsCl::getPSN_NO, key)
);
wrapper.and(StrUtil.isNotEmpty(fromCorpName), t -> t.eq(VInsurNationGoodsCl::getPSN_NAME, fromCorpName));
udiwmsBasicSkPrescribeRequest.setDatabaseProductName(getDataSourceType());
// 拉取处方时改成拉取v_ypzs_pres_info
IPage<VInsurNationGoodsCl> page = vInsurNationGoodsClMapper.selectGroupedWithPagination(new Page<VInsurNationGoodsCl>(udiwmsBasicSkPrescribeRequest.getPage(), udiwmsBasicSkPrescribeRequest.getLimit()),
udiwmsBasicSkPrescribeRequest);
if (page.getTotal() == 0){
PageSimpleResponse<IoCollectOrder> pageSimpleResponse = new PageSimpleResponse<>();
pageSimpleResponse.setTotal(page.getTotal());
pageSimpleResponse.setList(null);
return ResultVOUtils.success(pageSimpleResponse);
}
return this.covertSellOrderQx(udiwmsBasicSkPrescribeRequest, page);
}
// 辅助方法用于检查busType是否存在于指定的buyType数组中 // 辅助方法用于检查busType是否存在于指定的buyType数组中
private static boolean matchBusType(String busType, String[] buyTypes) { private static boolean matchBusType(String busType, String[] buyTypes) {
for (String buyType : buyTypes) { for (String buyType : buyTypes) {
@ -1697,9 +1746,8 @@ public class CtqyyClient extends CommonHttpClient {
List<IoCollectOrderBiz> bizList = new ArrayList<>(); List<IoCollectOrderBiz> bizList = new ArrayList<>();
value.forEach(entity -> { value.forEach(entity -> {
IoCollectOrderBiz collectOrderBiz = new IoCollectOrderBiz(); IoCollectOrderBiz collectOrderBiz = new IoCollectOrderBiz();
List<BasicUdirelEntity> basicUdirelEntities = basicUdirelDao.selectList(new LambdaQueryWrapper<BasicUdirelEntity>().eq(BasicUdirelEntity::getMainId, entity.getPHYSIC_CODE())); BasicUdirelEntity basicUdirelEntity = basicUdirelDao.selectOne(new LambdaQueryWrapper<BasicUdirelEntity>().eq(BasicUdirelEntity::getMainId, entity.getPHYSIC_CODE()).last(" limit 1"));
if (CollUtil.isNotEmpty(basicUdirelEntities)) { if (basicUdirelEntity != null) {
BasicUdirelEntity basicUdirelEntity = basicUdirelEntities.get(0);
collectOrderBiz.setRelId(basicUdirelEntity.getId()); collectOrderBiz.setRelId(basicUdirelEntity.getId());
} else { } else {
errorMsg.append(entity.getPHYSIC_NAME()).append("字典未对照").append(";"); errorMsg.append(entity.getPHYSIC_NAME()).append("字典未对照").append(";");
@ -1740,6 +1788,84 @@ public class CtqyyClient extends CommonHttpClient {
} }
} }
/**
*
*
* @param udiwmsBasicSkPrescribeRequest
* @return
*/
private BaseResponse covertSellOrderQx(UdiwmsBasicSkPrescribeRequest udiwmsBasicSkPrescribeRequest, IPage<VInsurNationGoodsCl> page) {
List<VInsurNationGoodsCl> presInfoEntities = page.getRecords();
List<VInsurNationGoodsCl> vInsurNationGoodsPhysics = new ArrayList<>();
if (CollUtil.isNotEmpty(presInfoEntities)) {
List<String> collect = presInfoEntities.stream().map(VInsurNationGoodsCl::getSTOOUT_NO).collect(Collectors.toList());
LambdaQueryWrapper<VInsurNationGoodsCl> wrapper1 = new LambdaQueryWrapper<>();
wrapper1.in(VInsurNationGoodsCl::getSTOOUT_NO, collect);
vInsurNationGoodsPhysics = vInsurNationGoodsClMapper.selectList(wrapper1);
}
// TODO: 2024/9/19 这边在转换的时候就不能用VInsurNationGoodsPhysic
if (CollUtil.isNotEmpty(vInsurNationGoodsPhysics)) {
Map<String, List<VInsurNationGoodsCl>> groupedByPrescribeNumber = vInsurNationGoodsPhysics.stream()
.collect(Collectors.groupingBy(VInsurNationGoodsCl::getSTOOUT_NO));
List<IoCollectOrder> ioCollectOrders = new ArrayList<>();
groupedByPrescribeNumber.forEach((key, value) -> {
VInsurNationGoodsCl presInfoEntity = value.get(0);
StringBuilder errorMsg = new StringBuilder();
IoCollectOrder ioCollectOrder = new IoCollectOrder();
ioCollectOrder.setBillNo(presInfoEntity.getSTOOUT_NO());
ioCollectOrder.setFromType("HIS系统");
ioCollectOrder.setFromCorp(presInfoEntity.getSICK_ID());
ioCollectOrder.setWorkPlaceCode(udiwmsBasicSkPrescribeRequest.getWorkPlaceCode());
ioCollectOrder.setFromCorpName(presInfoEntity.getPSN_NAME());
Date date = DateUtil.parseDate(presInfoEntity.getSEL_RETN_TIME());
ioCollectOrder.setBillTime(date);
ioCollectOrder.setCreateTime(new Date());
ioCollectOrder.setCreateUser(udiwmsBasicSkPrescribeRequest.getCreateUser());
ioCollectOrder.setBackupOrderRemark1(presInfoEntity.getSTOOUT_NO());
ioCollectOrder.setBackupOrderRemark2(presInfoEntity.getSICK_ID());
// ioCollectOrder.setBackupOrderRemark3(presInfoEntity.getPSN_NAME());
// ioCollectOrder.setBackupOrderRemark4(presInfoEntity.getPSN_NO());
ioCollectOrder.setUpdateTime(new Date());
ioCollectOrder.setSplitStatus(0);
ioCollectOrder.setTagStatus(0);
List<IoCollectOrderBiz> bizList = new ArrayList<>();
value.forEach(entity -> {
IoCollectOrderBiz collectOrderBiz = new IoCollectOrderBiz();
BasicUdirelEntity basicUdirelEntity = basicUdirelDao.selectOne(new LambdaQueryWrapper<BasicUdirelEntity>().eq(BasicUdirelEntity::getMainId, entity.getFIXMEDINS_HILIST_ID()).last(" limit 1"));
if (basicUdirelEntity != null) {
collectOrderBiz.setRelId(basicUdirelEntity.getId());
} else {
errorMsg.append(entity.getFIXMEDINS_HILIST_NAME()).append("字典未对照").append(";");
}
//====================================
// collectOrderBiz.setGgxh(entity.getPACK_SPEC());
// collectOrderBiz.setMeasureUnit(entity.getPHYSIC_UNIT());
// collectOrderBiz.setCount(IntUtil.value(entity.getLAY_PHYSIC_QUANTITY()));
// collectOrderBiz.setThrCode(entity.getPHYSIC_CODE());
// collectOrderBiz.setCpmctymc(entity.getPHYSIC_NAME());
// collectOrderBiz.setOrderIdFk(ioCollectOrder.getBillNo());
// collectOrderBiz.setYbbm(entity.getCOUNTRY_CODE());
//====================================
collectOrderBiz.setTagStatus(1);
collectOrderBiz.setUnTagCount(0);
bizList.add(collectOrderBiz);
});
if (StrUtil.isNotBlank(errorMsg)) {
ioCollectOrder.setErrorMsg(errorMsg.toString());
ioCollectOrder.setTagStatus(4);
}
ioCollectOrder.setBizList(bizList);
ioCollectOrders.add(ioCollectOrder);
});
PageSimpleResponse<IoCollectOrder> pageSimpleResponse = new PageSimpleResponse<>();
pageSimpleResponse.setTotal(page.getTotal());
pageSimpleResponse.setList(ioCollectOrders);
return ResultVOUtils.success(pageSimpleResponse);
} else {
return ResultVOUtils.error(500, "下载失败!");
}
}
private BaseResponse covertReturnOrder(UdiwmsBasicSkPrescribeRequest udiwmsBasicSkPrescribeRequest, IPage<VYpzsPresInfoReturn> page) { private BaseResponse covertReturnOrder(UdiwmsBasicSkPrescribeRequest udiwmsBasicSkPrescribeRequest, IPage<VYpzsPresInfoReturn> page) {
List<VYpzsPresInfoReturn> presInfoEntities = page.getRecords(); List<VYpzsPresInfoReturn> presInfoEntities = page.getRecords();
List<VYpzsPresInfoReturn> vInsurNationGoodsReturns = new ArrayList<>(); List<VYpzsPresInfoReturn> vInsurNationGoodsReturns = new ArrayList<>();
@ -1773,7 +1899,7 @@ public class CtqyyClient extends CommonHttpClient {
List<IoCollectOrderBiz> bizList = new ArrayList<>(); List<IoCollectOrderBiz> bizList = new ArrayList<>();
value.forEach(entity -> { value.forEach(entity -> {
IoCollectOrderBiz collectOrderBiz = new IoCollectOrderBiz(); IoCollectOrderBiz collectOrderBiz = new IoCollectOrderBiz();
BasicUdirelEntity basicUdirelEntity = basicUdirelDao.selectOne(new LambdaQueryWrapper<BasicUdirelEntity>().eq(BasicUdirelEntity::getMainId, entity.getPHYSIC_CODE())); BasicUdirelEntity basicUdirelEntity = basicUdirelDao.selectOne(new LambdaQueryWrapper<BasicUdirelEntity>().eq(BasicUdirelEntity::getMainId, entity.getPHYSIC_CODE()).last(" limit 1"));
if (basicUdirelEntity != null) { if (basicUdirelEntity != null) {
collectOrderBiz.setRelId(basicUdirelEntity.getId()); collectOrderBiz.setRelId(basicUdirelEntity.getId());
} else { } else {

@ -323,6 +323,17 @@ public class UdiWmsController {
return ClientProcessor.getHttpClient().getPrescribes(udiwmsBasicSkPrescribeRequest); return ClientProcessor.getHttpClient().getPrescribes(udiwmsBasicSkPrescribeRequest);
} }
/**
*
*
* @param udiwmsBasicSkPrescribeRequest
* @return
*/
@PostMapping("/udiwms/erp/getPrescribesQx")
public BaseResponse getPrescribesQx(@RequestBody UdiwmsBasicSkPrescribeRequest udiwmsBasicSkPrescribeRequest) {
return ClientProcessor.getHttpClient().getPrescribesQx(udiwmsBasicSkPrescribeRequest);
}
/** /**
* *
* *

@ -0,0 +1,137 @@
package com.glxp.mipsdl.entity.ctqyy;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
@Data
@TableName(value = "v_insur_nation_goods_cl")
public class VInsurNationGoodsCl implements Serializable {
@TableField(value = "MED_LIST_CODG")
private String MED_LIST_CODG;
@TableField(value = "FIXMEDINS_HILIST_ID")
private String FIXMEDINS_HILIST_ID;
@TableField(value = "FIXMEDINS_HILIST_NAME")
private String FIXMEDINS_HILIST_NAME;
@TableField(value = "FIXMEDINS_BCHNO")
private Integer FIXMEDINS_BCHNO;
@TableField(value = "PRSC_DR_CERT_TYPE")
private String PRSC_DR_CERT_TYPE;
@TableField(value = "PRSC_DR_CERTNO")
private String PRSC_DR_CERTNO;
@TableField(value = "PRSC_DR_NAME")
private String PRSC_DR_NAME;
@TableField(value = "PHAR_CERT_TYPE")
private String PHAR_CERT_TYPE;
@TableField(value = "PHAR_CERTNO")
private String PHAR_CERTNO;
@TableField(value = "PHAR_NAME")
private String PHAR_NAME;
@TableField(value = "PHAR_PRAC_CERT_NO")
private String PHAR_PRAC_CERT_NO;
@TableField(value = "HI_FEESETL_TYPE")
private Integer HI_FEESETL_TYPE;
@TableField(value = "SETL_ID")
private String SETL_ID;
@TableField(value = "MDTRT_SN")
private String MDTRT_SN;
@TableField(value = "PSN_NO")
private String PSN_NO;
@TableField(value = "PSN_CERT_TYPE")
private String PSN_CERT_TYPE;
@TableField(value = "CERTNO")
private String CERTNO;
@TableField(value = "PSN_NAME")
private String PSN_NAME;
@TableField(value = "MANU_LOTNUM")
private String MANU_LOTNUM;
@TableField(value = "MANU_DATE")
private String MANU_DATE;
@TableField(value = "EXPY_END")
private String EXPY_END;
@TableField(value = "RX_FLAG")
private Integer RX_FLAG;
@TableField(value = "TRDN_FLAG")
private Integer TRDN_FLAG;
@TableField(value = "FINL_TRNS_PRIC")
private BigDecimal FINL_TRNS_PRIC;
@TableField(value = "RXNO")
private Integer RXNO;
@TableField(value = "RX_CIRC_FLAG")
private Integer RX_CIRC_FLAG;
@TableField(value = "RTAL_DOCNO")
private String RTAL_DOCNO;
@TableField(value = "STOOUT_NO")
private String STOOUT_NO;
@TableField(value = "BCHNO")
private Integer BCHNO;
@TableField(value = "RUG_PROD_BARC")
private String RUG_PROD_BARC;
@TableField(value = "SHELF_POSI")
private String SHELF_POSI;
@TableField(value = "SEL_RETN_CNT")
private Integer SEL_RETN_CNT;
@TableField(value = "SEL_RETN_TIME")
private String SEL_RETN_TIME;
@TableField(value = "SEL_RETN_OPTER_NAME")
private String SEL_RETN_OPTER_NAME;
@TableField(value = "MEMO")
private String MEMO;
@TableField(value = "MDTRT_SETL_TYPE")
private Integer MDTRT_SETL_TYPE;
@TableField(value = "DRUGTRACINFO")
private String DRUGTRACINFO;
@TableField(value = "APPLY_NO")
private String APPLY_NO;
@TableField(value = "SETTLE_NO")
private String SETTLE_NO;
@TableField(value = "SICK_ID")
private String SICK_ID;
}

@ -0,0 +1,16 @@
package com.glxp.mipsdl.thirddao.ctqyy;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.glxp.mipsdl.entity.ctqyy.VInsurNationGoodsCl;
import com.glxp.mipsdl.req.base.UdiwmsBasicSkPrescribeRequest;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@Mapper
@DS("ctqyySql")
public interface VInsurNationGoodsClMapper extends BaseMapper<VInsurNationGoodsCl> {
IPage<VInsurNationGoodsCl> selectGroupedWithPagination(Page<VInsurNationGoodsCl> page, @Param("udiwmsBasicSkPrescribeRequest") UdiwmsBasicSkPrescribeRequest udiwmsBasicSkPrescribeRequest);
}

@ -0,0 +1,60 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.glxp.mipsdl.thirddao.ctqyy.VInsurNationGoodsClMapper">
<select id="selectGroupedWithPagination" resultType="com.glxp.mipsdl.entity.ctqyy.VInsurNationGoodsCl">
SELECT STOOUT_NO
FROM v_insur_nation_goods_cl
<where>
<if test="udiwmsBasicSkPrescribeRequest.startTime != null and udiwmsBasicSkPrescribeRequest.startTime != ''
and udiwmsBasicSkPrescribeRequest.databaseProductName == 'Oracle' ">
<![CDATA[
and SEL_RETN_TIME >= TO_DATE(#{udiwmsBasicSkPrescribeRequest.startTime}
, 'YYYY-MM-DD HH24:MI:SS')
]]>
</if>
<if test="udiwmsBasicSkPrescribeRequest.endTime != null and udiwmsBasicSkPrescribeRequest.endTime != ''
and udiwmsBasicSkPrescribeRequest.databaseProductName == 'Oracle' ">
<![CDATA[
and SEL_RETN_TIME <= TO_DATE(#{udiwmsBasicSkPrescribeRequest.endTime}
, 'YYYY-MM-DD HH24:MI:SS')
]]>
</if>
<if test="udiwmsBasicSkPrescribeRequest.startTime != null and udiwmsBasicSkPrescribeRequest.startTime != ''
and udiwmsBasicSkPrescribeRequest.databaseProductName == 'MySQL'">
<![CDATA[
and SEL_RETN_TIME >= #{udiwmsBasicSkPrescribeRequest.startTime}
]]>
</if>
<if test="udiwmsBasicSkPrescribeRequest.endTime != null and udiwmsBasicSkPrescribeRequest.endTime != ''
and udiwmsBasicSkPrescribeRequest.databaseProductName == 'MySQL'">
<![CDATA[
and SEL_RETN_TIME <= #{udiwmsBasicSkPrescribeRequest.endTime}
]]>
</if>
<if test="udiwmsBasicSkPrescribeRequest.code != null and udiwmsBasicSkPrescribeRequest.code != ''">
and ( STOOUT_NO = #{udiwmsBasicSkPrescribeRequest.code}
or RXNO = #{udiwmsBasicSkPrescribeRequest.code}
)
</if>
<if test="udiwmsBasicSkPrescribeRequest.key != null and udiwmsBasicSkPrescribeRequest.key != ''
and udiwmsBasicSkPrescribeRequest.databaseProductName == 'Oracle' ">
and (STOOUT_NO like '%' || #{udiwmsBasicSkPrescribeRequest.key} || '%'
or RXNO like '%' || #{udiwmsBasicSkPrescribeRequest.key} || '%'
)
</if>
<if test="udiwmsBasicSkPrescribeRequest.key != null and udiwmsBasicSkPrescribeRequest.key != ''
and udiwmsBasicSkPrescribeRequest.databaseProductName == 'MySQL' ">
and (STOOUT_NO like concat('%', #{udiwmsBasicSkPrescribeRequest.key}, '%')
or RXNO like concat('%', #{udiwmsBasicSkPrescribeRequest.key}, '%')
)
</if>
</where>
GROUP BY
STOOUT_NO
ORDER BY
STOOUT_NO
</select>
</mapper>

@ -62,23 +62,29 @@
and KEEP_BOOK_TIME <= #{udiwmsThrOrderRequest.endTime} and KEEP_BOOK_TIME <= #{udiwmsThrOrderRequest.endTime}
]]> ]]>
</if> </if>
<if test="udiwmsThrOrderRequest.corpName != null and udiwmsThrOrderRequest.corpName != ''"> <if test="udiwmsThrOrderRequest.corpName != null and udiwmsThrOrderRequest.corpName != ''
and udiwmsThrOrderRequest.databaseProductName == 'Oracle' ">
and (CONSIGNOR_NAME LIKE '%' || #{udiwmsThrOrderRequest.corpName} || '%' and (CONSIGNOR_NAME LIKE '%' || #{udiwmsThrOrderRequest.corpName} || '%'
or CONSIGNEE_NAME LIKE '%' || #{udiwmsThrOrderRequest.corpName} || '%') or CONSIGNEE_NAME LIKE '%' || #{udiwmsThrOrderRequest.corpName} || '%')
</if> </if>
<if test="udiwmsThrOrderRequest.billNo != null and udiwmsThrOrderRequest.billNo != ''"> <if test="udiwmsThrOrderRequest.billNo != null and udiwmsThrOrderRequest.billNo != ''
and udiwmsThrOrderRequest.databaseProductName == 'Oracle' ">
and RECEIPT_NUMBER = #{udiwmsThrOrderRequest.billNo} and RECEIPT_NUMBER = #{udiwmsThrOrderRequest.billNo}
</if> </if>
<if test="udiwmsThrOrderRequest.fromCorpName != null and udiwmsThrOrderRequest.fromCorpName != ''"> <if test="udiwmsThrOrderRequest.fromCorpName != null and udiwmsThrOrderRequest.fromCorpName != ''
and udiwmsThrOrderRequest.databaseProductName == 'Oracle' ">
and CONSIGNEE_NAME LIKE '%' || #{udiwmsThrOrderRequest.fromCorpName} || '%' and CONSIGNEE_NAME LIKE '%' || #{udiwmsThrOrderRequest.fromCorpName} || '%'
</if> </if>
<if test="udiwmsThrOrderRequest.shipperName != null and udiwmsThrOrderRequest.shipperName != ''"> <if test="udiwmsThrOrderRequest.shipperName != null and udiwmsThrOrderRequest.shipperName != ''
and udiwmsThrOrderRequest.databaseProductName == 'Oracle' ">
and CONSIGNOR_NAME LIKE '%' || #{udiwmsThrOrderRequest.shipperName} || '%' and CONSIGNOR_NAME LIKE '%' || #{udiwmsThrOrderRequest.shipperName} || '%'
</if> </if>
<if test="udiwmsThrOrderRequest.busType != null and udiwmsThrOrderRequest.busType != ''"> <if test="udiwmsThrOrderRequest.busType != null and udiwmsThrOrderRequest.busType != ''
and udiwmsThrOrderRequest.databaseProductName == 'Oracle' ">
and IO_SORT = #{udiwmsThrOrderRequest.busType} and IO_SORT = #{udiwmsThrOrderRequest.busType}
</if> </if>
<if test="udiwmsThrOrderRequest.keyWords != null and udiwmsThrOrderRequest.keyWords != ''"> <if test="udiwmsThrOrderRequest.keyWords != null and udiwmsThrOrderRequest.keyWords != ''
and udiwmsThrOrderRequest.databaseProductName == 'Oracle' ">
and ( and (
CONSIGNOR_NAME LIKE '%' || #{udiwmsThrOrderRequest.keyWords} || '%' CONSIGNOR_NAME LIKE '%' || #{udiwmsThrOrderRequest.keyWords} || '%'
or CONSIGNEE_NAME LIKE '%' || #{udiwmsThrOrderRequest.keyWords} || '%' or CONSIGNEE_NAME LIKE '%' || #{udiwmsThrOrderRequest.keyWords} || '%'
@ -86,6 +92,40 @@
or RECEIPT_NUMBER = #{udiwmsThrOrderRequest.keyWords} or RECEIPT_NUMBER = #{udiwmsThrOrderRequest.keyWords}
or IO_SORT = #{udiwmsThrOrderRequest.keyWords}) or IO_SORT = #{udiwmsThrOrderRequest.keyWords})
</if> </if>
<if test="udiwmsThrOrderRequest.corpName != null and udiwmsThrOrderRequest.corpName != ''
and udiwmsThrOrderRequest.databaseProductName == 'MySQL' ">
and (CONSIGNOR_NAME LIKE concat('%', #{udiwmsThrOrderRequest.corpName}, '%')
or CONSIGNEE_NAME LIKE concat('%', #{udiwmsThrOrderRequest.corpName}, '%'))
</if>
<if test="udiwmsThrOrderRequest.billNo != null and udiwmsThrOrderRequest.billNo != ''
and udiwmsThrOrderRequest.databaseProductName == 'MySQL' ">
and RECEIPT_NUMBER = #{udiwmsThrOrderRequest.billNo}
</if>
<if test="udiwmsThrOrderRequest.fromCorpName != null and udiwmsThrOrderRequest.fromCorpName != ''
and udiwmsThrOrderRequest.databaseProductName == 'MySQL' ">
and CONSIGNEE_NAME LIKE concat('%', #{udiwmsThrOrderRequest.fromCorpName}, '%')
</if>
<if test="udiwmsThrOrderRequest.shipperName != null and udiwmsThrOrderRequest.shipperName != ''
and udiwmsThrOrderRequest.databaseProductName == 'MySQL' ">
and CONSIGNOR_NAME LIKE concat('%', #{udiwmsThrOrderRequest.shipperName}, '%')
</if>
<if test="udiwmsThrOrderRequest.busType != null and udiwmsThrOrderRequest.busType != ''
and udiwmsThrOrderRequest.databaseProductName == 'MySQL' ">
and IO_SORT = #{udiwmsThrOrderRequest.busType}
</if>
<if test="udiwmsThrOrderRequest.keyWords != null and udiwmsThrOrderRequest.keyWords != ''
and udiwmsThrOrderRequest.databaseProductName == 'MySQL' ">
and (
CONSIGNOR_NAME LIKE concat('%', #{udiwmsThrOrderRequest.keyWords}, '%')
or CONSIGNEE_NAME LIKE concat('%', #{udiwmsThrOrderRequest.keyWords}, '%')
or PHYSIC_CODE LIKE concat('%', #{udiwmsThrOrderRequest.keyWords}, '%')
or RECEIPT_NUMBER LIKE concat('%', #{udiwmsThrOrderRequest.keyWords}, '%')
)
</if>
</where> </where>
GROUP BY RECEIPT_NUMBER GROUP BY RECEIPT_NUMBER
ORDER BY RECEIPT_NUMBER ORDER BY RECEIPT_NUMBER

@ -5,18 +5,38 @@
SELECT CGDBH SELECT CGDBH
FROM V_YPZS_PLAN_INFO FROM V_YPZS_PLAN_INFO
<where> <where>
<if test="udiwmsThrOrderRequest.billNo != null and udiwmsThrOrderRequest.billNo != ''"> <if test="udiwmsThrOrderRequest.billNo != null and udiwmsThrOrderRequest.billNo != ''
and udiwmsThrOrderRequest.databaseProductName == 'Oracle' ">
and ( CGDBH like '%' || #{udiwmsThrOrderRequest.billNo} || '%' ) and ( CGDBH like '%' || #{udiwmsThrOrderRequest.billNo} || '%' )
</if> </if>
<if test="udiwmsThrOrderRequest.keyWords != null and udiwmsThrOrderRequest.keyWords != ''"> <if test="udiwmsThrOrderRequest.keyWords != null and udiwmsThrOrderRequest.keyWords != ''
and udiwmsThrOrderRequest.databaseProductName == 'Oracle' ">
and (CGDBH like '%' || #{udiwmsThrOrderRequest.keyWords} || '%' and (CGDBH like '%' || #{udiwmsThrOrderRequest.keyWords} || '%'
) )
</if> </if>
<if test="udiwmsThrOrderRequest.fromCorpName != null and udiwmsThrOrderRequest.fromCorpName != ''"> <if test="udiwmsThrOrderRequest.fromCorpName != null and udiwmsThrOrderRequest.fromCorpName != ''
and udiwmsThrOrderRequest.databaseProductName == 'Oracle' ">
and (SCQYMC like '%' || #{udiwmsThrOrderRequest.fromCorpName} || '%' and (SCQYMC like '%' || #{udiwmsThrOrderRequest.fromCorpName} || '%'
) )
</if> </if>
<if test="udiwmsThrOrderRequest.billNo != null and udiwmsThrOrderRequest.billNo != ''
and udiwmsThrOrderRequest.databaseProductName == 'MySQL' ">
and ( CGDBH like concat('%', #{udiwmsThrOrderRequest.billNo}, '%'))
</if>
<if test="udiwmsThrOrderRequest.keyWords != null and udiwmsThrOrderRequest.keyWords != ''
and udiwmsThrOrderRequest.databaseProductName == 'MySQL' ">
and (CGDBH like concat('%', #{udiwmsThrOrderRequest.keyWords}, '%'))
)
</if>
<if test="udiwmsThrOrderRequest.fromCorpName != null and udiwmsThrOrderRequest.fromCorpName != ''
and udiwmsThrOrderRequest.databaseProductName == 'MySQL' ">
and (SCQYMC like concat('%', #{udiwmsThrOrderRequest.keyWords}, '%'))
)
</if>
</where> </where>
GROUP BY CGDBH GROUP BY CGDBH
ORDER BY CGDBH ORDER BY CGDBH

@ -65,11 +65,22 @@
<if test="udiwmsBasicSkPrescribeRequest.code != null and udiwmsBasicSkPrescribeRequest.code != ''"> <if test="udiwmsBasicSkPrescribeRequest.code != null and udiwmsBasicSkPrescribeRequest.code != ''">
and ( STOOUT_NO = #{udiwmsBasicSkPrescribeRequest.code} and ( STOOUT_NO = #{udiwmsBasicSkPrescribeRequest.code}
or PHYSIC_CODE = #{udiwmsBasicSkPrescribeRequest.code} or PHYSIC_CODE = #{udiwmsBasicSkPrescribeRequest.code}
or PRESCRIBE_NUMBER = #{udiwmsBasicSkPrescribeRequest.code}
) )
</if> </if>
<if test="udiwmsBasicSkPrescribeRequest.key != null and udiwmsBasicSkPrescribeRequest.key != ''">
<if test="udiwmsBasicSkPrescribeRequest.key != null and udiwmsBasicSkPrescribeRequest.key != ''
and udiwmsBasicSkPrescribeRequest.databaseProductName == 'Oracle' ">
and (STOOUT_NO like '%' || #{udiwmsBasicSkPrescribeRequest.key} || '%' and (STOOUT_NO like '%' || #{udiwmsBasicSkPrescribeRequest.key} || '%'
or PHYSIC_CODE like '%' || #{udiwmsBasicSkPrescribeRequest.key} || '%' or PHYSIC_CODE like '%' || #{udiwmsBasicSkPrescribeRequest.key} || '%'
or PRESCRIBE_NUMBER like '%' || #{udiwmsBasicSkPrescribeRequest.key} || '%'
)
</if>
<if test="udiwmsBasicSkPrescribeRequest.key != null and udiwmsBasicSkPrescribeRequest.key != ''
and udiwmsBasicSkPrescribeRequest.databaseProductName == 'MySQL' ">
and (STOOUT_NO like concat('%', #{udiwmsBasicSkPrescribeRequest.key}, '%')
or PHYSIC_CODE like concat('%', #{udiwmsBasicSkPrescribeRequest.key}, '%')
or PRESCRIBE_NUMBER like concat('%', #{udiwmsBasicSkPrescribeRequest.key}, '%')
) )
</if> </if>
</where> </where>

@ -66,16 +66,31 @@
<if test="udiwmsBasicSkPrescribeRequest.code != null and udiwmsBasicSkPrescribeRequest.code != ''"> <if test="udiwmsBasicSkPrescribeRequest.code != null and udiwmsBasicSkPrescribeRequest.code != ''">
and (APPLY_NO = #{udiwmsBasicSkPrescribeRequest.code}) and (APPLY_NO = #{udiwmsBasicSkPrescribeRequest.code})
</if> </if>
<if test="udiwmsBasicSkPrescribeRequest.fromCorpName != null and udiwmsBasicSkPrescribeRequest.fromCorpName != ''"> <if test="udiwmsBasicSkPrescribeRequest.fromCorpName != null and udiwmsBasicSkPrescribeRequest.fromCorpName != ''
and udiwmsBasicSkPrescribeRequest.databaseProductName == 'Oracle' ">
and (PSN_NAME like '%' || #{udiwmsBasicSkPrescribeRequest.fromCorpName} || '%' ) and (PSN_NAME like '%' || #{udiwmsBasicSkPrescribeRequest.fromCorpName} || '%' )
</if> </if>
<if test="udiwmsBasicSkPrescribeRequest.key != null and udiwmsBasicSkPrescribeRequest.key != ''"> <if test="udiwmsBasicSkPrescribeRequest.key != null and udiwmsBasicSkPrescribeRequest.key != ''
and udiwmsBasicSkPrescribeRequest.databaseProductName == 'Oracle' ">
and (APPLY_NO like '%' || #{udiwmsBasicSkPrescribeRequest.key} || '%' and (APPLY_NO like '%' || #{udiwmsBasicSkPrescribeRequest.key} || '%'
or PSN_NAME like '%' ||#{udiwmsBasicSkPrescribeRequest.key} || '%' or PSN_NAME like '%' ||#{udiwmsBasicSkPrescribeRequest.key} || '%'
or PSN_NO like '%' || #{udiwmsBasicSkPrescribeRequest.key} ||'%' or PSN_NO like '%' || #{udiwmsBasicSkPrescribeRequest.key} ||'%'
) )
</if> </if>
<if test="udiwmsBasicSkPrescribeRequest.fromCorpName != null and udiwmsBasicSkPrescribeRequest.fromCorpName != ''
and udiwmsBasicSkPrescribeRequest.databaseProductName == 'MySQL' ">
and (PSN_NAME like concat('%', #{udiwmsBasicSkPrescribeRequest.key}, '%')
</if>
<if test="udiwmsBasicSkPrescribeRequest.key != null and udiwmsBasicSkPrescribeRequest.key != ''
and udiwmsBasicSkPrescribeRequest.databaseProductName == 'MySQL' ">
and (APPLY_NO like concat('%', #{udiwmsBasicSkPrescribeRequest.key}, '%')
or PSN_NAME like concat('%', #{udiwmsBasicSkPrescribeRequest.key}, '%')
or PSN_NO like concat('%', #{udiwmsBasicSkPrescribeRequest.key}, '%')
)
</if>
</where> </where>
GROUP BY GROUP BY
APPLY_NO APPLY_NO

Loading…
Cancel
Save