├── .gitignore
├── LICENSE
├── README.md
├── doc
├── nginx
│ ├── admin.conf
│ ├── edu.conf
│ └── teacher.conf
├── 前端后台管理系统
│ └── xueden-cloud-edu-admin
│ │ ├── css
│ │ ├── app.09dca2ae.css
│ │ ├── chunk-07bca000.43e8c784.css
│ │ ├── chunk-133f8338.ddd14869.css
│ │ ├── chunk-14810c45.830a594f.css
│ │ ├── chunk-182de44a.e98482d9.css
│ │ ├── chunk-1a73066c.61403218.css
│ │ ├── chunk-2234fef7.d86cd62d.css
│ │ ├── chunk-264377c5.4747f80b.css
│ │ ├── chunk-2798692e.982760c8.css
│ │ ├── chunk-3fa2143c.f4a2c0c5.css
│ │ ├── chunk-43dde0c8.cef63137.css
│ │ ├── chunk-460c528e.5cf2eb81.css
│ │ ├── chunk-4a644654.6e30dc44.css
│ │ ├── chunk-52bdf396.f365b91b.css
│ │ ├── chunk-5375d6b5.32e17b29.css
│ │ ├── chunk-5a6dface.95f95b9c.css
│ │ ├── chunk-5dec22c4.54405143.css
│ │ ├── chunk-5e9e432a.422b1d88.css
│ │ ├── chunk-607e1540.1f4242a6.css
│ │ ├── chunk-63fb4f50.71e3bd96.css
│ │ ├── chunk-64284902.74aabc1c.css
│ │ ├── chunk-656fa14b.70303a75.css
│ │ ├── chunk-6610c965.e8265c3c.css
│ │ ├── chunk-702ff4d4.6e30dc44.css
│ │ ├── chunk-7437450e.10eb8cfc.css
│ │ ├── chunk-745c4089.eb107ab5.css
│ │ ├── chunk-775655f0.38e5afc7.css
│ │ ├── chunk-77e2587c.f1f9c1b3.css
│ │ ├── chunk-7ed469f7.42d6bf17.css
│ │ ├── chunk-834dd6ce.0ae2a6be.css
│ │ ├── chunk-8e1c7356.861ccd7d.css
│ │ ├── chunk-92adf284.f2c2d7b1.css
│ │ ├── chunk-b2a51b1e.e8265c3c.css
│ │ ├── chunk-bf89aaa4.eabaa9a6.css
│ │ ├── chunk-c42d4f82.da84f3ab.css
│ │ ├── chunk-c479c0ca.21a0ba3f.css
│ │ ├── chunk-d0cc896c.2919cc93.css
│ │ ├── chunk-e056c190.8d0d9159.css
│ │ ├── chunk-f60b3d72.08e361da.css
│ │ └── chunk-vendors.24bf1742.css
│ │ ├── favicon.ico
│ │ ├── fonts
│ │ ├── element-icons.535877f5.woff
│ │ └── element-icons.732389de.ttf
│ │ ├── img
│ │ ├── bg-smooth.1d1806df.jpg
│ │ └── logo.7e4f5e27.png
│ │ ├── index.html
│ │ └── js
│ │ ├── app.e498c09a.js
│ │ ├── chunk-078252e7.63a7221b.js
│ │ ├── chunk-07bca000.80ce9de6.js
│ │ ├── chunk-12632d27.c58a8e93.js
│ │ ├── chunk-133f8338.13eb5578.js
│ │ ├── chunk-1382ce1e.8cb9bb3a.js
│ │ ├── chunk-14810c45.cc9c547f.js
│ │ ├── chunk-14b71b92.786f27cf.js
│ │ ├── chunk-177d9fac.6dc5971e.js
│ │ ├── chunk-182de44a.45f10b5a.js
│ │ ├── chunk-1a73066c.012f451b.js
│ │ ├── chunk-1ab4da0b.792f64ee.js
│ │ ├── chunk-1e9617f6.b2bdb6dd.js
│ │ ├── chunk-2234fef7.1a5100c0.js
│ │ ├── chunk-244fdf40.973c4855.js
│ │ ├── chunk-256211ba.da2ca441.js
│ │ ├── chunk-264377c5.98e19983.js
│ │ ├── chunk-2798692e.ddabb23b.js
│ │ ├── chunk-2d0a3fee.22befa06.js
│ │ ├── chunk-2d0a4972.a123f8e8.js
│ │ ├── chunk-2d0ab821.d4c6344f.js
│ │ ├── chunk-2d0b1db8.0d6ce394.js
│ │ ├── chunk-2d0b26e8.3953c6e4.js
│ │ ├── chunk-2d0b5d08.733e709a.js
│ │ ├── chunk-2d0b8e3a.e21f18c2.js
│ │ ├── chunk-2d0b8ed3.8fe047f6.js
│ │ ├── chunk-2d0ba4d6.034b7536.js
│ │ ├── chunk-2d0bd90f.cdba9fbc.js
│ │ ├── chunk-2d0c0652.f04e4f28.js
│ │ ├── chunk-2d0c4d6b.eab4917a.js
│ │ ├── chunk-2d0c550f.6601ad8c.js
│ │ ├── chunk-2d0c57c3.af781cb1.js
│ │ ├── chunk-2d0c7a89.2231ba5e.js
│ │ ├── chunk-2d0c8276.723605d9.js
│ │ ├── chunk-2d0c82c4.39724830.js
│ │ ├── chunk-2d0c8978.b3f0d00c.js
│ │ ├── chunk-2d0c9206.06e21001.js
│ │ ├── chunk-2d0c95b9.0688d727.js
│ │ ├── chunk-2d0cb71e.ff382f53.js
│ │ ├── chunk-2d0cbea3.bf9162fe.js
│ │ ├── chunk-2d0cbec1.d2257762.js
│ │ ├── chunk-2d0cfe28.488ceba2.js
│ │ ├── chunk-2d0d3e23.6e6da70b.js
│ │ ├── chunk-2d0d6ef7.1a30bc6d.js
│ │ ├── chunk-2d0d8366.6a27867f.js
│ │ ├── chunk-2d0db226.d46de77b.js
│ │ ├── chunk-2d0dd7a1.72ce540a.js
│ │ ├── chunk-2d0dddfe.cff6e0d6.js
│ │ ├── chunk-2d0e22f7.3a906ba1.js
│ │ ├── chunk-2d0e28c3.d4cf4641.js
│ │ ├── chunk-2d0e4f94.ec3e2d53.js
│ │ ├── chunk-2d0e55e1.0a5f5ce6.js
│ │ ├── chunk-2d0e95b3.a4fb594a.js
│ │ ├── chunk-2d0e9bee.be56a093.js
│ │ ├── chunk-2d0efc9d.1556fe49.js
│ │ ├── chunk-2d207d82.e33ddedd.js
│ │ ├── chunk-2d2080c9.828f14ef.js
│ │ ├── chunk-2d20901b.a3f1f2f0.js
│ │ ├── chunk-2d20fe5a.bdc3e98b.js
│ │ ├── chunk-2d213b08.2d2076ee.js
│ │ ├── chunk-2d218436.b49d8f4e.js
│ │ ├── chunk-2d21a3a5.c55e3a4d.js
│ │ ├── chunk-2d21ad1c.b62f54de.js
│ │ ├── chunk-2d21b869.7590cf6a.js
│ │ ├── chunk-2d21d54d.59369fb5.js
│ │ ├── chunk-2d21e6e8.65b3dd58.js
│ │ ├── chunk-2d22275c.ce95b399.js
│ │ ├── chunk-2d22638b.ba53f9e3.js
│ │ ├── chunk-2d229093.d428eaff.js
│ │ ├── chunk-2d229b7a.219780c6.js
│ │ ├── chunk-2d22ba0e.544b0a90.js
│ │ ├── chunk-2d22bf72.aa2795cc.js
│ │ ├── chunk-2d22c11e.fc3df1bd.js
│ │ ├── chunk-2d22c2e2.9e2247ec.js
│ │ ├── chunk-2d22cc87.736a0699.js
│ │ ├── chunk-2d22d433.3de9fb00.js
│ │ ├── chunk-2d2304e4.aeeca2d8.js
│ │ ├── chunk-372e6861.2e459356.js
│ │ ├── chunk-3ac2c4c4.8ae6a855.js
│ │ ├── chunk-3fa2143c.2e157f73.js
│ │ ├── chunk-43dde0c8.5c1c0a0a.js
│ │ ├── chunk-460c528e.c5e9b514.js
│ │ ├── chunk-4855b539.1373af7e.js
│ │ ├── chunk-4a644654.20931e4f.js
│ │ ├── chunk-500fb6d0.4965dd81.js
│ │ ├── chunk-52bdf396.6b72c5fe.js
│ │ ├── chunk-5375d6b5.e0247dd6.js
│ │ ├── chunk-54f85716.9fe94d3d.js
│ │ ├── chunk-5a6dface.05889b79.js
│ │ ├── chunk-5dec22c4.76a62870.js
│ │ ├── chunk-5e9e432a.848cc80d.js
│ │ ├── chunk-5f22b4c4.4f15a550.js
│ │ ├── chunk-607e1540.f4b46c5c.js
│ │ ├── chunk-63fb4f50.78cb3919.js
│ │ ├── chunk-64284902.59f0fecb.js
│ │ ├── chunk-656fa14b.842fda10.js
│ │ ├── chunk-6610c965.d42bdda1.js
│ │ ├── chunk-67a85b8d.e8e7ee03.js
│ │ ├── chunk-68cd69fe.e2f19452.js
│ │ ├── chunk-6adcd484.53778077.js
│ │ ├── chunk-6f7137dc.e5efd0dd.js
│ │ ├── chunk-702ff4d4.dc9af472.js
│ │ ├── chunk-7437450e.5d00524d.js
│ │ ├── chunk-745c4089.fd3f70fa.js
│ │ ├── chunk-77237d83.5c1326b0.js
│ │ ├── chunk-773e122f.9f26ca2b.js
│ │ ├── chunk-775655f0.fe405529.js
│ │ ├── chunk-77e2587c.2b4f0f49.js
│ │ ├── chunk-794149e8.2986a9d7.js
│ │ ├── chunk-7ed469f7.dac1dc10.js
│ │ ├── chunk-7f24c078.c58d4b52.js
│ │ ├── chunk-834dd6ce.140a14bc.js
│ │ ├── chunk-8e1c7356.c912caa8.js
│ │ ├── chunk-92251ad4.19f50b74.js
│ │ ├── chunk-92adf284.30158000.js
│ │ ├── chunk-9ff6f03c.a582e2bc.js
│ │ ├── chunk-a7f45f56.0d6e6563.js
│ │ ├── chunk-b2a51b1e.49075576.js
│ │ ├── chunk-bf89aaa4.46b8c006.js
│ │ ├── chunk-c1e06d68.df19e689.js
│ │ ├── chunk-c42d4f82.b34c5a4c.js
│ │ ├── chunk-c479c0ca.3aa1dc02.js
│ │ ├── chunk-d0cc896c.1e0f3567.js
│ │ ├── chunk-e056c190.eb0df91d.js
│ │ ├── chunk-e19cdcac.80783001.js
│ │ ├── chunk-f60b3d72.f0581826.js
│ │ └── chunk-vendors.7c624a47.js
├── 前端讲师平台
│ └── xueden-edu-teacher-pro
│ │ ├── edu-teacher
│ │ ├── css
│ │ │ ├── .gz
│ │ │ ├── 10.172de88c.css
│ │ │ ├── 11.a6b7698f.css
│ │ │ ├── 14.43e39e3e.css
│ │ │ ├── 15.f590130b.css
│ │ │ ├── 2.e9308cd6.css
│ │ │ ├── 7.e9fdd9e7.css
│ │ │ ├── app.e8d94234.css
│ │ │ ├── chunk-element.aef67138.css
│ │ │ └── chunk-libs.902ebb66.css
│ │ ├── fonts
│ │ │ ├── element-icons.535877f5.woff
│ │ │ └── element-icons.732389de.ttf
│ │ ├── img
│ │ │ ├── 404.a57b6f31.png
│ │ │ ├── 404_cloud.0f4bc32b.png
│ │ │ ├── login-bg.0899ffa6.jpg
│ │ │ ├── logo.7e4f5e27.png
│ │ │ └── success.5344f959.png
│ │ └── js
│ │ │ ├── .gz
│ │ │ ├── 1.4a377ecd.js
│ │ │ ├── 10.5bc02a57.js
│ │ │ ├── 11.466855c4.js
│ │ │ ├── 12.4cbe10b7.js
│ │ │ ├── 13.ede93f3a.js
│ │ │ ├── 14.8f83924d.js
│ │ │ ├── 15.1dcf5a5e.js
│ │ │ ├── 16.5502413c.js
│ │ │ ├── 17.fcb5d0ca.js
│ │ │ ├── 2.c9f059c1.js
│ │ │ ├── 6.4869d41d.js
│ │ │ ├── 7.e30d69a6.js
│ │ │ ├── 8.96090d72.js
│ │ │ ├── 8.96090d72.js.LICENSE.txt
│ │ │ ├── 9.63f96336.js
│ │ │ ├── 9.63f96336.js.LICENSE.txt
│ │ │ ├── app.d142b729.js
│ │ │ ├── chunk-element.c8180296.js
│ │ │ ├── chunk-element.c8180296.js.LICENSE.txt
│ │ │ ├── chunk-libs.d351e971.js
│ │ │ └── chunk-libs.d351e971.js.LICENSE.txt
│ │ ├── favicon.ico
│ │ ├── index.html
│ │ └── logo.png
├── 前端门户网站
│ └── xueden-cloud-edu-vue-portal
│ │ ├── favicon.ico
│ │ ├── index.html
│ │ └── static
│ │ ├── css
│ │ ├── chunk-17b6ca1c.e7784500.css
│ │ ├── chunk-239de5fa.0a6bb45e.css
│ │ ├── chunk-23fe4d98.142ea4b3.css
│ │ ├── chunk-2b677ceb.5013a2a1.css
│ │ ├── chunk-4aa2c92c.10fd7b3d.css
│ │ ├── chunk-4d7d9e6f.66e39468.css
│ │ ├── chunk-4f451181.d89eeac3.css
│ │ ├── chunk-54e65d12.6543776e.css
│ │ ├── chunk-561705dd.fc9b470b.css
│ │ ├── chunk-5f3b8532.6543776e.css
│ │ ├── chunk-64999c0e.ead1f4a9.css
│ │ ├── chunk-8dc88c32.69f2e108.css
│ │ ├── chunk-95bd9908.71b2fde8.css
│ │ ├── chunk-dc6a6eb2.0dec0cf9.css
│ │ └── chunk-vendors.767f701c.css
│ │ ├── fonts
│ │ ├── element-icons.535877f5.woff
│ │ └── element-icons.732389de.ttf
│ │ ├── img
│ │ ├── alipaylogo.a2b643ed.png
│ │ ├── center_bg.37ad7aaa.png
│ │ ├── d_bg.49a0195e.png
│ │ ├── d_bg2.00e39d11.png
│ │ ├── details_banner.363a142a.png
│ │ ├── list_banner.8b77796f.png
│ │ ├── list_bg.11718f49.png
│ │ ├── logo.7e4f5e27.png
│ │ ├── myqq.ac1db295.jpg
│ │ ├── video_bg.906601d0.png
│ │ └── wxpaylogo.7663fd15.png
│ │ └── js
│ │ ├── app.370376ab.js
│ │ ├── chunk-17b6ca1c.6c4c1c9f.js
│ │ ├── chunk-19210000.189107e3.js
│ │ ├── chunk-239de5fa.118261a1.js
│ │ ├── chunk-23fe4d98.e3951b65.js
│ │ ├── chunk-2b677ceb.76a8a041.js
│ │ ├── chunk-4aa2c92c.9b642109.js
│ │ ├── chunk-4d7d9e6f.cb2741d9.js
│ │ ├── chunk-4f451181.6bc10f1d.js
│ │ ├── chunk-54e65d12.61877a12.js
│ │ ├── chunk-561705dd.dfe88a7e.js
│ │ ├── chunk-5f3b8532.45597033.js
│ │ ├── chunk-64999c0e.b4342aa7.js
│ │ ├── chunk-8dc88c32.5dd0bf94.js
│ │ ├── chunk-95bd9908.1a253f92.js
│ │ ├── chunk-dc6a6eb2.c0b2787f.js
│ │ └── chunk-vendors.cd53ac87.js
└── 数据库脚本
│ ├── moyu_cloud_edu.sql
│ ├── moyu_cloud_vue3.sql
│ └── nacos_xueden.sql
├── docker-compose.yml
├── docker环境搭建.md
├── images
├── 1-1.jpg
├── 1-2.jpg
├── 1-3.jpg
├── 1329491-20180301101804629-1054069840-1635641102445.png
├── 1329491-20180301101804629-1054069840.png
├── 1329491-20180301101828137-2115610170-1635641167031.png
├── 1329491-20180301101828137-2115610170-1635641235406.png
├── 1329491-20180301101828137-2115610170.png
├── 1329491-20180301101926085-1579993277-1635641258260.png
├── 1329491-20180301101926085-1579993277.png
├── 2-1.jpg
├── 2-2.jpg
├── 2-3.jpg
├── 2-4.jpg
├── 2-5.jpg
├── 3-1.jpg
├── 3-2.jpg
├── 3-3.jpg
├── 3-4.jpg
├── 3-5.jpg
├── 3-6.jpg
├── 3-7.jpg
├── 4-1.jpg
├── 4-2.jpg
├── 4-3.jpg
├── 4-4.jpg
├── 4-5.jpg
├── 4-6.jpg
├── image-20211101132225460.png
├── image-20211101132608141.png
├── image-20211101165005447.png
├── image-20211101165340550.png
├── image-20211101170546696.png
├── image-20211101200500651.png
├── image-20211101200635313.png
├── image-20211101200737174.png
├── image-20211101203746134.png
├── image-20211101203900908.png
├── image-20211101204846642.png
├── image-20211102182456846.png
├── image-20211102182544912.png
├── image-20211102182600009.png
├── logo.7e4f5e27.png
├── v1.jpg
├── v2-1635593960636.jpg
├── v2.jpg
├── v3-1635593969463.jpg
├── v3.jpg
├── wx.jpg
└── zfb.jpg
├── moyu-api
├── moyu-api-edu
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ └── java
│ │ └── cn
│ │ └── xueden
│ │ └── edu
│ │ └── api
│ │ ├── RemoteMemberService.java
│ │ └── factory
│ │ └── RemoteMemberFallbackFactory.java
├── moyu-api-system
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ └── java
│ │ └── cn
│ │ └── xueden
│ │ └── system
│ │ └── api
│ │ ├── RemoteLogService.java
│ │ ├── RemoteUserService.java
│ │ ├── factory
│ │ ├── RemoteLogFallbackFactory.java
│ │ └── RemoteUserFallbackFactory.java
│ │ └── model
│ │ └── LoginUser.java
└── pom.xml
├── moyu-auth
├── Dockerfile
├── pom.xml
└── src
│ └── main
│ ├── java
│ └── cn
│ │ └── xueden
│ │ └── auth
│ │ ├── MoYuAuthApplication.java
│ │ ├── controller
│ │ └── TokenController.java
│ │ ├── form
│ │ ├── LoginBody.java
│ │ └── LoginMemberBody.java
│ │ └── service
│ │ ├── EduMemberLoginService.java
│ │ └── SysLoginService.java
│ └── resources
│ ├── banner.txt
│ └── bootstrap.yml
├── moyu-common
├── moyu-common-alipay
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ ├── java
│ │ └── cn
│ │ │ └── xueden
│ │ │ └── alipay
│ │ │ ├── config
│ │ │ ├── AliPayConfig.java
│ │ │ └── InitConfig.java
│ │ │ ├── service
│ │ │ └── AliPayService.java
│ │ │ └── utils
│ │ │ └── StringUtils.java
│ │ └── resources
│ │ └── META-INF
│ │ └── spring.factories
├── moyu-common-alivod
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ ├── java
│ │ └── cn
│ │ │ └── xueden
│ │ │ ├── alivod
│ │ │ ├── PutObjectProgressListener.java
│ │ │ └── utils
│ │ │ │ ├── AliyunVODSDKUtils.java
│ │ │ │ └── ConstantPropertiesUtil.java
│ │ │ ├── bss
│ │ │ ├── AliQueryBill.java
│ │ │ └── AliQueryOrders.java
│ │ │ └── sms
│ │ │ └── SendSms.java
│ │ └── resources
│ │ └── META-INF
│ │ └── spring.factories
├── moyu-common-core
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ └── java
│ │ └── cn
│ │ └── xueden
│ │ └── common
│ │ └── core
│ │ ├── constant
│ │ ├── CacheConstants.java
│ │ ├── Constants.java
│ │ ├── HttpStatus.java
│ │ ├── ServiceNameConstants.java
│ │ └── UserConstants.java
│ │ ├── domain
│ │ └── R.java
│ │ ├── edu
│ │ ├── domain
│ │ │ ├── EduBanner.java
│ │ │ ├── EduCashOutDetails.java
│ │ │ ├── EduChapter.java
│ │ │ ├── EduCourse.java
│ │ │ ├── EduDailyReport.java
│ │ │ ├── EduDealMoney.java
│ │ │ ├── EduEnvironmenParam.java
│ │ │ ├── EduIncomeDetails.java
│ │ │ ├── EduKeyword.java
│ │ │ ├── EduMember.java
│ │ │ ├── EduMemberBuyCourse.java
│ │ │ ├── EduMemberBuyVip.java
│ │ │ ├── EduSubject.java
│ │ │ ├── EduTeacher.java
│ │ │ ├── EduVideo.java
│ │ │ ├── EduVideoMember.java
│ │ │ ├── EduVipType.java
│ │ │ └── EduVipTypeSubject.java
│ │ ├── dto
│ │ │ └── CategoryDto.java
│ │ ├── enums
│ │ │ └── PayStatus.java
│ │ └── vo
│ │ │ ├── EduCashOutDetailsVO.java
│ │ │ ├── EduChapterTreeNodeVO.java
│ │ │ ├── EduChapterVO.java
│ │ │ ├── EduCourseVO.java
│ │ │ ├── EduIncomeDetailsVO.java
│ │ │ ├── EduMemberBuyCourseVO.java
│ │ │ ├── EduMemberVO.java
│ │ │ ├── EduSubjectTreeNodeVO.java
│ │ │ ├── EduSubjectVO.java
│ │ │ ├── EduTeacherVO.java
│ │ │ ├── EduVideoMemberVO.java
│ │ │ ├── EduVideoVO.java
│ │ │ ├── EduVipTypeSubjectVO.java
│ │ │ ├── EduVipTypeVO.java
│ │ │ ├── MyCourseVO.java
│ │ │ ├── PageVO.java
│ │ │ ├── PassWordVO.java
│ │ │ ├── RegisterMemberVO.java
│ │ │ └── SubjectTransferItemVO.java
│ │ ├── enums
│ │ └── UserStatus.java
│ │ ├── exception
│ │ ├── BaseException.java
│ │ ├── CaptchaException.java
│ │ ├── CustomException.java
│ │ ├── DemoModeException.java
│ │ ├── PreAuthorizeException.java
│ │ └── UtilException.java
│ │ ├── text
│ │ ├── Convert.java
│ │ └── UUID.java
│ │ ├── utils
│ │ ├── AddressUtil.java
│ │ ├── Digests.java
│ │ ├── EduChapterTreeBuilder.java
│ │ ├── EduSubjectTreeBuilder.java
│ │ ├── Encodes.java
│ │ ├── GeetestLib.java
│ │ ├── IPUtil.java
│ │ ├── IdUtils.java
│ │ ├── JWTUtils.java
│ │ ├── LayerData.java
│ │ ├── ListPageUtils.java
│ │ ├── RestResponse.java
│ │ ├── ServletUtils.java
│ │ ├── StringUtils.java
│ │ ├── ToolUtil.java
│ │ ├── XudenStringUtils.java
│ │ └── sign
│ │ │ └── Base64.java
│ │ └── web
│ │ └── domain
│ │ ├── AjaxResult.java
│ │ ├── BaseEntity.java
│ │ ├── DataEntity.java
│ │ ├── SysLog.java
│ │ ├── SysMenu.java
│ │ ├── SysRole.java
│ │ ├── SysUser.java
│ │ └── TreeEntity.java
├── moyu-common-elasticsearch
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ └── java
│ │ └── cn
│ │ └── xueden
│ │ └── search
│ │ └── domain
│ │ └── CourseESItem.java
├── moyu-common-log
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ ├── java
│ │ └── cn
│ │ │ └── xueden
│ │ │ └── common
│ │ │ └── log
│ │ │ ├── annotation
│ │ │ ├── XudenOtherSystemLog.java
│ │ │ └── XudenSysLog.java
│ │ │ └── aspect
│ │ │ ├── OtherWebLogAspect.java
│ │ │ └── WebLogAspect.java
│ │ └── resources
│ │ └── META-INF
│ │ └── spring.factories
├── moyu-common-mybatis-plus
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ ├── java
│ │ └── cn
│ │ │ └── xueden
│ │ │ └── mybatis
│ │ │ └── config
│ │ │ ├── MybatisPlusConfig.java
│ │ │ ├── SpringUtil.java
│ │ │ └── SysMetaObjectHandler.java
│ │ └── resources
│ │ └── META-INF
│ │ └── spring.factories
├── moyu-common-redis
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ ├── java
│ │ └── cn
│ │ │ └── xueden
│ │ │ └── common
│ │ │ └── redis
│ │ │ ├── configure
│ │ │ ├── FastJson2JsonRedisSerializer.java
│ │ │ └── RedisConfig.java
│ │ │ ├── service
│ │ │ └── RedisService.java
│ │ │ └── utils
│ │ │ └── CacheUtils.java
│ │ └── resources
│ │ └── META-INF
│ │ └── spring.factories
├── moyu-common-security
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ ├── java
│ │ └── cn
│ │ │ └── xueden
│ │ │ └── common
│ │ │ └── security
│ │ │ ├── annotation
│ │ │ ├── EnableCustomConfig.java
│ │ │ ├── EnableMoYuFeignClients.java
│ │ │ └── PreAuthorize.java
│ │ │ ├── aspect
│ │ │ └── PreAuthorizeAspect.java
│ │ │ ├── config
│ │ │ └── ApplicationConfig.java
│ │ │ ├── handler
│ │ │ └── GlobalExceptionHandler.java
│ │ │ ├── service
│ │ │ └── TokenService.java
│ │ │ └── utils
│ │ │ └── SecurityUtils.java
│ │ └── resources
│ │ └── META-INF
│ │ └── spring.factories
├── moyu-common-swagger
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ └── java
│ │ └── cn
│ │ └── xueden
│ │ └── common
│ │ └── swagger
│ │ ├── annotation
│ │ └── EnableCustomSwagger2.java
│ │ └── config
│ │ ├── SwaggerAutoConfiguration.java
│ │ └── SwaggerProperties.java
├── moyu-common-wechatpay
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ ├── java
│ │ └── cn
│ │ │ └── xueden
│ │ │ └── wechat
│ │ │ ├── config
│ │ │ └── WechatConfig.java
│ │ │ ├── dto
│ │ │ ├── AmountDto.java
│ │ │ └── WxOrderDto.java
│ │ │ ├── service
│ │ │ └── WxPayService.java
│ │ │ └── utils
│ │ │ └── WxPayUtil.java
│ │ └── resources
│ │ └── META-INF
│ │ └── spring.factories
└── pom.xml
├── moyu-gateway
├── Dockerfile
├── pom.xml
└── src
│ └── main
│ ├── java
│ └── cn
│ │ └── xueden
│ │ └── gateway
│ │ ├── MoYuGatewayApplication.java
│ │ ├── config
│ │ ├── CaptchaConfig.java
│ │ ├── GatewayConfig.java
│ │ ├── GeetestConfig.java
│ │ ├── GeetestLib.java
│ │ ├── KaptchaTextCreator.java
│ │ ├── RouterFunctionConfiguration.java
│ │ └── properties
│ │ │ └── IgnoreWhiteProperties.java
│ │ ├── filter
│ │ ├── AuthFilter.java
│ │ ├── CacheRequestFilter.java
│ │ └── ValidateCodeFilter.java
│ │ ├── handler
│ │ ├── GeetestHandler.java
│ │ ├── SentinelFallbackHandler.java
│ │ └── ValidateCodeHandler.java
│ │ ├── response
│ │ └── ErrorResponse.java
│ │ └── service
│ │ ├── IValidateCodeService.java
│ │ ├── TestService.java
│ │ └── impl
│ │ └── ValidateCodeServiceImpl.java
│ └── resources
│ ├── banner.txt
│ └── bootstrap.yml
├── moyu-modules
├── moyu-edu
│ ├── Dockerfile
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ ├── java
│ │ └── cn
│ │ │ └── xueden
│ │ │ └── edu
│ │ │ ├── MoYuEduApplication.java
│ │ │ ├── alivod
│ │ │ └── AliVodCategoryService.java
│ │ │ ├── config
│ │ │ ├── GeetestConfig.java
│ │ │ └── WebSocketConfig.java
│ │ │ ├── controller
│ │ │ ├── EduChapterController.java
│ │ │ ├── EduCourseController.java
│ │ │ ├── EduEnvironmenParamController.java
│ │ │ ├── EduMemberController.java
│ │ │ ├── EduSubjectController.java
│ │ │ ├── EduTeacherController.java
│ │ │ ├── EduVideoController.java
│ │ │ ├── EduVipTypeController.java
│ │ │ ├── FileUploadController.java
│ │ │ ├── VodController.java
│ │ │ ├── front
│ │ │ │ ├── EduDetailsController.java
│ │ │ │ ├── EduIndexController.java
│ │ │ │ ├── EduKeywordController.java
│ │ │ │ ├── EduListController.java
│ │ │ │ ├── EduMemberCenterController.java
│ │ │ │ ├── EduPayController.java
│ │ │ │ ├── EduPlayVideoController.java
│ │ │ │ ├── EduSearchController.java
│ │ │ │ └── RegisterMemberController.java
│ │ │ └── teacher
│ │ │ │ ├── EduTeacherCashOutDetailsController.java
│ │ │ │ ├── EduTeacherCouseController.java
│ │ │ │ ├── EduTeacherIncomeDetailsController.java
│ │ │ │ └── EduTeacherIndexController.java
│ │ │ ├── converter
│ │ │ ├── EduChapterConverter.java
│ │ │ ├── EduCourseConverter.java
│ │ │ ├── EduIncomeDetailsConverter.java
│ │ │ ├── EduMemberBuyCourseConverter.java
│ │ │ ├── EduMemberConverter.java
│ │ │ ├── EduSubjectConverter.java
│ │ │ ├── EduVideoConverter.java
│ │ │ ├── EduVideoMemberConverter.java
│ │ │ └── EduVipTypeConverter.java
│ │ │ ├── dao
│ │ │ ├── EduBannerDao.java
│ │ │ ├── EduCashOutDetailsDao.java
│ │ │ ├── EduChapterDao.java
│ │ │ ├── EduCourseDao.java
│ │ │ ├── EduCourseElasticsearchDao.java
│ │ │ ├── EduDailyReportDao.java
│ │ │ ├── EduDealMoneyDao.java
│ │ │ ├── EduEnvironmenParamDao.java
│ │ │ ├── EduIncomeDetailsDao.java
│ │ │ ├── EduKeywordDao.java
│ │ │ ├── EduMemberBuyCourseDao.java
│ │ │ ├── EduMemberBuyVipDao.java
│ │ │ ├── EduMemberDao.java
│ │ │ ├── EduSubjectDao.java
│ │ │ ├── EduTeacherDao.java
│ │ │ ├── EduVideoDao.java
│ │ │ ├── EduVideoMemberDao.java
│ │ │ ├── EduVipTypeDao.java
│ │ │ └── EduVipTypeSubjectDao.java
│ │ │ ├── dto
│ │ │ ├── GeetestDto.java
│ │ │ ├── PayTypeDto.java
│ │ │ ├── WxCiphertextDto.java
│ │ │ ├── WxResourceDto.java
│ │ │ └── WxResultDto.java
│ │ │ ├── service
│ │ │ ├── IEduBannerService.java
│ │ │ ├── IEduCashOutDetailsService.java
│ │ │ ├── IEduChapterService.java
│ │ │ ├── IEduCourseService.java
│ │ │ ├── IEduDailyReportService.java
│ │ │ ├── IEduDealMoneyService.java
│ │ │ ├── IEduEnvironmenParamService.java
│ │ │ ├── IEduIncomeDetailsService.java
│ │ │ ├── IEduKeywordService.java
│ │ │ ├── IEduMemberBuyCourseService.java
│ │ │ ├── IEduMemberBuyVipService.java
│ │ │ ├── IEduMemberService.java
│ │ │ ├── IEduSearchService.java
│ │ │ ├── IEduSubjectService.java
│ │ │ ├── IEduTeacherService.java
│ │ │ ├── IEduVideoMemberService.java
│ │ │ ├── IEduVideoService.java
│ │ │ ├── IEduVipTypeService.java
│ │ │ ├── IEduVipTypeSubjectService.java
│ │ │ ├── IStatisticsService.java
│ │ │ ├── IVodService.java
│ │ │ └── impl
│ │ │ │ ├── EduBannerServiceImpl.java
│ │ │ │ ├── EduCashOutDetailsServiceImpl.java
│ │ │ │ ├── EduChapterServiceImpl.java
│ │ │ │ ├── EduCourseServiceImpl.java
│ │ │ │ ├── EduDailyReportServiceImpl.java
│ │ │ │ ├── EduDealMoneyServiceImpl.java
│ │ │ │ ├── EduEnvironmenParamServiceImpl.java
│ │ │ │ ├── EduIncomeDetailsServiceImpl.java
│ │ │ │ ├── EduKeywordServiceImpl.java
│ │ │ │ ├── EduMemberBuyCourseServiceImpl.java
│ │ │ │ ├── EduMemberBuyVipServiceImpl.java
│ │ │ │ ├── EduMemberServiceImpl.java
│ │ │ │ ├── EduSearchServiceImpl.java
│ │ │ │ ├── EduSubjectServiceImpl.java
│ │ │ │ ├── EduTeacherServiceImpl.java
│ │ │ │ ├── EduVideoMemberServiceImpl.java
│ │ │ │ ├── EduVideoServiceImpl.java
│ │ │ │ ├── EduVipTypeServiceImpl.java
│ │ │ │ ├── EduVipTypeSubjectServiceImpl.java
│ │ │ │ ├── StatisticsServiceImpl.java
│ │ │ │ └── VodServiceImpl.java
│ │ │ ├── task
│ │ │ └── DailyScheduledTask.java
│ │ │ └── websocket
│ │ │ └── WebSocketServer.java
│ │ └── resources
│ │ ├── banner.txt
│ │ ├── bootstrap.yml
│ │ └── ip2region
│ │ └── ip2region.db
├── moyu-system
│ ├── Dockerfile
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ ├── java
│ │ └── cn
│ │ │ └── xueden
│ │ │ └── system
│ │ │ ├── MoYuSystemApplication.java
│ │ │ ├── controller
│ │ │ ├── BaseController.java
│ │ │ ├── LogController.java
│ │ │ ├── MenuController.java
│ │ │ ├── RoleController.java
│ │ │ └── UserConteroller.java
│ │ │ ├── dao
│ │ │ ├── LogDao.java
│ │ │ ├── MenuDao.java
│ │ │ ├── RoleDao.java
│ │ │ └── UserDao.java
│ │ │ ├── entity
│ │ │ ├── Log.java
│ │ │ └── vo
│ │ │ │ ├── ShowMenu.java
│ │ │ │ ├── TreeMenu.java
│ │ │ │ └── ZtreeVO.java
│ │ │ └── service
│ │ │ ├── LogService.java
│ │ │ ├── MenuService.java
│ │ │ ├── RoleService.java
│ │ │ ├── UserService.java
│ │ │ └── impl
│ │ │ ├── LogServiceImpl.java
│ │ │ ├── MenuServiceImpl.java
│ │ │ ├── RoleServiceImpl.java
│ │ │ └── UserServiceImpl.java
│ │ └── resources
│ │ ├── banner.txt
│ │ ├── bootstrap.yml
│ │ ├── ip2region
│ │ └── ip2region.db
│ │ ├── log
│ │ └── logback.xml
│ │ └── mapper
│ │ ├── LogMapper.xml
│ │ ├── MenuMapper.xml
│ │ ├── RoleMapper.xml
│ │ └── UserMapper.xml
└── pom.xml
├── pom.xml
├── 开发手册.md
└── 微服务docker部署手册.md
/.gitignore:
--------------------------------------------------------------------------------
1 | target/
2 | pom.xml.tag
3 | pom.xml.releaseBackup
4 | pom.xml.versionsBackup
5 | pom.xml.next
6 | release.properties
7 | dependency-reduced-pom.xml
8 | buildNumber.properties
9 | .mvn/timing.properties
10 | # https://github.com/takari/maven-wrapper#usage-without-binary-jar
11 | .mvn/wrapper/maven-wrapper.jar
12 | ### IntelliJ IDEA ###
13 | .idea
14 | *.iws
15 | *.iml
16 | *.ipr
17 | ######################################################################
18 | # Others
19 | *.log
20 | *.xml.versionsBackup
21 |
22 | !*/build/*.java
23 | !*/build/*.html
24 | !*/build/*.xml
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/css/chunk-07bca000.43e8c784.css:
--------------------------------------------------------------------------------
1 | .main-conent-screen[data-v-3d5f0381]{display:flex;flex-direction:column;height:calc(100% - 98px);border-radius:4px;background-color:#fff}.main-conent-screen .screen-header[data-v-3d5f0381]{padding:20px;min-height:33px}.main-conent-screen .screen-footer[data-v-3d5f0381]{padding:20px;min-height:32px;text-align:right}.main-conent-screen .screen-conent[data-v-3d5f0381]{flex:1;padding:0 20px;overflow:hidden}.main-conent-screen .screen-padding[data-v-3d5f0381]{padding-top:20px}[data-v-e662cfc2] .el-input-number .el-input__inner{text-align:left}.content[data-v-6cb3dcae]{padding:20px;position:absolute;top:56px;left:0;right:0;bottom:55px;overflow:auto}
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/css/chunk-133f8338.ddd14869.css:
--------------------------------------------------------------------------------
1 | .homeBoxCard[data-v-72b9a3c3]{margin-bottom:24px}.homeBoxCard[data-v-72b9a3c3] .el-card__header{padding-left:12px;padding-right:12px}.homeBoxCard[data-v-72b9a3c3] .el-card__body{padding:12px;font-size:14px;line-height:1.5715}.homeBoxCard[data-v-72b9a3c3] .el-divider{margin:8px 0}.homeBoxCard .num[data-v-72b9a3c3]{font-size:30px;color:#515a6e}.homeBoxCard .height40[data-v-72b9a3c3]{height:40px}
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/css/chunk-14810c45.830a594f.css:
--------------------------------------------------------------------------------
1 | .main-conent-screen[data-v-3d5f0381]{display:flex;flex-direction:column;height:calc(100% - 98px);border-radius:4px;background-color:#fff}.main-conent-screen .screen-header[data-v-3d5f0381]{padding:20px;min-height:33px}.main-conent-screen .screen-footer[data-v-3d5f0381]{padding:20px;min-height:32px;text-align:right}.main-conent-screen .screen-conent[data-v-3d5f0381]{flex:1;padding:0 20px;overflow:hidden}.main-conent-screen .screen-padding[data-v-3d5f0381]{padding-top:20px}.content[data-v-2cf5d7b1]{padding:20px;position:absolute;top:56px;left:0;right:0;bottom:55px;overflow:auto}
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/css/chunk-182de44a.e98482d9.css:
--------------------------------------------------------------------------------
1 | .content[data-v-62232b2a]{padding:20px;position:absolute;top:56px;left:0;right:0;bottom:55px;overflow:auto}
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/css/chunk-1a73066c.61403218.css:
--------------------------------------------------------------------------------
1 | .avatar-uploader .el-upload[data-v-61e23c11]{border:1px dashed #d9d9d9;border-radius:6px;cursor:pointer;position:relative;overflow:hidden}.avatar-uploader .el-upload[data-v-61e23c11]:hover{border-color:#409eff}.avatar-uploader-icon[data-v-61e23c11]{font-size:28px;color:#8c939d;width:178px;height:178px;line-height:178px;text-align:center}.avatar[data-v-61e23c11]{width:178px;height:178px;display:block}
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/css/chunk-2234fef7.d86cd62d.css:
--------------------------------------------------------------------------------
1 | .main-conent-screen[data-v-3d5f0381]{display:flex;flex-direction:column;height:calc(100% - 98px);border-radius:4px;background-color:#fff}.main-conent-screen .screen-header[data-v-3d5f0381]{padding:20px;min-height:33px}.main-conent-screen .screen-footer[data-v-3d5f0381]{padding:20px;min-height:32px;text-align:right}.main-conent-screen .screen-conent[data-v-3d5f0381]{flex:1;padding:0 20px;overflow:hidden}.main-conent-screen .screen-padding[data-v-3d5f0381]{padding-top:20px}.content[data-v-62232b2a]{padding:20px;position:absolute;top:56px;left:0;right:0;bottom:55px;overflow:auto}.avatar[data-v-c7967f00]{width:32px;height:32px;overflow:hidden;border-radius:50%;-webkit-border-radius:50%;-moz-border-radius:50%}
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/css/chunk-264377c5.4747f80b.css:
--------------------------------------------------------------------------------
1 | .form-basic-width100.el-input__inner{width:100%}
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/css/chunk-2798692e.982760c8.css:
--------------------------------------------------------------------------------
1 | .document-editor[data-v-0f9088c6]{border:1px solid var(--ck-color-base-border);border-radius:var(--ck-border-radius);display:flex;flex-flow:column nowrap}.document-editor[data-v-0f9088c6] .ck.ck-toolbar{z-index:1;box-shadow:0 0 5px rgba(0,0,0,.2);border-bottom:1px solid var(--ck-color-toolbar-border);border:0;border-radius:0}.document-editor[data-v-0f9088c6] .ck-content{min-height:300px;line-height:normal}
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/css/chunk-3fa2143c.f4a2c0c5.css:
--------------------------------------------------------------------------------
1 | .main-conent-screen[data-v-3d5f0381]{display:flex;flex-direction:column;height:calc(100% - 98px);border-radius:4px;background-color:#fff}.main-conent-screen .screen-header[data-v-3d5f0381]{padding:20px;min-height:33px}.main-conent-screen .screen-footer[data-v-3d5f0381]{padding:20px;min-height:32px;text-align:right}.main-conent-screen .screen-conent[data-v-3d5f0381]{flex:1;padding:0 20px;overflow:hidden}.main-conent-screen .screen-padding[data-v-3d5f0381]{padding-top:20px}.content[data-v-793b470a]{padding:20px;position:absolute;top:56px;left:0;right:0;bottom:55px;overflow:auto}
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/css/chunk-43dde0c8.cef63137.css:
--------------------------------------------------------------------------------
1 | .main-conent-screen[data-v-3d5f0381]{display:flex;flex-direction:column;height:calc(100% - 98px);border-radius:4px;background-color:#fff}.main-conent-screen .screen-header[data-v-3d5f0381]{padding:20px;min-height:33px}.main-conent-screen .screen-footer[data-v-3d5f0381]{padding:20px;min-height:32px;text-align:right}.main-conent-screen .screen-conent[data-v-3d5f0381]{flex:1;padding:0 20px;overflow:hidden}.main-conent-screen .screen-padding[data-v-3d5f0381]{padding-top:20px}.content[data-v-b368c214]{padding:20px;position:absolute;top:56px;left:0;right:0;bottom:55px;overflow:auto}
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/css/chunk-460c528e.5cf2eb81.css:
--------------------------------------------------------------------------------
1 | .status[data-v-31509e91]{padding-left:20px}.status[data-v-31509e91] .el-badge__content.is-fixed.is-dot{top:12px;left:-8px}
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/css/chunk-4a644654.6e30dc44.css:
--------------------------------------------------------------------------------
1 | .icon-body[data-v-442be226]{width:100%;padding:10px}.icon-body .icon-list[data-v-442be226]{height:200px;overflow-y:scroll}.icon-body .icon-list div[data-v-442be226]{height:30px;line-height:30px;margin-bottom:-5px;cursor:pointer;width:33%;float:left}.icon-body .icon-list span[data-v-442be226]{display:inline-block;vertical-align:-.15em;fill:currentColor;overflow:hidden;font-size:14px;padding-left:6px}
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/css/chunk-52bdf396.f365b91b.css:
--------------------------------------------------------------------------------
1 | .homeBoxCard[data-v-e56ab0f2]{margin-bottom:24px}.homeBoxCard[data-v-e56ab0f2] .el-card__header{padding-left:12px;padding-right:12px}.homeBoxCard[data-v-e56ab0f2] .el-card__body{padding:12px;font-size:14px;line-height:1.5715}.homeBoxCard[data-v-e56ab0f2] .el-divider{margin:8px 0}.homeBoxCard .num[data-v-e56ab0f2]{font-size:30px;color:#515a6e}.homeBoxCard .height40[data-v-e56ab0f2]{height:40px}.homeBoxCard .UserText[data-v-e56ab0f2]{padding-top:20px}.homeBoxCard .color19be6b[data-v-e56ab0f2]{color:#19be6b}.homeBoxCard .colored4014[data-v-e56ab0f2]{color:#ed4014}
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/css/chunk-5375d6b5.32e17b29.css:
--------------------------------------------------------------------------------
1 | .avatar-uploader .el-upload[data-v-f5c032fa]{border:1px dashed #d9d9d9;border-radius:6px;cursor:pointer;position:relative;overflow:hidden}.avatar-uploader .el-upload[data-v-f5c032fa]:hover{border-color:#409eff}.avatar-uploader-icon[data-v-f5c032fa]{font-size:28px;color:#8c939d;width:178px;height:178px;line-height:178px;text-align:center}.avatar[data-v-f5c032fa]{width:178px;height:178px;display:block}
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/css/chunk-5a6dface.95f95b9c.css:
--------------------------------------------------------------------------------
1 | .homeBoxCard[data-v-321cb074]{margin-bottom:24px}.homeBoxCard[data-v-321cb074] .el-card__header{padding-left:12px;padding-right:12px}.homeBoxCard[data-v-321cb074] .el-card__body{padding:12px;font-size:14px;line-height:1.5715}.homeBoxCard[data-v-321cb074] .el-divider{margin:8px 0}.homeBoxCard .num[data-v-321cb074]{font-size:30px;color:#515a6e}.homeBoxCard .height440[data-v-321cb074]{height:440px}
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/css/chunk-5dec22c4.54405143.css:
--------------------------------------------------------------------------------
1 | .content[data-v-6cb3dcae]{padding:20px;position:absolute;top:56px;left:0;right:0;bottom:55px;overflow:auto}
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/css/chunk-5e9e432a.422b1d88.css:
--------------------------------------------------------------------------------
1 | .content[data-v-b1897434]{padding:20px;position:absolute;top:56px;left:0;right:0;bottom:55px;overflow:auto}
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/css/chunk-607e1540.1f4242a6.css:
--------------------------------------------------------------------------------
1 | .main[data-v-0b22bba4]{flex:none;width:248px;padding:36px;margin:0 auto;border-radius:4px;background-color:hsla(0,0%,100%,.2)}.main .title[data-v-0b22bba4]{font-size:28px;margin-top:0;margin-bottom:30px;text-align:center;color:#fff}.main .submit[data-v-0b22bba4]{width:100%}
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/css/chunk-63fb4f50.71e3bd96.css:
--------------------------------------------------------------------------------
1 | .content[data-v-b368c214]{padding:20px;position:absolute;top:56px;left:0;right:0;bottom:55px;overflow:auto}
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/css/chunk-64284902.74aabc1c.css:
--------------------------------------------------------------------------------
1 | .content[data-v-2cf5d7b1]{padding:20px;position:absolute;top:56px;left:0;right:0;bottom:55px;overflow:auto}
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/css/chunk-6610c965.e8265c3c.css:
--------------------------------------------------------------------------------
1 | .main-conent-screen[data-v-3d5f0381]{display:flex;flex-direction:column;height:calc(100% - 98px);border-radius:4px;background-color:#fff}.main-conent-screen .screen-header[data-v-3d5f0381]{padding:20px;min-height:33px}.main-conent-screen .screen-footer[data-v-3d5f0381]{padding:20px;min-height:32px;text-align:right}.main-conent-screen .screen-conent[data-v-3d5f0381]{flex:1;padding:0 20px;overflow:hidden}.main-conent-screen .screen-padding[data-v-3d5f0381]{padding-top:20px}
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/css/chunk-702ff4d4.6e30dc44.css:
--------------------------------------------------------------------------------
1 | .icon-body[data-v-442be226]{width:100%;padding:10px}.icon-body .icon-list[data-v-442be226]{height:200px;overflow-y:scroll}.icon-body .icon-list div[data-v-442be226]{height:30px;line-height:30px;margin-bottom:-5px;cursor:pointer;width:33%;float:left}.icon-body .icon-list span[data-v-442be226]{display:inline-block;vertical-align:-.15em;fill:currentColor;overflow:hidden;font-size:14px;padding-left:6px}
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/css/chunk-7437450e.10eb8cfc.css:
--------------------------------------------------------------------------------
1 | .list[data-v-a3260c0c]{padding:10px 20px;width:100px;height:100px;float:left;text-align:center;font-size:30px;overflow:hidden}.list span[data-v-a3260c0c]{display:block;font-size:16px;margin-top:10px}
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/css/chunk-745c4089.eb107ab5.css:
--------------------------------------------------------------------------------
1 | .main-conent-detail[data-v-c742c6f2]{box-sizing:border-box}.main-conent-detail .main-conent-detail-title[data-v-c742c6f2]{margin-bottom:16px;color:#303133;font-size:16px;font-weight:700}.main-conent-detail .main-conent-detail-content[data-v-c742c6f2],.main-conent-detail .main-conent-detail-lable[data-v-c742c6f2]{display:table-cell;padding-bottom:16px;line-height:20px;font-size:14px}.main-conent-detail .main-conent-detail-lable[data-v-c742c6f2]{white-space:nowrap}.main-conent-detail .main-conent-detail-content[data-v-c742c6f2]{width:100%;word-wrap:break-word;word-break:break-all}.status[data-v-c742c6f2]{padding-left:20px}.status[data-v-c742c6f2] .el-badge__content.is-fixed.is-dot{top:12px;left:-8px}
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/css/chunk-77e2587c.f1f9c1b3.css:
--------------------------------------------------------------------------------
1 | .demo-table-expand[data-v-3dfddf9a]{font-size:0}.demo-table-expand label[data-v-3dfddf9a]{width:70px;color:#99a9bf}.demo-table-expand .el-form-item[data-v-3dfddf9a]{margin-right:0;margin-bottom:0;width:100%}.demo-table-expand .el-form-item__content[data-v-3dfddf9a]{font-size:12px}.demo-table-expand .el-form-item__label[data-v-3dfddf9a]{font-weight:700!important}
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/css/chunk-7ed469f7.42d6bf17.css:
--------------------------------------------------------------------------------
1 | .content[data-v-3c315f06]{padding:20px;position:absolute;top:56px;left:0;right:0;bottom:55px;overflow:auto}
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/css/chunk-834dd6ce.0ae2a6be.css:
--------------------------------------------------------------------------------
1 | .homeBoxCard[data-v-4b0654fc]{margin-bottom:24px}.homeBoxCard[data-v-4b0654fc] .el-card__header{padding-left:12px;padding-right:12px}.homeBoxCard[data-v-4b0654fc] .el-card__body{padding:12px;font-size:14px;line-height:1.5715}.homeBoxCard[data-v-4b0654fc] .el-divider{margin:8px 0}.homeBoxCard .num[data-v-4b0654fc]{font-size:30px;color:#515a6e}.homeBoxCard .height40[data-v-4b0654fc]{height:40px}
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/css/chunk-8e1c7356.861ccd7d.css:
--------------------------------------------------------------------------------
1 | .content[data-v-793b470a]{padding:20px;position:absolute;top:56px;left:0;right:0;bottom:55px;overflow:auto}
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/css/chunk-92adf284.f2c2d7b1.css:
--------------------------------------------------------------------------------
1 | .homeBoxCard[data-v-7790454f]{margin-bottom:24px}.homeBoxCard[data-v-7790454f] .el-card__header{padding-left:12px;padding-right:12px}.homeBoxCard[data-v-7790454f] .el-card__body{padding:12px;font-size:14px;line-height:1.5715}.homeBoxCard[data-v-7790454f] .el-divider{margin:8px 0}.homeBoxCard .num[data-v-7790454f]{font-size:30px;color:#515a6e}.homeBoxCard .height40[data-v-7790454f]{height:40px}
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/css/chunk-b2a51b1e.e8265c3c.css:
--------------------------------------------------------------------------------
1 | .main-conent-screen[data-v-3d5f0381]{display:flex;flex-direction:column;height:calc(100% - 98px);border-radius:4px;background-color:#fff}.main-conent-screen .screen-header[data-v-3d5f0381]{padding:20px;min-height:33px}.main-conent-screen .screen-footer[data-v-3d5f0381]{padding:20px;min-height:32px;text-align:right}.main-conent-screen .screen-conent[data-v-3d5f0381]{flex:1;padding:0 20px;overflow:hidden}.main-conent-screen .screen-padding[data-v-3d5f0381]{padding-top:20px}
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/css/chunk-bf89aaa4.eabaa9a6.css:
--------------------------------------------------------------------------------
1 | .main-conent-detail-content[data-v-21dec710],.main-conent-detail-lable[data-v-21dec710]{display:table-cell;padding-bottom:16px;line-height:20px;font-size:14px}.main-conent-detail-lable[data-v-21dec710]{white-space:nowrap}.main-conent-detail-content[data-v-21dec710]{width:100%;word-wrap:break-word;word-break:break-all}.status[data-v-21dec710]{padding-left:20px}.status[data-v-21dec710] .el-badge__content.is-fixed.is-dot{top:12px;left:-8px}
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/css/chunk-c42d4f82.da84f3ab.css:
--------------------------------------------------------------------------------
1 | .icon-body[data-v-442be226]{width:100%;padding:10px}.icon-body .icon-list[data-v-442be226]{height:200px;overflow-y:scroll}.icon-body .icon-list div[data-v-442be226]{height:30px;line-height:30px;margin-bottom:-5px;cursor:pointer;width:33%;float:left}.icon-body .icon-list span[data-v-442be226]{display:inline-block;vertical-align:-.15em;fill:currentColor;overflow:hidden;font-size:14px;padding-left:6px}[data-v-e662cfc2] .el-input-number .el-input__inner{text-align:left}
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/css/chunk-d0cc896c.2919cc93.css:
--------------------------------------------------------------------------------
1 | .main[data-v-1f9501f2]{flex:none;width:248px;padding:36px;margin:0 auto;border-radius:4px;background-color:hsla(0,0%,100%,.2)}.main .title[data-v-1f9501f2]{font-size:28px;margin-top:0;margin-bottom:30px;text-align:center;color:#986a46}.main .submit[data-v-1f9501f2]{width:100%}.main .login-code[data-v-1f9501f2]{width:44%;display:inline-block;height:45px;float:right}.main .login-code img[data-v-1f9501f2]{cursor:pointer;vertical-align:middle;border:1px solid #e6e6e6;height:36px;width:100%}
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/css/chunk-e056c190.8d0d9159.css:
--------------------------------------------------------------------------------
1 | .homeBoxCard[data-v-165aea54]{margin-bottom:24px}.homeBoxCard[data-v-165aea54] .el-card__header{padding-left:12px;padding-right:12px}.homeBoxCard[data-v-165aea54] .el-card__body{padding:12px;font-size:14px;line-height:1.5715}.homeBoxCard[data-v-165aea54] .el-divider{margin:8px 0}.homeBoxCard .num[data-v-165aea54]{font-size:30px;color:#515a6e}.homeBoxCard .height40[data-v-165aea54]{height:40px}
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/css/chunk-f60b3d72.08e361da.css:
--------------------------------------------------------------------------------
1 | .content[data-v-8a7c2936]{padding:20px;position:absolute;top:56px;left:0;right:0;bottom:55px;overflow:auto}
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/doc/前端后台管理系统/xueden-cloud-edu-admin/favicon.ico
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/fonts/element-icons.535877f5.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/doc/前端后台管理系统/xueden-cloud-edu-admin/fonts/element-icons.535877f5.woff
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/fonts/element-icons.732389de.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/doc/前端后台管理系统/xueden-cloud-edu-admin/fonts/element-icons.732389de.ttf
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/img/bg-smooth.1d1806df.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/doc/前端后台管理系统/xueden-cloud-edu-admin/img/bg-smooth.1d1806df.jpg
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/img/logo.7e4f5e27.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/doc/前端后台管理系统/xueden-cloud-edu-admin/img/logo.7e4f5e27.png
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d0a3fee.22befa06.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0a3fee"],{"050c":function(e,d){throw new Error("Module build failed (from ./node_modules/ts-loader/index.js):\nError: Debug Failure. Output generation failed\n at Object.transpileModule (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\typescript\\lib\\typescript.js:123670:29)\n at getTranspilationEmit (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:318:74)\n at successLoader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:66:15)\n at Object.loader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:22:12)")}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d0b1db8.0d6ce394.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0b1db8"],{2246:function(e,d){throw new Error("Module build failed (from ./node_modules/thread-loader/dist/cjs.js):\nThread Loader (Worker 0)\nDebug Failure. Output generation failed\n at PoolWorker.fromErrorObj (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\thread-loader\\dist\\WorkerPool.js:262:12)\n at G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\thread-loader\\dist\\WorkerPool.js:204:29\n at mapSeries (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\neo-async\\async.js:3625:14)\n at Object.transpileModule (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\typescript\\lib\\typescript.js:123670:29)\n at getTranspilationEmit (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:318:74)\n at successLoader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:66:15)\n at Object.loader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:22:12)")}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d0b26e8.3953c6e4.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0b26e8"],{"23a2":function(e,d){throw new Error("Module build failed (from ./node_modules/ts-loader/index.js):\nError: Debug Failure. Output generation failed\n at Object.transpileModule (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\typescript\\lib\\typescript.js:123670:29)\n at getTranspilationEmit (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:318:74)\n at successLoader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:66:15)\n at Object.loader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:22:12)")}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d0b5d08.733e709a.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0b5d08"],{"1b01":function(e,t,n){"use strict";n.r(t);var o=n("7a23");function l(e,t,n,l,a,u){var c=Object(o["resolveComponent"])("el-option"),r=Object(o["resolveComponent"])("el-select");return Object(o["openBlock"])(),Object(o["createBlock"])(r,{modelValue:e.value,"onUpdate:modelValue":t[1]||(t[1]=function(t){return e.value=t}),clearable:""},{default:Object(o["withCtx"])((function(){return[Object(o["createVNode"])(c,{label:"头部",value:"header"}),Object(o["createVNode"])(c,{label:"底部",value:"footer"})]})),_:1},8,["modelValue"])}var a=Object(o["defineComponent"])({name:"TypeSelect",props:{modelValue:{type:String,default:""}},setup:function(e,t){var n=t.emit,l=Object(o["computed"])({get:function(){return e.modelValue},set:function(e){n("update:modelValue",e||"")}});return{value:l}}});a.render=l;t["default"]=a}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d0b8ed3.8fe047f6.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0b8ed3"],{3187:function(e,t,c){"use strict";c.r(t);var n=c("7a23"),o={class:"indexlayout-main-conent"},a=Object(n["createTextVNode"])(" 此页面只有 test 与 admin 账号可以查看。 ");function r(e,t){var c=Object(n["resolveComponent"])("el-card");return Object(n["openBlock"])(),Object(n["createBlock"])("div",o,[Object(n["createVNode"])(c,{shadow:"never",class:"cus-card"},{default:Object(n["withCtx"])((function(){return[a]})),_:1})])}const d={};d.render=r;t["default"]=d}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d0ba4d6.034b7536.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0ba4d6"],{3740:function(e,t,n){"use strict";n.r(t);var o=n("7a23");function l(e,t,n,l,a,u){var c=Object(o["resolveComponent"])("el-option"),r=Object(o["resolveComponent"])("el-select");return Object(o["openBlock"])(),Object(o["createBlock"])(r,{modelValue:e.value,"onUpdate:modelValue":t[1]||(t[1]=function(t){return e.value=t}),clearable:""},{default:Object(o["withCtx"])((function(){return[Object(o["createVNode"])(c,{label:"头部",value:"header"}),Object(o["createVNode"])(c,{label:"底部",value:"footer"})]})),_:1},8,["modelValue"])}var a=Object(o["defineComponent"])({name:"TypeSelect",props:{modelValue:{type:String,default:""}},setup:function(e,t){var n=t.emit,l=Object(o["computed"])({get:function(){return e.modelValue},set:function(e){n("update:modelValue",e||"")}});return{value:l}}});a.render=l;t["default"]=a}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d0bd90f.cdba9fbc.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0bd90f"],{"2d18":function(e,d){throw new Error("Module build failed (from ./node_modules/ts-loader/index.js):\nError: Debug Failure. Output generation failed\n at Object.transpileModule (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\typescript\\lib\\typescript.js:123670:29)\n at getTranspilationEmit (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:318:74)\n at successLoader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:66:15)\n at Object.loader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:22:12)")}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d0c0652.f04e4f28.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0c0652"],{4231:function(e,d){throw new Error("Module build failed (from ./node_modules/thread-loader/dist/cjs.js):\nThread Loader (Worker 0)\nDebug Failure. Output generation failed\n at PoolWorker.fromErrorObj (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\thread-loader\\dist\\WorkerPool.js:262:12)\n at G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\thread-loader\\dist\\WorkerPool.js:204:29\n at mapSeries (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\neo-async\\async.js:3625:14)\n at Object.transpileModule (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\typescript\\lib\\typescript.js:123670:29)\n at getTranspilationEmit (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:318:74)\n at successLoader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:66:15)\n at Object.loader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:22:12)")}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d0c550f.6601ad8c.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0c550f"],{"3f28":function(e,t,n){"use strict";n.r(t);var c=n("7a23"),o={class:"indexlayout-main-conent"},r=Object(c["createTextVNode"])(" Editor: "),a=Object(c["createTextVNode"])(" Content: ");function d(e,t,n,d,i,u){var l=Object(c["resolveComponent"])("CKEditor"),s=Object(c["resolveComponent"])("el-card");return Object(c["openBlock"])(),Object(c["createBlock"])("div",o,[Object(c["createVNode"])(s,{shadow:"never",class:"cus-card"},{header:Object(c["withCtx"])((function(){return[r]})),default:Object(c["withCtx"])((function(){return[Object(c["createVNode"])(l,{modelValue:e.val,"onUpdate:modelValue":t[1]||(t[1]=function(t){return e.val=t})},null,8,["modelValue"])]})),_:1}),Object(c["createVNode"])(s,{shadow:"never",class:"cus-card",style:{"margin-top":"10px"}},{header:Object(c["withCtx"])((function(){return[a]})),default:Object(c["withCtx"])((function(){return[Object(c["createVNode"])("div",{innerHTML:e.val},null,8,["innerHTML"])]})),_:1})])}var i=n("3280"),u=Object(c["defineComponent"])({name:"ComponentEditorCKE",components:{CKEditor:i["a"]},setup:function(){var e=Object(c["ref"])("
This is Editor
");return{val:e}}});u.render=d;t["default"]=u}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d0c7a89.2231ba5e.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0c7a89"],{"520f":function(e,t,n){"use strict";n.r(t);var o=n("7a23");function l(e,t,n,l,a,u){var c=Object(o["resolveComponent"])("el-option"),r=Object(o["resolveComponent"])("el-select");return Object(o["openBlock"])(),Object(o["createBlock"])(r,{modelValue:e.value,"onUpdate:modelValue":t[1]||(t[1]=function(t){return e.value=t}),clearable:""},{default:Object(o["withCtx"])((function(){return[Object(o["createVNode"])(c,{label:"头部",value:"header"}),Object(o["createVNode"])(c,{label:"底部",value:"footer"})]})),_:1},8,["modelValue"])}var a=Object(o["defineComponent"])({name:"TypeSelect",props:{modelValue:{type:String,default:""}},setup:function(e,t){var n=t.emit,l=Object(o["computed"])({get:function(){return e.modelValue},set:function(e){n("update:modelValue",e||"")}});return{value:l}}});a.render=l;t["default"]=a}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d0c8276.723605d9.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0c8276"],{5456:function(e,d){throw new Error("Module build failed (from ./node_modules/thread-loader/dist/cjs.js):\nThread Loader (Worker 0)\nDebug Failure. Output generation failed\n at PoolWorker.fromErrorObj (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\thread-loader\\dist\\WorkerPool.js:262:12)\n at G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\thread-loader\\dist\\WorkerPool.js:204:29\n at mapSeries (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\neo-async\\async.js:3625:14)\n at Object.transpileModule (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\typescript\\lib\\typescript.js:123670:29)\n at getTranspilationEmit (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:318:74)\n at successLoader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:66:15)\n at Object.loader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:22:12)")}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d0c82c4.39724830.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0c82c4"],{"546e":function(e,d){throw new Error("Module build failed (from ./node_modules/thread-loader/dist/cjs.js):\nThread Loader (Worker 2)\nDebug Failure. Output generation failed\n at PoolWorker.fromErrorObj (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\thread-loader\\dist\\WorkerPool.js:262:12)\n at G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\thread-loader\\dist\\WorkerPool.js:204:29\n at mapSeries (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\neo-async\\async.js:3625:14)\n at Object.transpileModule (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\typescript\\lib\\typescript.js:123670:29)\n at getTranspilationEmit (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:318:74)\n at successLoader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:66:15)\n at Object.loader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:22:12)")}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d0c9206.06e21001.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0c9206"],{"588e":function(e,t,n){"use strict";n.r(t);var o=n("7a23");function l(e,t,n,l,a,u){var c=Object(o["resolveComponent"])("el-option"),r=Object(o["resolveComponent"])("el-select");return Object(o["openBlock"])(),Object(o["createBlock"])(r,{modelValue:e.value,"onUpdate:modelValue":t[1]||(t[1]=function(t){return e.value=t}),clearable:""},{default:Object(o["withCtx"])((function(){return[Object(o["createVNode"])(c,{label:"头部",value:"header"}),Object(o["createVNode"])(c,{label:"底部",value:"footer"})]})),_:1},8,["modelValue"])}var a=Object(o["defineComponent"])({name:"TypeSelect",props:{modelValue:{type:String,default:""}},setup:function(e,t){var n=t.emit,l=Object(o["computed"])({get:function(){return e.modelValue},set:function(e){n("update:modelValue",e||"")}});return{value:l}}});a.render=l;t["default"]=a}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d0cb71e.ff382f53.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0cb71e"],{"4a61":function(e,d){throw new Error("Module build failed (from ./node_modules/thread-loader/dist/cjs.js):\nThread Loader (Worker 1)\nDebug Failure. Output generation failed\n at PoolWorker.fromErrorObj (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\thread-loader\\dist\\WorkerPool.js:262:12)\n at G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\thread-loader\\dist\\WorkerPool.js:204:29\n at mapSeries (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\neo-async\\async.js:3625:14)\n at Object.transpileModule (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\typescript\\lib\\typescript.js:123670:29)\n at getTranspilationEmit (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:318:74)\n at successLoader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:66:15)\n at Object.loader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:22:12)")}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d0cbea3.bf9162fe.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0cbea3"],{"4c64":function(e,t,n){"use strict";n.r(t);var o=n("7a23");function l(e,t,n,l,a,u){var c=Object(o["resolveComponent"])("el-option"),r=Object(o["resolveComponent"])("el-select");return Object(o["openBlock"])(),Object(o["createBlock"])(r,{modelValue:e.value,"onUpdate:modelValue":t[1]||(t[1]=function(t){return e.value=t}),clearable:""},{default:Object(o["withCtx"])((function(){return[Object(o["createVNode"])(c,{label:"头部",value:"header"}),Object(o["createVNode"])(c,{label:"底部",value:"footer"})]})),_:1},8,["modelValue"])}var a=Object(o["defineComponent"])({name:"TypeSelect",props:{modelValue:{type:String,default:""}},setup:function(e,t){var n=t.emit,l=Object(o["computed"])({get:function(){return e.modelValue},set:function(e){n("update:modelValue",e||"")}});return{value:l}}});a.render=l;t["default"]=a}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d0cbec1.d2257762.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0cbec1"],{"4c73":function(e,d){throw new Error("Module build failed (from ./node_modules/thread-loader/dist/cjs.js):\nThread Loader (Worker 0)\nDebug Failure. Output generation failed\n at PoolWorker.fromErrorObj (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\thread-loader\\dist\\WorkerPool.js:262:12)\n at G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\thread-loader\\dist\\WorkerPool.js:204:29\n at mapSeries (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\neo-async\\async.js:3625:14)\n at Object.transpileModule (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\typescript\\lib\\typescript.js:123670:29)\n at getTranspilationEmit (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:318:74)\n at successLoader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:66:15)\n at Object.loader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:22:12)")}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d0cfe28.488ceba2.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0cfe28"],{"662d":function(e,d){throw new Error("Module build failed (from ./node_modules/thread-loader/dist/cjs.js):\nThread Loader (Worker 2)\nDebug Failure. Output generation failed\n at PoolWorker.fromErrorObj (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\thread-loader\\dist\\WorkerPool.js:262:12)\n at G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\thread-loader\\dist\\WorkerPool.js:204:29\n at mapSeries (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\neo-async\\async.js:3625:14)\n at Object.transpileModule (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\typescript\\lib\\typescript.js:123670:29)\n at getTranspilationEmit (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:318:74)\n at successLoader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:66:15)\n at Object.loader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:22:12)")}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d0d3e23.6e6da70b.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0d3e23"],{"5f51":function(e,d){throw new Error("Module build failed (from ./node_modules/thread-loader/dist/cjs.js):\nThread Loader (Worker 0)\nDebug Failure. Output generation failed\n at PoolWorker.fromErrorObj (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\thread-loader\\dist\\WorkerPool.js:262:12)\n at G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\thread-loader\\dist\\WorkerPool.js:204:29\n at mapSeries (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\neo-async\\async.js:3625:14)\n at Object.transpileModule (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\typescript\\lib\\typescript.js:123670:29)\n at getTranspilationEmit (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:318:74)\n at successLoader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:66:15)\n at Object.loader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:22:12)")}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d0d6ef7.1a30bc6d.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0d6ef7"],{7558:function(e,t,c){"use strict";c.r(t);var n=c("7a23"),o={class:"indexlayout-main-conent"},r=Object(n["createVNode"])("i",{class:"el-icon-top",style:{fontSize:"35px",color:"#FF0000"}},null,-1);function a(e,t,c,a,s,u){var d=Object(n["resolveComponent"])("el-card");return Object(n["openBlock"])(),Object(n["createBlock"])("div",o,[Object(n["createVNode"])(d,{shadow:"never",class:"cus-card"},{default:Object(n["withCtx"])((function(){return[r,Object(n["createTextVNode"])(" "+Object(n["toDisplayString"])(e.t("page.custom-breadcrumbs.msg")),1)]})),_:1})])}var s=c("47e2"),u=Object(n["defineComponent"])({setup:function(){var e=Object(s["b"])(),t=e.t;return{t:t}}});u.render=a;t["default"]=u}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d0db226.d46de77b.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0db226"],{"6f22":function(e,d){throw new Error("Module build failed (from ./node_modules/ts-loader/index.js):\nError: Debug Failure. Output generation failed\n at Object.transpileModule (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\typescript\\lib\\typescript.js:123670:29)\n at getTranspilationEmit (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:318:74)\n at successLoader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:66:15)\n at Object.loader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:22:12)")}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d0dd7a1.72ce540a.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0dd7a1"],{"820a":function(e,d){throw new Error("Module build failed (from ./node_modules/thread-loader/dist/cjs.js):\nThread Loader (Worker 1)\nDebug Failure. Output generation failed\n at PoolWorker.fromErrorObj (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\thread-loader\\dist\\WorkerPool.js:262:12)\n at G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\thread-loader\\dist\\WorkerPool.js:204:29\n at mapSeries (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\neo-async\\async.js:3625:14)\n at Object.transpileModule (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\typescript\\lib\\typescript.js:123670:29)\n at getTranspilationEmit (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:318:74)\n at successLoader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:66:15)\n at Object.loader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:22:12)")}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d0dddfe.cff6e0d6.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0dddfe"],{"82f4":function(e,d){throw new Error("Module build failed (from ./node_modules/thread-loader/dist/cjs.js):\nThread Loader (Worker 2)\nDebug Failure. Output generation failed\n at PoolWorker.fromErrorObj (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\thread-loader\\dist\\WorkerPool.js:262:12)\n at G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\thread-loader\\dist\\WorkerPool.js:204:29\n at mapSeries (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\neo-async\\async.js:3625:14)\n at Object.transpileModule (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\typescript\\lib\\typescript.js:123670:29)\n at getTranspilationEmit (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:318:74)\n at successLoader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:66:15)\n at Object.loader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:22:12)")}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d0e4f94.ec3e2d53.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0e4f94"],{9304:function(e,d){throw new Error("Module build failed (from ./node_modules/thread-loader/dist/cjs.js):\nThread Loader (Worker 0)\nDebug Failure. Output generation failed\n at PoolWorker.fromErrorObj (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\thread-loader\\dist\\WorkerPool.js:262:12)\n at G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\thread-loader\\dist\\WorkerPool.js:204:29\n at mapSeries (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\neo-async\\async.js:3625:14)\n at Object.transpileModule (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\typescript\\lib\\typescript.js:123670:29)\n at getTranspilationEmit (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:318:74)\n at successLoader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:66:15)\n at Object.loader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:22:12)")}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d0e55e1.0a5f5ce6.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0e55e1"],{"93d5":function(e,d){throw new Error("Module build failed (from ./node_modules/thread-loader/dist/cjs.js):\nThread Loader (Worker 1)\nDebug Failure. Output generation failed\n at PoolWorker.fromErrorObj (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\thread-loader\\dist\\WorkerPool.js:262:12)\n at G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\thread-loader\\dist\\WorkerPool.js:204:29\n at mapSeries (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\neo-async\\async.js:3625:14)\n at Object.transpileModule (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\typescript\\lib\\typescript.js:123670:29)\n at getTranspilationEmit (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:318:74)\n at successLoader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:66:15)\n at Object.loader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:22:12)")}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d0e9bee.be56a093.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0e9bee"],{"8f9c":function(e,t,n){"use strict";n.r(t);var o=n("7a23");function l(e,t,n,l,a,u){var c=Object(o["resolveComponent"])("el-option"),r=Object(o["resolveComponent"])("el-select");return Object(o["openBlock"])(),Object(o["createBlock"])(r,{modelValue:e.value,"onUpdate:modelValue":t[1]||(t[1]=function(t){return e.value=t}),clearable:""},{default:Object(o["withCtx"])((function(){return[Object(o["createVNode"])(c,{label:"头部",value:"header"}),Object(o["createVNode"])(c,{label:"底部",value:"footer"})]})),_:1},8,["modelValue"])}var a=Object(o["defineComponent"])({name:"TypeSelect",props:{modelValue:{type:String,default:""}},setup:function(e,t){var n=t.emit,l=Object(o["computed"])({get:function(){return e.modelValue},set:function(e){n("update:modelValue",e||"")}});return{value:l}}});a.render=l;t["default"]=a}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d0efc9d.1556fe49.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d0efc9d"],{"9a32":function(e,d){throw new Error("Module build failed (from ./node_modules/thread-loader/dist/cjs.js):\nThread Loader (Worker 2)\nDebug Failure. Output generation failed\n at PoolWorker.fromErrorObj (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\thread-loader\\dist\\WorkerPool.js:262:12)\n at G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\thread-loader\\dist\\WorkerPool.js:204:29\n at mapSeries (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\neo-async\\async.js:3625:14)\n at Object.transpileModule (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\typescript\\lib\\typescript.js:123670:29)\n at getTranspilationEmit (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:318:74)\n at successLoader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:66:15)\n at Object.loader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:22:12)")}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d2080c9.828f14ef.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d2080c9"],{a2ac:function(e,d){throw new Error("Module build failed (from ./node_modules/thread-loader/dist/cjs.js):\nThread Loader (Worker 0)\nDebug Failure. Output generation failed\n at PoolWorker.fromErrorObj (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\thread-loader\\dist\\WorkerPool.js:262:12)\n at G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\thread-loader\\dist\\WorkerPool.js:204:29\n at mapSeries (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\neo-async\\async.js:3625:14)\n at Object.transpileModule (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\typescript\\lib\\typescript.js:123670:29)\n at getTranspilationEmit (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:318:74)\n at successLoader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:66:15)\n at Object.loader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:22:12)")}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d20901b.a3f1f2f0.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d20901b"],{a6e5:function(e,t,n){"use strict";n.r(t);var o=n("7a23");function l(e,t,n,l,a,u){var c=Object(o["resolveComponent"])("el-option"),r=Object(o["resolveComponent"])("el-select");return Object(o["openBlock"])(),Object(o["createBlock"])(r,{modelValue:e.value,"onUpdate:modelValue":t[1]||(t[1]=function(t){return e.value=t}),clearable:""},{default:Object(o["withCtx"])((function(){return[Object(o["createVNode"])(c,{label:"头部",value:"header"}),Object(o["createVNode"])(c,{label:"底部",value:"footer"})]})),_:1},8,["modelValue"])}var a=Object(o["defineComponent"])({name:"TypeSelect",props:{modelValue:{type:String,default:""}},setup:function(e,t){var n=t.emit,l=Object(o["computed"])({get:function(){return e.modelValue},set:function(e){n("update:modelValue",e||"")}});return{value:l}}});a.render=l;t["default"]=a}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d20fe5a.bdc3e98b.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d20fe5a"],{b61a:function(e,n,o){"use strict";o.r(n);var t=o("7a23");function a(e,n,o,a,c,p){var r=Object(t["resolveComponent"])("spin");return Object(t["openBlock"])(),Object(t["createBlock"])(r,{style:{height:"150px"}})}var c=o("f92e"),p=Object(t["defineComponent"])({name:"PageLoading",components:{Spin:c["a"]}});p.render=a;n["default"]=p}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d213b08.2d2076ee.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d213b08"],{ae6d:function(e,d){throw new Error("Module build failed (from ./node_modules/thread-loader/dist/cjs.js):\nThread Loader (Worker 0)\nDebug Failure. Output generation failed\n at PoolWorker.fromErrorObj (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\thread-loader\\dist\\WorkerPool.js:262:12)\n at G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\thread-loader\\dist\\WorkerPool.js:204:29\n at mapSeries (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\neo-async\\async.js:3625:14)\n at Object.transpileModule (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\typescript\\lib\\typescript.js:123670:29)\n at getTranspilationEmit (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:318:74)\n at successLoader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:66:15)\n at Object.loader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:22:12)")}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d21a3a5.c55e3a4d.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d21a3a5"],{bb2a:function(e,t,n){"use strict";n.r(t);var o=n("7a23");function a(e,t,n,a,l,u){var c=Object(o["resolveComponent"])("el-option"),r=Object(o["resolveComponent"])("el-select");return Object(o["openBlock"])(),Object(o["createBlock"])(r,{modelValue:e.value,"onUpdate:modelValue":t[1]||(t[1]=function(t){return e.value=t}),clearable:""},{default:Object(o["withCtx"])((function(){return[Object(o["createVNode"])(c,{label:"头部",value:"header"}),Object(o["createVNode"])(c,{label:"底部",value:"footer"})]})),_:1},8,["modelValue"])}var l=Object(o["defineComponent"])({name:"TypeSelect",props:{modelValue:{type:String,default:""}},setup:function(e,t){var n=t.emit,a=Object(o["computed"])({get:function(){return e.modelValue},set:function(e){n("update:modelValue",e||"")}});return{value:a}}});l.render=a;t["default"]=l}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d21ad1c.b62f54de.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d21ad1c"],{bcaf:function(e,d){throw new Error("Module build failed (from ./node_modules/thread-loader/dist/cjs.js):\nThread Loader (Worker 0)\nDebug Failure. Output generation failed\n at PoolWorker.fromErrorObj (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\thread-loader\\dist\\WorkerPool.js:262:12)\n at G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\thread-loader\\dist\\WorkerPool.js:204:29\n at mapSeries (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\neo-async\\async.js:3625:14)\n at Object.transpileModule (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\typescript\\lib\\typescript.js:123670:29)\n at getTranspilationEmit (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:318:74)\n at successLoader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:66:15)\n at Object.loader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:22:12)")}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d21b869.7590cf6a.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d21b869"],{bfc2:function(e,d){throw new Error("Module build failed (from ./node_modules/ts-loader/index.js):\nError: Debug Failure. Output generation failed\n at Object.transpileModule (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\typescript\\lib\\typescript.js:123670:29)\n at getTranspilationEmit (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:318:74)\n at successLoader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:66:15)\n at Object.loader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:22:12)")}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d21e6e8.65b3dd58.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d21e6e8"],{d611:function(e,t,n){"use strict";n.r(t);var o=n("7a23");function l(e,t,n,l,a,u){var c=Object(o["resolveComponent"])("el-option"),r=Object(o["resolveComponent"])("el-select");return Object(o["openBlock"])(),Object(o["createBlock"])(r,{modelValue:e.value,"onUpdate:modelValue":t[1]||(t[1]=function(t){return e.value=t}),clearable:""},{default:Object(o["withCtx"])((function(){return[Object(o["createVNode"])(c,{label:"头部",value:"header"}),Object(o["createVNode"])(c,{label:"底部",value:"footer"})]})),_:1},8,["modelValue"])}var a=Object(o["defineComponent"])({name:"TypeSelect",props:{modelValue:{type:String,default:""}},setup:function(e,t){var n=t.emit,l=Object(o["computed"])({get:function(){return e.modelValue},set:function(e){n("update:modelValue",e||"")}});return{value:l}}});a.render=l;t["default"]=a}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d22275c.ce95b399.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d22275c"],{cf69:function(e,d){throw new Error("Module build failed (from ./node_modules/ts-loader/index.js):\nError: Debug Failure. Output generation failed\n at Object.transpileModule (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\typescript\\lib\\typescript.js:123670:29)\n at getTranspilationEmit (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:318:74)\n at successLoader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:66:15)\n at Object.loader (G:\\cloudbeike\\vue-github2021\\xueden-cloud-edu-vue3-admin\\node_modules\\ts-loader\\dist\\index.js:22:12)")}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d229093.d428eaff.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d229093"],{dc75:function(e,t,o){"use strict";o.r(t);var n=o("7a23"),c=Object(n["createTextVNode"])(" Back Home ");function r(e,t,o,r,u,a){var i=Object(n["resolveComponent"])("el-button"),s=Object(n["resolveComponent"])("router-link"),b=Object(n["resolveComponent"])("result");return Object(n["openBlock"])(),Object(n["createBlock"])(b,{status:"404",title:"404",subtitle:"Sorry, the page you visited does not exist."},{extra:Object(n["withCtx"])((function(){return[Object(n["createVNode"])(s,{to:"/"},{default:Object(n["withCtx"])((function(){return[Object(n["createVNode"])(i,{type:"primary"},{default:Object(n["withCtx"])((function(){return[c]})),_:1})]})),_:1})]})),_:1})}var u=o("7a13"),a=Object(n["defineComponent"])({name:"NotFound",components:{Result:u["a"]}});a.render=r;t["default"]=a}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d22bf72.aa2795cc.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d22bf72"],{f0e7:function(e,c,t){"use strict";t.r(c);var n=t("7a23"),o={class:"indexlayout-main-conent"},a=Object(n["createTextVNode"])(" 此页面只有 user 与 admin 账号可以查看。 ");function r(e,c){var t=Object(n["resolveComponent"])("el-card");return Object(n["openBlock"])(),Object(n["createBlock"])("div",o,[Object(n["createVNode"])(t,{shadow:"never",class:"cus-card"},{default:Object(n["withCtx"])((function(){return[a]})),_:1})])}const d={};d.render=r;c["default"]=d}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d22c2e2.9e2247ec.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d22c2e2"],{f1ab:function(e,t,n){"use strict";n.r(t);var o=n("7a23");function l(e,t,n,l,a,u){var c=Object(o["resolveComponent"])("el-option"),r=Object(o["resolveComponent"])("el-select");return Object(o["openBlock"])(),Object(o["createBlock"])(r,{modelValue:e.value,"onUpdate:modelValue":t[1]||(t[1]=function(t){return e.value=t}),clearable:""},{default:Object(o["withCtx"])((function(){return[Object(o["createVNode"])(c,{label:"头部",value:"header"}),Object(o["createVNode"])(c,{label:"底部",value:"footer"})]})),_:1},8,["modelValue"])}var a=Object(o["defineComponent"])({name:"TypeSelect",props:{modelValue:{type:String,default:""}},setup:function(e,t){var n=t.emit,l=Object(o["computed"])({get:function(){return e.modelValue},set:function(e){n("update:modelValue",e||"")}});return{value:l}}});a.render=l;t["default"]=a}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d22cc87.736a0699.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d22cc87"],{f568:function(e,t,n){"use strict";n.r(t);var o=n("7a23");function l(e,t,n,l,a,u){var c=Object(o["resolveComponent"])("el-option"),r=Object(o["resolveComponent"])("el-select");return Object(o["openBlock"])(),Object(o["createBlock"])(r,{modelValue:e.value,"onUpdate:modelValue":t[1]||(t[1]=function(t){return e.value=t}),clearable:""},{default:Object(o["withCtx"])((function(){return[Object(o["createVNode"])(c,{label:"头部",value:"header"}),Object(o["createVNode"])(c,{label:"底部",value:"footer"})]})),_:1},8,["modelValue"])}var a=Object(o["defineComponent"])({name:"TypeSelect",props:{modelValue:{type:String,default:""}},setup:function(e,t){var n=t.emit,l=Object(o["computed"])({get:function(){return e.modelValue},set:function(e){n("update:modelValue",e||"")}});return{value:l}}});a.render=l;t["default"]=a}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-2d2304e4.aeeca2d8.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-2d2304e4"],{ec5e:function(e,t,l){"use strict";l.r(t);var n=l("7a23");function a(e,t,l,a,o,c){var u=Object(n["resolveComponent"])("el-option"),r=Object(n["resolveComponent"])("el-select");return Object(n["openBlock"])(),Object(n["createBlock"])(r,{modelValue:e.value,"onUpdate:modelValue":t[1]||(t[1]=function(t){return e.value=t}),clearable:""},{default:Object(n["withCtx"])((function(){return[Object(n["createVNode"])(u,{label:"请选择",value:"",disabled:""}),(Object(n["openBlock"])(!0),Object(n["createBlock"])(n["Fragment"],null,Object(n["renderList"])(e.options,(function(e){return Object(n["openBlock"])(),Object(n["createBlock"])(u,{key:e.value,label:e.label,value:e.value},null,8,["label","value"])})),128))]})),_:1},8,["modelValue"])}var o=l("5530"),c=Object(n["defineComponent"])({name:"TypeSelect",props:{modelValue:{type:String,default:""}},setup:function(e,t){var l=t.emit,a=Object(n["reactive"])({options:[{value:"POST",label:"POST"},{value:"GET",label:"GET"}]}),c=Object(n["computed"])({get:function(){return e.modelValue},set:function(e){l("update:modelValue",e||"")}});return Object(o["a"])(Object(o["a"])({},Object(n["toRefs"])(a)),{},{value:c})}});c.render=a;t["default"]=c}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-77237d83.5c1326b0.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-77237d83"],{cffb8:function(e,n,c){"use strict";c.r(n);var o=c("7a23");function t(e,n){var c=Object(o["resolveComponent"])("router-view");return Object(o["openBlock"])(),Object(o["createBlock"])(c)}const r={};r.render=t;n["default"]=r}}]);
--------------------------------------------------------------------------------
/doc/前端后台管理系统/xueden-cloud-edu-admin/js/chunk-773e122f.9f26ca2b.js:
--------------------------------------------------------------------------------
1 | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-773e122f"],{ed88d:function(e,o,n){"use strict";n.r(o);var t=n("7a23"),c=Object(t["withScopeId"])("data-v-5315db86");Object(t["pushScopeId"])("data-v-5315db86");var d={class:"indexlayout-main-conent"},a=Object(t["createVNode"])("div",{class:"prism-player",id:"J_prismPlayer"},null,-1);Object(t["popScopeId"])();var i=c((function(e,o,n,c,i,p){return Object(t["openBlock"])(),Object(t["createBlock"])("div",d,[a])})),p=Object(t["defineComponent"])({setup:function(){Object(t["onMounted"])((function(){new window.Aliplayer({id:"J_prismPlayer",width:"100%",autoplay:!0,source:"http://imgoss.goodym.cn/goodymimgupload/201903/1551922178521.mp4"},(function(){console.log("播放器创建好了。")}))}))}});p.render=i,p.__scopeId="data-v-5315db86";o["default"]=p}}]);
--------------------------------------------------------------------------------
/doc/前端讲师平台/xueden-edu-teacher-pro/edu-teacher/css/.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/doc/前端讲师平台/xueden-edu-teacher-pro/edu-teacher/css/.gz
--------------------------------------------------------------------------------
/doc/前端讲师平台/xueden-edu-teacher-pro/edu-teacher/css/11.a6b7698f.css:
--------------------------------------------------------------------------------
1 | [data-v-9b77cf3e]:export{menuText:#bfcbd9;menuActiveText:#fff;menuActiveBg:#2d8cf0;menuBg:#001529;subMenuBg:#1f2d3d;subMenuHover:#2d8cf0;menuWidth:200px;menuMinWidth:64px}.qrcode__wrap[data-v-9b77cf3e]{display:inline-block;position:relative}.qrcode__wrap .disabled__wrap[data-v-9b77cf3e]{position:absolute;width:100%;height:100%;background:hsla(0,0%,100%,.95);top:0;left:0;display:flex;align-items:center;justify-content:center;cursor:pointer}.qrcode__wrap .disabled__wrap>div[data-v-9b77cf3e]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-weight:700}.qrcode__wrap .disabled__wrap>div i[data-v-9b77cf3e]{font-size:30px;margin-bottom:10px}
--------------------------------------------------------------------------------
/doc/前端讲师平台/xueden-edu-teacher-pro/edu-teacher/css/14.43e39e3e.css:
--------------------------------------------------------------------------------
1 | [data-v-2e2b1a15]:export{menuText:#bfcbd9;menuActiveText:#fff;menuActiveBg:#2d8cf0;menuBg:#001529;subMenuBg:#1f2d3d;subMenuHover:#2d8cf0;menuWidth:200px;menuMinWidth:64px}.login-wrap[data-v-2e2b1a15]{width:100%;height:100%;background-image:url(../../edu-teacher/img/login-bg.0899ffa6.jpg);background-size:cover;background-position:50%;position:relative}.login-wrap .box-card[data-v-2e2b1a15]{width:400px}.login-wrap .box-card .login--header[data-v-2e2b1a15]{font-size:24px;font-weight:600}.login-wrap .box-card .svg-container[data-v-2e2b1a15]{color:#889aa4;vertical-align:middle;width:30px;display:inline-block}.login-wrap .box-card .form--input[data-v-2e2b1a15]{width:100%}.login-wrap .box-card .form--input[data-v-2e2b1a15] .el-input__inner{padding-left:40px}.login-wrap .box-card .login--button[data-v-2e2b1a15]{width:100%}.login-wrap .login-con[data-v-2e2b1a15]{position:absolute;right:160px;top:50%;transform:translateY(-60%)}
--------------------------------------------------------------------------------
/doc/前端讲师平台/xueden-edu-teacher-pro/edu-teacher/css/2.e9308cd6.css:
--------------------------------------------------------------------------------
1 | .hljs{display:block;overflow-x:auto;padding:.5em;background:#23241f}.hljs,.hljs-subst,.hljs-tag{color:#f8f8f2}.hljs-emphasis,.hljs-strong{color:#a8a8a2}.hljs-bullet,.hljs-link,.hljs-literal,.hljs-number,.hljs-quote,.hljs-regexp{color:#ae81ff}.hljs-code,.hljs-section,.hljs-selector-class,.hljs-title{color:#a6e22e}.hljs-strong{font-weight:700}.hljs-emphasis{font-style:italic}.hljs-attr,.hljs-keyword,.hljs-name,.hljs-selector-tag{color:#f92672}.hljs-attribute,.hljs-symbol{color:#66d9ef}.hljs-class .hljs-title,.hljs-params{color:#f8f8f2}.hljs-addition,.hljs-built_in,.hljs-builtin-name,.hljs-selector-attr,.hljs-selector-id,.hljs-selector-pseudo,.hljs-string,.hljs-template-variable,.hljs-type,.hljs-variable{color:#e6db74}.hljs-comment,.hljs-deletion,.hljs-meta{color:#75715e}
--------------------------------------------------------------------------------
/doc/前端讲师平台/xueden-edu-teacher-pro/edu-teacher/css/chunk-libs.902ebb66.css:
--------------------------------------------------------------------------------
1 | #nprogress{pointer-events:none}#nprogress .bar{background:#29d;position:fixed;z-index:1031;top:0;left:0;width:100%;height:2px}#nprogress .peg{display:block;position:absolute;right:0;width:100px;height:100%;box-shadow:0 0 10px #29d,0 0 5px #29d;opacity:1;transform:rotate(3deg) translateY(-4px)}#nprogress .spinner{display:block;position:fixed;z-index:1031;top:15px;right:15px}#nprogress .spinner-icon{width:18px;height:18px;box-sizing:border-box;border:2px solid transparent;border-top-color:#29d;border-left-color:#29d;border-radius:50%;-webkit-animation:nprogress-spinner .4s linear infinite;animation:nprogress-spinner .4s linear infinite}.nprogress-custom-parent{overflow:hidden;position:relative}.nprogress-custom-parent #nprogress .bar,.nprogress-custom-parent #nprogress .spinner{position:absolute}@-webkit-keyframes nprogress-spinner{0%{-webkit-transform:rotate(0deg)}to{-webkit-transform:rotate(1turn)}}@keyframes nprogress-spinner{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}
--------------------------------------------------------------------------------
/doc/前端讲师平台/xueden-edu-teacher-pro/edu-teacher/fonts/element-icons.535877f5.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/doc/前端讲师平台/xueden-edu-teacher-pro/edu-teacher/fonts/element-icons.535877f5.woff
--------------------------------------------------------------------------------
/doc/前端讲师平台/xueden-edu-teacher-pro/edu-teacher/fonts/element-icons.732389de.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/doc/前端讲师平台/xueden-edu-teacher-pro/edu-teacher/fonts/element-icons.732389de.ttf
--------------------------------------------------------------------------------
/doc/前端讲师平台/xueden-edu-teacher-pro/edu-teacher/img/404.a57b6f31.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/doc/前端讲师平台/xueden-edu-teacher-pro/edu-teacher/img/404.a57b6f31.png
--------------------------------------------------------------------------------
/doc/前端讲师平台/xueden-edu-teacher-pro/edu-teacher/img/404_cloud.0f4bc32b.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/doc/前端讲师平台/xueden-edu-teacher-pro/edu-teacher/img/404_cloud.0f4bc32b.png
--------------------------------------------------------------------------------
/doc/前端讲师平台/xueden-edu-teacher-pro/edu-teacher/img/login-bg.0899ffa6.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/doc/前端讲师平台/xueden-edu-teacher-pro/edu-teacher/img/login-bg.0899ffa6.jpg
--------------------------------------------------------------------------------
/doc/前端讲师平台/xueden-edu-teacher-pro/edu-teacher/img/logo.7e4f5e27.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/doc/前端讲师平台/xueden-edu-teacher-pro/edu-teacher/img/logo.7e4f5e27.png
--------------------------------------------------------------------------------
/doc/前端讲师平台/xueden-edu-teacher-pro/edu-teacher/img/success.5344f959.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/doc/前端讲师平台/xueden-edu-teacher-pro/edu-teacher/img/success.5344f959.png
--------------------------------------------------------------------------------
/doc/前端讲师平台/xueden-edu-teacher-pro/edu-teacher/js/.gz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/doc/前端讲师平台/xueden-edu-teacher-pro/edu-teacher/js/.gz
--------------------------------------------------------------------------------
/doc/前端讲师平台/xueden-edu-teacher-pro/edu-teacher/js/16.5502413c.js:
--------------------------------------------------------------------------------
1 | (window.webpackJsonp=window.webpackJsonp||[]).push([[16],{"861f":function(e,r,t){"use strict";t.r(r);var n=t("7a23");t("a15b"),t("ac1f"),t("5319");var c=t("6c02"),a=Object(n.defineComponent)({setup:function(){var e=Object(c.c)(),r=e.currentRoute,t=e.replace,a=Object(n.unref)(r),o=a.params,i=a.query,u=o.path;return t({path:"/"+(Array.isArray(u)?u.join("/"):u),query:i}),{}}});a.render=function(e,r,t,c,a,o){return Object(n.openBlock)(),Object(n.createBlock)("div")},r.default=a},a15b:function(e,r,t){"use strict";var n=t("23e7"),c=t("44ad"),a=t("fc6a"),o=t("a640"),i=[].join,u=c!=Object,p=o("join",",");n({target:"Array",proto:!0,forced:u||!p},{join:function(e){return i.call(a(this),void 0===e?",":e)}})}}]);
--------------------------------------------------------------------------------
/doc/前端讲师平台/xueden-edu-teacher-pro/edu-teacher/js/17.fcb5d0ca.js:
--------------------------------------------------------------------------------
1 | (window.webpackJsonp=window.webpackJsonp||[]).push([[17],{"0951":function(e,c,t){"use strict";t.r(c);var d=t("7a23"),n=Object(d.withScopeId)("data-v-35fd94fd");Object(d.pushScopeId)("data-v-35fd94fd");var a={align:"center"};Object(d.popScopeId)();var o=n((function(e,c,n,o,p,r){return Object(d.openBlock)(),Object(d.createBlock)("div",a,[Object(d.createVNode)("img",{src:t("d284")},null,8,["src"])])})),p=Object(d.defineComponent)({name:"Paysuccess"});p.render=o,p.__scopeId="data-v-35fd94fd",c.default=p},d284:function(e,c,t){e.exports=t.p+"edu-teacher/img/success.5344f959.png"}}]);
--------------------------------------------------------------------------------
/doc/前端讲师平台/xueden-edu-teacher-pro/edu-teacher/js/8.96090d72.js.LICENSE.txt:
--------------------------------------------------------------------------------
1 | /*!
2 | * The buffer module from node.js, for the browser.
3 | *
4 | * @author Feross Aboukhadijeh
5 | * @license MIT
6 | */
7 |
8 | /*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */
9 |
--------------------------------------------------------------------------------
/doc/前端讲师平台/xueden-edu-teacher-pro/edu-teacher/js/9.63f96336.js.LICENSE.txt:
--------------------------------------------------------------------------------
1 | /*!
2 | * screenfull
3 | * v5.0.2 - 2020-02-13
4 | * (c) Sindre Sorhus; MIT License
5 | */
6 |
--------------------------------------------------------------------------------
/doc/前端讲师平台/xueden-edu-teacher-pro/edu-teacher/js/chunk-element.c8180296.js.LICENSE.txt:
--------------------------------------------------------------------------------
1 | /*! *****************************************************************************
2 | Copyright (c) Microsoft Corporation.
3 |
4 | Permission to use, copy, modify, and/or distribute this software for any
5 | purpose with or without fee is hereby granted.
6 |
7 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
8 | REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
9 | AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
10 | INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
11 | LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
12 | OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
13 | PERFORMANCE OF THIS SOFTWARE.
14 | ***************************************************************************** */
15 |
--------------------------------------------------------------------------------
/doc/前端讲师平台/xueden-edu-teacher-pro/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/doc/前端讲师平台/xueden-edu-teacher-pro/favicon.ico
--------------------------------------------------------------------------------
/doc/前端讲师平台/xueden-edu-teacher-pro/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/doc/前端讲师平台/xueden-edu-teacher-pro/logo.png
--------------------------------------------------------------------------------
/doc/前端门户网站/xueden-cloud-edu-vue-portal/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/doc/前端门户网站/xueden-cloud-edu-vue-portal/favicon.ico
--------------------------------------------------------------------------------
/doc/前端门户网站/xueden-cloud-edu-vue-portal/static/css/chunk-54e65d12.6543776e.css:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/doc/前端门户网站/xueden-cloud-edu-vue-portal/static/css/chunk-54e65d12.6543776e.css
--------------------------------------------------------------------------------
/doc/前端门户网站/xueden-cloud-edu-vue-portal/static/css/chunk-5f3b8532.6543776e.css:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/doc/前端门户网站/xueden-cloud-edu-vue-portal/static/css/chunk-5f3b8532.6543776e.css
--------------------------------------------------------------------------------
/doc/前端门户网站/xueden-cloud-edu-vue-portal/static/fonts/element-icons.535877f5.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/doc/前端门户网站/xueden-cloud-edu-vue-portal/static/fonts/element-icons.535877f5.woff
--------------------------------------------------------------------------------
/doc/前端门户网站/xueden-cloud-edu-vue-portal/static/fonts/element-icons.732389de.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/doc/前端门户网站/xueden-cloud-edu-vue-portal/static/fonts/element-icons.732389de.ttf
--------------------------------------------------------------------------------
/doc/前端门户网站/xueden-cloud-edu-vue-portal/static/img/alipaylogo.a2b643ed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/doc/前端门户网站/xueden-cloud-edu-vue-portal/static/img/alipaylogo.a2b643ed.png
--------------------------------------------------------------------------------
/doc/前端门户网站/xueden-cloud-edu-vue-portal/static/img/center_bg.37ad7aaa.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/doc/前端门户网站/xueden-cloud-edu-vue-portal/static/img/center_bg.37ad7aaa.png
--------------------------------------------------------------------------------
/doc/前端门户网站/xueden-cloud-edu-vue-portal/static/img/d_bg.49a0195e.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/doc/前端门户网站/xueden-cloud-edu-vue-portal/static/img/d_bg.49a0195e.png
--------------------------------------------------------------------------------
/doc/前端门户网站/xueden-cloud-edu-vue-portal/static/img/d_bg2.00e39d11.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/doc/前端门户网站/xueden-cloud-edu-vue-portal/static/img/d_bg2.00e39d11.png
--------------------------------------------------------------------------------
/doc/前端门户网站/xueden-cloud-edu-vue-portal/static/img/details_banner.363a142a.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/doc/前端门户网站/xueden-cloud-edu-vue-portal/static/img/details_banner.363a142a.png
--------------------------------------------------------------------------------
/doc/前端门户网站/xueden-cloud-edu-vue-portal/static/img/list_banner.8b77796f.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/doc/前端门户网站/xueden-cloud-edu-vue-portal/static/img/list_banner.8b77796f.png
--------------------------------------------------------------------------------
/doc/前端门户网站/xueden-cloud-edu-vue-portal/static/img/list_bg.11718f49.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/doc/前端门户网站/xueden-cloud-edu-vue-portal/static/img/list_bg.11718f49.png
--------------------------------------------------------------------------------
/doc/前端门户网站/xueden-cloud-edu-vue-portal/static/img/logo.7e4f5e27.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/doc/前端门户网站/xueden-cloud-edu-vue-portal/static/img/logo.7e4f5e27.png
--------------------------------------------------------------------------------
/doc/前端门户网站/xueden-cloud-edu-vue-portal/static/img/myqq.ac1db295.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/doc/前端门户网站/xueden-cloud-edu-vue-portal/static/img/myqq.ac1db295.jpg
--------------------------------------------------------------------------------
/doc/前端门户网站/xueden-cloud-edu-vue-portal/static/img/video_bg.906601d0.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/doc/前端门户网站/xueden-cloud-edu-vue-portal/static/img/video_bg.906601d0.png
--------------------------------------------------------------------------------
/doc/前端门户网站/xueden-cloud-edu-vue-portal/static/img/wxpaylogo.7663fd15.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/doc/前端门户网站/xueden-cloud-edu-vue-portal/static/img/wxpaylogo.7663fd15.png
--------------------------------------------------------------------------------
/images/1-1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/1-1.jpg
--------------------------------------------------------------------------------
/images/1-2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/1-2.jpg
--------------------------------------------------------------------------------
/images/1-3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/1-3.jpg
--------------------------------------------------------------------------------
/images/1329491-20180301101804629-1054069840-1635641102445.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/1329491-20180301101804629-1054069840-1635641102445.png
--------------------------------------------------------------------------------
/images/1329491-20180301101804629-1054069840.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/1329491-20180301101804629-1054069840.png
--------------------------------------------------------------------------------
/images/1329491-20180301101828137-2115610170-1635641167031.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/1329491-20180301101828137-2115610170-1635641167031.png
--------------------------------------------------------------------------------
/images/1329491-20180301101828137-2115610170-1635641235406.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/1329491-20180301101828137-2115610170-1635641235406.png
--------------------------------------------------------------------------------
/images/1329491-20180301101828137-2115610170.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/1329491-20180301101828137-2115610170.png
--------------------------------------------------------------------------------
/images/1329491-20180301101926085-1579993277-1635641258260.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/1329491-20180301101926085-1579993277-1635641258260.png
--------------------------------------------------------------------------------
/images/1329491-20180301101926085-1579993277.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/1329491-20180301101926085-1579993277.png
--------------------------------------------------------------------------------
/images/2-1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/2-1.jpg
--------------------------------------------------------------------------------
/images/2-2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/2-2.jpg
--------------------------------------------------------------------------------
/images/2-3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/2-3.jpg
--------------------------------------------------------------------------------
/images/2-4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/2-4.jpg
--------------------------------------------------------------------------------
/images/2-5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/2-5.jpg
--------------------------------------------------------------------------------
/images/3-1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/3-1.jpg
--------------------------------------------------------------------------------
/images/3-2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/3-2.jpg
--------------------------------------------------------------------------------
/images/3-3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/3-3.jpg
--------------------------------------------------------------------------------
/images/3-4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/3-4.jpg
--------------------------------------------------------------------------------
/images/3-5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/3-5.jpg
--------------------------------------------------------------------------------
/images/3-6.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/3-6.jpg
--------------------------------------------------------------------------------
/images/3-7.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/3-7.jpg
--------------------------------------------------------------------------------
/images/4-1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/4-1.jpg
--------------------------------------------------------------------------------
/images/4-2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/4-2.jpg
--------------------------------------------------------------------------------
/images/4-3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/4-3.jpg
--------------------------------------------------------------------------------
/images/4-4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/4-4.jpg
--------------------------------------------------------------------------------
/images/4-5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/4-5.jpg
--------------------------------------------------------------------------------
/images/4-6.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/4-6.jpg
--------------------------------------------------------------------------------
/images/image-20211101132225460.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/image-20211101132225460.png
--------------------------------------------------------------------------------
/images/image-20211101132608141.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/image-20211101132608141.png
--------------------------------------------------------------------------------
/images/image-20211101165005447.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/image-20211101165005447.png
--------------------------------------------------------------------------------
/images/image-20211101165340550.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/image-20211101165340550.png
--------------------------------------------------------------------------------
/images/image-20211101170546696.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/image-20211101170546696.png
--------------------------------------------------------------------------------
/images/image-20211101200500651.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/image-20211101200500651.png
--------------------------------------------------------------------------------
/images/image-20211101200635313.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/image-20211101200635313.png
--------------------------------------------------------------------------------
/images/image-20211101200737174.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/image-20211101200737174.png
--------------------------------------------------------------------------------
/images/image-20211101203746134.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/image-20211101203746134.png
--------------------------------------------------------------------------------
/images/image-20211101203900908.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/image-20211101203900908.png
--------------------------------------------------------------------------------
/images/image-20211101204846642.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/image-20211101204846642.png
--------------------------------------------------------------------------------
/images/image-20211102182456846.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/image-20211102182456846.png
--------------------------------------------------------------------------------
/images/image-20211102182544912.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/image-20211102182544912.png
--------------------------------------------------------------------------------
/images/image-20211102182600009.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/image-20211102182600009.png
--------------------------------------------------------------------------------
/images/logo.7e4f5e27.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/logo.7e4f5e27.png
--------------------------------------------------------------------------------
/images/v1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/v1.jpg
--------------------------------------------------------------------------------
/images/v2-1635593960636.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/v2-1635593960636.jpg
--------------------------------------------------------------------------------
/images/v2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/v2.jpg
--------------------------------------------------------------------------------
/images/v3-1635593969463.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/v3-1635593969463.jpg
--------------------------------------------------------------------------------
/images/v3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/v3.jpg
--------------------------------------------------------------------------------
/images/wx.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/wx.jpg
--------------------------------------------------------------------------------
/images/zfb.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/images/zfb.jpg
--------------------------------------------------------------------------------
/moyu-api/moyu-api-edu/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
5 |
6 | moyu-api
7 | cn.xueden
8 | 1.0.0
9 |
10 | 4.0.0
11 |
12 | moyu-api-edu
13 |
14 | moyu-api-edu
15 | 教育微服务接口
16 |
17 |
18 |
19 |
20 | cn.xueden
21 | moyu-common-core
22 |
23 |
24 |
25 |
26 |
27 |
28 | org.springframework.boot
29 | spring-boot-maven-plugin
30 |
31 |
32 |
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/moyu-api/moyu-api-edu/src/main/java/cn/xueden/edu/api/RemoteMemberService.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.api;
2 |
3 | import cn.xueden.common.core.constant.ServiceNameConstants;
4 | import cn.xueden.common.core.domain.R;
5 |
6 | import cn.xueden.common.core.edu.vo.EduMemberVO;
7 | import cn.xueden.edu.api.factory.RemoteMemberFallbackFactory;
8 | import org.springframework.cloud.openfeign.FeignClient;
9 | import org.springframework.web.bind.annotation.GetMapping;
10 | import org.springframework.web.bind.annotation.PathVariable;
11 |
12 | /**功能描述:教育平台服务接口
13 | * @Auther:梁志杰
14 | * @Date:2021/1/30
15 | * @Description:cn.xueden.edu.api
16 | * @version:1.0
17 | */
18 | @FeignClient(contextId = "remoteMemberService", value = ServiceNameConstants.EDU_SERVICE, fallbackFactory = RemoteMemberFallbackFactory.class)
19 | public interface RemoteMemberService {
20 |
21 | /**
22 | * 通过手机号查询用户信息
23 | *
24 | * @param mobile 手机号
25 | * @return 结果
26 | */
27 | @GetMapping(value = "/edu/member/info/{mobile}")
28 | public R getMemberInfo(@PathVariable("mobile") String mobile);
29 | }
30 |
--------------------------------------------------------------------------------
/moyu-api/moyu-api-edu/src/main/java/cn/xueden/edu/api/factory/RemoteMemberFallbackFactory.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.api.factory;
2 |
3 | import cn.xueden.common.core.domain.R;
4 | import cn.xueden.common.core.edu.vo.EduMemberVO;
5 | import cn.xueden.edu.api.RemoteMemberService;
6 | import feign.hystrix.FallbackFactory;
7 | import org.slf4j.Logger;
8 | import org.slf4j.LoggerFactory;
9 |
10 | /**
11 | * @Auther:梁志杰
12 | * @Date:2021/1/30
13 | * @Description:cn.xueden.edu.api.factory
14 | * @version:1.0
15 | */
16 | public class RemoteMemberFallbackFactory implements FallbackFactory {
17 | private static final Logger log = LoggerFactory.getLogger(RemoteMemberFallbackFactory.class);
18 |
19 | @Override
20 | public RemoteMemberService create(Throwable throwable)
21 | {
22 | log.error("用户服务调用失败:{}", throwable.getMessage());
23 | return new RemoteMemberService()
24 | {
25 | @Override
26 | public R getMemberInfo(String mobile)
27 | {
28 | return R.fail("获取会员失败:" + throwable.getMessage());
29 | }
30 | };
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/moyu-api/moyu-api-system/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
5 |
6 | moyu-api
7 | cn.xueden
8 | 1.0.0
9 |
10 | 4.0.0
11 |
12 | moyu-api-system
13 |
14 | moyu-api-system
15 | 系统管理微服务接口
16 |
17 |
18 |
19 |
20 | cn.xueden
21 | moyu-common-core
22 |
23 |
24 |
25 |
26 |
27 |
28 | org.springframework.boot
29 | spring-boot-maven-plugin
30 |
31 |
32 |
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/moyu-api/moyu-api-system/src/main/java/cn/xueden/system/api/RemoteUserService.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.system.api;
2 |
3 | import cn.xueden.common.core.constant.ServiceNameConstants;
4 | import cn.xueden.common.core.domain.R;
5 | import cn.xueden.system.api.factory.RemoteUserFallbackFactory;
6 | import cn.xueden.system.api.model.LoginUser;
7 | import org.springframework.cloud.openfeign.FeignClient;
8 | import org.springframework.web.bind.annotation.GetMapping;
9 | import org.springframework.web.bind.annotation.PathVariable;
10 |
11 | /**功能描述:用户服务
12 | * @Auther:梁志杰
13 | * @Date:2020/9/25
14 | * @Description:cn.xueden.system.api
15 | * @version:1.0
16 | */
17 | @FeignClient(contextId = "remoteUserService", value = ServiceNameConstants.SYSTEM_SERVICE, fallbackFactory = RemoteUserFallbackFactory.class)
18 | public interface RemoteUserService {
19 | /**
20 | * 通过用户名查询用户信息
21 | *
22 | * @param username 用户名
23 | * @return 结果
24 | */
25 | @GetMapping(value = "/system/user/info/{username}")
26 | public R getUserInfo(@PathVariable("username") String username);
27 | }
28 |
--------------------------------------------------------------------------------
/moyu-api/moyu-api-system/src/main/java/cn/xueden/system/api/factory/RemoteUserFallbackFactory.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.system.api.factory;
2 |
3 | import cn.xueden.common.core.domain.R;
4 | import cn.xueden.system.api.RemoteUserService;
5 | import cn.xueden.system.api.model.LoginUser;
6 | import feign.hystrix.FallbackFactory;
7 | import org.slf4j.Logger;
8 | import org.slf4j.LoggerFactory;
9 |
10 | /**功能描述:用户服务降级处理
11 | * @Auther:梁志杰
12 | * @Date:2020/9/25
13 | * @Description:cn.xueden.system.api.factory
14 | * @version:1.0
15 | */
16 | public class RemoteUserFallbackFactory implements FallbackFactory {
17 | private static final Logger log = LoggerFactory.getLogger(RemoteUserFallbackFactory.class);
18 |
19 | @Override
20 | public RemoteUserService create(Throwable throwable)
21 | {
22 | log.error("用户服务调用失败:{}", throwable.getMessage());
23 | return new RemoteUserService()
24 | {
25 | @Override
26 | public R getUserInfo(String username)
27 | {
28 | return R.fail("获取用户失败:" + throwable.getMessage());
29 | }
30 | };
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/moyu-api/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
5 |
6 | moyu-cloud
7 | cn.xueden
8 | 1.0.0
9 |
10 | 4.0.0
11 |
12 | moyu-api
13 | pom
14 |
15 | moyu-api
16 | 接口模块
17 |
18 | moyu-api-system
19 | moyu-api-edu
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/moyu-auth/Dockerfile:
--------------------------------------------------------------------------------
1 | #获取base image
2 | FROM adoptopenjdk/openjdk8:latest
3 | MAINTAINER moyu 11184629@qq.com
4 |
5 | #类似于linux copy指令
6 | COPY moyu-auth-1.0.0.jar /opt/app/layuicloud/
7 | #对外端口
8 | EXPOSE 8000
9 | #执行命令 java -jar /opt/app/layuicloud/moyu-auth-1.0.0.jar
10 | ENTRYPOINT ["java","-Xmx256m", "-jar", "/opt/app/layuicloud/moyu-auth-1.0.0.jar","--spring.profiles.active=dev","-c"]
11 |
--------------------------------------------------------------------------------
/moyu-auth/src/main/java/cn/xueden/auth/MoYuAuthApplication.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.auth;
2 |
3 | import cn.xueden.common.security.annotation.EnableMoYuFeignClients;
4 | import org.springframework.beans.factory.annotation.Value;
5 | import org.springframework.boot.SpringApplication;
6 | import org.springframework.boot.autoconfigure.SpringBootApplication;
7 | import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
8 | import org.springframework.cloud.client.SpringCloudApplication;
9 | import org.springframework.cloud.context.config.annotation.RefreshScope;
10 | import org.springframework.web.bind.annotation.RequestMapping;
11 | import org.springframework.web.bind.annotation.RestController;
12 |
13 | /**
14 | * 认证授权中心
15 | *
16 | */
17 | @EnableMoYuFeignClients
18 | @SpringBootApplication(exclude = {DataSourceAutoConfiguration.class })
19 | @RestController
20 | @RefreshScope
21 | public class MoYuAuthApplication
22 | {
23 | public static void main( String[] args )
24 | {
25 | SpringApplication.run(MoYuAuthApplication.class, args);
26 | }
27 |
28 | /* @Value("${nacos.config}")
29 | private String config;
30 |
31 | @RequestMapping("/getValue")
32 | public String getValue() {
33 | return config;
34 | }*/
35 | }
36 |
--------------------------------------------------------------------------------
/moyu-auth/src/main/java/cn/xueden/auth/form/LoginMemberBody.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.auth.form;
2 |
3 | import lombok.Data;
4 |
5 | /**
6 | * @Auther:梁志杰
7 | * @Date:2021/1/30
8 | * @Description:cn.xueden.auth.form
9 | * @version:1.0
10 | */
11 | @Data
12 | public class LoginMemberBody {
13 |
14 | /**
15 | * 手机号
16 | */
17 | private String mobile;
18 |
19 | /**
20 | * 用户密码
21 | */
22 | private String password;
23 |
24 | /**
25 | * 验证码
26 | */
27 | private String code;
28 |
29 | /**
30 | * 唯一标识
31 | */
32 | private String uuid = "";
33 | }
34 |
--------------------------------------------------------------------------------
/moyu-auth/src/main/resources/banner.txt:
--------------------------------------------------------------------------------
1 | _ _
2 | _ __ ___ ___ _ _ _ _ __ _ _ _| |_| |__
3 | | '_ ` _ \ / _ \| | | | | | |_____ / _` | | | | __| '_ \
4 | | | | | | | (_) | |_| | |_| |_____| (_| | |_| | |_| | | |
5 | |_| |_| |_|\___/ \__, |\__,_| \__,_|\__,_|\__|_| |_|
6 | |___/
7 | Spring Boot Version: ${spring-boot.version}
8 | Spring Application Name: ${spring.application.name}
--------------------------------------------------------------------------------
/moyu-auth/src/main/resources/bootstrap.yml:
--------------------------------------------------------------------------------
1 | server:
2 | port: 8000
3 |
4 | # Spring
5 | spring:
6 | application:
7 | # 应用名称
8 | name: moyu-auth
9 | profiles:
10 | # 环境配置
11 | active: dev
12 | main:
13 | allow-bean-definition-overriding: true
14 | cloud:
15 | nacos:
16 | discovery:
17 | # 服务注册地址
18 | server-addr: nacos:8848
19 | config:
20 | # 配置中心地址
21 | server-addr: nacos:8848
22 | # 配置文件格式
23 | file-extension: yml
24 | # 共享配置
25 | shared-dataids: application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
26 | #本地 默认为Public命名空间,可以省略不写,新建的命名空间,需要使用命名空间ID, 不能使用名称
27 | namespace: 5c3c4829-f937-4d50-aec1-95f0afc1ef73
28 | #指定配置群组 --如果是Public命名空间 则可以省略群组配置
29 | group: AUTH_GROUP
30 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-alipay/src/main/java/cn/xueden/alipay/utils/StringUtils.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.alipay.utils;
2 |
3 | import java.io.BufferedReader;
4 | import java.io.File;
5 | import java.io.FileReader;
6 |
7 | /**
8 | * @Auther:梁志杰
9 | * @Date:2021/5/22
10 | * @Description:cn.xueden.alipay.utils
11 | * @version:1.0
12 | */
13 | public class StringUtils {
14 | // 读取文件
15 | public static String readFileOfTxt(File file) {
16 | String result = "";
17 | try{
18 | BufferedReader br = new BufferedReader(new FileReader(file));//构造一个BufferedReader类来读取文件
19 | String s = null;
20 | while((s = br.readLine())!=null){//使用readLine方法,一次读一行
21 | result = result +s;
22 | }
23 | br.close();
24 | }catch(Exception e){
25 | e.printStackTrace();
26 | }
27 | return result;
28 |
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-alipay/src/main/resources/META-INF/spring.factories:
--------------------------------------------------------------------------------
1 | org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
2 | cn.xueden.alipay.config.AliPayConfig,\
3 | cn.xueden.alipay.service.AliPayService,\
4 | cn.xueden.alipay.config.InitConfig
5 |
6 |
7 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-alivod/src/main/java/cn/xueden/alivod/utils/AliyunVODSDKUtils.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.alivod.utils;
2 |
3 | import com.aliyuncs.DefaultAcsClient;
4 | import com.aliyuncs.exceptions.ClientException;
5 | import com.aliyuncs.profile.DefaultProfile;
6 |
7 | /**阿里云视频点播sdk初始化操作
8 | * @Auther:梁志杰
9 | * @Date:2021/1/20
10 | * @Description:cn.xueden.alivod.utils
11 | * @version:1.0
12 | */
13 | public class AliyunVODSDKUtils {
14 | public static DefaultAcsClient initVodClient(String accessKeyId, String accessKeySecret) throws ClientException {
15 | String regionId = "cn-shanghai"; // 点播服务接入区域上海
16 | DefaultProfile profile = DefaultProfile.getProfile(regionId, accessKeyId, accessKeySecret);
17 |
18 | DefaultAcsClient client = new DefaultAcsClient(profile);
19 | return client;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-alivod/src/main/resources/META-INF/spring.factories:
--------------------------------------------------------------------------------
1 | org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
2 | cn.xueden.alivod.utils.ConstantPropertiesUtil
3 |
4 |
5 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-core/src/main/java/cn/xueden/common/core/constant/CacheConstants.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.core.constant;
2 |
3 | /**功能描述:缓存的key 常量
4 | * @Auther:梁志杰
5 | * @Date:2020/9/24
6 | * @Description:cn.xueden.common.core.constant
7 | * @version:1.0
8 | */
9 | public class CacheConstants {
10 |
11 | /**
12 | * 令牌自定义标识
13 | */
14 | public static final String HEADER = "Authorization";
15 |
16 | /**
17 | * 令牌前缀
18 | */
19 | public static final String TOKEN_PREFIX = "Bearer ";
20 |
21 | /**
22 | * 权限缓存前缀
23 | */
24 | public final static String LOGIN_TOKEN_KEY = "login_tokens:";
25 |
26 | /**
27 | * 用户ID字段
28 | */
29 | public static final String DETAILS_USER_ID = "user_id";
30 |
31 | /**
32 | * 用户名字段
33 | */
34 | public static final String DETAILS_USERNAME = "username";
35 | }
36 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-core/src/main/java/cn/xueden/common/core/constant/ServiceNameConstants.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.core.constant;
2 |
3 | /**功能描述:微服务名称
4 | * @Auther:梁志杰
5 | * @Date:2020/9/25
6 | * @Description:cn.xueden.common.core.constant
7 | * @version:1.0
8 | */
9 | public class ServiceNameConstants {
10 |
11 | /**
12 | * 认证服务的serviceid
13 | */
14 | public static final String AUTH_SERVICE = "moyu-auth";
15 |
16 | /**
17 | * 系统模块的serviceid
18 | */
19 | public static final String SYSTEM_SERVICE = "moyu-system";
20 |
21 | /**
22 | * 教育模块的serviceid
23 | */
24 | public static final String EDU_SERVICE = "moyu-edu";
25 | }
26 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-core/src/main/java/cn/xueden/common/core/constant/UserConstants.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.core.constant;
2 |
3 | /**功能描述:用户常量信息
4 | * @Auther:梁志杰
5 | * @Date:2020/9/25
6 | * @Description:cn.xueden.common.core.constant
7 | * @version:1.0
8 | */
9 | public class UserConstants {
10 |
11 | /**
12 | * 用户名长度限制
13 | */
14 | public static final int MOBILE_MIN_LENGTH = 11;
15 |
16 | /**
17 | * 用户名长度限制
18 | */
19 | public static final int USERNAME_MIN_LENGTH = 2;
20 |
21 | public static final int USERNAME_MAX_LENGTH = 20;
22 |
23 | /**
24 | * 密码长度限制
25 | */
26 | public static final int PASSWORD_MIN_LENGTH = 5;
27 |
28 | public static final int PASSWORD_MAX_LENGTH = 20;
29 | }
30 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-core/src/main/java/cn/xueden/common/core/edu/domain/EduBanner.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.core.edu.domain;
2 |
3 | import cn.xueden.common.core.web.domain.DataEntity;
4 | import com.baomidou.mybatisplus.annotation.TableName;
5 | import io.swagger.annotations.ApiModelProperty;
6 | import lombok.Data;
7 |
8 | /**功能描述:首页幻灯片实体类
9 | * @Auther:梁志杰
10 | * @Date:2021/2/19
11 | * @Description:cn.xueden.common.core.edu.domain
12 | * @version:1.0
13 | */
14 | @Data
15 | @TableName("edu_banner")
16 | public class EduBanner extends DataEntity {
17 |
18 | @ApiModelProperty(value = "链接地址")
19 | private String url;
20 |
21 | @ApiModelProperty(value = "标题")
22 | private String title;
23 |
24 | @ApiModelProperty(value = "封面")
25 | private String img;
26 |
27 | @ApiModelProperty(value = "等级排序")
28 | private Integer level;
29 | }
30 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-core/src/main/java/cn/xueden/common/core/edu/domain/EduCashOutDetails.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.core.edu.domain;
2 |
3 | import cn.xueden.common.core.web.domain.DataEntity;
4 | import com.baomidou.mybatisplus.annotation.TableName;
5 | import io.swagger.annotations.ApiModelProperty;
6 | import lombok.Data;
7 |
8 | /**功能描述:讲师提现明细实体类
9 | * @Auther:梁志杰
10 | * @Date:2021/5/26
11 | * @Description:cn.xueden.common.core.edu.domain
12 | * @version:1.0
13 | */
14 | @Data
15 | @TableName("edu_cashout_details")
16 | public class EduCashOutDetails extends DataEntity {
17 |
18 | @ApiModelProperty(value = "课程讲师ID")
19 | private Long teacherId;
20 |
21 | @ApiModelProperty(value = "提款账号")
22 | private String bankCard;
23 |
24 | @ApiModelProperty(value = "开户人")
25 | private String name;
26 |
27 | @ApiModelProperty(value = "提现金额")
28 | private Double cashOut;
29 |
30 | @ApiModelProperty(value = "状态,0待审核 1 付款完成")
31 | private Integer status;
32 |
33 |
34 |
35 | }
36 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-core/src/main/java/cn/xueden/common/core/edu/domain/EduChapter.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.core.edu.domain;
2 |
3 | import cn.xueden.common.core.web.domain.DataEntity;
4 |
5 | import com.baomidou.mybatisplus.annotation.TableName;
6 | import io.swagger.annotations.ApiModelProperty;
7 | import lombok.Data;
8 |
9 | import java.util.Date;
10 |
11 | /**功能描述:课程大章实体类
12 | * @Auther:梁志杰
13 | * @Date:2021/1/24
14 | * @Description:cn.xueden.common.core.edu.domain
15 | * @version:1.0
16 | */
17 | @Data
18 | @TableName("edu_chapter")
19 | public class EduChapter extends DataEntity {
20 |
21 | @ApiModelProperty(value = "课程ID")
22 | private Long courseId;
23 |
24 | @ApiModelProperty(value = "章节名称")
25 | private String title;
26 |
27 | @ApiModelProperty(value = "章节时长")
28 | private Float duration;
29 |
30 | @ApiModelProperty(value = "显示排序")
31 | private Integer sort;
32 |
33 | }
34 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-core/src/main/java/cn/xueden/common/core/edu/domain/EduEnvironmenParam.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.core.edu.domain;
2 |
3 | import cn.xueden.common.core.web.domain.DataEntity;
4 | import com.baomidou.mybatisplus.annotation.TableName;
5 | import io.swagger.annotations.ApiModelProperty;
6 | import lombok.Data;
7 |
8 | /**功能描述:开发环境实体类
9 | * @Auther:梁志杰
10 | * @Date:2021/2/11
11 | * @Description:cn.xueden.common.core.edu.domain
12 | * @version:1.0
13 | */
14 | @Data
15 | @TableName("edu_environmen_param")
16 | public class EduEnvironmenParam extends DataEntity {
17 |
18 | @ApiModelProperty(value = "课程ID")
19 | private Long courseId;
20 |
21 | @ApiModelProperty(value = "参数名称")
22 | private String name;
23 |
24 | @ApiModelProperty(value = "参数值")
25 | private String value;
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-core/src/main/java/cn/xueden/common/core/edu/domain/EduIncomeDetails.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.core.edu.domain;
2 |
3 | import cn.xueden.common.core.web.domain.DataEntity;
4 | import com.baomidou.mybatisplus.annotation.TableName;
5 | import io.swagger.annotations.ApiModelProperty;
6 | import lombok.Data;
7 |
8 | import java.math.BigDecimal;
9 |
10 | /**功能描述:讲师收入明细实体类
11 | * @Auther:梁志杰
12 | * @Date:2021/5/26
13 | * @Description:cn.xueden.common.core.edu.domain
14 | * @version:1.0
15 | */
16 | @Data
17 | @TableName("edu_income_details")
18 | public class EduIncomeDetails extends DataEntity {
19 | @ApiModelProperty(value = "会员ID")
20 | private Long memberId;
21 |
22 | @ApiModelProperty(value = "课程讲师ID")
23 | private Long teacherId;
24 |
25 | @ApiModelProperty(value = "订单编号")
26 | private String orderNo;
27 |
28 | @ApiModelProperty(value = "课程ID")
29 | private Long courseId;
30 |
31 | @ApiModelProperty(value = "课程销售价格")
32 | private Double price;
33 |
34 | @ApiModelProperty(value = "课程收益")
35 | private Double income;
36 |
37 |
38 |
39 | }
40 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-core/src/main/java/cn/xueden/common/core/edu/domain/EduKeyword.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.core.edu.domain;
2 |
3 | import cn.xueden.common.core.web.domain.DataEntity;
4 | import com.baomidou.mybatisplus.annotation.TableName;
5 | import io.swagger.annotations.ApiModelProperty;
6 | import lombok.Data;
7 |
8 | /**功能描述:关键词实体类
9 | * @Auther:梁志杰
10 | * @Date:2021/2/17
11 | * @Description:cn.xueden.common.core.edu.domain
12 | * @version:1.0
13 | */
14 | @Data
15 | @TableName("edu_keyword")
16 | public class EduKeyword extends DataEntity {
17 |
18 | @ApiModelProperty(value = "关键词")
19 | private String name;
20 |
21 | @ApiModelProperty(value = "搜索次数")
22 | private Integer num;
23 | }
24 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-core/src/main/java/cn/xueden/common/core/edu/domain/EduSubject.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.core.edu.domain;
2 |
3 | import cn.xueden.common.core.web.domain.DataEntity;
4 | import com.baomidou.mybatisplus.annotation.TableName;
5 | import lombok.Data;
6 |
7 | import java.util.Date;
8 |
9 | /**功能描述:课程分类实体类
10 | * @Auther:梁志杰
11 | * @Date:2021/1/19
12 | * @Description:cn.xueden.common.core.edu.domain
13 | * @version:1.0
14 | */
15 | @Data
16 | @TableName("edu_subject")
17 | public class EduSubject extends DataEntity {
18 |
19 |
20 | private String name;
21 |
22 | private Long cateId;// 对应阿里云视频点播分类
23 |
24 | private Integer sort;
25 |
26 | private Date createDate;
27 |
28 | private Date updateDate;
29 |
30 | private Long parentId;
31 | }
32 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-core/src/main/java/cn/xueden/common/core/edu/domain/EduVipType.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.core.edu.domain;
2 |
3 | import cn.xueden.common.core.web.domain.DataEntity;
4 |
5 | import com.baomidou.mybatisplus.annotation.TableName;
6 | import io.swagger.annotations.ApiModelProperty;
7 | import lombok.Data;
8 |
9 | import java.util.Date;
10 |
11 | /**功能描述:会员类型实体类
12 | * @Auther:梁志杰
13 | * @Date:2021/1/31
14 | * @Description:cn.xueden.common.core.edu.domain
15 | * @version:1.0
16 | */
17 | @Data
18 | @TableName("edu_vip_type")
19 | public class EduVipType extends DataEntity {
20 |
21 | @ApiModelProperty(value = "类型名称")
22 | private String name;
23 |
24 | @ApiModelProperty(value = "会员价格")
25 | private Double vipMoney;
26 |
27 | }
--------------------------------------------------------------------------------
/moyu-common/moyu-common-core/src/main/java/cn/xueden/common/core/edu/domain/EduVipTypeSubject.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.core.edu.domain;
2 |
3 | import cn.xueden.common.core.web.domain.DataEntity;
4 |
5 | import com.baomidou.mybatisplus.annotation.TableName;
6 | import io.swagger.annotations.ApiModelProperty;
7 | import lombok.Data;
8 |
9 | import java.util.Date;
10 |
11 | /**功能描述:会员类别和栏目关系实体类
12 | * @Auther:梁志杰
13 | * @Date:2021/1/31
14 | * @Description:cn.xueden.common.core.edu.domain
15 | * @version:1.0
16 | */
17 | @Data
18 | @TableName("edu_vip_type_subject")
19 | public class EduVipTypeSubject extends DataEntity {
20 |
21 | @ApiModelProperty(value = "会员类别ID")
22 | private Long vipId;
23 |
24 | @ApiModelProperty(value = "课程类别ID")
25 | private Long subjectId;
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-core/src/main/java/cn/xueden/common/core/edu/dto/CategoryDto.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.core.edu.dto;
2 |
3 | import lombok.Data;
4 |
5 | /**视频分类dto
6 | * @Auther:梁志杰
7 | * @Date:2021/1/20
8 | * @Description:cn.xueden.common.core.edu.dto
9 | * @version:1.0
10 | */
11 | @Data
12 | public class CategoryDto {
13 | /**
14 | * 父级Id
15 | */
16 | private Long parentId;
17 |
18 | /**
19 | * 分类Id
20 | */
21 | private Long cateId;
22 |
23 | /**
24 | * 分类名称
25 | */
26 | private String cateName;
27 |
28 | /**
29 | * 分类级别
30 | */
31 | private Long level;
32 | }
33 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-core/src/main/java/cn/xueden/common/core/edu/enums/PayStatus.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.core.edu.enums;
2 |
3 | /**功能描述:订单状态
4 | * @Auther:梁志杰
5 | * @Date:2021/2/18
6 | * @Description:cn.xueden.common.core.edu.enums
7 | * @version:1.0
8 | */
9 | public enum PayStatus {
10 | NO_PAY("0", "未付款"),
11 | YES_PAY("1", "已付款"),
12 | REFUND_PAY("2", "已退款");
13 |
14 | private final String code;
15 |
16 | private final String info;
17 |
18 | PayStatus(String code, String info) {
19 | this.code = code;
20 | this.info = info;
21 | }
22 |
23 | public String getCode() {
24 | return code;
25 | }
26 |
27 | public String getInfo() {
28 | return info;
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-core/src/main/java/cn/xueden/common/core/edu/vo/EduCashOutDetailsVO.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.core.edu.vo;
2 |
3 | import lombok.Data;
4 |
5 | /**功能描述:讲师提现视图对象
6 | * @Auther:梁志杰
7 | * @Date:2021/5/28
8 | * @Description:cn.xueden.common.core.edu.vo
9 | * @version:1.0
10 | */
11 | @Data
12 | public class EduCashOutDetailsVO {
13 |
14 | private Long teacherId;
15 |
16 | private String bankCard;
17 |
18 | private Integer status;
19 |
20 | }
21 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-core/src/main/java/cn/xueden/common/core/edu/vo/EduChapterVO.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.core.edu.vo;
2 |
3 | import cn.xueden.common.core.edu.domain.EduVideo;
4 | import lombok.Data;
5 |
6 | import java.util.Date;
7 | import java.util.List;
8 |
9 | /**功能描述:章节视图对象
10 | * @Auther:梁志杰
11 | * @Date:2021/1/24
12 | * @Description:cn.xueden.common.core.edu.vo
13 | * @version:1.0
14 | */
15 | @Data
16 | public class EduChapterVO {
17 | private Long id;
18 |
19 | private Long courseId;
20 |
21 | private String title;
22 |
23 | private String remarks;
24 |
25 | private Float duration;
26 |
27 | private Integer sort;
28 |
29 | private Date createDate;
30 |
31 | private Date updateDate;
32 |
33 | private List children;
34 | }
35 |
36 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-core/src/main/java/cn/xueden/common/core/edu/vo/EduIncomeDetailsVO.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.core.edu.vo;
2 |
3 | import io.swagger.annotations.ApiModelProperty;
4 | import lombok.Data;
5 |
6 | import java.math.BigDecimal;
7 | import java.util.Date;
8 |
9 | /**功能描述:讲师收益视图对象
10 | * @Auther:梁志杰
11 | * @Date:2021/5/26
12 | * @Description:cn.xueden.common.core.edu.vo
13 | * @version:1.0
14 | */
15 | @Data
16 | public class EduIncomeDetailsVO {
17 |
18 |
19 | // 会员ID
20 | private Long memberId;
21 |
22 | // 会员名称
23 | private String memberName;
24 |
25 | // 讲师ID
26 | private Long teacherId;
27 |
28 | // 订单编号
29 | private String orderNo;
30 |
31 | // 课程ID
32 | private Long courseId;
33 |
34 | // 课程名称
35 | private String courseName;
36 |
37 | // 课程价格
38 | private Double price;
39 |
40 | // 课程收益
41 | private Double income;
42 |
43 | // 交易日期
44 | protected Date createDate;
45 | }
46 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-core/src/main/java/cn/xueden/common/core/edu/vo/EduMemberBuyCourseVO.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.core.edu.vo;
2 |
3 | import cn.xueden.common.core.edu.domain.EduCourse;
4 | import io.swagger.annotations.ApiModelProperty;
5 | import lombok.Data;
6 |
7 | import java.math.BigDecimal;
8 |
9 | /**
10 | * @Auther:梁志杰
11 | * @Date:2021/2/18
12 | * @Description:cn.xueden.common.core.edu.vo
13 | * @version:1.0
14 | */
15 | @Data
16 | public class EduMemberBuyCourseVO {
17 |
18 | private String orderNo;
19 |
20 | private Long courseId;
21 |
22 | private Long memberId;
23 |
24 | private BigDecimal price;
25 |
26 | private Long buyType;
27 |
28 | private Integer isPayment;
29 |
30 | private String payChannel;
31 |
32 | private String country;
33 |
34 | private String area;
35 |
36 | private String province;
37 |
38 | private String city;
39 |
40 | private String isp;
41 |
42 | // 课程对象信息
43 | private EduCourse eduCourse;
44 | }
45 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-core/src/main/java/cn/xueden/common/core/edu/vo/EduMemberVO.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.core.edu.vo;
2 |
3 | import lombok.Data;
4 |
5 | import java.util.Date;
6 |
7 | /**功能描述:会员实体对象
8 | * @Auther:梁志杰
9 | * @Date:2021/1/30
10 | * @Description:cn.xueden.common.core.edu.vo
11 | * @version:1.0
12 | */
13 | @Data
14 | public class EduMemberVO {
15 |
16 | private Long id;
17 |
18 | private Long userid;
19 |
20 | private String username;
21 |
22 | private String openid;
23 |
24 | private String mobile;
25 |
26 | private String password;
27 |
28 | private String nickname;
29 |
30 | private String email;
31 |
32 | private Integer sex;
33 |
34 | private String avatar;
35 |
36 | private String sign;
37 |
38 | private int isTeacher;
39 |
40 | private Long teacherId;
41 |
42 | private Long vipId;
43 |
44 | private String vipType;
45 |
46 | private String token;
47 |
48 | /**
49 | * 登陆时间
50 | */
51 | private Long loginTime;
52 |
53 | /**
54 | * 过期时间
55 | */
56 | private Long expireTime;
57 |
58 | /**
59 | * 验证码
60 | */
61 | private String code;
62 | }
63 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-core/src/main/java/cn/xueden/common/core/edu/vo/EduTeacherVO.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.core.edu.vo;
2 |
3 | import lombok.Data;
4 |
5 | import java.util.Date;
6 |
7 | /**功能描述:讲师视图对象类
8 | * @Auther:梁志杰
9 | * @Date:2021/1/22
10 | * @Description:cn.xueden.common.core.edu.vo
11 | * @version:1.0
12 | */
13 | @Data
14 | public class EduTeacherVO {
15 |
16 | // 讲师ID
17 | private Long id;
18 |
19 | // 讲师姓名
20 | private String name;
21 |
22 | // 讲师资历,一句话说明讲师
23 | private String intro;
24 |
25 | // 讲师简介
26 | private String remarks;
27 |
28 | // 讲师头像
29 | private String avatar;
30 |
31 | // 头衔 1高级讲师 2首席讲师
32 | private Integer level;
33 |
34 | // 排序
35 | private Integer sort;
36 |
37 | // 创建时间
38 | private Date createDate;
39 |
40 | // 修改时间
41 | private Date updateDate;
42 | }
43 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-core/src/main/java/cn/xueden/common/core/edu/vo/EduVideoMemberVO.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.core.edu.vo;
2 |
3 | import cn.xueden.common.core.edu.domain.EduVideo;
4 | import lombok.Data;
5 |
6 | /**功能描述:视频观看记录视图类
7 | * @Auther:梁志杰
8 | * @Date:2021/2/18
9 | * @Description:cn.xueden.common.core.edu.vo
10 | * @version:1.0
11 | */
12 | @Data
13 | public class EduVideoMemberVO {
14 |
15 | private Long playCount;
16 |
17 | private Float duration;
18 |
19 | private EduVideo eduVideo;
20 | }
21 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-core/src/main/java/cn/xueden/common/core/edu/vo/EduVideoVO.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.core.edu.vo;
2 |
3 | import com.fasterxml.jackson.annotation.JsonFormat;
4 | import lombok.Data;
5 |
6 | import java.util.Date;
7 |
8 | /**功能描述:课程小节视图类
9 | * @Auther:梁志杰
10 | * @Date:2021/1/30
11 | * @Description:cn.xueden.common.core.edu.vo
12 | * @version:1.0
13 | */
14 | @Data
15 | public class EduVideoVO {
16 | private Long id;
17 |
18 | private Long courseId;
19 |
20 | private Long chapterId;
21 |
22 | private String title;
23 |
24 | private Integer sort;
25 |
26 | private Long playCount;
27 |
28 | private Integer isFree;
29 |
30 | private String videoSourceId;
31 |
32 | private Float duration;
33 |
34 | private Integer previewDuration; // 预览时长
35 |
36 | private String status;
37 |
38 | private Long size;
39 |
40 | private Long version;
41 |
42 | @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
43 | private Date createDate;
44 |
45 | @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
46 | private Date updateDate;
47 |
48 | private String videoOriginalName;
49 |
50 | private Integer displayAds; // 是否显示广告,0表示显示,1表示不显示
51 | }
52 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-core/src/main/java/cn/xueden/common/core/edu/vo/EduVipTypeSubjectVO.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.core.edu.vo;
2 |
3 | import lombok.Data;
4 |
5 | /**功能描述:会员权益视图对象
6 | * @Auther:梁志杰
7 | * @Date:2021/1/31
8 | * @Description:cn.xueden.common.core.edu.vo
9 | * @version:1.0
10 | */
11 | @Data
12 | public class EduVipTypeSubjectVO {
13 | private Long id;
14 |
15 | private Long vipId; // 会员类型ID
16 |
17 | private String vipName;// 会员类型名称
18 |
19 | private Long subjectId; // 课程栏目ID
20 |
21 | private String subjectName;// 课程栏目名称
22 | }
23 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-core/src/main/java/cn/xueden/common/core/edu/vo/EduVipTypeVO.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.core.edu.vo;
2 |
3 | import cn.xueden.common.core.edu.domain.EduSubject;
4 | import com.fasterxml.jackson.annotation.JsonFormat;
5 | import lombok.Data;
6 |
7 | import java.io.Serializable;
8 | import java.util.Date;
9 | import java.util.List;
10 | import java.util.Set;
11 |
12 | /**功能描述:会员类型视图对象类
13 | * @Auther:梁志杰
14 | * @Date:2021/1/31
15 | * @Description:cn.xueden.common.core.edu.vo
16 | * @version:1.0
17 | */
18 | @Data
19 | public class EduVipTypeVO implements Serializable {
20 |
21 | private static final long serialVersionUID = 1L;
22 |
23 | private Long id;
24 |
25 | private String name;
26 |
27 | private Double vipMoney;
28 |
29 | private int memberTotal;
30 |
31 | @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
32 | private Date createDate;
33 |
34 | @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
35 | private Date updateDate;
36 |
37 | // 会员类型已有权益
38 | private Set courseTypeSets;
39 |
40 | // 课程类别列表数据
41 | private List courseTypeList;
42 | }
43 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-core/src/main/java/cn/xueden/common/core/edu/vo/MyCourseVO.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.core.edu.vo;
2 |
3 | import lombok.Data;
4 |
5 | /**功能描述:我的课程视图对象
6 | * @Auther:梁志杰
7 | * @Date:2021/2/18
8 | * @Description:cn.xueden.common.core.edu.vo
9 | * @version:1.0
10 | */
11 | @Data
12 | public class MyCourseVO {
13 |
14 | // 当前页
15 | private Integer pageNo;
16 |
17 | //每页显示记录
18 | private Integer pageSize;
19 |
20 | }
21 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-core/src/main/java/cn/xueden/common/core/edu/vo/PageVO.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.core.edu.vo;
2 |
3 | import com.baomidou.mybatisplus.core.metadata.IPage;
4 | import lombok.Data;
5 |
6 | import java.io.Serializable;
7 | import java.util.ArrayList;
8 | import java.util.List;
9 |
10 | /**功能描述:页面视图对象
11 | * @Auther:梁志杰
12 | * @Date:2021/1/19
13 | * @Description:cn.xueden.common.core.edu.vo
14 | * @version:1.0
15 | */
16 | @Data
17 | public class PageVO implements Serializable {
18 |
19 | private static final long serialVersionUID = 9115570069735566900L;
20 | private long total;
21 |
22 | public PageVO() {
23 | }
24 |
25 | private List rows = new ArrayList<>();
26 |
27 | public PageVO(long total, List rows) {
28 | this.total = total;
29 | this.rows = rows;
30 | }
31 |
32 |
33 | }
34 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-core/src/main/java/cn/xueden/common/core/edu/vo/PassWordVO.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.core.edu.vo;
2 |
3 | import lombok.Data;
4 |
5 | /**功能描述:密码实体对象
6 | * @Auther:梁志杰
7 | * @Date:2021/2/19
8 | * @Description:cn.xueden.common.core.edu.vo
9 | * @version:1.0
10 | */
11 | @Data
12 | public class PassWordVO {
13 |
14 | // 手机号
15 | private String mobile;
16 |
17 | // 验证码
18 | private String code;
19 |
20 | // 原密码
21 | private String passWord;
22 |
23 | // 新密码
24 | private String newPassWord;
25 |
26 | // 确认新密码
27 | private String resNewPassWord;
28 | }
29 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-core/src/main/java/cn/xueden/common/core/edu/vo/RegisterMemberVO.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.core.edu.vo;
2 |
3 | import lombok.Data;
4 |
5 | /**
6 | * @Auther:梁志杰
7 | * @Date:2021/2/17
8 | * @Description:cn.xueden.common.core.edu.vo
9 | * @version:1.0
10 | */
11 | @Data
12 | public class RegisterMemberVO {
13 |
14 | // 手机号
15 | private String mobile;
16 |
17 | // 注册密码
18 | private String password;
19 |
20 | // 确认密码
21 | private String rePassword;
22 |
23 | // 验证码
24 | private String code;
25 |
26 | }
27 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-core/src/main/java/cn/xueden/common/core/edu/vo/SubjectTransferItemVO.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.core.edu.vo;
2 |
3 |
4 | import lombok.Data;
5 |
6 |
7 |
8 | /**功能描述:转成前端需要的课程IDItem
9 | * @Auther:梁志杰
10 | * @Date:2021/1/20
11 | * @Description:cn.xueden.common.core.edu.vo
12 | * @version:1.0
13 | */
14 | @Data
15 | public class SubjectTransferItemVO {
16 | private Long key;
17 |
18 | private String label;
19 |
20 | private boolean disabled;
21 | }
22 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-core/src/main/java/cn/xueden/common/core/enums/UserStatus.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.core.enums;
2 |
3 | /**功能描述:用户状态
4 | * @Auther:梁志杰
5 | * @Date:2020/9/25
6 | * @Description:cn.xueden.common.core.enums
7 | * @version:1.0
8 | */
9 | public enum UserStatus {
10 | OK("0", "正常"), DISABLE("1", "停用"), DELETED("2", "删除");
11 |
12 | private final String code;
13 | private final String info;
14 |
15 | UserStatus(String code, String info)
16 | {
17 | this.code = code;
18 | this.info = info;
19 | }
20 |
21 | public String getCode()
22 | {
23 | return code;
24 | }
25 |
26 | public String getInfo()
27 | {
28 | return info;
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-core/src/main/java/cn/xueden/common/core/exception/CaptchaException.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.core.exception;
2 |
3 | /**功能描述:验证码错误异常类
4 | * @Auther:梁志杰
5 | * @Date:2020/9/25
6 | * @Description:cn.xueden.common.core.exception
7 | * @version:1.0
8 | */
9 | public class CaptchaException extends RuntimeException{
10 |
11 | private static final long serialVersionUID = 1L;
12 |
13 | public CaptchaException(String msg)
14 | {
15 | super(msg);
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-core/src/main/java/cn/xueden/common/core/exception/CustomException.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.core.exception;
2 |
3 | /**功能描述:自定义异常
4 | * @Auther:梁志杰
5 | * @Date:2020/9/24
6 | * @Description:cn.xueden.common.core.exception
7 | * @version:1.0
8 | */
9 | public class CustomException extends RuntimeException{
10 | private static final long serialVersionUID = 1L;
11 |
12 | private Integer code;
13 |
14 | private String message;
15 |
16 | public CustomException(String message)
17 | {
18 | this.message = message;
19 | }
20 |
21 | public CustomException(String message, Integer code)
22 | {
23 | this.message = message;
24 | this.code = code;
25 | }
26 |
27 | public CustomException(String message, Throwable e)
28 | {
29 | super(message, e);
30 | this.message = message;
31 | }
32 |
33 | @Override
34 | public String getMessage()
35 | {
36 | return message;
37 | }
38 |
39 | public Integer getCode()
40 | {
41 | return code;
42 | }
43 | }
44 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-core/src/main/java/cn/xueden/common/core/exception/DemoModeException.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.core.exception;
2 |
3 | /**功能描述:演示模式异常
4 | * @Auther:梁志杰
5 | * @Date:2020/9/24
6 | * @Description:cn.xueden.common.core.exception
7 | * @version:1.0
8 | */
9 | public class DemoModeException extends RuntimeException{
10 | private static final long serialVersionUID = 1L;
11 |
12 | public DemoModeException()
13 | {
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-core/src/main/java/cn/xueden/common/core/exception/PreAuthorizeException.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.core.exception;
2 |
3 | /**功能描述:权限异常
4 | * @Auther:梁志杰
5 | * @Date:2020/9/24
6 | * @Description:cn.xueden.common.core.exception
7 | * @version:1.0
8 | */
9 | public class PreAuthorizeException extends RuntimeException{
10 |
11 | private static final long serialVersionUID = 1L;
12 |
13 | public PreAuthorizeException()
14 | {
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-core/src/main/java/cn/xueden/common/core/exception/UtilException.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.core.exception;
2 |
3 | /**功能描述:工具类异常
4 | * @Auther:梁志杰
5 | * @Date:2020/9/24
6 | * @Description:cn.xueden.common.core.exception
7 | * @version:1.0
8 | */
9 | public class UtilException extends RuntimeException{
10 | private static final long serialVersionUID = 8247610319171014183L;
11 |
12 | public UtilException(Throwable e)
13 | {
14 | super(e.getMessage(), e);
15 | }
16 |
17 | public UtilException(String message)
18 | {
19 | super(message);
20 | }
21 |
22 | public UtilException(String message, Throwable throwable)
23 | {
24 | super(message, throwable);
25 | }
26 |
27 | /**
28 | * 将CheckedException转换为UncheckedException.
29 | */
30 | public static RuntimeException unchecked(Exception e) {
31 | if (e instanceof RuntimeException) {
32 | return (RuntimeException) e;
33 | } else {
34 | return new RuntimeException(e);
35 | }
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-elasticsearch/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
5 |
6 | moyu-common
7 | cn.xueden
8 | 1.0.0
9 |
10 | 4.0.0
11 |
12 | moyu-common-elasticsearch
13 |
14 | moyu-common-elasticsearch
15 | 搜索模块
16 |
17 |
18 |
19 |
20 |
21 | org.springframework.boot
22 | spring-boot-starter-data-elasticsearch
23 |
24 |
25 |
26 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-log/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
5 |
6 | moyu-common
7 | cn.xueden
8 | 1.0.0
9 |
10 | 4.0.0
11 |
12 | moyu-common-log
13 |
14 | moyu-common-log
15 | 日志记录模块
16 |
17 |
18 |
19 | cn.xueden
20 | moyu-common-security
21 |
22 |
23 |
24 |
32 |
33 |
34 |
35 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-log/src/main/java/cn/xueden/common/log/annotation/XudenOtherSystemLog.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.log.annotation;
2 |
3 | import java.lang.annotation.*;
4 |
5 | /**功能描述:其他系统日志注解
6 | * @Auther:http://www.xueden.cn
7 | * @Date:2021/1/21
8 | * @Description:cn.xueden.annotation
9 | * @version:1.0
10 | */
11 | @Target(ElementType.METHOD)
12 | @Retention(RetentionPolicy.RUNTIME)
13 | @Documented
14 | public @interface XudenOtherSystemLog {
15 |
16 | String value() default "";
17 | }
18 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-log/src/main/java/cn/xueden/common/log/annotation/XudenSysLog.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.log.annotation;
2 |
3 | import java.lang.annotation.*;
4 |
5 | /**功能描述:系统日志注解
6 | * @Auther:http://www.xueden.cn
7 | * @Date:2020/3/6
8 | * @Description:cn.xueden.annotation
9 | * @version:1.0
10 | */
11 | @Target(ElementType.METHOD)
12 | @Retention(RetentionPolicy.RUNTIME)
13 | @Documented
14 | public @interface XudenSysLog {
15 |
16 | String value() default "";
17 | }
18 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-log/src/main/resources/META-INF/spring.factories:
--------------------------------------------------------------------------------
1 | org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
2 | cn.xueden.common.log.aspect.OtherWebLogAspect,\
3 | cn.xueden.common.log.aspect.WebLogAspect
4 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-mybatis-plus/src/main/resources/META-INF/spring.factories:
--------------------------------------------------------------------------------
1 | org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
2 | cn.xueden.mybatis.config.MybatisPlusConfig,\
3 | cn.xueden.mybatis.config.SysMetaObjectHandler,\
4 | cn.xueden.mybatis.config.SpringUtil
5 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-redis/src/main/resources/META-INF/spring.factories:
--------------------------------------------------------------------------------
1 | org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
2 | cn.xueden.common.redis.configure.RedisConfig,\
3 | cn.xueden.common.redis.service.RedisService
4 |
5 |
6 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-security/src/main/java/cn/xueden/common/security/annotation/EnableCustomConfig.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.security.annotation;
2 |
3 | import cn.xueden.common.security.config.ApplicationConfig;
4 | import org.mybatis.spring.annotation.MapperScan;
5 | import org.springframework.context.annotation.EnableAspectJAutoProxy;
6 | import org.springframework.context.annotation.Import;
7 | import org.springframework.scheduling.annotation.EnableAsync;
8 |
9 | import java.lang.annotation.*;
10 |
11 | /**功能描述:自定义注解
12 | * @Auther:梁志杰
13 | * @Date:2020/9/24
14 | * @Description:cn.xueden.common.security.annotation
15 | * @version:1.0
16 | */
17 | @Target(ElementType.TYPE)
18 | @Retention(RetentionPolicy.RUNTIME)
19 | @Documented
20 | @Inherited
21 | // 表示通过aop框架暴露该代理对象,AopContext能够访问
22 | @EnableAspectJAutoProxy(exposeProxy = true)
23 | // 指定要扫描的Mapper类的包的路径
24 | @MapperScan("cn.xueden.*.dao")
25 | // 开启线程异步执行
26 | @EnableAsync
27 | // 自动加载类
28 | @Import({ApplicationConfig.class})
29 | public @interface EnableCustomConfig {
30 | }
31 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-security/src/main/java/cn/xueden/common/security/annotation/EnableMoYuFeignClients.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.security.annotation;
2 |
3 | import org.springframework.cloud.openfeign.EnableFeignClients;
4 |
5 | import java.lang.annotation.*;
6 |
7 | /**功能描述:自定义feign注解
8 | * 添加basePackages路径
9 | * @Auther:梁志杰
10 | * @Date:2020/9/24
11 | * @Description:cn.xueden.common.security.annotation
12 | * @version:1.0
13 | */
14 | @Target(ElementType.TYPE)
15 | @Retention(RetentionPolicy.RUNTIME)
16 | @Documented
17 | @EnableFeignClients
18 | public @interface EnableMoYuFeignClients {
19 |
20 | String[] value() default {};
21 |
22 | String[] basePackages() default { "cn.xueden" };
23 |
24 | Class>[] basePackageClasses() default {};
25 |
26 | Class>[] defaultConfiguration() default {};
27 |
28 | Class>[] clients() default {};
29 | }
30 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-security/src/main/java/cn/xueden/common/security/annotation/PreAuthorize.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.security.annotation;
2 |
3 | import java.lang.annotation.ElementType;
4 | import java.lang.annotation.Retention;
5 | import java.lang.annotation.RetentionPolicy;
6 | import java.lang.annotation.Target;
7 |
8 | /**功能描述:权限注解
9 | * @Auther:梁志杰
10 | * @Date:2020/9/24
11 | * @Description:cn.xueden.common.security.annotation
12 | * @version:1.0
13 | */
14 | @Target({ ElementType.TYPE, ElementType.METHOD })
15 | @Retention(RetentionPolicy.RUNTIME)
16 | public @interface PreAuthorize {
17 |
18 | /**
19 | * 验证用户是否具备某权限
20 | */
21 | public String hasPermi() default "";
22 |
23 | /**
24 | * 验证用户是否不具备某权限,与 hasPermi逻辑相反
25 | */
26 | public String lacksPermi() default "";
27 |
28 | /**
29 | * 验证用户是否具有以下任意一个权限
30 | */
31 | public String[] hasAnyPermi() default {};
32 |
33 | /**
34 | * 判断用户是否拥有某个角色
35 | */
36 | public String hasRole() default "";
37 |
38 | /**
39 | * 验证用户是否不具备某角色,与 isRole逻辑相反
40 | */
41 | public String lacksRole() default "";
42 |
43 | /**
44 | * 验证用户是否具有以下任意一个角色
45 | */
46 | public String[] hasAnyRoles() default {};
47 |
48 | }
49 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-security/src/main/java/cn/xueden/common/security/config/ApplicationConfig.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.security.config;
2 |
3 | import org.springframework.boot.autoconfigure.jackson.Jackson2ObjectMapperBuilderCustomizer;
4 | import org.springframework.context.annotation.Bean;
5 |
6 | import java.util.TimeZone;
7 |
8 | /**功能描述:系统配置
9 | * @Auther:梁志杰
10 | * @Date:2020/9/24
11 | * @Description:cn.xueden.common.security.config
12 | * @version:1.0
13 | */
14 | public class ApplicationConfig {
15 |
16 | /**
17 | * 时区配置
18 | */
19 | @Bean
20 | public Jackson2ObjectMapperBuilderCustomizer jacksonObjectMapperCustomization()
21 | {
22 | return jacksonObjectMapperBuilder -> jacksonObjectMapperBuilder.timeZone(TimeZone.getDefault());
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-security/src/main/resources/META-INF/spring.factories:
--------------------------------------------------------------------------------
1 | org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
2 | cn.xueden.common.security.service.TokenService,\
3 | cn.xueden.common.security.aspect.PreAuthorizeAspect,\
4 | cn.xueden.common.security.handler.GlobalExceptionHandler
5 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-swagger/src/main/java/cn/xueden/common/swagger/annotation/EnableCustomSwagger2.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.common.swagger.annotation;
2 |
3 | import cn.xueden.common.swagger.config.SwaggerAutoConfiguration;
4 | import org.springframework.context.annotation.Import;
5 |
6 | import java.lang.annotation.*;
7 |
8 | /**功能描述:自定义注解
9 | * @Auther:梁志杰
10 | * @Date:2020/9/25
11 | * @Description:cn.xueden.common.swagger.annotation
12 | * @version:1.0
13 | */
14 | @Target({ ElementType.TYPE })
15 | @Retention(RetentionPolicy.RUNTIME)
16 | @Documented
17 | @Inherited
18 | @Import({ SwaggerAutoConfiguration.class })
19 | public @interface EnableCustomSwagger2 {
20 | }
21 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-wechatpay/src/main/java/cn/xueden/wechat/dto/AmountDto.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.wechat.dto;
2 |
3 | import lombok.AllArgsConstructor;
4 | import lombok.Data;
5 | import lombok.NoArgsConstructor;
6 |
7 | /**
8 | * @Auther:梁志杰
9 | * @Date:2021/5/21
10 | * @Description:cn.xueden.wechat.dto
11 | * @version:1.0
12 | */
13 | @Data
14 | @NoArgsConstructor
15 | @AllArgsConstructor
16 | public class AmountDto {
17 |
18 | /**
19 | * 订单总金额,单位为分
20 | */
21 | private Integer total;
22 |
23 | /**
24 | * 货币类型,CNY:人民币
25 | */
26 | private String currency;
27 | }
28 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-wechatpay/src/main/java/cn/xueden/wechat/dto/WxOrderDto.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.wechat.dto;
2 |
3 | import lombok.Data;
4 |
5 | /**功能描述:微信支付下单请求参数
6 | * @Auther:梁志杰
7 | * @Date:2021/5/21
8 | * @Description:cn.xueden.wechat.dto
9 | * @version:1.0
10 | */
11 | @Data
12 | public class WxOrderDto {
13 |
14 | /**
15 | * 应用ID, 由微信生成的应用ID,全局唯一
16 | */
17 | private String appid;
18 |
19 | /**
20 | * 直连商户号
21 | */
22 | private String mchid;
23 |
24 | /**
25 | * 商品描述
26 | */
27 | private String description;
28 |
29 | /**
30 | * 商户订单号
31 | */
32 | private String out_trade_no;
33 |
34 | /**
35 | * 通知地址
36 | */
37 | private String notify_url;
38 |
39 | /**
40 | * 金额
41 | */
42 | private AmountDto amount;
43 | }
44 |
--------------------------------------------------------------------------------
/moyu-common/moyu-common-wechatpay/src/main/resources/META-INF/spring.factories:
--------------------------------------------------------------------------------
1 | org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
2 | cn.xueden.wechat.config.WechatConfig,\
3 | cn.xueden.wechat.service.WxPayService
4 |
5 |
6 |
--------------------------------------------------------------------------------
/moyu-common/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
5 |
6 | moyu-cloud
7 | cn.xueden
8 | 1.0.0
9 |
10 | 4.0.0
11 |
12 | moyu-common
13 | pom
14 |
15 | moyu-common
16 | 通用模块
17 |
18 | moyu-common-redis
19 | moyu-common-log
20 | moyu-common-security
21 | moyu-common-core
22 | moyu-common-swagger
23 | moyu-common-mybatis-plus
24 | moyu-common-alivod
25 | moyu-common-wechatpay
26 | moyu-common-elasticsearch
27 | moyu-common-alipay
28 |
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/moyu-gateway/Dockerfile:
--------------------------------------------------------------------------------
1 | #获取base image
2 | FROM adoptopenjdk/openjdk8:latest
3 | MAINTAINER goodym 11184629@qq.com
4 |
5 | #类似于linux copy指令
6 | COPY moyu-gateway-1.0.0.jar /opt/app/layuicloud/
7 | #对外端口
8 | EXPOSE 7000
9 | #执行命令 java -jar /opt/app/layuicloud/moyu-gateway-1.0.0.jar
10 | ENTRYPOINT ["java","-Xmx256m", "-jar", "/opt/app/layuicloud/moyu-gateway-1.0.0.jar","--spring.profiles.active=dev","-c"]
11 |
--------------------------------------------------------------------------------
/moyu-gateway/src/main/java/cn/xueden/gateway/config/GeetestConfig.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.gateway.config;
2 |
3 | /**
4 | * GeetestWeb配置文件
5 | *
6 | *
7 | */
8 | public class GeetestConfig {
9 |
10 | // 填入自己的captcha_id和private_key
11 | private static final String geetest_id = "6f6cc91f5a4d9d588a00b815b27856fe";
12 | private static final String geetest_key = "10672f2c061d2c2564aa45632cf0d4f3";
13 | private static final boolean newfailback = true;
14 |
15 | public static final String getGeetest_id() {
16 | return geetest_id;
17 | }
18 |
19 | public static final String getGeetest_key() {
20 | return geetest_key;
21 | }
22 |
23 | public static final boolean isnewfailback() {
24 | return newfailback;
25 | }
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/moyu-gateway/src/main/java/cn/xueden/gateway/config/properties/IgnoreWhiteProperties.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.gateway.config.properties;
2 |
3 | import org.springframework.boot.context.properties.ConfigurationProperties;
4 | import org.springframework.cloud.context.config.annotation.RefreshScope;
5 | import org.springframework.context.annotation.Configuration;
6 |
7 | import java.util.ArrayList;
8 | import java.util.List;
9 |
10 | /**功能描述:放行白名单配置
11 | * @Auther:梁志杰
12 | * @Date:2020/9/24
13 | * @Description:cn.xueden.gateway.config.properties
14 | * @version:1.0
15 | */
16 | @Configuration
17 | @RefreshScope
18 | @ConfigurationProperties(prefix = "ignore")
19 | public class IgnoreWhiteProperties {
20 |
21 | /**
22 | * 放行白名单配置,网关不校验此处的白名单
23 | */
24 | private List whites = new ArrayList<>();
25 |
26 | public List getWhites()
27 | {
28 | return whites;
29 | }
30 |
31 | public void setWhites(List whites)
32 | {
33 | this.whites = whites;
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/moyu-gateway/src/main/java/cn/xueden/gateway/response/ErrorResponse.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.gateway.response;
2 |
3 | import lombok.Getter;
4 | import org.springframework.http.HttpStatus;
5 |
6 | import java.time.LocalDateTime;
7 |
8 | /**
9 | * @Auther:梁志杰
10 | * @Date:2021/10/30
11 | * @Description:cn.xueden.gateway.response
12 | * @version:1.0
13 | */
14 | @Getter
15 | public class ErrorResponse {
16 |
17 | private LocalDateTime timestamp;
18 |
19 | private int status;
20 |
21 | private String error;
22 |
23 | private String message;
24 |
25 | public ErrorResponse(HttpStatus httpStatus, String errCode, String message) {
26 | this.timestamp = LocalDateTime.now();
27 | this.status = httpStatus.value();
28 | this.error = errCode;
29 | this.message = message;
30 | }
31 |
32 | public ErrorResponse(String errCode, String message) {
33 | this.timestamp = LocalDateTime.now();
34 | this.error = errCode;
35 | this.message = message;
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/moyu-gateway/src/main/java/cn/xueden/gateway/service/IValidateCodeService.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.gateway.service;
2 |
3 | import cn.xueden.common.core.exception.CaptchaException;
4 | import cn.xueden.common.core.web.domain.AjaxResult;
5 |
6 | import java.io.IOException;
7 |
8 | /**功能描述:验证码处理接口
9 | * @Auther:梁志杰
10 | * @Date:2020/9/25
11 | * @Description:cn.xueden.gateway.service
12 | * @version:1.0
13 | */
14 | public interface IValidateCodeService {
15 |
16 | /**
17 | * 生成验证码
18 | */
19 | public AjaxResult createCapcha() throws IOException, CaptchaException;
20 |
21 | /**
22 | * 校验验证码
23 | */
24 | public void checkCapcha(String key, String value) throws CaptchaException;
25 |
26 | }
27 |
--------------------------------------------------------------------------------
/moyu-gateway/src/main/java/cn/xueden/gateway/service/TestService.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.gateway.service;
2 |
3 | import com.alibaba.csp.sentinel.annotation.SentinelResource;
4 | import org.springframework.stereotype.Service;
5 |
6 | /**
7 | * @Auther:梁志杰
8 | * @Date:2020/12/11
9 | * @Description:cn.xueden.gateway.service
10 | * @version:1.0
11 | */
12 | @Service
13 | public class TestService {
14 | @SentinelResource(value = "sayHello")
15 | public String sayHello(String name) {
16 | return "Hello, " + name;
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/moyu-gateway/src/main/resources/banner.txt:
--------------------------------------------------------------------------------
1 | _
2 | _ __ ___ ___ _ _ _ _ __ _ __ _| |_ _____ ____ _ _ _
3 | | '_ ` _ \ / _ \| | | | | | |_____ / _` |/ _` | __/ _ \ \ /\ / / _` | | | |
4 | | | | | | | (_) | |_| | |_| |_____| (_| | (_| | || __/\ V V / (_| | |_| |
5 | |_| |_| |_|\___/ \__, |\__,_| \__, |\__,_|\__\___| \_/\_/ \__,_|\__, |
6 | |___/ |___/ |___/
7 | Spring Boot Version: ${spring-boot.version}
8 | Spring Application Name: ${spring.application.name}
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/Dockerfile:
--------------------------------------------------------------------------------
1 | #获取base image
2 | FROM adoptopenjdk/openjdk8:latest
3 | MAINTAINER moyu 11184629@qq.com
4 |
5 | #类似于linux copy指令
6 | COPY moyu-edu-1.0.0.jar /opt/app/layuicloud/
7 | #对外端口
8 | EXPOSE 6000
9 | #执行命令 java -jar /opt/app/layuicloud/moyu-edu-1.0.0.jar
10 | ENTRYPOINT ["java","-Xmx256m", "-jar", "/opt/app/layuicloud/moyu-edu-1.0.0.jar","--spring.profiles.active=dev","-c"]
11 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/MoYuEduApplication.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu;
2 |
3 | import cn.xueden.common.security.annotation.EnableCustomConfig;
4 | import cn.xueden.common.security.annotation.EnableMoYuFeignClients;
5 | import cn.xueden.common.swagger.annotation.EnableCustomSwagger2;
6 | import org.springframework.boot.SpringApplication;
7 | import org.springframework.cloud.client.SpringCloudApplication;
8 | import org.springframework.scheduling.annotation.EnableAsync;
9 |
10 | /**
11 | * 在线教育模块
12 | *
13 | */
14 | @EnableCustomConfig
15 | @EnableMoYuFeignClients
16 | @EnableCustomSwagger2
17 | @SpringCloudApplication
18 | @EnableAsync
19 | public class MoYuEduApplication
20 | {
21 | public static void main( String[] args )
22 | {
23 | SpringApplication.run(MoYuEduApplication.class, args);
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/config/GeetestConfig.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.config;
2 |
3 | import lombok.Data;
4 | import org.springframework.boot.context.properties.ConfigurationProperties;
5 | import org.springframework.context.annotation.Configuration;
6 |
7 | /**
8 | * GeetestWeb配置文件
9 | *
10 | *
11 | */
12 | @Configuration
13 | @ConfigurationProperties(prefix = "xueden.geetest")
14 | @Data
15 | public class GeetestConfig {
16 |
17 | // 填入自己的captcha_id和private_key
18 | private String geetest_id ;
19 |
20 | private String geetest_key ;
21 |
22 | private boolean newfailback = true;
23 |
24 |
25 |
26 | }
27 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/config/WebSocketConfig.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.config;
2 |
3 | import org.springframework.context.annotation.Bean;
4 | import org.springframework.context.annotation.Configuration;
5 | import org.springframework.web.socket.server.standard.ServerEndpointExporter;
6 |
7 | /**
8 | * @Auther:梁志杰
9 | * @Date:2021/2/10
10 | * @Description:cn.xueden.edu.config
11 | * @version:1.0
12 | */
13 | @Configuration
14 | public class WebSocketConfig {
15 | @Bean
16 | public ServerEndpointExporter serverEndpointExporter() {
17 | return new ServerEndpointExporter();
18 | }
19 |
20 | }
21 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/controller/EduEnvironmenParamController.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.controller;
2 |
3 | import io.swagger.annotations.Api;
4 | import org.springframework.web.bind.annotation.RequestMapping;
5 | import org.springframework.web.bind.annotation.RestController;
6 |
7 | /**功能描述:开发环境控制层
8 | * @Auther:梁志杰
9 | * @Date:2021/2/11
10 | * @Description:cn.xueden.edu.controller
11 | * @version:1.0
12 | */
13 | @Api(tags = "开发环境控制层接口")
14 | @RestController
15 | @RequestMapping("/edu/environment")
16 | public class EduEnvironmenParamController {
17 | }
18 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/converter/EduVideoConverter.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.converter;
2 |
3 | import cn.xueden.common.core.edu.domain.EduVideo;
4 | import cn.xueden.common.core.edu.vo.EduVideoVO;
5 | import org.springframework.beans.BeanUtils;
6 |
7 | /**功能描述:课时转换类
8 | * @Auther:梁志杰
9 | * @Date:2021/1/30
10 | * @Description:cn.xueden.edu.converter
11 | * @version:1.0
12 | */
13 | public class EduVideoConverter {
14 | /**
15 | * 转vo
16 | * @param eduVideo
17 | * @return
18 | */
19 | public static EduVideoVO converterToEduChapterVO(EduVideo eduVideo) {
20 | EduVideoVO eduVideoVO = new EduVideoVO();
21 | BeanUtils.copyProperties(eduVideo,eduVideoVO);
22 | return eduVideoVO;
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/dao/EduBannerDao.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.dao;
2 |
3 | import cn.xueden.common.core.edu.domain.EduBanner;
4 | import com.baomidou.mybatisplus.core.mapper.BaseMapper;
5 | import org.springframework.stereotype.Repository;
6 |
7 | /**功能描述:首页幻灯片持久层
8 | * @Auther:梁志杰
9 | * @Date:2021/2/19
10 | * @Description:cn.xueden.edu.dao
11 | * @version:1.0
12 | */
13 | @Repository
14 | public interface EduBannerDao extends BaseMapper {
15 | }
16 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/dao/EduCashOutDetailsDao.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.dao;
2 |
3 |
4 | import cn.xueden.common.core.edu.domain.EduCashOutDetails;
5 | import com.baomidou.mybatisplus.core.mapper.BaseMapper;
6 | import org.springframework.stereotype.Repository;
7 |
8 | /**功能描述:讲师提现记录持久层
9 | * @Auther:梁志杰
10 | * @Date:2021/5/28
11 | * @Description:cn.xueden.edu.dao
12 | * @version:1.0
13 | */
14 | @Repository
15 | public interface EduCashOutDetailsDao extends BaseMapper {
16 | }
17 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/dao/EduChapterDao.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.dao;
2 |
3 | import cn.xueden.common.core.edu.domain.EduChapter;
4 | /*import com.baomidou.mybatisplus.mapper.BaseMapper;*/
5 | import com.baomidou.mybatisplus.core.mapper.BaseMapper;
6 | import org.springframework.stereotype.Repository;
7 |
8 | /**
9 | * @Auther:梁志杰
10 | * @Date:2021/1/24
11 | * @Description:cn.xueden.edu.dao
12 | * @version:1.0
13 | */
14 | @Repository
15 | public interface EduChapterDao extends BaseMapper {
16 | }
17 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/dao/EduCourseDao.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.dao;
2 |
3 | import cn.xueden.common.core.edu.domain.EduCourse;
4 | /*import com.baomidou.mybatisplus.mapper.BaseMapper;*/
5 | import com.baomidou.mybatisplus.core.mapper.BaseMapper;
6 | import org.springframework.stereotype.Repository;
7 |
8 | /**
9 | * @Auther:梁志杰
10 | * @Date:2021/1/22
11 | * @Description:cn.xueden.edu.dao
12 | * @version:1.0
13 | */
14 | @Repository
15 | public interface EduCourseDao extends BaseMapper {
16 | }
17 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/dao/EduCourseElasticsearchDao.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.dao;
2 |
3 | import cn.xueden.search.domain.CourseESItem;
4 | import org.springframework.data.elasticsearch.repository.ElasticsearchRepository;
5 |
6 | /**功能描述:Elasticsearch持久层
7 | * @Auther:梁志杰
8 | * @Date:2021/2/15
9 | * @Description:cn.xueden.edu.dao
10 | * @version:1.0
11 | */
12 |
13 | public interface EduCourseElasticsearchDao extends ElasticsearchRepository {
14 | }
15 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/dao/EduDailyReportDao.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.dao;
2 |
3 |
4 | import cn.xueden.common.core.edu.domain.EduDailyReport;
5 | import com.baomidou.mybatisplus.core.mapper.BaseMapper;
6 | import org.springframework.stereotype.Repository;
7 |
8 | /**功能描述:每日统计持久层
9 | * @Auther:梁志杰
10 | * @Date:2021/5/27
11 | * @Description:cn.xueden.edu.dao
12 | * @version:1.0
13 | */
14 | @Repository
15 | public interface EduDailyReportDao extends BaseMapper {
16 | }
17 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/dao/EduDealMoneyDao.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.dao;
2 |
3 | import cn.xueden.common.core.edu.domain.EduDealMoney;
4 | import com.baomidou.mybatisplus.core.mapper.BaseMapper;
5 | import org.springframework.stereotype.Repository;
6 |
7 | /**
8 | * @Auther:梁志杰
9 | * @Date:2021/2/9
10 | * @Description:cn.xueden.edu.dao
11 | * @version:1.0
12 | */
13 | @Repository
14 | public interface EduDealMoneyDao extends BaseMapper {
15 | }
16 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/dao/EduEnvironmenParamDao.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.dao;
2 |
3 | import cn.xueden.common.core.edu.domain.EduEnvironmenParam;
4 | import com.baomidou.mybatisplus.core.mapper.BaseMapper;
5 | import org.springframework.stereotype.Repository;
6 |
7 | /**功能描述:开发环境模块持久层
8 | * @Auther:梁志杰
9 | * @Date:2021/2/11
10 | * @Description:cn.xueden.edu.dao
11 | * @version:1.0
12 | */
13 | @Repository
14 | public interface EduEnvironmenParamDao extends BaseMapper {
15 | }
16 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/dao/EduIncomeDetailsDao.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.dao;
2 |
3 |
4 | import cn.xueden.common.core.edu.domain.EduIncomeDetails;
5 | import com.baomidou.mybatisplus.core.mapper.BaseMapper;
6 | import org.springframework.stereotype.Repository;
7 |
8 | /**功能描述:讲师收益持久层
9 | * @Auther:梁志杰
10 | * @Date:2021/5/26
11 | * @Description:cn.xueden.edu.dao
12 | * @version:1.0
13 | */
14 | @Repository
15 | public interface EduIncomeDetailsDao extends BaseMapper {
16 | }
17 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/dao/EduKeywordDao.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.dao;
2 |
3 | import cn.xueden.common.core.edu.domain.EduKeyword;
4 | import com.baomidou.mybatisplus.core.mapper.BaseMapper;
5 | import org.springframework.stereotype.Repository;
6 |
7 | /**功能描述:关键词模块持久层
8 | * @Auther:梁志杰
9 | * @Date:2021/2/17
10 | * @Description:cn.xueden.edu.dao
11 | * @version:1.0
12 | */
13 | @Repository
14 | public interface EduKeywordDao extends BaseMapper {
15 | }
16 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/dao/EduMemberBuyCourseDao.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.dao;
2 |
3 | import cn.xueden.common.core.edu.domain.EduMemberBuyCourse;
4 | /*import com.baomidou.mybatisplus.mapper.BaseMapper;*/
5 | import com.baomidou.mybatisplus.core.mapper.BaseMapper;
6 | import org.springframework.stereotype.Repository;
7 |
8 | /**
9 | * @Auther:梁志杰
10 | * @Date:2021/1/30
11 | * @Description:cn.xueden.edu.dao
12 | * @version:1.0
13 | */
14 | @Repository
15 | public interface EduMemberBuyCourseDao extends BaseMapper {
16 | }
17 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/dao/EduMemberBuyVipDao.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.dao;
2 |
3 | import cn.xueden.common.core.edu.domain.EduMemberBuyVip;
4 | /*import com.baomidou.mybatisplus.mapper.BaseMapper;*/
5 | import com.baomidou.mybatisplus.core.mapper.BaseMapper;
6 | import org.springframework.stereotype.Repository;
7 |
8 | /**功能描述:会员购买记录持久层
9 | * @Auther:梁志杰
10 | * @Date:2021/1/31
11 | * @Description:cn.xueden.edu.dao
12 | * @version:1.0
13 | */
14 | @Repository
15 | public interface EduMemberBuyVipDao extends BaseMapper {
16 | }
17 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/dao/EduMemberDao.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.dao;
2 |
3 | import cn.xueden.common.core.edu.domain.EduMember;
4 | /*import com.baomidou.mybatisplus.mapper.BaseMapper;*/
5 | import com.baomidou.mybatisplus.core.mapper.BaseMapper;
6 | import org.springframework.stereotype.Repository;
7 |
8 | /**
9 | * @Auther:梁志杰
10 | * @Date:2021/1/30
11 | * @Description:cn.xueden.edu.dao
12 | * @version:1.0
13 | */
14 | @Repository
15 | public interface EduMemberDao extends BaseMapper {
16 | }
17 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/dao/EduSubjectDao.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.dao;
2 |
3 | import cn.xueden.common.core.edu.domain.EduSubject;
4 | /*import com.baomidou.mybatisplus.mapper.BaseMapper;*/
5 | import com.baomidou.mybatisplus.core.mapper.BaseMapper;
6 | import org.springframework.stereotype.Repository;
7 |
8 | /**功能描述:课程分类持久层
9 | * @Auther:梁志杰
10 | * @Date:2021/1/20
11 | * @Description:cn.xueden.edu.dao
12 | * @version:1.0
13 | */
14 | @Repository
15 | public interface EduSubjectDao extends BaseMapper {
16 | }
17 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/dao/EduTeacherDao.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.dao;
2 |
3 | import cn.xueden.common.core.edu.domain.EduTeacher;
4 | import com.baomidou.mybatisplus.core.mapper.BaseMapper;
5 | import org.springframework.stereotype.Repository;
6 | /*import com.baomidou.mybatisplus.mapper.BaseMapper;*/
7 |
8 | /**
9 | * @Auther:梁志杰
10 | * @Date:2021/1/22
11 | * @Description:cn.xueden.edu.dao
12 | * @version:1.0
13 | */
14 | @Repository
15 | public interface EduTeacherDao extends BaseMapper {
16 | }
17 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/dao/EduVideoDao.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.dao;
2 |
3 | import cn.xueden.common.core.edu.domain.EduVideo;
4 |
5 | import com.baomidou.mybatisplus.core.mapper.BaseMapper;
6 | import org.springframework.stereotype.Repository;
7 |
8 | /**
9 | * @Auther:梁志杰
10 | * @Date:2021/1/24
11 | * @Description:cn.xueden.edu.dao
12 | * @version:1.0
13 | */
14 | @Repository
15 | public interface EduVideoDao extends BaseMapper {
16 | }
17 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/dao/EduVideoMemberDao.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.dao;
2 |
3 | import cn.xueden.common.core.edu.domain.EduVideoMember;
4 | /*import com.baomidou.mybatisplus.mapper.BaseMapper;*/
5 | import com.baomidou.mybatisplus.core.mapper.BaseMapper;
6 | import org.springframework.stereotype.Repository;
7 |
8 | /**
9 | * @Auther:梁志杰
10 | * @Date:2021/1/30
11 | * @Description:cn.xueden.edu.dao
12 | * @version:1.0
13 | */
14 | @Repository
15 | public interface EduVideoMemberDao extends BaseMapper {
16 | }
17 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/dao/EduVipTypeDao.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.dao;
2 |
3 | import cn.xueden.common.core.edu.domain.EduVipType;
4 | /*import com.baomidou.mybatisplus.mapper.BaseMapper;*/
5 | import com.baomidou.mybatisplus.core.mapper.BaseMapper;
6 | import org.springframework.stereotype.Repository;
7 |
8 | /**
9 | * @Auther:梁志杰
10 | * @Date:2021/1/31
11 | * @Description:cn.xueden.edu.dao
12 | * @version:1.0
13 | */
14 | @Repository
15 | public interface EduVipTypeDao extends BaseMapper {
16 | }
17 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/dao/EduVipTypeSubjectDao.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.dao;
2 |
3 | import cn.xueden.common.core.edu.domain.EduVipTypeSubject;
4 | /*import com.baomidou.mybatisplus.mapper.BaseMapper;*/
5 | import com.baomidou.mybatisplus.core.mapper.BaseMapper;
6 | import org.springframework.stereotype.Repository;
7 |
8 | /**
9 | * @Auther:梁志杰
10 | * @Date:2021/1/31
11 | * @Description:cn.xueden.edu.dao
12 | * @version:1.0
13 | */
14 | @Repository
15 | public interface EduVipTypeSubjectDao extends BaseMapper {
16 | }
17 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/dto/GeetestDto.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.dto;
2 |
3 | import lombok.Data;
4 |
5 | /**Geetest返回参数,用于二次验证
6 | * @Auther:梁志杰
7 | * @Date:2021/10/30
8 | * @Description:cn.xueden.edu.dto
9 | * @version:1.0
10 | */
11 | @Data
12 | public class GeetestDto {
13 |
14 | private String geetest_challenge;
15 |
16 | private String geetest_validate;
17 |
18 | private String geetest_seccode;
19 | }
20 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/dto/PayTypeDto.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.dto;
2 |
3 | import lombok.Data;
4 |
5 | /**功能描述:订单支付方式
6 | * @Auther:梁志杰
7 | * @Date:2021/5/22
8 | * @Description:cn.xueden.edu.dto
9 | * @version:1.0
10 | */
11 | @Data
12 | public class PayTypeDto {
13 | /**
14 | * 支付渠道wxpay表示微信,alipay表示支付宝
15 | */
16 | private String payType;
17 | }
18 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/dto/WxCiphertextDto.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.dto;
2 |
3 | import lombok.Data;
4 |
5 | /**
6 | * @Auther:梁志杰
7 | * @Date:2021/5/21
8 | * @Description:cn.xueden.edu.dto
9 | * @version:1.0
10 | */
11 | @Data
12 | public class WxCiphertextDto {
13 |
14 | // 商户订单号
15 | private String out_trade_no;
16 |
17 | // 交易状态 SUCCESS:支付成功 REFUND:转入退款 NOTPAY:未支付
18 | // CLOSED:已关闭 REVOKED:已撤销(付款码支付)
19 | // USERPAYING:用户支付中(付款码支付)
20 | //PAYERROR:支付失败(其他原因,如银行返回失败)
21 | private String trade_state;
22 | }
23 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/dto/WxResourceDto.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.dto;
2 |
3 | import lombok.Data;
4 |
5 | /**功能描述: 微信通知数据
6 | * @Auther:梁志杰
7 | * @Date:2021/5/21
8 | * @Description:cn.xueden.edu.dto
9 | * @version:1.0
10 | */
11 | @Data
12 | public class WxResourceDto {
13 |
14 | // 加密算法类型 对开启结果数据进行加密的加密算法,目前只支持AEAD_AES_256_GCM
15 | private String algorithm;
16 |
17 | // 数据密文 Base64编码后的开启/停用结果数据密文
18 | private String ciphertext;
19 |
20 | // 附加数据
21 | private String associated_data;
22 |
23 | // 原始类型 原始回调类型,为transaction
24 | private String original_type;
25 |
26 | // 随机串 加密使用的随机串
27 | private String nonce;
28 | }
29 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/dto/WxResultDto.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.dto;
2 |
3 | import lombok.Data;
4 |
5 | /**功能描述:微信返回通知结果集
6 | * @Auther:梁志杰
7 | * @Date:2021/5/21
8 | * @Description:cn.xueden.edu.dto
9 | * @version:1.0
10 | */
11 | @Data
12 | public class WxResultDto {
13 |
14 | // 通知ID 通知的唯一ID
15 | private String id;
16 |
17 | // 通知创建时间
18 | private String create_time;
19 |
20 | // 通知类型 ,支付成功通知的类型为TRANSACTION.SUCCESS
21 | private String event_type;
22 |
23 | // 通知数据类型 通知的资源数据类型,支付成功通知为encrypt-resource
24 | private String resource_type;
25 |
26 | // 回调摘要
27 | private String summary;
28 |
29 | private WxResourceDto resource;
30 |
31 | }
32 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/service/IEduBannerService.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.service;
2 |
3 | import cn.xueden.common.core.edu.domain.EduBanner;
4 | import com.baomidou.mybatisplus.extension.service.IService;
5 |
6 | /**功能描述:首页幻灯片业务接口
7 | * @Auther:梁志杰
8 | * @Date:2021/2/19
9 | * @Description:cn.xueden.edu.service
10 | * @version:1.0
11 | */
12 | public interface IEduBannerService extends IService {
13 | }
14 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/service/IEduCashOutDetailsService.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.service;
2 |
3 |
4 | import cn.xueden.common.core.edu.domain.EduCashOutDetails;
5 | import com.baomidou.mybatisplus.extension.service.IService;
6 |
7 | /**功能描述:讲师提现记录业务接口
8 | * @Auther:梁志杰
9 | * @Date:2021/5/28
10 | * @Description:cn.xueden.edu.service
11 | * @version:1.0
12 | */
13 | public interface IEduCashOutDetailsService extends IService {
14 | }
15 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/service/IEduChapterService.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.service;
2 |
3 | import cn.xueden.common.core.edu.domain.EduChapter;
4 | import cn.xueden.common.core.edu.vo.EduChapterTreeNodeVO;
5 | import cn.xueden.common.core.edu.vo.EduChapterVO;
6 | import cn.xueden.common.core.edu.vo.PageVO;
7 | import com.baomidou.mybatisplus.extension.service.IService;
8 | /*import com.baomidou.mybatisplus.service.IService;*/
9 |
10 | import java.util.List;
11 |
12 | /**功能描述:课程大章大章业务接口
13 | * @Auther:梁志杰
14 | * @Date:2021/1/24
15 | * @Description:cn.xueden.edu.service
16 | * @version:1.0
17 | */
18 | public interface IEduChapterService extends IService {
19 |
20 | /**
21 | * 章节树形
22 | * @return
23 | */
24 | PageVO chapterTree(Integer pageNum, Integer pageSize, EduChapterVO eduChapterVO);
25 |
26 | /**
27 | * 查询所课程章节
28 | * @return
29 | */
30 | List findAllByEduChapter(EduChapterVO eduChapterVO);
31 |
32 | /**
33 | * 获取课程大纲
34 | * @param eduChapterVO
35 | * @return
36 | */
37 | List findAllByEduChapterAndVideo(EduChapterVO eduChapterVO);
38 |
39 | }
40 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/service/IEduDailyReportService.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.service;
2 |
3 |
4 | import cn.xueden.common.core.edu.domain.EduDailyReport;
5 | import com.baomidou.mybatisplus.extension.service.IService;
6 |
7 | /**功能描述:每日统计业务接口
8 | * @Auther:梁志杰
9 | * @Date:2021/2/19
10 | * @Description:cn.xueden.edu.service
11 | * @version:1.0
12 | */
13 | public interface IEduDailyReportService extends IService {
14 | }
15 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/service/IEduDealMoneyService.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.service;
2 |
3 | import cn.xueden.common.core.edu.domain.EduDealMoney;
4 | import com.baomidou.mybatisplus.extension.service.IService;
5 |
6 | /**功能描述:成交金额业务接口
7 | * @Auther:梁志杰
8 | * @Date:2021/2/9
9 | * @Description:cn.xueden.edu.service
10 | * @version:1.0
11 | */
12 | public interface IEduDealMoneyService extends IService {
13 |
14 | // 根据订单编号获取成交金额记录
15 | EduDealMoney getByOrderNumber(String outTradeNo);
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/service/IEduEnvironmenParamService.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.service;
2 |
3 | import cn.xueden.common.core.edu.domain.EduEnvironmenParam;
4 | import com.baomidou.mybatisplus.extension.service.IService;
5 |
6 | /**功能描述:开发环境业务接口
7 | * @Auther:梁志杰
8 | * @Date:2021/2/11
9 | * @Description:cn.xueden.edu.service
10 | * @version:1.0
11 | */
12 | public interface IEduEnvironmenParamService extends IService {
13 | }
14 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/service/IEduIncomeDetailsService.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.service;
2 |
3 | import cn.xueden.common.core.edu.domain.EduIncomeDetails;
4 |
5 | import cn.xueden.common.core.edu.vo.EduIncomeDetailsVO;
6 | import cn.xueden.common.core.edu.vo.PageVO;
7 | import com.baomidou.mybatisplus.extension.service.IService;
8 |
9 | import java.util.List;
10 |
11 | /**功能描述:讲师收入明细业务接口
12 | * @Auther:梁志杰
13 | * @Date:2021/5/26
14 | * @Description:cn.xueden.edu.service
15 | * @version:1.0
16 | */
17 | public interface IEduIncomeDetailsService extends IService {
18 |
19 | /**
20 | * 根据条件分页回去讲师收益记录
21 | * @return
22 | */
23 | PageVO getList(Integer pageNum, Integer pageSize, EduIncomeDetailsVO incomeDetailsVO);
24 |
25 | /**
26 | * 技术讲师分成收益
27 | * @param orderNo
28 | */
29 | public void teacherIncome(String orderNo);
30 |
31 |
32 | }
33 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/service/IEduKeywordService.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.service;
2 |
3 | import cn.xueden.common.core.edu.domain.EduKeyword;
4 | import com.baomidou.mybatisplus.extension.service.IService;
5 |
6 | /**功能描述:关键词业务接口
7 | * @Auther:梁志杰
8 | * @Date:2021/2/17
9 | * @Description:cn.xueden.edu.service
10 | * @version:1.0
11 | */
12 | public interface IEduKeywordService extends IService {
13 | }
14 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/service/IEduMemberBuyCourseService.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.service;
2 |
3 | import cn.xueden.common.core.edu.domain.EduMemberBuyCourse;
4 | import com.baomidou.mybatisplus.extension.service.IService;
5 |
6 | /**
7 | * @Auther:梁志杰
8 | * @Date:2021/2/9
9 | * @Description:cn.xueden.edu.service
10 | * @version:1.0
11 | */
12 | public interface IEduMemberBuyCourseService extends IService {
13 |
14 | /**
15 | * 根据订单号获取订单详情
16 | * @param orderNo
17 | * @return
18 | */
19 | EduMemberBuyCourse getByOrderNumber(String orderNo);
20 |
21 | /**
22 | * 更改订单状态
23 | * @param pay
24 | */
25 | void updatePayment(EduMemberBuyCourse pay);
26 | }
27 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/service/IEduMemberBuyVipService.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.service;
2 |
3 | import cn.xueden.common.core.edu.domain.EduMemberBuyVip;
4 |
5 | /**功能描述:用户加入VIP订单业务接口
6 | * @Auther:梁志杰
7 | * @Date:2021/2/9
8 | * @Description:cn.xueden.edu.service
9 | * @version:1.0
10 | */
11 | public interface IEduMemberBuyVipService {
12 |
13 | // 根据订单编号获取订单信息
14 | EduMemberBuyVip getByOrderNumber(String outTradeNo);
15 |
16 | // 更新订单状态
17 | void updatePayment(EduMemberBuyVip pay);
18 | }
19 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/service/IEduMemberService.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.service;
2 |
3 | import cn.xueden.common.core.edu.domain.EduMember;
4 | import com.baomidou.mybatisplus.extension.service.IService;
5 | /*import com.baomidou.mybatisplus.service.IService;*/
6 |
7 | /**功能描述:会员业务接口
8 | * @Auther:梁志杰
9 | * @Date:2021/1/30
10 | * @Description:cn.xueden.edu.service
11 | * @version:1.0
12 | */
13 | public interface IEduMemberService extends IService {
14 |
15 | /**
16 | * 统计注册会员
17 | * @return
18 | */
19 | int getMemberTotal();
20 |
21 | /**
22 | * 更新用户VIP会员类型
23 | * @param tempEduMember
24 | */
25 | void updateVip(EduMember tempEduMember);
26 | }
27 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/service/IEduSearchService.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.service;
2 |
3 | /**搜索服务
4 | * @Auther:梁志杰
5 | * @Date:2021/2/16
6 | * @Description:cn.xueden.edu.service
7 | * @version:1.0
8 | */
9 | public interface IEduSearchService {
10 |
11 | /**
12 | * 同步单个索引
13 | *
14 | * @param type 0 更新索引 1 删除索引
15 | * @param courseId 课程 id
16 | * @return
17 | */
18 | void refreshCourse(int type, Long courseId);
19 |
20 | /**
21 | * 同步所有索引
22 | *
23 | * @return
24 | */
25 | void importAllCourses();
26 |
27 |
28 | }
29 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/service/IEduTeacherService.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.service;
2 |
3 | import cn.xueden.common.core.edu.domain.EduTeacher;
4 | import com.baomidou.mybatisplus.extension.service.IService;
5 | /*import com.baomidou.mybatisplus.service.IService;*/
6 |
7 | /**功能描述:讲师 服务接口类
8 | * @Auther:梁志杰
9 | * @Date:2021/1/22
10 | * @Description:cn.xueden.edu.service
11 | * @version:1.0
12 | */
13 | public interface IEduTeacherService extends IService {
14 | }
15 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/service/IEduVideoMemberService.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.service;
2 |
3 | import cn.xueden.common.core.edu.domain.EduVideoMember;
4 | import com.baomidou.mybatisplus.extension.service.IService;
5 |
6 | /**功能描述:会员视频播放记录业务接口
7 | * @Auther:梁志杰
8 | * @Date:2021/2/18
9 | * @Description:cn.xueden.edu.service
10 | * @version:1.0
11 | */
12 | public interface IEduVideoMemberService extends IService {
13 | }
14 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/service/IEduVideoService.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.service;
2 |
3 | import cn.xueden.common.core.edu.domain.EduVideo;
4 | import cn.xueden.common.core.edu.vo.EduVideoVO;
5 | import com.baomidou.mybatisplus.extension.service.IService;
6 | /*import com.baomidou.mybatisplus.service.IService;*/
7 |
8 | /**功能描述:课程大纲小节业务接口
9 | * @Auther:梁志杰
10 | * @Date:2021/1/24
11 | * @Description:cn.xueden.edu.service
12 | * @version:1.0
13 | */
14 | public interface IEduVideoService extends IService {
15 |
16 | /**
17 | * 根据文件标志获取视频信息
18 | * @param fileKey
19 | * @return
20 | */
21 | EduVideo getVideoByfileKey(String fileKey);
22 |
23 |
24 | /**
25 | * 根据ID获取视频信息
26 | * @param id
27 | * @param token
28 | * @param ipAddress
29 | * @return
30 | */
31 | EduVideoVO getVideoInfo(Long id, String token, String ipAddress);
32 |
33 | }
34 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/service/IEduVipTypeService.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.service;
2 |
3 | import cn.xueden.common.core.edu.domain.EduMemberBuyVip;
4 | import cn.xueden.common.core.edu.domain.EduVipType;
5 | import cn.xueden.common.core.edu.vo.EduVipTypeSubjectVO;
6 | import cn.xueden.common.core.edu.vo.EduVipTypeVO;
7 | import com.baomidou.mybatisplus.core.metadata.IPage;
8 | import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
9 | import com.baomidou.mybatisplus.extension.service.IService;
10 |
11 |
12 | import java.util.List;
13 | import java.util.Set;
14 |
15 | /**功能描述:会员类型业务接口
16 | * @Auther:梁志杰
17 | * @Date:2021/1/31
18 | * @Description:cn.xueden.edu.service
19 | * @version:1.0
20 | */
21 | public interface IEduVipTypeService extends IService {
22 |
23 | // 获取所有会员类型
24 | List getAllVip();
25 |
26 | // 根据会员类型ID获取该会员类型下的权益
27 | List getVipSubject(Long vipId);
28 |
29 | // 用户加入VIP
30 | EduMemberBuyVip addVip(Long id, String token, String ipAddress);
31 |
32 | // 分页获取会员类型列表
33 | Page findVipTypeList(Integer page,Integer limit, EduVipTypeVO eduVipTypeVO);
34 |
35 | // 分配权益
36 | void assignVipType(Long id, Set rids);
37 | }
38 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/service/IEduVipTypeSubjectService.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.service;
2 |
3 | import cn.xueden.common.core.edu.domain.EduVipTypeSubject;
4 | import com.baomidou.mybatisplus.extension.service.IService;
5 |
6 | /**
7 | * @Auther:梁志杰
8 | * @Date:2021/2/2
9 | * @Description:cn.xueden.edu.service
10 | * @version:1.0
11 | */
12 | public interface IEduVipTypeSubjectService extends IService {
13 | }
14 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/service/IStatisticsService.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.service;
2 |
3 | /**功能描述:每日统计业务接口
4 | * @Auther:梁志杰
5 | * @Date:2021/5/27
6 | * @Description:cn.xueden.edu.service
7 | * @version:1.0
8 | */
9 | public interface IStatisticsService {
10 | // 每日统计
11 | void countDaily();
12 | }
13 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/service/IVodService.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.service;
2 |
3 | import cn.xueden.common.core.edu.domain.EduVideo;
4 | import cn.xueden.common.redis.service.RedisService;
5 | import org.springframework.web.multipart.MultipartFile;
6 |
7 | /**功能描述:阿里云视频点播业务接口
8 | * @Auther:梁志杰
9 | * @Date:2021/1/25
10 | * @Description:cn.xueden.edu.service
11 | * @version:1.0
12 | */
13 | public interface IVodService {
14 |
15 | // 根据文件标志获取视频信息
16 | EduVideo getVideoByfileKey(String fileKey);
17 |
18 | /**
19 | * 根据章节id实现上传视频到阿里云服务器的方法
20 | * @param file
21 | * @return
22 | */
23 | String uploadAliyunVideoById(MultipartFile file, Long id, RedisService redisService, String fileKey);
24 |
25 | /**
26 | * 根据章节id实现上传视频到阿里云服务器的方法(批量上传)
27 | * @param file
28 | * @return
29 | */
30 | String batchUploadAliyunVideoById(MultipartFile file, Long id, RedisService redisService, String fileKey,Long teacherId);
31 |
32 |
33 |
34 |
35 |
36 |
37 | }
38 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/service/impl/EduBannerServiceImpl.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.service.impl;
2 |
3 | import cn.xueden.common.core.edu.domain.EduBanner;
4 | import cn.xueden.edu.dao.EduBannerDao;
5 | import cn.xueden.edu.service.IEduBannerService;
6 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
7 | import org.springframework.stereotype.Service;
8 |
9 | /**功能描述:首页幻灯片业务接口实现类
10 | * @Auther:梁志杰
11 | * @Date:2021/2/19
12 | * @Description:cn.xueden.edu.service.impl
13 | * @version:1.0
14 | */
15 | @Service
16 | public class EduBannerServiceImpl extends ServiceImpl implements IEduBannerService {
17 | }
18 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/service/impl/EduCashOutDetailsServiceImpl.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.service.impl;
2 |
3 |
4 | import cn.xueden.common.core.edu.domain.EduCashOutDetails;
5 |
6 | import cn.xueden.edu.dao.EduCashOutDetailsDao;
7 |
8 | import cn.xueden.edu.service.IEduCashOutDetailsService;
9 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
10 | import org.springframework.stereotype.Service;
11 |
12 | /**功能描述:讲师提现记录业务接口实现类
13 | * @Auther:梁志杰
14 | * @Date:2021/5/28
15 | * @Description:cn.xueden.edu.service.impl
16 | * @version:1.0
17 | */
18 | @Service
19 | public class EduCashOutDetailsServiceImpl extends ServiceImpl implements IEduCashOutDetailsService {
20 | }
21 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/service/impl/EduDailyReportServiceImpl.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.service.impl;
2 |
3 |
4 | import cn.xueden.common.core.edu.domain.EduDailyReport;
5 |
6 | import cn.xueden.edu.dao.EduDailyReportDao;
7 |
8 | import cn.xueden.edu.service.IEduDailyReportService;
9 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
10 | import org.springframework.stereotype.Service;
11 |
12 | /**功能描述:每日统计业务接口实现类
13 | * @Auther:梁志杰
14 | * @Date:2021/5/27
15 | * @Description:cn.xueden.edu.service.impl
16 | * @version:1.0
17 | */
18 | @Service
19 | public class EduDailyReportServiceImpl extends ServiceImpl implements IEduDailyReportService {
20 | }
21 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/service/impl/EduEnvironmenParamServiceImpl.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.service.impl;
2 |
3 | import cn.xueden.common.core.edu.domain.EduEnvironmenParam;
4 | import cn.xueden.edu.dao.EduEnvironmenParamDao;
5 | import cn.xueden.edu.service.IEduEnvironmenParamService;
6 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
7 | import org.springframework.stereotype.Service;
8 |
9 | /**功能描述:开发环境业务接口实现类
10 | * @Auther:梁志杰
11 | * @Date:2021/2/11
12 | * @Description:cn.xueden.edu.service.impl
13 | * @version:1.0
14 | */
15 | @Service
16 | public class EduEnvironmenParamServiceImpl extends ServiceImpl implements IEduEnvironmenParamService {
17 | }
18 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/service/impl/EduKeywordServiceImpl.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.service.impl;
2 |
3 | import cn.xueden.common.core.edu.domain.EduKeyword;
4 | import cn.xueden.edu.dao.EduKeywordDao;
5 | import cn.xueden.edu.service.IEduKeywordService;
6 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
7 | import org.springframework.stereotype.Service;
8 |
9 | /**
10 | * @Auther:梁志杰
11 | * @Date:2021/2/17
12 | * @Description:cn.xueden.edu.service.impl
13 | * @version:1.0
14 | */
15 | @Service
16 | public class EduKeywordServiceImpl extends ServiceImpl implements IEduKeywordService {
17 | }
18 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/service/impl/EduTeacherServiceImpl.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.service.impl;
2 |
3 | import cn.xueden.common.core.edu.domain.EduTeacher;
4 | import cn.xueden.edu.dao.EduTeacherDao;
5 | import cn.xueden.edu.service.IEduTeacherService;
6 | /*import com.baomidou.mybatisplus.service.impl.ServiceImpl;*/
7 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
8 | import org.springframework.stereotype.Service;
9 |
10 | /**讲师 服务实现类
11 | * @Auther:梁志杰
12 | * @Date:2021/1/22
13 | * @Description:cn.xueden.edu.service.impl
14 | * @version:1.0
15 | */
16 | @Service
17 | public class EduTeacherServiceImpl extends ServiceImpl implements IEduTeacherService {
18 | }
19 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/service/impl/EduVideoMemberServiceImpl.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.service.impl;
2 |
3 | import cn.xueden.common.core.edu.domain.EduVideoMember;
4 | import cn.xueden.edu.dao.EduVideoMemberDao;
5 | import cn.xueden.edu.service.IEduVideoMemberService;
6 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
7 | import org.springframework.stereotype.Service;
8 |
9 | /**功能描述:会员观看视频记录业务接口实现类
10 | * @Auther:梁志杰
11 | * @Date:2021/2/18
12 | * @Description:cn.xueden.edu.service.impl
13 | * @version:1.0
14 | */
15 | @Service
16 | public class EduVideoMemberServiceImpl extends ServiceImpl implements IEduVideoMemberService {
17 | }
18 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/service/impl/EduVipTypeSubjectServiceImpl.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.service.impl;
2 |
3 | import cn.xueden.common.core.edu.domain.EduVipTypeSubject;
4 | import cn.xueden.edu.dao.EduVipTypeSubjectDao;
5 | import cn.xueden.edu.service.IEduVipTypeSubjectService;
6 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
7 | import org.springframework.stereotype.Service;
8 |
9 | /**
10 | * @Auther:梁志杰
11 | * @Date:2021/2/2
12 | * @Description:cn.xueden.edu.service.impl
13 | * @version:1.0
14 | */
15 | @Service
16 | public class EduVipTypeSubjectServiceImpl extends ServiceImpl implements IEduVipTypeSubjectService {
17 | }
18 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/java/cn/xueden/edu/task/DailyScheduledTask.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.edu.task;
2 |
3 | import cn.xueden.edu.service.IStatisticsService;
4 | import lombok.extern.slf4j.Slf4j;
5 | import org.springframework.beans.factory.annotation.Autowired;
6 | import org.springframework.scheduling.annotation.EnableScheduling;
7 | import org.springframework.scheduling.annotation.Scheduled;
8 | import org.springframework.stereotype.Component;
9 |
10 | /**功能描述:每日统计任务
11 | * @Auther:梁志杰
12 | * @Date:2021/5/27
13 | * @Description:cn.xueden.edu.task
14 | * @version:1.0
15 | */
16 | @EnableScheduling
17 | @Slf4j
18 | @Component
19 | public class DailyScheduledTask {
20 |
21 | @Autowired
22 | private IStatisticsService statisticsService;
23 |
24 | /**
25 | * 每日0点统计讲师订单数量和收益金额记录
26 | */
27 | @Scheduled(cron="0 0 0 * * ?")
28 | public void countDaily() {
29 | log.info("每日0点统计讲师订单数量和收益金额记录");
30 | System.out.println("--------------- 定时器启动订单数量和收益金额统计 ---------------");
31 | statisticsService.countDaily();
32 | System.out.println("--------------- 定时器启动订单数量和收益金额完成 ---------------");
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/resources/bootstrap.yml:
--------------------------------------------------------------------------------
1 | # Tomcat
2 | server:
3 | port: 6000
4 |
5 | # Spring
6 | spring:
7 | application:
8 | # 应用名称
9 | name: moyu-edu
10 | profiles:
11 | # 环境配置
12 | active: dev
13 | cloud:
14 | nacos:
15 | discovery:
16 | # 服务注册地址
17 | server-addr: nacos:8848
18 | config:
19 | # 配置中心地址
20 | server-addr: nacos:8848
21 | # 配置文件格式
22 | file-extension: yml
23 | # 共享配置
24 | shared-dataids: application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
25 | #本地 默认为Public命名空间,可以省略不写,新建的命名空间,需要使用命名空间ID, 不能使用名称
26 | namespace: 5c3c4829-f937-4d50-aec1-95f0afc1ef73
27 | #指定配置群组 --如果是Public命名空间 则可以省略群组配置
28 | group: EDU_GROUP
29 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-edu/src/main/resources/ip2region/ip2region.db:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/seasonl2014/xueden-cloud-edu/04ad2b92f042fdd954dc653d6fae5a3eaac71e68/moyu-modules/moyu-edu/src/main/resources/ip2region/ip2region.db
--------------------------------------------------------------------------------
/moyu-modules/moyu-system/Dockerfile:
--------------------------------------------------------------------------------
1 | #获取base image
2 | FROM adoptopenjdk/openjdk8:latest
3 | MAINTAINER moyu 11184629@qq.com
4 |
5 | #类似于linux copy指令
6 | COPY moyu-system-1.0.0.jar /opt/app/layuicloud/
7 | #对外端口
8 | EXPOSE 9000
9 | #执行命令 java -jar /opt/app/layuicloud/moyu-system-1.0.0.jar
10 | ENTRYPOINT ["java","-Xmx256m", "-jar", "/opt/app/layuicloud/moyu-system-1.0.0.jar","--spring.profiles.active=dev","-c"]
11 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-system/src/main/java/cn/xueden/system/MoYuSystemApplication.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.system;
2 |
3 | import cn.xueden.common.security.annotation.EnableCustomConfig;
4 | import cn.xueden.common.security.annotation.EnableMoYuFeignClients;
5 | import cn.xueden.common.swagger.annotation.EnableCustomSwagger2;
6 | import org.mybatis.spring.annotation.MapperScan;
7 | import org.springframework.boot.SpringApplication;
8 | import org.springframework.boot.autoconfigure.SpringBootApplication;
9 | import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
10 | import org.springframework.cloud.client.SpringCloudApplication;
11 |
12 | /**
13 | * 系统模块
14 | *
15 | */
16 | @EnableCustomConfig
17 | @EnableMoYuFeignClients
18 | @EnableCustomSwagger2
19 | @SpringCloudApplication
20 | public class MoYuSystemApplication
21 | {
22 | public static void main( String[] args )
23 | {
24 | SpringApplication.run(MoYuSystemApplication.class, args);
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-system/src/main/java/cn/xueden/system/controller/BaseController.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.system.controller;
2 |
3 |
4 | import cn.xueden.system.service.LogService;
5 | import cn.xueden.system.service.MenuService;
6 | import cn.xueden.system.service.RoleService;
7 | import cn.xueden.system.service.UserService;
8 | import org.springframework.beans.factory.annotation.Autowired;
9 |
10 | /**功能描述:基础Controller类
11 | * @Auther:梁志杰
12 | * @Date:2020/9/25
13 | * @Description:cn.xueden.system.controller
14 | * @version:1.0
15 | */
16 | public class BaseController {
17 | @Autowired
18 | protected UserService userService;
19 |
20 | @Autowired
21 | protected MenuService menuService;
22 |
23 | @Autowired
24 | protected RoleService roleService;
25 |
26 | @Autowired
27 | protected LogService logService;
28 |
29 |
30 | /**
31 | * 功能描述:获取当前用户信息
32 | * @return
33 | *//*
34 | public User getCurrentUser(){
35 |
36 | ShiroUser shiroUser = (ShiroUser)SecurityUtils.getSubject().getPrincipal();
37 | if(null==shiroUser){
38 | return null ;
39 | }
40 |
41 | User loginUser = userService.selectById(shiroUser.getId());
42 | return loginUser;
43 | }*/
44 | }
45 |
46 |
--------------------------------------------------------------------------------
/moyu-modules/moyu-system/src/main/java/cn/xueden/system/dao/LogDao.java:
--------------------------------------------------------------------------------
1 | package cn.xueden.system.dao;
2 |
3 |
4 | import cn.xueden.common.core.web.domain.SysLog;
5 | import com.baomidou.mybatisplus.core.mapper.BaseMapper;
6 |
7 | /*import com.baomidou.mybatisplus.mapper.BaseMapper;*/
8 |
9 | import java.util.List;
10 | import java.util.Map;
11 |
12 | /**功能描述:系统日志 Mapper 接口
13 | * @Auther:http://www.xueden.cn
14 | * @Date:2020/3/6
15 | * @Description:cn.xueden.modules.system.dao
16 | * @version:1.0
17 | */
18 | public interface LogDao extends BaseMapper {
19 |
20 | List