1、增加配置 开启就进行单据所有码包括下级的码进行校验有没有传过 传过了就不能再传了

dev_unify
qiuyt 8 months ago
parent 59818217ce
commit be9014f5d1

@ -21,6 +21,7 @@ import com.glxp.api.res.collect.RelCodeDetailResponse;
import com.glxp.api.res.inout.IoOrderDetailCodeResponse; import com.glxp.api.res.inout.IoOrderDetailCodeResponse;
import com.glxp.api.res.inout.VailCodeResultResponse; import com.glxp.api.res.inout.VailCodeResultResponse;
import com.glxp.api.service.collect.*; import com.glxp.api.service.collect.*;
import com.glxp.api.service.collect.RelCodeDetailService;
import com.glxp.api.service.inout.impl.IoCodeService; import com.glxp.api.service.inout.impl.IoCodeService;
import com.glxp.api.service.inv.impl.InvProductServiceNew; import com.glxp.api.service.inv.impl.InvProductServiceNew;
import com.glxp.api.vo.basic.InvProductNewVo; import com.glxp.api.vo.basic.InvProductNewVo;

@ -52,4 +52,6 @@ public class RelCodeDetail implements Serializable {
@ApiModelProperty(value="产品批次ID外键") @ApiModelProperty(value="产品批次ID外键")
private Integer batchIdFk; private Integer batchIdFk;
private static final long serialVersionUID = 1L;
} }

@ -1,33 +1,23 @@
package com.glxp.api.http; package com.glxp.api.http;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.TypeReference; import com.alibaba.fastjson.TypeReference;
import com.glxp.api.common.res.BaseResponse; import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils; import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.entity.basic.BasicSkProjectDetailEntity;
import com.glxp.api.entity.basic.BasicSkProjectEntity;
import com.glxp.api.entity.basic.BasicSkSickerEntity;
import com.glxp.api.entity.collect.IoCollectOrder; import com.glxp.api.entity.collect.IoCollectOrder;
import com.glxp.api.entity.thrsys.*; import com.glxp.api.entity.thrsys.*;
import com.glxp.api.exception.JsonException;
import com.glxp.api.http.req.UdiwmsBusTypeRequest; import com.glxp.api.http.req.UdiwmsBusTypeRequest;
import com.glxp.api.http.req.UdiwmsUnitRequest; import com.glxp.api.http.req.UdiwmsUnitRequest;
import com.glxp.api.req.basic.*; import com.glxp.api.req.basic.*;
import com.glxp.api.req.collect.PostCollectOrderRequest; import com.glxp.api.req.collect.PostCollectOrderRequest;
import com.glxp.api.req.inout.PostOrderRequest;
import com.glxp.api.req.thrsys.*; import com.glxp.api.req.thrsys.*;
import com.glxp.api.res.PageSimpleResponse; import com.glxp.api.res.PageSimpleResponse;
import com.glxp.api.res.basic.BasicSkPrescribeResponse; import com.glxp.api.res.basic.BasicSkPrescribeResponse;
import com.glxp.api.res.basic.BasicSkProjectDetailResponse;
import com.glxp.api.res.basic.BasicSkProjectResponse; import com.glxp.api.res.basic.BasicSkProjectResponse;
import com.glxp.api.res.basic.BasicSkSickerResponse; import com.glxp.api.res.basic.BasicSkSickerResponse;
import com.glxp.api.res.chs.YbHcflEntityResponse; import com.glxp.api.res.chs.YbHcflEntityResponse;
import com.glxp.api.res.collect.IoCollectOrderResponse;
import com.glxp.api.res.thrsys.ThrCorpsResponse; import com.glxp.api.res.thrsys.ThrCorpsResponse;
import com.glxp.api.res.thrsys.ThrOrderResponse;
import com.glxp.api.res.thrsys.ThrProductsResponse; import com.glxp.api.res.thrsys.ThrProductsResponse;
import com.glxp.api.res.thrsys.UdiwmsWarehouseDetail; import com.glxp.api.res.thrsys.UdiwmsWarehouseDetail;
import com.glxp.api.service.thrsys.ThrSystemService; import com.glxp.api.service.thrsys.ThrSystemService;
@ -489,9 +479,9 @@ public class ErpBasicClient {
} }
//TODO 阿超改==校验码是和下级所有码否传过了逻辑还没写 //TODO 阿超改==校验码是和下级所有码否传过了逻辑还没写
/** /**
* * (list)
*/ */
public BaseResponse<List> collectOrderCheckCode(List<String> codeList) { public BaseResponse<List> collectOrderCheckCodeUploading(List<String> codeList) {
return ResultVOUtils.success(new ArrayList<>()); return ResultVOUtils.success(new ArrayList<>());
} }
} }

@ -8,18 +8,15 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
import com.glxp.api.common.enums.ResultEnum;
import com.glxp.api.common.res.BaseResponse; import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils; import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.constant.Constant; import com.glxp.api.constant.Constant;
import com.glxp.api.constant.ConstantStatus; 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.collect.IoCollectOrderBackupMapper;
import com.glxp.api.dao.inout.IoCodeTempDao; import com.glxp.api.dao.inout.IoCodeTempDao;
import com.glxp.api.entity.auth.AuthAdmin; import com.glxp.api.entity.auth.AuthAdmin;
import com.glxp.api.entity.basic.BasicBussinessTypeEntity; import com.glxp.api.entity.basic.BasicBussinessTypeEntity;
import com.glxp.api.entity.basic.CompanyProductRelevanceEntity; import com.glxp.api.entity.basic.CompanyProductRelevanceEntity;
import com.glxp.api.entity.basic.EntrustReceEntity;
import com.glxp.api.entity.basic.SysWorkplaceDocumentEntity; import com.glxp.api.entity.basic.SysWorkplaceDocumentEntity;
import com.glxp.api.entity.collect.*; import com.glxp.api.entity.collect.*;
import com.glxp.api.entity.inout.IoCodeTempEntity; import com.glxp.api.entity.inout.IoCodeTempEntity;
@ -35,7 +32,6 @@ import com.glxp.api.req.inout.ReviewFinishRequest;
import com.glxp.api.res.basic.BasicSkPrescribeResponse; import com.glxp.api.res.basic.BasicSkPrescribeResponse;
import com.glxp.api.res.collect.CollectOrderBizResponse; import com.glxp.api.res.collect.CollectOrderBizResponse;
import com.glxp.api.res.collect.IoCollectOrderResponse; import com.glxp.api.res.collect.IoCollectOrderResponse;
import com.glxp.api.service.auth.impl.AuthAdminServiceImpl;
import com.glxp.api.service.basic.IBasicBussinessTypeService; import com.glxp.api.service.basic.IBasicBussinessTypeService;
import com.glxp.api.service.basic.SysWorkplaceDocumentService; import com.glxp.api.service.basic.SysWorkplaceDocumentService;
import com.glxp.api.service.basic.UdiRlSupService; import com.glxp.api.service.basic.UdiRlSupService;
@ -104,7 +100,10 @@ public class IoCollectOrderBackupService extends ServiceImpl<IoCollectOrderBacku
@Value("${WEB_TITLE}") @Value("${WEB_TITLE}")
private String WEB_TITLE; private String WEB_TITLE;
@Resource @Resource
SystemParamConfigService systemParamConfigService; private SystemParamConfigService systemParamConfigService;
@Resource
private RelCodeDetailService relCodeDetailService;
public List<IoCollectOrderResponse> filterList(CollectOrderRequest collectOrderRequest) { public List<IoCollectOrderResponse> filterList(CollectOrderRequest collectOrderRequest) {
if (collectOrderRequest == null) { if (collectOrderRequest == null) {
return Collections.emptyList(); return Collections.emptyList();
@ -244,6 +243,40 @@ public class IoCollectOrderBackupService extends ServiceImpl<IoCollectOrderBacku
collectOrderList.add(collectOrder); collectOrderList.add(collectOrder);
orderRequest.setCollectOrderList(collectOrderList); orderRequest.setCollectOrderList(collectOrderList);
BaseResponse<BasicSkPrescribeResponse> baseResponse = erpBasicClient.postOrder(orderRequest); BaseResponse<BasicSkPrescribeResponse> baseResponse = erpBasicClient.postOrder(orderRequest);
// 判断此单据 有没有码已经上传过了一个有上传就进行错误返回
String paramValue = systemParamConfigService.selectValueByParamKey("checkCodeUploading");
if (StrUtil.isNotEmpty(paramValue) && paramValue.equals("0")) {
List<String> codeList = new ArrayList<>();
for (CollectOrderBizResponse collectOrderBizResponse : collectOrderBizResponses) {
String[] codes = collectOrderBizResponse.getFinishUdiCode().split(",");
// 遍历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());
}
}
}
}
}
BaseResponse<List> baseResponseCheckCode = erpBasicClient.collectOrderCheckCodeUploading(codeList);
if (baseResponseCheckCode.getCode() == 20000) {
List listCheckCode = baseResponseCheckCode.getData();
if (listCheckCode == null || listCheckCode.size() > 0) {
log.error("单据的所有码有已经传输过医保的,请核实");
throw new JsonException("此单据的所有码有已经传输过医保的,请核实" + baseResponse.getMessage());
}
} else {
throw new JsonException("查询码关联关系服务出差," + baseResponse.getMessage());
}
}
log.debug("单据返回=========" + baseResponse); log.debug("单据返回=========" + baseResponse);
if (baseResponse.getCode() == 20000) { if (baseResponse.getCode() == 20000) {
// 触发上传 转发至中继服务 到外网 再到国家同步库 // 触发上传 转发至中继服务 到外网 再到国家同步库

@ -15,10 +15,7 @@ import com.glxp.api.util.udi.FilterUdiUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.ArrayList; import java.util.*;
import java.util.Collections;
import java.util.Currency;
import java.util.List;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.glxp.api.dao.collect.RelCodeDetailMapper; import com.glxp.api.dao.collect.RelCodeDetailMapper;
@ -137,8 +134,17 @@ public class RelCodeDetailService extends ServiceImpl<RelCodeDetailMapper, RelCo
* @return * @return
*/ */
public List<RelCodeDetail> getAllNext(String code) { public List<RelCodeDetail> getAllNext(String code) {
RelCodeDetail relCodeDetail = this.baseMapper.selectOne(
new LambdaQueryWrapper<RelCodeDetail>().eq(RelCodeDetail::getCurCode, code)
);
if(Objects.isNull(relCodeDetail)){
relCodeDetail = new RelCodeDetail();
relCodeDetail.setCurCode(code);
}
List<RelCodeDetail> list = new ArrayList<>(); List<RelCodeDetail> list = new ArrayList<>();
list.add(relCodeDetail);
fetchAllChildren(code, list); fetchAllChildren(code, list);
return list; return list;
} }

Loading…
Cancel
Save