Commit 315a44240d6703bdc9c75b99d14dfbab0e6b1b06
1 parent
e364da5a59
Exists in
master
and in
6 other branches
承德市妇幼上线两癌需求-宫颈癌检查记录添加修改时,添加宫颈癌随访主表。-5B.CIN 2/3治疗后2-3次随访阴性的长期随访-业务逻辑
Showing 2 changed files with 63 additions and 3 deletions
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/CancerScreeningFacade.java
View file @
315a442
... | ... | @@ -645,6 +645,7 @@ |
645 | 645 | breastAfterVisitModel.setNextAfterVisitTime(DateUtil.addMonth(cancerScreeningModel.getCreated(),3)); |
646 | 646 | } |
647 | 647 | } |
648 | + //新增和修改追访主表 | |
648 | 649 | if(type==1) { |
649 | 650 | breastAfterVisitModel.setNewRxCssj(cancerScreeningModel.getNewRxCssj()); |
650 | 651 | breastAfterVisitModel.setParentId(cancerScreeningModel.getId()); |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/CervicalCancerServiceImpl.java
View file @
315a442
... | ... | @@ -846,6 +846,11 @@ |
846 | 846 | ydhjzd= (Integer) cervicalCancerRequest.getFormData().get("ydhjzd"); |
847 | 847 | cervixVisitModel.setYdhjzd(ydhjzd); |
848 | 848 | } |
849 | + /** | |
850 | + * 1A缺乏过往HPV结果者,宫颈筛查异常的即时和5年累积CIN3风险 | |
851 | + *11.未知HPV史,通过HPV分型和细胞学预测CIN3+风险 | |
852 | + *12.未知HPV史,通过HPV分型和细胞学预测CIN3+风险 | |
853 | + */ | |
849 | 854 | if(hpv==1){//既往史HPV |
850 | 855 | if(xshpv==1){//现实HPV |
851 | 856 | switch (xsxbx){ |
... | ... | @@ -921,6 +926,9 @@ |
921 | 926 | break; |
922 | 927 | } |
923 | 928 | } |
929 | + /** | |
930 | + * 1B过往HPV(-)者,宫颈筛查异常的即时和5年累积CIN3风险 | |
931 | + */ | |
924 | 932 | if(hpv==2) {//既往史HPV |
925 | 933 | if(xshpv==1){//现实HPV |
926 | 934 | switch (xsxbx){ |
... | ... | @@ -954,6 +962,9 @@ |
954 | 962 | } |
955 | 963 | } |
956 | 964 | } |
965 | + /** | |
966 | + * 2AHPV(-)ASCUS随访者即时和5年累积CIN3风险 | |
967 | + */ | |
957 | 968 | if(hpv==2&&xbx==2){//既往史HPV和细胞学 |
958 | 969 | if(xshpv==1) {//现实HPV |
959 | 970 | switch (xsxbx){ |
... | ... | @@ -991,6 +1002,9 @@ |
991 | 1002 | cervixVisitModel.setRecommendVisitTime(cervicalCancerRequest.getCreated()); |
992 | 1003 | } |
993 | 1004 | } |
1005 | + /** | |
1006 | + * 2BHPV(-)LSIL随访者即时和5年累积CIN3风险 | |
1007 | + */ | |
994 | 1008 | if(hpv==2&&xbx==3) {//既往史HPV和细胞学 |
995 | 1009 | if(xshpv==1) {//现实HPV |
996 | 1010 | switch (xsxbx){ |
... | ... | @@ -1028,6 +1042,9 @@ |
1028 | 1042 | cervixVisitModel.setRecommendVisitTime(cervicalCancerRequest.getCreated()); |
1029 | 1043 | } |
1030 | 1044 | } |
1045 | + /** | |
1046 | + * 2CHPV(+)NILM随访者即时和5年累积CIN3风险 | |
1047 | + */ | |
1031 | 1048 | if(hpv==3&&xbx==4) {//既往史HPV和细胞学 |
1032 | 1049 | if(xshpv==1) {//现实HPV |
1033 | 1050 | if(Arrays.asList(2,3,4).contains(xsxbx)){ |
1034 | 1051 | |
... | ... | @@ -1058,12 +1075,19 @@ |
1058 | 1075 | cervixVisitModel.setRecommendVisitTime(cervicalCancerRequest.getCreated()); |
1059 | 1076 | } |
1060 | 1077 | } |
1078 | + /** | |
1079 | + * 3阴道镜检查后的即时和5年累积CIN3风险 | |
1080 | + */ | |
1061 | 1081 | if(Arrays.asList(1,2,3).contains(hpv)&&Arrays.asList(5,6,7).contains(xbx)){//既往史HPV和细胞学 |
1062 | 1082 | if(ydhjzd==1||ydhjzd==2){//现实阴道活检诊断 |
1063 | 1083 | cervixVisitModel.setRuleRecommend(1); |
1064 | 1084 | cervixVisitModel.setRecommendVisitTime(cervicalCancerRequest.getCreated()); |
1065 | 1085 | } |
1066 | 1086 | } |
1087 | + /** | |
1088 | + * 4A.LSIL阴道镜<CIN 2 者随访的即时和5年累积CIN3风险 | |
1089 | + * 4B.HSIL阴道镜<CIN 2 者随访的即时和5年累积CIN3风险 | |
1090 | + */ | |
1067 | 1091 | if(cin==3){//CIN(因为2个表的CIN条件相同,只需细胞学分别判断) |
1068 | 1092 | switch (xbx){//细胞学 |
1069 | 1093 | case 3: |
... | ... | @@ -1111,6 +1135,9 @@ |
1111 | 1135 | break; |
1112 | 1136 | } |
1113 | 1137 | } |
1138 | + /** | |
1139 | + * 5A.CIN 2/3治疗后的即时和5年累积CIN3风险 | |
1140 | + */ | |
1114 | 1141 | if(cin23==2){//cin23值 |
1115 | 1142 | if(xshpv==1){//现实HPV |
1116 | 1143 | if(Arrays.asList(2,3,4,8).contains(xsxbx)){ |
1117 | 1144 | |
... | ... | @@ -1130,10 +1157,42 @@ |
1130 | 1157 | } |
1131 | 1158 | } |
1132 | 1159 | } |
1133 | - if(cin23==2&&hpv==2&&xbx==1){ | |
1134 | - cervixVisitModel.setRuleRecommend(1); | |
1160 | + /** | |
1161 | + * 5B.CIN 2/3治疗后2-3次随访阴性的长期随访 | |
1162 | + */ | |
1163 | + if(cin23==2){ | |
1164 | + if(hpv==2&&xbx==1&&xshpv==1&&xsxbx==1){//既往史和现实,双检测(-)代表HPV和细胞学都是阴性 | |
1165 | + cervixVisitModel.setRuleRecommend(1); | |
1166 | + } | |
1167 | + if(hpv==2&&xshpv==1){//既往史和现实,HPV 都是阴性 | |
1168 | + cervixVisitModel.setRuleRecommend(1); | |
1169 | + } | |
1170 | + //查询历史宫颈检查记录 | |
1171 | + Query query=new Query(); | |
1172 | + Criteria criteria = Criteria.where("parentId").is(cervicalCancerRequest.getParentId()); | |
1173 | + criteria.and("created").lte(cervicalCancerRequest.getCreated()); | |
1174 | + query.addCriteria(criteria); | |
1175 | + query.with(new Sort(Sort.Direction.DESC, "created")); | |
1176 | + List<CervicalCancerModel> models = mongoTemplate.find(query, CervicalCancerModel.class); | |
1177 | + if (models.size()>1) { | |
1178 | + Integer lastHpv=0,lastXbx=0; | |
1179 | + if(null!=models.get(1).getFormData().get("hpv")){ | |
1180 | + lastHpv= (Integer) models.get(1).getFormData().get("hpv"); | |
1181 | + } | |
1182 | + if(null!=models.get(1).getFormData().get("xbx")){ | |
1183 | + lastXbx= (Integer) models.get(1).getFormData().get("xbx"); | |
1184 | + } | |
1185 | + //双检测(-)*2,既往史,当前HPV和细胞学都是阴性,且上次宫颈检查HPV和细胞学都是阴性,且现实,当前HPV和细胞学都是阴性 | |
1186 | + if(hpv==2&&xbx==1&&lastHpv==2&&lastXbx==1&&xshpv==1&&xsxbx==1){ | |
1187 | + cervixVisitModel.setRuleRecommend(2); | |
1188 | + } | |
1189 | + //HPV(-)*2,既往史,当前HPV是阴性,且上次宫颈检查HPV是阴性,且现实,当前HPV是阴性 | |
1190 | + if(hpv==2&&lastHpv==2&&xshpv==1){ | |
1191 | + cervixVisitModel.setRuleRecommend(2); | |
1192 | + } | |
1193 | + } | |
1135 | 1194 | } |
1136 | - | |
1195 | + //新增和修改随访主表 | |
1137 | 1196 | if(type==1) { |
1138 | 1197 | cervixVisitModel.setParentId(cervicalCancerRequest.getId()); |
1139 | 1198 | cervixVisitModel.setHospitalId(cervicalCancerRequest.getHospitalId()); |