大型更改

master
sikadi 2023-10-30 20:08:36 +08:00
parent eadba9b418
commit 80e93541f8
18 changed files with 142 additions and 207 deletions

View File

@ -13,10 +13,6 @@ import java.util.Date;
**/
@Data
public class DiseaseDetatil {
/**
* idid
**/
private Integer diseaseDetailId;
/**
* id

View File

@ -36,6 +36,15 @@ public class Homepage {
/**
*
**/
List<ListHomepage> homepageList;
private List<ListHomepage> homepageList;
/**
*
**/
private List<DiseaseDetatil> diseaseDetatilList;
/**
*
**/
private List<MedicineDetail> medicineDetailList;
}

View File

@ -32,16 +32,6 @@ public class ListHomepage {
**/
private String picture;
/**
*
**/
List<DiseaseDetatil> diseaseDetatils;
/**
*
**/
List<MedicineDetail> medicineDetailList;
}

View File

@ -13,10 +13,6 @@ import java.util.Date;
**/
@Data
public class MedicineDetail {
/**
* id
**/
private Integer medicineDetailId;
/**
* id

View File

@ -9,16 +9,7 @@ import lombok.Data;
**/
@Data
public class HomepageRequest {
private Integer homepageId=0;
private Integer homepagePid=1;
private Integer diseaseDetatilId = 3 ;
private Integer medicineId = 11;
private Integer homepageId=3;
}

View File

@ -52,7 +52,16 @@ public class DiseaseDetatilController {
}
@PostMapping("/DrseaseDetaillAdd")
public R DrseaseDetaillAdd (@RequestBody DiseaseDetatil diseaseDetatil){
log.info("功能:添加病症,URI:{},方法:{},参数;{}",request.getRequestURI(),request.getMethod(),JSON.toJSONString(diseaseDetatil));
int i = diseaseDetatilServer.DrseaseDetaillAdd(diseaseDetatil);
log.info("功能:添加病症,URI:{},方法:{}",request.getRequestURI(),request.getMethod());
return i>0?R.ok("成功"):R.fail("失败");
}

View File

@ -35,65 +35,35 @@ public class HomepageController {
/**
*
*
* @author: ZhuoXin
* @date: 2023/10/25 19:05
* @param: [homepageId]
* @date: 2023/10/30 19:05
* @param: []
* @return: com.grail.common.core.domain.R
**/
@GetMapping("/homepageList")
public R homepageList(){
log.info("功能:展示对应的三级页,URI:{},方法:{}",
request.getRequestURI(),
request.getMethod());
log.info("功能:点击科室或药品出现对应的内容,URI:{},方法:{}",request.getRequestURI(),request.getMethod());
List<Homepage> list = homepageServer.homepageList();
List<Homepage> homepages = homepageServer.homepageList();
log.info("功能:展示对应的三级页,URI:{},方法:{},响应:{}",
request.getRequestURI(),
request.getMethod(),
JSON.toJSONString(list));
log.info("功能:点击科室或药品出现对应的内容,URI:{},方法:{},响应:{}",request.getRequestURI(),request.getMethod(),JSON.toJSONString(homepages));
return R.ok(homepages);
}
@PostMapping("/homepageMedicineDisease")
public R homepageMedicineDisease(@RequestBody HomepageRequest homepageRequest){
log.info("功能:查看病症详情和药品详情,URI:{},方法:{},参数{}",request.getRequestURI(),request.getMethod(),JSON.toJSONString(homepageRequest));
Homepage list = homepageServer.homepageMedicineDiseaseList(homepageRequest);
log.info("功能:查看病症详情和药品详情,URI:{},方法:{},响应:{}",request.getRequestURI(),request.getMethod(),JSON.toJSONString(list));
return R.ok(list);
}
/**
*
* @author: ZhuoXin
* @date: 2023/10/29 8:25
* @param: [homepageRequest]
* @return: java.util.List<com.grail.interrogation.domain.Homepage>
**/
@GetMapping("/homepagePidList")
public R<List<Homepage>> homepagePidList(){
log.info("功能:病症或科室,URI:{},方法:{}",request.getRequestURI(),request.getMethod());
List<Homepage> list =homepageServer.homepagePidList();
log.info("功能:病症或科室,URI:{},方法:{},响应:{}",request.getRequestURI(),request.getMethod(),JSON.toJSONString(list));
return R.ok(list);
}
/**
*
* @author: ZhuoXin
* @date: 2023/10/29 8:43
* @param: [homepageRequest]
* @return: com.grail.common.core.domain.R
**/
@PostMapping("/homepageSumList")
public R homepageSumList(@RequestBody HomepageRequest homepageRequest){
log.info("功能:科室和病症,URI:{},方法:{},参数:{}",request.getRequestURI(),request.getMethod(),JSON.toJSONString(homepageRequest));
ListHomepage list = homepageServer.homepageSumList(homepageRequest);
log.info("功能:科室和病症,URI:{},方法:{},响应:{}",request.getRequestURI(),request.getMethod(),JSON.toJSONString(list));
return R.ok(list);
}
}

View File

@ -1,14 +1,12 @@
package com.grail.interrogation.controller;
import com.dtflys.forest.annotation.Get;
import com.grail.common.core.domain.R;
import com.grail.interrogation.domain.MedicineDetail;
import com.grail.interrogation.service.MedicineDetailServer;
import lombok.extern.log4j.Log4j2;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
/**
*

View File

@ -13,5 +13,9 @@ import java.util.List;
**/
@Mapper
public interface DiseaseDetatilMapper {
List<DiseaseDetatil> diseaseDetatilList(@Param("id") Integer id);
int DrseaseDetaillAdd(DiseaseDetatil diseaseDetatil);
List<DiseaseDetatil> List(@Param("id") Integer id);
}

View File

@ -4,6 +4,7 @@ import com.grail.interrogation.domain.DiseaseDetatil;
import com.grail.interrogation.domain.Homepage;
import com.grail.interrogation.domain.ListHomepage;
import com.grail.interrogation.domain.request.HomepageRequest;
import io.swagger.models.auth.In;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@ -18,10 +19,10 @@ import java.util.List;
public interface HomepageMapper {
List<Homepage> homepageList();
List<Homepage> homepageList(@Param("i") Integer i);
List<ListHomepage> homepageSubquery(@Param("id") Integer id);
List<ListHomepage> homepageListPid(@Param("pid") Integer pid);
ListHomepage homepageSumList(HomepageRequest homepageRequest);
Homepage homepageId(HomepageRequest homepageRequest);
}

View File

@ -13,8 +13,10 @@ import java.util.List;
**/
@Mapper
public interface MedicineDetailMapper {
List<MedicineDetail> medicineDetailList(@Param("id") Integer id);
int medicineDetailAdd(MedicineDetail medicineDetail);
List<MedicineDetail> List(@Param("id") Integer id);
}

View File

@ -21,4 +21,14 @@ public interface DiseaseDetatilServer {
* @return: java.util.List<com.grail.interrogation.domain.HealthType>
**/
List<HealthType> healthType();
/**
*
* @param diseaseDetatil
* @author: ZhuoXin
* @date: 2023/10/30 9:21
* @param: []
* @return: int
*/
int DrseaseDetaillAdd(DiseaseDetatil diseaseDetatil);
}

View File

@ -13,29 +13,8 @@ import java.util.List;
**/
public interface HomepageServer {
/**
*
* @author: ZhuoXin
* @date: 2023/10/25 20:02
* @param: [homepageId]
* @return: com.grail.interrogation.domain.Homepage
**/
List<Homepage> homepageList();
/**
*
* @author: ZhuoXin
* @date: 2023/10/29 8:29
* @param: [homepageRequest]
* @return: java.util.List<com.grail.interrogation.domain.Homepage>
**/
List<Homepage> homepagePidList();
/**
* @author: ZhuoXin
* @date: 2023/10/29 8:44
* @param: [homepageRequest]
* @return: java.util.List<com.grail.interrogation.domain.Homepage>
**/
ListHomepage homepageSumList(HomepageRequest homepageRequest);
Homepage homepageMedicineDiseaseList(HomepageRequest homepageRequest);
}

View File

@ -1,13 +1,11 @@
package com.grail.interrogation.service.impl;
import com.grail.common.core.domain.R;
import com.grail.common.security.utils.SecurityUtils;
import com.grail.interrogation.domain.DiseaseDetatil;
import com.grail.interrogation.domain.HealthType;
import com.grail.interrogation.mapper.DiseaseDetatilMapper;
import com.grail.interrogation.remote.RemoteHealthTypeService;
import com.grail.interrogation.service.DiseaseDetatilServer;
import com.grail.system.api.model.LoginUser;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -28,11 +26,15 @@ public class DiseaseDetatilServerImpl implements DiseaseDetatilServer {
@Override
public List<HealthType> healthType() {
R r = remoteHealthTypeService.healthTypeList();
return (List<HealthType>) r.getData();
}
@Override
public int DrseaseDetaillAdd(DiseaseDetatil diseaseDetatil) {
int i = diseaseDetatilMapper.DrseaseDetaillAdd(diseaseDetatil);
return i;
}
}

View File

@ -1,5 +1,6 @@
package com.grail.interrogation.service.impl;
import com.grail.common.core.domain.R;
import com.grail.interrogation.domain.DiseaseDetatil;
import com.grail.interrogation.domain.Homepage;
import com.grail.interrogation.domain.ListHomepage;
@ -36,80 +37,42 @@ public class HomepageServerImpl implements HomepageServer {
private static final String REDIS_HOMEPAGE="redis-homepage";
/**
*
*
* @author: ZhuoXin
* @date: 2023/10/25 20:24
* @param: [homepageId]
* @return: com.grail.interrogation.domain.Homepage
* @date: 2023/10/30 19:06
* @param: []
* @return: java.util.List<com.grail.interrogation.domain.Homepage>
**/
@Override
public List<Homepage> homepageList() {
// 从redis里存储数据
if(redisService.hasKey(REDIS_HOMEPAGE)){
List<Homepage> cacheList = redisService.getCacheList(REDIS_HOMEPAGE);
return cacheList;
}
//查询到就对应科室或者病症
List<Homepage> list = homepageMapper.homepageList();
// 循环
for (Homepage item : list) {
// 再用id去查询他们的pid
List<ListHomepage> listHomepages = homepageMapper.homepageSubquery(item.getId());
// 再次循环
for (ListHomepage items : listHomepages) {
// 通过if判断
if(2 == items.getPid()){
// 病症的列表
List<DiseaseDetatil> diseaseDetatils = diseaseDetatilMapper.diseaseDetatilList(items.getId());
// 赋值到病症列表里
items.setDiseaseDetatils(diseaseDetatils);
}else {
// 药品的列表
List<MedicineDetail> medicineDetailList = medicineDetailMapper.medicineDetailList(items.getId());
// 赋值到药品列表里
items.setMedicineDetailList(medicineDetailList);
}
}
// 将他们赋值进去
List<Homepage> homepages = homepageMapper.homepageList(0);
homepages.forEach( item -> {
List<ListHomepage> listHomepages = homepageMapper.homepageListPid(item.getId());
item.setHomepageList(listHomepages);
}
redisService.setCacheList(REDIS_HOMEPAGE,list);
return list;
} );
redisService.setCacheList(REDIS_HOMEPAGE,homepages);
return homepages;
}
@Override
public List<Homepage> homepagePidList() {
return homepageMapper.homepageList();
}
public Homepage homepageMedicineDiseaseList(HomepageRequest homepageRequest) {
Homepage homepage = homepageMapper.homepageId(homepageRequest);
/**
* @author: ZhuoXin
* @date: 2023/10/29 8:56
* @param: [homepageRequest]
* @return: java.util.List<com.grail.interrogation.domain.Homepage>
**/
@Override
public ListHomepage homepageSumList(HomepageRequest homepageRequest) {
ListHomepage listHomepages = homepageMapper.homepageSumList(homepageRequest);
if(1== listHomepages.getPid()){
// 药品的列表
List<MedicineDetail> medicineDetailList = medicineDetailMapper.medicineDetailList(listHomepages.getId());
// 赋值到药品列表里
listHomepages.setMedicineDetailList(medicineDetailList);
if(1 == homepage.getPid()){
List<MedicineDetail> list = medicineDetailMapper.List(homepage.getId());
homepage.setMedicineDetailList(list);
}else {
List<DiseaseDetatil> diseaseDetatils = diseaseDetatilMapper.diseaseDetatilList(listHomepages.getId());
// 赋值到病症列表里
listHomepages.setDiseaseDetatils(diseaseDetatils);
List<DiseaseDetatil> list = diseaseDetatilMapper.List(homepage.getId());
homepage.setDiseaseDetatilList(list);
}
homepageMapper.homepageList();
return listHomepages;
return homepage;
}
}

View File

@ -5,8 +5,7 @@
<mapper namespace="com.grail.interrogation.mapper.DiseaseDetatilMapper">
<resultMap id="map" type="com.grail.interrogation.domain.DiseaseDetatil">
<id property="diseaseDetailId" column="disease_detail_id"></id>
<result property="diseaseId" column="disease_id"></result>
<id property="diseaseId" column="disease_id"></id>
<result property="diseaseName" column="disease_name"></result>
<result property="pathology" column="pathology"></result>
<result property="symptom" column="symptom"></result>
@ -19,10 +18,26 @@
<result property="image" column="image"></result>
<result property="status" column="status"></result>
</resultMap>
<insert id="DrseaseDetaillAdd">
insert into tb_disease_detatil (disease_name,pathology,symptom,attention,western_treatment,createId,create_date,image,status)
values (#{diseaseName},#{pathology},#{symptom},#{attention},#{westernTreatment},#{createId},now(),#{image},#{status});
</insert>
<select id="diseaseDetatilList" resultType="com.grail.interrogation.domain.DiseaseDetatil">
select
disease_detail_id,disease_id,disease_name,pathology,symptom,attention,western_treatment,create_id,create_date,update_id,update_date,image,status
from tb_disease_detatil where status = 3 and disease_detail_id = #{id}
</select>
<select id="List" resultMap="map">
SELECT
disease_id,
disease_name,
pathology,
symptom,
attention,
western_treatment,
image,
`status`
FROM
tb_disease_detatil a
LEFT JOIN homepage_middle_disease b ON a.disease_id = b.middle_disease
WHERE
a.`status` = 3
AND b.middle_homepage = #{id}
</select>
</mapper>

View File

@ -10,14 +10,16 @@
<result property="pid" column="pid"></result>
</resultMap>
<select id="homepageList" resultMap="homepage">
SELECT id , homepage , picture , pid from t_homepage where pid = 0
select id , homepage , picture , pid
from t_homepage where pid = #{i}
</select>
<select id="homepageSubquery" resultType="com.grail.interrogation.domain.ListHomepage">
SELECT id , homepage , picture , pid FROM t_homepage WHERE pid = #{id}
<select id="homepageListPid" resultType="com.grail.interrogation.domain.ListHomepage">
select id , homepage , picture , pid
from t_homepage where pid = #{pid}
</select>
<select id="homepageSumList" resultType="com.grail.interrogation.domain.ListHomepage">
select id , homepage , picture , pid from t_homepage WHERE id = #{homepagePid}
<select id="homepageId" resultMap="homepage">
select id , homepage , picture , pid
from t_homepage where id = #{homepageId}
</select>
</mapper>

View File

@ -5,7 +5,6 @@
<mapper namespace="com.grail.interrogation.mapper.MedicineDetailMapper">
<resultMap id="map" type="com.grail.interrogation.domain.MedicineDetail">
<id property="medicineId" column="medicine_id"></id>
<result property="medicineDetailId" column="medicine_detail_id"></result>
<result property="ingredient" column="ingredient"></result>
<result property="medicineName" column="medicine_name"></result>
<result property="medicineAvoid" column="medicine_avoid"></result>
@ -25,7 +24,6 @@
<insert id="medicineDetailAdd">
insert into tb_medicine_detail (
medicine_detail_id,
ingredient,
medicine_name,
medicine_avoid,
@ -39,28 +37,28 @@
status,
image
)
values (#{medicineDetailId},#{ingredient},#{medicineName},#{medicineAvoid},#{usageAndDosage},#{characterTwo},#{packageSpecification},#{adverseReaction},#{createId},now(),#{status},#{image});
values (#{ingredient},#{medicineName},#{medicineAvoid},#{usageAndDosage},#{characterTwo},#{packageSpecification},#{adverseReaction},#{createId},now(),#{status},#{image});
</insert>
<select id="medicineDetailList" resultType="com.grail.interrogation.domain.MedicineDetail">
select
medicine_detail_id,
medicine_id,
medicine_name,
ingredient,
medicine_avoid,
major_function,
usage_and_dosage,
character_two,
package_specification,
adverse_reaction,
create_id,
create_time,
update_id,
update_time,
status,
image
from tb_medicine_detail where status=3 and medicine_detail_id = #{id}
<select id="List" resultMap="map">
SELECT
medicine_id,
medicine_name,
ingredient,
medicine_avoid,
major_function,
usage_and_dosage,
character_two,
package_specification,
adverse_reaction,
`status`,
image
FROM
tb_medicine_detail a
LEFT JOIN homepage_middle_medicine b ON a.medicine_id = b.middle_medicine
WHERE
b.middle_homepage = #{id}
AND
a.`status` = 3
</select>
</mapper>