From 35177cbc623c35ced5c20724a13168b699a6556a Mon Sep 17 00:00:00 2001 From: Chen Mingyuan <ChenM53@cardiff.ac.uk> Date: Mon, 2 Dec 2024 14:38:48 +0000 Subject: [PATCH] admin select information(service and mapper layer) --- .../mapper/CommonAdminHospitalMapper.java | 40 +++++++++++++++++ .../service/CommonAdminHospitalService.java | 15 +++++++ .../imp/CommonAdminHospitalServiceImp.java | 43 +++++++++++++++++++ 3 files changed, 98 insertions(+) create mode 100644 src/main/java/com/cardiff/client_project/mapper/CommonAdminHospitalMapper.java create mode 100644 src/main/java/com/cardiff/client_project/service/CommonAdminHospitalService.java create mode 100644 src/main/java/com/cardiff/client_project/service/imp/CommonAdminHospitalServiceImp.java diff --git a/src/main/java/com/cardiff/client_project/mapper/CommonAdminHospitalMapper.java b/src/main/java/com/cardiff/client_project/mapper/CommonAdminHospitalMapper.java new file mode 100644 index 0000000..9eee82c --- /dev/null +++ b/src/main/java/com/cardiff/client_project/mapper/CommonAdminHospitalMapper.java @@ -0,0 +1,40 @@ +package com.cardiff.client_project.mapper; + +import com.cardiff.client_project.pojo.dto.HospitalDTO; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.jdbc.core.BeanPropertyRowMapper; +import org.springframework.jdbc.core.JdbcTemplate; +import org.springframework.stereotype.Repository; + +import java.util.List; + +@Repository +public class CommonAdminHospitalMapper { + + @Autowired + JdbcTemplate jdbcTemplate; + + // æŸ¥è¯¢æ‰€æœ‰åŒ»é™¢ä¿¡æ¯ + public List<HospitalDTO> findAll() { + String sql = "SELECT * FROM hospital"; + return jdbcTemplate.query(sql, new BeanPropertyRowMapper<>(HospitalDTO.class)); + } + + // æ·»åŠ åŒ»é™¢ä¿¡æ¯ + public int save(HospitalDTO hospital) { + String sql = "INSERT INTO hospital (name, location, phone, totalBeds, availableBeds, occupancyRate) VALUES (?, ?, ?, ?, ?, ?)"; + return jdbcTemplate.update(sql, hospital.getName(), hospital.getLocation(), hospital.getPhone(), hospital.getTotalBeds(), hospital.getAvailableBeds(), hospital.getOccupancyRate()); + } + + // æ›´æ–°åŒ»é™¢ä¿¡æ¯ + public int update(HospitalDTO hospital) { + String sql = "UPDATE hospital SET name=?, location=?, phone=?, totalBeds=?, availableBeds=?, occupancyRate=? WHERE id=?"; + return jdbcTemplate.update(sql, hospital.getName(), hospital.getLocation(), hospital.getPhone(), hospital.getTotalBeds(), hospital.getAvailableBeds(), hospital.getOccupancyRate(), hospital.getId()); + } + + // æ ¹æ® ID åˆ é™¤åŒ»é™¢ä¿¡æ¯ + public int deleteById(int id) { + String sql = "DELETE FROM hospital WHERE id=?"; + return jdbcTemplate.update(sql, id); + } +} diff --git a/src/main/java/com/cardiff/client_project/service/CommonAdminHospitalService.java b/src/main/java/com/cardiff/client_project/service/CommonAdminHospitalService.java new file mode 100644 index 0000000..9981461 --- /dev/null +++ b/src/main/java/com/cardiff/client_project/service/CommonAdminHospitalService.java @@ -0,0 +1,15 @@ +package com.cardiff.client_project.service; + +import com.cardiff.client_project.pojo.dto.HospitalDTO; + +import java.util.List; + +public interface CommonAdminHospitalService { + List<HospitalDTO> getAllHospitals(); + + void addHospital(HospitalDTO hospital); + + void updateHospital(HospitalDTO hospital); + + void deleteHospital(int id); +} diff --git a/src/main/java/com/cardiff/client_project/service/imp/CommonAdminHospitalServiceImp.java b/src/main/java/com/cardiff/client_project/service/imp/CommonAdminHospitalServiceImp.java new file mode 100644 index 0000000..90a14b5 --- /dev/null +++ b/src/main/java/com/cardiff/client_project/service/imp/CommonAdminHospitalServiceImp.java @@ -0,0 +1,43 @@ +package com.cardiff.client_project.service.imp; + +import com.cardiff.client_project.pojo.dto.HospitalDTO; +import com.cardiff.client_project.service.CommonAdminHospitalService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.jdbc.core.BeanPropertyRowMapper; +import org.springframework.jdbc.core.JdbcTemplate; +import org.springframework.stereotype.Service; + +import java.util.List; + +@Service +public class CommonAdminHospitalServiceImp implements CommonAdminHospitalService { + + @Autowired + private JdbcTemplate jdbcTemplate; + + @Override + public List<HospitalDTO> getAllHospitals() { + String sql = "SELECT * FROM hospital"; + return jdbcTemplate.query(sql, new BeanPropertyRowMapper<>(HospitalDTO.class)); + } + + @Override + public void addHospital(HospitalDTO hospital) { + String sql = "INSERT INTO hospital (name, location, phone, totalBeds, availableBeds, occupancyRate) VALUES (?, ?, ?, ?, ?, ?)"; + jdbcTemplate.update(sql, hospital.getName(), hospital.getLocation(), hospital.getPhone(), + hospital.getTotalBeds(), hospital.getAvailableBeds(), hospital.getOccupancyRate()); + } + + @Override + public void updateHospital(HospitalDTO hospital) { + String sql = "UPDATE hospital SET name=?, location=?, phone=?, totalBeds=?, availableBeds=?, occupancyRate=? WHERE id=?"; + jdbcTemplate.update(sql, hospital.getName(), hospital.getLocation(), hospital.getPhone(), + hospital.getTotalBeds(), hospital.getAvailableBeds(), hospital.getOccupancyRate(), hospital.getId()); + } + + @Override + public void deleteHospital(int id) { + String sql = "DELETE FROM hospital WHERE id=?"; + jdbcTemplate.update(sql, id); + } +} -- GitLab