TEquipmentDeletedController.java 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. package com.szwl.controller;
  2. import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  3. import com.baomidou.mybatisplus.core.toolkit.Wrappers;
  4. import com.szwl.manager.TokenManager;
  5. import com.szwl.model.bo.R;
  6. import com.szwl.model.bo.ResponseModel;
  7. import com.szwl.model.bo.UserDetailBO;
  8. import com.szwl.model.entity.*;
  9. import com.szwl.service.TAdminService;
  10. import com.szwl.service.TEquipmentDeletedService;
  11. import com.szwl.service.TEquipmentService;
  12. import com.szwl.service.TProductService;
  13. import io.swagger.annotations.Api;
  14. import io.swagger.annotations.ApiOperation;
  15. import org.springframework.beans.BeanUtils;
  16. import org.springframework.beans.factory.annotation.Autowired;
  17. import org.springframework.web.bind.annotation.PostMapping;
  18. import org.springframework.web.bind.annotation.RequestBody;
  19. import org.springframework.web.bind.annotation.RequestMapping;
  20. import org.springframework.web.bind.annotation.RestController;
  21. import javax.annotation.Resource;
  22. import java.util.Objects;
  23. import static com.szwl.constant.ResponseCodesEnum.P0002;
  24. /**
  25. * <p>
  26. * 被删除的设备表 前端控制器
  27. * </p>
  28. *
  29. * @author ritchie
  30. * @since 2023-03-31
  31. */
  32. @Api(value = "/tEquipmentDeleted", tags = {"被删除的设备控制器"})
  33. @RestController
  34. @RequestMapping("/tEquipmentDeleted")
  35. public class TEquipmentDeletedController {
  36. @Resource
  37. TEquipmentDeletedService tEquipmentDeletedService;
  38. @Autowired
  39. TEquipmentService tEquipmentService;
  40. @Autowired
  41. TAdminService tAdminService;
  42. @Autowired
  43. TProductService tProductService;
  44. @ApiOperation(value = "删除设备")
  45. @PostMapping("/delOneDevice")
  46. public ResponseModel<?> delOneDevice(@RequestBody IDRequest idRequest) {
  47. // 获取设备id
  48. Long equipmentId = idRequest.getEquipmentId();
  49. // 获取当前登录用户id
  50. String adminId = idRequest.getAdminId();
  51. // 根据用户id查用户类型
  52. Integer adminType = tAdminService.getById(adminId).getType();
  53. // 判断当前用户类型
  54. // 如果不为空,并且类型是 0 1 就执行以下操作
  55. if (adminType != null && (adminType == 0 || adminType == 1)) {
  56. // 查询当前设备信息
  57. TEquipment tEquipment = tEquipmentService.getOne(Wrappers.<TEquipment>lambdaQuery().eq(TEquipment::getId, equipmentId));
  58. System.out.println(tEquipment);
  59. if (Objects.nonNull(tEquipment)) {
  60. // 先把准备删除的设备信息添加到t_equipment_deleted表中
  61. TEquipmentDeleted tEquipmentDeleted = new TEquipmentDeleted();
  62. BeanUtils.copyProperties(tEquipment, tEquipmentDeleted);
  63. tEquipmentDeletedService.save(tEquipmentDeleted);
  64. LambdaQueryWrapper<TProduct> wrapper = new LambdaQueryWrapper<>();
  65. wrapper.eq(TProduct::getEquipmentId, equipmentId);
  66. tProductService.remove(wrapper);
  67. // 删除设备
  68. tEquipmentService.removeById(equipmentId);
  69. return R.ok(null, "设备已删除!");
  70. } else {
  71. return R.fail(null, "设备不存在");
  72. }
  73. }
  74. // 如果没有删除权限 不做处理
  75. return R.fail(P0002, "无删除权限");
  76. }
  77. }