From 00cdd830b7df0dfe3272fc9f2b3f13f1e2b3f5ba Mon Sep 17 00:00:00 2001
From: 张天森 <1292933220@qq.com>
Date: 星期四, 13 十月 2022 17:47:15 +0800
Subject: [PATCH] 三说会堂事件操作权限处理
---
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComMngStructOtherBuildServiceImpl.java | 169 ++++++++++++++++++++++++++++++++++++++++++++++++--------
1 files changed, 144 insertions(+), 25 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
index 8f3d86e..9689d63 100644
--- 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
@@ -1,9 +1,23 @@
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;
@@ -11,13 +25,6 @@
import com.panzhihua.service_community.model.dos.ComMngStructBuildTypeDO;
import com.panzhihua.service_community.model.dos.ComMngStructOtherBuildDO;
import com.panzhihua.service_community.service.ComMngStructOtherBuildService;
-import org.springframework.beans.BeanUtils;
-import org.springframework.stereotype.Service;
-import org.springframework.util.ObjectUtils;
-
-import javax.annotation.Resource;
-import java.util.ArrayList;
-import java.util.List;
/**
* @program: springcloud_k8s_panzhihuazhihuishequ
@@ -35,15 +42,16 @@
/**
* 新增其他建筑
*
- * @param comMngStructOtherBuildVO 建筑参数
+ * @param comMngStructOtherBuildVO
+ * 建筑参数
* @return 新增结果
*/
@Override
public R addOtherbuild(ComMngStructOtherBuildVO comMngStructOtherBuildVO) {
- ComMngStructOtherBuildDO comMngStructOtherBuildDO=new ComMngStructOtherBuildDO();
- BeanUtils.copyProperties(comMngStructOtherBuildVO,comMngStructOtherBuildDO);
+ ComMngStructOtherBuildDO comMngStructOtherBuildDO = new ComMngStructOtherBuildDO();
+ BeanUtils.copyProperties(comMngStructOtherBuildVO, comMngStructOtherBuildDO);
int insert = comMngStructOtherBuildDAO.insert(comMngStructOtherBuildDO);
- if (insert>0) {
+ if (insert > 0) {
return R.ok();
}
return R.fail();
@@ -55,13 +63,14 @@
* @return 类型列表
*/
@Override
- public R listBuildType() {
- List<ComMngStructBuildTypeVO>comMngStructBuildTypeVOS=new ArrayList<>();
- List<ComMngStructBuildTypeDO> comMngStructBuildTypeDOS = comMngStructBuildTypeDAO.selectList(null);
+ public R listBuildType(Long communityId) {
+ List<ComMngStructBuildTypeVO> comMngStructBuildTypeVOS = new ArrayList<>();
+ List<ComMngStructBuildTypeDO> comMngStructBuildTypeDOS =
+ comMngStructBuildTypeDAO.selectList(new QueryWrapper<ComMngStructBuildTypeDO>().lambda().eq(ComMngStructBuildTypeDO::getCommunityId,communityId));
if (!ObjectUtils.isEmpty(comMngStructBuildTypeDOS)) {
- ComMngStructBuildTypeVO comMngStructBuildTypeVO=new ComMngStructBuildTypeVO();
comMngStructBuildTypeDOS.forEach(comMngStructBuildTypeDO -> {
- BeanUtils.copyProperties(comMngStructBuildTypeDO,comMngStructBuildTypeVO);
+ ComMngStructBuildTypeVO comMngStructBuildTypeVO = new ComMngStructBuildTypeVO();
+ BeanUtils.copyProperties(comMngStructBuildTypeDO, comMngStructBuildTypeVO);
comMngStructBuildTypeVOS.add(comMngStructBuildTypeVO);
});
}
@@ -71,7 +80,8 @@
/**
* 分页查询 其他建筑
*
- * @param comMngStructOtherBuildVO 分页查询参数
+ * @param comMngStructOtherBuildVO
+ * 分页查询参数
* @return 查询结果
*/
@Override
@@ -79,36 +89,145 @@
Page page = new Page<>();
Long pageNum = comMngStructOtherBuildVO.getPageNum();
Long pageSize = comMngStructOtherBuildVO.getPageSize();
- if (null==pageNum||0==pageNum) {
+ if (null == pageNum || 0 == pageNum) {
pageNum = 1l;
}
- if (null==pageSize||0==pageSize) {
+ if (null == pageSize || 0 == pageSize) {
pageSize = 10l;
}
page.setSize(pageSize);
page.setCurrent(pageNum);
- IPage<ComMngStructOtherBuildVO> iPage = comMngStructOtherBuildDAO.pageOtherBuild(page, comMngStructOtherBuildVO);
+ IPage<ComMngStructOtherBuildVO> iPage =
+ comMngStructOtherBuildDAO.pageOtherBuild(page, comMngStructOtherBuildVO);
return R.ok(iPage);
}
/**
* 建筑类型
*
- * @param communityId 社区id
+ * @param communityId
+ * 社区id
* @return 建筑集合
*/
@Override
public R listComMngStructBuildType(Long communityId) {
- List<ComMngStructBuildTypeDO> comMngStructBuildTypeDOS = comMngStructBuildTypeDAO.selectList(new QueryWrapper<ComMngStructBuildTypeDO>().lambda().eq(ComMngStructBuildTypeDO::getCommunityId, 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<>();
+ List<ComMngStructBuildTypeVO> comMngStructBuildTypeVOList = new ArrayList<>();
comMngStructBuildTypeDOS.forEach(comMngStructBuildTypeDO -> {
- ComMngStructBuildTypeVO comMngStructBuildTypeVO=new ComMngStructBuildTypeVO();
- BeanUtils.copyProperties(comMngStructBuildTypeDO,comMngStructBuildTypeVO);
+ 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