From 8e2d30fd6ac9c8cd3ee6d68c8fd575848f37390d Mon Sep 17 00:00:00 2001 From: 罗元桥 <2376770955@qq.com> Date: 星期二, 31 八月 2021 10:42:13 +0800 Subject: [PATCH] Merge branch 'test' into 'master' --- springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActWorkGuideServiceImpl.java | 91 +++++++++++++++++++++++++++------------------ 1 files changed, 54 insertions(+), 37 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActWorkGuideServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActWorkGuideServiceImpl.java index bde8b41..a53c178 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActWorkGuideServiceImpl.java +++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActWorkGuideServiceImpl.java @@ -1,43 +1,51 @@ package com.panzhihua.service_community.service.impl; +import java.util.List; +import java.util.stream.Collectors; + +import javax.annotation.Resource; + +import org.springframework.beans.BeanUtils; +import org.springframework.stereotype.Service; + import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.panzhihua.common.model.dtos.community.ComActWorkGuideDTO; import com.panzhihua.common.model.dtos.community.PageActWorkGuideDTO; import com.panzhihua.common.model.vos.R; import com.panzhihua.common.model.vos.community.ComActWorkGuideMaterialVO; import com.panzhihua.common.model.vos.community.ComActWorkGuideVO; -import com.panzhihua.common.utlis.DifferentLongListUtil; +import com.panzhihua.service_community.dao.ComActDAO; import com.panzhihua.service_community.dao.ComActWorkGuideDAO; import com.panzhihua.service_community.dao.ComActWorkGuideMaterialDAO; +import com.panzhihua.service_community.model.dos.ComActDO; import com.panzhihua.service_community.model.dos.ComActWorkGuideDO; import com.panzhihua.service_community.model.dos.ComActWorkGuideMaterialDO; import com.panzhihua.service_community.service.ComActWorkGuideService; -import org.springframework.beans.BeanUtils; -import org.springframework.stereotype.Service; - -import javax.annotation.Resource; -import java.util.List; -import java.util.stream.Collectors; /** * @auther llming * @describe 办事指南 */ @Service -public class ComActWorkGuideServiceImpl extends ServiceImpl<ComActWorkGuideDAO, ComActWorkGuideDO> implements ComActWorkGuideService { +public class ComActWorkGuideServiceImpl extends ServiceImpl<ComActWorkGuideDAO, ComActWorkGuideDO> + implements ComActWorkGuideService { + static String AK = "W3x8DhCWKc2UFIwYgclpRBdL6BeGLLQt"; // 百度地图密钥 @Resource ComActWorkGuideMaterialDAO workGuideMaterialDAO; + @Resource + ComActDAO comActDAO; @Override - public R addWorkGuide(ComActWorkGuideVO workGuideVO, Long userId) { + public R addWorkGuide(ComActWorkGuideDTO workGuideDTO, Long userId) { ComActWorkGuideDO comActWorkGuideDO = new ComActWorkGuideDO(); - BeanUtils.copyProperties(workGuideVO, comActWorkGuideDO); + BeanUtils.copyProperties(workGuideDTO, comActWorkGuideDO); comActWorkGuideDO.setCreateBy(userId); this.baseMapper.insert(comActWorkGuideDO); - //保存办事指南材料 - workGuideVO.getMaterials().forEach(material -> { + // 保存办事指南材料 + workGuideDTO.getMaterials().forEach(material -> { ComActWorkGuideMaterialDO workGuideMaterialDO = new ComActWorkGuideMaterialDO(); workGuideMaterialDO.setMaterialName(material.getMaterialName()); workGuideMaterialDO.setWorkGuideId(comActWorkGuideDO.getId()); @@ -47,44 +55,44 @@ } @Override - public R editWorkGuide(ComActWorkGuideVO workGuideVO, Long userId) { - if (workGuideVO.getId() == 0L) { + public R editWorkGuide(ComActWorkGuideDTO workGuideDTO, Long userId) { + if (workGuideDTO.getId() == 0L) { return R.fail("Id有误!"); } - ComActWorkGuideDO workGuideDO = this.baseMapper.selectById(workGuideVO.getId()); + ComActWorkGuideDO workGuideDO = this.baseMapper.selectById(workGuideDTO.getId()); if (workGuideDO == null) { return R.fail("Id有误!"); } - BeanUtils.copyProperties(workGuideVO, workGuideDO); + BeanUtils.copyProperties(workGuideDTO, workGuideDO); workGuideDO.setUpdateBy(userId); this.baseMapper.updateById(workGuideDO); - if (workGuideVO.getMaterials().size() == 0) {//若编辑材料为null,执行删除操作 + if (workGuideDTO.getMaterials().size() == 0) {// 若编辑材料为null,执行删除操作 workGuideMaterialDAO.delete(new LambdaQueryWrapper<ComActWorkGuideMaterialDO>() - .eq(ComActWorkGuideMaterialDO::getWorkGuideId, workGuideVO.getId())); - } else {//若材料不为空,但是少了数据条数,也要执行删除 - List<ComActWorkGuideMaterialDO> workGuideMaterialDOS = workGuideMaterialDAO.selectList(new LambdaQueryWrapper<ComActWorkGuideMaterialDO>() - .eq(ComActWorkGuideMaterialDO::getWorkGuideId, workGuideVO.getId())); - //1、筛选vo里面和db里,需要删除的材料数据 - List<Long> voMaterialIds = workGuideVO.getMaterials().stream() - .filter(materialVo -> materialVo.getId() != null) - .map(ComActWorkGuideMaterialVO::getId) - .collect(Collectors.toList()); + .eq(ComActWorkGuideMaterialDO::getWorkGuideId, workGuideDTO.getId())); + } else {// 若材料不为空,但是少了数据条数,也要执行删除 + List<ComActWorkGuideMaterialDO> workGuideMaterialDOS = + workGuideMaterialDAO.selectList(new LambdaQueryWrapper<ComActWorkGuideMaterialDO>() + .eq(ComActWorkGuideMaterialDO::getWorkGuideId, workGuideDTO.getId())); + // 1、筛选vo里面和db里,需要删除的材料数据 + List<Long> voMaterialIds = + workGuideDTO.getMaterials().stream().filter(materialVo -> materialVo.getId() != null) + .map(ComActWorkGuideMaterialVO::getId).collect(Collectors.toList()); List<Long> deleteMaterialIds = workGuideMaterialDOS.stream() - .filter(workGuideMaterialDO -> !voMaterialIds.contains(workGuideMaterialDO.getId())) - .map(ComActWorkGuideMaterialDO::getId) - .collect(Collectors.toList()); + .filter(workGuideMaterialDO -> !voMaterialIds.contains(workGuideMaterialDO.getId())) + .map(ComActWorkGuideMaterialDO::getId).collect(Collectors.toList()); if (deleteMaterialIds.size() != 0) { workGuideMaterialDAO.deleteBatchIds(deleteMaterialIds); } - workGuideVO.getMaterials().forEach(materialsVO -> { + workGuideDTO.getMaterials().forEach(materialsVO -> { if (materialsVO.getId() != null && materialsVO.getId() != 0L) { - ComActWorkGuideMaterialDO workGuideMaterialDO1 = workGuideMaterialDOS.stream().filter(workGuideMaterialDO -> workGuideMaterialDO.getId() - .equals(materialsVO.getId())).findFirst().orElse(null); - if (workGuideMaterialDO1 != null) {//2、如果db有,执行编辑 + ComActWorkGuideMaterialDO workGuideMaterialDO1 = workGuideMaterialDOS.stream() + .filter(workGuideMaterialDO -> workGuideMaterialDO.getId().equals(materialsVO.getId())) + .findFirst().orElse(null); + if (workGuideMaterialDO1 != null) {// 2、如果db有,执行编辑 workGuideMaterialDO1.setMaterialName(materialsVO.getMaterialName()); workGuideMaterialDAO.updateById(workGuideMaterialDO1); } - } else {//3、如果db没有,执行新增 + } else {// 3、如果db没有,执行新增 ComActWorkGuideMaterialDO newWorkGuideMaterialDO = new ComActWorkGuideMaterialDO(); newWorkGuideMaterialDO.setMaterialName(materialsVO.getMaterialName()); newWorkGuideMaterialDO.setWorkGuideId(workGuideDO.getId()); @@ -96,14 +104,23 @@ } @Override - public R detailWorkGuide(Long workGuideId) { + public R detailWorkGuide(Long workGuideId, Long communityId) { ComActWorkGuideDO workGuideDO = this.baseMapper.selectById(workGuideId); if (workGuideDO == null) { return R.fail("Id有误!"); } ComActWorkGuideVO vo = new ComActWorkGuideVO(); BeanUtils.copyProperties(workGuideDO, vo); - List<ComActWorkGuideMaterialDO> workGuideMaterialDOS = workGuideMaterialDAO.selectList(new LambdaQueryWrapper<ComActWorkGuideMaterialDO>() + ComActDO comActDO = comActDAO.selectById(communityId); + if (comActDO != null) { + vo.setAddress(comActDO.getAddress()); + vo.setPhone(comActDO.getContactsPhone()); + vo.setLon(comActDO.getLng()); + vo.setLat(comActDO.getLat()); + } + + List<ComActWorkGuideMaterialDO> workGuideMaterialDOS = + workGuideMaterialDAO.selectList(new LambdaQueryWrapper<ComActWorkGuideMaterialDO>() .eq(ComActWorkGuideMaterialDO::getWorkGuideId, workGuideId)); workGuideMaterialDOS.forEach(workGuideMaterialDO -> { ComActWorkGuideMaterialVO workGuideMaterialVO = new ComActWorkGuideMaterialVO(); @@ -135,7 +152,7 @@ public R delectWorkGuide(Long workGuideId) { this.baseMapper.deleteById(workGuideId); workGuideMaterialDAO.delete(new LambdaQueryWrapper<ComActWorkGuideMaterialDO>() - .eq(ComActWorkGuideMaterialDO::getWorkGuideId, workGuideId)); + .eq(ComActWorkGuideMaterialDO::getWorkGuideId, workGuideId)); return R.ok(); } } -- Gitblit v1.7.1