增加35051

ctyxyb
qiuyt 3 weeks ago
parent ad3eac8e0d
commit effa401498

@ -72,6 +72,7 @@ import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.*;
@ -87,6 +88,8 @@ public class CtqyyClient extends CommonHttpClient {
// private final String[] buyType_3505 = {"QXCF001", "YPCF002"};
private final String[] buyType_3506 = {};
private final String[] buyType_35051 = {"SC72197936495755"};
@Resource
AuthWarehouseUserMapper authWarehouseUserMapper;
@Resource
@ -1693,7 +1696,9 @@ public class CtqyyClient extends CommonHttpClient {
return optionUploadCollectOrder3505(ioCollectOrder);
} else if (matchBusType(busType, buyType_3506)) {
optionUploadCollectOrder3506(ioCollectOrder);
} else {
} else if (matchBusType(busType, buyType_35051)) {
return optionUploadCollectOrder35051(ioCollectOrder);
} else {
return ResultVOUtils.error(520, "业务类型未找到对应上传接口");
}
}
@ -2162,6 +2167,112 @@ public class CtqyyClient extends CommonHttpClient {
return ResultVOUtils.error(500,"上传医保数据为空请核实");
}
public BaseResponse optionUploadCollectOrder35051(IoCollectOrder ioCollectOrder) {
List<CollectOrderBizResponse> bizList = ioCollectOrder.getCollectOrderBizResponseList();
if (CollUtil.isNotEmpty(bizList)) {
List<Xsck35051Request> xsck35051Requests = new ArrayList<>();
for (CollectOrderBizResponse item : bizList) {
BasicUdirelEntity basicUdirelEntity = basicUdirelDao.selectById(item.getRelId());
String itemCode = basicUdirelEntity.getMainId();
// for (CollectOrderBizResponse item : collectOrderBizResponseList) {
// if (item.getYbbm().equals(itemCode)) {
String[] codes = item.getFinishUdiCode().split(",");
String nameCode = item.getNameCode();
BasicProductsEntity basicProductsEntity = basicProductsDao.selectOne(
new QueryWrapper<BasicProductsEntity>().eq("nameCode", nameCode).last("limit 1")
);
if (Objects.isNull(basicProductsEntity)) {
return ResultVOUtils.error(500, "产品为空请检查");
}
Integer packLevel = Integer.valueOf(basicProductsEntity.getPackLevel());
List<DrugInfoRequest> drugTraceList = new ArrayList<>();
List<String> codeList = new ArrayList<>();
// 遍历fruits数组
for (String code : codes) {
if (StrUtil.isNotBlank(code)) {
List<RelCodeDetail> relCodeDetailList = relCodeDetailService.getAllNext(code);
if (relCodeDetailList != null && relCodeDetailList.size() > 0) {
for (RelCodeDetail relCodeDetail : relCodeDetailList) {
codeList.add(relCodeDetail.getCurCode());
}
}
// 级别为2的产品码不可能只有一个
if (packLevel > 1 && codeList.size() < 2) {
return ResultVOUtils.error(500, "大包装码关联关系拉取不到请检查" + code);
}
}
}
Set<String> set = new HashSet(codeList);
for (String code : set) {
DrugInfoRequest request = new DrugInfoRequest();
request.setDrug_trac_codg(code);
drugTraceList.add(request);
}
if (CollUtil.isEmpty(drugTraceList)) {
return ResultVOUtils.error(500, "单据要传的码为空请检查");
}
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String formattedDate = sdf.format(ioCollectOrder.getBillTime());
//todo 处方药标志先写死 后面要商量怎么获得
String rxFlag ="1";
log.error("optionUploadCollectOrder35051===item==="+item);
Xsck35051Request xsck35051Request = Xsck35051Request.builder()
.med_list_codg(item.getYbbm())
.fixmedins_hilist_id(item.getNameCode())
.fixmedins_hilist_name(item.getCpmctymc())
.fixmedins_bchno(item.getOrderIdFk())
.prsc_dr_cert_type(null)
.prsc_dr_certno(null)
.prsc_dr_name(null)
.phar_cert_type(null)
.phar_certno(null)
.phar_name(null)
.phar_prac_cert_no(null)
.hi_feesetl_type(null)
.setl_id(null)
.mdtrt_sn(null)
.psn_no(null)
.psn_cert_type(null)
.certno(null)
.psn_name(null)
.manu_lotnum(item.getBatchNo())
.manu_date(DateUtil.timeTransition(item.getProductDate()))
.expy_end(DateUtil.timeTransition(item.getExpireDate()))
.rx_flag(rxFlag)
.trdn_flag(item.getTrdnFlag())
.finl_trns_pric(null)
.rxno(null)
.rx_circ_flag(null)
.rtal_docno(null)
.stoout_no(null)
.bchno(null)
.drug_prod_barc(null)
.shelf_posi(null)
.sel_retn_cnt(item.getCount())
.sel_retn_time(formattedDate)
.sel_retn_opter_name(ioCollectOrder.getCreateUser())
.memo(null)
.mdtrt_setl_type(null)
.drugtracinfo(drugTraceList).build();
xsck35051Requests.add(xsck35051Request);
// }
// }
}
BaseXsck35051Request baseXsck35051Request = new BaseXsck35051Request();
baseXsck35051Request.setSelinfoDetail(xsck35051Requests);
String jsonStr = JSONUtil.toJsonStr(baseXsck35051Request);
JSONObject dataJson = JSONObject.parseObject(jsonStr);
return ybClient.ybPost("35051", dataJson);
} else {
return ResultVOUtils.error(500, "上传医保数据为空请核实");
}
}
public void optionUploadCollectOrder3501(IoCollectOrder ioCollectOrder) {

@ -127,4 +127,6 @@ public class CollectOrderBizResponse {
private Integer autoResCount;
private String replaceCode;
private String trdnFlag;
}

@ -0,0 +1,10 @@
package com.glxp.mipsdl.req.yb;
import lombok.Data;
import java.util.List;
@Data
public class BaseXsck35051Request {
private List<Xsck35051Request> selinfoDetail;
}

@ -0,0 +1,213 @@
package com.glxp.mipsdl.req.yb;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.math.BigDecimal;
import java.util.List;
/**
*
*/
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class Xsck35051Request {
/**
*
*/
private String med_list_codg;
/**
*
*/
private String fixmedins_hilist_id;
/**
*
*/
private String fixmedins_hilist_name;
/**
*
*/
private String fixmedins_bchno;
/**
*
*/
private String prsc_dr_cert_type;
/**
*
*/
private String prsc_dr_certno;
/**
*
*/
private String prsc_dr_name;
/**
*
*/
private String phar_cert_type;
/**
*
*/
private String phar_certno;
/**
*
*/
private String phar_name;
/**
*
*/
private String phar_prac_cert_no;
/**
*
*/
private String hi_feesetl_type;
/**
* ID
*/
private String setl_id;
/**
*
*/
private String mdtrt_sn;
/**
*
*/
private String psn_no;
/**
*
*/
private String psn_cert_type;
/**
*
*/
private String certno;
/**
*
*/
private String psn_name;
/**
*
*/
private String manu_lotnum;
/**
*
*/
private String manu_date;
/**
*
*/
private String expy_end;
/**
*
*/
private String rx_flag;
/**
*
*/
private String trdn_flag;
/**
*
*/
private BigDecimal finl_trns_pric;
/**
*
*/
private String rxno;
/**
*
*/
private String rx_circ_flag;
/**
*
*/
private String rtal_docno;
/**
*
*/
private String stoout_no;
/**
*
*/
private String bchno;
/**
*
*/
private String drug_trac_codg;
/**
*
*/
private String drug_prod_barc;
/**
*
*/
private String shelf_posi;
/**
* /退
*/
private Integer sel_retn_cnt;
/**
* /退
*/
private String sel_retn_time;
/**
* /退
*/
private String sel_retn_opter_name;
/**
*
*/
private String memo;
/**
*
*/
private String mdtrt_setl_type;
/**
*
*/
private List<DrugInfoRequest> drugtracinfo;
}

@ -9,6 +9,8 @@ import lombok.extern.slf4j.Slf4j;
import java.lang.management.ManagementFactory;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.*;
@Slf4j
@ -482,4 +484,18 @@ public class DateUtil {
String formattedDate = sdf.format(date);
return formattedDate;
}
public static String timeTransition(String input) {
if(StrUtil.isEmpty(input)){
return null;
}
// 定义输入日期的格式
DateTimeFormatter inputFormatter = DateTimeFormatter.ofPattern("yyMMdd");
// 定义输出日期的格式
DateTimeFormatter outputFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
// 将输入字符串解析为 LocalDate 对象
LocalDate date = LocalDate.parse(input, inputFormatter);
// 将 LocalDate 对象格式化为目标字符串
String output = date.format(outputFormatter);
return output;
}
}

@ -5,7 +5,7 @@ spring:
strict: false
datasource:
master:
url: jdbc:p6spy:mysql://127.0.0.1:3306/udi_wms?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
url: jdbc:p6spy:mysql://127.0.0.1:3306/udi_wms_hlfy_pro?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
username: root
password: 123456
driver-class-name: com.p6spy.engine.spy.P6SpyDriver
@ -14,7 +14,7 @@ spring:
# username: SD_UDIJK
# password: SD_UDIJK
# driver-class-name: oracle.jdbc.driver.OracleDrive
url: jdbc:p6spy:mysql://127.0.0.1:3306/udi_wms_ywj?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
url: jdbc:p6spy:mysql://127.0.0.1:3306/udi_wms_hlfy_pro?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
username: root
password: 123456
driver-class-name: com.p6spy.engine.spy.P6SpyDriver
@ -28,7 +28,7 @@ spring:
# username: SD_UDIJK
# password: SD_UDIJK
# driver-class-name: oracle.jdbc.driver.OracleDrive
url: jdbc:p6spy:mysql://127.0.0.1:3306/udi_wms_ywj?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
url: jdbc:p6spy:mysql://127.0.0.1:3306/udi_wms_hlfy_pro?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
username: root
password: 123456
driver-class-name: com.p6spy.engine.spy.P6SpyDriver
@ -37,7 +37,7 @@ spring:
# username: I_YPZS
# password: zy02v4ys
# driver-class-name: oracle.jdbc.driver.OracleDrive
url: jdbc:p6spy:mysql://127.0.0.1:3306/udi_wms?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
url: jdbc:p6spy:mysql://127.0.0.1:3306/udi_wms_hlfy_pro?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
username: root
password: 123456
driver-class-name: com.p6spy.engine.spy.P6SpyDriver

Loading…
Cancel
Save