DemoServiceImpl.java 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. package com.kcim.service.impl;
  2. import com.baomidou.mybatisplus.annotation.TableLogic;
  3. import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  4. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  5. import com.kcim.constants.NumberConstant;
  6. import com.kcim.dao.model.Test;
  7. import com.kcim.dao.repository.TestRepository;
  8. import com.kcim.service.DemoService;
  9. import com.kcim.util.BeanUtil;
  10. import com.kcim.util.PageUtils;
  11. import com.kcim.util.UserContext;
  12. import lombok.AllArgsConstructor;
  13. import lombok.extern.slf4j.Slf4j;
  14. import org.springframework.stereotype.Service;
  15. import org.springframework.util.CollectionUtils;
  16. import org.springframework.util.StringUtils;
  17. import java.util.ArrayList;
  18. import java.util.Date;
  19. import java.util.Objects;
  20. /**
  21. * @program: center-parent
  22. * @description:
  23. * @author: Wang.YS
  24. * @create: 2023-11-30 20:15
  25. **/
  26. @Service("DemoService")
  27. @Slf4j
  28. @AllArgsConstructor
  29. public class DemoServiceImpl implements DemoService {
  30. TestRepository repository;
  31. /**
  32. * 测试-新增
  33. * @param request 入参
  34. */
  35. @Override
  36. public void testAdd(Test request) {
  37. request.setCreateUser(String.valueOf(UserContext.getCurrentUser().getId()));
  38. request.setCreateTime(new Date());
  39. repository.save(request);
  40. }
  41. /**
  42. * 测试-编辑
  43. * @param request 入参
  44. */
  45. @Override
  46. public void testEdit(Test request) {
  47. Integer id = request.getId();
  48. Test byId = repository.getById(id);
  49. if(Objects.nonNull(byId)){
  50. Test test = BeanUtil.convertObj(request, byId);
  51. test.setUpdateTime(new Date());
  52. test.setUpdateUser(String.valueOf(UserContext.getCurrentUser().getId()));
  53. repository.updateById(test);
  54. }
  55. }
  56. /**
  57. * 测试删除
  58. * @param id 主键
  59. */
  60. @Override
  61. public void testDelete(Integer id) {
  62. Test byId = repository.getById(id);
  63. if(Objects.nonNull(byId)){
  64. byId.setUpdateTime(new Date());
  65. byId.setUpdateUser(String.valueOf(UserContext.getCurrentUser().getId()));
  66. repository.updateById(byId);
  67. //逻辑删除 需要给del_flag 添加 @TableLogic(value = "0",delval = "1") 进行标识
  68. repository.removeById(id);
  69. }
  70. }
  71. /**
  72. * 测试-查询
  73. * @param name 名称过滤
  74. * @return 符合条件的数据
  75. */
  76. @Override
  77. public Object testQuery(String name) {
  78. return repository.getList(name);
  79. }
  80. /**
  81. * 测试分页查询
  82. * @param current 当前页
  83. * @param pageSize 页容量
  84. * @param name 过滤名称
  85. * @return 分页列表
  86. */
  87. @Override
  88. public Object testPage(Integer current, Integer pageSize, String name) {
  89. Page<Test> page = repository.getPage(current, pageSize, name);
  90. if(CollectionUtils.isEmpty(page.getRecords())){
  91. return new PageUtils(new ArrayList<>(), NumberConstant.ZERO,pageSize,current);
  92. }
  93. return new PageUtils(page.getRecords(), Math.toIntExact(page.getTotal()),pageSize,current);
  94. }
  95. }