From 5a8a90c095280fbd2106869ecd2bad10e01a57a6 Mon Sep 17 00:00:00 2001
From: 101captain <237651143@qq.com>
Date: 星期四, 23 十二月 2021 18:10:22 +0800
Subject: [PATCH] 12/23  大屏修改

---
 springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngStructOtherBuildServiceImpl.java |  233 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 233 insertions(+), 0 deletions(-)

diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngStructOtherBuildServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngStructOtherBuildServiceImpl.java
new file mode 100644
index 0000000..f927343
--- /dev/null
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngStructOtherBuildServiceImpl.java
@@ -0,0 +1,233 @@
+package com.panzhihua.service_community.service.impl;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.stream.Collectors;
+
+import javax.annotation.Resource;
+
+import org.springframework.beans.BeanUtils;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.ObjectUtils;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.panzhihua.common.exceptions.ServiceException;
+import com.panzhihua.common.model.vos.R;
+import com.panzhihua.common.model.vos.SystemmanagementConfigVO;
+import com.panzhihua.common.model.vos.community.ComMngStructBuildTypeVO;
+import com.panzhihua.common.model.vos.community.ComMngStructOtherBuildVO;
+import com.panzhihua.service_community.dao.ComMngStructBuildTypeDAO;
+import com.panzhihua.service_community.dao.ComMngStructOtherBuildDAO;
+import com.panzhihua.service_community.model.dos.ComMngStructBuildTypeDO;
+import com.panzhihua.service_community.model.dos.ComMngStructOtherBuildDO;
+import com.panzhihua.service_community.service.ComMngStructOtherBuildService;
+
+/**
+ * @program: springcloud_k8s_panzhihuazhihuishequ
+ * @description: ComMngStructOtherBuildService
+ * @author: huang.hongfa weixin hhf9596 qq 959656820
+ * @create: 2020-12-16 15:27
+ **/
+@Service
+public class ComMngStructOtherBuildServiceImpl implements ComMngStructOtherBuildService {
+    @Resource
+    private ComMngStructOtherBuildDAO comMngStructOtherBuildDAO;
+    @Resource
+    private ComMngStructBuildTypeDAO comMngStructBuildTypeDAO;
+
+    /**
+     * 新增其他建筑
+     *
+     * @param comMngStructOtherBuildVO
+     *            建筑参数
+     * @return 新增结果
+     */
+    @Override
+    public R addOtherbuild(ComMngStructOtherBuildVO comMngStructOtherBuildVO) {
+        ComMngStructOtherBuildDO comMngStructOtherBuildDO = new ComMngStructOtherBuildDO();
+        BeanUtils.copyProperties(comMngStructOtherBuildVO, comMngStructOtherBuildDO);
+        int insert = comMngStructOtherBuildDAO.insert(comMngStructOtherBuildDO);
+        if (insert > 0) {
+            return R.ok();
+        }
+        return R.fail();
+    }
+
+    /**
+     * 查询所有建筑类型
+     *
+     * @return 类型列表
+     */
+    @Override
+    public R listBuildType() {
+        List<ComMngStructBuildTypeVO> comMngStructBuildTypeVOS = new ArrayList<>();
+        List<ComMngStructBuildTypeDO> comMngStructBuildTypeDOS =
+            comMngStructBuildTypeDAO.selectList(new LambdaQueryWrapper<>());
+        if (!ObjectUtils.isEmpty(comMngStructBuildTypeDOS)) {
+            comMngStructBuildTypeDOS.forEach(comMngStructBuildTypeDO -> {
+                ComMngStructBuildTypeVO comMngStructBuildTypeVO = new ComMngStructBuildTypeVO();
+                BeanUtils.copyProperties(comMngStructBuildTypeDO, comMngStructBuildTypeVO);
+                comMngStructBuildTypeVOS.add(comMngStructBuildTypeVO);
+            });
+        }
+        return R.ok(comMngStructBuildTypeVOS);
+    }
+
+    /**
+     * 分页查询 其他建筑
+     *
+     * @param comMngStructOtherBuildVO
+     *            分页查询参数
+     * @return 查询结果
+     */
+    @Override
+    public R pageOtherBuild(ComMngStructOtherBuildVO comMngStructOtherBuildVO) {
+        Page page = new Page<>();
+        Long pageNum = comMngStructOtherBuildVO.getPageNum();
+        Long pageSize = comMngStructOtherBuildVO.getPageSize();
+        if (null == pageNum || 0 == pageNum) {
+            pageNum = 1l;
+        }
+        if (null == pageSize || 0 == pageSize) {
+            pageSize = 10l;
+        }
+        page.setSize(pageSize);
+        page.setCurrent(pageNum);
+        IPage<ComMngStructOtherBuildVO> iPage =
+            comMngStructOtherBuildDAO.pageOtherBuild(page, comMngStructOtherBuildVO);
+        return R.ok(iPage);
+    }
+
+    /**
+     * 建筑类型
+     *
+     * @param communityId
+     *            社区id
+     * @return 建筑集合
+     */
+    @Override
+    public R listComMngStructBuildType(Long communityId) {
+        List<ComMngStructBuildTypeDO> comMngStructBuildTypeDOS =
+            comMngStructBuildTypeDAO.selectList(new QueryWrapper<ComMngStructBuildTypeDO>().lambda()
+                .eq(ComMngStructBuildTypeDO::getCommunityId, communityId));
+        if (ObjectUtils.isEmpty(comMngStructBuildTypeDOS)) {
+            return R.fail();
+        }
+        List<ComMngStructBuildTypeVO> comMngStructBuildTypeVOList = new ArrayList<>();
+        comMngStructBuildTypeDOS.forEach(comMngStructBuildTypeDO -> {
+            ComMngStructBuildTypeVO comMngStructBuildTypeVO = new ComMngStructBuildTypeVO();
+            BeanUtils.copyProperties(comMngStructBuildTypeDO, comMngStructBuildTypeVO);
+            comMngStructBuildTypeVOList.add(comMngStructBuildTypeVO);
+        });
+        return R.ok(comMngStructBuildTypeVOList);
+    }
+
+    /**
+     * 增加删除建筑类型
+     *
+     * @param systemmanagementConfigVO
+     *            操作内容
+     * @return 操作结果
+     */
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public R putComMngStructBuildType(SystemmanagementConfigVO systemmanagementConfigVO) {
+        Long communityId = systemmanagementConfigVO.getCommunityId();
+        List<ComMngStructBuildTypeVO> comMngStructBuildTypeVOList =
+            systemmanagementConfigVO.getComMngStructBuildTypeVOList();
+        if (ObjectUtils.isEmpty(comMngStructBuildTypeVOList)) {
+            return R.fail("建筑类型不能为空");
+        }
+        List<Long> collect = comMngStructBuildTypeVOList.stream()
+            .map(comMngStructBuildTypeVO -> comMngStructBuildTypeVO.getId()).collect(Collectors.toList());
+        List<Long> buildTypdIds = comMngStructOtherBuildDAO.selectAllBuildTypeIds(communityId);
+        buildTypdIds.forEach(aLong -> {
+            if (!collect.contains(aLong)) {
+                ComMngStructBuildTypeDO comMngStructBuildTypeDO = comMngStructBuildTypeDAO.selectById(aLong);
+                if (!ObjectUtils.isEmpty(comMngStructBuildTypeDO)) {
+                    throw new ServiceException(comMngStructBuildTypeDO.getName() + "已经在使用无法删除");
+                }
+            }
+        });
+        comMngStructBuildTypeDAO.delete(new QueryWrapper<ComMngStructBuildTypeDO>().lambda()
+            .eq(ComMngStructBuildTypeDO::getCommunityId, communityId));
+        comMngStructBuildTypeVOList.forEach(comMngStructBuildTypeVO -> {
+            String name = comMngStructBuildTypeVO.getName();
+            if (ObjectUtils.isEmpty(name)) {
+                throw new RuntimeException("建筑类型名称不能为空");
+            }
+            ComMngStructBuildTypeDO comMngStructBuildTypeDO = new ComMngStructBuildTypeDO();
+            comMngStructBuildTypeDO.setCommunityId(communityId);
+            comMngStructBuildTypeDO.setName(name);
+            comMngStructBuildTypeDAO.insert(comMngStructBuildTypeDO);
+        });
+        return R.ok();
+    }
+
+    /**
+     * 其他建筑详情
+     *
+     * @param id
+     *            主键id
+     * @return 建筑内容
+     */
+    @Override
+    public R detailOtherbuild(Long id) {
+        ComMngStructOtherBuildDO comMngStructOtherBuildDO = comMngStructOtherBuildDAO.selectById(id);
+        if (ObjectUtils.isEmpty(comMngStructOtherBuildDO)) {
+            return R.fail("建筑不存在");
+        }
+        Long typeId = comMngStructOtherBuildDO.getTypeId();
+        ComMngStructBuildTypeDO comMngStructBuildTypeDO = comMngStructBuildTypeDAO.selectById(typeId);
+        if (ObjectUtils.isEmpty(comMngStructBuildTypeDO)) {
+            return R.fail("建筑类型不存在");
+        }
+        ComMngStructOtherBuildVO comMngStructOtherBuildVO = new ComMngStructOtherBuildVO();
+        BeanUtils.copyProperties(comMngStructOtherBuildDO, comMngStructOtherBuildVO);
+        comMngStructOtherBuildVO.setBuileTypeName(comMngStructBuildTypeDO.getName());
+        return R.ok(comMngStructOtherBuildVO);
+    }
+
+    /**
+     * 编辑其他建筑
+     *
+     * @param comMngStructOtherBuildVO
+     *            编辑内容
+     * @return 编辑结果
+     */
+    @Override
+    public R putOtherbuild(ComMngStructOtherBuildVO comMngStructOtherBuildVO) {
+        Long typeId = comMngStructOtherBuildVO.getTypeId();
+        ComMngStructBuildTypeDO comMngStructBuildTypeDO = comMngStructBuildTypeDAO.selectById(typeId);
+        if (ObjectUtils.isEmpty(comMngStructBuildTypeDO)) {
+            return R.fail("建筑类型不存在");
+        }
+        ComMngStructOtherBuildDO comMngStructOtherBuildDO = new ComMngStructOtherBuildDO();
+        BeanUtils.copyProperties(comMngStructOtherBuildVO, comMngStructOtherBuildDO);
+        int update = comMngStructOtherBuildDAO.updateById(comMngStructOtherBuildDO);
+        if (update > 0) {
+            return R.ok("编辑成功过");
+        }
+        return R.fail("编辑失败");
+    }
+
+    /**
+     * 删除其他建筑
+     *
+     * @param id
+     *            主键
+     * @return 删除结果
+     */
+    @Override
+    public R deleteOtherbuild(Long id) {
+        int delete = comMngStructOtherBuildDAO.deleteById(id);
+        if (delete > 0) {
+            return R.ok();
+        }
+        return R.fail("删除失败");
+    }
+}

--
Gitblit v1.7.1