Commit 74e1a9c1abc61a737d56c04ee184d790c69180e5

Authored by fengwotao
1 parent 4a9a3c01

pref: 优化公共接口管理部分代码(主要是判断加上枚举值)和移除部分无用代码

1   -import type { BasicColumn } from '/@/components/Table';
2   -import type { FormSchema } from '/@/components/Table';
3   -import { getOrganizationList } from '/@/api/system/system';
4   -import { copyTransFun } from '/@/utils/fnUtils';
5   -import { getDeviceDataKeys, getDeviceProfile } from '/@/api/alarm/position';
6   -import { EChartsOption } from 'echarts';
7   -
8   -export enum AggregateDataEnum {
9   - MIN = 'MIN',
10   - MAX = 'MAX',
11   - AVG = 'AVG',
12   - SUM = 'SUM',
13   - COUNT = 'COUNT',
14   - NONE = 'NONE',
15   -}
16   -export const formSchema: FormSchema[] = [
17   - {
18   - field: 'organizationId',
19   - label: '',
20   - component: 'ApiTreeSelect',
21   - componentProps: {
22   - placeholder: '请选择组织',
23   - api: async () => {
24   - const data = await getOrganizationList();
25   - copyTransFun(data as any as any[]);
26   - return data;
27   - },
28   - },
29   - },
30   - {
31   - field: 'deviceProfileId',
32   - label: '',
33   - component: 'ApiSelect',
34   - componentProps: {
35   - api: getDeviceProfile,
36   - placeholder: '请选择产品',
37   - labelField: 'name',
38   - valueField: 'tbProfileId',
39   - },
40   - },
41   - {
42   - field: 'name',
43   - label: '',
44   - component: 'Input',
45   - componentProps: {
46   - maxLength: 255,
47   - placeholder: '请输入设备名称',
48   - },
49   - },
50   - {
51   - field: 'deviceState',
52   - label: '',
53   - component: 'RadioGroup',
54   - componentProps: {
55   - size: 'small',
56   - options: [
57   - { label: '全部', value: null },
58   - { label: '待激活', value: 'INACTIVE' },
59   - { label: '在线', value: 'ONLINE' },
60   - { label: '离线', value: 'OFFLINE' },
61   - ],
62   - },
63   - },
64   - {
65   - field: 'alarmStatus',
66   - label: '是否告警',
67   - component: 'RadioGroup',
68   - labelWidth: '85px',
69   - componentProps: {
70   - size: 'small',
71   - options: [
72   - { label: '是', value: 1 },
73   - { label: '否', value: 0 },
74   - ],
75   - },
76   - },
77   -];
78   -
79   -export const columns: BasicColumn[] = [
80   - {
81   - title: '名称',
82   - dataIndex: 'name',
83   - width: 120,
84   - format: (_text: string, record: Recordable) => {
85   - return record?.alias || record?.name;
86   - },
87   - },
88   - {
89   - title: '设备状态',
90   - dataIndex: 'deviceState',
91   - width: 80,
92   - slots: { customRender: 'deviceState' },
93   - },
94   - {
95   - title: '位置',
96   - dataIndex: 'deviceInfo.address',
97   - width: 120,
98   - },
99   - {
100   - title: '告警状态',
101   - dataIndex: 'alarmStatus',
102   - width: 80,
103   - slots: { customRender: 'alarmStatus' },
104   - },
105   -];
106   -
107   -// 动态生成options
108   -function generateOptions(value: number) {
109   - if (value === 3600000) {
110   - return [
111   - {
112   - label: '10秒',
113   - value: 10000,
114   - },
115   - {
116   - label: '15秒',
117   - value: 15000,
118   - },
119   - {
120   - label: '30秒',
121   - value: 30000,
122   - },
123   - {
124   - label: '1分钟',
125   - value: 60000,
126   - },
127   - {
128   - label: '2分钟',
129   - value: 120000,
130   - },
131   - {
132   - label: '5分钟',
133   - value: 300000,
134   - },
135   - ];
136   - } else if (value === 7200000) {
137   - return [
138   - {
139   - label: '15秒',
140   - value: 15000,
141   - },
142   - {
143   - label: '30秒',
144   - value: 30000,
145   - },
146   - {
147   - label: '1分钟',
148   - value: 60000,
149   - },
150   - {
151   - label: '2分钟',
152   - value: 120000,
153   - },
154   - {
155   - label: '5分钟',
156   - value: 300000,
157   - },
158   - {
159   - label: '10分钟',
160   - value: 600000,
161   - },
162   - {
163   - label: '15分钟',
164   - value: 900000,
165   - },
166   - ];
167   - } else if (value === 18000000) {
168   - return [
169   - {
170   - label: '1分钟',
171   - value: 60000,
172   - },
173   - {
174   - label: '2分钟',
175   - value: 120000,
176   - },
177   - {
178   - label: '5分钟',
179   - value: 300000,
180   - },
181   - {
182   - label: '10分钟',
183   - value: 600000,
184   - },
185   - {
186   - label: '15分钟',
187   - value: 900000,
188   - },
189   - {
190   - label: '30分钟',
191   - value: 1800000,
192   - },
193   - ];
194   - } else if (value === 36000000) {
195   - return [
196   - {
197   - label: '2分钟',
198   - value: 120000,
199   - },
200   - {
201   - label: '5分钟',
202   - value: 300000,
203   - },
204   - {
205   - label: '10分钟',
206   - value: 600000,
207   - },
208   - {
209   - label: '15分钟',
210   - value: 900000,
211   - },
212   - {
213   - label: '30分钟',
214   - value: 1800000,
215   - },
216   - {
217   - label: '1小时',
218   - value: 3600000,
219   - },
220   - ];
221   - } else if (value === 43200000) {
222   - return [
223   - {
224   - label: '2分钟',
225   - value: 120000,
226   - },
227   - {
228   - label: '5分钟',
229   - value: 300000,
230   - },
231   - {
232   - label: '10分钟',
233   - value: 600000,
234   - },
235   - {
236   - label: '15分钟',
237   - value: 900000,
238   - },
239   - {
240   - label: '30分钟',
241   - value: 1800000,
242   - },
243   - {
244   - label: '1小时',
245   - value: 3600000,
246   - },
247   - ];
248   - } else if (value === 86400000) {
249   - return [
250   - {
251   - label: '5分钟',
252   - value: 300000,
253   - },
254   - {
255   - label: '10分钟',
256   - value: 600000,
257   - },
258   - {
259   - label: '15分钟',
260   - value: 900000,
261   - },
262   - {
263   - label: '30分钟',
264   - value: 1800000,
265   - },
266   - {
267   - label: '1小时',
268   - value: 3600000,
269   - },
270   - {
271   - label: '2小时',
272   - value: 7200000,
273   - },
274   - ];
275   - } else if (value === 604800000) {
276   - return [
277   - {
278   - label: '30分钟',
279   - value: 1800000,
280   - },
281   - {
282   - label: '1小时',
283   - value: 3600000,
284   - },
285   - {
286   - label: '2小时',
287   - value: 7200000,
288   - },
289   - {
290   - label: '5小时',
291   - value: 18000000,
292   - },
293   - {
294   - label: '10小时',
295   - value: 36000000,
296   - },
297   - {
298   - label: '12小时',
299   - value: 43200000,
300   - },
301   - {
302   - label: '1天',
303   - value: 86400000,
304   - },
305   - ];
306   - } else {
307   - return [
308   - {
309   - label: '2小时',
310   - value: 7200000,
311   - },
312   - {
313   - label: '5小时',
314   - value: 18000000,
315   - },
316   - {
317   - label: '10小时',
318   - value: 36000000,
319   - },
320   - {
321   - label: '12小时',
322   - value: 43200000,
323   - },
324   - {
325   - label: '1天',
326   - value: 86400000,
327   - },
328   - ];
329   - }
330   -}
331   -export const schemas: FormSchema[] = [
332   - {
333   - field: 'endTs',
334   - label: '最后数据',
335   - component: 'Select',
336   - required: true,
337   - componentProps({ formModel, formActionType }) {
338   - return {
339   - onChange(value) {
340   - const { updateSchema } = formActionType;
341   - console.log(value);
342   - formModel.interval = '';
343   - updateSchema({
344   - field: 'interval',
345   - componentProps: {
346   - placeholder: '请选择分组间隔',
347   - options: generateOptions(value),
348   - },
349   - });
350   - },
351   - getPopupContainer: () => document.body,
352   - options: [
353   - {
354   - label: '最近1小时',
355   - value: 3600000,
356   - },
357   - {
358   - label: '最近2小时',
359   - value: 7200000,
360   - },
361   - {
362   - label: '最近5小时',
363   - value: 18000000,
364   - },
365   - {
366   - label: '最近10小时',
367   - value: 36000000,
368   - },
369   - {
370   - label: '最近12小时',
371   - value: 43200000,
372   - },
373   - {
374   - label: '最近1天',
375   - value: 86400000,
376   - },
377   - {
378   - label: '最近7天',
379   - value: 604800000,
380   - },
381   - {
382   - label: '最近30天',
383   - value: 2592000000,
384   - },
385   - ],
386   - };
387   - },
388   - },
389   - {
390   - field: 'interval',
391   - label: '分组间隔',
392   - component: 'Select',
393   - componentProps: {
394   - placeholder: '请选择分组间隔',
395   - getPopupContainer: () => document.body,
396   - options: [
397   - {
398   - label: '5分钟',
399   - value: 300000,
400   - },
401   - {
402   - label: '10分钟',
403   - value: 600000,
404   - },
405   - {
406   - label: '15分钟',
407   - value: 900000,
408   - },
409   - {
410   - label: '30分钟',
411   - value: 1800000,
412   - },
413   - {
414   - label: '1小时',
415   - value: 3600000,
416   - },
417   - {
418   - label: '2小时',
419   - value: 7200000,
420   - },
421   - ],
422   - },
423   - },
424   - {
425   - field: 'agg',
426   - label: '数据聚合功能',
427   - component: 'Select',
428   - defaultValue: AggregateDataEnum.NONE,
429   - componentProps: {
430   - getPopupContainer: () => document.body,
431   - options: [
432   - {
433   - label: '最小值',
434   - value: AggregateDataEnum.MIN,
435   - },
436   - {
437   - label: '最大值',
438   - value: AggregateDataEnum.MAX,
439   - },
440   - {
441   - label: '平均值',
442   - value: AggregateDataEnum.AVG,
443   - },
444   - {
445   - label: '求和',
446   - value: AggregateDataEnum.SUM,
447   - },
448   - {
449   - label: '计数',
450   - value: AggregateDataEnum.COUNT,
451   - },
452   - {
453   - label: '空',
454   - value: AggregateDataEnum.NONE,
455   - },
456   - ],
457   - },
458   - },
459   - {
460   - field: 'attr',
461   - label: '设备属性',
462   - component: 'Select',
463   - componentProps: {
464   - api: async (id: string) => {
465   - try {
466   - const res = await getDeviceDataKeys(id);
467   - return res.map((item) => ({ label: item, value: item }));
468   - } catch (error) {}
469   - },
470   - },
471   - },
472   -];
473   -
474   -export const selectDeviceAttrSchema: FormSchema[] = [
475   - {
476   - field: 'keys',
477   - label: '设备属性',
478   - component: 'Select',
479   - componentProps: {
480   - getPopupContainer: () => document.body,
481   - },
482   - },
483   -];
484   -
485   -export const eChartOptions = (series: EChartsOption['series'], keys: string[]): EChartsOption => {
486   - return {
487   - tooltip: {
488   - trigger: 'axis',
489   - },
490   - legend: {
491   - data: keys,
492   - },
493   - grid: {
494   - left: '3%',
495   - right: '4%',
496   - bottom: '3%',
497   - containLabel: true,
498   - },
499   - dataZoom: [
500   - {
501   - type: 'inside',
502   - start: 0,
503   - end: 50,
504   - },
505   - {
506   - start: 20,
507   - end: 40,
508   - },
509   - ],
510   - xAxis: {
511   - type: 'time',
512   - boundaryGap: false,
513   - },
514   - yAxis: {
515   - type: 'value',
516   - boundaryGap: [0, '100%'],
517   - },
518   - series,
519   - };
520   -};
521   -
522   -//百度地图设置个性化地图配置
523   -export const setMapStyleV2 = {
524   - styleJson: [
525   - {
526   - featureType: 'land',
527   - elementType: 'geometry',
528   - stylers: {
529   - visibility: 'on',
530   - color: '#091220ff',
531   - },
532   - },
533   - {
534   - featureType: 'water',
535   - elementType: 'geometry',
536   - stylers: {
537   - visibility: 'on',
538   - color: '#113549ff',
539   - },
540   - },
541   - {
542   - featureType: 'green',
543   - elementType: 'geometry',
544   - stylers: {
545   - visibility: 'on',
546   - color: '#0e1b30ff',
547   - },
548   - },
549   - {
550   - featureType: 'building',
551   - elementType: 'geometry',
552   - stylers: {
553   - visibility: 'on',
554   - },
555   - },
556   - {
557   - featureType: 'building',
558   - elementType: 'geometry.topfill',
559   - stylers: {
560   - color: '#113549ff',
561   - },
562   - },
563   - {
564   - featureType: 'building',
565   - elementType: 'geometry.sidefill',
566   - stylers: {
567   - color: '#143e56ff',
568   - },
569   - },
570   - {
571   - featureType: 'building',
572   - elementType: 'geometry.stroke',
573   - stylers: {
574   - color: '#dadada00',
575   - },
576   - },
577   - {
578   - featureType: 'subwaystation',
579   - elementType: 'geometry',
580   - stylers: {
581   - visibility: 'on',
582   - color: '#113549B2',
583   - },
584   - },
585   - {
586   - featureType: 'education',
587   - elementType: 'geometry',
588   - stylers: {
589   - visibility: 'on',
590   - color: '#12223dff',
591   - },
592   - },
593   - {
594   - featureType: 'medical',
595   - elementType: 'geometry',
596   - stylers: {
597   - visibility: 'on',
598   - color: '#12223dff',
599   - },
600   - },
601   - {
602   - featureType: 'scenicspots',
603   - elementType: 'geometry',
604   - stylers: {
605   - visibility: 'on',
606   - color: '#12223dff',
607   - },
608   - },
609   - {
610   - featureType: 'highway',
611   - elementType: 'geometry',
612   - stylers: {
613   - visibility: 'on',
614   - weight: 4,
615   - },
616   - },
617   - {
618   - featureType: 'highway',
619   - elementType: 'geometry.fill',
620   - stylers: {
621   - color: '#12223dff',
622   - },
623   - },
624   - {
625   - featureType: 'highway',
626   - elementType: 'geometry.stroke',
627   - stylers: {
628   - color: '#fed66900',
629   - },
630   - },
631   - {
632   - featureType: 'highway',
633   - elementType: 'labels',
634   - stylers: {
635   - visibility: 'on',
636   - },
637   - },
638   - {
639   - featureType: 'highway',
640   - elementType: 'labels.text.fill',
641   - stylers: {
642   - color: '#12223dff',
643   - },
644   - },
645   - {
646   - featureType: 'highway',
647   - elementType: 'labels.text.stroke',
648   - stylers: {
649   - color: '#ffffff00',
650   - },
651   - },
652   - {
653   - featureType: 'highway',
654   - elementType: 'labels.icon',
655   - stylers: {
656   - visibility: 'on',
657   - },
658   - },
659   - {
660   - featureType: 'arterial',
661   - elementType: 'geometry',
662   - stylers: {
663   - visibility: 'on',
664   - weight: 2,
665   - },
666   - },
667   - {
668   - featureType: 'arterial',
669   - elementType: 'geometry.fill',
670   - stylers: {
671   - color: '#12223dff',
672   - },
673   - },
674   - {
675   - featureType: 'arterial',
676   - elementType: 'geometry.stroke',
677   - stylers: {
678   - color: '#ffeebb00',
679   - },
680   - },
681   - {
682   - featureType: 'arterial',
683   - elementType: 'labels',
684   - stylers: {
685   - visibility: 'on',
686   - },
687   - },
688   - {
689   - featureType: 'arterial',
690   - elementType: 'labels.text.fill',
691   - stylers: {
692   - color: '#2dc4bbff',
693   - },
694   - },
695   - {
696   - featureType: 'arterial',
697   - elementType: 'labels.text.stroke',
698   - stylers: {
699   - color: '#ffffff00',
700   - },
701   - },
702   - {
703   - featureType: 'local',
704   - elementType: 'geometry',
705   - stylers: {
706   - visibility: 'on',
707   - weight: 1,
708   - },
709   - },
710   - {
711   - featureType: 'local',
712   - elementType: 'geometry.fill',
713   - stylers: {
714   - color: '#12223dff',
715   - },
716   - },
717   - {
718   - featureType: 'local',
719   - elementType: 'geometry.stroke',
720   - stylers: {
721   - color: '#ffffff00',
722   - },
723   - },
724   - {
725   - featureType: 'local',
726   - elementType: 'labels',
727   - stylers: {
728   - visibility: 'on',
729   - },
730   - },
731   - {
732   - featureType: 'local',
733   - elementType: 'labels.text.fill',
734   - stylers: {
735   - color: '#979c9aff',
736   - },
737   - },
738   - {
739   - featureType: 'local',
740   - elementType: 'labels.text.stroke',
741   - stylers: {
742   - color: '#ffffffff',
743   - },
744   - },
745   - {
746   - featureType: 'railway',
747   - elementType: 'geometry',
748   - stylers: {
749   - visibility: 'off',
750   - },
751   - },
752   - {
753   - featureType: 'subway',
754   - elementType: 'geometry',
755   - stylers: {
756   - visibility: 'off',
757   - weight: 1,
758   - },
759   - },
760   - {
761   - featureType: 'subway',
762   - elementType: 'geometry.fill',
763   - stylers: {
764   - color: '#d8d8d8ff',
765   - },
766   - },
767   - {
768   - featureType: 'subway',
769   - elementType: 'geometry.stroke',
770   - stylers: {
771   - color: '#ffffff00',
772   - },
773   - },
774   - {
775   - featureType: 'subway',
776   - elementType: 'labels',
777   - stylers: {
778   - visibility: 'on',
779   - },
780   - },
781   - {
782   - featureType: 'subway',
783   - elementType: 'labels.text.fill',
784   - stylers: {
785   - color: '#979c9aff',
786   - },
787   - },
788   - {
789   - featureType: 'subway',
790   - elementType: 'labels.text.stroke',
791   - stylers: {
792   - color: '#ffffffff',
793   - },
794   - },
795   - {
796   - featureType: 'continent',
797   - elementType: 'labels',
798   - stylers: {
799   - visibility: 'on',
800   - },
801   - },
802   - {
803   - featureType: 'continent',
804   - elementType: 'labels.icon',
805   - stylers: {
806   - visibility: 'on',
807   - },
808   - },
809   - {
810   - featureType: 'continent',
811   - elementType: 'labels.text.fill',
812   - stylers: {
813   - color: '#2dc4bbff',
814   - },
815   - },
816   - {
817   - featureType: 'continent',
818   - elementType: 'labels.text.stroke',
819   - stylers: {
820   - color: '#ffffff00',
821   - },
822   - },
823   - {
824   - featureType: 'city',
825   - elementType: 'labels.icon',
826   - stylers: {
827   - visibility: 'off',
828   - },
829   - },
830   - {
831   - featureType: 'city',
832   - elementType: 'labels',
833   - stylers: {
834   - visibility: 'on',
835   - },
836   - },
837   - {
838   - featureType: 'city',
839   - elementType: 'labels.text.fill',
840   - stylers: {
841   - color: '#2dc4bbff',
842   - },
843   - },
844   - {
845   - featureType: 'city',
846   - elementType: 'labels.text.stroke',
847   - stylers: {
848   - color: '#ffffff00',
849   - },
850   - },
851   - {
852   - featureType: 'town',
853   - elementType: 'labels.icon',
854   - stylers: {
855   - visibility: 'on',
856   - },
857   - },
858   - {
859   - featureType: 'town',
860   - elementType: 'labels',
861   - stylers: {
862   - visibility: 'off',
863   - },
864   - },
865   - {
866   - featureType: 'town',
867   - elementType: 'labels.text.fill',
868   - stylers: {
869   - color: '#454d50ff',
870   - },
871   - },
872   - {
873   - featureType: 'town',
874   - elementType: 'labels.text.stroke',
875   - stylers: {
876   - color: '#ffffffff',
877   - },
878   - },
879   - {
880   - featureType: 'road',
881   - elementType: 'geometry.fill',
882   - stylers: {
883   - color: '#12223dff',
884   - },
885   - },
886   - {
887   - featureType: 'poilabel',
888   - elementType: 'labels',
889   - stylers: {
890   - visibility: 'on',
891   - },
892   - },
893   - {
894   - featureType: 'districtlabel',
895   - elementType: 'labels',
896   - stylers: {
897   - visibility: 'off',
898   - },
899   - },
900   - {
901   - featureType: 'road',
902   - elementType: 'geometry',
903   - stylers: {
904   - visibility: 'on',
905   - },
906   - },
907   - {
908   - featureType: 'road',
909   - elementType: 'labels',
910   - stylers: {
911   - visibility: 'off',
912   - },
913   - },
914   - {
915   - featureType: 'road',
916   - elementType: 'geometry.stroke',
917   - stylers: {
918   - color: '#ffffff00',
919   - },
920   - },
921   - {
922   - featureType: 'district',
923   - elementType: 'labels',
924   - stylers: {
925   - visibility: 'on',
926   - },
927   - },
928   - {
929   - featureType: 'poilabel',
930   - elementType: 'labels.icon',
931   - stylers: {
932   - visibility: 'off',
933   - },
934   - },
935   - {
936   - featureType: 'poilabel',
937   - elementType: 'labels.text.fill',
938   - stylers: {
939   - color: '#2dc4bbff',
940   - },
941   - },
942   - {
943   - featureType: 'poilabel',
944   - elementType: 'labels.text.stroke',
945   - stylers: {
946   - color: '#ffffff00',
947   - },
948   - },
949   - {
950   - featureType: 'manmade',
951   - elementType: 'geometry',
952   - stylers: {
953   - color: '#12223dff',
954   - },
955   - },
956   - {
957   - featureType: 'districtlabel',
958   - elementType: 'labels.text.stroke',
959   - stylers: {
960   - color: '#ffffffff',
961   - },
962   - },
963   - {
964   - featureType: 'entertainment',
965   - elementType: 'geometry',
966   - stylers: {
967   - color: '#12223dff',
968   - },
969   - },
970   - {
971   - featureType: 'shopping',
972   - elementType: 'geometry',
973   - stylers: {
974   - color: '#12223dff',
975   - },
976   - },
977   - {
978   - featureType: 'nationalway',
979   - stylers: {
980   - curZoomRegionId: '0',
981   - curZoomRegion: '6,10',
982   - level: '6',
983   - },
984   - },
985   - {
986   - featureType: 'nationalway',
987   - stylers: {
988   - curZoomRegionId: '0',
989   - curZoomRegion: '6,10',
990   - level: '7',
991   - },
992   - },
993   - {
994   - featureType: 'nationalway',
995   - stylers: {
996   - curZoomRegionId: '0',
997   - curZoomRegion: '6,10',
998   - level: '8',
999   - },
1000   - },
1001   - {
1002   - featureType: 'nationalway',
1003   - stylers: {
1004   - curZoomRegionId: '0',
1005   - curZoomRegion: '6,10',
1006   - level: '9',
1007   - },
1008   - },
1009   - {
1010   - featureType: 'nationalway',
1011   - stylers: {
1012   - curZoomRegionId: '0',
1013   - curZoomRegion: '6,10',
1014   - level: '10',
1015   - },
1016   - },
1017   - {
1018   - featureType: 'nationalway',
1019   - elementType: 'geometry',
1020   - stylers: {
1021   - visibility: 'off',
1022   - curZoomRegionId: '0',
1023   - curZoomRegion: '6,10',
1024   - level: '6',
1025   - },
1026   - },
1027   - {
1028   - featureType: 'nationalway',
1029   - elementType: 'geometry',
1030   - stylers: {
1031   - visibility: 'off',
1032   - curZoomRegionId: '0',
1033   - curZoomRegion: '6,10',
1034   - level: '7',
1035   - },
1036   - },
1037   - {
1038   - featureType: 'nationalway',
1039   - elementType: 'geometry',
1040   - stylers: {
1041   - visibility: 'off',
1042   - curZoomRegionId: '0',
1043   - curZoomRegion: '6,10',
1044   - level: '8',
1045   - },
1046   - },
1047   - {
1048   - featureType: 'nationalway',
1049   - elementType: 'geometry',
1050   - stylers: {
1051   - visibility: 'off',
1052   - curZoomRegionId: '0',
1053   - curZoomRegion: '6,10',
1054   - level: '9',
1055   - },
1056   - },
1057   - {
1058   - featureType: 'nationalway',
1059   - elementType: 'geometry',
1060   - stylers: {
1061   - visibility: 'off',
1062   - curZoomRegionId: '0',
1063   - curZoomRegion: '6,10',
1064   - level: '10',
1065   - },
1066   - },
1067   - {
1068   - featureType: 'nationalway',
1069   - elementType: 'labels',
1070   - stylers: {
1071   - visibility: 'off',
1072   - curZoomRegionId: '0',
1073   - curZoomRegion: '6,10',
1074   - level: '6',
1075   - },
1076   - },
1077   - {
1078   - featureType: 'nationalway',
1079   - elementType: 'labels',
1080   - stylers: {
1081   - visibility: 'off',
1082   - curZoomRegionId: '0',
1083   - curZoomRegion: '6,10',
1084   - level: '7',
1085   - },
1086   - },
1087   - {
1088   - featureType: 'nationalway',
1089   - elementType: 'labels',
1090   - stylers: {
1091   - visibility: 'off',
1092   - curZoomRegionId: '0',
1093   - curZoomRegion: '6,10',
1094   - level: '8',
1095   - },
1096   - },
1097   - {
1098   - featureType: 'nationalway',
1099   - elementType: 'labels',
1100   - stylers: {
1101   - visibility: 'off',
1102   - curZoomRegionId: '0',
1103   - curZoomRegion: '6,10',
1104   - level: '9',
1105   - },
1106   - },
1107   - {
1108   - featureType: 'nationalway',
1109   - elementType: 'labels',
1110   - stylers: {
1111   - visibility: 'off',
1112   - curZoomRegionId: '0',
1113   - curZoomRegion: '6,10',
1114   - level: '10',
1115   - },
1116   - },
1117   - {
1118   - featureType: 'cityhighway',
1119   - stylers: {
1120   - curZoomRegionId: '0',
1121   - curZoomRegion: '6,9',
1122   - level: '6',
1123   - },
1124   - },
1125   - {
1126   - featureType: 'cityhighway',
1127   - stylers: {
1128   - curZoomRegionId: '0',
1129   - curZoomRegion: '6,9',
1130   - level: '7',
1131   - },
1132   - },
1133   - {
1134   - featureType: 'cityhighway',
1135   - stylers: {
1136   - curZoomRegionId: '0',
1137   - curZoomRegion: '6,9',
1138   - level: '8',
1139   - },
1140   - },
1141   - {
1142   - featureType: 'cityhighway',
1143   - stylers: {
1144   - curZoomRegionId: '0',
1145   - curZoomRegion: '6,9',
1146   - level: '9',
1147   - },
1148   - },
1149   - {
1150   - featureType: 'cityhighway',
1151   - elementType: 'geometry',
1152   - stylers: {
1153   - visibility: 'off',
1154   - curZoomRegionId: '0',
1155   - curZoomRegion: '6,9',
1156   - level: '6',
1157   - },
1158   - },
1159   - {
1160   - featureType: 'cityhighway',
1161   - elementType: 'geometry',
1162   - stylers: {
1163   - visibility: 'off',
1164   - curZoomRegionId: '0',
1165   - curZoomRegion: '6,9',
1166   - level: '7',
1167   - },
1168   - },
1169   - {
1170   - featureType: 'cityhighway',
1171   - elementType: 'geometry',
1172   - stylers: {
1173   - visibility: 'off',
1174   - curZoomRegionId: '0',
1175   - curZoomRegion: '6,9',
1176   - level: '8',
1177   - },
1178   - },
1179   - {
1180   - featureType: 'cityhighway',
1181   - elementType: 'geometry',
1182   - stylers: {
1183   - visibility: 'off',
1184   - curZoomRegionId: '0',
1185   - curZoomRegion: '6,9',
1186   - level: '9',
1187   - },
1188   - },
1189   - {
1190   - featureType: 'cityhighway',
1191   - elementType: 'labels',
1192   - stylers: {
1193   - visibility: 'off',
1194   - curZoomRegionId: '0',
1195   - curZoomRegion: '6,9',
1196   - level: '6',
1197   - },
1198   - },
1199   - {
1200   - featureType: 'cityhighway',
1201   - elementType: 'labels',
1202   - stylers: {
1203   - visibility: 'off',
1204   - curZoomRegionId: '0',
1205   - curZoomRegion: '6,9',
1206   - level: '7',
1207   - },
1208   - },
1209   - {
1210   - featureType: 'cityhighway',
1211   - elementType: 'labels',
1212   - stylers: {
1213   - visibility: 'off',
1214   - curZoomRegionId: '0',
1215   - curZoomRegion: '6,9',
1216   - level: '8',
1217   - },
1218   - },
1219   - {
1220   - featureType: 'cityhighway',
1221   - elementType: 'labels',
1222   - stylers: {
1223   - visibility: 'off',
1224   - curZoomRegionId: '0',
1225   - curZoomRegion: '6,9',
1226   - level: '9',
1227   - },
1228   - },
1229   - {
1230   - featureType: 'subwaylabel',
1231   - elementType: 'labels',
1232   - stylers: {
1233   - visibility: 'off',
1234   - },
1235   - },
1236   - {
1237   - featureType: 'subwaylabel',
1238   - elementType: 'labels.icon',
1239   - stylers: {
1240   - visibility: 'off',
1241   - },
1242   - },
1243   - {
1244   - featureType: 'tertiarywaysign',
1245   - elementType: 'labels',
1246   - stylers: {
1247   - visibility: 'off',
1248   - },
1249   - },
1250   - {
1251   - featureType: 'tertiarywaysign',
1252   - elementType: 'labels.icon',
1253   - stylers: {
1254   - visibility: 'off',
1255   - },
1256   - },
1257   - {
1258   - featureType: 'provincialwaysign',
1259   - elementType: 'labels',
1260   - stylers: {
1261   - visibility: 'off',
1262   - },
1263   - },
1264   - {
1265   - featureType: 'provincialwaysign',
1266   - elementType: 'labels.icon',
1267   - stylers: {
1268   - visibility: 'off',
1269   - },
1270   - },
1271   - {
1272   - featureType: 'nationalwaysign',
1273   - elementType: 'labels',
1274   - stylers: {
1275   - visibility: 'off',
1276   - },
1277   - },
1278   - {
1279   - featureType: 'nationalwaysign',
1280   - elementType: 'labels.icon',
1281   - stylers: {
1282   - visibility: 'off',
1283   - },
1284   - },
1285   - {
1286   - featureType: 'highwaysign',
1287   - elementType: 'labels',
1288   - stylers: {
1289   - visibility: 'off',
1290   - },
1291   - },
1292   - {
1293   - featureType: 'highwaysign',
1294   - elementType: 'labels.icon',
1295   - stylers: {
1296   - visibility: 'off',
1297   - },
1298   - },
1299   - {
1300   - featureType: 'village',
1301   - elementType: 'labels',
1302   - stylers: {
1303   - visibility: 'off',
1304   - },
1305   - },
1306   - {
1307   - featureType: 'district',
1308   - elementType: 'labels.text',
1309   - stylers: {
1310   - fontsize: 20,
1311   - },
1312   - },
1313   - {
1314   - featureType: 'district',
1315   - elementType: 'labels.text.fill',
1316   - stylers: {
1317   - color: '#2dc4bbff',
1318   - },
1319   - },
1320   - {
1321   - featureType: 'district',
1322   - elementType: 'labels.text.stroke',
1323   - stylers: {
1324   - color: '#ffffff00',
1325   - },
1326   - },
1327   - {
1328   - featureType: 'country',
1329   - elementType: 'labels.text.fill',
1330   - stylers: {
1331   - color: '#2dc4bbff',
1332   - },
1333   - },
1334   - {
1335   - featureType: 'country',
1336   - elementType: 'labels.text.stroke',
1337   - stylers: {
1338   - color: '#ffffff00',
1339   - },
1340   - },
1341   - {
1342   - featureType: 'water',
1343   - elementType: 'labels.text.fill',
1344   - stylers: {
1345   - color: '#2dc4bbff',
1346   - },
1347   - },
1348   - {
1349   - featureType: 'water',
1350   - elementType: 'labels.text.stroke',
1351   - stylers: {
1352   - color: '#ffffff00',
1353   - },
1354   - },
1355   - {
1356   - featureType: 'cityhighway',
1357   - elementType: 'geometry.fill',
1358   - stylers: {
1359   - color: '#12223dff',
1360   - },
1361   - },
1362   - {
1363   - featureType: 'cityhighway',
1364   - elementType: 'geometry.stroke',
1365   - stylers: {
1366   - color: '#ffffff00',
1367   - },
1368   - },
1369   - {
1370   - featureType: 'tertiaryway',
1371   - elementType: 'geometry.fill',
1372   - stylers: {
1373   - color: '#12223dff',
1374   - },
1375   - },
1376   - {
1377   - featureType: 'tertiaryway',
1378   - elementType: 'geometry.stroke',
1379   - stylers: {
1380   - color: '#ffffff10',
1381   - },
1382   - },
1383   - {
1384   - featureType: 'provincialway',
1385   - elementType: 'geometry.fill',
1386   - stylers: {
1387   - color: '#12223dff',
1388   - },
1389   - },
1390   - {
1391   - featureType: 'provincialway',
1392   - elementType: 'geometry.stroke',
1393   - stylers: {
1394   - color: '#ffffff00',
1395   - },
1396   - },
1397   - {
1398   - featureType: 'nationalway',
1399   - elementType: 'geometry.fill',
1400   - stylers: {
1401   - color: '#12223dff',
1402   - },
1403   - },
1404   - {
1405   - featureType: 'nationalway',
1406   - elementType: 'geometry.stroke',
1407   - stylers: {
1408   - color: '#ffffff00',
1409   - },
1410   - },
1411   - {
1412   - featureType: 'highway',
1413   - elementType: 'labels.text',
1414   - stylers: {
1415   - fontsize: 20,
1416   - },
1417   - },
1418   - {
1419   - featureType: 'nationalway',
1420   - elementType: 'labels.text.stroke',
1421   - stylers: {
1422   - color: '#ffffff00',
1423   - },
1424   - },
1425   - {
1426   - featureType: 'nationalway',
1427   - elementType: 'labels.text.fill',
1428   - stylers: {
1429   - color: '#12223dff',
1430   - },
1431   - },
1432   - {
1433   - featureType: 'nationalway',
1434   - elementType: 'labels.text',
1435   - stylers: {
1436   - fontsize: 20,
1437   - },
1438   - },
1439   - {
1440   - featureType: 'provincialway',
1441   - elementType: 'labels.text.fill',
1442   - stylers: {
1443   - color: '#12223dff',
1444   - },
1445   - },
1446   - {
1447   - featureType: 'provincialway',
1448   - elementType: 'labels.text.stroke',
1449   - stylers: {
1450   - color: '#ffffff00',
1451   - },
1452   - },
1453   - {
1454   - featureType: 'provincialway',
1455   - elementType: 'labels.text',
1456   - stylers: {
1457   - fontsize: 20,
1458   - },
1459   - },
1460   - {
1461   - featureType: 'cityhighway',
1462   - elementType: 'labels.text.fill',
1463   - stylers: {
1464   - color: '#12223dff',
1465   - },
1466   - },
1467   - {
1468   - featureType: 'cityhighway',
1469   - elementType: 'labels.text',
1470   - stylers: {
1471   - fontsize: 20,
1472   - },
1473   - },
1474   - {
1475   - featureType: 'cityhighway',
1476   - elementType: 'labels.text.stroke',
1477   - stylers: {
1478   - color: '#ffffff00',
1479   - },
1480   - },
1481   - {
1482   - featureType: 'estate',
1483   - elementType: 'geometry',
1484   - stylers: {
1485   - color: '#12223dff',
1486   - },
1487   - },
1488   - {
1489   - featureType: 'tertiaryway',
1490   - elementType: 'labels.text.fill',
1491   - stylers: {
1492   - color: '#2dc4bbff',
1493   - },
1494   - },
1495   - {
1496   - featureType: 'tertiaryway',
1497   - elementType: 'labels.text.stroke',
1498   - stylers: {
1499   - color: '#ffffff00',
1500   - },
1501   - },
1502   - {
1503   - featureType: 'fourlevelway',
1504   - elementType: 'labels.text.fill',
1505   - stylers: {
1506   - color: '#2dc4bbff',
1507   - },
1508   - },
1509   - {
1510   - featureType: 'fourlevelway',
1511   - elementType: 'labels.text.stroke',
1512   - stylers: {
1513   - color: '#ffffff00',
1514   - },
1515   - },
1516   - {
1517   - featureType: 'scenicspotsway',
1518   - elementType: 'geometry.fill',
1519   - stylers: {
1520   - color: '#12223dff',
1521   - },
1522   - },
1523   - {
1524   - featureType: 'scenicspotsway',
1525   - elementType: 'geometry.stroke',
1526   - stylers: {
1527   - color: '#ffffff00',
1528   - },
1529   - },
1530   - {
1531   - featureType: 'universityway',
1532   - elementType: 'geometry.fill',
1533   - stylers: {
1534   - color: '#12223dff',
1535   - },
1536   - },
1537   - {
1538   - featureType: 'universityway',
1539   - elementType: 'geometry.stroke',
1540   - stylers: {
1541   - color: '#ffffff00',
1542   - },
1543   - },
1544   - {
1545   - featureType: 'vacationway',
1546   - elementType: 'geometry.fill',
1547   - stylers: {
1548   - color: '#12223dff',
1549   - },
1550   - },
1551   - {
1552   - featureType: 'vacationway',
1553   - elementType: 'geometry.stroke',
1554   - stylers: {
1555   - color: '#ffffff00',
1556   - },
1557   - },
1558   - {
1559   - featureType: 'fourlevelway',
1560   - elementType: 'geometry',
1561   - stylers: {
1562   - visibility: 'on',
1563   - },
1564   - },
1565   - {
1566   - featureType: 'fourlevelway',
1567   - elementType: 'geometry.fill',
1568   - stylers: {
1569   - color: '#12223dff',
1570   - },
1571   - },
1572   - {
1573   - featureType: 'fourlevelway',
1574   - elementType: 'geometry.stroke',
1575   - stylers: {
1576   - color: '#ffffff00',
1577   - },
1578   - },
1579   - {
1580   - featureType: 'transportationlabel',
1581   - elementType: 'labels',
1582   - stylers: {
1583   - visibility: 'on',
1584   - },
1585   - },
1586   - {
1587   - featureType: 'transportationlabel',
1588   - elementType: 'labels.icon',
1589   - stylers: {
1590   - visibility: 'off',
1591   - },
1592   - },
1593   - {
1594   - featureType: 'transportationlabel',
1595   - elementType: 'labels.text.fill',
1596   - stylers: {
1597   - color: '#2dc4bbff',
1598   - },
1599   - },
1600   - {
1601   - featureType: 'transportationlabel',
1602   - elementType: 'labels.text.stroke',
1603   - stylers: {
1604   - color: '#ffffff00',
1605   - },
1606   - },
1607   - {
1608   - featureType: 'educationlabel',
1609   - elementType: 'labels',
1610   - stylers: {
1611   - visibility: 'on',
1612   - },
1613   - },
1614   - {
1615   - featureType: 'educationlabel',
1616   - elementType: 'labels.icon',
1617   - stylers: {
1618   - visibility: 'off',
1619   - },
1620   - },
1621   - {
1622   - featureType: 'educationlabel',
1623   - elementType: 'labels.text.fill',
1624   - stylers: {
1625   - color: '#2dc4bbff',
1626   - },
1627   - },
1628   - {
1629   - featureType: 'educationlabel',
1630   - elementType: 'labels.text.stroke',
1631   - stylers: {
1632   - color: '#ffffff00',
1633   - },
1634   - },
1635   - {
1636   - featureType: 'transportation',
1637   - elementType: 'geometry',
1638   - stylers: {
1639   - color: '#113549ff',
1640   - },
1641   - },
1642   - {
1643   - featureType: 'airportlabel',
1644   - elementType: 'labels.text.fill',
1645   - stylers: {
1646   - color: '#2dc4bbff',
1647   - },
1648   - },
1649   - {
1650   - featureType: 'airportlabel',
1651   - elementType: 'labels.text.stroke',
1652   - stylers: {
1653   - color: '#ffffff00',
1654   - },
1655   - },
1656   - {
1657   - featureType: 'scenicspotslabel',
1658   - elementType: 'labels.text.fill',
1659   - stylers: {
1660   - color: '#2dc4bbff',
1661   - },
1662   - },
1663   - {
1664   - featureType: 'scenicspotslabel',
1665   - elementType: 'labels.text.stroke',
1666   - stylers: {
1667   - color: '#ffffff00',
1668   - },
1669   - },
1670   - {
1671   - featureType: 'medicallabel',
1672   - elementType: 'labels.text.fill',
1673   - stylers: {
1674   - color: '#2dc4bbff',
1675   - },
1676   - },
1677   - {
1678   - featureType: 'medicallabel',
1679   - elementType: 'labels.text.stroke',
1680   - stylers: {
1681   - color: '#ffffff00',
1682   - },
1683   - },
1684   - {
1685   - featureType: 'medicallabel',
1686   - elementType: 'labels.icon',
1687   - stylers: {
1688   - visibility: 'off',
1689   - },
1690   - },
1691   - {
1692   - featureType: 'scenicspotslabel',
1693   - elementType: 'labels.icon',
1694   - stylers: {
1695   - visibility: 'off',
1696   - },
1697   - },
1698   - {
1699   - featureType: 'airportlabel',
1700   - elementType: 'labels.icon',
1701   - stylers: {
1702   - visibility: 'off',
1703   - },
1704   - },
1705   - {
1706   - featureType: 'entertainmentlabel',
1707   - elementType: 'labels.icon',
1708   - stylers: {
1709   - visibility: 'off',
1710   - },
1711   - },
1712   - {
1713   - featureType: 'entertainmentlabel',
1714   - elementType: 'labels.text.fill',
1715   - stylers: {
1716   - color: '#2dc4bbff',
1717   - },
1718   - },
1719   - {
1720   - featureType: 'entertainmentlabel',
1721   - elementType: 'labels.text.stroke',
1722   - stylers: {
1723   - color: '#ffffff00',
1724   - },
1725   - },
1726   - {
1727   - featureType: 'estatelabel',
1728   - elementType: 'labels.icon',
1729   - stylers: {
1730   - visibility: 'off',
1731   - },
1732   - },
1733   - {
1734   - featureType: 'estatelabel',
1735   - elementType: 'labels.text.fill',
1736   - stylers: {
1737   - color: '#2dc4bbff',
1738   - },
1739   - },
1740   - {
1741   - featureType: 'estatelabel',
1742   - elementType: 'labels.text.stroke',
1743   - stylers: {
1744   - color: '#ffffff00',
1745   - },
1746   - },
1747   - {
1748   - featureType: 'businesstowerlabel',
1749   - elementType: 'labels.text.fill',
1750   - stylers: {
1751   - color: '#2dc4bbff',
1752   - },
1753   - },
1754   - {
1755   - featureType: 'businesstowerlabel',
1756   - elementType: 'labels.text.stroke',
1757   - stylers: {
1758   - color: '#ffffff00',
1759   - },
1760   - },
1761   - {
1762   - featureType: 'businesstowerlabel',
1763   - elementType: 'labels.icon',
1764   - stylers: {
1765   - visibility: 'off',
1766   - },
1767   - },
1768   - {
1769   - featureType: 'companylabel',
1770   - elementType: 'labels.text.fill',
1771   - stylers: {
1772   - color: '#2dc4bbff',
1773   - },
1774   - },
1775   - {
1776   - featureType: 'companylabel',
1777   - elementType: 'labels.text.stroke',
1778   - stylers: {
1779   - color: '#ffffff00',
1780   - },
1781   - },
1782   - {
1783   - featureType: 'companylabel',
1784   - elementType: 'labels.icon',
1785   - stylers: {
1786   - visibility: 'off',
1787   - },
1788   - },
1789   - {
1790   - featureType: 'governmentlabel',
1791   - elementType: 'labels.icon',
1792   - stylers: {
1793   - visibility: 'off',
1794   - },
1795   - },
1796   - {
1797   - featureType: 'governmentlabel',
1798   - elementType: 'labels.text.fill',
1799   - stylers: {
1800   - color: '#2dc4bbff',
1801   - },
1802   - },
1803   - {
1804   - featureType: 'governmentlabel',
1805   - elementType: 'labels.text.stroke',
1806   - stylers: {
1807   - color: '#ffffff00',
1808   - },
1809   - },
1810   - {
1811   - featureType: 'restaurantlabel',
1812   - elementType: 'labels.text.fill',
1813   - stylers: {
1814   - color: '#2dc4bbff',
1815   - },
1816   - },
1817   - {
1818   - featureType: 'restaurantlabel',
1819   - elementType: 'labels.text.stroke',
1820   - stylers: {
1821   - color: '#ffffff00',
1822   - },
1823   - },
1824   - {
1825   - featureType: 'restaurantlabel',
1826   - elementType: 'labels.icon',
1827   - stylers: {
1828   - visibility: 'off',
1829   - },
1830   - },
1831   - {
1832   - featureType: 'hotellabel',
1833   - elementType: 'labels.icon',
1834   - stylers: {
1835   - visibility: 'off',
1836   - },
1837   - },
1838   - {
1839   - featureType: 'hotellabel',
1840   - elementType: 'labels.text.fill',
1841   - stylers: {
1842   - color: '#2dc4bbff',
1843   - },
1844   - },
1845   - {
1846   - featureType: 'hotellabel',
1847   - elementType: 'labels.text.stroke',
1848   - stylers: {
1849   - color: '#ffffff00',
1850   - },
1851   - },
1852   - {
1853   - featureType: 'shoppinglabel',
1854   - elementType: 'labels.text.fill',
1855   - stylers: {
1856   - color: '#2dc4bbff',
1857   - },
1858   - },
1859   - {
1860   - featureType: 'shoppinglabel',
1861   - elementType: 'labels.text.stroke',
1862   - stylers: {
1863   - color: '#ffffff00',
1864   - },
1865   - },
1866   - {
1867   - featureType: 'shoppinglabel',
1868   - elementType: 'labels.icon',
1869   - stylers: {
1870   - visibility: 'off',
1871   - },
1872   - },
1873   - {
1874   - featureType: 'lifeservicelabel',
1875   - elementType: 'labels.text.fill',
1876   - stylers: {
1877   - color: '#2dc4bbff',
1878   - },
1879   - },
1880   - {
1881   - featureType: 'lifeservicelabel',
1882   - elementType: 'labels.text.stroke',
1883   - stylers: {
1884   - color: '#ffffff00',
1885   - },
1886   - },
1887   - {
1888   - featureType: 'lifeservicelabel',
1889   - elementType: 'labels.icon',
1890   - stylers: {
1891   - visibility: 'off',
1892   - },
1893   - },
1894   - {
1895   - featureType: 'carservicelabel',
1896   - elementType: 'labels.text.fill',
1897   - stylers: {
1898   - color: '#2dc4bbff',
1899   - },
1900   - },
1901   - {
1902   - featureType: 'carservicelabel',
1903   - elementType: 'labels.text.stroke',
1904   - stylers: {
1905   - color: '#ffffff00',
1906   - },
1907   - },
1908   - {
1909   - featureType: 'carservicelabel',
1910   - elementType: 'labels.icon',
1911   - stylers: {
1912   - visibility: 'off',
1913   - },
1914   - },
1915   - {
1916   - featureType: 'financelabel',
1917   - elementType: 'labels.text.fill',
1918   - stylers: {
1919   - color: '#2dc4bbff',
1920   - },
1921   - },
1922   - {
1923   - featureType: 'financelabel',
1924   - elementType: 'labels.text.stroke',
1925   - stylers: {
1926   - color: '#ffffff00',
1927   - },
1928   - },
1929   - {
1930   - featureType: 'financelabel',
1931   - elementType: 'labels.icon',
1932   - stylers: {
1933   - visibility: 'off',
1934   - },
1935   - },
1936   - {
1937   - featureType: 'otherlabel',
1938   - elementType: 'labels.text.fill',
1939   - stylers: {
1940   - color: '#2dc4bbff',
1941   - },
1942   - },
1943   - {
1944   - featureType: 'otherlabel',
1945   - elementType: 'labels.text.stroke',
1946   - stylers: {
1947   - color: '#ffffff00',
1948   - },
1949   - },
1950   - {
1951   - featureType: 'otherlabel',
1952   - elementType: 'labels.icon',
1953   - stylers: {
1954   - visibility: 'off',
1955   - },
1956   - },
1957   - {
1958   - featureType: 'manmade',
1959   - elementType: 'labels.text.fill',
1960   - stylers: {
1961   - color: '#2dc4bbff',
1962   - },
1963   - },
1964   - {
1965   - featureType: 'manmade',
1966   - elementType: 'labels.text.stroke',
1967   - stylers: {
1968   - color: '#ffffff00',
1969   - },
1970   - },
1971   - {
1972   - featureType: 'transportation',
1973   - elementType: 'labels.text.fill',
1974   - stylers: {
1975   - color: '#2dc4bbff',
1976   - },
1977   - },
1978   - {
1979   - featureType: 'transportation',
1980   - elementType: 'labels.text.stroke',
1981   - stylers: {
1982   - color: '#ffffff00',
1983   - },
1984   - },
1985   - {
1986   - featureType: 'education',
1987   - elementType: 'labels.text.fill',
1988   - stylers: {
1989   - color: '#2dc4bbff',
1990   - },
1991   - },
1992   - {
1993   - featureType: 'education',
1994   - elementType: 'labels.text.stroke',
1995   - stylers: {
1996   - color: '#ffffff00',
1997   - },
1998   - },
1999   - {
2000   - featureType: 'medical',
2001   - elementType: 'labels.text.fill',
2002   - stylers: {
2003   - color: '#2dc4bbff',
2004   - },
2005   - },
2006   - {
2007   - featureType: 'medical',
2008   - elementType: 'labels.text.stroke',
2009   - stylers: {
2010   - color: '#ffffff00',
2011   - },
2012   - },
2013   - {
2014   - featureType: 'scenicspots',
2015   - elementType: 'labels.text.fill',
2016   - stylers: {
2017   - color: '#2dc4bbff',
2018   - },
2019   - },
2020   - {
2021   - featureType: 'scenicspots',
2022   - elementType: 'labels.text.stroke',
2023   - stylers: {
2024   - color: '#ffffff00',
2025   - },
2026   - },
2027   - ],
2028   -};
1   -import { FormSchema } from '/@/components/Form';
2   -
3   -export const scheme: FormSchema[] = [
4   - // {
5   - // field: 'effectScope',
6   - // label: '时间周期',
7   - // colProps: { span: 24 },
8   - // component: 'Input',
9   - // defaultValue: 'effectScope',
10   - // componentProps: {
11   - // disabled: true,
12   - // },
13   - // },
14   - {
15   - field: 'agg',
16   - label: '聚合方式',
17   - defaultValue: 'agg',
18   - colProps: { span: 24 },
19   - component: 'Input',
20   - componentProps: {
21   - disabled: true,
22   - },
23   - },
24   - {
25   - field: 'interval',
26   - label: '间隔时间',
27   - defaultValue: 'interval',
28   - colProps: { span: 24 },
29   - component: 'Input',
30   - componentProps: {
31   - disabled: true,
32   - },
33   - },
34   -];
1   -import { Moment } from 'moment';
2   -
3   -enum TimeUnit {
4   - SECOND = 'second',
5   - MINUTE = 'MINUTE',
6   - HOUR = 'HOUR',
7   - DAY = 'DAY',
8   -}
9   -
10   -const unitMapping = {
11   - [TimeUnit.SECOND]: '秒',
12   - [TimeUnit.MINUTE]: '分',
13   - [TimeUnit.HOUR]: '小时',
14   - [TimeUnit.DAY]: '天',
15   -};
16   -
17   -const unitConversion = {
18   - [TimeUnit.SECOND]: 1 * 1000,
19   - [TimeUnit.MINUTE]: 1 * 60 * 1000,
20   - [TimeUnit.HOUR]: 1 * 60 * 60 * 1000,
21   - [TimeUnit.DAY]: 1 * 60 * 60 * 24 * 1000,
22   -};
23   -
24   -export const intervalOption = [
25   - {
26   - id: 1,
27   - unit: TimeUnit.SECOND,
28   - linkage: [{ id: 1, unit: TimeUnit.SECOND }],
29   - },
30   - {
31   - id: 5,
32   - unit: TimeUnit.SECOND,
33   - linkage: [{ id: 1, unit: TimeUnit.SECOND }],
34   - },
35   - {
36   - id: 10,
37   - unit: TimeUnit.SECOND,
38   - linkage: [{ id: 1, unit: TimeUnit.SECOND }],
39   - },
40   - {
41   - id: 15,
42   - unit: TimeUnit.SECOND,
43   - linkage: [{ id: 1, unit: TimeUnit.SECOND }],
44   - },
45   - {
46   - id: 30,
47   - unit: TimeUnit.SECOND,
48   - linkage: [{ id: 1, unit: TimeUnit.SECOND }],
49   - },
50   - {
51   - id: 1,
52   - unit: TimeUnit.MINUTE,
53   - linkage: [
54   - { id: 1, unit: TimeUnit.SECOND },
55   - { id: 5, unit: TimeUnit.SECOND },
56   - ],
57   - },
58   - {
59   - id: 2,
60   - unit: TimeUnit.MINUTE,
61   - linkage: [
62   - { id: 1, unit: TimeUnit.SECOND },
63   - { id: 5, unit: TimeUnit.SECOND },
64   - { id: 10, unit: TimeUnit.SECOND },
65   - { id: 15, unit: TimeUnit.SECOND },
66   - ],
67   - },
68   - {
69   - id: 5,
70   - unit: TimeUnit.MINUTE,
71   - linkage: [
72   - { id: 1, unit: TimeUnit.SECOND },
73   - { id: 5, unit: TimeUnit.SECOND },
74   - { id: 10, unit: TimeUnit.SECOND },
75   - { id: 15, unit: TimeUnit.SECOND },
76   - { id: 30, unit: TimeUnit.SECOND },
77   - ],
78   - },
79   - {
80   - id: 10,
81   - unit: TimeUnit.MINUTE,
82   - linkage: [
83   - { id: 5, unit: TimeUnit.SECOND },
84   - { id: 10, unit: TimeUnit.SECOND },
85   - { id: 15, unit: TimeUnit.SECOND },
86   - { id: 30, unit: TimeUnit.SECOND },
87   - { id: 1, unit: TimeUnit.MINUTE },
88   - ],
89   - },
90   - {
91   - id: 15,
92   - unit: TimeUnit.MINUTE,
93   - linkage: [
94   - { id: 5, unit: TimeUnit.SECOND },
95   - { id: 10, unit: TimeUnit.SECOND },
96   - { id: 15, unit: TimeUnit.SECOND },
97   - { id: 30, unit: TimeUnit.SECOND },
98   - { id: 1, unit: TimeUnit.MINUTE },
99   - { id: 2, unit: TimeUnit.MINUTE },
100   - ],
101   - },
102   - {
103   - id: 30,
104   - unit: TimeUnit.MINUTE,
105   - linkage: [
106   - { id: 5, unit: TimeUnit.SECOND },
107   - { id: 10, unit: TimeUnit.SECOND },
108   - { id: 15, unit: TimeUnit.SECOND },
109   - { id: 30, unit: TimeUnit.SECOND },
110   - { id: 1, unit: TimeUnit.MINUTE },
111   - { id: 2, unit: TimeUnit.MINUTE },
112   - ],
113   - },
114   - {
115   - id: 1,
116   - unit: TimeUnit.HOUR,
117   - linkage: [
118   - { id: 10, unit: TimeUnit.SECOND },
119   - { id: 15, unit: TimeUnit.SECOND },
120   - { id: 30, unit: TimeUnit.SECOND },
121   - { id: 1, unit: TimeUnit.MINUTE },
122   - { id: 2, unit: TimeUnit.MINUTE },
123   - { id: 5, unit: TimeUnit.MINUTE },
124   - ],
125   - },
126   - {
127   - id: 2,
128   - unit: TimeUnit.HOUR,
129   - linkage: [
130   - { id: 15, unit: TimeUnit.SECOND },
131   - { id: 30, unit: TimeUnit.SECOND },
132   - { id: 1, unit: TimeUnit.MINUTE },
133   - { id: 2, unit: TimeUnit.MINUTE },
134   - { id: 5, unit: TimeUnit.MINUTE },
135   - { id: 10, unit: TimeUnit.MINUTE },
136   - { id: 15, unit: TimeUnit.MINUTE },
137   - ],
138   - },
139   - {
140   - id: 5,
141   - unit: TimeUnit.HOUR,
142   - linkage: [
143   - { id: 1, unit: TimeUnit.MINUTE },
144   - { id: 2, unit: TimeUnit.MINUTE },
145   - { id: 5, unit: TimeUnit.MINUTE },
146   - { id: 10, unit: TimeUnit.MINUTE },
147   - { id: 15, unit: TimeUnit.MINUTE },
148   - { id: 30, unit: TimeUnit.MINUTE },
149   - ],
150   - },
151   - {
152   - id: 10,
153   - unit: TimeUnit.HOUR,
154   - linkage: [
155   - { id: 2, unit: TimeUnit.MINUTE },
156   - { id: 5, unit: TimeUnit.MINUTE },
157   - { id: 10, unit: TimeUnit.MINUTE },
158   - { id: 15, unit: TimeUnit.MINUTE },
159   - { id: 30, unit: TimeUnit.MINUTE },
160   - { id: 1, unit: TimeUnit.HOUR },
161   - ],
162   - },
163   - {
164   - id: 12,
165   - unit: TimeUnit.HOUR,
166   - linkage: [
167   - { id: 2, unit: TimeUnit.MINUTE },
168   - { id: 5, unit: TimeUnit.MINUTE },
169   - { id: 10, unit: TimeUnit.MINUTE },
170   - { id: 15, unit: TimeUnit.MINUTE },
171   - { id: 30, unit: TimeUnit.MINUTE },
172   - { id: 1, unit: TimeUnit.HOUR },
173   - ],
174   - },
175   - {
176   - id: 1,
177   - unit: TimeUnit.DAY,
178   - linkage: [
179   - { id: 5, unit: TimeUnit.MINUTE },
180   - { id: 10, unit: TimeUnit.MINUTE },
181   - { id: 15, unit: TimeUnit.MINUTE },
182   - { id: 30, unit: TimeUnit.MINUTE },
183   - { id: 1, unit: TimeUnit.HOUR },
184   - { id: 2, unit: TimeUnit.HOUR },
185   - ],
186   - },
187   - {
188   - id: 7,
189   - unit: TimeUnit.DAY,
190   - linkage: [
191   - { id: 30, unit: TimeUnit.MINUTE },
192   - { id: 1, unit: TimeUnit.HOUR },
193   - { id: 2, unit: TimeUnit.HOUR },
194   - { id: 5, unit: TimeUnit.HOUR },
195   - { id: 10, unit: TimeUnit.HOUR },
196   - { id: 12, unit: TimeUnit.HOUR },
197   - { id: 1, unit: TimeUnit.DAY },
198   - ],
199   - },
200   - {
201   - id: 30,
202   - unit: TimeUnit.DAY,
203   - linkage: [
204   - { id: 2, unit: TimeUnit.HOUR },
205   - { id: 5, unit: TimeUnit.HOUR },
206   - { id: 10, unit: TimeUnit.HOUR },
207   - { id: 12, unit: TimeUnit.HOUR },
208   - { id: 1, unit: TimeUnit.DAY },
209   - ],
210   - },
211   -].map((item) => {
212   - return {
213   - value: item.id * unitConversion[item.unit],
214   - label: item.id + unitMapping[item.unit],
215   - linkage: item.linkage.map((item) => {
216   - return {
217   - value: item.id * unitConversion[item.unit],
218   - label: item.id + unitMapping[item.unit],
219   - };
220   - }),
221   - };
222   -});
223   -
224   -const rangeIntervalOption = [
225   - {
226   - id: 90,
227   - unit: TimeUnit.DAY,
228   - linkage: [
229   - { id: 5, unit: TimeUnit.HOUR },
230   - { id: 10, unit: TimeUnit.HOUR },
231   - { id: 12, unit: TimeUnit.HOUR },
232   - { id: 1, unit: TimeUnit.DAY },
233   - { id: 7, unit: TimeUnit.DAY },
234   - ],
235   - },
236   - {
237   - id: 180,
238   - unit: TimeUnit.DAY,
239   - linkage: [
240   - { id: 10, unit: TimeUnit.HOUR },
241   - { id: 12, unit: TimeUnit.HOUR },
242   - { id: 1, unit: TimeUnit.DAY },
243   - { id: 7, unit: TimeUnit.DAY },
244   - ],
245   - },
246   - {
247   - id: 360,
248   - unit: TimeUnit.DAY,
249   - linkage: [
250   - { id: 1, unit: TimeUnit.DAY },
251   - { id: 7, unit: TimeUnit.DAY },
252   - { id: 30, unit: TimeUnit.DAY },
253   - ],
254   - },
255   -].map((item) => {
256   - return {
257   - value: item.id * unitConversion[item.unit],
258   - label: item.id + unitMapping[item.unit],
259   - linkage: item.linkage.map((item) => {
260   - return {
261   - value: item.id * unitConversion[item.unit],
262   - label: item.id + unitMapping[item.unit],
263   - };
264   - }),
265   - };
266   -});
267   -
268   -/**
269   - * @description
270   - * @param {number} value
271   - * @returns
272   - */
273   -export function getPacketIntervalByValue(value: number) {
274   - return intervalOption.find((item) => item.value === value)?.linkage || [];
275   -}
276   -
277   -export function getPacketIntervalByRange(
278   - [start, end] = [null, null] as [Nullable<Moment>, Nullable<Moment>]
279   -) {
280   - if (start && end) {
281   - const value = end.diff(start, 'ms');
282   - let options: { value: number; label: string }[] = [];
283   - for (const item of [...intervalOption, ...rangeIntervalOption]) {
284   - if (item.value <= value) continue;
285   - if (item.value >= value) {
286   - options = item.linkage;
287   - break;
288   - }
289   - }
290   - return options;
291   - }
292   - return [];
293   -}
1   -<script setup lang="ts">
2   - import { BasicForm, useForm } from '/@/components/Form';
3   - import { scheme } from './config';
4   -
5   - defineEmits(['register']);
6   -
7   - const [registerForm, { getFieldsValue, setFieldsValue, resetFields }] = useForm({
8   - schemas: scheme,
9   - showActionButtonGroup: false,
10   - });
11   -
12   - const getValue = () => {
13   - return getFieldsValue();
14   - };
15   -
16   - const setValue = (objs) => setFieldsValue(objs);
17   -
18   - const resetValue = () => resetFields();
19   -
20   - defineExpose({
21   - getValue,
22   - setValue,
23   - resetValue,
24   - });
25   -</script>
26   -
27   -<template>
28   - <BasicForm @register="registerForm" />
29   -</template>
... ... @@ -14,7 +14,6 @@
14 14 </td>
15 15 <td style="width: 12vw">
16 16 <Select
17   - :disabled="item.key === 'agg,interval' ? true : false"
18 17 v-model:value="item.key"
19 18 placeholder="请选择"
20 19 :options="selectOptions"
... ... @@ -60,18 +59,6 @@
60 59 </tbody>
61 60 </table>
62 61 </div>
63   - <BasicModal
64   - @register="registerModal"
65   - title=""
66   - width="40%"
67   - :minHeight="90"
68   - wrap-class-name="history-trend-model"
69   - :canFullscreen="false"
70   - @cancel="handleCancelModal"
71   - @ok="onHandleModal"
72   - >
73   - <DateRangeSelect ref="dateRangeSelectRef" />
74   - </BasicModal>
75 62 </template>
76 63 <script lang="ts" setup name="editCellTable">
77 64 import { reactive, ref, onMounted, nextTick } from 'vue';
... ... @@ -80,8 +67,6 @@
80 67 import { PlusOutlined, MinusOutlined } from '@ant-design/icons-vue';
81 68 import { editCellTableTHeadConfig } from '../../../config/config';
82 69 import { selectType, tableItems } from '../../../config/types';
83   - import { useModal, BasicModal } from '/@/components/Modal';
84   - import DateRangeSelect from './DateRangeSelect/index.vue';
85 70
86 71 defineProps({
87 72 method: {
... ... @@ -91,31 +76,10 @@
91 76
92 77 const selectOptions = ref<selectType[]>([]);
93 78
94   - const dateRangeSelectRef = ref<InstanceType<typeof DateRangeSelect>>();
95   -
96   - const [registerModal, { closeModal }] = useModal();
97   -
98 79 const mores = ref(false);
99 80
100 81 const onHandleCheck = ({ target }) => {
101 82 mores.value = target?.checked;
102   - if (mores.value) {
103   - // openModal(true);
104   - }
105   - };
106   -
107   - const handleCancelModal = () => {
108   - closeModal();
109   - dateRangeSelectRef.value?.resetValue();
110   - mores.value = false;
111   - };
112   -
113   - const getDateRangeValue = ref<any>({});
114   -
115   - const onHandleModal = () => {
116   - const values = dateRangeSelectRef.value?.getValue();
117   - getDateRangeValue.value = values;
118   - closeModal();
119 83 };
120 84
121 85 onMounted(() => {
... ... @@ -177,13 +141,13 @@
177 141 selectOptions.value.forEach((ele) => {
178 142 ele.disabled = false;
179 143 tableArray.content.forEach((element) => {
180   - if (element.key === 'scope' || element.key === 'fixed_date') {
  144 + if (element.key === 'scope') {
181 145 element.editDisabled = false;
182 146 } else {
183 147 element.value = '';
184 148 element.editDisabled = true;
185 149 }
186   - if (element.key === ele.value && element.key !== 'scope' && element.key !== 'fixed_date') {
  150 + if (element.key === ele.value && element.key !== 'scope') {
187 151 ele.disabled = true;
188 152 }
189 153 });
... ... @@ -203,17 +167,6 @@
203 167 required: it.required,
204 168 };
205 169 });
206   - // assemblyData = assemblyData.filter((item) => item.key !== 'agg,interval');
207   - // if (getDateRangeValue.value) {
208   - // const joinStr = Object.keys(getDateRangeValue.value)?.join(',');
209   - // if (mores.value) {
210   - // assemblyData.push({
211   - // key: joinStr,
212   - // value: '',
213   - // mores: mores.value,
214   - // });
215   - // }
216   - // }
217 170 return assemblyData;
218 171 };
219 172
... ... @@ -233,10 +186,6 @@
233 186 const findIsDateRange = data.find((it) => it?.mores === true);
234 187 if (findIsDateRange?.mores) {
235 188 mores.value = findIsDateRange?.mores;
236   - getDateRangeValue.value = {
237   - agg: 'agg',
238   - interval: 'interval',
239   - };
240 189 } else {
241 190 assemblyData = assemblyData.filter((item) => item?.mores == false || !item?.mores);
242 191 }
... ...
... ... @@ -13,7 +13,10 @@
13 13 />
14 14 </TabPane>
15 15 <TabPane
16   - v-if="method !== '2' && requestTypeAndUrl?.requestHttpType !== 'GET'"
  16 + v-if="
  17 + method !== RequestMethodTypeEnum.WEBSOCKET &&
  18 + requestTypeAndUrl?.requestHttpType !== RequestHttpTypeEnum.GET
  19 + "
17 20 class="tab-pane"
18 21 forceRender
19 22 key="Body"
... ... @@ -21,7 +24,7 @@
21 24 >
22 25 <Body ref="bodyRef" @resetValue="handleResetValue" />
23 26 <BodyTest
24   - v-if="bodyType !== 'none'"
  27 + v-if="bodyType !== RequestBodyTypeEnum.NONE"
25 28 @testBodyInterface="handleTestBodyInterface"
26 29 @closeTest="onCloseTest"
27 30 ref="testBodyRequestRef"
... ... @@ -29,7 +32,13 @@
29 32 :data="dataMap.mapBodyObj"
30 33 />
31 34 </TabPane>
32   - <TabPane v-if="method !== '2'" class="tab-pane" forceRender key="Header" tab="Header">
  35 + <TabPane
  36 + v-if="method !== RequestMethodTypeEnum.WEBSOCKET"
  37 + class="tab-pane"
  38 + forceRender
  39 + key="Header"
  40 + tab="Header"
  41 + >
33 42 <HeaderTable ref="editHeaderCellTableRef" :method="method" />
34 43 <HeaderTest
35 44 @testHeaderInterface="handleTestHeaderInterface"
... ... @@ -53,6 +62,12 @@
53 62 import { isEmpty } from '/@/utils/is';
54 63 import { useUtils } from '../../hooks/useUtils';
55 64 import ExcuteTest from '../TestInterface/components/excuteTest.vue';
  65 + import {
  66 + RequestMethodTypeEnum,
  67 + RequestHttpTypeEnum,
  68 + RequestBodyTypeEnum,
  69 + RequestOriginTypeEnum,
  70 + } from '../../config/enum';
56 71
57 72 const props = defineProps({
58 73 method: {
... ... @@ -127,18 +142,18 @@
127 142
128 143 const handleEmitExcute = () => {
129 144 let apiGetUrl = '';
130   - if (props?.method === '2') {
131   - if (props?.originUrlType === 'server_url') {
  145 + if (props?.method === RequestMethodTypeEnum.WEBSOCKET) {
  146 + if (props?.originUrlType === RequestOriginTypeEnum.SERVER_URL) {
132 147 const pathUrl = window.location.host;
133 148 const protocol = window.location.protocol;
134 149 apiGetUrl = `${
135   - protocol === 'http' ? 'ws:' : protocol === 'https' ? 'wss:' : 'ws:'
  150 + protocol === 'http:' ? 'ws:' : protocol === 'https:' ? 'wss:' : 'ws:'
136 151 }//${pathUrl}${props?.requestTypeAndUrl?.requestUrl}`;
137 152 } else {
138 153 apiGetUrl = `${props?.requestOriginUrl}${props?.requestTypeAndUrl?.requestUrl}`;
139 154 }
140 155 } else {
141   - if (props?.originUrlType === 'server_url') {
  156 + if (props?.originUrlType === RequestOriginTypeEnum.SERVER_URL) {
142 157 const pathUrl = window.location.host;
143 158 const protocol = window.location.protocol;
144 159 apiGetUrl = `${protocol}//${pathUrl}${props?.requestTypeAndUrl?.requestUrl}`;
... ...
1 1 ///公共接口管理所需枚举值
2 2
3 3 /**
4   - * @description: 请求体类型
  4 + * @description: 请求体类型枚举
5 5 */
6 6 export enum RequestBodyTypeEnum {
7 7 NONE = 'none',
... ... @@ -12,7 +12,7 @@ export enum RequestBodyTypeEnum {
12 12 }
13 13
14 14 /**
15   - * @description: 请求方式
  15 + * @description: 请求方式枚举
16 16 */
17 17 export enum RequestMethodTypeEnum {
18 18 COMMOM = '0',
... ... @@ -21,9 +21,17 @@ export enum RequestMethodTypeEnum {
21 21 }
22 22
23 23 /**
24   - * @description: 源地址类型
  24 + * @description: 源地址类型枚举
25 25 */
26 26 export enum RequestOriginTypeEnum {
27 27 CUSTOM_URL = 'custom_url',
28 28 SERVER_URL = 'server_url',
29 29 }
  30 +
  31 +/**
  32 + * @description: 请求类型枚举
  33 + */
  34 +export enum RequestHttpTypeEnum {
  35 + GET = 'GET',
  36 + POST = 'POST',
  37 +}
... ...
... ... @@ -14,8 +14,12 @@
14 14 watchRequestHttpTypeAndUrl(model['requestHttpTypeAndUrl'])
15 15 }}</p>
16 16 <SimpleRequest
  17 + v-if="
  18 + [RequestMethodTypeEnum.COMMOM, RequestMethodTypeEnum.WEBSOCKET].includes(
  19 + model['requestContentType']
  20 + )
  21 + "
17 22 ref="simpleRequestRef"
18   - v-if="model['requestContentType'] === '0' || model['requestContentType'] === '2'"
19 23 :requestTypeAndUrl="model['requestHttpTypeAndUrl']"
20 24 :method="model['requestContentType']"
21 25 :requestOriginUrl="model['requestOriginUrl']"
... ... @@ -27,19 +31,15 @@
27 31 <div style="margin: auto 7.5rem">
28 32 <TestSql
29 33 ref="testSqlRef"
30   - v-if="model['requestContentType'] === '1'"
  34 + v-if="[RequestMethodTypeEnum.SQL].includes(model['requestContentType'])"
31 35 :method="model['requestContentType']"
32 36 />
33 37 </div>
34 38 </template>
35 39 <template #slotFillAddress="{ model }">
36 40 <div>
37   - <template v-if="model['originUrlType'] === 'custom_url'">
38   - <Tag
39   - v-if="model['requestOriginUrl']"
40   - color="blue"
41   - style="width: 35vw; white-space: normal; height: auto"
42   - >
  41 + <template v-if="[RequestOriginTypeEnum.CUSTOM_URL].includes(model['originUrlType'])">
  42 + <Tag v-if="model['requestOriginUrl']" color="blue" class="tag-text">
43 43 {{ ` ${model['requestOriginUrl'] + model['requestHttpTypeAndUrl']?.requestUrl}` }}
44 44 </Tag>
45 45 </template>
... ... @@ -48,9 +48,9 @@
48 48 <template #slotServerAddress="{ model }">
49 49 <div>
50 50 <Tag
51   - v-if="model['originUrlType'] === 'server_url'"
  51 + v-if="[RequestOriginTypeEnum.SERVER_URL].includes(model['originUrlType'])"
52 52 color="blue"
53   - style="width: 35vw; white-space: normal; height: auto"
  53 + class="tag-text"
54 54 >
55 55 {{
56 56 ` ${`${templateFillAddress(model['requestContentType'], model['originUrlType'])}${
... ... @@ -76,12 +76,12 @@
76 76 saveDataViewInterface,
77 77 updateDataViewInterface,
78 78 } from '/@/api/bigscreen/center/bigscreenCenter';
79   -
80 79 import { useMessage } from '/@/hooks/web/useMessage';
81 80 import { useUtils } from './hooks/useUtils';
82 81 import { Tag } from 'ant-design-vue';
  82 + import { RequestMethodTypeEnum, RequestOriginTypeEnum } from './config/enum';
83 83
84   - const { resetReqHttpType, isServerUrl } = useUtils();
  84 + const { resetReqHttpType, isServerUrl, resetUpdateSchema } = useUtils();
85 85
86 86 const emits = defineEmits(['success', 'register']);
87 87
... ... @@ -136,12 +136,7 @@
136 136 setFieldsValue(resetReqHttpType);
137 137 const title = `${!data.isUpdate ? '新增' : '修改'}公共接口`;
138 138 setDrawerProps({ title });
139   - updateSchema({
140   - field: 'requestHttpTypeAndUrl',
141   - componentProps: {
142   - type: '0',
143   - },
144   - });
  139 + updateSchema(resetUpdateSchema);
145 140 isUpdate.value = data.isUpdate;
146 141 !isUpdate.value ? (putId.value = '') : (putId.value = data.record.id);
147 142 simpleRequestRef.value?.resetValue() && testSqlRef.value?.resetValue();
... ... @@ -174,7 +169,7 @@
174 169 const values = await validate();
175 170 if (!values) return;
176 171 const isRequestHttpTypeAndUrlEmpty = values?.requestHttpTypeAndUrl;
177   - if (values.requestContentType === '0') {
  172 + if (values.requestContentType === RequestMethodTypeEnum.COMMOM) {
178 173 if (
179 174 !Reflect.get(isRequestHttpTypeAndUrlEmpty, 'requestHttpType') ||
180 175 !Reflect.get(isRequestHttpTypeAndUrlEmpty, 'requestUrl')
... ... @@ -182,7 +177,7 @@
182 177 createMessage.error('请填写请求类型&地址');
183 178 throw Error('请填写请求类型&地址');
184 179 }
185   - } else if (values.requestContentType === '2') {
  180 + } else if (values.requestContentType === RequestMethodTypeEnum.WEBSOCKET) {
186 181 if (!Reflect.get(isRequestHttpTypeAndUrlEmpty, 'requestUrl')) {
187 182 createMessage.error('请填写请求类型&地址');
188 183 throw Error('请填写请求类型&地址');
... ... @@ -190,7 +185,9 @@
190 185 }
191 186 const Objects = simpleRequestRef.value?.getValue(true);
192 187 const requestOriginUrl =
193   - values['originUrlType'] === 'server_url' ? 'localhost' : values['requestOriginUrl'];
  188 + values['originUrlType'] === RequestOriginTypeEnum.SERVER_URL
  189 + ? 'localhost'
  190 + : values['requestOriginUrl'];
194 191 const data = {
195 192 ...values,
196 193 id: !putId.value ? null : putId.value,
... ... @@ -205,7 +202,8 @@
205 202 requestUrl: values['requestHttpTypeAndUrl']?.requestUrl,
206 203 };
207 204 Reflect.deleteProperty(data, 'requestHttpTypeAndUrl');
208   - if (values['requestContentType'] === '2') Reflect.deleteProperty(data, 'requestHttpType');
  205 + if (values['requestContentType'] === RequestMethodTypeEnum.WEBSOCKET)
  206 + Reflect.deleteProperty(data, 'requestHttpType');
209 207 !putId.value ? await saveDataViewInterface(data) : await updateDataViewInterface(data);
210 208 emits('success');
211 209 closeDrawer();
... ... @@ -215,3 +213,11 @@
215 213 }
216 214 };
217 215 </script>
  216 +
  217 +<style lang="less" scoped>
  218 + .tag-text {
  219 + width: 35vw;
  220 + white-space: normal;
  221 + height: auto;
  222 + }
  223 +</style>
... ...