shiyue hai 1 ano
achega
db0fc0ea61
Modificáronse 100 ficheiros con 16774 adicións e 0 borrados
  1. 39 0
      .gitignore
  2. 2763 0
      db/energy-info.sql
  3. 2705 0
      db/energy.sql
  4. 118 0
      energy-manage-common/pom.xml
  5. 22 0
      energy-manage-common/src/main/java/com/energy/manage/common/base/BaseConstant.java
  6. 16 0
      energy-manage-common/src/main/java/com/energy/manage/common/base/BaseController.java
  7. 44 0
      energy-manage-common/src/main/java/com/energy/manage/common/base/BaseDomainWithUser.java
  8. 26 0
      energy-manage-common/src/main/java/com/energy/manage/common/base/BaseException.java
  9. 12 0
      energy-manage-common/src/main/java/com/energy/manage/common/base/BaseRepository.java
  10. 23 0
      energy-manage-common/src/main/java/com/energy/manage/common/base/BaseService.java
  11. 60 0
      energy-manage-common/src/main/java/com/energy/manage/common/base/BaseServiceImpl.java
  12. 38 0
      energy-manage-common/src/main/java/com/energy/manage/common/base/NewBaseDomain.java
  13. 112 0
      energy-manage-common/src/main/java/com/energy/manage/common/base/Page.java
  14. 66 0
      energy-manage-common/src/main/java/com/energy/manage/common/constant/Constants.java
  15. 25 0
      energy-manage-common/src/main/java/com/energy/manage/common/constant/UploadFileResponseVo.java
  16. 21 0
      energy-manage-common/src/main/java/com/energy/manage/common/constant/controller/WebApiConstant.java
  17. 12 0
      energy-manage-common/src/main/java/com/energy/manage/common/constant/kafka/KafkaTopicConstant.java
  18. 39 0
      energy-manage-common/src/main/java/com/energy/manage/common/constant/redis/ManagerRedisKeyConstant.java
  19. 52 0
      energy-manage-common/src/main/java/com/energy/manage/common/enums/DeleteStatusEnum.java
  20. 58 0
      energy-manage-common/src/main/java/com/energy/manage/common/enums/IdPrefixEnum.java
  21. 57 0
      energy-manage-common/src/main/java/com/energy/manage/common/enums/TypeRelationEnum.java
  22. 56 0
      energy-manage-common/src/main/java/com/energy/manage/common/exception/BusinessException.java
  23. 17 0
      energy-manage-common/src/main/java/com/energy/manage/common/exception/ErrorSignException.java
  24. 7 0
      energy-manage-common/src/main/java/com/energy/manage/common/exception/NoRequestException.java
  25. 9 0
      energy-manage-common/src/main/java/com/energy/manage/common/exception/ServiceErrorException.java
  26. 27 0
      energy-manage-common/src/main/java/com/energy/manage/common/exception/ServiceException.java
  27. 4 0
      energy-manage-common/src/main/java/com/energy/manage/common/exception/TokenInvalidException.java
  28. 29 0
      energy-manage-common/src/main/java/com/energy/manage/common/exception/UserNotLoginException.java
  29. 15 0
      energy-manage-common/src/main/java/com/energy/manage/common/mapper/MyMapper.java
  30. 65 0
      energy-manage-common/src/main/java/com/energy/manage/common/po/anemometertower/AnemometerTowerDataPO.java
  31. 31 0
      energy-manage-common/src/main/java/com/energy/manage/common/po/anemometertower/AnemometerTowerHeightPO.java
  32. 46 0
      energy-manage-common/src/main/java/com/energy/manage/common/po/anemometertower/AnemometerTowerPO.java
  33. 30 0
      energy-manage-common/src/main/java/com/energy/manage/common/po/anemometertower/AnemometerTowerRelationPO.java
  34. 28 0
      energy-manage-common/src/main/java/com/energy/manage/common/po/area/AreaPO.java
  35. 66 0
      energy-manage-common/src/main/java/com/energy/manage/common/po/company/WindCompanyPO.java
  36. 43 0
      energy-manage-common/src/main/java/com/energy/manage/common/po/dict/DictConstantsPO.java
  37. 38 0
      energy-manage-common/src/main/java/com/energy/manage/common/po/powerwordcontract/PowerWordContractPO.java
  38. 38 0
      energy-manage-common/src/main/java/com/energy/manage/common/po/powerwordcriterion/PowerWordCriterionPO.java
  39. 31 0
      energy-manage-common/src/main/java/com/energy/manage/common/po/system/SysOrganizationAuthPO.java
  40. 72 0
      energy-manage-common/src/main/java/com/energy/manage/common/po/system/SysPermissionPO.java
  41. 39 0
      energy-manage-common/src/main/java/com/energy/manage/common/po/system/SysRolePO.java
  42. 32 0
      energy-manage-common/src/main/java/com/energy/manage/common/po/system/SysRolePermissionPO.java
  43. 45 0
      energy-manage-common/src/main/java/com/energy/manage/common/po/system/SysUserInfoPO.java
  44. 32 0
      energy-manage-common/src/main/java/com/energy/manage/common/po/system/SysUserRolePO.java
  45. 26 0
      energy-manage-common/src/main/java/com/energy/manage/common/po/system/SystemRolePO.java
  46. 46 0
      energy-manage-common/src/main/java/com/energy/manage/common/po/system/SystemUserPO.java
  47. 66 0
      energy-manage-common/src/main/java/com/energy/manage/common/po/windenginegroup/WindEngineGroupPO.java
  48. 75 0
      energy-manage-common/src/main/java/com/energy/manage/common/po/windenginemill/WindEngineMillPO.java
  49. 86 0
      energy-manage-common/src/main/java/com/energy/manage/common/po/windfield/WindFieldPO.java
  50. 36 0
      energy-manage-common/src/main/java/com/energy/manage/common/po/windrelation/WindRelationPO.java
  51. 116 0
      energy-manage-common/src/main/java/com/energy/manage/common/reponse/ConstVar.java
  52. 406 0
      energy-manage-common/src/main/java/com/energy/manage/common/reponse/RespMsg.java
  53. 173 0
      energy-manage-common/src/main/java/com/energy/manage/common/reponse/ResultResp.java
  54. 795 0
      energy-manage-common/src/main/java/com/energy/manage/common/util/BCryptTools.java
  55. 176 0
      energy-manage-common/src/main/java/com/energy/manage/common/util/BeanTools.java
  56. 113 0
      energy-manage-common/src/main/java/com/energy/manage/common/util/CollectionTools.java
  57. 785 0
      energy-manage-common/src/main/java/com/energy/manage/common/util/DateTools.java
  58. 95 0
      energy-manage-common/src/main/java/com/energy/manage/common/util/DownLoadUtil.java
  59. 1127 0
      energy-manage-common/src/main/java/com/energy/manage/common/util/ExcelTools.java
  60. 72 0
      energy-manage-common/src/main/java/com/energy/manage/common/util/ExceptionTools.java
  61. 495 0
      energy-manage-common/src/main/java/com/energy/manage/common/util/HttpUtils.java
  62. 34 0
      energy-manage-common/src/main/java/com/energy/manage/common/util/IdGeneratorUtil.java
  63. 313 0
      energy-manage-common/src/main/java/com/energy/manage/common/util/IdUtils.java
  64. 67 0
      energy-manage-common/src/main/java/com/energy/manage/common/util/IdentitieTools.java
  65. 124 0
      energy-manage-common/src/main/java/com/energy/manage/common/util/JSONMapper.java
  66. 250 0
      energy-manage-common/src/main/java/com/energy/manage/common/util/QRCodeUtil.java
  67. 28 0
      energy-manage-common/src/main/java/com/energy/manage/common/util/RandomSeriUtil.java
  68. 1426 0
      energy-manage-common/src/main/java/com/energy/manage/common/util/StringTools.java
  69. 104 0
      energy-manage-common/src/main/java/com/energy/manage/common/util/UUIDTools.java
  70. 138 0
      energy-manage-service/pom.xml
  71. 33 0
      energy-manage-service/src/main/java/com/energy/manage/service/ManageAppApplication.java
  72. 31 0
      energy-manage-service/src/main/java/com/energy/manage/service/config/AsyncConfig.java
  73. 117 0
      energy-manage-service/src/main/java/com/energy/manage/service/config/CrossConfig.java
  74. 21 0
      energy-manage-service/src/main/java/com/energy/manage/service/config/HttpConfig.java
  75. 82 0
      energy-manage-service/src/main/java/com/energy/manage/service/config/Knife4jConfiguration.java
  76. 53 0
      energy-manage-service/src/main/java/com/energy/manage/service/config/LoginVerifyInterceptorConf.java
  77. 40 0
      energy-manage-service/src/main/java/com/energy/manage/service/config/MinIoClientConfig.java
  78. 53 0
      energy-manage-service/src/main/java/com/energy/manage/service/config/SwaggerDoc.java
  79. 116 0
      energy-manage-service/src/main/java/com/energy/manage/service/config/SystemExceptionHandler.java
  80. 57 0
      energy-manage-service/src/main/java/com/energy/manage/service/config/WebMVCConfig.java
  81. 18 0
      energy-manage-service/src/main/java/com/energy/manage/service/config/annotations/NoRepeatSubmit.java
  82. 12 0
      energy-manage-service/src/main/java/com/energy/manage/service/config/annotations/PassToken.java
  83. 14 0
      energy-manage-service/src/main/java/com/energy/manage/service/config/annotations/UserLoginToken.java
  84. 128 0
      energy-manage-service/src/main/java/com/energy/manage/service/config/aop/AopLog.java
  85. 98 0
      energy-manage-service/src/main/java/com/energy/manage/service/config/kafka/KafkaConsumerConfig.java
  86. 84 0
      energy-manage-service/src/main/java/com/energy/manage/service/config/redis/RedisConfigurer.java
  87. 55 0
      energy-manage-service/src/main/java/com/energy/manage/service/config/xxl/XxlJobConfig.java
  88. 114 0
      energy-manage-service/src/main/java/com/energy/manage/service/controller/UploadController.java
  89. 95 0
      energy-manage-service/src/main/java/com/energy/manage/service/controller/anemometertower/AnemometerTowerController.java
  90. 148 0
      energy-manage-service/src/main/java/com/energy/manage/service/controller/area/AreaApiController.java
  91. 75 0
      energy-manage-service/src/main/java/com/energy/manage/service/controller/company/WindCompanyController.java
  92. 57 0
      energy-manage-service/src/main/java/com/energy/manage/service/controller/dict/DictContentsController.java
  93. 77 0
      energy-manage-service/src/main/java/com/energy/manage/service/controller/powerwordcontract/PowerWordContractController.java
  94. 84 0
      energy-manage-service/src/main/java/com/energy/manage/service/controller/powerwordcriterion/PowerWordCriterionController.java
  95. 124 0
      energy-manage-service/src/main/java/com/energy/manage/service/controller/system/SysPermissionController.java
  96. 209 0
      energy-manage-service/src/main/java/com/energy/manage/service/controller/system/SysRoleController.java
  97. 51 0
      energy-manage-service/src/main/java/com/energy/manage/service/controller/system/SysRolePermissionController.java
  98. 75 0
      energy-manage-service/src/main/java/com/energy/manage/service/controller/system/SysTestController.java
  99. 350 0
      energy-manage-service/src/main/java/com/energy/manage/service/controller/system/SysUserInfoController.java
  100. 23 0
      energy-manage-service/src/main/java/com/energy/manage/service/controller/system/SysUserRoleController.java

+ 39 - 0
.gitignore

@@ -0,0 +1,39 @@
+# Compiled class file
+*.class
+*.DS_Store
+
+# Log file
+*.log
+
+
+# BlueJ files
+*.ctxt
+
+# Mobile Tools for Java (J2ME)
+.mtj.tmp/
+
+# Package Files #
+*.jar
+*.war
+*.nar
+*.ear
+*.zip
+*.tar.gz
+*.rar
+*.iml
+*.ipr
+*.iws
+
+# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
+hs_err_pid*
+
+#.idea
+.idea/
+target/
+.gitlab-ci.yml
+
+.log_dir_IS_UNDEFINED/
+
+rebel.xml
+
+

+ 2763 - 0
db/energy-info.sql

@@ -0,0 +1,2763 @@
+/*
+ Navicat Premium Data Transfer
+
+ Source Server         : localhost
+ Source Server Type    : MySQL
+ Source Server Version : 80036
+ Source Host           : localhost:3306
+ Source Schema         : energy
+
+ Target Server Type    : MySQL
+ Target Server Version : 80036
+ File Encoding         : 65001
+
+ Date: 28/04/2024 13:09:11
+*/
+
+SET NAMES utf8mb4;
+SET FOREIGN_KEY_CHECKS = 0;
+
+-- ----------------------------
+-- Table structure for analysis_diagram_relation
+-- ----------------------------
+DROP TABLE IF EXISTS `analysis_diagram_relation`;
+CREATE TABLE `analysis_diagram_relation` (
+  `id` int DEFAULT NULL COMMENT '主键',
+  `analysis_id` int DEFAULT NULL COMMENT '分析图表主键',
+  `path_url` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '分析结果地址minio',
+  `create_by` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '创建人',
+  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+  `update_by` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '更新人',
+  `update_time` datetime DEFAULT NULL COMMENT '更新时间'
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='分析图表关系表 ';
+
+-- ----------------------------
+-- Records of analysis_diagram_relation
+-- ----------------------------
+BEGIN;
+COMMIT;
+
+-- ----------------------------
+-- Table structure for analysis_result
+-- ----------------------------
+DROP TABLE IF EXISTS `analysis_result`;
+CREATE TABLE `analysis_result` (
+  `id` int NOT NULL AUTO_INCREMENT COMMENT '主键',
+  `bath_code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '批次编号',
+  `field_code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '风机编号',
+  `analyse_type_id` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '分析类型编号',
+  `analyse_type_name` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '分析类型名称 功率曲线分析(功率曲线一致性,功率曲线的散点分析)\n功率参数分析(额定功率分析)\n静态偏航误差分析\n变桨特性分析(最小桨距角分析)\n变桨-转速-转矩(功率)协调分析(变桨-功率的协调分析,变桨-转速分析,转速-转矩(功率)分析,)\n性能特性分析(风能利用系数分析,叶尖速比分析)\n温度传感器的性能分析(环境温度传感器,大部件温度传感器分析)',
+  `description` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '描述信息',
+  `phenomena_description` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '现象描述',
+  `cause_description` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '原因描述',
+  `troubleshoot` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '排查建议',
+  `analysis_state` tinyint(1) DEFAULT NULL COMMENT '分析状态',
+  `err_state` char(4) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '异常状态',
+  `err_info` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '异常信息',
+  `del_state` tinyint(1) DEFAULT NULL COMMENT '删除状态',
+  `create_by` int DEFAULT NULL COMMENT '创建人',
+  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+  `update_by` int DEFAULT NULL COMMENT '更新人',
+  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='分析结果表 批次分析结果表';
+
+-- ----------------------------
+-- Records of analysis_result
+-- ----------------------------
+BEGIN;
+COMMIT;
+
+-- ----------------------------
+-- Table structure for analysis_type
+-- ----------------------------
+DROP TABLE IF EXISTS `analysis_type`;
+CREATE TABLE `analysis_type` (
+  `id` int NOT NULL AUTO_INCREMENT COMMENT '主键',
+  `type_name` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '分析类型名称',
+  `parent_id` int DEFAULT NULL COMMENT '分析类型父级编号',
+  `description` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '描述',
+  `create_by` int DEFAULT NULL COMMENT '创建人',
+  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+  `update_by` int DEFAULT NULL COMMENT '更新人',
+  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='分析类型字典表 ';
+
+-- ----------------------------
+-- Records of analysis_type
+-- ----------------------------
+BEGIN;
+COMMIT;
+
+-- ----------------------------
+-- Table structure for anemometer_tower
+-- ----------------------------
+DROP TABLE IF EXISTS `anemometer_tower`;
+CREATE TABLE `anemometer_tower` (
+  `id` int NOT NULL AUTO_INCREMENT COMMENT '主键',
+  `anemometer_code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '测风塔编号',
+  `anemometer_name` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '测风塔名称',
+  `longitude` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '经度',
+  `latitude` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '纬度',
+  `state` tinyint(1) DEFAULT NULL COMMENT '状态',
+  `del_state` tinyint(1) DEFAULT NULL COMMENT '删除状态',
+  `create_by` int DEFAULT NULL COMMENT '创建人',
+  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+  `update_by` int DEFAULT NULL COMMENT '更新人',
+  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='测风塔信息 ';
+
+-- ----------------------------
+-- Records of anemometer_tower
+-- ----------------------------
+BEGIN;
+COMMIT;
+
+-- ----------------------------
+-- Table structure for anemometer_tower_data
+-- ----------------------------
+DROP TABLE IF EXISTS `anemometer_tower_data`;
+CREATE TABLE `anemometer_tower_data` (
+  `id` int NOT NULL AUTO_INCREMENT COMMENT '主键',
+  `tower_code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '测风塔编号',
+  `time` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '采集数据时间',
+  `height_name` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '层高名称',
+  `height_type` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '层高类型',
+  `wind_speed` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '实测风速',
+  `temperature` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '实测温度',
+  `pressure` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '实测气压',
+  `rainfall` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '实测雨量',
+  `density` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '大气密度',
+  `state` tinyint(1) DEFAULT NULL COMMENT '状态',
+  `del_state` tinyint(1) DEFAULT NULL COMMENT '删除状态',
+  `create_by` int DEFAULT NULL COMMENT '创建人',
+  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+  `update_by` int DEFAULT NULL COMMENT '更新人',
+  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='测风塔数据信息表 ';
+
+-- ----------------------------
+-- Records of anemometer_tower_data
+-- ----------------------------
+BEGIN;
+COMMIT;
+
+-- ----------------------------
+-- Table structure for anemometer_tower_height
+-- ----------------------------
+DROP TABLE IF EXISTS `anemometer_tower_height`;
+CREATE TABLE `anemometer_tower_height` (
+  `id` int NOT NULL AUTO_INCREMENT COMMENT '主键',
+  `anemometer_code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '测风塔编号',
+  `anemometer_height` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '测风塔高度',
+  `anemometer_type` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '高度类型',
+  `create_by` int DEFAULT NULL COMMENT '创建人',
+  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+  `update_by` int DEFAULT NULL COMMENT '更新人',
+  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='测风塔层高信息表 ';
+
+-- ----------------------------
+-- Records of anemometer_tower_height
+-- ----------------------------
+BEGIN;
+COMMIT;
+
+-- ----------------------------
+-- Table structure for anemometer_tower_relation
+-- ----------------------------
+DROP TABLE IF EXISTS `anemometer_tower_relation`;
+CREATE TABLE `anemometer_tower_relation` (
+  `id` int NOT NULL AUTO_INCREMENT COMMENT '主键',
+  `tower_code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '测风塔编号',
+  `field_code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '风场编号',
+  `create_by` int DEFAULT NULL COMMENT '创建人',
+  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+  `update_by` int DEFAULT NULL COMMENT '更新人',
+  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='测风塔与风场关系表 ';
+
+-- ----------------------------
+-- Records of anemometer_tower_relation
+-- ----------------------------
+BEGIN;
+COMMIT;
+
+-- ----------------------------
+-- Table structure for dict_constants
+-- ----------------------------
+DROP TABLE IF EXISTS `dict_constants`;
+CREATE TABLE `dict_constants` (
+  `id` int NOT NULL AUTO_INCREMENT,
+  `contents_type` tinyint DEFAULT NULL COMMENT '常量类型',
+  `contents_value` tinyint DEFAULT NULL COMMENT '常量值',
+  `contents_name` varchar(255) DEFAULT NULL COMMENT '常量显示内容',
+  `contents_describe` varchar(255) DEFAULT NULL COMMENT '描述信息',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=388 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='字典表';
+
+-- ----------------------------
+-- Records of dict_constants
+-- ----------------------------
+BEGIN;
+COMMIT;
+
+-- ----------------------------
+-- Table structure for power_word_relation_contract
+-- ----------------------------
+DROP TABLE IF EXISTS `power_word_relation_contract`;
+CREATE TABLE `power_word_relation_contract` (
+  `id` int NOT NULL AUTO_INCREMENT COMMENT '主键',
+  `field_code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '风场编号',
+  `mill_type_code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '机型编号',
+  `active_power` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '有功功率',
+  `wind_speed` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '风速',
+  `del_state` tinyint(1) DEFAULT NULL COMMENT '删除状态',
+  `create_by` int DEFAULT NULL COMMENT '创建人',
+  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+  `update_by` int DEFAULT NULL COMMENT '更新人',
+  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='合同功率曲线关系表 合同功率曲线-关联机型厂商+风场';
+
+-- ----------------------------
+-- Records of power_word_relation_contract
+-- ----------------------------
+BEGIN;
+COMMIT;
+
+-- ----------------------------
+-- Table structure for power_word_relation_criterion
+-- ----------------------------
+DROP TABLE IF EXISTS `power_word_relation_criterion`;
+CREATE TABLE `power_word_relation_criterion` (
+  `id` int NOT NULL AUTO_INCREMENT COMMENT '主键',
+  `mill_type_code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '机型编号',
+  `wind_speed` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '风速',
+  `active_power` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '有功功率',
+  `density` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '空气密度',
+  `del_state` tinyint(1) DEFAULT NULL COMMENT '删除状态',
+  `create_by` int DEFAULT NULL COMMENT '创建人',
+  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+  `update_by` int DEFAULT NULL COMMENT '更新人',
+  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='标准功率曲线关系表 标准功率曲线-关联机型';
+
+-- ----------------------------
+-- Records of power_word_relation_criterion
+-- ----------------------------
+BEGIN;
+COMMIT;
+
+-- ----------------------------
+-- Table structure for sys_areas_info
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_areas_info`;
+CREATE TABLE `sys_areas_info` (
+  `id` int NOT NULL AUTO_INCREMENT,
+  `province` varchar(255) DEFAULT NULL,
+  `city` varchar(255) DEFAULT NULL,
+  `area` varchar(255) DEFAULT NULL,
+  `area_code` varchar(10) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci DEFAULT NULL COMMENT '区域编号',
+  `type` int DEFAULT NULL,
+  `root_id` int DEFAULT NULL,
+  PRIMARY KEY (`id`),
+  KEY `areas_index` (`type`) USING BTREE
+) ENGINE=InnoDB AUTO_INCREMENT=2310 DEFAULT CHARSET=utf8mb3 COMMENT='省市区县表';
+
+-- ----------------------------
+-- Records of sys_areas_info
+-- ----------------------------
+BEGIN;
+INSERT INTO `sys_areas_info` VALUES (1, '北京市', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (2, '天津市', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (3, '河北省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (4, '山西省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (5, '内蒙古自治区', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (6, '辽宁省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (7, '吉林省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (8, '黑龙江省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (9, '上海市', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (10, '江苏省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (11, '浙江省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (12, '安徽省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (13, '福建省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (14, '江西省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (15, '山东省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (16, '河南省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (17, '湖北省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (18, '广东省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (19, '广西壮族自治区', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (20, '海南省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (21, '重庆市', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (22, '四川省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (23, '贵州省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (24, '云南省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (25, '西藏自治区', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (26, '陕西省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (27, '甘肃省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (28, '宁夏回族自治区', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (29, '新疆维吾尔族自治区', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (30, '青海省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (31, '湖南省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (101, '江苏省', '连云港市', NULL, NULL, 2, 10);
+INSERT INTO `sys_areas_info` VALUES (102, '河南省', '周口市', NULL, NULL, 2, 16);
+INSERT INTO `sys_areas_info` VALUES (103, '云南省', '丽江市', NULL, NULL, 2, 24);
+INSERT INTO `sys_areas_info` VALUES (104, '江西省', '九江市', NULL, NULL, 2, 14);
+INSERT INTO `sys_areas_info` VALUES (105, '黑龙江省', '佳木斯市', NULL, NULL, 2, 8);
+INSERT INTO `sys_areas_info` VALUES (106, '四川省', '成都市', NULL, NULL, 2, 22);
+INSERT INTO `sys_areas_info` VALUES (107, '浙江省', '嘉兴市', NULL, NULL, 2, 11);
+INSERT INTO `sys_areas_info` VALUES (108, '山西省', '大同市', NULL, NULL, 2, 4);
+INSERT INTO `sys_areas_info` VALUES (109, '四川省', '宜宾市', NULL, NULL, 2, 22);
+INSERT INTO `sys_areas_info` VALUES (110, '四川省', '泸州市', NULL, NULL, 2, 22);
+INSERT INTO `sys_areas_info` VALUES (111, '河南省', '开封市', NULL, NULL, 2, 16);
+INSERT INTO `sys_areas_info` VALUES (112, '吉林省', '长春市', NULL, NULL, 2, 7);
+INSERT INTO `sys_areas_info` VALUES (113, '湖北省', '武汉市', NULL, NULL, 2, 17);
+INSERT INTO `sys_areas_info` VALUES (114, '广东省', '揭阳市', NULL, NULL, 2, 18);
+INSERT INTO `sys_areas_info` VALUES (115, '山东省', '日照市', NULL, NULL, 2, 15);
+INSERT INTO `sys_areas_info` VALUES (116, '湖南省', '衡阳市', NULL, NULL, 2, 31);
+INSERT INTO `sys_areas_info` VALUES (117, '河南省', '平顶山市', NULL, NULL, 2, 16);
+INSERT INTO `sys_areas_info` VALUES (118, '广东省', '深圳市', NULL, NULL, 2, 18);
+INSERT INTO `sys_areas_info` VALUES (119, '福建省', '南平市', NULL, NULL, 2, 13);
+INSERT INTO `sys_areas_info` VALUES (120, '新疆维吾尔族自治区', '伊犁哈萨克自治州', NULL, NULL, 2, 29);
+INSERT INTO `sys_areas_info` VALUES (121, '山东省', '潍坊市', NULL, NULL, 2, 15);
+INSERT INTO `sys_areas_info` VALUES (122, '吉林省', '辽源市', NULL, NULL, 2, 7);
+INSERT INTO `sys_areas_info` VALUES (123, '内蒙古自治区', '阿拉善盟', NULL, NULL, 2, 5);
+INSERT INTO `sys_areas_info` VALUES (124, '黑龙江省', '哈尔滨市', NULL, NULL, 2, 8);
+INSERT INTO `sys_areas_info` VALUES (125, '黑龙江省', '伊春市', NULL, NULL, 2, 8);
+INSERT INTO `sys_areas_info` VALUES (126, '山东省', '莱芜市', NULL, NULL, 2, 15);
+INSERT INTO `sys_areas_info` VALUES (127, '河北省', '承德市', NULL, NULL, 2, 3);
+INSERT INTO `sys_areas_info` VALUES (128, '黑龙江省', '鸡西市', NULL, NULL, 2, 8);
+INSERT INTO `sys_areas_info` VALUES (129, '广东省', '广州市', NULL, NULL, 2, 18);
+INSERT INTO `sys_areas_info` VALUES (130, '江苏省', '徐州市', NULL, NULL, 2, 10);
+INSERT INTO `sys_areas_info` VALUES (131, '黑龙江省', '黑河市', NULL, NULL, 2, 8);
+INSERT INTO `sys_areas_info` VALUES (132, '安徽省', '铜陵市', NULL, NULL, 2, 12);
+INSERT INTO `sys_areas_info` VALUES (133, '山东省', '德州市', NULL, NULL, 2, 15);
+INSERT INTO `sys_areas_info` VALUES (134, '广东省', '珠海市', NULL, NULL, 2, 18);
+INSERT INTO `sys_areas_info` VALUES (135, '广西壮族自治区', '贺州市', NULL, NULL, 2, 19);
+INSERT INTO `sys_areas_info` VALUES (136, '江苏省', '扬州市', NULL, NULL, 2, 10);
+INSERT INTO `sys_areas_info` VALUES (137, '山西省', '阳泉市', NULL, NULL, 2, 4);
+INSERT INTO `sys_areas_info` VALUES (138, '河北省', '衡水市', NULL, NULL, 2, 3);
+INSERT INTO `sys_areas_info` VALUES (139, '山西省', '晋中市', NULL, NULL, 2, 4);
+INSERT INTO `sys_areas_info` VALUES (140, '山东省', '东营市', NULL, NULL, 2, 15);
+INSERT INTO `sys_areas_info` VALUES (141, '辽宁省', '本溪市', NULL, NULL, 2, 6);
+INSERT INTO `sys_areas_info` VALUES (142, '江西省', '宜春市', NULL, NULL, 2, 14);
+INSERT INTO `sys_areas_info` VALUES (143, '广东省', '梅州市', NULL, NULL, 2, 18);
+INSERT INTO `sys_areas_info` VALUES (144, '广东省', '肇庆市', NULL, NULL, 2, 18);
+INSERT INTO `sys_areas_info` VALUES (145, '湖南省', '益阳市', NULL, NULL, 2, 31);
+INSERT INTO `sys_areas_info` VALUES (146, '新疆维吾尔族自治区', '塔城地区', NULL, NULL, 2, 29);
+INSERT INTO `sys_areas_info` VALUES (147, '辽宁省', '盘锦市', NULL, NULL, 2, 6);
+INSERT INTO `sys_areas_info` VALUES (148, '青海省', '海南藏族自治州', NULL, NULL, 2, 30);
+INSERT INTO `sys_areas_info` VALUES (149, '广东省', '韶关市', NULL, NULL, 2, 18);
+INSERT INTO `sys_areas_info` VALUES (150, '福建省', '漳州市', NULL, NULL, 2, 13);
+INSERT INTO `sys_areas_info` VALUES (151, '河北省', '邢台市', NULL, NULL, 2, 3);
+INSERT INTO `sys_areas_info` VALUES (152, '浙江省', '金华市', NULL, NULL, 2, 11);
+INSERT INTO `sys_areas_info` VALUES (153, '湖北省', '荆门市', NULL, NULL, 2, 17);
+INSERT INTO `sys_areas_info` VALUES (154, '山西省', '太原市', NULL, NULL, 2, 4);
+INSERT INTO `sys_areas_info` VALUES (155, '四川省', '乐山市', NULL, NULL, 2, 22);
+INSERT INTO `sys_areas_info` VALUES (156, '湖南省', '怀化市', NULL, NULL, 2, 31);
+INSERT INTO `sys_areas_info` VALUES (157, '甘肃省', '白银市', NULL, NULL, 2, 27);
+INSERT INTO `sys_areas_info` VALUES (158, '辽宁省', '抚顺市', NULL, NULL, 2, 6);
+INSERT INTO `sys_areas_info` VALUES (159, '浙江省', '湖州市', NULL, NULL, 2, 11);
+INSERT INTO `sys_areas_info` VALUES (160, '湖北省', '仙桃市', NULL, NULL, 2, 17);
+INSERT INTO `sys_areas_info` VALUES (161, '福建省', '泉州市', NULL, NULL, 2, 13);
+INSERT INTO `sys_areas_info` VALUES (162, '河北省', '张家口市', NULL, NULL, 2, 3);
+INSERT INTO `sys_areas_info` VALUES (163, '河北省', '秦皇岛市', NULL, NULL, 2, 3);
+INSERT INTO `sys_areas_info` VALUES (164, '海南省', '五指山市', NULL, NULL, 2, 20);
+INSERT INTO `sys_areas_info` VALUES (165, '吉林省', '延边朝鲜族自治州', NULL, NULL, 2, 7);
+INSERT INTO `sys_areas_info` VALUES (166, '辽宁省', '营口市', NULL, NULL, 2, 6);
+INSERT INTO `sys_areas_info` VALUES (167, '广东省', '中山市', NULL, NULL, 2, 18);
+INSERT INTO `sys_areas_info` VALUES (168, '云南省', '思茅市', NULL, NULL, 2, 24);
+INSERT INTO `sys_areas_info` VALUES (169, '山东省', '济宁市', NULL, NULL, 2, 15);
+INSERT INTO `sys_areas_info` VALUES (170, '辽宁省', '沈阳市', NULL, NULL, 2, 6);
+INSERT INTO `sys_areas_info` VALUES (171, '广东省', '湛江市', NULL, NULL, 2, 18);
+INSERT INTO `sys_areas_info` VALUES (172, '西藏自治区', '山南地区', NULL, NULL, 2, 25);
+INSERT INTO `sys_areas_info` VALUES (173, '四川省', '凉山彝族自治州', NULL, NULL, 2, 22);
+INSERT INTO `sys_areas_info` VALUES (174, '辽宁省', '朝阳市', NULL, NULL, 2, 6);
+INSERT INTO `sys_areas_info` VALUES (175, '河南省', '焦作市', NULL, NULL, 2, 16);
+INSERT INTO `sys_areas_info` VALUES (176, '河北省', '廊坊市', NULL, NULL, 2, 3);
+INSERT INTO `sys_areas_info` VALUES (177, '福建省', '福州市', NULL, NULL, 2, 13);
+INSERT INTO `sys_areas_info` VALUES (178, '四川省', '德阳市', NULL, NULL, 2, 22);
+INSERT INTO `sys_areas_info` VALUES (179, '甘肃省', '天水市', NULL, NULL, 2, 27);
+INSERT INTO `sys_areas_info` VALUES (180, '陕西省', '咸阳市', NULL, NULL, 2, 26);
+INSERT INTO `sys_areas_info` VALUES (181, '安徽省', '宿州市', NULL, NULL, 2, 12);
+INSERT INTO `sys_areas_info` VALUES (182, '内蒙古自治区', '乌海市', NULL, NULL, 2, 5);
+INSERT INTO `sys_areas_info` VALUES (183, '新疆维吾尔族自治区', '克拉玛依市', NULL, NULL, 2, 29);
+INSERT INTO `sys_areas_info` VALUES (184, '云南省', '德宏傣族景颇族自治州', NULL, NULL, 2, 24);
+INSERT INTO `sys_areas_info` VALUES (185, '湖北省', '十堰市', NULL, NULL, 2, 17);
+INSERT INTO `sys_areas_info` VALUES (186, '湖南省', '常德市', NULL, NULL, 2, 31);
+INSERT INTO `sys_areas_info` VALUES (187, '西藏自治区', '日喀则地区', NULL, NULL, 2, 25);
+INSERT INTO `sys_areas_info` VALUES (188, '黑龙江省', '鹤岗市', NULL, NULL, 2, 8);
+INSERT INTO `sys_areas_info` VALUES (189, '宁夏回族自治区', '石嘴山市', NULL, NULL, 2, 28);
+INSERT INTO `sys_areas_info` VALUES (190, '新疆维吾尔族自治区', '阿勒泰地区', NULL, NULL, 2, 29);
+INSERT INTO `sys_areas_info` VALUES (191, '云南省', '大理白族自治州', NULL, NULL, 2, 24);
+INSERT INTO `sys_areas_info` VALUES (192, '山东省', '泰安市', NULL, NULL, 2, 15);
+INSERT INTO `sys_areas_info` VALUES (193, '青海省', '西宁市', NULL, NULL, 2, 30);
+INSERT INTO `sys_areas_info` VALUES (194, '浙江省', '舟山市', NULL, NULL, 2, 11);
+INSERT INTO `sys_areas_info` VALUES (195, '黑龙江省', '齐齐哈尔市', NULL, NULL, 2, 8);
+INSERT INTO `sys_areas_info` VALUES (196, '广东省', '清远市', NULL, NULL, 2, 18);
+INSERT INTO `sys_areas_info` VALUES (197, '广西壮族自治区', '河池市', NULL, NULL, 2, 19);
+INSERT INTO `sys_areas_info` VALUES (198, '甘肃省', '庆阳市', NULL, NULL, 2, 27);
+INSERT INTO `sys_areas_info` VALUES (199, '海南省', '儋州市', NULL, NULL, 2, 20);
+INSERT INTO `sys_areas_info` VALUES (200, '江西省', '南昌市', NULL, NULL, 2, 14);
+INSERT INTO `sys_areas_info` VALUES (201, '湖南省', '长沙市', NULL, NULL, 2, 31);
+INSERT INTO `sys_areas_info` VALUES (202, '福建省', '宁德市', NULL, NULL, 2, 13);
+INSERT INTO `sys_areas_info` VALUES (203, '山东省', '淄博市', NULL, NULL, 2, 15);
+INSERT INTO `sys_areas_info` VALUES (204, '云南省', '迪庆藏族自治州', NULL, NULL, 2, 24);
+INSERT INTO `sys_areas_info` VALUES (205, '陕西省', '渭南市', NULL, NULL, 2, 26);
+INSERT INTO `sys_areas_info` VALUES (206, '湖南省', '娄底市', NULL, NULL, 2, 31);
+INSERT INTO `sys_areas_info` VALUES (207, '新疆维吾尔族自治区', '乌鲁木齐市', NULL, NULL, 2, 29);
+INSERT INTO `sys_areas_info` VALUES (208, '四川省', '雅安市', NULL, NULL, 2, 22);
+INSERT INTO `sys_areas_info` VALUES (209, '河北省', '保定市', NULL, NULL, 2, 3);
+INSERT INTO `sys_areas_info` VALUES (210, '湖北省', '孝感市', NULL, NULL, 2, 17);
+INSERT INTO `sys_areas_info` VALUES (211, '湖南省', '湘西土家族苗族自治州', NULL, NULL, 2, 31);
+INSERT INTO `sys_areas_info` VALUES (212, '广西壮族自治区', '钦州市', NULL, NULL, 2, 19);
+INSERT INTO `sys_areas_info` VALUES (213, '辽宁省', '葫芦岛市', NULL, NULL, 2, 6);
+INSERT INTO `sys_areas_info` VALUES (214, '河南省', '洛阳市', NULL, NULL, 2, 16);
+INSERT INTO `sys_areas_info` VALUES (215, '广东省', '汕头市', NULL, NULL, 2, 18);
+INSERT INTO `sys_areas_info` VALUES (216, '山东省', '菏泽市', NULL, NULL, 2, 15);
+INSERT INTO `sys_areas_info` VALUES (217, '浙江省', '宁波市', NULL, NULL, 2, 11);
+INSERT INTO `sys_areas_info` VALUES (218, '甘肃省', '平凉市', NULL, NULL, 2, 27);
+INSERT INTO `sys_areas_info` VALUES (219, '海南省', '海口市', NULL, NULL, 2, 20);
+INSERT INTO `sys_areas_info` VALUES (220, '陕西省', '铜川市', NULL, NULL, 2, 26);
+INSERT INTO `sys_areas_info` VALUES (221, '广东省', '茂名市', NULL, NULL, 2, 18);
+INSERT INTO `sys_areas_info` VALUES (222, '湖北省', '黄石市', NULL, NULL, 2, 17);
+INSERT INTO `sys_areas_info` VALUES (223, '辽宁省', '铁岭市', NULL, NULL, 2, 6);
+INSERT INTO `sys_areas_info` VALUES (224, '四川省', '绵阳市', NULL, NULL, 2, 22);
+INSERT INTO `sys_areas_info` VALUES (225, '广西壮族自治区', '来宾市', NULL, NULL, 2, 19);
+INSERT INTO `sys_areas_info` VALUES (226, '辽宁省', '阜新市', NULL, NULL, 2, 6);
+INSERT INTO `sys_areas_info` VALUES (227, '山西省', '吕梁市', NULL, NULL, 2, 4);
+INSERT INTO `sys_areas_info` VALUES (228, '甘肃省', '兰州市', NULL, NULL, 2, 27);
+INSERT INTO `sys_areas_info` VALUES (229, '广东省', '东莞市', NULL, NULL, 2, 18);
+INSERT INTO `sys_areas_info` VALUES (230, '内蒙古自治区', '包头市', NULL, NULL, 2, 5);
+INSERT INTO `sys_areas_info` VALUES (231, '云南省', '楚雄彝族自治州', NULL, NULL, 2, 24);
+INSERT INTO `sys_areas_info` VALUES (232, '陕西省', '宝鸡市', NULL, NULL, 2, 26);
+INSERT INTO `sys_areas_info` VALUES (233, '四川省', '巴中市', NULL, NULL, 2, 22);
+INSERT INTO `sys_areas_info` VALUES (234, '江西省', '上饶市', NULL, NULL, 2, 14);
+INSERT INTO `sys_areas_info` VALUES (235, '山东省', '枣庄市', NULL, NULL, 2, 15);
+INSERT INTO `sys_areas_info` VALUES (236, '山西省', '运城市', NULL, NULL, 2, 4);
+INSERT INTO `sys_areas_info` VALUES (237, '四川省', '广安市', NULL, NULL, 2, 22);
+INSERT INTO `sys_areas_info` VALUES (238, '山西省', '临汾市', NULL, NULL, 2, 4);
+INSERT INTO `sys_areas_info` VALUES (239, '湖北省', '鄂州市', NULL, NULL, 2, 17);
+INSERT INTO `sys_areas_info` VALUES (240, '吉林省', '吉林市', NULL, NULL, 2, 7);
+INSERT INTO `sys_areas_info` VALUES (241, '广西壮族自治区', '崇左市', NULL, NULL, 2, 19);
+INSERT INTO `sys_areas_info` VALUES (242, '广西壮族自治区', '南宁市', NULL, NULL, 2, 19);
+INSERT INTO `sys_areas_info` VALUES (243, '辽宁省', '锦州市', NULL, NULL, 2, 6);
+INSERT INTO `sys_areas_info` VALUES (244, '江西省', '景德镇市', NULL, NULL, 2, 14);
+INSERT INTO `sys_areas_info` VALUES (245, '山东省', '滨州市', NULL, NULL, 2, 15);
+INSERT INTO `sys_areas_info` VALUES (246, '安徽省', '安庆市', NULL, NULL, 2, 12);
+INSERT INTO `sys_areas_info` VALUES (247, '宁夏回族自治区', '银川市', NULL, NULL, 2, 28);
+INSERT INTO `sys_areas_info` VALUES (248, '内蒙古自治区', '兴安盟', NULL, NULL, 2, 5);
+INSERT INTO `sys_areas_info` VALUES (249, '安徽省', '亳州市', NULL, NULL, 2, 12);
+INSERT INTO `sys_areas_info` VALUES (250, '广东省', '惠州市', NULL, NULL, 2, 18);
+INSERT INTO `sys_areas_info` VALUES (251, '安徽省', '马鞍山市', NULL, NULL, 2, 12);
+INSERT INTO `sys_areas_info` VALUES (252, '天津市', '天津市', NULL, NULL, 2, 2);
+INSERT INTO `sys_areas_info` VALUES (253, '安徽省', '六安市', NULL, NULL, 2, 12);
+INSERT INTO `sys_areas_info` VALUES (254, '河南省', '商丘市', NULL, NULL, 2, 16);
+INSERT INTO `sys_areas_info` VALUES (255, '四川省', '阿坝藏族羌族自治州', NULL, NULL, 2, 22);
+INSERT INTO `sys_areas_info` VALUES (256, '山东省', '威海市', NULL, NULL, 2, 15);
+INSERT INTO `sys_areas_info` VALUES (257, '浙江省', '衢州市', NULL, NULL, 2, 11);
+INSERT INTO `sys_areas_info` VALUES (258, '云南省', '怒江傈僳族自治州', NULL, NULL, 2, 24);
+INSERT INTO `sys_areas_info` VALUES (259, '新疆维吾尔族自治区', '克孜勒苏柯尔克孜自治州', NULL, NULL, 2, 29);
+INSERT INTO `sys_areas_info` VALUES (260, '黑龙江省', '牡丹江市', NULL, NULL, 2, 8);
+INSERT INTO `sys_areas_info` VALUES (261, '山东省', '烟台市', NULL, NULL, 2, 15);
+INSERT INTO `sys_areas_info` VALUES (262, '辽宁省', '大连市', NULL, NULL, 2, 6);
+INSERT INTO `sys_areas_info` VALUES (263, '浙江省', '杭州市', NULL, NULL, 2, 11);
+INSERT INTO `sys_areas_info` VALUES (264, '河北省', '石家庄市', NULL, NULL, 2, 3);
+INSERT INTO `sys_areas_info` VALUES (265, '安徽省', '阜阳市', NULL, NULL, 2, 12);
+INSERT INTO `sys_areas_info` VALUES (266, '江西省', '抚州市', NULL, NULL, 2, 14);
+INSERT INTO `sys_areas_info` VALUES (267, '福建省', '龙岩市', NULL, NULL, 2, 13);
+INSERT INTO `sys_areas_info` VALUES (268, '四川省', '遂宁市', NULL, NULL, 2, 22);
+INSERT INTO `sys_areas_info` VALUES (269, '河南省', '信阳市', NULL, NULL, 2, 16);
+INSERT INTO `sys_areas_info` VALUES (270, '云南省', '临沧市', NULL, NULL, 2, 24);
+INSERT INTO `sys_areas_info` VALUES (271, '湖北省', '咸宁市', NULL, NULL, 2, 17);
+INSERT INTO `sys_areas_info` VALUES (272, '贵州省', '铜仁地区', NULL, NULL, 2, 23);
+INSERT INTO `sys_areas_info` VALUES (273, '贵州省', '贵阳市', NULL, NULL, 2, 23);
+INSERT INTO `sys_areas_info` VALUES (274, '湖南省', '邵阳市', NULL, NULL, 2, 31);
+INSERT INTO `sys_areas_info` VALUES (275, '海南省', '三亚市', NULL, NULL, 2, 20);
+INSERT INTO `sys_areas_info` VALUES (276, '贵州省', '黔南布依族苗族自治州', NULL, NULL, 2, 23);
+INSERT INTO `sys_areas_info` VALUES (277, '河北省', '唐山市', NULL, NULL, 2, 3);
+INSERT INTO `sys_areas_info` VALUES (278, '宁夏回族自治区', '中卫市', NULL, NULL, 2, 28);
+INSERT INTO `sys_areas_info` VALUES (279, '安徽省', '黄山市', NULL, NULL, 2, 12);
+INSERT INTO `sys_areas_info` VALUES (280, '广西壮族自治区', '梧州市', NULL, NULL, 2, 19);
+INSERT INTO `sys_areas_info` VALUES (281, '江苏省', '苏州市', NULL, NULL, 2, 10);
+INSERT INTO `sys_areas_info` VALUES (282, '河南省', '驻马店市', NULL, NULL, 2, 16);
+INSERT INTO `sys_areas_info` VALUES (283, '江苏省', '镇江市', NULL, NULL, 2, 10);
+INSERT INTO `sys_areas_info` VALUES (284, '山东省', '青岛市', NULL, NULL, 2, 15);
+INSERT INTO `sys_areas_info` VALUES (285, '江苏省', '宿迁市', NULL, NULL, 2, 10);
+INSERT INTO `sys_areas_info` VALUES (286, '河北省', '沧州市', NULL, NULL, 2, 3);
+INSERT INTO `sys_areas_info` VALUES (287, '上海市', '上海市', NULL, NULL, 2, 9);
+INSERT INTO `sys_areas_info` VALUES (288, '贵州省', '遵义市', NULL, NULL, 2, 23);
+INSERT INTO `sys_areas_info` VALUES (289, '浙江省', '台州市', NULL, NULL, 2, 11);
+INSERT INTO `sys_areas_info` VALUES (290, '山西省', '朔州市', NULL, NULL, 2, 4);
+INSERT INTO `sys_areas_info` VALUES (291, '广东省', '潮州市', NULL, NULL, 2, 18);
+INSERT INTO `sys_areas_info` VALUES (292, '新疆维吾尔族自治区', '和田地区', NULL, NULL, 2, 29);
+INSERT INTO `sys_areas_info` VALUES (293, '新疆维吾尔族自治区', '昌吉回族自治州', NULL, NULL, 2, 29);
+INSERT INTO `sys_areas_info` VALUES (294, '甘肃省', '武威市', NULL, NULL, 2, 27);
+INSERT INTO `sys_areas_info` VALUES (295, '广西壮族自治区', '贵港市', NULL, NULL, 2, 19);
+INSERT INTO `sys_areas_info` VALUES (296, '新疆维吾尔族自治区', '喀什地区', NULL, NULL, 2, 29);
+INSERT INTO `sys_areas_info` VALUES (297, '贵州省', '黔西南布依族苗族自治州', NULL, NULL, 2, 23);
+INSERT INTO `sys_areas_info` VALUES (298, '四川省', '广元市', NULL, NULL, 2, 22);
+INSERT INTO `sys_areas_info` VALUES (299, '安徽省', '合肥市', NULL, NULL, 2, 12);
+INSERT INTO `sys_areas_info` VALUES (300, '湖南省', '张家界市', NULL, NULL, 2, 31);
+INSERT INTO `sys_areas_info` VALUES (301, '辽宁省', '鞍山市', NULL, NULL, 2, 6);
+INSERT INTO `sys_areas_info` VALUES (302, '湖南省', '株洲市', NULL, NULL, 2, 31);
+INSERT INTO `sys_areas_info` VALUES (303, '新疆维吾尔族自治区', '吐鲁番地区', NULL, NULL, 2, 29);
+INSERT INTO `sys_areas_info` VALUES (304, '江苏省', '常州市', NULL, NULL, 2, 10);
+INSERT INTO `sys_areas_info` VALUES (305, '辽宁省', '丹东市', NULL, NULL, 2, 6);
+INSERT INTO `sys_areas_info` VALUES (306, '山东省', '济南市', NULL, NULL, 2, 15);
+INSERT INTO `sys_areas_info` VALUES (307, '浙江省', '绍兴市', NULL, NULL, 2, 11);
+INSERT INTO `sys_areas_info` VALUES (308, '河南省', '郑州市', NULL, NULL, 2, 16);
+INSERT INTO `sys_areas_info` VALUES (309, '甘肃省', '嘉峪关市', NULL, NULL, 2, 27);
+INSERT INTO `sys_areas_info` VALUES (310, '新疆维吾尔族自治区', '巴音郭楞蒙古自治州', NULL, NULL, 2, 29);
+INSERT INTO `sys_areas_info` VALUES (311, '江苏省', '泰州市', NULL, NULL, 2, 10);
+INSERT INTO `sys_areas_info` VALUES (312, '山东省', '临沂市', NULL, NULL, 2, 15);
+INSERT INTO `sys_areas_info` VALUES (313, '江苏省', '南京市', NULL, NULL, 2, 10);
+INSERT INTO `sys_areas_info` VALUES (314, '内蒙古自治区', '赤峰市', NULL, NULL, 2, 5);
+INSERT INTO `sys_areas_info` VALUES (315, '浙江省', '温州市', NULL, NULL, 2, 11);
+INSERT INTO `sys_areas_info` VALUES (316, '内蒙古自治区', '巴彦淖尔市', NULL, NULL, 2, 5);
+INSERT INTO `sys_areas_info` VALUES (317, '四川省', '达州市', NULL, NULL, 2, 22);
+INSERT INTO `sys_areas_info` VALUES (318, '贵州省', '毕节地区', NULL, NULL, 2, 23);
+INSERT INTO `sys_areas_info` VALUES (319, '河南省', '濮阳市', NULL, NULL, 2, 16);
+INSERT INTO `sys_areas_info` VALUES (320, '江西省', '萍乡市', NULL, NULL, 2, 14);
+INSERT INTO `sys_areas_info` VALUES (321, '吉林省', '白山市', NULL, NULL, 2, 7);
+INSERT INTO `sys_areas_info` VALUES (322, '四川省', '内江市', NULL, NULL, 2, 22);
+INSERT INTO `sys_areas_info` VALUES (323, '陕西省', '商洛市', NULL, NULL, 2, 26);
+INSERT INTO `sys_areas_info` VALUES (324, '湖北省', '随州市', NULL, NULL, 2, 17);
+INSERT INTO `sys_areas_info` VALUES (325, '贵州省', '黔东南苗族侗族自治州', NULL, NULL, 2, 23);
+INSERT INTO `sys_areas_info` VALUES (326, '内蒙古自治区', '通辽市', NULL, NULL, 2, 5);
+INSERT INTO `sys_areas_info` VALUES (327, '甘肃省', '定西市', NULL, NULL, 2, 27);
+INSERT INTO `sys_areas_info` VALUES (328, '河南省', '三门峡市', NULL, NULL, 2, 16);
+INSERT INTO `sys_areas_info` VALUES (329, '江苏省', '盐城市', NULL, NULL, 2, 10);
+INSERT INTO `sys_areas_info` VALUES (330, '内蒙古自治区', '锡林郭勒盟', NULL, NULL, 2, 5);
+INSERT INTO `sys_areas_info` VALUES (331, '广西壮族自治区', '北海市', NULL, NULL, 2, 19);
+INSERT INTO `sys_areas_info` VALUES (332, '江西省', '吉安市', NULL, NULL, 2, 14);
+INSERT INTO `sys_areas_info` VALUES (333, '吉林省', '松原市', NULL, NULL, 2, 7);
+INSERT INTO `sys_areas_info` VALUES (334, '陕西省', '西安市', NULL, NULL, 2, 26);
+INSERT INTO `sys_areas_info` VALUES (335, '甘肃省', '临夏回族自治州', NULL, NULL, 2, 27);
+INSERT INTO `sys_areas_info` VALUES (336, '江西省', '赣州市', NULL, NULL, 2, 14);
+INSERT INTO `sys_areas_info` VALUES (337, '湖南省', '湘潭市', NULL, NULL, 2, 31);
+INSERT INTO `sys_areas_info` VALUES (338, '广西壮族自治区', '玉林市', NULL, NULL, 2, 19);
+INSERT INTO `sys_areas_info` VALUES (339, '贵州省', '六盘水市', NULL, NULL, 2, 23);
+INSERT INTO `sys_areas_info` VALUES (340, '湖北省', '恩施市', NULL, NULL, 2, 17);
+INSERT INTO `sys_areas_info` VALUES (341, '江西省', '新余市', NULL, NULL, 2, 14);
+INSERT INTO `sys_areas_info` VALUES (342, '四川省', '眉山市', NULL, NULL, 2, 22);
+INSERT INTO `sys_areas_info` VALUES (343, '吉林省', '白城市', NULL, NULL, 2, 7);
+INSERT INTO `sys_areas_info` VALUES (344, '陕西省', '延安市', NULL, NULL, 2, 26);
+INSERT INTO `sys_areas_info` VALUES (345, '河南省', '许昌市', NULL, NULL, 2, 16);
+INSERT INTO `sys_areas_info` VALUES (346, '福建省', '莆田市', NULL, NULL, 2, 13);
+INSERT INTO `sys_areas_info` VALUES (347, '贵州省', '安顺市', NULL, NULL, 2, 23);
+INSERT INTO `sys_areas_info` VALUES (348, '河北省', '邯郸市', NULL, NULL, 2, 3);
+INSERT INTO `sys_areas_info` VALUES (349, '四川省', '甘孜藏族自治州', NULL, NULL, 2, 22);
+INSERT INTO `sys_areas_info` VALUES (350, '四川省', '南充市', NULL, NULL, 2, 22);
+INSERT INTO `sys_areas_info` VALUES (351, '海南省', '琼海市', NULL, NULL, 2, 20);
+INSERT INTO `sys_areas_info` VALUES (352, '西藏自治区', '拉萨市', NULL, NULL, 2, 25);
+INSERT INTO `sys_areas_info` VALUES (353, '河南省', '安阳市', NULL, NULL, 2, 16);
+INSERT INTO `sys_areas_info` VALUES (354, '福建省', '厦门市', NULL, NULL, 2, 13);
+INSERT INTO `sys_areas_info` VALUES (355, '新疆维吾尔族自治区', '奎屯市', NULL, NULL, 2, 29);
+INSERT INTO `sys_areas_info` VALUES (356, '甘肃省', '金昌市', NULL, NULL, 2, 27);
+INSERT INTO `sys_areas_info` VALUES (357, '内蒙古自治区', '呼伦贝尔市', NULL, NULL, 2, 5);
+INSERT INTO `sys_areas_info` VALUES (358, '宁夏回族自治区', '固原市', NULL, NULL, 2, 28);
+INSERT INTO `sys_areas_info` VALUES (359, '湖北省', '天门市', NULL, NULL, 2, 17);
+INSERT INTO `sys_areas_info` VALUES (360, '江苏省', '淮安市', NULL, NULL, 2, 10);
+INSERT INTO `sys_areas_info` VALUES (361, '湖北省', '荆州市', NULL, NULL, 2, 17);
+INSERT INTO `sys_areas_info` VALUES (362, '甘肃省', '张掖市', NULL, NULL, 2, 27);
+INSERT INTO `sys_areas_info` VALUES (363, '重庆市', '重庆市', NULL, NULL, 2, 21);
+INSERT INTO `sys_areas_info` VALUES (364, '江苏省', '无锡市', NULL, NULL, 2, 10);
+INSERT INTO `sys_areas_info` VALUES (365, '浙江省', '丽水市', NULL, NULL, 2, 11);
+INSERT INTO `sys_areas_info` VALUES (366, '新疆维吾尔族自治区', '哈密地区', NULL, NULL, 2, 29);
+INSERT INTO `sys_areas_info` VALUES (367, '安徽省', '淮南市', NULL, NULL, 2, 12);
+INSERT INTO `sys_areas_info` VALUES (368, '北京市', '北京市', NULL, NULL, 2, 1);
+INSERT INTO `sys_areas_info` VALUES (369, '云南省', '昆明市', NULL, NULL, 2, 24);
+INSERT INTO `sys_areas_info` VALUES (370, '湖南省', '郴州市', NULL, NULL, 2, 31);
+INSERT INTO `sys_areas_info` VALUES (371, '黑龙江省', '绥化市', NULL, NULL, 2, 8);
+INSERT INTO `sys_areas_info` VALUES (372, '安徽省', '蚌埠市', NULL, NULL, 2, 12);
+INSERT INTO `sys_areas_info` VALUES (373, '黑龙江省', '双鸭山市', NULL, NULL, 2, 8);
+INSERT INTO `sys_areas_info` VALUES (374, '广东省', '河源市', NULL, NULL, 2, 18);
+INSERT INTO `sys_areas_info` VALUES (375, '四川省', '自贡市', NULL, NULL, 2, 22);
+INSERT INTO `sys_areas_info` VALUES (376, '山西省', '晋城市', NULL, NULL, 2, 4);
+INSERT INTO `sys_areas_info` VALUES (377, '安徽省', '宣城市', NULL, NULL, 2, 12);
+INSERT INTO `sys_areas_info` VALUES (378, '广东省', '佛山市', NULL, NULL, 2, 18);
+INSERT INTO `sys_areas_info` VALUES (379, '陕西省', '汉中市', NULL, NULL, 2, 26);
+INSERT INTO `sys_areas_info` VALUES (380, '安徽省', '滁州市', NULL, NULL, 2, 12);
+INSERT INTO `sys_areas_info` VALUES (381, '云南省', '保山市', NULL, NULL, 2, 24);
+INSERT INTO `sys_areas_info` VALUES (382, '山西省', '忻州市', NULL, NULL, 2, 4);
+INSERT INTO `sys_areas_info` VALUES (383, '宁夏回族自治区', '吴忠市', NULL, NULL, 2, 28);
+INSERT INTO `sys_areas_info` VALUES (384, '内蒙古自治区', '鄂尔多斯市', NULL, NULL, 2, 5);
+INSERT INTO `sys_areas_info` VALUES (385, '河南省', '鹤壁市', NULL, NULL, 2, 16);
+INSERT INTO `sys_areas_info` VALUES (386, '内蒙古自治区', '乌兰察布市', NULL, NULL, 2, 5);
+INSERT INTO `sys_areas_info` VALUES (387, '云南省', '玉溪市', NULL, NULL, 2, 24);
+INSERT INTO `sys_areas_info` VALUES (388, '广西壮族自治区', '柳州市', NULL, NULL, 2, 19);
+INSERT INTO `sys_areas_info` VALUES (389, '云南省', '昭通市', NULL, NULL, 2, 24);
+INSERT INTO `sys_areas_info` VALUES (390, '云南省', '西双版纳傣族自治州', NULL, NULL, 2, 24);
+INSERT INTO `sys_areas_info` VALUES (391, '安徽省', '池州市', NULL, NULL, 2, 12);
+INSERT INTO `sys_areas_info` VALUES (392, '广西壮族自治区', '百色市', NULL, NULL, 2, 19);
+INSERT INTO `sys_areas_info` VALUES (393, '湖南省', '岳阳市', NULL, NULL, 2, 31);
+INSERT INTO `sys_areas_info` VALUES (394, '山西省', '长治市', NULL, NULL, 2, 4);
+INSERT INTO `sys_areas_info` VALUES (395, '吉林省', '通化市', NULL, NULL, 2, 7);
+INSERT INTO `sys_areas_info` VALUES (396, '河南省', '漯河市', NULL, NULL, 2, 16);
+INSERT INTO `sys_areas_info` VALUES (397, '湖北省', '黄冈市', NULL, NULL, 2, 17);
+INSERT INTO `sys_areas_info` VALUES (398, '广东省', '江门市', NULL, NULL, 2, 18);
+INSERT INTO `sys_areas_info` VALUES (399, '云南省', '红河哈尼族彝族自治州', NULL, NULL, 2, 24);
+INSERT INTO `sys_areas_info` VALUES (400, '广西壮族自治区', '桂林市', NULL, NULL, 2, 19);
+INSERT INTO `sys_areas_info` VALUES (401, '青海省', '海东地区', NULL, NULL, 2, 30);
+INSERT INTO `sys_areas_info` VALUES (402, '山东省', '聊城市', NULL, NULL, 2, 15);
+INSERT INTO `sys_areas_info` VALUES (403, '江西省', '鹰潭市', NULL, NULL, 2, 14);
+INSERT INTO `sys_areas_info` VALUES (404, '四川省', '资阳市', NULL, NULL, 2, 22);
+INSERT INTO `sys_areas_info` VALUES (405, '河南省', '南阳市', NULL, NULL, 2, 16);
+INSERT INTO `sys_areas_info` VALUES (406, '海南省', '文昌市', NULL, NULL, 2, 20);
+INSERT INTO `sys_areas_info` VALUES (407, '安徽省', '淮北市', NULL, NULL, 2, 12);
+INSERT INTO `sys_areas_info` VALUES (408, '湖南省', '永州市', NULL, NULL, 2, 31);
+INSERT INTO `sys_areas_info` VALUES (409, '甘肃省', '酒泉市', NULL, NULL, 2, 27);
+INSERT INTO `sys_areas_info` VALUES (410, '广西壮族自治区', '防城港市', NULL, NULL, 2, 19);
+INSERT INTO `sys_areas_info` VALUES (411, '福建省', '三明市', NULL, NULL, 2, 13);
+INSERT INTO `sys_areas_info` VALUES (412, '湖北省', '襄樊市', NULL, NULL, 2, 17);
+INSERT INTO `sys_areas_info` VALUES (413, '广东省', '阳江市', NULL, NULL, 2, 18);
+INSERT INTO `sys_areas_info` VALUES (414, '湖北省', '潜江市', NULL, NULL, 2, 17);
+INSERT INTO `sys_areas_info` VALUES (415, '黑龙江省', '大庆市', NULL, NULL, 2, 8);
+INSERT INTO `sys_areas_info` VALUES (416, '江苏省', '南通市', NULL, NULL, 2, 10);
+INSERT INTO `sys_areas_info` VALUES (417, '吉林省', '四平市', NULL, NULL, 2, 7);
+INSERT INTO `sys_areas_info` VALUES (418, '河南省', '新乡市', NULL, NULL, 2, 16);
+INSERT INTO `sys_areas_info` VALUES (419, '黑龙江省', '七台河市', NULL, NULL, 2, 8);
+INSERT INTO `sys_areas_info` VALUES (420, '云南省', '曲靖市', NULL, NULL, 2, 24);
+INSERT INTO `sys_areas_info` VALUES (421, '陕西省', '榆林市', NULL, NULL, 2, 26);
+INSERT INTO `sys_areas_info` VALUES (422, '内蒙古自治区', '呼和浩特市', NULL, NULL, 2, 5);
+INSERT INTO `sys_areas_info` VALUES (423, '湖北省', '宜昌市', NULL, NULL, 2, 17);
+INSERT INTO `sys_areas_info` VALUES (424, '新疆维吾尔族自治区', '阿克苏地区', NULL, NULL, 2, 29);
+INSERT INTO `sys_areas_info` VALUES (425, '安徽省', '芜湖市', NULL, NULL, 2, 12);
+INSERT INTO `sys_areas_info` VALUES (426, '云南省', '文山壮族苗族自治州', NULL, NULL, 2, 24);
+INSERT INTO `sys_areas_info` VALUES (427, '辽宁省', '辽阳市', NULL, NULL, 2, 6);
+INSERT INTO `sys_areas_info` VALUES (428, '四川省', '攀枝花市', NULL, NULL, 2, 22);
+INSERT INTO `sys_areas_info` VALUES (501, '湖北省', '荆门市', '沙洋县', NULL, 3, 153);
+INSERT INTO `sys_areas_info` VALUES (502, '福建省', '三明市', '泰宁县', NULL, 3, 411);
+INSERT INTO `sys_areas_info` VALUES (503, '湖北省', '荆州市', '公安县', NULL, 3, 361);
+INSERT INTO `sys_areas_info` VALUES (504, '吉林省', '通化市', '梅河口市', NULL, 3, 395);
+INSERT INTO `sys_areas_info` VALUES (505, '江苏省', '徐州市', '睢宁县', NULL, 3, 130);
+INSERT INTO `sys_areas_info` VALUES (506, '甘肃省', '张掖市', '高台县', NULL, 3, 362);
+INSERT INTO `sys_areas_info` VALUES (507, '四川省', '遂宁市', '蓬溪县', NULL, 3, 268);
+INSERT INTO `sys_areas_info` VALUES (508, '云南省', '红河哈尼族彝族自治州', '蒙自县', NULL, 3, 399);
+INSERT INTO `sys_areas_info` VALUES (509, '内蒙古自治区', '乌兰察布市', '集宁区', NULL, 3, 386);
+INSERT INTO `sys_areas_info` VALUES (510, '江西省', '抚州市', '宜黄县', NULL, 3, 266);
+INSERT INTO `sys_areas_info` VALUES (511, '河南省', '信阳市', '平桥区', NULL, 3, 269);
+INSERT INTO `sys_areas_info` VALUES (512, '湖北省', '武汉市', '硚口区', NULL, 3, 113);
+INSERT INTO `sys_areas_info` VALUES (513, '江西省', '上饶市', '玉山县', NULL, 3, 234);
+INSERT INTO `sys_areas_info` VALUES (514, '安徽省', '阜阳市', '颍泉区', NULL, 3, 265);
+INSERT INTO `sys_areas_info` VALUES (515, '北京市', '北京市', '延庆县', NULL, 3, 368);
+INSERT INTO `sys_areas_info` VALUES (516, '四川省', '乐山市', '五通桥区', NULL, 3, 155);
+INSERT INTO `sys_areas_info` VALUES (517, '四川省', '自贡市', '荣县', NULL, 3, 375);
+INSERT INTO `sys_areas_info` VALUES (518, '云南省', '思茅市', '景谷傣族彝族自治县', NULL, 3, 168);
+INSERT INTO `sys_areas_info` VALUES (519, '天津市', '天津市', '津南区', NULL, 3, 252);
+INSERT INTO `sys_areas_info` VALUES (520, '北京市', '北京市', '顺义区', NULL, 3, 368);
+INSERT INTO `sys_areas_info` VALUES (521, '四川省', '成都市', '金牛区', NULL, 3, 106);
+INSERT INTO `sys_areas_info` VALUES (522, '广西壮族自治区', '防城港市', '东兴市', NULL, 3, 410);
+INSERT INTO `sys_areas_info` VALUES (523, '山西省', '临汾市', '乡宁县', NULL, 3, 238);
+INSERT INTO `sys_areas_info` VALUES (524, '广东省', '茂名市', '茂南区', NULL, 3, 221);
+INSERT INTO `sys_areas_info` VALUES (525, '河北省', '邢台市', '宁晋县', NULL, 3, 151);
+INSERT INTO `sys_areas_info` VALUES (526, '江西省', '吉安市', '永新县', NULL, 3, 332);
+INSERT INTO `sys_areas_info` VALUES (527, '广东省', '阳江市', '江城区', NULL, 3, 413);
+INSERT INTO `sys_areas_info` VALUES (528, '广东省', '河源市', '和平县', NULL, 3, 374);
+INSERT INTO `sys_areas_info` VALUES (529, '江苏省', '徐州市', '鼓楼区', NULL, 3, 130);
+INSERT INTO `sys_areas_info` VALUES (530, '贵州省', '安顺市', '西秀区', NULL, 3, 347);
+INSERT INTO `sys_areas_info` VALUES (531, '福建省', '南平市', '松溪县', NULL, 3, 119);
+INSERT INTO `sys_areas_info` VALUES (532, '云南省', '曲靖市', '富源县', NULL, 3, 420);
+INSERT INTO `sys_areas_info` VALUES (533, '贵州省', '铜仁地区', '印江土家族苗族自治县', NULL, 3, 272);
+INSERT INTO `sys_areas_info` VALUES (534, '吉林省', '吉林市', '桦甸市', NULL, 3, 240);
+INSERT INTO `sys_areas_info` VALUES (535, '河北省', '唐山市', '遵化市', NULL, 3, 277);
+INSERT INTO `sys_areas_info` VALUES (536, '云南省', '德宏傣族景颇族自治州', '盈江县', NULL, 3, 184);
+INSERT INTO `sys_areas_info` VALUES (537, '浙江省', '金华市', '浦江县', NULL, 3, 152);
+INSERT INTO `sys_areas_info` VALUES (538, '广西壮族自治区', '桂林市', '全州县', NULL, 3, 400);
+INSERT INTO `sys_areas_info` VALUES (539, '河北省', '沧州市', '黄骅市', NULL, 3, 286);
+INSERT INTO `sys_areas_info` VALUES (540, '河北省', '衡水市', '景县', NULL, 3, 138);
+INSERT INTO `sys_areas_info` VALUES (541, '山西省', '临汾市', '霍州市', NULL, 3, 238);
+INSERT INTO `sys_areas_info` VALUES (542, '山西省', '晋城市', '阳城县', NULL, 3, 376);
+INSERT INTO `sys_areas_info` VALUES (543, '湖南省', '岳阳市', '汨罗市', NULL, 3, 393);
+INSERT INTO `sys_areas_info` VALUES (544, '吉林省', '松原市', '前郭尔罗斯蒙古族自治县', NULL, 3, 333);
+INSERT INTO `sys_areas_info` VALUES (545, '黑龙江省', '大庆市', '肇州县', NULL, 3, 415);
+INSERT INTO `sys_areas_info` VALUES (546, '四川省', '成都市', '金堂县', NULL, 3, 106);
+INSERT INTO `sys_areas_info` VALUES (547, '辽宁省', '大连市', '长海县', NULL, 3, 262);
+INSERT INTO `sys_areas_info` VALUES (548, '湖北省', '十堰市', '竹溪县', NULL, 3, 185);
+INSERT INTO `sys_areas_info` VALUES (549, '浙江省', '杭州市', '临安市', NULL, 3, 263);
+INSERT INTO `sys_areas_info` VALUES (550, '河南省', '驻马店市', '平舆县', NULL, 3, 282);
+INSERT INTO `sys_areas_info` VALUES (551, '内蒙古自治区', '鄂尔多斯市', '准格尔旗', NULL, 3, 384);
+INSERT INTO `sys_areas_info` VALUES (552, '浙江省', '台州市', '仙居县', NULL, 3, 289);
+INSERT INTO `sys_areas_info` VALUES (553, '河北省', '唐山市', '古冶区', NULL, 3, 277);
+INSERT INTO `sys_areas_info` VALUES (554, '辽宁省', '铁岭市', '银州区', NULL, 3, 223);
+INSERT INTO `sys_areas_info` VALUES (555, '河南省', '周口市', '郸城县', NULL, 3, 102);
+INSERT INTO `sys_areas_info` VALUES (556, '北京市', '北京市', '丰台区', NULL, 3, 368);
+INSERT INTO `sys_areas_info` VALUES (557, '广东省', '清远市', '清新县', NULL, 3, 196);
+INSERT INTO `sys_areas_info` VALUES (558, '河南省', '洛阳市', '偃师市', NULL, 3, 214);
+INSERT INTO `sys_areas_info` VALUES (559, '黑龙江省', '大庆市', '大同区', NULL, 3, 415);
+INSERT INTO `sys_areas_info` VALUES (560, '黑龙江省', '齐齐哈尔市', '泰来县', NULL, 3, 195);
+INSERT INTO `sys_areas_info` VALUES (561, '山西省', '运城市', '芮城县', NULL, 3, 236);
+INSERT INTO `sys_areas_info` VALUES (562, '福建省', '莆田市', '城厢区', NULL, 3, 346);
+INSERT INTO `sys_areas_info` VALUES (563, '河南省', '濮阳市', '南乐县', NULL, 3, 319);
+INSERT INTO `sys_areas_info` VALUES (564, '辽宁省', '盘锦市', '兴隆台区', NULL, 3, 147);
+INSERT INTO `sys_areas_info` VALUES (565, '山东省', '菏泽市', '郓城县', NULL, 3, 216);
+INSERT INTO `sys_areas_info` VALUES (566, '黑龙江省', '佳木斯市', '桦川县', NULL, 3, 105);
+INSERT INTO `sys_areas_info` VALUES (567, '广西壮族自治区', '柳州市', '柳北区', NULL, 3, 388);
+INSERT INTO `sys_areas_info` VALUES (568, '山西省', '吕梁市', '交城县', NULL, 3, 227);
+INSERT INTO `sys_areas_info` VALUES (569, '广西壮族自治区', '桂林市', '灵川县', NULL, 3, 400);
+INSERT INTO `sys_areas_info` VALUES (570, '广西壮族自治区', '百色市', '靖西县', NULL, 3, 392);
+INSERT INTO `sys_areas_info` VALUES (571, '安徽省', '蚌埠市', '怀远县', NULL, 3, 372);
+INSERT INTO `sys_areas_info` VALUES (572, '江西省', '吉安市', '井冈山市', NULL, 3, 332);
+INSERT INTO `sys_areas_info` VALUES (573, '江西省', '南昌市', '新建县', NULL, 3, 200);
+INSERT INTO `sys_areas_info` VALUES (574, '贵州省', '遵义市', '凤冈县', NULL, 3, 288);
+INSERT INTO `sys_areas_info` VALUES (575, '江西省', '宜春市', '铜鼓县', NULL, 3, 142);
+INSERT INTO `sys_areas_info` VALUES (576, '陕西省', '宝鸡市', '凤翔县', NULL, 3, 232);
+INSERT INTO `sys_areas_info` VALUES (577, '广东省', '韶关市', '武江区', NULL, 3, 149);
+INSERT INTO `sys_areas_info` VALUES (578, '四川省', '凉山彝族自治州', '越西县', NULL, 3, 173);
+INSERT INTO `sys_areas_info` VALUES (579, '河北省', '沧州市', '沧县', NULL, 3, 286);
+INSERT INTO `sys_areas_info` VALUES (580, '安徽省', '阜阳市', '太和县', NULL, 3, 265);
+INSERT INTO `sys_areas_info` VALUES (581, '云南省', '临沧市', '凤庆县', NULL, 3, 270);
+INSERT INTO `sys_areas_info` VALUES (582, '浙江省', '丽水市', '缙云县', NULL, 3, 365);
+INSERT INTO `sys_areas_info` VALUES (583, '西藏自治区', '日喀则地区', '日喀则市', NULL, 3, 187);
+INSERT INTO `sys_areas_info` VALUES (584, '云南省', '昆明市', '安宁市', NULL, 3, 369);
+INSERT INTO `sys_areas_info` VALUES (585, '湖北省', '武汉市', '蔡甸区', NULL, 3, 113);
+INSERT INTO `sys_areas_info` VALUES (586, '宁夏回族自治区', '吴忠市', '盐池县', NULL, 3, 383);
+INSERT INTO `sys_areas_info` VALUES (587, '云南省', '大理白族自治州', '巍山彝族回族自治县', NULL, 3, 191);
+INSERT INTO `sys_areas_info` VALUES (588, '湖南省', '邵阳市', '邵东县', NULL, 3, 274);
+INSERT INTO `sys_areas_info` VALUES (589, '福建省', '福州市', '连江县', NULL, 3, 177);
+INSERT INTO `sys_areas_info` VALUES (590, '四川省', '达州市', '大竹县', NULL, 3, 317);
+INSERT INTO `sys_areas_info` VALUES (591, '浙江省', '杭州市', '西湖区', NULL, 3, 263);
+INSERT INTO `sys_areas_info` VALUES (592, '河北省', '石家庄市', '栾城县', NULL, 3, 264);
+INSERT INTO `sys_areas_info` VALUES (593, '湖南省', '永州市', '东安县', NULL, 3, 408);
+INSERT INTO `sys_areas_info` VALUES (594, '安徽省', '铜陵市', '铜官山区', NULL, 3, 132);
+INSERT INTO `sys_areas_info` VALUES (595, '广东省', '汕头市', '龙湖区', NULL, 3, 215);
+INSERT INTO `sys_areas_info` VALUES (596, '四川省', '德阳市', '什邡市', NULL, 3, 178);
+INSERT INTO `sys_areas_info` VALUES (597, '云南省', '临沧市', '临翔区', NULL, 3, 270);
+INSERT INTO `sys_areas_info` VALUES (598, '内蒙古自治区', '鄂尔多斯市', '东胜区', NULL, 3, 384);
+INSERT INTO `sys_areas_info` VALUES (599, '福建省', '南平市', '光泽县', NULL, 3, 119);
+INSERT INTO `sys_areas_info` VALUES (600, '四川省', '南充市', '营山县', NULL, 3, 350);
+INSERT INTO `sys_areas_info` VALUES (601, '山西省', '大同市', '城区', NULL, 3, 108);
+INSERT INTO `sys_areas_info` VALUES (602, '云南省', '红河哈尼族彝族自治州', '元阳县', NULL, 3, 399);
+INSERT INTO `sys_areas_info` VALUES (603, '浙江省', '温州市', '瓯海区', NULL, 3, 315);
+INSERT INTO `sys_areas_info` VALUES (604, '河北省', '邯郸市', '魏县', NULL, 3, 348);
+INSERT INTO `sys_areas_info` VALUES (605, '山东省', '泰安市', '岱岳区', NULL, 3, 192);
+INSERT INTO `sys_areas_info` VALUES (606, '广西壮族自治区', '百色市', '乐业县', NULL, 3, 392);
+INSERT INTO `sys_areas_info` VALUES (607, '四川省', '南充市', '嘉陵区', NULL, 3, 350);
+INSERT INTO `sys_areas_info` VALUES (608, '黑龙江省', '牡丹江市', '东安区', NULL, 3, 260);
+INSERT INTO `sys_areas_info` VALUES (609, '山东省', '聊城市', '东昌府区', NULL, 3, 402);
+INSERT INTO `sys_areas_info` VALUES (610, '青海省', '西宁市', '城北区', NULL, 3, 193);
+INSERT INTO `sys_areas_info` VALUES (611, '云南省', '红河哈尼族彝族自治州', '个旧市', NULL, 3, 399);
+INSERT INTO `sys_areas_info` VALUES (612, '江苏省', '南京市', '雨花台区', NULL, 3, 313);
+INSERT INTO `sys_areas_info` VALUES (613, '湖北省', '荆门市', '东宝区', NULL, 3, 153);
+INSERT INTO `sys_areas_info` VALUES (614, '山西省', '吕梁市', '中阳县', NULL, 3, 227);
+INSERT INTO `sys_areas_info` VALUES (615, '广西壮族自治区', '柳州市', '柳江县', NULL, 3, 388);
+INSERT INTO `sys_areas_info` VALUES (616, '河北省', '石家庄市', '行唐县', NULL, 3, 264);
+INSERT INTO `sys_areas_info` VALUES (617, '山西省', '运城市', '闻喜县', NULL, 3, 236);
+INSERT INTO `sys_areas_info` VALUES (618, '江西省', '赣州市', '兴国县', NULL, 3, 336);
+INSERT INTO `sys_areas_info` VALUES (619, '浙江省', '嘉兴市', '秀城区', NULL, 3, 107);
+INSERT INTO `sys_areas_info` VALUES (620, '浙江省', '宁波市', '镇海区', NULL, 3, 217);
+INSERT INTO `sys_areas_info` VALUES (621, '湖北省', '黄冈市', '罗田县', NULL, 3, 397);
+INSERT INTO `sys_areas_info` VALUES (622, '辽宁省', '大连市', '庄河市', NULL, 3, 262);
+INSERT INTO `sys_areas_info` VALUES (623, '河南省', '漯河市', '郾城区', NULL, 3, 396);
+INSERT INTO `sys_areas_info` VALUES (624, '吉林省', '长春市', '南关区', NULL, 3, 112);
+INSERT INTO `sys_areas_info` VALUES (625, '安徽省', '黄山市', '休宁县', NULL, 3, 279);
+INSERT INTO `sys_areas_info` VALUES (626, '天津市', '天津市', '宝坻区', NULL, 3, 252);
+INSERT INTO `sys_areas_info` VALUES (627, '山西省', '晋中市', '祁县', NULL, 3, 139);
+INSERT INTO `sys_areas_info` VALUES (628, '山东省', '青岛市', '崂山区', NULL, 3, 284);
+INSERT INTO `sys_areas_info` VALUES (629, '广西壮族自治区', '梧州市', '岑溪市', NULL, 3, 280);
+INSERT INTO `sys_areas_info` VALUES (630, '安徽省', '安庆市', '怀宁县', NULL, 3, 246);
+INSERT INTO `sys_areas_info` VALUES (631, '甘肃省', '张掖市', '山丹县', NULL, 3, 362);
+INSERT INTO `sys_areas_info` VALUES (632, '黑龙江省', '黑河市', '嫩江县', NULL, 3, 131);
+INSERT INTO `sys_areas_info` VALUES (633, '浙江省', '嘉兴市', '桐乡市', NULL, 3, 107);
+INSERT INTO `sys_areas_info` VALUES (634, '河北省', '张家口市', '尚义县', NULL, 3, 162);
+INSERT INTO `sys_areas_info` VALUES (635, '湖北省', '十堰市', '张湾区', NULL, 3, 185);
+INSERT INTO `sys_areas_info` VALUES (636, '云南省', '临沧市', '双江拉祜族佤族布朗族傣族自治县', NULL, 3, 270);
+INSERT INTO `sys_areas_info` VALUES (637, '江西省', '上饶市', '婺源县', NULL, 3, 234);
+INSERT INTO `sys_areas_info` VALUES (638, '四川省', '南充市', '蓬安县', NULL, 3, 350);
+INSERT INTO `sys_areas_info` VALUES (639, '内蒙古自治区', '呼和浩特市', '赛罕区', NULL, 3, 422);
+INSERT INTO `sys_areas_info` VALUES (640, '陕西省', '西安市', '户县', NULL, 3, 334);
+INSERT INTO `sys_areas_info` VALUES (641, '河北省', '邯郸市', '永年县', NULL, 3, 348);
+INSERT INTO `sys_areas_info` VALUES (642, '辽宁省', '锦州市', '古塔区', NULL, 3, 243);
+INSERT INTO `sys_areas_info` VALUES (643, '河南省', '信阳市', '固始县', NULL, 3, 269);
+INSERT INTO `sys_areas_info` VALUES (644, '福建省', '宁德市', '霞浦县', NULL, 3, 202);
+INSERT INTO `sys_areas_info` VALUES (645, '辽宁省', '丹东市', '振安区', NULL, 3, 305);
+INSERT INTO `sys_areas_info` VALUES (646, '四川省', '达州市', '渠县', NULL, 3, 317);
+INSERT INTO `sys_areas_info` VALUES (647, '浙江省', '丽水市', '松阳县', NULL, 3, 365);
+INSERT INTO `sys_areas_info` VALUES (648, '山东省', '泰安市', '宁阳县', NULL, 3, 192);
+INSERT INTO `sys_areas_info` VALUES (649, '辽宁省', '营口市', '大石桥市', NULL, 3, 166);
+INSERT INTO `sys_areas_info` VALUES (650, '陕西省', '榆林市', '榆阳区', NULL, 3, 421);
+INSERT INTO `sys_areas_info` VALUES (651, '广西壮族自治区', '百色市', '田东县', NULL, 3, 392);
+INSERT INTO `sys_areas_info` VALUES (652, '广东省', '广州市', '海珠区', NULL, 3, 129);
+INSERT INTO `sys_areas_info` VALUES (653, '陕西省', '渭南市', '合阳县', NULL, 3, 205);
+INSERT INTO `sys_areas_info` VALUES (654, '江苏省', '苏州市', '吴江市', NULL, 3, 281);
+INSERT INTO `sys_areas_info` VALUES (655, '广西壮族自治区', '来宾市', '忻城县', NULL, 3, 225);
+INSERT INTO `sys_areas_info` VALUES (656, '四川省', '达州市', '通川区', NULL, 3, 317);
+INSERT INTO `sys_areas_info` VALUES (657, '河北省', '邯郸市', '邯郸县', NULL, 3, 348);
+INSERT INTO `sys_areas_info` VALUES (658, '黑龙江省', '佳木斯市', '富锦市', NULL, 3, 105);
+INSERT INTO `sys_areas_info` VALUES (659, '广东省', '深圳市', '南山区', NULL, 3, 118);
+INSERT INTO `sys_areas_info` VALUES (660, '湖北省', '武汉市', '新洲区', NULL, 3, 113);
+INSERT INTO `sys_areas_info` VALUES (661, '广西壮族自治区', '南宁市', '邕宁区', NULL, 3, 242);
+INSERT INTO `sys_areas_info` VALUES (662, '河北省', '邢台市', '临城县', NULL, 3, 151);
+INSERT INTO `sys_areas_info` VALUES (663, '江西省', '吉安市', '泰和县', NULL, 3, 332);
+INSERT INTO `sys_areas_info` VALUES (664, '河北省', '保定市', '清苑县', NULL, 3, 209);
+INSERT INTO `sys_areas_info` VALUES (665, '甘肃省', '武威市', '凉州区', NULL, 3, 294);
+INSERT INTO `sys_areas_info` VALUES (666, '江苏省', '宿迁市', '宿城区', NULL, 3, 285);
+INSERT INTO `sys_areas_info` VALUES (667, '河北省', '唐山市', '乐亭县', NULL, 3, 277);
+INSERT INTO `sys_areas_info` VALUES (668, '辽宁省', '朝阳市', '双塔区', NULL, 3, 174);
+INSERT INTO `sys_areas_info` VALUES (669, '河北省', '承德市', '兴隆县', NULL, 3, 127);
+INSERT INTO `sys_areas_info` VALUES (670, '安徽省', '宿州市', '灵璧县', NULL, 3, 181);
+INSERT INTO `sys_areas_info` VALUES (671, '甘肃省', '兰州市', '七里河区', NULL, 3, 228);
+INSERT INTO `sys_areas_info` VALUES (672, '云南省', '昆明市', '官渡区', NULL, 3, 369);
+INSERT INTO `sys_areas_info` VALUES (673, '安徽省', '亳州市', '利辛县', NULL, 3, 249);
+INSERT INTO `sys_areas_info` VALUES (674, '河北省', '秦皇岛市', '海港区', NULL, 3, 163);
+INSERT INTO `sys_areas_info` VALUES (675, '云南省', '文山壮族苗族自治州', '丘北县', NULL, 3, 426);
+INSERT INTO `sys_areas_info` VALUES (676, '河北省', '邯郸市', '磁县', NULL, 3, 348);
+INSERT INTO `sys_areas_info` VALUES (677, '广东省', '清远市', '清城区', NULL, 3, 196);
+INSERT INTO `sys_areas_info` VALUES (678, '山西省', '运城市', '万荣县', NULL, 3, 236);
+INSERT INTO `sys_areas_info` VALUES (679, '天津市', '天津市', '北辰区', NULL, 3, 252);
+INSERT INTO `sys_areas_info` VALUES (680, '四川省', '绵阳市', '江油市', NULL, 3, 224);
+INSERT INTO `sys_areas_info` VALUES (681, '江西省', '南昌市', '进贤县', NULL, 3, 200);
+INSERT INTO `sys_areas_info` VALUES (682, '广西壮族自治区', '南宁市', '宾阳县', NULL, 3, 242);
+INSERT INTO `sys_areas_info` VALUES (683, '河北省', '张家口市', '涿鹿县', NULL, 3, 162);
+INSERT INTO `sys_areas_info` VALUES (684, '甘肃省', '庆阳市', '庆城县', NULL, 3, 198);
+INSERT INTO `sys_areas_info` VALUES (685, '山东省', '东营市', '东营区', NULL, 3, 140);
+INSERT INTO `sys_areas_info` VALUES (686, '河南省', '郑州市', '新密市', NULL, 3, 308);
+INSERT INTO `sys_areas_info` VALUES (687, '贵州省', '黔东南苗族侗族自治州', '锦屏县', NULL, 3, 325);
+INSERT INTO `sys_areas_info` VALUES (688, '辽宁省', '锦州市', '黑山县', NULL, 3, 243);
+INSERT INTO `sys_areas_info` VALUES (689, '河南省', '平顶山市', '鲁山县', NULL, 3, 117);
+INSERT INTO `sys_areas_info` VALUES (690, '湖北省', '荆州市', '沙市区', NULL, 3, 361);
+INSERT INTO `sys_areas_info` VALUES (691, '山东省', '烟台市', '芝罘区', NULL, 3, 261);
+INSERT INTO `sys_areas_info` VALUES (692, '内蒙古自治区', '阿拉善盟', '阿拉善左旗', NULL, 3, 123);
+INSERT INTO `sys_areas_info` VALUES (693, '江苏省', '常州市', '武进区', NULL, 3, 304);
+INSERT INTO `sys_areas_info` VALUES (694, '内蒙古自治区', '包头市', '昆都仑区', NULL, 3, 230);
+INSERT INTO `sys_areas_info` VALUES (695, '山西省', '长治市', '沁县', NULL, 3, 394);
+INSERT INTO `sys_areas_info` VALUES (696, '河南省', '郑州市', '二七区', NULL, 3, 308);
+INSERT INTO `sys_areas_info` VALUES (697, '辽宁省', '铁岭市', '西丰县', NULL, 3, 223);
+INSERT INTO `sys_areas_info` VALUES (698, '湖北省', '随州市', '广水市', NULL, 3, 324);
+INSERT INTO `sys_areas_info` VALUES (699, '广西壮族自治区', '桂林市', '七星区', NULL, 3, 400);
+INSERT INTO `sys_areas_info` VALUES (700, '上海市', '上海市', '杨浦区', NULL, 3, 287);
+INSERT INTO `sys_areas_info` VALUES (701, '山西省', '运城市', '临猗县', NULL, 3, 236);
+INSERT INTO `sys_areas_info` VALUES (702, '甘肃省', '庆阳市', '西峰区', NULL, 3, 198);
+INSERT INTO `sys_areas_info` VALUES (703, '江西省', '赣州市', '宁都县', NULL, 3, 336);
+INSERT INTO `sys_areas_info` VALUES (704, '江西省', '宜春市', '樟树市', NULL, 3, 142);
+INSERT INTO `sys_areas_info` VALUES (705, '福建省', '福州市', '闽侯县', NULL, 3, 177);
+INSERT INTO `sys_areas_info` VALUES (706, '广东省', '广州市', '萝岗区', NULL, 3, 129);
+INSERT INTO `sys_areas_info` VALUES (707, '河北省', '衡水市', '武邑县', NULL, 3, 138);
+INSERT INTO `sys_areas_info` VALUES (708, '云南省', '昭通市', '彝良县', NULL, 3, 389);
+INSERT INTO `sys_areas_info` VALUES (709, '四川省', '成都市', '新都区', NULL, 3, 106);
+INSERT INTO `sys_areas_info` VALUES (710, '江苏省', '无锡市', '滨湖区', NULL, 3, 364);
+INSERT INTO `sys_areas_info` VALUES (711, '广西壮族自治区', '梧州市', '苍梧县', NULL, 3, 280);
+INSERT INTO `sys_areas_info` VALUES (712, '河北省', '廊坊市', '永清县', NULL, 3, 176);
+INSERT INTO `sys_areas_info` VALUES (713, '浙江省', '湖州市', '安吉县', NULL, 3, 159);
+INSERT INTO `sys_areas_info` VALUES (714, '广东省', '肇庆市', '端州区', NULL, 3, 144);
+INSERT INTO `sys_areas_info` VALUES (715, '四川省', '眉山市', '东坡区', NULL, 3, 342);
+INSERT INTO `sys_areas_info` VALUES (716, '辽宁省', '丹东市', '东港市', NULL, 3, 305);
+INSERT INTO `sys_areas_info` VALUES (717, '湖南省', '长沙市', '开福区', NULL, 3, 201);
+INSERT INTO `sys_areas_info` VALUES (718, '湖北省', '咸宁市', '嘉鱼县', NULL, 3, 271);
+INSERT INTO `sys_areas_info` VALUES (719, '湖北省', '荆州市', '石首市', NULL, 3, 361);
+INSERT INTO `sys_areas_info` VALUES (720, '广西壮族自治区', '玉林市', '陆川县', NULL, 3, 338);
+INSERT INTO `sys_areas_info` VALUES (721, '江苏省', '淮安市', '洪泽县', NULL, 3, 360);
+INSERT INTO `sys_areas_info` VALUES (722, '广东省', '珠海市', '金湾区', NULL, 3, 134);
+INSERT INTO `sys_areas_info` VALUES (723, '江苏省', '常州市', '天宁区', NULL, 3, 304);
+INSERT INTO `sys_areas_info` VALUES (724, '河南省', '三门峡市', '陕县', NULL, 3, 328);
+INSERT INTO `sys_areas_info` VALUES (725, '江苏省', '泰州市', '高港区', NULL, 3, 311);
+INSERT INTO `sys_areas_info` VALUES (726, '广东省', '江门市', '开平市', NULL, 3, 398);
+INSERT INTO `sys_areas_info` VALUES (727, '辽宁省', '盘锦市', '盘山县', NULL, 3, 147);
+INSERT INTO `sys_areas_info` VALUES (728, '广西壮族自治区', '钦州市', '灵山县', NULL, 3, 212);
+INSERT INTO `sys_areas_info` VALUES (729, '贵州省', '遵义市', '湄潭县', NULL, 3, 288);
+INSERT INTO `sys_areas_info` VALUES (730, '甘肃省', '张掖市', '甘州区', NULL, 3, 362);
+INSERT INTO `sys_areas_info` VALUES (731, '山西省', '晋中市', '灵石县', NULL, 3, 139);
+INSERT INTO `sys_areas_info` VALUES (732, '辽宁省', '丹东市', '凤城市', NULL, 3, 305);
+INSERT INTO `sys_areas_info` VALUES (733, '浙江省', '杭州市', '滨江区', NULL, 3, 263);
+INSERT INTO `sys_areas_info` VALUES (734, '辽宁省', '鞍山市', '海城市', NULL, 3, 301);
+INSERT INTO `sys_areas_info` VALUES (735, '辽宁省', '朝阳市', '朝阳县', NULL, 3, 174);
+INSERT INTO `sys_areas_info` VALUES (736, '甘肃省', '天水市', '秦安县', NULL, 3, 179);
+INSERT INTO `sys_areas_info` VALUES (737, '河北省', '保定市', '望都县', NULL, 3, 209);
+INSERT INTO `sys_areas_info` VALUES (738, '山东省', '菏泽市', '巨野县', NULL, 3, 216);
+INSERT INTO `sys_areas_info` VALUES (739, '广西壮族自治区', '玉林市', '兴业县', NULL, 3, 338);
+INSERT INTO `sys_areas_info` VALUES (740, '浙江省', '湖州市', '南浔区', NULL, 3, 159);
+INSERT INTO `sys_areas_info` VALUES (741, '云南省', '昭通市', '大关县', NULL, 3, 389);
+INSERT INTO `sys_areas_info` VALUES (742, '河南省', '安阳市', '滑县', NULL, 3, 353);
+INSERT INTO `sys_areas_info` VALUES (743, '河北省', '衡水市', '深州市', NULL, 3, 138);
+INSERT INTO `sys_areas_info` VALUES (744, '四川省', '眉山市', '彭山县', NULL, 3, 342);
+INSERT INTO `sys_areas_info` VALUES (745, '广东省', '汕头市', '濠江区', NULL, 3, 215);
+INSERT INTO `sys_areas_info` VALUES (746, '河北省', '秦皇岛市', '青龙满族自治县', NULL, 3, 163);
+INSERT INTO `sys_areas_info` VALUES (747, '浙江省', '温州市', '瑞安市', NULL, 3, 315);
+INSERT INTO `sys_areas_info` VALUES (748, '安徽省', '滁州市', '明光市', NULL, 3, 380);
+INSERT INTO `sys_areas_info` VALUES (749, '河北省', '廊坊市', '三河市', NULL, 3, 176);
+INSERT INTO `sys_areas_info` VALUES (750, '福建省', '泉州市', '南安市', NULL, 3, 161);
+INSERT INTO `sys_areas_info` VALUES (751, '江苏省', '盐城市', '滨海县', NULL, 3, 329);
+INSERT INTO `sys_areas_info` VALUES (752, '云南省', '西双版纳傣族自治州', '勐腊县', NULL, 3, 390);
+INSERT INTO `sys_areas_info` VALUES (753, '河南省', '焦作市', '武陟县', NULL, 3, 175);
+INSERT INTO `sys_areas_info` VALUES (754, '重庆市', '重庆市', '巴南区', NULL, 3, 363);
+INSERT INTO `sys_areas_info` VALUES (755, '河南省', '平顶山市', '宝丰县', NULL, 3, 117);
+INSERT INTO `sys_areas_info` VALUES (756, '河北省', '衡水市', '安平县', NULL, 3, 138);
+INSERT INTO `sys_areas_info` VALUES (757, '福建省', '漳州市', '长泰县', NULL, 3, 150);
+INSERT INTO `sys_areas_info` VALUES (758, '重庆市', '重庆市', '长寿区', NULL, 3, 363);
+INSERT INTO `sys_areas_info` VALUES (759, '重庆市', '重庆市', '璧山县', NULL, 3, 363);
+INSERT INTO `sys_areas_info` VALUES (760, '河南省', '焦作市', '解放区', NULL, 3, 175);
+INSERT INTO `sys_areas_info` VALUES (761, '贵州省', '黔西南布依族苗族自治州', '安龙县', NULL, 3, 297);
+INSERT INTO `sys_areas_info` VALUES (762, '四川省', '成都市', '双流县', NULL, 3, 106);
+INSERT INTO `sys_areas_info` VALUES (763, '河南省', '焦作市', '济源市', NULL, 3, 175);
+INSERT INTO `sys_areas_info` VALUES (764, '江西省', '抚州市', '黎川县', NULL, 3, 266);
+INSERT INTO `sys_areas_info` VALUES (765, '福建省', '泉州市', '晋江市', NULL, 3, 161);
+INSERT INTO `sys_areas_info` VALUES (766, '辽宁省', '葫芦岛市', '其他', NULL, 3, 213);
+INSERT INTO `sys_areas_info` VALUES (767, '辽宁省', '抚顺市', '东洲区', NULL, 3, 158);
+INSERT INTO `sys_areas_info` VALUES (768, '河北省', '保定市', '定兴县', NULL, 3, 209);
+INSERT INTO `sys_areas_info` VALUES (769, '安徽省', '合肥市', '蜀山区', NULL, 3, 299);
+INSERT INTO `sys_areas_info` VALUES (770, '河北省', '秦皇岛市', '北戴河区', NULL, 3, 163);
+INSERT INTO `sys_areas_info` VALUES (771, '江苏省', '泰州市', '兴化市', NULL, 3, 311);
+INSERT INTO `sys_areas_info` VALUES (772, '陕西省', '西安市', '雁塔区', NULL, 3, 334);
+INSERT INTO `sys_areas_info` VALUES (773, '河北省', '廊坊市', '香河县', NULL, 3, 176);
+INSERT INTO `sys_areas_info` VALUES (774, '天津市', '天津市', '东丽区', NULL, 3, 252);
+INSERT INTO `sys_areas_info` VALUES (775, '山西省', '运城市', '河津市', NULL, 3, 236);
+INSERT INTO `sys_areas_info` VALUES (776, '湖北省', '襄樊市', '樊城区', NULL, 3, 412);
+INSERT INTO `sys_areas_info` VALUES (777, '河北省', '邢台市', '威县', NULL, 3, 151);
+INSERT INTO `sys_areas_info` VALUES (778, '云南省', '思茅市', '镇沅彝族哈尼族拉祜族自治县', NULL, 3, 168);
+INSERT INTO `sys_areas_info` VALUES (779, '重庆市', '重庆市', '九龙坡区', NULL, 3, 363);
+INSERT INTO `sys_areas_info` VALUES (780, '湖南省', '衡阳市', '衡东县', NULL, 3, 116);
+INSERT INTO `sys_areas_info` VALUES (781, '天津市', '天津市', '红桥区', NULL, 3, 252);
+INSERT INTO `sys_areas_info` VALUES (782, '浙江省', '台州市', '三门县', NULL, 3, 289);
+INSERT INTO `sys_areas_info` VALUES (783, '江西省', '抚州市', '南城县', NULL, 3, 266);
+INSERT INTO `sys_areas_info` VALUES (784, '陕西省', '铜川市', '耀州区', NULL, 3, 220);
+INSERT INTO `sys_areas_info` VALUES (785, '安徽省', '阜阳市', '颍州区', NULL, 3, 265);
+INSERT INTO `sys_areas_info` VALUES (786, '广西壮族自治区', '柳州市', '城中区', NULL, 3, 388);
+INSERT INTO `sys_areas_info` VALUES (787, '河南省', '漯河市', '临颍县', NULL, 3, 396);
+INSERT INTO `sys_areas_info` VALUES (788, '河南省', '郑州市', '中牟县', NULL, 3, 308);
+INSERT INTO `sys_areas_info` VALUES (789, '北京市', '北京市', '通州区', NULL, 3, 368);
+INSERT INTO `sys_areas_info` VALUES (790, '黑龙江省', '大庆市', '龙凤区', NULL, 3, 415);
+INSERT INTO `sys_areas_info` VALUES (791, '河南省', '平顶山市', '汝州市', NULL, 3, 117);
+INSERT INTO `sys_areas_info` VALUES (792, '山西省', '长治市', '屯留县', NULL, 3, 394);
+INSERT INTO `sys_areas_info` VALUES (793, '山东省', '济南市', '济阳县', NULL, 3, 306);
+INSERT INTO `sys_areas_info` VALUES (794, '江苏省', '南京市', '六合区', NULL, 3, 313);
+INSERT INTO `sys_areas_info` VALUES (795, '河南省', '安阳市', '安阳县', NULL, 3, 353);
+INSERT INTO `sys_areas_info` VALUES (796, '江西省', '上饶市', '德兴市', NULL, 3, 234);
+INSERT INTO `sys_areas_info` VALUES (797, '浙江省', '杭州市', '余杭区', NULL, 3, 263);
+INSERT INTO `sys_areas_info` VALUES (798, '天津市', '天津市', '河西区', NULL, 3, 252);
+INSERT INTO `sys_areas_info` VALUES (799, '四川省', '宜宾市', '珙县', NULL, 3, 109);
+INSERT INTO `sys_areas_info` VALUES (800, '山西省', '太原市', '尖草坪区', NULL, 3, 154);
+INSERT INTO `sys_areas_info` VALUES (801, '安徽省', '阜阳市', '阜南县', NULL, 3, 265);
+INSERT INTO `sys_areas_info` VALUES (802, '山西省', '临汾市', '侯马市', NULL, 3, 238);
+INSERT INTO `sys_areas_info` VALUES (803, '山东省', '济宁市', '金乡县', NULL, 3, 169);
+INSERT INTO `sys_areas_info` VALUES (804, '河南省', '安阳市', '龙安区', NULL, 3, 353);
+INSERT INTO `sys_areas_info` VALUES (805, '湖南省', '湘潭市', '湘潭县', NULL, 3, 337);
+INSERT INTO `sys_areas_info` VALUES (806, '四川省', '达州市', '达县', NULL, 3, 317);
+INSERT INTO `sys_areas_info` VALUES (807, '甘肃省', '平凉市', '庄浪县', NULL, 3, 218);
+INSERT INTO `sys_areas_info` VALUES (808, '湖北省', '咸宁市', '咸安区', NULL, 3, 271);
+INSERT INTO `sys_areas_info` VALUES (809, '重庆市', '重庆市', '垫江县', NULL, 3, 363);
+INSERT INTO `sys_areas_info` VALUES (810, '黑龙江省', '哈尔滨市', '香坊区', NULL, 3, 124);
+INSERT INTO `sys_areas_info` VALUES (811, '上海市', '上海市', '黄浦区', NULL, 3, 287);
+INSERT INTO `sys_areas_info` VALUES (812, '吉林省', '白城市', '通榆县', NULL, 3, 343);
+INSERT INTO `sys_areas_info` VALUES (813, '四川省', '成都市', '龙泉驿区', NULL, 3, 106);
+INSERT INTO `sys_areas_info` VALUES (814, '河北省', '秦皇岛市', '卢龙县', NULL, 3, 163);
+INSERT INTO `sys_areas_info` VALUES (815, '重庆市', '重庆市', '铜梁县', NULL, 3, 363);
+INSERT INTO `sys_areas_info` VALUES (816, '甘肃省', '酒泉市', '肃州区', NULL, 3, 409);
+INSERT INTO `sys_areas_info` VALUES (817, '河南省', '平顶山市', '新华区', NULL, 3, 117);
+INSERT INTO `sys_areas_info` VALUES (818, '湖北省', '孝感市', '其他', NULL, 3, 210);
+INSERT INTO `sys_areas_info` VALUES (819, '山东省', '日照市', '五莲县', NULL, 3, 115);
+INSERT INTO `sys_areas_info` VALUES (820, '四川省', '宜宾市', '江安县', NULL, 3, 109);
+INSERT INTO `sys_areas_info` VALUES (821, '福建省', '龙岩市', '其他', NULL, 3, 267);
+INSERT INTO `sys_areas_info` VALUES (822, '河南省', '三门峡市', '灵宝市', NULL, 3, 328);
+INSERT INTO `sys_areas_info` VALUES (823, '广东省', '肇庆市', '四会市', NULL, 3, 144);
+INSERT INTO `sys_areas_info` VALUES (824, '内蒙古自治区', '兴安盟', '科尔沁右翼前旗', NULL, 3, 248);
+INSERT INTO `sys_areas_info` VALUES (825, '湖南省', '衡阳市', '雁峰区', NULL, 3, 116);
+INSERT INTO `sys_areas_info` VALUES (826, '山西省', '太原市', '清徐县', NULL, 3, 154);
+INSERT INTO `sys_areas_info` VALUES (827, '福建省', '龙岩市', '长汀县', NULL, 3, 267);
+INSERT INTO `sys_areas_info` VALUES (828, '辽宁省', '营口市', '盖州市', NULL, 3, 166);
+INSERT INTO `sys_areas_info` VALUES (829, '陕西省', '商洛市', '洛南县', NULL, 3, 323);
+INSERT INTO `sys_areas_info` VALUES (830, '河南省', '焦作市', '修武县', NULL, 3, 175);
+INSERT INTO `sys_areas_info` VALUES (831, '湖北省', '孝感市', '应城市', NULL, 3, 210);
+INSERT INTO `sys_areas_info` VALUES (832, '甘肃省', '白银市', '平川区', NULL, 3, 157);
+INSERT INTO `sys_areas_info` VALUES (833, '江苏省', '南通市', '海门市', NULL, 3, 416);
+INSERT INTO `sys_areas_info` VALUES (834, '安徽省', '淮南市', '谢家集区', NULL, 3, 367);
+INSERT INTO `sys_areas_info` VALUES (835, '内蒙古自治区', '兴安盟', '科尔沁右翼中旗', NULL, 3, 248);
+INSERT INTO `sys_areas_info` VALUES (836, '广西壮族自治区', '河池市', '南丹县', NULL, 3, 197);
+INSERT INTO `sys_areas_info` VALUES (837, '江西省', '吉安市', '吉安县', NULL, 3, 332);
+INSERT INTO `sys_areas_info` VALUES (838, '辽宁省', '鞍山市', '立山区', NULL, 3, 301);
+INSERT INTO `sys_areas_info` VALUES (839, '河北省', '邢台市', '巨鹿县', NULL, 3, 151);
+INSERT INTO `sys_areas_info` VALUES (840, '四川省', '达州市', '开江县', NULL, 3, 317);
+INSERT INTO `sys_areas_info` VALUES (841, '河北省', '廊坊市', '霸州市', NULL, 3, 176);
+INSERT INTO `sys_areas_info` VALUES (842, '山西省', '朔州市', '平鲁区', NULL, 3, 290);
+INSERT INTO `sys_areas_info` VALUES (843, '辽宁省', '锦州市', '凌海市', NULL, 3, 243);
+INSERT INTO `sys_areas_info` VALUES (844, '湖北省', '荆州市', '监利县', NULL, 3, 361);
+INSERT INTO `sys_areas_info` VALUES (845, '山东省', '临沂市', '河东区', NULL, 3, 312);
+INSERT INTO `sys_areas_info` VALUES (846, '河北省', '石家庄市', '元氏县', NULL, 3, 264);
+INSERT INTO `sys_areas_info` VALUES (847, '上海市', '上海市', '闵行区', NULL, 3, 287);
+INSERT INTO `sys_areas_info` VALUES (848, '吉林省', '白城市', '洮北区', NULL, 3, 343);
+INSERT INTO `sys_areas_info` VALUES (849, '云南省', '思茅市', '西盟佤族自治县', NULL, 3, 168);
+INSERT INTO `sys_areas_info` VALUES (850, '广东省', '江门市', '蓬江区', NULL, 3, 398);
+INSERT INTO `sys_areas_info` VALUES (851, '贵州省', '毕节地区', '大方县', NULL, 3, 318);
+INSERT INTO `sys_areas_info` VALUES (852, '河南省', '南阳市', '西峡县', NULL, 3, 405);
+INSERT INTO `sys_areas_info` VALUES (853, '辽宁省', '抚顺市', '望花区', NULL, 3, 158);
+INSERT INTO `sys_areas_info` VALUES (854, '山西省', '长治市', '城区', NULL, 3, 394);
+INSERT INTO `sys_areas_info` VALUES (855, '广东省', '清远市', '佛冈县', NULL, 3, 196);
+INSERT INTO `sys_areas_info` VALUES (856, '河北省', '石家庄市', '鹿泉市', NULL, 3, 264);
+INSERT INTO `sys_areas_info` VALUES (857, '河南省', '南阳市', '桐柏县', NULL, 3, 405);
+INSERT INTO `sys_areas_info` VALUES (858, '辽宁省', '本溪市', '本溪满族自治县', NULL, 3, 141);
+INSERT INTO `sys_areas_info` VALUES (859, '浙江省', '衢州市', '龙游县', NULL, 3, 257);
+INSERT INTO `sys_areas_info` VALUES (860, '福建省', '莆田市', '秀屿区', NULL, 3, 346);
+INSERT INTO `sys_areas_info` VALUES (861, '江苏省', '宿迁市', '泗洪县', NULL, 3, 285);
+INSERT INTO `sys_areas_info` VALUES (862, '江苏省', '淮安市', '涟水县', NULL, 3, 360);
+INSERT INTO `sys_areas_info` VALUES (863, '湖南省', '益阳市', '安化县', NULL, 3, 145);
+INSERT INTO `sys_areas_info` VALUES (864, '辽宁省', '本溪市', '平山区', NULL, 3, 141);
+INSERT INTO `sys_areas_info` VALUES (865, '青海省', '海南藏族自治州', '共和县', NULL, 3, 148);
+INSERT INTO `sys_areas_info` VALUES (866, '四川省', '绵阳市', '北川羌族自治县', NULL, 3, 224);
+INSERT INTO `sys_areas_info` VALUES (867, '江西省', '九江市', '都昌县', NULL, 3, 104);
+INSERT INTO `sys_areas_info` VALUES (868, '广西壮族自治区', '柳州市', '柳城县', NULL, 3, 388);
+INSERT INTO `sys_areas_info` VALUES (869, '云南省', '文山壮族苗族自治州', '马关县', NULL, 3, 426);
+INSERT INTO `sys_areas_info` VALUES (870, '江苏省', '扬州市', '广陵区', NULL, 3, 136);
+INSERT INTO `sys_areas_info` VALUES (871, '吉林省', '白山市', '八道江区', NULL, 3, 321);
+INSERT INTO `sys_areas_info` VALUES (872, '浙江省', '杭州市', '淳安县', NULL, 3, 263);
+INSERT INTO `sys_areas_info` VALUES (873, '河南省', '新乡市', '新乡县', NULL, 3, 418);
+INSERT INTO `sys_areas_info` VALUES (874, '上海市', '上海市', '松江区', NULL, 3, 287);
+INSERT INTO `sys_areas_info` VALUES (875, '河北省', '承德市', '滦平县', NULL, 3, 127);
+INSERT INTO `sys_areas_info` VALUES (876, '浙江省', '舟山市', '定海区', NULL, 3, 194);
+INSERT INTO `sys_areas_info` VALUES (877, '河北省', '唐山市', '唐海县', NULL, 3, 277);
+INSERT INTO `sys_areas_info` VALUES (878, '河北省', '保定市', '北市区', NULL, 3, 209);
+INSERT INTO `sys_areas_info` VALUES (879, '江西省', '新余市', '渝水区', NULL, 3, 341);
+INSERT INTO `sys_areas_info` VALUES (880, '山东省', '德州市', '齐河县', NULL, 3, 133);
+INSERT INTO `sys_areas_info` VALUES (881, '云南省', '昆明市', '石林彝族自治县', NULL, 3, 369);
+INSERT INTO `sys_areas_info` VALUES (882, '河南省', '周口市', '扶沟县', NULL, 3, 102);
+INSERT INTO `sys_areas_info` VALUES (883, '河南省', '新乡市', '原阳县', NULL, 3, 418);
+INSERT INTO `sys_areas_info` VALUES (884, '陕西省', '延安市', '宝塔区', NULL, 3, 344);
+INSERT INTO `sys_areas_info` VALUES (885, '河北省', '石家庄市', '辛集市', NULL, 3, 264);
+INSERT INTO `sys_areas_info` VALUES (886, '广西壮族自治区', '河池市', '环江毛南族自治县', NULL, 3, 197);
+INSERT INTO `sys_areas_info` VALUES (887, '新疆维吾尔族自治区', '乌鲁木齐市', '乌鲁木齐县', NULL, 3, 207);
+INSERT INTO `sys_areas_info` VALUES (888, '山西省', '大同市', '阳高县', NULL, 3, 108);
+INSERT INTO `sys_areas_info` VALUES (889, '江西省', '赣州市', '南康市', NULL, 3, 336);
+INSERT INTO `sys_areas_info` VALUES (890, '河北省', '沧州市', '任丘市', NULL, 3, 286);
+INSERT INTO `sys_areas_info` VALUES (891, '山西省', '运城市', '盐湖区', NULL, 3, 236);
+INSERT INTO `sys_areas_info` VALUES (892, '湖北省', '恩施市', '建始县', NULL, 3, 340);
+INSERT INTO `sys_areas_info` VALUES (893, '四川省', '乐山市', '夹江县', NULL, 3, 155);
+INSERT INTO `sys_areas_info` VALUES (894, '河南省', '信阳市', '商城县', NULL, 3, 269);
+INSERT INTO `sys_areas_info` VALUES (895, '云南省', '昭通市', '绥江县', NULL, 3, 389);
+INSERT INTO `sys_areas_info` VALUES (896, '黑龙江省', '鸡西市', '其他', NULL, 3, 128);
+INSERT INTO `sys_areas_info` VALUES (897, '安徽省', '亳州市', '蒙城县', NULL, 3, 249);
+INSERT INTO `sys_areas_info` VALUES (898, '浙江省', '杭州市', '富阳市', NULL, 3, 263);
+INSERT INTO `sys_areas_info` VALUES (899, '河北省', '沧州市', '吴桥县', NULL, 3, 286);
+INSERT INTO `sys_areas_info` VALUES (900, '浙江省', '台州市', '玉环县', NULL, 3, 289);
+INSERT INTO `sys_areas_info` VALUES (901, '黑龙江省', '哈尔滨市', '尚志市', NULL, 3, 124);
+INSERT INTO `sys_areas_info` VALUES (902, '云南省', '玉溪市', '新平彝族傣族自治县', NULL, 3, 387);
+INSERT INTO `sys_areas_info` VALUES (903, '江西省', '景德镇市', '珠山区', NULL, 3, 244);
+INSERT INTO `sys_areas_info` VALUES (904, '广东省', '梅州市', '五华县', NULL, 3, 143);
+INSERT INTO `sys_areas_info` VALUES (905, '上海市', '上海市', '嘉定区', NULL, 3, 287);
+INSERT INTO `sys_areas_info` VALUES (906, '河北省', '保定市', '南市区', NULL, 3, 209);
+INSERT INTO `sys_areas_info` VALUES (907, '黑龙江省', '哈尔滨市', '平房区', NULL, 3, 124);
+INSERT INTO `sys_areas_info` VALUES (908, '湖北省', '随州市', '曾都区', NULL, 3, 324);
+INSERT INTO `sys_areas_info` VALUES (909, '浙江省', '嘉兴市', '海宁市', NULL, 3, 107);
+INSERT INTO `sys_areas_info` VALUES (910, '广西壮族自治区', '贺州市', '八步区', NULL, 3, 135);
+INSERT INTO `sys_areas_info` VALUES (911, '四川省', '资阳市', '雁江区', NULL, 3, 404);
+INSERT INTO `sys_areas_info` VALUES (912, '湖北省', '荆门市', '掇刀区', NULL, 3, 153);
+INSERT INTO `sys_areas_info` VALUES (913, '天津市', '天津市', '和平区', NULL, 3, 252);
+INSERT INTO `sys_areas_info` VALUES (914, '四川省', '广安市', '广安区', NULL, 3, 237);
+INSERT INTO `sys_areas_info` VALUES (915, '天津市', '天津市', '河东区', NULL, 3, 252);
+INSERT INTO `sys_areas_info` VALUES (916, '江苏省', '无锡市', '锡山区', NULL, 3, 364);
+INSERT INTO `sys_areas_info` VALUES (917, '内蒙古自治区', '呼和浩特市', '回民区', NULL, 3, 422);
+INSERT INTO `sys_areas_info` VALUES (918, '贵州省', '铜仁地区', '铜仁市', NULL, 3, 272);
+INSERT INTO `sys_areas_info` VALUES (919, '云南省', '昭通市', '永善县', NULL, 3, 389);
+INSERT INTO `sys_areas_info` VALUES (920, '贵州省', '黔东南苗族侗族自治州', '黎平县', NULL, 3, 325);
+INSERT INTO `sys_areas_info` VALUES (921, '辽宁省', '鞍山市', '岫岩满族自治县', NULL, 3, 301);
+INSERT INTO `sys_areas_info` VALUES (922, '辽宁省', '大连市', '沙河口区', NULL, 3, 262);
+INSERT INTO `sys_areas_info` VALUES (923, '湖南省', '郴州市', '桂阳县', NULL, 3, 370);
+INSERT INTO `sys_areas_info` VALUES (924, '广东省', '广州市', '花都区', NULL, 3, 129);
+INSERT INTO `sys_areas_info` VALUES (925, '安徽省', '淮南市', '田家庵区', NULL, 3, 367);
+INSERT INTO `sys_areas_info` VALUES (926, '江苏省', '连云港市', '东海县', NULL, 3, 101);
+INSERT INTO `sys_areas_info` VALUES (927, '福建省', '福州市', '平潭县', NULL, 3, 177);
+INSERT INTO `sys_areas_info` VALUES (928, '福建省', '宁德市', '福安市', NULL, 3, 202);
+INSERT INTO `sys_areas_info` VALUES (929, '云南省', '思茅市', '景东彝族自治县', NULL, 3, 168);
+INSERT INTO `sys_areas_info` VALUES (930, '江西省', '上饶市', '广丰县', NULL, 3, 234);
+INSERT INTO `sys_areas_info` VALUES (931, '广西壮族自治区', '河池市', '大化瑶族自治县', NULL, 3, 197);
+INSERT INTO `sys_areas_info` VALUES (932, '青海省', '海东地区', '平安县', NULL, 3, 401);
+INSERT INTO `sys_areas_info` VALUES (933, '湖南省', '永州市', '道县', NULL, 3, 408);
+INSERT INTO `sys_areas_info` VALUES (934, '河南省', '焦作市', '博爱县', NULL, 3, 175);
+INSERT INTO `sys_areas_info` VALUES (935, '广西壮族自治区', '贵港市', '港北区', NULL, 3, 295);
+INSERT INTO `sys_areas_info` VALUES (936, '内蒙古自治区', '包头市', '青山区', NULL, 3, 230);
+INSERT INTO `sys_areas_info` VALUES (937, '新疆维吾尔族自治区', '塔城地区', '沙湾县', NULL, 3, 146);
+INSERT INTO `sys_areas_info` VALUES (938, '辽宁省', '沈阳市', '皇姑区', NULL, 3, 170);
+INSERT INTO `sys_areas_info` VALUES (939, '湖北省', '宜昌市', '秭归县', NULL, 3, 423);
+INSERT INTO `sys_areas_info` VALUES (940, '黑龙江省', '牡丹江市', '海林市', NULL, 3, 260);
+INSERT INTO `sys_areas_info` VALUES (941, '江苏省', '苏州市', '沧浪区', NULL, 3, 281);
+INSERT INTO `sys_areas_info` VALUES (942, '内蒙古自治区', '包头市', '九原区', NULL, 3, 230);
+INSERT INTO `sys_areas_info` VALUES (943, '贵州省', '遵义市', '仁怀市', NULL, 3, 288);
+INSERT INTO `sys_areas_info` VALUES (944, '广东省', '佛山市', '南海区', NULL, 3, 378);
+INSERT INTO `sys_areas_info` VALUES (945, '山西省', '长治市', '襄垣县', NULL, 3, 394);
+INSERT INTO `sys_areas_info` VALUES (946, '新疆维吾尔族自治区', '阿勒泰地区', '石河子市', NULL, 3, 190);
+INSERT INTO `sys_areas_info` VALUES (947, '河南省', '南阳市', '邓州市', NULL, 3, 405);
+INSERT INTO `sys_areas_info` VALUES (948, '云南省', '大理白族自治州', '宾川县', NULL, 3, 191);
+INSERT INTO `sys_areas_info` VALUES (949, '北京市', '北京市', '房山区', NULL, 3, 368);
+INSERT INTO `sys_areas_info` VALUES (950, '江苏省', '南京市', '江宁区', NULL, 3, 313);
+INSERT INTO `sys_areas_info` VALUES (951, '福建省', '漳州市', '龙海市', NULL, 3, 150);
+INSERT INTO `sys_areas_info` VALUES (952, '河北省', '廊坊市', '安次区', NULL, 3, 176);
+INSERT INTO `sys_areas_info` VALUES (953, '湖南省', '岳阳市', '岳阳县', NULL, 3, 393);
+INSERT INTO `sys_areas_info` VALUES (954, '四川省', '广安市', '岳池县', NULL, 3, 237);
+INSERT INTO `sys_areas_info` VALUES (955, '云南省', '文山壮族苗族自治州', '麻栗坡县', NULL, 3, 426);
+INSERT INTO `sys_areas_info` VALUES (956, '天津市', '天津市', '河北区', NULL, 3, 252);
+INSERT INTO `sys_areas_info` VALUES (957, '河南省', '许昌市', '许昌县', NULL, 3, 345);
+INSERT INTO `sys_areas_info` VALUES (958, '云南省', '思茅市', '澜沧拉祜族自治县', NULL, 3, 168);
+INSERT INTO `sys_areas_info` VALUES (959, '山东省', '菏泽市', '定陶县', NULL, 3, 216);
+INSERT INTO `sys_areas_info` VALUES (960, '江苏省', '常州市', '新北区', NULL, 3, 304);
+INSERT INTO `sys_areas_info` VALUES (961, '山西省', '太原市', '迎泽区', NULL, 3, 154);
+INSERT INTO `sys_areas_info` VALUES (962, '福建省', '福州市', '其他', NULL, 3, 177);
+INSERT INTO `sys_areas_info` VALUES (963, '河北省', '石家庄市', '高邑县', NULL, 3, 264);
+INSERT INTO `sys_areas_info` VALUES (964, '河南省', '新乡市', '获嘉县', NULL, 3, 418);
+INSERT INTO `sys_areas_info` VALUES (965, '河南省', '安阳市', '汤阴县', NULL, 3, 353);
+INSERT INTO `sys_areas_info` VALUES (966, '安徽省', '合肥市', '肥西县', NULL, 3, 299);
+INSERT INTO `sys_areas_info` VALUES (967, '广西壮族自治区', '桂林市', '恭城瑶族自治县', NULL, 3, 400);
+INSERT INTO `sys_areas_info` VALUES (968, '辽宁省', '抚顺市', '顺城区', NULL, 3, 158);
+INSERT INTO `sys_areas_info` VALUES (969, '浙江省', '丽水市', '云和县', NULL, 3, 365);
+INSERT INTO `sys_areas_info` VALUES (970, '山西省', '临汾市', '浮山县', NULL, 3, 238);
+INSERT INTO `sys_areas_info` VALUES (971, '云南省', '昆明市', '五华区', NULL, 3, 369);
+INSERT INTO `sys_areas_info` VALUES (972, '湖南省', '郴州市', '永兴县', NULL, 3, 370);
+INSERT INTO `sys_areas_info` VALUES (973, '湖北省', '潜江市', '其他', NULL, 3, 414);
+INSERT INTO `sys_areas_info` VALUES (974, '福建省', '漳州市', '云霄县', NULL, 3, 150);
+INSERT INTO `sys_areas_info` VALUES (975, '吉林省', '通化市', '二道江区', NULL, 3, 395);
+INSERT INTO `sys_areas_info` VALUES (976, '黑龙江省', '鹤岗市', '其他', NULL, 3, 188);
+INSERT INTO `sys_areas_info` VALUES (977, '四川省', '达州市', '宣汉县', NULL, 3, 317);
+INSERT INTO `sys_areas_info` VALUES (978, '山东省', '枣庄市', '峄城区', NULL, 3, 235);
+INSERT INTO `sys_areas_info` VALUES (979, '浙江省', '台州市', '临海市', NULL, 3, 289);
+INSERT INTO `sys_areas_info` VALUES (980, '江苏省', '连云港市', '海州区', NULL, 3, 101);
+INSERT INTO `sys_areas_info` VALUES (981, '宁夏回族自治区', '吴忠市', '利通区', NULL, 3, 383);
+INSERT INTO `sys_areas_info` VALUES (982, '河南省', '周口市', '沈丘县', NULL, 3, 102);
+INSERT INTO `sys_areas_info` VALUES (983, '河北省', '承德市', '隆化县', NULL, 3, 127);
+INSERT INTO `sys_areas_info` VALUES (984, '浙江省', '嘉兴市', '海盐县', NULL, 3, 107);
+INSERT INTO `sys_areas_info` VALUES (985, '河北省', '邯郸市', '邯山区', NULL, 3, 348);
+INSERT INTO `sys_areas_info` VALUES (986, '河北省', '张家口市', '赤城县', NULL, 3, 162);
+INSERT INTO `sys_areas_info` VALUES (987, '江西省', '九江市', '彭泽县', NULL, 3, 104);
+INSERT INTO `sys_areas_info` VALUES (988, '江苏省', '南京市', '高淳县', NULL, 3, 313);
+INSERT INTO `sys_areas_info` VALUES (989, '甘肃省', '武威市', '民勤县', NULL, 3, 294);
+INSERT INTO `sys_areas_info` VALUES (990, '山东省', '济宁市', '市中区', NULL, 3, 169);
+INSERT INTO `sys_areas_info` VALUES (991, '河北省', '廊坊市', '文安县', NULL, 3, 176);
+INSERT INTO `sys_areas_info` VALUES (992, '云南省', '昭通市', '威信县', NULL, 3, 389);
+INSERT INTO `sys_areas_info` VALUES (993, '甘肃省', '平凉市', '泾川县', NULL, 3, 218);
+INSERT INTO `sys_areas_info` VALUES (994, '云南省', '昆明市', '宜良县', NULL, 3, 369);
+INSERT INTO `sys_areas_info` VALUES (995, '河北省', '邢台市', '南宫市', NULL, 3, 151);
+INSERT INTO `sys_areas_info` VALUES (996, '贵州省', '黔西南布依族苗族自治州', '兴仁县', NULL, 3, 297);
+INSERT INTO `sys_areas_info` VALUES (997, '河南省', '焦作市', '温县', NULL, 3, 175);
+INSERT INTO `sys_areas_info` VALUES (998, '甘肃省', '庆阳市', '其他', NULL, 3, 198);
+INSERT INTO `sys_areas_info` VALUES (999, '宁夏回族自治区', '银川市', '西夏区', NULL, 3, 247);
+INSERT INTO `sys_areas_info` VALUES (1000, '内蒙古自治区', '乌海市', '乌达区', NULL, 3, 182);
+INSERT INTO `sys_areas_info` VALUES (1001, '广西壮族自治区', '南宁市', '江南区', NULL, 3, 242);
+INSERT INTO `sys_areas_info` VALUES (1002, '新疆维吾尔族自治区', '巴音郭楞蒙古自治州', '和静县', NULL, 3, 310);
+INSERT INTO `sys_areas_info` VALUES (1003, '湖南省', '郴州市', '汝城县', NULL, 3, 370);
+INSERT INTO `sys_areas_info` VALUES (1004, '湖北省', '武汉市', '汉南区', NULL, 3, 113);
+INSERT INTO `sys_areas_info` VALUES (1005, '江苏省', '盐城市', '建湖县', NULL, 3, 329);
+INSERT INTO `sys_areas_info` VALUES (1006, '河南省', '商丘市', '夏邑县', NULL, 3, 254);
+INSERT INTO `sys_areas_info` VALUES (1007, '浙江省', '丽水市', '青田县', NULL, 3, 365);
+INSERT INTO `sys_areas_info` VALUES (1008, '福建省', '三明市', '尤溪县', NULL, 3, 411);
+INSERT INTO `sys_areas_info` VALUES (1009, '广东省', '河源市', '紫金县', NULL, 3, 374);
+INSERT INTO `sys_areas_info` VALUES (1010, '河北省', '承德市', '双桥区', NULL, 3, 127);
+INSERT INTO `sys_areas_info` VALUES (1011, '湖北省', '鄂州市', '鄂城区', NULL, 3, 239);
+INSERT INTO `sys_areas_info` VALUES (1012, '河北省', '石家庄市', '无极县', NULL, 3, 264);
+INSERT INTO `sys_areas_info` VALUES (1013, '江西省', '九江市', '庐山区', NULL, 3, 104);
+INSERT INTO `sys_areas_info` VALUES (1014, '重庆市', '重庆市', '荣昌县', NULL, 3, 363);
+INSERT INTO `sys_areas_info` VALUES (1015, '浙江省', '台州市', '天台县', NULL, 3, 289);
+INSERT INTO `sys_areas_info` VALUES (1016, '江苏省', '连云港市', '新浦区', NULL, 3, 101);
+INSERT INTO `sys_areas_info` VALUES (1017, '江苏省', '苏州市', '吴中区', NULL, 3, 281);
+INSERT INTO `sys_areas_info` VALUES (1018, '浙江省', '湖州市', '吴兴区', NULL, 3, 159);
+INSERT INTO `sys_areas_info` VALUES (1019, '云南省', '德宏傣族景颇族自治州', '瑞丽市', NULL, 3, 184);
+INSERT INTO `sys_areas_info` VALUES (1020, '山东省', '菏泽市', '牡丹区', NULL, 3, 216);
+INSERT INTO `sys_areas_info` VALUES (1021, '黑龙江省', '大庆市', '红岗区', NULL, 3, 415);
+INSERT INTO `sys_areas_info` VALUES (1022, '辽宁省', '大连市', '金州区', NULL, 3, 262);
+INSERT INTO `sys_areas_info` VALUES (1023, '山西省', '忻州市', '定襄县', NULL, 3, 382);
+INSERT INTO `sys_areas_info` VALUES (1024, '湖北省', '宜昌市', '远安县', NULL, 3, 423);
+INSERT INTO `sys_areas_info` VALUES (1025, '河北省', '石家庄市', '正定县', NULL, 3, 264);
+INSERT INTO `sys_areas_info` VALUES (1026, '重庆市', '重庆市', '渝中区', NULL, 3, 363);
+INSERT INTO `sys_areas_info` VALUES (1027, '江西省', '抚州市', '南丰县', NULL, 3, 266);
+INSERT INTO `sys_areas_info` VALUES (1028, '山东省', '威海市', '荣成市', NULL, 3, 256);
+INSERT INTO `sys_areas_info` VALUES (1029, '山东省', '青岛市', '即墨市', NULL, 3, 284);
+INSERT INTO `sys_areas_info` VALUES (1030, '广东省', '东莞市', '常平镇', NULL, 3, 229);
+INSERT INTO `sys_areas_info` VALUES (1031, '山西省', '太原市', '杏花岭区', NULL, 3, 154);
+INSERT INTO `sys_areas_info` VALUES (1032, '广东省', '广州市', '番禺区', NULL, 3, 129);
+INSERT INTO `sys_areas_info` VALUES (1033, '江苏省', '淮安市', '盱眙县', NULL, 3, 360);
+INSERT INTO `sys_areas_info` VALUES (1034, '江苏省', '盐城市', '亭湖区', NULL, 3, 329);
+INSERT INTO `sys_areas_info` VALUES (1035, '上海市', '上海市', '宝山区', NULL, 3, 287);
+INSERT INTO `sys_areas_info` VALUES (1036, '江苏省', '徐州市', '邳州市', NULL, 3, 130);
+INSERT INTO `sys_areas_info` VALUES (1037, '河北省', '沧州市', '南皮县', NULL, 3, 286);
+INSERT INTO `sys_areas_info` VALUES (1038, '新疆维吾尔族自治区', '巴音郭楞蒙古自治州', '轮台县', NULL, 3, 310);
+INSERT INTO `sys_areas_info` VALUES (1039, '陕西省', '西安市', '未央区', NULL, 3, 334);
+INSERT INTO `sys_areas_info` VALUES (1040, '湖南省', '湘潭市', '湘乡市', NULL, 3, 337);
+INSERT INTO `sys_areas_info` VALUES (1041, '安徽省', '宿州市', '萧县', NULL, 3, 181);
+INSERT INTO `sys_areas_info` VALUES (1042, '辽宁省', '沈阳市', '大东区', NULL, 3, 170);
+INSERT INTO `sys_areas_info` VALUES (1043, '湖北省', '宜昌市', '宜都市', NULL, 3, 423);
+INSERT INTO `sys_areas_info` VALUES (1044, '广西壮族自治区', '南宁市', '青秀区', NULL, 3, 242);
+INSERT INTO `sys_areas_info` VALUES (1045, '广西壮族自治区', '河池市', '罗城仫佬族自治县', NULL, 3, 197);
+INSERT INTO `sys_areas_info` VALUES (1046, '山东省', '济宁市', '兖州市', NULL, 3, 169);
+INSERT INTO `sys_areas_info` VALUES (1047, '湖北省', '武汉市', '武昌区', NULL, 3, 113);
+INSERT INTO `sys_areas_info` VALUES (1048, '广东省', '深圳市', '宝安区', NULL, 3, 118);
+INSERT INTO `sys_areas_info` VALUES (1049, '河南省', '信阳市', '潢川县', NULL, 3, 269);
+INSERT INTO `sys_areas_info` VALUES (1050, '江西省', '南昌市', '湾里区', NULL, 3, 200);
+INSERT INTO `sys_areas_info` VALUES (1051, '宁夏回族自治区', '固原市', '西吉县', NULL, 3, 358);
+INSERT INTO `sys_areas_info` VALUES (1052, '河北省', '张家口市', '阳原县', NULL, 3, 162);
+INSERT INTO `sys_areas_info` VALUES (1053, '云南省', '大理白族自治州', '大理市', NULL, 3, 191);
+INSERT INTO `sys_areas_info` VALUES (1054, '河北省', '保定市', '高阳县', NULL, 3, 209);
+INSERT INTO `sys_areas_info` VALUES (1055, '天津市', '天津市', '南开区', NULL, 3, 252);
+INSERT INTO `sys_areas_info` VALUES (1056, '河北省', '廊坊市', '固安县', NULL, 3, 176);
+INSERT INTO `sys_areas_info` VALUES (1057, '江苏省', '宿迁市', '沭阳县', NULL, 3, 285);
+INSERT INTO `sys_areas_info` VALUES (1058, '甘肃省', '天水市', '其他', NULL, 3, 179);
+INSERT INTO `sys_areas_info` VALUES (1059, '贵州省', '铜仁地区', '思南县', NULL, 3, 272);
+INSERT INTO `sys_areas_info` VALUES (1060, '广东省', '湛江市', '赤坎区', NULL, 3, 171);
+INSERT INTO `sys_areas_info` VALUES (1061, '山西省', '大同市', '浑源县', NULL, 3, 108);
+INSERT INTO `sys_areas_info` VALUES (1062, '安徽省', '安庆市', '迎江区', NULL, 3, 246);
+INSERT INTO `sys_areas_info` VALUES (1063, '江西省', '宜春市', '其他', NULL, 3, 142);
+INSERT INTO `sys_areas_info` VALUES (1064, '云南省', '玉溪市', '通海县', NULL, 3, 387);
+INSERT INTO `sys_areas_info` VALUES (1065, '辽宁省', '铁岭市', '开原市', NULL, 3, 223);
+INSERT INTO `sys_areas_info` VALUES (1066, '贵州省', '遵义市', '红花岗区', NULL, 3, 288);
+INSERT INTO `sys_areas_info` VALUES (1067, '山西省', '吕梁市', '柳林县', NULL, 3, 227);
+INSERT INTO `sys_areas_info` VALUES (1068, '河南省', '商丘市', '睢县', NULL, 3, 254);
+INSERT INTO `sys_areas_info` VALUES (1069, '吉林省', '吉林市', '船营区', NULL, 3, 240);
+INSERT INTO `sys_areas_info` VALUES (1070, '吉林省', '辽源市', '龙山区', NULL, 3, 122);
+INSERT INTO `sys_areas_info` VALUES (1071, '云南省', '丽江市', '永胜县', NULL, 3, 103);
+INSERT INTO `sys_areas_info` VALUES (1072, '辽宁省', '铁岭市', '清河区', NULL, 3, 223);
+INSERT INTO `sys_areas_info` VALUES (1073, '四川省', '甘孜藏族自治州', '康定县', NULL, 3, 349);
+INSERT INTO `sys_areas_info` VALUES (1074, '安徽省', '安庆市', '桐城市', NULL, 3, 246);
+INSERT INTO `sys_areas_info` VALUES (1075, '重庆市', '重庆市', '丰都县', NULL, 3, 363);
+INSERT INTO `sys_areas_info` VALUES (1076, '江西省', '宜春市', '上高县', NULL, 3, 142);
+INSERT INTO `sys_areas_info` VALUES (1077, '河南省', '许昌市', '襄城县', NULL, 3, 345);
+INSERT INTO `sys_areas_info` VALUES (1078, '河北省', '保定市', '高碑店市', NULL, 3, 209);
+INSERT INTO `sys_areas_info` VALUES (1079, '四川省', '泸州市', '叙永县', NULL, 3, 110);
+INSERT INTO `sys_areas_info` VALUES (1080, '云南省', '昭通市', '巧家县', NULL, 3, 389);
+INSERT INTO `sys_areas_info` VALUES (1081, '山西省', '运城市', '永济市', NULL, 3, 236);
+INSERT INTO `sys_areas_info` VALUES (1082, '浙江省', '绍兴市', '绍兴县', NULL, 3, 307);
+INSERT INTO `sys_areas_info` VALUES (1083, '广东省', '汕头市', '潮阳区', NULL, 3, 215);
+INSERT INTO `sys_areas_info` VALUES (1084, '河南省', '周口市', '太康县', NULL, 3, 102);
+INSERT INTO `sys_areas_info` VALUES (1085, '江苏省', '镇江市', '丹阳市', NULL, 3, 283);
+INSERT INTO `sys_areas_info` VALUES (1086, '黑龙江省', '齐齐哈尔市', '富裕县', NULL, 3, 195);
+INSERT INTO `sys_areas_info` VALUES (1087, '湖北省', '恩施市', '巴东县', NULL, 3, 340);
+INSERT INTO `sys_areas_info` VALUES (1088, '福建省', '漳州市', '东山县', NULL, 3, 150);
+INSERT INTO `sys_areas_info` VALUES (1089, '河南省', '漯河市', '源汇区', NULL, 3, 396);
+INSERT INTO `sys_areas_info` VALUES (1090, '河北省', '张家口市', '张北县', NULL, 3, 162);
+INSERT INTO `sys_areas_info` VALUES (1091, '湖南省', '张家界市', '慈利县', NULL, 3, 300);
+INSERT INTO `sys_areas_info` VALUES (1092, '江苏省', '苏州市', '平江区', NULL, 3, 281);
+INSERT INTO `sys_areas_info` VALUES (1093, '河南省', '开封市', '通许县', NULL, 3, 111);
+INSERT INTO `sys_areas_info` VALUES (1094, '江苏省', '淮安市', '淮阴区', NULL, 3, 360);
+INSERT INTO `sys_areas_info` VALUES (1095, '安徽省', '亳州市', '谯城区', NULL, 3, 249);
+INSERT INTO `sys_areas_info` VALUES (1096, '湖北省', '恩施市', '恩施市', NULL, 3, 340);
+INSERT INTO `sys_areas_info` VALUES (1097, '山东省', '潍坊市', '奎文区', NULL, 3, 121);
+INSERT INTO `sys_areas_info` VALUES (1098, '江苏省', '苏州市', '常熟市', NULL, 3, 281);
+INSERT INTO `sys_areas_info` VALUES (1099, '浙江省', '丽水市', '庆元县', NULL, 3, 365);
+INSERT INTO `sys_areas_info` VALUES (1100, '湖北省', '黄冈市', '武穴市', NULL, 3, 397);
+INSERT INTO `sys_areas_info` VALUES (1101, '四川省', '绵阳市', '盐亭县', NULL, 3, 224);
+INSERT INTO `sys_areas_info` VALUES (1102, '四川省', '宜宾市', '长宁县', NULL, 3, 109);
+INSERT INTO `sys_areas_info` VALUES (1103, '贵州省', '黔东南苗族侗族自治州', '黄平县', NULL, 3, 325);
+INSERT INTO `sys_areas_info` VALUES (1104, '北京市', '北京市', '门头沟区', NULL, 3, 368);
+INSERT INTO `sys_areas_info` VALUES (1105, '西藏自治区', '拉萨市', '城关区', NULL, 3, 352);
+INSERT INTO `sys_areas_info` VALUES (1106, '江西省', '赣州市', '于都县', NULL, 3, 336);
+INSERT INTO `sys_areas_info` VALUES (1107, '辽宁省', '沈阳市', '和平区', NULL, 3, 170);
+INSERT INTO `sys_areas_info` VALUES (1108, '宁夏回族自治区', '固原市', '隆德县', NULL, 3, 358);
+INSERT INTO `sys_areas_info` VALUES (1109, '河北省', '沧州市', '泊头市', NULL, 3, 286);
+INSERT INTO `sys_areas_info` VALUES (1110, '河南省', '焦作市', '孟州市', NULL, 3, 175);
+INSERT INTO `sys_areas_info` VALUES (1111, '四川省', '绵阳市', '三台县', NULL, 3, 224);
+INSERT INTO `sys_areas_info` VALUES (1112, '云南省', '文山壮族苗族自治州', '西畴县', NULL, 3, 426);
+INSERT INTO `sys_areas_info` VALUES (1113, '河南省', '信阳市', '罗山县', NULL, 3, 269);
+INSERT INTO `sys_areas_info` VALUES (1114, '四川省', '广安市', '华蓥市', NULL, 3, 237);
+INSERT INTO `sys_areas_info` VALUES (1115, '河南省', '驻马店市', '汝南县', NULL, 3, 282);
+INSERT INTO `sys_areas_info` VALUES (1116, '海南省', '海口市', '琼山区', NULL, 3, 219);
+INSERT INTO `sys_areas_info` VALUES (1117, '河南省', '许昌市', '禹州市', NULL, 3, 345);
+INSERT INTO `sys_areas_info` VALUES (1118, '湖北省', '宜昌市', '西陵区', NULL, 3, 423);
+INSERT INTO `sys_areas_info` VALUES (1119, '江西省', '抚州市', '崇仁县', NULL, 3, 266);
+INSERT INTO `sys_areas_info` VALUES (1120, '江苏省', '淮安市', '清河区', NULL, 3, 360);
+INSERT INTO `sys_areas_info` VALUES (1121, '福建省', '福州市', '闽清县', NULL, 3, 177);
+INSERT INTO `sys_areas_info` VALUES (1122, '山西省', '临汾市', '尧都区', NULL, 3, 238);
+INSERT INTO `sys_areas_info` VALUES (1123, '浙江省', '温州市', '永嘉县', NULL, 3, 315);
+INSERT INTO `sys_areas_info` VALUES (1124, '湖南省', '邵阳市', '绥宁县', NULL, 3, 274);
+INSERT INTO `sys_areas_info` VALUES (1125, '江苏省', '盐城市', '阜宁县', NULL, 3, 329);
+INSERT INTO `sys_areas_info` VALUES (1126, '江苏省', '徐州市', '沛县', NULL, 3, 130);
+INSERT INTO `sys_areas_info` VALUES (1127, '湖南省', '衡阳市', '衡阳县', NULL, 3, 116);
+INSERT INTO `sys_areas_info` VALUES (1128, '安徽省', '淮南市', '凤台县', NULL, 3, 367);
+INSERT INTO `sys_areas_info` VALUES (1129, '四川省', '泸州市', '古蔺县', NULL, 3, 110);
+INSERT INTO `sys_areas_info` VALUES (1130, '宁夏回族自治区', '中卫市', '沙坡头区', NULL, 3, 278);
+INSERT INTO `sys_areas_info` VALUES (1131, '河北省', '保定市', '定州市', NULL, 3, 209);
+INSERT INTO `sys_areas_info` VALUES (1132, '河南省', '南阳市', '镇平县', NULL, 3, 405);
+INSERT INTO `sys_areas_info` VALUES (1133, '江苏省', '徐州市', '新沂市', NULL, 3, 130);
+INSERT INTO `sys_areas_info` VALUES (1134, '安徽省', '安庆市', '宿松县', NULL, 3, 246);
+INSERT INTO `sys_areas_info` VALUES (1135, '广西壮族自治区', '来宾市', '兴宾区', NULL, 3, 225);
+INSERT INTO `sys_areas_info` VALUES (1136, '河北省', '邯郸市', '涉县', NULL, 3, 348);
+INSERT INTO `sys_areas_info` VALUES (1137, '江西省', '九江市', '永修县', NULL, 3, 104);
+INSERT INTO `sys_areas_info` VALUES (1138, '河南省', '开封市', '禹王台区', NULL, 3, 111);
+INSERT INTO `sys_areas_info` VALUES (1139, '广西壮族自治区', '南宁市', '兴宁区', NULL, 3, 242);
+INSERT INTO `sys_areas_info` VALUES (1140, '山西省', '临汾市', '襄汾县', NULL, 3, 238);
+INSERT INTO `sys_areas_info` VALUES (1141, '辽宁省', '阜新市', '清河门区', NULL, 3, 226);
+INSERT INTO `sys_areas_info` VALUES (1142, '广东省', '珠海市', '斗门区', NULL, 3, 134);
+INSERT INTO `sys_areas_info` VALUES (1143, '湖南省', '邵阳市', '隆回县', NULL, 3, 274);
+INSERT INTO `sys_areas_info` VALUES (1144, '湖北省', '宜昌市', '枝江市', NULL, 3, 423);
+INSERT INTO `sys_areas_info` VALUES (1145, '黑龙江省', '佳木斯市', '前进区', NULL, 3, 105);
+INSERT INTO `sys_areas_info` VALUES (1146, '河南省', '三门峡市', '卢氏县', NULL, 3, 328);
+INSERT INTO `sys_areas_info` VALUES (1147, '黑龙江省', '齐齐哈尔市', '富拉尔基区', NULL, 3, 195);
+INSERT INTO `sys_areas_info` VALUES (1148, '湖南省', '长沙市', '天心区', NULL, 3, 201);
+INSERT INTO `sys_areas_info` VALUES (1149, '河北省', '石家庄市', '长安区', NULL, 3, 264);
+INSERT INTO `sys_areas_info` VALUES (1150, '福建省', '龙岩市', '新罗区', NULL, 3, 267);
+INSERT INTO `sys_areas_info` VALUES (1151, '四川省', '凉山彝族自治州', '冕宁县', NULL, 3, 173);
+INSERT INTO `sys_areas_info` VALUES (1152, '湖南省', '邵阳市', '新宁县', NULL, 3, 274);
+INSERT INTO `sys_areas_info` VALUES (1153, '河北省', '保定市', '唐县', NULL, 3, 209);
+INSERT INTO `sys_areas_info` VALUES (1154, '云南省', '迪庆藏族自治州', '德钦县', NULL, 3, 204);
+INSERT INTO `sys_areas_info` VALUES (1155, '内蒙古自治区', '乌兰察布市', '卓资县', NULL, 3, 386);
+INSERT INTO `sys_areas_info` VALUES (1156, '云南省', '迪庆藏族自治州', '维西傈僳族自治县', NULL, 3, 204);
+INSERT INTO `sys_areas_info` VALUES (1157, '河北省', '邢台市', '沙河市', NULL, 3, 151);
+INSERT INTO `sys_areas_info` VALUES (1158, '云南省', '昆明市', '富民县', NULL, 3, 369);
+INSERT INTO `sys_areas_info` VALUES (1159, '广西壮族自治区', '防城港市', '防城区', NULL, 3, 410);
+INSERT INTO `sys_areas_info` VALUES (1160, '河北省', '石家庄市', '晋州市', NULL, 3, 264);
+INSERT INTO `sys_areas_info` VALUES (1161, '山东省', '济宁市', '嘉祥县', NULL, 3, 169);
+INSERT INTO `sys_areas_info` VALUES (1162, '河南省', '郑州市', '新郑市', NULL, 3, 308);
+INSERT INTO `sys_areas_info` VALUES (1163, '湖北省', '咸宁市', '赤壁市', NULL, 3, 271);
+INSERT INTO `sys_areas_info` VALUES (1164, '四川省', '成都市', '成华区', NULL, 3, 106);
+INSERT INTO `sys_areas_info` VALUES (1165, '河南省', '商丘市', '柘城县', NULL, 3, 254);
+INSERT INTO `sys_areas_info` VALUES (1166, '陕西省', '渭南市', '蒲城县', NULL, 3, 205);
+INSERT INTO `sys_areas_info` VALUES (1167, '四川省', '南充市', '南部县', NULL, 3, 350);
+INSERT INTO `sys_areas_info` VALUES (1168, '江苏省', '常州市', '溧阳市', NULL, 3, 304);
+INSERT INTO `sys_areas_info` VALUES (1169, '贵州省', '黔西南布依族苗族自治州', '其他', NULL, 3, 297);
+INSERT INTO `sys_areas_info` VALUES (1170, '重庆市', '重庆市', '大足县', NULL, 3, 363);
+INSERT INTO `sys_areas_info` VALUES (1171, '安徽省', '滁州市', '定远县', NULL, 3, 380);
+INSERT INTO `sys_areas_info` VALUES (1172, '黑龙江省', '牡丹江市', '爱民区', NULL, 3, 260);
+INSERT INTO `sys_areas_info` VALUES (1173, '辽宁省', '大连市', '瓦房店市', NULL, 3, 262);
+INSERT INTO `sys_areas_info` VALUES (1174, '辽宁省', '辽阳市', '白塔区', NULL, 3, 427);
+INSERT INTO `sys_areas_info` VALUES (1175, '天津市', '天津市', '塘沽区', NULL, 3, 252);
+INSERT INTO `sys_areas_info` VALUES (1176, '广西壮族自治区', '桂林市', '荔蒲县', NULL, 3, 400);
+INSERT INTO `sys_areas_info` VALUES (1177, '宁夏回族自治区', '石嘴山市', '大武口区', NULL, 3, 189);
+INSERT INTO `sys_areas_info` VALUES (1178, '湖北省', '宜昌市', '夷陵区', NULL, 3, 423);
+INSERT INTO `sys_areas_info` VALUES (1179, '湖北省', '十堰市', '郧西县', NULL, 3, 185);
+INSERT INTO `sys_areas_info` VALUES (1180, '新疆维吾尔族自治区', '克孜勒苏柯尔克孜自治州', '阿图什市', NULL, 3, 259);
+INSERT INTO `sys_areas_info` VALUES (1181, '四川省', '德阳市', '旌阳区', NULL, 3, 178);
+INSERT INTO `sys_areas_info` VALUES (1182, '云南省', '大理白族自治州', '弥渡县', NULL, 3, 191);
+INSERT INTO `sys_areas_info` VALUES (1183, '浙江省', '杭州市', '江干区', NULL, 3, 263);
+INSERT INTO `sys_areas_info` VALUES (1184, '广西壮族自治区', '百色市', '田阳县', NULL, 3, 392);
+INSERT INTO `sys_areas_info` VALUES (1185, '贵州省', '六盘水市', '六枝特区', NULL, 3, 339);
+INSERT INTO `sys_areas_info` VALUES (1186, '湖北省', '黄冈市', '团风县', NULL, 3, 397);
+INSERT INTO `sys_areas_info` VALUES (1187, '河南省', '平顶山市', '湛河区', NULL, 3, 117);
+INSERT INTO `sys_areas_info` VALUES (1188, '山西省', '晋中市', '太谷县', NULL, 3, 139);
+INSERT INTO `sys_areas_info` VALUES (1189, '山西省', '晋中市', '昔阳县', NULL, 3, 139);
+INSERT INTO `sys_areas_info` VALUES (1190, '江西省', '抚州市', '乐安县', NULL, 3, 266);
+INSERT INTO `sys_areas_info` VALUES (1191, '陕西省', '西安市', '碑林区', NULL, 3, 334);
+INSERT INTO `sys_areas_info` VALUES (1192, '湖北省', '黄冈市', '红安县', NULL, 3, 397);
+INSERT INTO `sys_areas_info` VALUES (1193, '山东省', '滨州市', '邹平县', NULL, 3, 245);
+INSERT INTO `sys_areas_info` VALUES (1194, '浙江省', '台州市', '温岭市', NULL, 3, 289);
+INSERT INTO `sys_areas_info` VALUES (1195, '广东省', '江门市', '新会区', NULL, 3, 398);
+INSERT INTO `sys_areas_info` VALUES (1196, '云南省', '保山市', '隆阳区', NULL, 3, 381);
+INSERT INTO `sys_areas_info` VALUES (1197, '陕西省', '宝鸡市', '金台区', NULL, 3, 232);
+INSERT INTO `sys_areas_info` VALUES (1198, '浙江省', '金华市', '婺城区', NULL, 3, 152);
+INSERT INTO `sys_areas_info` VALUES (1199, '内蒙古自治区', '兴安盟', '扎赉特旗', NULL, 3, 248);
+INSERT INTO `sys_areas_info` VALUES (1200, '湖南省', '株洲市', '株洲县', NULL, 3, 302);
+INSERT INTO `sys_areas_info` VALUES (1201, '山西省', '阳泉市', '矿区', NULL, 3, 137);
+INSERT INTO `sys_areas_info` VALUES (1202, '黑龙江省', '牡丹江市', '宁安市', NULL, 3, 260);
+INSERT INTO `sys_areas_info` VALUES (1203, '吉林省', '四平市', '铁东区', NULL, 3, 417);
+INSERT INTO `sys_areas_info` VALUES (1204, '四川省', '乐山市', '市中区', NULL, 3, 155);
+INSERT INTO `sys_areas_info` VALUES (1205, '四川省', '成都市', '高新区', NULL, 3, 106);
+INSERT INTO `sys_areas_info` VALUES (1206, '四川省', '乐山市', '峨眉山市', NULL, 3, 155);
+INSERT INTO `sys_areas_info` VALUES (1207, '江西省', '吉安市', '吉水县', NULL, 3, 332);
+INSERT INTO `sys_areas_info` VALUES (1208, '河北省', '衡水市', '冀州市', NULL, 3, 138);
+INSERT INTO `sys_areas_info` VALUES (1209, '四川省', '自贡市', '自流井区', NULL, 3, 375);
+INSERT INTO `sys_areas_info` VALUES (1210, '河北省', '张家口市', '桥东区', NULL, 3, 162);
+INSERT INTO `sys_areas_info` VALUES (1211, '福建省', '龙岩市', '连城县', NULL, 3, 267);
+INSERT INTO `sys_areas_info` VALUES (1212, '云南省', '红河哈尼族彝族自治州', '红河县', NULL, 3, 399);
+INSERT INTO `sys_areas_info` VALUES (1213, '云南省', '文山壮族苗族自治州', '广南县', NULL, 3, 426);
+INSERT INTO `sys_areas_info` VALUES (1214, '广东省', '惠州市', '博罗县', NULL, 3, 250);
+INSERT INTO `sys_areas_info` VALUES (1215, '广西壮族自治区', '柳州市', '其他', NULL, 3, 388);
+INSERT INTO `sys_areas_info` VALUES (1216, '湖北省', '荆州市', '荆州区', NULL, 3, 361);
+INSERT INTO `sys_areas_info` VALUES (1217, '黑龙江省', '佳木斯市', '桦南县', NULL, 3, 105);
+INSERT INTO `sys_areas_info` VALUES (1218, '安徽省', '安庆市', '太湖县', NULL, 3, 246);
+INSERT INTO `sys_areas_info` VALUES (1219, '广西壮族自治区', '贺州市', '昭平县', NULL, 3, 135);
+INSERT INTO `sys_areas_info` VALUES (1220, '甘肃省', '天水市', '甘谷县', NULL, 3, 179);
+INSERT INTO `sys_areas_info` VALUES (1221, '辽宁省', '朝阳市', '建平县', NULL, 3, 174);
+INSERT INTO `sys_areas_info` VALUES (1222, '新疆维吾尔族自治区', '奎屯市', '其他', NULL, 3, 355);
+INSERT INTO `sys_areas_info` VALUES (1223, '福建省', '南平市', '延平区', NULL, 3, 119);
+INSERT INTO `sys_areas_info` VALUES (1224, '河南省', '信阳市', '新县', NULL, 3, 269);
+INSERT INTO `sys_areas_info` VALUES (1225, '山西省', '太原市', '小店区', NULL, 3, 154);
+INSERT INTO `sys_areas_info` VALUES (1226, '河南省', '郑州市', '管城回族区', NULL, 3, 308);
+INSERT INTO `sys_areas_info` VALUES (1227, '黑龙江省', '鸡西市', '恒山区', NULL, 3, 128);
+INSERT INTO `sys_areas_info` VALUES (1228, '江苏省', '泰州市', '姜堰市', NULL, 3, 311);
+INSERT INTO `sys_areas_info` VALUES (1229, '河南省', '洛阳市', '栾川县', NULL, 3, 214);
+INSERT INTO `sys_areas_info` VALUES (1230, '浙江省', '宁波市', '鄞州区', NULL, 3, 217);
+INSERT INTO `sys_areas_info` VALUES (1231, '四川省', '阿坝藏族羌族自治州', '马尔康县', NULL, 3, 255);
+INSERT INTO `sys_areas_info` VALUES (1232, '山东省', '济宁市', '微山县', NULL, 3, 169);
+INSERT INTO `sys_areas_info` VALUES (1233, '新疆维吾尔族自治区', '吐鲁番地区', '吐鲁番市', NULL, 3, 303);
+INSERT INTO `sys_areas_info` VALUES (1234, '山东省', '滨州市', '滨城区', NULL, 3, 245);
+INSERT INTO `sys_areas_info` VALUES (1235, '甘肃省', '平凉市', '灵台县', NULL, 3, 218);
+INSERT INTO `sys_areas_info` VALUES (1236, '山东省', '淄博市', '张店区', NULL, 3, 203);
+INSERT INTO `sys_areas_info` VALUES (1237, '青海省', '海东地区', '互助土族自治县', NULL, 3, 401);
+INSERT INTO `sys_areas_info` VALUES (1238, '江苏省', '扬州市', '邗江区', NULL, 3, 136);
+INSERT INTO `sys_areas_info` VALUES (1239, '浙江省', '金华市', '义乌市', NULL, 3, 152);
+INSERT INTO `sys_areas_info` VALUES (1240, '湖北省', '荆门市', '其他', NULL, 3, 153);
+INSERT INTO `sys_areas_info` VALUES (1241, '河南省', '郑州市', '巩义市', NULL, 3, 308);
+INSERT INTO `sys_areas_info` VALUES (1242, '江苏省', '徐州市', '丰县', NULL, 3, 130);
+INSERT INTO `sys_areas_info` VALUES (1243, '安徽省', '滁州市', '凤阳县', NULL, 3, 380);
+INSERT INTO `sys_areas_info` VALUES (1244, '浙江省', '金华市', '金东区', NULL, 3, 152);
+INSERT INTO `sys_areas_info` VALUES (1245, '浙江省', '衢州市', '常山县', NULL, 3, 257);
+INSERT INTO `sys_areas_info` VALUES (1246, '四川省', '德阳市', '广汉市', NULL, 3, 178);
+INSERT INTO `sys_areas_info` VALUES (1247, '福建省', '福州市', '福清市', NULL, 3, 177);
+INSERT INTO `sys_areas_info` VALUES (1248, '贵州省', '铜仁地区', '石阡县', NULL, 3, 272);
+INSERT INTO `sys_areas_info` VALUES (1249, '四川省', '绵阳市', '安县', NULL, 3, 224);
+INSERT INTO `sys_areas_info` VALUES (1250, '辽宁省', '阜新市', '彰武县', NULL, 3, 226);
+INSERT INTO `sys_areas_info` VALUES (1251, '河南省', '焦作市', '沁阳市', NULL, 3, 175);
+INSERT INTO `sys_areas_info` VALUES (1252, '辽宁省', '辽阳市', '灯塔市', NULL, 3, 427);
+INSERT INTO `sys_areas_info` VALUES (1253, '黑龙江省', '七台河市', '勃利县', NULL, 3, 419);
+INSERT INTO `sys_areas_info` VALUES (1254, '辽宁省', '朝阳市', '北票市', NULL, 3, 174);
+INSERT INTO `sys_areas_info` VALUES (1255, '云南省', '丽江市', '玉龙纳西族自治县', NULL, 3, 103);
+INSERT INTO `sys_areas_info` VALUES (1256, '湖南省', '娄底市', '娄星区', NULL, 3, 206);
+INSERT INTO `sys_areas_info` VALUES (1257, '浙江省', '湖州市', '长兴县', NULL, 3, 159);
+INSERT INTO `sys_areas_info` VALUES (1258, '黑龙江省', '齐齐哈尔市', '龙江县', NULL, 3, 195);
+INSERT INTO `sys_areas_info` VALUES (1259, '广东省', '梅州市', '梅县', NULL, 3, 143);
+INSERT INTO `sys_areas_info` VALUES (1260, '江西省', '赣州市', '全南县', NULL, 3, 336);
+INSERT INTO `sys_areas_info` VALUES (1261, '山东省', '烟台市', '莱州市', NULL, 3, 261);
+INSERT INTO `sys_areas_info` VALUES (1262, '吉林省', '吉林市', '磐石市', NULL, 3, 240);
+INSERT INTO `sys_areas_info` VALUES (1263, '北京市', '北京市', '怀柔区', NULL, 3, 368);
+INSERT INTO `sys_areas_info` VALUES (1264, '广西壮族自治区', '百色市', '平果县', NULL, 3, 392);
+INSERT INTO `sys_areas_info` VALUES (1265, '河南省', '开封市', '鼓楼区', NULL, 3, 111);
+INSERT INTO `sys_areas_info` VALUES (1266, '福建省', '莆田市', '荔城区', NULL, 3, 346);
+INSERT INTO `sys_areas_info` VALUES (1267, '黑龙江省', '双鸭山市', '其他', NULL, 3, 373);
+INSERT INTO `sys_areas_info` VALUES (1268, '广西壮族自治区', '钦州市', '钦南区', NULL, 3, 212);
+INSERT INTO `sys_areas_info` VALUES (1269, '吉林省', '四平市', '铁西区', NULL, 3, 417);
+INSERT INTO `sys_areas_info` VALUES (1270, '吉林省', '延边朝鲜族自治州', '延吉市', NULL, 3, 165);
+INSERT INTO `sys_areas_info` VALUES (1271, '山西省', '运城市', '垣曲县', NULL, 3, 236);
+INSERT INTO `sys_areas_info` VALUES (1272, '湖北省', '孝感市', '云梦县', NULL, 3, 210);
+INSERT INTO `sys_areas_info` VALUES (1273, '黑龙江省', '绥化市', '肇东市', NULL, 3, 371);
+INSERT INTO `sys_areas_info` VALUES (1274, '浙江省', '金华市', '武义县', NULL, 3, 152);
+INSERT INTO `sys_areas_info` VALUES (1275, '贵州省', '毕节地区', '黔西县', NULL, 3, 318);
+INSERT INTO `sys_areas_info` VALUES (1276, '海南省', '海口市', '龙华区', NULL, 3, 219);
+INSERT INTO `sys_areas_info` VALUES (1277, '浙江省', '舟山市', '嵊泗县', NULL, 3, 194);
+INSERT INTO `sys_areas_info` VALUES (1278, '广西壮族自治区', '桂林市', '阳朔县', NULL, 3, 400);
+INSERT INTO `sys_areas_info` VALUES (1279, '甘肃省', '兰州市', '城关区', NULL, 3, 228);
+INSERT INTO `sys_areas_info` VALUES (1280, '广东省', '佛山市', '顺德区', NULL, 3, 378);
+INSERT INTO `sys_areas_info` VALUES (1281, '山东省', '威海市', '文登市', NULL, 3, 256);
+INSERT INTO `sys_areas_info` VALUES (1282, '安徽省', '池州市', '贵池区', NULL, 3, 391);
+INSERT INTO `sys_areas_info` VALUES (1283, '四川省', '成都市', '温江区', NULL, 3, 106);
+INSERT INTO `sys_areas_info` VALUES (1284, '福建省', '泉州市', '丰泽区', NULL, 3, 161);
+INSERT INTO `sys_areas_info` VALUES (1285, '云南省', '曲靖市', '麒麟区', NULL, 3, 420);
+INSERT INTO `sys_areas_info` VALUES (1286, '贵州省', '贵阳市', '修文县', NULL, 3, 273);
+INSERT INTO `sys_areas_info` VALUES (1287, '山西省', '阳泉市', '郊区', NULL, 3, 137);
+INSERT INTO `sys_areas_info` VALUES (1288, '山西省', '吕梁市', '临县', NULL, 3, 227);
+INSERT INTO `sys_areas_info` VALUES (1289, '山西省', '大同市', '南郊区', NULL, 3, 108);
+INSERT INTO `sys_areas_info` VALUES (1290, '辽宁省', '沈阳市', '沈北新区', NULL, 3, 170);
+INSERT INTO `sys_areas_info` VALUES (1291, '湖北省', '孝感市', '安陆市', NULL, 3, 210);
+INSERT INTO `sys_areas_info` VALUES (1292, '河北省', '保定市', '蠡县', NULL, 3, 209);
+INSERT INTO `sys_areas_info` VALUES (1293, '河北省', '石家庄市', '赵县', NULL, 3, 264);
+INSERT INTO `sys_areas_info` VALUES (1294, '河北省', '保定市', '徐水县', NULL, 3, 209);
+INSERT INTO `sys_areas_info` VALUES (1295, '福建省', '三明市', '清流县', NULL, 3, 411);
+INSERT INTO `sys_areas_info` VALUES (1296, '陕西省', '咸阳市', '兴平市', NULL, 3, 180);
+INSERT INTO `sys_areas_info` VALUES (1297, '山东省', '临沂市', '兰山区', NULL, 3, 312);
+INSERT INTO `sys_areas_info` VALUES (1298, '陕西省', '宝鸡市', '眉县', NULL, 3, 232);
+INSERT INTO `sys_areas_info` VALUES (1299, '广东省', '揭阳市', '普宁市', NULL, 3, 114);
+INSERT INTO `sys_areas_info` VALUES (1300, '山西省', '朔州市', '朔城区', NULL, 3, 290);
+INSERT INTO `sys_areas_info` VALUES (1301, '福建省', '泉州市', '泉港区', NULL, 3, 161);
+INSERT INTO `sys_areas_info` VALUES (1302, '湖北省', '襄樊市', '枣阳市', NULL, 3, 412);
+INSERT INTO `sys_areas_info` VALUES (1303, '安徽省', '蚌埠市', '禹会区', NULL, 3, 372);
+INSERT INTO `sys_areas_info` VALUES (1304, '内蒙古自治区', '呼和浩特市', '其他', NULL, 3, 422);
+INSERT INTO `sys_areas_info` VALUES (1305, '宁夏回族自治区', '银川市', '金凤区', NULL, 3, 247);
+INSERT INTO `sys_areas_info` VALUES (1306, '山东省', '济南市', '历下区', NULL, 3, 306);
+INSERT INTO `sys_areas_info` VALUES (1307, '黑龙江省', '哈尔滨市', '南岗区', NULL, 3, 124);
+INSERT INTO `sys_areas_info` VALUES (1308, '上海市', '上海市', '青浦区', NULL, 3, 287);
+INSERT INTO `sys_areas_info` VALUES (1309, '河南省', '新乡市', '牧野区', NULL, 3, 418);
+INSERT INTO `sys_areas_info` VALUES (1310, '河南省', '安阳市', '文峰区', NULL, 3, 353);
+INSERT INTO `sys_areas_info` VALUES (1311, '山西省', '晋城市', '城区', NULL, 3, 376);
+INSERT INTO `sys_areas_info` VALUES (1312, '湖南省', '怀化市', '洪江市', NULL, 3, 156);
+INSERT INTO `sys_areas_info` VALUES (1313, '福建省', '三明市', '大田县', NULL, 3, 411);
+INSERT INTO `sys_areas_info` VALUES (1314, '浙江省', '温州市', '泰顺县', NULL, 3, 315);
+INSERT INTO `sys_areas_info` VALUES (1315, '湖南省', '永州市', '祁阳县', NULL, 3, 408);
+INSERT INTO `sys_areas_info` VALUES (1316, '福建省', '厦门市', '集美区', NULL, 3, 354);
+INSERT INTO `sys_areas_info` VALUES (1317, '四川省', '甘孜藏族自治州', '泸定县', NULL, 3, 349);
+INSERT INTO `sys_areas_info` VALUES (1318, '江苏省', '南通市', '通州市', NULL, 3, 416);
+INSERT INTO `sys_areas_info` VALUES (1319, '江苏省', '泰州市', '泰兴市', NULL, 3, 311);
+INSERT INTO `sys_areas_info` VALUES (1320, '海南省', '文昌市', '其他', NULL, 3, 406);
+INSERT INTO `sys_areas_info` VALUES (1321, '云南省', '玉溪市', '易门县', NULL, 3, 387);
+INSERT INTO `sys_areas_info` VALUES (1322, '四川省', '资阳市', '乐至县', NULL, 3, 404);
+INSERT INTO `sys_areas_info` VALUES (1323, '安徽省', '马鞍山市', '花山区', NULL, 3, 251);
+INSERT INTO `sys_areas_info` VALUES (1324, '安徽省', '滁州市', '来安县', NULL, 3, 380);
+INSERT INTO `sys_areas_info` VALUES (1325, '浙江省', '温州市', '乐清市', NULL, 3, 315);
+INSERT INTO `sys_areas_info` VALUES (1326, '河南省', '商丘市', '梁园区', NULL, 3, 254);
+INSERT INTO `sys_areas_info` VALUES (1327, '甘肃省', '平凉市', '崆峒区', NULL, 3, 218);
+INSERT INTO `sys_areas_info` VALUES (1328, '福建省', '福州市', '永泰县', NULL, 3, 177);
+INSERT INTO `sys_areas_info` VALUES (1329, '江西省', '宜春市', '高安市', NULL, 3, 142);
+INSERT INTO `sys_areas_info` VALUES (1330, '湖北省', '荆门市', '钟祥市', NULL, 3, 153);
+INSERT INTO `sys_areas_info` VALUES (1331, '河南省', '南阳市', '内乡县', NULL, 3, 405);
+INSERT INTO `sys_areas_info` VALUES (1332, '河南省', '南阳市', '宛城区', NULL, 3, 405);
+INSERT INTO `sys_areas_info` VALUES (1333, '四川省', '资阳市', '安岳县', NULL, 3, 404);
+INSERT INTO `sys_areas_info` VALUES (1334, '河南省', '鹤壁市', '淇滨区', NULL, 3, 385);
+INSERT INTO `sys_areas_info` VALUES (1335, '贵州省', '遵义市', '赤水市', NULL, 3, 288);
+INSERT INTO `sys_areas_info` VALUES (1336, '广西壮族自治区', '柳州市', '三江侗族自治县', NULL, 3, 388);
+INSERT INTO `sys_areas_info` VALUES (1337, '天津市', '天津市', '武清区', NULL, 3, 252);
+INSERT INTO `sys_areas_info` VALUES (1338, '广东省', '梅州市', '兴宁市', NULL, 3, 143);
+INSERT INTO `sys_areas_info` VALUES (1339, '云南省', '曲靖市', '沾益县', NULL, 3, 420);
+INSERT INTO `sys_areas_info` VALUES (1340, '江西省', '九江市', '武宁县', NULL, 3, 104);
+INSERT INTO `sys_areas_info` VALUES (1341, '浙江省', '宁波市', '宁海县', NULL, 3, 217);
+INSERT INTO `sys_areas_info` VALUES (1342, '江苏省', '苏州市', '虎丘区', NULL, 3, 281);
+INSERT INTO `sys_areas_info` VALUES (1343, '山东省', '泰安市', '肥城市', NULL, 3, 192);
+INSERT INTO `sys_areas_info` VALUES (1344, '云南省', '楚雄彝族自治州', '元谋县', NULL, 3, 231);
+INSERT INTO `sys_areas_info` VALUES (1345, '河南省', '郑州市', '金水区', NULL, 3, 308);
+INSERT INTO `sys_areas_info` VALUES (1346, '广西壮族自治区', '钦州市', '浦北县', NULL, 3, 212);
+INSERT INTO `sys_areas_info` VALUES (1347, '山东省', '青岛市', '城阳区', NULL, 3, 284);
+INSERT INTO `sys_areas_info` VALUES (1348, '广东省', '佛山市', '三水区', NULL, 3, 378);
+INSERT INTO `sys_areas_info` VALUES (1349, '浙江省', '台州市', '椒江区', NULL, 3, 289);
+INSERT INTO `sys_areas_info` VALUES (1350, '北京市', '北京市', '昌平区', NULL, 3, 368);
+INSERT INTO `sys_areas_info` VALUES (1351, '新疆维吾尔族自治区', '昌吉回族自治州', '米泉市', NULL, 3, 293);
+INSERT INTO `sys_areas_info` VALUES (1352, '辽宁省', '沈阳市', '沈河区', NULL, 3, 170);
+INSERT INTO `sys_areas_info` VALUES (1353, '河北省', '张家口市', '桥西区', NULL, 3, 162);
+INSERT INTO `sys_areas_info` VALUES (1354, '贵州省', '贵阳市', '云岩区', NULL, 3, 273);
+INSERT INTO `sys_areas_info` VALUES (1355, '云南省', '曲靖市', '陆良县', NULL, 3, 420);
+INSERT INTO `sys_areas_info` VALUES (1356, '浙江省', '丽水市', '景宁畲族自治县', NULL, 3, 365);
+INSERT INTO `sys_areas_info` VALUES (1357, '辽宁省', '铁岭市', '昌图县', NULL, 3, 223);
+INSERT INTO `sys_areas_info` VALUES (1358, '河北省', '唐山市', '路北区', NULL, 3, 277);
+INSERT INTO `sys_areas_info` VALUES (1359, '甘肃省', '金昌市', '金川区', NULL, 3, 356);
+INSERT INTO `sys_areas_info` VALUES (1360, '河北省', '石家庄市', '藁城市', NULL, 3, 264);
+INSERT INTO `sys_areas_info` VALUES (1361, '四川省', '乐山市', '沙湾区', NULL, 3, 155);
+INSERT INTO `sys_areas_info` VALUES (1362, '甘肃省', '定西市', '安定区', NULL, 3, 327);
+INSERT INTO `sys_areas_info` VALUES (1363, '江苏省', '南京市', '浦口区', NULL, 3, 313);
+INSERT INTO `sys_areas_info` VALUES (1364, '浙江省', '宁波市', '海曙区', NULL, 3, 217);
+INSERT INTO `sys_areas_info` VALUES (1365, '新疆维吾尔族自治区', '哈密地区', '哈密市', NULL, 3, 366);
+INSERT INTO `sys_areas_info` VALUES (1366, '云南省', '楚雄彝族自治州', '禄丰县', NULL, 3, 231);
+INSERT INTO `sys_areas_info` VALUES (1367, '山西省', '晋城市', '高平市', NULL, 3, 376);
+INSERT INTO `sys_areas_info` VALUES (1368, '内蒙古自治区', '赤峰市', '翁牛特旗', NULL, 3, 314);
+INSERT INTO `sys_areas_info` VALUES (1369, '广东省', '中山市', '南朗镇', NULL, 3, 167);
+INSERT INTO `sys_areas_info` VALUES (1370, '湖北省', '恩施市', '利川市', NULL, 3, 340);
+INSERT INTO `sys_areas_info` VALUES (1371, '广东省', '珠海市', '香洲区', NULL, 3, 134);
+INSERT INTO `sys_areas_info` VALUES (1372, '四川省', '眉山市', '洪雅县', NULL, 3, 342);
+INSERT INTO `sys_areas_info` VALUES (1373, '上海市', '上海市', '静安区', NULL, 3, 287);
+INSERT INTO `sys_areas_info` VALUES (1374, '贵州省', '黔南布依族苗族自治州', '荔波县', NULL, 3, 276);
+INSERT INTO `sys_areas_info` VALUES (1375, '贵州省', '黔南布依族苗族自治州', '都匀市', NULL, 3, 276);
+INSERT INTO `sys_areas_info` VALUES (1376, '河南省', '南阳市', '新野县', NULL, 3, 405);
+INSERT INTO `sys_areas_info` VALUES (1377, '四川省', '巴中市', '南江县', NULL, 3, 233);
+INSERT INTO `sys_areas_info` VALUES (1378, '安徽省', '宣城市', '宁国市', NULL, 3, 377);
+INSERT INTO `sys_areas_info` VALUES (1379, '四川省', '资阳市', '简阳市', NULL, 3, 404);
+INSERT INTO `sys_areas_info` VALUES (1380, '云南省', '昭通市', '水富县', NULL, 3, 389);
+INSERT INTO `sys_areas_info` VALUES (1381, '黑龙江省', '牡丹江市', '穆棱市', NULL, 3, 260);
+INSERT INTO `sys_areas_info` VALUES (1382, '山东省', '淄博市', '周村区', NULL, 3, 203);
+INSERT INTO `sys_areas_info` VALUES (1383, '吉林省', '四平市', '公主岭市', NULL, 3, 417);
+INSERT INTO `sys_areas_info` VALUES (1384, '江西省', '抚州市', '临川区', NULL, 3, 266);
+INSERT INTO `sys_areas_info` VALUES (1385, '河北省', '衡水市', '故城县', NULL, 3, 138);
+INSERT INTO `sys_areas_info` VALUES (1386, '浙江省', '丽水市', '莲都区', NULL, 3, 365);
+INSERT INTO `sys_areas_info` VALUES (1387, '河北省', '邯郸市', '邱县', NULL, 3, 348);
+INSERT INTO `sys_areas_info` VALUES (1388, '河南省', '洛阳市', '新安县', NULL, 3, 214);
+INSERT INTO `sys_areas_info` VALUES (1389, '四川省', '巴中市', '平昌县', NULL, 3, 233);
+INSERT INTO `sys_areas_info` VALUES (1390, '广东省', '湛江市', '徐闻县', NULL, 3, 171);
+INSERT INTO `sys_areas_info` VALUES (1391, '甘肃省', '兰州市', '榆中县', NULL, 3, 228);
+INSERT INTO `sys_areas_info` VALUES (1392, '云南省', '玉溪市', '峨山彝族自治县', NULL, 3, 387);
+INSERT INTO `sys_areas_info` VALUES (1393, '云南省', '文山壮族苗族自治州', '文山县', NULL, 3, 426);
+INSERT INTO `sys_areas_info` VALUES (1394, '云南省', '西双版纳傣族自治州', '景洪市', NULL, 3, 390);
+INSERT INTO `sys_areas_info` VALUES (1395, '四川省', '内江市', '威远县', NULL, 3, 322);
+INSERT INTO `sys_areas_info` VALUES (1396, '河北省', '唐山市', '开平区', NULL, 3, 277);
+INSERT INTO `sys_areas_info` VALUES (1397, '河南省', '驻马店市', '正阳县', NULL, 3, 282);
+INSERT INTO `sys_areas_info` VALUES (1398, '黑龙江省', '绥化市', '海伦市', NULL, 3, 371);
+INSERT INTO `sys_areas_info` VALUES (1399, '安徽省', '安庆市', '岳西县', NULL, 3, 246);
+INSERT INTO `sys_areas_info` VALUES (1400, '山西省', '晋城市', '泽州县', NULL, 3, 376);
+INSERT INTO `sys_areas_info` VALUES (1401, '广西壮族自治区', '桂林市', '资源县', NULL, 3, 400);
+INSERT INTO `sys_areas_info` VALUES (1402, '广东省', '广州市', '从化市', NULL, 3, 129);
+INSERT INTO `sys_areas_info` VALUES (1403, '浙江省', '宁波市', '慈溪市', NULL, 3, 217);
+INSERT INTO `sys_areas_info` VALUES (1404, '重庆市', '重庆市', '南岸区', NULL, 3, 363);
+INSERT INTO `sys_areas_info` VALUES (1405, '安徽省', '宣城市', '广德县', NULL, 3, 377);
+INSERT INTO `sys_areas_info` VALUES (1406, '新疆维吾尔族自治区', '塔城地区', '乌苏市', NULL, 3, 146);
+INSERT INTO `sys_areas_info` VALUES (1407, '江苏省', '南京市', '玄武区', NULL, 3, 313);
+INSERT INTO `sys_areas_info` VALUES (1408, '四川省', '内江市', '隆昌县', NULL, 3, 322);
+INSERT INTO `sys_areas_info` VALUES (1409, '福建省', '厦门市', '翔安区', NULL, 3, 354);
+INSERT INTO `sys_areas_info` VALUES (1410, '浙江省', '金华市', '兰溪市', NULL, 3, 152);
+INSERT INTO `sys_areas_info` VALUES (1411, '河南省', '许昌市', '鄢陵县', NULL, 3, 345);
+INSERT INTO `sys_areas_info` VALUES (1412, '重庆市', '重庆市', '北碚区', NULL, 3, 363);
+INSERT INTO `sys_areas_info` VALUES (1413, '安徽省', '滁州市', '天长市', NULL, 3, 380);
+INSERT INTO `sys_areas_info` VALUES (1414, '江西省', '赣州市', '定南县', NULL, 3, 336);
+INSERT INTO `sys_areas_info` VALUES (1415, '广东省', '潮州市', '潮安县', NULL, 3, 291);
+INSERT INTO `sys_areas_info` VALUES (1416, '山东省', '青岛市', '胶南市', NULL, 3, 284);
+INSERT INTO `sys_areas_info` VALUES (1417, '辽宁省', '鞍山市', '铁西区', NULL, 3, 301);
+INSERT INTO `sys_areas_info` VALUES (1418, '黑龙江省', '鸡西市', '鸡冠区', NULL, 3, 128);
+INSERT INTO `sys_areas_info` VALUES (1419, '浙江省', '湖州市', '德清县', NULL, 3, 159);
+INSERT INTO `sys_areas_info` VALUES (1420, '江苏省', '扬州市', '仪征市', NULL, 3, 136);
+INSERT INTO `sys_areas_info` VALUES (1421, '云南省', '丽江市', '宁蒗彝族自治县', NULL, 3, 103);
+INSERT INTO `sys_areas_info` VALUES (1422, '湖南省', '怀化市', '沅陵县', NULL, 3, 156);
+INSERT INTO `sys_areas_info` VALUES (1423, '贵州省', '贵阳市', '其他', NULL, 3, 273);
+INSERT INTO `sys_areas_info` VALUES (1424, '河南省', '周口市', '西华县', NULL, 3, 102);
+INSERT INTO `sys_areas_info` VALUES (1425, '安徽省', '铜陵市', '铜陵县', NULL, 3, 132);
+INSERT INTO `sys_areas_info` VALUES (1426, '河北省', '邢台市', '清河县', NULL, 3, 151);
+INSERT INTO `sys_areas_info` VALUES (1427, '四川省', '内江市', '资中县', NULL, 3, 322);
+INSERT INTO `sys_areas_info` VALUES (1428, '湖北省', '宜昌市', '长阳县', NULL, 3, 423);
+INSERT INTO `sys_areas_info` VALUES (1429, '云南省', '昭通市', '昭阳区', NULL, 3, 389);
+INSERT INTO `sys_areas_info` VALUES (1430, '云南省', '昆明市', '盘龙区', NULL, 3, 369);
+INSERT INTO `sys_areas_info` VALUES (1431, '湖南省', '衡阳市', '珠晖区', NULL, 3, 116);
+INSERT INTO `sys_areas_info` VALUES (1432, '云南省', '红河哈尼族彝族自治州', '开远市', NULL, 3, 399);
+INSERT INTO `sys_areas_info` VALUES (1433, '贵州省', '安顺市', '普定县', NULL, 3, 347);
+INSERT INTO `sys_areas_info` VALUES (1434, '云南省', '玉溪市', '红塔区', NULL, 3, 387);
+INSERT INTO `sys_areas_info` VALUES (1435, '河南省', '新乡市', '卫辉市', NULL, 3, 418);
+INSERT INTO `sys_areas_info` VALUES (1436, '湖南省', '邵阳市', '武冈市', NULL, 3, 274);
+INSERT INTO `sys_areas_info` VALUES (1437, '山东省', '青岛市', '市南区', NULL, 3, 284);
+INSERT INTO `sys_areas_info` VALUES (1438, '江苏省', '连云港市', '灌南县', NULL, 3, 101);
+INSERT INTO `sys_areas_info` VALUES (1439, '安徽省', '蚌埠市', '蚌山区', NULL, 3, 372);
+INSERT INTO `sys_areas_info` VALUES (1440, '四川省', '广安市', '邻水县', NULL, 3, 237);
+INSERT INTO `sys_areas_info` VALUES (1441, '云南省', '保山市', '腾冲县', NULL, 3, 381);
+INSERT INTO `sys_areas_info` VALUES (1442, '北京市', '北京市', '朝阳区', NULL, 3, 368);
+INSERT INTO `sys_areas_info` VALUES (1443, '浙江省', '衢州市', '江山市', NULL, 3, 257);
+INSERT INTO `sys_areas_info` VALUES (1444, '广东省', '深圳市', '福田区', NULL, 3, 118);
+INSERT INTO `sys_areas_info` VALUES (1445, '四川省', '绵阳市', '涪城区', NULL, 3, 224);
+INSERT INTO `sys_areas_info` VALUES (1446, '贵州省', '遵义市', '习水县', NULL, 3, 288);
+INSERT INTO `sys_areas_info` VALUES (1447, '福建省', '三明市', '建宁县', NULL, 3, 411);
+INSERT INTO `sys_areas_info` VALUES (1448, '河南省', '南阳市', '唐河县', NULL, 3, 405);
+INSERT INTO `sys_areas_info` VALUES (1449, '山西省', '吕梁市', '汾阳市', NULL, 3, 227);
+INSERT INTO `sys_areas_info` VALUES (1450, '辽宁省', '沈阳市', '其他', NULL, 3, 170);
+INSERT INTO `sys_areas_info` VALUES (1451, '河北省', '秦皇岛市', '山海关区', NULL, 3, 163);
+INSERT INTO `sys_areas_info` VALUES (1452, '江西省', '宜春市', '袁州区', NULL, 3, 142);
+INSERT INTO `sys_areas_info` VALUES (1453, '江苏省', '南通市', '启东市', NULL, 3, 416);
+INSERT INTO `sys_areas_info` VALUES (1454, '湖南省', '怀化市', '靖州苗族侗族自治县', NULL, 3, 156);
+INSERT INTO `sys_areas_info` VALUES (1455, '湖南省', '长沙市', '望城县', NULL, 3, 201);
+INSERT INTO `sys_areas_info` VALUES (1456, '江西省', '赣州市', '寻乌县', NULL, 3, 336);
+INSERT INTO `sys_areas_info` VALUES (1457, '湖北省', '宜昌市', '当阳市', NULL, 3, 423);
+INSERT INTO `sys_areas_info` VALUES (1458, '湖南省', '株洲市', '炎陵县', NULL, 3, 302);
+INSERT INTO `sys_areas_info` VALUES (1459, '四川省', '德阳市', '罗江县', NULL, 3, 178);
+INSERT INTO `sys_areas_info` VALUES (1460, '四川省', '成都市', '锦江区', NULL, 3, 106);
+INSERT INTO `sys_areas_info` VALUES (1461, '广西壮族自治区', '柳州市', '柳南区', NULL, 3, 388);
+INSERT INTO `sys_areas_info` VALUES (1462, '浙江省', '杭州市', '建德市', NULL, 3, 263);
+INSERT INTO `sys_areas_info` VALUES (1463, '江苏省', '苏州市', '相城区', NULL, 3, 281);
+INSERT INTO `sys_areas_info` VALUES (1464, '吉林省', '延边朝鲜族自治州', '龙井市', NULL, 3, 165);
+INSERT INTO `sys_areas_info` VALUES (1465, '黑龙江省', '齐齐哈尔市', '讷河市', NULL, 3, 195);
+INSERT INTO `sys_areas_info` VALUES (1466, '辽宁省', '丹东市', '宽甸满族自治县', NULL, 3, 305);
+INSERT INTO `sys_areas_info` VALUES (1467, '广东省', '梅州市', '梅江区', NULL, 3, 143);
+INSERT INTO `sys_areas_info` VALUES (1468, '吉林省', '长春市', '其他', NULL, 3, 112);
+INSERT INTO `sys_areas_info` VALUES (1469, '云南省', '迪庆藏族自治州', '香格里拉县', NULL, 3, 204);
+INSERT INTO `sys_areas_info` VALUES (1470, '安徽省', '蚌埠市', '固镇县', NULL, 3, 372);
+INSERT INTO `sys_areas_info` VALUES (1471, '云南省', '楚雄彝族自治州', '双柏县', NULL, 3, 231);
+INSERT INTO `sys_areas_info` VALUES (1472, '湖北省', '十堰市', '茅箭区', NULL, 3, 185);
+INSERT INTO `sys_areas_info` VALUES (1473, '河南省', '商丘市', '宁陵县', NULL, 3, 254);
+INSERT INTO `sys_areas_info` VALUES (1474, '贵州省', '遵义市', '务川仡佬族苗族自治县', NULL, 3, 288);
+INSERT INTO `sys_areas_info` VALUES (1475, '广东省', '惠州市', '惠东县', NULL, 3, 250);
+INSERT INTO `sys_areas_info` VALUES (1476, '江西省', '萍乡市', '安源区', NULL, 3, 320);
+INSERT INTO `sys_areas_info` VALUES (1477, '安徽省', '阜阳市', '颍上县', NULL, 3, 265);
+INSERT INTO `sys_areas_info` VALUES (1478, '黑龙江省', '哈尔滨市', '道里区', NULL, 3, 124);
+INSERT INTO `sys_areas_info` VALUES (1479, '广西壮族自治区', '河池市', '都安瑶族自治县', NULL, 3, 197);
+INSERT INTO `sys_areas_info` VALUES (1480, '内蒙古自治区', '赤峰市', '松山区', NULL, 3, 314);
+INSERT INTO `sys_areas_info` VALUES (1481, '辽宁省', '丹东市', '振兴区', NULL, 3, 305);
+INSERT INTO `sys_areas_info` VALUES (1482, '吉林省', '长春市', '九台市', NULL, 3, 112);
+INSERT INTO `sys_areas_info` VALUES (1483, '河北省', '保定市', '安国市', NULL, 3, 209);
+INSERT INTO `sys_areas_info` VALUES (1484, '湖北省', '荆州市', '松滋市', NULL, 3, 361);
+INSERT INTO `sys_areas_info` VALUES (1485, '福建省', '三明市', '永安市', NULL, 3, 411);
+INSERT INTO `sys_areas_info` VALUES (1486, '广西壮族自治区', '来宾市', '象州县', NULL, 3, 225);
+INSERT INTO `sys_areas_info` VALUES (1487, '云南省', '曲靖市', '罗平县', NULL, 3, 420);
+INSERT INTO `sys_areas_info` VALUES (1488, '浙江省', '台州市', '路桥区', NULL, 3, 289);
+INSERT INTO `sys_areas_info` VALUES (1489, '吉林省', '吉林市', '龙潭区', NULL, 3, 240);
+INSERT INTO `sys_areas_info` VALUES (1490, '陕西省', '西安市', '灞桥区', NULL, 3, 334);
+INSERT INTO `sys_areas_info` VALUES (1491, '江苏省', '南通市', '崇川区', NULL, 3, 416);
+INSERT INTO `sys_areas_info` VALUES (1492, '天津市', '天津市', '蓟县', NULL, 3, 252);
+INSERT INTO `sys_areas_info` VALUES (1493, '山东省', '潍坊市', '昌乐县', NULL, 3, 121);
+INSERT INTO `sys_areas_info` VALUES (1494, '福建省', '泉州市', '安溪县', NULL, 3, 161);
+INSERT INTO `sys_areas_info` VALUES (1495, '山东省', '菏泽市', '鄄城县', NULL, 3, 216);
+INSERT INTO `sys_areas_info` VALUES (1496, '云南省', '昆明市', '晋宁县', NULL, 3, 369);
+INSERT INTO `sys_areas_info` VALUES (1497, '贵州省', '六盘水市', '盘县', NULL, 3, 339);
+INSERT INTO `sys_areas_info` VALUES (1498, '广西壮族自治区', '北海市', '合浦县', NULL, 3, 331);
+INSERT INTO `sys_areas_info` VALUES (1499, '云南省', '思茅市', '翠云区', NULL, 3, 168);
+INSERT INTO `sys_areas_info` VALUES (1500, '江西省', '吉安市', '永丰县', NULL, 3, 332);
+INSERT INTO `sys_areas_info` VALUES (1501, '黑龙江省', '双鸭山市', '尖山区', NULL, 3, 373);
+INSERT INTO `sys_areas_info` VALUES (1502, '河北省', '保定市', '涞源县', NULL, 3, 209);
+INSERT INTO `sys_areas_info` VALUES (1503, '吉林省', '吉林市', '永吉县', NULL, 3, 240);
+INSERT INTO `sys_areas_info` VALUES (1504, '湖南省', '常德市', '其他', NULL, 3, 186);
+INSERT INTO `sys_areas_info` VALUES (1505, '福建省', '福州市', '仓山区', NULL, 3, 177);
+INSERT INTO `sys_areas_info` VALUES (1506, '黑龙江省', '黑河市', '爱辉区', NULL, 3, 131);
+INSERT INTO `sys_areas_info` VALUES (1507, '广西壮族自治区', '防城港市', '港口区', NULL, 3, 410);
+INSERT INTO `sys_areas_info` VALUES (1508, '四川省', '成都市', '新津县', NULL, 3, 106);
+INSERT INTO `sys_areas_info` VALUES (1509, '内蒙古自治区', '赤峰市', '宁城县', NULL, 3, 314);
+INSERT INTO `sys_areas_info` VALUES (1510, '湖北省', '武汉市', '江夏区', NULL, 3, 113);
+INSERT INTO `sys_areas_info` VALUES (1511, '青海省', '西宁市', '城中区', NULL, 3, 193);
+INSERT INTO `sys_areas_info` VALUES (1512, '河北省', '衡水市', '饶阳县', NULL, 3, 138);
+INSERT INTO `sys_areas_info` VALUES (1513, '江西省', '萍乡市', '其他', NULL, 3, 320);
+INSERT INTO `sys_areas_info` VALUES (1514, '贵州省', '黔西南布依族苗族自治州', '兴义市', NULL, 3, 297);
+INSERT INTO `sys_areas_info` VALUES (1515, '贵州省', '黔东南苗族侗族自治州', '台江县', NULL, 3, 325);
+INSERT INTO `sys_areas_info` VALUES (1516, '湖南省', '永州市', '冷水滩区', NULL, 3, 408);
+INSERT INTO `sys_areas_info` VALUES (1517, '云南省', '西双版纳傣族自治州', '勐海县', NULL, 3, 390);
+INSERT INTO `sys_areas_info` VALUES (1518, '宁夏回族自治区', '银川市', '永宁县', NULL, 3, 247);
+INSERT INTO `sys_areas_info` VALUES (1519, '江苏省', '盐城市', '盐都区', NULL, 3, 329);
+INSERT INTO `sys_areas_info` VALUES (1520, '河南省', '新乡市', '延津县', NULL, 3, 418);
+INSERT INTO `sys_areas_info` VALUES (1521, '内蒙古自治区', '呼伦贝尔市', '扎兰屯市', NULL, 3, 357);
+INSERT INTO `sys_areas_info` VALUES (1522, '广西壮族自治区', '防城港市', '上思县', NULL, 3, 410);
+INSERT INTO `sys_areas_info` VALUES (1523, '辽宁省', '营口市', '西市区', NULL, 3, 166);
+INSERT INTO `sys_areas_info` VALUES (1524, '宁夏回族自治区', '银川市', '灵武市', NULL, 3, 247);
+INSERT INTO `sys_areas_info` VALUES (1525, '广西壮族自治区', '柳州市', '鱼峰区', NULL, 3, 388);
+INSERT INTO `sys_areas_info` VALUES (1526, '山东省', '东营市', '广饶县', NULL, 3, 140);
+INSERT INTO `sys_areas_info` VALUES (1527, '广东省', '广州市', '天河区', NULL, 3, 129);
+INSERT INTO `sys_areas_info` VALUES (1528, '四川省', '宜宾市', '宜宾县', NULL, 3, 109);
+INSERT INTO `sys_areas_info` VALUES (1529, '福建省', '福州市', '台江区', NULL, 3, 177);
+INSERT INTO `sys_areas_info` VALUES (1530, '贵州省', '贵阳市', '乌当区', NULL, 3, 273);
+INSERT INTO `sys_areas_info` VALUES (1531, '河南省', '周口市', '鹿邑县', NULL, 3, 102);
+INSERT INTO `sys_areas_info` VALUES (1532, '河南省', '三门峡市', '渑池县', NULL, 3, 328);
+INSERT INTO `sys_areas_info` VALUES (1533, '新疆维吾尔族自治区', '塔城地区', '塔城市', NULL, 3, 146);
+INSERT INTO `sys_areas_info` VALUES (1534, '重庆市', '重庆市', '云阳县', NULL, 3, 363);
+INSERT INTO `sys_areas_info` VALUES (1535, '浙江省', '杭州市', '下城区', NULL, 3, 263);
+INSERT INTO `sys_areas_info` VALUES (1536, '福建省', '泉州市', '鲤城区', NULL, 3, 161);
+INSERT INTO `sys_areas_info` VALUES (1537, '贵州省', '安顺市', '其他', NULL, 3, 347);
+INSERT INTO `sys_areas_info` VALUES (1538, '安徽省', '淮北市', '相山区', NULL, 3, 407);
+INSERT INTO `sys_areas_info` VALUES (1539, '四川省', '攀枝花市', '米易县', NULL, 3, 428);
+INSERT INTO `sys_areas_info` VALUES (1540, '山东省', '济南市', '市中区', NULL, 3, 306);
+INSERT INTO `sys_areas_info` VALUES (1541, '黑龙江省', '齐齐哈尔市', '克山县', NULL, 3, 195);
+INSERT INTO `sys_areas_info` VALUES (1542, '广西壮族自治区', '百色市', '那坡县', NULL, 3, 392);
+INSERT INTO `sys_areas_info` VALUES (1543, '山东省', '潍坊市', '昌邑市', NULL, 3, 121);
+INSERT INTO `sys_areas_info` VALUES (1544, '河南省', '郑州市', '中原区', NULL, 3, 308);
+INSERT INTO `sys_areas_info` VALUES (1545, '宁夏回族自治区', '中卫市', '中宁县', NULL, 3, 278);
+INSERT INTO `sys_areas_info` VALUES (1546, '四川省', '宜宾市', '兴文县', NULL, 3, 109);
+INSERT INTO `sys_areas_info` VALUES (1547, '河南省', '信阳市', '淮滨县', NULL, 3, 269);
+INSERT INTO `sys_areas_info` VALUES (1548, '宁夏回族自治区', '固原市', '原州区', NULL, 3, 358);
+INSERT INTO `sys_areas_info` VALUES (1549, '湖北省', '襄樊市', '襄阳区', NULL, 3, 412);
+INSERT INTO `sys_areas_info` VALUES (1550, '甘肃省', '定西市', '陇西县', NULL, 3, 327);
+INSERT INTO `sys_areas_info` VALUES (1551, '黑龙江省', '齐齐哈尔市', '建华区', NULL, 3, 195);
+INSERT INTO `sys_areas_info` VALUES (1552, '陕西省', '榆林市', '神木县', NULL, 3, 421);
+INSERT INTO `sys_areas_info` VALUES (1553, '福建省', '漳州市', '南靖县', NULL, 3, 150);
+INSERT INTO `sys_areas_info` VALUES (1554, '安徽省', '蚌埠市', '龙子湖区', NULL, 3, 372);
+INSERT INTO `sys_areas_info` VALUES (1555, '福建省', '南平市', '浦城县', NULL, 3, 119);
+INSERT INTO `sys_areas_info` VALUES (1556, '福建省', '三明市', '将乐县', NULL, 3, 411);
+INSERT INTO `sys_areas_info` VALUES (1557, '云南省', '曲靖市', '会泽县', NULL, 3, 420);
+INSERT INTO `sys_areas_info` VALUES (1558, '广西壮族自治区', '河池市', '宜州市', NULL, 3, 197);
+INSERT INTO `sys_areas_info` VALUES (1559, '河北省', '石家庄市', '灵寿县', NULL, 3, 264);
+INSERT INTO `sys_areas_info` VALUES (1560, '云南省', '玉溪市', '江川县', NULL, 3, 387);
+INSERT INTO `sys_areas_info` VALUES (1561, '吉林省', '通化市', '通化县', NULL, 3, 395);
+INSERT INTO `sys_areas_info` VALUES (1562, '辽宁省', '沈阳市', '辽中县', NULL, 3, 170);
+INSERT INTO `sys_areas_info` VALUES (1563, '河南省', '焦作市', '山阳区', NULL, 3, 175);
+INSERT INTO `sys_areas_info` VALUES (1564, '湖北省', '仙桃市', '其他', NULL, 3, 160);
+INSERT INTO `sys_areas_info` VALUES (1565, '湖北省', '荆门市', '京山县', NULL, 3, 153);
+INSERT INTO `sys_areas_info` VALUES (1566, '湖北省', '武汉市', '江岸区', NULL, 3, 113);
+INSERT INTO `sys_areas_info` VALUES (1567, '黑龙江省', '佳木斯市', '同江市', NULL, 3, 105);
+INSERT INTO `sys_areas_info` VALUES (1568, '四川省', '成都市', '彭州市', NULL, 3, 106);
+INSERT INTO `sys_areas_info` VALUES (1569, '福建省', '宁德市', '福鼎市', NULL, 3, 202);
+INSERT INTO `sys_areas_info` VALUES (1570, '浙江省', '宁波市', '象山县', NULL, 3, 217);
+INSERT INTO `sys_areas_info` VALUES (1571, '云南省', '大理白族自治州', '鹤庆县', NULL, 3, 191);
+INSERT INTO `sys_areas_info` VALUES (1572, '云南省', '丽江市', '古城区', NULL, 3, 103);
+INSERT INTO `sys_areas_info` VALUES (1573, '广东省', '江门市', '恩平市', NULL, 3, 398);
+INSERT INTO `sys_areas_info` VALUES (1574, '安徽省', '宣城市', '宣州区', NULL, 3, 377);
+INSERT INTO `sys_areas_info` VALUES (1575, '河北省', '衡水市', '枣强县', NULL, 3, 138);
+INSERT INTO `sys_areas_info` VALUES (1576, '广东省', '深圳市', '罗湖区', NULL, 3, 118);
+INSERT INTO `sys_areas_info` VALUES (1577, '新疆维吾尔族自治区', '克拉玛依市', '独山子区', NULL, 3, 183);
+INSERT INTO `sys_areas_info` VALUES (1578, '河南省', '信阳市', '浉河区', NULL, 3, 269);
+INSERT INTO `sys_areas_info` VALUES (1579, '河南省', '周口市', '淮阳县', NULL, 3, 102);
+INSERT INTO `sys_areas_info` VALUES (1580, '河北省', '邯郸市', '成安县', NULL, 3, 348);
+INSERT INTO `sys_areas_info` VALUES (1581, '云南省', '曲靖市', '师宗县', NULL, 3, 420);
+INSERT INTO `sys_areas_info` VALUES (1582, '河北省', '唐山市', '丰南区', NULL, 3, 277);
+INSERT INTO `sys_areas_info` VALUES (1583, '湖南省', '娄底市', '涟源市', NULL, 3, 206);
+INSERT INTO `sys_areas_info` VALUES (1584, '浙江省', '温州市', '平阳县', NULL, 3, 315);
+INSERT INTO `sys_areas_info` VALUES (1585, '河北省', '邢台市', '邢台县', NULL, 3, 151);
+INSERT INTO `sys_areas_info` VALUES (1586, '湖南省', '长沙市', '岳麓区', NULL, 3, 201);
+INSERT INTO `sys_areas_info` VALUES (1587, '山东省', '菏泽市', '东明县', NULL, 3, 216);
+INSERT INTO `sys_areas_info` VALUES (1588, '广东省', '江门市', '台山市', NULL, 3, 398);
+INSERT INTO `sys_areas_info` VALUES (1589, '上海市', '上海市', '闸北区', NULL, 3, 287);
+INSERT INTO `sys_areas_info` VALUES (1590, '贵州省', '毕节地区', '毕节市', NULL, 3, 318);
+INSERT INTO `sys_areas_info` VALUES (1591, '天津市', '天津市', '静海县', NULL, 3, 252);
+INSERT INTO `sys_areas_info` VALUES (1592, '江西省', '抚州市', '金溪县', NULL, 3, 266);
+INSERT INTO `sys_areas_info` VALUES (1593, '广东省', '佛山市', '禅城区', NULL, 3, 378);
+INSERT INTO `sys_areas_info` VALUES (1594, '河南省', '三门峡市', '义马市', NULL, 3, 328);
+INSERT INTO `sys_areas_info` VALUES (1595, '甘肃省', '兰州市', '西固区', NULL, 3, 228);
+INSERT INTO `sys_areas_info` VALUES (1596, '安徽省', '池州市', '东至县', NULL, 3, 391);
+INSERT INTO `sys_areas_info` VALUES (1597, '广东省', '梅州市', '平远县', NULL, 3, 143);
+INSERT INTO `sys_areas_info` VALUES (1598, '安徽省', '蚌埠市', '五河县', NULL, 3, 372);
+INSERT INTO `sys_areas_info` VALUES (1599, '湖南省', '湘西土家族苗族自治州', '吉首市', NULL, 3, 211);
+INSERT INTO `sys_areas_info` VALUES (1600, '黑龙江省', '哈尔滨市', '其他', NULL, 3, 124);
+INSERT INTO `sys_areas_info` VALUES (1601, '内蒙古自治区', '通辽市', '科尔沁区', NULL, 3, 326);
+INSERT INTO `sys_areas_info` VALUES (1602, '湖南省', '郴州市', '嘉禾县', NULL, 3, 370);
+INSERT INTO `sys_areas_info` VALUES (1603, '新疆维吾尔族自治区', '阿勒泰地区', '阿勒泰市', NULL, 3, 190);
+INSERT INTO `sys_areas_info` VALUES (1604, '福建省', '宁德市', '古田县', NULL, 3, 202);
+INSERT INTO `sys_areas_info` VALUES (1605, '河南省', '郑州市', '上街区', NULL, 3, 308);
+INSERT INTO `sys_areas_info` VALUES (1606, '山东省', '潍坊市', '安丘市', NULL, 3, 121);
+INSERT INTO `sys_areas_info` VALUES (1607, '湖北省', '黄冈市', '蕲春县', NULL, 3, 397);
+INSERT INTO `sys_areas_info` VALUES (1608, '陕西省', '咸阳市', '三原县', NULL, 3, 180);
+INSERT INTO `sys_areas_info` VALUES (1609, '河南省', '安阳市', '林州市', NULL, 3, 353);
+INSERT INTO `sys_areas_info` VALUES (1610, '山东省', '淄博市', '淄川区', NULL, 3, 203);
+INSERT INTO `sys_areas_info` VALUES (1611, '山东省', '济南市', '历城区', NULL, 3, 306);
+INSERT INTO `sys_areas_info` VALUES (1612, '福建省', '福州市', '罗源县', NULL, 3, 177);
+INSERT INTO `sys_areas_info` VALUES (1613, '云南省', '思茅市', '墨江哈尼族自治县', NULL, 3, 168);
+INSERT INTO `sys_areas_info` VALUES (1614, '黑龙江省', '哈尔滨市', '双城市', NULL, 3, 124);
+INSERT INTO `sys_areas_info` VALUES (1615, '贵州省', '遵义市', '余庆县', NULL, 3, 288);
+INSERT INTO `sys_areas_info` VALUES (1616, '甘肃省', '白银市', '会宁县', NULL, 3, 157);
+INSERT INTO `sys_areas_info` VALUES (1617, '甘肃省', '平凉市', '静宁县', NULL, 3, 218);
+INSERT INTO `sys_areas_info` VALUES (1618, '湖南省', '邵阳市', '双清区', NULL, 3, 274);
+INSERT INTO `sys_areas_info` VALUES (1619, '福建省', '龙岩市', '漳平市', NULL, 3, 267);
+INSERT INTO `sys_areas_info` VALUES (1620, '黑龙江省', '哈尔滨市', '五常市', NULL, 3, 124);
+INSERT INTO `sys_areas_info` VALUES (1621, '河南省', '郑州市', '荥阳市', NULL, 3, 308);
+INSERT INTO `sys_areas_info` VALUES (1622, '江苏省', '苏州市', '金阊区', NULL, 3, 281);
+INSERT INTO `sys_areas_info` VALUES (1623, '吉林省', '吉林市', '舒兰市', NULL, 3, 240);
+INSERT INTO `sys_areas_info` VALUES (1624, '浙江省', '嘉兴市', '平湖市', NULL, 3, 107);
+INSERT INTO `sys_areas_info` VALUES (1625, '江西省', '赣州市', '龙南县', NULL, 3, 336);
+INSERT INTO `sys_areas_info` VALUES (1626, '贵州省', '黔南布依族苗族自治州', '贵定县', NULL, 3, 276);
+INSERT INTO `sys_areas_info` VALUES (1627, '湖北省', '襄樊市', '保康县', NULL, 3, 412);
+INSERT INTO `sys_areas_info` VALUES (1628, '四川省', '成都市', '邛崃市', NULL, 3, 106);
+INSERT INTO `sys_areas_info` VALUES (1629, '陕西省', '西安市', '长安区', NULL, 3, 334);
+INSERT INTO `sys_areas_info` VALUES (1630, '湖北省', '孝感市', '孝南区', NULL, 3, 210);
+INSERT INTO `sys_areas_info` VALUES (1631, '广东省', '中山市', '东区', NULL, 3, 167);
+INSERT INTO `sys_areas_info` VALUES (1632, '贵州省', '贵阳市', '南明区', NULL, 3, 273);
+INSERT INTO `sys_areas_info` VALUES (1633, '云南省', '昆明市', '寻甸回族彝族自治县', NULL, 3, 369);
+INSERT INTO `sys_areas_info` VALUES (1634, '山东省', '临沂市', '罗庄区', NULL, 3, 312);
+INSERT INTO `sys_areas_info` VALUES (1635, '河北省', '沧州市', '运河区', NULL, 3, 286);
+INSERT INTO `sys_areas_info` VALUES (1636, '贵州省', '遵义市', '道真仡佬族苗族自治县', NULL, 3, 288);
+INSERT INTO `sys_areas_info` VALUES (1637, '吉林省', '长春市', '绿园区', NULL, 3, 112);
+INSERT INTO `sys_areas_info` VALUES (1638, '河北省', '唐山市', '滦县', NULL, 3, 277);
+INSERT INTO `sys_areas_info` VALUES (1639, '贵州省', '遵义市', '遵义县', NULL, 3, 288);
+INSERT INTO `sys_areas_info` VALUES (1640, '江西省', '吉安市', '安福县', NULL, 3, 332);
+INSERT INTO `sys_areas_info` VALUES (1641, '黑龙江省', '齐齐哈尔市', '其他', NULL, 3, 195);
+INSERT INTO `sys_areas_info` VALUES (1642, '安徽省', '宣城市', '绩溪县', NULL, 3, 377);
+INSERT INTO `sys_areas_info` VALUES (1643, '福建省', '南平市', '政和县', NULL, 3, 119);
+INSERT INTO `sys_areas_info` VALUES (1644, '江西省', '九江市', '浔阳区', NULL, 3, 104);
+INSERT INTO `sys_areas_info` VALUES (1645, '山东省', '青岛市', '平度市', NULL, 3, 284);
+INSERT INTO `sys_areas_info` VALUES (1646, '福建省', '莆田市', '涵江区', NULL, 3, 346);
+INSERT INTO `sys_areas_info` VALUES (1647, '内蒙古自治区', '赤峰市', '红山区', NULL, 3, 314);
+INSERT INTO `sys_areas_info` VALUES (1648, '四川省', '内江市', '东兴区', NULL, 3, 322);
+INSERT INTO `sys_areas_info` VALUES (1649, '黑龙江省', '鹤岗市', '向阳区', NULL, 3, 188);
+INSERT INTO `sys_areas_info` VALUES (1650, '江西省', '抚州市', '东乡县', NULL, 3, 266);
+INSERT INTO `sys_areas_info` VALUES (1651, '河北省', '唐山市', '丰润区', NULL, 3, 277);
+INSERT INTO `sys_areas_info` VALUES (1652, '浙江省', '绍兴市', '新昌县', NULL, 3, 307);
+INSERT INTO `sys_areas_info` VALUES (1653, '福建省', '三明市', '宁化县', NULL, 3, 411);
+INSERT INTO `sys_areas_info` VALUES (1654, '四川省', '泸州市', '江阳区', NULL, 3, 110);
+INSERT INTO `sys_areas_info` VALUES (1655, '山西省', '大同市', '灵丘县', NULL, 3, 108);
+INSERT INTO `sys_areas_info` VALUES (1656, '云南省', '昆明市', '嵩明县', NULL, 3, 369);
+INSERT INTO `sys_areas_info` VALUES (1657, '吉林省', '延边朝鲜族自治州', '汪清县', NULL, 3, 165);
+INSERT INTO `sys_areas_info` VALUES (1658, '甘肃省', '张掖市', '临泽县', NULL, 3, 362);
+INSERT INTO `sys_areas_info` VALUES (1659, '福建省', '厦门市', '海沧区', NULL, 3, 354);
+INSERT INTO `sys_areas_info` VALUES (1660, '西藏自治区', '山南地区', '乃东县', NULL, 3, 172);
+INSERT INTO `sys_areas_info` VALUES (1661, '安徽省', '宿州市', '墉桥区', NULL, 3, 181);
+INSERT INTO `sys_areas_info` VALUES (1662, '江西省', '九江市', '湖口县', NULL, 3, 104);
+INSERT INTO `sys_areas_info` VALUES (1663, '江苏省', '常州市', '金坛市', NULL, 3, 304);
+INSERT INTO `sys_areas_info` VALUES (1664, '四川省', '泸州市', '合江县', NULL, 3, 110);
+INSERT INTO `sys_areas_info` VALUES (1665, '黑龙江省', '七台河市', '桃山区', NULL, 3, 419);
+INSERT INTO `sys_areas_info` VALUES (1666, '宁夏回族自治区', '固原市', '彭阳县', NULL, 3, 358);
+INSERT INTO `sys_areas_info` VALUES (1667, '山东省', '枣庄市', '薛城区', NULL, 3, 235);
+INSERT INTO `sys_areas_info` VALUES (1668, '江西省', '九江市', '星子县', NULL, 3, 104);
+INSERT INTO `sys_areas_info` VALUES (1669, '云南省', '昭通市', '镇雄县', NULL, 3, 389);
+INSERT INTO `sys_areas_info` VALUES (1670, '贵州省', '黔西南布依族苗族自治州', '普安县', NULL, 3, 297);
+INSERT INTO `sys_areas_info` VALUES (1671, '四川省', '宜宾市', '高县', NULL, 3, 109);
+INSERT INTO `sys_areas_info` VALUES (1672, '辽宁省', '阜新市', '阜新蒙古族自治县', NULL, 3, 226);
+INSERT INTO `sys_areas_info` VALUES (1673, '广东省', '清远市', '英德市', NULL, 3, 196);
+INSERT INTO `sys_areas_info` VALUES (1674, '山东省', '淄博市', '沂源县', NULL, 3, 203);
+INSERT INTO `sys_areas_info` VALUES (1675, '江西省', '萍乡市', '上栗县', NULL, 3, 320);
+INSERT INTO `sys_areas_info` VALUES (1676, '江苏省', '泰州市', '海陵区', NULL, 3, 311);
+INSERT INTO `sys_areas_info` VALUES (1677, '河南省', '濮阳市', '濮阳县', NULL, 3, 319);
+INSERT INTO `sys_areas_info` VALUES (1678, '云南省', '临沧市', '沧源佤族自治县', NULL, 3, 270);
+INSERT INTO `sys_areas_info` VALUES (1679, '河南省', '新乡市', '辉县市', NULL, 3, 418);
+INSERT INTO `sys_areas_info` VALUES (1680, '江苏省', '南通市', '如皋市', NULL, 3, 416);
+INSERT INTO `sys_areas_info` VALUES (1681, '福建省', '泉州市', '洛江区', NULL, 3, 161);
+INSERT INTO `sys_areas_info` VALUES (1682, '湖南省', '张家界市', '永定区', NULL, 3, 300);
+INSERT INTO `sys_areas_info` VALUES (1683, '福建省', '龙岩市', '永定县', NULL, 3, 267);
+INSERT INTO `sys_areas_info` VALUES (1684, '福建省', '福州市', '马尾区', NULL, 3, 177);
+INSERT INTO `sys_areas_info` VALUES (1685, '山东省', '济宁市', '汶上县', NULL, 3, 169);
+INSERT INTO `sys_areas_info` VALUES (1686, '山西省', '运城市', '新绛县', NULL, 3, 236);
+INSERT INTO `sys_areas_info` VALUES (1687, '广东省', '江门市', '江海区', NULL, 3, 398);
+INSERT INTO `sys_areas_info` VALUES (1688, '河北省', '石家庄市', '桥东区', NULL, 3, 264);
+INSERT INTO `sys_areas_info` VALUES (1689, '四川省', '雅安市', '汉源县', NULL, 3, 208);
+INSERT INTO `sys_areas_info` VALUES (1690, '广东省', '中山市', '石岐区', NULL, 3, 167);
+INSERT INTO `sys_areas_info` VALUES (1691, '河南省', '南阳市', '方城县', NULL, 3, 405);
+INSERT INTO `sys_areas_info` VALUES (1692, '广东省', '广州市', '荔湾区', NULL, 3, 129);
+INSERT INTO `sys_areas_info` VALUES (1693, '湖北省', '孝感市', '大悟县', NULL, 3, 210);
+INSERT INTO `sys_areas_info` VALUES (1694, '安徽省', '黄山市', '歙县', NULL, 3, 279);
+INSERT INTO `sys_areas_info` VALUES (1695, '广东省', '东莞市', '东城区', NULL, 3, 229);
+INSERT INTO `sys_areas_info` VALUES (1696, '贵州省', '毕节地区', '其他', NULL, 3, 318);
+INSERT INTO `sys_areas_info` VALUES (1697, '江苏省', '苏州市', '张家港市', NULL, 3, 281);
+INSERT INTO `sys_areas_info` VALUES (1698, '江苏省', '南通市', '如东县', NULL, 3, 416);
+INSERT INTO `sys_areas_info` VALUES (1699, '黑龙江省', '哈尔滨市', '道外区', NULL, 3, 124);
+INSERT INTO `sys_areas_info` VALUES (1700, '重庆市', '重庆市', '大渡口区', NULL, 3, 363);
+INSERT INTO `sys_areas_info` VALUES (1701, '贵州省', '铜仁地区', '松桃苗族自治县', NULL, 3, 272);
+INSERT INTO `sys_areas_info` VALUES (1702, '四川省', '南充市', '高坪区', NULL, 3, 350);
+INSERT INTO `sys_areas_info` VALUES (1703, '青海省', '西宁市', '城东区', NULL, 3, 193);
+INSERT INTO `sys_areas_info` VALUES (1704, '福建省', '漳州市', '芗城区', NULL, 3, 150);
+INSERT INTO `sys_areas_info` VALUES (1705, '山东省', '临沂市', '临沭县', NULL, 3, 312);
+INSERT INTO `sys_areas_info` VALUES (1706, '浙江省', '舟山市', '普陀区', NULL, 3, 194);
+INSERT INTO `sys_areas_info` VALUES (1707, '河北省', '承德市', '承德县', NULL, 3, 127);
+INSERT INTO `sys_areas_info` VALUES (1708, '吉林省', '长春市', '双阳区', NULL, 3, 112);
+INSERT INTO `sys_areas_info` VALUES (1709, '河南省', '鹤壁市', '浚县', NULL, 3, 385);
+INSERT INTO `sys_areas_info` VALUES (1710, '黑龙江省', '伊春市', '友好区', NULL, 3, 125);
+INSERT INTO `sys_areas_info` VALUES (1711, '黑龙江省', '伊春市', '伊春区', NULL, 3, 125);
+INSERT INTO `sys_areas_info` VALUES (1712, '广西壮族自治区', '玉林市', '玉州区', NULL, 3, 338);
+INSERT INTO `sys_areas_info` VALUES (1713, '湖南省', '怀化市', '鹤城区', NULL, 3, 156);
+INSERT INTO `sys_areas_info` VALUES (1714, '安徽省', '宣城市', '郎溪县', NULL, 3, 377);
+INSERT INTO `sys_areas_info` VALUES (1715, '北京市', '北京市', '海淀区', NULL, 3, 368);
+INSERT INTO `sys_areas_info` VALUES (1716, '内蒙古自治区', '赤峰市', '元宝山区', NULL, 3, 314);
+INSERT INTO `sys_areas_info` VALUES (1717, '新疆维吾尔族自治区', '伊犁哈萨克自治州', '霍城县', NULL, 3, 120);
+INSERT INTO `sys_areas_info` VALUES (1718, '广东省', '湛江市', '霞山区', NULL, 3, 171);
+INSERT INTO `sys_areas_info` VALUES (1719, '重庆市', '重庆市', '江北区', NULL, 3, 363);
+INSERT INTO `sys_areas_info` VALUES (1720, '广东省', '东莞市', '莞城区', NULL, 3, 229);
+INSERT INTO `sys_areas_info` VALUES (1721, '江苏省', '连云港市', '赣榆县', NULL, 3, 101);
+INSERT INTO `sys_areas_info` VALUES (1722, '浙江省', '金华市', '东阳市', NULL, 3, 152);
+INSERT INTO `sys_areas_info` VALUES (1723, '四川省', '德阳市', '中江县', NULL, 3, 178);
+INSERT INTO `sys_areas_info` VALUES (1724, '河南省', '商丘市', '睢阳区', NULL, 3, 254);
+INSERT INTO `sys_areas_info` VALUES (1725, '安徽省', '淮北市', '濉溪县', NULL, 3, 407);
+INSERT INTO `sys_areas_info` VALUES (1726, '辽宁省', '鞍山市', '千山区', NULL, 3, 301);
+INSERT INTO `sys_areas_info` VALUES (1727, '云南省', '丽江市', '华坪县', NULL, 3, 103);
+INSERT INTO `sys_areas_info` VALUES (1728, '内蒙古自治区', '包头市', '东河区', NULL, 3, 230);
+INSERT INTO `sys_areas_info` VALUES (1729, '江苏省', '泰州市', '靖江市', NULL, 3, 311);
+INSERT INTO `sys_areas_info` VALUES (1730, '河南省', '安阳市', '北关区', NULL, 3, 353);
+INSERT INTO `sys_areas_info` VALUES (1731, '江苏省', '苏州市', '太仓市', NULL, 3, 281);
+INSERT INTO `sys_areas_info` VALUES (1732, '河北省', '秦皇岛市', '昌黎县', NULL, 3, 163);
+INSERT INTO `sys_areas_info` VALUES (1733, '四川省', '阿坝藏族羌族自治州', '汶川县', NULL, 3, 255);
+INSERT INTO `sys_areas_info` VALUES (1734, '河北省', '邢台市', '平乡县', NULL, 3, 151);
+INSERT INTO `sys_areas_info` VALUES (1735, '广东省', '梅州市', '丰顺县', NULL, 3, 143);
+INSERT INTO `sys_areas_info` VALUES (1736, '江苏省', '南京市', '建邺区', NULL, 3, 313);
+INSERT INTO `sys_areas_info` VALUES (1737, '北京市', '北京市', '密云县', NULL, 3, 368);
+INSERT INTO `sys_areas_info` VALUES (1738, '安徽省', '阜阳市', '临泉县', NULL, 3, 265);
+INSERT INTO `sys_areas_info` VALUES (1739, '河南省', '洛阳市', '伊川县', NULL, 3, 214);
+INSERT INTO `sys_areas_info` VALUES (1740, '云南省', '德宏傣族景颇族自治州', '陇川县', NULL, 3, 184);
+INSERT INTO `sys_areas_info` VALUES (1741, '湖北省', '武汉市', '青山区', NULL, 3, 113);
+INSERT INTO `sys_areas_info` VALUES (1742, '山西省', '运城市', '夏县', NULL, 3, 236);
+INSERT INTO `sys_areas_info` VALUES (1743, '河南省', '周口市', '项城市', NULL, 3, 102);
+INSERT INTO `sys_areas_info` VALUES (1744, '江苏省', '徐州市', '云龙区', NULL, 3, 130);
+INSERT INTO `sys_areas_info` VALUES (1745, '四川省', '自贡市', '贡井区', NULL, 3, 375);
+INSERT INTO `sys_areas_info` VALUES (1746, '陕西省', '西安市', '周至县', NULL, 3, 334);
+INSERT INTO `sys_areas_info` VALUES (1747, '福建省', '福州市', '鼓楼区', NULL, 3, 177);
+INSERT INTO `sys_areas_info` VALUES (1748, '四川省', '雅安市', '雨城区', NULL, 3, 208);
+INSERT INTO `sys_areas_info` VALUES (1749, '上海市', '上海市', '徐汇区', NULL, 3, 287);
+INSERT INTO `sys_areas_info` VALUES (1750, '江西省', '景德镇市', '乐平市', NULL, 3, 244);
+INSERT INTO `sys_areas_info` VALUES (1751, '辽宁省', '鞍山市', '铁东区', NULL, 3, 301);
+INSERT INTO `sys_areas_info` VALUES (1752, '山西省', '临汾市', '曲沃县', NULL, 3, 238);
+INSERT INTO `sys_areas_info` VALUES (1753, '北京市', '北京市', '西城区', NULL, 3, 368);
+INSERT INTO `sys_areas_info` VALUES (1754, '内蒙古自治区', '鄂尔多斯市', '达拉特旗', NULL, 3, 384);
+INSERT INTO `sys_areas_info` VALUES (1755, '云南省', '昆明市', '东川区', NULL, 3, 369);
+INSERT INTO `sys_areas_info` VALUES (1756, '辽宁省', '大连市', '西岗区', NULL, 3, 262);
+INSERT INTO `sys_areas_info` VALUES (1757, '辽宁省', '抚顺市', '清原满族自治县', NULL, 3, 158);
+INSERT INTO `sys_areas_info` VALUES (1758, '湖南省', '衡阳市', '蒸湘区', NULL, 3, 116);
+INSERT INTO `sys_areas_info` VALUES (1759, '辽宁省', '沈阳市', '法库县', NULL, 3, 170);
+INSERT INTO `sys_areas_info` VALUES (1760, '河北省', '唐山市', '迁西县', NULL, 3, 277);
+INSERT INTO `sys_areas_info` VALUES (1761, '福建省', '南平市', '建瓯市', NULL, 3, 119);
+INSERT INTO `sys_areas_info` VALUES (1762, '河北省', '石家庄市', '桥西区', NULL, 3, 264);
+INSERT INTO `sys_areas_info` VALUES (1763, '河北省', '邯郸市', '峰峰矿区', NULL, 3, 348);
+INSERT INTO `sys_areas_info` VALUES (1764, '山东省', '潍坊市', '坊子区', NULL, 3, 121);
+INSERT INTO `sys_areas_info` VALUES (1765, '湖南省', '郴州市', '苏仙区', NULL, 3, 370);
+INSERT INTO `sys_areas_info` VALUES (1766, '浙江省', '宁波市', '奉化市', NULL, 3, 217);
+INSERT INTO `sys_areas_info` VALUES (1767, '山东省', '枣庄市', '市中区', NULL, 3, 235);
+INSERT INTO `sys_areas_info` VALUES (1768, '湖北省', '襄樊市', '襄城区', NULL, 3, 412);
+INSERT INTO `sys_areas_info` VALUES (1769, '河南省', '驻马店市', '上蔡县', NULL, 3, 282);
+INSERT INTO `sys_areas_info` VALUES (1770, '安徽省', '合肥市', '庐阳区', NULL, 3, 299);
+INSERT INTO `sys_areas_info` VALUES (1771, '江西省', '鹰潭市', '月湖区', NULL, 3, 403);
+INSERT INTO `sys_areas_info` VALUES (1772, '河南省', '新乡市', '长垣县', NULL, 3, 418);
+INSERT INTO `sys_areas_info` VALUES (1773, '云南省', '文山壮族苗族自治州', '富宁县', NULL, 3, 426);
+INSERT INTO `sys_areas_info` VALUES (1774, '安徽省', '阜阳市', '颍东区', NULL, 3, 265);
+INSERT INTO `sys_areas_info` VALUES (1775, '辽宁省', '沈阳市', '东陵区', NULL, 3, 170);
+INSERT INTO `sys_areas_info` VALUES (1776, '甘肃省', '定西市', '临洮县', NULL, 3, 327);
+INSERT INTO `sys_areas_info` VALUES (1777, '四川省', '成都市', '郫县', NULL, 3, 106);
+INSERT INTO `sys_areas_info` VALUES (1778, '安徽省', '六安市', '金安区', NULL, 3, 253);
+INSERT INTO `sys_areas_info` VALUES (1779, '江西省', '赣州市', '信丰县', NULL, 3, 336);
+INSERT INTO `sys_areas_info` VALUES (1780, '江苏省', '无锡市', '北塘区', NULL, 3, 364);
+INSERT INTO `sys_areas_info` VALUES (1781, '云南省', '怒江傈僳族自治州', '福贡县', NULL, 3, 258);
+INSERT INTO `sys_areas_info` VALUES (1782, '福建省', '莆田市', '仙游县', NULL, 3, 346);
+INSERT INTO `sys_areas_info` VALUES (1783, '山西省', '太原市', '古交市', NULL, 3, 154);
+INSERT INTO `sys_areas_info` VALUES (1784, '河北省', '保定市', '涿州市', NULL, 3, 209);
+INSERT INTO `sys_areas_info` VALUES (1785, '贵州省', '黔东南苗族侗族自治州', '麻江县', NULL, 3, 325);
+INSERT INTO `sys_areas_info` VALUES (1786, '河北省', '保定市', '容城县', NULL, 3, 209);
+INSERT INTO `sys_areas_info` VALUES (1787, '河北省', '衡水市', '桃城区', NULL, 3, 138);
+INSERT INTO `sys_areas_info` VALUES (1788, '内蒙古自治区', '呼伦贝尔市', '牙克石市', NULL, 3, 357);
+INSERT INTO `sys_areas_info` VALUES (1789, '山东省', '莱芜市', '莱城区', NULL, 3, 126);
+INSERT INTO `sys_areas_info` VALUES (1790, '河南省', '平顶山市', '卫东区', NULL, 3, 117);
+INSERT INTO `sys_areas_info` VALUES (1791, '安徽省', '合肥市', '肥东县', NULL, 3, 299);
+INSERT INTO `sys_areas_info` VALUES (1792, '河南省', '信阳市', '息县', NULL, 3, 269);
+INSERT INTO `sys_areas_info` VALUES (1793, '安徽省', '芜湖市', '镜湖区', NULL, 3, 425);
+INSERT INTO `sys_areas_info` VALUES (1794, '四川省', '绵阳市', '游仙区', NULL, 3, 224);
+INSERT INTO `sys_areas_info` VALUES (1795, '四川省', '德阳市', '绵竹市', NULL, 3, 178);
+INSERT INTO `sys_areas_info` VALUES (1796, '河南省', '洛阳市', '嵩县', NULL, 3, 214);
+INSERT INTO `sys_areas_info` VALUES (1797, '湖北省', '荆州市', '洪湖市', NULL, 3, 361);
+INSERT INTO `sys_areas_info` VALUES (1798, '云南省', '红河哈尼族彝族自治州', '石屏县', NULL, 3, 399);
+INSERT INTO `sys_areas_info` VALUES (1799, '贵州省', '遵义市', '正安县', NULL, 3, 288);
+INSERT INTO `sys_areas_info` VALUES (1800, '四川省', '遂宁市', '船山区', NULL, 3, 268);
+INSERT INTO `sys_areas_info` VALUES (1801, '广西壮族自治区', '百色市', '田林县', NULL, 3, 392);
+INSERT INTO `sys_areas_info` VALUES (1802, '河北省', '张家口市', '沽源县', NULL, 3, 162);
+INSERT INTO `sys_areas_info` VALUES (1803, '安徽省', '宿州市', '泗县', NULL, 3, 181);
+INSERT INTO `sys_areas_info` VALUES (1804, '河北省', '廊坊市', '广阳区', NULL, 3, 176);
+INSERT INTO `sys_areas_info` VALUES (1805, '湖南省', '衡阳市', '祁东县', NULL, 3, 116);
+INSERT INTO `sys_areas_info` VALUES (1806, '江苏省', '无锡市', '江阴市', NULL, 3, 364);
+INSERT INTO `sys_areas_info` VALUES (1807, '辽宁省', '朝阳市', '凌源市', NULL, 3, 174);
+INSERT INTO `sys_areas_info` VALUES (1808, '江苏省', '宿迁市', '泗阳县', NULL, 3, 285);
+INSERT INTO `sys_areas_info` VALUES (1809, '江西省', '吉安市', '吉州区', NULL, 3, 332);
+INSERT INTO `sys_areas_info` VALUES (1810, '江苏省', '镇江市', '句容市', NULL, 3, 283);
+INSERT INTO `sys_areas_info` VALUES (1811, '四川省', '凉山彝族自治州', '昭觉县', NULL, 3, 173);
+INSERT INTO `sys_areas_info` VALUES (1812, '河南省', '南阳市', '淅川县', NULL, 3, 405);
+INSERT INTO `sys_areas_info` VALUES (1813, '福建省', '南平市', '其他', NULL, 3, 119);
+INSERT INTO `sys_areas_info` VALUES (1814, '陕西省', '宝鸡市', '扶风县', NULL, 3, 232);
+INSERT INTO `sys_areas_info` VALUES (1815, '贵州省', '黔东南苗族侗族自治州', '凯里市', NULL, 3, 325);
+INSERT INTO `sys_areas_info` VALUES (1816, '黑龙江省', '大庆市', '萨尔图区', NULL, 3, 415);
+INSERT INTO `sys_areas_info` VALUES (1817, '山东省', '滨州市', '博兴县', NULL, 3, 245);
+INSERT INTO `sys_areas_info` VALUES (1818, '云南省', '临沧市', '云县', NULL, 3, 270);
+INSERT INTO `sys_areas_info` VALUES (1819, '山东省', '泰安市', '新泰市', NULL, 3, 192);
+INSERT INTO `sys_areas_info` VALUES (1820, '河北省', '张家口市', '宣化区', NULL, 3, 162);
+INSERT INTO `sys_areas_info` VALUES (1821, '辽宁省', '阜新市', '海州区', NULL, 3, 226);
+INSERT INTO `sys_areas_info` VALUES (1822, '吉林省', '延边朝鲜族自治州', '敦化市', NULL, 3, 165);
+INSERT INTO `sys_areas_info` VALUES (1823, '福建省', '漳州市', '平和县', NULL, 3, 150);
+INSERT INTO `sys_areas_info` VALUES (1824, '湖北省', '天门市', '其他', NULL, 3, 359);
+INSERT INTO `sys_areas_info` VALUES (1825, '浙江省', '绍兴市', '上虞市', NULL, 3, 307);
+INSERT INTO `sys_areas_info` VALUES (1826, '江苏省', '常州市', '钟楼区', NULL, 3, 304);
+INSERT INTO `sys_areas_info` VALUES (1827, '河北省', '张家口市', '怀来县', NULL, 3, 162);
+INSERT INTO `sys_areas_info` VALUES (1828, '浙江省', '舟山市', '岱山县', NULL, 3, 194);
+INSERT INTO `sys_areas_info` VALUES (1829, '安徽省', '滁州市', '琅琊区', NULL, 3, 380);
+INSERT INTO `sys_areas_info` VALUES (1830, '河北省', '保定市', '顺平县', NULL, 3, 209);
+INSERT INTO `sys_areas_info` VALUES (1831, '天津市', '天津市', '汉沽区', NULL, 3, 252);
+INSERT INTO `sys_areas_info` VALUES (1832, '四川省', '宜宾市', '翠屏区', NULL, 3, 109);
+INSERT INTO `sys_areas_info` VALUES (1833, '江西省', '上饶市', '余干县', NULL, 3, 234);
+INSERT INTO `sys_areas_info` VALUES (1834, '上海市', '上海市', '浦东新区', NULL, 3, 287);
+INSERT INTO `sys_areas_info` VALUES (1835, '青海省', '西宁市', '城西区', NULL, 3, 193);
+INSERT INTO `sys_areas_info` VALUES (1836, '山东省', '威海市', '环翠区', NULL, 3, 256);
+INSERT INTO `sys_areas_info` VALUES (1837, '甘肃省', '临夏回族自治州', '临夏市', NULL, 3, 335);
+INSERT INTO `sys_areas_info` VALUES (1838, '湖南省', '娄底市', '双峰县', NULL, 3, 206);
+INSERT INTO `sys_areas_info` VALUES (1839, '广西壮族自治区', '南宁市', '横县', NULL, 3, 242);
+INSERT INTO `sys_areas_info` VALUES (1840, '上海市', '上海市', '长宁区', NULL, 3, 287);
+INSERT INTO `sys_areas_info` VALUES (1841, '广东省', '江门市', '鹤山市', NULL, 3, 398);
+INSERT INTO `sys_areas_info` VALUES (1842, '福建省', '漳州市', '诏安县', NULL, 3, 150);
+INSERT INTO `sys_areas_info` VALUES (1843, '新疆维吾尔族自治区', '伊犁哈萨克自治州', '伊宁市', NULL, 3, 120);
+INSERT INTO `sys_areas_info` VALUES (1844, '重庆市', '重庆市', '合川区', NULL, 3, 363);
+INSERT INTO `sys_areas_info` VALUES (1845, '河北省', '保定市', '曲阳县', NULL, 3, 209);
+INSERT INTO `sys_areas_info` VALUES (1846, '浙江省', '嘉兴市', '秀洲区', NULL, 3, 107);
+INSERT INTO `sys_areas_info` VALUES (1847, '浙江省', '温州市', '洞头县', NULL, 3, 315);
+INSERT INTO `sys_areas_info` VALUES (1848, '湖北省', '武汉市', '洪山区', NULL, 3, 113);
+INSERT INTO `sys_areas_info` VALUES (1849, '湖南省', '长沙市', '宁乡县', NULL, 3, 201);
+INSERT INTO `sys_areas_info` VALUES (1850, '河南省', '开封市', '顺河回族区', NULL, 3, 111);
+INSERT INTO `sys_areas_info` VALUES (1851, '江苏省', '扬州市', '江都市', NULL, 3, 136);
+INSERT INTO `sys_areas_info` VALUES (1852, '天津市', '天津市', '西青区', NULL, 3, 252);
+INSERT INTO `sys_areas_info` VALUES (1853, '辽宁省', '沈阳市', '铁西区', NULL, 3, 170);
+INSERT INTO `sys_areas_info` VALUES (1854, '浙江省', '衢州市', '开化县', NULL, 3, 257);
+INSERT INTO `sys_areas_info` VALUES (1855, '云南省', '红河哈尼族彝族自治州', '泸西县', NULL, 3, 399);
+INSERT INTO `sys_areas_info` VALUES (1856, '山西省', '晋中市', '介休市', NULL, 3, 139);
+INSERT INTO `sys_areas_info` VALUES (1857, '广西壮族自治区', '贵港市', '其他', NULL, 3, 295);
+INSERT INTO `sys_areas_info` VALUES (1858, '广西壮族自治区', '贺州市', '钟山县', NULL, 3, 135);
+INSERT INTO `sys_areas_info` VALUES (1859, '天津市', '天津市', '宁河县', NULL, 3, 252);
+INSERT INTO `sys_areas_info` VALUES (1860, '浙江省', '嘉兴市', '嘉善县', NULL, 3, 107);
+INSERT INTO `sys_areas_info` VALUES (1861, '云南省', '怒江傈僳族自治州', '泸水县', NULL, 3, 258);
+INSERT INTO `sys_areas_info` VALUES (1862, '广西壮族自治区', '贵港市', '桂平市', NULL, 3, 295);
+INSERT INTO `sys_areas_info` VALUES (1863, '重庆市', '重庆市', '开县', NULL, 3, 363);
+INSERT INTO `sys_areas_info` VALUES (1864, '陕西省', '汉中市', '汉台区', NULL, 3, 379);
+INSERT INTO `sys_areas_info` VALUES (1865, '海南省', '海口市', '美兰区', NULL, 3, 219);
+INSERT INTO `sys_areas_info` VALUES (1866, '内蒙古自治区', '呼伦贝尔市', '海拉尔区', NULL, 3, 357);
+INSERT INTO `sys_areas_info` VALUES (1867, '新疆维吾尔族自治区', '巴音郭楞蒙古自治州', '其他', NULL, 3, 310);
+INSERT INTO `sys_areas_info` VALUES (1868, '河南省', '许昌市', '魏都区', NULL, 3, 345);
+INSERT INTO `sys_areas_info` VALUES (1869, '浙江省', '温州市', '苍南县', NULL, 3, 315);
+INSERT INTO `sys_areas_info` VALUES (1870, '河南省', '新乡市', '封丘县', NULL, 3, 418);
+INSERT INTO `sys_areas_info` VALUES (1871, '山东省', '东营市', '河口区', NULL, 3, 140);
+INSERT INTO `sys_areas_info` VALUES (1872, '浙江省', '台州市', '黄岩区', NULL, 3, 289);
+INSERT INTO `sys_areas_info` VALUES (1873, '浙江省', '绍兴市', '嵊州市', NULL, 3, 307);
+INSERT INTO `sys_areas_info` VALUES (1874, '广西壮族自治区', '南宁市', '武鸣县', NULL, 3, 242);
+INSERT INTO `sys_areas_info` VALUES (1875, '河北省', '张家口市', '蔚县', NULL, 3, 162);
+INSERT INTO `sys_areas_info` VALUES (1876, '江苏省', '无锡市', '崇安区', NULL, 3, 364);
+INSERT INTO `sys_areas_info` VALUES (1877, '重庆市', '重庆市', '沙坪坝区', NULL, 3, 363);
+INSERT INTO `sys_areas_info` VALUES (1878, '安徽省', '安庆市', '大观区', NULL, 3, 246);
+INSERT INTO `sys_areas_info` VALUES (1879, '四川省', '攀枝花市', '东区', NULL, 3, 428);
+INSERT INTO `sys_areas_info` VALUES (1880, '山东省', '枣庄市', '滕州市', NULL, 3, 235);
+INSERT INTO `sys_areas_info` VALUES (1881, '江苏省', '连云港市', '灌云县', NULL, 3, 101);
+INSERT INTO `sys_areas_info` VALUES (1882, '云南省', '临沧市', '耿马傣族佤族自治县', NULL, 3, 270);
+INSERT INTO `sys_areas_info` VALUES (1883, '宁夏回族自治区', '吴忠市', '青铜峡市', NULL, 3, 383);
+INSERT INTO `sys_areas_info` VALUES (1884, '辽宁省', '铁岭市', '铁岭县', NULL, 3, 223);
+INSERT INTO `sys_areas_info` VALUES (1885, '上海市', '上海市', '奉贤区', NULL, 3, 287);
+INSERT INTO `sys_areas_info` VALUES (1886, '广东省', '中山市', '五桂山区', NULL, 3, 167);
+INSERT INTO `sys_areas_info` VALUES (1887, '内蒙古自治区', '巴彦淖尔市', '临河区', NULL, 3, 316);
+INSERT INTO `sys_areas_info` VALUES (1888, '四川省', '泸州市', '龙马潭区', NULL, 3, 110);
+INSERT INTO `sys_areas_info` VALUES (1889, '浙江省', '温州市', '其他', NULL, 3, 315);
+INSERT INTO `sys_areas_info` VALUES (1890, '贵州省', '黔东南苗族侗族自治州', '岑巩县', NULL, 3, 325);
+INSERT INTO `sys_areas_info` VALUES (1891, '江西省', '萍乡市', '湘东区', NULL, 3, 320);
+INSERT INTO `sys_areas_info` VALUES (1892, '广东省', '广州市', '越秀区', NULL, 3, 129);
+INSERT INTO `sys_areas_info` VALUES (1893, '江西省', '宜春市', '宜丰县', NULL, 3, 142);
+INSERT INTO `sys_areas_info` VALUES (1894, '河北省', '保定市', '博野县', NULL, 3, 209);
+INSERT INTO `sys_areas_info` VALUES (1895, '浙江省', '丽水市', '龙泉市', NULL, 3, 365);
+INSERT INTO `sys_areas_info` VALUES (1896, '山西省', '阳泉市', '城区', NULL, 3, 137);
+INSERT INTO `sys_areas_info` VALUES (1897, '河北省', '廊坊市', '大城县', NULL, 3, 176);
+INSERT INTO `sys_areas_info` VALUES (1898, '山东省', '聊城市', '莘县', NULL, 3, 402);
+INSERT INTO `sys_areas_info` VALUES (1899, '山东省', '潍坊市', '寿光市', NULL, 3, 121);
+INSERT INTO `sys_areas_info` VALUES (1900, '福建省', '南平市', '建阳市', NULL, 3, 119);
+INSERT INTO `sys_areas_info` VALUES (1901, '云南省', '红河哈尼族彝族自治州', '弥勒县', NULL, 3, 399);
+INSERT INTO `sys_areas_info` VALUES (1902, '河北省', '邢台市', '其他', NULL, 3, 151);
+INSERT INTO `sys_areas_info` VALUES (1903, '吉林省', '长春市', '德惠市', NULL, 3, 112);
+INSERT INTO `sys_areas_info` VALUES (1904, '安徽省', '合肥市', '长丰县', NULL, 3, 299);
+INSERT INTO `sys_areas_info` VALUES (1905, '广西壮族自治区', '贵港市', '港南区', NULL, 3, 295);
+INSERT INTO `sys_areas_info` VALUES (1906, '吉林省', '松原市', '其他', NULL, 3, 333);
+INSERT INTO `sys_areas_info` VALUES (1907, '青海省', '西宁市', '大通回族土族自治县', NULL, 3, 193);
+INSERT INTO `sys_areas_info` VALUES (1908, '山西省', '阳泉市', '盂县', NULL, 3, 137);
+INSERT INTO `sys_areas_info` VALUES (1909, '天津市', '天津市', '大港区', NULL, 3, 252);
+INSERT INTO `sys_areas_info` VALUES (1910, '河北省', '邯郸市', '大名县', NULL, 3, 348);
+INSERT INTO `sys_areas_info` VALUES (1911, '河南省', '洛阳市', '宜阳县', NULL, 3, 214);
+INSERT INTO `sys_areas_info` VALUES (1912, '贵州省', '黔东南苗族侗族自治州', '剑河县', NULL, 3, 325);
+INSERT INTO `sys_areas_info` VALUES (1913, '福建省', '南平市', '邵武市', NULL, 3, 119);
+INSERT INTO `sys_areas_info` VALUES (1914, '江西省', '赣州市', '石城县', NULL, 3, 336);
+INSERT INTO `sys_areas_info` VALUES (1915, '吉林省', '松原市', '宁江区', NULL, 3, 333);
+INSERT INTO `sys_areas_info` VALUES (1916, '云南省', '楚雄彝族自治州', '永仁县', NULL, 3, 231);
+INSERT INTO `sys_areas_info` VALUES (1917, '福建省', '三明市', '明溪县', NULL, 3, 411);
+INSERT INTO `sys_areas_info` VALUES (1918, '内蒙古自治区', '赤峰市', '林西县', NULL, 3, 314);
+INSERT INTO `sys_areas_info` VALUES (1919, '河北省', '秦皇岛市', '抚宁县', NULL, 3, 163);
+INSERT INTO `sys_areas_info` VALUES (1920, '广西壮族自治区', '梧州市', '蝶山区', NULL, 3, 280);
+INSERT INTO `sys_areas_info` VALUES (1921, '云南省', '思茅市', '普洱哈尼族彝族自治县', NULL, 3, 168);
+INSERT INTO `sys_areas_info` VALUES (1922, '海南省', '儋州市', '那大镇', NULL, 3, 199);
+INSERT INTO `sys_areas_info` VALUES (1923, '辽宁省', '抚顺市', '抚顺县', NULL, 3, 158);
+INSERT INTO `sys_areas_info` VALUES (1924, '湖南省', '益阳市', '南县', NULL, 3, 145);
+INSERT INTO `sys_areas_info` VALUES (1925, '福建省', '三明市', '沙县', NULL, 3, 411);
+INSERT INTO `sys_areas_info` VALUES (1926, '江西省', '九江市', '德安县', NULL, 3, 104);
+INSERT INTO `sys_areas_info` VALUES (1927, '北京市', '北京市', '大兴区', NULL, 3, 368);
+INSERT INTO `sys_areas_info` VALUES (1928, '四川省', '巴中市', '巴州区', NULL, 3, 233);
+INSERT INTO `sys_areas_info` VALUES (1929, '黑龙江省', '黑河市', '其他', NULL, 3, 131);
+INSERT INTO `sys_areas_info` VALUES (1930, '山东省', '潍坊市', '诸城市', NULL, 3, 121);
+INSERT INTO `sys_areas_info` VALUES (1931, '四川省', '成都市', '大邑县', NULL, 3, 106);
+INSERT INTO `sys_areas_info` VALUES (1932, '江苏省', '扬州市', '维扬区', NULL, 3, 136);
+INSERT INTO `sys_areas_info` VALUES (1933, '河北省', '唐山市', '滦南县', NULL, 3, 277);
+INSERT INTO `sys_areas_info` VALUES (1934, '河北省', '唐山市', '路南区', NULL, 3, 277);
+INSERT INTO `sys_areas_info` VALUES (1935, '湖南省', '衡阳市', '南岳区', NULL, 3, 116);
+INSERT INTO `sys_areas_info` VALUES (1936, '贵州省', '黔南布依族苗族自治州', '福泉市', NULL, 3, 276);
+INSERT INTO `sys_areas_info` VALUES (1937, '四川省', '广元市', '市中区', NULL, 3, 298);
+INSERT INTO `sys_areas_info` VALUES (1938, '山西省', '朔州市', '怀仁县', NULL, 3, 290);
+INSERT INTO `sys_areas_info` VALUES (1939, '浙江省', '杭州市', '上城区', NULL, 3, 263);
+INSERT INTO `sys_areas_info` VALUES (1940, '湖南省', '岳阳市', '云溪区', NULL, 3, 393);
+INSERT INTO `sys_areas_info` VALUES (1941, '湖北省', '武汉市', '江汉区', NULL, 3, 113);
+INSERT INTO `sys_areas_info` VALUES (1942, '河南省', '信阳市', '光山县', NULL, 3, 269);
+INSERT INTO `sys_areas_info` VALUES (1943, '湖南省', '衡阳市', '衡南县', NULL, 3, 116);
+INSERT INTO `sys_areas_info` VALUES (1944, '河南省', '南阳市', '社旗县', NULL, 3, 405);
+INSERT INTO `sys_areas_info` VALUES (1945, '辽宁省', '大连市', '旅顺口区', NULL, 3, 262);
+INSERT INTO `sys_areas_info` VALUES (1946, '北京市', '北京市', '平谷区', NULL, 3, 368);
+INSERT INTO `sys_areas_info` VALUES (1947, '海南省', '琼海市', '其他', NULL, 3, 351);
+INSERT INTO `sys_areas_info` VALUES (1948, '重庆市', '重庆市', '渝北区', NULL, 3, 363);
+INSERT INTO `sys_areas_info` VALUES (1949, '江西省', '赣州市', '安远县', NULL, 3, 336);
+INSERT INTO `sys_areas_info` VALUES (1950, '山西省', '临汾市', '翼城县', NULL, 3, 238);
+INSERT INTO `sys_areas_info` VALUES (1951, '河北省', '邯郸市', '临漳县', NULL, 3, 348);
+INSERT INTO `sys_areas_info` VALUES (1952, '河南省', '开封市', '杞县', NULL, 3, 111);
+INSERT INTO `sys_areas_info` VALUES (1953, '广西壮族自治区', '贵港市', '平南县', NULL, 3, 295);
+INSERT INTO `sys_areas_info` VALUES (1954, '上海市', '上海市', '金山区', NULL, 3, 287);
+INSERT INTO `sys_areas_info` VALUES (1955, '贵州省', '六盘水市', '其他', NULL, 3, 339);
+INSERT INTO `sys_areas_info` VALUES (1956, '四川省', '广元市', '剑阁县', NULL, 3, 298);
+INSERT INTO `sys_areas_info` VALUES (1957, '四川省', '遂宁市', '射洪县', NULL, 3, 268);
+INSERT INTO `sys_areas_info` VALUES (1958, '广西壮族自治区', '崇左市', '扶绥县', NULL, 3, 241);
+INSERT INTO `sys_areas_info` VALUES (1959, '江苏省', '盐城市', '东台市', NULL, 3, 329);
+INSERT INTO `sys_areas_info` VALUES (1960, '辽宁省', '鞍山市', '其他', NULL, 3, 301);
+INSERT INTO `sys_areas_info` VALUES (1961, '福建省', '福州市', '晋安区', NULL, 3, 177);
+INSERT INTO `sys_areas_info` VALUES (1962, '四川省', '广安市', '武胜县', NULL, 3, 237);
+INSERT INTO `sys_areas_info` VALUES (1963, '广西壮族自治区', '来宾市', '武宣县', NULL, 3, 225);
+INSERT INTO `sys_areas_info` VALUES (1964, '江苏省', '无锡市', '宜兴市', NULL, 3, 364);
+INSERT INTO `sys_areas_info` VALUES (1965, '广西壮族自治区', '北海市', '海城区', NULL, 3, 331);
+INSERT INTO `sys_areas_info` VALUES (1966, '辽宁省', '葫芦岛市', '兴城市', NULL, 3, 213);
+INSERT INTO `sys_areas_info` VALUES (1967, '辽宁省', '营口市', '鲅鱼圈区', NULL, 3, 166);
+INSERT INTO `sys_areas_info` VALUES (1968, '辽宁省', '丹东市', '元宝区', NULL, 3, 305);
+INSERT INTO `sys_areas_info` VALUES (1969, '辽宁省', '葫芦岛市', '连山区', NULL, 3, 213);
+INSERT INTO `sys_areas_info` VALUES (1970, '江西省', '南昌市', '南昌县', NULL, 3, 200);
+INSERT INTO `sys_areas_info` VALUES (1971, '黑龙江省', '鸡西市', '虎林市', NULL, 3, 128);
+INSERT INTO `sys_areas_info` VALUES (1972, '湖南省', '永州市', '蓝山县', NULL, 3, 408);
+INSERT INTO `sys_areas_info` VALUES (1973, '河南省', '驻马店市', '遂平县', NULL, 3, 282);
+INSERT INTO `sys_areas_info` VALUES (1974, '贵州省', '黔南布依族苗族自治州', '瓮安县', NULL, 3, 276);
+INSERT INTO `sys_areas_info` VALUES (1975, '安徽省', '宿州市', '其他', NULL, 3, 181);
+INSERT INTO `sys_areas_info` VALUES (1976, '广西壮族自治区', '崇左市', '江洲区', NULL, 3, 241);
+INSERT INTO `sys_areas_info` VALUES (1977, '新疆维吾尔族自治区', '伊犁哈萨克自治州', '伊宁县', NULL, 3, 120);
+INSERT INTO `sys_areas_info` VALUES (1978, '山东省', '聊城市', '临清市', NULL, 3, 402);
+INSERT INTO `sys_areas_info` VALUES (1979, '广西壮族自治区', '柳州市', '鹿寨县', NULL, 3, 388);
+INSERT INTO `sys_areas_info` VALUES (1980, '山西省', '吕梁市', '离石区', NULL, 3, 227);
+INSERT INTO `sys_areas_info` VALUES (1981, '湖南省', '株洲市', '天元区', NULL, 3, 302);
+INSERT INTO `sys_areas_info` VALUES (1982, '湖北省', '黄冈市', '其他', NULL, 3, 397);
+INSERT INTO `sys_areas_info` VALUES (1983, '江西省', '吉安市', '新干县', NULL, 3, 332);
+INSERT INTO `sys_areas_info` VALUES (1984, '黑龙江省', '牡丹江市', '西安区', NULL, 3, 260);
+INSERT INTO `sys_areas_info` VALUES (1985, '河南省', '濮阳市', '华龙区', NULL, 3, 319);
+INSERT INTO `sys_areas_info` VALUES (1986, '广东省', '东莞市', '厚街镇', NULL, 3, 229);
+INSERT INTO `sys_areas_info` VALUES (1987, '湖北省', '黄冈市', '黄州区', NULL, 3, 397);
+INSERT INTO `sys_areas_info` VALUES (1988, '浙江省', '金华市', '永康市', NULL, 3, 152);
+INSERT INTO `sys_areas_info` VALUES (1989, '广西壮族自治区', '桂林市', '兴安县', NULL, 3, 400);
+INSERT INTO `sys_areas_info` VALUES (1990, '浙江省', '绍兴市', '越城区', NULL, 3, 307);
+INSERT INTO `sys_areas_info` VALUES (1991, '河南省', '洛阳市', '涧西区', NULL, 3, 214);
+INSERT INTO `sys_areas_info` VALUES (1992, '四川省', '成都市', '都江堰市', NULL, 3, 106);
+INSERT INTO `sys_areas_info` VALUES (1993, '江苏省', '镇江市', '丹徒区', NULL, 3, 283);
+INSERT INTO `sys_areas_info` VALUES (1994, '湖南省', '岳阳市', '岳阳楼区', NULL, 3, 393);
+INSERT INTO `sys_areas_info` VALUES (1995, '广东省', '湛江市', '遂溪县', NULL, 3, 171);
+INSERT INTO `sys_areas_info` VALUES (1996, '江苏省', '南京市', '白下区', NULL, 3, 313);
+INSERT INTO `sys_areas_info` VALUES (1997, '江苏省', '扬州市', '宝应县', NULL, 3, 136);
+INSERT INTO `sys_areas_info` VALUES (1998, '北京市', '北京市', '东城区', NULL, 3, 368);
+INSERT INTO `sys_areas_info` VALUES (1999, '山东省', '威海市', '乳山市', NULL, 3, 256);
+INSERT INTO `sys_areas_info` VALUES (2000, '广东省', '阳江市', '阳春市', NULL, 3, 413);
+INSERT INTO `sys_areas_info` VALUES (2001, '浙江省', '丽水市', '遂昌县', NULL, 3, 365);
+INSERT INTO `sys_areas_info` VALUES (2002, '河南省', '洛阳市', '洛龙区', NULL, 3, 214);
+INSERT INTO `sys_areas_info` VALUES (2003, '广西壮族自治区', '贵港市', '覃塘区', NULL, 3, 295);
+INSERT INTO `sys_areas_info` VALUES (2004, '云南省', '曲靖市', '宣威市', NULL, 3, 420);
+INSERT INTO `sys_areas_info` VALUES (2005, '贵州省', '遵义市', '桐梓县', NULL, 3, 288);
+INSERT INTO `sys_areas_info` VALUES (2006, '湖南省', '湘潭市', '岳塘区', NULL, 3, 337);
+INSERT INTO `sys_areas_info` VALUES (2007, '重庆市', '重庆市', '奉节县', NULL, 3, 363);
+INSERT INTO `sys_areas_info` VALUES (2008, '云南省', '昆明市', '西山区', NULL, 3, 369);
+INSERT INTO `sys_areas_info` VALUES (2009, '河北省', '沧州市', '肃宁县', NULL, 3, 286);
+INSERT INTO `sys_areas_info` VALUES (2010, '安徽省', '黄山市', '黄山区', NULL, 3, 279);
+INSERT INTO `sys_areas_info` VALUES (2011, '贵州省', '贵阳市', '花溪区', NULL, 3, 273);
+INSERT INTO `sys_areas_info` VALUES (2012, '福建省', '泉州市', '惠安县', NULL, 3, 161);
+INSERT INTO `sys_areas_info` VALUES (2013, '河南省', '洛阳市', '西工区', NULL, 3, 214);
+INSERT INTO `sys_areas_info` VALUES (2014, '湖北省', '宜昌市', '兴山县', NULL, 3, 423);
+INSERT INTO `sys_areas_info` VALUES (2015, '湖北省', '孝感市', '孝昌县', NULL, 3, 210);
+INSERT INTO `sys_areas_info` VALUES (2016, '福建省', '厦门市', '同安区', NULL, 3, 354);
+INSERT INTO `sys_areas_info` VALUES (2017, '河南省', '周口市', '川汇区', NULL, 3, 102);
+INSERT INTO `sys_areas_info` VALUES (2018, '内蒙古自治区', '呼和浩特市', '新城区', NULL, 3, 422);
+INSERT INTO `sys_areas_info` VALUES (2019, '山东省', '日照市', '东港区', NULL, 3, 115);
+INSERT INTO `sys_areas_info` VALUES (2020, '山东省', '淄博市', '博山区', NULL, 3, 203);
+INSERT INTO `sys_areas_info` VALUES (2021, '浙江省', '宁波市', '江东区', NULL, 3, 217);
+INSERT INTO `sys_areas_info` VALUES (2022, '陕西省', '咸阳市', '秦都区', NULL, 3, 180);
+INSERT INTO `sys_areas_info` VALUES (2023, '山东省', '德州市', '德城区', NULL, 3, 133);
+INSERT INTO `sys_areas_info` VALUES (2024, '河北省', '唐山市', '迁安市', NULL, 3, 277);
+INSERT INTO `sys_areas_info` VALUES (2025, '河北省', '邢台市', '南和县', NULL, 3, 151);
+INSERT INTO `sys_areas_info` VALUES (2026, '湖南省', '邵阳市', '洞口县', NULL, 3, 274);
+INSERT INTO `sys_areas_info` VALUES (2027, '山西省', '吕梁市', '文水县', NULL, 3, 227);
+INSERT INTO `sys_areas_info` VALUES (2028, '新疆维吾尔族自治区', '昌吉回族自治州', '奇台县', NULL, 3, 293);
+INSERT INTO `sys_areas_info` VALUES (2029, '河北省', '张家口市', '万全县', NULL, 3, 162);
+INSERT INTO `sys_areas_info` VALUES (2030, '广西壮族自治区', '百色市', '凌云县', NULL, 3, 392);
+INSERT INTO `sys_areas_info` VALUES (2031, '内蒙古自治区', '赤峰市', '巴林左旗', NULL, 3, 314);
+INSERT INTO `sys_areas_info` VALUES (2032, '河南省', '开封市', '兰考县', NULL, 3, 111);
+INSERT INTO `sys_areas_info` VALUES (2033, '新疆维吾尔族自治区', '和田地区', '和田市', NULL, 3, 292);
+INSERT INTO `sys_areas_info` VALUES (2034, '山西省', '吕梁市', '石楼县', NULL, 3, 227);
+INSERT INTO `sys_areas_info` VALUES (2035, '山东省', '泰安市', '泰山区', NULL, 3, 192);
+INSERT INTO `sys_areas_info` VALUES (2036, '山东省', '临沂市', '沂南县', NULL, 3, 312);
+INSERT INTO `sys_areas_info` VALUES (2037, '内蒙古自治区', '赤峰市', '其他', NULL, 3, 314);
+INSERT INTO `sys_areas_info` VALUES (2038, '河北省', '石家庄市', '平山县', NULL, 3, 264);
+INSERT INTO `sys_areas_info` VALUES (2039, '河南省', '驻马店市', '新蔡县', NULL, 3, 282);
+INSERT INTO `sys_areas_info` VALUES (2040, '江苏省', '徐州市', '泉山区', NULL, 3, 130);
+INSERT INTO `sys_areas_info` VALUES (2041, '甘肃省', '酒泉市', '敦煌市', NULL, 3, 409);
+INSERT INTO `sys_areas_info` VALUES (2042, '湖南省', '郴州市', '临武县', NULL, 3, 370);
+INSERT INTO `sys_areas_info` VALUES (2043, '江苏省', '徐州市', '铜山县', NULL, 3, 130);
+INSERT INTO `sys_areas_info` VALUES (2044, '湖北省', '襄樊市', '宜城市', NULL, 3, 412);
+INSERT INTO `sys_areas_info` VALUES (2045, '湖南省', '湘西土家族苗族自治州', '永顺县', NULL, 3, 211);
+INSERT INTO `sys_areas_info` VALUES (2046, '广西壮族自治区', '百色市', '右江区', NULL, 3, 392);
+INSERT INTO `sys_areas_info` VALUES (2047, '云南省', '楚雄彝族自治州', '楚雄市', NULL, 3, 231);
+INSERT INTO `sys_areas_info` VALUES (2048, '河南省', '许昌市', '长葛市', NULL, 3, 345);
+INSERT INTO `sys_areas_info` VALUES (2049, '河南省', '周口市', '商水县', NULL, 3, 102);
+INSERT INTO `sys_areas_info` VALUES (2050, '黑龙江省', '鸡西市', '鸡东县', NULL, 3, 128);
+INSERT INTO `sys_areas_info` VALUES (2051, '广东省', '湛江市', '吴川市', NULL, 3, 171);
+INSERT INTO `sys_areas_info` VALUES (2052, '安徽省', '合肥市', '瑶海区', NULL, 3, 299);
+INSERT INTO `sys_areas_info` VALUES (2053, '云南省', '文山壮族苗族自治州', '砚山县', NULL, 3, 426);
+INSERT INTO `sys_areas_info` VALUES (2054, '山西省', '阳泉市', '平定县', NULL, 3, 137);
+INSERT INTO `sys_areas_info` VALUES (2055, '河北省', '石家庄市', '新华区', NULL, 3, 264);
+INSERT INTO `sys_areas_info` VALUES (2056, '河北省', '沧州市', '青县', NULL, 3, 286);
+INSERT INTO `sys_areas_info` VALUES (2057, '陕西省', '西安市', '莲湖区', NULL, 3, 334);
+INSERT INTO `sys_areas_info` VALUES (2058, '河北省', '石家庄市', '新乐市', NULL, 3, 264);
+INSERT INTO `sys_areas_info` VALUES (2059, '辽宁省', '大连市', '甘井子区', NULL, 3, 262);
+INSERT INTO `sys_areas_info` VALUES (2060, '浙江省', '温州市', '鹿城区', NULL, 3, 315);
+INSERT INTO `sys_areas_info` VALUES (2061, '新疆维吾尔族自治区', '伊犁哈萨克自治州', '奎屯市', NULL, 3, 120);
+INSERT INTO `sys_areas_info` VALUES (2062, '江西省', '赣州市', '章贡区', NULL, 3, 336);
+INSERT INTO `sys_areas_info` VALUES (2063, '吉林省', '长春市', '宽城区', NULL, 3, 112);
+INSERT INTO `sys_areas_info` VALUES (2064, '上海市', '上海市', '虹口区', NULL, 3, 287);
+INSERT INTO `sys_areas_info` VALUES (2065, '辽宁省', '葫芦岛市', '绥中县', NULL, 3, 213);
+INSERT INTO `sys_areas_info` VALUES (2066, '黑龙江省', '大庆市', '让胡路区', NULL, 3, 415);
+INSERT INTO `sys_areas_info` VALUES (2067, '河北省', '保定市', '满城县', NULL, 3, 209);
+INSERT INTO `sys_areas_info` VALUES (2068, '福建省', '宁德市', '其他', NULL, 3, 202);
+INSERT INTO `sys_areas_info` VALUES (2069, '山西省', '长治市', '长治县', NULL, 3, 394);
+INSERT INTO `sys_areas_info` VALUES (2070, '福建省', '南平市', '顺昌县', NULL, 3, 119);
+INSERT INTO `sys_areas_info` VALUES (2071, '河南省', '驻马店市', '驿城区', NULL, 3, 282);
+INSERT INTO `sys_areas_info` VALUES (2072, '海南省', '五指山市', '其他', NULL, 3, 164);
+INSERT INTO `sys_areas_info` VALUES (2073, '宁夏回族自治区', '银川市', '兴庆区', NULL, 3, 247);
+INSERT INTO `sys_areas_info` VALUES (2074, '河北省', '邢台市', '隆尧县', NULL, 3, 151);
+INSERT INTO `sys_areas_info` VALUES (2075, '山东省', '东营市', '利津县', NULL, 3, 140);
+INSERT INTO `sys_areas_info` VALUES (2076, '湖南省', '湘潭市', '雨湖区', NULL, 3, 337);
+INSERT INTO `sys_areas_info` VALUES (2077, '湖北省', '武汉市', '汉阳区', NULL, 3, 113);
+INSERT INTO `sys_areas_info` VALUES (2078, '安徽省', '安庆市', '枞阳县', NULL, 3, 246);
+INSERT INTO `sys_areas_info` VALUES (2079, '四川省', '泸州市', '纳溪区', NULL, 3, 110);
+INSERT INTO `sys_areas_info` VALUES (2080, '安徽省', '合肥市', '包河区', NULL, 3, 299);
+INSERT INTO `sys_areas_info` VALUES (2081, '江西省', '上饶市', '万年县', NULL, 3, 234);
+INSERT INTO `sys_areas_info` VALUES (2082, '广西壮族自治区', '玉林市', '容县', NULL, 3, 338);
+INSERT INTO `sys_areas_info` VALUES (2083, '上海市', '上海市', '卢湾区', NULL, 3, 287);
+INSERT INTO `sys_areas_info` VALUES (2084, '甘肃省', '白银市', '白银区', NULL, 3, 157);
+INSERT INTO `sys_areas_info` VALUES (2085, '贵州省', '铜仁地区', '德江县', NULL, 3, 272);
+INSERT INTO `sys_areas_info` VALUES (2086, '黑龙江省', '鹤岗市', '工农区', NULL, 3, 188);
+INSERT INTO `sys_areas_info` VALUES (2087, '新疆维吾尔族自治区', '喀什地区', '喀什市', NULL, 3, 296);
+INSERT INTO `sys_areas_info` VALUES (2088, '江苏省', '镇江市', '润州区', NULL, 3, 283);
+INSERT INTO `sys_areas_info` VALUES (2089, '湖北省', '恩施市', '宣恩县', NULL, 3, 340);
+INSERT INTO `sys_areas_info` VALUES (2090, '江西省', '宜春市', '丰城市', NULL, 3, 142);
+INSERT INTO `sys_areas_info` VALUES (2091, '四川省', '成都市', '崇州市', NULL, 3, 106);
+INSERT INTO `sys_areas_info` VALUES (2092, '安徽省', '滁州市', '全椒县', NULL, 3, 380);
+INSERT INTO `sys_areas_info` VALUES (2093, '湖北省', '十堰市', '丹江口市', NULL, 3, 185);
+INSERT INTO `sys_areas_info` VALUES (2094, '甘肃省', '兰州市', '安宁区', NULL, 3, 228);
+INSERT INTO `sys_areas_info` VALUES (2095, '吉林省', '长春市', '二道区', NULL, 3, 112);
+INSERT INTO `sys_areas_info` VALUES (2096, '江苏省', '淮安市', '金湖县', NULL, 3, 360);
+INSERT INTO `sys_areas_info` VALUES (2097, '广东省', '河源市', '源城区', NULL, 3, 374);
+INSERT INTO `sys_areas_info` VALUES (2098, '江西省', '九江市', '瑞昌', NULL, 3, 104);
+INSERT INTO `sys_areas_info` VALUES (2099, '湖北省', '黄石市', '下陆区', NULL, 3, 222);
+INSERT INTO `sys_areas_info` VALUES (2100, '山西省', '临汾市', '洪洞县', NULL, 3, 238);
+INSERT INTO `sys_areas_info` VALUES (2101, '河北省', '沧州市', '东光县', NULL, 3, 286);
+INSERT INTO `sys_areas_info` VALUES (2102, '福建省', '龙岩市', '武平县', NULL, 3, 267);
+INSERT INTO `sys_areas_info` VALUES (2103, '山西省', '吕梁市', '孝义市', NULL, 3, 227);
+INSERT INTO `sys_areas_info` VALUES (2104, '四川省', '成都市', '武侯区', NULL, 3, 106);
+INSERT INTO `sys_areas_info` VALUES (2105, '福建省', '龙岩市', '上杭县', NULL, 3, 267);
+INSERT INTO `sys_areas_info` VALUES (2106, '广东省', '惠州市', '惠阳区', NULL, 3, 250);
+INSERT INTO `sys_areas_info` VALUES (2107, '湖南省', '衡阳市', '耒阳市', NULL, 3, 116);
+INSERT INTO `sys_areas_info` VALUES (2108, '云南省', '昆明市', '呈贡县', NULL, 3, 369);
+INSERT INTO `sys_areas_info` VALUES (2109, '山东省', '临沂市', '莒南县', NULL, 3, 312);
+INSERT INTO `sys_areas_info` VALUES (2110, '内蒙古自治区', '锡林郭勒盟', '锡林浩特市', NULL, 3, 330);
+INSERT INTO `sys_areas_info` VALUES (2111, '湖北省', '咸宁市', '崇阳县', NULL, 3, 271);
+INSERT INTO `sys_areas_info` VALUES (2112, '江苏省', '镇江市', '扬中市', NULL, 3, 283);
+INSERT INTO `sys_areas_info` VALUES (2113, '福建省', '泉州市', '德化县', NULL, 3, 161);
+INSERT INTO `sys_areas_info` VALUES (2114, '上海市', '上海市', '普陀区', NULL, 3, 287);
+INSERT INTO `sys_areas_info` VALUES (2115, '河南省', '濮阳市', '清丰县', NULL, 3, 319);
+INSERT INTO `sys_areas_info` VALUES (2116, '内蒙古自治区', '兴安盟', '乌兰浩特市', NULL, 3, 248);
+INSERT INTO `sys_areas_info` VALUES (2117, '陕西省', '西安市', '新城区', NULL, 3, 334);
+INSERT INTO `sys_areas_info` VALUES (2118, '河南省', '开封市', '尉氏县', NULL, 3, 111);
+INSERT INTO `sys_areas_info` VALUES (2119, '云南省', '大理白族自治州', '洱源县', NULL, 3, 191);
+INSERT INTO `sys_areas_info` VALUES (2120, '山东省', '菏泽市', '成武县', NULL, 3, 216);
+INSERT INTO `sys_areas_info` VALUES (2121, '浙江省', '杭州市', '桐庐县', NULL, 3, 263);
+INSERT INTO `sys_areas_info` VALUES (2122, '江西省', '上饶市', '鄱阳县', NULL, 3, 234);
+INSERT INTO `sys_areas_info` VALUES (2123, '河南省', '平顶山市', '叶县', NULL, 3, 117);
+INSERT INTO `sys_areas_info` VALUES (2124, '江西省', '吉安市', '峡江县', NULL, 3, 332);
+INSERT INTO `sys_areas_info` VALUES (2125, '辽宁省', '本溪市', '明山区', NULL, 3, 141);
+INSERT INTO `sys_areas_info` VALUES (2126, '湖南省', '郴州市', '宜章县', NULL, 3, 370);
+INSERT INTO `sys_areas_info` VALUES (2127, '河北省', '沧州市', '献县', NULL, 3, 286);
+INSERT INTO `sys_areas_info` VALUES (2128, '广东省', '韶关市', '翁源县', NULL, 3, 149);
+INSERT INTO `sys_areas_info` VALUES (2129, '湖南省', '长沙市', '浏阳市', NULL, 3, 201);
+INSERT INTO `sys_areas_info` VALUES (2130, '广东省', '韶关市', '南雄市', NULL, 3, 149);
+INSERT INTO `sys_areas_info` VALUES (2131, '山西省', '大同市', '大同县', NULL, 3, 108);
+INSERT INTO `sys_areas_info` VALUES (2132, '贵州省', '毕节地区', '金沙县', NULL, 3, 318);
+INSERT INTO `sys_areas_info` VALUES (2133, '安徽省', '安庆市', '望江县', NULL, 3, 246);
+INSERT INTO `sys_areas_info` VALUES (2134, '吉林省', '延边朝鲜族自治州', '珲春市', NULL, 3, 165);
+INSERT INTO `sys_areas_info` VALUES (2135, '贵州省', '贵阳市', '开阳县', NULL, 3, 273);
+INSERT INTO `sys_areas_info` VALUES (2136, '云南省', '保山市', '昌宁县', NULL, 3, 381);
+INSERT INTO `sys_areas_info` VALUES (2137, '山东省', '菏泽市', '曹县', NULL, 3, 216);
+INSERT INTO `sys_areas_info` VALUES (2138, '新疆维吾尔族自治区', '巴音郭楞蒙古自治州', '库尔勒市', NULL, 3, 310);
+INSERT INTO `sys_areas_info` VALUES (2139, '江西省', '上饶市', '铅山县', NULL, 3, 234);
+INSERT INTO `sys_areas_info` VALUES (2140, '江西省', '景德镇市', '浮梁县', NULL, 3, 244);
+INSERT INTO `sys_areas_info` VALUES (2141, '湖北省', '襄樊市', '谷城县', NULL, 3, 412);
+INSERT INTO `sys_areas_info` VALUES (2142, '江苏省', '苏州市', '昆山市', NULL, 3, 281);
+INSERT INTO `sys_areas_info` VALUES (2143, '山西省', '忻州市', '忻府区', NULL, 3, 382);
+INSERT INTO `sys_areas_info` VALUES (2144, '河北省', '沧州市', '河间市', NULL, 3, 286);
+INSERT INTO `sys_areas_info` VALUES (2145, '江西省', '鹰潭市', '贵溪市', NULL, 3, 403);
+INSERT INTO `sys_areas_info` VALUES (2146, '河南省', '新乡市', '红旗区', NULL, 3, 418);
+INSERT INTO `sys_areas_info` VALUES (2147, '山东省', '菏泽市', '单县', NULL, 3, 216);
+INSERT INTO `sys_areas_info` VALUES (2148, '云南省', '玉溪市', '澄江县', NULL, 3, 387);
+INSERT INTO `sys_areas_info` VALUES (2149, '辽宁省', '大连市', '中山区', NULL, 3, 262);
+INSERT INTO `sys_areas_info` VALUES (2150, '新疆维吾尔族自治区', '克拉玛依市', '克拉玛依区', NULL, 3, 183);
+INSERT INTO `sys_areas_info` VALUES (2151, '甘肃省', '嘉峪关市', '其他', NULL, 3, 309);
+INSERT INTO `sys_areas_info` VALUES (2152, '山东省', '德州市', '临邑县', NULL, 3, 133);
+INSERT INTO `sys_areas_info` VALUES (2153, '河北省', '邢台市', '桥西区', NULL, 3, 151);
+INSERT INTO `sys_areas_info` VALUES (2154, '江西省', '赣州市', '大余县', NULL, 3, 336);
+INSERT INTO `sys_areas_info` VALUES (2155, '山西省', '太原市', '万柏林区', NULL, 3, 154);
+INSERT INTO `sys_areas_info` VALUES (2156, '云南省', '玉溪市', '华宁县', NULL, 3, 387);
+INSERT INTO `sys_areas_info` VALUES (2157, '广东省', '清远市', '连州市', NULL, 3, 196);
+INSERT INTO `sys_areas_info` VALUES (2158, '海南省', '三亚市', '河西区', NULL, 3, 275);
+INSERT INTO `sys_areas_info` VALUES (2159, '宁夏回族自治区', '石嘴山市', '惠农区', NULL, 3, 189);
+INSERT INTO `sys_areas_info` VALUES (2160, '云南省', '大理白族自治州', '祥云县', NULL, 3, 191);
+INSERT INTO `sys_areas_info` VALUES (2161, '内蒙古自治区', '乌海市', '海勃湾区', NULL, 3, 182);
+INSERT INTO `sys_areas_info` VALUES (2162, '四川省', '南充市', '阆中市', NULL, 3, 350);
+INSERT INTO `sys_areas_info` VALUES (2163, '湖南省', '郴州市', '桂东县', NULL, 3, 370);
+INSERT INTO `sys_areas_info` VALUES (2164, '四川省', '成都市', '青羊区', NULL, 3, 106);
+INSERT INTO `sys_areas_info` VALUES (2165, '广西壮族自治区', '南宁市', '其他', NULL, 3, 242);
+INSERT INTO `sys_areas_info` VALUES (2166, '四川省', '凉山彝族自治州', '西昌市', NULL, 3, 173);
+INSERT INTO `sys_areas_info` VALUES (2167, '新疆维吾尔族自治区', '喀什地区', '莎车县', NULL, 3, 296);
+INSERT INTO `sys_areas_info` VALUES (2168, '辽宁省', '锦州市', '凌河区', NULL, 3, 243);
+INSERT INTO `sys_areas_info` VALUES (2169, '广西壮族自治区', '南宁市', '西乡塘区', NULL, 3, 242);
+INSERT INTO `sys_areas_info` VALUES (2170, '江西省', '吉安市', '遂川县', NULL, 3, 332);
+INSERT INTO `sys_areas_info` VALUES (2171, '重庆市', '重庆市', '万盛区', NULL, 3, 363);
+INSERT INTO `sys_areas_info` VALUES (2172, '河北省', '承德市', '平泉县', NULL, 3, 127);
+INSERT INTO `sys_areas_info` VALUES (2173, '云南省', '红河哈尼族彝族自治州', '建水县', NULL, 3, 399);
+INSERT INTO `sys_areas_info` VALUES (2174, '安徽省', '宿州市', '砀山县', NULL, 3, 181);
+INSERT INTO `sys_areas_info` VALUES (2175, '山东省', '临沂市', '沂水县', NULL, 3, 312);
+INSERT INTO `sys_areas_info` VALUES (2176, '四川省', '眉山市', '仁寿县', NULL, 3, 342);
+INSERT INTO `sys_areas_info` VALUES (2177, '湖南省', '株洲市', '醴陵市', NULL, 3, 302);
+INSERT INTO `sys_areas_info` VALUES (2178, '辽宁省', '沈阳市', '新民市', NULL, 3, 170);
+INSERT INTO `sys_areas_info` VALUES (2179, '湖南省', '益阳市', '赫山区', NULL, 3, 145);
+INSERT INTO `sys_areas_info` VALUES (2180, '内蒙古自治区', '兴安盟', '突泉县', NULL, 3, 248);
+INSERT INTO `sys_areas_info` VALUES (2181, '山西省', '忻州市', '原平市', NULL, 3, 382);
+INSERT INTO `sys_areas_info` VALUES (2182, '江苏省', '南京市', '鼓楼区', NULL, 3, 313);
+INSERT INTO `sys_areas_info` VALUES (2183, '山西省', '大同市', '矿区', NULL, 3, 108);
+INSERT INTO `sys_areas_info` VALUES (2184, '山东省', '济南市', '天桥区', NULL, 3, 306);
+INSERT INTO `sys_areas_info` VALUES (2185, '江西省', '南昌市', '西湖区', NULL, 3, 200);
+INSERT INTO `sys_areas_info` VALUES (2186, '河南省', '开封市', '开封县', NULL, 3, 111);
+INSERT INTO `sys_areas_info` VALUES (2187, '贵州省', '黔东南苗族侗族自治州', '天柱县', NULL, 3, 325);
+INSERT INTO `sys_areas_info` VALUES (2188, '山西省', '晋中市', '平遥县', NULL, 3, 139);
+INSERT INTO `sys_areas_info` VALUES (2189, '河北省', '承德市', '宽城满族自治县', NULL, 3, 127);
+INSERT INTO `sys_areas_info` VALUES (2190, '辽宁省', '沈阳市', '于洪区', NULL, 3, 170);
+INSERT INTO `sys_areas_info` VALUES (2191, '山东省', '潍坊市', '高密市', NULL, 3, 121);
+INSERT INTO `sys_areas_info` VALUES (2192, '陕西省', '榆林市', '子洲县', NULL, 3, 421);
+INSERT INTO `sys_areas_info` VALUES (2193, '河南省', '郑州市', '登封市', NULL, 3, 308);
+INSERT INTO `sys_areas_info` VALUES (2194, '江苏省', '盐城市', '射阳县', NULL, 3, 329);
+INSERT INTO `sys_areas_info` VALUES (2195, '黑龙江省', '伊春市', '铁力市', NULL, 3, 125);
+INSERT INTO `sys_areas_info` VALUES (2196, '湖北省', '恩施市', '来凤县', NULL, 3, 340);
+INSERT INTO `sys_areas_info` VALUES (2197, '内蒙古自治区', '通辽市', '霍林郭勒市', NULL, 3, 326);
+INSERT INTO `sys_areas_info` VALUES (2198, '福建省', '漳州市', '华安县', NULL, 3, 150);
+INSERT INTO `sys_areas_info` VALUES (2199, '安徽省', '池州市', '青阳县', NULL, 3, 391);
+INSERT INTO `sys_areas_info` VALUES (2200, '福建省', '三明市', '其他', NULL, 3, 411);
+INSERT INTO `sys_areas_info` VALUES (2201, '黑龙江省', '黑河市', '北安市', NULL, 3, 131);
+INSERT INTO `sys_areas_info` VALUES (2202, '辽宁省', '锦州市', '北宁市', NULL, 3, 243);
+INSERT INTO `sys_areas_info` VALUES (2203, '安徽省', '亳州市', '涡阳县', NULL, 3, 249);
+INSERT INTO `sys_areas_info` VALUES (2204, '山西省', '忻州市', '河曲县', NULL, 3, 382);
+INSERT INTO `sys_areas_info` VALUES (2205, '宁夏回族自治区', '吴忠市', '同心县', NULL, 3, 383);
+INSERT INTO `sys_areas_info` VALUES (2206, '吉林省', '长春市', '榆树市', NULL, 3, 112);
+INSERT INTO `sys_areas_info` VALUES (2207, '贵州省', '黔西南布依族苗族自治州', '晴隆县', NULL, 3, 297);
+INSERT INTO `sys_areas_info` VALUES (2208, '浙江省', '绍兴市', '诸暨市', NULL, 3, 307);
+INSERT INTO `sys_areas_info` VALUES (2209, '浙江省', '宁波市', '余姚市', NULL, 3, 217);
+INSERT INTO `sys_areas_info` VALUES (2210, '辽宁省', '沈阳市', '苏家屯区', NULL, 3, 170);
+INSERT INTO `sys_areas_info` VALUES (2211, '福建省', '福州市', '长乐市', NULL, 3, 177);
+INSERT INTO `sys_areas_info` VALUES (2212, '湖北省', '武汉市', '黄陂区', NULL, 3, 113);
+INSERT INTO `sys_areas_info` VALUES (2213, '广西壮族自治区', '南宁市', '上林县', NULL, 3, 242);
+INSERT INTO `sys_areas_info` VALUES (2214, '山西省', '晋中市', '榆次区', NULL, 3, 139);
+INSERT INTO `sys_areas_info` VALUES (2215, '甘肃省', '酒泉市', '金塔县', NULL, 3, 409);
+INSERT INTO `sys_areas_info` VALUES (2216, '宁夏回族自治区', '中卫市', '海原县', NULL, 3, 278);
+INSERT INTO `sys_areas_info` VALUES (2217, '广东省', '广州市', '增城市', NULL, 3, 129);
+INSERT INTO `sys_areas_info` VALUES (2218, '重庆市', '重庆市', '永川区', NULL, 3, 363);
+INSERT INTO `sys_areas_info` VALUES (2219, '广东省', '肇庆市', '高要市', NULL, 3, 144);
+INSERT INTO `sys_areas_info` VALUES (2220, '江西省', '南昌市', '东湖区', NULL, 3, 200);
+INSERT INTO `sys_areas_info` VALUES (2221, '河北省', '石家庄市', '裕华区', NULL, 3, 264);
+INSERT INTO `sys_areas_info` VALUES (2222, '新疆维吾尔族自治区', '阿克苏地区', '阿克苏市', NULL, 3, 424);
+INSERT INTO `sys_areas_info` VALUES (2223, '广东省', '茂名市', '化州市', NULL, 3, 221);
+INSERT INTO `sys_areas_info` VALUES (2224, '新疆维吾尔族自治区', '昌吉回族自治州', '昌吉市', NULL, 3, 293);
+INSERT INTO `sys_areas_info` VALUES (2225, '河南省', '商丘市', '永城市', NULL, 3, 254);
+INSERT INTO `sys_areas_info` VALUES (2226, '河南省', '驻马店市', '西平县', NULL, 3, 282);
+INSERT INTO `sys_areas_info` VALUES (2227, '浙江省', '衢州市', '柯城区', NULL, 3, 257);
+INSERT INTO `sys_areas_info` VALUES (2228, '福建省', '泉州市', '其他', NULL, 3, 161);
+INSERT INTO `sys_areas_info` VALUES (2229, '黑龙江省', '齐齐哈尔市', '龙沙区', NULL, 3, 195);
+INSERT INTO `sys_areas_info` VALUES (2230, '四川省', '攀枝花市', '西区', NULL, 3, 428);
+INSERT INTO `sys_areas_info` VALUES (2231, '广西壮族自治区', '玉林市', '北流市', NULL, 3, 338);
+INSERT INTO `sys_areas_info` VALUES (2232, '贵州省', '贵阳市', '清镇市', NULL, 3, 273);
+INSERT INTO `sys_areas_info` VALUES (2233, '贵州省', '铜仁地区', '沿河土家族自治县', NULL, 3, 272);
+INSERT INTO `sys_areas_info` VALUES (2234, '四川省', '泸州市', '泸县', NULL, 3, 110);
+INSERT INTO `sys_areas_info` VALUES (2235, '福建省', '南平市', '武夷山市', NULL, 3, 119);
+INSERT INTO `sys_areas_info` VALUES (2236, '福建省', '厦门市', '思明区', NULL, 3, 354);
+INSERT INTO `sys_areas_info` VALUES (2237, '内蒙古自治区', '通辽市', '开鲁县', NULL, 3, 326);
+INSERT INTO `sys_areas_info` VALUES (2238, '江西省', '南昌市', '青山湖区', NULL, 3, 200);
+INSERT INTO `sys_areas_info` VALUES (2239, '上海市', '上海市', '崇明县', NULL, 3, 287);
+INSERT INTO `sys_areas_info` VALUES (2240, '四川省', '遂宁市', '大英县', NULL, 3, 268);
+INSERT INTO `sys_areas_info` VALUES (2241, '湖南省', '株洲市', '茶陵县', NULL, 3, 302);
+INSERT INTO `sys_areas_info` VALUES (2242, '河北省', '邯郸市', '武安市', NULL, 3, 348);
+INSERT INTO `sys_areas_info` VALUES (2243, '浙江省', '杭州市', '萧山区', NULL, 3, 263);
+INSERT INTO `sys_areas_info` VALUES (2244, '广东省', '清远市', '阳山县', NULL, 3, 196);
+INSERT INTO `sys_areas_info` VALUES (2245, '四川省', '南充市', '仪陇县', NULL, 3, 350);
+INSERT INTO `sys_areas_info` VALUES (2246, '山东省', '青岛市', '李沧区', NULL, 3, 284);
+INSERT INTO `sys_areas_info` VALUES (2247, '河北省', '邢台市', '内丘县', NULL, 3, 151);
+INSERT INTO `sys_areas_info` VALUES (2248, '四川省', '南充市', '西充县', NULL, 3, 350);
+INSERT INTO `sys_areas_info` VALUES (2249, '浙江省', '温州市', '文成县', NULL, 3, 315);
+INSERT INTO `sys_areas_info` VALUES (2250, '陕西省', '咸阳市', '泾阳县', NULL, 3, 180);
+INSERT INTO `sys_areas_info` VALUES (2251, '河南省', '商丘市', '虞城县', NULL, 3, 254);
+INSERT INTO `sys_areas_info` VALUES (2252, '新疆维吾尔族自治区', '乌鲁木齐市', '天山区', NULL, 3, 207);
+INSERT INTO `sys_areas_info` VALUES (2253, '广东省', '潮州市', '湘桥区', NULL, 3, 291);
+INSERT INTO `sys_areas_info` VALUES (2254, '甘肃省', '张掖市', '民乐县', NULL, 3, 362);
+INSERT INTO `sys_areas_info` VALUES (2255, '河北省', '邯郸市', '馆陶县', NULL, 3, 348);
+INSERT INTO `sys_areas_info` VALUES (2256, '湖南省', '郴州市', '资兴市', NULL, 3, 370);
+INSERT INTO `sys_areas_info` VALUES (2257, '云南省', '保山市', '龙陵县', NULL, 3, 381);
+INSERT INTO `sys_areas_info` VALUES (2258, '福建省', '厦门市', '湖里区', NULL, 3, 354);
+INSERT INTO `sys_areas_info` VALUES (2259, '江西省', '上饶市', '上饶县', NULL, 3, 234);
+INSERT INTO `sys_areas_info` VALUES (2260, '广东省', '汕头市', '金平区', NULL, 3, 215);
+INSERT INTO `sys_areas_info` VALUES (2261, '河南省', '平顶山市', '郏县', NULL, 3, 117);
+INSERT INTO `sys_areas_info` VALUES (2262, '福建省', '漳州市', '漳浦县', NULL, 3, 150);
+INSERT INTO `sys_areas_info` VALUES (2263, '江苏省', '南京市', '溧水县', NULL, 3, 313);
+INSERT INTO `sys_areas_info` VALUES (2264, '河南省', '安阳市', '殷都区', NULL, 3, 353);
+INSERT INTO `sys_areas_info` VALUES (2265, '江西省', '赣州市', '瑞金市', NULL, 3, 336);
+INSERT INTO `sys_areas_info` VALUES (2266, '福建省', '泉州市', '石狮市', NULL, 3, 161);
+INSERT INTO `sys_areas_info` VALUES (2267, '广东省', '深圳市', '龙岗区', NULL, 3, 118);
+INSERT INTO `sys_areas_info` VALUES (2268, '浙江省', '温州市', '龙湾区', NULL, 3, 315);
+INSERT INTO `sys_areas_info` VALUES (2269, '安徽省', '宣城市', '旌德县', NULL, 3, 377);
+INSERT INTO `sys_areas_info` VALUES (2270, '广西壮族自治区', '玉林市', '博白县', NULL, 3, 338);
+INSERT INTO `sys_areas_info` VALUES (2271, '广东省', '佛山市', '高明区', NULL, 3, 378);
+INSERT INTO `sys_areas_info` VALUES (2272, '安徽省', '安庆市', '潜山县', NULL, 3, 246);
+INSERT INTO `sys_areas_info` VALUES (2273, '贵州省', '贵阳市', '白云区', NULL, 3, 273);
+INSERT INTO `sys_areas_info` VALUES (2274, '广东省', '茂名市', '信宜市', NULL, 3, 221);
+INSERT INTO `sys_areas_info` VALUES (2275, '广西壮族自治区', '河池市', '金城江区', NULL, 3, 197);
+INSERT INTO `sys_areas_info` VALUES (2276, '吉林省', '长春市', '朝阳区', NULL, 3, 112);
+INSERT INTO `sys_areas_info` VALUES (2277, '湖南省', '衡阳市', '常宁市', NULL, 3, 116);
+INSERT INTO `sys_areas_info` VALUES (2278, '广东省', '茂名市', '高州市', NULL, 3, 221);
+INSERT INTO `sys_areas_info` VALUES (2279, '河北省', '衡水市', '阜城县', NULL, 3, 138);
+INSERT INTO `sys_areas_info` VALUES (2280, '江苏省', '淮安市', '清浦区', NULL, 3, 360);
+INSERT INTO `sys_areas_info` VALUES (2281, '河南省', '洛阳市', '孟津县', NULL, 3, 214);
+INSERT INTO `sys_areas_info` VALUES (2282, '河北省', '唐山市', '玉田县', NULL, 3, 277);
+INSERT INTO `sys_areas_info` VALUES (2283, '江西省', '九江市', '修水县', NULL, 3, 104);
+INSERT INTO `sys_areas_info` VALUES (2284, '贵州省', '黔东南苗族侗族自治州', '榕江县', NULL, 3, 325);
+INSERT INTO `sys_areas_info` VALUES (2285, '河南省', '驻马店市', '确山县', NULL, 3, 282);
+INSERT INTO `sys_areas_info` VALUES (2286, '四川省', '成都市', '青白江区', NULL, 3, 106);
+INSERT INTO `sys_areas_info` VALUES (2287, '北京市', '北京市', '石景山区', NULL, 3, 368);
+INSERT INTO `sys_areas_info` VALUES (2288, '湖南省', '长沙市', '雨花区', NULL, 3, 201);
+INSERT INTO `sys_areas_info` VALUES (2289, '江西省', '上饶市', '弋阳县', NULL, 3, 234);
+INSERT INTO `sys_areas_info` VALUES (2290, '江苏省', '南通市', '海安县', NULL, 3, 416);
+INSERT INTO `sys_areas_info` VALUES (2291, '贵州省', '黔南布依族苗族自治州', '龙里县', NULL, 3, 276);
+INSERT INTO `sys_areas_info` VALUES (2292, '安徽省', '合肥市', '滨湖新区', NULL, 3, 299);
+INSERT INTO `sys_areas_info` VALUES (2293, '新疆维吾尔族自治区', '巴音郭楞蒙古自治州', '焉耆回族自治县', NULL, 3, 310);
+INSERT INTO `sys_areas_info` VALUES (2294, '黑龙江省', '绥化市', '北林区', NULL, 3, 371);
+INSERT INTO `sys_areas_info` VALUES (2295, '河南省', '洛阳市', '洛宁县', NULL, 3, 214);
+INSERT INTO `sys_areas_info` VALUES (2296, '福建省', '泉州市', '永春县', NULL, 3, 161);
+INSERT INTO `sys_areas_info` VALUES (2297, '河南省', '三门峡市', '湖滨区', NULL, 3, 328);
+INSERT INTO `sys_areas_info` VALUES (2298, '宁夏回族自治区', '银川市', '贺兰县', NULL, 3, 247);
+INSERT INTO `sys_areas_info` VALUES (2299, '山东省', '济宁市', '邹城市', NULL, 3, 169);
+INSERT INTO `sys_areas_info` VALUES (2300, '四川省', '广元市', '青川县', NULL, 3, 298);
+INSERT INTO `sys_areas_info` VALUES (2301, '广东省', '广州市', '海珠区', NULL, 3, 129);
+INSERT INTO `sys_areas_info` VALUES (2302, '广东省', '云浮市', '', NULL, 2, 18);
+INSERT INTO `sys_areas_info` VALUES (2303, '广东省', '云浮市', '云城区', NULL, 3, 2302);
+INSERT INTO `sys_areas_info` VALUES (2304, '广东省', '云浮市', '云安区', NULL, 3, 2302);
+INSERT INTO `sys_areas_info` VALUES (2305, '广东省', '云浮市', '新兴县', NULL, 3, 2302);
+INSERT INTO `sys_areas_info` VALUES (2306, '广东省', '云浮市', '郁南县', NULL, 3, 2302);
+INSERT INTO `sys_areas_info` VALUES (2307, '广东省', '云浮市', '罗定市', NULL, 3, 2302);
+INSERT INTO `sys_areas_info` VALUES (2308, '广东省', '广州市', '白云区', NULL, 3, 129);
+INSERT INTO `sys_areas_info` VALUES (2309, '山西省', '大同市', '平城区', NULL, 3, 108);
+COMMIT;
+
+-- ----------------------------
+-- Table structure for sys_permission
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_permission`;
+CREATE TABLE `sys_permission` (
+  `permission_id` int NOT NULL AUTO_INCREMENT COMMENT '资源表主键id',
+  `permission_name` varchar(255) NOT NULL COMMENT '资源名称',
+  `parent_id` int NOT NULL COMMENT '资源父id',
+  `permission_code` varchar(255) NOT NULL COMMENT '资源code',
+  `permission_type` int NOT NULL COMMENT '资源类型(1 位菜单 2 为功能)',
+  `permission_url` varchar(255) DEFAULT NULL COMMENT '资源url',
+  `permission_state` int NOT NULL DEFAULT '1' COMMENT '资源状态 0 不可用 1是正常',
+  `permission_sort` int NOT NULL COMMENT '顺序',
+  `permission_icon_url` varchar(255) DEFAULT NULL COMMENT '图标icon Url',
+  `permission_depth` int DEFAULT NULL COMMENT '所有父id集合',
+  PRIMARY KEY (`permission_id`)
+) ENGINE=InnoDB AUTO_INCREMENT=147 DEFAULT CHARSET=utf8mb3 COMMENT='资源表';
+
+-- ----------------------------
+-- Records of sys_permission
+-- ----------------------------
+BEGIN;
+INSERT INTO `sys_permission` VALUES (1, '权限管理', 0, 'qxgl', 1, 'layout/basicMana', 1, 0, 'el-icon-c-scale-to-original', 1);
+INSERT INTO `sys_permission` VALUES (12, '用户管理', 1, 'yggl', 1, '/basicMana/userMana', 1, 0, 'el-icon-s-promotion', 2);
+INSERT INTO `sys_permission` VALUES (16, '菜单权限', 1, 'cdqx', 1, '/basicMana/menuRoleMana', 1, 0, 'el-icon-c-scale-to-original', 2);
+INSERT INTO `sys_permission` VALUES (17, '角色管理', 1, 'jsgl', 1, '/basicMana/userRoleMana', 1, 0, 'el-icon-c-scale-to-original', 2);
+INSERT INTO `sys_permission` VALUES (46, '按钮-用户管理新建', 12, 'userMana:add', 2, '/userMana/add', 1, 0, 'el-icon-s-opportunity', 3);
+INSERT INTO `sys_permission` VALUES (73, '按钮-菜单权限新建', 16, 'menuRoleMana:add', 2, 'menuRoleMana:add', 1, 0, 'el-icon-s-ticket', 3);
+INSERT INTO `sys_permission` VALUES (74, '按钮-角色管理新建', 17, 'userRoleMana:add', 2, 'userRoleMana:add', 1, 0, 'el-icon-s-management', 3);
+COMMIT;
+
+-- ----------------------------
+-- Table structure for sys_role
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_role`;
+CREATE TABLE `sys_role` (
+  `id` int NOT NULL AUTO_INCREMENT COMMENT '角色表主键id',
+  `role_description` varchar(255) NOT NULL COMMENT '角色描述',
+  `role_code` varchar(50) NOT NULL COMMENT '角色code',
+  `role_available` int NOT NULL DEFAULT '1' COMMENT '是否可用',
+  `create_time` datetime DEFAULT NULL,
+  `update_time` datetime DEFAULT NULL,
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=14 DEFAULT CHARSET=utf8mb3 COMMENT='角色表';
+
+-- ----------------------------
+-- Records of sys_role
+-- ----------------------------
+BEGIN;
+INSERT INTO `sys_role` VALUES (1, '超级管理员', 'admin', 1, '2022-07-15 15:10:33', '2022-07-15 15:10:33');
+COMMIT;
+
+-- ----------------------------
+-- Table structure for sys_role_permission
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_role_permission`;
+CREATE TABLE `sys_role_permission` (
+  `id` int NOT NULL AUTO_INCREMENT,
+  `role_id` int DEFAULT NULL COMMENT '角色表主键id',
+  `permission_id` int DEFAULT NULL COMMENT '资源表主键id',
+  `create_time` datetime DEFAULT NULL,
+  `update_time` datetime DEFAULT NULL,
+  PRIMARY KEY (`id`),
+  KEY `role_id` (`role_id`),
+  KEY `permission_id` (`permission_id`)
+) ENGINE=InnoDB AUTO_INCREMENT=3761 DEFAULT CHARSET=utf8mb3 COMMENT='角色资源关联表';
+
+-- ----------------------------
+-- Records of sys_role_permission
+-- ----------------------------
+BEGIN;
+INSERT INTO `sys_role_permission` VALUES (3644, 1, 1, NULL, NULL);
+INSERT INTO `sys_role_permission` VALUES (3645, 1, 12, NULL, NULL);
+INSERT INTO `sys_role_permission` VALUES (3646, 1, 46, NULL, NULL);
+INSERT INTO `sys_role_permission` VALUES (3647, 1, 16, NULL, NULL);
+INSERT INTO `sys_role_permission` VALUES (3648, 1, 73, NULL, NULL);
+INSERT INTO `sys_role_permission` VALUES (3649, 1, 17, NULL, NULL);
+INSERT INTO `sys_role_permission` VALUES (3650, 1, 74, NULL, NULL);
+COMMIT;
+
+-- ----------------------------
+-- Table structure for sys_user_info
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_user_info`;
+CREATE TABLE `sys_user_info` (
+  `id` int NOT NULL AUTO_INCREMENT,
+  `user_name` varchar(255) DEFAULT NULL,
+  `user_phone` char(11) DEFAULT NULL,
+  `user_password` varchar(255) DEFAULT NULL,
+  `state` int DEFAULT '1' COMMENT '0:禁用,1:可用',
+  `create_time` datetime DEFAULT NULL,
+  `update_time` datetime DEFAULT NULL,
+  PRIMARY KEY (`id`),
+  UNIQUE KEY `id_idx` (`id`) USING BTREE,
+  UNIQUE KEY `phone_idx` (`user_phone`) USING BTREE
+) ENGINE=InnoDB AUTO_INCREMENT=101 DEFAULT CHARSET=utf8mb3 COMMENT='后台用户表';
+
+-- ----------------------------
+-- Records of sys_user_info
+-- ----------------------------
+BEGIN;
+INSERT INTO `sys_user_info` VALUES (2, 'admin', '12345678901', '$2a$10$ZqOH07B2RsG4UpIJc7ZyluCd6xIGPM6E988jy/DDjL1MbRaiJi/bS', 1, '2022-07-11 17:46:03', NULL);
+COMMIT;
+
+-- ----------------------------
+-- Table structure for sys_user_role
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_user_role`;
+CREATE TABLE `sys_user_role` (
+  `user_id` int DEFAULT NULL COMMENT '用户id',
+  `role_id` int DEFAULT NULL COMMENT '角色表主键id',
+  `create_time` datetime DEFAULT NULL,
+  `update_time` datetime DEFAULT NULL
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COMMENT='用户角色表';
+
+-- ----------------------------
+-- Records of sys_user_role
+-- ----------------------------
+BEGIN;
+INSERT INTO `sys_user_role` VALUES (2, 1, NULL, NULL);
+COMMIT;
+
+-- ----------------------------
+-- Table structure for wind_company
+-- ----------------------------
+DROP TABLE IF EXISTS `wind_company`;
+CREATE TABLE `wind_company` (
+  `id` int NOT NULL AUTO_INCREMENT COMMENT '主键',
+  `company_code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '企业编号',
+  `company_name` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '企业名称',
+  `state` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '状态',
+  `province_id` int DEFAULT NULL COMMENT '省',
+  `province_name` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '省名字',
+  `city_id` int DEFAULT NULL COMMENT '市',
+  `city_name` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '市名字',
+  `described` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '企业描述',
+  `sort` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '排序',
+  `del_state` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '删除状态',
+  `create_by` int DEFAULT NULL COMMENT '创建人',
+  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+  `update_by` int DEFAULT NULL COMMENT '更新人',
+  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='企业信息表(项目公司)';
+
+-- ----------------------------
+-- Records of wind_company
+-- ----------------------------
+BEGIN;
+COMMIT;
+
+-- ----------------------------
+-- Table structure for wind_engine_batch
+-- ----------------------------
+DROP TABLE IF EXISTS `wind_engine_batch`;
+CREATE TABLE `wind_engine_batch` (
+  `id` int NOT NULL AUTO_INCREMENT COMMENT '主键',
+  `bath_code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '风机批次编号',
+  `bath_name` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '风机批次名称',
+  `field_coed` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '风场编号',
+  `field_state` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '批次状态',
+  `err_state` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '异常状态',
+  `err_info` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '异常信息',
+  `description` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '描述',
+  `create_by` int DEFAULT NULL COMMENT '创建人',
+  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+  `update_by` int DEFAULT NULL COMMENT '更新人',
+  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='风机批次信息表 批次etl风机信息表';
+
+-- ----------------------------
+-- Records of wind_engine_batch
+-- ----------------------------
+BEGIN;
+COMMIT;
+
+-- ----------------------------
+-- Table structure for wind_engine_group
+-- ----------------------------
+DROP TABLE IF EXISTS `wind_engine_group`;
+CREATE TABLE `wind_engine_group` (
+  `id` int NOT NULL AUTO_INCREMENT COMMENT '主键',
+  `field_code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '风场编号',
+  `engine_code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '风机编号',
+  `engine_name` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '风机名称',
+  `mill_type_code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '机型编号',
+  `rated_capacity` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '额定容量',
+  `elevation_height` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '海拔高度',
+  `hub_height` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '轮毂高度',
+  `state` tinyint(1) DEFAULT NULL COMMENT '状态',
+  `longitude` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '经度',
+  `latitude` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '维度',
+  `sightcing` tinyint(1) DEFAULT NULL COMMENT '是否标杆风机',
+  `del_state` tinyint(1) DEFAULT NULL COMMENT '删除状态',
+  `create_by` int DEFAULT NULL COMMENT '创建人',
+  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+  `update_by` int DEFAULT NULL COMMENT '更新人',
+  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='风机机组信息表 ';
+
+-- ----------------------------
+-- Records of wind_engine_group
+-- ----------------------------
+BEGIN;
+COMMIT;
+
+-- ----------------------------
+-- Table structure for wind_engine_mill
+-- ----------------------------
+DROP TABLE IF EXISTS `wind_engine_mill`;
+CREATE TABLE `wind_engine_mill` (
+  `mill_type_code` varchar(32) COLLATE utf8mb4_general_ci NOT NULL COMMENT '编号',
+  `machine_type_code` varchar(32) COLLATE utf8mb4_general_ci NOT NULL COMMENT '机型型号',
+  `manufacturer_name` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '厂商名称',
+  `manufacturer_code` varchar(32) COLLATE utf8mb4_general_ci NOT NULL COMMENT '厂商编号',
+  `brand` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '品牌名称',
+  `state` tinyint(1) DEFAULT NULL COMMENT '状态',
+  `tower_height` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '塔筒高度',
+  `vane_long` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '叶片长度',
+  `combinationc` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '组合字段',
+  `del_state` tinyint(1) DEFAULT NULL COMMENT '删除状态',
+  `create_by` int DEFAULT NULL COMMENT '创建人',
+  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+  `update_by` int DEFAULT NULL COMMENT '更新人',
+  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+  PRIMARY KEY (`machine_type_code`,`manufacturer_code`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='风机机型信息 ';
+
+-- ----------------------------
+-- Records of wind_engine_mill
+-- ----------------------------
+BEGIN;
+COMMIT;
+
+-- ----------------------------
+-- Table structure for wind_field
+-- ----------------------------
+DROP TABLE IF EXISTS `wind_field`;
+CREATE TABLE `wind_field` (
+  `id` int NOT NULL AUTO_INCREMENT COMMENT '主键',
+  `company_code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '企业编号 11',
+  `field_code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '风场编号',
+  `field_name` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '风场名称',
+  `density` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '空气密度-合同功率曲线',
+  `state` tinyint(1) DEFAULT NULL COMMENT '启用状态',
+  `engine_number` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '风机数量',
+  `rated_capacity_number` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '总额定容量-sum机组',
+  `province_id` int DEFAULT NULL COMMENT '省编号',
+  `province_name` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '省名字',
+  `city_id` int DEFAULT NULL COMMENT '市编号',
+  `city_name` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '市名字',
+  `longitude` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '经度',
+  `latitude` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '纬度',
+  `elevation_height` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '海拔高度',
+  `del_state` tinyint(1) DEFAULT NULL COMMENT '删除状态',
+  `create_by` int DEFAULT NULL COMMENT '创建人',
+  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+  `update_by` int DEFAULT NULL COMMENT '更新人',
+  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='风场信息表 ';
+
+-- ----------------------------
+-- Records of wind_field
+-- ----------------------------
+BEGIN;
+COMMIT;
+
+-- ----------------------------
+-- Table structure for wind_field_resouce
+-- ----------------------------
+DROP TABLE IF EXISTS `wind_field_resouce`;
+CREATE TABLE `wind_field_resouce` (
+  `id` int NOT NULL AUTO_INCREMENT COMMENT '编号',
+  `field_code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '风场编号',
+  `file_name` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '上传文件名称',
+  `type` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '上传类型',
+  `resource_url` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '上传文件地址',
+  `create_by` int DEFAULT NULL COMMENT '创建人',
+  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+  `update_by` int DEFAULT NULL COMMENT '更新人',
+  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='风场资源信息表 ';
+
+-- ----------------------------
+-- Records of wind_field_resouce
+-- ----------------------------
+BEGIN;
+COMMIT;
+
+-- ----------------------------
+-- Table structure for wind_relation
+-- ----------------------------
+DROP TABLE IF EXISTS `wind_relation`;
+CREATE TABLE `wind_relation` (
+  `id` int DEFAULT NULL COMMENT '主键',
+  `code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '对象编号',
+  `code_name` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '编号名称',
+  `parent_code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '父级编号',
+  `type` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '类型',
+  `create_by` int DEFAULT NULL COMMENT '创建人',
+  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+  `update_by` int DEFAULT NULL COMMENT '更新人',
+  `update_time` datetime DEFAULT NULL COMMENT '更新时间'
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='风场关系表 ';
+
+-- ----------------------------
+-- Records of wind_relation
+-- ----------------------------
+BEGIN;
+COMMIT;
+
+SET FOREIGN_KEY_CHECKS = 1;

+ 2705 - 0
db/energy.sql

@@ -0,0 +1,2705 @@
+/*
+ Navicat Premium Data Transfer
+
+ Source Server         : 127.0.0.1
+ Source Server Type    : MySQL
+ Source Server Version : 80036
+ Source Host           : localhost:3306
+ Source Schema         : energy
+
+ Target Server Type    : MySQL
+ Target Server Version : 80036
+ File Encoding         : 65001
+
+ Date: 30/04/2024 15:33:58
+*/
+
+SET NAMES utf8mb4;
+SET FOREIGN_KEY_CHECKS = 0;
+
+-- ----------------------------
+-- Table structure for anemometer_tower
+-- ----------------------------
+DROP TABLE IF EXISTS `anemometer_tower`;
+CREATE TABLE `anemometer_tower` (
+  `id` int NOT NULL AUTO_INCREMENT COMMENT '主键',
+  `anemometer_code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '测风塔编号',
+  `anemometer_name` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '测风塔名称',
+  `longitude` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '经度',
+  `latitude` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '纬度',
+  `state` tinyint(1) DEFAULT NULL COMMENT '状态',
+  `del_state` tinyint(1) DEFAULT NULL COMMENT '删除状态',
+  `create_by` int DEFAULT NULL COMMENT '创建人',
+  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+  `update_by` int DEFAULT NULL COMMENT '更新人',
+  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='测风塔信息 ';
+
+-- ----------------------------
+-- Records of anemometer_tower
+-- ----------------------------
+BEGIN;
+COMMIT;
+
+-- ----------------------------
+-- Table structure for anemometer_tower_data
+-- ----------------------------
+DROP TABLE IF EXISTS `anemometer_tower_data`;
+CREATE TABLE `anemometer_tower_data` (
+  `id` int NOT NULL AUTO_INCREMENT COMMENT '主键',
+  `tower_code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '测风塔编号',
+  `time` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '采集数据时间',
+  `height_name` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '层高名称',
+  `height_type` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '层高类型',
+  `wind_speed` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '实测风速',
+  `temperature` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '实测温度',
+  `pressure` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '实测气压',
+  `rainfall` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '实测雨量',
+  `density` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '大气密度',
+  `state` tinyint(1) DEFAULT NULL COMMENT '状态',
+  `del_state` tinyint(1) DEFAULT NULL COMMENT '删除状态',
+  `create_by` int DEFAULT NULL COMMENT '创建人',
+  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+  `update_by` int DEFAULT NULL COMMENT '更新人',
+  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='测风塔数据信息表 ';
+
+-- ----------------------------
+-- Records of anemometer_tower_data
+-- ----------------------------
+BEGIN;
+COMMIT;
+
+-- ----------------------------
+-- Table structure for anemometer_tower_height
+-- ----------------------------
+DROP TABLE IF EXISTS `anemometer_tower_height`;
+CREATE TABLE `anemometer_tower_height` (
+  `id` int NOT NULL AUTO_INCREMENT COMMENT '主键',
+  `anemometer_code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '测风塔编号',
+  `anemometer_height` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '测风塔高度',
+  `anemometer_type` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '高度类型',
+  `create_by` int DEFAULT NULL COMMENT '创建人',
+  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+  `update_by` int DEFAULT NULL COMMENT '更新人',
+  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='测风塔层高信息表 ';
+
+-- ----------------------------
+-- Records of anemometer_tower_height
+-- ----------------------------
+BEGIN;
+COMMIT;
+
+-- ----------------------------
+-- Table structure for anemometer_tower_relation
+-- ----------------------------
+DROP TABLE IF EXISTS `anemometer_tower_relation`;
+CREATE TABLE `anemometer_tower_relation` (
+  `id` int NOT NULL AUTO_INCREMENT COMMENT '主键',
+  `tower_code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '测风塔编号',
+  `field_code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '风场编号',
+  `create_by` int DEFAULT NULL COMMENT '创建人',
+  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+  `update_by` int DEFAULT NULL COMMENT '更新人',
+  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='测风塔与风场关系表 ';
+
+-- ----------------------------
+-- Records of anemometer_tower_relation
+-- ----------------------------
+BEGIN;
+COMMIT;
+
+-- ----------------------------
+-- Table structure for dict_constants
+-- ----------------------------
+DROP TABLE IF EXISTS `dict_constants`;
+CREATE TABLE `dict_constants` (
+  `id` int NOT NULL AUTO_INCREMENT,
+  `contents_type` tinyint DEFAULT NULL COMMENT '常量类型',
+  `contents_value` tinyint DEFAULT NULL COMMENT '常量值',
+  `contents_name` varchar(255) DEFAULT NULL COMMENT '常量显示内容',
+  `contents_describe` varchar(255) DEFAULT NULL COMMENT '描述信息',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=388 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='字典表';
+
+-- ----------------------------
+-- Records of dict_constants
+-- ----------------------------
+BEGIN;
+COMMIT;
+
+-- ----------------------------
+-- Table structure for power_word_relation_contract
+-- ----------------------------
+DROP TABLE IF EXISTS `power_word_relation_contract`;
+CREATE TABLE `power_word_relation_contract` (
+  `id` int NOT NULL AUTO_INCREMENT COMMENT '主键',
+  `field_code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '风场编号',
+  `mill_type_code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '机型编号',
+  `active_power` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '有功功率',
+  `wind_speed` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '风速',
+  `del_state` tinyint(1) DEFAULT NULL COMMENT '删除状态',
+  `create_by` int DEFAULT NULL COMMENT '创建人',
+  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+  `update_by` int DEFAULT NULL COMMENT '更新人',
+  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='合同功率曲线关系表 合同功率曲线-关联机型厂商+风场';
+
+-- ----------------------------
+-- Records of power_word_relation_contract
+-- ----------------------------
+BEGIN;
+COMMIT;
+
+-- ----------------------------
+-- Table structure for power_word_relation_criterion
+-- ----------------------------
+DROP TABLE IF EXISTS `power_word_relation_criterion`;
+CREATE TABLE `power_word_relation_criterion` (
+  `id` int NOT NULL AUTO_INCREMENT COMMENT '主键',
+  `mill_type_code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '机型编号',
+  `wind_speed` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '风速',
+  `active_power` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '有功功率',
+  `density` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '空气密度',
+  `del_state` tinyint(1) DEFAULT NULL COMMENT '删除状态',
+  `create_by` int DEFAULT NULL COMMENT '创建人',
+  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+  `update_by` int DEFAULT NULL COMMENT '更新人',
+  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='标准功率曲线关系表 标准功率曲线-关联机型';
+
+-- ----------------------------
+-- Records of power_word_relation_criterion
+-- ----------------------------
+BEGIN;
+COMMIT;
+
+-- ----------------------------
+-- Table structure for sys_areas_info
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_areas_info`;
+CREATE TABLE `sys_areas_info` (
+  `id` int NOT NULL AUTO_INCREMENT,
+  `province` varchar(255) DEFAULT NULL,
+  `city` varchar(255) DEFAULT NULL,
+  `area` varchar(255) DEFAULT NULL,
+  `area_code` varchar(10) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci DEFAULT NULL COMMENT '区域编号',
+  `type` int DEFAULT NULL,
+  `root_id` int DEFAULT NULL,
+  PRIMARY KEY (`id`),
+  KEY `areas_index` (`type`) USING BTREE
+) ENGINE=InnoDB AUTO_INCREMENT=2310 DEFAULT CHARSET=utf8mb3 COMMENT='省市区县表';
+
+-- ----------------------------
+-- Records of sys_areas_info
+-- ----------------------------
+BEGIN;
+INSERT INTO `sys_areas_info` VALUES (1, '北京市', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (2, '天津市', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (3, '河北省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (4, '山西省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (5, '内蒙古自治区', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (6, '辽宁省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (7, '吉林省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (8, '黑龙江省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (9, '上海市', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (10, '江苏省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (11, '浙江省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (12, '安徽省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (13, '福建省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (14, '江西省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (15, '山东省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (16, '河南省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (17, '湖北省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (18, '广东省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (19, '广西壮族自治区', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (20, '海南省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (21, '重庆市', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (22, '四川省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (23, '贵州省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (24, '云南省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (25, '西藏自治区', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (26, '陕西省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (27, '甘肃省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (28, '宁夏回族自治区', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (29, '新疆维吾尔族自治区', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (30, '青海省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (31, '湖南省', NULL, NULL, NULL, 1, 0);
+INSERT INTO `sys_areas_info` VALUES (101, '江苏省', '连云港市', NULL, '0518', 2, 10);
+INSERT INTO `sys_areas_info` VALUES (102, '河南省', '周口市', NULL, '0394', 2, 16);
+INSERT INTO `sys_areas_info` VALUES (103, '云南省', '丽江市', NULL, '0888', 2, 24);
+INSERT INTO `sys_areas_info` VALUES (104, '江西省', '九江市', NULL, '0792', 2, 14);
+INSERT INTO `sys_areas_info` VALUES (105, '黑龙江省', '佳木斯市', NULL, '0454', 2, 8);
+INSERT INTO `sys_areas_info` VALUES (106, '四川省', '成都市', NULL, '028', 2, 22);
+INSERT INTO `sys_areas_info` VALUES (107, '浙江省', '嘉兴市', NULL, '0573', 2, 11);
+INSERT INTO `sys_areas_info` VALUES (108, '山西省', '大同市', NULL, '0352', 2, 4);
+INSERT INTO `sys_areas_info` VALUES (109, '四川省', '宜宾市', NULL, '0831', 2, 22);
+INSERT INTO `sys_areas_info` VALUES (110, '四川省', '泸州市', NULL, '0830', 2, 22);
+INSERT INTO `sys_areas_info` VALUES (111, '河南省', '开封市', NULL, '0378', 2, 16);
+INSERT INTO `sys_areas_info` VALUES (112, '吉林省', '长春市', NULL, '0431', 2, 7);
+INSERT INTO `sys_areas_info` VALUES (113, '湖北省', '武汉市', NULL, '027', 2, 17);
+INSERT INTO `sys_areas_info` VALUES (114, '广东省', '揭阳市', NULL, '0663', 2, 18);
+INSERT INTO `sys_areas_info` VALUES (115, '山东省', '日照市', NULL, '0633', 2, 15);
+INSERT INTO `sys_areas_info` VALUES (116, '湖南省', '衡阳市', NULL, '0734', 2, 31);
+INSERT INTO `sys_areas_info` VALUES (117, '河南省', '平顶山市', NULL, '0375', 2, 16);
+INSERT INTO `sys_areas_info` VALUES (118, '广东省', '深圳市', NULL, '0755', 2, 18);
+INSERT INTO `sys_areas_info` VALUES (119, '福建省', '南平市', NULL, '0599', 2, 13);
+INSERT INTO `sys_areas_info` VALUES (120, '新疆维吾尔族自治区', '伊犁哈萨克自治州', NULL, '0999', 2, 29);
+INSERT INTO `sys_areas_info` VALUES (121, '山东省', '潍坊市', NULL, '0536', 2, 15);
+INSERT INTO `sys_areas_info` VALUES (122, '吉林省', '辽源市', NULL, '0437', 2, 7);
+INSERT INTO `sys_areas_info` VALUES (123, '内蒙古自治区', '阿拉善盟', NULL, '0483', 2, 5);
+INSERT INTO `sys_areas_info` VALUES (124, '黑龙江省', '哈尔滨市', NULL, '0451', 2, 8);
+INSERT INTO `sys_areas_info` VALUES (125, '黑龙江省', '伊春市', NULL, '0458', 2, 8);
+INSERT INTO `sys_areas_info` VALUES (126, '山东省', '莱芜市', NULL, '0634', 2, 15);
+INSERT INTO `sys_areas_info` VALUES (127, '河北省', '承德市', NULL, '0314', 2, 3);
+INSERT INTO `sys_areas_info` VALUES (128, '黑龙江省', '鸡西市', NULL, '0467', 2, 8);
+INSERT INTO `sys_areas_info` VALUES (129, '广东省', '广州市', NULL, '020', 2, 18);
+INSERT INTO `sys_areas_info` VALUES (130, '江苏省', '徐州市', NULL, '0516', 2, 10);
+INSERT INTO `sys_areas_info` VALUES (131, '黑龙江省', '黑河市', NULL, '0456', 2, 8);
+INSERT INTO `sys_areas_info` VALUES (132, '安徽省', '铜陵市', NULL, '0562', 2, 12);
+INSERT INTO `sys_areas_info` VALUES (133, '山东省', '德州市', NULL, '0534', 2, 15);
+INSERT INTO `sys_areas_info` VALUES (134, '广东省', '珠海市', NULL, '0756', 2, 18);
+INSERT INTO `sys_areas_info` VALUES (135, '广西壮族自治区', '贺州市', NULL, '0774', 2, 19);
+INSERT INTO `sys_areas_info` VALUES (136, '江苏省', '扬州市', NULL, '0514', 2, 10);
+INSERT INTO `sys_areas_info` VALUES (137, '山西省', '阳泉市', NULL, '0353', 2, 4);
+INSERT INTO `sys_areas_info` VALUES (138, '河北省', '衡水市', NULL, '0318', 2, 3);
+INSERT INTO `sys_areas_info` VALUES (139, '山西省', '晋中市', NULL, '0354', 2, 4);
+INSERT INTO `sys_areas_info` VALUES (140, '山东省', '东营市', NULL, '0546', 2, 15);
+INSERT INTO `sys_areas_info` VALUES (141, '辽宁省', '本溪市', NULL, '0414', 2, 6);
+INSERT INTO `sys_areas_info` VALUES (142, '江西省', '宜春市', NULL, '0795', 2, 14);
+INSERT INTO `sys_areas_info` VALUES (143, '广东省', '梅州市', NULL, '0753', 2, 18);
+INSERT INTO `sys_areas_info` VALUES (144, '广东省', '肇庆市', NULL, '0758', 2, 18);
+INSERT INTO `sys_areas_info` VALUES (145, '湖南省', '益阳市', NULL, '0737', 2, 31);
+INSERT INTO `sys_areas_info` VALUES (146, '新疆维吾尔族自治区', '塔城地区', NULL, '0901', 2, 29);
+INSERT INTO `sys_areas_info` VALUES (147, '辽宁省', '盘锦市', NULL, '0427', 2, 6);
+INSERT INTO `sys_areas_info` VALUES (148, '青海省', '海南藏族自治州', NULL, '0974', 2, 30);
+INSERT INTO `sys_areas_info` VALUES (149, '广东省', '韶关市', NULL, '0751', 2, 18);
+INSERT INTO `sys_areas_info` VALUES (150, '福建省', '漳州市', NULL, '0596', 2, 13);
+INSERT INTO `sys_areas_info` VALUES (151, '河北省', '邢台市', NULL, '0319', 2, 3);
+INSERT INTO `sys_areas_info` VALUES (152, '浙江省', '金华市', NULL, '0579', 2, 11);
+INSERT INTO `sys_areas_info` VALUES (153, '湖北省', '荆门市', NULL, '0724', 2, 17);
+INSERT INTO `sys_areas_info` VALUES (154, '山西省', '太原市', NULL, '0351', 2, 4);
+INSERT INTO `sys_areas_info` VALUES (155, '四川省', '乐山市', NULL, '0833', 2, 22);
+INSERT INTO `sys_areas_info` VALUES (156, '湖南省', '怀化市', NULL, '0745', 2, 31);
+INSERT INTO `sys_areas_info` VALUES (157, '甘肃省', '白银市', NULL, '0943', 2, 27);
+INSERT INTO `sys_areas_info` VALUES (158, '辽宁省', '抚顺市', NULL, '024', 2, 6);
+INSERT INTO `sys_areas_info` VALUES (159, '浙江省', '湖州市', NULL, '0572', 2, 11);
+INSERT INTO `sys_areas_info` VALUES (160, '湖北省', '仙桃市', NULL, '0728', 2, 17);
+INSERT INTO `sys_areas_info` VALUES (161, '福建省', '泉州市', NULL, '0595', 2, 13);
+INSERT INTO `sys_areas_info` VALUES (162, '河北省', '张家口市', NULL, '0313', 2, 3);
+INSERT INTO `sys_areas_info` VALUES (163, '河北省', '秦皇岛市', NULL, '0335', 2, 3);
+INSERT INTO `sys_areas_info` VALUES (164, '海南省', '五指山市', NULL, '0898', 2, 20);
+INSERT INTO `sys_areas_info` VALUES (165, '吉林省', '延边朝鲜族自治州', NULL, '0433', 2, 7);
+INSERT INTO `sys_areas_info` VALUES (166, '辽宁省', '营口市', NULL, '0417', 2, 6);
+INSERT INTO `sys_areas_info` VALUES (167, '广东省', '中山市', NULL, '0760', 2, 18);
+INSERT INTO `sys_areas_info` VALUES (168, '云南省', '思茅市', NULL, '0879', 2, 24);
+INSERT INTO `sys_areas_info` VALUES (169, '山东省', '济宁市', NULL, '0537', 2, 15);
+INSERT INTO `sys_areas_info` VALUES (170, '辽宁省', '沈阳市', NULL, '024', 2, 6);
+INSERT INTO `sys_areas_info` VALUES (171, '广东省', '湛江市', NULL, '0759', 2, 18);
+INSERT INTO `sys_areas_info` VALUES (172, '西藏自治区', '山南地区', NULL, '0893', 2, 25);
+INSERT INTO `sys_areas_info` VALUES (173, '四川省', '凉山彝族自治州', NULL, '0834', 2, 22);
+INSERT INTO `sys_areas_info` VALUES (174, '辽宁省', '朝阳市', NULL, '0421', 2, 6);
+INSERT INTO `sys_areas_info` VALUES (175, '河南省', '焦作市', NULL, '0391', 2, 16);
+INSERT INTO `sys_areas_info` VALUES (176, '河北省', '廊坊市', NULL, '0316', 2, 3);
+INSERT INTO `sys_areas_info` VALUES (177, '福建省', '福州市', NULL, '0591', 2, 13);
+INSERT INTO `sys_areas_info` VALUES (178, '四川省', '德阳市', NULL, '0838', 2, 22);
+INSERT INTO `sys_areas_info` VALUES (179, '甘肃省', '天水市', NULL, '0938', 2, 27);
+INSERT INTO `sys_areas_info` VALUES (180, '陕西省', '咸阳市', NULL, '029', 2, 26);
+INSERT INTO `sys_areas_info` VALUES (181, '安徽省', '宿州市', NULL, '0557', 2, 12);
+INSERT INTO `sys_areas_info` VALUES (182, '内蒙古自治区', '乌海市', NULL, '0473', 2, 5);
+INSERT INTO `sys_areas_info` VALUES (183, '新疆维吾尔族自治区', '克拉玛依市', NULL, '0990', 2, 29);
+INSERT INTO `sys_areas_info` VALUES (184, '云南省', '德宏傣族景颇族自治州', NULL, '0692', 2, 24);
+INSERT INTO `sys_areas_info` VALUES (185, '湖北省', '十堰市', NULL, '0719', 2, 17);
+INSERT INTO `sys_areas_info` VALUES (186, '湖南省', '常德市', NULL, '0736', 2, 31);
+INSERT INTO `sys_areas_info` VALUES (187, '西藏自治区', '日喀则地区', NULL, '0892', 2, 25);
+INSERT INTO `sys_areas_info` VALUES (188, '黑龙江省', '鹤岗市', NULL, '0468', 2, 8);
+INSERT INTO `sys_areas_info` VALUES (189, '宁夏回族自治区', '石嘴山市', NULL, '0952', 2, 28);
+INSERT INTO `sys_areas_info` VALUES (190, '新疆维吾尔族自治区', '阿勒泰地区', NULL, '0906', 2, 29);
+INSERT INTO `sys_areas_info` VALUES (191, '云南省', '大理白族自治州', NULL, '0872', 2, 24);
+INSERT INTO `sys_areas_info` VALUES (192, '山东省', '泰安市', NULL, '0538', 2, 15);
+INSERT INTO `sys_areas_info` VALUES (193, '青海省', '西宁市', NULL, '0971', 2, 30);
+INSERT INTO `sys_areas_info` VALUES (194, '浙江省', '舟山市', NULL, '0580', 2, 11);
+INSERT INTO `sys_areas_info` VALUES (195, '黑龙江省', '齐齐哈尔市', NULL, '0452', 2, 8);
+INSERT INTO `sys_areas_info` VALUES (196, '广东省', '清远市', NULL, '0763', 2, 18);
+INSERT INTO `sys_areas_info` VALUES (197, '广西壮族自治区', '河池市', NULL, '0778', 2, 19);
+INSERT INTO `sys_areas_info` VALUES (198, '甘肃省', '庆阳市', NULL, '0934', 2, 27);
+INSERT INTO `sys_areas_info` VALUES (199, '海南省', '儋州市', NULL, '0898', 2, 20);
+INSERT INTO `sys_areas_info` VALUES (200, '江西省', '南昌市', NULL, '0791', 2, 14);
+INSERT INTO `sys_areas_info` VALUES (201, '湖南省', '长沙市', NULL, '0731', 2, 31);
+INSERT INTO `sys_areas_info` VALUES (202, '福建省', '宁德市', NULL, '0593', 2, 13);
+INSERT INTO `sys_areas_info` VALUES (203, '山东省', '淄博市', NULL, '0533', 2, 15);
+INSERT INTO `sys_areas_info` VALUES (204, '云南省', '迪庆藏族自治州', NULL, '0887', 2, 24);
+INSERT INTO `sys_areas_info` VALUES (205, '陕西省', '渭南市', NULL, '0913', 2, 26);
+INSERT INTO `sys_areas_info` VALUES (206, '湖南省', '娄底市', NULL, '0738', 2, 31);
+INSERT INTO `sys_areas_info` VALUES (207, '新疆维吾尔族自治区', '乌鲁木齐市', NULL, '0991', 2, 29);
+INSERT INTO `sys_areas_info` VALUES (208, '四川省', '雅安市', NULL, '0835', 2, 22);
+INSERT INTO `sys_areas_info` VALUES (209, '河北省', '保定市', NULL, '0312', 2, 3);
+INSERT INTO `sys_areas_info` VALUES (210, '湖北省', '孝感市', NULL, '0712', 2, 17);
+INSERT INTO `sys_areas_info` VALUES (211, '湖南省', '湘西土家族苗族自治州', NULL, '0743', 2, 31);
+INSERT INTO `sys_areas_info` VALUES (212, '广西壮族自治区', '钦州市', NULL, '0777', 2, 19);
+INSERT INTO `sys_areas_info` VALUES (213, '辽宁省', '葫芦岛市', NULL, '0429', 2, 6);
+INSERT INTO `sys_areas_info` VALUES (214, '河南省', '洛阳市', NULL, '0379', 2, 16);
+INSERT INTO `sys_areas_info` VALUES (215, '广东省', '汕头市', NULL, '0754', 2, 18);
+INSERT INTO `sys_areas_info` VALUES (216, '山东省', '菏泽市', NULL, '0530', 2, 15);
+INSERT INTO `sys_areas_info` VALUES (217, '浙江省', '宁波市', NULL, '0574', 2, 11);
+INSERT INTO `sys_areas_info` VALUES (218, '甘肃省', '平凉市', NULL, '0933', 2, 27);
+INSERT INTO `sys_areas_info` VALUES (219, '海南省', '海口市', NULL, '0898', 2, 20);
+INSERT INTO `sys_areas_info` VALUES (220, '陕西省', '铜川市', NULL, '0919', 2, 26);
+INSERT INTO `sys_areas_info` VALUES (221, '广东省', '茂名市', NULL, '0668', 2, 18);
+INSERT INTO `sys_areas_info` VALUES (222, '湖北省', '黄石市', NULL, '0714', 2, 17);
+INSERT INTO `sys_areas_info` VALUES (223, '辽宁省', '铁岭市', NULL, '0410', 2, 6);
+INSERT INTO `sys_areas_info` VALUES (224, '四川省', '绵阳市', NULL, '0816', 2, 22);
+INSERT INTO `sys_areas_info` VALUES (225, '广西壮族自治区', '来宾市', NULL, '0772', 2, 19);
+INSERT INTO `sys_areas_info` VALUES (226, '辽宁省', '阜新市', NULL, '0418', 2, 6);
+INSERT INTO `sys_areas_info` VALUES (227, '山西省', '吕梁市', NULL, '0358', 2, 4);
+INSERT INTO `sys_areas_info` VALUES (228, '甘肃省', '兰州市', NULL, '0931', 2, 27);
+INSERT INTO `sys_areas_info` VALUES (229, '广东省', '东莞市', NULL, '0769', 2, 18);
+INSERT INTO `sys_areas_info` VALUES (230, '内蒙古自治区', '包头市', NULL, '0472', 2, 5);
+INSERT INTO `sys_areas_info` VALUES (231, '云南省', '楚雄彝族自治州', NULL, '0878', 2, 24);
+INSERT INTO `sys_areas_info` VALUES (232, '陕西省', '宝鸡市', NULL, '0917', 2, 26);
+INSERT INTO `sys_areas_info` VALUES (233, '四川省', '巴中市', NULL, '0827', 2, 22);
+INSERT INTO `sys_areas_info` VALUES (234, '江西省', '上饶市', NULL, '0793', 2, 14);
+INSERT INTO `sys_areas_info` VALUES (235, '山东省', '枣庄市', NULL, '0632', 2, 15);
+INSERT INTO `sys_areas_info` VALUES (236, '山西省', '运城市', NULL, '0359', 2, 4);
+INSERT INTO `sys_areas_info` VALUES (237, '四川省', '广安市', NULL, '0826', 2, 22);
+INSERT INTO `sys_areas_info` VALUES (238, '山西省', '临汾市', NULL, '0357', 2, 4);
+INSERT INTO `sys_areas_info` VALUES (239, '湖北省', '鄂州市', NULL, '0711', 2, 17);
+INSERT INTO `sys_areas_info` VALUES (240, '吉林省', '吉林市', NULL, '0432', 2, 7);
+INSERT INTO `sys_areas_info` VALUES (241, '广西壮族自治区', '崇左市', NULL, '0771', 2, 19);
+INSERT INTO `sys_areas_info` VALUES (242, '广西壮族自治区', '南宁市', NULL, '0771', 2, 19);
+INSERT INTO `sys_areas_info` VALUES (243, '辽宁省', '锦州市', NULL, '0416', 2, 6);
+INSERT INTO `sys_areas_info` VALUES (244, '江西省', '景德镇市', NULL, '0798', 2, 14);
+INSERT INTO `sys_areas_info` VALUES (245, '山东省', '滨州市', NULL, '0543', 2, 15);
+INSERT INTO `sys_areas_info` VALUES (246, '安徽省', '安庆市', NULL, '0556', 2, 12);
+INSERT INTO `sys_areas_info` VALUES (247, '宁夏回族自治区', '银川市', NULL, '0951', 2, 28);
+INSERT INTO `sys_areas_info` VALUES (248, '内蒙古自治区', '兴安盟', NULL, '0482', 2, 5);
+INSERT INTO `sys_areas_info` VALUES (249, '安徽省', '亳州市', NULL, '0558', 2, 12);
+INSERT INTO `sys_areas_info` VALUES (250, '广东省', '惠州市', NULL, '0752', 2, 18);
+INSERT INTO `sys_areas_info` VALUES (251, '安徽省', '马鞍山市', NULL, '0555', 2, 12);
+INSERT INTO `sys_areas_info` VALUES (252, '天津市', '天津市', NULL, '022', 2, 2);
+INSERT INTO `sys_areas_info` VALUES (253, '安徽省', '六安市', NULL, '0564', 2, 12);
+INSERT INTO `sys_areas_info` VALUES (254, '河南省', '商丘市', NULL, '0370', 2, 16);
+INSERT INTO `sys_areas_info` VALUES (255, '四川省', '阿坝藏族羌族自治州', NULL, '0837', 2, 22);
+INSERT INTO `sys_areas_info` VALUES (256, '山东省', '威海市', NULL, '0631', 2, 15);
+INSERT INTO `sys_areas_info` VALUES (257, '浙江省', '衢州市', NULL, '0570', 2, 11);
+INSERT INTO `sys_areas_info` VALUES (258, '云南省', '怒江傈僳族自治州', NULL, '0886', 2, 24);
+INSERT INTO `sys_areas_info` VALUES (259, '新疆维吾尔族自治区', '克孜勒苏柯尔克孜自治州', NULL, '0908', 2, 29);
+INSERT INTO `sys_areas_info` VALUES (260, '黑龙江省', '牡丹江市', NULL, '0453', 2, 8);
+INSERT INTO `sys_areas_info` VALUES (261, '山东省', '烟台市', NULL, '0535', 2, 15);
+INSERT INTO `sys_areas_info` VALUES (262, '辽宁省', '大连市', NULL, '0411', 2, 6);
+INSERT INTO `sys_areas_info` VALUES (263, '浙江省', '杭州市', NULL, '0571', 2, 11);
+INSERT INTO `sys_areas_info` VALUES (264, '河北省', '石家庄市', NULL, '0311', 2, 3);
+INSERT INTO `sys_areas_info` VALUES (265, '安徽省', '阜阳市', NULL, '0558', 2, 12);
+INSERT INTO `sys_areas_info` VALUES (266, '江西省', '抚州市', NULL, '0794', 2, 14);
+INSERT INTO `sys_areas_info` VALUES (267, '福建省', '龙岩市', NULL, '0597', 2, 13);
+INSERT INTO `sys_areas_info` VALUES (268, '四川省', '遂宁市', NULL, '0825', 2, 22);
+INSERT INTO `sys_areas_info` VALUES (269, '河南省', '信阳市', NULL, '0376', 2, 16);
+INSERT INTO `sys_areas_info` VALUES (270, '云南省', '临沧市', NULL, '0883', 2, 24);
+INSERT INTO `sys_areas_info` VALUES (271, '湖北省', '咸宁市', NULL, '0715', 2, 17);
+INSERT INTO `sys_areas_info` VALUES (272, '贵州省', '铜仁地区', NULL, '0856', 2, 23);
+INSERT INTO `sys_areas_info` VALUES (273, '贵州省', '贵阳市', NULL, '0851', 2, 23);
+INSERT INTO `sys_areas_info` VALUES (274, '湖南省', '邵阳市', NULL, '0739', 2, 31);
+INSERT INTO `sys_areas_info` VALUES (275, '海南省', '三亚市', NULL, '0898', 2, 20);
+INSERT INTO `sys_areas_info` VALUES (276, '贵州省', '黔南布依族苗族自治州', NULL, '0854', 2, 23);
+INSERT INTO `sys_areas_info` VALUES (277, '河北省', '唐山市', NULL, '0315', 2, 3);
+INSERT INTO `sys_areas_info` VALUES (278, '宁夏回族自治区', '中卫市', NULL, '0955', 2, 28);
+INSERT INTO `sys_areas_info` VALUES (279, '安徽省', '黄山市', NULL, '0559', 2, 12);
+INSERT INTO `sys_areas_info` VALUES (280, '广西壮族自治区', '梧州市', NULL, '0774', 2, 19);
+INSERT INTO `sys_areas_info` VALUES (281, '江苏省', '苏州市', NULL, '0512', 2, 10);
+INSERT INTO `sys_areas_info` VALUES (282, '河南省', '驻马店市', NULL, '0396', 2, 16);
+INSERT INTO `sys_areas_info` VALUES (283, '江苏省', '镇江市', NULL, '0511', 2, 10);
+INSERT INTO `sys_areas_info` VALUES (284, '山东省', '青岛市', NULL, '0532', 2, 15);
+INSERT INTO `sys_areas_info` VALUES (285, '江苏省', '宿迁市', NULL, '0527', 2, 10);
+INSERT INTO `sys_areas_info` VALUES (286, '河北省', '沧州市', NULL, '0317', 2, 3);
+INSERT INTO `sys_areas_info` VALUES (287, '上海市', '上海市', NULL, '021', 2, 9);
+INSERT INTO `sys_areas_info` VALUES (288, '贵州省', '遵义市', NULL, '0852', 2, 23);
+INSERT INTO `sys_areas_info` VALUES (289, '浙江省', '台州市', NULL, '0576', 2, 11);
+INSERT INTO `sys_areas_info` VALUES (290, '山西省', '朔州市', NULL, '0349', 2, 4);
+INSERT INTO `sys_areas_info` VALUES (291, '广东省', '潮州市', NULL, '0768', 2, 18);
+INSERT INTO `sys_areas_info` VALUES (292, '新疆维吾尔族自治区', '和田地区', NULL, '0903', 2, 29);
+INSERT INTO `sys_areas_info` VALUES (293, '新疆维吾尔族自治区', '昌吉回族自治州', NULL, '0994', 2, 29);
+INSERT INTO `sys_areas_info` VALUES (294, '甘肃省', '武威市', NULL, '0935', 2, 27);
+INSERT INTO `sys_areas_info` VALUES (295, '广西壮族自治区', '贵港市', NULL, '0775', 2, 19);
+INSERT INTO `sys_areas_info` VALUES (296, '新疆维吾尔族自治区', '喀什地区', NULL, '0998', 2, 29);
+INSERT INTO `sys_areas_info` VALUES (297, '贵州省', '黔西南布依族苗族自治州', NULL, '0859', 2, 23);
+INSERT INTO `sys_areas_info` VALUES (298, '四川省', '广元市', NULL, '0839', 2, 22);
+INSERT INTO `sys_areas_info` VALUES (299, '安徽省', '合肥市', NULL, '0551', 2, 12);
+INSERT INTO `sys_areas_info` VALUES (300, '湖南省', '张家界市', NULL, '0744', 2, 31);
+INSERT INTO `sys_areas_info` VALUES (301, '辽宁省', '鞍山市', NULL, '0412', 2, 6);
+INSERT INTO `sys_areas_info` VALUES (302, '湖南省', '株洲市', NULL, '0731', 2, 31);
+INSERT INTO `sys_areas_info` VALUES (303, '新疆维吾尔族自治区', '吐鲁番地区', NULL, '0995', 2, 29);
+INSERT INTO `sys_areas_info` VALUES (304, '江苏省', '常州市', NULL, '0519', 2, 10);
+INSERT INTO `sys_areas_info` VALUES (305, '辽宁省', '丹东市', NULL, '0415', 2, 6);
+INSERT INTO `sys_areas_info` VALUES (306, '山东省', '济南市', NULL, '0531', 2, 15);
+INSERT INTO `sys_areas_info` VALUES (307, '浙江省', '绍兴市', NULL, '0575', 2, 11);
+INSERT INTO `sys_areas_info` VALUES (308, '河南省', '郑州市', NULL, '0371', 2, 16);
+INSERT INTO `sys_areas_info` VALUES (309, '甘肃省', '嘉峪关市', NULL, '0937', 2, 27);
+INSERT INTO `sys_areas_info` VALUES (310, '新疆维吾尔族自治区', '巴音郭楞蒙古自治州', NULL, '0996', 2, 29);
+INSERT INTO `sys_areas_info` VALUES (311, '江苏省', '泰州市', NULL, '0523', 2, 10);
+INSERT INTO `sys_areas_info` VALUES (312, '山东省', '临沂市', NULL, '0539', 2, 15);
+INSERT INTO `sys_areas_info` VALUES (313, '江苏省', '南京市', NULL, '025', 2, 10);
+INSERT INTO `sys_areas_info` VALUES (314, '内蒙古自治区', '赤峰市', NULL, '0476', 2, 5);
+INSERT INTO `sys_areas_info` VALUES (315, '浙江省', '温州市', NULL, '0577', 2, 11);
+INSERT INTO `sys_areas_info` VALUES (316, '内蒙古自治区', '巴彦淖尔市', NULL, '0478', 2, 5);
+INSERT INTO `sys_areas_info` VALUES (317, '四川省', '达州市', NULL, '0818', 2, 22);
+INSERT INTO `sys_areas_info` VALUES (318, '贵州省', '毕节地区', NULL, '0857', 2, 23);
+INSERT INTO `sys_areas_info` VALUES (319, '河南省', '濮阳市', NULL, '0393', 2, 16);
+INSERT INTO `sys_areas_info` VALUES (320, '江西省', '萍乡市', NULL, '0799', 2, 14);
+INSERT INTO `sys_areas_info` VALUES (321, '吉林省', '白山市', NULL, '0439', 2, 7);
+INSERT INTO `sys_areas_info` VALUES (322, '四川省', '内江市', NULL, '0832', 2, 22);
+INSERT INTO `sys_areas_info` VALUES (323, '陕西省', '商洛市', NULL, '0914', 2, 26);
+INSERT INTO `sys_areas_info` VALUES (324, '湖北省', '随州市', NULL, '0722', 2, 17);
+INSERT INTO `sys_areas_info` VALUES (325, '贵州省', '黔东南苗族侗族自治州', NULL, '0855', 2, 23);
+INSERT INTO `sys_areas_info` VALUES (326, '内蒙古自治区', '通辽市', NULL, '0475', 2, 5);
+INSERT INTO `sys_areas_info` VALUES (327, '甘肃省', '定西市', NULL, '0932', 2, 27);
+INSERT INTO `sys_areas_info` VALUES (328, '河南省', '三门峡市', NULL, '0398', 2, 16);
+INSERT INTO `sys_areas_info` VALUES (329, '江苏省', '盐城市', NULL, '0515', 2, 10);
+INSERT INTO `sys_areas_info` VALUES (330, '内蒙古自治区', '锡林郭勒盟', NULL, '0479', 2, 5);
+INSERT INTO `sys_areas_info` VALUES (331, '广西壮族自治区', '北海市', NULL, '0779', 2, 19);
+INSERT INTO `sys_areas_info` VALUES (332, '江西省', '吉安市', NULL, '0796', 2, 14);
+INSERT INTO `sys_areas_info` VALUES (333, '吉林省', '松原市', NULL, '0438', 2, 7);
+INSERT INTO `sys_areas_info` VALUES (334, '陕西省', '西安市', NULL, '029', 2, 26);
+INSERT INTO `sys_areas_info` VALUES (335, '甘肃省', '临夏回族自治州', NULL, '0930', 2, 27);
+INSERT INTO `sys_areas_info` VALUES (336, '江西省', '赣州市', NULL, '0797', 2, 14);
+INSERT INTO `sys_areas_info` VALUES (337, '湖南省', '湘潭市', NULL, '0731', 2, 31);
+INSERT INTO `sys_areas_info` VALUES (338, '广西壮族自治区', '玉林市', NULL, '0775', 2, 19);
+INSERT INTO `sys_areas_info` VALUES (339, '贵州省', '六盘水市', NULL, '0858', 2, 23);
+INSERT INTO `sys_areas_info` VALUES (340, '湖北省', '恩施市', NULL, '0718', 2, 17);
+INSERT INTO `sys_areas_info` VALUES (341, '江西省', '新余市', NULL, '0790', 2, 14);
+INSERT INTO `sys_areas_info` VALUES (342, '四川省', '眉山市', NULL, '028', 2, 22);
+INSERT INTO `sys_areas_info` VALUES (343, '吉林省', '白城市', NULL, '0436', 2, 7);
+INSERT INTO `sys_areas_info` VALUES (344, '陕西省', '延安市', NULL, '0911', 2, 26);
+INSERT INTO `sys_areas_info` VALUES (345, '河南省', '许昌市', NULL, '0374', 2, 16);
+INSERT INTO `sys_areas_info` VALUES (346, '福建省', '莆田市', NULL, '0594', 2, 13);
+INSERT INTO `sys_areas_info` VALUES (347, '贵州省', '安顺市', NULL, '0853', 2, 23);
+INSERT INTO `sys_areas_info` VALUES (348, '河北省', '邯郸市', NULL, '0310', 2, 3);
+INSERT INTO `sys_areas_info` VALUES (349, '四川省', '甘孜藏族自治州', NULL, '0836', 2, 22);
+INSERT INTO `sys_areas_info` VALUES (350, '四川省', '南充市', NULL, '0817', 2, 22);
+INSERT INTO `sys_areas_info` VALUES (351, '海南省', '琼海市', NULL, '0898', 2, 20);
+INSERT INTO `sys_areas_info` VALUES (352, '西藏自治区', '拉萨市', NULL, '0891', 2, 25);
+INSERT INTO `sys_areas_info` VALUES (353, '河南省', '安阳市', NULL, '0372', 2, 16);
+INSERT INTO `sys_areas_info` VALUES (354, '福建省', '厦门市', NULL, '0592', 2, 13);
+INSERT INTO `sys_areas_info` VALUES (355, '新疆维吾尔族自治区', '奎屯市', NULL, '0992', 2, 29);
+INSERT INTO `sys_areas_info` VALUES (356, '甘肃省', '金昌市', NULL, '0935', 2, 27);
+INSERT INTO `sys_areas_info` VALUES (357, '内蒙古自治区', '呼伦贝尔市', NULL, '0470', 2, 5);
+INSERT INTO `sys_areas_info` VALUES (358, '宁夏回族自治区', '固原市', NULL, '0954', 2, 28);
+INSERT INTO `sys_areas_info` VALUES (359, '湖北省', '天门市', NULL, '0728', 2, 17);
+INSERT INTO `sys_areas_info` VALUES (360, '江苏省', '淮安市', NULL, '0517', 2, 10);
+INSERT INTO `sys_areas_info` VALUES (361, '湖北省', '荆州市', NULL, '0716', 2, 17);
+INSERT INTO `sys_areas_info` VALUES (362, '甘肃省', '张掖市', NULL, '0936', 2, 27);
+INSERT INTO `sys_areas_info` VALUES (363, '重庆市', '重庆市', NULL, '023', 2, 21);
+INSERT INTO `sys_areas_info` VALUES (364, '江苏省', '无锡市', NULL, '0510', 2, 10);
+INSERT INTO `sys_areas_info` VALUES (365, '浙江省', '丽水市', NULL, '0578', 2, 11);
+INSERT INTO `sys_areas_info` VALUES (366, '新疆维吾尔族自治区', '哈密地区', NULL, '0902', 2, 29);
+INSERT INTO `sys_areas_info` VALUES (367, '安徽省', '淮南市', NULL, '0554', 2, 12);
+INSERT INTO `sys_areas_info` VALUES (368, '北京市', '北京市', NULL, '010', 2, 1);
+INSERT INTO `sys_areas_info` VALUES (369, '云南省', '昆明市', NULL, '0871', 2, 24);
+INSERT INTO `sys_areas_info` VALUES (370, '湖南省', '郴州市', NULL, '0735', 2, 31);
+INSERT INTO `sys_areas_info` VALUES (371, '黑龙江省', '绥化市', NULL, '0455', 2, 8);
+INSERT INTO `sys_areas_info` VALUES (372, '安徽省', '蚌埠市', NULL, '0552', 2, 12);
+INSERT INTO `sys_areas_info` VALUES (373, '黑龙江省', '双鸭山市', NULL, '0469', 2, 8);
+INSERT INTO `sys_areas_info` VALUES (374, '广东省', '河源市', NULL, '0762', 2, 18);
+INSERT INTO `sys_areas_info` VALUES (375, '四川省', '自贡市', NULL, '0813', 2, 22);
+INSERT INTO `sys_areas_info` VALUES (376, '山西省', '晋城市', NULL, '0356', 2, 4);
+INSERT INTO `sys_areas_info` VALUES (377, '安徽省', '宣城市', NULL, '0563', 2, 12);
+INSERT INTO `sys_areas_info` VALUES (378, '广东省', '佛山市', NULL, '0757', 2, 18);
+INSERT INTO `sys_areas_info` VALUES (379, '陕西省', '汉中市', NULL, '0916', 2, 26);
+INSERT INTO `sys_areas_info` VALUES (380, '安徽省', '滁州市', NULL, '0550', 2, 12);
+INSERT INTO `sys_areas_info` VALUES (381, '云南省', '保山市', NULL, '0875', 2, 24);
+INSERT INTO `sys_areas_info` VALUES (382, '山西省', '忻州市', NULL, '0350', 2, 4);
+INSERT INTO `sys_areas_info` VALUES (383, '宁夏回族自治区', '吴忠市', NULL, '0953', 2, 28);
+INSERT INTO `sys_areas_info` VALUES (384, '内蒙古自治区', '鄂尔多斯市', NULL, '0477', 2, 5);
+INSERT INTO `sys_areas_info` VALUES (385, '河南省', '鹤壁市', NULL, '0392', 2, 16);
+INSERT INTO `sys_areas_info` VALUES (386, '内蒙古自治区', '乌兰察布市', NULL, '0474', 2, 5);
+INSERT INTO `sys_areas_info` VALUES (387, '云南省', '玉溪市', NULL, '0877', 2, 24);
+INSERT INTO `sys_areas_info` VALUES (388, '广西壮族自治区', '柳州市', NULL, '0772', 2, 19);
+INSERT INTO `sys_areas_info` VALUES (389, '云南省', '昭通市', NULL, '0870', 2, 24);
+INSERT INTO `sys_areas_info` VALUES (390, '云南省', '西双版纳傣族自治州', NULL, '0691', 2, 24);
+INSERT INTO `sys_areas_info` VALUES (391, '安徽省', '池州市', NULL, '0566', 2, 12);
+INSERT INTO `sys_areas_info` VALUES (392, '广西壮族自治区', '百色市', NULL, '0776', 2, 19);
+INSERT INTO `sys_areas_info` VALUES (393, '湖南省', '岳阳市', NULL, '0730', 2, 31);
+INSERT INTO `sys_areas_info` VALUES (394, '山西省', '长治市', NULL, '0355', 2, 4);
+INSERT INTO `sys_areas_info` VALUES (395, '吉林省', '通化市', NULL, '0435', 2, 7);
+INSERT INTO `sys_areas_info` VALUES (396, '河南省', '漯河市', NULL, '0395', 2, 16);
+INSERT INTO `sys_areas_info` VALUES (397, '湖北省', '黄冈市', NULL, '0713', 2, 17);
+INSERT INTO `sys_areas_info` VALUES (398, '广东省', '江门市', NULL, '0750', 2, 18);
+INSERT INTO `sys_areas_info` VALUES (399, '云南省', '红河哈尼族彝族自治州', NULL, '0873', 2, 24);
+INSERT INTO `sys_areas_info` VALUES (400, '广西壮族自治区', '桂林市', NULL, '0773', 2, 19);
+INSERT INTO `sys_areas_info` VALUES (401, '青海省', '海东地区', NULL, '0972', 2, 30);
+INSERT INTO `sys_areas_info` VALUES (402, '山东省', '聊城市', NULL, '0635', 2, 15);
+INSERT INTO `sys_areas_info` VALUES (403, '江西省', '鹰潭市', NULL, '0701', 2, 14);
+INSERT INTO `sys_areas_info` VALUES (404, '四川省', '资阳市', NULL, '028', 2, 22);
+INSERT INTO `sys_areas_info` VALUES (405, '河南省', '南阳市', NULL, '0377', 2, 16);
+INSERT INTO `sys_areas_info` VALUES (406, '海南省', '文昌市', NULL, '0898', 2, 20);
+INSERT INTO `sys_areas_info` VALUES (407, '安徽省', '淮北市', NULL, '0561', 2, 12);
+INSERT INTO `sys_areas_info` VALUES (408, '湖南省', '永州市', NULL, '0746', 2, 31);
+INSERT INTO `sys_areas_info` VALUES (409, '甘肃省', '酒泉市', NULL, '0937', 2, 27);
+INSERT INTO `sys_areas_info` VALUES (410, '广西壮族自治区', '防城港市', NULL, '0770', 2, 19);
+INSERT INTO `sys_areas_info` VALUES (411, '福建省', '三明市', NULL, '0598', 2, 13);
+INSERT INTO `sys_areas_info` VALUES (412, '湖北省', '襄樊市', NULL, '0710', 2, 17);
+INSERT INTO `sys_areas_info` VALUES (413, '广东省', '阳江市', NULL, '0662', 2, 18);
+INSERT INTO `sys_areas_info` VALUES (414, '湖北省', '潜江市', NULL, '0728', 2, 17);
+INSERT INTO `sys_areas_info` VALUES (415, '黑龙江省', '大庆市', NULL, '0459', 2, 8);
+INSERT INTO `sys_areas_info` VALUES (416, '江苏省', '南通市', NULL, '0513', 2, 10);
+INSERT INTO `sys_areas_info` VALUES (417, '吉林省', '四平市', NULL, '0434', 2, 7);
+INSERT INTO `sys_areas_info` VALUES (418, '河南省', '新乡市', NULL, '0373', 2, 16);
+INSERT INTO `sys_areas_info` VALUES (419, '黑龙江省', '七台河市', NULL, '0464', 2, 8);
+INSERT INTO `sys_areas_info` VALUES (420, '云南省', '曲靖市', NULL, '0874', 2, 24);
+INSERT INTO `sys_areas_info` VALUES (421, '陕西省', '榆林市', NULL, '0912', 2, 26);
+INSERT INTO `sys_areas_info` VALUES (422, '内蒙古自治区', '呼和浩特市', NULL, '0471', 2, 5);
+INSERT INTO `sys_areas_info` VALUES (423, '湖北省', '宜昌市', NULL, '0717', 2, 17);
+INSERT INTO `sys_areas_info` VALUES (424, '新疆维吾尔族自治区', '阿克苏地区', NULL, '0997', 2, 29);
+INSERT INTO `sys_areas_info` VALUES (425, '安徽省', '芜湖市', NULL, '0553', 2, 12);
+INSERT INTO `sys_areas_info` VALUES (426, '云南省', '文山壮族苗族自治州', NULL, '0876', 2, 24);
+INSERT INTO `sys_areas_info` VALUES (427, '辽宁省', '辽阳市', NULL, '0419', 2, 6);
+INSERT INTO `sys_areas_info` VALUES (428, '四川省', '攀枝花市', NULL, '0812', 2, 22);
+INSERT INTO `sys_areas_info` VALUES (501, '湖北省', '荆门市', '沙洋县', '0724', 3, 153);
+INSERT INTO `sys_areas_info` VALUES (502, '福建省', '三明市', '泰宁县', '0598', 3, 411);
+INSERT INTO `sys_areas_info` VALUES (503, '湖北省', '荆州市', '公安县', '0716', 3, 361);
+INSERT INTO `sys_areas_info` VALUES (504, '吉林省', '通化市', '梅河口市', '0435', 3, 395);
+INSERT INTO `sys_areas_info` VALUES (505, '江苏省', '徐州市', '睢宁县', '0516', 3, 130);
+INSERT INTO `sys_areas_info` VALUES (506, '甘肃省', '张掖市', '高台县', '0936', 3, 362);
+INSERT INTO `sys_areas_info` VALUES (507, '四川省', '遂宁市', '蓬溪县', '0825', 3, 268);
+INSERT INTO `sys_areas_info` VALUES (508, '云南省', '红河哈尼族彝族自治州', '蒙自县', '0873', 3, 399);
+INSERT INTO `sys_areas_info` VALUES (509, '内蒙古自治区', '乌兰察布市', '集宁区', '0474', 3, 386);
+INSERT INTO `sys_areas_info` VALUES (510, '江西省', '抚州市', '宜黄县', '0794', 3, 266);
+INSERT INTO `sys_areas_info` VALUES (511, '河南省', '信阳市', '平桥区', '0376', 3, 269);
+INSERT INTO `sys_areas_info` VALUES (512, '湖北省', '武汉市', '硚口区', '027', 3, 113);
+INSERT INTO `sys_areas_info` VALUES (513, '江西省', '上饶市', '玉山县', '0793', 3, 234);
+INSERT INTO `sys_areas_info` VALUES (514, '安徽省', '阜阳市', '颍泉区', '0558', 3, 265);
+INSERT INTO `sys_areas_info` VALUES (515, '北京市', '北京市', '延庆县', '010', 3, 368);
+INSERT INTO `sys_areas_info` VALUES (516, '四川省', '乐山市', '五通桥区', '0833', 3, 155);
+INSERT INTO `sys_areas_info` VALUES (517, '四川省', '自贡市', '荣县', '0813', 3, 375);
+INSERT INTO `sys_areas_info` VALUES (518, '云南省', '思茅市', '景谷傣族彝族自治县', NULL, 3, 168);
+INSERT INTO `sys_areas_info` VALUES (519, '天津市', '天津市', '津南区', '0', 3, 252);
+INSERT INTO `sys_areas_info` VALUES (520, '北京市', '北京市', '顺义区', '010', 3, 368);
+INSERT INTO `sys_areas_info` VALUES (521, '四川省', '成都市', '金牛区', '028', 3, 106);
+INSERT INTO `sys_areas_info` VALUES (522, '广西壮族自治区', '防城港市', '东兴市', '0770', 3, 410);
+INSERT INTO `sys_areas_info` VALUES (523, '山西省', '临汾市', '乡宁县', '0357', 3, 238);
+INSERT INTO `sys_areas_info` VALUES (524, '广东省', '茂名市', '茂南区', '0668', 3, 221);
+INSERT INTO `sys_areas_info` VALUES (525, '河北省', '邢台市', '宁晋县', '0', 3, 151);
+INSERT INTO `sys_areas_info` VALUES (526, '江西省', '吉安市', '永新县', '0796', 3, 332);
+INSERT INTO `sys_areas_info` VALUES (527, '广东省', '阳江市', '江城区', '0662', 3, 413);
+INSERT INTO `sys_areas_info` VALUES (528, '广东省', '河源市', '和平县', '0762', 3, 374);
+INSERT INTO `sys_areas_info` VALUES (529, '江苏省', '徐州市', '鼓楼区', '0516', 3, 130);
+INSERT INTO `sys_areas_info` VALUES (530, '贵州省', '安顺市', '西秀区', '0853', 3, 347);
+INSERT INTO `sys_areas_info` VALUES (531, '福建省', '南平市', '松溪县', '0599', 3, 119);
+INSERT INTO `sys_areas_info` VALUES (532, '云南省', '曲靖市', '富源县', '0874', 3, 420);
+INSERT INTO `sys_areas_info` VALUES (533, '贵州省', '铜仁地区', '印江土家族苗族自治县', '0856', 3, 272);
+INSERT INTO `sys_areas_info` VALUES (534, '吉林省', '吉林市', '桦甸市', '0432', 3, 240);
+INSERT INTO `sys_areas_info` VALUES (535, '河北省', '唐山市', '遵化市', '0', 3, 277);
+INSERT INTO `sys_areas_info` VALUES (536, '云南省', '德宏傣族景颇族自治州', '盈江县', '0692', 3, 184);
+INSERT INTO `sys_areas_info` VALUES (537, '浙江省', '金华市', '浦江县', '0579', 3, 152);
+INSERT INTO `sys_areas_info` VALUES (538, '广西壮族自治区', '桂林市', '全州县', '0773', 3, 400);
+INSERT INTO `sys_areas_info` VALUES (539, '河北省', '沧州市', '黄骅市', '0', 3, 286);
+INSERT INTO `sys_areas_info` VALUES (540, '河北省', '衡水市', '景县', '0', 3, 138);
+INSERT INTO `sys_areas_info` VALUES (541, '山西省', '临汾市', '霍州市', '0357', 3, 238);
+INSERT INTO `sys_areas_info` VALUES (542, '山西省', '晋城市', '阳城县', '0356', 3, 376);
+INSERT INTO `sys_areas_info` VALUES (543, '湖南省', '岳阳市', '汨罗市', '0730', 3, 393);
+INSERT INTO `sys_areas_info` VALUES (544, '吉林省', '松原市', '前郭尔罗斯蒙古族自治县', '0438', 3, 333);
+INSERT INTO `sys_areas_info` VALUES (545, '黑龙江省', '大庆市', '肇州县', '0459', 3, 415);
+INSERT INTO `sys_areas_info` VALUES (546, '四川省', '成都市', '金堂县', '028', 3, 106);
+INSERT INTO `sys_areas_info` VALUES (547, '辽宁省', '大连市', '长海县', '0', 3, 262);
+INSERT INTO `sys_areas_info` VALUES (548, '湖北省', '十堰市', '竹溪县', '0719', 3, 185);
+INSERT INTO `sys_areas_info` VALUES (549, '浙江省', '杭州市', '临安市', '0571', 3, 263);
+INSERT INTO `sys_areas_info` VALUES (550, '河南省', '驻马店市', '平舆县', '0396', 3, 282);
+INSERT INTO `sys_areas_info` VALUES (551, '内蒙古自治区', '鄂尔多斯市', '准格尔旗', '0477', 3, 384);
+INSERT INTO `sys_areas_info` VALUES (552, '浙江省', '台州市', '仙居县', '0576', 3, 289);
+INSERT INTO `sys_areas_info` VALUES (553, '河北省', '唐山市', '古冶区', '0', 3, 277);
+INSERT INTO `sys_areas_info` VALUES (554, '辽宁省', '铁岭市', '银州区', '0410', 3, 223);
+INSERT INTO `sys_areas_info` VALUES (555, '河南省', '周口市', '郸城县', '0394', 3, 102);
+INSERT INTO `sys_areas_info` VALUES (556, '北京市', '北京市', '丰台区', '010', 3, 368);
+INSERT INTO `sys_areas_info` VALUES (557, '广东省', '清远市', '清新县', '0763', 3, 196);
+INSERT INTO `sys_areas_info` VALUES (558, '河南省', '洛阳市', '偃师市', '0379', 3, 214);
+INSERT INTO `sys_areas_info` VALUES (559, '黑龙江省', '大庆市', '大同区', '0459', 3, 415);
+INSERT INTO `sys_areas_info` VALUES (560, '黑龙江省', '齐齐哈尔市', '泰来县', '0452', 3, 195);
+INSERT INTO `sys_areas_info` VALUES (561, '山西省', '运城市', '芮城县', '0359', 3, 236);
+INSERT INTO `sys_areas_info` VALUES (562, '福建省', '莆田市', '城厢区', '0594', 3, 346);
+INSERT INTO `sys_areas_info` VALUES (563, '河南省', '濮阳市', '南乐县', '0393', 3, 319);
+INSERT INTO `sys_areas_info` VALUES (564, '辽宁省', '盘锦市', '兴隆台区', '0427', 3, 147);
+INSERT INTO `sys_areas_info` VALUES (565, '山东省', '菏泽市', '郓城县', '0530', 3, 216);
+INSERT INTO `sys_areas_info` VALUES (566, '黑龙江省', '佳木斯市', '桦川县', '0454', 3, 105);
+INSERT INTO `sys_areas_info` VALUES (567, '广西壮族自治区', '柳州市', '柳北区', '0772', 3, 388);
+INSERT INTO `sys_areas_info` VALUES (568, '山西省', '吕梁市', '交城县', '0358', 3, 227);
+INSERT INTO `sys_areas_info` VALUES (569, '广西壮族自治区', '桂林市', '灵川县', '0773', 3, 400);
+INSERT INTO `sys_areas_info` VALUES (570, '广西壮族自治区', '百色市', '靖西县', '0776', 3, 392);
+INSERT INTO `sys_areas_info` VALUES (571, '安徽省', '蚌埠市', '怀远县', '0552', 3, 372);
+INSERT INTO `sys_areas_info` VALUES (572, '江西省', '吉安市', '井冈山市', '0796', 3, 332);
+INSERT INTO `sys_areas_info` VALUES (573, '江西省', '南昌市', '新建县', '0791', 3, 200);
+INSERT INTO `sys_areas_info` VALUES (574, '贵州省', '遵义市', '凤冈县', '0852', 3, 288);
+INSERT INTO `sys_areas_info` VALUES (575, '江西省', '宜春市', '铜鼓县', '0795', 3, 142);
+INSERT INTO `sys_areas_info` VALUES (576, '陕西省', '宝鸡市', '凤翔县', '0917', 3, 232);
+INSERT INTO `sys_areas_info` VALUES (577, '广东省', '韶关市', '武江区', '0751', 3, 149);
+INSERT INTO `sys_areas_info` VALUES (578, '四川省', '凉山彝族自治州', '越西县', '0834', 3, 173);
+INSERT INTO `sys_areas_info` VALUES (579, '河北省', '沧州市', '沧县', '0', 3, 286);
+INSERT INTO `sys_areas_info` VALUES (580, '安徽省', '阜阳市', '太和县', '0558', 3, 265);
+INSERT INTO `sys_areas_info` VALUES (581, '云南省', '临沧市', '凤庆县', '0883', 3, 270);
+INSERT INTO `sys_areas_info` VALUES (582, '浙江省', '丽水市', '缙云县', '0578', 3, 365);
+INSERT INTO `sys_areas_info` VALUES (583, '西藏自治区', '日喀则地区', '日喀则市', '0892', 3, 187);
+INSERT INTO `sys_areas_info` VALUES (584, '云南省', '昆明市', '安宁市', '0871', 3, 369);
+INSERT INTO `sys_areas_info` VALUES (585, '湖北省', '武汉市', '蔡甸区', '027', 3, 113);
+INSERT INTO `sys_areas_info` VALUES (586, '宁夏回族自治区', '吴忠市', '盐池县', '0953', 3, 383);
+INSERT INTO `sys_areas_info` VALUES (587, '云南省', '大理白族自治州', '巍山彝族回族自治县', '0872', 3, 191);
+INSERT INTO `sys_areas_info` VALUES (588, '湖南省', '邵阳市', '邵东县', '0739', 3, 274);
+INSERT INTO `sys_areas_info` VALUES (589, '福建省', '福州市', '连江县', '0591', 3, 177);
+INSERT INTO `sys_areas_info` VALUES (590, '四川省', '达州市', '大竹县', '0818', 3, 317);
+INSERT INTO `sys_areas_info` VALUES (591, '浙江省', '杭州市', '西湖区', '0571', 3, 263);
+INSERT INTO `sys_areas_info` VALUES (592, '河北省', '石家庄市', '栾城县', '0', 3, 264);
+INSERT INTO `sys_areas_info` VALUES (593, '湖南省', '永州市', '东安县', '0746', 3, 408);
+INSERT INTO `sys_areas_info` VALUES (594, '安徽省', '铜陵市', '铜官山区', '0562', 3, 132);
+INSERT INTO `sys_areas_info` VALUES (595, '广东省', '汕头市', '龙湖区', '0754', 3, 215);
+INSERT INTO `sys_areas_info` VALUES (596, '四川省', '德阳市', '什邡市', '0838', 3, 178);
+INSERT INTO `sys_areas_info` VALUES (597, '云南省', '临沧市', '临翔区', '0883', 3, 270);
+INSERT INTO `sys_areas_info` VALUES (598, '内蒙古自治区', '鄂尔多斯市', '东胜区', '0477', 3, 384);
+INSERT INTO `sys_areas_info` VALUES (599, '福建省', '南平市', '光泽县', '0599', 3, 119);
+INSERT INTO `sys_areas_info` VALUES (600, '四川省', '南充市', '营山县', '0817', 3, 350);
+INSERT INTO `sys_areas_info` VALUES (601, '山西省', '大同市', '城区', '0352', 3, 108);
+INSERT INTO `sys_areas_info` VALUES (602, '云南省', '红河哈尼族彝族自治州', '元阳县', '0873', 3, 399);
+INSERT INTO `sys_areas_info` VALUES (603, '浙江省', '温州市', '瓯海区', '0577', 3, 315);
+INSERT INTO `sys_areas_info` VALUES (604, '河北省', '邯郸市', '魏县', '0', 3, 348);
+INSERT INTO `sys_areas_info` VALUES (605, '山东省', '泰安市', '岱岳区', '0538', 3, 192);
+INSERT INTO `sys_areas_info` VALUES (606, '广西壮族自治区', '百色市', '乐业县', '0776', 3, 392);
+INSERT INTO `sys_areas_info` VALUES (607, '四川省', '南充市', '嘉陵区', '0817', 3, 350);
+INSERT INTO `sys_areas_info` VALUES (608, '黑龙江省', '牡丹江市', '东安区', '0453', 3, 260);
+INSERT INTO `sys_areas_info` VALUES (609, '山东省', '聊城市', '东昌府区', '0635', 3, 402);
+INSERT INTO `sys_areas_info` VALUES (610, '青海省', '西宁市', '城北区', '0971', 3, 193);
+INSERT INTO `sys_areas_info` VALUES (611, '云南省', '红河哈尼族彝族自治州', '个旧市', '0873', 3, 399);
+INSERT INTO `sys_areas_info` VALUES (612, '江苏省', '南京市', '雨花台区', '025', 3, 313);
+INSERT INTO `sys_areas_info` VALUES (613, '湖北省', '荆门市', '东宝区', '0724', 3, 153);
+INSERT INTO `sys_areas_info` VALUES (614, '山西省', '吕梁市', '中阳县', '0358', 3, 227);
+INSERT INTO `sys_areas_info` VALUES (615, '广西壮族自治区', '柳州市', '柳江县', '0772', 3, 388);
+INSERT INTO `sys_areas_info` VALUES (616, '河北省', '石家庄市', '行唐县', '0', 3, 264);
+INSERT INTO `sys_areas_info` VALUES (617, '山西省', '运城市', '闻喜县', '0359', 3, 236);
+INSERT INTO `sys_areas_info` VALUES (618, '江西省', '赣州市', '兴国县', '0797', 3, 336);
+INSERT INTO `sys_areas_info` VALUES (619, '浙江省', '嘉兴市', '秀城区', '0573', 3, 107);
+INSERT INTO `sys_areas_info` VALUES (620, '浙江省', '宁波市', '镇海区', '0574', 3, 217);
+INSERT INTO `sys_areas_info` VALUES (621, '湖北省', '黄冈市', '罗田县', '0713', 3, 397);
+INSERT INTO `sys_areas_info` VALUES (622, '辽宁省', '大连市', '庄河市', '0', 3, 262);
+INSERT INTO `sys_areas_info` VALUES (623, '河南省', '漯河市', '郾城区', '0395', 3, 396);
+INSERT INTO `sys_areas_info` VALUES (624, '吉林省', '长春市', '南关区', '0431', 3, 112);
+INSERT INTO `sys_areas_info` VALUES (625, '安徽省', '黄山市', '休宁县', '0559', 3, 279);
+INSERT INTO `sys_areas_info` VALUES (626, '天津市', '天津市', '宝坻区', '0', 3, 252);
+INSERT INTO `sys_areas_info` VALUES (627, '山西省', '晋中市', '祁县', '0354', 3, 139);
+INSERT INTO `sys_areas_info` VALUES (628, '山东省', '青岛市', '崂山区', '0532', 3, 284);
+INSERT INTO `sys_areas_info` VALUES (629, '广西壮族自治区', '梧州市', '岑溪市', '0774', 3, 280);
+INSERT INTO `sys_areas_info` VALUES (630, '安徽省', '安庆市', '怀宁县', '0556', 3, 246);
+INSERT INTO `sys_areas_info` VALUES (631, '甘肃省', '张掖市', '山丹县', '0936', 3, 362);
+INSERT INTO `sys_areas_info` VALUES (632, '黑龙江省', '黑河市', '嫩江县', '0456', 3, 131);
+INSERT INTO `sys_areas_info` VALUES (633, '浙江省', '嘉兴市', '桐乡市', '0573', 3, 107);
+INSERT INTO `sys_areas_info` VALUES (634, '河北省', '张家口市', '尚义县', '0', 3, 162);
+INSERT INTO `sys_areas_info` VALUES (635, '湖北省', '十堰市', '张湾区', '0719', 3, 185);
+INSERT INTO `sys_areas_info` VALUES (636, '云南省', '临沧市', '双江拉祜族佤族布朗族傣族自治县', '0883', 3, 270);
+INSERT INTO `sys_areas_info` VALUES (637, '江西省', '上饶市', '婺源县', '0793', 3, 234);
+INSERT INTO `sys_areas_info` VALUES (638, '四川省', '南充市', '蓬安县', '0817', 3, 350);
+INSERT INTO `sys_areas_info` VALUES (639, '内蒙古自治区', '呼和浩特市', '赛罕区', '0471', 3, 422);
+INSERT INTO `sys_areas_info` VALUES (640, '陕西省', '西安市', '户县', '029', 3, 334);
+INSERT INTO `sys_areas_info` VALUES (641, '河北省', '邯郸市', '永年县', '0', 3, 348);
+INSERT INTO `sys_areas_info` VALUES (642, '辽宁省', '锦州市', '古塔区', '0416', 3, 243);
+INSERT INTO `sys_areas_info` VALUES (643, '河南省', '信阳市', '固始县', '0376', 3, 269);
+INSERT INTO `sys_areas_info` VALUES (644, '福建省', '宁德市', '霞浦县', '0593', 3, 202);
+INSERT INTO `sys_areas_info` VALUES (645, '辽宁省', '丹东市', '振安区', '0415', 3, 305);
+INSERT INTO `sys_areas_info` VALUES (646, '四川省', '达州市', '渠县', '0818', 3, 317);
+INSERT INTO `sys_areas_info` VALUES (647, '浙江省', '丽水市', '松阳县', '0578', 3, 365);
+INSERT INTO `sys_areas_info` VALUES (648, '山东省', '泰安市', '宁阳县', '0538', 3, 192);
+INSERT INTO `sys_areas_info` VALUES (649, '辽宁省', '营口市', '大石桥市', '0417', 3, 166);
+INSERT INTO `sys_areas_info` VALUES (650, '陕西省', '榆林市', '榆阳区', '0912', 3, 421);
+INSERT INTO `sys_areas_info` VALUES (651, '广西壮族自治区', '百色市', '田东县', '0776', 3, 392);
+INSERT INTO `sys_areas_info` VALUES (652, '广东省', '广州市', '海珠区', '020', 3, 129);
+INSERT INTO `sys_areas_info` VALUES (653, '陕西省', '渭南市', '合阳县', '0913', 3, 205);
+INSERT INTO `sys_areas_info` VALUES (654, '江苏省', '苏州市', '吴江市', '0512', 3, 281);
+INSERT INTO `sys_areas_info` VALUES (655, '广西壮族自治区', '来宾市', '忻城县', '0772', 3, 225);
+INSERT INTO `sys_areas_info` VALUES (656, '四川省', '达州市', '通川区', '0818', 3, 317);
+INSERT INTO `sys_areas_info` VALUES (657, '河北省', '邯郸市', '邯郸县', '0', 3, 348);
+INSERT INTO `sys_areas_info` VALUES (658, '黑龙江省', '佳木斯市', '富锦市', '0454', 3, 105);
+INSERT INTO `sys_areas_info` VALUES (659, '广东省', '深圳市', '南山区', '0755', 3, 118);
+INSERT INTO `sys_areas_info` VALUES (660, '湖北省', '武汉市', '新洲区', '027', 3, 113);
+INSERT INTO `sys_areas_info` VALUES (661, '广西壮族自治区', '南宁市', '邕宁区', '0771', 3, 242);
+INSERT INTO `sys_areas_info` VALUES (662, '河北省', '邢台市', '临城县', '0', 3, 151);
+INSERT INTO `sys_areas_info` VALUES (663, '江西省', '吉安市', '泰和县', '0796', 3, 332);
+INSERT INTO `sys_areas_info` VALUES (664, '河北省', '保定市', '清苑县', '0', 3, 209);
+INSERT INTO `sys_areas_info` VALUES (665, '甘肃省', '武威市', '凉州区', '0935', 3, 294);
+INSERT INTO `sys_areas_info` VALUES (666, '江苏省', '宿迁市', '宿城区', '0527', 3, 285);
+INSERT INTO `sys_areas_info` VALUES (667, '河北省', '唐山市', '乐亭县', '0', 3, 277);
+INSERT INTO `sys_areas_info` VALUES (668, '辽宁省', '朝阳市', '双塔区', '0421', 3, 174);
+INSERT INTO `sys_areas_info` VALUES (669, '河北省', '承德市', '兴隆县', '0', 3, 127);
+INSERT INTO `sys_areas_info` VALUES (670, '安徽省', '宿州市', '灵璧县', '0557', 3, 181);
+INSERT INTO `sys_areas_info` VALUES (671, '甘肃省', '兰州市', '七里河区', '0931', 3, 228);
+INSERT INTO `sys_areas_info` VALUES (672, '云南省', '昆明市', '官渡区', '0871', 3, 369);
+INSERT INTO `sys_areas_info` VALUES (673, '安徽省', '亳州市', '利辛县', '0558', 3, 249);
+INSERT INTO `sys_areas_info` VALUES (674, '河北省', '秦皇岛市', '海港区', '0', 3, 163);
+INSERT INTO `sys_areas_info` VALUES (675, '云南省', '文山壮族苗族自治州', '丘北县', '0876', 3, 426);
+INSERT INTO `sys_areas_info` VALUES (676, '河北省', '邯郸市', '磁县', '0', 3, 348);
+INSERT INTO `sys_areas_info` VALUES (677, '广东省', '清远市', '清城区', '0763', 3, 196);
+INSERT INTO `sys_areas_info` VALUES (678, '山西省', '运城市', '万荣县', '0359', 3, 236);
+INSERT INTO `sys_areas_info` VALUES (679, '天津市', '天津市', '北辰区', '0', 3, 252);
+INSERT INTO `sys_areas_info` VALUES (680, '四川省', '绵阳市', '江油市', '0816', 3, 224);
+INSERT INTO `sys_areas_info` VALUES (681, '江西省', '南昌市', '进贤县', '0791', 3, 200);
+INSERT INTO `sys_areas_info` VALUES (682, '广西壮族自治区', '南宁市', '宾阳县', '0771', 3, 242);
+INSERT INTO `sys_areas_info` VALUES (683, '河北省', '张家口市', '涿鹿县', '0', 3, 162);
+INSERT INTO `sys_areas_info` VALUES (684, '甘肃省', '庆阳市', '庆城县', '0934', 3, 198);
+INSERT INTO `sys_areas_info` VALUES (685, '山东省', '东营市', '东营区', '0546', 3, 140);
+INSERT INTO `sys_areas_info` VALUES (686, '河南省', '郑州市', '新密市', '0371', 3, 308);
+INSERT INTO `sys_areas_info` VALUES (687, '贵州省', '黔东南苗族侗族自治州', '锦屏县', '0855', 3, 325);
+INSERT INTO `sys_areas_info` VALUES (688, '辽宁省', '锦州市', '黑山县', '0416', 3, 243);
+INSERT INTO `sys_areas_info` VALUES (689, '河南省', '平顶山市', '鲁山县', '0375', 3, 117);
+INSERT INTO `sys_areas_info` VALUES (690, '湖北省', '荆州市', '沙市区', '0716', 3, 361);
+INSERT INTO `sys_areas_info` VALUES (691, '山东省', '烟台市', '芝罘区', '0535', 3, 261);
+INSERT INTO `sys_areas_info` VALUES (692, '内蒙古自治区', '阿拉善盟', '阿拉善左旗', '0483', 3, 123);
+INSERT INTO `sys_areas_info` VALUES (693, '江苏省', '常州市', '武进区', '0519', 3, 304);
+INSERT INTO `sys_areas_info` VALUES (694, '内蒙古自治区', '包头市', '昆都仑区', '0472', 3, 230);
+INSERT INTO `sys_areas_info` VALUES (695, '山西省', '长治市', '沁县', '0355', 3, 394);
+INSERT INTO `sys_areas_info` VALUES (696, '河南省', '郑州市', '二七区', '0371', 3, 308);
+INSERT INTO `sys_areas_info` VALUES (697, '辽宁省', '铁岭市', '西丰县', '0410', 3, 223);
+INSERT INTO `sys_areas_info` VALUES (698, '湖北省', '随州市', '广水市', '0722', 3, 324);
+INSERT INTO `sys_areas_info` VALUES (699, '广西壮族自治区', '桂林市', '七星区', '0773', 3, 400);
+INSERT INTO `sys_areas_info` VALUES (700, '上海市', '上海市', '杨浦区', '021', 3, 287);
+INSERT INTO `sys_areas_info` VALUES (701, '山西省', '运城市', '临猗县', '0359', 3, 236);
+INSERT INTO `sys_areas_info` VALUES (702, '甘肃省', '庆阳市', '西峰区', '0934', 3, 198);
+INSERT INTO `sys_areas_info` VALUES (703, '江西省', '赣州市', '宁都县', '0797', 3, 336);
+INSERT INTO `sys_areas_info` VALUES (704, '江西省', '宜春市', '樟树市', '0795', 3, 142);
+INSERT INTO `sys_areas_info` VALUES (705, '福建省', '福州市', '闽侯县', '0591', 3, 177);
+INSERT INTO `sys_areas_info` VALUES (706, '广东省', '广州市', '萝岗区', '020', 3, 129);
+INSERT INTO `sys_areas_info` VALUES (707, '河北省', '衡水市', '武邑县', '0', 3, 138);
+INSERT INTO `sys_areas_info` VALUES (708, '云南省', '昭通市', '彝良县', '0870', 3, 389);
+INSERT INTO `sys_areas_info` VALUES (709, '四川省', '成都市', '新都区', '028', 3, 106);
+INSERT INTO `sys_areas_info` VALUES (710, '江苏省', '无锡市', '滨湖区', '0510', 3, 364);
+INSERT INTO `sys_areas_info` VALUES (711, '广西壮族自治区', '梧州市', '苍梧县', '0774', 3, 280);
+INSERT INTO `sys_areas_info` VALUES (712, '河北省', '廊坊市', '永清县', '0', 3, 176);
+INSERT INTO `sys_areas_info` VALUES (713, '浙江省', '湖州市', '安吉县', '0572', 3, 159);
+INSERT INTO `sys_areas_info` VALUES (714, '广东省', '肇庆市', '端州区', '0758', 3, 144);
+INSERT INTO `sys_areas_info` VALUES (715, '四川省', '眉山市', '东坡区', '028', 3, 342);
+INSERT INTO `sys_areas_info` VALUES (716, '辽宁省', '丹东市', '东港市', '0415', 3, 305);
+INSERT INTO `sys_areas_info` VALUES (717, '湖南省', '长沙市', '开福区', '0731', 3, 201);
+INSERT INTO `sys_areas_info` VALUES (718, '湖北省', '咸宁市', '嘉鱼县', '0715', 3, 271);
+INSERT INTO `sys_areas_info` VALUES (719, '湖北省', '荆州市', '石首市', '0716', 3, 361);
+INSERT INTO `sys_areas_info` VALUES (720, '广西壮族自治区', '玉林市', '陆川县', '0775', 3, 338);
+INSERT INTO `sys_areas_info` VALUES (721, '江苏省', '淮安市', '洪泽县', '0517', 3, 360);
+INSERT INTO `sys_areas_info` VALUES (722, '广东省', '珠海市', '金湾区', '0756', 3, 134);
+INSERT INTO `sys_areas_info` VALUES (723, '江苏省', '常州市', '天宁区', '0519', 3, 304);
+INSERT INTO `sys_areas_info` VALUES (724, '河南省', '三门峡市', '陕县', '0398', 3, 328);
+INSERT INTO `sys_areas_info` VALUES (725, '江苏省', '泰州市', '高港区', '0523', 3, 311);
+INSERT INTO `sys_areas_info` VALUES (726, '广东省', '江门市', '开平市', '0750', 3, 398);
+INSERT INTO `sys_areas_info` VALUES (727, '辽宁省', '盘锦市', '盘山县', '0427', 3, 147);
+INSERT INTO `sys_areas_info` VALUES (728, '广西壮族自治区', '钦州市', '灵山县', '0777', 3, 212);
+INSERT INTO `sys_areas_info` VALUES (729, '贵州省', '遵义市', '湄潭县', '0852', 3, 288);
+INSERT INTO `sys_areas_info` VALUES (730, '甘肃省', '张掖市', '甘州区', '0936', 3, 362);
+INSERT INTO `sys_areas_info` VALUES (731, '山西省', '晋中市', '灵石县', '0354', 3, 139);
+INSERT INTO `sys_areas_info` VALUES (732, '辽宁省', '丹东市', '凤城市', '0415', 3, 305);
+INSERT INTO `sys_areas_info` VALUES (733, '浙江省', '杭州市', '滨江区', '0571', 3, 263);
+INSERT INTO `sys_areas_info` VALUES (734, '辽宁省', '鞍山市', '海城市', '0', 3, 301);
+INSERT INTO `sys_areas_info` VALUES (735, '辽宁省', '朝阳市', '朝阳县', '0421', 3, 174);
+INSERT INTO `sys_areas_info` VALUES (736, '甘肃省', '天水市', '秦安县', '0938', 3, 179);
+INSERT INTO `sys_areas_info` VALUES (737, '河北省', '保定市', '望都县', '0', 3, 209);
+INSERT INTO `sys_areas_info` VALUES (738, '山东省', '菏泽市', '巨野县', '0530', 3, 216);
+INSERT INTO `sys_areas_info` VALUES (739, '广西壮族自治区', '玉林市', '兴业县', '0775', 3, 338);
+INSERT INTO `sys_areas_info` VALUES (740, '浙江省', '湖州市', '南浔区', '0572', 3, 159);
+INSERT INTO `sys_areas_info` VALUES (741, '云南省', '昭通市', '大关县', '0870', 3, 389);
+INSERT INTO `sys_areas_info` VALUES (742, '河南省', '安阳市', '滑县', '0372', 3, 353);
+INSERT INTO `sys_areas_info` VALUES (743, '河北省', '衡水市', '深州市', '0', 3, 138);
+INSERT INTO `sys_areas_info` VALUES (744, '四川省', '眉山市', '彭山县', '028', 3, 342);
+INSERT INTO `sys_areas_info` VALUES (745, '广东省', '汕头市', '濠江区', '0754', 3, 215);
+INSERT INTO `sys_areas_info` VALUES (746, '河北省', '秦皇岛市', '青龙满族自治县', '0', 3, 163);
+INSERT INTO `sys_areas_info` VALUES (747, '浙江省', '温州市', '瑞安市', '0577', 3, 315);
+INSERT INTO `sys_areas_info` VALUES (748, '安徽省', '滁州市', '明光市', '0550', 3, 380);
+INSERT INTO `sys_areas_info` VALUES (749, '河北省', '廊坊市', '三河市', '0', 3, 176);
+INSERT INTO `sys_areas_info` VALUES (750, '福建省', '泉州市', '南安市', '0595', 3, 161);
+INSERT INTO `sys_areas_info` VALUES (751, '江苏省', '盐城市', '滨海县', '0515', 3, 329);
+INSERT INTO `sys_areas_info` VALUES (752, '云南省', '西双版纳傣族自治州', '勐腊县', '0691', 3, 390);
+INSERT INTO `sys_areas_info` VALUES (753, '河南省', '焦作市', '武陟县', '0391', 3, 175);
+INSERT INTO `sys_areas_info` VALUES (754, '重庆市', '重庆市', '巴南区', '023', 3, 363);
+INSERT INTO `sys_areas_info` VALUES (755, '河南省', '平顶山市', '宝丰县', '0375', 3, 117);
+INSERT INTO `sys_areas_info` VALUES (756, '河北省', '衡水市', '安平县', '0', 3, 138);
+INSERT INTO `sys_areas_info` VALUES (757, '福建省', '漳州市', '长泰县', '0596', 3, 150);
+INSERT INTO `sys_areas_info` VALUES (758, '重庆市', '重庆市', '长寿区', '023', 3, 363);
+INSERT INTO `sys_areas_info` VALUES (759, '重庆市', '重庆市', '璧山县', '023', 3, 363);
+INSERT INTO `sys_areas_info` VALUES (760, '河南省', '焦作市', '解放区', '0391', 3, 175);
+INSERT INTO `sys_areas_info` VALUES (761, '贵州省', '黔西南布依族苗族自治州', '安龙县', '0859', 3, 297);
+INSERT INTO `sys_areas_info` VALUES (762, '四川省', '成都市', '双流县', '028', 3, 106);
+INSERT INTO `sys_areas_info` VALUES (763, '河南省', '焦作市', '济源市', '0391', 3, 175);
+INSERT INTO `sys_areas_info` VALUES (764, '江西省', '抚州市', '黎川县', '0794', 3, 266);
+INSERT INTO `sys_areas_info` VALUES (765, '福建省', '泉州市', '晋江市', '0595', 3, 161);
+INSERT INTO `sys_areas_info` VALUES (766, '辽宁省', '葫芦岛市', '其他', '0429', 3, 213);
+INSERT INTO `sys_areas_info` VALUES (767, '辽宁省', '抚顺市', '东洲区', '0', 3, 158);
+INSERT INTO `sys_areas_info` VALUES (768, '河北省', '保定市', '定兴县', '0', 3, 209);
+INSERT INTO `sys_areas_info` VALUES (769, '安徽省', '合肥市', '蜀山区', '0551', 3, 299);
+INSERT INTO `sys_areas_info` VALUES (770, '河北省', '秦皇岛市', '北戴河区', '0', 3, 163);
+INSERT INTO `sys_areas_info` VALUES (771, '江苏省', '泰州市', '兴化市', '0523', 3, 311);
+INSERT INTO `sys_areas_info` VALUES (772, '陕西省', '西安市', '雁塔区', '029', 3, 334);
+INSERT INTO `sys_areas_info` VALUES (773, '河北省', '廊坊市', '香河县', '0', 3, 176);
+INSERT INTO `sys_areas_info` VALUES (774, '天津市', '天津市', '东丽区', '0', 3, 252);
+INSERT INTO `sys_areas_info` VALUES (775, '山西省', '运城市', '河津市', '0359', 3, 236);
+INSERT INTO `sys_areas_info` VALUES (776, '湖北省', '襄樊市', '樊城区', '0710', 3, 412);
+INSERT INTO `sys_areas_info` VALUES (777, '河北省', '邢台市', '威县', '0', 3, 151);
+INSERT INTO `sys_areas_info` VALUES (778, '云南省', '思茅市', '镇沅彝族哈尼族拉祜族自治县', NULL, 3, 168);
+INSERT INTO `sys_areas_info` VALUES (779, '重庆市', '重庆市', '九龙坡区', '023', 3, 363);
+INSERT INTO `sys_areas_info` VALUES (780, '湖南省', '衡阳市', '衡东县', '0734', 3, 116);
+INSERT INTO `sys_areas_info` VALUES (781, '天津市', '天津市', '红桥区', '0', 3, 252);
+INSERT INTO `sys_areas_info` VALUES (782, '浙江省', '台州市', '三门县', '0576', 3, 289);
+INSERT INTO `sys_areas_info` VALUES (783, '江西省', '抚州市', '南城县', '0794', 3, 266);
+INSERT INTO `sys_areas_info` VALUES (784, '陕西省', '铜川市', '耀州区', '0919', 3, 220);
+INSERT INTO `sys_areas_info` VALUES (785, '安徽省', '阜阳市', '颍州区', '0558', 3, 265);
+INSERT INTO `sys_areas_info` VALUES (786, '广西壮族自治区', '柳州市', '城中区', '0772', 3, 388);
+INSERT INTO `sys_areas_info` VALUES (787, '河南省', '漯河市', '临颍县', '0395', 3, 396);
+INSERT INTO `sys_areas_info` VALUES (788, '河南省', '郑州市', '中牟县', '0371', 3, 308);
+INSERT INTO `sys_areas_info` VALUES (789, '北京市', '北京市', '通州区', '010', 3, 368);
+INSERT INTO `sys_areas_info` VALUES (790, '黑龙江省', '大庆市', '龙凤区', '0459', 3, 415);
+INSERT INTO `sys_areas_info` VALUES (791, '河南省', '平顶山市', '汝州市', '0375', 3, 117);
+INSERT INTO `sys_areas_info` VALUES (792, '山西省', '长治市', '屯留县', '0355', 3, 394);
+INSERT INTO `sys_areas_info` VALUES (793, '山东省', '济南市', '济阳县', '0531', 3, 306);
+INSERT INTO `sys_areas_info` VALUES (794, '江苏省', '南京市', '六合区', '025', 3, 313);
+INSERT INTO `sys_areas_info` VALUES (795, '河南省', '安阳市', '安阳县', '0372', 3, 353);
+INSERT INTO `sys_areas_info` VALUES (796, '江西省', '上饶市', '德兴市', '0793', 3, 234);
+INSERT INTO `sys_areas_info` VALUES (797, '浙江省', '杭州市', '余杭区', '0571', 3, 263);
+INSERT INTO `sys_areas_info` VALUES (798, '天津市', '天津市', '河西区', '0', 3, 252);
+INSERT INTO `sys_areas_info` VALUES (799, '四川省', '宜宾市', '珙县', '0831', 3, 109);
+INSERT INTO `sys_areas_info` VALUES (800, '山西省', '太原市', '尖草坪区', '0351', 3, 154);
+INSERT INTO `sys_areas_info` VALUES (801, '安徽省', '阜阳市', '阜南县', '0558', 3, 265);
+INSERT INTO `sys_areas_info` VALUES (802, '山西省', '临汾市', '侯马市', '0357', 3, 238);
+INSERT INTO `sys_areas_info` VALUES (803, '山东省', '济宁市', '金乡县', '0537', 3, 169);
+INSERT INTO `sys_areas_info` VALUES (804, '河南省', '安阳市', '龙安区', '0372', 3, 353);
+INSERT INTO `sys_areas_info` VALUES (805, '湖南省', '湘潭市', '湘潭县', '0731', 3, 337);
+INSERT INTO `sys_areas_info` VALUES (806, '四川省', '达州市', '达县', '0818', 3, 317);
+INSERT INTO `sys_areas_info` VALUES (807, '甘肃省', '平凉市', '庄浪县', '0933', 3, 218);
+INSERT INTO `sys_areas_info` VALUES (808, '湖北省', '咸宁市', '咸安区', '0715', 3, 271);
+INSERT INTO `sys_areas_info` VALUES (809, '重庆市', '重庆市', '垫江县', '023', 3, 363);
+INSERT INTO `sys_areas_info` VALUES (810, '黑龙江省', '哈尔滨市', '香坊区', '0451', 3, 124);
+INSERT INTO `sys_areas_info` VALUES (811, '上海市', '上海市', '黄浦区', '021', 3, 287);
+INSERT INTO `sys_areas_info` VALUES (812, '吉林省', '白城市', '通榆县', '0436', 3, 343);
+INSERT INTO `sys_areas_info` VALUES (813, '四川省', '成都市', '龙泉驿区', '028', 3, 106);
+INSERT INTO `sys_areas_info` VALUES (814, '河北省', '秦皇岛市', '卢龙县', '0', 3, 163);
+INSERT INTO `sys_areas_info` VALUES (815, '重庆市', '重庆市', '铜梁县', '023', 3, 363);
+INSERT INTO `sys_areas_info` VALUES (816, '甘肃省', '酒泉市', '肃州区', '0937', 3, 409);
+INSERT INTO `sys_areas_info` VALUES (817, '河南省', '平顶山市', '新华区', '0375', 3, 117);
+INSERT INTO `sys_areas_info` VALUES (818, '湖北省', '孝感市', '其他', '0712', 3, 210);
+INSERT INTO `sys_areas_info` VALUES (819, '山东省', '日照市', '五莲县', '0633', 3, 115);
+INSERT INTO `sys_areas_info` VALUES (820, '四川省', '宜宾市', '江安县', '0831', 3, 109);
+INSERT INTO `sys_areas_info` VALUES (821, '福建省', '龙岩市', '其他', '0597', 3, 267);
+INSERT INTO `sys_areas_info` VALUES (822, '河南省', '三门峡市', '灵宝市', '0398', 3, 328);
+INSERT INTO `sys_areas_info` VALUES (823, '广东省', '肇庆市', '四会市', '0758', 3, 144);
+INSERT INTO `sys_areas_info` VALUES (824, '内蒙古自治区', '兴安盟', '科尔沁右翼前旗', '0482', 3, 248);
+INSERT INTO `sys_areas_info` VALUES (825, '湖南省', '衡阳市', '雁峰区', '0734', 3, 116);
+INSERT INTO `sys_areas_info` VALUES (826, '山西省', '太原市', '清徐县', '0351', 3, 154);
+INSERT INTO `sys_areas_info` VALUES (827, '福建省', '龙岩市', '长汀县', '0597', 3, 267);
+INSERT INTO `sys_areas_info` VALUES (828, '辽宁省', '营口市', '盖州市', '0417', 3, 166);
+INSERT INTO `sys_areas_info` VALUES (829, '陕西省', '商洛市', '洛南县', '0914', 3, 323);
+INSERT INTO `sys_areas_info` VALUES (830, '河南省', '焦作市', '修武县', '0391', 3, 175);
+INSERT INTO `sys_areas_info` VALUES (831, '湖北省', '孝感市', '应城市', '0712', 3, 210);
+INSERT INTO `sys_areas_info` VALUES (832, '甘肃省', '白银市', '平川区', '0943', 3, 157);
+INSERT INTO `sys_areas_info` VALUES (833, '江苏省', '南通市', '海门市', '0513', 3, 416);
+INSERT INTO `sys_areas_info` VALUES (834, '安徽省', '淮南市', '谢家集区', '0554', 3, 367);
+INSERT INTO `sys_areas_info` VALUES (835, '内蒙古自治区', '兴安盟', '科尔沁右翼中旗', '0482', 3, 248);
+INSERT INTO `sys_areas_info` VALUES (836, '广西壮族自治区', '河池市', '南丹县', '0778', 3, 197);
+INSERT INTO `sys_areas_info` VALUES (837, '江西省', '吉安市', '吉安县', '0796', 3, 332);
+INSERT INTO `sys_areas_info` VALUES (838, '辽宁省', '鞍山市', '立山区', '0', 3, 301);
+INSERT INTO `sys_areas_info` VALUES (839, '河北省', '邢台市', '巨鹿县', '0', 3, 151);
+INSERT INTO `sys_areas_info` VALUES (840, '四川省', '达州市', '开江县', '0818', 3, 317);
+INSERT INTO `sys_areas_info` VALUES (841, '河北省', '廊坊市', '霸州市', '0', 3, 176);
+INSERT INTO `sys_areas_info` VALUES (842, '山西省', '朔州市', '平鲁区', '0349', 3, 290);
+INSERT INTO `sys_areas_info` VALUES (843, '辽宁省', '锦州市', '凌海市', '0416', 3, 243);
+INSERT INTO `sys_areas_info` VALUES (844, '湖北省', '荆州市', '监利县', '0716', 3, 361);
+INSERT INTO `sys_areas_info` VALUES (845, '山东省', '临沂市', '河东区', '0539', 3, 312);
+INSERT INTO `sys_areas_info` VALUES (846, '河北省', '石家庄市', '元氏县', '0', 3, 264);
+INSERT INTO `sys_areas_info` VALUES (847, '上海市', '上海市', '闵行区', '021', 3, 287);
+INSERT INTO `sys_areas_info` VALUES (848, '吉林省', '白城市', '洮北区', '0436', 3, 343);
+INSERT INTO `sys_areas_info` VALUES (849, '云南省', '思茅市', '西盟佤族自治县', NULL, 3, 168);
+INSERT INTO `sys_areas_info` VALUES (850, '广东省', '江门市', '蓬江区', '0750', 3, 398);
+INSERT INTO `sys_areas_info` VALUES (851, '贵州省', '毕节地区', '大方县', '0857', 3, 318);
+INSERT INTO `sys_areas_info` VALUES (852, '河南省', '南阳市', '西峡县', '0377', 3, 405);
+INSERT INTO `sys_areas_info` VALUES (853, '辽宁省', '抚顺市', '望花区', '0', 3, 158);
+INSERT INTO `sys_areas_info` VALUES (854, '山西省', '长治市', '城区', '0355', 3, 394);
+INSERT INTO `sys_areas_info` VALUES (855, '广东省', '清远市', '佛冈县', '0763', 3, 196);
+INSERT INTO `sys_areas_info` VALUES (856, '河北省', '石家庄市', '鹿泉市', '0', 3, 264);
+INSERT INTO `sys_areas_info` VALUES (857, '河南省', '南阳市', '桐柏县', '0377', 3, 405);
+INSERT INTO `sys_areas_info` VALUES (858, '辽宁省', '本溪市', '本溪满族自治县', '0414', 3, 141);
+INSERT INTO `sys_areas_info` VALUES (859, '浙江省', '衢州市', '龙游县', '0570', 3, 257);
+INSERT INTO `sys_areas_info` VALUES (860, '福建省', '莆田市', '秀屿区', '0594', 3, 346);
+INSERT INTO `sys_areas_info` VALUES (861, '江苏省', '宿迁市', '泗洪县', '0527', 3, 285);
+INSERT INTO `sys_areas_info` VALUES (862, '江苏省', '淮安市', '涟水县', '0517', 3, 360);
+INSERT INTO `sys_areas_info` VALUES (863, '湖南省', '益阳市', '安化县', '0737', 3, 145);
+INSERT INTO `sys_areas_info` VALUES (864, '辽宁省', '本溪市', '平山区', '0414', 3, 141);
+INSERT INTO `sys_areas_info` VALUES (865, '青海省', '海南藏族自治州', '共和县', '0974', 3, 148);
+INSERT INTO `sys_areas_info` VALUES (866, '四川省', '绵阳市', '北川羌族自治县', '0816', 3, 224);
+INSERT INTO `sys_areas_info` VALUES (867, '江西省', '九江市', '都昌县', '0792', 3, 104);
+INSERT INTO `sys_areas_info` VALUES (868, '广西壮族自治区', '柳州市', '柳城县', '0772', 3, 388);
+INSERT INTO `sys_areas_info` VALUES (869, '云南省', '文山壮族苗族自治州', '马关县', '0876', 3, 426);
+INSERT INTO `sys_areas_info` VALUES (870, '江苏省', '扬州市', '广陵区', '0514', 3, 136);
+INSERT INTO `sys_areas_info` VALUES (871, '吉林省', '白山市', '八道江区', '0439', 3, 321);
+INSERT INTO `sys_areas_info` VALUES (872, '浙江省', '杭州市', '淳安县', '0571', 3, 263);
+INSERT INTO `sys_areas_info` VALUES (873, '河南省', '新乡市', '新乡县', '0373', 3, 418);
+INSERT INTO `sys_areas_info` VALUES (874, '上海市', '上海市', '松江区', '021', 3, 287);
+INSERT INTO `sys_areas_info` VALUES (875, '河北省', '承德市', '滦平县', '0', 3, 127);
+INSERT INTO `sys_areas_info` VALUES (876, '浙江省', '舟山市', '定海区', '0580', 3, 194);
+INSERT INTO `sys_areas_info` VALUES (877, '河北省', '唐山市', '唐海县', '0', 3, 277);
+INSERT INTO `sys_areas_info` VALUES (878, '河北省', '保定市', '北市区', '0', 3, 209);
+INSERT INTO `sys_areas_info` VALUES (879, '江西省', '新余市', '渝水区', '0790', 3, 341);
+INSERT INTO `sys_areas_info` VALUES (880, '山东省', '德州市', '齐河县', '0534', 3, 133);
+INSERT INTO `sys_areas_info` VALUES (881, '云南省', '昆明市', '石林彝族自治县', '0871', 3, 369);
+INSERT INTO `sys_areas_info` VALUES (882, '河南省', '周口市', '扶沟县', '0394', 3, 102);
+INSERT INTO `sys_areas_info` VALUES (883, '河南省', '新乡市', '原阳县', '0373', 3, 418);
+INSERT INTO `sys_areas_info` VALUES (884, '陕西省', '延安市', '宝塔区', '0911', 3, 344);
+INSERT INTO `sys_areas_info` VALUES (885, '河北省', '石家庄市', '辛集市', '0', 3, 264);
+INSERT INTO `sys_areas_info` VALUES (886, '广西壮族自治区', '河池市', '环江毛南族自治县', '0778', 3, 197);
+INSERT INTO `sys_areas_info` VALUES (887, '新疆维吾尔族自治区', '乌鲁木齐市', '乌鲁木齐县', '0991', 3, 207);
+INSERT INTO `sys_areas_info` VALUES (888, '山西省', '大同市', '阳高县', '0352', 3, 108);
+INSERT INTO `sys_areas_info` VALUES (889, '江西省', '赣州市', '南康市', '0797', 3, 336);
+INSERT INTO `sys_areas_info` VALUES (890, '河北省', '沧州市', '任丘市', '0', 3, 286);
+INSERT INTO `sys_areas_info` VALUES (891, '山西省', '运城市', '盐湖区', '0359', 3, 236);
+INSERT INTO `sys_areas_info` VALUES (892, '湖北省', '恩施市', '建始县', '0718', 3, 340);
+INSERT INTO `sys_areas_info` VALUES (893, '四川省', '乐山市', '夹江县', '0833', 3, 155);
+INSERT INTO `sys_areas_info` VALUES (894, '河南省', '信阳市', '商城县', '0376', 3, 269);
+INSERT INTO `sys_areas_info` VALUES (895, '云南省', '昭通市', '绥江县', '0870', 3, 389);
+INSERT INTO `sys_areas_info` VALUES (896, '黑龙江省', '鸡西市', '其他', '0467', 3, 128);
+INSERT INTO `sys_areas_info` VALUES (897, '安徽省', '亳州市', '蒙城县', '0558', 3, 249);
+INSERT INTO `sys_areas_info` VALUES (898, '浙江省', '杭州市', '富阳市', '0571', 3, 263);
+INSERT INTO `sys_areas_info` VALUES (899, '河北省', '沧州市', '吴桥县', '0', 3, 286);
+INSERT INTO `sys_areas_info` VALUES (900, '浙江省', '台州市', '玉环县', '0576', 3, 289);
+INSERT INTO `sys_areas_info` VALUES (901, '黑龙江省', '哈尔滨市', '尚志市', '0451', 3, 124);
+INSERT INTO `sys_areas_info` VALUES (902, '云南省', '玉溪市', '新平彝族傣族自治县', '0877', 3, 387);
+INSERT INTO `sys_areas_info` VALUES (903, '江西省', '景德镇市', '珠山区', '0798', 3, 244);
+INSERT INTO `sys_areas_info` VALUES (904, '广东省', '梅州市', '五华县', '0753', 3, 143);
+INSERT INTO `sys_areas_info` VALUES (905, '上海市', '上海市', '嘉定区', '021', 3, 287);
+INSERT INTO `sys_areas_info` VALUES (906, '河北省', '保定市', '南市区', '0', 3, 209);
+INSERT INTO `sys_areas_info` VALUES (907, '黑龙江省', '哈尔滨市', '平房区', '0451', 3, 124);
+INSERT INTO `sys_areas_info` VALUES (908, '湖北省', '随州市', '曾都区', '0722', 3, 324);
+INSERT INTO `sys_areas_info` VALUES (909, '浙江省', '嘉兴市', '海宁市', '0573', 3, 107);
+INSERT INTO `sys_areas_info` VALUES (910, '广西壮族自治区', '贺州市', '八步区', '0774', 3, 135);
+INSERT INTO `sys_areas_info` VALUES (911, '四川省', '资阳市', '雁江区', '028', 3, 404);
+INSERT INTO `sys_areas_info` VALUES (912, '湖北省', '荆门市', '掇刀区', '0724', 3, 153);
+INSERT INTO `sys_areas_info` VALUES (913, '天津市', '天津市', '和平区', '0', 3, 252);
+INSERT INTO `sys_areas_info` VALUES (914, '四川省', '广安市', '广安区', '0826', 3, 237);
+INSERT INTO `sys_areas_info` VALUES (915, '天津市', '天津市', '河东区', '0', 3, 252);
+INSERT INTO `sys_areas_info` VALUES (916, '江苏省', '无锡市', '锡山区', '0510', 3, 364);
+INSERT INTO `sys_areas_info` VALUES (917, '内蒙古自治区', '呼和浩特市', '回民区', '0471', 3, 422);
+INSERT INTO `sys_areas_info` VALUES (918, '贵州省', '铜仁地区', '铜仁市', '0856', 3, 272);
+INSERT INTO `sys_areas_info` VALUES (919, '云南省', '昭通市', '永善县', '0870', 3, 389);
+INSERT INTO `sys_areas_info` VALUES (920, '贵州省', '黔东南苗族侗族自治州', '黎平县', '0855', 3, 325);
+INSERT INTO `sys_areas_info` VALUES (921, '辽宁省', '鞍山市', '岫岩满族自治县', '0', 3, 301);
+INSERT INTO `sys_areas_info` VALUES (922, '辽宁省', '大连市', '沙河口区', '0', 3, 262);
+INSERT INTO `sys_areas_info` VALUES (923, '湖南省', '郴州市', '桂阳县', '0735', 3, 370);
+INSERT INTO `sys_areas_info` VALUES (924, '广东省', '广州市', '花都区', '020', 3, 129);
+INSERT INTO `sys_areas_info` VALUES (925, '安徽省', '淮南市', '田家庵区', '0554', 3, 367);
+INSERT INTO `sys_areas_info` VALUES (926, '江苏省', '连云港市', '东海县', '0518', 3, 101);
+INSERT INTO `sys_areas_info` VALUES (927, '福建省', '福州市', '平潭县', '0591', 3, 177);
+INSERT INTO `sys_areas_info` VALUES (928, '福建省', '宁德市', '福安市', '0593', 3, 202);
+INSERT INTO `sys_areas_info` VALUES (929, '云南省', '思茅市', '景东彝族自治县', NULL, 3, 168);
+INSERT INTO `sys_areas_info` VALUES (930, '江西省', '上饶市', '广丰县', '0793', 3, 234);
+INSERT INTO `sys_areas_info` VALUES (931, '广西壮族自治区', '河池市', '大化瑶族自治县', '0778', 3, 197);
+INSERT INTO `sys_areas_info` VALUES (932, '青海省', '海东地区', '平安县', '0972', 3, 401);
+INSERT INTO `sys_areas_info` VALUES (933, '湖南省', '永州市', '道县', '0746', 3, 408);
+INSERT INTO `sys_areas_info` VALUES (934, '河南省', '焦作市', '博爱县', '0391', 3, 175);
+INSERT INTO `sys_areas_info` VALUES (935, '广西壮族自治区', '贵港市', '港北区', '0775', 3, 295);
+INSERT INTO `sys_areas_info` VALUES (936, '内蒙古自治区', '包头市', '青山区', '0472', 3, 230);
+INSERT INTO `sys_areas_info` VALUES (937, '新疆维吾尔族自治区', '塔城地区', '沙湾县', '0901', 3, 146);
+INSERT INTO `sys_areas_info` VALUES (938, '辽宁省', '沈阳市', '皇姑区', '0', 3, 170);
+INSERT INTO `sys_areas_info` VALUES (939, '湖北省', '宜昌市', '秭归县', '0717', 3, 423);
+INSERT INTO `sys_areas_info` VALUES (940, '黑龙江省', '牡丹江市', '海林市', '0453', 3, 260);
+INSERT INTO `sys_areas_info` VALUES (941, '江苏省', '苏州市', '沧浪区', '0512', 3, 281);
+INSERT INTO `sys_areas_info` VALUES (942, '内蒙古自治区', '包头市', '九原区', '0472', 3, 230);
+INSERT INTO `sys_areas_info` VALUES (943, '贵州省', '遵义市', '仁怀市', '0852', 3, 288);
+INSERT INTO `sys_areas_info` VALUES (944, '广东省', '佛山市', '南海区', '0757', 3, 378);
+INSERT INTO `sys_areas_info` VALUES (945, '山西省', '长治市', '襄垣县', '0355', 3, 394);
+INSERT INTO `sys_areas_info` VALUES (946, '新疆维吾尔族自治区', '阿勒泰地区', '石河子市', '0906', 3, 190);
+INSERT INTO `sys_areas_info` VALUES (947, '河南省', '南阳市', '邓州市', '0377', 3, 405);
+INSERT INTO `sys_areas_info` VALUES (948, '云南省', '大理白族自治州', '宾川县', '0872', 3, 191);
+INSERT INTO `sys_areas_info` VALUES (949, '北京市', '北京市', '房山区', '010', 3, 368);
+INSERT INTO `sys_areas_info` VALUES (950, '江苏省', '南京市', '江宁区', '025', 3, 313);
+INSERT INTO `sys_areas_info` VALUES (951, '福建省', '漳州市', '龙海市', '0596', 3, 150);
+INSERT INTO `sys_areas_info` VALUES (952, '河北省', '廊坊市', '安次区', '0', 3, 176);
+INSERT INTO `sys_areas_info` VALUES (953, '湖南省', '岳阳市', '岳阳县', '0730', 3, 393);
+INSERT INTO `sys_areas_info` VALUES (954, '四川省', '广安市', '岳池县', '0826', 3, 237);
+INSERT INTO `sys_areas_info` VALUES (955, '云南省', '文山壮族苗族自治州', '麻栗坡县', '0876', 3, 426);
+INSERT INTO `sys_areas_info` VALUES (956, '天津市', '天津市', '河北区', '0', 3, 252);
+INSERT INTO `sys_areas_info` VALUES (957, '河南省', '许昌市', '许昌县', '0374', 3, 345);
+INSERT INTO `sys_areas_info` VALUES (958, '云南省', '思茅市', '澜沧拉祜族自治县', NULL, 3, 168);
+INSERT INTO `sys_areas_info` VALUES (959, '山东省', '菏泽市', '定陶县', '0530', 3, 216);
+INSERT INTO `sys_areas_info` VALUES (960, '江苏省', '常州市', '新北区', '0519', 3, 304);
+INSERT INTO `sys_areas_info` VALUES (961, '山西省', '太原市', '迎泽区', '0351', 3, 154);
+INSERT INTO `sys_areas_info` VALUES (962, '福建省', '福州市', '其他', '0591', 3, 177);
+INSERT INTO `sys_areas_info` VALUES (963, '河北省', '石家庄市', '高邑县', '0', 3, 264);
+INSERT INTO `sys_areas_info` VALUES (964, '河南省', '新乡市', '获嘉县', '0373', 3, 418);
+INSERT INTO `sys_areas_info` VALUES (965, '河南省', '安阳市', '汤阴县', '0372', 3, 353);
+INSERT INTO `sys_areas_info` VALUES (966, '安徽省', '合肥市', '肥西县', '0551', 3, 299);
+INSERT INTO `sys_areas_info` VALUES (967, '广西壮族自治区', '桂林市', '恭城瑶族自治县', '0773', 3, 400);
+INSERT INTO `sys_areas_info` VALUES (968, '辽宁省', '抚顺市', '顺城区', '0', 3, 158);
+INSERT INTO `sys_areas_info` VALUES (969, '浙江省', '丽水市', '云和县', '0578', 3, 365);
+INSERT INTO `sys_areas_info` VALUES (970, '山西省', '临汾市', '浮山县', '0357', 3, 238);
+INSERT INTO `sys_areas_info` VALUES (971, '云南省', '昆明市', '五华区', '0871', 3, 369);
+INSERT INTO `sys_areas_info` VALUES (972, '湖南省', '郴州市', '永兴县', '0735', 3, 370);
+INSERT INTO `sys_areas_info` VALUES (973, '湖北省', '潜江市', '其他', '0728', 3, 414);
+INSERT INTO `sys_areas_info` VALUES (974, '福建省', '漳州市', '云霄县', '0596', 3, 150);
+INSERT INTO `sys_areas_info` VALUES (975, '吉林省', '通化市', '二道江区', '0435', 3, 395);
+INSERT INTO `sys_areas_info` VALUES (976, '黑龙江省', '鹤岗市', '其他', '0468', 3, 188);
+INSERT INTO `sys_areas_info` VALUES (977, '四川省', '达州市', '宣汉县', '0818', 3, 317);
+INSERT INTO `sys_areas_info` VALUES (978, '山东省', '枣庄市', '峄城区', '0632', 3, 235);
+INSERT INTO `sys_areas_info` VALUES (979, '浙江省', '台州市', '临海市', '0576', 3, 289);
+INSERT INTO `sys_areas_info` VALUES (980, '江苏省', '连云港市', '海州区', '0518', 3, 101);
+INSERT INTO `sys_areas_info` VALUES (981, '宁夏回族自治区', '吴忠市', '利通区', '0953', 3, 383);
+INSERT INTO `sys_areas_info` VALUES (982, '河南省', '周口市', '沈丘县', '0394', 3, 102);
+INSERT INTO `sys_areas_info` VALUES (983, '河北省', '承德市', '隆化县', '0', 3, 127);
+INSERT INTO `sys_areas_info` VALUES (984, '浙江省', '嘉兴市', '海盐县', '0573', 3, 107);
+INSERT INTO `sys_areas_info` VALUES (985, '河北省', '邯郸市', '邯山区', '0', 3, 348);
+INSERT INTO `sys_areas_info` VALUES (986, '河北省', '张家口市', '赤城县', '0', 3, 162);
+INSERT INTO `sys_areas_info` VALUES (987, '江西省', '九江市', '彭泽县', '0792', 3, 104);
+INSERT INTO `sys_areas_info` VALUES (988, '江苏省', '南京市', '高淳县', '025', 3, 313);
+INSERT INTO `sys_areas_info` VALUES (989, '甘肃省', '武威市', '民勤县', '0935', 3, 294);
+INSERT INTO `sys_areas_info` VALUES (990, '山东省', '济宁市', '市中区', '0537', 3, 169);
+INSERT INTO `sys_areas_info` VALUES (991, '河北省', '廊坊市', '文安县', '0', 3, 176);
+INSERT INTO `sys_areas_info` VALUES (992, '云南省', '昭通市', '威信县', '0870', 3, 389);
+INSERT INTO `sys_areas_info` VALUES (993, '甘肃省', '平凉市', '泾川县', '0933', 3, 218);
+INSERT INTO `sys_areas_info` VALUES (994, '云南省', '昆明市', '宜良县', '0871', 3, 369);
+INSERT INTO `sys_areas_info` VALUES (995, '河北省', '邢台市', '南宫市', '0', 3, 151);
+INSERT INTO `sys_areas_info` VALUES (996, '贵州省', '黔西南布依族苗族自治州', '兴仁县', '0859', 3, 297);
+INSERT INTO `sys_areas_info` VALUES (997, '河南省', '焦作市', '温县', '0391', 3, 175);
+INSERT INTO `sys_areas_info` VALUES (998, '甘肃省', '庆阳市', '其他', '0934', 3, 198);
+INSERT INTO `sys_areas_info` VALUES (999, '宁夏回族自治区', '银川市', '西夏区', '0951', 3, 247);
+INSERT INTO `sys_areas_info` VALUES (1000, '内蒙古自治区', '乌海市', '乌达区', '0473', 3, 182);
+INSERT INTO `sys_areas_info` VALUES (1001, '广西壮族自治区', '南宁市', '江南区', '0771', 3, 242);
+INSERT INTO `sys_areas_info` VALUES (1002, '新疆维吾尔族自治区', '巴音郭楞蒙古自治州', '和静县', '0996', 3, 310);
+INSERT INTO `sys_areas_info` VALUES (1003, '湖南省', '郴州市', '汝城县', '0735', 3, 370);
+INSERT INTO `sys_areas_info` VALUES (1004, '湖北省', '武汉市', '汉南区', '027', 3, 113);
+INSERT INTO `sys_areas_info` VALUES (1005, '江苏省', '盐城市', '建湖县', '0515', 3, 329);
+INSERT INTO `sys_areas_info` VALUES (1006, '河南省', '商丘市', '夏邑县', '0370', 3, 254);
+INSERT INTO `sys_areas_info` VALUES (1007, '浙江省', '丽水市', '青田县', '0578', 3, 365);
+INSERT INTO `sys_areas_info` VALUES (1008, '福建省', '三明市', '尤溪县', '0598', 3, 411);
+INSERT INTO `sys_areas_info` VALUES (1009, '广东省', '河源市', '紫金县', '0762', 3, 374);
+INSERT INTO `sys_areas_info` VALUES (1010, '河北省', '承德市', '双桥区', '0', 3, 127);
+INSERT INTO `sys_areas_info` VALUES (1011, '湖北省', '鄂州市', '鄂城区', '0711', 3, 239);
+INSERT INTO `sys_areas_info` VALUES (1012, '河北省', '石家庄市', '无极县', '0', 3, 264);
+INSERT INTO `sys_areas_info` VALUES (1013, '江西省', '九江市', '庐山区', '0792', 3, 104);
+INSERT INTO `sys_areas_info` VALUES (1014, '重庆市', '重庆市', '荣昌县', '023', 3, 363);
+INSERT INTO `sys_areas_info` VALUES (1015, '浙江省', '台州市', '天台县', '0576', 3, 289);
+INSERT INTO `sys_areas_info` VALUES (1016, '江苏省', '连云港市', '新浦区', '0518', 3, 101);
+INSERT INTO `sys_areas_info` VALUES (1017, '江苏省', '苏州市', '吴中区', '0512', 3, 281);
+INSERT INTO `sys_areas_info` VALUES (1018, '浙江省', '湖州市', '吴兴区', '0572', 3, 159);
+INSERT INTO `sys_areas_info` VALUES (1019, '云南省', '德宏傣族景颇族自治州', '瑞丽市', '0692', 3, 184);
+INSERT INTO `sys_areas_info` VALUES (1020, '山东省', '菏泽市', '牡丹区', '0530', 3, 216);
+INSERT INTO `sys_areas_info` VALUES (1021, '黑龙江省', '大庆市', '红岗区', '0459', 3, 415);
+INSERT INTO `sys_areas_info` VALUES (1022, '辽宁省', '大连市', '金州区', '0', 3, 262);
+INSERT INTO `sys_areas_info` VALUES (1023, '山西省', '忻州市', '定襄县', '0350', 3, 382);
+INSERT INTO `sys_areas_info` VALUES (1024, '湖北省', '宜昌市', '远安县', '0717', 3, 423);
+INSERT INTO `sys_areas_info` VALUES (1025, '河北省', '石家庄市', '正定县', '0', 3, 264);
+INSERT INTO `sys_areas_info` VALUES (1026, '重庆市', '重庆市', '渝中区', '023', 3, 363);
+INSERT INTO `sys_areas_info` VALUES (1027, '江西省', '抚州市', '南丰县', '0794', 3, 266);
+INSERT INTO `sys_areas_info` VALUES (1028, '山东省', '威海市', '荣成市', '0631', 3, 256);
+INSERT INTO `sys_areas_info` VALUES (1029, '山东省', '青岛市', '即墨市', '0532', 3, 284);
+INSERT INTO `sys_areas_info` VALUES (1030, '广东省', '东莞市', '常平镇', '0769', 3, 229);
+INSERT INTO `sys_areas_info` VALUES (1031, '山西省', '太原市', '杏花岭区', '0351', 3, 154);
+INSERT INTO `sys_areas_info` VALUES (1032, '广东省', '广州市', '番禺区', '020', 3, 129);
+INSERT INTO `sys_areas_info` VALUES (1033, '江苏省', '淮安市', '盱眙县', '0517', 3, 360);
+INSERT INTO `sys_areas_info` VALUES (1034, '江苏省', '盐城市', '亭湖区', '0515', 3, 329);
+INSERT INTO `sys_areas_info` VALUES (1035, '上海市', '上海市', '宝山区', '021', 3, 287);
+INSERT INTO `sys_areas_info` VALUES (1036, '江苏省', '徐州市', '邳州市', '0516', 3, 130);
+INSERT INTO `sys_areas_info` VALUES (1037, '河北省', '沧州市', '南皮县', '0', 3, 286);
+INSERT INTO `sys_areas_info` VALUES (1038, '新疆维吾尔族自治区', '巴音郭楞蒙古自治州', '轮台县', '0996', 3, 310);
+INSERT INTO `sys_areas_info` VALUES (1039, '陕西省', '西安市', '未央区', '029', 3, 334);
+INSERT INTO `sys_areas_info` VALUES (1040, '湖南省', '湘潭市', '湘乡市', '0731', 3, 337);
+INSERT INTO `sys_areas_info` VALUES (1041, '安徽省', '宿州市', '萧县', '0557', 3, 181);
+INSERT INTO `sys_areas_info` VALUES (1042, '辽宁省', '沈阳市', '大东区', '0', 3, 170);
+INSERT INTO `sys_areas_info` VALUES (1043, '湖北省', '宜昌市', '宜都市', '0717', 3, 423);
+INSERT INTO `sys_areas_info` VALUES (1044, '广西壮族自治区', '南宁市', '青秀区', '0771', 3, 242);
+INSERT INTO `sys_areas_info` VALUES (1045, '广西壮族自治区', '河池市', '罗城仫佬族自治县', '0778', 3, 197);
+INSERT INTO `sys_areas_info` VALUES (1046, '山东省', '济宁市', '兖州市', '0537', 3, 169);
+INSERT INTO `sys_areas_info` VALUES (1047, '湖北省', '武汉市', '武昌区', '027', 3, 113);
+INSERT INTO `sys_areas_info` VALUES (1048, '广东省', '深圳市', '宝安区', '0755', 3, 118);
+INSERT INTO `sys_areas_info` VALUES (1049, '河南省', '信阳市', '潢川县', '0376', 3, 269);
+INSERT INTO `sys_areas_info` VALUES (1050, '江西省', '南昌市', '湾里区', '0791', 3, 200);
+INSERT INTO `sys_areas_info` VALUES (1051, '宁夏回族自治区', '固原市', '西吉县', '0954', 3, 358);
+INSERT INTO `sys_areas_info` VALUES (1052, '河北省', '张家口市', '阳原县', '0', 3, 162);
+INSERT INTO `sys_areas_info` VALUES (1053, '云南省', '大理白族自治州', '大理市', '0872', 3, 191);
+INSERT INTO `sys_areas_info` VALUES (1054, '河北省', '保定市', '高阳县', '0', 3, 209);
+INSERT INTO `sys_areas_info` VALUES (1055, '天津市', '天津市', '南开区', '0', 3, 252);
+INSERT INTO `sys_areas_info` VALUES (1056, '河北省', '廊坊市', '固安县', '0', 3, 176);
+INSERT INTO `sys_areas_info` VALUES (1057, '江苏省', '宿迁市', '沭阳县', '0527', 3, 285);
+INSERT INTO `sys_areas_info` VALUES (1058, '甘肃省', '天水市', '其他', '0938', 3, 179);
+INSERT INTO `sys_areas_info` VALUES (1059, '贵州省', '铜仁地区', '思南县', '0856', 3, 272);
+INSERT INTO `sys_areas_info` VALUES (1060, '广东省', '湛江市', '赤坎区', '0759', 3, 171);
+INSERT INTO `sys_areas_info` VALUES (1061, '山西省', '大同市', '浑源县', '0352', 3, 108);
+INSERT INTO `sys_areas_info` VALUES (1062, '安徽省', '安庆市', '迎江区', '0556', 3, 246);
+INSERT INTO `sys_areas_info` VALUES (1063, '江西省', '宜春市', '其他', '0795', 3, 142);
+INSERT INTO `sys_areas_info` VALUES (1064, '云南省', '玉溪市', '通海县', '0877', 3, 387);
+INSERT INTO `sys_areas_info` VALUES (1065, '辽宁省', '铁岭市', '开原市', '0410', 3, 223);
+INSERT INTO `sys_areas_info` VALUES (1066, '贵州省', '遵义市', '红花岗区', '0852', 3, 288);
+INSERT INTO `sys_areas_info` VALUES (1067, '山西省', '吕梁市', '柳林县', '0358', 3, 227);
+INSERT INTO `sys_areas_info` VALUES (1068, '河南省', '商丘市', '睢县', '0370', 3, 254);
+INSERT INTO `sys_areas_info` VALUES (1069, '吉林省', '吉林市', '船营区', '0432', 3, 240);
+INSERT INTO `sys_areas_info` VALUES (1070, '吉林省', '辽源市', '龙山区', '0437', 3, 122);
+INSERT INTO `sys_areas_info` VALUES (1071, '云南省', '丽江市', '永胜县', '0888', 3, 103);
+INSERT INTO `sys_areas_info` VALUES (1072, '辽宁省', '铁岭市', '清河区', '0410', 3, 223);
+INSERT INTO `sys_areas_info` VALUES (1073, '四川省', '甘孜藏族自治州', '康定县', '0836', 3, 349);
+INSERT INTO `sys_areas_info` VALUES (1074, '安徽省', '安庆市', '桐城市', '0556', 3, 246);
+INSERT INTO `sys_areas_info` VALUES (1075, '重庆市', '重庆市', '丰都县', '023', 3, 363);
+INSERT INTO `sys_areas_info` VALUES (1076, '江西省', '宜春市', '上高县', '0795', 3, 142);
+INSERT INTO `sys_areas_info` VALUES (1077, '河南省', '许昌市', '襄城县', '0374', 3, 345);
+INSERT INTO `sys_areas_info` VALUES (1078, '河北省', '保定市', '高碑店市', '0', 3, 209);
+INSERT INTO `sys_areas_info` VALUES (1079, '四川省', '泸州市', '叙永县', '0830', 3, 110);
+INSERT INTO `sys_areas_info` VALUES (1080, '云南省', '昭通市', '巧家县', '0870', 3, 389);
+INSERT INTO `sys_areas_info` VALUES (1081, '山西省', '运城市', '永济市', '0359', 3, 236);
+INSERT INTO `sys_areas_info` VALUES (1082, '浙江省', '绍兴市', '绍兴县', '0575', 3, 307);
+INSERT INTO `sys_areas_info` VALUES (1083, '广东省', '汕头市', '潮阳区', '0754', 3, 215);
+INSERT INTO `sys_areas_info` VALUES (1084, '河南省', '周口市', '太康县', '0394', 3, 102);
+INSERT INTO `sys_areas_info` VALUES (1085, '江苏省', '镇江市', '丹阳市', '0511', 3, 283);
+INSERT INTO `sys_areas_info` VALUES (1086, '黑龙江省', '齐齐哈尔市', '富裕县', '0452', 3, 195);
+INSERT INTO `sys_areas_info` VALUES (1087, '湖北省', '恩施市', '巴东县', '0718', 3, 340);
+INSERT INTO `sys_areas_info` VALUES (1088, '福建省', '漳州市', '东山县', '0596', 3, 150);
+INSERT INTO `sys_areas_info` VALUES (1089, '河南省', '漯河市', '源汇区', '0395', 3, 396);
+INSERT INTO `sys_areas_info` VALUES (1090, '河北省', '张家口市', '张北县', '0', 3, 162);
+INSERT INTO `sys_areas_info` VALUES (1091, '湖南省', '张家界市', '慈利县', '0744', 3, 300);
+INSERT INTO `sys_areas_info` VALUES (1092, '江苏省', '苏州市', '平江区', '0512', 3, 281);
+INSERT INTO `sys_areas_info` VALUES (1093, '河南省', '开封市', '通许县', '0378', 3, 111);
+INSERT INTO `sys_areas_info` VALUES (1094, '江苏省', '淮安市', '淮阴区', '0517', 3, 360);
+INSERT INTO `sys_areas_info` VALUES (1095, '安徽省', '亳州市', '谯城区', '0558', 3, 249);
+INSERT INTO `sys_areas_info` VALUES (1096, '湖北省', '恩施市', '恩施市', '0718', 3, 340);
+INSERT INTO `sys_areas_info` VALUES (1097, '山东省', '潍坊市', '奎文区', '0536', 3, 121);
+INSERT INTO `sys_areas_info` VALUES (1098, '江苏省', '苏州市', '常熟市', '0512', 3, 281);
+INSERT INTO `sys_areas_info` VALUES (1099, '浙江省', '丽水市', '庆元县', '0578', 3, 365);
+INSERT INTO `sys_areas_info` VALUES (1100, '湖北省', '黄冈市', '武穴市', '0713', 3, 397);
+INSERT INTO `sys_areas_info` VALUES (1101, '四川省', '绵阳市', '盐亭县', '0816', 3, 224);
+INSERT INTO `sys_areas_info` VALUES (1102, '四川省', '宜宾市', '长宁县', '0831', 3, 109);
+INSERT INTO `sys_areas_info` VALUES (1103, '贵州省', '黔东南苗族侗族自治州', '黄平县', '0855', 3, 325);
+INSERT INTO `sys_areas_info` VALUES (1104, '北京市', '北京市', '门头沟区', '010', 3, 368);
+INSERT INTO `sys_areas_info` VALUES (1105, '西藏自治区', '拉萨市', '城关区', '0891', 3, 352);
+INSERT INTO `sys_areas_info` VALUES (1106, '江西省', '赣州市', '于都县', '0797', 3, 336);
+INSERT INTO `sys_areas_info` VALUES (1107, '辽宁省', '沈阳市', '和平区', '0', 3, 170);
+INSERT INTO `sys_areas_info` VALUES (1108, '宁夏回族自治区', '固原市', '隆德县', '0954', 3, 358);
+INSERT INTO `sys_areas_info` VALUES (1109, '河北省', '沧州市', '泊头市', '0', 3, 286);
+INSERT INTO `sys_areas_info` VALUES (1110, '河南省', '焦作市', '孟州市', '0391', 3, 175);
+INSERT INTO `sys_areas_info` VALUES (1111, '四川省', '绵阳市', '三台县', '0816', 3, 224);
+INSERT INTO `sys_areas_info` VALUES (1112, '云南省', '文山壮族苗族自治州', '西畴县', '0876', 3, 426);
+INSERT INTO `sys_areas_info` VALUES (1113, '河南省', '信阳市', '罗山县', '0376', 3, 269);
+INSERT INTO `sys_areas_info` VALUES (1114, '四川省', '广安市', '华蓥市', '0826', 3, 237);
+INSERT INTO `sys_areas_info` VALUES (1115, '河南省', '驻马店市', '汝南县', '0396', 3, 282);
+INSERT INTO `sys_areas_info` VALUES (1116, '海南省', '海口市', '琼山区', '0898', 3, 219);
+INSERT INTO `sys_areas_info` VALUES (1117, '河南省', '许昌市', '禹州市', '0374', 3, 345);
+INSERT INTO `sys_areas_info` VALUES (1118, '湖北省', '宜昌市', '西陵区', '0717', 3, 423);
+INSERT INTO `sys_areas_info` VALUES (1119, '江西省', '抚州市', '崇仁县', '0794', 3, 266);
+INSERT INTO `sys_areas_info` VALUES (1120, '江苏省', '淮安市', '清河区', '0517', 3, 360);
+INSERT INTO `sys_areas_info` VALUES (1121, '福建省', '福州市', '闽清县', '0591', 3, 177);
+INSERT INTO `sys_areas_info` VALUES (1122, '山西省', '临汾市', '尧都区', '0357', 3, 238);
+INSERT INTO `sys_areas_info` VALUES (1123, '浙江省', '温州市', '永嘉县', '0577', 3, 315);
+INSERT INTO `sys_areas_info` VALUES (1124, '湖南省', '邵阳市', '绥宁县', '0739', 3, 274);
+INSERT INTO `sys_areas_info` VALUES (1125, '江苏省', '盐城市', '阜宁县', '0515', 3, 329);
+INSERT INTO `sys_areas_info` VALUES (1126, '江苏省', '徐州市', '沛县', '0516', 3, 130);
+INSERT INTO `sys_areas_info` VALUES (1127, '湖南省', '衡阳市', '衡阳县', '0734', 3, 116);
+INSERT INTO `sys_areas_info` VALUES (1128, '安徽省', '淮南市', '凤台县', '0554', 3, 367);
+INSERT INTO `sys_areas_info` VALUES (1129, '四川省', '泸州市', '古蔺县', '0830', 3, 110);
+INSERT INTO `sys_areas_info` VALUES (1130, '宁夏回族自治区', '中卫市', '沙坡头区', '0955', 3, 278);
+INSERT INTO `sys_areas_info` VALUES (1131, '河北省', '保定市', '定州市', '0', 3, 209);
+INSERT INTO `sys_areas_info` VALUES (1132, '河南省', '南阳市', '镇平县', '0377', 3, 405);
+INSERT INTO `sys_areas_info` VALUES (1133, '江苏省', '徐州市', '新沂市', '0516', 3, 130);
+INSERT INTO `sys_areas_info` VALUES (1134, '安徽省', '安庆市', '宿松县', '0556', 3, 246);
+INSERT INTO `sys_areas_info` VALUES (1135, '广西壮族自治区', '来宾市', '兴宾区', '0772', 3, 225);
+INSERT INTO `sys_areas_info` VALUES (1136, '河北省', '邯郸市', '涉县', '0', 3, 348);
+INSERT INTO `sys_areas_info` VALUES (1137, '江西省', '九江市', '永修县', '0792', 3, 104);
+INSERT INTO `sys_areas_info` VALUES (1138, '河南省', '开封市', '禹王台区', '0378', 3, 111);
+INSERT INTO `sys_areas_info` VALUES (1139, '广西壮族自治区', '南宁市', '兴宁区', '0771', 3, 242);
+INSERT INTO `sys_areas_info` VALUES (1140, '山西省', '临汾市', '襄汾县', '0357', 3, 238);
+INSERT INTO `sys_areas_info` VALUES (1141, '辽宁省', '阜新市', '清河门区', '0418', 3, 226);
+INSERT INTO `sys_areas_info` VALUES (1142, '广东省', '珠海市', '斗门区', '0756', 3, 134);
+INSERT INTO `sys_areas_info` VALUES (1143, '湖南省', '邵阳市', '隆回县', '0739', 3, 274);
+INSERT INTO `sys_areas_info` VALUES (1144, '湖北省', '宜昌市', '枝江市', '0717', 3, 423);
+INSERT INTO `sys_areas_info` VALUES (1145, '黑龙江省', '佳木斯市', '前进区', '0454', 3, 105);
+INSERT INTO `sys_areas_info` VALUES (1146, '河南省', '三门峡市', '卢氏县', '0398', 3, 328);
+INSERT INTO `sys_areas_info` VALUES (1147, '黑龙江省', '齐齐哈尔市', '富拉尔基区', '0452', 3, 195);
+INSERT INTO `sys_areas_info` VALUES (1148, '湖南省', '长沙市', '天心区', '0731', 3, 201);
+INSERT INTO `sys_areas_info` VALUES (1149, '河北省', '石家庄市', '长安区', '0', 3, 264);
+INSERT INTO `sys_areas_info` VALUES (1150, '福建省', '龙岩市', '新罗区', '0597', 3, 267);
+INSERT INTO `sys_areas_info` VALUES (1151, '四川省', '凉山彝族自治州', '冕宁县', '0834', 3, 173);
+INSERT INTO `sys_areas_info` VALUES (1152, '湖南省', '邵阳市', '新宁县', '0739', 3, 274);
+INSERT INTO `sys_areas_info` VALUES (1153, '河北省', '保定市', '唐县', '0', 3, 209);
+INSERT INTO `sys_areas_info` VALUES (1154, '云南省', '迪庆藏族自治州', '德钦县', '0887', 3, 204);
+INSERT INTO `sys_areas_info` VALUES (1155, '内蒙古自治区', '乌兰察布市', '卓资县', '0474', 3, 386);
+INSERT INTO `sys_areas_info` VALUES (1156, '云南省', '迪庆藏族自治州', '维西傈僳族自治县', '0887', 3, 204);
+INSERT INTO `sys_areas_info` VALUES (1157, '河北省', '邢台市', '沙河市', '0', 3, 151);
+INSERT INTO `sys_areas_info` VALUES (1158, '云南省', '昆明市', '富民县', '0871', 3, 369);
+INSERT INTO `sys_areas_info` VALUES (1159, '广西壮族自治区', '防城港市', '防城区', '0770', 3, 410);
+INSERT INTO `sys_areas_info` VALUES (1160, '河北省', '石家庄市', '晋州市', '0', 3, 264);
+INSERT INTO `sys_areas_info` VALUES (1161, '山东省', '济宁市', '嘉祥县', '0537', 3, 169);
+INSERT INTO `sys_areas_info` VALUES (1162, '河南省', '郑州市', '新郑市', '0371', 3, 308);
+INSERT INTO `sys_areas_info` VALUES (1163, '湖北省', '咸宁市', '赤壁市', '0715', 3, 271);
+INSERT INTO `sys_areas_info` VALUES (1164, '四川省', '成都市', '成华区', '028', 3, 106);
+INSERT INTO `sys_areas_info` VALUES (1165, '河南省', '商丘市', '柘城县', '0370', 3, 254);
+INSERT INTO `sys_areas_info` VALUES (1166, '陕西省', '渭南市', '蒲城县', '0913', 3, 205);
+INSERT INTO `sys_areas_info` VALUES (1167, '四川省', '南充市', '南部县', '0817', 3, 350);
+INSERT INTO `sys_areas_info` VALUES (1168, '江苏省', '常州市', '溧阳市', '0519', 3, 304);
+INSERT INTO `sys_areas_info` VALUES (1169, '贵州省', '黔西南布依族苗族自治州', '其他', '0859', 3, 297);
+INSERT INTO `sys_areas_info` VALUES (1170, '重庆市', '重庆市', '大足县', '023', 3, 363);
+INSERT INTO `sys_areas_info` VALUES (1171, '安徽省', '滁州市', '定远县', '0550', 3, 380);
+INSERT INTO `sys_areas_info` VALUES (1172, '黑龙江省', '牡丹江市', '爱民区', '0453', 3, 260);
+INSERT INTO `sys_areas_info` VALUES (1173, '辽宁省', '大连市', '瓦房店市', '0', 3, 262);
+INSERT INTO `sys_areas_info` VALUES (1174, '辽宁省', '辽阳市', '白塔区', '0419', 3, 427);
+INSERT INTO `sys_areas_info` VALUES (1175, '天津市', '天津市', '塘沽区', '0', 3, 252);
+INSERT INTO `sys_areas_info` VALUES (1176, '广西壮族自治区', '桂林市', '荔蒲县', '0773', 3, 400);
+INSERT INTO `sys_areas_info` VALUES (1177, '宁夏回族自治区', '石嘴山市', '大武口区', '0952', 3, 189);
+INSERT INTO `sys_areas_info` VALUES (1178, '湖北省', '宜昌市', '夷陵区', '0717', 3, 423);
+INSERT INTO `sys_areas_info` VALUES (1179, '湖北省', '十堰市', '郧西县', '0719', 3, 185);
+INSERT INTO `sys_areas_info` VALUES (1180, '新疆维吾尔族自治区', '克孜勒苏柯尔克孜自治州', '阿图什市', '0908', 3, 259);
+INSERT INTO `sys_areas_info` VALUES (1181, '四川省', '德阳市', '旌阳区', '0838', 3, 178);
+INSERT INTO `sys_areas_info` VALUES (1182, '云南省', '大理白族自治州', '弥渡县', '0872', 3, 191);
+INSERT INTO `sys_areas_info` VALUES (1183, '浙江省', '杭州市', '江干区', '0571', 3, 263);
+INSERT INTO `sys_areas_info` VALUES (1184, '广西壮族自治区', '百色市', '田阳县', '0776', 3, 392);
+INSERT INTO `sys_areas_info` VALUES (1185, '贵州省', '六盘水市', '六枝特区', '0858', 3, 339);
+INSERT INTO `sys_areas_info` VALUES (1186, '湖北省', '黄冈市', '团风县', '0713', 3, 397);
+INSERT INTO `sys_areas_info` VALUES (1187, '河南省', '平顶山市', '湛河区', '0375', 3, 117);
+INSERT INTO `sys_areas_info` VALUES (1188, '山西省', '晋中市', '太谷县', '0354', 3, 139);
+INSERT INTO `sys_areas_info` VALUES (1189, '山西省', '晋中市', '昔阳县', '0354', 3, 139);
+INSERT INTO `sys_areas_info` VALUES (1190, '江西省', '抚州市', '乐安县', '0794', 3, 266);
+INSERT INTO `sys_areas_info` VALUES (1191, '陕西省', '西安市', '碑林区', '029', 3, 334);
+INSERT INTO `sys_areas_info` VALUES (1192, '湖北省', '黄冈市', '红安县', '0713', 3, 397);
+INSERT INTO `sys_areas_info` VALUES (1193, '山东省', '滨州市', '邹平县', '0543', 3, 245);
+INSERT INTO `sys_areas_info` VALUES (1194, '浙江省', '台州市', '温岭市', '0576', 3, 289);
+INSERT INTO `sys_areas_info` VALUES (1195, '广东省', '江门市', '新会区', '0750', 3, 398);
+INSERT INTO `sys_areas_info` VALUES (1196, '云南省', '保山市', '隆阳区', '0875', 3, 381);
+INSERT INTO `sys_areas_info` VALUES (1197, '陕西省', '宝鸡市', '金台区', '0917', 3, 232);
+INSERT INTO `sys_areas_info` VALUES (1198, '浙江省', '金华市', '婺城区', '0579', 3, 152);
+INSERT INTO `sys_areas_info` VALUES (1199, '内蒙古自治区', '兴安盟', '扎赉特旗', '0482', 3, 248);
+INSERT INTO `sys_areas_info` VALUES (1200, '湖南省', '株洲市', '株洲县', '0731', 3, 302);
+INSERT INTO `sys_areas_info` VALUES (1201, '山西省', '阳泉市', '矿区', '0353', 3, 137);
+INSERT INTO `sys_areas_info` VALUES (1202, '黑龙江省', '牡丹江市', '宁安市', '0453', 3, 260);
+INSERT INTO `sys_areas_info` VALUES (1203, '吉林省', '四平市', '铁东区', '0434', 3, 417);
+INSERT INTO `sys_areas_info` VALUES (1204, '四川省', '乐山市', '市中区', '0833', 3, 155);
+INSERT INTO `sys_areas_info` VALUES (1205, '四川省', '成都市', '高新区', '028', 3, 106);
+INSERT INTO `sys_areas_info` VALUES (1206, '四川省', '乐山市', '峨眉山市', '0833', 3, 155);
+INSERT INTO `sys_areas_info` VALUES (1207, '江西省', '吉安市', '吉水县', '0796', 3, 332);
+INSERT INTO `sys_areas_info` VALUES (1208, '河北省', '衡水市', '冀州市', '0', 3, 138);
+INSERT INTO `sys_areas_info` VALUES (1209, '四川省', '自贡市', '自流井区', '0813', 3, 375);
+INSERT INTO `sys_areas_info` VALUES (1210, '河北省', '张家口市', '桥东区', '0', 3, 162);
+INSERT INTO `sys_areas_info` VALUES (1211, '福建省', '龙岩市', '连城县', '0597', 3, 267);
+INSERT INTO `sys_areas_info` VALUES (1212, '云南省', '红河哈尼族彝族自治州', '红河县', '0873', 3, 399);
+INSERT INTO `sys_areas_info` VALUES (1213, '云南省', '文山壮族苗族自治州', '广南县', '0876', 3, 426);
+INSERT INTO `sys_areas_info` VALUES (1214, '广东省', '惠州市', '博罗县', '0752', 3, 250);
+INSERT INTO `sys_areas_info` VALUES (1215, '广西壮族自治区', '柳州市', '其他', '0772', 3, 388);
+INSERT INTO `sys_areas_info` VALUES (1216, '湖北省', '荆州市', '荆州区', '0716', 3, 361);
+INSERT INTO `sys_areas_info` VALUES (1217, '黑龙江省', '佳木斯市', '桦南县', '0454', 3, 105);
+INSERT INTO `sys_areas_info` VALUES (1218, '安徽省', '安庆市', '太湖县', '0556', 3, 246);
+INSERT INTO `sys_areas_info` VALUES (1219, '广西壮族自治区', '贺州市', '昭平县', '0774', 3, 135);
+INSERT INTO `sys_areas_info` VALUES (1220, '甘肃省', '天水市', '甘谷县', '0938', 3, 179);
+INSERT INTO `sys_areas_info` VALUES (1221, '辽宁省', '朝阳市', '建平县', '0421', 3, 174);
+INSERT INTO `sys_areas_info` VALUES (1222, '新疆维吾尔族自治区', '奎屯市', '其他', '0992', 3, 355);
+INSERT INTO `sys_areas_info` VALUES (1223, '福建省', '南平市', '延平区', '0599', 3, 119);
+INSERT INTO `sys_areas_info` VALUES (1224, '河南省', '信阳市', '新县', '0376', 3, 269);
+INSERT INTO `sys_areas_info` VALUES (1225, '山西省', '太原市', '小店区', '0351', 3, 154);
+INSERT INTO `sys_areas_info` VALUES (1226, '河南省', '郑州市', '管城回族区', '0371', 3, 308);
+INSERT INTO `sys_areas_info` VALUES (1227, '黑龙江省', '鸡西市', '恒山区', '0467', 3, 128);
+INSERT INTO `sys_areas_info` VALUES (1228, '江苏省', '泰州市', '姜堰市', '0523', 3, 311);
+INSERT INTO `sys_areas_info` VALUES (1229, '河南省', '洛阳市', '栾川县', '0379', 3, 214);
+INSERT INTO `sys_areas_info` VALUES (1230, '浙江省', '宁波市', '鄞州区', '0574', 3, 217);
+INSERT INTO `sys_areas_info` VALUES (1231, '四川省', '阿坝藏族羌族自治州', '马尔康县', '0837', 3, 255);
+INSERT INTO `sys_areas_info` VALUES (1232, '山东省', '济宁市', '微山县', '0537', 3, 169);
+INSERT INTO `sys_areas_info` VALUES (1233, '新疆维吾尔族自治区', '吐鲁番地区', '吐鲁番市', '0995', 3, 303);
+INSERT INTO `sys_areas_info` VALUES (1234, '山东省', '滨州市', '滨城区', '0543', 3, 245);
+INSERT INTO `sys_areas_info` VALUES (1235, '甘肃省', '平凉市', '灵台县', '0933', 3, 218);
+INSERT INTO `sys_areas_info` VALUES (1236, '山东省', '淄博市', '张店区', '0533', 3, 203);
+INSERT INTO `sys_areas_info` VALUES (1237, '青海省', '海东地区', '互助土族自治县', '0972', 3, 401);
+INSERT INTO `sys_areas_info` VALUES (1238, '江苏省', '扬州市', '邗江区', '0514', 3, 136);
+INSERT INTO `sys_areas_info` VALUES (1239, '浙江省', '金华市', '义乌市', '0579', 3, 152);
+INSERT INTO `sys_areas_info` VALUES (1240, '湖北省', '荆门市', '其他', '0724', 3, 153);
+INSERT INTO `sys_areas_info` VALUES (1241, '河南省', '郑州市', '巩义市', '0371', 3, 308);
+INSERT INTO `sys_areas_info` VALUES (1242, '江苏省', '徐州市', '丰县', '0516', 3, 130);
+INSERT INTO `sys_areas_info` VALUES (1243, '安徽省', '滁州市', '凤阳县', '0550', 3, 380);
+INSERT INTO `sys_areas_info` VALUES (1244, '浙江省', '金华市', '金东区', '0579', 3, 152);
+INSERT INTO `sys_areas_info` VALUES (1245, '浙江省', '衢州市', '常山县', '0570', 3, 257);
+INSERT INTO `sys_areas_info` VALUES (1246, '四川省', '德阳市', '广汉市', '0838', 3, 178);
+INSERT INTO `sys_areas_info` VALUES (1247, '福建省', '福州市', '福清市', '0591', 3, 177);
+INSERT INTO `sys_areas_info` VALUES (1248, '贵州省', '铜仁地区', '石阡县', '0856', 3, 272);
+INSERT INTO `sys_areas_info` VALUES (1249, '四川省', '绵阳市', '安县', '0816', 3, 224);
+INSERT INTO `sys_areas_info` VALUES (1250, '辽宁省', '阜新市', '彰武县', '0418', 3, 226);
+INSERT INTO `sys_areas_info` VALUES (1251, '河南省', '焦作市', '沁阳市', '0391', 3, 175);
+INSERT INTO `sys_areas_info` VALUES (1252, '辽宁省', '辽阳市', '灯塔市', '0419', 3, 427);
+INSERT INTO `sys_areas_info` VALUES (1253, '黑龙江省', '七台河市', '勃利县', '0464', 3, 419);
+INSERT INTO `sys_areas_info` VALUES (1254, '辽宁省', '朝阳市', '北票市', '0421', 3, 174);
+INSERT INTO `sys_areas_info` VALUES (1255, '云南省', '丽江市', '玉龙纳西族自治县', '0888', 3, 103);
+INSERT INTO `sys_areas_info` VALUES (1256, '湖南省', '娄底市', '娄星区', '0738', 3, 206);
+INSERT INTO `sys_areas_info` VALUES (1257, '浙江省', '湖州市', '长兴县', '0572', 3, 159);
+INSERT INTO `sys_areas_info` VALUES (1258, '黑龙江省', '齐齐哈尔市', '龙江县', '0452', 3, 195);
+INSERT INTO `sys_areas_info` VALUES (1259, '广东省', '梅州市', '梅县', '0753', 3, 143);
+INSERT INTO `sys_areas_info` VALUES (1260, '江西省', '赣州市', '全南县', '0797', 3, 336);
+INSERT INTO `sys_areas_info` VALUES (1261, '山东省', '烟台市', '莱州市', '0535', 3, 261);
+INSERT INTO `sys_areas_info` VALUES (1262, '吉林省', '吉林市', '磐石市', '0432', 3, 240);
+INSERT INTO `sys_areas_info` VALUES (1263, '北京市', '北京市', '怀柔区', '010', 3, 368);
+INSERT INTO `sys_areas_info` VALUES (1264, '广西壮族自治区', '百色市', '平果县', '0776', 3, 392);
+INSERT INTO `sys_areas_info` VALUES (1265, '河南省', '开封市', '鼓楼区', '0378', 3, 111);
+INSERT INTO `sys_areas_info` VALUES (1266, '福建省', '莆田市', '荔城区', '0594', 3, 346);
+INSERT INTO `sys_areas_info` VALUES (1267, '黑龙江省', '双鸭山市', '其他', '0469', 3, 373);
+INSERT INTO `sys_areas_info` VALUES (1268, '广西壮族自治区', '钦州市', '钦南区', '0777', 3, 212);
+INSERT INTO `sys_areas_info` VALUES (1269, '吉林省', '四平市', '铁西区', '0434', 3, 417);
+INSERT INTO `sys_areas_info` VALUES (1270, '吉林省', '延边朝鲜族自治州', '延吉市', '0433', 3, 165);
+INSERT INTO `sys_areas_info` VALUES (1271, '山西省', '运城市', '垣曲县', '0359', 3, 236);
+INSERT INTO `sys_areas_info` VALUES (1272, '湖北省', '孝感市', '云梦县', '0712', 3, 210);
+INSERT INTO `sys_areas_info` VALUES (1273, '黑龙江省', '绥化市', '肇东市', '0455', 3, 371);
+INSERT INTO `sys_areas_info` VALUES (1274, '浙江省', '金华市', '武义县', '0579', 3, 152);
+INSERT INTO `sys_areas_info` VALUES (1275, '贵州省', '毕节地区', '黔西县', '0857', 3, 318);
+INSERT INTO `sys_areas_info` VALUES (1276, '海南省', '海口市', '龙华区', '0898', 3, 219);
+INSERT INTO `sys_areas_info` VALUES (1277, '浙江省', '舟山市', '嵊泗县', '0580', 3, 194);
+INSERT INTO `sys_areas_info` VALUES (1278, '广西壮族自治区', '桂林市', '阳朔县', '0773', 3, 400);
+INSERT INTO `sys_areas_info` VALUES (1279, '甘肃省', '兰州市', '城关区', '0931', 3, 228);
+INSERT INTO `sys_areas_info` VALUES (1280, '广东省', '佛山市', '顺德区', '0757', 3, 378);
+INSERT INTO `sys_areas_info` VALUES (1281, '山东省', '威海市', '文登市', '0631', 3, 256);
+INSERT INTO `sys_areas_info` VALUES (1282, '安徽省', '池州市', '贵池区', '0566', 3, 391);
+INSERT INTO `sys_areas_info` VALUES (1283, '四川省', '成都市', '温江区', '028', 3, 106);
+INSERT INTO `sys_areas_info` VALUES (1284, '福建省', '泉州市', '丰泽区', '0595', 3, 161);
+INSERT INTO `sys_areas_info` VALUES (1285, '云南省', '曲靖市', '麒麟区', '0874', 3, 420);
+INSERT INTO `sys_areas_info` VALUES (1286, '贵州省', '贵阳市', '修文县', '0851', 3, 273);
+INSERT INTO `sys_areas_info` VALUES (1287, '山西省', '阳泉市', '郊区', '0353', 3, 137);
+INSERT INTO `sys_areas_info` VALUES (1288, '山西省', '吕梁市', '临县', '0358', 3, 227);
+INSERT INTO `sys_areas_info` VALUES (1289, '山西省', '大同市', '南郊区', '0352', 3, 108);
+INSERT INTO `sys_areas_info` VALUES (1290, '辽宁省', '沈阳市', '沈北新区', '0', 3, 170);
+INSERT INTO `sys_areas_info` VALUES (1291, '湖北省', '孝感市', '安陆市', '0712', 3, 210);
+INSERT INTO `sys_areas_info` VALUES (1292, '河北省', '保定市', '蠡县', '0', 3, 209);
+INSERT INTO `sys_areas_info` VALUES (1293, '河北省', '石家庄市', '赵县', '0', 3, 264);
+INSERT INTO `sys_areas_info` VALUES (1294, '河北省', '保定市', '徐水县', '0', 3, 209);
+INSERT INTO `sys_areas_info` VALUES (1295, '福建省', '三明市', '清流县', '0598', 3, 411);
+INSERT INTO `sys_areas_info` VALUES (1296, '陕西省', '咸阳市', '兴平市', '029', 3, 180);
+INSERT INTO `sys_areas_info` VALUES (1297, '山东省', '临沂市', '兰山区', '0539', 3, 312);
+INSERT INTO `sys_areas_info` VALUES (1298, '陕西省', '宝鸡市', '眉县', '0917', 3, 232);
+INSERT INTO `sys_areas_info` VALUES (1299, '广东省', '揭阳市', '普宁市', '0663', 3, 114);
+INSERT INTO `sys_areas_info` VALUES (1300, '山西省', '朔州市', '朔城区', '0349', 3, 290);
+INSERT INTO `sys_areas_info` VALUES (1301, '福建省', '泉州市', '泉港区', '0595', 3, 161);
+INSERT INTO `sys_areas_info` VALUES (1302, '湖北省', '襄樊市', '枣阳市', '0710', 3, 412);
+INSERT INTO `sys_areas_info` VALUES (1303, '安徽省', '蚌埠市', '禹会区', '0552', 3, 372);
+INSERT INTO `sys_areas_info` VALUES (1304, '内蒙古自治区', '呼和浩特市', '其他', '0471', 3, 422);
+INSERT INTO `sys_areas_info` VALUES (1305, '宁夏回族自治区', '银川市', '金凤区', '0951', 3, 247);
+INSERT INTO `sys_areas_info` VALUES (1306, '山东省', '济南市', '历下区', '0531', 3, 306);
+INSERT INTO `sys_areas_info` VALUES (1307, '黑龙江省', '哈尔滨市', '南岗区', '0451', 3, 124);
+INSERT INTO `sys_areas_info` VALUES (1308, '上海市', '上海市', '青浦区', '021', 3, 287);
+INSERT INTO `sys_areas_info` VALUES (1309, '河南省', '新乡市', '牧野区', '0373', 3, 418);
+INSERT INTO `sys_areas_info` VALUES (1310, '河南省', '安阳市', '文峰区', '0372', 3, 353);
+INSERT INTO `sys_areas_info` VALUES (1311, '山西省', '晋城市', '城区', '0356', 3, 376);
+INSERT INTO `sys_areas_info` VALUES (1312, '湖南省', '怀化市', '洪江市', '0745', 3, 156);
+INSERT INTO `sys_areas_info` VALUES (1313, '福建省', '三明市', '大田县', '0598', 3, 411);
+INSERT INTO `sys_areas_info` VALUES (1314, '浙江省', '温州市', '泰顺县', '0577', 3, 315);
+INSERT INTO `sys_areas_info` VALUES (1315, '湖南省', '永州市', '祁阳县', '0746', 3, 408);
+INSERT INTO `sys_areas_info` VALUES (1316, '福建省', '厦门市', '集美区', '0592', 3, 354);
+INSERT INTO `sys_areas_info` VALUES (1317, '四川省', '甘孜藏族自治州', '泸定县', '0836', 3, 349);
+INSERT INTO `sys_areas_info` VALUES (1318, '江苏省', '南通市', '通州市', '0513', 3, 416);
+INSERT INTO `sys_areas_info` VALUES (1319, '江苏省', '泰州市', '泰兴市', '0523', 3, 311);
+INSERT INTO `sys_areas_info` VALUES (1320, '海南省', '文昌市', '其他', '0898', 3, 406);
+INSERT INTO `sys_areas_info` VALUES (1321, '云南省', '玉溪市', '易门县', '0877', 3, 387);
+INSERT INTO `sys_areas_info` VALUES (1322, '四川省', '资阳市', '乐至县', '028', 3, 404);
+INSERT INTO `sys_areas_info` VALUES (1323, '安徽省', '马鞍山市', '花山区', '0555', 3, 251);
+INSERT INTO `sys_areas_info` VALUES (1324, '安徽省', '滁州市', '来安县', '0550', 3, 380);
+INSERT INTO `sys_areas_info` VALUES (1325, '浙江省', '温州市', '乐清市', '0577', 3, 315);
+INSERT INTO `sys_areas_info` VALUES (1326, '河南省', '商丘市', '梁园区', '0370', 3, 254);
+INSERT INTO `sys_areas_info` VALUES (1327, '甘肃省', '平凉市', '崆峒区', '0933', 3, 218);
+INSERT INTO `sys_areas_info` VALUES (1328, '福建省', '福州市', '永泰县', '0591', 3, 177);
+INSERT INTO `sys_areas_info` VALUES (1329, '江西省', '宜春市', '高安市', '0795', 3, 142);
+INSERT INTO `sys_areas_info` VALUES (1330, '湖北省', '荆门市', '钟祥市', '0724', 3, 153);
+INSERT INTO `sys_areas_info` VALUES (1331, '河南省', '南阳市', '内乡县', '0377', 3, 405);
+INSERT INTO `sys_areas_info` VALUES (1332, '河南省', '南阳市', '宛城区', '0377', 3, 405);
+INSERT INTO `sys_areas_info` VALUES (1333, '四川省', '资阳市', '安岳县', '028', 3, 404);
+INSERT INTO `sys_areas_info` VALUES (1334, '河南省', '鹤壁市', '淇滨区', '0392', 3, 385);
+INSERT INTO `sys_areas_info` VALUES (1335, '贵州省', '遵义市', '赤水市', '0852', 3, 288);
+INSERT INTO `sys_areas_info` VALUES (1336, '广西壮族自治区', '柳州市', '三江侗族自治县', '0772', 3, 388);
+INSERT INTO `sys_areas_info` VALUES (1337, '天津市', '天津市', '武清区', '0', 3, 252);
+INSERT INTO `sys_areas_info` VALUES (1338, '广东省', '梅州市', '兴宁市', '0753', 3, 143);
+INSERT INTO `sys_areas_info` VALUES (1339, '云南省', '曲靖市', '沾益县', '0874', 3, 420);
+INSERT INTO `sys_areas_info` VALUES (1340, '江西省', '九江市', '武宁县', '0792', 3, 104);
+INSERT INTO `sys_areas_info` VALUES (1341, '浙江省', '宁波市', '宁海县', '0574', 3, 217);
+INSERT INTO `sys_areas_info` VALUES (1342, '江苏省', '苏州市', '虎丘区', '0512', 3, 281);
+INSERT INTO `sys_areas_info` VALUES (1343, '山东省', '泰安市', '肥城市', '0538', 3, 192);
+INSERT INTO `sys_areas_info` VALUES (1344, '云南省', '楚雄彝族自治州', '元谋县', '0878', 3, 231);
+INSERT INTO `sys_areas_info` VALUES (1345, '河南省', '郑州市', '金水区', '0371', 3, 308);
+INSERT INTO `sys_areas_info` VALUES (1346, '广西壮族自治区', '钦州市', '浦北县', '0777', 3, 212);
+INSERT INTO `sys_areas_info` VALUES (1347, '山东省', '青岛市', '城阳区', '0532', 3, 284);
+INSERT INTO `sys_areas_info` VALUES (1348, '广东省', '佛山市', '三水区', '0757', 3, 378);
+INSERT INTO `sys_areas_info` VALUES (1349, '浙江省', '台州市', '椒江区', '0576', 3, 289);
+INSERT INTO `sys_areas_info` VALUES (1350, '北京市', '北京市', '昌平区', '010', 3, 368);
+INSERT INTO `sys_areas_info` VALUES (1351, '新疆维吾尔族自治区', '昌吉回族自治州', '米泉市', '0994', 3, 293);
+INSERT INTO `sys_areas_info` VALUES (1352, '辽宁省', '沈阳市', '沈河区', '0', 3, 170);
+INSERT INTO `sys_areas_info` VALUES (1353, '河北省', '张家口市', '桥西区', '0', 3, 162);
+INSERT INTO `sys_areas_info` VALUES (1354, '贵州省', '贵阳市', '云岩区', '0851', 3, 273);
+INSERT INTO `sys_areas_info` VALUES (1355, '云南省', '曲靖市', '陆良县', '0874', 3, 420);
+INSERT INTO `sys_areas_info` VALUES (1356, '浙江省', '丽水市', '景宁畲族自治县', '0578', 3, 365);
+INSERT INTO `sys_areas_info` VALUES (1357, '辽宁省', '铁岭市', '昌图县', '0410', 3, 223);
+INSERT INTO `sys_areas_info` VALUES (1358, '河北省', '唐山市', '路北区', '0', 3, 277);
+INSERT INTO `sys_areas_info` VALUES (1359, '甘肃省', '金昌市', '金川区', '0935', 3, 356);
+INSERT INTO `sys_areas_info` VALUES (1360, '河北省', '石家庄市', '藁城市', '0', 3, 264);
+INSERT INTO `sys_areas_info` VALUES (1361, '四川省', '乐山市', '沙湾区', '0833', 3, 155);
+INSERT INTO `sys_areas_info` VALUES (1362, '甘肃省', '定西市', '安定区', '0932', 3, 327);
+INSERT INTO `sys_areas_info` VALUES (1363, '江苏省', '南京市', '浦口区', '025', 3, 313);
+INSERT INTO `sys_areas_info` VALUES (1364, '浙江省', '宁波市', '海曙区', '0574', 3, 217);
+INSERT INTO `sys_areas_info` VALUES (1365, '新疆维吾尔族自治区', '哈密地区', '哈密市', '0902', 3, 366);
+INSERT INTO `sys_areas_info` VALUES (1366, '云南省', '楚雄彝族自治州', '禄丰县', '0878', 3, 231);
+INSERT INTO `sys_areas_info` VALUES (1367, '山西省', '晋城市', '高平市', '0356', 3, 376);
+INSERT INTO `sys_areas_info` VALUES (1368, '内蒙古自治区', '赤峰市', '翁牛特旗', '0476', 3, 314);
+INSERT INTO `sys_areas_info` VALUES (1369, '广东省', '中山市', '南朗镇', '0760', 3, 167);
+INSERT INTO `sys_areas_info` VALUES (1370, '湖北省', '恩施市', '利川市', '0718', 3, 340);
+INSERT INTO `sys_areas_info` VALUES (1371, '广东省', '珠海市', '香洲区', '0756', 3, 134);
+INSERT INTO `sys_areas_info` VALUES (1372, '四川省', '眉山市', '洪雅县', '028', 3, 342);
+INSERT INTO `sys_areas_info` VALUES (1373, '上海市', '上海市', '静安区', '021', 3, 287);
+INSERT INTO `sys_areas_info` VALUES (1374, '贵州省', '黔南布依族苗族自治州', '荔波县', '0854', 3, 276);
+INSERT INTO `sys_areas_info` VALUES (1375, '贵州省', '黔南布依族苗族自治州', '都匀市', '0854', 3, 276);
+INSERT INTO `sys_areas_info` VALUES (1376, '河南省', '南阳市', '新野县', '0377', 3, 405);
+INSERT INTO `sys_areas_info` VALUES (1377, '四川省', '巴中市', '南江县', '0827', 3, 233);
+INSERT INTO `sys_areas_info` VALUES (1378, '安徽省', '宣城市', '宁国市', '0563', 3, 377);
+INSERT INTO `sys_areas_info` VALUES (1379, '四川省', '资阳市', '简阳市', '028', 3, 404);
+INSERT INTO `sys_areas_info` VALUES (1380, '云南省', '昭通市', '水富县', '0870', 3, 389);
+INSERT INTO `sys_areas_info` VALUES (1381, '黑龙江省', '牡丹江市', '穆棱市', '0453', 3, 260);
+INSERT INTO `sys_areas_info` VALUES (1382, '山东省', '淄博市', '周村区', '0533', 3, 203);
+INSERT INTO `sys_areas_info` VALUES (1383, '吉林省', '四平市', '公主岭市', '0434', 3, 417);
+INSERT INTO `sys_areas_info` VALUES (1384, '江西省', '抚州市', '临川区', '0794', 3, 266);
+INSERT INTO `sys_areas_info` VALUES (1385, '河北省', '衡水市', '故城县', '0', 3, 138);
+INSERT INTO `sys_areas_info` VALUES (1386, '浙江省', '丽水市', '莲都区', '0578', 3, 365);
+INSERT INTO `sys_areas_info` VALUES (1387, '河北省', '邯郸市', '邱县', '0', 3, 348);
+INSERT INTO `sys_areas_info` VALUES (1388, '河南省', '洛阳市', '新安县', '0379', 3, 214);
+INSERT INTO `sys_areas_info` VALUES (1389, '四川省', '巴中市', '平昌县', '0827', 3, 233);
+INSERT INTO `sys_areas_info` VALUES (1390, '广东省', '湛江市', '徐闻县', '0759', 3, 171);
+INSERT INTO `sys_areas_info` VALUES (1391, '甘肃省', '兰州市', '榆中县', '0931', 3, 228);
+INSERT INTO `sys_areas_info` VALUES (1392, '云南省', '玉溪市', '峨山彝族自治县', '0877', 3, 387);
+INSERT INTO `sys_areas_info` VALUES (1393, '云南省', '文山壮族苗族自治州', '文山县', '0876', 3, 426);
+INSERT INTO `sys_areas_info` VALUES (1394, '云南省', '西双版纳傣族自治州', '景洪市', '0691', 3, 390);
+INSERT INTO `sys_areas_info` VALUES (1395, '四川省', '内江市', '威远县', '0832', 3, 322);
+INSERT INTO `sys_areas_info` VALUES (1396, '河北省', '唐山市', '开平区', '0', 3, 277);
+INSERT INTO `sys_areas_info` VALUES (1397, '河南省', '驻马店市', '正阳县', '0396', 3, 282);
+INSERT INTO `sys_areas_info` VALUES (1398, '黑龙江省', '绥化市', '海伦市', '0455', 3, 371);
+INSERT INTO `sys_areas_info` VALUES (1399, '安徽省', '安庆市', '岳西县', '0556', 3, 246);
+INSERT INTO `sys_areas_info` VALUES (1400, '山西省', '晋城市', '泽州县', '0356', 3, 376);
+INSERT INTO `sys_areas_info` VALUES (1401, '广西壮族自治区', '桂林市', '资源县', '0773', 3, 400);
+INSERT INTO `sys_areas_info` VALUES (1402, '广东省', '广州市', '从化市', '020', 3, 129);
+INSERT INTO `sys_areas_info` VALUES (1403, '浙江省', '宁波市', '慈溪市', '0574', 3, 217);
+INSERT INTO `sys_areas_info` VALUES (1404, '重庆市', '重庆市', '南岸区', '023', 3, 363);
+INSERT INTO `sys_areas_info` VALUES (1405, '安徽省', '宣城市', '广德县', '0563', 3, 377);
+INSERT INTO `sys_areas_info` VALUES (1406, '新疆维吾尔族自治区', '塔城地区', '乌苏市', '0901', 3, 146);
+INSERT INTO `sys_areas_info` VALUES (1407, '江苏省', '南京市', '玄武区', '025', 3, 313);
+INSERT INTO `sys_areas_info` VALUES (1408, '四川省', '内江市', '隆昌县', '0832', 3, 322);
+INSERT INTO `sys_areas_info` VALUES (1409, '福建省', '厦门市', '翔安区', '0592', 3, 354);
+INSERT INTO `sys_areas_info` VALUES (1410, '浙江省', '金华市', '兰溪市', '0579', 3, 152);
+INSERT INTO `sys_areas_info` VALUES (1411, '河南省', '许昌市', '鄢陵县', '0374', 3, 345);
+INSERT INTO `sys_areas_info` VALUES (1412, '重庆市', '重庆市', '北碚区', '023', 3, 363);
+INSERT INTO `sys_areas_info` VALUES (1413, '安徽省', '滁州市', '天长市', '0550', 3, 380);
+INSERT INTO `sys_areas_info` VALUES (1414, '江西省', '赣州市', '定南县', '0797', 3, 336);
+INSERT INTO `sys_areas_info` VALUES (1415, '广东省', '潮州市', '潮安县', '0768', 3, 291);
+INSERT INTO `sys_areas_info` VALUES (1416, '山东省', '青岛市', '胶南市', '0532', 3, 284);
+INSERT INTO `sys_areas_info` VALUES (1417, '辽宁省', '鞍山市', '铁西区', '0', 3, 301);
+INSERT INTO `sys_areas_info` VALUES (1418, '黑龙江省', '鸡西市', '鸡冠区', '0467', 3, 128);
+INSERT INTO `sys_areas_info` VALUES (1419, '浙江省', '湖州市', '德清县', '0572', 3, 159);
+INSERT INTO `sys_areas_info` VALUES (1420, '江苏省', '扬州市', '仪征市', '0514', 3, 136);
+INSERT INTO `sys_areas_info` VALUES (1421, '云南省', '丽江市', '宁蒗彝族自治县', '0888', 3, 103);
+INSERT INTO `sys_areas_info` VALUES (1422, '湖南省', '怀化市', '沅陵县', '0745', 3, 156);
+INSERT INTO `sys_areas_info` VALUES (1423, '贵州省', '贵阳市', '其他', '0851', 3, 273);
+INSERT INTO `sys_areas_info` VALUES (1424, '河南省', '周口市', '西华县', '0394', 3, 102);
+INSERT INTO `sys_areas_info` VALUES (1425, '安徽省', '铜陵市', '铜陵县', '0562', 3, 132);
+INSERT INTO `sys_areas_info` VALUES (1426, '河北省', '邢台市', '清河县', '0', 3, 151);
+INSERT INTO `sys_areas_info` VALUES (1427, '四川省', '内江市', '资中县', '0832', 3, 322);
+INSERT INTO `sys_areas_info` VALUES (1428, '湖北省', '宜昌市', '长阳县', '0717', 3, 423);
+INSERT INTO `sys_areas_info` VALUES (1429, '云南省', '昭通市', '昭阳区', '0870', 3, 389);
+INSERT INTO `sys_areas_info` VALUES (1430, '云南省', '昆明市', '盘龙区', '0871', 3, 369);
+INSERT INTO `sys_areas_info` VALUES (1431, '湖南省', '衡阳市', '珠晖区', '0734', 3, 116);
+INSERT INTO `sys_areas_info` VALUES (1432, '云南省', '红河哈尼族彝族自治州', '开远市', '0873', 3, 399);
+INSERT INTO `sys_areas_info` VALUES (1433, '贵州省', '安顺市', '普定县', '0853', 3, 347);
+INSERT INTO `sys_areas_info` VALUES (1434, '云南省', '玉溪市', '红塔区', '0877', 3, 387);
+INSERT INTO `sys_areas_info` VALUES (1435, '河南省', '新乡市', '卫辉市', '0373', 3, 418);
+INSERT INTO `sys_areas_info` VALUES (1436, '湖南省', '邵阳市', '武冈市', '0739', 3, 274);
+INSERT INTO `sys_areas_info` VALUES (1437, '山东省', '青岛市', '市南区', '0532', 3, 284);
+INSERT INTO `sys_areas_info` VALUES (1438, '江苏省', '连云港市', '灌南县', '0518', 3, 101);
+INSERT INTO `sys_areas_info` VALUES (1439, '安徽省', '蚌埠市', '蚌山区', '0552', 3, 372);
+INSERT INTO `sys_areas_info` VALUES (1440, '四川省', '广安市', '邻水县', '0826', 3, 237);
+INSERT INTO `sys_areas_info` VALUES (1441, '云南省', '保山市', '腾冲县', '0875', 3, 381);
+INSERT INTO `sys_areas_info` VALUES (1442, '北京市', '北京市', '朝阳区', '010', 3, 368);
+INSERT INTO `sys_areas_info` VALUES (1443, '浙江省', '衢州市', '江山市', '0570', 3, 257);
+INSERT INTO `sys_areas_info` VALUES (1444, '广东省', '深圳市', '福田区', '0755', 3, 118);
+INSERT INTO `sys_areas_info` VALUES (1445, '四川省', '绵阳市', '涪城区', '0816', 3, 224);
+INSERT INTO `sys_areas_info` VALUES (1446, '贵州省', '遵义市', '习水县', '0852', 3, 288);
+INSERT INTO `sys_areas_info` VALUES (1447, '福建省', '三明市', '建宁县', '0598', 3, 411);
+INSERT INTO `sys_areas_info` VALUES (1448, '河南省', '南阳市', '唐河县', '0377', 3, 405);
+INSERT INTO `sys_areas_info` VALUES (1449, '山西省', '吕梁市', '汾阳市', '0358', 3, 227);
+INSERT INTO `sys_areas_info` VALUES (1450, '辽宁省', '沈阳市', '其他', '0', 3, 170);
+INSERT INTO `sys_areas_info` VALUES (1451, '河北省', '秦皇岛市', '山海关区', '0', 3, 163);
+INSERT INTO `sys_areas_info` VALUES (1452, '江西省', '宜春市', '袁州区', '0795', 3, 142);
+INSERT INTO `sys_areas_info` VALUES (1453, '江苏省', '南通市', '启东市', '0513', 3, 416);
+INSERT INTO `sys_areas_info` VALUES (1454, '湖南省', '怀化市', '靖州苗族侗族自治县', '0745', 3, 156);
+INSERT INTO `sys_areas_info` VALUES (1455, '湖南省', '长沙市', '望城县', '0731', 3, 201);
+INSERT INTO `sys_areas_info` VALUES (1456, '江西省', '赣州市', '寻乌县', '0797', 3, 336);
+INSERT INTO `sys_areas_info` VALUES (1457, '湖北省', '宜昌市', '当阳市', '0717', 3, 423);
+INSERT INTO `sys_areas_info` VALUES (1458, '湖南省', '株洲市', '炎陵县', '0731', 3, 302);
+INSERT INTO `sys_areas_info` VALUES (1459, '四川省', '德阳市', '罗江县', '0838', 3, 178);
+INSERT INTO `sys_areas_info` VALUES (1460, '四川省', '成都市', '锦江区', '028', 3, 106);
+INSERT INTO `sys_areas_info` VALUES (1461, '广西壮族自治区', '柳州市', '柳南区', '0772', 3, 388);
+INSERT INTO `sys_areas_info` VALUES (1462, '浙江省', '杭州市', '建德市', '0571', 3, 263);
+INSERT INTO `sys_areas_info` VALUES (1463, '江苏省', '苏州市', '相城区', '0512', 3, 281);
+INSERT INTO `sys_areas_info` VALUES (1464, '吉林省', '延边朝鲜族自治州', '龙井市', '0433', 3, 165);
+INSERT INTO `sys_areas_info` VALUES (1465, '黑龙江省', '齐齐哈尔市', '讷河市', '0452', 3, 195);
+INSERT INTO `sys_areas_info` VALUES (1466, '辽宁省', '丹东市', '宽甸满族自治县', '0415', 3, 305);
+INSERT INTO `sys_areas_info` VALUES (1467, '广东省', '梅州市', '梅江区', '0753', 3, 143);
+INSERT INTO `sys_areas_info` VALUES (1468, '吉林省', '长春市', '其他', '0431', 3, 112);
+INSERT INTO `sys_areas_info` VALUES (1469, '云南省', '迪庆藏族自治州', '香格里拉县', '0887', 3, 204);
+INSERT INTO `sys_areas_info` VALUES (1470, '安徽省', '蚌埠市', '固镇县', '0552', 3, 372);
+INSERT INTO `sys_areas_info` VALUES (1471, '云南省', '楚雄彝族自治州', '双柏县', '0878', 3, 231);
+INSERT INTO `sys_areas_info` VALUES (1472, '湖北省', '十堰市', '茅箭区', '0719', 3, 185);
+INSERT INTO `sys_areas_info` VALUES (1473, '河南省', '商丘市', '宁陵县', '0370', 3, 254);
+INSERT INTO `sys_areas_info` VALUES (1474, '贵州省', '遵义市', '务川仡佬族苗族自治县', '0852', 3, 288);
+INSERT INTO `sys_areas_info` VALUES (1475, '广东省', '惠州市', '惠东县', '0752', 3, 250);
+INSERT INTO `sys_areas_info` VALUES (1476, '江西省', '萍乡市', '安源区', '0799', 3, 320);
+INSERT INTO `sys_areas_info` VALUES (1477, '安徽省', '阜阳市', '颍上县', '0558', 3, 265);
+INSERT INTO `sys_areas_info` VALUES (1478, '黑龙江省', '哈尔滨市', '道里区', '0451', 3, 124);
+INSERT INTO `sys_areas_info` VALUES (1479, '广西壮族自治区', '河池市', '都安瑶族自治县', '0778', 3, 197);
+INSERT INTO `sys_areas_info` VALUES (1480, '内蒙古自治区', '赤峰市', '松山区', '0476', 3, 314);
+INSERT INTO `sys_areas_info` VALUES (1481, '辽宁省', '丹东市', '振兴区', '0415', 3, 305);
+INSERT INTO `sys_areas_info` VALUES (1482, '吉林省', '长春市', '九台市', '0431', 3, 112);
+INSERT INTO `sys_areas_info` VALUES (1483, '河北省', '保定市', '安国市', '0', 3, 209);
+INSERT INTO `sys_areas_info` VALUES (1484, '湖北省', '荆州市', '松滋市', '0716', 3, 361);
+INSERT INTO `sys_areas_info` VALUES (1485, '福建省', '三明市', '永安市', '0598', 3, 411);
+INSERT INTO `sys_areas_info` VALUES (1486, '广西壮族自治区', '来宾市', '象州县', '0772', 3, 225);
+INSERT INTO `sys_areas_info` VALUES (1487, '云南省', '曲靖市', '罗平县', '0874', 3, 420);
+INSERT INTO `sys_areas_info` VALUES (1488, '浙江省', '台州市', '路桥区', '0576', 3, 289);
+INSERT INTO `sys_areas_info` VALUES (1489, '吉林省', '吉林市', '龙潭区', '0432', 3, 240);
+INSERT INTO `sys_areas_info` VALUES (1490, '陕西省', '西安市', '灞桥区', '029', 3, 334);
+INSERT INTO `sys_areas_info` VALUES (1491, '江苏省', '南通市', '崇川区', '0513', 3, 416);
+INSERT INTO `sys_areas_info` VALUES (1492, '天津市', '天津市', '蓟县', '0', 3, 252);
+INSERT INTO `sys_areas_info` VALUES (1493, '山东省', '潍坊市', '昌乐县', '0536', 3, 121);
+INSERT INTO `sys_areas_info` VALUES (1494, '福建省', '泉州市', '安溪县', '0595', 3, 161);
+INSERT INTO `sys_areas_info` VALUES (1495, '山东省', '菏泽市', '鄄城县', '0530', 3, 216);
+INSERT INTO `sys_areas_info` VALUES (1496, '云南省', '昆明市', '晋宁县', '0871', 3, 369);
+INSERT INTO `sys_areas_info` VALUES (1497, '贵州省', '六盘水市', '盘县', '0858', 3, 339);
+INSERT INTO `sys_areas_info` VALUES (1498, '广西壮族自治区', '北海市', '合浦县', '0779', 3, 331);
+INSERT INTO `sys_areas_info` VALUES (1499, '云南省', '思茅市', '翠云区', NULL, 3, 168);
+INSERT INTO `sys_areas_info` VALUES (1500, '江西省', '吉安市', '永丰县', '0796', 3, 332);
+INSERT INTO `sys_areas_info` VALUES (1501, '黑龙江省', '双鸭山市', '尖山区', '0469', 3, 373);
+INSERT INTO `sys_areas_info` VALUES (1502, '河北省', '保定市', '涞源县', '0', 3, 209);
+INSERT INTO `sys_areas_info` VALUES (1503, '吉林省', '吉林市', '永吉县', '0432', 3, 240);
+INSERT INTO `sys_areas_info` VALUES (1504, '湖南省', '常德市', '其他', '0736', 3, 186);
+INSERT INTO `sys_areas_info` VALUES (1505, '福建省', '福州市', '仓山区', '0591', 3, 177);
+INSERT INTO `sys_areas_info` VALUES (1506, '黑龙江省', '黑河市', '爱辉区', '0456', 3, 131);
+INSERT INTO `sys_areas_info` VALUES (1507, '广西壮族自治区', '防城港市', '港口区', '0770', 3, 410);
+INSERT INTO `sys_areas_info` VALUES (1508, '四川省', '成都市', '新津县', '028', 3, 106);
+INSERT INTO `sys_areas_info` VALUES (1509, '内蒙古自治区', '赤峰市', '宁城县', '0476', 3, 314);
+INSERT INTO `sys_areas_info` VALUES (1510, '湖北省', '武汉市', '江夏区', '027', 3, 113);
+INSERT INTO `sys_areas_info` VALUES (1511, '青海省', '西宁市', '城中区', '0971', 3, 193);
+INSERT INTO `sys_areas_info` VALUES (1512, '河北省', '衡水市', '饶阳县', '0', 3, 138);
+INSERT INTO `sys_areas_info` VALUES (1513, '江西省', '萍乡市', '其他', '0799', 3, 320);
+INSERT INTO `sys_areas_info` VALUES (1514, '贵州省', '黔西南布依族苗族自治州', '兴义市', '0859', 3, 297);
+INSERT INTO `sys_areas_info` VALUES (1515, '贵州省', '黔东南苗族侗族自治州', '台江县', '0855', 3, 325);
+INSERT INTO `sys_areas_info` VALUES (1516, '湖南省', '永州市', '冷水滩区', '0746', 3, 408);
+INSERT INTO `sys_areas_info` VALUES (1517, '云南省', '西双版纳傣族自治州', '勐海县', '0691', 3, 390);
+INSERT INTO `sys_areas_info` VALUES (1518, '宁夏回族自治区', '银川市', '永宁县', '0951', 3, 247);
+INSERT INTO `sys_areas_info` VALUES (1519, '江苏省', '盐城市', '盐都区', '0515', 3, 329);
+INSERT INTO `sys_areas_info` VALUES (1520, '河南省', '新乡市', '延津县', '0373', 3, 418);
+INSERT INTO `sys_areas_info` VALUES (1521, '内蒙古自治区', '呼伦贝尔市', '扎兰屯市', '0470', 3, 357);
+INSERT INTO `sys_areas_info` VALUES (1522, '广西壮族自治区', '防城港市', '上思县', '0770', 3, 410);
+INSERT INTO `sys_areas_info` VALUES (1523, '辽宁省', '营口市', '西市区', '0417', 3, 166);
+INSERT INTO `sys_areas_info` VALUES (1524, '宁夏回族自治区', '银川市', '灵武市', '0951', 3, 247);
+INSERT INTO `sys_areas_info` VALUES (1525, '广西壮族自治区', '柳州市', '鱼峰区', '0772', 3, 388);
+INSERT INTO `sys_areas_info` VALUES (1526, '山东省', '东营市', '广饶县', '0546', 3, 140);
+INSERT INTO `sys_areas_info` VALUES (1527, '广东省', '广州市', '天河区', '020', 3, 129);
+INSERT INTO `sys_areas_info` VALUES (1528, '四川省', '宜宾市', '宜宾县', '0831', 3, 109);
+INSERT INTO `sys_areas_info` VALUES (1529, '福建省', '福州市', '台江区', '0591', 3, 177);
+INSERT INTO `sys_areas_info` VALUES (1530, '贵州省', '贵阳市', '乌当区', '0851', 3, 273);
+INSERT INTO `sys_areas_info` VALUES (1531, '河南省', '周口市', '鹿邑县', '0394', 3, 102);
+INSERT INTO `sys_areas_info` VALUES (1532, '河南省', '三门峡市', '渑池县', '0398', 3, 328);
+INSERT INTO `sys_areas_info` VALUES (1533, '新疆维吾尔族自治区', '塔城地区', '塔城市', '0901', 3, 146);
+INSERT INTO `sys_areas_info` VALUES (1534, '重庆市', '重庆市', '云阳县', '023', 3, 363);
+INSERT INTO `sys_areas_info` VALUES (1535, '浙江省', '杭州市', '下城区', '0571', 3, 263);
+INSERT INTO `sys_areas_info` VALUES (1536, '福建省', '泉州市', '鲤城区', '0595', 3, 161);
+INSERT INTO `sys_areas_info` VALUES (1537, '贵州省', '安顺市', '其他', '0853', 3, 347);
+INSERT INTO `sys_areas_info` VALUES (1538, '安徽省', '淮北市', '相山区', '0561', 3, 407);
+INSERT INTO `sys_areas_info` VALUES (1539, '四川省', '攀枝花市', '米易县', '0812', 3, 428);
+INSERT INTO `sys_areas_info` VALUES (1540, '山东省', '济南市', '市中区', '0531', 3, 306);
+INSERT INTO `sys_areas_info` VALUES (1541, '黑龙江省', '齐齐哈尔市', '克山县', '0452', 3, 195);
+INSERT INTO `sys_areas_info` VALUES (1542, '广西壮族自治区', '百色市', '那坡县', '0776', 3, 392);
+INSERT INTO `sys_areas_info` VALUES (1543, '山东省', '潍坊市', '昌邑市', '0536', 3, 121);
+INSERT INTO `sys_areas_info` VALUES (1544, '河南省', '郑州市', '中原区', '0371', 3, 308);
+INSERT INTO `sys_areas_info` VALUES (1545, '宁夏回族自治区', '中卫市', '中宁县', '0955', 3, 278);
+INSERT INTO `sys_areas_info` VALUES (1546, '四川省', '宜宾市', '兴文县', '0831', 3, 109);
+INSERT INTO `sys_areas_info` VALUES (1547, '河南省', '信阳市', '淮滨县', '0376', 3, 269);
+INSERT INTO `sys_areas_info` VALUES (1548, '宁夏回族自治区', '固原市', '原州区', '0954', 3, 358);
+INSERT INTO `sys_areas_info` VALUES (1549, '湖北省', '襄樊市', '襄阳区', '0710', 3, 412);
+INSERT INTO `sys_areas_info` VALUES (1550, '甘肃省', '定西市', '陇西县', '0932', 3, 327);
+INSERT INTO `sys_areas_info` VALUES (1551, '黑龙江省', '齐齐哈尔市', '建华区', '0452', 3, 195);
+INSERT INTO `sys_areas_info` VALUES (1552, '陕西省', '榆林市', '神木县', '0912', 3, 421);
+INSERT INTO `sys_areas_info` VALUES (1553, '福建省', '漳州市', '南靖县', '0596', 3, 150);
+INSERT INTO `sys_areas_info` VALUES (1554, '安徽省', '蚌埠市', '龙子湖区', '0552', 3, 372);
+INSERT INTO `sys_areas_info` VALUES (1555, '福建省', '南平市', '浦城县', '0599', 3, 119);
+INSERT INTO `sys_areas_info` VALUES (1556, '福建省', '三明市', '将乐县', '0598', 3, 411);
+INSERT INTO `sys_areas_info` VALUES (1557, '云南省', '曲靖市', '会泽县', '0874', 3, 420);
+INSERT INTO `sys_areas_info` VALUES (1558, '广西壮族自治区', '河池市', '宜州市', '0778', 3, 197);
+INSERT INTO `sys_areas_info` VALUES (1559, '河北省', '石家庄市', '灵寿县', '0', 3, 264);
+INSERT INTO `sys_areas_info` VALUES (1560, '云南省', '玉溪市', '江川县', '0877', 3, 387);
+INSERT INTO `sys_areas_info` VALUES (1561, '吉林省', '通化市', '通化县', '0435', 3, 395);
+INSERT INTO `sys_areas_info` VALUES (1562, '辽宁省', '沈阳市', '辽中县', '0', 3, 170);
+INSERT INTO `sys_areas_info` VALUES (1563, '河南省', '焦作市', '山阳区', '0391', 3, 175);
+INSERT INTO `sys_areas_info` VALUES (1564, '湖北省', '仙桃市', '其他', '0728', 3, 160);
+INSERT INTO `sys_areas_info` VALUES (1565, '湖北省', '荆门市', '京山县', '0724', 3, 153);
+INSERT INTO `sys_areas_info` VALUES (1566, '湖北省', '武汉市', '江岸区', '027', 3, 113);
+INSERT INTO `sys_areas_info` VALUES (1567, '黑龙江省', '佳木斯市', '同江市', '0454', 3, 105);
+INSERT INTO `sys_areas_info` VALUES (1568, '四川省', '成都市', '彭州市', '028', 3, 106);
+INSERT INTO `sys_areas_info` VALUES (1569, '福建省', '宁德市', '福鼎市', '0593', 3, 202);
+INSERT INTO `sys_areas_info` VALUES (1570, '浙江省', '宁波市', '象山县', '0574', 3, 217);
+INSERT INTO `sys_areas_info` VALUES (1571, '云南省', '大理白族自治州', '鹤庆县', '0872', 3, 191);
+INSERT INTO `sys_areas_info` VALUES (1572, '云南省', '丽江市', '古城区', '0888', 3, 103);
+INSERT INTO `sys_areas_info` VALUES (1573, '广东省', '江门市', '恩平市', '0750', 3, 398);
+INSERT INTO `sys_areas_info` VALUES (1574, '安徽省', '宣城市', '宣州区', '0563', 3, 377);
+INSERT INTO `sys_areas_info` VALUES (1575, '河北省', '衡水市', '枣强县', '0', 3, 138);
+INSERT INTO `sys_areas_info` VALUES (1576, '广东省', '深圳市', '罗湖区', '0755', 3, 118);
+INSERT INTO `sys_areas_info` VALUES (1577, '新疆维吾尔族自治区', '克拉玛依市', '独山子区', '0990', 3, 183);
+INSERT INTO `sys_areas_info` VALUES (1578, '河南省', '信阳市', '浉河区', '0376', 3, 269);
+INSERT INTO `sys_areas_info` VALUES (1579, '河南省', '周口市', '淮阳县', '0394', 3, 102);
+INSERT INTO `sys_areas_info` VALUES (1580, '河北省', '邯郸市', '成安县', '0', 3, 348);
+INSERT INTO `sys_areas_info` VALUES (1581, '云南省', '曲靖市', '师宗县', '0874', 3, 420);
+INSERT INTO `sys_areas_info` VALUES (1582, '河北省', '唐山市', '丰南区', '0', 3, 277);
+INSERT INTO `sys_areas_info` VALUES (1583, '湖南省', '娄底市', '涟源市', '0738', 3, 206);
+INSERT INTO `sys_areas_info` VALUES (1584, '浙江省', '温州市', '平阳县', '0577', 3, 315);
+INSERT INTO `sys_areas_info` VALUES (1585, '河北省', '邢台市', '邢台县', '0', 3, 151);
+INSERT INTO `sys_areas_info` VALUES (1586, '湖南省', '长沙市', '岳麓区', '0731', 3, 201);
+INSERT INTO `sys_areas_info` VALUES (1587, '山东省', '菏泽市', '东明县', '0530', 3, 216);
+INSERT INTO `sys_areas_info` VALUES (1588, '广东省', '江门市', '台山市', '0750', 3, 398);
+INSERT INTO `sys_areas_info` VALUES (1589, '上海市', '上海市', '闸北区', '021', 3, 287);
+INSERT INTO `sys_areas_info` VALUES (1590, '贵州省', '毕节地区', '毕节市', '0857', 3, 318);
+INSERT INTO `sys_areas_info` VALUES (1591, '天津市', '天津市', '静海县', '0', 3, 252);
+INSERT INTO `sys_areas_info` VALUES (1592, '江西省', '抚州市', '金溪县', '0794', 3, 266);
+INSERT INTO `sys_areas_info` VALUES (1593, '广东省', '佛山市', '禅城区', '0757', 3, 378);
+INSERT INTO `sys_areas_info` VALUES (1594, '河南省', '三门峡市', '义马市', '0398', 3, 328);
+INSERT INTO `sys_areas_info` VALUES (1595, '甘肃省', '兰州市', '西固区', '0931', 3, 228);
+INSERT INTO `sys_areas_info` VALUES (1596, '安徽省', '池州市', '东至县', '0566', 3, 391);
+INSERT INTO `sys_areas_info` VALUES (1597, '广东省', '梅州市', '平远县', '0753', 3, 143);
+INSERT INTO `sys_areas_info` VALUES (1598, '安徽省', '蚌埠市', '五河县', '0552', 3, 372);
+INSERT INTO `sys_areas_info` VALUES (1599, '湖南省', '湘西土家族苗族自治州', '吉首市', '0743', 3, 211);
+INSERT INTO `sys_areas_info` VALUES (1600, '黑龙江省', '哈尔滨市', '其他', '0451', 3, 124);
+INSERT INTO `sys_areas_info` VALUES (1601, '内蒙古自治区', '通辽市', '科尔沁区', '0475', 3, 326);
+INSERT INTO `sys_areas_info` VALUES (1602, '湖南省', '郴州市', '嘉禾县', '0735', 3, 370);
+INSERT INTO `sys_areas_info` VALUES (1603, '新疆维吾尔族自治区', '阿勒泰地区', '阿勒泰市', '0906', 3, 190);
+INSERT INTO `sys_areas_info` VALUES (1604, '福建省', '宁德市', '古田县', '0593', 3, 202);
+INSERT INTO `sys_areas_info` VALUES (1605, '河南省', '郑州市', '上街区', '0371', 3, 308);
+INSERT INTO `sys_areas_info` VALUES (1606, '山东省', '潍坊市', '安丘市', '0536', 3, 121);
+INSERT INTO `sys_areas_info` VALUES (1607, '湖北省', '黄冈市', '蕲春县', '0713', 3, 397);
+INSERT INTO `sys_areas_info` VALUES (1608, '陕西省', '咸阳市', '三原县', '029', 3, 180);
+INSERT INTO `sys_areas_info` VALUES (1609, '河南省', '安阳市', '林州市', '0372', 3, 353);
+INSERT INTO `sys_areas_info` VALUES (1610, '山东省', '淄博市', '淄川区', '0533', 3, 203);
+INSERT INTO `sys_areas_info` VALUES (1611, '山东省', '济南市', '历城区', '0531', 3, 306);
+INSERT INTO `sys_areas_info` VALUES (1612, '福建省', '福州市', '罗源县', '0591', 3, 177);
+INSERT INTO `sys_areas_info` VALUES (1613, '云南省', '思茅市', '墨江哈尼族自治县', NULL, 3, 168);
+INSERT INTO `sys_areas_info` VALUES (1614, '黑龙江省', '哈尔滨市', '双城市', '0451', 3, 124);
+INSERT INTO `sys_areas_info` VALUES (1615, '贵州省', '遵义市', '余庆县', '0852', 3, 288);
+INSERT INTO `sys_areas_info` VALUES (1616, '甘肃省', '白银市', '会宁县', '0943', 3, 157);
+INSERT INTO `sys_areas_info` VALUES (1617, '甘肃省', '平凉市', '静宁县', '0933', 3, 218);
+INSERT INTO `sys_areas_info` VALUES (1618, '湖南省', '邵阳市', '双清区', '0739', 3, 274);
+INSERT INTO `sys_areas_info` VALUES (1619, '福建省', '龙岩市', '漳平市', '0597', 3, 267);
+INSERT INTO `sys_areas_info` VALUES (1620, '黑龙江省', '哈尔滨市', '五常市', '0451', 3, 124);
+INSERT INTO `sys_areas_info` VALUES (1621, '河南省', '郑州市', '荥阳市', '0371', 3, 308);
+INSERT INTO `sys_areas_info` VALUES (1622, '江苏省', '苏州市', '金阊区', '0512', 3, 281);
+INSERT INTO `sys_areas_info` VALUES (1623, '吉林省', '吉林市', '舒兰市', '0432', 3, 240);
+INSERT INTO `sys_areas_info` VALUES (1624, '浙江省', '嘉兴市', '平湖市', '0573', 3, 107);
+INSERT INTO `sys_areas_info` VALUES (1625, '江西省', '赣州市', '龙南县', '0797', 3, 336);
+INSERT INTO `sys_areas_info` VALUES (1626, '贵州省', '黔南布依族苗族自治州', '贵定县', '0854', 3, 276);
+INSERT INTO `sys_areas_info` VALUES (1627, '湖北省', '襄樊市', '保康县', '0710', 3, 412);
+INSERT INTO `sys_areas_info` VALUES (1628, '四川省', '成都市', '邛崃市', '028', 3, 106);
+INSERT INTO `sys_areas_info` VALUES (1629, '陕西省', '西安市', '长安区', '029', 3, 334);
+INSERT INTO `sys_areas_info` VALUES (1630, '湖北省', '孝感市', '孝南区', '0712', 3, 210);
+INSERT INTO `sys_areas_info` VALUES (1631, '广东省', '中山市', '东区', '0760', 3, 167);
+INSERT INTO `sys_areas_info` VALUES (1632, '贵州省', '贵阳市', '南明区', '0851', 3, 273);
+INSERT INTO `sys_areas_info` VALUES (1633, '云南省', '昆明市', '寻甸回族彝族自治县', '0871', 3, 369);
+INSERT INTO `sys_areas_info` VALUES (1634, '山东省', '临沂市', '罗庄区', '0539', 3, 312);
+INSERT INTO `sys_areas_info` VALUES (1635, '河北省', '沧州市', '运河区', '0', 3, 286);
+INSERT INTO `sys_areas_info` VALUES (1636, '贵州省', '遵义市', '道真仡佬族苗族自治县', '0852', 3, 288);
+INSERT INTO `sys_areas_info` VALUES (1637, '吉林省', '长春市', '绿园区', '0431', 3, 112);
+INSERT INTO `sys_areas_info` VALUES (1638, '河北省', '唐山市', '滦县', '0', 3, 277);
+INSERT INTO `sys_areas_info` VALUES (1639, '贵州省', '遵义市', '遵义县', '0852', 3, 288);
+INSERT INTO `sys_areas_info` VALUES (1640, '江西省', '吉安市', '安福县', '0796', 3, 332);
+INSERT INTO `sys_areas_info` VALUES (1641, '黑龙江省', '齐齐哈尔市', '其他', '0452', 3, 195);
+INSERT INTO `sys_areas_info` VALUES (1642, '安徽省', '宣城市', '绩溪县', '0563', 3, 377);
+INSERT INTO `sys_areas_info` VALUES (1643, '福建省', '南平市', '政和县', '0599', 3, 119);
+INSERT INTO `sys_areas_info` VALUES (1644, '江西省', '九江市', '浔阳区', '0792', 3, 104);
+INSERT INTO `sys_areas_info` VALUES (1645, '山东省', '青岛市', '平度市', '0532', 3, 284);
+INSERT INTO `sys_areas_info` VALUES (1646, '福建省', '莆田市', '涵江区', '0594', 3, 346);
+INSERT INTO `sys_areas_info` VALUES (1647, '内蒙古自治区', '赤峰市', '红山区', '0476', 3, 314);
+INSERT INTO `sys_areas_info` VALUES (1648, '四川省', '内江市', '东兴区', '0832', 3, 322);
+INSERT INTO `sys_areas_info` VALUES (1649, '黑龙江省', '鹤岗市', '向阳区', '0468', 3, 188);
+INSERT INTO `sys_areas_info` VALUES (1650, '江西省', '抚州市', '东乡县', '0794', 3, 266);
+INSERT INTO `sys_areas_info` VALUES (1651, '河北省', '唐山市', '丰润区', '0', 3, 277);
+INSERT INTO `sys_areas_info` VALUES (1652, '浙江省', '绍兴市', '新昌县', '0575', 3, 307);
+INSERT INTO `sys_areas_info` VALUES (1653, '福建省', '三明市', '宁化县', '0598', 3, 411);
+INSERT INTO `sys_areas_info` VALUES (1654, '四川省', '泸州市', '江阳区', '0830', 3, 110);
+INSERT INTO `sys_areas_info` VALUES (1655, '山西省', '大同市', '灵丘县', '0352', 3, 108);
+INSERT INTO `sys_areas_info` VALUES (1656, '云南省', '昆明市', '嵩明县', '0871', 3, 369);
+INSERT INTO `sys_areas_info` VALUES (1657, '吉林省', '延边朝鲜族自治州', '汪清县', '0433', 3, 165);
+INSERT INTO `sys_areas_info` VALUES (1658, '甘肃省', '张掖市', '临泽县', '0936', 3, 362);
+INSERT INTO `sys_areas_info` VALUES (1659, '福建省', '厦门市', '海沧区', '0592', 3, 354);
+INSERT INTO `sys_areas_info` VALUES (1660, '西藏自治区', '山南地区', '乃东县', '0893', 3, 172);
+INSERT INTO `sys_areas_info` VALUES (1661, '安徽省', '宿州市', '墉桥区', '0557', 3, 181);
+INSERT INTO `sys_areas_info` VALUES (1662, '江西省', '九江市', '湖口县', '0792', 3, 104);
+INSERT INTO `sys_areas_info` VALUES (1663, '江苏省', '常州市', '金坛市', '0519', 3, 304);
+INSERT INTO `sys_areas_info` VALUES (1664, '四川省', '泸州市', '合江县', '0830', 3, 110);
+INSERT INTO `sys_areas_info` VALUES (1665, '黑龙江省', '七台河市', '桃山区', '0464', 3, 419);
+INSERT INTO `sys_areas_info` VALUES (1666, '宁夏回族自治区', '固原市', '彭阳县', '0954', 3, 358);
+INSERT INTO `sys_areas_info` VALUES (1667, '山东省', '枣庄市', '薛城区', '0632', 3, 235);
+INSERT INTO `sys_areas_info` VALUES (1668, '江西省', '九江市', '星子县', '0792', 3, 104);
+INSERT INTO `sys_areas_info` VALUES (1669, '云南省', '昭通市', '镇雄县', '0870', 3, 389);
+INSERT INTO `sys_areas_info` VALUES (1670, '贵州省', '黔西南布依族苗族自治州', '普安县', '0859', 3, 297);
+INSERT INTO `sys_areas_info` VALUES (1671, '四川省', '宜宾市', '高县', '0831', 3, 109);
+INSERT INTO `sys_areas_info` VALUES (1672, '辽宁省', '阜新市', '阜新蒙古族自治县', '0418', 3, 226);
+INSERT INTO `sys_areas_info` VALUES (1673, '广东省', '清远市', '英德市', '0763', 3, 196);
+INSERT INTO `sys_areas_info` VALUES (1674, '山东省', '淄博市', '沂源县', '0533', 3, 203);
+INSERT INTO `sys_areas_info` VALUES (1675, '江西省', '萍乡市', '上栗县', '0799', 3, 320);
+INSERT INTO `sys_areas_info` VALUES (1676, '江苏省', '泰州市', '海陵区', '0523', 3, 311);
+INSERT INTO `sys_areas_info` VALUES (1677, '河南省', '濮阳市', '濮阳县', '0393', 3, 319);
+INSERT INTO `sys_areas_info` VALUES (1678, '云南省', '临沧市', '沧源佤族自治县', '0883', 3, 270);
+INSERT INTO `sys_areas_info` VALUES (1679, '河南省', '新乡市', '辉县市', '0373', 3, 418);
+INSERT INTO `sys_areas_info` VALUES (1680, '江苏省', '南通市', '如皋市', '0513', 3, 416);
+INSERT INTO `sys_areas_info` VALUES (1681, '福建省', '泉州市', '洛江区', '0595', 3, 161);
+INSERT INTO `sys_areas_info` VALUES (1682, '湖南省', '张家界市', '永定区', '0744', 3, 300);
+INSERT INTO `sys_areas_info` VALUES (1683, '福建省', '龙岩市', '永定县', '0597', 3, 267);
+INSERT INTO `sys_areas_info` VALUES (1684, '福建省', '福州市', '马尾区', '0591', 3, 177);
+INSERT INTO `sys_areas_info` VALUES (1685, '山东省', '济宁市', '汶上县', '0537', 3, 169);
+INSERT INTO `sys_areas_info` VALUES (1686, '山西省', '运城市', '新绛县', '0359', 3, 236);
+INSERT INTO `sys_areas_info` VALUES (1687, '广东省', '江门市', '江海区', '0750', 3, 398);
+INSERT INTO `sys_areas_info` VALUES (1688, '河北省', '石家庄市', '桥东区', '0', 3, 264);
+INSERT INTO `sys_areas_info` VALUES (1689, '四川省', '雅安市', '汉源县', '0835', 3, 208);
+INSERT INTO `sys_areas_info` VALUES (1690, '广东省', '中山市', '石岐区', '0760', 3, 167);
+INSERT INTO `sys_areas_info` VALUES (1691, '河南省', '南阳市', '方城县', '0377', 3, 405);
+INSERT INTO `sys_areas_info` VALUES (1692, '广东省', '广州市', '荔湾区', '020', 3, 129);
+INSERT INTO `sys_areas_info` VALUES (1693, '湖北省', '孝感市', '大悟县', '0712', 3, 210);
+INSERT INTO `sys_areas_info` VALUES (1694, '安徽省', '黄山市', '歙县', '0559', 3, 279);
+INSERT INTO `sys_areas_info` VALUES (1695, '广东省', '东莞市', '东城区', '0769', 3, 229);
+INSERT INTO `sys_areas_info` VALUES (1696, '贵州省', '毕节地区', '其他', '0857', 3, 318);
+INSERT INTO `sys_areas_info` VALUES (1697, '江苏省', '苏州市', '张家港市', '0512', 3, 281);
+INSERT INTO `sys_areas_info` VALUES (1698, '江苏省', '南通市', '如东县', '0513', 3, 416);
+INSERT INTO `sys_areas_info` VALUES (1699, '黑龙江省', '哈尔滨市', '道外区', '0451', 3, 124);
+INSERT INTO `sys_areas_info` VALUES (1700, '重庆市', '重庆市', '大渡口区', '023', 3, 363);
+INSERT INTO `sys_areas_info` VALUES (1701, '贵州省', '铜仁地区', '松桃苗族自治县', '0856', 3, 272);
+INSERT INTO `sys_areas_info` VALUES (1702, '四川省', '南充市', '高坪区', '0817', 3, 350);
+INSERT INTO `sys_areas_info` VALUES (1703, '青海省', '西宁市', '城东区', '0971', 3, 193);
+INSERT INTO `sys_areas_info` VALUES (1704, '福建省', '漳州市', '芗城区', '0596', 3, 150);
+INSERT INTO `sys_areas_info` VALUES (1705, '山东省', '临沂市', '临沭县', '0539', 3, 312);
+INSERT INTO `sys_areas_info` VALUES (1706, '浙江省', '舟山市', '普陀区', '0580', 3, 194);
+INSERT INTO `sys_areas_info` VALUES (1707, '河北省', '承德市', '承德县', '0', 3, 127);
+INSERT INTO `sys_areas_info` VALUES (1708, '吉林省', '长春市', '双阳区', '0431', 3, 112);
+INSERT INTO `sys_areas_info` VALUES (1709, '河南省', '鹤壁市', '浚县', '0392', 3, 385);
+INSERT INTO `sys_areas_info` VALUES (1710, '黑龙江省', '伊春市', '友好区', '0458', 3, 125);
+INSERT INTO `sys_areas_info` VALUES (1711, '黑龙江省', '伊春市', '伊春区', '0458', 3, 125);
+INSERT INTO `sys_areas_info` VALUES (1712, '广西壮族自治区', '玉林市', '玉州区', '0775', 3, 338);
+INSERT INTO `sys_areas_info` VALUES (1713, '湖南省', '怀化市', '鹤城区', '0745', 3, 156);
+INSERT INTO `sys_areas_info` VALUES (1714, '安徽省', '宣城市', '郎溪县', '0563', 3, 377);
+INSERT INTO `sys_areas_info` VALUES (1715, '北京市', '北京市', '海淀区', '010', 3, 368);
+INSERT INTO `sys_areas_info` VALUES (1716, '内蒙古自治区', '赤峰市', '元宝山区', '0476', 3, 314);
+INSERT INTO `sys_areas_info` VALUES (1717, '新疆维吾尔族自治区', '伊犁哈萨克自治州', '霍城县', '0999', 3, 120);
+INSERT INTO `sys_areas_info` VALUES (1718, '广东省', '湛江市', '霞山区', '0759', 3, 171);
+INSERT INTO `sys_areas_info` VALUES (1719, '重庆市', '重庆市', '江北区', '023', 3, 363);
+INSERT INTO `sys_areas_info` VALUES (1720, '广东省', '东莞市', '莞城区', '0769', 3, 229);
+INSERT INTO `sys_areas_info` VALUES (1721, '江苏省', '连云港市', '赣榆县', '0518', 3, 101);
+INSERT INTO `sys_areas_info` VALUES (1722, '浙江省', '金华市', '东阳市', '0579', 3, 152);
+INSERT INTO `sys_areas_info` VALUES (1723, '四川省', '德阳市', '中江县', '0838', 3, 178);
+INSERT INTO `sys_areas_info` VALUES (1724, '河南省', '商丘市', '睢阳区', '0370', 3, 254);
+INSERT INTO `sys_areas_info` VALUES (1725, '安徽省', '淮北市', '濉溪县', '0561', 3, 407);
+INSERT INTO `sys_areas_info` VALUES (1726, '辽宁省', '鞍山市', '千山区', '0', 3, 301);
+INSERT INTO `sys_areas_info` VALUES (1727, '云南省', '丽江市', '华坪县', '0888', 3, 103);
+INSERT INTO `sys_areas_info` VALUES (1728, '内蒙古自治区', '包头市', '东河区', '0472', 3, 230);
+INSERT INTO `sys_areas_info` VALUES (1729, '江苏省', '泰州市', '靖江市', '0523', 3, 311);
+INSERT INTO `sys_areas_info` VALUES (1730, '河南省', '安阳市', '北关区', '0372', 3, 353);
+INSERT INTO `sys_areas_info` VALUES (1731, '江苏省', '苏州市', '太仓市', '0512', 3, 281);
+INSERT INTO `sys_areas_info` VALUES (1732, '河北省', '秦皇岛市', '昌黎县', '0', 3, 163);
+INSERT INTO `sys_areas_info` VALUES (1733, '四川省', '阿坝藏族羌族自治州', '汶川县', '0837', 3, 255);
+INSERT INTO `sys_areas_info` VALUES (1734, '河北省', '邢台市', '平乡县', '0', 3, 151);
+INSERT INTO `sys_areas_info` VALUES (1735, '广东省', '梅州市', '丰顺县', '0753', 3, 143);
+INSERT INTO `sys_areas_info` VALUES (1736, '江苏省', '南京市', '建邺区', '025', 3, 313);
+INSERT INTO `sys_areas_info` VALUES (1737, '北京市', '北京市', '密云县', '010', 3, 368);
+INSERT INTO `sys_areas_info` VALUES (1738, '安徽省', '阜阳市', '临泉县', '0558', 3, 265);
+INSERT INTO `sys_areas_info` VALUES (1739, '河南省', '洛阳市', '伊川县', '0379', 3, 214);
+INSERT INTO `sys_areas_info` VALUES (1740, '云南省', '德宏傣族景颇族自治州', '陇川县', '0692', 3, 184);
+INSERT INTO `sys_areas_info` VALUES (1741, '湖北省', '武汉市', '青山区', '027', 3, 113);
+INSERT INTO `sys_areas_info` VALUES (1742, '山西省', '运城市', '夏县', '0359', 3, 236);
+INSERT INTO `sys_areas_info` VALUES (1743, '河南省', '周口市', '项城市', '0394', 3, 102);
+INSERT INTO `sys_areas_info` VALUES (1744, '江苏省', '徐州市', '云龙区', '0516', 3, 130);
+INSERT INTO `sys_areas_info` VALUES (1745, '四川省', '自贡市', '贡井区', '0813', 3, 375);
+INSERT INTO `sys_areas_info` VALUES (1746, '陕西省', '西安市', '周至县', '029', 3, 334);
+INSERT INTO `sys_areas_info` VALUES (1747, '福建省', '福州市', '鼓楼区', '0591', 3, 177);
+INSERT INTO `sys_areas_info` VALUES (1748, '四川省', '雅安市', '雨城区', '0835', 3, 208);
+INSERT INTO `sys_areas_info` VALUES (1749, '上海市', '上海市', '徐汇区', '021', 3, 287);
+INSERT INTO `sys_areas_info` VALUES (1750, '江西省', '景德镇市', '乐平市', '0798', 3, 244);
+INSERT INTO `sys_areas_info` VALUES (1751, '辽宁省', '鞍山市', '铁东区', '0', 3, 301);
+INSERT INTO `sys_areas_info` VALUES (1752, '山西省', '临汾市', '曲沃县', '0357', 3, 238);
+INSERT INTO `sys_areas_info` VALUES (1753, '北京市', '北京市', '西城区', '010', 3, 368);
+INSERT INTO `sys_areas_info` VALUES (1754, '内蒙古自治区', '鄂尔多斯市', '达拉特旗', '0477', 3, 384);
+INSERT INTO `sys_areas_info` VALUES (1755, '云南省', '昆明市', '东川区', '0871', 3, 369);
+INSERT INTO `sys_areas_info` VALUES (1756, '辽宁省', '大连市', '西岗区', '0', 3, 262);
+INSERT INTO `sys_areas_info` VALUES (1757, '辽宁省', '抚顺市', '清原满族自治县', '0', 3, 158);
+INSERT INTO `sys_areas_info` VALUES (1758, '湖南省', '衡阳市', '蒸湘区', '0734', 3, 116);
+INSERT INTO `sys_areas_info` VALUES (1759, '辽宁省', '沈阳市', '法库县', '0', 3, 170);
+INSERT INTO `sys_areas_info` VALUES (1760, '河北省', '唐山市', '迁西县', '0', 3, 277);
+INSERT INTO `sys_areas_info` VALUES (1761, '福建省', '南平市', '建瓯市', '0599', 3, 119);
+INSERT INTO `sys_areas_info` VALUES (1762, '河北省', '石家庄市', '桥西区', '0', 3, 264);
+INSERT INTO `sys_areas_info` VALUES (1763, '河北省', '邯郸市', '峰峰矿区', '0', 3, 348);
+INSERT INTO `sys_areas_info` VALUES (1764, '山东省', '潍坊市', '坊子区', '0536', 3, 121);
+INSERT INTO `sys_areas_info` VALUES (1765, '湖南省', '郴州市', '苏仙区', '0735', 3, 370);
+INSERT INTO `sys_areas_info` VALUES (1766, '浙江省', '宁波市', '奉化市', '0574', 3, 217);
+INSERT INTO `sys_areas_info` VALUES (1767, '山东省', '枣庄市', '市中区', '0632', 3, 235);
+INSERT INTO `sys_areas_info` VALUES (1768, '湖北省', '襄樊市', '襄城区', '0710', 3, 412);
+INSERT INTO `sys_areas_info` VALUES (1769, '河南省', '驻马店市', '上蔡县', '0396', 3, 282);
+INSERT INTO `sys_areas_info` VALUES (1770, '安徽省', '合肥市', '庐阳区', '0551', 3, 299);
+INSERT INTO `sys_areas_info` VALUES (1771, '江西省', '鹰潭市', '月湖区', '0701', 3, 403);
+INSERT INTO `sys_areas_info` VALUES (1772, '河南省', '新乡市', '长垣县', '0373', 3, 418);
+INSERT INTO `sys_areas_info` VALUES (1773, '云南省', '文山壮族苗族自治州', '富宁县', '0876', 3, 426);
+INSERT INTO `sys_areas_info` VALUES (1774, '安徽省', '阜阳市', '颍东区', '0558', 3, 265);
+INSERT INTO `sys_areas_info` VALUES (1775, '辽宁省', '沈阳市', '东陵区', '0', 3, 170);
+INSERT INTO `sys_areas_info` VALUES (1776, '甘肃省', '定西市', '临洮县', '0932', 3, 327);
+INSERT INTO `sys_areas_info` VALUES (1777, '四川省', '成都市', '郫县', '028', 3, 106);
+INSERT INTO `sys_areas_info` VALUES (1778, '安徽省', '六安市', '金安区', '0564', 3, 253);
+INSERT INTO `sys_areas_info` VALUES (1779, '江西省', '赣州市', '信丰县', '0797', 3, 336);
+INSERT INTO `sys_areas_info` VALUES (1780, '江苏省', '无锡市', '北塘区', '0510', 3, 364);
+INSERT INTO `sys_areas_info` VALUES (1781, '云南省', '怒江傈僳族自治州', '福贡县', '0886', 3, 258);
+INSERT INTO `sys_areas_info` VALUES (1782, '福建省', '莆田市', '仙游县', '0594', 3, 346);
+INSERT INTO `sys_areas_info` VALUES (1783, '山西省', '太原市', '古交市', '0351', 3, 154);
+INSERT INTO `sys_areas_info` VALUES (1784, '河北省', '保定市', '涿州市', '0', 3, 209);
+INSERT INTO `sys_areas_info` VALUES (1785, '贵州省', '黔东南苗族侗族自治州', '麻江县', '0855', 3, 325);
+INSERT INTO `sys_areas_info` VALUES (1786, '河北省', '保定市', '容城县', '0', 3, 209);
+INSERT INTO `sys_areas_info` VALUES (1787, '河北省', '衡水市', '桃城区', '0', 3, 138);
+INSERT INTO `sys_areas_info` VALUES (1788, '内蒙古自治区', '呼伦贝尔市', '牙克石市', '0470', 3, 357);
+INSERT INTO `sys_areas_info` VALUES (1789, '山东省', '莱芜市', '莱城区', '0634', 3, 126);
+INSERT INTO `sys_areas_info` VALUES (1790, '河南省', '平顶山市', '卫东区', '0375', 3, 117);
+INSERT INTO `sys_areas_info` VALUES (1791, '安徽省', '合肥市', '肥东县', '0551', 3, 299);
+INSERT INTO `sys_areas_info` VALUES (1792, '河南省', '信阳市', '息县', '0376', 3, 269);
+INSERT INTO `sys_areas_info` VALUES (1793, '安徽省', '芜湖市', '镜湖区', '0553', 3, 425);
+INSERT INTO `sys_areas_info` VALUES (1794, '四川省', '绵阳市', '游仙区', '0816', 3, 224);
+INSERT INTO `sys_areas_info` VALUES (1795, '四川省', '德阳市', '绵竹市', '0838', 3, 178);
+INSERT INTO `sys_areas_info` VALUES (1796, '河南省', '洛阳市', '嵩县', '0379', 3, 214);
+INSERT INTO `sys_areas_info` VALUES (1797, '湖北省', '荆州市', '洪湖市', '0716', 3, 361);
+INSERT INTO `sys_areas_info` VALUES (1798, '云南省', '红河哈尼族彝族自治州', '石屏县', '0873', 3, 399);
+INSERT INTO `sys_areas_info` VALUES (1799, '贵州省', '遵义市', '正安县', '0852', 3, 288);
+INSERT INTO `sys_areas_info` VALUES (1800, '四川省', '遂宁市', '船山区', '0825', 3, 268);
+INSERT INTO `sys_areas_info` VALUES (1801, '广西壮族自治区', '百色市', '田林县', '0776', 3, 392);
+INSERT INTO `sys_areas_info` VALUES (1802, '河北省', '张家口市', '沽源县', '0', 3, 162);
+INSERT INTO `sys_areas_info` VALUES (1803, '安徽省', '宿州市', '泗县', '0557', 3, 181);
+INSERT INTO `sys_areas_info` VALUES (1804, '河北省', '廊坊市', '广阳区', '0', 3, 176);
+INSERT INTO `sys_areas_info` VALUES (1805, '湖南省', '衡阳市', '祁东县', '0734', 3, 116);
+INSERT INTO `sys_areas_info` VALUES (1806, '江苏省', '无锡市', '江阴市', '0510', 3, 364);
+INSERT INTO `sys_areas_info` VALUES (1807, '辽宁省', '朝阳市', '凌源市', '0421', 3, 174);
+INSERT INTO `sys_areas_info` VALUES (1808, '江苏省', '宿迁市', '泗阳县', '0527', 3, 285);
+INSERT INTO `sys_areas_info` VALUES (1809, '江西省', '吉安市', '吉州区', '0796', 3, 332);
+INSERT INTO `sys_areas_info` VALUES (1810, '江苏省', '镇江市', '句容市', '0511', 3, 283);
+INSERT INTO `sys_areas_info` VALUES (1811, '四川省', '凉山彝族自治州', '昭觉县', '0834', 3, 173);
+INSERT INTO `sys_areas_info` VALUES (1812, '河南省', '南阳市', '淅川县', '0377', 3, 405);
+INSERT INTO `sys_areas_info` VALUES (1813, '福建省', '南平市', '其他', '0599', 3, 119);
+INSERT INTO `sys_areas_info` VALUES (1814, '陕西省', '宝鸡市', '扶风县', '0917', 3, 232);
+INSERT INTO `sys_areas_info` VALUES (1815, '贵州省', '黔东南苗族侗族自治州', '凯里市', '0855', 3, 325);
+INSERT INTO `sys_areas_info` VALUES (1816, '黑龙江省', '大庆市', '萨尔图区', '0459', 3, 415);
+INSERT INTO `sys_areas_info` VALUES (1817, '山东省', '滨州市', '博兴县', '0543', 3, 245);
+INSERT INTO `sys_areas_info` VALUES (1818, '云南省', '临沧市', '云县', '0883', 3, 270);
+INSERT INTO `sys_areas_info` VALUES (1819, '山东省', '泰安市', '新泰市', '0538', 3, 192);
+INSERT INTO `sys_areas_info` VALUES (1820, '河北省', '张家口市', '宣化区', '0', 3, 162);
+INSERT INTO `sys_areas_info` VALUES (1821, '辽宁省', '阜新市', '海州区', '0418', 3, 226);
+INSERT INTO `sys_areas_info` VALUES (1822, '吉林省', '延边朝鲜族自治州', '敦化市', '0433', 3, 165);
+INSERT INTO `sys_areas_info` VALUES (1823, '福建省', '漳州市', '平和县', '0596', 3, 150);
+INSERT INTO `sys_areas_info` VALUES (1824, '湖北省', '天门市', '其他', '0728', 3, 359);
+INSERT INTO `sys_areas_info` VALUES (1825, '浙江省', '绍兴市', '上虞市', '0575', 3, 307);
+INSERT INTO `sys_areas_info` VALUES (1826, '江苏省', '常州市', '钟楼区', '0519', 3, 304);
+INSERT INTO `sys_areas_info` VALUES (1827, '河北省', '张家口市', '怀来县', '0', 3, 162);
+INSERT INTO `sys_areas_info` VALUES (1828, '浙江省', '舟山市', '岱山县', '0580', 3, 194);
+INSERT INTO `sys_areas_info` VALUES (1829, '安徽省', '滁州市', '琅琊区', '0550', 3, 380);
+INSERT INTO `sys_areas_info` VALUES (1830, '河北省', '保定市', '顺平县', '0', 3, 209);
+INSERT INTO `sys_areas_info` VALUES (1831, '天津市', '天津市', '汉沽区', '0', 3, 252);
+INSERT INTO `sys_areas_info` VALUES (1832, '四川省', '宜宾市', '翠屏区', '0831', 3, 109);
+INSERT INTO `sys_areas_info` VALUES (1833, '江西省', '上饶市', '余干县', '0793', 3, 234);
+INSERT INTO `sys_areas_info` VALUES (1834, '上海市', '上海市', '浦东新区', '021', 3, 287);
+INSERT INTO `sys_areas_info` VALUES (1835, '青海省', '西宁市', '城西区', '0971', 3, 193);
+INSERT INTO `sys_areas_info` VALUES (1836, '山东省', '威海市', '环翠区', '0631', 3, 256);
+INSERT INTO `sys_areas_info` VALUES (1837, '甘肃省', '临夏回族自治州', '临夏市', '0930', 3, 335);
+INSERT INTO `sys_areas_info` VALUES (1838, '湖南省', '娄底市', '双峰县', '0738', 3, 206);
+INSERT INTO `sys_areas_info` VALUES (1839, '广西壮族自治区', '南宁市', '横县', '0771', 3, 242);
+INSERT INTO `sys_areas_info` VALUES (1840, '上海市', '上海市', '长宁区', '021', 3, 287);
+INSERT INTO `sys_areas_info` VALUES (1841, '广东省', '江门市', '鹤山市', '0750', 3, 398);
+INSERT INTO `sys_areas_info` VALUES (1842, '福建省', '漳州市', '诏安县', '0596', 3, 150);
+INSERT INTO `sys_areas_info` VALUES (1843, '新疆维吾尔族自治区', '伊犁哈萨克自治州', '伊宁市', '0999', 3, 120);
+INSERT INTO `sys_areas_info` VALUES (1844, '重庆市', '重庆市', '合川区', '023', 3, 363);
+INSERT INTO `sys_areas_info` VALUES (1845, '河北省', '保定市', '曲阳县', '0', 3, 209);
+INSERT INTO `sys_areas_info` VALUES (1846, '浙江省', '嘉兴市', '秀洲区', '0573', 3, 107);
+INSERT INTO `sys_areas_info` VALUES (1847, '浙江省', '温州市', '洞头县', '0577', 3, 315);
+INSERT INTO `sys_areas_info` VALUES (1848, '湖北省', '武汉市', '洪山区', '027', 3, 113);
+INSERT INTO `sys_areas_info` VALUES (1849, '湖南省', '长沙市', '宁乡县', '0731', 3, 201);
+INSERT INTO `sys_areas_info` VALUES (1850, '河南省', '开封市', '顺河回族区', '0378', 3, 111);
+INSERT INTO `sys_areas_info` VALUES (1851, '江苏省', '扬州市', '江都市', '0514', 3, 136);
+INSERT INTO `sys_areas_info` VALUES (1852, '天津市', '天津市', '西青区', '0', 3, 252);
+INSERT INTO `sys_areas_info` VALUES (1853, '辽宁省', '沈阳市', '铁西区', '0', 3, 170);
+INSERT INTO `sys_areas_info` VALUES (1854, '浙江省', '衢州市', '开化县', '0570', 3, 257);
+INSERT INTO `sys_areas_info` VALUES (1855, '云南省', '红河哈尼族彝族自治州', '泸西县', '0873', 3, 399);
+INSERT INTO `sys_areas_info` VALUES (1856, '山西省', '晋中市', '介休市', '0354', 3, 139);
+INSERT INTO `sys_areas_info` VALUES (1857, '广西壮族自治区', '贵港市', '其他', '0775', 3, 295);
+INSERT INTO `sys_areas_info` VALUES (1858, '广西壮族自治区', '贺州市', '钟山县', '0774', 3, 135);
+INSERT INTO `sys_areas_info` VALUES (1859, '天津市', '天津市', '宁河县', '0', 3, 252);
+INSERT INTO `sys_areas_info` VALUES (1860, '浙江省', '嘉兴市', '嘉善县', '0573', 3, 107);
+INSERT INTO `sys_areas_info` VALUES (1861, '云南省', '怒江傈僳族自治州', '泸水县', '0886', 3, 258);
+INSERT INTO `sys_areas_info` VALUES (1862, '广西壮族自治区', '贵港市', '桂平市', '0775', 3, 295);
+INSERT INTO `sys_areas_info` VALUES (1863, '重庆市', '重庆市', '开县', '023', 3, 363);
+INSERT INTO `sys_areas_info` VALUES (1864, '陕西省', '汉中市', '汉台区', '0916', 3, 379);
+INSERT INTO `sys_areas_info` VALUES (1865, '海南省', '海口市', '美兰区', '0898', 3, 219);
+INSERT INTO `sys_areas_info` VALUES (1866, '内蒙古自治区', '呼伦贝尔市', '海拉尔区', '0470', 3, 357);
+INSERT INTO `sys_areas_info` VALUES (1867, '新疆维吾尔族自治区', '巴音郭楞蒙古自治州', '其他', '0996', 3, 310);
+INSERT INTO `sys_areas_info` VALUES (1868, '河南省', '许昌市', '魏都区', '0374', 3, 345);
+INSERT INTO `sys_areas_info` VALUES (1869, '浙江省', '温州市', '苍南县', '0577', 3, 315);
+INSERT INTO `sys_areas_info` VALUES (1870, '河南省', '新乡市', '封丘县', '0373', 3, 418);
+INSERT INTO `sys_areas_info` VALUES (1871, '山东省', '东营市', '河口区', '0546', 3, 140);
+INSERT INTO `sys_areas_info` VALUES (1872, '浙江省', '台州市', '黄岩区', '0576', 3, 289);
+INSERT INTO `sys_areas_info` VALUES (1873, '浙江省', '绍兴市', '嵊州市', '0575', 3, 307);
+INSERT INTO `sys_areas_info` VALUES (1874, '广西壮族自治区', '南宁市', '武鸣县', '0771', 3, 242);
+INSERT INTO `sys_areas_info` VALUES (1875, '河北省', '张家口市', '蔚县', '0', 3, 162);
+INSERT INTO `sys_areas_info` VALUES (1876, '江苏省', '无锡市', '崇安区', '0510', 3, 364);
+INSERT INTO `sys_areas_info` VALUES (1877, '重庆市', '重庆市', '沙坪坝区', '023', 3, 363);
+INSERT INTO `sys_areas_info` VALUES (1878, '安徽省', '安庆市', '大观区', '0556', 3, 246);
+INSERT INTO `sys_areas_info` VALUES (1879, '四川省', '攀枝花市', '东区', '0812', 3, 428);
+INSERT INTO `sys_areas_info` VALUES (1880, '山东省', '枣庄市', '滕州市', '0632', 3, 235);
+INSERT INTO `sys_areas_info` VALUES (1881, '江苏省', '连云港市', '灌云县', '0518', 3, 101);
+INSERT INTO `sys_areas_info` VALUES (1882, '云南省', '临沧市', '耿马傣族佤族自治县', '0883', 3, 270);
+INSERT INTO `sys_areas_info` VALUES (1883, '宁夏回族自治区', '吴忠市', '青铜峡市', '0953', 3, 383);
+INSERT INTO `sys_areas_info` VALUES (1884, '辽宁省', '铁岭市', '铁岭县', '0410', 3, 223);
+INSERT INTO `sys_areas_info` VALUES (1885, '上海市', '上海市', '奉贤区', '021', 3, 287);
+INSERT INTO `sys_areas_info` VALUES (1886, '广东省', '中山市', '五桂山区', '0760', 3, 167);
+INSERT INTO `sys_areas_info` VALUES (1887, '内蒙古自治区', '巴彦淖尔市', '临河区', '0478', 3, 316);
+INSERT INTO `sys_areas_info` VALUES (1888, '四川省', '泸州市', '龙马潭区', '0830', 3, 110);
+INSERT INTO `sys_areas_info` VALUES (1889, '浙江省', '温州市', '其他', '0577', 3, 315);
+INSERT INTO `sys_areas_info` VALUES (1890, '贵州省', '黔东南苗族侗族自治州', '岑巩县', '0855', 3, 325);
+INSERT INTO `sys_areas_info` VALUES (1891, '江西省', '萍乡市', '湘东区', '0799', 3, 320);
+INSERT INTO `sys_areas_info` VALUES (1892, '广东省', '广州市', '越秀区', '020', 3, 129);
+INSERT INTO `sys_areas_info` VALUES (1893, '江西省', '宜春市', '宜丰县', '0795', 3, 142);
+INSERT INTO `sys_areas_info` VALUES (1894, '河北省', '保定市', '博野县', '0', 3, 209);
+INSERT INTO `sys_areas_info` VALUES (1895, '浙江省', '丽水市', '龙泉市', '0578', 3, 365);
+INSERT INTO `sys_areas_info` VALUES (1896, '山西省', '阳泉市', '城区', '0353', 3, 137);
+INSERT INTO `sys_areas_info` VALUES (1897, '河北省', '廊坊市', '大城县', '0', 3, 176);
+INSERT INTO `sys_areas_info` VALUES (1898, '山东省', '聊城市', '莘县', '0635', 3, 402);
+INSERT INTO `sys_areas_info` VALUES (1899, '山东省', '潍坊市', '寿光市', '0536', 3, 121);
+INSERT INTO `sys_areas_info` VALUES (1900, '福建省', '南平市', '建阳市', '0599', 3, 119);
+INSERT INTO `sys_areas_info` VALUES (1901, '云南省', '红河哈尼族彝族自治州', '弥勒县', '0873', 3, 399);
+INSERT INTO `sys_areas_info` VALUES (1902, '河北省', '邢台市', '其他', '0', 3, 151);
+INSERT INTO `sys_areas_info` VALUES (1903, '吉林省', '长春市', '德惠市', '0431', 3, 112);
+INSERT INTO `sys_areas_info` VALUES (1904, '安徽省', '合肥市', '长丰县', '0551', 3, 299);
+INSERT INTO `sys_areas_info` VALUES (1905, '广西壮族自治区', '贵港市', '港南区', '0775', 3, 295);
+INSERT INTO `sys_areas_info` VALUES (1906, '吉林省', '松原市', '其他', '0438', 3, 333);
+INSERT INTO `sys_areas_info` VALUES (1907, '青海省', '西宁市', '大通回族土族自治县', '0971', 3, 193);
+INSERT INTO `sys_areas_info` VALUES (1908, '山西省', '阳泉市', '盂县', '0353', 3, 137);
+INSERT INTO `sys_areas_info` VALUES (1909, '天津市', '天津市', '大港区', '0', 3, 252);
+INSERT INTO `sys_areas_info` VALUES (1910, '河北省', '邯郸市', '大名县', '0', 3, 348);
+INSERT INTO `sys_areas_info` VALUES (1911, '河南省', '洛阳市', '宜阳县', '0379', 3, 214);
+INSERT INTO `sys_areas_info` VALUES (1912, '贵州省', '黔东南苗族侗族自治州', '剑河县', '0855', 3, 325);
+INSERT INTO `sys_areas_info` VALUES (1913, '福建省', '南平市', '邵武市', '0599', 3, 119);
+INSERT INTO `sys_areas_info` VALUES (1914, '江西省', '赣州市', '石城县', '0797', 3, 336);
+INSERT INTO `sys_areas_info` VALUES (1915, '吉林省', '松原市', '宁江区', '0438', 3, 333);
+INSERT INTO `sys_areas_info` VALUES (1916, '云南省', '楚雄彝族自治州', '永仁县', '0878', 3, 231);
+INSERT INTO `sys_areas_info` VALUES (1917, '福建省', '三明市', '明溪县', '0598', 3, 411);
+INSERT INTO `sys_areas_info` VALUES (1918, '内蒙古自治区', '赤峰市', '林西县', '0476', 3, 314);
+INSERT INTO `sys_areas_info` VALUES (1919, '河北省', '秦皇岛市', '抚宁县', '0', 3, 163);
+INSERT INTO `sys_areas_info` VALUES (1920, '广西壮族自治区', '梧州市', '蝶山区', '0774', 3, 280);
+INSERT INTO `sys_areas_info` VALUES (1921, '云南省', '思茅市', '普洱哈尼族彝族自治县', NULL, 3, 168);
+INSERT INTO `sys_areas_info` VALUES (1922, '海南省', '儋州市', '那大镇', '0898', 3, 199);
+INSERT INTO `sys_areas_info` VALUES (1923, '辽宁省', '抚顺市', '抚顺县', '0', 3, 158);
+INSERT INTO `sys_areas_info` VALUES (1924, '湖南省', '益阳市', '南县', '0737', 3, 145);
+INSERT INTO `sys_areas_info` VALUES (1925, '福建省', '三明市', '沙县', '0598', 3, 411);
+INSERT INTO `sys_areas_info` VALUES (1926, '江西省', '九江市', '德安县', '0792', 3, 104);
+INSERT INTO `sys_areas_info` VALUES (1927, '北京市', '北京市', '大兴区', '010', 3, 368);
+INSERT INTO `sys_areas_info` VALUES (1928, '四川省', '巴中市', '巴州区', '0827', 3, 233);
+INSERT INTO `sys_areas_info` VALUES (1929, '黑龙江省', '黑河市', '其他', '0456', 3, 131);
+INSERT INTO `sys_areas_info` VALUES (1930, '山东省', '潍坊市', '诸城市', '0536', 3, 121);
+INSERT INTO `sys_areas_info` VALUES (1931, '四川省', '成都市', '大邑县', '028', 3, 106);
+INSERT INTO `sys_areas_info` VALUES (1932, '江苏省', '扬州市', '维扬区', '0514', 3, 136);
+INSERT INTO `sys_areas_info` VALUES (1933, '河北省', '唐山市', '滦南县', '0', 3, 277);
+INSERT INTO `sys_areas_info` VALUES (1934, '河北省', '唐山市', '路南区', '0', 3, 277);
+INSERT INTO `sys_areas_info` VALUES (1935, '湖南省', '衡阳市', '南岳区', '0734', 3, 116);
+INSERT INTO `sys_areas_info` VALUES (1936, '贵州省', '黔南布依族苗族自治州', '福泉市', '0854', 3, 276);
+INSERT INTO `sys_areas_info` VALUES (1937, '四川省', '广元市', '市中区', '0839', 3, 298);
+INSERT INTO `sys_areas_info` VALUES (1938, '山西省', '朔州市', '怀仁县', '0349', 3, 290);
+INSERT INTO `sys_areas_info` VALUES (1939, '浙江省', '杭州市', '上城区', '0571', 3, 263);
+INSERT INTO `sys_areas_info` VALUES (1940, '湖南省', '岳阳市', '云溪区', '0730', 3, 393);
+INSERT INTO `sys_areas_info` VALUES (1941, '湖北省', '武汉市', '江汉区', '027', 3, 113);
+INSERT INTO `sys_areas_info` VALUES (1942, '河南省', '信阳市', '光山县', '0376', 3, 269);
+INSERT INTO `sys_areas_info` VALUES (1943, '湖南省', '衡阳市', '衡南县', '0734', 3, 116);
+INSERT INTO `sys_areas_info` VALUES (1944, '河南省', '南阳市', '社旗县', '0377', 3, 405);
+INSERT INTO `sys_areas_info` VALUES (1945, '辽宁省', '大连市', '旅顺口区', '0', 3, 262);
+INSERT INTO `sys_areas_info` VALUES (1946, '北京市', '北京市', '平谷区', '010', 3, 368);
+INSERT INTO `sys_areas_info` VALUES (1947, '海南省', '琼海市', '其他', '0898', 3, 351);
+INSERT INTO `sys_areas_info` VALUES (1948, '重庆市', '重庆市', '渝北区', '023', 3, 363);
+INSERT INTO `sys_areas_info` VALUES (1949, '江西省', '赣州市', '安远县', '0797', 3, 336);
+INSERT INTO `sys_areas_info` VALUES (1950, '山西省', '临汾市', '翼城县', '0357', 3, 238);
+INSERT INTO `sys_areas_info` VALUES (1951, '河北省', '邯郸市', '临漳县', '0', 3, 348);
+INSERT INTO `sys_areas_info` VALUES (1952, '河南省', '开封市', '杞县', '0378', 3, 111);
+INSERT INTO `sys_areas_info` VALUES (1953, '广西壮族自治区', '贵港市', '平南县', '0775', 3, 295);
+INSERT INTO `sys_areas_info` VALUES (1954, '上海市', '上海市', '金山区', '021', 3, 287);
+INSERT INTO `sys_areas_info` VALUES (1955, '贵州省', '六盘水市', '其他', '0858', 3, 339);
+INSERT INTO `sys_areas_info` VALUES (1956, '四川省', '广元市', '剑阁县', '0839', 3, 298);
+INSERT INTO `sys_areas_info` VALUES (1957, '四川省', '遂宁市', '射洪县', '0825', 3, 268);
+INSERT INTO `sys_areas_info` VALUES (1958, '广西壮族自治区', '崇左市', '扶绥县', '0771', 3, 241);
+INSERT INTO `sys_areas_info` VALUES (1959, '江苏省', '盐城市', '东台市', '0515', 3, 329);
+INSERT INTO `sys_areas_info` VALUES (1960, '辽宁省', '鞍山市', '其他', '0', 3, 301);
+INSERT INTO `sys_areas_info` VALUES (1961, '福建省', '福州市', '晋安区', '0591', 3, 177);
+INSERT INTO `sys_areas_info` VALUES (1962, '四川省', '广安市', '武胜县', '0826', 3, 237);
+INSERT INTO `sys_areas_info` VALUES (1963, '广西壮族自治区', '来宾市', '武宣县', '0772', 3, 225);
+INSERT INTO `sys_areas_info` VALUES (1964, '江苏省', '无锡市', '宜兴市', '0510', 3, 364);
+INSERT INTO `sys_areas_info` VALUES (1965, '广西壮族自治区', '北海市', '海城区', '0779', 3, 331);
+INSERT INTO `sys_areas_info` VALUES (1966, '辽宁省', '葫芦岛市', '兴城市', '0429', 3, 213);
+INSERT INTO `sys_areas_info` VALUES (1967, '辽宁省', '营口市', '鲅鱼圈区', '0417', 3, 166);
+INSERT INTO `sys_areas_info` VALUES (1968, '辽宁省', '丹东市', '元宝区', '0415', 3, 305);
+INSERT INTO `sys_areas_info` VALUES (1969, '辽宁省', '葫芦岛市', '连山区', '0429', 3, 213);
+INSERT INTO `sys_areas_info` VALUES (1970, '江西省', '南昌市', '南昌县', '0791', 3, 200);
+INSERT INTO `sys_areas_info` VALUES (1971, '黑龙江省', '鸡西市', '虎林市', '0467', 3, 128);
+INSERT INTO `sys_areas_info` VALUES (1972, '湖南省', '永州市', '蓝山县', '0746', 3, 408);
+INSERT INTO `sys_areas_info` VALUES (1973, '河南省', '驻马店市', '遂平县', '0396', 3, 282);
+INSERT INTO `sys_areas_info` VALUES (1974, '贵州省', '黔南布依族苗族自治州', '瓮安县', '0854', 3, 276);
+INSERT INTO `sys_areas_info` VALUES (1975, '安徽省', '宿州市', '其他', '0557', 3, 181);
+INSERT INTO `sys_areas_info` VALUES (1976, '广西壮族自治区', '崇左市', '江洲区', '0771', 3, 241);
+INSERT INTO `sys_areas_info` VALUES (1977, '新疆维吾尔族自治区', '伊犁哈萨克自治州', '伊宁县', '0999', 3, 120);
+INSERT INTO `sys_areas_info` VALUES (1978, '山东省', '聊城市', '临清市', '0635', 3, 402);
+INSERT INTO `sys_areas_info` VALUES (1979, '广西壮族自治区', '柳州市', '鹿寨县', '0772', 3, 388);
+INSERT INTO `sys_areas_info` VALUES (1980, '山西省', '吕梁市', '离石区', '0358', 3, 227);
+INSERT INTO `sys_areas_info` VALUES (1981, '湖南省', '株洲市', '天元区', '0731', 3, 302);
+INSERT INTO `sys_areas_info` VALUES (1982, '湖北省', '黄冈市', '其他', '0713', 3, 397);
+INSERT INTO `sys_areas_info` VALUES (1983, '江西省', '吉安市', '新干县', '0796', 3, 332);
+INSERT INTO `sys_areas_info` VALUES (1984, '黑龙江省', '牡丹江市', '西安区', '0453', 3, 260);
+INSERT INTO `sys_areas_info` VALUES (1985, '河南省', '濮阳市', '华龙区', '0393', 3, 319);
+INSERT INTO `sys_areas_info` VALUES (1986, '广东省', '东莞市', '厚街镇', '0769', 3, 229);
+INSERT INTO `sys_areas_info` VALUES (1987, '湖北省', '黄冈市', '黄州区', '0713', 3, 397);
+INSERT INTO `sys_areas_info` VALUES (1988, '浙江省', '金华市', '永康市', '0579', 3, 152);
+INSERT INTO `sys_areas_info` VALUES (1989, '广西壮族自治区', '桂林市', '兴安县', '0773', 3, 400);
+INSERT INTO `sys_areas_info` VALUES (1990, '浙江省', '绍兴市', '越城区', '0575', 3, 307);
+INSERT INTO `sys_areas_info` VALUES (1991, '河南省', '洛阳市', '涧西区', '0379', 3, 214);
+INSERT INTO `sys_areas_info` VALUES (1992, '四川省', '成都市', '都江堰市', '028', 3, 106);
+INSERT INTO `sys_areas_info` VALUES (1993, '江苏省', '镇江市', '丹徒区', '0511', 3, 283);
+INSERT INTO `sys_areas_info` VALUES (1994, '湖南省', '岳阳市', '岳阳楼区', '0730', 3, 393);
+INSERT INTO `sys_areas_info` VALUES (1995, '广东省', '湛江市', '遂溪县', '0759', 3, 171);
+INSERT INTO `sys_areas_info` VALUES (1996, '江苏省', '南京市', '白下区', '025', 3, 313);
+INSERT INTO `sys_areas_info` VALUES (1997, '江苏省', '扬州市', '宝应县', '0514', 3, 136);
+INSERT INTO `sys_areas_info` VALUES (1998, '北京市', '北京市', '东城区', '010', 3, 368);
+INSERT INTO `sys_areas_info` VALUES (1999, '山东省', '威海市', '乳山市', '0631', 3, 256);
+INSERT INTO `sys_areas_info` VALUES (2000, '广东省', '阳江市', '阳春市', '0662', 3, 413);
+INSERT INTO `sys_areas_info` VALUES (2001, '浙江省', '丽水市', '遂昌县', '0578', 3, 365);
+INSERT INTO `sys_areas_info` VALUES (2002, '河南省', '洛阳市', '洛龙区', '0379', 3, 214);
+INSERT INTO `sys_areas_info` VALUES (2003, '广西壮族自治区', '贵港市', '覃塘区', '0775', 3, 295);
+INSERT INTO `sys_areas_info` VALUES (2004, '云南省', '曲靖市', '宣威市', '0874', 3, 420);
+INSERT INTO `sys_areas_info` VALUES (2005, '贵州省', '遵义市', '桐梓县', '0852', 3, 288);
+INSERT INTO `sys_areas_info` VALUES (2006, '湖南省', '湘潭市', '岳塘区', '0731', 3, 337);
+INSERT INTO `sys_areas_info` VALUES (2007, '重庆市', '重庆市', '奉节县', '023', 3, 363);
+INSERT INTO `sys_areas_info` VALUES (2008, '云南省', '昆明市', '西山区', '0871', 3, 369);
+INSERT INTO `sys_areas_info` VALUES (2009, '河北省', '沧州市', '肃宁县', '0', 3, 286);
+INSERT INTO `sys_areas_info` VALUES (2010, '安徽省', '黄山市', '黄山区', '0559', 3, 279);
+INSERT INTO `sys_areas_info` VALUES (2011, '贵州省', '贵阳市', '花溪区', '0851', 3, 273);
+INSERT INTO `sys_areas_info` VALUES (2012, '福建省', '泉州市', '惠安县', '0595', 3, 161);
+INSERT INTO `sys_areas_info` VALUES (2013, '河南省', '洛阳市', '西工区', '0379', 3, 214);
+INSERT INTO `sys_areas_info` VALUES (2014, '湖北省', '宜昌市', '兴山县', '0717', 3, 423);
+INSERT INTO `sys_areas_info` VALUES (2015, '湖北省', '孝感市', '孝昌县', '0712', 3, 210);
+INSERT INTO `sys_areas_info` VALUES (2016, '福建省', '厦门市', '同安区', '0592', 3, 354);
+INSERT INTO `sys_areas_info` VALUES (2017, '河南省', '周口市', '川汇区', '0394', 3, 102);
+INSERT INTO `sys_areas_info` VALUES (2018, '内蒙古自治区', '呼和浩特市', '新城区', '0471', 3, 422);
+INSERT INTO `sys_areas_info` VALUES (2019, '山东省', '日照市', '东港区', '0633', 3, 115);
+INSERT INTO `sys_areas_info` VALUES (2020, '山东省', '淄博市', '博山区', '0533', 3, 203);
+INSERT INTO `sys_areas_info` VALUES (2021, '浙江省', '宁波市', '江东区', '0574', 3, 217);
+INSERT INTO `sys_areas_info` VALUES (2022, '陕西省', '咸阳市', '秦都区', '029', 3, 180);
+INSERT INTO `sys_areas_info` VALUES (2023, '山东省', '德州市', '德城区', '0534', 3, 133);
+INSERT INTO `sys_areas_info` VALUES (2024, '河北省', '唐山市', '迁安市', '0', 3, 277);
+INSERT INTO `sys_areas_info` VALUES (2025, '河北省', '邢台市', '南和县', '0', 3, 151);
+INSERT INTO `sys_areas_info` VALUES (2026, '湖南省', '邵阳市', '洞口县', '0739', 3, 274);
+INSERT INTO `sys_areas_info` VALUES (2027, '山西省', '吕梁市', '文水县', '0358', 3, 227);
+INSERT INTO `sys_areas_info` VALUES (2028, '新疆维吾尔族自治区', '昌吉回族自治州', '奇台县', '0994', 3, 293);
+INSERT INTO `sys_areas_info` VALUES (2029, '河北省', '张家口市', '万全县', '0', 3, 162);
+INSERT INTO `sys_areas_info` VALUES (2030, '广西壮族自治区', '百色市', '凌云县', '0776', 3, 392);
+INSERT INTO `sys_areas_info` VALUES (2031, '内蒙古自治区', '赤峰市', '巴林左旗', '0476', 3, 314);
+INSERT INTO `sys_areas_info` VALUES (2032, '河南省', '开封市', '兰考县', '0378', 3, 111);
+INSERT INTO `sys_areas_info` VALUES (2033, '新疆维吾尔族自治区', '和田地区', '和田市', '0903', 3, 292);
+INSERT INTO `sys_areas_info` VALUES (2034, '山西省', '吕梁市', '石楼县', '0358', 3, 227);
+INSERT INTO `sys_areas_info` VALUES (2035, '山东省', '泰安市', '泰山区', '0538', 3, 192);
+INSERT INTO `sys_areas_info` VALUES (2036, '山东省', '临沂市', '沂南县', '0539', 3, 312);
+INSERT INTO `sys_areas_info` VALUES (2037, '内蒙古自治区', '赤峰市', '其他', '0476', 3, 314);
+INSERT INTO `sys_areas_info` VALUES (2038, '河北省', '石家庄市', '平山县', '0', 3, 264);
+INSERT INTO `sys_areas_info` VALUES (2039, '河南省', '驻马店市', '新蔡县', '0396', 3, 282);
+INSERT INTO `sys_areas_info` VALUES (2040, '江苏省', '徐州市', '泉山区', '0516', 3, 130);
+INSERT INTO `sys_areas_info` VALUES (2041, '甘肃省', '酒泉市', '敦煌市', '0937', 3, 409);
+INSERT INTO `sys_areas_info` VALUES (2042, '湖南省', '郴州市', '临武县', '0735', 3, 370);
+INSERT INTO `sys_areas_info` VALUES (2043, '江苏省', '徐州市', '铜山县', '0516', 3, 130);
+INSERT INTO `sys_areas_info` VALUES (2044, '湖北省', '襄樊市', '宜城市', '0710', 3, 412);
+INSERT INTO `sys_areas_info` VALUES (2045, '湖南省', '湘西土家族苗族自治州', '永顺县', '0743', 3, 211);
+INSERT INTO `sys_areas_info` VALUES (2046, '广西壮族自治区', '百色市', '右江区', '0776', 3, 392);
+INSERT INTO `sys_areas_info` VALUES (2047, '云南省', '楚雄彝族自治州', '楚雄市', '0878', 3, 231);
+INSERT INTO `sys_areas_info` VALUES (2048, '河南省', '许昌市', '长葛市', '0374', 3, 345);
+INSERT INTO `sys_areas_info` VALUES (2049, '河南省', '周口市', '商水县', '0394', 3, 102);
+INSERT INTO `sys_areas_info` VALUES (2050, '黑龙江省', '鸡西市', '鸡东县', '0467', 3, 128);
+INSERT INTO `sys_areas_info` VALUES (2051, '广东省', '湛江市', '吴川市', '0759', 3, 171);
+INSERT INTO `sys_areas_info` VALUES (2052, '安徽省', '合肥市', '瑶海区', '0551', 3, 299);
+INSERT INTO `sys_areas_info` VALUES (2053, '云南省', '文山壮族苗族自治州', '砚山县', '0876', 3, 426);
+INSERT INTO `sys_areas_info` VALUES (2054, '山西省', '阳泉市', '平定县', '0353', 3, 137);
+INSERT INTO `sys_areas_info` VALUES (2055, '河北省', '石家庄市', '新华区', '0', 3, 264);
+INSERT INTO `sys_areas_info` VALUES (2056, '河北省', '沧州市', '青县', '0', 3, 286);
+INSERT INTO `sys_areas_info` VALUES (2057, '陕西省', '西安市', '莲湖区', '029', 3, 334);
+INSERT INTO `sys_areas_info` VALUES (2058, '河北省', '石家庄市', '新乐市', '0', 3, 264);
+INSERT INTO `sys_areas_info` VALUES (2059, '辽宁省', '大连市', '甘井子区', '0', 3, 262);
+INSERT INTO `sys_areas_info` VALUES (2060, '浙江省', '温州市', '鹿城区', '0577', 3, 315);
+INSERT INTO `sys_areas_info` VALUES (2061, '新疆维吾尔族自治区', '伊犁哈萨克自治州', '奎屯市', '0999', 3, 120);
+INSERT INTO `sys_areas_info` VALUES (2062, '江西省', '赣州市', '章贡区', '0797', 3, 336);
+INSERT INTO `sys_areas_info` VALUES (2063, '吉林省', '长春市', '宽城区', '0431', 3, 112);
+INSERT INTO `sys_areas_info` VALUES (2064, '上海市', '上海市', '虹口区', '021', 3, 287);
+INSERT INTO `sys_areas_info` VALUES (2065, '辽宁省', '葫芦岛市', '绥中县', '0429', 3, 213);
+INSERT INTO `sys_areas_info` VALUES (2066, '黑龙江省', '大庆市', '让胡路区', '0459', 3, 415);
+INSERT INTO `sys_areas_info` VALUES (2067, '河北省', '保定市', '满城县', '0', 3, 209);
+INSERT INTO `sys_areas_info` VALUES (2068, '福建省', '宁德市', '其他', '0593', 3, 202);
+INSERT INTO `sys_areas_info` VALUES (2069, '山西省', '长治市', '长治县', '0355', 3, 394);
+INSERT INTO `sys_areas_info` VALUES (2070, '福建省', '南平市', '顺昌县', '0599', 3, 119);
+INSERT INTO `sys_areas_info` VALUES (2071, '河南省', '驻马店市', '驿城区', '0396', 3, 282);
+INSERT INTO `sys_areas_info` VALUES (2072, '海南省', '五指山市', '其他', '0898', 3, 164);
+INSERT INTO `sys_areas_info` VALUES (2073, '宁夏回族自治区', '银川市', '兴庆区', '0951', 3, 247);
+INSERT INTO `sys_areas_info` VALUES (2074, '河北省', '邢台市', '隆尧县', '0', 3, 151);
+INSERT INTO `sys_areas_info` VALUES (2075, '山东省', '东营市', '利津县', '0546', 3, 140);
+INSERT INTO `sys_areas_info` VALUES (2076, '湖南省', '湘潭市', '雨湖区', '0731', 3, 337);
+INSERT INTO `sys_areas_info` VALUES (2077, '湖北省', '武汉市', '汉阳区', '027', 3, 113);
+INSERT INTO `sys_areas_info` VALUES (2078, '安徽省', '安庆市', '枞阳县', '0556', 3, 246);
+INSERT INTO `sys_areas_info` VALUES (2079, '四川省', '泸州市', '纳溪区', '0830', 3, 110);
+INSERT INTO `sys_areas_info` VALUES (2080, '安徽省', '合肥市', '包河区', '0551', 3, 299);
+INSERT INTO `sys_areas_info` VALUES (2081, '江西省', '上饶市', '万年县', '0793', 3, 234);
+INSERT INTO `sys_areas_info` VALUES (2082, '广西壮族自治区', '玉林市', '容县', '0775', 3, 338);
+INSERT INTO `sys_areas_info` VALUES (2083, '上海市', '上海市', '卢湾区', '021', 3, 287);
+INSERT INTO `sys_areas_info` VALUES (2084, '甘肃省', '白银市', '白银区', '0943', 3, 157);
+INSERT INTO `sys_areas_info` VALUES (2085, '贵州省', '铜仁地区', '德江县', '0856', 3, 272);
+INSERT INTO `sys_areas_info` VALUES (2086, '黑龙江省', '鹤岗市', '工农区', '0468', 3, 188);
+INSERT INTO `sys_areas_info` VALUES (2087, '新疆维吾尔族自治区', '喀什地区', '喀什市', '0998', 3, 296);
+INSERT INTO `sys_areas_info` VALUES (2088, '江苏省', '镇江市', '润州区', '0511', 3, 283);
+INSERT INTO `sys_areas_info` VALUES (2089, '湖北省', '恩施市', '宣恩县', '0718', 3, 340);
+INSERT INTO `sys_areas_info` VALUES (2090, '江西省', '宜春市', '丰城市', '0795', 3, 142);
+INSERT INTO `sys_areas_info` VALUES (2091, '四川省', '成都市', '崇州市', '028', 3, 106);
+INSERT INTO `sys_areas_info` VALUES (2092, '安徽省', '滁州市', '全椒县', '0550', 3, 380);
+INSERT INTO `sys_areas_info` VALUES (2093, '湖北省', '十堰市', '丹江口市', '0719', 3, 185);
+INSERT INTO `sys_areas_info` VALUES (2094, '甘肃省', '兰州市', '安宁区', '0931', 3, 228);
+INSERT INTO `sys_areas_info` VALUES (2095, '吉林省', '长春市', '二道区', '0431', 3, 112);
+INSERT INTO `sys_areas_info` VALUES (2096, '江苏省', '淮安市', '金湖县', '0517', 3, 360);
+INSERT INTO `sys_areas_info` VALUES (2097, '广东省', '河源市', '源城区', '0762', 3, 374);
+INSERT INTO `sys_areas_info` VALUES (2098, '江西省', '九江市', '瑞昌', '0792', 3, 104);
+INSERT INTO `sys_areas_info` VALUES (2099, '湖北省', '黄石市', '下陆区', '0714', 3, 222);
+INSERT INTO `sys_areas_info` VALUES (2100, '山西省', '临汾市', '洪洞县', '0357', 3, 238);
+INSERT INTO `sys_areas_info` VALUES (2101, '河北省', '沧州市', '东光县', '0', 3, 286);
+INSERT INTO `sys_areas_info` VALUES (2102, '福建省', '龙岩市', '武平县', '0597', 3, 267);
+INSERT INTO `sys_areas_info` VALUES (2103, '山西省', '吕梁市', '孝义市', '0358', 3, 227);
+INSERT INTO `sys_areas_info` VALUES (2104, '四川省', '成都市', '武侯区', '028', 3, 106);
+INSERT INTO `sys_areas_info` VALUES (2105, '福建省', '龙岩市', '上杭县', '0597', 3, 267);
+INSERT INTO `sys_areas_info` VALUES (2106, '广东省', '惠州市', '惠阳区', '0752', 3, 250);
+INSERT INTO `sys_areas_info` VALUES (2107, '湖南省', '衡阳市', '耒阳市', '0734', 3, 116);
+INSERT INTO `sys_areas_info` VALUES (2108, '云南省', '昆明市', '呈贡县', '0871', 3, 369);
+INSERT INTO `sys_areas_info` VALUES (2109, '山东省', '临沂市', '莒南县', '0539', 3, 312);
+INSERT INTO `sys_areas_info` VALUES (2110, '内蒙古自治区', '锡林郭勒盟', '锡林浩特市', '0479', 3, 330);
+INSERT INTO `sys_areas_info` VALUES (2111, '湖北省', '咸宁市', '崇阳县', '0715', 3, 271);
+INSERT INTO `sys_areas_info` VALUES (2112, '江苏省', '镇江市', '扬中市', '0511', 3, 283);
+INSERT INTO `sys_areas_info` VALUES (2113, '福建省', '泉州市', '德化县', '0595', 3, 161);
+INSERT INTO `sys_areas_info` VALUES (2114, '上海市', '上海市', '普陀区', '021', 3, 287);
+INSERT INTO `sys_areas_info` VALUES (2115, '河南省', '濮阳市', '清丰县', '0393', 3, 319);
+INSERT INTO `sys_areas_info` VALUES (2116, '内蒙古自治区', '兴安盟', '乌兰浩特市', '0482', 3, 248);
+INSERT INTO `sys_areas_info` VALUES (2117, '陕西省', '西安市', '新城区', '029', 3, 334);
+INSERT INTO `sys_areas_info` VALUES (2118, '河南省', '开封市', '尉氏县', '0378', 3, 111);
+INSERT INTO `sys_areas_info` VALUES (2119, '云南省', '大理白族自治州', '洱源县', '0872', 3, 191);
+INSERT INTO `sys_areas_info` VALUES (2120, '山东省', '菏泽市', '成武县', '0530', 3, 216);
+INSERT INTO `sys_areas_info` VALUES (2121, '浙江省', '杭州市', '桐庐县', '0571', 3, 263);
+INSERT INTO `sys_areas_info` VALUES (2122, '江西省', '上饶市', '鄱阳县', '0793', 3, 234);
+INSERT INTO `sys_areas_info` VALUES (2123, '河南省', '平顶山市', '叶县', '0375', 3, 117);
+INSERT INTO `sys_areas_info` VALUES (2124, '江西省', '吉安市', '峡江县', '0796', 3, 332);
+INSERT INTO `sys_areas_info` VALUES (2125, '辽宁省', '本溪市', '明山区', '0414', 3, 141);
+INSERT INTO `sys_areas_info` VALUES (2126, '湖南省', '郴州市', '宜章县', '0735', 3, 370);
+INSERT INTO `sys_areas_info` VALUES (2127, '河北省', '沧州市', '献县', '0', 3, 286);
+INSERT INTO `sys_areas_info` VALUES (2128, '广东省', '韶关市', '翁源县', '0751', 3, 149);
+INSERT INTO `sys_areas_info` VALUES (2129, '湖南省', '长沙市', '浏阳市', '0731', 3, 201);
+INSERT INTO `sys_areas_info` VALUES (2130, '广东省', '韶关市', '南雄市', '0751', 3, 149);
+INSERT INTO `sys_areas_info` VALUES (2131, '山西省', '大同市', '大同县', '0352', 3, 108);
+INSERT INTO `sys_areas_info` VALUES (2132, '贵州省', '毕节地区', '金沙县', '0857', 3, 318);
+INSERT INTO `sys_areas_info` VALUES (2133, '安徽省', '安庆市', '望江县', '0556', 3, 246);
+INSERT INTO `sys_areas_info` VALUES (2134, '吉林省', '延边朝鲜族自治州', '珲春市', '0433', 3, 165);
+INSERT INTO `sys_areas_info` VALUES (2135, '贵州省', '贵阳市', '开阳县', '0851', 3, 273);
+INSERT INTO `sys_areas_info` VALUES (2136, '云南省', '保山市', '昌宁县', '0875', 3, 381);
+INSERT INTO `sys_areas_info` VALUES (2137, '山东省', '菏泽市', '曹县', '0530', 3, 216);
+INSERT INTO `sys_areas_info` VALUES (2138, '新疆维吾尔族自治区', '巴音郭楞蒙古自治州', '库尔勒市', '0996', 3, 310);
+INSERT INTO `sys_areas_info` VALUES (2139, '江西省', '上饶市', '铅山县', '0793', 3, 234);
+INSERT INTO `sys_areas_info` VALUES (2140, '江西省', '景德镇市', '浮梁县', '0798', 3, 244);
+INSERT INTO `sys_areas_info` VALUES (2141, '湖北省', '襄樊市', '谷城县', '0710', 3, 412);
+INSERT INTO `sys_areas_info` VALUES (2142, '江苏省', '苏州市', '昆山市', '0512', 3, 281);
+INSERT INTO `sys_areas_info` VALUES (2143, '山西省', '忻州市', '忻府区', '0350', 3, 382);
+INSERT INTO `sys_areas_info` VALUES (2144, '河北省', '沧州市', '河间市', '0', 3, 286);
+INSERT INTO `sys_areas_info` VALUES (2145, '江西省', '鹰潭市', '贵溪市', '0701', 3, 403);
+INSERT INTO `sys_areas_info` VALUES (2146, '河南省', '新乡市', '红旗区', '0373', 3, 418);
+INSERT INTO `sys_areas_info` VALUES (2147, '山东省', '菏泽市', '单县', '0530', 3, 216);
+INSERT INTO `sys_areas_info` VALUES (2148, '云南省', '玉溪市', '澄江县', '0877', 3, 387);
+INSERT INTO `sys_areas_info` VALUES (2149, '辽宁省', '大连市', '中山区', '0', 3, 262);
+INSERT INTO `sys_areas_info` VALUES (2150, '新疆维吾尔族自治区', '克拉玛依市', '克拉玛依区', '0990', 3, 183);
+INSERT INTO `sys_areas_info` VALUES (2151, '甘肃省', '嘉峪关市', '其他', '0937', 3, 309);
+INSERT INTO `sys_areas_info` VALUES (2152, '山东省', '德州市', '临邑县', '0534', 3, 133);
+INSERT INTO `sys_areas_info` VALUES (2153, '河北省', '邢台市', '桥西区', '0', 3, 151);
+INSERT INTO `sys_areas_info` VALUES (2154, '江西省', '赣州市', '大余县', '0797', 3, 336);
+INSERT INTO `sys_areas_info` VALUES (2155, '山西省', '太原市', '万柏林区', '0351', 3, 154);
+INSERT INTO `sys_areas_info` VALUES (2156, '云南省', '玉溪市', '华宁县', '0877', 3, 387);
+INSERT INTO `sys_areas_info` VALUES (2157, '广东省', '清远市', '连州市', '0763', 3, 196);
+INSERT INTO `sys_areas_info` VALUES (2158, '海南省', '三亚市', '河西区', '0898', 3, 275);
+INSERT INTO `sys_areas_info` VALUES (2159, '宁夏回族自治区', '石嘴山市', '惠农区', '0952', 3, 189);
+INSERT INTO `sys_areas_info` VALUES (2160, '云南省', '大理白族自治州', '祥云县', '0872', 3, 191);
+INSERT INTO `sys_areas_info` VALUES (2161, '内蒙古自治区', '乌海市', '海勃湾区', '0473', 3, 182);
+INSERT INTO `sys_areas_info` VALUES (2162, '四川省', '南充市', '阆中市', '0817', 3, 350);
+INSERT INTO `sys_areas_info` VALUES (2163, '湖南省', '郴州市', '桂东县', '0735', 3, 370);
+INSERT INTO `sys_areas_info` VALUES (2164, '四川省', '成都市', '青羊区', '028', 3, 106);
+INSERT INTO `sys_areas_info` VALUES (2165, '广西壮族自治区', '南宁市', '其他', '0771', 3, 242);
+INSERT INTO `sys_areas_info` VALUES (2166, '四川省', '凉山彝族自治州', '西昌市', '0834', 3, 173);
+INSERT INTO `sys_areas_info` VALUES (2167, '新疆维吾尔族自治区', '喀什地区', '莎车县', '0998', 3, 296);
+INSERT INTO `sys_areas_info` VALUES (2168, '辽宁省', '锦州市', '凌河区', '0416', 3, 243);
+INSERT INTO `sys_areas_info` VALUES (2169, '广西壮族自治区', '南宁市', '西乡塘区', '0771', 3, 242);
+INSERT INTO `sys_areas_info` VALUES (2170, '江西省', '吉安市', '遂川县', '0796', 3, 332);
+INSERT INTO `sys_areas_info` VALUES (2171, '重庆市', '重庆市', '万盛区', '023', 3, 363);
+INSERT INTO `sys_areas_info` VALUES (2172, '河北省', '承德市', '平泉县', '0', 3, 127);
+INSERT INTO `sys_areas_info` VALUES (2173, '云南省', '红河哈尼族彝族自治州', '建水县', '0873', 3, 399);
+INSERT INTO `sys_areas_info` VALUES (2174, '安徽省', '宿州市', '砀山县', '0557', 3, 181);
+INSERT INTO `sys_areas_info` VALUES (2175, '山东省', '临沂市', '沂水县', '0539', 3, 312);
+INSERT INTO `sys_areas_info` VALUES (2176, '四川省', '眉山市', '仁寿县', '028', 3, 342);
+INSERT INTO `sys_areas_info` VALUES (2177, '湖南省', '株洲市', '醴陵市', '0731', 3, 302);
+INSERT INTO `sys_areas_info` VALUES (2178, '辽宁省', '沈阳市', '新民市', '0', 3, 170);
+INSERT INTO `sys_areas_info` VALUES (2179, '湖南省', '益阳市', '赫山区', '0737', 3, 145);
+INSERT INTO `sys_areas_info` VALUES (2180, '内蒙古自治区', '兴安盟', '突泉县', '0482', 3, 248);
+INSERT INTO `sys_areas_info` VALUES (2181, '山西省', '忻州市', '原平市', '0350', 3, 382);
+INSERT INTO `sys_areas_info` VALUES (2182, '江苏省', '南京市', '鼓楼区', '025', 3, 313);
+INSERT INTO `sys_areas_info` VALUES (2183, '山西省', '大同市', '矿区', '0352', 3, 108);
+INSERT INTO `sys_areas_info` VALUES (2184, '山东省', '济南市', '天桥区', '0531', 3, 306);
+INSERT INTO `sys_areas_info` VALUES (2185, '江西省', '南昌市', '西湖区', '0791', 3, 200);
+INSERT INTO `sys_areas_info` VALUES (2186, '河南省', '开封市', '开封县', '0378', 3, 111);
+INSERT INTO `sys_areas_info` VALUES (2187, '贵州省', '黔东南苗族侗族自治州', '天柱县', '0855', 3, 325);
+INSERT INTO `sys_areas_info` VALUES (2188, '山西省', '晋中市', '平遥县', '0354', 3, 139);
+INSERT INTO `sys_areas_info` VALUES (2189, '河北省', '承德市', '宽城满族自治县', '0', 3, 127);
+INSERT INTO `sys_areas_info` VALUES (2190, '辽宁省', '沈阳市', '于洪区', '0', 3, 170);
+INSERT INTO `sys_areas_info` VALUES (2191, '山东省', '潍坊市', '高密市', '0536', 3, 121);
+INSERT INTO `sys_areas_info` VALUES (2192, '陕西省', '榆林市', '子洲县', '0912', 3, 421);
+INSERT INTO `sys_areas_info` VALUES (2193, '河南省', '郑州市', '登封市', '0371', 3, 308);
+INSERT INTO `sys_areas_info` VALUES (2194, '江苏省', '盐城市', '射阳县', '0515', 3, 329);
+INSERT INTO `sys_areas_info` VALUES (2195, '黑龙江省', '伊春市', '铁力市', '0458', 3, 125);
+INSERT INTO `sys_areas_info` VALUES (2196, '湖北省', '恩施市', '来凤县', '0718', 3, 340);
+INSERT INTO `sys_areas_info` VALUES (2197, '内蒙古自治区', '通辽市', '霍林郭勒市', '0475', 3, 326);
+INSERT INTO `sys_areas_info` VALUES (2198, '福建省', '漳州市', '华安县', '0596', 3, 150);
+INSERT INTO `sys_areas_info` VALUES (2199, '安徽省', '池州市', '青阳县', '0566', 3, 391);
+INSERT INTO `sys_areas_info` VALUES (2200, '福建省', '三明市', '其他', '0598', 3, 411);
+INSERT INTO `sys_areas_info` VALUES (2201, '黑龙江省', '黑河市', '北安市', '0456', 3, 131);
+INSERT INTO `sys_areas_info` VALUES (2202, '辽宁省', '锦州市', '北宁市', '0416', 3, 243);
+INSERT INTO `sys_areas_info` VALUES (2203, '安徽省', '亳州市', '涡阳县', '0558', 3, 249);
+INSERT INTO `sys_areas_info` VALUES (2204, '山西省', '忻州市', '河曲县', '0350', 3, 382);
+INSERT INTO `sys_areas_info` VALUES (2205, '宁夏回族自治区', '吴忠市', '同心县', '0953', 3, 383);
+INSERT INTO `sys_areas_info` VALUES (2206, '吉林省', '长春市', '榆树市', '0431', 3, 112);
+INSERT INTO `sys_areas_info` VALUES (2207, '贵州省', '黔西南布依族苗族自治州', '晴隆县', '0859', 3, 297);
+INSERT INTO `sys_areas_info` VALUES (2208, '浙江省', '绍兴市', '诸暨市', '0575', 3, 307);
+INSERT INTO `sys_areas_info` VALUES (2209, '浙江省', '宁波市', '余姚市', '0574', 3, 217);
+INSERT INTO `sys_areas_info` VALUES (2210, '辽宁省', '沈阳市', '苏家屯区', '0', 3, 170);
+INSERT INTO `sys_areas_info` VALUES (2211, '福建省', '福州市', '长乐市', '0591', 3, 177);
+INSERT INTO `sys_areas_info` VALUES (2212, '湖北省', '武汉市', '黄陂区', '027', 3, 113);
+INSERT INTO `sys_areas_info` VALUES (2213, '广西壮族自治区', '南宁市', '上林县', '0771', 3, 242);
+INSERT INTO `sys_areas_info` VALUES (2214, '山西省', '晋中市', '榆次区', '0354', 3, 139);
+INSERT INTO `sys_areas_info` VALUES (2215, '甘肃省', '酒泉市', '金塔县', '0937', 3, 409);
+INSERT INTO `sys_areas_info` VALUES (2216, '宁夏回族自治区', '中卫市', '海原县', '0955', 3, 278);
+INSERT INTO `sys_areas_info` VALUES (2217, '广东省', '广州市', '增城市', '020', 3, 129);
+INSERT INTO `sys_areas_info` VALUES (2218, '重庆市', '重庆市', '永川区', '023', 3, 363);
+INSERT INTO `sys_areas_info` VALUES (2219, '广东省', '肇庆市', '高要市', '0758', 3, 144);
+INSERT INTO `sys_areas_info` VALUES (2220, '江西省', '南昌市', '东湖区', '0791', 3, 200);
+INSERT INTO `sys_areas_info` VALUES (2221, '河北省', '石家庄市', '裕华区', '0', 3, 264);
+INSERT INTO `sys_areas_info` VALUES (2222, '新疆维吾尔族自治区', '阿克苏地区', '阿克苏市', '0997', 3, 424);
+INSERT INTO `sys_areas_info` VALUES (2223, '广东省', '茂名市', '化州市', '0668', 3, 221);
+INSERT INTO `sys_areas_info` VALUES (2224, '新疆维吾尔族自治区', '昌吉回族自治州', '昌吉市', '0994', 3, 293);
+INSERT INTO `sys_areas_info` VALUES (2225, '河南省', '商丘市', '永城市', '0370', 3, 254);
+INSERT INTO `sys_areas_info` VALUES (2226, '河南省', '驻马店市', '西平县', '0396', 3, 282);
+INSERT INTO `sys_areas_info` VALUES (2227, '浙江省', '衢州市', '柯城区', '0570', 3, 257);
+INSERT INTO `sys_areas_info` VALUES (2228, '福建省', '泉州市', '其他', '0595', 3, 161);
+INSERT INTO `sys_areas_info` VALUES (2229, '黑龙江省', '齐齐哈尔市', '龙沙区', '0452', 3, 195);
+INSERT INTO `sys_areas_info` VALUES (2230, '四川省', '攀枝花市', '西区', '0812', 3, 428);
+INSERT INTO `sys_areas_info` VALUES (2231, '广西壮族自治区', '玉林市', '北流市', '0775', 3, 338);
+INSERT INTO `sys_areas_info` VALUES (2232, '贵州省', '贵阳市', '清镇市', '0851', 3, 273);
+INSERT INTO `sys_areas_info` VALUES (2233, '贵州省', '铜仁地区', '沿河土家族自治县', '0856', 3, 272);
+INSERT INTO `sys_areas_info` VALUES (2234, '四川省', '泸州市', '泸县', '0830', 3, 110);
+INSERT INTO `sys_areas_info` VALUES (2235, '福建省', '南平市', '武夷山市', '0599', 3, 119);
+INSERT INTO `sys_areas_info` VALUES (2236, '福建省', '厦门市', '思明区', '0592', 3, 354);
+INSERT INTO `sys_areas_info` VALUES (2237, '内蒙古自治区', '通辽市', '开鲁县', '0475', 3, 326);
+INSERT INTO `sys_areas_info` VALUES (2238, '江西省', '南昌市', '青山湖区', '0791', 3, 200);
+INSERT INTO `sys_areas_info` VALUES (2239, '上海市', '上海市', '崇明县', '021', 3, 287);
+INSERT INTO `sys_areas_info` VALUES (2240, '四川省', '遂宁市', '大英县', '0825', 3, 268);
+INSERT INTO `sys_areas_info` VALUES (2241, '湖南省', '株洲市', '茶陵县', '0731', 3, 302);
+INSERT INTO `sys_areas_info` VALUES (2242, '河北省', '邯郸市', '武安市', '0', 3, 348);
+INSERT INTO `sys_areas_info` VALUES (2243, '浙江省', '杭州市', '萧山区', '0571', 3, 263);
+INSERT INTO `sys_areas_info` VALUES (2244, '广东省', '清远市', '阳山县', '0763', 3, 196);
+INSERT INTO `sys_areas_info` VALUES (2245, '四川省', '南充市', '仪陇县', '0817', 3, 350);
+INSERT INTO `sys_areas_info` VALUES (2246, '山东省', '青岛市', '李沧区', '0532', 3, 284);
+INSERT INTO `sys_areas_info` VALUES (2247, '河北省', '邢台市', '内丘县', '0', 3, 151);
+INSERT INTO `sys_areas_info` VALUES (2248, '四川省', '南充市', '西充县', '0817', 3, 350);
+INSERT INTO `sys_areas_info` VALUES (2249, '浙江省', '温州市', '文成县', '0577', 3, 315);
+INSERT INTO `sys_areas_info` VALUES (2250, '陕西省', '咸阳市', '泾阳县', '029', 3, 180);
+INSERT INTO `sys_areas_info` VALUES (2251, '河南省', '商丘市', '虞城县', '0370', 3, 254);
+INSERT INTO `sys_areas_info` VALUES (2252, '新疆维吾尔族自治区', '乌鲁木齐市', '天山区', '0991', 3, 207);
+INSERT INTO `sys_areas_info` VALUES (2253, '广东省', '潮州市', '湘桥区', '0768', 3, 291);
+INSERT INTO `sys_areas_info` VALUES (2254, '甘肃省', '张掖市', '民乐县', '0936', 3, 362);
+INSERT INTO `sys_areas_info` VALUES (2255, '河北省', '邯郸市', '馆陶县', '0', 3, 348);
+INSERT INTO `sys_areas_info` VALUES (2256, '湖南省', '郴州市', '资兴市', '0735', 3, 370);
+INSERT INTO `sys_areas_info` VALUES (2257, '云南省', '保山市', '龙陵县', '0875', 3, 381);
+INSERT INTO `sys_areas_info` VALUES (2258, '福建省', '厦门市', '湖里区', '0592', 3, 354);
+INSERT INTO `sys_areas_info` VALUES (2259, '江西省', '上饶市', '上饶县', '0793', 3, 234);
+INSERT INTO `sys_areas_info` VALUES (2260, '广东省', '汕头市', '金平区', '0754', 3, 215);
+INSERT INTO `sys_areas_info` VALUES (2261, '河南省', '平顶山市', '郏县', '0375', 3, 117);
+INSERT INTO `sys_areas_info` VALUES (2262, '福建省', '漳州市', '漳浦县', '0596', 3, 150);
+INSERT INTO `sys_areas_info` VALUES (2263, '江苏省', '南京市', '溧水县', '025', 3, 313);
+INSERT INTO `sys_areas_info` VALUES (2264, '河南省', '安阳市', '殷都区', '0372', 3, 353);
+INSERT INTO `sys_areas_info` VALUES (2265, '江西省', '赣州市', '瑞金市', '0797', 3, 336);
+INSERT INTO `sys_areas_info` VALUES (2266, '福建省', '泉州市', '石狮市', '0595', 3, 161);
+INSERT INTO `sys_areas_info` VALUES (2267, '广东省', '深圳市', '龙岗区', '0755', 3, 118);
+INSERT INTO `sys_areas_info` VALUES (2268, '浙江省', '温州市', '龙湾区', '0577', 3, 315);
+INSERT INTO `sys_areas_info` VALUES (2269, '安徽省', '宣城市', '旌德县', '0563', 3, 377);
+INSERT INTO `sys_areas_info` VALUES (2270, '广西壮族自治区', '玉林市', '博白县', '0775', 3, 338);
+INSERT INTO `sys_areas_info` VALUES (2271, '广东省', '佛山市', '高明区', '0757', 3, 378);
+INSERT INTO `sys_areas_info` VALUES (2272, '安徽省', '安庆市', '潜山县', '0556', 3, 246);
+INSERT INTO `sys_areas_info` VALUES (2273, '贵州省', '贵阳市', '白云区', '0851', 3, 273);
+INSERT INTO `sys_areas_info` VALUES (2274, '广东省', '茂名市', '信宜市', '0668', 3, 221);
+INSERT INTO `sys_areas_info` VALUES (2275, '广西壮族自治区', '河池市', '金城江区', '0778', 3, 197);
+INSERT INTO `sys_areas_info` VALUES (2276, '吉林省', '长春市', '朝阳区', '0431', 3, 112);
+INSERT INTO `sys_areas_info` VALUES (2277, '湖南省', '衡阳市', '常宁市', '0734', 3, 116);
+INSERT INTO `sys_areas_info` VALUES (2278, '广东省', '茂名市', '高州市', '0668', 3, 221);
+INSERT INTO `sys_areas_info` VALUES (2279, '河北省', '衡水市', '阜城县', '0', 3, 138);
+INSERT INTO `sys_areas_info` VALUES (2280, '江苏省', '淮安市', '清浦区', '0517', 3, 360);
+INSERT INTO `sys_areas_info` VALUES (2281, '河南省', '洛阳市', '孟津县', '0379', 3, 214);
+INSERT INTO `sys_areas_info` VALUES (2282, '河北省', '唐山市', '玉田县', '0', 3, 277);
+INSERT INTO `sys_areas_info` VALUES (2283, '江西省', '九江市', '修水县', '0792', 3, 104);
+INSERT INTO `sys_areas_info` VALUES (2284, '贵州省', '黔东南苗族侗族自治州', '榕江县', '0855', 3, 325);
+INSERT INTO `sys_areas_info` VALUES (2285, '河南省', '驻马店市', '确山县', '0396', 3, 282);
+INSERT INTO `sys_areas_info` VALUES (2286, '四川省', '成都市', '青白江区', '028', 3, 106);
+INSERT INTO `sys_areas_info` VALUES (2287, '北京市', '北京市', '石景山区', '010', 3, 368);
+INSERT INTO `sys_areas_info` VALUES (2288, '湖南省', '长沙市', '雨花区', '0731', 3, 201);
+INSERT INTO `sys_areas_info` VALUES (2289, '江西省', '上饶市', '弋阳县', '0793', 3, 234);
+INSERT INTO `sys_areas_info` VALUES (2290, '江苏省', '南通市', '海安县', '0513', 3, 416);
+INSERT INTO `sys_areas_info` VALUES (2291, '贵州省', '黔南布依族苗族自治州', '龙里县', '0854', 3, 276);
+INSERT INTO `sys_areas_info` VALUES (2292, '安徽省', '合肥市', '滨湖新区', '0551', 3, 299);
+INSERT INTO `sys_areas_info` VALUES (2293, '新疆维吾尔族自治区', '巴音郭楞蒙古自治州', '焉耆回族自治县', '0996', 3, 310);
+INSERT INTO `sys_areas_info` VALUES (2294, '黑龙江省', '绥化市', '北林区', '0455', 3, 371);
+INSERT INTO `sys_areas_info` VALUES (2295, '河南省', '洛阳市', '洛宁县', '0379', 3, 214);
+INSERT INTO `sys_areas_info` VALUES (2296, '福建省', '泉州市', '永春县', '0595', 3, 161);
+INSERT INTO `sys_areas_info` VALUES (2297, '河南省', '三门峡市', '湖滨区', '0398', 3, 328);
+INSERT INTO `sys_areas_info` VALUES (2298, '宁夏回族自治区', '银川市', '贺兰县', '0951', 3, 247);
+INSERT INTO `sys_areas_info` VALUES (2299, '山东省', '济宁市', '邹城市', '0537', 3, 169);
+INSERT INTO `sys_areas_info` VALUES (2300, '四川省', '广元市', '青川县', '0839', 3, 298);
+INSERT INTO `sys_areas_info` VALUES (2301, '广东省', '广州市', '海珠区', '020', 3, 129);
+INSERT INTO `sys_areas_info` VALUES (2302, '广东省', '云浮市', '', '0766', 2, 18);
+INSERT INTO `sys_areas_info` VALUES (2303, '广东省', '云浮市', '云城区', '0766', 3, 2302);
+INSERT INTO `sys_areas_info` VALUES (2304, '广东省', '云浮市', '云安区', '0766', 3, 2302);
+INSERT INTO `sys_areas_info` VALUES (2305, '广东省', '云浮市', '新兴县', '0766', 3, 2302);
+INSERT INTO `sys_areas_info` VALUES (2306, '广东省', '云浮市', '郁南县', '0766', 3, 2302);
+INSERT INTO `sys_areas_info` VALUES (2307, '广东省', '云浮市', '罗定市', '0766', 3, 2302);
+INSERT INTO `sys_areas_info` VALUES (2308, '广东省', '广州市', '白云区', '020', 3, 129);
+INSERT INTO `sys_areas_info` VALUES (2309, '山西省', '大同市', '平城区', '0352', 3, 108);
+COMMIT;
+
+-- ----------------------------
+-- Table structure for sys_permission
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_permission`;
+CREATE TABLE `sys_permission` (
+  `permission_id` int NOT NULL AUTO_INCREMENT COMMENT '资源表主键id',
+  `permission_name` varchar(255) NOT NULL COMMENT '资源名称',
+  `parent_id` int NOT NULL COMMENT '资源父id',
+  `permission_code` varchar(255) NOT NULL COMMENT '资源code',
+  `permission_type` int NOT NULL COMMENT '资源类型(1 位菜单 2 为功能)',
+  `permission_url` varchar(255) DEFAULT NULL COMMENT '资源url',
+  `permission_state` int NOT NULL DEFAULT '1' COMMENT '资源状态 0 不可用 1是正常',
+  `permission_sort` int NOT NULL COMMENT '顺序',
+  `permission_icon_url` varchar(255) DEFAULT NULL COMMENT '图标icon Url',
+  `permission_depth` int DEFAULT NULL COMMENT '所有父id集合',
+  PRIMARY KEY (`permission_id`)
+) ENGINE=InnoDB AUTO_INCREMENT=147 DEFAULT CHARSET=utf8mb3 COMMENT='资源表';
+
+-- ----------------------------
+-- Records of sys_permission
+-- ----------------------------
+BEGIN;
+INSERT INTO `sys_permission` VALUES (1, '权限管理', 0, 'qxgl', 1, 'layout/basicMana', 1, 0, 'el-icon-c-scale-to-original', 1);
+INSERT INTO `sys_permission` VALUES (12, '用户管理', 1, 'yggl', 1, '/basicMana/userMana', 1, 0, 'el-icon-s-promotion', 2);
+INSERT INTO `sys_permission` VALUES (16, '菜单权限', 1, 'cdqx', 1, '/basicMana/menuRoleMana', 1, 0, 'el-icon-c-scale-to-original', 2);
+INSERT INTO `sys_permission` VALUES (17, '角色管理', 1, 'jsgl', 1, '/basicMana/userRoleMana', 1, 0, 'el-icon-c-scale-to-original', 2);
+INSERT INTO `sys_permission` VALUES (46, '按钮-用户管理新建', 12, 'userMana:add', 2, '/userMana/add', 1, 0, 'el-icon-s-opportunity', 3);
+INSERT INTO `sys_permission` VALUES (73, '按钮-菜单权限新建', 16, 'menuRoleMana:add', 2, 'menuRoleMana:add', 1, 0, 'el-icon-s-ticket', 3);
+INSERT INTO `sys_permission` VALUES (74, '按钮-角色管理新建', 17, 'userRoleMana:add', 2, 'userRoleMana:add', 1, 0, 'el-icon-s-management', 3);
+COMMIT;
+
+-- ----------------------------
+-- Table structure for sys_role
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_role`;
+CREATE TABLE `sys_role` (
+  `id` int NOT NULL AUTO_INCREMENT COMMENT '角色表主键id',
+  `role_description` varchar(255) NOT NULL COMMENT '角色描述',
+  `role_code` varchar(50) NOT NULL COMMENT '角色code',
+  `role_available` int NOT NULL DEFAULT '1' COMMENT '是否可用',
+  `create_by` int DEFAULT NULL,
+  `create_time` datetime DEFAULT NULL,
+  `update_by` int DEFAULT NULL,
+  `update_time` datetime DEFAULT NULL,
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=14 DEFAULT CHARSET=utf8mb3 COMMENT='角色表';
+
+-- ----------------------------
+-- Records of sys_role
+-- ----------------------------
+BEGIN;
+INSERT INTO `sys_role` VALUES (1, '超级管理员', 'admin', 1, NULL, '2022-07-15 15:10:33', NULL, '2022-07-15 15:10:33');
+COMMIT;
+
+-- ----------------------------
+-- Table structure for sys_role_permission
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_role_permission`;
+CREATE TABLE `sys_role_permission` (
+  `id` int NOT NULL AUTO_INCREMENT,
+  `role_id` int DEFAULT NULL COMMENT '角色表主键id',
+  `permission_id` int DEFAULT NULL COMMENT '资源表主键id',
+  `create_time` datetime DEFAULT NULL,
+  `update_time` datetime DEFAULT NULL,
+  PRIMARY KEY (`id`),
+  KEY `role_id` (`role_id`),
+  KEY `permission_id` (`permission_id`)
+) ENGINE=InnoDB AUTO_INCREMENT=3761 DEFAULT CHARSET=utf8mb3 COMMENT='角色资源关联表';
+
+-- ----------------------------
+-- Records of sys_role_permission
+-- ----------------------------
+BEGIN;
+INSERT INTO `sys_role_permission` VALUES (3644, 1, 1, NULL, NULL);
+INSERT INTO `sys_role_permission` VALUES (3645, 1, 12, NULL, NULL);
+INSERT INTO `sys_role_permission` VALUES (3646, 1, 46, NULL, NULL);
+INSERT INTO `sys_role_permission` VALUES (3647, 1, 16, NULL, NULL);
+INSERT INTO `sys_role_permission` VALUES (3648, 1, 73, NULL, NULL);
+INSERT INTO `sys_role_permission` VALUES (3649, 1, 17, NULL, NULL);
+INSERT INTO `sys_role_permission` VALUES (3650, 1, 74, NULL, NULL);
+COMMIT;
+
+-- ----------------------------
+-- Table structure for sys_user_info
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_user_info`;
+CREATE TABLE `sys_user_info` (
+  `id` int NOT NULL AUTO_INCREMENT,
+  `user_name` varchar(255) DEFAULT NULL,
+  `user_phone` char(11) DEFAULT NULL,
+  `user_password` varchar(255) DEFAULT NULL,
+  `state` int DEFAULT '1' COMMENT '0:禁用,1:可用',
+  `create_by` int DEFAULT NULL,
+  `create_time` datetime DEFAULT NULL,
+  `update_by` int DEFAULT NULL,
+  `update_time` datetime DEFAULT NULL,
+  PRIMARY KEY (`id`),
+  UNIQUE KEY `id_idx` (`id`) USING BTREE,
+  UNIQUE KEY `phone_idx` (`user_phone`) USING BTREE
+) ENGINE=InnoDB AUTO_INCREMENT=103 DEFAULT CHARSET=utf8mb3 COMMENT='后台用户表';
+
+-- ----------------------------
+-- Records of sys_user_info
+-- ----------------------------
+BEGIN;
+INSERT INTO `sys_user_info` VALUES (2, 'admin', '12345678901', '$2a$10$ZqOH07B2RsG4UpIJc7ZyluCd6xIGPM6E988jy/DDjL1MbRaiJi/bS', 1, NULL, '2022-07-11 17:46:03', NULL, NULL);
+INSERT INTO `sys_user_info` VALUES (102, 'test', '13661133201', '$2a$10$jQnonDze30YueTODFUdfReFzYVHOZ7dKmdQ.POUnR8k87m4IjWKKm', 1, NULL, '2024-04-28 01:15:06', NULL, NULL);
+COMMIT;
+
+-- ----------------------------
+-- Table structure for sys_user_role
+-- ----------------------------
+DROP TABLE IF EXISTS `sys_user_role`;
+CREATE TABLE `sys_user_role` (
+  `user_id` int DEFAULT NULL COMMENT '用户id',
+  `role_id` int DEFAULT NULL COMMENT '角色表主键id',
+  `create_time` datetime DEFAULT NULL,
+  `update_time` datetime DEFAULT NULL
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COMMENT='用户角色表';
+
+-- ----------------------------
+-- Records of sys_user_role
+-- ----------------------------
+BEGIN;
+INSERT INTO `sys_user_role` VALUES (2, 1, NULL, NULL);
+INSERT INTO `sys_user_role` VALUES (101, 1, NULL, NULL);
+INSERT INTO `sys_user_role` VALUES (102, 1, NULL, NULL);
+COMMIT;
+
+-- ----------------------------
+-- Table structure for wind_company
+-- ----------------------------
+DROP TABLE IF EXISTS `wind_company`;
+CREATE TABLE `wind_company` (
+  `id` int NOT NULL AUTO_INCREMENT COMMENT '主键',
+  `company_code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '企业编号',
+  `company_name` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '企业名称',
+  `state` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '状态',
+  `province_id` int DEFAULT NULL COMMENT '省',
+  `province_name` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '省名字',
+  `city_id` int DEFAULT NULL COMMENT '市',
+  `city_name` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '市名字',
+  `described` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '企业描述',
+  `sort` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '排序',
+  `del_state` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '删除状态',
+  `create_by` int DEFAULT NULL COMMENT '创建人',
+  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+  `update_by` int DEFAULT NULL COMMENT '更新人',
+  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='企业信息表(项目公司)';
+
+-- ----------------------------
+-- Records of wind_company
+-- ----------------------------
+BEGIN;
+INSERT INTO `wind_company` VALUES (5, 'COM00005', '大唐集团1', '1', 1, '北京', 368, '北京', 'test', NULL, '0', NULL, '2024-04-28 03:26:55', NULL, '2024-04-28 03:26:55');
+INSERT INTO `wind_company` VALUES (7, 'COM00007', '大唐集团2', '1', 1, '北京', 368, '北京', 'test', NULL, '0', NULL, '2024-04-29 02:10:06', NULL, '2024-04-29 02:10:06');
+COMMIT;
+
+-- ----------------------------
+-- Table structure for wind_engine_batch
+-- ----------------------------
+DROP TABLE IF EXISTS `wind_engine_batch`;
+CREATE TABLE `wind_engine_batch` (
+  `id` int NOT NULL AUTO_INCREMENT COMMENT '主键',
+  `bath_code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '风机批次编号',
+  `bath_name` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '风机批次名称',
+  `field_coed` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '风场编号',
+  `field_state` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '批次状态',
+  `err_state` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '异常状态',
+  `err_info` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '异常信息',
+  `description` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '描述',
+  `create_by` int DEFAULT NULL COMMENT '创建人',
+  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+  `update_by` int DEFAULT NULL COMMENT '更新人',
+  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='风机批次信息表 批次etl风机信息表';
+
+-- ----------------------------
+-- Records of wind_engine_batch
+-- ----------------------------
+BEGIN;
+COMMIT;
+
+-- ----------------------------
+-- Table structure for wind_engine_group
+-- ----------------------------
+DROP TABLE IF EXISTS `wind_engine_group`;
+CREATE TABLE `wind_engine_group` (
+  `id` int NOT NULL AUTO_INCREMENT COMMENT '主键',
+  `field_code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '风场编号',
+  `engine_code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '风机编号',
+  `engine_name` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '风机名称',
+  `mill_type_code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '机型编号',
+  `rated_capacity` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '额定容量',
+  `elevation_height` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '海拔高度',
+  `hub_height` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '轮毂高度',
+  `state` tinyint(1) DEFAULT NULL COMMENT '状态',
+  `longitude` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '经度',
+  `latitude` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '维度',
+  `sightcing` tinyint(1) DEFAULT NULL COMMENT '是否标杆风机',
+  `del_state` tinyint(1) DEFAULT NULL COMMENT '删除状态',
+  `create_by` int DEFAULT NULL COMMENT '创建人',
+  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+  `update_by` int DEFAULT NULL COMMENT '更新人',
+  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='风机机组信息表 ';
+
+-- ----------------------------
+-- Records of wind_engine_group
+-- ----------------------------
+BEGIN;
+COMMIT;
+
+-- ----------------------------
+-- Table structure for wind_engine_mill
+-- ----------------------------
+DROP TABLE IF EXISTS `wind_engine_mill`;
+CREATE TABLE `wind_engine_mill` (
+  `mill_type_code` varchar(32) COLLATE utf8mb4_general_ci NOT NULL COMMENT '编号',
+  `machine_type_code` varchar(32) COLLATE utf8mb4_general_ci NOT NULL COMMENT '机型型号',
+  `manufacturer_name` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '厂商名称',
+  `manufacturer_code` varchar(32) COLLATE utf8mb4_general_ci NOT NULL COMMENT '厂商编号',
+  `brand` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '品牌名称',
+  `state` tinyint(1) DEFAULT NULL COMMENT '状态',
+  `tower_height` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '塔筒高度',
+  `vane_long` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '叶片长度',
+  `curved_motion_type` int DEFAULT NULL COMMENT '驱动方式',
+  `combinationc` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '组合字段',
+  `del_state` tinyint(1) DEFAULT NULL COMMENT '删除状态',
+  `create_by` int DEFAULT NULL COMMENT '创建人',
+  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+  `update_by` int DEFAULT NULL COMMENT '更新人',
+  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+  PRIMARY KEY (`machine_type_code`,`manufacturer_code`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='风机机型信息 ';
+
+-- ----------------------------
+-- Records of wind_engine_mill
+-- ----------------------------
+BEGIN;
+COMMIT;
+
+-- ----------------------------
+-- Table structure for wind_field
+-- ----------------------------
+DROP TABLE IF EXISTS `wind_field`;
+CREATE TABLE `wind_field` (
+  `id` int NOT NULL AUTO_INCREMENT COMMENT '主键',
+  `company_code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '企业编号 11',
+  `field_code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '风场编号',
+  `field_name` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '风场名称',
+  `density` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '空气密度-合同功率曲线',
+  `state` tinyint(1) DEFAULT NULL COMMENT '启用状态',
+  `engine_number` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '风机数量',
+  `rated_capacity_number` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '总额定容量-sum机组',
+  `province_id` int DEFAULT NULL COMMENT '省编号',
+  `province_name` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '省名字',
+  `city_id` int DEFAULT NULL COMMENT '市编号',
+  `city_name` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '市名字',
+  `longitude` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '经度',
+  `latitude` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '纬度',
+  `elevation_height` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '海拔高度',
+  `del_state` tinyint(1) DEFAULT NULL COMMENT '删除状态',
+  `create_by` int DEFAULT NULL COMMENT '创建人',
+  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+  `update_by` int DEFAULT NULL COMMENT '更新人',
+  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='风场信息表 ';
+
+-- ----------------------------
+-- Records of wind_field
+-- ----------------------------
+BEGIN;
+INSERT INTO `wind_field` VALUES (2, 'COM00007', 'WOF01000002', '风场1', '1111', 1, NULL, '12', 21, '北京', 12, '北京', '32.2', '12.3', '2222', 0, NULL, '2024-04-29 04:23:02', NULL, '2024-04-29 04:23:02');
+COMMIT;
+
+-- ----------------------------
+-- Table structure for wind_field_resouce
+-- ----------------------------
+DROP TABLE IF EXISTS `wind_field_resouce`;
+CREATE TABLE `wind_field_resouce` (
+  `id` int NOT NULL AUTO_INCREMENT COMMENT '编号',
+  `field_code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '风场编号',
+  `file_name` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '上传文件名称',
+  `type` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '上传类型',
+  `resource_url` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '上传文件地址',
+  `create_by` int DEFAULT NULL COMMENT '创建人',
+  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+  `update_by` int DEFAULT NULL COMMENT '更新人',
+  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='风场资源信息表 ';
+
+-- ----------------------------
+-- Records of wind_field_resouce
+-- ----------------------------
+BEGIN;
+COMMIT;
+
+-- ----------------------------
+-- Table structure for wind_relation
+-- ----------------------------
+DROP TABLE IF EXISTS `wind_relation`;
+CREATE TABLE `wind_relation` (
+  `id` int NOT NULL AUTO_INCREMENT COMMENT '主键',
+  `code_number` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '对象编号',
+  `code_name` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '编号名称',
+  `parent_code` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '父级编号',
+  `type` varchar(32) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '类型',
+  `create_by` int DEFAULT NULL COMMENT '创建人',
+  `create_time` datetime DEFAULT NULL COMMENT '创建时间',
+  `update_by` int DEFAULT NULL COMMENT '更新人',
+  `update_time` datetime DEFAULT NULL COMMENT '更新时间',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='风场关系表 ';
+
+-- ----------------------------
+-- Records of wind_relation
+-- ----------------------------
+BEGIN;
+INSERT INTO `wind_relation` VALUES (2, 'COM00005', '大唐集团1', '0', 'company', NULL, '2024-04-28 03:26:55', NULL, '2024-04-28 03:26:55');
+INSERT INTO `wind_relation` VALUES (4, 'COM00007', '大唐集团2', 'COM00005', 'company', NULL, '2024-04-29 02:10:06', NULL, '2024-04-29 02:10:06');
+INSERT INTO `wind_relation` VALUES (6, 'WOF01000002', '风场1', 'COM00007', 'field', NULL, '2024-04-29 04:23:02', NULL, '2024-04-29 04:23:02');
+COMMIT;
+
+SET FOREIGN_KEY_CHECKS = 1;

+ 118 - 0
energy-manage-common/pom.xml

@@ -0,0 +1,118 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <parent>
+        <artifactId>energy-manage-platform</artifactId>
+        <groupId>com.zhzn.energy</groupId>
+        <version>1.0.0-SNAPSHOT</version>
+    </parent>
+    <modelVersion>4.0.0</modelVersion>
+
+    <artifactId>energy-manage-common</artifactId>
+
+    <properties>
+        <java.version>1.8</java.version>
+        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+        <endorsed.dir>${project.build.directory}/endorsed</endorsed.dir>
+        <poi.version>4.1.2</poi.version>
+    </properties>
+
+    <dependencies>
+        <dependency>
+            <groupId>commons-beanutils</groupId>
+            <artifactId>commons-beanutils</artifactId>
+            <version>1.9.2</version>
+        </dependency>
+
+        <dependency>
+            <groupId>commons-collections</groupId>
+            <artifactId>commons-collections</artifactId>
+            <version>3.2.1</version>
+        </dependency>
+
+        <dependency>
+            <groupId>com.google.guava</groupId>
+            <artifactId>guava</artifactId>
+            <version>31.1-jre</version>
+        </dependency>
+
+        <dependency>
+            <groupId>joda-time</groupId>
+            <artifactId>joda-time</artifactId>
+            <version>2.7</version>
+        </dependency>
+
+
+        <dependency>
+            <groupId>com.google.zxing</groupId>
+            <artifactId>core</artifactId>
+            <version>3.3.0</version>
+        </dependency>
+
+        <dependency>
+            <groupId>jakarta.validation</groupId>
+            <artifactId>jakarta.validation-api</artifactId>
+        </dependency>
+
+        <!-- poi -->
+        <dependency>
+            <groupId>org.apache.poi</groupId>
+            <artifactId>poi-excelant</artifactId>
+            <version>${poi.version}</version>
+        </dependency>
+
+        <dependency>
+            <groupId>org.apache.poi</groupId>
+            <artifactId>poi-scratchpad</artifactId>
+            <version>${poi.version}</version>
+        </dependency>
+
+        <dependency>
+            <groupId>org.apache.poi</groupId>
+            <artifactId>poi</artifactId>
+            <version>${poi.version}</version>
+        </dependency>
+
+        <dependency>
+            <groupId>org.apache.poi</groupId>
+            <artifactId>poi-ooxml</artifactId>
+            <version>${poi.version}</version>
+        </dependency>
+
+        <dependency>
+            <groupId>org.apache.poi</groupId>
+            <artifactId>poi-ooxml-schemas</artifactId>
+            <version>${poi.version}</version>
+        </dependency>
+
+        <!-- alibaba easyexcel -->
+        <dependency>
+            <groupId>com.alibaba</groupId>
+            <artifactId>easyexcel</artifactId>
+            <version>3.3.2</version>
+        </dependency>
+
+    </dependencies>
+
+
+    <build>
+        <plugins>
+            <!-- mybatis generator 自动生成代码插件 -->
+            <plugin>
+                <groupId>org.mybatis.generator</groupId>
+                <artifactId>mybatis-generator-maven-plugin</artifactId>
+                <version>1.3.5</version>
+                <configuration>
+                    <!--配置文件的位置-->
+                    <configurationFile>src/main/resources/generatorConfig.xml</configurationFile>
+                    <overwrite>true</overwrite>
+                    <verbose>true</verbose>
+                </configuration>
+            </plugin>
+
+        </plugins>
+    </build>
+
+
+</project>

+ 22 - 0
energy-manage-common/src/main/java/com/energy/manage/common/base/BaseConstant.java

@@ -0,0 +1,22 @@
+package com.energy.manage.common.base;
+
+/**
+ * 系统常量
+ * Created by apple on 2017/5/9.
+ */
+public class BaseConstant {
+
+  public static final String SUCCESSFUL_CODE = "1";  //成功
+
+  public static final String FAILURE_CODE = "0"; //失败
+
+  public static final String AUTH_CODE = "401";//未授权客户机访问数据
+
+  public static final String PARAMETER_CODE = "400";// 错误请求 — 请求中有语法问题
+
+  public static final String CONDITIONS_CODE = "412";// 参数条件错误
+
+  public static final String PERFORM_CODE = "5011"; //服务器执行错误
+
+
+}

+ 16 - 0
energy-manage-common/src/main/java/com/energy/manage/common/base/BaseController.java

@@ -0,0 +1,16 @@
+package com.energy.manage.common.base;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+/**
+ * Controller基础类
+ */
+public class BaseController {
+  /**
+   * 日志对象
+   */
+  protected Logger logger = LoggerFactory.getLogger(this.getClass());
+
+
+}

+ 44 - 0
energy-manage-common/src/main/java/com/energy/manage/common/base/BaseDomainWithUser.java

@@ -0,0 +1,44 @@
+package com.energy.manage.common.base;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * @author shiyue
+ */
+@Data
+public class BaseDomainWithUser extends NewBaseDomain {
+
+    /*
+     * 创建人
+     */
+    private Integer createBy;
+
+    /*
+     * 创建人名称
+     */
+    private String createUser;
+
+    /*
+     * 更新人
+     */
+    private Integer updateBy;
+
+    /*
+     * 更新人名称
+     */
+    private String updateUser;
+
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    private Date createTime;
+
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    private Date updateTime;
+
+    /**
+     * 用户角色
+     */
+    private Integer roleId;
+}

+ 26 - 0
energy-manage-common/src/main/java/com/energy/manage/common/base/BaseException.java

@@ -0,0 +1,26 @@
+package com.energy.manage.common.base;
+
+
+/**
+ * Created by  on 1/17/17.
+ */
+public class BaseException extends RuntimeException {
+  private static final long serialVersionUID = -6336125614015879324L;
+
+  public BaseException() {
+    super();
+  }
+
+  public BaseException(String message) {
+    super(message);
+  }
+
+
+  public BaseException(Throwable cause) {
+    super(cause);
+  }
+
+  public BaseException(String message, Throwable cause) {
+    super(message, cause);
+  }
+}

+ 12 - 0
energy-manage-common/src/main/java/com/energy/manage/common/base/BaseRepository.java

@@ -0,0 +1,12 @@
+package com.energy.manage.common.base;
+
+/**
+ * @author
+ */
+public class BaseRepository<T> extends BaseServiceImpl<T> {
+
+    public int insertSelective(T data) {
+        return mapper.insertSelective(data);
+    }
+
+}

+ 23 - 0
energy-manage-common/src/main/java/com/energy/manage/common/base/BaseService.java

@@ -0,0 +1,23 @@
+package com.energy.manage.common.base;
+
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@Service
+public interface BaseService<T> {
+
+  T selectByKey(Object key);
+
+  int save(T entity);
+
+  int delete(Object key);
+
+  int updateAll(T entity);
+
+  int updateNotNull(T entity);
+
+  List<T> selectByExample(Object example);
+
+
+}

+ 60 - 0
energy-manage-common/src/main/java/com/energy/manage/common/base/BaseServiceImpl.java

@@ -0,0 +1,60 @@
+package com.energy.manage.common.base;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.annotation.Transactional;
+import tk.mybatis.mapper.common.Mapper;
+
+import java.util.List;
+
+@Transactional(rollbackFor = Exception.class)
+public abstract class BaseServiceImpl<T> implements BaseService<T> {
+
+  private final Logger logger = LoggerFactory.getLogger(this.getClass());
+
+  @Autowired
+  protected Mapper<T> mapper;
+
+  public Mapper<T> getMapper() {
+    return mapper;
+  }
+
+  @Override
+  public T selectByKey(Object key) {
+    //说明:根据主键字段进行查询,方法参数必须包含完整的主键属性,查询条件使用等号
+    return mapper.selectByPrimaryKey(key);
+  }
+
+  @Override
+  public int save(T entity) {
+    //说明:保存一个实体,null的属性也会保存,不会使用数据库默认值
+    return mapper.insert(entity);
+  }
+
+  @Override
+  public int delete(Object key) {
+    //说明:根据主键字段进行删除,方法参数必须包含完整的主键属性
+    return mapper.deleteByPrimaryKey(key);
+  }
+
+  @Override
+  public int updateAll(T entity) {
+    //说明:根据主键更新实体全部字段,null值会被更新
+    return mapper.updateByPrimaryKey(entity);
+  }
+
+  @Override
+  public int updateNotNull(T entity) {
+    //根据主键更新属性不为null的值
+    return mapper.updateByPrimaryKeySelective(entity);
+  }
+
+  @Override
+  public List<T> selectByExample(Object example) {
+    //说明:根据Example条件进行查询
+    //重点:这个查询支持通过Example类指定查询列,通过 selectProperties方法指定查询列
+    return mapper.selectByExample(example);
+  }
+
+}

+ 38 - 0
energy-manage-common/src/main/java/com/energy/manage/common/base/NewBaseDomain.java

@@ -0,0 +1,38 @@
+package com.energy.manage.common.base;
+
+import com.fasterxml.jackson.annotation.JsonAutoDetect;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import javax.persistence.Column;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import java.util.Date;
+
+
+@Data
+@EqualsAndHashCode
+@JsonAutoDetect(fieldVisibility = JsonAutoDetect.Visibility.PROTECTED_AND_PUBLIC)
+public class NewBaseDomain {
+
+
+    @Id
+    @GeneratedValue(generator = "JDBC")
+    @Column(name = "id")
+    @ApiModelProperty(value = "主键id")
+    private Integer id;
+
+    @ApiModelProperty(value = "创建时间")
+    private Date createTime;
+
+    @ApiModelProperty(value = "修改时间")
+    private Date updateTime;
+
+    @ApiModelProperty(value = "创建人")
+    private Integer createBy;
+
+    @ApiModelProperty(value = "修改人")
+    private Integer updateBy;
+
+}

+ 112 - 0
energy-manage-common/src/main/java/com/energy/manage/common/base/Page.java

@@ -0,0 +1,112 @@
+package com.energy.manage.common.base;
+
+import org.springframework.util.CollectionUtils;
+
+import java.io.Serializable;
+import java.util.Collections;
+import java.util.List;
+
+public class Page<T> implements Serializable {
+  private Integer pageNum = 1;
+  private Integer pageSize = 10;
+  private Long totalSize;
+  private Integer pages;
+  private List<T> list;
+
+  public Integer getPageNum() {
+    return pageNum;
+  }
+
+  public void setPageNum(Integer pageNum) {
+    this.pageNum = pageNum;
+  }
+
+  public Integer getPageSize() {
+    return pageSize;
+  }
+
+  public void setPageSize(Integer pageSize) {
+    this.pageSize = pageSize;
+  }
+
+  public Long getTotalSize() {
+    return totalSize;
+  }
+
+  public void setTotalSize(Long totalSize) {
+    this.totalSize = totalSize;
+  }
+
+  public Integer getPages() {
+    pages = (int) (totalSize / pageSize);
+    int mod = (int) (totalSize % pageSize);
+    if (mod > 0) {
+      pages += 1;
+    }
+    return pages;
+  }
+
+  public void setPages(Integer pages) {
+    this.pages = pages;
+  }
+
+  public List<T> getList() {
+    return list;
+  }
+
+  public void setList(List<T> list) {
+    if (CollectionUtils.isEmpty(list)) {
+      this.list = Collections.emptyList();
+    } else {
+      this.list = list;
+    }
+  }
+
+  public Page() {
+  }
+
+  /**
+   * 构建分页数据
+   *
+   * @param pageNum
+   * @param pageSize
+   * @param totalSize
+   * @param list
+   * @param <T>
+   * @return
+   */
+  public static <T> Page<T> build(int pageNum, int pageSize, long totalSize, List<T> list) {
+    Page<T> page = new Page<>();
+    page.setPageNum(pageNum);
+    page.setPageSize(pageSize);
+    page.setTotalSize(totalSize);
+    page.setList(list);
+    return page;
+  }
+
+  /**
+   * Page Redis List 分页工具,获取分页起始数据
+   *
+   * @param pageNum
+   * @param pageSize
+   * @return
+   */
+  public static int getPageDataStart(int pageNum, int pageSize) {
+    pageNum = pageNum <= 0 ? 1 : pageNum;
+    pageSize = pageSize <= 0 ? 10 : pageSize;
+    return (pageNum - 1) * pageSize;
+  }
+
+  /**
+   * Page Redis List 分页工具,获取分页结束数据
+   *
+   * @param pageNum
+   * @param pageSize
+   * @return
+   */
+  public static int getPageDataEnd(int pageNum, int pageSize) {
+    pageNum = pageNum <= 0 ? 1 : pageNum;
+    pageSize = pageSize <= 0 ? 10 : pageSize;
+    return pageNum * pageSize - 1;
+  }
+}

+ 66 - 0
energy-manage-common/src/main/java/com/energy/manage/common/constant/Constants.java

@@ -0,0 +1,66 @@
+package com.energy.manage.common.constant;
+
+import java.nio.charset.Charset;
+
+/**
+ * Created by edz on 2017/3/8.
+ */
+public class Constants {
+
+  /**
+   * 可用状态码
+   */
+  // 未启用
+  public static final int GLOBAL_NOT_USE = 0;
+  // 正常启用中
+  public static final int GLOBAL_IN_USE = 1;
+  // 禁用状态
+  public static final int GLOBAL_DISABLE = 2;
+
+  /**
+   * 默认分隔符
+   */
+  public static final String GLOBAL_SEGMENTATION_SYMBOLS = ",";
+
+  /**
+   * 默认头像
+   */
+  public static final String GLOBAL_STUDENT_DEFAULT_PHOTO = "";
+  public static final String GLOBAL_TEACHER_DEFAULT_PHOTO = "";
+
+  /**
+   * 默认、初始密码
+   */
+  public static final String GLOBAL_DEFAULT_PWD = "123456";
+
+  //课程类型默认图片
+  public static final String GLOBAL_PYTHON_IMG_URL = "";
+  public static final String GLOBAL_SCRATCH_IMG_URL = "";
+
+  public static final String YYYY_MM_DD = "yyyy-MM-dd";
+  public static final String YYYY_MM_DD_HH_MM_SS = "yyyy-MM-dd HH:mm:ss";
+  public static final String YYYYMMDD = "yyyyMMdd";
+  public static final String YYYYMM = "yyyyMM";
+  public static final String YYYY_MM = "yyyy-MM";
+
+  public static final String CREATE_EXCEL_TYPE_OSS = "oss";
+  public static final String CREATE_EXCEL_TYPE_FILE = "file";
+
+  public static final int REDEEM_CODE_TYPE_LOGIN= 0; //登录
+  public static final int REDEEM_CODE_TYPE_SIGN_UP = 1; //补全信息
+
+  /*常量~*/
+  public static final String ENCODING = Charset.forName("UTF-8").name();
+
+  public static final String ZERO = ",0";
+
+
+  public static final boolean APPLICATION_DEV_PROD_MESS = false; // true:生产环境    false:开发环境
+
+  public static final int IS_DELETED = 1;
+
+  public static final int FULL_PROPORTION = 100;
+
+
+
+}

+ 25 - 0
energy-manage-common/src/main/java/com/energy/manage/common/constant/UploadFileResponseVo.java

@@ -0,0 +1,25 @@
+package com.energy.manage.common.constant;
+
+import java.io.Serializable;
+
+public class UploadFileResponseVo implements Serializable {
+
+  private String fileName;
+  private String fileUrl;
+
+  public String getFileName() {
+    return fileName;
+  }
+
+  public void setFileName(String fileName) {
+    this.fileName = fileName;
+  }
+
+  public String getFileUrl() {
+    return fileUrl;
+  }
+
+  public void setFileUrl(String fileUrl) {
+    this.fileUrl = fileUrl;
+  }
+}

+ 21 - 0
energy-manage-common/src/main/java/com/energy/manage/common/constant/controller/WebApiConstant.java

@@ -0,0 +1,21 @@
+package com.energy.manage.common.constant.controller;
+
+/**
+ * 后台接口URL 定义类
+ */
+public interface WebApiConstant {
+
+
+    /**
+     * 字典
+     */
+    interface Dist {
+
+        String QUERY_DICT_LIST = "/dict/getDictList";
+
+        String REFRESH_DICT_CACHE_DATA = "/dict/refreshDictListAllCache";
+
+        String DICT_CHAIN_LIST = "/dict/getDictReachChain";
+    }
+
+}

+ 12 - 0
energy-manage-common/src/main/java/com/energy/manage/common/constant/kafka/KafkaTopicConstant.java

@@ -0,0 +1,12 @@
+package com.energy.manage.common.constant.kafka;
+
+/**
+ * kafka-topic 常量
+ */
+public class KafkaTopicConstant {
+
+    public static String SYSTEM_ENERGY_INFO = "test";
+
+
+
+}

+ 39 - 0
energy-manage-common/src/main/java/com/energy/manage/common/constant/redis/ManagerRedisKeyConstant.java

@@ -0,0 +1,39 @@
+package com.energy.manage.common.constant.redis;
+
+import java.io.Serializable;
+
+/**
+ * redis常量
+ */
+public class ManagerRedisKeyConstant {
+
+    public static String SYSTEM_USER_LOGIN_INFO = "zhzn_energy_system_user_login_info:%s";
+
+    public static String DEFAULT_PREFIX_KEY = "zhzn";
+
+    public static String PLACEHOLDER = ":";
+
+    public static String DICT_CONSTANTS_KEY = "energy:dict:constants";
+
+    //id 工具缓存
+    public static String IDGENERATOR_CONSTANTS_KEY = "energy:Idgenerator:{id}";
+
+
+    private static final String PLACE_HOLDER = "\\{id\\}";
+
+
+    public static String build(String key, Serializable... id) {
+        Serializable[] var2 = id;
+        int var3 = id.length;
+
+        for (int var4 = 0; var4 < var3; ++var4) {
+            Serializable i = var2[var4];
+            key = key.replaceFirst("\\{id\\}", String.valueOf(i));
+        }
+        return key;
+    }
+
+    static {
+        IDGENERATOR_CONSTANTS_KEY = "energy:Idgenerator:{id}";
+    }
+}

+ 52 - 0
energy-manage-common/src/main/java/com/energy/manage/common/enums/DeleteStatusEnum.java

@@ -0,0 +1,52 @@
+package com.energy.manage.common.enums;
+
+/**
+ * 删除枚举
+ */
+public enum DeleteStatusEnum {
+  NODELETE(0, "未删除"),
+  DELETE(1, "删除");
+
+  DeleteStatusEnum(Integer code, String name) {
+    this.code = code;
+    this.name = name;
+  }
+
+  private Integer code;
+  private String name;
+
+
+  public Integer getCode() {
+    return code;
+  }
+
+  public void setCode(Integer code) {
+    this.code = code;
+  }
+
+  public String getName() {
+    return name;
+  }
+
+  public void setName(String name) {
+    this.name = name;
+  }
+
+  public static String getKeyByValue(Integer code){
+    for(DeleteStatusEnum e : values()){
+      if(code.equals(e.code)){
+        return e.name;
+      }
+    }
+    return "Not exist";
+  }
+
+  public static DeleteStatusEnum getFastReplyType(Integer code){
+    for(DeleteStatusEnum e : values()){
+      if(code.equals(e.code)){
+        return e;
+      }
+    }
+    return null;
+  }
+}

+ 58 - 0
energy-manage-common/src/main/java/com/energy/manage/common/enums/IdPrefixEnum.java

@@ -0,0 +1,58 @@
+package com.energy.manage.common.enums;
+
+/**
+ * id 前缀枚举
+ */
+public enum IdPrefixEnum {
+
+
+    COMPANY_NUMBER("COM", "企业信息编号"),
+    WIND_FIELD_NUMBER("WOF", "风场信息编号"),
+    WIND_GROUP_NUMBER("WOG", "风机信息编号"),
+    WIND_TOWER_NUMBER("WOT", "测风塔信息编号");
+
+    IdPrefixEnum(String code, String name) {
+        this.code = code;
+        this.name = name;
+    }
+
+    private String code;
+    private String name;
+
+
+    public String getCode() {
+        return code;
+    }
+
+    public void setCode(String code) {
+        this.code = code;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public static String getKeyByValue(String code) {
+        for (IdPrefixEnum e : values()) {
+            if (code.equals(e.code)) {
+                return e.name;
+            }
+        }
+        return "Not exist";
+    }
+
+    public static IdPrefixEnum getFastReplyType(String code) {
+        for (IdPrefixEnum e : values()) {
+            if (code.equals(e.code)) {
+                return e;
+            }
+        }
+        return null;
+    }
+
+
+}

+ 57 - 0
energy-manage-common/src/main/java/com/energy/manage/common/enums/TypeRelationEnum.java

@@ -0,0 +1,57 @@
+package com.energy.manage.common.enums;
+
+/**
+ * 类型枚举
+ */
+public enum TypeRelationEnum {
+
+
+    COMPANY_NUMBER("company", "企业信息类型"),
+    WIND_FIELD_NUMBER("field", "风场信息类型"),
+    WIND_GROUP_NUMBER("engine", "风机信息类型");
+
+    TypeRelationEnum(String code, String name) {
+        this.code = code;
+        this.name = name;
+    }
+
+    private String code;
+    private String name;
+
+
+    public String getCode() {
+        return code;
+    }
+
+    public void setCode(String code) {
+        this.code = code;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public static String getKeyByValue(String code) {
+        for (TypeRelationEnum e : values()) {
+            if (code.equals(e.code)) {
+                return e.name;
+            }
+        }
+        return "Not exist";
+    }
+
+    public static TypeRelationEnum getFastReplyType(String code) {
+        for (TypeRelationEnum e : values()) {
+            if (code.equals(e.code)) {
+                return e;
+            }
+        }
+        return null;
+    }
+
+
+}

+ 56 - 0
energy-manage-common/src/main/java/com/energy/manage/common/exception/BusinessException.java

@@ -0,0 +1,56 @@
+package com.energy.manage.common.exception;
+
+
+/**
+ * 业务异常超类
+ *
+ * @version 1.0
+ * @Project common
+ * @Author wy
+ * @Date 2019年4月11日
+ */
+public class BusinessException extends RuntimeException {
+
+  private static final long serialVersionUID = -6093528337682404785L;
+  /**
+   * 异常编码.
+   */
+  private int code = 0;
+
+  private Object data;
+
+  public BusinessException(Throwable cause) {
+    super(cause);
+  }
+
+  public BusinessException(String message) {
+    super(message);
+  }
+
+  public BusinessException(int code, String message) {
+    super(message);
+    this.code = code;
+  }
+
+  public BusinessException(int code, String message, Throwable cause) {
+    super(message, cause);
+    this.code = code;
+  }
+
+  public int getCode() {
+    return this.code;
+  }
+
+  public void setCode(int code) {
+    this.code = code;
+  }
+
+  public Object getData() {
+    return data;
+  }
+
+  public void setData(Object data) {
+    this.data = data;
+  }
+
+}

+ 17 - 0
energy-manage-common/src/main/java/com/energy/manage/common/exception/ErrorSignException.java

@@ -0,0 +1,17 @@
+package com.energy.manage.common.exception;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+public class ErrorSignException extends RuntimeException {
+
+  private Logger logger = LoggerFactory.getLogger(ErrorSignException.class);
+
+  public ErrorSignException(String phone) {
+    logger.info(String.format("用户:%s,签名验证失败访问系统被拦截", phone));
+  }
+
+  public ErrorSignException() {
+    logger.info(String.format("未获取jwt信息,签名验证失败访问系统被拦截"));
+  }
+}

+ 7 - 0
energy-manage-common/src/main/java/com/energy/manage/common/exception/NoRequestException.java

@@ -0,0 +1,7 @@
+package com.energy.manage.common.exception;
+
+/**
+ * 重复提交异常
+ */
+public class NoRequestException extends RuntimeException {
+}

+ 9 - 0
energy-manage-common/src/main/java/com/energy/manage/common/exception/ServiceErrorException.java

@@ -0,0 +1,9 @@
+package com.energy.manage.common.exception;
+
+/**
+ * @author lwz
+ * @createTime 2020-07-29 17:36
+ * @desc
+ */
+public class ServiceErrorException extends RuntimeException {
+}

+ 27 - 0
energy-manage-common/src/main/java/com/energy/manage/common/exception/ServiceException.java

@@ -0,0 +1,27 @@
+package com.energy.manage.common.exception;
+
+
+import com.energy.manage.common.base.BaseException;
+
+/**
+ * Created by lixzh on 1/17/17.
+ */
+public class ServiceException extends BaseException {
+  private static final long serialVersionUID = -6336125614015879323L;
+
+  public ServiceException() {
+    super();
+  }
+
+  public ServiceException(String message) {
+    super(message);
+  }
+
+  public ServiceException(Throwable cause) {
+    super(cause);
+  }
+
+  public ServiceException(String message, Throwable cause) {
+    super(message, cause);
+  }
+}

+ 4 - 0
energy-manage-common/src/main/java/com/energy/manage/common/exception/TokenInvalidException.java

@@ -0,0 +1,4 @@
+package com.energy.manage.common.exception;
+
+public class TokenInvalidException extends RuntimeException {
+}

+ 29 - 0
energy-manage-common/src/main/java/com/energy/manage/common/exception/UserNotLoginException.java

@@ -0,0 +1,29 @@
+package com.energy.manage.common.exception;
+
+public class UserNotLoginException extends RuntimeException {
+  private Long userId;
+  private String userKey;
+
+  public Long getUserId() {
+    return userId;
+  }
+
+  public void setUserId(Long userId) {
+    this.userId = userId;
+  }
+
+  public String getUserKey() {
+    return userKey;
+  }
+
+  public void setUserKey(String userKey) {
+    this.userKey = userKey;
+  }
+
+  public UserNotLoginException(){}
+
+  public UserNotLoginException(Long userId, String userKey){
+    this.userId = userId;
+    this.userKey = userKey;
+  }
+}

+ 15 - 0
energy-manage-common/src/main/java/com/energy/manage/common/mapper/MyMapper.java

@@ -0,0 +1,15 @@
+package com.energy.manage.common.mapper;
+
+import tk.mybatis.mapper.common.Mapper;
+import tk.mybatis.mapper.common.MySqlMapper;
+
+/**
+ * 继承自己的MyMapper
+ * 使用通用mapper
+ * @author shiyue
+ * @since 2017-09-06 21:53
+ */
+public interface MyMapper<T> extends Mapper<T>, MySqlMapper<T> {
+    //TODO
+    //FIXME 特别注意,该接口不能被扫描到,否则会出错
+}

+ 65 - 0
energy-manage-common/src/main/java/com/energy/manage/common/po/anemometertower/AnemometerTowerDataPO.java

@@ -0,0 +1,65 @@
+package com.energy.manage.common.po.anemometertower;
+
+import com.energy.manage.common.base.NewBaseDomain;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import javax.persistence.Table;
+
+/**
+ * 测风塔数据表
+ */
+@Data
+@Table(name = "anemometer_tower_data")
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class AnemometerTowerDataPO extends NewBaseDomain {
+
+    /**
+     * 测风塔编号
+     */
+    private String towerCode;
+    /**
+     * 采集数据时间
+     */
+    private String time;
+    /**
+     * 层高类型
+     */
+    private String heightType;
+    /**
+     * 层高名称
+     */
+    private String heightName;
+    /**
+     * 实测风速
+     */
+    private String windSpeed;
+    /**
+     * 实测温度
+     */
+    private String temperature;
+    /**
+     * 实测气压
+     */
+    private String pressure;
+    /**
+     * 实测雨量
+     */
+    private String rainfall;
+    /**
+     * 大气密度
+     */
+    private String density;
+    /**
+     * 状态
+     */
+    private String state;
+    /**
+     * 删除状态
+     */
+    private String delState;
+
+
+}

+ 31 - 0
energy-manage-common/src/main/java/com/energy/manage/common/po/anemometertower/AnemometerTowerHeightPO.java

@@ -0,0 +1,31 @@
+package com.energy.manage.common.po.anemometertower;
+
+import com.energy.manage.common.base.NewBaseDomain;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import javax.persistence.Table;
+import java.math.BigDecimal;
+
+/**
+ * 测风塔基础数据表
+ */
+@Data
+@Table(name = "anemometer_tower_height")
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class AnemometerTowerHeightPO extends NewBaseDomain {
+
+    /**
+     * 测风塔编号
+     */
+    private String anemometerCode;
+    /**
+     * 测风塔高度
+     */
+    private String anemometerHeight;
+
+
+
+}

+ 46 - 0
energy-manage-common/src/main/java/com/energy/manage/common/po/anemometertower/AnemometerTowerPO.java

@@ -0,0 +1,46 @@
+package com.energy.manage.common.po.anemometertower;
+
+import com.energy.manage.common.base.NewBaseDomain;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import javax.persistence.Table;
+import java.math.BigDecimal;
+
+/**
+ * 测风塔基础数据表
+ */
+@Data
+@Table(name = "anemometer_tower")
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class AnemometerTowerPO extends NewBaseDomain {
+
+    /**
+     * 测风塔编号
+     */
+    private String anemometerCode;
+    /**
+     * 测风塔名称
+     */
+    private String anemometerName;
+    /**
+     * 经度
+     */
+    private String longitude;
+    /**
+     * 纬度
+     */
+    private String latitude;
+    /**
+     * 状态
+     */
+    private Integer state;
+    /**
+     * 删除状态
+     */
+    private Integer delState;
+
+
+}

+ 30 - 0
energy-manage-common/src/main/java/com/energy/manage/common/po/anemometertower/AnemometerTowerRelationPO.java

@@ -0,0 +1,30 @@
+package com.energy.manage.common.po.anemometertower;
+
+
+import com.energy.manage.common.base.NewBaseDomain;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import javax.persistence.Table;
+
+/**
+ * 测风塔数据表
+ */
+@Data
+@Table(name = "anemometer_tower_relation")
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class AnemometerTowerRelationPO extends NewBaseDomain {
+
+    /**
+     * 测风塔编号
+     */
+    private String towerCode;
+    /**
+     * 风场编号
+     */
+    private String fieldCode;
+
+
+}

+ 28 - 0
energy-manage-common/src/main/java/com/energy/manage/common/po/area/AreaPO.java

@@ -0,0 +1,28 @@
+package com.energy.manage.common.po.area;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.persistence.Table;
+import java.io.Serializable;
+
+/**
+ * @author lwz
+ * @createTime 2020-07-29 16:08
+ * @desc
+ */
+@Table(name = "sys_areas_info")
+@Getter
+@Setter
+public class AreaPO implements Serializable {
+
+  private Integer areaId;
+
+  private String province;
+
+  private String city;
+
+  private String area;
+
+  private String areaCode;
+}

+ 66 - 0
energy-manage-common/src/main/java/com/energy/manage/common/po/company/WindCompanyPO.java

@@ -0,0 +1,66 @@
+package com.energy.manage.common.po.company;
+
+import com.energy.manage.common.base.NewBaseDomain;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import javax.persistence.GeneratedValue;
+import javax.persistence.Table;
+import java.util.Date;
+
+/**
+ * 企业信息
+ */
+@Data
+@Table(name = "wind_company")
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class WindCompanyPO extends NewBaseDomain {
+
+    /**
+     * 企业编号
+     */
+    private String companyCode;
+
+    /**
+     * 企业名称
+     */
+    private String companyName;
+
+    /**
+     * 省
+     */
+    private Integer provinceId;
+
+    /**
+     * 省名字
+     */
+    private String provinceName;
+
+    /**
+     * 市
+     */
+    private Integer cityId;
+
+    /**
+     * 市名字
+     */
+    private String cityName;
+
+    /**
+     * 企业描述
+     */
+    private String described;
+    /**
+     * 状态
+     */
+    private Integer state;
+
+    /**
+     * 删除状态
+     */
+    private Integer delState;
+
+
+}

+ 43 - 0
energy-manage-common/src/main/java/com/energy/manage/common/po/dict/DictConstantsPO.java

@@ -0,0 +1,43 @@
+package com.energy.manage.common.po.dict;
+
+import lombok.Data;
+
+import javax.persistence.Table;
+import java.io.Serializable;
+
+/**
+ * <p>
+ *
+ * </p>
+ *
+ * @author tongzw
+ * @since 2022-07-04
+ */
+@Table(name = "dict_constants")
+@Data
+public class DictConstantsPO implements Serializable {
+
+
+    /**
+     * 常量类型
+     */
+    private Integer contentsType;
+
+    /**
+     * 常量值
+     */
+    private Integer contentsValue;
+
+    /**
+     * 常量显示内容
+     */
+    private String contentsName;
+
+
+    /**
+     * 描述信息
+     */
+    private String contentsDescribe;
+
+
+}

+ 38 - 0
energy-manage-common/src/main/java/com/energy/manage/common/po/powerwordcontract/PowerWordContractPO.java

@@ -0,0 +1,38 @@
+package com.energy.manage.common.po.powerwordcontract;
+
+import com.energy.manage.common.base.NewBaseDomain;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import javax.persistence.Table;
+
+@Data
+@Table(name = "power_word_relation_contract")
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class PowerWordContractPO extends NewBaseDomain {
+
+
+    /**
+     * 风场编号
+     */
+    private String fieldCode;
+    /**
+     * 机型编号
+     */
+    private String millTypeCode;
+    /**
+     * 有功功率
+     */
+    private String activePower;
+    /**
+     * 风速
+     */
+    private String windSpeed;
+    /**
+     * 删除状态
+     */
+    private Integer delState;
+
+}

+ 38 - 0
energy-manage-common/src/main/java/com/energy/manage/common/po/powerwordcriterion/PowerWordCriterionPO.java

@@ -0,0 +1,38 @@
+package com.energy.manage.common.po.powerwordcriterion;
+
+import com.energy.manage.common.base.NewBaseDomain;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import javax.persistence.Table;
+
+@Data
+@Table(name = "power_word_relation_criterion")
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class PowerWordCriterionPO extends NewBaseDomain {
+
+    /**
+     * 机型编号
+     */
+    private String millTypeCode;
+    /**
+     * 风速
+     */
+    private String windSpeed;
+    /**
+     * 有功功率
+     */
+    private String activePower;
+    /**
+     * 空气密度
+     */
+    private String density;
+    /**
+     * 删除状态
+     */
+    private Integer delState;
+
+
+}

+ 31 - 0
energy-manage-common/src/main/java/com/energy/manage/common/po/system/SysOrganizationAuthPO.java

@@ -0,0 +1,31 @@
+package com.energy.manage.common.po.system;
+
+
+import com.energy.manage.common.base.NewBaseDomain;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import javax.persistence.Table;
+
+@Table(name = "sys_organization_auth")
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class SysOrganizationAuthPO extends NewBaseDomain {
+
+    /**
+     * 角色编号
+     */
+    private Integer roleId;
+    /**
+     * 组织编号
+     */
+    private String codeNumber;
+    /**
+     * 组织类型
+     */
+    private String codeType;
+
+
+}

+ 72 - 0
energy-manage-common/src/main/java/com/energy/manage/common/po/system/SysPermissionPO.java

@@ -0,0 +1,72 @@
+package com.energy.manage.common.po.system;
+
+import com.energy.manage.common.base.NewBaseDomain;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import javax.persistence.Table;
+
+
+/**
+ * 资源表
+ *
+ * @author sy
+ * @date 2021-10-18 13:10:52
+ */
+@Table(name = "sys_permission")
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class SysPermissionPO {
+
+    /**
+     * 资源表主键id
+     */
+    private Integer permissionId;
+
+    /**
+     * 资源名称
+     */
+    private String permissionName;
+
+    /**
+     * 资源父id
+     */
+    private Integer parentId;
+
+    /**
+     * 资源code
+     */
+    private String permissionCode;
+
+    /**
+     * 资源类型(1 位菜单 2 为功能)
+     */
+    private Integer permissionType;
+
+    /**
+     * 资源url
+     */
+    private String permissionUrl;
+
+    /**
+     * 资源状态 0 不可用 1是正常
+     */
+    private Integer permissionState;
+
+    /**
+     * 顺序
+     */
+    private Integer permissionSort;
+
+    /**
+     * 图标icon Url
+     */
+    private String permissionIconUrl;
+
+    /**
+     * 所有父id集合
+     */
+    private Integer permissionDepth;
+}

+ 39 - 0
energy-manage-common/src/main/java/com/energy/manage/common/po/system/SysRolePO.java

@@ -0,0 +1,39 @@
+package com.energy.manage.common.po.system;
+
+import com.energy.manage.common.base.NewBaseDomain;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import javax.persistence.Table;
+
+
+/**
+ * 角色表
+ *
+ * @author sy
+ * @date 2021-10-18 13:10:51
+ */
+@Table(name = "sys_role")
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class SysRolePO extends NewBaseDomain {
+
+
+    /**
+     * 角色描述
+     */
+    private String roleDescription;
+
+    /**
+     * 角色code
+     */
+    private String roleCode;
+
+    /**
+     * 是否可用
+     */
+    private Integer roleAvailable;
+
+}

+ 32 - 0
energy-manage-common/src/main/java/com/energy/manage/common/po/system/SysRolePermissionPO.java

@@ -0,0 +1,32 @@
+package com.energy.manage.common.po.system;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import javax.persistence.Table;
+
+
+/**
+ * 角色资源关联表
+ *
+ * @author sy
+ * @date 2021-10-18 13:10:52
+ */
+@Table(name = "sys_role_permission")
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class SysRolePermissionPO  {
+
+
+    /**
+     * 角色表主键id
+     */
+    private Integer roleId;
+
+    /**
+     * 资源表主键id
+     */
+    private Integer permissionId;
+}

+ 45 - 0
energy-manage-common/src/main/java/com/energy/manage/common/po/system/SysUserInfoPO.java

@@ -0,0 +1,45 @@
+package com.energy.manage.common.po.system;
+
+import com.energy.manage.common.base.NewBaseDomain;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import javax.persistence.Table;
+
+
+/**
+ * 后台用户表
+ *
+ * @author sy
+ * @date 2021-10-18 13:10:52
+ */
+@Table(name = "sys_user_info")
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class SysUserInfoPO extends NewBaseDomain {
+
+
+    /**
+     * 用户名称
+     */
+    private String userName;
+
+    /**
+     * 电话
+     */
+    private String userPhone;
+
+    /**
+     * 密码
+     */
+    private String userPassword;
+
+    /**
+     * 0:禁用,1:可用
+     */
+    private Integer state;
+
+
+}

+ 32 - 0
energy-manage-common/src/main/java/com/energy/manage/common/po/system/SysUserRolePO.java

@@ -0,0 +1,32 @@
+package com.energy.manage.common.po.system;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import javax.persistence.Table;
+
+
+/**
+ * 用户角色表
+ *
+ * @author sy
+ * @date 2021-10-18 13:10:52
+ */
+@Table(name = "sys_user_role")
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class SysUserRolePO {
+
+
+    /**
+     * 用户id
+     */
+    private Integer userId;
+
+    /**
+     * 角色表主键id
+     */
+    private Integer roleId;
+}

+ 26 - 0
energy-manage-common/src/main/java/com/energy/manage/common/po/system/SystemRolePO.java

@@ -0,0 +1,26 @@
+package com.energy.manage.common.po.system;
+
+import com.energy.manage.common.base.NewBaseDomain;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import javax.persistence.Table;
+
+@Table(name = "system_role")
+@EqualsAndHashCode(callSuper = false)
+@Data
+@Accessors(chain = true)
+public class SystemRolePO extends NewBaseDomain {
+
+    private String roleName;
+
+    private String roleCode;
+
+    private String roleDescription;
+
+    private Integer roleType;
+
+    private Integer roleAvailable;
+
+}

+ 46 - 0
energy-manage-common/src/main/java/com/energy/manage/common/po/system/SystemUserPO.java

@@ -0,0 +1,46 @@
+package com.energy.manage.common.po.system;
+
+import com.energy.manage.common.base.NewBaseDomain;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import javax.persistence.Table;
+
+@Table(name = "system_user")
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class SystemUserPO extends NewBaseDomain {
+
+    private String name;
+
+    private Integer gender;
+
+    private String phone;
+
+    private String password;
+
+    private String avatar;
+
+    private Integer workNature;
+
+    private Integer skilledSubject;
+
+    private String personalProfile;
+
+    private String position;
+
+    private Integer stationId;
+
+    private String dtUnionId;
+
+    private String dtDeptName;
+
+    private String dtDeptId;
+
+    private String dtUserId;
+
+    private Integer state;
+
+}

+ 66 - 0
energy-manage-common/src/main/java/com/energy/manage/common/po/windenginegroup/WindEngineGroupPO.java

@@ -0,0 +1,66 @@
+package com.energy.manage.common.po.windenginegroup;
+
+import com.energy.manage.common.base.NewBaseDomain;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import javax.persistence.GeneratedValue;
+import javax.persistence.Table;
+
+@Data
+@Table(name = "wind_engine_group")
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class WindEngineGroupPO extends NewBaseDomain {
+
+    /**
+     * 风场编号
+     */
+    private String fieldCode;
+    /**
+     * 风机名称
+     */
+    private String engineName;
+    /**
+     * 风机编号
+     */
+    private String engineCode;
+    /**
+     * 机型编号uuid
+     */
+    private String millTypeCode;
+    /**
+     * 额定容量
+     */
+    private String ratedCapacity;
+    /**
+     * 海拔高度
+     */
+    private String elevationHeight;
+    /**
+     * 轮毂高度
+     */
+    private String hubHeight;
+    /**
+     * 经度
+     */
+    private String longitude;
+    /**
+     * 维度
+     */
+    private String latitude;
+    /**
+     * 状态
+     */
+    private Integer state;
+    /**
+     * 是否标杆风机
+     */
+    private Integer sightcing;
+    /**
+     * 删除状态
+     */
+    private Integer delState;
+
+}

+ 75 - 0
energy-manage-common/src/main/java/com/energy/manage/common/po/windenginemill/WindEngineMillPO.java

@@ -0,0 +1,75 @@
+package com.energy.manage.common.po.windenginemill;
+
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+import javax.persistence.Table;
+import java.util.Date;
+
+@Data
+@Table(name = "wind_engine_mill")
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class WindEngineMillPO {
+
+    /**
+     * 编号
+     */
+    private String millTypeCode;
+    /**
+     * 机型型号
+     */
+    private String machineTypeCode;
+    /**
+     * 厂商名称
+     */
+    private String manufacturerName;
+    /**
+     * 厂商编号
+     */
+    private String manufacturerCode;
+    /**
+     * 品牌名称
+     */
+    private String brand;
+    /**
+     * 状态
+     */
+    private Integer state;
+    /**
+     * 塔筒高度
+     */
+    private String towerHeight;
+    /**
+     * 叶片长度
+     */
+    private String vaneLong;
+    /**
+     * 删除状态
+     */
+    private Integer delState;
+
+    /**
+     * 组合字段
+     */
+    private String combinationc;
+    /**
+     * 创建人
+     */
+    private Integer createBy;
+    /**
+     * 创建时间
+     */
+    private Date createTime;
+    /**
+     * 更新人
+     */
+    private Integer updateBy;
+    /**
+     * 更新时间
+     */
+    private Date updateTime;
+
+
+}

+ 86 - 0
energy-manage-common/src/main/java/com/energy/manage/common/po/windfield/WindFieldPO.java

@@ -0,0 +1,86 @@
+package com.energy.manage.common.po.windfield;
+
+import com.energy.manage.common.base.NewBaseDomain;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import javax.persistence.GeneratedValue;
+import javax.persistence.Table;
+import java.math.BigDecimal;
+
+/**
+ * 风场信息
+ */
+@Data
+@Table(name = "wind_field")
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class WindFieldPO extends NewBaseDomain {
+
+    /**
+     * 企业编号
+     */
+    private String companyCode;
+    /**
+     * 风场编号
+     */
+    private String fieldCode;
+    /**
+     * 风场名称
+     */
+    private String fieldName;
+    /**
+     * 空气密度 - 合同功率曲线
+     */
+    private String density;
+
+    /**
+     * 风机数量
+     */
+    private Integer engineNumber;
+
+    /**
+     * 总额定容量
+     */
+    private String ratedCapacityNumber;
+
+    /**
+     * 启用状态
+     */
+    private Integer state;
+    /**
+     * 省编号
+     */
+    private Integer provinceId;
+    /**
+     * 省名字
+     */
+    private String provinceName;
+    /**
+     * 市编号
+     */
+    private Integer cityId;
+    /**
+     * 市名字
+     */
+    private String cityName;
+    /**
+     * 经度
+     */
+    private String longitude;
+    /**
+     * 纬度
+     */
+    private String latitude;
+    /**
+     * 海拔高度
+     */
+    private String elevationHeight;
+    /**
+     * 删除状态
+     */
+    private Integer delState;
+
+
+}

+ 36 - 0
energy-manage-common/src/main/java/com/energy/manage/common/po/windrelation/WindRelationPO.java

@@ -0,0 +1,36 @@
+package com.energy.manage.common.po.windrelation;
+
+import com.energy.manage.common.base.NewBaseDomain;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import javax.persistence.Table;
+import java.util.Date;
+
+@Data
+@Table(name = "wind_relation")
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class WindRelationPO extends NewBaseDomain {
+
+    /**
+     * 对象编号
+     */
+    private String codeNumber;
+    /**
+     * 编号名称
+     */
+    private String codeName;
+    /**
+     * 父级编号
+     */
+    private String parentCode;
+    /**
+     * 类型
+     */
+    private String type;
+
+
+
+}

+ 116 - 0
energy-manage-common/src/main/java/com/energy/manage/common/reponse/ConstVar.java

@@ -0,0 +1,116 @@
+package com.energy.manage.common.reponse;
+
+import java.nio.charset.Charset;
+
+/**
+ * 一些状态变量而已
+ *
+ * @author LIKE
+ * @date 2017年1月17日 下午7:45:46
+ */
+public enum ConstVar {
+
+  FAIL(-1, "失败"),
+  TIMEOUT(109, "操作超时,请重新选择成绩单上传"),
+  SUCCESS(200, "成功"),
+  EXISTSUSER(101, "用户已存在"),
+  SMSFAIL(102, "验证码错误"),
+  SMSCODEFREQUENT(103, "验证码发送太频繁,请稍后重试"),
+  EQUIOMENGTINUSE(118, "设备已经使用"),
+  NOTNULLPARAM(105, "参数不能为空"),
+  PLEASELOGIN(108, "请登录账户"),
+  EXISTSUSERNOTUSE(111, "账号被停用"),
+  NOTEXISTSUSER(112, "用户不存在"),
+  TOKENINVALID(113, "请重新登陆用户"),
+
+  ERRORSIGN(114, "验签失败"),
+  INVALIDPARAM(115, "无效参数"),
+  ISDONE(122, "测验结束,已做题"),
+  SMSOVERDUE(116, "验证码已过期"),
+  // 重复提交
+  NOREQUEST_CODE(117, "不可重复提交"),
+  ERRORPWD(-2, "密码错误"),
+  ERRORVALIDATECODE(-3, "验证码错误"),
+  NOTLOGIN(142, "未登录"),
+  INVALIDATE_TOKEN(141, "Token失效,请重新登录"),
+  PHONE_REPETITION(150, "该手机号已绑定账号请重新输入"),
+  //权限资源模块响应码
+  PERMISSION_ALREADY_SORT(601, "当前父id下该序号已有"),
+  PERMISSION_ALREADY_ROLE(605, "当前资源已有角色关联"),
+  ROLE_ALREADY_USER(606, "当前角色已有关联用户"),
+  ROLE_ALREADY_PERMISSION(607, "当前角色已有关联资源"),
+  ROLE_DESCRIPTION_ALREADY(620, "该角色名已有"),
+
+  NOT_EXIST_COURSE_SERIES(10001, "系列课不存在"),
+  NOT_EXIST_COURSE(10002, "课程不存在"),
+
+  // 微信响应码
+  WEIXIN_EXCEPTION_SMSOVERDUE(110020, "微信授权失败"),
+  WEIXIN_EXCEPTION_CODE(110021, "微信授权code失败"),
+
+  CONSISTENCY_NOT_PWD(110022, "两次密码输入不一致,请重新确认"),
+
+  PUT_IN_NAME_DUBBO(210001, "名称或渠道码不能重复"),
+  PUT_IN_PLAN_PROPORTION(210002, "配置权重之和应为100"),
+  PUT_IN_LINK_DUBBO(210003, "落地页不能重复"),
+  PUT_IN_CHILD_NUMBER(210004, "拟投放子渠道码数量需大于零"),
+  PUT_IN_IMPORT(210005, "上传文件格式不正确"),
+  PUT_IN_MODULE(210006, "模板表头不正确"),
+  PUT_IN_DATA_DUBBO(210007, "数据重复"),
+  PUT_IN_FEELING_UPDATE(210008, "上架产品不可编辑"),
+  PUT_IN_FEELING_DEL(210009, "上架产品不可删除"),
+
+  CRM_TEACHER_NAME(310001, "班主任名称重复"),
+  PARAM_ID_NULL(310002, "id不能为空"),
+
+  PERIOD_TIME_ERROR(410001, "招生时间需早于上课时间,上课时间需早于课程有效期时间,且不能重叠。"),
+  PERIOD_TYPE_ERROR(410002, "直播期类型有误。"),
+  PERIOD_CLASSTIME_ERROR(410003, "直播期上课时间不能重叠。"),
+  PERIOD_COURCE_ERROR(410004, "直播结束回调,course_id无数据。"),
+  PERIOD_UPDATE_ID(410005, "暂无数据可更改,请检查id。"),
+  PERIOD_ADD_TIME(410006, "上课时间不能早于当前时间。"),
+  MESSAGE_TOO_LONG(410007, "发送消息内容不能为空且需要在200字以内"),
+  PERIOD_DETETE_BIND(410008, "有关联课程的营期不能删除"),
+  PERIOD_DETETE_APPLY(410008, "有学员报名的营期不能删除"),
+
+  TOOLS_PHONE(510001, "无学员信息"),
+  TOOLS_PHONE_REGEXP(510002, "手机号码格式不正确"),
+  TOOLS_HAS_WHITE(510003, "该用户已在白名单"),
+
+
+  //测评小程序
+  PAPER_USER_UNBELONG_TO(3000,"哎呀,该测评已经被其他用户绑定过了,您无法进行查看~"),
+  PAPER_ANSWER_SIZE_ERROR(3001,"试题未答完,请检查试题");
+
+
+
+  /*常量~*/
+  public static final String ENCODING = Charset.forName("UTF-8").name();
+
+  public static final String ZERO = ",0";
+
+  private ConstVar(int code, String msg) {
+    this.code = code;
+    this.msg = msg;
+  }
+
+  private String msg;
+  private int code;
+
+  public int getCode() {
+    return code;
+  }
+
+  public void setCode(int code) {
+    this.code = code;
+  }
+
+  public String getMsg() {
+    return msg;
+  }
+
+  public void setMsg(String msg) {
+    this.msg = msg;
+  }
+}
+

+ 406 - 0
energy-manage-common/src/main/java/com/energy/manage/common/reponse/RespMsg.java

@@ -0,0 +1,406 @@
+package com.energy.manage.common.reponse;
+
+import com.alibaba.fastjson.JSONObject;
+import org.springframework.util.StringUtils;
+
+public class RespMsg {
+
+  /**
+   * 操作成功
+   */
+  public static JSONObject SUCCESS() {
+    JSONObject RS = new JSONObject();
+    RS.put("code", ConstVar.SUCCESS.getCode());
+    RS.put("msg", ConstVar.SUCCESS.getMsg());
+    RS.put("status", true);
+    return RS;
+  }
+
+  /**
+   * 操作成功
+   */
+  public static JSONObject SUCCESS(int code, String msg, Object data) {
+    JSONObject RS = new JSONObject();
+    RS.put("code", code);
+    RS.put("msg", msg);
+    RS.put("data", data);
+    RS.put("status", true);
+    return RS;
+  }
+
+  public static JSONObject SUCCESS(Object data) {
+    JSONObject RS = new JSONObject();
+    RS.put("code", ConstVar.SUCCESS.getCode());
+    RS.put("msg", ConstVar.SUCCESS.getMsg());
+    RS.put("data", data);
+    RS.put("status", true);
+    return RS;
+  }
+
+  /**
+   * 操作失败
+   */
+  public static JSONObject FAIL() {
+    JSONObject RS = new JSONObject();
+    RS.put("code", ConstVar.FAIL.getCode());
+    RS.put("msg", ConstVar.FAIL.getMsg());
+    RS.put("status", false);
+    return RS;
+  }
+
+  /**
+   * 上传操作超时
+   */
+  public static JSONObject TIMEOUT() {
+    JSONObject RS = new JSONObject();
+    RS.put("code", ConstVar.TIMEOUT.getCode());
+    RS.put("msg", ConstVar.TIMEOUT.getMsg());
+    RS.put("status", false);
+    return RS;
+  }
+
+  public static JSONObject FAIL(Integer code, String msg) {
+    JSONObject RS = new JSONObject();
+    RS.put("code", code);
+    RS.put("msg", msg);
+    RS.put("status", false);
+    return RS;
+  }
+
+  public static JSONObject FAIL(String msg) {
+    JSONObject RS = new JSONObject();
+    RS.put("code", ConstVar.FAIL.getCode());
+    RS.put("msg", msg);
+    RS.put("status", false);
+    return RS;
+  }
+
+
+  /**
+   * 参数不能为空
+   *
+   * @return
+   */
+  public static JSONObject NOTNULLPARAM() {
+    JSONObject RS = new JSONObject();
+    RS.put("code", ConstVar.NOTNULLPARAM.getCode());
+    RS.put("msg", ConstVar.NOTNULLPARAM.getMsg());
+    RS.put("status", false);
+    return RS;
+  }
+
+  /**
+   * 用户已存在
+   *
+   * @return
+   */
+  public static JSONObject EXISTSUSER() {
+    JSONObject RS = new JSONObject();
+    RS.put("code", ConstVar.EXISTSUSER.getCode());
+    RS.put("msg", ConstVar.EXISTSUSER.getMsg());
+    RS.put("status", false);
+    return RS;
+  }
+
+  /**
+   * 账号被停用
+   *
+   * @return
+   */
+  public static JSONObject EXISTSUSERNOTUSE() {
+    JSONObject RS = new JSONObject();
+    RS.put("code", ConstVar.EXISTSUSERNOTUSE.getCode());
+    RS.put("msg", ConstVar.EXISTSUSERNOTUSE.getMsg());
+    RS.put("status", false);
+    return RS;
+  }
+
+  /**
+   * 用户不存在
+   *
+   * @return
+   */
+  public static JSONObject NOTEXISTSUSER() {
+    JSONObject RS = new JSONObject();
+    RS.put("code", ConstVar.NOTEXISTSUSER.getCode());
+    RS.put("msg", ConstVar.NOTEXISTSUSER.getMsg());
+    RS.put("status", false);
+    return RS;
+  }
+
+  /**
+   * 密码错误
+   *
+   * @return
+   */
+  public static JSONObject ERRORPWD() {
+    JSONObject RS = new JSONObject();
+    RS.put("code", ConstVar.ERRORPWD.getCode());
+    RS.put("msg", ConstVar.ERRORPWD.getMsg());
+    RS.put("status", false);
+    return RS;
+  }
+
+  /**
+   * 无效参数
+   *
+   * @return
+   */
+  public static JSONObject INVALIDPARAM(String param) {
+    JSONObject RS = new JSONObject();
+    RS.put("code", ConstVar.INVALIDPARAM.getCode());
+    RS.put("msg", ConstVar.INVALIDPARAM.getMsg() + "-" + param);
+    RS.put("status", false);
+    return RS;
+  }
+
+
+  /**
+   * 请登录用户
+   *
+   * @return
+   */
+  public static JSONObject PLEASELOGIN() {
+    JSONObject RS = new JSONObject();
+    RS.put("code", ConstVar.PLEASELOGIN.getCode());
+    RS.put("msg", ConstVar.PLEASELOGIN.getMsg());
+    RS.put("status", false);
+    return RS;
+  }
+
+  /**
+   * token失效
+   *
+   * @return
+   */
+  public static JSONObject TOKENVALID() {
+    JSONObject RS = new JSONObject();
+    RS.put("code", ConstVar.TOKENINVALID.getCode());
+    RS.put("msg", ConstVar.TOKENINVALID.getMsg());
+    RS.put("status", false);
+    return RS;
+  }
+
+  /**
+   * 验签失败
+   *
+   * @return
+   */
+  public static JSONObject ERRORSIGN() {
+    JSONObject RS = new JSONObject();
+    RS.put("code", ConstVar.ERRORSIGN.getCode());
+    RS.put("msg", ConstVar.ERRORSIGN.getMsg());
+    RS.put("status", false);
+    return RS;
+  }
+
+  public static JSONObject SMSOVERDUE() {
+    JSONObject RS = new JSONObject();
+    RS.put("code", ConstVar.SMSOVERDUE.getCode());
+    RS.put("msg", ConstVar.SMSOVERDUE.getMsg());
+    RS.put("status", false);
+    return RS;
+  }
+
+  /**
+   * 验证码错误
+   *
+   * @return
+   */
+  public static JSONObject SMSFAIL() {
+    JSONObject RS = new JSONObject();
+    RS.put("code", ConstVar.SMSFAIL.getCode());
+    RS.put("msg", ConstVar.SMSFAIL.getMsg());
+    RS.put("status", false);
+    RS.put("data", null);
+    return RS;
+  }
+
+  /**
+   * 验证码错误
+   *
+   * @return
+   */
+  public static JSONObject EQUIOMENGTINUSE() {
+    JSONObject RS = new JSONObject();
+    RS.put("code", ConstVar.EQUIOMENGTINUSE.getCode());
+    RS.put("msg", ConstVar.EQUIOMENGTINUSE.getMsg());
+    RS.put("status", false);
+    RS.put("data", null);
+    return RS;
+  }
+
+  /**
+   * 微信授权失败
+   *
+   * @return
+   */
+  public static JSONObject WEIXINEXCEPTIONSMSOVERDUE() {
+    JSONObject RS = new JSONObject();
+    RS.put("code", ConstVar.WEIXIN_EXCEPTION_SMSOVERDUE.getCode());
+    RS.put("msg", ConstVar.WEIXIN_EXCEPTION_SMSOVERDUE.getMsg());
+    RS.put("status", false);
+    RS.put("data", null);
+    return RS;
+  }
+
+  public static JSONObject FAILException() {
+    JSONObject RS = new JSONObject();
+    RS.put("code", ConstVar.FAIL.getCode());
+    RS.put("status", false);
+    RS.put("msg", "系统错误,请联系管理员");
+    return RS;
+  }
+
+  /**
+   * 验证码发送太频繁
+   *
+   * @return
+   */
+  public static JSONObject SMSCODEFREQUENT() {
+    JSONObject RS = new JSONObject();
+    RS.put("code", ConstVar.SMSCODEFREQUENT.getCode());
+    RS.put("msg", ConstVar.SMSCODEFREQUENT.getMsg());
+    RS.put("data", null);
+    return RS;
+  }
+
+  public static JSONObject ISDONE(String msg) {
+    JSONObject RS = new JSONObject();
+    RS.put("code", ConstVar.ISDONE.getCode());
+    RS.put("msg", msg);
+    RS.put("status", false);
+    return RS;
+  }
+
+  /**
+   * 微信验证码发送太频繁
+   *
+   * @return
+   */
+  public static JSONObject WXUSERCODE(String appid) {
+    JSONObject RS = new JSONObject();
+    RS.put("code", ConstVar.WEIXIN_EXCEPTION_CODE.getCode());
+    RS.put("msg", ConstVar.WEIXIN_EXCEPTION_CODE.getMsg());
+    RS.put("data", appid);
+    return RS;
+  }
+
+  /**
+   * 两次密码输入不一致,请重新确认
+   *
+   * @return
+   */
+  public static JSONObject CONSISTENCYNOTPWD() {
+    JSONObject RS = new JSONObject();
+    RS.put("code", ConstVar.CONSISTENCY_NOT_PWD.getCode());
+    RS.put("msg", ConstVar.CONSISTENCY_NOT_PWD.getMsg());
+    RS.put("status", false);
+    return RS;
+  }
+
+  /**
+   * 用户未登录
+   *
+   * @param msg
+   * @return
+   */
+  public static JSONObject NOTLOGIN(String msg) {
+    if (StringUtils.isEmpty(msg)) {
+      return buildRespMsg(ConstVar.NOTLOGIN.getCode(), ConstVar.NOTLOGIN.getMsg(), null);
+    }
+    return buildRespMsg(ConstVar.NOTLOGIN.getCode(), msg, null);
+  }
+
+  /**
+   * 用户已掉线
+   *
+   * @param msg
+   * @return
+   */
+  public static JSONObject INVALIDATETOKEN(String msg) {
+    if (StringUtils.isEmpty(msg)) {
+      return buildRespMsg(ConstVar.INVALIDATE_TOKEN.getCode(), ConstVar.INVALIDATE_TOKEN.getMsg(), null);
+    }
+    return buildRespMsg(ConstVar.INVALIDATE_TOKEN.getCode(), msg, null);
+  }
+
+
+  /**
+   * 重复提交
+   *
+   * @return
+   */
+  public static JSONObject NOREQUEST() {
+    JSONObject RS = new JSONObject();
+    RS.put("code", ConstVar.NOREQUEST_CODE.getCode());
+    RS.put("msg", ConstVar.NOREQUEST_CODE.getMsg());
+    RS.put("status", false);
+    return RS;
+  }
+
+  /**
+   * 系列课不存在
+   *
+   * @return
+   */
+  public static JSONObject NOTEXISTCOURSESERIES() {
+    JSONObject RS = new JSONObject();
+    RS.put("code", ConstVar.NOT_EXIST_COURSE_SERIES.getCode());
+    RS.put("msg", ConstVar.NOT_EXIST_COURSE_SERIES.getMsg());
+    RS.put("status", false);
+
+    return RS;
+  }
+
+  /**
+   * 课程不存在
+   *
+   * @return
+   */
+  public static JSONObject NOTEXISTCOURSE() {
+    JSONObject RS = new JSONObject();
+    RS.put("code", ConstVar.NOT_EXIST_COURSE.getCode());
+    RS.put("msg", ConstVar.NOT_EXIST_COURSE.getMsg());
+    RS.put("status", false);
+    return RS;
+  }
+
+  /**
+   * id为空
+   *
+   * @return
+   */
+  public static JSONObject PARAM_ID_NULL() {
+    JSONObject RS = new JSONObject();
+    RS.put("code", ConstVar.PARAM_ID_NULL.getCode());
+    RS.put("msg", ConstVar.PARAM_ID_NULL.getMsg());
+    RS.put("status", false);
+    return RS;
+  }
+
+
+  /**
+   * 内部方法,构建返回值实体对象
+   *
+   * @param code
+   * @param msg
+   * @param data
+   * @return
+   */
+  private static JSONObject buildRespMsg(Integer code, String msg, Object data) {
+    JSONObject RS = new JSONObject();
+    if (null != code) {
+      RS.put("code", code);
+    }
+    if (!StringUtils.isEmpty(msg)) {
+      RS.put("msg", msg);
+    }
+    if (null != data) {
+      RS.put("data", data);
+    }
+    return RS;
+  }
+
+
+}

+ 173 - 0
energy-manage-common/src/main/java/com/energy/manage/common/reponse/ResultResp.java

@@ -0,0 +1,173 @@
+package com.energy.manage.common.reponse;
+
+import com.alibaba.fastjson.JSONObject;
+import lombok.Getter;
+import lombok.Setter;
+import org.springframework.util.StringUtils;
+
+import java.util.Optional;
+
+/**
+ * 前端统一结构返回数据
+ */
+@Getter
+@Setter
+public class ResultResp<T> {
+  private Integer code;
+  private String msg;
+  private Boolean status;
+  private T data;
+
+  /**
+   * ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+   */
+  /**
+   * 构造器
+   *
+   * @param <T>
+   * @return
+   */
+  private static <T> ResultResp<T> buildResponse(Integer code, String msg, T data, boolean status) {
+    ResultResp<T> resp = new ResultResp<>();
+    if (Optional.ofNullable(code).isPresent()) {
+      resp.setCode(code);
+    }
+    if (!StringUtils.isEmpty(msg)) {
+      resp.setMsg(msg);
+    }
+    if (Optional.ofNullable(data).isPresent()) {
+      resp.setData(data);
+    }
+    resp.setStatus(status);
+    return resp;
+  }
+
+
+  /**
+   * 操作成功
+   */
+  public static ResultResp SUCCESS() {
+    return ResultResp.buildResponse(ConstVar.SUCCESS.getCode(),
+            ConstVar.SUCCESS.getMsg(), null, true);
+  }
+
+  /**
+   * 操作成功
+   */
+  public static <T> ResultResp<T> SUCCESS(T data) {
+    return ResultResp.buildResponse(ConstVar.SUCCESS.getCode(),
+            ConstVar.SUCCESS.getMsg(), data, true);
+  }
+
+  /**
+   * 操作成功
+   */
+  public static <T> ResultResp<T> SUCCESS(Integer code, String msg) {
+    return ResultResp.buildResponse(code, msg, null, true);
+  }
+
+  /**
+   * 操作成功
+   */
+  public static <T> ResultResp<T> SUCCESS(Integer code, String msg, T data) {
+    return ResultResp.buildResponse(code, msg, data, true);
+  }
+
+  /**
+   * 操作失败
+   */
+  public static ResultResp FAIL() {
+    return ResultResp.buildResponse(ConstVar.FAIL.getCode(), ConstVar.FAIL.getMsg(), null, false);
+  }
+
+  public static ResultResp FAIL(String msg) {
+    return ResultResp.buildResponse(ConstVar.FAIL.getCode(), msg, null, false);
+  }
+
+  public static ResultResp FAIL(Integer code, String msg) {
+    return ResultResp.buildResponse(code, msg, null, false);
+  }
+
+
+  /**
+   * 密码错误
+   *
+   * @return
+   */
+  public static ResultResp ERRORPWD() {
+    return ResultResp.buildResponse(ConstVar.ERRORPWD.getCode(), ConstVar.ERRORPWD.getMsg(), null, false);
+  }
+
+  /**
+   * 参数不能为空
+   *
+   * @return
+   */
+  public static ResultResp NOTNULLPARAM() {
+    return ResultResp.buildResponse(ConstVar.NOTNULLPARAM.getCode(), ConstVar.NOTNULLPARAM.getMsg(), null, false);
+  }
+
+  /**
+   * 用户不存在
+   *
+   * @return
+   */
+  public static ResultResp NOTEXISTSUSER() {
+    return ResultResp.buildResponse(ConstVar.NOTEXISTSUSER.getCode(),ConstVar.NOTEXISTSUSER.getMsg(), null, false);
+  }
+
+
+  /**
+   * 用户已经存在
+   *
+   * @return
+   */
+  public static ResultResp EXISTSUSER() {
+    return ResultResp.buildResponse(ConstVar.EXISTSUSER.getCode(),ConstVar.EXISTSUSER.getMsg(), null, false);
+  }
+
+  /**
+   * 无效参数
+   *
+   * @return
+   */
+  public static ResultResp INVALIDPARAM(String param) {
+    return ResultResp.buildResponse(ConstVar.INVALIDPARAM.getCode(), ConstVar.INVALIDPARAM.getMsg(), null, false);
+  }
+
+  /**
+   * token失效
+   *
+   * @return
+   */
+  public static ResultResp TOKENVALID() {
+    return ResultResp.buildResponse(ConstVar.TOKENINVALID.getCode(), ConstVar.TOKENINVALID.getMsg(), null, false);
+  }
+
+  /**
+   * 验签失败
+   *
+   * @return
+   */
+  public static ResultResp ERRORSIGN() {
+    return ResultResp.buildResponse(ConstVar.ERRORSIGN.getCode(), ConstVar.ERRORSIGN.getMsg(), null, false);
+  }
+
+  /**
+   * 系统异常
+   *
+   * @return
+   */
+  public static ResultResp USERNOTLOGIN() {
+    return ResultResp.buildResponse(ConstVar.PLEASELOGIN.getCode(), ConstVar.PLEASELOGIN.getMsg(), null, false);
+  }
+
+  /**
+   * 系统异常
+   *
+   * @return
+   */
+  public static ResultResp FAILException() {
+    return ResultResp.buildResponse(ConstVar.FAIL.getCode(), "系统错误,请联系管理员", null, false);
+  }
+}

+ 795 - 0
energy-manage-common/src/main/java/com/energy/manage/common/util/BCryptTools.java

@@ -0,0 +1,795 @@
+package com.energy.manage.common.util;
+
+// Copyright (c) 2006 Damien Miller <djm@mindrot.org>
+//
+// Permission to use, copy, modify, and distribute this software for any
+// purpose with or without fee is hereby granted, provided that the above
+// copyright notice and this permission notice appear in all copies.
+//
+// THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+import org.springframework.util.StringUtils;
+
+import java.io.UnsupportedEncodingException;
+import java.net.URLEncoder;
+import java.security.SecureRandom;
+
+/**
+ * BCryptTools implements OpenBSD-style Blowfish password hashing using
+ * the scheme described in "A Future-Adaptable Password Scheme" by
+ * Niels Provos and David Mazieres.
+ * <p>
+ * This password hashing system tries to thwart off-line password
+ * cracking using a computationally-intensive hashing algorithm,
+ * based on Bruce Schneier's Blowfish cipher. The work factor of
+ * the algorithm is parameterised, so it can be increased as
+ * computers get faster.
+ * <p>
+ * Usage is really simple. To hash a password for the first time,
+ * call the hashpw method with a random salt, like this:
+ * <p>
+ * <code>
+ * String pw_hash = BCryptTools.hashpw(plain_password, BCryptTools.gensalt()); <br />
+ * </code>
+ * <p>
+ * To check whether a plaintext password matches one that has been
+ * hashed previously, use the checkpw method:
+ * <p>
+ * <code>
+ * if (BCryptTools.checkpw(candidate_password, stored_hash))<br />
+ * &nbsp;&nbsp;&nbsp;&nbsp;System.out.println("It matches");<br />
+ * else<br />
+ * &nbsp;&nbsp;&nbsp;&nbsp;System.out.println("It does not match");<br />
+ * </code>
+ * <p>
+ * The gensalt() method takes an optional parameter (log_rounds)
+ * that determines the computational complexity of the hashing:
+ * <p>
+ * <code>
+ * String strong_salt = BCryptTools.gensalt(10)<br />
+ * String stronger_salt = BCryptTools.gensalt(12)<br />
+ * </code>
+ * <p>
+ * The amount of work increases exponentially (2**log_rounds), so
+ * each increment is twice as much work. The default log_rounds is
+ * 10, and the valid range is 4 to 31.
+ *
+ * @author Damien Miller
+ * @version 0.2
+ */
+public class BCryptTools {
+  // BCryptTools parameters
+  private static final int GENSALT_DEFAULT_LOG2_ROUNDS = 10;
+  private static final int BCryptTools_SALT_LEN = 16;
+
+  // Blowfish parameters
+  private static final int BLOWFISH_NUM_ROUNDS = 16;
+
+  // Initial contents of key schedule
+  private static final int P_orig[] = {
+          0x243f6a88, 0x85a308d3, 0x13198a2e, 0x03707344,
+          0xa4093822, 0x299f31d0, 0x082efa98, 0xec4e6c89,
+          0x452821e6, 0x38d01377, 0xbe5466cf, 0x34e90c6c,
+          0xc0ac29b7, 0xc97c50dd, 0x3f84d5b5, 0xb5470917,
+          0x9216d5d9, 0x8979fb1b
+  };
+  private static final int S_orig[] = {
+          0xd1310ba6, 0x98dfb5ac, 0x2ffd72db, 0xd01adfb7,
+          0xb8e1afed, 0x6a267e96, 0xba7c9045, 0xf12c7f99,
+          0x24a19947, 0xb3916cf7, 0x0801f2e2, 0x858efc16,
+          0x636920d8, 0x71574e69, 0xa458fea3, 0xf4933d7e,
+          0x0d95748f, 0x728eb658, 0x718bcd58, 0x82154aee,
+          0x7b54a41d, 0xc25a59b5, 0x9c30d539, 0x2af26013,
+          0xc5d1b023, 0x286085f0, 0xca417918, 0xb8db38ef,
+          0x8e79dcb0, 0x603a180e, 0x6c9e0e8b, 0xb01e8a3e,
+          0xd71577c1, 0xbd314b27, 0x78af2fda, 0x55605c60,
+          0xe65525f3, 0xaa55ab94, 0x57489862, 0x63e81440,
+          0x55ca396a, 0x2aab10b6, 0xb4cc5c34, 0x1141e8ce,
+          0xa15486af, 0x7c72e993, 0xb3ee1411, 0x636fbc2a,
+          0x2ba9c55d, 0x741831f6, 0xce5c3e16, 0x9b87931e,
+          0xafd6ba33, 0x6c24cf5c, 0x7a325381, 0x28958677,
+          0x3b8f4898, 0x6b4bb9af, 0xc4bfe81b, 0x66282193,
+          0x61d809cc, 0xfb21a991, 0x487cac60, 0x5dec8032,
+          0xef845d5d, 0xe98575b1, 0xdc262302, 0xeb651b88,
+          0x23893e81, 0xd396acc5, 0x0f6d6ff3, 0x83f44239,
+          0x2e0b4482, 0xa4842004, 0x69c8f04a, 0x9e1f9b5e,
+          0x21c66842, 0xf6e96c9a, 0x670c9c61, 0xabd388f0,
+          0x6a51a0d2, 0xd8542f68, 0x960fa728, 0xab5133a3,
+          0x6eef0b6c, 0x137a3be4, 0xba3bf050, 0x7efb2a98,
+          0xa1f1651d, 0x39af0176, 0x66ca593e, 0x82430e88,
+          0x8cee8619, 0x456f9fb4, 0x7d84a5c3, 0x3b8b5ebe,
+          0xe06f75d8, 0x85c12073, 0x401a449f, 0x56c16aa6,
+          0x4ed3aa62, 0x363f7706, 0x1bfedf72, 0x429b023d,
+          0x37d0d724, 0xd00a1248, 0xdb0fead3, 0x49f1c09b,
+          0x075372c9, 0x80991b7b, 0x25d479d8, 0xf6e8def7,
+          0xe3fe501a, 0xb6794c3b, 0x976ce0bd, 0x04c006ba,
+          0xc1a94fb6, 0x409f60c4, 0x5e5c9ec2, 0x196a2463,
+          0x68fb6faf, 0x3e6c53b5, 0x1339b2eb, 0x3b52ec6f,
+          0x6dfc511f, 0x9b30952c, 0xcc814544, 0xaf5ebd09,
+          0xbee3d004, 0xde334afd, 0x660f2807, 0x192e4bb3,
+          0xc0cba857, 0x45c8740f, 0xd20b5f39, 0xb9d3fbdb,
+          0x5579c0bd, 0x1a60320a, 0xd6a100c6, 0x402c7279,
+          0x679f25fe, 0xfb1fa3cc, 0x8ea5e9f8, 0xdb3222f8,
+          0x3c7516df, 0xfd616b15, 0x2f501ec8, 0xad0552ab,
+          0x323db5fa, 0xfd238760, 0x53317b48, 0x3e00df82,
+          0x9e5c57bb, 0xca6f8ca0, 0x1a87562e, 0xdf1769db,
+          0xd542a8f6, 0x287effc3, 0xac6732c6, 0x8c4f5573,
+          0x695b27b0, 0xbbca58c8, 0xe1ffa35d, 0xb8f011a0,
+          0x10fa3d98, 0xfd2183b8, 0x4afcb56c, 0x2dd1d35b,
+          0x9a53e479, 0xb6f84565, 0xd28e49bc, 0x4bfb9790,
+          0xe1ddf2da, 0xa4cb7e33, 0x62fb1341, 0xcee4c6e8,
+          0xef20cada, 0x36774c01, 0xd07e9efe, 0x2bf11fb4,
+          0x95dbda4d, 0xae909198, 0xeaad8e71, 0x6b93d5a0,
+          0xd08ed1d0, 0xafc725e0, 0x8e3c5b2f, 0x8e7594b7,
+          0x8ff6e2fb, 0xf2122b64, 0x8888b812, 0x900df01c,
+          0x4fad5ea0, 0x688fc31c, 0xd1cff191, 0xb3a8c1ad,
+          0x2f2f2218, 0xbe0e1777, 0xea752dfe, 0x8b021fa1,
+          0xe5a0cc0f, 0xb56f74e8, 0x18acf3d6, 0xce89e299,
+          0xb4a84fe0, 0xfd13e0b7, 0x7cc43b81, 0xd2ada8d9,
+          0x165fa266, 0x80957705, 0x93cc7314, 0x211a1477,
+          0xe6ad2065, 0x77b5fa86, 0xc75442f5, 0xfb9d35cf,
+          0xebcdaf0c, 0x7b3e89a0, 0xd6411bd3, 0xae1e7e49,
+          0x00250e2d, 0x2071b35e, 0x226800bb, 0x57b8e0af,
+          0x2464369b, 0xf009b91e, 0x5563911d, 0x59dfa6aa,
+          0x78c14389, 0xd95a537f, 0x207d5ba2, 0x02e5b9c5,
+          0x83260376, 0x6295cfa9, 0x11c81968, 0x4e734a41,
+          0xb3472dca, 0x7b14a94a, 0x1b510052, 0x9a532915,
+          0xd60f573f, 0xbc9bc6e4, 0x2b60a476, 0x81e67400,
+          0x08ba6fb5, 0x571be91f, 0xf296ec6b, 0x2a0dd915,
+          0xb6636521, 0xe7b9f9b6, 0xff34052e, 0xc5855664,
+          0x53b02d5d, 0xa99f8fa1, 0x08ba4799, 0x6e85076a,
+          0x4b7a70e9, 0xb5b32944, 0xdb75092e, 0xc4192623,
+          0xad6ea6b0, 0x49a7df7d, 0x9cee60b8, 0x8fedb266,
+          0xecaa8c71, 0x699a17ff, 0x5664526c, 0xc2b19ee1,
+          0x193602a5, 0x75094c29, 0xa0591340, 0xe4183a3e,
+          0x3f54989a, 0x5b429d65, 0x6b8fe4d6, 0x99f73fd6,
+          0xa1d29c07, 0xefe830f5, 0x4d2d38e6, 0xf0255dc1,
+          0x4cdd2086, 0x8470eb26, 0x6382e9c6, 0x021ecc5e,
+          0x09686b3f, 0x3ebaefc9, 0x3c971814, 0x6b6a70a1,
+          0x687f3584, 0x52a0e286, 0xb79c5305, 0xaa500737,
+          0x3e07841c, 0x7fdeae5c, 0x8e7d44ec, 0x5716f2b8,
+          0xb03ada37, 0xf0500c0d, 0xf01c1f04, 0x0200b3ff,
+          0xae0cf51a, 0x3cb574b2, 0x25837a58, 0xdc0921bd,
+          0xd19113f9, 0x7ca92ff6, 0x94324773, 0x22f54701,
+          0x3ae5e581, 0x37c2dadc, 0xc8b57634, 0x9af3dda7,
+          0xa9446146, 0x0fd0030e, 0xecc8c73e, 0xa4751e41,
+          0xe238cd99, 0x3bea0e2f, 0x3280bba1, 0x183eb331,
+          0x4e548b38, 0x4f6db908, 0x6f420d03, 0xf60a04bf,
+          0x2cb81290, 0x24977c79, 0x5679b072, 0xbcaf89af,
+          0xde9a771f, 0xd9930810, 0xb38bae12, 0xdccf3f2e,
+          0x5512721f, 0x2e6b7124, 0x501adde6, 0x9f84cd87,
+          0x7a584718, 0x7408da17, 0xbc9f9abc, 0xe94b7d8c,
+          0xec7aec3a, 0xdb851dfa, 0x63094366, 0xc464c3d2,
+          0xef1c1847, 0x3215d908, 0xdd433b37, 0x24c2ba16,
+          0x12a14d43, 0x2a65c451, 0x50940002, 0x133ae4dd,
+          0x71dff89e, 0x10314e55, 0x81ac77d6, 0x5f11199b,
+          0x043556f1, 0xd7a3c76b, 0x3c11183b, 0x5924a509,
+          0xf28fe6ed, 0x97f1fbfa, 0x9ebabf2c, 0x1e153c6e,
+          0x86e34570, 0xeae96fb1, 0x860e5e0a, 0x5a3e2ab3,
+          0x771fe71c, 0x4e3d06fa, 0x2965dcb9, 0x99e71d0f,
+          0x803e89d6, 0x5266c825, 0x2e4cc978, 0x9c10b36a,
+          0xc6150eba, 0x94e2ea78, 0xa5fc3c53, 0x1e0a2df4,
+          0xf2f74ea7, 0x361d2b3d, 0x1939260f, 0x19c27960,
+          0x5223a708, 0xf71312b6, 0xebadfe6e, 0xeac31f66,
+          0xe3bc4595, 0xa67bc883, 0xb17f37d1, 0x018cff28,
+          0xc332ddef, 0xbe6c5aa5, 0x65582185, 0x68ab9802,
+          0xeecea50f, 0xdb2f953b, 0x2aef7dad, 0x5b6e2f84,
+          0x1521b628, 0x29076170, 0xecdd4775, 0x619f1510,
+          0x13cca830, 0xeb61bd96, 0x0334fe1e, 0xaa0363cf,
+          0xb5735c90, 0x4c70a239, 0xd59e9e0b, 0xcbaade14,
+          0xeecc86bc, 0x60622ca7, 0x9cab5cab, 0xb2f3846e,
+          0x648b1eaf, 0x19bdf0ca, 0xa02369b9, 0x655abb50,
+          0x40685a32, 0x3c2ab4b3, 0x319ee9d5, 0xc021b8f7,
+          0x9b540b19, 0x875fa099, 0x95f7997e, 0x623d7da8,
+          0xf837889a, 0x97e32d77, 0x11ed935f, 0x16681281,
+          0x0e358829, 0xc7e61fd6, 0x96dedfa1, 0x7858ba99,
+          0x57f584a5, 0x1b227263, 0x9b83c3ff, 0x1ac24696,
+          0xcdb30aeb, 0x532e3054, 0x8fd948e4, 0x6dbc3128,
+          0x58ebf2ef, 0x34c6ffea, 0xfe28ed61, 0xee7c3c73,
+          0x5d4a14d9, 0xe864b7e3, 0x42105d14, 0x203e13e0,
+          0x45eee2b6, 0xa3aaabea, 0xdb6c4f15, 0xfacb4fd0,
+          0xc742f442, 0xef6abbb5, 0x654f3b1d, 0x41cd2105,
+          0xd81e799e, 0x86854dc7, 0xe44b476a, 0x3d816250,
+          0xcf62a1f2, 0x5b8d2646, 0xfc8883a0, 0xc1c7b6a3,
+          0x7f1524c3, 0x69cb7492, 0x47848a0b, 0x5692b285,
+          0x095bbf00, 0xad19489d, 0x1462b174, 0x23820e00,
+          0x58428d2a, 0x0c55f5ea, 0x1dadf43e, 0x233f7061,
+          0x3372f092, 0x8d937e41, 0xd65fecf1, 0x6c223bdb,
+          0x7cde3759, 0xcbee7460, 0x4085f2a7, 0xce77326e,
+          0xa6078084, 0x19f8509e, 0xe8efd855, 0x61d99735,
+          0xa969a7aa, 0xc50c06c2, 0x5a04abfc, 0x800bcadc,
+          0x9e447a2e, 0xc3453484, 0xfdd56705, 0x0e1e9ec9,
+          0xdb73dbd3, 0x105588cd, 0x675fda79, 0xe3674340,
+          0xc5c43465, 0x713e38d8, 0x3d28f89e, 0xf16dff20,
+          0x153e21e7, 0x8fb03d4a, 0xe6e39f2b, 0xdb83adf7,
+          0xe93d5a68, 0x948140f7, 0xf64c261c, 0x94692934,
+          0x411520f7, 0x7602d4f7, 0xbcf46b2e, 0xd4a20068,
+          0xd4082471, 0x3320f46a, 0x43b7d4b7, 0x500061af,
+          0x1e39f62e, 0x97244546, 0x14214f74, 0xbf8b8840,
+          0x4d95fc1d, 0x96b591af, 0x70f4ddd3, 0x66a02f45,
+          0xbfbc09ec, 0x03bd9785, 0x7fac6dd0, 0x31cb8504,
+          0x96eb27b3, 0x55fd3941, 0xda2547e6, 0xabca0a9a,
+          0x28507825, 0x530429f4, 0x0a2c86da, 0xe9b66dfb,
+          0x68dc1462, 0xd7486900, 0x680ec0a4, 0x27a18dee,
+          0x4f3ffea2, 0xe887ad8c, 0xb58ce006, 0x7af4d6b6,
+          0xaace1e7c, 0xd3375fec, 0xce78a399, 0x406b2a42,
+          0x20fe9e35, 0xd9f385b9, 0xee39d7ab, 0x3b124e8b,
+          0x1dc9faf7, 0x4b6d1856, 0x26a36631, 0xeae397b2,
+          0x3a6efa74, 0xdd5b4332, 0x6841e7f7, 0xca7820fb,
+          0xfb0af54e, 0xd8feb397, 0x454056ac, 0xba489527,
+          0x55533a3a, 0x20838d87, 0xfe6ba9b7, 0xd096954b,
+          0x55a867bc, 0xa1159a58, 0xcca92963, 0x99e1db33,
+          0xa62a4a56, 0x3f3125f9, 0x5ef47e1c, 0x9029317c,
+          0xfdf8e802, 0x04272f70, 0x80bb155c, 0x05282ce3,
+          0x95c11548, 0xe4c66d22, 0x48c1133f, 0xc70f86dc,
+          0x07f9c9ee, 0x41041f0f, 0x404779a4, 0x5d886e17,
+          0x325f51eb, 0xd59bc0d1, 0xf2bcc18f, 0x41113564,
+          0x257b7834, 0x602a9c60, 0xdff8e8a3, 0x1f636c1b,
+          0x0e12b4c2, 0x02e1329e, 0xaf664fd1, 0xcad18115,
+          0x6b2395e0, 0x333e92e1, 0x3b240b62, 0xeebeb922,
+          0x85b2a20e, 0xe6ba0d99, 0xde720c8c, 0x2da2f728,
+          0xd0127845, 0x95b794fd, 0x647d0862, 0xe7ccf5f0,
+          0x5449a36f, 0x877d48fa, 0xc39dfd27, 0xf33e8d1e,
+          0x0a476341, 0x992eff74, 0x3a6f6eab, 0xf4f8fd37,
+          0xa812dc60, 0xa1ebddf8, 0x991be14c, 0xdb6e6b0d,
+          0xc67b5510, 0x6d672c37, 0x2765d43b, 0xdcd0e804,
+          0xf1290dc7, 0xcc00ffa3, 0xb5390f92, 0x690fed0b,
+          0x667b9ffb, 0xcedb7d9c, 0xa091cf0b, 0xd9155ea3,
+          0xbb132f88, 0x515bad24, 0x7b9479bf, 0x763bd6eb,
+          0x37392eb3, 0xcc115979, 0x8026e297, 0xf42e312d,
+          0x6842ada7, 0xc66a2b3b, 0x12754ccc, 0x782ef11c,
+          0x6a124237, 0xb79251e7, 0x06a1bbe6, 0x4bfb6350,
+          0x1a6b1018, 0x11caedfa, 0x3d25bdd8, 0xe2e1c3c9,
+          0x44421659, 0x0a121386, 0xd90cec6e, 0xd5abea2a,
+          0x64af674e, 0xda86a85f, 0xbebfe988, 0x64e4c3fe,
+          0x9dbc8057, 0xf0f7c086, 0x60787bf8, 0x6003604d,
+          0xd1fd8346, 0xf6381fb0, 0x7745ae04, 0xd736fccc,
+          0x83426b33, 0xf01eab71, 0xb0804187, 0x3c005e5f,
+          0x77a057be, 0xbde8ae24, 0x55464299, 0xbf582e61,
+          0x4e58f48f, 0xf2ddfda2, 0xf474ef38, 0x8789bdc2,
+          0x5366f9c3, 0xc8b38e74, 0xb475f255, 0x46fcd9b9,
+          0x7aeb2661, 0x8b1ddf84, 0x846a0e79, 0x915f95e2,
+          0x466e598e, 0x20b45770, 0x8cd55591, 0xc902de4c,
+          0xb90bace1, 0xbb8205d0, 0x11a86248, 0x7574a99e,
+          0xb77f19b6, 0xe0a9dc09, 0x662d09a1, 0xc4324633,
+          0xe85a1f02, 0x09f0be8c, 0x4a99a025, 0x1d6efe10,
+          0x1ab93d1d, 0x0ba5a4df, 0xa186f20f, 0x2868f169,
+          0xdcb7da83, 0x573906fe, 0xa1e2ce9b, 0x4fcd7f52,
+          0x50115e01, 0xa70683fa, 0xa002b5c4, 0x0de6d027,
+          0x9af88c27, 0x773f8641, 0xc3604c06, 0x61a806b5,
+          0xf0177a28, 0xc0f586e0, 0x006058aa, 0x30dc7d62,
+          0x11e69ed7, 0x2338ea63, 0x53c2dd94, 0xc2c21634,
+          0xbbcbee56, 0x90bcb6de, 0xebfc7da1, 0xce591d76,
+          0x6f05e409, 0x4b7c0188, 0x39720a3d, 0x7c927c24,
+          0x86e3725f, 0x724d9db9, 0x1ac15bb4, 0xd39eb8fc,
+          0xed545578, 0x08fca5b5, 0xd83d7cd3, 0x4dad0fc4,
+          0x1e50ef5e, 0xb161e6f8, 0xa28514d9, 0x6c51133c,
+          0x6fd5c7e7, 0x56e14ec4, 0x362abfce, 0xddc6c837,
+          0xd79a3234, 0x92638212, 0x670efa8e, 0x406000e0,
+          0x3a39ce37, 0xd3faf5cf, 0xabc27737, 0x5ac52d1b,
+          0x5cb0679e, 0x4fa33742, 0xd3822740, 0x99bc9bbe,
+          0xd5118e9d, 0xbf0f7315, 0xd62d1c7e, 0xc700c47b,
+          0xb78c1b6b, 0x21a19045, 0xb26eb1be, 0x6a366eb4,
+          0x5748ab2f, 0xbc946e79, 0xc6a376d2, 0x6549c2c8,
+          0x530ff8ee, 0x468dde7d, 0xd5730a1d, 0x4cd04dc6,
+          0x2939bbdb, 0xa9ba4650, 0xac9526e8, 0xbe5ee304,
+          0xa1fad5f0, 0x6a2d519a, 0x63ef8ce2, 0x9a86ee22,
+          0xc089c2b8, 0x43242ef6, 0xa51e03aa, 0x9cf2d0a4,
+          0x83c061ba, 0x9be96a4d, 0x8fe51550, 0xba645bd6,
+          0x2826a2f9, 0xa73a3ae1, 0x4ba99586, 0xef5562e9,
+          0xc72fefd3, 0xf752f7da, 0x3f046f69, 0x77fa0a59,
+          0x80e4a915, 0x87b08601, 0x9b09e6ad, 0x3b3ee593,
+          0xe990fd5a, 0x9e34d797, 0x2cf0b7d9, 0x022b8b51,
+          0x96d5ac3a, 0x017da67d, 0xd1cf3ed6, 0x7c7d2d28,
+          0x1f9f25cf, 0xadf2b89b, 0x5ad6b472, 0x5a88f54c,
+          0xe029ac71, 0xe019a5e6, 0x47b0acfd, 0xed93fa9b,
+          0xe8d3c48d, 0x283b57cc, 0xf8d56629, 0x79132e28,
+          0x785f0191, 0xed756055, 0xf7960e44, 0xe3d35e8c,
+          0x15056dd4, 0x88f46dba, 0x03a16125, 0x0564f0bd,
+          0xc3eb9e15, 0x3c9057a2, 0x97271aec, 0xa93a072a,
+          0x1b3f6d9b, 0x1e6321f5, 0xf59c66fb, 0x26dcf319,
+          0x7533d928, 0xb155fdf5, 0x03563482, 0x8aba3cbb,
+          0x28517711, 0xc20ad9f8, 0xabcc5167, 0xccad925f,
+          0x4de81751, 0x3830dc8e, 0x379d5862, 0x9320f991,
+          0xea7a90c2, 0xfb3e7bce, 0x5121ce64, 0x774fbe32,
+          0xa8b6e37e, 0xc3293d46, 0x48de5369, 0x6413e680,
+          0xa2ae0810, 0xdd6db224, 0x69852dfd, 0x09072166,
+          0xb39a460a, 0x6445c0dd, 0x586cdecf, 0x1c20c8ae,
+          0x5bbef7dd, 0x1b588d40, 0xccd2017f, 0x6bb4e3bb,
+          0xdda26a7e, 0x3a59ff45, 0x3e350a44, 0xbcb4cdd5,
+          0x72eacea8, 0xfa6484bb, 0x8d6612ae, 0xbf3c6f47,
+          0xd29be463, 0x542f5d9e, 0xaec2771b, 0xf64e6370,
+          0x740e0d8d, 0xe75b1357, 0xf8721671, 0xaf537d5d,
+          0x4040cb08, 0x4eb4e2cc, 0x34d2466a, 0x0115af84,
+          0xe1b00428, 0x95983a1d, 0x06b89fb4, 0xce6ea048,
+          0x6f3f3b82, 0x3520ab82, 0x011a1d4b, 0x277227f8,
+          0x611560b1, 0xe7933fdc, 0xbb3a792b, 0x344525bd,
+          0xa08839e1, 0x51ce794b, 0x2f32c9b7, 0xa01fbac9,
+          0xe01cc87e, 0xbcc7d1f6, 0xcf0111c3, 0xa1e8aac7,
+          0x1a908749, 0xd44fbd9a, 0xd0dadecb, 0xd50ada38,
+          0x0339c32a, 0xc6913667, 0x8df9317c, 0xe0b12b4f,
+          0xf79e59b7, 0x43f5bb3a, 0xf2d519ff, 0x27d9459c,
+          0xbf97222c, 0x15e6fc2a, 0x0f91fc71, 0x9b941525,
+          0xfae59361, 0xceb69ceb, 0xc2a86459, 0x12baa8d1,
+          0xb6c1075e, 0xe3056a0c, 0x10d25065, 0xcb03a442,
+          0xe0ec6e0e, 0x1698db3b, 0x4c98a0be, 0x3278e964,
+          0x9f1f9532, 0xe0d392df, 0xd3a0342b, 0x8971f21e,
+          0x1b0a7441, 0x4ba3348c, 0xc5be7120, 0xc37632d8,
+          0xdf359f8d, 0x9b992f2e, 0xe60b6f47, 0x0fe3f11d,
+          0xe54cda54, 0x1edad891, 0xce6279cf, 0xcd3e7e6f,
+          0x1618b166, 0xfd2c1d05, 0x848fd2c5, 0xf6fb2299,
+          0xf523f357, 0xa6327623, 0x93a83531, 0x56cccd02,
+          0xacf08162, 0x5a75ebb5, 0x6e163697, 0x88d273cc,
+          0xde966292, 0x81b949d0, 0x4c50901b, 0x71c65614,
+          0xe6c6c7bd, 0x327a140a, 0x45e1d006, 0xc3f27b9a,
+          0xc9aa53fd, 0x62a80f00, 0xbb25bfe2, 0x35bdd2f6,
+          0x71126905, 0xb2040222, 0xb6cbcf7c, 0xcd769c2b,
+          0x53113ec0, 0x1640e3d3, 0x38abbd60, 0x2547adf0,
+          0xba38209c, 0xf746ce76, 0x77afa1c5, 0x20756060,
+          0x85cbfe4e, 0x8ae88dd8, 0x7aaaf9b0, 0x4cf9aa7e,
+          0x1948c25c, 0x02fb8a8c, 0x01c36ae4, 0xd6ebe1f9,
+          0x90d4f869, 0xa65cdea0, 0x3f09252d, 0xc208e69f,
+          0xb74e6132, 0xce77e25b, 0x578fdfe3, 0x3ac372e6
+  };
+
+  // BCryptTools IV: "OrpheanBeholderScryDoubt"
+  static private final int bf_crypt_ciphertext[] = {
+          0x4f727068, 0x65616e42, 0x65686f6c,
+          0x64657253, 0x63727944, 0x6f756274
+  };
+
+  // Table for Base64 encoding
+  static private final char base64_code[] = {
+          '.', '/', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J',
+          'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V',
+          'W', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h',
+          'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't',
+          'u', 'v', 'w', 'x', 'y', 'z', '0', '1', '2', '3', '4', '5',
+          '6', '7', '8', '9'
+  };
+
+  // Table for Base64 decoding
+  static private final byte index_64[] = {
+          -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+          -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+          -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+          -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+          -1, -1, -1, -1, -1, -1, 0, 1, 54, 55,
+          56, 57, 58, 59, 60, 61, 62, 63, -1, -1,
+          -1, -1, -1, -1, -1, 2, 3, 4, 5, 6,
+          7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
+          17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
+          -1, -1, -1, -1, -1, -1, 28, 29, 30,
+          31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
+          41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
+          51, 52, 53, -1, -1, -1, -1, -1
+  };
+
+  // Expanded Blowfish key
+  private int P[];
+  private int S[];
+
+  /**
+   * Encode a byte array using BCryptTools's slightly-modified base64
+   * encoding scheme. Note that this is *not* compatible with
+   * the standard MIME-base64 encoding.
+   *
+   * @param d   the byte array to encode
+   * @param len the number of bytes to encode
+   * @return base64-encoded string
+   * @throws IllegalArgumentException if the length is invalid
+   */
+  private static String encode_base64(byte d[], int len)
+          throws IllegalArgumentException {
+    int off = 0;
+    StringBuffer rs = new StringBuffer();
+    int c1, c2;
+
+    if (len <= 0 || len > d.length)
+      throw new IllegalArgumentException("Invalid len");
+
+    while (off < len) {
+      c1 = d[off++] & 0xff;
+      rs.append(base64_code[(c1 >> 2) & 0x3f]);
+      c1 = (c1 & 0x03) << 4;
+      if (off >= len) {
+        rs.append(base64_code[c1 & 0x3f]);
+        break;
+      }
+      c2 = d[off++] & 0xff;
+      c1 |= (c2 >> 4) & 0x0f;
+      rs.append(base64_code[c1 & 0x3f]);
+      c1 = (c2 & 0x0f) << 2;
+      if (off >= len) {
+        rs.append(base64_code[c1 & 0x3f]);
+        break;
+      }
+      c2 = d[off++] & 0xff;
+      c1 |= (c2 >> 6) & 0x03;
+      rs.append(base64_code[c1 & 0x3f]);
+      rs.append(base64_code[c2 & 0x3f]);
+    }
+    return rs.toString();
+  }
+
+  /**
+   * Look up the 3 bits base64-encoded by the specified character,
+   * range-checking againt conversion table
+   *
+   * @param x the base64-encoded value
+   * @return the decoded value of x
+   */
+  private static byte char64(char x) {
+    if ((int) x < 0 || (int) x > index_64.length)
+      return -1;
+    return index_64[(int) x];
+  }
+
+  /**
+   * Decode a string encoded using BCryptTools's base64 scheme to a
+   * byte array. Note that this is *not* compatible with
+   * the standard MIME-base64 encoding.
+   *
+   * @param s       the string to decode
+   * @param maxolen the maximum number of bytes to decode
+   * @return an array containing the decoded bytes
+   * @throws IllegalArgumentException if maxolen is invalid
+   */
+  private static byte[] decode_base64(String s, int maxolen)
+          throws IllegalArgumentException {
+    StringBuffer rs = new StringBuffer();
+    int off = 0, slen = s.length(), olen = 0;
+    byte ret[];
+    byte c1, c2, c3, c4, o;
+
+    if (maxolen <= 0)
+      throw new IllegalArgumentException("Invalid maxolen");
+
+    while (off < slen - 1 && olen < maxolen) {
+      c1 = char64(s.charAt(off++));
+      c2 = char64(s.charAt(off++));
+      if (c1 == -1 || c2 == -1)
+        break;
+      o = (byte) (c1 << 2);
+      o |= (c2 & 0x30) >> 4;
+      rs.append((char) o);
+      if (++olen >= maxolen || off >= slen)
+        break;
+      c3 = char64(s.charAt(off++));
+      if (c3 == -1)
+        break;
+      o = (byte) ((c2 & 0x0f) << 4);
+      o |= (c3 & 0x3c) >> 2;
+      rs.append((char) o);
+      if (++olen >= maxolen || off >= slen)
+        break;
+      c4 = char64(s.charAt(off++));
+      o = (byte) ((c3 & 0x03) << 6);
+      o |= c4;
+      rs.append((char) o);
+      ++olen;
+    }
+
+    ret = new byte[olen];
+    for (off = 0; off < olen; off++)
+      ret[off] = (byte) rs.charAt(off);
+    return ret;
+  }
+
+  /**
+   * Blowfish encipher a single 64-bit block encoded as
+   * two 32-bit halves
+   *
+   * @param lr  an array containing the two 32-bit half blocks
+   * @param off the position in the array of the blocks
+   */
+  private final void encipher(int lr[], int off) {
+    int i, n, l = lr[off], r = lr[off + 1];
+
+    l ^= P[0];
+    for (i = 0; i <= BLOWFISH_NUM_ROUNDS - 2; ) {
+      // Feistel substitution on left word
+      n = S[(l >> 24) & 0xff];
+      n += S[0x100 | ((l >> 16) & 0xff)];
+      n ^= S[0x200 | ((l >> 8) & 0xff)];
+      n += S[0x300 | (l & 0xff)];
+      r ^= n ^ P[++i];
+
+      // Feistel substitution on right word
+      n = S[(r >> 24) & 0xff];
+      n += S[0x100 | ((r >> 16) & 0xff)];
+      n ^= S[0x200 | ((r >> 8) & 0xff)];
+      n += S[0x300 | (r & 0xff)];
+      l ^= n ^ P[++i];
+    }
+    lr[off] = r ^ P[BLOWFISH_NUM_ROUNDS + 1];
+    lr[off + 1] = l;
+  }
+
+  /**
+   * Cycically extract a word of key material
+   *
+   * @param data the string to extract the data from
+   * @param offp a "pointer" (as a one-entry array) to the
+   *             current offset into data
+   * @return the next word of material from data
+   */
+  private static int streamtoword(byte data[], int offp[]) {
+    int i;
+    int word = 0;
+    int off = offp[0];
+
+    for (i = 0; i < 4; i++) {
+      word = (word << 8) | (data[off] & 0xff);
+      off = (off + 1) % data.length;
+    }
+
+    offp[0] = off;
+    return word;
+  }
+
+  /**
+   * Initialise the Blowfish key schedule
+   */
+  private void init_key() {
+    P = (int[]) P_orig.clone();
+    S = (int[]) S_orig.clone();
+  }
+
+  /**
+   * Key the Blowfish cipher
+   *
+   * @param key an array containing the key
+   */
+  private void key(byte key[]) {
+    int i;
+    int koffp[] = {0};
+    int lr[] = {0, 0};
+    int plen = P.length, slen = S.length;
+
+    for (i = 0; i < plen; i++)
+      P[i] = P[i] ^ streamtoword(key, koffp);
+
+    for (i = 0; i < plen; i += 2) {
+      encipher(lr, 0);
+      P[i] = lr[0];
+      P[i + 1] = lr[1];
+    }
+
+    for (i = 0; i < slen; i += 2) {
+      encipher(lr, 0);
+      S[i] = lr[0];
+      S[i + 1] = lr[1];
+    }
+  }
+
+  /**
+   * Perform the "enhanced key schedule" step described by
+   * Provos and Mazieres in "A Future-Adaptable Password Scheme"
+   * http://www.openbsd.org/papers/BCryptTools-paper.ps
+   *
+   * @param data salt information
+   * @param key  password information
+   */
+  private void ekskey(byte data[], byte key[]) {
+    int i;
+    int koffp[] = {0}, doffp[] = {0};
+    int lr[] = {0, 0};
+    int plen = P.length, slen = S.length;
+
+    for (i = 0; i < plen; i++)
+      P[i] = P[i] ^ streamtoword(key, koffp);
+
+    for (i = 0; i < plen; i += 2) {
+      lr[0] ^= streamtoword(data, doffp);
+      lr[1] ^= streamtoword(data, doffp);
+      encipher(lr, 0);
+      P[i] = lr[0];
+      P[i + 1] = lr[1];
+    }
+
+    for (i = 0; i < slen; i += 2) {
+      lr[0] ^= streamtoword(data, doffp);
+      lr[1] ^= streamtoword(data, doffp);
+      encipher(lr, 0);
+      S[i] = lr[0];
+      S[i + 1] = lr[1];
+    }
+  }
+
+  /**
+   * Perform the central password hashing step in the
+   * BCryptTools scheme
+   *
+   * @param password   the password to hash
+   * @param salt       the binary salt to hash with the password
+   * @param log_rounds the binary logarithm of the number
+   *                   of rounds of hashing to apply
+   * @return an array containing the binary hashed password
+   */
+  private byte[] crypt_raw(byte password[], byte salt[], int log_rounds) {
+    int rounds, i, j;
+    int cdata[] = (int[]) bf_crypt_ciphertext.clone();
+    int clen = cdata.length;
+    byte ret[];
+
+    if (log_rounds < 4 || log_rounds > 31)
+      throw new IllegalArgumentException("Bad number of rounds");
+    rounds = 1 << log_rounds;
+    if (salt.length != BCryptTools_SALT_LEN)
+      throw new IllegalArgumentException("Bad salt length");
+
+    init_key();
+    ekskey(salt, password);
+    for (i = 0; i < rounds; i++) {
+      key(password);
+      key(salt);
+    }
+
+    for (i = 0; i < 64; i++) {
+      for (j = 0; j < (clen >> 1); j++)
+        encipher(cdata, j << 1);
+    }
+
+    ret = new byte[clen * 4];
+    for (i = 0, j = 0; i < clen; i++) {
+      ret[j++] = (byte) ((cdata[i] >> 24) & 0xff);
+      ret[j++] = (byte) ((cdata[i] >> 16) & 0xff);
+      ret[j++] = (byte) ((cdata[i] >> 8) & 0xff);
+      ret[j++] = (byte) (cdata[i] & 0xff);
+    }
+    return ret;
+  }
+
+  /**
+   * 加密
+   *
+   * @param password
+   * @return
+   */
+  public static String hashpw(String password) {
+    return hashpw(password, gensalt());
+  }
+
+  /**
+   * Hash a password using the OpenBSD BCryptTools scheme
+   *
+   * @param password the password to hash
+   * @param salt     the salt to hash with (perhaps generated
+   *                 using BCryptTools.gensalt)
+   * @return the hashed password
+   */
+  public static String hashpw(String password, String salt) {
+    BCryptTools B;
+    String real_salt;
+    byte passwordb[], saltb[], hashed[];
+    char minor = (char) 0;
+    int rounds, off = 0;
+    StringBuffer rs = new StringBuffer();
+
+    if (salt.charAt(0) != '$' || salt.charAt(1) != '2')
+      throw new IllegalArgumentException("Invalid salt version");
+    if (salt.charAt(2) == '$')
+      off = 3;
+    else {
+      minor = salt.charAt(2);
+      if (minor != 'a' || salt.charAt(3) != '$')
+        throw new IllegalArgumentException("Invalid salt revision");
+      off = 4;
+    }
+
+    // Extract number of rounds
+    if (salt.charAt(off + 2) > '$')
+      throw new IllegalArgumentException("Missing salt rounds");
+    rounds = Integer.parseInt(salt.substring(off, off + 2));
+
+    real_salt = salt.substring(off + 3, off + 25);
+    try {
+      passwordb = (password + (minor >= 'a' ? "\000" : "")).getBytes("UTF-8");
+    } catch (UnsupportedEncodingException uee) {
+      throw new AssertionError("UTF-8 is not supported");
+    }
+
+    saltb = decode_base64(real_salt, BCryptTools_SALT_LEN);
+
+    B = new BCryptTools();
+    hashed = B.crypt_raw(passwordb, saltb, rounds);
+
+    rs.append("$2");
+    if (minor >= 'a')
+      rs.append(minor);
+    rs.append("$");
+    if (rounds < 10)
+      rs.append("0");
+    rs.append(Integer.toString(rounds));
+    rs.append("$");
+    rs.append(encode_base64(saltb, saltb.length));
+    rs.append(encode_base64(hashed,
+            bf_crypt_ciphertext.length * 4 - 1));
+    return rs.toString();
+  }
+
+  /**
+   * Generate a salt for use with the BCryptTools.hashpw() method
+   *
+   * @param log_rounds the log2 of the number of rounds of
+   *                   hashing to apply - the work factor therefore increases as
+   *                   2**log_rounds.
+   * @param random     an instance of SecureRandom to use
+   * @return an encoded salt value
+   */
+  public static String gensalt(int log_rounds, SecureRandom random) {
+    StringBuffer rs = new StringBuffer();
+    byte rnd[] = new byte[BCryptTools_SALT_LEN];
+
+    random.nextBytes(rnd);
+
+    rs.append("$2a$");
+    if (log_rounds < 10)
+      rs.append("0");
+    rs.append(Integer.toString(log_rounds));
+    rs.append("$");
+    rs.append(encode_base64(rnd, rnd.length));
+    return rs.toString();
+  }
+
+  /**
+   * Generate a salt for use with the BCryptTools.hashpw() method
+   *
+   * @param log_rounds the log2 of the number of rounds of
+   *                   hashing to apply - the work factor therefore increases as
+   *                   2**log_rounds.
+   * @return an encoded salt value
+   */
+  public static String gensalt(int log_rounds) {
+    return gensalt(log_rounds, new SecureRandom());
+  }
+
+  /**
+   * Generate a salt for use with the BCryptTools.hashpw() method,
+   * selecting a reasonable default for the number of hashing
+   * rounds to apply
+   *
+   * @return an encoded salt value
+   */
+  public static String gensalt() {
+    return gensalt(GENSALT_DEFAULT_LOG2_ROUNDS);
+  }
+
+  /**
+   * 验证密码
+   * Check that a plaintext password matches a previously hashed
+   * one
+   *
+   * @param plaintext the plaintext password to verify
+   * @param hashed    the previously-hashed password
+   * @return true if the passwords match, false otherwise
+   */
+  public static boolean checkpw(String plaintext, String hashed) {
+    return (hashed.compareTo(hashpw(plaintext, hashed)) == 0);
+  }
+
+  /**
+   * URLEncoder
+   *
+   * @param str
+   * @return
+   */
+  public static String URLEncoder(String str) {
+    if (StringUtils.isEmpty(str)) {
+      return "";
+    }
+    try {
+      return URLEncoder.encode(str, "UTF-8");
+    } catch (UnsupportedEncodingException e) {
+      e.printStackTrace();
+    }
+    return null;
+  }
+}

+ 176 - 0
energy-manage-common/src/main/java/com/energy/manage/common/util/BeanTools.java

@@ -0,0 +1,176 @@
+/**
+ * Copyright (c)  2014-2020 Gaoxiaobang, Inc.
+ * All rights reserved.
+ * <p>
+ * This software is the confidential and proprietary information of Gaoxiaobang,
+ * Inc. ("Confidential Information"). You shall not
+ * disclose such Confidential Information and shall use it only in
+ * accordance with the terms of the license agreement you entered into with Gaoxiaobang.
+ */
+package com.energy.manage.common.util;
+
+import org.apache.commons.beanutils.BeanUtils;
+import org.apache.commons.beanutils.ConversionException;
+import org.apache.commons.beanutils.PropertyUtils;
+
+import java.beans.PropertyDescriptor;
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
+import java.util.*;
+
+
+/**
+ * @author lh
+ * @date 2015年10月29日
+ */
+public class BeanTools {
+  private static char UNDERLINE = 95;
+
+  public static void populate(Object bean, Map<String, ? extends Object> properties) {
+    try {
+      BeanUtils.populate(bean, toReplaceKeyLow(properties));
+    } catch (IllegalAccessException e1) {
+      ExceptionTools.unchecked(e1);
+    } catch (InvocationTargetException e2) {
+      ExceptionTools.unchecked(e2);
+    }
+  }
+
+  /**
+   * 替换驼峰Map
+   * * @param map
+   *
+   * @return
+   */
+  public static Map<String, Object> toReplaceKeyLow(Map<String, ? extends Object> map) {
+    Map re_map = new HashMap();
+    if (re_map != null) {
+      Iterator var2 = map.entrySet().iterator();
+      while (var2.hasNext()) {
+        Map.Entry<String, Object> entry = (Map.Entry) var2.next();
+        re_map.put(underlineToCamel(entry.getKey()), map.get(entry.getKey()));
+      }
+      map.clear();
+    }
+    return re_map;
+  }
+
+  public static String underlineToCamel(String param) {
+    if (param == null || "".equals(param.trim())) {
+      return "";
+    }
+    int len = param.length();
+    StringBuilder sb = new StringBuilder(len);
+    for (int i = 0; i < len; i++) {
+      char c = param.charAt(i);
+      if (c == UNDERLINE) {
+        if (++i < len) {
+          sb.append(Character.toUpperCase(param.charAt(i)));
+        }
+      } else {
+        sb.append(c);
+      }
+    }
+    return sb.toString();
+  }
+
+
+  public static void copyProperties(Object to, Object from) {
+    try {
+      BeanUtils.copyProperties(to, from);
+    } catch (ConversionException e1) {
+      ExceptionTools.unchecked(e1);
+    } catch (IllegalAccessException e2) {
+      ExceptionTools.unchecked(e2);
+    } catch (InvocationTargetException e3) {
+      ExceptionTools.unchecked(e3);
+    }
+  }
+
+  public static void copyProperty(Object bean, String name, Object value) {
+    try {
+      BeanUtils.copyProperty(bean, name, value);
+    } catch (ConversionException e1) {
+      ExceptionTools.unchecked(e1);
+    } catch (IllegalAccessException e2) {
+      ExceptionTools.unchecked(e2);
+    } catch (InvocationTargetException e3) {
+      ExceptionTools.unchecked(e3);
+    }
+  }
+
+  public static void setProperty(Object obj, String name, Object value) {
+    try {
+      BeanUtils.setProperty(obj, name, value);
+    } catch (IllegalAccessException e1) {
+      ExceptionTools.unchecked(e1);
+    } catch (InvocationTargetException e2) {
+      ExceptionTools.unchecked(e2);
+    }
+  }
+
+  public static String getProperty(Object obj, String name) {
+    try {
+      return BeanUtils.getProperty(obj, name);
+    } catch (InvocationTargetException e1) {
+      ExceptionTools.unchecked(e1);
+    } catch (IllegalAccessException e2) {
+      ExceptionTools.unchecked(e2);
+    } catch (NoSuchMethodException e3) {
+      ExceptionTools.unchecked(e3);
+    }
+    return null;
+  }
+
+  public static boolean equalProperty(Object obj, String name, Object value) {
+    return StringTools.getString(value).equals(getProperty(obj, name));
+  }
+
+
+  public static <T> List<T> listPopulate(List<Map> list, Class<T> clazz) throws RuntimeException {
+    List t = new ArrayList<T>();
+    try {
+      for (Map map : list) {
+        T bean = null;
+        bean = clazz.newInstance();
+        BeanUtils.populate(bean, map);
+        t.add(bean);
+      }
+      return t;
+    } catch (Exception e) {
+      throw ExceptionTools.unchecked(e);
+    }
+  }
+
+  public static void copyNotNullProperties(Object to, Object from) {
+
+    PropertyDescriptor[] propertyDescriptors = PropertyUtils.getPropertyDescriptors(to);
+    try {
+      for (PropertyDescriptor descriptor : propertyDescriptors) {
+
+        Method write = PropertyUtils.getWriteMethod(descriptor);
+        Method read = PropertyUtils.getReadMethod(descriptor);
+        if (write == null || read == null) {
+          continue;
+        }
+
+        String property = descriptor.getName();
+
+        try {
+          Object value = PropertyUtils.getProperty(from, property);
+          if (value != null) {
+            PropertyUtils.setProperty(to, property, value);
+          }
+        } catch (NoSuchMethodException e) {
+
+        }
+
+      }
+    } catch (InvocationTargetException e1) {
+      ExceptionTools.unchecked(e1);
+    } catch (IllegalAccessException e2) {
+
+    }
+  }
+
+}

+ 113 - 0
energy-manage-common/src/main/java/com/energy/manage/common/util/CollectionTools.java

@@ -0,0 +1,113 @@
+/**
+ * Copyright (c)  2014-2020 Gaoxiaobang, Inc.
+ * All rights reserved.
+ * <p>
+ * This software is the confidential and proprietary information of Gaoxiaobang,
+ * Inc. ("Confidential Information"). You shall not
+ * disclose such Confidential Information and shall use it only in
+ * accordance with the terms of the license agreement you entered into with Gaoxiaobang.
+ */
+package com.energy.manage.common.util;
+
+import org.apache.commons.beanutils.BeanComparator;
+import org.apache.commons.collections.CollectionUtils;
+import org.apache.commons.collections.ComparatorUtils;
+import org.apache.commons.collections.comparators.ComparableComparator;
+import org.apache.commons.lang3.ArrayUtils;
+
+import java.util.*;
+
+public class CollectionTools {
+
+  public static boolean isEmpty(final Object[] array) {
+    return ArrayUtils.isEmpty(array);
+  }
+
+  public static boolean isEmpty(Collection<?> coll) {
+    return CollectionUtils.isEmpty(coll);
+  }
+
+  public static boolean isNotEmpty(Collection<?> coll) {
+    return !CollectionUtils.isEmpty(coll);
+  }
+
+  public static <T> void sort(List<T> list, String property, boolean asc) {
+    Comparator<?> comparator = ComparableComparator.getInstance();
+    comparator = ComparatorUtils.nullLowComparator(comparator);
+    if (!asc) {
+      comparator = ComparatorUtils.reversedComparator(comparator);
+    }
+    Collections.sort(list, new BeanComparator(property, comparator));
+  }
+
+  public static <T> List<T> page(List<T> list, Integer curPage, Integer pageSize) {
+    if (curPage < 1 || pageSize <= 0)
+      return null;
+    int startIndex = (curPage - 1) * pageSize;
+    int endIndex = startIndex + pageSize;
+    if (startIndex <= list.size() - 1) {
+      return list.subList(startIndex, endIndex > list.size() ? list.size() : endIndex);
+    }
+    return null;
+  }
+
+
+  /**
+   * 数据去除重复元素
+   * @param list
+   */
+  public static void removeDuplicate(List list) {
+    HashSet h = new HashSet(list);
+    list.clear();
+    list.addAll(h);
+  }
+
+
+  /**
+   * Returns the size of the specified collection or {@code 0} if the collection is {@code null}.
+   *
+   * @param c the collection to check
+   * @return the size of the specified collection or {@code 0} if the collection is {@code null}.
+   * @since 1.2
+   */
+  public static int size(Collection c) {
+    return c != null ? c.size() : 0;
+  }
+
+  /**
+   * Returns the size of the specified map or {@code 0} if the map is {@code null}.
+   *
+   * @param m the map to check
+   * @return the size of the specified map or {@code 0} if the map is {@code null}.
+   * @since 1.2
+   */
+  public static int size(Map m) {
+    return m != null ? m.size() : 0;
+  }
+
+
+  public static <E> List<E> asList(E... elements) {
+    if (elements == null || elements.length == 0) {
+      return Collections.emptyList();
+    }
+
+    // Integer overflow does not occur when a large array is passed in because the list array already exists
+    return Arrays.asList(elements);
+  }
+
+  public static <E> Set<E> asSet(E... elements) {
+    if (elements == null || elements.length == 0) {
+      return Collections.emptySet();
+    }
+
+    if (elements.length == 1) {
+      return Collections.singleton(elements[0]);
+    }
+
+    LinkedHashSet<E> set = new LinkedHashSet<E>(elements.length * 4 / 3 + 1);
+    Collections.addAll(set, elements);
+    return set;
+  }
+
+
+}

+ 785 - 0
energy-manage-common/src/main/java/com/energy/manage/common/util/DateTools.java

@@ -0,0 +1,785 @@
+package com.energy.manage.common.util;
+
+import org.joda.time.DateTime;
+import org.joda.time.Days;
+import org.joda.time.Minutes;
+
+import java.text.DateFormat;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.time.Instant;
+import java.time.LocalDateTime;
+import java.time.ZoneId;
+import java.time.ZonedDateTime;
+import java.util.*;
+
+/**
+ * Created by lt on 2017/3/20.
+ */
+public class DateTools {
+    private static final String DATE = "yyyy-MM-dd";
+    private static final String DATE_TIME = "yyyy-MM-dd HH:mm";
+    private static final String DATE_TIME_WEB = "yyyy/MM/dd HH:mm";
+    private static final String TIME = "yyyy-MM-dd HH:mm:ss";
+    private static final String HOUR_SECOND = "HH:mm";
+    private static final String UTC_TIME = "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'";
+
+
+    private static final SimpleDateFormat dateFormat = new SimpleDateFormat(DATE);
+    private static final SimpleDateFormat dateTimeFormat = new SimpleDateFormat(DATE_TIME);
+    private static final SimpleDateFormat dateWebTimeFormat = new SimpleDateFormat(DATE_TIME_WEB);
+    private static final SimpleDateFormat timeFormat = new SimpleDateFormat(TIME);
+    private static final SimpleDateFormat hourMinutesFormat = new SimpleDateFormat(HOUR_SECOND);
+    private static final SimpleDateFormat utcFormat = new SimpleDateFormat(UTC_TIME);
+
+    private static HashMap<Integer, String> dayMap = new HashMap<Integer, String>();
+
+    static {
+        dayMap.put(1, "周一");
+        dayMap.put(2, "周二");
+        dayMap.put(3, "周三");
+        dayMap.put(4, "周四");
+        dayMap.put(5, "周五");
+        dayMap.put(6, "周六");
+        dayMap.put(7, "周日");
+    }
+
+    public static Date getCurrentDateTime() {
+        Date date = new Date();
+        return date;
+    }
+
+    public static int daysOfTime(Date start, Date end) {
+        try {
+            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+            Date fDate = sdf.parse(getFormatData(start.getTime()));
+            Date oDate = sdf.parse(getFormatData(end.getTime()));
+            int days = (int) (oDate.getTime() - fDate.getTime()) / (1000 * 3600 * 24);
+            return days;
+        } catch (ParseException e) {
+            e.printStackTrace();
+        }
+        return 0;
+    }
+
+    public static Date str2Date(String date, String format) {
+        if (StringTools.isNotBlank(date)) {
+            DateFormat parser = new SimpleDateFormat(format);
+            try {
+                return parser.parse(date);
+            } catch (ParseException e) {
+                e.printStackTrace();
+            }
+        }
+        return null;
+    }
+
+
+    /**
+     * 获取时分秒毫秒
+     *
+     * @return
+     */
+    public static String getDayMonth() {
+        Calendar c = Calendar.getInstance();//可以对每个时间域单独修改
+        String year = StringTools.getString(c.get(Calendar.YEAR));
+        String month = StringTools.getString(c.get(Calendar.MONTH) + 1);
+        String date = StringTools.getString(c.get(Calendar.DATE));
+        String hour = StringTools.getString(c.get(Calendar.HOUR_OF_DAY));
+        String minute = StringTools.getString(c.get(Calendar.MINUTE));
+        String second = StringTools.getString(c.get(Calendar.SECOND));
+        String millisecond = StringTools.getString(c.get(Calendar.MILLISECOND));
+        return year + month + date + hour + minute + second + millisecond;
+    }
+
+    /**
+     * 获取距离当前日期N天的日期 正值为之后日期 负值为之前日期
+     */
+    public static Date getDateByDays(Date oldDate, int days) {
+        Calendar theCa = Calendar.getInstance();
+        theCa.setTime(oldDate);
+        theCa.add(theCa.DAY_OF_MONTH, days);
+        Date date = theCa.getTime();
+        return date;
+    }
+
+    public static int getWeeks(Date startdate, Date enddate) {
+        int temp = 0;
+        try {
+            temp = (int) ((enddate.getTime() - startdate.getTime()) / 86400000 / 7);
+            if ((enddate.getTime() - startdate.getTime()) % 86400000 > 0) {
+                temp = temp + 1;
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        return temp;
+    }
+
+    public static int getWeeks(String startdate, String enddate) {
+        int temp = 0;
+        try {
+            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+            Date dateStart = sdf.parse(startdate);
+            Date dateEnd = sdf.parse(enddate);
+            temp = (int) ((dateEnd.getTime() - dateStart.getTime()) / 86400000 / 7);
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        return temp;
+    }
+
+
+    /**
+     * 根据时间戳返回时间串
+     *
+     * @return
+     */
+    public static String getFormatData(long date) {
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+        String dateString = sdf.format(new Date(date));
+        return dateString;
+
+    }
+
+    /**
+     * 根据时间戳返回时间串
+     *
+     * @return
+     */
+    public static String getFormatDataCN(long date) {
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日");
+        String dateString = sdf.format(new Date(date));
+        return dateString;
+
+    }
+
+    /**
+     * 根据时间戳返回时间串
+     *
+     * @return
+     */
+    public static String getYearFormat(long date) {
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM");
+        String dateString = sdf.format(new Date(date));
+        return dateString;
+
+    }
+
+
+    /**
+     * 根据时间戳返回时间串
+     *
+     * @return
+     */
+    public static Date formatFormat(String date) {
+        try {
+            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+            Date dateString = sdf.parse(date);
+            return dateString;
+        } catch (Exception e) {
+            e.printStackTrace();
+            return null;
+        }
+    }
+
+    /**
+     * 根据时间戳返回时间串
+     *
+     * @return
+     */
+    public static String formatFormat(Date date, String format) {
+        try {
+            SimpleDateFormat sdf = new SimpleDateFormat(format);
+            String dateString = sdf.format(date);
+            return dateString;
+        } catch (Exception e) {
+            e.printStackTrace();
+            return null;
+        }
+    }
+
+    /**
+     * 判断是否相等
+     *
+     * @param d1
+     * @param d2
+     * @return
+     */
+    public static boolean sameDate(Date d1, Date d2) {
+        if (null == d1 || null == d2)
+            return false;
+        //return getOnlyDate(d1).equals(getOnlyDate(d2));
+        Calendar cal1 = Calendar.getInstance();
+        cal1.setTime(d1);
+        Calendar cal2 = Calendar.getInstance();
+        cal2.setTime(d2);
+        return cal1.get(0) == cal2.get(0) && cal1.get(1) == cal2.get(1) && cal1.get(6) == cal2.get(6);
+    }
+
+    //判断两个日期是否为同一天
+    public static boolean isSameDate(Date date1, Date date2) {
+        Calendar cal1 = Calendar.getInstance();
+        cal1.setTime(date1);
+
+        Calendar cal2 = Calendar.getInstance();
+        cal2.setTime(date2);
+
+        boolean isSameYear = cal1.get(Calendar.YEAR) == cal2
+                .get(Calendar.YEAR);
+        boolean isSameMonth = isSameYear
+                && cal1.get(Calendar.MONTH) == cal2.get(Calendar.MONTH);
+        boolean isSameDate = isSameMonth
+                && cal1.get(Calendar.DAY_OF_MONTH) == cal2
+                .get(Calendar.DAY_OF_MONTH);
+
+        return isSameDate;
+    }
+
+    public static String getDateFromString(Date time, String pattern) {
+        if (time == null) {
+            return "";
+        }
+        SimpleDateFormat formatter = new SimpleDateFormat(pattern);
+        return formatter.format(time);
+
+    }
+
+    // 获取当前时间所在年的周数
+    public static int getWeekOfYear(Date date) {
+        Calendar c = new GregorianCalendar();
+        c.setFirstDayOfWeek(Calendar.MONDAY);
+        c.setMinimalDaysInFirstWeek(7);
+        c.setTime(date);
+
+        return c.get(Calendar.WEEK_OF_YEAR);
+    }
+
+    // 获取当前时间所在年的最大周数
+    public static int getMaxWeekNumOfYear(int year) {
+        Calendar c = new GregorianCalendar();
+        c.set(year, Calendar.DECEMBER, 31, 23, 59, 59);
+
+        return getWeekOfYear(c.getTime());
+    }
+
+    public static int getZygjWeeks(Date startdate, Date enddate) {
+        int startYear = 0;
+        int endYear = 0;
+        int startWeeks = 0;
+        int endWeeks = 0;
+        int temp = 0;
+        Calendar caSta = Calendar.getInstance();
+        Calendar caEnd = Calendar.getInstance();
+        caSta.clear();
+        caSta.clear();
+        caSta.setTime(startdate);
+        caEnd.setTime(enddate);
+        startYear = caSta.get(Calendar.YEAR);
+        endYear = caEnd.get(Calendar.YEAR);
+        try {
+            if (endYear > startYear) {
+                int endSameYearEnd = getMaxWeekNumOfYear(startYear);
+                startWeeks = caSta.get(Calendar.WEEK_OF_YEAR);
+                //endWeeks = caEnd.get(Calendar.WEEK_OF_YEAR);
+
+                //startWeeks=getYearWeek(caSta);
+                endWeeks = getYearWeek(caEnd);
+                int day = 1;
+                return endSameYearEnd - startWeeks + day + endWeeks;
+            } else {
+                startWeeks = caSta.get(Calendar.WEEK_OF_YEAR);
+                //endWeeks = caEnd.get(Calendar.WEEK_OF_YEAR);
+                endWeeks = getYearWeek(caEnd);
+                int day = 1;
+                return endWeeks - startWeeks + day;
+
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        return 0;
+    }
+
+
+    /**
+     * 计算开始日期所在周的周一
+     *
+     * @param time
+     * @return
+     */
+    public static Date convertWeekMondayDate(Date time) {
+
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); //设置时间格式
+
+        Calendar cal = Calendar.getInstance();
+
+        cal.setTime(time);
+
+        //判断要计算的日期是否是周日,如果是则减一天计算周六的,否则会出问题,计算到下一周去了
+
+        int dayWeek = cal.get(Calendar.DAY_OF_WEEK);//获得当前日期是一个星期的第几天
+
+        if (1 == dayWeek) {
+
+            cal.add(Calendar.DAY_OF_MONTH, -1);
+
+        }
+        cal.setFirstDayOfWeek(Calendar.MONDAY);//设置一个星期的第一天,按中国的习惯一个星期的第一天是星期一
+        int day = cal.get(Calendar.DAY_OF_WEEK);//获得当前日期是一个星期的第几天
+        cal.add(Calendar.DATE, cal.getFirstDayOfWeek() - day);//根据日历的规则,给当前日期减去星期几与一个星期第一天的差值
+        return cal.getTime();
+
+
+    }
+
+    // 获取第几周所在的月份
+    public static int getWeekNumOfMonth(int num, Map<Integer, Map<Integer, String>> weekNumDate) {
+
+        Map<Integer, String> weekMap = weekNumDate.get(num);
+        Calendar theCa = Calendar.getInstance();
+        theCa.setTime(str2Date(weekMap.get(7), "yyyy-MM-dd"));
+        return theCa.get(Calendar.MONTH) + 1;
+
+    }
+
+    // 获取第几周所在的月份
+    public static int getWeekNumOfMonth(Date date) {
+        Calendar theCa = Calendar.getInstance();
+        theCa.setTime(date);
+        return theCa.get(Calendar.MONTH) + 1;
+
+    }
+
+    public static boolean betweenDate(Date date, Date begin, Date end) {
+        if (date.getTime() >= begin.getTime() && date.getTime() <= end.getTime()) {
+            return true;
+        } else {
+            return false;
+        }
+    }
+
+    public static boolean compareDate(Date begin, Date end) {
+        if (begin.before(end)) {
+            //表示bt小于et
+            return false;
+        } else {
+            return true;
+        }
+    }
+
+    public static String compareDateDay(Date date1, Date date2) {
+        if (date1 == null) {
+            return StringTools.getString(0);
+        }
+        int days = 0;
+        try {
+            double diff = (double) date1.getTime() - date2.getTime();
+            days = (int) Math.floor((diff / (1000 * 60 * 60 * 24)));
+        } catch (Exception e) {
+        }
+        return String.valueOf(days);
+    }
+
+    /**
+     * 判断时间是否在时间段内 *
+     *
+     * @param date         当前时间 yyyy-MM-dd HH:mm:ss
+     * @param strDateBegin 开始时间 00:00:00
+     * @param strDateEnd   结束时间 00:05:00
+     * @return
+     */
+    public static boolean isInDate(Date date, String strDateBegin,
+
+                                   String strDateEnd) {
+
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+
+        String strDate = sdf.format(date);
+
+// 截取当前时间时分秒
+
+        int strDateH = Integer.parseInt(strDate.substring(11, 13));
+
+        int strDateM = Integer.parseInt(strDate.substring(14, 16));
+
+        int strDateS = Integer.parseInt(strDate.substring(17, 19));
+
+// 截取开始时间时分秒
+
+        int strDateBeginH = Integer.parseInt(strDateBegin.substring(0, 2));
+
+        int strDateBeginM = Integer.parseInt(strDateBegin.substring(3, 5));
+
+        int strDateBeginS = Integer.parseInt(strDateBegin.substring(6, 8));
+
+// 截取结束时间时分秒
+
+        int strDateEndH = Integer.parseInt(strDateEnd.substring(0, 2));
+
+        int strDateEndM = Integer.parseInt(strDateEnd.substring(3, 5));
+
+        int strDateEndS = Integer.parseInt(strDateEnd.substring(6, 8));
+
+        if ((strDateH >= strDateBeginH && strDateH <= strDateEndH)) {
+
+// 当前时间小时数在开始时间和结束时间小时数之间
+
+            if (strDateH > strDateBeginH && strDateH < strDateEndH) {
+
+                return true;
+
+// 当前时间小时数等于开始时间小时数,分钟数在开始和结束之间
+
+            } else if (strDateH == strDateBeginH && strDateM >= strDateBeginM
+
+                    && strDateM <= strDateEndM) {
+
+                return true;
+
+// 当前时间小时数等于开始时间小时数,分钟数等于开始时间分钟数,秒数在开始和结束之间
+
+            } else if (strDateH == strDateBeginH && strDateM == strDateBeginM
+
+                    && strDateS >= strDateBeginS && strDateS <= strDateEndS) {
+
+                return true;
+
+            }
+
+// 当前时间小时数大等于开始时间小时数,等于结束时间小时数,分钟数小等于结束时间分钟数
+
+            else if (strDateH >= strDateBeginH && strDateH == strDateEndH
+
+                    && strDateM <= strDateEndM) {
+
+                return true;
+
+// 当前时间小时数大等于开始时间小时数,等于结束时间小时数,分钟数等于结束时间分钟数,秒数小等于结束时间秒数
+
+            } else if (strDateH >= strDateBeginH && strDateH == strDateEndH
+
+                    && strDateM == strDateEndM && strDateS <= strDateEndS) {
+
+                return true;
+
+            } else {
+
+                return false;
+
+            }
+
+        } else {
+
+            return false;
+
+        }
+
+    }
+
+
+    /**
+     * 判断时间是否在时间段内 *
+     *
+     * @param date    当前时间 yyyy-MM-dd HH:mm:ss
+     * @param staDate 开始时间 00:00:00
+     * @param endDate 结束时间 00:05:00
+     * @return
+     */
+    public static boolean isInDate(Date date, Date staDate, Date endDate) {
+
+        long current = date.getTime();
+        long staTime = staDate.getTime();
+        long endTime = endDate.getTime();
+        if (current - staTime < 0) {
+            return false;//当前时间在开始时间之前
+        }
+        if (current - endTime > 0) {
+            return false;//当前时间在结束时间之后
+        }
+        if ((current - staTime > 0) && (current - endTime < 0)) {
+            return true;
+        }
+        return false;
+    }
+
+    /**
+     * 判断时间是否在时间段内(判断专用) *
+     *
+     * @param date    当前时间 yyyy-MM-dd HH:mm:ss
+     * @param staDate 开始时间 00:00:00
+     * @param endDate 结束时间 00:05:00
+     * @return
+     */
+    public static boolean isInDate2(Date date, Date staDate, Date endDate) {
+
+        return (date.getTime() >= staDate.getTime()) && (date.getTime() <= endDate.getTime());
+    }
+
+    /**
+     * 把一个时间重置成0点
+     *
+     * @param startDate
+     * @return
+     */
+    public static Date getStartDate(Date startDate) {
+        Calendar calendarStart = Calendar.getInstance();
+        calendarStart.setTime(startDate);
+        calendarStart.set(calendarStart.get(Calendar.YEAR),
+                calendarStart.get(Calendar.MONTH),
+                calendarStart.get(Calendar.DATE),
+                0, 0, 0);
+
+        startDate = calendarStart.getTime();
+        return startDate;
+    }
+
+    /**
+     * 把数字星期几转化为中文
+     *
+     * @param day
+     * @return
+     */
+    public static String getWeekOfDay(int day) {
+        return dayMap.get(day);
+    }
+
+    public static String date2Str(Date date, String format) {
+        if (date != null) {
+            DateFormat parser = new SimpleDateFormat(format);
+            try {
+                return parser.format(date);
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
+        }
+        return null;
+    }
+
+
+    public static int daysBetween(Date date1, Date date2) {
+        return Days.daysBetween(new DateTime(date1), new DateTime(date2)).getDays();
+    }
+
+    public static int minuteBetween(Date date1, Date date2) {
+        return Minutes.minutesBetween(new DateTime(date1), new DateTime(date2)).getMinutes();
+    }
+
+
+    /**
+     * 获取周数,如果一年最后一天如果是周日,周数不对,推算倒数第二天周数,如果一般周日,算到前一周
+     *
+     * @param
+     * @return
+     */
+    public static int getYearWeek(Calendar calendar) {
+        //周日
+        if (calendar.get(Calendar.DAY_OF_WEEK) == 1) {
+            //Date temp=calendar.getTime();
+
+            Calendar temp = Calendar.getInstance();
+            temp.clear();
+            temp.set(Calendar.YEAR, calendar.get(Calendar.YEAR));
+            temp.roll(Calendar.DAY_OF_YEAR, -1);
+            //一年最后一天
+            if (temp.getTimeInMillis() == calendar.getTimeInMillis()) {
+                temp.roll(Calendar.DAY_OF_YEAR, -1);
+                return temp.get(Calendar.WEEK_OF_YEAR);
+            } else {
+                //正常周日
+                return calendar.get(Calendar.WEEK_OF_YEAR) - 1;
+            }
+        } else {
+            //周一到周六
+            return calendar.get(Calendar.WEEK_OF_YEAR);
+        }
+    }
+
+    /**
+     * 在当前时间基础加一天或者减几天
+     *
+     * @param num 为正表示加几天,为负表示减几天
+     * @return
+     */
+    public static Date plusOrMinusDay(Date date, int num) {
+        Calendar calendar = Calendar.getInstance();
+        calendar.setTime(date);
+        calendar.add(Calendar.DATE, num);
+        return calendar.getTime();
+    }
+
+    /**
+     * 处理日期只留年月日
+     *
+     * @param date
+     * @param num
+     * @return
+     */
+    public static Date plusOrMinusDayByTime(Date date, int num) {
+        Calendar calendar = Calendar.getInstance();
+        calendar.setTime(date);
+        calendar.add(Calendar.DATE, num);
+        Date dateTime = calendar.getTime();
+        return formatFormat(getFormatData(dateTime.getTime()) + " 00:00:00");
+    }
+
+    public static Date addMonth(Date date1, int month) {
+        Calendar calendar = Calendar.getInstance();
+        calendar.setTime(date1);
+        calendar.add(Calendar.MONTH, month);
+        return calendar.getTime();
+    }
+
+    public static String[] getMonthRange(Date startTime, Date endTime) {
+        ArrayList<String> dates = new ArrayList<String>();
+        dates.add(getYearFormat(startTime.getTime()));
+        String end = getYearFormat(endTime.getTime());
+        int number = 0;
+        Calendar calendar = Calendar.getInstance();
+        calendar.setTime(startTime);
+        while (number++ < 11) {
+            calendar.add(Calendar.MONTH, 1);
+            calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMinimum(Calendar.DAY_OF_MONTH));
+            String time = getYearFormat(calendar.getTimeInMillis());
+            dates.add(time);
+            if (end.equals(time)) {
+                calendar.add(Calendar.MONTH, 1);
+                calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMinimum(Calendar.DAY_OF_MONTH));
+                dates.add(getYearFormat(calendar.getTimeInMillis()));
+                break;
+            }
+        }
+        String[] strings = new String[dates.size()];
+        dates.toArray(strings);
+        return strings;
+    }
+
+
+//    public static void main(String[] args) {
+//        Date date1 = DateTools.str2Date("2018-09-10", Constants.YYYY_MM_DD);
+//        Date date2 = DateTools.str2Date("2019-11-20", Constants.YYYY_MM_DD);
+//
+//        //int number=DateTools.getZygjWeeks(date1,date2);
+//        String[] a= DateTools.getMonthRange(date1,date2);
+//        for (String i:a){
+//            System.out.println(i);
+//        }
+//
+//        //System.out.println(getDateFromString(getStartDate(new Date()),Constants.YYYY_MM_DD_HH_MM_SS));
+////        String date = "2017-08-17";
+////        Date date1 = DateTools.str2Date(date, Constants.YYYY_MM_DD);
+////        Map<Integer, Map<Integer, String>> weekNumDate = geWeekDate(date1, 7);
+////        for (Integer weekNum : weekNumDate.keySet()) {
+////           // System.out.println("第" + weekNum + "周在:" + getWeekNumOfMonth(weekNum, weekNumDate) + "月");
+////
+////            Map<Integer, String> weekMap = weekNumDate.get(weekNum);
+////            for (Integer s : weekMap.keySet()) {
+////                System.out.println(s + ": " + weekMap.get(s));
+////            }
+////        }
+//
+//    }
+
+
+    public static Date getDate(String strTime) {
+        if (strTime == null || strTime.length() == 0) {
+            return null;
+        }
+        return new Date(StringTools.getLong(strTime));
+    }
+
+    public static String format(Date date, DateType dateType) {
+        if (date == null) {
+            return null;
+        }
+        if (Objects.equals(dateType.name(), DateType.DATE.name())) {
+            return dateFormat.format(date);
+        } else if (Objects.equals(dateType.name(), DateType.DATE_TIME.name())) {
+            return dateTimeFormat.format(date);
+        } else if (Objects.equals(dateType.name(), DateType.DATE_TIME_WEB.name())) {
+            return dateWebTimeFormat.format(date);
+        } else if (Objects.equals(dateType.name(), DateType.TIME.name())) {
+            return timeFormat.format(date);
+        } else if (Objects.equals(dateType.name(), DateType.HOUR_MINUTES.name())) {
+            return hourMinutesFormat.format(date);
+        }
+        return "";
+    }
+
+
+    public enum DateType {
+        DATE,
+        DATE_TIME,
+        DATE_TIME_WEB,
+        TIME,
+        HOUR_MINUTES
+    }
+
+    /**
+     * LocalDateTime转毫秒时间戳
+     *
+     * @param localDateTime LocalDateTime
+     * @return 时间戳
+     */
+    public static Long localDateTimeToTimestamp(LocalDateTime localDateTime) {
+        try {
+            ZoneId zoneId = ZoneId.systemDefault();
+            Instant instant = localDateTime.atZone(zoneId).toInstant();
+            return instant.toEpochMilli();
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        return null;
+    }
+
+    /**
+     * 时间戳转LocalDateTime
+     *
+     * @param timestamp 时间戳
+     * @return LocalDateTime
+     */
+    public static LocalDateTime timestampToLocalDateTime(long timestamp) {
+        try {
+            Instant instant = Instant.ofEpochMilli(timestamp);
+            ZoneId zone = ZoneId.systemDefault();
+            return LocalDateTime.ofInstant(instant, zone);
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        return null;
+    }
+
+    /**
+     * Date转LocalDateTime
+     *
+     * @param date Date
+     * @return LocalDateTime
+     */
+    public static LocalDateTime dateToLocalDateTime(Date date) {
+        try {
+            Instant instant = date.toInstant();
+            ZoneId zoneId = ZoneId.systemDefault();
+            return instant.atZone(zoneId).toLocalDateTime();
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        return null;
+    }
+
+    /**
+     * LocalDateTime转Date
+     *
+     * @param localDateTime LocalDateTime
+     * @return Date
+     */
+    public static Date localDateTimeToDate(LocalDateTime localDateTime) {
+        try {
+            ZoneId zoneId = ZoneId.systemDefault();
+            ZonedDateTime zdt = localDateTime.atZone(zoneId);
+            return Date.from(zdt.toInstant());
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        return null;
+    }
+}

+ 95 - 0
energy-manage-common/src/main/java/com/energy/manage/common/util/DownLoadUtil.java

@@ -0,0 +1,95 @@
+package com.energy.manage.common.util;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.io.*;
+import java.net.HttpURLConnection;
+import java.net.URL;
+import java.net.URLDecoder;
+import java.util.List;
+import java.util.zip.ZipEntry;
+import java.util.zip.ZipOutputStream;
+
+public class DownLoadUtil {
+
+  /**
+   * 批量下载文件至zip
+   *
+   * @param urlList
+   * @param downloadName
+   * @param request
+   * @param response
+   * @throws Exception
+   */
+  public static void downloadFiles2Zip(List<String> urlList,
+                                       String downloadName,
+                                       HttpServletRequest request,
+                                       HttpServletResponse response) throws Exception {
+    //响应头的设置
+    response.reset();
+    response.setCharacterEncoding("utf-8");
+    response.setContentType("multipart/form-data");
+    //设置压缩包的名字
+    downloadName += ".zip";
+    //返回客户端浏览器的版本号、类型
+    String agent = request.getHeader("USER-AGENT");
+    try {
+      //针对IE或者以IE为内核的浏览器:
+      if (agent.contains("MSIE") || agent.contains("Trident")) {
+        downloadName = java.net.URLEncoder.encode(downloadName, "UTF-8");
+      } else {
+        //非IE浏览器的处理:
+        downloadName = new String(downloadName.getBytes("UTF-8"), "ISO-8859-1");
+      }
+    } catch (Exception e) {
+      e.printStackTrace();
+    }
+    response.setHeader("Content-Disposition", "attachment;fileName=\"" + downloadName + "\"");
+    //设置压缩流:直接写入response,实现边压缩边下载
+    ZipOutputStream zipos = null;
+    try {
+      zipos = new ZipOutputStream(new BufferedOutputStream(response.getOutputStream()));
+      zipos.setMethod(ZipOutputStream.DEFLATED); //设置压缩方法
+    } catch (Exception e) {
+      e.printStackTrace();
+    }
+    //循环将文件写入压缩流
+    DataOutputStream os = null;
+    for (String item : urlList) {
+      HttpURLConnection conn = null;
+      try {
+        URL url = new URL(item);
+        conn = (HttpURLConnection) url.openConnection();
+        conn.setRequestMethod("GET");
+        conn.setRequestProperty("Connection", "Keep-Alive");
+        int responseCode = conn.getResponseCode();
+        if (responseCode != HttpURLConnection.HTTP_OK) {
+          throw new Exception("文件已不存在");
+        }
+        //添加ZipEntry,并ZipEntry中写入文件流
+        String fileName = URLDecoder.decode(item, "UTF-8");
+        fileName = "素材" + File.separator + fileName.substring(fileName.lastIndexOf("/") + 1);
+        zipos.putNextEntry(new ZipEntry(fileName));
+        os = new DataOutputStream(zipos);
+        InputStream is = conn.getInputStream();
+        byte[] b = new byte[100];
+        int length = 0;
+        while ((length = is.read(b)) != -1) {
+          os.write(b, 0, length);
+        }
+        is.close();
+        zipos.closeEntry();
+      } catch (IOException e) {
+        e.printStackTrace();
+      }
+    }
+    //关闭流
+    try {
+      os.flush();
+      os.close();
+      zipos.close();
+    } catch (IOException e) {
+      e.printStackTrace();
+    }
+  }
+}

+ 1127 - 0
energy-manage-common/src/main/java/com/energy/manage/common/util/ExcelTools.java

@@ -0,0 +1,1127 @@
+package com.energy.manage.common.util;
+
+import com.energy.manage.common.constant.Constants;
+import com.google.common.collect.Lists;
+import org.apache.poi.hssf.usermodel.*;
+import org.apache.poi.hssf.util.HSSFColor;
+import org.apache.poi.ss.usermodel.*;
+import org.apache.poi.ss.util.CellRangeAddress;
+import org.apache.poi.xssf.usermodel.XSSFWorkbook;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.*;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Created by lt on 2017/3/24.
+ */
+public class ExcelTools {
+    private static final Logger logger = LoggerFactory.getLogger(ExcelTools.class);
+
+    public Workbook parseFile(String suffix, InputStream is) {
+        Workbook workBook = null;
+        try {
+            if (".xls".equals(suffix)) { // 97-03
+                workBook = new HSSFWorkbook(is);
+            } else if (".xlsx".equals(suffix)) { // 2007
+                workBook = new XSSFWorkbook(is);
+            } else {
+                logger.error("解析excel时,不支持的文件类型");
+                return null;
+            }
+        } catch (Exception e) {
+            logger.error("解析xls文件出错", e);
+        } finally {
+            try {
+                is.close();
+            } catch (Exception e) {
+                logger.error("关闭excel文件流异常", e);
+            }
+        }
+        return workBook;
+    }
+
+    private boolean checkSheetNumber(Workbook workBook, int readSheetNumber) {
+        int sheetNumber = null != workBook ? workBook.getNumberOfSheets() : 0;
+        if (sheetNumber < 1 || readSheetNumber > sheetNumber) {
+            logger.error("当前工作表的数量异常");
+            return true;
+        }
+        return false;
+    }
+
+    public static String getContent(Row row, int k) {
+        String content = null;
+        Cell cell = row.getCell(k);
+        if (cell != null) {// 全部置成String类型的单元格
+            content = StringTools.trimToEmpty(cell.getStringCellValue()).replaceAll("[\\s*|\\u0020*|\\u3000*|\\u2002*]", "");
+        }
+        return content;
+    }
+
+
+    /**
+     * 通用excel读取程序
+     * @param workBook
+     * @param readSheetNumber
+     * @param index 第几行是正式列数 0为第一行
+     * @return
+     * @throws Exception
+     */
+    public List<List<String[]>> readExcel(Workbook workBook, int readSheetNumber,int index) throws Exception {
+        List<List<String[]>> excelSheets = Lists.newArrayList();
+        try {
+            if (checkSheetNumber(workBook, readSheetNumber)) {
+                return null;
+            }
+            for (int i = 0; i < readSheetNumber; i++) {
+                Sheet sheet = workBook.getSheetAt(i); // 读取第一个sheet
+                int rowNumber = sheet.getPhysicalNumberOfRows(); // 获得行数
+                List<String[]> sheetList = Lists.newArrayList();
+                Row titleRow = sheet.getRow(index);
+                int titleRowCellNumber = titleRow.getLastCellNum();//通过第index行获得列数
+                for (int j = index+1; j < rowNumber; j++) { //从第index+1行开始读取正式数据
+                    Row row = sheet.getRow(j);
+                    if (row == null) {
+                        continue;
+                    }
+                    String[] contentArr = new String[titleRowCellNumber];
+                    Boolean isAdd = false;
+                    for (int k = 0; k < titleRowCellNumber; k++) {
+                        String content = getContent(row, k);
+                        contentArr[k] = StringTools.isBlank(content) ? "" : content.trim();
+                        if (!isAdd && contentArr[k] != null) {
+                            isAdd = true;
+                        }
+                    }
+                    if (isAdd && checkArrayIsNotEmpty(contentArr)) {
+                        sheetList.add(contentArr);
+                    }
+                }
+                excelSheets.add(sheetList);
+            }
+        } catch (Exception ex) {
+            logger.error("read student user excel error", ex);
+            throw new Exception("EXCEL 解析出错");
+        }
+        if (excelSheets == null) {
+            throw new Exception("EXCEL 解析出错,请按模板格式上传");
+        }
+        return excelSheets;
+    }
+
+
+    /**
+     * 读取学生Excel表格,支持多个sheet
+     *
+     * @param workBook
+     * @param readSheetNumber
+     * @return
+     * @throws Exception
+     */
+    public List<List<String[]>> readStudentExcel(Workbook workBook, int readSheetNumber) throws Exception {
+        List<List<String[]>> excelSheets = Lists.newArrayList();
+        try {
+            if (checkSheetNumber(workBook, readSheetNumber)) {
+                return null;
+            }
+            for (int i = 0; i < readSheetNumber; i++) {
+                Sheet sheet = workBook.getSheetAt(i); // 读取第一个sheet
+                int rowNumber = sheet.getPhysicalNumberOfRows(); // 获得行数
+                List<String[]> sheetList = Lists.newArrayList();
+
+                // 默认第二行是标题名,检查格式是否正确
+                Row titleRow = sheet.getRow(1);
+                int titleRowCellNumber = titleRow.getLastCellNum();// 获得列数
+                if (titleRowCellNumber >= 39) {
+                    String productDirectionTitle = getContent(titleRow, 0);
+                    if (!"产品方向(必填)".equals(productDirectionTitle)) {
+                        throw new Exception("excel模版第1列为:产品方向(必填)");
+                    }
+                    String nameTitle = getContent(titleRow, 1);
+                    if (!"姓名(必填)".equals(nameTitle)) {
+                        throw new Exception("excel模版第2列为:姓名(必填)");
+                    }
+                    String noTitle = getContent(titleRow, 2);
+                    if (!"学号(必填)".equals(noTitle)) {
+                        throw new Exception("excel模版第3列为:学号(必填)");
+                    }
+                    String mobileTitle = getContent(titleRow, 3);
+                    if (!"手机号(必填)".equals(mobileTitle)) {
+                        throw new Exception("excel模版第4列为:手机号(必填)");
+                    }
+                    String nationTitle = getContent(titleRow, 4);
+                    if (!"民族(必填)".equals(nationTitle)) {
+                        throw new Exception("excel模版第5列为:民族(必填)");
+                    }
+                    String genderTitle = getContent(titleRow, 5);
+                    if (!"性别(必填)".equals(genderTitle)) {
+                        throw new Exception("excel模版第6列为:性别(必填)");
+                    }
+                    String schoolRoll = getContent(titleRow,6);
+                    if (!"学籍(必填)".equals(schoolRoll)) {
+                        throw new Exception("excel模版第7列为:学籍(必填)");
+                    }
+                    String classPositionTitle = getContent(titleRow, 7);
+                    if (!"班级职务(必填)".equals(classPositionTitle)) {
+                        throw new Exception("excel模版第8列为:班级职务(必填)");
+                    }
+                    String emailTitle = getContent(titleRow, 8);
+                    if (!"邮箱".equals(emailTitle)) {
+                        throw new Exception("excel模版第9列为:邮箱");
+                    }
+                    String weChatTitle = getContent(titleRow, 9);
+                    if (!"微信号".equals(weChatTitle)) {
+                        throw new Exception("excel模版第10列为:微信号");
+                    }
+                    String qqTitle = getContent(titleRow, 10);
+                    if (!"QQ号".equals(qqTitle)) {
+                        throw new Exception("excel模版第11列为:QQ号");
+                    }
+                    String nativePlaceTitle = getContent(titleRow, 11);
+                    if (!"籍贯".equals(nativePlaceTitle)) {
+                        throw new Exception("excel模版第12列为:籍贯");
+                    }
+                    String birthdayTitle = getContent(titleRow, 12);
+                    if (!"出生年月日".equals(birthdayTitle)) {
+                        throw new Exception("excel模版第13列为:出生年月日");
+                    }
+                    String cardTypeTitle = getContent(titleRow, 13);
+                    if (!"证件类型".equals(cardTypeTitle)) {
+                        throw new Exception("excel模版第14列为:证件类型");
+                    }
+                    String cardIdTitle = getContent(titleRow, 14);
+                    if (!"证件号码".equals(cardIdTitle)) {
+                        throw new Exception("excel模版第15列为:证件号码");
+                    }
+                    String politicalTitle = getContent(titleRow, 15);
+                    if (!"政治面貌".equals(politicalTitle)) {
+                        throw new Exception("excel模版第16列为:政治面貌");
+                    }
+                    String highSchoolTitle = getContent(titleRow, 16);
+                    if (!"高中毕业学校".equals(highSchoolTitle)) {
+                        throw new Exception("excel模版第17列为:高中毕业学校");
+                    }
+                    String enterTimeTitle = getContent(titleRow, 17);
+                    if (!"入学时间".equals(enterTimeTitle)) {
+                        throw new Exception("excel模版第18列为:入学时间");
+                    }
+                    String dormitoryCodeTitle = getContent(titleRow, 18);
+                    if (!"宿舍编号".equals(dormitoryCodeTitle)) {
+                        throw new Exception("excel模版第19列为:宿舍编号");
+                    }
+                    String hobbyTitle = getContent(titleRow, 19);
+                    if (!"兴趣爱好".equals(hobbyTitle)) {
+                        throw new Exception("excel模版第20列为:兴趣爱好");
+                    }
+                    String internshipTitle = getContent(titleRow, 20);
+                    if (!"项目/实训经历".equals(internshipTitle)) {
+                        throw new Exception("excel模版第21列为:项目/实训经历");
+                    }
+                    String homePorsionTitle = getContent(titleRow, 21);
+                    if (!"家庭联系人姓名".equals(homePorsionTitle)) {
+                        throw new Exception("excel模版第22列为:家庭联系人姓名");
+                    }
+                    String homePhoneTitle = getContent(titleRow, 22);
+                    if (!"家庭联系人电话".equals(homePhoneTitle)) {
+                        throw new Exception("excel模版第23列为:家庭联系人电话");
+                    }
+                    String homeAddressTitle = getContent(titleRow, 23);
+                    if (!"家庭住址".equals(homeAddressTitle)) {
+                        throw new Exception("excel模版第24列为:家庭住址");
+                    }
+                    String internshipCompanyTitle = getContent(titleRow, 24);
+                    if (!"实习单位名称".equals(internshipCompanyTitle)) {
+                        throw new Exception("excel模版第25列为:实习单位名称");
+                    }
+                    String internStartAtTitle = getContent(titleRow, 25);
+                    if (!"实习开始时间".equals(internStartAtTitle)) {
+                        throw new Exception("excel模版第26列为:实习开始时间");
+                    }
+                    String internEndAtTitle = getContent(titleRow, 26);
+                    if (!"实习结束时间".equals(internEndAtTitle)) {
+                        throw new Exception("excel模版第27列为:实习结束时间");
+                    }
+                    String internshipJobTitle = getContent(titleRow, 27);
+                    if (!"实习岗位".equals(internshipJobTitle)) {
+                        throw new Exception("excel模版第28列为:实习岗位");
+                    }
+                    String internshipSalaryTitle = getContent(titleRow, 28);
+                    if (!"实习月薪(元)".equals(internshipSalaryTitle)) {
+                        throw new Exception("excel模版第29列为:实习月薪(元)");
+                    }
+                    String dissertationTitle = getContent(titleRow, 29);
+                    if (!"毕业论文题目".equals(dissertationTitle)) {
+                        throw new Exception("excel模版第30列为:毕业论文题目");
+                    }
+                    String answerTimeTitle = getContent(titleRow, 30);
+                    if (!"毕业答辩时间".equals(answerTimeTitle)) {
+                        throw new Exception("excel模版第31列为:毕业答辩时间");
+                    }
+                    String credentialTimeTitle = getContent(titleRow, 31);
+                    if (!"取得学位证时间".equals(credentialTimeTitle)) {
+                        throw new Exception("excel模版第32列为:取得学位证时间");
+                    }
+                    String jobNameTitle = getContent(titleRow, 32);
+                    if (!"工作单位名称".equals(jobNameTitle)) {
+                        throw new Exception("excel模版第33列为:工作单位名称");
+                    }
+                    String jobStartAtTitle = getContent(titleRow, 33);
+                    if (!"工作开始时间".equals(jobStartAtTitle)) {
+                        throw new Exception("excel模版第34列为:工作开始时间");
+                    }
+                    String jobEndAtTitle = getContent(titleRow, 34);
+                    if (!"工作结束时间".equals(jobEndAtTitle)) {
+                        throw new Exception("excel模版第35列为:工作结束时间");
+                    }
+                    String jobAddressTitle = getContent(titleRow, 35);
+                    if (!"毕业后工作地".equals(jobAddressTitle)) {
+                        throw new Exception("excel模版第36列为:毕业后工作地");
+                    }
+                    String jobPositionTitle = getContent(titleRow, 36);
+                    if (!"工作岗位".equals(jobPositionTitle)) {
+                        throw new Exception("excel模版第37列为:工作岗位");
+                    }
+                    String jobSalaryTitle = getContent(titleRow, 37);
+                    if (!"工作月薪(元)".equals(jobSalaryTitle)) {
+                        throw new Exception("excel模版第38列为:工作月薪(元)");
+                    }
+                    String noteTitle = getContent(titleRow, 38);
+                    if (!"备注".equals(noteTitle)) {
+                        throw new Exception("excel模版第39列为:备注");
+                    }
+
+                } else {
+                    throw new Exception("EXCEL 解析出错");
+                }
+                for (int j = 2; j < rowNumber; j++) {
+                    Row row = sheet.getRow(j);
+                    if (row == null) {
+                        continue;
+                    }
+                    String[] contentArr = new String[titleRowCellNumber];
+                    Boolean isAdd = false;
+                    for (int k = 0; k < titleRowCellNumber; k++) {
+                        String content = getContent(row, k);
+                        contentArr[k] = StringTools.isBlank(content) ? "" : content;
+                        if (!isAdd && contentArr[k] != null) {
+                            isAdd = true;
+                        }
+                    }
+                    if (isAdd) {
+                        sheetList.add(contentArr);
+                    }
+                }
+                excelSheets.add(sheetList);
+            }
+        } catch (Exception ex) {
+            logger.error("read student user excel error", ex);
+            throw new Exception(ex.getMessage());
+        }
+        if (excelSheets == null) {
+            throw new Exception("EXCEL 解析出错,请按模板格式上传");
+        }
+        return excelSheets;
+    }
+
+
+
+
+
+    /**
+     * 获得execel的总行数,不包括空行
+     *
+     * @param workbook
+     * @return
+     */
+    public static long getTotalRowFromWorkbook(Workbook workbook, int titleRowNum) {
+        long totalRows = 0L;
+        for (int i = 0; i < workbook.getNumberOfSheets(); i++) {
+            int physicalNumberOfRows = workbook.getSheetAt(i).getPhysicalNumberOfRows();
+            totalRows += (physicalNumberOfRows - titleRowNum);
+        }
+        return totalRows;
+    }
+
+    /**
+     * 生成excel
+     *
+     * @param titleName
+     * @param columnName
+     * @param values
+     * @param filePath
+     * @return
+     */
+    public static String writeExcel(String titleName, String[] columnName, List<String[]> values, String filePath,String createType) {
+
+        FileOutputStream fos = null;
+
+        ByteArrayOutputStream os = null;
+        ByteArrayInputStream is = null;
+
+        HSSFWorkbook workbook = null;
+        try {
+
+            // 获取总列数
+            int countColumnNum = columnName.length;
+
+            // 创建Excel文档
+            workbook = new HSSFWorkbook();
+
+            HSSFCellStyle titleStyle = createTitleStyle(workbook); // 生成标题样式
+            HSSFCellStyle headStyle = createHeadStyle(workbook); // 生成头部样式
+            HSSFCellStyle commonDataStyle = createCommonDataStyle(workbook); // 生成一般数据样式
+
+            // sheet 对应一个工作页
+            HSSFSheet sheet = workbook.createSheet("工作表");
+            sheet.setDefaultColumnWidth(15);
+
+            // 行索引
+            int rowNumber = 0;
+
+            // 创建标题行
+            if (StringTools.isNotBlank(titleName)) {
+                HSSFRow row = sheet.createRow(rowNumber);
+                HSSFCell cell = row.createCell(0);
+                cell.setCellStyle(titleStyle);
+                cell.setCellValue(titleName);
+                // 合并标题行
+                sheet.addMergedRegion(new CellRangeAddress(0, 0, 0, columnName.length - 1));
+                rowNumber++;
+            }
+            int errorTipCellIndex = -1;
+            // 创建列名行
+            HSSFRow headRow = sheet.createRow(rowNumber);
+            for (int j = 0; j < countColumnNum; j++) {
+                HSSFCell cell = headRow.createCell(j);
+                cell.setCellValue(new HSSFRichTextString(columnName[j]));
+                if ("错误原因".equals(columnName[j])) {
+                    cell.setCellStyle(createErrorHeadStyle(workbook));
+                    errorTipCellIndex = j;
+                } else {
+                    cell.setCellStyle(headStyle);
+                }
+            }
+            rowNumber++;
+
+            // 在一行内循环
+            for (int i = 0; i < values.size(); i++) {
+                HSSFRow row = sheet.createRow(i + rowNumber);
+                String[] strs = values.get(i);
+                for (int j = 0; j < strs.length; j++) {
+                    HSSFCell cell = row.createCell(j);
+                    cell.setCellValue(strs[j]);
+                    if (errorTipCellIndex != -1 && j == errorTipCellIndex) {
+                        cell.setCellStyle(createErrorDataStyle(workbook));
+                    } else {
+                        cell.setCellStyle(commonDataStyle);
+                    }
+                }
+            }
+
+            boolean canWrite = false;
+            if(createType.equals(Constants.CREATE_EXCEL_TYPE_FILE)){
+                File file = new File(filePath);
+                File parentFile = file.getParentFile();
+                if (parentFile != null && !parentFile.exists()) {
+                    boolean mkdirs = parentFile.mkdirs();
+                    if (mkdirs) {
+                        canWrite = true;
+                    }
+                } else if (parentFile != null && parentFile.exists()) {
+                    canWrite = true;
+                }
+                if (canWrite) {
+                    fos = new FileOutputStream(filePath);
+                    workbook.write(fos);
+                    fos.flush();
+                    if (fos != null) {
+                        try {
+                            fos.close();
+                        } catch (IOException e1) {
+                            e1.printStackTrace();
+                        }
+                    }
+                    return file.getPath();
+                } else {
+                    logger.debug("excel can not write");
+                }
+            }
+            if(createType.equals(Constants.CREATE_EXCEL_TYPE_OSS)){
+                os = new ByteArrayOutputStream();
+                workbook.write(os);
+                is = new ByteArrayInputStream(os.toByteArray());
+
+                // 替换成minio OSSTools.uploadFileInput(is,filePath);
+                return null;
+            }
+
+        } catch (Exception e) {
+            e.printStackTrace();
+            if (fos != null) {
+                try {
+                    fos.close();
+                } catch (IOException e1) {
+                    e1.printStackTrace();
+                }
+            }
+        } finally {
+            if (fos != null) {
+                try {
+                    fos.close();
+                } catch (IOException e1) {
+                    e1.printStackTrace();
+                }
+            }
+        }
+        return null;
+    }
+
+    /**
+     * 标题单元格样式
+     */
+    private static HSSFCellStyle createTitleStyle(HSSFWorkbook workbook) {
+        // 普通数据单元格样式
+        HSSFCellStyle titleStyle = workbook.createCellStyle();
+        titleStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND);
+        titleStyle.setBorderBottom(BorderStyle.THIN);
+        titleStyle.setBorderLeft(BorderStyle.THIN);
+        titleStyle.setBorderRight(BorderStyle.THIN);
+        titleStyle.setBorderTop(BorderStyle.THIN);
+        titleStyle.setAlignment(HorizontalAlignment.CENTER);
+        titleStyle.setVerticalAlignment(VerticalAlignment.CENTER);
+        // 普通数据单元格字体
+        HSSFFont titleFont = workbook.createFont();
+        titleFont.setBold(false);
+        titleFont.setFontName("Microsoft YaHei");
+        titleFont.setFontHeightInPoints((short) 16);
+        titleFont.setBold(true);
+        // 把字体应用到当前的样式
+        titleStyle.setFont(titleFont);
+        return titleStyle;
+    }
+
+    /**
+     * 标题单元格样式
+     */
+    private static HSSFCellStyle createHeadStyle(HSSFWorkbook workbook) {
+        // 标题单元格样式
+        HSSFCellStyle headStyle = workbook.createCellStyle();
+        headStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND);
+        headStyle.setBorderBottom(BorderStyle.THIN);
+        headStyle.setBorderLeft(BorderStyle.THIN);
+        headStyle.setBorderRight(BorderStyle.THIN);
+        headStyle.setBorderTop(BorderStyle.THIN);
+        headStyle.setAlignment(HorizontalAlignment.CENTER);
+        // 标题单元格字体
+        HSSFFont headFont = workbook.createFont();
+        headFont.setFontHeightInPoints((short) 12);
+        headFont.setBold(false);
+        // 把字体应用到当前的样式
+        headStyle.setFont(headFont);
+        return headStyle;
+    }
+
+    /**
+     * 普通数据单元格样式
+     */
+    private static HSSFCellStyle createCommonDataStyle(HSSFWorkbook workbook) {
+        // 普通数据单元格样式
+        HSSFCellStyle commonDataStyle = workbook.createCellStyle();
+//        commonDataStyle.setFillForegroundColor(HSSFColor.WHITE.index);
+        commonDataStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND);
+        commonDataStyle.setBorderBottom(BorderStyle.THIN);
+        commonDataStyle.setBorderLeft(BorderStyle.THIN);
+        commonDataStyle.setBorderRight(BorderStyle.THIN);
+        commonDataStyle.setBorderTop(BorderStyle.THIN);
+        commonDataStyle.setAlignment(HorizontalAlignment.CENTER);
+        commonDataStyle.setVerticalAlignment(VerticalAlignment.CENTER);
+        // 普通数据单元格字体
+        HSSFFont commonDataFont = workbook.createFont();
+        commonDataFont.setBold(false);
+        commonDataFont.setFontHeightInPoints((short) 12);
+        // 把字体应用到当前的样式
+        commonDataStyle.setFont(commonDataFont);
+        return commonDataStyle;
+    }
+
+
+    public static HSSFCellStyle createForMulaStyle(HSSFWorkbook workbook){
+        HSSFCellStyle commonDataStyle = workbook.createCellStyle();
+//        commonDataStyle.setFillForegroundColor(HSSFColor.WHITE.index);
+        commonDataStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND);
+        commonDataStyle.setBorderBottom(BorderStyle.THIN);
+        commonDataStyle.setBorderLeft(BorderStyle.THIN);
+        commonDataStyle.setBorderRight(BorderStyle.THIN);
+        commonDataStyle.setBorderTop(BorderStyle.THIN);
+        commonDataStyle.setAlignment(HorizontalAlignment.CENTER);
+        commonDataStyle.setVerticalAlignment(VerticalAlignment.CENTER);
+        return commonDataStyle;
+    }
+
+    private static HSSFCellStyle createErrorHeadStyle(HSSFWorkbook workbook) {
+        // 标题单元格样式
+        HSSFCellStyle headStyle = workbook.createCellStyle();
+//        headStyle.setFillForegroundColor(HSSFColor.LIGHT_GREEN.index);
+        headStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND);
+        headStyle.setBorderBottom(BorderStyle.THIN);
+        headStyle.setBorderLeft(BorderStyle.THIN);
+        headStyle.setBorderRight(BorderStyle.THIN);
+        headStyle.setBorderTop(BorderStyle.THIN);
+        headStyle.setAlignment(HorizontalAlignment.CENTER);
+        // 标题单元格字体
+        HSSFFont headFont = workbook.createFont();
+        headFont.setFontHeightInPoints((short) 12);
+        headFont.setBold(true);
+        headFont.setColor(Font.COLOR_RED);
+
+        // 把字体应用到当前的样式
+        headStyle.setFont(headFont);
+        return headStyle;
+    }
+
+    /**
+     * 错误提示单元格样式
+     */
+    private static CellStyle createErrorDataStyle(Workbook workbook) {
+        // 普通数据单元格样式
+        CellStyle commonDataStyle = workbook.createCellStyle();
+        commonDataStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND);
+        commonDataStyle.setBorderBottom(BorderStyle.THIN);
+        commonDataStyle.setBorderLeft(BorderStyle.THIN);
+        commonDataStyle.setBorderRight(BorderStyle.THIN);
+        commonDataStyle.setBorderTop(BorderStyle.THIN);
+        commonDataStyle.setAlignment(HorizontalAlignment.CENTER);
+        commonDataStyle.setVerticalAlignment(VerticalAlignment.CENTER);
+        // 普通数据单元格字体
+        Font commonDataFont = workbook.createFont();
+        commonDataFont.setBold(false);
+        commonDataFont.setFontHeightInPoints((short) 12);
+        commonDataFont.setColor(Font.COLOR_RED);
+        // 把字体应用到当前的样式
+        commonDataStyle.setFont(commonDataFont);
+        return commonDataStyle;
+    }
+
+    private boolean checkArrayIsNotEmpty(String[] array){
+        boolean flag = false;
+        if (array != null || array.length != 0) {
+            for (int i = 0; i < array.length; i++) {
+                String data = array[i];
+                if (StringTools.isNotBlank(data)) {
+                    flag = true;
+                    break;
+                }
+            }
+        }
+        return flag;
+    }
+
+    public static File exportStudentTranscript(String titleName, String[] columnName, List<String[]> values, OutputStream out) {
+        FileOutputStream fos = null;
+        HSSFWorkbook workbook = null;
+        try {
+
+            // 获取总列数
+            int countColumnNum = columnName.length;
+
+            // 创建Excel文档
+            workbook = new HSSFWorkbook();
+
+            HSSFCellStyle titleStyle = createTitleStyle(workbook); // 生成标题样式
+            HSSFCellStyle headStyle = createHeadStyle(workbook); // 生成头部样式
+            HSSFCellStyle commonDataStyle = createCommonDataStyle(workbook); // 生成一般数据样式
+            HSSFCellStyle forMulaStyle = createForMulaStyle(workbook);
+            // sheet 对应一个工作页
+            HSSFSheet sheet = workbook.createSheet("工作表");
+            sheet.setDefaultColumnWidth(20);
+
+            // 行索引
+            int rowNumber = 0;
+
+            // 创建标题行
+            if (StringTools.isNotBlank(titleName)) {
+                HSSFRow row = sheet.createRow(rowNumber);
+                HSSFCell cell = row.createCell(0);
+                cell.setCellStyle(titleStyle);
+                cell.setCellValue(titleName);
+                // 合并标题行
+                sheet.addMergedRegion(new CellRangeAddress(0, 0, 0, columnName.length - 1));
+                rowNumber++;
+            }
+            int errorTipCellIndex = -1;
+            // 创建列名行
+            HSSFRow headRow = sheet.createRow(rowNumber);
+            for (int j = 0; j < countColumnNum; j++) {
+                HSSFCell cell = headRow.createCell(j);
+                cell.setCellValue(new HSSFRichTextString(columnName[j]));
+                if ("错误提示".equals(columnName[j])){
+                    cell.setCellStyle(createErrorHeadStyle(workbook));
+                    errorTipCellIndex = j;
+                }else{
+                    cell.setCellStyle(headStyle);
+                }
+            }
+            rowNumber++;
+
+            // 在一行内循环
+            for (int i = 0; i < values.size(); i++) {
+                HSSFRow row = sheet.createRow(i + rowNumber);
+                String[] strs = values.get(i);
+                for (int j = 0; j < countColumnNum; j++) {
+                    HSSFCell cell = row.createCell(j);
+                    if (j==7){
+                        cell.setCellFormula("F"+(i+3)+"+G"+(i+3));
+                        cell.setCellStyle(forMulaStyle);
+//                        cell.setCellType(Cell.CELL_TYPE_FORMULA);
+                    }else{
+                        cell.setCellValue(strs[j]);
+                        if (errorTipCellIndex!=-1 && j==errorTipCellIndex){
+                            cell.setCellStyle(createErrorDataStyle(workbook));
+                        }else{
+                            cell.setCellStyle(commonDataStyle);
+                        }
+                    }
+
+                }
+            }
+
+            workbook.write(out);
+            out.flush();
+
+            if (out != null) {
+                try {
+                    out.close();
+                } catch (IOException e1) {
+                    e1.printStackTrace();
+                }
+            }
+
+            if (workbook != null) {
+                try {
+                    workbook.close();
+                } catch (IOException e1) {
+                    e1.printStackTrace();
+                }
+            }
+
+        } catch (Exception e) {
+            e.printStackTrace();
+            if (fos != null) {
+                try {
+                    fos.close();
+                } catch (IOException e1) {
+                    e1.printStackTrace();
+                }
+            }
+
+            if (workbook != null) {
+                try {
+                    workbook.close();
+                } catch (IOException e1) {
+                    e1.printStackTrace();
+                }
+            }
+        } finally {
+
+            if (fos != null) {
+                try {
+                    fos.close();
+                } catch (IOException e1) {
+                    e1.printStackTrace();
+                }
+            }
+
+            if (workbook != null) {
+                try {
+                    workbook.close();
+                } catch (IOException e) {
+                    e.printStackTrace();
+                }
+            }
+
+            if(out!=null){
+                try {
+                    out.close();
+                } catch (IOException e) {
+                    e.printStackTrace();
+                }
+            }
+        }
+        return null;
+    }
+
+    public static File exportStudent(String titleName, String[] columnName, List<String[]> values, OutputStream out) {
+        FileOutputStream fos = null;
+        HSSFWorkbook workbook = null;
+        try {
+
+            // 获取总列数
+            int countColumnNum = columnName.length;
+
+            // 创建Excel文档
+            workbook = new HSSFWorkbook();
+
+            HSSFCellStyle titleStyle = createTitleStyle(workbook); // 生成标题样式
+            HSSFCellStyle headStyle = createHeadStyle(workbook); // 生成头部样式
+            HSSFCellStyle commonDataStyle = createCommonDataStyle(workbook); // 生成一般数据样式
+
+            // sheet 对应一个工作页
+            HSSFSheet sheet = workbook.createSheet("工作表");
+            sheet.setDefaultColumnWidth(20);
+
+            // 行索引
+            int rowNumber = 0;
+
+            // 创建标题行
+            if (StringTools.isNotBlank(titleName)) {
+                HSSFRow row = sheet.createRow(rowNumber);
+                HSSFCell cell = row.createCell(0);
+                cell.setCellStyle(titleStyle);
+                cell.setCellValue(titleName);
+                // 合并标题行
+                sheet.addMergedRegion(new CellRangeAddress(0, 0, 0, columnName.length - 1));
+                rowNumber++;
+            }
+            int errorTipCellIndex = -1;
+            // 创建列名行
+            HSSFRow headRow = sheet.createRow(rowNumber);
+            for (int j = 0; j < countColumnNum; j++) {
+                HSSFCell cell = headRow.createCell(j);
+                cell.setCellValue(new HSSFRichTextString(columnName[j]));
+                if ("错误提示".equals(columnName[j])){
+                    cell.setCellStyle(createErrorHeadStyle(workbook));
+                    errorTipCellIndex = j;
+                }else{
+                    cell.setCellStyle(headStyle);
+                }
+            }
+            rowNumber++;
+
+            // 在一行内循环
+            for (int i = 0; i < values.size(); i++) {
+                HSSFRow row = sheet.createRow(i + rowNumber);
+                String[] strs = values.get(i);
+                for (int j = 0; j < countColumnNum; j++) {
+                    HSSFCell cell = row.createCell(j);
+                    cell.setCellValue(strs[j]);
+                    if (errorTipCellIndex!=-1 && j==errorTipCellIndex){
+                        cell.setCellStyle(createErrorDataStyle(workbook));
+                    }else{
+                        cell.setCellStyle(commonDataStyle);
+                    }
+                }
+            }
+
+            workbook.write(out);
+            out.flush();
+
+            if (out != null) {
+                try {
+                    out.close();
+                } catch (IOException e1) {
+                    e1.printStackTrace();
+                }
+            }
+
+            if (workbook != null) {
+                try {
+                    workbook.close();
+                } catch (IOException e1) {
+                    e1.printStackTrace();
+                }
+            }
+
+        } catch (Exception e) {
+            e.printStackTrace();
+            if (fos != null) {
+                try {
+                    fos.close();
+                } catch (IOException e1) {
+                    e1.printStackTrace();
+                }
+            }
+
+            if (workbook != null) {
+                try {
+                    workbook.close();
+                } catch (IOException e1) {
+                    e1.printStackTrace();
+                }
+            }
+        } finally {
+
+            if (fos != null) {
+                try {
+                    fos.close();
+                } catch (IOException e1) {
+                    e1.printStackTrace();
+                }
+            }
+
+            if (workbook != null) {
+                try {
+                    workbook.close();
+                } catch (IOException e) {
+                    e.printStackTrace();
+                }
+            }
+
+            if(out!=null){
+                try {
+                    out.close();
+                } catch (IOException e) {
+                    e.printStackTrace();
+                }
+            }
+        }
+        return null;
+    }
+
+    public static File exportClassTranscript(String titleName, String[] columnName, List<String[]> values, OutputStream out) {
+        FileOutputStream fos = null;
+        HSSFWorkbook workbook = null;
+        try {
+
+            // 获取总列数
+            int countColumnNum = columnName.length;
+
+            // 创建Excel文档
+            workbook = new HSSFWorkbook();
+
+            HSSFCellStyle titleStyle = createTitleStyle(workbook); // 生成标题样式
+            HSSFCellStyle headStyle = createHeadStyle(workbook); // 生成头部样式
+            HSSFCellStyle commonDataStyle = createCommonDataStyle(workbook); // 生成一般数据样式
+            HSSFCellStyle forMulaStyle = createForMulaStyle(workbook);
+            // sheet 对应一个工作页
+            HSSFSheet sheet = workbook.createSheet("工作表");
+            sheet.setDefaultColumnWidth(20);
+
+            // 行索引
+            int rowNumber = 0;
+
+            // 创建标题行
+            if (StringTools.isNotBlank(titleName)) {
+                HSSFRow row = sheet.createRow(rowNumber);
+                HSSFCell cell = row.createCell(0);
+                cell.setCellStyle(titleStyle);
+                cell.setCellValue(titleName);
+                // 合并标题行
+                sheet.addMergedRegion(new CellRangeAddress(0, 0, 0, columnName.length - 1));
+                rowNumber++;
+            }
+            int errorTipCellIndex = -1;
+            // 创建列名行
+            HSSFRow headRow = sheet.createRow(rowNumber);
+            for (int j = 0; j < countColumnNum; j++) {
+                HSSFCell cell = headRow.createCell(j);
+                cell.setCellValue(new HSSFRichTextString(columnName[j]));
+                if ("错误提示".equals(columnName[j])){
+                    cell.setCellStyle(createErrorHeadStyle(workbook));
+                    errorTipCellIndex = j;
+                }else{
+                    cell.setCellStyle(headStyle);
+                }
+            }
+            rowNumber++;
+
+            // 在一行内循环
+            for (int i = 0; i < values.size(); i++) {
+                HSSFRow row = sheet.createRow(i + rowNumber);
+                String[] strs = values.get(i);
+                for (int j = 0; j < countColumnNum; j++) {
+                    HSSFCell cell = row.createCell(j);
+                    cell.setCellValue(strs[j]);
+                    if (errorTipCellIndex!=-1 && j==errorTipCellIndex){
+                        cell.setCellStyle(createErrorDataStyle(workbook));
+                    }else{
+                        cell.setCellStyle(commonDataStyle);
+                    }
+                }
+            }
+
+            workbook.write(out);
+            out.flush();
+
+            if (out != null) {
+                try {
+                    out.close();
+                } catch (IOException e1) {
+                    e1.printStackTrace();
+                }
+            }
+
+            if (workbook != null) {
+                try {
+                    workbook.close();
+                } catch (IOException e1) {
+                    e1.printStackTrace();
+                }
+            }
+
+        } catch (Exception e) {
+            e.printStackTrace();
+            if (fos != null) {
+                try {
+                    fos.close();
+                } catch (IOException e1) {
+                    e1.printStackTrace();
+                }
+            }
+
+            if (workbook != null) {
+                try {
+                    workbook.close();
+                } catch (IOException e1) {
+                    e1.printStackTrace();
+                }
+            }
+        } finally {
+
+            if (fos != null) {
+                try {
+                    fos.close();
+                } catch (IOException e1) {
+                    e1.printStackTrace();
+                }
+            }
+
+            if (workbook != null) {
+                try {
+                    workbook.close();
+                } catch (IOException e) {
+                    e.printStackTrace();
+                }
+            }
+
+            if(out!=null){
+                try {
+                    out.close();
+                } catch (IOException e) {
+                    e.printStackTrace();
+                }
+            }
+        }
+        return null;
+    }
+
+    public List<List<String[]>> readQuestionExcel(Workbook workBook) throws Exception {
+        int readSheetNumber = workBook.getNumberOfSheets();
+        ArrayList excelSheets = new ArrayList();
+
+        try {
+            for(int i = 0; i < readSheetNumber; ++i) {
+                Sheet sheet = workBook.getSheetAt(i);
+                int rowNumber = sheet.getPhysicalNumberOfRows();
+                if (rowNumber != 0) {
+                    Row titleRow = sheet.getRow(0);
+                    if (!this.checkTitle(titleRow).booleanValue()) {
+                        throw new Exception("EXCEL 解析出错,请按模板格式上传");
+                    }
+
+                    List<String[]> sheetList = new ArrayList();
+                    int titleRowCellNumber = titleRow.getLastCellNum();
+
+                    for(int j = 1; j < rowNumber; ++j) {
+                        Row row = sheet.getRow(j);
+                        if (row != null) {
+                            String[] contentArr = new String[titleRowCellNumber];
+                            Boolean isAdd = false;
+
+                            for(int k = 0; k < titleRowCellNumber; ++k) {
+                                String content = getContentWithBlank(row, k);
+                                contentArr[k] = StringTools.isBlank(content) ? "" : content;
+                                if (!isAdd.booleanValue()) {
+                                    isAdd = true;
+                                }
+                            }
+
+                            if (isAdd.booleanValue()) {
+                                sheetList.add(contentArr);
+                            }
+                        }
+                    }
+
+                    excelSheets.add(sheetList);
+                }
+            }
+        } catch (Exception var16) {
+            logger.error("read question excel error", var16);
+            throw new Exception("EXCEL 解析出错");
+        }
+
+        if (excelSheets == null) {
+            throw new Exception("EXCEL 解析出错,请按模板格式上传");
+        } else {
+            return excelSheets;
+        }
+    }
+
+    private Boolean checkTitle(Row titleRow) {
+        int titleRowCellNumber = titleRow.getLastCellNum();
+        if (titleRowCellNumber >= 7 && titleRowCellNumber <= 17) {
+            String typeTitle = getContent(titleRow, 0);
+            if (!"类型(必填)".equals(typeTitle)) {
+                return false;
+            } else {
+                String nameTitle = getContent(titleRow, 1);
+                if (!"标题(必填)".equals(nameTitle)) {
+                    return false;
+                } else {
+                    String ATitle = getContent(titleRow, 2);
+                    if (!"A(必填)".equals(ATitle)) {
+                        return false;
+                    } else {
+                        String BTitle = getContent(titleRow, 3);
+                        if (!"B(必填)".equals(BTitle)) {
+                            return false;
+                        } else {
+                            String levelTitle = getContent(titleRow, titleRowCellNumber - 5);
+                            if (!"难度(必填)".equals(levelTitle)) {
+                                return false;
+                            } else {
+                                String answerTitle = getContent(titleRow, titleRowCellNumber - 7);
+                                if (!"答案(必填)".equals(answerTitle)) {
+                                    return false;
+                                } else {
+                                    String showHtml = getContent(titleRow, titleRowCellNumber - 4);
+                                    if (!"是否显示html(选填)".equals(showHtml)) {
+                                        return false;
+                                    } else {
+                                        String parentFolder = getContent(titleRow, titleRowCellNumber - 2);
+                                        if (!"所属主目录(选填)".equals(parentFolder)) {
+                                            return false;
+                                        } else {
+                                            String childFolder = getContent(titleRow, titleRowCellNumber - 1);
+                                            if (!"所属子目录(选填)".equals(childFolder)) {
+                                                return false;
+                                            } else {
+                                                String businessType = getContent(titleRow, titleRowCellNumber - 3);
+                                                return !"内容类型(选填)".equals(businessType) ? false : true;
+                                            }
+                                        }
+                                    }
+                                }
+                            }
+                        }
+                    }
+                }
+            }
+        } else {
+            return false;
+        }
+    }
+
+    public static String getContentWithBlank(Row row, int k) {
+        String content = null;
+        Cell cell = row.getCell(k);
+        if (cell != null) {
+//            cell.setCellType(1);
+            content = cell.getStringCellValue().replaceAll("\t|\r|\n", "");
+        }
+
+        return content;
+    }
+}

+ 72 - 0
energy-manage-common/src/main/java/com/energy/manage/common/util/ExceptionTools.java

@@ -0,0 +1,72 @@
+package com.energy.manage.common.util;
+
+import java.io.PrintWriter;
+import java.io.StringWriter;
+
+/**
+ * 关于异常的工具类.
+ * <p>
+ * 参考了guava的Throwables。
+ *
+ * @author calvin
+ */
+public class ExceptionTools {
+
+  /**
+   * 将CheckedException转换为UncheckedException.
+   */
+  public static RuntimeException unchecked(Throwable ex) {
+    if (ex instanceof RuntimeException) {
+      return (RuntimeException) ex;
+    } else {
+      return new RuntimeException(ex);
+    }
+  }
+
+  /**
+   * 将ErrorStack转化为String.
+   */
+  public static String getStackTraceAsString(Throwable ex) {
+    StringWriter stringWriter = new StringWriter();
+    ex.printStackTrace(new PrintWriter(stringWriter));
+    return stringWriter.toString();
+  }
+
+  /**
+   * 获取组合本异常信息与底层异常信息的异常描述, 适用于本异常为统一包装异常类,底层异常才是根本原因的情况。
+   */
+  public static String getErrorMessageWithNestedException(Throwable ex) {
+    Throwable nestedException = ex.getCause();
+    return new StringBuilder().append(ex.getMessage()).append(" nested exception is ")
+            .append(nestedException.getClass().getName()).append(":").append(nestedException.getMessage())
+            .toString();
+  }
+
+  /**
+   * 获取异常的Root Cause.
+   */
+  public static Throwable getRootCause(Throwable ex) {
+    Throwable cause;
+    while ((cause = ex.getCause()) != null) {
+      ex = cause;
+    }
+    return ex;
+  }
+
+  /**
+   * 判断异常是否由某些底层的异常引起.
+   */
+  @SafeVarargs
+  public static boolean isCausedBy(Exception ex, Class<? extends Exception>... causeExceptionClasses) {
+    Throwable cause = ex;
+    while (cause != null) {
+      for (Class<? extends Exception> causeClass : causeExceptionClasses) {
+        if (causeClass.isInstance(cause)) {
+          return true;
+        }
+      }
+      cause = cause.getCause();
+    }
+    return false;
+  }
+}

+ 495 - 0
energy-manage-common/src/main/java/com/energy/manage/common/util/HttpUtils.java

@@ -0,0 +1,495 @@
+//package com.energy.manage.common.util;
+//
+//import com.alibaba.fastjson.JSONObject;
+//import org.apache.http.HttpEntity;
+//import org.apache.http.HttpResponse;
+//import org.apache.http.HttpStatus;
+//import org.apache.http.NameValuePair;
+//import org.apache.http.client.entity.UrlEncodedFormEntity;
+//import org.apache.http.client.methods.*;
+//import org.apache.http.client.utils.URIBuilder;
+//import org.apache.http.entity.StringEntity;
+//import org.apache.http.impl.client.CloseableHttpClient;
+//import org.apache.http.impl.client.DefaultHttpClient;
+//import org.apache.http.impl.client.HttpClients;
+//import org.apache.http.impl.conn.PoolingHttpClientConnectionManager;
+//import org.apache.http.message.BasicNameValuePair;
+//import org.apache.http.util.EntityUtils;
+//import org.slf4j.Logger;
+//import org.slf4j.LoggerFactory;
+//import org.springframework.util.CollectionUtils;
+//import org.springframework.util.StringUtils;
+//
+//import javax.servlet.http.HttpServletRequest;
+//import java.io.*;
+//import java.net.URISyntaxException;
+//import java.net.URL;
+//import java.net.URLConnection;
+//import java.net.URLDecoder;
+//import java.util.ArrayList;
+//import java.util.List;
+//import java.util.Map;
+//
+///**
+// * @author LIKE
+// * @date 2017年1月18日 下午6:07:06
+// */
+//public class HttpUtils {
+//    private static Logger logger = LoggerFactory.getLogger(HttpUtils.class);
+//    private static PoolingHttpClientConnectionManager cm;
+//    private static String DEFAULT_ENCODING = "UTF-8";
+//    private final static int CONNECT_TIMEOUT = 5000;
+//
+//    private static void init() {
+//        if (cm == null) {
+//            cm = new PoolingHttpClientConnectionManager();
+//            // 整个链接池最大链接数
+//            cm.setMaxTotal(50);
+//            // 每个路由最大链接数,默认是2
+//            cm.setDefaultMaxPerRoute(5);
+//        }
+//    }
+//
+//    /**
+//     * GET 请求
+//     *
+//     * @param url
+//     * @return
+//     */
+//    public static String httpGetRequest(String url) {
+//        return httpGetRequest(url, null, null);
+//    }
+//
+//    /**
+//     * GET 带参 请求
+//     *
+//     * @param url
+//     * @param params
+//     * @return
+//     */
+//    public static String httpGetRequest(String url, Map<String, Object> params) {
+//        return httpGetRequest(url, null, params);
+//    }
+//
+//    /**
+//     * Post 请求
+//     *
+//     * @param url
+//     * @return
+//     */
+//    public static String httpPostRequest(String url) {
+//        return httpPostRequest(url, null, "");
+//    }
+//
+//    /**
+//     * POST 带参 请求
+//     *
+//     * @param url
+//     * @param params
+//     * @return
+//     * @throws UnsupportedEncodingException
+//     */
+//    public static String httpPostRequest(String url, Map<String, Object> params) {
+//        return httpPostRequest(url, null, params);
+//    }
+//
+//    /**
+//     * Get 带参 带header 请求
+//     *
+//     * @param url
+//     * @param headers
+//     * @param params
+//     * @return
+//     * @throws URISyntaxException
+//     */
+//    public static String httpGetRequest(String url, Map<String, Object> headers, Map<String, Object> params) {
+//        // 创建连接地址
+//        if (StringUtils.isEmpty(url)) {
+//            return null;
+//        }
+//        URIBuilder ub = new URIBuilder();
+//        ub.setPath(url);
+//        // 拼接参数
+//        if (!CollectionUtils.isEmpty(params)) {
+//            List<NameValuePair> pairs = covertParams2NVPS(params);
+//            ub.setParameters(pairs);
+//        }
+//        try {
+//            // 构建请求内容
+//            HttpGet httpGet = new HttpGet(ub.build());
+//            // 自定义header内容
+//            if (!CollectionUtils.isEmpty(headers)) {
+//                for (Map.Entry<String, Object> param : headers.entrySet()) {
+//                    httpGet.addHeader(param.getKey(), String.valueOf(param.getValue()));
+//                }
+//            }
+//            return getResult(httpGet);
+//        } catch (URISyntaxException ue) {
+//            logger.error(ue.getMessage(), ue);
+//        } catch (IOException ie) {
+//            logger.error(ie.getMessage(), ie);
+//        } catch (Exception ex) {
+//            logger.error(ex.getMessage(), ex);
+//        }
+//        return null;
+//    }
+//
+//
+//    /**
+//     * POST 带参 带Header 请求
+//     *
+//     * @param url
+//     * @param headers
+//     * @param params
+//     * @return
+//     * @throws UnsupportedEncodingException
+//     */
+//    public static String httpPostRequest(String url, Map<String, Object> headers, Map<String, Object> params) {
+//        if (StringUtils.isEmpty(url)) {
+//            return null;
+//        }
+//        HttpPost httpPost = new HttpPost(url);
+//        if (!CollectionUtils.isEmpty(headers)) {
+//            for (Map.Entry<String, Object> param : headers.entrySet()) {
+//                httpPost.addHeader(param.getKey(), String.valueOf(param.getValue()));
+//            }
+//        }
+//        try {
+//            if (!CollectionUtils.isEmpty(params)) {
+//                List<NameValuePair> pairs = covertParams2NVPS(params);
+//                httpPost.setEntity(new UrlEncodedFormEntity(pairs, "UTF-8"));
+//            }
+//            return getResult(httpPost);
+//        } catch (UnsupportedEncodingException uee) {
+//            logger.error(uee.getMessage(), uee);
+//        } catch (IOException ie) {
+//            logger.error(ie.getMessage(), ie);
+//        } catch (Exception ex) {
+//            logger.error(ex.getMessage(), ex);
+//        }
+//        return null;
+//    }
+//
+//    /**
+//     * POST 带参 带Header 请求
+//     *
+//     * @param url
+//     * @param headers
+//     * @param params
+//     * @return
+//     * @throws UnsupportedEncodingException
+//     */
+//    public static String httpPostRequest(String url, Map<String, Object> headers, String params) {
+//        if (StringUtils.isEmpty(url)) {
+//            return null;
+//        }
+//        HttpPost httpPost = new HttpPost(url);
+//        if (!CollectionUtils.isEmpty(headers)) {
+//            for (Map.Entry<String, Object> param : headers.entrySet()) {
+//                httpPost.addHeader(param.getKey(), String.valueOf(param.getValue()));
+//            }
+//        }
+//        try {
+//            if (!StringUtils.isEmpty(params)) {
+//                StringEntity stringEntity = new StringEntity(params, "UTF-8");
+//                httpPost.setEntity(stringEntity);
+//            }
+//            return getResult(httpPost);
+//        } catch (UnsupportedEncodingException uee) {
+//            logger.error(uee.getMessage(), uee);
+//        } catch (IOException ie) {
+//            logger.error(ie.getMessage(), ie);
+//        } catch (Exception ex) {
+//            logger.error(ex.getMessage(), ex);
+//        }
+//        return null;
+//    }
+//
+//    /**
+//     * DELETE 带参 带Header 请求
+//     *
+//     * @param url
+//     * @param headers
+//     * @return
+//     * @throws UnsupportedEncodingException
+//     */
+//    public static String httpDeleteRequest(String url, Map<String, Object> headers) {
+//        if (StringUtils.isEmpty(url)) {
+//            return null;
+//        }
+//        HttpDelete httpDelete = new HttpDelete(url);
+//        if (!CollectionUtils.isEmpty(headers)) {
+//            for (String key : headers.keySet()) {
+//                httpDelete.addHeader(key, String.valueOf(headers.get(key)));
+//            }
+//        }
+//        try {
+//            return getResult(httpDelete);
+//        } catch (UnsupportedEncodingException uee) {
+//            logger.error(uee.getMessage(), uee);
+//        } catch (IOException ie) {
+//            logger.error(ie.getMessage(), ie);
+//        } catch (Exception ex) {
+//            logger.error(ex.getMessage(), ex);
+//        }
+//        return null;
+//    }
+//
+//    /**
+//     * 内部方法,构建参数链
+//     *
+//     * @param params
+//     * @return
+//     */
+//    private static List<NameValuePair> covertParams2NVPS(Map<String, Object> params) {
+//        List<NameValuePair> pairs = new ArrayList<NameValuePair>();
+//        for (Map.Entry<String, Object> param : params.entrySet()) {
+//            pairs.add(new BasicNameValuePair(param.getKey(), String.valueOf(param.getValue())));
+//        }
+//        return pairs;
+//    }
+//
+//    private static CloseableHttpClient getHttpClient() {
+//        init();
+//        return HttpClients.custom().setConnectionManager(cm).build();
+//    }
+//
+//    /**
+//     * 内部方法,请求执行体
+//     *
+//     * @param request
+//     * @return
+//     * @throws IOException
+//     */
+//    private static String getResult(HttpRequestBase request) throws IOException {
+//        CloseableHttpClient httpClient = getHttpClient();
+//        CloseableHttpResponse resp = httpClient.execute(request);
+//        //响应状态
+//        if (resp.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {
+//            long contentLength = resp.getEntity().getContentLength();
+//            if (contentLength == 0) {
+//                return "";
+//            }
+//            // 响应实体
+//            HttpEntity entity = resp.getEntity();
+//            String result = EntityUtils.toString(entity);
+//            resp.close();
+//            logger.info("httpClient 结果=>:" + result);
+//            return result;
+//        } else {
+//            logger.error(HttpUtils.class.getName() + " getResult error:" + resp.getStatusLine().getStatusCode());
+//        }
+//        // 响应实体
+//        HttpEntity entity = resp.getEntity();
+//        if (entity != null) {
+//            // long len = entity.getContentLength();// -1 表示长度未知
+//            String result = EntityUtils.toString(entity);
+//            resp.close();
+//            logger.info("httpClient 结果=>:" + result);
+//            return result;
+//        }
+//        return null;
+//    }
+//
+//    /**
+//     * httpPost
+//     * @param url
+//     * @param jsonParam
+//     * @param noNeedResponse
+//     * @return
+//     */
+//    public static JSONObject httpPost(String url, JSONObject jsonParam, boolean noNeedResponse) {
+//        CloseableHttpClient httpClient = HttpClients.createDefault();
+//        JSONObject jsonResult = null;
+//        HttpPost method = new HttpPost(url);
+//        try {
+//            if (jsonParam != null) {
+//                // 解决中文乱码问题
+//                StringEntity entity = new StringEntity(jsonParam.toString(), "utf-8");
+//                entity.setContentEncoding("UTF-8");
+//                entity.setContentType("application/json");
+//                method.setEntity(entity);
+//            }
+//            HttpResponse result = httpClient.execute(method);
+//            url = URLDecoder.decode(url, "UTF-8");
+//            /** 请求发送成功,并得到响应 **/
+//            if (result.getStatusLine().getStatusCode() == 200) {
+//                String str = "";
+//                try {
+//                    /** 读取服务器返回过来的json字符串数据 **/
+//                    str = EntityUtils.toString(result.getEntity());
+//                    if (noNeedResponse) {
+//                        return null;
+//                    }
+//                    /** 把json字符串转换成json对象 **/
+//                    jsonResult = JSONObject.parseObject(str);
+//                } catch (Exception e) {
+//                    logger.error("post请求提交失败:" + url, e);
+//                }
+//            }
+//        } catch (Exception e) {
+//            e.printStackTrace();
+//        }
+//        return jsonResult;
+//    }
+//
+//
+//    /**
+//     * 发送get请求
+//     *
+//     * @param
+//     * @return
+//     */
+//    public static String httpGet(String url) {
+//        // get请求返回结果
+//        JSONObject jsonResult = null;
+//        String str = null;
+//        try {
+//            DefaultHttpClient client = new DefaultHttpClient();
+//            // 发送get请求
+//            HttpGet request = new HttpGet(url);
+//            HttpResponse response = client.execute(request);
+//            // 请求发送成功,并得到响应
+//            if (response.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {
+//                // 读取服务器返回过来的json字符串数据
+//                str = EntityUtils.toString(response.getEntity());
+//                url = URLDecoder.decode(url, "UTF-8");
+//            } else {
+//                logger.error("get请求提交失败:" + url);
+//            }
+//        } catch (IOException e) {
+//            logger.error("get请求提交失败:" + url, e);
+//        }
+//        return str;
+//    }
+//
+//    /**
+//     * 内部方法,获取客户端ip
+//     */
+//    public static String getIpAddress(HttpServletRequest request) {
+//        String ip = request.getHeader("X-Real-IP");
+//        if (!(StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip))) {
+//            return ip;
+//        }
+//        ip = request.getHeader("x-real-ip");
+//        if (!(StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip))) {
+//            return ip;
+//        }
+//        ip = request.getHeader("X-Forwarded-For");
+//        if (!(StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip))) {
+//            return ip;
+//        }
+//        ip = request.getHeader("x-forwarded-for");
+//        if (!(StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip))) {
+//            return ip;
+//        }
+//        ip = request.getHeader("Proxy-Client-IP");
+//        if (!(StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip))) {
+//            return ip;
+//        }
+//        ip = request.getHeader("WL-Proxy-Client-IP");
+//        if (!(StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip))) {
+//            return ip;
+//        }
+//        ip = request.getHeader("HTTP_CLIENT_IP");
+//        if (!(StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip))) {
+//            return ip;
+//        }
+//        ip = request.getHeader("HTTP_X_FORWARDED_FOR");
+//        if (!(StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip))) {
+//            return ip;
+//        }
+//        ip = request.getRemoteAddr();
+//        if (!(StringUtils.isEmpty(ip) || "unknown".equalsIgnoreCase(ip))) {
+//            return ip;
+//        }
+//        return ip;
+//    }
+//
+//    public static String postData(String urlStr, String data) {
+//        BufferedReader reader = null;
+//        try {
+//            URL url = new URL(urlStr);
+//            URLConnection conn = url.openConnection();
+//            conn.setDoOutput(true);
+//            conn.setConnectTimeout(CONNECT_TIMEOUT);
+//            conn.setReadTimeout(CONNECT_TIMEOUT);
+//            OutputStreamWriter writer = new OutputStreamWriter(conn.getOutputStream(), DEFAULT_ENCODING);
+//            if (data == null)
+//                data = "";
+//            writer.write(data);
+//            writer.flush();
+//            writer.close();
+//
+//            reader = new BufferedReader(new InputStreamReader(conn.getInputStream(), DEFAULT_ENCODING));
+//            StringBuilder sb = new StringBuilder();
+//            String line = null;
+//            while ((line = reader.readLine()) != null) {
+//                sb.append(line);
+//                sb.append("\r\n");
+//            }
+//            return sb.toString();
+//        } catch (IOException e) {
+//            //logger.error("Error connecting to " + urlStr + ": " + e.getMessage());
+//        } finally {
+//            try {
+//                if (reader != null)
+//                    reader.close();
+//            } catch (IOException e) {
+//            }
+//        }
+//        return null;
+//    }
+//
+//    public static boolean isMobileDevice(HttpServletRequest request) {
+//        /**
+//         * android : 所有android设备
+//         * mac os : iphone ipad
+//         * windows phone:Nokia等windows系统的手机
+//         */
+//        try {
+//            String requestHeader = request.getHeader("user-agent");
+//            if (requestHeader == null) {
+//                return false;
+//
+//            }
+//            String[] deviceArray = new String[]{"android", "mac os", "windows phone"};
+//            requestHeader = requestHeader.toLowerCase();
+//            for (int i = 0; i < deviceArray.length; i++) {
+//                if (requestHeader.indexOf(deviceArray[i]) > 0) {
+//                    return true;
+//                }
+//            }
+//        } catch (Exception ex) {
+//            ex.printStackTrace();
+//        }
+//        return false;
+//    }
+//
+//
+//    public static String httpPutRequest(String url, Map<String, Object> headers, String params) {
+//        if (StringUtils.isEmpty(url)) {
+//            return null;
+//        }
+//        HttpPut httpPut = new HttpPut(url);
+//        if (!CollectionUtils.isEmpty(headers)) {
+//            for (Map.Entry<String, Object> param : headers.entrySet()) {
+//                httpPut.addHeader(param.getKey(), String.valueOf(param.getValue()));
+//            }
+//        }
+//        try {
+//            if (!StringUtils.isEmpty(params)) {
+//                StringEntity stringEntity = new StringEntity(params, "UTF-8");
+//                httpPut.setEntity(stringEntity);
+//            }
+//            return getResult(httpPut);
+//        } catch (UnsupportedEncodingException uee) {
+//            logger.error(uee.getMessage(), uee);
+//        } catch (IOException ie) {
+//            logger.error(ie.getMessage(), ie);
+//        } catch (Exception ex) {
+//            logger.error(ex.getMessage(), ex);
+//        }
+//        return null;
+//    }
+//}

+ 34 - 0
energy-manage-common/src/main/java/com/energy/manage/common/util/IdGeneratorUtil.java

@@ -0,0 +1,34 @@
+package com.energy.manage.common.util;
+
+public class IdGeneratorUtil {
+
+
+    public static final int DEC_INIT_LENGTH = 5;
+
+
+    public static final int DEC_SECOND_INIT_LENGTH = 4;
+
+    /**
+     * 默认4位数字
+     * @param number 实际数字
+     * @return
+     */
+    public static String zeroFillUtil(Long number) {
+
+        return String.format("%0" + DEC_INIT_LENGTH + "d", number);
+    }
+
+    /**
+     * @param number 实际数字
+     * @param digit  长度
+     * @return
+     */
+    public static String zeroFillUtil(Long number, Integer digit) {
+
+        return String.format("%0" + digit + "d", number);
+    }
+
+
+
+
+}

+ 313 - 0
energy-manage-common/src/main/java/com/energy/manage/common/util/IdUtils.java

@@ -0,0 +1,313 @@
+package com.energy.manage.common.util;
+
+import lombok.extern.slf4j.Slf4j;
+
+import java.math.BigInteger;
+import java.time.LocalDateTime;
+import java.time.ZoneId;
+import java.time.format.DateTimeFormatter;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+import java.util.Set;
+import java.util.stream.Collectors;
+
+/**
+ * 工具类
+ *
+ * @author liuzhaoming
+ * @date 2021-12-14 14:16
+ */
+@Slf4j
+public class IdUtils {
+    /**
+     * 将byte数组转化为bit字符串
+     *
+     * @param value byte数组
+     * @return bit字符串
+     */
+    public static String byteArrayToBits(byte[] value) {
+        StringBuilder bits = new StringBuilder();
+        for (int i = value.length - 1; i >= 0; i--) {
+            byte byteValue = value[i];
+            String currentBitString = ""
+                    + (byte) ((byteValue >> 7) & 0x1) + (byte) ((byteValue >> 6) & 0x1)
+                    + (byte) ((byteValue >> 5) & 0x1) + (byte) ((byteValue >> 4) & 0x1)
+                    + (byte) ((byteValue >> 3) & 0x1) + (byte) ((byteValue >> 2) & 0x1)
+                    + (byte) ((byteValue >> 1) & 0x1) + (byte) ((byteValue) & 0x1);
+            bits.append(currentBitString);
+        }
+
+        return bits.toString();
+    }
+
+    /**
+     * 将long类型数字转换为二进制字符串
+     *
+     * @param value 值
+     * @param len   二进制字符串长度
+     * @return 二进制字符串
+     */
+    public static String longToBits(long value, int len) {
+        String binaryString = Long.toBinaryString(value);
+        return fillBinaryString(binaryString, len);
+    }
+
+    /**
+     * 将int类型数字转换为二进制字符串
+     *
+     * @param value 值
+     * @param len   二进制字符串长度
+     * @return 二进制字符串
+     */
+    public static String intToBits(int value, int len) {
+        String binaryString = Integer.toBinaryString(value);
+        return fillBinaryString(binaryString, len);
+    }
+
+    /**
+     * 获取店铺编码
+     *
+     * @param shopId      店铺ID
+     * @param maxShopCode 最大店铺编号校验码
+     * @return 店铺编码
+     */
+    public static Long getShopCode(String shopId, long maxShopCode) {
+        long numberShopId = Long.parseLong(shopId, 16);
+        String strNumberShopId = String.valueOf(numberShopId);
+        int[] numbers = new int[strNumberShopId.length()];
+        for (int i = 0; i < strNumberShopId.length(); i++) {
+            numbers[i] = Character.getNumericValue(strNumberShopId.charAt(i));
+        }
+        for (int i = numbers.length - 1; i >= 0; i -= 2) {
+            numbers[i] <<= 1;
+            numbers[i] = numbers[i] / 10 + numbers[i] % 10;
+        }
+
+        int validationCode = 0;
+        for (int number : numbers) {
+            validationCode += number;
+        }
+        validationCode *= validationCode;
+        validationCode %= maxShopCode;
+        return validationCode < 2L ? validationCode + 2L : validationCode;
+    }
+
+    /**
+     * 将长整数转换为指定位数字符串,不满指定位前面添0
+     *
+     * @param number 不大于指定位的正整数
+     * @param length 指定位数
+     * @return 数字字符串
+     */
+    public static String longToFixedString(long number, int length) {
+        return String.format("%0" + length + "d", number);
+    }
+
+    /**
+     * 将大整数转换为指定位数字符串,不满指定位前面添0
+     *
+     * @param number 不大于指定位的正整数
+     * @param length 指定位数
+     * @return 数字字符串
+     */
+    public static String bigIntegerToFixedString(BigInteger number, int length) {
+        String originNumberStr = number.toString();
+        if (originNumberStr.length() > length) {
+            throw new IllegalArgumentException("Number length is large than " + length + ", number is " + originNumberStr);
+        } else if (originNumberStr.length() == length) {
+            return originNumberStr;
+        } else {
+            StringBuilder sb = new StringBuilder();
+            for (int i = 0, size = length - originNumberStr.length(); i < size; i++) {
+                sb.append('0');
+            }
+            sb.append(originNumberStr);
+            return sb.toString();
+        }
+    }
+
+    /**
+     * 判断字符是否正确
+     *
+     * @param str          字符串
+     * @param allowedChars 允许的字符集合
+     * @return 字符是否正确
+     */
+    public static boolean isCharValid(String str, Set<Character> allowedChars) {
+        if (null == str || null == allowedChars || allowedChars.size() == 0) {
+            return false;
+        }
+
+        for (int i = 0; i < str.length(); i++) {
+            if (!allowedChars.contains(str.charAt(i))) {
+                return false;
+            }
+        }
+
+        return true;
+    }
+
+    /**
+     * 判断字符串是否是数字
+     *
+     * @param str 字符串
+     * @return 如果是数字,返回true;反之false
+     */
+    public static boolean isNumeric(String str) {
+        if (null == str || str.length() == 0) {
+            return false;
+        }
+
+        for (int i = 0; i < str.length(); i++) {
+            if (!Character.isDigit(str.charAt(i))) {
+                return false;
+            }
+        }
+
+        return true;
+    }
+
+    /**
+     * 获取起始时间戳(单位秒)
+     *
+     * @param dateStr 时间字符串,格式为"yyyy-MM-dd HH:mm:ss"
+     * @return 时间戳
+     */
+    public static long getTimeStampSecond(String dateStr) {
+        try {
+            DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
+            return LocalDateTime.parse(dateStr, formatter).atZone(ZoneId.systemDefault()).toEpochSecond();
+        } catch (Exception e) {
+            log.error("Cannot get time stamp string, the invalid date format is yyyy-MM-dd HH:mm:ss, please check!");
+            return 1546272000L;
+        }
+    }
+
+    /**
+     * 获取起始时间戳(单位毫秒)
+     *
+     * @param dateStr 时间字符串,格式为"yyyy-MM-dd HH:mm:ss"
+     * @return 时间戳
+     */
+    public static long getTimeStampMill(String dateStr) {
+        try {
+            DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
+            return LocalDateTime.parse(dateStr, formatter).atZone(ZoneId.systemDefault()).toInstant().toEpochMilli();
+        } catch (Exception e) {
+            log.error("Cannot get time stamp string, the invalid date format is yyyy-MM-dd HH:mm:ss, please check!");
+            return 1546272000000L;
+        }
+    }
+
+    /**
+     * 当前线程sleep一段时间
+     *
+     * @param mills sleep毫秒数
+     */
+    public static void sleep(int mills) {
+        try {
+            Thread.sleep(mills);
+        } catch (InterruptedException e) {
+            log.error("Sleep error ", e);
+        }
+    }
+
+    /**
+     * 生成指定数目随机的字符编码,用于数据结构初始化
+     *
+     * @param alphabet 允许的字符集
+     * @param size     字符编码集数目
+     * @return 字符编码集
+     */
+    public static String generateAlphabets(String alphabet, int size) {
+        List<Character> templateCharList = alphabet.chars()
+                .mapToObj(c -> (char) c)
+                .collect(Collectors.toList());
+
+        String[] alphabets = new String[size];
+        for (int i = 0; i < size; i++) {
+            Collections.shuffle(templateCharList);
+            StringBuilder sb = new StringBuilder();
+            for (Character currentChar : templateCharList) {
+                sb.append(currentChar);
+            }
+            alphabets[i] = sb.toString();
+        }
+
+        return String.join(",", alphabets);
+    }
+
+    /**
+     * 获取校验码
+     *
+     * @param originId 原始数字
+     * @param maxCode  最大校验码
+     * @return 校验码
+     */
+    public static int getValidationCode(long originId, int maxCode) {
+        String strOriginId = String.valueOf(originId);
+        int[] numbers = new int[strOriginId.length()];
+        for (int i = 0, length = strOriginId.length(); i < length; i++) {
+            numbers[i] = Character.getNumericValue(strOriginId.charAt(i));
+        }
+        for (int i = numbers.length - 2; i >= 0; i -= 2) {
+            numbers[i] <<= 1;
+            numbers[i] = numbers[i] / 10 + numbers[i] % 10;
+        }
+
+        int validationCode = 0;
+        for (int number : numbers) {
+            validationCode += number;
+        }
+        validationCode *= 9;
+        return validationCode % maxCode;
+    }
+
+    /**
+     * 获取校验码
+     *
+     * @param originId 原始数字
+     * @param maxCode  最大校验码
+     * @return 校验码
+     */
+    public static long getValidationCode(long originId, long maxCode) {
+        String strOriginId = String.valueOf(originId);
+        int[] numbers = new int[strOriginId.length()];
+        for (int i = 0, length = strOriginId.length(); i < length; i++) {
+            numbers[i] = Character.getNumericValue(strOriginId.charAt(i));
+        }
+        for (int i = numbers.length - 2; i >= 0; i -= 2) {
+            numbers[i] <<= 1;
+            numbers[i] = numbers[i] / 10 + numbers[i] % 10;
+        }
+
+        long validationCode = 0L;
+        for (int number : numbers) {
+            validationCode += number;
+        }
+        validationCode *= 9;
+        return validationCode % maxCode;
+    }
+
+    /**
+     * 将二进制字符串补充到指定长度,不足部分用'0'填充在头部
+     *
+     * @param binaryString 二进制字符串
+     * @param len          指定长度
+     * @return 头部补'0'后的二进制字符串
+     */
+    private static String fillBinaryString(String binaryString, int len) {
+        if (binaryString.length() > len) {
+            throw new IllegalArgumentException("Value is too large");
+        }
+
+        if (binaryString.length() < len) {
+            char[] appendChars = new char[len - binaryString.length()];
+            Arrays.fill(appendChars, '0');
+            return new String(appendChars) + binaryString;
+        }
+
+        return binaryString;
+    }
+}

+ 67 - 0
energy-manage-common/src/main/java/com/energy/manage/common/util/IdentitieTools.java

@@ -0,0 +1,67 @@
+package com.energy.manage.common.util;
+
+import java.security.SecureRandom;
+import java.util.List;
+import java.util.Map;
+import java.util.UUID;
+
+/**
+ * 封装各种生成唯一性ID算法的工具类.
+ */
+public class IdentitieTools {
+
+  private static SecureRandom random = new SecureRandom();
+
+  /**
+   * 封装JDK自带的UUID, 通过Random数字生成, 中间有-分割.
+   */
+  public static String uuid() {
+    return UUID.randomUUID().toString();
+  }
+
+  /**
+   * 封装JDK自带的UUID, 通过Random数字生成, 中间无-分割.
+   */
+  public static String uuid2() {
+    return UUID.randomUUID().toString().replaceAll("-", "");
+  }
+
+  /**
+   * 使用SecureRandom随机生成Long.
+   */
+  public static long randomLong() {
+    return Math.abs(random.nextLong());
+  }
+
+  /**
+   * 根据类型随机获取该类型url
+   *
+   * @param map
+   * @param type
+   * @return
+   */
+  public static String getUrlByType(Map<String, List<String>> map, String type) {
+    if (map == null) {
+      return getConfigStr(type);
+    }
+    List<String> stringList = map.get(type);
+    if (CollectionTools.isEmpty(stringList)) {
+      return getConfigStr(type);
+    }
+    return stringList.get(random.nextInt(stringList.size()));
+  }
+
+
+  public static String getConfigStr(String type) {
+    if (StringTools.isNotBlank(type)) {
+      if (StringTools.equalsString("cxcy", type)) {
+        return StringTools.isNotBlank(type) ? "https://" + type + ".oss-cn-beijing.aliyuncs.com" : null;
+      } else {
+        return StringTools.isNotBlank(type) ? "https://gxb-" + type + ".oss-cn-beijing.aliyuncs.com" : null;
+      }
+    }
+    return null;
+
+  }
+
+}

+ 124 - 0
energy-manage-common/src/main/java/com/energy/manage/common/util/JSONMapper.java

@@ -0,0 +1,124 @@
+package com.energy.manage.common.util;
+
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.databind.DeserializationFeature;
+import com.fasterxml.jackson.databind.JavaType;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.IOException;
+import java.util.Collection;
+import java.util.Map;
+
+/**
+ * Created by lt on 2017/5/22.
+ */
+public class JSONMapper {
+
+  private static Logger logger = LoggerFactory.getLogger(JSONMapper.class);
+
+  private ObjectMapper objectMapper = null;
+
+  public JSONMapper() {
+    this(null);
+  }
+
+  public JSONMapper(JsonInclude.Include include) {
+    objectMapper = new ObjectMapper();
+    // 设置输出时包含属性的风格
+    if (include != null) {
+      objectMapper.setSerializationInclusion(include);
+    }
+    // 设置输入时忽略在JSON字符串中存在但Java对象实际没有的属性
+    objectMapper.disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES);
+  }
+
+  /**
+   * 创建只输出非Null且非Empty(如List.isEmpty)的
+   * 属性到Json字符串的Mapper,建议在外部接口中使用.
+   */
+  public static JSONMapper nonEmptyMapper() {
+    return new JSONMapper(JsonInclude.Include.NON_EMPTY);
+  }
+
+  /**
+   * 创建只输出初始值被改变的属性到Json字符串的Mapper,
+   * 最节约的存储方式,建议在内部接口中使用。
+   */
+  public static JSONMapper nonDefaultMapper() {
+    return new JSONMapper(JsonInclude.Include.NON_DEFAULT);
+  }
+
+  /**
+   * Object可以是POJO,也可以是Collection或数组。
+   * 如果对象为Null, 返回"null".
+   * 如果集合为空集合, 返回"[]".
+   */
+  public String toJSon(Object object) {
+    try {
+      return objectMapper.writeValueAsString(object);
+    } catch (Exception e) {
+      logger.warn("write to json string error:" + object, e);
+    }
+    return null;
+  }
+
+  /**
+   * 反序列化POJO或简单Collection如List<String>.
+   * <p>
+   * 如果JSON字符串为Null或"null"字符串, 返回Null.
+   * 如果JSON字符串为"[]", 返回空集合.
+   * <p>
+   * 如需反序列化复杂Collection如List<MyBean>, 请使用fromJson(String, JavaType)
+   *
+   * @see #fromJson(String, JavaType)
+   */
+  public <T> T fromJson(String jsonString, Class<T> clazz) {
+    return this.fromJson(jsonString.getBytes(), clazz);
+  }
+
+  /**
+   * 反序列化复杂Collection如List<Bean>, 先使用createCollectionType()
+   * 或contructMapType()构造类型, 然后调用本函数.
+   */
+  public <T> T fromJson(String jsonString, JavaType javaType) {
+    if (StringTools.isEmpty(jsonString)) {
+      return null;
+    }
+
+    try {
+      return (T) objectMapper.readValue(jsonString, javaType);
+    } catch (IOException e) {
+      logger.warn("parse json string error:" + jsonString, e);
+      return null;
+    }
+  }
+
+  public <T> T fromJson(byte[] jsonByteArray, Class<T> clazz) {
+    if (jsonByteArray.length <= 0) {
+      return null;
+    }
+
+    try {
+      return (T) objectMapper.readValue(jsonByteArray, clazz);
+    } catch (IOException e) {
+      logger.warn("parse json byteArray error:" + clazz.getName(), e);
+      return null;
+    }
+  }
+
+  /**
+   * 构造Collection类型.
+   */
+  public JavaType contructCollectionType(Class<? extends Collection> collectionClass, Class<?> elementClass) {
+    return objectMapper.getTypeFactory().constructCollectionType(collectionClass, elementClass);
+  }
+
+  /**
+   * 构造Map类型.
+   */
+  public JavaType contructMapType(Class<? extends Map> mapClass, Class<?> keyClass, Class<?> valueClass) {
+    return objectMapper.getTypeFactory().constructMapType(mapClass, keyClass, valueClass);
+  }
+}

+ 250 - 0
energy-manage-common/src/main/java/com/energy/manage/common/util/QRCodeUtil.java

@@ -0,0 +1,250 @@
+package com.energy.manage.common.util;
+
+import com.google.zxing.*;
+import com.google.zxing.common.BitMatrix;
+import com.google.zxing.common.HybridBinarizer;
+import com.google.zxing.qrcode.decoder.ErrorCorrectionLevel;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import javax.imageio.ImageIO;
+import javax.servlet.http.HttpServletResponse;
+import java.awt.*;
+import java.awt.geom.AffineTransform;
+import java.awt.image.BufferedImage;
+import java.io.File;
+import java.io.IOException;
+import java.io.OutputStream;
+import java.util.HashMap;
+import java.util.Hashtable;
+import java.util.Map;
+
+/**
+ * <p>Description: 二维码生成工具类</p>
+ * @author jialixun
+ */
+public final class QRCodeUtil extends LuminanceSource {
+ 
+    private static final Logger logger = LoggerFactory.getLogger(QRCodeUtil.class);
+ 
+    // 二维码颜色
+    private static final int BLACK = 0xFF000000;
+    // 二维码颜色
+    private static final int WHITE = 0xFFFFFFFF;
+ 
+    private final BufferedImage image;
+    private final int left;
+    private final int top;
+ 
+    public QRCodeUtil(BufferedImage image) {
+        this(image, 0, 0, image.getWidth(), image.getHeight());
+    }
+ 
+    public QRCodeUtil(BufferedImage image, int left, int top, int width, int height) {
+        super(width, height);
+        int sourceWidth = image.getWidth();
+        int sourceHeight = image.getHeight();
+        if (left + width > sourceWidth || top + height > sourceHeight) {
+            throw new IllegalArgumentException("Crop rectangle does not fit within image data.");
+        }
+        for (int y = top; y < top + height; y++) {
+            for (int x = left; x < left + width; x++) {
+                if ((image.getRGB(x, y) & 0xFF000000) == 0) {
+                    image.setRGB(x, y, 0xFFFFFFFF); // = white
+                }
+            }
+        }
+        this.image = new BufferedImage(sourceWidth, sourceHeight, BufferedImage.TYPE_BYTE_GRAY);
+        this.image.getGraphics().drawImage(image, 0, 0, null);
+        this.left = left;
+        this.top = top;
+    }
+ 
+    @Override
+    public byte[] getRow(int y, byte[] row) {
+        if (y < 0 || y >= getHeight()) {
+            throw new IllegalArgumentException("Requested row is outside the image: " + y);
+        }
+        int width = getWidth();
+        if (row == null || row.length < width) {
+            row = new byte[width];
+        }
+        image.getRaster().getDataElements(left, top + y, width, 1, row);
+        return row;
+    }
+ 
+    @Override
+    public byte[] getMatrix() {
+        int width = getWidth();
+        int height = getHeight();
+        int area = width * height;
+        byte[] matrix = new byte[area];
+        image.getRaster().getDataElements(left, top, width, height, matrix);
+        return matrix;
+    }
+ 
+    @Override
+    public boolean isCropSupported() {
+        return true;
+    }
+ 
+    @Override
+    public LuminanceSource crop(int left, int top, int width, int height) {
+        return new QRCodeUtil(image, this.left + left, this.top + top, width, height);
+    }
+ 
+    @Override
+    public boolean isRotateSupported() {
+        return true;
+    }
+ 
+    @Override
+    public LuminanceSource rotateCounterClockwise() {
+        int sourceWidth = image.getWidth();
+        int sourceHeight = image.getHeight();
+        AffineTransform transform = new AffineTransform(0.0, -1.0, 1.0, 0.0, 0.0, sourceWidth);
+        BufferedImage rotatedImage = new BufferedImage(sourceHeight, sourceWidth, BufferedImage.TYPE_BYTE_GRAY);
+        Graphics2D g = rotatedImage.createGraphics();
+        g.drawImage(image, transform, null);
+        g.dispose();
+        int width = getWidth();
+        return new QRCodeUtil(rotatedImage, top, sourceWidth - (left + width), getHeight(), width);
+    }
+ 
+    /**
+     * @param matrix
+     * @return
+     */
+    private static BufferedImage toBufferedImage(BitMatrix matrix) {
+        int width = matrix.getWidth();
+        int height = matrix.getHeight();
+        BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
+        for (int x = 0; x < width; x++) {
+            for (int y = 0; y < height; y++) {
+                image.setRGB(x, y, matrix.get(x, y) ? BLACK : WHITE);
+            }
+        }
+        return image;
+    }
+ 
+    /**
+     * 生成二维码图片
+     * 
+     * @param matrix
+     * @param format
+     * @param file
+     * @throws IOException
+     */
+    public static void writeToFile(BitMatrix matrix, String format, File file) throws IOException {
+        BufferedImage image = toBufferedImage(matrix);
+        if (!ImageIO.write(image, format, file)) {
+            throw new IOException("Could not write an image of format " + format + " to " + file);
+        }
+    }
+ 
+    /**
+     * 生成二维码图片流
+     * 
+     * @param matrix
+     * @param format
+     * @param stream
+     * @throws IOException
+     */
+    public static void writeToStream(BitMatrix matrix, String format, OutputStream stream) throws IOException {
+        BufferedImage image = toBufferedImage(matrix);
+        if (!ImageIO.write(image, format, stream)) {
+            throw new IOException("Could not write an image of format " + format);
+        }
+    }
+ 
+    /**
+     * 根据内容,生成指定宽高、指定格式的二维码图片
+     *
+     * @param text   内容
+     * @param width  宽
+     * @param height 高
+     * @param format 图片格式
+     * @return 生成的二维码图片路径
+     * @throws Exception
+     */
+    private static String generateQRCode(String text, int width, int height, String format, String pathName)
+            throws Exception {
+        Hashtable<EncodeHintType, Object> hints = new Hashtable<EncodeHintType, Object>();
+        hints.put(EncodeHintType.CHARACTER_SET, "utf-8");// 指定编码格式
+        hints.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.L);// 指定纠错等级
+        hints.put(EncodeHintType.MARGIN, 1); // 白边大小,取值范围0~4
+        BitMatrix bitMatrix = new MultiFormatWriter().encode(text, BarcodeFormat.QR_CODE, width, height, hints);
+        File outputFile = new File(pathName);
+        writeToFile(bitMatrix, format, outputFile);
+        return pathName;
+    }
+ 
+    /**
+     * 输出二维码图片流
+     * 
+     * @param text 二维码内容
+     * @param width 二维码宽
+     * @param height 二维码高
+     * @param format 图片格式eg: png, jpg, gif
+     * @param response HttpServletResponse
+     * @throws Exception
+     */
+    public static void generateQRCode(String text, int width, int height, String format, HttpServletResponse response)
+            throws Exception {
+        Hashtable<EncodeHintType, Object> hints = new Hashtable<EncodeHintType, Object>();
+        hints.put(EncodeHintType.CHARACTER_SET, "utf-8");// 指定编码格式
+        hints.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.L);// 指定纠错等级
+        hints.put(EncodeHintType.MARGIN, 1); // 白边大小,取值范围0~4
+        BitMatrix bitMatrix = new MultiFormatWriter().encode(text, BarcodeFormat.QR_CODE, width, height, hints);
+        writeToStream(bitMatrix, format, response.getOutputStream());
+    }
+ 
+    /**
+     * 解析指定路径下的二维码图片
+     *
+     * @param filePath 二维码图片路径
+     * @return
+     */
+    public static String parseQRCode(String filePath) {
+        String content = "";
+        try {
+            File file = new File(filePath);
+            BufferedImage image = ImageIO.read(file);
+            LuminanceSource source = new QRCodeUtil(image);
+            Binarizer binarizer = new HybridBinarizer(source);
+            BinaryBitmap binaryBitmap = new BinaryBitmap(binarizer);
+            Map<DecodeHintType, Object> hints = new HashMap<DecodeHintType, Object>();
+            hints.put(DecodeHintType.CHARACTER_SET, "UTF-8");
+            MultiFormatReader formatReader = new MultiFormatReader();
+            Result result = formatReader.decode(binaryBitmap, hints);
+ 
+            logger.info("result 为:" + result.toString());
+            logger.info("resultFormat 为:" + result.getBarcodeFormat());
+            logger.info("resultText 为:" + result.getText());
+            // 设置返回值
+            content = result.getText();
+        } catch (Exception e) {
+            logger.error(e.getMessage());
+        }
+        return content;
+    }
+
+//    public static void main(String[] args) {
+//        String text = "jialixun"; // 随机生成验证码
+//        int width = 200; // 二维码图片的宽
+//        int height = 200; // 二维码图片的高
+//        String format = "png"; // 二维码图片的格式
+//
+//        try {
+//            // 生成二维码图片,并返回图片路径
+//            String pathName = generateQRCode(text, width, height, format, "D:/new.png");
+//            System.out.println("生成二维码的图片路径: " + pathName);
+//
+//            String content = parseQRCode(pathName);
+//            System.out.println("解析出二维码的图片的内容为: " + content);
+//        } catch (Exception e) {
+//            e.printStackTrace();
+//        }
+//    }
+//
+}

+ 28 - 0
energy-manage-common/src/main/java/com/energy/manage/common/util/RandomSeriUtil.java

@@ -0,0 +1,28 @@
+package com.energy.manage.common.util;
+
+import java.text.MessageFormat;
+import java.util.concurrent.ThreadLocalRandom;
+
+public class RandomSeriUtil {
+
+    /**
+     * 生成随机六位数,用作验证码
+     *
+     * @return
+     */
+    public static String genRandoms() {
+        return String.valueOf(ThreadLocalRandom.current().nextInt(100000, 999999));
+    }
+
+
+    /**
+     * 字符串占位符
+     *
+     * @param str
+     * @param arguments
+     * @return
+     */
+    public static String formatStr(String str, Object... arguments) {
+        return MessageFormat.format(str, arguments);
+    }
+}

+ 1426 - 0
energy-manage-common/src/main/java/com/energy/manage/common/util/StringTools.java

@@ -0,0 +1,1426 @@
+package com.energy.manage.common.util;
+
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.google.common.base.CaseFormat;
+import com.google.common.base.Splitter;
+import com.google.common.collect.Lists;
+import org.apache.commons.lang3.StringUtils;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+import java.util.*;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+
+/**
+ * 字符串实用工具类
+ */
+public class StringTools {
+
+  public static final String EMPTY = "";
+
+  public static String COMMA_SEPARATOR = ",";
+  /**
+   * Constant representing the default delimiter character (comma), equal to <code>','</code>
+   */
+  public static final char DEFAULT_DELIMITER_CHAR = ',';
+
+  /**
+   * Constant representing the default quote character (double quote), equal to '&quot;'</code>
+   */
+  public static final char DEFAULT_QUOTE_CHAR = '"';
+
+  private static final char SEPARATOR = '_';
+
+  /**
+   * 判断一个字符串对象是否是""或null
+   *
+   * @param str 要判断的字符串对象
+   * @return
+   */
+  public static boolean isEmpty(String str) {
+    return StringUtils.isEmpty(str);
+  }
+
+  public static boolean isEmpty(Object obj) {
+    boolean flag = false;
+    if (obj == null) {
+      flag = true;
+    }
+    return flag;
+  }
+
+  public static boolean isNotEmpty(Object obj) {
+    boolean flag = false;
+    if (obj != null) {
+      flag = true;
+    }
+    return flag;
+  }
+
+  /**
+   * 判断一个字符串对象是否不是""或null
+   *
+   * @param str 要判断的字符串对象
+   * @return
+   */
+  public static boolean isNotEmpty(String str) {
+    return StringUtils.isNotEmpty(str);
+  }
+
+  public static boolean isBlank(String str) {
+    return StringUtils.isBlank(str);
+  }
+
+  /**
+   * 将一个字符串的前后空白去掉,如果为null转换成""
+   *
+   * @param str 要操作的字符串对象
+   * @return
+   */
+  public static String trimToEmpty(String str) {
+    return StringUtils.trimToEmpty(str);
+  }
+
+  /**
+   * 将一个字符串的前后空白去掉,如果为""转换成null
+   *
+   * @param str
+   * @return
+   */
+  public static String trimToNull(String str) {
+    return StringUtils.trimToNull(str);
+  }
+
+  /**
+   * 用指定的分割字符连接数组元素
+   *
+   * @param array     对象数组
+   * @param separator 分割字符
+   * @return
+   */
+  public static String join(Object[] array, String separator) {
+    return StringUtils.join(array, separator);
+  }
+
+  /**
+   * 用指定的分割字符连接数组元素
+   *
+   * @param iterable  对象数组
+   * @param separator 分割字符
+   * @return
+   */
+  public static String join(Iterable<?> iterable, String separator) {
+    return StringUtils.join(iterable, separator);
+  }
+
+  /**
+   * 获取文件路径中文件扩展名,不含.
+   *
+   * @param filePath 文件路径
+   * @return
+   */
+  public static String getFileExtName(String filePath) {
+    filePath = filePath.replace('\\', '/');
+    int pos = filePath.lastIndexOf('/');
+    if (pos > 0) {
+      filePath = filePath.substring(pos + 1, filePath.length());
+    }
+    pos = filePath.lastIndexOf('.');
+    String baseName = "";
+
+    if (pos > 0) {
+      baseName = filePath.substring(pos + 1, filePath.length());
+    }
+    return baseName;
+  }
+
+  public static String substringBeforeLast(String str, String separator) {
+    return StringUtils.substringBeforeLast(str, separator);
+  }
+
+
+  /**
+   * 字符串转成Long
+   *
+   * @param num :要转化的数字字符串
+   * @param def :默认值
+   * @return 返回 Long
+   */
+  public static Long getLong(String num, long def) {
+    if (isEmpty(num)) {
+      return def;
+    }
+    long ret = def;
+    int i = num.indexOf(".");
+    if (i == 0) {
+      num = "0";
+    } else if (i > 0) {
+      num = num.substring(0, i);
+    }
+    try {
+      ret = Long.parseLong(num);
+    } catch (NumberFormatException ex) {
+      ex.printStackTrace();
+    }
+    return ret;
+  }
+
+  /**
+   * 字符串转成Long
+   *
+   * @param num :要转化的数字字符串
+   * @return 返回 Long
+   */
+  public static Long getLong(String num) {
+    return getLong(num, 0);
+  }
+
+  public static Long getLong(Object num) {
+    return getLong(getString(num));
+  }
+
+  public static Long getLong(Object num, long def) {
+    return getLong(getString(num), def);
+  }
+
+  /**
+   * 字符串转成Integer
+   *
+   * @param num :要转化的数字字符串
+   * @param def :默认值
+   * @return 返回 Integer
+   */
+  public static Integer getInteger(String num, int def) {
+    if (isEmpty(num)) {
+      return def;
+    }
+    int ret = def;
+    try {
+      ret = Integer.valueOf(num);
+    } catch (NumberFormatException ex) {
+      ex.printStackTrace();
+    }
+    return ret;
+  }
+
+  /**
+   * 字符串转成Integer
+   *
+   * @param num :要转化的数字字符串
+   * @return 返回 Integer
+   */
+  public static Integer getInteger(String num) {
+    if (isEmpty(num)) {
+      return null;
+    }
+    int ret = 0;
+    int i = num.indexOf(".");
+    if (i == 0) {
+      num = "0";
+    } else if (i > 1) {
+      num = num.substring(0, i);
+    }
+    try {
+      ret = Integer.valueOf(num);
+    } catch (NumberFormatException ex) {
+      ex.printStackTrace();
+    }
+    return ret;
+  }
+
+  public static Integer getInteger(Object num) {
+    return getInteger(getString(num));
+  }
+
+  public static Integer getInteger(Object num, int def) {
+    return getInteger(getString(num), def);
+  }
+
+  /**
+   * 替换字符
+   *
+   * @param str
+   * @param searchChar
+   * @param replaceChar
+   * @return
+   */
+  public static String replaceChars(String str, char searchChar, char replaceChar) {
+    return StringUtils.replaceChars(str, searchChar, replaceChar);
+  }
+
+  /**
+   * 替换字符串
+   *
+   * @param str
+   * @param searchString
+   * @param replaceString
+   * @return
+   */
+  public static String replace(String str, String searchString, String replaceString) {
+    return StringUtils.replace(str, searchString, replaceString);
+  }
+
+  /**
+   * if the input string is empty, then return the default string
+   *
+   * @param obj
+   * @param def
+   * @return string
+   */
+  public static String getString(Object obj, String def) {
+    if (obj == null) {
+      return def;
+    }
+    String result = obj.toString();
+    return result.length() == 0 ? def : result;
+  }
+
+  public static String getString(Object obj) {
+    return getString(obj, "");
+  }
+
+  public static String replaceFileSep(String sep) {
+    if (File.separator.equals("\\")) {
+      return StringTools.replace(sep, "/", "\\");
+    } else {
+      return StringTools.replace(sep, "\\", "/");
+    }
+  }
+
+  public static String replaceUrlSep(String url) {
+    return StringTools.replace(url, "\\", "/");
+  }
+
+  public static String escapeHtml(String text) {
+    String temp = StringTools.replace(text, "&", "&amp;");
+
+    temp = StringTools.replace(temp, " ", "&nbsp;");
+    temp = StringTools.replace(temp, ">", "&gt;");
+    temp = StringTools.replace(temp, "<", "&lt;");
+    temp = StringTools.replace(temp, "\"", "&quot;");
+    temp = StringTools.replace(temp, "\n", "<br>");
+    temp = StringTools.replace(temp, "\t", "&nbsp;&nbsp;&nbsp;&nbsp;");
+
+    return temp;
+  }
+
+  public static String stripUnsafeTag(String text) {
+    String temp = text.replaceAll("<script[^>]*>([^<]*)</script>", "");
+    return temp;
+  }
+
+  public static boolean checkYearMonth(String validYear) {
+    Pattern p = Pattern.compile("^\\d{4}((0\\d)|(1[0-2])|([0-9]))$");
+    Matcher m = p.matcher(validYear);
+    return m.matches();
+  }
+
+  public static String formatMillsToString(Long mills) {
+    if (StringTools.isEmpty(mills)) {
+      return "00:00:00";
+    }
+    long ss = (mills / 1000) % 60;
+    long mm = (mills / 60000) % 60;
+    long hh = mills / 3600000;
+    return getFormatString(hh) + ":" + getFormatString(mm) + ":" + getFormatString(ss);
+  }
+
+  public static String formatMillsToString2(Long mills) {
+    if (StringTools.isEmpty(mills)) {
+      return "00:00";
+    }
+    long ss = (mills / 1000) % 60;
+    long mm = mills / 60000;
+    return getFormatString(mm) + ":" + getFormatString(ss);
+  }
+
+  public static String getFormatString(long time) {
+    if (time < 10l) {
+      return "0" + time;
+    }
+    return time + "";
+  }
+
+  public static String clearEmptyLine(String in) {
+    Pattern pattern = Pattern.compile("\n");
+    Matcher matcher = pattern.matcher(in);
+    if (matcher.matches()) {
+      return matcher.replaceAll("\n");
+    }
+    return in;
+  }
+
+  public static String integerToString(Integer obj) {
+    if (obj == null) {
+      return null;
+    }
+    if (obj < 10) {
+      return "0" + obj;
+    }
+    return obj + "";
+  }
+
+  /**
+   * 位数不足,前面补0
+   *
+   * @param code
+   * @param len
+   * @return
+   */
+  public static String codeAddOne(String code, int len) {
+    Integer intOrder = Integer.parseInt(code);
+    String strNo = intOrder.toString();
+    while (strNo.length() < len) {
+      strNo = "0" + strNo;
+    }
+    return strNo;
+  }
+
+  /**
+   * 16进制转十进制
+   *
+   * @param hex :
+   * @return :
+   */
+  public static Integer hexToDec(String hex) {
+    for (int i = 0; i < hex.length(); i++) {
+      if (!((hex.charAt(i) >= 48 && hex.charAt(i) <= 57) || (hex.charAt(i) >= 'a' && hex.charAt(i) <= 'f') || (hex.charAt(i) >= 'A' && hex.charAt(i) <= 'F'))) {
+        return 0;
+      }
+    }
+    return Integer.valueOf(hex, 16);
+  }
+
+  /**
+   * 十进制转16进制
+   *
+   * @param num :
+   * @return :
+   */
+  public static String decToHex(Integer num) {
+    if (num == null) {
+      return "0";
+    }
+    return Integer.toHexString(num);
+  }
+
+  /**
+   * 判断字符是否为
+   *
+   * @param text
+   * @return
+   */
+  public static boolean isEmptyOrNullString(String text) {
+    if (isEmpty(text)) return true;
+
+    if ("null".equals(text) || "(null)".equals(text)) return true;
+
+    return false;
+  }
+
+  public static String[] convert2Array(String text, String split) {
+    if (StringTools.isEmpty(text)) {
+      return null;
+    }
+    String[] strArray = null;
+    if (text.indexOf(split) > -1) {
+      strArray = text.split(split);
+    } else {
+      strArray = new String[]{text};
+    }
+    return strArray;
+  }
+
+  public static String[] convert2Array(String text) {
+    return convert2Array(text, ",");
+  }
+
+  public static Integer[] convert2IntegerArray(String text, String split) throws NumberFormatException {
+    String[] strArr = convert2Array(text, split);
+    if (strArr == null) {
+      return null;
+    }
+    Integer[] intArr = new Integer[strArr.length];
+    for (int i = 0; i < strArr.length; i++) {
+      intArr[i] = Integer.valueOf(strArr[i]);
+    }
+    return intArr;
+
+  }
+
+  public static Integer[] convert2IntegerArray(String text) throws NumberFormatException {
+    return convert2IntegerArray(text, ",");
+  }
+
+  public static List<String> convert2StringList(String text, String split) throws NumberFormatException {
+    List<String> strList = new ArrayList<String>();
+    String[] strArr = convert2Array(text, split);
+    for (String s : strArr) {
+      strList.add(s);
+    }
+    return strList;
+  }
+
+  public static List<String> convert2StringList(String text) {
+    return convert2StringList(text, ",");
+  }
+
+  public static List<Long> convert2LongList(String text, String split) throws NumberFormatException {
+    List<Long> lList = new ArrayList<Long>();
+    String[] strArr = convert2Array(text, split);
+    if (StringTools.isEmpty(strArr)) {
+      return null;
+    }
+    for (String s : strArr) {
+      Long temp = Long.valueOf(s);
+      lList.add(temp);
+    }
+    return lList;
+  }
+
+  public static List<Long> convert2LongList(String text) throws NumberFormatException {
+    return convert2LongList(text, ",");
+  }
+
+  public static List<Integer> convert2IntegerList(String text, String split) throws NumberFormatException {
+    List<Integer> iList = new ArrayList<Integer>();
+    String[] strArr = convert2Array(text, split);
+    if (StringTools.isEmpty(strArr)) {
+      return null;
+    }
+    for (String s : strArr) {
+      Integer temp = Integer.valueOf(s);
+      iList.add(temp);
+    }
+    return iList;
+  }
+
+  public static List<Integer> convert2IntegerList(String text) throws NumberFormatException {
+    return convert2IntegerList(text, ",");
+  }
+
+  public static String concat(String symbol, String... param) {
+    if (param == null) {
+      return null;
+    }
+    String result = "";
+    String[] params = param;
+    for (int i = 0; i < params.length; i++) {
+      result = i == 0 ? params[i] : result + symbol + params[i];
+    }
+    return result;
+  }
+
+  public static String[] split(final String str, final String separatorChars) {
+    return StringUtils.split(str, separatorChars);
+  }
+
+  public static Map<String, Object> split2map(final String paramStr) {
+    return split2map(",", ":", paramStr);
+  }
+
+  /**
+   * 将字符串根据两个分隔符分割为Map
+   *
+   * @author lh
+   * @date 2015年10月26日
+   */
+  public static Map<String, Object> split2map(final String separatorChar, final String separatorChar2, final String paramStr) {
+    if (StringTools.isBlank(paramStr)) return null;
+
+    String[] splitList = StringUtils.split(paramStr, ",");
+    if (CollectionTools.isEmpty(splitList)) return null;
+
+    Map<String, Object> rsMap = new HashMap<String, Object>(splitList.length, 1);
+
+    for (String str : splitList) {
+      String[] p = StringUtils.split(str, ":", 2);
+      if (CollectionTools.isEmpty(p) || p.length < 2) continue;
+
+      rsMap.put(p[0].trim(), p[1].trim());
+    }
+
+    return rsMap;
+  }
+
+  public static boolean isNotBlank(String str) {
+    return StringUtils.isNotBlank(str);
+  }
+
+  public static String lowerCase(String str) {
+    if (str == null) {
+      return null;
+    }
+    return str.toLowerCase();
+  }
+
+  /**
+   * 比较两个字符串,如果其中一个字符串为blank,计算不相等
+   *
+   * @param arg1
+   * @param arg2
+   * @return
+   * @author gtli
+   */
+  public static boolean equalsString(String arg1, String arg2) {
+    if (isBlank(arg1) || isBlank(arg2)) {
+      return false;
+    }
+    return arg1.equals(arg2);
+  }
+
+  /**
+   * 驼峰转下划线
+   *
+   * @param str
+   * @return
+   * @author sunninghai
+   * @date 2015年11月5日
+   */
+  public static String camelToUnderScore(String str) {
+    return CaseFormat.UPPER_CAMEL.to(CaseFormat.LOWER_UNDERSCORE, str);
+  }
+
+
+  /**
+   *
+   */
+  public static String getHost(String url) {
+    if (url.indexOf("://") > 0) {
+      url = url.substring(url.indexOf("://") + 3, url.length());
+    }
+    if (url.indexOf("/") > 0) {
+      url = url.substring(0, url.indexOf("/"));
+    }
+    if (url.indexOf(":") > 0) {
+      url = url.substring(0, url.indexOf(":"));
+    }
+    return url;
+  }
+
+  public static String getShotName(String url) {
+    if (!url.contains(".")) {
+      return null;
+    }
+    if (url.lastIndexOf(".") > 0) {
+      url = url.substring(0, url.lastIndexOf("."));
+    }
+    if (url.lastIndexOf(".") > 0) {
+      url = url.substring(0, url.lastIndexOf("."));
+    }
+    if (url.indexOf(".") > 0) {
+      url = url.substring(url.indexOf(".") + 1, url.length());
+    }
+    return url;
+  }
+
+  public static String getShortName(String url) {
+    String shortName = null;
+    int index = url.indexOf(".");
+    if (!url.contains(".") || index == 0) {
+      return null;
+    }
+    if (index > 0) {
+      shortName = url.substring(0, index);
+    }
+    return shortName;
+  }
+
+  public static String getFirstDomain(String url) {
+    Pattern p = Pattern.compile("(?<=http://|\\.)[^.]*?\\.(com|cn|net|org|biz|info|cc|tv)", Pattern.CASE_INSENSITIVE);
+    Matcher matcher = p.matcher(url);
+    matcher.find();
+    return matcher.group();
+  }
+
+  public static boolean isEmail(String email) {
+
+    Pattern regex = Pattern.compile("^[\\w-]+(\\.[\\w-]+)*@[\\w-]+(\\.[\\w-]+)*$");
+    Matcher matcher = regex.matcher(email);
+    boolean isMatched = matcher.matches();
+    return isMatched;
+  }
+
+  public static boolean isMobile(String mobiles) {
+    Pattern p = Pattern.compile("^[1]([3]|[5]|[4]|[8]|[7]|[6]|[9])[0-9]{9}$");
+    Matcher m = p.matcher(mobiles);
+    return m.matches();
+  }
+
+
+  public static Integer long2Integer(Long l) {
+    if (l == null) {
+      return null;
+    }
+    return Integer.parseInt((new Long(l.toString())).toString());
+
+  }
+
+  public static Long string2Long(Object s) {
+    if (s == null || s.equals("")) {
+      return null;
+    }
+    return new Long(s.toString());
+
+  }
+
+  public static Long object2Long(Object s) {
+    if (s == null || s.equals("")) {
+      return null;
+    }
+    return new Long(s.toString());
+
+  }
+
+  public static Integer object2Integer(Object s) {
+    if (s == null || s.equals("")) {
+      return null;
+    }
+    return new Integer(s.toString());
+
+  }
+
+  public static String object2String(Object s) {
+    if (s == null || s.equals("")) {
+      return null;
+    }
+    return new String(s.toString());
+
+  }
+
+  public static String escapeQuotes(String oldString) {
+    if (StringTools.isNotBlank(oldString)) {
+      oldString = oldString.replaceAll("&quot;", "\"").replaceAll("\"", "\\\"");
+    }
+    return oldString;
+  }
+
+  public static String replaceHtml(String string) {
+    if (isNotEmpty(string)) {
+      string = string.replaceAll("'", "&acute;");
+      string = string.replaceAll("\"", "&quot;");
+    }
+    return string;
+  }
+
+  public static String concatUrl(String prefixbucket, String relativeUrl) {
+    if (isEmpty(prefixbucket) || isEmpty(relativeUrl)) {
+      return prefixbucket;
+    } else if (relativeUrl.startsWith("https:") || relativeUrl.startsWith("//")) {
+      //存在http://
+      return relativeUrl;
+    } else if (!prefixbucket.endsWith("/") && !relativeUrl.startsWith("/")) {
+      //中间没有/分割自动添加
+      return prefixbucket.concat("/").concat(relativeUrl);
+    } else if (prefixbucket.endsWith("/") && relativeUrl.startsWith("/")) {
+      //两头都有/去掉一个
+      prefixbucket = substringBeforeLast(prefixbucket, "/");
+      return prefixbucket.concat(relativeUrl);
+    } else {
+      return prefixbucket.concat(relativeUrl);
+    }
+  }
+
+  public static String convertNum(Integer num) {
+    String[] numsAry = {"0", "一", "二", "三", "四", "五", "六", "七", "八", "九", "十", "十一", "十二", "十三", "十四", "十五", "十六", "十七", "十八", "十九", "二十"};
+    if (num > numsAry.length) {
+      return "";
+    }
+    return numsAry[num];
+  }
+
+  public static String convertWeekNum(Integer num) {
+    String[] numsAry = {"0", "一", "二", "三", "四", "五", "六", "日"};
+    if (num > numsAry.length) {
+      return "";
+    }
+    return numsAry[num];
+  }
+
+  /**
+   * 验证 yyyyMMdd类型的字符串时间
+   */
+  public static boolean isDate(String date) {
+    Pattern p = Pattern.compile("^\\d{8}$");
+    Matcher m = p.matcher(date);
+    return m.matches();
+  }
+
+  /**
+   * 验证 yyyyMM类型的字符串时间
+   */
+  public static boolean isYYYYMMDate(String date) {
+    Pattern p = Pattern.compile("^\\d{6}$");
+    Matcher m = p.matcher(date);
+    return m.matches();
+  }
+
+  /**
+   * 判断字符串是整数或者保留两位小数
+   *
+   * @param str
+   * @return
+   */
+  public static boolean isIntegerOrTwoDecimal(String str) {
+    Pattern pattern = Pattern.compile("^[+]?([0-9]+(.[0-9]{2})?)$");
+    return pattern.matcher(str).matches();
+  }
+
+  /**
+   * 简单验证身份证格式
+   * 15位数字/14位数字,1为字母/18位数字/17位数字,最后一位Xx
+   *
+   * @param cardId
+   * @return
+   */
+  public static boolean isCardId(String cardId) {
+    Pattern pattern = Pattern.compile("(\\d{14}[0-9a-zA-Z])|(\\d{17}[0-9a-zA-Z])");
+    return pattern.matcher(cardId).matches();
+  }
+
+  public static List<Long> spliteStr2LongList(String string, String separator) {
+    List<Long> longList = null;
+    if (string != null && !"".equals(separator)) {
+      longList = Lists.newArrayList();
+      List<String> strings = Splitter.on(separator).trimResults().omitEmptyStrings().splitToList(string);
+      try {
+        for (String s : strings) {
+          longList.add(Long.valueOf(s));
+        }
+      } catch (Exception e) {
+        e.printStackTrace();
+      }
+    }
+    return longList;
+  }
+
+
+  /**
+   * Returns the specified array as a comma-delimited (',') string.
+   *
+   * @param array the array whose contents will be converted to a string.
+   * @return the array's contents as a comma-delimited (',') string.
+   * @since 1.0
+   */
+  public static String toString(Object[] array) {
+    return toDelimitedString(array, ",");
+  }
+
+
+  /**
+   * Returns the array's contents as a string, with each element delimited by the specified
+   * {@code delimiter} argument.  Useful for {@code toString()} implementations and log messages.
+   *
+   * @param array     the array whose contents will be converted to a string
+   * @param delimiter the delimiter to use between each element
+   * @return a single string, delimited by the specified {@code delimiter}.
+   * @since 1.0
+   */
+  public static String toDelimitedString(Object[] array, String delimiter) {
+    if (array == null || array.length == 0) {
+      return "";
+    }
+    StringBuilder sb = new StringBuilder();
+    for (int i = 0; i < array.length; i++) {
+      if (i > 0) {
+        sb.append(delimiter);
+      }
+      sb.append(array[i]);
+    }
+    return sb.toString();
+  }
+
+  public static String formatWeekIntStrToWeekStr(String weekIntStr) {
+    StringBuilder sb = new StringBuilder();
+    List<Long> longList = spliteStr2LongList(weekIntStr, COMMA_SEPARATOR);
+    if (CollectionTools.isNotEmpty(longList)) {
+      Collections.sort(longList);
+      for (Long num : longList) {
+        if ("".equals(sb.toString())) {
+          sb.append("周" + convertWeekNum(num.intValue()));
+        } else {
+          sb.append("、" + convertWeekNum(num.intValue()));
+        }
+      }
+
+    }
+    return sb.toString();
+  }
+
+
+  public static String toDelimitedString(Collection c, String delimiter) {
+    if (c == null || c.isEmpty()) {
+      return EMPTY;
+    }
+    return join(c.iterator(), delimiter);
+  }
+
+  public static String join(Iterator<?> iterator, String separator) {
+    final String empty = "";
+
+    // handle null, zero and one elements before building a buffer
+    if (iterator == null) {
+      return null;
+    }
+    if (!iterator.hasNext()) {
+      return empty;
+    }
+    Object first = iterator.next();
+    if (!iterator.hasNext()) {
+      return first == null ? empty : first.toString();
+    }
+
+    // two or more elements
+    StringBuilder buf = new StringBuilder(256); // Java default is 16, probably too small
+    if (first != null) {
+      buf.append(first);
+    }
+
+    while (iterator.hasNext()) {
+      if (separator != null) {
+        buf.append(separator);
+      }
+      Object obj = iterator.next();
+      if (obj != null) {
+        buf.append(obj);
+      }
+    }
+    return buf.toString();
+  }
+
+  public static Set<String> splitToSet(String delimited, String separator) {
+    if (delimited == null || separator == null) {
+      return null;
+    }
+    String[] split = split(delimited, separator.charAt(0));
+    return asSet(split);
+  }
+
+  public static String[] split(String line) {
+    return split(line, DEFAULT_DELIMITER_CHAR);
+  }
+
+  public static String[] split(String line, char delimiter) {
+    return split(line, delimiter, DEFAULT_QUOTE_CHAR);
+  }
+
+  public static String[] split(String line, char delimiter, char quoteChar) {
+    return split(line, delimiter, quoteChar, quoteChar);
+  }
+
+  public static String[] split(String line, char delimiter, char beginQuoteChar, char endQuoteChar) {
+    return split(line, delimiter, beginQuoteChar, endQuoteChar, false, true);
+  }
+
+
+  /**
+   * Splits the specified delimited String into tokens, supporting quoted tokens so that quoted strings themselves
+   * won't be tokenized.
+   * <p/>
+   * This method's implementation is very loosely based (with significant modifications) on
+   * <a href="http://blogs.bytecode.com.au/glen">Glen Smith</a>'s open-source
+   * <a href="http://opencsv.svn.sourceforge.net/viewvc/opencsv/trunk/src/au/com/bytecode/opencsv/CSVReader.java?&view=markup">CSVReader.java</a>
+   * file.
+   * <p/>
+   * That file is Apache 2.0 licensed as well, making Glen's code a great starting point for us to modify to
+   * our needs.
+   *
+   * @param aLine          the String to parse
+   * @param delimiter      the delimiter by which the <tt>line</tt> argument is to be split
+   * @param beginQuoteChar the character signifying the start of quoted text (so the quoted text will not be split)
+   * @param endQuoteChar   the character signifying the end of quoted text
+   * @param retainQuotes   if the quotes themselves should be retained when constructing the corresponding token
+   * @param trimTokens     if leading and trailing whitespace should be trimmed from discovered tokens.
+   * @return the tokens discovered from parsing the given delimited <tt>line</tt>.
+   */
+  public static String[] split(String aLine, char delimiter, char beginQuoteChar, char endQuoteChar,
+                               boolean retainQuotes, boolean trimTokens) {
+    String line = clean(aLine);
+    if (line == null) {
+      return null;
+    }
+
+    List<String> tokens = new ArrayList<String>();
+    StringBuilder sb = new StringBuilder();
+    boolean inQuotes = false;
+
+    for (int i = 0; i < line.length(); i++) {
+
+      char c = line.charAt(i);
+      if (c == beginQuoteChar) {
+        // this gets complex... the quote may end a quoted block, or escape another quote.
+        // do a 1-char lookahead:
+        if (inQuotes  // we are in quotes, therefore there can be escaped quotes in here.
+                && line.length() > (i + 1)  // there is indeed another character to check.
+                && line.charAt(i + 1) == beginQuoteChar) { // ..and that char. is a quote also.
+          // we have two quote chars in a row == one quote char, so consume them both and
+          // put one on the token. we do *not* exit the quoted text.
+          sb.append(line.charAt(i + 1));
+          i++;
+        } else {
+          inQuotes = !inQuotes;
+          if (retainQuotes) {
+            sb.append(c);
+          }
+        }
+      } else if (c == endQuoteChar) {
+        inQuotes = !inQuotes;
+        if (retainQuotes) {
+          sb.append(c);
+        }
+      } else if (c == delimiter && !inQuotes) {
+        String s = sb.toString();
+        if (trimTokens) {
+          s = s.trim();
+        }
+        tokens.add(s);
+        sb = new StringBuilder(); // start work on next token
+      } else {
+        sb.append(c);
+      }
+    }
+    String s = sb.toString();
+    if (trimTokens) {
+      s = s.trim();
+    }
+    tokens.add(s);
+    return tokens.toArray(new String[tokens.size()]);
+  }
+
+
+  private static <E> Set<E> asSet(E... elements) {
+    if (elements == null || elements.length == 0) {
+      return Collections.emptySet();
+    }
+
+    if (elements.length == 1) {
+      return Collections.singleton(elements[0]);
+    }
+
+    LinkedHashSet<E> set = new LinkedHashSet<E>(elements.length * 4 / 3 + 1);
+    Collections.addAll(set, elements);
+    return set;
+  }
+
+  /**
+   * Returns a 'cleaned' representation of the specified argument.  'Cleaned' is defined as the following:
+   * <p/>
+   * <ol>
+   * <li>If the specified <code>String</code> is <code>null</code>, return <code>null</code></li>
+   * <li>If not <code>null</code>, {@link String#trim() trim()} it.</li>
+   * <li>If the trimmed string is equal to the empty String (i.e. &quot;&quot;), return <code>null</code></li>
+   * <li>If the trimmed string is not the empty string, return the trimmed version</li>.
+   * </ol>
+   * <p/>
+   * Therefore this method always ensures that any given string has trimmed text, and if it doesn't, <code>null</code>
+   * is returned.
+   *
+   * @param in the input String to clean.
+   * @return a populated-but-trimmed String or <code>null</code> otherwise
+   */
+  public static String clean(String in) {
+    String out = in;
+
+    if (in != null) {
+      out = in.trim();
+      if (out.equals(EMPTY)) {
+        out = null;
+      }
+    }
+
+    return out;
+  }
+
+
+  public static boolean hasText(String str) {
+    if (!hasLength(str)) {
+      return false;
+    }
+    int strLen = str.length();
+    for (int i = 0; i < strLen; i++) {
+      if (!Character.isWhitespace(str.charAt(i))) {
+        return true;
+      }
+    }
+    return false;
+  }
+
+
+  public static boolean hasLength(String str) {
+    return (str != null && str.length() > 0);
+  }
+
+  public static String formatTeacherStr(String teacherStr) {
+    StringBuilder sb = new StringBuilder();
+    List<String> strings = Splitter.on(COMMA_SEPARATOR).trimResults().omitEmptyStrings().splitToList(teacherStr);
+    if (CollectionTools.isNotEmpty(strings)) {
+      for (String string : strings) {
+        if (!"".equals(string)) {
+          sb.append(string + "、");
+        }
+      }
+    }
+    String teachers = sb.toString();
+    if (isNotEmpty(teachers)) {
+      return teachers.substring(0, teachers.length() - 1);
+    }
+    return teachers;
+  }
+
+
+  /**
+   * 忽略大小写的相等判断
+   *
+   * @param src
+   * @param des
+   * @return
+   */
+  public static boolean equalsIgnoreCase(String src, String des) {
+    if (src == null && des == null) {
+      return true;
+    } else if (src == null) {
+      return false;
+    } else if (des == null) {
+      return false;
+    } else if (src.toLowerCase().equals(des.toLowerCase())) {
+      return true;
+    } else {
+      return false;
+    }
+  }
+
+
+  /**
+   * 忽略大小写的是否以特定字符开头
+   *
+   * @param src
+   * @param des
+   * @return
+   */
+  public static boolean startsWithIgnoreCase(String src, String des) {
+    if (src == null && des == null) {
+      return true;
+    } else if (src == null) {
+      return false;
+    } else if (des == null) {
+      return false;
+    } else if (src.toLowerCase().indexOf(des.toLowerCase()) == 0) {
+      return true;
+    } else {
+      return false;
+    }
+  }
+
+  /**
+   * 是否以特定字符开头
+   *
+   * @param src
+   * @param des
+   * @return
+   */
+  public static boolean startsWith(String src, String des) {
+    if (src == null && des == null) {
+      return true;
+    } else if (src == null) {
+      return false;
+    } else if (des == null) {
+      return false;
+    } else if (src.toLowerCase().indexOf(des) == 0) {
+      return true;
+    } else {
+      return false;
+    }
+  }
+
+
+  public static String replaceEach(String text, String[] searchList, String[] replacementList) {
+    return replaceEach(text, searchList, replacementList, false, 0);
+  }
+
+  public static String replaceEachRepeatedly(String text, String[] searchList, String[] replacementList) {
+    int timeToLive = searchList == null ? 0 : searchList.length;
+    return replaceEach(text, searchList, replacementList, true, timeToLive);
+  }
+
+  private static String replaceEach(String text, String[] searchList, String[] replacementList, boolean repeat, int timeToLive) {
+    if (text != null && isNotEmpty(text) && searchList != null && searchList.length != 0 && replacementList != null && replacementList.length != 0) {
+      if (timeToLive < 0) {
+        throw new IllegalStateException("Aborting to protect against StackOverflowError - output of one loop is the input of another");
+      } else {
+        int searchLength = searchList.length;
+        int replacementLength = replacementList.length;
+        if (searchLength != replacementLength) {
+          throw new IllegalArgumentException("Search and Replace array lengths don't match: " + searchLength + " vs " + replacementLength);
+        } else {
+          boolean[] noMoreMatchesForReplIndex = new boolean[searchLength];
+          int textIndex = -1;
+          int replaceIndex = -1;
+          int tempIndex = -1;
+
+          int start;
+          for (start = 0; start < searchLength; ++start) {
+            if (!noMoreMatchesForReplIndex[start] && searchList[start] != null && isNotEmpty(searchList[start]) && replacementList[start] != null) {
+              tempIndex = text.indexOf(searchList[start]);
+              if (tempIndex == -1) {
+                noMoreMatchesForReplIndex[start] = true;
+              } else if (textIndex == -1 || tempIndex < textIndex) {
+                textIndex = tempIndex;
+                replaceIndex = start;
+              }
+            }
+          }
+
+          if (textIndex == -1) {
+            return text;
+          } else {
+            start = 0;
+            int increase = 0;
+
+            int i;
+            for (i = 0; i < searchList.length; ++i) {
+              if (searchList[i] != null && replacementList[i] != null) {
+                i = replacementList[i].length() - searchList[i].length();
+                if (i > 0) {
+                  increase += 3 * i;
+                }
+              }
+            }
+
+            increase = Math.min(increase, text.length() / 5);
+            StringBuilder buf = new StringBuilder(text.length() + increase);
+
+            while (textIndex != -1) {
+              for (i = start; i < textIndex; ++i) {
+                buf.append(text.charAt(i));
+              }
+
+              buf.append(replacementList[replaceIndex]);
+              start = textIndex + searchList[replaceIndex].length();
+              textIndex = -1;
+              replaceIndex = -1;
+              tempIndex = -1;
+
+              for (i = 0; i < searchLength; ++i) {
+                if (!noMoreMatchesForReplIndex[i] && searchList[i] != null && isNotEmpty(searchList[i]) && replacementList[i] != null) {
+                  tempIndex = text.indexOf(searchList[i], start);
+                  if (tempIndex == -1) {
+                    noMoreMatchesForReplIndex[i] = true;
+                  } else if (textIndex == -1 || tempIndex < textIndex) {
+                    textIndex = tempIndex;
+                    replaceIndex = i;
+                  }
+                }
+              }
+            }
+
+            i = text.length();
+
+            for (i = start; i < i; ++i) {
+              buf.append(text.charAt(i));
+            }
+
+            String result = buf.toString();
+            if (!repeat) {
+              return result;
+            } else {
+              return replaceEach(result, searchList, replacementList, repeat, timeToLive - 1);
+            }
+          }
+        }
+      }
+    } else {
+      return text;
+    }
+  }
+
+
+  public static String capitalize(String str) {
+    int strLen;
+    if (str != null && (strLen = str.length()) != 0) {
+      char firstChar = str.charAt(0);
+      return Character.isTitleCase(firstChar) ? str : (new StringBuilder(strLen)).append(Character.toTitleCase(firstChar)).append(str.substring(1)).toString();
+    } else {
+      return str;
+    }
+  }
+
+  public static String uncapitalize(String str) {
+    int strLen;
+    if (str != null && (strLen = str.length()) != 0) {
+      char firstChar = str.charAt(0);
+      return Character.isLowerCase(firstChar) ? str : (new StringBuilder(strLen)).append(Character.toLowerCase(firstChar)).append(str.substring(1)).toString();
+    } else {
+      return str;
+    }
+  }
+
+  public static String substringAfterLast(String str, String separator) {
+    if (isEmpty(str)) {
+      return str;
+    } else if (isEmpty(separator)) {
+      return "";
+    } else {
+      int pos = str.lastIndexOf(separator);
+      return pos != -1 && pos != str.length() - separator.length() ? str.substring(pos + separator.length()) : "";
+    }
+  }
+
+
+  public static String substringBetween(String str, String tag) {
+    return substringBetween(str, tag, tag);
+  }
+
+  public static String substringBetween(String str, String open, String close) {
+    if (str != null && open != null && close != null) {
+      int start = str.indexOf(open);
+      if (start != -1) {
+        int end = str.indexOf(close, start + open.length());
+        if (end != -1) {
+          return str.substring(start + open.length(), end);
+        }
+      }
+
+      return null;
+    } else {
+      return null;
+    }
+  }
+
+
+  /**
+   * 驼峰命名法工具
+   *
+   * @return toCamelCase(" hello_world ") == "helloWorld"
+   * toCapitalizeCamelCase("hello_world") == "HelloWorld"
+   * toUnderScoreCase("helloWorld") = "hello_world"
+   */
+  public static String toCamelCase(String s) {
+    if (s == null) {
+      return null;
+    }
+
+    s = s.toLowerCase();
+
+    StringBuilder sb = new StringBuilder(s.length());
+    boolean upperCase = false;
+    for (int i = 0; i < s.length(); i++) {
+      char c = s.charAt(i);
+
+      if (c == SEPARATOR) {
+        upperCase = true;
+      } else if (upperCase) {
+        sb.append(Character.toUpperCase(c));
+        upperCase = false;
+      } else {
+        sb.append(c);
+      }
+    }
+
+    return sb.toString();
+  }
+
+
+  /**
+   * 驼峰命名法工具
+   *
+   * @return toCamelCase(" hello_world ") == "helloWorld"
+   * toCapitalizeCamelCase("hello_world") == "HelloWorld"
+   * toUnderScoreCase("helloWorld") = "hello_world"
+   */
+  public static String toUnderScoreCase(String s) {
+    if (s == null) {
+      return null;
+    }
+
+    StringBuilder sb = new StringBuilder();
+    boolean upperCase = false;
+    for (int i = 0; i < s.length(); i++) {
+      char c = s.charAt(i);
+
+      boolean nextUpperCase = true;
+
+      if (i < (s.length() - 1)) {
+        nextUpperCase = Character.isUpperCase(s.charAt(i + 1));
+      }
+
+      if ((i > 0) && Character.isUpperCase(c)) {
+        if (!upperCase || !nextUpperCase) {
+          sb.append(SEPARATOR);
+        }
+        upperCase = true;
+      } else {
+        upperCase = false;
+      }
+
+      sb.append(Character.toLowerCase(c));
+    }
+
+    return sb.toString();
+  }
+
+
+//  public static void main(String[] args) {
+//    String encoding = "UTF-8";
+//    File file = new File("/Users/gxb/Documents/city-code.json");
+//    Long filelength = file.length();
+//    int id = 0;
+//    byte[] filecontent = new byte[filelength.intValue()];
+//    try {
+//      FileInputStream in = new FileInputStream(file);
+//      in.read(filecontent);
+//      in.close();
+//      String content = new String(filecontent, encoding);
+//      JSONArray josn = JSONObject.parseArray(content);
+//
+//      JSONArray newJson = new JSONArray();
+//
+//      for (int i = 0; i < josn.size(); i++) {
+//        id++;
+//        JSONObject o = (JSONObject) josn.get(i);
+//        String code = o.getString("code");
+//        String name = o.getString("name");
+//
+//        JSONObject object = new JSONObject();
+//        object.put("label", name);
+//        object.put("value", id);
+//        object.put("code", code);
+//        JSONArray scitys = new JSONArray();
+//        System.out.println("INSERT INTO zygj_zone_city (id, name, code, parent_id) VALUES (" + id + ", '" + name + "', '" + code + "', 0);");
+//        if ("北京".equals(name) || "上海".equals(name) || "天津".equals(name) || "重庆".equals(name) || "澳门".equals(name) || "香港".equals(name)) {
+//
+//        } else {
+//          JSONArray cities = o.getJSONArray("cities");
+//          int parentId = id;
+//          for (int j = 0; j < cities.size(); j++) {
+//            id++;
+//            JSONObject newcity = new JSONObject();
+//            JSONObject city = (JSONObject) cities.get(j);
+//            String code1 = city.getString("code");
+//            String name1 = city.getString("name");
+//            newcity.put("label", name1);
+//            newcity.put("value", id);
+//            newcity.put("code", code1);
+//            System.out.println("INSERT INTO zygj_zone_city (id, name, code, parent_id) VALUES (" + id + ", '" + name1 + "', '" + code1 + "', " + parentId + ");");
+//            scitys.add(newcity);
+//          }
+//        }
+//        object.put("children", scitys);
+//        newJson.add(object);
+//      }
+//      String t = JSONArray.toJSONString(newJson);
+//      System.out.println(t);
+//    } catch (FileNotFoundException e) {
+//      e.printStackTrace();
+//    } catch (IOException e) {
+//      e.printStackTrace();
+//    }
+//
+//
+//  }
+
+
+}

+ 104 - 0
energy-manage-common/src/main/java/com/energy/manage/common/util/UUIDTools.java

@@ -0,0 +1,104 @@
+package com.energy.manage.common.util;
+
+import org.springframework.util.StringUtils;
+
+import java.util.UUID;
+
+public class UUIDTools {
+
+  /**
+   * 获取32位 uuid
+   *
+   * @return
+   */
+  public static String getUUID() {
+    String uuid = UUID.randomUUID().toString();
+    if (!StringUtils.isEmpty(uuid)) {
+      uuid = uuid.replaceAll("-", "");
+    }
+    return uuid;
+  }
+
+  /**
+   * 获取32位大写 uuid
+   *
+   * @return
+   */
+  public static String getUUIDUpperCase() {
+    String uuid = UUID.randomUUID().toString();
+    if (!StringUtils.isEmpty(uuid)) {
+      uuid = uuid.replaceAll("-", "");
+    }
+    return uuid.toUpperCase();
+  }
+
+  /**
+   * 获取32位小写 uuid
+   *
+   * @return
+   */
+  public static String getUUIDLowCase() {
+    String uuid = UUID.randomUUID().toString();
+    if (!StringUtils.isEmpty(uuid)) {
+      uuid = uuid.replaceAll("-", "");
+    }
+    return uuid.toLowerCase();
+  }
+
+
+  private static String[] chars = new String[]{"a", "b", "c", "d", "e", "f",
+          "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s",
+          "t", "u", "v", "w", "x", "y", "z", "0", "1", "2", "3", "4", "5",
+          "6", "7", "8", "9", "A", "B", "C", "D", "E", "F", "G", "H", "I",
+          "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V",
+          "W", "X", "Y", "Z"};
+
+
+  /**
+   * 生成8位UUID
+   *
+   * @return
+   */
+  public static String getShortUUID() {
+    StringBuffer shortBuffer = new StringBuffer();
+    String uuid = getUUID();
+    for (int i = 0; i < 8; i++) {
+      String str = uuid.substring(i * 4, i * 4 + 4);
+      int x = Integer.parseInt(str, 16);
+      shortBuffer.append(chars[x % 0x3E]);
+    }
+    return shortBuffer.toString();
+  }
+
+  /**
+   * 生成8位大写UUID
+   *
+   * @return
+   */
+  public static String getShortUUIDUpperCase() {
+    StringBuffer shortBuffer = new StringBuffer();
+    String uuid = getUUID();
+    for (int i = 0; i < 8; i++) {
+      String str = uuid.substring(i * 4, i * 4 + 4);
+      int x = Integer.parseInt(str, 16);
+      shortBuffer.append(chars[x % 0x3E]);
+    }
+    return shortBuffer.toString().toUpperCase();
+  }
+
+  /**
+   * 生成8位小写UUID
+   *
+   * @return
+   */
+  public static String getShortUUIDLowCase() {
+    StringBuffer shortBuffer = new StringBuffer();
+    String uuid = getUUID();
+    for (int i = 0; i < 8; i++) {
+      String str = uuid.substring(i * 4, i * 4 + 4);
+      int x = Integer.parseInt(str, 16);
+      shortBuffer.append(chars[x % 0x3E]);
+    }
+    return shortBuffer.toString().toLowerCase();
+  }
+}

+ 138 - 0
energy-manage-service/pom.xml

@@ -0,0 +1,138 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <parent>
+        <artifactId>energy-manage-platform</artifactId>
+        <groupId>com.zhzn.energy</groupId>
+        <version>1.0.0-SNAPSHOT</version>
+    </parent>
+    <modelVersion>4.0.0</modelVersion>
+
+    <artifactId>energy-manage-service</artifactId>
+
+    <properties>
+        <energy-manage-common.version>1.0.0-SNAPSHOT</energy-manage-common.version>
+        <energy-manage-element.version>1.0.0-SNAPSHOT</energy-manage-element.version>
+    </properties>
+
+    <dependencies>
+        <dependency>
+            <groupId>com.zhzn.energy</groupId>
+            <artifactId>energy-manage-common</artifactId>
+            <version>${energy-manage-common.version}</version>
+        </dependency>
+
+        <dependency>
+            <groupId>com.zhzn.energy</groupId>
+            <artifactId>energy-manage-element</artifactId>
+            <version>${energy-manage-element.version}</version>
+        </dependency>
+
+        <!-- xxl-job 分布式任务 -->
+        <dependency>
+            <groupId>com.xuxueli</groupId>
+            <artifactId>xxl-job-core</artifactId>
+            <version>2.3.0</version>
+        </dependency>
+
+        <!--minio-->
+        <dependency>
+            <groupId>io.minio</groupId>
+            <artifactId>minio</artifactId>
+            <version>8.0.3</version>
+        </dependency>
+
+    </dependencies>
+
+    <build>
+        <finalName>${project.artifactId}</finalName>
+        <resources>
+            <resource>
+                <directory>src/main/resources/</directory>
+                <filtering>true</filtering>
+                <includes>
+                    <include>**/*.properties</include>
+                </includes>
+            </resource>
+            <resource>
+                <directory>src/main/resources/</directory>
+                <filtering>true</filtering>
+            </resource>
+        </resources>
+        <plugins>
+            <plugin>
+                <groupId>org.springframework.boot</groupId>
+                <artifactId>spring-boot-maven-plugin</artifactId>
+                <version>2.0.5.RELEASE</version>
+                <executions>
+                    <execution>
+                        <goals>
+                            <goal>repackage</goal>
+                        </goals>
+                    </execution>
+                </executions>
+                <configuration>
+                    <mainClass>com.energy.manage.service.ManageAppApplication</mainClass>
+                </configuration>
+            </plugin>
+            <!-- Compiler 插件, 设定JDK版本 -->
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-compiler-plugin</artifactId>
+                <version>${maven-compiler-plugin.version}</version>
+                <configuration>
+                    <source>${java.version}</source>
+                    <target>${java.version}</target>
+                    <encoding>utf-8</encoding>
+                    <showWarnings>true</showWarnings>
+                    <compilerArguments>
+                        <endorseddirs>${endorsed.dir}</endorseddirs>
+                    </compilerArguments>
+                </configuration>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-resources-plugin</artifactId>
+                <version>2.6</version>
+                <configuration>
+                <encoding>UTF-8</encoding>
+                <!-- 过滤后缀文件 -->
+                <nonFilteredFileExtensions>
+                    <nonFilteredFileExtension>xlsx</nonFilteredFileExtension>
+                    <nonFilteredFileExtension>xls</nonFilteredFileExtension>
+                    <nonFilteredFileExtension>doc</nonFilteredFileExtension>
+                    <nonFilteredFileExtension>docx</nonFilteredFileExtension>
+                </nonFilteredFileExtensions>
+            </configuration>
+            </plugin>
+        </plugins>
+    </build>
+
+    <!-- 配置环境 -->
+    <profiles>
+        <profile>
+            <id>dev</id>
+            <properties>
+                <profiles.active>dev</profiles.active>
+            </properties>
+            <activation>
+                <activeByDefault>true</activeByDefault>
+            </activation>
+        </profile>
+        <profile>
+            <id>test</id>
+            <properties>
+                <profiles.active>test</profiles.active>
+            </properties>
+        </profile>
+        <profile>
+            <id>prod</id>
+            <properties>
+                <profiles.active>prod</profiles.active>
+            </properties>
+        </profile>
+    </profiles>
+
+
+</project>

+ 33 - 0
energy-manage-service/src/main/java/com/energy/manage/service/ManageAppApplication.java

@@ -0,0 +1,33 @@
+package com.energy.manage.service;
+
+import com.energy.manage.common.mapper.MyMapper;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
+import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.ComponentScan;
+import org.springframework.context.annotation.EnableAspectJAutoProxy;
+import org.springframework.kafka.annotation.EnableKafka;
+import org.springframework.scheduling.annotation.EnableAsync;
+import org.springframework.transaction.annotation.EnableTransactionManagement;
+import tk.mybatis.spring.annotation.MapperScan;
+
+@EnableKafka
+@EnableDiscoveryClient
+@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class})
+@EnableAspectJAutoProxy(exposeProxy = true)
+@EnableTransactionManagement
+@EnableAsync
+@MapperScan(value = "com.energy.manage.service.mappers", markerInterface = MyMapper.class)
+@Slf4j
+public class ManageAppApplication {
+
+    public static void main(String[] args) {
+        SpringApplication.run(ManageAppApplication.class, args);
+        log.info("============= ManageService Application Service Start Success =====>");
+    }
+
+
+}

+ 31 - 0
energy-manage-service/src/main/java/com/energy/manage/service/config/AsyncConfig.java

@@ -0,0 +1,31 @@
+package com.energy.manage.service.config;
+
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Lazy;
+import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
+
+import java.util.concurrent.Executor;
+import java.util.concurrent.ThreadPoolExecutor;
+
+@Configuration
+public class AsyncConfig {
+
+    @Bean("getTaskExector")
+    @Lazy
+    public Executor taskExecutor() {
+        //通过Runtime方法来获取当前服务器cpu内核,根据cpu内核来创建核心线程数和最大线程数
+        int threadCount = Runtime.getRuntime().availableProcessors();
+        ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();
+        executor.setCorePoolSize(threadCount);
+        executor.setMaxPoolSize(threadCount);
+        executor.setQueueCapacity(200);
+        executor.setKeepAliveSeconds(60);
+        executor.setThreadNamePrefix("taskExecutor-");
+        executor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy());
+        executor.setAwaitTerminationSeconds(60);
+        return executor;
+    }
+
+
+}

+ 117 - 0
energy-manage-service/src/main/java/com/energy/manage/service/config/CrossConfig.java

@@ -0,0 +1,117 @@
+//package com.energy.manage.service.config;
+//
+//import com.fasterxml.jackson.databind.DeserializationFeature;
+//import com.fasterxml.jackson.databind.ObjectMapper;
+//import org.springframework.context.annotation.Bean;
+//import org.springframework.context.annotation.Configuration;
+//import org.springframework.http.converter.HttpMessageConverter;
+//import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter;
+//import org.springframework.web.servlet.config.annotation.CorsRegistry;
+//import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
+//
+//import java.util.List;
+//
+///**
+// * 跨域配置
+// */
+//@Configuration
+//public class CrossConfig implements WebMvcConfigurer {
+//
+//    @Override
+//    public void addCorsMappings(CorsRegistry registry) {
+//        registry.addMapping("/**")
+//                //.allowedHeaders("Origin", "X-Requested-With", "Content-Type", "Accept", "X-Token", "content-type")
+//                .allowedHeaders("*")  //服务器允许的请求头
+//                .allowedMethods("POST", "PUT", "GET", "OPTIONS", "DELETE")  //服务器允许的请求方法
+//                .allowCredentials(true)  //允许带 cookie 的跨域请求
+//                .allowedOrigins("*")  //服务端允许哪些域请求资源
+//                .maxAge(3600);   //预检请求的缓存时间
+//    }
+//
+//
+//    @Override
+//    public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
+//        converters.add(mappingJackson2HttpMessageConverter());
+//    }
+//
+//    @Bean
+//    public MappingJackson2HttpMessageConverter mappingJackson2HttpMessageConverter(){
+//        MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter();
+//        ObjectMapper objectMapper = new ObjectMapper();
+//        //未知属性忽略
+//        objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
+//        converter.setObjectMapper(objectMapper);
+//        return converter;
+//    }
+
+//
+//    //注册Filter
+//    @Bean
+//    public FilterRegistrationBean filterRegistrationBean() {
+//        FilterRegistrationBean reg = new FilterRegistrationBean();
+//        //使用框架中的过滤器类
+//        CharacterEncodingFilter filter = new CharacterEncodingFilter();
+//        //指定使用的编码方式
+//        filter.setEncoding("utf-8");
+//        //指定request , response都使用encoding的值
+//        filter.setForceEncoding(true);
+//        reg.setFilter(filter);
+//        //指定 过滤的url地址
+//        reg.addUrlPatterns("/*");
+//        return reg;
+//    }
+
+
+
+//    @Override
+//    public void addCorsMappings(CorsRegistry registry) {
+//        registry.addMapping("/**")
+//                .allowedOrigins("*")
+//                .allowedMethods("POST", "GET", "PUT", "OPTIONS", "DELETE")
+//                .maxAge(3600)
+//                .allowCredentials(true);
+//    }
+
+//    @Bean
+//    public FilterRegistrationBean corsFilter() {
+//        UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
+//        CorsConfiguration config = new CorsConfiguration();
+//        config.setAllowCredentials(true);
+//        /* 设置你要允许的网站域名,如果全允许则设为 * */
+//        config.addAllowedOrigin("*");
+//        // 如果要限制 HEADER 或 METHOD 请自行更改
+//        config.addAllowedHeader("*");
+//        config.addAllowedMethod("*");
+//        config.setMaxAge(86400L);
+//        source.registerCorsConfiguration("/**", config);
+//        FilterRegistrationBean bean = new FilterRegistrationBean(new CorsFilter(source));
+//        // 启动顺序
+//        bean.setOrder(0);
+//        return bean;
+//    }
+
+//    private CorsConfiguration buildConfig() {
+//        CorsConfiguration corsConfiguration = new CorsConfiguration();
+//        // 允许放行那些原始域
+//        corsConfiguration.addAllowedOrigin("*");
+//        // 允许放行那些原始域(头部信息)`
+//        corsConfiguration.addAllowedHeader("*");
+//        // 允许放行那些原始域(请求方式)
+//        corsConfiguration.addAllowedMethod("*");
+//        // 是否发送Cookie信息
+//        corsConfiguration.setAllowCredentials(true);
+//        return corsConfiguration;
+//    }
+//
+//    @Bean
+//    public CorsFilter corsFilter() {
+//        UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
+//        source.registerCorsConfiguration("/**", buildConfig()); // 4
+//        return new CorsFilter(source);
+//    }
+
+
+
+
+
+//}

+ 21 - 0
energy-manage-service/src/main/java/com/energy/manage/service/config/HttpConfig.java

@@ -0,0 +1,21 @@
+package com.energy.manage.service.config;
+
+import org.springframework.boot.web.client.RestTemplateBuilder;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.web.client.RestTemplate;
+
+import java.time.Duration;
+
+@Configuration
+public class HttpConfig {
+
+    @Bean
+    public RestTemplate restTemplate() {
+        RestTemplate restTemplate = new RestTemplateBuilder()
+                .setConnectTimeout(Duration.ofSeconds(3))
+                .setReadTimeout(Duration.ofSeconds(10))
+                .build();
+        return restTemplate;
+    }
+}

+ 82 - 0
energy-manage-service/src/main/java/com/energy/manage/service/config/Knife4jConfiguration.java

@@ -0,0 +1,82 @@
+package com.energy.manage.service.config;
+
+import io.swagger.models.auth.In;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import springfox.documentation.builders.ApiInfoBuilder;
+import springfox.documentation.builders.PathSelectors;
+import springfox.documentation.builders.RequestHandlerSelectors;
+import springfox.documentation.service.*;
+import springfox.documentation.spi.DocumentationType;
+import springfox.documentation.spi.service.contexts.SecurityContext;
+import springfox.documentation.spring.web.plugins.Docket;
+import springfox.documentation.swagger2.annotations.EnableSwagger2;
+
+import java.util.ArrayList;
+import java.util.List;
+
+@Configuration
+@EnableSwagger2
+public class Knife4jConfiguration {
+
+    @Bean(value = "defaultApi2")
+    public Docket defaultApi2() {
+        Docket docket = new Docket(DocumentationType.SWAGGER_2)
+                .apiInfo(apiInfo())
+                //分组名称
+                .groupName("2.X版本")
+                .select()
+                //这里指定Controller扫描包路径
+                .apis(RequestHandlerSelectors.basePackage("com.energy.manage.service.controller"))
+                .paths(PathSelectors.any())
+                .build().securityContexts(securityContexts()).securitySchemes(securitySchemes());
+        return docket;
+    }
+
+    private ApiInfo apiInfo() {
+        return new ApiInfoBuilder()
+                .title("中能智能业务后台相关接口文档")
+                .description("包含模块:数据后台")
+                .termsOfServiceUrl("https://lanhuapp.com/url/4qLCF")
+                .contact(new Contact("研发中心", "", ""))
+                .version("1.0")
+                .build();
+    }
+
+    /**
+     * 安全模式,这里指定token通过Authorization头请求头传递
+     */
+    private List<SecurityScheme> securitySchemes() {
+        // 设置请求头信息
+        List<SecurityScheme> apiKeyList = new ArrayList<SecurityScheme>();
+        apiKeyList.add(new ApiKey("token", "token", In.HEADER.toValue()));
+        return apiKeyList;
+    }
+
+    /**
+     * 安全上下文
+     */
+    private List<SecurityContext> securityContexts() {
+        // 设置需要登录的认证路径
+        List<SecurityContext> securityContexts = new ArrayList<>();
+        securityContexts.add(
+                SecurityContext.builder()
+                        .securityReferences(defaultAuth())
+                        .operationSelector(o -> o.requestMappingPattern().matches("/.*"))
+                        .build());
+        return securityContexts;
+    }
+
+    /**
+     * 默认的安全上引用
+     */
+    private List<SecurityReference> defaultAuth() {
+        AuthorizationScope authorizationScope = new AuthorizationScope("global", "accessEverything");
+        AuthorizationScope[] authorizationScopes = new AuthorizationScope[1];
+        authorizationScopes[0] = authorizationScope;
+        List<SecurityReference> securityReferences = new ArrayList<>();
+        securityReferences.add(new SecurityReference("token", authorizationScopes));
+        return securityReferences;
+    }
+
+}

+ 53 - 0
energy-manage-service/src/main/java/com/energy/manage/service/config/LoginVerifyInterceptorConf.java

@@ -0,0 +1,53 @@
+package com.energy.manage.service.config;
+
+import com.energy.manage.service.filter.LoginVerifyInterceptor;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.web.servlet.HandlerInterceptor;
+import org.springframework.web.servlet.config.annotation.CorsRegistry;
+import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
+import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
+import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport;
+
+@Configuration
+@ConditionalOnProperty(value = "energy.login.enabled", havingValue = "true")
+public class LoginVerifyInterceptorConf extends WebMvcConfigurationSupport {
+
+    @Bean
+    public HandlerInterceptor getV2LoginVerifyInterceptor() {
+        return new LoginVerifyInterceptor();
+    }
+
+    @Override
+    public void addResourceHandlers(ResourceHandlerRegistry registry) {
+        registry.addResourceHandler("doc.html").addResourceLocations("classpath:/META-INF/resources/");
+        registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/");
+    }
+
+    @Override
+    public void addInterceptors(InterceptorRegistry registry) {
+        registry.addInterceptor(getV2LoginVerifyInterceptor())
+                .addPathPatterns("/**")
+                .excludePathPatterns("/swagger-resources/**", "/v2/**", "/swagger-ui.html/**",
+                        "/doc.html");
+        super.addInterceptors(registry);
+    }
+
+    @Override
+    public void addCorsMappings(CorsRegistry registry) {
+        // 设置允许跨域的路径
+        registry.addMapping("/**")
+                // 设置允许跨域请求的域名
+                .allowedOrigins("*")
+                // 是否允许证书
+                .allowCredentials(true)
+                // 设置允许的方法
+                .allowedMethods("GET", "POST", "DELETE", "PUT")
+                // 设置允许的header属性
+                .allowedHeaders("*")
+                // 跨域允许时间
+                .maxAge(3600);
+    }
+
+}

+ 40 - 0
energy-manage-service/src/main/java/com/energy/manage/service/config/MinIoClientConfig.java

@@ -0,0 +1,40 @@
+package com.energy.manage.service.config;
+
+import io.minio.MinioClient;
+import lombok.Data;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.context.annotation.Bean;
+import org.springframework.stereotype.Component;
+
+@Data
+@Component
+public class MinIoClientConfig {
+
+    @Value("${minio.endpoint}")
+    private String endpoint;
+
+    @Value("${minio.accessKey}")
+    private String accessKey;
+
+    @Value("${minio.secretKey}")
+    private String secretKey;
+
+
+    /**
+     * 注入minio 客户端
+     * @return
+     */
+    @Bean
+    public MinioClient minioClient(){
+
+        return MinioClient.builder()
+                .endpoint(endpoint)
+                .credentials(accessKey, secretKey)
+                .build();
+    }
+
+
+
+
+
+}

+ 53 - 0
energy-manage-service/src/main/java/com/energy/manage/service/config/SwaggerDoc.java

@@ -0,0 +1,53 @@
+//package com.energy.manage.service.config;
+//
+//import org.springframework.context.annotation.Bean;
+//import org.springframework.context.annotation.Configuration;
+//import springfox.documentation.builders.ApiInfoBuilder;
+//import springfox.documentation.builders.ParameterBuilder;
+//import springfox.documentation.builders.PathSelectors;
+//import springfox.documentation.builders.RequestHandlerSelectors;
+//import springfox.documentation.schema.ModelRef;
+//import springfox.documentation.service.ApiInfo;
+//import springfox.documentation.service.Parameter;
+//import springfox.documentation.spi.DocumentationType;
+//import springfox.documentation.spring.web.plugins.Docket;
+//import springfox.documentation.swagger2.annotations.EnableSwagger2;
+//
+//import java.util.ArrayList;
+//import java.util.List;
+//
+//@Configuration
+//@EnableSwagger2
+//public class SwaggerDoc {
+//
+//  public static String token = "";
+//
+//  @Bean
+//  public Docket createRestApi() {
+//    /*添加接口请求头参数配置 没有的话 可以忽略*/
+//    ParameterBuilder tokenPar = new ParameterBuilder();
+//    List<Parameter> pars = new ArrayList<>();
+//    tokenPar.name("token").description("令牌").defaultValue(token).modelRef(new ModelRef("string")).parameterType("header").required(false).build();
+//    pars.add(tokenPar.build());
+//
+//    return new Docket(DocumentationType.SWAGGER_2)
+//            .apiInfo(apiInfo())
+//            .select()
+//            .apis(RequestHandlerSelectors.basePackage("com.energy.manage.service.controller"))
+//            .paths(PathSelectors.any())
+//            .build()
+//            .globalOperationParameters(pars);
+//  }
+//
+//  private ApiInfo apiInfo() {
+//    return new ApiInfoBuilder()
+//            .title("中能智能业务后台相关接口文档")
+//            .description("包含模块:运营后台")
+//            .termsOfServiceUrl("https://lanhuapp.com/url/4qLCF")
+////            .contact("研发中心")
+//            .version("1.0")
+//            .build();
+//  }
+//
+//}
+//

+ 116 - 0
energy-manage-service/src/main/java/com/energy/manage/service/config/SystemExceptionHandler.java

@@ -0,0 +1,116 @@
+package com.energy.manage.service.config;
+
+import com.alibaba.fastjson.JSONObject;
+import com.energy.manage.common.exception.*;
+import com.energy.manage.common.reponse.RespMsg;
+import com.energy.manage.common.reponse.ResultResp;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.lang.Nullable;
+import org.springframework.util.StringUtils;
+import org.springframework.web.HttpRequestMethodNotSupportedException;
+import org.springframework.web.bind.MethodArgumentNotValidException;
+import org.springframework.web.bind.annotation.CrossOrigin;
+import org.springframework.web.bind.annotation.ExceptionHandler;
+import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.bind.annotation.RestControllerAdvice;
+import org.springframework.web.servlet.ModelAndView;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import javax.validation.ConstraintViolation;
+import javax.validation.ConstraintViolationException;
+import javax.validation.ValidationException;
+import java.io.IOException;
+import java.util.Locale;
+import java.util.stream.Collectors;
+
+
+@RestControllerAdvice
+@Slf4j
+public class SystemExceptionHandler {
+
+    @ExceptionHandler(value = ServiceErrorException.class)
+    @ResponseBody
+    @CrossOrigin
+    public JSONObject doServiceErrorException() {
+        return RespMsg.FAILException();
+    }
+
+    @ExceptionHandler(value = UserNotLoginException.class)
+    @ResponseBody
+    @CrossOrigin
+    public JSONObject doUserNotLoginHandler() {
+        return RespMsg.PLEASELOGIN();
+    }
+
+    @ExceptionHandler(value = TokenInvalidException.class)
+    @ResponseBody
+    @CrossOrigin
+    public JSONObject doMorePersonLoginHandler() {
+        return RespMsg.TOKENVALID();
+    }
+
+    @ExceptionHandler(value = ErrorSignException.class)
+    @CrossOrigin
+    @ResponseBody
+    public JSONObject doErrorSign() {
+        return RespMsg.ERRORSIGN();
+    }
+
+    @ExceptionHandler(value = NoRequestException.class)
+    @CrossOrigin
+    @ResponseBody
+    public JSONObject doNoRequestHandler() {
+        return RespMsg.NOREQUEST();
+    }
+
+    @ExceptionHandler(value = BusinessException.class)
+    @CrossOrigin
+    @ResponseBody
+    public JSONObject serviceExceptionHandler(BusinessException businessException) {
+        return RespMsg.FAIL(businessException.getCode(), businessException.getMessage());
+    }
+
+    @ExceptionHandler(value = MethodArgumentNotValidException.class)
+    @CrossOrigin
+    @ResponseBody
+    public ResultResp methodArgumentNotValidExceptionHandler(MethodArgumentNotValidException methodArgumentNotValidException) {
+        return ResultResp.FAIL(methodArgumentNotValidException.getBindingResult().getFieldErrors().get(0).getDefaultMessage());
+    }
+
+    /**
+     * 违反约束异常处理
+     *
+     * @param e
+     * @return
+     */
+    @ExceptionHandler(ConstraintViolationException.class)
+    @ResponseBody
+    public ResultResp handConstraintViolationException(ConstraintViolationException e) {
+        String msg = e.getConstraintViolations()
+                .stream()
+                .map(ConstraintViolation::getMessage)
+                .collect(Collectors.joining("; "));
+        return ResultResp.FAIL(msg);
+    }
+
+
+    @ExceptionHandler(ValidationException.class)
+    @ResponseBody
+    public ResultResp validException(ValidationException exception) {
+        return ResultResp.FAIL(exception.getMessage());
+    }
+
+    @ExceptionHandler(HttpRequestMethodNotSupportedException.class)
+    protected ModelAndView handleHttpRequestMethodNotSupported(HttpRequestMethodNotSupportedException ex,
+                                                               HttpServletRequest request, HttpServletResponse response,
+                                                               @Nullable Object handler) throws IOException {
+        String[] supportedMethods = ex.getSupportedMethods();
+        if (supportedMethods != null) {
+            response.setHeader("Allow", StringUtils.arrayToDelimitedString(supportedMethods, ", "));
+        }
+        log.error("访问[{}]类型[{}]不支持", request.getRequestURI(),request.getMethod().toUpperCase(Locale.ROOT));
+        response.sendError(HttpServletResponse.SC_METHOD_NOT_ALLOWED, ex.getMessage());
+        return new ModelAndView();
+    }
+}

+ 57 - 0
energy-manage-service/src/main/java/com/energy/manage/service/config/WebMVCConfig.java

@@ -0,0 +1,57 @@
+package com.energy.manage.service.config;
+
+import com.fasterxml.jackson.databind.DeserializationFeature;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.http.converter.HttpMessageConverter;
+import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter;
+import org.springframework.web.servlet.config.annotation.CorsRegistry;
+import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
+import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
+
+import java.util.List;
+
+
+@Configuration
+public class WebMVCConfig  implements WebMvcConfigurer {
+
+    @Override
+    public void addResourceHandlers(ResourceHandlerRegistry registry) {
+        //swagger2 静态资源映射
+        registry.addResourceHandler("doc.html").addResourceLocations("classpath:/META-INF/resources/");
+        registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/");
+    }
+
+    /**
+     * 跨域问题
+     * @param registry
+     */
+    @Override
+    public void addCorsMappings(CorsRegistry registry) {
+        registry.addMapping("/**")
+                //.allowedHeaders("Origin", "X-Requested-With", "Content-Type", "Accept", "X-Token", "content-type")
+                .allowedHeaders("*")  //服务器允许的请求头
+                .allowedMethods("POST", "PUT", "GET", "OPTIONS", "DELETE")  //服务器允许的请求方法
+                .allowCredentials(true)  //允许带 cookie 的跨域请求
+                .allowedOrigins("*")  //服务端允许哪些域请求资源
+                .maxAge(3600);   //预检请求的缓存时间
+    }
+
+
+    @Override
+    public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
+        converters.add(mappingJackson2HttpMessageConverter());
+    }
+
+    @Bean
+    public MappingJackson2HttpMessageConverter mappingJackson2HttpMessageConverter(){
+        MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter();
+        ObjectMapper objectMapper = new ObjectMapper();
+        //未知属性忽略
+        objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
+        converter.setObjectMapper(objectMapper);
+        return converter;
+    }
+
+}

+ 18 - 0
energy-manage-service/src/main/java/com/energy/manage/service/config/annotations/NoRepeatSubmit.java

@@ -0,0 +1,18 @@
+package com.energy.manage.service.config.annotations;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+@Target(ElementType.METHOD) // 作用到方法上
+@Retention(RetentionPolicy.RUNTIME) // 运行时有效
+
+/**
+ * @功能描述 防止重复提交标记注解】
+ */
+public @interface NoRepeatSubmit {
+
+
+
+}

+ 12 - 0
energy-manage-service/src/main/java/com/energy/manage/service/config/annotations/PassToken.java

@@ -0,0 +1,12 @@
+package com.energy.manage.service.config.annotations;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+@Target({ElementType.METHOD, ElementType.TYPE})
+@Retention(RetentionPolicy.RUNTIME)
+public @interface PassToken {
+    boolean required() default true;
+}

+ 14 - 0
energy-manage-service/src/main/java/com/energy/manage/service/config/annotations/UserLoginToken.java

@@ -0,0 +1,14 @@
+package com.energy.manage.service.config.annotations;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+@Target({ElementType.METHOD, ElementType.TYPE})
+@Retention(RetentionPolicy.RUNTIME)
+public @interface UserLoginToken {
+
+    boolean required() default true;
+
+}

+ 128 - 0
energy-manage-service/src/main/java/com/energy/manage/service/config/aop/AopLog.java

@@ -0,0 +1,128 @@
+package com.energy.manage.service.config.aop;
+
+import cn.hutool.core.util.IdUtil;
+import cn.hutool.json.JSONUtil;
+import eu.bitwalker.useragentutils.UserAgent;
+import lombok.extern.slf4j.Slf4j;
+import org.aspectj.lang.JoinPoint;
+import org.aspectj.lang.ProceedingJoinPoint;
+import org.aspectj.lang.annotation.*;
+import org.springframework.stereotype.Component;
+import org.springframework.web.context.request.RequestContextHolder;
+import org.springframework.web.context.request.ServletRequestAttributes;
+
+import javax.servlet.http.HttpServletRequest;
+import java.util.Map;
+import java.util.Objects;
+
+/**
+ *
+ */
+@Slf4j
+@Aspect
+@Component
+public class AopLog {
+
+    private static final String START_TIME = "request-start";
+
+    private static final String REQUEST_ID = "request_id";
+
+    /**
+     * 切入点
+     */
+    @Pointcut("execution(public * com.energy.manage.service.controller.*.*Controller.*(..))")
+    public void log() {
+
+    }
+
+    /**
+     * 前置操作
+     *
+     * @param point 切入点
+     */
+    @Before("log()")
+    public void beforeLog(JoinPoint point) {
+        ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
+        HttpServletRequest request = Objects.requireNonNull(attributes).getRequest();
+        Map<String, String[]> parameterMap = request.getParameterMap();
+        StringBuffer sb = new StringBuffer();
+        String requestId = IdUtil.simpleUUID();
+        sb.append("\n【request_id】:").append(requestId);
+        sb.append("\n【请求 URL】:").append(request.getRequestURL());
+        sb.append("\n【请求 IP】:").append(getIp(request));
+        sb.append("\n【请求类名】:").append(point.getSignature().getDeclaringTypeName());
+        sb.append("【请求方法名】:").append(point.getSignature().getName());
+        sb.append("\n【body】:").append(JSONUtil.toJsonStr(point.getArgs()));
+        sb.append("\n【请求参数】:").append(JSONUtil.toJsonStr(parameterMap));
+        log.info(sb.toString());
+
+//        log.info("【请求 URL】:{}", request.getRequestURL());
+//        log.info("【请求 IP】:{}", request.getRemoteAddr());
+//        log.info("【请求类名】:{},【请求方法名】:{}", point.getSignature().getDeclaringTypeName(), point.getSignature().getName());
+//        log.info("【body】:{},", JSONUtil.toJsonStr(point.getArgs()));
+//        log.info("【请求参数】:{},", JSONUtil.toJsonStr(parameterMap));
+        Long start = System.currentTimeMillis();
+        request.setAttribute(START_TIME, start);
+        request.setAttribute(REQUEST_ID, requestId);
+    }
+
+    /**
+     * 环绕操作
+     *
+     * @param point 切入点
+     * @return 原方法返回值
+     * @throws Throwable 异常信息
+     */
+    @Around("log()")
+    public Object aroundLog(ProceedingJoinPoint point) throws Throwable {
+        Object result = point.proceed();
+        ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
+        HttpServletRequest request = Objects.requireNonNull(attributes).getRequest();
+        String requestId = (String) request.getAttribute(REQUEST_ID);
+        StringBuffer sb = new StringBuffer();
+        sb.append("\n【request_id】:").append(requestId);
+        sb.append("\n【返回值】:").append(JSONUtil.toJsonStr(result));
+        log.info(sb.toString());
+//        log.info("\n【request_id】:" + requestId + "\n【返回值】:{}", JSONUtil.toJsonStr(result));
+        return result;
+    }
+
+    /**
+     * 后置操作
+     */
+    @AfterReturning("log()")
+    public void afterReturning() {
+        ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
+        HttpServletRequest request = Objects.requireNonNull(attributes).getRequest();
+        String requestId = (String) request.getAttribute(REQUEST_ID);
+        StringBuffer sb = new StringBuffer();
+        sb.append("\n【request_id】:").append(requestId);
+        Long start = (Long) request.getAttribute(START_TIME);
+        Long end = System.currentTimeMillis();
+        sb.append("\n【请求耗时】:").append((end - start)).append("毫秒");
+
+        String header = request.getHeader("User-Agent");
+        UserAgent userAgent = UserAgent.parseUserAgentString(header);
+        sb.append("\n【浏览器类型】:").append(userAgent.getBrowser().toString());
+        sb.append("\n【操作系统】:").append(userAgent.getOperatingSystem());
+        sb.append("\n【原始User-Agent】:").append(header);
+        log.info(sb.toString());
+//        log.info("【请求耗时】:{}毫秒", end - start);
+//        log.info("【浏览器类型】:{},【操作系统】:{},【原始User-Agent】:{}", userAgent.getBrowser().toString(), userAgent.getOperatingSystem().toString(), header);
+    }
+
+    private String getIp(HttpServletRequest request) {
+        String ip = request.getHeader("x-forwarded-for");
+        if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
+            ip = request.getHeader("Proxy-Client-IP");
+        }
+        if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
+            ip = request.getHeader("WL-Proxy-Client-IP");
+        }
+        if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
+            ip = request.getRemoteAddr();
+        }
+        return ip;
+    }
+
+}

+ 98 - 0
energy-manage-service/src/main/java/com/energy/manage/service/config/kafka/KafkaConsumerConfig.java

@@ -0,0 +1,98 @@
+package com.energy.manage.service.config.kafka;
+
+import com.alibaba.fastjson.JSONObject;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.kafka.clients.consumer.ConsumerConfig;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.kafka.config.ConcurrentKafkaListenerContainerFactory;
+import org.springframework.kafka.config.KafkaListenerContainerFactory;
+import org.springframework.kafka.core.ConsumerFactory;
+import org.springframework.kafka.core.DefaultKafkaConsumerFactory;
+import org.springframework.kafka.listener.ConcurrentMessageListenerContainer;
+import org.springframework.kafka.listener.ContainerProperties;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+@Configuration
+@Slf4j
+public class KafkaConsumerConfig {
+
+    @Value("${spring.kafka.consumer.bootstrapServers}")
+    private String bootstrapServers;
+//    @Value("${spring.kafka.consumer.topics}")
+//    private List<String> topics;
+    @Value("${spring.kafka.consumer.groupId}")
+    private String groupId;
+    @Value("${spring.kafka.consumer.sessionTimeOut}")
+    private String sessionTimeOut;
+    @Value("${spring.kafka.consumer.enableAutoCommit}")
+    private String enableAutoCommit;
+    @Value("${spring.kafka.consumer.autoCommitInterval}")
+    private String autoCommitInterval;
+    @Value("${spring.kafka.consumer.maxPollRecords}")
+    private String maxPollRecords;
+    @Value("${spring.kafka.consumer.maxPollInterval}")
+    private String maxPollInterval;
+    @Value("${spring.kafka.consumer.heartbeatInterval}")
+    private String heartbeatInterval;
+    @Value("${spring.kafka.consumer.keyDeserializer}")
+    private String keyDeserializer;
+    @Value("${spring.kafka.consumer.valueDeserializer}")
+    private String valueDeserializer;
+    @Value("${spring.kafka.consumer.autoOffsetReset}")
+    private String autoOffsetReset;
+
+    @Bean
+    public KafkaListenerContainerFactory<ConcurrentMessageListenerContainer<String, String>> kafkaListenerContainerFactory() {
+        ConcurrentKafkaListenerContainerFactory<String, String> factory = new ConcurrentKafkaListenerContainerFactory<>();
+        factory.setConsumerFactory(consumerFactory());
+        // 并发数 多个微服务实例会均分
+        factory.setConcurrency(1);
+        factory.setBatchListener(true);
+        ContainerProperties containerProperties = factory.getContainerProperties();
+        // 是否设置手动提交
+        containerProperties.setAckMode(ContainerProperties.AckMode.MANUAL_IMMEDIATE);
+        return factory;
+    }
+
+    private ConsumerFactory<String, String> consumerFactory() {
+        Map<String, Object> consumerConfigs = consumerConfigs();
+        log.info("消费者的配置信息:{}", JSONObject.toJSONString(consumerConfigs));
+        return new DefaultKafkaConsumerFactory<>(consumerConfigs);
+    }
+
+
+    @Bean
+    public Map<String, Object> consumerConfigs() {
+        Map<String, Object> propsMap = new HashMap<>();
+        // 服务器地址
+        propsMap.put(ConsumerConfig.BOOTSTRAP_SERVERS_CONFIG, bootstrapServers);
+        // 是否自动提交
+        propsMap.put(ConsumerConfig.ENABLE_AUTO_COMMIT_CONFIG, enableAutoCommit);
+        // 自动提交间隔
+        propsMap.put(ConsumerConfig.AUTO_COMMIT_INTERVAL_MS_CONFIG, autoCommitInterval);
+        //会话时间
+        propsMap.put(ConsumerConfig.SESSION_TIMEOUT_MS_CONFIG, sessionTimeOut);
+        //key序列化
+        propsMap.put(ConsumerConfig.KEY_DESERIALIZER_CLASS_CONFIG, keyDeserializer);
+        //value序列化
+        propsMap.put(ConsumerConfig.VALUE_DESERIALIZER_CLASS_CONFIG, valueDeserializer);
+        // 心跳时间
+        propsMap.put(ConsumerConfig.HEARTBEAT_INTERVAL_MS_CONFIG, heartbeatInterval);
+
+        // 分组id
+//        propsMap.put(ConsumerConfig.GROUP_ID_CONFIG, groupId);
+        //消费策略
+        propsMap.put(ConsumerConfig.AUTO_OFFSET_RESET_CONFIG, autoOffsetReset);
+        // poll记录数
+        propsMap.put(ConsumerConfig.MAX_POLL_RECORDS_CONFIG, maxPollRecords);
+        //poll时间
+        propsMap.put(ConsumerConfig.MAX_POLL_INTERVAL_MS_CONFIG, maxPollInterval);
+        return propsMap;
+    }
+
+}

+ 84 - 0
energy-manage-service/src/main/java/com/energy/manage/service/config/redis/RedisConfigurer.java

@@ -0,0 +1,84 @@
+package com.energy.manage.service.config.redis;
+
+import com.fasterxml.jackson.annotation.JsonAutoDetect;
+import com.fasterxml.jackson.annotation.PropertyAccessor;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.cache.CacheManager;
+import org.springframework.cache.annotation.CachingConfigurerSupport;
+import org.springframework.cache.annotation.EnableCaching;
+import org.springframework.cache.interceptor.KeyGenerator;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.data.redis.cache.RedisCacheConfiguration;
+import org.springframework.data.redis.cache.RedisCacheManager;
+import org.springframework.data.redis.connection.RedisConnectionFactory;
+import org.springframework.data.redis.core.RedisTemplate;
+import org.springframework.data.redis.serializer.*;
+
+import javax.annotation.Resource;
+import java.time.Duration;
+
+/**
+ * Redis Configuration
+ * @date: 2021-06-03 14:05:53
+ */
+@Configuration
+@EnableCaching
+@Slf4j
+public class RedisConfigurer extends CachingConfigurerSupport {
+
+  @Resource
+  RedisConnectionFactory factory;
+
+  @Bean
+  public RedisTemplate<String, Object> redisTemplate() {
+    RedisTemplate<String, Object> template = new RedisTemplate<>();
+    RedisSerializer<String> redisSerializer = new StringRedisSerializer();
+    Jackson2JsonRedisSerializer jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer(Object.class);
+    ObjectMapper om = new ObjectMapper();
+    om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
+    jackson2JsonRedisSerializer.setObjectMapper(om);
+    template.setConnectionFactory(factory);
+    //key序列化方式
+    template.setKeySerializer(redisSerializer);
+    template.setHashKeySerializer(redisSerializer);
+    //value序列化
+    template.setValueSerializer(new GenericJackson2JsonRedisSerializer());
+    //value hashmap序列化
+    template.setHashValueSerializer(new GenericJackson2JsonRedisSerializer());
+    //key hashmap序列化
+    template.setHashKeySerializer(redisSerializer);
+    return template;
+  }
+
+
+  @Bean
+  @Override
+  public CacheManager cacheManager() {
+    RedisSerializer<String> redisSerializer = new StringRedisSerializer();
+    //解决查询缓存转换异常的问题
+    ObjectMapper om = new ObjectMapper();
+    om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
+    // 配置序列化(解决乱码的问题),过期时间10天
+    RedisCacheConfiguration config = RedisCacheConfiguration.defaultCacheConfig()
+            .entryTtl(Duration.ofMinutes(10))
+            .computePrefixWith(name -> name + ":")
+            .serializeKeysWith(RedisSerializationContext.SerializationPair.fromSerializer(redisSerializer))
+            .serializeValuesWith(RedisSerializationContext.SerializationPair.fromSerializer(new GenericJackson2JsonRedisSerializer()))
+            .disableCachingNullValues();
+    RedisCacheManager cacheManager = RedisCacheManager.builder(factory)
+            .cacheDefaults(config)
+            .build();
+    log.info("redis config ={}", config.toString());
+    return cacheManager;
+  }
+
+
+  @Bean
+  public KeyGenerator jfKeyGenerator() {
+    return (target, method, params) -> {
+      return "";
+    };
+  }
+}

+ 55 - 0
energy-manage-service/src/main/java/com/energy/manage/service/config/xxl/XxlJobConfig.java

@@ -0,0 +1,55 @@
+package com.energy.manage.service.config.xxl;
+
+import com.xxl.job.core.executor.impl.XxlJobSpringExecutor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+
+/**
+ * @Description: xxlJob配置
+ */
+@Configuration
+@Slf4j
+public class XxlJobConfig {
+
+    @Value("${xxl.job.admin.addresses}")
+    private String adminAddresses;
+
+    @Value("${xxl.job.accessToken}")
+    private String accessToken;
+
+    @Value("${xxl.job.executor.appname}")
+    private String appname;
+
+    @Value("${xxl.job.executor.address}")
+    private String address;
+
+    @Value("${xxl.job.executor.ip}")
+    private String ip;
+
+    @Value("${xxl.job.executor.port}")
+    private int port;
+
+    @Value("${xxl.job.executor.logpath}")
+    private String logPath;
+
+    @Value("${xxl.job.executor.logretentiondays}")
+    private int logRetentionDays;
+
+    @Bean
+    public XxlJobSpringExecutor xxlJobExecutor() {
+        log.info(">>>>>>>>>>> xxl-job config init.");
+        XxlJobSpringExecutor xxlJobSpringExecutor = new XxlJobSpringExecutor();
+        xxlJobSpringExecutor.setAdminAddresses(adminAddresses);
+        xxlJobSpringExecutor.setAppname(appname);
+        xxlJobSpringExecutor.setAddress(address);
+        xxlJobSpringExecutor.setIp(ip);
+        xxlJobSpringExecutor.setPort(port);
+        xxlJobSpringExecutor.setAccessToken(accessToken);
+        xxlJobSpringExecutor.setLogPath(logPath);
+        xxlJobSpringExecutor.setLogRetentionDays(logRetentionDays);
+
+        return xxlJobSpringExecutor;
+    }
+}

+ 114 - 0
energy-manage-service/src/main/java/com/energy/manage/service/controller/UploadController.java

@@ -0,0 +1,114 @@
+package com.energy.manage.service.controller;
+
+import com.alibaba.fastjson.JSONObject;
+import com.energy.manage.common.reponse.RespMsg;
+import com.energy.manage.common.reponse.ResultResp;
+import com.energy.manage.service.config.annotations.PassToken;
+import com.energy.manage.service.util.MinioUtils;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
+import org.checkerframework.checker.units.qual.A;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.util.CollectionUtils;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 上传模块
+ */
+@Slf4j
+@RestController
+@RequestMapping(value = "/api/check")
+@CrossOrigin
+@Api(value = "UploadController", tags = "上传接口")
+public class UploadController {
+
+  @Autowired
+  private MinioUtils minioUtils;
+
+  @PassToken
+  @RequestMapping(value = "/uploadMaterial", method = RequestMethod.POST)
+  @ApiOperation(value = "文件上传")
+  public ResultResp uploadMaterial(@RequestPart MultipartFile[] files) {
+    if (null == files || files.length == 0) {
+      return ResultResp.FAIL("请选择要上传的内容");
+    }
+    try {
+      List<String> list = minioUtils.upload(files);
+      if (CollectionUtils.isEmpty(list)) {
+        return ResultResp.FAIL("文件上传失败,请重试或联系管理员");
+      }
+      return ResultResp.SUCCESS(list);
+    } catch (Exception ex) {
+      log.error(ex.getMessage(), ex);
+    }
+    return ResultResp.FAIL("文件上传失败,请重试或联系管理员");
+  }
+
+  /**
+   * 单文件上传
+   *
+   * @param file
+   * @return
+   */
+  @PassToken
+  @RequestMapping(value = "/upload", method = RequestMethod.POST)
+  @ApiOperation(value = "单文件上传")
+  public JSONObject upload(@RequestPart MultipartFile file) {
+
+    if (null == file) {
+      return RespMsg.FAIL("请选择要上传的内容");
+    }
+    log.info("文件名称:===>" + file.getName());
+    log.info("文件大小:===>" + file.getSize());
+    String path = minioUtils.upload(file);
+    if (StringUtils.isEmpty(path)) {
+      return RespMsg.FAIL("文件上传失败,请重试或联系管理员");
+    }
+    return RespMsg.SUCCESS(path);
+  }
+
+  /**
+   * 内部方法,有序Map转list
+   *
+   * @param map
+   * @return
+   */
+  private List<String> sortMap2List(Map<Integer, String> map) {
+    if (CollectionUtils.isEmpty(map)) {
+      return Collections.EMPTY_LIST;
+    }
+    List<String> list = new ArrayList<>(map.size());
+    for (Integer item : map.keySet()) {
+      list.add(map.get(item));
+    }
+    return list;
+  }
+
+
+  /**
+   * 判断文件大小
+   *
+   * @param len  文件长度
+   * @param size 限制大小
+   *             //   * @param unit
+   *             限制单位(B,K,M,G)
+   * @return
+   */
+  private boolean checkFileSize(Long len, int size) {
+    double fileSize = (double) len / 1048576;
+    if (fileSize >= size) {
+      return false;
+    }
+    return true;
+  }
+
+
+}

+ 95 - 0
energy-manage-service/src/main/java/com/energy/manage/service/controller/anemometertower/AnemometerTowerController.java

@@ -0,0 +1,95 @@
+package com.energy.manage.service.controller.anemometertower;
+
+
+import com.energy.manage.common.base.Page;
+import com.energy.manage.common.reponse.ResultResp;
+import com.energy.manage.service.config.annotations.UserLoginToken;
+import com.energy.manage.service.domain.dto.anemometertower.*;
+import com.energy.manage.service.domain.dto.windfield.WindFieldPageDto;
+import com.energy.manage.service.domain.vo.anemometertower.AnemometerTowerHeightVo;
+import com.energy.manage.service.domain.vo.anemometertower.AnemometerTowerPageVo;
+import com.energy.manage.service.service.anemometertower.AnemometerTowerService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+@Slf4j
+@RestController
+@CrossOrigin
+@Api(value = "AnemometerTowerController", tags = "测风塔接口")
+@RequestMapping(value = "/api/anemometer/tower")
+public class AnemometerTowerController {
+
+
+    @Autowired
+    private AnemometerTowerService anemometerTowerService;
+
+
+    @UserLoginToken
+    @PostMapping(value = "/createAnemometerTower")
+    @ApiOperation(value = "创建测风塔数据")
+    public ResultResp createAnemometerTower(@RequestBody AnemometerTowerCreateDto anemometerTowerCreateDto) {
+        boolean flg = anemometerTowerService.createAnemometerTower(anemometerTowerCreateDto);
+        return flg ? ResultResp.SUCCESS() : ResultResp.FAIL();
+    }
+
+
+
+    @UserLoginToken
+    @PostMapping(value = "/delAnemometerTower")
+    @ApiOperation(value = "删除测风塔数据")
+    public ResultResp delAnemometerTower(@RequestBody AnemometerTowerDelDto anemometerTowerDelDto) {
+        boolean flg = anemometerTowerService.delAnemometerTower(anemometerTowerDelDto);
+        return flg ? ResultResp.SUCCESS() : ResultResp.FAIL();
+    }
+
+
+    @UserLoginToken
+    @PostMapping(value = "/updateAnemometerTowerState")
+    @ApiOperation(value = "修改测风塔状态")
+    public ResultResp updateAnemometerTowerState(@RequestBody AnemometerTowerStateDto anemometerTowerStateDto) {
+        boolean flg = anemometerTowerService.updateAnemometerTowerState(anemometerTowerStateDto);
+        return flg ? ResultResp.SUCCESS() : ResultResp.FAIL();
+    }
+
+    @UserLoginToken
+    @PostMapping(value = "/getAnemometerTowerPage")
+    @ApiOperation(value = "查询测风塔分页信息")
+    public ResultResp<Page<AnemometerTowerPageVo> > getAnemometerTowerPage(@RequestBody AnemometerTowerPageDto anemometerTowerPageDto) {
+        Page<AnemometerTowerPageVo>  page = anemometerTowerService.getAnemometerTowerPage(anemometerTowerPageDto);
+        return ResultResp.SUCCESS(page);
+    }
+
+    @UserLoginToken
+    @PostMapping(value = "/bathAnemometerTowerHeight")
+    @ApiOperation(value = "批量绑定测风塔层高数据")
+    public ResultResp bathAnemometerTowerHeight(@RequestBody AnemometerTowerHeightDto anemometerTowerHeightDto) {
+        boolean flg  = anemometerTowerService.bathAnemometerTowerHeight(anemometerTowerHeightDto);
+        return flg ? ResultResp.SUCCESS() : ResultResp.FAIL();
+    }
+
+
+    @UserLoginToken
+    @PostMapping(value = "/getAnemometerTower")
+    @ApiOperation(value = "查询测风塔数据详情对象")
+    public ResultResp<AnemometerTowerPageVo> getAnemometerTowerVo(@RequestBody AnemometerTowerDto anemometerTowerDto) {
+        AnemometerTowerPageVo vo  = anemometerTowerService.getAnemometerTowerVo(anemometerTowerDto);
+        return ResultResp.SUCCESS(vo);
+    }
+
+
+    @UserLoginToken
+    @PostMapping(value = "/getAnemometerTowerHeight")
+    @ApiOperation(value = "查询测风塔下层高数据")
+    public ResultResp<AnemometerTowerHeightVo> getAnemometerTowerHeight(@RequestBody AnemometerTowerDto anemometerTowerDto) {
+        AnemometerTowerHeightVo vo  = anemometerTowerService.getAnemometerTowerHeight(anemometerTowerDto);
+        return ResultResp.SUCCESS(vo);
+    }
+
+
+
+
+
+}

+ 148 - 0
energy-manage-service/src/main/java/com/energy/manage/service/controller/area/AreaApiController.java

@@ -0,0 +1,148 @@
+package com.energy.manage.service.controller.area;
+
+import com.alibaba.fastjson.JSONObject;
+import com.energy.manage.common.po.area.AreaPO;
+import com.energy.manage.common.reponse.RespMsg;
+import com.energy.manage.service.config.annotations.UserLoginToken;
+import com.energy.manage.service.service.area.AreaApiService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.util.CollectionUtils;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.*;
+
+/**
+ * @author generate-code
+ * @date 2020-07-29 11:28:12
+ */
+@Slf4j
+@RestController
+@CrossOrigin
+@Api(value = "CustomerController", tags = "区域接口")
+@RequestMapping(value = "/api/area")
+public class AreaApiController {
+
+    @Value("${spring.datasource.druid.url}")
+    private String druid;
+
+    @Autowired
+    private AreaApiService areaService;
+
+    @UserLoginToken
+    @PostMapping(value = "findAllProvince")
+    @ApiOperation(value = "获取所有的省份信息")
+    public JSONObject findAllProvince() {
+        List<AreaPO> list = areaService.findAllProvince();
+        list = CollectionUtils.isEmpty(list) ? Collections.EMPTY_LIST : list;
+        return RespMsg.SUCCESS(list);
+    }
+
+    @UserLoginToken
+    @GetMapping(value = "getCitiesByPId")
+    @ApiOperation(value = "根据省份Id获取对应的城市信息")
+    public JSONObject getCitiesByPId(@RequestParam Integer provinceId) {
+        List<AreaPO> list = areaService.selectCityByPId(provinceId);
+        list = CollectionUtils.isEmpty(list) ? Collections.EMPTY_LIST : list;
+        return RespMsg.SUCCESS(list);
+    }
+
+    @UserLoginToken
+    @GetMapping(value = "getAreasByCId")
+    @ApiOperation(value = "根据城市Id获取对应的区县信息")
+    public JSONObject getAreasByCId(@RequestParam Integer cityId) {
+        List<AreaPO> list = areaService.selectAreaByCId(cityId);
+        list = CollectionUtils.isEmpty(list) ? Collections.EMPTY_LIST : list;
+        return RespMsg.SUCCESS(list);
+    }
+
+    @UserLoginToken
+    @GetMapping(value = "updateAreaByAId")
+    @ApiOperation(value = "根据区县Id修改区县信息", notes = "areaType 2市   3 县")
+    public JSONObject updateAreaByAId(@RequestParam Integer areaId,
+                                      @RequestParam String area,
+                                      @RequestParam Integer areaType) {
+        if (StringUtils.isEmpty(area) || !Optional.ofNullable(areaId).isPresent()) {
+            return RespMsg.NOTNULLPARAM();
+        }
+        if (2 != areaType && 3 != areaType) {
+            return RespMsg.INVALIDPARAM("type");
+        }
+        boolean flag = areaService.updateAreaByAId(areaId, area, areaType);
+        if (flag) {
+            return RespMsg.SUCCESS();
+        }
+        return RespMsg.FAIL();
+    }
+
+    @UserLoginToken
+    @PostMapping(value = "addArea")
+    @ApiOperation(value = "添加省市区县", notes = "areaType 2市   3 县")
+    public JSONObject addArea(@RequestParam Integer provinceId,
+                              @RequestParam String province,
+                              @RequestParam(required = false) Integer cityId,
+                              @RequestParam(required = false) String city,
+                              @RequestParam(required = false) String area,
+                              @RequestParam Integer areaType) {
+        int type = areaType.intValue();
+        if (2 != type && 3 != type) {
+            return RespMsg.INVALIDPARAM("type");
+        }
+        if (2 == type && StringUtils.isEmpty(city)) {
+            return RespMsg.NOTNULLPARAM();
+        }
+        if (3 == type && (!Optional.ofNullable(cityId).isPresent() || StringUtils.isEmpty(city) || StringUtils.isEmpty(area))) {
+            return RespMsg.NOTNULLPARAM();
+        }
+        boolean flag = areaService.addArea(provinceId, province, cityId, city, area, type);
+        if (flag) {
+            return RespMsg.SUCCESS();
+        }
+        return RespMsg.FAIL();
+    }
+
+    @UserLoginToken
+    @PostMapping(value = "deleteAreaByAId")
+    @ApiOperation(value = "根据区县Id删除区县信息")
+    public JSONObject deleteAreaByAId(@RequestParam Integer areaId,
+                                      @RequestParam Integer areaType) {
+        if (!Optional.ofNullable(areaId).isPresent()) {
+            return RespMsg.NOTNULLPARAM();
+        }
+        return areaService.deleteAreaByAId(areaId, areaType);
+    }
+
+    @UserLoginToken
+    @PostMapping(value = "getEnableProvince")
+    @ApiOperation(value = "获取未被占用的省份")
+    public JSONObject getEnableProvince(@RequestParam(required = false) String provinceName) {
+        List<AreaPO> list = areaService.getEnableProvince(provinceName);
+        return RespMsg.SUCCESS(list);
+    }
+
+    @UserLoginToken
+    @PostMapping(value = "getEnableArea")
+    @ApiOperation(value = "获取全部省份")
+    public JSONObject getEnableArea() {
+        return areaService.getEnableArea();
+    }
+
+    @UserLoginToken
+    @PostMapping(value = "syncAreaCode")
+    @ApiOperation(value = "同步区号")
+    public JSONObject syncAreaCode(@RequestParam String state) {
+
+        System.out.println(this.druid);
+        boolean flg = false;
+        if(state.equals("true")){
+            log.info(" ===== 开始同步区号  ===== ");
+            flg = areaService.syncAreaCode();
+        }
+        return RespMsg.SUCCESS(flg);
+    }
+
+}

+ 75 - 0
energy-manage-service/src/main/java/com/energy/manage/service/controller/company/WindCompanyController.java

@@ -0,0 +1,75 @@
+package com.energy.manage.service.controller.company;
+
+
+import com.energy.manage.common.reponse.ResultResp;
+import com.energy.manage.service.config.annotations.UserLoginToken;
+import com.energy.manage.service.domain.dto.company.WindCompanyDelDto;
+import com.energy.manage.service.domain.dto.company.WindCompanyDto;
+import com.energy.manage.service.domain.dto.company.WindCompanyStateDto;
+import com.energy.manage.service.domain.dto.company.WindCompanyUpdateDto;
+import com.energy.manage.service.domain.vo.company.WindCompanyPageVo;
+import com.energy.manage.service.service.company.WindCompanyService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+@Slf4j
+@RestController
+@CrossOrigin
+@Api(value = "WindCompanyController", tags = "企业管理接口")
+@RequestMapping(value = "/api/wind/company")
+public class WindCompanyController {
+
+    @Autowired
+    WindCompanyService windCompanyService;
+
+
+    @UserLoginToken
+    @PostMapping(value = "/addCompany")
+    @ApiOperation(value = "创建企业")
+    public ResultResp addCompany(@RequestBody WindCompanyDto dto) {
+        boolean flg = windCompanyService.addCompany(dto);
+        return flg ? ResultResp.SUCCESS() : ResultResp.FAIL();
+    }
+
+
+    @UserLoginToken
+    @PostMapping(value = "/delCompany")
+    @ApiOperation(value = "删除企业")
+    public ResultResp delCompany(@RequestBody WindCompanyDelDto dto) {
+        boolean flg = windCompanyService.delCompany(dto);
+        return flg ? ResultResp.SUCCESS() : ResultResp.FAIL();
+    }
+
+    @UserLoginToken
+    @PostMapping(value = "/updateStateCompany")
+    @ApiOperation(value = "更新企业状态")
+    public ResultResp updateStateCompany(@RequestBody WindCompanyStateDto dto) {
+        boolean flg = windCompanyService.updateStateCompany(dto);
+        return flg ? ResultResp.SUCCESS() : ResultResp.FAIL();
+    }
+
+
+    @UserLoginToken
+    @PostMapping(value = "/updateCompany")
+    @ApiOperation(value = "更新企业")
+    public ResultResp updateCompany(@RequestBody WindCompanyUpdateDto dto) {
+        boolean flg = windCompanyService.updateCompany(dto);
+        return flg ? ResultResp.SUCCESS() : ResultResp.FAIL();
+    }
+
+
+    @UserLoginToken
+    @PostMapping(value = "/getAllWindCompany")
+    @ApiOperation(value = "查询企业树")
+    public ResultResp<List<WindCompanyPageVo>> getAllWindCompany() {
+        List<WindCompanyPageVo> list = windCompanyService.getAllWindCompany();
+        return ResultResp.SUCCESS(list);
+    }
+
+
+}

+ 57 - 0
energy-manage-service/src/main/java/com/energy/manage/service/controller/dict/DictContentsController.java

@@ -0,0 +1,57 @@
+package com.energy.manage.service.controller.dict;
+
+
+import com.energy.manage.common.constant.controller.WebApiConstant;
+import com.energy.manage.common.po.dict.DictConstantsPO;
+import com.energy.manage.common.reponse.ResultResp;
+import com.energy.manage.service.config.annotations.PassToken;
+import com.energy.manage.service.domain.dto.dict.DictConstantsQueryDto;
+import com.energy.manage.service.domain.vo.dict.DictParentVo;
+import com.energy.manage.service.service.dict.DictConstantsService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+@RestController
+@CrossOrigin
+@Api(value = "DictContentsController", tags = "字典管理")
+public class DictContentsController {
+
+
+    @Autowired
+    private DictConstantsService dictConstantsService;
+
+
+    @PostMapping(WebApiConstant.Dist.QUERY_DICT_LIST)
+    @PassToken
+    @ApiOperation(value = "获取字典列表")
+    public ResultResp<List<DictConstantsPO>> getDictList(@RequestBody DictConstantsQueryDto dictConstantsQueryDto) {
+
+        List<DictConstantsPO> data = dictConstantsService.getDictListByType(dictConstantsQueryDto.getDictType());
+        return ResultResp.SUCCESS(data);
+    }
+
+
+    @PostMapping(WebApiConstant.Dist.REFRESH_DICT_CACHE_DATA)
+    @PassToken
+    @ApiOperation(value = "刷新字典缓存")
+    public ResultResp refreshDictListAllCache() {
+
+        dictConstantsService.refreshDictListAllCache();
+        return ResultResp.SUCCESS();
+    }
+
+
+    @GetMapping(WebApiConstant.Dist.DICT_CHAIN_LIST)
+    @PassToken
+    @ApiOperation(value = "获取及联树结构字典 1 强基工具 2 传统高考 3 课程产品服务,科目选择")
+    public ResultResp getDictReachChain(@RequestParam Integer type) {
+
+        List<DictParentVo>  list = dictConstantsService.getDictReachChain(type);
+        return ResultResp.SUCCESS(list);
+    }
+
+}

+ 77 - 0
energy-manage-service/src/main/java/com/energy/manage/service/controller/powerwordcontract/PowerWordContractController.java

@@ -0,0 +1,77 @@
+package com.energy.manage.service.controller.powerwordcontract;
+
+
+import com.energy.manage.common.base.Page;
+import com.energy.manage.common.reponse.ResultResp;
+import com.energy.manage.service.config.annotations.UserLoginToken;
+import com.energy.manage.service.domain.dto.powerwordcontract.PowerWordContractDelDto;
+import com.energy.manage.service.domain.dto.powerwordcontract.PowerWordContractDto;
+import com.energy.manage.service.domain.dto.powerwordcontract.PowerWordContractExcelDto;
+import com.energy.manage.service.domain.dto.powerwordcontract.PowerWordContractPageDto;
+import com.energy.manage.service.domain.vo.powerwordcontract.PowerWordContractPageVo;
+import com.energy.manage.service.domain.vo.windfield.WindFieldPageVo;
+import com.energy.manage.service.service.powerwordcontract.PowerWordContractService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+
+@Slf4j
+@RestController
+@CrossOrigin
+@Api(value = "PowerWordContractController", tags = "合同功率曲线接口")
+@RequestMapping(value = "/api/powerword/contract")
+public class PowerWordContractController {
+
+    @Autowired
+    private PowerWordContractService powerWordContractService;
+
+
+    @UserLoginToken
+    @PostMapping(value = "/powerWordContractImportData")
+    @ApiOperation(value = " 同步合同功率,(选择风场编号,机型编号导入功率曲线)")
+    public ResultResp powerWordContractImportData(@RequestPart("file") MultipartFile file,
+                                                  @RequestParam("fieldCode") String fieldCode,
+                                                  @RequestParam("millTypeCode") String millTypeCode) {
+
+        PowerWordContractExcelDto powerWordContractExcelDto = new PowerWordContractExcelDto();
+        powerWordContractExcelDto.setFieldCode(fieldCode);
+        powerWordContractExcelDto.setMillTypeCode(millTypeCode);
+
+        boolean flg = powerWordContractService.powerWordContractImportData(file, powerWordContractExcelDto);
+        return flg ? ResultResp.SUCCESS() : ResultResp.FAIL();
+    }
+
+
+    @UserLoginToken
+    @PostMapping(value = "/powerWordContractPage")
+    @ApiOperation(value = " 同步合同功率曲线分页查询")
+    public ResultResp<Page<PowerWordContractPageVo>> powerWordContractPage(@RequestBody PowerWordContractPageDto powerWordContractPageDto) {
+
+        Page<PowerWordContractPageVo> page = powerWordContractService.powerWordContractPage(powerWordContractPageDto);
+        return ResultResp.SUCCESS(page);
+    }
+
+
+    @UserLoginToken
+    @PostMapping(value = "/delPowerWordContract")
+    @ApiOperation(value = "删除风机合同功率曲线")
+    public ResultResp delPowerWordContract(@RequestBody PowerWordContractDelDto powerWordContractDelDto) {
+
+        boolean flg = powerWordContractService.delPowerWordContract(powerWordContractDelDto);
+        return flg ? ResultResp.SUCCESS() : ResultResp.FAIL();
+    }
+
+
+    @UserLoginToken
+    @PostMapping(value = "/updatePowerWordContract")
+    @ApiOperation(value = "编辑合同功率曲线")
+    public ResultResp updatePowerWordContract(@RequestBody PowerWordContractDto powerWordContractDto) {
+        boolean flg = powerWordContractService.updatePowerWordContract(powerWordContractDto);
+        return flg ? ResultResp.SUCCESS() : ResultResp.FAIL();
+    }
+
+
+}

+ 84 - 0
energy-manage-service/src/main/java/com/energy/manage/service/controller/powerwordcriterion/PowerWordCriterionController.java

@@ -0,0 +1,84 @@
+package com.energy.manage.service.controller.powerwordcriterion;
+
+import com.energy.manage.common.base.Page;
+import com.energy.manage.common.reponse.ResultResp;
+import com.energy.manage.service.config.annotations.UserLoginToken;
+import com.energy.manage.service.domain.dto.powerwordcontract.PowerWordContractDelDto;
+import com.energy.manage.service.domain.dto.powerwordcontract.PowerWordContractDto;
+import com.energy.manage.service.domain.dto.powerwordcontract.PowerWordContractExcelDto;
+import com.energy.manage.service.domain.dto.powerwordcontract.PowerWordContractPageDto;
+import com.energy.manage.service.domain.dto.powerwordcriterion.PowerWordCriterionDelDto;
+import com.energy.manage.service.domain.dto.powerwordcriterion.PowerWordCriterionDto;
+import com.energy.manage.service.domain.dto.powerwordcriterion.PowerWordCriterionExcelDto;
+import com.energy.manage.service.domain.dto.powerwordcriterion.PowerWordCriterionPageDto;
+import com.energy.manage.service.domain.vo.powerwordcontract.PowerWordContractPageVo;
+import com.energy.manage.service.domain.vo.powerwordcriterion.PowerWordCriterionPageVo;
+import com.energy.manage.service.service.powerwordcriterion.PowerWordCriterionService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+
+@Slf4j
+@RestController
+@CrossOrigin
+@Api(value = "PowerWordCriterionController", tags = "标准功率曲线接口")
+@RequestMapping(value = "/api/powerword/criterion")
+public class PowerWordCriterionController {
+
+    @Autowired
+    private PowerWordCriterionService powerWordCriterionService;
+
+
+        @UserLoginToken
+        @PostMapping(value = "/powerWordCriterionImportData")
+        @ApiOperation(value = " 同步标准功率,(机型编号导入功率曲线)")
+        public ResultResp powerWordCriterionImportData(@RequestPart MultipartFile file,
+                                                       @RequestParam("millTypeCode")String millTypeCode) {
+
+            PowerWordCriterionExcelDto powerWordCriterionExcelDto = new PowerWordCriterionExcelDto();
+            powerWordCriterionExcelDto.setMillTypeCode(millTypeCode);
+
+        boolean flg = powerWordCriterionService.powerWordCriterionImportData(file,powerWordCriterionExcelDto);
+        return flg ? ResultResp.SUCCESS() : ResultResp.FAIL();
+    }
+
+
+
+
+    @UserLoginToken
+    @PostMapping(value = "/powerWordCriterionPage")
+    @ApiOperation(value = " 同步标准功率曲线分页查询")
+    public ResultResp<Page<PowerWordCriterionPageVo>> powerWordCriterionPage(@RequestBody PowerWordCriterionPageDto powerWordCriterionPageDto) {
+
+        Page<PowerWordCriterionPageVo>  page = powerWordCriterionService.powerWordCriterionPage(powerWordCriterionPageDto);
+        return  ResultResp.SUCCESS(page);
+    }
+
+
+    @UserLoginToken
+    @PostMapping(value = "/delpowerWordCriterion")
+    @ApiOperation(value = " 删除风机标准功率曲线")
+    public ResultResp delpowerWordCriterion(@RequestBody PowerWordCriterionDelDto powerWordCriterionDelDto) {
+
+        boolean flg= powerWordCriterionService.delpowerWordCriterion(powerWordCriterionDelDto);
+        return flg ? ResultResp.SUCCESS() : ResultResp.FAIL();
+    }
+
+
+
+    @UserLoginToken
+    @PostMapping(value = "/updatePowerWordCriterion")
+    @ApiOperation(value = "编辑标准功率曲线")
+    public ResultResp updatePowerWordCriterion(@RequestBody PowerWordCriterionDto powerWordCriterionDto) {
+        boolean flg= powerWordCriterionService.updatePowerWordCriterion(powerWordCriterionDto);
+        return flg ? ResultResp.SUCCESS() : ResultResp.FAIL();
+    }
+
+
+
+
+
+}

+ 124 - 0
energy-manage-service/src/main/java/com/energy/manage/service/controller/system/SysPermissionController.java

@@ -0,0 +1,124 @@
+package com.energy.manage.service.controller.system;
+
+import com.alibaba.fastjson.JSONObject;
+import com.energy.manage.common.po.system.SysPermissionPO;
+import com.energy.manage.common.reponse.RespMsg;
+import com.energy.manage.common.reponse.ResultResp;
+import com.energy.manage.service.config.annotations.UserLoginToken;
+import com.energy.manage.service.domain.dto.system.PermissionDelDto;
+import com.energy.manage.service.domain.dto.system.PermissionDto;
+import com.energy.manage.service.domain.dto.system.PermissionUpdateDto;
+import com.energy.manage.service.domain.vo.system.PermissionVo;
+import com.energy.manage.service.service.system.SysPermissionService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.util.StringUtils;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+import java.util.Optional;
+
+/**
+ * @author sy
+ * @menu: 资源表
+ * @date 2021-10-18 13:32:05
+ */
+@RestController
+@RequestMapping("syspermission")
+@CrossOrigin
+@Api(value = "SysPermissionController", tags = "系统权限管理")
+public class SysPermissionController {
+
+    @Autowired
+    private SysPermissionService sysPermissionService;
+
+    /**
+     * 增加权限
+     * @return
+     */
+    @UserLoginToken
+    @ApiOperation(value = "增加权限")
+    @PostMapping(value = "add")
+    public ResultResp addPermission(@RequestBody PermissionDto permissionDto) {
+        if (StringUtils.isEmpty(permissionDto.getPName()) || StringUtils.isEmpty(permissionDto.getPCode())) {
+            return ResultResp.NOTNULLPARAM();
+        }
+        SysPermissionPO po = new SysPermissionPO();
+        po.setParentId(permissionDto.getParentId());
+        po.setPermissionName(permissionDto.getPName());
+        po.setPermissionUrl(permissionDto.getPUrl());
+        po.setPermissionCode(permissionDto.getPCode());
+        po.setPermissionIconUrl(permissionDto.getPIconUrl());
+        po.setPermissionState(permissionDto.getPStat());
+        po.setPermissionType(permissionDto.getPType());
+        po.setPermissionSort(permissionDto.getPSort());
+        boolean flg = sysPermissionService.addPermission(po);
+        if (flg) {
+            return ResultResp.SUCCESS();
+        }
+        return ResultResp.FAIL();
+    }
+
+    /**
+     * 删除权限
+     *
+     * @return
+     */
+    @UserLoginToken
+    @ApiOperation(value = "删除权限")
+    @PostMapping(value = "delete")
+    public ResultResp deletePermission(@RequestBody PermissionDelDto permissionDelDto) {
+        if (!Optional.ofNullable(permissionDelDto.getPermissionId()).isPresent()) {
+            return ResultResp.NOTNULLPARAM();
+        }
+        SysPermissionPO po = new SysPermissionPO();
+        po.setPermissionId(permissionDelDto.getPermissionId());
+        boolean flag = sysPermissionService.delPermission(po);
+        if (flag) {
+            return ResultResp.SUCCESS();
+        }
+        return ResultResp.FAIL();
+    }
+
+    /**
+     * 权限更新
+     * @return
+     */
+    @UserLoginToken
+    @ApiOperation(value = "更新权限")
+    @PostMapping(value = "update")
+    public ResultResp updatePermission(@RequestBody PermissionUpdateDto permissionUpdateDto) {
+
+        if (!Optional.ofNullable(permissionUpdateDto.getPermissionId()).isPresent() || StringUtils.isEmpty(permissionUpdateDto.getPName()) || StringUtils.isEmpty(permissionUpdateDto.getPCode())) {
+            return ResultResp.NOTNULLPARAM();
+        }
+        SysPermissionPO po = new SysPermissionPO();
+        po.setPermissionId(permissionUpdateDto.getPermissionId());
+        po.setPermissionName(permissionUpdateDto.getPName());
+        po.setPermissionUrl(permissionUpdateDto.getPUrl());
+        po.setPermissionCode(permissionUpdateDto.getPCode());
+        po.setPermissionIconUrl(permissionUpdateDto.getPIconUrl());
+        po.setPermissionState(permissionUpdateDto.getPStat());
+        po.setPermissionType(permissionUpdateDto.getPType());
+        po.setPermissionSort(permissionUpdateDto.getPSort());
+        boolean flag = sysPermissionService.updatePermission(po);
+        if (flag) {
+            return ResultResp.SUCCESS();
+        }
+        return ResultResp.FAIL();
+    }
+
+    /**
+     * 获取全部权限
+     *
+     * @return
+     */
+    @UserLoginToken
+    @ApiOperation(value = "获取全部权限")
+    @PostMapping(value = "getAll")
+    public ResultResp<List<PermissionVo>> getAll() {
+        List<PermissionVo> list = sysPermissionService.getAllPermission();
+        return ResultResp.SUCCESS(list);
+    }
+}

+ 209 - 0
energy-manage-service/src/main/java/com/energy/manage/service/controller/system/SysRoleController.java

@@ -0,0 +1,209 @@
+package com.energy.manage.service.controller.system;
+
+import com.alibaba.fastjson.JSONObject;
+import com.energy.manage.common.base.Page;
+import com.energy.manage.common.constant.Constants;
+import com.energy.manage.common.po.system.SysRolePO;
+import com.energy.manage.common.reponse.RespMsg;
+import com.energy.manage.common.reponse.ResultResp;
+import com.energy.manage.service.config.annotations.UserLoginToken;
+import com.energy.manage.service.domain.dto.system.*;
+import com.energy.manage.service.domain.vo.system.PermissionVo;
+import com.energy.manage.service.domain.vo.system.SysRelationVo;
+import com.energy.manage.service.service.system.SysPermissionService;
+import com.energy.manage.service.service.system.SysRoleService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.util.CollectionUtils;
+import org.springframework.util.StringUtils;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.Date;
+import java.util.List;
+import java.util.Optional;
+
+/**
+ * @menu: 后台角色管理
+ *
+ * @author sy
+ * @date 2021-10-18 13:32:05
+ */
+@RestController
+@RequestMapping("sysrole")
+@CrossOrigin
+@Api(value = "SysRoleController", tags = "系统角色管理")
+public class SysRoleController {
+
+	@Autowired
+	private SysRoleService sysRoleService;
+
+	@Autowired
+	private SysPermissionService permissionService;
+
+	/**
+	 * 添加角色
+	 * @return
+	 */
+	@UserLoginToken
+	@PostMapping(value = "/addRole")
+	@ApiOperation(value = "添加角色")
+	public ResultResp addRole(@RequestBody RoleAddDto roleAddDto) {
+		if (StringUtils.isEmpty(roleAddDto.getRoleName()) || StringUtils.isEmpty(roleAddDto.getRoleCode())) {
+			return ResultResp.NOTNULLPARAM();
+		}
+		SysRolePO rolePO = new SysRolePO();
+		rolePO.setRoleCode(roleAddDto.getRoleCode());
+		rolePO = sysRoleService.selectOne(rolePO);
+		if (null != rolePO) {
+			return ResultResp.FAIL("该角色已存在");
+		}
+		rolePO = new SysRolePO();
+		rolePO.setRoleCode(roleAddDto.getRoleCode());
+		rolePO.setRoleDescription(roleAddDto.getRoleName());
+		rolePO.setRoleAvailable(Constants.GLOBAL_IN_USE);
+		rolePO.setCreateTime(new Date());
+		rolePO.setUpdateTime(new Date());
+		boolean flag = sysRoleService.addRole(rolePO);
+		if (flag) {
+			return ResultResp.SUCCESS();
+		}
+		return ResultResp.FAIL();
+	}
+
+	/**
+	 * 删除角色
+	 * @return
+	 */
+	@UserLoginToken
+	@PostMapping(value = "/deleteRole")
+	@ApiOperation(value = "删除角色")
+	public ResultResp deleteRole(@RequestBody RoleDelDto roleDelDto) {
+		if (!Optional.ofNullable(roleDelDto.getRoleId()).isPresent()) {
+			return ResultResp.NOTNULLPARAM();
+		}
+		SysRolePO rolePO = new SysRolePO();
+		rolePO.setId(roleDelDto.getRoleId());
+		return sysRoleService.deleteRole(rolePO);
+	}
+
+	/**
+	 * 更新角色
+	 * @return
+	 */
+	@UserLoginToken
+	@PostMapping(value = "/updateRole")
+	@ApiOperation(value = "更新角色")
+	public ResultResp updateRole(@RequestBody RoleUpdateDto roleUpdateDto) {
+		if (!Optional.ofNullable(roleUpdateDto.getRoleId()).isPresent() || StringUtils.isEmpty(roleUpdateDto.getRoleName())) {
+			return ResultResp.NOTNULLPARAM();
+		}
+		SysRolePO rolePO = new SysRolePO();
+		rolePO.setId(roleUpdateDto.getRoleId());
+		rolePO.setRoleDescription(roleUpdateDto.getRoleName());
+		rolePO.setRoleCode(roleUpdateDto.getRoleCode());
+		boolean flag = sysRoleService.updateRole(rolePO);
+		if (flag) {
+			return ResultResp.SUCCESS();
+		}
+		return ResultResp.FAIL();
+	}
+
+	/**
+	 * 通过角色id ,获取角色详情
+	 * @return
+	 */
+	@UserLoginToken
+	@PostMapping(value = "/getRoleBId")
+	@ApiOperation(value = "通过角色id ,获取角色详情")
+	public ResultResp<SysRolePO> getRoleBId(@RequestBody RoleDelDto roleDelDto) {
+		if (!Optional.ofNullable(roleDelDto.getRoleId()).isPresent()) {
+			return ResultResp.NOTNULLPARAM();
+		}
+		SysRolePO rolePO = new SysRolePO();
+		rolePO.setId(roleDelDto.getRoleId());
+		rolePO = sysRoleService.selectOne(rolePO);
+		return ResultResp.SUCCESS(rolePO);
+	}
+
+	/**
+	 * 通过角色名称查询角色列表
+	 * @return
+	 */
+	@UserLoginToken
+	@PostMapping(value = "/通过角色名称查询角色列表")
+	public ResultResp<Page<SysRolePO>> getRoleListByName(@RequestBody RoleListDto roleListDto) {
+		Page<SysRolePO> page = sysRoleService.getRoleListByName(roleListDto.getPageNum(), roleListDto.getPageSize(), roleListDto.getRoleName());
+		return ResultResp.SUCCESS(page);
+	}
+
+	/**
+	 * 通过角色获取权限
+	 * @return
+	 */
+	@UserLoginToken
+	@PostMapping(value = "/getRolePermission")
+	@ApiOperation(value = "通过角色获取权限")
+	public ResultResp<List<PermissionVo> > getRolePermission(@RequestBody RoleDelDto roleDelDto) {
+		if (!Optional.ofNullable(roleDelDto.getRoleId()).isPresent()) {
+			return ResultResp.NOTNULLPARAM();
+		}
+		List<PermissionVo> list = permissionService.getRolePermission(roleDelDto.getRoleId());
+		return ResultResp.SUCCESS(list);
+	}
+
+	/**
+	 * 通过角色获取组织架构权限
+	 * @return
+	 */
+	@UserLoginToken
+	@PostMapping(value = "/getRoleOrganization")
+	@ApiOperation(value = "通过角色获取组织架构权限")
+	public ResultResp<List<SysRelationVo>> getRoleOrganization(@RequestBody RoleDelDto roleDelDto) {
+		if (!Optional.ofNullable(roleDelDto.getRoleId()).isPresent()) {
+			return ResultResp.NOTNULLPARAM();
+		}
+		List<SysRelationVo> list = permissionService.getRoleOrganization(roleDelDto.getRoleId());
+		return ResultResp.SUCCESS(list);
+	}
+
+
+
+
+	/**
+	 * 更新角色权限
+	 * @return
+	 */
+	@UserLoginToken
+	@PostMapping(value = "/updateRolePermission")
+	@ApiOperation(value = "更新角色菜单权限")
+	public ResultResp updateRolePermission(@RequestBody RoleUpdatePermissionDto roleUpdatePermissionDto) {
+		if (!Optional.ofNullable(roleUpdatePermissionDto.getRoleId()).isPresent() || StringUtils.isEmpty(roleUpdatePermissionDto.getPermissionIds())) {
+			return ResultResp.NOTNULLPARAM();
+		}
+		boolean flag = permissionService.updateRolePermission(roleUpdatePermissionDto.getRoleId(), roleUpdatePermissionDto.getPermissionIds());
+		if (flag) {
+			return ResultResp.SUCCESS();
+		}
+		return ResultResp.FAIL();
+	}
+
+	/**
+	 * 更新角色权限
+	 * @return
+	 */
+	@UserLoginToken
+	@PostMapping(value = "/updateRoleOrganization")
+	@ApiOperation(value = "更新角色组织架构权限")
+	public ResultResp updateRoleOrganizationAuth(@RequestBody RoleUpdateOrganizationDto roleUpdateOrganizationDto) {
+		if (!Optional.ofNullable(roleUpdateOrganizationDto.getRoleId()).isPresent() || CollectionUtils.isEmpty(roleUpdateOrganizationDto.getOrganizationCodes())) {
+			return ResultResp.NOTNULLPARAM();
+		}
+		boolean flag = permissionService.updateRoleOrganization(roleUpdateOrganizationDto.getRoleId(), roleUpdateOrganizationDto.getOrganizationCodes());
+		if (flag) {
+			return ResultResp.SUCCESS();
+		}
+		return ResultResp.FAIL();
+	}
+
+}

+ 51 - 0
energy-manage-service/src/main/java/com/energy/manage/service/controller/system/SysRolePermissionController.java

@@ -0,0 +1,51 @@
+package com.energy.manage.service.controller.system;
+
+import com.alibaba.fastjson.JSON;
+import com.energy.manage.service.service.kafka.producer.KafkaSendService;
+import com.energy.manage.service.service.system.SysRolePermissionService;
+import io.swagger.annotations.Api;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.kafka.clients.consumer.ConsumerRecord;
+import org.apache.kafka.clients.consumer.ConsumerRecords;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.kafka.annotation.KafkaListener;
+import org.springframework.kafka.core.KafkaTemplate;
+import org.springframework.kafka.support.Acknowledgment;
+import org.springframework.kafka.support.KafkaHeaders;
+import org.springframework.messaging.handler.annotation.Header;
+import org.springframework.web.bind.annotation.CrossOrigin;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.Iterator;
+import java.util.List;
+import java.util.Optional;
+
+/**
+ * 角色资源关联表
+ *
+ * @author sy
+ * @date 2021-10-18 13:32:05
+ */
+@Slf4j
+@RestController
+@RequestMapping("sysrolepermission")
+@CrossOrigin
+public class SysRolePermissionController {
+	@Autowired
+	private SysRolePermissionService sysRolePermissionService;
+
+
+
+
+
+
+
+
+
+
+
+
+
+}

+ 75 - 0
energy-manage-service/src/main/java/com/energy/manage/service/controller/system/SysTestController.java

@@ -0,0 +1,75 @@
+package com.energy.manage.service.controller.system;
+
+import com.alibaba.excel.EasyExcel;
+import com.energy.manage.service.domain.vo.excel.MinTestDataVo;
+import com.energy.manage.service.service.kafka.producer.KafkaSendService;
+import io.swagger.annotations.Api;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.CrossOrigin;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.io.File;
+import java.util.List;
+
+/**
+ * 测试kafka消息
+ *
+ * @author sy
+ * @date 2021-10-18 13:32:05
+ */
+@Slf4j
+@RestController
+@RequestMapping("SysTestController")
+@CrossOrigin
+@Api(value = "SysTestController", tags = "测试Controller")
+public class SysTestController {
+
+	@Autowired
+	private KafkaSendService kafkaSendService;
+
+	@GetMapping("/topic-abc-test")
+	public void abc() {
+		// 发送消息
+		kafkaSendService.sendMessage("abc", "abc kafka");
+	}
+
+
+	@GetMapping("/topic-test-test")
+	public void test() {
+		// 发送消息
+		kafkaSendService.sendMessage("test", "test kafka");
+	}
+
+
+
+	@GetMapping("/test-execl")
+	public void testExecl() {
+
+		File file = new File("/Users/shiyue/Downloads/zn/F001_min.xlsx");
+		List<MinTestDataVo> list = EasyExcel.read(file).head(MinTestDataVo.class).sheet().doReadSync();
+		int i = 0;
+//		list.stream().forEach(x -> {
+//			log.info(x.getFengsu());
+//		});
+
+		for(MinTestDataVo minTestDataVo : list){
+			log.info(minTestDataVo.getFengsu());
+			i++;
+		}
+		System.out.println(i);
+	}
+
+
+
+
+
+
+
+
+
+
+
+}

+ 350 - 0
energy-manage-service/src/main/java/com/energy/manage/service/controller/system/SysUserInfoController.java

@@ -0,0 +1,350 @@
+package com.energy.manage.service.controller.system;
+
+import com.alibaba.fastjson.JSONObject;
+import com.energy.manage.common.base.Page;
+import com.energy.manage.common.constant.Constants;
+import com.energy.manage.common.constant.redis.ManagerRedisKeyConstant;
+import com.energy.manage.common.po.system.SysRolePO;
+import com.energy.manage.common.po.system.SysUserInfoPO;
+import com.energy.manage.common.reponse.RespMsg;
+import com.energy.manage.common.reponse.ResultResp;
+import com.energy.manage.common.util.BCryptTools;
+import com.energy.manage.service.config.annotations.PassToken;
+import com.energy.manage.service.config.annotations.UserLoginToken;
+import com.energy.manage.service.domain.dto.system.*;
+import com.energy.manage.service.domain.vo.system.PermissionVo;
+import com.energy.manage.service.domain.vo.system.UserRoleVo;
+import com.energy.manage.service.domain.vo.system.UserVo;
+import com.energy.manage.service.service.system.SysPermissionService;
+import com.energy.manage.service.service.system.SysRoleService;
+import com.energy.manage.service.service.system.SysUserInfoService;
+import com.energy.manage.service.util.JwtUtil;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.redis.core.StringRedisTemplate;
+import org.springframework.util.CollectionUtils;
+import org.springframework.util.StringUtils;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.*;
+
+/**
+ * @author sy
+ * @menu: 后台用户表
+ * @date 2021-10-18 13:32:05
+ */
+@Slf4j
+@RestController
+@CrossOrigin
+@RequestMapping("sysuserinfo")
+@Api(value = "SysUserInfoController", tags = "系统用户管理")
+public class SysUserInfoController {
+
+    @Autowired
+    private SysUserInfoService sysUserInfoService;
+
+    @Autowired
+    private SysPermissionService permissionService;
+
+    @Autowired
+    private SysRoleService sysRoleService;
+
+    @Autowired
+    private StringRedisTemplate stringRedisTemplate;
+
+    /**
+     * 添加后台用户
+     * @return
+     */
+    @UserLoginToken
+    @PostMapping(value = "addUser")
+    @ApiOperation(value = "添加后台用户", notes = "areaInfo = provinceId,cityId,areaId;provinceId,cityId,areaId;")
+    public ResultResp addUser(@RequestBody UserAddDto userAddDto) {
+        if (StringUtils.isEmpty(userAddDto.getPhone()) || StringUtils.isEmpty(userAddDto.getUserName()) || !Optional.ofNullable(userAddDto.getRoleId()).isPresent()) {
+            return ResultResp.NOTNULLPARAM();
+        }
+        SysUserInfoPO userPO = new SysUserInfoPO();
+        userPO.setUserName(userAddDto.getUserName());
+        userPO = sysUserInfoService.selectOne(userPO);
+        if (null != userPO) {
+            log.info("用户名已被占用!");
+            return ResultResp.EXISTSUSER();
+        }
+        userPO = new SysUserInfoPO();
+        userPO.setUserPhone(userAddDto.getPhone());
+        userPO.setState(Constants.GLOBAL_IN_USE);
+        userPO.setUserName(userAddDto.getUserName());
+        userPO.setUserPassword(BCryptTools.hashpw(userAddDto.getPwd()));
+        userPO.setCreateTime(new Date());
+        boolean flag = sysUserInfoService.addSystemUser(userPO, userAddDto.getRoleId());
+        if (flag) {
+            return ResultResp.SUCCESS();
+        }
+        return ResultResp.FAIL();
+    }
+
+    /**
+     * 获取后台用户分页
+     * @return
+     */
+    @UserLoginToken
+    @PostMapping(value = "getUserByName")
+    @ApiOperation(value = "获取后台用户分页")
+    public ResultResp<Page<UserRoleVo>> getUserByName(@RequestBody UserByNameDto userByNameDto) {
+        Page<UserRoleVo> page = sysUserInfoService.getUserByName(userByNameDto.getPageNum(), userByNameDto.getPageSize(), userByNameDto.getUserName(), userByNameDto.getRoleId());
+        return ResultResp.SUCCESS(page);
+    }
+
+    /**
+     * 获取后台用户
+     *
+     * @param userId
+     * @return
+     */
+    @UserLoginToken
+    @GetMapping(value = "getUserById")
+    @ApiOperation(value = "获取后台用户")
+    public ResultResp<UserRoleVo> getUserById(@RequestParam Integer userId) {
+        UserRoleVo user = sysUserInfoService.getUserById(userId);
+        return ResultResp.SUCCESS(user);
+    }
+
+    /**
+     * 启用后台用户
+     * @return
+     */
+    @UserLoginToken
+    @PostMapping(value = "enableUser")
+    @ApiOperation(value = "启用后台用户")
+    public ResultResp enableUser(@RequestBody UserDto userDto) {
+        if (!Optional.ofNullable(userDto.getUserId()).isPresent()) {
+            return ResultResp.NOTNULLPARAM();
+        }
+        SysUserInfoPO userPO = new SysUserInfoPO();
+        userPO.setId(userDto.getUserId());
+        userPO.setState(Constants.GLOBAL_IN_USE);
+        boolean flag = sysUserInfoService.updateUser(userPO);
+        if (flag) {
+            return ResultResp.SUCCESS();
+        }
+        return ResultResp.FAIL();
+    }
+
+    /**
+     * 禁用后台用户
+     * @return
+     */
+    @UserLoginToken
+    @PostMapping(value = "disableUser")
+    @ApiOperation(value = "禁用后台用户")
+    public ResultResp disableUser(@RequestBody UserDto userDto) {
+        if (!Optional.ofNullable(userDto.getUserId()).isPresent()) {
+            return ResultResp.NOTNULLPARAM();
+        }
+        SysUserInfoPO userPO = new SysUserInfoPO();
+        userPO.setId(userDto.getUserId());
+        userPO = sysUserInfoService.selectOne(userPO);
+        if (null == userPO) {
+            return ResultResp.FAIL("没有该用户");
+        }
+        userPO.setState(Constants.GLOBAL_NOT_USE);
+        boolean flag = sysUserInfoService.updateUser(userPO);
+        if (flag) {
+
+            stringRedisTemplate.delete(String.format(ManagerRedisKeyConstant.SYSTEM_USER_LOGIN_INFO, userPO.getUserPhone()));
+            return ResultResp.SUCCESS();
+        }
+        return ResultResp.FAIL();
+    }
+
+    /**
+     * 删除后台用户
+     *
+     * @param userDto
+     * @return
+     */
+    @UserLoginToken
+    @PostMapping(value = "deleteUser")
+    @ApiOperation(value = "删除后台用户")
+    public ResultResp deleteUser(@RequestBody UserDto userDto) {
+        if (!Optional.ofNullable(userDto.getUserId()).isPresent()) {
+            return ResultResp.NOTNULLPARAM();
+        }
+        SysUserInfoPO userPO = new SysUserInfoPO();
+        userPO.setId(userDto.getUserId());
+        userPO = sysUserInfoService.selectOne(userPO);
+        if (null == userPO) {
+            return ResultResp.FAIL("没有该用户");
+        }
+        boolean flag = sysUserInfoService.deleteUser(userPO);
+        if (flag) {
+            stringRedisTemplate.delete(String.format(ManagerRedisKeyConstant.SYSTEM_USER_LOGIN_INFO, userPO.getUserPhone()));
+            return ResultResp.SUCCESS();
+        }
+        return ResultResp.FAIL();
+    }
+
+    /**
+     * 后台重置密码
+     *
+     * @return
+     */
+    @UserLoginToken
+    @PostMapping(value = "resetPWD")
+    @ApiOperation(value = "后台重置密码")
+    public ResultResp updateUser(@RequestBody UserDto userDto) {
+        if (!Optional.ofNullable(userDto.getUserId()).isPresent()) {
+            return ResultResp.NOTNULLPARAM();
+        }
+        SysUserInfoPO userPO = new SysUserInfoPO();
+        userPO.setId(userDto.getUserId());
+        userPO.setUserPassword(BCryptTools.hashpw(Constants.GLOBAL_DEFAULT_PWD));
+        boolean flag = sysUserInfoService.updateUser(userPO);
+        if (flag) {
+            return ResultResp.SUCCESS();
+        }
+        return ResultResp.FAIL();
+    }
+
+    /**
+     * 修改后台用户
+     * @return
+     */
+    @UserLoginToken
+    @PostMapping(value = "updateUser")
+    @ApiOperation(value = "修改后台用户")
+    public ResultResp updateUser(@RequestBody UserUpdateDto userUpdateDto) {
+
+        if (StringUtils.isEmpty(userUpdateDto.getPhone()) || StringUtils.isEmpty(userUpdateDto.getUserName()) || !Optional.ofNullable(userUpdateDto.getRoleId()).isPresent()) {
+            return ResultResp.NOTNULLPARAM();
+        }
+        if (StringUtils.isEmpty(userUpdateDto.getPhone()) || StringUtils.isEmpty(userUpdateDto.getUserName()) ||
+                !Optional.ofNullable(userUpdateDto.getRoleId()).isPresent() || !Optional.ofNullable(userUpdateDto.getUserId()).isPresent()) {
+            return ResultResp.NOTNULLPARAM();
+        }
+        SysUserInfoPO userPO = new SysUserInfoPO();
+        userPO.setId(userUpdateDto.getUserId());
+        userPO.setUserPhone(userUpdateDto.getPhone());
+        userPO.setUserName(userUpdateDto.getUserName());
+        boolean flag = sysUserInfoService.updateUserRole(userPO, userUpdateDto.getRoleId());
+        if (flag) {
+            return ResultResp.SUCCESS();
+        }
+        return ResultResp.FAIL();
+    }
+
+    /**
+     * 修改密码
+     * @return
+     */
+    @UserLoginToken
+    @PostMapping(value = "updatePWD")
+    @ApiOperation(value = "修改密码")
+    public ResultResp updatePWD(@RequestBody UserUpdatePwdDto userUpdatePwdDto) {
+        if (StringUtils.isEmpty(userUpdatePwdDto.getOldPWD()) || StringUtils.isEmpty(userUpdatePwdDto.getNewPWD()) || !Optional.ofNullable(userUpdatePwdDto.getUserId()).isPresent()) {
+            return ResultResp.NOTNULLPARAM();
+        }
+        return sysUserInfoService.updateUserPWD(userUpdatePwdDto.getUserId(), userUpdatePwdDto.getOldPWD(), userUpdatePwdDto.getNewPWD());
+    }
+
+    /**
+     * 用户登录
+     *
+     * @param loginDto
+     * @return
+     */
+    @PassToken
+    @PostMapping(value = "open/userLogin")
+    @ApiOperation(value = "用户登录")
+    public ResultResp<Map<String, Object>> userLogin(@RequestBody LoginDto loginDto) {
+
+        String userName = loginDto.getUserName();
+        String password = loginDto.getPassword();
+
+        if (StringUtils.isEmpty(userName) || StringUtils.isEmpty(password)) {
+            return ResultResp.NOTNULLPARAM();
+        }
+
+        SysUserInfoPO userPO = new SysUserInfoPO();
+        userPO.setUserName(userName);
+        userPO = sysUserInfoService.selectOne(userPO);
+        if (null == userPO || null == userPO.getId()) {
+            return ResultResp.NOTEXISTSUSER();
+        }
+
+        if (userPO.getState().equals(0)) {
+            return ResultResp.FAIL("此账户已经禁用!");
+        }
+
+        if (!BCryptTools.checkpw(password, userPO.getUserPassword())) {
+            return ResultResp.ERRORPWD();
+        }
+
+
+        String token = JwtUtil.getLoginToken(userPO.getId(), userPO.getUserName(), userPO.getUserPhone(), userPO.getUserPassword());
+        Map<String, Object> map = new HashMap<>(4);
+
+        List<PermissionVo> list = permissionService.getRolePermissionByUserId(userPO.getId());
+        userPO.setUserPassword(null);
+        SysRolePO rolePO = sysRoleService.getSysRole(userPO.getId());
+        map.put("role", rolePO);
+        map.put("permission", list);
+        map.put("userInfo", userPO);
+        map.put("token", token);
+        if (!CollectionUtils.isEmpty(list)) {
+            stringRedisTemplate.opsForValue().set(String.format(ManagerRedisKeyConstant.SYSTEM_USER_LOGIN_INFO, userName), token);
+        }
+        return ResultResp.SUCCESS(map);
+    }
+
+    /**
+     * 用户退出
+     * @return
+     */
+    @UserLoginToken
+    @PostMapping(value = "userLogout")
+    @ApiOperation(value = "用户退出")
+    public ResultResp userLogout(@RequestBody UserLogoutDto userLogoutDto) {
+        stringRedisTemplate.delete(String.format(ManagerRedisKeyConstant.SYSTEM_USER_LOGIN_INFO, userLogoutDto.getPhone()));
+        return ResultResp.SUCCESS();
+    }
+
+    /**
+     * 根据userId获取用户详情
+     *
+     * @param userId
+     * @return
+     */
+    @UserLoginToken
+    @GetMapping(value = "getUserInfoByUserId")
+    @ApiOperation(value = "根据userId获取用户详情")
+    public ResultResp<UserVo> getUserInfoByUserId(@RequestParam Integer userId) {
+        if (!Optional.ofNullable(userId).isPresent()) {
+            return ResultResp.NOTNULLPARAM();
+        }
+        UserVo vo = sysUserInfoService.getUserInfoByUserId(userId);
+        return ResultResp.SUCCESS(vo);
+    }
+
+
+    /**
+     * 获取未绑定过教师的可用状态的用户账号
+     *
+     * @return
+     */
+    @UserLoginToken
+    @GetMapping(value = "getNonBoundTeacherUser")
+    @ApiOperation(value = "获取未绑定老师的账号")
+    public ResultResp<List<UserVo>> getNonBoundTeacherUser(@RequestParam  String userName) {
+        List<UserVo> sysUserInfoPOList = sysUserInfoService.getNonBoundTeacherUser(userName);
+        return ResultResp.SUCCESS(sysUserInfoPOList);
+    }
+
+
+//    public static void main(String[] args) {
+//        System.out.println(BCryptTools.checkpw("123456","$2a$10$t0ZYLlopxXmwpwdQ4xfTr.84sk.U8EpguUeNkAPXdm0MF4I3N5jOa"));
+//    }
+
+}

+ 23 - 0
energy-manage-service/src/main/java/com/energy/manage/service/controller/system/SysUserRoleController.java

@@ -0,0 +1,23 @@
+package com.energy.manage.service.controller.system;
+
+import com.energy.manage.service.service.system.SysUserRoleService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.CrossOrigin;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * 用户角色表
+ *
+ * @author sy
+ * @date 2021-10-18 13:32:05
+ */
+@RestController
+@RequestMapping("sysuserrole")
+@CrossOrigin
+public class SysUserRoleController {
+
+	@Autowired
+	private SysUserRoleService sysUserRoleService;
+
+}

Algúns arquivos non se mostraron porque demasiados arquivos cambiaron neste cambio