├── .gitignore ├── README.md ├── backend ├── .idea │ ├── .gitignore │ ├── .name │ ├── compiler.xml │ ├── encodings.xml │ ├── git_toolbox_prj.xml │ ├── jarRepositories.xml │ ├── libraries │ │ ├── Maven__ch_qos_logback_logback_classic_1_2_3.xml │ │ ├── Maven__ch_qos_logback_logback_core_1_2_3.xml │ │ ├── Maven__cn_hutool_hutool_all_5_5_7.xml │ │ ├── Maven__com_alibaba_fastjson_1_2_59.xml │ │ ├── Maven__com_alipay_sdk_alipay_sdk_java_3_1_0.xml │ │ ├── Maven__com_auth0_java_jwt_3_4_1.xml │ │ ├── Maven__com_baomidou_dynamic_datasource_spring_boot_starter_2_5_4.xml │ │ ├── Maven__com_baomidou_mybatis_plus_3_1_1.xml │ │ ├── Maven__com_baomidou_mybatis_plus_annotation_3_1_1.xml │ │ ├── Maven__com_baomidou_mybatis_plus_boot_starter_3_1_1.xml │ │ ├── Maven__com_baomidou_mybatis_plus_core_3_1_1.xml │ │ ├── Maven__com_baomidou_mybatis_plus_extension_3_1_1.xml │ │ ├── Maven__com_baomidou_mybatis_plus_generator_3_1_1.xml │ │ ├── Maven__com_fasterxml_classmate_1_4_0.xml │ │ ├── Maven__com_fasterxml_jackson_core_jackson_annotations_2_9_0.xml │ │ ├── Maven__com_fasterxml_jackson_core_jackson_core_2_9_7.xml │ │ ├── Maven__com_fasterxml_jackson_core_jackson_databind_2_9_7.xml │ │ ├── Maven__com_fasterxml_jackson_datatype_jackson_datatype_jdk8_2_9_7.xml │ │ ├── Maven__com_fasterxml_jackson_datatype_jackson_datatype_jsr310_2_9_7.xml │ │ ├── Maven__com_fasterxml_jackson_module_jackson_module_parameter_names_2_9_7.xml │ │ ├── Maven__com_github_binarywang_weixin_java_common_4_0_0.xml │ │ ├── Maven__com_github_binarywang_weixin_java_miniapp_4_0_0.xml │ │ ├── Maven__com_github_jsqlparser_jsqlparser_1_2.xml │ │ ├── Maven__com_github_virtuald_curvesapi_1_04.xml │ │ ├── Maven__com_google_code_findbugs_jsr305_1_3_9.xml │ │ ├── Maven__com_google_code_gson_gson_2_8_5.xml │ │ ├── Maven__com_google_errorprone_error_prone_annotations_2_0_18.xml │ │ ├── Maven__com_google_guava_guava_23_0.xml │ │ ├── Maven__com_google_j2objc_j2objc_annotations_1_1.xml │ │ ├── Maven__com_mchange_mchange_commons_java_0_2_11.xml │ │ ├── Maven__com_sun_mail_javax_mail_1_6_2.xml │ │ ├── Maven__com_thoughtworks_xstream_xstream_1_4_14.xml │ │ ├── Maven__com_wuwenze_ExcelKit_2_0_7.xml │ │ ├── Maven__com_zaxxer_HikariCP_3_2_0.xml │ │ ├── Maven__commons_beanutils_commons_beanutils_1_9_3.xml │ │ ├── Maven__commons_codec_commons_codec_1_11.xml │ │ ├── Maven__commons_collections_commons_collections_3_2_2.xml │ │ ├── Maven__commons_io_commons_io_2_5.xml │ │ ├── Maven__commons_logging_commons_logging_1_1_1.xml │ │ ├── Maven__dom4j_dom4j_1_6_1.xml │ │ ├── Maven__io_lettuce_lettuce_core_5_1_2_RELEASE.xml │ │ ├── Maven__io_micrometer_micrometer_core_1_1_0.xml │ │ ├── Maven__io_netty_netty_buffer_4_1_29_Final.xml │ │ ├── Maven__io_netty_netty_codec_4_1_29_Final.xml │ │ ├── Maven__io_netty_netty_common_4_1_29_Final.xml │ │ ├── Maven__io_netty_netty_handler_4_1_29_Final.xml │ │ ├── Maven__io_netty_netty_resolver_4_1_29_Final.xml │ │ ├── Maven__io_netty_netty_transport_4_1_29_Final.xml │ │ ├── Maven__io_projectreactor_reactor_core_3_2_2_RELEASE.xml │ │ ├── Maven__javax_activation_activation_1_1.xml │ │ ├── Maven__javax_annotation_javax_annotation_api_1_3_2.xml │ │ ├── Maven__javax_validation_validation_api_2_0_1_Final.xml │ │ ├── Maven__jaxen_jaxen_1_1_6.xml │ │ ├── Maven__mysql_mysql_connector_java_8_0_13.xml │ │ ├── Maven__org_apache_commons_commons_collections4_4_1.xml │ │ ├── Maven__org_apache_commons_commons_lang3_3_8_1.xml │ │ ├── Maven__org_apache_commons_commons_pool2_2_6_0.xml │ │ ├── Maven__org_apache_httpcomponents_httpclient_4_5_2.xml │ │ ├── Maven__org_apache_httpcomponents_httpcore_4_4_5.xml │ │ ├── Maven__org_apache_httpcomponents_httpmime_4_5_6.xml │ │ ├── Maven__org_apache_logging_log4j_log4j_api_2_11_1.xml │ │ ├── Maven__org_apache_logging_log4j_log4j_to_slf4j_2_11_1.xml │ │ ├── Maven__org_apache_poi_poi_3_17.xml │ │ ├── Maven__org_apache_poi_poi_ooxml_3_17.xml │ │ ├── Maven__org_apache_poi_poi_ooxml_schemas_3_17.xml │ │ ├── Maven__org_apache_shiro_shiro_cache_1_4_0.xml │ │ ├── Maven__org_apache_shiro_shiro_config_core_1_4_0.xml │ │ ├── Maven__org_apache_shiro_shiro_config_ogdl_1_4_0.xml │ │ ├── Maven__org_apache_shiro_shiro_core_1_4_0.xml │ │ ├── Maven__org_apache_shiro_shiro_crypto_cipher_1_4_0.xml │ │ ├── Maven__org_apache_shiro_shiro_crypto_core_1_4_0.xml │ │ ├── Maven__org_apache_shiro_shiro_crypto_hash_1_4_0.xml │ │ ├── Maven__org_apache_shiro_shiro_event_1_4_0.xml │ │ ├── Maven__org_apache_shiro_shiro_lang_1_4_0.xml │ │ ├── Maven__org_apache_shiro_shiro_spring_1_4_0.xml │ │ ├── Maven__org_apache_shiro_shiro_web_1_4_0.xml │ │ ├── Maven__org_apache_tomcat_embed_tomcat_embed_core_9_0_12.xml │ │ ├── Maven__org_apache_tomcat_embed_tomcat_embed_el_9_0_12.xml │ │ ├── Maven__org_apache_tomcat_embed_tomcat_embed_websocket_9_0_12.xml │ │ ├── Maven__org_apache_xmlbeans_xmlbeans_2_6_0.xml │ │ ├── Maven__org_aspectj_aspectjweaver_1_9_2.xml │ │ ├── Maven__org_attoparser_attoparser_2_0_5_RELEASE.xml │ │ ├── Maven__org_bouncycastle_bcpkix_jdk15on_1_65.xml │ │ ├── Maven__org_bouncycastle_bcprov_jdk15on_1_65.xml │ │ ├── Maven__org_codehaus_mojo_animal_sniffer_annotations_1_14.xml │ │ ├── Maven__org_dom4j_dom4j_2_1_3.xml │ │ ├── Maven__org_freemarker_freemarker_2_3_28.xml │ │ ├── Maven__org_hdrhistogram_HdrHistogram_2_1_9.xml │ │ ├── Maven__org_hibernate_validator_hibernate_validator_6_0_13_Final.xml │ │ ├── Maven__org_jboss_logging_jboss_logging_3_3_2_Final.xml │ │ ├── Maven__org_latencyutils_LatencyUtils_2_0_3.xml │ │ ├── Maven__org_lionsoul_ip2region_1_7_2.xml │ │ ├── Maven__org_mybatis_mybatis_3_5_1.xml │ │ ├── Maven__org_mybatis_mybatis_spring_2_0_1.xml │ │ ├── Maven__org_projectlombok_lombok_1_18_2.xml │ │ ├── Maven__org_quartz_scheduler_quartz_2_3_0.xml │ │ ├── Maven__org_reactivestreams_reactive_streams_1_0_2.xml │ │ ├── Maven__org_slf4j_jcl_over_slf4j_1_7_25.xml │ │ ├── Maven__org_slf4j_jul_to_slf4j_1_7_25.xml │ │ ├── Maven__org_slf4j_slf4j_api_1_7_25.xml │ │ ├── Maven__org_springframework_boot_spring_boot_2_1_0_RELEASE.xml │ │ ├── Maven__org_springframework_boot_spring_boot_actuator_2_1_0_RELEASE.xml │ │ ├── Maven__org_springframework_boot_spring_boot_actuator_autoconfigure_2_1_0_RELEASE.xml │ │ ├── Maven__org_springframework_boot_spring_boot_autoconfigure_2_1_0_RELEASE.xml │ │ ├── Maven__org_springframework_boot_spring_boot_starter_2_1_0_RELEASE.xml │ │ ├── Maven__org_springframework_boot_spring_boot_starter_actuator_2_1_0_RELEASE.xml │ │ ├── Maven__org_springframework_boot_spring_boot_starter_aop_2_1_0_RELEASE.xml │ │ ├── Maven__org_springframework_boot_spring_boot_starter_cache_2_1_0_RELEASE.xml │ │ ├── Maven__org_springframework_boot_spring_boot_starter_data_redis_2_1_0_RELEASE.xml │ │ ├── Maven__org_springframework_boot_spring_boot_starter_jdbc_2_1_0_RELEASE.xml │ │ ├── Maven__org_springframework_boot_spring_boot_starter_json_2_1_0_RELEASE.xml │ │ ├── Maven__org_springframework_boot_spring_boot_starter_logging_2_1_0_RELEASE.xml │ │ ├── Maven__org_springframework_boot_spring_boot_starter_mail_2_1_0_RELEASE.xml │ │ ├── Maven__org_springframework_boot_spring_boot_starter_thymeleaf_2_1_0_RELEASE.xml │ │ ├── Maven__org_springframework_boot_spring_boot_starter_tomcat_2_1_0_RELEASE.xml │ │ ├── Maven__org_springframework_boot_spring_boot_starter_web_2_1_0_RELEASE.xml │ │ ├── Maven__org_springframework_data_spring_data_commons_2_1_2_RELEASE.xml │ │ ├── Maven__org_springframework_data_spring_data_keyvalue_2_1_2_RELEASE.xml │ │ ├── Maven__org_springframework_data_spring_data_redis_2_1_2_RELEASE.xml │ │ ├── Maven__org_springframework_spring_aop_5_1_2_RELEASE.xml │ │ ├── Maven__org_springframework_spring_beans_5_1_2_RELEASE.xml │ │ ├── Maven__org_springframework_spring_context_5_1_2_RELEASE.xml │ │ ├── Maven__org_springframework_spring_context_support_5_1_2_RELEASE.xml │ │ ├── Maven__org_springframework_spring_core_5_1_2_RELEASE.xml │ │ ├── Maven__org_springframework_spring_expression_5_1_2_RELEASE.xml │ │ ├── Maven__org_springframework_spring_jcl_5_1_2_RELEASE.xml │ │ ├── Maven__org_springframework_spring_jdbc_5_1_2_RELEASE.xml │ │ ├── Maven__org_springframework_spring_oxm_5_1_2_RELEASE.xml │ │ ├── Maven__org_springframework_spring_test_5_2_3_RELEASE.xml │ │ ├── Maven__org_springframework_spring_tx_5_1_2_RELEASE.xml │ │ ├── Maven__org_springframework_spring_web_5_1_2_RELEASE.xml │ │ ├── Maven__org_springframework_spring_webmvc_5_1_2_RELEASE.xml │ │ ├── Maven__org_thymeleaf_extras_thymeleaf_extras_java8time_3_0_1_RELEASE.xml │ │ ├── Maven__org_thymeleaf_thymeleaf_3_0_11_RELEASE.xml │ │ ├── Maven__org_thymeleaf_thymeleaf_spring5_3_0_11_RELEASE.xml │ │ ├── Maven__org_unbescape_unbescape_1_1_6_RELEASE.xml │ │ ├── Maven__org_yaml_snakeyaml_1_23.xml │ │ ├── Maven__p6spy_p6spy_3_8_1.xml │ │ ├── Maven__redis_clients_jedis_2_9_0.xml │ │ ├── Maven__stax_stax_api_1_0_1.xml │ │ ├── Maven__xerces_xercesImpl_2_11_0.xml │ │ ├── Maven__xml_apis_xml_apis_1_4_01.xml │ │ ├── Maven__xmlpull_xmlpull_1_1_3_1.xml │ │ └── Maven__xpp3_xpp3_min_1_1_4c.xml │ ├── misc.xml │ ├── modules.xml │ ├── uiDesigner.xml │ └── vcs.xml ├── FEBS_FanK.iml ├── febs_shiro_jwt.iml └── pom.xml └── frontend ├── .babelrc ├── .editorconfig ├── .eslintignore ├── .eslintrc.js ├── .gitattributes ├── .idea ├── codeStyles │ └── codeStyleConfig.xml ├── frontend.iml ├── inspectionProfiles │ └── Project_Default.xml ├── modules.xml ├── vcs.xml └── workspace.xml ├── .postcssrc.js ├── build ├── build.js ├── check-versions.js ├── logo.png ├── utils.js ├── vue-loader.conf.js ├── webpack.base.conf.js ├── webpack.dev.conf.js └── webpack.prod.conf.js ├── config ├── dev.env.js ├── index.js ├── prod.env.js └── test.env.js ├── index.html ├── package-lock.json ├── package.json ├── src ├── FEBS.vue ├── components │ ├── checkbox │ │ ├── ColorCheckbox.vue │ │ └── ImgCheckbox.vue │ ├── datetime │ │ └── RangeDate.vue │ ├── exception │ │ ├── ExceptionPage.vue │ │ └── typeConfig.js │ ├── menu │ │ ├── Contextmenu.vue │ │ ├── SiderMenu.vue │ │ └── menu.js │ ├── setting │ │ ├── Setting.vue │ │ ├── SettingItem.vue │ │ └── StyleItem.vue │ └── tool │ │ └── Drawer.vue ├── main.js ├── router │ └── index.js ├── store │ ├── index.js │ └── modules │ │ ├── account.js │ │ └── setting.js ├── utils │ ├── color.js │ ├── common.js │ ├── device.js │ ├── install.js │ ├── localstorage.js │ ├── map │ │ ├── baiduMap.js │ │ ├── gisMap.js │ │ └── searchmap │ │ │ ├── drawerMap.vue │ │ │ └── index.vue │ ├── permissionDirect.js │ ├── request.js │ ├── spreadJS.js │ ├── urlKey.js │ └── utils.less └── views │ ├── HomePage.vue │ ├── common │ ├── EmptyPageView.vue │ ├── GlobalFooter.vue │ ├── GlobalHeader.vue │ ├── GlobalLayout.vue │ ├── HeadInfo.vue │ ├── HeaderAvatar.vue │ ├── MenuView.vue │ ├── PageContent.vue │ ├── PageLayout.vue │ └── PageView.vue │ ├── error │ ├── 403.vue │ ├── 404.vue │ └── 500.vue │ ├── login │ ├── Common.vue │ ├── Login.vue │ └── Regist.vue │ ├── manage │ ├── board │ │ └── Board.vue │ ├── clientele │ │ ├── Clientele.vue │ │ ├── ClienteleAdd.vue │ │ ├── ClienteleEdit.vue │ │ └── ClienteleView.vue │ ├── component │ │ ├── BottomCharts.vue │ │ ├── CenterCmp.vue │ │ ├── Charts.vue │ │ ├── LabelTag.vue │ │ ├── LeftChart1.vue │ │ ├── LeftChart2.vue │ │ ├── LeftChart3.vue │ │ ├── RightChart1.vue │ │ ├── RightChart2.vue │ │ ├── home │ │ │ └── Home.vue │ │ ├── img │ │ │ ├── bg.png │ │ │ ├── icon1.png │ │ │ ├── icon2.png │ │ │ ├── icon3.png │ │ │ └── icon4.png │ │ ├── index.vue │ │ └── work │ │ │ └── Work.vue │ ├── detection │ │ ├── Detection.vue │ │ ├── DetectionAdd.vue │ │ └── DetectionEdit.vue │ ├── flaw │ │ ├── Flaw.vue │ │ ├── FlawAdd.vue │ │ └── FlawEdit.vue │ ├── income │ │ ├── Income.vue │ │ ├── IncomeAdd.vue │ │ ├── IncomeEdit.vue │ │ └── IncomeView.vue │ ├── materiel │ │ ├── Materiel.vue │ │ ├── MaterielAdd.vue │ │ └── MaterielEdit.vue │ ├── order │ │ ├── Order.vue │ │ ├── OrderAdd.vue │ │ └── OrderEdit.vue │ ├── process │ │ ├── Process.vue │ │ ├── ProcessAdd.vue │ │ ├── ProcessEdit.vue │ │ └── ProcessView.vue │ ├── ship │ │ ├── Ship.vue │ │ ├── ShipAdd.vue │ │ ├── ShipEdit.vue │ │ └── ShipView.vue │ ├── staff │ │ ├── Staff.vue │ │ ├── StaffAdd.vue │ │ └── StaffEdit.vue │ ├── station │ │ ├── Station.vue │ │ ├── StationAdd.vue │ │ └── StationEdit.vue │ ├── supplier │ │ ├── Supplier.vue │ │ ├── SupplierAdd.vue │ │ └── SupplierEdit.vue │ ├── template │ │ ├── Template.vue │ │ ├── TemplateAdd.vue │ │ └── TemplateEdit.vue │ └── vehicle │ │ ├── Vehicle.vue │ │ ├── VehicleAdd.vue │ │ ├── VehicleEdit.vue │ │ └── VehicleView.vue │ ├── monitor │ ├── Httptrace.vue │ ├── JvmInfo.vue │ ├── Online.vue │ ├── RedisInfo.vue │ ├── RedisTerminal.vue │ ├── SystemInfo.vue │ ├── SystemLog.vue │ └── TomcatInfo.vue │ ├── others │ ├── Excel.vue │ └── ImportResult.vue │ ├── personal │ ├── Profile.vue │ ├── UpdateAvatar.vue │ ├── UpdatePassword.vue │ └── UpdateProfile.vue │ ├── quartz │ ├── job │ │ ├── Job.vue │ │ ├── JobAdd.vue │ │ └── JobEdit.vue │ └── log │ │ └── JobLog.vue │ ├── statistics │ ├── check │ │ └── Check.vue │ └── month │ │ └── Month.vue │ ├── system │ ├── dept │ │ ├── Dept.vue │ │ ├── DeptAdd.vue │ │ ├── DeptEdit.vue │ │ └── DeptInputTree.vue │ ├── dict │ │ ├── Dict.vue │ │ ├── DictAdd.vue │ │ └── DictEdit.vue │ ├── menu │ │ ├── ButtonAdd.vue │ │ ├── ButtonEdit.vue │ │ ├── Icon.less │ │ ├── Icons.vue │ │ ├── Menu.vue │ │ ├── MenuAdd.vue │ │ └── MenuEdit.vue │ ├── role │ │ ├── Role.vue │ │ ├── RoleAdd.vue │ │ ├── RoleEdit.vue │ │ └── RoleInfo.vue │ └── user │ │ ├── User.vue │ │ ├── UserAdd.vue │ │ ├── UserEdit.vue │ │ ├── UserInfo.less │ │ └── UserInfo.vue │ ├── user │ ├── evaluate │ │ └── Evaluate.vue │ ├── member │ │ └── Member.vue │ ├── message │ │ ├── Message.vue │ │ └── MessageView.vue │ ├── order │ │ ├── Order.vue │ │ ├── OrderAdd.vue │ │ ├── OrderEdit.vue │ │ └── OrderView.vue │ ├── pay │ │ └── Pay.vue │ ├── personal │ │ └── Personal.vue │ ├── reserve │ │ ├── Reserve.vue │ │ └── ReserveView.vue │ └── vehicle │ │ ├── Vehicle.vue │ │ ├── VehicleAdd.vue │ │ ├── VehicleEdit.vue │ │ └── VehicleView.vue │ └── web │ ├── DailyArticle.vue │ ├── MovieComing.vue │ ├── MovieHot.vue │ └── Weather.vue ├── static ├── .gitkeep ├── avatar │ ├── 17e420c250804efe904a09a33796d5a10.jpg │ ├── 17e420c250804efe904a09a33796d5a16.jpg │ ├── 19034103295190235.jpg │ ├── 1d22f3e41d284f50b2c8fc32e0788698.jpeg │ ├── 20180414165754.jpg │ ├── 20180414165815.jpg │ ├── 20180414165821.jpg │ ├── 20180414165827.jpg │ ├── 20180414165834.jpg │ ├── 20180414165840.jpg │ ├── 20180414165846.jpg │ ├── 20180414165855.jpg │ ├── 20180414165909.jpg │ ├── 20180414165914.jpg │ ├── 20180414165920.jpg │ ├── 20180414165927.jpg │ ├── 20180414165936.jpg │ ├── 20180414165942.jpg │ ├── 20180414165947.jpg │ ├── 20180414165955.jpg │ ├── 20180414170003.jpg │ ├── 2dd7a2d09fa94bf8b5c52e5318868b4d9.jpg │ ├── 2dd7a2d09fa94bf8b5c52e5318868b4df.jpg │ ├── 496b3ace787342f7954b7045b8b06804.jpeg │ ├── 595ba7b05f2e485eb50565a50cb6cc3c.jpeg │ ├── 5997fedcc7bd4cffbd350b40d1b5b9824.jpg │ ├── 5997fedcc7bd4cffbd350b40d1b5b987.jpg │ ├── 87d8194bc9834e9f8f0228e9e530beb1.jpeg │ ├── 8f5b60ef00714a399ee544d331231820.jpeg │ ├── 964e40b005724165b8cf772355796c8c.jpeg │ ├── BiazfanxmamNRoxxVxka.png │ ├── WhxKECPNujWoWEFNdnJE.png │ ├── a3b10296862e40edb811418d64455d00.jpeg │ ├── a43456282d684e0b9319cf332f8ac468.jpeg │ ├── bba284ac05b041a8b8b0d1927868d5c9x.jpg │ ├── c7c4ee7be3eb4e73a19887dc713505145.jpg │ ├── cnrhVkzwxjPwAaCfPbdc.png │ ├── default.jpg │ ├── ff698bb2d25c4d218b3256b46c706ece.jpeg │ ├── gaOngJwsRYRaVAuXXcmB.png │ ├── jZUIxmJycoymBprLOUbT.png │ └── ubnKSIfAJTxIgXOKlciN.png ├── file │ ├── city.json │ └── text.json ├── img │ ├── favicon.ico │ ├── house.jpg │ ├── living-room-1853203_1920.jpg │ ├── logo-blue.png │ ├── logo.png │ ├── side-bar-dark.svg │ ├── side-bar-left.svg │ ├── side-bar-light.svg │ └── side-bar-top.svg ├── less │ ├── Color.less │ └── Common.less └── utils │ └── spreadJS │ ├── gc.spread.excelio.11.0.0.min.js │ └── gc.spread.sheets.all.11.0.0.min.js ├── yarn-error.log └── yarn.lock /.gitignore: -------------------------------------------------------------------------------- 1 | /frontend/node_modules/ 2 | /backend/target 3 | /backend/log 4 | /backend/src/main/resources/mapper -------------------------------------------------------------------------------- /backend/.idea/.gitignore: -------------------------------------------------------------------------------- 1 | # Default ignored files 2 | /shelf/ 3 | /workspace.xml 4 | # Datasource local storage ignored files 5 | /../../../../../:\Project\项目模板-VUE\backend\.idea/dataSources/ 6 | /dataSources.local.xml 7 | # Editor-based HTTP Client requests 8 | /httpRequests/ 9 | -------------------------------------------------------------------------------- /backend/.idea/.name: -------------------------------------------------------------------------------- 1 | FEBS_FanK -------------------------------------------------------------------------------- /backend/.idea/compiler.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 23 | 24 | -------------------------------------------------------------------------------- /backend/.idea/encodings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /backend/.idea/git_toolbox_prj.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 9 | 14 | 15 | -------------------------------------------------------------------------------- /backend/.idea/jarRepositories.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 9 | 10 | 14 | 15 | 19 | 20 | 24 | 25 | 29 | 30 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__ch_qos_logback_logback_classic_1_2_3.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__ch_qos_logback_logback_core_1_2_3.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__cn_hutool_hutool_all_5_5_7.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__com_alibaba_fastjson_1_2_59.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__com_alipay_sdk_alipay_sdk_java_3_1_0.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__com_auth0_java_jwt_3_4_1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__com_baomidou_dynamic_datasource_spring_boot_starter_2_5_4.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__com_baomidou_mybatis_plus_3_1_1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__com_baomidou_mybatis_plus_annotation_3_1_1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__com_baomidou_mybatis_plus_boot_starter_3_1_1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__com_baomidou_mybatis_plus_core_3_1_1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__com_baomidou_mybatis_plus_extension_3_1_1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__com_baomidou_mybatis_plus_generator_3_1_1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__com_fasterxml_classmate_1_4_0.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__com_fasterxml_jackson_core_jackson_annotations_2_9_0.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__com_fasterxml_jackson_core_jackson_core_2_9_7.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__com_fasterxml_jackson_core_jackson_databind_2_9_7.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__com_fasterxml_jackson_datatype_jackson_datatype_jdk8_2_9_7.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__com_fasterxml_jackson_datatype_jackson_datatype_jsr310_2_9_7.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__com_fasterxml_jackson_module_jackson_module_parameter_names_2_9_7.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__com_github_binarywang_weixin_java_common_4_0_0.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__com_github_binarywang_weixin_java_miniapp_4_0_0.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__com_github_jsqlparser_jsqlparser_1_2.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__com_github_virtuald_curvesapi_1_04.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__com_google_code_findbugs_jsr305_1_3_9.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__com_google_code_gson_gson_2_8_5.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__com_google_errorprone_error_prone_annotations_2_0_18.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__com_google_guava_guava_23_0.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__com_google_j2objc_j2objc_annotations_1_1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__com_mchange_mchange_commons_java_0_2_11.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__com_sun_mail_javax_mail_1_6_2.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__com_thoughtworks_xstream_xstream_1_4_14.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__com_wuwenze_ExcelKit_2_0_7.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__com_zaxxer_HikariCP_3_2_0.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__commons_beanutils_commons_beanutils_1_9_3.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__commons_codec_commons_codec_1_11.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__commons_collections_commons_collections_3_2_2.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__commons_io_commons_io_2_5.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__commons_logging_commons_logging_1_1_1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__dom4j_dom4j_1_6_1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__io_lettuce_lettuce_core_5_1_2_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__io_micrometer_micrometer_core_1_1_0.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__io_netty_netty_buffer_4_1_29_Final.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__io_netty_netty_codec_4_1_29_Final.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__io_netty_netty_common_4_1_29_Final.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__io_netty_netty_handler_4_1_29_Final.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__io_netty_netty_resolver_4_1_29_Final.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__io_netty_netty_transport_4_1_29_Final.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__io_projectreactor_reactor_core_3_2_2_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__javax_activation_activation_1_1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__javax_annotation_javax_annotation_api_1_3_2.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__javax_validation_validation_api_2_0_1_Final.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__jaxen_jaxen_1_1_6.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__mysql_mysql_connector_java_8_0_13.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_apache_commons_commons_collections4_4_1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_apache_commons_commons_lang3_3_8_1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_apache_commons_commons_pool2_2_6_0.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_apache_httpcomponents_httpclient_4_5_2.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_apache_httpcomponents_httpcore_4_4_5.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_apache_httpcomponents_httpmime_4_5_6.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_apache_logging_log4j_log4j_api_2_11_1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_apache_logging_log4j_log4j_to_slf4j_2_11_1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_apache_poi_poi_3_17.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_apache_poi_poi_ooxml_3_17.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_apache_poi_poi_ooxml_schemas_3_17.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_apache_shiro_shiro_cache_1_4_0.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_apache_shiro_shiro_config_core_1_4_0.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_apache_shiro_shiro_config_ogdl_1_4_0.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_apache_shiro_shiro_core_1_4_0.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_apache_shiro_shiro_crypto_cipher_1_4_0.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_apache_shiro_shiro_crypto_core_1_4_0.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_apache_shiro_shiro_crypto_hash_1_4_0.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_apache_shiro_shiro_event_1_4_0.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_apache_shiro_shiro_lang_1_4_0.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_apache_shiro_shiro_spring_1_4_0.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_apache_shiro_shiro_web_1_4_0.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_apache_tomcat_embed_tomcat_embed_core_9_0_12.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_apache_tomcat_embed_tomcat_embed_el_9_0_12.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_apache_tomcat_embed_tomcat_embed_websocket_9_0_12.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_apache_xmlbeans_xmlbeans_2_6_0.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_aspectj_aspectjweaver_1_9_2.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_attoparser_attoparser_2_0_5_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_bouncycastle_bcpkix_jdk15on_1_65.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_bouncycastle_bcprov_jdk15on_1_65.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_codehaus_mojo_animal_sniffer_annotations_1_14.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_dom4j_dom4j_2_1_3.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_freemarker_freemarker_2_3_28.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_hdrhistogram_HdrHistogram_2_1_9.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_hibernate_validator_hibernate_validator_6_0_13_Final.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_jboss_logging_jboss_logging_3_3_2_Final.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_latencyutils_LatencyUtils_2_0_3.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_lionsoul_ip2region_1_7_2.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_mybatis_mybatis_3_5_1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_mybatis_mybatis_spring_2_0_1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_projectlombok_lombok_1_18_2.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_quartz_scheduler_quartz_2_3_0.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_reactivestreams_reactive_streams_1_0_2.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_slf4j_jcl_over_slf4j_1_7_25.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_slf4j_jul_to_slf4j_1_7_25.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_slf4j_slf4j_api_1_7_25.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_springframework_boot_spring_boot_2_1_0_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_springframework_boot_spring_boot_actuator_2_1_0_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_springframework_boot_spring_boot_actuator_autoconfigure_2_1_0_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_springframework_boot_spring_boot_autoconfigure_2_1_0_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_springframework_boot_spring_boot_starter_2_1_0_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_springframework_boot_spring_boot_starter_actuator_2_1_0_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_springframework_boot_spring_boot_starter_aop_2_1_0_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_springframework_boot_spring_boot_starter_cache_2_1_0_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_springframework_boot_spring_boot_starter_data_redis_2_1_0_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_springframework_boot_spring_boot_starter_jdbc_2_1_0_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_springframework_boot_spring_boot_starter_json_2_1_0_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_springframework_boot_spring_boot_starter_logging_2_1_0_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_springframework_boot_spring_boot_starter_mail_2_1_0_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_springframework_boot_spring_boot_starter_thymeleaf_2_1_0_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_springframework_boot_spring_boot_starter_tomcat_2_1_0_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_springframework_boot_spring_boot_starter_web_2_1_0_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_springframework_data_spring_data_commons_2_1_2_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_springframework_data_spring_data_keyvalue_2_1_2_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_springframework_data_spring_data_redis_2_1_2_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_springframework_spring_aop_5_1_2_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_springframework_spring_beans_5_1_2_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_springframework_spring_context_5_1_2_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_springframework_spring_context_support_5_1_2_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_springframework_spring_core_5_1_2_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_springframework_spring_expression_5_1_2_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_springframework_spring_jcl_5_1_2_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_springframework_spring_jdbc_5_1_2_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_springframework_spring_oxm_5_1_2_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_springframework_spring_test_5_2_3_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_springframework_spring_tx_5_1_2_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_springframework_spring_web_5_1_2_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_springframework_spring_webmvc_5_1_2_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_thymeleaf_extras_thymeleaf_extras_java8time_3_0_1_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_thymeleaf_thymeleaf_3_0_11_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_thymeleaf_thymeleaf_spring5_3_0_11_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_unbescape_unbescape_1_1_6_RELEASE.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__org_yaml_snakeyaml_1_23.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__p6spy_p6spy_3_8_1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__redis_clients_jedis_2_9_0.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__stax_stax_api_1_0_1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__xerces_xercesImpl_2_11_0.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__xml_apis_xml_apis_1_4_01.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__xmlpull_xmlpull_1_1_3_1.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/libraries/Maven__xpp3_xpp3_min_1_1_4c.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /backend/.idea/misc.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /backend/.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /backend/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /frontend/.babelrc: -------------------------------------------------------------------------------- 1 | { 2 | "presets": [ 3 | ["env", { 4 | "modules": false, 5 | "targets": { 6 | "browsers": ["> 1%", "last 2 versions", "not ie <= 8"] 7 | } 8 | }], 9 | "stage-2" 10 | ], 11 | "plugins": ["transform-vue-jsx", "transform-runtime"], 12 | "env": { 13 | "test": { 14 | "presets": ["env", "stage-2"], 15 | "plugins": ["transform-vue-jsx", "transform-es2015-modules-commonjs", "dynamic-import-node"] 16 | } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /frontend/.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | charset = utf-8 5 | indent_style = space 6 | indent_size = 2 7 | end_of_line = lf 8 | insert_final_newline = true 9 | trim_trailing_whitespace = true 10 | -------------------------------------------------------------------------------- /frontend/.eslintignore: -------------------------------------------------------------------------------- 1 | /build/ 2 | /config/ 3 | /dist/ 4 | /*.js 5 | /test/unit/coverage/ 6 | -------------------------------------------------------------------------------- /frontend/.eslintrc.js: -------------------------------------------------------------------------------- 1 | // https://eslint.org/docs/user-guide/configuring 2 | 3 | module.exports = { 4 | root: true, 5 | parserOptions: { 6 | parser: 'babel-eslint' 7 | }, 8 | env: { 9 | browser: true, 10 | }, 11 | extends: [ 12 | // https://github.com/vuejs/eslint-plugin-vue#priority-a-essential-error-prevention 13 | // consider switching to `plugin:vue/strongly-recommended` or `plugin:vue/recommended` for stricter rules. 14 | 'plugin:vue/essential', 15 | // https://github.com/standard/standard/blob/master/docs/RULES-en.md 16 | 'standard' 17 | ], 18 | // required to lint *.vue files 19 | plugins: [ 20 | 'vue' 21 | ], 22 | // add your custom rules here 23 | rules: { 24 | // allow async-await 25 | 'generator-star-spacing': 'off', 26 | // allow debugger during development 27 | 'no-debugger': process.env.NODE_ENV === 'production' ? 'error' : 'off' 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /frontend/.gitattributes: -------------------------------------------------------------------------------- 1 | *.js linguist-language=vue 2 | 3 | *.css linguist-language=vue 4 | 5 | *.html linguist-language=vue 6 | -------------------------------------------------------------------------------- /frontend/.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | -------------------------------------------------------------------------------- /frontend/.idea/frontend.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /frontend/.idea/inspectionProfiles/Project_Default.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | -------------------------------------------------------------------------------- /frontend/.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /frontend/.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /frontend/.postcssrc.js: -------------------------------------------------------------------------------- 1 | // https://github.com/michael-ciniawsky/postcss-load-config 2 | 3 | module.exports = { 4 | "plugins": { 5 | "postcss-import": {}, 6 | "postcss-url": {}, 7 | // to edit target browsers: use "browserslist" field in package.json 8 | "autoprefixer": {} 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /frontend/build/build.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | require('./check-versions')() 3 | 4 | process.env.NODE_ENV = 'production' 5 | 6 | const ora = require('ora') 7 | const rm = require('rimraf') 8 | const path = require('path') 9 | const chalk = require('chalk') 10 | const webpack = require('webpack') 11 | const config = require('../config') 12 | const webpackConfig = require('./webpack.prod.conf') 13 | 14 | const spinner = ora('building for production...') 15 | spinner.start() 16 | 17 | rm(path.join(config.build.assetsRoot, config.build.assetsSubDirectory), err => { 18 | if (err) throw err 19 | webpack(webpackConfig, (err, stats) => { 20 | spinner.stop() 21 | if (err) throw err 22 | process.stdout.write(stats.toString({ 23 | colors: true, 24 | modules: false, 25 | children: false, // If you are using ts-loader, setting this to true will make TypeScript errors show up during build. 26 | chunks: false, 27 | chunkModules: false 28 | }) + '\n\n') 29 | 30 | if (stats.hasErrors()) { 31 | console.log(chalk.red(' Build failed with errors.\n')) 32 | process.exit(1) 33 | } 34 | 35 | console.log(chalk.cyan(' Build complete.\n')) 36 | console.log(chalk.yellow( 37 | ' Tip: built files are meant to be served over an HTTP server.\n' + 38 | ' Opening index.html over file:// won\'t work.\n' 39 | )) 40 | }) 41 | }) 42 | -------------------------------------------------------------------------------- /frontend/build/check-versions.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | const chalk = require('chalk') 3 | const semver = require('semver') 4 | const packageConfig = require('../package.json') 5 | const shell = require('shelljs') 6 | 7 | function exec (cmd) { 8 | return require('child_process').execSync(cmd).toString().trim() 9 | } 10 | 11 | const versionRequirements = [ 12 | { 13 | name: 'node', 14 | currentVersion: semver.clean(process.version), 15 | versionRequirement: packageConfig.engines.node 16 | } 17 | ] 18 | 19 | if (shell.which('npm')) { 20 | versionRequirements.push({ 21 | name: 'npm', 22 | currentVersion: exec('npm --version'), 23 | versionRequirement: packageConfig.engines.npm 24 | }) 25 | } 26 | 27 | module.exports = function () { 28 | const warnings = [] 29 | 30 | for (let i = 0; i < versionRequirements.length; i++) { 31 | const mod = versionRequirements[i] 32 | 33 | if (!semver.satisfies(mod.currentVersion, mod.versionRequirement)) { 34 | warnings.push(mod.name + ': ' + 35 | chalk.red(mod.currentVersion) + ' should be ' + 36 | chalk.green(mod.versionRequirement) 37 | ) 38 | } 39 | } 40 | 41 | if (warnings.length) { 42 | console.log('') 43 | console.log(chalk.yellow('To use this template, you must update following to modules:')) 44 | console.log() 45 | 46 | for (let i = 0; i < warnings.length; i++) { 47 | const warning = warnings[i] 48 | console.log(' ' + warning) 49 | } 50 | 51 | console.log() 52 | process.exit(1) 53 | } 54 | } 55 | -------------------------------------------------------------------------------- /frontend/build/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/build/logo.png -------------------------------------------------------------------------------- /frontend/build/vue-loader.conf.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | const utils = require('./utils') 3 | const config = require('../config') 4 | const isProduction = process.env.NODE_ENV === 'production' 5 | const sourceMapEnabled = isProduction 6 | ? config.build.productionSourceMap 7 | : config.dev.cssSourceMap 8 | 9 | module.exports = { 10 | loaders: utils.cssLoaders({ 11 | sourceMap: sourceMapEnabled, 12 | extract: isProduction 13 | }), 14 | cssSourceMap: sourceMapEnabled, 15 | cacheBusting: config.dev.cacheBusting, 16 | transformToRequire: { 17 | video: ['src', 'poster'], 18 | source: 'src', 19 | img: 'src', 20 | image: 'xlink:href' 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /frontend/config/dev.env.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | const merge = require('webpack-merge') 3 | const prodEnv = require('./prod.env') 4 | 5 | module.exports = merge(prodEnv, { 6 | NODE_ENV: '"development"' 7 | }) 8 | -------------------------------------------------------------------------------- /frontend/config/index.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | // Template version: 1.3.1 3 | // see http://vuejs-templates.github.io/webpack for documentation. 4 | 5 | const path = require('path') 6 | 7 | module.exports = { 8 | dev: { 9 | 10 | // Paths 11 | assetsSubDirectory: 'static', 12 | assetsPublicPath: '/', 13 | proxyTable: {}, 14 | 15 | // Various Dev Server settings 16 | host: 'localhost', // can be overwritten by process.env.HOST 17 | port: 8081, // can be overwritten by process.env.PORT, if port is in use, a free one will be determined 18 | autoOpenBrowser: false, 19 | errorOverlay: true, 20 | notifyOnErrors: true, 21 | poll: false, // https://webpack.js.org/configuration/dev-server/#devserver-watchoptions- 22 | 23 | // Use Eslint Loader? 24 | // If true, your code will be linted during bundling and 25 | // linting errors and warnings will be shown in the console. 26 | useEslint: false, 27 | // If true, eslint errors and warnings will also be shown in the error overlay 28 | // in the browser. 29 | showEslintErrorsInOverlay: false, 30 | 31 | /** 32 | * Source Maps 33 | */ 34 | 35 | // https://webpack.js.org/configuration/devtool/#development 36 | devtool: 'cheap-module-eval-source-map', 37 | 38 | // If you have problems debugging vue-files in devtools, 39 | // set this to false - it *may* help 40 | // https://vue-loader.vuejs.org/en/options.html#cachebusting 41 | cacheBusting: true, 42 | 43 | cssSourceMap: true 44 | }, 45 | 46 | build: { 47 | // Template for index.html 48 | index: path.resolve(__dirname, '../dist/index.html'), 49 | 50 | // Paths 51 | assetsRoot: path.resolve(__dirname, '../dist'), 52 | assetsSubDirectory: 'static', 53 | assetsPublicPath: './', 54 | 55 | /** 56 | * Source Maps 57 | */ 58 | 59 | productionSourceMap: true, 60 | // https://webpack.js.org/configuration/devtool/#production 61 | devtool: '#source-map', 62 | 63 | // Gzip off by default as many popular static hosts such as 64 | // Surge or Netlify already gzip all static assets for you. 65 | // Before setting to `true`, make sure to: 66 | // npm install --save-dev compression-webpack-plugin 67 | productionGzip: true, 68 | productionGzipExtensions: ['js', 'css'], 69 | 70 | // Run the build command with an extra argument to 71 | // View the bundle analyzer report after build finishes: 72 | // `npm run build --report` 73 | // Set to `true` or `false` to always turn it on or off 74 | bundleAnalyzerReport: true 75 | } 76 | } 77 | -------------------------------------------------------------------------------- /frontend/config/prod.env.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | module.exports = { 3 | NODE_ENV: '"production"' 4 | } 5 | -------------------------------------------------------------------------------- /frontend/config/test.env.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | const merge = require('webpack-merge') 3 | const devEnv = require('./dev.env') 4 | 5 | module.exports = merge(devEnv, { 6 | NODE_ENV: '"testing"' 7 | }) 8 | -------------------------------------------------------------------------------- /frontend/src/components/datetime/RangeDate.vue: -------------------------------------------------------------------------------- 1 | 7 | 8 | 26 | -------------------------------------------------------------------------------- /frontend/src/components/exception/ExceptionPage.vue: -------------------------------------------------------------------------------- 1 | 16 | 17 | 35 | 36 | 72 | -------------------------------------------------------------------------------- /frontend/src/components/exception/typeConfig.js: -------------------------------------------------------------------------------- 1 | const config = { 2 | 403: { 3 | img: 'https://gw.alipayobjects.com/zos/rmsportal/wZcnGqRDyhPOEYFcZDnb.svg', 4 | title: '403', 5 | desc: '抱歉,你无权访问该页面' 6 | }, 7 | 404: { 8 | img: 'https://gw.alipayobjects.com/zos/rmsportal/KpnpchXsobRgLElEozzI.svg', 9 | title: '404', 10 | desc: '抱歉,你访问的页面不存在或仍在开发中' 11 | }, 12 | 500: { 13 | img: 'https://gw.alipayobjects.com/zos/rmsportal/RVRUAYdCGeYNBWoKiIwB.svg', 14 | title: '500', 15 | desc: '抱歉,服务器出错了' 16 | } 17 | } 18 | 19 | export default config 20 | -------------------------------------------------------------------------------- /frontend/src/components/menu/Contextmenu.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 62 | 63 | 72 | -------------------------------------------------------------------------------- /frontend/src/components/setting/SettingItem.vue: -------------------------------------------------------------------------------- 1 | 7 | 8 | 14 | 15 | 26 | -------------------------------------------------------------------------------- /frontend/src/components/setting/StyleItem.vue: -------------------------------------------------------------------------------- 1 | 9 | 10 | 16 | 17 | 37 | -------------------------------------------------------------------------------- /frontend/src/main.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import Febs from './FEBS' 3 | import router from './router' 4 | import Antd from 'ant-design-vue' 5 | import store from './store' 6 | import request from 'utils/request' 7 | import db from 'utils/localstorage' 8 | import VueApexCharts from 'vue-apexcharts' 9 | import dataV from '@jiaminghi/data-view' 10 | 11 | import 'ant-design-vue/dist/antd.css' 12 | 13 | import 'utils/install' 14 | 15 | Vue.config.productionTip = false 16 | Vue.use(Antd) 17 | Vue.use(db) 18 | Vue.use(VueApexCharts) 19 | Vue.use(dataV) 20 | 21 | Vue.component('apexchart', VueApexCharts) 22 | 23 | Vue.use({ 24 | install (Vue) { 25 | Vue.prototype.$db = db 26 | } 27 | }) 28 | 29 | Vue.prototype.$post = request.post 30 | Vue.prototype.$get = request.get 31 | Vue.prototype.$put = request.put 32 | Vue.prototype.$delete = request.delete 33 | Vue.prototype.$export = request.export 34 | Vue.prototype.$download = request.download 35 | Vue.prototype.$upload = request.upload 36 | 37 | /* eslint-disable no-new */ 38 | new Vue({ 39 | router, 40 | store, 41 | render: h => h(Febs) 42 | }).$mount('#febs') 43 | -------------------------------------------------------------------------------- /frontend/src/store/index.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import Vuex from 'vuex' 3 | import account from './modules/account' 4 | import setting from './modules/setting' 5 | 6 | Vue.use(Vuex) 7 | 8 | export default new Vuex.Store({ 9 | modules: { 10 | account, 11 | setting 12 | } 13 | }) 14 | -------------------------------------------------------------------------------- /frontend/src/store/modules/account.js: -------------------------------------------------------------------------------- 1 | import db from 'utils/localstorage' 2 | 3 | export default { 4 | namespaced: true, 5 | state: { 6 | token: db.get('USER_TOKEN'), 7 | expireTime: db.get('EXPIRE_TIME'), 8 | user: db.get('USER'), 9 | permissions: db.get('PERMISSIONS'), 10 | roles: db.get('ROLES') 11 | }, 12 | mutations: { 13 | setToken (state, val) { 14 | db.save('USER_TOKEN', val) 15 | state.token = val 16 | }, 17 | setExpireTime (state, val) { 18 | db.save('EXPIRE_TIME', val) 19 | state.expireTime = val 20 | }, 21 | setUser (state, val) { 22 | db.save('USER', val) 23 | state.user = val 24 | }, 25 | setPermissions (state, val) { 26 | db.save('PERMISSIONS', val) 27 | state.permissions = val 28 | }, 29 | setRoles (state, val) { 30 | db.save('ROLES', val) 31 | state.roles = val 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /frontend/src/store/modules/setting.js: -------------------------------------------------------------------------------- 1 | import db from 'utils/localstorage' 2 | 3 | export default { 4 | namespaced: true, 5 | state: { 6 | sidebar: { 7 | opened: true 8 | }, 9 | settingBar: { 10 | opened: false 11 | }, 12 | isMobile: false, 13 | theme: db.get('THEME', 'light'), 14 | layout: db.get('LAYOUT', 'side'), 15 | systemName: '耗材质量检测系统', 16 | copyright: `${new Date().getFullYear()} FanK`, 17 | multipage: getBooleanValue(db.get('MULTIPAGE'), true), 18 | fixSiderbar: getBooleanValue(db.get('FIX_SIDERBAR'), true), 19 | fixHeader: getBooleanValue(db.get('FIX_HEADER'), true), 20 | colorList: [ 21 | 'rgb(245, 34, 45)', 22 | 'rgb(250, 84, 28)', 23 | 'rgb(250, 173, 20)', 24 | 'rgb(66, 185, 131)', 25 | 'rgb(82, 196, 26)', 26 | 'rgb(24, 144, 255)', 27 | 'rgb(47, 84, 235)', 28 | 'rgb(114, 46, 209)' 29 | ], 30 | color: db.get('COLOR', 'rgb(24, 144, 255)') 31 | }, 32 | mutations: { 33 | setDevice (state, isMobile) { 34 | state.isMobile = isMobile 35 | }, 36 | setTheme (state, theme) { 37 | db.save('THEME', theme) 38 | state.theme = theme 39 | }, 40 | setLayout (state, layout) { 41 | db.save('LAYOUT', layout) 42 | state.layout = layout 43 | }, 44 | setMultipage (state, multipage) { 45 | db.save('MULTIPAGE', multipage) 46 | state.multipage = multipage 47 | }, 48 | setSidebar (state, type) { 49 | state.sidebar.opened = type 50 | }, 51 | fixSiderbar (state, flag) { 52 | db.save('FIX_SIDERBAR', flag) 53 | state.fixSiderbar = flag 54 | }, 55 | fixHeader (state, flag) { 56 | db.save('FIX_HEADER', flag) 57 | state.fixHeader = flag 58 | }, 59 | setSettingBar (state, flag) { 60 | state.settingBar.opened = flag 61 | }, 62 | setColor (state, color) { 63 | db.save('COLOR', color) 64 | state.color = color 65 | } 66 | } 67 | } 68 | 69 | function getBooleanValue (value, defaultValue) { 70 | if (Object.is(value, null)) { 71 | return defaultValue 72 | } 73 | if (JSON.stringify(value) !== '{}') { 74 | return value 75 | } else { 76 | return false 77 | } 78 | } 79 | -------------------------------------------------------------------------------- /frontend/src/utils/color.js: -------------------------------------------------------------------------------- 1 | import { message } from 'ant-design-vue/es' 2 | 3 | let lessNodesAppended 4 | 5 | const updateTheme = primaryColor => { 6 | if (!primaryColor) { 7 | return 8 | } 9 | const hideMessage = message.loading('加载主题...', 0) 10 | function buildIt () { 11 | if (!window.less) { 12 | return 13 | } 14 | setTimeout(() => { 15 | window.less 16 | .modifyVars({ 17 | '@primary-color': primaryColor 18 | }) 19 | .then(() => { 20 | hideMessage() 21 | }) 22 | .catch((e) => { 23 | console.log(e) 24 | message.error('Failed to update theme') 25 | hideMessage() 26 | }) 27 | }, 200) 28 | } 29 | if (!lessNodesAppended) { 30 | // insert less.js and color.less 31 | const lessStyleNode = document.createElement('link') 32 | const lessConfigNode = document.createElement('script') 33 | const lessScriptNode = document.createElement('script') 34 | lessStyleNode.setAttribute('rel', 'stylesheet/less') 35 | lessStyleNode.setAttribute('href', '/static/less/Color.less') 36 | lessConfigNode.innerHTML = ` 37 | window.less = { 38 | async: true, 39 | env: 'production', 40 | javascriptEnabled: true 41 | } 42 | ` 43 | lessScriptNode.src = 'https://cdn.bootcss.com/less.js/3.9.0/less.min.js' 44 | lessScriptNode.async = true 45 | lessScriptNode.onload = () => { 46 | buildIt() 47 | lessScriptNode.onload = null 48 | } 49 | document.body.appendChild(lessStyleNode) 50 | document.body.appendChild(lessConfigNode) 51 | document.body.appendChild(lessScriptNode) 52 | lessNodesAppended = true 53 | } else { 54 | buildIt() 55 | } 56 | } 57 | export { updateTheme } 58 | -------------------------------------------------------------------------------- /frontend/src/utils/common.js: -------------------------------------------------------------------------------- 1 | export function triggerWindowResizeEvent () { 2 | let event = document.createEvent('HTMLEvents') 3 | event.initEvent('resize', true, true) 4 | event.eventType = 'message' 5 | window.dispatchEvent(event) 6 | } 7 | -------------------------------------------------------------------------------- /frontend/src/utils/device.js: -------------------------------------------------------------------------------- 1 | import enquireJs from 'enquire.js' 2 | 3 | const enquireScreen = function (call) { 4 | const hanlder = { 5 | match: function () { 6 | call && call(true) 7 | }, 8 | unmatch: function () { 9 | call && call(false) 10 | } 11 | } 12 | enquireJs.register('only screen and (max-width: 767.99px)', hanlder) 13 | } 14 | 15 | export default enquireScreen 16 | -------------------------------------------------------------------------------- /frontend/src/utils/install.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | 3 | import {hasPermission, hasNoPermission, hasAnyPermission, hasRole, hasAnyRole} from 'utils/permissionDirect' 4 | 5 | const Plugins = [ 6 | hasPermission, 7 | hasNoPermission, 8 | hasAnyPermission, 9 | hasRole, 10 | hasAnyRole 11 | ] 12 | 13 | Plugins.map((plugin) => { 14 | Vue.use(plugin) 15 | }) 16 | 17 | export default Vue 18 | -------------------------------------------------------------------------------- /frontend/src/utils/localstorage.js: -------------------------------------------------------------------------------- 1 | let db = { 2 | save (key, value) { 3 | localStorage.setItem(key, JSON.stringify(value)) 4 | }, 5 | get (key, defaultValue = {}) { 6 | return JSON.parse(localStorage.getItem(key)) || defaultValue 7 | }, 8 | remove (key) { 9 | localStorage.removeItem(key) 10 | }, 11 | clear () { 12 | localStorage.clear() 13 | } 14 | } 15 | 16 | export default db 17 | -------------------------------------------------------------------------------- /frontend/src/utils/spreadJS.js: -------------------------------------------------------------------------------- 1 | // import { message } from 'ant-design-vue/es' 2 | import message from 'ant-design-vue/es/message' 3 | 4 | /* eslint-disable no-undef */ 5 | const newSpread = tableName => { 6 | let spread = new GC.Spread.Sheets.Workbook(document.getElementById('ss')) 7 | // 从本地读取JSON模板 导入到spread里 8 | spread.fromJSON(require(`../../static/file/${fileNameData[tableName]}`)) 9 | return spread 10 | } 11 | 12 | // 固定形式 13 | const fixedForm = (spread, tableName, dataObject) => { 14 | let sheet = spread.getActiveSheet() 15 | sheet.suspendPaint() 16 | let data = rowColData[tableName] 17 | Object.keys(dataObject).forEach(key => { // key就是列名 18 | if (data[key]) { 19 | sheet.setValue(data[key].row, data[key].col, dataObject[key]) 20 | } 21 | }) 22 | sheet.resumePaint() 23 | return spread 24 | } 25 | 26 | // 浮动形式 27 | const floatForm = (spread, tableName, dataSource) => { 28 | let sheet = spread.getActiveSheet() 29 | sheet.suspendPaint() 30 | let startRow = startRowData[tableName] // startRowData里记录的是编号 index为 编号减1 31 | sheet.addRows(startRow, dataSource.length - 1) // length - 1 是因为原本就有一行 32 | for (let i = 0, len = dataSource.length - 1; i < len; i++) { 33 | sheet.copyTo(startRow - 1, 1, startRow + i, 1, 1, sheet.getColumnCount() - 1, GC.Spread.Sheets.CopyToOptions.all) 34 | sheet.setRowHeight(startRow + i, sheet.getRowHeight(startRow - 1)) 35 | } 36 | // 这里开始插入数据 37 | sheet.setArray(startRow - 1, 1, dataSource) 38 | sheet.resumePaint() 39 | return spread 40 | } 41 | 42 | const floatReset = (spread, tableName, dataSourceLength) => { 43 | let sheet = spread.getActiveSheet() 44 | let startRow = startRowData[tableName] 45 | sheet.deleteRows(startRow, dataSourceLength - 1) 46 | } 47 | 48 | // 导出操作 49 | const saveExcel = (spread, fileName) => { 50 | let excelIo = new GC.Spread.Excel.IO() 51 | excelIo.save(spread.toJSON(), blob => { 52 | const link = document.createElement('a') 53 | link.download = fileName 54 | link.style.display = 'none' 55 | link.href = URL.createObjectURL(blob) 56 | link.click() 57 | URL.revokeObjectURL(link.href) 58 | }, e => { 59 | console.log(e) 60 | message.error('Failed to export file') 61 | }) 62 | } 63 | 64 | // 表名对应的JSON模板文件名 65 | const fileNameData = { 66 | claimForm: 'claimForm.json', 67 | purchasePlan: 'purchasePlan.json', 68 | inboundOrder: 'inboundOrder.json', 69 | outboundOrder: 'outboundOrder.json', 70 | textTable: 'text.json' 71 | } 72 | 73 | // 表名对应的开始行index 74 | const startRowData = { 75 | textTable: 1, 76 | claimForm: 4, 77 | purchasePlan: 2, 78 | inboundOrder: 8, 79 | outboundOrder: 8 80 | } 81 | 82 | // 表名对应的各列名,列名又对应行数和列数 83 | const rowColData = { 84 | textTable: { 85 | title: {row: 0, col: 1} 86 | } 87 | } 88 | 89 | export { newSpread, fixedForm, floatForm, floatReset, saveExcel } 90 | -------------------------------------------------------------------------------- /frontend/src/utils/urlKey.js: -------------------------------------------------------------------------------- 1 | /* eslint-disable */ 2 | const getUrlKey = (name) => { 3 | return decodeURIComponent((new RegExp('[?|&]' + name + '=' + '([^&;]+?)(&|#|;|$)').exec(location.href) || [, ""])[1].replace(/\+/g, '%20')) || null 4 | 5 | } 6 | 7 | export { getUrlKey } 8 | -------------------------------------------------------------------------------- /frontend/src/utils/utils.less: -------------------------------------------------------------------------------- 1 | .textOverflow() { 2 | overflow: hidden; 3 | text-overflow: ellipsis; 4 | word-break: break-all; 5 | white-space: nowrap; 6 | } 7 | 8 | .textOverflowMulti(@line: 3, @bg: #fff) { 9 | overflow: hidden; 10 | position: relative; 11 | line-height: 1.5em; 12 | max-height: @line * 1.5em; 13 | text-align: justify; 14 | margin-right: -1em; 15 | padding-right: 1em; 16 | &:before { 17 | background: @bg; 18 | content: '...'; 19 | padding: 0 1px; 20 | position: absolute; 21 | right: 14px; 22 | bottom: 0; 23 | } 24 | &:after { 25 | background: white; 26 | content: ''; 27 | margin-top: 0.2em; 28 | position: absolute; 29 | right: 14px; 30 | width: 1em; 31 | height: 1em; 32 | } 33 | } 34 | 35 | .clearfix() { 36 | zoom: 1; 37 | &:before, 38 | &:after { 39 | content: ' '; 40 | display: table; 41 | } 42 | &:after { 43 | clear: both; 44 | visibility: hidden; 45 | font-size: 0; 46 | height: 0; 47 | } 48 | } 49 | -------------------------------------------------------------------------------- /frontend/src/views/common/EmptyPageView.vue: -------------------------------------------------------------------------------- 1 | 4 | 9 | -------------------------------------------------------------------------------- /frontend/src/views/common/GlobalFooter.vue: -------------------------------------------------------------------------------- 1 | 10 | 11 | 17 | 18 | 37 | -------------------------------------------------------------------------------- /frontend/src/views/common/HeadInfo.vue: -------------------------------------------------------------------------------- 1 | 7 | 8 | 27 | 28 | 57 | -------------------------------------------------------------------------------- /frontend/src/views/common/PageContent.vue: -------------------------------------------------------------------------------- 1 | 18 | 19 | 43 | 44 | 109 | -------------------------------------------------------------------------------- /frontend/src/views/common/PageLayout.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 38 | 39 | 62 | -------------------------------------------------------------------------------- /frontend/src/views/common/PageView.vue: -------------------------------------------------------------------------------- 1 | 9 | 10 | 38 | 39 | 49 | -------------------------------------------------------------------------------- /frontend/src/views/error/403.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 11 | 12 | 15 | -------------------------------------------------------------------------------- /frontend/src/views/error/404.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 11 | 12 | 15 | -------------------------------------------------------------------------------- /frontend/src/views/error/500.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 11 | 12 | 15 | -------------------------------------------------------------------------------- /frontend/src/views/login/Common.vue: -------------------------------------------------------------------------------- 1 | 15 | 16 | 44 | 45 | 104 | -------------------------------------------------------------------------------- /frontend/src/views/manage/component/Charts.vue: -------------------------------------------------------------------------------- 1 | 24 | 25 | 85 | 86 | 89 | -------------------------------------------------------------------------------- /frontend/src/views/manage/component/LabelTag.vue: -------------------------------------------------------------------------------- 1 | 10 | 11 | 67 | 68 | 88 | -------------------------------------------------------------------------------- /frontend/src/views/manage/component/LeftChart1.vue: -------------------------------------------------------------------------------- 1 | 9 | 10 | 45 | 46 | 84 | -------------------------------------------------------------------------------- /frontend/src/views/manage/component/LeftChart2.vue: -------------------------------------------------------------------------------- 1 | 9 | 10 | 46 | 47 | 82 | -------------------------------------------------------------------------------- /frontend/src/views/manage/component/LeftChart3.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 44 | 45 | 80 | -------------------------------------------------------------------------------- /frontend/src/views/manage/component/RightChart1.vue: -------------------------------------------------------------------------------- 1 | 15 | 16 | 50 | 51 | 94 | -------------------------------------------------------------------------------- /frontend/src/views/manage/component/RightChart2.vue: -------------------------------------------------------------------------------- 1 | 15 | 16 | 52 | 53 | 96 | -------------------------------------------------------------------------------- /frontend/src/views/manage/component/img/bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/src/views/manage/component/img/bg.png -------------------------------------------------------------------------------- /frontend/src/views/manage/component/img/icon1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/src/views/manage/component/img/icon1.png -------------------------------------------------------------------------------- /frontend/src/views/manage/component/img/icon2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/src/views/manage/component/img/icon2.png -------------------------------------------------------------------------------- /frontend/src/views/manage/component/img/icon3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/src/views/manage/component/img/icon3.png -------------------------------------------------------------------------------- /frontend/src/views/manage/component/img/icon4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/src/views/manage/component/img/icon4.png -------------------------------------------------------------------------------- /frontend/src/views/monitor/RedisTerminal.vue: -------------------------------------------------------------------------------- 1 | 6 | 11 | 14 | -------------------------------------------------------------------------------- /frontend/src/views/statistics/check/Check.vue: -------------------------------------------------------------------------------- 1 | 28 | 29 | 50 | 51 | 80 | -------------------------------------------------------------------------------- /frontend/src/views/system/dept/DeptInputTree.vue: -------------------------------------------------------------------------------- 1 | 9 | 10 | 36 | -------------------------------------------------------------------------------- /frontend/src/views/system/menu/Icon.less: -------------------------------------------------------------------------------- 1 | @active-color: #4a4a48; 2 | ul { 3 | max-height: 700px; 4 | overflow-y: auto; 5 | padding-left: .5rem; 6 | i { 7 | font-size: 1.5rem; 8 | border: 1px solid #f1f1f1; 9 | padding: .2rem; 10 | margin: .3rem; 11 | cursor: pointer; 12 | &.active, &:hover { 13 | border-radius: 2px; 14 | border-color: @active-color; 15 | background-color: @active-color; 16 | color: #fff; 17 | transition: all .3s; 18 | } 19 | } 20 | li { 21 | list-style: none; 22 | float: left; 23 | width: 5%; 24 | text-align: center; 25 | cursor: pointer; 26 | color: #555; 27 | transition: color .3s ease-in-out,background-color .3s ease-in-out; 28 | position: relative; 29 | margin: 3px 0; 30 | border-radius: 4px; 31 | background-color: #fff; 32 | overflow: hidden; 33 | padding: 10px 0 0; 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /frontend/src/views/system/role/RoleInfo.vue: -------------------------------------------------------------------------------- 1 | 27 | 69 | -------------------------------------------------------------------------------- /frontend/src/views/system/user/UserInfo.less: -------------------------------------------------------------------------------- 1 | .user-info { 2 | background: #fff; 3 | padding: 0 10px 10px 10px; 4 | } 5 | .user-info-side { 6 | background: #fff; 7 | } 8 | .user-info-side { 9 | max-width: 10rem !important; 10 | min-width: 10rem !important; 11 | width: 10rem !important; 12 | } 13 | .user-content-one{ 14 | margin-right: 1.2rem; 15 | } 16 | p { 17 | margin-bottom: 1rem; 18 | max-width: 15.5rem; 19 | } 20 | i { 21 | margin-right: .8rem; 22 | } 23 | -------------------------------------------------------------------------------- /frontend/src/views/system/user/UserInfo.vue: -------------------------------------------------------------------------------- 1 | 43 | 83 | 86 | -------------------------------------------------------------------------------- /frontend/src/views/user/pay/Pay.vue: -------------------------------------------------------------------------------- 1 | 12 | 13 | 31 | 33 | -------------------------------------------------------------------------------- /frontend/src/views/web/DailyArticle.vue: -------------------------------------------------------------------------------- 1 | 13 | 59 | 85 | -------------------------------------------------------------------------------- /frontend/static/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/.gitkeep -------------------------------------------------------------------------------- /frontend/static/avatar/17e420c250804efe904a09a33796d5a10.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/17e420c250804efe904a09a33796d5a10.jpg -------------------------------------------------------------------------------- /frontend/static/avatar/17e420c250804efe904a09a33796d5a16.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/17e420c250804efe904a09a33796d5a16.jpg -------------------------------------------------------------------------------- /frontend/static/avatar/19034103295190235.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/19034103295190235.jpg -------------------------------------------------------------------------------- /frontend/static/avatar/1d22f3e41d284f50b2c8fc32e0788698.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/1d22f3e41d284f50b2c8fc32e0788698.jpeg -------------------------------------------------------------------------------- /frontend/static/avatar/20180414165754.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/20180414165754.jpg -------------------------------------------------------------------------------- /frontend/static/avatar/20180414165815.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/20180414165815.jpg -------------------------------------------------------------------------------- /frontend/static/avatar/20180414165821.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/20180414165821.jpg -------------------------------------------------------------------------------- /frontend/static/avatar/20180414165827.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/20180414165827.jpg -------------------------------------------------------------------------------- /frontend/static/avatar/20180414165834.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/20180414165834.jpg -------------------------------------------------------------------------------- /frontend/static/avatar/20180414165840.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/20180414165840.jpg -------------------------------------------------------------------------------- /frontend/static/avatar/20180414165846.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/20180414165846.jpg -------------------------------------------------------------------------------- /frontend/static/avatar/20180414165855.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/20180414165855.jpg -------------------------------------------------------------------------------- /frontend/static/avatar/20180414165909.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/20180414165909.jpg -------------------------------------------------------------------------------- /frontend/static/avatar/20180414165914.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/20180414165914.jpg -------------------------------------------------------------------------------- /frontend/static/avatar/20180414165920.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/20180414165920.jpg -------------------------------------------------------------------------------- /frontend/static/avatar/20180414165927.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/20180414165927.jpg -------------------------------------------------------------------------------- /frontend/static/avatar/20180414165936.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/20180414165936.jpg -------------------------------------------------------------------------------- /frontend/static/avatar/20180414165942.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/20180414165942.jpg -------------------------------------------------------------------------------- /frontend/static/avatar/20180414165947.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/20180414165947.jpg -------------------------------------------------------------------------------- /frontend/static/avatar/20180414165955.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/20180414165955.jpg -------------------------------------------------------------------------------- /frontend/static/avatar/20180414170003.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/20180414170003.jpg -------------------------------------------------------------------------------- /frontend/static/avatar/2dd7a2d09fa94bf8b5c52e5318868b4d9.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/2dd7a2d09fa94bf8b5c52e5318868b4d9.jpg -------------------------------------------------------------------------------- /frontend/static/avatar/2dd7a2d09fa94bf8b5c52e5318868b4df.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/2dd7a2d09fa94bf8b5c52e5318868b4df.jpg -------------------------------------------------------------------------------- /frontend/static/avatar/496b3ace787342f7954b7045b8b06804.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/496b3ace787342f7954b7045b8b06804.jpeg -------------------------------------------------------------------------------- /frontend/static/avatar/595ba7b05f2e485eb50565a50cb6cc3c.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/595ba7b05f2e485eb50565a50cb6cc3c.jpeg -------------------------------------------------------------------------------- /frontend/static/avatar/5997fedcc7bd4cffbd350b40d1b5b9824.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/5997fedcc7bd4cffbd350b40d1b5b9824.jpg -------------------------------------------------------------------------------- /frontend/static/avatar/5997fedcc7bd4cffbd350b40d1b5b987.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/5997fedcc7bd4cffbd350b40d1b5b987.jpg -------------------------------------------------------------------------------- /frontend/static/avatar/87d8194bc9834e9f8f0228e9e530beb1.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/87d8194bc9834e9f8f0228e9e530beb1.jpeg -------------------------------------------------------------------------------- /frontend/static/avatar/8f5b60ef00714a399ee544d331231820.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/8f5b60ef00714a399ee544d331231820.jpeg -------------------------------------------------------------------------------- /frontend/static/avatar/964e40b005724165b8cf772355796c8c.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/964e40b005724165b8cf772355796c8c.jpeg -------------------------------------------------------------------------------- /frontend/static/avatar/BiazfanxmamNRoxxVxka.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/BiazfanxmamNRoxxVxka.png -------------------------------------------------------------------------------- /frontend/static/avatar/WhxKECPNujWoWEFNdnJE.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/WhxKECPNujWoWEFNdnJE.png -------------------------------------------------------------------------------- /frontend/static/avatar/a3b10296862e40edb811418d64455d00.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/a3b10296862e40edb811418d64455d00.jpeg -------------------------------------------------------------------------------- /frontend/static/avatar/a43456282d684e0b9319cf332f8ac468.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/a43456282d684e0b9319cf332f8ac468.jpeg -------------------------------------------------------------------------------- /frontend/static/avatar/bba284ac05b041a8b8b0d1927868d5c9x.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/bba284ac05b041a8b8b0d1927868d5c9x.jpg -------------------------------------------------------------------------------- /frontend/static/avatar/c7c4ee7be3eb4e73a19887dc713505145.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/c7c4ee7be3eb4e73a19887dc713505145.jpg -------------------------------------------------------------------------------- /frontend/static/avatar/cnrhVkzwxjPwAaCfPbdc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/cnrhVkzwxjPwAaCfPbdc.png -------------------------------------------------------------------------------- /frontend/static/avatar/default.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/default.jpg -------------------------------------------------------------------------------- /frontend/static/avatar/ff698bb2d25c4d218b3256b46c706ece.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/ff698bb2d25c4d218b3256b46c706ece.jpeg -------------------------------------------------------------------------------- /frontend/static/avatar/gaOngJwsRYRaVAuXXcmB.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/gaOngJwsRYRaVAuXXcmB.png -------------------------------------------------------------------------------- /frontend/static/avatar/jZUIxmJycoymBprLOUbT.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/jZUIxmJycoymBprLOUbT.png -------------------------------------------------------------------------------- /frontend/static/avatar/ubnKSIfAJTxIgXOKlciN.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/avatar/ubnKSIfAJTxIgXOKlciN.png -------------------------------------------------------------------------------- /frontend/static/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/img/favicon.ico -------------------------------------------------------------------------------- /frontend/static/img/house.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/img/house.jpg -------------------------------------------------------------------------------- /frontend/static/img/living-room-1853203_1920.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/img/living-room-1853203_1920.jpg -------------------------------------------------------------------------------- /frontend/static/img/logo-blue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/img/logo-blue.png -------------------------------------------------------------------------------- /frontend/static/img/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Fankekeke/materiel_quality_cos/af37e43bf93e272379e5655cff979a568113853d/frontend/static/img/logo.png -------------------------------------------------------------------------------- /frontend/static/img/side-bar-dark.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Group 5 Copy 5 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /frontend/static/img/side-bar-left.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Group 5 Copy 5 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /frontend/static/img/side-bar-light.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Group 5 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /frontend/static/img/side-bar-top.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Group 5 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /frontend/static/less/Common.less: -------------------------------------------------------------------------------- 1 | .search{ 2 | margin-bottom: 54px; 3 | } 4 | .fold{ 5 | width: calc(100% - 216px); 6 | display: inline-block 7 | } 8 | .operator{ 9 | margin-bottom: 18px; 10 | } 11 | @media screen and (max-width: 900px) { 12 | .fold { 13 | width: 100%; 14 | } 15 | } 16 | .operator button { 17 | margin-right: 5px; 18 | } 19 | i { 20 | cursor: pointer; 21 | } 22 | --------------------------------------------------------------------------------