Merge branch 'jihan_0920_护理服务、商城、积分兑换、在线问诊功能分支' of http://182.92.166.109:3000/jihan/xinelu-api into jihan_0920_护理服务、商城、积分兑换、在线问诊功能分支
This commit is contained in:
commit
7e589eeabb
@ -3,11 +3,17 @@ package com.xinelu.applet.controller.appletscreeningproject;
|
||||
import com.xinelu.common.core.controller.BaseController;
|
||||
import com.xinelu.common.core.domain.R;
|
||||
import com.xinelu.manage.domain.screeningproject.ScreeningProject;
|
||||
import com.xinelu.manage.service.screeningproject.IScreeningProjectService;
|
||||
import com.xinelu.manage.dto.screeningrecord.ScreeningRecordDTO;
|
||||
import com.xinelu.manage.service.screeningrecord.IScreeningRecordService;
|
||||
import com.xinelu.manage.vo.screeningrecord.ScreeningRecordVo;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
import javax.annotation.Resource;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
@ -22,12 +28,29 @@ import org.springframework.web.bind.annotation.RestController;
|
||||
@Api(tags = "项目控制器-小程序")
|
||||
public class AppletScreeningProjectController extends BaseController {
|
||||
@Resource
|
||||
private IScreeningProjectService projectService;
|
||||
private IScreeningRecordService screeningRecordService;
|
||||
|
||||
@ApiOperation("筛查项目列表")
|
||||
@GetMapping("list")
|
||||
public R<List<ScreeningProject>> list(ScreeningProject project) {
|
||||
List<ScreeningProject> list = projectService.findList(project);
|
||||
return R.ok(list);
|
||||
public R<List<ScreeningProject>> list(ScreeningRecordDTO query) {
|
||||
// 查询居民预约过的项目
|
||||
List<ScreeningProject> projectList = new ArrayList<>();
|
||||
|
||||
query.setScreeningType("1");
|
||||
List<ScreeningRecordVo> recordList = screeningRecordService.list(query);
|
||||
if (CollectionUtils.isNotEmpty(recordList)) {
|
||||
// 按照项目进行分组
|
||||
Map<String, List<ScreeningRecordVo>> groupByProject = recordList.stream()
|
||||
.collect(Collectors.groupingBy(ScreeningRecordVo::getProjectId));
|
||||
for (String projectId : groupByProject.keySet()) {
|
||||
ScreeningProject project = new ScreeningProject();
|
||||
project.setProjectId(projectId);
|
||||
project.setProjectName(groupByProject.get(projectId).get(0).getProjectName());
|
||||
project.setHospitalId(groupByProject.get(projectId).get(0).getHospitalId());
|
||||
project.setHospitalName(groupByProject.get(projectId).get(0).getHospitalName());
|
||||
projectList.add(project);
|
||||
}
|
||||
}
|
||||
return R.ok(projectList);
|
||||
}
|
||||
}
|
||||
|
||||
@ -162,28 +162,35 @@ public class NursingOrderServiceImpl implements INursingOrderService {
|
||||
if (CollectionUtils.isNotEmpty(goodsOrderAndConsultationOrder)) {
|
||||
patientOrders.addAll(goodsOrderAndConsultationOrder);
|
||||
}
|
||||
String result = HttpUtils.sendGet(SpringUtils.getFdUrl(nurseOrder.getRegion()) + "/performance/recordV2/" + nurseOrder.getCardNo());
|
||||
if (StringUtils.isBlank(result)) {
|
||||
log.info("获取家医小程序用户订单信息失败,result = " + result);
|
||||
}
|
||||
PatientOrderVO resultHttp = JSON.parseObject(result, PatientOrderVO.class);
|
||||
if (Objects.nonNull(resultHttp) && CollectionUtils.isNotEmpty(resultHttp.getData()) && Objects.nonNull(resultHttp.getData().get(0).getOrderNo())) {
|
||||
List<PatientOrder> data = resultHttp.getData();
|
||||
data.forEach(item -> item.setOrderSource(OrderSourceEnum.FAMILY_DOCTOR.getInfo()));
|
||||
List<PatientOrder> orderEvaluate = nursingOrderMapper.getOrderEvaluateByPatientId(nurseOrder.getParentId());
|
||||
if (CollectionUtils.isNotEmpty(orderEvaluate) && EVALUATED.equals(nurseOrder.getOrderStatus())) {
|
||||
for (PatientOrder patientOrder : orderEvaluate) {
|
||||
PatientOrder dataFirst = data.stream().filter(Objects::nonNull).filter(item -> Objects.nonNull(item.getOrderNo()) && patientOrder.getOrderNo().equals(item.getOrderNo())).findFirst().orElse(new PatientOrder());
|
||||
dataFirst.setCompositeScore(patientOrder.getCompositeScore());
|
||||
patientOrders.add(dataFirst);
|
||||
PatientOrderVO resultHttp = new PatientOrderVO();
|
||||
if (Objects.nonNull(nurseOrder.getRegion()) && !"3".equals(nurseOrder.getRegion())) {
|
||||
try {
|
||||
String result = HttpUtils.sendGet(SpringUtils.getFdUrl(nurseOrder.getRegion()) + "/performance/recordV2/" + nurseOrder.getCardNo());
|
||||
if (StringUtils.isBlank(result)) {
|
||||
log.info("获取家医小程序用户订单信息失败,result = " + result);
|
||||
}
|
||||
resultHttp = JSON.parseObject(result, PatientOrderVO.class);
|
||||
} catch (Exception e) {
|
||||
log.error("查询家医履约评价记录异常: " + e.getMessage());
|
||||
}
|
||||
if (CollectionUtils.isNotEmpty(orderEvaluate) && NOT_EVALUATED.equals(nurseOrder.getOrderStatus())) {
|
||||
Collection<PatientOrder> subtract = CollectionUtils.subtract(data, orderEvaluate);
|
||||
patientOrders.addAll(subtract);
|
||||
}
|
||||
if (CollectionUtils.isEmpty(orderEvaluate) && NOT_EVALUATED.equals(nurseOrder.getOrderStatus())) {
|
||||
patientOrders.addAll(data);
|
||||
if (Objects.nonNull(resultHttp) && CollectionUtils.isNotEmpty(resultHttp.getData()) && Objects.nonNull(resultHttp.getData().get(0).getOrderNo())) {
|
||||
List<PatientOrder> data = resultHttp.getData();
|
||||
data.forEach(item -> item.setOrderSource(OrderSourceEnum.FAMILY_DOCTOR.getInfo()));
|
||||
List<PatientOrder> orderEvaluate = nursingOrderMapper.getOrderEvaluateByPatientId(nurseOrder.getParentId());
|
||||
if (CollectionUtils.isNotEmpty(orderEvaluate) && EVALUATED.equals(nurseOrder.getOrderStatus())) {
|
||||
for (PatientOrder patientOrder : orderEvaluate) {
|
||||
PatientOrder dataFirst = data.stream().filter(Objects::nonNull).filter(item -> Objects.nonNull(item.getOrderNo()) && patientOrder.getOrderNo().equals(item.getOrderNo())).findFirst().orElse(new PatientOrder());
|
||||
dataFirst.setCompositeScore(patientOrder.getCompositeScore());
|
||||
patientOrders.add(dataFirst);
|
||||
}
|
||||
}
|
||||
if (CollectionUtils.isNotEmpty(orderEvaluate) && NOT_EVALUATED.equals(nurseOrder.getOrderStatus())) {
|
||||
Collection<PatientOrder> subtract = CollectionUtils.subtract(data, orderEvaluate);
|
||||
patientOrders.addAll(subtract);
|
||||
}
|
||||
if (CollectionUtils.isEmpty(orderEvaluate) && NOT_EVALUATED.equals(nurseOrder.getOrderStatus())) {
|
||||
patientOrders.addAll(data);
|
||||
}
|
||||
}
|
||||
}
|
||||
TableDataInfo rspData = new TableDataInfo();
|
||||
|
||||
Loading…
Reference in New Issue
Block a user