vueFilter.js 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896
  1. import Vue from "vue";
  2. import dayjs from "dayjs";
  3. import numeral from "numeral";
  4. import * as constant from "../constant";
  5. // 合并数组
  6. Vue.filter("joinArray", (value, type) => {
  7. if (!type) {
  8. type = " ";
  9. }
  10. if (typeof value == "object" && value != null) {
  11. return value.join(type);
  12. } else {
  13. return value;
  14. }
  15. });
  16. // 合作单位
  17. Vue.filter("branchType", value => {
  18. let template = {
  19. OWN: "自有",
  20. COOPERATION: "合作",
  21. LEASE: "租赁"
  22. };
  23. return template[value];
  24. });
  25. // 商品类型
  26. Vue.filter("shopType", value => {
  27. let template = {
  28. INSTRUMENT: "乐器",
  29. ACCESSORIES: "辅件",
  30. TEACHING: "教材",
  31. STAFF: "教谱",
  32. OTHER: "其它"
  33. };
  34. return template[value];
  35. });
  36. // 乐团学员状态
  37. Vue.filter("musicGroupStudentType", value => {
  38. let template = {
  39. NORMAL: "在读",
  40. LEAVE: "请假",
  41. QUIT: "退团",
  42. APPLY: "报名"
  43. };
  44. return template[value];
  45. });
  46. // 乐团学员状态
  47. Vue.filter("instrumentType", value => {
  48. let template = {
  49. GROUP: "团购",
  50. OWNED: "自备",
  51. LEASE: "租赁"
  52. };
  53. return template[value];
  54. });
  55. // 课程类型
  56. Vue.filter("coursesType", value => {
  57. let template = {
  58. NORMAL: "声部课",
  59. SINGLE: "声部课",
  60. MIX: "合奏课",
  61. HIGH: "基础技能课",
  62. VIP: "VIP课",
  63. DEMO: "试听课",
  64. COMPREHENSIVE: "综合课",
  65. // PRACTICE: '练习课',
  66. ENLIGHTENMENT: "启蒙课",
  67. TRAINING: "集训课",
  68. TRAINING_SINGLE: "集训声部课",
  69. TRAINING_MIX: "集训合奏课",
  70. CLASSROOM: "课堂课",
  71. PRACTICE: "网管课",
  72. COMM: "对外课",
  73. MUSIC: "乐团课",
  74. HIGH_ONLINE: "线上基础技能课",
  75. MUSIC_NETWORK: "乐团网管课"
  76. };
  77. return template[value];
  78. });
  79. // 课程状态
  80. Vue.filter("coursesStatus", value => {
  81. let template = {
  82. NOT_START: "未开始",
  83. UNDERWAY: "进行中",
  84. OVER: "已结束"
  85. };
  86. return template[value];
  87. });
  88. // 考勤类型
  89. Vue.filter("clockingIn", value => {
  90. let templateStatus = {
  91. NORMAL: "正常",
  92. TRUANT: "旷课",
  93. LEAVE: "请假",
  94. QUIT_SCHOOL: "休学",
  95. DROP_OUT: "退学",
  96. LATE: "迟到"
  97. };
  98. return templateStatus[value];
  99. });
  100. // 学员状态
  101. Vue.filter("studentTeamStatus", value => {
  102. let templateStatus = {
  103. NORMAL: "在读",
  104. QUIT: "退团",
  105. QUIT_SCHOOL: "休学",
  106. APPLY: "报名"
  107. };
  108. return templateStatus[value];
  109. });
  110. // 时间处理
  111. Vue.filter("dayjsFormat", (value, format = "YYYY-MM-DD") => {
  112. if (value) {
  113. return dayjs(value).format(format);
  114. } else {
  115. return value;
  116. }
  117. });
  118. Vue.filter("dayjsFormatForDate", (value, format = "MM-DD") => {
  119. if (value) {
  120. return dayjs(value).format(format);
  121. } else {
  122. return value;
  123. }
  124. });
  125. Vue.filter("dayjsFormatWeek", value => {
  126. if (value) {
  127. return dayjs(value).format("YYYY-MM");
  128. } else {
  129. return value;
  130. }
  131. });
  132. // courseViewType
  133. Vue.filter("dayjsFormatMinute", value => {
  134. if (value) {
  135. return dayjs(value).format("HH:mm");
  136. } else {
  137. return value;
  138. }
  139. });
  140. Vue.filter("formatTimer", value => {
  141. if (value) {
  142. return value.split(" ")[0];
  143. } else {
  144. return value;
  145. }
  146. });
  147. Vue.filter("formatSecondTimer", value => {
  148. if (value) {
  149. return dayjs(value).format("HH:mm:ss");
  150. } else {
  151. return value;
  152. }
  153. });
  154. Vue.filter("timerForMinFormat", value => {
  155. if (value) {
  156. return value.substring(0, 5);
  157. } else {
  158. return value;
  159. }
  160. });
  161. Vue.filter("dateForMinFormat", value => {
  162. if (value) {
  163. return value.substring(0, 16);
  164. } else {
  165. return value;
  166. }
  167. });
  168. // 乐团状态
  169. Vue.filter("musicGroupType", value => {
  170. // let template = {
  171. // APPLY: "报名中",
  172. // PAY: "缴费中",
  173. // PREPARE: "筹备中",
  174. // PROGRESS: "进行中",
  175. // CANCELED: '取消',
  176. // PAUSE: '暂停',
  177. // AUDIT: '审核中',
  178. // DRAFT: '编辑中',
  179. // AUDIT_FAILED: '审核失败'
  180. // }
  181. return constant.musicGroupType[value];
  182. });
  183. Vue.filter("paymentPatternTypeFormat", val => constant.paymentPatternType[val]);
  184. // 支付用户类型
  185. Vue.filter("payUserTypeFormat", val => constant.payUserType[val]);
  186. // 支付缴费方式
  187. Vue.filter("userPaymentTypeFormat", val => constant.userPaymentType[val]);
  188. // 课程类型格式化
  189. Vue.filter("courseTypeFormat", val => constant.courseType[val]);
  190. // 格式化签到签退记录 updateAttendanceEnum
  191. Vue.filter("updateAttendanceEnum", val => constant.updateAttendanceEnum[val]);
  192. Vue.filter("clientTypeFilter", val => constant.clientTypeFilter[val]);
  193. // 机构状态
  194. Vue.filter("organState", val => constant.organState[val]);
  195. // 机构缴费状态
  196. Vue.filter("organPayState", val => constant.organPayState[val]);
  197. // 教学伴奏
  198. Vue.filter("clientType", val => constant.clientStatus[val]);
  199. // 会员周期
  200. Vue.filter("memberEnumType", val => {
  201. let template = {
  202. DAY: "天",
  203. ...constant.memberEnum
  204. };
  205. // constant.memberEnum[val]
  206. return template[val];
  207. });
  208. // 优惠券类型
  209. Vue.filter("coupontypeDetailType", val => constant.coupontypeDetail[val]);
  210. // 学员回访状态 feedbackType
  211. Vue.filter("feedbackTypeFilter", val => constant.feedbackTypeAll[val]);
  212. Vue.filter("feedbackTypeDescFilter", val => constant.feedbackTypeDesc[val]);
  213. // 小小训练营状态
  214. Vue.filter("campStateListFilter", val => constant.campState[val]);
  215. // 时间处理
  216. Vue.filter("timer", value => {
  217. if (value) {
  218. let tempDate = new Date(value);
  219. let month =
  220. tempDate.getHours() >= 10
  221. ? tempDate.getHours()
  222. : "0" + tempDate.getHours();
  223. let days =
  224. tempDate.getMinutes() >= 10
  225. ? tempDate.getMinutes()
  226. : "0" + tempDate.getMinutes();
  227. return month + ":" + days;
  228. } else {
  229. return value;
  230. }
  231. });
  232. // 格式化成星期
  233. Vue.filter("formatWeek", date => {
  234. let nd = new Date(date);
  235. let temp = [
  236. "星期天",
  237. "星期一",
  238. "星期二",
  239. "星期三",
  240. "星期四",
  241. "星期五",
  242. "星期六"
  243. ];
  244. return temp[nd.getDay()];
  245. });
  246. // 职位
  247. Vue.filter("jobType", value => {
  248. let template = {
  249. ADVISER: "指导老师",
  250. ACADEMIC: "乐团主管",
  251. TEACHING: "乐队指导"
  252. };
  253. return template[value];
  254. });
  255. // 工作类型
  256. Vue.filter("jobNature", value => {
  257. return constant.jobNature[value];
  258. });
  259. // 发券方式
  260. Vue.filter("issueType", value => {
  261. return constant.issue[value];
  262. });
  263. // 考勤状态
  264. Vue.filter("attendanceType", value => {
  265. let template = {
  266. 0: "异常",
  267. 1: "正常",
  268. 3: "未签到"
  269. };
  270. return template[value];
  271. });
  272. // 考情签退
  273. Vue.filter("attendanceOutType", value => {
  274. let template = {
  275. 0: "异常",
  276. 1: "正常",
  277. 3: "未签退"
  278. };
  279. return template[value];
  280. });
  281. // 上课类型
  282. Vue.filter("workType", value => {
  283. return constant.workType[value];
  284. });
  285. // 交易类型
  286. Vue.filter("orderType", value => constant.orderType[value]);
  287. //
  288. Vue.filter("paymentChannelType", value => {
  289. let template = {
  290. PER: "个人",
  291. COM: "公司"
  292. };
  293. return template[value];
  294. });
  295. // 交易状态
  296. Vue.filter("dealStatus", value => {
  297. let template = {
  298. ING: "交易中",
  299. SUCCESS: "成功交易",
  300. FAILED: "交易失败",
  301. CLOSE: "交易关闭"
  302. };
  303. return template[value];
  304. });
  305. // 交易状态
  306. Vue.filter("returnStatus", value => {
  307. let template = {
  308. ING: "审核中",
  309. REJECT: "拒绝",
  310. WAIT_PAYMENT: "待支付",
  311. DONE: "完成"
  312. };
  313. return template[value];
  314. });
  315. // 缴费状态
  316. Vue.filter("payTypeStatus", val => {
  317. return constant.payStatus[val];
  318. });
  319. // 性别
  320. Vue.filter("sex", value => {
  321. let template = ["女", "男"];
  322. return template[value];
  323. });
  324. // 服从调剂 isAllowAdjust
  325. Vue.filter("isAllowAdjust", value => {
  326. let template = ["否", "是"];
  327. return template[value];
  328. });
  329. // 学员缴费状态 paymentStatus
  330. Vue.filter("paymentStatus", value => {
  331. let template = ["未开启缴费", "开启缴费", "已缴费"];
  332. return template[value];
  333. });
  334. // 乐团状态
  335. // Vue.filter('teamStatus', value => {
  336. // let template = {
  337. // PRE_APPLY: "预报名中",
  338. // APPLY: "报名中",
  339. // PAY: "缴费中",
  340. // PREPARE: "筹备中",
  341. // PROGRESS: "进行中",
  342. // DRAFT: '创建缴费中',
  343. // CANCELED: '取消',
  344. // PAUSE: '暂停',
  345. // AUDIT: '乐团审核中',
  346. // DRAFT: '编辑中',
  347. // AUDIT_FAILED: '审核失败',
  348. // FEE_AUDIT: '费用审核中',
  349. // CLOSE: '已关闭',
  350. // }
  351. // return template[value]
  352. // })
  353. // 学生状态
  354. /**studentStatus */
  355. Vue.filter("studentStatus", value => {
  356. let template = ["在读", "已退课", "退课中", "休学"];
  357. return template[value];
  358. });
  359. // 学生点名
  360. Vue.filter("studentRecord", value => {
  361. let template = {
  362. NORMAL: "正常",
  363. TRUANT: "旷课",
  364. LEAVE: "请假",
  365. DROP_OUT: "退学",
  366. LATE: "迟到",
  367. "": "未签到"
  368. };
  369. return template[value];
  370. });
  371. // 是否
  372. Vue.filter("yesOrNo", value => {
  373. let template = ["否", "是"];
  374. return template[value];
  375. });
  376. // 学员缴费状态
  377. Vue.filter("studentPay", value => {
  378. let template = {
  379. PAID_COMPLETED: "完成缴费",
  380. NON_PAYMENT: "未缴费",
  381. PROCESSING: "缴费中"
  382. };
  383. return template[value];
  384. });
  385. // 学员点名详情
  386. Vue.filter("studentSign", value => {
  387. let template = {
  388. NORMAL: "正常",
  389. TRUANT: "旷课",
  390. LEAVE: "请假",
  391. DROP_OUT: "退学",
  392. LATE: "迟到"
  393. };
  394. return template[value];
  395. });
  396. // 班级类型
  397. Vue.filter("classType", value => {
  398. let template = {
  399. NORMAL: "声部班",
  400. MIX: "合奏班",
  401. HIGH: "基础技能班",
  402. VIP: "VIP",
  403. DEMO: "试听",
  404. SNAP: "临时班",
  405. PRACTICE: "网管课",
  406. HIGH_ONLINE: "线上基础技能课",
  407. MUSIC_NETWORK: "乐团网管课"
  408. };
  409. return template[value];
  410. });
  411. Vue.filter("teachMode", value => {
  412. return constant.teachMode[value];
  413. });
  414. // 老师状态
  415. Vue.filter("teacherStatus", value => {
  416. let template = {
  417. "0": "正常",
  418. "1": "冻结",
  419. "9": "锁定"
  420. };
  421. return template[value];
  422. });
  423. // vip课状态
  424. Vue.filter("vipCourseStatus", value => {
  425. let template = {
  426. 0: "未开始",
  427. 1: "报名中",
  428. 5: "报名结束",
  429. 2: "进行中",
  430. 4: "已结束",
  431. 3: "取消",
  432. 6: "暂停"
  433. };
  434. return template[value];
  435. });
  436. // 账号类型
  437. Vue.filter("accountTypeFormat", value => {
  438. let template = {
  439. 0: "对内",
  440. 1: "对外"
  441. };
  442. return template[value];
  443. });
  444. // 扣减库存
  445. Vue.filter("stockTypeFormat", value => {
  446. let template = {
  447. INTERNAL: "内部",
  448. EXTERNAL: "外部",
  449. ALL: "内部,外部"
  450. };
  451. return template[value];
  452. });
  453. // 交易状态
  454. Vue.filter("paymentChannelStatus", value => {
  455. let template = {
  456. YQPAY: "双乾",
  457. BALANCE: "余额",
  458. ADAPAY: "汇付"
  459. };
  460. return template[value];
  461. });
  462. // edition
  463. Vue.filter("editionFilter", value => {
  464. let template = {
  465. "ios-teacher": "苹果-老师端",
  466. "ios-student": "苹果-学生端",
  467. "ios-education": "苹果-管理端",
  468. "android-teacher": "安卓-老师端",
  469. "android-student": "安卓-学生端",
  470. "android-education": "安卓-管理端"
  471. };
  472. return template[value];
  473. });
  474. // payStatus 订单支付状态
  475. Vue.filter("payStatus", value => {
  476. let template = {
  477. WAIT_PAY: "等待支付",
  478. ING: "交易中",
  479. SUCCESS: "成功交易",
  480. FAILED: "交易失败",
  481. CLOSE: "交易关闭"
  482. };
  483. return template[value];
  484. });
  485. // payType 交易类型
  486. Vue.filter("payType", value => {
  487. let template = {
  488. RECHARGE: "充值",
  489. WITHDRAW: "提现",
  490. PAY_FEE: "缴费",
  491. SPORADIC: "零星收费",
  492. FILL_ACCOUNT: "人工补账",
  493. REFUNDS: "退费",
  494. REWARDS: "奖励",
  495. WAGE: "工资"
  496. };
  497. return template[value];
  498. });
  499. // 课程组状态 FINISH
  500. Vue.filter("courseGroup", value => {
  501. let template = {
  502. NORMAL: "正常",
  503. LOCK: "锁定",
  504. FINISH: "结束",
  505. CANCEL: "取消"
  506. };
  507. return template[value];
  508. });
  509. // 网管课程组
  510. Vue.filter("comCourseGroup", value => {
  511. let template = {
  512. NOT_START: "未开始",
  513. LOCK: "锁定",
  514. APPLYING: "报名中",
  515. NORMAL: "进行中",
  516. FINISH: "结束",
  517. CANCEL: "关闭"
  518. };
  519. return template[value];
  520. });
  521. //网管课类型
  522. Vue.filter("comType", value => {
  523. let template = {
  524. FREE: "免费",
  525. CHARGE: "收费",
  526. TRIAL: "试听课",
  527. CARE_PACKAGE: "关心包",
  528. COME_ON_PACKAGE: "加油包"
  529. };
  530. return template[value];
  531. });
  532. // 首充续费
  533. Vue.filter("firstOrRenewFilter", value => {
  534. let template = {
  535. "0": "续费",
  536. "1": "首次"
  537. };
  538. return template[value];
  539. });
  540. // 老师时间
  541. Vue.filter("transTypeFilter", value => {
  542. let template = {
  543. RECHARGE: "充值",
  544. CONSUME: "建课",
  545. RETURN: "退课",
  546. MANUAL_ADD: "系统充值",
  547. MANUAL_SUB: "系统扣除"
  548. };
  549. return template[value];
  550. });
  551. // paymentType
  552. Vue.filter("paymentType", value => {
  553. let template = {
  554. OFFLINE: "线下",
  555. ONLINE: "线上",
  556. ALL: "全部"
  557. };
  558. return template[value];
  559. });
  560. Vue.filter("paymentListStatus", value => {
  561. let template = {
  562. 0: "未开始",
  563. 1: "已开启",
  564. 2: "已结束"
  565. };
  566. return template[value];
  567. });
  568. // paymentStatus
  569. Vue.filter("paymentStatusDetall", value => {
  570. let template = {
  571. PAID_COMPLETED: "已缴费",
  572. PROCESSING: "缴费中",
  573. NON_PAYMENT: "未缴费"
  574. };
  575. return template[value];
  576. });
  577. Vue.filter("paymentStatusGet", value => {
  578. let template = {
  579. PAID_COMPLETED: "已付款",
  580. PROCESSING: "付款中",
  581. NON_PAYMENT: "未付款"
  582. };
  583. return template[value];
  584. });
  585. Vue.filter("replacementInsFilter", value => {
  586. let template = {
  587. 2: "已缴费",
  588. 1: "缴费中",
  589. 0: "未缴费"
  590. };
  591. return template[value];
  592. });
  593. // 课时申诉
  594. Vue.filter("complaintsStatusEnum", value => {
  595. let template = {
  596. 0: "已拒绝",
  597. 1: "已通过",
  598. 2: "待处理",
  599. 3: "已撤销"
  600. };
  601. return template[value];
  602. });
  603. // 人事状态 isProbationPeriod
  604. Vue.filter("isProbationPeriod", value => {
  605. let template = {
  606. 0: "正式",
  607. 1: "试用",
  608. 2: "离职"
  609. };
  610. return template[value];
  611. });
  612. Vue.filter("visiterType", value => {
  613. let template = {
  614. TEACHER: "指导老师",
  615. EDU_TEACHER: "乐团主管"
  616. };
  617. return template[value];
  618. });
  619. // 人力资源人员状态
  620. Vue.filter("hrStatus", value => {
  621. let template = {
  622. NOT_EMPLOYED: "未录用",
  623. INTERVIEWING: "面试中",
  624. RESERVE: "储备",
  625. PART_TIME: "兼职",
  626. FULL_TIME: "全职",
  627. DIMISSION: "离职",
  628. BLACK_LIST: "黑名单"
  629. };
  630. return template[value];
  631. });
  632. // 费用类型
  633. Vue.filter("feeType", value => {
  634. return constant.feeType[value];
  635. });
  636. // 费用项目
  637. Vue.filter("feeProject", value => {
  638. return constant.feeProject[value];
  639. });
  640. // 销售类型
  641. Vue.filter("saleType", value => {
  642. return constant.saleType[value];
  643. });
  644. // 退费类型 backType
  645. Vue.filter("backType", value => {
  646. return constant.backType[value];
  647. });
  648. // 缴费状态
  649. Vue.filter("teamPayStatus", value => {
  650. const tpl = {
  651. 0: "按月",
  652. 1: "按学期",
  653. 2: "一次性"
  654. };
  655. return tpl[value];
  656. });
  657. Vue.filter("numberFormat", value => {
  658. return numeral(value).format("0,0");
  659. });
  660. // 金额格式化
  661. Vue.filter("moneyFormat", (value, unit = false) => {
  662. if (unit) {
  663. return numeral(value).format("0,0.00") + "元";
  664. } else {
  665. return numeral(value).format("0,0.00");
  666. }
  667. });
  668. Vue.filter("hasMoneyFormat", value => {
  669. if (value) {
  670. return numeral(value).format("0,0.00") + "元";
  671. } else {
  672. return "--";
  673. }
  674. });
  675. Vue.filter("stockTypeStatus", value => {
  676. const template = {
  677. INTERNAL: "内部",
  678. EXTERNAL: "外部",
  679. ALL: "全部"
  680. };
  681. return template[value];
  682. });
  683. // 确认收货类型
  684. Vue.filter("receiveFormat", value => {
  685. let template = {
  686. NO_RECEIVE: "未确认",
  687. MANUAL_RECEIVE: "手动确认",
  688. AUTO_RECEIVE: "自动确认"
  689. };
  690. return template[value];
  691. });
  692. // 缴费方式
  693. Vue.filter("payOrderType", value => {
  694. return constant.payOrderType[value];
  695. });
  696. // 审核状态 auditType
  697. Vue.filter("auditType", value => {
  698. return constant.auditType[value];
  699. });
  700. // 审核申请类型 auditPaymentType
  701. Vue.filter("auditPaymentType", value => {
  702. return constant.auditPaymentType[value];
  703. });
  704. // 销售收入和服务收入
  705. Vue.filter("orderServer", value => {
  706. return constant.orderServerType[value];
  707. });
  708. // 订单审核状态 orderAuditType
  709. Vue.filter("orderAuditType", value => {
  710. constant.orderAuditType[""] = "审核通过";
  711. return constant.orderAuditType[value];
  712. });
  713. Vue.filter("songUseTypeFormat", value => {
  714. return constant.songUseType[value];
  715. });
  716. Vue.filter("rewardModeTypeFormat", value => {
  717. return constant.rewardModeType[value];
  718. });
  719. // 系统日志类型
  720. Vue.filter("journalTypeFormat", value => {
  721. return constant.journalType[value];
  722. });
  723. // 日程安排 inspectionItem
  724. Vue.filter("inspectionItemFormat", value => {
  725. return constant.inspectionItem[value];
  726. });
  727. // 学员列表关心包,加油包
  728. Vue.filter("studentPackage", value => {
  729. return constant.packageStatus[value];
  730. });
  731. // 分部 学年制
  732. Vue.filter("gradeTypeFormat", value => {
  733. return constant.gradeType[value];
  734. });
  735. // 老师状态
  736. Vue.filter("ProbationPeriod", value => {
  737. return constant.ProbationPeriodStatus[value];
  738. });
  739. // 下载列表 类型
  740. // downListType
  741. Vue.filter("downListType", value => {
  742. return constant.downListType[value];
  743. });
  744. // 退团状态
  745. Vue.filter("withdrawalStatus", value => {
  746. return constant.withdrawalStatus[value];
  747. });
  748. //
  749. Vue.filter("conclusionStatus", value => {
  750. return constant.conclusion[value];
  751. });
  752. Vue.filter("courseViewType", value => {
  753. return constant.courseViewType[value];
  754. });
  755. Vue.filter("couponTypeFilter", value => {
  756. return constant.couponType[value];
  757. });
  758. // couponType
  759. Vue.filter("catRoleFilter", value => {
  760. return constant.couponType[value];
  761. });
  762. Vue.filter("tenantStatus", value => {
  763. return constant.tenantStatus[value];
  764. });
  765. Vue.filter("cloudGroupActive", value => {
  766. let template = {
  767. 1: "天数",
  768. 2: "月度",
  769. 3: "季度",
  770. 4: "半年",
  771. 5: "年度"
  772. };
  773. return template[value];
  774. });
  775. Vue.filter("chargingStatus", value => {
  776. return constant.chargingStatus[value];
  777. });
  778. // 群消息类型
  779. Vue.filter("catgGoupType", value => {
  780. return constant.catgGoupType[value];
  781. });
  782. // 群类型
  783. Vue.filter("catType", value => {
  784. return constant.catType[value];
  785. });
  786. Vue.filter("catDotType", value => {
  787. return constant.catDotType[value];
  788. });
  789. Vue.filter("quiteReasonFilter", value => {
  790. return constant.quiteReason[value];
  791. });
  792. Vue.filter("usageStatus", value => {
  793. let obj = {
  794. 0: "未使用",
  795. 1: "已使用",
  796. 2: "已过期"
  797. };
  798. return obj[value];
  799. });
  800. Vue.filter("liveState", value => {
  801. let obj = {
  802. 0: "未开始",
  803. 1: "直播中",
  804. 2: "已结束"
  805. };
  806. return obj[value];
  807. });
  808. // 直播方案
  809. Vue.filter("serviceProvider", value => {
  810. const obj = {
  811. rongCloud: "融云",
  812. tencentCloud: "腾讯云"
  813. };
  814. return obj[value];
  815. });