package com.ruoyi.system.service.impl; import java.util.List; import com.ruoyi.common.exception.ServiceException; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.common.utils.bean.BeanValidators; import com.ruoyi.system.domain.ContractTable; import com.ruoyi.system.domain.dto.QueryEntity; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.ruoyi.system.mapper.GradTableMapper; import com.ruoyi.system.domain.GradTable; import com.ruoyi.system.service.IGradTableService; import javax.validation.Validator; /** * A类证书Service业务层处理 * * @author ruoyi * @date 2022-12-05 */ @Service public class GradTableServiceImpl implements IGradTableService { @Autowired private GradTableMapper gradTableMapper; @Autowired protected Validator validator; /** * 查询A类证书 * * @param id A类证书主键 * @return A类证书 */ @Override public GradTable selectGradTableById(Integer id) { return gradTableMapper.selectGradTableById(id); } /** * 查询A类证书列表 * * @param gradTable A类证书 * @return A类证书 */ @Override public List selectGradTableList(GradTable gradTable) { return gradTableMapper.selectGradTableList(gradTable); } /** * 新增A类证书 * * @param gradTable A类证书 * @return 结果 */ @Override public int insertGradTable(GradTable gradTable) { return gradTableMapper.insertGradTable(gradTable); } /** * 修改A类证书 * * @param gradTable A类证书 * @return 结果 */ @Override public int updateGradTable(GradTable gradTable) { return gradTableMapper.updateGradTable(gradTable); } /** * 批量删除A类证书 * * @param ids 需要删除的A类证书主键 * @return 结果 */ @Override public int deleteGradTableByIds(Integer[] ids) { return gradTableMapper.deleteGradTableByIds(ids); } /** * 删除A类证书信息 * * @param id A类证书主键 * @return 结果 */ @Override public int deleteGradTableById(Integer id) { return gradTableMapper.deleteGradTableById(id); } @Override public String importCon(List stuList, Boolean isUpdateSupport, String operName) { if (StringUtils.isNull(stuList) || stuList.size() == 0) { throw new ServiceException("导入A类证书基本信息数据不能为空!"); } int successNum = 0; int failureNum = 0; StringBuilder successMsg = new StringBuilder(); StringBuilder failureMsg = new StringBuilder(); for (GradTable con : stuList) { try { // 验证是否存在这个用户 GradTable u = gradTableMapper.selectGradTableById(con.getId()); if (StringUtils.isNull(u)) { BeanValidators.validateWithException(validator, con); con.setCreateBy(operName); this.insertGradTable(con); successNum++; successMsg.append("
" + successNum + "、ID " + con.getId() + " 导入成功"); } else if (isUpdateSupport) { BeanValidators.validateWithException(validator, con); con.setUpdateBy(operName); this.updateGradTable(con); successNum++; successMsg.append("
" + successNum + "、ID " + con.getId() + " 更新成功"); } else { failureNum++; failureMsg.append("
" + failureNum + "、ID " + con.getId() + " 已存在"); } } catch (Exception e) { failureNum++; String msg = "
" + failureNum + "、ID " + con.getId() + " 导入失败:"; failureMsg.append(msg + e.getMessage()); } } if (failureNum > 0) { failureMsg.insert(0, "很抱歉,导入失败!共 " + failureNum + " 条数据格式不正确,错误如下:"); throw new ServiceException(failureMsg.toString()); } else { successMsg.insert(0, "恭喜您,数据已全部导入成功!共 " + successNum + " 条,数据如下:"); } return successMsg.toString(); } }