package com.szwl.controller; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.szwl.manager.TokenManager; import com.szwl.model.bo.R; import com.szwl.model.bo.ResponseModel; import com.szwl.model.bo.UserDetailBO; import com.szwl.model.entity.*; import com.szwl.service.TAdminService; import com.szwl.service.TEquipmentDeletedService; import com.szwl.service.TEquipmentService; import com.szwl.service.TProductService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; import java.util.Objects; import static com.szwl.constant.ResponseCodesEnum.P0002; /** *

* 被删除的设备表 前端控制器 *

* * @author ritchie * @since 2023-03-31 */ @Api(value = "/tEquipmentDeleted", tags = {"被删除的设备控制器"}) @RestController @RequestMapping("/tEquipmentDeleted") public class TEquipmentDeletedController { @Resource TEquipmentDeletedService tEquipmentDeletedService; @Autowired TEquipmentService tEquipmentService; @Autowired TAdminService tAdminService; @Autowired TProductService tProductService; @ApiOperation(value = "删除设备") @PostMapping("/delOneDevice") public ResponseModel delOneDevice(@RequestBody IDRequest idRequest) { // 获取设备id Long equipmentId = idRequest.getEquipmentId(); // 获取当前登录用户id String adminId = idRequest.getAdminId(); // 根据用户id查用户类型 Integer adminType = tAdminService.getById(adminId).getType(); // 判断当前用户类型 // 如果不为空,并且类型是 0 1 就执行以下操作 if (adminType != null && (adminType == 0 || adminType == 1)) { // 查询当前设备信息 TEquipment tEquipment = tEquipmentService.getOne(Wrappers.lambdaQuery().eq(TEquipment::getId, equipmentId)); System.out.println(tEquipment); if (Objects.nonNull(tEquipment)) { // 先把准备删除的设备信息添加到t_equipment_deleted表中 TEquipmentDeleted tEquipmentDeleted = new TEquipmentDeleted(); BeanUtils.copyProperties(tEquipment, tEquipmentDeleted); tEquipmentDeletedService.save(tEquipmentDeleted); LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); wrapper.eq(TProduct::getEquipmentId, equipmentId); tProductService.remove(wrapper); // 删除设备 tEquipmentService.removeById(equipmentId); return R.ok(null, "设备已删除!"); } else { return R.fail(null, "设备不存在"); } } // 如果没有删除权限 不做处理 return R.fail(P0002, "无删除权限"); } }