constant.js 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404
  1. import dayjs from 'dayjs'
  2. export const descs = {
  3. STUDENT_REGISTRATION_NUM: '截止到昨日,系统注册学员总数',
  4. CHARGE_STUDENT_CHANGE_RATE: '截止到昨日,注册学员现金付费率(有订单交易成功的都算,导入的也算)',
  5. ACTIVATION_RATE: '截止到昨日,筹备中或进行中乐团在读学员和有VIP或网管课学员激活率(VIP网管课最后一节课在6个月前则不纳入统计)',
  6. SCHOOL: '截止到昨日,存在【进行中】乐团的【合作单位】总数',
  7. PROGRESS_MUSIC_GROUP_NUM: '截止到昨日,【进行中】乐团总数',
  8. TEACHER_NUM: '截止到昨日,非冻结,且离职时间在昨日之后的老师总数',
  9. FULL_TIME_NUM: '截止到昨日,非冻结、离职时间在昨日之后,且工作类型为【全职】的老师总数',
  10. PART_TIME_NUM: '截止到昨日,非冻结、离职时间在昨日之后,且工作类型为【兼职】的老师总数',
  11. SURPLUS_COURSE_NUM: '截止到昨日,系统中【未开始】课程总数(乐团+VIP+网管)【不包括试听课】',
  12. SURPLUS_MUSIC_COURSE_NUM: '截止到昨日,系统乐团【未开始】课程总数',
  13. SURPLUS_VIP_COURSE_NUM: '截止到昨日,系统中【未开始】VIP课程总数',
  14. SURPLUS_PRACTICE_COURSE_NUM: '截止到昨日,系统中【未开始】网管课程总数',
  15. OVER_COURSE_NUM: '截止到昨日,系统中【已结束】课程总数(乐团+VIP+网管)【不包括试听课】',
  16. OVER_MUSIC_COURSE_NUM: '截止到昨日,系统中乐团【已结束】课程总数',
  17. OVER_VIP_COURSE_NUM: '截止到昨日,系统中【已结束】VIP课程总数',
  18. OVER_PRACTICE_COURSE_NUM: '截止到昨日,系统中【已结束】网管课程总数',
  19. FINANCE_PAY: '筛选时间段内支出金额总和',
  20. FINANCE_BALANCE_AMOUNT: '筛选时间段内余额消耗总和',
  21. FINANCE_AMOUNT: '筛选时间段内现金收入总和',
  22. HOMEWORK_CREATE_RATE: '筛选时间段内,服务指标训练总布置率',
  23. HOMEWORK_SUBMIT_RATE: '筛选时间段内,已布置的训练学员总提交率(包括服务指标外的训练)',
  24. HOMEWORK_COMMENT_RATE: '筛选时间段内,学员已提交的训练老师总点评率',
  25. MUSIC_GROUP_COURSE: '筛选时间段内,乐团课程总数',
  26. VIP_GROUP_COURSE: '筛选时间段内,VIP课程总数',
  27. PRACTICE_GROUP_COURSE: '筛选时间段内,网管课程总数',
  28. ADD_STUDENT_REGISTRATION_NUM: '筛选时间段内,新注册学员总数',
  29. MUSIC_GROUP_STUDENT: '筛选时间段中最后一日,【进行中】乐团【在读】学员总数,分部下去重',
  30. NEWLY_STUDENT_NUM: '筛选时间段内,新增的【进行中】乐团【在读】学员总数(学员当前无在读乐团则记为新增)',
  31. QUIT_MUSIC_GROUP_STUDENT_NUM: '筛选时间段内,乐团退团学员总数(学员无在读乐团,则记为退团)',
  32. VIP_PRACTICE_STUDENT_NUM: '筛选时间段中最后一日,学员有剩余VIP或网管未上课时的总人数(分部下去重)',
  33. VIP_PRACTICE_ADD_STUDENT_NUM: '筛选时间段内,新增的VIP/网管课付费学员总数',
  34. MUSIC_PATROL_ITEM: '乐团主管提交的巡查表中有未勾选事项',
  35. HIGH_CLASS_STUDENT_LESS_THAN_THREE: '基础技能班学员数量<3且没有备注',
  36. HIGH_CLASS_STUDENT_LESS_THAN_THREE_INFO:'基础技能班学员数量<3且有备注',
  37. STUDENT_NOT_PAYMENT: '当前时间以前的缴费项目中未缴费学员数量',
  38. STUDENT_APPLY_FOR_QUIT_MUSIC_GROUP: '未处理的学员退团申请数量',
  39. TEACHER_EXPECT_SALARY_BE_LOW: '本月预计课酬未达到系统设置的分部基本课酬标准的老师人数',
  40. INSPECTION_ITEM: '乐团主管未完成巡查计划安排',
  41. INSPECTION_ITEM_PLAN: '乐团主管已安排的巡查任务未提交',
  42. STUDENT_VISIT: '乐团主管未完成回访任务',
  43. TEACHER_EXCEPTION_ATTENDANCE: '课程上有老师或学员考勤异常',
  44. TEACHER_NOT_A_CLASS: '课程无老师考勤',
  45. TEACHER_SERVE_ERROR: '服务指标生成的训练未布置',
  46. WAIT_CREATE_PAYMENT_CALENDER: '缴费项目有效期结束前7天',
  47. NO_CLASS_MUSIC_GROUP_STUDENT_INFO: '进行中乐团不在班级中的在读学员提醒',
  48. COURSE_TIME_ERROR: '上课时间在21:00~06:00时间段内为时间安排异常',
  49. TOTAL_AMOUNT: '总收入:现金收入 + 余额收入',
  50. STUDENT_ERROR_LEAVE: '当月请假2次及以上',
  51. STUDENT_ARREARAGE: '缴费项目中的学员未缴费',
  52. NO_MEMBER_STUDENT_INFO: '进行中会员收费乐团中会员已过期在读学生数量',
  53. MEMBER_STUDENT_INFO: "进行中会员收费乐团中会员有效期≤15天的在读学生数量",
  54. APPLY_AMOUNT: "乐团报名缴费、新增学员缴费收入金额总和",
  55. PRACTICE_AMOUNT: "网管课购买、续费金额总和",
  56. OTHER_AMOUNT: "其他收入金额总和",
  57. RENEW_AMOUNT: "乐团续费、临时加课、合班缴费金额总和",
  58. VIP_AMOUNT: "VIP课购买、续费、复学、课程组新增学员收入金额总和",
  59. "vipStudentNum":'待激活及生效中的会员人数(去重)',
  60. "eVipStudentNum":'如果是试用会员又是付费会员,则不算试用会员数',
  61. "cloudStudyLivelyStudentNum":'过去四周内有三周及以上每周训练时长超过60分钟为活跃学员',
  62. "newCloudStudyStudentNum":'第一次使用云教练的人数',
  63. // "cloudStudyTodayUseStudentNum":'今日使用的总人数',
  64. // "cloudStudyUseStudentNum":'累计使用的总人数',
  65. "totalStudentNum":"分部注册学员总人数",
  66. // "waitActivateVipStudentNum":'待激活会员人数',
  67. // "effectiveVipStudentNum":"生效中会员人数",
  68. "vipStudentRate":"会员总人数/有效学员数",
  69. "effectiveStudentNum":"(进行中乐团在读学员+有剩余课时的学员+有排课次数的学员)去重"
  70. }
  71. export const titles = {
  72. "waitActivateVipStudentNum":'待激活会员人数',
  73. "effectiveVipStudentNum":"生效中会员人数",
  74. "vipStudentNum":'会员总人数',
  75. "eVipStudentNum":'试用会员人数',
  76. "totalStudentNum":"学员总数",
  77. "cloudStudyLivelyStudentNum":'活跃学员人数 ',
  78. "newCloudStudyStudentNum":'今日新增使用人数',
  79. "cloudStudyTodayUseStudentNum":'今日使用人数',
  80. "cloudStudyUseStudentNum":'累计使用人数',
  81. "effectiveStudentNum":'有效学员数',
  82. "vipStudentRate":'会员人数占比'
  83. }
  84. const dates = {
  85. start: dayjs().subtract(2, 'month').set('date', 1).format('YYYY-MM-DD'),
  86. end: dayjs().format('YYYY-MM-DD'),
  87. }
  88. export const errorType = {
  89. COURSE_TIME_ERROR: {
  90. name: '课程时间安排异常',
  91. isError: false,
  92. url: '/teamCourseList',
  93. permission: '/teamCourseList',
  94. always: true,
  95. query: {
  96. searchType: 'COURSE_TIME_ERROR',
  97. // ...dates
  98. },
  99. },
  100. MUSIC_PATROL_ITEM: {
  101. name: '乐团巡查事项异常',
  102. isError: false,
  103. url: '/musicInspection',
  104. permission: '/musicInspection',
  105. always: true,
  106. query: {
  107. tabrouter: 'teamSchedule',
  108. searchType: 'MUSIC_PATROL_ITEM',
  109. ...dates,
  110. },
  111. },
  112. HIGH_CLASS_STUDENT_LESS_THAN_THREE: {
  113. name: '基础技能班学员数量异常',
  114. isError: true,
  115. url: '/teamCLassList',
  116. permission: '/teamCLassList',
  117. always: true,
  118. query: {
  119. lessThenThreeHighOnline: 'false',
  120. },
  121. },
  122. HIGH_CLASS_STUDENT_LESS_THAN_THREE_INFO: {
  123. name: '基础技能班学员数量提醒',
  124. isError: true,
  125. url: '/teamCLassList',
  126. permission: '/teamCLassList',
  127. always: true,
  128. query: {
  129. lessThenThreeHighOnline: 'true',
  130. },
  131. },
  132. NO_MEMBER_STUDENT_INFO: {
  133. name: '当前共有{0}个乐团共{1}名学员会员已过期',
  134. isError: true,
  135. url: '/main/teamMemberList',
  136. permission: '/teamMemberList',
  137. always: true,
  138. query: {
  139. hasMember: '0'
  140. }
  141. },
  142. MUSIC_GROUP_PERFORMANCE: {
  143. name: '当前共有{0}个乐团共{1}次展演计划',
  144. isError: false,
  145. url: '/main/teamShowList',
  146. permission: '/teamShowList',
  147. always: true,
  148. },
  149. MEMBER_STUDENT_INFO: {
  150. name: '当前共有{0}个乐团共{1}名学员会员即将过期',
  151. isError: true,
  152. url: '/main/teamMemberList',
  153. permission: '/teamMemberList',
  154. always: true,
  155. query: {
  156. hasMember: '1'
  157. }
  158. },
  159. NO_CLASS_MUSIC_GROUP_STUDENT_INFO: {
  160. name: '当前有{0}个未开课乐团共{1}名学员未加入任何班级',
  161. filterName:'仅显示未开课乐团学员',
  162. isError: false,
  163. url: '/main/notClassStudent',
  164. permission: '/notClassStudent',
  165. always: true,
  166. query: {
  167. hasCourse: 'false'
  168. }
  169. },
  170. NO_CLASS_MUSIC_GROUP_STUDENT_ERROR: {
  171. name: '当前有{0}个已开课乐团共{1}名学员未加入任何班级',
  172. filterName:'仅显示已开课乐团学员',
  173. isError: true,
  174. url: '/main/notClassStudent',
  175. permission: '/notClassStudent',
  176. always: true,
  177. query: {
  178. hasCourse: 'true'
  179. }
  180. },
  181. STUDENT_ERROR_LEAVE: {
  182. name: '学员异常请假',
  183. isError: true,
  184. url: '/main/studentLeaveList',
  185. permission: '/studentLeaveList',
  186. always: true,
  187. },
  188. STUDENT_ARREARAGE: {
  189. name: '已排课未缴费学员数',
  190. isError: true,
  191. url: '/studentManager/ArrearageStudents',
  192. permission: '/ArrearageStudents',
  193. always: true,
  194. query: {
  195. hasCourse: 'true'
  196. }
  197. },
  198. STUDENT_NOT_PAYMENT: {
  199. name: '未排课未缴费学员数',
  200. isError: true,
  201. url: '/studentManager/ArrearageStudents',
  202. permission: '/ArrearageStudents',
  203. always: true,
  204. query: {
  205. hasCourse: 'false'
  206. }
  207. },
  208. STUDENT_APPLY_FOR_QUIT_MUSIC_GROUP: {
  209. name: '申请退团学员数',
  210. isError: true,
  211. url: '/journal/WithdrawalApplication',
  212. permission: '/WithdrawalApplication',
  213. always: true,
  214. query: {
  215. visitFlag: '0',
  216. },
  217. },
  218. COOPERATION_PAYMENT_ERROR: {
  219. name: '合作单位回款异常',
  220. isError: true,
  221. url: '/branchPayManager',
  222. permission: '/branchPayManager',
  223. always: true,
  224. query: {
  225. searchType: 'COOPERATION_PAYMENT_ERROR',
  226. },
  227. },
  228. COOPERATION_PAYMENT_ALERT: {
  229. name: '合作单位回款提醒',
  230. isError: true,
  231. url: '/branchPayManager',
  232. permission: '/branchPayManager',
  233. always: true,
  234. query: {
  235. searchType: 'COOPERATION_PAYMENT_ALERT',
  236. },
  237. },
  238. // WAIT_CREATE_PAYMENT_CALENDER: {
  239. // name: '待创建缴费项目',
  240. // isError: true,
  241. // url: '/teamList',
  242. // permission: '/teamList',
  243. // query: {
  244. // searchType: 'WAIT_CREATE_PAYMENT_CALENDER'
  245. // }
  246. // },
  247. COURSE_TRUANT_STUDENT_NUM: {
  248. name: '学员考勤异常旷课',
  249. isError: true,
  250. url: '/stuRecodeManager',
  251. permission: '/stuRecodeManager',
  252. always: true,
  253. query: {
  254. visitFlag: '0',
  255. status: 'TRUANT',
  256. ...dates,
  257. }
  258. },
  259. COURSE_LEAVE_STUDENT_NUM: {
  260. name: '学员请假',
  261. isError: true,
  262. url: '/stuRecodeManager',
  263. permission: '/stuRecodeManager',
  264. always: true,
  265. query: {
  266. visitFlag: 0,
  267. status: 'LEAVE',
  268. ...dates,
  269. }
  270. },
  271. TEACHER_EXCEPTION_ATTENDANCE: {
  272. name: '老师考勤异常',
  273. isError: true,
  274. always: true,
  275. url: '/teamCourseList',
  276. permission: '/teamCourseList',
  277. query: {
  278. searchType: 'TEACHER_ERR_ATTENDANCE',
  279. ...dates,
  280. start: dayjs().subtract(1, 'month').set('date', 1).format('YYYY-MM-DD'),
  281. },
  282. },
  283. STUDENT_EXCEPTION_ATTENDANCE: {
  284. name: '学生考勤异常',
  285. isError: true,
  286. always: true,
  287. url: '/teamCourseList',
  288. permission: '/teamCourseList',
  289. query: {
  290. searchType: 'STUDENT_ERR_ATTENDANCE',
  291. ...dates,
  292. start: dayjs().subtract(1, 'month').set('date', 1).format('YYYY-MM-DD'),
  293. },
  294. },
  295. // start: '2021-02-01', start: '2021-02-01',
  296. TEACHER_NOT_A_CLASS: {
  297. name: '课程异常',
  298. isError: true,
  299. always: true,
  300. url: '/teamCourseList',
  301. permission: '/teamCourseList',
  302. query: {
  303. searchType: 'NO_ATTENDANCE',
  304. ...dates,
  305. start: dayjs().subtract(1, 'month').set('date', 1).format('YYYY-MM-DD'),
  306. },
  307. },
  308. TEACHER_LEAVE: {
  309. name: '老师请假',
  310. isError: false,
  311. url: '/journal/journal',
  312. permission: '/leaveOperation',
  313. resultKey: 'search',
  314. query: {
  315. tabrouter: 'LEAVE'
  316. }
  317. },
  318. TEACHER_EXPECT_SALARY_BE_LOW: {
  319. name: '预计课酬较低',
  320. isError: false,
  321. url: '/operateManager/operationalList',
  322. permission: '/operationalList',
  323. always: true,
  324. query: {
  325. lowSalary: 1
  326. }
  327. },
  328. INSPECTION_ITEM: {
  329. name: '乐团巡查任务未计划',
  330. isError: true,
  331. always: true,
  332. url: '/workbench',
  333. permission: '/main/main',
  334. resultKey: 'ids',
  335. query: {
  336. tabrouter: 'teamSchedule',
  337. searchType: 'INSPECTION_ITEM',
  338. },
  339. },
  340. INSPECTION_ITEM_PLAN: {
  341. name: '乐团巡查任务未提交',
  342. isError: true,
  343. url: '/musicInspection',
  344. permission: '/musicInspection',
  345. always: true,
  346. query: {
  347. searchType: 'INSPECTION_ITEM_PLAN',
  348. ...dates
  349. },
  350. },
  351. STUDENT_VISIT: {
  352. name: '回访任务未完成',
  353. isError: true,
  354. url: '/workbench',
  355. permission: '/main/main',
  356. always: true,
  357. query: {
  358. tabrouter: 'teamSchedule',
  359. searchType: 'STUDENT_VISIT',
  360. ...dates
  361. },
  362. },
  363. TEACHER_SERVE_ERROR: {
  364. name: '服务指标异常',
  365. isError: true,
  366. always: true,
  367. url: '/serverIndexManager/serverDetail',
  368. permission: '/serverDetail',
  369. query: {
  370. searchType: 'TEACHER_SERVE_ERROR',
  371. unDone: 1,
  372. reminded: 0
  373. },
  374. },
  375. MUSIC_GROUP_HAS_COURSE_TIMES:{
  376. name: '乐团剩余时长未排课',
  377. isError: true,
  378. url: '/teamList',
  379. permission: '/teamList',
  380. query: {
  381. searchType: 'MUSIC_GROUP_HAS_COURSE_TIMES'
  382. }
  383. },
  384. HAS_FREE_COURSE_TIMES: {
  385. name: '排课时长消耗异常',
  386. isError: true,
  387. url: '/hasfreeCourse',
  388. permission: '/hasfreeCourse',
  389. always: true,
  390. },
  391. }
  392. export const matterTypes = {
  393. INSPECT: '下校巡查',
  394. VISIT: '学员回访',
  395. }
  396. export const chioseNum = 31