ai.js 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168
  1. import {toNumber} from "../until/typeTool";
  2. const arithmeticEnum = {
  3. face:{
  4. val: 1,
  5. text: '人脸识别',
  6. },
  7. fire: {
  8. val: 8,
  9. text: '火情识别'
  10. },
  11. carPlate: {
  12. val: 2,
  13. text: '车牌识别'
  14. },
  15. DiaoChe: {
  16. val: 6, text: '吊车'
  17. },
  18. TaDiao: {
  19. val: 7,
  20. text: '塔吊'
  21. },
  22. ShiGongJiXie: {
  23. val: 9,
  24. text: '施工机械'
  25. },
  26. DaoXianYiWu: {
  27. val: 10,
  28. text: '吊线异物'
  29. },
  30. smoke: {
  31. val: 11,
  32. text: '烟雾'
  33. },
  34. }
  35. const triggerTypeEnum = {
  36. unlimited:{
  37. val: 1,
  38. text: '无限制',
  39. },
  40. whiteList:{
  41. val: 2,
  42. text: '白名单'
  43. },
  44. blackList:{
  45. val: 3,
  46. text: '黑名单'
  47. },
  48. }
  49. const alarmStateEnum = {
  50. unread: {
  51. val: 1,
  52. text: '未阅读'
  53. },
  54. noAlarm: {
  55. val: 2,
  56. text: '不警告'
  57. },
  58. read: {
  59. val: 3,
  60. text: '已读'
  61. }
  62. }
  63. /**
  64. * 触发类型
  65. * @type {{unlimited: number, blackList: number, whiteList: number}}
  66. */
  67. export const triggerTypes = {
  68. unlimited:triggerTypeEnum.unlimited.val,
  69. whiteList:triggerTypeEnum.whiteList.val,
  70. blackList:triggerTypeEnum.blackList.val,
  71. }
  72. export const alarmStates = {
  73. unread:alarmStateEnum.unread.val,
  74. noAlarm:alarmStateEnum.noAlarm.val,
  75. read:alarmStateEnum.read.val,
  76. }
  77. const aiTypes = {
  78. face: arithmeticEnum.face.val,
  79. carPlate: arithmeticEnum.carPlate.val,
  80. fire: arithmeticEnum.fire.val,
  81. }
  82. /**
  83. * 通过数字查找对应的值
  84. * @param num
  85. * @returns {*|boolean}
  86. */
  87. function toArithmetic(num){
  88. num=toNumber(num);
  89. let arithmetic = Object.keys(arithmeticEnum).find(key=>arithmeticEnum[key].val===num);
  90. return arithmetic?arithmeticEnum[arithmetic]:false;
  91. }
  92. /**
  93. * 通过数字查找对应的值
  94. * @param num
  95. * @returns {*|boolean}
  96. */
  97. function toTriggerType(num){
  98. num=toNumber(num);
  99. let key = Object.keys(triggerTypeEnum).find(key=>triggerTypeEnum[key].val===num);
  100. return key?triggerTypeEnum[key]:false;
  101. }
  102. export function getAITypeArr(){
  103. return Object.keys(arithmeticEnum).map(key=>{
  104. return {
  105. ...arithmeticEnum[key],
  106. disabled: false,
  107. };
  108. })
  109. }
  110. export function getTriggerTypeArr(){
  111. return Object.keys(triggerTypeEnum).map(key=>{
  112. return {
  113. ...triggerTypeEnum[key],
  114. disabled: false,
  115. };
  116. })
  117. }
  118. export function toAlarmState(num){
  119. num=toNumber(num);
  120. let key = Object.keys(alarmStateEnum).find(key=>alarmStateEnum[key].val===num);
  121. return key?alarmStateEnum[key]:false;
  122. }
  123. export function getAlarmStateArr(){
  124. return Object.keys(alarmStateEnum).map(key=>{
  125. return {
  126. ...alarmStateEnum[key],
  127. disabled: false,
  128. };
  129. })
  130. }
  131. /**
  132. * 获取指定alarmState的英文key
  133. * @param num
  134. * @returns {string|string}
  135. */
  136. export function toAlarmKey(num){
  137. let key = Object.keys(alarmStateEnum).find(key=>alarmStateEnum[key].val===num);
  138. return key?key:""
  139. }
  140. export default {
  141. arithmeticEnum,
  142. toArithmetic,
  143. aiTypes,
  144. triggerTypeEnum,
  145. toTriggerType,
  146. triggerTypes,
  147. getAITypeArr,
  148. getTriggerTypeArr,
  149. alarmStates,
  150. alarmStateEnum,
  151. getAlarmStateArr,
  152. toAlarmState,
  153. toAlarmKey
  154. }