teacher-home-legacy.ecdaeba9.js 143 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280
  1. ;(function () {
  2. function ownKeys(object, enumerableOnly) {
  3. var keys = Object.keys(object)
  4. if (Object.getOwnPropertySymbols) {
  5. var symbols = Object.getOwnPropertySymbols(object)
  6. enumerableOnly &&
  7. (symbols = symbols.filter(function (sym) {
  8. return Object.getOwnPropertyDescriptor(object, sym).enumerable
  9. })),
  10. keys.push.apply(keys, symbols)
  11. }
  12. return keys
  13. }
  14. function _objectSpread(target) {
  15. for (var i = 1; i < arguments.length; i++) {
  16. var source = null != arguments[i] ? arguments[i] : {}
  17. i % 2
  18. ? ownKeys(Object(source), !0).forEach(function (key) {
  19. _defineProperty(target, key, source[key])
  20. })
  21. : Object.getOwnPropertyDescriptors
  22. ? Object.defineProperties(
  23. target,
  24. Object.getOwnPropertyDescriptors(source)
  25. )
  26. : ownKeys(Object(source)).forEach(function (key) {
  27. Object.defineProperty(
  28. target,
  29. key,
  30. Object.getOwnPropertyDescriptor(source, key)
  31. )
  32. })
  33. }
  34. return target
  35. }
  36. function _defineProperty(obj, key, value) {
  37. if (key in obj) {
  38. Object.defineProperty(obj, key, {
  39. value: value,
  40. enumerable: true,
  41. configurable: true,
  42. writable: true
  43. })
  44. } else {
  45. obj[key] = value
  46. }
  47. return obj
  48. }
  49. function _toConsumableArray(arr) {
  50. return (
  51. _arrayWithoutHoles(arr) ||
  52. _iterableToArray(arr) ||
  53. _unsupportedIterableToArray(arr) ||
  54. _nonIterableSpread()
  55. )
  56. }
  57. function _nonIterableSpread() {
  58. throw new TypeError(
  59. 'Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.'
  60. )
  61. }
  62. function _unsupportedIterableToArray(o, minLen) {
  63. if (!o) return
  64. if (typeof o === 'string') return _arrayLikeToArray(o, minLen)
  65. var n = Object.prototype.toString.call(o).slice(8, -1)
  66. if (n === 'Object' && o.constructor) n = o.constructor.name
  67. if (n === 'Map' || n === 'Set') return Array.from(o)
  68. if (n === 'Arguments' || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))
  69. return _arrayLikeToArray(o, minLen)
  70. }
  71. function _iterableToArray(iter) {
  72. if (
  73. (typeof Symbol !== 'undefined' && iter[Symbol.iterator] != null) ||
  74. iter['@@iterator'] != null
  75. )
  76. return Array.from(iter)
  77. }
  78. function _arrayWithoutHoles(arr) {
  79. if (Array.isArray(arr)) return _arrayLikeToArray(arr)
  80. }
  81. function _arrayLikeToArray(arr, len) {
  82. if (len == null || len > arr.length) len = arr.length
  83. for (var i = 0, arr2 = new Array(len); i < len; i++) {
  84. arr2[i] = arr[i]
  85. }
  86. return arr2
  87. }
  88. function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
  89. try {
  90. var info = gen[key](arg)
  91. var value = info.value
  92. } catch (error) {
  93. reject(error)
  94. return
  95. }
  96. if (info.done) {
  97. resolve(value)
  98. } else {
  99. Promise.resolve(value).then(_next, _throw)
  100. }
  101. }
  102. function _asyncToGenerator(fn) {
  103. return function () {
  104. var self = this,
  105. args = arguments
  106. return new Promise(function (resolve, reject) {
  107. var gen = fn.apply(self, args)
  108. function _next(value) {
  109. asyncGeneratorStep(gen, resolve, reject, _next, _throw, 'next', value)
  110. }
  111. function _throw(err) {
  112. asyncGeneratorStep(gen, resolve, reject, _next, _throw, 'throw', err)
  113. }
  114. _next(undefined)
  115. })
  116. }
  117. }
  118. var __vite_style__ = document.createElement('style')
  119. __vite_style__.innerHTML =
  120. '._teacher-record_nb6q8_1{min-height:100vh;background-color:#f8f9fc;position:relative;overflow:hidden}._teacher-record_nb6q8_1 .van-nav-bar{transition:all .3s}._teacher-record_nb6q8_1 .van-tab{margin-top:.32rem;margin-bottom:.13333rem;padding:0 .37333rem}._teacher-record_nb6q8_1 .van-tab--active{font-size:.42667rem!important;color:#333}._teacher-record_nb6q8_1 .van-button--plain.van-button--primary{background-color:transparent}._bgImg_nb6q8_22{position:absolute;top:0;left:0;width:100%;height:5.01333rem;-o-object-fit:cover;object-fit:cover}._bg_nb6q8_22{position:absolute;top:0;left:0;width:100%;height:5.01333rem;background-color:rgba(0,0,0,.6);backdrop-filter:blur(.26667rem);-webkit-backdrop-filter:blur(.26667rem)}._teacherHeader_nb6q8_40{position:relative;z-index:10}._single_14ksn_1{margin-bottom:.53333rem}._introduction_14ksn_4{font-size:.34667rem;color:#666;line-height:1.6;padding-bottom:.4rem}._videoList_14ksn_10{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap}._itemBg_14ksn_16{position:absolute;top:0;left:0;bottom:0;width:100%;height:100%;z-index:89}._videoItem_14ksn_25{width:4.18667rem;height:2.82667rem;background:#d8d8d8;border-radius:.26667rem;overflow:hidden;position:relative;margin-bottom:.26667rem}._videoItem_14ksn_25 ._icon-upload_14ksn_34{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;z-index:9}._videoItem_14ksn_25 ._video_14ksn_10{position:absolute;left:0;top:0;width:100%;min-height:100%;background-color:#ccc}._videoItem_14ksn_25 .van-image{width:100%;height:100%;overflow:hidden}._fansGroup_14ksn_55{padding:0 0 .66667rem!important}._fansGroup_14ksn_55:last-child{padding-bottom:.32rem!important}._fansGroup_14ksn_55 .van-cell__title,._fansGroup_14ksn_55 .van-cell__value{flex:1 auto}._fansGroup_14ksn_55 p{font-size:.37333rem;color:#999;line-height:.53333rem;width:4.26667rem}._fansImage_14ksn_71{width:1.12rem;height:1.12rem;border-radius:50%;overflow:hidden}._fansTitle_14ksn_77{padding-left:.32rem;font-size:.42667rem;color:#1a1a1a;line-height:.58667rem}._videoGroup_14ksn_83{width:90%;line-height:0}._filterTitle_cir06_1{font-size:.48rem;font-weight:500;color:#000;line-height:.66667rem;text-align:center;padding:.53333rem 0}._fansGroup_cir06_9{padding:0 0 .66667rem!important}._fansGroup_cir06_9:last-child{padding-bottom:.32rem!important}._fansGroup_cir06_9 .van-cell__title,._fansGroup_cir06_9 .van-cell__value{flex:1 auto}._fansGroup_cir06_9 ._introduce_cir06_19{font-size:.37333rem;color:#999;line-height:.53333rem;width:6.93333rem}._fansImage_cir06_25{width:1.12rem;height:1.12rem;border-radius:50%;overflow:hidden}._fansTitle_cir06_31{padding-left:.32rem;font-size:.42667rem;color:#1a1a1a;line-height:.58667rem}._joinContainer_cir06_37{padding:.58667rem .37333rem}._joinText_cir06_40{font-size:.37333rem;color:#999;border-radius:.26667rem;border:.02667rem solid #dedede}._practice_xjmim_1{padding:.37333rem .37333rem 0;overflow:hidden}._practice_xjmim_1 ._group_xjmim_5{margin-bottom:.32rem;border-radius:.26667rem;overflow:hidden}._practice_xjmim_1 ._price_xjmim_10{font-size:.37333rem;color:#999}._practice_xjmim_1 ._price_xjmim_10 span{font-weight:600;color:#fa6400;font-size:.42667rem}._practice_xjmim_1 .van-stepper--round .van-stepper__minus{color:#333!important;border:#f3f3f3;background:#f3f3f3}._practice_xjmim_1 .van-stepper--round .van-stepper__plus{background:var(--van-primary)}._rTag_xjmim_27{padding:.26667rem 0}._rTag_xjmim_27 ._tag_xjmim_30{background:#e9fff8;margin-bottom:.21333rem}._selectPopup_xjmim_34{width:8.32rem;background:#ffffff;border-radius:.21333rem}._selectPopup_xjmim_34 ._selectContainer_xjmim_39{padding:.48rem .37333rem}._selectPopup_xjmim_34 ._rTitle_xjmim_42{font-size:.48rem}._selectPopup_xjmim_34 ._selectPopupContent_xjmim_45{padding:.53333rem 0}._selectPopup_xjmim_34 ._desc_xjmim_48,._selectPopup_xjmim_34 ._times_xjmim_49{font-size:.37333rem;color:#666;line-height:.53333rem}._selectPopup_xjmim_34 ._times_xjmim_49{padding-top:.4rem}._selectPopup_xjmim_34 ._times_xjmim_49 span{display:block}._selectPopup_xjmim_34 ._selectBtn_xjmim_60{display:flex;align-items:center;justify-content:space-between}._selectPopup_xjmim_34 ._selectBtn_xjmim_60 ._btn_xjmim_65{width:48%}._rTitle_xjmim_42{display:flex;align-items:center;font-size:.42667rem;color:#333;font-weight:500}._rTitle_xjmim_42:before{margin-right:.21333rem;content:" ";display:inline-block;width:.10667rem;height:.45333rem;background:linear-gradient(180deg,#59e5d5 0%,#01C1B5 100%);border-radius:.08rem}._protocol_xjmim_84{padding:0 .37333rem;background-color:#f6f8f9}._arrangeCell_xjmim_88{margin:.26667rem 0 2.13333rem!important;width:auto;border-radius:.26667rem;overflow:hidden}._fixedBtn_xjmim_94{position:fixed;bottom:0;left:0;right:0;z-index:9}._liveList_396y7_1{padding:.37333rem}._liCover_396y7_4{width:2.8rem;height:1.89333rem;border-radius:.10667rem;overflow:hidden}._liContent_396y7_10{padding-left:.37333rem;height:100%;display:flex;flex-direction:column;justify-content:space-between}._liContent_396y7_10 ._liTitle_396y7_17{font-size:.4rem;font-weight:500;color:#1a1a1a;line-height:.53333rem;padding-top:.10667rem;max-width:4.8rem}._num_396y7_25{color:#ff802c;font-size:.34667rem}._buyNum_396y7_29{color:#ff802c;display:flex;align-items:center;line-height:1;font-size:.34667rem}._price_396y7_36{font-size:.37333rem;color:#999}._price_396y7_36 ._priceNum_396y7_40{color:red;font-size:.48rem;font-weight:700}._price_396y7_36 ._priceNum_396y7_40 i{font-size:.4rem;font-style:normal}._price_396y7_36 ._label_396y7_49{padding-left:.21333rem}._liveGroup_396y7_52{border-radius:.26667rem;overflow:hidden;margin-bottom:.26667rem}._subjectName_396y7_57{position:absolute;bottom:.10667rem;left:0;font-size:.32rem;padding:.08rem .13333rem;color:#fff;line-height:1;border-radius:.02667rem;background:rgba(0,0,0,.29)}._timerString_396y7_68{font-size:.34667rem;display:flex;align-items:center;color:#666}._videoList_1yf9v_1{display:flex;justify-content:space-between;flex-wrap:wrap;padding:.37333rem}.van-list__loading,.van-list__finished-text,.van-list__error-text{width:100%}\n'
  121. document.head.appendChild(__vite_style__)
  122. System.register(
  123. [
  124. './teacher-header.module-legacy.887a7104.js',
  125. './index-legacy.fa4145a4.js',
  126. './vendor-legacy.09f20d09.js',
  127. './index-legacy.f25f109a3.js',
  128. './index-legacy.637f3556.js',
  129. './index-legacy.637f35562.js',
  130. './index-legacy.f9759ffc.js',
  131. './index-legacy.69ca4eed.js',
  132. './index-legacy.595c24c3.js',
  133. './index-legacy.f25f109a.js',
  134. './index-legacy.f25f109a2.js',
  135. './index-legacy.f25f109a5.js',
  136. './icon_upload_poster-legacy.6c5487e0.js',
  137. './index-legacy.48bd16d8.js',
  138. './index-legacy.f25f109a7.js',
  139. './index-legacy.f25f109a4.js',
  140. './index-legacy.f25f109a12.js',
  141. './index-legacy.f25f109a10.js',
  142. './orderStatus-legacy.6131dfb6.js',
  143. './tradeOrder-legacy.a0642d41.js',
  144. './index-legacy.f25f109a6.js',
  145. './video-item-legacy.29e57e65.js',
  146. './index-legacy.1588182e.js',
  147. './music-legacy.6d4924e4.js',
  148. './index-legacy.2d78ae68.js',
  149. './index-legacy.f25f109a9.js',
  150. './icon_teacher-legacy.e765b7f7.js',
  151. './icon-jiaozi-legacy.dd5ed0e2.js',
  152. './index-legacy.f25f109a8.js',
  153. './index-legacy.f25f109a11.js',
  154. './index-legacy.9dfebfce.js',
  155. './index-legacy.f72eae88.js',
  156. './select-tag-legacy.4972aa0d.js',
  157. './index-legacy.f25f109a13.js',
  158. './index-legacy.f25f109a14.js',
  159. './index-legacy.6e10cd37.js',
  160. './index.module-legacy.9051c853.js',
  161. './select-subject-legacy.1290af03.js',
  162. './hooks-legacy.b91b3b59.js',
  163. './index-legacy.a92ed534.js',
  164. './index-legacy.92ff7530.js',
  165. './code-down-load-legacy.66a01c5d.js',
  166. './logo-legacy.cf4b3bd2.js',
  167. './browser-legacy.5a92c2a9.js',
  168. './music-icon-legacy.a161f8f1.js',
  169. './index-legacy.c75fe8a2.js'
  170. ],
  171. function (exports) {
  172. 'use strict'
  173. var __glob_18_0,
  174. __glob_18_1,
  175. __glob_18_2,
  176. __glob_18_3,
  177. __glob_18_4,
  178. __glob_18_5,
  179. __glob_18_6,
  180. __glob_18_7,
  181. __glob_18_8,
  182. __glob_18_9,
  183. __glob_18_10,
  184. __glob_18_11,
  185. __glob_18_12,
  186. __glob_18_13,
  187. __glob_18_14,
  188. __glob_18_15,
  189. __glob_18_16,
  190. __glob_18_17,
  191. __glob_18_18,
  192. styles$6,
  193. IconChat,
  194. ColHeader,
  195. defineComponent,
  196. Toast,
  197. createVNode,
  198. Fragment,
  199. createTextVNode,
  200. Cell,
  201. Image,
  202. Field,
  203. Button,
  204. Icon,
  205. isVNode,
  206. Popup,
  207. dayjs,
  208. Dialog,
  209. CellGroup,
  210. Stepper,
  211. Tag,
  212. ActionSheet,
  213. List,
  214. Rate,
  215. useRect,
  216. Tabs,
  217. Tab,
  218. SectionDetail,
  219. ColVideo,
  220. request,
  221. postMessage,
  222. state,
  223. getWeekCh,
  224. ColResult,
  225. listenerMessage,
  226. iconUploadPoster,
  227. Calendar,
  228. orderStatus,
  229. tradeOrder,
  230. VideoItem,
  231. MusicList,
  232. musicBuy,
  233. useEventListener,
  234. useWindowScroll,
  235. IconAvator,
  236. IconXueli,
  237. IconJiaozi
  238. return {
  239. setters: [
  240. function (module) {
  241. __glob_18_0 = module._
  242. __glob_18_1 = module.a
  243. __glob_18_2 = module.b
  244. __glob_18_3 = module.c
  245. __glob_18_4 = module.d
  246. __glob_18_5 = module.e
  247. __glob_18_6 = module.f
  248. __glob_18_7 = module.g
  249. __glob_18_8 = module.h
  250. __glob_18_9 = module.i
  251. __glob_18_10 = module.j
  252. __glob_18_11 = module.k
  253. __glob_18_12 = module.l
  254. __glob_18_13 = module.m
  255. __glob_18_14 = module.n
  256. __glob_18_15 = module.o
  257. __glob_18_16 = module.p
  258. __glob_18_17 = module.q
  259. __glob_18_18 = module.r
  260. styles$6 = module.s
  261. IconChat = module.I
  262. },
  263. function (module) {
  264. ColHeader = module.C
  265. },
  266. function (module) {
  267. defineComponent = module.d
  268. Toast = module.T
  269. createVNode = module.a
  270. Fragment = module.F
  271. createTextVNode = module.j
  272. Cell = module.C
  273. Image = module.I
  274. Field = module.G
  275. Button = module.B
  276. Icon = module.K
  277. isVNode = module.x
  278. Popup = module.P
  279. dayjs = module.g
  280. Dialog = module.D
  281. CellGroup = module.y
  282. Stepper = module.Y
  283. Tag = module.U
  284. ActionSheet = module.N
  285. List = module.M
  286. Rate = module.J
  287. useRect = module.t
  288. Tabs = module.v
  289. Tab = module.w
  290. },
  291. function () {},
  292. function () {},
  293. function () {},
  294. function (module) {
  295. SectionDetail = module.S
  296. },
  297. function (module) {
  298. ColVideo = module.C
  299. },
  300. function (module) {
  301. request = module.r
  302. postMessage = module.p
  303. state = module.s
  304. getWeekCh = module.m
  305. ColResult = module.C
  306. listenerMessage = module.l
  307. },
  308. function () {},
  309. function () {},
  310. function () {},
  311. function (module) {
  312. iconUploadPoster = module.i
  313. },
  314. function (module) {
  315. Calendar = module.C
  316. },
  317. function () {},
  318. function () {},
  319. function () {},
  320. function () {},
  321. function (module) {
  322. orderStatus = module.o
  323. },
  324. function (module) {
  325. tradeOrder = module.t
  326. },
  327. function () {},
  328. function (module) {
  329. VideoItem = module.V
  330. },
  331. function (module) {
  332. MusicList = module['default']
  333. },
  334. function (module) {
  335. musicBuy = module.m
  336. },
  337. function (module) {
  338. useEventListener = module.u
  339. useWindowScroll = module.a
  340. },
  341. function () {},
  342. function (module) {
  343. IconAvator = module.I
  344. },
  345. function (module) {
  346. IconXueli = module.I
  347. IconJiaozi = module.a
  348. },
  349. function () {},
  350. function () {},
  351. function () {},
  352. function () {},
  353. function () {},
  354. function () {},
  355. function () {},
  356. function () {},
  357. function () {},
  358. function () {},
  359. function () {},
  360. function () {},
  361. function () {},
  362. function () {},
  363. function () {},
  364. function () {},
  365. function () {},
  366. function () {}
  367. ],
  368. execute: function execute() {
  369. var bgImg = '_bgImg_nb6q8_22'
  370. var bg = '_bg_nb6q8_22'
  371. var teacherHeader = '_teacherHeader_nb6q8_40'
  372. var styles$5 = {
  373. 'teacher-record': '_teacher-record_nb6q8_1',
  374. bgImg: bgImg,
  375. bg: bg,
  376. teacherHeader: teacherHeader
  377. }
  378. var single = '_single_14ksn_1'
  379. var introduction = '_introduction_14ksn_4'
  380. var videoList$1 = '_videoList_14ksn_10'
  381. var itemBg = '_itemBg_14ksn_16'
  382. var videoItem = '_videoItem_14ksn_25'
  383. var video = '_video_14ksn_10'
  384. var fansGroup$1 = '_fansGroup_14ksn_55'
  385. var fansImage$1 = '_fansImage_14ksn_71'
  386. var fansTitle$1 = '_fansTitle_14ksn_77'
  387. var videoGroup = '_videoGroup_14ksn_83'
  388. var styles$4 = {
  389. single: single,
  390. introduction: introduction,
  391. videoList: videoList$1,
  392. itemBg: itemBg,
  393. videoItem: videoItem,
  394. 'icon-upload': '_icon-upload_14ksn_34',
  395. video: video,
  396. fansGroup: fansGroup$1,
  397. fansImage: fansImage$1,
  398. fansTitle: fansTitle$1,
  399. videoGroup: videoGroup
  400. }
  401. var filterTitle = '_filterTitle_cir06_1'
  402. var fansGroup = '_fansGroup_cir06_9'
  403. var introduce = '_introduce_cir06_19'
  404. var fansImage = '_fansImage_cir06_25'
  405. var fansTitle = '_fansTitle_cir06_31'
  406. var joinContainer = '_joinContainer_cir06_37'
  407. var joinText = '_joinText_cir06_40'
  408. var styles$3 = {
  409. filterTitle: filterTitle,
  410. fansGroup: fansGroup,
  411. introduce: introduce,
  412. fansImage: fansImage,
  413. fansTitle: fansTitle,
  414. joinContainer: joinContainer,
  415. joinText: joinText
  416. }
  417. var getAssetsHomeFile$3 = function getAssetsHomeFile$3(fileName) {
  418. var path = '../images/'.concat(fileName)
  419. var modules = {
  420. '../images/cert_active.png': __glob_18_0,
  421. '../images/cert_default.png': __glob_18_1,
  422. '../images/follow_bg.png': __glob_18_2,
  423. '../images/head_bg.png': __glob_18_3,
  424. '../images/icon-chat.png': __glob_18_4,
  425. '../images/icon-close.png': __glob_18_5,
  426. '../images/icon_fans.png': __glob_18_6,
  427. '../images/icon_subject.png': __glob_18_7,
  428. '../images/icon_video.png': __glob_18_8,
  429. '../images/live_active.png': __glob_18_9,
  430. '../images/live_bg.png': __glob_18_10,
  431. '../images/live_default.png': __glob_18_11,
  432. '../images/music_active.png': __glob_18_12,
  433. '../images/music_default.png': __glob_18_13,
  434. '../images/teacher-icon.png': __glob_18_14,
  435. '../images/video_active.png': __glob_18_15,
  436. '../images/video_default.png': __glob_18_16,
  437. '../images/vip_active.png': __glob_18_17,
  438. '../images/vip_default.png': __glob_18_18
  439. }
  440. return modules[path].default
  441. }
  442. var JoinChat = defineComponent({
  443. name: 'joinChat',
  444. props: {
  445. item: { type: Object, default: {} },
  446. onClose: { type: Function, default: function _default(id) {} }
  447. },
  448. data: function data() {
  449. return { desc: '' }
  450. },
  451. methods: {
  452. onJoinChat: function onJoinChat() {
  453. var _this = this
  454. return _asyncToGenerator(
  455. /*#__PURE__*/ regeneratorRuntime.mark(function _callee() {
  456. return regeneratorRuntime.wrap(
  457. function _callee$(_context) {
  458. while (1) {
  459. switch ((_context.prev = _context.next)) {
  460. case 0:
  461. _context.prev = 0
  462. _context.next = 3
  463. return request.post(
  464. '/api-student/imGroupMemberAudit/apply',
  465. {
  466. data: {
  467. groupId: _this.item.id,
  468. auditStatus: 'AUDITING',
  469. roleType: 'STUDENT',
  470. desc: _this.desc
  471. }
  472. }
  473. )
  474. case 3:
  475. Toast('申请成功')
  476. _this.desc = ''
  477. _this.onClose && _this.onClose(_this.item.id)
  478. _context.next = 10
  479. break
  480. case 8:
  481. _context.prev = 8
  482. _context.t0 = _context['catch'](0)
  483. case 10:
  484. case 'end':
  485. return _context.stop()
  486. }
  487. }
  488. },
  489. _callee,
  490. null,
  491. [[0, 8]]
  492. )
  493. })
  494. )()
  495. }
  496. },
  497. render: function render() {
  498. var _this2 = this
  499. return createVNode(Fragment, null, [
  500. createVNode(
  501. 'div',
  502. { class: [styles$3.filterTitle, 'van-hairline--bottom'] },
  503. [createTextVNode('\u7533\u8BF7\u5165\u7FA4')]
  504. ),
  505. createVNode('div', { class: styles$3.joinContainer }, [
  506. createVNode(
  507. Cell,
  508. { center: true, class: styles$3.fansGroup, border: false },
  509. {
  510. icon: function icon() {
  511. return createVNode(
  512. Image,
  513. {
  514. src:
  515. _this2.item.img ||
  516. getAssetsHomeFile$3('icon_fans.png'),
  517. fit: 'cover',
  518. class: styles$3.fansImage
  519. },
  520. null
  521. )
  522. },
  523. title: function title() {
  524. return createVNode(
  525. 'div',
  526. { class: styles$3.fansTitle },
  527. [
  528. createVNode('div', { class: styles$3.title }, [
  529. _this2.item.name
  530. ]),
  531. createVNode(
  532. 'p',
  533. { class: ['van-ellipsis', styles$3.introduce] },
  534. [_this2.item.introduce]
  535. )
  536. ]
  537. )
  538. }
  539. }
  540. ),
  541. createVNode(
  542. Field,
  543. {
  544. type: 'textarea',
  545. class: styles$3.joinText,
  546. rows: 2,
  547. maxlength: 200,
  548. modelValue: this.desc,
  549. 'onUpdate:modelValue': function onUpdateModelValue(
  550. $event
  551. ) {
  552. return (_this2.desc = $event)
  553. },
  554. placeholder: '请填写您的入群申请,会更快的被通过喔~'
  555. },
  556. null
  557. )
  558. ]),
  559. createVNode('div', { class: 'btnGroup' }, [
  560. createVNode(
  561. Button,
  562. {
  563. type: 'primary',
  564. block: true,
  565. round: true,
  566. style: { width: '70%', margin: '0 auto' },
  567. onClick: this.onJoinChat
  568. },
  569. {
  570. default: function _default() {
  571. return [createTextVNode('\u786E\u8BA4')]
  572. }
  573. }
  574. )
  575. ])
  576. ])
  577. }
  578. })
  579. function _isSlot$2(s) {
  580. return (
  581. typeof s === 'function' ||
  582. (Object.prototype.toString.call(s) === '[object Object]' &&
  583. !isVNode(s))
  584. )
  585. }
  586. var getAssetsHomeFile$2 = function getAssetsHomeFile$2(fileName) {
  587. var path = '../images/'.concat(fileName)
  588. var modules = {
  589. '../images/cert_active.png': __glob_18_0,
  590. '../images/cert_default.png': __glob_18_1,
  591. '../images/follow_bg.png': __glob_18_2,
  592. '../images/head_bg.png': __glob_18_3,
  593. '../images/icon-chat.png': __glob_18_4,
  594. '../images/icon-close.png': __glob_18_5,
  595. '../images/icon_fans.png': __glob_18_6,
  596. '../images/icon_subject.png': __glob_18_7,
  597. '../images/icon_video.png': __glob_18_8,
  598. '../images/live_active.png': __glob_18_9,
  599. '../images/live_bg.png': __glob_18_10,
  600. '../images/live_default.png': __glob_18_11,
  601. '../images/music_active.png': __glob_18_12,
  602. '../images/music_default.png': __glob_18_13,
  603. '../images/teacher-icon.png': __glob_18_14,
  604. '../images/video_active.png': __glob_18_15,
  605. '../images/video_default.png': __glob_18_16,
  606. '../images/vip_active.png': __glob_18_17,
  607. '../images/vip_default.png': __glob_18_18
  608. }
  609. return modules[path].default
  610. }
  611. var Single = defineComponent({
  612. name: 'single',
  613. props: { userInfo: { type: Object, default: {} } },
  614. data: function data() {
  615. var query = this.$route.query
  616. return {
  617. videoStatus: false,
  618. chatStatus: false,
  619. teacherId: query.teacherId,
  620. fansList: [],
  621. chatItem: {},
  622. videoItem: {},
  623. isAddBrowse: false
  624. }
  625. },
  626. mounted: function mounted() {
  627. var _this3 = this
  628. return _asyncToGenerator(
  629. /*#__PURE__*/ regeneratorRuntime.mark(function _callee2() {
  630. var res
  631. return regeneratorRuntime.wrap(
  632. function _callee2$(_context2) {
  633. while (1) {
  634. switch ((_context2.prev = _context2.next)) {
  635. case 0:
  636. _context2.prev = 0
  637. _context2.next = 3
  638. return request.post(
  639. '/api-student/imGroup/queryTeacherGroup',
  640. {
  641. data: {
  642. type: 'FAN',
  643. createUserId: _this3.teacherId
  644. }
  645. }
  646. )
  647. case 3:
  648. res = _context2.sent
  649. _this3.fansList = res.data || []
  650. _context2.next = 9
  651. break
  652. case 7:
  653. _context2.prev = 7
  654. _context2.t0 = _context2['catch'](0)
  655. case 9:
  656. case 'end':
  657. return _context2.stop()
  658. }
  659. }
  660. },
  661. _callee2,
  662. null,
  663. [[0, 7]]
  664. )
  665. })
  666. )()
  667. },
  668. methods: {
  669. onDetail: function onDetail(item) {
  670. var _this4 = this
  671. return _asyncToGenerator(
  672. /*#__PURE__*/ regeneratorRuntime.mark(function _callee3() {
  673. return regeneratorRuntime.wrap(function _callee3$(
  674. _context3
  675. ) {
  676. while (1) {
  677. switch ((_context3.prev = _context3.next)) {
  678. case 0:
  679. if (!(!item.hasWaitAuditFlag && !item.existFlag)) {
  680. _context3.next = 4
  681. break
  682. }
  683. _this4.chatStatus = true
  684. _this4.chatItem = item
  685. return _context3.abrupt('return')
  686. case 4: // 进入群聊天
  687. if (item.existFlag) {
  688. postMessage({
  689. api: 'joinChatGroup',
  690. content: {
  691. type: 'multi', // single 单人 multi 多人
  692. id: item.id
  693. }
  694. })
  695. }
  696. case 5:
  697. case 'end':
  698. return _context3.stop()
  699. }
  700. }
  701. },
  702. _callee3)
  703. })
  704. )()
  705. },
  706. onPlay: function onPlay() {
  707. var _this5 = this
  708. return _asyncToGenerator(
  709. /*#__PURE__*/ regeneratorRuntime.mark(function _callee4() {
  710. return regeneratorRuntime.wrap(
  711. function _callee4$(_context4) {
  712. while (1) {
  713. switch ((_context4.prev = _context4.next)) {
  714. case 0:
  715. _context4.prev = 0
  716. if (_this5.isAddBrowse) {
  717. _context4.next = 3
  718. break
  719. }
  720. return _context4.abrupt('return')
  721. case 3:
  722. _context4.next = 5
  723. return request.get(
  724. '/api-student/teacher/addVideoBrowse',
  725. {
  726. hideLoading: true,
  727. params: { videoId: _this5.videoItem.id }
  728. }
  729. )
  730. case 5:
  731. _this5.isAddBrowse = false
  732. _context4.next = 10
  733. break
  734. case 8:
  735. _context4.prev = 8
  736. _context4.t0 = _context4['catch'](0)
  737. case 10:
  738. case 'end':
  739. return _context4.stop()
  740. }
  741. }
  742. },
  743. _callee4,
  744. null,
  745. [[0, 8]]
  746. )
  747. })
  748. )()
  749. }
  750. },
  751. render: function render() {
  752. var _this6 = this
  753. var _slot
  754. var userInfo = this.userInfo
  755. return createVNode('div', { class: styles$4.single }, [
  756. userInfo.introduction &&
  757. createVNode(
  758. SectionDetail,
  759. {
  760. icon: 'personal',
  761. title: '个人介绍',
  762. size: 24,
  763. border: false
  764. },
  765. {
  766. default: function _default() {
  767. return [
  768. createVNode('p', { class: styles$4.introduction }, [
  769. userInfo.introduction
  770. ])
  771. ]
  772. }
  773. }
  774. ),
  775. userInfo.styleVideo &&
  776. userInfo.styleVideo.length > 0 &&
  777. createVNode(
  778. SectionDetail,
  779. {
  780. icon: 'elegant',
  781. title: '老师风采',
  782. size: 24,
  783. border: false
  784. },
  785. {
  786. default: function _default() {
  787. return [
  788. createVNode('div', { class: styles$4.videoList }, [
  789. userInfo.styleVideo.map(function (item) {
  790. return createVNode(
  791. 'div',
  792. { class: styles$4.videoItem },
  793. [
  794. createVNode(
  795. 'div',
  796. {
  797. class: styles$4.itemBg,
  798. onClick: function onClick() {
  799. _this6.videoStatus = true
  800. _this6.isAddBrowse = true
  801. _this6.videoItem = item
  802. }
  803. },
  804. null
  805. ),
  806. createVNode(
  807. Icon,
  808. {
  809. class: styles$4['icon-upload'],
  810. name: getAssetsHomeFile$2(
  811. 'icon_video.png'
  812. ),
  813. size: 26
  814. },
  815. null
  816. ),
  817. createVNode(
  818. Image,
  819. {
  820. src: item.cover || iconUploadPoster,
  821. fit: 'cover'
  822. },
  823. null
  824. )
  825. ]
  826. )
  827. })
  828. ])
  829. ]
  830. }
  831. }
  832. ),
  833. this.fansList &&
  834. this.fansList.length > 0 &&
  835. createVNode(
  836. SectionDetail,
  837. { icon: 'fans', title: '粉丝群', size: 24, border: false },
  838. _isSlot$2(
  839. (_slot = this.fansList.map(function (item) {
  840. return createVNode(
  841. Cell,
  842. {
  843. center: true,
  844. class: styles$4.fansGroup,
  845. border: false
  846. },
  847. {
  848. icon: function icon() {
  849. return createVNode(
  850. Image,
  851. {
  852. src:
  853. item.img ||
  854. getAssetsHomeFile$2('icon_fans.png'),
  855. fit: 'cover',
  856. class: styles$4.fansImage
  857. },
  858. null
  859. )
  860. },
  861. title: function title() {
  862. return createVNode(
  863. 'div',
  864. { class: styles$4.fansTitle },
  865. [
  866. createVNode(
  867. 'div',
  868. { class: styles$4.title },
  869. [item.name]
  870. ),
  871. createVNode('p', { class: 'van-ellipsis' }, [
  872. item.introduce
  873. ])
  874. ]
  875. )
  876. },
  877. default: function _default() {
  878. return createVNode(
  879. Button,
  880. {
  881. type: 'primary',
  882. size: 'small',
  883. round: true,
  884. disabled: item.hasWaitAuditFlag,
  885. onClick: function onClick() {
  886. return _this6.onDetail(item)
  887. }
  888. },
  889. {
  890. default: function _default() {
  891. return [
  892. item.existFlag ? '去聊天' : '',
  893. item.hasWaitAuditFlag ? '审核中' : '',
  894. !item.hasWaitAuditFlag && !item.existFlag
  895. ? '申请入群'
  896. : ''
  897. ]
  898. }
  899. }
  900. )
  901. }
  902. }
  903. )
  904. }))
  905. )
  906. ? _slot
  907. : {
  908. default: function _default() {
  909. return [_slot]
  910. }
  911. }
  912. ),
  913. createVNode(
  914. Popup,
  915. {
  916. show: this.chatStatus,
  917. position: 'bottom',
  918. round: true,
  919. closeable: true,
  920. 'safe-area-inset-bottom': true,
  921. onClose: function onClose() {
  922. return (_this6.chatStatus = false)
  923. }
  924. },
  925. {
  926. default: function _default() {
  927. return [
  928. createVNode(
  929. JoinChat,
  930. {
  931. item: _this6.chatItem,
  932. onClose: function onClose(id) {
  933. _this6.fansList.forEach(function (item) {
  934. item.id === id && (item.hasWaitAuditFlag = true)
  935. })
  936. _this6.chatStatus = false
  937. }
  938. },
  939. null
  940. )
  941. ]
  942. }
  943. }
  944. ),
  945. createVNode(
  946. Popup,
  947. {
  948. show: this.videoStatus,
  949. round: true,
  950. class: styles$4.videoGroup,
  951. closeable: true,
  952. onClose: function onClose() {
  953. _this6.videoStatus = false
  954. _this6.isAddBrowse = false
  955. }
  956. },
  957. {
  958. default: function _default() {
  959. var _this6$videoItem
  960. return [
  961. _this6.videoStatus &&
  962. createVNode(
  963. ColVideo,
  964. {
  965. playsinline: true,
  966. onPlay: _this6.onPlay,
  967. src:
  968. ((_this6$videoItem = _this6.videoItem) ===
  969. null || _this6$videoItem === void 0
  970. ? void 0
  971. : _this6$videoItem.videoUrl) + '#t=0.1'
  972. },
  973. null
  974. )
  975. ]
  976. }
  977. }
  978. )
  979. ])
  980. }
  981. })
  982. var practice = '_practice_xjmim_1'
  983. var group = '_group_xjmim_5'
  984. var price$1 = '_price_xjmim_10'
  985. var rTag = '_rTag_xjmim_27'
  986. var tag = '_tag_xjmim_30'
  987. var selectPopup = '_selectPopup_xjmim_34'
  988. var selectContainer = '_selectContainer_xjmim_39'
  989. var rTitle = '_rTitle_xjmim_42'
  990. var selectPopupContent = '_selectPopupContent_xjmim_45'
  991. var desc = '_desc_xjmim_48'
  992. var times = '_times_xjmim_49'
  993. var selectBtn = '_selectBtn_xjmim_60'
  994. var btn = '_btn_xjmim_65'
  995. var protocol = '_protocol_xjmim_84'
  996. var arrangeCell = '_arrangeCell_xjmim_88'
  997. var fixedBtn = '_fixedBtn_xjmim_94'
  998. var styles$2 = {
  999. practice: practice,
  1000. group: group,
  1001. price: price$1,
  1002. rTag: rTag,
  1003. tag: tag,
  1004. selectPopup: selectPopup,
  1005. selectContainer: selectContainer,
  1006. rTitle: rTitle,
  1007. selectPopupContent: selectPopupContent,
  1008. desc: desc,
  1009. times: times,
  1010. selectBtn: selectBtn,
  1011. btn: btn,
  1012. protocol: protocol,
  1013. arrangeCell: arrangeCell,
  1014. fixedBtn: fixedBtn
  1015. }
  1016. var Practice = defineComponent({
  1017. name: 'practice',
  1018. props: { userInfo: { type: Object, default: {} } },
  1019. data: function data() {
  1020. var query = this.$route.query
  1021. return {
  1022. teacherId: query.teacherId,
  1023. subjectId: query.subjectId,
  1024. teacherSubjectList: [],
  1025. subjectStatus: false,
  1026. subjectInfo: {
  1027. subjectPrice: 0,
  1028. courseMinutes: 0,
  1029. subjectName: '',
  1030. subjectId: 0
  1031. },
  1032. courseNum: 4,
  1033. calendarStatus: false,
  1034. calendarList: [],
  1035. selectCourseList: [],
  1036. coursePlanStatus: false,
  1037. selectStatus: false,
  1038. coursePlanList: [],
  1039. calendarDate: dayjs().add(1, 'day').toDate(), // 日历当前时间
  1040. settingStatus: true, // 是否设置陪练课
  1041. loadDataStatus: true // 是否加载数据
  1042. }
  1043. },
  1044. mounted: function mounted() {
  1045. var _this7 = this
  1046. return _asyncToGenerator(
  1047. /*#__PURE__*/ regeneratorRuntime.mark(function _callee5() {
  1048. var res,
  1049. result,
  1050. _state$user$data,
  1051. userSubjectId,
  1052. findItem,
  1053. tempRes,
  1054. _subjectName,
  1055. subjectPrice,
  1056. courseMinutes,
  1057. subjectId
  1058. return regeneratorRuntime.wrap(
  1059. function _callee5$(_context5) {
  1060. while (1) {
  1061. switch ((_context5.prev = _context5.next)) {
  1062. case 0:
  1063. _context5.prev = 0
  1064. _this7.loadDataStatus = true
  1065. _context5.next = 4
  1066. return request.get(
  1067. '/api-student/courseSchedule/getTeacherSubjectPrice',
  1068. { params: { teacherId: _this7.teacherId } }
  1069. )
  1070. case 4:
  1071. res = _context5.sent
  1072. _this7.loadDataStatus = false
  1073. result = res.data || []
  1074. if (result.length > 0) {
  1075. userSubjectId =
  1076. _this7.subjectId ||
  1077. ((_state$user$data = state.user.data) ===
  1078. null || _state$user$data === void 0
  1079. ? void 0
  1080. : _state$user$data.subjectId)
  1081. findItem = result.find(function (item) {
  1082. return item.subjectId === Number(userSubjectId)
  1083. }) // 判断是否有跟学生相同的科目,如果没有则默认取第一个
  1084. tempRes = findItem || result[0]
  1085. ;(_subjectName = tempRes.subjectName),
  1086. (subjectPrice = tempRes.subjectPrice),
  1087. (courseMinutes = tempRes.courseMinutes),
  1088. (subjectId = tempRes.subjectId)
  1089. _this7.subjectInfo = {
  1090. subjectPrice: subjectPrice,
  1091. courseMinutes: courseMinutes,
  1092. subjectName: _subjectName,
  1093. subjectId: subjectId
  1094. }
  1095. result.forEach(function (item) {
  1096. item.name = item.subjectName
  1097. })
  1098. _this7.teacherSubjectList = result
  1099. _this7.getList()
  1100. _this7.onBuy(true)
  1101. _this7.settingStatus = true
  1102. } else {
  1103. _this7.settingStatus = false
  1104. }
  1105. _context5.next = 13
  1106. break
  1107. case 10:
  1108. _context5.prev = 10
  1109. _context5.t0 = _context5['catch'](0)
  1110. _this7.loadDataStatus = false
  1111. case 13:
  1112. case 'end':
  1113. return _context5.stop()
  1114. }
  1115. }
  1116. },
  1117. _callee5,
  1118. null,
  1119. [[0, 10]]
  1120. )
  1121. })
  1122. )()
  1123. },
  1124. computed: {
  1125. showSelectList: function showSelectList() {
  1126. var arr = this.selectCourseList
  1127. var list = _toConsumableArray(arr)
  1128. list.forEach(function (item) {
  1129. item.title =
  1130. dayjs(item.startTime).format('YYYY-MM-DD') +
  1131. ' ' +
  1132. getWeekCh(dayjs(item.startTime).day()) +
  1133. ' ' +
  1134. item.start +
  1135. '~' +
  1136. item.end
  1137. })
  1138. return list
  1139. },
  1140. selectType: function selectType() {
  1141. // 循环次数是否足够
  1142. return this.selectCourseList.length < this.courseNum
  1143. ? 'noEnough'
  1144. : 'enough'
  1145. }
  1146. },
  1147. methods: {
  1148. onSubmit: function onSubmit() {
  1149. var _this8 = this
  1150. return _asyncToGenerator(
  1151. /*#__PURE__*/ regeneratorRuntime.mark(function _callee6() {
  1152. return regeneratorRuntime.wrap(function _callee6$(
  1153. _context6
  1154. ) {
  1155. while (1) {
  1156. switch ((_context6.prev = _context6.next)) {
  1157. case 0:
  1158. if (!(_this8.selectCourseList.length <= 0)) {
  1159. _context6.next = 3
  1160. break
  1161. }
  1162. Toast('请选择课程时间')
  1163. return _context6.abrupt('return')
  1164. case 3:
  1165. if (
  1166. !(
  1167. _this8.selectCourseList.length <
  1168. _this8.courseNum
  1169. )
  1170. ) {
  1171. _context6.next = 6
  1172. break
  1173. }
  1174. _this8.selectStatus = true
  1175. return _context6.abrupt('return')
  1176. case 6:
  1177. _context6.next = 8
  1178. return _this8._lookCourse()
  1179. case 8:
  1180. case 'end':
  1181. return _context6.stop()
  1182. }
  1183. }
  1184. },
  1185. _callee6)
  1186. })
  1187. )()
  1188. },
  1189. getList: function getList(date) {
  1190. var _this9 = this
  1191. return _asyncToGenerator(
  1192. /*#__PURE__*/ regeneratorRuntime.mark(function _callee7() {
  1193. var _state$user$data2,
  1194. tempDate,
  1195. params,
  1196. res,
  1197. result,
  1198. tempObj
  1199. return regeneratorRuntime.wrap(
  1200. function _callee7$(_context7) {
  1201. while (1) {
  1202. switch ((_context7.prev = _context7.next)) {
  1203. case 0:
  1204. _context7.prev = 0
  1205. tempDate = date || dayjs().add(1, 'day').toDate()
  1206. params = {
  1207. day: dayjs(tempDate).format('DD'),
  1208. month: dayjs(tempDate).format('MM'),
  1209. year: dayjs(tempDate).format('YYYY')
  1210. }
  1211. _context7.next = 5
  1212. return request.post(
  1213. '/api-student/courseSchedule/createPracticeCourseCalendar',
  1214. {
  1215. data: _objectSpread(
  1216. _objectSpread({}, params),
  1217. {},
  1218. {
  1219. studentId:
  1220. (_state$user$data2 =
  1221. state.user.data) === null ||
  1222. _state$user$data2 === void 0
  1223. ? void 0
  1224. : _state$user$data2.userId,
  1225. teacherId: _this9.teacherId
  1226. }
  1227. )
  1228. }
  1229. )
  1230. case 5:
  1231. res = _context7.sent
  1232. result = res.data || []
  1233. tempObj = {}
  1234. result.forEach(function (item) {
  1235. tempObj[item.date] = item
  1236. })
  1237. _this9.calendarList = tempObj
  1238. _this9.calendarStatus = result.length > 0
  1239. _context7.next = 15
  1240. break
  1241. case 13:
  1242. _context7.prev = 13
  1243. _context7.t0 = _context7['catch'](0)
  1244. case 15:
  1245. case 'end':
  1246. return _context7.stop()
  1247. }
  1248. }
  1249. },
  1250. _callee7,
  1251. null,
  1252. [[0, 13]]
  1253. )
  1254. })
  1255. )()
  1256. },
  1257. onSelectDay: function onSelectDay(obj) {
  1258. var result = obj || []
  1259. var list = _toConsumableArray(this.selectCourseList)
  1260. result.forEach(function (item) {
  1261. var isExist = list.some(function (course) {
  1262. return course.startTime === item.startTime
  1263. })
  1264. !isExist && list.push(_objectSpread({}, item))
  1265. }) // 去掉不在
  1266. var tempList = []
  1267. list.forEach(function (item) {
  1268. var isExist = result.some(function (course) {
  1269. return course.startTime === item.startTime
  1270. })
  1271. isExist && tempList.push(item)
  1272. }) // 对数组进行排序
  1273. tempList.sort(function (first, second) {
  1274. if (first.startTime > second.startTime) return 1
  1275. if (first.startTime < second.startTime) return -1
  1276. return 0
  1277. })
  1278. console.log(tempList, 'list')
  1279. this.selectCourseList = [].concat(tempList)
  1280. },
  1281. onCloseTag: function onCloseTag(item) {
  1282. var _this10 = this
  1283. Dialog.confirm({
  1284. title: '提示',
  1285. message: '您是否要删除该选择的课程?',
  1286. confirmButtonColor: 'var(--van-primary)'
  1287. }).then(function () {
  1288. var index = _this10.selectCourseList.findIndex(function (
  1289. course
  1290. ) {
  1291. return course.startTime === item.startTime
  1292. })
  1293. _this10.selectCourseList.splice(index, 1)
  1294. })
  1295. },
  1296. _lookCourse: function _lookCourse(callBack) {
  1297. var _this11 = this
  1298. return _asyncToGenerator(
  1299. /*#__PURE__*/ regeneratorRuntime.mark(function _callee8() {
  1300. var _times, res, result, message
  1301. return regeneratorRuntime.wrap(
  1302. function _callee8$(_context8) {
  1303. while (1) {
  1304. switch ((_context8.prev = _context8.next)) {
  1305. case 0:
  1306. _context8.prev = 0
  1307. _times = []
  1308. _this11.selectCourseList.forEach(function (item) {
  1309. _times.push({
  1310. startTime: item.startTime,
  1311. endTime: item.endTime
  1312. })
  1313. })
  1314. _context8.next = 5
  1315. return request.post(
  1316. '/api-student/courseGroup/lockCourseToCache',
  1317. {
  1318. data: {
  1319. courseNum: _this11.courseNum,
  1320. courseType: 'PRACTICE',
  1321. loop:
  1322. _this11.selectType === 'noEnough' ? 1 : 0,
  1323. teacherId: _this11.teacherId,
  1324. timeList: [].concat(_times)
  1325. }
  1326. }
  1327. )
  1328. case 5:
  1329. res = _context8.sent
  1330. result = res.data || []
  1331. result.forEach(function (item, index) {
  1332. _this11.coursePlanList[index] = _objectSpread(
  1333. _objectSpread(
  1334. {},
  1335. _this11.coursePlanList[index]
  1336. ),
  1337. {},
  1338. {
  1339. startTime: item.startTime,
  1340. endTime: item.endTime,
  1341. classNum: index + 1
  1342. }
  1343. )
  1344. })
  1345. _this11.coursePlanStatus = true
  1346. _this11.selectStatus = true
  1347. callBack && callBack()
  1348. _context8.next = 17
  1349. break
  1350. case 13:
  1351. _context8.prev = 13
  1352. _context8.t0 = _context8['catch'](0) // 报错时需要重置日历表的数据
  1353. message = _context8.t0.message
  1354. Dialog.alert({
  1355. title: '提示',
  1356. confirmButtonColor: 'var(--van-primary)',
  1357. message: message
  1358. }).then(function () {
  1359. _this11.getList(
  1360. _this11.calendarDate || new Date()
  1361. )
  1362. _this11.selectCourseList = []
  1363. _this11.selectStatus = false
  1364. })
  1365. case 17:
  1366. case 'end':
  1367. return _context8.stop()
  1368. }
  1369. }
  1370. },
  1371. _callee8,
  1372. null,
  1373. [[0, 13]]
  1374. )
  1375. })
  1376. )()
  1377. },
  1378. onReset: function onReset() {
  1379. var _this12 = this
  1380. return _asyncToGenerator(
  1381. /*#__PURE__*/ regeneratorRuntime.mark(function _callee9() {
  1382. return regeneratorRuntime.wrap(function _callee9$(
  1383. _context9
  1384. ) {
  1385. while (1) {
  1386. switch ((_context9.prev = _context9.next)) {
  1387. case 0: // 是否有锁课状态 或 是锁课类型的
  1388. if (
  1389. _this12.coursePlanStatus ||
  1390. _this12.selectType === 'enough'
  1391. ) {
  1392. _this12.selectStatus = false
  1393. setTimeout(function () {
  1394. _this12.coursePlanList = []
  1395. }, 500)
  1396. } else if (_this12.selectType === 'noEnough') {
  1397. _this12.selectStatus = false
  1398. }
  1399. setTimeout(function () {
  1400. _this12.coursePlanStatus = false
  1401. }, 500)
  1402. case 2:
  1403. case 'end':
  1404. return _context9.stop()
  1405. }
  1406. }
  1407. },
  1408. _callee9)
  1409. })
  1410. )()
  1411. },
  1412. onSure: function onSure() {
  1413. var _this13 = this
  1414. return _asyncToGenerator(
  1415. /*#__PURE__*/ regeneratorRuntime.mark(function _callee10() {
  1416. var status
  1417. return regeneratorRuntime.wrap(function _callee10$(
  1418. _context10
  1419. ) {
  1420. while (1) {
  1421. switch ((_context10.prev = _context10.next)) {
  1422. case 0:
  1423. status = _this13.coursePlanStatus
  1424. _context10.next = 3
  1425. return _this13._lookCourse(function () {
  1426. if (status) {
  1427. _this13.selectStatus = false
  1428. _this13.onBuy()
  1429. }
  1430. })
  1431. case 3:
  1432. case 'end':
  1433. return _context10.stop()
  1434. }
  1435. }
  1436. },
  1437. _callee10)
  1438. })
  1439. )()
  1440. },
  1441. onBuy: function onBuy(goTo) {
  1442. var _this14 = this
  1443. return _asyncToGenerator(
  1444. /*#__PURE__*/ regeneratorRuntime.mark(function _callee12() {
  1445. var res, subjectInfo, tempCourseList, result
  1446. return regeneratorRuntime.wrap(
  1447. function _callee12$(_context12) {
  1448. while (1) {
  1449. switch ((_context12.prev = _context12.next)) {
  1450. case 0:
  1451. _context12.prev = 0
  1452. _context12.next = 3
  1453. return request.post(
  1454. '/api-student/userOrder/getPendingOrder',
  1455. {
  1456. data: {
  1457. goodType: 'PRACTICE',
  1458. bizId: _this14.teacherId
  1459. }
  1460. }
  1461. )
  1462. case 3:
  1463. res = _context12.sent
  1464. subjectInfo = _this14.subjectInfo
  1465. tempCourseList = _toConsumableArray(
  1466. _this14.coursePlanList
  1467. ) // console.log(this.coursePlanList)
  1468. tempCourseList.forEach(function (item) {
  1469. item.classDate = dayjs(item.startTime).format(
  1470. 'YYYY-MM-DD'
  1471. )
  1472. item.title = ''
  1473. .concat(
  1474. dayjs(item.startTime).format('YYYY-MM-DD'),
  1475. ' '
  1476. )
  1477. .concat(
  1478. getWeekCh(dayjs(item.startTime).day()),
  1479. ' '
  1480. )
  1481. .concat(
  1482. dayjs(item.startTime).format('HH:mm'),
  1483. '~'
  1484. )
  1485. .concat(dayjs(item.endTime).format('HH:mm'))
  1486. })
  1487. orderStatus.orderObject.orderType = 'PRACTICE'
  1488. orderStatus.orderObject.orderName =
  1489. subjectInfo.subjectName + '陪练课'
  1490. orderStatus.orderObject.orderDesc =
  1491. subjectInfo.subjectName + '陪练课'
  1492. orderStatus.orderObject.actualPrice = Number(
  1493. (
  1494. _this14.courseNum * subjectInfo.subjectPrice
  1495. ).toFixed(2)
  1496. )
  1497. orderStatus.orderObject.orderNo = ''
  1498. orderStatus.orderObject.orderList = [
  1499. {
  1500. orderType: 'PRACTICE',
  1501. goodsName: subjectInfo.subjectName + '陪练课',
  1502. courseGroupName:
  1503. subjectInfo.subjectName + '陪练课',
  1504. courseIntroduce:
  1505. subjectInfo.subjectName + '陪练课',
  1506. subjectId: subjectInfo.subjectId,
  1507. singleCourseMinutes:
  1508. subjectInfo.courseMinutes,
  1509. courseNum: _this14.courseNum,
  1510. coursePrice: (
  1511. _this14.courseNum * subjectInfo.subjectPrice
  1512. ).toFixed(2),
  1513. teacherName:
  1514. _this14.userInfo.username ||
  1515. '\u6E38\u5BA2'.concat(
  1516. _this14.userInfo.userId || ''
  1517. ),
  1518. teacherId: _this14.userInfo.userId,
  1519. starGrade: _this14.userInfo.starGrade,
  1520. avatar: _this14.userInfo.heardUrl,
  1521. classTime: tempCourseList
  1522. }
  1523. ]
  1524. result = res.data
  1525. if (result) {
  1526. Dialog.confirm({
  1527. title: '提示',
  1528. message:
  1529. '您有一个未支付的订单,是否继续支付?',
  1530. confirmButtonColor: '#269a93',
  1531. cancelButtonText: '取消订单',
  1532. confirmButtonText: '继续支付'
  1533. })
  1534. .then(
  1535. /*#__PURE__*/ _asyncToGenerator(
  1536. /*#__PURE__*/ regeneratorRuntime.mark(
  1537. function _callee11() {
  1538. return regeneratorRuntime.wrap(
  1539. function _callee11$(_context11) {
  1540. while (1) {
  1541. switch (
  1542. (_context11.prev =
  1543. _context11.next)
  1544. ) {
  1545. case 0:
  1546. tradeOrder(
  1547. result,
  1548. _this14.routerTo
  1549. ) // this.routerTo()
  1550. case 1:
  1551. case 'end':
  1552. return _context11.stop()
  1553. }
  1554. }
  1555. },
  1556. _callee11
  1557. )
  1558. }
  1559. )
  1560. )
  1561. )
  1562. .catch(function () {
  1563. Dialog.close() // 只用取消订单,不用做其它处理
  1564. _this14.cancelPayment(result.orderNo)
  1565. })
  1566. } else {
  1567. !goTo && _this14.routerTo()
  1568. }
  1569. _context12.next = 19
  1570. break
  1571. case 17:
  1572. _context12.prev = 17
  1573. _context12.t0 = _context12['catch'](0)
  1574. case 19:
  1575. case 'end':
  1576. return _context12.stop()
  1577. }
  1578. }
  1579. },
  1580. _callee12,
  1581. null,
  1582. [[0, 17]]
  1583. )
  1584. })
  1585. )()
  1586. },
  1587. routerTo: function routerTo() {
  1588. this.$router.push({
  1589. path: '/orderDetail',
  1590. query: { orderType: 'PRACTICE' }
  1591. })
  1592. },
  1593. cancelPayment: function cancelPayment(orderNo) {
  1594. return _asyncToGenerator(
  1595. /*#__PURE__*/ regeneratorRuntime.mark(function _callee13() {
  1596. return regeneratorRuntime.wrap(
  1597. function _callee13$(_context13) {
  1598. while (1) {
  1599. switch ((_context13.prev = _context13.next)) {
  1600. case 0:
  1601. _context13.prev = 0
  1602. _context13.next = 3
  1603. return request.post(
  1604. '/api-student/userOrder/orderCancel',
  1605. { data: { orderNo: orderNo } }
  1606. )
  1607. case 3:
  1608. _context13.next = 7
  1609. break
  1610. case 5:
  1611. _context13.prev = 5
  1612. _context13.t0 = _context13['catch'](0)
  1613. case 7:
  1614. case 'end':
  1615. return _context13.stop()
  1616. }
  1617. }
  1618. },
  1619. _callee13,
  1620. null,
  1621. [[0, 5]]
  1622. )
  1623. })
  1624. )()
  1625. }
  1626. },
  1627. render: function render() {
  1628. var _this15 = this
  1629. return createVNode(Fragment, null, [
  1630. !this.loadDataStatus &&
  1631. (this.settingStatus
  1632. ? createVNode(Fragment, null, [
  1633. createVNode('div', { class: styles$2.practice }, [
  1634. createVNode(
  1635. CellGroup,
  1636. { class: styles$2.group, border: false },
  1637. {
  1638. default: function _default() {
  1639. return [
  1640. _this15.subjectInfo.subjectPrice > 0 &&
  1641. createVNode(
  1642. Cell,
  1643. { title: '陪练课收费' },
  1644. {
  1645. default: function _default() {
  1646. return createVNode(
  1647. 'div',
  1648. { class: styles$2.price },
  1649. [
  1650. createVNode('span', null, [
  1651. createTextVNode('\xA5'),
  1652. _this15.$filters.moneyFormat(
  1653. _this15.subjectInfo
  1654. .subjectPrice
  1655. )
  1656. ]),
  1657. createTextVNode('/'),
  1658. _this15.subjectInfo.courseMinutes,
  1659. createTextVNode('\u5206\u949F')
  1660. ]
  1661. )
  1662. }
  1663. }
  1664. ),
  1665. createVNode(
  1666. Cell,
  1667. {
  1668. title: '选择专业',
  1669. isLink: true,
  1670. value: _this15.subjectInfo.subjectName,
  1671. onClick: function onClick() {
  1672. return (_this15.subjectStatus = true)
  1673. }
  1674. },
  1675. null
  1676. ),
  1677. createVNode(
  1678. Cell,
  1679. { title: '课时数' },
  1680. {
  1681. default: function _default() {
  1682. return createVNode(
  1683. Stepper,
  1684. {
  1685. modelValue: _this15.courseNum,
  1686. 'onUpdate:modelValue':
  1687. function onUpdateModelValue(
  1688. $event
  1689. ) {
  1690. return (_this15.courseNum =
  1691. $event)
  1692. },
  1693. theme: 'round',
  1694. max: 12,
  1695. min: 1,
  1696. buttonSize: 22,
  1697. onChange: function onChange() {
  1698. _this15.selectCourseList = []
  1699. }
  1700. },
  1701. null
  1702. )
  1703. }
  1704. }
  1705. )
  1706. ]
  1707. }
  1708. }
  1709. ),
  1710. this.calendarStatus &&
  1711. createVNode('div', { class: styles$2.group }, [
  1712. createVNode(
  1713. Calendar,
  1714. {
  1715. selectList: this.selectCourseList,
  1716. list: this.calendarList,
  1717. maxDays: this.courseNum,
  1718. nextMonth: function nextMonth(date) {
  1719. return _this15.getList(date)
  1720. },
  1721. prevMonth: function prevMonth(date) {
  1722. return _this15.getList(date)
  1723. },
  1724. selectDay: this.onSelectDay,
  1725. calendarDate: this.calendarDate,
  1726. 'onUpdate:calendarDate':
  1727. function onUpdateCalendarDate($event) {
  1728. return (_this15.calendarDate = $event)
  1729. }
  1730. },
  1731. null
  1732. )
  1733. ]),
  1734. createVNode(
  1735. Cell,
  1736. { class: [styles$2.arrangeCell] },
  1737. {
  1738. title: function title() {
  1739. return createVNode(
  1740. 'div',
  1741. { class: styles$2.rTitle },
  1742. [
  1743. createVNode('span', null, [
  1744. createTextVNode(
  1745. '\u5DF2\u9009\u62E9\u8BFE\u7A0B\u65F6\u95F4'
  1746. )
  1747. ])
  1748. ]
  1749. )
  1750. },
  1751. label: function label() {
  1752. return createVNode(
  1753. 'div',
  1754. { class: styles$2.rTag },
  1755. [
  1756. _this15.showSelectList.map(function (item) {
  1757. return createVNode(Fragment, null, [
  1758. createVNode(
  1759. Tag,
  1760. {
  1761. plain: true,
  1762. round: true,
  1763. closeable: true,
  1764. size: 'large',
  1765. type: 'primary',
  1766. class: styles$2.tag,
  1767. onClose: function onClose() {
  1768. return _this15.onCloseTag(item)
  1769. }
  1770. },
  1771. {
  1772. default: function _default() {
  1773. return [item.title]
  1774. }
  1775. }
  1776. ),
  1777. createVNode('br', null, null)
  1778. ])
  1779. })
  1780. ]
  1781. )
  1782. }
  1783. }
  1784. ),
  1785. createVNode(
  1786. Popup,
  1787. {
  1788. show: this.selectStatus,
  1789. class: styles$2.selectPopup
  1790. },
  1791. {
  1792. default: function _default() {
  1793. return [
  1794. createVNode(
  1795. 'div',
  1796. { class: styles$2.selectContainer },
  1797. [
  1798. createVNode(
  1799. 'div',
  1800. { class: styles$2.rTitle },
  1801. [
  1802. createVNode('span', null, [
  1803. createTextVNode('\u63D0\u793A')
  1804. ])
  1805. ]
  1806. ),
  1807. createVNode(
  1808. 'div',
  1809. { class: styles$2.selectPopupContent },
  1810. [
  1811. createVNode(
  1812. 'p',
  1813. { class: styles$2.desc },
  1814. [
  1815. _this15.selectType ===
  1816. 'noEnough' &&
  1817. !_this15.coursePlanStatus
  1818. ? '您所选择的上课时间未达到您输入的课时数,系统根据已选时间将自动按周顺延排课。'
  1819. : '您已选择以下上课时间段,时间段会暂时锁定,锁定期间学员不可购买该时间段课程。'
  1820. ]
  1821. ),
  1822. _this15.coursePlanList &&
  1823. _this15.coursePlanList.length > 0 &&
  1824. _this15.coursePlanStatus &&
  1825. createVNode(
  1826. 'p',
  1827. { class: styles$2.times },
  1828. [
  1829. _this15.coursePlanList.map(
  1830. function (item) {
  1831. return createVNode(
  1832. 'span',
  1833. null,
  1834. [
  1835. dayjs(
  1836. item.startTime ||
  1837. new Date()
  1838. ).format('YYYY-MM-DD'),
  1839. ' ',
  1840. dayjs(
  1841. item.startTime ||
  1842. new Date()
  1843. ).format('HH:mm'),
  1844. createTextVNode('~'),
  1845. dayjs(
  1846. item.endTime ||
  1847. new Date()
  1848. ).format('HH:mm')
  1849. ]
  1850. )
  1851. }
  1852. )
  1853. ]
  1854. )
  1855. ]
  1856. ),
  1857. createVNode(
  1858. 'div',
  1859. { class: styles$2.selectBtn },
  1860. [
  1861. createVNode(
  1862. Button,
  1863. {
  1864. class: styles$2.btn,
  1865. type: 'primary',
  1866. round: true,
  1867. block: true,
  1868. plain: true,
  1869. onClick: _this15.onReset
  1870. },
  1871. {
  1872. default: function _default() {
  1873. return [
  1874. _this15.selectType ===
  1875. 'noEnough'
  1876. ? '继续选择'
  1877. : '重新选择'
  1878. ]
  1879. }
  1880. }
  1881. ),
  1882. createVNode(
  1883. Button,
  1884. {
  1885. class: styles$2.btn,
  1886. type: 'primary',
  1887. round: true,
  1888. block: true,
  1889. onClick: _this15.onSure
  1890. },
  1891. {
  1892. default: function _default() {
  1893. return [
  1894. createTextVNode(
  1895. '\u786E\u8BA4'
  1896. )
  1897. ]
  1898. }
  1899. }
  1900. )
  1901. ]
  1902. )
  1903. ]
  1904. )
  1905. ]
  1906. }
  1907. }
  1908. ),
  1909. createVNode(
  1910. ActionSheet,
  1911. {
  1912. show: this.subjectStatus,
  1913. actions: this.teacherSubjectList,
  1914. cancelText: '取消',
  1915. closeOnClickAction: true,
  1916. onCancel: function onCancel() {
  1917. return (_this15.subjectStatus = false)
  1918. },
  1919. onSelect: function onSelect(item) {
  1920. var subjectName = item.subjectName,
  1921. subjectPrice = item.subjectPrice,
  1922. courseMinutes = item.courseMinutes,
  1923. subjectId = item.subjectId
  1924. _this15.subjectInfo = {
  1925. subjectPrice: subjectPrice,
  1926. courseMinutes: courseMinutes,
  1927. subjectName: subjectName,
  1928. subjectId: subjectId
  1929. }
  1930. _this15.subjectStatus = false
  1931. }
  1932. },
  1933. null
  1934. )
  1935. ]),
  1936. createVNode(
  1937. 'div',
  1938. {
  1939. class: ['btnGroup', styles$2.fixedBtn],
  1940. style: { background: '#fff', paddingTop: '10px' }
  1941. },
  1942. [
  1943. createVNode(
  1944. Button,
  1945. {
  1946. block: true,
  1947. round: true,
  1948. type: 'primary',
  1949. onClick: this.onSubmit
  1950. },
  1951. {
  1952. default: function _default() {
  1953. return [
  1954. createTextVNode('\u786E\u8BA4\u7EA6\u8BFE')
  1955. ]
  1956. }
  1957. }
  1958. )
  1959. ]
  1960. )
  1961. ])
  1962. : createVNode(
  1963. ColResult,
  1964. {
  1965. btnStatus: false,
  1966. classImgSize: 'SMALL',
  1967. tips: '老师暂未开放陪练课'
  1968. },
  1969. null
  1970. ))
  1971. ])
  1972. }
  1973. })
  1974. var liveList = '_liveList_396y7_1'
  1975. var liCover = '_liCover_396y7_4'
  1976. var liContent = '_liContent_396y7_10'
  1977. var liTitle = '_liTitle_396y7_17'
  1978. var num = '_num_396y7_25'
  1979. var buyNum = '_buyNum_396y7_29'
  1980. var price = '_price_396y7_36'
  1981. var priceNum = '_priceNum_396y7_40'
  1982. var label = '_label_396y7_49'
  1983. var liveGroup = '_liveGroup_396y7_52'
  1984. var subjectName = '_subjectName_396y7_57'
  1985. var timerString = '_timerString_396y7_68'
  1986. var styles$1 = {
  1987. liveList: liveList,
  1988. liCover: liCover,
  1989. liContent: liContent,
  1990. liTitle: liTitle,
  1991. num: num,
  1992. buyNum: buyNum,
  1993. price: price,
  1994. priceNum: priceNum,
  1995. label: label,
  1996. liveGroup: liveGroup,
  1997. subjectName: subjectName,
  1998. timerString: timerString
  1999. }
  2000. function _isSlot$1(s) {
  2001. return (
  2002. typeof s === 'function' ||
  2003. (Object.prototype.toString.call(s) === '[object Object]' &&
  2004. !isVNode(s))
  2005. )
  2006. }
  2007. var Live = defineComponent({
  2008. name: 'live',
  2009. data: function data() {
  2010. var query = this.$route.query
  2011. return {
  2012. list: [],
  2013. dataShow: true, // 判断是否有数据
  2014. loading: false,
  2015. finished: false,
  2016. params: {
  2017. teacherId: query.teacherId,
  2018. groupStatus: 'APPLY',
  2019. page: 1,
  2020. rows: 20
  2021. }
  2022. }
  2023. },
  2024. mounted: function mounted() {
  2025. this.getList()
  2026. },
  2027. methods: {
  2028. formatTime: function formatTime(time) {
  2029. var timeStr = dayjs(time || new Date())
  2030. var weekStr = [
  2031. '周日',
  2032. '周一',
  2033. '周二',
  2034. '周三',
  2035. '周四',
  2036. '周五',
  2037. '周六'
  2038. ] // console.log(timeStr.day())
  2039. return (
  2040. timeStr.format('YYYY-MM-DD') +
  2041. '('.concat(weekStr[timeStr.day()], ')')
  2042. )
  2043. },
  2044. getList: function getList() {
  2045. var _this16 = this
  2046. return _asyncToGenerator(
  2047. /*#__PURE__*/ regeneratorRuntime.mark(function _callee14() {
  2048. var params, res, result
  2049. return regeneratorRuntime.wrap(
  2050. function _callee14$(_context14) {
  2051. while (1) {
  2052. switch ((_context14.prev = _context14.next)) {
  2053. case 0:
  2054. _context14.prev = 0
  2055. params = _objectSpread({}, _this16.params)
  2056. if (state.version) {
  2057. params.version = state.version || '' // 处理ios审核版本
  2058. params.platform = 'ios-student'
  2059. }
  2060. _context14.next = 5
  2061. return request.post(
  2062. '/api-student/courseGroup/queryPageCourseGroup',
  2063. { data: _objectSpread({}, params) }
  2064. )
  2065. case 5:
  2066. res = _context14.sent
  2067. _this16.loading = false
  2068. result = res.data || {} // 处理重复请求数据
  2069. if (
  2070. !(
  2071. _this16.list.length > 0 && result.pageNo === 1
  2072. )
  2073. ) {
  2074. _context14.next = 10
  2075. break
  2076. }
  2077. return _context14.abrupt('return')
  2078. case 10:
  2079. _this16.list = _this16.list.concat(
  2080. result.rows || []
  2081. )
  2082. _this16.finished =
  2083. result.pageNo >= result.totalPage
  2084. _this16.params.page = result.pageNo + 1
  2085. _this16.dataShow = _this16.list.length > 0
  2086. _context14.next = 20
  2087. break
  2088. case 16:
  2089. _context14.prev = 16
  2090. _context14.t0 = _context14['catch'](0)
  2091. _this16.dataShow = false
  2092. _this16.finished = true
  2093. case 20:
  2094. case 'end':
  2095. return _context14.stop()
  2096. }
  2097. }
  2098. },
  2099. _callee14,
  2100. null,
  2101. [[0, 16]]
  2102. )
  2103. })
  2104. )()
  2105. },
  2106. onDetail: function onDetail(item) {
  2107. this.$router.push({
  2108. path: '/liveDetail',
  2109. query: { groupId: item.courseGroupId }
  2110. })
  2111. }
  2112. },
  2113. render: function render() {
  2114. var _this17 = this
  2115. var _slot
  2116. return createVNode(Fragment, null, [
  2117. this.dataShow
  2118. ? createVNode(
  2119. List,
  2120. {
  2121. class: styles$1.liveList,
  2122. loading: this.loading,
  2123. 'onUpdate:loading': function onUpdateLoading($event) {
  2124. return (_this17.loading = $event)
  2125. },
  2126. immediateCheck: false,
  2127. finished: this.finished,
  2128. finishedText: '没有更多了'
  2129. },
  2130. _isSlot$1(
  2131. (_slot = this.list.map(function (item) {
  2132. return createVNode(
  2133. CellGroup,
  2134. {
  2135. class: styles$1.liveGroup,
  2136. border: false,
  2137. onClick: function onClick() {
  2138. return _this17.onDetail(item)
  2139. }
  2140. },
  2141. {
  2142. default: function _default() {
  2143. return [
  2144. createVNode(
  2145. Cell,
  2146. {
  2147. style: {
  2148. paddingTop: '19px',
  2149. paddingBottom: '19px'
  2150. }
  2151. },
  2152. {
  2153. icon: function icon() {
  2154. return createVNode(
  2155. 'div',
  2156. {
  2157. style: {
  2158. position: 'relative',
  2159. lineHeight: '0'
  2160. }
  2161. },
  2162. [
  2163. createVNode(
  2164. Image,
  2165. {
  2166. class: styles$1.liCover,
  2167. src: item.backgroundPic,
  2168. fit: 'cover'
  2169. },
  2170. null
  2171. ),
  2172. createVNode(
  2173. 'span',
  2174. { class: styles$1.subjectName },
  2175. [
  2176. item === null || item === void 0
  2177. ? void 0
  2178. : item.subjectName
  2179. ]
  2180. )
  2181. ]
  2182. )
  2183. },
  2184. title: function title() {
  2185. return createVNode(
  2186. 'div',
  2187. { class: styles$1.liContent },
  2188. [
  2189. createVNode(
  2190. 'div',
  2191. {
  2192. class: [
  2193. styles$1.liTitle,
  2194. 'van-ellipsis'
  2195. ]
  2196. },
  2197. [item.courseGroupName]
  2198. ),
  2199. createVNode(
  2200. 'div',
  2201. { class: styles$1.price },
  2202. [
  2203. item.coursePrice > 0 &&
  2204. createVNode(Fragment, null, [
  2205. createVNode(
  2206. 'span',
  2207. {
  2208. class: styles$1.priceNum
  2209. },
  2210. [
  2211. createVNode('i', null, [
  2212. createTextVNode(
  2213. '\xA5'
  2214. )
  2215. ]),
  2216. _this17.$filters.moneyFormat(
  2217. item.coursePrice
  2218. )
  2219. ]
  2220. )
  2221. ]),
  2222. createVNode(
  2223. 'span',
  2224. { class: styles$1.label },
  2225. [
  2226. item.coursePrice > 0 && '/',
  2227. item.courseNum,
  2228. createTextVNode(
  2229. '\u8BFE\u65F6'
  2230. )
  2231. ]
  2232. )
  2233. ]
  2234. )
  2235. ]
  2236. )
  2237. }
  2238. }
  2239. ),
  2240. createVNode(
  2241. Cell,
  2242. {
  2243. titleStyle: {
  2244. color: '#666666',
  2245. fontSize: '13px'
  2246. }
  2247. },
  2248. {
  2249. title: function title() {
  2250. return createVNode(
  2251. 'span',
  2252. { class: styles$1.timerString },
  2253. [
  2254. _this17.formatTime(
  2255. item.salesStartDate
  2256. )
  2257. ]
  2258. )
  2259. },
  2260. default: function _default() {
  2261. return createVNode('div', null, [
  2262. item.existBuy === 1
  2263. ? createVNode(
  2264. 'span',
  2265. { class: styles$1.buyNum },
  2266. [
  2267. createTextVNode(
  2268. '\u5DF2\u8D2D\u4E70'
  2269. )
  2270. ]
  2271. )
  2272. : createVNode(
  2273. 'span',
  2274. { class: styles$1.num },
  2275. [
  2276. item.studentCount,
  2277. createTextVNode(
  2278. '\u4EBA\u5DF2\u8D2D\u4E70'
  2279. )
  2280. ]
  2281. )
  2282. ])
  2283. }
  2284. }
  2285. )
  2286. ]
  2287. }
  2288. }
  2289. )
  2290. }))
  2291. )
  2292. ? _slot
  2293. : {
  2294. default: function _default() {
  2295. return [_slot]
  2296. }
  2297. }
  2298. )
  2299. : createVNode(
  2300. ColResult,
  2301. {
  2302. btnStatus: false,
  2303. classImgSize: 'SMALL',
  2304. tips: '暂无直播课'
  2305. },
  2306. null
  2307. )
  2308. ])
  2309. }
  2310. })
  2311. var videoList = '_videoList_1yf9v_1'
  2312. var styles = { videoList: videoList }
  2313. function _isSlot(s) {
  2314. return (
  2315. typeof s === 'function' ||
  2316. (Object.prototype.toString.call(s) === '[object Object]' &&
  2317. !isVNode(s))
  2318. )
  2319. }
  2320. var VideoList = defineComponent({
  2321. name: 'VideoList',
  2322. data: function data() {
  2323. var query = this.$route.query
  2324. return {
  2325. list: [],
  2326. dataShow: true, // 判断是否有数据
  2327. loading: false,
  2328. finished: false,
  2329. params: { teacherId: query.teacherId, page: 1, rows: 20 }
  2330. }
  2331. },
  2332. mounted: function mounted() {
  2333. this.getList()
  2334. },
  2335. methods: {
  2336. getList: function getList() {
  2337. var _this18 = this
  2338. return _asyncToGenerator(
  2339. /*#__PURE__*/ regeneratorRuntime.mark(function _callee15() {
  2340. var params, res, result
  2341. return regeneratorRuntime.wrap(
  2342. function _callee15$(_context15) {
  2343. while (1) {
  2344. switch ((_context15.prev = _context15.next)) {
  2345. case 0:
  2346. _context15.prev = 0
  2347. params = _objectSpread({}, _this18.params)
  2348. if (state.version) {
  2349. params.version = state.version || '' // 处理ios审核版本
  2350. params.platform = 'ios-student'
  2351. }
  2352. _context15.next = 5
  2353. return request.post(
  2354. '/api-student/videoLesson/selectGroup',
  2355. { data: _objectSpread({}, params) }
  2356. )
  2357. case 5:
  2358. res = _context15.sent
  2359. _this18.loading = false
  2360. result = res.data || {} // 处理重复请求数据
  2361. if (
  2362. !(
  2363. _this18.list.length > 0 && result.pageNo === 1
  2364. )
  2365. ) {
  2366. _context15.next = 10
  2367. break
  2368. }
  2369. return _context15.abrupt('return')
  2370. case 10:
  2371. _this18.list = _this18.list.concat(
  2372. result.rows || []
  2373. )
  2374. _this18.finished =
  2375. result.pageNo >= result.totalPage
  2376. _this18.params.page = result.pageNo + 1
  2377. _this18.dataShow = _this18.list.length > 0
  2378. _context15.next = 20
  2379. break
  2380. case 16:
  2381. _context15.prev = 16
  2382. _context15.t0 = _context15['catch'](0)
  2383. _this18.dataShow = false
  2384. _this18.finished = true
  2385. case 20:
  2386. case 'end':
  2387. return _context15.stop()
  2388. }
  2389. }
  2390. },
  2391. _callee15,
  2392. null,
  2393. [[0, 16]]
  2394. )
  2395. })
  2396. )()
  2397. },
  2398. onDetail: function onDetail(item) {
  2399. this.$router.push({
  2400. path: '/videoDetail',
  2401. query: { groupId: item.id }
  2402. })
  2403. }
  2404. },
  2405. render: function render() {
  2406. var _this19 = this
  2407. var _slot
  2408. return createVNode(Fragment, null, [
  2409. this.dataShow
  2410. ? createVNode(
  2411. List,
  2412. {
  2413. class: styles.videoList,
  2414. loading: this.loading,
  2415. 'onUpdate:loading': function onUpdateLoading($event) {
  2416. return (_this19.loading = $event)
  2417. },
  2418. finished: this.finished,
  2419. immediateCheck: false,
  2420. finishedText: '没有更多了',
  2421. onLoad: this.getList
  2422. },
  2423. _isSlot(
  2424. (_slot = this.list.map(function (item) {
  2425. return createVNode(
  2426. VideoItem,
  2427. { item: item, onClick: _this19.onDetail },
  2428. null
  2429. )
  2430. }))
  2431. )
  2432. ? _slot
  2433. : {
  2434. default: function _default() {
  2435. return [_slot]
  2436. }
  2437. }
  2438. )
  2439. : createVNode(
  2440. ColResult,
  2441. {
  2442. btnStatus: false,
  2443. classImgSize: 'SMALL',
  2444. tips: '暂无视频课'
  2445. },
  2446. null
  2447. )
  2448. ])
  2449. }
  2450. })
  2451. var Music = defineComponent({
  2452. name: 'music',
  2453. data: function data() {
  2454. var query = this.$route.query
  2455. return {
  2456. teacherId: query.teacherId,
  2457. list: [],
  2458. dataShow: false, // 判断是否有数据
  2459. loading: false,
  2460. finished: false,
  2461. params: { page: 1, rows: 20 }
  2462. }
  2463. },
  2464. methods: {
  2465. onItemClick: function onItemClick(item) {
  2466. var _this20 = this
  2467. musicBuy(item, function (path) {
  2468. _this20.$router.push({
  2469. path: path,
  2470. query: { orderType: 'MUSIC' }
  2471. })
  2472. })
  2473. }
  2474. },
  2475. render: function render() {
  2476. return createVNode(Fragment, null, [
  2477. createVNode(
  2478. MusicList,
  2479. {
  2480. hideSearch: true,
  2481. myself: true,
  2482. onItemClick: this.onItemClick,
  2483. teacherId: this.teacherId
  2484. },
  2485. null
  2486. )
  2487. ])
  2488. }
  2489. })
  2490. var getAssetsHomeFile$1 = function getAssetsHomeFile$1(fileName) {
  2491. var path = '../images/'.concat(fileName)
  2492. var modules = {
  2493. '../images/cert_active.png': __glob_18_0,
  2494. '../images/cert_default.png': __glob_18_1,
  2495. '../images/follow_bg.png': __glob_18_2,
  2496. '../images/head_bg.png': __glob_18_3,
  2497. '../images/icon-chat.png': __glob_18_4,
  2498. '../images/icon-close.png': __glob_18_5,
  2499. '../images/icon_fans.png': __glob_18_6,
  2500. '../images/icon_subject.png': __glob_18_7,
  2501. '../images/icon_video.png': __glob_18_8,
  2502. '../images/live_active.png': __glob_18_9,
  2503. '../images/live_bg.png': __glob_18_10,
  2504. '../images/live_default.png': __glob_18_11,
  2505. '../images/music_active.png': __glob_18_12,
  2506. '../images/music_default.png': __glob_18_13,
  2507. '../images/teacher-icon.png': __glob_18_14,
  2508. '../images/video_active.png': __glob_18_15,
  2509. '../images/video_default.png': __glob_18_16,
  2510. '../images/vip_active.png': __glob_18_17,
  2511. '../images/vip_default.png': __glob_18_18
  2512. }
  2513. return modules[path].default
  2514. }
  2515. var TeacherHeader = defineComponent({
  2516. name: 'teacher-header',
  2517. props: {
  2518. userInfo: { type: Object, default: {} },
  2519. teacherId: { type: String || Number, default: '' }
  2520. },
  2521. data: function data() {
  2522. return { iconShow: false }
  2523. },
  2524. computed: {
  2525. subjectNameList: function subjectNameList() {
  2526. var userInfo = this.userInfo
  2527. var subjectName = userInfo.subjectName
  2528. return subjectName ? subjectName.split(',') : []
  2529. },
  2530. starGrade: function starGrade() {
  2531. var starGrade = this.userInfo.starGrade
  2532. return Number(starGrade) || 0
  2533. }
  2534. },
  2535. methods: {
  2536. onStart: function onStart() {
  2537. var _this21 = this
  2538. return _asyncToGenerator(
  2539. /*#__PURE__*/ regeneratorRuntime.mark(function _callee16() {
  2540. var star, count
  2541. return regeneratorRuntime.wrap(
  2542. function _callee16$(_context16) {
  2543. while (1) {
  2544. switch ((_context16.prev = _context16.next)) {
  2545. case 0:
  2546. _context16.prev = 0
  2547. star = _this21.userInfo.isStar ? 0 : 1
  2548. _context16.next = 4
  2549. return request.get(
  2550. '/api-student/teacher/starOrUnStar',
  2551. {
  2552. params: {
  2553. userId: _this21.teacherId,
  2554. starStatus: star
  2555. }
  2556. }
  2557. )
  2558. case 4: // const str = star ? '关注成功' : '已取消关注'
  2559. _this21.userInfo.isStar = star
  2560. count = star
  2561. ? _this21.userInfo.fansNum + 1
  2562. : _this21.userInfo.fansNum - 1
  2563. _this21.userInfo.fansNum = count <= 0 ? 0 : count // Toast(str)
  2564. _context16.next = 11
  2565. break
  2566. case 9:
  2567. _context16.prev = 9
  2568. _context16.t0 = _context16['catch'](0)
  2569. case 11:
  2570. case 'end':
  2571. return _context16.stop()
  2572. }
  2573. }
  2574. },
  2575. _callee16,
  2576. null,
  2577. [[0, 9]]
  2578. )
  2579. })
  2580. )()
  2581. }, // 检验是否有对应徽章
  2582. checkBadge: function checkBadge(type) {
  2583. // tag : 老师点亮图标
  2584. // STYLE:个人风采
  2585. // VIDEO:视频课
  2586. // LIVE:直播课,
  2587. // MUSIC:曲目 逗号隔开
  2588. var status = false
  2589. var userInfo = this.userInfo
  2590. switch (type) {
  2591. case 'STYLE':
  2592. case 'VIDEO':
  2593. case 'LIVE':
  2594. case 'MUSIC':
  2595. if (userInfo.tag) {
  2596. status = userInfo.tag.indexOf(type) > -1
  2597. }
  2598. break
  2599. case 'VIP':
  2600. status = userInfo.isVip > 0
  2601. break
  2602. default:
  2603. status = false
  2604. break
  2605. }
  2606. return status
  2607. },
  2608. openTeacherIcon: function openTeacherIcon() {
  2609. this.iconShow = true
  2610. }
  2611. },
  2612. render: function render() {
  2613. var _this22 = this
  2614. var iconList = [
  2615. {
  2616. icon: 'cert_active.png',
  2617. title: '演奏Mlog达人',
  2618. des: '个人风采中上传老师风采视频并通过审核'
  2619. },
  2620. {
  2621. icon: 'video_active.png',
  2622. title: '教学视频达人',
  2623. des: '发布您制作的教学视频课程并通过审核'
  2624. },
  2625. {
  2626. icon: 'live_active.png',
  2627. title: '直播up达人',
  2628. des: '达到开通直播权限标准并开通直播功能'
  2629. },
  2630. {
  2631. icon: 'music_active.png',
  2632. title: '乐谱歌单达人',
  2633. des: '上传您制作的乐谱并通过审核'
  2634. }
  2635. ]
  2636. return createVNode(Fragment, null, [
  2637. createVNode('div', { class: styles$6.headerContent }, [
  2638. createVNode('div', { class: styles$6.headerCount }, [
  2639. createVNode('div', { class: styles$6.teacherContent }, [
  2640. createVNode(
  2641. 'div',
  2642. {
  2643. class: styles$6.teacherIcon,
  2644. onClick: function onClick() {
  2645. // 判断是否在直播中
  2646. if (_this22.userInfo.liveing === 1) {
  2647. postMessage({
  2648. api: 'joinLiveRoom',
  2649. content: {
  2650. roomId: _this22.userInfo.roomUid,
  2651. teacherId: _this22.userInfo.userId
  2652. }
  2653. })
  2654. }
  2655. }
  2656. },
  2657. [
  2658. createVNode(
  2659. Image,
  2660. {
  2661. class: [
  2662. styles$6.avatar,
  2663. this.checkBadge('VIP') && styles$6.avatarActive
  2664. ],
  2665. round: true,
  2666. src: this.userInfo.heardUrl || IconAvator,
  2667. fit: 'cover'
  2668. },
  2669. null
  2670. ),
  2671. this.userInfo.liveing === 1 &&
  2672. createVNode('p', { class: styles$6.liveTag }, [
  2673. createTextVNode('\u76F4\u64AD\u4E2D')
  2674. ]),
  2675. createVNode(
  2676. Image,
  2677. {
  2678. class: styles$6.teacherIconVip,
  2679. src: this.checkBadge('VIP')
  2680. ? getAssetsHomeFile$1('vip_active.png')
  2681. : getAssetsHomeFile$1('vip_default.png')
  2682. },
  2683. null
  2684. )
  2685. ]
  2686. ),
  2687. createVNode('div', { class: styles$6.teacherOperation }, [
  2688. createVNode(
  2689. Button,
  2690. {
  2691. type: 'primary',
  2692. size: 'small',
  2693. plain: true,
  2694. round: true,
  2695. class: [
  2696. styles$6.btn,
  2697. this.userInfo.isStar ? styles$6.btnStar : ''
  2698. ],
  2699. onClick: this.onStart
  2700. },
  2701. {
  2702. default: function _default() {
  2703. return [
  2704. _this22.userInfo.isStar ? '已关注' : '关注'
  2705. ]
  2706. }
  2707. }
  2708. ),
  2709. createVNode(
  2710. Button,
  2711. {
  2712. type: 'primary',
  2713. size: 'small',
  2714. round: true,
  2715. style: { marginLeft: '5px' },
  2716. class: styles$6.btn,
  2717. icon: IconChat,
  2718. onClick: function onClick() {
  2719. postMessage({
  2720. api: 'joinChatGroup',
  2721. content: {
  2722. type: 'single', // single 单人 multi 多人
  2723. id: _this22.teacherId
  2724. }
  2725. })
  2726. }
  2727. },
  2728. {
  2729. default: function _default() {
  2730. return [createTextVNode('\u804A\u5929')]
  2731. }
  2732. }
  2733. )
  2734. ])
  2735. ]),
  2736. createVNode('div', { class: styles$6.teacherInfo }, [
  2737. createVNode('div', { class: styles$6.teacherInfoName }, [
  2738. this.userInfo.username ||
  2739. '\u6E38\u5BA2'.concat(this.userInfo.userId || '')
  2740. ]),
  2741. this.userInfo.degreeFlag
  2742. ? createVNode('img', { src: IconXueli }, null)
  2743. : null,
  2744. this.userInfo.teacherFlag
  2745. ? createVNode('img', { src: IconJiaozi }, null)
  2746. : null
  2747. ]),
  2748. createVNode('div', { class: styles$6.teacherHonor }, [
  2749. createVNode('div', null, [
  2750. createTextVNode('\u52CB\u7AE0\uFF1A')
  2751. ]),
  2752. createVNode(
  2753. 'div',
  2754. {
  2755. class: styles$6.teacherIcons,
  2756. onClick: this.openTeacherIcon
  2757. },
  2758. [
  2759. createVNode(
  2760. Image,
  2761. {
  2762. class: styles$6.iconOther,
  2763. src: this.checkBadge('STYLE')
  2764. ? getAssetsHomeFile$1('cert_active.png')
  2765. : getAssetsHomeFile$1('cert_default.png')
  2766. },
  2767. null
  2768. ),
  2769. createVNode(
  2770. Image,
  2771. {
  2772. class: styles$6.iconOther,
  2773. src: this.checkBadge('VIDEO')
  2774. ? getAssetsHomeFile$1('video_active.png')
  2775. : getAssetsHomeFile$1('video_default.png')
  2776. },
  2777. null
  2778. ),
  2779. createVNode(
  2780. Image,
  2781. {
  2782. class: styles$6.iconOther,
  2783. src: this.checkBadge('LIVE')
  2784. ? getAssetsHomeFile$1('live_active.png')
  2785. : getAssetsHomeFile$1('live_default.png')
  2786. },
  2787. null
  2788. ),
  2789. createVNode(
  2790. Image,
  2791. {
  2792. class: styles$6.iconOther,
  2793. src: this.checkBadge('MUSIC')
  2794. ? getAssetsHomeFile$1('music_active.png')
  2795. : getAssetsHomeFile$1('music_default.png')
  2796. },
  2797. null
  2798. )
  2799. ]
  2800. ),
  2801. createVNode('div', { class: styles$6.score }, [
  2802. createTextVNode('\u8BC4\u5206\uFF1A')
  2803. ]),
  2804. createVNode('div', { class: styles$6.level }, [
  2805. this.starGrade
  2806. ? createVNode(
  2807. Rate,
  2808. {
  2809. readonly: true,
  2810. modelValue: this.starGrade,
  2811. iconPrefix: 'iconfont',
  2812. color: '#FFC459',
  2813. 'void-icon': 'star_default',
  2814. icon: 'star_active',
  2815. size: 15
  2816. },
  2817. null
  2818. )
  2819. : createVNode(
  2820. 'span',
  2821. { style: { fontSize: '12px', color: '#999999' } },
  2822. [createTextVNode('\u6682\u65E0\u8BC4\u5206')]
  2823. )
  2824. ])
  2825. ]),
  2826. createVNode('div', { class: styles$6.piNameSubject }, [
  2827. createVNode(
  2828. Image,
  2829. {
  2830. class: styles$6.subjectSection,
  2831. src: getAssetsHomeFile$1('icon_subject.png'),
  2832. fit: 'contain'
  2833. },
  2834. null
  2835. ),
  2836. createVNode('div', { class: styles$6.subjectList }, [
  2837. this.subjectNameList.map(function (item) {
  2838. return createVNode(
  2839. 'span',
  2840. { class: styles$6.subject },
  2841. [item]
  2842. )
  2843. })
  2844. ])
  2845. ]),
  2846. createVNode('div', { class: styles$6['teacher-bottom'] }, [
  2847. createVNode('div', { class: styles$6['teacher-data'] }, [
  2848. createVNode(
  2849. 'div',
  2850. { class: styles$6['teacher-data_item'] },
  2851. [
  2852. createTextVNode('\u7C89\u4E1D '),
  2853. createVNode('span', null, [
  2854. this.userInfo.fansNum || 0
  2855. ])
  2856. ]
  2857. ),
  2858. createVNode(
  2859. 'div',
  2860. { class: styles$6['teacher-data_item'] },
  2861. [
  2862. createTextVNode('\u5DF2\u4E0A\u8BFE\u65F6 '),
  2863. createVNode('span', null, [
  2864. this.userInfo.expTime || 0
  2865. ])
  2866. ]
  2867. )
  2868. ])
  2869. ])
  2870. ])
  2871. ]),
  2872. createVNode(
  2873. Popup,
  2874. {
  2875. class: styles$6['teaherPopup'],
  2876. show: this.iconShow,
  2877. 'onUpdate:show': function onUpdateShow($event) {
  2878. return (_this22.iconShow = $event)
  2879. }
  2880. },
  2881. {
  2882. default: function _default() {
  2883. return [
  2884. createVNode(
  2885. Image,
  2886. { src: getAssetsHomeFile$1('teacher-icon.png') },
  2887. null
  2888. ),
  2889. createVNode(
  2890. 'div',
  2891. { class: styles$6.teacherIconWrap },
  2892. [
  2893. iconList.map(function (n) {
  2894. return createVNode(
  2895. 'div',
  2896. { class: styles$6.teacherIconItem },
  2897. [
  2898. createVNode(
  2899. 'div',
  2900. { class: styles$6.teacherIconItemTop },
  2901. [
  2902. createVNode(
  2903. Image,
  2904. { src: getAssetsHomeFile$1(n.icon) },
  2905. null
  2906. ),
  2907. createVNode(
  2908. 'div',
  2909. { class: styles$6.teacherIconTitle },
  2910. [n.title]
  2911. )
  2912. ]
  2913. ),
  2914. createVNode(
  2915. 'div',
  2916. { class: styles$6.teacherIconDes },
  2917. [n.des]
  2918. )
  2919. ]
  2920. )
  2921. })
  2922. ]
  2923. ),
  2924. createVNode(
  2925. Image,
  2926. {
  2927. onClick: function onClick() {
  2928. return (_this22.iconShow = false)
  2929. },
  2930. class: styles$6.closeIcon,
  2931. src: getAssetsHomeFile$1('icon-close.png')
  2932. },
  2933. null
  2934. )
  2935. ]
  2936. }
  2937. }
  2938. )
  2939. ])
  2940. }
  2941. })
  2942. var getAssetsHomeFile = exports(
  2943. 'getAssetsHomeFile',
  2944. function (fileName) {
  2945. var path = './images/'.concat(fileName)
  2946. var modules = {
  2947. './images/cert_active.png': __glob_18_0,
  2948. './images/cert_default.png': __glob_18_1,
  2949. './images/follow_bg.png': __glob_18_2,
  2950. './images/head_bg.png': __glob_18_3,
  2951. './images/icon-chat.png': __glob_18_4,
  2952. './images/icon-close.png': __glob_18_5,
  2953. './images/icon_fans.png': __glob_18_6,
  2954. './images/icon_subject.png': __glob_18_7,
  2955. './images/icon_video.png': __glob_18_8,
  2956. './images/live_active.png': __glob_18_9,
  2957. './images/live_bg.png': __glob_18_10,
  2958. './images/live_default.png': __glob_18_11,
  2959. './images/music_active.png': __glob_18_12,
  2960. './images/music_default.png': __glob_18_13,
  2961. './images/teacher-icon.png': __glob_18_14,
  2962. './images/video_active.png': __glob_18_15,
  2963. './images/video_default.png': __glob_18_16,
  2964. './images/vip_active.png': __glob_18_17,
  2965. './images/vip_default.png': __glob_18_18
  2966. }
  2967. return modules[path].default
  2968. }
  2969. )
  2970. var teacherHome = exports(
  2971. 'default',
  2972. defineComponent({
  2973. name: 'teacherHome',
  2974. data: function data() {
  2975. // 先取session中的数据,没有再取参数,默认为老师风采
  2976. var tabs = sessionStorage.getItem('teacherHomeTabs') || ''
  2977. var query = this.$route.query
  2978. return {
  2979. teacherId: query.teacherId,
  2980. tabs: tabs || query.tabs || 'single',
  2981. userInfo: {},
  2982. background: 'rgba(55, 205, 177, 0)',
  2983. headColor: '#fff',
  2984. height: 'auto',
  2985. backIconColor: 'white',
  2986. homeContaiterHeight: ''
  2987. }
  2988. },
  2989. created: function created() {
  2990. return _asyncToGenerator(
  2991. /*#__PURE__*/ regeneratorRuntime.mark(function _callee17() {
  2992. return regeneratorRuntime.wrap(function _callee17$(
  2993. _context17
  2994. ) {
  2995. while (1) {
  2996. switch ((_context17.prev = _context17.next)) {
  2997. case 0:
  2998. case 'end':
  2999. return _context17.stop()
  3000. }
  3001. }
  3002. },
  3003. _callee17)
  3004. })
  3005. )()
  3006. },
  3007. mounted: function mounted() {
  3008. var _this23 = this
  3009. return _asyncToGenerator(
  3010. /*#__PURE__*/ regeneratorRuntime.mark(function _callee18() {
  3011. return regeneratorRuntime.wrap(function _callee18$(
  3012. _context18
  3013. ) {
  3014. while (1) {
  3015. switch ((_context18.prev = _context18.next)) {
  3016. case 0:
  3017. _this23.getTeacherDetail() // 监听页面返回
  3018. listenerMessage('webViewOnResume', function () {
  3019. _this23.getTeacherDetail()
  3020. })
  3021. useEventListener(
  3022. document,
  3023. 'scroll',
  3024. function (evt) {
  3025. var _useWindowScroll = useWindowScroll(),
  3026. y = _useWindowScroll.y // this.background = `rgba(255, 255, 255, ${y.value / 100})`
  3027. // console.log(y.value) 142
  3028. if (y.value > 52) {
  3029. _this23.headColor = '#000'
  3030. _this23.background = '#fff'
  3031. _this23.backIconColor = 'black'
  3032. } else {
  3033. _this23.background = 'transparent'
  3034. _this23.headColor = '#fff'
  3035. _this23.backIconColor = 'white'
  3036. }
  3037. }
  3038. )
  3039. case 3:
  3040. case 'end':
  3041. return _context18.stop()
  3042. }
  3043. }
  3044. },
  3045. _callee18)
  3046. })
  3047. )()
  3048. },
  3049. methods: {
  3050. getTeacherDetail: function getTeacherDetail() {
  3051. var _this24 = this
  3052. return _asyncToGenerator(
  3053. /*#__PURE__*/ regeneratorRuntime.mark(function _callee19() {
  3054. var res
  3055. return regeneratorRuntime.wrap(
  3056. function _callee19$(_context19) {
  3057. while (1) {
  3058. switch ((_context19.prev = _context19.next)) {
  3059. case 0:
  3060. _context19.prev = 0
  3061. _context19.next = 3
  3062. return request.get(
  3063. '/api-student/teacher/queryTeacherHome',
  3064. { params: { userId: _this24.teacherId } }
  3065. )
  3066. case 3:
  3067. res = _context19.sent
  3068. _this24.userInfo = res.data
  3069. _context19.next = 9
  3070. break
  3071. case 7:
  3072. _context19.prev = 7
  3073. _context19.t0 = _context19['catch'](0)
  3074. case 9:
  3075. case 'end':
  3076. return _context19.stop()
  3077. }
  3078. }
  3079. },
  3080. _callee19,
  3081. null,
  3082. [[0, 7]]
  3083. )
  3084. })
  3085. )()
  3086. }
  3087. },
  3088. render: function render() {
  3089. var _this25 = this
  3090. return createVNode(
  3091. 'div',
  3092. { class: styles$5['teacher-record'] },
  3093. [
  3094. createVNode('div', { ref: 'headers' }, [
  3095. createVNode(
  3096. ColHeader,
  3097. {
  3098. background: this.background,
  3099. border: false,
  3100. color: this.headColor,
  3101. backIconColor: this.backIconColor,
  3102. onHeaderBack: function onHeaderBack() {
  3103. _this25.$nextTick(function () {
  3104. var _useRect = useRect(_this25.$refs.headers),
  3105. height = _useRect.height
  3106. _this25.height = height // this.homeContaiterHeight = `calc(100vh - var(--van-tabs-line-height) - ${height}px - 15px)`
  3107. })
  3108. }
  3109. },
  3110. null
  3111. )
  3112. ]),
  3113. createVNode(
  3114. 'img',
  3115. { class: styles$5.bgImg, src: this.userInfo.heardUrl },
  3116. null
  3117. ),
  3118. createVNode('div', { class: styles$5.bg }, null),
  3119. createVNode('div', { class: styles$5.teacherHeader }, [
  3120. createVNode(
  3121. TeacherHeader,
  3122. { userInfo: this.userInfo, teacherId: this.teacherId },
  3123. null
  3124. )
  3125. ]),
  3126. createVNode(
  3127. Tabs,
  3128. {
  3129. color: 'var(--van-primary)',
  3130. background: '#f8f9fc',
  3131. shrink: true,
  3132. lineWidth: 20,
  3133. sticky: true,
  3134. offsetTop: this.height,
  3135. active: this.tabs,
  3136. 'onUpdate:active': function onUpdateActive($event) {
  3137. return (_this25.tabs = $event)
  3138. },
  3139. onChange: function onChange() {
  3140. sessionStorage.setItem(
  3141. 'teacherHomeTabs',
  3142. _this25.tabs
  3143. )
  3144. }
  3145. },
  3146. {
  3147. default: function _default() {
  3148. return [
  3149. createVNode(
  3150. Tab,
  3151. { title: '个人风采', name: 'single' },
  3152. {
  3153. default: function _default() {
  3154. return [
  3155. createVNode(
  3156. 'div',
  3157. {
  3158. style: {
  3159. minHeight: _this25.homeContaiterHeight
  3160. }
  3161. },
  3162. [
  3163. _this25.tabs === 'single' &&
  3164. createVNode(
  3165. Single,
  3166. { userInfo: _this25.userInfo },
  3167. null
  3168. )
  3169. ]
  3170. )
  3171. ]
  3172. }
  3173. }
  3174. ),
  3175. createVNode(
  3176. Tab,
  3177. { title: '陪练课', name: 'practice' },
  3178. {
  3179. default: function _default() {
  3180. return [
  3181. createVNode(
  3182. 'div',
  3183. {
  3184. style: {
  3185. minHeight: _this25.homeContaiterHeight
  3186. }
  3187. },
  3188. [
  3189. _this25.tabs === 'practice' &&
  3190. createVNode(
  3191. Practice,
  3192. { userInfo: _this25.userInfo },
  3193. null
  3194. )
  3195. ]
  3196. )
  3197. ]
  3198. }
  3199. }
  3200. ),
  3201. createVNode(
  3202. Tab,
  3203. { title: '直播课', name: 'live' },
  3204. {
  3205. default: function _default() {
  3206. return [
  3207. createVNode(
  3208. 'div',
  3209. {
  3210. style: {
  3211. minHeight: _this25.homeContaiterHeight
  3212. }
  3213. },
  3214. [
  3215. _this25.tabs === 'live' &&
  3216. createVNode(Live, null, null)
  3217. ]
  3218. )
  3219. ]
  3220. }
  3221. }
  3222. ),
  3223. createVNode(
  3224. Tab,
  3225. { title: '视频课', name: 'video' },
  3226. {
  3227. default: function _default() {
  3228. return [
  3229. createVNode(
  3230. 'div',
  3231. {
  3232. style: {
  3233. minHeight: _this25.homeContaiterHeight
  3234. }
  3235. },
  3236. [
  3237. _this25.tabs === 'video' &&
  3238. createVNode(VideoList, null, null)
  3239. ]
  3240. )
  3241. ]
  3242. }
  3243. }
  3244. ),
  3245. createVNode(
  3246. Tab,
  3247. { title: '乐谱', name: 'music' },
  3248. {
  3249. default: function _default() {
  3250. return [
  3251. createVNode(
  3252. 'div',
  3253. {
  3254. style: {
  3255. minHeight: _this25.homeContaiterHeight
  3256. }
  3257. },
  3258. [
  3259. _this25.tabs === 'music' &&
  3260. createVNode(Music, null, null)
  3261. ]
  3262. )
  3263. ]
  3264. }
  3265. }
  3266. )
  3267. ]
  3268. }
  3269. }
  3270. )
  3271. ]
  3272. )
  3273. }
  3274. })
  3275. )
  3276. }
  3277. }
  3278. }
  3279. )
  3280. })()