From 37f55403e7573d8c15b6b0f957b7cb1baf6be4ea Mon Sep 17 00:00:00 2001 From: huanghongfa <18228131219@163.com> Date: 星期二, 29 十二月 2020 14:47:15 +0800 Subject: [PATCH] 攀枝花项目服务层异常捕获统一返回给视图层服务 --- springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComOpsAdvServiceImpl.java | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 46 insertions(+), 0 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComOpsAdvServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComOpsAdvServiceImpl.java index d790d8b..75906d0 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComOpsAdvServiceImpl.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComOpsAdvServiceImpl.java @@ -1,16 +1,22 @@ package com.panzhihua.service_community.service.impl; +import com.panzhihua.common.exceptions.ServiceException; +import com.panzhihua.common.model.dtos.AppletesBackstageConfigDTO; +import com.panzhihua.common.model.dtos.advertisement.ComOpsAdvJumpDTO; import com.panzhihua.common.model.vos.R; import com.panzhihua.common.model.vos.advertisement.ComOpsAdvJumpVO; +import com.panzhihua.service_community.dao.ComOpsAdvDAO; import com.panzhihua.service_community.dao.ComOpsAdvJumpDAO; import com.panzhihua.service_community.model.dos.ComOpsAdvJumpDO; import com.panzhihua.service_community.service.ComOpsAdvService; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import org.springframework.util.ObjectUtils; import javax.annotation.Resource; import java.util.ArrayList; import java.util.List; +import java.util.stream.Collectors; /** * @program: springcloud_k8s_panzhihuazhihuishequ @@ -22,6 +28,8 @@ public class ComOpsAdvServiceImpl implements ComOpsAdvService { @Resource private ComOpsAdvJumpDAO comOpsAdvJumpDAO; + @Resource + private ComOpsAdvDAO comOpsAdvDAO; /** * 获取广告跳转内容配置 * @@ -41,4 +49,42 @@ } return R.ok(comOpsAdvJumpVOS); } + + /** + * 编辑运营后台系统配置 + * + * @param appletesBackstageConfigDTO 编辑内容 + * @return 编辑结果 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public R putJumpContent(AppletesBackstageConfigDTO appletesBackstageConfigDTO) { + List<ComOpsAdvJumpDTO> comOpsAdvJumpDTOS = appletesBackstageConfigDTO.getComOpsAdvJumpDTOS(); + if (ObjectUtils.isEmpty(comOpsAdvJumpDTOS)) { + return R.fail("广告跳转内容不能为空"); + } +// 查询所有正在使用的跳转内容id + List<Long> ids=comOpsAdvDAO.selectAllBeUsedContent(); + List<Long> collect = comOpsAdvJumpDTOS.stream().map(comOpsAdvJumpDTO -> comOpsAdvJumpDTO.getId()).collect(Collectors.toList()); + if (!ObjectUtils.isEmpty(ids)) { + ids.forEach(aLong -> { + if (!collect.contains(aLong)) { + ComOpsAdvJumpDO comOpsAdvJumpDO = comOpsAdvJumpDAO.selectById(aLong); + String jumpContent = comOpsAdvJumpDO.getJumpContent(); + throw new ServiceException(jumpContent+" 已经在使用无法删除"); + } + }); + } + comOpsAdvJumpDAO.delete(null); + comOpsAdvJumpDTOS.forEach(comOpsAdvJumpDTO -> { + ComOpsAdvJumpDO comOpsAdvJumpDO=new ComOpsAdvJumpDO(); + String jumpContent = comOpsAdvJumpDTO.getJumpContent(); + if (ObjectUtils.isEmpty(jumpContent)) { + throw new ServiceException("广告跳转内容不能为空"); + } + comOpsAdvJumpDO.setJumpContent(jumpContent); + comOpsAdvJumpDAO.insert(comOpsAdvJumpDO); + }); + return R.ok(); + } } -- Gitblit v1.7.1