2 Commits 0a7c9909e3 ... 962c7579a2

Author SHA1 Message Date
  sunday 962c7579a2 'xw' 3 days ago
  sunday f4341eb742 成人疫苗相关功能 4 days ago

+ 30 - 0
Marketplace/src/main/java/com/dt/care/controller/AdultVaccinesController.java

@@ -0,0 +1,30 @@
+package com.dt.care.controller;
+
+import com.dt.care.dto.AgesNameDto;
+import com.dt.care.vo.ResultVo;
+import com.dt.common.domain.HxwVaccines;
+import com.dt.common.service.HxwVaccinesService;
+import com.dt.config.NonLoginRequired;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.annotation.Resource;
+import java.util.List;
+
+
+@RestController
+@RequestMapping("adult")
+public class AdultVaccinesController {
+
+    @Resource
+    private HxwVaccinesService hxwVaccinesService;
+
+
+    @RequestMapping("findByAdultAll")
+    @NonLoginRequired
+    public ResultVo findByAdultAll(@RequestBody AgesNameDto dto){
+        List<HxwVaccines> list = hxwVaccinesService.findByAdultAll(dto);
+        return ResultVo.OK(list);
+    }
+}

+ 11 - 0
Marketplace/src/main/java/com/dt/care/controller/AgesNameController.java

@@ -9,6 +9,7 @@ import com.dt.common.domain.HxwVaccines;
 import com.dt.common.service.HxwAgeBasedVaccineRecommendationsService;
 import com.dt.common.service.HxwDiseasesService;
 import com.dt.common.service.HxwVaccineDiseaseRelationsService;
+import com.dt.common.service.HxwVaccinesService;
 import com.dt.config.NonLoginRequired;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -27,6 +28,8 @@ public class AgesNameController {
     private HxwDiseasesService hxwDiseasesService;
 
     @Resource
+    private HxwVaccinesService hxwVaccinesService;
+    @Resource
     private HxwVaccineDiseaseRelationsService hxwVaccineDiseaseRelationsService;
     @RequestMapping("findByAgesName")
     @NonLoginRequired
@@ -74,4 +77,12 @@ public class AgesNameController {
             return ResultVo.ERROR("疾病和对应疫苗查询失败");
         }
     }
+
+
+    @RequestMapping("findByVaccines")//疫苗查询详情
+    @NonLoginRequired
+    public ResultVo findByVaccines(@RequestBody AgesNameDto dto){
+        HxwVaccines hxwVaccines=hxwVaccinesService.findByVaccinesDetails(dto);
+        return ResultVo.OK(hxwVaccines);
+    }
 }

+ 1 - 0
Marketplace/src/main/java/com/dt/care/dto/AgesNameDto.java

@@ -5,4 +5,5 @@ import lombok.Data;
 @Data
 public class AgesNameDto {
     private String agesName;
+    private String vaccinesName;
 }

+ 2 - 0
Marketplace/src/main/java/com/dt/common/domain/HxwVaccineDiscussions.java

@@ -54,6 +54,8 @@ public class HxwVaccineDiscussions {
      * 更新时间
      */
     private Date updatedAt;
+    @TableField(exist = false)
+    private User user;
 
     @Override
     public boolean equals(Object that) {

+ 13 - 0
Marketplace/src/main/java/com/dt/common/domain/HxwVaccines.java

@@ -5,6 +5,8 @@ import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import java.util.Date;
+import java.util.List;
+
 import lombok.Data;
 
 /**
@@ -70,6 +72,17 @@ public class HxwVaccines {
      */
     private Date updatedAt;
 
+    @TableField(exist = false)
+    private HxwVaccineExperts experts;
+    @TableField(exist = false)
+    private List<HxwVaccineDiscussions> discussions;
+    @TableField(exist = false)
+    private HxwVaccineDetails details;
+    @TableField(exist = false)
+    private List<HxwVaccineContentModules> contentModules;
+    @TableField(exist = false)
+    private List<HxwKnowledgeArticles> articles;
+
     @Override
     public boolean equals(Object that) {
         if (this == that) {

+ 5 - 0
Marketplace/src/main/java/com/dt/common/service/HxwVaccinesService.java

@@ -1,5 +1,6 @@
 package com.dt.common.service;
 
+import com.dt.care.dto.AgesNameDto;
 import com.dt.care.dto.VaccinesDto;
 import com.dt.common.domain.HxwVaccines;
 import com.baomidou.mybatisplus.extension.service.IService;
@@ -15,4 +16,8 @@ public interface HxwVaccinesService extends IService<HxwVaccines> {
 
     List<HxwVaccines> findByVaccinesByCategory(VaccinesDto dto);
 
+    HxwVaccines findByVaccinesDetails(AgesNameDto dto);
+
+    List<HxwVaccines> findByAdultAll(AgesNameDto dto);
+
 }

+ 78 - 4
Marketplace/src/main/java/com/dt/common/service/impl/HxwVaccinesServiceImpl.java

@@ -2,17 +2,17 @@ package com.dt.common.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.dt.care.dto.AgesNameDto;
 import com.dt.care.dto.VaccinesDto;
-import com.dt.common.domain.HxwVaccineCategories;
-import com.dt.common.domain.HxwVaccines;
-import com.dt.common.mapper.HxwVaccineCategoriesMapper;
+import com.dt.common.domain.*;
+import com.dt.common.mapper.*;
 import com.dt.common.service.HxwVaccinesService;
-import com.dt.common.mapper.HxwVaccinesMapper;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
 import java.util.Collections;
 import java.util.List;
+import java.util.stream.Collectors;
 
 /**
 * @author sunday
@@ -25,6 +25,21 @@ public class HxwVaccinesServiceImpl extends ServiceImpl<HxwVaccinesMapper, HxwVa
 
     @Resource
     private HxwVaccineCategoriesMapper hxwVaccineCategoriesMapper;
+    @Resource
+    private HxwVaccineExpertRelationsMapper hxwVaccineExpertRelationsMapper;
+    @Resource
+    private HxwVaccineExpertsMapper hxwVaccineExpertsMapper;
+    @Resource
+    private HxwVaccineDetailsMapper hxwVaccineDetailsMapper;
+    @Resource
+    private HxwVaccineDiscussionsMapper hxwVaccineDiscussionsMapper;
+    @Resource
+    private HxwVaccineContentModulesMapper hxwVaccineContentModulesMapper;
+    @Resource
+    private UserMapper userMapper;
+
+    @Resource
+    private HxwKnowledgeArticlesMapper hxwKnowledgeArticlesMapper;
     @Override
     public List<HxwVaccines> findByVaccinesByCategory(VaccinesDto dto) {
         QueryWrapper<HxwVaccineCategories> wrapper=new QueryWrapper<>();
@@ -35,6 +50,65 @@ public class HxwVaccinesServiceImpl extends ServiceImpl<HxwVaccinesMapper, HxwVa
         List<HxwVaccines> vaccinesList = this.baseMapper.selectList(hxwVaccinesQueryWrapper);
         return vaccinesList;
     }
+
+    @Override
+    public HxwVaccines findByVaccinesDetails(AgesNameDto dto) {
+        QueryWrapper<HxwVaccines> wrapper=new QueryWrapper<>();
+        wrapper.eq("name",dto.getVaccinesName());
+        HxwVaccines hxwVaccines = this.baseMapper.selectOne(wrapper);//疫苗基本信息
+        Integer id = hxwVaccines.getId();//疫苗id
+        if (id!=null){
+            QueryWrapper<HxwVaccineExpertRelations> wrapper1=new QueryWrapper<>();
+            wrapper1.eq("vaccine_id",id);
+            HxwVaccineExpertRelations hxwVaccineExpertRelations = hxwVaccineExpertRelationsMapper.selectOne(wrapper1);
+            Integer expertId = hxwVaccineExpertRelations.getExpertId();//医生 id
+            QueryWrapper<HxwVaccineExperts> wrapper2=new QueryWrapper<>();
+            wrapper2.eq("id",expertId);
+            HxwVaccineExperts hxwVaccineExperts = hxwVaccineExpertsMapper.selectOne(wrapper2);
+            hxwVaccines.setExperts(hxwVaccineExperts);//设置医生信息
+            QueryWrapper<HxwVaccineDetails> wrapper3=new QueryWrapper<>();
+            wrapper3.eq("vaccine_id",id);
+            HxwVaccineDetails hxwVaccineDetails = hxwVaccineDetailsMapper.selectOne(wrapper3);
+            hxwVaccines.setDetails(hxwVaccineDetails);//设置疫苗详情信息
+            QueryWrapper<HxwVaccineDiscussions> wrapper4=new QueryWrapper<>();
+            wrapper4.eq("vaccine_id",id);
+            List<HxwVaccineDiscussions> hxwVaccineDiscussions = hxwVaccineDiscussionsMapper.selectList(wrapper4);
+            for (HxwVaccineDiscussions discussion : hxwVaccineDiscussions){
+                Integer userId = discussion.getUserId();
+                QueryWrapper<User> wrapper5=new QueryWrapper<>();
+                wrapper5.eq("id",userId);
+                User user = userMapper.selectOne(wrapper5);
+                discussion.setUser(user);
+            }
+            hxwVaccines.setDiscussions(hxwVaccineDiscussions);//设置讨论信息
+            QueryWrapper<HxwVaccineContentModules> wrapper5=new QueryWrapper<>();
+            wrapper5.eq("vaccine_id",id);
+            List<HxwVaccineContentModules> hxwVaccineContentModules = hxwVaccineContentModulesMapper.selectList(wrapper5);
+            hxwVaccines.setContentModules(hxwVaccineContentModules);//设置内容模块信息
+            QueryWrapper<HxwKnowledgeArticles> wrapper6=new QueryWrapper<>();
+            wrapper6.eq("related_vaccine_id",id);
+            List<HxwKnowledgeArticles> hxwKnowledgeArticles = hxwKnowledgeArticlesMapper.selectList(wrapper6);
+            hxwVaccines.setArticles(hxwKnowledgeArticles);
+            return hxwVaccines;
+        }else {
+            return null;
+        }
+
+    }
+
+    @Override
+    public List<HxwVaccines> findByAdultAll(AgesNameDto dto) {
+        QueryWrapper<HxwVaccineCategories> wrapper = new QueryWrapper<>();
+        wrapper.eq("name",dto.getAgesName());
+        HxwVaccineCategories hxwVaccineCategories = hxwVaccineCategoriesMapper.selectOne(wrapper);
+        if (hxwVaccineCategories != null) {
+            QueryWrapper<HxwVaccines> wrapper1 = new QueryWrapper<>();
+            wrapper1.eq("category_id",hxwVaccineCategories.getId());
+            List<HxwVaccines> list = this.baseMapper.selectList(wrapper1);
+            return list;
+        }
+        return Collections.emptyList();
+    }
 }