|
|
@@ -1,7 +1,6 @@
|
|
|
package org.jeecg;
|
|
|
|
|
|
import cn.hutool.core.collection.CollectionUtil;
|
|
|
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.apache.commons.lang.StringUtils;
|
|
|
import org.jeecg.common.util.DateUtils;
|
|
|
@@ -10,7 +9,6 @@ import org.jeecg.modules.medical.entity.AfterwardsAudit;
|
|
|
import org.jeecg.modules.medical.entity.AfterwardsAuditDetail;
|
|
|
import org.jeecg.modules.medical.entity.AfterwardsIncidentAuditDiagnose;
|
|
|
import org.jeecg.modules.medical.entity.MedicalInsRuleInfo;
|
|
|
-import org.jeecg.modules.medical.entity.MedicalInsRuleProject;
|
|
|
import org.jeecg.modules.medical.entity.MidIncidentAudit;
|
|
|
import org.jeecg.modules.medical.entity.MidIncidentAuditDetail;
|
|
|
import org.jeecg.modules.medical.entity.MidIncidentAuditDiagnose;
|
|
|
@@ -50,7 +48,6 @@ import java.util.List;
|
|
|
import java.util.Map;
|
|
|
import java.util.Random;
|
|
|
import java.util.Set;
|
|
|
-import java.util.concurrent.ConcurrentHashMap;
|
|
|
|
|
|
/**
|
|
|
* @author soft01
|
|
|
@@ -120,8 +117,8 @@ public class MidAuditDataTest {
|
|
|
IMidIncidentAuditDetailService midIncidentAuditDetailService;
|
|
|
@Autowired
|
|
|
IMidIncidentAuditDiagnoseService midIncidentAuditDiagnoseService;
|
|
|
- @Autowired
|
|
|
-// IMidIncidentAuditDiagnoseService midIncidentAuditDiagnoseService;
|
|
|
+
|
|
|
+
|
|
|
@Test
|
|
|
public void testJob() {
|
|
|
try {
|
|
|
@@ -132,16 +129,16 @@ public class MidAuditDataTest {
|
|
|
}
|
|
|
|
|
|
@Test
|
|
|
- public void genMidDiag(){
|
|
|
+ public void genMidDiag() {
|
|
|
List<MidIncidentAudit> midIncidentAuditList = midIncidentAuditService.lambdaQuery().list();
|
|
|
log.info("进入查询,数据条数:{}", midIncidentAuditList.size());
|
|
|
|
|
|
List<MidIncidentAuditDiagnose> midIncidentAuditDiagnoseList = new ArrayList<>();
|
|
|
MidIncidentAuditDiagnose midIncidentAuditDiagnose = null;
|
|
|
- for(MidIncidentAudit midIncidentAudit : midIncidentAuditList){
|
|
|
+ for (MidIncidentAudit midIncidentAudit : midIncidentAuditList) {
|
|
|
midIncidentAuditDiagnose = new MidIncidentAuditDiagnose();
|
|
|
List<SttlMasterBill> sttlMasterBills = sttlMasterBillService.lambdaQuery().eq(SttlMasterBill::getJsdjh, midIncidentAudit.getPrescriptionNumber()).list();
|
|
|
- if(CollectionUtil.isEmpty(sttlMasterBills)){
|
|
|
+ if (CollectionUtil.isEmpty(sttlMasterBills)) {
|
|
|
continue;
|
|
|
}
|
|
|
SttlMasterBill sttlMasterBill = sttlMasterBills.get(0);
|
|
|
@@ -161,16 +158,16 @@ public class MidAuditDataTest {
|
|
|
|
|
|
|
|
|
@Test
|
|
|
- public void genAfterDiag(){
|
|
|
+ public void genAfterDiag() {
|
|
|
List<AfterwardsAudit> midIncidentAuditList = afterwardsAuditService.lambdaQuery().list();
|
|
|
log.info("进入查询,数据条数:{}", midIncidentAuditList.size());
|
|
|
|
|
|
List<AfterwardsIncidentAuditDiagnose> midIncidentAuditDiagnoseList = new ArrayList<>();
|
|
|
AfterwardsIncidentAuditDiagnose midIncidentAuditDiagnose = null;
|
|
|
- for(AfterwardsAudit afterwardsAudit : midIncidentAuditList){
|
|
|
+ for (AfterwardsAudit afterwardsAudit : midIncidentAuditList) {
|
|
|
midIncidentAuditDiagnose = new AfterwardsIncidentAuditDiagnose();
|
|
|
List<SttlMasterBill> sttlMasterBills = sttlMasterBillService.lambdaQuery().eq(SttlMasterBill::getJsdjh, afterwardsAudit.getPrescriptionNumber()).list();
|
|
|
- if(CollectionUtil.isEmpty(sttlMasterBills)){
|
|
|
+ if (CollectionUtil.isEmpty(sttlMasterBills)) {
|
|
|
continue;
|
|
|
}
|
|
|
SttlMasterBill sttlMasterBill = sttlMasterBills.get(0);
|
|
|
@@ -188,20 +185,20 @@ public class MidAuditDataTest {
|
|
|
afterwardsIncidentAuditDiagnoseService.saveBatch(midIncidentAuditDiagnoseList, 1000);
|
|
|
}
|
|
|
|
|
|
-// @Test
|
|
|
- public void getAfterToMid(){
|
|
|
+ // @Test
|
|
|
+ public void getAfterToMid() {
|
|
|
log.info("进入查询");
|
|
|
List<AfterwardsAudit> afterwardsAuditList = afterwardsAuditService.lambdaQuery().list();
|
|
|
log.info("数据条数:{}", afterwardsAuditList.size());
|
|
|
MidIncidentAudit midIncidentAudit = new MidIncidentAudit();
|
|
|
List<MidIncidentAudit> midIncidentAuditList = new ArrayList<>();
|
|
|
- for(AfterwardsAudit audit : afterwardsAuditList){
|
|
|
+ for (AfterwardsAudit audit : afterwardsAuditList) {
|
|
|
SttlMasterBill sttlMasterBill = sttlMasterBillService.lambdaQuery().eq(SttlMasterBill::getJsdjh, audit.getPrescriptionNumber()).one();
|
|
|
- if(null == sttlMasterBill){
|
|
|
+ if (null == sttlMasterBill) {
|
|
|
continue;
|
|
|
}
|
|
|
Long count = afterwardsAuditDetailService.lambdaQuery().eq(AfterwardsAuditDetail::getAfterwardsAuditId, audit.getId()).isNotNull(AfterwardsAuditDetail::getMedicalInsRuleInfoId).count();
|
|
|
- if(null == count || count<=0){
|
|
|
+ if (null == count || count <= 0) {
|
|
|
continue;
|
|
|
}
|
|
|
midIncidentAudit = new MidIncidentAudit();
|
|
|
@@ -242,7 +239,7 @@ public class MidAuditDataTest {
|
|
|
List<MidIncidentAudit> midIncidentAuditList = midIncidentAuditService.lambdaQuery().ne(MidIncidentAudit::getId, 45).list();
|
|
|
|
|
|
|
|
|
- for(MidIncidentAudit midIncidentAudit : midIncidentAuditList){
|
|
|
+ for (MidIncidentAudit midIncidentAudit : midIncidentAuditList) {
|
|
|
// QueryWrapper<MedicalInsRuleProject> mrPQueryWrapper = new QueryWrapper();
|
|
|
// medicalInsRuleInfoService.lambdaQuery().last()
|
|
|
|
|
|
@@ -250,7 +247,7 @@ public class MidAuditDataTest {
|
|
|
List<AfterwardsAuditDetail> afterwardsAuditDetails = afterwardsAuditDetailService.lambdaQuery().eq(AfterwardsAuditDetail::getPrescriptionNumber, midIncidentAudit.getPrescriptionNumber()).list();
|
|
|
List<MidIncidentAuditDetail> midIncidentAuditDetails = new ArrayList<>();
|
|
|
MidIncidentAuditDetail midIncidentAuditDetail = null;
|
|
|
- for(AfterwardsAuditDetail afterwardsAuditDetail : afterwardsAuditDetails){
|
|
|
+ for (AfterwardsAuditDetail afterwardsAuditDetail : afterwardsAuditDetails) {
|
|
|
// String lastSql = "INSTR("+afterwardsAuditDetail.getMedicalProjectCode()+",project_code)";
|
|
|
// List<MedicalInsRuleProject> medicalInsRuleProjectList = medicalInsRuleProjectService.lambdaQuery().eq(MedicalInsRuleProject::getState, Constant.EFF_STATE).last(lastSql).list();
|
|
|
// if (!CollectionUtil.isNotEmpty(medicalInsRuleProjectList)) {
|
|
|
@@ -258,45 +255,45 @@ public class MidAuditDataTest {
|
|
|
// continue;
|
|
|
// }
|
|
|
|
|
|
- SttlMasterDetailBill sttlMasterDetailBill = sttlMasterDetailBillService.lambdaQuery().eq(SttlMasterDetailBill::getJsdjh, afterwardsAuditDetail.getPrescriptionNumber()).eq(SttlMasterDetailBill::getYbxmbm, afterwardsAuditDetail.getMedicalProjectCode()).list().get(0);
|
|
|
+ SttlMasterDetailBill sttlMasterDetailBill = sttlMasterDetailBillService.lambdaQuery().eq(SttlMasterDetailBill::getJsdjh, afterwardsAuditDetail.getPrescriptionNumber()).eq(SttlMasterDetailBill::getYbxmbm, afterwardsAuditDetail.getMedicalProjectCode()).list().get(0);
|
|
|
// for(SttlMasterDetailBill sttlMasterDetailBill : sttlMasterDetailBillList) {
|
|
|
- midIncidentAuditDetail = new MidIncidentAuditDetail();
|
|
|
- midIncidentAuditDetail.setMidIncidentAuditId(midIncidentAudit.getId());
|
|
|
+ midIncidentAuditDetail = new MidIncidentAuditDetail();
|
|
|
+ midIncidentAuditDetail.setMidIncidentAuditId(midIncidentAudit.getId());
|
|
|
|
|
|
- midIncidentAuditDetail.setUseDay(Integer.parseInt(sttlMasterDetailBill.get用药天数()));
|
|
|
+ midIncidentAuditDetail.setUseDay(Integer.parseInt(sttlMasterDetailBill.get用药天数()));
|
|
|
// midIncidentAuditDetail.setDoseUnit(sttlMasterDetailBill.get)
|
|
|
- midIncidentAuditDetail.setMedicalNumber(afterwardsAuditDetail.getQuantity().floatValue());
|
|
|
- midIncidentAuditDetail.setPrice(afterwardsAuditDetail.getPrice());
|
|
|
+ midIncidentAuditDetail.setMedicalNumber(afterwardsAuditDetail.getQuantity().floatValue());
|
|
|
+ midIncidentAuditDetail.setPrice(afterwardsAuditDetail.getPrice());
|
|
|
// midIncidentAuditDetail.setSingleDoseNumber()
|
|
|
- midIncidentAuditDetail.setAmount(afterwardsAuditDetail.getAmount());
|
|
|
- midIncidentAuditDetail.setMedicalProjectName(afterwardsAuditDetail.getMedicalProjectName());
|
|
|
- midIncidentAuditDetail.setMedicalProjectCode(afterwardsAuditDetail.getMedicalProjectCode());
|
|
|
- midIncidentAuditDetail.setTreatmentType("1");
|
|
|
- midIncidentAuditDetail.setNoticeType("middle");
|
|
|
- midIncidentAuditDetail.setMedicalInsRuleInfoId(afterwardsAuditDetail.getMedicalInsRuleInfoId());
|
|
|
- midIncidentAuditDetail.setMedicalInsRuleInfoName(afterwardsAuditDetail.getMedicalInsRuleInfoName());
|
|
|
- midIncidentAuditDetail.setMedicalInsRuleInfoCode(afterwardsAuditDetail.getMedicalInsRuleInfoCode());
|
|
|
+ midIncidentAuditDetail.setAmount(afterwardsAuditDetail.getAmount());
|
|
|
+ midIncidentAuditDetail.setMedicalProjectName(afterwardsAuditDetail.getMedicalProjectName());
|
|
|
+ midIncidentAuditDetail.setMedicalProjectCode(afterwardsAuditDetail.getMedicalProjectCode());
|
|
|
+ midIncidentAuditDetail.setTreatmentType("1");
|
|
|
+ midIncidentAuditDetail.setNoticeType("middle");
|
|
|
+ midIncidentAuditDetail.setMedicalInsRuleInfoId(afterwardsAuditDetail.getMedicalInsRuleInfoId());
|
|
|
+ midIncidentAuditDetail.setMedicalInsRuleInfoName(afterwardsAuditDetail.getMedicalInsRuleInfoName());
|
|
|
+ midIncidentAuditDetail.setMedicalInsRuleInfoCode(afterwardsAuditDetail.getMedicalInsRuleInfoCode());
|
|
|
// midIncidentAuditDetail.getAmount()-Math.random();
|
|
|
|
|
|
- midIncidentAuditDetail.setErrorRelativelyManyAmt(new BigDecimal(getRandom(midIncidentAuditDetail.getAmount())));
|
|
|
- midIncidentAuditDetail.setErrorRelativelyFewAmt(new BigDecimal(0));
|
|
|
- midIncidentAuditDetail.setOutpatientNumber(afterwardsAuditDetail.getOutpatientNumber());
|
|
|
- midIncidentAuditDetail.setPrescriptionNumber(afterwardsAuditDetail.getPrescriptionNumber());
|
|
|
- midIncidentAuditDetail.setPatientId(afterwardsAuditDetail.getPatientId());
|
|
|
- midIncidentAuditDetail.setPatientName(afterwardsAuditDetail.getPatientName());
|
|
|
- midIncidentAuditDetail.setProjectType(afterwardsAuditDetail.getProjectType());
|
|
|
- midIncidentAuditDetail.setViolationLevel(afterwardsAuditDetail.getViolationLevel());
|
|
|
- midIncidentAuditDetail.setReminderLevel("0");
|
|
|
- midIncidentAuditDetail.setDescription(afterwardsAuditDetail.getDescription());
|
|
|
- midIncidentAuditDetail.setCreateTime(new Date());
|
|
|
- midIncidentAuditDetail.setMedicalInsuranceMark("1");
|
|
|
- midIncidentAuditDetail.setMedicalDeptCode(afterwardsAuditDetail.getMedicalDeptCode());
|
|
|
- midIncidentAuditDetail.setMedicalDeptName(afterwardsAuditDetail.getMedicalDeptName());
|
|
|
- midIncidentAuditDetail.setProejctCode(afterwardsAuditDetail.getMedicalProjectCode());
|
|
|
- midIncidentAuditDetail.setProejctName(afterwardsAuditDetail.getMedicalProjectName());
|
|
|
- midIncidentAuditDetail.setDoctorId(afterwardsAuditDetail.getDoctorId());
|
|
|
- midIncidentAuditDetail.setDoctorName(afterwardsAuditDetail.getDoctorName());
|
|
|
- midIncidentAuditDetails.add(midIncidentAuditDetail);
|
|
|
+ midIncidentAuditDetail.setErrorRelativelyManyAmt(new BigDecimal(getRandom(midIncidentAuditDetail.getAmount())));
|
|
|
+ midIncidentAuditDetail.setErrorRelativelyFewAmt(new BigDecimal(0));
|
|
|
+ midIncidentAuditDetail.setOutpatientNumber(afterwardsAuditDetail.getOutpatientNumber());
|
|
|
+ midIncidentAuditDetail.setPrescriptionNumber(afterwardsAuditDetail.getPrescriptionNumber());
|
|
|
+ midIncidentAuditDetail.setPatientId(afterwardsAuditDetail.getPatientId());
|
|
|
+ midIncidentAuditDetail.setPatientName(afterwardsAuditDetail.getPatientName());
|
|
|
+ midIncidentAuditDetail.setProjectType(afterwardsAuditDetail.getProjectType());
|
|
|
+ midIncidentAuditDetail.setViolationLevel(afterwardsAuditDetail.getViolationLevel());
|
|
|
+ midIncidentAuditDetail.setReminderLevel("0");
|
|
|
+ midIncidentAuditDetail.setDescription(afterwardsAuditDetail.getDescription());
|
|
|
+ midIncidentAuditDetail.setCreateTime(new Date());
|
|
|
+ midIncidentAuditDetail.setMedicalInsuranceMark("1");
|
|
|
+ midIncidentAuditDetail.setMedicalDeptCode(afterwardsAuditDetail.getMedicalDeptCode());
|
|
|
+ midIncidentAuditDetail.setMedicalDeptName(afterwardsAuditDetail.getMedicalDeptName());
|
|
|
+ midIncidentAuditDetail.setProejctCode(afterwardsAuditDetail.getMedicalProjectCode());
|
|
|
+ midIncidentAuditDetail.setProejctName(afterwardsAuditDetail.getMedicalProjectName());
|
|
|
+ midIncidentAuditDetail.setDoctorId(afterwardsAuditDetail.getDoctorId());
|
|
|
+ midIncidentAuditDetail.setDoctorName(afterwardsAuditDetail.getDoctorName());
|
|
|
+ midIncidentAuditDetails.add(midIncidentAuditDetail);
|
|
|
|
|
|
// }
|
|
|
}
|
|
|
@@ -338,8 +335,8 @@ public class MidAuditDataTest {
|
|
|
Set<Integer> medicalRuleInfoIdSet = RuleEngine.itemCodeAndRuleIdMap.get(projectCode);
|
|
|
if (CollectionUtil.isEmpty(medicalRuleInfoIdSet)) {
|
|
|
log.info("医保编码未匹配到规则:{}", projectCode);
|
|
|
- if(!codeDataMap.containsKey(projectCode)){
|
|
|
- ruleEngine.genItemCodeAndRuleIdMapTest(projectCode, afterwardsAuditDetail, medicalInsRuleInfoList, medicalMap,codeDataMap);
|
|
|
+ if (!codeDataMap.containsKey(projectCode)) {
|
|
|
+ ruleEngine.genItemCodeAndRuleIdMapTest(projectCode, afterwardsAuditDetail, medicalInsRuleInfoList, medicalMap, codeDataMap);
|
|
|
}
|
|
|
|
|
|
} else {
|
|
|
@@ -547,9 +544,9 @@ public class MidAuditDataTest {
|
|
|
|
|
|
private static double getRandom(Double src) {
|
|
|
Random a = new Random();
|
|
|
- if (src.intValue()>0) {
|
|
|
+ if (src.intValue() > 0) {
|
|
|
int i = a.nextInt(src.intValue());
|
|
|
- return src -i;
|
|
|
+ return src - i;
|
|
|
}
|
|
|
|
|
|
return 0;
|