From ec09e9f2c72ff37654076c327008ac89ed32a8c3 Mon Sep 17 00:00:00 2001 From: jiangqs <343695869@qq.com> Date: 星期六, 24 六月 2023 17:44:11 +0800 Subject: [PATCH] 导入导出 --- ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/SysTagServiceImpl.java | 65 ++++++++++++++++++++++++++++++++ 1 files changed, 65 insertions(+), 0 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/SysTagServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/SysTagServiceImpl.java index 9ce739b..625df59 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/SysTagServiceImpl.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/SysTagServiceImpl.java @@ -5,12 +5,14 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.common.core.exception.ServiceException; +import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.system.api.constant.AppErrorConstant; import com.ruoyi.system.api.domain.poji.config.SysTag; import com.ruoyi.system.api.service.RemoteGoodsService; import com.ruoyi.system.api.service.RemoteMemberService; import com.ruoyi.system.api.service.RemoteShopService; import com.ruoyi.system.domain.dto.MgtTagEditDto; +import com.ruoyi.system.domain.dto.MgtTagImportDto; import com.ruoyi.system.domain.dto.MgtTagPageDto; import com.ruoyi.system.domain.vo.MgtTagPageVo; import com.ruoyi.system.mapper.config.SysTagMapper; @@ -166,4 +168,67 @@ break; } } + + /** + * @description importTag + * @param tagList + * @param tagType + * @param operName + * @return String + * @author jqs34 + * @date 2023/6/24 17:32 + */ + public String importTag(List<MgtTagImportDto> tagList, Integer tagType, String operName) { + if (StringUtils.isNull(tagList) || tagList.size() == 0) { + throw new ServiceException("导入标签数据不能为空!"); + } + int successNum = 0; + int failureNum = 0; + StringBuilder successMsg = new StringBuilder(); + StringBuilder failureMsg = new StringBuilder(); + String tagName; + LambdaQueryWrapper<SysTag> queryWrapper; + SysTag sysTagSame; + SysTag sysTagNew; + Date nowTime = new Date(); + for (MgtTagImportDto entity : tagList) { + try { + tagName = entity.getTagName(); + sysTagSame = null; + // 验证是否存在这个用户 + queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(SysTag::getDelFlag, 0) // 查询条件:delFlag=0 + .eq(SysTag::getTagType, tagType) // 查询条件:tagType=mgtTagEditDto的tagType属性 + .eq(SysTag::getTagName, tagName); // 查询条件:tagName=mgtTagEditDto的tagName属性 + // 执行查询,获取与查询条件匹配的SysTag对象 + sysTagSame = this.getOne(queryWrapper); + if (sysTagSame == null) { + sysTagNew = new SysTag(); + sysTagNew.setDelFlag(0); + sysTagNew.setTagType(tagType); + sysTagNew.setTagName(tagName); + sysTagNew.setCreateTime(nowTime); + sysTagNew.setSynFlag(0); + this.save(sysTagNew); + successNum++; + successMsg.append("<br/>" + successNum + "、标签 " + sysTagNew.getTagName() + " 导入成功"); + } else { + failureNum++; + failureMsg.append("<br/>" + failureNum + "、标签 " + sysTagSame.getTagName() + " 已存在"); + } + } catch (Exception e) { + failureNum++; + String msg = "<br/>" + failureNum + "、标签 " + entity.getTagName() + " 导入失败:"; + failureMsg.append(msg + e.getMessage()); + log.error(msg, e); + } + } + if (failureNum > 0) { + failureMsg.insert(0, "很抱歉,导入失败!共 " + failureNum + " 条数据格式不正确,错误如下:"); + throw new ServiceException(failureMsg.toString()); + } else { + successMsg.insert(0, "恭喜您,数据已全部导入成功!共 " + successNum + " 条,数据如下:"); + } + return successMsg.toString(); + } } -- Gitblit v1.7.1