From bd72030ab8cb40a02b5b2ed954b20151b23d776f Mon Sep 17 00:00:00 2001
From: lin <sbla5888@163.com>
Date: Fri, 22 Mar 2024 14:33:43 +0800
Subject: [PATCH] 轮播图添加字段
---
src/main/java/org/springblade/modules/rotation/entity/RotationEntity.java | 96 ++++++++++++++++---------------
src/main/java/org/springblade/modules/rotation/service/impl/RotationServiceImpl.java | 36 ++++++++++++
src/main/java/org/springblade/modules/rotation/vo/RotationVO.java | 7 ++
src/main/java/org/springblade/modules/rotation/mapper/RotationMapper.xml | 34 ++++++++---
4 files changed, 118 insertions(+), 55 deletions(-)
diff --git a/src/main/java/org/springblade/modules/rotation/entity/RotationEntity.java b/src/main/java/org/springblade/modules/rotation/entity/RotationEntity.java
index edd6dd5..800951a 100644
--- a/src/main/java/org/springblade/modules/rotation/entity/RotationEntity.java
+++ b/src/main/java/org/springblade/modules/rotation/entity/RotationEntity.java
@@ -16,10 +16,7 @@
*/
package org.springblade.modules.rotation.entity;
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableLogic;
-import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
@@ -53,58 +50,65 @@
@TableId(value = "id", type = IdType.AUTO)
private Integer id;
- /**
- * 名称
- */
- @ApiModelProperty(value = "名称")
+ /** 名称 */
+ @ApiModelProperty(value = "名称", example = "")
+ @TableField("name")
private String name;
- /**
- * 类型 3:系统 1:公安 2:综治
- */
- @ApiModelProperty(value = "类型 3:系统 1:公安 2:综治")
+
+ /** 类型 1:系统 2:社区 */
+ @ApiModelProperty(value = "类型 1:系统 2:社区", example = "")
+ @TableField("type")
private Integer type;
- /**
- * 内容
- */
- @ApiModelProperty(value = "内容")
+
+ /** 内容 */
+ @ApiModelProperty(value = "内容", example = "")
+ @TableField("context")
private String context;
- /**
- * 图片地址
- */
- @ApiModelProperty(value = "图片地址")
+
+ /** 图片地址 */
+ @ApiModelProperty(value = "图片地址", example = "")
+ @TableField("url")
private String url;
- /**
- * 跳转地址
- */
- @ApiModelProperty(value = "跳转地址")
+
+ /** 跳转地址 */
+ @ApiModelProperty(value = "跳转地址", example = "")
+ @TableField("junp_url")
private String junpUrl;
- /**
- * 所属社区编号
- */
- @ApiModelProperty(value = "所属社区编号")
+ /** 所属社区编号 */
+ @ApiModelProperty(value = "所属社区编号", example = "")
+ @TableField("community_code")
private String communityCode;
- /**
- * 创建人
- */
- @JsonSerialize(using = ToStringSerializer.class)
- @ApiModelProperty("创建人")
- private Long createUser;
-
- /**
- * 创建时间
- */
- @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
- @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
- @ApiModelProperty("创建时间")
+ /** 创建时间 */
+ @ApiModelProperty(value = "创建时间", example = "")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+ @TableField("create_time")
private Date createTime;
- /**
- * 是否删除
- */
- @TableLogic
- @ApiModelProperty("是否已删除 0:否 1:是")
+ /** 创建人 */
+ @ApiModelProperty(value = "创建人", example = "")
+ @TableField("create_user")
+ private Long createUser;
+
+ /** 是否删除 0:否 1:是 */
+ @ApiModelProperty(value = "是否删除 0:否 1:是", example = "")
+ @TableField("is_deleted")
private Integer isDeleted;
+ /** 范围 */
+ @ApiModelProperty(value = "范围", example = "")
+ @TableField("rotation_range")
+ private String rotationRange;
+
+ /** 文章id */
+ @ApiModelProperty(value = "文章id", example = "")
+ @TableField("article_id")
+ private Integer articleId;
+
+ /** 是否公开:1:否 2:是 */
+ @ApiModelProperty(value = "是否公开:1:否 2:是", example = "")
+ @TableField("public_flag")
+ private Integer publicFlag;
+
}
diff --git a/src/main/java/org/springblade/modules/rotation/mapper/RotationMapper.xml b/src/main/java/org/springblade/modules/rotation/mapper/RotationMapper.xml
index 728410d..f9ebd11 100644
--- a/src/main/java/org/springblade/modules/rotation/mapper/RotationMapper.xml
+++ b/src/main/java/org/springblade/modules/rotation/mapper/RotationMapper.xml
@@ -4,15 +4,19 @@
<!-- 通用查询映射结果 -->
<resultMap id="rotationResultMap" type="org.springblade.modules.rotation.entity.RotationEntity">
- <result column="id" property="id"/>
- <result column="name" property="name"/>
- <result column="type" property="type"/>
- <result column="context" property="context"/>
- <result column="url" property="url"/>
- <result column="junp_url" property="junpUrl"/>
- <result column="create_time" property="createTime"/>
- <result column="create_user" property="createUser"/>
- <result column="is_deleted" property="isDeleted"/>
+ <result property="id" column="id" />
+ <result property="name" column="name" />
+ <result property="type" column="type" />
+ <result property="context" column="context" />
+ <result property="url" column="url" />
+ <result property="junpUrl" column="junp_url" />
+ <result property="communityCode" column="community_code" />
+ <result property="createTime" column="create_time" />
+ <result property="createUser" column="create_user" />
+ <result property="isDeleted" column="is_deleted" />
+ <result property="rotationRange" column="rotation_range" />
+ <result property="articleId" column="article_id" />
+ <result property="publicFlag" column="public_flag" />
</resultMap>
<!--自定义分页查询-->
@@ -34,6 +38,18 @@
<if test="rotation.regionCode!=null and rotation.regionCode!=''">
and jr.community_code like concat('%',#{rotation.regionCode},'%')
</if>
+
+ <if test="rotation.rotationRange != null and rotation.rotationRange != ''"> and jr.rotation_range = #{rotation.rotationRange}</if>
+ <if test="rotation.articleId != null "> and jr.article_id = #{rotation.articleId}</if>
+ <if test="rotation.publicFlag != null "> and jr.public_flag = #{rotation.publicFlag}</if>
+
+ <if test="rotation.districtIdList != null and rotation.districtIdList.size() > 0 ">
+ and (jr.rotation_range like
+ <foreach collection="rotation.districtIdList" separator=" or jr.rotation_range like" item="id">'%${id}%'
+ </foreach>
+ )
+ </if>
+
<if test="isAdministrator==2">
<choose>
<when test="rotation.roleName != null and rotation.roleName != ''">
diff --git a/src/main/java/org/springblade/modules/rotation/service/impl/RotationServiceImpl.java b/src/main/java/org/springblade/modules/rotation/service/impl/RotationServiceImpl.java
index cb1571b..da61c58 100644
--- a/src/main/java/org/springblade/modules/rotation/service/impl/RotationServiceImpl.java
+++ b/src/main/java/org/springblade/modules/rotation/service/impl/RotationServiceImpl.java
@@ -16,9 +16,18 @@
*/
package org.springblade.modules.rotation.service.impl;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springblade.common.param.CommonParamSet;
+import org.springblade.common.utils.RoleUtil;
+import org.springblade.common.utils.SpringUtils;
import org.springblade.core.secure.utils.AuthUtil;
+import org.springblade.core.tool.utils.SpringUtil;
+import org.springblade.modules.property.entity.PropertyCompanyDistrictEntity;
+import org.springblade.modules.property.entity.PropertyCompanyEntity;
+import org.springblade.modules.property.service.IPropertyCompanyDistrictService;
+import org.springblade.modules.property.service.IPropertyCompanyService;
+import org.springblade.modules.property.service.IPropertyDistrictUserService;
import org.springblade.modules.rotation.entity.RotationEntity;
import org.springblade.modules.rotation.vo.RotationVO;
import org.springblade.modules.rotation.mapper.RotationMapper;
@@ -30,7 +39,9 @@
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.metadata.IPage;
+import java.util.ArrayList;
import java.util.List;
+import java.util.stream.Collectors;
/**
* 轮播图 服务实现类
@@ -55,6 +66,31 @@
@Override
public IPage<RotationVO> selectRotationPage(IPage<RotationVO> page, RotationVO rotation) {
CommonParamSet<Object> commonParamSet = new CommonParamSet<>().invoke(RotationVO.class,rotation);
+ String userRole = AuthUtil.getUserRole();
+ if (RoleUtil.isProperty(userRole)) {
+ // 查询小区id
+ IPropertyDistrictUserService propertyDistrictUserService = SpringUtils.getBean(IPropertyDistrictUserService.class);
+ List<String> districtIds = propertyDistrictUserService.selectPropertyDistrictByUserId(AuthUtil.getUserId());
+ // 通过用户机构查询用户的物业公司
+ IPropertyCompanyService bean = SpringUtil.getBean(IPropertyCompanyService.class);
+ PropertyCompanyEntity companyEntity = bean.getOne(Wrappers.<PropertyCompanyEntity>lambdaQuery()
+ .eq(PropertyCompanyEntity::getDeptId, AuthUtil.getDeptId()).last("limit 1"));
+ if (companyEntity != null) {
+ IPropertyCompanyDistrictService bean2 = SpringUtils.getBean(IPropertyCompanyDistrictService.class);
+ // 通过物业公司,查询小区
+ List<PropertyCompanyDistrictEntity> propertyCompanyDistrictEntityList = bean2.list(Wrappers.<PropertyCompanyDistrictEntity>lambdaQuery()
+ .eq(PropertyCompanyDistrictEntity::getPropertyCompanyId, companyEntity.getId()));
+ if (propertyCompanyDistrictEntityList.size() > 0) {
+ List<String> collect = propertyCompanyDistrictEntityList.stream().map(i -> i.getDistrictId()).collect(Collectors.toList());
+ districtIds.addAll(collect);
+ }
+ }
+ rotation.setDistrictIdList(districtIds);
+ if (districtIds.size() == 0) {
+ return page.setRecords(new ArrayList<>());
+ }
+ rotation.setPropertyFlag(1);
+ }
List<RotationVO> rotationVOList = baseMapper.selectRotationPage(page, rotation,
commonParamSet.getIsAdministrator(),
null==commonParamSet.getRegionChildCodesList()?null:String.join("|",commonParamSet.getRegionChildCodesList()),
diff --git a/src/main/java/org/springblade/modules/rotation/vo/RotationVO.java b/src/main/java/org/springblade/modules/rotation/vo/RotationVO.java
index 83afaa4..b291b04 100644
--- a/src/main/java/org/springblade/modules/rotation/vo/RotationVO.java
+++ b/src/main/java/org/springblade/modules/rotation/vo/RotationVO.java
@@ -21,6 +21,8 @@
import lombok.Data;
import lombok.EqualsAndHashCode;
+import java.util.List;
+
/**
* 轮播图 视图实体类
*
@@ -52,4 +54,9 @@
*/
private String roleName;
+ private List<String> districtIdList;
+
+ // 物业标记
+ private Integer propertyFlag;
+
}
--
Gitblit v1.9.3