From d2fe6340ee6a37bf73fd491a4adfcbe0f78eacd7 Mon Sep 17 00:00:00 2001
From: linwei <872216696@qq.com>
Date: Tue, 23 Jan 2024 12:51:25 +0800
Subject: [PATCH] 社区民警修改

---
 src/main/java/org/springblade/modules/property/service/impl/PropertyCompanyDistrictServiceImpl.java |   35 +++++++++++++++++++++++++++++++++--
 1 files changed, 33 insertions(+), 2 deletions(-)

diff --git a/src/main/java/org/springblade/modules/property/service/impl/PropertyCompanyDistrictServiceImpl.java b/src/main/java/org/springblade/modules/property/service/impl/PropertyCompanyDistrictServiceImpl.java
index 9ad0329..e64eb61 100644
--- a/src/main/java/org/springblade/modules/property/service/impl/PropertyCompanyDistrictServiceImpl.java
+++ b/src/main/java/org/springblade/modules/property/service/impl/PropertyCompanyDistrictServiceImpl.java
@@ -2,14 +2,19 @@
 
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.apache.commons.lang3.StringUtils;
+import org.flowable.idm.engine.impl.persistence.entity.UserEntity;
 import org.springblade.core.tool.utils.Func;
+import org.springblade.core.tool.utils.SpringUtil;
 import org.springblade.modules.property.entity.PropertyCompanyDistrictEntity;
 import org.springblade.modules.property.entity.PropertyDistrictUserEntity;
 import org.springblade.modules.property.service.IPropertyDistrictUserService;
 import org.springblade.modules.property.vo.PropertyCompanyDistrictVO;
 import org.springblade.modules.property.mapper.PropertyCompanyDistrictMapper;
 import org.springblade.modules.property.service.IPropertyCompanyDistrictService;
+import org.springblade.modules.system.entity.User;
 import org.springblade.modules.system.entity.UserDept;
+import org.springblade.modules.system.service.IUserService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -32,6 +37,7 @@
 
 	/**
 	 * 自定义分页查询
+	 *
 	 * @param page
 	 * @param propertyCompanyDistrict
 	 * @return
@@ -43,21 +49,41 @@
 
 	/**
 	 * 物业派驻小区表 自定义新增或修改
+	 *
 	 * @param propertyCompanyDistrict
 	 * @return
 	 */
 	@Override
 	@Transactional(rollbackFor = Exception.class)
-	public boolean saveOrUpdatePropertyCompanyDistrict(PropertyCompanyDistrictEntity propertyCompanyDistrict) {
+	public boolean saveOrUpdatePropertyCompanyDistrict(PropertyCompanyDistrictEntity propertyCompanyDistrict) throws Exception {
+		IUserService bean = SpringUtil.getBean(IUserService.class);
+		User user = bean.getOne(Wrappers.<User>lambdaQuery().eq(User::getId, propertyCompanyDistrict.getPrincipal()));
+		if (StringUtils.isNotBlank(user.getRoleId())) {
+			if (!user.getRoleId().contains("1747504028253229058")) {
+				user.setRoleId(user.getRoleId() + ",1747504028253229058");
+			}
+		} else {
+			user.setRoleId("1747504028253229058");
+		}
 		if (null != propertyCompanyDistrict.getId()) {
+			bean.updateById(user);
 			return updateById(propertyCompanyDistrict) && submitPropertyDistrictUser(propertyCompanyDistrict);
-		}else {
+		} else {
+			long count = count(Wrappers.<PropertyCompanyDistrictEntity>lambdaQuery()
+				.eq(PropertyCompanyDistrictEntity::getDistrictId, propertyCompanyDistrict.getDistrictId())
+				.eq(PropertyCompanyDistrictEntity::getPropertyCompanyId, propertyCompanyDistrict.getPropertyCompanyId())
+				.eq(PropertyCompanyDistrictEntity::getIsDeleted, 0));
+			if (count > 0) {
+				throw new Exception("您已有该小区的合同,请勿重复添加!");
+			}
+			bean.updateById(user);
 			return save(propertyCompanyDistrict) && submitPropertyDistrictUser(propertyCompanyDistrict);
 		}
 	}
 
 	/**
 	 * 关联关系维护
+	 *
 	 * @param propertyCompanyDistrict
 	 * @return
 	 */
@@ -75,4 +101,9 @@
 		// 再新增
 		return propertyDistrictUserService.saveBatch(propertyDistrictUserEntityList);
 	}
+
+	@Override
+	public List<UserEntity> getDistictUserByCode(String houseCode) {
+		return baseMapper.getDistictUserByCode(houseCode);
+	}
 }

--
Gitblit v1.9.3