package com.gkhy.exam.system.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.gkhy.exam.common.exception.ApiException; import com.gkhy.exam.common.utils.SecurityUtils; import com.gkhy.exam.system.domain.SysClauseManagement; import com.gkhy.exam.system.mapper.SysClauseManagementMapper; import com.gkhy.exam.system.service.SysClauseManagementService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.time.LocalDateTime; import java.util.List; @Service public class SysClauseManagementServiceImpl extends ServiceImpl implements SysClauseManagementService { @Autowired private SysClauseManagementMapper sysClauseManagementMapper; @Override public List getSysClauseManagements() { LambdaQueryWrapper lambdaQueryWrapper = Wrappers.lambdaQuery() .eq(SysClauseManagement::getDelFlag, "0").orderByAsc(SysClauseManagement::getClauseNum); return baseMapper.selectList(lambdaQueryWrapper); } @Override public int saveSysClauseManagement(SysClauseManagement sysClauseManagement) { if (!SecurityUtils.adminUser()){ throw new ApiException("没有权限访问!"); } LambdaQueryWrapper lambdaQueryWrapper = Wrappers.lambdaQuery() .eq(SysClauseManagement::getDelFlag, "0").eq(SysClauseManagement::getClauseNum, sysClauseManagement.getClauseNum()); if (sysClauseManagement.getId() == null){ if (baseMapper.selectCount(lambdaQueryWrapper) > 0){ throw new ApiException("条款编号已存在!"); } sysClauseManagement.setCreateBy(SecurityUtils.getUsername()); sysClauseManagement.setCreateTime(LocalDateTime.now()); return sysClauseManagementMapper.insert(sysClauseManagement); }else { lambdaQueryWrapper.ne(SysClauseManagement::getId, sysClauseManagement.getId()); if (baseMapper.selectCount(lambdaQueryWrapper) > 0){ throw new ApiException("条款编号已存在!"); } sysClauseManagement.setUpdateBy(SecurityUtils.getUsername()); sysClauseManagement.setUpdateTime(LocalDateTime.now()); return sysClauseManagementMapper.updateById(sysClauseManagement); } } @Override public int delSysClauseManagement(Long id) { if (!SecurityUtils.adminUser()){ throw new ApiException("没有权限访问!"); } //todo 校验已使用的? SysClauseManagement sysClauseManagement = new SysClauseManagement(); sysClauseManagement.setDelFlag("1"); sysClauseManagementMapper.update(sysClauseManagement, Wrappers.lambdaQuery().eq(SysClauseManagement::getId, id)); return 1; } }