├── admin-component ├── pom.xml └── src │ └── main │ └── java │ ├── com │ └── firenay │ │ └── leave │ │ ├── mapper │ │ ├── AdminMapper.java │ │ ├── AuthMapper.java │ │ ├── MenuMapper.java │ │ └── RoleMapper.java │ │ ├── mvc │ │ ├── config │ │ │ ├── LeaveExceptionResolver.java │ │ │ ├── LeaveUserDetailsService.java │ │ │ ├── SecurityAdmin.java │ │ │ └── WebAppSecurityConfig.java │ │ ├── handler │ │ │ ├── AdminHandler.java │ │ │ ├── AssignHandler.java │ │ │ ├── MenuHandler.java │ │ │ ├── RoleHandler.java │ │ │ └── TestHandler.java │ │ └── interceptor │ │ │ └── LoginInterceptor.java │ │ └── service │ │ ├── api │ │ ├── AdminService.java │ │ ├── AuthService.java │ │ ├── MenuService.java │ │ └── RoleService.java │ │ └── impl │ │ ├── AdminServiceImpl.java │ │ ├── AuthServiceImpl.java │ │ ├── MenuServiceImpl.java │ │ └── RoleServiceImpl.java │ └── org │ └── springframework │ ├── security │ └── taglibs │ │ └── authz │ │ └── AbstractAuthorizeTag.java │ └── web │ └── filter │ └── DelegatingFilterProxy.java ├── admin-entity ├── pom.xml └── src │ └── main │ └── java │ └── com │ └── firenay │ └── leave │ ├── Admin.java │ ├── AdminExample.java │ ├── Auth.java │ ├── AuthExample.java │ ├── Menu.java │ ├── MenuExample.java │ ├── Role.java │ ├── RoleExample.java │ └── test │ ├── Address.java │ ├── ParamData.java │ ├── Student.java │ └── Subject.java ├── admin-webui ├── pom.xml └── src │ ├── main │ ├── resources │ │ ├── jdbc.properties │ │ ├── logback.xml │ │ ├── mybatis │ │ │ ├── mapper │ │ │ │ ├── AdminMapper.xml │ │ │ │ ├── AuthMapper.xml │ │ │ │ ├── MenuMapper.xml │ │ │ │ └── RoleMapper.xml │ │ │ └── mybatis-config.xml │ │ ├── spring-persist-mybatis.xml │ │ ├── spring-persist-tx.xml │ │ └── spring-web-mvc.xml │ └── webapp │ │ ├── WEB-INF │ │ ├── admin-add.jsp │ │ ├── admin-edit.jsp │ │ ├── admin-login.jsp │ │ ├── admin-main.jsp │ │ ├── admin-page.jsp │ │ ├── assign-role.jsp │ │ ├── includex │ │ │ ├── include-head.jsp │ │ │ ├── include-nav.jsp │ │ │ └── include-sidebar.jsp │ │ ├── menu-page.jsp │ │ ├── modal │ │ │ ├── menu │ │ │ │ ├── modal-menu-add.jsp │ │ │ │ ├── modal-menu-confirm.jsp │ │ │ │ └── modal-menu-edit.jsp │ │ │ └── role │ │ │ │ ├── modal-role-add.jsp │ │ │ │ ├── modal-role-assign-auth.jsp │ │ │ │ ├── modal-role-confirm.jsp │ │ │ │ └── modal-role-edit.jsp │ │ ├── role-page.jsp │ │ ├── success.jsp │ │ ├── system-error.jsp │ │ └── web.xml │ │ ├── bootstrap │ │ ├── css │ │ │ ├── bootstrap-theme.css │ │ │ ├── bootstrap-theme.css.map │ │ │ ├── bootstrap-theme.min.css │ │ │ ├── bootstrap-theme.min.css.map │ │ │ ├── bootstrap.css │ │ │ ├── bootstrap.css.map │ │ │ ├── bootstrap.min.css │ │ │ └── bootstrap.min.css.map │ │ ├── fonts │ │ │ ├── glyphicons-halflings-regular.eot │ │ │ ├── glyphicons-halflings-regular.svg │ │ │ ├── glyphicons-halflings-regular.ttf │ │ │ ├── glyphicons-halflings-regular.woff │ │ │ └── glyphicons-halflings-regular.woff2 │ │ └── js │ │ │ ├── bootstrap.js │ │ │ ├── bootstrap.min.js │ │ │ └── npm.js │ │ ├── css │ │ ├── carousel.css │ │ ├── doc.min.css │ │ ├── font-awesome.min.css │ │ ├── login.css │ │ ├── main-fireNay.css │ │ ├── pagination_fireNay.css │ │ └── theme.css │ │ ├── fonts │ │ ├── FontAwesome.otf │ │ ├── fontawesome-webfont.eot │ │ ├── fontawesome-webfont.svg │ │ ├── fontawesome-webfont.ttf │ │ ├── fontawesome-webfont.woff │ │ ├── fontawesome4.2 │ │ │ ├── FontAwesome.otf │ │ │ ├── fontawesome-webfont.eot │ │ │ ├── fontawesome-webfont.svg │ │ │ ├── fontawesome-webfont.ttf │ │ │ └── fontawesome-webfont.woff │ │ ├── glyphicons-halflings-regular.eot │ │ ├── glyphicons-halflings-regular.svg │ │ ├── glyphicons-halflings-regular.ttf │ │ └── glyphicons-halflings-regular.woff │ │ ├── img │ │ ├── carousel-1.jpg │ │ ├── carousel-2.jpg │ │ ├── carousel-3.jpg │ │ ├── logo.png │ │ ├── p1.jpg │ │ ├── p2.jpg │ │ ├── p3.jpg │ │ ├── p3.png │ │ ├── pic.jpg │ │ ├── product-1.jpg │ │ ├── product-2.gif │ │ ├── product-3.png │ │ ├── product-4.jpg │ │ ├── product-5.jpg │ │ ├── product-6.jpg │ │ ├── product-7.jpg │ │ ├── product-8.jpg │ │ ├── product-9.jpg │ │ ├── product_detail_body.jpg │ │ ├── product_detail_head.jpg │ │ ├── services-box1.jpg │ │ ├── services-box2.jpg │ │ ├── services-box3.jpg │ │ └── services-box4.jpg │ │ ├── index.jsp │ │ ├── jquery │ │ ├── doc.min.css │ │ ├── jquery-2.1.1.min.js │ │ ├── jquery-form.min.js │ │ └── pagination_fireNay.js │ │ ├── layer │ │ ├── layer.js │ │ ├── mobile │ │ │ ├── layer.js │ │ │ └── need │ │ │ │ └── layer.css │ │ └── theme │ │ │ └── default │ │ │ ├── icon-ext.png │ │ │ ├── icon.png │ │ │ ├── layer.css │ │ │ ├── loading-0.gif │ │ │ ├── loading-1.gif │ │ │ └── loading-2.gif │ │ ├── script │ │ ├── back-to-top.js │ │ ├── docs-fireNay.min.js │ │ └── echarts.js │ │ └── ztree │ │ ├── img │ │ ├── diy │ │ │ ├── 1_close.png │ │ │ ├── 1_open.png │ │ │ ├── 2.png │ │ │ ├── 3.png │ │ │ ├── 4.png │ │ │ ├── 5.png │ │ │ ├── 6.png │ │ │ ├── 7.png │ │ │ ├── 8.png │ │ │ └── 9.png │ │ ├── line_conn.gif │ │ ├── loading.gif │ │ ├── zTreeStandard.gif │ │ └── zTreeStandard.png │ │ ├── jquery.ztree.all-3.5.min.js │ │ └── zTreeStyle.css │ └── test │ └── com │ └── firenay │ └── leave │ └── test │ ├── LeaveTest.java │ └── StringTest.java ├── common-reverse ├── pom.xml └── src │ └── main │ └── resources │ └── generatorConfig.xml ├── common-util ├── pom.xml └── src │ └── main │ └── java │ └── com │ ├── aliyun │ └── api │ │ └── gateway │ │ └── demo │ │ └── util │ │ └── HttpUtils.java │ └── firenay │ └── leave │ ├── constant │ ├── AccessPassResources.java │ └── LeaveConstant.java │ ├── exception │ ├── AccessForbiddenException.java │ ├── LoginAcctAlreadyInUserException.java │ ├── LoginAcctAlreadyInUserUpdateException.java │ ├── LoginFailedException.java │ └── NotloggedException.java │ └── util │ ├── LEAVEUtil.java │ └── ResultEntity.java ├── member-parent ├── member-api │ ├── pom.xml │ └── src │ │ └── main │ │ └── java │ │ └── com │ │ └── firenay │ │ └── leave │ │ └── api │ │ ├── MySQLRemoteService.java │ │ └── RedisRemoteService.java ├── member-authentication-consumer │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── com │ │ │ │ └── firenay │ │ │ │ └── leave │ │ │ │ ├── AuthMain.java │ │ │ │ ├── config │ │ │ │ ├── LeaveWebMvcConfig.java │ │ │ │ └── ShortMessageProperties.java │ │ │ │ └── controller │ │ │ │ ├── MemberController.java │ │ │ │ └── PortalController.java │ │ └── resources │ │ │ ├── application.yml │ │ │ ├── resources │ │ │ └── favicon.ico │ │ │ ├── static │ │ │ ├── bootstrap │ │ │ │ ├── css │ │ │ │ │ ├── bootstrap-theme.css │ │ │ │ │ ├── bootstrap-theme.css.map │ │ │ │ │ ├── bootstrap-theme.min.css │ │ │ │ │ ├── bootstrap-theme.min.css.map │ │ │ │ │ ├── bootstrap.css │ │ │ │ │ ├── bootstrap.css.map │ │ │ │ │ ├── bootstrap.min.css │ │ │ │ │ └── bootstrap.min.css.map │ │ │ │ ├── fonts │ │ │ │ │ ├── glyphicons-halflings-regular.eot │ │ │ │ │ ├── glyphicons-halflings-regular.svg │ │ │ │ │ ├── glyphicons-halflings-regular.ttf │ │ │ │ │ ├── glyphicons-halflings-regular.woff │ │ │ │ │ └── glyphicons-halflings-regular.woff2 │ │ │ │ └── js │ │ │ │ │ ├── bootstrap.js │ │ │ │ │ ├── bootstrap.min.js │ │ │ │ │ └── npm.js │ │ │ ├── css │ │ │ │ ├── carousel.css │ │ │ │ ├── doc.min.css │ │ │ │ ├── font-awesome.min.css │ │ │ │ ├── login.css │ │ │ │ ├── main.css │ │ │ │ └── theme.css │ │ │ ├── fonts │ │ │ │ ├── FontAwesome.otf │ │ │ │ ├── fontawesome-webfont.eot │ │ │ │ ├── fontawesome-webfont.svg │ │ │ │ ├── fontawesome-webfont.ttf │ │ │ │ ├── fontawesome-webfont.woff │ │ │ │ ├── fontawesome4.2 │ │ │ │ │ ├── FontAwesome.otf │ │ │ │ │ ├── fontawesome-webfont.eot │ │ │ │ │ ├── fontawesome-webfont.svg │ │ │ │ │ ├── fontawesome-webfont.ttf │ │ │ │ │ └── fontawesome-webfont.woff │ │ │ │ ├── glyphicons-halflings-regular.eot │ │ │ │ ├── glyphicons-halflings-regular.svg │ │ │ │ ├── glyphicons-halflings-regular.ttf │ │ │ │ └── glyphicons-halflings-regular.woff │ │ │ ├── img │ │ │ │ ├── carousel-1.jpg │ │ │ │ ├── carousel-2.jpg │ │ │ │ ├── carousel-3.jpg │ │ │ │ ├── logo.png │ │ │ │ ├── p1.jpg │ │ │ │ ├── p2.jpg │ │ │ │ ├── p3.jpg │ │ │ │ ├── p3.png │ │ │ │ ├── pic.jpg │ │ │ │ ├── product-1.jpg │ │ │ │ ├── product-2.gif │ │ │ │ ├── product-3.png │ │ │ │ ├── product-4.jpg │ │ │ │ ├── product-5.jpg │ │ │ │ ├── product-6.jpg │ │ │ │ ├── product-7.jpg │ │ │ │ ├── product-8.jpg │ │ │ │ ├── product-9.jpg │ │ │ │ ├── product_detail_body.jpg │ │ │ │ ├── product_detail_head.jpg │ │ │ │ ├── services-box1.jpg │ │ │ │ ├── services-box2.jpg │ │ │ │ ├── services-box3.jpg │ │ │ │ └── services-box4.jpg │ │ │ ├── jquery │ │ │ │ ├── jquery-2.1.1.min.js │ │ │ │ ├── jquery-form.min.js │ │ │ │ └── jquery.pagination.js │ │ │ ├── layer │ │ │ │ ├── layer.js │ │ │ │ ├── mobile │ │ │ │ │ ├── layer.js │ │ │ │ │ └── need │ │ │ │ │ │ └── layer.css │ │ │ │ └── theme │ │ │ │ │ └── default │ │ │ │ │ ├── icon-ext.png │ │ │ │ │ ├── icon.png │ │ │ │ │ ├── layer.css │ │ │ │ │ ├── loading-0.gif │ │ │ │ │ ├── loading-1.gif │ │ │ │ │ └── loading-2.gif │ │ │ ├── script │ │ │ │ ├── back-to-top.js │ │ │ │ ├── docs.min.js │ │ │ │ └── echarts.js │ │ │ └── ztree │ │ │ │ ├── img │ │ │ │ ├── diy │ │ │ │ │ ├── 1_close.png │ │ │ │ │ ├── 1_open.png │ │ │ │ │ ├── 2.png │ │ │ │ │ ├── 3.png │ │ │ │ │ ├── 4.png │ │ │ │ │ ├── 5.png │ │ │ │ │ ├── 6.png │ │ │ │ │ ├── 7.png │ │ │ │ │ ├── 8.png │ │ │ │ │ └── 9.png │ │ │ │ ├── line_conn.gif │ │ │ │ ├── loading.gif │ │ │ │ ├── zTreeStandard.gif │ │ │ │ └── zTreeStandard.png │ │ │ │ ├── jquery.ztree.all-3.5.min.js │ │ │ │ └── zTreeStyle.css │ │ │ └── templates │ │ │ ├── member-center.html │ │ │ ├── member-crowd.html │ │ │ ├── member-login.html │ │ │ ├── member-reg.html │ │ │ └── portal.html │ │ └── test │ │ └── java │ │ └── com │ │ └── firenay │ │ └── leave │ │ └── test │ │ └── AuthMainTest.java ├── member-entity │ ├── pom.xml │ └── src │ │ └── main │ │ └── java │ │ └── com │ │ └── firenay │ │ └── leave │ │ └── entity │ │ ├── po │ │ ├── AddressPO.java │ │ ├── AddressPOExample.java │ │ ├── MemberConfirmInfoPO.java │ │ ├── MemberConfirmInfoPOExample.java │ │ ├── MemberLaunchInfoPO.java │ │ ├── MemberLaunchInfoPOExample.java │ │ ├── MemberPO.java │ │ ├── MemberPOExample.java │ │ ├── OrderPO.java │ │ ├── OrderPOExample.java │ │ ├── OrderProjectPO.java │ │ ├── OrderProjectPOExample.java │ │ ├── ProjectItemPicPO.java │ │ ├── ProjectItemPicPOExample.java │ │ ├── ProjectPO.java │ │ ├── ProjectPOExample.java │ │ ├── ReturnPO.java │ │ ├── ReturnPOExample.java │ │ ├── TagPO.java │ │ ├── TagPOExample.java │ │ ├── TypePO.java │ │ └── TypePOExample.java │ │ └── vo │ │ ├── AddressVO.java │ │ ├── DetailProjectVO.java │ │ ├── DetailReturnVO.java │ │ ├── MemberConfirmInfoVO.java │ │ ├── MemberLauchInfoVO.java │ │ ├── MemberLoginVO.java │ │ ├── MemberVO.java │ │ ├── OrderProjectVO.java │ │ ├── OrderVO.java │ │ ├── PortalProjectVO.java │ │ ├── PortalTypeVO.java │ │ ├── ProjectVO.java │ │ └── ReturnVO.java ├── member-eureka │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── firenay │ │ │ └── leave │ │ │ └── EurekaMain.java │ │ └── resources │ │ └── application.yml ├── member-mysql-provider │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── com │ │ │ │ └── firenay │ │ │ │ └── leave │ │ │ │ ├── MySQLMain.java │ │ │ │ ├── controller │ │ │ │ ├── MemberProviderController.java │ │ │ │ ├── OrderProviderController.java │ │ │ │ └── ProjectProviderController.java │ │ │ │ ├── mapper │ │ │ │ ├── AddressPOMapper.java │ │ │ │ ├── MemberConfirmInfoPOMapper.java │ │ │ │ ├── MemberLaunchInfoPOMapper.java │ │ │ │ ├── MemberPOMapper.java │ │ │ │ ├── OrderPOMapper.java │ │ │ │ ├── OrderProjectPOMapper.java │ │ │ │ ├── ProjectItemPicPOMapper.java │ │ │ │ ├── ProjectPOMapper.java │ │ │ │ ├── ReturnPOMapper.java │ │ │ │ ├── TagPOMapper.java │ │ │ │ └── TypePOMapper.java │ │ │ │ └── service │ │ │ │ ├── Impl │ │ │ │ ├── MemberServiceImpl.java │ │ │ │ ├── OrderServiceImpl.java │ │ │ │ └── ProjectServiceImpl.java │ │ │ │ └── api │ │ │ │ ├── MemberService.java │ │ │ │ ├── OrderService.java │ │ │ │ └── ProjectService.java │ │ └── resources │ │ │ ├── application.yml │ │ │ └── mapper │ │ │ ├── AddressPOMapper.xml │ │ │ ├── MemberConfirmInfoPOMapper.xml │ │ │ ├── MemberLaunchInfoPOMapper.xml │ │ │ ├── MemberPOMapper.xml │ │ │ ├── OrderPOMapper.xml │ │ │ ├── OrderProjectPOMapper.xml │ │ │ ├── ProjectItemPicPOMapper.xml │ │ │ ├── ProjectPOMapper.xml │ │ │ ├── ReturnPOMapper.xml │ │ │ ├── TagPOMapper.xml │ │ │ └── TypePOMapper.xml │ │ └── test │ │ └── java │ │ └── com │ │ └── firenay │ │ └── leave │ │ └── test │ │ └── MySQLMainTest.java ├── member-order-consumer │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── firenay │ │ │ └── leave │ │ │ ├── OrderMain.java │ │ │ └── controller │ │ │ └── OrderController.java │ │ └── resources │ │ ├── application.yml │ │ └── templates │ │ ├── confirm_order.html │ │ └── confirm_return.html ├── member-pay-consumer │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── firenay │ │ │ └── leave │ │ │ ├── PayMain.java │ │ │ ├── config │ │ │ └── PayProperties.java │ │ │ └── controller │ │ │ └── PayController.java │ │ └── resources │ │ └── application.yml ├── member-project-consumer │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── com │ │ │ │ └── firenay │ │ │ │ └── leave │ │ │ │ ├── ProjectMain.java │ │ │ │ ├── config │ │ │ │ ├── LeaveWebMvcConfig.java │ │ │ │ └── OSSProperties.java │ │ │ │ └── controller │ │ │ │ └── ProjectConsumerController.java │ │ └── resources │ │ │ ├── 1.jpg │ │ │ ├── application.yml │ │ │ └── templates │ │ │ ├── project-agree.html │ │ │ ├── project-confirm.html │ │ │ ├── project-detail.html │ │ │ ├── project-launch.html │ │ │ ├── project-return.html │ │ │ ├── project-show-detail.html │ │ │ └── project-success.html │ │ └── test │ │ └── java │ │ └── com │ │ └── firenay │ │ └── leave │ │ └── test │ │ └── OSSTest.java ├── member-redis-provider │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── com │ │ │ │ └── firenay │ │ │ │ └── leave │ │ │ │ ├── RedisMain.java │ │ │ │ └── controller │ │ │ │ └── RedisController.java │ │ └── resources │ │ │ └── application.yml │ │ └── test │ │ └── java │ │ └── com │ │ └── firenay │ │ └── leave │ │ └── test │ │ └── RedisMainTest.java ├── member-zuul │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── firenay │ │ │ └── leave │ │ │ ├── ZuulMain.java │ │ │ └── filter │ │ │ └── LeaveAccessFilter.java │ │ └── resources │ │ └── application.yml └── pom.xml ├── pom.xml ├── project_leave.sql ├── spring-annotation ├── pom.xml └── src │ ├── main │ └── java │ │ └── com │ │ └── firenay │ │ └── spring │ │ ├── MyAnnotationConfiguration.java │ │ └── entity │ │ └── Employee.java │ └── test │ └── java │ └── com │ └── firenay │ └── spring │ └── SpringTest.java ├── spring-boot-Integration ├── mvnw ├── pom.xml └── src │ ├── main │ ├── java │ │ └── com │ │ │ └── firenay │ │ │ └── boot │ │ │ ├── SpringBootIntegrationApplication.java │ │ │ ├── controller │ │ │ └── TemplateController.java │ │ │ ├── entity │ │ │ └── Emp.java │ │ │ └── mapper │ │ │ └── EmpMapper.java │ └── resources │ │ ├── application.yml │ │ ├── mapper │ │ └── EmpMapper.xml │ │ └── templates │ │ ├── include │ │ └── part.html │ │ └── index.html │ └── test │ └── java │ └── com │ └── firenay │ └── boot │ └── SpringBootIntegrationApplicationTests.java ├── spring-cloud-parent ├── pom.xml ├── spring-cloud-common │ ├── pom.xml │ └── src │ │ └── main │ │ └── java │ │ └── com │ │ └── firenay │ │ └── cloud │ │ ├── api │ │ └── EmployeeRemoteService.java │ │ ├── entity │ │ └── Employee.java │ │ ├── factory │ │ └── MyFallBackFactory.java │ │ └── util │ │ └── ResultEntity.java ├── spring-cloud-consumer │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── firenay │ │ │ └── cloud │ │ │ ├── FireNayConsumerMainType.java │ │ │ ├── config │ │ │ └── FireNayConfig.java │ │ │ └── controller │ │ │ └── HumanResourceController.java │ │ └── resources │ │ └── application.yml ├── spring-cloud-dashboard │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── firenay │ │ │ └── cloud │ │ │ └── FireNayDashboard.java │ │ └── resources │ │ └── application.yml ├── spring-cloud-eureka │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── firenay │ │ │ └── cloud │ │ │ └── FireNayEurekaMainType.java │ │ └── resources │ │ └── application.yml ├── spring-cloud-feign-consumer │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── firenay │ │ │ └── cloud │ │ │ ├── FireNayFeignConsumerMainType.java │ │ │ └── controller │ │ │ └── FeignHumanResourceController.java │ │ └── resources │ │ └── application.yml ├── spring-cloud-provider │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── firenay │ │ │ └── cloud │ │ │ ├── FireNayProviderMainType.java │ │ │ └── controller │ │ │ └── EmployeeController.java │ │ └── resources │ │ └── application.yml ├── spring-cloud-providers │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── firenay │ │ │ └── cloud │ │ │ ├── FireNayProvidersMainType.java │ │ │ └── controller │ │ │ └── EmployeeController.java │ │ └── resources │ │ └── application.yml ├── spring-cloud-zuul │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── com │ │ │ └── firenay │ │ │ └── cloud │ │ │ ├── FireNayZuulType.java │ │ │ └── filter │ │ │ └── MyZuulFilter.java │ │ └── resources │ │ └── application.yml └── spring-short-message │ ├── pom.xml │ └── src │ └── main │ └── java │ └── com │ ├── aliyun │ └── api │ │ └── gateway │ │ └── demo │ │ └── util │ │ └── HttpUtils.java │ └── firenay │ └── leave │ └── ShortMessage.java ├── spring-security ├── pom.xml └── src │ └── main │ ├── java │ └── com │ │ └── firenay │ │ └── security │ │ ├── config │ │ ├── MyPasswordEncoder.java │ │ ├── MyUserDetailsService.java │ │ └── WebAppSecurityConfig.java │ │ ├── controller │ │ ├── AdminController.java │ │ └── GongFuController.java │ │ └── entity │ │ └── Admin.java │ ├── resources │ ├── jdbc.properties │ └── spring-mvc.xml │ ├── test │ └── com │ │ └── firenya │ │ └── security │ │ └── SecurityTest.java │ └── webapp │ ├── WEB-INF │ ├── include │ │ ├── navbar.jsp │ │ └── sidebar.jsp │ ├── views │ │ ├── level1 │ │ │ ├── 1.jsp │ │ │ ├── 2.jsp │ │ │ └── 3.jsp │ │ ├── level2 │ │ │ ├── 1.jsp │ │ │ ├── 2.jsp │ │ │ └── 3.jsp │ │ ├── level3 │ │ │ ├── 1.jsp │ │ │ ├── 2.jsp │ │ │ └── 3.jsp │ │ ├── main.jsp │ │ └── no_auth.jsp │ └── web.xml │ ├── index.jsp │ └── layui │ ├── css │ ├── admin.css │ ├── all.css │ ├── layui.css │ ├── layui.mobile.css │ └── modules │ │ ├── code.css │ │ ├── laydate │ │ └── default │ │ │ └── laydate.css │ │ └── layer │ │ └── default │ │ ├── icon-ext.png │ │ ├── icon.png │ │ ├── layer.css │ │ ├── loading-0.gif │ │ ├── loading-1.gif │ │ └── loading-2.gif │ ├── font │ ├── iconfont.eot │ ├── iconfont.svg │ ├── iconfont.ttf │ └── iconfont.woff │ ├── highlight.js │ ├── images │ └── face │ │ ├── 0.gif │ │ ├── 1.gif │ │ ├── 10.gif │ │ ├── 11.gif │ │ ├── 12.gif │ │ ├── 13.gif │ │ ├── 14.gif │ │ ├── 15.gif │ │ ├── 16.gif │ │ ├── 17.gif │ │ ├── 18.gif │ │ ├── 19.gif │ │ ├── 2.gif │ │ ├── 20.gif │ │ ├── 21.gif │ │ ├── 22.gif │ │ ├── 23.gif │ │ ├── 24.gif │ │ ├── 25.gif │ │ ├── 26.gif │ │ ├── 27.gif │ │ ├── 28.gif │ │ ├── 29.gif │ │ ├── 3.gif │ │ ├── 30.gif │ │ ├── 31.gif │ │ ├── 32.gif │ │ ├── 33.gif │ │ ├── 34.gif │ │ ├── 35.gif │ │ ├── 36.gif │ │ ├── 37.gif │ │ ├── 38.gif │ │ ├── 39.gif │ │ ├── 4.gif │ │ ├── 40.gif │ │ ├── 41.gif │ │ ├── 42.gif │ │ ├── 43.gif │ │ ├── 44.gif │ │ ├── 45.gif │ │ ├── 46.gif │ │ ├── 47.gif │ │ ├── 48.gif │ │ ├── 49.gif │ │ ├── 5.gif │ │ ├── 50.gif │ │ ├── 51.gif │ │ ├── 52.gif │ │ ├── 53.gif │ │ ├── 54.gif │ │ ├── 55.gif │ │ ├── 56.gif │ │ ├── 57.gif │ │ ├── 58.gif │ │ ├── 59.gif │ │ ├── 6.gif │ │ ├── 60.gif │ │ ├── 61.gif │ │ ├── 62.gif │ │ ├── 63.gif │ │ ├── 64.gif │ │ ├── 65.gif │ │ ├── 66.gif │ │ ├── 67.gif │ │ ├── 68.gif │ │ ├── 69.gif │ │ ├── 7.gif │ │ ├── 70.gif │ │ ├── 71.gif │ │ ├── 8.gif │ │ └── 9.gif │ ├── jquery.min.js │ ├── lay │ └── modules │ │ ├── carousel.js │ │ ├── code.js │ │ ├── colorpicker.js │ │ ├── element.js │ │ ├── flow.js │ │ ├── form.js │ │ ├── jquery.js │ │ ├── laydate.js │ │ ├── layedit.js │ │ ├── layer.js │ │ ├── laypage.js │ │ ├── laytpl.js │ │ ├── mobile.js │ │ ├── rate.js │ │ ├── slider.js │ │ ├── table.js │ │ ├── tree.js │ │ ├── upload.js │ │ └── util.js │ ├── layui.all.js │ └── layui.js ├── spring-session-a ├── pom.xml └── src │ └── main │ ├── java │ └── com │ │ └── firenay │ │ └── leave │ │ ├── SessionAMain.java │ │ └── controller │ │ └── HelloController.java │ └── resources │ └── application.yml └── spring-session-b ├── pom.xml └── src └── main ├── java └── com │ └── firenay │ └── leave │ ├── SessionBMain.java │ └── controller │ └── HelloController.java └── resources └── application.yml /admin-component/src/main/java/com/firenay/leave/mapper/AdminMapper.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.mapper; 2 | 3 | import com.firenay.leave.AdminExample; 4 | import com.firenay.leave.Admin; 5 | import org.apache.ibatis.annotations.Param; 6 | 7 | import java.util.List; 8 | 9 | public interface AdminMapper { 10 | List selectAdminByKeyword(String keyword); 11 | 12 | int countByExample(AdminExample example); 13 | 14 | /** 15 | * 给添加的用户赋普通用户 16 | */ 17 | int saveInnerAdminRole(@Param("adminId")Integer adminId); 18 | 19 | int deleteByExample(AdminExample example); 20 | 21 | int deleteByPrimaryKey(Integer id); 22 | 23 | int insert(Admin record); 24 | 25 | int insertSelective(Admin record); 26 | 27 | List selectByExample(AdminExample example); 28 | 29 | Admin selectByPrimaryKey(Integer id); 30 | 31 | int updateByExampleSelective(@Param("record") Admin record, @Param("example") AdminExample example); 32 | 33 | int updateByExample(@Param("record") Admin record, @Param("example") AdminExample example); 34 | 35 | int updateByPrimaryKeySelective(Admin record); 36 | 37 | int updateByPrimaryKey(Admin record); 38 | 39 | int deleteRelationship(Integer adminId); 40 | 41 | int saveRelationship(@Param("adminId") Integer adminId, @Param("roleIds") List roleIds); 42 | 43 | /** 44 | * 移除用户的权限 45 | */ 46 | int removeInnerAdminRole(@Param("adminId") Integer adminId); 47 | } -------------------------------------------------------------------------------- /admin-component/src/main/java/com/firenay/leave/mapper/AuthMapper.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.mapper; 2 | 3 | import com.firenay.leave.Auth; 4 | import com.firenay.leave.AuthExample; 5 | import org.apache.ibatis.annotations.Param; 6 | 7 | import java.util.List; 8 | 9 | public interface AuthMapper { 10 | int countByExample(AuthExample example); 11 | 12 | int deleteByExample(AuthExample example); 13 | 14 | int deleteByPrimaryKey(Integer id); 15 | 16 | int insert(Auth record); 17 | 18 | int insertSelective(Auth record); 19 | 20 | List selectByExample(AuthExample example); 21 | 22 | Auth selectByPrimaryKey(Integer id); 23 | 24 | int updateByExampleSelective(@Param("record") Auth record, @Param("example") AuthExample example); 25 | 26 | int updateByExample(@Param("record") Auth record, @Param("example") AuthExample example); 27 | 28 | int updateByPrimaryKeySelective(Auth record); 29 | 30 | int updateByPrimaryKey(Auth record); 31 | 32 | List selectAssignedAuthIdByRoleId(Integer roleId); 33 | 34 | int deleteOldRelationship(Integer roleId); 35 | 36 | int insertNewRelationship(@Param("roleId") Integer roleId, @Param("authIds") List authIds); 37 | 38 | List selectAssignedAuthNameByAdminId(Integer adminId); 39 | } -------------------------------------------------------------------------------- /admin-component/src/main/java/com/firenay/leave/mapper/MenuMapper.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.mapper; 2 | 3 | import com.firenay.leave.MenuExample; 4 | import com.firenay.leave.Menu; 5 | import org.apache.ibatis.annotations.Param; 6 | 7 | import java.util.List; 8 | 9 | public interface MenuMapper { 10 | int countByExample(MenuExample example); 11 | 12 | int deleteByExample(MenuExample example); 13 | 14 | int deleteByPrimaryKey(Integer id); 15 | 16 | int insert(Menu record); 17 | 18 | int insertSelective(Menu record); 19 | 20 | List selectByExample(MenuExample example); 21 | 22 | Menu selectByPrimaryKey(Integer id); 23 | 24 | int updateByExampleSelective(@Param("record") Menu record, @Param("example") MenuExample example); 25 | 26 | int updateByExample(@Param("record") Menu record, @Param("example") MenuExample example); 27 | 28 | int updateByPrimaryKeySelective(Menu record); 29 | 30 | int updateByPrimaryKey(Menu record); 31 | } -------------------------------------------------------------------------------- /admin-component/src/main/java/com/firenay/leave/mapper/RoleMapper.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.mapper; 2 | 3 | import com.firenay.leave.Role; 4 | import com.firenay.leave.RoleExample; 5 | import org.apache.ibatis.annotations.Param; 6 | 7 | import java.util.List; 8 | 9 | public interface RoleMapper { 10 | List selectRoleByKeyword(String keyword); 11 | 12 | int countByExample(RoleExample example); 13 | 14 | int deleteByExample(RoleExample example); 15 | 16 | int deleteByPrimaryKey(@Param("roleId")Integer roleId); 17 | 18 | int insert(Role record); 19 | 20 | int insertSelective(Role record); 21 | 22 | List selectByExample(RoleExample example); 23 | 24 | Role selectByPrimaryKey(Integer id); 25 | 26 | int updateByExampleSelective(@Param("record") Role record, @Param("example") RoleExample example); 27 | 28 | int updateByExample(@Param("record") Role record, @Param("example") RoleExample example); 29 | 30 | int updateByPrimaryKeySelective(Role record); 31 | 32 | int updateByPrimaryKey(Role record); 33 | 34 | /** 35 | * 自定义mapper查询已分配的 36 | */ 37 | List selectAssignedRole(Integer adminId); 38 | 39 | /** 40 | * 自定义mapper查询未分配的 41 | */ 42 | List selectUnAssignedRole(Integer adminId); 43 | 44 | int saveinnerRoleAuth(@Param("roleId") Integer roleId, @Param("authId")int authId); 45 | 46 | } -------------------------------------------------------------------------------- /admin-component/src/main/java/com/firenay/leave/mvc/interceptor/LoginInterceptor.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.mvc.interceptor; 2 | 3 | import com.firenay.leave.exception.AccessForbiddenException; 4 | import com.firenay.leave.constant.LeaveConstant; 5 | import com.firenay.leave.Admin; 6 | import org.springframework.web.servlet.handler.HandlerInterceptorAdapter; 7 | 8 | import javax.servlet.http.HttpServletRequest; 9 | import javax.servlet.http.HttpServletResponse; 10 | import javax.servlet.http.HttpSession; 11 | 12 | /** 13 | *

Title: LoginInterceptor

14 | * Description:对需要登录的请求进行拦截 15 | * date:2020/5/9 10:05 16 | */ 17 | public class LoginInterceptor extends HandlerInterceptorAdapter { 18 | 19 | @Override 20 | public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { 21 | HttpSession session = request.getSession(); 22 | Admin admin = (Admin) session.getAttribute(LeaveConstant.ATTR_NAME_LOGIN_ADMIN); 23 | if(admin == null){ 24 | throw new AccessForbiddenException(LeaveConstant.MESSAGE_ACCESS_FORBIDEN); 25 | } 26 | return true; 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /admin-component/src/main/java/com/firenay/leave/service/api/AdminService.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.service.api; 2 | 3 | import com.firenay.leave.Admin; 4 | 5 | import java.util.List; 6 | 7 | 8 | public interface AdminService { 9 | 10 | int saveAdmin(Admin admin); 11 | 12 | List getAll(); 13 | 14 | /** 15 | * 时候添加权限 16 | */ 17 | int saveInnerAdminRole(Integer adminId); 18 | 19 | /** 20 | * 登录的方法 21 | */ 22 | Admin getAdminByLoginAcct(Admin admin); 23 | 24 | Admin getAdminByLoginAcct(String username); 25 | 26 | /** 27 | * 字段、页码、每页显示数量 28 | */ 29 | List getPageInfo(String keyword); 30 | 31 | /** 32 | * 删除 33 | */ 34 | int remove(Integer adminId); 35 | 36 | Admin getAdminById(Integer adminId); 37 | 38 | /** 39 | * 有选择的更新 40 | */ 41 | int updateAdmin(Admin admin); 42 | 43 | /** 44 | * 删除权限 45 | */ 46 | int saveAdminRoleRelationship(Integer adminId, List roleIds); 47 | 48 | /** 49 | * 删除用户的时候吧权限也删了 50 | */ 51 | int removeInnerAdminRole(Integer adminId); 52 | } 53 | -------------------------------------------------------------------------------- /admin-component/src/main/java/com/firenay/leave/service/api/AuthService.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.service.api; 2 | 3 | import com.firenay.leave.Auth; 4 | 5 | import java.util.List; 6 | import java.util.Map; 7 | 8 | /** 9 | *

Title: AuthService

10 | * Description: 11 | * date:2020/5/12 21:44 12 | */ 13 | public interface AuthService { 14 | 15 | List getAll(); 16 | 17 | List getAssignedAuthIdByRoleId(Integer roleId); 18 | 19 | int saveRoleAuth(Map> map); 20 | 21 | List getAssignedAuthNameByAdminId(Integer adminId); 22 | } 23 | -------------------------------------------------------------------------------- /admin-component/src/main/java/com/firenay/leave/service/api/MenuService.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.service.api; 2 | 3 | import com.firenay.leave.Menu; 4 | 5 | import java.util.List; 6 | 7 | /** 8 | *

Title: MenuService

9 | * Description: 10 | * date:2020/5/11 19:09 11 | */ 12 | public interface MenuService { 13 | 14 | /** 15 | * 获取所有节点 16 | */ 17 | List getAll(); 18 | 19 | void saveMenu(Menu menu); 20 | 21 | void updateMenu(Menu menu); 22 | 23 | void removeMenu(Integer id); 24 | 25 | } 26 | -------------------------------------------------------------------------------- /admin-component/src/main/java/com/firenay/leave/service/api/RoleService.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.service.api; 2 | 3 | import com.firenay.leave.Role; 4 | 5 | import java.util.List; 6 | 7 | /** 8 | *

Title: RoleService

9 | * Description: 10 | * date:2020/5/10 10:32 11 | */ 12 | public interface RoleService { 13 | 14 | List getPageInfo(String keyword); 15 | 16 | int saveRole(Role role); 17 | 18 | int updateRole(Role role); 19 | 20 | /** 21 | * RoleExample执行批量删除 22 | */ 23 | int removeRoles(List roles); 24 | 25 | /** 26 | * 删除角色的时候带走权限 27 | */ 28 | int delinnerRoleAuth(List roles); 29 | 30 | List getAssignedRole(Integer adminId); 31 | 32 | List getUnAssignedRole(Integer adminId); 33 | 34 | /** 35 | * 添加角色的时候带上基本权限 36 | */ 37 | int saveinnerRoleAuth(Integer roleId); 38 | } 39 | -------------------------------------------------------------------------------- /admin-component/src/main/java/com/firenay/leave/service/impl/MenuServiceImpl.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.service.impl; 2 | 3 | import com.firenay.leave.service.api.MenuService; 4 | import com.firenay.leave.Menu; 5 | import com.firenay.leave.MenuExample; 6 | import com.firenay.leave.mapper.MenuMapper; 7 | import org.springframework.stereotype.Service; 8 | 9 | import javax.annotation.Resource; 10 | import java.util.List; 11 | 12 | /** 13 | *

Title: MenuServiceImpl

14 | * Description: 15 | * date:2020/5/11 19:09 16 | */ 17 | @Service 18 | public class MenuServiceImpl implements MenuService { 19 | 20 | @Resource 21 | private MenuMapper menuMapper; 22 | 23 | @Override 24 | public List getAll() { 25 | return menuMapper.selectByExample(new MenuExample()); 26 | } 27 | 28 | @Override 29 | public void saveMenu(Menu menu) { 30 | menuMapper.insert(menu); 31 | } 32 | 33 | @Override 34 | public void updateMenu(Menu menu) { 35 | // 由于pid没有传入,保证 pid 字段不会被置空 36 | menuMapper.updateByPrimaryKeySelective(menu); 37 | } 38 | 39 | @Override 40 | public void removeMenu(Integer id) { 41 | menuMapper.deleteByPrimaryKey(id); 42 | } 43 | 44 | } 45 | -------------------------------------------------------------------------------- /admin-entity/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | admin-parent 6 | com.firenay.leave 7 | 1.0-SNAPSHOT 8 | 9 | 4.0.0 10 | admin-entity 11 | 12 | 13 | org.projectlombok 14 | lombok 15 | compile 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /admin-entity/src/main/java/com/firenay/leave/Auth.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave; 2 | 3 | import lombok.AllArgsConstructor; 4 | import lombok.NoArgsConstructor; 5 | 6 | @AllArgsConstructor 7 | @NoArgsConstructor 8 | public class Auth { 9 | private Integer id; 10 | 11 | private String name; 12 | 13 | private String title; 14 | 15 | private Integer categoryId; 16 | 17 | @Override 18 | public String toString() { 19 | return "Auth{" + 20 | "id=" + id + 21 | ", name='" + name + '\'' + 22 | ", title='" + title + '\'' + 23 | ", categoryId=" + categoryId + 24 | '}'; 25 | } 26 | 27 | public Integer getId() { 28 | return id; 29 | } 30 | 31 | public void setId(Integer id) { 32 | this.id = id; 33 | } 34 | 35 | public String getName() { 36 | return name; 37 | } 38 | 39 | public void setName(String name) { 40 | this.name = name == null ? null : name.trim(); 41 | } 42 | 43 | public String getTitle() { 44 | return title; 45 | } 46 | 47 | public void setTitle(String title) { 48 | this.title = title == null ? null : title.trim(); 49 | } 50 | 51 | public Integer getCategoryId() { 52 | return categoryId; 53 | } 54 | 55 | public void setCategoryId(Integer categoryId) { 56 | this.categoryId = categoryId; 57 | } 58 | } -------------------------------------------------------------------------------- /admin-entity/src/main/java/com/firenay/leave/Role.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave; 2 | 3 | import lombok.AllArgsConstructor; 4 | import lombok.NoArgsConstructor; 5 | 6 | @NoArgsConstructor 7 | @AllArgsConstructor 8 | public class Role { 9 | private Integer id; 10 | 11 | private String name; 12 | 13 | public Integer getId() { 14 | return id; 15 | } 16 | 17 | public void setId(Integer id) { 18 | this.id = id; 19 | } 20 | 21 | public String getName() { 22 | return name; 23 | } 24 | 25 | public void setName(String name) { 26 | this.name = name == null ? null : name.trim(); 27 | } 28 | 29 | @Override 30 | public String toString() { 31 | return "Role{" + 32 | "id=" + id + 33 | ", name='" + name + '\'' + 34 | '}'; 35 | } 36 | } -------------------------------------------------------------------------------- /admin-entity/src/main/java/com/firenay/leave/test/Address.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.test; 2 | 3 | public class Address { 4 | 5 | private String province; 6 | private String city; 7 | private String street; 8 | 9 | public Address() { 10 | 11 | } 12 | 13 | public Address(String province, String city, String street) { 14 | super(); 15 | this.province = province; 16 | this.city = city; 17 | this.street = street; 18 | } 19 | 20 | @Override 21 | public String toString() { 22 | return "Address [province=" + province + ", city=" + city + ", street=" + street + "]"; 23 | } 24 | 25 | public String getProvince() { 26 | return province; 27 | } 28 | 29 | public void setProvince(String province) { 30 | this.province = province; 31 | } 32 | 33 | public String getCity() { 34 | return city; 35 | } 36 | 37 | public void setCity(String city) { 38 | this.city = city; 39 | } 40 | 41 | public String getStreet() { 42 | return street; 43 | } 44 | 45 | public void setStreet(String street) { 46 | this.street = street; 47 | } 48 | 49 | } 50 | -------------------------------------------------------------------------------- /admin-entity/src/main/java/com/firenay/leave/test/ParamData.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.test; 2 | 3 | import java.util.List; 4 | 5 | public class ParamData { 6 | 7 | private List array; 8 | 9 | public ParamData() { 10 | 11 | } 12 | 13 | public ParamData(List array) { 14 | super(); 15 | this.array = array; 16 | } 17 | 18 | @Override 19 | public String toString() { 20 | return "ParamData [array=" + array + "]"; 21 | } 22 | 23 | public List getArray() { 24 | return array; 25 | } 26 | 27 | public void setArray(List array) { 28 | this.array = array; 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /admin-entity/src/main/java/com/firenay/leave/test/Subject.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.test; 2 | 3 | public class Subject { 4 | 5 | private String subjectName; 6 | private Integer subjectScore; 7 | 8 | public Subject() { 9 | 10 | } 11 | 12 | public Subject(String subjectName, Integer subjectScore) { 13 | super(); 14 | this.subjectName = subjectName; 15 | this.subjectScore = subjectScore; 16 | } 17 | 18 | @Override 19 | public String toString() { 20 | return "Subject [subjectName=" + subjectName + ", subjectScore=" + subjectScore + "]"; 21 | } 22 | 23 | public String getSubjectName() { 24 | return subjectName; 25 | } 26 | 27 | public void setSubjectName(String subjectName) { 28 | this.subjectName = subjectName; 29 | } 30 | 31 | public Integer getSubjectScore() { 32 | return subjectScore; 33 | } 34 | 35 | public void setSubjectScore(Integer subjectScore) { 36 | this.subjectScore = subjectScore; 37 | } 38 | 39 | } 40 | -------------------------------------------------------------------------------- /admin-webui/src/main/resources/jdbc.properties: -------------------------------------------------------------------------------- 1 | user=root 2 | password=mq0000 3 | url=jdbc:mysql://127.0.0.1:3306/project_leave?useSSL=false&useUnicode=true&characterEncoding=utf-8&rewriteBatchedStatements=true 4 | driverClass=com.mysql.jdbc.Driver 5 | 6 | initPoolSize=5 7 | maxPoolSize=10 -------------------------------------------------------------------------------- /admin-webui/src/main/resources/logback.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 8 | 9 | [%d{HH:mm:ss}] [%-5level ] [%thread ] [%logger] %msg%n 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /admin-webui/src/main/resources/mybatis/mybatis-config.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/WEB-INF/modal/menu/modal-menu-confirm.jsp: -------------------------------------------------------------------------------- 1 | <%@ page contentType="text/html;charset=UTF-8" language="java" %> 2 | -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/WEB-INF/modal/role/modal-role-add.jsp: -------------------------------------------------------------------------------- 1 | <%@ page contentType="text/html;charset=UTF-8" language="java" %> 2 | -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/WEB-INF/modal/role/modal-role-assign-auth.jsp: -------------------------------------------------------------------------------- 1 | <%@ page contentType="text/html;charset=UTF-8" language="java" %> 2 | -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/WEB-INF/modal/role/modal-role-confirm.jsp: -------------------------------------------------------------------------------- 1 | <%@ page contentType="text/html;charset=UTF-8" language="java" %> 2 | -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/WEB-INF/modal/role/modal-role-edit.jsp: -------------------------------------------------------------------------------- 1 | <%@ page contentType="text/html;charset=UTF-8" language="java" %> 2 | -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/WEB-INF/success.jsp: -------------------------------------------------------------------------------- 1 | <%@ page contentType="text/html;charset=UTF-8" language="java" %> 2 | 3 | 4 | 5 | 6 | 成功 7 | 8 | 9 |

SUCCESS

10 | 11 | ${requestScope.admins } 12 | 13 | 14 | -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/bootstrap/fonts/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/bootstrap/fonts/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/bootstrap/fonts/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/bootstrap/fonts/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/bootstrap/fonts/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/bootstrap/fonts/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/bootstrap/fonts/glyphicons-halflings-regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/bootstrap/fonts/glyphicons-halflings-regular.woff2 -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/bootstrap/js/npm.js: -------------------------------------------------------------------------------- 1 | // This file is autogenerated via the `commonjs` Grunt task. You can require() this file in a CommonJS environment. 2 | require('../../js/transition.js') 3 | require('../../js/alert.js') 4 | require('../../js/button.js') 5 | require('../../js/carousel.js') 6 | require('../../js/collapse.js') 7 | require('../../js/dropdown.js') 8 | require('../../js/modal.js') 9 | require('../../js/tooltip.js') 10 | require('../../js/popover.js') 11 | require('../../js/scrollspy.js') 12 | require('../../js/tab.js') 13 | require('../../js/affix.js') -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/css/login.css: -------------------------------------------------------------------------------- 1 | body { 2 | padding-top: 40px; 3 | padding-bottom: 40px; 4 | background-color: #eee; 5 | } 6 | 7 | .form-signin { 8 | max-width: 330px; 9 | padding: 15px; 10 | margin: 0 auto; 11 | } 12 | .form-signin .form-signin-heading, 13 | .form-signin .checkbox { 14 | margin-bottom: 10px; 15 | } 16 | .form-signin .checkbox { 17 | font-weight: normal; 18 | } 19 | .form-signin .form-control { 20 | position: relative; 21 | height: auto; 22 | -webkit-box-sizing: border-box; 23 | -moz-box-sizing: border-box; 24 | box-sizing: border-box; 25 | padding: 10px; 26 | font-size: 16px; 27 | } 28 | .form-signin .form-control:focus { 29 | z-index: 2; 30 | } 31 | .form-signin input[type="email"] { 32 | margin-bottom: -1px; 33 | border-bottom-right-radius: 0; 34 | border-bottom-left-radius: 0; 35 | } 36 | .form-signin input[type="password"] { 37 | margin-bottom: 10px; 38 | border-top-left-radius: 0; 39 | border-top-right-radius: 0; 40 | } -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/css/pagination_fireNay.css: -------------------------------------------------------------------------------- 1 | @charset "utf-8"; 2 | .pagination a { 3 | text-decoration: none; 4 | border: 1px solid #AAE; 5 | color: #15B; 6 | } 7 | 8 | .pagination a, .pagination span { 9 | display: inline-block; 10 | padding: 0.1em 0.4em; 11 | margin-right: 5px; 12 | margin-bottom: 5px; 13 | } 14 | 15 | .pagination .current { 16 | background: #26B; 17 | color: #fff; 18 | border: 1px solid #AAE; 19 | } 20 | 21 | .pagination .current.prev, .pagination .current.next{ 22 | color:#999; 23 | border-color:#999; 24 | background:#fff; 25 | } 26 | 27 | -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/css/theme.css: -------------------------------------------------------------------------------- 1 | body { 2 | padding-top: 70px; 3 | padding-bottom: 30px; 4 | } 5 | 6 | .theme-dropdown .dropdown-menu { 7 | position: static; 8 | display: block; 9 | margin-bottom: 20px; 10 | } 11 | 12 | .theme-showcase > p > .btn { 13 | margin: 5px 0; 14 | } 15 | 16 | .theme-showcase .navbar .container { 17 | width: auto; 18 | } -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/fonts/fontawesome4.2/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/fonts/fontawesome4.2/FontAwesome.otf -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/fonts/fontawesome4.2/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/fonts/fontawesome4.2/fontawesome-webfont.eot -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/fonts/fontawesome4.2/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/fonts/fontawesome4.2/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/fonts/fontawesome4.2/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/fonts/fontawesome4.2/fontawesome-webfont.woff -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/fonts/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/fonts/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/fonts/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/fonts/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/fonts/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/fonts/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/img/carousel-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/img/carousel-1.jpg -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/img/carousel-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/img/carousel-2.jpg -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/img/carousel-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/img/carousel-3.jpg -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/img/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/img/logo.png -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/img/p1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/img/p1.jpg -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/img/p2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/img/p2.jpg -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/img/p3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/img/p3.jpg -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/img/p3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/img/p3.png -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/img/pic.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/img/pic.jpg -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/img/product-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/img/product-1.jpg -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/img/product-2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/img/product-2.gif -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/img/product-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/img/product-3.png -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/img/product-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/img/product-4.jpg -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/img/product-5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/img/product-5.jpg -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/img/product-6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/img/product-6.jpg -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/img/product-7.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/img/product-7.jpg -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/img/product-8.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/img/product-8.jpg -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/img/product-9.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/img/product-9.jpg -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/img/product_detail_body.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/img/product_detail_body.jpg -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/img/product_detail_head.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/img/product_detail_head.jpg -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/img/services-box1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/img/services-box1.jpg -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/img/services-box2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/img/services-box2.jpg -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/img/services-box3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/img/services-box3.jpg -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/img/services-box4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/img/services-box4.jpg -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/layer/theme/default/icon-ext.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/layer/theme/default/icon-ext.png -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/layer/theme/default/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/layer/theme/default/icon.png -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/layer/theme/default/loading-0.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/layer/theme/default/loading-0.gif -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/layer/theme/default/loading-1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/layer/theme/default/loading-1.gif -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/layer/theme/default/loading-2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/layer/theme/default/loading-2.gif -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/ztree/img/diy/1_close.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/ztree/img/diy/1_close.png -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/ztree/img/diy/1_open.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/ztree/img/diy/1_open.png -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/ztree/img/diy/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/ztree/img/diy/2.png -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/ztree/img/diy/3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/ztree/img/diy/3.png -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/ztree/img/diy/4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/ztree/img/diy/4.png -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/ztree/img/diy/5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/ztree/img/diy/5.png -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/ztree/img/diy/6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/ztree/img/diy/6.png -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/ztree/img/diy/7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/ztree/img/diy/7.png -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/ztree/img/diy/8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/ztree/img/diy/8.png -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/ztree/img/diy/9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/ztree/img/diy/9.png -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/ztree/img/line_conn.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/ztree/img/line_conn.gif -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/ztree/img/loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/ztree/img/loading.gif -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/ztree/img/zTreeStandard.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/ztree/img/zTreeStandard.gif -------------------------------------------------------------------------------- /admin-webui/src/main/webapp/ztree/img/zTreeStandard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/admin-webui/src/main/webapp/ztree/img/zTreeStandard.png -------------------------------------------------------------------------------- /admin-webui/src/test/com/firenay/leave/test/StringTest.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.test; 2 | 3 | import com.firenay.leave.util.LEAVEUtil; 4 | import org.junit.Test; 5 | 6 | /** 7 | *

Title: StringTest

8 | * Description: 9 | * date:2020/5/8 21:29 10 | */ 11 | public class StringTest { 12 | 13 | @Test 14 | public void testMd5(){ 15 | String source = "123"; 16 | String md5 = LEAVEUtil.md5(source); 17 | System.out.println(md5); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /common-util/src/main/java/com/firenay/leave/exception/AccessForbiddenException.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.exception; 2 | 3 | /** 4 | *

Title: AccessForbiddenException

5 | * Description:用户未登录抛出来的异常 6 | * date:2020/5/9 10:09 7 | */ 8 | public class AccessForbiddenException extends RuntimeException { 9 | 10 | private static final long serialVersionUID = 1L; 11 | 12 | public AccessForbiddenException() { 13 | super(); 14 | } 15 | 16 | public AccessForbiddenException(String message) { 17 | super(message); 18 | } 19 | 20 | public AccessForbiddenException(String message, Throwable cause) { 21 | super(message, cause); 22 | } 23 | 24 | public AccessForbiddenException(Throwable cause) { 25 | super(cause); 26 | } 27 | 28 | protected AccessForbiddenException(String message, Throwable cause, boolean enableSuppression, boolean writableStackTrace) { 29 | super(message, cause, enableSuppression, writableStackTrace); 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /common-util/src/main/java/com/firenay/leave/exception/LoginAcctAlreadyInUserException.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.exception; 2 | 3 | /** 4 | *

Title: LoginAcctAlreadyInUserException

5 | * Description:保存admin时 如果检测到用户名字段重复时抛这个异常 6 | * date:2020/5/9 23:21 7 | */ 8 | public class LoginAcctAlreadyInUserException extends RuntimeException{ 9 | 10 | private static final long serialVersionUID = 1L; 11 | 12 | public LoginAcctAlreadyInUserException() { 13 | super(); 14 | } 15 | 16 | public LoginAcctAlreadyInUserException(String message) { 17 | super(message); 18 | } 19 | 20 | public LoginAcctAlreadyInUserException(String message, Throwable cause) { 21 | super(message, cause); 22 | } 23 | 24 | public LoginAcctAlreadyInUserException(Throwable cause) { 25 | super(cause); 26 | } 27 | 28 | protected LoginAcctAlreadyInUserException(String message, Throwable cause, boolean enableSuppression, boolean writableStackTrace) { 29 | super(message, cause, enableSuppression, writableStackTrace); 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /common-util/src/main/java/com/firenay/leave/exception/LoginAcctAlreadyInUserUpdateException.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.exception; 2 | 3 | /** 4 | *

Title: LoginAcctAlreadyInUserException

5 | * Description:更新admin时 如果检测到用户名字段重复时抛这个异常 6 | * date:2020/5/9 23:21 7 | */ 8 | public class LoginAcctAlreadyInUserUpdateException extends RuntimeException{ 9 | 10 | private static final long serialVersionUID = 1L; 11 | 12 | public LoginAcctAlreadyInUserUpdateException() { 13 | super(); 14 | } 15 | 16 | public LoginAcctAlreadyInUserUpdateException(String message) { 17 | super(message); 18 | } 19 | 20 | public LoginAcctAlreadyInUserUpdateException(String message, Throwable cause) { 21 | super(message, cause); 22 | } 23 | 24 | public LoginAcctAlreadyInUserUpdateException(Throwable cause) { 25 | super(cause); 26 | } 27 | 28 | protected LoginAcctAlreadyInUserUpdateException(String message, Throwable cause, boolean enableSuppression, boolean writableStackTrace) { 29 | super(message, cause, enableSuppression, writableStackTrace); 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /common-util/src/main/java/com/firenay/leave/exception/LoginFailedException.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.exception; 2 | 3 | /** 4 | *

Title: LoginFailedException

5 | * Description:自定义异常 [登录失败之后] 6 | * date:2020/5/8 21:36 7 | */ 8 | public class LoginFailedException extends RuntimeException { 9 | 10 | private static final long serialVersionUID = 1L; 11 | 12 | public LoginFailedException() { 13 | super(); 14 | } 15 | 16 | public LoginFailedException(String message) { 17 | super(message); 18 | } 19 | 20 | public LoginFailedException(String message, Throwable cause) { 21 | super(message, cause); 22 | } 23 | 24 | public LoginFailedException(Throwable cause) { 25 | super(cause); 26 | } 27 | 28 | protected LoginFailedException(String message, Throwable cause, boolean enableSuppression, boolean writableStackTrace) { 29 | super(message, cause, enableSuppression, writableStackTrace); 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /common-util/src/main/java/com/firenay/leave/exception/NotloggedException.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.exception; 2 | 3 | /** 4 | *

Title: NotlogedException

5 | * Description:用户未登录 6 | * date:2020/5/8 21:50 7 | */ 8 | public class NotloggedException extends RuntimeException { 9 | 10 | private static final long serialVersionUID = 1L; 11 | 12 | public NotloggedException() { 13 | super(); 14 | } 15 | 16 | /** 17 | * 用户未登录 18 | */ 19 | public NotloggedException(String message) { 20 | super(message); 21 | } 22 | 23 | public NotloggedException(String message, Throwable cause) { 24 | super(message, cause); 25 | } 26 | 27 | public NotloggedException(Throwable cause) { 28 | super(cause); 29 | } 30 | 31 | protected NotloggedException(String message, Throwable cause, boolean enableSuppression, boolean writableStackTrace) { 32 | super(message, cause, enableSuppression, writableStackTrace); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /member-parent/member-api/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | member-parent 7 | com.firenay.leave 8 | 1.0-SNAPSHOT 9 | 10 | 4.0.0 11 | 12 | member-api 13 | 14 | 15 | 16 | org.springframework.cloud 17 | spring-cloud-starter-openfeign 18 | 19 | 20 | com.firenay.leave 21 | common-util 22 | 1.0-SNAPSHOT 23 | 24 | 25 | member-entity 26 | com.firenay.leave 27 | 1.0-SNAPSHOT 28 | 29 | 30 | -------------------------------------------------------------------------------- /member-parent/member-api/src/main/java/com/firenay/leave/api/RedisRemoteService.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.api; 2 | 3 | import com.firenay.leave.util.ResultEntity; 4 | import org.springframework.cloud.openfeign.FeignClient; 5 | import org.springframework.web.bind.annotation.RequestMapping; 6 | import org.springframework.web.bind.annotation.RequestParam; 7 | 8 | import java.util.concurrent.TimeUnit; 9 | 10 | /** 11 | *

Title: RedisRemoteService

12 | * Description: 13 | * date:2020/5/18 14:24 14 | */ 15 | @FeignClient("firenay-leave-redis") 16 | public interface RedisRemoteService { 17 | 18 | @RequestMapping("/set/redis/key/value/remote") 19 | ResultEntity setRedisKeyValueRemote(@RequestParam("key") String key, @RequestParam("value") String value); 20 | 21 | /** 22 | * 带超时时间 23 | */ 24 | @RequestMapping("/set/redis/key/value/remote/with/timeout") 25 | ResultEntity setRedisKeyValueRemoteWithTimeOut(@RequestParam("key") String key, @RequestParam("value") String value, @RequestParam("time") long time, @RequestParam("timeUnit")TimeUnit timeUnit); 26 | 27 | @RequestMapping("/get/redis/string/value/by/key") 28 | ResultEntity getRedisStringValueByKey(@RequestParam("key") String key); 29 | 30 | @RequestMapping("/remove/redis/key/remote") 31 | ResultEntity removeRedisKeyRemote(@RequestParam("key") String key); 32 | 33 | } 34 | -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/java/com/firenay/leave/AuthMain.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.cloud.client.discovery.EnableDiscoveryClient; 6 | import org.springframework.cloud.openfeign.EnableFeignClients; 7 | 8 | /** 9 | *

Title: AuthMain

10 | * Description: 11 | * date:2020/5/18 15:31 12 | */ 13 | @EnableDiscoveryClient 14 | @EnableFeignClients 15 | @SpringBootApplication 16 | public class AuthMain { 17 | 18 | // http://127.0.0.1:4000/ 19 | public static void main(String[] args) { 20 | SpringApplication.run(AuthMain.class, args); 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/java/com/firenay/leave/config/LeaveWebMvcConfig.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.config; 2 | 3 | import org.springframework.context.annotation.Configuration; 4 | import org.springframework.web.servlet.config.annotation.ViewControllerRegistry; 5 | import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; 6 | 7 | /** 8 | *

Title: LeaveWebMvcConfig

9 | * Description:注解视图映射 10 | * date:2020/5/18 19:51 11 | */ 12 | @Configuration 13 | public class LeaveWebMvcConfig implements WebMvcConfigurer { 14 | 15 | @Override 16 | public void addViewControllers(ViewControllerRegistry registry) { 17 | 18 | // 浏览器访问的地址 目标视图名称 拼接前后缀 19 | registry.addViewController("/auth/member/to/reg/page").setViewName("member-reg"); 20 | registry.addViewController("/auth/member/to/login/page").setViewName("member-login"); 21 | registry.addViewController("/auth/member/to/center/page").setViewName("member-center"); 22 | registry.addViewController("/member/my/crowd").setViewName("member-crowd"); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/java/com/firenay/leave/config/ShortMessageProperties.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.config; 2 | 3 | import lombok.AllArgsConstructor; 4 | import lombok.Data; 5 | import lombok.NoArgsConstructor; 6 | import org.springframework.boot.context.properties.ConfigurationProperties; 7 | import org.springframework.stereotype.Component; 8 | 9 | /** 10 | *

Title: ShortMessageProperties

11 | * Description:配置信息 12 | * date:2020/5/18 20:23 13 | */ 14 | @NoArgsConstructor 15 | @AllArgsConstructor 16 | @Data 17 | @Component 18 | @ConfigurationProperties(prefix = "short.message") 19 | public class ShortMessageProperties { 20 | 21 | /** 22 | * test | email | PhoneNUm 三种模式 23 | */ 24 | private String mode = "test"; 25 | 26 | private String host; 27 | 28 | private String path; 29 | 30 | private String method; 31 | 32 | private String appCode; 33 | 34 | private String sign; 35 | 36 | private String skin; 37 | 38 | /** 39 | * 测试模式需要用的验证码 40 | */ 41 | private String code = "5201314"; 42 | 43 | /** 44 | * 邮箱模式用于接收账号 45 | */ 46 | private String emailAccess = "1046762075"; 47 | 48 | /** 49 | * 邮箱模式账号的授权码 50 | */ 51 | private String topic = " LEAVE "; 52 | 53 | private String content = "欢迎注册LEAVE众筹网, 您的验证码为:"; 54 | } 55 | -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/java/com/firenay/leave/controller/PortalController.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.controller; 2 | 3 | import com.firenay.leave.api.MySQLRemoteService; 4 | import com.firenay.leave.constant.LeaveConstant; 5 | import com.firenay.leave.entity.vo.PortalTypeVO; 6 | import com.firenay.leave.util.ResultEntity; 7 | import org.springframework.stereotype.Controller; 8 | import org.springframework.ui.ModelMap; 9 | import org.springframework.web.bind.annotation.RequestMapping; 10 | 11 | import javax.annotation.Resource; 12 | import java.util.List; 13 | 14 | /** 15 | *

Title: PortalController

16 | * Description:去首页 17 | * date:2020/5/18 15:37 18 | */ 19 | @Controller 20 | public class PortalController { 21 | 22 | @Resource 23 | private MySQLRemoteService mySQLRemoteService; 24 | 25 | // @RequestMapping("/") 26 | // public String showPortalPage(){ 27 | // return "portal"; 28 | // } 29 | 30 | @RequestMapping("/") 31 | public String showPortalPage(ModelMap modelMap){ 32 | ResultEntity> resultEntity = mySQLRemoteService.getPortalTypeProjectDataRemote(); 33 | String result = resultEntity.getResult(); 34 | if(ResultEntity.SUCCESS.equals(result)){ 35 | // 获取查询结果数据 36 | List list = resultEntity.getData(); 37 | modelMap.addAttribute(LeaveConstant.ATTR_NAME_PORTAL_DATA, list); 38 | } 39 | return "portal"; 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/application.yml: -------------------------------------------------------------------------------- 1 | server: port: 4000 eureka: client: serviceUrl: defaultZone: http://localhost:1000/eureka/ spring: application: name: firenay-leave-auth thymeleaf: prefix: classpath:/templates/ suffix: .html #设置 session 共享 redis: # host: 120.79.50.189 host: 10.43.1.52 session: store-type: redis mail: host: smtp.qq.com username: 1046762075@qq.com password: sycsuqnpayrdbeje properties: mail: smtp: auth: true starttls: enable: true required: true default-encoding: UTF-8 short: message: # mode: test | email | PhoneNum mode: email # PhoneNum 模式阿里云云市场中的 appCode [用于发短信] app-code: 541707ddc9c8463eb9336c3bfc0624b3 host: https://feginesms.market.alicloudapi.com path: /codeNotice method: GET sign: 1 skin: 1 # 注册时输入的验证码 code: 5201314 # 邮箱模式发送邮箱的账号以及邮箱的授权码 emailAccess: ${spring.mail.username} # 发送邮箱时的主题 topic: LEAVE # 定制发送的具体消息 #content: # 给用户第一次注册增加时间 ribbon: ReadTimeout: 10000 ConnectTimeout: 10000 -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/resources/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/resources/favicon.ico -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/bootstrap/fonts/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/bootstrap/fonts/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/bootstrap/fonts/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/bootstrap/fonts/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/bootstrap/fonts/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/bootstrap/fonts/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/bootstrap/fonts/glyphicons-halflings-regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/bootstrap/fonts/glyphicons-halflings-regular.woff2 -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/bootstrap/js/npm.js: -------------------------------------------------------------------------------- 1 | // This file is autogenerated via the `commonjs` Grunt task. You can require() this file in a CommonJS environment. 2 | require('../../js/transition.js') 3 | require('../../js/alert.js') 4 | require('../../js/button.js') 5 | require('../../js/carousel.js') 6 | require('../../js/collapse.js') 7 | require('../../js/dropdown.js') 8 | require('../../js/modal.js') 9 | require('../../js/tooltip.js') 10 | require('../../js/popover.js') 11 | require('../../js/scrollspy.js') 12 | require('../../js/tab.js') 13 | require('../../js/affix.js') -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/css/login.css: -------------------------------------------------------------------------------- 1 | body { 2 | padding-top: 40px; 3 | padding-bottom: 40px; 4 | background-color: #eee; 5 | } 6 | 7 | .form-signin { 8 | max-width: 330px; 9 | padding: 15px; 10 | margin: 0 auto; 11 | } 12 | .form-signin .form-signin-heading, 13 | .form-signin .checkbox { 14 | margin-bottom: 10px; 15 | } 16 | .form-signin .checkbox { 17 | font-weight: normal; 18 | } 19 | .form-signin .form-control { 20 | position: relative; 21 | height: auto; 22 | -webkit-box-sizing: border-box; 23 | -moz-box-sizing: border-box; 24 | box-sizing: border-box; 25 | padding: 10px; 26 | font-size: 16px; 27 | } 28 | .form-signin .form-control:focus { 29 | z-index: 2; 30 | } 31 | .form-signin input[type="email"] { 32 | margin-bottom: -1px; 33 | border-bottom-right-radius: 0; 34 | border-bottom-left-radius: 0; 35 | } 36 | .form-signin input[type="password"] { 37 | margin-bottom: 10px; 38 | border-top-left-radius: 0; 39 | border-top-right-radius: 0; 40 | } -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/css/theme.css: -------------------------------------------------------------------------------- 1 | body { 2 | padding-top: 70px; 3 | padding-bottom: 30px; 4 | } 5 | 6 | .theme-dropdown .dropdown-menu { 7 | position: static; 8 | display: block; 9 | margin-bottom: 20px; 10 | } 11 | 12 | .theme-showcase > p > .btn { 13 | margin: 5px 0; 14 | } 15 | 16 | .theme-showcase .navbar .container { 17 | width: auto; 18 | } -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/fonts/fontawesome4.2/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/fonts/fontawesome4.2/FontAwesome.otf -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/fonts/fontawesome4.2/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/fonts/fontawesome4.2/fontawesome-webfont.eot -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/fonts/fontawesome4.2/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/fonts/fontawesome4.2/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/fonts/fontawesome4.2/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/fonts/fontawesome4.2/fontawesome-webfont.woff -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/fonts/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/fonts/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/fonts/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/fonts/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/fonts/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/fonts/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/img/carousel-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/img/carousel-1.jpg -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/img/carousel-2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/img/carousel-2.jpg -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/img/carousel-3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/img/carousel-3.jpg -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/img/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/img/logo.png -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/img/p1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/img/p1.jpg -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/img/p2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/img/p2.jpg -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/img/p3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/img/p3.jpg -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/img/p3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/img/p3.png -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/img/pic.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/img/pic.jpg -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/img/product-1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/img/product-1.jpg -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/img/product-2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/img/product-2.gif -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/img/product-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/img/product-3.png -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/img/product-4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/img/product-4.jpg -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/img/product-5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/img/product-5.jpg -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/img/product-6.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/img/product-6.jpg -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/img/product-7.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/img/product-7.jpg -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/img/product-8.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/img/product-8.jpg -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/img/product-9.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/img/product-9.jpg -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/img/product_detail_body.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/img/product_detail_body.jpg -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/img/product_detail_head.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/img/product_detail_head.jpg -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/img/services-box1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/img/services-box1.jpg -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/img/services-box2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/img/services-box2.jpg -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/img/services-box3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/img/services-box3.jpg -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/img/services-box4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/img/services-box4.jpg -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/layer/theme/default/icon-ext.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/layer/theme/default/icon-ext.png -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/layer/theme/default/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/layer/theme/default/icon.png -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/layer/theme/default/loading-0.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/layer/theme/default/loading-0.gif -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/layer/theme/default/loading-1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/layer/theme/default/loading-1.gif -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/layer/theme/default/loading-2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/layer/theme/default/loading-2.gif -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/ztree/img/diy/1_close.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/ztree/img/diy/1_close.png -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/ztree/img/diy/1_open.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/ztree/img/diy/1_open.png -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/ztree/img/diy/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/ztree/img/diy/2.png -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/ztree/img/diy/3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/ztree/img/diy/3.png -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/ztree/img/diy/4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/ztree/img/diy/4.png -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/ztree/img/diy/5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/ztree/img/diy/5.png -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/ztree/img/diy/6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/ztree/img/diy/6.png -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/ztree/img/diy/7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/ztree/img/diy/7.png -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/ztree/img/diy/8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/ztree/img/diy/8.png -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/ztree/img/diy/9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/ztree/img/diy/9.png -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/ztree/img/line_conn.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/ztree/img/line_conn.gif -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/ztree/img/loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/ztree/img/loading.gif -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/ztree/img/zTreeStandard.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/ztree/img/zTreeStandard.gif -------------------------------------------------------------------------------- /member-parent/member-authentication-consumer/src/main/resources/static/ztree/img/zTreeStandard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-authentication-consumer/src/main/resources/static/ztree/img/zTreeStandard.png -------------------------------------------------------------------------------- /member-parent/member-entity/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | member-parent 7 | com.firenay.leave 8 | 1.0-SNAPSHOT 9 | 10 | 4.0.0 11 | 12 | member-entity 13 | 14 | 15 | 16 | org.projectlombok 17 | lombok 18 | compile 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /member-parent/member-entity/src/main/java/com/firenay/leave/entity/po/AddressPO.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.entity.po; 2 | 3 | public class AddressPO { 4 | private Integer id; 5 | 6 | private String receiveName; 7 | 8 | private String phoneNum; 9 | 10 | private String address; 11 | 12 | private Integer memberId; 13 | 14 | public Integer getId() { 15 | return id; 16 | } 17 | 18 | public void setId(Integer id) { 19 | this.id = id; 20 | } 21 | 22 | public String getReceiveName() { 23 | return receiveName; 24 | } 25 | 26 | public void setReceiveName(String receiveName) { 27 | this.receiveName = receiveName == null ? null : receiveName.trim(); 28 | } 29 | 30 | public String getPhoneNum() { 31 | return phoneNum; 32 | } 33 | 34 | public void setPhoneNum(String phoneNum) { 35 | this.phoneNum = phoneNum == null ? null : phoneNum.trim(); 36 | } 37 | 38 | public String getAddress() { 39 | return address; 40 | } 41 | 42 | public void setAddress(String address) { 43 | this.address = address == null ? null : address.trim(); 44 | } 45 | 46 | public Integer getMemberId() { 47 | return memberId; 48 | } 49 | 50 | public void setMemberId(Integer memberId) { 51 | this.memberId = memberId; 52 | } 53 | } -------------------------------------------------------------------------------- /member-parent/member-entity/src/main/java/com/firenay/leave/entity/po/MemberConfirmInfoPO.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.entity.po; 2 | 3 | public class MemberConfirmInfoPO { 4 | private Integer id; 5 | 6 | private Integer memberid; 7 | 8 | private String paynum; 9 | 10 | private String cardnum; 11 | 12 | public Integer getId() { 13 | return id; 14 | } 15 | 16 | public void setId(Integer id) { 17 | this.id = id; 18 | } 19 | 20 | public Integer getMemberid() { 21 | return memberid; 22 | } 23 | 24 | public void setMemberid(Integer memberid) { 25 | this.memberid = memberid; 26 | } 27 | 28 | public String getPaynum() { 29 | return paynum; 30 | } 31 | 32 | public void setPaynum(String paynum) { 33 | this.paynum = paynum == null ? null : paynum.trim(); 34 | } 35 | 36 | public String getCardnum() { 37 | return cardnum; 38 | } 39 | 40 | public void setCardnum(String cardnum) { 41 | this.cardnum = cardnum == null ? null : cardnum.trim(); 42 | } 43 | } -------------------------------------------------------------------------------- /member-parent/member-entity/src/main/java/com/firenay/leave/entity/po/ProjectItemPicPO.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.entity.po; 2 | 3 | public class ProjectItemPicPO { 4 | private Integer id; 5 | 6 | private Integer projectid; 7 | 8 | private String itemPicPath; 9 | 10 | public Integer getId() { 11 | return id; 12 | } 13 | 14 | public void setId(Integer id) { 15 | this.id = id; 16 | } 17 | 18 | public Integer getProjectid() { 19 | return projectid; 20 | } 21 | 22 | public void setProjectid(Integer projectid) { 23 | this.projectid = projectid; 24 | } 25 | 26 | public String getItemPicPath() { 27 | return itemPicPath; 28 | } 29 | 30 | public void setItemPicPath(String itemPicPath) { 31 | this.itemPicPath = itemPicPath == null ? null : itemPicPath.trim(); 32 | } 33 | } -------------------------------------------------------------------------------- /member-parent/member-entity/src/main/java/com/firenay/leave/entity/po/TagPO.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.entity.po; 2 | 3 | public class TagPO { 4 | private Integer id; 5 | 6 | private Integer pid; 7 | 8 | private String name; 9 | 10 | public Integer getId() { 11 | return id; 12 | } 13 | 14 | public void setId(Integer id) { 15 | this.id = id; 16 | } 17 | 18 | public Integer getPid() { 19 | return pid; 20 | } 21 | 22 | public void setPid(Integer pid) { 23 | this.pid = pid; 24 | } 25 | 26 | public String getName() { 27 | return name; 28 | } 29 | 30 | public void setName(String name) { 31 | this.name = name == null ? null : name.trim(); 32 | } 33 | } -------------------------------------------------------------------------------- /member-parent/member-entity/src/main/java/com/firenay/leave/entity/po/TypePO.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.entity.po; 2 | 3 | public class TypePO { 4 | private Integer id; 5 | 6 | private String name; 7 | 8 | private String remark; 9 | 10 | public Integer getId() { 11 | return id; 12 | } 13 | 14 | public void setId(Integer id) { 15 | this.id = id; 16 | } 17 | 18 | public String getName() { 19 | return name; 20 | } 21 | 22 | public void setName(String name) { 23 | this.name = name == null ? null : name.trim(); 24 | } 25 | 26 | public String getRemark() { 27 | return remark; 28 | } 29 | 30 | public void setRemark(String remark) { 31 | this.remark = remark == null ? null : remark.trim(); 32 | } 33 | } -------------------------------------------------------------------------------- /member-parent/member-entity/src/main/java/com/firenay/leave/entity/vo/AddressVO.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.entity.vo; 2 | 3 | import lombok.AllArgsConstructor; 4 | import lombok.Data; 5 | import lombok.NoArgsConstructor; 6 | 7 | import java.io.Serializable; 8 | /** 9 | *

Title: AddressVO

10 | * Description: 11 | * date:2020/5/21 21:07 12 | */ 13 | @Data 14 | @NoArgsConstructor 15 | @AllArgsConstructor 16 | public class AddressVO implements Serializable { 17 | 18 | private static final long serialVersionUID = 1L; 19 | 20 | private Integer id; 21 | 22 | private String receiveName; 23 | 24 | private String phoneNum; 25 | 26 | private String address; 27 | 28 | private Integer memberId; 29 | 30 | } 31 | -------------------------------------------------------------------------------- /member-parent/member-entity/src/main/java/com/firenay/leave/entity/vo/DetailProjectVO.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.entity.vo; 2 | 3 | import lombok.AllArgsConstructor; 4 | import lombok.Data; 5 | import lombok.NoArgsConstructor; 6 | 7 | import java.util.List; 8 | /** 9 | *

Title: DetailProjectVO

10 | * Description: 11 | * date:2020/5/20 17:20 12 | */ 13 | @Data 14 | @NoArgsConstructor 15 | @AllArgsConstructor 16 | public class DetailProjectVO { 17 | 18 | private Integer projectId; 19 | 20 | private String projectName; 21 | 22 | private String projectDesc; 23 | 24 | private Integer followerCount; 25 | 26 | private Integer status; 27 | 28 | private Integer day; 29 | 30 | private String statusText; 31 | 32 | private Integer money; 33 | 34 | private Integer supportMoney; 35 | 36 | private Integer percentage; 37 | 38 | private String deployDate; 39 | 40 | private Integer lastDay; 41 | 42 | private Integer supporterCount; 43 | 44 | private String headerPicturePath; 45 | 46 | private List detailPicturePathList; 47 | 48 | private List detailReturnVOList; 49 | } 50 | -------------------------------------------------------------------------------- /member-parent/member-entity/src/main/java/com/firenay/leave/entity/vo/DetailReturnVO.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.entity.vo; 2 | 3 | import lombok.AllArgsConstructor; 4 | import lombok.Data; 5 | import lombok.NoArgsConstructor; 6 | 7 | /** 8 | *

Title: DetailReturnVO

9 | * Description: 10 | * date:2020/5/20 17:12 11 | */ 12 | @Data 13 | @NoArgsConstructor 14 | @AllArgsConstructor 15 | public class DetailReturnVO { 16 | 17 | // 回报信息主键 18 | private Integer returnId; 19 | 20 | // 当前档位需支持的金额 21 | private Integer supportMoney; 22 | 23 | // 单笔限购,取值为0时无限额,取值为1时有限额 24 | private Integer signalPurchase; 25 | 26 | // 具体限额数量 27 | private Integer purchase; 28 | 29 | // 当前该档位支持者数量 30 | private Integer supproterCount; 31 | 32 | // 运费,取值为0时表示包邮 33 | private Integer freight; 34 | 35 | // 众筹成功后多少天发货 36 | private Integer returnDate; 37 | 38 | // 回报内容 39 | private String content; 40 | } 41 | -------------------------------------------------------------------------------- /member-parent/member-entity/src/main/java/com/firenay/leave/entity/vo/MemberConfirmInfoVO.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.entity.vo; 2 | 3 | import lombok.AllArgsConstructor; 4 | import lombok.Data; 5 | import lombok.NoArgsConstructor; 6 | 7 | import java.io.Serializable; 8 | 9 | @Data 10 | @NoArgsConstructor 11 | @AllArgsConstructor 12 | public class MemberConfirmInfoVO implements Serializable { 13 | 14 | private static final long serialVersionUID = 1L; 15 | 16 | // 支付宝账号 17 | private String paynum; 18 | 19 | // 法人身份证号 20 | private String cardnum; 21 | } -------------------------------------------------------------------------------- /member-parent/member-entity/src/main/java/com/firenay/leave/entity/vo/MemberLauchInfoVO.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.entity.vo; 2 | 3 | import lombok.AllArgsConstructor; 4 | import lombok.Data; 5 | import lombok.NoArgsConstructor; 6 | 7 | import java.io.Serializable; 8 | 9 | @Data 10 | @NoArgsConstructor 11 | @AllArgsConstructor 12 | public class MemberLauchInfoVO implements Serializable { 13 | 14 | private static final long serialVersionUID = 1L; 15 | // 简单介绍 16 | private String descriptionSimple; 17 | 18 | // 详细介绍 19 | private String descriptionDetail; 20 | 21 | // 联系电话 22 | private String phoneNum; 23 | 24 | // 客服电话 25 | private String serviceNum; 26 | 27 | } -------------------------------------------------------------------------------- /member-parent/member-entity/src/main/java/com/firenay/leave/entity/vo/MemberLoginVO.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.entity.vo; 2 | 3 | import lombok.AllArgsConstructor; 4 | import lombok.Data; 5 | import lombok.NoArgsConstructor; 6 | 7 | import java.io.Serializable; 8 | 9 | /** 10 | *

Title: MemberLoginVO

11 | * Description:用户登录成功之后放入session 12 | * date:2020/5/18 22:08 13 | */ 14 | @Data 15 | @NoArgsConstructor 16 | @AllArgsConstructor 17 | public class MemberLoginVO implements Serializable { 18 | 19 | private static final long serialVersionUID = 1L; 20 | 21 | private Integer id; 22 | 23 | private String username; 24 | 25 | private String email; 26 | } 27 | -------------------------------------------------------------------------------- /member-parent/member-entity/src/main/java/com/firenay/leave/entity/vo/MemberVO.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.entity.vo; 2 | 3 | import lombok.AllArgsConstructor; 4 | import lombok.Data; 5 | import lombok.NoArgsConstructor; 6 | 7 | /** 8 | *

Title: MemberVO

9 | * Description: 10 | * date:2020/5/18 22:06 11 | */ 12 | @Data 13 | @NoArgsConstructor 14 | @AllArgsConstructor 15 | public class MemberVO { 16 | 17 | private String loginacct; 18 | 19 | private String userpswd; 20 | 21 | private String username; 22 | 23 | private String email; 24 | 25 | private String phoneNum; 26 | 27 | private String code; 28 | 29 | 30 | } 31 | -------------------------------------------------------------------------------- /member-parent/member-entity/src/main/java/com/firenay/leave/entity/vo/OrderProjectVO.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.entity.vo; 2 | 3 | import lombok.AllArgsConstructor; 4 | import lombok.Data; 5 | import lombok.NoArgsConstructor; 6 | 7 | import java.io.Serializable; 8 | /** 9 | *

Title: OrderProjectVO

10 | * Description: 11 | * date:2020/5/21 21:06 12 | */ 13 | @Data 14 | @NoArgsConstructor 15 | @AllArgsConstructor 16 | public class OrderProjectVO implements Serializable { 17 | 18 | private static final long serialVersionUID = 1L; 19 | 20 | private Integer id; 21 | 22 | private String projectName; 23 | 24 | private String launchName; 25 | 26 | private String returnContent; 27 | 28 | private Integer returnCount; 29 | 30 | private Integer supportPrice; 31 | 32 | private Integer freight; 33 | 34 | private Integer orderId; 35 | 36 | private Integer signalPurchase; 37 | 38 | private Integer purchase; 39 | } 40 | -------------------------------------------------------------------------------- /member-parent/member-entity/src/main/java/com/firenay/leave/entity/vo/OrderVO.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.entity.vo; 2 | 3 | import lombok.AllArgsConstructor; 4 | import lombok.Data; 5 | import lombok.NoArgsConstructor; 6 | 7 | import java.io.Serializable; 8 | /** 9 | *

Title: OrderVO

10 | * Description:用于收集页面提交支付 11 | * date:2020/5/22 10:15 12 | */ 13 | @Data 14 | @NoArgsConstructor 15 | @AllArgsConstructor 16 | public class OrderVO implements Serializable { 17 | 18 | private static final long serialVersionUID = 1L; 19 | 20 | // 主键 21 | private Integer id; 22 | 23 | // 订单号 24 | private String orderNum; 25 | 26 | // 支付宝流水单号 27 | private String payOrderNum; 28 | 29 | // 订单金额 30 | private Double orderAmount; 31 | 32 | // 是否开发票 33 | private Integer invoice; 34 | 35 | // 发票抬头 36 | private String invoiceTitle; 37 | 38 | // 备注 39 | private String orderRemark; 40 | 41 | private String addressId; 42 | 43 | private OrderProjectVO orderProjectVO; 44 | } 45 | -------------------------------------------------------------------------------- /member-parent/member-entity/src/main/java/com/firenay/leave/entity/vo/PortalProjectVO.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.entity.vo; 2 | 3 | import lombok.AllArgsConstructor; 4 | import lombok.Data; 5 | import lombok.NoArgsConstructor; 6 | 7 | /** 8 | *

Title: PortalProjectVO

9 | * Description:页面展示 10 | * date:2020/5/20 13:43 11 | */ 12 | @Data 13 | @AllArgsConstructor 14 | @NoArgsConstructor 15 | public class PortalProjectVO { 16 | 17 | private Integer projectId; 18 | 19 | private String projectName; 20 | 21 | private String headerPicturePath; 22 | 23 | private Integer money; 24 | 25 | private String deployDate; 26 | 27 | private Integer percentage; 28 | 29 | private Integer supporter; 30 | } 31 | -------------------------------------------------------------------------------- /member-parent/member-entity/src/main/java/com/firenay/leave/entity/vo/PortalTypeVO.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.entity.vo; 2 | 3 | import lombok.AllArgsConstructor; 4 | import lombok.Data; 5 | import lombok.NoArgsConstructor; 6 | 7 | import java.util.List; 8 | 9 | /** 10 | *

Title: PortalTypeVO

11 | * Description:页面展示的众筹图片 每面4项 12 | * date:2020/5/20 13:39 13 | */ 14 | @Data 15 | @AllArgsConstructor 16 | @NoArgsConstructor 17 | public class PortalTypeVO { 18 | 19 | private Integer id; 20 | 21 | private String name; 22 | 23 | private String remark; 24 | 25 | private List portalProjectVOList; 26 | } 27 | -------------------------------------------------------------------------------- /member-parent/member-entity/src/main/java/com/firenay/leave/entity/vo/ProjectVO.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.entity.vo; 2 | 3 | import lombok.AllArgsConstructor; 4 | import lombok.Data; 5 | import lombok.NoArgsConstructor; 6 | 7 | import java.io.Serializable; 8 | import java.util.List; 9 | 10 | @Data 11 | @NoArgsConstructor 12 | @AllArgsConstructor 13 | public class ProjectVO implements Serializable { 14 | 15 | private static final long serialVersionUID = 1L; 16 | // 分类id集合 17 | private List typeIdList; 18 | 19 | // 标签id集合 20 | private List tagIdList; 21 | 22 | // 项目名称 23 | private String projectName; 24 | 25 | // 项目描述 26 | private String projectDescription; 27 | 28 | // 计划筹集的金额 29 | private Integer money; 30 | 31 | // 筹集资金的天数 32 | private Integer day; 33 | 34 | // 创建项目的日期 35 | private String createdate; 36 | 37 | // 头图的路径 38 | private String headerPicturePath; 39 | 40 | // 详情图片的路径 41 | private List detailPicturePathList; 42 | 43 | // 发起人信息 44 | private MemberLauchInfoVO memberLauchInfoVO; 45 | 46 | // 回报信息集合 47 | private List returnVOList; 48 | 49 | // 发起人确认信息 50 | private MemberConfirmInfoVO memberConfirmInfoVO; 51 | } 52 | -------------------------------------------------------------------------------- /member-parent/member-entity/src/main/java/com/firenay/leave/entity/vo/ReturnVO.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.entity.vo; 2 | 3 | import lombok.AllArgsConstructor; 4 | import lombok.Data; 5 | import lombok.NoArgsConstructor; 6 | 7 | import java.io.Serializable; 8 | /** 9 | *

Title: ReturnVO

10 | * Description:与 project-return.html 中507行一一对应的 11 | * date:2020/5/19 13:37 12 | */ 13 | @Data 14 | @NoArgsConstructor 15 | @AllArgsConstructor 16 | public class ReturnVO implements Serializable { 17 | 18 | private static final long serialVersionUID = 1L; 19 | 20 | // 回报类型:0 - 实物回报, 1 虚拟物品回报 21 | private Integer type; 22 | 23 | // 支持金额 24 | private Integer supportmoney; 25 | 26 | // 回报内容介绍 27 | private String content; 28 | 29 | // 总回报数量,0为不限制 30 | private Integer count; 31 | 32 | // 是否限制单笔购买数量,0表示不限购,1表示限购 33 | private Integer signalpurchase; 34 | 35 | // 如果单笔限购,那么具体的限购数量 36 | private Integer purchase; 37 | 38 | // 运费,'0'为包邮 39 | private Integer freight; 40 | 41 | // 是否开发票,0 - 不开发票, 1 - 开发票 42 | private Integer invoice; 43 | 44 | // 众筹结束后返还回报物品天数 45 | private Integer returndate; 46 | 47 | // 说明图片路径 48 | private String describPicPath; 49 | 50 | } -------------------------------------------------------------------------------- /member-parent/member-eureka/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | member-parent 7 | com.firenay.leave 8 | 1.0-SNAPSHOT 9 | 10 | 4.0.0 11 | 12 | member-eureka 13 | 14 | 15 | 16 | org.springframework.cloud 17 | spring-cloud-starter-netflix-eureka-server 18 | 19 | 20 | -------------------------------------------------------------------------------- /member-parent/member-eureka/src/main/java/com/firenay/leave/EurekaMain.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer; 6 | 7 | /** 8 | *

Title: EurekaMain

9 | * Description: 10 | * date:2020/5/18 10:38 11 | */ 12 | @EnableEurekaServer 13 | @SpringBootApplication 14 | public class EurekaMain { 15 | 16 | public static void main(String[] args) { 17 | SpringApplication.run(EurekaMain.class,args); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /member-parent/member-eureka/src/main/resources/application.yml: -------------------------------------------------------------------------------- 1 | server: port: 1000 eureka: instance: hostname: localhost client: register-with-eureka: false fetch-registry: false service-url: # 客户端访问当前注册中心时使用的地址 defaultZone: http://${eureka.instance.hostname}/${server.port}/eureka spring: application: name: firenay-leave-eureka -------------------------------------------------------------------------------- /member-parent/member-mysql-provider/src/main/java/com/firenay/leave/MySQLMain.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave; 2 | 3 | import org.mybatis.spring.annotation.MapperScan; 4 | import org.springframework.boot.SpringApplication; 5 | import org.springframework.boot.autoconfigure.SpringBootApplication; 6 | 7 | /** 8 | *

Title: MySQLMain

9 | * Description: 10 | * date:2020/5/18 11:15 11 | */ 12 | @MapperScan("com.firenay.leave.mapper") 13 | @SpringBootApplication 14 | public class MySQLMain { 15 | 16 | // http://127.0.0.1:2000/get/get/member/po/by/login/acct/remote?loginAcct=leave 17 | //// 获取所有在页面展示的已发起众筹项目 18 | //// http://127.0.0.1:2000/get/portal/type/project/data 19 | //// 查询单个众筹项目 20 | //// http://127.0.0.1:2000/get/project/derail/remote/1 21 | public static void main(String[] args) { 22 | SpringApplication.run(MySQLMain.class,args); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /member-parent/member-mysql-provider/src/main/java/com/firenay/leave/mapper/AddressPOMapper.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.mapper; 2 | 3 | import com.firenay.leave.entity.po.AddressPO; 4 | import com.firenay.leave.entity.po.AddressPOExample; 5 | import org.apache.ibatis.annotations.Param; 6 | 7 | import java.util.List; 8 | 9 | public interface AddressPOMapper { 10 | int countByExample(AddressPOExample example); 11 | 12 | int deleteByExample(AddressPOExample example); 13 | 14 | int deleteByPrimaryKey(Integer id); 15 | 16 | int insert(AddressPO record); 17 | 18 | int insertSelective(AddressPO record); 19 | 20 | List selectByExample(AddressPOExample example); 21 | 22 | AddressPO selectByPrimaryKey(Integer id); 23 | 24 | int updateByExampleSelective(@Param("record") AddressPO record, @Param("example") AddressPOExample example); 25 | 26 | int updateByExample(@Param("record") AddressPO record, @Param("example") AddressPOExample example); 27 | 28 | int updateByPrimaryKeySelective(AddressPO record); 29 | 30 | int updateByPrimaryKey(AddressPO record); 31 | } -------------------------------------------------------------------------------- /member-parent/member-mysql-provider/src/main/java/com/firenay/leave/mapper/MemberConfirmInfoPOMapper.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.mapper; 2 | 3 | import com.firenay.leave.entity.po.MemberConfirmInfoPO; 4 | import com.firenay.leave.entity.po.MemberConfirmInfoPOExample; 5 | import java.util.List; 6 | import org.apache.ibatis.annotations.Param; 7 | 8 | public interface MemberConfirmInfoPOMapper { 9 | int countByExample(MemberConfirmInfoPOExample example); 10 | 11 | int deleteByExample(MemberConfirmInfoPOExample example); 12 | 13 | int deleteByPrimaryKey(Integer id); 14 | 15 | int insert(MemberConfirmInfoPO record); 16 | 17 | int insertSelective(MemberConfirmInfoPO record); 18 | 19 | List selectByExample(MemberConfirmInfoPOExample example); 20 | 21 | MemberConfirmInfoPO selectByPrimaryKey(Integer id); 22 | 23 | int updateByExampleSelective(@Param("record") MemberConfirmInfoPO record, @Param("example") MemberConfirmInfoPOExample example); 24 | 25 | int updateByExample(@Param("record") MemberConfirmInfoPO record, @Param("example") MemberConfirmInfoPOExample example); 26 | 27 | int updateByPrimaryKeySelective(MemberConfirmInfoPO record); 28 | 29 | int updateByPrimaryKey(MemberConfirmInfoPO record); 30 | } -------------------------------------------------------------------------------- /member-parent/member-mysql-provider/src/main/java/com/firenay/leave/mapper/MemberLaunchInfoPOMapper.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.mapper; 2 | 3 | import com.firenay.leave.entity.po.MemberLaunchInfoPO; 4 | import com.firenay.leave.entity.po.MemberLaunchInfoPOExample; 5 | import org.apache.ibatis.annotations.Param; 6 | 7 | import java.util.List; 8 | 9 | public interface MemberLaunchInfoPOMapper { 10 | int countByExample(MemberLaunchInfoPOExample example); 11 | 12 | int deleteByExample(MemberLaunchInfoPOExample example); 13 | 14 | int deleteByPrimaryKey(Integer id); 15 | 16 | int insert(MemberLaunchInfoPO record); 17 | 18 | int insertSelective(MemberLaunchInfoPO record); 19 | 20 | List selectByExample(MemberLaunchInfoPOExample example); 21 | 22 | MemberLaunchInfoPO selectByPrimaryKey(Integer id); 23 | 24 | int updateByExampleSelective(@Param("record") MemberLaunchInfoPO record, @Param("example") MemberLaunchInfoPOExample example); 25 | 26 | int updateByExample(@Param("record") MemberLaunchInfoPO record, @Param("example") MemberLaunchInfoPOExample example); 27 | 28 | int updateByPrimaryKeySelective(MemberLaunchInfoPO record); 29 | 30 | int updateByPrimaryKey(MemberLaunchInfoPO record); 31 | } -------------------------------------------------------------------------------- /member-parent/member-mysql-provider/src/main/java/com/firenay/leave/mapper/MemberPOMapper.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.mapper; 2 | 3 | import com.firenay.leave.entity.po.MemberPOExample; 4 | import com.firenay.leave.entity.po.MemberPO; 5 | import org.apache.ibatis.annotations.Param; 6 | 7 | import java.util.List; 8 | 9 | public interface MemberPOMapper { 10 | int countByExample(MemberPOExample example); 11 | 12 | int deleteByExample(MemberPOExample example); 13 | 14 | int deleteByPrimaryKey(Integer id); 15 | 16 | int insert(MemberPO record); 17 | 18 | int insertSelective(MemberPO record); 19 | 20 | List selectByExample(MemberPOExample example); 21 | 22 | MemberPO selectByPrimaryKey(Integer id); 23 | 24 | int updateByExampleSelective(@Param("record") MemberPO record, @Param("example") MemberPOExample example); 25 | 26 | int updateByExample(@Param("record") MemberPO record, @Param("example") MemberPOExample example); 27 | 28 | int updateByPrimaryKeySelective(MemberPO record); 29 | 30 | int updateByPrimaryKey(MemberPO record); 31 | } -------------------------------------------------------------------------------- /member-parent/member-mysql-provider/src/main/java/com/firenay/leave/mapper/OrderPOMapper.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.mapper; 2 | 3 | import com.firenay.leave.entity.po.OrderPO; 4 | import com.firenay.leave.entity.po.OrderPOExample; 5 | import org.apache.ibatis.annotations.Param; 6 | 7 | import java.util.List; 8 | 9 | public interface OrderPOMapper { 10 | int countByExample(OrderPOExample example); 11 | 12 | int deleteByExample(OrderPOExample example); 13 | 14 | int deleteByPrimaryKey(Integer id); 15 | 16 | int insert(OrderPO record); 17 | 18 | int insertSelective(OrderPO record); 19 | 20 | List selectByExample(OrderPOExample example); 21 | 22 | OrderPO selectByPrimaryKey(Integer id); 23 | 24 | int updateByExampleSelective(@Param("record") OrderPO record, @Param("example") OrderPOExample example); 25 | 26 | int updateByExample(@Param("record") OrderPO record, @Param("example") OrderPOExample example); 27 | 28 | int updateByPrimaryKeySelective(OrderPO record); 29 | 30 | int updateByPrimaryKey(OrderPO record); 31 | } -------------------------------------------------------------------------------- /member-parent/member-mysql-provider/src/main/java/com/firenay/leave/mapper/OrderProjectPOMapper.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.mapper; 2 | 3 | import com.firenay.leave.entity.po.OrderProjectPO; 4 | import com.firenay.leave.entity.po.OrderProjectPOExample; 5 | import com.firenay.leave.entity.vo.OrderProjectVO; 6 | import org.apache.ibatis.annotations.Param; 7 | 8 | import java.util.List; 9 | 10 | public interface OrderProjectPOMapper { 11 | int countByExample(OrderProjectPOExample example); 12 | 13 | int deleteByExample(OrderProjectPOExample example); 14 | 15 | int deleteByPrimaryKey(Integer id); 16 | 17 | int insert(OrderProjectPO record); 18 | 19 | int insertSelective(OrderProjectPO record); 20 | 21 | List selectByExample(OrderProjectPOExample example); 22 | 23 | OrderProjectPO selectByPrimaryKey(Integer id); 24 | 25 | int updateByExampleSelective(@Param("record") OrderProjectPO record, @Param("example") OrderProjectPOExample example); 26 | 27 | int updateByExample(@Param("record") OrderProjectPO record, @Param("example") OrderProjectPOExample example); 28 | 29 | int updateByPrimaryKeySelective(OrderProjectPO record); 30 | 31 | int updateByPrimaryKey(OrderProjectPO record); 32 | 33 | OrderProjectVO selectOrderProjectVO(@Param("returnId") Integer returnId); 34 | } -------------------------------------------------------------------------------- /member-parent/member-mysql-provider/src/main/java/com/firenay/leave/mapper/ProjectItemPicPOMapper.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.mapper; 2 | 3 | import com.firenay.leave.entity.po.ProjectItemPicPO; 4 | import com.firenay.leave.entity.po.ProjectItemPicPOExample; 5 | import org.apache.ibatis.annotations.Param; 6 | 7 | import java.util.List; 8 | 9 | public interface ProjectItemPicPOMapper { 10 | int countByExample(ProjectItemPicPOExample example); 11 | 12 | int deleteByExample(ProjectItemPicPOExample example); 13 | 14 | int deleteByPrimaryKey(Integer id); 15 | 16 | int insert(ProjectItemPicPO record); 17 | 18 | int insertSelective(ProjectItemPicPO record); 19 | 20 | List selectByExample(ProjectItemPicPOExample example); 21 | 22 | ProjectItemPicPO selectByPrimaryKey(Integer id); 23 | 24 | int updateByExampleSelective(@Param("record") ProjectItemPicPO record, @Param("example") ProjectItemPicPOExample example); 25 | 26 | int updateByExample(@Param("record") ProjectItemPicPO record, @Param("example") ProjectItemPicPOExample example); 27 | 28 | int updateByPrimaryKeySelective(ProjectItemPicPO record); 29 | 30 | int updateByPrimaryKey(ProjectItemPicPO record); 31 | 32 | /** 33 | * 保存发起众筹上传的所有图片的路径 34 | */ 35 | void insertPaths(@Param("detailPicturePaths") List detailPicturePaths, @Param("projectId") Integer projectId); 36 | } -------------------------------------------------------------------------------- /member-parent/member-mysql-provider/src/main/java/com/firenay/leave/mapper/ReturnPOMapper.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.mapper; 2 | 3 | import com.firenay.leave.entity.po.ReturnPO; 4 | import com.firenay.leave.entity.po.ReturnPOExample; 5 | import org.apache.ibatis.annotations.Param; 6 | 7 | import java.util.List; 8 | 9 | public interface ReturnPOMapper { 10 | int countByExample(ReturnPOExample example); 11 | 12 | int deleteByExample(ReturnPOExample example); 13 | 14 | int deleteByPrimaryKey(Integer id); 15 | 16 | int insert(ReturnPO record); 17 | 18 | int insertSelective(ReturnPO record); 19 | 20 | List selectByExample(ReturnPOExample example); 21 | 22 | ReturnPO selectByPrimaryKey(Integer id); 23 | 24 | int updateByExampleSelective(@Param("record") ReturnPO record, @Param("example") ReturnPOExample example); 25 | 26 | int updateByExample(@Param("record") ReturnPO record, @Param("example") ReturnPOExample example); 27 | 28 | int updateByPrimaryKeySelective(ReturnPO record); 29 | 30 | int updateByPrimaryKey(ReturnPO record); 31 | 32 | /** 33 | * 保存回报信息 34 | */ 35 | void insertReturnPOBatch(@Param("returnPOs") List returnPOs,@Param("projectId") Integer projectId); 36 | } -------------------------------------------------------------------------------- /member-parent/member-mysql-provider/src/main/java/com/firenay/leave/mapper/TagPOMapper.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.mapper; 2 | 3 | import com.firenay.leave.entity.po.TagPO; 4 | import com.firenay.leave.entity.po.TagPOExample; 5 | import java.util.List; 6 | import org.apache.ibatis.annotations.Param; 7 | 8 | public interface TagPOMapper { 9 | int countByExample(TagPOExample example); 10 | 11 | int deleteByExample(TagPOExample example); 12 | 13 | int deleteByPrimaryKey(Integer id); 14 | 15 | int insert(TagPO record); 16 | 17 | int insertSelective(TagPO record); 18 | 19 | List selectByExample(TagPOExample example); 20 | 21 | TagPO selectByPrimaryKey(Integer id); 22 | 23 | int updateByExampleSelective(@Param("record") TagPO record, @Param("example") TagPOExample example); 24 | 25 | int updateByExample(@Param("record") TagPO record, @Param("example") TagPOExample example); 26 | 27 | int updateByPrimaryKeySelective(TagPO record); 28 | 29 | int updateByPrimaryKey(TagPO record); 30 | } -------------------------------------------------------------------------------- /member-parent/member-mysql-provider/src/main/java/com/firenay/leave/mapper/TypePOMapper.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.mapper; 2 | 3 | import com.firenay.leave.entity.po.TypePO; 4 | import com.firenay.leave.entity.po.TypePOExample; 5 | import org.apache.ibatis.annotations.Param; 6 | 7 | import java.util.List; 8 | 9 | public interface TypePOMapper { 10 | int countByExample(TypePOExample example); 11 | 12 | int deleteByExample(TypePOExample example); 13 | 14 | int deleteByPrimaryKey(Integer id); 15 | 16 | int insert(TypePO record); 17 | 18 | int insertSelective(TypePO record); 19 | 20 | List selectByExample(TypePOExample example); 21 | 22 | TypePO selectByPrimaryKey(Integer id); 23 | 24 | int updateByExampleSelective(@Param("record") TypePO record, @Param("example") TypePOExample example); 25 | 26 | int updateByExample(@Param("record") TypePO record, @Param("example") TypePOExample example); 27 | 28 | int updateByPrimaryKeySelective(TypePO record); 29 | 30 | int updateByPrimaryKey(TypePO record); 31 | } -------------------------------------------------------------------------------- /member-parent/member-mysql-provider/src/main/java/com/firenay/leave/service/api/MemberService.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.service.api; 2 | 3 | import com.firenay.leave.entity.po.MemberPO; 4 | 5 | /** 6 | *

Title: MemberService

7 | * Description: 8 | * date:2020/5/18 13:40 9 | */ 10 | public interface MemberService { 11 | 12 | MemberPO getMemberPoByLoginAcct(String loginAcct); 13 | 14 | void saveMember(MemberPO memberPO); 15 | } 16 | -------------------------------------------------------------------------------- /member-parent/member-mysql-provider/src/main/java/com/firenay/leave/service/api/OrderService.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.service.api; 2 | 3 | import com.firenay.leave.entity.vo.AddressVO; 4 | import com.firenay.leave.entity.vo.OrderProjectVO; 5 | import com.firenay.leave.entity.vo.OrderVO; 6 | 7 | import java.util.List; 8 | 9 | /** 10 | *

Title: OrderService

11 | * Description: 12 | * date:2020/5/21 21:34 13 | */ 14 | public interface OrderService { 15 | 16 | OrderProjectVO getOrderProjectVO(Integer projectId, Integer returnId); 17 | 18 | /** 19 | * 查询用户地址 20 | */ 21 | List getAddressVOList(Integer memberId); 22 | 23 | void saveAddress(AddressVO addressVO); 24 | 25 | /** 26 | * 保存用户支付信息 27 | */ 28 | void saveOrder(OrderVO orderVO); 29 | } 30 | -------------------------------------------------------------------------------- /member-parent/member-mysql-provider/src/main/java/com/firenay/leave/service/api/ProjectService.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.service.api; 2 | 3 | import com.firenay.leave.entity.vo.DetailProjectVO; 4 | import com.firenay.leave.entity.vo.PortalTypeVO; 5 | import com.firenay.leave.entity.vo.ProjectVO; 6 | 7 | import java.util.List; 8 | 9 | /** 10 | *

Title: ProjectService

11 | * Description: 12 | * date:2020/5/19 20:52 13 | */ 14 | public interface ProjectService { 15 | /** 16 | * 发起众筹所有数据的保存业务 17 | */ 18 | int saveProject(ProjectVO projectVO, Integer memberId); 19 | 20 | /** 21 | * 查询所有已发布众筹信息 22 | */ 23 | List getPortalTypeVO(); 24 | 25 | /** 26 | * 用户点击项目然后展示的内容 27 | */ 28 | DetailProjectVO getDetailProjectVO(Integer projectId); 29 | } 30 | -------------------------------------------------------------------------------- /member-parent/member-mysql-provider/src/main/resources/application.yml: -------------------------------------------------------------------------------- 1 | server: port: 2000 eureka: client: serviceUrl: defaultZone: http://localhost:1000/eureka/ spring: application: name: firenay-leave-mysql datasource: name: firenay type: com.alibaba.druid.pool.DruidDataSource url: jdbc:mysql://127.0.0.1:3306/project_leave??useSSL=false&useUnicode=true&characterEncoding=utf-8&rewriteBatchedStatements=true username: root password: mq0000 driver-class-name: com.mysql.jdbc.Driver mybatis: mapper-locations: classpath*:mapper/*Mapper.xml logging: level: com.firenay.leave.mapper: debug com.firenay.leave.test: debug -------------------------------------------------------------------------------- /member-parent/member-order-consumer/src/main/java/com/firenay/leave/OrderMain.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.cloud.client.discovery.EnableDiscoveryClient; 6 | import org.springframework.cloud.openfeign.EnableFeignClients; 7 | 8 | /** 9 | *

Title: OrderMain

10 | * Description:订单 11 | * date:2020/5/21 19:48 12 | */ 13 | @EnableFeignClients 14 | @EnableDiscoveryClient 15 | @SpringBootApplication 16 | public class OrderMain { 17 | public static void main(String[] args) { 18 | SpringApplication.run(OrderMain.class, args); 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /member-parent/member-order-consumer/src/main/resources/application.yml: -------------------------------------------------------------------------------- 1 | server: port: 6000 eureka: client: serviceUrl: defaultZone: http://localhost:1000/eureka/ spring: application: name: firenay-leave-order # Spring Session 利用redis进行序列化存储 thymeleaf: prefix: classpath:/templates/ suffix: .html redis: # host: 120.79.50.189 host: 10.43.1.52 session: store-type: redis -------------------------------------------------------------------------------- /member-parent/member-pay-consumer/src/main/java/com/firenay/leave/PayMain.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.cloud.client.discovery.EnableDiscoveryClient; 6 | import org.springframework.cloud.openfeign.EnableFeignClients; 7 | 8 | // 启用Feign客户端功能 9 | @EnableFeignClients 10 | @EnableDiscoveryClient 11 | @SpringBootApplication 12 | public class PayMain { 13 | 14 | public static void main(String[] args) { 15 | SpringApplication.run(PayMain.class, args); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /member-parent/member-pay-consumer/src/main/java/com/firenay/leave/config/PayProperties.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.config; 2 | 3 | import lombok.AllArgsConstructor; 4 | import lombok.Data; 5 | import lombok.NoArgsConstructor; 6 | import org.springframework.boot.context.properties.ConfigurationProperties; 7 | import org.springframework.stereotype.Component; 8 | 9 | /** 10 | *

Title: PayProperties

11 | * Description: 12 | * date:2020/5/22 10:40 13 | */ 14 | @Data 15 | @NoArgsConstructor 16 | @AllArgsConstructor 17 | @Component 18 | @ConfigurationProperties(prefix = "ali.pay") 19 | public class PayProperties { 20 | 21 | private String appId; 22 | 23 | private String merchantPrivateKey; 24 | 25 | private String alipayPublicKey; 26 | 27 | private String notifyUrl; 28 | 29 | private String returnUrl; 30 | 31 | private String signType; 32 | 33 | private String charset; 34 | 35 | private String gatewayUrl; 36 | } 37 | -------------------------------------------------------------------------------- /member-parent/member-project-consumer/src/main/java/com/firenay/leave/ProjectMain.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.cloud.client.discovery.EnableDiscoveryClient; 6 | import org.springframework.cloud.openfeign.EnableFeignClients; 7 | /** 8 | *

Title: ProjectMain

9 | * Description:图片上传在这 10 | * date:2020/5/19 18:15 11 | */ 12 | // 启用Feign客户端功能 13 | @EnableFeignClients 14 | @EnableDiscoveryClient 15 | @SpringBootApplication 16 | public class ProjectMain { 17 | 18 | public static void main(String[] args) { 19 | SpringApplication.run(ProjectMain.class, args); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /member-parent/member-project-consumer/src/main/java/com/firenay/leave/config/LeaveWebMvcConfig.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.config; 2 | 3 | import org.springframework.context.annotation.Configuration; 4 | import org.springframework.web.servlet.config.annotation.ViewControllerRegistry; 5 | import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; 6 | 7 | /** 8 | *

Title: LeaveWebMvcConfig

9 | * Description:视图映射器 10 | * date:2020/5/19 18:32 11 | */ 12 | @Configuration 13 | public class LeaveWebMvcConfig implements WebMvcConfigurer { 14 | 15 | @Override 16 | public void addViewControllers(ViewControllerRegistry registry) { 17 | 18 | // view-controller是在project-consumer内部定义的,所以这里是一个不经过Zuul访问的地址,所以这个路径前面不加路由规则中定义的前缀:'/project' 19 | registry.addViewController("/agree/protocol/page").setViewName("project-agree"); 20 | registry.addViewController("/launch/project/page").setViewName("project-launch"); 21 | registry.addViewController("/return/info/page").setViewName("project-return"); 22 | registry.addViewController("/create/confirm/page").setViewName("project-confirm"); 23 | registry.addViewController("/create/success").setViewName("project-success"); 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /member-parent/member-project-consumer/src/main/java/com/firenay/leave/config/OSSProperties.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.config; 2 | 3 | import lombok.AllArgsConstructor; 4 | import lombok.Data; 5 | import lombok.NoArgsConstructor; 6 | import org.springframework.boot.context.properties.ConfigurationProperties; 7 | import org.springframework.stereotype.Component; 8 | 9 | /** 10 | *

Title: OSSProperties

11 | * Description: 12 | * date:2020/5/19 18:27 13 | */ 14 | @Data 15 | @NoArgsConstructor 16 | @AllArgsConstructor 17 | @Component 18 | @ConfigurationProperties(prefix = "aliyun.oss") 19 | public class OSSProperties { 20 | 21 | private String endPoint; 22 | private String bucketName; 23 | private String accessKeyId; 24 | private String accessKeySecret; 25 | private String bucketDomain; 26 | } 27 | -------------------------------------------------------------------------------- /member-parent/member-project-consumer/src/main/resources/1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/member-parent/member-project-consumer/src/main/resources/1.jpg -------------------------------------------------------------------------------- /member-parent/member-project-consumer/src/main/resources/application.yml: -------------------------------------------------------------------------------- 1 | server: port: 5000 eureka: client: serviceUrl: defaultZone: http://localhost:1000/eureka/ spring: application: name: firenay-leave-project # Spring Session 利用redis进行序列化存储 redis: # host: 120.79.50.189 host: 10.43.1.52 session: store-type: redis servlet: multipart: max-file-size: 10MB max-request-size: 100MB aliyun: oss: access-key-id: LTAakshdirWtoVVivJ3jRYA access-key-secret: ZYDWqEauwihdQ8zfucRARIfHhhdq bucket-domain: http://firenay.oss-cn-shenzhen.aliyuncs.com bucket-name: firenay end-point: http://oss-cn-shenzhen.aliyuncs.com -------------------------------------------------------------------------------- /member-parent/member-project-consumer/src/test/java/com/firenay/leave/test/OSSTest.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.test; 2 | 3 | import com.firenay.leave.util.ResultEntity; 4 | import org.junit.Test; 5 | 6 | import java.io.InputStream; 7 | 8 | import static com.firenay.leave.util.LEAVEUtil.uploadFileToOss; 9 | 10 | /** 11 | *

Title: OSSTest

12 | * Description:OSS上传测试 13 | * date:2020/5/19 19:26 14 | */ 15 | public class OSSTest { 16 | 17 | @Test 18 | public void ossTest(){ 19 | InputStream inputStream = ClassLoader.getSystemClassLoader().getResourceAsStream("1.jpg"); 20 | ResultEntity resultEntity = uploadFileToOss("http://oss-cn-shenzhen.aliyuncs.com", "LTAI4FyTWirWtoVVivJ3jRYA", "ZYDWqEOByTvOBGQ8zfucRARIfHhhdq", inputStream, "firenay", "http://firenay.oss-cn-shenzhen.aliyuncs.com", "1.jpg"); 21 | System.out.println(resultEntity); 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /member-parent/member-redis-provider/src/main/java/com/firenay/leave/RedisMain.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | /** 7 | *

Title: RedisMain

8 | * Description: 9 | * date:2020/5/18 14:04 10 | */ 11 | @SpringBootApplication 12 | public class RedisMain { 13 | 14 | // http://127.0.0.1:3000/set/redis/key/value/remote?key=test&value=test 15 | // 带超时时间:http://127.0.0.1:3000/set/redis/key/value/remote/with/timeout?key=test&value=test&time=666&timeUnit=SECONDS 16 | // http://127.0.0.1:3000/get/redis/string/value/by/key?key=test 17 | // http://127.0.0.1:3000/remove/redis/key/remote?key=test 18 | public static void main(String[] args) { 19 | SpringApplication.run(RedisMain.class,args); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /member-parent/member-redis-provider/src/main/resources/application.yml: -------------------------------------------------------------------------------- 1 | spring: 2 | application: 3 | name: firenay-leave-redis 4 | redis: 5 | # host: 120.79.50.189 6 | host: 10.43.1.52 7 | eureka: 8 | client: 9 | serviceUrl: 10 | defaultZone: http://localhost:1000/eureka/ 11 | server: 12 | port: 3000 -------------------------------------------------------------------------------- /member-parent/member-zuul/src/main/java/com/firenay/leave/ZuulMain.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.cloud.netflix.zuul.EnableZuulProxy; 6 | 7 | /** 8 | *

Title: ZuulMain

9 | * Description: 10 | * date:2020/5/18 16:38 11 | */ 12 | @EnableZuulProxy 13 | @SpringBootApplication 14 | public class ZuulMain { 15 | 16 | // http://127.0.0.1:520/ 17 | public static void main(String[] args) { 18 | SpringApplication.run(ZuulMain.class,args); 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /member-parent/member-zuul/src/main/resources/application.yml: -------------------------------------------------------------------------------- 1 | spring: 2 | application: 3 | name: firenay-leave-zuul 4 | #设置 session 共享 5 | redis: 6 | # host: 120.79.50.189 7 | host: 10.43.1.52 8 | session: 9 | store-type: redis 10 | servlet: 11 | multipart: 12 | max-file-size: 10MB 13 | max-request-size: 100MB 14 | eureka: 15 | client: 16 | serviceUrl: 17 | defaultZone: http://localhost:1000/eureka/ 18 | server: 19 | port: 520 20 | zuul: 21 | # 路由规则 22 | routes: 23 | leave-portal: 24 | service-id: firenay-leave-auth 25 | # 这里一定要使用两个 '*' 号,不然 '/' 路径后面的多层路径将无法访问 26 | path: /** 27 | leave-project: 28 | service-id: firenay-leave-project 29 | # 上面使用了 '/**' 这里就不能用了 所以前面带上 '/project' 来区分 30 | # 如果不经过 zuul 就不需要带上 /project 31 | path: /project/** 32 | leave-order: 33 | service-id: firenay-leave-order 34 | path: /order/** 35 | leave-pay: 36 | service-id: firenay-leave-pay 37 | path: /pay/** 38 | # 只允许有别名访问 39 | ignored-services: '*' 40 | # 在Zuul向其他微服务重定向的时候保持原本请求头信息 41 | sensitive-headers: '*' 42 | # 防止报 Hystrix Readed time out 43 | ribbon: 44 | ReadTimeout: 60000 45 | SocketTimeout: 60000 -------------------------------------------------------------------------------- /spring-annotation/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.firenay 8 | spring-annotation 9 | 1.0-SNAPSHOT 10 | 11 | 12 | 13 | org.springframework 14 | spring-webmvc 15 | 4.3.20.RELEASE 16 | 17 | 18 | junit 19 | junit 20 | 4.12 21 | test 22 | 23 | 24 | -------------------------------------------------------------------------------- /spring-annotation/src/main/java/com/firenay/spring/MyAnnotationConfiguration.java: -------------------------------------------------------------------------------- 1 | package com.firenay.spring; 2 | 3 | import com.firenay.spring.entity.Employee; 4 | import org.springframework.context.annotation.Bean; 5 | import org.springframework.context.annotation.Configuration; 6 | 7 | /** 8 | *

Title: MyAnnotationConfiguration

9 | * Description: 10 | * date:2020/5/13 20:04 11 | */ 12 | @Configuration 13 | public class MyAnnotationConfiguration { 14 | 15 | @Bean 16 | public Employee getEmployee(){ 17 | return new Employee(); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /spring-annotation/src/main/java/com/firenay/spring/entity/Employee.java: -------------------------------------------------------------------------------- 1 | package com.firenay.spring.entity; 2 | 3 | /** 4 | *

Title: Employee

5 | * Description: 6 | * date:2020/5/13 20:06 7 | */ 8 | public class Employee { 9 | 10 | private Integer id; 11 | } 12 | -------------------------------------------------------------------------------- /spring-annotation/src/test/java/com/firenay/spring/SpringTest.java: -------------------------------------------------------------------------------- 1 | package com.firenay.spring; 2 | 3 | import com.firenay.spring.entity.Employee; 4 | import org.junit.Test; 5 | import org.springframework.context.annotation.AnnotationConfigApplicationContext; 6 | 7 | /** 8 | *

Title: SpringTest

9 | * Description: 10 | * date:2020/5/13 20:08 11 | */ 12 | public class SpringTest { 13 | 14 | @Test 15 | public void springTest(){ 16 | AnnotationConfigApplicationContext applicationContext = new AnnotationConfigApplicationContext(MyAnnotationConfiguration.class); 17 | Employee emp = applicationContext.getBean(Employee.class); 18 | System.out.println(emp); 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /spring-boot-Integration/src/main/java/com/firenay/boot/SpringBootIntegrationApplication.java: -------------------------------------------------------------------------------- 1 | package com.firenay.boot; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | @SpringBootApplication 7 | public class SpringBootIntegrationApplication { 8 | 9 | // http://127.0.0.1:8080/test/thymeleaf 10 | 11 | public static void main(String[] args) { 12 | SpringApplication.run(SpringBootIntegrationApplication.class, args); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /spring-boot-Integration/src/main/java/com/firenay/boot/controller/TemplateController.java: -------------------------------------------------------------------------------- 1 | package com.firenay.boot.controller; 2 | 3 | import org.springframework.stereotype.Controller; 4 | import org.springframework.ui.ModelMap; 5 | import org.springframework.web.bind.annotation.GetMapping; 6 | 7 | import javax.annotation.Resource; 8 | import javax.servlet.ServletContext; 9 | import javax.servlet.http.HttpSession; 10 | import java.util.Arrays; 11 | 12 | /** 13 | *

Title: TemplateController

14 | * Description: 15 | * date:2020/5/17 13:05 16 | */ 17 | @Controller 18 | public class TemplateController { 19 | 20 | @Resource 21 | private ServletContext servletContext; 22 | 23 | @GetMapping("/test/thymeleaf") 24 | public String testThymeleaf(ModelMap modelMap, HttpSession session){ 25 | 26 | modelMap.addAttribute("modelMapVal","modelMap中的数据"); 27 | 28 | session.setAttribute("sessionVal","session中的数据"); 29 | 30 | servletContext.setAttribute("AppContextVal","AppContext中的数据"); 31 | 32 | modelMap.addAttribute("list", Arrays.asList(5, 2, 0, 1, 3, 1, 4)); 33 | return "index"; 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /spring-boot-Integration/src/main/java/com/firenay/boot/entity/Emp.java: -------------------------------------------------------------------------------- 1 | package com.firenay.boot.entity; 2 | 3 | /** 4 | *

Title: Emp

5 | * Description: 6 | * date:2020/5/17 11:58 7 | */ 8 | public class Emp { 9 | private Integer empId; 10 | private String empName; 11 | private Integer empAge; 12 | 13 | @Override 14 | public String toString() { 15 | return "Emp{" + 16 | "empId=" + empId + 17 | ", empName='" + empName + '\'' + 18 | ", empAge=" + empAge + 19 | '}'; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /spring-boot-Integration/src/main/java/com/firenay/boot/mapper/EmpMapper.java: -------------------------------------------------------------------------------- 1 | package com.firenay.boot.mapper; 2 | 3 | import com.firenay.boot.entity.Emp; 4 | import org.apache.ibatis.annotations.Mapper; 5 | 6 | import java.util.List; 7 | 8 | /** 9 | *

Title: EmpMapper

10 | * Description: 11 | * date:2020/5/17 11:58 12 | */ 13 | @Mapper 14 | public interface EmpMapper { 15 | 16 | List selectAll(); 17 | } 18 | -------------------------------------------------------------------------------- /spring-boot-Integration/src/main/resources/application.yml: -------------------------------------------------------------------------------- 1 | 2 | spring: 3 | datasource: 4 | name: firenay 5 | type: com.alibaba.druid.pool.DruidDataSource 6 | url: jdbc:mysql://127.0.0.1:3306/project_leave??useSSL=false&useUnicode=true&characterEncoding=utf-8&rewriteBatchedStatements=true 7 | username: root 8 | password: mq0000 9 | driver-class-name: com.mysql.jdbc.Driver 10 | redis: 11 | host: 120.79.50.189 12 | thymeleaf: 13 | prefix: classpath:/templates/ 14 | suffix: .html 15 | cache: false #开发的时候禁用缓存 16 | mybatis: 17 | mapper-locations: classpath*:mapper/*Mapper.xml 18 | logging: 19 | level: 20 | com.firenay.boot.mapper: debug 21 | #server: 22 | # servlet: 23 | # context-path: /fireflynay.top -------------------------------------------------------------------------------- /spring-boot-Integration/src/main/resources/mapper/EmpMapper.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | -------------------------------------------------------------------------------- /spring-boot-Integration/src/main/resources/templates/include/part.html: -------------------------------------------------------------------------------- 1 |
2 |

will be include content [first]

3 |
4 |
5 |

will be include content [Second]

6 |
7 |
8 |

will be include content [Third]

9 |
-------------------------------------------------------------------------------- /spring-boot-Integration/src/main/resources/templates/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Boot-Thymeleaf 6 | 7 | 8 |
9 |

1.基本标签的使用

10 |

11 |

访问ModelMap

12 |

访问Session

13 |

访问AppContext

14 | 解析URL 15 |

[[${modelMapVal}]]

16 |

2.遍历集合

17 |
18 |

19 |
20 | 21 |

3.包含页面片段

22 | 23 | 24 |
25 | 26 |
27 | 28 |
29 |
30 | 31 | -------------------------------------------------------------------------------- /spring-cloud-parent/spring-cloud-common/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | spring-cloud-parent 7 | com.firenay.cloud 8 | 1.0-SNAPSHOT 9 | 10 | 4.0.0 11 | 12 | spring-cloud-common 13 | 14 | 15 | org.springframework.cloud 16 | spring-cloud-starter-openfeign 17 | 2.2.2.RELEASE 18 | 19 | 20 | -------------------------------------------------------------------------------- /spring-cloud-parent/spring-cloud-common/src/main/java/com/firenay/cloud/api/EmployeeRemoteService.java: -------------------------------------------------------------------------------- 1 | package com.firenay.cloud.api; 2 | 3 | import com.firenay.cloud.entity.Employee; 4 | import com.firenay.cloud.factory.MyFallBackFactory; 5 | import com.firenay.cloud.util.ResultEntity; 6 | import org.springframework.cloud.openfeign.FeignClient; 7 | import org.springframework.web.bind.annotation.GetMapping; 8 | import org.springframework.web.bind.annotation.RequestParam; 9 | 10 | import java.util.List; 11 | 12 | /** 13 | *

Title: EmployeeRemoteService

14 | * Description:为 Consumer 提供服务降级 15 | * date:2020/5/17 17:51 16 | */ 17 | @FeignClient(value = "firenay-provider", fallbackFactory = MyFallBackFactory.class) 18 | public interface EmployeeRemoteService { 19 | 20 | /** 21 | * 远程调用的进程 22 | */ 23 | @GetMapping("/provider/get/employee/remote") 24 | Employee getEmployeeRemote(); 25 | 26 | @GetMapping("/provider/consumer/search") 27 | List getEmpListRemote(@RequestParam("keyword") String keyword); 28 | 29 | @GetMapping("/provider/get/employee/circuit/breaker") 30 | ResultEntity getEmpWithCircuitBreaker(@RequestParam("signal") String signal); 31 | } 32 | -------------------------------------------------------------------------------- /spring-cloud-parent/spring-cloud-common/src/main/java/com/firenay/cloud/entity/Employee.java: -------------------------------------------------------------------------------- 1 | package com.firenay.cloud.entity; 2 | 3 | /** 4 | *

Title: Employee

5 | * Description: 6 | * date:2020/5/17 15:19 7 | */ 8 | public class Employee { 9 | 10 | private Integer empId; 11 | private String empName; 12 | private Double empSalary; 13 | 14 | @Override 15 | public String toString() { 16 | return "Employee{" + 17 | "empId=" + empId + 18 | ", empName='" + empName + '\'' + 19 | ", empSalary=" + empSalary + 20 | '}'; 21 | } 22 | 23 | public Employee() {} 24 | 25 | public Employee(Integer empId, String empName, Double empSalary) { 26 | this.empId = empId; 27 | this.empName = empName; 28 | this.empSalary = empSalary; 29 | } 30 | 31 | public Integer getEmpId() { 32 | return empId; 33 | } 34 | 35 | public void setEmpId(Integer empId) { 36 | this.empId = empId; 37 | } 38 | 39 | public String getEmpName() { 40 | return empName; 41 | } 42 | 43 | public void setEmpName(String empName) { 44 | this.empName = empName; 45 | } 46 | 47 | public Double getEmpSalary() { 48 | return empSalary; 49 | } 50 | 51 | public void setEmpSalary(Double empSalary) { 52 | this.empSalary = empSalary; 53 | } 54 | } 55 | -------------------------------------------------------------------------------- /spring-cloud-parent/spring-cloud-common/src/main/java/com/firenay/cloud/factory/MyFallBackFactory.java: -------------------------------------------------------------------------------- 1 | package com.firenay.cloud.factory; 2 | 3 | import com.firenay.cloud.api.EmployeeRemoteService; 4 | import com.firenay.cloud.entity.Employee; 5 | import com.firenay.cloud.util.ResultEntity; 6 | import feign.hystrix.FallbackFactory; 7 | import org.springframework.stereotype.Component; 8 | 9 | import java.util.List; 10 | 11 | /** 12 | *

Title: MyFallBackFactory

13 | * Description:实现 consumer 这端服务降级的功能 14 | * date:2020/5/17 20:29 15 | */ 16 | @Component 17 | public class MyFallBackFactory implements FallbackFactory { 18 | 19 | @Override 20 | public EmployeeRemoteService create(Throwable cause) { 21 | return new EmployeeRemoteService() { 22 | @Override 23 | public Employee getEmployeeRemote() { 24 | return null; 25 | } 26 | 27 | @Override 28 | public List getEmpListRemote(String keyword) { 29 | return null; 30 | } 31 | 32 | @Override 33 | public ResultEntity getEmpWithCircuitBreaker(String signal) { 34 | return ResultEntity.failed("服务降级生效" + cause.getMessage()); 35 | } 36 | }; 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /spring-cloud-parent/spring-cloud-consumer/src/main/java/com/firenay/cloud/FireNayConsumerMainType.java: -------------------------------------------------------------------------------- 1 | package com.firenay.cloud; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.cloud.netflix.eureka.EnableEurekaClient; 6 | 7 | /** 8 | *

Title: FireNayConsumerMainType

9 | * Description: 10 | * date:2020/5/17 15:30 11 | */ 12 | @EnableEurekaClient 13 | @SpringBootApplication 14 | public class FireNayConsumerMainType { 15 | 16 | // http://127.0.0.1:4000/consumer/get/employee/remote 17 | // http://127.0.0.1:4000/consumer/search?keyword=520 18 | public static void main(String[] args) { 19 | SpringApplication.run(FireNayConsumerMainType.class,args); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /spring-cloud-parent/spring-cloud-consumer/src/main/java/com/firenay/cloud/config/FireNayConfig.java: -------------------------------------------------------------------------------- 1 | package com.firenay.cloud.config; 2 | 3 | import org.springframework.cloud.client.loadbalancer.LoadBalanced; 4 | import org.springframework.context.annotation.Bean; 5 | import org.springframework.context.annotation.Configuration; 6 | import org.springframework.web.client.RestTemplate; 7 | 8 | /** 9 | *

Title: FireNayConfig

10 | * Description: 11 | * date:2020/5/17 15:40 12 | */ 13 | @Configuration 14 | public class FireNayConfig { 15 | 16 | /** 17 | * @LoadBalanced :让RestTemplate 具备负载均衡的功能 通过调用Ribbon访问Provider 18 | */ 19 | @LoadBalanced 20 | @Bean 21 | public RestTemplate getRestTemplate(){ 22 | return new RestTemplate(); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /spring-cloud-parent/spring-cloud-consumer/src/main/java/com/firenay/cloud/controller/HumanResourceController.java: -------------------------------------------------------------------------------- 1 | package com.firenay.cloud.controller; 2 | 3 | import com.firenay.cloud.entity.Employee; 4 | import org.springframework.web.bind.annotation.GetMapping; 5 | import org.springframework.web.bind.annotation.RequestParam; 6 | import org.springframework.web.bind.annotation.RestController; 7 | import org.springframework.web.client.RestTemplate; 8 | 9 | import javax.annotation.Resource; 10 | import java.util.List; 11 | 12 | /** 13 | *

Title: HumanResourceController

14 | * Description: 15 | * date:2020/5/17 15:42 16 | */ 17 | @RestController 18 | public class HumanResourceController { 19 | 20 | @Resource 21 | private RestTemplate restTemplate; 22 | 23 | /** 24 | * 通过Ribbon来调用 25 | */ 26 | // private String host = "http://127.0.0.1:1000"; 27 | private String host = "http://firenay-provider"; 28 | 29 | private String url = "/provider/get/employee/remote"; 30 | 31 | @GetMapping("/consumer/get/employee/remote") 32 | public Employee getEmployeeRemote(){ 33 | return restTemplate.getForObject(host + url, Employee.class); 34 | } 35 | 36 | @GetMapping("/consumer/search") 37 | public List getEmployeeSearch(@RequestParam("keyword") String keyword){ 38 | return restTemplate.getForObject(host + "/provider/consumer/search?keyword=" + keyword, List.class); 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /spring-cloud-parent/spring-cloud-consumer/src/main/resources/application.yml: -------------------------------------------------------------------------------- 1 | server: 2 | port: 4000 3 | spring: 4 | application: 5 | name: FIRENAY-CONSUMER 6 | eureka: 7 | client: 8 | serviceUrl: 9 | defaultZone: http://localhost:5000/eureka/ -------------------------------------------------------------------------------- /spring-cloud-parent/spring-cloud-dashboard/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | spring-cloud-parent 7 | com.firenay.cloud 8 | 1.0-SNAPSHOT 9 | 10 | 4.0.0 11 | 12 | spring-cloud-dashboard 13 | 14 | 15 | 16 | org.springframework.cloud 17 | spring-cloud-starter-netflix-hystrix-dashboard 18 | 2.2.2.RELEASE 19 | 20 | 21 | org.springframework.cloud 22 | spring-cloud-starter-netflix-eureka-client 23 | 2.2.2.RELEASE 24 | 25 | 26 | -------------------------------------------------------------------------------- /spring-cloud-parent/spring-cloud-dashboard/src/main/java/com/firenay/cloud/FireNayDashboard.java: -------------------------------------------------------------------------------- 1 | package com.firenay.cloud; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.cloud.netflix.hystrix.dashboard.EnableHystrixDashboard; 6 | 7 | /** 8 | *

Title: FireNayDashboard

9 | * Description:启用仪表盘监控功能 10 | * date:2020/5/17 21:16 11 | */ 12 | @EnableHystrixDashboard 13 | @SpringBootApplication 14 | public class FireNayDashboard { 15 | // http://localhost:1000/actuator/hystrix.stream 16 | // http://localhost:2000/actuator/hystrix.stream 17 | public static void main(String[] args) { 18 | SpringApplication.run(FireNayDashboard.class,args); 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /spring-cloud-parent/spring-cloud-dashboard/src/main/resources/application.yml: -------------------------------------------------------------------------------- 1 | server: 2 | port: 8000 3 | spring: 4 | application: 5 | name: FIRENAY-DASHBOARD 6 | eureka: 7 | client: 8 | serviceUrl: 9 | defaultZone: http://localhost:5000/eureka/ -------------------------------------------------------------------------------- /spring-cloud-parent/spring-cloud-eureka/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | spring-cloud-parent 7 | com.firenay.cloud 8 | 1.0-SNAPSHOT 9 | 10 | 4.0.0 11 | 12 | spring-cloud-eureka 13 | 14 | 15 | 16 | org.springframework.cloud 17 | spring-cloud-starter-netflix-eureka-server 18 | 2.2.2.RELEASE 19 | 20 | 21 | -------------------------------------------------------------------------------- /spring-cloud-parent/spring-cloud-eureka/src/main/java/com/firenay/cloud/FireNayEurekaMainType.java: -------------------------------------------------------------------------------- 1 | package com.firenay.cloud; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer; 6 | 7 | /** 8 | *

Title: FireNayEurekaMainType

9 | * Description: 10 | * date:2020/5/17 15:59 11 | */ 12 | @EnableEurekaServer 13 | @SpringBootApplication 14 | public class FireNayEurekaMainType { 15 | // http://127.0.0.1:5000/ 16 | public static void main(String[] args) { 17 | SpringApplication.run(FireNayEurekaMainType.class,args); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /spring-cloud-parent/spring-cloud-eureka/src/main/resources/application.yml: -------------------------------------------------------------------------------- 1 | server: 2 | port: 5000 3 | 4 | eureka: instance: hostname: localhost # 配置当前Eureka服务的主机地址 5 | client: register-with-eureka: false # 当前服务本身就是注册中心,不必“自己注册自己” 6 | fetch-registry: false # 当前服务本身就是注册中心,不必“从注册中心取回信息” service-url: # 客户端(指consumer、provider)访问当前注册中心时使用的地址 defaultZone: http://${eureka.instance.hostname}/${server.port}/eureka -------------------------------------------------------------------------------- /spring-cloud-parent/spring-cloud-feign-consumer/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | spring-cloud-parent 7 | com.firenay.cloud 8 | 1.0-SNAPSHOT 9 | 10 | 4.0.0 11 | 12 | spring-cloud-feign-consumer 13 | 14 | 15 | 16 | org.springframework.boot 17 | spring-boot-starter-web 18 | 19 | 20 | 21 | com.firenay.cloud 22 | spring-cloud-common 23 | 1.0-SNAPSHOT 24 | 25 | 26 | org.springframework.cloud 27 | spring-cloud-starter-netflix-eureka-client 28 | 2.2.2.RELEASE 29 | 30 | 31 | -------------------------------------------------------------------------------- /spring-cloud-parent/spring-cloud-feign-consumer/src/main/java/com/firenay/cloud/FireNayFeignConsumerMainType.java: -------------------------------------------------------------------------------- 1 | package com.firenay.cloud; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.cloud.openfeign.EnableFeignClients; 6 | 7 | /** 8 | *

Title: FireNayFeignConsumerMainType

9 | * Description:把 FireNayProviderMainType 关掉实现服务降级 10 | * date:2020/5/17 18:05 11 | */ 12 | @EnableFeignClients 13 | @SpringBootApplication 14 | public class FireNayFeignConsumerMainType { 15 | 16 | // http://127.0.0.1:7000/feign/consumer/get/employee 17 | // http://127.0.0.1:7000/provider/consumer/search?keyword=520 18 | // 服务降级 http://127.0.0.1:7000/feign/consumer/test/fallback?signal=quick-bang 19 | // 延时降级 http://127.0.0.1:7000/feign/consumer/test/fallback?signal=quick-s 20 | // 正常访问 http://127.0.0.1:7000/feign/consumer/test/fallback?signal=text 21 | public static void main(String[] args) { 22 | SpringApplication.run(FireNayFeignConsumerMainType.class,args); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /spring-cloud-parent/spring-cloud-feign-consumer/src/main/java/com/firenay/cloud/controller/FeignHumanResourceController.java: -------------------------------------------------------------------------------- 1 | package com.firenay.cloud.controller; 2 | 3 | import com.firenay.cloud.api.EmployeeRemoteService; 4 | import com.firenay.cloud.entity.Employee; 5 | import com.firenay.cloud.util.ResultEntity; 6 | import org.springframework.web.bind.annotation.GetMapping; 7 | import org.springframework.web.bind.annotation.RequestParam; 8 | import org.springframework.web.bind.annotation.RestController; 9 | 10 | import javax.annotation.Resource; 11 | import java.util.List; 12 | 13 | /** 14 | *

Title: FeignHumanResourceController

15 | * Description:通过Feign来调用 16 | * date:2020/5/17 18:07 17 | */ 18 | @RestController 19 | public class FeignHumanResourceController { 20 | 21 | @Resource 22 | private EmployeeRemoteService employeeRemoteService; 23 | 24 | @GetMapping("/feign/consumer/test/fallback") 25 | public ResultEntity getFallBack(@RequestParam("signal") String signal) { 26 | return employeeRemoteService.getEmpWithCircuitBreaker(signal); 27 | } 28 | 29 | @GetMapping("/feign/consumer/get/employee") 30 | public Employee getEmployeeRemote(){ 31 | return employeeRemoteService.getEmployeeRemote(); 32 | } 33 | 34 | @GetMapping("/provider/consumer/search") 35 | public List getEmpListRemote(@RequestParam("keyword") String keyword){ 36 | return employeeRemoteService.getEmpListRemote(keyword); 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /spring-cloud-parent/spring-cloud-feign-consumer/src/main/resources/application.yml: -------------------------------------------------------------------------------- 1 | server: 2 | port: 7000 3 | spring: 4 | application: 5 | name: FIRENAY-FEIGN-CONSUMER 6 | eureka: 7 | client: 8 | serviceUrl: 9 | defaultZone: http://localhost:5000/eureka/ 10 | # 开启服务降级 11 | feign: 12 | hystrix: 13 | enabled: true -------------------------------------------------------------------------------- /spring-cloud-parent/spring-cloud-provider/src/main/java/com/firenay/cloud/FireNayProviderMainType.java: -------------------------------------------------------------------------------- 1 | package com.firenay.cloud; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.cloud.client.circuitbreaker.EnableCircuitBreaker; 6 | 7 | /** 8 | *

Title: FireNayProviderMainType

9 | * Description: 10 | * date:2020/5/17 15:25 11 | */ 12 | 13 | /** 14 | * 熔断服务 15 | */ 16 | @EnableCircuitBreaker 17 | @SpringBootApplication 18 | public class FireNayProviderMainType { 19 | // http://127.0.0.1:1000/provider/get/employee/remote 20 | // http://127.0.0.1:1000/provider/consumer/search?keyword=520 21 | // 服务熔断 http://127.0.0.1:1000/provider/get/employee/circuit/breaker?signal=quick-bang 22 | // 服务延迟 http://127.0.0.1:1000/provider/get/employee/circuit/breaker?signal=quick-s 23 | // 正常访问 http://127.0.0.1:1000/provider/get/employee/circuit/breaker?signal=text 24 | public static void main(String[] args) { 25 | SpringApplication.run(FireNayProviderMainType.class,args); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /spring-cloud-parent/spring-cloud-provider/src/main/resources/application.yml: -------------------------------------------------------------------------------- 1 | server: 2 | port: 1000 3 | spring: 4 | application: 5 | name: FIRENAY-PROVIDER 6 | eureka: 7 | client: 8 | serviceUrl: 9 | defaultZone: http://localhost:5000/eureka/ 10 | management: 11 | endpoints: 12 | web: 13 | exposure: 14 | include: hystrix.stream -------------------------------------------------------------------------------- /spring-cloud-parent/spring-cloud-providers/src/main/java/com/firenay/cloud/FireNayProvidersMainType.java: -------------------------------------------------------------------------------- 1 | package com.firenay.cloud; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.cloud.client.circuitbreaker.EnableCircuitBreaker; 6 | 7 | /** 8 | *

Title: FireNayProvidersMainType

9 | * Description: 10 | * date:2020/5/17 15:25 11 | */ 12 | /** 13 | * 熔断服务 14 | */ 15 | @EnableCircuitBreaker 16 | @SpringBootApplication 17 | public class FireNayProvidersMainType { 18 | // http://127.0.0.1:2000/provider/get/employee/remote 19 | // http://127.0.0.1:2000/provider/consumer/search?keyword=520 20 | // 服务熔断 http://127.0.0.1:2000/provider/get/employee/circuit/breaker?signal=quick-bang 21 | // 服务延迟 http://127.0.0.1:2000/provider/get/employee/circuit/breaker?signal=quick-s 22 | // 正常访问 http://127.0.0.1:2000/provider/get/employee/circuit/breaker?signal=text 23 | public static void main(String[] args) { 24 | SpringApplication.run(FireNayProvidersMainType.class,args); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /spring-cloud-parent/spring-cloud-providers/src/main/resources/application.yml: -------------------------------------------------------------------------------- 1 | server: 2 | port: 2000 3 | spring: 4 | application: 5 | name: FIRENAY-PROVIDER 6 | eureka: 7 | client: 8 | serviceUrl: 9 | defaultZone: http://localhost:5000/eureka/ 10 | management: 11 | endpoints: 12 | web: 13 | exposure: 14 | include: hystrix.stream -------------------------------------------------------------------------------- /spring-cloud-parent/spring-cloud-zuul/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | spring-cloud-parent 7 | com.firenay.cloud 8 | 1.0-SNAPSHOT 9 | 10 | 4.0.0 11 | 12 | spring-cloud-zuul 13 | 14 | 15 | 16 | org.springframework.cloud 17 | spring-cloud-starter-netflix-eureka-client 18 | 2.2.2.RELEASE 19 | 20 | 21 | org.springframework.cloud 22 | spring-cloud-starter-netflix-zuul 23 | 2.2.2.RELEASE 24 | 25 | 26 | -------------------------------------------------------------------------------- /spring-cloud-parent/spring-cloud-zuul/src/main/java/com/firenay/cloud/FireNayZuulType.java: -------------------------------------------------------------------------------- 1 | package com.firenay.cloud; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.cloud.netflix.zuul.EnableZuulProxy; 6 | 7 | /** 8 | *

Title: FireNayZuulType

9 | * Description:开启 zuul 网关 [还可以开启让所有的服务只能通过 zuul 别名访问] 10 | * date:2020/5/17 21:43 11 | */ 12 | @EnableZuulProxy 13 | @SpringBootApplication 14 | public class FireNayZuulType { 15 | 16 | // http://localhost:9000/firenay-feign-consumer/feign/consumer/test/fallback?signal=text 17 | // 别名访问: http://localhost:9000/zuul-emp/feign/consumer/test/fallback?signal=text 18 | // 加上前缀: http://localhost:9000/maomi/zuul-emp/feign/consumer/test/fallback?signal=text 19 | public static void main(String[] args) { 20 | SpringApplication.run(FireNayZuulType.class,args); 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /spring-cloud-parent/spring-cloud-zuul/src/main/resources/application.yml: -------------------------------------------------------------------------------- 1 | server: 2 | port: 9000 3 | spring: 4 | application: 5 | name: FIRENAY-ZUUL 6 | eureka: 7 | client: 8 | serviceUrl: 9 | defaultZone: http://localhost:5000/eureka/ 10 | zuul: 11 | routes: 12 | employee: 13 | service-id: firenay-feign-consumer 14 | path: /zuul-emp/** 15 | # 让所有的服务只能通过别名访问 16 | ignored-services: '*' 17 | # 访问的时候必须加上这个前缀 18 | prefix: /maomi -------------------------------------------------------------------------------- /spring-security/src/main/java/com/firenay/security/controller/AdminController.java: -------------------------------------------------------------------------------- 1 | package com.firenay.security.controller; 2 | 3 | import org.springframework.stereotype.Controller; 4 | import org.springframework.web.bind.annotation.GetMapping; 5 | import org.springframework.web.bind.annotation.RequestMapping; 6 | /** 7 | *

Title: AdminController

8 | * Description: 9 | * date:2020/5/13 20:34 10 | */ 11 | @Controller 12 | public class AdminController { 13 | 14 | @GetMapping("/main.html") 15 | public String main(){ 16 | return "main"; 17 | } 18 | 19 | @RequestMapping("/to/no/auth/page.html") 20 | public String toNoAuthPage() { 21 | return "no_auth"; 22 | } 23 | 24 | } 25 | -------------------------------------------------------------------------------- /spring-security/src/main/java/com/firenay/security/controller/GongFuController.java: -------------------------------------------------------------------------------- 1 | package com.firenay.security.controller; 2 | 3 | import org.springframework.stereotype.Controller; 4 | import org.springframework.web.bind.annotation.GetMapping; 5 | import org.springframework.web.bind.annotation.PathVariable; 6 | /** 7 | *

Title: GongFuController

8 | * Description: 9 | * date:2020/5/13 20:34 10 | */ 11 | @Controller 12 | public class GongFuController { 13 | 14 | @GetMapping("/level1/{path}") 15 | public String level1Page(@PathVariable("path")String path){ 16 | return "/level1/"+path; 17 | } 18 | 19 | @GetMapping("/level2/{path}") 20 | public String level2Page(@PathVariable("path")String path){ 21 | return "/level2/"+path; 22 | } 23 | 24 | @GetMapping("/level3/{path}") 25 | public String level3Page(@PathVariable("path")String path){ 26 | return "/level3/"+path; 27 | } 28 | 29 | } 30 | -------------------------------------------------------------------------------- /spring-security/src/main/resources/jdbc.properties: -------------------------------------------------------------------------------- 1 | user=root 2 | password=mq0000 3 | url=jdbc:mysql://127.0.0.1:3306/project_leave?useSSL=false&useUnicode=true&characterEncoding=utf-8&rewriteBatchedStatements=true 4 | driverClass=com.mysql.jdbc.Driver 5 | 6 | initPoolSize=5 7 | maxPoolSize=10 -------------------------------------------------------------------------------- /spring-security/src/main/test/com/firenya/security/SecurityTest.java: -------------------------------------------------------------------------------- 1 | package com.firenya.security; 2 | 3 | import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; 4 | 5 | /** 6 | *

Title: SecurityTest

7 | * Description:盐值加密测试 8 | * date:2020/5/14 20:09 9 | */ 10 | public class SecurityTest { 11 | 12 | private static BCryptPasswordEncoder bCryptPasswordEncoder = new BCryptPasswordEncoder(); 13 | 14 | public static void main(String[] args) { 15 | String str = "123"; 16 | System.out.println(str + "加密后:" + encode(str)); 17 | 18 | // 判断是否相等 $2a$10$rbDAEOiFZ/Mv.b8q3rVSMOYEdza0GcEHmL48ranauOUP5RFjTZCUy 19 | System.out.println(str + "加密后是否相等? " + matches(str, "$2a$10$rbDAEOiFZ/Mv.b8q3rVSMOYEdza0GcEHmL48ranauOUP5RFjTZCUy")); 20 | } 21 | 22 | private static String encode(String encode){ 23 | // 创建BCryptPasswordEncoder对象 24 | return bCryptPasswordEncoder.encode(encode); 25 | } 26 | 27 | private static boolean matches(CharSequence rawPassword, String encodedPassword){ 28 | return bCryptPasswordEncoder.matches(rawPassword, encodedPassword); 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /spring-security/src/main/webapp/WEB-INF/views/level1/1.jsp: -------------------------------------------------------------------------------- 1 | <%@ page contentType="text/html;charset=UTF-8" language="java" %> 2 | <% 3 | pageContext.setAttribute("PATH", request.getContextPath()); 4 | %> 5 | 6 | 7 | 8 | 9 | 11 | 武林秘籍管理系统 12 | 13 | 14 | 15 |
16 | 17 | <%@include file="/WEB-INF/include/navbar.jsp" %> 18 | 19 | 20 | <%@include file="/WEB-INF/include/sidebar.jsp" %> 21 | 22 | 23 |
24 | 25 |
26 | 返回 27 |

罗汉拳

28 |

罗汉拳站当央,打起来不要慌

29 |
30 |
31 | 32 |
33 | 34 | 35 | 36 | 44 | 45 | -------------------------------------------------------------------------------- /spring-security/src/main/webapp/WEB-INF/views/level1/2.jsp: -------------------------------------------------------------------------------- 1 | <%@ page contentType="text/html;charset=UTF-8" language="java" %> 2 | <% 3 | pageContext.setAttribute("PATH", request.getContextPath()); 4 | %> 5 | 6 | 7 | 8 | 9 | 11 | 武林秘籍管理系统 12 | 13 | 14 | 15 |
16 | 17 | <%@include file="/WEB-INF/include/navbar.jsp" %> 18 | 19 | 20 | <%@include file="/WEB-INF/include/sidebar.jsp" %> 21 | 22 | 23 |
24 | 25 |
26 | 返回 27 |

武当长拳

28 |

长一点在长一点

29 |
30 |
31 | 32 |
33 | 34 | 35 | 36 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /spring-security/src/main/webapp/WEB-INF/views/level1/3.jsp: -------------------------------------------------------------------------------- 1 | <%@ page contentType="text/html;charset=UTF-8" language="java" %> 2 | <% 3 | pageContext.setAttribute("PATH", request.getContextPath()); 4 | %> 5 | 6 | 7 | 8 | 9 | 11 | 武林秘籍管理系统 12 | 13 | 14 | 15 |
16 | 17 | <%@include file="/WEB-INF/include/navbar.jsp" %> 18 | 19 | 20 | <%@include file="/WEB-INF/include/sidebar.jsp" %> 21 | 22 | 23 |
24 | 25 |
26 | 返回 27 |

全真剑法

28 |

全都是真的

29 |
30 |
31 | 32 |
33 | 34 | 35 | 36 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /spring-security/src/main/webapp/WEB-INF/views/level3/2.jsp: -------------------------------------------------------------------------------- 1 | <%@ page contentType="text/html;charset=UTF-8" language="java" %> 2 | <% 3 | pageContext.setAttribute("PATH", request.getContextPath()); 4 | %> 5 | 6 | 7 | 8 | 9 | 11 | 武林秘籍管理系统 12 | 13 | 14 | 15 |
16 | 17 | <%@include file="/WEB-INF/include/navbar.jsp" %> 18 | 19 | 20 | <%@include file="/WEB-INF/include/sidebar.jsp" %> 21 | 22 | 23 |
24 | 25 |
26 | 返回 27 |

龟派气功

28 |

龟-派-气-功-波

29 |
30 |
31 | 32 |
33 | 34 | 35 | 36 | 44 | 45 | -------------------------------------------------------------------------------- /spring-security/src/main/webapp/WEB-INF/views/level3/3.jsp: -------------------------------------------------------------------------------- 1 | <%@ page contentType="text/html;charset=UTF-8" language="java" %> 2 | <% 3 | pageContext.setAttribute("PATH", request.getContextPath()); 4 | %> 5 | 6 | 7 | 8 | 9 | 11 | 武林秘籍管理系统 12 | 13 | 14 | 15 |
16 | 17 | <%@include file="/WEB-INF/include/navbar.jsp" %> 18 | 19 | 20 | <%@include file="/WEB-INF/include/sidebar.jsp" %> 21 | 22 | 23 |
24 | 25 |
26 | 返回 27 |

独孤九剑

28 |

欲练此剑,必先犯贱

29 |
30 |
31 | 32 |
33 | 34 | 35 | 36 | 44 | 45 | -------------------------------------------------------------------------------- /spring-security/src/main/webapp/WEB-INF/views/main.jsp: -------------------------------------------------------------------------------- 1 | <%@ page contentType="text/html;charset=UTF-8" language="java" %> 2 | <% 3 | pageContext.setAttribute("PATH", request.getContextPath()); 4 | %> 5 | 6 | 7 | 8 | 9 | 11 | 武林秘籍管理系统 12 | 13 | 14 | 15 |
16 | 17 | <%@include file="/WEB-INF/include/navbar.jsp" %> 18 | 19 | 20 | <%@include file="/WEB-INF/include/sidebar.jsp" %> 21 | 22 | 23 |
24 | 25 |
26 |

欢迎登陆武林秘籍管理系统

27 |
28 |
29 | 30 |
31 | 32 | 39 | 40 | -------------------------------------------------------------------------------- /spring-security/src/main/webapp/WEB-INF/views/no_auth.jsp: -------------------------------------------------------------------------------- 1 | <%@ page contentType="text/html;charset=UTF-8" language="java" %> 2 | <% 3 | pageContext.setAttribute("PATH", request.getContextPath()); 4 | %> 5 | 6 | 7 | 8 | 9 | 11 | 武林秘籍管理系统 12 | 13 | 14 | 15 |
16 | 17 | <%@include file="/WEB-INF/include/navbar.jsp" %> 18 | 19 | 20 | <%@include file="/WEB-INF/include/sidebar.jsp" %> 21 | 22 | 23 |
24 | 25 |
26 |

非常抱歉!您没有访问这个功能的权限!

27 |

${message }

28 |
29 |
30 | 31 |
32 | 33 | 40 | 41 | -------------------------------------------------------------------------------- /spring-security/src/main/webapp/WEB-INF/web.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | springDispatcherServlet 8 | org.springframework.web.servlet.DispatcherServlet 9 | 10 | contextConfigLocation 11 | classpath:spring-mvc.xml 12 | 13 | 1 14 | 15 | 16 | 17 | springDispatcherServlet 18 | / 19 | 20 | 21 | 22 | 23 | springSecurityFilterChain 24 | org.springframework.web.filter.DelegatingFilterProxy 25 | 26 | 27 | springSecurityFilterChain 28 | /* 29 | 30 | 31 | -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/css/modules/code.css: -------------------------------------------------------------------------------- 1 | /** layui-v2.4.5 MIT License By https://www.layui.com */ 2 | html #layuicss-skincodecss{display:none;position:absolute;width:1989px}.layui-code-h3,.layui-code-view{position:relative;font-size:12px}.layui-code-view{display:block;margin:10px 0;padding:0;border:1px solid #e2e2e2;border-left-width:6px;background-color:#F2F2F2;color:#333;font-family:Courier New}.layui-code-h3{padding:0 10px;height:32px;line-height:32px;border-bottom:1px solid #e2e2e2}.layui-code-h3 a{position:absolute;right:10px;top:0;color:#999}.layui-code-view .layui-code-ol{position:relative;overflow:auto}.layui-code-view .layui-code-ol li{position:relative;margin-left:45px;line-height:20px;padding:0 5px;border-left:1px solid #e2e2e2;list-style-type:decimal-leading-zero;*list-style-type:decimal;background-color:#fff}.layui-code-view pre{margin:0}.layui-code-notepad{border:1px solid #0C0C0C;border-left-color:#3F3F3F;background-color:#0C0C0C;color:#C2BE9E}.layui-code-notepad .layui-code-h3{border-bottom:none}.layui-code-notepad .layui-code-ol li{background-color:#3F3F3F;border-left:none} -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/css/modules/layer/default/icon-ext.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/css/modules/layer/default/icon-ext.png -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/css/modules/layer/default/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/css/modules/layer/default/icon.png -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/css/modules/layer/default/loading-0.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/css/modules/layer/default/loading-0.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/css/modules/layer/default/loading-1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/css/modules/layer/default/loading-1.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/css/modules/layer/default/loading-2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/css/modules/layer/default/loading-2.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/font/iconfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/font/iconfont.eot -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/font/iconfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/font/iconfont.ttf -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/font/iconfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/font/iconfont.woff -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/highlight.js: -------------------------------------------------------------------------------- 1 | /** 2 | * 3 | *
  • 4 | *
    5 | * 罗汉拳 6 | *
    7 | */ 8 | 9 | function HighLight(options){ 10 | this.hrefContent = options.hrefContent; 11 | this._init();//执行初始化后 12 | } 13 | 14 | HighLight.prototype = { 15 | _init:function(){ 16 | var _this = this; 17 | $("dd a[href*='"+_this.hrefContent+"']").addClass("layui-this"); 18 | $("dd a[href*='"+_this.hrefContent+"']").parents("li.layui-nav-item").addClass("layui-nav-itemed"); 19 | } 20 | } -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/0.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/0.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/1.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/10.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/10.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/11.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/11.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/12.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/12.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/13.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/13.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/14.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/14.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/15.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/15.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/16.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/16.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/17.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/17.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/18.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/18.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/19.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/19.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/2.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/20.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/20.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/21.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/21.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/22.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/22.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/23.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/23.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/24.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/24.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/25.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/25.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/26.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/26.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/27.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/27.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/28.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/28.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/29.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/29.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/3.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/3.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/30.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/30.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/31.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/31.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/32.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/32.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/33.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/33.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/34.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/34.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/35.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/35.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/36.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/36.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/37.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/37.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/38.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/38.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/39.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/39.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/4.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/4.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/40.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/40.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/41.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/41.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/42.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/42.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/43.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/43.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/44.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/44.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/45.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/45.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/46.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/46.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/47.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/47.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/48.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/48.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/49.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/49.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/5.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/5.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/50.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/50.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/51.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/51.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/52.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/52.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/53.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/53.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/54.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/54.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/55.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/55.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/56.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/56.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/57.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/57.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/58.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/58.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/59.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/59.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/6.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/6.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/60.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/60.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/61.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/61.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/62.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/62.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/63.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/63.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/64.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/64.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/65.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/65.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/66.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/66.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/67.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/67.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/68.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/68.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/69.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/69.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/7.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/7.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/70.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/70.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/71.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/71.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/8.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/8.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/images/face/9.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/1046762075/admin-parent/16a34f3143f86d7961ebc7edad2dd4a89ed1cf54/spring-security/src/main/webapp/layui/images/face/9.gif -------------------------------------------------------------------------------- /spring-security/src/main/webapp/layui/lay/modules/code.js: -------------------------------------------------------------------------------- 1 | /** layui-v2.4.5 MIT License By https://www.layui.com */ 2 | ;layui.define("jquery",function(e){"use strict";var a=layui.$,l="http://www.layui.com/doc/modules/code.html";e("code",function(e){var t=[];e=e||{},e.elem=a(e.elem||".layui-code"),e.about=!("about"in e)||e.about,e.elem.each(function(){t.push(this)}),layui.each(t.reverse(),function(t,i){var c=a(i),o=c.html();(c.attr("lay-encode")||e.encode)&&(o=o.replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")),c.html('
    1. '+o.replace(/[\r\t\n]+/g,"
    2. ")+"
    "),c.find(">.layui-code-h3")[0]||c.prepend('

    '+(c.attr("lay-title")||e.title||"code")+(e.about?'layui.code':"")+"

    ");var d=c.find(">.layui-code-ol");c.addClass("layui-box layui-code-view"),(c.attr("lay-skin")||e.skin)&&c.addClass("layui-code-"+(c.attr("lay-skin")||e.skin)),(d.find("li").length/100|0)>0&&d.css("margin-left",(d.find("li").length/100|0)+"px"),(c.attr("lay-height")||e.height)&&d.css("max-height",c.attr("lay-height")||e.height)})})}).addcss("modules/code.css","skincodecss"); -------------------------------------------------------------------------------- /spring-session-a/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.firenay.leave 8 | spring-session-a 9 | 1.0-SNAPSHOT 10 | 11 | 12 | org.springframework.boot 13 | spring-boot-starter-parent 14 | 2.2.5.RELEASE 15 | 16 | 17 | 18 | 19 | org.springframework.boot 20 | spring-boot-starter-web 21 | 22 | 23 | 24 | org.springframework.boot 25 | spring-boot-starter-data-redis 26 | 27 | 28 | 29 | org.springframework.session 30 | spring-session-data-redis 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /spring-session-a/src/main/java/com/firenay/leave/SessionAMain.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | /** 7 | *

    Title: SessionAMain

    8 | * Description: 9 | * date:2020/5/19 10:30 10 | */ 11 | @SpringBootApplication 12 | public class SessionAMain { 13 | 14 | public static void main(String[] args) { 15 | SpringApplication.run(SessionAMain.class,args); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /spring-session-a/src/main/java/com/firenay/leave/controller/HelloController.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.controller; 2 | 3 | import org.springframework.web.bind.annotation.RequestMapping; 4 | import org.springframework.web.bind.annotation.RestController; 5 | 6 | import javax.servlet.http.HttpSession; 7 | 8 | /** 9 | *

    Title: HelloController

    10 | * Description: 11 | * date:2020/5/19 10:32 12 | */ 13 | @RestController 14 | public class HelloController { 15 | 16 | @RequestMapping("/test/spring/session") 17 | public String testSession(HttpSession session){ 18 | session.setAttribute("king","firenay"); 19 | return "数据已存入"; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /spring-session-a/src/main/resources/application.yml: -------------------------------------------------------------------------------- 1 | spring: 2 | application: 3 | name: firenay-leave-redis 4 | redis: 5 | host: 120.79.50.189 6 | session: 7 | store-type: redis 8 | server: 9 | port: 5556 -------------------------------------------------------------------------------- /spring-session-b/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 4.0.0 6 | 7 | com.firenay.leave 8 | spring-session-b 9 | 1.0-SNAPSHOT 10 | 11 | org.springframework.boot 12 | spring-boot-starter-parent 13 | 2.2.5.RELEASE 14 | 15 | 16 | 17 | 18 | org.springframework.boot 19 | spring-boot-starter-web 20 | 21 | 22 | 23 | org.springframework.boot 24 | spring-boot-starter-data-redis 25 | 26 | 27 | 28 | org.springframework.session 29 | spring-session-data-redis 30 | 31 | 32 | -------------------------------------------------------------------------------- /spring-session-b/src/main/java/com/firenay/leave/SessionBMain.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | 6 | /** 7 | *

    Title: SessionBMain

    8 | * Description: 9 | * date:2020/5/19 10:31 10 | */ 11 | @SpringBootApplication 12 | public class SessionBMain { 13 | 14 | // http://127.0.0.1:5555/test/spring/session/retrieve 15 | public static void main(String[] args) { 16 | SpringApplication.run(SessionBMain.class,args); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /spring-session-b/src/main/java/com/firenay/leave/controller/HelloController.java: -------------------------------------------------------------------------------- 1 | package com.firenay.leave.controller; 2 | 3 | import org.springframework.web.bind.annotation.RequestMapping; 4 | import org.springframework.web.bind.annotation.RestController; 5 | 6 | import javax.servlet.http.HttpSession; 7 | 8 | /** 9 | *

    Title: HelloController

    10 | * Description: 11 | * date:2020/5/19 10:33 12 | */ 13 | @RestController 14 | public class HelloController { 15 | 16 | @RequestMapping("/test/spring/session/retrieve") 17 | public String testSession(HttpSession session){ 18 | String king = (String) session.getAttribute("king"); 19 | return "去出的数据:" + king; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /spring-session-b/src/main/resources/application.yml: -------------------------------------------------------------------------------- 1 | spring: 2 | application: 3 | name: firenay-leave-redis 4 | redis: 5 | host: 120.79.50.189 6 | session: 7 | store-type: redis 8 | server: 9 | port: 5555 --------------------------------------------------------------------------------