From c0fa64f0fa74ac4fef06e1b472031a32c3be42fa Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Sat, 23 Mar 2024 18:12:28 +0800
Subject: [PATCH] 文章浏览记录,积分基层接口新增,矛盾纠纷事件接口新增
---
src/main/java/org/springblade/modules/disputeRecord/dto/DisputeRecordDTO.java | 34 +
src/main/java/org/springblade/modules/article/controller/ArticleIntegralController.java | 107 ++++
src/main/java/org/springblade/modules/article/entity/ArticleBrowseEntity.java | 66 ++
src/main/java/org/springblade/modules/disputeRecord/mapper/DisputeRecordMapper.java | 54 ++
src/main/java/org/springblade/modules/disputeRecord/service/IDisputeRecordService.java | 39 +
src/main/java/org/springblade/modules/disputeRecord/controller/DisputeRecordController.java | 151 ++++++
src/main/java/org/springblade/modules/disputeRecord/vo/DisputeRecordVO.java | 79 +++
src/main/java/org/springblade/modules/article/mapper/ArticleBrowseMapper.xml | 20
src/main/java/org/springblade/modules/disputeRecord/wrapper/DisputeRecordWrapper.java | 50 ++
src/main/java/org/springblade/modules/article/mapper/ArticleBrowseMapper.java | 43 +
src/main/java/org/springblade/modules/article/vo/ArticleBrowseVO.java | 35 +
src/main/java/org/springblade/modules/disputeRecord/entity/DisputeRecordEntity.java | 148 +++++
src/main/java/org/springblade/modules/article/service/impl/ArticleIntegralServiceImpl.java | 26 +
src/main/java/org/springblade/modules/article/controller/ArticleBrowseController.java | 106 ++++
src/main/java/org/springblade/modules/article/vo/ArticleIntegralVO.java | 35 +
src/main/java/org/springblade/modules/article/entity/ArticleIntegralEntity.java | 71 ++
src/main/java/org/springblade/modules/article/mapper/ArticleIntegralMapper.java | 43 +
src/main/java/org/springblade/modules/article/service/IArticleIntegralService.java | 26 +
src/main/java/org/springblade/modules/disputeRecord/service/impl/DisputeRecordServiceImpl.java | 62 ++
src/main/java/org/springblade/modules/article/service/IArticleBrowseService.java | 26 +
src/main/java/org/springblade/modules/article/service/impl/ArticleBrowseServiceImpl.java | 26 +
src/main/java/org/springblade/modules/article/mapper/ArticleIntegralMapper.xml | 21
src/main/java/org/springblade/modules/disputeRecord/mapper/DisputeRecordMapper.xml | 225 +++++++++
23 files changed, 1,493 insertions(+), 0 deletions(-)
diff --git a/src/main/java/org/springblade/modules/article/controller/ArticleBrowseController.java b/src/main/java/org/springblade/modules/article/controller/ArticleBrowseController.java
new file mode 100644
index 0000000..3daf05a
--- /dev/null
+++ b/src/main/java/org/springblade/modules/article/controller/ArticleBrowseController.java
@@ -0,0 +1,106 @@
+package org.springblade.modules.article.controller;
+
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import lombok.AllArgsConstructor;
+import javax.validation.Valid;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.Func;
+import org.springframework.web.bind.annotation.*;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.modules.article.entity.ArticleBrowseEntity;
+import org.springblade.modules.article.vo.ArticleBrowseVO;
+import org.springblade.modules.article.service.IArticleBrowseService;
+
+/**
+ * 文章浏览记录表 控制器
+ *
+ * @author BladeX
+ * @since 2024-03-23
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("blade-articleBrowse/articleBrowse")
+@Api(value = "文章浏览记录表", tags = "文章浏览记录表接口")
+public class ArticleBrowseController{
+
+ private final IArticleBrowseService articleBrowseService;
+
+ /**
+ * 文章浏览记录表 详情
+ */
+ @GetMapping("/detail")
+ @ApiOperationSupport(order = 1)
+ @ApiOperation(value = "详情", notes = "传入articleBrowse")
+ public R detail(ArticleBrowseEntity articleBrowse) {
+ ArticleBrowseEntity detail = articleBrowseService.getOne(Condition.getQueryWrapper(articleBrowse));
+ return R.data(detail);
+ }
+ /**
+ * 文章浏览记录表 分页
+ */
+ @GetMapping("/list")
+ @ApiOperationSupport(order = 2)
+ @ApiOperation(value = "分页", notes = "传入articleBrowse")
+ public R list(ArticleBrowseEntity articleBrowse, Query query) {
+ IPage<ArticleBrowseEntity> pages = articleBrowseService.page(Condition.getPage(query), Condition.getQueryWrapper(articleBrowse));
+ return R.data(pages);
+ }
+
+ /**
+ * 文章浏览记录表 自定义分页
+ */
+ @GetMapping("/page")
+ @ApiOperationSupport(order = 3)
+ @ApiOperation(value = "分页", notes = "传入articleBrowse")
+ public R<IPage<ArticleBrowseVO>> page(ArticleBrowseVO articleBrowse, Query query) {
+ IPage<ArticleBrowseVO> pages = articleBrowseService.selectArticleBrowsePage(Condition.getPage(query), articleBrowse);
+ return R.data(pages);
+ }
+
+ /**
+ * 文章浏览记录表 新增
+ */
+ @PostMapping("/save")
+ @ApiOperationSupport(order = 4)
+ @ApiOperation(value = "新增", notes = "传入articleBrowse")
+ public R save(@Valid @RequestBody ArticleBrowseEntity articleBrowse) {
+ return R.status(articleBrowseService.save(articleBrowse));
+ }
+
+ /**
+ * 文章浏览记录表 修改
+ */
+ @PostMapping("/update")
+ @ApiOperationSupport(order = 5)
+ @ApiOperation(value = "修改", notes = "传入articleBrowse")
+ public R update(@Valid @RequestBody ArticleBrowseEntity articleBrowse) {
+ return R.status(articleBrowseService.updateById(articleBrowse));
+ }
+
+ /**
+ * 文章浏览记录表 新增或修改
+ */
+ @PostMapping("/submit")
+ @ApiOperationSupport(order = 6)
+ @ApiOperation(value = "新增或修改", notes = "传入articleBrowse")
+ public R submit(@Valid @RequestBody ArticleBrowseEntity articleBrowse) {
+ return R.status(articleBrowseService.saveOrUpdate(articleBrowse));
+ }
+
+ /**
+ * 文章浏览记录表 删除
+ */
+ @PostMapping("/remove")
+ @ApiOperationSupport(order = 7)
+ @ApiOperation(value = "逻辑删除", notes = "传入ids")
+ public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
+ return R.status(articleBrowseService.removeByIds(Func.toLongList(ids)));
+ }
+
+
+}
diff --git a/src/main/java/org/springblade/modules/article/controller/ArticleIntegralController.java b/src/main/java/org/springblade/modules/article/controller/ArticleIntegralController.java
new file mode 100644
index 0000000..331ecdc
--- /dev/null
+++ b/src/main/java/org/springblade/modules/article/controller/ArticleIntegralController.java
@@ -0,0 +1,107 @@
+package org.springblade.modules.article.controller;
+
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import lombok.AllArgsConstructor;
+import javax.validation.Valid;
+
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.Func;
+import org.springframework.web.bind.annotation.*;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.modules.article.entity.ArticleIntegralEntity;
+import org.springblade.modules.article.vo.ArticleIntegralVO;
+import org.springblade.modules.article.service.IArticleIntegralService;
+
+/**
+ * 文章浏览积分表 控制器
+ *
+ * @author BladeX
+ * @since 2024-03-23
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("blade-articleIntegral/articleIntegral")
+@Api(value = "文章浏览积分表", tags = "文章浏览积分表接口")
+public class ArticleIntegralController{
+
+ private final IArticleIntegralService articleIntegralService;
+
+ /**
+ * 文章浏览积分表 详情
+ */
+ @GetMapping("/detail")
+ @ApiOperationSupport(order = 1)
+ @ApiOperation(value = "详情", notes = "传入articleIntegral")
+ public R detail(ArticleIntegralEntity articleIntegral) {
+ ArticleIntegralEntity detail = articleIntegralService.getOne(Condition.getQueryWrapper(articleIntegral));
+ return R.data(detail);
+ }
+ /**
+ * 文章浏览积分表 分页
+ */
+ @GetMapping("/list")
+ @ApiOperationSupport(order = 2)
+ @ApiOperation(value = "分页", notes = "传入articleIntegral")
+ public R list(ArticleIntegralEntity articleIntegral, Query query) {
+ IPage<ArticleIntegralEntity> pages = articleIntegralService.page(Condition.getPage(query), Condition.getQueryWrapper(articleIntegral));
+ return R.data(pages);
+ }
+
+ /**
+ * 文章浏览积分表 自定义分页
+ */
+ @GetMapping("/page")
+ @ApiOperationSupport(order = 3)
+ @ApiOperation(value = "分页", notes = "传入articleIntegral")
+ public R<IPage<ArticleIntegralVO>> page(ArticleIntegralVO articleIntegral, Query query) {
+ IPage<ArticleIntegralVO> pages = articleIntegralService.selectArticleIntegralPage(Condition.getPage(query), articleIntegral);
+ return R.data(pages);
+ }
+
+ /**
+ * 文章浏览积分表 新增
+ */
+ @PostMapping("/save")
+ @ApiOperationSupport(order = 4)
+ @ApiOperation(value = "新增", notes = "传入articleIntegral")
+ public R save(@Valid @RequestBody ArticleIntegralEntity articleIntegral) {
+ return R.status(articleIntegralService.save(articleIntegral));
+ }
+
+ /**
+ * 文章浏览积分表 修改
+ */
+ @PostMapping("/update")
+ @ApiOperationSupport(order = 5)
+ @ApiOperation(value = "修改", notes = "传入articleIntegral")
+ public R update(@Valid @RequestBody ArticleIntegralEntity articleIntegral) {
+ return R.status(articleIntegralService.updateById(articleIntegral));
+ }
+
+ /**
+ * 文章浏览积分表 新增或修改
+ */
+ @PostMapping("/submit")
+ @ApiOperationSupport(order = 6)
+ @ApiOperation(value = "新增或修改", notes = "传入articleIntegral")
+ public R submit(@Valid @RequestBody ArticleIntegralEntity articleIntegral) {
+ return R.status(articleIntegralService.saveOrUpdate(articleIntegral));
+ }
+
+ /**
+ * 文章浏览积分表 删除
+ */
+ @PostMapping("/remove")
+ @ApiOperationSupport(order = 7)
+ @ApiOperation(value = "逻辑删除", notes = "传入ids")
+ public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
+ return R.status(articleIntegralService.removeByIds(Func.toLongList(ids)));
+ }
+
+
+}
diff --git a/src/main/java/org/springblade/modules/article/entity/ArticleBrowseEntity.java b/src/main/java/org/springblade/modules/article/entity/ArticleBrowseEntity.java
new file mode 100644
index 0000000..cfcc1bc
--- /dev/null
+++ b/src/main/java/org/springblade/modules/article/entity/ArticleBrowseEntity.java
@@ -0,0 +1,66 @@
+package org.springblade.modules.article.entity;
+
+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;
+import lombok.Data;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.io.Serializable;
+import java.util.Date;
+import org.springframework.format.annotation.DateTimeFormat;
+
+/**
+ * 文章浏览记录表 实体类
+ *
+ * @author BladeX
+ * @since 2024-03-23
+ */
+@Data
+@TableName("jczz_article_browse")
+@ApiModel(value = "ArticleBrowse对象", description = "文章浏览记录表")
+public class ArticleBrowseEntity implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 主键
+ */
+ @JsonSerialize(using = ToStringSerializer.class)
+ @ApiModelProperty("主键id")
+ @TableId(value = "id", type = IdType.ASSIGN_ID)
+ private Long id;
+
+ /**
+ * 文章id
+ */
+ @ApiModelProperty(value = "文章id")
+ private Long articleId;
+
+ /**
+ * 创建人(浏览人用户id)
+ */
+ @ApiModelProperty(value = "创建人(浏览人用户id)")
+ @TableField(fill = FieldFill.INSERT)
+ private Long createUser;
+
+ /**
+ * 创建时间
+ */
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @ApiModelProperty("创建时间")
+ @TableField(fill = FieldFill.INSERT)
+ private Date createTime;
+
+ /**
+ * 是否删除 0:否 1:是
+ */
+ @ApiModelProperty(value = "是否删除 0:否 1:是", example = "")
+ @TableField("is_deleted")
+ @TableLogic
+ private Integer isDeleted;
+
+}
diff --git a/src/main/java/org/springblade/modules/article/entity/ArticleIntegralEntity.java b/src/main/java/org/springblade/modules/article/entity/ArticleIntegralEntity.java
new file mode 100644
index 0000000..d2fbc19
--- /dev/null
+++ b/src/main/java/org/springblade/modules/article/entity/ArticleIntegralEntity.java
@@ -0,0 +1,71 @@
+package org.springblade.modules.article.entity;
+
+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;
+import lombok.Data;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.io.Serializable;
+import java.util.Date;
+import org.springframework.format.annotation.DateTimeFormat;
+
+/**
+ * 文章浏览积分表 实体类
+ *
+ * @author BladeX
+ * @since 2024-03-23
+ */
+@Data
+@TableName("jczz_article_integral")
+@ApiModel(value = "ArticleIntegral对象", description = "文章浏览积分表")
+public class ArticleIntegralEntity implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 主键
+ */
+ @JsonSerialize(using = ToStringSerializer.class)
+ @ApiModelProperty("主键id")
+ @TableId(value = "id", type = IdType.ASSIGN_ID)
+ private Long id;
+
+ /**
+ * 文章id
+ */
+ @ApiModelProperty(value = "文章id")
+ private Long articleId;
+ /**
+ * 得分
+ */
+ @ApiModelProperty(value = "得分")
+ private Integer score;
+ /**
+ * 创建人(浏览人用户id)
+ */
+ @ApiModelProperty(value = "创建人(浏览人用户id)")
+ @TableField(fill = FieldFill.INSERT)
+ private Long createUser;
+
+ /**
+ * 创建时间
+ */
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @ApiModelProperty("创建时间")
+ @TableField(fill = FieldFill.INSERT)
+ private Date createTime;
+
+
+ /**
+ * 是否删除 0:否 1:是
+ */
+ @ApiModelProperty(value = "是否删除 0:否 1:是", example = "")
+ @TableField("is_deleted")
+ @TableLogic
+ private Integer isDeleted;
+
+}
diff --git a/src/main/java/org/springblade/modules/article/mapper/ArticleBrowseMapper.java b/src/main/java/org/springblade/modules/article/mapper/ArticleBrowseMapper.java
new file mode 100644
index 0000000..fa3fef1
--- /dev/null
+++ b/src/main/java/org/springblade/modules/article/mapper/ArticleBrowseMapper.java
@@ -0,0 +1,43 @@
+/*
+ * Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * Neither the name of the dreamlu.net developer nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ * Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.article.mapper;
+
+import org.springblade.modules.article.entity.ArticleBrowseEntity;
+import org.springblade.modules.article.vo.ArticleBrowseVO;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import java.util.List;
+
+/**
+ * 文章浏览记录表 Mapper 接口
+ *
+ * @author BladeX
+ * @since 2024-03-23
+ */
+public interface ArticleBrowseMapper extends BaseMapper<ArticleBrowseEntity> {
+
+ /**
+ * 自定义分页
+ *
+ * @param page
+ * @param articleBrowse
+ * @return
+ */
+ List<ArticleBrowseVO> selectArticleBrowsePage(IPage page, ArticleBrowseVO articleBrowse);
+
+
+}
diff --git a/src/main/java/org/springblade/modules/article/mapper/ArticleBrowseMapper.xml b/src/main/java/org/springblade/modules/article/mapper/ArticleBrowseMapper.xml
new file mode 100644
index 0000000..d8002c9
--- /dev/null
+++ b/src/main/java/org/springblade/modules/article/mapper/ArticleBrowseMapper.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.springblade.modules.article.mapper.ArticleBrowseMapper">
+
+ <!-- 通用查询映射结果 -->
+ <resultMap id="articleBrowseResultMap" type="org.springblade.modules.article.vo.ArticleBrowseVO">
+ <result column="id" property="id"/>
+ <result column="article_id" property="articleId"/>
+ <result column="create_time" property="createTime"/>
+ <result column="create_user" property="createUser"/>
+ <result column="is_deleted" property="isDeleted"/>
+ </resultMap>
+
+
+ <select id="selectArticleBrowsePage" resultMap="articleBrowseResultMap">
+ select * from jczz_article_browse where is_deleted = 0
+ </select>
+
+
+</mapper>
diff --git a/src/main/java/org/springblade/modules/article/mapper/ArticleIntegralMapper.java b/src/main/java/org/springblade/modules/article/mapper/ArticleIntegralMapper.java
new file mode 100644
index 0000000..94e7c24
--- /dev/null
+++ b/src/main/java/org/springblade/modules/article/mapper/ArticleIntegralMapper.java
@@ -0,0 +1,43 @@
+/*
+ * Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * Neither the name of the dreamlu.net developer nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ * Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.article.mapper;
+
+import org.springblade.modules.article.entity.ArticleIntegralEntity;
+import org.springblade.modules.article.vo.ArticleIntegralVO;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import java.util.List;
+
+/**
+ * 文章浏览积分表 Mapper 接口
+ *
+ * @author BladeX
+ * @since 2024-03-23
+ */
+public interface ArticleIntegralMapper extends BaseMapper<ArticleIntegralEntity> {
+
+ /**
+ * 自定义分页
+ *
+ * @param page
+ * @param articleIntegral
+ * @return
+ */
+ List<ArticleIntegralVO> selectArticleIntegralPage(IPage page, ArticleIntegralVO articleIntegral);
+
+
+}
diff --git a/src/main/java/org/springblade/modules/article/mapper/ArticleIntegralMapper.xml b/src/main/java/org/springblade/modules/article/mapper/ArticleIntegralMapper.xml
new file mode 100644
index 0000000..2ad0c5b
--- /dev/null
+++ b/src/main/java/org/springblade/modules/article/mapper/ArticleIntegralMapper.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.springblade.modules.article.mapper.ArticleIntegralMapper">
+
+ <!-- 通用查询映射结果 -->
+ <resultMap id="articleIntegralResultMap" type="org.springblade.modules.article.vo.ArticleIntegralVO">
+ <result column="id" property="id"/>
+ <result column="article_id" property="articleId"/>
+ <result column="score" property="score"/>
+ <result column="create_time" property="createTime"/>
+ <result column="create_user" property="createUser"/>
+ <result column="is_deleted" property="isDeleted"/>
+ </resultMap>
+
+
+ <select id="selectArticleIntegralPage" resultMap="articleIntegralResultMap">
+ select * from jczz_article_integral where is_deleted = 0
+ </select>
+
+
+</mapper>
diff --git a/src/main/java/org/springblade/modules/article/service/IArticleBrowseService.java b/src/main/java/org/springblade/modules/article/service/IArticleBrowseService.java
new file mode 100644
index 0000000..97fb59c
--- /dev/null
+++ b/src/main/java/org/springblade/modules/article/service/IArticleBrowseService.java
@@ -0,0 +1,26 @@
+package org.springblade.modules.article.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.springblade.modules.article.entity.ArticleBrowseEntity;
+import org.springblade.modules.article.vo.ArticleBrowseVO;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+
+/**
+ * 文章浏览记录表 服务类
+ *
+ * @author BladeX
+ * @since 2024-03-23
+ */
+public interface IArticleBrowseService extends IService<ArticleBrowseEntity> {
+
+ /**
+ * 自定义分页
+ *
+ * @param page
+ * @param articleBrowse
+ * @return
+ */
+ IPage<ArticleBrowseVO> selectArticleBrowsePage(IPage<ArticleBrowseVO> page, ArticleBrowseVO articleBrowse);
+
+
+}
diff --git a/src/main/java/org/springblade/modules/article/service/IArticleIntegralService.java b/src/main/java/org/springblade/modules/article/service/IArticleIntegralService.java
new file mode 100644
index 0000000..482758b
--- /dev/null
+++ b/src/main/java/org/springblade/modules/article/service/IArticleIntegralService.java
@@ -0,0 +1,26 @@
+package org.springblade.modules.article.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.springblade.modules.article.entity.ArticleIntegralEntity;
+import org.springblade.modules.article.vo.ArticleIntegralVO;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+
+/**
+ * 文章浏览积分表 服务类
+ *
+ * @author BladeX
+ * @since 2024-03-23
+ */
+public interface IArticleIntegralService extends IService<ArticleIntegralEntity> {
+
+ /**
+ * 自定义分页
+ *
+ * @param page
+ * @param articleIntegral
+ * @return
+ */
+ IPage<ArticleIntegralVO> selectArticleIntegralPage(IPage<ArticleIntegralVO> page, ArticleIntegralVO articleIntegral);
+
+
+}
diff --git a/src/main/java/org/springblade/modules/article/service/impl/ArticleBrowseServiceImpl.java b/src/main/java/org/springblade/modules/article/service/impl/ArticleBrowseServiceImpl.java
new file mode 100644
index 0000000..afa31ed
--- /dev/null
+++ b/src/main/java/org/springblade/modules/article/service/impl/ArticleBrowseServiceImpl.java
@@ -0,0 +1,26 @@
+package org.springblade.modules.article.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springblade.modules.article.entity.ArticleBrowseEntity;
+import org.springblade.modules.article.vo.ArticleBrowseVO;
+import org.springblade.modules.article.mapper.ArticleBrowseMapper;
+import org.springblade.modules.article.service.IArticleBrowseService;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+
+/**
+ * 文章浏览记录表 服务实现类
+ *
+ * @author BladeX
+ * @since 2024-03-23
+ */
+@Service
+public class ArticleBrowseServiceImpl extends ServiceImpl<ArticleBrowseMapper, ArticleBrowseEntity> implements IArticleBrowseService {
+
+ @Override
+ public IPage<ArticleBrowseVO> selectArticleBrowsePage(IPage<ArticleBrowseVO> page, ArticleBrowseVO articleBrowse) {
+ return page.setRecords(baseMapper.selectArticleBrowsePage(page, articleBrowse));
+ }
+
+
+}
diff --git a/src/main/java/org/springblade/modules/article/service/impl/ArticleIntegralServiceImpl.java b/src/main/java/org/springblade/modules/article/service/impl/ArticleIntegralServiceImpl.java
new file mode 100644
index 0000000..af9501a
--- /dev/null
+++ b/src/main/java/org/springblade/modules/article/service/impl/ArticleIntegralServiceImpl.java
@@ -0,0 +1,26 @@
+package org.springblade.modules.article.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springblade.modules.article.entity.ArticleIntegralEntity;
+import org.springblade.modules.article.vo.ArticleIntegralVO;
+import org.springblade.modules.article.mapper.ArticleIntegralMapper;
+import org.springblade.modules.article.service.IArticleIntegralService;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+
+/**
+ * 文章浏览积分表 服务实现类
+ *
+ * @author BladeX
+ * @since 2024-03-23
+ */
+@Service
+public class ArticleIntegralServiceImpl extends ServiceImpl<ArticleIntegralMapper, ArticleIntegralEntity> implements IArticleIntegralService {
+
+ @Override
+ public IPage<ArticleIntegralVO> selectArticleIntegralPage(IPage<ArticleIntegralVO> page, ArticleIntegralVO articleIntegral) {
+ return page.setRecords(baseMapper.selectArticleIntegralPage(page, articleIntegral));
+ }
+
+
+}
diff --git a/src/main/java/org/springblade/modules/article/vo/ArticleBrowseVO.java b/src/main/java/org/springblade/modules/article/vo/ArticleBrowseVO.java
new file mode 100644
index 0000000..10d512a
--- /dev/null
+++ b/src/main/java/org/springblade/modules/article/vo/ArticleBrowseVO.java
@@ -0,0 +1,35 @@
+/*
+ * Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * Neither the name of the dreamlu.net developer nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ * Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.article.vo;
+
+import org.springblade.modules.article.entity.ArticleBrowseEntity;
+import org.springblade.core.tool.node.INode;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 文章浏览记录表 视图实体类
+ *
+ * @author BladeX
+ * @since 2024-03-23
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class ArticleBrowseVO extends ArticleBrowseEntity {
+ private static final long serialVersionUID = 1L;
+
+}
diff --git a/src/main/java/org/springblade/modules/article/vo/ArticleIntegralVO.java b/src/main/java/org/springblade/modules/article/vo/ArticleIntegralVO.java
new file mode 100644
index 0000000..a11cdae
--- /dev/null
+++ b/src/main/java/org/springblade/modules/article/vo/ArticleIntegralVO.java
@@ -0,0 +1,35 @@
+/*
+ * Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * Neither the name of the dreamlu.net developer nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ * Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.article.vo;
+
+import org.springblade.modules.article.entity.ArticleIntegralEntity;
+import org.springblade.core.tool.node.INode;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 文章浏览积分表 视图实体类
+ *
+ * @author BladeX
+ * @since 2024-03-23
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class ArticleIntegralVO extends ArticleIntegralEntity {
+ private static final long serialVersionUID = 1L;
+
+}
diff --git a/src/main/java/org/springblade/modules/disputeRecord/controller/DisputeRecordController.java b/src/main/java/org/springblade/modules/disputeRecord/controller/DisputeRecordController.java
new file mode 100644
index 0000000..e72a0af
--- /dev/null
+++ b/src/main/java/org/springblade/modules/disputeRecord/controller/DisputeRecordController.java
@@ -0,0 +1,151 @@
+/*
+ * Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * Neither the name of the dreamlu.net developer nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ * Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.disputeRecord.controller;
+
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import lombok.AllArgsConstructor;
+import javax.validation.Valid;
+
+import org.springblade.core.secure.BladeUser;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.Func;
+import org.springframework.web.bind.annotation.*;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.modules.disputeRecord.entity.DisputeRecordEntity;
+import org.springblade.modules.disputeRecord.vo.DisputeRecordVO;
+import org.springblade.modules.disputeRecord.wrapper.DisputeRecordWrapper;
+import org.springblade.modules.disputeRecord.service.IDisputeRecordService;
+import org.springblade.core.boot.ctrl.BladeController;
+
+/**
+ * 矛盾纠纷记录表 控制器
+ *
+ * @author BladeX
+ * @since 2024-03-23
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("blade-disputeRecord/disputeRecord")
+@Api(value = "矛盾纠纷记录表", tags = "矛盾纠纷记录表接口")
+public class DisputeRecordController {
+
+ private final IDisputeRecordService disputeRecordService;
+
+ /**
+ * 矛盾纠纷记录表 详情
+ */
+ @GetMapping("/detail")
+ @ApiOperationSupport(order = 1)
+ @ApiOperation(value = "详情", notes = "传入disputeRecord")
+ public R detail(DisputeRecordEntity disputeRecord) {
+ DisputeRecordEntity detail = disputeRecordService.getOne(Condition.getQueryWrapper(disputeRecord));
+ return R.data(detail);
+ }
+ /**
+ * 矛盾纠纷记录表 分页
+ */
+ @GetMapping("/list")
+ @ApiOperationSupport(order = 2)
+ @ApiOperation(value = "分页", notes = "传入disputeRecord")
+ public R<IPage<DisputeRecordVO>> list(DisputeRecordEntity disputeRecord, Query query) {
+ IPage<DisputeRecordEntity> pages = disputeRecordService.page(Condition.getPage(query), Condition.getQueryWrapper(disputeRecord));
+ return R.data(DisputeRecordWrapper.build().pageVO(pages));
+ }
+
+ /**
+ * 矛盾纠纷记录表 自定义分页
+ */
+ @GetMapping("/page")
+ @ApiOperationSupport(order = 3)
+ @ApiOperation(value = "分页", notes = "传入disputeRecord")
+ public R<IPage<DisputeRecordVO>> page(DisputeRecordVO disputeRecord, Query query) {
+ IPage<DisputeRecordVO> pages = disputeRecordService.selectDisputeRecordPage(Condition.getPage(query), disputeRecord);
+ return R.data(pages);
+ }
+
+ /**
+ * 矛盾纠纷记录表 新增
+ */
+ @PostMapping("/save")
+ @ApiOperationSupport(order = 4)
+ @ApiOperation(value = "新增", notes = "传入disputeRecord")
+ public R save(@Valid @RequestBody DisputeRecordEntity disputeRecord) {
+ return R.status(disputeRecordService.save(disputeRecord));
+ }
+
+ /**
+ * 矛盾纠纷记录表 修改
+ */
+ @PostMapping("/update")
+ @ApiOperationSupport(order = 5)
+ @ApiOperation(value = "修改", notes = "传入disputeRecord")
+ public R update(@Valid @RequestBody DisputeRecordEntity disputeRecord) {
+ return R.status(disputeRecordService.updateById(disputeRecord));
+ }
+
+ /**
+ * 矛盾纠纷记录表 新增或修改
+ */
+ @PostMapping("/submit")
+ @ApiOperationSupport(order = 6)
+ @ApiOperation(value = "新增或修改", notes = "传入disputeRecord")
+ public R submit(@Valid @RequestBody DisputeRecordEntity disputeRecord) {
+ return R.status(disputeRecordService.saveOrUpdate(disputeRecord));
+ }
+
+ /**
+ * 矛盾纠纷记录表 删除
+ */
+ @PostMapping("/remove")
+ @ApiOperationSupport(order = 7)
+ @ApiOperation(value = "逻辑删除", notes = "传入ids")
+ public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
+ return R.status(disputeRecordService.removeByIds(Func.toLongList(ids)));
+ }
+
+
+ /**
+ * 矛盾纠纷记录表 自定义新增或修改
+ * @param disputeRecord
+ * @return
+ */
+ @PostMapping("/saveOrUpdate")
+ @ApiOperationSupport(order = 8)
+ @ApiOperation(value = "自定义新增或修改", notes = "传入disputeRecord")
+ public R saveOrUpdate(@Valid @RequestBody DisputeRecordEntity disputeRecord) {
+ return R.status(disputeRecordService.saveOrUpdateDisputeRecord(disputeRecord));
+ }
+
+ /**
+ * 矛盾纠纷记录表 自定义详情
+ * @param disputeRecord
+ * @return
+ */
+ @GetMapping("/getDetail")
+ @ApiOperationSupport(order = 9)
+ @ApiOperation(value = "自定义详情", notes = "传入disputeRecord")
+ public R getDetail(DisputeRecordVO disputeRecord) {
+ return R.data(disputeRecordService.getDetail(disputeRecord));
+ }
+
+
+}
diff --git a/src/main/java/org/springblade/modules/disputeRecord/dto/DisputeRecordDTO.java b/src/main/java/org/springblade/modules/disputeRecord/dto/DisputeRecordDTO.java
new file mode 100644
index 0000000..22b68b6
--- /dev/null
+++ b/src/main/java/org/springblade/modules/disputeRecord/dto/DisputeRecordDTO.java
@@ -0,0 +1,34 @@
+/*
+ * Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * Neither the name of the dreamlu.net developer nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ * Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.disputeRecord.dto;
+
+import org.springblade.modules.disputeRecord.entity.DisputeRecordEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 矛盾纠纷记录表 数据传输对象实体类
+ *
+ * @author BladeX
+ * @since 2024-03-23
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class DisputeRecordDTO extends DisputeRecordEntity {
+ private static final long serialVersionUID = 1L;
+
+}
diff --git a/src/main/java/org/springblade/modules/disputeRecord/entity/DisputeRecordEntity.java b/src/main/java/org/springblade/modules/disputeRecord/entity/DisputeRecordEntity.java
new file mode 100644
index 0000000..02a24b5
--- /dev/null
+++ b/src/main/java/org/springblade/modules/disputeRecord/entity/DisputeRecordEntity.java
@@ -0,0 +1,148 @@
+package org.springblade.modules.disputeRecord.entity;
+
+import com.baomidou.mybatisplus.annotation.*;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * 矛盾纠纷记录表 实体类
+ *
+ * @author BladeX
+ * @since 2024-03-23
+ */
+@Data
+@TableName("jczz_dispute_record")
+@ApiModel(value = "DisputeRecord对象", description = "矛盾纠纷记录表")
+public class DisputeRecordEntity implements Serializable {
+ private static final long serialVersionUID = 1L;
+
+ /** 主键id */
+ @ApiModelProperty(value = "主键ID", example = "")
+ @TableId(value = "id", type = IdType.ASSIGN_ID)
+ private Long id;
+
+ /**
+ * 事发地址
+ */
+ @ApiModelProperty(value = "事发地址")
+ private String address;
+ /**
+ * 事发经度
+ */
+ @ApiModelProperty(value = "事发经度")
+ private String lng;
+ /**
+ * 事发纬度
+ */
+ @ApiModelProperty(value = "事发纬度")
+ private String lat;
+ /**
+ * 纠纷方1姓名
+ */
+ @ApiModelProperty(value = "纠纷方1姓名")
+ private String nameOne;
+ /**
+ * 纠纷方1电话
+ */
+ @ApiModelProperty(value = "纠纷方1电话")
+ private String phoneOne;
+ /**
+ * 纠纷方1身份证号码
+ */
+ @ApiModelProperty(value = "纠纷方1身份证号码")
+ private String idCardOne;
+ /**
+ * 纠纷方2姓名
+ */
+ @ApiModelProperty(value = "纠纷方2姓名")
+ private String nameTwo;
+ /**
+ * 纠纷方2电话
+ */
+ @ApiModelProperty(value = "纠纷方2电话")
+ private String phoneTwo;
+ /**
+ * 纠纷方2身份证号码
+ */
+ @ApiModelProperty(value = "纠纷方2身份证号码")
+ private String idCardTwo;
+ /**
+ * 纠纷类型 业务字典:disputeType
+ */
+ @ApiModelProperty(value = "纠纷类型 业务字典:disputeType")
+ private Integer disputeType;
+ /**
+ * 纠纷内容
+ */
+ @ApiModelProperty(value = "纠纷内容")
+ private String disputeContent;
+ /**
+ * 0:否 1:是 是否受伤
+ */
+ @ApiModelProperty(value = "0:否 1:是 是否受伤 ")
+ private Integer injuryFlag;
+ /**
+ * 受伤情况描述
+ */
+ @ApiModelProperty(value = "受伤情况描述")
+ private Integer injuryDesc;
+ /**
+ * 报警次数
+ */
+ @ApiModelProperty(value = "报警次数")
+ private Integer alarmNum;
+ /**
+ * 信息来源:1:群众报警 2:e呼即办推送 3:走访发现 业务字典:disputeSource
+ */
+ @ApiModelProperty(value = "信息来源 业务字典:disputeSource")
+ private Integer source;
+ /**
+ * 处理结果 1:已化解 2:未化解 3:移送e呼即办
+ */
+ @ApiModelProperty(value = "处理结果 1:已化解 2:未化解 3:移送e呼即办")
+ private Integer handleResult;
+ /**
+ * 网格编码
+ */
+ @ApiModelProperty(value = "网格编码")
+ private String gridCode;
+ /**
+ * 警务网格编码
+ */
+ @ApiModelProperty(value = "警务网格编码")
+ private String jwGridCode;
+
+ /** 创建人 */
+ @ApiModelProperty(value = "创建人", example = "")
+ @TableField("create_user")
+ private Long createUser;
+
+ /** 创建时间 */
+ @ApiModelProperty(value = "创建时间", example = "")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+ @TableField(value = "create_time",fill = FieldFill.INSERT)
+ private Date createTime;
+
+ /** 更新人 */
+ @ApiModelProperty(value = "更新人", example = "")
+ @TableField("update_user")
+ private Long updateUser;
+
+ /** 更新时间 */
+ @ApiModelProperty(value = "更新时间", example = "")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+ @TableField(value = "update_time",fill = FieldFill.UPDATE)
+ private Date updateTime;
+
+ /** 是否删除 0:否 1:是 */
+ @ApiModelProperty(value = "是否删除 0:否 1:是", example = "")
+ @TableField("is_deleted")
+ @TableLogic
+ private Integer isDeleted;
+
+}
diff --git a/src/main/java/org/springblade/modules/disputeRecord/mapper/DisputeRecordMapper.java b/src/main/java/org/springblade/modules/disputeRecord/mapper/DisputeRecordMapper.java
new file mode 100644
index 0000000..f3b0aea
--- /dev/null
+++ b/src/main/java/org/springblade/modules/disputeRecord/mapper/DisputeRecordMapper.java
@@ -0,0 +1,54 @@
+/*
+ * Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * Neither the name of the dreamlu.net developer nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ * Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.disputeRecord.mapper;
+
+import org.apache.ibatis.annotations.Param;
+import org.springblade.modules.disputeRecord.entity.DisputeRecordEntity;
+import org.springblade.modules.disputeRecord.vo.DisputeRecordVO;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import java.util.List;
+
+/**
+ * 矛盾纠纷记录表 Mapper 接口
+ *
+ * @author BladeX
+ * @since 2024-03-23
+ */
+public interface DisputeRecordMapper extends BaseMapper<DisputeRecordEntity> {
+
+ /**
+ * 自定义分页
+ *
+ * @param page
+ * @param disputeRecord
+ * @return
+ */
+ List<DisputeRecordVO> selectDisputeRecordPage(IPage page,
+ @Param("disputeRecord") DisputeRecordVO disputeRecord,
+ @Param("isAdministrator") Integer isAdministrator,
+ @Param("regionChildCodesList") List<String> regionChildCodesList,
+ @Param("gridCodeList") List<String> gridCodeList);
+
+
+ /**
+ * 矛盾纠纷记录表 自定义详情
+ * @param disputeRecord
+ * @return
+ */
+ DisputeRecordVO getDetail(@Param("disputeRecord") DisputeRecordVO disputeRecord);
+}
diff --git a/src/main/java/org/springblade/modules/disputeRecord/mapper/DisputeRecordMapper.xml b/src/main/java/org/springblade/modules/disputeRecord/mapper/DisputeRecordMapper.xml
new file mode 100644
index 0000000..d72a816
--- /dev/null
+++ b/src/main/java/org/springblade/modules/disputeRecord/mapper/DisputeRecordMapper.xml
@@ -0,0 +1,225 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.springblade.modules.disputeRecord.mapper.DisputeRecordMapper">
+
+ <!-- 通用查询映射结果 -->
+ <resultMap id="disputeRecordResultMap" type="org.springblade.modules.disputeRecord.vo.DisputeRecordVO">
+ <result column="id" property="id"/>
+ <result column="address" property="address"/>
+ <result column="lng" property="lng"/>
+ <result column="lat" property="lat"/>
+ <result column="name_one" property="nameOne"/>
+ <result column="phone_one" property="phoneOne"/>
+ <result column="id_card_one" property="idCardOne"/>
+ <result column="name_two" property="nameTwo"/>
+ <result column="phone_two" property="phoneTwo"/>
+ <result column="id_card_two" property="idCardTwo"/>
+ <result column="dispute_type" property="disputeType"/>
+ <result column="dispute_content" property="disputeContent"/>
+ <result column="injury_flag" property="injuryFlag"/>
+ <result column="injury_desc" property="injuryDesc"/>
+ <result column="alarm_num" property="alarmNum"/>
+ <result column="source" property="source"/>
+ <result column="handle_result" property="handleResult"/>
+ <result column="grid_code" property="gridCode"/>
+ <result column="jw_grid_code" property="jwGridCode"/>
+ <result column="create_user" property="createUser"/>
+ <result column="create_time" property="createTime"/>
+ <result column="update_user" property="updateUser"/>
+ <result column="update_time" property="updateTime"/>
+ <result column="is_deleted" property="isDeleted"/>
+ </resultMap>
+
+ <!--自定列表分页查询-->
+ <select id="selectDisputeRecordPage" resultMap="disputeRecordResultMap">
+ select
+ jdr.*,
+ br.town_name as townName,
+ br.name as communityName,
+ jpag.pcs_name pcsName
+ from jczz_dispute_record jdr
+ LEFT JOIN jczz_grid jg on jg.grid_code = jdr.grid_code and jg.is_deleted = 0
+ LEFT JOIN jczz_police_affairs_grid jpag on jdr.jw_grid_code= jpag.jw_grid_code and jpag.is_deleted = 0
+ LEFT JOIN blade_region br on br.code = jpag.community_code
+ where jdr.is_deleted = 0
+ <if test="disputeRecord.disputeType != null">
+ and jdr.dispute_type = #{disputeRecord.disputeType}
+ </if>
+ <if test="disputeRecord.injuryFlag != null">
+ and jdr.injury_flag = #{disputeRecord.injuryFlag}
+ </if>
+ <if test="disputeRecord.source != null">
+ and jdr.source = #{disputeRecord.source}
+ </if>
+ <if test="disputeRecord.townName != null and disputeRecord.townName != ''">
+ and br.town_name like concat('%',#{disputeRecord.townName},'%')
+ </if>
+ <if test="disputeRecord.communityName != null and disputeRecord.communityName != ''">
+ and jbr.name like concat('%',#{disputeRecord.communityName},'%')
+ </if>
+ <if test="disputeRecord.pcsName != null and disputeRecord.pcsName != ''">
+ and jpag.pcs_name like concat('%',#{disputeRecord.pcsName},'%')
+ </if>
+ <if test="disputeRecord.address != null and disputeRecord.address != ''">
+ and jdr.address like concat('%',#{disputeRecord.address},'%')
+ </if>
+ <if test="disputeRecord.disputeContent != null and disputeRecord.disputeContent != ''">
+ and jdr.dispute_content like concat('%',#{disputeRecord.disputeContent},'%')
+ </if>
+ <if test="disputeRecord.nameOne != null and disputeRecord.nameOne != ''">
+ and jdr.name_one like concat('%',#{disputeRecord.nameOne},'%')
+ </if>
+ <if test="disputeRecord.phoneOne != null and disputeRecord.phoneOne != ''">
+ and jdr.phone_one like concat('%',#{disputeRecord.phoneOne},'%')
+ </if>
+ <if test="disputeRecord.idCardOne != null and disputeRecord.idCardOne != ''">
+ and jdr.id_card_one like concat('%',#{disputeRecord.idCardOne},'%')
+ </if>
+ <if test="disputeRecord.nameTwo != null and disputeRecord.nameTwo != ''">
+ and jdr.name_two like concat('%',#{disputeRecord.nameTwo},'%')
+ </if>
+ <if test="disputeRecord.phoneTwo != null and disputeRecord.phoneTwo != ''">
+ and jdr.phone_two like concat('%',#{disputeRecord.phoneOne},'%')
+ </if>
+ <if test="disputeRecord.idCardTwo != null and disputeRecord.idCardTwo != ''">
+ and jdr.id_card_two like concat('%',#{disputeRecord.idCardTwo},'%')
+ </if>
+ <if test="disputeRecord.startTime != null and disputeRecord.startTime != ''">
+ and date_format(jdr.create_time,'%Y-%m-%d') >= #{disputeRecord.startTime}
+ </if>
+ <if test="disputeRecord.endTime != null and disputeRecord.endTime != ''">
+ and date_format(jdr.create_time,'%Y-%m-%d') <= #{disputeRecord.endTime}
+ </if>
+ <if test="disputeRecord.searchKey!=null and disputeRecord.searchKey!=''">
+ and CONCAT(
+ ifnull(jdr.name_one,''),
+ ifnull(jdr.phone_one,''),
+ ifnull(jdr.name_two,''),
+ ifnull(jdr.phone_two,''),
+ ifnull(jdr.address,''),
+ ifnull(jdr.dispute_content,'')
+ ) like CONCAT ('%', #{disputeRecord.searchKey},'%')
+ </if>
+ <if test="isAdministrator==2">
+ <choose>
+ <when test="disputeRecord.roleName != null and disputeRecord.roleName != ''">
+ <if test="disputeRecord.roleName=='wgy'">
+ <choose>
+ <when test="gridCodeList !=null and gridCodeList.size()>0">
+ and jg.grid_code in
+ <foreach collection="gridCodeList" item="code" open="(" close=")" separator=",">
+ #{code}
+ </foreach>
+ </when>
+ <otherwise>
+ and jg.grid_code in ('')
+ </otherwise>
+ </choose>
+ </if>
+ <if test="disputeRecord.roleName=='mj'">
+ <choose>
+ <when test="regionChildCodesList !=null and regionChildCodesList.size()>0">
+ and jpag.community_code in
+ <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=",">
+ #{code}
+ </foreach>
+ </when>
+ <otherwise>
+ and jpag.community_code in ('')
+ </otherwise>
+ </choose>
+ </if>
+ </when>
+ <otherwise>
+ <choose>
+ <when test="regionChildCodesList !=null and regionChildCodesList.size()>0">
+ and
+ (
+ jg.grid_code in
+ <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=",">
+ #{code}
+ </foreach>
+ or
+ jpag.community_code in
+ <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=",">
+ #{code}
+ </foreach>
+ )
+ </when>
+ <otherwise>
+ and
+ (
+ jg.grid_code in ('') or jpag.community_code in ('')
+ )
+ </otherwise>
+ </choose>
+ </otherwise>
+ </choose>
+ </if>
+ order by jdr.id desc,jdr.create_time desc
+ </select>
+
+ <!--自定列表分页查询-->
+ <select id="getDetail" resultType="org.springblade.modules.disputeRecord.vo.DisputeRecordVO">
+ select
+ jdr.*,
+ br.town_name as townName,
+ br.name as communityName,
+ jpag.pcs_name pcsName
+ from jczz_dispute_record jdr
+ LEFT JOIN jczz_grid jg on jg.grid_code = jdr.grid_code and jg.is_deleted = 0
+ LEFT JOIN jczz_police_affairs_grid jpag on jdr.jw_grid_code= jpag.jw_grid_code and jpag.is_deleted = 0
+ LEFT JOIN blade_region br on br.code = jpag.community_code
+ where jdr.is_deleted = 0
+ <if test="disputeRecord.id != null">
+ and jdr.id = #{disputeRecord.id}
+ </if>
+ <if test="disputeRecord.disputeType != null">
+ and jdr.dispute_type = #{disputeRecord.disputeType}
+ </if>
+ <if test="disputeRecord.injuryFlag != null">
+ and jdr.injury_flag = #{disputeRecord.injuryFlag}
+ </if>
+ <if test="disputeRecord.source != null">
+ and jdr.source = #{disputeRecord.source}
+ </if>
+ <if test="disputeRecord.handleResult != null">
+ and jdr.handle_result = #{disputeRecord.handleResult}
+ </if>
+ <if test="disputeRecord.townName != null and disputeRecord.townName != ''">
+ and br.town_name like concat('%',#{disputeRecord.townName},'%')
+ </if>
+ <if test="disputeRecord.communityName != null and disputeRecord.communityName != ''">
+ and jbr.name like concat('%',#{disputeRecord.communityName},'%')
+ </if>
+ <if test="disputeRecord.pcsName != null and disputeRecord.pcsName != ''">
+ and jpag.pcs_name like concat('%',#{disputeRecord.pcsName},'%')
+ </if>
+ <if test="disputeRecord.address != null and disputeRecord.address != ''">
+ and jdr.address like concat('%',#{disputeRecord.address},'%')
+ </if>
+ <if test="disputeRecord.disputeContent != null and disputeRecord.disputeContent != ''">
+ and jdr.dispute_content like concat('%',#{disputeRecord.disputeContent},'%')
+ </if>
+ <if test="disputeRecord.nameOne != null and disputeRecord.nameOne != ''">
+ and jdr.name_one like concat('%',#{disputeRecord.nameOne},'%')
+ </if>
+ <if test="disputeRecord.phoneOne != null and disputeRecord.phoneOne != ''">
+ and jdr.phone_one like concat('%',#{disputeRecord.phoneOne},'%')
+ </if>
+ <if test="disputeRecord.idCardOne != null and disputeRecord.idCardOne != ''">
+ and jdr.id_card_one like concat('%',#{disputeRecord.idCardOne},'%')
+ </if>
+ <if test="disputeRecord.nameTwo != null and disputeRecord.nameTwo != ''">
+ and jdr.name_two like concat('%',#{disputeRecord.nameTwo},'%')
+ </if>
+ <if test="disputeRecord.phoneTwo != null and disputeRecord.phoneTwo != ''">
+ and jdr.phone_two like concat('%',#{disputeRecord.phoneOne},'%')
+ </if>
+ <if test="disputeRecord.idCardTwo != null and disputeRecord.idCardTwo != ''">
+ and jdr.id_card_two like concat('%',#{disputeRecord.idCardTwo},'%')
+ </if>
+ </select>
+
+
+</mapper>
diff --git a/src/main/java/org/springblade/modules/disputeRecord/service/IDisputeRecordService.java b/src/main/java/org/springblade/modules/disputeRecord/service/IDisputeRecordService.java
new file mode 100644
index 0000000..78d77a3
--- /dev/null
+++ b/src/main/java/org/springblade/modules/disputeRecord/service/IDisputeRecordService.java
@@ -0,0 +1,39 @@
+package org.springblade.modules.disputeRecord.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.springblade.modules.disputeRecord.entity.DisputeRecordEntity;
+import org.springblade.modules.disputeRecord.vo.DisputeRecordVO;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+
+/**
+ * 矛盾纠纷记录表 服务类
+ *
+ * @author BladeX
+ * @since 2024-03-23
+ */
+public interface IDisputeRecordService extends IService<DisputeRecordEntity> {
+
+ /**
+ * 自定义分页
+ *
+ * @param page
+ * @param disputeRecord
+ * @return
+ */
+ IPage<DisputeRecordVO> selectDisputeRecordPage(IPage<DisputeRecordVO> page, DisputeRecordVO disputeRecord);
+
+
+ /**
+ * 矛盾纠纷记录表 自定义新增或修改
+ * @param disputeRecord
+ * @return
+ */
+ boolean saveOrUpdateDisputeRecord(DisputeRecordEntity disputeRecord);
+
+ /**
+ * 矛盾纠纷记录表 自定义详情
+ * @param disputeRecord
+ * @return
+ */
+ DisputeRecordVO getDetail(DisputeRecordVO disputeRecord);
+}
diff --git a/src/main/java/org/springblade/modules/disputeRecord/service/impl/DisputeRecordServiceImpl.java b/src/main/java/org/springblade/modules/disputeRecord/service/impl/DisputeRecordServiceImpl.java
new file mode 100644
index 0000000..7768389
--- /dev/null
+++ b/src/main/java/org/springblade/modules/disputeRecord/service/impl/DisputeRecordServiceImpl.java
@@ -0,0 +1,62 @@
+package org.springblade.modules.disputeRecord.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springblade.common.param.CommonParamSet;
+import org.springblade.common.param.GridSet;
+import org.springblade.modules.backblast.entity.BackblastWarnHanRecEntity;
+import org.springblade.modules.disputeRecord.entity.DisputeRecordEntity;
+import org.springblade.modules.disputeRecord.vo.DisputeRecordVO;
+import org.springblade.modules.disputeRecord.mapper.DisputeRecordMapper;
+import org.springblade.modules.disputeRecord.service.IDisputeRecordService;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+
+/**
+ * 矛盾纠纷记录表 服务实现类
+ *
+ * @author BladeX
+ * @since 2024-03-23
+ */
+@Service
+public class DisputeRecordServiceImpl extends ServiceImpl<DisputeRecordMapper, DisputeRecordEntity> implements IDisputeRecordService {
+
+ @Override
+ public IPage<DisputeRecordVO> selectDisputeRecordPage(IPage<DisputeRecordVO> page, DisputeRecordVO disputeRecord) {
+ CommonParamSet commonParamSet = new CommonParamSet<>().invoke(DisputeRecordVO.class, disputeRecord);
+ return page.setRecords(
+ baseMapper.selectDisputeRecordPage(page,
+ disputeRecord,
+ commonParamSet.getIsAdministrator(),
+ commonParamSet.getRegionChildCodesList(),
+ commonParamSet.getGridCodeList())
+ );
+ }
+
+ /**
+ * 矛盾纠纷记录表 自定义新增或修改
+ * @param disputeRecord
+ * @return
+ */
+ @Override
+ public boolean saveOrUpdateDisputeRecord(DisputeRecordEntity disputeRecord) {
+ // 点落面计算警格,网格,警格
+ GridSet invoke = new GridSet().invoke(DisputeRecordEntity.class, disputeRecord,
+ "lng", "lat", "gridCode", "jwGridCode");
+ if (null!=disputeRecord.getId()){
+ // 更新
+ return updateById(disputeRecord);
+ }
+ // 新增
+ return save(disputeRecord);
+ }
+
+ /**
+ * 矛盾纠纷记录表 自定义详情
+ * @param disputeRecord
+ * @return
+ */
+ @Override
+ public DisputeRecordVO getDetail(DisputeRecordVO disputeRecord) {
+ return baseMapper.getDetail(disputeRecord);
+ }
+}
diff --git a/src/main/java/org/springblade/modules/disputeRecord/vo/DisputeRecordVO.java b/src/main/java/org/springblade/modules/disputeRecord/vo/DisputeRecordVO.java
new file mode 100644
index 0000000..7f0cbfe
--- /dev/null
+++ b/src/main/java/org/springblade/modules/disputeRecord/vo/DisputeRecordVO.java
@@ -0,0 +1,79 @@
+/*
+ * Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * Neither the name of the dreamlu.net developer nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ * Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.disputeRecord.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import org.springblade.modules.disputeRecord.entity.DisputeRecordEntity;
+import org.springblade.core.tool.node.INode;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 矛盾纠纷记录表 视图实体类
+ *
+ * @author BladeX
+ * @since 2024-03-23
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class DisputeRecordVO extends DisputeRecordEntity {
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty(value = "社区编号", example = "")
+ private String communityCode;
+
+
+ @ApiModelProperty(value = "角色别名", example = "")
+ private String roleName;
+
+ /**
+ * 搜索关键字
+ */
+ @ApiModelProperty(value = "搜索关键字", example = "")
+ private String searchKey;
+
+ /**
+ * 开始时间
+ */
+ @ApiModelProperty(value = "开始时间", example = "")
+ private String startTime;
+
+ /**
+ * 结束时间
+ */
+ @ApiModelProperty(value = "结束时间", example = "")
+ private String endTime;
+
+ /**
+ * 乡镇名称
+ */
+ @ApiModelProperty(value = "乡镇名称", example = "")
+ private String townName;
+
+ /**
+ * 社区名称
+ */
+ @ApiModelProperty(value = "社区名称", example = "")
+ private String communityName;
+
+ /**
+ * 派出所名称
+ */
+ @ApiModelProperty(value = "派出所名称", example = "")
+ private String pcsName;
+
+}
diff --git a/src/main/java/org/springblade/modules/disputeRecord/wrapper/DisputeRecordWrapper.java b/src/main/java/org/springblade/modules/disputeRecord/wrapper/DisputeRecordWrapper.java
new file mode 100644
index 0000000..6e26c08
--- /dev/null
+++ b/src/main/java/org/springblade/modules/disputeRecord/wrapper/DisputeRecordWrapper.java
@@ -0,0 +1,50 @@
+/*
+ * Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * Neither the name of the dreamlu.net developer nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ * Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.disputeRecord.wrapper;
+
+import org.springblade.core.mp.support.BaseEntityWrapper;
+import org.springblade.core.tool.utils.BeanUtil;
+import org.springblade.modules.disputeRecord.entity.DisputeRecordEntity;
+import org.springblade.modules.disputeRecord.vo.DisputeRecordVO;
+import java.util.Objects;
+
+/**
+ * 矛盾纠纷记录表 包装类,返回视图层所需的字段
+ *
+ * @author BladeX
+ * @since 2024-03-23
+ */
+public class DisputeRecordWrapper extends BaseEntityWrapper<DisputeRecordEntity, DisputeRecordVO> {
+
+ public static DisputeRecordWrapper build() {
+ return new DisputeRecordWrapper();
+ }
+
+ @Override
+ public DisputeRecordVO entityVO(DisputeRecordEntity disputeRecord) {
+ DisputeRecordVO disputeRecordVO = Objects.requireNonNull(BeanUtil.copy(disputeRecord, DisputeRecordVO.class));
+
+ //User createUser = UserCache.getUser(disputeRecord.getCreateUser());
+ //User updateUser = UserCache.getUser(disputeRecord.getUpdateUser());
+ //disputeRecordVO.setCreateUserName(createUser.getName());
+ //disputeRecordVO.setUpdateUserName(updateUser.getName());
+
+ return disputeRecordVO;
+ }
+
+
+}
--
Gitblit v1.9.3