From ad2ec97fe0c60eee4bb7c8cdacff7c876f280ea7 Mon Sep 17 00:00:00 2001
From: linwei <872216696@qq.com>
Date: Mon, 08 Jan 2024 11:30:18 +0800
Subject: [PATCH] 公安安全监管

---
 src/main/java/org/springblade/modules/property/service/impl/PropertyCompanyServiceImpl.java |   70 +++++++++++++++++++++++++++++++++++
 1 files changed, 70 insertions(+), 0 deletions(-)

diff --git a/src/main/java/org/springblade/modules/property/service/impl/PropertyCompanyServiceImpl.java b/src/main/java/org/springblade/modules/property/service/impl/PropertyCompanyServiceImpl.java
index 1ab2d13..7a6d211 100644
--- a/src/main/java/org/springblade/modules/property/service/impl/PropertyCompanyServiceImpl.java
+++ b/src/main/java/org/springblade/modules/property/service/impl/PropertyCompanyServiceImpl.java
@@ -16,14 +16,22 @@
  */
 package org.springblade.modules.property.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import liquibase.pro.packaged.D;
+import liquibase.pro.packaged.P;
 import org.springblade.modules.property.entity.PropertyCompanyEntity;
+import org.springblade.modules.property.vo.PropertyCompanyDetailVO;
 import org.springblade.modules.property.vo.PropertyCompanyVO;
 import org.springblade.modules.property.mapper.PropertyCompanyMapper;
 import org.springblade.modules.property.service.IPropertyCompanyService;
 import org.springblade.core.mp.base.BaseServiceImpl;
+import org.springblade.modules.system.entity.Dept;
+import org.springblade.modules.system.service.IDeptService;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springframework.transaction.annotation.Transactional;
 
 import java.util.List;
 
@@ -35,6 +43,9 @@
  */
 @Service
 public class PropertyCompanyServiceImpl extends ServiceImpl<PropertyCompanyMapper, PropertyCompanyEntity> implements IPropertyCompanyService {
+
+	@Autowired
+	private IDeptService deptService;
 
 	/**
 	 * 自定义分页
@@ -67,4 +78,63 @@
 	public Object getUserByPropertyCompany(PropertyCompanyVO propertyCompany) {
 		return baseMapper.getUserByPropertyCompany(propertyCompany);
 	}
+
+	/**
+	 * 物业公司 自定义新增或修改
+	 */
+	@Override
+	@Transactional(rollbackFor = Exception.class)
+	public boolean saveOrUpdatePropertyCompany(PropertyCompanyEntity propertyCompany) {
+		boolean flag = false;
+		Dept dept = new Dept();
+		dept.setDeptName(propertyCompany.getName());
+		dept.setFullName(propertyCompany.getName());
+		// 判断新增还是修改
+		if (null != propertyCompany.getId()){
+			// 修改
+			updateById(propertyCompany);
+			// 修改住址机构信息
+			dept.setId(propertyCompany.getDeptId());
+			flag = deptService.updateById(dept);
+		}else {
+			// 查询父级id
+			QueryWrapper<Dept> wrapper = new QueryWrapper<>();
+			wrapper.eq("is_deleted",0).eq("dept_name","物业公司");
+			Dept parentDept = deptService.getOne(wrapper);
+			dept.setParentId(parentDept.getId());
+			// 新增机构
+			flag = deptService.save(dept);
+			// 新增物业公司
+			propertyCompany.setDeptId(dept.getId());
+			flag = save(propertyCompany);
+		}
+		return flag;
+	}
+
+	/**
+	 * 物业公司 删除
+	 */
+	@Transactional(rollbackFor = Exception.class)
+	@Override
+	public boolean deleteByIds(List<Integer> toIntList) {
+		// 先查询对应的机构id集合
+		List<Long> deptIds = baseMapper.getDeptListByCompanyId(toIntList);
+		// 删除机构,删除物业公司
+		return removeByIds(toIntList) && deptService.removeByIds(deptIds);
+	}
+
+	@Override
+	public PropertyCompanyVO getUserCompayDistrict(String houseCode) {
+		return baseMapper.getUserCompayDistrict(houseCode);
+	}
+
+	/**
+	 * 物业公司 自定义详情查询
+	 * @param propertyCompany
+	 * @return
+	 */
+	@Override
+	public PropertyCompanyDetailVO getDetail(PropertyCompanyVO propertyCompany) {
+		return baseMapper.getDetail(propertyCompany);
+	}
 }

--
Gitblit v1.9.3