From c3a5a9ae94e5604160f0ba4ac6148934db84f26b Mon Sep 17 00:00:00 2001
From: manailin <261030956@qq.com>
Date: 星期日, 27 六月 2021 15:58:50 +0800
Subject: [PATCH] [新增]走访任务向市平台推送。推送市平台测环境

---
 springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/api/LcEventApi.java                                    |   94 ++
 springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/model/dto/ComMngPopulationDTO.java                     |  204 ++++++
 springcloud_k8s_panzhihuazhihuishequ/service_api/src/test/java/com/panzhihua/serviceapi/biz/impl/LcApiServiceImplTest.java                     |   28 
 springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/api/LcReturnObject.java                                         |    2 
 springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/grid/GridService.java                                   |  304 ++++++--
 springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/api/LcRequestEnum.java                                          |   24 
 springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/model/dto/LcFlowPersonVisitRecordDTO.java              |  123 +++
 springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/model/dos/EventVisitingTasksDO.java                 |    9 
 springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/api/LcApiConstants.java                                         |   98 ++
 springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/api/LcVisitRecordKeyPersonLabelEnum.java                        |   44 +
 springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/EventVisitingTasksService.java              |   52 +
 springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/grid/LcEventVisitingTasksListDTO.java                |  201 +++++
 springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/impl/EventVisitingTasksServiceImpl.java     |  220 ++++--
 springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/model/dto/LcKeyPersonVisitRecordDTO.java               |   87 ++
 springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/impl/EventResourceServiceImpl.java          |    5 
 springcloud_k8s_panzhihuazhihuishequ/timejob/src/main/java/com/panzhihua/timejob/jobhandler/LangChaoEventUploadJobHandler.java                 |   13 
 /dev/null                                                                                                                                      |   52 -
 springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/model/dto/LcKeyPersonVisitRecordQueryDTO.java          |   31 
 springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/impl/EventServiceImpl.java                  |    1 
 springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/biz/LcApiService.java                                  |  108 +++
 springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/biz/impl/LcApiServiceImpl.java                         |  240 ++++++
 springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/api/EventVisitingTasksApi.java                      |   29 
 springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/api/ApiServiceFeign.java                                |   10 
 springcloud_k8s_panzhihuazhihuishequ/service_grid/src/test/java/com/panzhihua/service_grid/service/impl/EventVisitingTasksServiceImplTest.java |   32 
 24 files changed, 1,753 insertions(+), 258 deletions(-)

diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/api/LangchaoApiConstants.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/api/LangchaoApiConstants.java
deleted file mode 100644
index 961ad1c..0000000
--- a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/api/LangchaoApiConstants.java
+++ /dev/null
@@ -1,52 +0,0 @@
-package com.panzhihua.common.api;
-
-/**
- * 攀枝花综治网格化-事件上报接口列表-测试环境接口
- * des
- * @author manailin
- * @date 2021/06/16
- */
-public class LangchaoApiConstants
-{
-
-    /**
-     * 将浪潮对接接口中所需的token存在Redis里面的KEY
-     */
-    public static final String LANG_CHAO_TOKEN ="lang_chao_token";
-    /**
-     * 获取token
-     */
-    public static final String GRID_GET_TOKEN_URL = "http://171.217.92.33:53303/aaToken?username=#username&password=#password";
-    /**
-     * 提交事件登记(自处)
-     */
-    public static final String GRID_REGIST_EVENT_URL = "http://171.217.92.33:53303/businessData/registEventInfo";
-    /**
-     * 上传附件,仅上传文件流,服务器根据文件名自行匹配
-     */
-    public static final String GRID_EVENT_FILE_UPLOAD_URL = "http://171.217.92.33:53303/businessData/upload";
-    /**
-     * 事件类型获取
-     */
-    public static final String GRID_EVENT_CATEGORY_URL = "http://171.217.92.33:53303/businessData/getEventType";
-    /**
-     * 事件查询接口
-     */
-    public static final String GRID_EVENT_INFO_URL = "http://171.217.92.33:53303/businessData/getEventListInfo";
-    /**
-     * 获取指定APP登记事件详情信息
-     */
-    public static final String GRID_EVENT_INFO_DETAIL_URL = "http://171.217.92.33:53303/businessData/getEventDetails";
-    /**
-     * 获取指定事件信息
-     */
-    public static final String GRID_APP_EVENT_INFO_DETAIL_URL = "http://171.217.92.33:53303/businessData/getAppointEventInfo";
-    /**
-     * 通过AREAID获取辖区网格树
-     */
-    public static final String GRID_GET_EVENT_INFO_AREA_ID_URL = "http://171.217.92.33:53303/area/getAreaGridTreeByAreaId";
-    /**
-     * 获取所有或者根据姓名和工号查询,分页
-     */
-    public static final String GRID_GET_GETALL_SEARCH_PAGE_URL = "http://171.217.92.33:53303/gridOperator/getAllOrSearchByPage?areaId=jhRxqEQp&limit=200&page=1";
-}
diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/api/LcApiConstants.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/api/LcApiConstants.java
new file mode 100644
index 0000000..5a092f8
--- /dev/null
+++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/api/LcApiConstants.java
@@ -0,0 +1,98 @@
+package com.panzhihua.common.api;
+
+/**
+ * 攀枝花综治网格化-事件上报接口列表-测试环境接口
+ *
+ * @author manailin
+ * @date 2021/06/16
+ */
+public class LcApiConstants
+{
+
+    /**
+     * 将浪潮对接接口中所需的固定账号名称,账号和密码登陆来获取token
+     */
+    public static final String LC_UPLOAD_NAME ="18080799023";
+    /**
+     * 将浪潮对接接口中所需的固定用户密码
+     */
+    public static final String LC_UPLOAD_PASSWORD ="123456";
+    /**
+     * 将浪潮对接接口中所需的token存在Redis里面的KEY
+     */
+    public static final String LANG_CHAO_TOKEN ="lang_chao_token";
+    /**
+     * 获取token
+     */
+    public static final String GRID_GET_TOKEN_URL = "http://171.217.92.33:53303/aaToken?username=#username&password=#password";
+    /**
+     * 提交事件登记(自处)
+     */
+    public static final String GRID_REGIST_EVENT_URL = "http://171.217.92.33:53303/businessData/registEventInfo";
+    /**
+     * 上传附件,仅上传文件流,服务器根据文件名自行匹配
+     */
+    public static final String GRID_EVENT_FILE_UPLOAD_URL = "http://171.217.92.33:53303/businessData/upload";
+    /**
+     * 事件类型获取
+     */
+    public static final String GRID_EVENT_CATEGORY_URL = "http://171.217.92.33:53303/businessData/getEventType";
+    /**
+     * 事件查询接口
+     */
+    public static final String GRID_EVENT_INFO_URL = "http://171.217.92.33:53303/businessData/getEventListInfo";
+    /**
+     * 获取指定APP登记事件详情信息
+     */
+    public static final String GRID_EVENT_INFO_DETAIL_URL = "http://171.217.92.33:53303/businessData/getEventDetails";
+    /**
+     * 获取指定事件信息
+     */
+    public static final String GRID_APP_EVENT_INFO_DETAIL_URL = "http://171.217.92.33:53303/businessData/getAppointEventInfo";
+    /**
+     * 通过AREAID获取辖区网格树
+     */
+    public static final String GRID_GET_EVENT_INFO_AREA_ID_URL = "http://171.217.92.33:53303/area/getAreaGridTreeByAreaId";
+    /**
+     * 获取所有或者根据姓名和工号查询,分页
+     */
+    public static final String GRID_GET_GETALL_SEARCH_PAGE_URL = "http://171.217.92.33:53303/gridOperator/getAllOrSearchByPage?areaId=jhRxqEQp&limit=200&page=1";
+
+    /**
+     * 下面的接口全部都是走访任务接口
+     */
+    /**
+     * 流动人口 走访记录列表
+     */
+    public static final String VISIT_RECORD_FLOW_PERSON_PAGE_URL = "http://171.217.92.33:53303/businessData/getFPVisitRecordByPageApp";
+
+
+    /**
+     * 流动人口 走访详情(民警带领下工作或者自己走访)
+     */
+    public static final String VISIT_RECORD_FLOW_PERSON_DETAIL_URL = "http://171.217.92.33:53303/businessData/getFPVisitRecordDetailByIdApp";
+
+
+    /**
+     * 流动人口 添加走访记录 (民警带领下工作或者自己走访)
+     */
+    public static final String VISIT_RECORD_FLOW_PERSON_SAVE_URL = "http://171.217.92.33:53303/businessData/saveFpVisitRecordAppDock";
+
+
+    /**
+     * 重点人员 日常管理 走访记录列表
+     */
+    public static final String VISIT_RECORD_KEY_PERSON_PAGE_URL = "http://171.217.92.33:53303/businessData/getKeyPersonVisitRecordByPageApp";
+
+
+    /**
+     * 重点人员 日常管理 走访详情
+     */
+    public static final String VISIT_RECORD_KEY_PERSON_DETAIL_URL = "http://171.217.92.33:53303/businessData/getKeyPersonVisitRecordDetailByIdApp";
+
+
+    /**
+     *重点人员 日常管理 添加走访记录
+     */
+    public static final String VISIT_RECORD_KEY_PERSON_SAVE_REMOTE_URL = "http://171.217.92.33:53303/businessData/saveKeyPersonVisitRecordAppDock";
+}
diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/api/LcRequestEnum.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/api/LcRequestEnum.java
new file mode 100644
index 0000000..fd069bc
--- /dev/null
+++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/api/LcRequestEnum.java
@@ -0,0 +1,24 @@
+package com.panzhihua.common.api;
+
+import lombok.Getter;
+
+/**
+ * 浪潮接口请求返回结果对象
+ * @author manailin
+ * @date 2021/06/20
+ */
+@Getter
+public enum LcRequestEnum {
+    FALSE("0", "失败"),
+    SUCCESS("200", "成功");
+
+    private final String code;
+    private final String result;
+
+    LcRequestEnum(String code, String result) {
+        this.code = code;
+        this.result = result;
+    }
+
+
+}
diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/api/LcReturnObject.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/api/LcReturnObject.java
index 0b1dc87..f598877 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/api/LcReturnObject.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/api/LcReturnObject.java
@@ -3,7 +3,7 @@
 import lombok.Data;
 /**
  * 攀枝花综治网格化-事件接口请求返回的对象
- * des
+ *
  * @author manailin
  * @date 2021/06/20
  */
diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/api/LcVisitRecordKeyPersonLabelEnum.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/api/LcVisitRecordKeyPersonLabelEnum.java
new file mode 100644
index 0000000..bef01ed
--- /dev/null
+++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/api/LcVisitRecordKeyPersonLabelEnum.java
@@ -0,0 +1,44 @@
+package com.panzhihua.common.api;
+
+import lombok.Getter;
+
+/**
+ * 攀枝花综治网格化
+ * 浪潮重点人员走访接口,人员类型
+ * @author manailin
+ * @date 2021/06/20
+ */
+@Getter
+public enum LcVisitRecordKeyPersonLabelEnum {
+    XD(1, "p01_drug"),
+    JS(2, "p01_trouble_schiz"),
+    XM(3, "p01_release"),
+    SJ(4, "p01_be_corrected");
+
+    private final Integer code;
+    private final String name;
+
+    LcVisitRecordKeyPersonLabelEnum(Integer code, String name) {
+        this.code = code;
+        this.name = name;
+    }
+
+    public static int getCodeByName(String name) {
+        for (LcVisitRecordKeyPersonLabelEnum item : LcVisitRecordKeyPersonLabelEnum.values()) {
+            if (item.name.equals(name)) {
+                return item.getCode();
+            }
+        }
+        return -1;
+    }
+
+    public static String getCnDescByName(Integer code) {
+        for (LcVisitRecordKeyPersonLabelEnum item : LcVisitRecordKeyPersonLabelEnum.values()) {
+            if (item.code.equals(code)) {
+                return item.getName();
+            }
+        }
+        return "其他";
+    }
+
+}
diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/grid/LcEventVisitingTasksListDTO.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/grid/LcEventVisitingTasksListDTO.java
new file mode 100644
index 0000000..51de99e
--- /dev/null
+++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/grid/LcEventVisitingTasksListDTO.java
@@ -0,0 +1,201 @@
+package com.panzhihua.common.model.dtos.grid;
+
+
+import com.panzhihua.common.model.vos.grid.EventResourceVO;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+import java.util.List;
+
+
+/**
+ * 浪潮上传走访内容对象
+ *
+ * @author manailin
+ * @version 1.0
+ * @date 2021-06-24
+ * @since 1.0
+ */
+@Data
+public class LcEventVisitingTasksListDTO {
+
+
+    /**
+     * id   列: id
+     */
+    private Long id;
+    /**
+     * 网格员所处的街道   列: grid_member_street
+     */
+    private Long gridMemberStreet;
+    /**
+     * 网格员所处社区   列: grid_member_community
+     */
+    private Long gridMemberCommunity;
+    /**
+     * 网格员   列: grid_member
+     */
+    private Long gridMember;
+    /**
+     * 网格员名字   列: grid_member_name
+     */
+    private String gridMemberName;
+    /**
+     * 网格员联系方式   列: grid_menber_tele
+     */
+    private String gridMenberTele;
+    /**
+     * 需走访人ID   列: visiter_id
+     */
+    private Long visiterId;
+    /**
+     * 需走访人名字   列: visiter_name
+     */
+    private String visiterName;
+    /**
+     * 需走访人员性别   列: visiter_sex
+     */
+    private Integer visiterSex;
+    /**
+     * 需走访人电话   列: visiter_tele
+     */
+    private String visiterTele;
+    /**
+     * 需走访人居住地址   列: visiter_address
+     */
+    private String visiterAddress;
+    /**
+     * 人员类型1吸毒2严重精神障碍3刑释人员4社区矫正人员   列: visiter_type
+     */
+    private Integer visiterType;
+    /**
+     * 事件标题   列: event_title
+     */
+    private String eventTitle;
+    /**
+     * 事件类型   列: event_type
+     */
+    private Integer eventType;
+    /**
+     * 事件描述   列: event_des
+     */
+    private String eventDes;
+    /**
+     * 社区处理(0是无需社区1是社区处理)   列: act_opara
+     */
+    private Integer actOpara;
+    /**
+     * 发生时间   列: happen_time
+     */
+    private Date happenTime;
+    /**
+     * 发生地点   列: happent_address
+     */
+    private String happentAddress;
+    /**
+     * 发生的精度纬度信息(逗号隔开)   列: happent_lat_lng
+     */
+    private String happentLatLng;
+    /**
+     * 事件状态(1待处理2自己已解决3待验证4草稿箱5已撤销6异常)   列: event_status
+     */
+    private Integer eventStatus;
+    /**
+     * 上报状态   列: reporting
+     */
+    private Integer reporting;
+    /**
+     * 当前处理对象类型(1、网格员2、社区3、是街道)   列: dell_type
+     */
+    private Integer dellType;
+    /**
+     * 处理人ID   列: dell_user_id
+     */
+    private Long dellUserId;
+    /**
+     * 处理人名称   列: dell_user_name
+     */
+    private String dellUserName;
+    /**
+     * 处理时间   列: dell_date
+     */
+    private Date dellDate;
+    /**
+     * 解决人针对解决事件的处理描述   列: dell_desc
+     */
+    private String dellDesc;
+    /**
+     * 是否有效   列: invalid
+     */
+    private Boolean invalid;
+    /**
+     * 是否紧急   列: urgent
+     */
+    private Boolean urgent;
+    /**
+     * 是否催办   列: urgent_dell
+     */
+    private Boolean urgentDell;
+    /**
+     * 上报提交时间   列: submit_date
+     */
+    private Date submitDate;
+    /**
+     * 是否异常行为   列: exception
+     */
+    private Integer exception;
+    /**
+     * 走访内容根据重点人员类型输入项不同,录入全部的表单内容数据   列: table_content_json
+     */
+    private String tableContentJson;
+    /**
+     * 创建人   列: create_by
+     */
+    private Long createBy;
+    /**
+     * 创建事件   列: create_at
+     */
+    /**
+     * 创建人   列: create_by
+     */
+    private Long gridId;
+
+    private Date createAt;
+    /**
+     * 修改人   列: update_by
+     */
+    private Long updateBy;
+    /**
+     * 修改时间   列: update_at
+     */
+    private Date updateAt;
+
+    /**
+     * 地址备注
+     */
+    private String addressRemark;
+    /**
+     * 家庭联系电话
+     */
+    private String familyPhone;
+
+    /**
+     * 家庭来源
+     */
+    private String familySource;
+    /**
+     * 是否已经上传浪潮服务器市平台
+     */
+    private Boolean lcUpload;
+
+    @ApiModelProperty(value = "音频")
+    private List<EventResourceVO> audios;
+
+    @ApiModelProperty(value = "视频")
+    private List<EventResourceVO> videos;
+
+    @ApiModelProperty(value = "图片")
+    private List<EventResourceVO> pics;
+}
diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/api/ApiServiceFeign.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/api/ApiServiceFeign.java
index 5efe555..42512cf 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/api/ApiServiceFeign.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/api/ApiServiceFeign.java
@@ -59,4 +59,14 @@
     @ApiOperation(value = "提交事件登记关联的文件或者图片信息")
     @PostMapping("lc/event/upload/event_and_file")
     void automationUploadEventAndFile();
+
+    /**
+     * description 自动上传重点人员和流动人员走访记录
+     *
+     * @author manailin
+     * @date 2021/6/10 17:00
+     */
+    @ApiOperation(value = "自动上传重点人员和流动人员走访记录")
+    @GetMapping("lc/auto/upload/visit_record")
+    void automationUploadVisitRecord();
 }
diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/grid/GridService.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/grid/GridService.java
index ed1d03c..a0311f2 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/grid/GridService.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/grid/GridService.java
@@ -4,7 +4,7 @@
 import com.panzhihua.common.model.dtos.grid.*;
 import com.panzhihua.common.model.query.visit.EventTasksQuery;
 import com.panzhihua.common.model.query.visit.EventVisitListQuery;
-import com.panzhihua.common.model.vos.*;
+import com.panzhihua.common.model.vos.R;
 import com.panzhihua.common.model.vos.grid.*;
 import com.panzhihua.common.model.vos.visit.EventVisitCompleteDTO;
 import com.panzhihua.common.model.vos.visit.EventVisitingTasksVO;
@@ -14,18 +14,18 @@
 import java.util.List;
 
 /**
- *
  * @author cedoo email:cedoo(a)qq.com
  * @version 1.0
- * @since 1.0
  * @date 2021-05-26
- * */
+ * @since 1.0
+ */
 @FeignClient(name = "grid")
 public interface GridService {
 
 
     /**
      * 分页查找事件
+     *
      * @param pageEventDTO
      * @return 维护结果
      */
@@ -34,6 +34,7 @@
 
     /**
      * 删除事件
+     *
      * @param CommonEventDeleteDTO
      * @return 平台用户信息
      */
@@ -42,6 +43,7 @@
 
     /**
      * 查询事件详细信息
+     *
      * @param id 事件 id
      * @return 查找结果
      */
@@ -50,6 +52,7 @@
 
     /**
      * 新增网格和网格员的关联关系
+     *
      * @param eventGridMemberAddDTO
      * @return 新增结果
      */
@@ -58,6 +61,7 @@
 
     /**
      * 修改网格和网格员的关联关系
+     *
      * @param eventGridMemberEditDTO
      * @return 维护结果
      */
@@ -66,6 +70,7 @@
 
     /**
      * 分页查找网格和网格员的关联关系
+     *
      * @param pageEventGridMemberRelationDTO
      * @return 维护结果
      */
@@ -74,6 +79,7 @@
 
     /**
      * 删除网格和网格员的关联关系
+     *
      * @param eventGridMemberRelationDeleteDTO
      * @return 平台用户信息
      */
@@ -82,15 +88,17 @@
 
     /**
      * 查询网格和网格员的关联关系详细信息
+     *
      * @param id 网格和网格员的关联关系 id
      * @return 查找结果
      */
     @PostMapping("/eventgridmemberrelation/{id}")
     R<EventGridMemberRelationDetailsVO> eventGridMemberRelationDetails(@PathVariable("id") Long id);
-	
-	
+
+
     /**
      * 新增网格员定时上报地理预警记录
+     *
      * @param eventGridMemberWarnLogAddDTO
      * @return 新增结果
      */
@@ -99,6 +107,7 @@
 
     /**
      * 修改网格员定时上报地理预警记录
+     *
      * @param eventGridMemberWarnLogEditDTO
      * @return 维护结果
      */
@@ -107,6 +116,7 @@
 
     /**
      * 分页查找网格员定时上报地理预警记录
+     *
      * @param pageEventGridMemberWarnLogDTO
      * @return 维护结果
      */
@@ -115,6 +125,7 @@
 
     /**
      * 删除网格员定时上报地理预警记录
+     *
      * @param eventGridMemberWarnLogDeleteDTO
      * @return 平台用户信息
      */
@@ -123,15 +134,17 @@
 
     /**
      * 查询网格员定时上报地理预警记录详细信息
+     *
      * @param id 网格员定时上报地理预警记录 id
      * @return 查找结果
      */
     @PostMapping("/eventgridmemberwarnlog/{id}")
     R<EventGridMemberWarnLogDetailsVO> eventGridMemberWarnLogDetails(@PathVariable("id") Long id);
-	
-	
+
+
     /**
      * 新增重点人群记录
+     *
      * @param eventMainMemberAddDTO
      * @return 新增结果
      */
@@ -140,6 +153,7 @@
 
     /**
      * 修改重点人群记录
+     *
      * @param eventMainMemberEditDTO
      * @return 维护结果
      */
@@ -148,6 +162,7 @@
 
     /**
      * 分页查找重点人群记录
+     *
      * @param pageEventMainMemberDTO
      * @return 维护结果
      */
@@ -156,6 +171,7 @@
 
     /**
      * 删除重点人群记录
+     *
      * @param eventMainMemberDeleteDTO
      * @return 平台用户信息
      */
@@ -164,6 +180,7 @@
 
     /**
      * 查询重点人群记录详细信息
+     *
      * @param id 重点人群记录 id
      * @return 查找结果
      */
@@ -173,6 +190,7 @@
 
     /**
      * 新增事件或者走访中关联的图片音频和视频文件
+     *
      * @param eventResourceAddDTO
      * @return 新增结果
      */
@@ -181,6 +199,7 @@
 
     /**
      * 修改事件或者走访中关联的图片音频和视频文件
+     *
      * @param eventResourceEditDTO
      * @return 维护结果
      */
@@ -189,6 +208,7 @@
 
     /**
      * 分页查找事件或者走访中关联的图片音频和视频文件
+     *
      * @param pageEventResourceDTO
      * @return 维护结果
      */
@@ -197,6 +217,7 @@
 
     /**
      * 删除事件或者走访中关联的图片音频和视频文件
+     *
      * @param eventResourceDeleteDTO
      * @return 平台用户信息
      */
@@ -205,15 +226,17 @@
 
     /**
      * 查询事件或者走访中关联的图片音频和视频文件详细信息
+     *
      * @param id 事件或者走访中关联的图片音频和视频文件 id
      * @return 查找结果
      */
     @PostMapping("/eventresource/{id}")
     R<EventResourceDetailsVO> eventResourceDetails(@PathVariable("id") Long id);
-	
-	
+
+
     /**
      * 新增事件处理流转记录
+     *
      * @param eventTransferRecordAddDTO
      * @return 新增结果
      */
@@ -222,6 +245,7 @@
 
     /**
      * 修改事件处理流转记录
+     *
      * @param eventTransferRecordEditDTO
      * @return 维护结果
      */
@@ -230,6 +254,7 @@
 
     /**
      * 分页查找事件处理流转记录
+     *
      * @param pageEventTransferRecordDTO
      * @return 维护结果
      */
@@ -238,6 +263,7 @@
 
     /**
      * 删除事件处理流转记录
+     *
      * @param eventTransferRecordDeleteDTO
      * @return 平台用户信息
      */
@@ -246,15 +272,17 @@
 
     /**
      * 查询事件处理流转记录详细信息
+     *
      * @param id 事件处理流转记录 id
      * @return 查找结果
      */
     @PostMapping("/eventtransferrecord/{id}")
     R<EventTransferRecordDetailsVO> eventTransferRecordDetails(@PathVariable("id") Long id);
-	
-	
+
+
     /**
      * 新增重点人群走访记录
+     *
      * @param eventVisitingTasksAddDTO
      * @return 新增结果
      */
@@ -263,6 +291,7 @@
 
     /**
      * 修改重点人群走访记录
+     *
      * @param eventVisitingTasksEditDTO
      * @return 维护结果
      */
@@ -271,6 +300,7 @@
 
     /**
      * 分页查找重点人群走访记录
+     *
      * @param pageEventVisitingTasksDTO
      * @return 维护结果
      */
@@ -279,6 +309,7 @@
 
     /**
      * 删除重点人群走访记录
+     *
      * @param eventVisitingTasksDeleteDTO
      * @return 平台用户信息
      */
@@ -287,6 +318,7 @@
 
     /**
      * 查询重点人群走访记录详细信息
+     *
      * @param id 重点人群走访记录 id
      * @return 查找结果
      */
@@ -295,6 +327,7 @@
 
     /**
      * 新增APP应用版本信息
+     *
      * @param eventApplicationAppReleaseAddDTO
      * @return 新增结果
      */
@@ -303,6 +336,7 @@
 
     /**
      * 修改APP应用版本信息
+     *
      * @param eventApplicationAppReleaseEditDTO
      * @return 维护结果
      */
@@ -311,6 +345,7 @@
 
     /**
      * 分页查找APP应用版本信息
+     *
      * @param pageEventApplicationAppReleaseDTO
      * @return 维护结果
      */
@@ -319,6 +354,7 @@
 
     /**
      * 删除APP应用版本信息
+     *
      * @param eventApplicationAppReleaseDeleteDTO
      * @return 平台用户信息
      */
@@ -327,6 +363,7 @@
 
     /**
      * 查询APP应用版本信息详细信息
+     *
      * @param id APP应用版本信息 id
      * @return 查找结果
      */
@@ -335,6 +372,7 @@
 
     /**
      * 新增用户协议和隐私政策信息
+     *
      * @param eventApplicationUserNoticeAddDTO
      * @return 新增结果
      */
@@ -343,6 +381,7 @@
 
     /**
      * 修改用户协议和隐私政策信息
+     *
      * @param eventApplicationUserNoticeEditDTO
      * @return 维护结果
      */
@@ -351,6 +390,7 @@
 
     /**
      * 分页查找用户协议和隐私政策信息
+     *
      * @param pageEventApplicationUserNoticeDTO
      * @return 维护结果
      */
@@ -359,6 +399,7 @@
 
     /**
      * 删除用户协议和隐私政策信息
+     *
      * @param eventApplicationUserNoticeDeleteDTO
      * @return 平台用户信息
      */
@@ -367,6 +408,7 @@
 
     /**
      * 查询用户协议和隐私政策信息详细信息
+     *
      * @param id 用户协议和隐私政策信息 id
      * @return 查找结果
      */
@@ -375,6 +417,7 @@
 
     /**
      * 新增区县/街道/社区/网格员网格数据管理
+     *
      * @param eventGridDataAddDTO
      * @return 新增结果
      */
@@ -383,6 +426,7 @@
 
     /**
      * 修改区县/街道/社区/网格员网格数据管理
+     *
      * @param eventGridDataEditDTO
      * @return 维护结果
      */
@@ -391,6 +435,7 @@
 
     /**
      * 分页查找区县/街道/社区/网格员网格数据管理
+     *
      * @param pageEventGridDataDTO
      * @return 维护结果
      */
@@ -399,6 +444,7 @@
 
     /**
      * 删除区县/街道/社区/网格员网格数据管理
+     *
      * @param eventGridDataDeleteDTO
      * @return 平台用户信息
      */
@@ -407,6 +453,7 @@
 
     /**
      * 查询区县/街道/社区/网格员网格数据管理详细信息
+     *
      * @param id 区县/街道/社区/网格员网格数据管理 id
      * @return 查找结果
      */
@@ -415,6 +462,7 @@
 
     /**
      * 新增网格员定时上报地理信息
+     *
      * @param eventGridMemberGpsLogAddDTO
      * @return 新增结果
      */
@@ -423,6 +471,7 @@
 
     /**
      * 修改网格员定时上报地理信息
+     *
      * @param eventGridMemberGpsLogEditDTO
      * @return 维护结果
      */
@@ -431,6 +480,7 @@
 
     /**
      * 分页查找网格员定时上报地理信息
+     *
      * @param pageEventGridMemberGpsLogDTO
      * @return 维护结果
      */
@@ -439,6 +489,7 @@
 
     /**
      * 删除网格员定时上报地理信息
+     *
      * @param eventGridMemberGpsLogDeleteDTO
      * @return 平台用户信息
      */
@@ -447,6 +498,7 @@
 
     /**
      * 查询网格员定时上报地理信息详细信息
+     *
      * @param id 网格员定时上报地理信息 id
      * @return 查找结果
      */
@@ -455,6 +507,7 @@
 
     /**
      * 添加事件
+     *
      * @param commonEventAddDTO
      * @return
      */
@@ -463,6 +516,7 @@
 
     /**
      * 保存事件草稿
+     *
      * @param commonEventEditDTO
      * @return
      */
@@ -471,6 +525,7 @@
 
     /**
      * 突发事件上报社区
+     *
      * @param commonEventReportDTO
      * @return
      */
@@ -479,6 +534,7 @@
 
     /**
      * 突发事件撤销
+     *
      * @param eventRevokeDTO
      * @return
      */
@@ -487,6 +543,7 @@
 
     /**
      * 处理事件
+     *
      * @param commonEventDealDTO
      * @return
      */
@@ -495,6 +552,7 @@
 
     /**
      * 处理事件
+     *
      * @param commonEventVerifyDTO
      * @return
      */
@@ -503,6 +561,7 @@
 
     /**
      * 处理事件
+     *
      * @param commonEventRepublishDTO
      * @return
      */
@@ -511,6 +570,7 @@
 
     /**
      * 网格数据待处理统计信息
+     *
      * @param eventGridStatisticsDataDTO
      * @return
      */
@@ -519,6 +579,7 @@
 
     /**
      * 查询用户网格
+     *
      * @param pageEventGridDataDTO
      * @return
      */
@@ -527,6 +588,7 @@
 
     /**
      * 特殊人员信息上报
+     *
      * @param specialEventAddDTO
      * @return
      */
@@ -535,6 +597,7 @@
 
     /**
      * 获取指定特殊人员信息
+     *
      * @param idCard
      * @return
      */
@@ -543,6 +606,7 @@
 
     /**
      * 保存殊人群事件上报草稿
+     *
      * @param specialEventEditDTO
      * @return
      */
@@ -551,6 +615,7 @@
 
     /**
      * 草稿发布
+     *
      * @param commonEventPublicDTO
      * @return
      */
@@ -559,79 +624,89 @@
 
     /**
      * 查询随手拍列表
-     * @param easyAppDTO    请求参数
-     * @return  随手拍列表
+     *
+     * @param easyAppDTO 请求参数
+     * @return 随手拍列表
      */
     @PostMapping("/easy/list")
     R easyList(@RequestBody PageEasyAppDTO easyAppDTO);
 
     /**
      * 查询随手拍详情
-     * @param easyId    随手拍id
-     * @return  随手拍详情
+     *
+     * @param easyId 随手拍id
+     * @return 随手拍详情
      */
     @PostMapping("/easy/detail")
     R easyDetailByApp(@RequestParam("easyId") Long easyId);
 
     /**
      * 查询随手拍类型列表
-     * @return  类型列表
+     *
+     * @return 类型列表
      */
     @PostMapping("/easy/type/list")
     R easyTypeListByApp();
 
     /**
      * 随手拍处理
-     * @param photoHandleDTO    请求参数
-     * @return  处理结果
+     *
+     * @param photoHandleDTO 请求参数
+     * @return 处理结果
      */
     @PostMapping("/easy/handle")
     R easyHandle(@RequestBody ComActEasyPhotoHandleDTO photoHandleDTO);
 
     /**
      * 随手拍公示状态切换
-     * @param photoHandleDTO    请求参数
-     * @return  切换结果
+     *
+     * @param photoHandleDTO 请求参数
+     * @return 切换结果
      */
     @PostMapping("/easy/publicity")
     R easyPublicity(@RequestBody ComActEasyPhotoHandleDTO photoHandleDTO);
 
     /**
      * 随手拍上报社区
-     * @param photoHandleDTO    请求参数
-     * @return  上报结果
+     *
+     * @param photoHandleDTO 请求参数
+     * @return 上报结果
      */
     @PostMapping("/easy/report")
     R easyReport(@RequestBody ComActEasyPhotoHandleDTO photoHandleDTO);
 
     /**
      * 添加发布宣传教育事件
-     * @param publicityEventAddDTO   请求参数
-     * @return  添加发布结果
+     *
+     * @param publicityEventAddDTO 请求参数
+     * @return 添加发布结果
      */
     @PostMapping("/event/addPublicity")
     R addPublicity(@RequestBody PublicityEventAddDTO publicityEventAddDTO);
 
     /**
      * 保存宣传教育事件草稿
-     * @param publicityEventEditDTO   请求参数
-     * @return  保存结果
+     *
+     * @param publicityEventEditDTO 请求参数
+     * @return 保存结果
      */
     @PostMapping("/event/savePublicityDraft")
     R savePublicityDraft(@RequestBody PublicityEventEditDTO publicityEventEditDTO);
 
     /**
      * 分页查询宣传教育事件
-     * @param pagePublicityEventDTO   请求参数
-     * @return  结果
+     *
+     * @param pagePublicityEventDTO 请求参数
+     * @return 结果
      */
     @PostMapping("/event/queryPublicity")
     R queryPublicity(@RequestBody PagePublicityEventDTO pagePublicityEventDTO);
 
     /**
      * 分页查询宣传教育事件
-     * @param pagePublicityEventDTO   请求参数
-     * @return  结果
+     *
+     * @param pagePublicityEventDTO 请求参数
+     * @return 结果
      */
     @PostMapping("/event/queryPublicityCommunity")
     R queryPublicityCommunity(@RequestBody PagePublicityEventCommunityDTO pagePublicityEventDTO);
@@ -639,44 +714,50 @@
 
     /**
      * 分页查询社区列表
-     * @return  结果
+     *
+     * @return 结果
      */
     @PostMapping("/event/actList")
     R actList();
 
     /**
      * 地图模块-根据网格id查询网格详细信息
-     * @param gridId    网格id
-     * @return  网格详细信息
+     *
+     * @param gridId 网格id
+     * @return 网格详细信息
      */
     @PostMapping("/map/getGridDetail")
     R getGridDetail(@RequestParam("gridId") Long gridId);
 
     /**
      * 地图模块-根据网格员id查询今日运动轨迹
-     * @param userId    网格员id
-     * @return  运动轨迹
+     *
+     * @param userId 网格员id
+     * @return 运动轨迹
      */
     @PostMapping("/map/getTrajectoryByApp")
     R getTrajectoryByApp(@RequestParam("userId") Long userId);
 
     /**
      * 地图模块-根据网格员id查询关联网格列表
-     * @param userId    网格员id
-     * @return  网格列表
+     *
+     * @param userId 网格员id
+     * @return 网格列表
      */
     @PostMapping("/map/getMapGridListByApp")
     R getMapGridListByApp(@RequestParam("userId") Long userId);
 
     /**
      * 获取最新版本信息
-     * @return  版本信息
+     *
+     * @return 版本信息
      */
     @GetMapping("/eventapplicationapprelease/edition")
     R editionUpdate();
 
     /**
      * 首页待处理
+     *
      * @param eventGridTodoDataDTO
      * @return
      */
@@ -685,38 +766,43 @@
 
     /**
      * 后台获取网格员运动轨迹
+     *
      * @param workTrajectoryDTO 请求参数
-     * @return  运动轨迹
+     * @return 运动轨迹
      */
     @PostMapping("/map/gridMemberWorkTrajectory")
     R gridMemberWorkTrajectory(@RequestBody EventGridMemberWorkTrajectoryDTO workTrajectoryDTO);
 
     /**
      * 后台获取网格员预警记录
+     *
      * @param gridMemberWainDTO 请求参数
-     * @return  预警记录
+     * @return 预警记录
      */
     @PostMapping("/map/gridMemberWorkWarning")
     R gridMemberWorkWarning(@RequestBody EventGridMemberWainDTO gridMemberWainDTO);
 
     /**
      * 分页查询网格
-     * @param eventGridDataDTO  请求参数
-     * @return  网格列表
+     *
+     * @param eventGridDataDTO 请求参数
+     * @return 网格列表
      */
     @PostMapping("/eventgriddata/data/list")
     R getGridDataList(@RequestBody PageEventGridDataAdminDTO eventGridDataDTO);
 
     /**
      * 查询社区下所有网格员
-     * @param communityId   社区id
-     * @return  网格员列表
+     *
+     * @param communityId 社区id
+     * @return 网格员列表
      */
     @PostMapping("/eventgriddata/member/list")
     R getGridMemberLists(@RequestParam("communityId") Long communityId);
 
     /**
      * 查询管理事件
+     *
      * @param pageEventManageDTO
      * @return
      */
@@ -725,6 +811,7 @@
 
     /**
      * 社区网格后台标记事件无效
+     *
      * @param eventRevokeDTO
      * @return
      */
@@ -733,6 +820,7 @@
 
     /**
      * 社区网格后台重新发布已标记无效的事件
+     *
      * @param commonEventRepublishDTO
      * @return
      */
@@ -741,54 +829,61 @@
 
     /**
      * 后台新增网格
-     * @param eventGridDataDTO  请求参数
-     * @return  新增结果
+     *
+     * @param eventGridDataDTO 请求参数
+     * @return 新增结果
      */
     @PostMapping("/eventgriddata/data/add")
     R addGridDataByAdmin(@RequestBody EventGridDataAddAdminDTO eventGridDataDTO);
 
     /**
      * 后台修改网格
-     * @param eventGridDataDTO  请求参数
-     * @return  修改结果
+     *
+     * @param eventGridDataDTO 请求参数
+     * @return 修改结果
      */
     @PostMapping("/eventgriddata/data/edit")
     R editGridDataByAdmin(@RequestBody EventGridDataEditAdminDTO eventGridDataDTO);
 
     /**
      * 后台管理-分页查询随手拍列表
-     * @param easyAppDTO    请求参数
-     * @return  随手拍列表
+     *
+     * @param easyAppDTO 请求参数
+     * @return 随手拍列表
      */
     @PostMapping("/easy/admin/list")
     R easyListByAdmin(@RequestBody PageEasyAdminDTO easyAppDTO);
 
     /**
      * 后台管理-随手拍详情
-     * @param easyId    随手拍id
-     * @return  随手拍详情
+     *
+     * @param easyId 随手拍id
+     * @return 随手拍详情
      */
     @PostMapping("/easy/admin/detail")
     R easyDetailByAdmin(@RequestParam("easyId") Long easyId);
 
     /**
      * 后台管理-随手拍处理
-     * @param photoHandleDTO    请求参数
-     * @return  处理结果
+     *
+     * @param photoHandleDTO 请求参数
+     * @return 处理结果
      */
     @PostMapping("/easy/admin/handle")
     R easyHandleByAdmin(@RequestBody ComActEasyPhotoHandleDTO photoHandleDTO);
 
     /**
      * 后台管理-批量修改随手拍公示状态/删除随手拍
-     * @param photoHandleDTO    请求参数
-     * @return  修改/删除结果
+     *
+     * @param photoHandleDTO 请求参数
+     * @return 修改/删除结果
      */
     @PostMapping("/easy/admin/publicity")
     R easyPublicityByAdmin(@RequestBody ComActEasyPhotoEditAdminDTO photoHandleDTO);
 
     /**
      * 查询网格下所有网格员
+     *
      * @param gridId
      * @return
      */
@@ -797,6 +892,7 @@
 
     /**
      * 查询网格下所有网格员
+     *
      * @param communityId
      * @return
      */
@@ -805,30 +901,34 @@
 
     /**
      * 后台管理-统计模块
-     * @param communityId   社区id
-     * @return  统计信息
+     *
+     * @param communityId 社区id
+     * @return 统计信息
      */
     @GetMapping("/statistics/admin/eventStatistics")
     R eventStatistics(@RequestParam("communityId") Long communityId);
 
     /**
      * 后台管理-删除网格
-     * @param Ids   网格id集合
-     * @return  删除结果
+     *
+     * @param Ids 网格id集合
+     * @return 删除结果
      */
     @PostMapping("/eventgriddata/data/delete")
     R deleteGridData(@RequestBody List<Long> Ids);
 
     /**
      * 后台管理-网格员统计
-     * @param statisticsAdminDTO    请求参数
-     * @return  网格员统计信息
+     *
+     * @param statisticsAdminDTO 请求参数
+     * @return 网格员统计信息
      */
     @PostMapping("/statistics/admin/gridMemberStatistics")
     R gridMemberStatistics(@RequestBody MemberStatisticsAdminDTO statisticsAdminDTO);
 
     /**
      * 批量删除
+     *
      * @param eventDeleteDTO
      * @return
      */
@@ -837,6 +937,7 @@
 
     /**
      * 批量发布事件
+     *
      * @param commonEventBatchRepublishDTO
      * @return
      */
@@ -845,6 +946,7 @@
 
     /**
      * 批量事件标为无效
+     *
      * @param eventBatchRevokeDTO
      * @return
      */
@@ -853,6 +955,7 @@
 
     /**
      * 批量事件标为无效
+     *
      * @param pageEventGridNearbyDTO
      * @return
      */
@@ -861,30 +964,34 @@
 
     /**
      * 根据网格id查询网格统计数据
-     * @param gridId    网格id
-     * @return  网格统计数据
+     *
+     * @param gridId 网格id
+     * @return 网格统计数据
      */
     @PostMapping("/statistics/getGridEventStatistics")
     R getGridEventStatisticsByApp(@RequestParam("gridId") Long gridId);
 
     /**
      * 查询网格事件统计数据
+     *
      * @param statisticsDTO 请求参数
-     * @return  网格事件统计数据
+     * @return 网格事件统计数据
      */
     @PostMapping("/statistics/event/getGridEventStatistics")
     R getGridEventDetailStatisticsByApp(@RequestBody GridEventStatisticsDTO statisticsDTO);
 
     /**
      * 网格员上报地理位置
+     *
      * @param memberPositionDTO 请求参数
-     * @return  上报结果
+     * @return 上报结果
      */
     @PostMapping("/eventgridmembergpslog/add")
     R gridReportPosition(@RequestBody GridMemberPositionDTO memberPositionDTO);
 
     /**
      * 直接上报社区
+     *
      * @param commonEventDirectReportDTO
      * @return
      */
@@ -893,23 +1000,26 @@
 
     /**
      * 定时任务扫描网格员工作状态
-     * @return  定时任务扫描结果
+     *
+     * @return 定时任务扫描结果
      */
     @PostMapping("/eventgridmemberwarnlog/judge")
     R timedTaskGridMember();
 
     /**
      * 事件大屏查询事件列表
-     * @param eventListDTO  请求参数
-     * @return  事件列表
+     *
+     * @param eventListDTO 请求参数
+     * @return 事件列表
      */
     @PostMapping("/screen/event/list")
     R getScreenEventList(@RequestBody ScreenEventListDTO eventListDTO);
 
     /**
      * 特殊人群上报-社区人口数据列表
-     * @param specialPopulationDTO   请求参数
-     * @return  社区人口数据列表
+     *
+     * @param specialPopulationDTO 请求参数
+     * @return 社区人口数据列表
      */
     @PostMapping("/event/special/population/list")
     R specialPopulationList(@RequestBody PageEventSpecialPopulationDTO specialPopulationDTO);
@@ -917,23 +1027,25 @@
     /**
      * description 根据本地网格ID,查询对于的浪潮市平台对应的ID
      *
-     * @param  id 本地网格ID
+     * @param id 本地网格ID
      * @return String 浪潮市平台对应的ID
      * @author manailin
      * @date 2021/6/10 17:00
      */
     @GetMapping("/lc_compare/{id}")
     String getLcGridIdByLocal(@PathVariable("id") Long id);
+
     /**
      * description 根据本地网格ID,查询对于的浪潮市平台对应的ID
      *
-     * @param  localUserId 本地网格员ID
+     * @param localUserId 本地网格员ID
      * @return String 浪潮市平台对应的ID
      * @author manailin
      * @date 2021/6/10 17:00
      */
     @GetMapping("/lc_compare/getLcUserId")
     String getLcUserIdByLocalUserId(@RequestParam("localUserId") String localUserId);
+
     /**
      * description 获取所有未上传到浪潮平台的事件列表
      *
@@ -943,19 +1055,43 @@
      */
     @GetMapping("/event/getUnUploadEvent")
     List<EventDetailsVO> getUnUploadEvent();
+
     /**
      * description 更新上传是否成功标识
+     *
      * @param id 事件主键ID
      * @return Boolean 上传是否成功
      * @author manailin
      * @date 2021/6/10 17:00
      */
     @GetMapping("/event/updateLcUploadFlag")
-    Boolean updateLcUploadFlag(@RequestParam("id")Long id);
+    Boolean updateLcUploadFlag(@RequestParam("id") Long id);
 
 
     /**
-     *  后台统计走访任务
+     * description 获取所有未上传到浪潮平台的走访事件列表
+     *
+     * @return String 事件列表
+     * @author manailin
+     * @date 2021/6/10 17:00
+     */
+    @GetMapping("/eventvisitingtasks/getUnUploadVisitingTask")
+    List<LcEventVisitingTasksListDTO> getUnUploadVisitingTask();
+
+    /**
+     * description 更新走访任务上传是否成功标识
+     *
+     * @param id 事件主键ID
+     * @return Boolean 上传是否成功
+     * @author manailin
+     * @date 2021/6/10 17:00
+     */
+    @PostMapping("/eventvisitingtasks/updateLcUploadFlagVisitingTask")
+    Boolean updateLcUploadFlagVisitingTask(@RequestParam("id") Long id);
+
+    /**
+     * 后台统计走访任务
+     *
      * @param communityId
      * @return
      */
@@ -964,6 +1100,7 @@
 
     /**
      * 查询走访记录
+     *
      * @param query
      * @return
      */
@@ -972,6 +1109,7 @@
 
     /**
      * 走访任务列表
+     *
      * @param query
      * @return
      */
@@ -980,6 +1118,7 @@
 
     /**
      * 导出
+     *
      * @param query
      * @return
      */
@@ -988,6 +1127,7 @@
 
     /**
      * 删除走访任务
+     *
      * @param ids
      * @param communityId
      * @return
@@ -997,6 +1137,7 @@
 
     /**
      * 被走访人员列表
+     *
      * @param query
      * @return
      */
@@ -1004,9 +1145,9 @@
     R visitorList(@RequestBody EventVisitListQuery query);
 
 
-
     /**
      * 走访详情
+     *
      * @param id
      * @return
      */
@@ -1016,6 +1157,7 @@
 
     /**
      * 撤销走访
+     *
      * @param id
      * @return
      */
@@ -1024,6 +1166,7 @@
 
     /**
      * 恢复走访
+     *
      * @param id
      * @return
      */
@@ -1032,24 +1175,27 @@
 
     /**
      * 新增走访
+     *
      * @param ids
      * @param communityId
      * @param userId
      * @return
      */
     @PostMapping("/eventvisitingtasks/add")
-    R addVisitingTask(@RequestParam("ids") String ids,@RequestParam("communityId") Long communityId,@RequestParam("userId") Long userId);
+    R addVisitingTask(@RequestParam("ids") String ids, @RequestParam("communityId") Long communityId, @RequestParam("userId") Long userId);
 
     /**
      * 开始走访
+     *
      * @param id
      * @return
      */
     @PostMapping("/eventvisitingtasks/start")
-    R start(@RequestParam("id")Long id,@RequestParam("userId")Long userId);
+    R start(@RequestParam("id") Long id, @RequestParam("userId") Long userId);
 
     /**
      * 完成走访记录
+     *
      * @param taskCompleteDTO
      * @return
      */
diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/api/LcEventApi.java b/springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/api/LcEventApi.java
index de93413..015b6be 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/api/LcEventApi.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/api/LcEventApi.java
@@ -3,9 +3,11 @@
 import com.panzhihua.common.controller.BaseController;
 import com.panzhihua.common.model.dtos.api.EventFile;
 import com.panzhihua.common.model.dtos.api.EventInfo;
+import com.panzhihua.common.model.vos.LoginUserInfoVO;
 import com.panzhihua.common.model.vos.R;
 import com.panzhihua.serviceapi.biz.LcApiService;
 import com.panzhihua.serviceapi.model.dto.LcGridData;
+import com.panzhihua.serviceapi.model.dto.LcKeyPersonVisitRecordQueryDTO;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
@@ -59,7 +61,7 @@
     @ApiOperation(value = "提交事件登记关联的文件或者图片信息")
     @PostMapping("lc/event/upload/file")
     public R automationUploadFile(@RequestBody EventFile eventFile) {
-        return lcApiService.submitEventRelationFile(eventFile);
+        return lcApiService.submitEventOrVisitRecordRelationFile(eventFile);
     }
 
     /**
@@ -89,12 +91,7 @@
     @ApiOperation(value = "获取指定事件信息")
     @GetMapping("lc/event/getEventInfoById")
     public String getEventInfoById(String eventId) {
-        try {
-            return lcApiService.getEventInfoById(eventId);
-        } catch (Exception e) {
-            log.error("获取指定事件信息出现错误:{}", e.getMessage());
-        }
-        return eventId;
+        return lcApiService.getEventInfoById(eventId);
     }
 
     /**
@@ -108,12 +105,7 @@
     @ApiOperation(value = "获取所有或者根据姓名和工号查询,分页")
     @GetMapping("lc/event/getGridMemberListByAreaIdOrName")
     public String getGridMemberListByAreaIdOrName(String eventId) {
-        try {
-            return lcApiService.getGridMemberListByAreaIdOrName(eventId);
-        } catch (Exception e) {
-            log.error("获取所有或者根据姓名和工号查询,分页出现错误:{}", e.getMessage());
-        }
-        return eventId;
+        return lcApiService.getGridMemberListByAreaIdOrName(eventId);
     }
 
     /**
@@ -135,4 +127,80 @@
         return Collections.emptyList();
     }
 
+
+    /**
+     * description 流动人口 走访详情
+     *
+     * @param recordId 流动人口走访任务ID
+     * @return String 事件信息
+     * @author manailin
+     * @date 2021/6/10 17:00
+     */
+    @ApiOperation(value = "流动人口 走访详情")
+    @GetMapping("lc/event/getFlowPersonVisitRecordDetailById")
+    public String getFlowPersonVisitRecordDetailById(String recordId) {
+        return lcApiService.getFlowPersonVisitRecordDetailById(recordId);
+    }
+
+    /**
+     * description 流动人口 走访记录列表
+     *
+     * @param lcKeyPersonVisitRecordQueryDTO 入参参数
+     * @return String 事件信息
+     * @author manailin
+     * @date 2021/6/10 17:00
+     */
+    @ApiOperation(value = " 流动人口 走访记录列表,分页")
+    @GetMapping("lc/event/getFlowPersonVisitRecordPage")
+    public String getFlowPersonVisitRecordPage(@RequestBody LcKeyPersonVisitRecordQueryDTO lcKeyPersonVisitRecordQueryDTO) {
+        LoginUserInfoVO loginUserInfo = this.getLoginUserInfo();
+        return lcApiService.getFlowPersonVisitRecordPage(lcKeyPersonVisitRecordQueryDTO, loginUserInfo.getUserId());
+    }
+
+
+    /**
+     * description 重点人口 走访详情
+     *
+     * @param recordId 流动人口走访任务ID
+     * @return String 事件信息
+     * @author manailin
+     * @date 2021/6/10 17:00
+     */
+    @ApiOperation(value = "重点人口 走访详情")
+    @GetMapping("lc/event/getKeyPersonVisitRecordDetailById")
+    public String getKeyPersonVisitRecordDetailById(String recordId) {
+        return lcApiService.getKeyPersonVisitRecordDetailById(recordId);
+    }
+
+    /**
+     * description 重点人口 走访记录列表
+     *
+     * @param lcKeyPersonVisitRecordQueryDTO 入参参数
+     * @return String 事件信息
+     * @author manailin
+     * @date 2021/6/10 17:00
+     */
+    @ApiOperation(value = " 重点人口 走访记录列表")
+    @GetMapping("lc/event/getKeyPersonVisitRecordPage")
+    public String getKeyPersonVisitRecordPage(@RequestBody LcKeyPersonVisitRecordQueryDTO lcKeyPersonVisitRecordQueryDTO) {
+        LoginUserInfoVO loginUserInfo = this.getLoginUserInfo();
+        return lcApiService.getKeyPersonVisitRecordPage(lcKeyPersonVisitRecordQueryDTO, loginUserInfo.getUserId());
+    }
+
+
+    /**
+     * description 自动上传走访记录
+     *
+     * @author manailin
+     * @date 2021/6/10 17:00
+     */
+    @ApiOperation(value = "自动上传重点人员和流动人员走访记录")
+    @GetMapping("lc/auto/upload/visit_record")
+    public void automationUploadVisitRecord() {
+        try {
+            lcApiService.automationUploadVisitRecord();
+        } catch (Exception e) {
+            log.error("自动上传重点人员走访记录:{}", e.getMessage());
+        }
+    }
 }
diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/biz/LcApiService.java b/springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/biz/LcApiService.java
index c081f5a..b7bbe4d 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/biz/LcApiService.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/biz/LcApiService.java
@@ -1,9 +1,14 @@
 package com.panzhihua.serviceapi.biz;
 
+import com.panzhihua.common.api.LcReturnObject;
 import com.panzhihua.common.model.dtos.api.EventFile;
 import com.panzhihua.common.model.dtos.api.EventInfo;
+import com.panzhihua.common.model.dtos.grid.LcEventVisitingTasksListDTO;
 import com.panzhihua.common.model.vos.R;
+import com.panzhihua.serviceapi.model.dto.LcFlowPersonVisitRecordDTO;
 import com.panzhihua.serviceapi.model.dto.LcGridData;
+import com.panzhihua.serviceapi.model.dto.LcKeyPersonVisitRecordDTO;
+import com.panzhihua.serviceapi.model.dto.LcKeyPersonVisitRecordQueryDTO;
 
 import java.util.List;
 
@@ -55,7 +60,7 @@
      * @author manailin
      * @date 2021/6/10 17:00
      */
-    R submitEventRelationFile(EventFile eventFile);
+    R submitEventOrVisitRecordRelationFile(EventFile eventFile);
 
     /**
      * description 获取指定事件信息
@@ -95,4 +100,105 @@
      */
     void automationUploadEventAndFile();
 
+
+    /**
+     * description 流动人口 走访详情
+     *
+     * @param recordId 流动人口走访任务ID
+     * @return String 事件信息
+     * @author manailin
+     * @date 2021/6/10 17:00
+     */
+    String getFlowPersonVisitRecordDetailById(String recordId);
+
+    /**
+     * description 流动人口 走访记录列表
+     *
+     * @param personVisitRecordQueryDTO 入参参数
+     * @param loginUserId               当前登陆用户ID
+     * @return String 事件信息
+     * @author manailin
+     * @date 2021/6/10 17:00
+     */
+    String getFlowPersonVisitRecordPage(LcKeyPersonVisitRecordQueryDTO personVisitRecordQueryDTO, Long loginUserId);
+
+    /**
+     * description 上传流动人口走访记录
+     *
+     * @param lcFlowPersonVisitRecordDTO 入参参数
+     * @return String 事件信息
+     * @author manailin
+     * @date 2021/6/10 17:00
+     */
+    String uploadFlowPersonVisitRecord(LcFlowPersonVisitRecordDTO lcFlowPersonVisitRecordDTO);
+
+    /**
+     * description 请求上传流动人口走访记录导浪潮市平台服务器
+     *
+     * @param lcEventVisitingTasksListDTO 走访事件对象
+     * @param lcGrid                      浪潮对应的网格ID
+     * @param lcGridUserId                浪潮网格员对应的用户ID
+     * @param populationDetail            实有人口基础信息
+     * @param gridName                    网格名称
+     * @param data                        精度维度数组
+     * @return String 事件信息
+     * @author manailin
+     * @date 2021/6/10 17:00
+     */
+    LcReturnObject requestLcFlowPersonVisitRecord(LcEventVisitingTasksListDTO lcEventVisitingTasksListDTO, String lcGrid, String lcGridUserId, Object populationDetail, String gridName, String[] data);
+
+    /**
+     * description 请求上传重点人口走访记录导浪潮市平台服务器
+     *
+     * @param lcEventVisitingTasksListDTO 走访事件对象
+     * @param lcGrid                      浪潮对应的网格ID
+     * @param lcGridUserId                浪潮网格员对应的用户ID
+     * @param populationDetail            实有人口基础信息
+     * @param gridName                    网格名称
+     * @param data                        精度维度数组
+     * @return String 事件信息
+     * @author manailin
+     * @date 2021/6/10 17:00
+     */
+    LcReturnObject requestLcKeyPersonVisitRecord(LcEventVisitingTasksListDTO lcEventVisitingTasksListDTO, String lcGrid, String lcGridUserId, Object populationDetail, String gridName, String[] data);
+
+    /**
+     * description 上传重点人口走访记录
+     *
+     * @param lcKeyPersonVisitRecordDTO 入参参数
+     * @return String 事件信息
+     * @author manailin
+     * @date 2021/6/10 17:00
+     */
+    String uploadKeyPersonVisitRecord(LcKeyPersonVisitRecordDTO lcKeyPersonVisitRecordDTO);
+
+    /**
+     * description 重点人口 走访详情
+     *
+     * @param recordId 流动人口走访任务ID
+     * @return String 事件信息
+     * @author manailin
+     * @date 2021/6/10 17:00
+     */
+    String getKeyPersonVisitRecordDetailById(String recordId);
+
+    /**
+     * description 重点人口 走访记录列表
+     *
+     * @param personVisitRecordQueryDTO 入参参数
+     * @param loginUserId               当前登陆用户ID
+     * @return String 事件信息
+     * @author manailin
+     * @date 2021/6/10 17:00
+     */
+    String getKeyPersonVisitRecordPage(LcKeyPersonVisitRecordQueryDTO personVisitRecordQueryDTO, Long loginUserId);
+
+    /**
+     * description 自动上传重点人员走访记录
+     *
+     * @author manailin
+     * @date 2021/6/10 17:00
+     */
+    void automationUploadVisitRecord();
+
 }
diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/biz/impl/LcApiServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/biz/impl/LcApiServiceImpl.java
index 4700bb5..8a332da 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/biz/impl/LcApiServiceImpl.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/biz/impl/LcApiServiceImpl.java
@@ -7,20 +7,27 @@
 import com.alibaba.fastjson.JSONObject;
 import com.fasterxml.jackson.core.JsonProcessingException;
 import com.fasterxml.jackson.databind.ObjectMapper;
-import com.panzhihua.common.api.LangchaoApiConstants;
+import com.panzhihua.common.api.LcApiConstants;
+import com.panzhihua.common.api.LcRequestEnum;
 import com.panzhihua.common.api.LcReturnObject;
+import com.panzhihua.common.api.LcVisitRecordKeyPersonLabelEnum;
 import com.panzhihua.common.constants.TokenConstant;
 import com.panzhihua.common.enums.LocalEventToLangChaoEventTypeEnum;
 import com.panzhihua.common.model.dtos.api.EventFile;
 import com.panzhihua.common.model.dtos.api.EventInfo;
+import com.panzhihua.common.model.dtos.grid.LcEventVisitingTasksListDTO;
 import com.panzhihua.common.model.vos.R;
 import com.panzhihua.common.model.vos.grid.EventDetailsVO;
 import com.panzhihua.common.model.vos.grid.EventGridDataDetailsVO;
 import com.panzhihua.common.model.vos.grid.EventResourceVO;
+import com.panzhihua.common.service.community.CommunityService;
 import com.panzhihua.common.service.grid.GridService;
 import com.panzhihua.common.utlis.DateUtils;
 import com.panzhihua.serviceapi.biz.LcApiService;
+import com.panzhihua.serviceapi.model.dto.LcFlowPersonVisitRecordDTO;
 import com.panzhihua.serviceapi.model.dto.LcGridData;
+import com.panzhihua.serviceapi.model.dto.LcKeyPersonVisitRecordDTO;
+import com.panzhihua.serviceapi.model.dto.LcKeyPersonVisitRecordQueryDTO;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.redis.core.StringRedisTemplate;
@@ -55,6 +62,9 @@
     @Autowired
     private StringRedisTemplate redisTemplate;
 
+    @Resource
+    private CommunityService communityService;
+
     /**
      * 从redis获取token
      *
@@ -62,31 +72,32 @@
      */
     private String getAuthToken() {
         ValueOperations<String, String> valueOperations = redisTemplate.opsForValue();
-        if (valueOperations.get(LangchaoApiConstants.LANG_CHAO_TOKEN) == null) {
-            saveTokenFromRemoteRequest("18080799023", "123456");
+        if (valueOperations.get(LcApiConstants.LANG_CHAO_TOKEN) == null) {
+            saveTokenFromRemoteRequest(LcApiConstants.LC_UPLOAD_NAME, LcApiConstants.LC_UPLOAD_PASSWORD);
         }
-        return valueOperations.get(LangchaoApiConstants.LANG_CHAO_TOKEN);
+        return valueOperations.get(LcApiConstants.LANG_CHAO_TOKEN);
     }
 
     @Override
     public String saveTokenFromRemoteRequest(String name, String password) {
-        if (redisTemplate.hasKey(LangchaoApiConstants.LANG_CHAO_TOKEN)) {
+        Boolean authToken = redisTemplate.hasKey(LcApiConstants.LANG_CHAO_TOKEN);
+        if (authToken != null) {
             //如果redis存在token,直接返回redis存储的token
             ValueOperations<String, String> valueOperations = redisTemplate.opsForValue();
-            return valueOperations.get(LangchaoApiConstants.LANG_CHAO_TOKEN);
+            return valueOperations.get(LcApiConstants.LANG_CHAO_TOKEN);
         } else {
             //如果第一次请求浪潮的token请求,请求完成后,保存对于的token到数据库中。便于12小时内重复调用
-            HttpRequest request = HttpUtil.createPost(LangchaoApiConstants.GRID_GET_TOKEN_URL.replace("#username", name).replace("#password", password));
+            HttpRequest request = HttpUtil.createPost(LcApiConstants.GRID_GET_TOKEN_URL.replace("#username", name).replace("#password", password));
             HttpResponse result = request.execute();
             ValueOperations<String, String> valueOperations = redisTemplate.opsForValue();
-            valueOperations.set(LangchaoApiConstants.LANG_CHAO_TOKEN, result.body(), TokenConstant.EXPIRETIME, TimeUnit.MINUTES);
+            valueOperations.set(LcApiConstants.LANG_CHAO_TOKEN, result.body(), TokenConstant.EXPIRETIME, TimeUnit.MINUTES);
             return result.toString();
         }
     }
 
     @Override
     public String getAllEventTypeList() {
-        HttpRequest request = HttpUtil.createPost(LangchaoApiConstants.GRID_EVENT_CATEGORY_URL);
+        HttpRequest request = HttpUtil.createPost(LcApiConstants.GRID_EVENT_CATEGORY_URL);
         request.auth(getAuthToken());
         HttpResponse result = request.execute();
         return result.body();
@@ -94,7 +105,7 @@
 
     @Override
     public String submitEventRegister(EventInfo eventInfo) {
-        HttpRequest request = HttpUtil.createPost(LangchaoApiConstants.GRID_REGIST_EVENT_URL);
+        HttpRequest request = HttpUtil.createPost(LcApiConstants.GRID_REGIST_EVENT_URL);
         request.auth(getAuthToken());
         ObjectMapper mapper = new ObjectMapper();
         try {
@@ -110,8 +121,8 @@
     }
 
     @Override
-    public R submitEventRelationFile(EventFile eventFile) {
-        HttpRequest request = HttpUtil.createPost(LangchaoApiConstants.GRID_EVENT_FILE_UPLOAD_URL);
+    public R submitEventOrVisitRecordRelationFile(EventFile eventFile) {
+        HttpRequest request = HttpUtil.createPost(LcApiConstants.GRID_EVENT_FILE_UPLOAD_URL);
         request.auth(getAuthToken());
         try {
             HttpURLConnection httpUrl = (HttpURLConnection) new URL(eventFile.getFiles()).openConnection();
@@ -133,7 +144,7 @@
 
     @Override
     public String getEventInfoById(String eventId) {
-        HttpRequest request = HttpUtil.createPost(LangchaoApiConstants.GRID_APP_EVENT_INFO_DETAIL_URL);
+        HttpRequest request = HttpUtil.createPost(LcApiConstants.GRID_APP_EVENT_INFO_DETAIL_URL);
         request.auth(getAuthToken());
         request.form("eventId", eventId);
         HttpResponse result = request.execute();
@@ -142,7 +153,7 @@
 
     @Override
     public List<LcGridData> getGridListByAreaId(String areaId) {
-        HttpRequest request = HttpUtil.createPost(LangchaoApiConstants.GRID_GET_EVENT_INFO_AREA_ID_URL);
+        HttpRequest request = HttpUtil.createPost(LcApiConstants.GRID_GET_EVENT_INFO_AREA_ID_URL);
         request.auth(getAuthToken());
         request.form("areaId", areaId);
         HttpResponse result = request.execute();
@@ -151,7 +162,7 @@
 
     @Override
     public String getGridMemberListByAreaIdOrName(String areaId) {
-        HttpRequest request = HttpUtil.createPost(LangchaoApiConstants.GRID_GET_GETALL_SEARCH_PAGE_URL);
+        HttpRequest request = HttpUtil.createGet(LcApiConstants.GRID_GET_GETALL_SEARCH_PAGE_URL);
         request.auth(getAuthToken());
         request.form("areaId", areaId);
         HttpResponse result = request.execute();
@@ -210,6 +221,201 @@
         });
     }
 
+    @Override
+    public String getFlowPersonVisitRecordDetailById(String recordId) {
+        HttpRequest request = HttpUtil.createPost(LcApiConstants.VISIT_RECORD_FLOW_PERSON_DETAIL_URL);
+        request.auth(getAuthToken());
+        request.form("id", recordId);
+        HttpResponse result = request.execute();
+        return result.body();
+    }
+
+    @Override
+    public String getFlowPersonVisitRecordPage(LcKeyPersonVisitRecordQueryDTO personVisitRecordQueryDTO, Long loginUserId) {
+        HttpResponse result = getHttpResponse(personVisitRecordQueryDTO, loginUserId, LcApiConstants.VISIT_RECORD_FLOW_PERSON_PAGE_URL, "flowPeopleId");
+        return result.body();
+    }
+
+    @Override
+    public String uploadFlowPersonVisitRecord(LcFlowPersonVisitRecordDTO lcFlowPersonVisitRecordDTO) {
+        HttpRequest request = HttpUtil.createPost(LcApiConstants.VISIT_RECORD_FLOW_PERSON_SAVE_URL);
+        request.auth(getAuthToken());
+        ObjectMapper mapper = new ObjectMapper();
+        try {
+            //对象转map
+            Map m = mapper.readValue(mapper.writeValueAsString(lcFlowPersonVisitRecordDTO), Map.class);
+            request.form(m);
+        } catch (JsonProcessingException e) {
+            log.info("方法uploadFlowPersonVisitRecord发生错误:{}", e.getMessage());
+        }
+        HttpResponse result = request.execute();
+        log.info("submit上传浪潮事件信息:{}", result.body());
+        return result.body();
+    }
+
+    @Override
+    public String uploadKeyPersonVisitRecord(LcKeyPersonVisitRecordDTO lcKeyPersonVisitRecordDTO) {
+        HttpRequest request = HttpUtil.createPost(LcApiConstants.VISIT_RECORD_KEY_PERSON_SAVE_REMOTE_URL);
+        request.auth(getAuthToken());
+        ObjectMapper mapper = new ObjectMapper();
+        try {
+            //对象转map
+            Map m = mapper.readValue(mapper.writeValueAsString(lcKeyPersonVisitRecordDTO), Map.class);
+            request.form(m);
+        } catch (JsonProcessingException e) {
+            log.info("方法uploadKeyPersonVisitRecord发生错误:{}", e.getMessage());
+        }
+        HttpResponse result = request.execute();
+        log.info("submit上传浪潮事件信息:{}", result.body());
+        return result.body();
+    }
+
+    @Override
+    public String getKeyPersonVisitRecordDetailById(String recordId) {
+        HttpRequest request = HttpUtil.createPost(LcApiConstants.VISIT_RECORD_KEY_PERSON_DETAIL_URL);
+        request.auth(getAuthToken());
+        request.form("id", recordId);
+        HttpResponse result = request.execute();
+        return result.body();
+    }
+
+    @Override
+    public String getKeyPersonVisitRecordPage(LcKeyPersonVisitRecordQueryDTO personVisitRecordQueryDTO, Long loginUserId) {
+        HttpResponse result = getHttpResponse(personVisitRecordQueryDTO, loginUserId, LcApiConstants.VISIT_RECORD_KEY_PERSON_PAGE_URL, "keyPersonId");
+        return result.body();
+    }
+
+    @Override
+    public void automationUploadVisitRecord() {
+        List<LcEventVisitingTasksListDTO> unUploadTaskList = gridService.getUnUploadVisitingTask();
+        unUploadTaskList.forEach(lcEventVisitingTasksListDTO -> {
+            String lcGrid = gridService.getLcGridIdByLocal(lcEventVisitingTasksListDTO.getGridId());
+            String lcGridUserId = gridService.getLcUserIdByLocalUserId(lcEventVisitingTasksListDTO.getGridMember().toString());
+            R populationDetail = communityService.detailPopulation(lcEventVisitingTasksListDTO.getVisiterId());
+            R grid = gridService.eventGridDataDetails(lcEventVisitingTasksListDTO.getGridId());
+            EventGridDataDetailsVO gridData = (EventGridDataDetailsVO) grid.getData();
+            String[] data = lcEventVisitingTasksListDTO.getHappentLatLng().split(",");
+            if (lcEventVisitingTasksListDTO.getVisiterType() != null) {
+                log.info("上传数据导重点人口走访记录表");
+                LcReturnObject lcReturnObject = requestLcKeyPersonVisitRecord(lcEventVisitingTasksListDTO, lcGrid, lcGridUserId, populationDetail.getData(), gridData.getGridName(), data);
+                if (LcRequestEnum.SUCCESS.getCode().equals(lcReturnObject.getCode())) {
+                    uploadVisitRecord(lcEventVisitingTasksListDTO);
+                    gridService.updateLcUploadFlagVisitingTask(lcEventVisitingTasksListDTO.getId());
+                }
+            } else {
+                log.info("上传数据导流动人口走访记录表");
+                LcReturnObject lcReturnObject = requestLcFlowPersonVisitRecord(lcEventVisitingTasksListDTO, lcGrid, lcGridUserId, populationDetail.getData(), gridData.getGridName(), data);
+                if (LcRequestEnum.SUCCESS.getCode().equals(lcReturnObject.getCode())) {
+                    uploadVisitRecord(lcEventVisitingTasksListDTO);
+                    gridService.updateLcUploadFlagVisitingTask(lcEventVisitingTasksListDTO.getId());
+                }
+            }
+        });
+    }
+
+    private void uploadVisitRecord(LcEventVisitingTasksListDTO lcEventVisitingTasksListDTO) {
+        log.info("开始上传走访任务附件文件");
+        List<EventResourceVO> picsList = lcEventVisitingTasksListDTO.getPics();
+        uploadVisitRecordFile(lcEventVisitingTasksListDTO, picsList, "IMAGE");
+        List<EventResourceVO> audiosList = lcEventVisitingTasksListDTO.getAudios();
+        uploadVisitRecordFile(lcEventVisitingTasksListDTO, audiosList, "AUDIO");
+        List<EventResourceVO> videoList = lcEventVisitingTasksListDTO.getVideos();
+        uploadVisitRecordFile(lcEventVisitingTasksListDTO, videoList, "VIDEO");
+        log.info("结束上传走访任务附件文件");
+    }
+
+    private void uploadVisitRecordFile(LcEventVisitingTasksListDTO lcEventVisitingTasksListDTO, List<EventResourceVO> picsList, String type) {
+        picsList.forEach(eventResourceVO -> {
+            EventFile eventFile = new EventFile();
+            eventFile.setDataId(lcEventVisitingTasksListDTO.getId().toString());
+            eventFile.setFiles(eventResourceVO.getUrl());
+            eventFile.setType(type);
+            eventFile.setModule("key_person");
+            eventFile.setFileName(eventResourceVO.getResourceName());
+            submitEventOrVisitRecordRelationFile(eventFile);
+        });
+    }
+
+
+    @Override
+    public LcReturnObject requestLcFlowPersonVisitRecord(LcEventVisitingTasksListDTO lcEventVisitingTasksListDTO, String lcGrid, String lcGridUserId, Object populationDetail, String gridName, String[] data) {
+        //如果是流动人口走访
+        LcFlowPersonVisitRecordDTO lcFlowPersonVisitRecordDTO = new LcFlowPersonVisitRecordDTO();
+        lcFlowPersonVisitRecordDTO.setId(lcEventVisitingTasksListDTO.getId().toString());
+        lcFlowPersonVisitRecordDTO.setUserId(lcGridUserId);
+        lcFlowPersonVisitRecordDTO.setGridPersonName(lcEventVisitingTasksListDTO.getGridMemberName());
+        lcFlowPersonVisitRecordDTO.setGridPersonPhone(lcEventVisitingTasksListDTO.getGridMenberTele());
+        JSONObject population = (JSONObject) JSONObject.toJSON(populationDetail);
+        lcFlowPersonVisitRecordDTO.setComMngPopulation(population.toJSONString());
+        lcFlowPersonVisitRecordDTO.setGridId(lcGrid);
+        lcFlowPersonVisitRecordDTO.setGridName(gridName);
+        lcFlowPersonVisitRecordDTO.setWorkWithPoliceMan("0");
+        lcFlowPersonVisitRecordDTO.setPoliceManName(null);
+        lcFlowPersonVisitRecordDTO.setPoliceManPhone(null);
+        lcFlowPersonVisitRecordDTO.setPoliceManWorkContent(null);
+        lcFlowPersonVisitRecordDTO.setVisitTime(lcEventVisitingTasksListDTO.getHappenTime().getTime());
+        lcFlowPersonVisitRecordDTO.setVisitAddress(lcEventVisitingTasksListDTO.getHappentAddress());
+        lcFlowPersonVisitRecordDTO.setLongitude(Double.valueOf(data[0]));
+        lcFlowPersonVisitRecordDTO.setLatitude(Double.valueOf(data[1]));
+        lcFlowPersonVisitRecordDTO.setHouseType(null);
+        lcFlowPersonVisitRecordDTO.setHouseAddress(lcEventVisitingTasksListDTO.getHappentAddress());
+        lcFlowPersonVisitRecordDTO.setIsReportInfo(null);
+        lcFlowPersonVisitRecordDTO.setHaveCertificate("0");
+        lcFlowPersonVisitRecordDTO.setCertificateType("身份证");
+        lcFlowPersonVisitRecordDTO.setCertificateNumber(population.getString("cardNo"));
+        lcFlowPersonVisitRecordDTO.setCertificateDeadTime("0");
+        lcFlowPersonVisitRecordDTO.setIsPropaganda("1");
+        lcFlowPersonVisitRecordDTO.setIsCheckReview("1");
+        lcFlowPersonVisitRecordDTO.setIsAbnormal(lcEventVisitingTasksListDTO.getException().toString());
+        lcFlowPersonVisitRecordDTO.setAbnormalSituation(lcEventVisitingTasksListDTO.getTableContentJson());
+        lcFlowPersonVisitRecordDTO.setRemark(lcEventVisitingTasksListDTO.getEventDes());
+        log.info("事件请求数据:{}", JSONObject.toJSONString(lcFlowPersonVisitRecordDTO));
+        String flowPersonData = uploadFlowPersonVisitRecord(lcFlowPersonVisitRecordDTO);
+        LcReturnObject lcReturnObject = JSONObject.parseObject(flowPersonData, LcReturnObject.class);
+        log.info("提交浪潮服务器,接口返回结果为:{}", lcReturnObject);
+        return lcReturnObject;
+    }
+
+    @Override
+    public LcReturnObject requestLcKeyPersonVisitRecord(LcEventVisitingTasksListDTO lcEventVisitingTasksListDTO, String lcGrid, String lcGridUserId, Object populationDetail, String gridName, String[] data) {
+        LcKeyPersonVisitRecordDTO keyPersonVisitRecordDTO = new LcKeyPersonVisitRecordDTO();
+        keyPersonVisitRecordDTO.setId(lcEventVisitingTasksListDTO.getId().toString());
+        keyPersonVisitRecordDTO.setUserId(lcGridUserId);
+        keyPersonVisitRecordDTO.setGridPersonName(lcEventVisitingTasksListDTO.getGridMemberName());
+        keyPersonVisitRecordDTO.setGridPersonPhone(lcEventVisitingTasksListDTO.getGridMenberTele());
+        keyPersonVisitRecordDTO.setComMngPopulation(JSONObject.toJSONString(populationDetail));
+        keyPersonVisitRecordDTO.setGridId(lcGrid);
+        keyPersonVisitRecordDTO.setGridName(gridName);
+        keyPersonVisitRecordDTO.setVisitTime(lcEventVisitingTasksListDTO.getHappenTime().getTime());
+        keyPersonVisitRecordDTO.setVisitAddress(lcEventVisitingTasksListDTO.getHappentAddress());
+        keyPersonVisitRecordDTO.setLongitude(Double.valueOf(data[0]));
+        keyPersonVisitRecordDTO.setLatitude(Double.valueOf(data[1]));
+        keyPersonVisitRecordDTO.setFamilyMemberContact(lcEventVisitingTasksListDTO.getFamilyPhone());
+        keyPersonVisitRecordDTO.setHowLive(lcEventVisitingTasksListDTO.getFamilySource());
+        keyPersonVisitRecordDTO.setIsAbnormal(lcEventVisitingTasksListDTO.getException().toString());
+        keyPersonVisitRecordDTO.setAbnormalSituation(null);
+        keyPersonVisitRecordDTO.setAbnormalDes(lcEventVisitingTasksListDTO.getTableContentJson());
+        keyPersonVisitRecordDTO.setRemark(lcEventVisitingTasksListDTO.getEventDes());
+        keyPersonVisitRecordDTO.setType(LcVisitRecordKeyPersonLabelEnum.getCnDescByName(lcEventVisitingTasksListDTO.getVisiterType()));
+        log.info("事件请求数据:{}", JSONObject.toJSONString(keyPersonVisitRecordDTO));
+        String remoteData = uploadKeyPersonVisitRecord(keyPersonVisitRecordDTO);
+        LcReturnObject lcReturnObject = JSONObject.parseObject(remoteData, LcReturnObject.class);
+        log.info("提交浪潮服务器,接口返回结果为:{}", remoteData);
+        return lcReturnObject;
+    }
+
+
+    private HttpResponse getHttpResponse(LcKeyPersonVisitRecordQueryDTO personVisitRecordQueryDTO, Long loginUserId, String requestUrl, String flowPeopleId) {
+        HttpRequest request = HttpUtil.createPost(requestUrl);
+        request.auth(getAuthToken());
+        request.form("userId", loginUserId);
+        request.form("gridId", personVisitRecordQueryDTO.getGridId());
+        request.form("limit", personVisitRecordQueryDTO.getLimit());
+        request.form("startNumber", personVisitRecordQueryDTO.getStartNumber());
+        request.form(flowPeopleId, personVisitRecordQueryDTO.getPersonId());
+        return request.execute();
+    }
+
     private void uploadLcApiEventFile(EventDetailsVO eventInfoVo, List<EventResourceVO> picsList, String type) {
         picsList.forEach(eventResourceVO -> {
             EventFile eventFile = new EventFile();
@@ -218,7 +424,7 @@
             eventFile.setType(type);
             eventFile.setModule("event");
             eventFile.setFileName(eventResourceVO.getResourceName());
-            submitEventRelationFile(eventFile);
+            submitEventOrVisitRecordRelationFile(eventFile);
         });
     }
 
@@ -226,7 +432,7 @@
      * 工具方法
      * inputStream 转 File
      */
-    public static File inputStreamToFile(InputStream ins, String name) throws Exception {
+    private static File inputStreamToFile(InputStream ins, String name) throws Exception {
         File file = new File(System.getProperty("java.io.tmpdir") + File.separator + name);
         log.info(System.getProperty("java.io.tmpdir") + File.separator + name);
         if (file.exists()) {
diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/model/dto/ComMngPopulationDTO.java b/springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/model/dto/ComMngPopulationDTO.java
new file mode 100644
index 0000000..6d616e9
--- /dev/null
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/model/dto/ComMngPopulationDTO.java
@@ -0,0 +1,204 @@
+package com.panzhihua.serviceapi.model.dto;
+
+import com.panzhihua.common.model.helper.encrypt.EncryptDecryptClass;
+import com.panzhihua.common.model.helper.encrypt.EncryptDecryptField;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+
+@Data
+public class ComMngPopulationDTO implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 自增 id
+     */
+    private Long id;
+    /**
+     * 街道id
+     */
+    private Long streetId;
+    /**
+     * 社区id
+     */
+    private Long actId;
+    /**
+     * 小区id(实有房屋id)
+     */
+    private Long villageId;
+    /**
+     * 家庭成员(姓名)
+     */
+    private String name;
+    /**
+     * 性别(1.男 2.女 3.未知)
+     */
+    private Integer sex;
+    /**
+     * 年龄
+     */
+//    private Integer age;
+    /**
+     * 身份证号码
+     */
+    @EncryptDecryptField
+    private String cardNo;
+
+    /**
+     * 临时用
+     */
+    private String cardNoStr;
+    /**
+     * 街路巷
+     */
+    private String road;
+    /**
+     * 门牌号
+     */
+    private String doorNo;
+    /**
+     * 楼排号
+     */
+    private String floor;
+    /**
+     * 单元号
+     */
+    private String unitNo;
+    /**
+     * 户室(房间号)
+     */
+    private String houseNo;
+    /**
+     * 政治面貌(1.中共党员2.中共预备党员3.共青团员4.民革党员5.民盟盟员6.民建会员7.8.农工党党员9.致公党党员10.九三学社社员11.台盟盟员12.无党派人士13.群众)
+     */
+    private Integer politicalOutlook;
+    /**
+     * 工作单位
+     */
+    private String workCompany;
+    /**
+     * 特殊情况
+     */
+    private String specialSituation;
+    /**
+     * 联系方式
+     */
+    @EncryptDecryptField
+    private String phone;
+    /**
+     * 外地or本地(1.本地  2.外地)
+     */
+    private Integer outOrLocal;
+    /**
+     * 户口所在地
+     */
+    private String censusRegister;
+    /**
+     * 备注
+     */
+    private String remark;
+    /**
+     * 标签集合(多个标签以,隔开)
+     */
+    private String label;
+    /**
+     * 创建时间
+     */
+    private Date createAt;
+    /**
+     * 修改时间
+     */
+    private Date updateAt;
+    /**
+     * 籍贯
+     */
+    private String nativePlace;
+    /**
+     * 民族
+     */
+    private String nation;
+    /**
+     * 是否租住(0.否 1.是)
+     */
+    private Integer isRent;
+    /**
+     * 小区名字
+     */
+    private String villageName;
+
+    /**
+     * 与户主关系(1.户主 2.配偶 3.子女 4.孙女 5.父母 6.其他)
+     */
+//    private Integer relation;
+//
+//    private String relationStr;
+
+    /**
+     * 文化程度(1.小学 2.初中 3.高中 4.中专 5.大专 6.本科 7.硕士 8.博士 9.其他)
+     */
+    private Integer cultureLevel;
+
+    /**
+     * 婚姻状况(1.未婚 2.已婚 3.离异 4.丧偶 5.分居 6.其他)
+     */
+    private Integer marriage;
+
+
+    /**
+     * 健康状况
+     */
+    private String healthy;
+
+    /**
+     * 居住地址
+     */
+    private String address;
+
+    /**
+     * 出生年月日
+     */
+    private String birthday;
+
+    /**
+     * 居住地房屋id
+     */
+//    private Long houseId;
+
+    /**
+     * 性别(1.男 2.女 3.未知)
+     */
+    public interface sex{
+        int nan = 1;
+        int nv = 2;
+        int no = 3;
+    }
+
+    /**
+     * 是否租住
+     */
+    public interface isOk{
+        int yes = 1;
+        int no = 0;
+    }
+
+    /**
+     * 政治面貌
+     */
+    public interface politicalOutlook{
+        int dang = 1;
+        int tuan = 3;
+        int wu = 12;
+        int qun = 13;
+        int no = 13;
+    }
+
+    /**
+     * 外地or本地(1.本地  2.外地)
+     */
+    public interface outOrLocal{
+        int bd = 1;
+        int wd = 2;
+    }
+
+}
diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/model/dto/LcFlowPersonVisitRecordDTO.java b/springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/model/dto/LcFlowPersonVisitRecordDTO.java
new file mode 100644
index 0000000..47be277
--- /dev/null
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/model/dto/LcFlowPersonVisitRecordDTO.java
@@ -0,0 +1,123 @@
+package com.panzhihua.serviceapi.model.dto;
+
+import lombok.Data;
+
+/**
+ * program 攀枝花智慧社区项目
+ * description 浪潮流动人员走访记录
+ *
+ * @author manailin
+ * Date 2021-06-22 15:30
+ **/
+@Data
+public class LcFlowPersonVisitRecordDTO {
+    /**
+     * 走访记录id
+     */
+    private String id;
+    /**
+     * 用户id
+     */
+    private String userId;
+    /**
+     * 网格员姓名
+     */
+    private String gridPersonName;
+    /**
+     * 网格员电话
+     */
+    private String gridPersonPhone;
+    /**
+     * 人员基础信息对象
+     */
+    private String comMngPopulation;
+    /**
+     * 网格ID
+     */
+    private String gridId;
+    /**
+     * 网格名称,用于查询详情时候显示
+     */
+    private String gridName;
+    /**
+     * 是否在民警带领下工作
+     */
+    private String workWithPoliceMan;
+    /**
+     * 民警姓名
+     */
+    private String policeManName;
+    /**
+     * 民警电话
+     */
+    private String policeManPhone;
+    /**
+     * 工作内容
+     */
+    private String policeManWorkContent;
+    /**
+     * 走访时间
+     */
+    private Long visitTime;
+    /**
+     * 走访地址
+     */
+    private String visitAddress;
+    /**
+     * 经度
+     */
+    private Double longitude;
+    /**
+     * 纬度
+     */
+    private Double latitude;
+    /**
+     * 住所类型
+     */
+    private String houseType;
+    /**
+     * 住所地址
+     */
+    private String houseAddress;
+    /**
+     * 是否申报流动人口信息
+     */
+    private String isReportInfo;
+    /**
+     * 是否办证
+     */
+    private String haveCertificate;
+    /**
+     * 证件类型
+     */
+    private String certificateType;
+    /**
+     * 证件号码
+     */
+    private String certificateNumber;
+    /**
+     * 证件到期时间
+     */
+    private String certificateDeadTime;
+    /**
+     * 是否宣传
+     */
+    private String isPropaganda;
+    /**
+     * 是否核查申报
+     */
+    private String isCheckReview;
+    /**
+     * 是否有异常
+     */
+    private String isAbnormal;
+    /**
+     * 异常情况
+     */
+    private String abnormalSituation;
+    /**
+     * 备注
+     */
+    private String remark;
+
+}
diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/model/dto/LcKeyPersonVisitRecordDTO.java b/springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/model/dto/LcKeyPersonVisitRecordDTO.java
new file mode 100644
index 0000000..38d058e
--- /dev/null
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/model/dto/LcKeyPersonVisitRecordDTO.java
@@ -0,0 +1,87 @@
+package com.panzhihua.serviceapi.model.dto;
+
+import lombok.Data;
+
+/**
+ * program 攀枝花智慧社区项目
+ * description 浪潮重点人员走访记录
+ *
+ * @author manailin
+ * Date 2021-06-22 15:30
+ **/
+@Data
+public class LcKeyPersonVisitRecordDTO {
+    /**
+     * 走访记录id
+     */
+    private String id;
+    /**
+     * 用户id
+     */
+    private String userId;
+    /**
+     * 网格员姓名
+     */
+    private String gridPersonName;
+    /**
+     * 网格员电话
+     */
+    private String gridPersonPhone;
+    /**
+     * 人员基础信息对象
+     */
+    private String comMngPopulation;
+    /**
+     * 网格ID
+     */
+    private String gridId;
+    /**
+     * 网格名称,用于查询详情时候显示
+     */
+    private String gridName;
+    /**
+     * 走访时间
+     */
+    private Long visitTime;
+    /**
+     * 走访地址
+     */
+    private String visitAddress;
+    /**
+     * 经度
+     */
+    private Double longitude;
+    /**
+     * 纬度
+     */
+    private Double latitude;
+    /**
+     * 家属联系方式
+     */
+    private String familyMemberContact;
+    /**
+     * 生活来源
+     */
+    private String howLive;
+
+    /**
+     * 是否有异常
+     */
+    private String isAbnormal;
+    /**
+     * 异常情况类型
+     */
+    private String abnormalSituation;
+    /**
+     * 异常描述
+     */
+    private String abnormalDes;
+    /**
+     * 备注
+     */
+    private String remark;
+    /**
+     * p01_drug吸毒人员 p01_trouble_schiz 严重精神障碍 p01_release  刑满释放  p01_be_corrected 社区矫正人员
+     */
+    private String type;
+}
diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/model/dto/LcKeyPersonVisitRecordQueryDTO.java b/springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/model/dto/LcKeyPersonVisitRecordQueryDTO.java
new file mode 100644
index 0000000..b378f1b
--- /dev/null
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_api/src/main/java/com/panzhihua/serviceapi/model/dto/LcKeyPersonVisitRecordQueryDTO.java
@@ -0,0 +1,31 @@
+package com.panzhihua.serviceapi.model.dto;
+
+import lombok.Data;
+/**
+ * program 攀枝花智慧社区项目
+ * description 浪潮接口走访任务分页查询DTO
+ *
+ * @author manailin
+ * Date 2021-06-22 15:30
+ **/
+@Data
+public class LcKeyPersonVisitRecordQueryDTO {
+
+    /**
+     * 网格ID
+     */
+    private String  gridId;
+    /**
+     * 用户ID
+     */
+    private String  personId;
+    /**
+     * 开始数量
+     */
+    private String  startNumber;
+    /**
+     *  查询长度
+     */
+    private String  limit;
+
+}
diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_api/src/test/java/com/panzhihua/service_api/biz/impl/LcApiServiceImplTest.java b/springcloud_k8s_panzhihuazhihuishequ/service_api/src/test/java/com/panzhihua/serviceapi/biz/impl/LcApiServiceImplTest.java
similarity index 90%
rename from springcloud_k8s_panzhihuazhihuishequ/service_api/src/test/java/com/panzhihua/service_api/biz/impl/LcApiServiceImplTest.java
rename to springcloud_k8s_panzhihuazhihuishequ/service_api/src/test/java/com/panzhihua/serviceapi/biz/impl/LcApiServiceImplTest.java
index 710acb4..c7759f4 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_api/src/test/java/com/panzhihua/service_api/biz/impl/LcApiServiceImplTest.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_api/src/test/java/com/panzhihua/serviceapi/biz/impl/LcApiServiceImplTest.java
@@ -1,4 +1,4 @@
-package com.panzhihua.service_api.biz.impl;
+package com.panzhihua.serviceapi.biz.impl;
 
 import cn.hutool.core.util.RandomUtil;
 import com.alibaba.fastjson.JSONArray;
@@ -100,7 +100,7 @@
         eventFile.setType("mp4");
         eventFile.setModule("event");
         eventFile.setFileName("4f843ad2d756456e900d5f24b419aa7c.mp4");
-        R result = lcApiService.submitEventRelationFile(eventFile);
+        R result = lcApiService.submitEventOrVisitRecordRelationFile(eventFile);
         log.info(JSONObject.toJSONString(result));
     }
 
@@ -117,7 +117,7 @@
         EventGridDataDetailsVO gridData = (EventGridDataDetailsVO) grid.getData();
         eventInfo.setGridName(gridData.getGridName());
         eventInfo.setCaseTypeCode(LocalEventToLangChaoEventTypeEnum.getCodeByName(eventInfoVo.getEventType()));
-        String caseTypeName= LocalEventToLangChaoEventTypeEnum.getEventNameByCode(eventInfoVo.getEventType());
+        String caseTypeName = LocalEventToLangChaoEventTypeEnum.getEventNameByCode(eventInfoVo.getEventType());
         eventInfo.setCaseTypeName(caseTypeName);
         eventInfo.setHappenTime(String.valueOf(eventInfoVo.getHappenTime().getTime()));
         eventInfo.setHappenAddress(eventInfoVo.getHappenAddress());
@@ -144,7 +144,7 @@
             eventFile.setType("png");
             eventFile.setModule("event");
             eventFile.setFileName(eventResourceVO.getResourceName());
-            lcApiService.submitEventRelationFile(eventFile);
+            lcApiService.submitEventOrVisitRecordRelationFile(eventFile);
         });
         List<EventResourceVO> audiosList = eventInfoVo.getAudios();
         audiosList.forEach(eventResourceVO -> {
@@ -154,7 +154,7 @@
             eventFile.setType("mp3");
             eventFile.setModule("event");
             eventFile.setFileName(eventResourceVO.getResourceName());
-            lcApiService.submitEventRelationFile(eventFile);
+            lcApiService.submitEventOrVisitRecordRelationFile(eventFile);
         });
         List<EventResourceVO> videoList = eventInfoVo.getVideos();
         videoList.forEach(eventResourceVO -> {
@@ -164,7 +164,7 @@
             eventFile.setType("mp4");
             eventFile.setModule("event");
             eventFile.setFileName(eventResourceVO.getResourceName());
-            lcApiService.submitEventRelationFile(eventFile);
+            lcApiService.submitEventOrVisitRecordRelationFile(eventFile);
         });
         log.info("结束上传附件图片信息");
     }
@@ -178,4 +178,20 @@
                 SerializerFeature.WriteDateUseDateFormat);
         log.info(pretty);
     }
+
+    @Test
+    void requestLcFlowPersonVisitRecord() {
+    }
+
+    @Test
+    void automationUploadVisitRecord() {
+        lcApiService.automationUploadVisitRecord();
+    }
+
+    @Test
+    void getGridMemberListByAreaIdOrName() {
+        String data = lcApiService.getGridMemberListByAreaIdOrName("jhRxqEQp");
+        log.info(data);
+    }
+
 }
\ No newline at end of file
diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/api/EventVisitingTasksApi.java b/springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/api/EventVisitingTasksApi.java
index 3c617ef..a645d23 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/api/EventVisitingTasksApi.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/api/EventVisitingTasksApi.java
@@ -3,13 +3,16 @@
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.panzhihua.common.model.dtos.grid.EventVisitingTasksEditDTO;
+import com.panzhihua.common.model.dtos.grid.LcEventVisitingTasksListDTO;
 import com.panzhihua.common.model.dtos.grid.PageEventVisitingTasksDTO;
 import com.panzhihua.common.model.query.visit.EventTasksQuery;
 import com.panzhihua.common.model.query.visit.EventVisitListQuery;
 import com.panzhihua.common.model.vos.R;
+import com.panzhihua.common.model.vos.grid.EventDetailsVO;
 import com.panzhihua.common.model.vos.visit.EventVisitCompleteDTO;
 import com.panzhihua.common.model.vos.visit.EventVisitingTasksDetailsVO;
 import com.panzhihua.common.model.vos.visit.EventVisitingTasksVO;
+import com.panzhihua.service_grid.model.dos.EventVisitingTasksDO;
 import com.panzhihua.service_grid.service.EventVisitingTasksService;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.web.bind.annotation.*;
@@ -187,4 +190,30 @@
     R complete(@RequestBody EventVisitCompleteDTO taskCompleteDTO){
         return eventVisitingTasksService.complete(taskCompleteDTO);
     }
+
+
+    /**
+     * description 获取所有未上传到浪潮平台的走访事件列表
+     *
+     * @return String 事件列表
+     * @author manailin
+     * @date 2021/6/10 17:00
+     */
+    @GetMapping("/getUnUploadVisitingTask")
+    List<LcEventVisitingTasksListDTO> getUnUploadVisitingTask() {
+        return eventVisitingTasksService.getUnUploadVisitingTask();
+    }
+
+    /**
+     * description 更新走访任务上传是否成功标识
+     *
+     * @param id 事件主键ID
+     * @return Boolean 上传是否成功
+     * @author manailin
+     * @date 2021/6/10 17:00
+     */
+    @PostMapping("/updateLcUploadFlagVisitingTask")
+    Boolean updateLcUploadFlagVisitingTask(@RequestParam("id") Long id) {
+        return eventVisitingTasksService.updateLcUploadFlagVisitingTask(id);
+    }
 }
diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/model/dos/EventVisitingTasksDO.java b/springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/model/dos/EventVisitingTasksDO.java
index 3056ba9..026edea 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/model/dos/EventVisitingTasksDO.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/model/dos/EventVisitingTasksDO.java
@@ -185,5 +185,12 @@
      * 家庭来源
      */
     private String familySource;
-
+    /**
+     * 网格ID
+     */
+    private Long gridId;
+    /**
+     * 是否已经上传浪潮服务器市平台
+     */
+    private Boolean lcUpload;
 }
\ No newline at end of file
diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/EventVisitingTasksService.java b/springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/EventVisitingTasksService.java
index 00fc8f8..28aaa37 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/EventVisitingTasksService.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/EventVisitingTasksService.java
@@ -2,24 +2,15 @@
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.IService;
-import com.panzhihua.common.model.dtos.grid.EventVisitingTasksAddDTO;
-import com.panzhihua.common.model.dtos.grid.EventVisitingTasksDeleteDTO;
-import com.panzhihua.common.model.dtos.grid.EventVisitingTasksEditDTO;
-import com.panzhihua.common.model.dtos.grid.PageEventVisitingTasksDTO;
+import com.panzhihua.common.model.dtos.grid.*;
 import com.panzhihua.common.model.query.visit.EventTasksQuery;
 import com.panzhihua.common.model.query.visit.EventVisitListQuery;
-import com.panzhihua.common.model.vos.IPageVO;
 import com.panzhihua.common.model.vos.R;
 import com.panzhihua.common.model.vos.visit.EventVisitCompleteDTO;
 import com.panzhihua.common.model.vos.visit.EventVisitingTasksDetailsVO;
 import com.panzhihua.common.model.vos.visit.EventVisitingTasksVO;
 import com.panzhihua.service_grid.model.dos.EventVisitingTasksDO;
 
-import javax.crypto.BadPaddingException;
-import javax.crypto.IllegalBlockSizeException;
-import javax.crypto.NoSuchPaddingException;
-import java.security.InvalidKeyException;
-import java.security.NoSuchAlgorithmException;
 import java.util.List;
 
 /**
@@ -27,13 +18,14 @@
  *
  * @author cedoo email:cedoo(a)qq.com
  * @version 1.0
- * @since 1.0
  * @date 2021-05-26
- * */
+ * @since 1.0
+ */
 public interface EventVisitingTasksService extends IService<EventVisitingTasksDO> {
 
     /**
      * 新增重点人群走访记录
+     *
      * @param eventVisitingTasksAddDTO
      * @return 新增结果
      */
@@ -41,6 +33,7 @@
 
     /**
      * 修改重点人群走访记录
+     *
      * @param eventVisitingTasksEditDTO
      * @return 维护结果
      */
@@ -48,6 +41,7 @@
 
     /**
      * 分页查找重点人群走访记录
+     *
      * @param pageEventVisitingTasksDTO
      * @return 维护结果
      */
@@ -55,6 +49,7 @@
 
     /**
      * 删除重点人群走访记录
+     *
      * @param EventVisitingTasksDeleteDTO
      * @return 平台用户信息
      */
@@ -62,6 +57,7 @@
 
     /**
      * 查询重点人群走访记录详细信息
+     *
      * @param id 重点人群走访记录 id
      * @return 查找结果
      */
@@ -70,6 +66,7 @@
 
     /**
      * 后台统计走访任务
+     *
      * @param communityId
      * @return
      */
@@ -77,6 +74,7 @@
 
     /**
      * 走访任务列表
+     *
      * @param query
      * @return
      */
@@ -84,6 +82,7 @@
 
     /**
      * 删除走访任务
+     *
      * @param ids
      * @param communityId
      * @return
@@ -92,6 +91,7 @@
 
     /**
      * 需走访人员列表
+     *
      * @param query
      * @return
      */
@@ -99,6 +99,7 @@
 
     /**
      * app查询走访记录
+     *
      * @param query
      * @return
      */
@@ -106,6 +107,7 @@
 
     /**
      * app 走访详情
+     *
      * @param id
      * @return
      */
@@ -113,6 +115,7 @@
 
     /**
      * 新增
+     *
      * @param ids
      * @param communityId
      * @param userId
@@ -124,6 +127,7 @@
 
     /**
      * 撤销
+     *
      * @param id
      * @return
      */
@@ -131,6 +135,7 @@
 
     /**
      * 恢复
+     *
      * @param id
      * @return
      */
@@ -138,15 +143,36 @@
 
     /**
      * 开始
+     *
      * @param id
      * @return
      */
-    R start(Long id,Long userId);
+    R start(Long id, Long userId);
 
     /**
      * 完成
+     *
      * @param taskCompleteDTO
      * @return
      */
     R complete(EventVisitCompleteDTO taskCompleteDTO);
+
+    /**
+     * description 获取所有未上传到浪潮平台的事件列表
+     *
+     * @return String 事件列表
+     * @author manailin
+     * @date 2021/6/10 17:00
+     */
+    List<LcEventVisitingTasksListDTO> getUnUploadVisitingTask();
+
+    /**
+     * description 更新上传是否成功标识
+     *
+     * @param id 事件主键ID
+     * @return Boolean 上传是否成功
+     * @author manailin
+     * @date 2021/6/10 17:00
+     */
+    Boolean updateLcUploadFlagVisitingTask(Long id);
 }
diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/impl/EventResourceServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/impl/EventResourceServiceImpl.java
index 88b1119..fdcc8e2 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/impl/EventResourceServiceImpl.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/impl/EventResourceServiceImpl.java
@@ -36,6 +36,7 @@
      * @param eventResourceAddDTO
      * @return 新增结果
      */
+    @Override
     public R add(EventResourceAddDTO eventResourceAddDTO){
         EventResourceDO eventResourceDO = new EventResourceDO();
         BeanUtils.copyProperties(eventResourceAddDTO, eventResourceDO);
@@ -51,6 +52,7 @@
      * @param eventResourceEditDTO
      * @return 维护结果
      */
+    @Override
     public R edit(EventResourceEditDTO eventResourceEditDTO){
         EventResourceDO eventResourceDO = new EventResourceDO();
         BeanUtils.copyProperties(eventResourceEditDTO, eventResourceDO);
@@ -66,6 +68,7 @@
      * @param pageEventResourceDTO
      * @return 维护结果
      */
+    @Override
     public R<IPage<EventResourceVO>> query(PageEventResourceDTO pageEventResourceDTO){
         Page page = new Page(1,10);
         if(pageEventResourceDTO.getPageNum()!=null) {
@@ -82,6 +85,7 @@
      * @param EventResourceDeleteDTO
      * @return 平台用户信息
      */
+    @Override
     public R delete(EventResourceDeleteDTO EventResourceDeleteDTO){
         return R.fail();
     }
@@ -91,6 +95,7 @@
      * @param id 事件或者走访中关联的图片音频和视频文件 id
      * @return 查找结果
      */
+    @Override
     public R<EventResourceDetailsVO> eventResourceDetails(Long id){
         EventResourceDO eventResourceDO = eventResourceMapper.selectById(id);
         if(eventResourceDO!=null) {
diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/impl/EventServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/impl/EventServiceImpl.java
index bfc4191..47ac0de 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/impl/EventServiceImpl.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/impl/EventServiceImpl.java
@@ -2199,6 +2199,7 @@
         List<EventDO> unEventList = baseMapper.selectList(
                 new QueryWrapper<EventDO>()
                         .eq("upload", false)
+                        .eq("event_process_status", 2)
         );
         unEventList.forEach(eventDO -> {
             eventDetailsVOList.add(eventDetails(eventDO.getId()).getData());
diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/impl/EventVisitingTasksServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/impl/EventVisitingTasksServiceImpl.java
index 32a10c3..ce29926 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/impl/EventVisitingTasksServiceImpl.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/java/com/panzhihua/service_grid/service/impl/EventVisitingTasksServiceImpl.java
@@ -1,36 +1,36 @@
 package com.panzhihua.service_grid.service.impl;
 
+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.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.panzhihua.common.enums.EventTasksStatusEnum;
-import com.panzhihua.common.model.dtos.grid.EventVisitingTasksAddDTO;
-import com.panzhihua.common.model.dtos.grid.EventVisitingTasksDeleteDTO;
-import com.panzhihua.common.model.dtos.grid.EventVisitingTasksEditDTO;
-import com.panzhihua.common.model.dtos.grid.PageEventVisitingTasksDTO;
+import com.panzhihua.common.model.dtos.grid.*;
 import com.panzhihua.common.model.helper.AESUtil;
 import com.panzhihua.common.model.query.visit.EventTasksQuery;
 import com.panzhihua.common.model.query.visit.EventVisitListQuery;
 import com.panzhihua.common.model.vos.R;
+import com.panzhihua.common.model.vos.grid.EventDetailsVO;
+import com.panzhihua.common.model.vos.grid.EventResourceVO;
 import com.panzhihua.common.model.vos.visit.*;
+import com.panzhihua.common.utlis.CopyUtil;
 import com.panzhihua.common.utlis.StringUtils;
-import com.panzhihua.service_grid.dao.*;
-import com.panzhihua.service_grid.model.dos.*;
+import com.panzhihua.service_grid.dao.EventResourceMapper;
+import com.panzhihua.service_grid.dao.EventVisitingTasksMapper;
+import com.panzhihua.service_grid.model.dos.EventResourceDO;
+import com.panzhihua.service_grid.model.dos.EventVisitingTasksDO;
+import com.panzhihua.service_grid.service.EventResourceService;
 import com.panzhihua.service_grid.service.EventVisitingTasksService;
 import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
-import org.springframework.beans.BeanUtils;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.CollectionUtils;
 
 import javax.annotation.Resource;
-import javax.crypto.BadPaddingException;
-import javax.crypto.IllegalBlockSizeException;
-import javax.crypto.NoSuchPaddingException;
-import java.security.InvalidKeyException;
-import java.security.NoSuchAlgorithmException;
+import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
 import java.util.Map;
@@ -50,18 +50,23 @@
     @Resource
     private EventResourceMapper eventResourceMapper;
 
+    @Resource
+    private EventResourceService eventResourceService;
+
     @Value("${domain.aesKey:}")
     private String aesKey;
+
     /**
      * 新增重点人群走访记录
+     *
      * @param eventVisitingTasksAddDTO
      * @return 新增结果
      */
-    public R add(EventVisitingTasksAddDTO eventVisitingTasksAddDTO){
+    public R add(EventVisitingTasksAddDTO eventVisitingTasksAddDTO) {
         EventVisitingTasksDO eventVisitingTasksDO = new EventVisitingTasksDO();
         BeanUtils.copyProperties(eventVisitingTasksAddDTO, eventVisitingTasksDO);
         eventVisitingTasksDO.setCreateAt(new Date());
-        if(eventVisitingTasksMapper.insert(eventVisitingTasksDO)>0){
+        if (eventVisitingTasksMapper.insert(eventVisitingTasksDO) > 0) {
             return R.ok();
         }
         return R.fail();
@@ -69,14 +74,15 @@
 
     /**
      * 修改重点人群走访记录
+     *
      * @param eventVisitingTasksEditDTO
      * @return 维护结果
      */
-    public R edit(EventVisitingTasksEditDTO eventVisitingTasksEditDTO){
+    public R edit(EventVisitingTasksEditDTO eventVisitingTasksEditDTO) {
         EventVisitingTasksDO eventVisitingTasksDO = new EventVisitingTasksDO();
         BeanUtils.copyProperties(eventVisitingTasksEditDTO, eventVisitingTasksDO);
         //eventVisitingTasksDO.setUpdateAt(new Date());
-        if(eventVisitingTasksMapper.updateById(eventVisitingTasksDO)>0){
+        if (eventVisitingTasksMapper.updateById(eventVisitingTasksDO) > 0) {
             return R.ok();
         }
         return R.fail();
@@ -84,15 +90,16 @@
 
     /**
      * 分页查找重点人群走访记录
+     *
      * @param pageEventVisitingTasksDTO
      * @return 维护结果
      */
-    public R<IPage<EventVisitingTasksVO>> query(PageEventVisitingTasksDTO pageEventVisitingTasksDTO){
-        Page page = new Page(1,10);
-        if(pageEventVisitingTasksDTO.getPageNum()!=null) {
+    public R<IPage<EventVisitingTasksVO>> query(PageEventVisitingTasksDTO pageEventVisitingTasksDTO) {
+        Page page = new Page(1, 10);
+        if (pageEventVisitingTasksDTO.getPageNum() != null) {
             page.setCurrent(pageEventVisitingTasksDTO.getPageNum());
         }
-        if(pageEventVisitingTasksDTO.getPageSize()!=null) {
+        if (pageEventVisitingTasksDTO.getPageSize() != null) {
             page.setSize(pageEventVisitingTasksDTO.getPageSize());
         }
         return R.ok();
@@ -100,26 +107,28 @@
 
     /**
      * 删除重点人群走访记录
+     *
      * @param EventVisitingTasksDeleteDTO
      * @return 平台用户信息
      */
-    public R delete(EventVisitingTasksDeleteDTO EventVisitingTasksDeleteDTO){
+    public R delete(EventVisitingTasksDeleteDTO EventVisitingTasksDeleteDTO) {
         return R.fail();
     }
 
     /**
      * 查询重点人群走访记录详细信息
+     *
      * @param id 重点人群走访记录 id
      * @return 查找结果
      */
-    public R<EventVisitingTasksDetailsVO> eventVisitingTasksDetails(Long id){
+    public R<EventVisitingTasksDetailsVO> eventVisitingTasksDetails(Long id) {
         EventVisitingTasksDO eventVisitingTasksDO = eventVisitingTasksMapper.selectById(id);
-        if(eventVisitingTasksDO!=null) {
+        if (eventVisitingTasksDO != null) {
             EventVisitingTasksDetailsVO eventVisitingTasksDetailsVO = new EventVisitingTasksDetailsVO();
             BeanUtils.copyProperties(eventVisitingTasksDO, eventVisitingTasksDetailsVO);
-            eventVisitingTasksDetailsVO.setImgList(eventResourceMapper.findListByRefId(eventVisitingTasksDO.getId(),2,1));
-            eventVisitingTasksDetailsVO.setVosList(eventResourceMapper.findListByRefId(eventVisitingTasksDO.getId(),2,2));
-            eventVisitingTasksDetailsVO.setVideoList(eventResourceMapper.findListByRefId(eventVisitingTasksDO.getId(),2,3));
+            eventVisitingTasksDetailsVO.setImgList(eventResourceMapper.findListByRefId(eventVisitingTasksDO.getId(), 2, 1));
+            eventVisitingTasksDetailsVO.setVosList(eventResourceMapper.findListByRefId(eventVisitingTasksDO.getId(), 2, 2));
+            eventVisitingTasksDetailsVO.setVideoList(eventResourceMapper.findListByRefId(eventVisitingTasksDO.getId(), 2, 3));
             return R.ok(eventVisitingTasksDetailsVO);
         }
         return R.fail();
@@ -128,7 +137,7 @@
     @Override
     public R count(Long communityId) {
 
-        Map<String,Long> countMap = eventVisitingTasksMapper.count(communityId);
+        Map<String, Long> countMap = eventVisitingTasksMapper.count(communityId);
         EventVisitCountVO eventVisitCountVO = new EventVisitCountVO();
         eventVisitCountVO.setVisit(countMap.get("visit"));
         eventVisitCountVO.setVisited(countMap.get("visited"));
@@ -139,7 +148,7 @@
     @Override
     public R taskList(EventTasksQuery query) {
 
-        IPage<EventVisitingTasksVO> page = eventVisitingTasksMapper.findListByPage(new Page(query.getPageNum(),query.getPageSize()),query);
+        IPage<EventVisitingTasksVO> page = eventVisitingTasksMapper.findListByPage(new Page(query.getPageNum(), query.getPageSize()), query);
 
         return R.ok(page);
     }
@@ -148,12 +157,12 @@
     @Override
     public R delete(String ids, Long communityId) {
         String[] idarr = ids.split(",");
-        for(String id:idarr){
-            if(StringUtils.isEmpty(id)){
+        for (String id : idarr) {
+            if (StringUtils.isEmpty(id)) {
                 continue;
             }
-            EventVisitingTasksDO eventVisitingTasksDO = eventVisitingTasksMapper.selectOne(new QueryWrapper<EventVisitingTasksDO>().eq("id",Long.valueOf(id)).eq("grid_member_community",communityId));
-            if(eventVisitingTasksDO == null){
+            EventVisitingTasksDO eventVisitingTasksDO = eventVisitingTasksMapper.selectOne(new QueryWrapper<EventVisitingTasksDO>().eq("id", Long.valueOf(id)).eq("grid_member_community", communityId));
+            if (eventVisitingTasksDO == null) {
                 throw new RuntimeException("无权限");
             }
             eventVisitingTasksMapper.deleteById(Long.valueOf(id));
@@ -163,20 +172,20 @@
 
     @Override
     public R visitorList(EventVisitListQuery query) {
-        IPage<EventVisitListVO> page = eventVisitingTasksMapper.visitorList(new Page(query.getPageNum(),query.getPageSize()),query);
+        IPage<EventVisitListVO> page = eventVisitingTasksMapper.visitorList(new Page(query.getPageNum(), query.getPageSize()), query);
         return R.ok(page);
     }
 
     @Override
     public R list(EventTasksQuery query) {
-        IPage<AppVisitTasksVO> page = eventVisitingTasksMapper.list(new Page(query.getPageNum(),query.getPageSize()),query);
+        IPage<AppVisitTasksVO> page = eventVisitingTasksMapper.list(new Page(query.getPageNum(), query.getPageSize()), query);
         return R.ok(page);
     }
 
     @Override
     public R detail(Long id) throws Exception {
         EventVisitingTasksDO eventVisitingTasksDO = eventVisitingTasksMapper.selectById(id);
-        if(eventVisitingTasksDO!=null) {
+        if (eventVisitingTasksDO != null) {
             EventVisitingTasksDetailsVO eventVisitingTasksDetailsVO = new EventVisitingTasksDetailsVO();
             BeanUtils.copyProperties(eventVisitingTasksDO, eventVisitingTasksDetailsVO);
             ;
@@ -189,16 +198,16 @@
     @Transactional(rollbackFor = Exception.class)
     @Override
     public R add(String ids, Long communityId, Long userId) {
-        Map<String,Object> map = eventVisitingTasksMapper.findUserByCommunityId(communityId,6);
-        if(CollectionUtils.isEmpty(map)){
+        Map<String, Object> map = eventVisitingTasksMapper.findUserByCommunityId(communityId, 6);
+        if (CollectionUtils.isEmpty(map)) {
             return R.fail("网格员不存在");
         }
         String[] id = ids.split(",");
-        for(String idstr:id){
-            if(StringUtils.isEmpty(idstr)){
+        for (String idstr : id) {
+            if (StringUtils.isEmpty(idstr)) {
                 continue;
             }
-            addVisitingTask(Long.valueOf(idstr),map,communityId,userId);
+            addVisitingTask(Long.valueOf(idstr), map, communityId, userId);
         }
 
         return R.ok();
@@ -206,22 +215,21 @@
 
     @Override
     public List<EventVisitingTasksVO> exportTaskList(EventTasksQuery query) {
-        IPage<EventVisitingTasksVO> page = eventVisitingTasksMapper.findListByPage(new Page(query.getPageNum(),query.getPageSize()),query);
+        IPage<EventVisitingTasksVO> page = eventVisitingTasksMapper.findListByPage(new Page(query.getPageNum(), query.getPageSize()), query);
 
         return page.getRecords();
     }
 
 
-
-    private void addVisitingTask(Long id, Map<String, Object> gridMap,Long communityId,Long userId) {
+    private void addVisitingTask(Long id, Map<String, Object> gridMap, Long communityId, Long userId) {
 
         Integer count = eventVisitingTasksMapper.countNoneComplete(id);
-        if(count > 0){
+        if (count > 0) {
             return;
         }
-        Map<String,Object> map = eventVisitingTasksMapper.findPopulationById(id);
-        if(CollectionUtils.isEmpty(map)){
-            return ;
+        Map<String, Object> map = eventVisitingTasksMapper.findPopulationById(id);
+        if (CollectionUtils.isEmpty(map)) {
+            return;
         }
         EventVisitingTasksDO visitingTasksDO = new EventVisitingTasksDO();
 //        visitingTasksDO.setGridMemberStreet(Long.valueOf(gridMap.get("street_id").toString()));
@@ -232,14 +240,14 @@
         visitingTasksDO.setVisiterId(Long.valueOf(map.get("id").toString()));
         visitingTasksDO.setVisiterName(map.get("name").toString());
         visitingTasksDO.setVisiterSex(Integer.valueOf(map.get("sex").toString()));
-        visitingTasksDO.setVisiterTele(map.get("phone") == null?"":map.get("phone").toString());
+        visitingTasksDO.setVisiterTele(map.get("phone") == null ? "" : map.get("phone").toString());
         StringBuilder sb = new StringBuilder();
         sb.append(map.get("address")).append(map.get("road")).append(map.get("door_no")).append(map.get("floor")).append("栋").append(map.get("unit_no")).append("单元").append(map.get("house_no")).append("号");
         visitingTasksDO.setVisiterAddress(sb.toString());
         visitingTasksDO.setVisiterType(0);
         visitingTasksDO.setActOpara(0);
-        if(map.get("lat") != null && map.get("lng") != null){
-            visitingTasksDO.setHappentLatLng(map.get("lat")+"-"+map.get("lng"));
+        if (map.get("lat") != null && map.get("lng") != null) {
+            visitingTasksDO.setHappentLatLng(map.get("lat") + "-" + map.get("lng"));
         }
         visitingTasksDO.setEventStatus(EventTasksStatusEnum.DZF.getCode());
         visitingTasksDO.setReporting(0);
@@ -255,11 +263,11 @@
     public R cancel(Long id) {
 
         EventVisitingTasksDO eventVisitingTasksDO = eventVisitingTasksMapper.selectById(id);
-        if(eventVisitingTasksDO == null || eventVisitingTasksDO.getEventStatus() != EventTasksStatusEnum.DZF.getCode()){
+        if (eventVisitingTasksDO == null || eventVisitingTasksDO.getEventStatus() != EventTasksStatusEnum.DZF.getCode()) {
             return R.fail("当前状态不可撤销");
         }
-        int rt = eventVisitingTasksMapper.cancel(id,EventTasksStatusEnum.YCX.getCode());
-        if(rt > 0){
+        int rt = eventVisitingTasksMapper.cancel(id, EventTasksStatusEnum.YCX.getCode());
+        if (rt > 0) {
             return R.ok();
         }
         return R.fail();
@@ -270,11 +278,11 @@
     public R reset(Long id) {
 
         EventVisitingTasksDO eventVisitingTasksDO = eventVisitingTasksMapper.selectById(id);
-        if(eventVisitingTasksDO == null || eventVisitingTasksDO.getEventStatus() != EventTasksStatusEnum.YCX.getCode()){
+        if (eventVisitingTasksDO == null || eventVisitingTasksDO.getEventStatus() != EventTasksStatusEnum.YCX.getCode()) {
             return R.fail("当前状态不可恢复");
         }
-        int rt = eventVisitingTasksMapper.updateEventStatus(id,EventTasksStatusEnum.DZF.getCode());
-        if(rt > 0){
+        int rt = eventVisitingTasksMapper.updateEventStatus(id, EventTasksStatusEnum.DZF.getCode());
+        if (rt > 0) {
             return R.ok();
         }
         return R.fail();
@@ -282,22 +290,22 @@
 
     @Transactional(rollbackFor = Exception.class)
     @Override
-    public synchronized R start(Long id,Long userId) {
+    public synchronized R start(Long id, Long userId) {
         EventVisitingTasksDO eventVisitingTasksDO = eventVisitingTasksMapper.selectById(id);
-        if(eventVisitingTasksDO == null || eventVisitingTasksDO.getEventStatus() != EventTasksStatusEnum.DZF.getCode()){
+        if (eventVisitingTasksDO == null || eventVisitingTasksDO.getEventStatus() != EventTasksStatusEnum.DZF.getCode()) {
             return R.fail("当前状态不可开始走访");
         }
-        Map<String,Object> map = eventVisitingTasksMapper.findUserById(userId);
+        Map<String, Object> map = eventVisitingTasksMapper.findUserById(userId);
         EventVisitingTasksDO start = new EventVisitingTasksDO();
         start.setId(id);
         start.setGridMemberStreet(Long.valueOf(map.get("street_id").toString()));
         start.setGridMemberCommunity(Long.valueOf(map.get("community_id").toString()));
         start.setGridMember(Long.valueOf(map.get("user_id").toString()));
         start.setGridMemberName(map.get("name").toString());
-        start.setGridMenberTele(map.get("phone") ==null?"":map.get("phone").toString());
+        start.setGridMenberTele(map.get("phone") == null ? "" : map.get("phone").toString());
         start.setEventStatus(EventTasksStatusEnum.JXZ.getCode());
         int rt = eventVisitingTasksMapper.start(start);
-        if(rt > 0){
+        if (rt > 0) {
             return R.ok();
         }
         return R.fail();
@@ -307,38 +315,100 @@
     @Override
     public R complete(EventVisitCompleteDTO taskCompleteDTO) {
         EventVisitingTasksDO eventVisitingTasksDO = eventVisitingTasksMapper.selectById(taskCompleteDTO.getId());
-        if(eventVisitingTasksDO == null || eventVisitingTasksDO.getEventStatus() != EventTasksStatusEnum.JXZ.getCode()){
+        if (eventVisitingTasksDO == null || eventVisitingTasksDO.getEventStatus() != EventTasksStatusEnum.JXZ.getCode()) {
             return R.fail("当前状态不可完成走访");
         }
-        if(taskCompleteDTO.getException().intValue() == 0){
+        if (taskCompleteDTO.getException().intValue() == 0) {
             taskCompleteDTO.setEventStatus(EventTasksStatusEnum.ZJJJ.getCode());
-        }else{
+        } else {
             taskCompleteDTO.setEventStatus(EventTasksStatusEnum.YC.getCode());
         }
 
-        if(!CollectionUtils.isEmpty(taskCompleteDTO.getImgList())){
-            taskCompleteDTO.getImgList().forEach(e->{
-                createResource(eventVisitingTasksDO.getId(),eventVisitingTasksDO.getDellUserId(),2,1,e);
+        if (!CollectionUtils.isEmpty(taskCompleteDTO.getImgList())) {
+            taskCompleteDTO.getImgList().forEach(e -> {
+                createResource(eventVisitingTasksDO.getId(), eventVisitingTasksDO.getDellUserId(), 2, 1, e);
             });
         }
-        if(!CollectionUtils.isEmpty(taskCompleteDTO.getVosList())){
-            taskCompleteDTO.getVosList().forEach(e->{
-                createResource(eventVisitingTasksDO.getId(),eventVisitingTasksDO.getDellUserId(),2,2,e);
+        if (!CollectionUtils.isEmpty(taskCompleteDTO.getVosList())) {
+            taskCompleteDTO.getVosList().forEach(e -> {
+                createResource(eventVisitingTasksDO.getId(), eventVisitingTasksDO.getDellUserId(), 2, 2, e);
             });
         }
-        if(!CollectionUtils.isEmpty(taskCompleteDTO.getVideoList())){
-            taskCompleteDTO.getVosList().forEach(e->{
-                createResource(eventVisitingTasksDO.getId(),eventVisitingTasksDO.getDellUserId(),2,3,e);
+        if (!CollectionUtils.isEmpty(taskCompleteDTO.getVideoList())) {
+            taskCompleteDTO.getVosList().forEach(e -> {
+                createResource(eventVisitingTasksDO.getId(), eventVisitingTasksDO.getDellUserId(), 2, 3, e);
             });
         }
         int rt = eventVisitingTasksMapper.complete(taskCompleteDTO);
-        if(rt > 0){
+        if (rt > 0) {
             return R.ok();
         }
         return R.fail();
     }
 
-    private void createResource(Long id, Long dellUserId, int classification, int type,String url) {
+    @Override
+    public List<LcEventVisitingTasksListDTO> getUnUploadVisitingTask() {
+        List<LcEventVisitingTasksListDTO> lcEventVisitingTasksList =new ArrayList<>();
+        List<EventVisitingTasksDO> eventVisitingTasksList = baseMapper.selectList(
+                new QueryWrapper<EventVisitingTasksDO>()
+                        .eq("lc_upload", false)
+                        .eq("event_status",2)
+        );
+        lcEventVisitingTasksList= CopyUtil.beanCopyList(eventVisitingTasksList,LcEventVisitingTasksListDTO.class);
+        lcEventVisitingTasksList.forEach(visitingTasks -> {
+            addVisitingTasksFile(visitingTasks);
+        });
+        return lcEventVisitingTasksList;
+    }
+
+    private LcEventVisitingTasksListDTO addVisitingTasksFile(LcEventVisitingTasksListDTO visitingTasks) {
+        //查询事件关联附件
+        List<EventResourceDO> eventResourceDOList =
+                eventResourceService.getBaseMapper().selectList(new LambdaQueryWrapper<EventResourceDO>()
+                        .eq(EventResourceDO::getClassification, 2)
+                        .eq(EventResourceDO::getRefId, visitingTasks.getId())
+                );
+        List<EventResourceVO> picList = new ArrayList<>();
+        List<EventResourceVO> audioList = new ArrayList<>();
+        List<EventResourceVO> videoList = new ArrayList<>();
+        eventResourceDOList.forEach(eventResourceDO -> {
+            switch (eventResourceDO.getType()) {
+                case 1:
+                    EventResourceVO picEventResourceVO = new EventResourceVO();
+                    BeanUtils.copyProperties(eventResourceDO, picEventResourceVO);
+                    picList.add(picEventResourceVO);
+                    break;
+                case 2:
+                    EventResourceVO audioResourceVO = new EventResourceVO();
+                    BeanUtils.copyProperties(eventResourceDO, audioResourceVO);
+                    audioList.add(audioResourceVO);
+                    break;
+                case 3:
+                    EventResourceVO videoResourceVO = new EventResourceVO();
+                    BeanUtils.copyProperties(eventResourceDO, videoResourceVO);
+                    videoList.add(videoResourceVO);
+                    break;
+            }
+        });
+        visitingTasks.setAudios(audioList);
+        visitingTasks.setPics(picList);
+        visitingTasks.setVideos(videoList);
+        return visitingTasks;
+    }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public Boolean updateLcUploadFlagVisitingTask(Long id) {
+        EventVisitingTasksDO eventVisitingTasksDO = baseMapper.selectById(id);
+        eventVisitingTasksDO.setLcUpload(true);
+        int flag = baseMapper.updateById(eventVisitingTasksDO);
+        if (flag > 0) {
+            return true;
+        }
+        return false;
+    }
+
+    private void createResource(Long id, Long dellUserId, int classification, int type, String url) {
         EventResourceDO eventResourceDO = new EventResourceDO();
         eventResourceDO.setRefId(id);
         eventResourceDO.setClassification(classification);
diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_grid/src/test/java/com/panzhihua/service_grid/service/impl/EventVisitingTasksServiceImplTest.java b/springcloud_k8s_panzhihuazhihuishequ/service_grid/src/test/java/com/panzhihua/service_grid/service/impl/EventVisitingTasksServiceImplTest.java
new file mode 100644
index 0000000..ad6dbe1
--- /dev/null
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_grid/src/test/java/com/panzhihua/service_grid/service/impl/EventVisitingTasksServiceImplTest.java
@@ -0,0 +1,32 @@
+package com.panzhihua.service_grid.service.impl;
+
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.serializer.SerializerFeature;
+import com.panzhihua.common.model.dtos.grid.LcEventVisitingTasksListDTO;
+import com.panzhihua.service_grid.ServiceGridApplication;
+import com.panzhihua.service_grid.service.EventVisitingTasksService;
+import lombok.extern.slf4j.Slf4j;
+import org.junit.jupiter.api.Test;
+import org.springframework.boot.test.context.SpringBootTest;
+
+import javax.annotation.Resource;
+
+import java.util.List;
+
+import static org.junit.jupiter.api.Assertions.*;
+
+@Slf4j
+@SpringBootTest(classes = ServiceGridApplication.class)
+class EventVisitingTasksServiceImplTest {
+
+    @Resource
+    private EventVisitingTasksService eventVisitingTasksService;
+
+    @Test
+    void getUnUploadVisitingTask() {
+        List<LcEventVisitingTasksListDTO> data = eventVisitingTasksService.getUnUploadVisitingTask();
+        String pretty = JSONArray.toJSONString(data, SerializerFeature.PrettyFormat, SerializerFeature.WriteMapNullValue,
+                SerializerFeature.WriteDateUseDateFormat);
+        log.info(pretty);
+    }
+}
\ No newline at end of file
diff --git a/springcloud_k8s_panzhihuazhihuishequ/timejob/src/main/java/com/panzhihua/timejob/jobhandler/LangChaoEventUploadJobHandler.java b/springcloud_k8s_panzhihuazhihuishequ/timejob/src/main/java/com/panzhihua/timejob/jobhandler/LangChaoEventUploadJobHandler.java
index bb176d4..e85da02 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/timejob/src/main/java/com/panzhihua/timejob/jobhandler/LangChaoEventUploadJobHandler.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/timejob/src/main/java/com/panzhihua/timejob/jobhandler/LangChaoEventUploadJobHandler.java
@@ -51,4 +51,17 @@
         return ReturnT.SUCCESS;
     }
 
+    /**
+     * description 自动上传重点人员和流动人员走访记录
+     *
+     * @author manailin
+     * @date 2021/6/10 17:00
+     */
+    @XxlJob("automationUploadVisitRecord")
+    public ReturnT<String> automationUploadVisitRecord(String param) {
+        log.info("向浪潮服务器自动上传重点人员和流动人员走访记录开始");
+        ApiServiceFeign.automationUploadVisitRecord();
+        log.info("向浪潮服务器自动上传重点人员和流动人员走访记录完成");
+        return ReturnT.SUCCESS;
+    }
 }

--
Gitblit v1.7.1