南靖接口重整

dtxyy
anthonywj 9 months ago
parent 8500678805
commit 5c47c7805f

@ -62,10 +62,8 @@ import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.ArrayList; import java.math.BigDecimal;
import java.util.Collections; import java.util.*;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors; import java.util.stream.Collectors;
/** /**
@ -228,12 +226,18 @@ public class NjxyyClient extends CommonHttpClient {
return baseResponse; return baseResponse;
} }
/**
*
*
* @param forInvProductsFilter
* @return
*/
@Override @Override
public BaseResponse queryUdiHighInvProductsFilter(ForInvProductsFilter forInvProductsFilter) { public BaseResponse queryUdiHighInvProductsFilter(ForInvProductsFilter forInvProductsFilter) {
//入参业务系统字段控制 //入参业务系统字段控制
FilterInvProductRequest filterInvProductRequest = new FilterInvProductRequest(); FilterInvProductRequest filterInvProductRequest = new FilterInvProductRequest();
BeanUtils.copyProperties(forInvProductsFilter, filterInvProductRequest); BeanUtils.copyProperties(forInvProductsFilter, filterInvProductRequest);
log.info("HIS扫码获取高值耗材库存" + JSONUtil.toJsonStr(forInvProductsFilter));
//调用业务系统http //调用业务系统http
String response = httpClient.postUDIWMSJson(thirdSysConfig.getPostInvHighProductsFilterUrl(), filterInvProductRequest); String response = httpClient.postUDIWMSJson(thirdSysConfig.getPostInvHighProductsFilterUrl(), filterInvProductRequest);
//业务系统返回参数 字段控制 //业务系统返回参数 字段控制
@ -585,12 +589,18 @@ public class NjxyyClient extends CommonHttpClient {
return baseResponse; return baseResponse;
} }
/**
* HIS
*
* @param forBasicProductsSearchFilter
* @return
*/
@Override @Override
public BaseResponse queryUdiBasicProductsSearch(ForBasicProductsSearchFilter forBasicProductsSearchFilter) { public BaseResponse queryUdiBasicProductsSearch(ForBasicProductsSearchFilter forBasicProductsSearchFilter) {
//入参业务系统字段控制 //入参业务系统字段控制
FilterUdiRelRequest filterUdiRelRequest = new FilterUdiRelRequest(); FilterUdiRelRequest filterUdiRelRequest = new FilterUdiRelRequest();
BeanUtils.copyProperties(forBasicProductsSearchFilter, filterUdiRelRequest); BeanUtils.copyProperties(forBasicProductsSearchFilter, filterUdiRelRequest);
log.info("HIS获取普耗库存" + JSONUtil.toJsonStr(forBasicProductsSearchFilter));
//调用业务系统http //调用业务系统http
String response = httpClient.postUDIWMSJson(thirdSysConfig.getPostBasicProductsSearch(), filterUdiRelRequest); String response = httpClient.postUDIWMSJson(thirdSysConfig.getPostBasicProductsSearch(), filterUdiRelRequest);
//业务系统返回参数 字段控制 //业务系统返回参数 字段控制
@ -607,8 +617,6 @@ public class NjxyyClient extends CommonHttpClient {
newPageSimpleResponse.setTotal(pageSimpleResponse.getTotal()); newPageSimpleResponse.setTotal(pageSimpleResponse.getTotal());
newPageSimpleResponse.setList(newList); newPageSimpleResponse.setList(newList);
baseResponse.setData(newPageSimpleResponse); baseResponse.setData(newPageSimpleResponse);
} else {
} }
return baseResponse; return baseResponse;
} }
@ -616,32 +624,50 @@ public class NjxyyClient extends CommonHttpClient {
@Override @Override
public BaseResponse queryUdiInvOutScanCode(ForInvOutScanCodeFilter forInvOutScanCodeFilter) { public BaseResponse queryUdiInvOutScanCode(ForInvOutScanCodeFilter forInvOutScanCodeFilter) {
ForInvOutScanCodeRequest forInvOutScanCodeRequest = new ForInvOutScanCodeRequest(); ForInvOutScanCodeRequest forInvOutScanCodeRequest = new ForInvOutScanCodeRequest();
System.out.println(JSON.toJSONString(forInvOutScanCodeFilter));
// TODO: 2024/3/15 forInvOutScanCodeFilter 转换为 入参的业务系统的实体 forInvOutScanCodeRequest
/**
* ==============================
*/
IoOrderRequest ioOrderRequest = new IoOrderRequest(); IoOrderRequest ioOrderRequest = new IoOrderRequest();
ioOrderRequest.setAction("qqqqq"); ioOrderRequest.setAction("SC20250702001"); //设置默认出库单据类型
ioOrderRequest.setCreateTime(new Date());
ForInvOutScanCodeFilter.Billbaseinfo billbaseinfo = forInvOutScanCodeFilter.getBillbaseinfo();
ioOrderRequest.setCreateUser(billbaseinfo.getUserid());
if (StrUtil.isNotEmpty(billbaseinfo.getDeptid())) {
AuthWarehouseEntity authWarehouseEntity = authWarehouseDao.selectOne(new QueryWrapper<AuthWarehouseEntity>().eq("thirdId", billbaseinfo.getDeptid()).last("limit 1"));
if (authWarehouseEntity == null)
return ResultVOUtils.error(500, "UDI系统科室未对照");
ioOrderRequest.setInvCode(authWarehouseEntity.getCode());
ioOrderRequest.setDeptCode(authWarehouseEntity.getParentId());
} else
return ResultVOUtils.error(500, "HIS执行科室不能为空");
ForInvOutScanCodeFilter.Patientinfo patientinfo = forInvOutScanCodeFilter.getPatientinfo();
ioOrderRequest.setFromCorp(patientinfo.getInpatientid());
ioOrderRequest.setRemark(patientinfo.getInpatientid() + "-" + patientinfo.getName());
ioOrderRequest.setSickerAdNum(patientinfo.getInpatientid());
List<ForInvOutScanCodeFilter.Highvalue> highvalues = forInvOutScanCodeFilter.getHighvaluelist();
if (CollUtil.isEmpty(highvalues))
return ResultVOUtils.error(500, "耗材使用信息不能为空!");
List<IoOrderCodeRequest> codeRequestList = new ArrayList<>(); List<IoOrderCodeRequest> codeRequestList = new ArrayList<>();
IoOrderCodeRequest ioOrderCodeRequest = new IoOrderCodeRequest(); for (ForInvOutScanCodeFilter.Highvalue highvalue : highvalues) {
ioOrderCodeRequest.setCode("11111"); IoOrderCodeRequest codeRequest = new IoOrderCodeRequest();
codeRequestList.add(ioOrderCodeRequest); codeRequest.setCode(highvalue.getUdicode());
codeRequest.setInvCode(ioOrderRequest.getInvCode());
if (StrUtil.isNotEmpty(highvalue.getPrice())) {
codeRequest.setPrice(new BigDecimal(highvalue.getPrice()));
}
if (IntUtil.value(highvalue.getQuantity()) == 0) {
return ResultVOUtils.error(500, "耗材数量不能为空!");
}
codeRequest.setCount(IntUtil.value(highvalue.getQuantity()));
codeRequestList.add(codeRequest);
}
forInvOutScanCodeRequest.setCodeRequestList(codeRequestList); forInvOutScanCodeRequest.setCodeRequestList(codeRequestList);
forInvOutScanCodeRequest.setIoOrderRequest(ioOrderRequest); forInvOutScanCodeRequest.setIoOrderRequest(ioOrderRequest);
/**
* ============================================
*/
String response = httpClient.postUDIWMSJson(thirdSysConfig.getPostInvOutScanCode(), forInvOutScanCodeRequest); String response = httpClient.postUDIWMSJson(thirdSysConfig.getPostInvOutScanCode(), forInvOutScanCodeRequest);
BaseResponse baseResponse = JSONObject.parseObject(response, BaseResponse.class); BaseResponse baseResponse = JSONObject.parseObject(response, BaseResponse.class);
// if (baseResponse.getCode() == 20000){
// ForInvOutScanCodeResponse forInvOutScanCodeResponse =
// JSONObject.parseObject(String.valueOf(baseResponse.getData()), ForInvOutScanCodeResponse.class);
// }else {
//
// }
return baseResponse; return baseResponse;
} }

@ -543,8 +543,6 @@ public class ZzzyyClient extends CommonHttpClient {
@Override @Override
public BaseResponse postRelProduct(PostRelProductRequest postThrInvProductsRequest) { public BaseResponse postRelProduct(PostRelProductRequest postThrInvProductsRequest) {
return null; return null;
} }

@ -118,8 +118,8 @@ public class ExNjxyyController {
* @param forInvOutScanCodeFilter * @param forInvOutScanCodeFilter
* @return * @return
*/ */
@PostMapping("/ex/inv/out/scanCode") @PostMapping("/ex/udiwms/inv/out/scanCode")
public BaseResponse invOutScanCode(@RequestBody @Valid ForInvOutScanCodeFilter forInvOutScanCodeFilter) { public BaseResponse invOutScanCode(@RequestBody ForInvOutScanCodeFilter forInvOutScanCodeFilter) {
return ClientProcessor.getHttpClient().queryUdiInvOutScanCode(forInvOutScanCodeFilter); return ClientProcessor.getHttpClient().queryUdiInvOutScanCode(forInvOutScanCodeFilter);
} }

@ -35,7 +35,7 @@ public class ForInvOutScanCodeFilter {
* *
*/ */
@Data @Data
static class Billbaseinfo { public static class Billbaseinfo {
/** /**
* *
*/ */
@ -60,7 +60,7 @@ public class ForInvOutScanCodeFilter {
* *
*/ */
@Data @Data
static class Patientinfo { public static class Patientinfo {
/** /**
* ID * ID
*/ */
@ -234,7 +234,7 @@ public class ForInvOutScanCodeFilter {
* 使 * 使
*/ */
@Data @Data
static class Highvalue { public static class Highvalue {
/** /**
* UDI * UDI

@ -3,10 +3,11 @@ package com.glxp.mipsdl.req.base.forthird;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Data; import lombok.Data;
import java.math.BigDecimal;
import java.util.Date; import java.util.Date;
@Data @Data
public class IoOrderCodeRequest{ public class IoOrderCodeRequest {
/** /**
* UDI * UDI
@ -157,4 +158,7 @@ public class IoOrderCodeRequest{
private String inBatchNo; private String inBatchNo;
private BigDecimal price;
} }

Loading…
Cancel
Save