From 5d7b0a0bbcae6844e2296ef53c3f4c88293dacfe Mon Sep 17 00:00:00 2001 From: jinquanOu <1511349576@qq.com> Date: 星期二, 11 六月 2024 18:18:08 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- zhang-content/src/main/java/com/ruoyi/service/impl/ZfDoctorServiceImpl.java | 148 ++++++++++++++++++++++++++++++++----------------- 1 files changed, 97 insertions(+), 51 deletions(-) diff --git a/zhang-content/src/main/java/com/ruoyi/service/impl/ZfDoctorServiceImpl.java b/zhang-content/src/main/java/com/ruoyi/service/impl/ZfDoctorServiceImpl.java index f6ec5a0..6512ca9 100644 --- a/zhang-content/src/main/java/com/ruoyi/service/impl/ZfDoctorServiceImpl.java +++ b/zhang-content/src/main/java/com/ruoyi/service/impl/ZfDoctorServiceImpl.java @@ -6,7 +6,9 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.entity.EsModel; +import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.utils.MapUtils; +import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.domain.*; @@ -60,6 +62,10 @@ @Resource private RestHighLevelClient restHighLevelClient; + @Resource + ZfDoctorShareService zfDoctorShareService; + + @Override public AjaxResult selectDoctorList(ZfDoctor zfDoctor, Integer pageNum, Integer pageSize) { // LambdaQueryWrapper<ZfDoctor> lqw = buildCondition(zfDoctor); @@ -72,6 +78,10 @@ // return AjaxResult.success(data); //瑕佹煡鑷繁瀹跺涵鐨� ZInfoUser myself = zInfoUserService.getMyself(); + if (myself == null) { + // System.out.println("ssssss"); + return AjaxResult.success("鎮ㄦ病鍔犲叆鍒板搴旂殑瀹跺涵锛岃鑱旂郴绠$悊鍛�"); + } Long familyId = myself.getFamilyId(); //涔熻鏌ュ埆浜烘巿鏉冪殑 List<ZAuthority> authority = zAuthorityService.getAuthority(); @@ -80,8 +90,11 @@ idList.add(familyId); // String familyIds = listFamilyIds(); // String secondFamilyAuthority = listSecondFamilyIds(); - LambdaQueryWrapper<ZfDoctor> lqw = buildCondition(zfDoctor, idList); + //鏌ョ湅鍒汉鍒嗕韩 + List<ZfDoctor> bs = zfDoctorShareService.listUserId(myself.getUserId()); + + LambdaQueryWrapper<ZfDoctor> lqw = buildCondition(zfDoctor, idList); Page<ZfDoctor> zfDoctorPage = new Page<>(pageNum, pageSize); Page<ZfDoctor> pageResult = page(zfDoctorPage, lqw); @@ -89,7 +102,7 @@ List<ZfDoctor> beanRecords = pageResult.getRecords();//寰楀埌鏌ヨ鍑烘潵鐨勬暟鎹� List<ZfDoctor> dtoResult = markOwnData(familyId, beanRecords); - + dtoResult.addAll(bs); HashMap<String, Object> data = MapUtils.getResult(pageResult, dtoResult); return AjaxResult.success(data); } @@ -111,13 +124,17 @@ //鍔犱笂鑷繁瀹跺涵鐨刬d idList.add(familyId); + //鏌ョ湅鍒汉鍒嗕韩 + List<ZfDoctor> bs = zfDoctorShareService.listUserId(myself.getUserId()); + LambdaQueryWrapper<ZfDoctor> lambdaQueryWrapper = buildCondition(zfDoctor, idList); List<ZfDoctor> beanRecords = list(lambdaQueryWrapper); + beanRecords.addAll(bs); log.info("浠庢暟鎹簱涓煡鍒扮殑涓�:{}", beanRecords); return markOwnData(familyId, beanRecords); } - public List<ZfDoctor> markOwnData(Long familyId,List<ZfDoctor> beanRecords){ + public List<ZfDoctor> markOwnData(Long familyId, List<ZfDoctor> beanRecords) { return beanRecords.stream().peek( bean -> { if (bean.getFamilyId() == familyId) { @@ -126,7 +143,7 @@ bean.setOwnData(0); } } - ).sorted((a,b)-> b.getOwnData()-a.getOwnData()).collect(Collectors.toList()); + ).sorted((a, b) -> b.getOwnData() - a.getOwnData()).collect(Collectors.toList()); } @Override @@ -150,10 +167,14 @@ } log.info("鏁版嵁鍒楄〃涓猴細{}", dataList); - for (ZfDoctor zfDoctor : dataList) { - zfDoctorService.addData(zfDoctor); - } + for (ZfDoctor zfDoctor : dataList) { + if (zfDoctor.getSymptom().length() == 0 || zfDoctor.getSymptom() == null) { + throw new RuntimeException("鐥囩姸涓虹┖锛屽鍏ユ暟鎹け璐�"); + } else { + zfDoctorService.addData(zfDoctor); + } + } return AjaxResult.success("瀵煎叆鏁版嵁鎴愬姛"); } @@ -163,7 +184,7 @@ ZInfoUser myself = zInfoUserService.getMyself(); Long familyId = myself.getFamilyId(); - if(familyId == null){ + if (familyId == null) { throw new RuntimeException("鎮ㄨ繕鏈姞鍏ヤ换浣曞搴�"); } @@ -171,12 +192,16 @@ List<Long> familyIdList = authority.stream().filter(auth -> auth.getAuthority().toString().equals(DOCTOR_LIST_ADD)).map(ZAuthority::getFid).collect(Collectors.toList()); familyIdList.add(familyId); - if (zfDoctor.getFamilyId()!=null && !familyIdList.contains(zfDoctor.getFamilyId())) { +// List<ZfDoctorShare> authority1 = zfDoctorShareService.getAuthority(); +// List<Long> idList1 = authority1.stream().filter(auth -> auth.getShareContent().toString().equals(DOCTOR_LIST)).map(ZfDoctorShare::getShareId).collect(Collectors.toList()); + zfDoctorService.addData(zfDoctor); + + if (zfDoctor.getFamilyId() != null && !familyIdList.contains(zfDoctor.getFamilyId())) { throw new RuntimeException("浣犳病鏈夋潈闄愭搷浣滄瀹跺涵鐨勬暟鎹�"); } - if(zfDoctor.getFamilyId() == null){ + if (zfDoctor.getFamilyId() == null) { //榛樿娣诲姞鑷繁瀹跺涵鐨勬暟鎹� zfDoctor.setFamilyId(familyId); } @@ -185,14 +210,14 @@ LambdaQueryWrapper<ZfDoctor> lqw = uniqueCondition(zfDoctor); List<ZfDoctor> list = list(lqw); - if(list.size()>0){ + if (list.size() > 0) { throw new RuntimeException("璇峰嬁鏂板閲嶅鏁版嵁"); } if (save(zfDoctor)) { EsModel esModel = new EsModel(); Integer inte = zfDoctor.getId().intValue(); - String uuid = UUID.randomUUID().toString().replace("-",""); + String uuid = UUID.randomUUID().toString().replace("-", ""); esModel.setId(uuid); esModel.setCtId(Long.valueOf(inte)); esModel.setCtTableName("瀹跺涵灏忓尰鐢�"); @@ -203,8 +228,11 @@ esModel.setBy5("/family/zfDoctor"); esModel.setBy6(zfDoctor.getCmedical()); esModel.setBy7(zfDoctor.getWmedical()); +// esModel.setBy7(); esModel.setRemark(zfDoctor.getRemark()); esModel.setFid(familyId); + + //杩欓噷瀛樺偍鏌ヨ璇︽儏鐨勮矾寰� esService.insertTable(esModel); return AjaxResult.success(); @@ -212,6 +240,7 @@ return AjaxResult.error(); } } + @Resource ZfLogService zfLogService; @@ -228,7 +257,7 @@ List<Long> familyIdList = authority.stream().filter(auth -> auth.getAuthority().toString().equals(DOCTOR_LIST_UPDATE)).map(ZAuthority::getFid).collect(Collectors.toList()); familyIdList.add(familyId); - if (dataFamilyId!=null && !familyIdList.contains(dataFamilyId)) { + if (dataFamilyId != null && !familyIdList.contains(dataFamilyId)) { throw new RuntimeException("浣犳病鏈夋潈闄愭搷浣滄瀹跺涵鐨勬暟鎹�"); } @@ -239,71 +268,71 @@ zfLog.setUpdater(zInfoUserService.getMyself().getNickName()); zfLogService.save(zfLog); - if(updateById(zfDoctor)){ + if (updateById(zfDoctor)) { //鍒版暟鎹簱涓煡璇㈠搴旂殑鏁版嵁 ZfDoctor dataById = getById(zfDoctor.getId()); //鍏堝埌es涓煡璇㈠埌瀵瑰簲閭f潯鏁版嵁鍦╡s鐨刬d EsModel esResult = esService.findByCtId(dataById.getId().intValue(), "瀹跺涵灏忓尰鐢�"); - if (esResult == null){ + if (esResult == null) { return AjaxResult.success(); } //鎿嶄綔es淇敼鏁版嵁 EsModel newModel = new EsModel(); - if(zfDoctor.getType()!=null){ + if (zfDoctor.getType() != null) { newModel.setBy1(zfDoctor.getType()); - }else { + } else { newModel.setBy1(dataById.getType()); } - if(zfDoctor.getSymptom()!=null){ + if (zfDoctor.getSymptom() != null) { newModel.setBy2(zfDoctor.getSymptom()); - }else { + } else { newModel.setBy2(dataById.getSymptom()); } - if(zfDoctor.getEffect()!=null){ + if (zfDoctor.getEffect() != null) { newModel.setBy3(zfDoctor.getEffect()); - }else { + } else { newModel.setBy3(dataById.getEffect()); } - if(zfDoctor.getSuitable()!=null){ + if (zfDoctor.getSuitable() != null) { newModel.setBy4(zfDoctor.getSuitable()); - }else { + } else { newModel.setBy4(dataById.getSuitable()); } - if(zfDoctor.getCmedical()!=null){ + if (zfDoctor.getCmedical() != null) { newModel.setBy6(zfDoctor.getCmedical()); - }else { + } else { newModel.setBy6(dataById.getCmedical()); } - if(zfDoctor.getWmedical()!=null){ + if (zfDoctor.getWmedical() != null) { newModel.setBy7(zfDoctor.getWmedical()); - }else { + } else { newModel.setBy7(dataById.getWmedical()); } - if(zfDoctor.getRemark()!=null){ + if (zfDoctor.getRemark() != null) { newModel.setRemark(zfDoctor.getRemark()); - }else { + } else { newModel.setRemark(dataById.getRemark()); } UpdateRequest updateRequest = new UpdateRequest("allsearchdata", esResult.getId()); updateRequest.doc( - "by1",newModel.getBy1(), - "by2",newModel.getBy2(), - "by3",newModel.getBy3(), - "by4",newModel.getBy4(), - "by6",newModel.getBy6(), - "by7",newModel.getBy7(), - "remark",newModel.getRemark() + "by1", newModel.getBy1(), + "by2", newModel.getBy2(), + "by3", newModel.getBy3(), + "by4", newModel.getBy4(), + "by6", newModel.getBy6(), + "by7", newModel.getBy7(), + "remark", newModel.getRemark() ); try { @@ -311,9 +340,9 @@ } catch (IOException e) { throw new RuntimeException(e); } - + return AjaxResult.success(); - }else { + } else { return AjaxResult.error(); } } @@ -330,7 +359,7 @@ familyIdList.add(familyId); for (ZfDoctor data : dataList) { - if (!familyIdList.contains(data.getFamilyId())){ + if (!familyIdList.contains(data.getFamilyId())) { throw new RuntimeException("浣犳病鏈夋潈闄愭搷浣滄瀹跺涵鐨勬暟鎹�"); } } @@ -342,10 +371,10 @@ zfDoctors.stream().forEach(zfDoctor -> { EsModel esModel = esService.findByCtId(zfDoctor.getId().intValue(), "瀹跺涵灏忓尰鐢�"); - if (esModel != null){ + if (esModel != null) { DeleteRequest deleteRequest = new DeleteRequest("allsearchdata", esModel.getId()); try { - restHighLevelClient.delete(deleteRequest,RequestOptions.DEFAULT); + restHighLevelClient.delete(deleteRequest, RequestOptions.DEFAULT); } catch (IOException e) { throw new RuntimeException(e); } @@ -353,7 +382,7 @@ } }); return AjaxResult.success(); - }else { + } else { return AjaxResult.error(); } } @@ -392,29 +421,46 @@ lqw.eq(StringUtils.isNotEmpty(zfDoctor.getEffect()), ZfDoctor::getEffect, zfDoctor.getEffect()); lqw.eq(StringUtils.isNotEmpty(zfDoctor.getSuitable()), ZfDoctor::getSuitable, zfDoctor.getSuitable()); lqw.eq(StringUtils.isNotEmpty(zfDoctor.getRemark()), ZfDoctor::getRemark, zfDoctor.getRemark()); - lqw.eq(zfDoctor.getFamilyId()!=null,ZfDoctor::getFamilyId,zfDoctor.getFamilyId()); + lqw.eq(zfDoctor.getFamilyId() != null, ZfDoctor::getFamilyId, zfDoctor.getFamilyId()); return lqw; } - private LambdaQueryWrapper<ZfDoctor> buildCondition(ZfDoctor zfDoctor,List<Long> familyIdList) { + private LambdaQueryWrapper<ZfDoctor> buildCondition(ZfDoctor zfDoctor, List<Long> familyIdList) { LambdaQueryWrapper<ZfDoctor> lqw = new LambdaQueryWrapper<>(); - lqw.in(ZfDoctor::getFamilyId,familyIdList); + lqw.in(ZfDoctor::getFamilyId, familyIdList); lqw.orderByDesc(ZfDoctor::getCreateTime); lqw.like(StringUtils.isNotEmpty(zfDoctor.getType()), ZfDoctor::getType, zfDoctor.getType()) .like(StringUtils.isNotEmpty(zfDoctor.getSymptom()), ZfDoctor::getSymptom, zfDoctor.getSymptom()) .like(StringUtils.isNotEmpty(zfDoctor.getDuration()), ZfDoctor::getDuration, zfDoctor.getDuration()) .like(StringUtils.isNotEmpty(zfDoctor.getEffect()), ZfDoctor::getEffect, zfDoctor.getEffect()) .like(StringUtils.isNotEmpty(zfDoctor.getSuitable()), ZfDoctor::getSuitable, zfDoctor.getSuitable()) - .like(StringUtils.isNotEmpty(zfDoctor.getWmedical()),ZfDoctor::getWmedical,zfDoctor.getWmedical()) - .like(StringUtils.isNotEmpty(zfDoctor.getCmedical()),ZfDoctor::getCmedical,zfDoctor.getCmedical()) + .like(StringUtils.isNotEmpty(zfDoctor.getWmedical()), ZfDoctor::getWmedical, zfDoctor.getWmedical()) + .like(StringUtils.isNotEmpty(zfDoctor.getCmedical()), ZfDoctor::getCmedical, zfDoctor.getCmedical()) .like(StringUtils.isNotEmpty(zfDoctor.getRemark()), ZfDoctor::getRemark, zfDoctor.getRemark()); - if (StringUtils.isNotEmpty(zfDoctor.getPrescription())){ + if (StringUtils.isNotEmpty(zfDoctor.getPrescription())) { lqw.and(wrapper -> { - wrapper.like(StringUtils.isNotEmpty(zfDoctor.getPrescription()),ZfDoctor::getWmedical,zfDoctor.getPrescription()) + wrapper.like(StringUtils.isNotEmpty(zfDoctor.getPrescription()), ZfDoctor::getWmedical, zfDoctor.getPrescription()) .or() - .like(StringUtils.isNotEmpty(zfDoctor.getPrescription()),ZfDoctor::getCmedical,zfDoctor.getPrescription()); + .like(StringUtils.isNotEmpty(zfDoctor.getPrescription()), ZfDoctor::getCmedical, zfDoctor.getPrescription()); }); } return lqw; } -} + +// private List<Long> buildCondition1(){ +// List<ZfDoctorShare> authority1 = zfDoctorShareService.getAuthority(); +// List<Long> idList1 = authority1.stream().filter(auth -> auth.getShareContent().toString().equals(DOCTOR_LIST)).map(ZfDoctorShare::getShareId).collect(Collectors.toList()); +// return idList1; +// } +// private LambdaQueryWrapper<ZfDoctor> buildCondition2(ZfDoctor zfDoctor, List<Long> IdList) { +// LambdaQueryWrapper<ZfDoctorShare> lqw = new LambdaQueryWrapper<>(); +// lqw.in(ZfDoctorShare::getShareId, IdList); +// List<ZfDoctorShare> beanRecords = list(lqw); +// for (ZfDoctorShare shareContent : beanRecords){ +// zfDoctorService.getById(shareContent); +// } +// +// } + + +} \ No newline at end of file -- Gitblit v1.9.1