为短信平台开发者提供一个入门的脚手架项目,让开发者迅速掌握CMPP,SGIP,SMPP,SMGP等协议。开发者可以更专注于企业个性化业务的开发,减少学习时间成本。
为了减少部署成本,单机版去掉了redis,通过本地缓存来实现redis存储.
```
.
├── sms-platform-stand-alone-master
│ ├── LICENSE
│ ├── README.en.md
│ ├── README.md
│ ├── docs
│ │ ├── images
│ │ │ ├── jiagou.png
│ │ │ └── qq.png
│ │ ├── sql
│ │ │ ├── business.sql
│ │ │ └── send.sql
│ │ ├── 错误代码.xlsx
│ │ ├── 平台使用说明书
│ │ │ ├── 信相通客户端使用说明书V3.0.docx
│ │ │ └── 信相通运营管理平台使用说明书V3.0.docx
│ │ └── 系统平台接口文档&demo
│ │ └── 接口文档.docx
│ ├── pom.xml
│ ├── sms-netway-sender
│ │ ├── pom.xml
│ │ └── src
│ │ └── main
│ │ ├── java
│ │ │ └── com
│ │ │ └── hero
│ │ │ └── wireless
│ │ │ ├── config
│ │ │ │ ├── CmppServerEnv.java
│ │ │ │ ├── InitSystemEnv.java
│ │ │ │ ├── NetwayEnv.java
│ │ │ │ ├── NetwaySgipServerEnv.java
│ │ │ │ ├── ServerUserProperties.java
│ │ │ │ ├── SgipClientEnv.java
│ │ │ │ ├── SmgpServerEnv.java
│ │ │ │ └── SmppServerEnv.java
│ │ │ ├── netway
│ │ │ │ ├── SgipMessageProvider.java
│ │ │ │ ├── TcpMessageProvider.java
│ │ │ │ ├── controller
│ │ │ │ │ ├── APIController.java
│ │ │ │ │ ├── AliController.java
│ │ │ │ │ ├── ChuZhongController.java
│ │ │ │ │ ├── MaiYuanV1Controller.java
│ │ │ │ │ ├── MaiYuanV2Controller.java
│ │ │ │ │ ├── PlatformSmsStatisticsController.java
│ │ │ │ │ └── wrap
│ │ │ │ │ ├── AbstractAPIRequestData.java
│ │ │ │ │ ├── DrondeaJsonRequestData.java
│ │ │ │ │ ├── DrondeaXmlRequestData.java
│ │ │ │ │ ├── MASMMSRequestData.java
│ │ │ │ │ └── MaiYuanSmsRequestData.java
│ │ │ │ ├── handler
│ │ │ │ │ ├── AbstractMOResponseHandler.java
│ │ │ │ │ ├── AbstractReportResponseHandler.java
│ │ │ │ │ ├── AbstractServerCustomHandler.java
│ │ │ │ │ ├── CmppServerCustomHandler.java
│ │ │ │ │ ├── GlobalHandler.java
│ │ │ │ │ ├── LongMsgCache.java
│ │ │ │ │ ├── SgipClientCustomHandler.java
│ │ │ │ │ ├── SgipServerCustomHandler.java
│ │ │ │ │ ├── SmgpServerCustomHandler.java
│ │ │ │ │ ├── SmppServerCustomHandler.java
│ │ │ │ │ └── netty
│ │ │ │ │ ├── AbstractServerBusinessHandler.java
│ │ │ │ │ ├── CmppServerBusinessHandler.java
│ │ │ │ │ ├── SgipServerBusinessHandler.java
│ │ │ │ │ ├── SmgpServerBusinessHandler.java
│ │ │ │ │ └── SmppServerBusinessHandler.java
│ │ │ │ └── service
│ │ │ │ ├── IHttpService.java
│ │ │ │ ├── ITcpService.java
│ │ │ │ ├── ScheduleServiceFactory.java
│ │ │ │ ├── TcpValidator.java
│ │ │ │ └── impl
│ │ │ │ ├── AbstractHttpService.java
│ │ │ │ ├── AbstractTcpService.java
│ │ │ │ ├── BaseService.java
│ │ │ │ ├── CmppAPIServiceImpl.java
│ │ │ │ ├── HttpAPIServiceImpl.java
│ │ │ │ ├── SgipAPIServiceImpl.java
│ │ │ │ ├── SmgpAPIServiceImpl.java
│ │ │ │ └── SmppAPIServiceImpl.java
│ │ │ ├── sender
│ │ │ │ ├── AbstractTcpEnv.java
│ │ │ │ ├── CmppEnv.java
│ │ │ │ ├── HttpEnv.java
│ │ │ │ ├── MessageSender.java
│ │ │ │ ├── ScheduleServiceFactory.java
│ │ │ │ ├── SenderApp.java
│ │ │ │ ├── SenderUtil.java
│ │ │ │ ├── SgipEnv.java
│ │ │ │ ├── SgipServerEnv.java
│ │ │ │ ├── SmgpEnv.java
│ │ │ │ ├── SmppEnv.java
│ │ │ │ ├── TcpMessageProvider.java
│ │ │ │ ├── filter
│ │ │ │ │ ├── Handler.java
│ │ │ │ │ └── IFilter.java
│ │ │ │ └── handler
│ │ │ │ ├── CmppClientCustomHandler.java
│ │ │ │ ├── GlobalHandler.java
│ │ │ │ ├── HttpClentSessionManager.java
│ │ │ │ ├── SgipClientCustomHandler.java
│ │ │ │ ├── SgipServerCustomHandler.java
│ │ │ │ ├── SmgpClientCustomHandler.java
│ │ │ │ ├── SmppClientCustomHandler.java
│ │ │ │ └── netty
│ │ │ │ ├── AbstractClientBusinessHandler.java
│ │ │ │ ├── CmppClientBusinessHandler.java
│ │ │ │ ├── SgipClientBusinessHandler.java
│ │ │ │ ├── SgipServerBusinessHandler.java
│ │ │ │ ├── SmgpClientBusinessHandler.java
│ │ │ │ └── SmppClientBusinessHandler.java
│ │ │ └── timer
│ │ │ ├── CacheLoaderScheduler.java
│ │ │ ├── ContentTimer.java
│ │ │ ├── CreateTableTask.java
│ │ │ ├── DataManageTask.java
│ │ │ ├── DropTableTask.java
│ │ │ ├── HttpDisposeMo.java
│ │ │ ├── HttpDisposeReport.java
│ │ │ ├── OperatDataBase.java
│ │ │ ├── PlatformSmsStatisticsTask.java
│ │ │ ├── SmsRealTimeStatisticsTask.java
│ │ │ └── alarm
│ │ │ ├── AccountBalanceAlarm.java
│ │ │ ├── AlarmBase.java
│ │ │ ├── AuditSmsTemplateAlarm.java
│ │ │ ├── ChannelBalanceAlarm.java
│ │ │ ├── ChannelReceptionSuccessRateAlarm.java
│ │ │ ├── ChannelReportStatusCodeAlarm.java
│ │ │ ├── ChannelReturnRateAlarm.java
│ │ │ ├── ChannelSubmitSuccessRateAlarm.java
│ │ │ ├── ChannelVelocityAlarm.java
│ │ │ ├── IAlarm.java
│ │ │ ├── ProductReceptionSuccessRateAlarm.java
│ │ │ ├── ProductReturnRateAlarm.java
│ │ │ ├── ProductSubmitSuccessRateAlarm.java
│ │ │ ├── ProductVelocityAlarm.java
│ │ │ ├── SendedApproveInputAlarm.java
│ │ │ ├── ServerStatusAlarm.java
│ │ │ ├── SortQueueDataHeapUpAlarm.java
│ │ │ └── UserNoSubmitSmsAlarm.java
│ │ ├── resources
│ │ │ ├── ExceptionMessages.properties
│ │ │ ├── META-INF
│ │ │ │ └── services
│ │ │ │ └── org.apache.shardingsphere.sharding.spi.ShardingAlgorithm
│ │ │ ├── SystemMessages.properties
│ │ │ ├── business_datasource_config.xml
│ │ │ ├── datasource.properties
│ │ │ ├── log4j2.xml
│ │ │ ├── logback.xml
│ │ │ ├── logback_rocketmq_client.xml
│ │ │ ├── mvc-config.xml
│ │ │ ├── mybatis-config.xml
│ │ │ ├── send_datasource_config.xml
│ │ │ ├── spring_datasource_config.xml
│ │ │ └── spring_xml_config.xml
│ │ └── webapp
│ │ ├── WEB-INF
│ │ │ └── web.xml
│ │ ├── index.jsp
│ │ └── test.jsp
│ ├── sms-system
│ │ ├── pom.xml
│ │ ├── sms-action
│ │ │ ├── pom.xml
│ │ │ └── src
│ │ │ ├── main
│ │ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── hero
│ │ │ │ └── wireless
│ │ │ │ └── web
│ │ │ │ └── action
│ │ │ │ ├── AdminControllerBase.java
│ │ │ │ ├── BaseAdminController.java
│ │ │ │ ├── BaseController.java
│ │ │ │ ├── BasePaginationController.java
│ │ │ │ ├── LoginAdminController.java
│ │ │ │ ├── WebConfiguration.java
│ │ │ │ ├── entity
│ │ │ │ │ └── BaseParamEntity.java
│ │ │ │ ├── interceptor
│ │ │ │ │ ├── AvoidRepeatableCommitAnnotation.java
│ │ │ │ │ ├── AvoidRepeatableCommitAspect.java
│ │ │ │ │ ├── OperateAnnotation.java
│ │ │ │ │ └── OperateLogAspect.java
│ │ │ │ ├── tag
│ │ │ │ │ ├── HeroAgentProductSelectTag.java
│ │ │ │ │ ├── HeroCodeNameTag.java
│ │ │ │ │ ├── HeroCodeSelectTag.java
│ │ │ │ │ ├── HeroCodeSortSelectTag.java
│ │ │ │ │ ├── HeroCountryOperatorTag.java
│ │ │ │ │ ├── HeroEnterpriseSelectTag.java
│ │ │ │ │ ├── HeroEnterpriseUserProductSelectTag.java
│ │ │ │ │ ├── HeroMmsTemplateTag.java
│ │ │ │ │ ├── HeroPageConfigurationTextTag.java
│ │ │ │ │ ├── HeroPlatformSelectTag.java
│ │ │ │ │ ├── HeroProductSelectTag.java
│ │ │ │ │ ├── HeroPropertyTag.java
│ │ │ │ │ └── HeroSmsTemplateTag.java
│ │ │ │ ├── template
│ │ │ │ │ ├── ControllerExecuteTemplate.java
│ │ │ │ │ └── PaginationControllerExecuteTemplate.java
│ │ │ │ └── validator
│ │ │ │ └── MutilInputValidator.java
│ │ │ └── test
│ │ │ └── java
│ │ │ └── org
│ │ │ └── sms
│ │ │ └── action
│ │ │ ├── AppTest.java
│ │ │ ├── ImportBalck.java
│ │ │ └── LocalHost.java
│ │ ├── sms-admin
│ │ │ ├── pom.xml
│ │ │ ├── sms-admin-action
│ │ │ │ ├── pom.xml
│ │ │ │ └── src
│ │ │ │ ├── main
│ │ │ │ │ └── java
│ │ │ │ │ └── com
│ │ │ │ │ └── hero
│ │ │ │ │ └── wireless
│ │ │ │ │ └── web
│ │ │ │ │ └── action
│ │ │ │ │ ├── admin
│ │ │ │ │ │ ├── AccountController.java
│ │ │ │ │ │ ├── BusinessController.java
│ │ │ │ │ │ ├── ChannelProductController.java
│ │ │ │ │ │ ├── ChargeController.java
│ │ │ │ │ │ ├── CustomBusinessController.java
│ │ │ │ │ │ ├── EnterpriseController.java
│ │ │ │ │ │ ├── IndexController.java
│ │ │ │ │ │ ├── LogController.java
│ │ │ │ │ │ ├── NetwayController.java
│ │ │ │ │ │ ├── PlatformController.java
│ │ │ │ │ │ ├── SendedController.java
│ │ │ │ │ │ ├── StatisticController.java
│ │ │ │ │ │ └── TaskController.java
│ │ │ │ │ ├── config
│ │ │ │ │ │ └── InitSystemEnv.java
│ │ │ │ │ ├── interceptor
│ │ │ │ │ │ ├── AdminCsrfInterceptor.java
│ │ │ │ │ │ ├── AdminLimitInterceptor.java
│ │ │ │ │ │ └── LoginAdminInterceptor.java
│ │ │ │ │ └── tag
│ │ │ │ │ ├── HeroContactGroupSelectTag.java
│ │ │ │ │ └── HeroCustomDataSelectTag.java
│ │ │ │ └── test
│ │ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── hero
│ │ │ │ └── wireless
│ │ │ │ ├── AppTest.java
│ │ │ │ ├── ExcelExportTest.java
│ │ │ │ ├── ExcelUtil.java
│ │ │ │ ├── Student.java
│ │ │ │ └── excel
│ │ │ │ ├── BaseEntity.java
│ │ │ │ ├── BaseExample.java
│ │ │ │ ├── DBhepler.java
│ │ │ │ ├── ExcelReader.java
│ │ │ │ ├── ExcelReader222.java
│ │ │ │ ├── IEntity.java
│ │ │ │ ├── MobileArea.java
│ │ │ │ └── Pagination.java
│ │ │ └── sms-admin-web
│ │ │ ├── pom.xml
│ │ │ └── src
│ │ │ └── main
│ │ │ ├── java
│ │ │ │ └── org
│ │ │ │ └── mybatis
│ │ │ │ └── spring
│ │ │ │ └── SqlSessionTemplate.java
│ │ │ ├── resources
│ │ │ │ ├── ExceptionMessages.properties
│ │ │ │ ├── META-INF
│ │ │ │ │ └── services
│ │ │ │ │ └── org.apache.shardingsphere.sharding.spi.ShardingAlgorithm
│ │ │ │ ├── SystemMessages.properties
│ │ │ │ ├── business_datasource_config.xml
│ │ │ │ ├── datasource.properties
│ │ │ │ ├── log4j2.xml
│ │ │ │ ├── logback.xml
│ │ │ │ ├── logback_rocketmq_client.xml
│ │ │ │ ├── mybatis-config.xml
│ │ │ │ ├── send_datasource_config.xml
│ │ │ │ ├── spring_datasource_config.xml
│ │ │ │ ├── spring_web_mvc.xml
│ │ │ │ └── spring_xml_config.xml
│ │ │ └── webapp
│ │ │ ├── META-INF
│ │ │ │ └── MANIFEST.MF
│ │ │ ├── WEB-INF
│ │ │ │ ├── tlds
│ │ │ │ │ └── hero-tags.tld
│ │ │ │ └── web.xml
│ │ │ ├── admin
│ │ │ │ ├── account
│ │ │ │ │ ├── account_add.jsp
│ │ │ │ │ ├── account_list.jsp
│ │ │ │ │ ├── edit_password.jsp
│ │ │ │ │ ├── limit_add.jsp
│ │ │ │ │ ├── limit_bind_list.jsp
│ │ │ │ │ ├── limit_edit.jsp
│ │ │ │ │ ├── limit_list.jsp
│ │ │ │ │ ├── reset_password.jsp
│ │ │ │ │ ├── role_add.jsp
│ │ │ │ │ ├── role_bind_list.jsp
│ │ │ │ │ ├── role_edit.jsp
│ │ │ │ │ └── role_list.jsp
│ │ │ │ ├── agent
│ │ │ │ │ ├── agent_add.jsp
│ │ │ │ │ ├── agent_charge.jsp
│ │ │ │ │ ├── agent_edit.jsp
│ │ │ │ │ ├── agent_fee_add.jsp
│ │ │ │ │ ├── agent_fee_edit.jsp
│ │ │ │ │ ├── agent_fee_list.jsp
│ │ │ │ │ ├── agent_product_list.jsp
│ │ │ │ │ ├── agent_properties_config.jsp
│ │ │ │ │ ├── limit_add.jsp
│ │ │ │ │ ├── limit_bind_list.jsp
│ │ │ │ │ ├── limit_edit.jsp
│ │ │ │ │ ├── limit_list.jsp
│ │ │ │ │ ├── list.jsp
│ │ │ │ │ ├── role_add.jsp
│ │ │ │ │ ├── role_bind_list.jsp
│ │ │ │ │ ├── role_edit.jsp
│ │ │ │ │ ├── role_list.jsp
│ │ │ │ │ └── set_domain.jsp
│ │ │ │ ├── business
│ │ │ │ │ ├── black_add.jsp
│ │ │ │ │ ├── black_list.jsp
│ │ │ │ │ ├── black_pool_add.jsp
│ │ │ │ │ ├── bulk_import_backList.jsp
│ │ │ │ │ ├── bulk_import_whiteList.jsp
│ │ │ │ │ ├── code_add.jsp
│ │ │ │ │ ├── code_edit.jsp
│ │ │ │ │ ├── code_list.jsp
│ │ │ │ │ ├── code_sort_add.jsp
│ │ │ │ │ ├── code_sort_edit.jsp
│ │ │ │ │ ├── code_sort_list.jsp
│ │ │ │ │ ├── edit_code.jsp
│ │ │ │ │ ├── edit_code_sort.jsp
│ │ │ │ │ ├── edit_mobile_area.jsp
│ │ │ │ │ ├── intercept_strategy_add.jsp
│ │ │ │ │ ├── intercept_strategy_edit.jsp
│ │ │ │ │ ├── intercept_strategy_list.jsp
│ │ │ │ │ ├── material_List.jsp
│ │ │ │ │ ├── material_add.jsp
│ │ │ │ │ ├── material_approve.jsp
│ │ │ │ │ ├── mms_select_material.jsp
│ │ │ │ │ ├── mms_template_add.jsp
│ │ │ │ │ ├── mms_template_check.jsp
│ │ │ │ │ ├── mms_template_list.jsp
│ │ │ │ │ ├── mobile_area_add.jsp
│ │ │ │ │ ├── mobile_area_list.jsp
│ │ │ │ │ ├── sensitive_word__import.jsp
│ │ │ │ │ ├── sensitive_word_add.jsp
│ │ │ │ │ ├── sensitive_word_list.jsp
│ │ │ │ │ ├── sensitive_word_pool_add.jsp
│ │ │ │ │ ├── sms_route_add.jsp
│ │ │ │ │ ├── sms_route_edit.jsp
│ │ │ │ │ ├── sms_route_list.jsp
│ │ │ │ │ ├── white_add.jsp
│ │ │ │ │ ├── white_list.jsp
│ │ │ │ │ └── white_pool_add.jsp
│ │ │ │ ├── charge
│ │ │ │ │ ├── charge.jsp
│ │ │ │ │ ├── charge_list.jsp
│ │ │ │ │ ├── edit_pay_type.jsp
│ │ │ │ │ ├── invoice_edit.jsp
│ │ │ │ │ ├── invoice_list.jsp
│ │ │ │ │ ├── open.jsp
│ │ │ │ │ └── open_charge_list.jsp
│ │ │ │ ├── common
│ │ │ │ │ ├── button_action_list.jsp
│ │ │ │ │ ├── common.jsp
│ │ │ │ │ ├── country_operator.jsp
│ │ │ │ │ ├── dynamic_data.jsp
│ │ │ │ │ ├── layui_bottom.jsp
│ │ │ │ │ ├── layui_head.html
│ │ │ │ │ └── money_letter.jsp
│ │ │ │ ├── customize
│ │ │ │ │ ├── error_code_add.jsp
│ │ │ │ │ └── error_code_list.jsp
│ │ │ │ ├── document
│ │ │ │ │ └── responsibility_notification_document.jsp
│ │ │ │ ├── enterprise
│ │ │ │ │ ├── add.jsp
│ │ │ │ │ ├── add_user.jsp
│ │ │ │ │ ├── authenticate.jsp
│ │ │ │ │ ├── bulk_import_smsTemplat.jsp
│ │ │ │ │ ├── edit.jsp
│ │ │ │ │ ├── edit_asrict_rule.jsp
│ │ │ │ │ ├── edit_callback_rule.jsp
│ │ │ │ │ ├── edit_config.jsp
│ │ │ │ │ ├── edit_deduct_rule.jsp
│ │ │ │ │ ├── edit_ip_white.jsp
│ │ │ │ │ ├── edit_limit.jsp
│ │ │ │ │ ├── edit_role.jsp
│ │ │ │ │ ├── edit_user.jsp
│ │ │ │ │ ├── enterprise_user_fee_add.jsp
│ │ │ │ │ ├── enterprise_user_fee_edit.jsp
│ │ │ │ │ ├── enterprise_user_fee_list.jsp
│ │ │ │ │ ├── enterprise_user_international_fee_add.jsp
│ │ │ │ │ ├── enterprise_user_international_fee_edit.jsp
│ │ │ │ │ ├── enterprise_user_international_fee_list.jsp
│ │ │ │ │ ├── enterprise_user_product_send.jsp
│ │ │ │ │ ├── enterprise_user_product_send_file.jsp
│ │ │ │ │ ├── enterprise_user_product_test.jsp
│ │ │ │ │ ├── enterprise_user_property.jsp
│ │ │ │ │ ├── limit_add.jsp
│ │ │ │ │ ├── limit_bind_list.jsp
│ │ │ │ │ ├── limit_list.jsp
│ │ │ │ │ ├── list.jsp
│ │ │ │ │ ├── role_add.jsp
│ │ │ │ │ ├── role_bind_list.jsp
│ │ │ │ │ ├── role_list.jsp
│ │ │ │ │ ├── set_domain.jsp
│ │ │ │ │ ├── sms_template_add.jsp
│ │ │ │ │ ├── sms_template_check.jsp
│ │ │ │ │ ├── sms_template_edit.jsp
│ │ │ │ │ ├── sms_template_list.jsp
│ │ │ │ │ ├── user_link_detail.jsp
│ │ │ │ │ ├── user_list.jsp
│ │ │ │ │ ├── user_submit_speed.jsp
│ │ │ │ │ └── user_submit_speed_total.jsp
│ │ │ │ ├── home
│ │ │ │ │ ├── business_console.jsp
│ │ │ │ │ └── console.jsp
│ │ │ │ ├── index.jsp
│ │ │ │ ├── log
│ │ │ │ │ └── log_list.jsp
│ │ │ │ ├── netway
│ │ │ │ │ ├── channel_add.jsp
│ │ │ │ │ ├── channel_area_limit.jsp
│ │ │ │ │ ├── channel_edit.jsp
│ │ │ │ │ ├── channel_fee_add.jsp
│ │ │ │ │ ├── channel_fee_edit.jsp
│ │ │ │ │ ├── channel_fee_list.jsp
│ │ │ │ │ ├── channel_list.jsp
│ │ │ │ │ ├── cmpp_parameters_config.jsp
│ │ │ │ │ ├── diversion
│ │ │ │ │ │ ├── exclude_keyword_add.jsp
│ │ │ │ │ │ ├── exclude_keyword_import.jsp
│ │ │ │ │ │ ├── exclude_keyword_list.jsp
│ │ │ │ │ │ ├── include_keyword_add.jsp
│ │ │ │ │ │ ├── include_keyword_import.jsp
│ │ │ │ │ │ ├── include_keyword_list.jsp
│ │ │ │ │ │ ├── include_signature_add.jsp
│ │ │ │ │ │ ├── include_signature_edit.jsp
│ │ │ │ │ │ ├── include_signature_import.jsp
│ │ │ │ │ │ ├── include_signature_list.jsp
│ │ │ │ │ │ ├── phoneno_pool_edit.jsp
│ │ │ │ │ │ ├── phoneno_pool_import.jsp
│ │ │ │ │ │ └── phoneno_pool_list.jsp
│ │ │ │ │ ├── http_balance.jsp
│ │ │ │ │ ├── http_parameters_config.jsp
│ │ │ │ │ ├── sgip_parameters_config.jsp
│ │ │ │ │ ├── smgp_parameters_config.jsp
│ │ │ │ │ ├── smpp_parameters_config.jsp
│ │ │ │ │ ├── template_try_2_try.jsp
│ │ │ │ │ └── try_2_try.jsp
│ │ │ │ ├── platform
│ │ │ │ │ ├── add.jsp
│ │ │ │ │ ├── edit.jsp
│ │ │ │ │ └── list.jsp
│ │ │ │ ├── product
│ │ │ │ │ ├── diversion
│ │ │ │ │ │ ├── area_limit_edit.jsp
│ │ │ │ │ │ ├── exclude_keyword_add.jsp
│ │ │ │ │ │ ├── exclude_keyword_edit.jsp
│ │ │ │ │ │ ├── exclude_keyword_import.jsp
│ │ │ │ │ │ ├── exclude_keyword_list.jsp
│ │ │ │ │ │ ├── include_keyword_add.jsp
│ │ │ │ │ │ ├── include_keyword_edit.jsp
│ │ │ │ │ │ ├── include_keyword_import.jsp
│ │ │ │ │ │ ├── include_keyword_list.jsp
│ │ │ │ │ │ ├── include_signature_add.jsp
│ │ │ │ │ │ ├── include_signature_edit.jsp
│ │ │ │ │ │ ├── include_signature_import.jsp
│ │ │ │ │ │ ├── include_signature_list.jsp
│ │ │ │ │ │ ├── interval_limit_edit.jsp
│ │ │ │ │ │ ├── length_limit_edit.jsp
│ │ │ │ │ │ ├── phone_no_check.jsp
│ │ │ │ │ │ ├── phoneno_pool_edit.jsp
│ │ │ │ │ │ ├── phoneno_pool_import.jsp
│ │ │ │ │ │ ├── phoneno_pool_import_del.jsp
│ │ │ │ │ │ ├── phoneno_pool_list.jsp
│ │ │ │ │ │ └── prevent_shield_edit.jsp
│ │ │ │ │ ├── product_add.jsp
│ │ │ │ │ ├── product_channels_add.jsp
│ │ │ │ │ ├── product_channels_edit.jsp
│ │ │ │ │ ├── product_channels_list.jsp
│ │ │ │ │ ├── product_edit.jsp
│ │ │ │ │ └── product_list.jsp
│ │ │ │ ├── sended
│ │ │ │ │ ├── all_sms_log_list.jsp
│ │ │ │ │ ├── approve_input_list.jsp
│ │ │ │ │ ├── batch_appove.jsp
│ │ │ │ │ ├── data_tracking_details.jsp
│ │ │ │ │ ├── error.jsp
│ │ │ │ │ ├── export_file_list.jsp
│ │ │ │ │ ├── inbox_list.jsp
│ │ │ │ │ ├── input_edit.jsp
│ │ │ │ │ ├── input_log_desc.jsp
│ │ │ │ │ ├── input_log_list.jsp
│ │ │ │ │ ├── queue_detail_list.jsp
│ │ │ │ │ ├── report_list.jsp
│ │ │ │ │ ├── report_notify_await_list.jsp
│ │ │ │ │ ├── report_notify_list.jsp
│ │ │ │ │ ├── report_unknown_list.jsp
│ │ │ │ │ ├── sms_data_tracking.jsp
│ │ │ │ │ ├── sms_input_add_template.jsp
│ │ │ │ │ ├── sms_send_time.jsp
│ │ │ │ │ ├── submit_await_list.jsp
│ │ │ │ │ ├── submit_details.jsp
│ │ │ │ │ └── submit_list.jsp
│ │ │ │ ├── statistic
│ │ │ │ │ ├── history_statistic_list.jsp
│ │ │ │ │ ├── input_log_statistics.jsp
│ │ │ │ │ ├── platform_sms_statistic.jsp
│ │ │ │ │ ├── send_faild_native_status_details.jsp
│ │ │ │ │ ├── send_statistics.jsp
│ │ │ │ │ ├── sms_real_time_statistics.jsp
│ │ │ │ │ ├── sms_sended_speed_statistic.jsp
│ │ │ │ │ ├── three_days_statistic.jsp
│ │ │ │ │ └── unkown_statistic_list.jsp
│ │ │ │ └── systemsetup
│ │ │ │ ├── alarm_add.jsp
│ │ │ │ ├── alarm_edit.jsp
│ │ │ │ ├── alarm_list.jsp
│ │ │ │ ├── alarm_log_detail.jsp
│ │ │ │ ├── alarm_log_list.jsp
│ │ │ │ ├── alarm_template.jsp
│ │ │ │ ├── refresh_timer_task.jsp
│ │ │ │ ├── sys_base_setup_list.jsp
│ │ │ │ ├── sys_env_setup_list.jsp
│ │ │ │ ├── sys_page_configuration.jsp
│ │ │ │ └── sys_performance_setup_list.jsp
│ │ │ ├── common
│ │ │ │ ├── button_action_list.jsp
│ │ │ │ ├── common.jsp
│ │ │ │ ├── layui_common.html
│ │ │ │ └── page.jsp
│ │ │ ├── css
│ │ │ │ ├── index.css
│ │ │ │ └── rcs
│ │ │ │ ├── bootstrap.min.css
│ │ │ │ ├── font
│ │ │ │ │ ├── FontAwesome.otf
│ │ │ │ │ ├── fontawesome-webfont.eot
│ │ │ │ │ ├── fontawesome-webfont.svg
│ │ │ │ │ ├── fontawesome-webfont.ttf
│ │ │ │ │ └── fontawesome-webfont.woff
│ │ │ │ ├── font-awesome.min.css
│ │ │ │ ├── fonts
│ │ │ │ │ ├── glyphicons-halflings-regular.eot
│ │ │ │ │ ├── glyphicons-halflings-regular.svg
│ │ │ │ │ ├── glyphicons-halflings-regular.ttf
│ │ │ │ │ ├── glyphicons-halflings-regular.woff
│ │ │ │ │ └── glyphicons-halflings-regular.woff2
│ │ │ │ ├── images
│ │ │ │ │ ├── keyboard.png
│ │ │ │ │ └── user_guide.jpg
│ │ │ │ └── wx-custom.css
│ │ │ ├── error
│ │ │ │ └── exception.jsp
│ │ │ ├── index.jsp
│ │ │ ├── js
│ │ │ │ ├── common
│ │ │ │ │ ├── echarts_common.js
│ │ │ │ │ ├── history_common.js
│ │ │ │ │ └── rcs_common.js
│ │ │ │ ├── date-fmt.js
│ │ │ │ ├── form.js
│ │ │ │ ├── index.js
│ │ │ │ ├── jquery-3.4.1.min.js
│ │ │ │ ├── jquery-form.js
│ │ │ │ ├── jsencrypt
│ │ │ │ │ ├── jsencrypt.min.js
│ │ │ │ │ ├── jsencrypt.min.js.LICENSE.txt
│ │ │ │ │ └── rsakey.js
│ │ │ │ └── rcs
│ │ │ │ ├── bootstrap.min.js
│ │ │ │ └── menu.js
│ │ │ ├── layuiadmin
│ │ │ │ ├── config.js
│ │ │ │ ├── extends
│ │ │ │ │ ├── authtree.js
│ │ │ │ │ ├── formExt.js
│ │ │ │ │ ├── layuiExt.css
│ │ │ │ │ └── tableExt.js
│ │ │ │ ├── layui
│ │ │ │ │ ├── css
│ │ │ │ │ │ ├── layui.css
│ │ │ │ │ │ ├── layui.mobile.css
│ │ │ │ │ │ └── modules
│ │ │ │ │ │ ├── code.css
│ │ │ │ │ │ ├── laydate
│ │ │ │ │ │ │ └── default
│ │ │ │ │ │ │ ├── font.css
│ │ │ │ │ │ │ └── laydate.css
│ │ │ │ │ │ ├── layer
│ │ │ │ │ │ │ └── default
│ │ │ │ │ │ │ ├── icon-ext.png
│ │ │ │ │ │ │ ├── icon.png
│ │ │ │ │ │ │ ├── layer.css
│ │ │ │ │ │ │ ├── loading-0.gif
│ │ │ │ │ │ │ ├── loading-1.gif
│ │ │ │ │ │ │ └── loading-2.gif
│ │ │ │ │ │ └── layim
│ │ │ │ │ │ ├── html
│ │ │ │ │ │ │ ├── chatlog.html
│ │ │ │ │ │ │ ├── find.html
│ │ │ │ │ │ │ ├── getmsg.json
│ │ │ │ │ │ │ └── msgbox.html
│ │ │ │ │ │ ├── layim.css
│ │ │ │ │ │ ├── mobile
│ │ │ │ │ │ │ └── layim.css
│ │ │ │ │ │ ├── skin
│ │ │ │ │ │ │ ├── 1.jpg
│ │ │ │ │ │ │ ├── 2.jpg
│ │ │ │ │ │ │ ├── 3.jpg
│ │ │ │ │ │ │ ├── 4.jpg
│ │ │ │ │ │ │ ├── 5.jpg
│ │ │ │ │ │ │ └── logo.jpg
│ │ │ │ │ │ └── voice
│ │ │ │ │ │ └── default.mp3
│ │ │ │ │ ├── font
│ │ │ │ │ │ ├── iconfont.eot
│ │ │ │ │ │ ├── iconfont.svg
│ │ │ │ │ │ ├── iconfont.ttf
│ │ │ │ │ │ ├── iconfont.woff
│ │ │ │ │ │ └── iconfont.woff2
│ │ │ │ │ ├── images
│ │ │ │ │ │ └── face
│ │ │ │ │ │ ├── 0.gif
│ │ │ │ │ │ ├── 1.gif
│ │ │ │ │ │ ├── 10.gif
│ │ │ │ │ │ ├── 11.gif
│ │ │ │ │ │ ├── 12.gif
│ │ │ │ │ │ ├── 13.gif
│ │ │ │ │ │ ├── 14.gif
│ │ │ │ │ │ ├── 15.gif
│ │ │ │ │ │ ├── 16.gif
│ │ │ │ │ │ ├── 17.gif
│ │ │ │ │ │ ├── 18.gif
│ │ │ │ │ │ ├── 19.gif
│ │ │ │ │ │ ├── 2.gif
│ │ │ │ │ │ ├── 20.gif
│ │ │ │ │ │ ├── 21.gif
│ │ │ │ │ │ ├── 22.gif
│ │ │ │ │ │ ├── 23.gif
│ │ │ │ │ │ ├── 24.gif
│ │ │ │ │ │ ├── 25.gif
│ │ │ │ │ │ ├── 26.gif
│ │ │ │ │ │ ├── 27.gif
│ │ │ │ │ │ ├── 28.gif
│ │ │ │ │ │ ├── 29.gif
│ │ │ │ │ │ ├── 3.gif
│ │ │ │ │ │ ├── 30.gif
│ │ │ │ │ │ ├── 31.gif
│ │ │ │ │ │ ├── 32.gif
│ │ │ │ │ │ ├── 33.gif
│ │ │ │ │ │ ├── 34.gif
│ │ │ │ │ │ ├── 35.gif
│ │ │ │ │ │ ├── 36.gif
│ │ │ │ │ │ ├── 37.gif
│ │ │ │ │ │ ├── 38.gif
│ │ │ │ │ │ ├── 39.gif
│ │ │ │ │ │ ├── 4.gif
│ │ │ │ │ │ ├── 40.gif
│ │ │ │ │ │ ├── 41.gif
│ │ │ │ │ │ ├── 42.gif
│ │ │ │ │ │ ├── 43.gif
│ │ │ │ │ │ ├── 44.gif
│ │ │ │ │ │ ├── 45.gif
│ │ │ │ │ │ ├── 46.gif
│ │ │ │ │ │ ├── 47.gif
│ │ │ │ │ │ ├── 48.gif
│ │ │ │ │ │ ├── 49.gif
│ │ │ │ │ │ ├── 5.gif
│ │ │ │ │ │ ├── 50.gif
│ │ │ │ │ │ ├── 51.gif
│ │ │ │ │ │ ├── 52.gif
│ │ │ │ │ │ ├── 53.gif
│ │ │ │ │ │ ├── 54.gif
│ │ │ │ │ │ ├── 55.gif
│ │ │ │ │ │ ├── 56.gif
│ │ │ │ │ │ ├── 57.gif
│ │ │ │ │ │ ├── 58.gif
│ │ │ │ │ │ ├── 59.gif
│ │ │ │ │ │ ├── 6.gif
│ │ │ │ │ │ ├── 60.gif
│ │ │ │ │ │ ├── 61.gif
│ │ │ │ │ │ ├── 62.gif
│ │ │ │ │ │ ├── 63.gif
│ │ │ │ │ │ ├── 64.gif
│ │ │ │ │ │ ├── 65.gif
│ │ │ │ │ │ ├── 66.gif
│ │ │ │ │ │ ├── 67.gif
│ │ │ │ │ │ ├── 68.gif
│ │ │ │ │ │ ├── 69.gif
│ │ │ │ │ │ ├── 7.gif
│ │ │ │ │ │ ├── 70.gif
│ │ │ │ │ │ ├── 71.gif
│ │ │ │ │ │ ├── 8.gif
│ │ │ │ │ │ └── 9.gif
│ │ │ │ │ ├── lay
│ │ │ │ │ │ ├── all-mobile.js
│ │ │ │ │ │ ├── all.js
│ │ │ │ │ │ └── modules
│ │ │ │ │ │ ├── carousel.js
│ │ │ │ │ │ ├── code.js
│ │ │ │ │ │ ├── colorpicker.js
│ │ │ │ │ │ ├── element.js
│ │ │ │ │ │ ├── flow.js
│ │ │ │ │ │ ├── form.js
│ │ │ │ │ │ ├── jquery.js
│ │ │ │ │ │ ├── laydate.js
│ │ │ │ │ │ ├── layedit.js
│ │ │ │ │ │ ├── layer.js
│ │ │ │ │ │ ├── layim.js
│ │ │ │ │ │ ├── laypage.js
│ │ │ │ │ │ ├── laytpl.js
│ │ │ │ │ │ ├── mobile
│ │ │ │ │ │ │ ├── layer-mobile.js
│ │ │ │ │ │ │ ├── layim-mobile-open.js
│ │ │ │ │ │ │ ├── layim-mobile.js
│ │ │ │ │ │ │ ├── upload-mobile.js
│ │ │ │ │ │ │ └── zepto.js
│ │ │ │ │ │ ├── mobile.js
│ │ │ │ │ │ ├── rate.js
│ │ │ │ │ │ ├── slider.js
│ │ │ │ │ │ ├── table.js
│ │ │ │ │ │ ├── transfer.js
│ │ │ │ │ │ ├── tree.js
│ │ │ │ │ │ ├── upload.js
│ │ │ │ │ │ └── util.js
│ │ │ │ │ ├── layui.all.js
│ │ │ │ │ └── layui.js
│ │ │ │ ├── lib
│ │ │ │ │ ├── admin.js
│ │ │ │ │ ├── extend
│ │ │ │ │ │ ├── echarts.js
│ │ │ │ │ │ ├── echarts.min.js
│ │ │ │ │ │ └── echartsTheme.js
│ │ │ │ │ ├── index.js
│ │ │ │ │ └── view.js
│ │ │ │ ├── modules
│ │ │ │ │ ├── common.js
│ │ │ │ │ ├── console.js
│ │ │ │ │ ├── contlist.js
│ │ │ │ │ ├── forum.js
│ │ │ │ │ ├── im.js
│ │ │ │ │ ├── message.js
│ │ │ │ │ ├── sample.js
│ │ │ │ │ ├── senior.js
│ │ │ │ │ ├── set.js
│ │ │ │ │ ├── user.js
│ │ │ │ │ ├── useradmin.js
│ │ │ │ │ └── workorder.js
│ │ │ │ ├── style
│ │ │ │ │ ├── admin.css
│ │ │ │ │ ├── login.css
│ │ │ │ │ ├── res
│ │ │ │ │ │ ├── bg-none.jpg
│ │ │ │ │ │ ├── layui-logo.jpg
│ │ │ │ │ │ ├── logo-black.png
│ │ │ │ │ │ ├── logo.png
│ │ │ │ │ │ └── template
│ │ │ │ │ │ ├── character.jpg
│ │ │ │ │ │ ├── huge.jpg
│ │ │ │ │ │ └── portrait.png
│ │ │ │ │ └── template.css
│ │ │ │ └── tpl
│ │ │ │ ├── layim
│ │ │ │ │ └── demo.html
│ │ │ │ ├── system
│ │ │ │ │ ├── about.html
│ │ │ │ │ ├── get.html
│ │ │ │ │ ├── more.html
│ │ │ │ │ ├── theme.html
│ │ │ │ │ └── 说明.txt
│ │ │ │ └── 说明.txt
│ │ │ ├── public
│ │ │ │ ├── admin
│ │ │ │ │ └── login.jsp
│ │ │ │ ├── css
│ │ │ │ │ ├── bootstrap.css
│ │ │ │ │ ├── login.css
│ │ │ │ │ ├── reset.css
│ │ │ │ │ ├── style.css
│ │ │ │ │ └── ui-lib.css
│ │ │ │ └── images
│ │ │ │ ├── 01.png
│ │ │ │ ├── 404.png
│ │ │ │ ├── admin
│ │ │ │ │ ├── mbsh.svg
│ │ │ │ │ ├── qycz.svg
│ │ │ │ │ ├── qyrz.svg
│ │ │ │ │ ├── scsh.svg
│ │ │ │ │ ├── xian.png
│ │ │ │ │ └── zanwushuju.png
│ │ │ │ ├── audioPlayButton.png
│ │ │ │ ├── body-ds.jpg
│ │ │ │ ├── fmls-down.png
│ │ │ │ ├── form-btn-login.png
│ │ │ │ ├── form-ds.png
│ │ │ │ ├── form-input-icon-paw.png
│ │ │ │ ├── form-input-icon-tip.png
│ │ │ │ ├── form-input-icon-user.png
│ │ │ │ ├── form-input-span.png
│ │ │ │ ├── form-input-vcode.png
│ │ │ │ ├── goologo.jpg
│ │ │ │ ├── jz-logo.png
│ │ │ │ ├── language-ds.png
│ │ │ │ ├── left_pic.png
│ │ │ │ ├── logo-hr.png
│ │ │ │ ├── main-ds.jpg
│ │ │ │ ├── main-ds.png
│ │ │ │ ├── newlogo.png
│ │ │ │ ├── pass_def.png
│ │ │ │ ├── pass_sel.png
│ │ │ │ ├── qyf-logo.png
│ │ │ │ ├── shape_bl.png
│ │ │ │ ├── user_def.png
│ │ │ │ ├── user_sel.png
│ │ │ │ └── videoPlayButton.png
│ │ │ └── test.jsp
│ │ ├── sms-agent
│ │ │ ├── pom.xml
│ │ │ ├── sms-agent-action
│ │ │ │ ├── pom.xml
│ │ │ │ └── src
│ │ │ │ └── main
│ │ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── hero
│ │ │ │ └── wireless
│ │ │ │ └── web
│ │ │ │ └── action
│ │ │ │ ├── BaseAgentController.java
│ │ │ │ ├── LoginAgentController.java
│ │ │ │ ├── admin
│ │ │ │ │ ├── AgentController.java
│ │ │ │ │ ├── BusinessController.java
│ │ │ │ │ ├── EnterpriseController.java
│ │ │ │ │ ├── FinanceController.java
│ │ │ │ │ ├── IndexController.java
│ │ │ │ │ ├── SendedController.java
│ │ │ │ │ └── config
│ │ │ │ │ ├── InitSystemEnv.java
│ │ │ │ │ └── MenuInfo.java
│ │ │ │ ├── interceptor
│ │ │ │ │ ├── AgentCsrfInterceptor.java
│ │ │ │ │ ├── AgentLimitInterceptor.java
│ │ │ │ │ ├── LoginAgentInterceptor.java
│ │ │ │ │ └── OperateAnnotation.java
│ │ │ │ └── tag
│ │ │ │ ├── HeroContactGroupSelectTag.java
│ │ │ │ └── HeroCustomDataSelectTag.java
│ │ │ └── sms-agent-web
│ │ │ ├── pom.xml
│ │ │ └── src
│ │ │ └── main
│ │ │ ├── java
│ │ │ │ └── org
│ │ │ │ └── mybatis
│ │ │ │ └── spring
│ │ │ │ └── SqlSessionTemplate.java
│ │ │ ├── resources
│ │ │ │ ├── ExceptionMessages.properties
│ │ │ │ ├── META-INF
│ │ │ │ │ └── services
│ │ │ │ │ └── org.apache.shardingsphere.sharding.spi.ShardingAlgorithm
│ │ │ │ ├── SystemMessages.properties
│ │ │ │ ├── business_datasource_config.xml
│ │ │ │ ├── cassandra.properties
│ │ │ │ ├── datasource.properties
│ │ │ │ ├── log4j2.xml
│ │ │ │ ├── logback.xml
│ │ │ │ ├── logback_rocketmq_client.xml
│ │ │ │ ├── mybatis-config.xml
│ │ │ │ ├── redis.properties
│ │ │ │ ├── send_datasource_config.xml
│ │ │ │ ├── spring_datasource_config.xml
│ │ │ │ ├── spring_web_mvc.xml
│ │ │ │ └── spring_xml_config.xml
│ │ │ └── webapp
│ │ │ ├── WEB-INF
│ │ │ │ ├── tlds
│ │ │ │ │ └── hero-tags.tld
│ │ │ │ └── web.xml
│ │ │ ├── admin
│ │ │ │ ├── agent
│ │ │ │ │ ├── agent_fee_list.jsp
│ │ │ │ │ └── edit_password.jsp
│ │ │ │ ├── charge
│ │ │ │ │ ├── agent_charge_list.jsp
│ │ │ │ │ ├── agent_enterpriseUser_charge_list.jsp
│ │ │ │ │ ├── charge.jsp
│ │ │ │ │ ├── input_log_statistics.jsp
│ │ │ │ │ ├── send_statistics.jsp
│ │ │ │ │ ├── sms_daily_statistic_list.jsp
│ │ │ │ │ └── sms_real_time_statistics.jsp
│ │ │ │ ├── document
│ │ │ │ │ └── responsibility_notification_document.jsp
│ │ │ │ ├── enterprise
│ │ │ │ │ ├── add_user.jsp
│ │ │ │ │ ├── edit_user.jsp
│ │ │ │ │ ├── enterprise_add.jsp
│ │ │ │ │ ├── enterprise_edit.jsp
│ │ │ │ │ ├── enterprise_list.jsp
│ │ │ │ │ ├── enterprise_user_fee_add.jsp
│ │ │ │ │ ├── enterprise_user_fee_edit.jsp
│ │ │ │ │ ├── enterprise_user_fee_list.jsp
│ │ │ │ │ └── user_list.jsp
│ │ │ │ ├── history
│ │ │ │ │ ├── input_his_log.jsp
│ │ │ │ │ ├── report_his_log.jsp
│ │ │ │ │ ├── submit_his_details.jsp
│ │ │ │ │ └── submit_his_log.jsp
│ │ │ │ ├── home
│ │ │ │ │ └── console.jsp
│ │ │ │ ├── index
│ │ │ │ │ ├── admin_index.jsp
│ │ │ │ │ └── mini_index.jsp
│ │ │ │ ├── rcs
│ │ │ │ │ ├── rcs_inbox_list.jsp
│ │ │ │ │ ├── rcs_input_log_list.jsp
│ │ │ │ │ ├── rcs_material_list.jsp
│ │ │ │ │ ├── rcs_records_detail.jsp
│ │ │ │ │ └── rcs_records_list.jsp
│ │ │ │ └── sended
│ │ │ │ ├── export_file_list.jsp
│ │ │ │ ├── inbox_list.jsp
│ │ │ │ ├── input_log_list.jsp
│ │ │ │ ├── report_list.jsp
│ │ │ │ ├── report_unknown_list.jsp
│ │ │ │ ├── submit_details.jsp
│ │ │ │ └── submit_list.jsp
│ │ │ ├── common
│ │ │ │ ├── button_action_list.jsp
│ │ │ │ ├── common.jsp
│ │ │ │ ├── country_operator.jsp
│ │ │ │ ├── layui_bottom.jsp
│ │ │ │ ├── layui_common.jsp
│ │ │ │ ├── mms_preview.jsp
│ │ │ │ └── money_letter.jsp
│ │ │ ├── error
│ │ │ │ └── exception.jsp
│ │ │ ├── js
│ │ │ │ ├── ajaxRequest.js
│ │ │ │ ├── common
│ │ │ │ │ └── rcs_common.js
│ │ │ │ ├── date-fmt.js
│ │ │ │ ├── index.js
│ │ │ │ ├── jquery-3.4.1.min.js
│ │ │ │ ├── jquery-form.js
│ │ │ │ ├── jquery-validation-1.19.0
│ │ │ │ │ └── dist
│ │ │ │ │ ├── additional-methods.js
│ │ │ │ │ ├── additional-methods.min.js
│ │ │ │ │ ├── jquery.validate.js
│ │ │ │ │ ├── jquery.validate.min.js
│ │ │ │ │ └── localization
│ │ │ │ │ ├── messages_ar.js
│ │ │ │ │ ├── messages_ar.min.js
│ │ │ │ │ ├── messages_az.js
│ │ │ │ │ ├── messages_az.min.js
│ │ │ │ │ ├── messages_bg.js
│ │ │ │ │ ├── messages_bg.min.js
│ │ │ │ │ ├── messages_bn_BD.js
│ │ │ │ │ ├── messages_bn_BD.min.js
│ │ │ │ │ ├── messages_ca.js
│ │ │ │ │ ├── messages_ca.min.js
│ │ │ │ │ ├── messages_cs.js
│ │ │ │ │ ├── messages_cs.min.js
│ │ │ │ │ ├── messages_da.js
│ │ │ │ │ ├── messages_da.min.js
│ │ │ │ │ ├── messages_de.js
│ │ │ │ │ ├── messages_de.min.js
│ │ │ │ │ ├── messages_el.js
│ │ │ │ │ ├── messages_el.min.js
│ │ │ │ │ ├── messages_es.js
│ │ │ │ │ ├── messages_es.min.js
│ │ │ │ │ ├── messages_es_AR.js
│ │ │ │ │ ├── messages_es_AR.min.js
│ │ │ │ │ ├── messages_es_PE.js
│ │ │ │ │ ├── messages_es_PE.min.js
│ │ │ │ │ ├── messages_et.js
│ │ │ │ │ ├── messages_et.min.js
│ │ │ │ │ ├── messages_eu.js
│ │ │ │ │ ├── messages_eu.min.js
│ │ │ │ │ ├── messages_fa.js
│ │ │ │ │ ├── messages_fa.min.js
│ │ │ │ │ ├── messages_fi.js
│ │ │ │ │ ├── messages_fi.min.js
│ │ │ │ │ ├── messages_fr.js
│ │ │ │ │ ├── messages_fr.min.js
│ │ │ │ │ ├── messages_ge.js
│ │ │ │ │ ├── messages_ge.min.js
│ │ │ │ │ ├── messages_gl.js
│ │ │ │ │ ├── messages_gl.min.js
│ │ │ │ │ ├── messages_he.js
│ │ │ │ │ ├── messages_he.min.js
│ │ │ │ │ ├── messages_hr.js
│ │ │ │ │ ├── messages_hr.min.js
│ │ │ │ │ ├── messages_hu.js
│ │ │ │ │ ├── messages_hu.min.js
│ │ │ │ │ ├── messages_hy_AM.js
│ │ │ │ │ ├── messages_hy_AM.min.js
│ │ │ │ │ ├── messages_id.js
│ │ │ │ │ ├── messages_id.min.js
│ │ │ │ │ ├── messages_is.js
│ │ │ │ │ ├── messages_is.min.js
│ │ │ │ │ ├── messages_it.js
│ │ │ │ │ ├── messages_it.min.js
│ │ │ │ │ ├── messages_ja.js
│ │ │ │ │ ├── messages_ja.min.js
│ │ │ │ │ ├── messages_ka.js
│ │ │ │ │ ├── messages_ka.min.js
│ │ │ │ │ ├── messages_kk.js
│ │ │ │ │ ├── messages_kk.min.js
│ │ │ │ │ ├── messages_ko.js
│ │ │ │ │ ├── messages_ko.min.js
│ │ │ │ │ ├── messages_lt.js
│ │ │ │ │ ├── messages_lt.min.js
│ │ │ │ │ ├── messages_lv.js
│ │ │ │ │ ├── messages_lv.min.js
│ │ │ │ │ ├── messages_mk.js
│ │ │ │ │ ├── messages_mk.min.js
│ │ │ │ │ ├── messages_my.js
│ │ │ │ │ ├── messages_my.min.js
│ │ │ │ │ ├── messages_nl.js
│ │ │ │ │ ├── messages_nl.min.js
│ │ │ │ │ ├── messages_no.js
│ │ │ │ │ ├── messages_no.min.js
│ │ │ │ │ ├── messages_pl.js
│ │ │ │ │ ├── messages_pl.min.js
│ │ │ │ │ ├── messages_pt_BR.js
│ │ │ │ │ ├── messages_pt_BR.min.js
│ │ │ │ │ ├── messages_pt_PT.js
│ │ │ │ │ ├── messages_pt_PT.min.js
│ │ │ │ │ ├── messages_ro.js
│ │ │ │ │ ├── messages_ro.min.js
│ │ │ │ │ ├── messages_ru.js
│ │ │ │ │ ├── messages_ru.min.js
│ │ │ │ │ ├── messages_sd.js
│ │ │ │ │ ├── messages_sd.min.js
│ │ │ │ │ ├── messages_si.js
│ │ │ │ │ ├── messages_si.min.js
│ │ │ │ │ ├── messages_sk.js
│ │ │ │ │ ├── messages_sk.min.js
│ │ │ │ │ ├── messages_sl.js
│ │ │ │ │ ├── messages_sl.min.js
│ │ │ │ │ ├── messages_sr.js
│ │ │ │ │ ├── messages_sr.min.js
│ │ │ │ │ ├── messages_sr_lat.js
│ │ │ │ │ ├── messages_sr_lat.min.js
│ │ │ │ │ ├── messages_sv.js
│ │ │ │ │ ├── messages_sv.min.js
│ │ │ │ │ ├── messages_th.js
│ │ │ │ │ ├── messages_th.min.js
│ │ │ │ │ ├── messages_tj.js
│ │ │ │ │ ├── messages_tj.min.js
│ │ │ │ │ ├── messages_tr.js
│ │ │ │ │ ├── messages_tr.min.js
│ │ │ │ │ ├── messages_uk.js
│ │ │ │ │ ├── messages_uk.min.js
│ │ │ │ │ ├── messages_ur.js
│ │ │ │ │ ├── messages_ur.min.js
│ │ │ │ │ ├── messages_vi.js
│ │ │ │ │ ├── messages_vi.min.js
│ │ │ │ │ ├── messages_zh.js
│ │ │ │ │ ├── messages_zh.min.js
│ │ │ │ │ ├── messages_zh_TW.js
│ │ │ │ │ ├── messages_zh_TW.min.js
│ │ │ │ │ ├── methods_de.js
│ │ │ │ │ ├── methods_de.min.js
│ │ │ │ │ ├── methods_es_CL.js
│ │ │ │ │ ├── methods_es_CL.min.js
│ │ │ │ │ ├── methods_fi.js
│ │ │ │ │ ├── methods_fi.min.js
│ │ │ │ │ ├── methods_it.js
│ │ │ │ │ ├── methods_it.min.js
│ │ │ │ │ ├── methods_nl.js
│ │ │ │ │ ├── methods_nl.min.js
│ │ │ │ │ ├── methods_pt.js
│ │ │ │ │ └── methods_pt.min.js
│ │ │ │ ├── jsencrypt
│ │ │ │ │ ├── jsencrypt.min.js
│ │ │ │ │ ├── jsencrypt.min.js.LICENSE.txt
│ │ │ │ │ └── rsakey.js
│ │ │ │ └── layui-ext
│ │ │ │ ├── authtree.js
│ │ │ │ ├── formExt.js
│ │ │ │ ├── layuiExt.css
│ │ │ │ └── tableExt.js
│ │ │ ├── layuiadmin
│ │ │ │ ├── config.js
│ │ │ │ ├── layui
│ │ │ │ │ ├── css
│ │ │ │ │ │ ├── layui.css
│ │ │ │ │ │ ├── layui.mobile.css
│ │ │ │ │ │ └── modules
│ │ │ │ │ │ ├── code.css
│ │ │ │ │ │ ├── laydate
│ │ │ │ │ │ │ └── default
│ │ │ │ │ │ │ └── laydate.css
│ │ │ │ │ │ └── layer
│ │ │ │ │ │ └── default
│ │ │ │ │ │ ├── icon-ext.png
│ │ │ │ │ │ ├── icon.png
│ │ │ │ │ │ ├── layer.css
│ │ │ │ │ │ ├── loading-0.gif
│ │ │ │ │ │ ├── loading-1.gif
│ │ │ │ │ │ └── loading-2.gif
│ │ │ │ │ ├── font
│ │ │ │ │ │ ├── iconfont.eot
│ │ │ │ │ │ ├── iconfont.svg
│ │ │ │ │ │ ├── iconfont.ttf
│ │ │ │ │ │ ├── iconfont.woff
│ │ │ │ │ │ └── iconfont.woff2
│ │ │ │ │ ├── images
│ │ │ │ │ │ └── face
│ │ │ │ │ │ ├── 0.gif
│ │ │ │ │ │ ├── 1.gif
│ │ │ │ │ │ ├── 10.gif
│ │ │ │ │ │ ├── 11.gif
│ │ │ │ │ │ ├── 12.gif
│ │ │ │ │ │ ├── 13.gif
│ │ │ │ │ │ ├── 14.gif
│ │ │ │ │ │ ├── 15.gif
│ │ │ │ │ │ ├── 16.gif
│ │ │ │ │ │ ├── 17.gif
│ │ │ │ │ │ ├── 18.gif
│ │ │ │ │ │ ├── 19.gif
│ │ │ │ │ │ ├── 2.gif
│ │ │ │ │ │ ├── 20.gif
│ │ │ │ │ │ ├── 21.gif
│ │ │ │ │ │ ├── 22.gif
│ │ │ │ │ │ ├── 23.gif
│ │ │ │ │ │ ├── 24.gif
│ │ │ │ │ │ ├── 25.gif
│ │ │ │ │ │ ├── 26.gif
│ │ │ │ │ │ ├── 27.gif
│ │ │ │ │ │ ├── 28.gif
│ │ │ │ │ │ ├── 29.gif
│ │ │ │ │ │ ├── 3.gif
│ │ │ │ │ │ ├── 30.gif
│ │ │ │ │ │ ├── 31.gif
│ │ │ │ │ │ ├── 32.gif
│ │ │ │ │ │ ├── 33.gif
│ │ │ │ │ │ ├── 34.gif
│ │ │ │ │ │ ├── 35.gif
│ │ │ │ │ │ ├── 36.gif
│ │ │ │ │ │ ├── 37.gif
│ │ │ │ │ │ ├── 38.gif
│ │ │ │ │ │ ├── 39.gif
│ │ │ │ │ │ ├── 4.gif
│ │ │ │ │ │ ├── 40.gif
│ │ │ │ │ │ ├── 41.gif
│ │ │ │ │ │ ├── 42.gif
│ │ │ │ │ │ ├── 43.gif
│ │ │ │ │ │ ├── 44.gif
│ │ │ │ │ │ ├── 45.gif
│ │ │ │ │ │ ├── 46.gif
│ │ │ │ │ │ ├── 47.gif
│ │ │ │ │ │ ├── 48.gif
│ │ │ │ │ │ ├── 49.gif
│ │ │ │ │ │ ├── 5.gif
│ │ │ │ │ │ ├── 50.gif
│ │ │ │ │ │ ├── 51.gif
│ │ │ │ │ │ ├── 52.gif
│ │ │ │ │ │ ├── 53.gif
│ │ │ │ │ │ ├── 54.gif
│ │ │ │ │ │ ├── 55.gif
│ │ │ │ │ │ ├── 56.gif
│ │ │ │ │ │ ├── 57.gif
│ │ │ │ │ │ ├── 58.gif
│ │ │ │ │ │ ├── 59.gif
│ │ │ │ │ │ ├── 6.gif
│ │ │ │ │ │ ├── 60.gif
│ │ │ │ │ │ ├── 61.gif
│ │ │ │ │ │ ├── 62.gif
│ │ │ │ │ │ ├── 63.gif
│ │ │ │ │ │ ├── 64.gif
│ │ │ │ │ │ ├── 65.gif
│ │ │ │ │ │ ├── 66.gif
│ │ │ │ │ │ ├── 67.gif
│ │ │ │ │ │ ├── 68.gif
│ │ │ │ │ │ ├── 69.gif
│ │ │ │ │ │ ├── 7.gif
│ │ │ │ │ │ ├── 70.gif
│ │ │ │ │ │ ├── 71.gif
│ │ │ │ │ │ ├── 8.gif
│ │ │ │ │ │ └── 9.gif
│ │ │ │ │ ├── lay
│ │ │ │ │ │ └── modules
│ │ │ │ │ │ ├── carousel.js
│ │ │ │ │ │ ├── code.js
│ │ │ │ │ │ ├── colorpicker.js
│ │ │ │ │ │ ├── element.js
│ │ │ │ │ │ ├── flow.js
│ │ │ │ │ │ ├── form.js
│ │ │ │ │ │ ├── jquery.js
│ │ │ │ │ │ ├── laydate.js
│ │ │ │ │ │ ├── layedit.js
│ │ │ │ │ │ ├── layer.js
│ │ │ │ │ │ ├── laypage.js
│ │ │ │ │ │ ├── laytpl.js
│ │ │ │ │ │ ├── mobile.js
│ │ │ │ │ │ ├── rate.js
│ │ │ │ │ │ ├── slider.js
│ │ │ │ │ │ ├── table.js
│ │ │ │ │ │ ├── transfer.js
│ │ │ │ │ │ ├── tree.js
│ │ │ │ │ │ ├── upload.js
│ │ │ │ │ │ └── util.js
│ │ │ │ │ ├── layui.all.js
│ │ │ │ │ └── layui.js
│ │ │ │ ├── lib
│ │ │ │ │ ├── admin.js
│ │ │ │ │ ├── extend
│ │ │ │ │ │ ├── echarts.js
│ │ │ │ │ │ └── echartsTheme.js
│ │ │ │ │ ├── index.js
│ │ │ │ │ └── view.js
│ │ │ │ ├── modules
│ │ │ │ │ ├── common.js
│ │ │ │ │ ├── console.js
│ │ │ │ │ ├── contlist.js
│ │ │ │ │ ├── forum.js
│ │ │ │ │ ├── im.js
│ │ │ │ │ ├── message.js
│ │ │ │ │ ├── sample.js
│ │ │ │ │ ├── senior.js
│ │ │ │ │ ├── set.js
│ │ │ │ │ ├── user.js
│ │ │ │ │ ├── useradmin.js
│ │ │ │ │ └── workorder.js
│ │ │ │ ├── style
│ │ │ │ │ ├── admin.css
│ │ │ │ │ ├── login.css
│ │ │ │ │ ├── res
│ │ │ │ │ │ ├── bg-none.jpg
│ │ │ │ │ │ ├── layui-logo.jpg
│ │ │ │ │ │ ├── logo-black.png
│ │ │ │ │ │ ├── logo.png
│ │ │ │ │ │ └── template
│ │ │ │ │ │ ├── character.jpg
│ │ │ │ │ │ ├── huge.jpg
│ │ │ │ │ │ └── portrait.png
│ │ │ │ │ └── template.css
│ │ │ │ └── tpl
│ │ │ │ ├── layim
│ │ │ │ │ └── demo.html
│ │ │ │ ├── system
│ │ │ │ │ ├── about.html
│ │ │ │ │ ├── get.html
│ │ │ │ │ ├── more.html
│ │ │ │ │ ├── theme.html
│ │ │ │ │ └── 说明.txt
│ │ │ │ └── 说明.txt
│ │ │ ├── layuimini
│ │ │ │ ├── images
│ │ │ │ │ ├── favicon.ico
│ │ │ │ │ ├── logo.png
│ │ │ │ │ └── zdkjlogo.png
│ │ │ │ ├── js
│ │ │ │ │ ├── lay-config.js
│ │ │ │ │ └── lay-module
│ │ │ │ │ ├── config.js
│ │ │ │ │ ├── layuimini
│ │ │ │ │ │ ├── miniAdmin.js
│ │ │ │ │ │ ├── miniMenu.js
│ │ │ │ │ │ ├── miniTab.js
│ │ │ │ │ │ └── miniTheme.js
│ │ │ │ │ ├── lib
│ │ │ │ │ │ ├── admin.js
│ │ │ │ │ │ ├── index.js
│ │ │ │ │ │ └── view.js
│ │ │ │ │ └── modules
│ │ │ │ │ └── common.js
│ │ │ │ ├── layui
│ │ │ │ │ ├── css
│ │ │ │ │ │ ├── layui.css
│ │ │ │ │ │ ├── layui.mobile.css
│ │ │ │ │ │ ├── layuimini.css
│ │ │ │ │ │ └── modules
│ │ │ │ │ │ ├── code.css
│ │ │ │ │ │ ├── laydate
│ │ │ │ │ │ │ └── default
│ │ │ │ │ │ │ └── laydate.css
│ │ │ │ │ │ └── layer
│ │ │ │ │ │ └── default
│ │ │ │ │ │ ├── icon-ext.png
│ │ │ │ │ │ ├── icon.png
│ │ │ │ │ │ ├── layer.css
│ │ │ │ │ │ ├── loading-0.gif
│ │ │ │ │ │ ├── loading-1.gif
│ │ │ │ │ │ └── loading-2.gif
│ │ │ │ │ ├── font
│ │ │ │ │ │ ├── iconfont.eot
│ │ │ │ │ │ ├── iconfont.svg
│ │ │ │ │ │ ├── iconfont.ttf
│ │ │ │ │ │ ├── iconfont.woff
│ │ │ │ │ │ └── iconfont.woff2
│ │ │ │ │ ├── lay
│ │ │ │ │ │ └── modules
│ │ │ │ │ │ ├── carousel.js
│ │ │ │ │ │ ├── code.js
│ │ │ │ │ │ ├── colorpicker.js
│ │ │ │ │ │ ├── element.js
│ │ │ │ │ │ ├── flow.js
│ │ │ │ │ │ ├── form.js
│ │ │ │ │ │ ├── jquery.js
│ │ │ │ │ │ ├── laydate.js
│ │ │ │ │ │ ├── layedit.js
│ │ │ │ │ │ ├── layer.js
│ │ │ │ │ │ ├── laypage.js
│ │ │ │ │ │ ├── laytpl.js
│ │ │ │ │ │ ├── mobile.js
│ │ │ │ │ │ ├── rate.js
│ │ │ │ │ │ ├── slider.js
│ │ │ │ │ │ ├── table.js
│ │ │ │ │ │ ├── transfer.js
│ │ │ │ │ │ ├── tree.js
│ │ │ │ │ │ ├── upload.js
│ │ │ │ │ │ └── util.js
│ │ │ │ │ ├── layui.all.js
│ │ │ │ │ ├── layui.js
│ │ │ │ │ └── themes
│ │ │ │ │ └── default.css
│ │ │ │ ├── lib
│ │ │ │ │ ├── admin.js
│ │ │ │ │ ├── extend
│ │ │ │ │ │ ├── echarts.js
│ │ │ │ │ │ └── echartsTheme.js
│ │ │ │ │ ├── font-awesome-4.7.0
│ │ │ │ │ │ ├── css
│ │ │ │ │ │ │ ├── font-awesome.css
│ │ │ │ │ │ │ └── font-awesome.min.css
│ │ │ │ │ │ └── fonts
│ │ │ │ │ │ ├── FontAwesome.otf
│ │ │ │ │ │ ├── fontawesome-webfont.eot
│ │ │ │ │ │ ├── fontawesome-webfont.svg
│ │ │ │ │ │ ├── fontawesome-webfont.ttf
│ │ │ │ │ │ ├── fontawesome-webfont.woff
│ │ │ │ │ │ └── fontawesome-webfont.woff2
│ │ │ │ │ ├── index.js
│ │ │ │ │ └── view.js
│ │ │ │ └── style
│ │ │ │ ├── admin.css
│ │ │ │ ├── login.css
│ │ │ │ └── template.css
│ │ │ ├── public
│ │ │ │ ├── admin
│ │ │ │ │ ├── css
│ │ │ │ │ │ ├── login.css
│ │ │ │ │ │ └── reset.css
│ │ │ │ │ ├── images
│ │ │ │ │ │ ├── bg.jpg
│ │ │ │ │ │ ├── fgf.png
│ │ │ │ │ │ ├── icon-password.png
│ │ │ │ │ │ ├── icon-safe.png
│ │ │ │ │ │ ├── icon-user.png
│ │ │ │ │ │ ├── icon1.png
│ │ │ │ │ │ ├── icon2.png
│ │ │ │ │ │ ├── icon3.png
│ │ │ │ │ │ ├── icon4.png
│ │ │ │ │ │ ├── icon_close.png
│ │ │ │ │ │ ├── icon_dele.png
│ │ │ │ │ │ ├── icon_done.png
│ │ │ │ │ │ ├── icon_edit.png
│ │ │ │ │ │ ├── jqy.svg
│ │ │ │ │ │ ├── jyh.svg
│ │ │ │ │ │ ├── qycz.svg
│ │ │ │ │ │ └── scdl.svg
│ │ │ │ │ ├── js
│ │ │ │ │ │ ├── d3.js
│ │ │ │ │ │ └── three.min.js
│ │ │ │ │ └── login.jsp
│ │ │ │ └── lanse
│ │ │ │ ├── css
│ │ │ │ │ └── login.css
│ │ │ │ ├── images
│ │ │ │ │ ├── aiwrap.png
│ │ │ │ │ ├── audioPlayButton.png
│ │ │ │ │ ├── videoPlayButton.png
│ │ │ │ │ └── web_reg.jpg
│ │ │ │ └── login.jsp
│ │ │ └── test.jsp
│ │ ├── sms-enterprise
│ │ │ ├── pom.xml
│ │ │ ├── sms-enterprise-action
│ │ │ │ ├── pom.xml
│ │ │ │ └── src
│ │ │ │ └── main
│ │ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── hero
│ │ │ │ └── wireless
│ │ │ │ └── web
│ │ │ │ └── action
│ │ │ │ ├── BaseEnterpriseController.java
│ │ │ │ ├── LoginEnterpriseController.java
│ │ │ │ ├── admin
│ │ │ │ │ ├── BusinessController.java
│ │ │ │ │ ├── ChargeController.java
│ │ │ │ │ ├── ContactController.java
│ │ │ │ │ ├── DocumentController.java
│ │ │ │ │ ├── EnterpriseController.java
│ │ │ │ │ ├── IndexController.java
│ │ │ │ │ ├── SendedController.java
│ │ │ │ │ ├── StatisticController.java
│ │ │ │ │ └── config
│ │ │ │ │ ├── InitSystemEnv.java
│ │ │ │ │ └── MenuInfo.java
│ │ │ │ ├── interceptor
│ │ │ │ │ ├── AdminLimitInterceptor.java
│ │ │ │ │ ├── EnterpriseCsrfInterceptor.java
│ │ │ │ │ └── LoginAdminInterceptor.java
│ │ │ │ └── tag
│ │ │ │ ├── HeroContactGroupSelectTag.java
│ │ │ │ └── HeroCustomDataSelectTag.java
│ │ │ └── sms-enterprise-web
│ │ │ ├── pom.xml
│ │ │ └── src
│ │ │ └── main
│ │ │ ├── java
│ │ │ │ ├── org
│ │ │ │ │ └── mybatis
│ │ │ │ │ └── spring
│ │ │ │ │ └── SqlSessionTemplate.java
│ │ │ │ └── template
│ │ │ │ └── simple
│ │ │ │ ├── actionmessage.ftl
│ │ │ │ └── fielderror.ftl
│ │ │ ├── resources
│ │ │ │ ├── ExceptionMessages.properties
│ │ │ │ ├── META-INF
│ │ │ │ │ └── services
│ │ │ │ │ └── org.apache.shardingsphere.sharding.spi.ShardingAlgorithm
│ │ │ │ ├── SystemMessages.properties
│ │ │ │ ├── business_datasource_config.xml
│ │ │ │ ├── datasource.properties
│ │ │ │ ├── log4j2.xml
│ │ │ │ ├── logback.xml
│ │ │ │ ├── logback_rocketmq_client.xml
│ │ │ │ ├── mybatis-config.xml
│ │ │ │ ├── redis.properties
│ │ │ │ ├── send_datasource_config.xml
│ │ │ │ ├── spring_datasource_config.xml
│ │ │ │ ├── spring_web_mvc.xml
│ │ │ │ └── spring_xml_config.xml
│ │ │ └── webapp
│ │ │ ├── WEB-INF
│ │ │ │ ├── tlds
│ │ │ │ │ └── hero-tags.tld
│ │ │ │ └── web.xml
│ │ │ ├── admin
│ │ │ │ ├── business
│ │ │ │ │ ├── material_List.jsp
│ │ │ │ │ ├── material_add.jsp
│ │ │ │ │ ├── mms_select_material.jsp
│ │ │ │ │ ├── mms_template_add.jsp
│ │ │ │ │ ├── mms_template_list.jsp
│ │ │ │ │ └── mms_template_material.jsp
│ │ │ │ ├── charge
│ │ │ │ │ ├── QRCode.jsp
│ │ │ │ │ ├── admin_recharge_record.jsp
│ │ │ │ │ ├── charge.jsp
│ │ │ │ │ ├── charge_list.jsp
│ │ │ │ │ ├── enterprise_now_statistic_list.jsp
│ │ │ │ │ ├── input_log_statistics.jsp
│ │ │ │ │ ├── invoice_add.jsp
│ │ │ │ │ ├── invoice_list.jsp
│ │ │ │ │ ├── send_statistics.jsp
│ │ │ │ │ └── sms_real_time_statistics.jsp
│ │ │ │ ├── contact
│ │ │ │ │ ├── contact_add.jsp
│ │ │ │ │ ├── contact_edit.jsp
│ │ │ │ │ ├── contact_import.jsp
│ │ │ │ │ └── manager.jsp
│ │ │ │ ├── document
│ │ │ │ │ ├── balace_Interface_document.jsp
│ │ │ │ │ ├── document_index.jsp
│ │ │ │ │ ├── mo_Interface_document.jsp
│ │ │ │ │ ├── report_Interface_document.jsp
│ │ │ │ │ ├── responsibility_notification_document.jsp
│ │ │ │ │ ├── sms_Interface_document.jsp
│ │ │ │ │ ├── sms_Interface_documents.jsp
│ │ │ │ │ ├── status_code_document.jsp
│ │ │ │ │ └── submit_Interface_document.jsp
│ │ │ │ ├── enterprise
│ │ │ │ │ ├── add_user.jsp
│ │ │ │ │ ├── auth.jsp
│ │ │ │ │ ├── bulk_import_smsTemplat.jsp
│ │ │ │ │ ├── edit_password.jsp
│ │ │ │ │ ├── enterprise_fee_list.jsp
│ │ │ │ │ ├── sms_template_add.jsp
│ │ │ │ │ ├── sms_template_edit.jsp
│ │ │ │ │ ├── sms_template_list.jsp
│ │ │ │ │ ├── user2charge.jsp
│ │ │ │ │ └── user_list.jsp
│ │ │ │ ├── errors
│ │ │ │ │ └── error.jsp
│ │ │ │ ├── history
│ │ │ │ │ ├── input_his_log.jsp
│ │ │ │ │ ├── report_his_log.jsp
│ │ │ │ │ ├── submit_his_details.jsp
│ │ │ │ │ └── submit_his_log.jsp
│ │ │ │ ├── home
│ │ │ │ │ ├── console.jsp
│ │ │ │ │ └── edit_password.jsp
│ │ │ │ ├── index
│ │ │ │ │ ├── admin_index.jsp
│ │ │ │ │ └── mini_index.jsp
│ │ │ │ ├── rcs
│ │ │ │ │ ├── rcs_inbox_list.jsp
│ │ │ │ │ ├── rcs_input_log_list.jsp
│ │ │ │ │ ├── rcs_material_add.jsp
│ │ │ │ │ ├── rcs_material_list.jsp
│ │ │ │ │ ├── rcs_menu.jsp
│ │ │ │ │ ├── rcs_records_detail.jsp
│ │ │ │ │ ├── rcs_records_list.jsp
│ │ │ │ │ ├── rcs_select_material.jsp
│ │ │ │ │ ├── rcs_send.jsp
│ │ │ │ │ ├── rcs_send_card_add.jsp
│ │ │ │ │ ├── rcs_send_card_edit.jsp
│ │ │ │ │ ├── rcs_template_add.jsp
│ │ │ │ │ ├── rcs_template_edit.jsp
│ │ │ │ │ └── rcs_template_list.jsp
│ │ │ │ ├── sended
│ │ │ │ │ ├── auto_reply_sms_add.jsp
│ │ │ │ │ ├── auto_reply_sms_edit.jsp
│ │ │ │ │ ├── auto_reply_sms_list.jsp
│ │ │ │ │ ├── batch_input_sms.jsp
│ │ │ │ │ ├── export_file_list.jsp
│ │ │ │ │ ├── inbox_list.jsp
│ │ │ │ │ ├── input_log_list.jsp
│ │ │ │ │ ├── mms_send.jsp
│ │ │ │ │ ├── mms_video_send.jsp
│ │ │ │ │ ├── report_list.jsp
│ │ │ │ │ ├── report_unknown_list.jsp
│ │ │ │ │ ├── send_contacts_sms.jsp
│ │ │ │ │ ├── send_select_contact_list.jsp
│ │ │ │ │ ├── send_sms.jsp
│ │ │ │ │ ├── sms_send_time.jsp
│ │ │ │ │ ├── submit_details.jsp
│ │ │ │ │ ├── submit_his _details.jsp
│ │ │ │ │ ├── submit_list.jsp
│ │ │ │ │ └── upload_file_sms.jsp
│ │ │ │ └── statistic
│ │ │ │ ├── enterprise_sending_list.jsp
│ │ │ │ └── sms_statistic_list.jsp
│ │ │ ├── common
│ │ │ │ ├── button_action_list.jsp
│ │ │ │ ├── common.jsp
│ │ │ │ ├── country_operator.jsp
│ │ │ │ ├── dynamic_data.jsp
│ │ │ │ ├── layui_bottom.jsp
│ │ │ │ └── layui_head.html
│ │ │ ├── css
│ │ │ │ ├── caozuo.css
│ │ │ │ ├── index.css
│ │ │ │ ├── rcs
│ │ │ │ │ ├── bootstrap.min.css
│ │ │ │ │ ├── font
│ │ │ │ │ │ ├── FontAwesome.otf
│ │ │ │ │ │ ├── fontawesome-webfont.eot
│ │ │ │ │ │ ├── fontawesome-webfont.svg
│ │ │ │ │ │ ├── fontawesome-webfont.ttf
│ │ │ │ │ │ └── fontawesome-webfont.woff
│ │ │ │ │ ├── font-awesome.min.css
│ │ │ │ │ ├── fonts
│ │ │ │ │ │ ├── glyphicons-halflings-regular.eot
│ │ │ │ │ │ ├── glyphicons-halflings-regular.svg
│ │ │ │ │ │ ├── glyphicons-halflings-regular.ttf
│ │ │ │ │ │ ├── glyphicons-halflings-regular.woff
│ │ │ │ │ │ └── glyphicons-halflings-regular.woff2
│ │ │ │ │ ├── images
│ │ │ │ │ │ └── keyboard.png
│ │ │ │ │ └── wx-custom.css
│ │ │ │ └── send_sms.css
│ │ │ ├── error
│ │ │ │ └── exception.jsp
│ │ │ ├── file
│ │ │ │ └── contact_template.xlsx
│ │ │ ├── js
│ │ │ │ ├── ajaxRequest.js
│ │ │ │ ├── common
│ │ │ │ │ ├── his_common.js
│ │ │ │ │ └── rcs_common.js
│ │ │ │ ├── date-fmt.js
│ │ │ │ ├── index.js
│ │ │ │ ├── jquery-3.4.1.min.js
│ │ │ │ ├── jquery-form.js
│ │ │ │ ├── jquery-validation-1.19.0
│ │ │ │ │ └── dist
│ │ │ │ │ ├── additional-methods.js
│ │ │ │ │ ├── additional-methods.min.js
│ │ │ │ │ ├── jquery.validate.js
│ │ │ │ │ ├── jquery.validate.min.js
│ │ │ │ │ └── localization
│ │ │ │ │ ├── messages_ar.js
│ │ │ │ │ ├── messages_ar.min.js
│ │ │ │ │ ├── messages_az.js
│ │ │ │ │ ├── messages_az.min.js
│ │ │ │ │ ├── messages_bg.js
│ │ │ │ │ ├── messages_bg.min.js
│ │ │ │ │ ├── messages_bn_BD.js
│ │ │ │ │ ├── messages_bn_BD.min.js
│ │ │ │ │ ├── messages_ca.js
│ │ │ │ │ ├── messages_ca.min.js
│ │ │ │ │ ├── messages_cs.js
│ │ │ │ │ ├── messages_cs.min.js
│ │ │ │ │ ├── messages_da.js
│ │ │ │ │ ├── messages_da.min.js
│ │ │ │ │ ├── messages_de.js
│ │ │ │ │ ├── messages_de.min.js
│ │ │ │ │ ├── messages_el.js
│ │ │ │ │ ├── messages_el.min.js
│ │ │ │ │ ├── messages_es.js
│ │ │ │ │ ├── messages_es.min.js
│ │ │ │ │ ├── messages_es_AR.js
│ │ │ │ │ ├── messages_es_AR.min.js
│ │ │ │ │ ├── messages_es_PE.js
│ │ │ │ │ ├── messages_es_PE.min.js
│ │ │ │ │ ├── messages_et.js
│ │ │ │ │ ├── messages_et.min.js
│ │ │ │ │ ├── messages_eu.js
│ │ │ │ │ ├── messages_eu.min.js
│ │ │ │ │ ├── messages_fa.js
│ │ │ │ │ ├── messages_fa.min.js
│ │ │ │ │ ├── messages_fi.js
│ │ │ │ │ ├── messages_fi.min.js
│ │ │ │ │ ├── messages_fr.js
│ │ │ │ │ ├── messages_fr.min.js
│ │ │ │ │ ├── messages_ge.js
│ │ │ │ │ ├── messages_ge.min.js
│ │ │ │ │ ├── messages_gl.js
│ │ │ │ │ ├── messages_gl.min.js
│ │ │ │ │ ├── messages_he.js
│ │ │ │ │ ├── messages_he.min.js
│ │ │ │ │ ├── messages_hr.js
│ │ │ │ │ ├── messages_hr.min.js
│ │ │ │ │ ├── messages_hu.js
│ │ │ │ │ ├── messages_hu.min.js
│ │ │ │ │ ├── messages_hy_AM.js
│ │ │ │ │ ├── messages_hy_AM.min.js
│ │ │ │ │ ├── messages_id.js
│ │ │ │ │ ├── messages_id.min.js
│ │ │ │ │ ├── messages_is.js
│ │ │ │ │ ├── messages_is.min.js
│ │ │ │ │ ├── messages_it.js
│ │ │ │ │ ├── messages_it.min.js
│ │ │ │ │ ├── messages_ja.js
│ │ │ │ │ ├── messages_ja.min.js
│ │ │ │ │ ├── messages_ka.js
│ │ │ │ │ ├── messages_ka.min.js
│ │ │ │ │ ├── messages_kk.js
│ │ │ │ │ ├── messages_kk.min.js
│ │ │ │ │ ├── messages_ko.js
│ │ │ │ │ ├── messages_ko.min.js
│ │ │ │ │ ├── messages_lt.js
│ │ │ │ │ ├── messages_lt.min.js
│ │ │ │ │ ├── messages_lv.js
│ │ │ │ │ ├── messages_lv.min.js
│ │ │ │ │ ├── messages_mk.js
│ │ │ │ │ ├── messages_mk.min.js
│ │ │ │ │ ├── messages_my.js
│ │ │ │ │ ├── messages_my.min.js
│ │ │ │ │ ├── messages_nl.js
│ │ │ │ │ ├── messages_nl.min.js
│ │ │ │ │ ├── messages_no.js
│ │ │ │ │ ├── messages_no.min.js
│ │ │ │ │ ├── messages_pl.js
│ │ │ │ │ ├── messages_pl.min.js
│ │ │ │ │ ├── messages_pt_BR.js
│ │ │ │ │ ├── messages_pt_BR.min.js
│ │ │ │ │ ├── messages_pt_PT.js
│ │ │ │ │ ├── messages_pt_PT.min.js
│ │ │ │ │ ├── messages_ro.js
│ │ │ │ │ ├── messages_ro.min.js
│ │ │ │ │ ├── messages_ru.js
│ │ │ │ │ ├── messages_ru.min.js
│ │ │ │ │ ├── messages_sd.js
│ │ │ │ │ ├── messages_sd.min.js
│ │ │ │ │ ├── messages_si.js
│ │ │ │ │ ├── messages_si.min.js
│ │ │ │ │ ├── messages_sk.js
│ │ │ │ │ ├── messages_sk.min.js
│ │ │ │ │ ├── messages_sl.js
│ │ │ │ │ ├── messages_sl.min.js
│ │ │ │ │ ├── messages_sr.js
│ │ │ │ │ ├── messages_sr.min.js
│ │ │ │ │ ├── messages_sr_lat.js
│ │ │ │ │ ├── messages_sr_lat.min.js
│ │ │ │ │ ├── messages_sv.js
│ │ │ │ │ ├── messages_sv.min.js
│ │ │ │ │ ├── messages_th.js
│ │ │ │ │ ├── messages_th.min.js
│ │ │ │ │ ├── messages_tj.js
│ │ │ │ │ ├── messages_tj.min.js
│ │ │ │ │ ├── messages_tr.js
│ │ │ │ │ ├── messages_tr.min.js
│ │ │ │ │ ├── messages_uk.js
│ │ │ │ │ ├── messages_uk.min.js
│ │ │ │ │ ├── messages_ur.js
│ │ │ │ │ ├── messages_ur.min.js
│ │ │ │ │ ├── messages_vi.js
│ │ │ │ │ ├── messages_vi.min.js
│ │ │ │ │ ├── messages_zh.js
│ │ │ │ │ ├── messages_zh.min.js
│ │ │ │ │ ├── messages_zh_TW.js
│ │ │ │ │ ├── messages_zh_TW.min.js
│ │ │ │ │ ├── methods_de.js
│ │ │ │ │ ├── methods_de.min.js
│ │ │ │ │ ├── methods_es_CL.js
│ │ │ │ │ ├── methods_es_CL.min.js
│ │ │ │ │ ├── methods_fi.js
│ │ │ │ │ ├── methods_fi.min.js
│ │ │ │ │ ├── methods_it.js
│ │ │ │ │ ├── methods_it.min.js
│ │ │ │ │ ├── methods_nl.js
│ │ │ │ │ ├── methods_nl.min.js
│ │ │ │ │ ├── methods_pt.js
│ │ │ │ │ └── methods_pt.min.js
│ │ │ │ ├── jsencrypt
│ │ │ │ │ ├── jsencrypt.min.js
│ │ │ │ │ ├── jsencrypt.min.js.LICENSE.txt
│ │ │ │ │ └── rsakey.js
│ │ │ │ ├── layui-ext
│ │ │ │ │ ├── authtree.js
│ │ │ │ │ ├── formExt.js
│ │ │ │ │ ├── layuiExt.css
│ │ │ │ │ └── tableExt.js
│ │ │ │ ├── rcs
│ │ │ │ │ ├── bootstrap.min.js
│ │ │ │ │ └── menu.js
│ │ │ │ └── tagsinput.js
│ │ │ ├── layuiadmin
│ │ │ │ ├── config.js
│ │ │ │ ├── layui
│ │ │ │ │ ├── css
│ │ │ │ │ │ ├── layui.css
│ │ │ │ │ │ ├── layui.mobile.css
│ │ │ │ │ │ └── modules
│ │ │ │ │ │ ├── code.css
│ │ │ │ │ │ ├── laydate
│ │ │ │ │ │ │ └── default
│ │ │ │ │ │ │ └── laydate.css
│ │ │ │ │ │ └── layer
│ │ │ │ │ │ └── default
│ │ │ │ │ │ ├── icon-ext.png
│ │ │ │ │ │ ├── icon.png
│ │ │ │ │ │ ├── layer.css
│ │ │ │ │ │ ├── loading-0.gif
│ │ │ │ │ │ ├── loading-1.gif
│ │ │ │ │ │ └── loading-2.gif
│ │ │ │ │ ├── font
│ │ │ │ │ │ ├── iconfont.eot
│ │ │ │ │ │ ├── iconfont.svg
│ │ │ │ │ │ ├── iconfont.ttf
│ │ │ │ │ │ ├── iconfont.woff
│ │ │ │ │ │ └── iconfont.woff2
│ │ │ │ │ ├── images
│ │ │ │ │ │ └── face
│ │ │ │ │ │ ├── 0.gif
│ │ │ │ │ │ ├── 1.gif
│ │ │ │ │ │ ├── 10.gif
│ │ │ │ │ │ ├── 11.gif
│ │ │ │ │ │ ├── 12.gif
│ │ │ │ │ │ ├── 13.gif
│ │ │ │ │ │ ├── 14.gif
│ │ │ │ │ │ ├── 15.gif
│ │ │ │ │ │ ├── 16.gif
│ │ │ │ │ │ ├── 17.gif
│ │ │ │ │ │ ├── 18.gif
│ │ │ │ │ │ ├── 19.gif
│ │ │ │ │ │ ├── 2.gif
│ │ │ │ │ │ ├── 20.gif
│ │ │ │ │ │ ├── 21.gif
│ │ │ │ │ │ ├── 22.gif
│ │ │ │ │ │ ├── 23.gif
│ │ │ │ │ │ ├── 24.gif
│ │ │ │ │ │ ├── 25.gif
│ │ │ │ │ │ ├── 26.gif
│ │ │ │ │ │ ├── 27.gif
│ │ │ │ │ │ ├── 28.gif
│ │ │ │ │ │ ├── 29.gif
│ │ │ │ │ │ ├── 3.gif
│ │ │ │ │ │ ├── 30.gif
│ │ │ │ │ │ ├── 31.gif
│ │ │ │ │ │ ├── 32.gif
│ │ │ │ │ │ ├── 33.gif
│ │ │ │ │ │ ├── 34.gif
│ │ │ │ │ │ ├── 35.gif
│ │ │ │ │ │ ├── 36.gif
│ │ │ │ │ │ ├── 37.gif
│ │ │ │ │ │ ├── 38.gif
│ │ │ │ │ │ ├── 39.gif
│ │ │ │ │ │ ├── 4.gif
│ │ │ │ │ │ ├── 40.gif
│ │ │ │ │ │ ├── 41.gif
│ │ │ │ │ │ ├── 42.gif
│ │ │ │ │ │ ├── 43.gif
│ │ │ │ │ │ ├── 44.gif
│ │ │ │ │ │ ├── 45.gif
│ │ │ │ │ │ ├── 46.gif
│ │ │ │ │ │ ├── 47.gif
│ │ │ │ │ │ ├── 48.gif
│ │ │ │ │ │ ├── 49.gif
│ │ │ │ │ │ ├── 5.gif
│ │ │ │ │ │ ├── 50.gif
│ │ │ │ │ │ ├── 51.gif
│ │ │ │ │ │ ├── 52.gif
│ │ │ │ │ │ ├── 53.gif
│ │ │ │ │ │ ├── 54.gif
│ │ │ │ │ │ ├── 55.gif
│ │ │ │ │ │ ├── 56.gif
│ │ │ │ │ │ ├── 57.gif
│ │ │ │ │ │ ├── 58.gif
│ │ │ │ │ │ ├── 59.gif
│ │ │ │ │ │ ├── 6.gif
│ │ │ │ │ │ ├── 60.gif
│ │ │ │ │ │ ├── 61.gif
│ │ │ │ │ │ ├── 62.gif
│ │ │ │ │ │ ├── 63.gif
│ │ │ │ │ │ ├── 64.gif
│ │ │ │ │ │ ├── 65.gif
│ │ │ │ │ │ ├── 66.gif
│ │ │ │ │ │ ├── 67.gif
│ │ │ │ │ │ ├── 68.gif
│ │ │ │ │ │ ├── 69.gif
│ │ │ │ │ │ ├── 7.gif
│ │ │ │ │ │ ├── 70.gif
│ │ │ │ │ │ ├── 71.gif
│ │ │ │ │ │ ├── 8.gif
│ │ │ │ │ │ └── 9.gif
│ │ │ │ │ ├── lay
│ │ │ │ │ │ └── modules
│ │ │ │ │ │ ├── carousel.js
│ │ │ │ │ │ ├── code.js
│ │ │ │ │ │ ├── colorpicker.js
│ │ │ │ │ │ ├── element.js
│ │ │ │ │ │ ├── flow.js
│ │ │ │ │ │ ├── form.js
│ │ │ │ │ │ ├── jquery.js
│ │ │ │ │ │ ├── laydate.js
│ │ │ │ │ │ ├── layedit.js
│ │ │ │ │ │ ├── layer.js
│ │ │ │ │ │ ├── laypage.js
│ │ │ │ │ │ ├── laytpl.js
│ │ │ │ │ │ ├── mobile.js
│ │ │ │ │ │ ├── rate.js
│ │ │ │ │ │ ├── slider.js
│ │ │ │ │ │ ├── table.js
│ │ │ │ │ │ ├── transfer.js
│ │ │ │ │ │ ├── tree.js
│ │ │ │ │ │ ├── upload.js
│ │ │ │ │ │ └── util.js
│ │ │ │ │ ├── layui.all.js
│ │ │ │ │ └── layui.js
│ │ │ │ ├── lib
│ │ │ │ │ ├── admin.js
│ │ │ │ │ ├── extend
│ │ │ │ │ │ ├── echarts.js
│ │ │ │ │ │ └── echartsTheme.js
│ │ │ │ │ ├── index.js
│ │ │ │ │ └── view.js
│ │ │ │ ├── modules
│ │ │ │ │ ├── console.js
│ │ │ │ │ ├── contlist.js
│ │ │ │ │ ├── forum.js
│ │ │ │ │ ├── im.js
│ │ │ │ │ ├── message.js
│ │ │ │ │ ├── sample.js
│ │ │ │ │ ├── senior.js
│ │ │ │ │ ├── set.js
│ │ │ │ │ ├── user.js
│ │ │ │ │ ├── useradmin.js
│ │ │ │ │ └── workorder.js
│ │ │ │ ├── style
│ │ │ │ │ ├── admin.css
│ │ │ │ │ ├── login.css
│ │ │ │ │ ├── res
│ │ │ │ │ │ ├── bg-none.jpg
│ │ │ │ │ │ ├── layui-logo.jpg
│ │ │ │ │ │ ├── logo-black.png
│ │ │ │ │ │ ├── logo.png
│ │ │ │ │ │ └── template
│ │ │ │ │ │ ├── character.jpg
│ │ │ │ │ │ ├── huge.jpg
│ │ │ │ │ │ └── portrait.png
│ │ │ │ │ └── template.css
│ │ │ │ └── tpl
│ │ │ │ ├── layim
│ │ │ │ │ └── demo.html
│ │ │ │ ├── system
│ │ │ │ │ ├── about.html
│ │ │ │ │ ├── get.html
│ │ │ │ │ ├── more.html
│ │ │ │ │ ├── theme.html
│ │ │ │ │ └── 说明.txt
│ │ │ │ └── 说明.txt
│ │ │ ├── layuimini
│ │ │ │ ├── images
│ │ │ │ │ ├── favicon.ico
│ │ │ │ │ ├── logo.png
│ │ │ │ │ └── zdkjlogo.png
│ │ │ │ ├── js
│ │ │ │ │ ├── lay-config.js
│ │ │ │ │ └── lay-module
│ │ │ │ │ ├── config.js
│ │ │ │ │ ├── layuimini
│ │ │ │ │ │ ├── miniAdmin.js
│ │ │ │ │ │ ├── miniMenu.js
│ │ │ │ │ │ ├── miniTab.js
│ │ │ │ │ │ └── miniTheme.js
│ │ │ │ │ ├── lib
│ │ │ │ │ │ ├── admin.js
│ │ │ │ │ │ ├── index.js
│ │ │ │ │ │ └── view.js
│ │ │ │ │ └── modules
│ │ │ │ │ └── common.js
│ │ │ │ ├── layui
│ │ │ │ │ ├── css
│ │ │ │ │ │ ├── layui.css
│ │ │ │ │ │ ├── layui.mobile.css
│ │ │ │ │ │ ├── layuimini.css
│ │ │ │ │ │ └── modules
│ │ │ │ │ │ ├── code.css
│ │ │ │ │ │ ├── laydate
│ │ │ │ │ │ │ └── default
│ │ │ │ │ │ │ └── laydate.css
│ │ │ │ │ │ └── layer
│ │ │ │ │ │ └── default
│ │ │ │ │ │ ├── icon-ext.png
│ │ │ │ │ │ ├── icon.png
│ │ │ │ │ │ ├── layer.css
│ │ │ │ │ │ ├── loading-0.gif
│ │ │ │ │ │ ├── loading-1.gif
│ │ │ │ │ │ └── loading-2.gif
│ │ │ │ │ ├── font
│ │ │ │ │ │ ├── iconfont.eot
│ │ │ │ │ │ ├── iconfont.svg
│ │ │ │ │ │ ├── iconfont.ttf
│ │ │ │ │ │ ├── iconfont.woff
│ │ │ │ │ │ └── iconfont.woff2
│ │ │ │ │ ├── lay
│ │ │ │ │ │ └── modules
│ │ │ │ │ │ ├── carousel.js
│ │ │ │ │ │ ├── code.js
│ │ │ │ │ │ ├── colorpicker.js
│ │ │ │ │ │ ├── element.js
│ │ │ │ │ │ ├── flow.js
│ │ │ │ │ │ ├── form.js
│ │ │ │ │ │ ├── jquery.js
│ │ │ │ │ │ ├── laydate.js
│ │ │ │ │ │ ├── layedit.js
│ │ │ │ │ │ ├── layer.js
│ │ │ │ │ │ ├── laypage.js
│ │ │ │ │ │ ├── laytpl.js
│ │ │ │ │ │ ├── mobile.js
│ │ │ │ │ │ ├── rate.js
│ │ │ │ │ │ ├── slider.js
│ │ │ │ │ │ ├── table.js
│ │ │ │ │ │ ├── transfer.js
│ │ │ │ │ │ ├── tree.js
│ │ │ │ │ │ ├── upload.js
│ │ │ │ │ │ └── util.js
│ │ │ │ │ ├── layui.all.js
│ │ │ │ │ ├── layui.js
│ │ │ │ │ └── themes
│ │ │ │ │ └── default.css
│ │ │ │ ├── lib
│ │ │ │ │ ├── admin.js
│ │ │ │ │ ├── extend
│ │ │ │ │ │ ├── echarts.js
│ │ │ │ │ │ └── echartsTheme.js
│ │ │ │ │ ├── font-awesome-4.7.0
│ │ │ │ │ │ ├── css
│ │ │ │ │ │ │ ├── font-awesome.css
│ │ │ │ │ │ │ └── font-awesome.min.css
│ │ │ │ │ │ └── fonts
│ │ │ │ │ │ ├── FontAwesome.otf
│ │ │ │ │ │ ├── fontawesome-webfont.eot
│ │ │ │ │ │ ├── fontawesome-webfont.svg
│ │ │ │ │ │ ├── fontawesome-webfont.ttf
│ │ │ │ │ │ ├── fontawesome-webfont.woff
│ │ │ │ │ │ └── fontawesome-webfont.woff2
│ │ │ │ │ ├── index.js
│ │ │ │ │ └── view.js
│ │ │ │ └── style
│ │ │ │ ├── admin.css
│ │ │ │ ├── login.css
│ │ │ │ └── template.css
│ │ │ ├── public
│ │ │ │ ├── admin
│ │ │ │ │ ├── css
│ │ │ │ │ │ ├── login.css
│ │ │ │ │ │ ├── main.css
│ │ │ │ │ │ ├── reset.css
│ │ │ │ │ │ └── style.css
│ │ │ │ │ ├── images
│ │ │ │ │ │ ├── advertising.jpg
│ │ │ │ │ │ ├── audioPlayButton.png
│ │ │ │ │ │ ├── bg.jpg
│ │ │ │ │ │ ├── icon-password.png
│ │ │ │ │ │ ├── icon-safe.png
│ │ │ │ │ │ ├── icon-user.png
│ │ │ │ │ │ ├── icon1.png
│ │ │ │ │ │ ├── icon2.png
│ │ │ │ │ │ ├── icon3.png
│ │ │ │ │ │ ├── icon4.png
│ │ │ │ │ │ ├── icon_close.png
│ │ │ │ │ │ ├── icon_dele.png
│ │ │ │ │ │ ├── icon_done.png
│ │ │ │ │ │ ├── icon_edit.png
│ │ │ │ │ │ ├── logo.png
│ │ │ │ │ │ ├── port.png
│ │ │ │ │ │ ├── success.png
│ │ │ │ │ │ ├── vali.jpg
│ │ │ │ │ │ └── videoPlayButton.png
│ │ │ │ │ ├── js
│ │ │ │ │ │ ├── d3.js
│ │ │ │ │ │ ├── reg.min.js
│ │ │ │ │ │ └── three.min.js
│ │ │ │ │ ├── login.jsp
│ │ │ │ │ └── reg.jsp
│ │ │ │ └── lanse
│ │ │ │ ├── css
│ │ │ │ │ ├── login.css
│ │ │ │ │ └── reg.css
│ │ │ │ ├── images
│ │ │ │ │ ├── aiwrap.png
│ │ │ │ │ ├── audioPlayButton.png
│ │ │ │ │ ├── videoPlayButton.png
│ │ │ │ │ ├── web_login_bg.jpg
│ │ │ │ │ └── web_reg.jpg
│ │ │ │ ├── login.jsp
│ │ │ │ └── reg.jsp
│ │ │ └── test.jsp
│ │ └── sms-service
│ │ ├── pom.xml
│ │ └── src
│ │ ├── main
│ │ │ └── java
│ │ │ └── com
│ │ │ └── hero
│ │ │ └── wireless
│ │ │ ├── enums
│ │ │ │ ├── AccountStatus.java
│ │ │ │ ├── AlarmStatus.java
│ │ │ │ ├── AlarmType.java
│ │ │ │ ├── ApiType.java
│ │ │ │ ├── AuditStatus.java
│ │ │ │ ├── AuthCode.java
│ │ │ │ ├── BroadcastingMessageType.java
│ │ │ │ ├── ChannelProtocol.java
│ │ │ │ ├── ChannelStatus.java
│ │ │ │ ├── ChargeType.java
│ │ │ │ ├── Charset.java
│ │ │ │ ├── ContentAuditStatus.java
│ │ │ │ ├── ContentAuditType.java
│ │ │ │ ├── DataBaseType.java
│ │ │ │ ├── DataSourceType.java
│ │ │ │ ├── DataStatus.java
│ │ │ │ ├── DateType.java
│ │ │ │ ├── DisposeStateCode.java
│ │ │ │ ├── DiversionError.java
│ │ │ │ ├── FeeType.java
│ │ │ │ ├── InvoiceType.java
│ │ │ │ ├── MMSSubmitMaterialType.java
│ │ │ │ ├── MQStatus.java
│ │ │ │ ├── MaterialApproveStatus.java
│ │ │ │ ├── MaterialStatus.java
│ │ │ │ ├── MaterialType.java
│ │ │ │ ├── MessageType.java
│ │ │ │ ├── MoSpType.java
│ │ │ │ ├── NotifyStatus.java
│ │ │ │ ├── Operator.java
│ │ │ │ ├── Priority.java
│ │ │ │ ├── ProbeResult.java
│ │ │ │ ├── ProductChannelDiversionType.java
│ │ │ │ ├── ProductStatus.java
│ │ │ │ ├── PropertiesType.java
│ │ │ │ ├── ProtocolType.java
│ │ │ │ ├── RefundAuditStatus.java
│ │ │ │ ├── ReportNativeStatus.java
│ │ │ │ ├── ReportStatus.java
│ │ │ │ ├── SessionStatus.java
│ │ │ │ ├── SettlementType.java
│ │ │ │ ├── SignaturePosition.java
│ │ │ │ ├── SignatureType.java
│ │ │ │ ├── SubmitStatus.java
│ │ │ │ ├── SystemType.java
│ │ │ │ ├── TableType.java
│ │ │ │ ├── UserLevelType.java
│ │ │ │ └── readme.txt
│ │ │ ├── http
│ │ │ │ ├── AbstractHttp.java
│ │ │ │ ├── IHttp.java
│ │ │ │ ├── IHttpSendCallBack.java
│ │ │ │ ├── bean
│ │ │ │ │ ├── LianChengHeZhongApprovalPendingMMS.java
│ │ │ │ │ └── TransferPhoneResultBean.java
│ │ │ │ └── connector
│ │ │ │ ├── AliImpl.java
│ │ │ │ ├── AliVoiceImpl.java
│ │ │ │ ├── ChuZhongImpl.java
│ │ │ │ ├── ChuangShiHuaXinInternationalImpl.java
│ │ │ │ ├── DrondeaImpl.java
│ │ │ │ ├── FilerBlack.java
│ │ │ │ ├── MaiYuanImpl.java
│ │ │ │ ├── PaPuImpl.java
│ │ │ │ ├── ShangXinTongImpl.java
│ │ │ │ ├── ShengYaImpl.java
│ │ │ │ ├── ZhiMingImpl.java
│ │ │ │ ├── mms
│ │ │ │ │ ├── JinHongMMSImpl.java
│ │ │ │ │ ├── LianChengHeZhongMMSImpl.java
│ │ │ │ │ ├── MASMMSImpl.java
│ │ │ │ │ ├── QianLiMMSImpl.java
│ │ │ │ │ ├── YueFanMMSImpl.java
│ │ │ │ │ └── yuefaninterface
│ │ │ │ │ ├── IMmsOperator.java
│ │ │ │ │ ├── MmsFileGroup.java
│ │ │ │ │ ├── MmsFileGroupArray.java
│ │ │ │ │ ├── MmsOperatorImpService.java
│ │ │ │ │ ├── ObjectFactory.java
│ │ │ │ │ └── package-info.java
│ │ │ │ └── mnp
│ │ │ │ └── LouShangLouImp.java
│ │ │ ├── json
│ │ │ │ ├── DrondeaJsonFilterProvider.java
│ │ │ │ ├── EscapeObjectMapper.java
│ │ │ │ ├── FilterObjectMapper.java
│ │ │ │ ├── JsonUtil.java
│ │ │ │ ├── KV.java
│ │ │ │ ├── LayUIJsonListFmt.java
│ │ │ │ ├── LayUiJsonObjectFmt.java
│ │ │ │ ├── LayUiObjectMapper.java
│ │ │ │ ├── LayuiResultUtil.java
│ │ │ │ ├── SmsUIObjectMapper.java
│ │ │ │ └── ValueFormat.java
│ │ │ ├── netty
│ │ │ │ ├── handler
│ │ │ │ │ └── ReportWrap.java
│ │ │ │ └── sender
│ │ │ │ └── NettySender.java
│ │ │ ├── notify
│ │ │ │ ├── AliMo.java
│ │ │ │ ├── AliReport.java
│ │ │ │ ├── AliResponse.java
│ │ │ │ ├── AliVoiceReport.java
│ │ │ │ ├── AliVoiceResponse.java
│ │ │ │ ├── ChuZhongSmsDeliverRequestMessage.java
│ │ │ │ ├── Constants.java
│ │ │ │ ├── JsonBalanceResponse.java
│ │ │ │ ├── JsonBase.java
│ │ │ │ ├── JsonLianChengHeZhongMMSReport.java
│ │ │ │ ├── JsonLianChengHeZhongReportResponse.java
│ │ │ │ ├── JsonMessage.java
│ │ │ │ ├── JsonQueryResult.java
│ │ │ │ ├── JsonResponse.java
│ │ │ │ ├── JsonSubmit.java
│ │ │ │ ├── JsonSubmitResponse.java
│ │ │ │ ├── MaiYuanJsonBase.java
│ │ │ │ ├── MaiYuanJsonSubmit.java
│ │ │ │ ├── MasMMSMo.java
│ │ │ │ ├── MasMMSReport.java
│ │ │ │ ├── NotifyUtil.java
│ │ │ │ ├── XmlQueryResult.java
│ │ │ │ ├── XmlResponse.java
│ │ │ │ └── mms
│ │ │ │ └── MASMMSJsonSubmit.java
│ │ │ ├── okhttp
│ │ │ │ ├── AbstractCallback.java
│ │ │ │ ├── CharsetResponseBody.java
│ │ │ │ ├── HttpClient.java
│ │ │ │ └── SSLSocketClient.java
│ │ │ ├── queue
│ │ │ │ ├── BlockingConsumption.java
│ │ │ │ ├── BlockingProduction.java
│ │ │ │ ├── Consumption.java
│ │ │ │ ├── FileQueue.java
│ │ │ │ ├── Production.java
│ │ │ │ ├── RealTimeProduction.java
│ │ │ │ ├── basis
│ │ │ │ │ ├── ConsumptionStr.java
│ │ │ │ │ └── ProductionStr.java
│ │ │ │ ├── collection
│ │ │ │ │ ├── CollectConsumption.java
│ │ │ │ │ ├── CollectProduction.java
│ │ │ │ │ └── CollectionEntry.java
│ │ │ │ └── utils
│ │ │ │ ├── DateUtil.java
│ │ │ │ ├── FileQueueBuilder.java
│ │ │ │ ├── MappedByteBufferUtil.java
│ │ │ │ └── ProtostuffUtils.java
│ │ │ ├── remote
│ │ │ │ └── filter
│ │ │ │ ├── AbstractPhoneNoFilterService.java
│ │ │ │ └── IPhoneNoFilterService.java
│ │ │ ├── sharding
│ │ │ │ ├── ShardingKeyGenerator.java
│ │ │ │ └── algorithm
│ │ │ │ └── DateShardingAlgorithm.java
│ │ │ ├── sms
│ │ │ │ └── sender
│ │ │ │ ├── service
│ │ │ │ │ ├── AbstractSenderService.java
│ │ │ │ │ ├── AbstractTcpSenderService.java
│ │ │ │ │ ├── CmppServiceImpl.java
│ │ │ │ │ ├── DefaultSenderServiceImpl.java
│ │ │ │ │ ├── HttpSendCallBackService.java
│ │ │ │ │ ├── HttpServiceImpl.java
│ │ │ │ │ ├── ISenderSmsService.java
│ │ │ │ │ ├── SgipServiceImpl.java
│ │ │ │ │ ├── SmgpServiceImpl.java
│ │ │ │ │ ├── SmppServiceImpl.java
│ │ │ │ │ ├── SubmitCacheService.java
│ │ │ │ │ └── TableDDLService.java
│ │ │ │ └── statistics
│ │ │ │ ├── ChannelStatistics.java
│ │ │ │ └── ChannelStatisticsExt.java
│ │ │ ├── sort
│ │ │ │ ├── AbstractChargingService.java
│ │ │ │ ├── BalanceAlarmServiceImpl.java
│ │ │ │ ├── ChannelMapSetter.java
│ │ │ │ ├── EnterpriseSetter.java
│ │ │ │ ├── IBalanceAlarmService.java
│ │ │ │ ├── ISortChargingService.java
│ │ │ │ ├── ISortSMSService.java
│ │ │ │ ├── IUpdateBalanceService.java
│ │ │ │ ├── SortChannelMap.java
│ │ │ │ ├── SortChannelPredicate.java
│ │ │ │ ├── SortChargingServiceImpl.java
│ │ │ │ ├── SortContext.java
│ │ │ │ ├── SortLimitRepeat.java
│ │ │ │ ├── SortSmsServiceImpl.java
│ │ │ │ ├── SortValidator.java
│ │ │ │ ├── UpdateBalanceServiceImpl.java
│ │ │ │ └── diversion
│ │ │ │ ├── ISortDiversionService.java
│ │ │ │ └── impl
│ │ │ │ ├── AreaDiversion.java
│ │ │ │ ├── ChannelExcludeKeywordDiversion.java
│ │ │ │ ├── ChannelIncludeKeywordDiversion.java
│ │ │ │ ├── ContentLengthLimit.java
│ │ │ │ ├── ExcludeKeywordDiversion.java
│ │ │ │ ├── IncludeKeywordDiversion.java
│ │ │ │ └── SignatureDiversion.java
│ │ │ └── web
│ │ │ ├── config
│ │ │ │ ├── AbstractMQEnv.java
│ │ │ │ ├── CassandraProperties.java
│ │ │ │ ├── DatabaseCache.java
│ │ │ │ ├── ExceptionKey.java
│ │ │ │ ├── MessagesManger.java
│ │ │ │ ├── ProjectEnv.java
│ │ │ │ ├── SystemKey.java
│ │ │ │ └── UpdateBalanceTimer.java
│ │ │ ├── exception
│ │ │ │ └── BaseException.java
│ │ │ ├── service
│ │ │ │ ├── AgentManageImpl.java
│ │ │ │ ├── BusinessManageImpl.java
│ │ │ │ ├── ChargeManageImpl.java
│ │ │ │ ├── CustomBusinessManageImpl.java
│ │ │ │ ├── EnterpriseManageImpl.java
│ │ │ │ ├── IAgentManage.java
│ │ │ │ ├── IBusinessManage.java
│ │ │ │ ├── IChargeManage.java
│ │ │ │ ├── ICustomBusinessManage.java
│ │ │ │ ├── IEnterpriseManage.java
│ │ │ │ ├── IMaterialManage.java
│ │ │ │ ├── INetwayManage.java
│ │ │ │ ├── INoticeManage.java
│ │ │ │ ├── IPlatformManage.java
│ │ │ │ ├── IProductChannelManage.java
│ │ │ │ ├── IPropertyManage.java
│ │ │ │ ├── IReportNotifyService.java
│ │ │ │ ├── ISendManage.java
│ │ │ │ ├── ISortManage.java
│ │ │ │ ├── IStatisticsManage.java
│ │ │ │ ├── ISystemLogManage.java
│ │ │ │ ├── ITaskManage.java
│ │ │ │ ├── IUserManage.java
│ │ │ │ ├── MaterialManageImpl.java
│ │ │ │ ├── NetwayManageImpl.java
│ │ │ │ ├── NoticeManageImpl.java
│ │ │ │ ├── PlatformManageImpl.java
│ │ │ │ ├── ProductChannelManageImpl.java
│ │ │ │ ├── PropertyManageImpl.java
│ │ │ │ ├── ReportNotifyServiceImpl.java
│ │ │ │ ├── SendManageImpl.java
│ │ │ │ ├── StatisticsManageImpl.java
│ │ │ │ ├── SystemLogImpl.java
│ │ │ │ ├── TaskManageImpl.java
│ │ │ │ ├── UserManageImpl.java
│ │ │ │ ├── base
│ │ │ │ │ ├── BaseBusinessManage.java
│ │ │ │ │ ├── BaseEnterpriseManage.java
│ │ │ │ │ ├── BaseProductChannelManage.java
│ │ │ │ │ ├── BaseSendManage.java
│ │ │ │ │ ├── BaseService.java
│ │ │ │ │ ├── BaseTaskManage.java
│ │ │ │ │ ├── QueueDataDetail.java
│ │ │ │ │ ├── QueueDetail.java
│ │ │ │ │ └── QueueParamEntity.java
│ │ │ │ ├── facede
│ │ │ │ │ ├── SmsDataTrackingDetailsFacede.java
│ │ │ │ │ └── SubmitDetailsFacede.java
│ │ │ │ ├── param
│ │ │ │ │ └── TaskParam.java
│ │ │ │ └── util
│ │ │ │ └── SystemLogUtil.java
│ │ │ ├── spring
│ │ │ │ └── interceptor
│ │ │ │ ├── PageIDAOInterceptor.java
│ │ │ │ └── PageIExtDAOInterceptor.java
│ │ │ └── util
│ │ │ ├── ApplicationContextUtil.java
│ │ │ ├── BeanUtil.java
│ │ │ ├── BlackListUtil.java
│ │ │ ├── CacheKeyUtil.java
│ │ │ ├── CacheUtil.java
│ │ │ ├── ChannelUtil.java
│ │ │ ├── CodeUtil.java
│ │ │ ├── CopyUtil.java
│ │ │ ├── DFA.java
│ │ │ ├── DingTalkUtil.java
│ │ │ ├── ExcelReadTemplate.java
│ │ │ ├── ExcelTranslator.java
│ │ │ ├── ExpiringLocalCache.java
│ │ │ ├── ExportCSVTemplate.java
│ │ │ ├── ExportExcelTemplate.java
│ │ │ ├── ExportFileTemplate.java
│ │ │ ├── FileUtil.java
│ │ │ ├── GlobalRepeat.java
│ │ │ ├── GlobalStringCache.java
│ │ │ ├── LocalCache.java
│ │ │ ├── MmsUtil.java
│ │ │ ├── PhoneRepeatCache.java
│ │ │ ├── QueueUtil.java
│ │ │ ├── SMSUtil.java
│ │ │ ├── UploadUtil.java
│ │ │ ├── WeChatUtil.java
│ │ │ └── WhiteListUtil.java
│ │ └── test
│ │ └── java
│ │ ├── Test.java
│ │ └── com
│ │ └── hero
│ │ └── wireless
│ │ └── test
│ │ ├── GenMySqlPartition.java
│ │ ├── GenServiceConditon.java
│ │ ├── QueueTest.java
│ │ ├── Test.java
│ │ └── TestRegex.java
│ ├── sms-system-dao
│ │ ├── pom.xml
│ │ ├── sms-base-dao
│ │ │ ├── pom.xml
│ │ │ └── src
│ │ │ └── main
│ │ │ └── java
│ │ │ └── com
│ │ │ └── hero
│ │ │ └── wireless
│ │ │ └── web
│ │ │ ├── dao
│ │ │ │ ├── base
│ │ │ │ │ ├── IDao.java
│ │ │ │ │ └── MybatisBaseDao.java
│ │ │ │ ├── ext
│ │ │ │ │ ├── AbstractExtDAO.java
│ │ │ │ │ └── IExtDAO.java
│ │ │ │ └── redis
│ │ │ │ └── KeyGenerator.java
│ │ │ └── entity
│ │ │ ├── base
│ │ │ │ ├── BaseEntity.java
│ │ │ │ ├── BaseExample.java
│ │ │ │ ├── IEntity.java
│ │ │ │ ├── IHisPaging.java
│ │ │ │ ├── Pagination.java
│ │ │ │ ├── ShardingBatchInsert.java
│ │ │ │ └── ShardingPagination.java
│ │ │ └── ext
│ │ │ └── SqlStatisticsEntity.java
│ │ ├── sms-business-dao
│ │ │ ├── pom.xml
│ │ │ └── src
│ │ │ └── main
│ │ │ └── java
│ │ │ └── com
│ │ │ └── hero
│ │ │ └── wireless
│ │ │ └── web
│ │ │ ├── dao
│ │ │ │ ├── business
│ │ │ │ │ ├── IAdminLimitDAO.java
│ │ │ │ │ ├── IAdminRoleDAO.java
│ │ │ │ │ ├── IAdminRoleLimitDAO.java
│ │ │ │ │ ├── IAdminUserDAO.java
│ │ │ │ │ ├── IAdminUserRolesDAO.java
│ │ │ │ │ ├── IAgentChargeDAO.java
│ │ │ │ │ ├── IAgentDAO.java
│ │ │ │ │ ├── IAgentEnterpriseUserChargeDAO.java
│ │ │ │ │ ├── IAgentFeeDAO.java
│ │ │ │ │ ├── IAgentLimitDAO.java
│ │ │ │ │ ├── IAgentProductDAO.java
│ │ │ │ │ ├── IAgentRoleDAO.java
│ │ │ │ │ ├── IAgentRoleLimitDAO.java
│ │ │ │ │ ├── IAgentRolesDAO.java
│ │ │ │ │ ├── IAlarmDAO.java
│ │ │ │ │ ├── IAlarmLogDAO.java
│ │ │ │ │ ├── IBlackListDAO.java
│ │ │ │ │ ├── IChannelDAO.java
│ │ │ │ │ ├── IChannelDiversionDAO.java
│ │ │ │ │ ├── IChannelFeeDAO.java
│ │ │ │ │ ├── IChargeOrderDAO.java
│ │ │ │ │ ├── ICodeDAO.java
│ │ │ │ │ ├── ICodeSortDAO.java
│ │ │ │ │ ├── IContactDAO.java
│ │ │ │ │ ├── IContactGroupDAO.java
│ │ │ │ │ ├── IEnterpriseDAO.java
│ │ │ │ │ ├── IEnterpriseLimitDAO.java
│ │ │ │ │ ├── IEnterpriseRoleDAO.java
│ │ │ │ │ ├── IEnterpriseRoleLimitDAO.java
│ │ │ │ │ ├── IEnterpriseUserDAO.java
│ │ │ │ │ ├── IEnterpriseUserFeeDAO.java
│ │ │ │ │ ├── IEnterpriseUserRolesDAO.java
│ │ │ │ │ ├── IExportFileDAO.java
│ │ │ │ │ ├── IInterceptStrategyDAO.java
│ │ │ │ │ ├── IInvoiceDAO.java
│ │ │ │ │ ├── IMmsMaterialDAO.java
│ │ │ │ │ ├── IMmsTemplateDAO.java
│ │ │ │ │ ├── IMobileAreaDAO.java
│ │ │ │ │ ├── IPlatformDAO.java
│ │ │ │ │ ├── IPlatformSmsStatisticsDAO.java
│ │ │ │ │ ├── IProductChannelsDAO.java
│ │ │ │ │ ├── IProductChannelsDiversionDAO.java
│ │ │ │ │ ├── IProductDAO.java
│ │ │ │ │ ├── IPropertiesDAO.java
│ │ │ │ │ ├── ISensitiveWordDAO.java
│ │ │ │ │ ├── ISmsRealTimeStatisticsDAO.java
│ │ │ │ │ ├── ISmsRouteDAO.java
│ │ │ │ │ ├── ISmsStatisticsDAO.java
│ │ │ │ │ ├── ISmsTemplateDAO.java
│ │ │ │ │ ├── ISystemLogDAO.java
│ │ │ │ │ ├── IWhiteListDAO.java
│ │ │ │ │ └── ext
│ │ │ │ │ ├── IAdminLimitExtDAO.java
│ │ │ │ │ ├── IAdminRoleExtDAO.java
│ │ │ │ │ ├── IAdminUserExtDAO.java
│ │ │ │ │ ├── IAgentChargeExtDAO.java
│ │ │ │ │ ├── IAgentEnterpriseUserChargeExtDAO.java
│ │ │ │ │ ├── IAgentExtDAO.java
│ │ │ │ │ ├── IAgentLimitExtDAO.java
│ │ │ │ │ ├── IAgentRoleExtDAO.java
│ │ │ │ │ ├── IBlackListExtDAO.java
│ │ │ │ │ ├── IChannelExtDAO.java
│ │ │ │ │ ├── IChargeOrderExtDAO.java
│ │ │ │ │ ├── ICodeExtDAO.java
│ │ │ │ │ ├── IContactExtDAO.java
│ │ │ │ │ ├── IEnterpriseExtDAO.java
│ │ │ │ │ ├── IEnterpriseLimitExtDAO.java
│ │ │ │ │ ├── IEnterpriseRoleExtDAO.java
│ │ │ │ │ ├── IEnterpriseUserExtDAO.java
│ │ │ │ │ ├── IPlatformSmsStatisticsExtDAO.java
│ │ │ │ │ ├── ISmsRealTimeStatisticsExtDAO.java
│ │ │ │ │ ├── ISmsRouteExtDAO.java
│ │ │ │ │ ├── ISmsStatisticsExtDAO.java
│ │ │ │ │ ├── ISmsTemplateExtDAO.java
│ │ │ │ │ └── ITimerExtDAO.java
│ │ │ │ └── ibatis
│ │ │ │ ├── MybatisBaseBusinessExtDao.java
│ │ │ │ └── business
│ │ │ │ └── ext
│ │ │ │ ├── AdminLimitExtDAOImpl.java
│ │ │ │ ├── AdminRoleExtDAOImpl.java
│ │ │ │ ├── AdminUserExtDAOImpl.java
│ │ │ │ ├── AgentChargeExtDAOImpl.java
│ │ │ │ ├── AgentEnterpriseUserChargeExtDAOImpl.java
│ │ │ │ ├── AgentExtDAOImpl.java
│ │ │ │ ├── AgentLimitExtDAOImpl.java
│ │ │ │ ├── AgentRoleExtDAOImpl.java
│ │ │ │ ├── BlackListExtDAOImpl.java
│ │ │ │ ├── ChannelExtDAOImpl.java
│ │ │ │ ├── ChargeOrderExtDAOImpl.java
│ │ │ │ ├── CodeExtDAOImpl.java
│ │ │ │ ├── ContactExtDAOImpl.java
│ │ │ │ ├── EnterpriseExtDAOImpl.java
│ │ │ │ ├── EnterpriseLimitExtDAOImpl.java
│ │ │ │ ├── EnterpriseRoleExtDAOImpl.java
│ │ │ │ ├── EnterpriseUserExtDAOImpl.java
│ │ │ │ ├── ISmsRealTimeStatisticsExtDAOImpl.java
│ │ │ │ ├── PlatformSmsStatisticsExtDAOImpl.java
│ │ │ │ ├── SmsRouteExtDAOImpl.java
│ │ │ │ ├── SmsStatisticsExtDAOImpl.java
│ │ │ │ ├── SmsTemplateExtDAOImpl.java
│ │ │ │ └── TimerExtDAOImpl.java
│ │ │ └── entity
│ │ │ └── business
│ │ │ ├── AdminLimit.java
│ │ │ ├── AdminLimitExample.java
│ │ │ ├── AdminLimitMapper.xml
│ │ │ ├── AdminRole.java
│ │ │ ├── AdminRoleExample.java
│ │ │ ├── AdminRoleLimit.java
│ │ │ ├── AdminRoleLimitExample.java
│ │ │ ├── AdminRoleLimitMapper.xml
│ │ │ ├── AdminRoleMapper.xml
│ │ │ ├── AdminUser.java
│ │ │ ├── AdminUserExample.java
│ │ │ ├── AdminUserMapper.xml
│ │ │ ├── AdminUserRoles.java
│ │ │ ├── AdminUserRolesExample.java
│ │ │ ├── AdminUserRolesMapper.xml
│ │ │ ├── Agent.java
│ │ │ ├── AgentCharge.java
│ │ │ ├── AgentChargeExample.java
│ │ │ ├── AgentChargeMapper.xml
│ │ │ ├── AgentEnterpriseUserCharge.java
│ │ │ ├── AgentEnterpriseUserChargeExample.java
│ │ │ ├── AgentEnterpriseUserChargeMapper.xml
│ │ │ ├── AgentExample.java
│ │ │ ├── AgentFee.java
│ │ │ ├── AgentFeeExample.java
│ │ │ ├── AgentFeeMapper.xml
│ │ │ ├── AgentLimit.java
│ │ │ ├── AgentLimitExample.java
│ │ │ ├── AgentLimitMapper.xml
│ │ │ ├── AgentMapper.xml
│ │ │ ├── AgentProduct.java
│ │ │ ├── AgentProductExample.java
│ │ │ ├── AgentProductMapper.xml
│ │ │ ├── AgentRole.java
│ │ │ ├── AgentRoleExample.java
│ │ │ ├── AgentRoleLimit.java
│ │ │ ├── AgentRoleLimitExample.java
│ │ │ ├── AgentRoleLimitMapper.xml
│ │ │ ├── AgentRoleMapper.xml
│ │ │ ├── AgentRoles.java
│ │ │ ├── AgentRolesExample.java
│ │ │ ├── AgentRolesMapper.xml
│ │ │ ├── Alarm.java
│ │ │ ├── AlarmExample.java
│ │ │ ├── AlarmLog.java
│ │ │ ├── AlarmLogExample.java
│ │ │ ├── AlarmLogMapper.xml
│ │ │ ├── AlarmMapper.xml
│ │ │ ├── BlackList.java
│ │ │ ├── BlackListExample.java
│ │ │ ├── BlackListMapper.xml
│ │ │ ├── Channel.java
│ │ │ ├── ChannelDiversion.java
│ │ │ ├── ChannelDiversionExample.java
│ │ │ ├── ChannelDiversionMapper.xml
│ │ │ ├── ChannelExample.java
│ │ │ ├── ChannelFee.java
│ │ │ ├── ChannelFeeExample.java
│ │ │ ├── ChannelFeeMapper.xml
│ │ │ ├── ChannelMapper.xml
│ │ │ ├── ChargeOrder.java
│ │ │ ├── ChargeOrderExample.java
│ │ │ ├── ChargeOrderMapper.xml
│ │ │ ├── Code.java
│ │ │ ├── CodeExample.java
│ │ │ ├── CodeMapper.xml
│ │ │ ├── CodeSort.java
│ │ │ ├── CodeSortExample.java
│ │ │ ├── CodeSortMapper.xml
│ │ │ ├── Contact.java
│ │ │ ├── ContactExample.java
│ │ │ ├── ContactGroup.java
│ │ │ ├── ContactGroupExample.java
│ │ │ ├── ContactGroupMapper.xml
│ │ │ ├── ContactMapper.xml
│ │ │ ├── Enterprise.java
│ │ │ ├── EnterpriseExample.java
│ │ │ ├── EnterpriseLimit.java
│ │ │ ├── EnterpriseLimitExample.java
│ │ │ ├── EnterpriseLimitMapper.xml
│ │ │ ├── EnterpriseMapper.xml
│ │ │ ├── EnterpriseRole.java
│ │ │ ├── EnterpriseRoleExample.java
│ │ │ ├── EnterpriseRoleLimit.java
│ │ │ ├── EnterpriseRoleLimitExample.java
│ │ │ ├── EnterpriseRoleLimitMapper.xml
│ │ │ ├── EnterpriseRoleMapper.xml
│ │ │ ├── EnterpriseUser.java
│ │ │ ├── EnterpriseUserExample.java
│ │ │ ├── EnterpriseUserFee.java
│ │ │ ├── EnterpriseUserFeeExample.java
│ │ │ ├── EnterpriseUserFeeMapper.xml
│ │ │ ├── EnterpriseUserMapper.xml
│ │ │ ├── EnterpriseUserRoles.java
│ │ │ ├── EnterpriseUserRolesExample.java
│ │ │ ├── EnterpriseUserRolesMapper.xml
│ │ │ ├── ExportFile.java
│ │ │ ├── ExportFileExample.java
│ │ │ ├── ExportFileMapper.xml
│ │ │ ├── InterceptStrategy.java
│ │ │ ├── InterceptStrategyExample.java
│ │ │ ├── InterceptStrategyMapper.xml
│ │ │ ├── Invoice.java
│ │ │ ├── InvoiceExample.java
│ │ │ ├── InvoiceMapper.xml
│ │ │ ├── MmsMaterial.java
│ │ │ ├── MmsMaterialExample.java
│ │ │ ├── MmsMaterialMapper.xml
│ │ │ ├── MmsTemplate.java
│ │ │ ├── MmsTemplateExample.java
│ │ │ ├── MmsTemplateMapper.xml
│ │ │ ├── MobileArea.java
│ │ │ ├── MobileAreaExample.java
│ │ │ ├── MobileAreaMapper.xml
│ │ │ ├── Platform.java
│ │ │ ├── PlatformExample.java
│ │ │ ├── PlatformMapper.xml
│ │ │ ├── PlatformSmsStatistics.java
│ │ │ ├── PlatformSmsStatisticsExample.java
│ │ │ ├── PlatformSmsStatisticsMapper.xml
│ │ │ ├── Product.java
│ │ │ ├── ProductChannels.java
│ │ │ ├── ProductChannelsDiversion.java
│ │ │ ├── ProductChannelsDiversionExample.java
│ │ │ ├── ProductChannelsDiversionMapper.xml
│ │ │ ├── ProductChannelsExample.java
│ │ │ ├── ProductChannelsMapper.xml
│ │ │ ├── ProductExample.java
│ │ │ ├── ProductMapper.xml
│ │ │ ├── Properties.java
│ │ │ ├── PropertiesExample.java
│ │ │ ├── PropertiesMapper.xml
│ │ │ ├── SensitiveWord.java
│ │ │ ├── SensitiveWordExample.java
│ │ │ ├── SensitiveWordMapper.xml
│ │ │ ├── SmsRealTimeStatistics.java
│ │ │ ├── SmsRealTimeStatisticsExample.java
│ │ │ ├── SmsRealTimeStatisticsMapper.xml
│ │ │ ├── SmsRoute.java
│ │ │ ├── SmsRouteExample.java
│ │ │ ├── SmsRouteMapper.xml
│ │ │ ├── SmsStatistics.java
│ │ │ ├── SmsStatisticsExample.java
│ │ │ ├── SmsStatisticsMapper.xml
│ │ │ ├── SmsTemplate.java
│ │ │ ├── SmsTemplateExample.java
│ │ │ ├── SmsTemplateMapper.xml
│ │ │ ├── SystemLog.java
│ │ │ ├── SystemLogExample.java
│ │ │ ├── SystemLogMapper.xml
│ │ │ ├── WhiteList.java
│ │ │ ├── WhiteListExample.java
│ │ │ ├── WhiteListMapper.xml
│ │ │ └── ext
│ │ │ ├── AdminLimitExt.java
│ │ │ ├── AdminLimitExtMapper.xml
│ │ │ ├── AdminRoleExt.java
│ │ │ ├── AdminRoleExtMapper.xml
│ │ │ ├── AdminUserExt.java
│ │ │ ├── AdminUserExtMapper.xml
│ │ │ ├── AgentChargeExt.java
│ │ │ ├── AgentChargeExtMapper.xml
│ │ │ ├── AgentEnterpriseUserChargeExt.java
│ │ │ ├── AgentEnterpriseUserChargeExtMapper.xml
│ │ │ ├── AgentExt.java
│ │ │ ├── AgentExtMapper.xml
│ │ │ ├── AgentLimitExt.java
│ │ │ ├── AgentLimitExtMapper.xml
│ │ │ ├── AgentRoleExt.java
│ │ │ ├── AgentRoleExtMapper.xml
│ │ │ ├── AlarmExt.java
│ │ │ ├── BlackListExt.java
│ │ │ ├── BlackListExtMapper.xml
│ │ │ ├── ChannelExt.java
│ │ │ ├── ChannelExtMapper.xml
│ │ │ ├── ChannelResult.java
│ │ │ ├── ChargeOrderExt.java
│ │ │ ├── ChargeOrderExtMapper.xml
│ │ │ ├── CodeExt.java
│ │ │ ├── CodeExtMapper.xml
│ │ │ ├── ContactExt.java
│ │ │ ├── ContactExtMapper.xml
│ │ │ ├── EnterpriseExt.java
│ │ │ ├── EnterpriseExtMapper.xml
│ │ │ ├── EnterpriseLimitExt.java
│ │ │ ├── EnterpriseLimitExtMapper.xml
│ │ │ ├── EnterpriseRoleExt.java
│ │ │ ├── EnterpriseRoleExtMapper.xml
│ │ │ ├── EnterpriseUserExt.java
│ │ │ ├── EnterpriseUserExtMapper.xml
│ │ │ ├── ExportFileExt.java
│ │ │ ├── MmsTemplateExt.java
│ │ │ ├── PlatformSmsStatisticsExt.java
│ │ │ ├── PlatformSmsStatisticsExtMapper.xml
│ │ │ ├── ProductExt.java
│ │ │ ├── SensitiveWordExt.java
│ │ │ ├── SmsRealTimeStatisticsExt.java
│ │ │ ├── SmsRealTimeStatisticstMapper.xml
│ │ │ ├── SmsRouteExt.java
│ │ │ ├── SmsRouteExtMapper.xml
│ │ │ ├── SmsStatisticsExt.java
│ │ │ ├── SmsStatisticsExtMapper.xml
│ │ │ ├── SmsTemplateExt.java
│ │ │ └── SmsTemplateExtMapper.xml
│ │ └── sms-send-dao
│ │ ├── pom.xml
│ │ └── src
│ │ └── main
│ │ └── java
│ │ └── com
│ │ └── hero
│ │ └── wireless
│ │ └── web
│ │ ├── dao
│ │ │ ├── ibatis
│ │ │ │ ├── MybatisBaseSendExtDao.java
│ │ │ │ └── send
│ │ │ │ └── ext
│ │ │ │ ├── InboxExtDAOImpl.java
│ │ │ │ ├── InputExtDAOImpl.java
│ │ │ │ ├── InputLogExtDAOImpl.java
│ │ │ │ ├── ReportExtDAOImpl.java
│ │ │ │ ├── ReportNotifyExtDAOImpl.java
│ │ │ │ └── SubmitExtDAOImpl.java
│ │ │ └── send
│ │ │ ├── IAutoReplySmsDAO.java
│ │ │ ├── IInboxDAO.java
│ │ │ ├── IInputAwaitDAO.java
│ │ │ ├── IInputDAO.java
│ │ │ ├── IInputLogDAO.java
│ │ │ ├── IReportAwaitDAO.java
│ │ │ ├── IReportDAO.java
│ │ │ ├── IReportExtraDAO.java
│ │ │ ├── IReportNotifyAwaitDAO.java
│ │ │ ├── IReportNotifyDAO.java
│ │ │ ├── ISubmitAwaitDAO.java
│ │ │ ├── ISubmitDAO.java
│ │ │ ├── ISubmitExpiredDAO.java
│ │ │ └── ext
│ │ │ ├── IInboxExtDAO.java
│ │ │ ├── IInputExtDAO.java
│ │ │ ├── IInputLogExtDAO.java
│ │ │ ├── IReportExtDAO.java
│ │ │ ├── IReportNotifyExtDAO.java
│ │ │ └── ISubmitExtDAO.java
│ │ └── entity
│ │ └── send
│ │ ├── AutoReplySms.java
│ │ ├── AutoReplySmsExample.java
│ │ ├── AutoReplySmsMapper.xml
│ │ ├── Inbox.java
│ │ ├── InboxExample.java
│ │ ├── InboxMapper.xml
│ │ ├── Input.java
│ │ ├── InputAwait.java
│ │ ├── InputAwaitExample.java
│ │ ├── InputAwaitMapper.xml
│ │ ├── InputExample.java
│ │ ├── InputLog.java
│ │ ├── InputLogExample.java
│ │ ├── InputLogMapper.xml
│ │ ├── InputMapper.xml
│ │ ├── Report.java
│ │ ├── ReportAwait.java
│ │ ├── ReportAwaitExample.java
│ │ ├── ReportAwaitMapper.xml
│ │ ├── ReportExample.java
│ │ ├── ReportExtra.java
│ │ ├── ReportExtraExample.java
│ │ ├── ReportExtraMapper.xml
│ │ ├── ReportMapper.xml
│ │ ├── ReportNotify.java
│ │ ├── ReportNotifyAwait.java
│ │ ├── ReportNotifyAwaitExample.java
│ │ ├── ReportNotifyAwaitMapper.xml
│ │ ├── ReportNotifyExample.java
│ │ ├── ReportNotifyMapper.xml
│ │ ├── Submit.java
│ │ ├── SubmitAwait.java
│ │ ├── SubmitAwaitExample.java
│ │ ├── SubmitAwaitMapper.xml
│ │ ├── SubmitExample.java
│ │ ├── SubmitExpired.java
│ │ ├── SubmitExpiredExample.java
│ │ ├── SubmitExpiredMapper.xml
│ │ ├── SubmitMapper.xml
│ │ └── ext
│ │ ├── InboxExt.java
│ │ ├── InboxExtMapper.xml
│ │ ├── InputExt.java
│ │ ├── InputExtMapper.xml
│ │ ├── InputLogExt.java
│ │ ├── InputLogExtMapper.xml
│ │ ├── ReportExt.java
│ │ ├── ReportExtMapper.xml
│ │ ├── ReportNotifyAwaitExt.java
│ │ ├── ReportNotifyExt.java
│ │ ├── ReportNotifyExtMapper.xml
│ │ ├── SubmitAwaitExt.java
│ │ ├── SubmitExt.java
│ │ ├── SubmitExtMapper.xml
│ │ ├── SubmitSmsRequest.java
│ │ ├── TimerExtMapper.xml
│ │ └── WaitSendSmsStatiistic.java
│ └── sms-util
│ ├── pom.xml
│ └── src
│ └── main
│ └── java
│ └── com
│ └── drondea
│ └── wireless
│ ├── config
│ │ ├── Constant.java
│ │ └── ResultStatus.java
│ └── util
│ ├── Base64Utils.java
│ ├── BlurUtil.java
│ ├── ByteUtils.java
│ ├── CertificateUtil.java
│ ├── CommonThreadPoolFactory.java
│ ├── DateTime.java
│ ├── DesUtil.java
│ ├── DocumentUtil.java
│ ├── EPlatform.java
│ ├── ExcelUtil.java
│ ├── GoogleAuthenticatorUtil.java
│ ├── IpUtil.java
│ ├── MailUtils.java
│ ├── MoneyUtils.java
│ ├── NoLogServiceException.java
│ ├── NumberConvert.java
│ ├── OSinfo.java
│ ├── ProtoStuffSerializer.java
│ ├── QrCodeUtils.java
│ ├── RandomUtil.java
│ ├── SecretUtil.java
│ ├── ServiceException.java
│ ├── SuperLogger.java
│ └── ThreadFactoryImpl.java
└── 好例子网_开源短信平台.zip
474 directories, 2387 files
网友评论
我要评论