Skip to content
Snippets Groups Projects
Commit 41b45c5f authored by Yulong Wang's avatar Yulong Wang
Browse files

Merge branch 'wyl' into 'main'

select and update commonadmin function achieve

See merge request !14
parents b8b85bb3 1e6271ea
No related branches found
No related tags found
1 merge request!14select and update commonadmin function achieve
Showing
with 212 additions and 4 deletions
package com.cardiff.client_project.controller.admin;
import com.cardiff.client_project.pojo.vo.SelectVo;
import com.cardiff.client_project.pojo.vo.SignUserVo;
import com.cardiff.client_project.service.AdminService;
import com.cardiff.client_project.utils.Result;
......@@ -34,8 +35,29 @@ public class AdminController {
*/
@DeleteMapping("/deleteById")
public Result deleteById(@RequestBody List<Integer> ids){
System.out.println(ids);
Result result=adminService.deleteById(ids);
return result;
}
/**
* Query information based on type
* @param type
* @return
*/
@GetMapping("/select/{type}")
public Result selectAll(@PathVariable String type){
Result result=adminService.selectAllByType(type);
return result;
}
/**
* Update data
* @param selectVo
* @return
*/
@PutMapping("/update")
public Result updateById(@RequestBody SelectVo selectVo){
Result result=adminService.update(selectVo);
return result;
}
}
package com.cardiff.client_project.mapper;
import com.cardiff.client_project.constant.ResponseCode;
import com.cardiff.client_project.pojo.dto.SelectDto;
import com.cardiff.client_project.pojo.entity.CommonAdmin;
import com.cardiff.client_project.utils.Result;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.simple.SimpleJdbcInsert;
import org.springframework.stereotype.Repository;
......@@ -30,7 +32,7 @@ public class AdminMapper {
String sql = "SELECT count(id) FROM common_admin where name = ? and email = ?";
Integer count= jdbcTemplate.queryForObject(sql, new Object[]{commonAdmin.getName(), commonAdmin.getEmail()}, Integer.class);
System.out.println(count);
if(count>=0){
if(count>0){
return Result.error(ResponseCode.ACCOUNT_EXISTS_ERROR);
}
......@@ -73,4 +75,37 @@ public class AdminMapper {
int[] item = jdbcTemplate.batchUpdate(sql, idList);
return item;
}
public Result selectAllBytype(String type) {
String sql;
List<SelectDto> query = new ArrayList<>();
if ("commonAdmin".equals(type)) {
// Parameterized queries avoid SQL injection
sql = "SELECT * FROM common_admin WHERE type = ?";
query = jdbcTemplate.query(sql, new Object[]{"commonAdmin"}, new BeanPropertyRowMapper<>(SelectDto.class));
}
if("patient".equals(type)){
sql = "SELECT * FROM patient WHERE type = ?";
query = jdbcTemplate.query(sql, new Object[]{"patient"}, new BeanPropertyRowMapper<>(SelectDto.class));
}
return Result.success(query);
}
/**
* update data
* @param commonAdmin
*/
public int update(CommonAdmin commonAdmin) {
String sql = "UPDATE common_admin SET name = ?, email = ? , status = ? WHERE id = ?";
int update = jdbcTemplate.update(sql, preparedStatement -> {
preparedStatement.setString(1, commonAdmin.getName());
preparedStatement.setString(2, commonAdmin.getEmail());
preparedStatement.setInt(3, commonAdmin.getStatus());
preparedStatement.setInt(4, commonAdmin.getId());
});
return update;
}
}
package com.cardiff.client_project.mapper;
import com.cardiff.client_project.pojo.entity.Patient;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Repository;
@Repository
public class PatientMapper {
@Autowired
JdbcTemplate jdbcTemplate;
/**
* update patient data
* @param patient
* @return
*/
public int update(Patient patient) {
String sql = "UPDATE patient SET name = ?,phone = ?, age=?, email=?, status = ?,hospitalId =? WHERE id = ?";
int update = jdbcTemplate.update(sql, preparedStatement -> {
preparedStatement.setString(1, patient.getName());
preparedStatement.setString(2, patient.getPhone());
preparedStatement.setInt(3, patient.getAge());
preparedStatement.setString(4, patient.getEmail());
preparedStatement.setInt(5, patient.getStatus());
preparedStatement.setInt(6, patient.getHospitalId());
preparedStatement.setInt(7, patient.getId());
});
return update;
}
}
package com.cardiff.client_project.pojo.dto;
import lombok.Data;
import lombok.ToString;
import java.util.Date;
@Data
@ToString
public class SelectDto {
private int id;
private String name;
private String email;
private String phone;
private String address;
private String type;
private String role;
private String maxAmount;
private int status;
private Date freetime;
}
......@@ -6,7 +6,7 @@ import lombok.ToString;
@Data
@ToString
public class CommonAdmin {
private int id;
private String name;
private String password;
private String type;
......
package com.cardiff.client_project.pojo.entity;
import lombok.Data;
import lombok.ToString;
@Data
@ToString
public class Patient {
private int id;
private String name;
private String password;
private int roleId;
private int status;
private String type;
private int hospitalId;
private String gender;
private int age;
private String email;
private String phone;
}
package com.cardiff.client_project.pojo.vo;
import lombok.Data;
import lombok.ToString;
import java.util.Date;
@Data
@ToString
public class SelectVo {
private int id;
private String name;
private String email;
private String phone;
private String address;
private String type;
private String role;
private String maxAmount;
private int status;
private Date freetime;
}
package com.cardiff.client_project.service;
import com.cardiff.client_project.pojo.vo.SelectVo;
import com.cardiff.client_project.pojo.vo.SignUserVo;
import com.cardiff.client_project.utils.Result;
......@@ -20,4 +21,18 @@ public interface AdminService {
* @return
*/
Result deleteById(List<Integer> ids);
/**
* Query information based on type
* @param type
* @return
*/
Result selectAllByType(String type);
/**
* Update data
* @param selectVo
* @return
*/
Result update(SelectVo selectVo);
}
......@@ -4,7 +4,10 @@ package com.cardiff.client_project.service.imp;
import com.cardiff.client_project.constant.Authority;
import com.cardiff.client_project.constant.ResponseCode;
import com.cardiff.client_project.mapper.AdminMapper;
import com.cardiff.client_project.mapper.PatientMapper;
import com.cardiff.client_project.pojo.entity.CommonAdmin;
import com.cardiff.client_project.pojo.entity.Patient;
import com.cardiff.client_project.pojo.vo.SelectVo;
import com.cardiff.client_project.pojo.vo.SignUserVo;
import com.cardiff.client_project.service.AdminService;
import com.cardiff.client_project.utils.Result;
......@@ -22,6 +25,8 @@ public class AdminServiceImp implements AdminService {
@Autowired
private AdminMapper adminMapper;
@Autowired
private PatientMapper patientMapper;
@Autowired
PasswordEncoder passwordEncoder;
/**
......@@ -55,4 +60,42 @@ public class AdminServiceImp implements AdminService {
adminMapper.deleteById(ids);
return Result.success(ResponseCode.SUCCESS);
}
/**
* Query information based on type
* @param type
* @return
*/
@Override
public Result selectAllByType(String type) {
Result result = adminMapper.selectAllBytype(type);
return result;
}
/**
* Update data
* @param selectVo
* @return
*/
@Override
public Result update(SelectVo selectVo) {
int update=0;
if(selectVo.getType().equals("commonAdmin")){
CommonAdmin commonAdmin = new CommonAdmin();
BeanUtils.copyProperties(selectVo,commonAdmin);
update = adminMapper.update(commonAdmin);
}
if(selectVo.getType().equals("patient")){
Patient patient = new Patient();
BeanUtils.copyProperties(selectVo,patient);
update=patientMapper.update(patient);
}
if(update==0){
return Result.error(ResponseCode.ERROR);
}else {
return Result.success(ResponseCode.SUCCESS);
}
}
}
......@@ -13,7 +13,7 @@ import java.io.Serializable;
@JsonInclude(JsonInclude.Include.NON_NULL)
public class Result<T> implements Serializable {
// private static final long serialVersionUID = 7735505903525411467L;//序列化标识
// private static final long serialVersionUID = 7735505903525411467L;//Serialization identifier
// Success value. The default value is 1
private static final int SUCCESS_CODE = 1;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment