protected void addDiagnosis(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// 处理注册 Doctor doctor = (Doctor)request.getSession().getAttribute("doctor"); String message = "no"; if(doctor !=null) { Diagnosis Diagnosis = WebUtils.toBean(request.getParameterMap(), Diagnosis.class); Diagnosis.setCreate_date(new SimpleDateFormat("yyyy-MM-dd HH:mm").format(new Date())); Diagnosis.setDid(doctor.getId()); Diagnosis.setUname(userService.findUserById(Diagnosis.getUid().toString()).getRealname()); DiagnosisService.addDiagnosis(Diagnosis); message = "yes"; } response.getWriter().print(message); }该段代码是添加诊断信息,我想让药品数量根据诊断信息开的要减少需要怎么操作
时间: 2024-02-05 22:13:20 浏览: 78
如果你想要让药品数量根据诊断信息减少,你需要在添加诊断信息的代码中添加相应的逻辑。具体来说,你需要完成以下步骤:
1. 在 `Diagnosis` 对象中添加需要用到的属性,比如药品名称、数量等。
2. 在添加诊断信息的处理方法中,根据诊断信息来计算需要减少的药品数量。
3. 调用药品服务的相关方法,将药品数量减少。
以下是修改后的代码:
```
protected void addDiagnosis(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
Doctor doctor = (Doctor) request.getSession().getAttribute("doctor");
String message = "no";
if (doctor != null) {
Diagnosis diagnosis = WebUtils.toBean(request.getParameterMap(), Diagnosis.class);
diagnosis.setCreate_date(new SimpleDateFormat("yyyy-MM-dd HH:mm").format(new Date()));
diagnosis.setDid(doctor.getId());
diagnosis.setUname(userService.findUserById(diagnosis.getUid().toString()).getRealname());
// 获取需要减少的药品名称和数量
String medicineName = diagnosis.getMedicineName();
int medicineNum = diagnosis.getMedicineNum();
// 减少药品数量
Medicine medicine = medicineService.getMedicineByName(medicineName);
medicine.setNum(medicine.getNum() - medicineNum);
medicineService.updateMedicine(medicine);
DiagnosisService.addDiagnosis(diagnosis);
message = "yes";
}
response.getWriter().print(message);
}
```
这段代码假设你已经有了一个 `MedicineService` 类,其中包含了获取药品信息和更新药品信息的方法。你还需要根据实际情况进行相应的修改。
阅读全文