index.d69d5aad.js 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495
  1. import { O as S } from './index.00e2f453.js'
  2. import { O as B, i as b, a as N } from './index.9a8cd497.js'
  3. import { O as F } from './index.67af0c64.js'
  4. import { O as y } from './index.4f243ca1.js'
  5. import { i as E, a as k, b as j } from './icon-message.4fd79f9f.js'
  6. import { i as P } from './icon_teacher.40b6f077.js'
  7. import {
  8. d as L,
  9. aQ as A,
  10. R as O,
  11. X as D,
  12. s as _,
  13. k as e,
  14. a2 as i,
  15. l,
  16. be as M,
  17. P as h,
  18. p as f,
  19. F as Q,
  20. ad as z,
  21. g
  22. } from './index.879f7421.js'
  23. import { a as U } from './index.a25f99fd.js'
  24. import { A as G } from './index.5e1e8fd9.js'
  25. import { L as V } from './index.9f8069d8.js'
  26. import { C as q } from './index.9a3a3b84.js'
  27. import { I as c } from './index.c463dbd0.js'
  28. import { T as K } from './index.30499db4.js'
  29. import { G as C, a as u } from './index.6515ab4b.js'
  30. import { P as R } from './index.ea988859.js'
  31. import './index.00975bf6.js'
  32. import './use-tab-status.fe36a003.js'
  33. import './index.58ad42d7.js'
  34. import './index.3c962eae.js'
  35. import './index.e17cc929.js'
  36. const H = '_searchBand_p2lg0_1',
  37. W = '_manageCell_p2lg0_7',
  38. X = '_teacherContent_p2lg0_14',
  39. J = '_content_p2lg0_19',
  40. Y = '_name_p2lg0_22',
  41. Z = '_classNum_p2lg0_29',
  42. $ = '_num_p2lg0_33',
  43. ee = '_numText_p2lg0_39',
  44. se = '_messageImg_p2lg0_44',
  45. te = '_img_p2lg0_49',
  46. oe = '_phone_p2lg0_62',
  47. ae = '_status_p2lg0_67',
  48. le = '_frozen_p2lg0_72',
  49. ne = '_codeContainer_p2lg0_75',
  50. ce = '_codeImg_p2lg0_75',
  51. re = '_codeContent_p2lg0_82',
  52. ie = '_codeTitle_p2lg0_85',
  53. ue = '_codeName_p2lg0_93',
  54. de = '_codeQr_p2lg0_99',
  55. pe = '_codeBtnText_p2lg0_112',
  56. me = '_codeTips_p2lg0_122',
  57. he = '_close_p2lg0_130',
  58. ge = '_codeBottom_p2lg0_135',
  59. _e = '_title_p2lg0_142',
  60. fe = '_shareImg_p2lg0_157',
  61. Ce = '_shareText_p2lg0_161'
  62. var o = {
  63. searchBand: H,
  64. manageCell: W,
  65. teacherContent: X,
  66. content: J,
  67. name: Y,
  68. classNum: Z,
  69. num: $,
  70. numText: ee,
  71. messageImg: se,
  72. img: te,
  73. phone: oe,
  74. status: ae,
  75. frozen: le,
  76. codeContainer: ne,
  77. codeImg: ce,
  78. codeContent: re,
  79. codeTitle: ie,
  80. codeName: ue,
  81. codeQr: de,
  82. codeBtnText: pe,
  83. codeTips: me,
  84. close: he,
  85. codeBottom: ge,
  86. title: _e,
  87. shareImg: fe,
  88. shareText: Ce
  89. }
  90. function w(r) {
  91. return (
  92. typeof r == 'function' || (Object.prototype.toString.call(r) === '[object Object]' && !z(r))
  93. )
  94. }
  95. var Qe = L({
  96. name: 'companion-teacher',
  97. setup() {
  98. const r = A(),
  99. s = O({
  100. showMessage: !1,
  101. showPopover: !1,
  102. oPopover: !1,
  103. showQrcode: !1,
  104. schoolName: null,
  105. schoolId: null,
  106. url: null,
  107. subjectList: [],
  108. list: [],
  109. listState: { dataShow: !0, loading: !1, finished: !1 },
  110. subjectText: '\u5168\u90E8\u58F0\u90E8',
  111. statusText: '\u72B6\u6001',
  112. params: { keyword: null, status: null, subjectId: null, page: 1, rows: 20 },
  113. selectItem: {}
  114. }),
  115. v = async () => {
  116. try {
  117. const { data: a } = await g.post('/api-school/subject/page', {
  118. data: { page: 1, rows: 50 }
  119. })
  120. ;(a.rows || []).forEach((n) => {
  121. s.subjectList.push({ text: n.name, value: n.id })
  122. })
  123. } catch {}
  124. },
  125. T = async (a) => {
  126. try {
  127. const t = await g.get('/api-school/schoolStaff/detail/' + a)
  128. console.log(t, 'res'),
  129. (s.schoolName = t.data.schoolName),
  130. (s.schoolId = t.data.schoolId),
  131. (s.url =
  132. location.origin +
  133. '/orchestra-school/#/companion-teacher-register?id=' +
  134. t.data.schoolId +
  135. '&name=' +
  136. t.data.schoolName)
  137. } catch {}
  138. },
  139. d = async () => {
  140. try {
  141. const a = await g.post('/api-school/teacher/page', {
  142. data: { ...s.params, schoolId: _.user.data.school.id }
  143. })
  144. s.listState.loading = !1
  145. const t = a.data || {}
  146. if (s.list.length > 0 && t.current === 1) return
  147. const n = t.rows || []
  148. n.forEach((m) => {
  149. m.subjectNames = m.subjectName ? m.subjectName.split(',') : []
  150. }),
  151. (s.list = s.list.concat(n)),
  152. (s.listState.finished = t.current >= t.pages),
  153. (s.params.page = t.current + 1),
  154. (s.listState.dataShow = s.list.length > 0)
  155. } catch {
  156. ;(s.listState.dataShow = !1), (s.listState.finished = !0)
  157. }
  158. },
  159. p = () => {
  160. ;(s.params.page = 1),
  161. (s.list = []),
  162. (s.listState.dataShow = !0),
  163. (s.listState.loading = !1),
  164. (s.listState.finished = !1),
  165. d()
  166. },
  167. x = (a) => {
  168. r.push({ path: '/companion-teacher-detail', query: { id: a.id } })
  169. },
  170. I = (a) => {
  171. ;(s.subjectText = a.selectedOptions[0].text),
  172. (s.params.subjectId = a.selectedOptions[0].value),
  173. (s.showPopover = !1),
  174. p()
  175. }
  176. return (
  177. D(() => {
  178. T(_.user.data.id), v(), d()
  179. }),
  180. () => {
  181. let a
  182. return e(Q, null, [
  183. e(
  184. y,
  185. { position: 'top' },
  186. {
  187. default: () => [
  188. e(
  189. S,
  190. { border: !1 },
  191. {
  192. right: () =>
  193. e(i, { name: 'plus', size: 19, onClick: () => (s.showQrcode = !0) }, null)
  194. }
  195. ),
  196. e(
  197. F,
  198. {
  199. placeholder: '\u8BF7\u8F93\u5165\u4F34\u5B66\u8001\u5E08\u59D3\u540D',
  200. inputBackground: 'white',
  201. background: '#f6f8f9',
  202. onSearch: (t) => {
  203. ;(s.params.keyword = t), p()
  204. }
  205. },
  206. null
  207. ),
  208. e('div', { style: { padding: '12px 13px 16px', background: '#F8F8F8' } }, [
  209. e('div', { class: o.searchBand, onClick: () => (s.showPopover = !0) }, [
  210. s.subjectText,
  211. l(' '),
  212. e(i, { name: s.showPopover ? 'arrow-up' : 'arrow-down' }, null)
  213. ]),
  214. e(
  215. 'div',
  216. {
  217. class: o.searchBand,
  218. style: 'margin-left: 16px',
  219. onClick: () => (s.oPopover = !0)
  220. },
  221. [
  222. s.statusText,
  223. l(' '),
  224. e(i, { name: s.oPopover ? 'arrow-up' : 'arrow-down' }, null)
  225. ]
  226. )
  227. ])
  228. ]
  229. }
  230. ),
  231. s.listState.dataShow
  232. ? e(
  233. V,
  234. {
  235. loading: s.listState.loading,
  236. 'onUpdate:loading': (t) => (s.listState.loading = t),
  237. finished: s.listState.finished,
  238. finishedText: ' ',
  239. class: [o.liveList],
  240. onLoad: d,
  241. immediateCheck: !1
  242. },
  243. w(
  244. (a = s.list.map((t) =>
  245. e(
  246. q,
  247. { center: !0, isLink: !0, class: o.manageCell, onClick: () => x(t) },
  248. {
  249. icon: () => e(c, { class: o.img, src: t.avatar ? t.avatar : P }, null),
  250. title: () =>
  251. e('div', { class: o.teacherContent }, [
  252. e('div', { class: o.content }, [
  253. e('p', { class: [o.name, 'van-ellipsis'] }, [t.nickname]),
  254. e('p', { class: o.subjects }, [
  255. t.subjectNames &&
  256. t.subjectNames.length > 0 &&
  257. t.subjectNames.map((n) =>
  258. e(K, { type: 'primary' }, w(n) ? n : { default: () => [n] })
  259. )
  260. ])
  261. ]),
  262. e('div', { class: o.classNum }, [
  263. e('p', { class: o.num }, [
  264. t.completedCourseScheduleNum || 0,
  265. l('/'),
  266. t.totalCourseScheduleNum || 0
  267. ]),
  268. e('p', { class: o.numText }, [l('\u8BFE\u65F6')])
  269. ]),
  270. e(
  271. 'div',
  272. {
  273. class: o.message,
  274. onClick: (n) => {
  275. n.stopPropagation(),
  276. n.preventDefault(),
  277. (s.showMessage = !0),
  278. (s.selectItem = t)
  279. }
  280. },
  281. [e(c, { class: o.messageImg, src: E }, null)]
  282. )
  283. ]),
  284. value: () =>
  285. e('span', { class: [o.status, t.status === 'LOCKED' ? o.frozen : ''] }, [
  286. U[t.status]
  287. ])
  288. }
  289. )
  290. ))
  291. )
  292. ? a
  293. : { default: () => [a] }
  294. )
  295. : e(
  296. M,
  297. {
  298. btnStatus: !1,
  299. classImgSize: 'SMALL',
  300. tips: '\u6682\u65E0\u4F34\u5B66\u8001\u5E08'
  301. },
  302. null
  303. ),
  304. e(
  305. h,
  306. {
  307. show: s.showQrcode,
  308. 'onUpdate:show': (t) => (s.showQrcode = t),
  309. position: 'bottom',
  310. style: { background: 'transparent' },
  311. safeAreaInsetBottom: !0
  312. },
  313. {
  314. default: () => [
  315. e('div', { class: o.codeContainer }, [
  316. e('div', { class: o.codeImg }, [
  317. e('div', { class: o.codeContent }, [
  318. e('h2', { class: o.codeTitle }, [s.schoolName]),
  319. e('div', { class: o.codeName }, [
  320. l('\u9080\u8BF7\u60A8\u6210\u4E3A\u4E50\u56E2\u4F34\u5B66\u8001\u5E08')
  321. ]),
  322. e('div', { class: o.codeQr }, [e(B, { text: s.url, size: '100%' }, null)]),
  323. e('div', { style: { textAlign: 'center' } }, [
  324. e('span', { class: o.codeBtnText }, [
  325. l(
  326. '\u626B\u63CF\u4E0A\u65B9\u4E8C\u7EF4\u7801\u5B8C\u6210\u8D44\u6599\u586B\u5199'
  327. )
  328. ])
  329. ]),
  330. e('div', { class: o.codeTips }, [
  331. l(
  332. '\u4E8C\u7EF4\u7801\u5C06\u5728\u4E24\u5C0F\u65F6\u540E\u5931\u6548\uFF0C\u8BF7\u53CA\u65F6\u767B\u8BB0'
  333. )
  334. ])
  335. ])
  336. ]),
  337. e('div', { class: o.codeBottom }, [
  338. e(
  339. i,
  340. {
  341. name: 'cross',
  342. size: 22,
  343. class: o.close,
  344. color: '#666',
  345. onClick: () => (s.showQrcode = !1)
  346. },
  347. null
  348. ),
  349. e('h3', { class: o.title }, [
  350. e('i', null, null),
  351. l('\u5206\u4EAB\u65B9\u5F0F')
  352. ]),
  353. e(
  354. C,
  355. { columnNum: 2, border: !1 },
  356. {
  357. default: () => [
  358. e(u, null, {
  359. icon: () => e(c, { class: o.shareImg, src: b }, null),
  360. text: () =>
  361. e('div', { class: o.shareText }, [l('\u4FDD\u5B58\u56FE\u7247')])
  362. }),
  363. e(u, null, {
  364. icon: () => e(c, { class: o.shareImg, src: N }, null),
  365. text: () => e('div', { class: o.shareText }, [l('\u5FAE\u4FE1')])
  366. })
  367. ]
  368. }
  369. )
  370. ])
  371. ])
  372. ]
  373. }
  374. ),
  375. e(
  376. h,
  377. {
  378. show: s.showMessage,
  379. 'onUpdate:show': (t) => (s.showMessage = t),
  380. position: 'bottom',
  381. style: { background: 'transparent' },
  382. safeAreaInsetBottom: !0
  383. },
  384. {
  385. default: () => [
  386. e('div', { class: o.codeContainer }, [
  387. e('div', { class: o.codeBottom }, [
  388. e(
  389. i,
  390. {
  391. name: 'cross',
  392. size: 22,
  393. class: o.close,
  394. color: '#666',
  395. onClick: () => (s.showMessage = !1)
  396. },
  397. null
  398. ),
  399. e('h3', { class: o.title }, [
  400. e('i', null, null),
  401. l('\u8054\u7CFB\u65B9\u5F0F')
  402. ]),
  403. e(
  404. C,
  405. { columnNum: 2, border: !1 },
  406. {
  407. default: () => [
  408. e(
  409. u,
  410. {
  411. onClick: () => {
  412. f({
  413. api: 'joinChatGroup',
  414. content: { type: 'single', id: s.selectItem.id }
  415. }),
  416. (s.showMessage = !1)
  417. }
  418. },
  419. {
  420. icon: () => e(c, { class: o.shareImg, src: k }, null),
  421. text: () =>
  422. e('div', { class: o.shareText }, [l('\u53D1\u9001\u6D88\u606F')])
  423. }
  424. ),
  425. e(
  426. u,
  427. {
  428. onClick: () => {
  429. f({ api: 'callPhone', content: { id: s.selectItem.phone } }),
  430. (s.showMessage = !1)
  431. }
  432. },
  433. {
  434. icon: () => e(c, { class: o.shareImg, src: j }, null),
  435. text: () =>
  436. e('div', { class: o.shareText }, [l('\u62E8\u6253\u7535\u8BDD')])
  437. }
  438. )
  439. ]
  440. }
  441. )
  442. ])
  443. ])
  444. ]
  445. }
  446. ),
  447. e(
  448. G,
  449. {
  450. show: s.oPopover,
  451. 'onUpdate:show': (t) => (s.oPopover = t),
  452. cancelText: '\u53D6\u6D88',
  453. actions: [
  454. { name: '\u5168\u90E8', id: 'ALL' },
  455. { name: '\u6CE8\u9500', id: 'CANCEL' },
  456. { name: '\u51BB\u7ED3', id: 'LOCKED' },
  457. { name: '\u6B63\u5E38', id: 'ACTIVATION' }
  458. ],
  459. onSelect: (t) => {
  460. ;(s.statusText = t.name),
  461. (s.params.status = t.id === 'ALL' ? null : t.id),
  462. (s.oPopover = !1),
  463. p()
  464. }
  465. },
  466. null
  467. ),
  468. e(
  469. h,
  470. {
  471. show: s.showPopover,
  472. 'onUpdate:show': (t) => (s.showPopover = t),
  473. round: !0,
  474. position: 'bottom'
  475. },
  476. {
  477. default: () => [
  478. e(
  479. R,
  480. {
  481. columns: s.subjectList,
  482. onCancel: () => (s.showPopover = !1),
  483. onConfirm: (t) => I(t)
  484. },
  485. null
  486. )
  487. ]
  488. }
  489. )
  490. ])
  491. }
  492. )
  493. }
  494. })
  495. export { Qe as default }