|
|
|
@ -10,6 +10,7 @@ import com.glxp.udi.admin.exception.JsonException;
|
|
|
|
|
import com.glxp.udi.admin.req.publish.PostIdentifyKeyRequest;
|
|
|
|
|
import com.glxp.udi.admin.req.publish.PostIdentifyRequest;
|
|
|
|
|
import com.glxp.udi.admin.res.publish.PostSaveResponse;
|
|
|
|
|
import com.glxp.udi.admin.res.publish.PostSubmitResponse;
|
|
|
|
|
import com.glxp.udi.admin.res.publish.UdiDeviceIdResponse;
|
|
|
|
|
import com.glxp.udi.admin.service.auth.AuthAdminService;
|
|
|
|
|
import com.glxp.udi.admin.service.info.CompanyService;
|
|
|
|
@ -67,36 +68,51 @@ public class PostIdentifyController {
|
|
|
|
|
CompanyEntity companyEntity = companyService.findCompany(authAdmin.getCustomerId());
|
|
|
|
|
DownloadDeviceHelper downloadDeviceHelper = new DownloadDeviceHelper(companyEntity);
|
|
|
|
|
TokenEntity tokenEntity = downloadDeviceHelper.getToken();
|
|
|
|
|
PostIdentifyEntity postIdentifyEntity = buildPost(postIdentifyRequest, tokenEntity.getAccessToken(),companyEntity);
|
|
|
|
|
new Thread(() -> {
|
|
|
|
|
|
|
|
|
|
PostSaveResponse postSaveResponse = downloadDeviceHelper.postIdentify(postIdentifyEntity);
|
|
|
|
|
if (postSaveResponse.getReturnCode() == 1) {
|
|
|
|
|
List<PostSuccessBean> successListBeans = postSaveResponse.getSuccessList();
|
|
|
|
|
for (PostSuccessBean successListBean : successListBeans) {
|
|
|
|
|
successListBean.setStatus("2");
|
|
|
|
|
udiDeviceIdService.postUpdate(successListBean);
|
|
|
|
|
|
|
|
|
|
UdiDeviceIdEntity udiDeviceIdEntity = udiDeviceIdService.selectByPriId(successListBean.getZXXSDYCPBS());
|
|
|
|
|
//更新子类信息状态
|
|
|
|
|
UdiSubProductEntity udiSubProductEntity = new UdiSubProductEntity();
|
|
|
|
|
udiSubProductEntity.setUDI_SubProductOID(udiDeviceIdEntity.getUDI_SubProduct_FK());
|
|
|
|
|
udiSubProductEntity.setStatus("2");
|
|
|
|
|
udiSubProductService.modifyUdiSubProduct(udiSubProductEntity);
|
|
|
|
|
//更新企业产品状态
|
|
|
|
|
UdiProductEntity udiProductEntity = new UdiProductEntity();
|
|
|
|
|
udiProductEntity.setUDI_ProductOID(udiDeviceIdEntity.getUDI_Product_FK());
|
|
|
|
|
udiProductEntity.setStatus("2");
|
|
|
|
|
udiProductService.modifyUdiProduct(udiProductEntity);
|
|
|
|
|
PostIdentifyEntity postIdentifyEntity = buildPost(postIdentifyRequest, tokenEntity.getAccessToken(), companyEntity);
|
|
|
|
|
if (postIdentifyEntity == null) {
|
|
|
|
|
return ResultVOUtils.error(500, errMsg);
|
|
|
|
|
}
|
|
|
|
|
PostSaveResponse postSaveResponse = downloadDeviceHelper.postIdentify(postIdentifyEntity);
|
|
|
|
|
if (postSaveResponse.getReturnCode() == 1) {
|
|
|
|
|
List<PostSuccessBean> successListBeans = postSaveResponse.getSuccessList();
|
|
|
|
|
for (PostSuccessBean successListBean : successListBeans) {
|
|
|
|
|
String status = "2";
|
|
|
|
|
if (postIdentifyRequest.getUploadType().equals("change")) {
|
|
|
|
|
status = "3";
|
|
|
|
|
}
|
|
|
|
|
//标识状态更新
|
|
|
|
|
successListBean.setStatus(status);
|
|
|
|
|
udiDeviceIdService.postUpdate(successListBean);
|
|
|
|
|
UdiDeviceIdEntity udiDeviceIdEntity = udiDeviceIdService.selectByPriId(successListBean.getZXXSDYCPBS());
|
|
|
|
|
//更新子类信息状态
|
|
|
|
|
UdiSubProductEntity udiSubProductEntity = new UdiSubProductEntity();
|
|
|
|
|
udiSubProductEntity.setUDI_SubProductOID(udiDeviceIdEntity.getUDI_SubProduct_FK());
|
|
|
|
|
udiSubProductEntity.setStatus(status);
|
|
|
|
|
udiSubProductService.modifyUdiSubProduct(udiSubProductEntity);
|
|
|
|
|
//更新企业产品状态
|
|
|
|
|
UdiProductEntity udiProductEntity = new UdiProductEntity();
|
|
|
|
|
udiProductEntity.setUDI_ProductOID(udiDeviceIdEntity.getUDI_Product_FK());
|
|
|
|
|
udiProductEntity.setStatus(status);
|
|
|
|
|
udiProductService.modifyUdiProduct(udiProductEntity);
|
|
|
|
|
return ResultVOUtils.success("上传成功");
|
|
|
|
|
}
|
|
|
|
|
}).start();
|
|
|
|
|
} else {
|
|
|
|
|
List<PostSaveResponse.ErrorListBean> errorListBean = postSaveResponse.getErrorList();
|
|
|
|
|
if (errorListBean != null && errorListBean.size() > 0) {
|
|
|
|
|
List<PostSaveResponse.ErrorListBean.ErrorDetailListBean> errorDetailListBeans = errorListBean.get(0).getErrorDetailList();
|
|
|
|
|
if (errorDetailListBeans != null && errorDetailListBeans.size() > 0) {
|
|
|
|
|
return ResultVOUtils.error(500, errorDetailListBeans.get(0).getErrorMsg());
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return ResultVOUtils.error(500, "提交草稿上传失败");
|
|
|
|
|
|
|
|
|
|
return ResultVOUtils.success("提交草稿上传成功");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public PostIdentifyEntity buildPost(PostIdentifyRequest postIdentifyRequest, String token,CompanyEntity companyEntity) {
|
|
|
|
|
String errMsg;
|
|
|
|
|
|
|
|
|
|
public PostIdentifyEntity buildPost(PostIdentifyRequest postIdentifyRequest, String token, CompanyEntity companyEntity) {
|
|
|
|
|
PostIdentifyEntity postIdentifyEntity = new PostIdentifyEntity();
|
|
|
|
|
postIdentifyEntity.setAccessToken(token);
|
|
|
|
|
List<PostDataBean> dataSetBeans = new ArrayList<>();
|
|
|
|
@ -108,11 +124,33 @@ public class PostIdentifyController {
|
|
|
|
|
UdiDeviceIdResponse udiDeviceIdResponse = udiDeviceIdResponses.get(i);
|
|
|
|
|
PostDataBean dataSetBean = new PostDataBean();
|
|
|
|
|
UdiProductEntity udiProductEntity = udiProductService.selectById(udiDeviceIdResponse.getUDI_Product_FK());
|
|
|
|
|
if (udiProductEntity.getStatus() == "2")
|
|
|
|
|
dataSetBean.setUploadType("modify");
|
|
|
|
|
else {
|
|
|
|
|
dataSetBean.setUploadType("add");
|
|
|
|
|
if (!postIdentifyRequest.getUploadType().equals("add") && udiDeviceIdResponse.getDeviceRecordKey() == null) {
|
|
|
|
|
errMsg = "提交草稿上传失败,标识未草稿上传";
|
|
|
|
|
return null;
|
|
|
|
|
}
|
|
|
|
|
if (postIdentifyRequest.getUploadType().equals("change")) {
|
|
|
|
|
if (!udiProductEntity.getStatus().equals("3")) {
|
|
|
|
|
errMsg = "变更上传失败,标识未提交发布";
|
|
|
|
|
return null;
|
|
|
|
|
}
|
|
|
|
|
if (postIdentifyRequest.getBgsm() == null || postIdentifyRequest.getBgsm().equals("")) {
|
|
|
|
|
errMsg = "变更说明不能为空";
|
|
|
|
|
return null;
|
|
|
|
|
}
|
|
|
|
|
dataSetBean.setBGSM(postIdentifyRequest.getBgsm());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (postIdentifyRequest.getUploadType().equals("modify")) {
|
|
|
|
|
if (udiProductEntity.getStatus().equals("3")) {
|
|
|
|
|
errMsg = "修改上传失败,标识已提交发布";
|
|
|
|
|
return null;
|
|
|
|
|
}
|
|
|
|
|
if (udiProductEntity.getStatus().equals("1")) {
|
|
|
|
|
errMsg = "修改上传失败,标识未草稿上传";
|
|
|
|
|
return null;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
dataSetBean.setUploadType(postIdentifyRequest.getUploadType());
|
|
|
|
|
dataSetBean.setCPMCTYMC(udiProductEntity.getProductName());
|
|
|
|
|
dataSetBean.setTYSHXYDM(companyEntity.getCreditNum());
|
|
|
|
|
dataSetBean.setDeviceRecordKey(udiDeviceIdResponse.getDeviceRecordKey());
|
|
|
|
@ -147,7 +185,7 @@ public class PostIdentifyController {
|
|
|
|
|
|
|
|
|
|
dataSetBean.setCPMS(udiDeviceIdResponse.getDeviceDescription());
|
|
|
|
|
dataSetBean.setCPHHHBH(udiDeviceIdResponse.getCatalogNumber());
|
|
|
|
|
if (udiDeviceIdResponse.getProductType() != null && udiDeviceIdResponse.getProductType().equals("体外诊断试剂"))
|
|
|
|
|
if (udiDeviceIdResponse.getDeviceType() != null && udiDeviceIdResponse.getDeviceType().equals("体外诊断试剂"))
|
|
|
|
|
dataSetBean.setCPLX("2");
|
|
|
|
|
else
|
|
|
|
|
dataSetBean.setCPLX("1");
|
|
|
|
@ -160,10 +198,12 @@ public class PostIdentifyController {
|
|
|
|
|
if (udiDeviceIdResponse.getProductType() != null && udiDeviceIdResponse.getProductType().equals("耗材"))
|
|
|
|
|
dataSetBean.setHCHZSB("0");
|
|
|
|
|
else dataSetBean.setHCHZSB("1");
|
|
|
|
|
dataSetBean.setSFBJWYCXSY(udiDeviceIdResponse.getSingleUse());
|
|
|
|
|
if (udiDeviceIdResponse.getSingleUse() != null && udiDeviceIdResponse.getSingleUse().equals("1"))
|
|
|
|
|
dataSetBean.setSFBJWYCXSY("1");
|
|
|
|
|
else
|
|
|
|
|
dataSetBean.setSFBJWYCXSY("0");
|
|
|
|
|
dataSetBean.setZDCFSYCS(udiDeviceIdResponse.getReuseTimes());
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (udiDeviceIdResponse.getIsDeviceSterile() != null && udiDeviceIdResponse.getIsDeviceSterile().equals("1"))
|
|
|
|
|
dataSetBean.setSFWWJBZ("1");
|
|
|
|
|
else dataSetBean.setSFWWJBZ("0");
|
|
|
|
@ -175,8 +215,11 @@ public class PostIdentifyController {
|
|
|
|
|
dataSetBean.setYBBM(udiDeviceIdResponse.getYBBM());
|
|
|
|
|
if (udiDeviceIdResponse.getMRISafetyInfo() == null)
|
|
|
|
|
dataSetBean.setCGZMRAQXGXX("3");
|
|
|
|
|
else
|
|
|
|
|
dataSetBean.setCGZMRAQXGXX(udiDeviceIdResponse.getMRISafetyInfo());
|
|
|
|
|
else {
|
|
|
|
|
int value = Integer.parseInt(udiDeviceIdResponse.getMRISafetyInfo()) - 1;
|
|
|
|
|
dataSetBean.setCGZMRAQXGXX(value + "");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
dataSetBean.setTSCCHCZTJ(udiDeviceIdResponse.getSpecialText());
|
|
|
|
|
dataSetBean.setTSCCSM(udiDeviceIdResponse.getClinicalSizeText());
|
|
|
|
|
dataSetBean.setSCBSSFBHPH(udiDeviceIdResponse.getIsLotBatch());
|
|
|
|
@ -271,16 +314,17 @@ public class PostIdentifyController {
|
|
|
|
|
}
|
|
|
|
|
postIdentifyKeyRequest.setDataSet(dataSetBeans);
|
|
|
|
|
postIdentifyKeyRequest.setAccessToken(tokenEntity.getAccessToken());
|
|
|
|
|
PostSaveResponse postSaveResponse = downloadDeviceHelper.postIdentifyKey(postIdentifyKeyRequest);
|
|
|
|
|
PostSubmitResponse postSaveResponse = downloadDeviceHelper.postIdentifyKey(postIdentifyKeyRequest);
|
|
|
|
|
if (postSaveResponse.getReturnCode() == 1) {
|
|
|
|
|
List<PostSuccessBean> successListBeans = postSaveResponse.getSuccessList();
|
|
|
|
|
for (PostSuccessBean successListBean : successListBeans) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
successListBean.setStatus("3");
|
|
|
|
|
udiDeviceIdService.postUpdate(successListBean);
|
|
|
|
|
|
|
|
|
|
UdiDeviceIdEntity udiDeviceIdEntity = udiDeviceIdService.selectByPriId(successListBean.getZXXSDYCPBS());
|
|
|
|
|
for (PostIdentifyKeyRequest.DataSetBean dataSetBean : dataSetBeans) {
|
|
|
|
|
//更新产品标识状态
|
|
|
|
|
PostSuccessBean postSuccessBean = new PostSuccessBean();
|
|
|
|
|
postSuccessBean.setDeviceRecordKey(dataSetBean.getDeviceRecordKey());
|
|
|
|
|
postSuccessBean.setZXXSDYCPBS(dataSetBean.getZXXSDYCPBS());
|
|
|
|
|
postSuccessBean.setStatus("3");
|
|
|
|
|
udiDeviceIdService.postUpdate(postSuccessBean);
|
|
|
|
|
|
|
|
|
|
UdiDeviceIdEntity udiDeviceIdEntity = udiDeviceIdService.selectByPriId(postSuccessBean.getZXXSDYCPBS());
|
|
|
|
|
//更新子类信息状态
|
|
|
|
|
UdiSubProductEntity udiSubProductEntity = new UdiSubProductEntity();
|
|
|
|
|
udiSubProductEntity.setUDI_SubProductOID(udiDeviceIdEntity.getUDI_SubProduct_FK());
|
|
|
|
@ -292,8 +336,19 @@ public class PostIdentifyController {
|
|
|
|
|
udiProductEntity.setStatus("3");
|
|
|
|
|
udiProductService.modifyUdiProduct(udiProductEntity);
|
|
|
|
|
}
|
|
|
|
|
} else
|
|
|
|
|
return ResultVOUtils.error(500, "提交失败");
|
|
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
String errMsg = "提交失败";
|
|
|
|
|
if (postSaveResponse.getErrorList() != null && postSaveResponse.getErrorList().size() > 0) {
|
|
|
|
|
List<PostSubmitResponse.ErrorListBean.ErrorDetailListBean> errorDetailListBeans = postSaveResponse.getErrorList().get(0).getErrorDetailList();
|
|
|
|
|
if (errorDetailListBeans != null && errorDetailListBeans.size() > 0)
|
|
|
|
|
errMsg = errorDetailListBeans.get(0).getErrorMsg();
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return ResultVOUtils.error(500, errMsg);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
return ResultVOUtils.error(500, "上传数据为空");
|
|
|
|
|
}
|
|
|
|
@ -332,13 +387,17 @@ public class PostIdentifyController {
|
|
|
|
|
}
|
|
|
|
|
postIdentifyKeyRequest.setDataSet(dataSetBeans);
|
|
|
|
|
postIdentifyKeyRequest.setAccessToken(tokenEntity.getAccessToken());
|
|
|
|
|
PostSaveResponse postSaveResponse = downloadDeviceHelper.postIdentifyKey(postIdentifyKeyRequest);
|
|
|
|
|
PostSubmitResponse postSaveResponse = downloadDeviceHelper.postIdentifyKey(postIdentifyKeyRequest);
|
|
|
|
|
if (postSaveResponse.getReturnCode() == 1) {
|
|
|
|
|
List<PostSuccessBean> successListBeans = postSaveResponse.getSuccessList();
|
|
|
|
|
for (PostSuccessBean successListBean : successListBeans) {
|
|
|
|
|
successListBean.setStatus("3");
|
|
|
|
|
udiDeviceIdService.postUpdate(successListBean);
|
|
|
|
|
UdiDeviceIdEntity udiDeviceIdEntity = udiDeviceIdService.selectByPriId(successListBean.getZXXSDYCPBS());
|
|
|
|
|
for (PostIdentifyKeyRequest.DataSetBean dataSetBean : dataSetBeans) {
|
|
|
|
|
//更新产品标识状态
|
|
|
|
|
PostSuccessBean postSuccessBean = new PostSuccessBean();
|
|
|
|
|
postSuccessBean.setDeviceRecordKey(dataSetBean.getDeviceRecordKey());
|
|
|
|
|
postSuccessBean.setZXXSDYCPBS(dataSetBean.getZXXSDYCPBS());
|
|
|
|
|
postSuccessBean.setStatus("3");
|
|
|
|
|
udiDeviceIdService.postUpdate(postSuccessBean);
|
|
|
|
|
|
|
|
|
|
UdiDeviceIdEntity udiDeviceIdEntity = udiDeviceIdService.selectByPriId(postSuccessBean.getZXXSDYCPBS());
|
|
|
|
|
//更新子类信息状态
|
|
|
|
|
UdiSubProductEntity udiSubProductEntity = new UdiSubProductEntity();
|
|
|
|
|
udiSubProductEntity.setUDI_SubProductOID(udiDeviceIdEntity.getUDI_SubProduct_FK());
|
|
|
|
@ -350,8 +409,10 @@ public class PostIdentifyController {
|
|
|
|
|
udiProductEntity.setStatus("3");
|
|
|
|
|
udiProductService.modifyUdiProduct(udiProductEntity);
|
|
|
|
|
}
|
|
|
|
|
} else
|
|
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
return ResultVOUtils.error(500, "提交失败");
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
return ResultVOUtils.error(500, "上传数据为空");
|
|
|
|
|
}
|
|
|
|
|