diff --git a/platform-biz-service/src/main/java/com/lyms/platform/permission/service/impl/LisServiceImpl.java b/platform-biz-service/src/main/java/com/lyms/platform/permission/service/impl/LisServiceImpl.java index 3129a0c..2ebe09d 100644 --- a/platform-biz-service/src/main/java/com/lyms/platform/permission/service/impl/LisServiceImpl.java +++ b/platform-biz-service/src/main/java/com/lyms/platform/permission/service/impl/LisServiceImpl.java @@ -287,6 +287,7 @@ public class LisServiceImpl implements LisService { AntenatalExaminationModel antenatalExaminationModel = null; boolean b = false; boolean p=false; + boolean amy=false; List antenatalExaminationModelList = antExService.queryLastAntenx(antExQuery); if (CollectionUtils.isNotEmpty(antenatalExaminationModelList)) { antenatalExaminationModel = antenatalExaminationModelList.get(0); @@ -392,69 +393,117 @@ public class LisServiceImpl implements LisService { if (StringUtils.isNotEmpty(params.get("HBcAb-J"))){ p=true; patients.setHBcAbJ(params.get("HBcAb-J")); + if (!amy){ + amy= params.get("HBcAb-J").contains("阳")||params.get("HBcAb-J").contains("陽")?true:false; + } + } if (StringUtils.isNotEmpty(params.get("HBcAb"))){ p=true; patients.setHBcAbJ(params.get("HBcAb")); + if (!amy){ + amy= params.get("HBcAb").contains("阳")||params.get("HBcAb").contains("陽")?true:false; + } + } if (StringUtils.isNotEmpty(params.get("HBeAb-J"))){ p=true; patients.setHBeAbJ(params.get("HBeAb-J")); + if (!amy){ + amy= params.get("HBeAb-J").contains("阳")||params.get("HBeAb-J").contains("陽")?true:false; + } } if (StringUtils.isNotEmpty(params.get("HBeAb"))){ p=true; patients.setHBeAbJ(params.get("HBeAb")); + if (!amy){ + amy= params.get("HBeAb").contains("阳")||params.get("HBeAb").contains("陽")?true:false; + } } if (StringUtils.isNotEmpty(params.get("HBeAg-j"))){ p=true; patients.setHBeAgj(params.get("HBeAg-j")); + if (!amy){ + amy= params.get("HBeAg-J").contains("阳")||params.get("HBeAg-J").contains("陽")?true:false; + } } if (StringUtils.isNotEmpty(params.get("HBeAg"))){ p=true; patients.setHBeAgj(params.get("HBeAg")); + if (!amy){ + amy= params.get("HBeAg").contains("阳")||params.get("HBeAg").contains("陽")?true:false; + } } if (StringUtils.isNotEmpty(params.get("HBsAb-J"))){ p=true; patients.setHBsAbJ(params.get("HBsAb-J")); + if (!amy){ + amy= params.get("HBsAb-J").contains("阴")?true:false; + } } if (StringUtils.isNotEmpty(params.get("HBsAb"))){ p=true; patients.setHBsAbJ(params.get("HBsAb")); + if (!amy){ + amy= params.get("HBsAb").contains("阴")?true:false; + } } if (StringUtils.isNotEmpty(params.get("HBsAg-J"))){ p=true; patients.setHBsAgJ(params.get("HBsAg-J")); + if (!amy){ + amy= params.get("HBsAg-J").contains("阳")||params.get("HBsAg-J").contains("陽")?true:false; + } } if (StringUtils.isNotEmpty(params.get("HBsAg"))){ p=true; patients.setHBsAgJ(params.get("HBsAg")); + if (!amy){ + amy= params.get("HBsAg").contains("阳")||params.get("HBsAg").contains("陽")?true:false; + } } if (StringUtils.isNotEmpty(params.get("HIV(1+2)抗体-J"))){ p=true; patients.setHIVJ(params.get("HIV(1+2)抗体-J")); + if (!amy){ + amy= params.get("HIV(1+2)抗体-J").contains("阳")||params.get("HIV(1+2)抗体-J").contains("陽")?true:false; + } } if (StringUtils.isNotEmpty(params.get("HIV(1+2)抗体"))) { p=true; patients.setHIVJ(params.get("HIV(1+2)抗体")); + if (!amy){ + amy= params.get("HIV(1+2)抗体").contains("阳")||params.get("HIV(1+2)抗体").contains("陽")?true:false; + } } if (StringUtils.isNotEmpty(params.get("TP—抗体"))){ p=true; patients.setTp(params.get("TP—抗体")); + if (!amy){ + amy= params.get("TP—抗体").contains("阳")||params.get("TP—抗体").contains("陽")?true:false; + } } if (StringUtils.isNotEmpty(params.get("TP-抗体"))){ p=true; patients.setTp(params.get("TP-抗体")); + if (!amy){ + amy= params.get("TP-抗体").contains("阳")||params.get("TP-抗体").contains("陽")?true:false; + } } if (p){ /* if (StringUtils.isNotEmpty(applyDoctor)&&canConvertToInt(applyDoctor)){ patients.setLastCheckEmployeeId(applyDoctor); }*/ + if (amy){ + patients.setDtAmy(0); + } patientsService.updatePatientOne(patients,patients.getId()); } } else { if (antExChuModel != null &&type==1) { boolean b = false; boolean p=false; + boolean amy=false; if (StringUtils.isNotEmpty(params.get("HGB"))) { b = true; antExChuModel.setXhdb(params.get("HGB")); @@ -556,63 +605,110 @@ public class LisServiceImpl implements LisService { if (StringUtils.isNotEmpty(params.get("HBcAb-J"))){ p=true; patients.setHBcAbJ(params.get("HBcAb-J")); + if (!amy){ + amy= params.get("HBcAb-J").contains("阳")||params.get("HBcAb-J").contains("陽")?true:false; + } + } if (StringUtils.isNotEmpty(params.get("HBcAb"))){ p=true; patients.setHBcAbJ(params.get("HBcAb")); + if (!amy){ + amy= params.get("HBcAb").contains("阳")||params.get("HBcAb").contains("陽")?true:false; + } + } if (StringUtils.isNotEmpty(params.get("HBeAb-J"))){ p=true; patients.setHBeAbJ(params.get("HBeAb-J")); + if (!amy){ + amy= params.get("HBeAb-J").contains("阳")||params.get("HBeAb-J").contains("陽")?true:false; + } } if (StringUtils.isNotEmpty(params.get("HBeAb"))){ p=true; patients.setHBeAbJ(params.get("HBeAb")); + if (!amy){ + amy= params.get("HBeAb").contains("阳")||params.get("HBeAb").contains("陽")?true:false; + } } if (StringUtils.isNotEmpty(params.get("HBeAg-j"))){ p=true; patients.setHBeAgj(params.get("HBeAg-j")); + if (!amy){ + amy= params.get("HBeAg-J").contains("阳")||params.get("HBeAg-J").contains("陽")?true:false; + } } if (StringUtils.isNotEmpty(params.get("HBeAg"))){ p=true; patients.setHBeAgj(params.get("HBeAg")); + if (!amy){ + amy= params.get("HBeAg").contains("阳")||params.get("HBeAg").contains("陽")?true:false; + } } if (StringUtils.isNotEmpty(params.get("HBsAb-J"))){ p=true; patients.setHBsAbJ(params.get("HBsAb-J")); + if (!amy){ + amy= params.get("HBsAb-J").contains("阴")?true:false; + } } if (StringUtils.isNotEmpty(params.get("HBsAb"))){ p=true; patients.setHBsAbJ(params.get("HBsAb")); + if (!amy){ + amy= params.get("HBsAb").contains("阴")?true:false; + } } if (StringUtils.isNotEmpty(params.get("HBsAg-J"))){ p=true; patients.setHBsAgJ(params.get("HBsAg-J")); + if (!amy){ + amy= params.get("HBsAg-J").contains("阳")||params.get("HBsAg-J").contains("陽")?true:false; + } } if (StringUtils.isNotEmpty(params.get("HBsAg"))){ p=true; patients.setHBsAgJ(params.get("HBsAg")); + if (!amy){ + amy= params.get("HBsAg").contains("阳")||params.get("HBsAg").contains("陽")?true:false; + } } if (StringUtils.isNotEmpty(params.get("HIV(1+2)抗体-J"))){ p=true; patients.setHIVJ(params.get("HIV(1+2)抗体-J")); + if (!amy){ + amy= params.get("HIV(1+2)抗体-J").contains("阳")||params.get("HIV(1+2)抗体-J").contains("陽")?true:false; + } } if (StringUtils.isNotEmpty(params.get("HIV(1+2)抗体"))) { p=true; patients.setHIVJ(params.get("HIV(1+2)抗体")); + if (!amy){ + amy= params.get("HIV(1+2)抗体").contains("阳")||params.get("HIV(1+2)抗体").contains("陽")?true:false; + } } if (StringUtils.isNotEmpty(params.get("TP—抗体"))){ p=true; patients.setTp(params.get("TP—抗体")); + if (!amy){ + amy= params.get("TP—抗体").contains("阳")||params.get("TP—抗体").contains("陽")?true:false; + } } if (StringUtils.isNotEmpty(params.get("TP-抗体"))){ p=true; patients.setTp(params.get("TP-抗体")); + if (!amy){ + amy= params.get("TP-抗体").contains("阳")||params.get("TP-抗体").contains("陽")?true:false; + } } if (p){ /* if (StringUtils.isNotEmpty(applyDoctor)&&canConvertToInt(applyDoctor)){ patients.setLastCheckEmployeeId(applyDoctor); }*/ + if (amy){ + patients.setDtAmy(0); + } patientsService.updatePatientOne(patients,patients.getId()); } @@ -816,23 +912,33 @@ public class LisServiceImpl implements LisService { private String getResult(String code,String name,LisCrisisItem crisisItem){ if (code.equals("HBcAb")){ if ("乙型肝炎核心抗体(发光法)".equals(name)){ - return crisisItem.getResult(); + return crisisItem.getResult().contains("阴") + ||crisisItem.getResult().contains("阳") + ||crisisItem.getResult().contains("陽")?crisisItem.getResult():buildEmergency(crisisItem); } }else if (code.equals("HBeAb")){ if ("乙型肝炎e抗体(发光法)".equals(name)){ - return crisisItem.getResult(); + return crisisItem.getResult().contains("阴") + ||crisisItem.getResult().contains("阳") + ||crisisItem.getResult().contains("陽")?crisisItem.getResult():buildEmergency(crisisItem); } }else if (code.equals("HBeAg")){ if ("乙型肝炎e抗原(发光法)".equals(name)){ - return buildEmergency(crisisItem); + return crisisItem.getResult().contains("阴") + ||crisisItem.getResult().contains("阳") + ||crisisItem.getResult().contains("陽")?crisisItem.getResult():buildEmergency(crisisItem); } }else if (code.equals("HBsAb")){ if ("乙型肝炎表面抗体(发光法)".equals(name)){ - return buildEmergency(crisisItem); + return crisisItem.getResult().contains("阴") + ||crisisItem.getResult().contains("阳") + ||crisisItem.getResult().contains("陽")?crisisItem.getResult():buildEmergency(crisisItem); } }else if (code.equals("HBsAg")){ if ("乙型肝炎表面抗原(发光法)".equals(name)){ - return buildEmergency(crisisItem); + return crisisItem.getResult().contains("阴") + ||crisisItem.getResult().contains("阳") + ||crisisItem.getResult().contains("陽")?crisisItem.getResult():buildEmergency(crisisItem); } }else { return crisisItem.getResult(); @@ -851,9 +957,9 @@ public class LisServiceImpl implements LisService { BigDecimal b=new BigDecimal(array[1]); BigDecimal a=new BigDecimal(arrays[1]); if (b.compareTo(a)>0){ - return "阳性"; + return "阳性["+b.toPlainString()+"]"; }else { - return "阴性"; + return "阴性["+b.toPlainString()+"]"; } } return null; diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/Patients.java b/platform-dal/src/main/java/com/lyms/platform/pojo/Patients.java index 108f83c..c669f88 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/Patients.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/Patients.java @@ -514,6 +514,8 @@ public class Patients extends BaseModel { private String HIVJ;//人类免疫缺陷病毒抗体 private String tp;//梅毒螺旋体抗体 + private Integer dtAmy; // 大同艾梅乙审核状态 0为未审核 + //大同职工 1为是 0为否 private Integer userType; private String dept; @@ -527,6 +529,14 @@ public class Patients extends BaseModel { //大同his同步分娩建档数据 不给护士及门诊展示 住院用 默认为0 private Integer dtFm; + public Integer getDtAmy() { + return dtAmy; + } + + public void setDtAmy(Integer dtAmy) { + this.dtAmy = dtAmy; + } + public Integer getDtFm() { return dtFm; } diff --git a/platform-dal/src/main/java/com/lyms/platform/query/PatientsQuery.java b/platform-dal/src/main/java/com/lyms/platform/query/PatientsQuery.java index 11ebb25..4239dea 100644 --- a/platform-dal/src/main/java/com/lyms/platform/query/PatientsQuery.java +++ b/platform-dal/src/main/java/com/lyms/platform/query/PatientsQuery.java @@ -457,6 +457,18 @@ public class PatientsQuery extends BaseQuery implements IConvertToNativeQuery { private String allPats; //大同艾梅乙查询 private String diseaseType; + + + private Integer dtAmy; + + public Integer getDtAmy() { + return dtAmy; + } + + public void setDtAmy(Integer dtAmy) { + this.dtAmy = dtAmy; + } + private MongoCondition condition2; public String getDiseaseType() { @@ -1411,7 +1423,12 @@ public class PatientsQuery extends BaseQuery implements IConvertToNativeQuery { c1 = c.orCondition(new MongoCondition[]{con1, con2}).getCriteria(); } } + if (dtAmy!=null){ + condition=condition.and("dtAmy",0,MongoOper.IS); + } + if(StringUtils.isNotEmpty(diseaseType)){ + condition=condition.and("dtAmy",0,MongoOper.IS); MongoCondition c = MongoCondition.newInstance(); List mongoCondits = new ArrayList <>(); //乙肝查询 @@ -1421,24 +1438,24 @@ public class PatientsQuery extends BaseQuery implements IConvertToNativeQuery { // hBsAbJ;//乙肝e抗体 阳 // hBsAgJ;//乙肝核心抗体 if (diseaseType.equals(DiseaseTypeEnums.YIGAN.getName())) { - mongoCondits.add(new MongoCondition("hBcAbJ", "阳", MongoOper.LIKE)); - mongoCondits.add(new MongoCondition("hBeAbJ", "阳", MongoOper.LIKE)); - mongoCondits.add(new MongoCondition("hBeAgj", "阳", MongoOper.LIKE)); + mongoCondits.add(new MongoCondition("hBcAbJ", "阳", MongoOper.LIKE).orCondition(new MongoCondition("hBcAbJ", "陽", MongoOper.LIKE))); + mongoCondits.add(new MongoCondition("hBeAbJ", "阳", MongoOper.LIKE).orCondition(new MongoCondition("hBeAbJ", "陽", MongoOper.LIKE))); + mongoCondits.add(new MongoCondition("hBeAgj", "阳", MongoOper.LIKE).orCondition(new MongoCondition("hBeAgj", "陽", MongoOper.LIKE))); mongoCondits.add(new MongoCondition("hBsAbJ", "阴", MongoOper.LIKE)); - mongoCondits.add(new MongoCondition("hBsAgJ", "阳", MongoOper.LIKE)); + mongoCondits.add(new MongoCondition("hBsAgJ", "阳", MongoOper.LIKE).orCondition(new MongoCondition("hBsAgJ", "陽", MongoOper.LIKE))); }else if (diseaseType.equals(DiseaseTypeEnums.MEIDU.getName())) { //梅毒查询 - mongoCondits.add(new MongoCondition("tp", "阳", MongoOper.LIKE).orCondition(new MongoCondition("syjg", "", MongoOper.NE))); - mongoCondits.add(new MongoCondition("HIVJ", "阳", MongoOper.LIKE).orCondition(new MongoCondition("hivkt", "", MongoOper.NE))); + mongoCondits.add(new MongoCondition("tp", "阳", MongoOper.LIKE).orCondition(new MongoCondition("tp", "陽", MongoOper.LIKE))); + mongoCondits.add(new MongoCondition("HIVJ", "阳", MongoOper.LIKE).orCondition(new MongoCondition("HIVJ", "陽", MongoOper.LIKE))); }else { - mongoCondits.add(new MongoCondition("hBcAbJ", "阳", MongoOper.LIKE)); - mongoCondits.add(new MongoCondition("hBeAbJ", "阳", MongoOper.LIKE)); - mongoCondits.add(new MongoCondition("hBeAgj", "阳", MongoOper.LIKE)); + mongoCondits.add(new MongoCondition("hBcAbJ", "阳", MongoOper.LIKE).orCondition(new MongoCondition("hBcAbJ", "陽", MongoOper.LIKE))); + mongoCondits.add(new MongoCondition("hBeAbJ", "阳", MongoOper.LIKE).orCondition(new MongoCondition("hBeAbJ", "陽", MongoOper.LIKE))); + mongoCondits.add(new MongoCondition("hBeAgj", "阳", MongoOper.LIKE).orCondition(new MongoCondition("hBeAgj", "陽", MongoOper.LIKE))); mongoCondits.add(new MongoCondition("hBsAbJ", "阴", MongoOper.LIKE)); - mongoCondits.add(new MongoCondition("hBsAgJ", "阳", MongoOper.LIKE)); - mongoCondits.add(new MongoCondition("tp", "阳", MongoOper.LIKE).orCondition(new MongoCondition("syjg", "", MongoOper.NE))); - mongoCondits.add(new MongoCondition("HIVJ", "阳", MongoOper.LIKE).orCondition(new MongoCondition("hivkt", "", MongoOper.NE))); + mongoCondits.add(new MongoCondition("hBsAgJ", "阳", MongoOper.LIKE).orCondition(new MongoCondition("hBsAgJ", "陽", MongoOper.LIKE))); + mongoCondits.add(new MongoCondition("tp", "阳", MongoOper.LIKE).orCondition(new MongoCondition("tp", "陽",MongoOper.LIKE))); + mongoCondits.add(new MongoCondition("HIVJ", "阳", MongoOper.LIKE).orCondition(new MongoCondition("HIVJ", "陽", MongoOper.LIKE))); } if (c1 != null) { c1 = c1.andOperator(c.orCondition(mongoCondits.toArray(new MongoCondition[mongoCondits.size()])).getCriteria()); diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/LisController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/LisController.java index 6211dde..40cf9cb 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/LisController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/LisController.java @@ -114,6 +114,14 @@ public class LisController extends BaseController { } return lisService.saveLisData(list,commonThreadPool); } + @RequestMapping(method = RequestMethod.GET, value = "/test/saveLisData") + @ResponseBody + public BaseResponse saveLisDataTemp(HttpServletRequest httpServletRequest) { + LisReportQuery query=new LisReportQuery(); + query.setHospitalId("2100002419"); + return lisService.saveLisData(lisService.queryLisDataByQuery(query),commonThreadPool); + } + @RequestMapping(method = RequestMethod.POST, value = "/saveLisDataTemp") @ResponseBody public Integer saveLisDataTemp(@RequestBody LisReportModel models, diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PuerperaManageController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PuerperaManageController.java index f9d0f77..588a092 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PuerperaManageController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PuerperaManageController.java @@ -625,6 +625,21 @@ public class PuerperaManageController extends BaseController { * * @return 返回结果 */ + @RequestMapping(value = "/queryAmyPatientsCount", method = RequestMethod.GET) + @ResponseBody + @TokenRequired + public BaseResponse queryAmyPatientsCount( HttpServletRequest request){ + LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); + return patientFacade.queryAmyPatientsCount(loginState.getId()); + } + + + + /** + * 艾梅乙孕妇管理 + * + * @return 返回结果 + */ @RequestMapping(value = "/queryAmyPatients", method = RequestMethod.GET) @ResponseBody @TokenRequired diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntenatalExaminationFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntenatalExaminationFacade.java index 0fafd76..a5ec50d 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntenatalExaminationFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntenatalExaminationFacade.java @@ -691,12 +691,15 @@ public class AntenatalExaminationFacade { try { if (patients != null) { patients.setVcCardNo(antExAddRequest.getVcCardNo()); + if (antExAddRequest.getIsAmy()!=null){ + patients.setDtAmy(1); + } //发送推送消息 if (antExamModel.getSendMsg() != null && antExamModel.getSendMsg()) { //发送推送消息 patients.setSendMsgTime(new Date()); } - if (antExamModel.getSendMsg() != null || StringUtils.isNotEmpty(antExAddRequest.getVcCardNo())) { + if (antExAddRequest.getIsAmy()!=null || antExamModel.getSendMsg() != null || StringUtils.isNotEmpty(antExAddRequest.getVcCardNo())) { patientsService.updatePatient(patients); } } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/LisFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/LisFacade.java index 7fb667d..6ead1ae 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/LisFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/LisFacade.java @@ -440,6 +440,9 @@ public class LisFacade { }//衡水冀州六院 else if("2100002324".equals(model.getHospitalId())){ model.setVcCardNo(cardNo); + }else if ("2100002419".equals(model.getHospitalId())){ + //大同 + model.setVcCardNo(cardNo); } // //昌邑市妇幼保健院 lis检查表中存的是病历号 需要用身份证号码转换成病历好查询 // else if("2100001605".equals(model.getHospitalId())){ diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientFacade.java index d70090d..48a5bbb 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientFacade.java @@ -704,6 +704,21 @@ public class PatientFacade extends BaseServiceImpl { return patientsQuery; } + + public BaseResponse queryAmyPatientsCount(Integer userId){ + String hospital = autoMatchFacade.getHospitalId(userId); + PatientsQuery patientsQuery =new PatientsQuery(); + patientsQuery.setDtFm(true); + patientsQuery.setDtAmy(0); + patientsQuery.setHospitalId(hospital); + patientsQuery.setYn(1); + patientsQuery.setType(1); + int count= patientsService.queryPatientCount(patientsQuery); + BaseResponse baseResponse= new BaseResponse(); + baseResponse.setObject(count); + baseResponse.setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功"); + return baseResponse; + } /** * 大同艾梅乙查询 * @param userId diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/AntExAddRequest.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/AntExAddRequest.java index 6084914..2eabca9 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/AntExAddRequest.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/AntExAddRequest.java @@ -441,6 +441,16 @@ public class AntExAddRequest implements IBasicRequestConvert