feat: 码明细到国家同步库

dev_unify
chenhc 8 months ago
parent ed735aa532
commit 0e441c3bda

@ -227,6 +227,9 @@ public class IoCollectOrderBackup implements Serializable {
@TableField(exist = false)
private List<IoCollectOrderBiz> bizList;
@TableField(exist = false)
private List<IoCollectCodeBackup> codeList;
/**
*
*/

@ -427,7 +427,10 @@ public class ErpBasicClient {
*
*/
public BaseResponse<PageSimpleResponse<YbHcflEntityResponse>> getYbHcflDetail(YbHcflDetailFilterRequest ybHcflDetailFilterRequest) {
String url = "https://www.udims.com/UDI_DL_Server_test" + "/udchs/ybHcfl/list";
// String url = "https://www.udims.com/UDI_DL_Server_test" + "/udchs/ybHcfl/list";
ThrSystemEntity basicThirdSysEntity = basicThirdSysService.selectByThirdId("thirdId");
String url = basicThirdSysEntity.getThridUrl() + "/udchs/ybHcfl/list";
try {
ybHcflDetailFilterRequest.setLimit(1);
ybHcflDetailFilterRequest.setPage(1);
@ -449,7 +452,9 @@ public class ErpBasicClient {
*
*/
public BaseResponse<PageSimpleResponse<YbDrug>> getYbDrugDetail(YbDrugDetailFilterRequest ybHcflDetailFilterRequest) {
String url = "https://www.udims.com/UDI_DL_Server_test" + "/udchs/ybDrug/list";
// String url = "https://www.udims.com/UDI_DL_Server_test" + "/udchs/ybDrug/list";
ThrSystemEntity basicThirdSysEntity = basicThirdSysService.selectByThirdId("thirdId");
String url = basicThirdSysEntity.getThridUrl() + "/udchs/ybDrug/list";
try {
String response = httpOkClient.uCloudPost(url, ybHcflDetailFilterRequest);
BaseResponse<PageSimpleResponse<YbDrug>> listBaseResponse =
@ -461,4 +466,25 @@ public class ErpBasicClient {
return ResultVOUtils.error(500, "连接第三方系统接口服务出错");
}
}
/**
*
*/
public BaseResponse<String> collectOrderUpload(PostCollectOrderRequest postCollectOrderRequest) {
ThrSystemEntity basicThirdSysEntity = basicThirdSysService.selectByThirdId(postCollectOrderRequest.getThirdSys());
String url = basicThirdSysEntity.getThridUrl() + "/busOrderApi/sps/sync/collect/order/upload";
try {
String response = httpOkClient.uCloudPost(url, postCollectOrderRequest);
BaseResponse<String> listBaseResponse =
JSONObject.parseObject(response, new TypeReference<String>() {
});
return listBaseResponse;
} catch (Exception e) {
log.error("上传已成功传输医保的完成单据", e);
return ResultVOUtils.error(500, "连接第三方系统接口服务出错");
}
}
}

@ -11,6 +11,7 @@ public class PostCollectOrderRequest {
private String thirdSys;
private String webTitle;
List<IoCollectOrderBackup> collectOrderList;

@ -13,6 +13,7 @@ import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.constant.Constant;
import com.glxp.api.constant.ConstantStatus;
import com.glxp.api.controller.collect.IoCollectCodeBackupController;
import com.glxp.api.dao.collect.IoCollectOrderBackupMapper;
import com.glxp.api.dao.inout.IoCodeTempDao;
import com.glxp.api.entity.auth.AuthAdmin;
@ -42,6 +43,7 @@ import com.glxp.api.service.inout.IoCheckInoutService;
import com.glxp.api.service.inout.IoOrderService;
import com.glxp.api.util.*;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@ -94,8 +96,11 @@ public class IoCollectOrderBackupService extends ServiceImpl<IoCollectOrderBacku
@Resource
private RedisUtil redisUtil;
@Resource
IoCollectCodeBackService ioCollectCodeBackService;
@Value("${WEB_TITLE}")
private String WEB_TITLE;
public List<IoCollectOrderResponse> filterList(CollectOrderRequest collectOrderRequest) {
if (collectOrderRequest == null) {
@ -224,17 +229,29 @@ public class IoCollectOrderBackupService extends ServiceImpl<IoCollectOrderBacku
//todo 根据单据类型上传医保或者第三方系统
PostCollectOrderRequest orderRequest = new PostCollectOrderRequest();
orderRequest.setThirdSys("thirdId");
orderRequest.setWebTitle(WEB_TITLE);
CollectOrderBizRequest collectOrderBizRequest = new CollectOrderBizRequest();
collectOrderBizRequest.setOrderIdFk(collectOrder.getBillNo());
List<CollectOrderBizResponse> collectOrderBizResponses = combieOrderDetail(collectOrderBizRequest);
collectOrder.setCollectOrderBizResponseList(collectOrderBizResponses);
List<IoCollectCodeBackup> list = ioCollectCodeBackService.list(new LambdaQueryWrapper<IoCollectCodeBackup>().eq(IoCollectCodeBackup::getBillNo, collectOrder.getBillNo()));
collectOrder.setCodeList(list);
List<IoCollectOrderBackup> collectOrderList = new ArrayList<>();
collectOrderList.add(collectOrder);
orderRequest.setCollectOrderList(collectOrderList);
BaseResponse<BasicSkPrescribeResponse> baseResponse = erpBasicClient.postOrder(orderRequest);
log.debug("单据返回=========" + baseResponse);
if (baseResponse.getCode() == 20000) {
//
// 触发上传 转发至中继服务 到外网 再到国家同步库
ThreadUtil.execAsync(() -> {
BaseResponse<String> stringBaseResponse = new BaseResponse<>();
try {
stringBaseResponse = erpBasicClient.collectOrderUpload(orderRequest);
}catch (Exception e){
throw new JsonException("触发上传 转发至中继服务 到外网 再到国家同步库 接口服务出错:" + stringBaseResponse.getMessage());
}
});
} else {
throw new JsonException("连接第三方系统接口服务出错," + baseResponse.getMessage());
}

Loading…
Cancel
Save