package com.hxzk.gps.service.impl.Cabinet; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.hxzk.gps.controller.Cabinet.deo.TableSearchResultCabinet; import com.hxzk.gps.entity.Cabinet.TbCabinet; import com.hxzk.gps.entity.FaKaJi.TbFakaji; import com.hxzk.gps.mapper.Cabinet.TbCabinetMapper; import com.hxzk.gps.result.ListDataResult; import com.hxzk.gps.result.ResultTable; import com.hxzk.gps.result.table; import com.hxzk.gps.service.Cabinet.TbCabinetService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hxzk.gps.service.Cabinet.TbFakajiService; import com.hxzk.gps.util.GetUser.UserInfoUtil; import com.hxzk.gps.util.MessageUtils.MessageUtils; import com.hxzk.gps.util.Result.ReturnMessage; import com.hxzk.gps.controller.System.SystemLogUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; /** *

* 服务实现类 *

* * @author YuZhiTong * @since 2025-07-03 */ @Service public class TbCabinetServiceImpl extends ServiceImpl implements TbCabinetService { @Autowired TbFakajiService fakajiService; @Override public ResultTable FindCabinetInfo(TableSearchResultCabinet tableSearchResultCabinet) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("company",UserInfoUtil.getUserCompany()); PageHelper.startPage(tableSearchResultCabinet.getTableList().getPageNum(),tableSearchResultCabinet.getTableList().getPageSize()); PageInfo info = new PageInfo<>(baseMapper.selectList(queryWrapper)); table achortable = new table<>(info.getList(),tableSearchResultCabinet.getTableList().getPageNum(),tableSearchResultCabinet.getTableList().getPageSize(),info.getTotal()); return ListDataResult.resultTableSuccess(achortable, MessageUtils.getMessage("Success")); } @Override public ReturnMessage add(TbCabinet cabinet) { /* 声明操作状态 * */ boolean isSuccess = false; QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("cabinetnum",cabinet.getCabinetnum()); Integer count = Math.toIntExact(baseMapper.selectCount(queryWrapper)); if (count > 0){ return ReturnMessage.ReturnMessageError("CabinetRepeat"); } try { for (int i = 0; i < 60; i++){ TbFakaji fakaji = new TbFakaji(); fakaji.setSlotnumber(String.valueOf(i+1)); fakaji.setDeviceid(cabinet.getCabinetnum()); fakaji.setStatus("0"); fakaji.setCompany(UserInfoUtil.getUserCompany()); fakajiService.getBaseMapper().insert(fakaji); } isSuccess = true; cabinet.setCompany(UserInfoUtil.getUserCompany()); baseMapper.insert(cabinet); }catch (Exception e){ } return SystemLogUtil.handleAddResult(isSuccess,"CardAdd",cabinet.getCabinetnum()); } @Override public ReturnMessage update(TbCabinet cabinet) { /* 声明操作状态 * */ boolean isSuccess = false; try { // 使用ID进行更新,确保更新的是正确的记录 if (cabinet.getId() != null) { baseMapper.updateById(cabinet); isSuccess = true; } else { // 如果没有ID,则使用原来的方式 QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("cabinetnum",cabinet.getCabinetnum()); baseMapper.update(cabinet,queryWrapper); isSuccess = true; } }catch (Exception e){ System.out.println("更新失败: " + e.getMessage()); } return SystemLogUtil.handleUpdateResult(isSuccess,"CardUpdate",cabinet.getCabinetnum()); } @Override public ReturnMessage delete(TbCabinet cabinet) { /* 声明操作状态 * */ boolean isSuccess = false; try { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("cabinetnum",cabinet.getCabinetnum()); baseMapper.delete(queryWrapper); isSuccess = true; }catch (Exception e){ } return SystemLogUtil.handleDeleteResult(isSuccess,"CardDelete",cabinet.getCabinetnum()); } @Override public ReturnMessage batchDelete(List ids) { /* 声明操作状态 * */ boolean isSuccess = false; try { // 批量删除 baseMapper.deleteBatchIds(ids); isSuccess = true; }catch (Exception e){ System.out.println("批量删除失败: " + e.getMessage()); } return SystemLogUtil.handleDeleteResult(isSuccess,"CardBatchDelete",ids.toString()); } }