suntianwu 3 lat temu
rodzic
commit
44058b64b1
63 zmienionych plików z 1677 dodań i 33 usunięć
  1. BIN
      lib/AIMCFaceMonitor.jar
  2. 7 0
      pom.xml
  3. 1 1
      src/main/java/com/iden/IdenSpringStart.java
  4. 2 3
      src/main/java/com/iden/bms/controller/SysUserController.java
  5. 26 0
      src/main/java/com/iden/bms/face/FaceIdenSchedule.java
  6. 1 1
      src/main/java/com/iden/bms/Init/DictInit.java
  7. 1 1
      src/main/java/com/iden/bms/service/SysUserService.java
  8. 110 0
      src/main/java/com/iden/common/entity/IdenCamera.java
  9. 105 0
      src/main/java/com/iden/common/entity/IdenCommunity.java
  10. 85 0
      src/main/java/com/iden/common/entity/IdenCrowd.java
  11. 95 0
      src/main/java/com/iden/common/entity/IdenImageStore.java
  12. 145 0
      src/main/java/com/iden/common/entity/IdenPerson.java
  13. 48 0
      src/main/java/com/iden/common/entity/IdenPersonCrowdRef.java
  14. 3 1
      src/main/java/com/iden/common/entity/IdenSysRole.java
  15. 8 4
      src/main/java/com/iden/common/entity/IdenSysUser.java
  16. 80 0
      src/main/java/com/iden/common/entity/IdenWarningEveningComeSta.java
  17. 65 0
      src/main/java/com/iden/common/entity/IdenWarningKeynoteSta.java
  18. 80 0
      src/main/java/com/iden/common/entity/IdenWarningPermanentSta.java
  19. 80 0
      src/main/java/com/iden/common/entity/IdenWarningStrangerSta.java
  20. 10 21
      src/main/java/com/iden/common/enums/UserRoleEnum.java
  21. 15 0
      src/main/java/com/iden/common/mapper/IdenCameraMapper.java
  22. 15 0
      src/main/java/com/iden/common/mapper/IdenCommunityMapper.java
  23. 15 0
      src/main/java/com/iden/common/mapper/IdenCrowdMapper.java
  24. 15 0
      src/main/java/com/iden/common/mapper/IdenImageStoreMapper.java
  25. 15 0
      src/main/java/com/iden/common/mapper/IdenPersonCrowdRefMapper.java
  26. 15 0
      src/main/java/com/iden/common/mapper/IdenPersonMapper.java
  27. 15 0
      src/main/java/com/iden/common/mapper/IdenWarningEveningComeStaMapper.java
  28. 15 0
      src/main/java/com/iden/common/mapper/IdenWarningKeynoteStaMapper.java
  29. 15 0
      src/main/java/com/iden/common/mapper/IdenWarningPermanentStaMapper.java
  30. 15 0
      src/main/java/com/iden/common/mapper/IdenWarningStrangerStaMapper.java
  31. 14 0
      src/main/java/com/iden/common/service/IdenCameraService.java
  32. 14 0
      src/main/java/com/iden/common/service/IdenCommunityService.java
  33. 14 0
      src/main/java/com/iden/common/service/IdenCrowdService.java
  34. 14 0
      src/main/java/com/iden/common/service/IdenImageStoreService.java
  35. 14 0
      src/main/java/com/iden/common/service/IdenPersonCrowdRefService.java
  36. 14 0
      src/main/java/com/iden/common/service/IdenPersonService.java
  37. 14 0
      src/main/java/com/iden/common/service/IdenWarningEveningComeStaService.java
  38. 14 0
      src/main/java/com/iden/common/service/IdenWarningKeynoteStaService.java
  39. 14 0
      src/main/java/com/iden/common/service/IdenWarningPermanentStaService.java
  40. 14 0
      src/main/java/com/iden/common/service/IdenWarningStrangerStaService.java
  41. 18 0
      src/main/java/com/iden/common/service/impl/IdenCameraServiceImpl.java
  42. 18 0
      src/main/java/com/iden/common/service/impl/IdenCommunityServiceImpl.java
  43. 18 0
      src/main/java/com/iden/common/service/impl/IdenCrowdServiceImpl.java
  44. 18 0
      src/main/java/com/iden/common/service/impl/IdenImageStoreServiceImpl.java
  45. 18 0
      src/main/java/com/iden/common/service/impl/IdenPersonCrowdRefServiceImpl.java
  46. 18 0
      src/main/java/com/iden/common/service/impl/IdenPersonServiceImpl.java
  47. 18 0
      src/main/java/com/iden/common/service/impl/IdenWarningEveningComeStaServiceImpl.java
  48. 18 0
      src/main/java/com/iden/common/service/impl/IdenWarningKeynoteStaServiceImpl.java
  49. 18 0
      src/main/java/com/iden/common/service/impl/IdenWarningPermanentStaServiceImpl.java
  50. 18 0
      src/main/java/com/iden/common/service/impl/IdenWarningStrangerStaServiceImpl.java
  51. 58 0
      src/main/java/com/iden/common/vo/SysRoleVO.java
  52. 3 1
      src/main/java/com/iden/common/vo/SysUserVO.java
  53. 6 0
      src/main/resources/mybatis/IdenCameraMapper.xml
  54. 6 0
      src/main/resources/mybatis/IdenCommunityMapper.xml
  55. 6 0
      src/main/resources/mybatis/IdenCrowdMapper.xml
  56. 6 0
      src/main/resources/mybatis/IdenImageStoreMapper.xml
  57. 6 0
      src/main/resources/mybatis/IdenPersonCrowdRefMapper.xml
  58. 6 0
      src/main/resources/mybatis/IdenPersonMapper.xml
  59. 6 0
      src/main/resources/mybatis/IdenWarningEveningComeStaMapper.xml
  60. 6 0
      src/main/resources/mybatis/IdenWarningKeynoteStaMapper.xml
  61. 6 0
      src/main/resources/mybatis/IdenWarningPermanentStaMapper.xml
  62. 6 0
      src/main/resources/mybatis/IdenWarningStrangerStaMapper.xml
  63. 134 0
      src/test/java/com/iden/FaceTest.java

BIN
lib/AIMCFaceMonitor.jar


+ 7 - 0
pom.xml

@@ -262,6 +262,13 @@
             <artifactId>fastjson</artifactId>
             <version>1.2.66</version>
         </dependency>
+        <dependency>
+            <groupId>AIMCFaceMonitor</groupId>
+            <artifactId>AIMCFaceMonitor</artifactId>
+            <version>1.0</version>
+            <scope>system</scope>
+            <systemPath>${project.basedir}/lib/AIMCFaceMonitor.jar</systemPath>
+        </dependency>
     </dependencies>
 
     <build>

+ 1 - 1
src/main/java/com/iden/IdenSpringStart.java

@@ -1,6 +1,6 @@
 package com.iden;
 
-import com.iden.bms.Init.DictInit;
+import com.iden.bms.init.DictInit;
 import org.mybatis.spring.annotation.MapperScan;
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;

+ 2 - 3
src/main/java/com/iden/bms/controller/SysUserController.java

@@ -107,9 +107,8 @@ public class SysUserController {
 
     @GetMapping("/getSysUserInfo/{id}")
     @ApiOperation(value = "系统用户详情")
-    public Result<SysUserVO> getSysUserInfo(HttpServletRequest request, @RequestHeader("token") String token, @PathVariable("chambId") Long chambId){
-        UserLogindConvertVO loginUser = WebPageUtils.getCurrentLoginedUser(request);
-        SysUserVO orderInfo = this.sysUserService.getSysUserById(chambId,loginUser);
+    public Result<SysUserVO> getSysUserInfo(HttpServletRequest request, @RequestHeader("token") String token, @PathVariable("id") Long id){
+        SysUserVO orderInfo = this.sysUserService.getSysUserById(id);
         return  Result.success("查询成功!",orderInfo);
     }
 

+ 26 - 0
src/main/java/com/iden/bms/face/FaceIdenSchedule.java

@@ -0,0 +1,26 @@
+package com.iden.bms.face;
+
+import org.springframework.context.annotation.Configuration;
+import org.springframework.scheduling.annotation.Async;
+import org.springframework.scheduling.annotation.EnableAsync;
+import org.springframework.scheduling.annotation.EnableScheduling;
+import org.springframework.scheduling.annotation.Scheduled;
+
+/**
+ * 定时读取目录下图片,调用人脸识别引擎,把特征码入库
+ */
+@Configuration
+@EnableScheduling
+@EnableAsync
+public class FaceIdenSchedule {
+    @Async
+    @Scheduled(cron = "0 0/10 0 * * ?")
+    public void updateComputeTrafficToFinish() {
+        try {
+            //大于两天的话单日志默认已计算
+            koalaOutCallDao.updateComputeTrafficToFinish();
+        } catch (Exception e) {
+            e.getMessage();
+        }
+    }
+}

+ 1 - 1
src/main/java/com/iden/bms/Init/DictInit.java

@@ -1,4 +1,4 @@
-package com.iden.bms.Init;
+package com.iden.bms.init;
 
 
 

+ 1 - 1
src/main/java/com/iden/bms/service/SysUserService.java

@@ -105,7 +105,7 @@ public class SysUserService {
      * @param id
      * @return
      */
-    public SysUserVO getSysUserById(Long id, UserLogindConvertVO loginUser){
+    public SysUserVO getSysUserById(Long id){
         IdenSysUser idenSysUser = this.idenSysUserService.getById(id);
         if (idenSysUser!=null){
             SysUserVO resVO = new SysUserVO();

+ 110 - 0
src/main/java/com/iden/common/entity/IdenCamera.java

@@ -0,0 +1,110 @@
+package com.iden.common.entity;
+
+import java.util.Date;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+
+import java.time.LocalDateTime;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+
+import java.io.Serializable;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+/**
+ * 摄像头表(IdenCamera)实体类
+ *
+ * @author makejava
+ * @since 2021-12-22 17:23:43
+ */
+
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@TableName("iden_camera")
+@ApiModel(value = "摄像头表", description = "")
+public class IdenCamera implements Serializable {
+    private static final long serialVersionUID = -55010922380921938L;
+
+    @TableId(value = "ID", type = IdType.AUTO)
+    private Long id;
+
+
+    @ApiModelProperty("设备编号")
+    @TableField("CODE")
+    private String code;
+
+
+    @ApiModelProperty("设备名称")
+    @TableField("NAME")
+    private String name;
+
+
+    @ApiModelProperty("IP地址")
+    @TableField("IP")
+    private String ip;
+
+
+    @ApiModelProperty("所属区域")
+    @TableField("DISTRICT")
+    private String district;
+
+
+    @ApiModelProperty("所属街道")
+    @TableField("SUBDISTRICT")
+    private String subdistrict;
+
+
+    @ApiModelProperty("所属小区id")
+    @TableField("COMMUNITY_ID")
+    private Long communityId;
+
+
+    @ApiModelProperty("位置")
+    @TableField("PLACE")
+    private String place;
+
+
+    @ApiModelProperty("经度")
+    @TableField("LONGITUDE")
+    private Double longitude;
+
+
+    @ApiModelProperty("纬度")
+    @TableField("LATITUDE")
+    private Double latitude;
+
+
+    @ApiModelProperty("状态,0未连接,1已连接")
+    @TableField("STATUS")
+    private String status;
+
+
+    @ApiModelProperty("类型:1摄像机,2抓拍设备")
+    @TableField("TYPE")
+    private String type;
+
+
+    @ApiModelProperty("备注")
+    @TableField("REMARK")
+    private String remark;
+
+
+    @ApiModelProperty("createTime")
+    @TableField("CREATE_TIME")
+    private Date createTime;
+
+
+    @ApiModelProperty("modifyTime")
+    @TableField("MODIFY_TIME")
+    private Date modifyTime;
+
+
+}

+ 105 - 0
src/main/java/com/iden/common/entity/IdenCommunity.java

@@ -0,0 +1,105 @@
+package com.iden.common.entity;
+
+import java.util.Date;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+
+import java.time.LocalDateTime;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+
+import java.io.Serializable;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+/**
+ * 小区表(IdenCommunity)实体类
+ *
+ * @author makejava
+ * @since 2021-12-22 17:23:45
+ */
+
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@TableName("iden_community")
+@ApiModel(value = "小区表", description = "")
+public class IdenCommunity implements Serializable {
+    private static final long serialVersionUID = 731388814628767585L;
+
+    @TableId(value = "ID", type = IdType.AUTO)
+    private Long id;
+
+
+    @ApiModelProperty("小区编号")
+    @TableField("CODE")
+    private String code;
+
+
+    @ApiModelProperty("小区名称")
+    @TableField("NAME")
+    private String name;
+
+
+    @ApiModelProperty("所属省")
+    @TableField("PROVINCE")
+    private String province;
+
+
+    @ApiModelProperty("所属市")
+    @TableField("CITY")
+    private String city;
+
+
+    @ApiModelProperty("所属区域")
+    @TableField("DISTRICT")
+    private String district;
+
+
+    @ApiModelProperty("所属街道")
+    @TableField("SUBDISTRICT")
+    private String subdistrict;
+
+
+    @ApiModelProperty("经度")
+    @TableField("LONGITUDE")
+    private Double longitude;
+
+
+    @ApiModelProperty("纬度")
+    @TableField("LATITUDE")
+    private Double latitude;
+
+
+    @ApiModelProperty("负责民警")
+    @TableField("POLICEMAN")
+    private String policeman;
+
+
+    @ApiModelProperty("电话")
+    @TableField("PHONE")
+    private String phone;
+
+
+    @ApiModelProperty("备注")
+    @TableField("REMARK")
+    private String remark;
+
+
+    @ApiModelProperty("createTime")
+    @TableField("CREATE_TIME")
+    private Date createTime;
+
+
+    @ApiModelProperty("modifyTime")
+    @TableField("MODIFY_TIME")
+    private Date modifyTime;
+
+
+}

+ 85 - 0
src/main/java/com/iden/common/entity/IdenCrowd.java

@@ -0,0 +1,85 @@
+package com.iden.common.entity;
+
+import java.util.Date;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+
+import java.time.LocalDateTime;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+
+import java.io.Serializable;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+/**
+ * 人群表(IdenCrowd)实体类
+ *
+ * @author makejava
+ * @since 2021-12-22 17:23:46
+ */
+
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@TableName("iden_crowd")
+@ApiModel(value = "人群表", description = "")
+public class IdenCrowd implements Serializable {
+    private static final long serialVersionUID = -91650038520335504L;
+
+    @TableId(value = "ID", type = IdType.AUTO)
+    private Long id;
+
+
+    @ApiModelProperty("人群编号")
+    @TableField("CODE")
+    private String code;
+
+
+    @ApiModelProperty("人群名称")
+    @TableField("NAME")
+    private String name;
+
+
+    @ApiModelProperty("人群数量")
+    @TableField("QUANTITY")
+    private Integer quantity;
+
+
+    @ApiModelProperty("更新周期,1每天,2每月")
+    @TableField("UPDATE_CYCLE")
+    private String updateCycle;
+
+
+    @ApiModelProperty("备注")
+    @TableField("REMARK")
+    private String remark;
+
+
+    @ApiModelProperty("数据日期开始")
+    @TableField("DATA_DATE_BEGIN")
+    private Date dataDateBegin;
+
+
+    @ApiModelProperty("数据日期结束")
+    @TableField("DATA_DATE_END")
+    private Date dataDateEnd;
+
+
+    @ApiModelProperty("createTime")
+    @TableField("CREATE_TIME")
+    private Date createTime;
+
+
+    @ApiModelProperty("modifyTime")
+    @TableField("MODIFY_TIME")
+    private Date modifyTime;
+
+
+}

+ 95 - 0
src/main/java/com/iden/common/entity/IdenImageStore.java

@@ -0,0 +1,95 @@
+package com.iden.common.entity;
+
+import java.util.Date;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+
+import java.time.LocalDateTime;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+
+import java.io.Serializable;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+/**
+ * 图库表(IdenImageStore)实体类
+ *
+ * @author makejava
+ * @since 2021-12-22 17:23:46
+ */
+
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@TableName("iden_image_store")
+@ApiModel(value = "图库表", description = "")
+public class IdenImageStore implements Serializable {
+    private static final long serialVersionUID = -44732106174401548L;
+
+    @TableId(value = "ID", type = IdType.AUTO)
+    private Long id;
+
+
+    @ApiModelProperty("人脸特征ID")
+    @TableField("FEAT_PTR")
+    private String featPtr;
+
+
+    @ApiModelProperty("图像")
+    @TableField("IMAGE")
+    private String image;
+
+
+    @ApiModelProperty("摄像头ID")
+    @TableField("CAMERA_ID")
+    private Long cameraId;
+
+
+    @ApiModelProperty("小区ID")
+    @TableField("COMMUNITY_ID")
+    private Long communityId;
+
+
+    @ApiModelProperty("抓拍时间")
+    @TableField("PHOTOGRAPH_TIME")
+    private Date photographTime;
+
+
+    @ApiModelProperty("抓拍地点")
+    @TableField("PHOTOGRAPH_PLACE")
+    private String photographPlace;
+
+
+    @ApiModelProperty("性别:M:男 W:女")
+    @TableField("GENDER")
+    private String gender;
+
+
+    @ApiModelProperty("人员ID")
+    @TableField("PERSON_ID")
+    private Long personId;
+
+
+    @ApiModelProperty("备注")
+    @TableField("REMARK")
+    private String remark;
+
+
+    @ApiModelProperty("createTime")
+    @TableField("CREATE_TIME")
+    private Date createTime;
+
+
+    @ApiModelProperty("modifyTime")
+    @TableField("MODIFY_TIME")
+    private Date modifyTime;
+
+
+}

+ 145 - 0
src/main/java/com/iden/common/entity/IdenPerson.java

@@ -0,0 +1,145 @@
+package com.iden.common.entity;
+
+import java.util.Date;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+
+import java.time.LocalDateTime;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+
+import java.io.Serializable;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+/**
+ * 人员表(IdenPerson)实体类
+ *
+ * @author makejava
+ * @since 2021-12-22 17:23:47
+ */
+
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@TableName("iden_person")
+@ApiModel(value = "人员表", description = "")
+public class IdenPerson implements Serializable {
+    private static final long serialVersionUID = -95513090380191735L;
+
+    @TableId(value = "ID", type = IdType.AUTO)
+    private Long id;
+
+
+    @ApiModelProperty("人脸特征ID")
+    @TableField("FEAT_PTR")
+    private String featPtr;
+
+
+    @ApiModelProperty("姓名")
+    @TableField("NAME")
+    private String name;
+
+
+    @ApiModelProperty("图像")
+    @TableField("IMAGE")
+    private String image;
+
+
+    @ApiModelProperty("性别:M:男 W:女")
+    @TableField("GENDER")
+    private String gender;
+
+
+    @ApiModelProperty("证件类型:1:身份证 2:护照  3 军官证")
+    @TableField("CREDENTIALS_TYOE")
+    private String credentialsTyoe;
+
+
+    @ApiModelProperty("证件号码")
+    @TableField("CREDENTIALS_CODE")
+    private String credentialsCode;
+
+
+    @ApiModelProperty("手机号码")
+    @TableField("PHONE")
+    private String phone;
+
+
+    @ApiModelProperty("人员类型:1:常住人口 2:暂住人口 3:境外长住人口 4:流动人口 5:寄住人口 6: 临时住宿人口")
+    @TableField("PERSON_TYOE")
+    private String personTyoe;
+
+
+    @ApiModelProperty("民族")
+    @TableField("NATION")
+    private String nation;
+
+
+    @ApiModelProperty("政治面貌")
+    @TableField("POLICITAL_STATUS")
+    private String policitalStatus;
+
+
+    @ApiModelProperty("婚姻")
+    @TableField("MARRIAGE")
+    private String marriage;
+
+
+    @ApiModelProperty("口音")
+    @TableField("VOICE")
+    private String voice;
+
+
+    @ApiModelProperty("所属区域")
+    @TableField("DISTRICT")
+    private String district;
+
+
+    @ApiModelProperty("所属小区id")
+    @TableField("COMMUNITY_ID")
+    private Long communityId;
+
+
+    @ApiModelProperty("地址")
+    @TableField("ADDRESS")
+    private String address;
+
+
+    @ApiModelProperty("工作单位")
+    @TableField("WORK_PLACE")
+    private String workPlace;
+
+
+    @ApiModelProperty("单位地址")
+    @TableField("WORK_ADDRESS")
+    private String workAddress;
+
+
+    @ApiModelProperty("类型:1、重点人员,2、小区人员,多个用逗号分割")
+    @TableField("TYPE")
+    private String type;
+
+
+    @ApiModelProperty("备注")
+    @TableField("REMARK")
+    private String remark;
+
+
+    @ApiModelProperty("createTime")
+    @TableField("CREATE_TIME")
+    private Date createTime;
+
+
+    @ApiModelProperty("modifyTime")
+    @TableField("MODIFY_TIME")
+    private Date modifyTime;
+
+
+}

+ 48 - 0
src/main/java/com/iden/common/entity/IdenPersonCrowdRef.java

@@ -0,0 +1,48 @@
+package com.iden.common.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+
+import java.time.LocalDateTime;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+
+import java.io.Serializable;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+/**
+ * 人员人群关系表(IdenPersonCrowdRef)实体类
+ *
+ * @author makejava
+ * @since 2021-12-22 17:23:48
+ */
+
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@TableName("iden_person_crowd_ref")
+@ApiModel(value = "人员人群关系表", description = "")
+public class IdenPersonCrowdRef implements Serializable {
+    private static final long serialVersionUID = -47094271345194979L;
+
+    @TableId(value = "ID", type = IdType.AUTO)
+    private Long id;
+
+
+    @ApiModelProperty("人员ID")
+    @TableField("PERSON_ID")
+    private Long personId;
+
+
+    @ApiModelProperty("人群ID")
+    @TableField("CROWD_ID")
+    private Long crowdId;
+
+
+}

+ 3 - 1
src/main/java/com/iden/common/entity/IdenSysRole.java

@@ -47,10 +47,12 @@ public class IdenSysRole implements Serializable {
     private String code;
 
 
-    @ApiModelProperty("备注")
+    @ApiModelProperty("角色描述")
     @TableField("REMARK")
     private String remark;
 
+    @ApiModelProperty("启用状态:启用状态:0启用,1停用")
+    private String validStatus;
 
     @ApiModelProperty("createTime")
     @TableField("CREATE_TIME")

+ 8 - 4
src/main/java/com/iden/common/entity/IdenSysUser.java

@@ -37,7 +37,7 @@ public class IdenSysUser implements Serializable {
     private Long id;
 
 
-    @ApiModelProperty("用户名")
+    @ApiModelProperty("账号")
     @TableField("USERNAME")
     private String username;
 
@@ -56,11 +56,17 @@ public class IdenSysUser implements Serializable {
     @TableField("PHONE")
     private String phone;
 
+    @ApiModelProperty("邮箱")
+    @TableField("EMAIL")
+    private String email;
 
     @ApiModelProperty("启用状态:0启用,1停用")
     @TableField("VALID_STATUS")
     private String validStatus;
 
+    @ApiModelProperty("high: 高级管理员,middle: 中级管理员,low:低级管理员")
+    @TableField("ROLE")
+    private String role;
 
     @ApiModelProperty("createTime")
     @TableField("CREATE_TIME")
@@ -72,9 +78,7 @@ public class IdenSysUser implements Serializable {
     private Date modifyTime;
 
 
-    @ApiModelProperty("system:系统管理员")
-    @TableField("ROLE")
-    private String role;
+
 
 
 }

+ 80 - 0
src/main/java/com/iden/common/entity/IdenWarningEveningComeSta.java

@@ -0,0 +1,80 @@
+package com.iden.common.entity;
+
+import java.util.Date;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+
+import java.time.LocalDateTime;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+
+import java.io.Serializable;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+/**
+ * 昼伏夜出人口识别预警统计表(IdenWarningEveningComeSta)实体类
+ *
+ * @author makejava
+ * @since 2021-12-22 20:19:16
+ */
+
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@TableName("iden_warning_evening_come_sta")
+@ApiModel(value = "昼伏夜出人口识别预警统计表", description = "")
+public class IdenWarningEveningComeSta implements Serializable {
+    private static final long serialVersionUID = 985331715970898803L;
+
+    @TableId(value = "ID", type = IdType.AUTO)
+    private Long id;
+
+
+    @ApiModelProperty("所属小区id")
+    @TableField("COMMUNITY_ID")
+    private Long communityId;
+
+
+    @ApiModelProperty("小区编号")
+    @TableField("COMMUNITY_CODE")
+    private String communityCode;
+
+
+    @ApiModelProperty("小区名称")
+    @TableField("COMMUNITY_NAME")
+    private String communityName;
+
+
+    @ApiModelProperty("所属区域")
+    @TableField("DISTRICT")
+    private String district;
+
+
+    @ApiModelProperty("所属街道")
+    @TableField("SUBDISTRICT")
+    private String subdistrict;
+
+
+    @ApiModelProperty("昼伏夜出人员总数")
+    @TableField("EVENING_COME_COUNT")
+    private Long eveningComeCount;
+
+
+    @ApiModelProperty("createTime")
+    @TableField("CREATE_TIME")
+    private Date createTime;
+
+
+    @ApiModelProperty("modifyTime")
+    @TableField("MODIFY_TIME")
+    private Date modifyTime;
+
+
+}

+ 65 - 0
src/main/java/com/iden/common/entity/IdenWarningKeynoteSta.java

@@ -0,0 +1,65 @@
+package com.iden.common.entity;
+
+import java.util.Date;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+
+import java.time.LocalDateTime;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+
+import java.io.Serializable;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+/**
+ * 重点人员识别预警统计表(IdenWarningKeynoteSta)实体类
+ *
+ * @author makejava
+ * @since 2021-12-22 20:19:17
+ */
+
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@TableName("iden_warning_keynote_sta")
+@ApiModel(value = "重点人员识别预警统计表", description = "")
+public class IdenWarningKeynoteSta implements Serializable {
+    private static final long serialVersionUID = 163592680800091740L;
+
+    @TableId(value = "ID", type = IdType.AUTO)
+    private Long id;
+
+
+    @ApiModelProperty("人群编号")
+    @TableField("CROWD_CODE")
+    private String crowdCode;
+
+
+    @ApiModelProperty("人群名称")
+    @TableField("CROWD_NAME")
+    private String crowdName;
+
+
+    @ApiModelProperty("出现总数")
+    @TableField("DISPLAY_COUNT")
+    private Long displayCount;
+
+
+    @ApiModelProperty("createTime")
+    @TableField("CREATE_TIME")
+    private Date createTime;
+
+
+    @ApiModelProperty("modifyTime")
+    @TableField("MODIFY_TIME")
+    private Date modifyTime;
+
+
+}

+ 80 - 0
src/main/java/com/iden/common/entity/IdenWarningPermanentSta.java

@@ -0,0 +1,80 @@
+package com.iden.common.entity;
+
+import java.util.Date;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+
+import java.time.LocalDateTime;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+
+import java.io.Serializable;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+/**
+ * 常住人口识别预警统计表(IdenWarningPermanentSta)实体类
+ *
+ * @author makejava
+ * @since 2021-12-22 20:19:17
+ */
+
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@TableName("iden_warning_permanent_sta")
+@ApiModel(value = "常住人口识别预警统计表", description = "")
+public class IdenWarningPermanentSta implements Serializable {
+    private static final long serialVersionUID = 780363491063638399L;
+
+    @TableId(value = "ID", type = IdType.AUTO)
+    private Long id;
+
+
+    @ApiModelProperty("所属小区id")
+    @TableField("COMMUNITY_ID")
+    private Long communityId;
+
+
+    @ApiModelProperty("小区编号")
+    @TableField("COMMUNITY_CODE")
+    private String communityCode;
+
+
+    @ApiModelProperty("小区名称")
+    @TableField("COMMUNITY_NAME")
+    private String communityName;
+
+
+    @ApiModelProperty("所属区域")
+    @TableField("DISTRICT")
+    private String district;
+
+
+    @ApiModelProperty("所属街道")
+    @TableField("SUBDISTRICT")
+    private String subdistrict;
+
+
+    @ApiModelProperty("大于7天未出现常住人总数")
+    @TableField("PERMANENT_COUNT")
+    private Long permanentCount;
+
+
+    @ApiModelProperty("createTime")
+    @TableField("CREATE_TIME")
+    private Date createTime;
+
+
+    @ApiModelProperty("modifyTime")
+    @TableField("MODIFY_TIME")
+    private Date modifyTime;
+
+
+}

+ 80 - 0
src/main/java/com/iden/common/entity/IdenWarningStrangerSta.java

@@ -0,0 +1,80 @@
+package com.iden.common.entity;
+
+import java.util.Date;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+
+import java.time.LocalDateTime;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+
+import java.io.Serializable;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+/**
+ * 陌生人员识别预警统计表(IdenWarningStrangerSta)实体类
+ *
+ * @author makejava
+ * @since 2021-12-22 20:19:17
+ */
+
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@TableName("iden_warning_stranger_sta")
+@ApiModel(value = "陌生人员识别预警统计表", description = "")
+public class IdenWarningStrangerSta implements Serializable {
+    private static final long serialVersionUID = 618456629263970444L;
+
+    @TableId(value = "ID", type = IdType.AUTO)
+    private Long id;
+
+
+    @ApiModelProperty("所属小区id")
+    @TableField("COMMUNITY_ID")
+    private Long communityId;
+
+
+    @ApiModelProperty("小区编号")
+    @TableField("COMMUNITY_CODE")
+    private String communityCode;
+
+
+    @ApiModelProperty("小区名称")
+    @TableField("COMMUNITY_NAME")
+    private String communityName;
+
+
+    @ApiModelProperty("所属区域")
+    @TableField("DISTRICT")
+    private String district;
+
+
+    @ApiModelProperty("所属街道")
+    @TableField("SUBDISTRICT")
+    private String subdistrict;
+
+
+    @ApiModelProperty("陌生人总数")
+    @TableField("STRANGER_COUNT")
+    private Long strangerCount;
+
+
+    @ApiModelProperty("createTime")
+    @TableField("CREATE_TIME")
+    private Date createTime;
+
+
+    @ApiModelProperty("modifyTime")
+    @TableField("MODIFY_TIME")
+    private Date modifyTime;
+
+
+}

+ 10 - 21
src/main/java/com/iden/common/enums/UserRoleEnum.java

@@ -11,13 +11,10 @@ public enum UserRoleEnum {
     /**
      *
      */
-    SYSTEM("system","系统管理员"),
-    ORG("org","机构管理员"),
-    STATION("station","服务站管理员"),
-    CHANMB("chanmb","管家"),
-    SEAT("seat","坐席"),
-    OLDER("older","老人"),
-    CONTACT("contact","紧急联系人");
+    HIGH("high","高级管理员"),
+    MIDDLE("middle","中级管理员"),
+    LOW("low","低级管理员");
+
     private String value;
     private String name;
     UserRoleEnum(String value, String name) {
@@ -32,20 +29,12 @@ public enum UserRoleEnum {
         if (StrUtil.isEmpty(code)){
             return null;
         }
-        if (SYSTEM.getValue().equals(code)){
-            return  SYSTEM.name;
-        } else if (ORG.getValue().equals(code)){
-            return ORG.name;
-        } else if (STATION.getValue().equals(code)){
-            return STATION.name;
-        } else if (CHANMB.getValue().equals(code)){
-            return  CHANMB.name;
-        }else if (SEAT.getValue().equals(code)){
-            return  SEAT.name;
-        }else if (OLDER.getValue().equals(code)){
-            return  OLDER.name;
-        }else if (CONTACT.getValue().equals(code)){
-            return CONTACT.name;
+        if (HIGH.getValue().equals(code)){
+            return  HIGH.name;
+        } else if (MIDDLE.getValue().equals(code)){
+            return MIDDLE.name;
+        } else if (LOW.getValue().equals(code)){
+            return LOW.name;
         }
 
         return null;

+ 15 - 0
src/main/java/com/iden/common/mapper/IdenCameraMapper.java

@@ -0,0 +1,15 @@
+package com.iden.common.mapper;
+
+import com.iden.common.entity.IdenCamera;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+
+/**
+ * 摄像头表(IdenCamera)表数据库访问层
+ *
+ * @author makejava
+ * @since 2021-12-22 17:23:44
+ */
+public interface IdenCameraMapper extends BaseMapper<IdenCamera> {
+
+}

+ 15 - 0
src/main/java/com/iden/common/mapper/IdenCommunityMapper.java

@@ -0,0 +1,15 @@
+package com.iden.common.mapper;
+
+import com.iden.common.entity.IdenCommunity;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+
+/**
+ * 小区表(IdenCommunity)表数据库访问层
+ *
+ * @author makejava
+ * @since 2021-12-22 17:23:45
+ */
+public interface IdenCommunityMapper extends BaseMapper<IdenCommunity> {
+
+}

+ 15 - 0
src/main/java/com/iden/common/mapper/IdenCrowdMapper.java

@@ -0,0 +1,15 @@
+package com.iden.common.mapper;
+
+import com.iden.common.entity.IdenCrowd;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+
+/**
+ * 人群表(IdenCrowd)表数据库访问层
+ *
+ * @author makejava
+ * @since 2021-12-22 17:23:46
+ */
+public interface IdenCrowdMapper extends BaseMapper<IdenCrowd> {
+
+}

+ 15 - 0
src/main/java/com/iden/common/mapper/IdenImageStoreMapper.java

@@ -0,0 +1,15 @@
+package com.iden.common.mapper;
+
+import com.iden.common.entity.IdenImageStore;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+
+/**
+ * 图库表(IdenImageStore)表数据库访问层
+ *
+ * @author makejava
+ * @since 2021-12-22 17:23:46
+ */
+public interface IdenImageStoreMapper extends BaseMapper<IdenImageStore> {
+
+}

+ 15 - 0
src/main/java/com/iden/common/mapper/IdenPersonCrowdRefMapper.java

@@ -0,0 +1,15 @@
+package com.iden.common.mapper;
+
+import com.iden.common.entity.IdenPersonCrowdRef;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+
+/**
+ * 人员人群关系表(IdenPersonCrowdRef)表数据库访问层
+ *
+ * @author makejava
+ * @since 2021-12-22 17:23:48
+ */
+public interface IdenPersonCrowdRefMapper extends BaseMapper<IdenPersonCrowdRef> {
+
+}

+ 15 - 0
src/main/java/com/iden/common/mapper/IdenPersonMapper.java

@@ -0,0 +1,15 @@
+package com.iden.common.mapper;
+
+import com.iden.common.entity.IdenPerson;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+
+/**
+ * 人员表(IdenPerson)表数据库访问层
+ *
+ * @author makejava
+ * @since 2021-12-22 17:23:47
+ */
+public interface IdenPersonMapper extends BaseMapper<IdenPerson> {
+
+}

+ 15 - 0
src/main/java/com/iden/common/mapper/IdenWarningEveningComeStaMapper.java

@@ -0,0 +1,15 @@
+package com.iden.common.mapper;
+
+import com.iden.common.entity.IdenWarningEveningComeSta;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+
+/**
+ * 昼伏夜出人口识别预警统计表(IdenWarningEveningComeSta)表数据库访问层
+ *
+ * @author makejava
+ * @since 2021-12-22 20:19:16
+ */
+public interface IdenWarningEveningComeStaMapper extends BaseMapper<IdenWarningEveningComeSta> {
+
+}

+ 15 - 0
src/main/java/com/iden/common/mapper/IdenWarningKeynoteStaMapper.java

@@ -0,0 +1,15 @@
+package com.iden.common.mapper;
+
+import com.iden.common.entity.IdenWarningKeynoteSta;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+
+/**
+ * 重点人员识别预警统计表(IdenWarningKeynoteSta)表数据库访问层
+ *
+ * @author makejava
+ * @since 2021-12-22 20:19:17
+ */
+public interface IdenWarningKeynoteStaMapper extends BaseMapper<IdenWarningKeynoteSta> {
+
+}

+ 15 - 0
src/main/java/com/iden/common/mapper/IdenWarningPermanentStaMapper.java

@@ -0,0 +1,15 @@
+package com.iden.common.mapper;
+
+import com.iden.common.entity.IdenWarningPermanentSta;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+
+/**
+ * 常住人口识别预警统计表(IdenWarningPermanentSta)表数据库访问层
+ *
+ * @author makejava
+ * @since 2021-12-22 20:19:17
+ */
+public interface IdenWarningPermanentStaMapper extends BaseMapper<IdenWarningPermanentSta> {
+
+}

+ 15 - 0
src/main/java/com/iden/common/mapper/IdenWarningStrangerStaMapper.java

@@ -0,0 +1,15 @@
+package com.iden.common.mapper;
+
+import com.iden.common.entity.IdenWarningStrangerSta;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+
+/**
+ * 陌生人员识别预警统计表(IdenWarningStrangerSta)表数据库访问层
+ *
+ * @author makejava
+ * @since 2021-12-22 20:19:17
+ */
+public interface IdenWarningStrangerStaMapper extends BaseMapper<IdenWarningStrangerSta> {
+
+}

+ 14 - 0
src/main/java/com/iden/common/service/IdenCameraService.java

@@ -0,0 +1,14 @@
+package com.iden.common.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.iden.common.entity.IdenCamera;
+
+/**
+ * 摄像头表(IdenCamera)表服务接口
+ *
+ * @author makejava
+ * @since 2021-12-22 17:23:44
+ */
+public interface IdenCameraService extends IService<IdenCamera> {
+
+}

+ 14 - 0
src/main/java/com/iden/common/service/IdenCommunityService.java

@@ -0,0 +1,14 @@
+package com.iden.common.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.iden.common.entity.IdenCommunity;
+
+/**
+ * 小区表(IdenCommunity)表服务接口
+ *
+ * @author makejava
+ * @since 2021-12-22 17:23:45
+ */
+public interface IdenCommunityService extends IService<IdenCommunity> {
+
+}

+ 14 - 0
src/main/java/com/iden/common/service/IdenCrowdService.java

@@ -0,0 +1,14 @@
+package com.iden.common.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.iden.common.entity.IdenCrowd;
+
+/**
+ * 人群表(IdenCrowd)表服务接口
+ *
+ * @author makejava
+ * @since 2021-12-22 17:23:46
+ */
+public interface IdenCrowdService extends IService<IdenCrowd> {
+
+}

+ 14 - 0
src/main/java/com/iden/common/service/IdenImageStoreService.java

@@ -0,0 +1,14 @@
+package com.iden.common.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.iden.common.entity.IdenImageStore;
+
+/**
+ * 图库表(IdenImageStore)表服务接口
+ *
+ * @author makejava
+ * @since 2021-12-22 17:23:47
+ */
+public interface IdenImageStoreService extends IService<IdenImageStore> {
+
+}

+ 14 - 0
src/main/java/com/iden/common/service/IdenPersonCrowdRefService.java

@@ -0,0 +1,14 @@
+package com.iden.common.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.iden.common.entity.IdenPersonCrowdRef;
+
+/**
+ * 人员人群关系表(IdenPersonCrowdRef)表服务接口
+ *
+ * @author makejava
+ * @since 2021-12-22 17:23:48
+ */
+public interface IdenPersonCrowdRefService extends IService<IdenPersonCrowdRef> {
+
+}

+ 14 - 0
src/main/java/com/iden/common/service/IdenPersonService.java

@@ -0,0 +1,14 @@
+package com.iden.common.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.iden.common.entity.IdenPerson;
+
+/**
+ * 人员表(IdenPerson)表服务接口
+ *
+ * @author makejava
+ * @since 2021-12-22 17:23:47
+ */
+public interface IdenPersonService extends IService<IdenPerson> {
+
+}

+ 14 - 0
src/main/java/com/iden/common/service/IdenWarningEveningComeStaService.java

@@ -0,0 +1,14 @@
+package com.iden.common.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.iden.common.entity.IdenWarningEveningComeSta;
+
+/**
+ * 昼伏夜出人口识别预警统计表(IdenWarningEveningComeSta)表服务接口
+ *
+ * @author makejava
+ * @since 2021-12-22 20:19:16
+ */
+public interface IdenWarningEveningComeStaService extends IService<IdenWarningEveningComeSta> {
+
+}

+ 14 - 0
src/main/java/com/iden/common/service/IdenWarningKeynoteStaService.java

@@ -0,0 +1,14 @@
+package com.iden.common.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.iden.common.entity.IdenWarningKeynoteSta;
+
+/**
+ * 重点人员识别预警统计表(IdenWarningKeynoteSta)表服务接口
+ *
+ * @author makejava
+ * @since 2021-12-22 20:19:17
+ */
+public interface IdenWarningKeynoteStaService extends IService<IdenWarningKeynoteSta> {
+
+}

+ 14 - 0
src/main/java/com/iden/common/service/IdenWarningPermanentStaService.java

@@ -0,0 +1,14 @@
+package com.iden.common.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.iden.common.entity.IdenWarningPermanentSta;
+
+/**
+ * 常住人口识别预警统计表(IdenWarningPermanentSta)表服务接口
+ *
+ * @author makejava
+ * @since 2021-12-22 20:19:17
+ */
+public interface IdenWarningPermanentStaService extends IService<IdenWarningPermanentSta> {
+
+}

+ 14 - 0
src/main/java/com/iden/common/service/IdenWarningStrangerStaService.java

@@ -0,0 +1,14 @@
+package com.iden.common.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.iden.common.entity.IdenWarningStrangerSta;
+
+/**
+ * 陌生人员识别预警统计表(IdenWarningStrangerSta)表服务接口
+ *
+ * @author makejava
+ * @since 2021-12-22 20:19:17
+ */
+public interface IdenWarningStrangerStaService extends IService<IdenWarningStrangerSta> {
+
+}

+ 18 - 0
src/main/java/com/iden/common/service/impl/IdenCameraServiceImpl.java

@@ -0,0 +1,18 @@
+package com.iden.common.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.iden.common.mapper.IdenCameraMapper;
+import com.iden.common.entity.IdenCamera;
+import com.iden.common.service.IdenCameraService;
+import org.springframework.stereotype.Service;
+
+/**
+ * 摄像头表(IdenCamera)表服务实现类
+ *
+ * @author makejava
+ * @since 2021-12-22 17:23:44
+ */
+@Service
+public class IdenCameraServiceImpl extends ServiceImpl<IdenCameraMapper, IdenCamera> implements IdenCameraService {
+
+}

+ 18 - 0
src/main/java/com/iden/common/service/impl/IdenCommunityServiceImpl.java

@@ -0,0 +1,18 @@
+package com.iden.common.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.iden.common.mapper.IdenCommunityMapper;
+import com.iden.common.entity.IdenCommunity;
+import com.iden.common.service.IdenCommunityService;
+import org.springframework.stereotype.Service;
+
+/**
+ * 小区表(IdenCommunity)表服务实现类
+ *
+ * @author makejava
+ * @since 2021-12-22 17:23:45
+ */
+@Service
+public class IdenCommunityServiceImpl extends ServiceImpl<IdenCommunityMapper, IdenCommunity> implements IdenCommunityService {
+
+}

+ 18 - 0
src/main/java/com/iden/common/service/impl/IdenCrowdServiceImpl.java

@@ -0,0 +1,18 @@
+package com.iden.common.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.iden.common.mapper.IdenCrowdMapper;
+import com.iden.common.entity.IdenCrowd;
+import com.iden.common.service.IdenCrowdService;
+import org.springframework.stereotype.Service;
+
+/**
+ * 人群表(IdenCrowd)表服务实现类
+ *
+ * @author makejava
+ * @since 2021-12-22 17:23:46
+ */
+@Service
+public class IdenCrowdServiceImpl extends ServiceImpl<IdenCrowdMapper, IdenCrowd> implements IdenCrowdService {
+
+}

+ 18 - 0
src/main/java/com/iden/common/service/impl/IdenImageStoreServiceImpl.java

@@ -0,0 +1,18 @@
+package com.iden.common.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.iden.common.mapper.IdenImageStoreMapper;
+import com.iden.common.entity.IdenImageStore;
+import com.iden.common.service.IdenImageStoreService;
+import org.springframework.stereotype.Service;
+
+/**
+ * 图库表(IdenImageStore)表服务实现类
+ *
+ * @author makejava
+ * @since 2021-12-22 17:23:47
+ */
+@Service
+public class IdenImageStoreServiceImpl extends ServiceImpl<IdenImageStoreMapper, IdenImageStore> implements IdenImageStoreService {
+
+}

+ 18 - 0
src/main/java/com/iden/common/service/impl/IdenPersonCrowdRefServiceImpl.java

@@ -0,0 +1,18 @@
+package com.iden.common.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.iden.common.mapper.IdenPersonCrowdRefMapper;
+import com.iden.common.entity.IdenPersonCrowdRef;
+import com.iden.common.service.IdenPersonCrowdRefService;
+import org.springframework.stereotype.Service;
+
+/**
+ * 人员人群关系表(IdenPersonCrowdRef)表服务实现类
+ *
+ * @author makejava
+ * @since 2021-12-22 17:23:48
+ */
+@Service
+public class IdenPersonCrowdRefServiceImpl extends ServiceImpl<IdenPersonCrowdRefMapper, IdenPersonCrowdRef> implements IdenPersonCrowdRefService {
+
+}

+ 18 - 0
src/main/java/com/iden/common/service/impl/IdenPersonServiceImpl.java

@@ -0,0 +1,18 @@
+package com.iden.common.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.iden.common.mapper.IdenPersonMapper;
+import com.iden.common.entity.IdenPerson;
+import com.iden.common.service.IdenPersonService;
+import org.springframework.stereotype.Service;
+
+/**
+ * 人员表(IdenPerson)表服务实现类
+ *
+ * @author makejava
+ * @since 2021-12-22 17:23:47
+ */
+@Service
+public class IdenPersonServiceImpl extends ServiceImpl<IdenPersonMapper, IdenPerson> implements IdenPersonService {
+
+}

+ 18 - 0
src/main/java/com/iden/common/service/impl/IdenWarningEveningComeStaServiceImpl.java

@@ -0,0 +1,18 @@
+package com.iden.common.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.iden.common.mapper.IdenWarningEveningComeStaMapper;
+import com.iden.common.entity.IdenWarningEveningComeSta;
+import com.iden.common.service.IdenWarningEveningComeStaService;
+import org.springframework.stereotype.Service;
+
+/**
+ * 昼伏夜出人口识别预警统计表(IdenWarningEveningComeSta)表服务实现类
+ *
+ * @author makejava
+ * @since 2021-12-22 20:19:17
+ */
+@Service
+public class IdenWarningEveningComeStaServiceImpl extends ServiceImpl<IdenWarningEveningComeStaMapper, IdenWarningEveningComeSta> implements IdenWarningEveningComeStaService {
+
+}

+ 18 - 0
src/main/java/com/iden/common/service/impl/IdenWarningKeynoteStaServiceImpl.java

@@ -0,0 +1,18 @@
+package com.iden.common.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.iden.common.mapper.IdenWarningKeynoteStaMapper;
+import com.iden.common.entity.IdenWarningKeynoteSta;
+import com.iden.common.service.IdenWarningKeynoteStaService;
+import org.springframework.stereotype.Service;
+
+/**
+ * 重点人员识别预警统计表(IdenWarningKeynoteSta)表服务实现类
+ *
+ * @author makejava
+ * @since 2021-12-22 20:19:17
+ */
+@Service
+public class IdenWarningKeynoteStaServiceImpl extends ServiceImpl<IdenWarningKeynoteStaMapper, IdenWarningKeynoteSta> implements IdenWarningKeynoteStaService {
+
+}

+ 18 - 0
src/main/java/com/iden/common/service/impl/IdenWarningPermanentStaServiceImpl.java

@@ -0,0 +1,18 @@
+package com.iden.common.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.iden.common.mapper.IdenWarningPermanentStaMapper;
+import com.iden.common.entity.IdenWarningPermanentSta;
+import com.iden.common.service.IdenWarningPermanentStaService;
+import org.springframework.stereotype.Service;
+
+/**
+ * 常住人口识别预警统计表(IdenWarningPermanentSta)表服务实现类
+ *
+ * @author makejava
+ * @since 2021-12-22 20:19:17
+ */
+@Service
+public class IdenWarningPermanentStaServiceImpl extends ServiceImpl<IdenWarningPermanentStaMapper, IdenWarningPermanentSta> implements IdenWarningPermanentStaService {
+
+}

+ 18 - 0
src/main/java/com/iden/common/service/impl/IdenWarningStrangerStaServiceImpl.java

@@ -0,0 +1,18 @@
+package com.iden.common.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.iden.common.mapper.IdenWarningStrangerStaMapper;
+import com.iden.common.entity.IdenWarningStrangerSta;
+import com.iden.common.service.IdenWarningStrangerStaService;
+import org.springframework.stereotype.Service;
+
+/**
+ * 陌生人员识别预警统计表(IdenWarningStrangerSta)表服务实现类
+ *
+ * @author makejava
+ * @since 2021-12-22 20:19:17
+ */
+@Service
+public class IdenWarningStrangerStaServiceImpl extends ServiceImpl<IdenWarningStrangerStaMapper, IdenWarningStrangerSta> implements IdenWarningStrangerStaService {
+
+}

+ 58 - 0
src/main/java/com/iden/common/vo/SysRoleVO.java

@@ -0,0 +1,58 @@
+package com.iden.common.vo;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * 角色信息表(IdenSysRole)实体类
+ *
+ * @author makejava
+ * @since 2021-12-20 15:37:53
+ */
+
+@Data
+@ApiModel(value = "角色信息表", description = "")
+public class SysRoleVO implements Serializable {
+    private static final long serialVersionUID = 971213661758326465L;
+
+    private Long id;
+
+
+    @ApiModelProperty("名称")
+    private String name;
+
+
+    @ApiModelProperty("编码")
+    private String code;
+
+
+    @ApiModelProperty("角色描述")
+    private String remark;
+
+    @ApiModelProperty("启用状态:启用状态:0启用,1停用")
+    private String validStatus;
+
+    @ApiModelProperty("启用状态名:启用状态:0启用,1停用")
+    private String validStatusName;
+
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
+    @ApiModelProperty("createTime")
+    private Date createTime;
+
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
+    @ApiModelProperty("modifyTime")
+    private Date modifyTime;
+
+
+}

+ 3 - 1
src/main/java/com/iden/common/vo/SysUserVO.java

@@ -39,6 +39,8 @@ public class SysUserVO implements Serializable {
     @ApiModelProperty("电话")
     private String phone;
 
+    @ApiModelProperty("邮箱")
+    private String email;
 
     @ApiModelProperty("启用状态:启用状态:0启用,1停用")
     private String validStatus;
@@ -46,7 +48,7 @@ public class SysUserVO implements Serializable {
     @ApiModelProperty("启用状态名:启用状态:0启用,1停用")
     private String validStatusName;
 
-    @ApiModelProperty("system:系统管理员")
+    @ApiModelProperty("high: 高级管理员,middle: 中级管理员,low:低级管理员")
     private String role;
 
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")

+ 6 - 0
src/main/resources/mybatis/IdenCameraMapper.xml

@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.iden.common.mapper.IdenCameraMapper">
+
+
+</mapper>

+ 6 - 0
src/main/resources/mybatis/IdenCommunityMapper.xml

@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.iden.common.mapper.IdenCommunityMapper">
+
+
+</mapper>

+ 6 - 0
src/main/resources/mybatis/IdenCrowdMapper.xml

@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.iden.common.mapper.IdenCrowdMapper">
+
+
+</mapper>

+ 6 - 0
src/main/resources/mybatis/IdenImageStoreMapper.xml

@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.iden.common.mapper.IdenImageStoreMapper">
+
+
+</mapper>

+ 6 - 0
src/main/resources/mybatis/IdenPersonCrowdRefMapper.xml

@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.iden.common.mapper.IdenPersonCrowdRefMapper">
+
+
+</mapper>

+ 6 - 0
src/main/resources/mybatis/IdenPersonMapper.xml

@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.iden.common.mapper.IdenPersonMapper">
+
+
+</mapper>

+ 6 - 0
src/main/resources/mybatis/IdenWarningEveningComeStaMapper.xml

@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.iden.common.mapper.IdenWarningEveningComeStaMapper">
+
+
+</mapper>

+ 6 - 0
src/main/resources/mybatis/IdenWarningKeynoteStaMapper.xml

@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.iden.common.mapper.IdenWarningKeynoteStaMapper">
+
+
+</mapper>

+ 6 - 0
src/main/resources/mybatis/IdenWarningPermanentStaMapper.xml

@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.iden.common.mapper.IdenWarningPermanentStaMapper">
+
+
+</mapper>

+ 6 - 0
src/main/resources/mybatis/IdenWarningStrangerStaMapper.xml

@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.iden.common.mapper.IdenWarningStrangerStaMapper">
+
+
+</mapper>

+ 134 - 0
src/test/java/com/iden/FaceTest.java

@@ -0,0 +1,134 @@
+package com.iden;
+
+import com.face.monitor.FaceMonitor;
+import com.face.monitor.model.FaceModel;
+import com.face.monitor.model.FaceRecogRetrieveResult;
+import com.face.monitor.model.Image;
+import com.face.monitor.model.RecogInfo;
+import com.face.monitor.model.RecogResult;
+
+import java.io.ByteArrayOutputStream;
+import java.io.Closeable;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Locale;
+
+public class FaceTest {
+    public static void main(String[] args) {
+        //初始化引擎
+        FaceMonitor faceMonitor = new FaceMonitor();
+        faceMonitor.init("./model", 0);
+        //提取人脸特征,并保存为注册人员库demo-test.cpp
+        FaceModel[] dataset = extractFeature(faceMonitor);
+        System.out.printf(Locale.CHINA, "succeed extract size:%d\n", dataset.length);
+        //加载人脸特征库
+        faceMonitor.loadFaceDataset(dataset);
+        //获取库的大小
+        int databaseSize = faceMonitor.getDatabaseSize();
+        System.out.printf(Locale.CHINA, "java data num:%d\n", databaseSize);
+        //追加特征库
+        faceMonitor.appendFaceDataset(dataset);
+        databaseSize = faceMonitor.getDatabaseSize();
+        System.out.printf(Locale.CHINA, "java append after data num:%d\n", databaseSize);
+        //每次加载特征库会清空当前内存中存储的特征库
+        faceMonitor.loadFaceDataset(dataset);
+        databaseSize = faceMonitor.getDatabaseSize();
+        System.out.printf(Locale.CHINA, "new data num: :%d\n", databaseSize);
+        //监控视频帧,这里为了简单演示,传入静态图片
+        //target
+        String registerData = "./data/0.jpg";
+        watchFrame(faceMonitor, registerData);
+        //vistor
+        registerData = "./data/5.jpg";
+        watchFrame(faceMonitor, registerData);
+        //获取目标人识别结果
+        RecogResult recogResult = faceMonitor.finishMonitorWithRes(1);
+
+        RecogResult curVisitorResResult = faceMonitor.faceRecogGetCurVisitorRes();
+
+        for (int i = 0; i < curVisitorResResult.getInfoNum(); i++) {
+            RecogInfo recogInfo = curVisitorResResult.getRecogInfos()[i];
+            System.out.printf(Locale.CHINA, "vistor hit top getRecogInfos length: %d\n",
+                    curVisitorResResult.getRecogInfos().length);
+            System.out.printf(Locale.CHINA, "vistor hit top person name: %s\n",
+                    recogInfo.getName());
+            System.out.printf(Locale.CHINA, "vistor hit top person id: %d score: %f\n",
+                    recogInfo.getPersonId(), recogInfo.getFaceRecogScore());
+            System.out.printf(Locale.CHINA, "vistor hit second person id: %d score: %f\n",
+                    recogInfo.getPersonIdOther()[0], recogInfo.getFaceRecogScoreOther()[0]);
+        }
+
+        FaceRecogRetrieveResult faceRecogRetrieveResult = faceMonitor.faceRecogRetrieveFaceDataset(dataset);
+        System.out.printf(Locale.CHINA, "query hit top person id: : %d score: %f\n",
+                faceRecogRetrieveResult.getOnePredictIds()[0], faceRecogRetrieveResult.getOnePredictScores()[0]);
+        System.out.printf(Locale.CHINA, "query hit top person id: : %d score: %f\n",
+                faceRecogRetrieveResult.getOnePredictIds()[1], faceRecogRetrieveResult.getOnePredictScores()[1]);
+    }
+
+    public static FaceModel[] extractFeature(FaceMonitor faceMonitor) {
+        //简单演示,提取5张人脸
+        String faceTestDir = "./data/";
+        List<byte[]> faceTestImageList = new ArrayList<>();
+        for (int i = 0; i < 5; i++) {
+            String faceFilePath = String.format(Locale.CHINA, "%s%d.jpg", faceTestDir, i);
+            faceTestImageList.add(readFileBytes(faceFilePath));
+        }
+        return faceMonitor.extractFeature(faceTestImageList);
+    }
+
+    public static RecogResult watchFrame(FaceMonitor faceMonitor, String dataPath) {
+        Image image = faceMonitor.readImage(dataPath);
+        return faceMonitor.faceRecogMonitor(image);
+    }
+
+    /**
+     * read file
+     *
+     * @param filePath
+     * @return if file not exist, return null, else return content of file
+     * @throws RuntimeException if an error occurs while operator BufferedReader
+     */
+    public static byte[] readFileBytes(String filePath) {
+        File file = new File(filePath);
+        if (file == null || !file.isFile()) {
+            return null;
+        }
+
+        InputStream inputStream = null;
+        ByteArrayOutputStream baos = null;
+        try {
+            inputStream = new FileInputStream(file);
+            baos = new ByteArrayOutputStream();
+
+            byte[] buffer = new byte[1024];
+            int byteCount = 0;
+            while ((byteCount = inputStream.read(buffer)) != -1) {// 循环从输入流读取
+                // buffer字节
+                baos.write(buffer, 0, byteCount);// 将读取的输入流写入到输出流
+            }
+            baos.flush();// 刷新缓冲区
+            return baos.toByteArray();
+        } catch (IOException e) {
+            return null;
+            //throw new RuntimeException("IOException occurred. ", e);
+        } finally {
+            close(inputStream);
+            close(baos);
+        }
+    }
+
+    public static void close(Closeable closeable) {
+        if (closeable != null) {
+            try {
+                closeable.close();
+            } catch (IOException e) {
+                throw new RuntimeException("IOException occurred. ", e);
+            }
+        }
+    }
+}
+