查看病历信息

前置条件:userID符合2-8查看病历信息的数据项描述
后置条件:
(1)	根据用户ID(userID)查询病历信息实体(examineInfo)与病历信息表(ExamineInfoList)存在的所有关联。
(2)	若存在关联,返回由病历信息表(ExamineInfoList)查询到的病历信息(examineInfo)实例的集合,否则返回null。请根据前后置条件为通过UserID查找病历信息写一个方法

public List<ExamineInfo> getExamineInfoByUserID(String userID)

{ List<ExamineInfo> examineInfoList = new ArrayList<>();

// 数据库操作,根据userID查询关联的病历信息实体和病历信息表

// 若存在关联,则将查询到的病历信息实例加入examineInfoList中,否则返回null if (/* 存在关联 /) {

for (ExamineInfo examineInfo : / 查询到的病历信息实例集合 */) { 、

examineInfoList.add(examineInfo);

} return examineInfoList;

} else {

return null;

}

}

前置条件:userID符合2-8查看病历信息的数据项描述
后置条件:
(1)	根据用户ID(userID)查询病历信息实体(examineInfo)与病历信息表(ExamineInfoList)存在的所有关联。
(2)	若存在关联,返回由病历信息表(ExamineInfoList)查询到的病历信息(examineInfo)实例的集合,否则返回null。请根据前后置条件为通过UserID查找病历信息分别写出controller、service、dao三层的方法

Controller层方法:

@GetMapping("/examineInfos/{userID}")
public ResponseEntity<List<ExamineInfo>> getExamineInfosByUserID(@PathVariable String userID){
    List<ExamineInfo> examineInfos = examineInfoService.getExamineInfosByUserID(userID);
    if(examineInfos!=null){
        return ResponseEntity.ok(examineInfos);
    }else{
        return ResponseEntity.notFound().build();
    }
}

Service层方法:

public List<ExamineInfo> getExamineInfosByUserID(String userID){
    return examineInfoDao.findByUserID(userID);
}

Dao层方法:

public interface ExamineInfoDao {
    List<ExamineInfo> findByUserID(String userID);
}
前置条件:userID符合8-3查看病历信息的数据项描述;
后置条件:
(1)	根据用户ID(userID)查询病历信息实体(medicalRecordInfo)与病历信息表(MedicalRecordInfoList)存在的所有关联。
(2)	若存在关联,返回由病历信息表(MedicalRecordInfoList)查询到的病历信息(medicalRecordInfo)实例的集合,否则返回null。方法如下:
MedicalRecordFormInfoController::getMedicalRecordInfoByUserID(UserID userID):List<MedicalRecordFormInfo>
伪码

伪码如下:

  1. 方法名:getMedicalRecordInfoByUserID
  2. 参数:userID(用户ID)
  3. 返回值:List类型的MedicalRecordFormInfo集合

BEGIN IF (userID符合8-3查看病历信息的数据项描述)

THEN medicalRecordInfoList = MedicalRecordInfoList.queryByUserID(userID);

IF (medicalRecordInfoList is not empty)

THEN medicalRecordInfoCollection = [];

FOR EACH medicalRecordInfo IN medicalRecordInfoList DO medicalRecordFormInfo = createMedicalRecordFormInfoFrom(medicalRecordInfo); medicalRecordInfoCollection.add(medicalRecordFormInfo);

END FOR RETURN medicalRecordInfoCollection;

ELSE RETURN null;

END IF ELSE THROW new InvalidUserIDException("用户ID不符合要求");

END IF END

前置条件:userID符合8-3查看病历信息的数据项描述;
后置条件:
(1)根据用户ID(userID)查询病历信息实体(medicalRecordInfo)与病历信息表(MedicalRecordInfoList)存在的所有关联。
(2)若存在关联,返回由病历信息表(MedicalRecordInfoList)查询到的病历信息(medicalRecordInfo)实例的集合,否则返回null。
方法如下:
MedicalRecordFormInfoService::findMedicalRecordInfoByUserID(UserID userID):List<MedicalRecordInfo>
伪码

BEGIN IF (userID not null and len(userID) == 8)

THEN medicalRecordInfoList = MedicalRecordInfoList.query('userID = %s' % userID)

IF (medicalRecordInfoList not empty)

THEN medicalRecordInfos = List<MedicalRecordInfo>() FOR medicalRecordInfo IN medicalRecordInfoList DO medicalRecordInfos.add(medicalRecordInfo)

END FOR

RETURN medicalRecordInfos

ELSE RETURN null

END IF

ELSE RAISE "Invalid userID" END IF END

前置条件:userID符合8-3查看病历信息的数据项描述
后置条件:
(1)根据用户ID(userID)查询病历信息实体(medicalRecordInfo)与病历信息表(MedicalRecordInfoList)存在的所有关联。
(2)若存在关联,返回由病历信息表(MedicalRecordInfoList)查询到的病历信息(medicalRecordInfo)实例的集合,否则返回null。
方法:
MedicalRecordFormInfoDao::selectMedicalRecordInfoByUserID(UserID userID):List<MedicalRecordInfo>
请为该方法写出对应伪码,要求需要加入sql语句

伪码如下:

Controller层:

  • 添加用户评价:addApprise(AppriseInfo appriseInfo)

Service层:

  • 添加用户评价:addApprise(AppriseInfo appriseInfo)
  • 查询用户评价:getAppriseListByUserId(int userId)

DAO层:

  • 添加用户评价:insertApprise(AppriseInfo appriseInfo)
  • 查询用户评价:selectAppriseListByUserId(int userId)

SQL语句:SELECT * FROM MedicalRecordInfoList WHERE userID = ?

Controller层:

  1. 添加用户评价信息:addAppriseInfo(HttpServletRequest request)

Service层:

  1. 添加用户评价信息:addAppriseInfo(AppriseInfo appriseInfo)

Dao层:

  1. 添加用户评价信息:insert(AppriseInfo appriseInfo)
  • 24
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

brittany•fuleiting

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值