ManagerService.java 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  1. package com.qxgmat.service;
  2. import com.github.pagehelper.Page;
  3. import com.nuliji.tools.AbstractService;
  4. import com.nuliji.tools.Tools;
  5. import com.nuliji.tools.exception.ParameterException;
  6. import com.nuliji.tools.exception.SystemException;
  7. import com.nuliji.tools.mybatis.Example;
  8. import com.qxgmat.data.constants.enums.status.DirectionStatus;
  9. import com.qxgmat.data.dao.ManagerMapper;
  10. import com.qxgmat.data.dao.entity.Manager;
  11. import org.slf4j.Logger;
  12. import org.slf4j.LoggerFactory;
  13. import org.springframework.stereotype.Service;
  14. import javax.annotation.Resource;
  15. import java.util.Collection;
  16. import java.util.List;
  17. import java.util.Objects;
  18. /**
  19. * Created by GaoJie on 2017/11/1.
  20. */
  21. @Service
  22. public class ManagerService extends AbstractService {
  23. private static final Logger logger = LoggerFactory.getLogger(ManagerService.class);
  24. @Resource
  25. private ManagerMapper managerMapper;
  26. public Manager getByUserName(String userName){
  27. Manager manager = Manager.builder().username(userName).build();
  28. manager = one(managerMapper, manager);
  29. return manager;
  30. }
  31. public boolean equalsPassword(Manager manager, String password){
  32. logger.info("{},{}", manager.getPassword(), Tools.stringMD5(Tools.stringMD5(password)));
  33. return Objects.equals(manager.getPassword(), Tools.stringMD5(Tools.stringMD5(password)));
  34. }
  35. public Manager add(Manager manager){
  36. if(manager.getPassword() != null) manager.setPassword(Tools.stringMD5(Tools.stringMD5(manager.getPassword())));
  37. Manager in = getByUserName(manager.getUsername());
  38. if (in!=null) {
  39. throw new ParameterException("用户名已使用");
  40. }
  41. int result = insert(managerMapper, manager);
  42. manager = one(managerMapper, manager.getId());
  43. if(manager == null){
  44. throw new SystemException("用户添加失败");
  45. }
  46. return manager;
  47. }
  48. public Manager edit(Manager manager){
  49. Manager in = one(managerMapper, manager.getId());
  50. if(in == null){
  51. throw new ParameterException("用户不存在");
  52. }
  53. in = getByUserName(manager.getUsername());
  54. if (in != null && !in.getId().equals(manager.getId())){
  55. throw new ParameterException("用户名已使用");
  56. }
  57. if(manager.getPassword() != null) manager.setPassword(Tools.stringMD5(Tools.stringMD5(manager.getPassword())));
  58. int result = update(managerMapper, manager);
  59. return manager;
  60. }
  61. public boolean delete(Number id){
  62. Manager in = one(managerMapper, id);
  63. if(in == null){
  64. throw new ParameterException("用户不存在");
  65. }
  66. int result = delete(managerMapper, id);
  67. return result > 0;
  68. }
  69. public Manager get(Number id){
  70. Manager in = one(managerMapper, id);
  71. if(in == null){
  72. throw new ParameterException("用户不存在");
  73. }
  74. return in;
  75. }
  76. public Page<Manager> select(int page, int pageSize){return select(managerMapper, page, pageSize);
  77. }
  78. public Page<Manager> select(int page, int pageSize, String order, DirectionStatus direction){
  79. Example example = new Example(Manager.class);
  80. if(order == null || order.isEmpty()) order = "id";
  81. if (direction != null){
  82. switch(direction){
  83. case ASC:
  84. example.orderBy(order).asc();
  85. break;
  86. case DESC:
  87. default:
  88. example.orderBy(order).desc();
  89. }
  90. } else {
  91. example.orderBy(order).desc();
  92. }
  93. return select(managerMapper, example, page, pageSize);
  94. }
  95. public Page<Manager> select(Integer[] ids){
  96. return page(()->select(managerMapper, ids), 1, ids.length);
  97. }
  98. public List<Manager> select(Collection ids){
  99. return select(managerMapper, ids);
  100. }
  101. }