yanghui
2022-10-21 5f3cf501f9f6c216df17ee8af6618b55b537d21a
Merge remote-tracking branch 'origin/huacheng_test' into local_20221014
14个文件已删除
426个文件已添加
153个文件已修改
51046 ■■■■■ 已修改文件
.idea/vcs.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/.gitkeep 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/1.txt 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/README.md 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/pom.xml 49 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/AliyunConfig.java 91 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/Constant.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/CorsConfig.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/WMApplication.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/api/AgreementAppletsController.java 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/api/AreaCodeAppletsController.java 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/api/AutomessageCommonProblemAppletsController.java 52 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/api/ClassifyAdministrationAppletsController.java 62 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/api/ElseAccessoryAppletsController.java 116 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/api/GuideDoAppletsController.java 56 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/api/GuideRepairOrderAppletsController.java 340 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/api/OrganizationAppletsController.java 54 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/api/ReplyTemplateAppletsController.java 164 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/api/SlideshowAppletsController.java 45 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/api/TransactionEventAppletsController.java 110 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/controller/AgreementController.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/controller/AreaCodeController.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/controller/AutomessageCommonProblemController.java 107 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/controller/ClassifyAdministrationController.java 75 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/controller/CommonController.java 151 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/controller/ElseAccessoryController.java 38 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/controller/GuideDoController.java 86 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/controller/GuideRepairOrderController.java 226 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/controller/HomeStatisticsController.java 397 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/controller/KeywordController.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/controller/OrganizationController.java 100 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/controller/ReplyTemplateController.java 39 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/controller/RoleManagementController.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/controller/SlideshowController.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/controller/SysSettingsController.java 54 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/controller/TransactionEventController.java 105 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/controller/UserController.java 198 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/Agreement.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/AreaCode2022.java 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/AutomessageCommonProblem.java 81 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/AutomessageSysSettings.java 83 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/AutomessageSysSettingsRecord.java 50 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/AutomessageSysUserRecord.java 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/AutomessageTransactionEventInterview.java 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/ClassifyAdministration.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/CountList.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/CountListNum.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/EfficiencyEntity.java 45 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/ElseAccessoryEntity.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/Guidance.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/GuideEvolveEntity.java 56 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/GuidePlate.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/GuideRepairOrder.java 62 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/GuideRepairOrderImage.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/HuaChengSysUser.java 285 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/KeywordEntity.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/MenuEntity.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/OrganizationChartEntity.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/OrganizationEntity.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/PieChart.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/PieChartAll.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/RangeStatistics.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/ReplyTemplateEntity.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/RoleManagementEntity.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/RoleMenuEntity.java 60 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/Slideshow.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/SysUser.java 46 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/TimeWorkOrder.java 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/TransactionEvent.java 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/entity/WorkOrder.java 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/mapper/AutomessageCommonProblemMapper.java 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/mapper/AutomessageSysSettingsMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/mapper/AutomessageSysSettingsRecordMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/mapper/AutomessageSysUserRecordMapper.java 49 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/mapper/AutomessageTransactionEventInterviewMapper.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/mapper/ClassifyAdministrationMapper.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/mapper/ElseAccessoryMapper.java 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/mapper/GuideEvolveMapper.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/mapper/GuideRepairOrderMapper.java 89 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/mapper/HomeStatisticsMapper.java 100 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/mapper/HuaChengSysUserMapper.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/mapper/OrganizationChartMapper.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/mapper/ReplyTemplateMapper.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/mapper/RoleManagementMapper.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/mapper/RoleMenuEntityMapper.java 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/mapper/SysUserMapper.java 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/mapper/TransactionEventMapper.java 76 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/manual/mapper/util/HttpClientUtils.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/manual/mapper/util/MapperGenerator.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/manual/pojo/AppletUserCount.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/manual/pojo/QueryResults.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/manual/pojo/Search.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/exception/base/BaseException.java 98 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/exception/file/BaseException.java 83 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/exception/file/FileException.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/exception/file/InvalidExtensionException.java 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/exception/file/MessageUtils.java 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/exception/file/SpringUtils.java 136 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/file/Constants.java 171 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/file/FileTypeUploadUtils.java 94 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/file/FileTypeUtils.java 77 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/file/FileUploadUtils.java 246 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/file/FileUtils.java 269 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/file/FtpConstants.java 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/file/ImageUtils.java 97 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/file/MimeTypeUtils.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/file/SFTPUtil.java 374 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/interceptor/AuthorizationInterceptor.java 94 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/manager/JWTTokenUtil.java 170 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/manager/RedisTokenManager.java 63 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/manager/TokenConstant.java 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/manager/TokenManager.java 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/resolvers/CurrentUserMethodArgumentResolver.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/HomeStatisticsService.java 96 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/IAreaCodeService.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/IAutomessageCommonProblemService.java 59 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/IClassifyAdministrationService.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/IElseAccessoryService.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/IGuideEvolveService.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/IGuideRepairOrderService.java 109 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/IHuaChengSysUserService.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/IOrganizationChartService.java 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/IReplyTemplateService.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/IRoleManagementService.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/IRoleMenuService.java 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/ISysSettingsService.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/ISysUserRecordService.java 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/ISysUserService.java 49 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/ITransactionEventService.java 49 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/impl/AreaCodeServiceImpl.java 36 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/impl/AutomessageCommonProblemServiceImpl.java 87 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/impl/ClassifyAdministrationImpl.java 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/impl/ElseAccessoryImpl.java 13 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/impl/GuideEvolveImpl.java 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/impl/GuideRepairOrderServiceImpl.java 388 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/impl/HomeStatisticsImpl.java 88 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/impl/HuaChengSysUserImpl.java 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/impl/IRoleMenuImpl.java 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/impl/OrganizationChartImpl.java 72 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/impl/ReplyTemplateImpl.java 36 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/impl/RoleManagementImpl.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/impl/SlideshowServiceImpl.java 64 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/impl/SysSettingsServiceImpl.java 45 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/impl/SysUserRecordServiceImpl.java 66 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/impl/SysUserServiceImpl.java 243 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/impl/TransactionEventImpl.java 156 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/spring/SpringUtils.java 146 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/task/SendWsListener.java 66 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/MessageUtils.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/PermissionUtil.java 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/Seq.java 84 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/ServletUtils.java 147 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/SmsUtil.java 241 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/StringUtils.java 599 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/TableDataInfo.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/TemplateParam.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/TestDate.java 154 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/WxSubscribeDTO.java 61 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/WxUtil.java 279 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/presence/Year2001.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/presence/Year2002.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/presence/Year2003.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/presence/Year2004.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/presence/Year2005.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/presence/Year2006.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/presence/Year2007.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/presence/Year2008.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/presence/Year2009.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/presence/Year2010.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/presence/Year2011.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/presence/Year2012.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/presence/Year2013.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/presence/Year2014.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/presence/Year2015.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/presence/Year2016.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/presence/Year2017.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/presence/Year2018.java 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/presence/Year2019.java 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/presence/Year2020.java 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/presence/Year20xx.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/presence/YearMap.java 84 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/workday/Data.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/workday/WorkUtils.java 699 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/util/workday/WorkdayGen.java 74 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/resources/application-sms.properties 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/resources/application.properties 24 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/resources/mapper/AgreementMapper.xml 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/resources/mapper/AreaCode2022Mapper.xml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/resources/mapper/AutomessageCommonProblemMapper.xml 54 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/resources/mapper/AutomessageSysSettingsMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/resources/mapper/AutomessageSysSettingsRecordMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/resources/mapper/AutomessageSysUserRecordMapper.xml 174 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/resources/mapper/AutomessageTransactionEventInterviewMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/resources/mapper/ClassifyAdministrationMapper.xml 41 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/resources/mapper/ElseAccessoryMapper.xml 37 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/resources/mapper/GuideEvolveMapper.xml 40 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/resources/mapper/GuideRepairOrderMapper.xml 201 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/resources/mapper/HomeStatisticsMapper.xml 159 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/resources/mapper/HuaChengSysUserMapper.xml 123 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/resources/mapper/KeywordMapper.xml 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/resources/mapper/MenuMapper.xml 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/resources/mapper/OrganizationChartMapper.xml 73 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/resources/mapper/ReplyTemplateMapper.xml 30 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/resources/mapper/RoleManagementMapper.xml 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/resources/mapper/RoleMenuMapper.xml 76 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/resources/mapper/SysUserMapper.xml 134 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/resources/mapper/TransactionEventMapper.xml 233 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
hs_err_pid36404.log 198 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/.idea/compiler.xml 49 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/.idea/encodings.xml 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/ComBatteryCommodityActivityApi.java 177 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/ComBatteryCommodityApi.java 89 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/ComBatteryCommodityOrderApi.java 81 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/ComBatteryStoreApi.java 49 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/ComBatteryStoreClassApi.java 82 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/ComBatteryUserAddressApi.java 135 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/ComChangeCarBrandApi.java 81 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/ComChangeCarInquiryApi.java 55 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/ComChangeCarModelApi.java 91 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/ComChangeCarModelSpecsChildrenApi.java 51 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/ComPropertyRepairApi.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/ComSanShuoApi.java 66 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/ComSanShuoEventController.java 175 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/IndexApi.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/LoginApi.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/WxCallbackApi.java 142 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/config/JacksonConfig.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/model/dtos/IDTO.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets_backstage/src/main/java/com/panzhihua/applets_backstage/api/ComBatteryCommodityActivityApi.java 106 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets_backstage/src/main/java/com/panzhihua/applets_backstage/api/ComBatteryCommodityApi.java 105 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets_backstage/src/main/java/com/panzhihua/applets_backstage/api/ComBatteryCommodityOrderApi.java 86 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets_backstage/src/main/java/com/panzhihua/applets_backstage/api/ComBatteryStoreApi.java 137 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets_backstage/src/main/java/com/panzhihua/applets_backstage/api/ComChangeCarBrandApi.java 129 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets_backstage/src/main/java/com/panzhihua/applets_backstage/api/ComChangeCarInquiryApi.java 80 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets_backstage/src/main/java/com/panzhihua/applets_backstage/api/ComChangeCarModelApi.java 141 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets_backstage/src/main/java/com/panzhihua/applets_backstage/api/ComChangeCarModelRelationApi.java 121 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets_backstage/src/main/java/com/panzhihua/applets_backstage/api/ComChangeCarModelSpecsApi.java 129 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets_backstage/src/main/java/com/panzhihua/applets_backstage/api/ComChangeCarModelSpecsChildrenApi.java 121 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets_backstage/src/main/java/com/panzhihua/applets_backstage/api/CommunityApi.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/applets_backstage/src/main/java/com/panzhihua/applets_backstage/api/StreetApi.java 23 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/auth/src/main/java/com/panzhihua/auth/api/LoginApi.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/auth/src/main/java/com/panzhihua/auth/handel/UserAuthenticationProvider.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/auth/src/main/java/com/panzhihua/auth/service/LoginService.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/auth/src/main/java/com/panzhihua/auth/service/impl/LoginServiceImpl.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/pom.xml 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/constants/Constants.java 13 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/constants/PayCpmstant.java 29 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/constants/ReturnMsgConstants.java 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/constants/UserConstants.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/enums/SanShuoEventStatusEnum.java 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddComBatteryCommodityActivityDto.java 141 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddComBatteryCommodityDto.java 123 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddComBatteryCommodityOrderBargainDto.java 97 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddComBatteryCommodityOrderBargainRecordDto.java 67 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddComBatteryCommodityOrderCollageTeamDto.java 66 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddComBatteryCommodityOrderCollageTeamPeopleDto.java 66 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddComBatteryCommodityOrderDto.java 217 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddComBatteryCommoditySpecsDto.java 99 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddComBatteryStoreClassDto.java 80 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddComBatteryStoreDto.java 134 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddComBatteryTradeOrderDto.java 131 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddComBatteryUserAddressDto.java 116 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddComChangeCarBrandDto.java 86 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddComChangeCarInquiryDto.java 72 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddComChangeCarModelDto.java 99 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddComChangeCarModelRelationDto.java 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddComChangeCarModelSpecsChildrenDto.java 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddComChangeCarModelSpecsDto.java 74 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddSysUserDto.java 255 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditComBatteryCommodityActivityDto.java 129 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditComBatteryCommodityDto.java 112 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditComBatteryCommodityOrderBargainDto.java 90 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditComBatteryCommodityOrderBargainRecordDto.java 65 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditComBatteryCommodityOrderCollageTeamDto.java 64 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditComBatteryCommodityOrderCollageTeamPeopleDto.java 64 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditComBatteryCommodityOrderDto.java 191 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditComBatteryCommoditySpecsDto.java 92 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditComBatteryStoreClassDto.java 76 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditComBatteryStoreDto.java 116 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditComBatteryTradeOrderDto.java 119 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditComBatteryUserAddressDto.java 108 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditComChangeCarBrandDto.java 81 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditComChangeCarInquiryDto.java 69 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditComChangeCarModelDto.java 92 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditComChangeCarModelRelationDto.java 45 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditComChangeCarModelSpecsChildrenDto.java 45 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditComChangeCarModelSpecsDto.java 71 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditOrderAddressDto.java 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditOrderLogisticsDto.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditSysUserDto.java 218 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/OrderDeliverAdminDto.java 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageComBatteryCommodityActivityDto.java 142 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageComBatteryCommodityDto.java 121 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageComBatteryCommodityOrderBargainDto.java 99 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageComBatteryCommodityOrderBargainRecordDto.java 74 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageComBatteryCommodityOrderCollageTeamDto.java 73 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageComBatteryCommodityOrderCollageTeamPeopleDto.java 73 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageComBatteryCommodityOrderDto.java 212 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageComBatteryCommoditySpecsDto.java 103 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageComBatteryStoreClassDto.java 85 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageComBatteryStoreDto.java 125 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageComBatteryTradeOrderDto.java 128 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageComBatteryUserAddressDto.java 118 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageComChangeCarBrandDto.java 92 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageComChangeCarInquiryDto.java 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageComChangeCarModelDto.java 101 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageComChangeCarModelRelationDto.java 64 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageComChangeCarModelSpecsChildrenDto.java 54 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageComChangeCarModelSpecsDto.java 80 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageSysUserDto.java 227 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/StartBargainOrderDto.java 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/StartFightOrderDto.java 49 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/StartSeckillOrderDto.java 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/StartUserBargainOrderDto.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/UserCreateOrderDto.java 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/sanshuo/ComMediateTypeDTO.java 98 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/sanshuo/ComSanShuoIndustryCenterDTO.java 83 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/sanshuo/ComSanshuoEventDTO.java 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/sanshuo/ComSanshuoExpertDTO.java 139 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/sanshuo/IndexDateDTO.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/shop/WxPayNotifyOrderDTO.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/LoginUserInfoVO.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/SanShuoMessageVO.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComBatteryActivityTeamVo.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComBatteryCommodityActivityVo.java 166 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComBatteryCommodityOrderBargainRecordVo.java 69 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComBatteryCommodityOrderBargainVo.java 107 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComBatteryCommodityOrderCollageTeamPeopleVo.java 68 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComBatteryCommodityOrderCollageTeamVo.java 81 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComBatteryCommodityOrderVo.java 231 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComBatteryCommoditySpecsVo.java 96 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComBatteryCommodityVo.java 123 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComBatteryStoreClassVo.java 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComBatteryStoreVo.java 122 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComBatteryTradeOrderVo.java 118 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComBatteryUserAddressVo.java 107 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComChangeCarBrandVo.java 82 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComChangeCarInquiryVo.java 70 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComChangeCarModelRelationVo.java 63 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComChangeCarModelSpecsChildrenVo.java 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComChangeCarModelSpecsVo.java 77 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComChangeCarModelVo.java 97 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/SysUserVo.java 217 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComActVO.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComStreetVO.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/partybuilding/PagePartyOrganizationVO.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/ComEventArchiveVO.java 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/ComEventCalculateVO.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/ComEventConciliationVO.java 43 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/ComEventDetailVO.java 140 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/ComEventPageRequestVO.java 55 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/ComEventRequestImageVO.java 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/ComEventResourceVO.java 55 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/ComEventTransferRecordVO.java 94 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/ComEventVO.java 545 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/ComMediaTypeVO.java 97 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/ComSanRequestVO.java 46 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/ComSanShuoEventVO.java 56 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/ComSanShuoIndustryCenterVO.java 80 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/ComSanshuoExpertVO.java 149 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/EventRateVO.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/ExpertRangeVO.java 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/ExpertShowVO.java 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/IndexDateVO.java 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/MediateTypeVO.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/shop/PageShopStoreVO.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/auth/TokenService.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/ComBatteryCommodityActivityFeign.java 136 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/ComBatteryCommodityFeign.java 104 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/ComBatteryCommodityOrderBargainFeign.java 87 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/ComBatteryCommodityOrderBargainRecordFeign.java 87 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/ComBatteryCommodityOrderCollageTeamFeign.java 87 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/ComBatteryCommodityOrderCollageTeamPeopleFeign.java 87 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/ComBatteryCommodityOrderFeign.java 152 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/ComBatteryCommoditySpecsFeign.java 87 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/ComBatteryStoreClassFeign.java 104 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/ComBatteryStoreFeign.java 96 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/ComBatteryUserAddressFeign.java 95 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/ComChangeCarBrandFeign.java 87 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/ComChangeCarInquiryFeign.java 87 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/ComChangeCarModelFeign.java 96 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/ComChangeCarModelRelationFeign.java 98 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/ComChangeCarModelSpecsChildrenFeign.java 87 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/ComChangeCarModelSpecsFeign.java 87 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/CommunitySanShuoService.java 185 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/CommunityService.java 204 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/user/UserService.java 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/MathUtils.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/RSAUtils.java 153 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/WxPayUtils.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/ComBatteryCommodityActivityApi.java 144 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/ComBatteryCommodityApi.java 140 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/ComBatteryCommodityOrderApi.java 109 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/ComBatteryCommoditySpecsApi.java 130 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/ComBatteryStoreApi.java 61 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/ComBatteryStoreClassApi.java 141 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/ComSanShuoApi.java 181 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/ComSanShuoEventController.java 249 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/CommunityConvenientApi.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/CommunityPartyBuildingApi.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/CommunityPartyBuildingWestApi.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/IndexApi.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/LoginApi.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/config/JacksonConfig.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/grid_backstage/src/main/java/com/panzhihua/grid_backstage/api/ComSanShuoApi.java 173 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/grid_backstage/src/main/java/com/panzhihua/grid_backstage/api/ComSanShuoEventController.java 249 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/grid_backstage/src/main/java/com/panzhihua/grid_backstage/api/CommonApi.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/grid_backstage/src/main/java/com/panzhihua/grid_backstage/config/JacksonConfig.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/AdvertisementApi.java 24 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComActActivityCodeApi.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComBatteryCommodityActivityController.java 175 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComBatteryCommodityController.java 126 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComBatteryCommodityOrderBargainController.java 106 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComBatteryCommodityOrderBargainRecordController.java 106 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComBatteryCommodityOrderCollageTeamController.java 106 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComBatteryCommodityOrderCollageTeamPeopleController.java 106 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComBatteryCommodityOrderController.java 187 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComBatteryCommoditySpecsController.java 106 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComBatteryStoreClassController.java 127 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComBatteryStoreController.java 116 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComBatteryUserAddressController.java 116 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComChangeCarBrandController.java 106 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComChangeCarInquiryController.java 106 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComChangeCarModelController.java 117 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComChangeCarModelRelationController.java 119 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComChangeCarModelSpecsChildrenController.java 106 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComChangeCarModelSpecsController.java 106 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComSanShuoEventApi.java 98 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComSanShuoEventController.java 357 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComSanShuoEventResourceController.java 166 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComSanShuoEventTransferRecordController.java 149 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComSanShuoExpertApi.java 190 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComSanShuoIndustryCenterApi.java 89 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/StreetApi.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActDAO.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComBatteryCommodityActivityMapper.java 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComBatteryCommodityMapper.java 72 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComBatteryCommodityOrderBargainMapper.java 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComBatteryCommodityOrderBargainRecordMapper.java 65 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComBatteryCommodityOrderCollageTeamMapper.java 67 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComBatteryCommodityOrderCollageTeamPeopleMapper.java 65 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComBatteryCommodityOrderMapper.java 63 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComBatteryCommoditySpecsMapper.java 65 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComBatteryStoreClassMapper.java 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComBatteryStoreMapper.java 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComBatteryTradeOrderMapper.java 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComBatteryUserAddressMapper.java 65 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComChangeCarBrandMapper.java 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComChangeCarInquiryMapper.java 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComChangeCarModelMapper.java 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComChangeCarModelRelationMapper.java 77 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComChangeCarModelSpecsChildrenMapper.java 65 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComChangeCarModelSpecsMapper.java 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComEventMapper.java 114 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComEventResourceMapper.java 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComEventTransferRecordMapper.java 45 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComMediateTypeDao.java 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComSanshuoEventDao.java 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComSanshuoExpertDao.java 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComSanshuoIndustryCenterDao.java 43 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/SysUserMapper.java 67 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComBatteryCommodity.java 91 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComBatteryCommodityActivity.java 123 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComBatteryCommodityOrder.java 244 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComBatteryCommodityOrderBargain.java 69 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComBatteryCommodityOrderBargainRecord.java 49 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComBatteryCommodityOrderCollageTeam.java 55 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComBatteryCommodityOrderCollageTeamPeople.java 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComBatteryCommoditySpecs.java 75 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComBatteryStore.java 98 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComBatteryStoreClass.java 56 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComBatteryTradeOrder.java 120 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComBatteryUserAddress.java 90 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComChangeCarBrand.java 66 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComChangeCarInquiry.java 59 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComChangeCarModel.java 75 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComChangeCarModelRelation.java 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComChangeCarModelSpecs.java 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComChangeCarModelSpecsChildren.java 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComEvent.java 218 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComEventResource.java 60 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComEventTransferRecord.java 110 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComMediateType.java 189 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComSanshuoEvent.java 114 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComSanshuoExpert.java 138 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComSanshuoIndustryCenter.java 144 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/SysUser.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActDO.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComStreetDO.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/schedule/AcidSchedule.java 30 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComBatteryCommodityActivityService.java 89 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComBatteryCommodityOrderBargainRecordService.java 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComBatteryCommodityOrderBargainService.java 99 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComBatteryCommodityOrderCollageTeamPeopleService.java 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComBatteryCommodityOrderCollageTeamService.java 85 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComBatteryCommodityOrderService.java 141 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComBatteryCommodityService.java 93 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComBatteryCommoditySpecsService.java 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComBatteryStoreClassService.java 93 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComBatteryStoreService.java 86 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComBatteryTradeOrderService.java 108 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComBatteryUserAddressService.java 85 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComChangeCarBrandService.java 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComChangeCarInquiryService.java 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComChangeCarModelRelationService.java 87 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComChangeCarModelService.java 86 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComChangeCarModelSpecsChildrenService.java 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComChangeCarModelSpecsService.java 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComOpsAdvService.java 22 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComSanShuoEventService.java 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComSanShuoExpertService.java 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComSanShuoIndustryCenterService.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComStreetService.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/CommediateTypeService.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/IComEventResourceService.java 70 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/IComEventService.java 109 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/IComEventTransferRecordService.java 60 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/SysUserService.java 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActNeighborCircleServiceImpl.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActServiceImpl.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComBatteryCommodityActivityServiceImpl.java 177 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComBatteryCommodityOrderBargainRecordServiceImpl.java 119 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComBatteryCommodityOrderBargainServiceImpl.java 435 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComBatteryCommodityOrderCollageTeamPeopleServiceImpl.java 119 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComBatteryCommodityOrderCollageTeamServiceImpl.java 384 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComBatteryCommodityOrderServiceImpl.java 794 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComBatteryCommodityServiceImpl.java 166 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComBatteryCommoditySpecsServiceImpl.java 122 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComBatteryStoreClassServiceImpl.java 167 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComBatteryStoreServiceImpl.java 180 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComBatteryTradeOrderServiceImpl.java 187 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComBatteryUserAddressServiceImpl.java 158 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComChangeCarBrandServiceImpl.java 136 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComChangeCarInquiryServiceImpl.java 122 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComChangeCarModelRelationServiceImpl.java 158 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComChangeCarModelServiceImpl.java 153 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComChangeCarModelSpecsChildrenServiceImpl.java 136 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComChangeCarModelSpecsServiceImpl.java 158 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComEventResourceServiceImpl.java 80 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComEventServiceImpl.java 1203 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComEventTransferRecordServiceImpl.java 79 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComOpsAdvServiceImpl.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComSanShuoEventServiceImpl.java 61 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComSanShuoExpertServiceImpl.java 445 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComSanShuoIndustryCenterServiceImpl.java 101 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComShopOrderServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComStreetServiceImpl.java 70 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/CommediateTypeServiceImpl.java 82 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ConvenientMerchantServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/RentingHourseOrderServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/SysUserServiceImpl.java 119 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/util/ExcelListener.java 54 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/util/WXMessageUtil.java 56 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComActIntegralUserDOMapper.xml 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComBatteryCommodityActivityMapper.xml 199 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComBatteryCommodityMapper.xml 232 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComBatteryCommodityOrderBargainMapper.xml 144 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComBatteryCommodityOrderBargainRecordMapper.xml 105 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComBatteryCommodityOrderCollageTeamMapper.xml 127 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComBatteryCommodityOrderCollageTeamPeopleMapper.xml 105 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComBatteryCommodityOrderMapper.xml 289 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComBatteryCommoditySpecsMapper.xml 105 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComBatteryStoreClassMapper.xml 72 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComBatteryStoreMapper.xml 122 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComBatteryTradeOrderMapper.xml 156 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComBatteryUserAddressMapper.xml 107 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComChangeCarBrandMapper.xml 114 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComChangeCarInquiryMapper.xml 109 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComChangeCarModelMapper.xml 123 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComChangeCarModelRelationMapper.xml 169 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComChangeCarModelSpecsChildrenMapper.xml 67 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComChangeCarModelSpecsMapper.xml 65 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComEventMapper.xml 503 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComEventResourceMapper.xml 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComEventTransferRecordMapper.xml 223 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComMediaTypeMapper.xml 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComPropertyMapper.xml 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComSanshuoEventDao.xml 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComSanshuoExpertDao.xml 181 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComSanshuoIndustryCenterDao.xml 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/SysUserMapper.xml 261 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_community/src/test/java/com/panzhihua/service_community/service/impl/ComEventServiceImplTest.java 114 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_property/src/main/java/com/panzhihua/service_property/api/ComPropertyRepairApi.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_property/src/main/java/com/panzhihua/service_property/config/WebSocketClient.java 67 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_property/src/main/java/com/panzhihua/service_property/service/impl/ComPropertyRepairServiceImpl.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/api/UserApi.java 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/dao/UserDao.java 88 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/UserService.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java 354 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/resources/mapper/UserDao.xml 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/shop_backstage/src/main/java/com/panzhihua/shop_backstage/api/MicroCommercialStreetApi.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/timejob/src/main/java/com/panzhihua/timejob/jobhandler/BatteryJobHandler.java 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springcloud_k8s_panzhihuazhihuishequ/zuul/src/main/java/com/panzhihua/zuul/filters/JWTAuthenticationTokenFilter.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
.idea/vcs.xml
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
  <component name="VcsDirectoryMappings">
    <mapping directory="$PROJECT_DIR$" vcs="Git" />
    <mapping directory="" vcs="Git" />
  </component>
</project>
flower_city/.gitkeep
flower_city/1.txt
File was deleted
flower_city/README.md
@@ -1 +1,3 @@
# 花城e+自公告系统 后端
# 花城e+自公告系统 后端
# 不参与花城后台   完全独立
# 只是用户表只做查询花城数据
flower_city/pom.xml
@@ -72,6 +72,33 @@
            <version>2.3.30</version>
        </dependency>
        <!-- 阿里短信 -->
        <dependency>
            <groupId>com.aliyun</groupId>
            <artifactId>aliyun-java-sdk-core</artifactId>
            <version>4.5.3</version>
        </dependency>
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.74</version>
        </dependency>
        <!-- okhttp -->
        <dependency>
            <groupId>com.squareup.okhttp</groupId>
            <artifactId>okhttp</artifactId>
            <version>2.7.1</version>
        </dependency>
        <dependency>
            <groupId>com.icexxx</groupId>
            <artifactId>iceworkday</artifactId>
            <version>2.0.2.0</version>
        </dependency>
        <dependency>
            <groupId>cn.afterturn</groupId>
            <artifactId>easypoi-annotation</artifactId>
@@ -106,14 +133,6 @@
        </dependency>
        <!-- 文件上传工具类 -->
        <dependency>
            <groupId>commons-fileupload</groupId>
            <artifactId>commons-fileupload</artifactId>
            <version>1.4</version>
        </dependency>
        <!-- io常用工具类 -->
        <dependency>
            <groupId>commons-io</groupId>
@@ -127,6 +146,20 @@
        </dependency>
        <dependency>
            <groupId>com.jcraft</groupId>
            <artifactId>jsch</artifactId>
            <version>0.1.53</version>
        </dependency>
        <dependency>
            <groupId>io.jsonwebtoken</groupId>
            <artifactId>jjwt</artifactId>
            <version>0.9.1</version>
        </dependency>
    </dependencies>
flower_city/src/main/java/com/dg/core/AliyunConfig.java
New file
@@ -0,0 +1,91 @@
package com.dg.core;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.PropertySource;
import org.springframework.stereotype.Component;
/**
 * 阿里云短信配置
 */
@Component
@PropertySource(value = "classpath:application-sms.properties",encoding = "UTF-8")
public class AliyunConfig {
    @Value("${aliyun.key}")
    private String key;
    @Value("${aliyun.screct}")
    private String screct;
    @Value("${aliyun.SignName}")
    private String SignName;
    @Value("${aliyun.TemplateCode}")
    private String TemplateCode;
    @Value("${aliyun.TemplateCodeOvertime}")
    private  String TemplateCodeOvertime;
    @Value("${aliyun.TemplateCodeComplete}")
    private  String  TemplateCodeComplete;
    @Value("${aliyun.TemplateCodeSubmit}")
    private  String  TemplateCodeSubmit;
    public String getTemplateCodeSubmit() {
        return TemplateCodeSubmit;
    }
    public void setTemplateCodeSubmit(String templateCodeSubmit) {
        TemplateCodeSubmit = templateCodeSubmit;
    }
    public String getKey() {
        return key;
    }
    public String getTemplateCodeComplete() {
        return TemplateCodeComplete;
    }
    public void setTemplateCodeComplete(String templateCodeComplete) {
        TemplateCodeComplete = templateCodeComplete;
    }
    public void setKey(String key) {
        this.key = key;
    }
    public String getTemplateCodeOvertime() {
        return TemplateCodeOvertime;
    }
    public void setTemplateCodeOvertime(String templateCodeOvertime) {
        TemplateCodeOvertime = templateCodeOvertime;
    }
    public String getScrect() {
        return screct;
    }
    public void setScrect(String screct) {
        this.screct = screct;
    }
    public String getSignName() {
        return SignName;
    }
    public void setSignName(String signName) {
        SignName = signName;
    }
    public String getTemplateCode() {
        return TemplateCode;
    }
    public void setTemplateCode(String templateCode) {
        TemplateCode = templateCode;
    }
}
flower_city/src/main/java/com/dg/core/Constant.java
@@ -31,7 +31,7 @@
    /**
     * token有效期(小时)
     */
    public static final int TOKEN_EXPIRES_HOUR = 1;
    public static final int TOKEN_EXPIRES_HOUR = 168;
    /**
     * redis存储手机验证码过期时间(10分钟)
@@ -68,4 +68,9 @@
     */
    public static final String AUTHORIZATION = "Authorization";
    /**
     * 小程序  花城e+token
     */
    public static final String HCAUTHORIZATION = "HCAuthorization";
}
flower_city/src/main/java/com/dg/core/CorsConfig.java
@@ -1,6 +1,5 @@
package com.dg.core;
import com.dg.core.util.ServletUtils;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
@@ -22,26 +21,5 @@
                // 跨域允许时间
                .maxAge(3600);
    }
    /**
     * 获取完整的请求路径,包括:域名,端口,上下文访问路径
     *
     * @return 服务地址
     */
    public String getUrl()
    {
        HttpServletRequest request = ServletUtils.getRequest();
        return getDomain(request);
    }
    public static String getDomain(HttpServletRequest request)
    {
        StringBuffer url = request.getRequestURL();
        String contextPath = request.getServletContext().getContextPath();
        return url.delete(url.length() - request.getRequestURI().length(), url.length()).append(contextPath).toString();
    }
}
flower_city/src/main/java/com/dg/core/WMApplication.java
@@ -5,7 +5,7 @@
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.servlet.ServletComponentScan;
//@ServletComponentScan("com.dg.core.task")  //定时任务启动开关
@ServletComponentScan("com.dg.core.task")  //定时任务启动开关
@SpringBootApplication
@MapperScan("com.dg.core.db")
public class WMApplication {
flower_city/src/main/java/com/dg/core/api/AgreementAppletsController.java
New file
@@ -0,0 +1,36 @@
package com.dg.core.api;
import com.dg.core.ResultData;
import com.dg.core.annotation.Authorization;
import com.dg.core.annotation.CurrentUser;
import com.dg.core.db.gen.entity.Agreement;
import com.dg.core.db.gen.entity.SysUser;
import com.dg.core.service.IAgreementService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
@Api(tags = {"相关协议小程序接口"})
@RestController
@RequestMapping("/applets/agreement")
public class AgreementAppletsController {
    @Resource
    private IAgreementService agreementService;
    /**
     * 通过协议名获取相关协议
     * @return
     */
    @ApiOperation(value = "通过协议名获取相关协议",response = Agreement.class)
    @GetMapping(value = "/queryByAgreement")
    public ResultData queryByAgreement(@RequestParam("agreement") String agreement) {
        return ResultData.success(agreementService.queryByAgreement(agreement));
    }
}
flower_city/src/main/java/com/dg/core/api/AreaCodeAppletsController.java
New file
@@ -0,0 +1,33 @@
package com.dg.core.api;
import com.dg.core.controller.BaseController;
import com.dg.core.db.gen.entity.AreaCode2022;
import com.dg.core.service.IAreaCodeService;
import com.dg.core.util.TableDataInfo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
@Api(tags = {"所属地区小程序接口"})
@RestController
@RequestMapping("/applet/areaCode")
public class AreaCodeAppletsController extends BaseController {
    @Resource
    private IAreaCodeService iAreaCodeService;
    /**
     * 根据指南id获取所属地区
     * @return
     */
    @ApiOperation(value = "根据指南id获取所属地区",response = AreaCode2022.class)
    @GetMapping("/getAreaCodeByTransactionId")
    public TableDataInfo getAreaCodeByTransactionId(@RequestParam("transactionId") Integer transactionId){
        return getDataTable(iAreaCodeService.getAreaCodeByTransactionId(transactionId));
    }
}
flower_city/src/main/java/com/dg/core/api/AutomessageCommonProblemAppletsController.java
New file
@@ -0,0 +1,52 @@
package com.dg.core.api;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.dg.core.ResultData;
import com.dg.core.annotation.Authorization;
import com.dg.core.annotation.CurrentUser;
import com.dg.core.controller.BaseController;
import com.dg.core.db.gen.entity.AutomessageCommonProblem;
import com.dg.core.db.gen.entity.SysUser;
import com.dg.core.service.IAutomessageCommonProblemService;
import com.dg.core.util.TableDataInfo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.List;
@Api(tags = {"常见问题小程序接口"})
@RestController
@RequestMapping("/applets/automessageCommonProblem")
public class AutomessageCommonProblemAppletsController extends BaseController {
    @Resource
    private IAutomessageCommonProblemService iAutomessageCommonProblemService;
    /**
     * 获取常见问题列表(不分页)
     * @return
     */
    @ApiOperation(value = "获取常见问题列表(不分页)",response = AutomessageCommonProblem.class)
    @GetMapping("/selectList")
    public ResultData selectList(){
      return  ResultData.success(iAutomessageCommonProblemService.selectList());
    }
    /**
     * 获取常见问题列表(不分页查找)
     * @return
     */
    @ApiOperation(value = "获取常见问题列表(不分页查找)",response = AutomessageCommonProblem.class)
    @GetMapping("/queryList")
    public ResultData queryList(@RequestParam(value = "title",required = false) String title){
        return  ResultData.success(iAutomessageCommonProblemService.selectConfigList(title,null));
    }
}
flower_city/src/main/java/com/dg/core/api/ClassifyAdministrationAppletsController.java
New file
@@ -0,0 +1,62 @@
package com.dg.core.api;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.dg.core.ResultData;
import com.dg.core.annotation.Authorization;
import com.dg.core.controller.BaseController;
import com.dg.core.db.gen.entity.ClassifyAdministration;
import com.dg.core.service.IClassifyAdministrationService;
import com.dg.core.util.TableDataInfo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.Assert;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
 * 分类管理
 */
@Api(tags = {"分类管理小程序接口"})
@RestController
@RequestMapping("/applets/classify")
public class ClassifyAdministrationAppletsController extends BaseController
{
    @Autowired(required = true)
    IClassifyAdministrationService iClassifyAdministrationService;
    /**
     * 获取管理菜单列表(无分页已分级)
     * @return
     */
    @ApiOperation(value = "  获取管理菜单列表(无分页已分级))",response = ClassifyAdministration.class)
    @GetMapping("/selectListByParentId")
    public TableDataInfo  selectListByParentId(@RequestParam(value = "parentId",required = false) String parentId,
                                               @RequestParam(value = "departmentId",required = false) Integer departmentId){
        int num=iClassifyAdministrationService.countNum("",null);
        if (parentId==null)
            parentId="0";
        return getDataTable(iClassifyAdministrationService.selectConfigListByParentId(parentId, departmentId),num);
    }
    /**
     * 获取分类根据id 如果是二级id则获取的是办事指南
     * @return
     */
    @ApiOperation("获取分类根据id 如果是二级id则获取的是办事指南,不传参默认是0")
    @GetMapping("/queryListById")
    ResultData queryListById(@RequestParam(value = "id",required = false) Integer id){
        if(id==null)
            id=0;
        return  iClassifyAdministrationService.queryListById(id);
    }
}
flower_city/src/main/java/com/dg/core/api/ElseAccessoryAppletsController.java
New file
@@ -0,0 +1,116 @@
package com.dg.core.api;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.dg.core.ResultData;
import com.dg.core.annotation.Authorization;
import com.dg.core.annotation.CurrentUser;
import com.dg.core.controller.BaseController;
import com.dg.core.db.gen.entity.ElseAccessoryEntity;
import com.dg.core.db.gen.entity.GuideRepairOrder;
import com.dg.core.db.gen.entity.SysUser;
import com.dg.core.service.IElseAccessoryService;
import com.dg.core.service.IOrganizationChartService;
import com.dg.core.util.PermissionUtil;
import com.dg.core.util.TableDataInfo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@Api(tags = {"其他附件小程序接口"})
@RestController
@RequestMapping("/applets/else")
public class ElseAccessoryAppletsController extends BaseController
{
    @Autowired
    IElseAccessoryService iElseAccessoryService;
    @Autowired
    IOrganizationChartService iOrganizationChartService;
    /**
     * 获取附件列表
     * @param Name
     * @return
     */
    @ApiOperation(value = "获取附件列表接口(全部)",response = ElseAccessoryEntity.class)
    @GetMapping(path = "/getAllList")
    @Authorization
    public TableDataInfo selectConfigListAll(@RequestParam(value = "Name",required = false) String Name,
                                             @CurrentUser SysUser sysUser)
    {
        List<String> ids= PermissionUtil.getPermission(sysUser,iOrganizationChartService);
        if(ids==null || ids.size()<1)
        {
            return getDataTable("您没有权限查看该数据");
        }
        List<ElseAccessoryEntity> list = iElseAccessoryService.selectConfigList(Name,ids);
        int num=iElseAccessoryService.countNum(Name,ids);
        return getDataTable(list,num);
    }
    /**
     * 新增列表
     * @param entity
     * @return
     */
    @ApiOperation(value = "新增附件",response = ElseAccessoryEntity.class)
    @PostMapping(path = "/add")
    @Authorization
    public ResultData insertConfig(@RequestBody ElseAccessoryEntity entity)
    {
        if(entity==null)
        {
            return ResultData.error("参数不能为空");
        }
        if(StringUtils.isEmpty(entity.getName()))
        {
            return ResultData.error("事项名称不能为空");
        }
        if(StringUtils.isEmpty(entity.getUrl()))
        {
            return ResultData.error("文件url不能为空");
        }
        if(StringUtils.isEmpty(entity.getDepartmentId()))
        {
            return ResultData.error("部门不能为空");
        }
        return toAjax(iElseAccessoryService.insertConfig(entity));
    }
    /**
     * 更新附件
     * @param entity
     * @return
     */
    @ApiOperation(value = "更新附件",response = ElseAccessoryEntity.class)
    @PostMapping(path = "/update")
    @Authorization
    public ResultData updateConfig(@RequestBody ElseAccessoryEntity entity)
    {
        return toAjax(iElseAccessoryService.updateConfig(entity));
    }
    /**
     * 删除
     * @param Id
     * @return
     */
    @ApiOperation(value = "删除附件",response = ElseAccessoryEntity.class)
    @DeleteMapping(path = "/delete")
    @Authorization
    public ResultData deleteConfigById(@RequestParam(value = "Id",required = false) String Id)
    {
        return toAjax(iElseAccessoryService.deleteConfigById(Id));
    }
}
flower_city/src/main/java/com/dg/core/api/GuideDoAppletsController.java
New file
@@ -0,0 +1,56 @@
package com.dg.core.api;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.dg.core.ResultData;
import com.dg.core.annotation.Authorization;
import com.dg.core.controller.BaseController;
import com.dg.core.db.gen.entity.SysUser;
import com.dg.core.service.ISysUserService;
import com.dg.core.util.Snowflake;
import com.dg.core.util.TableDataInfo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.Assert;
import org.springframework.web.bind.annotation.*;
import java.time.LocalDateTime;
import java.util.List;
@Api(tags = {"导办用户小程序接口"})
@RestController
@RequestMapping("/applets/guidedo")
public class GuideDoAppletsController extends BaseController
{
    @Autowired
    ISysUserService IUserService;
    /**
     * 根据部门id及分类id获取导办用户
     *
     * @return 结果
     */
    @ApiOperation(value = "根据部门id及分类id获取导办用户",response = SysUser.class)
    @GetMapping("/selectListByDepartmentId")
    @Authorization
    public ResultData selectListByDepartmentId(@RequestParam("departmentId") String departmentId,
                                               @RequestParam(value = "classifyId",required = false) String classifyId){
        return  ResultData.success(IUserService.selectListByDepartmentId(departmentId,classifyId));
    }
    /**
     * 查询导办用户列表(不分页)
     * @return 结果
     */
    @ApiOperation(value = " 查询导办用户列表(不分页)",response = SysUser.class)
    @GetMapping("/queryList")
    public  ResultData  queryList(@RequestParam(value = "keyWord",required = false) String keyWord){
        return  ResultData.success(IUserService.queryList(2,keyWord));
    }
}
flower_city/src/main/java/com/dg/core/api/GuideRepairOrderAppletsController.java
New file
@@ -0,0 +1,340 @@
package com.dg.core.api;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.dg.core.ResultData;
import com.dg.core.annotation.Authorization;
import com.dg.core.annotation.CurrentUser;
import com.dg.core.controller.BaseController;
import com.dg.core.db.gen.entity.GuideEvolveEntity;
import com.dg.core.db.gen.entity.GuideRepairOrder;
import com.dg.core.db.gen.entity.SysUser;
import com.dg.core.service.IGuideEvolveService;
import com.dg.core.service.IGuideRepairOrderService;
import com.dg.core.service.IOrganizationChartService;
import com.dg.core.util.PermissionUtil;
import com.dg.core.util.SmsUtil;
import com.dg.core.util.TableDataInfo;
import com.dg.core.util.WxUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.Assert;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.time.LocalDateTime;
import java.util.List;
/**
 * 工单管理
 */
@Api(tags = {"工单管理小程序接口"})
@RestController
@RequestMapping("/applets/guideRepairOrder")
public class GuideRepairOrderAppletsController extends BaseController {
    @Resource
    private IGuideRepairOrderService iGuideRepairOrderService;
    @Autowired
    private IGuideEvolveService iGuideEvolveService;
    @Resource
    IOrganizationChartService iOrganizationChartService;
    private static String guideRepairOrderCompleteTemplateId = "7ZCHHii87rWPwVkdhZnvNiYbYi_Buq0NXO10cmUhAFk";
    @Resource
    SmsUtil smsUtil;
    /**
     * 提交导办订单
     * @return
     */
    @ApiOperation(value = "提交导办订单",response = GuideRepairOrder.class)
    @PostMapping("/addOrder")
    @Authorization
    public ResultData addOrder(@RequestBody GuideRepairOrder guideRepairOrder,@CurrentUser SysUser sysUser) {
          guideRepairOrder.setSubmitUserId(sysUser.getUserId().toString());
          guideRepairOrder.setSubmitUserPhone(sysUser.getPhonenumber());
          guideRepairOrder.setSubmitType(1);
          int i = iGuideRepairOrderService.addOrder(guideRepairOrder);
          if (i>0){
              iGuideEvolveService.updateGuid();
             return ResultData.success();
          }
          else
              return  ResultData.error("提交失败,请检查你是否有相同的咨询内容在处理中");
    }
    /**
     * 获取详情
     * @param Id
     * @param orderNum
     * @return
     */
    @ApiOperation(value = "获取订单详情",response = GuideRepairOrder.class)
    @GetMapping("/orderdata")
    @Authorization
    public ResultData selectConfigData(@RequestParam(value = "Id",required = false) String Id,
                                       @RequestParam(value = "orderNum",required = false)  String orderNum)
    {
        if(StringUtils.isEmpty(Id) && StringUtils.isEmpty(orderNum))
        {
            return ResultData.error("id或者订单号不能都为空");
        }
        GuideRepairOrder order=iGuideRepairOrderService.selectConfigData(Id,orderNum);
        order.setGuideEvolveEntities(iGuideEvolveService.selectConfigList(Id));
        return ResultData.success(order);
    }
    /**
     * 转派人员
     * @param order
     * @return
     */
    @ApiOperation(value = "转派人员",response = GuideRepairOrder.class)
    @PostMapping("/redeploy")
    @Authorization
    public ResultData redeploy(@RequestBody GuideRepairOrder order, @CurrentUser SysUser sysUser)
    {
        if(order==null)
        {
            return ResultData.error("参数不能为空");
        }
        if(StringUtils.isEmpty(order.getGuideDepartmentId()))
        {
            return ResultData.error("导办部门id不能为空");
        }
        if(StringUtils.isEmpty(order.getGuideUserId()))
        {
            return ResultData.error("导办人员id不能为空");
        }
        //已分配
        order.setState("2");
        //新增转派记录
        GuideEvolveEntity entity=new GuideEvolveEntity();
        entity.setCreateTime(LocalDateTime.now());
        entity.setUpdateTime(LocalDateTime.now());
        entity.setState("10");
        entity.setDepartmentalId(order.getGuideDepartmentId());
        entity.setToUserId(order.getGuideUserId());
        entity.setFromUserId(sysUser.getUserId()+"");
        entity.setFromDepartmentalId(sysUser.getDepartmentId());
        entity.setGuideId(order.getId().toString());
        iGuideEvolveService.insertConfig(entity);
        iGuideRepairOrderService.updateSysUserOrderNum(entity);
        return toAjax(iGuideRepairOrderService.updateConfig(order));
    }
    /**
     * 去处理
     * @param entity
     * @return
     */
    @ApiOperation(value = "去处理",response = GuideRepairOrder.class)
    @PostMapping("/dispose")
    @Authorization
    public ResultData dispose(@RequestBody GuideEvolveEntity entity, @CurrentUser SysUser sysUser)
    {
        if(entity==null)
        {
            return ResultData.error("参数不能为空");
        }
        if(StringUtils.isEmpty(entity.getGuideId()))
        {
            return ResultData.error("工单id不能为空");
        }
        GuideRepairOrder order=iGuideRepairOrderService.selectConfigData(entity.getGuideId(),"");
        if(order==null)
        {
            return ResultData.error("该工单不存在!");
        }
        if(StringUtils.equals(order.getState(),"3"))
        {
            return ResultData.error("该工单已办结!");
        }
        if(StringUtils.equals(entity.getState(),"2")){//如果用户选择未解决则状态改为待办
            order.setState("2");
            entity.setState("9");
        }
        else if(StringUtils.equals(entity.getState(),"4")){
            if (order.getSubmitType().equals(1))//小程序提交
            {
            WxUtil wxUtil=new WxUtil();
            String accessToken="0";
            try {
                accessToken= wxUtil.getBatteryCarAccessToken();
            } catch (Exception e) {
                throw new RuntimeException(e);
            }
            SysUser submitUser = iGuideRepairOrderService.getSubmitUser(order);
            wxUtil.sendGuideRepairOrderComplete(submitUser.getOpenid(),accessToken,guideRepairOrderCompleteTemplateId,entity);
            }
            else if (order.getSubmitType().equals(2)){
                smsUtil.sendSmsComplete(order.getConsultUserPhone(),order.getMatterName());
            }
            //待评价
            order.setState("4");
            entity.setState("7");
        }
        //新增已办结记录
        entity.setCreateTime(LocalDateTime.now());
        entity.setUpdateTime(LocalDateTime.now());
        entity.setFromDepartmentalId(sysUser.getDepartmentId());
        entity.setFromUserId(sysUser.getUserId()+"");
        entity.setGuideId(order.getId().toString());
        iGuideEvolveService.insertConfig(entity);
        iGuideRepairOrderService.updateSysUserOrderNum(entity);
        return toAjax(iGuideRepairOrderService.updateConfig(order));
    }
    /**
     * 取消导办工单
     * @param entity
     * @return
     */
    @ApiOperation(value = "取消导办工单",response = GuideRepairOrder.class)
    @PostMapping("/cancel")
    @Authorization
    public ResultData cancel(@RequestBody GuideEvolveEntity entity, @CurrentUser SysUser sysUser)
    {
        if(entity==null)
        {
            return ResultData.error("参数不能为空");
        }
        if(StringUtils.isEmpty(entity.getGuideId()))
        {
            return ResultData.error("工单id不能为空");
        }
        GuideRepairOrder order=iGuideRepairOrderService.selectConfigData(entity.getGuideId(),"");
        if(order==null)
        {
            return ResultData.error("该工单不存在!");
        }
        if(!StringUtils.equals(order.getState(),"1"))
        {
            return ResultData.error("该工单不能取消!");
        }
        //取消状态
        order.setState("5");
        //新增已取消记录
        entity.setCreateTime(LocalDateTime.now());
        entity.setUpdateTime(LocalDateTime.now());
        entity.setState("5");
        entity.setDepartmentalId(sysUser.getDepartmentId());
        entity.setToUserId(sysUser.getUserId()+"");
        entity.setGuideId(order.getId().toString());
        iGuideEvolveService.insertConfig(entity);
        return toAjax(iGuideRepairOrderService.updateConfig(order));
    }
    /**
     * 工单评价
     * @param entity
     * @return
     */
    @ApiOperation(value = "工单评价",response = GuideRepairOrder.class)
    @PostMapping("/evaluate")
    @Authorization
    public ResultData evaluate(@RequestBody GuideRepairOrder entity, @CurrentUser SysUser sysUser)
    {
        if(entity==null)
        {
            return ResultData.error("参数不能为空");
        }
        if(entity.getId()<=0)
        {
            return ResultData.error("工单id不能为空");
        }
        if(StringUtils.isEmpty(entity.getEvaluateState()))
        {
            return ResultData.error("满意程度不能为空!");
        }
        //已办结
        entity.setState("3");
        //新增已办结记录
        GuideEvolveEntity guideEvolveEntity=new GuideEvolveEntity();
        guideEvolveEntity.setCreateTime(LocalDateTime.now());
        guideEvolveEntity.setUpdateTime(LocalDateTime.now());
        guideEvolveEntity.setState("13");
        guideEvolveEntity.setDepartmentalId(sysUser.getDepartmentId());
        guideEvolveEntity.setToUserId(sysUser.getUserId()+"");
        guideEvolveEntity.setGuideId(entity.getId().toString());
        int i = iGuideRepairOrderService.updateConfig(entity);
        if (i>0)
            return toAjax( iGuideEvolveService.insertConfig(guideEvolveEntity));
        else
            return ResultData.error();
    }
    /**
     * 获取个人中心工单数据
     * @param sysUser 当前登录人员信息
     * @return
     */
    @ApiOperation(value = "获取个人中心工单数据",response = GuideRepairOrder.class)
    @GetMapping("/personalCenter")
    @Authorization
    public ResultData selectBySubmitId(@CurrentUser SysUser sysUser){
        return ResultData.success(iGuideRepairOrderService.selectBySubmitId(sysUser.getUserId().toString()));
    }
    /**
     * 小程序获取导办工单管理列表
     * @return
     */
    @ApiOperation(value = "小程序获取导办工单管理列表",response = GuideRepairOrder.class)
    @GetMapping("/getList")
    @Authorization
    public TableDataInfo selectConfigList(@RequestParam(value = "state",required = false) String status,
                                          @CurrentUser SysUser sysUser)
    {
        List<String> ids=null;
        String userId=null;
        if(StringUtils.equals("1",sysUser.getIsDivisionHead()))
        {
            userId=null;
            ids= PermissionUtil.getPermission(sysUser,iOrganizationChartService);
        }
        else
        {
            userId=sysUser.getUserId()+"";
        }
        List<GuideRepairOrder> list = iGuideRepairOrderService.selectConfigList(null,ids,status,userId);
        int num=iGuideRepairOrderService.countConfigList(null,ids,status,userId);
        return getDataTable(list,num);
    }
}
flower_city/src/main/java/com/dg/core/api/OrganizationAppletsController.java
New file
@@ -0,0 +1,54 @@
package com.dg.core.api;
import com.dg.core.ResultData;
import com.dg.core.annotation.Authorization;
import com.dg.core.controller.BaseController;
import com.dg.core.db.gen.entity.OrganizationChartEntity;
import com.dg.core.service.IOrganizationChartService;
import com.dg.core.util.TableDataInfo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@Api(tags = {"组织架构小程序接口"})
@RestController
@RequestMapping("/applets/organization")
public class OrganizationAppletsController extends BaseController
{
    @Autowired(required = true)
    IOrganizationChartService iOrganizationChartService;
    /**
     * 查询机构列表
     */
    @ApiOperation("查询机构列表")
    @GetMapping("/getList")
    public TableDataInfo selectConfigList()
    {
        return getDataTable(iOrganizationChartService.selectConfigList("",""));
    }
    /**
     * 查询机构列表(不分级不分页按等级排序)
     */
    @ApiOperation(value = "查询机构列表(不分级不分页按等级排序)",response = OrganizationChartEntity.class)
    @GetMapping("/selectList")
    public TableDataInfo selectList(){
        return getDataTable(iOrganizationChartService.selectList());
    }
    /**
     * 根据id查组织机构
     */
    @ApiOperation(value = "根据id查取消组织机构",response = OrganizationChartEntity.class)
    @GetMapping("/selectById")
    ResultData selectConfigById(@RequestParam("id") String id){
        return ResultData.success(iOrganizationChartService.selectConfigById(id));
    }
}
flower_city/src/main/java/com/dg/core/api/ReplyTemplateAppletsController.java
New file
@@ -0,0 +1,164 @@
package com.dg.core.api;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.dg.core.ResultData;
import com.dg.core.annotation.Authorization;
import com.dg.core.annotation.CurrentUser;
import com.dg.core.controller.BaseController;
import com.dg.core.db.gen.entity.ReplyTemplateEntity;
import com.dg.core.db.gen.entity.SysUser;
import com.dg.core.service.IOrganizationChartService;
import com.dg.core.service.IReplyTemplateService;
import com.dg.core.util.PermissionUtil;
import com.dg.core.util.TableDataInfo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@Api(tags = {"回复模板小程序接口"})
@RestController
@RequestMapping("/applets/reply")
public class ReplyTemplateAppletsController extends BaseController
{
    @Autowired
    IReplyTemplateService iReplyTemplateService;
    @Autowired
    IOrganizationChartService iOrganizationChartService;
    /**
     * 获取模板列表
     * @return
     */
    @ApiOperation(value = "获取模板列表",response = ReplyTemplateEntity.class)
    @GetMapping("/getlist")
    @Authorization
    public TableDataInfo selectConfigList(@RequestParam(value = "pageNum",required = false) Integer pageNum,
                                          @RequestParam(value = "pageSize",required = false) Integer pageSize,
                                          @RequestParam(value = "Name",required = false) String Name,
                                          @CurrentUser SysUser sysUser)
    {
        Page<ReplyTemplateEntity> pageParam = new Page<>(pageNum,pageSize);
        List<String> ids= PermissionUtil.getPermission(sysUser,iOrganizationChartService);
        if(ids==null || ids.size()<1)
        {
            return getDataTable("您没有权限查看该数据");
        }
        List<ReplyTemplateEntity> list = iReplyTemplateService.selectConfigList(pageParam,pageSize,Name,ids);
        int num=iReplyTemplateService.countNum(Name,ids);
        return getDataTable(list,num);
    }
    /**
     * 获取详情
     * @param Id
     * @return
     */
    @ApiOperation(value = "获取详情",response = ReplyTemplateEntity.class)
    @GetMapping("/getdata")
    @Authorization
    public ResultData selectConfigData(@RequestParam(value = "Id",required = false) String Id)
    {
        if(StringUtils.isEmpty(Id))
        {
            return ResultData.error("Id不能为空");
        }
        return ResultData.success(iReplyTemplateService.selectConfigData(Id));
    }
    /**
     * 新增模板
     * @param entity
     * @return
     */
    @ApiOperation(value = "新增模板",response = ReplyTemplateEntity.class)
    @PostMapping("/add")
    @Authorization
    public ResultData insertConfig(@RequestBody ReplyTemplateEntity entity,@CurrentUser SysUser sysUser)
    {
        if(entity==null)
        {
            return ResultData.error("参数不能为空");
        }
        if(StringUtils.isEmpty(entity.getName()))
        {
            return ResultData.error("模板名称不能为空");
        }
        entity.setId(null);
        entity.setDepartmentId(sysUser.getDepartmentId());
        entity.setCreateUserId(sysUser.getUserId()+"");
        return toAjax(iReplyTemplateService.insertConfig(entity));
    }
    /**
     * 更新模板
     * @param entity
     * @return
     */
    @ApiOperation(value = "更新模板",response = ReplyTemplateEntity.class)
    @PostMapping("/update")
    @Authorization
    public ResultData updateConfig(@RequestBody ReplyTemplateEntity entity)
    {
        if(entity==null)
        {
            return ResultData.error("参数不能为空");
        }
        if(StringUtils.isEmpty(entity.getName()))
        {
            return ResultData.error("模板名称不能为空");
        }
        return toAjax(iReplyTemplateService.updateConfig(entity));
    }
    /**
     * 删除模板
     * @param Id
     * @return
     */
    @ApiOperation(value = "删除模板",response = ReplyTemplateEntity.class)
    @DeleteMapping("/delete")
    @Authorization
    public ResultData deleteConfigById(@RequestParam(value = "Id",required = false) String Id)
    {
        return toAjax(iReplyTemplateService.deleteConfigById(Id));
    }
    /**
     * 复制模板
     * @param Id
     * @return
     */
    @ApiOperation(value = "复制模板",response = ReplyTemplateEntity.class)
    @PostMapping("/copy")
    @Authorization
    public ResultData copy(@RequestParam(value = "Id",required = false) String Id)
    {
        if(StringUtils.isEmpty(Id))
        {
            return ResultData.error("Id不能为空");
        }
        ReplyTemplateEntity entity=iReplyTemplateService.selectConfigData(Id);
        if(entity==null)
        {
            return ResultData.error("模板不存在!");
        }
        entity.setId(null);
        return toAjax(iReplyTemplateService.insertConfig(entity));
    }
}
flower_city/src/main/java/com/dg/core/api/SlideshowAppletsController.java
New file
@@ -0,0 +1,45 @@
package com.dg.core.api;
import com.dg.core.ResultData;
import com.dg.core.controller.BaseController;
import com.dg.core.db.gen.entity.Slideshow;
import com.dg.core.service.ISlideshowService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@Api(tags = {"轮播图小程序接口"})
@RestController
@RequestMapping("/applets/slideshow")
public class SlideshowAppletsController extends BaseController {
    @Autowired(required = true)
    ISlideshowService iSlideshowService;
    /**
     * 查询轮播图列表(不分页)
     * @return
     */
    @ApiOperation(value = "查询轮播图列表(不分页)",response = Slideshow.class)
    @GetMapping("/selectList")
    public ResultData selectList(){
        return ResultData.success(iSlideshowService.selectList());
    }
    /**
     * 根据id 查询轮播图数据
     *
     * @return 参数配置信息
     */
    @ApiOperation(value = "根据id 查询轮播图数据",response = Slideshow.class)
    @GetMapping("/selectById")
    public ResultData queryById(Integer id){
        return ResultData.success(iSlideshowService.queryById(id));
    }
}
flower_city/src/main/java/com/dg/core/api/TransactionEventAppletsController.java
New file
@@ -0,0 +1,110 @@
package com.dg.core.api;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.dg.core.ResultData;
import com.dg.core.annotation.Authorization;
import com.dg.core.annotation.CurrentUser;
import com.dg.core.controller.BaseController;
import com.dg.core.db.gen.entity.SysUser;
import com.dg.core.db.gen.entity.TransactionEvent;
import com.dg.core.db.manual.pojo.QueryResults;
import com.dg.core.db.manual.pojo.RecommendResult;
import com.dg.core.db.manual.pojo.Search;
import com.dg.core.service.ITransactionEventService;
import com.dg.core.util.TableDataInfo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.Assert;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@Api(tags = {"导办事项管理(及办事指南)小程序接口"})
@RestController
@RequestMapping("/applets/transaction")
public class TransactionEventAppletsController extends BaseController
{
    @Autowired(required = true)
    ITransactionEventService iTransactionEventService;
    /**
     * 查询导办事务详情
     * @param Id
     * @return
     */
    @ApiOperation("查询导办事务详情")
    @GetMapping("/getData")
    public ResultData selectConfigData(@RequestParam("Id") String Id,@CurrentUser SysUser sysUser)
    {
        Assert.notNull(Id, "Id 不能为空");
        return ResultData.success(iTransactionEventService.selectConfigData(Id,sysUser));
    }
    /**
     * 导办事物列表(不分页)
     * @param
     * @return
     */
    @ApiOperation(value = "导办事物列表(不分页)",response = TransactionEvent.class)
    @GetMapping("/selectList")
    public TableDataInfo selectList()
    {
        return getDataTable(iTransactionEventService.selectList());
    }
    /**
     * 导办事务搜索(无分页用于小程序)
     * @param keyWord
     * @return
     */
    @ApiOperation(value = "导办事务搜索(无分页用于小程序)",response = QueryResults.class)
    @GetMapping("/queryKeyWord")
    public QueryResults queryKeyWord(@RequestParam(value = "keyWord",required = false) String keyWord)
    {
        QueryResults queryResults = iTransactionEventService.queryMatterNameList(keyWord);
        return queryResults;
    }
    /**
     *  根据分类查询导办事务
     * @param classifyId
     * @return
     */
    @ApiOperation(value = "根据分类查询导办事务",response = TransactionEvent.class)
    @GetMapping("/queryByClassifyIdList")
    public TableDataInfo queryByClassifyIdList(@RequestParam("classifyId") String classifyId,@RequestParam(required = false,name="departmentId") Integer departmentId){
        return getDataTable(iTransactionEventService.queryByClassifyIdList(classifyId,departmentId),iTransactionEventService.countNumByClassifyIdList(classifyId,departmentId));
    }
    /**
     *  查询导办事务求和
     * @return
     */
    @ApiOperation(value = "查询导办事务求和",response = TransactionEvent.class)
    @GetMapping("/sumTransactionNum")
    public ResultData  sumTransactionNum(){
        return ResultData.success(iTransactionEventService.sumTransactionNum());
    }
    /**
     * 智能咨询
     * @return
     */
    @ApiOperation(value = "智能咨询",response = RecommendResult.class)
    @GetMapping("/smartConsulting")
    public RecommendResult smartConsulting(@RequestParam("keyWord") String keyWord){
        return  iTransactionEventService.smartConsulting(keyWord);
    }
}
flower_city/src/main/java/com/dg/core/controller/AgreementController.java
@@ -13,6 +13,7 @@
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.time.LocalDateTime;
import java.util.List;
@Api(tags = {"相关协议接口"})
@@ -39,6 +40,7 @@
     */
    @ApiOperation(value = "获取相关附件列表(不分页)",response = Agreement.class)
    @GetMapping(value = "/getList")
    @Authorization
    public ResultData selectConfigList(){
        return ResultData.success(agreementService.selectConfigList());
    }
@@ -50,7 +52,9 @@
    @ApiOperation(value = "修改相关附件",response = Agreement.class)
    @PostMapping(value = "/update")
    @Authorization
    public ResultData update(@RequestBody Agreement agreement,@CurrentUser SysUser sysUse){
    public ResultData update(@RequestBody Agreement agreement,@CurrentUser SysUser sysUse)
    {
        agreement.setUpdateTime(LocalDateTime.now());
        agreement.setUpdateUserId(sysUse.getUserId().toString());
        return agreementService.update(agreement);
    }
flower_city/src/main/java/com/dg/core/controller/AreaCodeController.java
@@ -2,6 +2,7 @@
import com.dg.core.ResultData;
import com.dg.core.db.gen.entity.AreaCode2022;
import com.dg.core.db.gen.entity.OrganizationChartEntity;
import com.dg.core.service.IAreaCodeService;
import com.dg.core.util.TableDataInfo;
import io.swagger.annotations.Api;
@@ -9,6 +10,7 @@
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.List;
@Api(tags = {"所属地区接口"})
@RestController
@@ -27,4 +29,14 @@
    public TableDataInfo getAreaCodeByTransactionId(@RequestParam("transactionId") Integer transactionId){
        return getDataTable(iAreaCodeService.getAreaCodeByTransactionId(transactionId));
    }
    /**
     * 获取攀枝花所有所属地区
     * @return
     */
    @ApiOperation(value = "获取攀枝花所有所属地区",response = AreaCode2022.class)
    @GetMapping("/getListByPCode")
    public TableDataInfo getListByPCode(){
        return getDataTable(iAreaCodeService.getListByPCode("510400000000"));
    }
}
flower_city/src/main/java/com/dg/core/controller/AutomessageCommonProblemController.java
New file
@@ -0,0 +1,107 @@
package com.dg.core.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.dg.core.ResultData;
import com.dg.core.annotation.Authorization;
import com.dg.core.annotation.CurrentUser;
import com.dg.core.db.gen.entity.AreaCode2022;
import com.dg.core.db.gen.entity.AutomessageCommonProblem;
import com.dg.core.db.gen.entity.ElseAccessoryEntity;
import com.dg.core.db.gen.entity.SysUser;
import com.dg.core.service.IAutomessageCommonProblemService;
import com.dg.core.util.TableDataInfo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.List;
@Api(tags = {"常见问题接口"})
@RestController
@RequestMapping("/automessageCommonProblem")
public class AutomessageCommonProblemController extends BaseController{
    @Resource
    private IAutomessageCommonProblemService iAutomessageCommonProblemService;
    /**
     * 获取常见问题列表(分页)
     * @param title
     * @param content
     * @return
     */
    @ApiOperation(value = "获取常见问题列表(分页)",response = AutomessageCommonProblem.class)
    @GetMapping("/selectConfigList")
    @Authorization
    public TableDataInfo selectConfigList(@RequestParam(value = "pageNum",required = false) Integer pageNum,
                                          @RequestParam(value = "pageSize",required = false) Integer pageSize,
                                          @RequestParam(value = "title",required = false) String title,
                                          @RequestParam(value = "content",required = false) String content){
        Page<AutomessageCommonProblem> pageParam = new Page<>(pageNum,pageSize);
        List<AutomessageCommonProblem> list = iAutomessageCommonProblemService.selectConfigList(pageParam,pageSize,title,content);
        int num=iAutomessageCommonProblemService.countAutomessageCommonProblem(title,content);
        return getDataTable(list,num);
    }
    /**
     * 添加常见问题数据
     * @return
     */
    @ApiOperation(value = "添加常见问题数据)",response = AutomessageCommonProblem.class)
    @PostMapping("/add")
    @Authorization
    ResultData add(@RequestBody AutomessageCommonProblem automessageCommonProblem,@CurrentUser SysUser sysUser){
        automessageCommonProblem.setCreateUserId(sysUser.getUserId().toString());
        automessageCommonProblem.setUpdateUserId(sysUser.getUserId().toString());
        return iAutomessageCommonProblemService.add(automessageCommonProblem);
    }
    /**
     * 修改常见问题数据
     * @return
     */
    @ApiOperation(value = "修改常见问题数据)",response = AutomessageCommonProblem.class)
    @PostMapping("/update")
    @Authorization
    ResultData update(@RequestBody AutomessageCommonProblem automessageCommonProblem,@CurrentUser SysUser sysUser){
        automessageCommonProblem.setUpdateUserId(sysUser.getUserId().toString());
        return iAutomessageCommonProblemService.update(automessageCommonProblem);
    }
    /**
     * 删除常见问题数据
     * @return
     */
    @ApiOperation(value = "删除常见问题数据)",response = AutomessageCommonProblem.class)
    @GetMapping("/delete")
    @Authorization
    ResultData delete( @RequestParam(value = "id") Integer id){
        return  iAutomessageCommonProblemService.delete(id);
    }
    /**
     * 获取常见问题列表(分页)
     * @param title
     * @param content
     * @return
     */
    @ApiOperation(value = "获取常见问题列表(分页)(不加token)",response = AutomessageCommonProblem.class)
    @GetMapping("/selectConfigListNoToken")
    public TableDataInfo selectConfigListNoToken(@RequestParam(value = "pageNum",required = false) Integer pageNum,
                                          @RequestParam(value = "pageSize",required = false) Integer pageSize,
                                          @RequestParam(value = "title",required = false) String title,
                                          @RequestParam(value = "content",required = false) String content){
        Page<AutomessageCommonProblem> pageParam = new Page<>(pageNum,pageSize);
        List<AutomessageCommonProblem> list = iAutomessageCommonProblemService.selectConfigList(pageParam,pageSize,title,content);
        int num=iAutomessageCommonProblemService.countAutomessageCommonProblem(title,content);
        return getDataTable(list,num);
    }
}
flower_city/src/main/java/com/dg/core/controller/ClassifyAdministrationController.java
@@ -3,9 +3,12 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.dg.core.ResultData;
import com.dg.core.annotation.Authorization;
import com.dg.core.db.gen.entity.ClassifyAdministration;
import com.dg.core.db.gen.entity.OrganizationChartEntity;
import com.dg.core.db.gen.entity.TransactionEvent;
import com.dg.core.service.IClassifyAdministrationService;
import com.dg.core.service.ITransactionEventService;
import com.dg.core.util.TableDataInfo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -14,6 +17,7 @@
import org.springframework.util.Assert;
import org.springframework.web.bind.annotation.*;
import java.util.ArrayList;
import java.util.List;
@@ -28,12 +32,17 @@
    @Autowired(required = true)
    IClassifyAdministrationService iClassifyAdministrationService;
    @Autowired(required = true)
    ITransactionEventService iTransactionEventService;
    /**
     * 获取管理菜单列表
     * @return
     */
    @ApiOperation(value = "获取管理菜单列表(无分页)",response = ClassifyAdministration.class)
    @GetMapping("/getList")
    @Authorization
    public TableDataInfo selectConfigList(@RequestParam(value = "classifyGrade",required = false) String classifyGrade)
    {
        int num=iClassifyAdministrationService.countNum("",classifyGrade);
@@ -58,21 +67,24 @@
    }
    /**
     * 获取管理菜单列表
     * @return
     */
    @ApiOperation(value = "获取管理菜单列表",response = ClassifyAdministration.class)
    @GetMapping("/getListPage")
    @Authorization
    public TableDataInfo selectConfigList(@RequestParam(value = "pageNum",required = false) Integer pageNum,
                                          @RequestParam(value = "pageSize",required = false) Integer pageSize,
                                          @RequestParam(value = "name",required = false) String name)
                                          @RequestParam(value = "name",required = false) String name,
                                          @RequestParam(value = "classifyGrade",required = false) String classifyGrade)
    {
        Assert.notNull(pageNum, "pageNum can not be empty");
        Assert.notNull(pageSize, "pageSize can not be empty");
        Page<ClassifyAdministration> pageParam = new Page<>(pageNum,pageSize);
        List<ClassifyAdministration> list = iClassifyAdministrationService.selectConfigList(pageParam,pageSize,name,"");
        int num=iClassifyAdministrationService.countNum(name,"");
        List<ClassifyAdministration> list = iClassifyAdministrationService.selectConfigList(pageParam,pageSize,name,classifyGrade);
        int num=iClassifyAdministrationService.countNum(name,classifyGrade);
        return getDataTable(list,num);
    }
@@ -84,6 +96,7 @@
     */
    @ApiOperation(value = "新增分类",response = ClassifyAdministration.class)
    @PostMapping("/add")
    @Authorization
    public ResultData insertConfig(@RequestBody ClassifyAdministration entity) {
        Assert.notNull(entity, "参数不能为空");
        Assert.notNull(entity.getClassifyName(), "分类名称不能为空");
@@ -102,6 +115,7 @@
     */
    @ApiOperation("编辑分类")
    @PostMapping("/update")
    @Authorization
    public ResultData updateConfig(@RequestBody ClassifyAdministration entity)
    {
        return toAjax(iClassifyAdministrationService.updateConfig(entity));
@@ -114,12 +128,67 @@
     */
    @ApiOperation("删除分类")
    @DeleteMapping("/delete/{Id}")
    @Authorization
    public ResultData deleteConfigById(@PathVariable("Id") String Id)
    {
        if(StringUtils.isEmpty(Id))
        {
            return ResultData.error("id 不能为空");
        }
        /**
         * 根据上级id查询子分类
         * @param parentId
         * @return
         */
        List<String> list=iClassifyAdministrationService.selectParent(Id);
        if(list!=null && list.size()>0)
        {
            return ResultData.error("请先删除其下的二级分类");
        }
        List<String> listIds=iTransactionEventService.selectclassifyId(Id);
        if(listIds!=null && listIds.size()>0)
        {
            return ResultData.error("分类下有办事指南!不能删除");
        }
        return toAjax(iClassifyAdministrationService.deleteConfigById(Id));
    }
    /**
     * 获取分类根据id 如果是二级id则获取的是办事指南
     * @return
     */
    @ApiOperation("获取分类根据id 如果是二级id则获取的是办事指南,不传参默认是0")
    @GetMapping("/queryListById")
    ResultData queryListById(@RequestParam(value = "id",required = false) Integer id){
        if(id==null)
            id=0;
        return  iClassifyAdministrationService.queryListById(id);
    }
    /**
     * 树状分类选择列表
     * @return
     */
    @ApiOperation("树状分类选择列表")
    @GetMapping("/getClassifyList")
    public TableDataInfo getClassifyList()
    {
        List<ClassifyAdministration> list=iClassifyAdministrationService.selectConfigList("","1");
        for(ClassifyAdministration entity:list)
        {
            entity.setClassifyAdministrationEntityList(iClassifyAdministrationService.selectParentData(entity.getId()+""));
        }
        return getDataTable(list);
    }
}
flower_city/src/main/java/com/dg/core/controller/CommonController.java
@@ -1,35 +1,63 @@
package com.dg.core.controller;
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil;
import com.dg.core.CorsConfig;
import com.dg.core.ResultData;
import com.dg.core.db.gen.AjaxResult;
import com.dg.core.file.FileUploadUtils;
import com.dg.core.file.FileUtils;
import com.dg.core.file.FtpConstants;
import com.dg.core.file.MimeTypeUtils;
import com.dg.core.file.SFTPUtil;
import com.dg.core.util.TestDate;
import com.iceyyy.workday.WorkUtils;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.io.FilenameUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
import java.io.InputStream;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.UUID;
import static com.dg.core.file.FileTypeUploadUtils.assertAllowed;
@Api(tags = {"通用接口"})
@RestController
@RequestMapping("/common")
public class CommonController extends BaseController
{
public class CommonController extends BaseController {
  private static final String FILE_DELIMETER = ",";
  @Autowired
  private CorsConfig corsConfig;
  // FTP 登录用户名
  @Value("${ftp.username}")
  private String userName;
  // FTP 登录密码
  @Value("${ftp.password}")
  private String password;
  // FTP 服务器地址IP地址
  @Value("${ftp.host}")
  private String host;
  // FTP 端口
  @Value("${ftp.port}")
  private int port;
  @Value("${ftp.url}")
  private String url;
  @RequestMapping("/hello")
@@ -39,42 +67,97 @@
  }
  /**
   * 通用上传请求(多个)
   */
  @ApiOperation("文件上传接口(通用)")
  @PostMapping("/uploads")
  public ResultData uploadFiles(List<MultipartFile> files) throws Exception {
    try {
      // 上传文件路径
      String filePath = FileUploadUtils.defaultBaseDir;
//      String filePath = "D:/tupianshuju";
  public ResultData uploadFiles(List<MultipartFile> files) throws Exception
  {
    List<String> urls = new ArrayList<String>();
    List<String> fileNames = new ArrayList<String>();
    List<String> originalFilenames = new ArrayList<String>();
    for (MultipartFile file : files) {
      String extension = FilenameUtils.getExtension(file.getOriginalFilename());
      String name = UUID.randomUUID().toString().replaceAll("-", "") + "." + extension;
      try {
        assertAllowed(file, MimeTypeUtils.DEFAULT_ALLOWED_EXTENSION);
        SFTPUtil sftp = new SFTPUtil(userName, password, host, port);
        sftp.login();
        InputStream is = file.getInputStream();
        sftp.uploadMore(FtpConstants.FTPFILEPATH_IDCARD, name, is);
        sftp.logout();
      System.out.println("上传文件路径"+filePath);
      List<String> urls = new ArrayList<String>();
      List<String> fileNames = new ArrayList<String>();
      List<String> newFileNames = new ArrayList<String>();
      List<String> originalFilenames = new ArrayList<String>();
      for (MultipartFile file : files) {
        // 上传并返回新文件名称
        String fileName = FileUploadUtils.upload(filePath, file);
        String url = corsConfig.getUrl() + fileName;
        urls.add(url);
        fileNames.add(fileName);
        newFileNames.add(FileUtils.getName(fileName));
        urls.add(url + "/idcard/" + name);
        fileNames.add(name);
        originalFilenames.add(file.getOriginalFilename());
      } catch (Exception e) {
        return ResultData.error("上传文件失败 "+e.getMessage());
      }
      AjaxResult ajax = new AjaxResult();
      ajax.put("urls", StringUtils.join(urls, FILE_DELIMETER));
      ajax.put("fileNames", StringUtils.join(fileNames, FILE_DELIMETER));
      ajax.put("newFileNames", StringUtils.join(newFileNames, FILE_DELIMETER));
      ajax.put("originalFilenames", StringUtils.join(originalFilenames, FILE_DELIMETER));
      return ResultData.success(ajax);
    } catch (Exception e) {
      return ResultData.error(e.getMessage());
    }
    AjaxResult ajax = new AjaxResult();
    ajax.put("urls", StringUtils.join(urls, FILE_DELIMETER));
    ajax.put("fileNames", StringUtils.join(fileNames, FILE_DELIMETER));
    ajax.put("originalFilenames", StringUtils.join(originalFilenames, FILE_DELIMETER));
    return ResultData.success(ajax);
  }
  /**
   * 通用上传请求(多个)
   */
  @ApiOperation("文件上传接口(通用)")
  @PostMapping("/upload")
  public ResultData uploadFile(MultipartFile file) throws Exception
  {
    List<String> urls = new ArrayList<String>();
    List<String> fileNames = new ArrayList<String>();
    List<String> originalFilenames = new ArrayList<String>();
    String extension = FilenameUtils.getExtension(file.getOriginalFilename());
    String name = UUID.randomUUID().toString().replaceAll("-", "") + "." + extension;
    try {
      assertAllowed(file, MimeTypeUtils.DEFAULT_ALLOWED_EXTENSION);
      SFTPUtil sftp = new SFTPUtil(userName, password, host, port);
      sftp.login();
      InputStream is = file.getInputStream();
      sftp.uploadMore(FtpConstants.FTPFILEPATH_IDCARD, name, is);
      sftp.logout();
//      urls.add(url + "/idcard/" + name);
//      fileNames.add(name);
//      originalFilenames.add(file.getOriginalFilename());
      return ResultData.success(url + "/idcard/" + name);
    } catch (Exception e) {
      return ResultData.error("上传文件失败 "+e.getMessage());
    }
//    AjaxResult ajax = new AjaxResult();
//    ajax.put("urls", StringUtils.join(urls, FILE_DELIMETER));
//    ajax.put("fileNames", StringUtils.join(fileNames, FILE_DELIMETER));
//    ajax.put("originalFilenames", StringUtils.join(originalFilenames, FILE_DELIMETER));
  }
  /**
   * 判断当前时间是否是工作日,格式为“2022-10-16”,不传默认为今天
   */
  @ApiOperation("判断当前时间是否是工作日,格式为“20221016”,不传默认为今天")
  @GetMapping("/isWeekday")
  public ResultData isWeekday(@RequestParam(value = "dateTime",required = false) String dateTime)
  {
      if (dateTime==null){
        Date date = new Date();
        SimpleDateFormat fmt = new SimpleDateFormat("yyyyMMdd");
        dateTime = fmt.format(date);
      }
      if (WorkUtils.isWorkendDay(dateTime))
         return success("休息日或者周末");
      else
         return success("工作日");
  }
}
flower_city/src/main/java/com/dg/core/controller/ElseAccessoryController.java
@@ -2,12 +2,17 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.dg.core.ResultData;
import com.dg.core.annotation.Authorization;
import com.dg.core.annotation.CurrentUser;
import com.dg.core.db.gen.entity.ElseAccessoryEntity;
import com.dg.core.db.gen.entity.SysUser;
import com.dg.core.service.IElseAccessoryService;
import com.dg.core.util.StringUtils;
import com.dg.core.service.IOrganizationChartService;
import com.dg.core.util.PermissionUtil;
import com.dg.core.util.TableDataInfo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@@ -22,6 +27,8 @@
    @Autowired
    IElseAccessoryService iElseAccessoryService;
    @Autowired
    IOrganizationChartService iOrganizationChartService;
    /**
     * 获取附件列表
@@ -32,13 +39,20 @@
     */
    @ApiOperation("获取附件列表接口")
    @GetMapping(path = "/getList")
    @Authorization
    public TableDataInfo selectConfigList(@RequestParam(value = "pageNum",required = false) Integer pageNum,
                                          @RequestParam(value = "pageSize",required = false) Integer pageSize,
                                          @RequestParam(value = "Name",required = false) String Name)
                                          @RequestParam(value = "name",required = false) String name,
                                          @CurrentUser SysUser sysUser)
    {
        Page<ElseAccessoryEntity> pageParam = new Page<>(pageNum,pageSize);
        List<ElseAccessoryEntity> list = iElseAccessoryService.selectConfigList(pageParam,pageSize,Name);
        int num=iElseAccessoryService.countNum(Name);
        List<String> ids= PermissionUtil.getPermission(sysUser,iOrganizationChartService);
        if(ids==null || ids.size()<1)
        {
            return getDataTable("您没有权限查看该数据");
        }
        List<ElseAccessoryEntity> list = iElseAccessoryService.selectConfigList(pageParam,pageSize,name,ids);
        int num=iElseAccessoryService.countNum(name,ids);
        return getDataTable(list,num);
    }
@@ -49,10 +63,17 @@
     */
    @ApiOperation("获取附件列表接口(全部)")
    @GetMapping(path = "/getAllList")
    public TableDataInfo selectConfigListAll(@RequestParam(value = "Name",required = false) String Name)
    @Authorization
    public TableDataInfo selectConfigListAll(@RequestParam(value = "Name",required = false) String Name,
                                             @CurrentUser SysUser sysUser)
    {
        List<ElseAccessoryEntity> list = iElseAccessoryService.selectConfigList(Name);
        int num=iElseAccessoryService.countNum(Name);
        List<String> ids= PermissionUtil.getPermission(sysUser,iOrganizationChartService);
        if(ids==null || ids.size()<1)
        {
            return getDataTable("您没有权限查看该数据");
        }
        List<ElseAccessoryEntity> list = iElseAccessoryService.selectConfigList(Name,ids);
        int num=iElseAccessoryService.countNum(Name,ids);
        return getDataTable(list,num);
    }
@@ -64,6 +85,7 @@
     */
    @ApiOperation("新增附件")
    @PostMapping(path = "/add")
    @Authorization
    public ResultData insertConfig(@RequestBody ElseAccessoryEntity entity)
    {
        if(entity==null)
@@ -96,6 +118,7 @@
     */
    @ApiOperation("更新附件")
    @PostMapping(path = "/update")
    @Authorization
    public ResultData updateConfig(@RequestBody ElseAccessoryEntity entity)
    {
        return toAjax(iElseAccessoryService.updateConfig(entity));
@@ -108,6 +131,7 @@
     */
    @ApiOperation("删除附件")
    @DeleteMapping(path = "/delete")
    @Authorization
    public ResultData deleteConfigById(@RequestParam(value = "Id",required = false) String Id)
    {
        return toAjax(iElseAccessoryService.deleteConfigById(Id));
flower_city/src/main/java/com/dg/core/controller/GuideDoController.java
@@ -4,12 +4,15 @@
import com.dg.core.ResultData;
import com.dg.core.annotation.Authorization;
import com.dg.core.db.gen.entity.SysUser;
import com.dg.core.service.IGuideRepairOrderService;
import com.dg.core.service.ISysUserService;
import com.dg.core.util.Snowflake;
import com.dg.core.util.TableDataInfo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.repository.query.Param;
import org.springframework.util.Assert;
import org.springframework.web.bind.annotation.*;
@@ -27,6 +30,9 @@
    ISysUserService IUserService;
    @Autowired
    IGuideRepairOrderService iGuideRepairOrderService;
    /**
     * 查询列表
     *
@@ -34,15 +40,17 @@
     */
    @ApiOperation("用户列表接口")
    @GetMapping("/getlist")
    @Authorization
    public TableDataInfo selectConfigList(@RequestParam(value = "pageNum",required = false) Integer pageNum,
                                          @RequestParam(value = "pageSize",required = false) Integer pageSize)
                                          @RequestParam(value = "pageSize",required = false) Integer pageSize,
                                          @RequestParam(value = "keyword",required = false) String keyword)
    {
        Assert.notNull(pageNum, "pageNum can not be empty");
        Assert.notNull(pageSize, "pageSize can not be empty");
        Page<SysUser> pageParam = new Page<>(pageNum,pageSize);
        List<SysUser> list = IUserService.selectConfigList(pageParam,pageSize,"2");
        List<SysUser> list = IUserService.selectConfigList(pageParam,pageSize,"2",keyword);
        int num=IUserService.selectNum("2");
        int num=IUserService.selectNum("2",keyword);
        return getDataTable(list,num);
    }
@@ -70,22 +78,43 @@
            return error("密码不能为空");
        }
        if(StringUtils.isEmpty(config.getPhonenumber()))
        {
            return error("手机号不能为空");
        }
        if(StringUtils.isEmpty(config.getUserName()))
        {
            return error("昵称不能为空");
        }
        SysUser user = IUserService.getUserByAccount(config.getLoginName());
        if (user != null) {
            //提示用户名或密码错误
            return error("该账户已存在!");
        if(StringUtils.isEmpty(config.getDepartmentId()))
        {
            return error("部门不能为空");
        }
        config.setUserType("2");
        SysUser user=IUserService.selectData(null,config.getPhonenumber(),null);
        if (user != null)
        {
            user.setPassword(config.getPassword());
            user.setDepartmentId(config.getDepartmentId());
            user.setUserName(config.getUserName());
            user.setPhonenumber(config.getPhonenumber());
            user.setLoginName(config.getLoginName());
            user.setMasterIds(config.getMasterIds());
            user.setRoleIds(2+"");
            user.setUserType("2");
            user.setStatus(config.getStatus());
            user.setUpdateTime(LocalDateTime.now());
            //提示用户名或密码错误
            return toAjax(IUserService.updateConfig(user));
        }
        config.setRoleIds(2+"");
        config.setCreateTime(LocalDateTime.now());
        config.setUpdateTime(LocalDateTime.now());
        config.setUserId(Snowflake.getId()+"");
        return toAjax(IUserService.insertConfig(config));
    }
@@ -105,6 +134,12 @@
            return error("userId不能为空");
        }
        if(StringUtils.isEmpty(config.getPhonenumber()))
        {
            return error("手机号不能为空");
        }
        if(StringUtils.isEmpty(config.getLoginName()))
        {
            return error("账户不能为空");
@@ -116,7 +151,7 @@
    }
    /**
     * 删除聊天记录
     * 删除导办用户接口
     *
     * @return 结果
     */
@@ -129,11 +164,18 @@
        {
            return error("userId不能为空");
        }
        int a=iGuideRepairOrderService.countUser(userId,"2");
        if(a>0)
        {
            return error("该人员有工单未处理完不能删除");
        }
        return toAjax(IUserService.deleteConfigById(userId));
    }
    /**
     * 修改空闲状态
     * 修改导办用户空闲状态接口
     *
     * @param config 参数配置信息
     * @return 结果
@@ -156,4 +198,28 @@
        return toAjax(IUserService.updateConfig(config));
    }
    /**
     * 根据部门id及分类id获取导办用户
     *
     * @return 结果
     */
    @ApiOperation("根据部门id及分类id获取导办用户")
    @GetMapping("/selectListByDepartmentId")
    @Authorization
    public ResultData selectListByDepartmentId(@RequestParam("departmentId") String departmentId,
                                               @RequestParam(value = "classifyId",required = false) String classifyId)
    {
        return  ResultData.success(IUserService.selectListByDepartmentId(departmentId,classifyId));
    }
    /**
     * 查询导办用户列表(不分页)
     * @return 结果
     */
    @ApiOperation(" 查询导办用户列表(不分页)")
    @GetMapping("/queryList")
    @Authorization
    public  ResultData  queryList(@RequestParam(value = "keyWord",required = false) String keyWord){
        return  ResultData.success(IUserService.queryList(2,keyWord));
    }
}
flower_city/src/main/java/com/dg/core/controller/GuideRepairOrderController.java
@@ -1,22 +1,29 @@
package com.dg.core.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.dg.core.ResultData;
import com.dg.core.annotation.Authorization;
import com.dg.core.annotation.CurrentUser;
import com.dg.core.db.gen.entity.GuideEvolveEntity;
import com.dg.core.db.gen.entity.GuideRepairOrder;
import com.dg.core.db.gen.entity.SysUser;
import com.dg.core.db.gen.entity.*;
import com.dg.core.service.IGuideEvolveService;
import com.dg.core.service.IGuideRepairOrderService;
import com.dg.core.util.StringUtils;
import com.dg.core.service.IOrganizationChartService;
import com.dg.core.util.PermissionUtil;
import com.dg.core.util.SmsUtil;
import com.dg.core.util.TableDataInfo;
import com.dg.core.util.WxUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.Assert;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.time.LocalDateTime;
import java.util.List;
/**
 * 工单管理
@@ -32,6 +39,16 @@
    @Autowired
    private IGuideEvolveService iGuideEvolveService;
    @Autowired
    IOrganizationChartService iOrganizationChartService;
    private static String guideRepairOrderCompleteTemplateId = "7ZCHHii87rWPwVkdhZnvNiYbYi_Buq0NXO10cmUhAFk";
    @Resource
    SmsUtil smsUtil;
    /**
     * 提交导办订单
     * @return
@@ -42,7 +59,15 @@
    public ResultData addOrder(@RequestBody GuideRepairOrder guideRepairOrder,@CurrentUser SysUser sysUser) {
          guideRepairOrder.setSubmitUserId(sysUser.getUserId().toString());
          guideRepairOrder.setSubmitUserPhone(sysUser.getPhonenumber());
          return toAjax(iGuideRepairOrderService.addOrder(guideRepairOrder));
          guideRepairOrder.setSubmitUserPhone(sysUser.getPhonenumber());
          guideRepairOrder.setSubmitType(2);
          int i = iGuideRepairOrderService.addOrder(guideRepairOrder);
          if (i>0){
              iGuideEvolveService.updateGuid();
            return ResultData.success();
          }
          else
              return  ResultData.error("提交失败,请检查你是否有相同的咨询内容在处理中");
    }
@@ -95,10 +120,7 @@
            return ResultData.error("导办人员id不能为空");
        }
        if(StringUtils.isEmpty(order.getGuideUserPhone()))
        {
            return ResultData.error("导办人员电话不能为空");
        }
        //已分配
        order.setState("2");
@@ -107,14 +129,15 @@
        GuideEvolveEntity entity=new GuideEvolveEntity();
        entity.setCreateTime(LocalDateTime.now());
        entity.setUpdateTime(LocalDateTime.now());
        entity.setState("13");
        entity.setDepartmentalId(sysUser.getDepartmentId());
        entity.setToUserId(sysUser.getUserId()+"");
        entity.setFromUserId(order.getGuideUserId());
        entity.setFromDepartmentalId(order.getGuideDepartmentId());
        entity.setState("11");
        entity.setDepartmentalId(order.getGuideDepartmentId());
        entity.setToUserId(order.getGuideUserId());
        entity.setFromUserId(sysUser.getUserId().toString());
        entity.setFromDepartmentalId(sysUser.getDepartmentId());
        entity.setGuideId(order.getId().toString());
        iGuideRepairOrderService.updateSysUserOrderNum(entity);
        iGuideEvolveService.insertConfig(entity);
        order=iGuideRepairOrderService.setTimeoutTim(order);
        return toAjax(iGuideRepairOrderService.updateConfig(order));
    }
@@ -144,11 +167,6 @@
            return ResultData.error("导办人员id不能为空");
        }
        if(StringUtils.isEmpty(order.getGuideUserPhone()))
        {
            return ResultData.error("导办人员电话不能为空");
        }
        //已分配
        order.setState("2");
@@ -156,13 +174,15 @@
        GuideEvolveEntity entity=new GuideEvolveEntity();
        entity.setCreateTime(LocalDateTime.now());
        entity.setUpdateTime(LocalDateTime.now());
        entity.setState("12");
        entity.setDepartmentalId(sysUser.getDepartmentId());
        entity.setToUserId(sysUser.getUserId()+"");
        entity.setFromUserId(order.getGuideUserId());
        entity.setFromDepartmentalId(order.getGuideDepartmentId());
        entity.setState("10");
        entity.setDepartmentalId(order.getGuideDepartmentId());
        entity.setToUserId(order.getGuideUserId());
        entity.setFromUserId(sysUser.getUserId()+"");
        entity.setFromDepartmentalId(sysUser.getDepartmentId());
        entity.setGuideId(order.getId().toString());
        iGuideEvolveService.insertConfig(entity);
        iGuideRepairOrderService.updateSysUserOrderNum(entity);
        return toAjax(iGuideRepairOrderService.updateConfig(order));
    }
@@ -199,20 +219,38 @@
        {
            return ResultData.error("该工单已办结!");
        }
        if(!StringUtils.equals(order.getState(),"2"))
        {
            return ResultData.error("该工单非是待办状态!");
        if(StringUtils.equals(entity.getState(),"2")){//如果用户选择未解决则状态改为待办
            order.setState("2");
            entity.setState("9");
        }
        //待评价
        order.setState("4");
        else if(StringUtils.equals(entity.getState(),"4")){
            //待评价
            if (order.getSubmitType().equals(1))//小程序提交
            {
                WxUtil wxUtil=new WxUtil();
                String accessToken="0";
                try {
                    accessToken= wxUtil.getBatteryCarAccessToken();
                } catch (Exception e) {
                    throw new RuntimeException(e);
                }
                SysUser submitUser = iGuideRepairOrderService.getSubmitUser(order);
                wxUtil.sendGuideRepairOrderComplete(submitUser.getOpenid(),accessToken,guideRepairOrderCompleteTemplateId,entity);
            }
            else if (order.getSubmitType().equals(2)){
                smsUtil.sendSmsComplete(order.getConsultUserPhone(),order.getMatterName());
            }
            order.setState("4");
            entity.setState("7");
        }
        //新增已办结记录
        entity.setCreateTime(LocalDateTime.now());
        entity.setUpdateTime(LocalDateTime.now());
        entity.setState("4");
        entity.setFromDepartmentalId(sysUser.getDepartmentId());
        entity.setFromUserId(sysUser.getUserId()+"");
        entity.setGuideId(order.getId().toString());
        iGuideEvolveService.insertConfig(entity);
        iGuideRepairOrderService.updateSysUserOrderNum(entity);
        return toAjax(iGuideRepairOrderService.updateConfig(order));
    }
@@ -256,6 +294,7 @@
        entity.setState("5");
        entity.setFromDepartmentalId(sysUser.getDepartmentId());
        entity.setFromUserId(sysUser.getUserId()+"");
        entity.setGuideId(order.getId().toString());
        iGuideEvolveService.insertConfig(entity);
        return toAjax(iGuideRepairOrderService.updateConfig(order));
    }
@@ -282,11 +321,6 @@
            return ResultData.error("工单id不能为空");
        }
        if(!StringUtils.equals(entity.getState(),"4"))
        {
            return ResultData.error("该工单不能评价!");
        }
        if(StringUtils.isEmpty(entity.getEvaluateState()))
        {
            return ResultData.error("满意程度不能为空!");
@@ -297,14 +331,122 @@
        GuideEvolveEntity guideEvolveEntity=new GuideEvolveEntity();
        guideEvolveEntity.setCreateTime(LocalDateTime.now());
        guideEvolveEntity.setUpdateTime(LocalDateTime.now());
        guideEvolveEntity.setState("3");
        guideEvolveEntity.setState("13");
        guideEvolveEntity.setFromDepartmentalId(sysUser.getDepartmentId());
        guideEvolveEntity.setFromUserId(sysUser.getUserId()+"");
        iGuideEvolveService.insertConfig(guideEvolveEntity);
        return toAjax(iGuideRepairOrderService.updateConfig(entity));
        guideEvolveEntity.setGuideId(entity.getId().toString());
        int i = iGuideRepairOrderService.updateConfig(entity);
        if (i>0)
            return toAjax( iGuideEvolveService.insertConfig(guideEvolveEntity));
        else
            return ResultData.error();
    }
    /**
     * 获取个人中心工单数据
     * @param sysUser 当前登录人员信息
     * @return
     */
    @ApiOperation(value = "获取个人中心工单数据",response = GuideRepairOrder.class)
    @GetMapping("/personalCenter")
    @Authorization
    public ResultData selectBySubmitId(@CurrentUser SysUser sysUser){
        return ResultData.success(iGuideRepairOrderService.selectBySubmitId(sysUser.getUserId().toString()));
    }
    /**
     * 获取工单列表(分页)
     * @param matterName
     * @return
     */
    @ApiOperation(value = "获取工单列表(分页)",response = GuideRepairOrder.class)
    @GetMapping("/getList")
    @Authorization
    public TableDataInfo selectConfigList(@RequestParam(value = "pageNum",required = false) Integer pageNum,
                                          @RequestParam(value = "pageSize",required = false) Integer pageSize,
                                          @RequestParam(value = "matterName",required = false) String matterName,
                                          @RequestParam(value = "status",required = false) String status,
                                          @CurrentUser SysUser sysUser)
    {
        Assert.notNull(pageNum, "pageNum 不能为空");
        Assert.notNull(pageSize, "pageSize 不能为空");
        Page<GuideRepairOrder> pageParam = new Page<>(pageNum,pageSize);
        List<String> ids=PermissionUtil.getPermission(sysUser,iOrganizationChartService);
        String userId=null;
        if( StringUtils.equals("2",sysUser.getRoleIds()))
        {
            if(StringUtils.equals("1",sysUser.getIsDivisionHead()))
            {
                userId=null;
            }
            else
            {
                ids=null;
                userId=sysUser.getUserId()+"";
            }
        }
        List<GuideRepairOrder> list = iGuideRepairOrderService.selectConfigList(pageParam,pageSize,
                matterName,ids,status,userId);
        int num=iGuideRepairOrderService.countConfigList(matterName,ids,status,userId);
        return getDataTable(list,num);
    }
    @ApiOperation("导办工单统计不同状态工单数")
    @GetMapping("/getWorkOrder")
    @Authorization
    public ResultData getWorkOrder(@CurrentUser SysUser sysUser)
    {
        WorkOrder workOrder=new WorkOrder();
        List<String> ids=PermissionUtil.getPermission(sysUser,iOrganizationChartService);
        String userId=null;
        if( StringUtils.equals("2",sysUser.getRoleIds()))
        {
            if(StringUtils.equals("1",sysUser.getIsDivisionHead()))
            {
                userId=null;
            }
            else
            {
                ids=null;
                userId=sysUser.getUserId()+"";
            }
        }
        //状态(1待分配  2 待办结 3 已办结 4 待评价 5 已取消  )
        workOrder.setAllNum(iGuideRepairOrderService.countStatisticsNum("",ids,null,null,null,null,null,userId));
        workOrder.setWaitDistribution(iGuideRepairOrderService.countStatisticsNum("1",ids,null,null,null,null,null,userId));
        workOrder.setWaitDealWith(iGuideRepairOrderService.countStatisticsNum("2",ids,null,null,null,null,null,userId));
        workOrder.setHaveDealWith(iGuideRepairOrderService.countStatisticsNum("3",ids,null,null,null,null,null,userId));
        workOrder.setRemainEvaluated(iGuideRepairOrderService.countStatisticsNum("4",ids,null,null,null,null,null,userId));
        workOrder.setCanceled(iGuideRepairOrderService.countStatisticsNum("5",ids,null,null,null,null,null,userId));
        //服务状态(1.已解决 2.未解决)
        workOrder.setUnsolved(iGuideRepairOrderService.countStatisticsNum(null,ids,null,null,null,null,"2",userId));
        workOrder.setResolved(iGuideRepairOrderService.countStatisticsNum(null,ids,null,null,null,null,"1",userId));
        //是否超时 (1 未超时   2已超时) 超时未办结
        workOrder.setOvertime(iGuideRepairOrderService.countStatisticsNum(null,ids,null,"2",null,null,null,userId));
        workOrder.setOvertimeWaitDealWith(iGuideRepairOrderService.countStatisticsNum("2",ids,null,"2",null,null,null,userId));
        return ResultData.success(workOrder);
    }
    /**
     * 删除工单
     * @param id
     * @return
     */
    @ApiOperation(value = "删除工单",response = GuideRepairOrder.class)
    @DeleteMapping("/delete/{id}")
    @Authorization
    public ResultData deleteConfigById(@PathVariable("id") String id)
    {
        return toAjax(iGuideRepairOrderService.deleteConfigById(id));
    }
}
flower_city/src/main/java/com/dg/core/controller/HomeStatisticsController.java
New file
@@ -0,0 +1,397 @@
package com.dg.core.controller;
import com.dg.core.ResultData;
import com.dg.core.db.gen.entity.*;
import com.dg.core.db.manual.pojo.AppletUserCount;
import com.dg.core.service.*;
import com.dg.core.util.TableDataInfo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.util.*;
@Api(tags = {"首页统计接口"})
@RestController
@RequestMapping("/Home")
public class HomeStatisticsController extends BaseController
{
    //导办工单接口
    @Autowired
    IGuideRepairOrderService iGuideRepairOrderService;
    //导办进展
    @Autowired
    IGuideEvolveService iGuideEvolveService;
    @Autowired
    HomeStatisticsService homeStatisticsService;
    @Autowired
    com.dg.core.service.ISysUserService IUserService;
    @Autowired
    IOrganizationChartService iOrganizationChartService;
    @Autowired
    IAreaCodeService iAreaCodeService;
    @Autowired
    private ISysUserRecordService iSysUserRecordService;
    @ApiOperation("首页统计不同状态工单数")
    @GetMapping("/getWorkOrder")
    public ResultData<WorkOrder> getWorkOrder()
    {
        WorkOrder workOrder=new WorkOrder();
        //状态(1待分配  2 待办结 3 已办结 4 待评价 5 已取消)
        workOrder.setAllNum(iGuideRepairOrderService.countStatisticsNum("",null,null,null,null,null,null,null));
        workOrder.setWaitDistribution(iGuideRepairOrderService.countStatisticsNum("1",null,null,null,null,null,null,null));
        workOrder.setWaitDealWith(iGuideRepairOrderService.countStatisticsNum("2",null,null,null,null,null,null,null));
        workOrder.setHaveDealWith(iGuideRepairOrderService.countStatisticsNum("3",null,null,null,null,null,null,null));
        workOrder.setRemainEvaluated(iGuideRepairOrderService.countStatisticsNum("4",null,null,null,null,null,null,null));
        workOrder.setCanceled(iGuideRepairOrderService.countStatisticsNum("5",null,null,null,null,null,null,null));
        // //服务状态(1.已解决 2.未解决)
        workOrder.setUnsolved(iGuideRepairOrderService.countStatisticsNum(null,null,null,null,null,null,"2",null));
        workOrder.setResolved(iGuideRepairOrderService.countStatisticsNum(null,null,null,null,null,null,"1",null));
        //是否超时 (1 未超时   2已超时) 超时未办结
        workOrder.setOvertime(iGuideRepairOrderService.countStatisticsNum(null,null,null,"2",null,null,null,null));
//        超时未办结
        workOrder.setOvertimeWaitDealWith(iGuideRepairOrderService.countStatisticsNum("2",null,null,"2",null,null,null,null));
        return ResultData.success(workOrder);
    }
    @ApiOperation("首页统计不同时间段的工单数量")
    @GetMapping("/getTimeWorkOrder")
    public ResultData<TimeWorkOrder> getTimeWorkOrder()
    {
        //1 今天   2昨天   3本月   4本年度
        //累计全部 本年 本月 今日 昨日
        TimeWorkOrder timeWorkOrder=new TimeWorkOrder();
        timeWorkOrder.setAllNum(iGuideRepairOrderService.countStatisticsNum(null,null,null,null,null,null,null,null));
        timeWorkOrder.setYearNum(iGuideRepairOrderService.countStatisticsNum(null,null,"4",null,null,null,null,null));
        timeWorkOrder.setMonthNum(iGuideRepairOrderService.countStatisticsNum(null,null,"3",null,null,null,null,null));
        timeWorkOrder.setTodayNum(iGuideRepairOrderService.countStatisticsNum(null,null,"1",null,null,null,null,null));
        timeWorkOrder.setYesterdayNum(iGuideRepairOrderService.countStatisticsNum(null,null,"2",null,null,null,null,null));
        return ResultData.success(timeWorkOrder);
    }
    @ApiOperation("根据选择的时间段 筛选导办工单数 timeType:1 本年度 15 近15天的   30 近30天的")
    @GetMapping("/getSelectionTimeOrder")
    public ResultData<CountList> getSelectionTimeOrder(@RequestParam("timeType") Integer timeType)
    {
        if(timeType<1)
        {
            return ResultData.error("请输入时间");
        }
        if(timeType==1)
        {
            Calendar calendar=Calendar.getInstance();
            timeType=calendar.get(Calendar.DAY_OF_YEAR);
        }
//        System.out.println(timeType);
        //1 本年度 15 近15天的   30 近30天的
        List<CountListNum> listOne=iGuideRepairOrderService.countListNum("2",null,timeType);
        List<CountListNum> listTwo=iGuideRepairOrderService.countListNum("3",null,timeType);
        CountList countList=new CountList();
        countList.setWaitDealWithList(listOne);
        countList.setHaveDealWith(listTwo);
        return ResultData.success(countList);
    }
    @ApiOperation("获取效率比值")
    @GetMapping("/getEfficiency")
    public ResultData<EfficiencyEntity> getEfficiency()
    {
        EfficiencyEntity entity=new EfficiencyEntity();
        //总工单数
        int allNum=iGuideRepairOrderService.countStatisticsNum("",null,null,null,null,null,null,null);
        java.text.DecimalFormat weekDf=new java.text.DecimalFormat("##.##%");//传入格式模板
        int bj=iGuideRepairOrderService.countStatisticsNum("3",null,null,null,null,null,null,null);
        if(bj!=0)
        {
            //        好评率=评价为满意的导办工单数量/已办结状态工单数量
            String goodReputationEfficiency=weekDf.format((float)(iGuideRepairOrderService.countStatisticsNum(null,null,null,null,"1",null,null,null)
                    /(float)bj));
            entity.setGoodReputationEfficiency(goodReputationEfficiency);
            //      解决率=已解决状态的导办工单数量/已办结状态工单数量
            String resolveEfficiency=weekDf.format((float)(iGuideRepairOrderService.countStatisticsNum(null,null,null,null,null,null,"1",null)
                    /(float)bj));
            entity.setResolveEfficiency(resolveEfficiency);
            if(allNum!=0)
            {
//              办结率=待评价+已办结状态的导办工单数量/总工单数量
                String workEfficiency=weekDf.format((float)((iGuideRepairOrderService.countStatisticsNum("4",null,null,null,null,null,null,null)
                        +bj)/(float)allNum));
                entity.setWorkEfficiency(workEfficiency);
            }
        }
        int cs=iGuideRepairOrderService.countStatisticsNum(null,null,null,"2",null,null,null,null);
        if(cs!=0)
        {
            //        超时办结率=超时状态下的待评价+已办结状态的导办工单数量/超时状态的导办工单数量
            String timeoutEfficiency=weekDf.format((float)((iGuideRepairOrderService.countStatisticsNum("4",null,null,"2",null,null,null,null)
                    +iGuideRepairOrderService.countStatisticsNum("3",null,null,null,null,null,null,null))
                    /(float)cs));
            entity.setTimeoutEfficiency(timeoutEfficiency);
        }
        if(allNum!=0)
        {
            //        回复率=最新进展里大于0条回复的导办工单数量/总工单数量
            //状态(1待分配  2 待办结 3 已办结 4 待评价 5 已取消 6未解决  7已解决  8 系统自动分配 9 回复   10转派    11手动分配)
            String reversionRate=weekDf.format((float)(homeStatisticsService.reversionRate("9",null)/(float)allNum));
            entity.setReversionRate(reversionRate);
        }
        return ResultData.success(entity);
    }
    @ApiOperation("工单  办事指南饼状图数据")
    @GetMapping("/getPieChart")
    public ResultData<PieChartAll> getPieChart()
    {
        PieChartAll pieChartAll=new PieChartAll();
        pieChartAll.setWorkOrderNum(iGuideRepairOrderService.countStatisticsNum("",null,null,null,null,null,null,null)+"");
        pieChartAll.setFingerpostNum(homeStatisticsService.countStatisticsNum(null)+"");
        List<PieChart> workOrderList=new ArrayList<>();
        List<PieChart> fingerpostList=new ArrayList<>();
        List<ClassifyAdministration> oneIds=homeStatisticsService.getClassify(null,"1");
        for (ClassifyAdministration oneClassify:oneIds)
        {
            PieChart workOrder=new PieChart();
            PieChart fingerpost=new PieChart();
            workOrder.setName(oneClassify.getClassifyName());
            fingerpost.setName(oneClassify.getClassifyName());
            List<ClassifyAdministration> twoIds = homeStatisticsService.getClassify(oneClassify.getId()+"",null);
            List clasIds=new ArrayList();
            clasIds.add(oneClassify.getId());
            for (ClassifyAdministration classify:twoIds)
            {
                clasIds.add(classify.getId());
            }
            int workOrderNum=0;
            int fingerpostNum=0;
            if(clasIds.size()>0)
            {
                workOrderNum=iGuideRepairOrderService.countStatisticsNum(null,null,null,null,null,clasIds,null,null);
                fingerpostNum=homeStatisticsService.countStatisticsNum(clasIds);
            }
            workOrder.setNum(workOrderNum+"");
            fingerpost.setNum(fingerpostNum+"");
            workOrderList.add(workOrder);
            fingerpostList.add(fingerpost);
        }
        pieChartAll.setWorkOrderList(workOrderList);
        pieChartAll.setFingerpostList(fingerpostList);
        return ResultData.success(pieChartAll);
    }
    @ApiOperation("组织排行榜  type 1 安评价   2 按办结量")
    @GetMapping("/getOrganization")
    public TableDataInfo<OrganizationEntity> getOrganization(@RequestParam("type") String type)
    {
        List<OrganizationEntity> guidePlates=homeStatisticsService.getDepartment();
        if(StringUtils.equals("1",type))
        {
            for (OrganizationEntity bean:guidePlates)
            {
                bean.setNum(0+"");
                List<String> ids=iOrganizationChartService.getIds(bean.getId()+"");
                //总评分
                String scoreNum=homeStatisticsService.organizationScore(ids)+"";
                int score=0;
                if(!StringUtils.isEmpty(scoreNum) &&  !StringUtils.equals("null",scoreNum))
                {
                    score=Integer.valueOf(scoreNum);
                }
                //总数量
                int allNum=homeStatisticsService.organizationNum(ids);
                if(allNum>0 && score>0)
                {
                    java.text.DecimalFormat weekDf=new java.text.DecimalFormat("##.##");//传入格式模板
                    String workEfficiency=weekDf.format((float)(score/allNum));
                    bean.setNum(workEfficiency);
                }
            }
        }
        else
        {
            for (OrganizationEntity bean:guidePlates)
            {
                bean.setNum(0+"");
                List<String> ids=iOrganizationChartService.getIds(bean.getId()+"");
                //总数量
                int allNum=homeStatisticsService.organizationNum(ids);
                if(allNum>0)
                {
                    bean.setNum(allNum+"");
                }
            }
        }
        OrganizationEntity entity=null;
        for(int i = 0 ;i< guidePlates.size() -1; i++) {
            for (int j = 0; j < guidePlates.size() - 1 - i; j++) {
                if(Float.valueOf(guidePlates.get(j).getNum())>Float.valueOf(guidePlates.get(j+1).getNum()))
                {
                    entity=guidePlates.get(j);
                    guidePlates.set(j,guidePlates.get(j+1));
                    guidePlates.set(j+1,entity);
                }
            }
        }
        Collections.reverse(guidePlates);
        return getDataTable(guidePlates,guidePlates.size());
    }
    @ApiOperation("导办人员排行榜 type 1 安评价   2 按办结量 3 按超时")
    @GetMapping("/getGuidePlate")
    public TableDataInfo<GuidePlate> getGuidePlate(@RequestParam("type") String type)
    {
        int allNum=homeStatisticsService.staffNum();
        if(StringUtils.equals("1",type))
        {
            //安评价
            return getDataTable(homeStatisticsService.score(),allNum);
        }
        else if(StringUtils.equals("2",type))
        {
            //2 按办结量
            return getDataTable(homeStatisticsService.guidePlatePeople(),allNum);
        }
        else
        {
            //3 按超时
            return getDataTable(homeStatisticsService.timeout(),allNum);
        }
    }
    @ApiOperation("办事指南排行榜 type 1 按浏览量   2 按办结量")
    @GetMapping("/getGuidance")
    public TableDataInfo<Guidance> getGuidance(@RequestParam("type") String type)
    {
        int allNum=homeStatisticsService.countWork();
        if(StringUtils.equals("1",type))
        {
            return getDataTable(homeStatisticsService.guidanceBrowse(),allNum);
        }
        else
        {
            return getDataTable(homeStatisticsService.guidanceTransaction(),allNum);
        }
    }
    @ApiOperation("导办工单按区域统计")
    @GetMapping("/getRangeStatistics")
    public TableDataInfo<RangeStatistics> getRangeStatistics()
    {
        List<AreaCode2022> code2022s=iAreaCodeService.getListByPCode("510400000000");
        List<RangeStatistics> rangeStatistics=new ArrayList<>();
        for (AreaCode2022 bean:code2022s)
        {
            RangeStatistics range=new RangeStatistics();
            range.setName(bean.getName());
            List<String> ids;
            if(bean.getCode()==510401000000L)
            {
                ids=homeStatisticsService.countId("");
            }
            else
            {
                ids=homeStatisticsService.countId(bean.getCode()+"");
            }
            int num=0;
            if(ids!=null&&ids.size()>0)
            {
                num=iGuideRepairOrderService.countStatisticsNum(null,ids,null,null,null,null,null,null);
            }
            range.setNum(num+"");
            rangeStatistics.add(range);
        }
        return getDataTable(rangeStatistics);
    }
    /**
     * 小程序用户访问量统计1.累计访问量2.本年访问量 3.本月访问量 4.今日访问量 5.昨日访问
     * @return
     */
    @ApiOperation(value = "小程序用户访问量统计1.累计访问量2.本年访问量 3.本月访问量 4.今日访问量 5.昨日访问",response = AppletUserCount.class)
    @GetMapping("/selectUserRecordCount")
    public ResultData selectUserRecordCount(){
        return  iSysUserRecordService.selectUserRecordCount();
    }
    /**
     * 小程序用户访问量统计1.近15天 2.近30天 3.近一年
     * @return
     */
    @ApiOperation(value = "小程序用户访问量统计1.近15天 2.近30天 3.近一年",response = AppletUserCount.class)
    @GetMapping("/selectByDateType")
    public ResultData selectByDateType(@RequestParam("dateType") Integer dateType){
        return  iSysUserRecordService.selectByDateType(dateType);
    }
}
flower_city/src/main/java/com/dg/core/controller/KeywordController.java
@@ -2,6 +2,7 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.dg.core.ResultData;
import com.dg.core.annotation.Authorization;
import com.dg.core.db.gen.entity.KeywordEntity;
import com.dg.core.service.IKeywordService;
import com.dg.core.util.TableDataInfo;
@@ -27,6 +28,7 @@
     */
    @ApiOperation("关键词列表接口")
    @GetMapping("/getlist")
    @Authorization
    public TableDataInfo selectConfigList(@RequestParam(value = "pageNum",required = false) Integer pageNum,
                                          @RequestParam(value = "pageSize",required = false) Integer pageSize)
    {
@@ -45,6 +47,7 @@
     */
    @ApiOperation("关键词详情接口")
    @GetMapping("/getData")
    @Authorization
    public ResultData selectConfigData(@RequestParam(value = "id",required = false) String id,
                                       @RequestParam(value = "name",required = false) String name)
    {
@@ -58,6 +61,7 @@
     */
    @ApiOperation("关键词添加接口")
    @PostMapping("/add")
    @Authorization
    public ResultData insertConfig(@RequestBody KeywordEntity entity)
    {
        KeywordEntity enti=iKeywordService.selectConfigData("",entity.getName());
@@ -82,6 +86,7 @@
     */
    @ApiOperation("关键词编辑接口")
    @PostMapping("/update")
    @Authorization
    public ResultData updateConfig(@RequestBody KeywordEntity entity)
    {
        return toAjax(iKeywordService.updateConfig(entity));
@@ -94,6 +99,7 @@
     */
    @ApiOperation("关键词删除接口")
    @DeleteMapping("/delete")
    @Authorization
    public ResultData deleteConfigById(String Id)
    {
        return toAjax(iKeywordService.deleteConfigById(Id));
flower_city/src/main/java/com/dg/core/controller/OrganizationController.java
@@ -1,17 +1,24 @@
package com.dg.core.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.dg.core.ResultData;
import com.dg.core.db.gen.entity.ClassifyAdministration;
import com.dg.core.annotation.Authorization;
import com.dg.core.annotation.CurrentUser;
import com.dg.core.db.gen.entity.OrganizationChartEntity;
import com.dg.core.db.gen.entity.SysUser;
import com.dg.core.db.gen.entity.TransactionEvent;
import com.dg.core.service.IOrganizationChartService;
import com.dg.core.util.StringUtils;
import com.dg.core.service.ITransactionEventService;
import com.dg.core.util.TableDataInfo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.Assert;
import org.springframework.web.bind.annotation.*;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;
@@ -24,10 +31,13 @@
    @Autowired(required = true)
    IOrganizationChartService iOrganizationChartService;
    @Autowired(required = true)
    ITransactionEventService iTransactionEventService;
    /**
     * 查询机构列表
     */
    @ApiOperation("查询机构列表")
    @ApiOperation(value = "查询机构列表",response = OrganizationChartEntity.class)
    @GetMapping("/getList")
    public TableDataInfo selectConfigList()
    {
@@ -37,8 +47,9 @@
    /**
     * 新增机构
     */
    @ApiOperation("新增机构")
    @ApiOperation(value = "新增机构",response = OrganizationChartEntity.class)
    @PostMapping("/add")
    @Authorization
    public ResultData insertConfig(@RequestBody OrganizationChartEntity entity)
    {
        Assert.notNull(entity.getGrade(), "等级 grade 不能为空");
@@ -63,10 +74,13 @@
    /**
     * 更新机构
     */
    @ApiOperation("更新机构")
    @ApiOperation(value = "更新机构",response = OrganizationChartEntity.class)
    @PostMapping("/update")
    public ResultData updateConfig(@RequestBody OrganizationChartEntity entity)
    @Authorization
    public ResultData updateConfig(@RequestBody OrganizationChartEntity entity,@CurrentUser SysUser sysUser)
    {
        entity.setUpdateTime(LocalDateTime.now());
        entity.setUpdateUserId(sysUser.getUserId());
        return toAjax(iOrganizationChartService.updateConfig(entity));
    }
@@ -75,9 +89,25 @@
     */
    @ApiOperation("删除机构")
    @DeleteMapping("/delete")
    @Authorization
    public ResultData deleteConfigById(@RequestParam(value = "Id",required = false)  String Id)
    {
        Assert.notNull(Id, "Id 不能为空");
        List<OrganizationChartEntity> list=iOrganizationChartService.selectParentList(Id,"");
        if(list!=null && list.size()>0)
        {
            return ResultData.error("该机构下存在其他部门!请先删除子部门");
        }
        List<String> ids=new ArrayList<>();
        ids.add(Id);
        List<TransactionEvent> transactionEvents=iTransactionEventService.selectConfigList(null,null,ids);
        if(transactionEvents!=null && transactionEvents.size()>0)
        {
            return ResultData.error("该机构下已绑定办事指南!请解绑办事指南");
        }
        return toAjax(iOrganizationChartService.deleteConfigById(Id));
    }
@@ -99,4 +129,62 @@
          return ResultData.success(iOrganizationChartService.selectConfigById(id));
    }
    /**
     * 查询机构列表(分页)
     */
    @ApiOperation(value = "查询机构列表(分页)(部门应用)",response = OrganizationChartEntity.class)
    @GetMapping("/queryList")
    @Authorization
    public TableDataInfo queryList(@RequestParam(value = "pageNum",required = false) Integer pageNum,
                                            @RequestParam(value = "pageSize",required = false) Integer pageSize,
                                            @RequestParam(value = "organizationName",required = false)String organizationName){
        Assert.notNull(pageNum, "pageNum can not be empty");
        Assert.notNull(pageSize, "pageSize can not be empty");
        Page<OrganizationChartEntity> pageParam = new Page<>(pageNum,pageSize);
        return getDataTable(iOrganizationChartService.queryList(pageParam,pageSize,organizationName),iOrganizationChartService.countList(organizationName));
    }
    /**
     * 通过父级id查询对应机构下的全部部门id
     * @param departmentId
     * @return
     */
    @ApiOperation(value = "通过父级id查询对应机构下的全部部门",response = OrganizationChartEntity.class)
    @GetMapping("/getdepartment")
    public TableDataInfo getOrganizations(@RequestParam(value = "department",required = false) String departmentId)
    {
        List<OrganizationChartEntity> ids=new ArrayList<>();
        List<OrganizationChartEntity> lists = iOrganizationChartService.selectParentList(departmentId,"");
        if(lists.size()<1)
        {
            lists.add(iOrganizationChartService.selectConfigById(departmentId));
        }
        ids=disposestreet(lists);
        if(ids.size()<1)
        {
            return null;
        }
        ids.add(iOrganizationChartService.selectConfigById(departmentId));
        return getDataTable(ids);
    }
    //递归取id
    private List<OrganizationChartEntity> disposestreet(List<OrganizationChartEntity> lists)
    {
        List<OrganizationChartEntity> ids=new ArrayList<>();
        for (OrganizationChartEntity sysStreet:lists)
        {
            if(sysStreet.getChild()!=null && sysStreet.getChild().size()>0)
            {
                ids.addAll(disposestreet(sysStreet.getChild()));
            }
            else
            {
                ids.add(sysStreet);
            }
        }
        return ids;
    }
}
flower_city/src/main/java/com/dg/core/controller/ReplyTemplateController.java
@@ -6,11 +6,13 @@
import com.dg.core.annotation.CurrentUser;
import com.dg.core.db.gen.entity.ReplyTemplateEntity;
import com.dg.core.db.gen.entity.SysUser;
import com.dg.core.service.IOrganizationChartService;
import com.dg.core.service.IReplyTemplateService;
import com.dg.core.util.StringUtils;
import com.dg.core.util.PermissionUtil;
import com.dg.core.util.TableDataInfo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@@ -25,19 +27,30 @@
    @Autowired
    IReplyTemplateService iReplyTemplateService;
    @Autowired
    IOrganizationChartService iOrganizationChartService;
    /**
     * 获取模板列表
     * @return
     */
    @ApiOperation("获取模板列表")
    @GetMapping("/getlist")
    @Authorization
    public TableDataInfo selectConfigList(@RequestParam(value = "pageNum",required = false) Integer pageNum,
                                          @RequestParam(value = "pageSize",required = false) Integer pageSize,
                                          @RequestParam(value = "Name",required = false) String Name)
                                          @RequestParam(value = "name",required = false) String Name,
                                          @CurrentUser SysUser sysUser)
    {
        Page<ReplyTemplateEntity> pageParam = new Page<>(pageNum,pageSize);
        List<ReplyTemplateEntity> list = iReplyTemplateService.selectConfigList(pageParam,pageSize,Name);
        int num=iReplyTemplateService.countNum(Name);
        List<String> ids= PermissionUtil.getPermission(sysUser,iOrganizationChartService);
        if(ids==null || ids.size()<1)
        {
            return getDataTable("您没有权限查看该数据");
        }
        List<ReplyTemplateEntity> list = iReplyTemplateService.selectConfigList(pageParam,pageSize,Name,ids);
        int num=iReplyTemplateService.countNum(Name,ids);
        return getDataTable(list,num);
    }
@@ -48,6 +61,7 @@
     */
    @ApiOperation("获取详情")
    @GetMapping("/getdata")
    @Authorization
    public ResultData selectConfigData(@RequestParam(value = "Id",required = false) String Id)
    {
        if(StringUtils.isEmpty(Id))
@@ -77,6 +91,19 @@
            return ResultData.error("模板名称不能为空");
        }
        if(StringUtils.isEmpty(sysUser.getDepartmentId()))
        {
            return ResultData.error("部门id不能为空  请分配部门id");
        }
        List<String> ids=iOrganizationChartService.getIds(sysUser.getDepartmentId());
        int num=iReplyTemplateService.countNum(entity.getName(),ids);
        if(num>0)
        {
            return ResultData.error("部门里办事名称重复!");
        }
        entity.setId(null);
        entity.setDepartmentId(sysUser.getDepartmentId());
        entity.setCreateUserId(sysUser.getUserId()+"");
@@ -91,6 +118,7 @@
     */
    @ApiOperation("更新模板")
    @PostMapping("/update")
    @Authorization
    public ResultData updateConfig(@RequestBody ReplyTemplateEntity entity)
    {
        if(entity==null)
@@ -112,6 +140,7 @@
     */
    @ApiOperation("删除模板")
    @DeleteMapping("/delete")
    @Authorization
    public ResultData deleteConfigById(@RequestParam(value = "Id",required = false) String Id)
    {
        return toAjax(iReplyTemplateService.deleteConfigById(Id));
@@ -125,6 +154,7 @@
     */
    @ApiOperation("复制模板")
    @PostMapping("/copy")
    @Authorization
    public ResultData copy(@RequestParam(value = "Id",required = false) String Id)
    {
        if(StringUtils.isEmpty(Id))
@@ -138,6 +168,7 @@
        {
            return ResultData.error("模板不存在!");
        }
        entity.setName(entity.getName()+"(副本)");
        entity.setId(null);
        return toAjax(iReplyTemplateService.insertConfig(entity));
    }
flower_city/src/main/java/com/dg/core/controller/RoleManagementController.java
@@ -2,14 +2,15 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.dg.core.ResultData;
import com.dg.core.annotation.Authorization;
import com.dg.core.annotation.CurrentUser;
import com.dg.core.db.gen.entity.RoleManagementEntity;
import com.dg.core.db.gen.entity.SysUser;
import com.dg.core.service.IRoleManagementService;
import com.dg.core.util.StringUtils;
import com.dg.core.util.TableDataInfo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@@ -32,8 +33,10 @@
     */
    @ApiOperation("查询角色列表")
    @GetMapping("/getList")
    @Authorization
    public TableDataInfo selectConfigList(@RequestParam(value = "pageNum",required = false) Integer pageNum,
                                          @RequestParam(value = "pageSize",required = false) Integer pageSize)
                                          @RequestParam(value = "pageSize",required = false) Integer pageSize,
                                          @RequestParam(value = "name",required = false) String name)
    {
        if(pageNum==null)
        {
@@ -46,9 +49,9 @@
        }
        Page<RoleManagementEntity> pageParam = new Page<>(pageNum,pageSize);
        List<RoleManagementEntity> list = iRoleManagementService.selectConfigList(pageParam,pageSize);
        List<RoleManagementEntity> list = iRoleManagementService.selectConfigList(pageParam,pageSize,name);
        int num=iRoleManagementService.countNum();
        int num=iRoleManagementService.countNum(name);
        return getDataTable(list,num);
    }
@@ -59,9 +62,10 @@
     */
    @ApiOperation("新增角色")
    @PostMapping("/add")
    public ResultData insertConfig(@RequestBody RoleManagementEntity entity)
    @Authorization
    public ResultData insertConfig(@RequestBody RoleManagementEntity entity, @CurrentUser SysUser sysUser)
    {
//        entity.setCreateUserId(sysUser.getUserId()+"");
        entity.setCreateUserId(sysUser.getUserId()+"");
        return toAjax(iRoleManagementService.insertConfig(entity));
    }
@@ -72,6 +76,7 @@
     */
    @ApiOperation("编辑角色")
    @PostMapping("/update")
    @Authorization
    public ResultData updateConfig(@RequestBody RoleManagementEntity entity)
    {
//        entity.setUpdateUserId(sysUser.getUserId()+"");
@@ -84,6 +89,7 @@
     * @return
     */
    @DeleteMapping("/delete")
    @Authorization
    public ResultData deleteConfigById(@RequestParam(value = "Id",required = false) String Id)
    {
        if(StringUtils.isEmpty(Id))
flower_city/src/main/java/com/dg/core/controller/SlideshowController.java
@@ -1,6 +1,7 @@
package com.dg.core.controller;
import com.dg.core.ResultData;
import com.dg.core.annotation.Authorization;
import com.dg.core.db.gen.entity.Agreement;
import com.dg.core.db.gen.entity.OrganizationChartEntity;
import com.dg.core.db.gen.entity.Slideshow;
@@ -61,6 +62,7 @@
     */
    @ApiOperation(value = "修改轮播图数据",response = Slideshow.class)
    @PostMapping("/update")
    @Authorization
    public ResultData update(@RequestBody Slideshow slideshow){
        return  iSlideshowService.update(slideshow);
    }
@@ -72,6 +74,7 @@
     */
    @ApiOperation(value = "删除轮播图数据",response = Slideshow.class)
    @GetMapping("/delete")
    @Authorization
    public ResultData delete(@RequestParam("id") Integer id){
        return iSlideshowService.delete(id);
    }
flower_city/src/main/java/com/dg/core/controller/SysSettingsController.java
New file
@@ -0,0 +1,54 @@
package com.dg.core.controller;
import com.dg.core.ResultData;
import com.dg.core.annotation.Authorization;
import com.dg.core.annotation.CurrentUser;
import com.dg.core.db.gen.entity.AutomessageSysSettings;
import com.dg.core.db.gen.entity.SysUser;
import com.dg.core.service.ISysSettingsService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.time.LocalDateTime;
@Api(tags = {"系统设置接口"})
@RestController
@RequestMapping("/sysSettings")
public class SysSettingsController {
    @Resource
    private ISysSettingsService sysSettingsService;
    /**
     * 按设置名称查找设置信息
     *
     * @return 参数配置信息
     */
    @ApiOperation(value = "按设置名称查找设置信息",response = AutomessageSysSettings.class)
    @GetMapping("/selectByName")
    @Authorization
    public ResultData selectByName(@RequestParam(value = "settingName",required = false) String settingName){
       if (settingName==null)
           settingName="系统超时基础设置";
       return sysSettingsService.selectByName(settingName);
    }
    /**
     * 修改设置信息
     *
     * @return 参数配置信息
     */
    @ApiOperation(value = "修改设置信息",response = AutomessageSysSettings.class)
    @PostMapping("/update")
    @Authorization
    ResultData update(@RequestBody AutomessageSysSettings automessageSysSettings,@CurrentUser SysUser sysUser){
        automessageSysSettings.setUpdateUserId(sysUser.getUserId());
        automessageSysSettings.setUpdateTime(LocalDateTime.now());
        return  sysSettingsService.update(automessageSysSettings);
    }
}
flower_city/src/main/java/com/dg/core/controller/TransactionEventController.java
@@ -2,15 +2,20 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.dg.core.ResultData;
import com.dg.core.annotation.Authorization;
import com.dg.core.annotation.CurrentUser;
import com.dg.core.db.gen.entity.Slideshow;
import com.dg.core.db.gen.entity.SysUser;
import com.dg.core.db.gen.entity.TransactionEvent;
import com.dg.core.db.manual.pojo.QueryResults;
import com.dg.core.db.manual.pojo.RecommendResult;
import com.dg.core.db.manual.pojo.Search;
import com.dg.core.service.IOrganizationChartService;
import com.dg.core.service.ITransactionEventService;
import com.dg.core.util.TableDataInfo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.Assert;
import org.springframework.web.bind.annotation.*;
@@ -26,6 +31,10 @@
    @Autowired(required = true)
    ITransactionEventService iTransactionEventService;
    @Autowired(required = true)
    IOrganizationChartService iOrganizationChartService;
    /**
     * 查询导办事务详情
     * @param Id
@@ -33,10 +42,11 @@
     */
    @ApiOperation("查询导办事务详情")
    @GetMapping("/getData")
    public ResultData selectConfigData(@RequestParam("Id") String Id)
    public ResultData selectConfigData(@RequestParam("Id") String Id,@CurrentUser SysUser sysUser)
    {
        Assert.notNull(Id, "Id 不能为空");
        return ResultData.success(iTransactionEventService.selectConfigData(Id));
        return ResultData.success(iTransactionEventService.selectConfigData(Id,sysUser));
    }
    /**
@@ -46,16 +56,20 @@
     */
    @ApiOperation("导办事物列表")
    @GetMapping("/getList")
    @Authorization
    public TableDataInfo selectConfigList(@RequestParam(value = "pageNum",required = false) Integer pageNum,
                                          @RequestParam(value = "pageSize",required = false) Integer pageSize,
                                          @RequestParam(value = "matterAndUser",required = false) String matterAndUser,
                                          @RequestParam(value = "classifyGrade",required = false) String classifyGrade)
                                          @RequestParam(value = "keyword",required = false) String keyword,
                                          @RequestParam(value = "classifyGrade",required = false) String classifyGrade,
                                          @CurrentUser SysUser sysUser)
    {
        Assert.notNull(pageNum, "pageNum 不能为空");
        Assert.notNull(pageSize, "pageSize 不能为空");
        Page<TransactionEvent> pageParam = new Page<>(pageNum,pageSize);
        List<TransactionEvent> list = iTransactionEventService.selectConfigList(pageParam,pageSize,matterAndUser,classifyGrade);
        int num=iTransactionEventService.countNum(matterAndUser,classifyGrade);
        List<String> ids=iOrganizationChartService.getIds(sysUser.getDepartmentId());
        List<TransactionEvent> list = iTransactionEventService.selectConfigList(pageParam,pageSize,keyword,
                classifyGrade,ids);
        int num=iTransactionEventService.countNum(keyword,classifyGrade,ids);
        return getDataTable(list,num);
    }
@@ -78,8 +92,25 @@
     */
    @ApiOperation("新增导办事务")
    @PostMapping("/add")
    @Authorization
    public ResultData insertConfig(@RequestBody TransactionEvent entity)
    {
        if(StringUtils.isEmpty(entity.getDepartmentId()))
        {
            return ResultData.error("部门id不能为空");
        }
        if(StringUtils.isEmpty(entity.getMatterName()))
        {
            return ResultData.error("事件名称不能为空");
        }
        String id=iTransactionEventService.selectDataIfExist(entity.getDepartmentId(),entity.getMatterName());
        if(!StringUtils.isEmpty(id))
        {
            return ResultData.error("事件名称已存在");
        }
        return toAjax(iTransactionEventService.insertConfig(entity));
    }
@@ -90,8 +121,21 @@
     */
    @ApiOperation("修改导办事务")
    @PostMapping("/update")
    @Authorization
    public ResultData updateConfig(@RequestBody TransactionEvent entity)
    {
        if(StringUtils.isEmpty(entity.getDepartmentId()))
        {
            return ResultData.error("部门id不能为空");
        }
        if(StringUtils.isEmpty(entity.getMatterName()))
        {
            return ResultData.error("事件名称不能为空");
        }
        return toAjax(iTransactionEventService.updateConfig(entity));
    }
@@ -102,6 +146,7 @@
     */
    @ApiOperation("删除导办事务")
    @DeleteMapping("/delete")
    @Authorization
    public ResultData deleteConfigById(@RequestParam(value = "Id",required = false) String Id)
    {
@@ -131,15 +176,23 @@
    }
    /**
     *  根据分离查询导办事务
     *  根据分类id查询导办事务(分页)
     * @param classifyId
     * @return
     */
    @ApiOperation(value = "根据分类查询导办事务",response = TransactionEvent.class)
    @GetMapping("/queryByClassifyIdList")
    public TableDataInfo queryByClassifyIdList(@RequestParam("classifyId") String classifyId,@RequestParam(required = false,name="departmentId") Integer departmentId){
        return getDataTable(iTransactionEventService.queryByClassifyIdList(classifyId,departmentId),iTransactionEventService.countNumByClassifyIdList(classifyId,departmentId));
    @ApiOperation(value = "根据分类id查询导办事务(分页)",response = TransactionEvent.class)
    @GetMapping("/queryByClassifyIdConfigList")
    public TableDataInfo queryByClassifyIdConfigList(@RequestParam(value = "pageNum",required = false) Integer pageNum,
                                                     @RequestParam(value = "pageSize",required = false) Integer pageSize,
                                                     @RequestParam("classifyId") String classifyId,
                                                     @RequestParam(required = false,name="departmentId") Integer departmentId){
        Assert.notNull(pageNum, "pageNum 不能为空");
        Assert.notNull(pageSize, "pageSize 不能为空");
        Page<TransactionEvent> pageParam = new Page<>(pageNum,pageSize);
        return getDataTable(iTransactionEventService.queryByClassifyIdList(pageParam,pageSize,classifyId,departmentId),iTransactionEventService.countNumByClassifyIdList(classifyId,departmentId));
    }
    /**
@@ -182,7 +235,35 @@
    @GetMapping("/smartConsulting")
    public RecommendResult smartConsulting(@RequestParam("keyWord") String keyWord){
        return  iTransactionEventService.smartConsulting(keyWord);
    }
    /**
     * 办事指南复制
     * @return
     */
    @ApiOperation(value = "办事指南复制",response = ResultData.class)
    @GetMapping("/copy")
    public ResultData copy(@RequestParam("Id") String Id)
    {
        if(StringUtils.isEmpty(Id))
        {
            return ResultData.error("Id不能为空");
        }
        TransactionEvent transactionEvent=iTransactionEventService.selectConfigData(Id,null);
        if(transactionEvent==null)
        {
            return ResultData.error("复制项不存在");
        }
        transactionEvent.setMatterName(transactionEvent.getMatterName()+"(副本)");
        transactionEvent.setId(null);
        return toAjax(iTransactionEventService.insertConfig(transactionEvent));
    }
}
flower_city/src/main/java/com/dg/core/controller/UserController.java
@@ -4,8 +4,13 @@
import com.dg.core.HttpStatus;
import com.dg.core.ResultData;
import com.dg.core.annotation.Authorization;
import com.dg.core.annotation.CurrentUser;
import com.dg.core.db.gen.entity.HuaChengSysUser;
import com.dg.core.db.gen.entity.SysUser;
import com.dg.core.manager.TokenManager;
import com.dg.core.service.IHuaChengSysUserService;
import com.dg.core.util.SmsUtil;
import com.dg.core.util.Snowflake;
import com.dg.core.util.TableDataInfo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -23,13 +28,21 @@
@Api(tags = {"用户接口"})
@RestController
@RequestMapping("/user")
public class UserController extends BaseController{
public class UserController extends BaseController {
    @Autowired
    com.dg.core.service.ISysUserService IUserService;
    @Autowired
    SmsUtil smsUtil;
    @Autowired
    TokenManager tokenManager;
    /**
     * 花城e+用户接口
     */
    @Autowired
    IHuaChengSysUserService iHuaChengSysUserService;
    @ApiOperation("登录接口")
    @PostMapping(path = "/login")
@@ -37,30 +50,121 @@
        Assert.notNull(account, "username can not be empty");
        Assert.notNull(password, "password can not be empty");
        SysUser user = IUserService.getUserByAccount(account);
        if (user == null || !password.equals(user.getPassword())) {
            //提示用户名或密码错误
            return ResultData.fail(HttpStatus.UNAUTHORIZED, "用户名或密码错误");
        SysUser user=null;
        //管理员登录
        user= IUserService.getUserByAccount(account);
        if(user==null)
        {
            HuaChengSysUser huaChengSysUser=iHuaChengSysUserService.selectData("",account,"");
            if(huaChengSysUser==null || !password.equals(huaChengSysUser.getPassword()))
            {
                //提示用户名或密码错误
                return ResultData.fail(HttpStatus.UNAUTHORIZED, "用户名或密码错误");
            }
            //本地表查询用户
            user = IUserService.selectData(huaChengSysUser.getUserId()+"",null,null);
            if (user == null) {
                //本地没有此用户  新用户
                SysUser newSysUser=new SysUser();
                //默认  1系统后台用户
                newSysUser.setUserType("3");
                newSysUser.setPhonenumber(huaChengSysUser.getPhone());
                newSysUser.setUserId(huaChengSysUser.getUserId());
                newSysUser.setUserName(huaChengSysUser.getNickName());
                newSysUser.setSex(huaChengSysUser.getSex());
                newSysUser.setAvatar(huaChengSysUser.getImageUrl());
                newSysUser.setCreateTime(LocalDateTime.now());
                newSysUser.setUpdateTime(LocalDateTime.now());
                newSysUser.setOpenid(huaChengSysUser.getOpenid());
                IUserService.insertConfig(newSysUser);
            }
            user = IUserService.selectData(huaChengSysUser.getUserId()+"",null,null);
            if (user == null) {
                return ResultData.error("用户不存在!请联系管理员");
            }
            String token = tokenManager.getTokenByUserId(user.getUserId());
            System.out.println("token "+token);
            if (token == null) {
                //生成一个token,保存用户登录状态
                token = tokenManager.createToken(user.getUserId(), user.getUserId());
            }
            user.setLoginDate(LocalDateTime.now());
            //更新登录时间
            IUserService.updateConfig(user);
            Map<String, Object> map = new HashMap<>();
            map.put("token", token);
            map.put("userId", user.getUserId());
            map.put("userName", user.getUserName());
            map.put("permission", user.getPermission());
            map.put("userType", user.getUserType());
            map.put("departmentId", user.getDepartmentId());
            map.put("departmentName", user.getDepartmentName());
            return ResultData.success(map);
        }
        else
        {
            if(!password.equals(user.getPassword()))
            {
                //提示用户名或密码错误
                return ResultData.fail(HttpStatus.UNAUTHORIZED, "用户名或密码错误");
            }
            String token = tokenManager.getTokenByUserId(user.getUserId());
            System.out.println("token "+token);
            if (token == null) {
                //生成一个token,保存用户登录状态
                token = tokenManager.createToken(user.getUserId(), user.getUserId());
            }
            user.setLoginDate(LocalDateTime.now());
            //更新登录时间
            IUserService.updateConfig(user);
            Map<String, Object> map = new HashMap<>();
            map.put("token", token);
            map.put("userId", user.getUserId());
            map.put("userName", user.getUserName());
            map.put("permission", user.getPermission());
            map.put("userType", user.getUserType());
            map.put("departmentId", user.getDepartmentId());
            map.put("departmentName", user.getDepartmentName());
            return ResultData.success(map);
        }
        String token = tokenManager.getTokenByUserId(user.getUserId());
//        String token = tokenManager.createToken(user.getUserId(), user.getRoleId());
        System.out.println("token "+token);
        if (token == null) {
            //生成一个token,保存用户登录状态
            token = tokenManager.createToken(user.getUserId(), user.getUserId());
    }
    @ApiOperation("发送登录短信验证码")
    @PostMapping(value = "/sendSms", consumes = "application/json")
    public ResultData smsSend(@RequestBody SysUser user) {
            return IUserService.smsSend(user);
    }
    @ApiOperation("账号密码验证登录")
    @GetMapping(value = "/loginByAccount")
    public ResultData loginByAccount(@RequestParam String phonenumber,@RequestParam String code) {
        return IUserService.loginByAccount(phonenumber,code);
    }
    @ApiOperation("通过手机号获取用户信息 登录")
    @PostMapping(value = "/loginPhionne")
    public ResultData loginPhionne(@RequestParam String phonenumber)
    {
        if(StringUtils.isEmpty(phonenumber))
        {
            return ResultData.error("请输入手机号");
        }
        user.setLoginDate(LocalDateTime.now());
        //更新登录时间
        IUserService.updateConfig(user);
        Map<String, Object> map = new HashMap<>();
        map.put("token", token);
        map.put("userId", user.getUserId());
        map.put("userName", user.getUserName());
        return ResultData.success(map);
        return IUserService.loginByPhonenumber(phonenumber);
    }
    /**
@@ -70,15 +174,17 @@
     */
    @ApiOperation("用户列表接口")
    @GetMapping("/getlist")
    @Authorization
    public TableDataInfo selectConfigList(@RequestParam(value = "pageNum",required = false) Integer pageNum,
                                          @RequestParam(value = "pageSize",required = false) Integer pageSize)
                                          @RequestParam(value = "pageSize",required = false) Integer pageSize,
                                          @RequestParam(value = "keyword",required = false) String keyword)
    {
        Assert.notNull(pageNum, "pageNum can not be empty");
        Assert.notNull(pageSize, "pageSize can not be empty");
        Page<SysUser> pageParam = new Page<>(pageNum,pageSize);
        List<SysUser> list = IUserService.selectConfigList(pageParam,pageSize,"1");
        List<SysUser> list = IUserService.selectConfigList(pageParam,pageSize,"3",keyword);
        int num=IUserService.selectNum("1");
        int num=IUserService.selectNum("3",keyword);
        return getDataTable(list,num);
    }
@@ -92,7 +198,7 @@
    @ApiOperation("新增用户接口")
    @PostMapping("/add")
    @Authorization
    public ResultData insertConfig(@RequestBody SysUser config)
    public ResultData insertConfig(@RequestBody SysUser config, @CurrentUser SysUser sysUser)
    {
        Assert.notNull(config, "parameter can not be empty");
@@ -111,13 +217,27 @@
            return error("昵称不能为空");
        }
        SysUser user = IUserService.getUserByAccount(config.getLoginName());
        if (user != null) {
            //提示用户名或密码错误
            return error("该账户已存在!");
        if(StringUtils.isEmpty(config.getPhonenumber()))
        {
            return error("手机号不能为空");
        }
        config.setUserType("1");
        SysUser user = IUserService.selectData("",config.getPhonenumber(),"");
        SysUser user2 = IUserService.selectData("","",config.getLoginName());
        if (user != null) {
            //提示用户名或密码错误
            return error("该用户已存在!");
        }
        if(user2 != null)
        {
            //提示用户名或密码错误
            return error("该登录账户已存在!请修改登录账户");
        }
        config.setCreateBy(sysUser.getUserId()+"");
        config.setUserId(Snowflake.getId()+"");
        config.setUserType("3");
        config.setCreateTime(LocalDateTime.now());
        config.setUpdateTime(LocalDateTime.now());
@@ -134,11 +254,11 @@
    @ApiOperation("修改用户接口")
    @PostMapping("/update")
    @Authorization
    public ResultData updateConfig(@RequestBody SysUser config)
    public ResultData updateConfig(@RequestBody SysUser config,@CurrentUser SysUser sys)
    {
        if(config.getUserId()==null)
        if(config.getId()==null)
        {
            return error("userId不能为空");
            return error("Id不能为空");
        }
        if(StringUtils.isEmpty(config.getLoginName()))
@@ -146,7 +266,9 @@
            return error("账户不能为空");
        }
        config.setUserType("1");
        config.setUserType("3");
        config.setUpdateBy(sys.getUserId()+"");
        return toAjax(IUserService.updateConfig(config));
    }
@@ -185,7 +307,7 @@
            return error("userId不能为空");
        }
        SysUser sysUser=IUserService.getUserById(Long.valueOf(userId));
        SysUser sysUser=IUserService.selectData(userId,null,null);
        //删除标志(0代表存在 2代表删除)
        sysUser.setDelFlag("2");
        return toAjax(IUserService.updateConfig(sysUser));
@@ -213,7 +335,7 @@
            return error("密码不能为空");
        }
        SysUser sysUser=IUserService.getUserById(config.getUserId());
        SysUser sysUser=IUserService.selectData(config.getUserId()+"",null,null);
        if(sysUser==null)
        {
            return error("用户不存在");
@@ -229,4 +351,6 @@
}
flower_city/src/main/java/com/dg/core/db/gen/entity/Agreement.java
@@ -19,7 +19,7 @@
 * @author fengjin
 * @since 2022-09-22
 */
@TableName("agreement")
@TableName("automessage_agreement")
@Data
@ApiModel("相关协议实体类")
public class Agreement implements Serializable {
flower_city/src/main/java/com/dg/core/db/gen/entity/AreaCode2022.java
@@ -1,11 +1,15 @@
package com.dg.core.db.gen.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
 * <p>
@@ -15,7 +19,7 @@
 * @author fengjin
 * @since 2022-09-20
 */
@TableName("area_code_2022")
@TableName("automessage_area_code_2022")
@Data
@ApiModel("所属地区实体类")
public class AreaCode2022 implements Serializable {
@@ -26,6 +30,7 @@
     * 区划代码
     */
    @ApiModelProperty("区划代码")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long code;
    /**
@@ -38,14 +43,21 @@
     * 级别1-5,省市县镇村
     */
    @ApiModelProperty("级别1-5,省市县镇村")
    private Boolean level;
    private Integer level;
    /**
     * 父级区划代码
     */
    @ApiModelProperty("父级区划代码")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long pcode;
    /**
     * 子节点
     */
    @TableField(exist = false)
    @ApiModelProperty("子节点")
    private List<AreaCode2022> child;
}
flower_city/src/main/java/com/dg/core/db/gen/entity/AutomessageCommonProblem.java
New file
@@ -0,0 +1,81 @@
package com.dg.core.db.gen.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
 * <p>
 * 常见问题表
 * </p>
 *
 * @author fengjin
 * @since 2022-09-23
 */
@TableName("automessage_common_problem")
@Data
@ApiModel("常见问题实体类")
public class AutomessageCommonProblem implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * 主键
     */
    @ApiModelProperty("主键")
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;
    /**
     * 常见问题标题
     */
    @ApiModelProperty("常见问题标题")
    private String title;
    /**
     * 常见问题解答内容
     */
    @ApiModelProperty("常见问题解答内容")
    private String content;
    /**
     * 创建时间
     */
    @ApiModelProperty("创建时间")
    private LocalDateTime createTime;
    /**
     * 修改时间
     */
    @ApiModelProperty("修改时间")
    private LocalDateTime updateTime;
    /**
     * 修改人id
     */
    @ApiModelProperty("修改人id")
    private String updateUserId;
    /**
     * 创建人id
     */
    @ApiModelProperty("创建人id")
    private String createUserId;
    @TableField(exist = false)
    @ApiModelProperty(name = "updateUserName", value = "上次修改人")
    private String  updateUserName;
    @TableField(exist = false)
    @ApiModelProperty(name = "createUserName", value = "创建人")
    private String  createUserName;
}
flower_city/src/main/java/com/dg/core/db/gen/entity/AutomessageSysSettings.java
New file
@@ -0,0 +1,83 @@
package com.dg.core.db.gen.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
 * <p>
 * 系统设置表
 * </p>
 *
 * @author fengjin
 * @since 2022-10-14
 */
@TableName("automessage_sys_settings")
@Data
@ApiModel("系统设置类")
public class AutomessageSysSettings implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * 主键id
     */
    @ApiModelProperty("主键")
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;
    /**
     * 设置名称
     */
    @ApiModelProperty("设置名称")
    private String settingName;
    /**
     * 系统通知时间
     */
    @ApiModelProperty("系统通知时间")
    private Integer timeoutNotificationNum;
    /**
     * 创建时间
     */
    @ApiModelProperty("创建时间")
    private LocalDateTime createTime;
    /**
     * 创建人id
     */
    @ApiModelProperty("创建人id")
    private Integer createUserId;
    /**
     * 更新时间
     */
    @ApiModelProperty("更新时间")
    private LocalDateTime updateTime;
    /**
     * 修改人id
     */
    @ApiModelProperty("修改人id")
    private String updateUserId;
    /**
     * 小程序二维码
     */
    @ApiModelProperty("小程序二维码")
    private String appletsUrl;
    /**
     * 官网二维码
     */
    @ApiModelProperty("小程序二维码")
    private String websiteUrl;
}
flower_city/src/main/java/com/dg/core/db/gen/entity/AutomessageSysSettingsRecord.java
New file
@@ -0,0 +1,50 @@
package com.dg.core.db.gen.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
 * <p>
 * 系统设置记录表
 * </p>
 *
 * @author fengjin
 * @since 2022-10-14
 */
@TableName("automessage_sys_settings_record")
@Data
@ApiModel("系统设置类")
public class AutomessageSysSettingsRecord implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * 主键id
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;
    /**
     * 设置id
     */
    private Integer settingId;
    /**
     * 创建时间
     */
    private LocalDateTime createTime;
    /**
     * 创建人id(及修改设置的人员)
     */
    private String createUserId;
}
flower_city/src/main/java/com/dg/core/db/gen/entity/AutomessageSysUserRecord.java
New file
@@ -0,0 +1,58 @@
package com.dg.core.db.gen.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
 * <p>
 * 用户访问记录
 * </p>
 *
 * @author fengjin
 * @since 2022-10-15
 */
@TableName("automessage_sys_user_record")
@Data
@ApiModel("用户访问记录类")
public class AutomessageSysUserRecord implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * 主键id
     */
    @ApiModelProperty("主键")
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;
    /**
     * 用户id
     */
    @ApiModelProperty("用户id")
    private String userId;
    /**
     * 访问时间
     */
    @ApiModelProperty("访问时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;
    /**
     * 进入方式(1.扫码进入 2.花城进入 3.分享进入)
     */
    @ApiModelProperty("进入方式(1.扫码进入 2.花城进入 3.分享进入)")
    private Integer joinType;
}
flower_city/src/main/java/com/dg/core/db/gen/entity/AutomessageTransactionEventInterview.java
New file
@@ -0,0 +1,58 @@
package com.dg.core.db.gen.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
 * <p>
 * 办事指南访问表
 * </p>
 *
 * @author fengjin
 * @since 2022-09-26
 */
@TableName("automessage_transaction_event_interview")
@Data
@ApiModel("办事指南访问表实体类")
public class AutomessageTransactionEventInterview implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * 主键id
     */
    @ApiModelProperty("主键")
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;
    /**
     * 办事指南id
     */
    @ApiModelProperty("办事指南id")
    private Integer transactionEventId;
    /**
     * 用户id
     */
    @ApiModelProperty("用户id")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long userId;
    /**
     * 访问时间
     */
    @ApiModelProperty("访问时间")
    private LocalDateTime interviewTime;
}
flower_city/src/main/java/com/dg/core/db/gen/entity/ClassifyAdministration.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
@@ -16,6 +17,7 @@
@ApiModel("分类管理实体类")
@Data
@TableName("automessage_classify_administration")
public class ClassifyAdministration implements Serializable
{
    /**
@@ -72,8 +74,12 @@
    private String parentName;
    @TableField(exist = false)
    @ApiModelProperty(name = "ClassifyAdministrationEntityList", value = "父级分类名字")
    @ApiModelProperty(name = "ClassifyAdministrationEntityList", value = "下级分类")
    private List<ClassifyAdministration> ClassifyAdministrationEntityList;
    @TableField(exist = false)
    @ApiModelProperty(name = "transactNum", value = "办理事项数量")
    private String transactNum;
}
flower_city/src/main/java/com/dg/core/db/gen/entity/CountList.java
New file
@@ -0,0 +1,20 @@
package com.dg.core.db.gen.entity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
@ApiModel("时间筛选列表实体类")
@Data
public class CountList implements Serializable
{
    @ApiModelProperty("待办结列表")
    private List<CountListNum> waitDealWithList;
    @ApiModelProperty("已办结列表")
    private List<CountListNum> haveDealWith;
}
flower_city/src/main/java/com/dg/core/db/gen/entity/CountListNum.java
New file
@@ -0,0 +1,22 @@
package com.dg.core.db.gen.entity;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.List;
@ApiModel("时间筛选实体类")
@Data
public class CountListNum implements Serializable
{
    @ApiModelProperty("时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;
    @ApiModelProperty("数量")
    private Integer num;
}
flower_city/src/main/java/com/dg/core/db/gen/entity/EfficiencyEntity.java
New file
@@ -0,0 +1,45 @@
package com.dg.core.db.gen.entity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
@Data
@ApiModel("首页效率实体类")
public class EfficiencyEntity implements Serializable
{
    /**
     * 回复率
     */
    @ApiModelProperty("回复率")
    private String reversionRate="0%";
    /**
     * 办结率
     */
    @ApiModelProperty("办结率")
    private String workEfficiency="0%";
    /**
     * 解决率
     */
    @ApiModelProperty("解决率")
    private String resolveEfficiency="0%";
    /**
     * 好评率
     */
    @ApiModelProperty("好评率")
    private String goodReputationEfficiency="0%";
    /**
     * 超时办结率
     */
    @ApiModelProperty("超时办结率")
    private String timeoutEfficiency="0%";
}
flower_city/src/main/java/com/dg/core/db/gen/entity/ElseAccessoryEntity.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
@@ -15,6 +16,7 @@
@Data
@ApiModel("其他附件管理实体类")
@TableName("automessage_else_accessory")
public class ElseAccessoryEntity implements Serializable
{
    /**
flower_city/src/main/java/com/dg/core/db/gen/entity/Guidance.java
New file
@@ -0,0 +1,19 @@
package com.dg.core.db.gen.entity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
@ApiModel("办事指南表")
@Data
public class Guidance implements Serializable
{
    @ApiModelProperty(name = "name", value = "名称")
    private String name;
    @ApiModelProperty(name = "num", value = "内容")
    private String num;
}
flower_city/src/main/java/com/dg/core/db/gen/entity/GuideEvolveEntity.java
@@ -1,7 +1,9 @@
package com.dg.core.db.gen.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
@@ -11,9 +13,11 @@
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.List;
@Data
@ApiModel("导办工单进展记录表")
@TableName("automessage_guide_evolve")
public class GuideEvolveEntity implements Serializable
{
    /**
@@ -50,10 +54,22 @@
    private String fromUserId;
    /**
     * 状态(1待分配  2 待办结 3 已办结 4 待评价 5 已取消6 已超时   7超时未办结  8未解决  9已解决  10 系统自动分配  11 回复   12转派    13手动分配)
     * state", value = "状态(1待分配  2 待办结 3 已办结 4 待评价 5 已取消 6未解决  7已解决  8 系统自动分配 9 回复 10转派 11手动分配12默认好评13评价)
     */
    @ApiModelProperty(name = "state", value = "状态(1待分配  2 待办结 3 已办结 4 待评价 5 已取消6 已超时   7超时未办结  8未解决  9已解决  10 系统自动分配  11 回复   12转派    13手动分配)")
    @ApiModelProperty(name = "state", value = "状态(1待分配  2 待办结 3 已办结 4 待评价 5 已取消 6未解决  7已解决  8 系统自动分配 9 回复 10转派 11手动分配 12默认好评 13用户评价)")
    private String state;
    /**
     * 工单号
     */
    @ApiModelProperty(name = "guideOrderNum", value = "工单号")
    private String guideOrderNum;
    /**
     * 超时状态 是否超时 (1未超时  2超时)
     */
    @ApiModelProperty(name = "isTimeout", value = "超时状态 是否超时 (1未超时  2超时)")
    private String isTimeout;
    /**
     * 备注内容
@@ -105,4 +121,40 @@
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updateTime;
    /**
     * 更新时间
     */
    @ApiModelProperty(name = "guidOrderNum", value = "工单号")
     private String guidOrderNum;
    /**
     * 视频url
     */
    @ApiModelProperty(name = "videoUrl", value = "视频url")
    private String videoUrl;
    /**
     * 图片url
     */
    @ApiModelProperty(name = "pictureUrl", value = "图片url")
    private String pictureUrl;
    @TableField(exist = false)
    @ApiModelProperty(name = "toUserName", value = "发起人名字")
    private String toUserName;
    @TableField(exist = false)
    @ApiModelProperty(name = "toUserName", value = "接收人名字")
    private String fromUserName;
    @TableField(exist = false)
    @ApiModelProperty(name = "elseAccessoryEntities", value = "其他附件列表")
    private List<ElseAccessoryEntity> elseAccessoryEntities;
    @TableField(exist = false)
    @ApiModelProperty(name = "transactionEvents", value = "推荐办事指南列表")
    private List<TransactionEvent> transactionEvents;
}
flower_city/src/main/java/com/dg/core/db/gen/entity/GuidePlate.java
New file
@@ -0,0 +1,24 @@
package com.dg.core.db.gen.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
@ApiModel("导办工单进展记录表")
@Data
public class GuidePlate implements Serializable
{
    @ApiModelProperty(name = "userName", value = "用户名")
    private String userName;
    @ApiModelProperty(name = "departmentNmae", value = "部门")
    private String departmentNmae;
    @ApiModelProperty(name = "num", value = "内容")
    private String num;
}
flower_city/src/main/java/com/dg/core/db/gen/entity/GuideRepairOrder.java
@@ -23,7 +23,7 @@
 * @author fengjin
 * @since 2022-09-19
 */
@TableName("guide_repair_order")
@TableName("automessage_guide_repair_order")
@Data
@ApiModel("导办工单管理实体类")
public class GuideRepairOrder implements Serializable {
@@ -100,9 +100,9 @@
    private String guideDepartmentId;
    /**
     * 状态(1待分配  2 待办结 3 已办结 4 待评价 5 已取消 6 已超时   7超时未办结  8未解决  9已解决)
     * 状态(1待分配  2 待办结 3 已办结 4 待评价 5 已取消)
     */
    @ApiModelProperty("状态(1待分配  2 待办结 3 已办结 4 待评价 5 已取消 6 已超时   7超时未办结  8未解决  9已解决)")
    @ApiModelProperty("状态(1待分配  2 待办结 3 已办结 4 待评价 5 已取消)")
    private String state;
    /**
@@ -136,6 +136,12 @@
    private String detailedAddress;
    /**
     * 提交方式(1 小程序 2.门户网)
     */
    @ApiModelProperty("提交方式(1 小程序 2.门户网)")
    private Integer  submitType;
    /**
     * 创建时间
     */
    @ApiModelProperty("创建时间")
@@ -149,11 +155,14 @@
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updateTime;
    @TableField(exist = false)
    @ApiModelProperty(name = "images", value = "图片地址(用逗号分隔)")
    private String images;
    @ApiModelProperty(name = "video", value = "视频地址")
    private String video;
    @ApiModelProperty(name = "isTimeout", value = "是否超时 (1 未超时   2已超时)")
    private String isTimeout;
    @TableField(exist = false)
    @ApiModelProperty(name = "guideRepairOrderList", value = "工单处理进度")
@@ -166,9 +175,52 @@
    @ApiModelProperty(name = "suggest", value = "建议")
    private String suggest;
    @ApiModelProperty(name = "evaluateState", value = "评价状态")
    @ApiModelProperty(name = "evaluateState", value = "评价状态(1 满意  2不满意)")
    private String evaluateState;
    @ApiModelProperty(name = "serviceState", value = "服务状态(1.已解决 2.未解决)")
    private  Integer serviceState;
    /**
     * 超时时间
     */
    @ApiModelProperty("超时时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime timeoutTime;
    /**
     * 是否推送过(1 是 2 否)
     */
    @ApiModelProperty("是否推送过(1 是 2 否)")
    private Integer isPush;
    @TableField(exist = false)
    @ApiModelProperty(name = "sumClassifyName", value = "完整分类名称")
    private String sumClassifyName;
    @TableField(exist = false)
    @ApiModelProperty(name = "consultUser", value = "咨询人姓名+电话")
    private String consultUser;
    @TableField(exist = false)
    @ApiModelProperty(name = "submitUser", value = "提交人姓名+电话")
    private String submitUser;
    @TableField(exist = false)
    @ApiModelProperty(name = "guideUser", value = "导办人姓名+电话")
    private String guideUser;
    @TableField(exist = false)
    @ApiModelProperty(name = "organizationName", value = "创建部门")
    private String organizationName;
    @TableField(exist = false)
    @ApiModelProperty(name = "guideDepartmentName", value = "导办部门")
    private String guideDepartmentName;
    @TableField(exist = false)
    @ApiModelProperty(name = "areaName", value = "所属地区名字")
    private String areaName;
    @Override
    public String toString() {
flower_city/src/main/java/com/dg/core/db/gen/entity/GuideRepairOrderImage.java
@@ -1,11 +1,15 @@
package com.dg.core.db.gen.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
 * <p>
@@ -15,7 +19,7 @@
 * @author fengjin
 * @since 2022-09-19
 */
@TableName("guide_repair_order_image")
@TableName("automessage_guide_repair_order_image")
@ApiModel("导办工单图片管理实体类")
@Data
public class GuideRepairOrderImage implements Serializable {
@@ -26,6 +30,7 @@
     * 主键
     */
    @ApiModelProperty("主键id")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long id;
    /**
@@ -41,6 +46,19 @@
    private String url;
    /**
     * 路径
     */
    @ApiModelProperty("类型1,视频 2.图片")
    private Integer type;
    /**
     * 创建时间
     */
    @ApiModelProperty("创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;
    @Override
flower_city/src/main/java/com/dg/core/db/gen/entity/HuaChengSysUser.java
New file
@@ -0,0 +1,285 @@
package com.dg.core.db.gen.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
/**
 * 此类为花城e+主体类
 * 不可修改  切记!!!!!!!!!!!!!!!!!!
 * 不可修改  切记!!!!!!!!!!!!!!!!!!
 * 不可修改  切记!!!!!!!!!!!!!!!!!!
 * 不可修改  切记!!!!!!!!!!!!!!!!!!
 * 不可修改  切记!!!!!!!!!!!!!!!!!!
 * 不可修改  切记!!!!!!!!!!!!!!!!!!
 */
@ApiModel("花城用户信息实体类")
@Data
@TableName("sys_user")
public class HuaChengSysUser implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * 用户ID
     */
    @ApiModelProperty(name = "userId", value = "主键用户id")
    @JsonSerialize(using = ToStringSerializer.class)
    @TableId(value = "user_id", type = IdType.AUTO)
    private String userId;
    /**
     * 登录账户
     */
    @ApiModelProperty(name = "account", value = "登录账户")
    private String account;
    /**
     * 登录密码
     */
    @ApiModelProperty(name = "password", value = "登录密码")
    private String password;
    /**
     * 微信小程序唯一标识
     */
    @ApiModelProperty(name = "openid", value = "微信小程序唯一标识")
    private String openid;
    /**
     * 会话密钥
     */
    @ApiModelProperty(name = "sessionKey", value = "会话密钥")
    private String sessionKey;
    /**
     * 用户在开放平台的唯一标识符
     */
    @ApiModelProperty(name = "unionid", value = "用户在开放平台的唯一标识符")
    private String unionid;
    /**
     * 手机号
     */
    @ApiModelProperty(name = "phone", value = "手机号")
    private String phone;
    /**
     * 昵称
     */
    @ApiModelProperty(name = "nickName", value = "昵称")
    private String nickName;
    /**
     * 真实名字
     */
    @ApiModelProperty(name = "name", value = "真实名字")
    private String name;
    /**
     * 社区ID
     */
    @ApiModelProperty(name = "communityId", value = "社区ID")
    private String communityId;
    /**
     * 性别 1 男 2 女
     */
    @ApiModelProperty(name = "sex", value = "性别 1 男 2 女")
    private String sex;
    /**
     * 身份证号
     */
    @ApiModelProperty(name = "idCard", value = "身份证号")
    private String idCard;
    /**
     * 生日
     */
    @ApiModelProperty(name = "birthday", value = "生日")
    private String birthday;
    /**
     * 头像
     */
    @ApiModelProperty(name = "imageUrl", value = "头像")
    private String imageUrl;
    /**
     * 用户类型 1 小程序 2 运营平台 3 社区平台 5 商家后台 6 网格综治APP 7 网格综治后台 8大屏 9城管后台 10 便民服务商家后台 11三说会堂后台 12行业分中心后台
     */
    @ApiModelProperty(name = "type", value = "用户类型 1 小程序 2 运营平台 3 社区平台 5 商家后台 6 网格综治APP 7 网格综治后台 8大屏 9城管后台 10 便民服务商家后台 11三说会堂后台 12行业分中心后台")
    private String type;
    /**
     * 职业
     */
    @ApiModelProperty(name = "job", value = "职业")
    private String job;
    /**
     * 是否志愿者 0 否 1 是
     */
    @ApiModelProperty(name = "isVolunteer", value = "是否志愿者 0 否 1 是")
    private String isVolunteer;
    /**
     * 是否党员 0 否 1 是
     */
    @ApiModelProperty(name = "isPartymember", value = "是否党员 0 否 1 是")
    private String isPartymember;
    /**
     * 1 启用 2 禁用
     */
    @ApiModelProperty(name = "status", value = "1 启用 2 禁用")
    private String status;
    /**
     * 创建时间
     */
    @ApiModelProperty(name = "createAt", value = "创建时间")
    private String createAt;
    /**
     * 最后登录时间
     */
    @ApiModelProperty(name = "lastLoginTime", value = "最后登录时间")
    private String lastLoginTime;
    /**
     * 标签多个用,隔开
     */
    @ApiModelProperty(name = "tags", value = "标签多个用,隔开")
    private String tags;
    /**
     * 家庭id
     */
    @ApiModelProperty(name = "familyId", value = "家庭id")
    private String familyId;
    /**
     * 人脸采集照片url
     */
    @ApiModelProperty(name = "faceUrl", value = "人脸采集照片url")
    private String faceUrl;
    /**
     * 人脸采集审核状态 0 待审核 1 审核通过 2驳回
     */
    @ApiModelProperty(name = "faceState", value = "人脸采集审核状态 0 待审核 1 审核通过 2驳回")
    private String faceState;
    /**
     * 驳回原因
     */
    @ApiModelProperty(name = "rejectReson", value = "驳回原因")
    private String rejectReson;
    /**
     * 小区id
     */
    @ApiModelProperty(name = "areaId", value = "小区id")
    private String areaId;
    /**
     * 证件照(人相面)照片
     */
    @ApiModelProperty(name = "cardPhotoFront", value = "证件照(人相面)照片")
    private String cardPhotoFront;
    /**
     * 证件照(国徽面)照片
     */
    @ApiModelProperty(name = "cardPhotoBack", value = "证件照(国徽面)照片")
    private String cardPhotoBack;
    /**
     * 户口本
     */
    @ApiModelProperty(name = "familyBook", value = "户口本")
    private String familyBook;
    /**
     * 连续登陆天数 每天凌晨定时任务更新
     */
    @ApiModelProperty(name = "continuousLandingDays", value = "连续登陆天数 每天凌晨定时任务更新")
    private String continuousLandingDays;
    /**
     * 小程序首页是否显示公告(1.是 2.否)
     */
    @ApiModelProperty(name = "isTips", value = "小程序首页是否显示公告(1.是 2.否)")
    private String isTips;
    /**
     * 网格员工作状态(1.在岗 2.脱岗 3.已下班)
     */
    @ApiModelProperty(name = "workStatus", value = "网格员工作状态(1.在岗 2.脱岗 3.已下班)")
    private String workStatus;
    /**
     * 网格员上班开始时间
     */
    @ApiModelProperty(name = "workStartTime", value = "网格员上班开始时间")
    private String workStartTime;
    /**
     * 网格员上班结束时间
     */
    @ApiModelProperty(name = "workEndTime", value = "网格员上班结束时间")
    private String workEndTime;
    /**
     * 高龄认证显示提示(1.是 2.否)
     */
    @ApiModelProperty(name = "bigAgeTips", value = "高龄认证显示提示(1.是 2.否)")
    private String bigAgeTips;
    /**
     * 明文密码
     */
    @ApiModelProperty(name = "plaintextPassword", value = "明文密码")
    private String plaintextPassword;
    /**
     * 街道id
     */
    @ApiModelProperty(name = "streetId", value = "街道id")
    private String streetId;
    /**
     * 绑定单位
     */
    @ApiModelProperty(name = "relationName", value = "绑定单位")
    private String relationName;
    /**
     *
     */
    @ApiModelProperty(name = "appId", value = "")
    private String appId;
    /**
     * 是否接收推送
     */
    @ApiModelProperty(name = "isAccept", value = "是否接收推送")
    private String isAccept;
    /**
     * 报到单位id
     */
    @ApiModelProperty(name = "bindingCheckUnitId", value = "报到单位id")
    private String bindingCheckUnitId;
}
flower_city/src/main/java/com/dg/core/db/gen/entity/KeywordEntity.java
@@ -15,7 +15,7 @@
@ApiModel("关键词实体类")
@Data
@TableName("keyword")
@TableName("automessage_keyword")
public class KeywordEntity implements Serializable
{
    @ApiModelProperty("主键id")
flower_city/src/main/java/com/dg/core/db/gen/entity/MenuEntity.java
@@ -2,6 +2,7 @@
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
@@ -14,6 +15,7 @@
@ApiModel("菜单实体类")
@Data
@TableName("automessage_menu")
public class MenuEntity implements Serializable
{
@@ -51,6 +53,7 @@
     * 父节点id
     */
    @ApiModelProperty("父节点id")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long parentId;
}
flower_city/src/main/java/com/dg/core/db/gen/entity/OrganizationChartEntity.java
@@ -17,7 +17,7 @@
@ApiModel("组织架构实体类")
@Data
@TableName("organization_chart")
@TableName("automessage_organization_chart")
public class OrganizationChartEntity  implements Serializable
{
    /**
@@ -99,12 +99,32 @@
    private String contactNumber;
    /**
     * areaList
     */
    @ApiModelProperty("areaList")
    private String areaList;
    /**
     * 机构等级
     */
    @ApiModelProperty("部门应用")
    private String departmentalApplication;
    /**
     * 修改人
     */
    @ApiModelProperty("修改人")
    private String updateUserId;
    /**
     * 修改人
     */
    @TableField(exist = false)
    @ApiModelProperty("修改人姓名")
    private String updateUserName;
    /**
     * 下属机构
     */
    @TableField(exist = false)
flower_city/src/main/java/com/dg/core/db/gen/entity/OrganizationEntity.java
New file
@@ -0,0 +1,27 @@
package com.dg.core.db.gen.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
@ApiModel("组织排行榜")
@Data
public class OrganizationEntity implements Serializable {
    @ApiModelProperty("id")
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
    @ApiModelProperty(name = "departmentNmae", value = "部门")
    private String departmentNmae;
    @TableField(exist = false)
    @ApiModelProperty(name = "num", value = "内容")
    private String num="0";
}
flower_city/src/main/java/com/dg/core/db/gen/entity/PieChart.java
New file
@@ -0,0 +1,19 @@
package com.dg.core.db.gen.entity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
@ApiModel("饼状图子类实体类")
@Data
public class PieChart implements Serializable
{
    @ApiModelProperty("一级分类名称")
    private String name;
    @ApiModelProperty("一级分类数量")
    private String num;
}
flower_city/src/main/java/com/dg/core/db/gen/entity/PieChartAll.java
New file
@@ -0,0 +1,27 @@
package com.dg.core.db.gen.entity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
@ApiModel("饼状图实体类")
@Data
public class PieChartAll implements Serializable
{
    @ApiModelProperty("工单总数")
    private String workOrderNum;
    @ApiModelProperty("办事指南总数")
    private String fingerpostNum;
    @ApiModelProperty("工单统计图数据")
    private List<PieChart> workOrderList;
    @ApiModelProperty("办事指南统计图数据")
    private List<PieChart> fingerpostList;
}
flower_city/src/main/java/com/dg/core/db/gen/entity/RangeStatistics.java
New file
@@ -0,0 +1,19 @@
package com.dg.core.db.gen.entity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
@ApiModel("导办工单根据地区统计")
@Data
public class RangeStatistics implements Serializable
{
    @ApiModelProperty("区域名")
    private String name;
    @ApiModelProperty("数量")
    private String num;
}
flower_city/src/main/java/com/dg/core/db/gen/entity/ReplyTemplateEntity.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
@@ -12,9 +13,11 @@
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.List;
@ApiModel("回复模板实体类")
@Data
@TableName
public class ReplyTemplateEntity implements Serializable
{
    /**
@@ -130,5 +133,18 @@
    @ApiModelProperty("附件id")
    private String accessoryId;
    /**
     * 附件列表
     */
    @TableField(exist = false)
    @ApiModelProperty("附件列表")
    private List<ElseAccessoryEntity> elseAccessoryEntityList;
    /**
     * 推荐办事指南列表
     */
    @TableField(exist = false)
    @ApiModelProperty("推荐办事指南列表")
    private List<TransactionEvent> transactionEventList;
}
flower_city/src/main/java/com/dg/core/db/gen/entity/RoleManagementEntity.java
@@ -1,6 +1,7 @@
package com.dg.core.db.gen.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
@@ -16,7 +17,7 @@
@ApiModel("角色管理实体类")
@Data
@TableName("role_management")
@TableName("automessage_role_management")
public class RoleManagementEntity implements Serializable
{
    /**
@@ -66,6 +67,10 @@
    @ApiModelProperty("权限")
    private String permission;
    @TableField(exist = false)
    @ApiModelProperty("创建者名称")
    private String createName;
}
flower_city/src/main/java/com/dg/core/db/gen/entity/RoleMenuEntity.java
New file
@@ -0,0 +1,60 @@
package com.dg.core.db.gen.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDateTime;
@ApiModel("角色菜单关系实体类")
@Data
@TableName("automessage_role_menu")
public class RoleMenuEntity implements Serializable
{
    /**
     * 主键id
     */
    @ApiModelProperty("主键id")
    @JsonSerialize(using = ToStringSerializer.class)
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
    /**
     * 角色id
     */
    @ApiModelProperty("角色id")
    private String roleId;
    /**
     * 菜单id
     */
    @ApiModelProperty("菜单id")
    private String menuId;
    /**
     *
     */
    @ApiModelProperty("创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;
    /**
     * 修改时间
     */
    @ApiModelProperty("修改时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime  updateTime;
}
flower_city/src/main/java/com/dg/core/db/gen/entity/Slideshow.java
@@ -20,7 +20,7 @@
 */
@ApiModel("轮播图实体类")
@Data
@TableName("slideshow")
@TableName("automessage_slideshow")
public class Slideshow implements Serializable {
    private static final long serialVersionUID = 1L;
flower_city/src/main/java/com/dg/core/db/gen/entity/SysUser.java
@@ -24,17 +24,25 @@
 */
@ApiModel("用户信息实体类")
@Data
@TableName("sys_user")
@TableName("automessage_sys_user")
public class SysUser implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * 用户ID
     * 主键id
     */
    @ApiModelProperty("主键id")
    @JsonSerialize(using = ToStringSerializer.class)
    @TableId(value = "user_id", type = IdType.AUTO)
    private Long userId;
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
    /**
     * 用户id
     */
    @ApiModelProperty("用户id")
    @JsonSerialize(using = ToStringSerializer.class)
    private String userId;
    /**
@@ -63,9 +71,9 @@
    private String phonenumber;
    /**
     * 用户性别(0男 1女 2未知)
     * 性别 1 男 2 女
     */
    @ApiModelProperty("用户性别(0男 1女 2未知)")
    @ApiModelProperty("性别 1 男 2 女")
    private String sex;
    /**
@@ -223,7 +231,33 @@
    @ApiModelProperty("办结事项名称")
    private String transactionNames;
    /**
     * 微信小程序id
     */
    @ApiModelProperty("微信小程序id")
    private String openid;
    /**
     * 待处理办事指南数量
     */
    @ApiModelProperty("待处理办事指南数量")
    private Integer transactionNum;
    @TableField(exist = false)
    @ApiModelProperty("权限资格")
    private String permission;
    @TableField(exist = false)
    @ApiModelProperty("角色名称")
    private String roleName;
    @TableField(exist = false)
    @ApiModelProperty("创建人名称")
    private String createName;
    @ApiModelProperty("是否是部门领导(1是  2不是)")
    private String isDivisionHead;
}
flower_city/src/main/java/com/dg/core/db/gen/entity/TimeWorkOrder.java
New file
@@ -0,0 +1,35 @@
package com.dg.core.db.gen.entity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
/**
 * 导办工单统计类
 */
@ApiModel("不同时间段的工单数量")
@Data
public class TimeWorkOrder implements Serializable
{
    //累计全部 本年 本月 今日 昨日
    /**
     * 总数量
     */
    @ApiModelProperty("累计总数量")
    private Integer allNum=0;
    @ApiModelProperty("本年")
    private Integer yearNum;
    @ApiModelProperty("本月")
    private Integer monthNum;
    @ApiModelProperty("今天")
    private Integer todayNum;
    @ApiModelProperty("昨天")
    private Integer yesterdayNum;
}
flower_city/src/main/java/com/dg/core/db/gen/entity/TransactionEvent.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
@@ -15,6 +16,7 @@
@ApiModel("导办事项管理实体类")
@Data
@TableName("automessage_transaction_event")
public class TransactionEvent implements Serializable
{
    /**
@@ -37,15 +39,32 @@
    @ApiModelProperty("部门所属区域")
    private String departmentArea;
     /**
     * 部门电话
     */
     @TableField(exist = false)
    @ApiModelProperty("部门电话")
    private String contactNumber;
    /**
     * 分类id
     */
    @ApiModelProperty("分类id")
    private String classifyId;
    /**
     * 所属分类等级
     */
    @TableField(exist = false)
    @ApiModelProperty("所属分类等级")
    private String classifyName;
    /**
     * 部门名称
     */
    @TableField(exist = false)
    @ApiModelProperty("部门名称")
    private String departmentName;
    /**
     * 事项名称
     */
@@ -77,15 +96,15 @@
    private String basicInformation;
    /**
     * 受理条件
     * 现场申报
     */
    @ApiModelProperty("受理条件")
    @ApiModelProperty("现场申报")
    private String acceptConditions;
    /**
     * 申请材料
     *  办理区域
     */
    @ApiModelProperty("申请材料")
    @ApiModelProperty("办理区域")
    private String applicationMaterial;
    /**
@@ -95,9 +114,9 @@
    private String handlingProcedures;
    /**
     * 收费标准
     * 网上申报
     */
    @ApiModelProperty("收费标准")
    @ApiModelProperty("网上申报")
    private String rates;
    /**
@@ -113,7 +132,6 @@
    @ApiModelProperty("更新时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updateTime;
    /**
     * 联想词内容 , 连接
@@ -132,14 +150,14 @@
    @ApiModelProperty("基础信息附件url")
    private String basicInformationUrl;
    /**
     * 受理条件附件url
     * 现场申报附件url
     */
    @ApiModelProperty("受理条件附件url")
    @ApiModelProperty("现场申报附件url")
    private String acceptConditionsUrl;
    /**
     * 申请材料附件url
     * 办理区域附件url
     */
    @ApiModelProperty("申请材料附件url")
    @ApiModelProperty("办理区域附件url")
    private String applicationMaterialUrl;
    /**
     * 办理流程附件url
@@ -147,9 +165,9 @@
    @ApiModelProperty("办理流程附件url")
    private String handlingProceduresUrl;
    /**
     * 收费标准附件url
     * 网上申报附件url
     */
    @ApiModelProperty("收费标准附件url")
    @ApiModelProperty("网上申报附件url")
    private String ratesUrl;
    /**
     * 基础信息附件url
@@ -157,14 +175,14 @@
    @ApiModelProperty("基础信息附件url")
    private String basicInformationFileName;
    /**
     * 附件url
     * 现场申报附件url
     */
    @ApiModelProperty("附件url")
    @ApiModelProperty("现场申报附件url")
    private String acceptConditionsFileName;
    /**
     * 申请材料文件名称
     * 办理区域文件名称
     */
    @ApiModelProperty("申请材料文件名称")
    @ApiModelProperty("办理区域文件名称")
    private String applicationMaterialFileName;
    /**
     * 办理流程文件名称
@@ -172,11 +190,10 @@
    @ApiModelProperty("办理流程文件名称")
    private String handlingProceduresFileName;
    /**
     * 收费标准文件名称
     * 网上申报文件名称
     */
    @ApiModelProperty("收费标准文件名称")
    @ApiModelProperty("网上申报文件名称")
    private String ratesFileName;
    /**
     * 操作指引附件url
@@ -184,14 +201,11 @@
    @ApiModelProperty("操作指引附件url")
    private String operationalGuidelineUrl;
   /**
     * 操作指引视频url
     */
    @ApiModelProperty("操作指引视频url")
    private String operationalGuidelineVideoUrl;
    /**
     * 设定依据
@@ -228,6 +242,15 @@
    private String commonProblemName;
    @ApiModelProperty("手机移动端申报")
    private String transactionArea;
    @ApiModelProperty("手机移动端申报url")
    private String transactionAreaUrl;
    @ApiModelProperty("手机移动端申报文件名称")
    private String transactionAreaName;
    @TableField(exist = false)
    @ApiModelProperty(name = "sumTransactionNum", value = "导办服务数量")
@@ -241,10 +264,13 @@
    @ApiModelProperty(name = "sumClassifyName", value = "分类总名称")
    String  sumClassifyName;
    @ApiModelProperty(name = "operationalGuidelineVideoName", value = "操作指南视频名称")
    private String  operationalGuidelineVideoName;
    @ApiModelProperty(name = "operationalGuidelineName", value = "操作指南名称")
    private  String  operationalGuidelineName;
    @ApiModelProperty(name = "classifyIds", value = "前端使用")
    private String classifyIds;
}
flower_city/src/main/java/com/dg/core/db/gen/entity/WorkOrder.java
New file
@@ -0,0 +1,78 @@
package com.dg.core.db.gen.entity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
/**
 * 导办工单统计类
 */
@ApiModel("导办工单统计类")
@Data
public class WorkOrder implements Serializable
{
    /**
     * 总数量
     */
    @ApiModelProperty("总数量")
    private Integer allNum=0;
    /**
     * 待分配
     */
    @ApiModelProperty("待分配数量")
    private Integer waitDistribution=0;
    /**
     * 待办结
     */
    @ApiModelProperty("待办结")
    private Integer waitDealWith=0;
    /**
     * 已办结
     */
    @ApiModelProperty("已办结")
    private Integer haveDealWith=0;
    /**
     * 待评价
     */
    @ApiModelProperty("待评价")
    private Integer remainEvaluated=0;
    /**
     * 已取消
     */
    @ApiModelProperty("已取消")
    private Integer canceled=0;
    /**
     * 已超时
     */
    @ApiModelProperty("已超时")
    private Integer overtime=0;
    /**
     * 超时未办结
     */
    @ApiModelProperty("超时未办结")
    private Integer overtimeWaitDealWith=0;
    /**
     * 未解决
     */
    @ApiModelProperty("未解决")
    private Integer unsolved=0;
    /**
     * 已解决
     */
    @ApiModelProperty("已解决")
    private Integer resolved=0;
}
flower_city/src/main/java/com/dg/core/db/gen/mapper/AutomessageCommonProblemMapper.java
New file
@@ -0,0 +1,40 @@
package com.dg.core.db.gen.mapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.dg.core.db.gen.entity.AutomessageCommonProblem;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import org.springframework.data.repository.query.Param;
import java.util.List;
/**
 * <p>
 * 常见问题表 Mapper 接口
 * </p>
 *
 * @author fengjin
 * @since 2022-09-23
 */
public interface AutomessageCommonProblemMapper extends BaseMapper<AutomessageCommonProblem> {
    /**
     * 获取常见问题列表(分页)
     * @param page
     * @param state
     * @return
     */
   List<AutomessageCommonProblem> selectConfigList(IPage<AutomessageCommonProblem> page, Integer state, @Param("title") String title, @Param("content") String content);
    /**
     * 获取常见问题列表(不分页查找)
     * @return
     */
    List<AutomessageCommonProblem> selectConfigList(@Param("title") String title, @Param("content") String content);
    /**
     * 获取常见问题列表统计数量
     * @return
     */
   Integer countConfigList(@Param("title") String title, @Param("content") String content);
}
flower_city/src/main/java/com/dg/core/db/gen/mapper/AutomessageSysSettingsMapper.java
New file
@@ -0,0 +1,16 @@
package com.dg.core.db.gen.mapper;
import com.dg.core.db.gen.entity.AutomessageSysSettings;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * <p>
 * 系统设置表 Mapper 接口
 * </p>
 *
 * @author fengjin
 * @since 2022-10-14
 */
public interface AutomessageSysSettingsMapper extends BaseMapper<AutomessageSysSettings> {
}
flower_city/src/main/java/com/dg/core/db/gen/mapper/AutomessageSysSettingsRecordMapper.java
New file
@@ -0,0 +1,16 @@
package com.dg.core.db.gen.mapper;
import com.dg.core.db.gen.entity.AutomessageSysSettingsRecord;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * <p>
 *  Mapper 接口
 * </p>
 *
 * @author fengjin
 * @since 2022-10-14
 */
public interface AutomessageSysSettingsRecordMapper extends BaseMapper<AutomessageSysSettingsRecord> {
}
flower_city/src/main/java/com/dg/core/db/gen/mapper/AutomessageSysUserRecordMapper.java
New file
@@ -0,0 +1,49 @@
package com.dg.core.db.gen.mapper;
import com.dg.core.db.gen.entity.AutomessageSysUserRecord;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.dg.core.db.manual.pojo.AppletUserCount;
import java.util.List;
/**
 * <p>
 *  Mapper 接口
 * </p>
 *
 * @author fengjin
 * @since 2022-10-15
 */
public interface AutomessageSysUserRecordMapper extends BaseMapper<AutomessageSysUserRecord> {
    /**
     * 小程序用户访问量统计1.累计访问量2.本年访问量 3.本月访问量 4.今日访问量 5.昨日访问
     * @return
     */
    List<AppletUserCount> selectUserRecordCount();
    /**
     * 小程序用户访问量统计近15天
     * @return
     */
    List<AppletUserCount> selectByDay();
    /**
     * 小程序用户访问量统计近30天
     * @return
     */
    List<AppletUserCount> selectByMonth();
    /**
     * 小程序用户访问量统计近一年
     * @return
     */
    List<AppletUserCount> selectByYear();
    /**
     * 删除因为token问题产出的重复脏数据
     * @return
     */
    Integer deleteDistinct();
}
flower_city/src/main/java/com/dg/core/db/gen/mapper/AutomessageTransactionEventInterviewMapper.java
New file
@@ -0,0 +1,16 @@
package com.dg.core.db.gen.mapper;
import com.dg.core.db.gen.entity.AutomessageTransactionEventInterview;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * <p>
 * 办事指南访问表 Mapper 接口
 * </p>
 *
 * @author fengjin
 * @since 2022-09-26
 */
public interface AutomessageTransactionEventInterviewMapper extends BaseMapper<AutomessageTransactionEventInterview> {
}
flower_city/src/main/java/com/dg/core/db/gen/mapper/ClassifyAdministrationMapper.java
@@ -69,6 +69,16 @@
    List<ClassifyAdministration>  selectRootList (@Param("parentId")String parentId,@Param("departmentId")Integer departmentId);
    /**
     * 根据上级id查询子分类
     * @param parentId
     * @return
     */
    List<String>  selectParent(String parentId);
    List<ClassifyAdministration>  selectParentData(String parentId);
flower_city/src/main/java/com/dg/core/db/gen/mapper/ElseAccessoryMapper.java
@@ -17,14 +17,17 @@
     * @param Name
     * @return
     */
    public List<ElseAccessoryEntity> selectConfigList(IPage<ElseAccessoryEntity> page, Integer state, @Param("Name") String Name);
    public List<ElseAccessoryEntity> selectConfigList(IPage<ElseAccessoryEntity> page, Integer state,
                                                      @Param("Name") String Name,
                                                      @Param("ids") List<String> ids);
    /**
     * 获取附件列表全部
     * @param Name
     * @return
     */
    public List<ElseAccessoryEntity> selectConfigList(@Param("Name") String Name);
    public List<ElseAccessoryEntity> selectConfigList(@Param("Name") String Name,
                                                      @Param("ids") List<String> ids);
    /**
@@ -53,6 +56,13 @@
     * @param Name
     * @return
     */
    public int countNum(String Name);
    public int countNum(@Param("Name") String Name,@Param("ids") List<String> ids);
    /**
     * 按ids查找相关附件列表
     * @param list
     * @return
     */
    List<ElseAccessoryEntity> selectListByIds(String[] list);
}
flower_city/src/main/java/com/dg/core/db/gen/mapper/GuideEvolveMapper.java
@@ -2,6 +2,7 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.dg.core.db.gen.entity.GuideEvolveEntity;
import org.springframework.data.repository.query.Param;
import java.util.List;
@@ -41,4 +42,13 @@
     */
    public int countNum();
    /**
     * 更新工单id为空的脏数据
     * @return
     */
    int updateGuid();
}
flower_city/src/main/java/com/dg/core/db/gen/mapper/GuideRepairOrderMapper.java
@@ -1,8 +1,13 @@
package com.dg.core.db.gen.mapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.dg.core.db.gen.entity.AutomessageCommonProblem;
import com.dg.core.db.gen.entity.CountListNum;
import com.dg.core.db.gen.entity.GuideRepairOrder;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.data.repository.query.Param;
import java.util.List;
/**
 * <p>
@@ -33,7 +38,91 @@
    public int updateConfig(GuideRepairOrder order);
    /**
     * 获取个人中心工单数据
     * @param submitUserId
     * @return
     */
    List<GuideRepairOrder> selectBySubmitId(String submitUserId);
    /**
     * 获取工单列表(分页)
     * @param matterName
     * @return
     */
    List<GuideRepairOrder> selectConfigList(IPage<GuideRepairOrder> page, Integer state,
                                            @Param("matterName") String matterName,
                                            @Param("ids") List<String> ids,
                                            @Param("status") String status,
                                            @Param("guideUserId") String guideUserId);
    /**
     * 获取工单列表(不分页用于小程序)
     * @param matterName
     * @return
     */
    List<GuideRepairOrder> selectConfigList(@Param("matterName") String matterName,
                                            @Param("ids") List<String> ids,
                                            @Param("status") String status,
                                            @Param("guideUserId") String guideUserId);
    /**
     * 获取工单列表(求和)
     * @param matterName
     * @return
     */
    int countConfigList(@Param("matterName") String matterName,
                        @Param("ids") List<String> ids,
                        @Param("status") String status,
                        @Param("guideUserId") String guideUserId);
    /**
     * 很具用户id查询是否有对应工单
     * @return
     */
    int countUser(@Param("userId") String userId,@Param("state") String state);
    /**
     * 删除工单
     * @param Id
     * @return
     */
    int deleteConfigById(String Id);
    /**
     * 统计工单用   1 今天   2昨天   3本月   4本年度
     * @return
     */
    int countStatisticsNum(@Param("state") String state,
                           @Param("ids") List<String> ids,
                           @Param("time") String time,
                           @Param("isTimeout") String isTimeout,
                           @Param("evaluateState") String evaluateState,
                           @Param("classifyIds") List<String> classifyIds,
                           @Param("serviceState") String serviceState,
                           @Param("guideUserId") String guideUserId);
    /**
     * 统计工单用
     * @return
     */
    List<CountListNum> countListNum(@Param("state") String state,
                                    @Param("ids") List<String> ids,
                                    @Param("time") Integer time);
    /**
     * 获取超时工单
     * @return
     */
   List<GuideRepairOrder> selectOvertime();
    /**
     * 更改状态为好评
     * @return
     */
    List<GuideRepairOrder> selectEvaluate();
}
flower_city/src/main/java/com/dg/core/db/gen/mapper/HomeStatisticsMapper.java
New file
@@ -0,0 +1,100 @@
package com.dg.core.db.gen.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.dg.core.db.gen.entity.ClassifyAdministration;
import com.dg.core.db.gen.entity.Guidance;
import com.dg.core.db.gen.entity.GuidePlate;
import com.dg.core.db.gen.entity.OrganizationEntity;
import org.springframework.data.repository.query.Param;
import java.util.List;
public interface HomeStatisticsMapper  extends BaseMapper<GuidePlate>
{
    /**
     * 按办结量排序
     * @return
     */
    List<GuidePlate> guidePlatePeople();
    /**
     *按评分排序
     * @return
     */
    List<GuidePlate> score();
    /**
     * 按超时
     * @return
     */
    List<GuidePlate> timeout();
    /**
     * 导办人员统计数
     * @return
     */
    Integer staffNum();
    /**
     * 办事指南数量统计
     * @return
     */
    Integer countWork();
    /**
     * 获取一级部门
     * @return
     */
    List<OrganizationEntity> getDepartment();
    /**
     * 评分
     * @return
     */
    Integer organizationScore(List<String> ids);
    /**
     * 办结量
     * @return
     */
    Integer organizationNum(List<String> ids);
    /**
     * 办事指南根据导办数量排序
     * @return
     */
    List<Guidance> guidanceTransaction();
    /**
     * 办事指南根据浏览数量排序
     * @return
     */
    List<Guidance> guidanceBrowse();
    /**
     * 获取统计数据  首页用  勿动
     */
    int countStatisticsNum(List<String> classifyIds);
    /**
     * 首页统计用
     * @param parentId
     * @param classifyGrade
     * @return
     */
    public List<ClassifyAdministration> getClassify(@Param("parentId") String parentId,
                                                    @Param("classifyGrade") String classifyGrade);
    List<String> countId(String district);
    /**
     * 首页统计用
     * @return
     */
    int reversionRate(@Param("state") String state,@Param("isTimeout") String isTimeout);
}
flower_city/src/main/java/com/dg/core/db/gen/mapper/HuaChengSysUserMapper.java
New file
@@ -0,0 +1,24 @@
package com.dg.core.db.gen.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.dg.core.db.gen.entity.HuaChengSysUser;
import org.springframework.data.repository.query.Param;
import java.util.List;
/**
 * <p>
 * 用户信息表 Mapper 接口
 * </p>
 *
 * @author xiang
 * @since 2022-07-11
 */
public interface HuaChengSysUserMapper extends BaseMapper<HuaChengSysUser>
{
    public List<HuaChengSysUser> selectConfigList();
    public HuaChengSysUser selectData(@Param("userId") String userId,@Param("account")  String account,@Param("phone") String phone);
    public int selectNum();
}
flower_city/src/main/java/com/dg/core/db/gen/mapper/OrganizationChartMapper.java
@@ -1,6 +1,7 @@
package com.dg.core.db.gen.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.dg.core.db.gen.entity.OrganizationChartEntity;
import org.springframework.data.repository.query.Param;
@@ -46,5 +47,23 @@
    OrganizationChartEntity selectConfigById(@Param("id") String id);
    /**
     * 查询机构列表(分页)
     */
    List<OrganizationChartEntity> queryList(IPage<OrganizationChartEntity> page, Integer state, String organizationName);
    /**
     * 统计数量(部门应用)
     */
    int countList(String organizationName);
    /**
     * 根据所属地区查找部门
     */
    List<OrganizationChartEntity> selectByCode(@Param("id")String id, @Param("areaCode") String areaCode);
}
flower_city/src/main/java/com/dg/core/db/gen/mapper/ReplyTemplateMapper.java
@@ -14,7 +14,9 @@
     * 获取模板列表
     * @return
     */
    public List<ReplyTemplateEntity> selectConfigList(IPage<ReplyTemplateEntity> page, Integer state, @Param("Name") String Name);
    public List<ReplyTemplateEntity> selectConfigList(IPage<ReplyTemplateEntity> page, Integer state,
                                                      @Param("Name") String Name,
                                                      @Param("ids") List<String> ids);
    /**
@@ -49,7 +51,7 @@
     * 获取数量
     * @return
     */
    public int countNum(String Name);
    public int countNum(@Param("Name") String Name,@Param("ids") List<String> ids);
flower_city/src/main/java/com/dg/core/db/gen/mapper/RoleManagementMapper.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.dg.core.db.gen.entity.RoleManagementEntity;
import org.springframework.data.repository.query.Param;
import java.util.List;
@@ -17,7 +18,8 @@
     * @param state
     * @return
     */
    public List<RoleManagementEntity> selectConfigList(IPage<RoleManagementEntity> page, Integer state);
    public List<RoleManagementEntity> selectConfigList(IPage<RoleManagementEntity> page, Integer state,
                                                       @Param("name") String name);
    /**
     * 新增角色
@@ -44,7 +46,7 @@
     * 统计条数
     * @return
     */
    public int countNum();
    public int countNum(String name);
flower_city/src/main/java/com/dg/core/db/gen/mapper/RoleMenuEntityMapper.java
New file
@@ -0,0 +1,41 @@
package com.dg.core.db.gen.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.dg.core.db.gen.entity.RoleMenuEntity;
import java.util.List;
public interface RoleMenuEntityMapper  extends BaseMapper<RoleMenuEntity>
{
    /**
     * 根据角色获取菜单id
     * @param roleId
     * @return
     */
    public List<RoleMenuEntity> selectConfigList(String roleId);
    /**
     * 新增
     * @param entity
     * @return
     */
    public int insertConfig(RoleMenuEntity entity);
    /**
     * 编辑
     * @param entity
     * @return
     */
    public int updateConfig(RoleMenuEntity entity);
    /**
     * 删除
     * @param Id
     * @return
     */
    public int deleteConfigById(String Id);
}
flower_city/src/main/java/com/dg/core/db/gen/mapper/SysUserMapper.java
@@ -18,6 +18,7 @@
public interface SysUserMapper extends BaseMapper<SysUser> {
    SysUser getUserById(Long id);
    SysUser getUserByAccount(String account);
    /**
@@ -25,7 +26,15 @@
     *
     * @return 参数配置信息
     */
    public List<SysUser> selectConfigList(IPage<SysUser> page, Integer state,@Param("userType") String userType);
    public List<SysUser> selectConfigList(IPage<SysUser> page, Integer state,
                                          @Param("userType") String userType,
                                          @Param("userName") String userName);
    SysUser selectData(@Param("userId") String userId,
                       @Param("phonenumber") String phonenumber,
                       @Param("loginName") String loginName);
    /**
@@ -58,5 +67,20 @@
     *
     * @return 结果
     */
    public int selectNum(String userType);
    public int selectNum(@Param("userType") String userType,@Param("userName") String userName);
    /**
     * 根据部门id及分类id获取导办用户
     *
     * @return 结果
     */
    List<SysUser> selectListByDepartmentId(@Param("list") List<String> list,@Param("classifyIdFront") String classifyIdFront,@Param("classifyIdAfter") String classifyIdAfter);
    /**
     * 查询用户列表(不分页)
     * @param userType 用户类型
     * @return 结果
     */
    List<SysUser>  queryList(@Param("userType") Integer userType,String keyWord);
}
flower_city/src/main/java/com/dg/core/db/gen/mapper/TransactionEventMapper.java
@@ -24,8 +24,20 @@
     * @return
     */
    public List<TransactionEvent> selectConfigList(IPage<TransactionEvent> page, Integer state,
                                                   @Param("matterAndUser") String matterAndUser,
                                                   @Param("classifyGrade") String classifyGrade);
                                                   @Param("keyword") String keyword,
                                                   @Param("classifyGrade") String classifyGrade,
                                                   @Param("ids") List<String> ids);
    /**
     * 导办事物列表 (部分也)
     * @param
     * @return
     */
    public List<TransactionEvent> selectConfigList(@Param("keyword") String keyword,
                                                   @Param("classifyGrade") String classifyGrade,
                                                   @Param("ids") List<String> ids);
    /**
     * 新增导办事务
@@ -53,8 +65,9 @@
     * @param
     * @return
     */
    public int countNum(@Param("matterAndUser") String matterAndUser,
                        @Param("classifyGrade") String classifyGrade);
    public int countNum(@Param("keyword") String keyword,
                        @Param("classifyGrade") String classifyGrade,
                        @Param("ids") List<String> ids);
    /**
     * 导办事务搜索
@@ -68,7 +81,14 @@
     * @param matterName
     * @return
     */
    List<TransactionEvent> queryMatterNameList(String matterName);
    List<TransactionEvent> queryMatterNameList(@Param("matterName") String matterName,@Param("classifyId") String classifyId);
    /**
     * 导办事务搜索(不带分页)(关联词)
     * @param associateNames
     * @return
     */
    List<TransactionEvent> queryAssociateNamesList(@Param("associateNames") String associateNames,@Param("classifyId") String classifyId);
    /**
     * 导办事务搜索统计数量
@@ -98,6 +118,15 @@
     */
    List<TransactionEvent> queryByClassifyIdList(@Param("classifyId") String classifyId,@Param("departmentId") Integer departmentId);
    /**
     *  根据分离查询导办事务(分页)
     * @param classifyId
     * @return
     *
     */
    List<TransactionEvent> queryByClassifyIdList(IPage<TransactionEvent> page, Integer state,@Param("classifyId") String classifyId,@Param("departmentId") Integer departmentId);
    /**
     *  查询导办事务求和
     * @return
@@ -110,6 +139,14 @@
     * @return
     */
    List<Search> selectSearch(IPage<Search> page, Integer state, String keyWord);
    /**
     * 根据关键词导办事务(部门也会统计进去)搜索(分页)(小程序)
     * @param keyWord
     * @return
     */
    List<Search>   selectSearchList(String keyWord);
    /**
     * 根据关键词导办事务(部门也会统计进去)搜索(不分页)
@@ -132,4 +169,33 @@
     * @return
     */
    List<Search> selectSearchAssociate( String keyWord);
    /**
     * 按ids查找导办事务列表
     * @param list
     * @return
     */
    List<TransactionEvent> selectListByIds(String[] list);
    /**
     * 根据部门判断是否有事项名称重复
     */
    String selectDataIfExist(@Param("departmentId") String departmentId,
                             @Param("matterName") String matterName);
    /**
     * 根据办事分类获取办事指南
     */
    List<String> selectclassifyId(String classifyId);
    /**
     * 根据关联词导办事务搜索搜索(不分页)(去重用于小程序)
     * @param keyWord
     * @return
     */
    List<Search>  selectSearchAssociateDistinct( String keyWord);
}
flower_city/src/main/java/com/dg/core/db/manual/mapper/util/HttpClientUtils.java
@@ -1,8 +1,8 @@
package com.dg.core.db.manual.mapper.util;
import com.dg.core.util.StringUtils;
import io.netty.channel.ConnectTimeoutException;
import org.apache.commons.io.IOUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.http.Consts;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
flower_city/src/main/java/com/dg/core/db/manual/mapper/util/MapperGenerator.java
@@ -9,7 +9,7 @@
public class MapperGenerator {
    @Value("spring.datasource.url")
    String url = "jdbc:mysql://10.8.0.74:3306/flower_city_automessage?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&allowMultiQueries=true&serverTimezone=GMT%2B8";
    String url = "jdbc:mysql://10.8.0.74:3306/huacheng_smart_life?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&allowMultiQueries=true&serverTimezone=GMT%2B8";
    @Value("spring.datasource.username")
    String username = "root";
    @Value("spring.datasource.password")
@@ -34,7 +34,7 @@
                })
                .strategyConfig(builder -> {
//                    builder.addInclude("");
                    builder.addInclude("agreement") // 设置需要生成的表名
                    builder.addInclude("automessage_sys_user_record") // 设置需要生成的表名
                            .addTablePrefix("t_", "c_"); // 设置过滤表前缀
                })
                .templateConfig(builder -> {
flower_city/src/main/java/com/dg/core/db/manual/pojo/AppletUserCount.java
New file
@@ -0,0 +1,22 @@
package com.dg.core.db.manual.pojo;
import com.dg.core.annotation.Authorization;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
@ApiModel("小程序用户统计结果")
@Data
public class AppletUserCount {
    @ApiModelProperty("日期,可以是月也可以是日")
    private String date;
    @ApiModelProperty("访问量")
    private Long visits;
    @ApiModelProperty("类型1.累计访问量2.本年访问量 3.本月访问量 4.今日访问量 5.昨日访问量")
    private Integer type;
}
flower_city/src/main/java/com/dg/core/db/manual/pojo/QueryResults.java
@@ -25,4 +25,7 @@
    @ApiModelProperty("联想词列表")
    private  List<KeywordEntity> keywordEntityList;
    @ApiModelProperty("关联联想词列表")
    private  List<KeywordEntity> keywordAssociationList;
}
flower_city/src/main/java/com/dg/core/db/manual/pojo/Search.java
@@ -1,12 +1,18 @@
package com.dg.core.db.manual.pojo;
import com.dg.core.db.gen.entity.TransactionEvent;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
@ApiModel("自公告门户网搜索数据")
@Data
public class Search {
    @ApiModelProperty("id")
    private  Integer id;
    @ApiModelProperty("搜索结果标题")
    private  String title;
@@ -16,4 +22,14 @@
    @ApiModelProperty("浏览次数")
    private  Integer views;
    @ApiModelProperty("分类id")
    private  Integer classifyId;
    @ApiModelProperty("搜索数据类型1.办事部门2.办事指南 3.推荐办事指南4.分类")
    private  Integer type;
    @ApiModelProperty("办事指南")
    private List<TransactionEvent> transactionEventList;
}
flower_city/src/main/java/com/dg/core/exception/base/BaseException.java
File was deleted
flower_city/src/main/java/com/dg/core/exception/file/BaseException.java
New file
@@ -0,0 +1,83 @@
package com.dg.core.exception.file;
import org.apache.commons.lang3.StringUtils;
/**
 * 基础异常
 *
 * @author
 */
public class BaseException extends RuntimeException {
    private static final long serialVersionUID = 1L;
    /**
     * 所属模块
     */
    private String module;
    /**
     * 错误码
     */
    private String code;
    /**
     * 错误码对应的参数
     */
    private Object[] args;
    /**
     * 错误消息
     */
    private String defaultMessage;
    public BaseException(String module, String code, Object[] args, String defaultMessage) {
        this.module = module;
        this.code = code;
        this.args = args;
        this.defaultMessage = defaultMessage;
    }
    public BaseException(String module, String code, Object[] args) {
        this(module, code, args, null);
    }
    public BaseException(String module, String defaultMessage) {
        this(module, null, null, defaultMessage);
    }
    public BaseException(String code, Object[] args) {
        this(null, code, args, null);
    }
    public BaseException(String defaultMessage) {
        this(null, null, null, defaultMessage);
    }
    @Override
    public String getMessage() {
        String message = null;
        if (!StringUtils.isEmpty(code)) {
            message = MessageUtils.message(code, args);
        }
        if (message == null) {
            message = defaultMessage;
        }
        return message;
    }
    public String getModule() {
        return module;
    }
    public String getCode() {
        return code;
    }
    public Object[] getArgs() {
        return args;
    }
    public String getDefaultMessage() {
        return defaultMessage;
    }
}
flower_city/src/main/java/com/dg/core/exception/file/FileException.java
@@ -1,7 +1,6 @@
package com.dg.core.exception.file;
import com.dg.core.exception.base.BaseException;
/**
 * 文件信息异常类
flower_city/src/main/java/com/dg/core/exception/file/InvalidExtensionException.java
@@ -1,6 +1,8 @@
package com.dg.core.exception.file;
import org.apache.commons.fileupload.FileUploadException;
import org.apache.tomcat.util.http.fileupload.FileUploadException;
import java.util.Arrays;
flower_city/src/main/java/com/dg/core/exception/file/MessageUtils.java
New file
@@ -0,0 +1,25 @@
package com.dg.core.exception.file;
import org.springframework.context.MessageSource;
import org.springframework.context.i18n.LocaleContextHolder;
/**
 * 获取i18n资源文件
 *
 * @author ruoyi
 */
public class MessageUtils {
    /**
     * 根据消息键和参数 获取消息 委托给spring messageSource
     *
     * @param code
     *            消息键
     * @param args
     *            参数
     * @return 获取国际化翻译值
     */
    public static String message(String code, Object... args) {
        MessageSource messageSource = SpringUtils.getBean(MessageSource.class);
        return messageSource.getMessage(code, args, LocaleContextHolder.getLocale());
    }
}
flower_city/src/main/java/com/dg/core/exception/file/SpringUtils.java
New file
@@ -0,0 +1,136 @@
package com.dg.core.exception.file;
import lombok.extern.slf4j.Slf4j;
import org.springframework.aop.framework.AopContext;
import org.springframework.beans.BeansException;
import org.springframework.beans.factory.NoSuchBeanDefinitionException;
import org.springframework.beans.factory.config.BeanFactoryPostProcessor;
import org.springframework.beans.factory.config.ConfigurableListableBeanFactory;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
import org.springframework.stereotype.Component;
import org.springframework.util.ObjectUtils;
/**
 * spring工具类 方便在非spring管理环境中获取bean
 *
 * @author huanghongfa
 */
@Slf4j
@Component
public final class SpringUtils implements BeanFactoryPostProcessor, ApplicationContextAware {
    /** Spring应用上下文环境 */
    private static ConfigurableListableBeanFactory beanFactory;
    private static ApplicationContext applicationContext;
    /**
     * 获取对象
     *
     * @param name
     * @return Object 一个以所给名字注册的bean的实例
     * @throws BeansException
     *
     */
    @SuppressWarnings("unchecked")
    public static <T> T getBean(String name) throws BeansException {
        return (T)beanFactory.getBean(name);
    }
    /**
     * 获取类型为requiredType的对象
     *
     * @param clz
     * @return
     * @throws BeansException
     *
     */
    public static <T> T getBean(Class<T> clz) throws BeansException {
        T result = beanFactory.getBean(clz);
        return result;
    }
    /**
     * 如果BeanFactory包含一个与所给名称匹配的bean定义,则返回true
     *
     * @param name
     * @return boolean
     */
    public static boolean containsBean(String name) {
        return beanFactory.containsBean(name);
    }
    /**
     * 判断以给定名字注册的bean定义是一个singleton还是一个prototype。 如果与给定名字相应的bean定义没有被找到,将会抛出一个异常(NoSuchBeanDefinitionException)
     *
     * @param name
     * @return boolean
     * @throws NoSuchBeanDefinitionException
     *
     */
    public static boolean isSingleton(String name) throws NoSuchBeanDefinitionException {
        return beanFactory.isSingleton(name);
    }
    /**
     * @param name
     * @return Class 注册对象的类型
     * @throws NoSuchBeanDefinitionException
     *
     */
    public static Class<?> getType(String name) throws NoSuchBeanDefinitionException {
        return beanFactory.getType(name);
    }
    /**
     * 如果给定的bean名字在bean定义中有别名,则返回这些别名
     *
     * @param name
     * @return
     * @throws NoSuchBeanDefinitionException
     *
     */
    public static String[] getAliases(String name) throws NoSuchBeanDefinitionException {
        return beanFactory.getAliases(name);
    }
    /**
     * 获取aop代理对象
     *
     * @param invoker
     * @return
     */
    @SuppressWarnings("unchecked")
    public static <T> T getAopProxy(T invoker) {
        return (T)AopContext.currentProxy();
    }
    /**
     * 获取当前的环境配置,无配置返回null
     *
     * @return 当前的环境配置
     */
    public static String[] getActiveProfiles() {
        return applicationContext.getEnvironment().getActiveProfiles();
    }
    /**
     * 获取当前的环境配置,当有多个环境配置时,只获取第一个
     *
     * @return 当前的环境配置
     */
    public static String getActiveProfile() {
        final String[] activeProfiles = getActiveProfiles();
        return !ObjectUtils.isEmpty(activeProfiles) ? activeProfiles[0] : null;
    }
    @Override
    public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException {
        SpringUtils.beanFactory = beanFactory;
    }
    @Override
    public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
        SpringUtils.applicationContext = applicationContext;
    }
}
flower_city/src/main/java/com/dg/core/file/Constants.java
File was deleted
flower_city/src/main/java/com/dg/core/file/FileTypeUploadUtils.java
New file
@@ -0,0 +1,94 @@
package com.dg.core.file;
import com.dg.core.exception.file.FileSizeLimitExceededException;
import com.dg.core.exception.file.InvalidExtensionException;
import org.apache.commons.io.FilenameUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.web.multipart.MultipartFile;
import java.util.Objects;
/**
 * 文件上传工具类
 *
 * @author
 */
public class FileTypeUploadUtils {
    /**
     * 默认大小 50M
     */
    public static final long DEFAULT_MAX_SIZE = 50 * 1024 * 1024;
    /**
     * 默认的文件名最大长度 100
     */
    public static final int DEFAULT_FILE_NAME_LENGTH = 100;
    /**
     * 文件大小校验
     *
     * @param file 上传的文件
     * @return
     * @throws FileSizeLimitExceededException 如果超出最大大小
     * @throws InvalidExtensionException
     */
    public static final void assertAllowed(MultipartFile file, String[] allowedExtension)
            throws FileSizeLimitExceededException, InvalidExtensionException {
        long size = file.getSize();
        if (size > DEFAULT_MAX_SIZE) {
            throw new FileSizeLimitExceededException(DEFAULT_MAX_SIZE / 1024 / 1024);
        }
        String fileName = file.getOriginalFilename();
        String extension = getExtension(file);
        if (allowedExtension != null && !isAllowedExtension(extension, allowedExtension)) {
            if (allowedExtension == MimeTypeUtils.IMAGE_EXTENSION) {
                throw new InvalidExtensionException.InvalidImageExtensionException(allowedExtension, extension,
                        fileName);
            } else if (allowedExtension == MimeTypeUtils.FLASH_EXTENSION) {
                throw new InvalidExtensionException.InvalidFlashExtensionException(allowedExtension, extension,
                        fileName);
            } else if (allowedExtension == MimeTypeUtils.MEDIA_EXTENSION) {
                throw new InvalidExtensionException.InvalidMediaExtensionException(allowedExtension, extension,
                        fileName);
            } else if (allowedExtension == MimeTypeUtils.VIDEO_EXTENSION) {
                throw new InvalidExtensionException.InvalidVideoExtensionException(allowedExtension, extension,
                        fileName);
            } else {
                throw new InvalidExtensionException(allowedExtension, extension, fileName);
            }
        }
    }
    /**
     * 判断MIME类型是否是允许的MIME类型
     *
     * @param extension
     * @param allowedExtension
     * @return
     */
    public static final boolean isAllowedExtension(String extension, String[] allowedExtension) {
        for (String str : allowedExtension) {
            if (str.equalsIgnoreCase(extension)) {
                return true;
            }
        }
        return false;
    }
    /**
     * 获取文件名的后缀
     *
     * @param file 表单文件
     * @return 后缀名
     */
    public static final String getExtension(MultipartFile file) {
        String extension = FilenameUtils.getExtension(file.getOriginalFilename());
        if (StringUtils.isEmpty(extension)) {
            extension = MimeTypeUtils.getExtension(Objects.requireNonNull(file.getContentType()));
        }
        return extension;
    }
}
flower_city/src/main/java/com/dg/core/file/FileTypeUtils.java
File was deleted
flower_city/src/main/java/com/dg/core/file/FileUploadUtils.java
File was deleted
flower_city/src/main/java/com/dg/core/file/FileUtils.java
File was deleted
flower_city/src/main/java/com/dg/core/file/FtpConstants.java
New file
@@ -0,0 +1,38 @@
package com.dg.core.file;
/**
 * @program: springcloud_k8s_panzhihuazhihuishequ
 * @description: ftp
 * @author: huang.hongfa weixin hhf9596 qq 959656820
 * @create: 2020-11-30 13:39
 **/
public class FtpConstants {
    /**
     * ftp站点
     */
    public static final String FTPHOST = "47.104.148.185";
    /**
     * 端口号
     */
    public static final Integer FTPPORT = 22;
    /**
     * ftp访问用户名
     */
    public static final String FTPUSERNAME = "root";
    /**
     * ftp访问密码
     */
    public static final String FTPPASSWORD = "evanN7F2K5M6";
    /**
     * excel模板
     */
    public static final String FTPFILEPATH_MUBAN = "/mnt/data/ftp/muban/";
    /**
     * 党员保存
     */
    public static final String FTPFILEPATH_IDCARD = "/mnt/data/ftp/idcard/";
    /**
     * http访问路径
     */
    public static final String HTTP_URL = "http://image.panzhihua.nhys.cdnhxx.com/";
}
flower_city/src/main/java/com/dg/core/file/ImageUtils.java
File was deleted
flower_city/src/main/java/com/dg/core/file/MimeTypeUtils.java
@@ -3,7 +3,7 @@
/**
 * 媒体类型工具类
 * 
 * @author ruoyi
 * @author
 */
public class MimeTypeUtils
{
flower_city/src/main/java/com/dg/core/file/SFTPUtil.java
New file
@@ -0,0 +1,374 @@
package com.dg.core.file;
import com.jcraft.jsch.*;
import org.apache.commons.io.IOUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.*;
import java.util.Properties;
import java.util.Vector;
/**
 * @version 1.0.0
 * @ClassName: SFTPUtil
 * @Description: sftp连接工具类
 */
public class SFTPUtil {
    private transient Logger log = LoggerFactory.getLogger(this.getClass());
    private ChannelSftp sftp;
    private Session session;
    // FTP 登录用户名
    private String userName;
    // FTP 登录密码
    private String password;
    // FTP 服务器地址IP地址
    private String host;
    // FTP 端口
    private int port;
    /**
     * 构造基于密码认证的sftp对象
     *
     * @param userName
     * @param password
     * @param host
     * @param port
     */
    public SFTPUtil(String userName, String password, String host, int port) {
        this.userName = userName;
        this.password = password;
        this.host = host;
        this.port = port;
    }
    public SFTPUtil() {
        this.userName = FtpConstants.FTPUSERNAME;
        this.password = FtpConstants.FTPPASSWORD;
        this.host = FtpConstants.FTPHOST;
        this.port = FtpConstants.FTPPORT;
    }
    public static void main(String[] args) throws SftpException, IOException {
        SFTPUtil sftp = new SFTPUtil("root", "evanN7F2K5M6", "47.104.148.185", 22);
        sftp.login();
        File file = new File("F:\\settings.xml");
        InputStream is = new FileInputStream(file);
        // 多级目录创建并上传
        sftp.uploadMore("/mnt/data/ftp/ss", "settings.xml", is);
        sftp.logout();
    }
    /**
     * 连接sftp服务器
     *
     * @throws Exception
     */
    public void login() {
        try {
            JSch jsch = new JSch();
            log.info("sftp connect by host:{} username:{}", host, userName);
            session = jsch.getSession(userName, host, port);
            log.info("Session is build");
            if (password != null) {
                session.setPassword(password);
            }
            Properties config = new Properties();
            config.put("StrictHostKeyChecking", "no");
            session.setConfig(config);
            session.connect();
            log.info("Session is connected");
            Channel channel = session.openChannel("sftp");
            channel.connect();
            log.info("channel is connected");
            sftp = (ChannelSftp)channel;
            log.info(String.format("sftp server host:[%s] port:[%s] is connect successfull", host, port));
        } catch (JSchException e) {
            log.error("Cannot connect to specified sftp server : {}:{} \n Exception message is: {}", host, port,
                e.getMessage());
        }
    }
    /**
     * 关闭连接 server
     */
    public void logout() {
        if (sftp != null) {
            if (sftp.isConnected()) {
                sftp.disconnect();
                log.info("sftp is closed already");
            }
        }
        if (session != null) {
            if (session.isConnected()) {
                session.disconnect();
                log.info("sshSession is closed already");
            }
        }
    }
    /**
     * 递归根据路径创建文件夹
     *
     * @param dirs
     *            根据 / 分隔后的数组文件夹名称
     * @param tempPath
     *            拼接路径
     * @param length
     *            文件夹的格式
     * @param index
     *            数组下标
     * @return
     */
    public void mkdirDir(String[] dirs, String tempPath, int length, int index) {
        // 以"/a/b/c/d"为例按"/"分隔后,第0位是"";顾下标从1开始
        index++;
        if (index < length) {
            // 目录不存在,则创建文件夹
            tempPath += "/" + dirs[index];
        }
        try {
            log.info("检测目录[" + tempPath + "]");
            sftp.cd(tempPath);
            if (index < length) {
                mkdirDir(dirs, tempPath, length, index);
            }
        } catch (SftpException ex) {
            log.warn("创建目录[" + tempPath + "]");
            try {
                sftp.mkdir(tempPath);
                sftp.cd(tempPath);
            } catch (SftpException e) {
                e.printStackTrace();
                log.error("创建目录[" + tempPath + "]失败,异常信息[" + e.getMessage() + "]");
            }
            log.info("进入目录[" + tempPath + "]");
            mkdirDir(dirs, tempPath, length, index);
        }
    }
    /**
     * 将输入流的数据上传到sftp作为文件(多层目录)
     *
     * @param directory
     *            上传到该目录(多层目录)
     * @param sftpFileName
     *            sftp端文件名
     * @param input
     *            输入流
     * @throws SftpException
     * @throws Exception
     */
    public void uploadMore(String directory, String sftpFileName, InputStream input) throws SftpException {
        try {
            sftp.cd(directory);
        } catch (SftpException e) {
            // 目录不存在,则创建文件夹
            String[] dirs = directory.split("/");
            String tempPath = "";
            int index = 0;
            mkdirDir(dirs, tempPath, dirs.length, index);
        }
        sftp.put(input, sftpFileName);// 上传文件
    }
    /**
     * 将输入流的数据上传到sftp作为文件
     *
     * @param directory
     *            上传到该目录(单层目录)
     * @param sftpFileName
     *            sftp端文件名
     * @param input
     *            输入流
     * @throws SftpException
     * @throws Exception
     */
    public void upload(String directory, String sftpFileName, InputStream input) throws SftpException {
        try {
            sftp.cd(directory);
        } catch (SftpException e) {
            log.warn("directory is not exist");
            sftp.mkdir(directory);
            sftp.cd(directory);
        }
        sftp.put(input, sftpFileName);
        log.info("file:{} is upload successful", sftpFileName);
    }
    /**
     * 上传单个文件
     *
     * @param directory
     *            上传到sftp目录
     * @param uploadFile
     *            要上传的文件,包括路径
     * @throws FileNotFoundException
     * @throws SftpException
     * @throws Exception
     */
    public void upload(String directory, String uploadFile) throws FileNotFoundException, SftpException {
        File file = new File(uploadFile);
        upload(directory, file.getName(), new FileInputStream(file));
    }
    /**
     * 将byte[]上传到sftp,作为文件。注意:从String生成byte[]是,要指定字符集。
     *
     * @param directory
     *            上传到sftp目录
     * @param sftpFileName
     *            文件在sftp端的命名
     * @param byteArr
     *            要上传的字节数组
     * @throws SftpException
     * @throws Exception
     */
    public void upload(String directory, String sftpFileName, byte[] byteArr) throws SftpException {
        upload(directory, sftpFileName, new ByteArrayInputStream(byteArr));
    }
    /**
     * 将字符串按照指定的字符编码上传到sftp
     *
     * @param directory
     *            上传到sftp目录
     * @param sftpFileName
     *            文件在sftp端的命名
     * @param dataStr
     *            待上传的数据
     * @param charsetName
     *            sftp上的文件,按该字符编码保存
     * @throws UnsupportedEncodingException
     * @throws SftpException
     * @throws Exception
     */
    public void upload(String directory, String sftpFileName, String dataStr, String charsetName)
        throws UnsupportedEncodingException, SftpException {
        upload(directory, sftpFileName, new ByteArrayInputStream(dataStr.getBytes(charsetName)));
    }
    /**
     * 下载文件
     *
     * @param directory
     *            下载目录
     * @param downloadFile
     *            下载的文件
     * @param saveFile
     *            存在本地的路径
     * @throws SftpException
     * @throws FileNotFoundException
     * @throws Exception
     */
    public void download(String directory, String downloadFile, String saveFile)
        throws SftpException, FileNotFoundException {
        if (directory != null && !"".equals(directory)) {
            sftp.cd(directory);
        }
        File file = new File(saveFile);
        sftp.get(downloadFile, new FileOutputStream(file));
        log.info("file:{} is download successful", downloadFile);
    }
    /**
     * 下载文件
     *
     * @param directory
     *            下载目录
     * @param downloadFile
     *            下载的文件名
     * @return 字节数组
     * @throws SftpException
     * @throws IOException
     * @throws Exception
     */
    public byte[] download(String directory, String downloadFile) throws SftpException, IOException {
        if (directory != null && !"".equals(directory)) {
            sftp.cd(directory);
        }
        InputStream is = sftp.get(downloadFile);
        byte[] fileData = IOUtils.toByteArray(is);
        log.info("file:{} is download successful", downloadFile);
        return fileData;
    }
    /**
     * 下载文件
     *
     * @param directory
     *            下载目录
     * @param downloadFile
     *            下载的文件名
     * @return 字节数组
     * @throws SftpException
     * @throws IOException
     * @throws Exception
     */
    public InputStream downloadInputStream(String directory, String downloadFile) throws SftpException, IOException {
        if (directory != null && !"".equals(directory)) {
            sftp.cd(directory);
        }
        InputStream is = sftp.get(downloadFile);
        // byte[] fileData = IOUtils.toByteArray(is);
        // log.info("file:{} is download successful", downloadFile);
        return is;
    }
    /**
     * 删除文件
     *
     * @param directory
     *            要删除文件所在目录
     * @param deleteFile
     *            要删除的文件
     * @throws SftpException
     * @throws Exception
     */
    public void delete(String directory, String deleteFile) throws SftpException {
        sftp.cd(directory);
        sftp.rm(deleteFile);
    }
    /**
     * 列出目录下的文件
     *
     * @param directory
     *            要列出的目录
     * @return
     * @throws SftpException
     */
    public Vector<?> listFiles(String directory) throws SftpException {
        return sftp.ls(directory);
    }
    /**
     * 判断文件或者目录是否存在
     *
     * @param path
     *            目录或者文件的路径
     * @return 存在结果
     */
    public boolean isExistDir(String path) {
        boolean isExist = false;
        try {
            SftpATTRS sftpATTRS = sftp.lstat(path);
            isExist = true;
            return sftpATTRS.isDir();
        } catch (Exception e) {
            if (e.getMessage().toLowerCase().equals("no such file")) {
                isExist = false;
            }
        }
        return isExist;
    }
}
flower_city/src/main/java/com/dg/core/interceptor/AuthorizationInterceptor.java
@@ -2,8 +2,11 @@
import com.dg.core.Constant;
import com.dg.core.annotation.Authorization;
import com.dg.core.db.gen.entity.HuaChengSysUser;
import com.dg.core.db.gen.entity.SysUser;
import com.dg.core.manager.TokenManager;
import com.dg.core.service.IHuaChengSysUserService;
import com.dg.core.service.ISysUserRecordService;
import org.apache.catalina.connector.ResponseFacade;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
@@ -15,10 +18,7 @@
import javax.servlet.http.HttpServletResponse;
import java.lang.reflect.Method;
import java.nio.charset.StandardCharsets;
import java.text.SimpleDateFormat;
import java.time.ZoneId;
import java.util.Calendar;
import java.util.Date;
import java.time.LocalDateTime;
/**
 * 自定义拦截器,判断此次请求是否有权限
@@ -31,9 +31,17 @@
    @Autowired
    private TokenManager manager;
    @Autowired
    com.dg.core.service.ISysUserService IUserService;
    /**
     * 花城e+用户接口
     */
    @Autowired
    IHuaChengSysUserService iHuaChengSysUserService;
    @Autowired
    private ISysUserRecordService iSysUserRecordService;
    @Override
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
@@ -48,24 +56,70 @@
        //从header中得到token
        String token = request.getHeader(Constant.AUTHORIZATION);
        if (manager.checkToken(token)) {
            //如果token验证成功,权限检查通过,将token对应的用户id存在request中,便于之后注入
            request.setAttribute(Constant.CURRENT_USER_ID, manager.getUserId(token));
            SysUser ss = IUserService.getUserById(manager.getUserId(token));
        //花城token
        String HCtoken = request.getHeader(Constant.HCAUTHORIZATION);
            return true;
        if(StringUtils.isEmpty(token))
        {
            if (manager.checkHCToken(HCtoken)) {
                //如果token验证成功,权限检查通过,将token对应的用户id存在request中,便于之后注入
                request.setAttribute(Constant.CURRENT_USER_ID, manager.getHCUserId(HCtoken));
                System.out.println("花城用户id:"+manager.getHCUserId(HCtoken));
                HuaChengSysUser huaChengSysUser=iHuaChengSysUserService.selectData(manager.getHCUserId(HCtoken)+"","","");
                if(huaChengSysUser!=null && !StringUtils.isEmpty(huaChengSysUser.getUserId()) )
                {
                    SysUser sysUser = IUserService.selectData(null,huaChengSysUser.getPhone(),null);
                    if(sysUser==null)
                    {
                        //本地没有此用户  新用户
                        SysUser newSysUser=new SysUser();
                        //默认  1系统后台用户
                        newSysUser.setUserType("3");
                        newSysUser.setPhonenumber(huaChengSysUser.getPhone());
                        newSysUser.setUserId(huaChengSysUser.getUserId());
                        newSysUser.setUserName(huaChengSysUser.getNickName());
                        newSysUser.setSex(huaChengSysUser.getSex());
                        newSysUser.setAvatar(huaChengSysUser.getImageUrl());
                        newSysUser.setCreateTime(LocalDateTime.now());
                        newSysUser.setUpdateTime(LocalDateTime.now());
                        newSysUser.setOpenid(huaChengSysUser.getOpenid());
                        IUserService.insertConfig(newSysUser);
                    }
                    //新增浏览记录
                    iSysUserRecordService.add(sysUser);
                    //删除因为token问题产出的重复脏数据
                    iSysUserRecordService.deleteDistinct();
                }
                return true;
            }
        }
        else
        {
            if (manager.checkToken(token)) {
                //如果token验证成功,权限检查通过,将token对应的用户id存在request中,便于之后注入
                request.setAttribute(Constant.CURRENT_USER_ID, manager.getUserId(token));
//            SysUser ss = IUserService.selectData(manager.getUserId(token)+"");
                return true;
            }
        }
        //如果验证token失败,并且方法或类注明了Authorization,返回401错误
        if (method.getAnnotation(Authorization.class) != null || bean.getClass().getAnnotation(Authorization.class) != null) {
            String reponse = "{\"result\": 449, \"message\": \"Overdue token\"}";
            response.setStatus(200);
            response.setCharacterEncoding(StandardCharsets.UTF_8.toString());
            ResponseFacade facade = (ResponseFacade) response;
            facade.setContentLength(reponse.getBytes(StandardCharsets.UTF_8).length);
            facade.getWriter().write(reponse);
            return false;
        }
//        if(!StringUtils.isEmpty(token))
//        {
            //如果验证token失败,并且方法或类注明了Authorization,返回401错误
            if (method.getAnnotation(Authorization.class) != null ||
                    bean.getClass().getAnnotation(Authorization.class) != null)
            {
                String reponse = "{\"result\": 449, \"message\": \"Overdue token\"}";
                response.setStatus(200);
                response.setCharacterEncoding(StandardCharsets.UTF_8.toString());
                ResponseFacade facade = (ResponseFacade) response;
                facade.setContentLength(reponse.getBytes(StandardCharsets.UTF_8).length);
                facade.getWriter().write(reponse);
                return false;
            }
//        }
        return true;
    }
}
flower_city/src/main/java/com/dg/core/manager/JWTTokenUtil.java
New file
@@ -0,0 +1,170 @@
package com.dg.core.manager;
import com.dg.core.db.gen.entity.HuaChengSysUser;
import io.jsonwebtoken.Claims;
import io.jsonwebtoken.Jwts;
import io.jsonwebtoken.SignatureAlgorithm;
import org.springframework.stereotype.Component;
import java.io.Serializable;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
/**
 * token验证处理
 *
 * @author ruoyi
 */
@Component
public class JWTTokenUtil implements Serializable {
    /**
     * 从数据声明生成令牌
     *
     * @param claims
     *            数据声明
     * @return 令牌
     */
    private static String generateToken(Map<String, Object> claims) {
        Date expirationDate = new Date(System.currentTimeMillis() + TokenConstant.EXPIRETIME_LONG * 60 * 1000 * 72);
        return Jwts.builder().setClaims(claims).setExpiration(expirationDate)
            .signWith(SignatureAlgorithm.HS512, TokenConstant.SECRET).compact();
    }
    /**
     * 生成刷新token
     *
     * @param claims
     *            tokenbody
     * @return refreshtoken
     */
    private static String generateTokenRefreshToken(Map<String, Object> claims) {
        Date expirationDate = new Date(System.currentTimeMillis() + TokenConstant.EXPIRETIME_REFRESH * 60 * 60 * 1000);
        return Jwts.builder().setClaims(claims).setExpiration(expirationDate)
            .signWith(SignatureAlgorithm.HS512, TokenConstant.SECRET).compact();
    }
    /**
     * 从令牌中获取数据声明
     *
     * @param token
     *            令牌
     * @return 数据声明
     */
    public static Claims getClaimsFromToken(String token) {
        Claims claims;
        try {
            claims = Jwts.parser().setSigningKey(TokenConstant.SECRET).parseClaimsJws(token).getBody();
        } catch (Exception e) {
            claims = null;
        }
        return claims;
    }
    /**
     * 生成令牌
     *
     * @param loginUserInfoVO
     *            用户
     * @return 令牌
     */
    public static String generateToken(HuaChengSysUser loginUserInfoVO) {
        Map<String, Object> claims = new HashMap<>(2);
        claims.put("sub", loginUserInfoVO.getUserId());
        claims.put("created", new Date());
        claims.put("type", loginUserInfoVO.getType());
        return generateToken(claims);
    }
    /**
     * 从令牌中获取用户名
     *
     * @param token
     *            令牌
     * @return 用户名
     */
    public static String getUsernameFromToken(String token) {
        String username;
        try {
            Claims claims = getClaimsFromToken(token);
            username = claims.getSubject();
        } catch (Exception e) {
            username = null;
        }
        return username;
    }
    /**
     * 判断令牌是否过期
     *
     * @param token
     *            令牌
     * @return 是否过期
     */
    public static Boolean isTokenExpired(String token) {
        try {
            Claims claims = getClaimsFromToken(token);
            Date expiration = claims.getExpiration();
            return expiration.before(new Date());
        } catch (Exception e) {
            return true;
        }
    }
    /**
     * 刷新令牌
     *
     * @param token
     *            原令牌
     * @return 新令牌
     */
    public static String refreshToken(String token) {
        String refreshedToken;
        try {
            Claims claims = getClaimsFromToken(token);
            claims.put("created", new Date());
            refreshedToken = generateToken(claims);
        } catch (Exception e) {
            refreshedToken = null;
        }
        return refreshedToken;
    }
    /**
     * 验证令牌
     *
     * @param token
     *            令牌
     * @param loginUserInfoVO
     *            用户
     * @return 是否有效
     */
    public static Boolean validateToken(String token, HuaChengSysUser loginUserInfoVO) {
        String username = getUsernameFromToken(token);
        return (username.equals(loginUserInfoVO.getUserId()) && !isTokenExpired(token));
    }
    public static void main(String[] args) {
        Claims claims = JWTTokenUtil.getClaimsFromToken(
            "eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOjIsInR5cGUiOjEsImV4cCI6MTYwNjM1NzkzOSwiY3JlYXRlZCI6MTYwNjM1NjEzOTEzN30.zIj31TLHk4B9F45OszrJWfOlhZL5CWviP2RgsFP6LZuci6MlPn0iVbekioP01DRsu59mWd5FMyhd9WLvMtfxMg");
        Boolean tokenExpired = JWTTokenUtil.isTokenExpired(
            "eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOjIsInR5cGUiOjEsImV4cCI6MTYwNjM2MDQzNSwiY3JlYXRlZCI6MTYwNjM1ODYzNTI3MX0.7R3SG6hu-sr_KiPpgepubl_1FdaooCNJ0URHWv6Jynr7m8JIar2kUAnhHfWOfHrNILQb5Q-nqxceXdavcuVOXg");
        System.out.println(claims);
    }
    /**
     * 生成刷新token
     *
     * @param loginUserInfoVO
     *            登录用户基本信息
     * @return refreshtoken
     */
    public static String generateRefeshToken(HuaChengSysUser loginUserInfoVO) {
        Map<String, Object> claims = new HashMap<>(2);
        claims.put("sub", loginUserInfoVO.getUserId());
        claims.put("created", new Date());
        claims.put("type", loginUserInfoVO.getType());
        return generateTokenRefreshToken(claims);
    }
}
flower_city/src/main/java/com/dg/core/manager/RedisTokenManager.java
@@ -1,12 +1,15 @@
package com.dg.core.manager;
import com.dg.core.Constant;
import io.jsonwebtoken.Claims;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.core.script.DigestUtils;
import org.springframework.data.redis.serializer.JdkSerializationRedisSerializer;
import org.springframework.stereotype.Component;
import org.springframework.util.ObjectUtils;
import java.util.UUID;
import java.util.concurrent.TimeUnit;
@@ -15,8 +18,8 @@
 * 通过Redis存储和验证token的实现类
 */
@Component
public class RedisTokenManager implements TokenManager {
public class RedisTokenManager implements TokenManager
{
    private RedisTemplate<String, String> redis;
    @Qualifier("redisTemplate")
@@ -28,7 +31,7 @@
    }
    @Override
    public String createToken(long userId, long userRole) {
    public String createToken(String userId, String userRole) {
        //使用uuid作为源token
        String uuid = UUID.randomUUID().toString().replace("-", "");
        String token = DigestUtils.sha1DigestAsHex(uuid + userId + "e23ktjsdf") + "-" + userRole;
@@ -38,9 +41,8 @@
        return token;
    }
    public boolean checkToken(String token) {
        if (token == null) {
        if (StringUtils.isEmpty(token)) {
            return false;
        }
        String userId = redis.boundValueOps(token).get();
@@ -49,6 +51,30 @@
        }
        //如果验证成功,说明此用户进行了一次有效操作,延长token的过期时间
        redis.boundValueOps(token).expire(Constant.TOKEN_EXPIRES_HOUR, TimeUnit.HOURS);
        return true;
    }
    /**
     * 验证花城token
     * @param token
     * @return
     */
    @Override
    public boolean checkHCToken(String token) {
        if (StringUtils.isEmpty(token)) {
            return false;
        }
        // token解析
        Claims claims = JWTTokenUtil.getClaimsFromToken(token);
        if (ObjectUtils.isEmpty(claims)) {
            return false;
        }
        String userId = claims.getSubject();
        if (ObjectUtils.isEmpty(userId))
        {
            return false;
        }
        return true;
    }
@@ -62,13 +88,36 @@
        return Long.parseLong(userId);
    }
    /**
     * 获取花城e+的 UserId
     * @param token
     * @return
     */
    @Override
    public long getHCUserId(String token) {
        if (token == null) {
            return -1;
        }
        // token解析
        Claims claims = JWTTokenUtil.getClaimsFromToken(token);
        if (ObjectUtils.isEmpty(claims)) {
            return -1;
        }
        String userId = claims.getSubject();
        if (ObjectUtils.isEmpty(userId))
        {
            return -1;
        }
        return Long.parseLong(userId);
    }
    public void deleteToken(String token) {
        redis.delete(token);
    }
    @Override
    public String getTokenByUserId(long userId) {
        return redis.boundValueOps(String.valueOf(userId)).get();
    public String getTokenByUserId(String userId) {
        return redis.boundValueOps(userId).get();
    }
}
flower_city/src/main/java/com/dg/core/manager/TokenConstant.java
New file
@@ -0,0 +1,25 @@
package com.dg.core.manager;
/**
 * @program: springcloud_k8s_panzhihuazhihuishequ
 * @description: token
 * @author: huang.hongfa weixin hhf9596 qq 959656820
 * @create: 2020-11-24 14:44
 **/
public class TokenConstant {
    public static final String TOKEN_HEADER = "Authorization";
    public static final String TOKEN_LOGOUT = "token_logout";
    public static final String TOKEN_PRE = "Bearer ";
    public static final String TOKEN_USERINFO = "token_userinfo";
    /**
     * 30分钟
     */
    public static final int EXPIRETIME = 300;
    public static final Long EXPIRETIME_LONG = 300L;
    public static final String SECRET = "UTivpbn%n9O!KnnL";
    /**
     * 24小时
     */
    public static final int EXPIRETIME_REFRESH = 24;
}
flower_city/src/main/java/com/dg/core/manager/TokenManager.java
@@ -7,7 +7,7 @@
     * @param userId 指定用户的id
     * @return 生成的token
     */
    public String createToken(long userId, long role);
    public String createToken(String userId, String role);
    /**
     * 检查token是否有效
@@ -17,9 +17,17 @@
     */
    public boolean checkToken(String token);
    /**
     * 检查花城token是否有效
     * @param token
     * @return
     */
    public boolean checkHCToken(String token);
    public long getUserId(String token);
    public long getHCUserId(String token);
    public void deleteToken(String token);
    public String getTokenByUserId(long userId);
    public String getTokenByUserId(String userId);
}
flower_city/src/main/java/com/dg/core/resolvers/CurrentUserMethodArgumentResolver.java
@@ -2,7 +2,9 @@
import com.dg.core.Constant;
import com.dg.core.annotation.CurrentUser;
import com.dg.core.db.gen.entity.HuaChengSysUser;
import com.dg.core.db.gen.entity.SysUser;
import com.dg.core.service.IHuaChengSysUserService;
import com.dg.core.service.ISysUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.core.MethodParameter;
@@ -23,6 +25,12 @@
    @Autowired
    private ISysUserService userService;
    /**
     * 花城e+用户接口
     */
    @Autowired
    IHuaChengSysUserService iHuaChengSysUserService;
    @Override
    public boolean supportsParameter(MethodParameter parameter) {
        //如果参数类型是User并且有CurrentUser注解则支持
@@ -39,8 +47,23 @@
        Long currentUserId = (Long) webRequest.getAttribute(Constant.CURRENT_USER_ID, RequestAttributes.SCOPE_REQUEST);
        if (currentUserId != null) {
            //从数据库中查询并返回
            return userService.getUserById(currentUserId);
            SysUser sysUser=userService.selectData(currentUserId+"",null,null);
            if(sysUser!=null)
            {
                return sysUser;
            }
            HuaChengSysUser huaChengSysUser=iHuaChengSysUserService.selectData(currentUserId+"","","");
            if(huaChengSysUser!=null)
            {
                sysUser=userService.selectData(null,huaChengSysUser.getPhone(),null);
                if(sysUser!=null)
                {
                    return sysUser;
                }
            }
        }
        throw new MissingServletRequestPartException(Constant.CURRENT_USER_ID);
        return null;
//        throw new MissingServletRequestPartException(Constant.CURRENT_USER_ID);
    }
}
flower_city/src/main/java/com/dg/core/service/HomeStatisticsService.java
New file
@@ -0,0 +1,96 @@
package com.dg.core.service;
import com.dg.core.db.gen.entity.ClassifyAdministration;
import com.dg.core.db.gen.entity.Guidance;
import com.dg.core.db.gen.entity.GuidePlate;
import com.dg.core.db.gen.entity.OrganizationEntity;
import org.springframework.data.repository.query.Param;
import java.util.List;
public interface HomeStatisticsService
{
    /**
     * 按办结量排序
     * @return
     */
    List<GuidePlate> guidePlatePeople();
    /**
     *按评分排序
     * @return
     */
    List<GuidePlate> score();
    /**
     * 按超时
     * @return
     */
    List<GuidePlate> timeout();
    /**
     * 评分
     * @return
     */
    Integer organizationScore(List<String> ids);
    /**
     * 办结量
     * @return
     */
    Integer organizationNum(List<String> ids);
    /**
     * 获取一级部门
     * @return
     */
    List<OrganizationEntity> getDepartment();
    /**
     * 办事指南根据导办数量排序
     * @return
     */
    List<Guidance> guidanceTransaction();
    /**
     * 办事指南根据浏览数量排序
     * @return
     */
    List<Guidance> guidanceBrowse();
    /**
     * 导办人员统计数
     * @return
     */
    Integer staffNum();
    /**
     * 办事指南数量统计
     * @return
     */
    Integer countWork();
    /**
     * 获取统计数据  首页用  勿动
     */
    int countStatisticsNum(List<String> classifyIds);
    /**
     * 首页统计用
     * @param parentId
     * @param classifyGrade
     * @return
     */
    public List<ClassifyAdministration> getClassify(@Param("parentId") String parentId,
                                                    @Param("classifyGrade") String classifyGrade);
    List<String> countId(String district);
    /**
     * 首页统计用
     * @return
     */
    int reversionRate(String state,String isTimeout);
}
flower_city/src/main/java/com/dg/core/service/IAreaCodeService.java
@@ -1,6 +1,7 @@
package com.dg.core.service;
import com.dg.core.db.gen.entity.AreaCode2022;
import com.dg.core.db.gen.entity.OrganizationChartEntity;
import java.util.List;
@@ -11,4 +12,10 @@
     * @return
     */
    List<AreaCode2022> getAreaCodeByTransactionId(Integer transactionId);
    /**
     * 根据pcode获取所属地区
     * @return
     */
    List<AreaCode2022> getListByPCode(String id);
}
flower_city/src/main/java/com/dg/core/service/IAutomessageCommonProblemService.java
New file
@@ -0,0 +1,59 @@
package com.dg.core.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.dg.core.ResultData;
import com.dg.core.db.gen.entity.AutomessageCommonProblem;
import org.springframework.data.repository.query.Param;
import java.util.List;
public interface IAutomessageCommonProblemService {
    /**
     * 获取常见问题列表(不分页)
     * @return
     */
    List<AutomessageCommonProblem> selectList();
    /**
     * 获取常见问题列表(分页)
     * @param page
     * @param state
     * @return
     */
    List<AutomessageCommonProblem> selectConfigList(IPage<AutomessageCommonProblem> page, Integer state,   String title,  String content);
    /**
     * 获取常见问题列表(不分页查找)
     * @return
     */
    List<AutomessageCommonProblem> selectConfigList(String title,  String content);
    /**
     * 获取常见问题列表统计数量
     * @return
     */
    Integer countAutomessageCommonProblem( String title, String content);
    /**
     * 添加常见问题数据
     * @return
     */
    ResultData add(AutomessageCommonProblem automessageCommonProblem);
    /**
     * 修改常见问题数据
     * @return
     */
    ResultData update(AutomessageCommonProblem automessageCommonProblem);
    /**
     * 删除常见问题数据
     * @return
     */
    ResultData delete(Integer id);
}
flower_city/src/main/java/com/dg/core/service/IClassifyAdministrationService.java
@@ -1,6 +1,7 @@
package com.dg.core.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.dg.core.ResultData;
import com.dg.core.db.gen.entity.ClassifyAdministration;
import com.dg.core.db.gen.entity.TransactionEvent;
import org.springframework.data.repository.query.Param;
@@ -63,4 +64,22 @@
     * @return
     */
    List<ClassifyAdministration>  selectRootList (IPage<ClassifyAdministration> page, Integer stat,String parentId,Integer departmentId);
    /**
     * 获取分类根据id 如果是二级id则获取的是办事指南
     * @return
     */
    ResultData queryListById(Integer id);
    /**
     * 根据上级id查询子分类
     * @param parentId
     * @return
     */
    List<String>  selectParent(String parentId);
    List<ClassifyAdministration>  selectParentData(String parentId);
}
flower_city/src/main/java/com/dg/core/service/IElseAccessoryService.java
@@ -15,14 +15,15 @@
     * @param Name
     * @return
     */
    public List<ElseAccessoryEntity> selectConfigList(IPage<ElseAccessoryEntity> page, Integer state, @Param("Name") String Name);
    public List<ElseAccessoryEntity> selectConfigList(IPage<ElseAccessoryEntity> page, Integer state,
                                                      String Name,List<String> ids);
    /**
     * 获取附件列表全部
     * @param Name
     * @return
     */
    public List<ElseAccessoryEntity> selectConfigList(String Name);
    public List<ElseAccessoryEntity> selectConfigList(String Name,List<String> ids);
    /**
@@ -51,7 +52,7 @@
     * @param Name
     * @return
     */
    public int countNum(String Name);
    public int countNum(String Name,List<String> ids);
}
flower_city/src/main/java/com/dg/core/service/IGuideEvolveService.java
@@ -2,6 +2,7 @@
import com.dg.core.db.gen.entity.GuideEvolveEntity;
import org.springframework.data.repository.query.Param;
import java.util.List;
@@ -40,4 +41,10 @@
     */
    public int countNum();
    /**
     * 更新工单id为空的脏数据
     * @return
     */
    int updateGuid();
}
flower_city/src/main/java/com/dg/core/service/IGuideRepairOrderService.java
@@ -1,7 +1,11 @@
package com.dg.core.service;
import com.dg.core.db.gen.entity.GuideRepairOrder;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.dg.core.ResultData;
import com.dg.core.db.gen.entity.*;
import org.springframework.data.repository.query.Param;
import java.util.List;
public interface IGuideRepairOrderService {
@@ -24,4 +28,107 @@
     */
    public int updateConfig(GuideRepairOrder order);
    /**
     * 获取个人中心工单数据
     * @param submitUserId
     * @return
     */
    List<GuideRepairOrder> selectBySubmitId(String submitUserId);
    /**
     * 获取工单列表(分页)
     * @param matterName
     * @return
     */
    List<GuideRepairOrder> selectConfigList(IPage<GuideRepairOrder> page, Integer state,
                                            String matterName,List<String> ids,String status,String guideUserId);
    /**
     * 获取工单列表(不分页用于小程序)
     * @param matterName
     * @return
     */
    List<GuideRepairOrder> selectConfigList(String matterName, List<String> ids,String status,
                                            String guideUserId);
    /**
     * 获取工单列表(求和)
     * @param matterName
     * @return
     */
    int countConfigList(String matterName,List<String> ids,String status,String guideUserId);
    /**
     * 很具用户id查询是否有对应工单
     * @return
     */
    int countUser(String userId,String state);
    /**
     * 根据进展类修改用户代办数量
     * @param order
     * @return
     */
    int updateSysUserOrderNum(GuideEvolveEntity order);
    /**
     * 统计工单用  1 今天   2昨天   3本月   4本年度 String time
     * @return
     */
    int countStatisticsNum(String state,List<String> ids,String time,String isTimeout,
                           String evaluateState,List<String> classifyIds,
                           String serviceState,String guideUserId);
    /**
     * 统计数据
     * @param state
     * @param ids
     * @param time
     * @return
     */
    List<CountListNum> countListNum(String state,
                                    List<String> ids,
                                    Integer time);
    /**
     * 获取提工单提交交人员信息
     * @return
     */
    SysUser getSubmitUser(GuideRepairOrder guideRepairOrder);
    /**
     * 设置超时时间
     * @return
     */
    GuideRepairOrder setTimeoutTim(GuideRepairOrder guideRepairOrder);
    /**
     * 导办人员有新订单推送消息
     * @return
     */
    void  sendGuideRepairOrderSubmit (String openid,GuideRepairOrder guideRepairOrder);
    /**
     * 删除工单
     * @param Id
     * @return
     */
    int deleteConfigById(String Id);
    /**
     * 推送超时工单
     * @return
     */
    ResultData pushOvertimeGuideRepairOrder();
    /**
     * 更改状态为好评
     * @return
     */
    int updateEvaluate();
}
flower_city/src/main/java/com/dg/core/service/IHuaChengSysUserService.java
New file
@@ -0,0 +1,14 @@
package com.dg.core.service;
import com.dg.core.db.gen.entity.HuaChengSysUser;
import java.util.List;
public interface IHuaChengSysUserService
{
    public List<HuaChengSysUser> selectConfigList();
    public HuaChengSysUser selectData(String userId,String account,String phone);
    public int selectNum();
}
flower_city/src/main/java/com/dg/core/service/IOrganizationChartService.java
@@ -1,5 +1,6 @@
package com.dg.core.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.dg.core.db.gen.entity.OrganizationChartEntity;
import java.util.List;
@@ -41,4 +42,32 @@
     * 根据id查取消组织机构
     */
    OrganizationChartEntity selectConfigById(String id);
    /**
     * 查询机构列表(分页)
     */
    List<OrganizationChartEntity> queryList(IPage<OrganizationChartEntity> page, Integer state, String organizationName);
    /**
     * 统计数量(部门应用)
     */
    int countList(String organizationName);
    /**
     * 获取部门下子部门的全部id
     * @param id
     * @return
     */
    List<String> getIds(String id);
    /**
     * 根据id  查询是否有子部门
     * @param parentId
     * @param grade
     * @return
     */
    public List<OrganizationChartEntity> selectParentList(String parentId,String grade);
}
flower_city/src/main/java/com/dg/core/service/IReplyTemplateService.java
@@ -11,7 +11,8 @@
     * 获取模板列表
     * @return
     */
    public List<ReplyTemplateEntity> selectConfigList(IPage<ReplyTemplateEntity> page, Integer state,String Name);
    public List<ReplyTemplateEntity> selectConfigList(IPage<ReplyTemplateEntity> page, Integer state,
                                                      String Name,List<String> ids);
    /**
     * 获取详情
@@ -45,6 +46,6 @@
     * 获取数量
     * @return
     */
    public int countNum(String Name);
    public int countNum(String Name,List<String> ids);
}
flower_city/src/main/java/com/dg/core/service/IRoleManagementService.java
@@ -13,7 +13,8 @@
     * @param state
     * @return
     */
    public List<RoleManagementEntity> selectConfigList(IPage<RoleManagementEntity> page, Integer state);
    public List<RoleManagementEntity> selectConfigList(IPage<RoleManagementEntity> page,
                                                       Integer state,String name);
    /**
     * 新增角色
@@ -40,5 +41,5 @@
     * 统计条数
     * @return
     */
    public int countNum();
    public int countNum(String name);
}
flower_city/src/main/java/com/dg/core/service/IRoleMenuService.java
New file
@@ -0,0 +1,37 @@
package com.dg.core.service;
import com.dg.core.db.gen.entity.RoleMenuEntity;
import java.util.List;
public interface IRoleMenuService
{
    /**
     * 根据角色获取菜单id
     * @param roleId
     * @return
     */
    public List<RoleMenuEntity> selectConfigList(String roleId);
    /**
     * 新增
     * @param entity
     * @return
     */
    public int insertConfig(RoleMenuEntity entity);
    /**
     * 编辑
     * @param entity
     * @return
     */
    public int updateConfig(RoleMenuEntity entity);
    /**
     * 删除
     * @param Id
     * @return
     */
    public int deleteConfigById(String Id);
}
flower_city/src/main/java/com/dg/core/service/ISysSettingsService.java
New file
@@ -0,0 +1,22 @@
package com.dg.core.service;
import com.dg.core.ResultData;
import com.dg.core.db.gen.entity.AutomessageSysSettings;
public interface ISysSettingsService {
    /**
     * 按设置名称查找设置信息
     *
     * @return 参数配置信息
     */
    ResultData selectByName(String settingName);
    /**
     * 修改设置信息
     *
     * @return 参数配置信息
     */
    ResultData update(AutomessageSysSettings automessageSysSettings);
}
flower_city/src/main/java/com/dg/core/service/ISysUserRecordService.java
New file
@@ -0,0 +1,34 @@
package com.dg.core.service;
import com.dg.core.ResultData;
import com.dg.core.db.gen.entity.SysUser;
public interface ISysUserRecordService {
    /**
     * 增加用户访问记录
     *
     * @return 参数配置信息
     */
    ResultData add(SysUser sysUser);
    /**
     * 小程序用户访问量统计1.累计访问量2.本年访问量 3.本月访问量 4.今日访问量 5.昨日访问
     * @return
     */
    ResultData selectUserRecordCount();
    /**
     * 小程序用户访问量统计1.近15天 2.近30天 3.近一年
     * @return
     */
    ResultData selectByDateType(Integer dateType);
    /**
     * 删除因为token问题产出的重复脏数据
     * @return
     */
    Integer deleteDistinct();
}
flower_city/src/main/java/com/dg/core/service/ISysUserService.java
@@ -1,21 +1,23 @@
package com.dg.core.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.dg.core.ResultData;
import com.dg.core.db.gen.entity.SysUser;
import org.springframework.data.repository.query.Param;
import java.util.List;
public interface ISysUserService {
    SysUser getUserById(Long id);
public interface ISysUserService
{
    SysUser getUserByAccount(String account);
    /**
     * 查询聊天列表
     *
     * @return 参数配置信息
     */
    public List<SysUser> selectConfigList(IPage<SysUser> page, Integer state,String userType);
    public List<SysUser> selectConfigList(IPage<SysUser> page, Integer state,String userType,String userName);
    SysUser selectData(String userId,String phonenumber,String loginName);
    /**
     * 新增聊天记录
@@ -41,13 +43,48 @@
     */
    public int deleteConfigById(String id);
    /**
     * 获取数据库总条数(批量)
     *
     * @return 结果
     */
    public int selectNum(String userType);
    public int selectNum(String userType,String userName);
    /**
     * 发送验证码(如果没有该用户则新建用户)
     *
     * @return 结果
     */
    ResultData smsSend(SysUser user);
    /**
     * 验证码登录
     *
     * @return 结果
     */
    ResultData loginByAccount(String phonenumber, String code);
    /**
     * 根据部门id及分类id获取导办用户
     *
     * @return 结果
     */
    List<SysUser> selectListByDepartmentId(String departmentId,String classifyId);
    /**
     * 通过手机号获取用户信息
     *
     * @return 结果
     */
    ResultData loginByPhonenumber(String phonenumber);
    /**
     * 查询用户列表(不分页)
     * @param userType 用户类型
     * @return 结果
     */
    List<SysUser> queryList(Integer userType,String keyWor);
}
flower_city/src/main/java/com/dg/core/service/ITransactionEventService.java
@@ -1,10 +1,12 @@
package com.dg.core.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.dg.core.db.gen.entity.SysUser;
import com.dg.core.db.gen.entity.TransactionEvent;
import com.dg.core.db.manual.pojo.QueryResults;
import com.dg.core.db.manual.pojo.RecommendResult;
import com.dg.core.db.manual.pojo.Search;
import org.springframework.data.repository.query.Param;
import java.util.List;
@@ -15,14 +17,22 @@
     * @param Id
     * @return
     */
    public TransactionEvent selectConfigData(String Id);
    public TransactionEvent selectConfigData(String Id, SysUser sysUser);
    /**
     * 导办事物列表
     * @return
     */
    public List<TransactionEvent> selectConfigList(IPage<TransactionEvent> page, Integer state,
                                                   String matterAndUser, String classifyGrade);
                                                   String keyword, String classifyGrade,
                                                   List<String> ids);
    /**
     * 导办事物列表
     * @return
     */
    public List<TransactionEvent> selectConfigList(String keyword, String classifyGrade,
                                                   List<String> ids);
    /**
     * 新增导办事务
@@ -49,7 +59,7 @@
     * 统计数量
     * @return
     */
    public int countNum(String matterAndUser,String classifyGrade);
    public int countNum(String keyword,String classifyGrade,List<String> ids);
    /**
     * 导办事务搜索
@@ -57,6 +67,14 @@
     * @return
     */
    QueryResults queryMatterNameList(IPage<Search> page, Integer state,Integer recommendSize, String keyWord);
    /**
     * 导办事务搜索(无分页用于小程序)
     * @param keyWord
     * @return
     */
    QueryResults queryMatterNameList(String keyWord);
    /**
     * 导办事务搜索统计数量
@@ -66,11 +84,19 @@
    int countNumByMatterName(String matterName);
    /**
     *  根据分离查询导办事务
     *  根据分类id查询导办事务
     * @param classifyId
     * @return
     */
    List<TransactionEvent> queryByClassifyIdList(String classifyId,Integer departmentId);
    /**
     *  根据分类id查询导办事务(分页)
     * @param classifyId
     * @return
     */
    List<TransactionEvent> queryByClassifyIdList(IPage<TransactionEvent> page, Integer state,String classifyId,Integer departmentId);
    /**
     *  根据查询时间查询导办事务
@@ -103,4 +129,19 @@
     * @return
     */
    RecommendResult smartConsulting(String keyWord);
    /**
     * 根据部门判断是否有事项名称重复
     */
    String selectDataIfExist(@Param("departmentId") String departmentId,
                             @Param("matterName") String matterName);
    /**
     * 根据办事分类获取办事指南
     */
    List<String> selectclassifyId(String classifyId);
}
flower_city/src/main/java/com/dg/core/service/impl/AreaCodeServiceImpl.java
@@ -13,6 +13,7 @@
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
@Service
@@ -26,6 +27,7 @@
    @Override
    public List<AreaCode2022> getAreaCodeByTransactionId(Integer transactionId){
//        HashMap<Object, Object> objectObjectHashMap = new HashMap<>();
        TransactionEvent transactionEvent = transactionEventMapper.selectOne(new QueryWrapper<TransactionEvent>().lambda().
                eq(TransactionEvent::getId, transactionId));
        OrganizationChartEntity organizationChartEntity = organizationChartMapper.selectOne(new QueryWrapper<OrganizationChartEntity>().lambda()
@@ -40,23 +42,37 @@
             areaCodes.add(organizationChartEntity.getVillage());
           getAreaCodeIds(areaCodes,organizationChartEntity);
        }
        return baseMapper.selectByIdSet(areaCodes);
        if (areaCodes.size()==0)
            return null;
        else
           return baseMapper.selectByIdSet(areaCodes);
    }
    public  List<String> getAreaCodeIds(List<String> areaCodes, OrganizationChartEntity organizationChartEntity){
         organizationChartEntity = organizationChartMapper.selectOne(new QueryWrapper<OrganizationChartEntity>().lambda()
       List<OrganizationChartEntity>  organizationChartEntitys= organizationChartMapper.selectList(new QueryWrapper<OrganizationChartEntity>().lambda()
                .eq(OrganizationChartEntity::getParentId, organizationChartEntity.getId()));
        if (organizationChartEntity!=null){
            if (organizationChartEntity.getCity()!=null)
                areaCodes.add(organizationChartEntity.getCity());
            if (organizationChartEntity.getDistrict()!=null)
                areaCodes.add(organizationChartEntity.getDistrict());
            if (organizationChartEntity.getVillage()!=null)
                areaCodes.add(organizationChartEntity.getVillage());
            getAreaCodeIds(areaCodes,organizationChartEntity);
        for (OrganizationChartEntity organizationChart:organizationChartEntitys) {
            if (organizationChart.getCity()!=null)
                areaCodes.add(organizationChart.getCity());
            if (organizationChart.getDistrict()!=null)
                areaCodes.add(organizationChart.getDistrict());
            if (organizationChart.getVillage()!=null)
                areaCodes.add(organizationChart.getVillage());
            getAreaCodeIds(areaCodes,organizationChart);
        }
        return  areaCodes;
    }
    @Override
    public  List<AreaCode2022> getListByPCode(String id){
        List<AreaCode2022> areaCode2022s = baseMapper.selectList(new QueryWrapper<AreaCode2022>().lambda().eq(AreaCode2022::getPcode, id));
        for (AreaCode2022 areaCode2022:areaCode2022s) {
            if (areaCode2022.getLevel()!=3)
              areaCode2022.setChild(this.getListByPCode(areaCode2022.getCode().toString()));
        }
      return  areaCode2022s;
    }
}
flower_city/src/main/java/com/dg/core/service/impl/AutomessageCommonProblemServiceImpl.java
New file
@@ -0,0 +1,87 @@
package com.dg.core.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.dg.core.ResultData;
import com.dg.core.db.gen.entity.AutomessageCommonProblem;
import com.dg.core.db.gen.mapper.AutomessageCommonProblemMapper;
import com.dg.core.service.IAutomessageCommonProblemService;
import org.springframework.stereotype.Service;
import java.time.LocalDateTime;
import java.util.List;
@Service
public class AutomessageCommonProblemServiceImpl extends ServiceImpl<AutomessageCommonProblemMapper, AutomessageCommonProblem> implements IAutomessageCommonProblemService {
    @Override
    public List<AutomessageCommonProblem> selectList(){
       return baseMapper.selectList(new QueryWrapper<AutomessageCommonProblem>().lambda());
    }
    @Override
    public List<AutomessageCommonProblem> selectConfigList(IPage<AutomessageCommonProblem> page, Integer state, String title, String content) {
        return baseMapper.selectConfigList(page,state,title,content);
    }
    @Override
    public List<AutomessageCommonProblem> selectConfigList(String title, String content) {
        return baseMapper.selectConfigList(title,content);
    }
    @Override
    public  Integer countAutomessageCommonProblem( String title, String content){
        return  baseMapper.countConfigList(title,content);
    }
    @Override
    public ResultData add(AutomessageCommonProblem automessageCommonProblem){
        if (automessageCommonProblem.getContent()==null){
          return   ResultData.error("常见问题不能空");
        }
        if (automessageCommonProblem.getTitle()==null){
          return   ResultData.error("回答内容题不能空");
        }
        automessageCommonProblem.setCreateTime(LocalDateTime.now());
        automessageCommonProblem.setUpdateTime(LocalDateTime.now());
        int insert = baseMapper.insert(automessageCommonProblem);
        if (insert>0){
           return ResultData.success();
        }
        else {
          return  ResultData.error("添加失败");
        }
    }
    @Override
    public ResultData update(AutomessageCommonProblem automessageCommonProblem){
        if (automessageCommonProblem.getContent()==null){
            return   ResultData.error("常见问题不能空");
        }
        if (automessageCommonProblem.getTitle()==null){
            return   ResultData.error("回答内容题不能空");
        }
        automessageCommonProblem.setUpdateTime(LocalDateTime.now());
        int i = baseMapper.updateById(automessageCommonProblem);
        if (i>0){
            return ResultData.success();
        }
        else {
            return  ResultData.error("修改失败");
        }
    }
    @Override
    public  ResultData delete(Integer id){
        int i = baseMapper.deleteById(id);
        if (i>0){
            return ResultData.success();
        }
        else {
            return  ResultData.error("删除失败");
        }
    }
}
flower_city/src/main/java/com/dg/core/service/impl/ClassifyAdministrationImpl.java
@@ -3,18 +3,25 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.dg.core.ResultData;
import com.dg.core.db.gen.entity.ClassifyAdministration;
import com.dg.core.db.gen.entity.TransactionEvent;
import com.dg.core.db.gen.mapper.ClassifyAdministrationMapper;
import com.dg.core.db.gen.mapper.TransactionEventMapper;
import com.dg.core.service.IClassifyAdministrationService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
@Service
public class ClassifyAdministrationImpl extends ServiceImpl<ClassifyAdministrationMapper, ClassifyAdministration>
        implements IClassifyAdministrationService
{
    @Resource
    private TransactionEventMapper transactionEventMapper;
    @Override
    public List<ClassifyAdministration> selectConfigList(String classifyName, String classifyGrade) {
@@ -46,6 +53,34 @@
    }
    @Override
    public ResultData queryListById(Integer id){
        if (id.equals(0)){
            return ResultData.success(baseMapper.selectList(new QueryWrapper<ClassifyAdministration>().lambda()
                    .eq(ClassifyAdministration::getParentId,0)));
        }
        ClassifyAdministration classifyAdministration = baseMapper.selectOne(new QueryWrapper<ClassifyAdministration>().lambda()
                .eq(ClassifyAdministration::getId, id));
        if (classifyAdministration.getClassifyGrade().equals("1")){
            return ResultData.success(baseMapper.selectList(new QueryWrapper<ClassifyAdministration>().lambda()
                    .eq(ClassifyAdministration::getParentId,classifyAdministration.getId())));
        }else if (classifyAdministration.getClassifyGrade().equals("2")){
            return ResultData.success(transactionEventMapper.queryByClassifyIdList(id.toString(),null));
        }
        return  ResultData.error();
    }
    @Override
    public List<String> selectParent(String parentId) {
        return baseMapper.selectParent(parentId);
    }
    @Override
    public List<ClassifyAdministration> selectParentData(String parentId) {
        return baseMapper.selectParentData(parentId);
    }
    @Override
    public int insertConfig(ClassifyAdministration entity) {
        return baseMapper.insertConfig(entity);
    }
flower_city/src/main/java/com/dg/core/service/impl/ElseAccessoryImpl.java
@@ -15,13 +15,14 @@
{
    @Override
    public List<ElseAccessoryEntity> selectConfigList(IPage<ElseAccessoryEntity> page, Integer state, String Name) {
        return baseMapper.selectConfigList(page,state,Name);
    public List<ElseAccessoryEntity> selectConfigList(IPage<ElseAccessoryEntity> page, Integer state,
                                                      String Name,List<String> ids) {
        return baseMapper.selectConfigList(page,state,Name, ids);
    }
    @Override
    public List<ElseAccessoryEntity> selectConfigList(String Name) {
        return baseMapper.selectConfigList(Name);
    public List<ElseAccessoryEntity> selectConfigList(String Name,List<String> ids) {
        return baseMapper.selectConfigList(Name,ids);
    }
    @Override
@@ -40,7 +41,7 @@
    }
    @Override
    public int countNum(String Name) {
        return baseMapper.countNum(Name);
    public int countNum(String Name,List<String> ids) {
        return baseMapper.countNum(Name,ids);
    }
}
flower_city/src/main/java/com/dg/core/service/impl/GuideEvolveImpl.java
@@ -2,19 +2,42 @@
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.dg.core.db.gen.entity.GuideEvolveEntity;
import com.dg.core.db.gen.entity.SysUser;
import com.dg.core.db.gen.mapper.ElseAccessoryMapper;
import com.dg.core.db.gen.mapper.GuideEvolveMapper;
import com.dg.core.db.gen.mapper.TransactionEventMapper;
import com.dg.core.service.IGuideEvolveService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
@Service
public class GuideEvolveImpl extends ServiceImpl<GuideEvolveMapper, GuideEvolveEntity> implements IGuideEvolveService
{
    @Resource
    private ElseAccessoryMapper elseAccessoryMapper;
    @Resource
    private TransactionEventMapper transactionEventMapper;
    @Override
    public List<GuideEvolveEntity> selectConfigList(String guideId) {
        return baseMapper.selectConfigList(guideId);
        List<GuideEvolveEntity> guideEvolveEntities = baseMapper.selectConfigList(guideId);
        for (GuideEvolveEntity guideEvolveEntity: guideEvolveEntities) {
            String[] split;
            if (guideEvolveEntity.getAccessoryId()!=null){
                split = guideEvolveEntity.getAccessoryId().split(",");
                guideEvolveEntity.setElseAccessoryEntities( elseAccessoryMapper.selectListByIds(split));
            }
            if (guideEvolveEntity.getTransactionId()!=null){
               split=guideEvolveEntity.getTransactionId().split(",");
               guideEvolveEntity.setTransactionEvents(transactionEventMapper.selectListByIds(split));
            }
        }
        return  guideEvolveEntities;
    }
    @Override
@@ -36,4 +59,12 @@
    public int countNum() {
        return baseMapper.countNum();
    }
    @Override
    public int updateGuid() {
        return baseMapper.updateGuid();
    }
}
flower_city/src/main/java/com/dg/core/service/impl/GuideRepairOrderServiceImpl.java
@@ -1,31 +1,56 @@
package com.dg.core.service.impl;
import cn.hutool.core.date.DateTime;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.dg.core.db.gen.entity.GuideRepairOrder;
import com.dg.core.db.gen.entity.GuideRepairOrderImage;
import com.dg.core.db.gen.entity.Slideshow;
import com.dg.core.db.gen.entity.TransactionEvent;
import com.dg.core.db.gen.mapper.GuideRepairOrderImageMapper;
import com.dg.core.db.gen.mapper.GuideRepairOrderMapper;
import com.dg.core.db.gen.mapper.TransactionEventMapper;
import com.dg.core.ResultData;
import com.dg.core.db.gen.entity.*;
import com.dg.core.db.gen.mapper.*;
import com.dg.core.service.IGuideRepairOrderService;
import com.dg.core.service.ISysSettingsService;
import com.dg.core.util.SmsUtil;
import com.dg.core.util.Snowflake;
import com.dg.core.util.TestDate;
import com.dg.core.util.WxUtil;
import com.iceyyy.workday.WorkUtils;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.ZoneOffset;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.List;
@Service
public class GuideRepairOrderServiceImpl extends ServiceImpl<GuideRepairOrderMapper, GuideRepairOrder>  implements IGuideRepairOrderService {
public class GuideRepairOrderServiceImpl extends ServiceImpl<GuideRepairOrderMapper, GuideRepairOrder>
        implements IGuideRepairOrderService {
    @Resource
    private TransactionEventMapper transactionEventMapper;
    @Resource
    private  GuideRepairOrderImageMapper guideRepairOrderImageMapper;
    private GuideRepairOrderImageMapper guideRepairOrderImageMapper;
    @Resource
    private SysUserMapper sysUserMapper;
    @Resource
    private OrganizationChartMapper organizationChartMapper;
    @Resource
    private GuideEvolveMapper guideEvolveMapper;
    @Resource
    private AutomessageSysSettingsMapper iSysSettingsMapper;
    @Resource
    SmsUtil smsUtil;
    @Override
    public  int addOrder(GuideRepairOrder guideRepairOrder){
    public int addOrder(GuideRepairOrder guideRepairOrder) {
        TransactionEvent transactionEvent = transactionEventMapper.selectOne(new QueryWrapper<TransactionEvent>().lambda().
                eq(TransactionEvent::getId, guideRepairOrder.getMatterId()));
@@ -33,32 +58,343 @@
        guideRepairOrder.setMatterName(transactionEvent.getMatterName());
        guideRepairOrder.setDepartmentId(transactionEvent.getDepartmentId());
        guideRepairOrder.setClassifyId(transactionEvent.getClassifyId());
        guideRepairOrder.setState("1");
        transactionEvent.setTransactionNum(transactionEvent.getTransactionNum()+1);
         String[] images = guideRepairOrder.getImages().split(",");
        for (String image: images) {
            GuideRepairOrderImage guideRepairOrderImage = new GuideRepairOrderImage();
            guideRepairOrderImage.setId(Snowflake.getId());
            guideRepairOrderImage.setGuideRepairOrderId(guideRepairOrder.getOrderNum());
            guideRepairOrderImage.setUrl(image);
            guideRepairOrderImageMapper.insert(guideRepairOrderImage);
        List<String> departmentIds = new ArrayList<>();
        Boolean isAdd = true;//是否能够新建工单
        List<GuideRepairOrder> guideRepairOrders = baseMapper.selectList(new QueryWrapper<GuideRepairOrder>().lambda()
                .eq(GuideRepairOrder::getMatterId, guideRepairOrder.getMatterId())
                .eq(GuideRepairOrder::getConsultContent, guideRepairOrder.getConsultContent()));
        if (guideRepairOrders.size() == 0) {
            isAdd = true;
        } else {
            for (GuideRepairOrder guideRepair : guideRepairOrders) {
                if (guideRepair.getState().equals("1") || guideRepair.getState().equals("2") || guideRepair.getState().equals("6") || guideRepair.getState().equals("7")) {
                    isAdd = false;
                    break;
                }
            }
        }
        int ans= baseMapper.insert(guideRepairOrder);
        int i = transactionEventMapper.updateById(transactionEvent);
        if (ans>0&&i>0)
            return 1;
        else
            return 0;
        if (isAdd) {
            //自动分配业务代码开始
            List<OrganizationChartEntity> organizationChartEntities = organizationChartMapper.selectByCode(transactionEvent.getDepartmentId(),guideRepairOrder.getAreaCode());
            if (organizationChartEntities.size() > 0) {
                for (OrganizationChartEntity organizationChart : organizationChartEntities) {
                    departmentIds.add(organizationChart.getId().toString());
                }
                List<SysUser> sysUsers = sysUserMapper.selectListByDepartmentId(departmentIds, "," + transactionEvent.getClassifyId(), transactionEvent.getClassifyId() + ",");//获取导半人员
                if (sysUsers.size() == 0) {//如果此所属地区部门没有导半人员则看其下级地区有没有相关分类导办人员
                    for (OrganizationChartEntity organizationChart : organizationChartEntities) {
                        //获取下级部门
                        List<OrganizationChartEntity> organizationChartEntitiesUser = organizationChartMapper.selectList(new QueryWrapper<OrganizationChartEntity>().lambda()
                                .eq(OrganizationChartEntity::getParentId, organizationChart.getId().toString()));
                        if (organizationChartEntitiesUser != null)
                            departmentIds = this.getDepartmentIds(organizationChartEntitiesUser, departmentIds);
                    }
                    sysUsers = sysUserMapper.selectListByDepartmentId(departmentIds, "," + transactionEvent.getClassifyId(), transactionEvent.getClassifyId() + ",");//获取导半人员
                    if (sysUsers.size() == 0) {//如果其下级部门仍没有该分类的导半人员则查询所以该所属地区的导办人员
                        sysUsers = sysUserMapper.selectListByDepartmentId(departmentIds, null, null);//获取导半人员
                        if (sysUsers.size() == 0)//如果该所属地区没有导办人员则为特殊单据需要手动分配
                            guideRepairOrder.setState("1");
                    }
                }
                if (sysUsers.size() > 0) {//系统分配导办人员
                    SysUser sysUser = sysUsers.get(0);//因为sql用了升序排序所以第一条就是待办结最少的人员之一
                    guideRepairOrder.setState("2");
                    sysUser.setTransactionNum(sysUser.getTransactionNum() + 1);
                    sysUserMapper.updateById(sysUser);
                    guideRepairOrder.setGuideUserId(sysUser.getUserId().toString());
                    guideRepairOrder.setGuideDepartmentId(sysUser.getDepartmentId());
                    guideRepairOrder.setGuideUserPhone(sysUser.getPhonenumber());
                    //新增分配记录
                    GuideEvolveEntity entity = new GuideEvolveEntity();
                    entity.setCreateTime(LocalDateTime.now());
                    entity.setUpdateTime(LocalDateTime.now());
                    entity.setState("8");
                    entity.setDepartmentalId(sysUser.getDepartmentId());
                    entity.setToUserId(guideRepairOrder.getGuideUserId() + "");
//                    entity.setFromUserId(guideRepairOrder.getSubmitUserId());
//                    entity.setFromDepartmentalId(guideRepairOrder.getGuideDepartmentId());
                    entity.setGuidOrderNum(guideRepairOrder.getOrderNum());
                    //超时时间设置业务开始
                    guideRepairOrder = this.setTimeoutTim(guideRepairOrder);
                    //超时时间设置业务结束
                    //消息推送
                    this.sendGuideRepairOrderSubmit(sysUser.getOpenid(), guideRepairOrder);
                    //短信发送
                    smsUtil.sendSmsSubmit(sysUser.getPhonenumber(), sysUser.getUserName());
                    guideEvolveMapper.insertConfig(entity);
                }
            } else {//如果该办事指南用户所选所属地区无导半部门则为特殊单据需要手动分配
                guideRepairOrder.setState("1");
            }
            //自动分配业务代码结束
            guideRepairOrder.setCreateTime(LocalDateTime.now());
            guideRepairOrder.setUpdateTime(LocalDateTime.now());
            guideRepairOrder.setIsPush(2);
            transactionEvent.setTransactionNum(transactionEvent.getTransactionNum() + 1);
            //保存图片地址
            if (guideRepairOrder.getImages() != null) {
                String[] images = guideRepairOrder.getImages().split(",");
                for (String image : images) {
                    GuideRepairOrderImage guideRepairOrderImage = new GuideRepairOrderImage();
                    guideRepairOrderImage.setId(Snowflake.getId());
                    guideRepairOrderImage.setGuideRepairOrderId(guideRepairOrder.getOrderNum());
                    guideRepairOrderImage.setUrl(image);
                    guideRepairOrderImage.setCreateTime(LocalDateTime.now());
                    guideRepairOrderImage.setType(1);
                    guideRepairOrderImageMapper.insert(guideRepairOrderImage);
                }
            }
            //保存视频地址
            if (guideRepairOrder.getVideo() != null) {
                if (guideRepairOrder.getOrderNum() != null) {
                    GuideRepairOrderImage guideRepairOrderImage = new GuideRepairOrderImage();
                    guideRepairOrderImage.setId(Snowflake.getId());
                    guideRepairOrderImage.setGuideRepairOrderId(guideRepairOrder.getOrderNum());
                    guideRepairOrderImage.setUrl(guideRepairOrder.getVideo());
                    guideRepairOrderImage.setCreateTime(LocalDateTime.now());
                    guideRepairOrderImage.setType(2);
                    guideRepairOrderImageMapper.insert(guideRepairOrderImage);
                }
            }
            int ans = baseMapper.insert(guideRepairOrder);
            int i = transactionEventMapper.updateById(transactionEvent);
            if (ans > 0 && i > 0)
                return 1;
            else
                return 0;
        } else {
            return 0;
        }
    }
    public List<String> getDepartmentIds(List<OrganizationChartEntity> organizationChartEntities, List<String> departmentIds) {
        for (OrganizationChartEntity organizationChart : organizationChartEntities) {
            departmentIds.add(organizationChart.getId().toString());
            List<OrganizationChartEntity> organizationChartEntitiesUser = organizationChartMapper.selectList(new QueryWrapper<OrganizationChartEntity>().lambda()
                    .eq(OrganizationChartEntity::getParentId, organizationChart.getId().toString()));
            if (organizationChartEntitiesUser != null)
                departmentIds = this.getDepartmentIds(organizationChartEntitiesUser, departmentIds);
        }
        return departmentIds;
    }
    @Override
    public GuideRepairOrder selectConfigData(String Id, String orderNum) {
        return baseMapper.selectConfigData(Id,orderNum);
        return baseMapper.selectConfigData(Id, orderNum);
    }
    @Override
    public int updateConfig(GuideRepairOrder order) {
        if (order.getGuideUserId() != null && !order.getGuideUserId().equals("")) {
            SysUser sysUser = sysUserMapper.selectOne(new QueryWrapper<SysUser>().lambda().eq(SysUser::getUserId, order.getGuideUserId()));
            order.setGuideUserPhone(sysUser.getPhonenumber());
        }
        return baseMapper.updateConfig(order);
    }
    @Override
    public List<GuideRepairOrder> selectBySubmitId(String submitUserId) {
        return baseMapper.selectBySubmitId(submitUserId);
    }
    @Override
    public List<GuideRepairOrder> selectConfigList(IPage<GuideRepairOrder> page, Integer state,
                                                   String matterName, List<String> ids,String status,
                                                   String guideUserId) {
        return baseMapper.selectConfigList(page, state, matterName, ids,status,guideUserId);
    }
    @Override
    public List<GuideRepairOrder> selectConfigList(String matterName, List<String> ids,String status,
                                                   String guideUserId) {
        return baseMapper.selectConfigList(matterName, ids,status,guideUserId);
    }
    @Override
    public int countConfigList(String matterName, List<String> ids,String status,String guideUserId) {
        return baseMapper.countConfigList(matterName, ids,status,guideUserId);
    }
    @Override
    public int countUser(String userId, String state) {
        return baseMapper.countUser(userId, state);
    }
    @Override
    public int updateSysUserOrderNum(GuideEvolveEntity order) {
        if (order.getState() != null) {
            if (order.getState().equals("11")) {
                SysUser sysUser = sysUserMapper.selectOne(new QueryWrapper<SysUser>().lambda().eq(SysUser::getUserId, order.getToUserId()));
                GuideRepairOrder guideRepairOrder = baseMapper.selectOne(new QueryWrapper<GuideRepairOrder>().lambda()
                        .eq(GuideRepairOrder::getId, order.getGuideId()));
                if (guideRepairOrder != null) {
                    this.sendGuideRepairOrderSubmit(sysUser.getOpenid(), guideRepairOrder);
                }
                //短信发送
                smsUtil.sendSmsSubmit(sysUser.getPhonenumber(), sysUser.getUserName());
                sysUser.setTransactionNum(sysUser.getTransactionNum() + 1);
                return sysUserMapper.updateById(sysUser);
            } else if (order.getState().equals("10")) {
                SysUser sysUserTo = sysUserMapper.selectOne(new QueryWrapper<SysUser>().lambda().eq(SysUser::getUserId, order.getToUserId()));
                SysUser sysUserFrom = sysUserMapper.selectOne(new QueryWrapper<SysUser>().lambda().eq(SysUser::getUserId, order.getFromUserId()));
                sysUserTo.setTransactionNum(sysUserTo.getTransactionNum() + 1);
                sysUserFrom.setTransactionNum(sysUserFrom.getTransactionNum() - 1);
                sysUserMapper.updateById(sysUserFrom);
                GuideRepairOrder guideRepairOrder = baseMapper.selectOne(new QueryWrapper<GuideRepairOrder>().lambda()
                        .eq(GuideRepairOrder::getId, order.getGuideId()));
                //短信发送
                smsUtil.sendSmsSubmit(sysUserTo.getPhonenumber(), sysUserTo.getUserName());
                if (guideRepairOrder != null) {
                    this.sendGuideRepairOrderSubmit(sysUserTo.getOpenid(), guideRepairOrder);
                }
                return sysUserMapper.updateById(sysUserTo);
            } else if (order.getState().equals("7")) {
                SysUser sysUserFrom = sysUserMapper.selectOne(new QueryWrapper<SysUser>().lambda().eq(SysUser::getUserId, order.getFromUserId()));
                sysUserFrom.setTransactionNum(sysUserFrom.getTransactionNum() - 1);
                return sysUserMapper.updateById(sysUserFrom);
            }
         }
        return 0;
    }
    /**
     * 1 今天   2昨天   3本月   4本年度 String time
     *
     * @param state
     * @param ids
     * @return
     */
    @Override
    public int countStatisticsNum(String state, List<String> ids, String time,
                                  String isTimeout, String evaluateState,
                                  List<String> classifyIds,String serviceState,
                                  String guideUserId) {
        return baseMapper.countStatisticsNum(state, ids, time, isTimeout, evaluateState, classifyIds,serviceState,guideUserId);
    }
    @Override
    public List<CountListNum> countListNum(String state, List<String> ids, Integer time) {
        return baseMapper.countListNum(state, ids, time);
    }
    @Override
    public SysUser getSubmitUser(GuideRepairOrder guideRepairOrder) {
        return sysUserMapper.selectOne(new QueryWrapper<SysUser>().lambda().eq(SysUser::getUserId, guideRepairOrder.getSubmitUserId()));
    }
    @Override
    public GuideRepairOrder setTimeoutTim(GuideRepairOrder guideRepairOrder) {
        AutomessageSysSettings automessageSysSettings = iSysSettingsMapper.selectOne(
                new QueryWrapper<AutomessageSysSettings>().lambda()
                        .eq(AutomessageSysSettings::getSettingName, "系统超时基础设置"));
        LocalDateTime startTime = LocalDate.now().atTime(0, 0, 0);//今天开始时间
        LocalDateTime morningStartTime = LocalDate.now().atTime(9, 0, 0);//上午工作开始时间
        LocalDateTime morningEndTime = LocalDate.now().atTime(12, 0, 0);//上午工作结束时间
        LocalDateTime afternoonStartTime = LocalDate.now().atTime(13, 30, 0);//下午工作开始时间
        LocalDateTime afternoonEndTime = LocalDate.now().atTime(17, 0, 0);//下午工作结束时间
        LocalDateTime endTime = LocalDate.now().atTime(23, 59, 59);//今天结束时间
        TestDate td = new TestDate();
        DateTime dateTimeUser = DateTime.now();
        String format = "YYYYMMdd";
        String dateTimeToday = dateTimeUser.toString(format);
        if (!WorkUtils.isWorkendDay(dateTimeToday)) {
            if (LocalDateTime.now().isAfter(startTime) && LocalDateTime.now().isBefore(morningStartTime)) {//提交时间是上午上班前
                guideRepairOrder.setTimeoutTime(LocalDate.now().
                        atTime(9 + automessageSysSettings.getTimeoutNotificationNum(), 0, 0));
            } else if (LocalDateTime.now().isAfter(morningStartTime) && LocalDateTime.now().isBefore(morningEndTime)) {//提交时间在上午工作日内
                guideRepairOrder.setTimeoutTime(LocalDateTime.now().plusHours(automessageSysSettings.getTimeoutNotificationNum()));
            } else if (LocalDateTime.now().isAfter(morningEndTime) && LocalDateTime.now().isBefore(afternoonStartTime)) {//提交时间在工作日午休内
                guideRepairOrder.setTimeoutTime(LocalDate.now().
                        atTime(13 + automessageSysSettings.getTimeoutNotificationNum(), 30, 0));
            } else if (LocalDateTime.now().isAfter(afternoonStartTime) && LocalDateTime.now().isBefore(afternoonEndTime)) {//提交时间在下午工作日内
                guideRepairOrder.setTimeoutTime(LocalDateTime.now().plusHours(automessageSysSettings.getTimeoutNotificationNum()));
            } else if (LocalDateTime.now().isAfter(afternoonEndTime) && LocalDateTime.now().isBefore(endTime)) {//提交时间在下午下班后
                DateTime dateTime = td.nextWeekDay(dateTimeUser);
                Calendar calendar = dateTime.toCalendar();
                LocalDateTime localDateTime = LocalDateTime.of(calendar.get(Calendar.YEAR),
                        calendar.get(Calendar.MONTH), calendar.get(Calendar.DATE),
                        9 + automessageSysSettings.getTimeoutNotificationNum(), 0);//设置时间为下一个工作日时间的9点+设置超时时间
                guideRepairOrder.setTimeoutTime(localDateTime);
            }
        } else//当前不是工作日则获取下一个工作日
        {
            DateTime dateTime = td.nextWeekDay(dateTimeUser);
            Calendar calendar = dateTime.toCalendar();
            LocalDateTime localDateTime = LocalDateTime.of(calendar.get(Calendar.YEAR),
                    calendar.get(Calendar.MONTH), calendar.get(Calendar.DATE),
                    9 + automessageSysSettings.getTimeoutNotificationNum(), 0);//设置时间为下一个工作日时间的9点+设置超时时间
            guideRepairOrder.setTimeoutTime(localDateTime);
        }
        return guideRepairOrder;
    }
    @Override
    public void sendGuideRepairOrderSubmit(String openid, GuideRepairOrder guideRepairOrder) {
        WxUtil wxUtil = new WxUtil();
        String accessToken = "0";
        try {
            accessToken = wxUtil.getBatteryCarAccessToken();
        } catch (Exception e) {
            throw new RuntimeException(e);
        }
        wxUtil.sendGuideRepairOrderSubmit(openid, accessToken, "WggWK_yG7_qfrTj8bQe-2co4ATgpXamLzT1xvrTu4K0", guideRepairOrder);
//                    smsUtil.sendSmsOvertime(sysUser.getPhonenumber(),guideRepairOrder.getMatterName());
    }
    @Override
    public int deleteConfigById(String Id) {
        return baseMapper.deleteConfigById(Id);
    }
    @Override
    public ResultData pushOvertimeGuideRepairOrder() {
        List<GuideRepairOrder> guideRepairOrders = baseMapper.selectOvertime();
        WxUtil wxUtil = new WxUtil();
        String accessToken = "0";
        try {
            accessToken = wxUtil.getBatteryCarAccessToken();
        } catch (Exception e) {
            throw new RuntimeException(e);
        }
        for (GuideRepairOrder guideRepairOrder:guideRepairOrders) {
            SysUser sysUser = sysUserMapper.selectOne(new QueryWrapper<SysUser>().lambda().eq(SysUser::getUserId, guideRepairOrder.getGuideUserId()));
            if (sysUser!=null)
            {
                smsUtil.sendSmsOvertime(sysUser.getPhonenumber(), sysUser.getUserName());
                wxUtil.sendGuideRepairOrderOvertime(sysUser.getOpenid(),accessToken,"86JgWHhR8b1XxD72WYqMnndyfkiMtSSoCk9NFMwLEZ8",sysUser);
                guideRepairOrder.setIsPush(1);
                guideRepairOrder.setIsTimeout("2");
                baseMapper.updateById(guideRepairOrder);
            }
        }
        return ResultData.success();
    }
    @Override
    public int updateEvaluate() {
        //查找一天没有评价的单据
        List<GuideRepairOrder> guideRepairOrders = baseMapper.selectEvaluate();
        for (GuideRepairOrder guideRepairOrder:guideRepairOrders) {
            guideRepairOrder.setEvaluateState("1");
            guideRepairOrder.setEvaluateContent("好评");
            guideRepairOrder.setServiceState(1);
            guideRepairOrder.setState("3");
            baseMapper.updateById(guideRepairOrder);
            //新增默认好评进展
            GuideEvolveEntity entity = new GuideEvolveEntity();
            entity.setCreateTime(LocalDateTime.now());
            entity.setUpdateTime(LocalDateTime.now());
            entity.setState("12");
            entity.setFromUserId(guideRepairOrder.getSubmitUserId()+"");
            entity.setGuideId(guideRepairOrder.getId().toString());
            guideEvolveMapper.insertConfig(entity);
        }
        return 0;
    }
}
flower_city/src/main/java/com/dg/core/service/impl/HomeStatisticsImpl.java
New file
@@ -0,0 +1,88 @@
package com.dg.core.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.dg.core.db.gen.entity.ClassifyAdministration;
import com.dg.core.db.gen.entity.Guidance;
import com.dg.core.db.gen.entity.GuidePlate;
import com.dg.core.db.gen.entity.OrganizationEntity;
import com.dg.core.db.gen.mapper.HomeStatisticsMapper;
import com.dg.core.service.HomeStatisticsService;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class HomeStatisticsImpl extends ServiceImpl<HomeStatisticsMapper, GuidePlate>
        implements HomeStatisticsService
{
    @Override
    public List<GuidePlate> guidePlatePeople() {
        return baseMapper.guidePlatePeople();
    }
    @Override
    public List<GuidePlate> score() {
        return baseMapper.score();
    }
    @Override
    public List<GuidePlate> timeout() {
        return baseMapper.timeout();
    }
    @Override
    public Integer organizationScore(List<String> ids) {
        return baseMapper.organizationScore(ids);
    }
    @Override
    public Integer organizationNum(List<String> ids) {
        return baseMapper.organizationNum(ids);
    }
    @Override
    public List<OrganizationEntity> getDepartment() {
        return baseMapper.getDepartment();
    }
    @Override
    public List<Guidance> guidanceTransaction() {
        return baseMapper.guidanceTransaction();
    }
    @Override
    public List<Guidance> guidanceBrowse() {
        return baseMapper.guidanceBrowse();
    }
    @Override
    public Integer staffNum() {
        return baseMapper.staffNum();
    }
    @Override
    public Integer countWork() {
        return baseMapper.countWork();
    }
    @Override
    public int countStatisticsNum(List<String> classifyIds) {
        return baseMapper.countStatisticsNum(classifyIds);
    }
    @Override
    public List<ClassifyAdministration> getClassify(String parentId, String classifyGrade) {
        return baseMapper.getClassify(parentId,classifyGrade);
    }
    @Override
    public List<String> countId(String district) {
        return baseMapper.countId(district);
    }
    @Override
    public int reversionRate(String state, String isTimeout) {
        return baseMapper.reversionRate(state,isTimeout);
    }
}
flower_city/src/main/java/com/dg/core/service/impl/HuaChengSysUserImpl.java
New file
@@ -0,0 +1,29 @@
package com.dg.core.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.dg.core.db.gen.entity.HuaChengSysUser;
import com.dg.core.db.gen.mapper.HuaChengSysUserMapper;
import com.dg.core.service.IHuaChengSysUserService;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class HuaChengSysUserImpl  extends ServiceImpl<HuaChengSysUserMapper, HuaChengSysUser> implements IHuaChengSysUserService
{
    @Override
    public List<HuaChengSysUser> selectConfigList() {
        return baseMapper.selectConfigList();
    }
    @Override
    public HuaChengSysUser selectData(String userId,String account,String phone) {
        return baseMapper.selectData(userId,account,phone);
    }
    @Override
    public int selectNum() {
        return baseMapper.selectNum();
    }
}
flower_city/src/main/java/com/dg/core/service/impl/IRoleMenuImpl.java
New file
@@ -0,0 +1,33 @@
package com.dg.core.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.dg.core.db.gen.entity.RoleMenuEntity;
import com.dg.core.db.gen.mapper.RoleMenuEntityMapper;
import com.dg.core.service.IRoleMenuService;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class IRoleMenuImpl extends ServiceImpl<RoleMenuEntityMapper, RoleMenuEntity> implements IRoleMenuService {
    @Override
    public List<RoleMenuEntity> selectConfigList(String roleId) {
        return baseMapper.selectConfigList(roleId);
    }
    @Override
    public int insertConfig(RoleMenuEntity entity) {
        return baseMapper.insertConfig(entity);
    }
    @Override
    public int updateConfig(RoleMenuEntity entity) {
        return baseMapper.updateConfig(entity);
    }
    @Override
    public int deleteConfigById(String Id) {
        return baseMapper.deleteConfigById(Id);
    }
}
flower_city/src/main/java/com/dg/core/service/impl/OrganizationChartImpl.java
@@ -1,12 +1,14 @@
package com.dg.core.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.dg.core.db.gen.entity.OrganizationChartEntity;
import com.dg.core.db.gen.mapper.OrganizationChartMapper;
import com.dg.core.service.IOrganizationChartService;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
@Service
@@ -76,4 +78,74 @@
    public OrganizationChartEntity selectConfigById(String id) {
        return baseMapper.selectConfigById(id);
    }
    @Override
    public List<OrganizationChartEntity> queryList(IPage<OrganizationChartEntity> page, Integer state, String organizationName) {
        return baseMapper.queryList(page,state,organizationName);
    }
    @Override
    public int countList(String organizationName) {
        return baseMapper.countList(organizationName);
    }
    @Override
    public List<OrganizationChartEntity> selectParentList(String parentId, String grade) {
        return baseMapper.selectConfigList(parentId,grade);
    }
    /**
     * 递归获取id  内部使用
     * @param id
     * @return
     */
    @Override
    public List<String> getIds(String id)
    {
        List<String> ids=new ArrayList<>();
        List<OrganizationChartEntity> lists = baseMapper.selectConfigList(id,"");
        if(lists.size()<1)
        {
            lists.add(baseMapper.selectConfigById(id));
        }
        ids=disposestreetId(lists);
        if(ids.size()<1)
        {
            return null;
        }
        ids.add(id);
        return ids;
    }
    //递归取id
    private List<String> disposestreetId(List<OrganizationChartEntity> lists)
    {
        List<String> ids=new ArrayList<>();
        if(lists==null || lists.size()<1)
        {
            return ids;
        }
        for (OrganizationChartEntity sysStreet:lists)
        {
            if(sysStreet!=null&&sysStreet.getId()!=null)
            {
                if(sysStreet.getChild()!=null && sysStreet.getChild().size()>0)
                {
                    ids.addAll(disposestreetId(sysStreet.getChild()));
                }
                else
                {
                    ids.add(sysStreet.getId()+"");
                }
            }
        }
        return ids;
    }
}
flower_city/src/main/java/com/dg/core/service/impl/ReplyTemplateImpl.java
@@ -3,25 +3,51 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.dg.core.db.gen.entity.GuideEvolveEntity;
import com.dg.core.db.gen.entity.ReplyTemplateEntity;
import com.dg.core.db.gen.mapper.ElseAccessoryMapper;
import com.dg.core.db.gen.mapper.ReplyTemplateMapper;
import com.dg.core.db.gen.mapper.TransactionEventMapper;
import com.dg.core.service.IReplyTemplateService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
@Service
public class ReplyTemplateImpl extends ServiceImpl<ReplyTemplateMapper, ReplyTemplateEntity> implements IReplyTemplateService
{
    @Resource
    private ElseAccessoryMapper elseAccessoryMapper;
    @Resource
    private TransactionEventMapper transactionEventMapper;
    @Override
    public List<ReplyTemplateEntity> selectConfigList(IPage<ReplyTemplateEntity> page, Integer state,String Name) {
        return baseMapper.selectConfigList(page,state,Name);
    public List<ReplyTemplateEntity> selectConfigList(IPage<ReplyTemplateEntity> page,
                                                      Integer state,String Name,List<String> ids) {
        return baseMapper.selectConfigList(page,state,Name,ids);
    }
    @Override
    public ReplyTemplateEntity selectConfigData(String Id) {
        return baseMapper.selectConfigData(Id);
        ReplyTemplateEntity replyTemplateEntity = baseMapper.selectConfigData(Id);
        if (replyTemplateEntity!=null)
        {     String[] split;
            if (replyTemplateEntity.getAccessoryId()!=null){
                split = replyTemplateEntity.getAccessoryId().split(",");
                replyTemplateEntity.setElseAccessoryEntityList( elseAccessoryMapper.selectListByIds(split));
            }
            if (replyTemplateEntity.getGuidance()!=null){
                split=replyTemplateEntity.getGuidance().split(",");
                replyTemplateEntity.setTransactionEventList(transactionEventMapper.selectListByIds(split));
            }
        return  replyTemplateEntity;
        }
        else {
            return  null;
        }
    }
    @Override
@@ -40,7 +66,7 @@
    }
    @Override
    public int countNum(String Name) {
        return baseMapper.countNum(Name);
    public int countNum(String Name,List<String> ids) {
        return baseMapper.countNum(Name,ids);
    }
}
flower_city/src/main/java/com/dg/core/service/impl/RoleManagementImpl.java
@@ -12,8 +12,8 @@
@Service
public class RoleManagementImpl extends ServiceImpl<RoleManagementMapper, RoleManagementEntity> implements IRoleManagementService {
    @Override
    public List<RoleManagementEntity> selectConfigList(IPage<RoleManagementEntity> page, Integer state) {
        return baseMapper.selectConfigList(page,state);
    public List<RoleManagementEntity> selectConfigList(IPage<RoleManagementEntity> page, Integer state,String name) {
        return baseMapper.selectConfigList(page,state,name);
    }
    @Override
@@ -32,7 +32,7 @@
    }
    @Override
    public int countNum() {
        return baseMapper.countNum();
    public int countNum(String name) {
        return baseMapper.countNum(name);
    }
}
flower_city/src/main/java/com/dg/core/service/impl/SlideshowServiceImpl.java
@@ -26,53 +26,57 @@
    @Override
    public List<Slideshow> selectList() {
        return  baseMapper.selectList(new QueryWrapper<Slideshow>().lambda());
        return baseMapper.selectList(new QueryWrapper<Slideshow>().lambda());
    }
    @Override
    public Slideshow queryById(Integer id) {
        return baseMapper.selectOne(new QueryWrapper<Slideshow>().lambda().eq(Slideshow::getId,id));
        return baseMapper.selectOne(new QueryWrapper<Slideshow>().lambda().eq(Slideshow::getId, id));
    }
    @Override
    public  ResultData add(Slideshow slideshow){
        if (slideshow.getUrl()==null||slideshow.getUrl()=="")
           return   ResultData.error("图片地址不能为空");
        if (slideshow.getLinkType()==null)
           return    ResultData.error("跳转链接类型不能为空");
        if (slideshow.getTitle()==null||slideshow.getTitle()=="")
           return   ResultData.error("标题不能为空");
        if (slideshow.getLinkType().equals(2)&&(slideshow.getContent()==null||slideshow.getContent()==""))
            return   ResultData.error("类型为富文本时,富文本内容不能为空");
        if (slideshow.getLinkType().equals(4)&&(slideshow.getLink()==null||slideshow.getLink()==""))
            return   ResultData.error("类型为微信文章时,文章链接容不能为空");
    public ResultData add(Slideshow slideshow) {
        if (slideshow.getUrl() == null || slideshow.getUrl() == "")
            return ResultData.error("图片地址不能为空");
        if (slideshow.getLinkType() == null)
            return ResultData.error("跳转链接类型不能为空");
        if (slideshow.getLinkType().equals(2)) {
            if (slideshow.getTitle() == null || slideshow.getTitle() == "")
                return ResultData.error("类型为富文本时,标题不能为空");
            if (slideshow.getContent() == null || slideshow.getContent() == "")
                return ResultData.error("类型为富文本时,富文本内容不能为空");
        }
        if (slideshow.getLinkType().equals(3) && (slideshow.getLink() == null || slideshow.getLink() == ""))
            return ResultData.error("类型为微信文章时,文章链接容不能为空");
        slideshow.setCreateTime(LocalDateTime.now());
        return    ResultData.success(  baseMapper.insert(slideshow)) ;
        return ResultData.success(baseMapper.insert(slideshow));
    }
    @Override
    public  ResultData update(Slideshow slideshow){
        if (slideshow.getUrl()==null||slideshow.getUrl()=="")
            return   ResultData.error("图片地址不能为空");
        if (slideshow.getLinkType()==null)
            return    ResultData.error("跳转链接类型不能为空");
        if (slideshow.getTitle()==null||slideshow.getTitle()=="")
            return   ResultData.error("标题不能为空");
        if (slideshow.getLinkType().equals(2)&&(slideshow.getContent()==null||slideshow.getContent()==""))
            return   ResultData.error("类型为富文本时,富文本内容不能为空");
        if (slideshow.getLinkType().equals(4)&&(slideshow.getLink()==null||slideshow.getLink()==""))
            return   ResultData.error("类型为微信文章时,文章链接容不能为空");
        return  ResultData.success(baseMapper.updateById(slideshow));
    public ResultData update(Slideshow slideshow) {
        if (slideshow.getUrl() == null || slideshow.getUrl() == "")
            return ResultData.error("图片地址不能为空");
        if (slideshow.getLinkType() == null)
            return ResultData.error("跳转链接类型不能为空");
        if (slideshow.getLinkType().equals(2)) {
            if (slideshow.getTitle() == null || slideshow.getTitle() == "")
                return ResultData.error("类型为富文本时,标题不能为空");
            if (slideshow.getContent() == null || slideshow.getContent() == "")
                return ResultData.error("类型为富文本时,富文本内容不能为空");
        }
        if (slideshow.getLinkType().equals(3) && (slideshow.getLink() == null || slideshow.getLink() == ""))
            return ResultData.error("类型为微信文章时,文章链接容不能为空");
        return ResultData.success(baseMapper.updateById(slideshow));
    }
    @Override
    public  ResultData delete(Integer id){
    public ResultData delete(Integer id) {
        int i = baseMapper.deleteById(id);
        if(i>0)
            return  ResultData.success();
        if (i > 0)
            return ResultData.success();
        else
            return  ResultData.error();
            return ResultData.error();
    }
}
flower_city/src/main/java/com/dg/core/service/impl/SysSettingsServiceImpl.java
New file
@@ -0,0 +1,45 @@
package com.dg.core.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.dg.core.ResultData;
import com.dg.core.db.gen.entity.AutomessageSysSettings;
import com.dg.core.db.gen.entity.AutomessageSysSettingsRecord;
import com.dg.core.db.gen.mapper.AutomessageSysSettingsMapper;
import com.dg.core.db.gen.mapper.AutomessageSysSettingsRecordMapper;
import com.dg.core.service.ISysSettingsService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.time.LocalDateTime;
@Service
public class SysSettingsServiceImpl extends ServiceImpl<AutomessageSysSettingsMapper, AutomessageSysSettings> implements ISysSettingsService {
    @Resource
    private AutomessageSysSettingsRecordMapper automessageSysSettingsRecordMapper;
    @Override
    public ResultData selectByName(String settingName){
        AutomessageSysSettings automessageSysSettings = baseMapper.selectOne(
                new QueryWrapper<AutomessageSysSettings>().lambda()
                        .eq(AutomessageSysSettings::getSettingName,settingName));
        return ResultData.success(automessageSysSettings);
    }
    @Override
    public ResultData update(AutomessageSysSettings automessageSysSettings){
        AutomessageSysSettingsRecord automessageSysSettingsRecord=new AutomessageSysSettingsRecord();
        automessageSysSettingsRecord.setSettingId(automessageSysSettings.getId());
        automessageSysSettingsRecord.setCreateUserId(automessageSysSettings.getUpdateUserId());
        automessageSysSettingsRecord.setCreateTime(LocalDateTime.now());
        int i = baseMapper.updateById(automessageSysSettings);
        if (i>0){
            return  ResultData.success(automessageSysSettingsRecordMapper.insert(automessageSysSettingsRecord));
        }else {
            return ResultData.error();
        }
    }
}
flower_city/src/main/java/com/dg/core/service/impl/SysUserRecordServiceImpl.java
New file
@@ -0,0 +1,66 @@
package com.dg.core.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.dg.core.ResultData;
import com.dg.core.db.gen.entity.AutomessageSysUserRecord;
import com.dg.core.db.gen.entity.SysUser;
import com.dg.core.db.gen.mapper.AutomessageSysUserRecordMapper;
import com.dg.core.db.gen.mapper.SysUserMapper;
import com.dg.core.service.ISysUserRecordService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.time.LocalDate;
import java.time.LocalDateTime;
@Service
public class SysUserRecordServiceImpl extends ServiceImpl<AutomessageSysUserRecordMapper, AutomessageSysUserRecord> implements ISysUserRecordService {
    @Resource
    private SysUserMapper sysUserMapper;
    @Override
    public ResultData add(SysUser sysUser){
        if (sysUser!=null){
            LocalDateTime startTime = LocalDate.now().atTime(0, 0, 0);
            LocalDateTime endTime = LocalDate.now().atTime(23, 59, 59);
            AutomessageSysUserRecord automessageSysUserRecord = baseMapper.selectOne(new QueryWrapper<AutomessageSysUserRecord>()
                    .lambda().eq(AutomessageSysUserRecord::getUserId, sysUser.getUserId())
                    .orderByDesc(AutomessageSysUserRecord::getCreateTime)
                    .last("limit 1"));
            //判断上次访问时间是不是今天 如果是今天不增加浏览次数
            if (automessageSysUserRecord==null||(!(automessageSysUserRecord.getCreateTime().isAfter(startTime)&&automessageSysUserRecord.getCreateTime().isBefore(endTime)))) {
                AutomessageSysUserRecord automessageSysUserRecordNew = new AutomessageSysUserRecord();
                automessageSysUserRecordNew.setUserId(sysUser.getUserId());
                automessageSysUserRecordNew.setCreateTime(LocalDateTime.now());
                sysUser.setLoginDate(LocalDateTime.now());
                sysUserMapper.updateById(sysUser);
                return ResultData.success(baseMapper.insert(automessageSysUserRecordNew));
            }
        }
        return null;
    }
    @Override
    public ResultData selectUserRecordCount() {
        return ResultData.success(baseMapper.selectUserRecordCount());
    }
    @Override
    public ResultData selectByDateType(Integer dateType) {
        if (dateType.equals(1))
            return ResultData.success(baseMapper.selectByDay());
        if (dateType.equals(2))
            return ResultData.success(baseMapper.selectByMonth());
        if (dateType.equals(3))
            return ResultData.success(baseMapper.selectByYear());
        return null;
    }
    @Override
    public Integer deleteDistinct() {
        return baseMapper.deleteDistinct();
    }
}
flower_city/src/main/java/com/dg/core/service/impl/SysUserServiceImpl.java
@@ -3,40 +3,251 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.dg.core.ResultData;
import com.dg.core.db.gen.entity.HuaChengSysUser;
import com.dg.core.db.gen.entity.OrganizationChartEntity;
import com.dg.core.db.gen.entity.SysUser;
import com.dg.core.db.gen.mapper.OrganizationChartMapper;
import com.dg.core.db.gen.mapper.SysUserMapper;
import com.dg.core.manager.TokenManager;
import com.dg.core.service.IHuaChengSysUserService;
import com.dg.core.service.ISysUserService;
import org.springframework.data.repository.query.Param;
import com.dg.core.util.SmsUtil;
import com.dg.core.util.Snowflake;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Service
public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> implements ISysUserService
{
    @Override
    public SysUser getUserById(Long id) {
        return baseMapper.selectById(id);
    }
    @Resource
    SmsUtil smsUtil;
    @Resource
    RedisTemplate<String, Object> redisTemplate;
    @Autowired
    TokenManager tokenManager;
    @Resource
    private OrganizationChartMapper organizationChartMapper;
    /**
     * 花城e+用户接口
     */
    @Autowired
    IHuaChengSysUserService iHuaChengSysUserService;
    @Override
    public SysUser getUserByAccount(String account) {
        HashMap<String, Object> map = new HashMap();
        map.put("login_name", account);
        List<SysUser> sysUsers = baseMapper.selectByMap(map);
        if (sysUsers.size() > 0) {
            return sysUsers.get(0);
        }
        return null;
        SysUser sysUsers = baseMapper.getUserByAccount(account);
        return sysUsers;
    }
    @Override
    public List<SysUser> selectConfigList(IPage<SysUser> page, Integer state,String userType) {
        return baseMapper.selectConfigList(page, state,userType);
    public ResultData smsSend(SysUser user){
       return smsUtil.sendSms(user.getPhonenumber());
    }
    @Override
    public ResultData loginByAccount(String phonenumber, String code){
        String code1 = redisTemplate.opsForValue().get(phonenumber) + "";
        SysUser sysUser = baseMapper.selectOne(new QueryWrapper<SysUser>().lambda().eq(SysUser::getPhonenumber, phonenumber));
        if (sysUser==null){
            //查询花城e+是否存在此用户
            HuaChengSysUser huaChengSysUser=iHuaChengSysUserService.selectData("","",phonenumber);
            if(huaChengSysUser==null)
            {
                SysUser newUser = new SysUser();
                newUser.setUserId(Snowflake.getId()+"");
                newUser.setLoginName(phonenumber);
                newUser.setUserName(phonenumber.substring(0,3)+"xxxx"+phonenumber.substring(7,11)+"用户");
                newUser.setUserType("3");
                newUser.setPhonenumber(phonenumber);
                newUser.setSex("1");
                newUser.setCreateTime(LocalDateTime.now());
                newUser.setUpdateTime(LocalDateTime.now());
                baseMapper.insertConfig(newUser);
            }
            else
            {
                SysUser newUser = new SysUser();
                newUser.setUserId(huaChengSysUser.getUserId()+"");
                newUser.setLoginName(huaChengSysUser.getPhone());
                newUser.setUserName(huaChengSysUser.getNickName());
                newUser.setUserType("3");
                newUser.setPhonenumber(huaChengSysUser.getPhone());
                newUser.setSex(huaChengSysUser.getSex());
                newUser.setAvatar(huaChengSysUser.getImageUrl());
                newUser.setCreateTime(LocalDateTime.now());
                newUser.setUpdateTime(LocalDateTime.now());
                newUser.setOpenid(huaChengSysUser.getOpenid());
                baseMapper.insertConfig(newUser);
            }
        }
        if (code.equals(code1)) {
            sysUser = baseMapper.selectOne(new QueryWrapper<SysUser>().lambda().eq(SysUser::getPhonenumber, phonenumber));
            if (sysUser!=null){
                String token = tokenManager.getTokenByUserId(sysUser.getUserId());
//        String token = tokenManager.createToken(user.getUserId(), user.getRoleId());
                System.out.println("token "+token);
                if (token == null) {
                    //生成一个token,保存用户登录状态
                    token = tokenManager.createToken(sysUser.getUserId(), sysUser.getUserId());
                }
                sysUser.setLoginDate(LocalDateTime.now());
                //更新登录时间
                this.updateConfig(sysUser);
                Map<String, Object> map = new HashMap<>();
                map.put("token", token);
                map.put("userId", sysUser.getUserId());
                map.put("userName", sysUser.getUserName());
                return ResultData.success(map);
            }
            else {
                return  ResultData.error("验证码错误");
            }
        }
        return  ResultData.error("验证码错误");
    }
    @Override
    public List<SysUser> selectListByDepartmentId(String departmentId, String classifyId) {
        List<String> departmentIds=new ArrayList<>();
        departmentIds.add(departmentId);
        List<OrganizationChartEntity> organizationChartEntities = organizationChartMapper.selectList(new QueryWrapper<OrganizationChartEntity>().lambda()
                .eq(OrganizationChartEntity::getParentId, departmentId));
        if (organizationChartEntities!=null){
            for (OrganizationChartEntity organizationChart:organizationChartEntities) {
                departmentIds.add(organizationChart.getId().toString());
                List<OrganizationChartEntity> organizationChartEntitiesUser = organizationChartMapper.selectList(new QueryWrapper<OrganizationChartEntity>().lambda()
                        .eq(OrganizationChartEntity::getParentId, organizationChart.getId().toString()));
                if (organizationChartEntitiesUser!=null)
                    departmentIds=this.getDepartmentIds(organizationChartEntitiesUser,departmentIds);
            }
        }
        if (classifyId==null)
            return baseMapper.selectListByDepartmentId(departmentIds,null,null);
        else
             return baseMapper.selectListByDepartmentId(departmentIds,","+classifyId,classifyId+",");
    }
    @Override
    public ResultData loginByPhonenumber(String phonenumber)
    {
        SysUser sysUser = baseMapper.selectOne(new QueryWrapper<SysUser>().lambda().eq(SysUser::getPhonenumber, phonenumber));
        if (sysUser==null){
            //查询花城e+是否存在此用户
            HuaChengSysUser huaChengSysUser=iHuaChengSysUserService.selectData("","",phonenumber);
            SysUser newUser = new SysUser();
            if(huaChengSysUser==null)
            {
                newUser.setUserId(Snowflake.getId()+"");
                newUser.setLoginName(phonenumber);
                newUser.setUserName(phonenumber.substring(0,3)+"xxxx"+phonenumber.substring(7,11)+"用户");
                newUser.setUserType("3");
                newUser.setPhonenumber(phonenumber);
                newUser.setSex("1");
                newUser.setCreateTime(LocalDateTime.now());
                newUser.setUpdateTime(LocalDateTime.now());
                baseMapper.insertConfig(newUser);
            }
            else
            {
                newUser.setUserId(huaChengSysUser.getUserId());
                newUser.setLoginName(huaChengSysUser.getPhone());
                newUser.setUserName(huaChengSysUser.getNickName());
                newUser.setUserType("3");
                newUser.setPhonenumber(huaChengSysUser.getPhone());
                newUser.setSex(huaChengSysUser.getSex());
                newUser.setAvatar(huaChengSysUser.getImageUrl());
                newUser.setCreateTime(LocalDateTime.now());
                newUser.setUpdateTime(LocalDateTime.now());
                newUser.setOpenid(huaChengSysUser.getOpenid());
                baseMapper.insertConfig(newUser);
            }
            String token = tokenManager.getTokenByUserId(newUser.getUserId());
//        String token = tokenManager.createToken(user.getUserId(), user.getRoleId());
            System.out.println("token " + token);
            if (token == null) {
                //生成一个token,保存用户登录状态
                token = tokenManager.createToken(newUser.getUserId(), newUser.getUserId());
            }
            Map<String, Object> map = new HashMap<>();
            map.put("token", token);
            map.put("userId", newUser.getUserId());
            map.put("userName", newUser.getUserName());
            return ResultData.success(map);
        }
        else
        {
            String token = tokenManager.getTokenByUserId(sysUser.getUserId());
//        String token = tokenManager.createToken(user.getUserId(), user.getRoleId());
            System.out.println("token " + token);
            if (token == null) {
                //生成一个token,保存用户登录状态
                token = tokenManager.createToken(sysUser.getUserId(), sysUser.getUserId());
            }
            sysUser.setLoginDate(LocalDateTime.now());
            //更新登录时间
            this.updateConfig(sysUser);
            Map<String, Object> map = new HashMap<>();
            map.put("token", token);
            map.put("userId", sysUser.getUserId());
            map.put("userName", sysUser.getUserName());
            return ResultData.success(map);
        }
    }
    @Override
    public List<SysUser> queryList(Integer userType,String keyWord) {
        return baseMapper.queryList(userType,keyWord);
    }
    public  List<String> getDepartmentIds(  List<OrganizationChartEntity> organizationChartEntities,List<String> departmentIds){
        for (OrganizationChartEntity organizationChart:organizationChartEntities) {
            departmentIds.add(organizationChart.getId().toString());
            List<OrganizationChartEntity> organizationChartEntitiesUser = organizationChartMapper.selectList(new QueryWrapper<OrganizationChartEntity>().lambda()
                    .eq(OrganizationChartEntity::getParentId, organizationChart.getId().toString()));
            if (organizationChartEntitiesUser!=null)
                departmentIds=this.getDepartmentIds(organizationChartEntitiesUser,departmentIds);
        }
        return  departmentIds;
    }
    @Override
    public List<SysUser> selectConfigList(IPage<SysUser> page, Integer state,String userType,String userName) {
        return baseMapper.selectConfigList(page, state,userType,userName);
    }
    @Override
    public SysUser selectData(String userId,String phonenumber,String loginName) {
        return baseMapper.selectData(userId,phonenumber,loginName);
    }
    /**
@@ -73,8 +284,8 @@
    }
    @Override
    public int selectNum(String userType) {
        return baseMapper.selectNum(userType);
    public int selectNum(String userType,String userName) {
        return baseMapper.selectNum(userType,userName);
    }
flower_city/src/main/java/com/dg/core/service/impl/TransactionEventImpl.java
@@ -4,10 +4,8 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.dg.core.db.gen.entity.KeywordEntity;
import com.dg.core.db.gen.entity.OrganizationChartEntity;
import com.dg.core.db.gen.entity.SysUser;
import com.dg.core.db.gen.entity.TransactionEvent;
import com.dg.core.db.gen.entity.*;
import com.dg.core.db.gen.mapper.AutomessageTransactionEventInterviewMapper;
import com.dg.core.db.gen.mapper.KeywordMapper;
import com.dg.core.db.gen.mapper.OrganizationChartMapper;
import com.dg.core.db.gen.mapper.TransactionEventMapper;
@@ -19,27 +17,63 @@
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
@Service
public class TransactionEventImpl extends ServiceImpl<TransactionEventMapper, TransactionEvent> implements ITransactionEventService {
    @Resource
    private   OrganizationChartMapper organizationChartMapper;
    private OrganizationChartMapper organizationChartMapper;
    @Resource
    private KeywordMapper keywordMapper;
    @Resource
    private AutomessageTransactionEventInterviewMapper automessageTransactionEventInterviewMapper;
    @Override
    public TransactionEvent selectConfigData(String Id) {
        return baseMapper.selectConfigData(Id);
    public TransactionEvent selectConfigData(String Id, SysUser sysUser) {
        TransactionEvent transactionEvent = baseMapper.selectConfigData(Id);
        //如果当前没有登录用户则不增加浏览次数
        if (sysUser != null) {
            LocalDateTime startTime = LocalDate.now().atTime(0, 0, 0);
            LocalDateTime endTime = LocalDate.now().atTime(23, 59, 59);
            AutomessageTransactionEventInterview automessageTransactionEventInterview = automessageTransactionEventInterviewMapper.selectOne(new QueryWrapper<AutomessageTransactionEventInterview>()
                    .lambda().eq(AutomessageTransactionEventInterview::getTransactionEventId, Id)
                    .eq(AutomessageTransactionEventInterview::getUserId, sysUser.getUserId())
                    .orderByDesc(AutomessageTransactionEventInterview::getInterviewTime)
                    .last("limit 1"));
            transactionEvent.setQueryTime(LocalDateTime.now());
            //判断上次访问时间是不是今天 如果是今天不增加浏览次数
            if (automessageTransactionEventInterview == null || (!(transactionEvent.getQueryTime().isAfter(startTime) && transactionEvent.getQueryTime().isBefore(endTime)))) {
                transactionEvent.setBrowseNum(transactionEvent.getBrowseNum() + 1);
                baseMapper.updateById(transactionEvent);
                AutomessageTransactionEventInterview automessageTransactionEventInterviewNew =
                        new AutomessageTransactionEventInterview();
                automessageTransactionEventInterviewNew.setTransactionEventId(Integer.valueOf(Id));
                automessageTransactionEventInterviewNew.setUserId(new Long(sysUser.getUserId()));
                automessageTransactionEventInterviewNew.setInterviewTime(LocalDateTime.now());
                automessageTransactionEventInterviewMapper.insert(automessageTransactionEventInterviewNew);
            }
        }
        return transactionEvent;
    }
    @Override
    public List<TransactionEvent> selectConfigList(IPage<TransactionEvent> page, Integer state,
                                                   String matterAndUser, String classifyGrade) {
        return baseMapper.selectConfigList(page,  state, matterAndUser, classifyGrade);
                                                   String keyword, String classifyGrade, List<String> ids) {
        return baseMapper.selectConfigList(page, state, keyword, classifyGrade, ids);
    }
    @Override
    public List<TransactionEvent> selectConfigList(String keyword, String classifyGrade, List<String> ids) {
        return baseMapper.selectConfigList(keyword, classifyGrade, ids);
    }
    @Override
@@ -58,37 +92,87 @@
    }
    @Override
    public int countNum(String matterAndUser,String classifyGrade) {
        return baseMapper.countNum( matterAndUser, classifyGrade);
    public int countNum(String matterAndUser, String classifyGrade, List<String> ids) {
        return baseMapper.countNum(matterAndUser, classifyGrade, ids);
    }
    @Override
    public QueryResults queryMatterNameList(IPage<Search> page,Integer state, Integer recommendSize,String keyWord) {
    public QueryResults queryMatterNameList(IPage<Search> page, Integer state, Integer recommendSize, String keyWord) {
        QueryResults queryResults = new QueryResults();
        List<Search> searches = baseMapper.selectSearch(page, state, keyWord);
        queryResults.setSearchList(searches);
        List<Search> searchesAssociate = baseMapper.selectSearchAssociate(page, recommendSize, keyWord);
        queryResults.setTransactionEventList(searchesAssociate);
        queryResults.setKeywordEntityList( keywordMapper.selectByName(keyWord));
        queryResults.setTotal((baseMapper.selectSearch(keyWord).size())+(baseMapper.selectSearchAssociate(keyWord).size()));
        queryResults.setKeywordEntityList(keywordMapper.selectByName(keyWord));
        queryResults.setTotal((baseMapper.selectSearch(keyWord).size()) + (baseMapper.selectSearchAssociate(keyWord).size()));
        List<TransactionEvent> transactionEventEntities = baseMapper.queryMatterNameList(keyWord, null);
        List<String> list = new ArrayList<>();
        for (TransactionEvent transactionEvent : transactionEventEntities) {
            if (transactionEvent.getAssociateNames() != null) {
                String[] associateNames = transactionEvent.getAssociateNames().split(",");
                for (String associateName : associateNames) {
                    list.add(associateName);
                }
            }
        }
        List<KeywordEntity> keywordEntityList = new ArrayList<>();
        String[] keywords = list.stream().distinct().collect(Collectors.joining(",")).split(",");//去重
        for (String keyword : keywords) {
            if (keyword != null && !keyword.equals("")) {
                KeywordEntity keywordEntity = new KeywordEntity();
                keywordEntity.setName(keyword);
                keywordEntityList.add(keywordEntity);
            }
        }
        queryResults.setKeywordAssociationList(keywordEntityList);
        return queryResults;
    }
    @Override
    public QueryResults queryMatterNameList(String keyWord) {
        QueryResults queryResults = new QueryResults();
        List<Search> searches = baseMapper.selectSearchList(keyWord);
        for (Search search : searches) {
            search.setTransactionEventList(baseMapper.queryMatterNameList(keyWord, search.getClassifyId().toString()));
        }
        queryResults.setSearchList(searches);
        List<Search> searchesAssociate = baseMapper.selectSearchAssociateDistinct(keyWord);
        for (Search search : searchesAssociate) {
            search.setTransactionEventList(baseMapper.queryAssociateNamesList(keyWord, search.getClassifyId().toString()));
        }
        queryResults.setTransactionEventList(searchesAssociate);
        queryResults.setKeywordEntityList(keywordMapper.selectByName(keyWord));
        return queryResults;
    }
    @Override
    public RecommendResult smartConsulting(String keyWord){
        RecommendResult recommendResult=new RecommendResult();
        List<KeywordEntity> keywordEntityList=new ArrayList<>();
        List<TransactionEvent> transactionEventEntities = baseMapper.queryMatterNameList(keyWord);
    public RecommendResult smartConsulting(String keyWord) {
        RecommendResult recommendResult = new RecommendResult();
        List<KeywordEntity> keywordEntityList = new ArrayList<>();
        List<TransactionEvent> transactionEventEntities = baseMapper.queryMatterNameList(keyWord, null);
        List<TransactionEvent> transactionEvents = baseMapper.queryAssociateNamesList(keyWord, null);
        recommendResult.setTransactionEventList(transactionEventEntities);
        for (TransactionEvent transactionEvent: transactionEventEntities) {
            String[] associateNames = transactionEvent.getAssociateNames().split(",");
            for (String  associateName: associateNames) {
        List<String> list = new ArrayList<>();
        for (TransactionEvent transactionEvent : transactionEvents) {
//            直接返回办事指南名称
            list.add(transactionEvent.getMatterName());
//            遍历关键词列表 可能后面流程更改会遇到暂时保存代码;
      /*      if (transactionEvent.getAssociateNames() != null) {
                String[] associateNames = transactionEvent.getAssociateNames().split(",");
                for (String associateName : associateNames) {
                    list.add(associateName);
                }
            }*/
        }
        String[] keywords = list.stream().distinct().collect(Collectors.joining(",")).split(",");//去重
        for (String keyword : keywords) {
            if (keyword != null && !keyword.equals("")) {
                KeywordEntity keywordEntity = new KeywordEntity();
                keywordEntity.setName(associateName);
                keywordEntity.setName(keyword);
                keywordEntityList.add(keywordEntity);
            }
        }
        recommendResult.setKeywordEntityList(keywordEntityList);
        List<OrganizationChartEntity> organizationChartEntities = organizationChartMapper.selectByKeyWord(keyWord);
@@ -97,13 +181,29 @@
    }
    @Override
    public String selectDataIfExist(String departmentId, String matterName) {
        return baseMapper.selectDataIfExist(departmentId, matterName);
    }
    @Override
    public List<String> selectclassifyId(String classifyId) {
        return baseMapper.selectclassifyId(classifyId);
    }
    @Override
    public int countNumByMatterName(String matterName) {
        return baseMapper.countNumByMatterName(matterName);
    }
    @Override
    public List<TransactionEvent> queryByClassifyIdList(String classifyId,Integer departmentId) {
        return baseMapper.queryByClassifyIdList(classifyId,departmentId);
    public List<TransactionEvent> queryByClassifyIdList(String classifyId, Integer departmentId) {
        return baseMapper.queryByClassifyIdList(classifyId, departmentId);
    }
    @Override
    public List<TransactionEvent> queryByClassifyIdList(IPage<TransactionEvent> page, Integer state, String classifyId, Integer departmentId) {
        return baseMapper.queryByClassifyIdList(page, state, classifyId, departmentId);
    }
    @Override
@@ -125,11 +225,11 @@
    @Override
    public int countNumByClassifyIdList(String classifyId, Integer departmentId) {
        return baseMapper.countNumByClassifyIdList(classifyId,departmentId);
        return baseMapper.countNumByClassifyIdList(classifyId, departmentId);
    }
    @Override
    public List<TransactionEvent> selectList(){
        return  baseMapper.selectList(new QueryWrapper<TransactionEvent>().lambda());
    public List<TransactionEvent> selectList() {
        return baseMapper.selectList(new QueryWrapper<TransactionEvent>().lambda());
    }
}
flower_city/src/main/java/com/dg/core/spring/SpringUtils.java
File was deleted
flower_city/src/main/java/com/dg/core/task/SendWsListener.java
@@ -1,5 +1,8 @@
package com.dg.core.task;
import com.dg.core.service.IGuideRepairOrderService;
import javax.annotation.Resource;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import javax.servlet.annotation.WebListener;
@@ -10,6 +13,9 @@
@WebListener
public class SendWsListener implements ServletContextListener {
    @Resource
    private IGuideRepairOrderService iGuideRepairOrderService;
    @Override
    public void contextDestroyed(ServletContextEvent arg0) {
        System.out.println("定时发送Xml信息监听--已关闭!");
@@ -47,6 +53,10 @@
            @Override
            public void run() {
                System.out.println("每刻任务已执行");
                //定时更新超时状态
                iGuideRepairOrderService.pushOvertimeGuideRepairOrder();
                //定时更新未评价的单据评价状态
                iGuideRepairOrderService.updateEvaluate();
                // TODO 写你的逻辑
            }
        }, defaultdate, 1 * 60 * 1000);// 定时每15分钟
@@ -57,40 +67,40 @@
         * 启动服务器后,若此时时间没过8点,等待。到了8点自动执行一次,24小时后(第二天8点)再执行一次,周而复始
         * 启动服务器后,若此时时间已经超过8点,则等到24小时后(第二天8点)才执行一次,周而复始
         */
        Timer dTimer = new Timer();
        dTimer.schedule(new TimerTask() {
            @Override
            public void run() {
                System.out.println("每日任务已经执行");
                // TODO 写你的逻辑
            }
        }, sendDate, 24 * 60 * 60 * 1000);// 定时24小时:24 * 60 * 60 * 1000
        System.out.println("每日定时发送Xml信息监听--已启动!");
//        Timer dTimer = new Timer();
//        dTimer.schedule(new TimerTask() {
//
//            @Override
//            public void run() {
//                System.out.println("每日任务已经执行");
//                // TODO 写你的逻辑
//            }
//        }, sendDate, 24 * 60 * 60 * 1000);// 定时24小时:24 * 60 * 60 * 1000
//        System.out.println("每日定时发送Xml信息监听--已启动!");
        /**
         * ----------------每月任务 ----------------
         * 启动服务器后,若此时时间没过8点,等待。到了8点自动执行判断是否是当前月份的1号,若是则执行一次,
         * 24小时后(第二天8点)再执行一次判断(每月1号以后后的29天或30天后才会是下月1号,再执行一次),周而复始 启动服务器后,若此时时间已经超过8点,会立刻执行一次,等到下个月1号再次执行一次,周而复始
         */
        Timer mTimer = new Timer();
        mTimer.schedule(new TimerTask() {
            @Override
            public void run() {
                Calendar c = Calendar.getInstance();
                int day = c.get(Calendar.DAY_OF_MONTH);
                System.out.println("月任务 判断中");
                if (day == 1) {
                    // 每天执行,若为每月1号才执行
                    System.out.println("月任务执行已执行");
                    // TODO 写你的逻辑
                }
            }
        }, sendDate, 24 * 60 * 60 * 1000);// 每天执行一次检查
        System.out.println("每月定时发送Xml信息监听--已启动!");
//        Timer mTimer = new Timer();
//        mTimer.schedule(new TimerTask() {
//
//            @Override
//            public void run() {
//                Calendar c = Calendar.getInstance();
//                int day = c.get(Calendar.DAY_OF_MONTH);
//                System.out.println("月任务 判断中");
//                if (day == 1) {
//                    // 每天执行,若为每月1号才执行
//                    System.out.println("月任务执行已执行");
//                    // TODO 写你的逻辑
//                }
//
//            }
//        }, sendDate, 24 * 60 * 60 * 1000);// 每天执行一次检查
//
//        System.out.println("每月定时发送Xml信息监听--已启动!");
    }
}
flower_city/src/main/java/com/dg/core/util/MessageUtils.java
File was deleted
flower_city/src/main/java/com/dg/core/util/PermissionUtil.java
New file
@@ -0,0 +1,58 @@
package com.dg.core.util;
import com.dg.core.controller.OrganizationController;
import com.dg.core.db.gen.entity.SysUser;
import com.dg.core.service.IOrganizationChartService;
import com.dg.core.service.impl.OrganizationChartImpl;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RestController;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
@RestController
public class PermissionUtil
{
    public static List<String> getPermission(SysUser sysUser,IOrganizationChartService iOrganizationChartService)
    {
        if (StringUtils.equals("3", sysUser.getRoleIds())) {
            if (StringUtils.isEmpty(sysUser.getDataPermission())) {
                return null;
            }
            else
            {
                List<String> ids = new ArrayList<>();
                if (sysUser.getDataPermission().indexOf(",")>0)
                {
                    String[] idl=sysUser.getDataPermission().split(",");
                    Collections.addAll(ids,idl);
                }
                else
                {
                    ids.add(sysUser.getDataPermission());
                }
                return ids;
            }
        }
        else if(StringUtils.equals("2", sysUser.getRoleIds()))
        {
            //导办人员
            List<String> ids=iOrganizationChartService.getIds(sysUser.getDepartmentId());
            return ids;
        }
        else if(StringUtils.equals("1", sysUser.getRoleIds()))
        {
            //管理员
            List<String> ids=iOrganizationChartService.getIds("");
            return ids;
        }
        else
        {
            return null;
        }
    }
}
flower_city/src/main/java/com/dg/core/util/Seq.java
File was deleted
flower_city/src/main/java/com/dg/core/util/ServletUtils.java
File was deleted
flower_city/src/main/java/com/dg/core/util/SmsUtil.java
New file
@@ -0,0 +1,241 @@
package com.dg.core.util;
import com.aliyuncs.CommonRequest;
import com.aliyuncs.CommonResponse;
import com.aliyuncs.DefaultAcsClient;
import com.aliyuncs.IAcsClient;
import com.aliyuncs.exceptions.ClientException;
import com.aliyuncs.http.MethodType;
import com.aliyuncs.profile.DefaultProfile;
import com.dg.core.AliyunConfig;
import com.dg.core.ResultData;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.util.HashMap;
import java.util.Random;
import java.util.concurrent.TimeUnit;
/**
 * 阿里云短信工具类
 */
@Component
public class SmsUtil {
    private static final Logger LOGGER = LoggerFactory.getLogger(SmsUtil.class);
    // 注入阿里云配置
    @Resource
    AliyunConfig aliyunConfig;
    // 注入redisTemplate
    @Resource
    RedisTemplate<String, Object> redisTemplate;
    /**
     * 发送短信登录验证码
     *
     * @param tel
     *            电话
     */
    public ResultData<Object> sendSms(String tel) {
        //cn-hangzhou 是阿里定义的签名固定值。填写阿里云申请短信签名的key和secret值
        DefaultProfile profile = DefaultProfile.getProfile("cn-hangzhou", aliyunConfig.getKey(), aliyunConfig.getScrect());
        /*阿里云提供的短信发送api的近期的相关代码,代码以最新的阿里api提供为准*/
        IAcsClient client = new DefaultAcsClient(profile);
        CommonRequest request = new CommonRequest();
        request.setSysMethod(MethodType.POST);
        request.setSysDomain("dysmsapi.aliyuncs.com");
        request.setSysVersion("2017-05-25");
        request.setSysAction("SendSms");
        request.putQueryParameter("RegionId", "cn-hangzhou");
        //  接收人电话
        request.putQueryParameter("PhoneNumbers", tel);
        //  短信签名
        request.putQueryParameter("SignName", "集慧科技");
        //  短信模板
        request.putQueryParameter("TemplateCode", aliyunConfig.getTemplateCode());
        Random rd = new Random();
        int code = rd.nextInt(900000) + 100000;
        //  短信内容
        request.putQueryParameter("TemplateParam", "{code:" + code + "}");
        //  获取短信发送的响应结果
        try {
            CommonResponse rs = client.getCommonResponse(request);
            LOGGER.debug(rs.getData().toString());
            // 把json格式的字符串装换成java的map的数据类型
            ObjectMapper mapper = new ObjectMapper();
            try {
                HashMap<String, Object> m = mapper.readValue(rs.getData().toString(), HashMap.class);
                if (m.get("Message").equals("OK")) {
                    redisTemplate.opsForValue().set(tel, code + "", 5, TimeUnit.MINUTES);
                    return  ResultData.success("短信发送成功!");
                }
            } catch (JsonProcessingException e) {
                e.printStackTrace();
                return ResultData.error("短信发送失败");
            }
        } catch (ClientException e) {
            e.printStackTrace();
            return ResultData.error("短信发送失败");
        }
        return ResultData.error("短信发送失败");
    }
    /**
     * 发送工单超时短信
     *
     * @param tel
     *            电话
     * @param name
     *            工单名
     */
    public ResultData<Object> sendSmsOvertime(String tel,String name) {
        //cn-hangzhou 是阿里定义的签名固定值。填写阿里云申请短信签名的key和secret值
        DefaultProfile profile = DefaultProfile.getProfile("cn-hangzhou", aliyunConfig.getKey(), aliyunConfig.getScrect());
        /*阿里云提供的短信发送api的近期的相关代码,代码以最新的阿里api提供为准*/
        IAcsClient client = new DefaultAcsClient(profile);
        CommonRequest request = new CommonRequest();
        request.setSysMethod(MethodType.POST);
        request.setSysDomain("dysmsapi.aliyuncs.com");
        request.setSysVersion("2017-05-25");
        request.setSysAction("SendSms");
        request.putQueryParameter("RegionId", "cn-hangzhou");
        //  接收人电话
        request.putQueryParameter("PhoneNumbers", tel);
        //  短信签名
        request.putQueryParameter("SignName", "集慧科技");
        //  短信模板
        request.putQueryParameter("TemplateCode", aliyunConfig.getTemplateCodeOvertime());
        Random rd = new Random();
        //  短信内容
        request.putQueryParameter("TemplateParam", "{name:'" + name + "'}");
        //  获取短信发送的响应结果
        try {
            CommonResponse rs = client.getCommonResponse(request);
            LOGGER.debug(rs.getData().toString());
            // 把json格式的字符串装换成java的map的数据类型
            ObjectMapper mapper = new ObjectMapper();
            try {
                HashMap<String, Object> m = mapper.readValue(rs.getData().toString(), HashMap.class);
                if (m.get("Message").equals("OK")) {
                     return  ResultData.success("短信发送成功!");
                }
            } catch (JsonProcessingException e) {
                e.printStackTrace();
                return ResultData.error("短信发送失败");
            }
        } catch (ClientException e) {
            e.printStackTrace();
            return ResultData.error("短信发送失败");
        }
        return ResultData.error("短信发送失败");
    }
    /**
     * 发送工单完成短信
     *
     * @param tel
     *            电话
     * @param name
     *            工单名
     */
    public ResultData<Object> sendSmsComplete(String tel,String name) {
        //cn-hangzhou 是阿里定义的签名固定值。填写阿里云申请短信签名的key和secret值
        DefaultProfile profile = DefaultProfile.getProfile("cn-hangzhou", aliyunConfig.getKey(), aliyunConfig.getScrect());
        /*阿里云提供的短信发送api的近期的相关代码,代码以最新的阿里api提供为准*/
        IAcsClient client = new DefaultAcsClient(profile);
        CommonRequest request = new CommonRequest();
        request.setSysMethod(MethodType.POST);
        request.setSysDomain("dysmsapi.aliyuncs.com");
        request.setSysVersion("2017-05-25");
        request.setSysAction("SendSms");
        request.putQueryParameter("RegionId", "cn-hangzhou");
        //  接收人电话
        request.putQueryParameter("PhoneNumbers", tel);
        //  短信签名
        request.putQueryParameter("SignName", "集慧科技");
        //  短信模板
        request.putQueryParameter("TemplateCode", aliyunConfig.getTemplateCodeComplete());
        Random rd = new Random();
        //  短信内容
        request.putQueryParameter("TemplateParam", "{name:'" + name + "'}");
        //  获取短信发送的响应结果
        try {
            CommonResponse rs = client.getCommonResponse(request);
            LOGGER.debug(rs.getData().toString());
            // 把json格式的字符串装换成java的map的数据类型
            ObjectMapper mapper = new ObjectMapper();
            try {
                HashMap<String, Object> m = mapper.readValue(rs.getData().toString(), HashMap.class);
                if (m.get("Message").equals("OK")) {
                    return  ResultData.success("短信发送成功!");
                }
            } catch (JsonProcessingException e) {
                e.printStackTrace();
                return ResultData.error("短信发送失败");
            }
        } catch (ClientException e) {
            e.printStackTrace();
            return ResultData.error("短信发送失败");
        }
        return ResultData.error("短信发送失败");
    }
    /**
     * 发送工单提交短信
     *
     * @param tel
     *            电话
     * @param name
     *            工单名
     */
    public ResultData<Object> sendSmsSubmit(String tel,String name) {
        //cn-hangzhou 是阿里定义的签名固定值。填写阿里云申请短信签名的key和secret值
        DefaultProfile profile = DefaultProfile.getProfile("cn-hangzhou", aliyunConfig.getKey(), aliyunConfig.getScrect());
        /*阿里云提供的短信发送api的近期的相关代码,代码以最新的阿里api提供为准*/
        IAcsClient client = new DefaultAcsClient(profile);
        CommonRequest request = new CommonRequest();
        request.setSysMethod(MethodType.POST);
        request.setSysDomain("dysmsapi.aliyuncs.com");
        request.setSysVersion("2017-05-25");
        request.setSysAction("SendSms");
        request.putQueryParameter("RegionId", "cn-hangzhou");
        //  接收人电话
        request.putQueryParameter("PhoneNumbers", tel);
        //  短信签名
        request.putQueryParameter("SignName", "集慧科技");
        //  短信模板
        request.putQueryParameter("TemplateCode", aliyunConfig.getTemplateCodeSubmit());
        Random rd = new Random();
        //  短信内容
        request.putQueryParameter("TemplateParam", "{name:'" + name + "'}");
        //  获取短信发送的响应结果
        try {
            CommonResponse rs = client.getCommonResponse(request);
            LOGGER.debug(rs.getData().toString());
            // 把json格式的字符串装换成java的map的数据类型
            ObjectMapper mapper = new ObjectMapper();
            try {
                HashMap<String, Object> m = mapper.readValue(rs.getData().toString(), HashMap.class);
                if (m.get("Message").equals("OK")) {
                    return  ResultData.success("短信发送成功!");
                }
            } catch (JsonProcessingException e) {
                e.printStackTrace();
                return ResultData.error("短信发送失败");
            }
        } catch (ClientException e) {
            e.printStackTrace();
            return ResultData.error("短信发送失败");
        }
        return ResultData.error("短信发送失败");
    }
}
flower_city/src/main/java/com/dg/core/util/StringUtils.java
File was deleted
flower_city/src/main/java/com/dg/core/util/TableDataInfo.java
@@ -1,5 +1,7 @@
package com.dg.core.util;
import com.dg.core.ResultData;
import java.io.Serializable;
import java.util.List;
@@ -8,7 +10,7 @@
 * 
 * @author ruoyi
 */
public class TableDataInfo implements Serializable
public class TableDataInfo<T> implements Serializable
{
    private static final long serialVersionUID = 1L;
@@ -16,7 +18,7 @@
    private long total;
    /** 列表数据 */
    private List<?> rows;
    private List<T> rows;
    /** 消息状态码 */
    private int result;
@@ -37,7 +39,7 @@
     * @param list 列表数据
     * @param total 总记录数
     */
    public TableDataInfo(List<?> list, long total)
    public TableDataInfo(List<T> list, long total)
    {
        this.rows = list;
        this.total = total;
@@ -53,12 +55,12 @@
        this.total = total;
    }
    public List<?> getRows()
    public List<T> getRows()
    {
        return rows;
    }
    public void setRows(List<?> rows)
    public void setRows(List<T> rows)
    {
        this.rows = rows;
    }
flower_city/src/main/java/com/dg/core/util/TemplateParam.java
New file
@@ -0,0 +1,19 @@
package com.dg.core.util;
import lombok.Data;
@Data
public class TemplateParam {
    private String key;
    private String value;
    public TemplateParam(String key, String value) {
        this.key = key;
        this.value = value;
    }
    public TemplateParam() {
    }
}
flower_city/src/main/java/com/dg/core/util/TestDate.java
New file
@@ -0,0 +1,154 @@
package com.dg.core.util;
import cn.hutool.core.date.DateTime;
import com.alibaba.fastjson.JSONObject;
import com.iceyyy.workday.WorkUtils;
import com.squareup.okhttp.OkHttpClient;
import com.squareup.okhttp.Request;
import com.squareup.okhttp.Response;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.*;
/**
 * <p>TestDate 此类用于:</p>
 * <p>@author:hujm</p>
 * <p>@date:2021年04月22日 17:43</p>
 * <p>@remark:</p>
 */
public class TestDate {
    public static void main(String[] args) {
        System.out.println(getJjr(2021, 4));
        System.out.println(getMonthWekDay(2021, 4));
        System.out.println(JJR(2021, 4));
    }
    /**
     * 获取周末和节假日
     *
     * @param year
     * @param month
     * @return
     */
    public static Set<String> JJR(int year, int month) {
        //获取所有的周末
        Set<String> monthWekDay = getMonthWekDay(year, month);
        //http://timor.tech/api/holiday api文档地址
        Map jjr = getJjr(year, month + 1);
        Integer code = (Integer) jjr.get("code");
        if (code != 0) {
            return monthWekDay;
        }
        Map<String, Map<String, Object>> holiday = (Map<String, Map<String, Object>>) jjr.get("holiday");
        Set<String> strings = holiday.keySet();
        for (String str : strings) {
            Map<String, Object> stringObjectMap = holiday.get(str);
            Integer wage = (Integer) stringObjectMap.get("wage");
            String date = (String) stringObjectMap.get("date");
            //筛选掉补班
            if (wage.equals(1)) {
                monthWekDay.remove(date);
            } else {
                monthWekDay.add(date);
            }
        }
        return monthWekDay;
    }
    /**
     * 获取节假日不含周末
     *
     * @param year
     * @param month
     * @return
     */
    private static Map getJjr(int year, int month) {
        String url = "http://timor.tech/api/holiday/year/";
        OkHttpClient client = new OkHttpClient();
        Response response;
        //解密数据
        String rsa = null;
        Request request = new Request.Builder()
                .url(url)
                .get()
                .addHeader("Content-Type", "application/x-www-form-urlencoded")
                .build();
        try {
            response = client.newCall(request).execute();
            rsa = response.body().string();
        } catch (IOException e) {
            e.printStackTrace();
        }
        return JSONObject.parseObject(rsa, Map.class);
    }
    /**
     * 获取周末  月从0开始
     *
     * @param year
     * @param mouth
     * @return
     */
    public static Set<String> getMonthWekDay(int year, int mouth) {
        Set<String> dateList = new HashSet<>();
        SimpleDateFormat simdf = new SimpleDateFormat("yyyy-MM-dd");
        Calendar calendar = new GregorianCalendar(year, mouth, 1);
        Calendar endCalendar = new GregorianCalendar(year, mouth, 1);
        endCalendar.add(Calendar.MONTH, 1);
        while (true) {
            int weekday = calendar.get(Calendar.DAY_OF_WEEK);
            if (weekday == 1 || weekday == 7) {
                dateList.add(simdf.format(calendar.getTime()));
            }
            calendar.add(Calendar.DATE, 1);
            if (calendar.getTimeInMillis() >= endCalendar.getTimeInMillis()) {
                break;
            }
        }
        return dateList;
    }
    /**
     * 判断该日期是否为工作日
     *
     * @param dateTime
     * @return
     */
    public Boolean  isWeekday(DateTime dateTime){
        TestDate td=new TestDate();
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(dateTime);
        Set<String> jjr = td.JJR(calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH));
        String strdate = dateTime.toString("yyyy-MM-dd");
        for (String ans: jjr ) {
            if (ans.equals(strdate))
                return  false;
        }
        return  true;
    }
    /**
     * 获取该日期的下个工作日是多少
     *
     * @param dateTime
     * @return
     */
    public  DateTime nextWeekDay(DateTime dateTime){
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(dateTime);
        while (true){
          calendar.add(calendar.DATE,1);
          SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
          String dateTimeToday = sdf.format(calendar.getTime());
          if (!WorkUtils.isWorkendDay(dateTimeToday)){
              return new DateTime(calendar);//返回日期
          }
        }
    }
}
flower_city/src/main/java/com/dg/core/util/WxSubscribeDTO.java
New file
@@ -0,0 +1,61 @@
package com.dg.core.util;
import java.util.List;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.apache.commons.lang3.StringUtils;
@ApiModel("微信订阅消息请求参数")
@Data
public class WxSubscribeDTO {
    @ApiModelProperty("用户在小程序的openid")
    private String touser;
    @ApiModelProperty("所需下发的订阅模板id")
    private String template_id;
    @ApiModelProperty("点击模板卡片后的跳转页面,仅限本小程序内的页面。支持带参数,(示例index?foo=bar)。该字段不填则模板无跳转。")
    private String page;
    @ApiModelProperty("模板内容,格式形如 { \"key1\": { \"value\": any }, \"key2\": { \"value\": any } }")
    private Object data;
    @ApiModelProperty("跳转小程序类型:developer为开发版;trial为体验版;formal为正式版;默认为正式版")
    private String miniprogram_state;
    @ApiModelProperty("进入小程序查看”的语言类型,支持zh_CN(简体中文)、en_US(英文)、zh_HK(繁体中文)、zh_TW(繁体中文),默认为zh_CN")
    private String lang;
    private List<TemplateParam> templateParamList;
    public String toJSON() {
        StringBuffer buffer = new StringBuffer();
        buffer.append("{");
        buffer.append(String.format("\"touser\":\"%s\"", this.touser)).append(",");
        buffer.append(String.format("\"template_id\":\"%s\"", this.template_id)).append(",");
        if (StringUtils.isNotEmpty(this.page)) {
            buffer.append(String.format("\"page\":\"%s\"", this.page)).append(",");
        }
        if (StringUtils.isNotEmpty(this.miniprogram_state)) {
            buffer.append(String.format("\"miniprogram_state\":\"%s\"", this.miniprogram_state)).append(",");
        }
        buffer.append("\"data\":{");
        TemplateParam param = null;
        for (int i = 0; i < this.templateParamList.size(); i++) {
            param = templateParamList.get(i);
            // 判断是否追加逗号
            if (i < this.templateParamList.size() - 1) {
                buffer.append(String.format("\"%s\": {\"value\":\"%s\"},", param.getKey(), param.getValue()));
            } else {
                buffer.append(String.format("\"%s\": {\"value\":\"%s\"}", param.getKey(), param.getValue()));
            }
        }
        buffer.append("}");
        buffer.append("}");
        return buffer.toString();
    }
}
flower_city/src/main/java/com/dg/core/util/WxUtil.java
New file
@@ -0,0 +1,279 @@
package com.dg.core.util;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.dg.core.db.gen.entity.GuideEvolveEntity;
import com.dg.core.db.gen.entity.GuideRepairOrder;
import com.dg.core.db.gen.entity.SysUser;
import com.dg.core.db.manual.mapper.util.ConstantPropertiesUtil;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.DefaultHttpClient;
import org.springframework.stereotype.Component;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.*;
@Slf4j
@Component
public class WxUtil {
    private static String ACCESS_TOKEN_URL = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential";
    private static String miniprogramState="trial";//trial 为测试版  formal 为正式版 切记发布版本时候改为正式版
    /**
     * 获取花城token,(ps:0=token获取失败)
     *
     * @return
     */
    public  String getBatteryCarAccessToken() throws Exception {
        String accessToken = "0";
        try {
            // 此处APP_ID APP_SECRET 在微信小程序后端可见
            // String accessTokenUrl = String.format(TEMP_URL, APP_ID, APP_SECRET);
            String accessTokenUrl = ACCESS_TOKEN_URL + "&appid=" + ConstantPropertiesUtil.WX_OPEN_APP_ID
                    + "&secret=" +ConstantPropertiesUtil.WX_OPEN_APP_SECRET;
            String result = httpGet(accessTokenUrl, null, null);
            Map<String, Object> resultMap = JSON.parseObject(result, Map.class);
            if (resultMap.containsKey("access_token")) {
                accessToken = resultMap.get("access_token").toString();
            }
        } catch (IOException ioe) {
            ioe.printStackTrace();
        }
        return accessToken;
    }
    /**
     * http请求工具类,get请求
     *
     * @param url
     * @param params
     * @param resonseCharSet
     * @return
     * @throws Exception
     */
    public static String httpGet(String url, Map<String, Object> params, String... resonseCharSet) throws Exception {
        DefaultHttpClient defaultHttpClient = null;
        BufferedReader bufferedReader = null;
        try {
            defaultHttpClient = new DefaultHttpClient();
            if (params != null) {
                StringBuilder stringBuilder = new StringBuilder();
                Iterator<String> iterator = params.keySet().iterator();
                String key;
                while (iterator.hasNext()) {
                    key = iterator.next();
                    Object val = params.get(key);
                    if (val instanceof List) {
                        List v = (List) val;
                        for (Object o : v) {
                            stringBuilder.append(key).append("=").append(o.toString()).append("&");
                        }
                    } else {
                        stringBuilder.append(key).append("=").append(val.toString()).append("&");
                    }
                }
                stringBuilder.deleteCharAt(stringBuilder.length() - 1);
                url = url + "?" + stringBuilder.toString();
            }
            HttpGet httpGet = new HttpGet(url);
            httpGet.setHeader("Content-Type", "application/json;charset=ut-8");
            HttpResponse httpResponse = defaultHttpClient.execute(httpGet);
            if (httpResponse.getStatusLine().getStatusCode() != 200) {
                String errorLog = "请求失败,errorCode:" + httpResponse.getStatusLine().getStatusCode();
                throw new Exception(url + errorLog);
            }
            // 读取返回信息
            String charSet = "utf-8";
            if (resonseCharSet != null && resonseCharSet.length > 0)
                charSet = resonseCharSet[0];
            String output;
            bufferedReader = new BufferedReader(new InputStreamReader(httpResponse.getEntity().getContent(), charSet));
            StringBuilder dataBuilder = new StringBuilder();
            while ((output = bufferedReader.readLine()) != null) {
                dataBuilder.append(output);
            }
            return dataBuilder.toString();
        } catch (IOException e) {
            e.printStackTrace();
            throw e;
        } finally {
            if (defaultHttpClient != null)
                defaultHttpClient.getConnectionManager().shutdown();
            if (bufferedReader != null)
                bufferedReader.close();
        }
    }
    /**
     * http请求工具类,post请求
     *
     * @param url   url
     * @param param 参数值 仅支持String
     * @return
     * @throws Exception
     */
    public static String httpPost(String url, String param) throws Exception {
        DefaultHttpClient defaultHttpClient = null;
        BufferedReader bufferedReader = null;
        try {
            defaultHttpClient = new DefaultHttpClient();
            HttpPost httpPost = new HttpPost(url);
            httpPost.setHeader("Content-Type", "application/json;charset=ut-8");
            if (StringUtils.isNotBlank(param)) {
                 HttpEntity httpEntity = new StringEntity(param, "utf-8");
                httpPost.setEntity(httpEntity);
            }
            HttpResponse httpResponse = defaultHttpClient.execute(httpPost);
            if (httpResponse.getStatusLine().getStatusCode() != 200) {
                String errorLog = "请求失败,errorCode:" + httpResponse.getStatusLine().getStatusCode();
                 throw new Exception(url + errorLog);
            }
            // 读取返回信息
            String output;
            bufferedReader = new BufferedReader(new InputStreamReader(httpResponse.getEntity().getContent(), "utf-8"));
            StringBuilder stringBuilder = new StringBuilder();
            while ((output = bufferedReader.readLine()) != null) {
                stringBuilder.append(output);
            }
             return stringBuilder.toString();
        } catch (IOException e) {
            e.printStackTrace();
            throw e;
        } finally {
            if (defaultHttpClient != null)
                defaultHttpClient.getConnectionManager().shutdown();
            if (bufferedReader != null)
                bufferedReader.close();
        }
    }
    public static String wxMessageModeSendUrl(String token, WxSubscribeDTO subscribeDTO) throws Exception {
        String tmpurl = "https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token=ACCESS_TOKEN";
        String url = tmpurl.replace("ACCESS_TOKEN", token);
        return httpPost(url, subscribeDTO.toJSON());
    }
    /**
     * 订阅消息推送
     *
     * @param accessToken
     *            获取会话token
     * @return 消息推送结果
     */
    static void sendSubscribe(String accessToken, WxSubscribeDTO subscribeDTO) throws Exception {
        String resultString = wxMessageModeSendUrl(accessToken, subscribeDTO);
        JSONObject jsonResult = JSON.parseObject(resultString);
        if (jsonResult != null) {
            int errorCode = jsonResult.getIntValue("errcode");
            String errorMessage = jsonResult.getString("errmsg");
            if (errorCode == 0) {
                System.out.println("订阅消息推送成功,openId:" + subscribeDTO.getTouser());
            } else {
                System.out.println(
                        "订阅消息发送失败,错误码:" + errorCode + ",错误信息:" + errorMessage + "用户openid:" + subscribeDTO.getTouser());
            }
        }
    }
    /**
     * 工单完成推送
     *
     * @param openId
     *            用户openid
     * @param accessToken
     *            token会话标识
     */
    public  void sendGuideRepairOrderComplete(String openId, String accessToken, String templateId, GuideEvolveEntity guideRepairOrder){
        WxSubscribeDTO subscribeDTO = new WxSubscribeDTO();
        subscribeDTO.setTouser(openId);
        subscribeDTO.setTemplate_id(templateId);
        subscribeDTO.setMiniprogram_state(miniprogramState);
        subscribeDTO.setPage("packageE/pages/myApply/myApply");
        List<TemplateParam> paras=new ArrayList<TemplateParam>();
        Calendar calendar = Calendar.getInstance();
        paras.add(new TemplateParam("thing1","导办申请"));//业务办理类型
        paras.add(new TemplateParam("thing3",guideRepairOrder.getRemark()));
        paras.add(new TemplateParam("phrase8","已完成"));
        calendar.setTime(new Date());
        paras.add(new TemplateParam("time4",calendar.get(Calendar.YEAR)+"年"+(calendar.get(Calendar.MONTH)+1)+"月"+calendar.get(Calendar.DATE)+"日"));//结束日期
        subscribeDTO.setTemplateParamList(paras);
        try {
            sendSubscribe(accessToken,subscribeDTO);
        }catch (Exception e){
            System.out.println(e.getMessage());
        }
    }
    /**
     * 工单提交推送
     *
     * @param openId
     *            用户openid
     * @param accessToken
     *            token会话标识
     */
    public  void sendGuideRepairOrderSubmit(String openId, String accessToken, String templateId, GuideRepairOrder guideRepairOrder){
        WxSubscribeDTO subscribeDTO = new WxSubscribeDTO();
        subscribeDTO.setTouser(openId);
        subscribeDTO.setTemplate_id(templateId);
        subscribeDTO.setMiniprogram_state(miniprogramState);
        subscribeDTO.setPage("packageE/pages/applyHandle/index/index");
        List<TemplateParam> paras=new ArrayList<TemplateParam>();
         paras.add(new TemplateParam("thing4","您有一个新的导办工单需要处理"));//工单新增提示内容
        paras.add(new TemplateParam("thing2",guideRepairOrder.getConsultUserName()));//咨询人
        paras.add(new TemplateParam("thing3",guideRepairOrder.getConsultContent()));//咨询内容
        subscribeDTO.setTemplateParamList(paras);
        try {
            sendSubscribe(accessToken,subscribeDTO);
        }catch (Exception e){
            System.out.println(e.getMessage());
        }
    }
    /**
     * 工单超时推送
     *
     * @param openId
     *            用户openid
     * @param accessToken
     *            token会话标识
     */
    public  void sendGuideRepairOrderOvertime(String openId, String accessToken, String templateId, SysUser sysUser){
        WxSubscribeDTO subscribeDTO = new WxSubscribeDTO();
        subscribeDTO.setTouser(openId);
        subscribeDTO.setTemplate_id(templateId);
        subscribeDTO.setMiniprogram_state(miniprogramState);
        subscribeDTO.setPage("packageE/pages/applyHandle/index/index");
        List<TemplateParam> paras=new ArrayList<TemplateParam>();
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(new Date());
        paras.add(new TemplateParam("time1",calendar.get(Calendar.YEAR)+"年"+(calendar.get(Calendar.MONTH)+1)+"月"+calendar.get(Calendar.DATE)+"日"));//超时时间
        paras.add(new TemplateParam("thing2",sysUser.getUserName()+"导办人员有个工单已超时"));//咨询人
         subscribeDTO.setTemplateParamList(paras);
        try {
            sendSubscribe(accessToken,subscribeDTO);
        }catch (Exception e){
            System.out.println(e.getMessage());
        }
    }
}
flower_city/src/main/java/com/dg/core/util/presence/Year2001.java
New file
@@ -0,0 +1,31 @@
package com.dg.core.util.presence;
import com.iceyyy.icework.presence.Year20xx;
import java.util.HashMap;
import java.util.Map;
public class Year2001 implements Year20xx {
    @Override
    public Map<String, Boolean> getYearMap() {
        Map<String, Boolean> map = new HashMap<String, Boolean>();
        map.put("20010120", false); // 班
        map.put("20010121", false); // 班
        map.put("20010124", true); // 休
        map.put("20010125", true); // 休
        map.put("20010126", true); // 休
        map.put("20010129", true); // 休
        map.put("20010130", true); // 休
        map.put("20010428", false); // 班
        map.put("20010429", false); // 班
        map.put("20010501", true); // 休
        map.put("20010502", true); // 休
        map.put("20010503", true); // 休
        map.put("20010504", true); // 休
        map.put("20010507", true); // 休
        map.put("20010929", false); // 班
        map.put("20010930", false); // 班
        map.put("20011001", true); // 休
        return map;
    }
}
flower_city/src/main/java/com/dg/core/util/presence/Year2002.java
New file
@@ -0,0 +1,31 @@
package com.dg.core.util.presence;
import com.iceyyy.icework.presence.Year20xx;
import java.util.HashMap;
import java.util.Map;
public class Year2002 implements Year20xx {
    @Override
    public Map<String, Boolean> getYearMap() {
        Map<String, Boolean> map = new HashMap<String, Boolean>();
        map.put("20020101", true); // 休
        map.put("20020102", true); // 休
        map.put("20020103", true); // 休
        map.put("20020209", false); // 班
        map.put("20020210", false); // 班
        map.put("20020212", true); // 休
        map.put("20020213", true); // 休
        map.put("20020214", true); // 休
        map.put("20020215", true); // 休
        map.put("20020218", true); // 休
        map.put("20020427", false); // 班
        map.put("20020428", false); // 班
        map.put("20020501", true); // 休
        map.put("20020502", true); // 休
        map.put("20020503", true); // 休
        map.put("20020506", true); // 休
        map.put("20020507", true); // 休
        return map;
    }
}
flower_city/src/main/java/com/dg/core/util/presence/Year2003.java
New file
@@ -0,0 +1,31 @@
package com.dg.core.util.presence;
import com.iceyyy.icework.presence.Year20xx;
import java.util.HashMap;
import java.util.Map;
public class Year2003 implements Year20xx {
    @Override
    public Map<String, Boolean> getYearMap() {
        Map<String, Boolean> map = new HashMap<String, Boolean>();
        map.put("20030101", true); // 休
        map.put("20030203", true); // 休
        map.put("20030204", true); // 休
        map.put("20030205", true); // 休
        map.put("20030206", true); // 休
        map.put("20030207", true); // 休
        map.put("20030208", false); // 班
        map.put("20030209", false); // 班
        map.put("20030426", false); // 班
        map.put("20030427", false); // 班
        map.put("20030501", true); // 休
        map.put("20030502", true); // 休
        map.put("20030505", true); // 休
        map.put("20030506", true); // 休
        map.put("20030507", true); // 休
        map.put("20030927", false); // 班
        map.put("20030928", false); // 班
        return map;
    }
}
flower_city/src/main/java/com/dg/core/util/presence/Year2004.java
New file
@@ -0,0 +1,31 @@
package com.dg.core.util.presence;
import com.iceyyy.icework.presence.Year20xx;
import java.util.HashMap;
import java.util.Map;
public class Year2004 implements Year20xx {
    @Override
    public Map<String, Boolean> getYearMap() {
        Map<String, Boolean> map = new HashMap<String, Boolean>();
        map.put("20040101", true); // 休
        map.put("20040117", false); // 班
        map.put("20040118", false); // 班
        map.put("20040122", true); // 休
        map.put("20040123", true); // 休
        map.put("20040126", true); // 休
        map.put("20040127", true); // 休
        map.put("20040128", true); // 休
        map.put("20040503", true); // 休
        map.put("20040504", true); // 休
        map.put("20040505", true); // 休
        map.put("20040506", true); // 休
        map.put("20040507", true); // 休
        map.put("20040508", false); // 班
        map.put("20040509", false); // 班
        map.put("20041001", true); // 休
        map.put("20041003", true); // 休
        return map;
    }
}
flower_city/src/main/java/com/dg/core/util/presence/Year2005.java
New file
@@ -0,0 +1,31 @@
package com.dg.core.util.presence;
import com.iceyyy.icework.presence.Year20xx;
import java.util.HashMap;
import java.util.Map;
public class Year2005 implements Year20xx {
    @Override
    public Map<String, Boolean> getYearMap() {
        Map<String, Boolean> map = new HashMap<String, Boolean>();
        map.put("20050103", true); // 休
        map.put("20050205", false); // 班
        map.put("20050206", false); // 班
        map.put("20050209", true); // 休
        map.put("20050210", true); // 休
        map.put("20050211", true); // 休
        map.put("20050214", true); // 休
        map.put("20050215", true); // 休
        map.put("20050430", false); // 班
        map.put("20050502", true); // 休
        map.put("20050503", true); // 休
        map.put("20050504", true); // 休
        map.put("20050505", true); // 休
        map.put("20050506", true); // 休
        map.put("20050508", false); // 班
        map.put("20051003", true); // 休
        map.put("20051004", true); // 休
        return map;
    }
}
flower_city/src/main/java/com/dg/core/util/presence/Year2006.java
New file
@@ -0,0 +1,31 @@
package com.dg.core.util.presence;
import com.iceyyy.icework.presence.Year20xx;
import java.util.HashMap;
import java.util.Map;
public class Year2006 implements Year20xx {
    @Override
    public Map<String, Boolean> getYearMap() {
        Map<String, Boolean> map = new HashMap<String, Boolean>();
        map.put("20060102", true); // 休
        map.put("20060103", true); // 休
        map.put("20060128", false); // 班
        map.put("20060130", true); // 休
        map.put("20060131", true); // 休
        map.put("20060201", true); // 休
        map.put("20060202", true); // 休
        map.put("20060203", true); // 休
        map.put("20060205", false); // 班
        map.put("20060429", false); // 班
        map.put("20060430", false); // 班
        map.put("20060501", true); // 休
        map.put("20060502", true); // 休
        map.put("20060503", true); // 休
        map.put("20060504", true); // 休
        map.put("20060505", true); // 休
        map.put("20060930", false); // 班
        return map;
    }
}
flower_city/src/main/java/com/dg/core/util/presence/Year2007.java
New file
@@ -0,0 +1,31 @@
package com.dg.core.util.presence;
import com.iceyyy.icework.presence.Year20xx;
import java.util.HashMap;
import java.util.Map;
public class Year2007 implements Year20xx {
    @Override
    public Map<String, Boolean> getYearMap() {
        Map<String, Boolean> map = new HashMap<String, Boolean>();
        map.put("20070101", true); // 休
        map.put("20070102", true); // 休
        map.put("20070103", true); // 休
        map.put("20070217", false); // 班
        map.put("20070219", true); // 休
        map.put("20070220", true); // 休
        map.put("20070221", true); // 休
        map.put("20070222", true); // 休
        map.put("20070223", true); // 休
        map.put("20070225", false); // 班
        map.put("20070428", false); // 班
        map.put("20070429", false); // 班
        map.put("20070501", true); // 休
        map.put("20070502", true); // 休
        map.put("20070503", true); // 休
        map.put("20070504", true); // 休
        map.put("20070507", true); // 休
        return map;
    }
}
flower_city/src/main/java/com/dg/core/util/presence/Year2008.java
New file
@@ -0,0 +1,31 @@
package com.dg.core.util.presence;
import com.iceyyy.icework.presence.Year20xx;
import java.util.HashMap;
import java.util.Map;
public class Year2008 implements Year20xx {
    @Override
    public Map<String, Boolean> getYearMap() {
        Map<String, Boolean> map = new HashMap<String, Boolean>();
        map.put("20080101", true); // 休
        map.put("20080203", false); // 班
        map.put("20080206", true); // 休
        map.put("20080207", true); // 休
        map.put("20080208", true); // 休
        map.put("20080211", true); // 休
        map.put("20080212", true); // 休
        map.put("20080404", true); // 休
        map.put("20080501", true); // 休
        map.put("20080502", true); // 休
        map.put("20080504", false); // 班
        map.put("20080609", true); // 休
        map.put("20080915", true); // 休
        map.put("20080927", false); // 班
        map.put("20080928", false); // 班
        map.put("20080929", true); // 休
        map.put("20080930", true); // 休
        return map;
    }
}
flower_city/src/main/java/com/dg/core/util/presence/Year2009.java
New file
@@ -0,0 +1,31 @@
package com.dg.core.util.presence;
import com.iceyyy.icework.presence.Year20xx;
import java.util.HashMap;
import java.util.Map;
public class Year2009 implements Year20xx {
    @Override
    public Map<String, Boolean> getYearMap() {
        Map<String, Boolean> map = new HashMap<String, Boolean>();
        map.put("20090101", true); // 休
        map.put("20090102", true); // 休
        map.put("20090104", false); // 班
        map.put("20090124", false); // 班
        map.put("20090126", true); // 休
        map.put("20090127", true); // 休
        map.put("20090128", true); // 休
        map.put("20090129", true); // 休
        map.put("20090130", true); // 休
        map.put("20090201", false); // 班
        map.put("20090406", true); // 休
        map.put("20090501", true); // 休
        map.put("20090528", true); // 休
        map.put("20090529", true); // 休
        map.put("20090531", false); // 班
        map.put("20090927", false); // 班
        map.put("20091001", true); // 休
        return map;
    }
}
flower_city/src/main/java/com/dg/core/util/presence/Year2010.java
New file
@@ -0,0 +1,31 @@
package com.dg.core.util.presence;
import com.iceyyy.icework.presence.Year20xx;
import java.util.HashMap;
import java.util.Map;
public class Year2010 implements Year20xx {
    @Override
    public Map<String, Boolean> getYearMap() {
        Map<String, Boolean> map = new HashMap<String, Boolean>();
        map.put("20100101", true); // 休
        map.put("20100215", true); // 休
        map.put("20100216", true); // 休
        map.put("20100217", true); // 休
        map.put("20100218", true); // 休
        map.put("20100219", true); // 休
        map.put("20100220", false); // 班
        map.put("20100221", false); // 班
        map.put("20100405", true); // 休
        map.put("20100503", true); // 休
        map.put("20100612", false); // 班
        map.put("20100613", false); // 班
        map.put("20100614", true); // 休
        map.put("20100615", true); // 休
        map.put("20100616", true); // 休
        map.put("20100919", false); // 班
        map.put("20100922", true); // 休
        return map;
    }
}
flower_city/src/main/java/com/dg/core/util/presence/Year2011.java
New file
@@ -0,0 +1,31 @@
package com.dg.core.util.presence;
import com.iceyyy.icework.presence.Year20xx;
import java.util.HashMap;
import java.util.Map;
public class Year2011 implements Year20xx {
    @Override
    public Map<String, Boolean> getYearMap() {
        Map<String, Boolean> map = new HashMap<String, Boolean>();
        map.put("20110103", true); // 休
        map.put("20110130", false); // 班
        map.put("20110202", true); // 休
        map.put("20110203", true); // 休
        map.put("20110204", true); // 休
        map.put("20110207", true); // 休
        map.put("20110208", true); // 休
        map.put("20110212", false); // 班
        map.put("20110402", false); // 班
        map.put("20110404", true); // 休
        map.put("20110405", true); // 休
        map.put("20110502", true); // 休
        map.put("20110606", true); // 休
        map.put("20110912", true); // 休
        map.put("20111003", true); // 休
        map.put("20111004", true); // 休
        map.put("20111005", true); // 休
        return map;
    }
}
flower_city/src/main/java/com/dg/core/util/presence/Year2012.java
New file
@@ -0,0 +1,31 @@
package com.dg.core.util.presence;
import com.iceyyy.icework.presence.Year20xx;
import java.util.HashMap;
import java.util.Map;
public class Year2012 implements Year20xx {
    @Override
    public Map<String, Boolean> getYearMap() {
        Map<String, Boolean> map = new HashMap<String, Boolean>();
        map.put("20120102", true); // 休
        map.put("20120103", true); // 休
        map.put("20120121", false); // 班
        map.put("20120123", true); // 休
        map.put("20120124", true); // 休
        map.put("20120125", true); // 休
        map.put("20120126", true); // 休
        map.put("20120127", true); // 休
        map.put("20120129", false); // 班
        map.put("20120331", false); // 班
        map.put("20120401", false); // 班
        map.put("20120402", true); // 休
        map.put("20120403", true); // 休
        map.put("20120404", true); // 休
        map.put("20120428", false); // 班
        map.put("20120430", true); // 休
        map.put("20120501", true); // 休
        return map;
    }
}
flower_city/src/main/java/com/dg/core/util/presence/Year2013.java
New file
@@ -0,0 +1,31 @@
package com.dg.core.util.presence;
import com.iceyyy.icework.presence.Year20xx;
import java.util.HashMap;
import java.util.Map;
public class Year2013 implements Year20xx {
    @Override
    public Map<String, Boolean> getYearMap() {
        Map<String, Boolean> map = new HashMap<String, Boolean>();
        map.put("20130101", true); // 休
        map.put("20130102", true); // 休
        map.put("20130103", true); // 休
        map.put("20130105", false); // 班
        map.put("20130106", false); // 班
        map.put("20130211", true); // 休
        map.put("20130212", true); // 休
        map.put("20130213", true); // 休
        map.put("20130214", true); // 休
        map.put("20130215", true); // 休
        map.put("20130216", false); // 班
        map.put("20130217", false); // 班
        map.put("20130404", true); // 休
        map.put("20130405", true); // 休
        map.put("20130407", false); // 班
        map.put("20130427", false); // 班
        map.put("20130428", false); // 班
        return map;
    }
}
flower_city/src/main/java/com/dg/core/util/presence/Year2014.java
New file
@@ -0,0 +1,31 @@
package com.dg.core.util.presence;
import com.iceyyy.icework.presence.Year20xx;
import java.util.HashMap;
import java.util.Map;
public class Year2014 implements Year20xx {
    @Override
    public Map<String, Boolean> getYearMap() {
        Map<String, Boolean> map = new HashMap<String, Boolean>();
        map.put("20140101", true); // 休
        map.put("20140126", false); // 班
        map.put("20140131", true); // 休
        map.put("20140203", true); // 休
        map.put("20140204", true); // 休
        map.put("20140205", true); // 休
        map.put("20140206", true); // 休
        map.put("20140208", false); // 班
        map.put("20140407", true); // 休
        map.put("20140501", true); // 休
        map.put("20140502", true); // 休
        map.put("20140504", false); // 班
        map.put("20140602", true); // 休
        map.put("20140908", true); // 休
        map.put("20140928", false); // 班
        map.put("20141001", true); // 休
        map.put("20141002", true); // 休
        return map;
    }
}
flower_city/src/main/java/com/dg/core/util/presence/Year2015.java
New file
@@ -0,0 +1,31 @@
package com.dg.core.util.presence;
import com.iceyyy.icework.presence.Year20xx;
import java.util.HashMap;
import java.util.Map;
public class Year2015 implements Year20xx {
    @Override
    public Map<String, Boolean> getYearMap() {
        Map<String, Boolean> map = new HashMap<String, Boolean>();
        map.put("20150101", true); // 休
        map.put("20150102", true); // 休
        map.put("20150104", false); // 班
        map.put("20150215", false); // 班
        map.put("20150218", true); // 休
        map.put("20150219", true); // 休
        map.put("20150220", true); // 休
        map.put("20150223", true); // 休
        map.put("20150224", true); // 休
        map.put("20150228", false); // 班
        map.put("20150406", true); // 休
        map.put("20150501", true); // 休
        map.put("20150622", true); // 休
        map.put("20150903", true); // 休
        map.put("20150904", true); // 休
        map.put("20150906", false); // 班
        map.put("20151001", true); // 休
        return map;
    }
}
flower_city/src/main/java/com/dg/core/util/presence/Year2016.java
New file
@@ -0,0 +1,31 @@
package com.dg.core.util.presence;
import com.iceyyy.icework.presence.Year20xx;
import java.util.HashMap;
import java.util.Map;
public class Year2016 implements Year20xx {
    @Override
    public Map<String, Boolean> getYearMap() {
        Map<String, Boolean> map = new HashMap<String, Boolean>();
        map.put("20160101", true); // 休
        map.put("20160206", false); // 班
        map.put("20160208", true); // 休
        map.put("20160209", true); // 休
        map.put("20160210", true); // 休
        map.put("20160211", true); // 休
        map.put("20160212", true); // 休
        map.put("20160214", false); // 班
        map.put("20160404", true); // 休
        map.put("20160502", true); // 休
        map.put("20160609", true); // 休
        map.put("20160610", true); // 休
        map.put("20160612", false); // 班
        map.put("20160915", true); // 休
        map.put("20160916", true); // 休
        map.put("20160918", false); // 班
        map.put("20161003", true); // 休
        return map;
    }
}
flower_city/src/main/java/com/dg/core/util/presence/Year2017.java
New file
@@ -0,0 +1,31 @@
package com.dg.core.util.presence;
import com.iceyyy.icework.presence.Year20xx;
import java.util.HashMap;
import java.util.Map;
public class Year2017 implements Year20xx {
    @Override
    public Map<String, Boolean> getYearMap() {
        Map<String, Boolean> map = new HashMap<String, Boolean>();
        map.put("20170102", true); // 休
        map.put("20170122", false); // 班
        map.put("20170127", true); // 休
        map.put("20170130", true); // 休
        map.put("20170131", true); // 休
        map.put("20170201", true); // 休
        map.put("20170202", true); // 休
        map.put("20170204", false); // 班
        map.put("20170401", false); // 班
        map.put("20170403", true); // 休
        map.put("20170404", true); // 休
        map.put("20170501", true); // 休
        map.put("20170527", false); // 班
        map.put("20170529", true); // 休
        map.put("20170530", true); // 休
        map.put("20170930", false); // 班
        map.put("20171002", true); // 休
        return map;
    }
}
flower_city/src/main/java/com/dg/core/util/presence/Year2018.java
New file
@@ -0,0 +1,41 @@
package com.dg.core.util.presence;
import com.iceyyy.icework.presence.Year20xx;
import java.util.HashMap;
import java.util.Map;
public class Year2018 implements Year20xx {
    @Override
    public Map<String, Boolean> getYearMap() {
        Map<String, Boolean> map = new HashMap<String, Boolean>();
        map.put("20180101", true); // 休
        map.put("20180211", false); // 班
        map.put("20180215", true); // 休
        map.put("20180216", true); // 休
        map.put("20180219", true); // 休
        map.put("20180220", true); // 休
        map.put("20180221", true); // 休
        map.put("20180224", false); // 班
        map.put("20180405", true); // 休
        map.put("20180406", true); // 休
        map.put("20180408", false); // 班
        map.put("20180428", false); // 班
        map.put("20180430", true); // 休
        map.put("20180501", true); // 休
        map.put("20180618", true); // 休
        map.put("20180924", true); // 休
        map.put("20180929", false); // 班
        map.put("20180930", false); // 班
        map.put("20181001", true); // 休
        map.put("20181002", true); // 休
        map.put("20181003", true); // 休
        map.put("20181004", true); // 休
        map.put("20181005", true); // 休
        map.put("20181229", false); // 班
        map.put("20181231", true); // 休
        return map;
    }
}
flower_city/src/main/java/com/dg/core/util/presence/Year2019.java
New file
@@ -0,0 +1,39 @@
package com.dg.core.util.presence;
import com.iceyyy.icework.presence.Year20xx;
import java.util.HashMap;
import java.util.Map;
public class Year2019 implements Year20xx {
    @Override
    public Map<String, Boolean> getYearMap() {
        Map<String, Boolean> map = new HashMap<String, Boolean>();
        map.put("20190101", true); // 休
        map.put("20190202", false); // 班
        map.put("20190203", false); // 班
        map.put("20190204", true); // 休
        map.put("20190205", true); // 休
        map.put("20190206", true); // 休
        map.put("20190207", true); // 休
        map.put("20190208", true); // 休
        map.put("20190405", true); // 休
        map.put("20190428", false); // 班
        map.put("20190501", true); // 休
        map.put("20190502", true); // 休
        map.put("20190503", true); // 休
        map.put("20190505", false); // 班
        map.put("20190607", true); // 休
        map.put("20190913", true); // 休
        map.put("20190929", false); // 班
        map.put("20191001", true); // 休
        map.put("20191002", true); // 休
        map.put("20191003", true); // 休
        map.put("20191004", true); // 休
        map.put("20191007", true); // 休
        map.put("20191012", false); // 班
        return map;
    }
}
flower_city/src/main/java/com/dg/core/util/presence/Year2020.java
New file
@@ -0,0 +1,42 @@
package com.dg.core.util.presence;
import com.iceyyy.icework.presence.Year20xx;
import java.util.HashMap;
import java.util.Map;
public class Year2020 implements Year20xx {
    @Override
    public Map<String, Boolean> getYearMap() {
        Map<String, Boolean> map = new HashMap<String, Boolean>();
        map.put("20200101", true); // 休
        map.put("20200119", false); // 班
        map.put("20200124", true); // 休
        map.put("20200127", true); // 休
        map.put("20200128", true); // 休
        map.put("20200129", true); // 休
        map.put("20200130", true); // 休
        map.put("20200131", true); // 休(+)
        // map.put("20200201", false); // 班
        map.put("20200406", true); // 休
        map.put("20200426", false); // 班
        map.put("20200501", true); // 休
        map.put("20200504", true); // 休
        map.put("20200505", true); // 休
        map.put("20200509", false); // 班
        map.put("20200625", true); // 休
        map.put("20200626", true); // 休
        map.put("20200628", false); // 班
        map.put("20200927", false); // 班
        map.put("20201001", true); // 休
        map.put("20201002", true); // 休
        map.put("20201005", true); // 休
        map.put("20201006", true); // 休
        map.put("20201007", true); // 休
        map.put("20201008", true); // 休
        map.put("20201010", false); // 班
        return map;
    }
}
flower_city/src/main/java/com/dg/core/util/presence/Year20xx.java
New file
@@ -0,0 +1,7 @@
package com.dg.core.util.presence;
import java.util.Map;
public interface Year20xx {
    public Map<String, Boolean> getYearMap();
}
flower_city/src/main/java/com/dg/core/util/presence/YearMap.java
New file
@@ -0,0 +1,84 @@
package com.dg.core.util.presence;
import com.iceyyy.icework.presence.Year2001;
import com.iceyyy.icework.presence.Year2002;
import com.iceyyy.icework.presence.Year2003;
import com.iceyyy.icework.presence.Year2004;
import com.iceyyy.icework.presence.Year2005;
import com.iceyyy.icework.presence.Year2006;
import com.iceyyy.icework.presence.Year2007;
import com.iceyyy.icework.presence.Year2008;
import com.iceyyy.icework.presence.Year2009;
import com.iceyyy.icework.presence.Year2010;
import com.iceyyy.icework.presence.Year2011;
import com.iceyyy.icework.presence.Year2012;
import com.iceyyy.icework.presence.Year2013;
import com.iceyyy.icework.presence.Year2014;
import com.iceyyy.icework.presence.Year2015;
import com.iceyyy.icework.presence.Year2016;
import com.iceyyy.icework.presence.Year2017;
import com.iceyyy.icework.presence.Year2018;
import com.iceyyy.icework.presence.Year2019;
import com.iceyyy.icework.presence.Year2020;
import com.iceyyy.icework.presence.Year20xx;
import java.util.Map;
public class YearMap {
    public static void main(String[] args) {
        int year = 2001;
        System.out.println(YearMap.yearMap(year));
    }
    public static Map<String, Boolean> yearMap(int year) {
        com.iceyyy.icework.presence.Year20xx createMap = createMap(year);
        return createMap.getYearMap();
    }
    private static Year20xx createMap(int year) {
        if (year == 2001) {
            return new Year2001();
        } else if (year == 2002) {
            return new Year2002();
        } else if (year == 2003) {
            return new Year2003();
        } else if (year == 2004) {
            return new Year2004();
        } else if (year == 2005) {
            return new Year2005();
        } else if (year == 2006) {
            return new Year2006();
        } else if (year == 2007) {
            return new Year2007();
        } else if (year == 2008) {
            return new Year2008();
        } else if (year == 2009) {
            return new Year2009();
        } else if (year == 2010) {
            return new Year2010();
        } else if (year == 2011) {
            return new Year2011();
        } else if (year == 2012) {
            return new Year2012();
        } else if (year == 2013) {
            return new Year2013();
        } else if (year == 2014) {
            return new Year2014();
        } else if (year == 2015) {
            return new Year2015();
        } else if (year == 2016) {
            return new Year2016();
        } else if (year == 2017) {
            return new Year2017();
        } else if (year == 2018) {
            return new Year2018();
        } else if (year == 2019) {
            return new Year2019();
        } else if (year == 2020) {
            return new Year2020();
        }
        return null;
    }
}
flower_city/src/main/java/com/dg/core/util/workday/Data.java
New file
@@ -0,0 +1,19 @@
package com.dg.core.util.workday;
public class Data {
    private int date;
    private boolean repose;
    public Data(int date, boolean repose) {
        this.date = date;
        this.repose = repose;
    }
    public int getDate() {
        return date;
    }
    public boolean getRepose() {
        return repose;
    }
}
flower_city/src/main/java/com/dg/core/util/workday/WorkUtils.java
New file
@@ -0,0 +1,699 @@
package com.dg.core.util.workday;
import com.iceyyy.icework.presence.YearMap;
import com.iceyyy.nongli.NongLi;
import com.iceyyy.workday.Data;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStreamReader;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.Map.Entry;
/**
 * iceworkday工作日算法
 * @author IceWater zxcyhn@126.com
 */
public class WorkUtils {
    public static Map<String, Boolean> weekendMap(String year) {
        if (year == null || "".equals(year.trim())) {
            throw new RuntimeException("传入的参数为空");
        }
        if (year.length() != 4) {
            throw new RuntimeException("传入的参数格式错误,应传入yyyyMMdd格式的日期");
        }
        int yearNum = Integer.parseInt(year.substring(0, 4));
        if (yearNum < 2001) {
            throw new RuntimeException("工作日计算年份需要大于等于2001");
        } else if (yearNum > 2017) {
            Map<String, Boolean> mapFromFile = weekMapFromFile();
            mapFromFile = filterMap(mapFromFile, yearNum);
            Map<String, Boolean> map = complexCalculate(yearNum);
            if (mapFromFile.size() != 0) {
                map.putAll(mapFromFile);
            }
            return map;
        } else {
            Map<String, Boolean> map = YearMap.yearMap(yearNum);
            return map;
        }
    }
    public static boolean isWorkendDay(String ymd) {
        if (ymd == null || "".equals(ymd)) {
            throw new RuntimeException("输入的日期不能为空");
        }
        ymd = convertDate(ymd);
        if("19991230".equals(ymd)) {
            return true;
        }
        if("19991231".equals(ymd)) {
            return true;
        }
        String yearStr = ymd.substring(0, 4);
        Map<String, Boolean> weekendMap = weekendMap(yearStr);
        Boolean isWeekend = weekendMap.get(ymd);
        if (isWeekend == null) {
            int day = getWeekDay(ymd);
            if (day == 0 || day == 6) {
                return true;
            } else {
                return false;
            }
        } else {
            return isWeekend;
        }
    }
    private static String convertDate(String dateStr) {
        String[] array = null;
        if (dateStr.contains("-")) {
            array = dateStr.split("-");
        } else if (dateStr.contains(".")) {
            array = dateStr.split("\\.");
        } else if (dateStr.contains("/")) {
            array = dateStr.split("/");
        } else if (dateStr.contains("_")) {
            array = dateStr.split("_");
        } else if (dateStr.contains("年")) {
            if (dateStr.endsWith("日")) {
                dateStr = dateStr.substring(0, dateStr.length() - 1);
            }
            array = dateStr.split("年|月");
        } else {
            if (dateStr.length() == 8) {
                return dateStr;
            }
        }
        String yearStr = array[0];
        String monthStr = array[1];
        String dayStr = array[2];
        StringBuilder sb = new StringBuilder();
        for (int i = 0; i < 4 - yearStr.length(); i++) {
            sb.append("0");
        }
        sb.append(yearStr);
        if (monthStr.length() == 1) {
            sb.append("0");
        }
        sb.append(monthStr);
        if (dayStr.length() == 1) {
            sb.append("0");
        }
        sb.append(dayStr);
        return sb.toString();
    }
    private static Map<String, Boolean> complexCalculate(int yearNum) {
        Map<String, Boolean> map = new HashMap<String, Boolean>();
        String newYear = "0101";
        String chingming = "0405";
        String labor = "0501";
        String dragon = "0505L";
        String autumn = "0815L";
        Map<String, Boolean> newYearMap = gregorianNewYearMap(yearNum, newYear);
        Map<String, Boolean> nextYearMap = gregorianNewYearMap(yearNum + 1, newYear);
        map.putAll(currentYearMap(newYearMap, nextYearMap, yearNum));
        map.putAll(festivalMap(yearNum, chingming));
        map.putAll(newYearLunarMap(yearNum));
        map.putAll(festivalMap(yearNum, labor));
        map.putAll(festivalMap(yearNum, dragon));
        map.putAll(nationalAutumnMap(yearNum, autumn));
        return map;
    }
    private static Map<String, Boolean> nationalAutumnMap(int yearNum, String autumn) {
        Map<String, Boolean> map = new HashMap<String, Boolean>();
        String ymd = yearNum + "0815";// 中秋节
        String ymdNational = yearNum + "1001";// 国庆节
        String ymdAutumn = convertGregorian(ymd);
        int day = getWeekDay(ymdNational);
        Map<String, Boolean> mapHistory = getHistoryMap();
        String key = ymdAutumn.substring(4, 8) + "_" + day;
        if (mapHistory.get(key) != null) {
            // TODO 此处希望从近几年相似的月份中进行类比,是一种优化算法,暂未实现,但不影响算法使用。
        }
        String monthAutumn = ymdAutumn.substring(4, 6);
        String dateAutumn = ymdAutumn.substring(6, 8);
        int monthAutumnNum = Integer.parseInt(monthAutumn);
        int dateAutumnNum = Integer.parseInt(dateAutumn);
        if (dateAutumnNum < 25 && monthAutumnNum == 9) {// 中秋在9.25以前
            // 中秋最早9.7 最晚10.8
            map.putAll(festivalMap(yearNum, "0815L"));// 中秋
            map.putAll(nationalMap(yearNum));// 国庆
        } else if (monthAutumnNum == 10) {// 中秋节在10月份
            map.putAll(nationalOctMap(yearNum));// 国庆
        } else if (dateAutumnNum >= 25 && monthAutumnNum == 9) {// 中秋节在9.25 9.26
                                                                // 9.27 9.28
                                                                // 9.29 9.30
            // 1. 中秋 25 全部两段 周一~周日
            // 2. 中秋 26 全部两段 周二~周一
            // 3. 中秋 27 最复杂 周三~周二
            // 4. 中秋 28 全部休8天 周四~周三
            // 5. 中秋 29 全部休8天 周五~周四
            // 6. 中秋 30 全部休8天 周六~周五
            // 补班 最早 9.22 最迟 10.12
            int dayAutumn = getWeekDay(ymdAutumn);
            map.putAll(complexMap(yearNum, dateAutumnNum, dayAutumn));// 国庆
        } else {
            throw new RuntimeException("中秋日期格式错误");
        }
        return map;
    }
    private static Map<String, Boolean> complexMap(int yearNum, int dateAutumnNum, int dayAutumn) {
        com.iceyyy.workday.Data[][] table = getAutumnTable(dateAutumnNum);
        com.iceyyy.workday.Data[] row = getRow(table, dateAutumnNum, dayAutumn);
        return row2map(row, yearNum);
    }
    private static Map<String, Boolean> row2map(com.iceyyy.workday.Data[] row, int yearNum) {
        Map<String, Boolean> map = new HashMap<String, Boolean>();
        for (int i = 0; i < row.length; i++) {
            com.iceyyy.workday.Data data = row[i];
            int date = data.getDate();
            boolean repose = data.getRepose();
            String monthStr = "10";// 10月份
            if (date > 15) {
                monthStr = "09";// 9月份
            }
            String dateStr = date + "";
            if (date < 10) {
                dateStr = "0" + date;
            }
            String key = yearNum + monthStr + dateStr;
            map.put(key, repose);
        }
        return map;
    }
    /**
     * 根据中秋的星期获取具体的某一行的数据
     *
     * @param table
     * @param dayAutumn
     * @return
     */
    private static com.iceyyy.workday.Data[] getRow(com.iceyyy.workday.Data[][] table, int dateAutumnNum, int dayAutumn) {
        // 25 1 [0]
        // 25 2 [1]
        // 25 3 [2]
        // 26 1 [6]
        // 26 2 [0]
        // 26 3 [1]
        // 26 4 [2]
        // date+index-23=day
        // index=day+23-date
        int index = (dayAutumn + 31 - dateAutumnNum) % 7;
        return table[index];
    }
    private static com.iceyyy.workday.Data[][] getAutumnTable(int dateAutumnNum) {
        com.iceyyy.workday.Data[][] days1 = {
                { new com.iceyyy.workday.Data(25, true), new com.iceyyy.workday.Data(30, false), new com.iceyyy.workday.Data(2, true), new com.iceyyy.workday.Data(3, true), new com.iceyyy.workday.Data(4, true),
                        new com.iceyyy.workday.Data(5, true), new com.iceyyy.workday.Data(6, true), new com.iceyyy.workday.Data(8, false) },
                { new com.iceyyy.workday.Data(22, false), new com.iceyyy.workday.Data(24, true), new com.iceyyy.workday.Data(25, true), new com.iceyyy.workday.Data(29, false), new com.iceyyy.workday.Data(30, false),
                        new com.iceyyy.workday.Data(1, true), new com.iceyyy.workday.Data(2, true), new com.iceyyy.workday.Data(3, true), new com.iceyyy.workday.Data(4, true), new com.iceyyy.workday.Data(5, true) },
                { new com.iceyyy.workday.Data(25, true), new com.iceyyy.workday.Data(26, true), new com.iceyyy.workday.Data(27, true), new com.iceyyy.workday.Data(28, false), new com.iceyyy.workday.Data(29, false),
                        new com.iceyyy.workday.Data(1, true), new com.iceyyy.workday.Data(2, true), new com.iceyyy.workday.Data(3, true), new com.iceyyy.workday.Data(4, true), new com.iceyyy.workday.Data(7, true),
                        new com.iceyyy.workday.Data(12, false) },
                { new com.iceyyy.workday.Data(21, false), new com.iceyyy.workday.Data(25, true), new com.iceyyy.workday.Data(26, true), new com.iceyyy.workday.Data(28, false), new com.iceyyy.workday.Data(1, true),
                        new com.iceyyy.workday.Data(2, true), new com.iceyyy.workday.Data(3, true), new com.iceyyy.workday.Data(6, true), new com.iceyyy.workday.Data(7, true),
                        new com.iceyyy.workday.Data(11, false) },
                { new com.iceyyy.workday.Data(20, false), new com.iceyyy.workday.Data(25, true), new com.iceyyy.workday.Data(1, true), new com.iceyyy.workday.Data(2, true), new com.iceyyy.workday.Data(5, true),
                        new com.iceyyy.workday.Data(6, true), new com.iceyyy.workday.Data(7, true), new com.iceyyy.workday.Data(10, false) },
                { new com.iceyyy.workday.Data(27, true), new com.iceyyy.workday.Data(1, true), new com.iceyyy.workday.Data(4, true), new com.iceyyy.workday.Data(5, true), new com.iceyyy.workday.Data(6, true),
                        new com.iceyyy.workday.Data(7, true), new com.iceyyy.workday.Data(9, false), new com.iceyyy.workday.Data(10, false) },
                { new com.iceyyy.workday.Data(26, true), new com.iceyyy.workday.Data(3, true), new com.iceyyy.workday.Data(4, true), new com.iceyyy.workday.Data(5, true), new com.iceyyy.workday.Data(6, true),
                        new com.iceyyy.workday.Data(7, true), new com.iceyyy.workday.Data(8, false), new com.iceyyy.workday.Data(9, false) } };
        com.iceyyy.workday.Data[][] days2 = {
                { new com.iceyyy.workday.Data(23, false), new com.iceyyy.workday.Data(25, true), new com.iceyyy.workday.Data(26, true), new com.iceyyy.workday.Data(30, false), new com.iceyyy.workday.Data(2, true),
                        new com.iceyyy.workday.Data(3, true), new com.iceyyy.workday.Data(4, true), new com.iceyyy.workday.Data(5, true), new com.iceyyy.workday.Data(6, true),
                        new com.iceyyy.workday.Data(8, false) },
                { new com.iceyyy.workday.Data(23, false), new com.iceyyy.workday.Data(26, true), new com.iceyyy.workday.Data(27, true), new com.iceyyy.workday.Data(28, true), new com.iceyyy.workday.Data(29, false),
                        new com.iceyyy.workday.Data(30, false), new com.iceyyy.workday.Data(1, true), new com.iceyyy.workday.Data(2, true), new com.iceyyy.workday.Data(3, true), new com.iceyyy.workday.Data(4, true),
                        new com.iceyyy.workday.Data(5, true), new com.iceyyy.workday.Data(13, false) },
                { new com.iceyyy.workday.Data(22, false), new com.iceyyy.workday.Data(26, true), new com.iceyyy.workday.Data(27, true), new com.iceyyy.workday.Data(29, false), new com.iceyyy.workday.Data(1, true),
                        new com.iceyyy.workday.Data(2, true), new com.iceyyy.workday.Data(3, true), new com.iceyyy.workday.Data(4, true), new com.iceyyy.workday.Data(7, true) },
                { new com.iceyyy.workday.Data(21, false), new com.iceyyy.workday.Data(26, true), new com.iceyyy.workday.Data(1, true), new com.iceyyy.workday.Data(2, true), new com.iceyyy.workday.Data(3, true),
                        new com.iceyyy.workday.Data(6, true), new com.iceyyy.workday.Data(7, true) },
                { new com.iceyyy.workday.Data(1, true), new com.iceyyy.workday.Data(2, true), new com.iceyyy.workday.Data(5, true), new com.iceyyy.workday.Data(6, true), new com.iceyyy.workday.Data(7, true),
                        new com.iceyyy.workday.Data(10, false) },
                { new com.iceyyy.workday.Data(1, true), new com.iceyyy.workday.Data(4, true), new com.iceyyy.workday.Data(5, true), new com.iceyyy.workday.Data(6, true), new com.iceyyy.workday.Data(7, true),
                        new com.iceyyy.workday.Data(9, false) },
                { new com.iceyyy.workday.Data(26, true), new com.iceyyy.workday.Data(3, true), new com.iceyyy.workday.Data(4, true), new com.iceyyy.workday.Data(5, true), new com.iceyyy.workday.Data(6, true),
                        new com.iceyyy.workday.Data(7, true), new com.iceyyy.workday.Data(8, false), new com.iceyyy.workday.Data(9, false) } };
        com.iceyyy.workday.Data[][] days3 = {
                { new com.iceyyy.workday.Data(23, false), new com.iceyyy.workday.Data(24, false), new com.iceyyy.workday.Data(25, true), new com.iceyyy.workday.Data(26, true), new com.iceyyy.workday.Data(27, true),
                        new com.iceyyy.workday.Data(30, false), new com.iceyyy.workday.Data(2, true), new com.iceyyy.workday.Data(3, true), new com.iceyyy.workday.Data(4, true), new com.iceyyy.workday.Data(5, true),
                        new com.iceyyy.workday.Data(6, true), new com.iceyyy.workday.Data(8, false) },
                { new com.iceyyy.workday.Data(27, true), new com.iceyyy.workday.Data(28, true), new com.iceyyy.workday.Data(1, true), new com.iceyyy.workday.Data(2, true), new com.iceyyy.workday.Data(3, true),
                        new com.iceyyy.workday.Data(4, true), new com.iceyyy.workday.Data(6, false), new com.iceyyy.workday.Data(7, false) },
                { new com.iceyyy.workday.Data(27, true), new com.iceyyy.workday.Data(30, true), new com.iceyyy.workday.Data(1, true), new com.iceyyy.workday.Data(2, true), new com.iceyyy.workday.Data(3, true),
                        new com.iceyyy.workday.Data(4, true), new com.iceyyy.workday.Data(5, false), new com.iceyyy.workday.Data(6, false) },
                { new com.iceyyy.workday.Data(1, true), new com.iceyyy.workday.Data(2, true), new com.iceyyy.workday.Data(3, true), new com.iceyyy.workday.Data(6, true), new com.iceyyy.workday.Data(7, true),
                        new com.iceyyy.workday.Data(11, false) },
                { new com.iceyyy.workday.Data(1, true), new com.iceyyy.workday.Data(2, true), new com.iceyyy.workday.Data(5, true), new com.iceyyy.workday.Data(6, true), new com.iceyyy.workday.Data(7, true),
                        new com.iceyyy.workday.Data(10, false) },
                { new com.iceyyy.workday.Data(27, true), new com.iceyyy.workday.Data(1, true), new com.iceyyy.workday.Data(4, true), new com.iceyyy.workday.Data(5, true), new com.iceyyy.workday.Data(6, true),
                        new com.iceyyy.workday.Data(7, true), new com.iceyyy.workday.Data(9, false), new com.iceyyy.workday.Data(10, false) },
                { new com.iceyyy.workday.Data(24, false), new com.iceyyy.workday.Data(26, true), new com.iceyyy.workday.Data(27, true), new com.iceyyy.workday.Data(3, true), new com.iceyyy.workday.Data(4, true),
                        new com.iceyyy.workday.Data(5, true), new com.iceyyy.workday.Data(6, true), new com.iceyyy.workday.Data(7, true), new com.iceyyy.workday.Data(8, false),
                        new com.iceyyy.workday.Data(9, false) } };
        com.iceyyy.workday.Data[][] days4 = {
                { new com.iceyyy.workday.Data(28, true), new com.iceyyy.workday.Data(29, true), new com.iceyyy.workday.Data(2, true), new com.iceyyy.workday.Data(3, true), new com.iceyyy.workday.Data(4, true),
                        new com.iceyyy.workday.Data(5, true), new com.iceyyy.workday.Data(7, false), new com.iceyyy.workday.Data(8, false) },
                { new com.iceyyy.workday.Data(28, true), new com.iceyyy.workday.Data(1, true), new com.iceyyy.workday.Data(2, true), new com.iceyyy.workday.Data(3, true), new com.iceyyy.workday.Data(4, true),
                        new com.iceyyy.workday.Data(5, true), new com.iceyyy.workday.Data(6, false), new com.iceyyy.workday.Data(7, false) },
                { new com.iceyyy.workday.Data(30, true), new com.iceyyy.workday.Data(1, true), new com.iceyyy.workday.Data(2, true), new com.iceyyy.workday.Data(3, true), new com.iceyyy.workday.Data(4, true),
                        new com.iceyyy.workday.Data(6, false) },
                { new com.iceyyy.workday.Data(27, false), new com.iceyyy.workday.Data(29, true), new com.iceyyy.workday.Data(30, true), new com.iceyyy.workday.Data(1, true), new com.iceyyy.workday.Data(2, true),
                        new com.iceyyy.workday.Data(3, true) },
                { new com.iceyyy.workday.Data(26, false), new com.iceyyy.workday.Data(27, false), new com.iceyyy.workday.Data(28, true), new com.iceyyy.workday.Data(29, true), new com.iceyyy.workday.Data(30, true),
                        new com.iceyyy.workday.Data(1, true), new com.iceyyy.workday.Data(2, true), new com.iceyyy.workday.Data(5, true) },
                { new com.iceyyy.workday.Data(25, false), new com.iceyyy.workday.Data(26, false), new com.iceyyy.workday.Data(28, true), new com.iceyyy.workday.Data(29, true), new com.iceyyy.workday.Data(30, true),
                        new com.iceyyy.workday.Data(1, true), new com.iceyyy.workday.Data(4, true), new com.iceyyy.workday.Data(5, true) },
                { new com.iceyyy.workday.Data(25, false), new com.iceyyy.workday.Data(28, true), new com.iceyyy.workday.Data(29, true), new com.iceyyy.workday.Data(30, true), new com.iceyyy.workday.Data(3, true),
                        new com.iceyyy.workday.Data(4, true), new com.iceyyy.workday.Data(5, true), new com.iceyyy.workday.Data(8, false) } };
        com.iceyyy.workday.Data[][] days5 = {
                { new com.iceyyy.workday.Data(29, true), new com.iceyyy.workday.Data(2, true), new com.iceyyy.workday.Data(3, true), new com.iceyyy.workday.Data(4, true), new com.iceyyy.workday.Data(5, true),
                        new com.iceyyy.workday.Data(6, true), new com.iceyyy.workday.Data(7, false), new com.iceyyy.workday.Data(8, false) },
                { new com.iceyyy.workday.Data(1, true), new com.iceyyy.workday.Data(2, true), new com.iceyyy.workday.Data(3, true), new com.iceyyy.workday.Data(4, true), new com.iceyyy.workday.Data(5, true),
                        new com.iceyyy.workday.Data(7, false) },
                { new com.iceyyy.workday.Data(28, false), new com.iceyyy.workday.Data(30, true), new com.iceyyy.workday.Data(1, true), new com.iceyyy.workday.Data(2, true), new com.iceyyy.workday.Data(3, true),
                        new com.iceyyy.workday.Data(4, true) },
                { new com.iceyyy.workday.Data(27, false), new com.iceyyy.workday.Data(28, false), new com.iceyyy.workday.Data(29, true), new com.iceyyy.workday.Data(30, true), new com.iceyyy.workday.Data(1, true),
                        new com.iceyyy.workday.Data(2, true), new com.iceyyy.workday.Data(3, true), new com.iceyyy.workday.Data(6, true) },
                { new com.iceyyy.workday.Data(26, false), new com.iceyyy.workday.Data(27, false), new com.iceyyy.workday.Data(29, true), new com.iceyyy.workday.Data(30, true), new com.iceyyy.workday.Data(1, true),
                        new com.iceyyy.workday.Data(2, true), new com.iceyyy.workday.Data(5, true), new com.iceyyy.workday.Data(6, true) },
                { new com.iceyyy.workday.Data(26, false), new com.iceyyy.workday.Data(29, true), new com.iceyyy.workday.Data(30, true), new com.iceyyy.workday.Data(1, true), new com.iceyyy.workday.Data(4, true),
                        new com.iceyyy.workday.Data(5, true), new com.iceyyy.workday.Data(6, true), new com.iceyyy.workday.Data(9, false) },
                { new com.iceyyy.workday.Data(29, true), new com.iceyyy.workday.Data(30, true), new com.iceyyy.workday.Data(3, true), new com.iceyyy.workday.Data(4, true), new com.iceyyy.workday.Data(5, true),
                        new com.iceyyy.workday.Data(6, true), new com.iceyyy.workday.Data(8, false), new com.iceyyy.workday.Data(9, false) } };
        com.iceyyy.workday.Data[][] days6 = {
                { new com.iceyyy.workday.Data(2, true), new com.iceyyy.workday.Data(3, true), new com.iceyyy.workday.Data(4, true), new com.iceyyy.workday.Data(5, true), new com.iceyyy.workday.Data(6, true),
                        new com.iceyyy.workday.Data(8, false) },
                { new com.iceyyy.workday.Data(29, false), new com.iceyyy.workday.Data(1, true), new com.iceyyy.workday.Data(2, true), new com.iceyyy.workday.Data(3, true), new com.iceyyy.workday.Data(4, true),
                        new com.iceyyy.workday.Data(5, true) },
                { new com.iceyyy.workday.Data(28, false), new com.iceyyy.workday.Data(29, false), new com.iceyyy.workday.Data(30, true), new com.iceyyy.workday.Data(1, true), new com.iceyyy.workday.Data(2, true),
                        new com.iceyyy.workday.Data(3, true), new com.iceyyy.workday.Data(4, true), new com.iceyyy.workday.Data(7, true) },
                { new com.iceyyy.workday.Data(27, false), new com.iceyyy.workday.Data(28, false), new com.iceyyy.workday.Data(30, true), new com.iceyyy.workday.Data(1, true), new com.iceyyy.workday.Data(2, true),
                        new com.iceyyy.workday.Data(3, true), new com.iceyyy.workday.Data(6, true), new com.iceyyy.workday.Data(7, true) },
                { new com.iceyyy.workday.Data(27, false), new com.iceyyy.workday.Data(30, true), new com.iceyyy.workday.Data(1, true), new com.iceyyy.workday.Data(2, true), new com.iceyyy.workday.Data(5, true),
                        new com.iceyyy.workday.Data(6, true), new com.iceyyy.workday.Data(7, true), new com.iceyyy.workday.Data(10, false) },
                { new com.iceyyy.workday.Data(30, true), new com.iceyyy.workday.Data(1, true), new com.iceyyy.workday.Data(4, true), new com.iceyyy.workday.Data(5, true), new com.iceyyy.workday.Data(6, true),
                        new com.iceyyy.workday.Data(7, true), new com.iceyyy.workday.Data(9, false), new com.iceyyy.workday.Data(10, false) },
                { new com.iceyyy.workday.Data(30, true), new com.iceyyy.workday.Data(3, true), new com.iceyyy.workday.Data(4, true), new com.iceyyy.workday.Data(5, true), new com.iceyyy.workday.Data(6, true),
                        new com.iceyyy.workday.Data(7, true), new com.iceyyy.workday.Data(8, false), new Data(9, false) } };
        if (dateAutumnNum == 25) {
            return days1;
        } else if (dateAutumnNum == 26) {
            return days2;
        } else if (dateAutumnNum == 27) {
            return days3;
        } else if (dateAutumnNum == 28) {
            return days4;
        } else if (dateAutumnNum == 29) {
            return days5;
        } else if (dateAutumnNum == 30) {
            return days6;
        }
        throw new RuntimeException("中秋日期格式错误");
    }
    private static Map<String, Boolean> nationalOctMap(int yearNum) {
        String ymd = yearNum + "1001";
        int day = getWeekDay(ymd);
        Map<String, Boolean> map = new HashMap<String, Boolean>();
        int[][] correction = { { 30 }, { 29, 30 }, { 28, 29 }, { 28, 11 }, { 27, 10 }, { 9, 10 }, { 9 } };
        for (int i = 0; i < correction[day].length; i++) {
            int corr = correction[day][i];
            if (corr <= 15) {
                String key = yearNum + "10" + convertNum(corr);
                map.put(key, false);
            } else {
                String key = yearNum + "09" + convertNum(corr);
                map.put(key, false);
            }
        }
        int start = 0;
        if (day == 0 || day == 1) {
            start = -1;
        }
        int end = 0;
        if (day == 5) {
            end = 1;
        }
        for (int i = 0 + start; i < 8 + end; i++) {// 国庆节一般为7天
            String curDate = addDay(ymd, i);
            int curDay = getWeekDay(curDate);
            if (curDay > 0 && curDay < 6) {
                map.put(curDate, true);
            }
        }
        return map;
    }
    private static Map<String, Boolean> nationalMap(int yearNum) {
        String ymd = yearNum + "1001";
        int day = getWeekDay(ymd);
        Map<String, Boolean> map = new HashMap<String, Boolean>();
        int[][] correction = { { 30, 8 }, { 29, 14 }, { 29, 12 }, { 28, 11 }, { 10 }, { 26, 9 }, { 8, 9 } };
        if (day > 0 && day < 6) {
            map.put(ymd, true);
        }
        for (int i = 0; i < correction[day].length; i++) {
            int corr = correction[day][i];
            if (corr <= 15) {
                String key = yearNum + "10" + convertNum(corr);
                map.put(key, false);
            } else {
                String key = yearNum + "09" + convertNum(corr);
                map.put(key, false);
            }
        }
        for (int i = 0; i < 7; i++) {// 国庆节一般为7天
            String curDate = addDay(ymd, i);
            int curDay = getWeekDay(curDate);
            if (curDay > 0 && curDay < 6) {
                map.put(curDate, true);
            }
        }
        return map;
    }
    private static String convertNum(int num) {
        if (num < 10) {
            return "0" + num;
        } else {
            return num + "";
        }
    }
    private static Map<String, Boolean> getHistoryMap() {
        Map<String, Boolean> map = new HashMap<String, Boolean>();
        return map;
    }
    private static Map<String, Boolean> newYearLunarMap(int yearNum) {
        Map<String, Boolean> map = new HashMap<String, Boolean>();
        String ymd = yearNum + "0101";
        ymd = convertGregorian(ymd);
        int day = getWeekDay(ymd);
        int[][] correction = { { 6, 7 }, { -2, 6 }, { -3, 12 }, { -3, 10 }, { -4, 9 }, { -5, 8 }, { -6, 7 } };
        int correct = -1;
        if (yearNum == 2014 || yearNum <= 2007) {
            correction = new int[][] { { 6, 7 }, { -2, 6 }, { -3, 12 }, { -3, 10 }, { -4, 9 }, { -5, 8 }, { -6, 7 } };
            correct = 0;
        }
        for (int i = 0; i < correction[day].length; i++) {
            map.put(addDay(ymd, correction[day][i]), false);
        }
        for (int i = 0; i < 7; i++) {
            String curYmd = addDay(ymd, i + correct);
            int dayCur = getWeekDay(curYmd);
            if (dayCur > 0 && dayCur < 6) {
                map.put(curYmd, true);
            }
        }
        return map;
    }
    private static Map<String, Boolean> currentYearMap(Map<String, Boolean> newYearMap,
            Map<String, Boolean> nextYearMap, int yearNum) {
        String yearStr = yearNum + "";
        Set<String> setCur = newYearMap.keySet();
        Set<String> setNext = nextYearMap.keySet();
        Map<String, Boolean> map = new HashMap<String, Boolean>();
        for (String key : setCur) {
            if (key.startsWith(yearStr)) {
                map.put(key, newYearMap.get(key));
            }
        }
        for (String key : setNext) {
            if (key.startsWith(yearStr)) {
                map.put(key, nextYearMap.get(key));
            }
        }
        return map;
    }
    private static Map<String, Boolean> festivalMap(int yearNum, String festival) {
        String ymd = yearNum + festival;
        if (festival.endsWith("L")) {
            festival = festival.substring(0, festival.length() - 1);
            ymd = convertGregorian(ymd);
        } else if ("0405".equals(festival)) {
            ymd = chingming(yearNum);
        }
        return small(ymd);
    }
    private static Map<String, Boolean> gregorianNewYearMap(int yearNum, String festival) {
        String ymd = yearNum + festival;
        return gregorianNewYearSmall(ymd);
    }
    private static String chingming(int yearNum) {
        return yearNum + "040" + qing(yearNum);
    }
    /**
     * 计算清明节的日期(可计算范围: 1700-3100)
     *
     * @param year
     *            需要计算的年份
     * @return 清明节在公历中的日期
     */
    private static int qing(int year) {
        if (year == 2232) {
            return 4;
        }
        if (year < 1700) {
            throw new RuntimeException("1700年以前暂时不支持");
        }
        if (year >= 3100) {
            throw new RuntimeException("3100年以后暂时不支持");
        }
        double[] coefficient = { 5.15, 5.37, 5.59, 4.82, 5.02, 5.26, 5.48, 4.70, 4.92, 5.135, 5.36, 4.60, 4.81, 5.04,
                5.26 };
        int mod = year % 100;
        return (int) (mod * 0.2422 + coefficient[year / 100 - 17] - mod / 4);
    }
    private static Map<String, Boolean> small(String ymd) {
        int day = getWeekDay(ymd);
        Map<String, Boolean> map = new HashMap<String, Boolean>();
        int[][] correction = { { 1 }, {}, { -1, -3 }, { -1, -2, -3, -4 }, { 1, 3 }, {}, { 2 } };
        // 6.取-1 2014年清明 2015年端午 6. 取2 2012年端午
        if (day > 0 && day < 6) {
            map.put(ymd, true);
        }
        if (day == 3) {
            map.put(addDay(ymd, -1), true);
            map.put(addDay(ymd, -2), true);
            map.put(addDay(ymd, -3), false);
            map.put(addDay(ymd, -4), false);
        } else {
            boolean flag = true;
            for (int i = 0; i < correction[day].length; i++) {
                map.put(addDay(ymd, correction[day][i]), flag);
                flag = false;
            }
        }
        return map;
    }
    private static Map<String, Boolean> gregorianNewYearSmall(String ymd) {
        int day = getWeekDay(ymd);
        Map<String, Boolean> map = new HashMap<String, Boolean>();
        int[][] correction = { { 1 }, {}, { 1, 2, 4, 5 }, {}, { 1, 2, 3 }, {}, { 2 } };
        // 6.取-1 2014年清明 2015年端午 6. 取2 2012年端午 0{+1}1{} 2{+1+2 +4b+5b} 3{}
        // 4{+1,+2,+3b}5{}6{+2}
        if (day > 0 && day < 6) {
            map.put(ymd, true);
        }
        if (day == 2) {
            map.put(addDay(ymd, 1), true);
            map.put(addDay(ymd, 2), true);
            map.put(addDay(ymd, 4), false);
            map.put(addDay(ymd, 5), false);
        } else if (day == 3) {
        } else if (day == 4) {
            map.put(addDay(ymd, 1), true);
            map.put(addDay(ymd, 3), false);
        } else {
            boolean flag = true;
            for (int i = 0; i < correction[day].length; i++) {
                map.put(addDay(ymd, correction[day][i]), flag);
                flag = false;
            }
        }
        return map;
    }
    private static int getWeekDay(String ymd) {
        SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
        Date date = null;
        try {
            date = sdf.parse(ymd);
        } catch (ParseException e) {
            e.printStackTrace();
        }
        Calendar calendar = Calendar.getInstance();
        calendar.setTime(date);
        int day = calendar.get(Calendar.DAY_OF_WEEK) - 1;
        return day;
    }
    private static String convertGregorian(String ymd) {// private
        String cnYmd = convertCnYmd(ymd);
        int start = 18;
        int len = 60;// 公历农历按最多相差60天计算。
        for (int i = start; i < start + len; i++) {
            String gregorianDate = addDay(ymd, i);
            String lunarDate = NongLi.getDate(gregorianDate);
            if (cnYmd.equals(lunarDate)) {
                return gregorianDate;
            }
        }
        return null;
    }
    private static String convertCnYmd(String ymd) {// private
        String numArray = "零一二三四五六七八九十";
        String m = ymd.substring(4, 6);
        String d = ymd.substring(6, 8);
        int month = Integer.parseInt(m);
        int day = Integer.parseInt(d);
        String yearStr = "";
        for (int i = 0; i < 4; i++) {
            yearStr += numArray.charAt(ymd.charAt(i) - '0') + "";
        }
        yearStr += "年";
        String monthStr = "";
        if ("11".equals(m)) {
            monthStr = "冬";
        } else if ("12".equals(m)) {
            monthStr = "腊";
        } else if ("01".equals(m)) {
            monthStr = "正";
        } else {
            monthStr = numArray.charAt(month) + "";
        }
        monthStr += "月";
        String dayStr = "";
        if (day <= 10) {
            dayStr = "初" + numArray.charAt(day);
        } else if (day < 20) {
            dayStr = "十" + numArray.charAt(day - 10);
        } else if (day == 20) {
            dayStr = "二十";
        } else if (day == 30) {
            dayStr = "三十";
        } else {
            dayStr = "廿" + numArray.charAt(day - 20);
        }
        return yearStr + monthStr + dayStr;
    }
    private static String addDay(String date, int dayLength) {
        SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
        Date dateSrc = null;
        try {
            dateSrc = sdf.parse(date);
        } catch (ParseException e) {
            e.printStackTrace();
        }
        Calendar cal = Calendar.getInstance();
        cal.setTime(dateSrc);
        cal.set(Calendar.DAY_OF_MONTH, cal.get(Calendar.DAY_OF_MONTH) + dayLength);
        return sdf.format(cal.getTime());
    }
    private static String[] read(String fileName) {
        BufferedReader br = null;
        ArrayList<String> list = new ArrayList<String>();
        try {
            br = new BufferedReader(
                    new InputStreamReader(WorkUtils.class.getClassLoader().getResourceAsStream(fileName)));
            String every = null;
            while ((every = br.readLine()) != null) {
                if (!every.startsWith("#")) {
                    list.add(every);
                }
            }
            String[] datas = new String[list.size()];
            for (int i = 0; i < datas.length; i++) {
                datas[i] = list.get(i);
            }
            return datas;
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            if (br != null) {
                try {
                    br.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
        return null;
    }
    private static Map<String, Boolean> weekMapFromFile() {
        Map<String, Boolean> map = new HashMap<String, Boolean>();
        String fileName = "iceweek.txt";
        String[] lines = WorkUtils.read(fileName);
        for (String line : lines) {
            if (line == null || line.length() != 9) {
                continue;
            }
            String key = line.substring(0, 8);
            Boolean value = convertWork(line.substring(8));
            map.put(key, value);
        }
        return map;
    }
    private static Boolean convertWork(String str) {
        if ("b".equals(str)) {
            return false;
        } else if ("x".equals(str)) {
            return true;
        }
        return null;
    }
    private static Map<String, Boolean> filterMap(Map<String, Boolean> map, int year) {
        String yearStr = year + "";
        Map<String, Boolean> newMap = new HashMap<String, Boolean>();
        Set<Entry<String, Boolean>> entrySet = map.entrySet();
        for (Entry<String, Boolean> entry : entrySet) {
            String key = entry.getKey();
            Boolean value = entry.getValue();
            if (key != null && key.startsWith(yearStr)) {
                newMap.put(key, value);
            }
        }
        return newMap;
    }
    /**
     * 提示语
     * @return 提示语
     */
    protected static String warn() {
        return "注意:该算法对于将来的时间仅是预测,并不能完全精确。";
    }
}
flower_city/src/main/java/com/dg/core/util/workday/WorkdayGen.java
New file
@@ -0,0 +1,74 @@
package com.dg.core.util.workday;
import com.iceyyy.workday.WorkUtils;
import java.util.*;
public class WorkdayGen {
    public static void main(String[] args) {
        int year = 2021;
        String code = genYearCode(year);
        System.out.println(code);
    }
    protected static String gen(int year) {
        String yearStr = String.valueOf(year);
        Map<String, Boolean> weekendMap = WorkUtils.weekendMap(yearStr);
        Set<String> keySet = weekendMap.keySet();
        List<String> list = new ArrayList<>(keySet);
        Collections.sort(list);
        StringBuilder sb = new StringBuilder();
        for (String ymd : list) {
            boolean weekendDay = WorkUtils.isWorkendDay(ymd);
            String itemCode = genItemCode(ymd, weekendDay);
            sb.append(itemCode);
        }
        return sb.toString();
    }
    private static String genItemCode(String ymd, boolean weekendDay) {
        StringBuilder sb = new StringBuilder();
        String tab = "        ";
        String nl = "\r\n";
        sb.append(tab);
        sb.append("map.put(\"");
        sb.append(ymd);
        sb.append("\", ");
        sb.append(weekendDay);
        sb.append("); // ");
        sb.append(wordCode(weekendDay));
        sb.append(nl);
        return sb.toString();
    }
    private static String wordCode(boolean weekday) {
        if (weekday) {
            return "休";
        } else {
            return "班";
        }
    }
    private static String genYearCode(int year) {
        StringBuilder sb = new StringBuilder();
        String nl = "\r\n";
        sb.append("package com.iceyyy.icework.presence;" + nl);
        sb.append("" + nl);
        sb.append("import java.util.HashMap;" + nl);
        sb.append("import java.util.Map;" + nl);
        sb.append("");
        sb.append("public class Year" + year + " implements Year20xx {" + nl);
        sb.append("" + nl);
        sb.append("    @Override" + nl);
        sb.append("    public Map<String, Boolean> getYearMap() {" + nl);
        sb.append("        Map<String, Boolean> map = new HashMap<String, Boolean>();" + nl);
        String gen = gen(year);
        sb.append(gen);
        sb.append("        return map;" + nl);
        sb.append("    }" + nl);
        sb.append("" + nl);
        sb.append("}" + nl);
        return sb.toString();
    }
}
flower_city/src/main/resources/application-sms.properties
New file
@@ -0,0 +1,25 @@
#\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u01B6\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD
aliyun.key=LTAI4Frqq9fpJek6d3bC7Rn1
aliyun.screct=wkyvU72m6JmCFepCzGVuSpsJOsbRV0
aliyun.SignName=????
aliyun.TemplateCode=SMS_254326275
#??????????,???????????????????????????????????
#??????
#aliyun.TemplateCodeOvertime=SMS_254460011
#??????
aliyun.TemplateCodeOvertime=SMS_254460012
#??????
#aliyun.TemplateCodeComplete=SMS_254875101
#??????
aliyun.TemplateCodeComplete=SMS_254875102
#??????
#aliyun.TemplateCodeSubmit=SMS_254880764
#??????
aliyun.TemplateCodeSubmit=SMS_254880763
flower_city/src/main/resources/application.properties
@@ -1,10 +1,13 @@
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.username=root
spring.datasource.password=nahanMysqlPwd&&RemoteRemote2019nahan
spring.datasource.url=jdbc:mysql://10.8.0.74:3306/flower_city_automessage?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&allowMultiQueries=true&serverTimezone=GMT%2B8
#spring.datasource.url=jdbc:mysql://10.8.0.74:3306/flower_city_automessage?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&allowMultiQueries=true&serverTimezone=GMT%2B8
#spring.datasource.url=jdbc:mysql://localhost:3306/flower_city_automessage?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&allowMultiQueries=true&serverTimezone=GMT%2B8
#spring.datasource.url=jdbc:mysql://10.8.0.74:3306/huacheng_smart_life?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&allowMultiQueries=true&serverTimezone=GMT%2B8
spring.datasource.url=jdbc:mysql://182.151.2.19:3306/huacheng_smart_life?allowMultiQueries=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&serverTimezone=GMT%2B8
server.port=8080
server.port=8187
#server.port=8088
swagger.enabled=true
@@ -12,6 +15,8 @@
#Redis
spring.redis.host=127.0.0.1
spring.redis.port=6379
spring.redis.password=nahanRedisPwsIsVerySimple&&
spring.mvc.pathmatch.matching-strategy=ant_path_matcher
@@ -20,16 +25,21 @@
spring.servlet.multipart.max-file-size=20MB
spring.servlet.multipart.max-request-size=50MB
# ??????
# ???? ??? Windows??D:/ruoyi/uploadPath?Linux?? /home/ruoyi/uploadPath?
#profile=E:/java/flower_city_automessage/flower_citys/files
profile=D:/tupianshuju
wx.open.app_id=wx118de8a734d269f0
wx.open.app_id=wx118de8a734d269f0
wx.open.app_secret=0264342daefde5cd70a6adada09ee5b1
wx.open.redirect_url=http://yq.cdnhxx.com:8080/ucenter/wx/callback
yygh.baseUrl=http://localhost:8080
ftp.username=root
ftp.password=6-gj!bx@TNb!Dwpjd]1h1Kvqmc
ftp.host=182.151.31.48
ftp.port=22
ftp.url=http://test.panzhihua.nhys.cdnhxx.com/
flower_city/src/main/resources/mapper/AgreementMapper.xml
@@ -13,10 +13,13 @@
    <sql id="selectAgreement">
        select id,agreement,
               (select user_name from sys_user where user_id=a.update_user_id)updateUserName,
               update_user_id,create_time,
               (select user_name from sys_user where user_id=a.create_user_id)createUserName,
               create_user_id,agreement_content FROM agreement a
               (select user_name from automessage_sys_user where user_id=a.update_user_id)updateUserName,
               update_user_id,
               create_time,
               update_time,
               (select user_name from automessage_sys_user where user_id=a.create_user_id)createUserName,
               create_user_id,agreement_content
        FROM automessage_agreement a
   </sql>
    <select id="selectConfigList" resultMap="AgreementResult">
flower_city/src/main/resources/mapper/AreaCode2022Mapper.xml
@@ -9,7 +9,7 @@
    </resultMap>
    <sql id="selectAreaCode">
        select code,name,level,pcode FROM area_code_2022
        select code,name,level,pcode FROM automessage_area_code_2022
    </sql>
    <select id="selectByIdSet" resultMap="AreaCodeResult">
@@ -18,6 +18,7 @@
        <foreach collection="list" item="id" index="index" open="(" close=")" separator=",">
            #{id}
        </foreach>
        order by level
    </select>
</mapper>
flower_city/src/main/resources/mapper/AutomessageCommonProblemMapper.xml
New file
@@ -0,0 +1,54 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.dg.core.db.gen.mapper.AutomessageCommonProblemMapper">
    <resultMap type="com.dg.core.db.gen.entity.AutomessageCommonProblem" id="AutomessageCommonProblemResult">
        <id     property="id"      column="id"      />
        <id     property="title"      column="title"      />
        <id     property="content"      column="content"      />
        <id     property="createTime"      column="create_time"      />
        <id     property="updateTime"      column="update_time"      />
        <id     property="updateUserId"      column="update_user_id"      />
        <id     property="createUserId"      column="create_user_id"      />
    </resultMap>
    <sql id="selectAutomessageCommonProblemResul">
        SELECT
            id,
            title,
            content,
            create_time,
            update_time,
            (select user_name from automessage_sys_user where user_id=a.update_user_id)updateUserName,
            update_user_id,
            (select user_name from automessage_sys_user where user_id=a.create_user_id)createUserName,
            create_user_id
        FROM
            automessage_common_problem a
    </sql>
    <select id="selectConfigList" resultMap="AutomessageCommonProblemResult">
        <include refid="selectAutomessageCommonProblemResul" />
       <where>
           <if test="title!=null and title!=''">
               and title  like concat('%', #{title}, '%')
           </if>
           <if test="content!=null and content!=''">
               and content  like concat('%', #{content}, '%')
           </if>
       </where>
    </select>
    <select id="countConfigList" resultType="integer">
        select  count(*) from  automessage_common_problem
        <where>
            <if test="title!=null and title!=''">
                and title  like concat('%', #{title}, '%')
            </if>
            <if test="content!=null and content!=''">
                and content  like concat('%', #{content}, '%')
            </if>
        </where>
    </select>
</mapper>
flower_city/src/main/resources/mapper/AutomessageSysSettingsMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.dg.core.db.gen.mapper.AutomessageSysSettingsMapper">
</mapper>
flower_city/src/main/resources/mapper/AutomessageSysSettingsRecordMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.dg.core.db.gen.mapper.AutomessageSysSettingsRecordMapper">
</mapper>
flower_city/src/main/resources/mapper/AutomessageSysUserRecordMapper.xml
New file
@@ -0,0 +1,174 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.dg.core.db.gen.mapper.AutomessageSysUserRecordMapper">
    <resultMap type="com.dg.core.db.gen.entity.AutomessageSysUserRecord" id="AutomessageSysUserRecordResult">
        <id     property="id"      column="id"      />
        <id     property="userId"      column="user_id"      />
        <id     property="createTime"      column="create_time"      />
        <id     property="joinType"      column="join_type"      />
    </resultMap>
    <sql id="selectAgreement">
        select id,user_id,
               (select user_name from automessage_sys_user where user_id=a.user_id)userName,
               create_time,join_type FROM automessage_sys_user_record a
    </sql>
<!--    小程序用户访问量统计1.累计访问量2.本年访问量 3.本月访问量 4.今日访问量 5.昨日访问-->
    <select id="selectUserRecordCount"  resultType="com.dg.core.db.manual.pojo.AppletUserCount">
        select count(*)visits,1 type  from  automessage_sys_user_record UNION
        select count(*)visits,2 type  from  automessage_sys_user_record where year(create_time)=year(SYSDATE()) UNION
        select count(*)visits,3 type  from  automessage_sys_user_record where DATE_FORMAT(create_time, '%Y%m' ) = DATE_FORMAT( CURDATE( ) ,'%Y%m' ) UNION
        select count(*)visits,4 type  from  automessage_sys_user_record where to_days(create_time) = to_days(now()) UNION
        select count(*)visits,5 type  from  automessage_sys_user_record where TO_DAYS( SYSDATE() ) - TO_DAYS(create_time) = 1
    </select>
    <select id="selectByDay" resultType="com.dg.core.db.manual.pojo.AppletUserCount">
        select d.date, IFNULL(T.score,0) visits from
            (
                SELECT CURDATE() AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 1 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 2 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 3 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 4 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 5 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 6 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 7 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 8 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 9 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 10 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 11 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 12 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 13 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 14 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 15 DAY) AS date
            )  d
                left join(
                select DATE_FORMAT(create_time,'%Y-%m-%d')create_time, COUNT(*) as score
                from automessage_sys_user_record
                group by DATE_FORMAT(create_time,'%Y-%m-%d')
            ) T on T.create_time = d.date
        GROUP BY d.date
    </select>
    <select id="selectByMonth" resultType="com.dg.core.db.manual.pojo.AppletUserCount">
        select d.date, IFNULL(T.score,0) visits from
            (
                SELECT CURDATE() AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 1 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 2 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 3 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 4 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 5 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 6 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 7 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 8 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 9 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 10 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 11 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 12 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 13 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 14 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 15 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 16 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 17 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 18 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 19 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 20 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 21 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 22 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 23 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 24 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 25 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 26 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 27 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 28 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 29 DAY) AS date
                UNION ALL
                SELECT DATE_SUB(CURDATE(), INTERVAL 30 DAY) AS date
            )  d
                left join(
                select DATE_FORMAT(create_time,'%Y-%m-%d')create_time, COUNT(*) as score
                from automessage_sys_user_record
                group by DATE_FORMAT(create_time,'%Y-%m-%d')
            ) T on T.create_time = d.date
        GROUP BY d.date
    </select>
    <select id="selectByYear" resultType="com.dg.core.db.manual.pojo.AppletUserCount">
        select d.date, IFNULL(T.score,0) visits from
            (
                SELECT DATE_FORMAT(DATE_SUB(NOW(),INTERVAL 11 month),"%Y-%m") date  UNION
                SELECT DATE_FORMAT(DATE_SUB(NOW(),INTERVAL 10 month),"%Y-%m") date  UNION
                SELECT DATE_FORMAT(DATE_SUB(NOW(),INTERVAL 9 month),"%Y-%m") date  UNION
                SELECT DATE_FORMAT(DATE_SUB(NOW(),INTERVAL 8 month),"%Y-%m")  date UNION
                SELECT DATE_FORMAT(DATE_SUB(NOW(),INTERVAL 7 month),"%Y-%m") date  UNION
                SELECT DATE_FORMAT(DATE_SUB(NOW(),INTERVAL 6 month),"%Y-%m") date UNION
                SELECT DATE_FORMAT(DATE_SUB(NOW(),INTERVAL 5 month),"%Y-%m") date  UNION
                SELECT DATE_FORMAT(DATE_SUB(NOW(),INTERVAL 4 month),"%Y-%m") date  UNION
                SELECT DATE_FORMAT(DATE_SUB(NOW(),INTERVAL 3 month),"%Y-%m")  date UNION
                SELECT DATE_FORMAT(DATE_SUB(NOW(),INTERVAL 2 month),"%Y-%m") date  UNION
                SELECT DATE_FORMAT(DATE_SUB(NOW(),INTERVAL 1 month),"%Y-%m") date UNION
                select DATE_FORMAT(NOW(),"%Y-%m") FROM DUAL
            )  d
                left join(
                select DATE_FORMAT(create_time,'%Y-%m')create_time, COUNT(*) as score
                from automessage_sys_user_record
                group by DATE_FORMAT(create_time,'%Y-%m')
            ) T on T.create_time = d.date
        GROUP BY d.date
    </select>
<!--    删除因为token问题产出的重复脏数据-->
    <delete id="deleteDistinct" parameterType="string">
        DELETE FROM automessage_sys_user_record where id in
                    (select id FROM(
                        Select id,user_id,DATE_FORMAT(create_time,'%Y-%m-%d')create_time
                        From automessage_sys_user_record Group By user_id,DATE_FORMAT(create_time,'%Y-%m-%d')  Having Count(*)>1)
                        k)
    </delete>
</mapper>
flower_city/src/main/resources/mapper/AutomessageTransactionEventInterviewMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.dg.core.db.gen.mapper.AutomessageTransactionEventInterviewMapper">
</mapper>
flower_city/src/main/resources/mapper/ClassifyAdministrationMapper.xml
@@ -20,11 +20,14 @@
            create_time,
            update_time,
            parent_id,
            (select ca.classify_name from classify_administration as ca where ca.id= classify_administration.parent_id) as parentName,
            (select ca.classify_name from automessage_classify_administration as ca where ca.id= automessage_classify_administration.parent_id) as parentName,
            classify_name,
            classify_icon
            classify_icon,
            (IF(classify_grade = '2',(SELECT count(id) FROM automessage_transaction_event WHERE automessage_transaction_event.classify_id=automessage_classify_administration.id),
                (SELECT count(id) FROM automessage_transaction_event WHERE automessage_transaction_event.classify_id in (SELECT id FROM automessage_classify_administration
                WHERE automessage_classify_administration.parent_id=automessage_transaction_event.classify_id))))  as  transactNum
        FROM
            classify_administration
            automessage_classify_administration
    </sql>
    <select id="selectConfigList"  resultMap="ClassifyAdministrationEntityResult">
@@ -46,14 +49,16 @@
            parent_id=#{parentId}
            <if test="departmentId!=null">
                and id in (
                select classify_id from  transaction_event where department_id=#{departmentId} UNION
                select parent_id from  classify_administration   where id in (select classify_id FROM  transaction_event where department_id=#{departmentId})   )
                select classify_id from  automessage_transaction_event where department_id=#{departmentId} UNION
                select parent_id from  automessage_classify_administration
                where id in (select classify_id FROM automessage_transaction_event
                where department_id=#{departmentId}))
            </if>
        </where>
    </select>
    <insert id="insertConfig" parameterType="com.dg.core.db.gen.entity.ClassifyAdministration">
        insert into classify_administration (
        insert into automessage_classify_administration (
        <if test="id != null">id,</if>
        <if test="classifyGrade != null and classifyGrade != '' ">classify_grade,</if>
        <if test="parentId != null">parent_id,</if>
@@ -73,7 +78,7 @@
    </insert>
    <update id="updateConfig" parameterType="com.dg.core.db.gen.entity.ClassifyAdministration">
        update classify_administration
        update automessage_classify_administration
        <set>
            <if test="id != null">id=#{id},</if>
            <if test="classifyGrade != null and classifyGrade != '' ">classify_grade=#{classifyGrade},</if>
@@ -86,11 +91,11 @@
    </update>
    <delete id="deleteConfigById" parameterType="String">
        delete from classify_administration where id= #{id}
        delete from automessage_classify_administration where id= #{id}
    </delete>
    <select id="countNum" resultType="integer">
        select count(id) from classify_administration
        select count(id) from automessage_classify_administration
        <where>
            <if test="classifyName != null and classifyName != ''">
                AND classify_name like concat('%', #{classifyName}, '%')
@@ -101,4 +106,22 @@
        </where>
    </select>
    <select id="selectParent" resultType="string">
        select id from automessage_classify_administration
        <where>
            <if test="parentId != null and parentId != ''">
                AND parent_id = #{parentId}
            </if>
        </where>
    </select>
    <select id="selectParentData" resultType="com.dg.core.db.gen.entity.ClassifyAdministration">
        <include refid="selectClassifyAdministrationEntityVo"/>
        <where>
            <if test="parentId != null and parentId != ''">
                AND parent_id = #{parentId}
            </if>
        </where>
    </select>
</mapper>
flower_city/src/main/resources/mapper/ElseAccessoryMapper.xml
@@ -16,28 +16,43 @@
        SELECT
            id,
            department_id,
            (select organization_name from organization_chart where organization_chart.id=else_accessory.department_id) as departmentName,
            (select organization_name from automessage_organization_chart where automessage_organization_chart.id=automessage_else_accessory.department_id) as departmentName,
            create_time,
            update_time,
            url,
            name
        FROM
            else_accessory
            automessage_else_accessory
    </sql>
    <select id="selectConfigList"  resultMap="ElseAccessoryEntityResult">
        <include refid="selectElseAccessoryEntityVo"/>
        <where>
            <if test="Name != null and Name != ''">
                AND else_accessory.name like concat('%', #{Name}, '%')
                AND automessage_else_accessory.name like concat('%', #{Name}, '%')
            </if>
            <if test="ids != null">
                and department_id IN
                <foreach collection="ids" item="param"  open="(" close=")" separator=",">
                    #{param}
                </foreach>
            </if>
        </where>
        order by create_time desc
    </select>
    <select id="selectListByIds"  resultMap="ElseAccessoryEntityResult">
        <include refid="selectElseAccessoryEntityVo"/>
        WHERE id IN
        <foreach collection="array" item="id" index="index" open="(" close=")" separator=",">
            #{id}
        </foreach>
        order by create_time desc
    </select>
    <insert id="insertConfig" parameterType="com.dg.core.db.gen.entity.ElseAccessoryEntity">
        insert into else_accessory (
        insert into automessage_else_accessory (
        <if test="id != null">id,</if>
        <if test="departmentId != null and departmentId != '' ">department_id,</if>
        <if test="name != null and name != '' ">name,</if>
@@ -55,7 +70,7 @@
    </insert>
    <update id="updateConfig" parameterType="com.dg.core.db.gen.entity.ElseAccessoryEntity">
        update else_accessory
        update automessage_else_accessory
        <set>
            <if test="id != null">id=#{id},</if>
            <if test="departmentId != null and departmentId != '' ">department_id=#{departmentId},</if>
@@ -67,14 +82,20 @@
    </update>
    <delete id="deleteConfigById" parameterType="string">
        delete from else_accessory where id= #{Id}
        delete from automessage_else_accessory where id= #{Id}
    </delete>
    <select id="countNum" resultType="integer">
        select count(id) from else_accessory
        select count(id) from automessage_else_accessory
        <where>
            <if test="Name != null and Name != ''">
                AND else_accessory.name like concat('%', #{Name}, '%')
                AND automessage_else_accessory.name like concat('%', #{Name}, '%')
            </if>
            <if test="ids != null">
                and department_id IN
                <foreach collection="ids" item="param"  open="(" close=")" separator=",">
                    #{param}
                </foreach>
            </if>
        </where>
    </select>
flower_city/src/main/resources/mapper/GuideEvolveMapper.xml
@@ -17,6 +17,10 @@
        <id     property="createTime"      column="create_time"      />
        <id     property="updateTime"      column="update_time"      />
        <id     property="fromDepartmentalId"      column="from_departmental_id"      />
        <id     property="videoUrl"      column="video_url"      />
        <id     property="pictureUrl"      column="picture_url"      />
        <id     property="guideOrderNum"      column="guide_order_num"      />
        <id     property="isTimeout"      column="is_timeout"      />
    </resultMap>
@@ -24,6 +28,8 @@
        SELECT
            id,
            departmental_id,
            (select user_name from automessage_sys_user where a.to_user_id=user_id)toUserName,
            (select user_name from automessage_sys_user where a.from_user_id=user_id)fromUserName,
            to_user_id,
            from_user_id,
            state,
@@ -34,10 +40,14 @@
            accessory_name,
            accessory_url,
            from_departmental_id,
            video_url,
            picture_url,
            create_time,
            update_time
            update_time,
            guide_order_num,
            is_timeout
        FROM
            guide_evolve
            automessage_guide_evolve a
    </sql>
    <select id="selectConfigList"  resultMap="GuideEvolveResult">
@@ -52,8 +62,7 @@
    <insert id="insertConfig" parameterType="com.dg.core.db.gen.entity.GuideEvolveEntity">
        insert into guide_evolve (
        <if test="id != null">id,</if>
        insert into automessage_guide_evolve (
        <if test="departmentalId != null and departmentalId != '' ">departmental_id,</if>
        <if test="toUserId != null and toUserId != '' ">to_user_id,</if>
        <if test="fromUserId != null and fromUserId != '' ">from_user_id,</if>
@@ -65,6 +74,10 @@
        <if test="accessoryName != null and accessoryName != '' ">accessory_name,</if>
        <if test="accessoryUrl != null and accessoryUrl != '' ">accessory_url,</if>
        <if test="fromDepartmentalId != null and fromDepartmentalId != '' ">from_departmental_id,</if>
        <if test="videoUrl != null and videoUrl != '' ">video_url,</if>
        <if test="pictureUrl != null and pictureUrl != '' ">picture_url,</if>
        <if test="guidOrderNum != null and guidOrderNum != '' ">guide_order_num,</if>
        <if test="isTimeout != null and isTimeout != '' ">is_timeout,</if>
        update_time,
        create_time
        )values(
@@ -79,13 +92,17 @@
        <if test="accessoryName != null and accessoryName != '' ">#{accessoryName},</if>
        <if test="accessoryUrl != null and accessoryUrl != '' ">#{accessoryUrl},</if>
        <if test="fromDepartmentalId != null and fromDepartmentalId != '' ">#{fromDepartmentalId},</if>
        <if test="videoUrl != null and videoUrl != '' ">#{videoUrl},</if>
        <if test="pictureUrl != null and pictureUrl != '' ">#{pictureUrl},</if>
        <if test="guidOrderNum != null and guidOrderNum != '' ">#{guidOrderNum},</if>
        <if test="isTimeout != null and isTimeout != '' ">#{isTimeout},</if>
        sysdate(),
        sysdate()
        )
    </insert>
    <update id="updateConfig" parameterType="com.dg.core.db.gen.entity.GuideEvolveEntity">
        update guide_evolve
        update automessage_guide_evolve
        <set>
            <if test="departmentalId != null and departmentalId != '' ">departmental_id=#{departmentalId},</if>
            <if test="toUserId != null and toUserId != '' ">to_user_id=#{toUserId},</if>
@@ -98,17 +115,26 @@
            <if test="accessoryName != null and accessoryName != '' ">accessory_name=#{accessoryName},</if>
            <if test="accessoryUrl != null and accessoryUrl != '' ">accessory_url=#{accessoryUrl},</if>
            <if test="fromDepartmentalId != null and fromDepartmentalId != '' ">from_departmental_id=#{fromDepartmentalId},</if>
            <if test="videoUrl != null and videoUrl != '' ">video_url=#{videoUrl},</if>
            <if test="pictureUrl != null and pictureUrl != '' ">picture_url=#{pictureUrl},</if>
            <if test="isTimeout != null and isTimeout != '' ">is_timeout=#{isTimeout},</if>
            update_time=sysdate()
        </set>
        where  id= #{Id}
    </update>
    <update id="updateGuid" parameterType="com.dg.core.db.gen.entity.GuideEvolveEntity">
        UPDATE automessage_guide_evolve
        SET guide_id = (SELECT id from automessage_guide_repair_order where order_num=automessage_guide_evolve.guide_order_num )
        WHERE guide_id IS NULL
    </update>
    <delete id="deleteConfigById" parameterType="string">
        delete from guide_evolve where id= #{Id}
        delete from automessage_guide_evolve where id= #{Id}
    </delete>
    <select id="countNum" resultType="integer">
        select count(id) from guide_evolve
        select count(id) from automessage_guide_evolve
    </select>
</mapper>
flower_city/src/main/resources/mapper/GuideRepairOrderMapper.xml
@@ -25,6 +25,13 @@
        <id     property="evaluateContent"      column="evaluate_content"      />
        <id     property="suggest"      column="suggest"      />
        <id     property="evaluateState"      column="evaluate_state"      />
        <id     property="serviceState"      column="service_state"      />
        <id     property="images"      column="images"      />
        <id     property="video"      column="video"      />
        <id     property="isTimeout"      column="is_timeout"      />
        <id     property="submitType"      column="submit_type"      />
        <id     property="timeoutTime"      column="timeout_time"      />
        <id     property="isPush"      column="is_push"      />
    </resultMap>
    <sql id="selectGuideRepairOrderVo">
@@ -32,28 +39,94 @@
            id,
            order_num,
            matter_id,
            submit_type,
            matter_name,
            timeout_time,
            is_push,
            (select organization_name from automessage_organization_chart where a.department_id=id)organizationName,
            concat(
                    (select classify_name from  automessage_classify_administration  where id=(select parent_id from  automessage_classify_administration  where id=a.classify_id)),
                    '-',(select classify_name from  automessage_classify_administration  where id=a.classify_id)
                ) sumClassifyName,
            department_id,
            classify_id,
            consult_content,
            concat((IFNULL(consult_user_name,'')),(IFNULL(consult_user_phone,''))) consultUser,
            consult_user_name,
            concat((IFNULL((select user_name from automessage_sys_user where a.submit_user_id=user_id ),'')), (IFNULL(submit_user_phone,''))) submitUser,
            submit_user_id,
            concat((IFNULL((select user_name from automessage_sys_user where a.guide_user_id=user_id ),'')), (ifnull(guide_user_phone,''))) guideUser,
            guide_user_id,
            (select organization_name from automessage_organization_chart where a.guide_department_id=id)guideDepartmentName,
            guide_department_id,
            state,
            consult_user_phone,
            submit_user_phone,
            guide_user_phone,
            (select name from automessage_area_code_2022 where code=a.area_code)areaName,
            area_code,
            detailed_address,
            create_time,
            update_time,
            evaluate_content,
            suggest,
            evaluate_state
            evaluate_state,
            service_state,
            video,
            images,
            is_timeout
        FROM
            guide_repair_order
            automessage_guide_repair_order a
    </sql>
    <select id="selectConfigList"  resultMap="GuideRepairOrderResult">
        <include refid="selectGuideRepairOrderVo"/>
        <where>
            <if test="matterName != null and matterName != ''">
                AND (matter_name like concat('%', #{matterName}, '%')) or
                ( classify_id in ( SELECT id FROM automessage_classify_administration WHERE classify_name like concat('%', #{matterName}, '%') ) )
                or (classify_id in (SELECT id FROM automessage_classify_administration WHERE automessage_classify_administration.parent_id=
                (SELECT id FROM automessage_classify_administration WHERE classify_name like concat('%', #{matterName}, '%'))) )
            </if>
            <if test="status != null and status != ''">
                AND a.state=#{status}
            </if>
            <if test="ids != null">
                and department_id IN
                <foreach collection="ids" item="param"  open="(" close=")" separator=",">
                    #{param}
                </foreach>
            </if>
            <if test="guideUserId != null and guideUserId != ''">
                AND a.guide_user_id=#{guideUserId}
            </if>
        </where>
        order by  update_time desc ,  create_time desc
    </select>
    <select id="countConfigList"  resultType="integer">
        select count(id) from automessage_guide_repair_order
        <where>
            <if test="matterName != null and matterName != ''">
                AND (matter_name like concat('%', #{matterName}, '%')) or
                ( classify_id in ( SELECT id FROM automessage_classify_administration WHERE classify_name like concat('%', #{matterName}, '%') ) )
                 or (classify_id in (SELECT id FROM automessage_classify_administration WHERE automessage_classify_administration.parent_id=
                 (SELECT id FROM automessage_classify_administration WHERE classify_name like concat('%', #{matterName}, '%'))) )
            </if>
            <if test="status != null and status != ''">
                AND automessage_guide_repair_order.state=#{status}
            </if>
            <if test="ids != null">
                and department_id IN
                <foreach collection="ids" item="param"  open="(" close=")" separator=",">
                    #{param}
                </foreach>
            </if>
            <if test="guideUserId != null and guideUserId != ''">
                AND automessage_guide_repair_order.guide_user_id=#{guideUserId}
            </if>
        </where>
    </select>
    <select id="selectConfigData"  resultMap="GuideRepairOrderResult">
        <include refid="selectGuideRepairOrderVo"/>
@@ -68,22 +141,138 @@
    </select>
    <select id="selectBySubmitId"  resultMap="GuideRepairOrderResult">
        <include refid="selectGuideRepairOrderVo"/>
        where submit_user_id=#{id} and ( state not in (3,5)  or ( state  in (3,5) and 60>datediff(now(),create_time)
        )) order by create_time desc
    </select>
    <update id="updateConfig" parameterType="com.dg.core.db.gen.entity.GuideRepairOrder">
        update guide_repair_order
        update automessage_guide_repair_order
        <set>
            <if test="guideUserId != null and guideUserId != '' ">guide_user_id=#{guideUserId},</if>
            <if test="guideDepartmentId != null and guideDepartmentId != '' ">guide_department_id=#{guideDepartmentId},</if>
            <if test="state != null and state != '' ">state=#{state},</if>
            <if test="guideUserPhone != null and guideUserPhone != '' ">guide_user_phone=#{guideUserPhone},</if>
            <if test="evaluateState != null and evaluateState != '' ">evaluate_state=#{evaluateState},</if>
            <if test="evaluateContent != null and evaluateContent != '' ">evaluate_content=#{evaluateContent},</if>
            <if test="suggest != null and suggest != '' ">suggest=#{suggest},</if>
            <if test="serviceState != null  ">service_state=#{serviceState},</if>
            <if test="isTimeout != null  ">is_timeout=#{isTimeout},</if>
            <if test="timeoutTime != null  ">timeout_time=#{timeoutTime},</if>
            update_time=sysdate()
        </set>
        where  id= #{Id}
        where  id= #{id}
    </update>
    <select id="countNum" resultType="integer">
        select count(id) from menu
        select count(id) from automessage_guide_repair_order
    </select>
    <select id="countUser" resultType="integer">
        select count(id) from automessage_guide_repair_order
        <where>
            <if test="userId != null and userId != ''">
                AND guide_user_id=#{userId}
            </if>
            <if test="state != null and state != ''">
                AND automessage_guide_repair_order.state = #{state}
            </if>
        </where>
    </select>
    <delete id="deleteConfigById" parameterType="string">
        delete from automessage_guide_repair_order where id= #{Id}
    </delete>
    <!--  首页统计  勿动  -->
    <select id="countStatisticsNum" parameterType="string" resultType="integer">
        select count(id) from automessage_guide_repair_order
        <where>
            <if test="state != null and state != ''">
                automessage_guide_repair_order.state=#{state}
            </if>
            <if test="isTimeout != null and isTimeout != ''">
                and is_timeout=#{isTimeout}
            </if>
            <if test="evaluateState != null and evaluateState != ''">
                and evaluate_state=#{evaluateState}
            </if>
            <if test="guideUserId != null and guideUserId != ''">
                AND guide_user_id=#{guideUserId}
            </if>
            <if test="ids != null">
                and department_id IN
                <foreach collection="ids" item="param"  open="(" close=")" separator=",">
                    #{param}
                </foreach>
            </if>
            <if test="classifyIds != null">
                and classify_id IN
                <foreach collection="classifyIds" item="param"  open="(" close=")" separator=",">
                    #{param}
                </foreach>
            </if>
            <if test="serviceState != null and serviceState != ''">
                and automessage_guide_repair_order.service_state=#{serviceState}
            </if>
            <if test="time != null and time == 1 ">
                and to_days(automessage_guide_repair_order.create_time) = to_days(now())
            </if>
            <if test="time != null and time == 2 ">
                and TO_DAYS(NOW()) - TO_DAYS(automessage_guide_repair_order.create_time) = 1
            </if>
            <if test="time != null and time == 3 ">
                and DATE_FORMAT( automessage_guide_repair_order.create_time, '%Y%m' ) = DATE_FORMAT( CURDATE( ) , '%Y%m' )
            </if>
            <if test="time != null and time == 4 ">
                and YEAR(automessage_guide_repair_order.create_time)=YEAR(NOW())
            </if>
        </where>
    </select>
    <!--  首页统计  勿动  -->
    <select id="countListNum"  resultType="com.dg.core.db.gen.entity.CountListNum">
        select create_time,count(id) as num from automessage_guide_repair_order
        <where>
            <if test="state != null and state != ''">
                automessage_guide_repair_order.state=#{state}
            </if>
            <if test="ids != null">
                and department_id IN
                <foreach collection="ids" item="param"  open="(" close=")" separator=",">
                    #{param}
                </foreach>
            </if>
        </where>
        GROUP BY
        date_format(create_time,'%y%m%d')
        ORDER BY
        create_time DESC
        LIMIT #{time}
    </select>
    <select id="selectOvertime"  resultMap="GuideRepairOrderResult">
        <include refid="selectGuideRepairOrderVo"/>
        <where>
            state=2 and is_push=2 and  SYSDATE()>timeout_time and  1>(select count(*)  from automessage_guide_evolve where state=9 and  a.id=guide_id )
        </where>
    </select>
    <select id="selectEvaluate"  resultMap="GuideRepairOrderResult">
        <include refid="selectGuideRepairOrderVo"/>
        <where>
           state=4 and datediff(now(),update_time)>=1
        </where>
    </select>
</mapper>
flower_city/src/main/resources/mapper/HomeStatisticsMapper.xml
New file
@@ -0,0 +1,159 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.dg.core.db.gen.mapper.HomeStatisticsMapper">
    <!-- 按办结量排序 -->
    <select id="guidePlatePeople" resultType="com.dg.core.db.gen.entity.GuidePlate">
        SELECT
            user_name as userName,
            (SELECT organization_name FROM automessage_organization_chart WHERE  automessage_organization_chart.id=department_id) as departmentNmae,
            (select count(id) from automessage_guide_repair_order WHERE automessage_guide_repair_order.guide_user_id=automessage_sys_user.user_id) as num
        FROM automessage_sys_user WHERE user_type=2 ORDER BY
            num DESC
        LIMIT 10
    </select>
    <!--  按评分排序  -->
    <select id="score" resultType="com.dg.core.db.gen.entity.GuidePlate">
        SELECT
            user_name,
            (SELECT organization_name FROM automessage_organization_chart WHERE  automessage_organization_chart.id=department_id) as departmentNmae,
            ((select sum(IF(evaluate_state='1',10,IF(evaluate_state='2',5,0))) from automessage_guide_repair_order WHERE automessage_guide_repair_order.guide_user_id=automessage_sys_user.user_id)/(select count(id) from automessage_guide_repair_order WHERE automessage_guide_repair_order.guide_user_id=automessage_sys_user.user_id)) as num
        FROM automessage_sys_user WHERE user_type=2 ORDER BY
            num DESC
        LIMIT 10
    </select>
    <!--  按超时  -->
    <select id="timeout" resultType="com.dg.core.db.gen.entity.GuidePlate">
        SELECT
            user_name as userName,
            (SELECT organization_name FROM automessage_organization_chart WHERE  automessage_organization_chart.id=department_id) as departmentNmae,
            (select count(id) from automessage_guide_repair_order WHERE automessage_guide_repair_order.guide_user_id=automessage_sys_user.user_id and automessage_guide_repair_order.is_timeout=2
            ) as num
        FROM automessage_sys_user WHERE user_type=2 ORDER BY
            num DESC
        LIMIT 10
    </select>
    <!--  导办人员统计数  -->
    <select id="staffNum" resultType="integer">
        SELECT count(id)
        FROM automessage_sys_user WHERE user_type=2
    </select>
<!--  获取一级组织  -->
    <select id="getDepartment" resultType="com.dg.core.db.gen.entity.OrganizationEntity">
        SELECT
            organization_name as departmentNmae,
            id
        FROM automessage_organization_chart
        WHERE grade=1
    </select>
    <!--  组织排行榜 按评价  -->
    <select id="organizationScore" resultType="integer">
        SELECT  sum(IF(evaluate_state='1',10,IF(evaluate_state='2',5,0)))
        FROM automessage_guide_repair_order
        WHERE department_id in
        <foreach collection="ids" item="param"  open="(" close=")" separator=",">
            #{param}
        </foreach>
    </select>
    <!--  组织排行榜 按办结量  -->
    <select id="organizationNum" resultType="integer">
        SELECT  count(id) FROM automessage_guide_repair_order WHERE department_id in
        <foreach collection="ids" item="param"  open="(" close=")" separator=",">
            #{param}
        </foreach>
    </select>
    <!--  办事指南 根据导办数量排序 -->
    <select id="guidanceTransaction" resultType="com.dg.core.db.gen.entity.Guidance">
        SELECT matter_name as name ,transaction_num as num from
        automessage_transaction_event ORDER BY
            num DESC
        LIMIT 10
    </select>
    <!-- 办事指南 根据导办数量排序 -->
    <select id="guidanceBrowse"  resultType="com.dg.core.db.gen.entity.Guidance">
        SELECT matter_name as name ,browse_num as num from
            automessage_transaction_event ORDER BY
            num DESC
            LIMIT 10
    </select>
    <!-- 办事指南 统计数量 -->
    <select id="countWork"  resultType="integer">
        SELECT count(id) from automessage_transaction_event
    </select>
    <!--  首页统计  勿动  -->
    <select id="countStatisticsNum" resultType="integer">
        select count(id) from automessage_transaction_event
        <where>
            <if test="classifyIds != null">
                and classify_id IN
                <foreach collection="classifyIds" item="param"  open="(" close=")" separator=",">
                    #{param}
                </foreach>
            </if>
        </where>
    </select>
    <!--  首页统计用  勿动  -->
    <select id="getClassify" parameterType="string" resultType="com.dg.core.db.gen.entity.ClassifyAdministration">
        select id,classify_name from automessage_classify_administration
        <where>
            <if test="parentId != null and parentId != ''">
                AND parent_id=#{parentId}
            </if>
            <if test="classifyGrade != null and classifyGrade != ''">
                AND classify_grade = #{classifyGrade}
            </if>
        </where>
    </select>
    <!--  首页统计区域下的部门  -->
    <select id="countId" parameterType="string" resultType="string">
        select id from automessage_organization_chart
        <where>
            <if test="district != null ">
                AND district=#{district}
            </if>
        </where>
    </select>
    <!--  首页统计使用 勿动  -->
    <select id="reversionRate" resultType="integer">
        select SUM(m.num) from (
            select count(id) as num  from automessage_guide_evolve
            <where>
                <if test="state != null and state != ''">
                    and automessage_guide_evolve.state=#{state}
                </if>
                <if test="isTimeout != null and isTimeout != ''">
                    and automessage_guide_evolve.is_timeout=#{isTimeout}
                </if>
            </where>
            GROUP BY automessage_guide_evolve.id
            ) as m
    </select>
</mapper>
flower_city/src/main/resources/mapper/HuaChengSysUserMapper.xml
New file
@@ -0,0 +1,123 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.dg.core.db.gen.mapper.HuaChengSysUserMapper">
    <resultMap type="com.dg.core.db.gen.entity.HuaChengSysUser" id="SysUserResult">
        <id     property="userId"      column="user_id"      />
        <id     property="account"      column="account"      />
        <id     property="password"      column="password"      />
        <id     property="openid"      column="openid"      />
        <id     property="sessionKey"      column="session_key"      />
        <id     property="unionid"      column="unionid"      />
        <id     property="phone"      column="phone"      />
        <id     property="nickName"      column="nick_name"      />
        <id     property="name"      column="name"      />
        <id     property="communityId"      column="community_id"      />
        <id     property="sex"      column="sex"      />
        <id     property="idCard"      column="id_card"      />
        <id     property="birthday"      column="birthday"      />
        <id     property="imageUrl"      column="image_url"      />
        <id     property="type"      column="type"      />
        <id     property="job"      column="job"      />
        <id     property="isVolunteer"      column="is_volunteer"      />
        <id     property="isPartymember"      column="is_partymember"      />
        <id     property="status"      column="status"      />
        <id     property="createAt"      column="create_at"      />
        <id     property="lastLoginTime"      column="last_login_time"      />
        <id     property="tags"      column="tags"      />
        <id     property="familyId"      column="family_id"      />
        <id     property="faceUrl"      column="face_url"      />
        <id     property="faceState"      column="face_state"      />
        <id     property="rejectReson"      column="reject_reson"      />
        <id     property="areaId"      column="area_id"      />
        <id     property="cardPhotoFront"      column="card_photo_front"      />
        <id     property="cardPhotoBack"      column="card_photo_back"      />
        <id     property="familyBook"      column="family_book"      />
        <id     property="continuousLandingDays"      column="continuous_landing_days"      />
        <id     property="isTips"      column="is_tips"      />
        <id     property="workStatus"      column="work_status"      />
        <id     property="workStartTime"      column="work_start_time"      />
        <id     property="workEndTime"      column="work_end_time"      />
        <id     property="bigAgeTips"      column="big_age_tips"      />
        <id     property="plaintextPassword"      column="plaintext_password"      />
        <id     property="streetId"      column="street_id"      />
        <id     property="relationName"      column="relation_name"      />
        <id     property="appId"      column="app_id"      />
        <id     property="isAccept"      column="is_accept"      />
        <id     property="bindingCheckUnitId"      column="binding_check_unit_id"      />
    </resultMap>
    <sql id="selectSysUserVo">
        SELECT
            user_id,
            account,
            password,
            openid,
            session_key,
            unionid,
            phone,
            nick_name,
            name,
            community_id,
            sex,
            id_card,
            birthday,
            image_url,
            type,
            job,
            is_volunteer,
            is_partymember,
            status,
            create_at,
            last_login_time,
            tags,
            family_id,
            face_url,
            face_state,
            reject_reson,
            area_id,
            card_photo_front,
            card_photo_back,
            family_book,
            continuous_landing_days,
            is_tips,
            work_status,
            work_start_time,
            work_end_time,
            big_age_tips,
            plaintext_password,
            street_id,
            relation_name,
            app_id,
            is_accept,
            binding_check_unit_id
        FROM
            sys_user
    </sql>
    <select id="selectNum" resultType="integer">
        select count(user_id) from sys_user
    </select>
    <select id="selectConfigList"  resultMap="SysUserResult">
        <include refid="selectSysUserVo"/>
    </select>
    <select id="selectData" parameterType="string"  resultMap="SysUserResult">
        <include refid="selectSysUserVo"/>
        <where>
            app_id='wx118de8a734d269f0'
            <if test="userId!=null and userId!=''">
                and user_id=#{userId}
            </if>
            <if test="account!=null and account!=''">
                and account=#{account}
            </if>
            <if test="phone!=null and phone!=''">
                and phone=#{phone}
            </if>
        </where>
    </select>
</mapper>
flower_city/src/main/resources/mapper/KeywordMapper.xml
@@ -19,7 +19,7 @@
            update_time,
            transaction_id
        FROM
            keyword
            automessage_keyword
    </sql>
    <select id="selectConfigList"  resultMap="KeywordEntityResult">
@@ -51,10 +51,10 @@
        <include refid="selectKeywordEntityVo"/>
        <where>
            <if test="Id != null and Id != ''">
                AND keyword.id=#{Id}
                AND automessage_keyword.id=#{Id}
            </if>
             <if test="name != null and name != ''">
                AND keyword.name=#{name}
                AND automessage_keyword.name=#{name}
            </if>
        </where>
    </select>
@@ -67,7 +67,7 @@
    </select>
    <insert id="insertConfig" parameterType="com.dg.core.db.gen.entity.KeywordEntity">
        insert into keyword (
        insert into automessage_keyword (
        <if test="id != null">id,</if>
        <if test="name != null and name != '' ">name,</if>
        <if test="transactionId != null and transactionId !='' ">transaction_id,</if>
@@ -83,7 +83,7 @@
    </insert>
    <update id="updateConfig" parameterType="com.dg.core.db.gen.entity.KeywordEntity">
        update keyword
        update automessage_keyword
        <set>
            <if test="id != null">id=#{id},</if>
            <if test="name != null and name != '' ">name=#{name},</if>
@@ -94,11 +94,11 @@
    </update>
    <delete id="deleteConfigById" parameterType="string">
        delete from keyword where id= #{Id}
        delete from automessage_keyword where id= #{Id}
    </delete>
    <select id="countNum" resultType="integer">
        select count(id) from keyword
        select count(id) from automessage_keyword
    </select>
</mapper>
flower_city/src/main/resources/mapper/MenuMapper.xml
@@ -21,7 +21,7 @@
            parent_id,
            remark
        FROM
            menu
            automessage_menu
    </sql>
    <select id="selectConfigList"  resultMap="MenuEntityResult">
@@ -50,7 +50,7 @@
    <insert id="insertConfig" parameterType="com.dg.core.db.gen.entity.MenuEntity">
        insert into menu (
        insert into automessage_menu (
        <if test="id != null">id,</if>
        <if test="title != null and title != '' ">title,</if>
        <if test="parentId != null">parent_id,</if>
@@ -68,7 +68,7 @@
    </insert>
    <update id="updateConfig" parameterType="com.dg.core.db.gen.entity.MenuEntity">
        update menu
        update automessage_menu
        <set>
            <if test="id != null">id=#{id},</if>
            <if test="title != null and title != '' ">title=#{title},</if>
@@ -80,11 +80,11 @@
    </update>
    <delete id="deleteConfigById" parameterType="Long">
        delete from menu where id= #{Id}
        delete from automessage_menu where id= #{Id}
    </delete>
    <select id="countNum" resultType="integer">
        select count(id) from menu
        select count(id) from automessage_menu
    </select>
</mapper>
flower_city/src/main/resources/mapper/OrganizationChartMapper.xml
@@ -16,6 +16,9 @@
        <id     property="resume"      column="resume"      />
        <id     property="contactNumber"      column="contact_number"      />
        <id     property="departmentalApplication"      column="departmental_application"      />
        <id     property="updateUserId"      column="update_user_id"      />
        <id     property="areaList"      column="area_list"      />
    </resultMap>
@@ -29,20 +32,43 @@
            create_time,
            update_time,
            parent_id,
            (select organization_name from organization_chart as oc where oc.id=organization_chart.parent_id) as parentName,
            update_user_id,
            (select  user_name from automessage_sys_user where user_id=automessage_organization_chart.update_user_id) as updateUserName,
            (select organization_name from automessage_organization_chart as oc where oc.id=automessage_organization_chart.parent_id) as parentName,
            city,
            district,
            village,
            (select name from automessage_area_code_2022 where city=automessage_area_code_2022.code) as cityName,
            (select name from automessage_area_code_2022 where district=automessage_area_code_2022.code) as districtName,
            (select name from automessage_area_code_2022 where village=automessage_area_code_2022.code) as villageName,
            detailed_address,
            grade,
            resume,contact_number
            area_list
        FROM
            organization_chart
            automessage_organization_chart
    </sql>
    <select id="selectConfigById" resultMap="OrganizationChartResult">
        <include refid="selectOrganizationChartVo"/>
        where id= #{id}
    </select>
    <select id="queryList"  resultMap="OrganizationChartResult">
        <include refid="selectOrganizationChartVo"/>
        <where>
            <if test="organizationName != null and organizationName != ''">
                AND organization_name like concat('%', #{organizationName}, '%')
            </if>
        </where>
    </select>
    <select id="countList" resultType="integer">
        select count(id) from automessage_organization_chart
        <where>
            <if test="organizationName != null and organizationName != ''">
                AND organization_name like concat('%', #{organizationName}, '%')
            </if>
        </where>
    </select>
    <select id="selectConfigList"  resultMap="OrganizationChartResult">
@@ -55,23 +81,25 @@
            <if test="grade != null and grade != ''">
                AND grade=#{grade}
            </if>
        </where>
    </select>
    <select id="selectByKeyWord" resultMap="OrganizationChartResult">
        <include refid="selectOrganizationChartVo"/>
        where organization_name like concat('%', #{keyWord}, '%') or #{keyWord} like concat('%', organization_name, '%')
        or detailed_address like concat('%', #{keyWord}, '%') or #{keyWord} like concat('%', detailed_address, '%')
        or resume like concat('%', #{keyWord}, '%') or #{keyWord} like concat('%', resume, '%')
        where organization_name like concat('%', #{keyWord}, '%')
        or((detailed_address like concat('%', #{keyWord}, '%')  )     and TRIM(detailed_address)  !='')
        or((resume like concat('%', #{keyWord}, '%')  ) and  TRIM(resume)  !=  '' )
    </select>
    <select id="selectByCode" resultMap="OrganizationChartResult">
        <include refid="selectOrganizationChartVo"/>
        <where>
           ( id=#{id} or parent_id=#{id})   and  (city=#{areaCode} or district= #{areaCode} or village=#{areaCode})
        </where>
    </select>
    <insert id="insertConfig" parameterType="com.dg.core.db.gen.entity.OrganizationChartEntity">
        insert into organization_chart (
        insert into automessage_organization_chart (
        <if test="id != null">id,</if>
        <if test="organizationName != null and organizationName != '' ">organization_name,</if>
        <if test="parentId != null">parent_id,</if>
@@ -80,6 +108,11 @@
        <if test="village != null and village != '' ">village,</if>
        <if test="detailedAddress != null and detailedAddress != '' ">detailed_address,</if>
        <if test="grade != null and grade != '' ">grade,</if>
        <if test="areaList != null and areaList != '' ">area_list,</if>
        <if test="contactNumber != null and contactNumber != '' ">contact_number,</if>
        <if test="departmentalApplication != null and departmentalApplication != '' ">departmental_application,</if>
        <if test="updateUserId != null and updateUserId != '' ">update_user_id,</if>
        <if test="resume != null and resume != '' ">resume,</if>
        update_time,
        create_time
        )values(
@@ -91,13 +124,18 @@
        <if test="village != null and village != '' ">#{village},</if>
        <if test="detailedAddress != null and detailedAddress != '' ">#{detailedAddress},</if>
        <if test="grade != null and grade != '' ">#{grade},</if>
        <if test="areaList != null and areaList != '' ">#{areaList},</if>
        <if test="contactNumber != null and contactNumber != '' ">#{contactNumber},</if>
        <if test="departmentalApplication != null and departmentalApplication != '' ">#{departmentalApplication},</if>
        <if test="updateUserId != null and updateUserId != '' ">#{updateUserId},</if>
        <if test="resume != null and resume != '' ">#{resume},</if>
        sysdate(),
        sysdate()
        )
    </insert>
    <update id="updateConfig" parameterType="com.dg.core.db.gen.entity.OrganizationChartEntity">
        update organization_chart
        update automessage_organization_chart
        <set>
            <if test="id != null">id=#{id},</if>
            <if test="organizationName != null and organizationName != '' ">organization_name=#{organizationName},</if>
@@ -107,17 +145,24 @@
            <if test="village != null and village != '' ">village=#{village},</if>
            <if test="detailedAddress != null and detailedAddress != '' ">detailed_address=#{detailedAddress},</if>
            <if test="grade != null and grade != '' ">grade=#{grade},</if>
            <if test="departmentalApplication != null and departmentalApplication != '' ">departmental_application=#{departmentalApplication},</if>
            <if test="updateUserId != null">update_user_id=#{updateUserId},</if>
            <if test="areaList != null and areaList != '' ">area_list=#{areaList},</if>
            <if test="contactNumber != null and contactNumber != '' ">contact_number=#{contactNumber},</if>
            <if test="departmentalApplication != null and departmentalApplication != '' ">departmental_application=#{departmentalApplication},</if>
            <if test="updateUserId != null and updateUserId != '' ">update_user_id=#{updateUserId},</if>
            <if test="resume != null and resume != '' ">resume=#{resume},</if>
            update_time=sysdate()
        </set>
        where  id= #{id}
    </update>
    <delete id="deleteConfigById" parameterType="string">
        delete from organization_chart where id= #{Id}
        delete from automessage_organization_chart where id= #{Id}
    </delete>
    <select id="countNum" resultType="integer">
        select count(id) from organization_chart
        select count(id) from automessage_organization_chart
    </select>
</mapper>
flower_city/src/main/resources/mapper/ReplyTemplateMapper.xml
@@ -39,21 +39,27 @@
            department_id,
            create_user_id,
            accessory_id,
            (select organization_name from organization_chart where organization_chart.id=reply_template.department_id) as departmentName,
            (select user_name from sys_user where sys_user.user_id=reply_template.create_user_id) as createUser,
            (select organization_name from automessage_organization_chart where automessage_organization_chart.id=automessage_reply_template.department_id) as departmentName,
            (select user_name from automessage_sys_user where automessage_sys_user.user_id=automessage_reply_template.create_user_id) as createUser,
            guidance
        FROM
            reply_template
            automessage_reply_template
    </sql>
    <select id="selectConfigList"  resultMap="ReplyTemplateResult">
        <include refid="selectReplyTemplateVo"/>
        <where>
            <if test="Name != null and Name != ''">
                AND name=#{Name}
                AND automessage_reply_template.name like concat('%', #{Name}, '%')
            </if>
            <if test="ids != null">
                and department_id IN
                <foreach collection="ids" item="param"  open="(" close=")" separator=",">
                    #{param}
                </foreach>
            </if>
        </where>
        order by create_time desc
    </select>
@@ -64,7 +70,7 @@
    <insert id="insertConfig" parameterType="com.dg.core.db.gen.entity.ReplyTemplateEntity">
        insert into reply_template (
        insert into automessage_reply_template (
        <if test="id != null">id,</if>
        <if test="name != null and name != '' ">name,</if>
        <if test="handleState != null and handleState != '' ">handle_state,</if>
@@ -102,7 +108,7 @@
    </insert>
    <update id="updateConfig" parameterType="com.dg.core.db.gen.entity.ReplyTemplateEntity">
        update reply_template
        update automessage_reply_template
        <set>
            <if test="id != null">id=#{id},</if>
            <if test="name != null and name != '' ">name=#{name},</if>
@@ -124,15 +130,21 @@
    </update>
    <delete id="deleteConfigById" parameterType="string">
        delete from reply_template where id= #{Id}
        delete from automessage_reply_template where id= #{Id}
    </delete>
    <select id="countNum" parameterType="string" resultType="integer">
        select count(id) from reply_template
        select count(id) from automessage_reply_template
        <where>
            <if test="Name != null and Name != ''">
                AND name=#{Name}
            </if>
            <if test="ids != null">
                and department_id IN
                <foreach collection="ids" item="param"  open="(" close=")" separator=",">
                    #{param}
                </foreach>
            </if>
        </where>
    </select>
flower_city/src/main/resources/mapper/RoleManagementMapper.xml
@@ -21,17 +21,18 @@
            create_time,
            update_time,
            create_user_id,
            (select user_name from automessage_sys_user where create_user_id=automessage_sys_user.user_id) as createName,
            update_user_id
        FROM
            role_management
            automessage_role_management
    </sql>
    <select id="selectConfigList"  resultMap="RoleManagementEntityResult">
        <include refid="selectRoleManagementEntityVo"/>
        <!--        <where>-->
        <!--            <if test="userName != null and userName != ''">-->
        <!--                AND user_name like concat('%', #{userName}, '%')-->
        <!--            </if>-->
        <where>
            <if test="name!=null and name!=''">
                and role_name like concat('%', #{name}, '%')
            </if>
        <!--            <if test="streetName != null and streetName != ''">-->
        <!--                AND street_name like concat('%', #{streetName}, '%')-->
        <!--            </if>-->
@@ -45,13 +46,13 @@
        <!--                AND role_id=#{roleId}-->
        <!--            </if>-->
        <!--        </where>-->
        </where>
        order by create_time desc
    </select>
    <insert id="insertConfig" parameterType="com.dg.core.db.gen.entity.RoleManagementEntity">
        insert into role_management (
        insert into automessage_role_management (
        <if test="id != null">id,</if>
        <if test="roleName != null and roleName != '' ">role_name,</if>
        <if test="permission != null">permission,</if>
@@ -71,7 +72,7 @@
    </insert>
    <update id="updateConfig" parameterType="com.dg.core.db.gen.entity.RoleManagementEntity">
        update role_management
        update automessage_role_management
        <set>
            <if test="id != null">id=#{id},</if>
            <if test="roleName != null and roleName != '' ">role_name=#{roleName},</if>
@@ -80,15 +81,20 @@
            <if test="updateUserId != null and updateUserId != '' ">update_user_id=#{updateUserId},</if>
            update_time=sysdate()
        </set>
        where  id= #{Id}
        where  id= #{id}
    </update>
    <delete id="deleteConfigById" parameterType="string">
        delete from role_management where id= #{Id}
        delete from automessage_role_management where id= #{Id}
    </delete>
    <select id="countNum" resultType="integer">
        select count(id) from role_management
        select count(id) from automessage_role_management
        <where>
            <if test="name!=null and name!=''">
                and role_name like concat('%', #{name}, '%')
            </if>
        </where>
    </select>
</mapper>
flower_city/src/main/resources/mapper/RoleMenuMapper.xml
New file
@@ -0,0 +1,76 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.dg.core.db.gen.mapper.RoleMenuEntityMapper">
    <resultMap type="com.dg.core.db.gen.entity.RoleMenuEntity" id="RoleMenuEntityResult">
        <id     property="id"      column="id"      />
        <id     property="roleId"      column="role_id"      />
        <id     property="menuId"      column="menu_id"      />
        <id     property="createTime"      column="create_time"      />
        <id     property="updateTime"      column="update_time"      />
    </resultMap>
    <sql id="selectRoleManagementEntityVo">
        SELECT
            id,
            role_id,
            menu_id,
            create_time,
            update_time
        FROM
            automessage_role_menu
    </sql>
    <select id="selectConfigList" parameterType="string" resultMap="RoleMenuEntityResult">
        <include refid="selectRoleManagementEntityVo"/>
        <where>
            <if test="roleId!=null and roleId!=''">
                and role_id=#{roleId}
            </if>
        </where>
    </select>
    <insert id="insertConfig" parameterType="com.dg.core.db.gen.entity.RoleManagementEntity">
        insert into automessage_role_menu (
        <if test="id != null">id,</if>
        <if test="roleId != null and roleId != '' ">role_id,</if>
        <if test="menuId != null and menuId != '' ">menu_id,</if>
        update_time,
        create_time
        )values(
        <if test="id != null">#{id},</if>
        <if test="roleId != null and roleId != '' ">#{roleId},</if>
        <if test="menuId != null and menuId != '' ">#{menuId},</if>
        sysdate(),
        sysdate()
        )
    </insert>
    <update id="updateConfig" parameterType="com.dg.core.db.gen.entity.RoleManagementEntity">
        update automessage_role_menu
        <set>
            <if test="id != null">id=#{id},</if>
            <if test="roleId != null and roleId != '' ">role_id=#{roleId},</if>
            <if test="menuId != null and menuId != '' ">menu_id=#{menuId},</if>
            update_time=sysdate()
        </set>
        where  id= #{Id}
    </update>
    <delete id="deleteConfigById" parameterType="string">
        delete from automessage_role_menu where id= #{Id}
    </delete>
    <select id="countNum" resultType="integer">
        select count(id) from automessage_role_menu
    </select>
</mapper>
flower_city/src/main/resources/mapper/SysUserMapper.xml
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.dg.core.db.gen.mapper.SysUserMapper">
    <resultMap type="com.dg.core.db.gen.entity.SysUser" id="SysUserResult">
        <id     property="id"      column="id"      />
        <id     property="userId"      column="user_id"      />
        <result property="loginName"     column="login_name"     />
        <result property="userName"   column="user_name"   />
@@ -27,8 +27,6 @@
        <result property="departmentId"      column="department_id"      />
        <result property="stairId"      column="stair_id"      />
        <result property="secondLevelId"      column="second_level_id"      />
        <result property="departmentName"      column="department_name"      />
        <result property="departmentArea"      column="department_area"      />
        <result property="leisureState"      column="leisure_state"      />
@@ -36,13 +34,14 @@
        <result property="masterNames"      column="master_names"      />
        <result property="transactionIds"      column="transaction_ids"      />
        <result property="transactionNames"      column="transaction_names"      />
        <result property="openid"      column="openid"      />
        <result property="transactionNum"      column="transaction_num"      />
        <result property="isDivisionHead"      column="is_division_head"      />
    </resultMap>
    <sql id="selectSysUserVo">
        SELECT
            id,
            user_id,
            login_name,
            user_name,
@@ -50,6 +49,7 @@
            phonenumber,
            sex,
            avatar,
            password,
            salt,
            status,
            del_flag,
@@ -60,40 +60,76 @@
            create_time,
            update_by,
            update_time,
            remark,
            role_ids,
            data_permission,
            department_id,
            stair_id,
            second_level_id,
            (select organization_name from organization_chart where sys_user.department_id=organization_chart.id) as department_name,
            department_area,
            concat(
                    IFNULL((SELECT name FROM area_code_2022 WHERE area_code_2022.code=(select city from automessage_organization_chart
                            where automessage_organization_chart.id=department_id)),''),
                    IFNULL((SELECT name FROM area_code_2022 WHERE area_code_2022.code=(select district from automessage_organization_chart
                            where automessage_organization_chart.id=department_id)),''),
                    IFNULL((SELECT name FROM area_code_2022 WHERE area_code_2022.code=(select village from automessage_organization_chart
                            where automessage_organization_chart.id=department_id)),'')
                ) AS department_area,
            leisure_state,
            master_ids,
            master_names,
            (SELECT GROUP_CONCAT(classify_name) FROM automessage_classify_administration WHERE id in (SELECT
            substring_index(substring_index(master_ids,',', b.help_topic_id + 1), ',', -1) result
            FROM
            mysql.help_topic b
            where
            b.help_topic_id &lt; (LENGTH(master_ids) - LENGTH(REPLACE(master_ids, ',', '')) + 1))) as master_names,
            is_division_head,
            transaction_ids,
            transaction_names,
            remark
            openid,
            (select user_name from automessage_sys_user where automessage_sys_user.user_id=create_by) as createName,
            transaction_num,
            (select role_name from automessage_role_management where automessage_role_management.id=role_ids) as roleName,
            (select permission from automessage_role_management where automessage_role_management.id=role_ids) as permission,
            (select organization_name from automessage_organization_chart where automessage_sys_user.department_id=automessage_organization_chart.id) as department_name
        FROM
            sys_user
            automessage_sys_user
    </sql>
    <select id="selectNum" resultType="integer">
        select count(user_id) from sys_user
    <select id="selectNum" parameterType="string" resultType="integer">
        select count(user_id) from automessage_sys_user
        <where>
            <if test="userName != null and userName != ''">
                AND user_name like concat('%', #{userName}, '%') or
                (department_id in (SELECT id FROM automessage_organization_chart
                WHERE organization_name like concat('%', #{userName}, '%'))) or
                phonenumber like concat('%', #{userName}, '%')
            </if>
            <if test="userType != null and userType != ''">
                AND user_type=#{userType}
            </if>
        </where>
    </select>
    <select id="queryList"  resultMap="SysUserResult">
        <include refid="selectSysUserVo"/>
        <where>
            user_type=#{userType}
            <if test="keyWord!=null and keyWord!=''">
              and (transaction_names like concat('%',#{keyWord}, '%') or  user_name like concat('%',#{keyWord}, '%'))
            </if>
        </where>
        ORDER BY department_id
    </select>
    <select id="selectConfigList" parameterType="string" resultMap="SysUserResult">
        <include refid="selectSysUserVo"/>
        <where>
<!--            <if test="userName != null and userName != ''">-->
<!--                AND user_name like concat('%', #{userName}, '%')-->
<!--            </if>-->
            <if test="userName != null and userName != ''">
                AND user_name like concat('%', #{userName}, '%') or
                (department_id in (SELECT id FROM automessage_organization_chart
                WHERE organization_name like concat('%', #{userName}, '%'))) or
                phonenumber like concat('%', #{userName}, '%')
            </if>
            <if test="userType != null and userType != ''">
                AND user_type=#{userType}
            </if>
@@ -103,8 +139,55 @@
    </select>
    <select id="selectData" parameterType="string"  resultMap="SysUserResult">
        <include refid="selectSysUserVo"/>
        <where>
            <if test="userId!=null and userId!='' ">
                AND user_id= #{userId}
            </if>
            <if test="phonenumber!=null and phonenumber!='' ">
                AND phonenumber= #{phonenumber}
            </if>
            <if test="loginName!=null and loginName!='' ">
                AND login_name= #{loginName}
            </if>
        </where>
    </select>
    <select id="getUserByAccount" parameterType="string"  resultMap="SysUserResult">
        <include refid="selectSysUserVo"/>
        <where>
            <if test="account!=null and account!='' ">
                login_name= #{account}
            </if>
        </where>
    </select>
    <select id="selectListByDepartmentId"  resultMap="SysUserResult">
        <include refid="selectSysUserVo"/>
         <where>
            user_type=2 and status=0 and leisure_state=0
            <if test="list!=null">
                and  department_id in
                <foreach collection="list" item="id" index="index" open="(" close=")" separator=",">
                    #{id}
                </foreach>
             </if>
             <if test="classifyIdFront!=null and classifyIdFront!='' and classifyIdAfter!=null and classifyIdAfter!=''">
                and (master_ids like concat('%',#{classifyIdFront}, '%') or master_ids like concat('%',#{classifyIdAfter}, '%'))
             </if>
         </where>
         order by transaction_num
    </select>
    <insert id="insertConfig" parameterType="com.dg.core.db.gen.entity.SysUser">
        insert into sys_user (
        insert ignore into automessage_sys_user (
        create_time
        <if test="userId != null and userId != '' ">,user_id</if>
        <if test="loginName != null and loginName != '' ">,login_name</if>
@@ -136,6 +219,8 @@
        <if test="masterNames != null and masterNames != '' ">,master_names</if>
        <if test="transactionIds != null and transactionIds != '' ">,transaction_ids</if>
        <if test="transactionNames != null and transactionNames != '' ">,transaction_names</if>
        <if test="openid != null and openid != '' ">,openid</if>
        <if test="isDivisionHead != null and isDivisionHead != '' ">,is_division_head</if>
        )values(
        sysdate()
        <if test="userId != null and userId != '' ">,#{userId}</if>
@@ -168,11 +253,13 @@
        <if test="masterNames != null and masterNames != '' ">,#{masterNames}</if>
        <if test="transactionIds != null and transactionIds != '' ">,#{transactionIds}</if>
        <if test="transactionNames != null and transactionNames != '' ">,#{transactionNames}</if>
        <if test="openid != null and openid != '' ">,#{openid}</if>
        <if test="isDivisionHead != null and isDivisionHead != '' ">,#{isDivisionHead}</if>
        )
    </insert>
    <update id="updateConfig" parameterType="com.dg.core.db.gen.entity.SysUser">
        update sys_user
        update automessage_sys_user
        <set>
            <if test="userId != null and userId != '' ">user_id=#{userId}</if>
            <if test="loginName != null and loginName != '' ">,login_name=#{loginName}</if>
@@ -204,16 +291,15 @@
            <if test="masterNames != null and masterNames != '' ">,master_names=#{masterNames}</if>
            <if test="transactionIds != null and transactionIds != '' ">,transaction_ids=#{transactionIds}</if>
            <if test="transactionNames != null and transactionNames != '' ">,transaction_names=#{transactionNames}</if>
            <if test="openid != null and openid != '' ">,openid=#{openid}</if>
            <if test="isDivisionHead != null and isDivisionHead != '' ">,is_division_head=#{isDivisionHead}</if>
            ,update_time=sysdate()
        </set>
        where user_id= #{userId}
    </update>
    <delete id="deleteConfigById" parameterType="string">
        delete from sys_user where user_id= #{id}
        delete from automessage_sys_user where user_id= #{id}
    </delete>
</mapper>
flower_city/src/main/resources/mapper/TransactionEventMapper.xml
@@ -42,6 +42,12 @@
        <id     property="commonProblem"      column="common_problem"      />
        <id     property="commonProblemUrl"      column="common_problem_url"      />
        <id     property="commonProblemName"      column="common_problem_name"      />
        <id     property="operationalGuidelineVideoName"      column="operational_guideline_video_name"      />
        <id     property="operationalGuidelineName"      column="operational_guideline_name"      />
        <id     property="transactionArea"      column="transaction_area"      />
        <id     property="transactionAreaUrl"      column="transaction_area_url"      />
        <id     property="transactionAreaName"      column="transaction_area_name"      />
        <id     property="classifyIds"      column="classify_ids"      />
    </resultMap>
@@ -49,7 +55,15 @@
        SELECT
            id,
            department_id,
            department_area,
            concat(
                IFNULL((SELECT name FROM area_code_2022 WHERE area_code_2022.code=(select city from automessage_organization_chart
                        where automessage_organization_chart.id=department_id)),''),
                IFNULL((SELECT name FROM area_code_2022 WHERE area_code_2022.code=(select district from automessage_organization_chart
                        where automessage_organization_chart.id=department_id)),''),
                IFNULL((SELECT name FROM area_code_2022 WHERE area_code_2022.code=(select village from automessage_organization_chart
                where automessage_organization_chart.id=department_id)),'')
            ) AS department_area,
            (select contact_number from automessage_organization_chart where automessage_organization_chart.id=department_id) as contactNumber,
            classify_id,
            matter_name,
            associate_ids,
@@ -82,21 +96,43 @@
            common_problem_url,
            common_problem_name,
            operational_guideline_video_url,
            operational_guideline_video_name,
            operational_guideline_name,
            transaction_area,
            transaction_area_url,
            transaction_area_name,
            classify_ids,
            (IF((select classify_grade from automessage_classify_administration where automessage_classify_administration.id=automessage_transaction_event.classify_id)='2',
                (select classify_name from automessage_classify_administration where automessage_classify_administration.id=(select parent_id from
                automessage_classify_administration where automessage_classify_administration.id=automessage_transaction_event.classify_id)),
                (select classify_name from automessage_classify_administration where automessage_classify_administration.id=automessage_transaction_event.classify_id))) as classifyName,
            (select organization_name from automessage_organization_chart where automessage_organization_chart.id=automessage_transaction_event.department_id) as departmentName,
            concat(
            (select classify_name from  classify_administration  where id=(select parent_id from  classify_administration  where id=transaction_event.classify_id)),
            '>',(select classify_name from  classify_administration  where id=transaction_event.classify_id)
            (select classify_name from  automessage_classify_administration  where id=(select parent_id from  automessage_classify_administration  where id=automessage_transaction_event.classify_id)),
            '>',(select classify_name from  automessage_classify_administration  where id=automessage_transaction_event.classify_id)
            ) sumClassifyName
        FROM
            transaction_event
            automessage_transaction_event
    </sql>
    <sql id="selectTransactionEventList">
        SELECT
            id,
            department_id,
            department_area,
            concat(
                    IFNULL((SELECT name FROM area_code_2022 WHERE area_code_2022.code=(select city from automessage_organization_chart
                                                                                       where automessage_organization_chart.id=department_id)),''),
                    IFNULL((SELECT name FROM area_code_2022 WHERE area_code_2022.code=(select district from automessage_organization_chart
                                                                                       where automessage_organization_chart.id=department_id)),''),
                    IFNULL((SELECT name FROM area_code_2022 WHERE area_code_2022.code=(select village from automessage_organization_chart
                                                                                       where automessage_organization_chart.id=department_id)),'')
                ) AS department_area,
            classify_id,
            (select classify_grade from classify_administration where classify_administration.id=transaction_event.classify_id) as classifyName,
            (IF((select classify_grade from automessage_classify_administration where automessage_classify_administration.id=automessage_transaction_event.classify_id)='2',
                (select classify_name from automessage_classify_administration where automessage_classify_administration.id=(select parent_id from
                    automessage_classify_administration where automessage_classify_administration.id=automessage_transaction_event.classify_id)),
                (select classify_name from automessage_classify_administration where automessage_classify_administration.id=automessage_transaction_event.classify_id))) as classifyName,
            (select organization_name from automessage_organization_chart where automessage_organization_chart.id=automessage_transaction_event.department_id) as departmentName,
            matter_name,
            associate_ids,
            associate_names,
@@ -105,7 +141,7 @@
            create_time,
            update_time
        FROM
            transaction_event
            automessage_transaction_event
    </sql>
    <select id="selectConfigData" parameterType="string"  resultMap="TransactionEventEntityResult">
@@ -116,18 +152,36 @@
    <select id="selectConfigList"  resultMap="TransactionEventEntityResult">
        <include refid="selectTransactionEventList"/>
        <where>
            <if test="matterAndUser != null and matterAndUser != ''">
                AND associate_names like concat('%', #{matterAndUser}, '%') or matter_name like concat('%', #{matterAndUser}, '%')
            <if test="keyword != null and keyword != ''">
                AND (matter_name like concat('%', #{keyword}, '%')) or
                    (department_id in (SELECT id FROM automessage_organization_chart WHERE organization_name like concat('%', #{keyword}, '%')))
                    or (classify_id in (SELECT id FROM automessage_classify_administration WHERE classify_name like concat('%', #{keyword}, '%')))
                    or (associate_names like concat('%', #{keyword}, '%'))
            </if>
            <if test="classifyGrade != null and classifyGrade != ''">
                AND (select classify_grade from classify_administration where classify_administration.id=classify_id) = #{classifyGrade}
                AND (select classify_grade from automessage_classify_administration where automessage_classify_administration.id=classify_id) = #{classifyGrade}
            </if>
            <if test="ids != null">
                and department_id IN
                <foreach collection="ids" item="param"  open="(" close=")" separator=",">
                    #{param}
                </foreach>
            </if>
        </where>
        order by create_time desc
    </select>
    <select id="selectListByIds"  resultMap="TransactionEventEntityResult">
        <include refid="selectTransactionEventList"/>
        WHERE id IN
        <foreach collection="array" item="id" index="index" open="(" close=")" separator=",">
            #{id}
        </foreach>
        order by create_time desc
    </select>
    <insert id="insertConfig" parameterType="com.dg.core.db.gen.entity.TransactionEvent">
        insert into transaction_event (
        insert into automessage_transaction_event (
        <if test="id != null">id,</if>
        <if test="departmentId != null and departmentId != '' ">department_id,</if>
        <if test="departmentArea != null">department_area,</if>
@@ -161,6 +215,12 @@
        <if test="commonProblem != null and commonProblem != '' ">common_problem,</if>
        <if test="commonProblemUrl != null and commonProblemUrl != '' ">common_problem_url,</if>
        <if test="commonProblemName != null and commonProblemName != '' ">common_problem_name,</if>
        <if test="operationalGuidelineVideoName != null and operationalGuidelineVideoName != '' ">operational_guideline_video_name,</if>
        <if test="operationalGuidelineName != null and operationalGuidelineName != '' ">operational_guideline_name,</if>
        <if test="transactionArea != null ">transaction_area,</if>
        <if test="transactionAreaUrl != null ">transaction_area_url,</if>
        <if test="transactionAreaName != null ">transaction_area_name,</if>
        <if test="classifyIds != null ">classify_ids,</if>
        update_time,
        create_time
        )values(
@@ -197,13 +257,19 @@
        <if test="commonProblem != null and commonProblem != '' ">#{commonProblem},</if>
        <if test="commonProblemUrl != null and commonProblemUrl != '' ">#{commonProblemUrl},</if>
        <if test="commonProblemName != null and commonProblemName != '' ">#{commonProblemName},</if>
        <if test="operationalGuidelineVideoName != null and operationalGuidelineVideoName != '' ">#{operationalGuidelineVideoName},</if>
        <if test="operationalGuidelineName != null and operationalGuidelineName != '' ">#{operationalGuidelineName},</if>
        <if test="transactionArea != null ">#{transactionArea},</if>
        <if test="transactionAreaUrl != null ">#{transactionAreaUrl},</if>
        <if test="transactionAreaName != null ">#{transactionAreaName},</if>
        <if test="classifyIds != null ">#{classifyIds},</if>
        sysdate(),
        sysdate()
        )
    </insert>
    <update id="updateConfig" parameterType="com.dg.core.db.gen.entity.TransactionEvent">
        update transaction_event
        update automessage_transaction_event
        <set>
            <if test="id != null">id=#{id},</if>
            <if test="departmentId != null and departmentId != '' ">department_id=#{departmentId},</if>
@@ -213,48 +279,63 @@
            <if test="associateIds != null and associateIds != '' ">associate_ids=#{associateIds},</if>
            <if test="transactionNum != null ">transaction_num=#{transactionNum},</if>
            <if test="browseNum != null  ">browse_num=#{browseNum},</if>
            <if test="basicInformation != null and basicInformation != '' ">basic_information=#{basicInformation},</if>
            <if test="acceptConditions != null and acceptConditions != '' ">accept_conditions=#{acceptConditions},</if>
            <if test="applicationMaterial != null and applicationMaterial != '' ">application_material=#{applicationMaterial},</if>
            <if test="handlingProcedures != null and handlingProcedures != '' ">handling_procedures=#{handlingProcedures},</if>
            <if test="rates != null and rates != '' ">rates=#{rates},</if>
            <if test="basicInformation != null">basic_information=#{basicInformation},</if>
            <if test="acceptConditions != null ">accept_conditions=#{acceptConditions},</if>
            <if test="applicationMaterial != null ">application_material=#{applicationMaterial},</if>
            <if test="handlingProcedures != null ">handling_procedures=#{handlingProcedures},</if>
            <if test="rates != null ">rates=#{rates},</if>
            <if test="associateNames != null and associateNames != '' ">associate_names=#{associateNames},</if>
            <if test="queryTime != null">query_time=#{queryTime},</if>
            <if test="basicInformationUrl != null and basicInformationUrl != '' ">basic_information_url=#{basicInformationUrl},</if>
            <if test="acceptConditionsUrl != null and acceptConditionsUrl != '' ">accept_conditions_url=#{acceptConditionsUrl},</if>
            <if test="applicationMaterialUrl != null and applicationMaterialUrl != '' ">application_material_url=#{applicationMaterialUrl},</if>
            <if test="handlingProceduresUrl != null and handlingProceduresUrl != '' ">handling_procedures_url=#{handlingProceduresUrl},</if>
            <if test="ratesUrl != null and ratesUrl != '' ">rates_url=#{ratesUrl},</if>
            <if test="basicInformationFileName != null and basicInformationFileName != '' ">basic_information_file_name=#{basicInformationFileName},</if>
            <if test="acceptConditionsFileName != null and acceptConditionsFileName != '' ">accept_conditions_file_name=#{acceptConditionsFileName},</if>
            <if test="applicationMaterialFileName != null and applicationMaterialFileName != '' ">application_material_file_name=#{applicationMaterialFileName},</if>
            <if test="handlingProceduresFileName != null and handlingProceduresFileName != '' ">handling_procedures_file_name=#{handlingProceduresFileName},</if>
            <if test="ratesFileName != null and ratesFileName != '' ">rates_file_name=#{ratesFileName},</if>
            <if test="operationalGuidelineUrl != null and operationalGuidelineUrl != '' ">operational_guideline_url=#{operationalGuidelineUrl},</if>
            <if test="basicInformationUrl != null">basic_information_url=#{basicInformationUrl},</if>
            <if test="acceptConditionsUrl != null  ">accept_conditions_url=#{acceptConditionsUrl},</if>
            <if test="applicationMaterialUrl != null  ">application_material_url=#{applicationMaterialUrl},</if>
            <if test="handlingProceduresUrl != null  ">handling_procedures_url=#{handlingProceduresUrl},</if>
            <if test="ratesUrl != null  ">rates_url=#{ratesUrl},</if>
            <if test="basicInformationFileName != null  ">basic_information_file_name=#{basicInformationFileName},</if>
            <if test="acceptConditionsFileName != null  ">accept_conditions_file_name=#{acceptConditionsFileName},</if>
            <if test="applicationMaterialFileName != null  ">application_material_file_name=#{applicationMaterialFileName},</if>
            <if test="handlingProceduresFileName != null ">handling_procedures_file_name=#{handlingProceduresFileName},</if>
            <if test="ratesFileName != null ">rates_file_name=#{ratesFileName},</if>
            <if test="operationalGuidelineUrl != null">operational_guideline_url=#{operationalGuidelineUrl},</if>
            <if test="setGist != null and setGist != '' ">set_gist=#{setGist},</if>
            <if test="setGistUrl != null and setGistUrl != '' ">set_gist_url=#{setGistUrl},</if>
            <if test="setGistName != null and setGistName != '' ">set_gist_name=#{setGistName},</if>
            <if test="commonProblem != null and commonProblem != '' ">common_problem=#{commonProblem},</if>
            <if test="commonProblemUrl != null and commonProblemUrl != '' ">common_problem_url=#{commonProblemUrl},</if>
            <if test="commonProblemName != null and commonProblemName != '' ">common_problem_name=#{commonProblemName},</if>
            <if test="operationalGuidelineVideoUrl != null and operationalGuidelineVideoUrl != '' ">operational_guideline_video_url=#{operationalGuidelineVideoUrl},</if>
            <if test="operationalGuidelineVideoUrl != null ">operational_guideline_video_url=#{operationalGuidelineVideoUrl},</if>
            <if test="operationalGuidelineVideoName != null and operationalGuidelineVideoName != '' ">operational_guideline_video_name=#{operationalGuidelineVideoName},</if>
            <if test="operationalGuidelineName != null and operationalGuidelineName != '' ">operational_guideline_name=#{operationalGuidelineName},</if>
            <if test="transactionArea != null ">transaction_area=#{transactionArea},</if>
            <if test="transactionAreaUrl != null ">transaction_area_url=#{transactionAreaUrl},</if>
            <if test="transactionAreaName != null ">transaction_area_name=#{transactionAreaName},</if>
            <if test="classifyIds != null ">classify_ids=#{classifyIds},</if>
            update_time=sysdate()
        </set>
        where  id= #{id}
    </update>
    <delete id="deleteConfigById" parameterType="string">
        delete from transaction_event where id= #{Id}
        delete from automessage_transaction_event where id= #{Id}
    </delete>
    <select id="countNum" resultType="integer">
        select count(id) from transaction_event
        select count(id) from automessage_transaction_event
        <where>
            <if test="matterAndUser != null and matterAndUser != ''">
                AND associate_names like concat('%', #{matterAndUser}, '%') or matter_name like concat('%', #{matterAndUser}, '%')
            <if test="keyword != null and keyword != ''">
                AND (matter_name like concat('%', #{keyword}, '%')) or
                (department_id in (SELECT id FROM automessage_organization_chart WHERE organization_name like concat('%', #{keyword}, '%')))
                or (classify_id in (SELECT id FROM automessage_classify_administration WHERE classify_name like concat('%', #{keyword}, '%')))
                or (associate_names like concat('%', #{keyword}, '%'))
            </if>
            <if test="classifyGrade != null and classifyGrade != ''">
                AND (select classify_grade from classify_administration where classify_grade.id=classify_id) = #{classifyGrade}
            </if>
            <if test="ids != null">
                and department_id IN
                <foreach collection="ids" item="param"  open="(" close=")" separator=",">
                    #{param}
                </foreach>
            </if>
        </where>
    </select>
@@ -264,20 +345,37 @@
        <include refid="selectTransactionEventEntityVo"/>
        <where>
            <if test="matterName != null and matterName != ''">
                AND (matter_name like concat('%', #{matterName}, '%') or #{matterName} like concat('%', matter_name, '%'))
                AND (matter_name like concat('%', #{matterName}, '%') )
            </if>
            <if test="classifyId != null and classifyId != ''">
               and (classify_id= #{classifyId} or classify_id in (select id FROM automessage_classify_administration where parent_id =#{classifyId} ))
            </if>
        </where>
        order by create_time desc
    </select>
     <select id="sumTransactionNum"  resultMap="TransactionEventEntityResult">
        select sum(transaction_num)sumTransactionNum,count(*) counttransaction   FROM transaction_event
    <select id="queryAssociateNamesList"  resultMap="TransactionEventEntityResult">
        <include refid="selectTransactionEventEntityVo"/>
        <where>
            <if test="associateNames != null and associateNames != ''">
                AND (associate_names like concat('%', #{associateNames}, '%') or #{associateNames} like concat('%', associate_names, '%'))
            </if>
            <if test="classifyId != null and classifyId != ''">
                and (classify_id= #{classifyId} or classify_id in (select id FROM automessage_classify_administration where parent_id =#{classifyId} ))
            </if>
        </where>
        order by create_time desc
    </select>
    <select id="sumTransactionNum"  resultMap="TransactionEventEntityResult">
        select sum(transaction_num)sumTransactionNum,count(*) counttransaction   FROM automessage_transaction_event
    </select>
    <select id="queryByClassifyIdList"  resultMap="TransactionEventEntityResult">
        <include refid="selectTransactionEventEntityVo"/>
        where  (classify_id= #{classifyId} or classify_id in (select id FROM classify_administration where parent_id =#{classifyId} ))
        where  (classify_id= #{classifyId} or classify_id in (select id FROM automessage_classify_administration where parent_id =#{classifyId} ))
        <if test="departmentId!=null">
            and   department_id=#{departmentId}
        </if>
@@ -285,8 +383,8 @@
    </select>
    <select id="countNumByClassifyIdList" resultType="integer">
        select count(id) from transaction_event
        where  (classify_id= #{classifyId} or classify_id in (select id FROM classify_administration where parent_id =#{classifyId} ))
        select count(id) from automessage_transaction_event
        where  (classify_id= #{classifyId} or classify_id in (select id FROM automessage_classify_administration where parent_id =#{classifyId} ))
        <if test="departmentId!=null">
          and   department_id=#{departmentId}
        </if>
@@ -295,7 +393,7 @@
    <update id="updateConfigByMatterName" parameterType="com.dg.core.db.gen.entity.TransactionEvent">
        update transaction_event
        update automessage_transaction_event
        <set>
            browse_num=browse_num+1,query_time=sysdate()
        </set>
@@ -306,7 +404,7 @@
    </update>
    <select id="countNumByMatterName" resultType="integer">
        select count(id) from transaction_event
        select count(id) from automessage_transaction_event
        <where>
            <if test="matterName != null and matterName != ''">
                AND matter_name like concat('%', #{matterName}, '%')
@@ -316,22 +414,51 @@
    </select>
    <select id="selectSearch" resultType="com.dg.core.db.manual.pojo.Search">
        select  title,content,views  FROM(
                 select  organization_name title,resume content,null views  from   organization_chart  UNION
                 select  matter_name title,concat((select classify_name from  classify_administration
                 where id=(select parent_id from  classify_administration  where id=transaction_event.classify_id)),
                '>',(select classify_name from  classify_administration  where id=transaction_event.classify_id)) content,
                     transaction_num views from transaction_event
                                           ) k
        select  id,title,content,views, type FROM(
                 select  id,organization_name title,resume content,null views,1 type  from   automessage_organization_chart  UNION
                 select  id,matter_name title,concat((select classify_name from  automessage_classify_administration
                                                      where id=(select parent_id from  automessage_classify_administration  where id=automessage_transaction_event.classify_id)),
                                                     '>',(select classify_name from  automessage_classify_administration  where id=automessage_transaction_event.classify_id)) content,
                         transaction_num views,2 type from automessage_transaction_event
             ) k
        where  k.title like concat('%',#{keyWord}, '%') or k.content  like concat('%', #{keyWord}, '%')
    </select>
    <select id="selectSearchAssociate" resultType="com.dg.core.db.manual.pojo.Search">
               select  matter_name title,concat((select classify_name from  classify_administration
                                          where id=(select parent_id from  classify_administration  where id=transaction_event.classify_id)),
                                         '>',(select classify_name from  classify_administration  where id=transaction_event.classify_id)) content,
                transaction_num views from transaction_event where  associate_names like   concat('%',#{keyWord}, '%')
    <select id="selectSearchList" resultType="com.dg.core.db.manual.pojo.Search">
        select distinct   classify_id, content, type   FROM(
           select id,classify_name title,ifnull(concat((select classify_name from automessage_classify_administration where c.parent_id=id),'/',classify_name),classify_name)  content,id classify_id,4 type  from automessage_classify_administration c UNION
           select  id,matter_name title,concat((select classify_name from  automessage_classify_administration
                                                where id=(select parent_id from  automessage_classify_administration  where id=automessage_transaction_event.classify_id)),
                                               '/',(select classify_name from  automessage_classify_administration  where id=automessage_transaction_event.classify_id)) content,classify_id,
                   2 type from automessage_transaction_event) k
        where  k.title like concat('%',#{keyWord}, '%')
    </select>
    <select id="selectSearchAssociate" resultType="com.dg.core.db.manual.pojo.Search">
       select  id,matter_name title,concat((select classify_name from  automessage_classify_administration
                                  where id=(select parent_id from  automessage_classify_administration  where id=automessage_transaction_event.classify_id)),
                                 '>',(select classify_name from  automessage_classify_administration  where id=automessage_transaction_event.classify_id)) content,
        transaction_num views ,3 type from automessage_transaction_event where  associate_names like   concat('%',#{keyWord}, '%')
    </select>
    <select id="selectSearchAssociateDistinct" resultType="com.dg.core.db.manual.pojo.Search" >
             select  distinct   classify_id,
                    (select ifnull(concat((select classify_name from automessage_classify_administration where c.parent_id=id),'/',classify_name),classify_name)  content  from automessage_classify_administration c where c.id=t.classify_id) content,
                    3 type from automessage_transaction_event t where  associate_names like  concat('%',#{keyWord}, '%')
    </select>
    <select id="selectDataIfExist" resultType="string">
        select id from automessage_transaction_event
        where department_id=#{departmentId}
        and matter_name=#{matterName}
    </select>
    <select id="selectclassifyId" resultType="string">
        select id from automessage_transaction_event
        where classify_id=#{classifyId}
    </select>
</mapper>
hs_err_pid36404.log
File was deleted
springcloud_k8s_panzhihuazhihuishequ/.idea/compiler.xml
File was deleted
springcloud_k8s_panzhihuazhihuishequ/.idea/encodings.xml
@@ -5,6 +5,7 @@
    <file url="file://$PROJECT_DIR$/applets" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/applets/src/main/java" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/applets/src/main/resources" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/applets/src/main/resources/lib" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/applets_backstage" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/applets_backstage/src/main/java" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/applets_backstage/src/main/resources" charset="UTF-8" />
@@ -14,6 +15,7 @@
    <file url="file://$PROJECT_DIR$/auth/src/main/resources/bootstrap.yml" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/common" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/common/src/main/java" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/common/src/main/resources" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/community_backstage" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/community_backstage/src/main/java" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/community_backstage/src/main/resources" charset="UTF-8" />
@@ -24,20 +26,34 @@
    <file url="file://$PROJECT_DIR$/eureka_server/src/main/java" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/eureka_server/src/main/resources" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/grid_app" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/grid_app/src/main/java" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/grid_app/src/main/resources" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/grid_backstage" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/grid_backstage/src/main/java" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/grid_backstage/src/main/resources" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/service_api" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/service_api/src/main/java" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/service_api/src/main/resources" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/service_community" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/service_community/src/main/java" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/service_community/src/main/resources" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/service_grid" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/service_grid/src/main/java" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/service_grid/src/main/resources" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/service_partybuilding" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/service_partybuilding/src/main/java" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/service_partybuilding/src/main/resources" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/service_property" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/service_property/src/main/java" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/service_property/src/main/resources" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/service_user" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/service_user/src/main/java" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/service_user/src/main/resources" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/shop_backstage" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/shop_backstage/src/main/java" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/shop_backstage/src/main/resources" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/src/main/java" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/src/main/resources" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/timejob" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/timejob/src/main/java" charset="UTF-8" />
    <file url="file://$PROJECT_DIR$/timejob/src/main/resources" charset="UTF-8" />
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/ComBatteryCommodityActivityApi.java
New file
@@ -0,0 +1,177 @@
package com.panzhihua.applets.api;
import com.panzhihua.common.controller.BaseController;
import com.panzhihua.common.model.dtos.common.*;
import com.panzhihua.common.model.vos.LoginUserInfoVO;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.common.ComBatteryCommodityActivityVo;
import com.panzhihua.common.model.vos.common.ComBatteryCommodityOrderBargainVo;
import com.panzhihua.common.model.vos.common.ComBatteryCommodityOrderCollageTeamVo;
import com.panzhihua.common.service.community.ComBatteryCommodityActivityFeign;
import com.panzhihua.common.service.community.ComBatteryCommodityOrderCollageTeamFeign;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.Date;
/**
 * title: 电动车商城-商家活动表(ComBatteryCommodityActivity)  表控制层
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 电动车商城-商家活动表
 *
 * @author lyq
 * @date 2022-03-29 13:17:38
 */
@Slf4j
@Api(tags = {"电动车商城-活动管理"})
@RestController
@RequestMapping("/comBatteryCommodityActivity")
public class ComBatteryCommodityActivityApi extends BaseController {
    @Resource
    private ComBatteryCommodityActivityFeign comBatteryCommodityActivityService;
    @Resource
    private ComBatteryCommodityOrderCollageTeamFeign orderCollageTeamService;
    /**
     * description  queryByPage  分页查询
     *
     * @param comBatteryCommodityActivity 请求参数
     * @return 分页查询返回参数
     * @author lyq
     * @date 2022-03-29 13:17:38
     */
    @ApiOperation(value = "分页查询活动列表",response = ComBatteryCommodityActivityVo.class)
    @PostMapping("/page")
    public R queryByPage(@RequestBody PageComBatteryCommodityActivityDto comBatteryCommodityActivity) {
        comBatteryCommodityActivity.setIsApplets(1);
        if(comBatteryCommodityActivity.getIsUser().equals(1)){
            comBatteryCommodityActivity.setUserId(this.getUserId());
        }
        return this.comBatteryCommodityActivityService.queryByPage(comBatteryCommodityActivity);
    }
    /**
     * description  detailById  查询详情
     *
     * @param id 主键id
     * @return 详情数据
     * @author lyq
     * @date 2022-03-29 13:17:38
     */
    @ApiOperation(value = "查询活动详情",response = ComBatteryCommodityActivityVo.class)
    @GetMapping("/detail")
    public R detailById(@RequestParam("id") Long id) {
        LoginUserInfoVO loginUserInfo = this.getLoginUserInfoSureNoLogin();
        Long userId = 0L;
        if(loginUserInfo != null){
            userId = loginUserInfo.getUserId();
        }
        return this.comBatteryCommodityActivityService.detailById(id,userId);
    }
    /**
     * description  queryByPage  查询列表
     *
     * @param comBatteryCommodityActivity 请求参数
     * @return 列表数据
     * @author lyq
     * @date 2022-03-29 13:17:38
     */
    @ApiOperation(value = "查询活动列表",response = ComBatteryCommodityActivityVo.class)
    @PostMapping("/list")
    public R queryByList(@RequestBody PageComBatteryCommodityActivityDto comBatteryCommodityActivity) {
        comBatteryCommodityActivity.setIsApplets(1);
        return this.comBatteryCommodityActivityService.queryByList(comBatteryCommodityActivity);
    }
    @ApiOperation(value = "查询拼团团队列表",response = ComBatteryCommodityOrderCollageTeamVo.class)
    @PostMapping("/assorted/dough")
    public R queryByAssortedDoughList(@RequestBody PageComBatteryCommodityOrderCollageTeamDto orderCollageTeamDto) {
        orderCollageTeamDto.setStatus(1);
        LoginUserInfoVO loginUserInfo = this.getLoginUserInfoSureNoLogin();
        if(loginUserInfo != null){
            orderCollageTeamDto.setUserId(loginUserInfo.getUserId());
        }
        return this.orderCollageTeamService.queryByPage(orderCollageTeamDto);
    }
    @ApiOperation(value = "查询拼团团队详情",response = ComBatteryCommodityOrderCollageTeamVo.class)
    @GetMapping("/assorted/dough/detail")
    public R queryByAssortedDoughDetail(@RequestParam("id") Long id) {
        LoginUserInfoVO loginUserInfo = this.getLoginUserInfoSureNoLogin();
        Long userId = 0L;
        if(loginUserInfo != null){
            userId = loginUserInfo.getUserId();
        }
        return this.orderCollageTeamService.detailById(id,userId);
    }
    /**
     * 创建拼团订单
     * @param orderDto  请求参数
     * @return  创建订单结果
     */
    @ApiOperation(value = "创建拼团订单")
    @PostMapping("/start/fight")
    public R startFight(@RequestBody StartFightOrderDto orderDto){
        orderDto.setUserId(this.getUserId());
        return this.comBatteryCommodityActivityService.startFight(orderDto);
    }
    /**
     * 创建砍价订单
     * @param orderDto  请求参数
     * @return  创建订单结果
     */
    @ApiOperation(value = "创建砍价订单")
    @PostMapping("/start/bargain")
    public R startBargain(@RequestBody StartBargainOrderDto orderDto){
        orderDto.setUserId(this.getUserId());
        return this.comBatteryCommodityActivityService.startBargain(orderDto);
    }
    /**
     * 帮好友砍价
     * @param orderDto  请求参数
     * @return  创建订单结果
     */
    @ApiOperation(value = "帮好友砍价")
    @PostMapping("/start/user/bargain")
    public R startUserBargain(@RequestBody StartUserBargainOrderDto orderDto){
        orderDto.setUserId(this.getUserId());
        return this.comBatteryCommodityActivityService.startUserBargain(orderDto);
    }
    /**
     * 查询砍价记录详情
     * @param id  砍价记录id
     * @return  创建订单结果
     */
    @ApiOperation(value = "查询砍价记录详情",response = ComBatteryCommodityOrderBargainVo.class)
    @GetMapping("/user/bargain")
    public R getUserBargain(@RequestParam("id") Long id){
        return this.comBatteryCommodityActivityService.getUserBargain(id);
    }
    /**
     * 创建秒杀订单
     * @param orderDto  请求参数
     * @return  创建订单结果
     */
    @ApiOperation(value = "创建秒杀订单")
    @PostMapping("/start/seckill")
    public R startSeckill(@RequestBody StartSeckillOrderDto orderDto){
        orderDto.setUserId(this.getUserId());
        return this.comBatteryCommodityActivityService.startSeckill(orderDto);
    }
}
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/ComBatteryCommodityApi.java
New file
@@ -0,0 +1,89 @@
package com.panzhihua.applets.api;
import com.panzhihua.common.controller.BaseController;
import com.panzhihua.common.model.dtos.common.AddComBatteryCommodityDto;
import com.panzhihua.common.model.dtos.common.EditComBatteryCommodityDto;
import com.panzhihua.common.model.dtos.common.PageComBatteryCommodityDto;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.common.ComBatteryCommodityVo;
import com.panzhihua.common.service.community.ComBatteryCommodityFeign;
import com.panzhihua.common.service.community.ComBatteryCommoditySpecsFeign;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.Date;
/**
 * title: 电动车商城-商品表(ComBatteryCommodity)  表控制层
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 电动车商城-商品表
 *
 * @author lyq
 * @date 2022-03-28 14:59:58
 */
@Slf4j
@Api(tags = {"电动车商城-商品管理"})
@RestController
@RequestMapping("/comBatteryCommodity")
public class ComBatteryCommodityApi extends BaseController {
    @Resource
    private ComBatteryCommodityFeign comBatteryCommodityService;
    @Resource
    private ComBatteryCommoditySpecsFeign comBatteryCommoditySpecsService;
    /**
     * description  queryByPage  分页查询
     *
     * @param comBatteryCommodity 请求参数
     * @return 分页查询返回参数
     * @author lyq
     * @date 2022-03-28 14:59:58
     */
    @ApiOperation(value = "分页查询商品列表",response = ComBatteryCommodityVo.class)
    @PostMapping("/page")
    public R queryByPage(@RequestBody PageComBatteryCommodityDto comBatteryCommodity) {
        return this.comBatteryCommodityService.queryByPage(comBatteryCommodity);
    }
    /**
     * description  detailById  查询详情
     *
     * @param id 主键id
     * @return 详情数据
     * @author lyq
     * @date 2022-03-28 14:59:58
     */
    @ApiOperation(value = "查询商品详情",response = ComBatteryCommodityVo.class)
    @GetMapping("/detail")
    public R detailById(@RequestParam("id") Long id) {
        return this.comBatteryCommodityService.detailById(id);
    }
    /**
     * description  queryByPage  查询列表
     *
     * @param comBatteryCommodity 请求参数
     * @return 列表数据
     * @author lyq
     * @date 2022-03-28 14:59:58
     */
    @ApiOperation(value = "查询商品列表",response = ComBatteryCommodityVo.class)
    @PostMapping("/list")
    public R queryByList(@RequestBody PageComBatteryCommodityDto comBatteryCommodity) {
        comBatteryCommodity.setStoreId(this.getCommunityId());
        return this.comBatteryCommodityService.queryByList(comBatteryCommodity);
    }
    @ApiOperation(value = "查询商品规格详情",response = ComBatteryCommodityVo.class)
    @GetMapping("/specs/detail")
    public R specsDetailById(@RequestParam("id") Long id) {
        return this.comBatteryCommoditySpecsService.detailById(id);
    }
}
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/ComBatteryCommodityOrderApi.java
New file
@@ -0,0 +1,81 @@
package com.panzhihua.applets.api;
import com.panzhihua.common.controller.BaseController;
import com.panzhihua.common.model.dtos.common.EditOrderAddressDto;
import com.panzhihua.common.model.dtos.common.EditOrderLogisticsDto;
import com.panzhihua.common.model.dtos.common.PageComBatteryCommodityOrderDto;
import com.panzhihua.common.model.dtos.common.UserCreateOrderDto;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.common.ComBatteryCommodityOrderVo;
import com.panzhihua.common.service.community.ComBatteryCommodityOrderFeign;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
/**
 * title: 电动车商城-订单表(ComBatteryCommodityOrder)  表控制层
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 电动车商城-订单表
 *
 * @author lyq
 * @date 2022-03-29 16:05:04
 */
@Slf4j
@Api(tags = {"电动车商城-订单管理"})
@RestController
@RequestMapping("/comBatteryCommodityOrder")
public class ComBatteryCommodityOrderApi extends BaseController {
    @Resource
    private ComBatteryCommodityOrderFeign comBatteryCommodityOrderService;
    /**
     * description  queryByPage  分页查询
     *
     * @param comBatteryCommodityOrder 请求参数
     * @return 分页查询返回参数
     * @author lyq
     * @date 2022-03-29 16:05:04
     */
    @ApiOperation(value = "分页查询订单列表",response = ComBatteryCommodityOrderVo.class)
    @PostMapping("/page")
    public R queryByPage(@RequestBody PageComBatteryCommodityOrderDto comBatteryCommodityOrder) {
        comBatteryCommodityOrder.setUserId(this.getUserId());
        comBatteryCommodityOrder.setIsApplets(1);
        return this.comBatteryCommodityOrderService.queryByPage(comBatteryCommodityOrder);
    }
    /**
     * description  detailById  查询详情
     *
     * @param id 主键id
     * @return 详情数据
     * @author lyq
     * @date 2022-03-29 16:05:04
     */
    @ApiOperation(value = "查询订单详情",response = ComBatteryCommodityOrderVo.class)
    @GetMapping("/detail")
    public R detailById(@RequestParam("id") Long id) {
        return this.comBatteryCommodityOrderService.detailById(id);
    }
    @ApiOperation(value = "创建订单")
    @PostMapping("/create")
    public R appletsOrderCreate(@RequestBody UserCreateOrderDto createOrderDto) {
        createOrderDto.setUserId(this.getUserId());
        return this.comBatteryCommodityOrderService.appletsOrderCreate(createOrderDto);
    }
    @ApiOperation(value = "用户确认收货")
    @GetMapping("/receiving")
    public R appletsOrderReceiving(@RequestParam("id") Long id){
        return this.comBatteryCommodityOrderService.appletsOrderReceiving(id,this.getUserId());
    }
}
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/ComBatteryStoreApi.java
New file
@@ -0,0 +1,49 @@
package com.panzhihua.applets.api;
import com.panzhihua.common.controller.BaseController;
import com.panzhihua.common.model.dtos.common.EditComBatteryStoreDto;
import com.panzhihua.common.model.dtos.common.PageComBatteryStoreDto;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.common.ComBatteryStoreVo;
import com.panzhihua.common.service.community.ComBatteryStoreFeign;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.Date;
/**
 * title: 电动车商城-商家表(ComBatteryStore)  表控制层
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 电动车商城-商家表
 *
 * @author lyq
 * @date 2022-03-28 13:44:43
 */
@Slf4j
@Api(tags = {"电动车商城-商家管理"})
@RestController
@RequestMapping("/comBatteryStore")
public class ComBatteryStoreApi extends BaseController {
    @Resource
    private ComBatteryStoreFeign comBatteryStoreService;
    @ApiOperation(value = "分页查询商家列表",response = ComBatteryStoreVo.class)
    @PostMapping("/page")
    public R queryByPage(@RequestBody PageComBatteryStoreDto comBatteryStore) {
        return this.comBatteryStoreService.queryByPage(comBatteryStore);
    }
    @ApiOperation(value = "查询商家详情",response = ComBatteryStoreVo.class)
    @GetMapping("/detail")
    public R detailById(@RequestParam("id") Long id) {
        return this.comBatteryStoreService.detailById(id);
    }
}
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/ComBatteryStoreClassApi.java
New file
@@ -0,0 +1,82 @@
package com.panzhihua.applets.api;
import com.panzhihua.common.controller.BaseController;
import com.panzhihua.common.model.dtos.common.AddComBatteryStoreClassDto;
import com.panzhihua.common.model.dtos.common.EditComBatteryStoreClassDto;
import com.panzhihua.common.model.dtos.common.PageComBatteryStoreClassDto;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.common.ComBatteryStoreClassVo;
import com.panzhihua.common.service.community.ComBatteryStoreClassFeign;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.Date;
/**
 * title: 电动车商城-商家分类表(ComBatteryStoreClass)  表控制层
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 电动车商城-商家分类表
 *
 * @author lyq
 * @date 2022-03-29 11:01:55
 */
@Slf4j
@Api(tags = {"电动车商城-商家分类管理"})
@RestController
@RequestMapping("/comBatteryStoreClass")
public class ComBatteryStoreClassApi extends BaseController {
    @Resource
    private ComBatteryStoreClassFeign comBatteryStoreClassService;
    /**
     * description  queryByPage  分页查询
     *
     * @param comBatteryStoreClass 请求参数
     * @return 分页查询返回参数
     * @author lyq
     * @date 2022-03-29 11:01:55
     */
    @ApiOperation(value = "分页查询商家分类列表",response = ComBatteryStoreClassVo.class)
    @PostMapping("/page")
    public R queryByPage(@RequestBody PageComBatteryStoreClassDto comBatteryStoreClass) {
        comBatteryStoreClass.setStatus(1);
        return this.comBatteryStoreClassService.queryByPage(comBatteryStoreClass);
    }
    /**
     * description  detailById  查询详情
     *
     * @param id 主键id
     * @return 详情数据
     * @author lyq
     * @date 2022-03-29 11:01:55
     */
    @ApiOperation(value = "查询商家分类详情",response = ComBatteryStoreClassVo.class)
    @GetMapping("/detail")
    public R detailById(@RequestParam("id") Long id) {
        return this.comBatteryStoreClassService.detailById(id);
    }
    /**
     * description  queryByPage  查询列表
     *
     * @param comBatteryStoreClass 请求参数
     * @return 列表数据
     * @author lyq
     * @date 2022-03-29 11:01:55
     */
    @ApiOperation(value = "查询商家分类列表",response = ComBatteryStoreClassVo.class)
    @PostMapping("/list")
    public R queryByList(@RequestBody PageComBatteryStoreClassDto comBatteryStoreClass) {
        comBatteryStoreClass.setStatus(1);
        return this.comBatteryStoreClassService.queryByAppletsList(comBatteryStoreClass);
    }
}
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/ComBatteryUserAddressApi.java
New file
@@ -0,0 +1,135 @@
package com.panzhihua.applets.api;
import com.panzhihua.common.controller.BaseController;
import com.panzhihua.common.model.dtos.common.AddComBatteryUserAddressDto;
import com.panzhihua.common.model.dtos.common.EditComBatteryUserAddressDto;
import com.panzhihua.common.model.dtos.common.PageComBatteryUserAddressDto;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.common.ComBatteryUserAddressVo;
import com.panzhihua.common.service.community.ComBatteryUserAddressFeign;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
/**
 * title: 电动车商城-用户收货地址表(ComBatteryUserAddress)  表控制层
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 电动车商城-用户收货地址表
 *
 * @author lyq
 * @date 2022-03-29 13:18:19
 */
@Slf4j
@Api(tags = {"电动车商城-用户收货地址管理"})
@RestController
@RequestMapping("/comBatteryUserAddress")
public class ComBatteryUserAddressApi extends BaseController {
    @Resource
    private ComBatteryUserAddressFeign comBatteryUserAddressService;
    /**
     * description  queryByPage  分页查询
     *
     * @param comBatteryUserAddress 请求参数
     * @return 分页查询返回参数
     * @author lyq
     * @date 2022-03-29 13:18:19
     */
    @ApiOperation(value = "分页查询用户收货地址列表",response = ComBatteryUserAddressVo.class)
    @PostMapping("/page")
    public R queryByPage(@RequestBody PageComBatteryUserAddressDto comBatteryUserAddress) {
        comBatteryUserAddress.setUserId(this.getUserId());
        return this.comBatteryUserAddressService.queryByPage(comBatteryUserAddress);
    }
    /**
     * description  add  新增数据
     *
     * @param comBatteryUserAddress 请求参数
     * @return 新增结果
     * @author lyq
     * @date 2022-03-29 13:18:19
     */
    @ApiOperation(value = "新增用户收货地址")
    @PostMapping("/add")
    public R add(@RequestBody AddComBatteryUserAddressDto comBatteryUserAddress) {
        comBatteryUserAddress.setUserId(this.getUserId());
        return this.comBatteryUserAddressService.insert(comBatteryUserAddress);
    }
    /**
     * description  edit  编辑数据
     *
     * @param comBatteryUserAddress 请求参数
     * @return 编辑结果
     * @author lyq
     * @date 2022-03-29 13:18:19
     */
    @ApiOperation(value = "编辑用户收货地址")
    @PutMapping("/edit")
    public R edit(@RequestBody EditComBatteryUserAddressDto comBatteryUserAddress) {
        comBatteryUserAddress.setUserId(this.getUserId());
        return this.comBatteryUserAddressService.update(comBatteryUserAddress);
    }
    /**
     * description  deleteById  删除数据
     *
     * @param id 主键id
     * @return 删除结果
     * @author lyq
     * @date 2022-03-29 13:18:19
     */
    @ApiOperation(value = "删除用户收货地址")
    @GetMapping("/delete")
    public R deleteById(@RequestParam("id") Long id) {
        return this.comBatteryUserAddressService.deleteById(id);
    }
    /**
     * description  detailById  查询详情
     *
     * @param id 主键id
     * @return 详情数据
     * @author lyq
     * @date 2022-03-29 13:18:19
     */
    @ApiOperation(value = "查询用户收货地址详情",response = ComBatteryUserAddressVo.class)
    @GetMapping("/detail")
    public R detailById(@RequestParam("id") Long id) {
        return this.comBatteryUserAddressService.detailById(id);
    }
    /**
     * description  queryByPage  查询列表
     *
     * @param comBatteryUserAddress 请求参数
     * @return 列表数据
     * @author lyq
     * @date 2022-03-29 13:18:19
     */
    @ApiOperation(value = "查询用户收货地址列表",response = ComBatteryUserAddressVo.class)
    @PostMapping("/list")
    public R queryByList(@RequestBody PageComBatteryUserAddressDto comBatteryUserAddress) {
        comBatteryUserAddress.setUserId(this.getUserId());
        return this.comBatteryUserAddressService.queryByList(comBatteryUserAddress);
    }
    /**
     * 查询用户默认收货地址
     * @return  用户默认收货地址
     */
    @ApiOperation(value = "查询用户默认收货地址",response = ComBatteryUserAddressVo.class)
    @GetMapping("/default/address")
    public R getDefaultAddress() {
        return this.comBatteryUserAddressService.getDefaultAddress(this.getUserId());
    }
}
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/ComChangeCarBrandApi.java
New file
@@ -0,0 +1,81 @@
package com.panzhihua.applets.api;
import com.panzhihua.common.controller.BaseController;
import com.panzhihua.common.model.dtos.common.AddComChangeCarBrandDto;
import com.panzhihua.common.model.dtos.common.EditComChangeCarBrandDto;
import com.panzhihua.common.model.dtos.common.PageComChangeCarBrandDto;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.common.ComChangeCarBrandVo;
import com.panzhihua.common.service.community.ComChangeCarBrandFeign;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.Date;
/**
 * title: 换新车-品牌表(ComChangeCarBrand)  表控制层
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 换新车-品牌表
 *
 * @author lyq
 * @date 2022-04-07 13:37:22
 */
@Slf4j
@Api(tags = {"换新车-品牌管理"})
@RestController
@RequestMapping("/comChangeCarBrand")
public class ComChangeCarBrandApi extends BaseController {
    @Resource
    private ComChangeCarBrandFeign comChangeCarBrandService;
    /**
     * description  queryByPage  分页查询
     *
     * @param comChangeCarBrand 请求参数
     * @return 分页查询返回参数
     * @author lyq
     * @date 2022-04-07 13:37:22
     */
    @ApiOperation(value = "分页查询品牌列表",response = ComChangeCarBrandVo.class)
    @PostMapping("/page")
    public R queryByPage(@RequestBody PageComChangeCarBrandDto comChangeCarBrand) {
        comChangeCarBrand.setStatus(1);
        return this.comChangeCarBrandService.queryByPage(comChangeCarBrand);
    }
    /**
     * description  detailById  查询详情
     *
     * @param id 主键id
     * @return 详情数据
     * @author lyq
     * @date 2022-04-07 13:37:22
     */
    @ApiOperation(value = "查询品牌详情",response = ComChangeCarBrandVo.class)
    @GetMapping("/detail")
    public R detailById(@RequestParam("id") Long id) {
        return this.comChangeCarBrandService.detailById(id);
    }
    /**
     * description  queryByPage  查询列表
     *
     * @param comChangeCarBrand 请求参数
     * @return 列表数据
     * @author lyq
     * @date 2022-04-07 13:37:22
     */
    @ApiOperation(value = "查询品牌列表",response = ComChangeCarBrandVo.class)
    @PostMapping("/list")
    public R queryByList(@RequestBody PageComChangeCarBrandDto comChangeCarBrand) {
        return this.comChangeCarBrandService.queryByList(comChangeCarBrand);
    }
}
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/ComChangeCarInquiryApi.java
New file
@@ -0,0 +1,55 @@
package com.panzhihua.applets.api;
import com.panzhihua.common.controller.BaseController;
import com.panzhihua.common.model.dtos.common.AddComChangeCarInquiryDto;
import com.panzhihua.common.model.dtos.common.EditComChangeCarInquiryDto;
import com.panzhihua.common.model.dtos.common.PageComChangeCarInquiryDto;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.common.ComChangeCarInquiryVo;
import com.panzhihua.common.service.community.ComChangeCarInquiryFeign;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.Date;
/**
 * title: 换新车-分期询价表(ComChangeCarInquiry)  表控制层
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 换新车-分期询价表
 *
 * @author lyq
 * @date 2022-04-07 13:39:06
 */
@Slf4j
@Api(tags = {"换新车-分期询价管理"})
@RestController
@RequestMapping("/comChangeCarInquiry")
public class ComChangeCarInquiryApi extends BaseController {
    @Resource
    private ComChangeCarInquiryFeign comChangeCarInquiryService;
    /**
     * description  add  新增数据
     *
     * @param comChangeCarInquiry 请求参数
     * @return 新增结果
     * @author lyq
     * @date 2022-04-07 13:39:06
     */
    @ApiOperation(value = "新增分期询价")
    @PostMapping("/add")
    public R add(@RequestBody AddComChangeCarInquiryDto comChangeCarInquiry) {
        comChangeCarInquiry.setCreateAt(new Date());
        comChangeCarInquiry.setCreateBy(this.getUserId());
        comChangeCarInquiry.setUserId(this.getUserId());
        return this.comChangeCarInquiryService.insert(comChangeCarInquiry);
    }
}
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/ComChangeCarModelApi.java
New file
@@ -0,0 +1,91 @@
package com.panzhihua.applets.api;
import com.panzhihua.common.controller.BaseController;
import com.panzhihua.common.model.dtos.common.*;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.common.ComChangeCarModelSpecsVo;
import com.panzhihua.common.model.vos.common.ComChangeCarModelVo;
import com.panzhihua.common.service.community.ComChangeCarModelFeign;
import com.panzhihua.common.service.community.ComChangeCarModelRelationFeign;
import com.panzhihua.common.service.community.ComChangeCarModelSpecsFeign;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.Date;
/**
 * title: 换新车-车型管理表(ComChangeCarModel)  表控制层
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 换新车-车型管理表
 *
 * @author lyq
 * @date 2022-04-07 13:41:54
 */
@Slf4j
@Api(tags = {"换新车-车型管理"})
@RestController
@RequestMapping("/comChangeCarModel")
public class ComChangeCarModelApi extends BaseController {
    @Resource
    private ComChangeCarModelFeign comChangeCarModelService;
    @Resource
    private ComChangeCarModelSpecsFeign carModelSpecsService;
    @Resource
    private ComChangeCarModelRelationFeign carModelRelationService;
    /**
     * description  queryByPage  分页查询
     *
     * @param comChangeCarModelRelation 请求参数
     * @return 分页查询返回参数
     * @author lyq
     * @date 2022-04-07 13:41:54
     */
    @ApiOperation(value = "分页查询车型管理列表",response = ComChangeCarModelVo.class)
    @PostMapping("/page")
    public R queryByPage(@RequestBody PageComChangeCarModelRelationDto comChangeCarModelRelation) {
        return this.carModelRelationService.queryByAppletsPage(comChangeCarModelRelation);
    }
    /**
     * description  detailById  查询详情
     *
     * @param id 主键id
     * @return 详情数据
     * @author lyq
     * @date 2022-04-07 13:41:54
     */
    @ApiOperation(value = "查询车型管理详情",response = ComChangeCarModelVo.class)
    @GetMapping("/detail")
    public R detailById(@RequestParam("id") Long id) {
        return this.comChangeCarModelService.detailById(id);
    }
    /**
     * description  queryByPage  查询列表
     *
     * @param comChangeCarModel 请求参数
     * @return 列表数据
     * @author lyq
     * @date 2022-04-07 13:41:54
     */
    @ApiOperation(value = "查询车型管理列表",response = ComChangeCarModelVo.class)
    @PostMapping("/list")
    public R queryByList(@RequestBody PageComChangeCarModelDto comChangeCarModel) {
        return this.comChangeCarModelService.queryByList(comChangeCarModel);
    }
    @ApiOperation(value = "查询规格管理级联列表",response = ComChangeCarModelSpecsVo.class)
    @PostMapping("/specs/list")
    public R getSpecsList(@RequestBody PageComChangeCarModelSpecsDto comChangeCarModel) {
        return this.carModelSpecsService.queryByList(comChangeCarModel);
    }
}
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/ComChangeCarModelSpecsChildrenApi.java
New file
@@ -0,0 +1,51 @@
package com.panzhihua.applets.api;
import com.panzhihua.common.controller.BaseController;
import com.panzhihua.common.model.dtos.common.AddComChangeCarModelSpecsChildrenDto;
import com.panzhihua.common.model.dtos.common.EditComChangeCarModelSpecsChildrenDto;
import com.panzhihua.common.model.dtos.common.PageComChangeCarModelSpecsChildrenDto;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.common.ComChangeCarModelSpecsChildrenVo;
import com.panzhihua.common.service.community.ComChangeCarModelSpecsChildrenFeign;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
/**
 * title: 换新车-车型子规格表(ComChangeCarModelSpecsChildren)  表控制层
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 换新车-车型子规格表
 *
 * @author lyq
 * @date 2022-04-07 13:55:33
 */
@Slf4j
@Api(tags = {"换新车-车型规格下子规格管理"})
@RestController
@RequestMapping("/comChangeCarModelSpecsChildren")
public class ComChangeCarModelSpecsChildrenApi extends BaseController {
    @Resource
    private ComChangeCarModelSpecsChildrenFeign comChangeCarModelSpecsChildrenService;
    /**
     * description  queryByPage  查询列表
     *
     * @param comChangeCarModelSpecsChildren 请求参数
     * @return 列表数据
     * @author lyq
     * @date 2022-04-07 13:55:33
     */
    @ApiOperation(value = "查询车型规格下子规格管理列表",response = ComChangeCarModelSpecsChildrenVo.class)
    @PostMapping("/list")
    public R queryByList(@RequestBody PageComChangeCarModelSpecsChildrenDto comChangeCarModelSpecsChildren) {
        return this.comChangeCarModelSpecsChildrenService.queryByList(comChangeCarModelSpecsChildren);
    }
}
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/ComPropertyRepairApi.java
@@ -1,6 +1,7 @@
package com.panzhihua.applets.api;
import cn.hutool.core.date.DateUtil;
import com.panzhihua.applets.model.dtos.IDTO;
import com.panzhihua.common.controller.BaseController;
import com.panzhihua.common.model.dtos.property.CommonPage;
import com.panzhihua.common.model.vos.R;
@@ -77,6 +78,18 @@
     * @return 单条数据
     */
    @ApiOperation("详情接口")
    @PostMapping("/detail")
    public R selectDetail(@RequestBody IDTO idto) {
        return this.propertyService.comPropertyRepairSelectOne(idto.getId());
    }
    /**
     * 通过主键查询单条数据
     *
     * @param id 主键
     * @return 单条数据
     */
    @ApiOperation("详情接口")
    @GetMapping("/{id}")
    public R selectOne(@PathVariable("id") Long id) {
        return this.propertyService.comPropertyRepairSelectOne(id);
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/ComSanShuoApi.java
New file
@@ -0,0 +1,66 @@
package com.panzhihua.applets.api;
import com.panzhihua.common.controller.BaseController;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.sanshuo.*;
import com.panzhihua.common.service.community.CommunityService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
@Slf4j
@RestController
@RequestMapping("sanshuo")
@Api(tags = "三说会堂小程序接口")
public class ComSanShuoApi extends BaseController {
    @Resource
    private CommunityService communityService;
    @ApiOperation(value = "小程序获取可选择行业分中心列表",response = ComSanShuoIndustryCenterVO.class )
    @GetMapping("/industryCenter/appletsList")
    public R industryCenterAppList(){
        return communityService.industryCenterAppList();
    }
    @ApiOperation(value = "小程序获取可选择行专家列表",response = ComSanshuoExpertVO.class )
    @GetMapping("/expert/appletsList")
    public R expertAppList(@RequestParam (value = "type",required = false)Integer type,@RequestParam(value = "id",required = false)Long id){
        return communityService.expertAppList(type,id);
    }
    @ApiOperation(value = "专家风采",response = ExpertShowVO.class)
    @GetMapping("/expert/expertShow")
    public R expertShow(){
        return communityService.expertShow();
    }
    @ApiOperation("专家详情")
    @GetMapping("/expert/{id}")
    public R expertDetail(@PathVariable("id")Long id){
        return communityService.expertDetail(id);
    }
    @ApiOperation(value = "事件类型列表",response = ComMediaTypeVO.class)
    @GetMapping("/mediateType/list")
    public R mediateTypeList(){
        return communityService.eventAppList();
    }
    @ApiOperation(value = "业务中心详情",response = ComSanShuoIndustryCenterVO.class)
    @GetMapping("/industryCenter/detail")
    public R industryCenterDetail(@RequestParam("id") Long id){
        return communityService.industryCenterDetail(id);
    }
    @GetMapping("/expert/expertShowList")
    @ApiOperation(value = "专家风采列表",response = ComSanshuoExpertVO.class)
    public R expertShowList(@RequestParam(value = "level",required = false) @ApiParam("对应的level,1三说会堂2行业分中心3街道4社区")Integer level,
                            @RequestParam(value = "id",required = false) @ApiParam("id,level=1不传2行业分中心id 3街道id 4社区id")Long id){
        return communityService.expertShowList(level,id);
    }
}
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/ComSanShuoEventController.java
New file
@@ -0,0 +1,175 @@
package com.panzhihua.applets.api;
import com.panzhihua.common.controller.BaseController;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.sanshuo.*;
import com.panzhihua.common.service.community.CommunitySanShuoService;
import com.panzhihua.common.utlis.CopyUtil;
import com.panzhihua.common.utlis.StringUtils;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.*;
import springfox.documentation.annotations.ApiIgnore;
import javax.annotation.Resource;
import javax.validation.Valid;
import java.util.HashMap;
/**
 * ClassName   ComEventController
 * Description 三说会堂事件表控制层
 *
 * @author manailin
 * @date 2022-09-07 11:23:51
 */
@Slf4j
@Api(tags = {"三说会堂事件表控制层"})
@RestController
@RequestMapping("/sanshuo/comEvent")
public class ComSanShuoEventController extends BaseController {
    @Resource
    private CommunitySanShuoService comEventService;
    /**
     * description 新增三说会堂事件表
     *
     * @param comSanRequestVO 对象
     * @return R  新增结果对象
     * @author manailin
     * @date 2022-09-07 11:23:51
     */
    @ApiOperation("新增三说会堂事件表")
    @PostMapping("/add")
    public R insertComEvent(@RequestBody @Valid ComSanRequestVO comSanRequestVO, @ApiIgnore BindingResult results) {
        if (results.hasErrors()) {
            return R.fail(results.getFieldError().getDefaultMessage());
        }
        return comEventService.insertComEvent(comSanRequestVO);
    }
    /**
     * description 根据ID获取三说会堂事件表信息
     *
     * @param id 主键id
     * @return R<ComEvent> comEvent 对象
     * @author manailin
     * @date 2022-09-07 11:23:51
     */
    @ApiOperation("根据ID获取三说会堂事件详情信息,返回事件信息和图片信息")
    @GetMapping("/detail/{id}")
    public R<HashMap> detail(@PathVariable(value = "id") String id) {
        if (StringUtils.isEmpty(id)) {
            throw new RuntimeException("参数不能为空");
        }
        return comEventService.detail(id);
    }
    /**
     * description page   三说会堂事件表分页列表数据
     *
     * @param comEventPageRequestVO 对象
     * @return PageResult<List < ComEvent>>  三说会堂事件表分页列表数据
     * @author manailin
     * @date 2022-09-07 11:23:51
     */
    @ApiOperation(value = "三说会堂事件表分页列表数据", notes = "三说会堂事件表分页列表数据")
    @PostMapping("/page")
    public R page(@RequestBody ComEventPageRequestVO comEventPageRequestVO) {
        ComEventVO comEventVO = CopyUtil.copyProperties(comEventPageRequestVO, ComEventVO.class);
        comEventPageRequestVO.setCreateBy(getUserId());
        return comEventService.page(comEventVO, comEventVO.getPageNo(), comEventVO.getPageSize());
    }
    /**
     * description 修改三说会堂事件表状态
     *
     * @param id 主键id
     * @return Result  修改成功和失败
     * @author manailin
     * @date 2022-09-07 11:23:51
     */
    @ApiOperation("取消申请")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "id", value = "id", required = true, dataType = "Long"),
    })
    @PutMapping("/cancelRequest")
    public R cancelRequest(@RequestParam("id") Long id) {
        return comEventService.cancelRequest(id);
    }
    /**
     * description 修改三说会堂事件表状态
     *
     * @param id 主键id
     * @return Result  修改成功和失败
     * @author manailin
     * @date 2022-09-07 11:23:51
     */
    @ApiOperation("专家受理")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "id", value = "事件ID", required = true, dataType = "Long"),
            @ApiImplicitParam(name = "specterId", value = "专家ID", required = true, dataType = "Long"),
    })
    @PutMapping("/accept/Request")
    public R acceptRequest( Long id,  Long specterId) {
        return comEventService.acceptRequest(id, specterId);
    }
    /**
     * description 修改三说会堂事件表状态
     *
     * @param id 主键id
     * @return Result  修改成功和失败
     * @author manailin
     * @date 2022-09-07 11:23:51
     */
    @ApiOperation("专家不受理,转其他专家处理")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "id", value = "id", required = true, dataType = "Long"),
    })
    @PutMapping("/reject/Request")
    public R rejectRequest(@RequestParam("id") Long id) {
        return comEventService.rejectRequest(id);
    }
    /**
     * description 专家调解处理
     *
     * @param comEventConciliationVO 主键id
     * @return Result  修改成功和失败
     * @author manailin
     * @date 2022-09-07 11:23:51
     */
    @ApiOperation("专家调解处理")
    @PutMapping("/conciliation/Request")
    public R conciliationRequest(@RequestBody ComEventConciliationVO comEventConciliationVO) {
        return comEventService.conciliationRequest(comEventConciliationVO);
    }
    /**
     * description 专家归档
     *
     * @param comEventArchiveVO 归档对象
     * @return Result  修改成功和失败
     * @author manailin
     * @date 2022-09-07 11:23:51
     */
    @ApiOperation("事件专家归档")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "id", value = "id", required = true, dataType = "Long"),
            @ApiImplicitParam(name = "result", value = "归档结论", required = true, dataType = "String"),
    })
    @PutMapping("/archive/Request")
    public R archiveRequest(@RequestBody ComEventArchiveVO comEventArchiveVO) {
        return comEventService.archiveRequest(comEventArchiveVO);
    }
}
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/IndexApi.java
@@ -281,8 +281,8 @@
    @ApiOperation(value = "首页广告banner", response = ComOpsAdvVO.class)
    @GetMapping("listadvertisement/noToken")
    public R listAdvertisement() {
        return communityService.listAdvertisement();
    public R listAdvertisement(@RequestParam(value = "type",required = false,defaultValue = "1") Integer type) {
        return communityService.listAdvertisement(type);
    }
    @ApiOperation(value = "分页通知列表", response = SysUserNoticeVO.class)
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/LoginApi.java
@@ -2,6 +2,8 @@
import javax.annotation.Resource;
import com.panzhihua.common.constants.Constants;
import com.panzhihua.common.utlis.RSAUtils;
import org.springframework.util.ObjectUtils;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping;
@@ -345,6 +347,12 @@
    @ApiOperation("天府通办登录")
    @PostMapping("tfLogin")
    public R tfLogin(@RequestBody UuLoginVO uuLoginVO){
        try {
            uuLoginVO.setMobile(RSAUtils.decrypt(uuLoginVO.getMobile(), Constants.PRIVATE_KEY));
        } catch (Exception e) {
            e.printStackTrace();
            return R.fail();
        }
        userService.tfLogin(uuLoginVO);
        R r=tokenService.tfLogin(uuLoginVO.getMobile(),"Huacheng@123","wx118de8a734d269f0");
        return r;
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/WxCallbackApi.java
@@ -19,6 +19,7 @@
import com.umf.api.service.UmfService;
import com.umf.api.service.UmfServiceImpl;
import io.swagger.annotations.ApiOperation;
import com.panzhihua.common.service.community.ComBatteryCommodityOrderFeign;
import org.json.XML;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.*;
@@ -43,6 +44,8 @@
@RequestMapping("/wx/")
public class WxCallbackApi {
    private static final String  SUCCESS="SUCCESS";
    @Resource
    private CommunityService communityService;
    @Resource
@@ -51,6 +54,9 @@
    private String file;
    @Resource
    private UserService userService;
    @Resource
    private ComBatteryCommodityOrderFeign commodityOrderFeign;
    @PostMapping("wxNotify")
    public void payCallback(HttpServletRequest request, HttpServletResponse response) {
@@ -202,6 +208,142 @@
    }
    /**
     * 电动车商城商品购买支付回调
     * @param request   请求参数
     * @param response  返回参数
     */
    @PostMapping("/batteryPayNotify")
    public void batteryPayNotify(HttpServletRequest request, HttpServletResponse response) {
        log.info("钱包充值微信支付回调start");
        String inputLine = "";
        String notityXml = "";
        try {
            while ((inputLine = request.getReader().readLine()) != null) {
                notityXml += inputLine;
            }
            // 关闭流
            request.getReader().close();
            log.info("钱包充值微信回调内容信息:" + notityXml);
            // 解析成Json
            org.json.JSONObject xmlJson = XML.toJSONObject(notityXml);
            if (StringUtils.isNotEmpty(xmlJson.toString())) {
                JSONObject resultData = JSON.parseObject(xmlJson.get("xml").toString());
                // 成功支付订单
                if (SUCCESS.equals(resultData.getString("result_code")) && SUCCESS.equals(resultData.getString("result_code"))){
                    WxPayNotifyOrderDTO notifyOrderDTO = getWxNotify(resultData);
                    // 根据订单号修改订单信息
                    commodityOrderFeign.batteryPayNotify(notifyOrderDTO);
                    // 给微信服务器返回 成功标示 否则会一直询问 咱们服务器 是否回调成功
                    PrintWriter writer = response.getWriter();
                    // 返回
                    writer.print(getWxSuccessString());
                } else {// 未成功支付订单
                    // 给微信服务器返回 成功标示 否则会一直询问 咱们服务器 是否回调成功
                    PrintWriter writer = response.getWriter();
                    // 返回
                    writer.print(getWxFailString());
                }
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    @PostMapping("/batteryActivityPayNotify")
    public void batteryActivityPayNotify(HttpServletRequest request, HttpServletResponse response) {
        log.info("购买活动商品微信支付回调start");
        String inputLine = "";
        String notityXml = "";
        try {
            while ((inputLine = request.getReader().readLine()) != null) {
                notityXml += inputLine;
            }
            // 关闭流
            request.getReader().close();
            log.info("购买活动商品微信回调内容信息:" + notityXml);
            // 解析成Json
            org.json.JSONObject xmlJson = XML.toJSONObject(notityXml);
            if (StringUtils.isNotEmpty(xmlJson.toString())) {
                JSONObject resultData = JSON.parseObject(xmlJson.get("xml").toString());
                // 成功支付订单
                if (SUCCESS.equals(resultData.getString("result_code")) && SUCCESS.equals(resultData.getString("result_code"))){
                    WxPayNotifyOrderDTO notifyOrderDTO = getWxNotify(resultData);
                    // 根据订单号修改订单信息
                    commodityOrderFeign.batteryActivityPayNotify(notifyOrderDTO);
                    // 给微信服务器返回 成功标示 否则会一直询问 咱们服务器 是否回调成功
                    PrintWriter writer = response.getWriter();
                    // 返回
                    writer.print(getWxSuccessString());
                } else {// 未成功支付订单
                    // 给微信服务器返回 成功标示 否则会一直询问 咱们服务器 是否回调成功
                    PrintWriter writer = response.getWriter();
                    // 返回
                    writer.print(getWxFailString());
                }
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    /**
     * 将微信支付回调的请求参数转义为对象
     * @param resultData    微信支付回调请求参数
     * @return  转义为支付请求参数
     */
    private WxPayNotifyOrderDTO getWxNotify(JSONObject resultData){
        WxPayNotifyOrderDTO notifyOrderDTO = new WxPayNotifyOrderDTO();
        notifyOrderDTO.setResult(resultData.toJSONString());
        // 订单号
        String orderTradeNo = resultData.getString("out_trade_no");
        notifyOrderDTO.setOrderTradeNo(orderTradeNo);
        // 微信支付订单号
        String wxTradeNo = resultData.getString("transaction_id");
        notifyOrderDTO.setWxTradeNo(wxTradeNo);
        // 订单金额
        String totalFee = resultData.getString("total_fee");
        notifyOrderDTO.setTotalFee(totalFee);
        // 支付完成时间
        String payTime = resultData.getString("time_end");
        notifyOrderDTO.setPayTime(payTime);
        // 现金支付金额
        String cashFee = resultData.getString("cash_fee");
        notifyOrderDTO.setCashFee(cashFee);
        //附加数据
        String attach = resultData.getString("attach");
        notifyOrderDTO.setAttach(attach);
        return notifyOrderDTO;
    }
    /**
     * 封装微信成功返回值
     * @return  成功返回值
     */
    private String getWxSuccessString(){
        StringBuffer buffer = new StringBuffer();
        buffer.append("<xml>");
        buffer.append("<return_code>SUCCESS</return_code>");
        buffer.append("<return_msg>OK</return_msg>");
        buffer.append("</xml>");
        return buffer.toString();
    }
    /**
     * 封装微信失败返回值
     * @return  失败返回值
     */
    private String getWxFailString(){
        StringBuffer buffer = new StringBuffer();
        buffer.append("<xml>");
        buffer.append("<return_code>FAIL</return_code>");
        buffer.append("<return_msg>FAIL</return_msg>");
        buffer.append("</xml>");
        return buffer.toString();
    }
    @GetMapping("/settle")
    public R settle(String settleDate){
        return R.ok(umfPayUtil.settle(settleDate));
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/config/JacksonConfig.java
New file
@@ -0,0 +1,31 @@
package com.panzhihua.applets.config;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.module.SimpleModule;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Primary;
import org.springframework.http.converter.json.Jackson2ObjectMapperBuilder;
@Configuration
public class JacksonConfig {
    @Bean
    @Primary
    @ConditionalOnMissingBean(ObjectMapper.class)
    public ObjectMapper jacksonObjectMapper(Jackson2ObjectMapperBuilder builder)
    {
        ObjectMapper objectMapper = builder.createXmlMapper(false).build();
        // 全局配置序列化返回 JSON 处理
        SimpleModule simpleModule = new SimpleModule();
        //JSON Long ==> String
        simpleModule.addSerializer(Long.class, ToStringSerializer.instance);
        objectMapper.registerModule(simpleModule);
        return objectMapper;
    }
}
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/model/dtos/IDTO.java
New file
@@ -0,0 +1,8 @@
package com.panzhihua.applets.model.dtos;
import lombok.Data;
@Data
public class IDTO {
    private Long id;
}
springcloud_k8s_panzhihuazhihuishequ/applets_backstage/src/main/java/com/panzhihua/applets_backstage/api/ComBatteryCommodityActivityApi.java
New file
@@ -0,0 +1,106 @@
package com.panzhihua.applets_backstage.api;
import com.panzhihua.common.controller.BaseController;
import com.panzhihua.common.model.dtos.common.AddComBatteryCommodityActivityDto;
import com.panzhihua.common.model.dtos.common.EditComBatteryCommodityActivityDto;
import com.panzhihua.common.model.dtos.common.PageComBatteryCommodityActivityDto;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.common.ComBatteryCommodityActivityVo;
import com.panzhihua.common.service.community.ComBatteryCommodityActivityFeign;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.Date;
/**
 * title: 电动车商城-商家活动表(ComBatteryCommodityActivity)  表控制层
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 电动车商城-商家活动表
 *
 * @author lyq
 * @date 2022-03-29 13:17:38
 */
@Slf4j
@Api(tags = {"电动车商城-活动管理"})
@RestController
@RequestMapping("/comBatteryCommodityActivity")
public class ComBatteryCommodityActivityApi extends BaseController {
    @Resource
    private ComBatteryCommodityActivityFeign comBatteryCommodityActivityService;
    /**
     * description  queryByPage  分页查询
     *
     * @param comBatteryCommodityActivity 请求参数
     * @return 分页查询返回参数
     * @author lyq
     * @date 2022-03-29 13:17:38
     */
    @ApiOperation(value = "分页查询活动列表",response = ComBatteryCommodityActivityVo.class)
    @PostMapping("/page")
    public R queryByPage(@RequestBody PageComBatteryCommodityActivityDto comBatteryCommodityActivity) {
        return this.comBatteryCommodityActivityService.queryByPage(comBatteryCommodityActivity);
    }
    /**
     * description  deleteById  删除数据
     *
     * @param id 主键id
     * @return 删除结果
     * @author lyq
     * @date 2022-03-29 13:17:38
     */
    @ApiOperation(value = "删除活动")
    @GetMapping("/delete")
    public R deleteById(@RequestParam("id") Long id) {
        return this.comBatteryCommodityActivityService.deleteById(id);
    }
    /**
     * description  detailById  查询详情
     *
     * @param id 主键id
     * @return 详情数据
     * @author lyq
     * @date 2022-03-29 13:17:38
     */
    @ApiOperation(value = "查询活动详情",response = ComBatteryCommodityActivityVo.class)
    @GetMapping("/detail")
    public R detailById(@RequestParam("id") Long id) {
        return this.comBatteryCommodityActivityService.detailById(id,0L);
    }
    /**
     * description  queryByPage  查询列表
     *
     * @param comBatteryCommodityActivity 请求参数
     * @return 列表数据
     * @author lyq
     * @date 2022-03-29 13:17:38
     */
    @ApiOperation(value = "查询活动列表",response = ComBatteryCommodityActivityVo.class)
    @PostMapping("/list")
    public R queryByList(@RequestBody PageComBatteryCommodityActivityDto comBatteryCommodityActivity) {
        return this.comBatteryCommodityActivityService.queryByList(comBatteryCommodityActivity);
    }
    /**
     * 修改活动状态
     * @param id    活动id
     * @param status    状态
     * @return  修改结果
     */
    @ApiOperation(value = "修改活动状态")
    @GetMapping("/updateStatus")
    public R updateStatus(@RequestParam("id") Long id,@RequestParam("status") Integer status) {
        return this.comBatteryCommodityActivityService.updateStatus(id,status);
    }
}
springcloud_k8s_panzhihuazhihuishequ/applets_backstage/src/main/java/com/panzhihua/applets_backstage/api/ComBatteryCommodityApi.java
New file
@@ -0,0 +1,105 @@
package com.panzhihua.applets_backstage.api;
import com.panzhihua.common.controller.BaseController;
import com.panzhihua.common.model.dtos.common.AddComBatteryCommodityDto;
import com.panzhihua.common.model.dtos.common.EditComBatteryCommodityDto;
import com.panzhihua.common.model.dtos.common.PageComBatteryCommodityDto;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.common.ComBatteryCommodityVo;
import com.panzhihua.common.service.community.ComBatteryCommodityFeign;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.Date;
/**
 * title: 电动车商城-商品表(ComBatteryCommodity)  表控制层
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 电动车商城-商品表
 *
 * @author lyq
 * @date 2022-03-28 14:59:58
 */
@Slf4j
@Api(tags = {"电动车商城-商品管理"})
@RestController
@RequestMapping("/comBatteryCommodity")
public class ComBatteryCommodityApi extends BaseController {
    @Resource
    private ComBatteryCommodityFeign comBatteryCommodityService;
    /**
     * description  queryByPage  分页查询
     *
     * @param comBatteryCommodity 请求参数
     * @return 分页查询返回参数
     * @author lyq
     * @date 2022-03-28 14:59:58
     */
    @ApiOperation(value = "分页查询商品列表",response = ComBatteryCommodityVo.class)
    @PostMapping("/page")
    public R queryByPage(@RequestBody PageComBatteryCommodityDto comBatteryCommodity) {
        return this.comBatteryCommodityService.queryByPage(comBatteryCommodity);
    }
    /**
     * description  deleteById  删除数据
     *
     * @param id 主键id
     * @return 删除结果
     * @author lyq
     * @date 2022-03-28 14:59:58
     */
    @ApiOperation(value = "删除商品")
    @GetMapping("/delete")
    public R deleteById(@RequestParam("id") Long id) {
        return this.comBatteryCommodityService.deleteById(id);
    }
    /**
     * description  detailById  查询详情
     *
     * @param id 主键id
     * @return 详情数据
     * @author lyq
     * @date 2022-03-28 14:59:58
     */
    @ApiOperation(value = "查询商品详情",response = ComBatteryCommodityVo.class)
    @GetMapping("/detail")
    public R detailById(@RequestParam("id") Long id) {
        return this.comBatteryCommodityService.detailById(id);
    }
    /**
     * description  queryByPage  查询列表
     *
     * @param comBatteryCommodity 请求参数
     * @return 列表数据
     * @author lyq
     * @date 2022-03-28 14:59:58
     */
    @ApiOperation(value = "查询商品列表",response = ComBatteryCommodityVo.class)
    @PostMapping("/list")
    public R queryByList(@RequestBody PageComBatteryCommodityDto comBatteryCommodity) {
        return this.comBatteryCommodityService.queryByList(comBatteryCommodity);
    }
    /**
     * 修改商品状态
     * @param id    商品id
     * @param status    商品状态
     * @return  修改结果
     */
    @ApiOperation(value = "修改商品状态")
    @GetMapping("/updateStatus")
    public R updateStatus(@RequestParam("id") Long id,@RequestParam("status") Integer status) {
        return this.comBatteryCommodityService.updateStatus(id,status);
    }
}
springcloud_k8s_panzhihuazhihuishequ/applets_backstage/src/main/java/com/panzhihua/applets_backstage/api/ComBatteryCommodityOrderApi.java
New file
@@ -0,0 +1,86 @@
package com.panzhihua.applets_backstage.api;
import com.panzhihua.common.controller.BaseController;
import com.panzhihua.common.model.dtos.common.EditOrderAddressDto;
import com.panzhihua.common.model.dtos.common.PageComBatteryCommodityOrderDto;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.common.ComBatteryCommodityOrderVo;
import com.panzhihua.common.service.community.ComBatteryCommodityOrderFeign;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
/**
 * title: 电动车商城-订单表(ComBatteryCommodityOrder)  表控制层
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 电动车商城-订单表
 *
 * @author lyq
 * @date 2022-03-29 16:05:04
 */
@Slf4j
@Api(tags = {"电动车商城-订单管理"})
@RestController
@RequestMapping("/comBatteryCommodityOrder")
public class ComBatteryCommodityOrderApi extends BaseController {
    @Resource
    private ComBatteryCommodityOrderFeign comBatteryCommodityOrderService;
    /**
     * description  queryByPage  分页查询
     *
     * @param comBatteryCommodityOrder 请求参数
     * @return 分页查询返回参数
     * @author lyq
     * @date 2022-03-29 16:05:04
     */
    @ApiOperation(value = "分页查询订单列表",response = ComBatteryCommodityOrderVo.class)
    @PostMapping("/page")
    public R queryByPage(@RequestBody PageComBatteryCommodityOrderDto comBatteryCommodityOrder) {
        comBatteryCommodityOrder.setIsAdmin(1);
        return this.comBatteryCommodityOrderService.queryByPage(comBatteryCommodityOrder);
    }
    /**
     * description  detailById  查询详情
     *
     * @param id 主键id
     * @return 详情数据
     * @author lyq
     * @date 2022-03-29 16:05:04
     */
    @ApiOperation(value = "查询订单详情",response = ComBatteryCommodityOrderVo.class)
    @GetMapping("/detail")
    public R detailById(@RequestParam("id") Long id) {
        return this.comBatteryCommodityOrderService.detailById(id);
    }
    /**
     * description  queryByPage  查询列表
     *
     * @param comBatteryCommodityOrder 请求参数
     * @return 列表数据
     * @author lyq
     * @date 2022-03-29 16:05:04
     */
    @ApiOperation(value = "查询订单列表",response = ComBatteryCommodityOrderVo.class)
    @PostMapping("/list")
    public R queryByList(@RequestBody PageComBatteryCommodityOrderDto comBatteryCommodityOrder) {
        return this.comBatteryCommodityOrderService.queryByList(comBatteryCommodityOrder);
    }
    @ApiOperation(value = "修改订单收货地址")
    @PutMapping("/update/address")
    public R updateOrderAddress(@RequestBody EditOrderAddressDto editOrderAddressDto) {
        return this.comBatteryCommodityOrderService.updateOrderAddress(editOrderAddressDto);
    }
}
springcloud_k8s_panzhihuazhihuishequ/applets_backstage/src/main/java/com/panzhihua/applets_backstage/api/ComBatteryStoreApi.java
New file
@@ -0,0 +1,137 @@
package com.panzhihua.applets_backstage.api;
import com.panzhihua.common.controller.BaseController;
import com.panzhihua.common.model.dtos.common.AddComBatteryStoreDto;
import com.panzhihua.common.model.dtos.common.EditComBatteryStoreDto;
import com.panzhihua.common.model.dtos.common.PageComBatteryStoreDto;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.common.ComBatteryStoreVo;
import com.panzhihua.common.service.community.ComBatteryStoreFeign;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.Date;
/**
 * title: 电动车商城-商家表(ComBatteryStore)  表控制层
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 电动车商城-商家表
 *
 * @author lyq
 * @date 2022-03-28 13:44:43
 */
@Slf4j
@Api(tags = {"电动车商城-商家管理"})
@RestController
@RequestMapping("/comBatteryStore")
public class ComBatteryStoreApi extends BaseController {
    @Resource
    private ComBatteryStoreFeign comBatteryStoreService;
    /**
     * description  queryByPage  分页查询
     *
     * @param comBatteryStore 请求参数
     * @return 分页查询返回参数
     * @author lyq
     * @date 2022-03-28 13:44:43
     */
    @ApiOperation(value = "分页查询商家列表",response = ComBatteryStoreVo.class)
    @PostMapping("/page")
    public R queryByPage(@RequestBody PageComBatteryStoreDto comBatteryStore) {
        return this.comBatteryStoreService.queryByPage(comBatteryStore);
    }
    /**
     * description  add  新增数据
     *
     * @param comBatteryStore 请求参数
     * @return 新增结果
     * @author lyq
     * @date 2022-03-28 13:44:43
     */
    @ApiOperation(value = "新增商家")
    @PostMapping("/add")
    public R add(@RequestBody AddComBatteryStoreDto comBatteryStore) {
        comBatteryStore.setCreateAt(new Date());
        comBatteryStore.setCreateBy(this.getUserId());
        return this.comBatteryStoreService.insert(comBatteryStore);
    }
    /**
     * description  edit  编辑数据
     *
     * @param comBatteryStore 请求参数
     * @return 编辑结果
     * @author lyq
     * @date 2022-03-28 13:44:43
     */
    @ApiOperation(value = "修改商家")
    @PutMapping("/edit")
    public R edit(@RequestBody EditComBatteryStoreDto comBatteryStore) {
        comBatteryStore.setUpdateAt(new Date());
        comBatteryStore.setUpdateBy(this.getUserId());
        return this.comBatteryStoreService.update(comBatteryStore);
    }
    /**
     * description  deleteById  删除数据
     *
     * @param id 主键id
     * @return 删除结果
     * @author lyq
     * @date 2022-03-28 13:44:43
     */
    @ApiOperation(value = "删除商家")
    @GetMapping("/delete")
    public R deleteById(@RequestParam("id") Long id) {
        return this.comBatteryStoreService.deleteById(id);
    }
    /**
     * description  detailById  查询详情
     *
     * @param id 主键id
     * @return 详情数据
     * @author lyq
     * @date 2022-03-28 13:44:43
     */
    @ApiOperation(value = "查询商家详情",response = ComBatteryStoreVo.class)
    @GetMapping("/detail")
    public R detailById(@RequestParam("id") Long id) {
        return this.comBatteryStoreService.detailById(id);
    }
    /**
     * description  queryByPage  查询列表
     *
     * @param comBatteryStore 请求参数
     * @return 列表数据
     * @author lyq
     * @date 2022-03-28 13:44:43
     */
    @ApiOperation(value = "查询商家列表",response = ComBatteryStoreVo.class)
    @PostMapping("/list")
    public R queryByList(@RequestBody PageComBatteryStoreDto comBatteryStore) {
        return this.comBatteryStoreService.queryByList(comBatteryStore);
    }
    /**
     * 修改电动车商家后台用户密码
     * @param storeId  商家后台用户id
     * @param passWord  用户需要修改的密码
     * @return  重置密码结果
     */
    @ApiOperation(value = "修改商家密码")
    @GetMapping("/resetPassword")
    public R resetPassword(@RequestParam("storeId") Long storeId,@RequestParam("passWord") String passWord) {
        return this.comBatteryStoreService.resetPassword(storeId,passWord);
    }
}
springcloud_k8s_panzhihuazhihuishequ/applets_backstage/src/main/java/com/panzhihua/applets_backstage/api/ComChangeCarBrandApi.java
New file
@@ -0,0 +1,129 @@
package com.panzhihua.applets_backstage.api;
import com.panzhihua.common.controller.BaseController;
import com.panzhihua.common.model.dtos.common.AddComChangeCarBrandDto;
import com.panzhihua.common.model.dtos.common.EditComChangeCarBrandDto;
import com.panzhihua.common.model.dtos.common.PageComChangeCarBrandDto;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.common.ComChangeCarBrandVo;
import com.panzhihua.common.service.community.ComChangeCarBrandFeign;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.Date;
/**
 * title: 换新车-品牌表(ComChangeCarBrand)  表控制层
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 换新车-品牌表
 *
 * @author lyq
 * @date 2022-04-07 13:37:22
 */
@Slf4j
@Api(tags = {"换新车-品牌管理"})
@RestController
@RequestMapping("/comChangeCarBrand")
public class ComChangeCarBrandApi extends BaseController {
    @Resource
    private ComChangeCarBrandFeign comChangeCarBrandService;
    /**
     * description  queryByPage  分页查询
     *
     * @param comChangeCarBrand 请求参数
     * @return 分页查询返回参数
     * @author lyq
     * @date 2022-04-07 13:37:22
     */
    @ApiOperation(value = "分页查询品牌列表",response = ComChangeCarBrandVo.class)
    @PostMapping("/page")
    public R queryByPage(@RequestBody PageComChangeCarBrandDto comChangeCarBrand) {
        return this.comChangeCarBrandService.queryByPage(comChangeCarBrand);
    }
    /**
     * description  add  新增数据
     *
     * @param comChangeCarBrand 请求参数
     * @return 新增结果
     * @author lyq
     * @date 2022-04-07 13:37:22
     */
    @ApiOperation(value = "新增品牌")
    @PostMapping("/add")
    public R add(@RequestBody AddComChangeCarBrandDto comChangeCarBrand) {
        Date nowDate = new Date();
        comChangeCarBrand.setCreateAt(nowDate);
        comChangeCarBrand.setCreateBy(this.getUserId());
        comChangeCarBrand.setUpdateAt(nowDate);
        comChangeCarBrand.setUpdateBy(this.getUserId());
        return this.comChangeCarBrandService.insert(comChangeCarBrand);
    }
    /**
     * description  edit  编辑数据
     *
     * @param comChangeCarBrand 请求参数
     * @return 编辑结果
     * @author lyq
     * @date 2022-04-07 13:37:22
     */
    @ApiOperation(value = "编辑品牌")
    @PutMapping("/edit")
    public R edit(@RequestBody EditComChangeCarBrandDto comChangeCarBrand) {
        comChangeCarBrand.setUpdateAt(new Date());
        comChangeCarBrand.setUpdateBy(this.getUserId());
        return this.comChangeCarBrandService.update(comChangeCarBrand);
    }
    /**
     * description  deleteById  删除数据
     *
     * @param id 主键id
     * @return 删除结果
     * @author lyq
     * @date 2022-04-07 13:37:22
     */
    @ApiOperation(value = "删除品牌")
    @GetMapping("/delete")
    public R deleteById(@RequestParam("id") Long id) {
        return this.comChangeCarBrandService.deleteById(id);
    }
    /**
     * description  detailById  查询详情
     *
     * @param id 主键id
     * @return 详情数据
     * @author lyq
     * @date 2022-04-07 13:37:22
     */
    @ApiOperation(value = "查询品牌详情",response = ComChangeCarBrandVo.class)
    @GetMapping("/detail")
    public R detailById(@RequestParam("id") Long id) {
        return this.comChangeCarBrandService.detailById(id);
    }
    /**
     * description  queryByPage  查询列表
     *
     * @param comChangeCarBrand 请求参数
     * @return 列表数据
     * @author lyq
     * @date 2022-04-07 13:37:22
     */
    @ApiOperation(value = "查询品牌列表",response = ComChangeCarBrandVo.class)
    @PostMapping("/list")
    public R queryByList(@RequestBody PageComChangeCarBrandDto comChangeCarBrand) {
        return this.comChangeCarBrandService.queryByList(comChangeCarBrand);
    }
}
springcloud_k8s_panzhihuazhihuishequ/applets_backstage/src/main/java/com/panzhihua/applets_backstage/api/ComChangeCarInquiryApi.java
New file
@@ -0,0 +1,80 @@
package com.panzhihua.applets_backstage.api;
import com.panzhihua.common.controller.BaseController;
import com.panzhihua.common.model.dtos.common.AddComChangeCarInquiryDto;
import com.panzhihua.common.model.dtos.common.EditComChangeCarInquiryDto;
import com.panzhihua.common.model.dtos.common.PageComChangeCarInquiryDto;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.common.ComChangeCarInquiryVo;
import com.panzhihua.common.service.community.ComChangeCarInquiryFeign;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.Date;
/**
 * title: 换新车-分期询价表(ComChangeCarInquiry)  表控制层
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 换新车-分期询价表
 *
 * @author lyq
 * @date 2022-04-07 13:39:06
 */
@Slf4j
@Api(tags = {"换新车-分期询价管理"})
@RestController
@RequestMapping("/comChangeCarInquiry")
public class ComChangeCarInquiryApi extends BaseController {
    @Resource
    private ComChangeCarInquiryFeign comChangeCarInquiryService;
    /**
     * description  queryByPage  分页查询
     *
     * @param comChangeCarInquiry 请求参数
     * @return 分页查询返回参数
     * @author lyq
     * @date 2022-04-07 13:39:06
     */
    @ApiOperation(value = "分页查询分期询价列表",response = ComChangeCarInquiryVo.class)
    @PostMapping("/page")
    public R queryByPage(@RequestBody PageComChangeCarInquiryDto comChangeCarInquiry) {
        return this.comChangeCarInquiryService.queryByPage(comChangeCarInquiry);
    }
    /**
     * description  detailById  查询详情
     *
     * @param id 主键id
     * @return 详情数据
     * @author lyq
     * @date 2022-04-07 13:39:06
     */
    @ApiOperation(value = "查询分期询价详情",response = ComChangeCarInquiryVo.class)
    @GetMapping("/detail")
    public R detailById(@RequestParam("id") Long id) {
        return this.comChangeCarInquiryService.detailById(id);
    }
    /**
     * description  queryByPage  查询列表
     *
     * @param comChangeCarInquiry 请求参数
     * @return 列表数据
     * @author lyq
     * @date 2022-04-07 13:39:06
     */
    @ApiOperation(value = "查询分期询价列表",response = ComChangeCarInquiryVo.class)
    @PostMapping("/list")
    public R queryByList(@RequestBody PageComChangeCarInquiryDto comChangeCarInquiry) {
        return this.comChangeCarInquiryService.queryByList(comChangeCarInquiry);
    }
}
springcloud_k8s_panzhihuazhihuishequ/applets_backstage/src/main/java/com/panzhihua/applets_backstage/api/ComChangeCarModelApi.java
New file
@@ -0,0 +1,141 @@
package com.panzhihua.applets_backstage.api;
import com.panzhihua.common.controller.BaseController;
import com.panzhihua.common.model.dtos.common.AddComChangeCarModelDto;
import com.panzhihua.common.model.dtos.common.EditComChangeCarModelDto;
import com.panzhihua.common.model.dtos.common.PageComChangeCarModelDto;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.common.ComChangeCarModelVo;
import com.panzhihua.common.service.community.ComChangeCarModelFeign;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.Date;
/**
 * title: 换新车-车型管理表(ComChangeCarModel)  表控制层
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 换新车-车型管理表
 *
 * @author lyq
 * @date 2022-04-07 13:41:54
 */
@Slf4j
@Api(tags = {"换新车-车型管理"})
@RestController
@RequestMapping("/comChangeCarModel")
public class ComChangeCarModelApi extends BaseController {
    @Resource
    private ComChangeCarModelFeign comChangeCarModelService;
    /**
     * description  queryByPage  分页查询
     *
     * @param comChangeCarModel 请求参数
     * @return 分页查询返回参数
     * @author lyq
     * @date 2022-04-07 13:41:54
     */
    @ApiOperation(value = "分页查询车型管理列表",response = ComChangeCarModelVo.class)
    @PostMapping("/page")
    public R queryByPage(@RequestBody PageComChangeCarModelDto comChangeCarModel) {
        return this.comChangeCarModelService.queryByPage(comChangeCarModel);
    }
    /**
     * description  add  新增数据
     *
     * @param comChangeCarModel 请求参数
     * @return 新增结果
     * @author lyq
     * @date 2022-04-07 13:41:54
     */
    @ApiOperation(value = "新增车型管理")
    @PostMapping("/add")
    public R add(@RequestBody AddComChangeCarModelDto comChangeCarModel) {
        Date nowDate = new Date();
        comChangeCarModel.setCreateAt(nowDate);
        comChangeCarModel.setCreateBy(this.getUserId());
        comChangeCarModel.setUpdateAt(nowDate);
        comChangeCarModel.setUpdateBy(this.getUserId());
        return this.comChangeCarModelService.insert(comChangeCarModel);
    }
    /**
     * description  edit  编辑数据
     *
     * @param comChangeCarModel 请求参数
     * @return 编辑结果
     * @author lyq
     * @date 2022-04-07 13:41:54
     */
    @ApiOperation(value = "修改车型管理")
    @PutMapping("/edit")
    public R edit(@RequestBody EditComChangeCarModelDto comChangeCarModel) {
        comChangeCarModel.setUpdateAt(new Date());
        comChangeCarModel.setUpdateBy(this.getUserId());
        return this.comChangeCarModelService.update(comChangeCarModel);
    }
    /**
     * description  deleteById  删除数据
     *
     * @param id 主键id
     * @return 删除结果
     * @author lyq
     * @date 2022-04-07 13:41:54
     */
    @ApiOperation(value = "删除车型管理")
    @GetMapping("/delete")
    public R deleteById(@RequestParam("id") Long id) {
        return this.comChangeCarModelService.deleteById(id);
    }
    /**
     * description  detailById  查询详情
     *
     * @param id 主键id
     * @return 详情数据
     * @author lyq
     * @date 2022-04-07 13:41:54
     */
    @ApiOperation(value = "查询车型管理详情",response = ComChangeCarModelVo.class)
    @GetMapping("/detail")
    public R detailById(@RequestParam("id") Long id) {
        return this.comChangeCarModelService.detailById(id);
    }
    /**
     * description  queryByPage  查询列表
     *
     * @param comChangeCarModel 请求参数
     * @return 列表数据
     * @author lyq
     * @date 2022-04-07 13:41:54
     */
    @ApiOperation(value = "查询车型管理列表",response = ComChangeCarModelVo.class)
    @PostMapping("/list")
    public R queryByList(@RequestBody PageComChangeCarModelDto comChangeCarModel) {
        return this.comChangeCarModelService.queryByList(comChangeCarModel);
    }
    /**
     * 修改车型状态
     * @param id    车型id
     * @param status    车型状态
     * @return  修改结果
     */
    @ApiOperation(value = "修改车型管理状态")
    @GetMapping("/updateStatus")
    public R updateStatus(@RequestParam("id") Long id,@RequestParam("status") Integer status) {
        return this.comChangeCarModelService.updateStatus(id,status);
    }
}
springcloud_k8s_panzhihuazhihuishequ/applets_backstage/src/main/java/com/panzhihua/applets_backstage/api/ComChangeCarModelRelationApi.java
New file
@@ -0,0 +1,121 @@
package com.panzhihua.applets_backstage.api;
import com.panzhihua.common.controller.BaseController;
import com.panzhihua.common.model.dtos.common.AddComChangeCarModelRelationDto;
import com.panzhihua.common.model.dtos.common.EditComChangeCarModelRelationDto;
import com.panzhihua.common.model.dtos.common.PageComChangeCarModelRelationDto;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.common.ComChangeCarModelRelationVo;
import com.panzhihua.common.service.community.ComChangeCarModelRelationFeign;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
/**
 * title: 换新车-车型与规格关联表(ComChangeCarModelRelation)  表控制层
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 换新车-车型与规格关联表
 *
 * @author lyq
 * @date 2022-04-07 13:55:29
 */
@Slf4j
@Api(tags = {"换新车-车型与规格关联管理"})
@RestController
@RequestMapping("/comChangeCarModelRelation")
public class ComChangeCarModelRelationApi extends BaseController {
    @Resource
    private ComChangeCarModelRelationFeign comChangeCarModelRelationService;
    /**
     * description  queryByPage  分页查询
     *
     * @param comChangeCarModelRelation 请求参数
     * @return 分页查询返回参数
     * @author lyq
     * @date 2022-04-07 13:55:29
     */
    @ApiOperation(value = "分页查询车型与规格关联管理列表",response = ComChangeCarModelRelationVo.class)
    @PostMapping("/page")
    public R queryByPage(@RequestBody PageComChangeCarModelRelationDto comChangeCarModelRelation) {
        return this.comChangeCarModelRelationService.queryByPage(comChangeCarModelRelation);
    }
    /**
     * description  add  新增数据
     *
     * @param comChangeCarModelRelation 请求参数
     * @return 新增结果
     * @author lyq
     * @date 2022-04-07 13:55:29
     */
    @ApiOperation(value = "新增车型与规格关联")
    @PostMapping("/add")
    public R add(@RequestBody AddComChangeCarModelRelationDto comChangeCarModelRelation) {
        return this.comChangeCarModelRelationService.insert(comChangeCarModelRelation);
    }
    /**
     * description  edit  编辑数据
     *
     * @param comChangeCarModelRelation 请求参数
     * @return 编辑结果
     * @author lyq
     * @date 2022-04-07 13:55:29
     */
    @ApiOperation(value = "编辑车型与规格关联")
    @PutMapping("/edit")
    public R edit(@RequestBody EditComChangeCarModelRelationDto comChangeCarModelRelation) {
        return this.comChangeCarModelRelationService.update(comChangeCarModelRelation);
    }
    /**
     * description  deleteById  删除数据
     *
     * @param id 主键id
     * @return 删除结果
     * @author lyq
     * @date 2022-04-07 13:55:29
     */
    @ApiOperation(value = "删除车型与规格关联")
    @GetMapping("/delete")
    public R deleteById(@RequestParam("id") Long id) {
        return this.comChangeCarModelRelationService.deleteById(id);
    }
    /**
     * description  detailById  查询详情
     *
     * @param id 主键id
     * @return 详情数据
     * @author lyq
     * @date 2022-04-07 13:55:29
     */
    @ApiOperation(value = "查询车型与规格关联详情",response = ComChangeCarModelRelationVo.class)
    @GetMapping("/detail")
    public R detailById(@RequestParam("id") Long id) {
        return this.comChangeCarModelRelationService.detailById(id);
    }
    /**
     * description  queryByPage  查询列表
     *
     * @param comChangeCarModelRelation 请求参数
     * @return 列表数据
     * @author lyq
     * @date 2022-04-07 13:55:29
     */
    @ApiOperation(value = "查询车型与规格关联管理列表",response = ComChangeCarModelRelationVo.class)
    @PostMapping("/list")
    public R queryByList(@RequestBody PageComChangeCarModelRelationDto comChangeCarModelRelation) {
        return this.comChangeCarModelRelationService.queryByList(comChangeCarModelRelation);
    }
}
springcloud_k8s_panzhihuazhihuishequ/applets_backstage/src/main/java/com/panzhihua/applets_backstage/api/ComChangeCarModelSpecsApi.java
New file
@@ -0,0 +1,129 @@
package com.panzhihua.applets_backstage.api;
import com.panzhihua.common.controller.BaseController;
import com.panzhihua.common.model.dtos.common.AddComChangeCarModelSpecsDto;
import com.panzhihua.common.model.dtos.common.EditComChangeCarModelSpecsDto;
import com.panzhihua.common.model.dtos.common.PageComChangeCarModelSpecsDto;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.common.ComChangeCarModelSpecsVo;
import com.panzhihua.common.service.community.ComChangeCarModelSpecsFeign;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.Date;
/**
 * title: 换新车-车型规格表(ComChangeCarModelSpecs)  表控制层
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 换新车-车型规格表
 *
 * @author lyq
 * @date 2022-04-07 13:55:31
 */
@Slf4j
@Api(tags = {"换新车-车型规格管理"})
@RestController
@RequestMapping("/comChangeCarModelSpecs")
public class ComChangeCarModelSpecsApi extends BaseController {
    @Resource
    private ComChangeCarModelSpecsFeign comChangeCarModelSpecsService;
    /**
     * description  queryByPage  分页查询
     *
     * @param comChangeCarModelSpecs 请求参数
     * @return 分页查询返回参数
     * @author lyq
     * @date 2022-04-07 13:55:31
     */
    @ApiOperation(value = "分页查询车型规格管理列表",response = ComChangeCarModelSpecsVo.class)
    @PostMapping("/page")
    public R queryByPage(@RequestBody PageComChangeCarModelSpecsDto comChangeCarModelSpecs) {
        return this.comChangeCarModelSpecsService.queryByPage(comChangeCarModelSpecs);
    }
    /**
     * description  add  新增数据
     *
     * @param comChangeCarModelSpecs 请求参数
     * @return 新增结果
     * @author lyq
     * @date 2022-04-07 13:55:31
     */
    @ApiOperation(value = "新增车型规格")
    @PostMapping("/add")
    public R add(@RequestBody AddComChangeCarModelSpecsDto comChangeCarModelSpecs) {
        Date nowDate = new Date();
        comChangeCarModelSpecs.setCreateAt(nowDate);
        comChangeCarModelSpecs.setCreateBy(this.getUserId());
        comChangeCarModelSpecs.setUpdateAt(nowDate);
        comChangeCarModelSpecs.setUpdateBy(this.getUserId());
        return this.comChangeCarModelSpecsService.insert(comChangeCarModelSpecs);
    }
    /**
     * description  edit  编辑数据
     *
     * @param comChangeCarModelSpecs 请求参数
     * @return 编辑结果
     * @author lyq
     * @date 2022-04-07 13:55:31
     */
    @ApiOperation(value = "编辑车型规格")
    @PutMapping("/edit")
    public R edit(@RequestBody EditComChangeCarModelSpecsDto comChangeCarModelSpecs) {
        comChangeCarModelSpecs.setUpdateAt(new Date());
        comChangeCarModelSpecs.setUpdateBy(this.getUserId());
        return this.comChangeCarModelSpecsService.update(comChangeCarModelSpecs);
    }
    /**
     * description  deleteById  删除数据
     *
     * @param id 主键id
     * @return 删除结果
     * @author lyq
     * @date 2022-04-07 13:55:31
     */
    @ApiOperation(value = "删除车型规格")
    @GetMapping("/delete")
    public R deleteById(@RequestParam("id") Long id) {
        return this.comChangeCarModelSpecsService.deleteById(id);
    }
    /**
     * description  detailById  查询详情
     *
     * @param id 主键id
     * @return 详情数据
     * @author lyq
     * @date 2022-04-07 13:55:31
     */
    @ApiOperation(value = "查询车型规格管理详情",response = ComChangeCarModelSpecsVo.class)
    @GetMapping("/detail")
    public R detailById(@RequestParam("id") Long id) {
        return this.comChangeCarModelSpecsService.detailById(id);
    }
    /**
     * description  queryByPage  查询列表
     *
     * @param comChangeCarModelSpecs 请求参数
     * @return 列表数据
     * @author lyq
     * @date 2022-04-07 13:55:31
     */
    @ApiOperation(value = "查询车型规格管理列表",response = ComChangeCarModelSpecsVo.class)
    @PostMapping("/list")
    public R queryByList(@RequestBody PageComChangeCarModelSpecsDto comChangeCarModelSpecs) {
        return this.comChangeCarModelSpecsService.queryByList(comChangeCarModelSpecs);
    }
}
springcloud_k8s_panzhihuazhihuishequ/applets_backstage/src/main/java/com/panzhihua/applets_backstage/api/ComChangeCarModelSpecsChildrenApi.java
New file
@@ -0,0 +1,121 @@
package com.panzhihua.applets_backstage.api;
import com.panzhihua.common.controller.BaseController;
import com.panzhihua.common.model.dtos.common.AddComChangeCarModelSpecsChildrenDto;
import com.panzhihua.common.model.dtos.common.EditComChangeCarModelSpecsChildrenDto;
import com.panzhihua.common.model.dtos.common.PageComChangeCarModelSpecsChildrenDto;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.common.ComChangeCarModelSpecsChildrenVo;
import com.panzhihua.common.service.community.ComChangeCarModelSpecsChildrenFeign;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
/**
 * title: 换新车-车型子规格表(ComChangeCarModelSpecsChildren)  表控制层
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 换新车-车型子规格表
 *
 * @author lyq
 * @date 2022-04-07 13:55:33
 */
@Slf4j
@Api(tags = {"换新车-车型规格下子规格管理"})
@RestController
@RequestMapping("/comChangeCarModelSpecsChildren")
public class ComChangeCarModelSpecsChildrenApi extends BaseController {
    @Resource
    private ComChangeCarModelSpecsChildrenFeign comChangeCarModelSpecsChildrenService;
    /**
     * description  queryByPage  分页查询
     *
     * @param comChangeCarModelSpecsChildren 请求参数
     * @return 分页查询返回参数
     * @author lyq
     * @date 2022-04-07 13:55:33
     */
    @ApiOperation(value = "分页查询车型规格下子规格管理列表",response = ComChangeCarModelSpecsChildrenVo.class)
    @PostMapping("/page")
    public R queryByPage(@RequestBody PageComChangeCarModelSpecsChildrenDto comChangeCarModelSpecsChildren) {
        return this.comChangeCarModelSpecsChildrenService.queryByPage(comChangeCarModelSpecsChildren);
    }
    /**
     * description  add  新增数据
     *
     * @param comChangeCarModelSpecsChildren 请求参数
     * @return 新增结果
     * @author lyq
     * @date 2022-04-07 13:55:33
     */
    @ApiOperation(value = "新增车型规格下子规格",response = ComChangeCarModelSpecsChildrenVo.class)
    @PostMapping("/add")
    public R add(@RequestBody AddComChangeCarModelSpecsChildrenDto comChangeCarModelSpecsChildren) {
        return this.comChangeCarModelSpecsChildrenService.insert(comChangeCarModelSpecsChildren);
    }
    /**
     * description  edit  编辑数据
     *
     * @param comChangeCarModelSpecsChildren 请求参数
     * @return 编辑结果
     * @author lyq
     * @date 2022-04-07 13:55:33
     */
    @ApiOperation(value = "编辑车型规格下子规格",response = ComChangeCarModelSpecsChildrenVo.class)
    @PutMapping("/edit")
    public R edit(@RequestBody EditComChangeCarModelSpecsChildrenDto comChangeCarModelSpecsChildren) {
        return this.comChangeCarModelSpecsChildrenService.update(comChangeCarModelSpecsChildren);
    }
    /**
     * description  deleteById  删除数据
     *
     * @param id 主键id
     * @return 删除结果
     * @author lyq
     * @date 2022-04-07 13:55:33
     */
    @ApiOperation(value = "删除车型规格下子规格",response = ComChangeCarModelSpecsChildrenVo.class)
    @GetMapping("/delete")
    public R deleteById(@RequestParam("id") Long id) {
        return this.comChangeCarModelSpecsChildrenService.deleteById(id);
    }
    /**
     * description  detailById  查询详情
     *
     * @param id 主键id
     * @return 详情数据
     * @author lyq
     * @date 2022-04-07 13:55:33
     */
    @ApiOperation(value = "查询车型规格下子规格详情",response = ComChangeCarModelSpecsChildrenVo.class)
    @GetMapping("/detail")
    public R detailById(@RequestParam("id") Long id) {
        return this.comChangeCarModelSpecsChildrenService.detailById(id);
    }
    /**
     * description  queryByPage  查询列表
     *
     * @param comChangeCarModelSpecsChildren 请求参数
     * @return 列表数据
     * @author lyq
     * @date 2022-04-07 13:55:33
     */
    @ApiOperation(value = "查询车型规格下子规格管理列表",response = ComChangeCarModelSpecsChildrenVo.class)
    @PostMapping("/list")
    public R queryByList(@RequestBody PageComChangeCarModelSpecsChildrenDto comChangeCarModelSpecsChildren) {
        return this.comChangeCarModelSpecsChildrenService.queryByList(comChangeCarModelSpecsChildren);
    }
}
springcloud_k8s_panzhihuazhihuishequ/applets_backstage/src/main/java/com/panzhihua/applets_backstage/api/CommunityApi.java
@@ -107,4 +107,17 @@
        return communityService.detailCommunity(id);
    }
    @ApiOperation("删除社区")
    @DeleteMapping("/remove/{id}")
    public R removeCommunity(@PathVariable("id")Long id){
        return communityService.removeCommunity(id);
    }
    @ApiOperation("重置密码")
    @PostMapping("/repass")
    public R repass(@RequestBody ComActVO comActVO){
        return communityService.repassCommunity(comActVO);
    }
}
springcloud_k8s_panzhihuazhihuishequ/applets_backstage/src/main/java/com/panzhihua/applets_backstage/api/StreetApi.java
@@ -5,10 +5,7 @@
import javax.annotation.Resource;
import com.alibaba.fastjson.JSONObject;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import com.panzhihua.common.controller.BaseController;
import com.panzhihua.common.model.dtos.community.PageComStreetDTO;
@@ -61,4 +58,22 @@
        return communityService.delectStreat(Ids);
    }
    @ApiOperation("修改街道")
    @PostMapping("/update")
    public R update(@RequestBody ComStreetVO comStreetVO){
        return communityService.updateStreet(comStreetVO);
    }
    @DeleteMapping("/remove/{id}")
    @ApiOperation("删除街道")
    public R remove(@PathVariable("id") Long id){
        return communityService.removeStreet(id);
    }
    @ApiOperation("重置密码")
    @PostMapping("repass")
    public R repass(@RequestBody ComStreetVO comStreetVO){
        return communityService.repassStreet(comStreetVO);
    }
}
springcloud_k8s_panzhihuazhihuishequ/auth/src/main/java/com/panzhihua/auth/api/LoginApi.java
@@ -271,4 +271,19 @@
        LoginReturnVO loginReturnVO=loginService.tfLogin(account,password,appid);
        return R.ok(loginReturnVO);
    }
    /**
     * 电动车商城后台用户登录
     *
     * @param account
     *            账户
     * @param password
     *            密码
     * @return 登录结果
     */
    @PostMapping("/loginBatteryUser")
    public R loginBatteryUser(@RequestParam("account") String account, @RequestParam("password") String password,@RequestParam("appid")String appid) {
        LoginReturnVO loginReturnVO = loginService.loginBatteryUser(account, password,appid);
        return R.ok(loginReturnVO);
    }
}
springcloud_k8s_panzhihuazhihuishequ/auth/src/main/java/com/panzhihua/auth/handel/UserAuthenticationProvider.java
@@ -13,7 +13,9 @@
import javax.crypto.NoSuchPaddingException;
import com.panzhihua.auth.config.MyAESUtil;
import com.panzhihua.common.constants.Constants;
import com.panzhihua.common.model.helper.AESUtil;
import com.panzhihua.common.service.community.CommunityService;
import com.panzhihua.common.utlis.AES;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.redis.core.RedisTemplate;
@@ -34,6 +36,8 @@
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.service.user.UserService;
import static java.util.Objects.nonNull;
/**
 * @program: springcloud_k8s_panzhihuazhihuishequ
 * @description: 登录认证
@@ -46,6 +50,8 @@
    private UserService userService;
    @Resource
    private RedisTemplate redisTemplate;
    @Resource
    private CommunityService communityService;
    private static String LOGIN_FAIL="LOGIN_FAIL_";
@@ -97,6 +103,13 @@
            }
            // 维护最后登录时间
            userService.putUserLastLoginTime(loginUserInfoVO.getUserId());
            //是否为专家登陆
            if (nonNull(loginUserInfoVO.getPhone())){
                R r1 = communityService.isExpert(loginUserInfoVO.getPhone());
                if (r1.getCode()== Constants.SUCCESS){
                    loginUserInfoVO.setType(13);
                }
            }
            return new UsernamePasswordAuthenticationToken(loginUserInfoVO, password, grantedAuthorityList);
        }
        else {
@@ -126,6 +139,13 @@
            }
            // 维护最后登录时间
            userService.putUserLastLoginTime(loginUserInfoVO.getUserId());
            //是否为专家登陆
            if (nonNull(loginUserInfoVO.getPhone())){
                R r1 = communityService.isExpert(loginUserInfoVO.getPhone());
                if (r1.getCode()== Constants.SUCCESS){
                    loginUserInfoVO.setType(13);
                }
            }
            return new UsernamePasswordAuthenticationToken(loginUserInfoVO, password, grantedAuthorityList);
        }
springcloud_k8s_panzhihuazhihuishequ/auth/src/main/java/com/panzhihua/auth/service/LoginService.java
@@ -2,6 +2,7 @@
import com.panzhihua.common.model.vos.LoginReturnVO;
import com.panzhihua.common.model.vos.LoginReturnsVO;
import org.springframework.web.bind.annotation.RequestParam;
/**
 * @program: springcloud_k8s_panzhihuazhihuishequ
@@ -145,4 +146,15 @@
     * @return 登录结果
     */
    LoginReturnVO tfLogin(String account, String password,String appid);
    /**
     * 电动车商城后台用户登录
     *
     * @param account
     *            账户
     * @param password
     *            密码
     * @return 登录结果
     */
    LoginReturnVO loginBatteryUser(String account, String password,String appid);
}
springcloud_k8s_panzhihuazhihuishequ/auth/src/main/java/com/panzhihua/auth/service/impl/LoginServiceImpl.java
@@ -29,6 +29,7 @@
import org.springframework.web.context.request.RequestAttributes;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
import org.springframework.web.bind.annotation.RequestParam;
import static java.util.Objects.nonNull;
@@ -337,4 +338,25 @@
        loginReturnVO.setRefreshToken(refeshToken);
        return loginReturnVO;
    }
    /**
     * 电动车商城后台用户登录
     *
     * @param account
     *            账户
     * @param password
     *            密码
     * @return 登录结果
     */
    @Override
    public LoginReturnVO loginBatteryUser(String account, String password,String appid) {
        Authentication authentication = authenticationManager.authenticate(new UsernamePasswordAuthenticationToken(account + "_20"+"_"+appid, password));
        LoginUserInfoVO loginUser = (LoginUserInfoVO)authentication.getPrincipal();
        String token = JWTTokenUtil.generateToken(loginUser);
        String refeshToken = JWTTokenUtil.generateRefeshToken(loginUser);
        LoginReturnVO loginReturnVO = new LoginReturnVO();
        loginReturnVO.setToken(token);
        loginReturnVO.setRefreshToken(refeshToken);
        return loginReturnVO;
    }
}
springcloud_k8s_panzhihuazhihuishequ/common/pom.xml
@@ -196,6 +196,12 @@
            <artifactId>javase</artifactId>
            <version>3.1.0</version>
        </dependency>
        <dependency>
            <groupId>org.jsoup</groupId>
            <artifactId>jsoup</artifactId>
            <version>1.13.1</version>
            <scope>compile</scope>
        </dependency>
    </dependencies>
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/constants/Constants.java
@@ -238,11 +238,11 @@
    /**
     * 党建包名
     */
    public static final String SERVICE_PARTYBUILDING = "partybuilding";
    public static final String SERVICE_PARTYBUILDING = "huacheng-partybuilding";
    /**
     * service_community包
     */
    public static final String SERVICE_COMMUNITY = "community";
    public static final String SERVICE_COMMUNITY = "huacheng-community";
    /**
     * 操作类型
@@ -252,4 +252,13 @@
    public static final String QUERY="query";
    public static final String DELETE="delete";
    public static final String VILLAGE="村";
    /**
     * 超管街道id
     * */
    public static  final Integer ADMIN_STREET_ID=999999999;
    /**
     * 天府通办解密私钥
     * */
    public static final String PRIVATE_KEY="MIICeAIBADANBgkqhkiG9w0BAQEFAASCAmIwggJeAgEAAoGBAJJuFUH/4m9H5hCCzxtd9BxpjWlG9gbejqiJpV0XJKaU1V7xDBJasswxPY7Zc15RoxWClPoKPwKrbWKm49dgBJebJq5xd4sLCSbboxRkKxpRiJHMZ4LJjYa5h9Ei9RyfoUzqGHqH4UrDy3m3IwPiP19cIBqoU50shyQf92ZpcGZhAgMBAAECgYEAiadU8pODoUs82x6tZbPALQmJN4PO+wwznfqv6sA74yGdKECAMazz0oMjtGt1SiCCqFD2jcweCftvvELZg3mvNg1V0vRQRD1ZCA8HDp8DXm20d11K3+RX39tR4KgyyM3HsSEhkUDujMxKIpYjyiB5iEtV7Ja9bZ2fROszq+mUIqUCQQDQQf6vWRMLBqfnDcU77vuDGOhXbjkF2ytLxLW3fbKaW3GWvC3n93zPM+mcvWSXgkl448+jFjpMktm1Vn+w+YX3AkEAs/+bbRbod6AcVbLu8C5E44qDRoRpu+LF7Cphp8tlSAIRjm2yGP5acMWGRUtH9MF2QJYPF0PgDzdmUSVqWnCAZwJBALnSuRri4wAKn1SmT+ALfLZcSiyBODZGeppv2ijw6qWahH8YR+ncRaxoyMFHqPMbmM1akJIXqktbGREaLnPOIb8CQQCdJycJaL3Qa98xR4dr9cm5rF6PO96g5w6M8jfO6ztjUkMHymh7f99wpFRlvaN2Y06edyV315ARWPohEPy5N44zAkBlLuDHLm1TkTTAfdlL5r2OcdjpaJYloTdn05Mp3+J+w1zTX8k6Mz8lFZtLUcoMeTfQ9rm/+u2KwxS8NljtSZWH";
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/constants/PayCpmstant.java
@@ -7,14 +7,33 @@
 */
public class PayCpmstant {
    // 微信支付统一下单url地址
    /**
     * 微信支付统一下单url地址
     */
    public static final String UNIFIEDORDER_URL = "https://api.mch.weixin.qq.com/pay/unifiedorder";
    // 微信支付默认编码格式
    /**
     * 微信支付默认编码格式
     */
    public static final String DEFAULT_ENCODING = "UTF-8";
    // 微信支付返回支付成功CODE
    /**
     * 微信支付返回支付成功CODE
     */
    public static final String RETURN_CODE = "SUCCESS";
    // 微信支付返回支付成功MSG
    /**
     * 微信支付返回支付成功MSG
     */
    public static final String RETURN_MSG = "OK";
    // 微信支付默认加密格式
    /**
     * 微信支付默认加密格式
     */
    public static final String SIGN_TYPE = "MD5";
    /**
     * 电动车商城购买商品支付回调地址
     */
    public static final String BATTERY_STORE_PAY_NOTIFY_URL = "/api/huacheng-applets/wx/batteryPayNotify";
    /**
     * 电动车商城活动订单支付回调地址
     */
    public static final String BATTERY_STORE_ACTIVITY_PAY_NOTIFY_URL = "/api/huacheng-applets/wx/batteryActivityPayNotify";
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/constants/ReturnMsgConstants.java
New file
@@ -0,0 +1,37 @@
package com.panzhihua.common.constants;
/**
 * 字典表key
 *
 * @author xyh
 * @date 2021/6/11 15:53
 */
public class ReturnMsgConstants {
    /**
     * 数据已经存在
     */
    public static final String DATA_EXIST = "数据已经存在!";
    /**
     * 数据不存在
     */
    public static final String DATA_NOT_EXIST = "数据不存在!";
    /**
     * 保存成功
     */
    public static final String SAVE_SUCCESS = "保存成功";
    /**
     * 保存失败
     */
    public static final String SAVE_FALSE = "保存失败";
    /**
     * 更新成功
     */
    public static final String UPDATE_SUCCESS = "更新成功";
    /**
     * 更新失败
     */
    public static final String UPDATE_FALSE = "更新失败";
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/constants/UserConstants.java
@@ -16,4 +16,6 @@
    public static final String NEWS_ID = "news_media_id:";
    public static final String NEWS_LIST = "news_list:";
    public static final String SANSHUO_INDUSTRY_CENTER_ROLE="103";
    public static final String SANSHUO_EXPERT_ROLE="102";
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/enums/SanShuoEventStatusEnum.java
New file
@@ -0,0 +1,40 @@
package com.panzhihua.common.enums;
import lombok.Getter;
/**
 * 事件状态
 *
 * @author 1待处理2待验证3专家已受理4专家未受理,拒绝5调解中6已结案归档7调解取消8 已删除
 */
@Getter
public enum SanShuoEventStatusEnum {
    UNDO(1, "待处理"), VALID(2, "待验证"), ACCEPT(3, "专家已受理"), REJECT(4, "专家未受理,拒绝5"), conciliation(5, "调解中"), OVER(6, "已结案归档"), CANCEL(7, "调解取消"), DELETE(8, "已删除");
    private final Integer code;
    private final String name;
    SanShuoEventStatusEnum(Integer code, String name) {
        this.code = code;
        this.name = name;
    }
    public static int getCodeByName(String name) {
        for (SanShuoEventStatusEnum item : SanShuoEventStatusEnum.values()) {
            if (item.name.equals(name)) {
                return item.getCode();
            }
        }
        return UNDO.getCode();
    }
    public static String getCnDescByName(Integer code) {
        for (SanShuoEventStatusEnum item : SanShuoEventStatusEnum.values()) {
            if (item.code.equals(code)) {
                return item.getName();
            }
        }
        return "未知";
    }
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddComBatteryCommodityActivityDto.java
New file
@@ -0,0 +1,141 @@
package com.panzhihua.common.model.dtos.common;
import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
 * title: 新增电动车商城-商家活动表请求参数
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 新增电动车商城-商家活动表请求参数
 *
 * @author lyq
 * @date 2022-03-29 13:17:41
 */
@Data
@ApiModel("新增电动车商城-商家活动表请求参数")
public class AddComBatteryCommodityActivityDto {
    /**
     * 活动名称
     */
    @ApiModelProperty(value = "活动名称")
    private String name;
    /**
     * 活动类型(1.拼团活动 2.砍价活动 3.限时秒杀)
     */
    @ApiModelProperty(value = "活动类型(1.拼团活动 2.砍价活动 3.限时秒杀)")
    private Integer type;
    /**
     * 商品id
     */
    @ApiModelProperty(value = "商品id")
    private Long commodityId;
    /**
     * 商家id
     */
    @ApiModelProperty(value = "商家id")
    private Long storeId;
    /**
     * 状态(1.进行中 2.已下架 3.已结束)
     */
    @ApiModelProperty(value = "状态(1.进行中 2.已下架 3.已结束)")
    private Integer status;
    /**
     * 是否删除(1.是 2.否)
     */
    @ApiModelProperty(value = "是否删除(1.是 2.否)")
    private Integer isDel;
    /**
     * 活动价格
     */
    @ApiModelProperty(value = "活动价格")
    private BigDecimal price;
    /**
     * 活动截止时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "活动截止时间")
    private Date endTime;
    /**
     * 拼团总团数
     */
    @ApiModelProperty(value = "拼团总团数")
    private Integer collageNum;
    /**
     * 拼团人数
     */
    @ApiModelProperty(value = "拼团人数")
    private Integer collagePeopleNum;
    /**
     * 活动图片
     */
    @ApiModelProperty(value = "活动图片")
    private String images;
    /**
     * 活动商品总数
     */
    @ApiModelProperty(value = "活动商品总数")
    private Integer commodityNum;
    /**
     * 活动规则
     */
    @ApiModelProperty(value = "活动规则")
    private String rule;
    /**
     * 创建时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "创建时间")
    private Date createAt;
    /**
     * 创建人id
     */
    @ApiModelProperty(value = "创建人id")
    private Long createBy;
    /**
     * 更新时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "更新时间")
    private Date updateAt;
    /**
     * 更新人id
     */
    @ApiModelProperty(value = "更新人id")
    private Long updateBy;
    /**
     * 商品规格id
     */
    @ApiModelProperty(value = "商品规格id")
    private Long specsId;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddComBatteryCommodityDto.java
New file
@@ -0,0 +1,123 @@
package com.panzhihua.common.model.dtos.common;
import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
 * title: 新增电动车商城-商品表请求参数
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 新增电动车商城-商品表请求参数
 *
 * @author lyq
 * @date 2022-03-28 14:59:59
 */
@Data
@ApiModel("新增电动车商城-商品表请求参数")
public class AddComBatteryCommodityDto {
    /**
     * 商品名称
     */
    @ApiModelProperty(value = "商品名称")
    private String name;
    /**
     * 商品编号
     */
    @ApiModelProperty(value = "商品编号")
    private String code;
    /**
     * 商品价格
     */
    @ApiModelProperty(value = "商品价格")
    private BigDecimal price;
    /**
     * 商家id
     */
    @ApiModelProperty(value = "商家id")
    private Long storeId;
    /**
     * 状态(1.上架 2.下架)
     */
    @ApiModelProperty(value = "状态(1.上架 2.下架)")
    private Integer status;
    /**
     * 商品分类id
     */
    @ApiModelProperty(value = "商品分类id")
    private Long classId;
    /**
     * 商品简介
     */
    @ApiModelProperty(value = "商品简介")
    private String introduce;
    /**
     * 邮费
     */
    @ApiModelProperty(value = "邮费")
    private BigDecimal postage;
    /**
     * 商品图片
     */
    @ApiModelProperty(value = "商品图片")
    private String images;
    /**
     * 商品详情
     */
    @ApiModelProperty(value = "商品详情")
    private String detail;
    /**
     * 是否删除(1.是  2.否)
     */
    @ApiModelProperty(value = "是否删除(1.是  2.否)")
    private Integer isDel;
    /**
     * 创建时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "创建时间")
    private Date createAt;
    /**
     * 创建人id
     */
    @ApiModelProperty(value = "创建人id")
    private Long createBy;
    /**
     * 更新时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "更新时间")
    private Date updateAt;
    /**
     * 更新人id
     */
    @ApiModelProperty(value = "更新人id")
    private Long updateBy;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddComBatteryCommodityOrderBargainDto.java
New file
@@ -0,0 +1,97 @@
package com.panzhihua.common.model.dtos.common;
import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
 * title: 新增电动车商城-砍价订单记录表请求参数
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 新增电动车商城-砍价订单记录表请求参数
 *
 * @author lyq
 * @date 2022-03-29 16:06:36
 */
@Data
@ApiModel("新增电动车商城-砍价订单记录表请求参数")
public class AddComBatteryCommodityOrderBargainDto {
    /**
     * 用户id
     */
    @ApiModelProperty(value = "用户id")
    private Long userId;
    /**
     * 商品id
     */
    @ApiModelProperty(value = "商品id")
    private Long commodityId;
    /**
     * 活动id
     */
    @ApiModelProperty(value = "活动id")
    private Long activityId;
    /**
     * 订单id
     */
    @ApiModelProperty(value = "订单id")
    private Long orderId;
    /**
     * 订单号
     */
    @ApiModelProperty(value = "订单号")
    private String orderNo;
    /**
     * 商品原价
     */
    @ApiModelProperty(value = "商品原价")
    private BigDecimal originalPrice;
    /**
     * 目标价格
     */
    @ApiModelProperty(value = "目标价格")
    private BigDecimal targetPrice;
    /**
     * 当前价格
     */
    @ApiModelProperty(value = "当前价格")
    private BigDecimal currentPrice;
    /**
     * 当前已砍价次数
     */
    @ApiModelProperty(value = "当前已砍价次数")
    private Integer count;
    /**
     * 创建时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "创建时间")
    private Date createAt;
    /**
     * 创建人id
     */
    @ApiModelProperty(value = "创建人id")
    private Long createBy;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddComBatteryCommodityOrderBargainRecordDto.java
New file
@@ -0,0 +1,67 @@
package com.panzhihua.common.model.dtos.common;
import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
 * title: 新增电动车商城-订单砍价记录表请求参数
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 新增电动车商城-订单砍价记录表请求参数
 *
 * @author lyq
 * @date 2022-03-29 16:06:48
 */
@Data
@ApiModel("新增电动车商城-订单砍价记录表请求参数")
public class AddComBatteryCommodityOrderBargainRecordDto {
    /**
     * 砍价记录id
     */
    @ApiModelProperty(value = "砍价记录id")
    private Long bargainId;
    /**
     * 用户id
     */
    @ApiModelProperty(value = "用户id")
    private Long userId;
    /**
     * 砍价金额
     */
    @ApiModelProperty(value = "砍价金额")
    private BigDecimal amount;
    /**
     * 原砍价用户id
     */
    @ApiModelProperty(value = "原砍价用户id")
    private Long oldUserId;
    /**
     * 创建时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "创建时间")
    private Date createAt;
    /**
     * 创建人id
     */
    @ApiModelProperty(value = "创建人id")
    private Long createBy;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddComBatteryCommodityOrderCollageTeamDto.java
New file
@@ -0,0 +1,66 @@
package com.panzhihua.common.model.dtos.common;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
 * title: 新增电动车商城-拼团订单团队表请求参数
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 新增电动车商城-拼团订单团队表请求参数
 *
 * @author lyq
 * @date 2022-03-29 16:06:58
 */
@Data
@ApiModel("新增电动车商城-拼团订单团队表请求参数")
public class AddComBatteryCommodityOrderCollageTeamDto {
    /**
     * 活动id
     */
    @ApiModelProperty(value = "活动id")
    private Long activityId;
    /**
     * 订单id
     */
    @ApiModelProperty(value = "订单id")
    private Long orderId;
    /**
     * 订单号
     */
    @ApiModelProperty(value = "订单号")
    private String orderNo;
    /**
     * 开团用户id
     */
    @ApiModelProperty(value = "开团用户id")
    private Long userId;
    /**
     * 状态(1.等待拼团 2.拼团成功 3.拼团失败 4.已退款)
     */
    @ApiModelProperty(value = "状态(1.等待拼团 2.拼团成功 3.拼团失败 4.已退款)")
    private Integer status;
    /**
     * 创建时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "创建时间")
    private Date createAt;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddComBatteryCommodityOrderCollageTeamPeopleDto.java
New file
@@ -0,0 +1,66 @@
package com.panzhihua.common.model.dtos.common;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
 * title: 新增电动车商城-拼团活动团队人员表请求参数
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 新增电动车商城-拼团活动团队人员表请求参数
 *
 * @author lyq
 * @date 2022-03-29 16:07:10
 */
@Data
@ApiModel("新增电动车商城-拼团活动团队人员表请求参数")
public class AddComBatteryCommodityOrderCollageTeamPeopleDto {
    /**
     * 拼团团队id
     */
    @ApiModelProperty(value = "拼团团队id")
    private Long teamId;
    /**
     * 团长id
     */
    @ApiModelProperty(value = "团长id")
    private Long headUserId;
    /**
     * 用户id
     */
    @ApiModelProperty(value = "用户id")
    private Long userId;
    /**
     * 参团类型(1.开团 2.参与拼团)
     */
    @ApiModelProperty(value = "参团类型(1.开团 2.参与拼团)")
    private Integer type;
    /**
     * 创建时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "创建时间")
    private Date createAt;
    /**
     * 创建人id
     */
    @ApiModelProperty(value = "创建人id")
    private Long createBy;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddComBatteryCommodityOrderDto.java
New file
@@ -0,0 +1,217 @@
package com.panzhihua.common.model.dtos.common;
import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
 * title: 新增电动车商城-订单表请求参数
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 新增电动车商城-订单表请求参数
 *
 * @author lyq
 * @date 2022-03-29 13:18:45
 */
@Data
@ApiModel("新增电动车商城-订单表请求参数")
public class AddComBatteryCommodityOrderDto {
    /**
     * 用户id
     */
    @ApiModelProperty(value = "用户id")
    private Long userId;
    /**
     * 商家id
     */
    @ApiModelProperty(value = "商家id")
    private Long storeId;
    /**
     * 收货地址id
     */
    @ApiModelProperty(value = "收货地址id")
    private Long addressId;
    /**
     * 活动id
     */
    @ApiModelProperty(value = "活动id")
    private Long activityId;
    /**
     * 商品id
     */
    @ApiModelProperty(value = "商品id")
    private Long commodityId;
    /**
     * 商品规格id
     */
    @ApiModelProperty(value = "商品规格id")
    private Long specsId;
    /**
     * 订单号
     */
    @ApiModelProperty(value = "订单号")
    private String orderNo;
    /**
     * 活动状态(1.拼团活动 2.砍价活动 3.限时秒杀)
     */
    @ApiModelProperty(value = "活动状态(1.拼团活动 2.砍价活动 3.限时秒杀)")
    private Integer activityType;
    /**
     * 订单状态(1.待付款 2.待发货 3.待收货 4.已完成 5.待拼团 6.待砍价 7.已退款 8.已关闭)
     */
    @ApiModelProperty(value = "订单状态(1.待付款 2.待发货 3.待收货 4.已完成 5.待拼团 6.待砍价 7.已退款 8.已关闭)")
    private Integer status;
    /**
     * 拼团状态(1.拼团中 2.拼团成功 3.拼团失败)
     */
    @ApiModelProperty(value = "拼团状态(1.拼团中 2.拼团成功 3.拼团失败)")
    private Integer collageStatus;
    /**
     * 砍价状态(1.砍价中 2.砍价成功 3.砍价失败)
     */
    @ApiModelProperty(value = "砍价状态(1.砍价中 2.砍价成功 3.砍价失败)")
    private Integer bargainStatus;
    /**
     * 支付状态(1.未支付 2.已支付)
     */
    @ApiModelProperty(value = "支付状态(1.未支付 2.已支付)")
    private Integer payStatus;
    /**
     * 是否已删除(1.是  2.否)
     */
    @ApiModelProperty(value = "是否已删除(1.是  2.否)")
    private Integer isDel;
    /**
     * 支付方式(1.微信支付)
     */
    @ApiModelProperty(value = "支付方式(1.微信支付)")
    private Integer payType;
    /**
     * 购买商品数量
     */
    @ApiModelProperty(value = "购买商品数量")
    private Integer count;
    /**
     * 商品单价
     */
    @ApiModelProperty(value = "商品单价")
    private BigDecimal price;
    /**
     * 订单金额
     */
    @ApiModelProperty(value = "订单金额")
    private BigDecimal amount;
    /**
     * 运费
     */
    @ApiModelProperty(value = "运费")
    private BigDecimal freight;
    /**
     * 物流单号
     */
    @ApiModelProperty(value = "物流单号")
    private String logisticsNo;
    /**
     * 物流公司
     */
    @ApiModelProperty(value = "物流公司")
    private String logisticsCompany;
    /**
     * 订单最终金额
     */
    @ApiModelProperty(value = "订单最终金额")
    private BigDecimal finalAmount;
    /**
     * 支付单号
     */
    @ApiModelProperty(value = "支付单号")
    private String payNo;
    /**
     * 支付总金额
     */
    @ApiModelProperty(value = "支付总金额")
    private BigDecimal payAmount;
    /**
     * 订单备注
     */
    @ApiModelProperty(value = "订单备注")
    private String remark;
    /**
     * 发货时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "发货时间")
    private Date deliveryTime;
    /**
     * 收货时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "收货时间")
    private Date receivingTime;
    /**
     * 下单时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "下单时间")
    private Date createAt;
    /**
     * 创建人id
     */
    @ApiModelProperty(value = "创建人id")
    private Long createBy;
    /**
     * 修改时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "修改时间")
    private Date updateAt;
    /**
     * 修改人id
     */
    @ApiModelProperty(value = "修改人id")
    private Long updateBy;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddComBatteryCommoditySpecsDto.java
New file
@@ -0,0 +1,99 @@
package com.panzhihua.common.model.dtos.common;
import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
 * title: 新增电动车商城-商品规格表请求参数
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 新增电动车商城-商品规格表请求参数
 *
 * @author lyq
 * @date 2022-03-28 15:16:22
 */
@Data
@ApiModel("新增电动车商城-商品规格表请求参数")
public class AddComBatteryCommoditySpecsDto {
    /**
     * 商家id
     */
    @ApiModelProperty(value = "商家id")
    private Long storeId;
    /**
     * 商品id
     */
    @ApiModelProperty(value = "商品id")
    private Long commodityId;
    /**
     * 规格名称
     */
    @ApiModelProperty(value = "规格名称")
    private String name;
    /**
     * 规格库存数量
     */
    @ApiModelProperty(value = "规格库存数量")
    private Integer stock;
    /**
     * 规格价格
     */
    @ApiModelProperty(value = "规格价格")
    private BigDecimal price;
    /**
     * 规格图片
     */
    @ApiModelProperty(value = "规格图片")
    private String images;
    /**
     * 是否删除(1.是 2.否)
     */
    @ApiModelProperty(value = "是否删除(1.是 2.否)")
    private Integer isDel;
    /**
     * 创建时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "创建时间")
    private Date createAt;
    /**
     * 创建人id
     */
    @ApiModelProperty(value = "创建人id")
    private Long createBy;
    /**
     * 更新时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "更新时间")
    private Date updateAt;
    /**
     * 更新人id
     */
    @ApiModelProperty(value = "更新人id")
    private Long updateBy;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddComBatteryStoreClassDto.java
New file
@@ -0,0 +1,80 @@
package com.panzhihua.common.model.dtos.common;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
 * title: 新增电动车商城-商家分类表请求参数
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 新增电动车商城-商家分类表请求参数
 *
 * @author lyq
 * @date 2022-03-29 11:01:57
 */
@Data
@ApiModel("新增电动车商城-商家分类表请求参数")
public class AddComBatteryStoreClassDto {
    /**
     * 分类名称
     */
    @ApiModelProperty(value = "分类名称")
    private String name;
    /**
     * 商家id
     */
    @ApiModelProperty(value = "商家id")
    private Long storeId;
    /**
     * 状态(1.启用 2.禁用)
     */
    @ApiModelProperty(value = "状态(1.启用 2.禁用)")
    private Integer status;
    /**
     * 是否删除(1.是 2.否)
     */
    @ApiModelProperty(value = "是否删除(1.是 2.否)")
    private Integer isDel;
    /**
     * 创建时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "创建时间")
    private Date createAt;
    /**
     * 创建人id
     */
    @ApiModelProperty(value = "创建人id")
    private Long createBy;
    /**
     * 更新时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "更新时间")
    private Date updateAt;
    /**
     * 更新人id
     */
    @ApiModelProperty(value = "更新人id")
    private Long updateBy;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddComBatteryStoreDto.java
New file
@@ -0,0 +1,134 @@
package com.panzhihua.common.model.dtos.common;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
 * title: 新增电动车商城-商家表请求参数
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 新增电动车商城-商家表请求参数
 *
 * @author lyq
 * @date 2022-03-28 13:44:59
 */
@Data
@ApiModel("新增电动车商城-商家表请求参数")
public class AddComBatteryStoreDto {
    /**
     * 商家名称
     */
    @ApiModelProperty(value = "商家名称")
    private String name;
    /**
     * 注册手机
     */
    @ApiModelProperty(value = "注册手机")
    private String regPhone;
    /**
     * 联系电话
     */
    @ApiModelProperty(value = "联系电话")
    private String phone;
    /**
     * 商家账号
     */
    @ApiModelProperty(value = "商家账号")
    private String account;
    /**
     * 商家密码
     */
    @ApiModelProperty(value = "商家密码")
    private String password;
    /**
     * 状态(1.启用 2.禁用)
     */
    @ApiModelProperty(value = "状态(1.启用 2.禁用)")
    private Integer status;
    /**
     * 是否删除(1.是 2.否)
     */
    @ApiModelProperty(value = "是否删除(1.是 2.否)")
    private Integer isDel;
    /**
     * 商家logo
     */
    @ApiModelProperty(value = "商家logo")
    private String logo;
    /**
     * 商家简介
     */
    @ApiModelProperty(value = "商家简介")
    private String introduction;
    /**
     * 商家地址
     */
    @ApiModelProperty(value = "商家地址")
    private String address;
    /**
     * 详细地址
     */
    @ApiModelProperty(value = "详细地址")
    private String detailAddress;
    /**
     * 经度
     */
    @ApiModelProperty(value = "经度")
    private String longitude;
    /**
     * 纬度
     */
    @ApiModelProperty(value = "纬度")
    private String latitude;
    /**
     * 创建时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "创建时间")
    private Date createAt;
    /**
     * 创建人id
     */
    @ApiModelProperty(value = "创建人id")
    private Long createBy;
    /**
     * 更新时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "更新时间")
    private Date updateAt;
    /**
     * 更新人id
     */
    @ApiModelProperty(value = "更新人id")
    private Long updateBy;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddComBatteryTradeOrderDto.java
New file
@@ -0,0 +1,131 @@
package com.panzhihua.common.model.dtos.common;
import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
 * title: 新增电动车商城-微信交易流水表请求参数
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 新增电动车商城-微信交易流水表请求参数
 *
 * @author lyq
 * @date 2022-04-01 13:18:50
 */
@Data
@ApiModel("新增电动车商城-微信交易流水表请求参数")
public class AddComBatteryTradeOrderDto {
    /**
     * 用户id
     */
    @ApiModelProperty(value = "用户id")
    private Long userId;
    /**
     * 用户openid
     */
    @ApiModelProperty(value = "用户openid")
    private String openId;
    /**
     * 订单号
     */
    @ApiModelProperty(value = "订单号")
    private String orderNo;
    /**
     * 订单状态(1.待支付 2.已支付 3.申请退款 4.已退款 5.已关闭)
     */
    @ApiModelProperty(value = "订单状态(1.待支付 2.已支付 3.申请退款 4.已退款 5.已关闭)")
    private Integer status;
    /**
     * 支付类型(1.微信 )
     */
    @ApiModelProperty(value = "支付类型(1.微信 )")
    private Integer payType;
    /**
     * 订单支付状态(1.待支付 2.已支付)
     */
    @ApiModelProperty(value = "订单支付状态(1.待支付 2.已支付)")
    private Integer payStatus;
    /**
     * 订单金额
     */
    @ApiModelProperty(value = "订单金额")
    private BigDecimal orderAmount;
    /**
     * 实际支付金额
     */
    @ApiModelProperty(value = "实际支付金额")
    private BigDecimal payAmount;
    /**
     * 支付单号
     */
    @ApiModelProperty(value = "支付单号")
    private String payNo;
    /**
     * 支付时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "支付时间")
    private Date payTime;
    /**
     * 交易类型(1.电动车商城购买商品)
     */
    @ApiModelProperty(value = "交易类型(1.电动车商城购买商品)")
    private Integer tradeType;
    /**
     * 交易业务订单id
     */
    @ApiModelProperty(value = "交易业务订单id")
    private Long tradeOrderId;
    /**
     * 交易业务订单号
     */
    @ApiModelProperty(value = "交易业务订单号")
    private String tradeOrderNo;
    /**
     * 创建时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "创建时间")
    private Date createAt;
    /**
     * 创建人
     */
    @ApiModelProperty(value = "创建人")
    private Long createBy;
    /**
     * 修改时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "修改时间")
    private Date updateAt;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddComBatteryUserAddressDto.java
New file
@@ -0,0 +1,116 @@
package com.panzhihua.common.model.dtos.common;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
 * title: 新增电动车商城-用户收货地址表请求参数
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 新增电动车商城-用户收货地址表请求参数
 *
 * @author lyq
 * @date 2022-03-29 13:18:20
 */
@Data
@ApiModel("新增电动车商城-用户收货地址表请求参数")
public class AddComBatteryUserAddressDto {
    @ApiModelProperty(value = "用户id")
    private Long userId;
    /**
     * 姓名
     */
    @ApiModelProperty(value = "姓名")
    private String name;
    /**
     * 手机号
     */
    @ApiModelProperty(value = "手机号")
    private String phone;
    /**
     * 详细地址
     */
    @ApiModelProperty(value = "详细地址")
    private String address;
    /**
     * 是否是默认地址(1.是  2.否)
     */
    @ApiModelProperty(value = "是否是默认地址(1.是  2.否)")
    private Integer isDefault;
    /**
     * 省份行政区划代码
     */
    @ApiModelProperty(value = "省份行政区划代码")
    private String provinceAdcode;
    /**
     * 省份名称
     */
    @ApiModelProperty(value = "省份名称")
    private String provinceName;
    /**
     * 城市行政区划代码
     */
    @ApiModelProperty(value = "城市行政区划代码")
    private String cityAdcode;
    /**
     * 城市名称
     */
    @ApiModelProperty(value = "城市名称")
    private String cityName;
    /**
     * 区县行政区划代码
     */
    @ApiModelProperty(value = "区县行政区划代码")
    private String districtAdcode;
    /**
     * 区县名称
     */
    @ApiModelProperty(value = "区县名称")
    private String districtName;
    /**
     * 创建时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "创建时间")
    private Date createAt;
    /**
     * 创建人id
     */
    @ApiModelProperty(value = "创建人id")
    private Long createBy;
    /**
     * 修改时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "修改时间")
    private Date updateAt;
    /**
     * 修改人id
     */
    @ApiModelProperty(value = "修改人id")
    private Long updateBy;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddComChangeCarBrandDto.java
New file
@@ -0,0 +1,86 @@
package com.panzhihua.common.model.dtos.common;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
 * title: 新增换新车-品牌表请求参数
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 新增换新车-品牌表请求参数
 *
 * @author lyq
 * @date 2022-04-07 13:37:25
 */
@Data
@ApiModel("新增换新车-品牌表请求参数")
public class AddComChangeCarBrandDto {
    /**
     * 品牌编号
     */
    @ApiModelProperty(value = "品牌编号")
    private String code;
    /**
     * 品牌名称
     */
    @ApiModelProperty(value = "品牌名称")
    private String name;
    /**
     * 状态(1.启用 2.禁用)
     */
    @ApiModelProperty(value = "状态(1.启用 2.禁用)")
    private Integer status;
    /**
     * 品牌logo
     */
    @ApiModelProperty(value = "品牌logo")
    private String logo;
    /**
     * 是否删除(1.是 2.否)
     */
    @ApiModelProperty(value = "是否删除(1.是 2.否)")
    private Integer isDel;
    /**
     * 创建时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "创建时间")
    private Date createAt;
    /**
     * 创建人id
     */
    @ApiModelProperty(value = "创建人id")
    private Long createBy;
    /**
     * 修改时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "修改时间")
    private Date updateAt;
    /**
     * 修改人id
     */
    @ApiModelProperty(value = "修改人id")
    private Long updateBy;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddComChangeCarInquiryDto.java
New file
@@ -0,0 +1,72 @@
package com.panzhihua.common.model.dtos.common;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
 * title: 新增换新车-分期询价表请求参数
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 新增换新车-分期询价表请求参数
 *
 * @author lyq
 * @date 2022-04-07 13:39:07
 */
@Data
@ApiModel("新增换新车-分期询价表请求参数")
public class AddComChangeCarInquiryDto {
    /**
     * 用户id
     */
    @ApiModelProperty(value = "用户id",hidden = true)
    private Long userId;
    /**
     * 用户称呼
     */
    @ApiModelProperty(value = "用户称呼")
    private String name;
    /**
     * 用户手机号
     */
    @ApiModelProperty(value = "用户手机号")
    private String phone;
    /**
     * 类型(1.分期 2.询价)
     */
    @ApiModelProperty(value = "类型(1.分期 2.询价)")
    private Integer type;
    /**
     * 是否删除(1.是 2.否)
     */
    @ApiModelProperty(value = "是否删除(1.是 2.否)",hidden = true)
    private Integer isDel;
    /**
     * 创建时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "创建时间",hidden = true)
    private Date createAt;
    /**
     * 创建人id
     */
    @ApiModelProperty(value = "创建人id",hidden = true)
    private Long createBy;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddComChangeCarModelDto.java
New file
@@ -0,0 +1,99 @@
package com.panzhihua.common.model.dtos.common;
import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
 * title: 新增换新车-车型管理表请求参数
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 新增换新车-车型管理表请求参数
 *
 * @author lyq
 * @date 2022-04-07 13:41:56
 */
@Data
@ApiModel("新增换新车-车型管理表请求参数")
public class AddComChangeCarModelDto {
    /**
     * 车型名称
     */
    @ApiModelProperty(value = "车型名称")
    private String name;
    /**
     * 图片url,多张以,隔开
     */
    @ApiModelProperty(value = "图片url,多张以,隔开")
    private String images;
    /**
     * 最低价格
     */
    @ApiModelProperty(value = "最低价格")
    private BigDecimal minPrice;
    /**
     * 品牌id
     */
    @ApiModelProperty(value = "品牌id")
    private Long brandId;
    /**
     * 车辆详情
     */
    @ApiModelProperty(value = "车辆详情")
    private String detail;
    /**
     * 是否删除(1.是 2.否)
     */
    @ApiModelProperty(value = "是否删除(1.是 2.否)")
    private Integer isDel;
    /**
     * 状态(1.上架 2.下架)
     */
    @ApiModelProperty(value = "状态(1.上架 2.下架)")
    private Integer status;
    /**
     * 创建时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "创建时间")
    private Date createAt;
    /**
     * 创建人id
     */
    @ApiModelProperty(value = "创建人id")
    private Long createBy;
    /**
     * 修改时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "修改时间")
    private Date updateAt;
    /**
     * 修改人id
     */
    @ApiModelProperty(value = "修改人id")
    private Long updateBy;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddComChangeCarModelRelationDto.java
New file
@@ -0,0 +1,44 @@
package com.panzhihua.common.model.dtos.common;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
 * title: 新增换新车-车型与规格关联表请求参数
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 新增换新车-车型与规格关联表请求参数
 *
 * @author lyq
 * @date 2022-04-07 13:55:30
 */
@Data
@ApiModel("新增换新车-车型与规格关联表请求参数")
public class AddComChangeCarModelRelationDto {
    /**
     * 车型id
     */
    @ApiModelProperty(value = "车型id")
    private Long modelId;
    /**
     * 车型规格id
     */
    @ApiModelProperty(value = "车型规格id")
    private Long modelSpecsId;
    /**
     * 车型子规格id
     */
    @ApiModelProperty(value = "车型子规格id")
    private Long modelSpecsChildrenId;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddComChangeCarModelSpecsChildrenDto.java
New file
@@ -0,0 +1,44 @@
package com.panzhihua.common.model.dtos.common;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
 * title: 新增换新车-车型子规格表请求参数
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 新增换新车-车型子规格表请求参数
 *
 * @author lyq
 * @date 2022-04-07 13:55:34
 */
@Data
@ApiModel("新增换新车-车型子规格表请求参数")
public class AddComChangeCarModelSpecsChildrenDto {
    /**
     * 主规格id
     */
    @ApiModelProperty(value = "主规格id")
    private Long specsId;
    /**
     * 子规格名称
     */
    @ApiModelProperty(value = "子规格名称")
    private String name;
    /**
     * 是否删除(1.是 2.否)
     */
    @ApiModelProperty(value = "是否删除(1.是 2.否)")
    private Integer isDel;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddComChangeCarModelSpecsDto.java
New file
@@ -0,0 +1,74 @@
package com.panzhihua.common.model.dtos.common;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
 * title: 新增换新车-车型规格表请求参数
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 新增换新车-车型规格表请求参数
 *
 * @author lyq
 * @date 2022-04-07 13:55:32
 */
@Data
@ApiModel("新增换新车-车型规格表请求参数")
public class AddComChangeCarModelSpecsDto {
    /**
     * 规格编号
     */
    @ApiModelProperty(value = "规格编号")
    private String code;
    /**
     * 规格名称
     */
    @ApiModelProperty(value = "规格名称")
    private String name;
    /**
     * 是否删除(1.是 2.否)
     */
    @ApiModelProperty(value = "是否删除(1.是 2.否)")
    private Integer isDel;
    /**
     * 创建时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "创建时间")
    private Date createAt;
    /**
     * 创建人id
     */
    @ApiModelProperty(value = "创建人id")
    private Long createBy;
    /**
     * 修改时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "修改时间")
    private Date updateAt;
    /**
     * 修改人id
     */
    @ApiModelProperty(value = "修改人id")
    private Long updateBy;
}
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/AddSysUserDto.java
New file
@@ -0,0 +1,255 @@
package com.panzhihua.common.model.dtos.common;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
 * title: 新增用户表 后台用户+小程序用户请求参数
 * <p>
 * projectName 成都呐喊信息技术有限公司-智慧社区项目
 * <p>
 * description: 新增用户表 后台用户+小程序用户请求参数
 *
 * @author lyq
 * @date 2022-03-28 14:28:10
 */
@Data
@ApiModel("新增用户表 后台用户+小程序用户请求参数")
public class AddSysUserDto {
    /**
     * 主键
     */
    @ApiModelProperty(value = "主键")
    private Long userId;
    /**
     * 登录账户
     */
    @ApiModelProperty(value = "登录账户")
    private String account;
    /**
     * 登录密码
     */
    @ApiModelProperty(value = "登录密码")
    private String password;
    /**
     * 微信小程序唯一标识
     */
    @ApiModelProperty(value = "微信小程序唯一标识")
    private String openid;
    /**
     * 会话密钥
     */
    @ApiModelProperty(value = "会话密钥")
    private String sessionKey;
    /**
     * 用户在开放平台的唯一标识符
     */
    @ApiModelProperty(value = "用户在开放平台的唯一标识符")
    private String unionid;
    /**
     * 手机号
     */
    @ApiModelProperty(value = "手机号")
    private String phone;
    /**
     * 昵称
     */
    @ApiModelProperty(value = "昵称")
    private String nickName;
    /**
     * 真实名字
     */
    @ApiModelProperty(value = "真实名字")
    private String name;
    /**
     * 社区ID
     */
    @ApiModelProperty(value = "社区ID")
    private Long communityId;
    /**
     * 性别 1 男 2 女
     */
    @ApiModelProperty(value = "性别 1 男 2 女")
    private Integer sex;
    /**
     * 身份证号
     */
    @ApiModelProperty(value = "身份证号")
    private String idCard;
    /**
     * 生日
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "生日")
    private Date birthday;
    /**
     * 头像
     */
    @ApiModelProperty(value = "头像")
    private String imageUrl;
    /**
     * 用户类型 1 小程序 2 运营平台 3 社区平台 5 商家后台 6 网格综治APP 7 网格综治后台 8大屏 9城管后台 10一键报警app
     */
    @ApiModelProperty(value = "用户类型 1 小程序 2 运营平台 3 社区平台 5 商家后台 6 网格综治APP 7 网格综治后台 8大屏 9城管后台 10一键报警app")
    private Integer type;
    /**
     * 职业
     */
    @ApiModelProperty(value = "职业")
    private String job;
    /**
     * 是否志愿者 0 否 1 是
     */
    @ApiModelProperty(value = "是否志愿者 0 否 1 是")
    private Integer isVolunteer;
    /**
     * 是否党员 0 否 1 是
     */
    @ApiModelProperty(value = "是否党员 0 否 1 是")
    private Integer isPartymember;
    /**
     * 1 启用 2 禁用
     */
    @ApiModelProperty(value = "1 启用 2 禁用")
    private Integer status;
    /**
     * 创建时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "创建时间")
    private Date createAt;
    /**
     * 最后登录时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "最后登录时间")
    private Date lastLoginTime;
    /**
     * 标签多个用,隔开
     */
    @ApiModelProperty(value = "标签多个用,隔开")
    private String tags;
    /**
     * 家庭id
     */
    @ApiModelProperty(value = "家庭id")
    private Long familyId;
    /**
     * 人脸采集照片url
     */
    @ApiModelProperty(value = "人脸采集照片url")
    private String faceUrl;
    /**
     * 人脸采集审核状态 0 待审核 1 审核通过 2驳回
     */
    @ApiModelProperty(value = "人脸采集审核状态 0 待审核 1 审核通过 2驳回")
    private Integer faceState;
    /**
     * 驳回原因
     */
    @ApiModelProperty(value = "驳回原因")
    private String rejectReson;
    /**
     * 小区id
     */
    @ApiModelProperty(value = "小区id")
    private Long areaId;
    /**
     * 证件照(人相面)照片
     */
    @ApiModelProperty(value = "证件照(人相面)照片")
    private String cardPhotoFront;
    /**
     * 证件照(国徽面)照片
     */
    @ApiModelProperty(value = "证件照(国徽面)照片")
    private String cardPhotoBack;
    /**
     * 户口本
     */
    @ApiModelProperty(value = "户口本")
    private String familyBook;
    /**
     * 连续登陆天数 每天凌晨定时任务更新
     */
    @ApiModelProperty(value = "连续登陆天数 每天凌晨定时任务更新")
    private Integer continuousLandingDays;
    /**
     * 小程序首页是否显示公告(1.是 2.否)
     */
    @ApiModelProperty(value = "小程序首页是否显示公告(1.是 2.否)")
    private Integer isTips;
    /**
     * 网格员工作状态(1.在岗 2.脱岗 3.已下班)
     */
    @ApiModelProperty(value = "网格员工作状态(1.在岗 2.脱岗 3.已下班)")
    private Integer workStatus;
    /**
     * 网格员上班开始时间
     */
    @ApiModelProperty(value = "网格员上班开始时间")
    private Integer workStartTime;
    /**
     * 网格员上班结束时间
     */
    @ApiModelProperty(value = "网格员上班结束时间")
    private Integer workEndTime;
    /**
     * 高龄认证显示提示(1.是 2.否)
     */
    @ApiModelProperty(value = "高龄认证显示提示(1.是 2.否)")
    private Integer bigAgeTips;
    /**
     * 明文密码
     */
    @ApiModelProperty(value = "明文密码")
    private String plaintextPassword;
}
Diff truncated after the above file
springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditComBatteryCommodityActivityDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditComBatteryCommodityDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditComBatteryCommodityOrderBargainDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditComBatteryCommodityOrderBargainRecordDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditComBatteryCommodityOrderCollageTeamDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditComBatteryCommodityOrderCollageTeamPeopleDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditComBatteryCommodityOrderDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditComBatteryCommoditySpecsDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditComBatteryStoreClassDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditComBatteryStoreDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditComBatteryTradeOrderDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditComBatteryUserAddressDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditComChangeCarBrandDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditComChangeCarInquiryDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditComChangeCarModelDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditComChangeCarModelRelationDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditComChangeCarModelSpecsChildrenDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditComChangeCarModelSpecsDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditOrderAddressDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditOrderLogisticsDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/EditSysUserDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/OrderDeliverAdminDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageComBatteryCommodityActivityDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageComBatteryCommodityDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageComBatteryCommodityOrderBargainDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageComBatteryCommodityOrderBargainRecordDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageComBatteryCommodityOrderCollageTeamDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageComBatteryCommodityOrderCollageTeamPeopleDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageComBatteryCommodityOrderDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageComBatteryCommoditySpecsDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageComBatteryStoreClassDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageComBatteryStoreDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageComBatteryTradeOrderDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageComBatteryUserAddressDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageComChangeCarBrandDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageComChangeCarInquiryDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageComChangeCarModelDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageComChangeCarModelRelationDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageComChangeCarModelSpecsChildrenDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageComChangeCarModelSpecsDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/PageSysUserDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/StartBargainOrderDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/StartFightOrderDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/StartSeckillOrderDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/StartUserBargainOrderDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/common/UserCreateOrderDto.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/sanshuo/ComMediateTypeDTO.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/sanshuo/ComSanShuoIndustryCenterDTO.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/sanshuo/ComSanshuoEventDTO.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/sanshuo/ComSanshuoExpertDTO.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/community/sanshuo/IndexDateDTO.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/dtos/shop/WxPayNotifyOrderDTO.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/LoginUserInfoVO.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/SanShuoMessageVO.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComBatteryActivityTeamVo.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComBatteryCommodityActivityVo.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComBatteryCommodityOrderBargainRecordVo.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComBatteryCommodityOrderBargainVo.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComBatteryCommodityOrderCollageTeamPeopleVo.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComBatteryCommodityOrderCollageTeamVo.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComBatteryCommodityOrderVo.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComBatteryCommoditySpecsVo.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComBatteryCommodityVo.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComBatteryStoreClassVo.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComBatteryStoreVo.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComBatteryTradeOrderVo.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComBatteryUserAddressVo.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComChangeCarBrandVo.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComChangeCarInquiryVo.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComChangeCarModelRelationVo.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComChangeCarModelSpecsChildrenVo.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComChangeCarModelSpecsVo.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/ComChangeCarModelVo.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/common/SysUserVo.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComActVO.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/community/ComStreetVO.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/partybuilding/PagePartyOrganizationVO.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/ComEventArchiveVO.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/ComEventCalculateVO.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/ComEventConciliationVO.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/ComEventDetailVO.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/ComEventPageRequestVO.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/ComEventRequestImageVO.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/ComEventResourceVO.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/ComEventTransferRecordVO.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/ComEventVO.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/ComMediaTypeVO.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/ComSanRequestVO.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/ComSanShuoEventVO.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/ComSanShuoIndustryCenterVO.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/ComSanshuoExpertVO.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/EventRateVO.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/ExpertRangeVO.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/ExpertShowVO.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/IndexDateVO.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sanshuo/MediateTypeVO.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/shop/PageShopStoreVO.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/auth/TokenService.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/ComBatteryCommodityActivityFeign.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/ComBatteryCommodityFeign.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/ComBatteryCommodityOrderBargainFeign.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/ComBatteryCommodityOrderBargainRecordFeign.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/ComBatteryCommodityOrderCollageTeamFeign.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/ComBatteryCommodityOrderCollageTeamPeopleFeign.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/ComBatteryCommodityOrderFeign.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/ComBatteryCommoditySpecsFeign.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/ComBatteryStoreClassFeign.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/ComBatteryStoreFeign.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/ComBatteryUserAddressFeign.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/ComChangeCarBrandFeign.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/ComChangeCarInquiryFeign.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/ComChangeCarModelFeign.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/ComChangeCarModelRelationFeign.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/ComChangeCarModelSpecsChildrenFeign.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/ComChangeCarModelSpecsFeign.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/CommunitySanShuoService.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/CommunityService.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/user/UserService.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/MathUtils.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/RSAUtils.java springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/WxPayUtils.java springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/ComBatteryCommodityActivityApi.java springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/ComBatteryCommodityApi.java springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/ComBatteryCommodityOrderApi.java springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/ComBatteryCommoditySpecsApi.java springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/ComBatteryStoreApi.java springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/ComBatteryStoreClassApi.java springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/ComSanShuoApi.java springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/ComSanShuoEventController.java springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/CommunityConvenientApi.java springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/CommunityPartyBuildingApi.java springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/CommunityPartyBuildingWestApi.java springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/IndexApi.java springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/LoginApi.java springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/config/JacksonConfig.java springcloud_k8s_panzhihuazhihuishequ/grid_backstage/src/main/java/com/panzhihua/grid_backstage/api/ComSanShuoApi.java springcloud_k8s_panzhihuazhihuishequ/grid_backstage/src/main/java/com/panzhihua/grid_backstage/api/ComSanShuoEventController.java springcloud_k8s_panzhihuazhihuishequ/grid_backstage/src/main/java/com/panzhihua/grid_backstage/api/CommonApi.java springcloud_k8s_panzhihuazhihuishequ/grid_backstage/src/main/java/com/panzhihua/grid_backstage/config/JacksonConfig.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/AdvertisementApi.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComActActivityCodeApi.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComBatteryCommodityActivityController.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComBatteryCommodityController.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComBatteryCommodityOrderBargainController.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComBatteryCommodityOrderBargainRecordController.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComBatteryCommodityOrderCollageTeamController.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComBatteryCommodityOrderCollageTeamPeopleController.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComBatteryCommodityOrderController.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComBatteryCommoditySpecsController.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComBatteryStoreClassController.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComBatteryStoreController.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComBatteryUserAddressController.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComChangeCarBrandController.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComChangeCarInquiryController.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComChangeCarModelController.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComChangeCarModelRelationController.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComChangeCarModelSpecsChildrenController.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComChangeCarModelSpecsController.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComSanShuoEventApi.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComSanShuoEventController.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComSanShuoEventResourceController.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComSanShuoEventTransferRecordController.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComSanShuoExpertApi.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/ComSanShuoIndustryCenterApi.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/StreetApi.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComActDAO.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComBatteryCommodityActivityMapper.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComBatteryCommodityMapper.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComBatteryCommodityOrderBargainMapper.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComBatteryCommodityOrderBargainRecordMapper.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComBatteryCommodityOrderCollageTeamMapper.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComBatteryCommodityOrderCollageTeamPeopleMapper.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComBatteryCommodityOrderMapper.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComBatteryCommoditySpecsMapper.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComBatteryStoreClassMapper.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComBatteryStoreMapper.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComBatteryTradeOrderMapper.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComBatteryUserAddressMapper.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComChangeCarBrandMapper.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComChangeCarInquiryMapper.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComChangeCarModelMapper.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComChangeCarModelRelationMapper.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComChangeCarModelSpecsChildrenMapper.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComChangeCarModelSpecsMapper.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComEventMapper.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComEventResourceMapper.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComEventTransferRecordMapper.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComMediateTypeDao.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComSanshuoEventDao.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComSanshuoExpertDao.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/ComSanshuoIndustryCenterDao.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/dao/SysUserMapper.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComBatteryCommodity.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComBatteryCommodityActivity.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComBatteryCommodityOrder.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComBatteryCommodityOrderBargain.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComBatteryCommodityOrderBargainRecord.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComBatteryCommodityOrderCollageTeam.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComBatteryCommodityOrderCollageTeamPeople.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComBatteryCommoditySpecs.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComBatteryStore.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComBatteryStoreClass.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComBatteryTradeOrder.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComBatteryUserAddress.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComChangeCarBrand.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComChangeCarInquiry.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComChangeCarModel.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComChangeCarModelRelation.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComChangeCarModelSpecs.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComChangeCarModelSpecsChildren.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComEvent.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComEventResource.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComEventTransferRecord.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComMediateType.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComSanshuoEvent.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComSanshuoExpert.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/ComSanshuoIndustryCenter.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/entity/SysUser.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComActDO.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/model/dos/ComStreetDO.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/schedule/AcidSchedule.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComBatteryCommodityActivityService.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComBatteryCommodityOrderBargainRecordService.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComBatteryCommodityOrderBargainService.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComBatteryCommodityOrderCollageTeamPeopleService.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComBatteryCommodityOrderCollageTeamService.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComBatteryCommodityOrderService.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComBatteryCommodityService.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComBatteryCommoditySpecsService.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComBatteryStoreClassService.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComBatteryStoreService.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComBatteryTradeOrderService.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComBatteryUserAddressService.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComChangeCarBrandService.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComChangeCarInquiryService.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComChangeCarModelRelationService.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComChangeCarModelService.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComChangeCarModelSpecsChildrenService.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComChangeCarModelSpecsService.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComOpsAdvService.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComSanShuoEventService.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComSanShuoExpertService.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComSanShuoIndustryCenterService.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/ComStreetService.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/CommediateTypeService.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/IComEventResourceService.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/IComEventService.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/IComEventTransferRecordService.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/SysUserService.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActNeighborCircleServiceImpl.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComActServiceImpl.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComBatteryCommodityActivityServiceImpl.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComBatteryCommodityOrderBargainRecordServiceImpl.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComBatteryCommodityOrderBargainServiceImpl.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComBatteryCommodityOrderCollageTeamPeopleServiceImpl.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComBatteryCommodityOrderCollageTeamServiceImpl.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComBatteryCommodityOrderServiceImpl.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComBatteryCommodityServiceImpl.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComBatteryCommoditySpecsServiceImpl.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComBatteryStoreClassServiceImpl.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComBatteryStoreServiceImpl.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComBatteryTradeOrderServiceImpl.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComBatteryUserAddressServiceImpl.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComChangeCarBrandServiceImpl.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComChangeCarInquiryServiceImpl.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComChangeCarModelRelationServiceImpl.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComChangeCarModelServiceImpl.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComChangeCarModelSpecsChildrenServiceImpl.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComChangeCarModelSpecsServiceImpl.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComEventResourceServiceImpl.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComEventServiceImpl.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComEventTransferRecordServiceImpl.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComOpsAdvServiceImpl.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComSanShuoEventServiceImpl.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComSanShuoExpertServiceImpl.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComSanShuoIndustryCenterServiceImpl.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComShopOrderServiceImpl.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComStreetServiceImpl.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/CommediateTypeServiceImpl.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ConvenientMerchantServiceImpl.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/RentingHourseOrderServiceImpl.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/SysUserServiceImpl.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/util/ExcelListener.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/util/WXMessageUtil.java springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComActIntegralUserDOMapper.xml springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComBatteryCommodityActivityMapper.xml springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComBatteryCommodityMapper.xml springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComBatteryCommodityOrderBargainMapper.xml springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComBatteryCommodityOrderBargainRecordMapper.xml springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComBatteryCommodityOrderCollageTeamMapper.xml springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComBatteryCommodityOrderCollageTeamPeopleMapper.xml springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComBatteryCommodityOrderMapper.xml springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComBatteryCommoditySpecsMapper.xml springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComBatteryStoreClassMapper.xml springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComBatteryStoreMapper.xml springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComBatteryTradeOrderMapper.xml springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComBatteryUserAddressMapper.xml springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComChangeCarBrandMapper.xml springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComChangeCarInquiryMapper.xml springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComChangeCarModelMapper.xml springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComChangeCarModelRelationMapper.xml springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComChangeCarModelSpecsChildrenMapper.xml springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComChangeCarModelSpecsMapper.xml springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComEventMapper.xml springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComEventResourceMapper.xml springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComEventTransferRecordMapper.xml springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComMediaTypeMapper.xml springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComPropertyMapper.xml springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComSanshuoEventDao.xml springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComSanshuoExpertDao.xml springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/ComSanshuoIndustryCenterDao.xml springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/resources/mapper/SysUserMapper.xml springcloud_k8s_panzhihuazhihuishequ/service_community/src/test/java/com/panzhihua/service_community/service/impl/ComEventServiceImplTest.java springcloud_k8s_panzhihuazhihuishequ/service_property/src/main/java/com/panzhihua/service_property/api/ComPropertyRepairApi.java springcloud_k8s_panzhihuazhihuishequ/service_property/src/main/java/com/panzhihua/service_property/config/WebSocketClient.java springcloud_k8s_panzhihuazhihuishequ/service_property/src/main/java/com/panzhihua/service_property/service/impl/ComPropertyRepairServiceImpl.java springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/api/UserApi.java springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/dao/UserDao.java springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/UserService.java springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/resources/mapper/UserDao.xml springcloud_k8s_panzhihuazhihuishequ/shop_backstage/src/main/java/com/panzhihua/shop_backstage/api/MicroCommercialStreetApi.java springcloud_k8s_panzhihuazhihuishequ/timejob/src/main/java/com/panzhihua/timejob/jobhandler/BatteryJobHandler.java springcloud_k8s_panzhihuazhihuishequ/zuul/src/main/java/com/panzhihua/zuul/filters/JWTAuthenticationTokenFilter.java