cnhis-design-vue 3.1.47 → 3.1.48-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/README.md +87 -87
  2. package/es/components/fabric-chart/src/hooks/surgicalAnesthesia/useCenter.js +1 -1
  3. package/es/components/iho-table/src/plugins/index.js +1 -1
  4. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/separateRendererPlugin/index.js +1 -1
  5. package/es/components/iho-table/src/plugins/tooltipPlugin.d.ts +1 -0
  6. package/es/components/iho-table/src/plugins/tooltipPlugin.js +1 -0
  7. package/es/components/index.css +1 -1
  8. package/es/components/scale-view/index.d.ts +68 -18
  9. package/es/components/scale-view/src/ScaleView.vue.d.ts +68 -18
  10. package/es/components/scale-view/src/ScaleView.vue2.js +1 -1
  11. package/es/components/scale-view/src/components/EvaluateCountdown.vue.d.ts +53 -0
  12. package/es/components/scale-view/src/components/EvaluateCountdown.vue2.js +1 -1
  13. package/es/components/scale-view/src/components/EvaluatePage.vue.d.ts +1 -1
  14. package/es/components/scale-view/src/components/formitem/r-checkbox.js +1 -1
  15. package/es/components/scale-view/src/components/formitem/r-datetime.js +1 -1
  16. package/es/components/scale-view/src/components/formitem/r-radio.js +1 -1
  17. package/es/components/scale-view/src/hooks/scaleview-computed.d.ts +5 -0
  18. package/es/components/scale-view/src/hooks/scaleview-computed.js +1 -1
  19. package/es/components/scale-view/src/hooks/scaleview-init.js +1 -1
  20. package/es/components/scale-view/src/hooks/scaleview-methods.d.ts +8 -0
  21. package/es/components/scale-view/src/hooks/scaleview-methods.js +1 -0
  22. package/es/components/scale-view/src/hooks/scaleview-props.d.ts +102 -0
  23. package/es/components/scale-view/src/hooks/scaleview-props.js +1 -0
  24. package/es/components/scale-view/src/hooks/scaleview-state.d.ts +1 -0
  25. package/es/components/scale-view/src/hooks/scaleview-state.js +1 -1
  26. package/es/components/scale-view/src/hooks/scaleview-submit.d.ts +4 -0
  27. package/es/components/scale-view/src/hooks/scaleview-submit.js +1 -1
  28. package/es/components/scale-view/src/utils/judge-types.d.ts +8 -0
  29. package/es/components/scale-view/src/utils/judge-types.js +1 -1
  30. package/es/components/scale-view/style/index.css +1 -1
  31. package/es/components/select-label/src/LabelFormContent.vue2.js +1 -1
  32. package/es/components/select-person/src/SearchMultiple.vue.d.ts +6 -0
  33. package/es/components/table-export-field/src/components/ExportModal.vue.d.ts +0 -3
  34. package/es/components/table-filter/src/hooks/useAdvanced.js +1 -1
  35. package/es/env.d.ts +25 -25
  36. package/es/shared/assets/img/failure.png.js +1 -1
  37. package/es/shared/assets/img/no-permission.png.js +1 -1
  38. package/es/shared/assets/img/nodata.png.js +1 -1
  39. package/es/shared/assets/img/notfound.png.js +1 -1
  40. package/es/shared/assets/img/qr.png.js +1 -1
  41. package/es/shared/assets/img/success.png.js +1 -1
  42. package/es/shared/assets/img/video.png.js +1 -1
  43. package/es/shared/assets/img/video_default_cover.png.js +1 -1
  44. package/es/shared/assets/img/xb_big.png.js +1 -1
  45. package/es/shared/assets/img/xb_small.png.js +1 -1
  46. package/es/shared/hooks/useDateTime.js +1 -1
  47. package/es/shared/package.json.js +1 -1
  48. package/package.json +2 -2
  49. package/es/components/bpmn-workflow/src/BpmnWorkflow.d.ts +0 -0
  50. package/es/components/bpmn-workflow/types/BpmnViewer.d.ts +0 -1
  51. package/es/components/bpmn-workflow/types/ModelingModule.d.ts +0 -1
  52. package/es/components/bpmn-workflow/types/MoveCanvasModule.d.ts +0 -1
  53. package/es/shared/components/VueDraggable/src/vuedraggable.d.ts +0 -86
  54. package/es/shared/utils/fabricjs/index.d.ts +0 -6823
  55. package/es/shared/utils/tapable/index.d.ts +0 -139
  56. package/es/shared/utils/tapableLess.d.ts +0 -28
  57. package/es/shared/utils/tapableLess.js +0 -1
@@ -132,6 +132,7 @@ declare const CScaleView: SFCWithInstall<import("vue").DefineComponent<{
132
132
  hasFrontAddress: boolean;
133
133
  choiceComObj: {};
134
134
  evatipMap: {};
135
+ evaResultObj: {};
135
136
  };
136
137
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
137
138
  guageData: {
@@ -242,8 +243,6 @@ declare const CScaleView: SFCWithInstall<import("vue").DefineComponent<{
242
243
  }>>;
243
244
  state: any;
244
245
  emit: (event: "onCloseSetting" | "submitNoRequest" | "onSubmit" | "startWriteScale", ...args: any[]) => void;
245
- dialog: import("naive-ui").DialogApi;
246
- message: import("naive-ui").MessageApi;
247
246
  countdownDom: any;
248
247
  formRef: import("vue").Ref<{
249
248
  validate: import("naive-ui/es/form/src/interface").FormValidate;
@@ -281,6 +280,7 @@ declare const CScaleView: SFCWithInstall<import("vue").DefineComponent<{
281
280
  evaluateResultSetting: any;
282
281
  isFinished: any;
283
282
  maxScore: any;
283
+ skipCover: any;
284
284
  }>;
285
285
  evaluateCountdownProps: import("vue").ComputedRef<{
286
286
  formArray: any;
@@ -290,34 +290,31 @@ declare const CScaleView: SFCWithInstall<import("vue").DefineComponent<{
290
290
  isFinished: any;
291
291
  currentTime: any;
292
292
  showEvaluateCountdown: any;
293
+ isEvaluetaResSituation: any;
294
+ evaResultObj: any;
293
295
  }>;
294
- skipCover: import("vue").ComputedRef<any>;
295
- scaleEdit: import("vue").ComputedRef<boolean>;
296
+ isEvaluetaResSituation: import("vue").ComputedRef<any>;
297
+ disableEdit: import("vue").ComputedRef<any>;
296
298
  initForm: (data: any) => void;
297
299
  submitMethod: () => {
298
300
  params: any;
299
301
  hasCallbackItem: any;
300
302
  isCallback: boolean;
301
303
  };
304
+ onSubmitData: () => void;
305
+ onSubmitForm: () => Promise<unknown>;
306
+ handleScoreJson: () => {};
302
307
  nextLogicEvent: (choiceValue: any, formItem: any, formArray?: any[], isInit?: boolean | undefined) => void;
303
308
  handleDynamicDataRelation: (list: any[], formItem: any, formArray: any[]) => void;
304
- handleQuery: () => void;
305
- init: (configData: any) => void;
306
- writeGuage: (showCountdown: boolean) => void;
307
- closeEvaluateCountdown: () => void;
308
- showEvaTipModal: (item: any) => Promise<void>;
309
- evatipConfirm: (str: any) => void;
310
309
  scaleChange: (val: any, item: any, config?: any) => void;
311
310
  labelChange: (labelList: any, item: any) => void;
312
311
  vodFileList: (list: any, item: any) => void;
313
- handleGetLabelSubmit: (labelSelectedList: any[]) => {
314
- labelStr: string;
315
- labels: any[];
316
- };
317
- onSubmitData: () => void;
312
+ writeGuage: (showCountdown: boolean) => void;
313
+ closeEvaluateCountdown: () => void;
314
+ showEvaTipModal: (item: any) => Promise<void>;
315
+ handleQuery: () => void;
316
+ init: (configData: any) => void;
318
317
  onSubmitDataDebounce: (this: unknown, ...args: any[]) => any;
319
- confirmSubmit: (message: any) => void;
320
- onSubmitForm: () => Promise<unknown>;
321
318
  cancel: () => void;
322
319
  getScaleData: () => any;
323
320
  isCollection: (e: string) => boolean;
@@ -393,10 +390,27 @@ declare const CScaleView: SFCWithInstall<import("vue").DefineComponent<{
393
390
  type: BooleanConstructor;
394
391
  default: boolean;
395
392
  };
393
+ isEvaluetaResSituation: {
394
+ type: BooleanConstructor;
395
+ default: boolean;
396
+ };
397
+ evaResultObj: {
398
+ type: ObjectConstructor;
399
+ default: () => {};
400
+ };
401
+ skipCover: {
402
+ type: BooleanConstructor;
403
+ default: boolean;
404
+ };
396
405
  }, {
397
406
  state: {
398
407
  source: string;
399
408
  setAnswered: number;
409
+ unfold: boolean;
410
+ answeredScore: number;
411
+ totalScore: number;
412
+ answeredRes: string;
413
+ answeredColor: string;
400
414
  };
401
415
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
402
416
  formArray: {
@@ -422,9 +436,25 @@ declare const CScaleView: SFCWithInstall<import("vue").DefineComponent<{
422
436
  type: BooleanConstructor;
423
437
  default: boolean;
424
438
  };
439
+ isEvaluetaResSituation: {
440
+ type: BooleanConstructor;
441
+ default: boolean;
442
+ };
443
+ evaResultObj: {
444
+ type: ObjectConstructor;
445
+ default: () => {};
446
+ };
447
+ skipCover: {
448
+ type: BooleanConstructor;
449
+ default: boolean;
450
+ };
425
451
  }>> & {
426
452
  onCloseEvaluateCountdown?: ((...args: any[]) => any) | undefined;
427
453
  }>>;
454
+ calcShowEvaluateCountdown: import("vue").ComputedRef<boolean>;
455
+ toggleIcon: import("vue").ComputedRef<import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>>;
456
+ hasEva: import("vue").ComputedRef<unknown>;
457
+ showResSituationDetail: import("vue").ComputedRef<boolean>;
428
458
  emit: (event: "closeEvaluateCountdown", ...args: any[]) => void;
429
459
  evaluateState: {
430
460
  totalLen: number;
@@ -439,13 +469,18 @@ declare const CScaleView: SFCWithInstall<import("vue").DefineComponent<{
439
469
  getTotalLen: () => void;
440
470
  countdown: (startTime: any) => void;
441
471
  clearTimer: () => void;
472
+ handleTotalScore: () => number | undefined;
473
+ resetAnsweredRes: () => void;
474
+ answeredResCalc: (val: any) => void;
442
475
  init: () => void;
443
476
  checkType: (val: any) => string;
477
+ toggleFold: () => void;
444
478
  diffAnswered: (form: any) => void;
445
479
  getCountdownObj: () => {
446
480
  setAnswered: number;
447
481
  totalLen: number;
448
482
  };
483
+ NIcon: any;
449
484
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "closeEvaluateCountdown"[], "closeEvaluateCountdown", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
450
485
  formArray: {
451
486
  type: ArrayConstructor;
@@ -470,15 +505,30 @@ declare const CScaleView: SFCWithInstall<import("vue").DefineComponent<{
470
505
  type: BooleanConstructor;
471
506
  default: boolean;
472
507
  };
508
+ isEvaluetaResSituation: {
509
+ type: BooleanConstructor;
510
+ default: boolean;
511
+ };
512
+ evaResultObj: {
513
+ type: ObjectConstructor;
514
+ default: () => {};
515
+ };
516
+ skipCover: {
517
+ type: BooleanConstructor;
518
+ default: boolean;
519
+ };
473
520
  }>> & {
474
521
  onCloseEvaluateCountdown?: ((...args: any[]) => any) | undefined;
475
522
  }, {
523
+ skipCover: boolean;
524
+ isEvaluetaResSituation: boolean;
476
525
  formArray: unknown[];
477
526
  evaluateResultConfig: Record<string, any>;
478
527
  evaluateResultSetting: Record<string, any>;
479
528
  form: Record<string, any>;
480
529
  currentTime: number;
481
530
  showEvaluateCountdown: boolean;
531
+ evaResultObj: Record<string, any>;
482
532
  }>;
483
533
  EvaluatePage: import("vue").DefineComponent<{
484
534
  formArray: {
@@ -558,7 +608,7 @@ declare const CScaleView: SFCWithInstall<import("vue").DefineComponent<{
558
608
  handleEvaluateParams: () => void;
559
609
  writeGuage: () => void;
560
610
  NButton: any;
561
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("closeEvaluateCountdown" | "writeGuage")[], "closeEvaluateCountdown" | "writeGuage", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
611
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("closeEvaluateCountdown" | "writeGuage")[], "writeGuage" | "closeEvaluateCountdown", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
562
612
  formArray: {
563
613
  type: ArrayConstructor;
564
614
  default: () => never[];
@@ -130,6 +130,7 @@ declare const _default: import("vue").DefineComponent<{
130
130
  hasFrontAddress: boolean;
131
131
  choiceComObj: {};
132
132
  evatipMap: {};
133
+ evaResultObj: {};
133
134
  };
134
135
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
135
136
  guageData: {
@@ -240,8 +241,6 @@ declare const _default: import("vue").DefineComponent<{
240
241
  }>>;
241
242
  state: any;
242
243
  emit: (event: "onCloseSetting" | "submitNoRequest" | "onSubmit" | "startWriteScale", ...args: any[]) => void;
243
- dialog: import("naive-ui").DialogApi;
244
- message: import("naive-ui").MessageApi;
245
244
  countdownDom: any;
246
245
  formRef: import("vue").Ref<{
247
246
  validate: import("naive-ui/es/form/src/interface").FormValidate;
@@ -279,6 +278,7 @@ declare const _default: import("vue").DefineComponent<{
279
278
  evaluateResultSetting: any;
280
279
  isFinished: any;
281
280
  maxScore: any;
281
+ skipCover: any;
282
282
  }>;
283
283
  evaluateCountdownProps: import("vue").ComputedRef<{
284
284
  formArray: any;
@@ -288,34 +288,31 @@ declare const _default: import("vue").DefineComponent<{
288
288
  isFinished: any;
289
289
  currentTime: any;
290
290
  showEvaluateCountdown: any;
291
+ isEvaluetaResSituation: any;
292
+ evaResultObj: any;
291
293
  }>;
292
- skipCover: import("vue").ComputedRef<any>;
293
- scaleEdit: import("vue").ComputedRef<boolean>;
294
+ isEvaluetaResSituation: import("vue").ComputedRef<any>;
295
+ disableEdit: import("vue").ComputedRef<any>;
294
296
  initForm: (data: any) => void;
295
297
  submitMethod: () => {
296
298
  params: any;
297
299
  hasCallbackItem: any;
298
300
  isCallback: boolean;
299
301
  };
302
+ onSubmitData: () => void;
303
+ onSubmitForm: () => Promise<unknown>;
304
+ handleScoreJson: () => {};
300
305
  nextLogicEvent: (choiceValue: any, formItem: any, formArray?: any[], isInit?: boolean | undefined) => void;
301
306
  handleDynamicDataRelation: (list: any[], formItem: any, formArray: any[]) => void;
302
- handleQuery: () => void;
303
- init: (configData: any) => void;
304
- writeGuage: (showCountdown: boolean) => void;
305
- closeEvaluateCountdown: () => void;
306
- showEvaTipModal: (item: any) => Promise<void>;
307
- evatipConfirm: (str: any) => void;
308
307
  scaleChange: (val: any, item: any, config?: any) => void;
309
308
  labelChange: (labelList: any, item: any) => void;
310
309
  vodFileList: (list: any, item: any) => void;
311
- handleGetLabelSubmit: (labelSelectedList: any[]) => {
312
- labelStr: string;
313
- labels: any[];
314
- };
315
- onSubmitData: () => void;
310
+ writeGuage: (showCountdown: boolean) => void;
311
+ closeEvaluateCountdown: () => void;
312
+ showEvaTipModal: (item: any) => Promise<void>;
313
+ handleQuery: () => void;
314
+ init: (configData: any) => void;
316
315
  onSubmitDataDebounce: (this: unknown, ...args: any[]) => any;
317
- confirmSubmit: (message: any) => void;
318
- onSubmitForm: () => Promise<unknown>;
319
316
  cancel: () => void;
320
317
  getScaleData: () => any;
321
318
  isCollection: (e: string) => boolean;
@@ -391,10 +388,27 @@ declare const _default: import("vue").DefineComponent<{
391
388
  type: BooleanConstructor;
392
389
  default: boolean;
393
390
  };
391
+ isEvaluetaResSituation: {
392
+ type: BooleanConstructor;
393
+ default: boolean;
394
+ };
395
+ evaResultObj: {
396
+ type: ObjectConstructor;
397
+ default: () => {};
398
+ };
399
+ skipCover: {
400
+ type: BooleanConstructor;
401
+ default: boolean;
402
+ };
394
403
  }, {
395
404
  state: {
396
405
  source: string;
397
406
  setAnswered: number;
407
+ unfold: boolean;
408
+ answeredScore: number;
409
+ totalScore: number;
410
+ answeredRes: string;
411
+ answeredColor: string;
398
412
  };
399
413
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
400
414
  formArray: {
@@ -420,9 +434,25 @@ declare const _default: import("vue").DefineComponent<{
420
434
  type: BooleanConstructor;
421
435
  default: boolean;
422
436
  };
437
+ isEvaluetaResSituation: {
438
+ type: BooleanConstructor;
439
+ default: boolean;
440
+ };
441
+ evaResultObj: {
442
+ type: ObjectConstructor;
443
+ default: () => {};
444
+ };
445
+ skipCover: {
446
+ type: BooleanConstructor;
447
+ default: boolean;
448
+ };
423
449
  }>> & {
424
450
  onCloseEvaluateCountdown?: ((...args: any[]) => any) | undefined;
425
451
  }>>;
452
+ calcShowEvaluateCountdown: import("vue").ComputedRef<boolean>;
453
+ toggleIcon: import("vue").ComputedRef<import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>>;
454
+ hasEva: import("vue").ComputedRef<unknown>;
455
+ showResSituationDetail: import("vue").ComputedRef<boolean>;
426
456
  emit: (event: "closeEvaluateCountdown", ...args: any[]) => void;
427
457
  evaluateState: {
428
458
  totalLen: number;
@@ -437,13 +467,18 @@ declare const _default: import("vue").DefineComponent<{
437
467
  getTotalLen: () => void;
438
468
  countdown: (startTime: any) => void;
439
469
  clearTimer: () => void;
470
+ handleTotalScore: () => number | undefined;
471
+ resetAnsweredRes: () => void;
472
+ answeredResCalc: (val: any) => void;
440
473
  init: () => void;
441
474
  checkType: (val: any) => string;
475
+ toggleFold: () => void;
442
476
  diffAnswered: (form: any) => void;
443
477
  getCountdownObj: () => {
444
478
  setAnswered: number;
445
479
  totalLen: number;
446
480
  };
481
+ NIcon: any;
447
482
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "closeEvaluateCountdown"[], "closeEvaluateCountdown", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
448
483
  formArray: {
449
484
  type: ArrayConstructor;
@@ -468,15 +503,30 @@ declare const _default: import("vue").DefineComponent<{
468
503
  type: BooleanConstructor;
469
504
  default: boolean;
470
505
  };
506
+ isEvaluetaResSituation: {
507
+ type: BooleanConstructor;
508
+ default: boolean;
509
+ };
510
+ evaResultObj: {
511
+ type: ObjectConstructor;
512
+ default: () => {};
513
+ };
514
+ skipCover: {
515
+ type: BooleanConstructor;
516
+ default: boolean;
517
+ };
471
518
  }>> & {
472
519
  onCloseEvaluateCountdown?: ((...args: any[]) => any) | undefined;
473
520
  }, {
521
+ skipCover: boolean;
522
+ isEvaluetaResSituation: boolean;
474
523
  formArray: unknown[];
475
524
  evaluateResultConfig: Record<string, any>;
476
525
  evaluateResultSetting: Record<string, any>;
477
526
  form: Record<string, any>;
478
527
  currentTime: number;
479
528
  showEvaluateCountdown: boolean;
529
+ evaResultObj: Record<string, any>;
480
530
  }>;
481
531
  EvaluatePage: import("vue").DefineComponent<{
482
532
  formArray: {
@@ -556,7 +606,7 @@ declare const _default: import("vue").DefineComponent<{
556
606
  handleEvaluateParams: () => void;
557
607
  writeGuage: () => void;
558
608
  NButton: any;
559
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("closeEvaluateCountdown" | "writeGuage")[], "closeEvaluateCountdown" | "writeGuage", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
609
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("closeEvaluateCountdown" | "writeGuage")[], "writeGuage" | "closeEvaluateCountdown", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
560
610
  formArray: {
561
611
  type: ArrayConstructor;
562
612
  default: () => never[];
@@ -1 +1 @@
1
- import{defineComponent as e,reactive as t,ref as a,watch as o,nextTick as i,openBlock as l,createElementBlock as n,normalizeClass as s,unref as r,createCommentVNode as u,Fragment as c,createBlock as p,mergeProps as d,createElementVNode as m,normalizeStyle as v,createVNode as f,withCtx as g,renderList as y,toDisplayString as b,createTextVNode as k,resolveDynamicComponent as C,h as S}from"vue";import h from"./hooks/use-noData.js";import{getScaleViewState as w}from"./hooks/scaleview-state.js";import{ScaleViewComputed as E}from"./hooks/scaleview-computed.js";import{ScaleViewInit as O}from"./hooks/scaleview-init.js";import{ScaleViewSubmit as j}from"./hooks/scaleview-submit.js";import{handleQueryParams as A,isCollection as _,isEvaluation as T}from"./utils/judge-types.js";import{useEvent as L}from"./hooks/use-event.js";import"xe-utils";import"moment";import P from"../../../shared/utils/vexutilsExpand.js";import D from"./components/NoData.vue.js";import x from"./components/EvaluateCountdown.vue.js";import F from"./components/EvaluatePage.vue.js";import B from"./components/AnswerParse.vue.js";import N from"./components/ScaleScore.js";import{useDialog as I,useMessage as q,NForm as M,NFormItem as R,NButton as K}from"naive-ui";const V=["innerHTML"],H={key:0,class:"required-text"},U={key:1,class:"evalute-label"},W=["onClick"],J=m("i",{class:"scale-view-iconfont icon-scale-view-dengpao"},null,-1),Y={key:1,class:"footer"};var X=e({__name:"ScaleView",props:{guageData:{type:Object,default:()=>({})},styleSetting:{type:Object,default:()=>({})},ids:{type:Object,default:()=>({guage_id:"",db_id:void 0})},params:{default:()=>({}),type:Object},noBtn:{type:[Boolean,String,Number],default:!1},hideBtn:{type:[Boolean,String,Number],default:!1},isLock:{type:[Boolean,String,Number],default:!1},type:{type:String,default:""},openType:{type:String,default:""},scaleApiConfig:{type:Object,default:()=>({})},getSelectOptions:{type:Function,default:()=>Promise.resolve([])},getSearchOptions:{type:Function,default:()=>Promise.resolve([])},getCascadeOptions:{type:Function,default:()=>Promise.resolve([])},getLabelList:{type:Function,default:()=>Promise.resolve([])},deleteLabel:{type:Function,default:()=>Promise.resolve({status:!0})},saveLabelItem:{type:Function,default:()=>Promise.resolve({status:!0})},uploadPictureUrl:{type:String,default:""},uploadFileUrl:{type:String,default:""},ak:{type:String,default:"KP3BZ-OAC3W-PY6RY-OJ6DV-JYKN3-H6F72"},sourceType:{type:String,default:""},getChunkUploadConfig:{type:Function,default:()=>Promise.resolve({})},fontSizeObj:{type:Object,default:()=>({large:1.25,medium:1.1,small:1,extrasmall:.9})}},emits:["onCloseSetting","submitNoRequest","onSubmit","startWriteScale"],setup(e,{expose:X,emit:z}){const G=e,{ScaleViewState:Q}=w(),Z=t(Q),$=I(),ee=q(),te=a(null),ae=a(null),{noDataState:oe,setNoData:ie,resetNodata:le}=h(),ne=A(),{showEvatip:se,isFormBoldOpen:re,scaleStyle:ue,handlePageClass:ce,isShowItem:pe,handleShowQuestionNumber:de,hasScore:me,isPreviewScale:ve,showEvaluateEntry:fe,showEvaluateCoundownPage:ge,showSaveBtn:ye,showEvaluateLabel:be,showAnswerParse:ke,propsConfig:Ce,evaluatePageProps:Se,evaluateCountdownProps:he,skipCover:we,scaleEdit:Ee}=E(G,Z,{query:ne}),{initForm:Oe}=O(G,Z,z,{query:ne}),{submitMethod:je}=j(G,Z,z,{query:ne}),{nextLogicEvent:Ae,handleDynamicDataRelation:_e}=L(G,Z);(()=>{let{id:e}=ne;e&&(Z.shareId=e)})();const Te=e=>{try{le(),Oe(e)}catch(e){console.log(e,"--error"),Z.spinning=!1,Z.hasFrontAddress=!1,ie(!0,null==e?void 0:e.resultMsg,null==e?void 0:e.result)}};o((()=>G.ids),((e,t)=>{t?e.guage_id&&e.guage_id!=t.guage_id&&Te(e):e.guage_id&&Te(e)}),{immediate:!0}),o((()=>G.guageData),(e=>{if(!e||!Object.keys(e||{}).length)return;Z.form={},Z.formArray=[];const t=JSON.parse(JSON.stringify(e));i((()=>{Oe(t)}))}),{immediate:!0});const Le=e=>{Z.showEvaluateSettingWrap=!1,Z.showEvaluateCountdown=!!e,z("startWriteScale")},Pe=()=>{console.log("----closeEvaluateCountdown"),Z.showEvaluateCountdown=!1,ve.value||(Z.banSubmit=!0,je(),$.warning({title:"温馨提示",content:"测评时间到了,结束测评!",maskClosable:!1,positiveText:"确定",onPositiveClick:()=>({})}))},De=e=>{$.warning({title:"提示",content:()=>S("div",{class:"evatip-container"},[S("span","答案解析:"),S("p",e)]),class:"c-evatip-dialog-wrap",showIcon:!1,positiveText:"确定",negativeText:"关闭",maskClosable:!1,onPositiveClick(){},onNegativeClick(){}})},xe=(e,t,a)=>{let{choiceObj:o,isSetObj:i}=a||{};switch(t.type.includes("SELECT")||(Z.form[t.val_key]=e),t.type){case"SELECT":case"EVALUATE_SELECT":{let{value:a,list:o=[]}=e;Z.form[t.val_key]=a,Ae(e,t,Z.formArray),_e(o,t,Z.formArray)}break;case"RADIO_BLOCK":case"CHECKBOX_BLOCK":i&&(Z.choiceComObj[t.val_key]=o),Ae(e,t,Z.formArray);break;case"EVALUATE_RADIO_BLOCK":case"EVALUATE_CHECKBOX_BLOCK":Ae(e,t,Z.formArray);break;case"DATE":case"TIME":case"DATETIME":case"SEARCH_CASCADE":Z.submitForm[t.val_key]=e}},Fe=(e,t)=>{console.log(t),Z.form[t.val_key]=e},Be=e=>{if(!e||!e.length)return{labelStr:"",labels:[]};const t=e||[],a=[],o=[];return t.forEach((e=>{o.push(e),a.push(e.labelName)})),Z.labelSelectedList=t,{labelStr:a.join(","),labels:o}},Ne=P.debounce((()=>{var e;if(!Z.formArray.find((e=>T(e.type))))return void Ie("确认要提交吗?");let{evaluateResultSetting:t}=Z.config;if(!t||!Object.keys(t).length&&!fe.value||Ee.value)return void Ie("确认要结束测评吗?");if("formIframe"==G.openType&&fe.value)return void z("submitNoRequest");let a="确定要提前结束测评吗?";if(ge.value&&(null==(e=te.value)?void 0:e.getCountdownObj)){const e=te.value.getCountdownObj(),{setAnswered:t,totalLen:o}=e;t<o?a="存在未作答的题目,确定要提前结束测评吗?":!(null==Z?void 0:Z.showEvaluateCountdown)&&(a="确认要结束测评吗?")}we.value&&!(null==Z?void 0:Z.showEvaluateCountdown)&&(a="确认要结束测评吗?"),Ie(a)}),300),Ie=e=>{$.warning({title:"温馨提示",content:()=>S("div",{style:{paddingLeft:"30px"}},e),positiveText:"确定",negativeText:"取消",maskClosable:!1,closable:!1,positiveButtonProps:{type:"primary"},onPositiveClick:async()=>{const e=await qe();z("onSubmit",e)},onNegativeClick(){}})},qe=()=>new Promise(((e,t)=>{var a;null==(a=ae.value)||a.validate((t=>{var a;if(t){console.log(t);let o=(null==(a=t[0])?void 0:a[0])||{},i=o.field,l=o.message,n=Z.formArray.find((e=>e.databaseTitle===i));return n&&(i=n.title),ee.error(i+l),e(!1),!1}{const t=je();e(t)}}))})),Me=()=>{z("onCloseSetting")};return X({getScaleData:()=>({...Z}),onSubmitForm:qe,cancel:Me}),(e,t)=>(l(),n("div",{class:s(["c-scale-view-block",{"c-scale-view-block-hasfooter":r(ye)}])},[u(' <template v-if="state.spinning">\n <n-spin :show="state.spinning" description="加载中"></n-spin>\n </template> '),Z.spinning||Z.hasFrontAddress?u("v-if",!0):(l(),n(c,{key:0},[r(oe).noData?(l(),p(D,{key:0,noDataImg:r(oe).noDataImg,noDataTip:r(oe).noDataTip},null,8,["noDataImg","noDataTip"])):(l(),n(c,{key:1},[r(fe)&&!r(we)?(l(),p(F,d({key:0},r(Se),{onWriteGuage:Le}),null,16)):(l(),n(c,{key:1},[r(ge)?(l(),p(x,d({key:0,ref_key:"countdownDom",ref:te},r(he),{onCloseEvaluateCountdown:Pe}),null,16)):u("v-if",!0),m("div",{class:s(["scale-container",{"scale-container-nopadding":r(ce),"scale-container-hasfooter":r(ye)}]),style:v(r(ue))},[r(me)?(l(),p(r(N),{key:0,config:Z.config,maxScore:Z.maxScore},null,8,["config","maxScore"])):u("v-if",!0),f(r(M),{ref_key:"formRef",ref:ae,model:Z.form,rules:Z.rules,"require-mark-placement":"left",class:"main"},{default:g((()=>[(l(!0),n(c,null,y(Z.formArray,((e,t)=>(l(),n(c,{key:(e.id||e.seq)+t},[r(pe)(e)?(l(),p(r(R),{key:0,path:e.val_key,"show-label":!r(_)(e.type),class:"c-scle-form-item"},{label:g((()=>[m("span",{class:s({"scale-label-required":r(re)(e)}),innerHTML:r(de)(e)},null,10,V),r(re)(e)?(l(),n("span",H,"(必填)")):u("v-if",!0),r(be)(e)?(l(),n("span",U,b(r(be)(e)),1)):u("v-if",!0),r(se)(e)?(l(),n("span",{key:2,class:"evalute-tip",onClick:t=>(async e=>{var t;if(Z.evatipMap[e.id])return void De(Z.evatipMap[e.id]);let a="getSubjectAnswer";const o=(null==(t=G.scaleApiConfig)?void 0:t[a])||null;if(!o||"function"!=typeof o)return void ee.error(`${a} Is not a function`);let i=await o(e.id);i&&(Z.evatipMap[e.id]||(Z.evatipMap[e.id]=i,De(i)))})(e)},[J,k(" 查看提示 ")],8,W)):u("v-if",!0)])),default:g((()=>[(l(),p(C(e.renderCom),d(r(Ce)(e,t),{key:(e.id||e.seq)+t,onScaleChange:xe,onOnChange:t=>((e,t)=>{Z.form[t.val_key]=Be(e)})(t,e),onVodFileList:Fe}),null,16,["onOnChange"])),r(ke)(e)?(l(),p(B,{key:0,item:e},null,8,["item"])):u("v-if",!0)])),_:2},1032,["path","show-label"])):u("v-if",!0)],64)))),128))])),_:1},8,["model","rules"])],6),r(ye)?(l(),n("div",Y,[u(" 分享的链接 隐藏取消按钮 "),"guage"!==G.sourceType?(l(),p(r(K),{key:0,onClick:Me},{default:g((()=>[k("取消")])),_:1})):u("v-if",!0),G.isLock?u("v-if",!0):(l(),p(r(K),{key:1,onClick:r(Ne),disabled:Z.banSubmit,type:"primary"},{default:g((()=>[k(" 保存 ")])),_:1},8,["onClick","disabled"]))])):u("v-if",!0)],64))],64))],64))],2))}});export{X as default};
1
+ import{defineComponent as e,reactive as o,ref as a,watch as t,nextTick as s,openBlock as n,createElementBlock as i,normalizeClass as l,unref as r,createCommentVNode as m,Fragment as u,createBlock as c,mergeProps as d,createElementVNode as p,normalizeStyle as v,createVNode as f,withCtx as g,renderList as h,toDisplayString as k,createTextVNode as y,resolveDynamicComponent as w}from"vue";import S from"./hooks/use-noData.js";import{ScaleViewProps as b}from"./hooks/scaleview-props.js";import{getScaleViewState as C}from"./hooks/scaleview-state.js";import{ScaleViewComputed as D}from"./hooks/scaleview-computed.js";import{ScaleViewInit as E}from"./hooks/scaleview-init.js";import{ScaleViewSubmit as j}from"./hooks/scaleview-submit.js";import{ScaleViewMethods as _}from"./hooks/scaleview-methods.js";import{handleQueryParams as x,isCollection as P}from"./utils/judge-types.js";import{useEvent as q}from"./hooks/use-event.js";import"xe-utils";import"moment";import F from"../../../shared/utils/vexutilsExpand.js";import L from"./components/NoData.vue.js";import N from"./components/EvaluateCountdown.vue.js";import R from"./components/EvaluatePage.vue.js";import T from"./components/AnswerParse.vue.js";import A from"./components/ScaleScore.js";import{NForm as M,NFormItem as O,NButton as I}from"naive-ui";const J=["innerHTML"],V={key:0,class:"required-text"},G={key:1,class:"evalute-label"},W=["onClick"],B=p("i",{class:"scale-view-iconfont icon-scale-view-dengpao"},null,-1),H={key:1,class:"footer"};var Q=e({__name:"ScaleView",props:b,emits:["onCloseSetting","submitNoRequest","onSubmit","startWriteScale"],setup(e,{expose:b,emit:Q}){const z=e,{ScaleViewState:K}=C(),U=o(K),X=a(null),Y=a(null),{noDataState:Z,setNoData:$,resetNodata:ee}=S(),oe=x(),{showEvatip:ae,isFormBoldOpen:te,scaleStyle:se,handlePageClass:ne,isShowItem:ie,handleShowQuestionNumber:le,hasScore:re,isPreviewScale:me,showEvaluateEntry:ue,showEvaluateCoundownPage:ce,showSaveBtn:de,showEvaluateLabel:pe,showAnswerParse:ve,propsConfig:fe,evaluatePageProps:ge,evaluateCountdownProps:he,isEvaluetaResSituation:ke,disableEdit:ye}=D(z,U,{query:oe}),{initForm:we}=E(z,U,Q,{query:oe}),{submitMethod:Se,onSubmitData:be,onSubmitForm:Ce,handleScoreJson:De}=j(z,U,Q,{query:oe,formRef:Y,countdownDom:X}),{nextLogicEvent:Ee,handleDynamicDataRelation:je}=q(z,U),{scaleChange:_e,labelChange:xe,vodFileList:Pe,writeGuage:qe,closeEvaluateCountdown:Fe,showEvaTipModal:Le}=_(z,U,Q,{nextLogicEvent:Ee,handleDynamicDataRelation:je,isPreviewScale:me,submitMethod:Se,isEvaluetaResSituation:ke,handleScoreJson:De,disableEdit:ye});(()=>{let{id:e}=oe;e&&(U.shareId=e)})();const Ne=e=>{try{ee(),we(e)}catch(e){console.log(e,"--error"),U.spinning=!1,U.hasFrontAddress=!1,$(!0,null==e?void 0:e.resultMsg,null==e?void 0:e.result)}};t((()=>z.ids),((e,o)=>{o?e.guage_id&&e.guage_id!=o.guage_id&&Ne(e):e.guage_id&&Ne(e)}),{immediate:!0}),t((()=>z.guageData),(e=>{if(!e||!Object.keys(e||{}).length)return;U.form={},U.formArray=[];const o=JSON.parse(JSON.stringify(e));s((()=>{we(o)}))}),{immediate:!0});const Re=F.debounce(be,300),Te=()=>{Q("onCloseSetting")};return b({getScaleData:()=>({...U}),onSubmitForm:Ce,cancel:Te}),(e,o)=>(n(),i("div",{class:l(["c-scale-view-block",{"c-scale-view-block-hasfooter":r(de)}])},[m(' <template v-if="state.spinning">\r\n <n-spin :show="state.spinning" description="加载中"></n-spin>\r\n </template> '),U.spinning||U.hasFrontAddress?m("v-if",!0):(n(),i(u,{key:0},[r(Z).noData?(n(),c(L,{key:0,noDataImg:r(Z).noDataImg,noDataTip:r(Z).noDataTip},null,8,["noDataImg","noDataTip"])):(n(),i(u,{key:1},[r(ue)?(n(),c(R,d({key:0},r(ge),{onWriteGuage:r(qe)}),null,16,["onWriteGuage"])):(n(),i(u,{key:1},[r(ce)?(n(),c(N,d({key:0,ref_key:"countdownDom",ref:X},r(he),{onCloseEvaluateCountdown:r(Fe)}),null,16,["onCloseEvaluateCountdown"])):m("v-if",!0),p("div",{class:l(["scale-container",{"scale-container-nopadding":r(ne),"scale-container-hasfooter":r(de)}]),style:v(r(se))},[r(re)?(n(),c(r(A),{key:0,config:U.config,maxScore:U.maxScore},null,8,["config","maxScore"])):m("v-if",!0),f(r(M),{ref_key:"formRef",ref:Y,model:U.form,rules:U.rules,"require-mark-placement":"left",class:"main"},{default:g((()=>[(n(!0),i(u,null,h(U.formArray,((e,o)=>(n(),i(u,{key:(e.id||e.seq)+o},[r(ie)(e)?(n(),c(r(O),{key:0,path:e.val_key,"show-label":!r(P)(e.type),class:"c-scle-form-item"},{label:g((()=>[p("span",{class:l({"scale-label-required":r(te)(e)}),innerHTML:r(le)(e)},null,10,J),r(te)(e)?(n(),i("span",V,"(必填)")):m("v-if",!0),r(pe)(e)?(n(),i("span",G,k(r(pe)(e)),1)):m("v-if",!0),r(ae)(e)?(n(),i("span",{key:2,class:"evalute-tip",onClick:o=>r(Le)(e)},[B,y(" 查看提示 ")],8,W)):m("v-if",!0)])),default:g((()=>[(n(),c(w(e.renderCom),d(r(fe)(e,o),{key:(e.id||e.seq)+o,onScaleChange:r(_e),onOnChange:o=>r(xe)(o,e),onVodFileList:r(Pe)}),null,16,["onScaleChange","onOnChange","onVodFileList"])),r(ve)(e)?(n(),c(T,{key:0,item:e},null,8,["item"])):m("v-if",!0)])),_:2},1032,["path","show-label"])):m("v-if",!0)],64)))),128))])),_:1},8,["model","rules"])],6),r(de)?(n(),i("div",H,[m(" 分享的链接 隐藏取消按钮 "),"guage"!==z.sourceType?(n(),c(r(I),{key:0,onClick:Te},{default:g((()=>[y("取消")])),_:1})):m("v-if",!0),z.isLock?m("v-if",!0):(n(),c(r(I),{key:1,onClick:r(Re),disabled:U.banSubmit,type:"primary"},{default:g((()=>[y(" 保存 ")])),_:1},8,["onClick","disabled"]))])):m("v-if",!0)],64))],64))],64))],2))}});export{Q as default};
@@ -22,10 +22,27 @@ declare const _default: import("vue").DefineComponent<{
22
22
  type: BooleanConstructor;
23
23
  default: boolean;
24
24
  };
25
+ isEvaluetaResSituation: {
26
+ type: BooleanConstructor;
27
+ default: boolean;
28
+ };
29
+ evaResultObj: {
30
+ type: ObjectConstructor;
31
+ default: () => {};
32
+ };
33
+ skipCover: {
34
+ type: BooleanConstructor;
35
+ default: boolean;
36
+ };
25
37
  }, {
26
38
  state: {
27
39
  source: string;
28
40
  setAnswered: number;
41
+ unfold: boolean;
42
+ answeredScore: number;
43
+ totalScore: number;
44
+ answeredRes: string;
45
+ answeredColor: string;
29
46
  };
30
47
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
31
48
  formArray: {
@@ -51,9 +68,25 @@ declare const _default: import("vue").DefineComponent<{
51
68
  type: BooleanConstructor;
52
69
  default: boolean;
53
70
  };
71
+ isEvaluetaResSituation: {
72
+ type: BooleanConstructor;
73
+ default: boolean;
74
+ };
75
+ evaResultObj: {
76
+ type: ObjectConstructor;
77
+ default: () => {};
78
+ };
79
+ skipCover: {
80
+ type: BooleanConstructor;
81
+ default: boolean;
82
+ };
54
83
  }>> & {
55
84
  onCloseEvaluateCountdown?: ((...args: any[]) => any) | undefined;
56
85
  }>>;
86
+ calcShowEvaluateCountdown: import("vue").ComputedRef<boolean>;
87
+ toggleIcon: import("vue").ComputedRef<import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>>;
88
+ hasEva: import("vue").ComputedRef<unknown>;
89
+ showResSituationDetail: import("vue").ComputedRef<boolean>;
57
90
  emit: (event: "closeEvaluateCountdown", ...args: any[]) => void;
58
91
  evaluateState: {
59
92
  totalLen: number;
@@ -68,13 +101,18 @@ declare const _default: import("vue").DefineComponent<{
68
101
  getTotalLen: () => void;
69
102
  countdown: (startTime: any) => void;
70
103
  clearTimer: () => void;
104
+ handleTotalScore: () => number | undefined;
105
+ resetAnsweredRes: () => void;
106
+ answeredResCalc: (val: any) => void;
71
107
  init: () => void;
72
108
  checkType: (val: any) => string;
109
+ toggleFold: () => void;
73
110
  diffAnswered: (form: any) => void;
74
111
  getCountdownObj: () => {
75
112
  setAnswered: number;
76
113
  totalLen: number;
77
114
  };
115
+ NIcon: any;
78
116
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "closeEvaluateCountdown"[], "closeEvaluateCountdown", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
79
117
  formArray: {
80
118
  type: ArrayConstructor;
@@ -99,14 +137,29 @@ declare const _default: import("vue").DefineComponent<{
99
137
  type: BooleanConstructor;
100
138
  default: boolean;
101
139
  };
140
+ isEvaluetaResSituation: {
141
+ type: BooleanConstructor;
142
+ default: boolean;
143
+ };
144
+ evaResultObj: {
145
+ type: ObjectConstructor;
146
+ default: () => {};
147
+ };
148
+ skipCover: {
149
+ type: BooleanConstructor;
150
+ default: boolean;
151
+ };
102
152
  }>> & {
103
153
  onCloseEvaluateCountdown?: ((...args: any[]) => any) | undefined;
104
154
  }, {
155
+ skipCover: boolean;
156
+ isEvaluetaResSituation: boolean;
105
157
  formArray: unknown[];
106
158
  evaluateResultConfig: Record<string, any>;
107
159
  evaluateResultSetting: Record<string, any>;
108
160
  form: Record<string, any>;
109
161
  currentTime: number;
110
162
  showEvaluateCountdown: boolean;
163
+ evaResultObj: Record<string, any>;
111
164
  }>;
112
165
  export default _default;
@@ -1 +1 @@
1
- import{defineComponent as e,reactive as t,onMounted as a,watch as o,openBlock as n,createElementBlock as l,normalizeClass as u,unref as r,createElementVNode as s,toDisplayString as d,createCommentVNode as i,createTextVNode as c}from"vue";import{useEvaluate as w}from"../hooks/use-evaluate.js";import v from"moment";const m=s("i",{class:"scale-view-iconfont icon-scale-view-shijian"},null,-1),f={class:"answered-wrap"};var p=e({__name:"EvaluateCountdown",props:{formArray:{type:Array,default:()=>[]},evaluateResultConfig:{type:Object,default:()=>({})},evaluateResultSetting:{type:Object,default:()=>({})},form:{type:Object,default:()=>({})},currentTime:{default:(new Date).getTime()},showEvaluateCountdown:{type:Boolean,default:!1}},emits:["closeEvaluateCountdown"],setup(e,{expose:p,emit:y}){const b=e,j=t({source:"countdown",setAnswered:0}),{evaluateState:h,evaluateStartTime:g,showCountdown:A,getTotalLen:C,countdown:O,clearTimer:T}=w(b,j,{emit:y});a((()=>{(()=>{C();let{evaluateTime:e}=b.evaluateResultSetting;if(!A.value||!e)return;let t=(g.value?v(g.value):v()).add(e,"minutes");T(),O(t)})()})),o((()=>b.form),(e=>{(e||Object.keys(e).length)&&(e=>{var t;let a=null==(t=b.formArray)?void 0:t.filter((e=>!h.filterArr.includes(e.type)));if(!a||!a.length)return;let o={};a.forEach((t=>{const a=t.databaseTitle||t.title;o[a]=e[a]}));let n=0;for(let e in o){let t=o[e],a=(l=t,Object.prototype.toString.call(l));"[object Object]"==a?t&&Object.keys(t).length&&n++:"[object Array]"==a?t&&t.length&&n++:"[object Number]"==a?(t||0===t)&&n++:t&&n++}var l;j.setAnswered=n})(e)}),{immediate:!0,deep:!0});return p({getCountdownObj:()=>({setAnswered:j.setAnswered,totalLen:h.totalLen})}),(e,t)=>(n(),l("div",{class:u(["c-evaluateCountdown",{"evaluateCountdown-hasTime":b.showEvaluateCountdown}])},[b.showEvaluateCountdown?(n(),l("div",{key:0,class:u(["countdown",{"countdown-red":r(h).countdownRed}])},[s("span",null,d(r(h).countdownStr),1),m],2)):i("v-if",!0),s("div",f,[c(" 作答情况: "+d(j.setAnswered)+"/ ",1),s("span",null,d(r(h).totalLen),1)])],2))}});export{p as default};
1
+ import{defineComponent as e,reactive as t,computed as a,onMounted as o,watch as n,openBlock as l,createElementBlock as s,normalizeClass as r,unref as u,createBlock as i,createCommentVNode as d,createElementVNode as c,toDisplayString as v,createTextVNode as f,Fragment as w,normalizeStyle as m}from"vue";import{NIcon as p}from"naive-ui";import{ChevronUpSharp as y,ChevronDownSharp as b}from"@vicons/ionicons5";import"xe-utils";import S from"moment";import C from"../../../../shared/utils/vexutilsExpand.js";import{useEvaluate as R}from"../hooks/use-evaluate.js";const g=c("i",{class:"scale-view-iconfont icon-scale-view-shijian"},null,-1),j={class:"answered-wrap"},E={class:"answered-num"},h={class:"answered-blod"},A={class:"answered-blue"},O={class:"answered-blod"},k={class:"answered-blue"},T={key:0};var x=e({__name:"EvaluateCountdown",props:{formArray:{type:Array,default:()=>[]},evaluateResultConfig:{type:Object,default:()=>({})},evaluateResultSetting:{type:Object,default:()=>({})},form:{type:Object,default:()=>({})},currentTime:{default:(new Date).getTime()},showEvaluateCountdown:{type:Boolean,default:!1},isEvaluetaResSituation:{type:Boolean,default:!1},evaResultObj:{type:Object,default:()=>({})},skipCover:{type:Boolean,default:!1}},emits:["closeEvaluateCountdown"],setup(e,{expose:x,emit:L}){const _=e,B=t({source:"countdown",setAnswered:0,unfold:!0,answeredScore:0,totalScore:0,answeredRes:"",answeredColor:"#212121"}),U=a((()=>_.showEvaluateCountdown&&!_.skipCover)),V=a((()=>B.unfold?y:b)),D=a((()=>_.formArray.find((e=>e.type.includes("EVALUATE_"))))),N=a((()=>!!D.value&&(_.isEvaluetaResSituation&&B.unfold))),{evaluateState:W,evaluateStartTime:q,showCountdown:z,getTotalLen:F,countdown:G,clearTimer:H}=R(_,B,{emit:L}),I=e=>{if(!D.value||!_.isEvaluetaResSituation)return;let{evaluateResultColor:t,evaluateResult:a,totalScore:o}=e;if(B.answeredScore=o||0,!a)return B.answeredRes="",void(B.answeredColor="#212121");t&&"string"==typeof t&&t.startsWith("#")||(t="#212121"),B.answeredRes=a,B.answeredColor=t},J=()=>{D.value&&(()=>{let e=0,t=_.formArray.filter((e=>e.type.includes("EVALUATE_")));if(!t.length)return B.totalScore=e,e;t.forEach((t=>{var a;const o=t.scoreConfigs?+(null==(a=t.scoreConfigs)?void 0:a.maxScore):0;e=C.add(e,o)})),B.totalScore=e})(),F();let{evaluateTime:e}=_.evaluateResultSetting;if(!z.value||!e||!U.value)return;let t=(q.value?S(q.value):S()).add(e,"minutes");H(),G(t)},K=()=>{B.unfold=!B.unfold};o((()=>{J()})),n((()=>_.form),(e=>{(e||Object.keys(e).length)&&(e=>{var t;let a=null==(t=_.formArray)?void 0:t.filter((e=>!W.filterArr.includes(e.type)));if(!a||!a.length)return;let o={};a.forEach((t=>{const a=t.databaseTitle||t.title;o[a]=e[a]}));let n=0;for(let e in o){let t=o[e],a=(l=t,Object.prototype.toString.call(l));"[object Object]"==a?t&&Object.keys(t).length&&n++:"[object Array]"==a?t&&t.length&&n++:"[object Number]"==a?(t||0===t)&&n++:t&&n++}var l;B.setAnswered=n})(e)}),{immediate:!0,deep:!0}),n((()=>_.evaResultObj),(e=>{(e||Object.keys(e).length)&&I(e)}),{immediate:!0,deep:!0});return x({getCountdownObj:()=>({setAnswered:B.setAnswered,totalLen:W.totalLen})}),(e,t)=>(l(),s("div",{class:r(["c-evaluateCountdown",{"evaluateCountdown-hasTime":u(U),"evaluateCountdown-EvaluetaResSituation":_.isEvaluetaResSituation}])},[_.isEvaluetaResSituation?(l(),i(u(p),{key:0,class:"evaluate-toggle-icon",component:u(V),onClick:K},null,8,["component"])):d("v-if",!0),u(U)?(l(),s("div",{key:1,class:r(["countdown",{"countdown-red":u(W).countdownRed}])},[c("span",null,v(u(W).countdownStr),1),g],2)):d("v-if",!0),c("div",j,[c("div",E,[f(" 作答数量:"),c("span",h,v(B.setAnswered),1),f("/"),c("span",A,v(u(W).totalLen),1)]),u(N)?(l(),s(w,{key:0},[c("div",null,[f("作答分数:"),c("span",O,v(B.answeredScore),1),f("/"),c("span",k,v(B.totalScore),1)]),B.answeredRes?(l(),s("div",T,[f("作答结果:"),c("span",{style:m({color:B.answeredColor})},v(B.answeredRes),5)])):d("v-if",!0)],64)):d("v-if",!0)])],2))}});export{x as default};
@@ -76,7 +76,7 @@ declare const _default: import("vue").DefineComponent<{
76
76
  handleEvaluateParams: () => void;
77
77
  writeGuage: () => void;
78
78
  NButton: any;
79
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("closeEvaluateCountdown" | "writeGuage")[], "closeEvaluateCountdown" | "writeGuage", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
79
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("closeEvaluateCountdown" | "writeGuage")[], "writeGuage" | "closeEvaluateCountdown", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
80
80
  formArray: {
81
81
  type: ArrayConstructor;
82
82
  default: () => never[];
@@ -1 +1 @@
1
- import{defineComponent as e,reactive as o,watch as t,createVNode as i,resolveComponent as l,isVNode as s}from"vue";import{NCheckboxGroup as c,NCheckbox as n,NInput as r,NIcon as u}from"naive-ui";import{api as a}from"v-viewer";import{SearchOutline as p}from"@vicons/ionicons5";import"xe-utils";import"moment";import h from"../../../../../shared/utils/vexutilsExpand.js";import f from"../composables/choose-common.js";var d=e({name:"RCheckbox",components:{NCheckboxGroup:c,NCheckbox:n,NInput:r,NIcon:u},props:{form:{type:Object,default:()=>({})},item:{type:Object,default:()=>({})},isLock:{type:Boolean,default:!1},inputLock:{type:Boolean,default:!1}},emits:["scaleChange"],setup(e,n){var r,d;const x=o({curCheckboxValue:[],othersText:"",curOptions:[],optionsPreSuffixObj:{}}),{choiceColor:m,showImgWrap:v,handleDefPreSuffix:b,choiceUseKey:k,isCheckboxItem:C,showPreSuffix:O,handleOptions:y,stopClick:g}=f(e,x),S=(null==(d=null==(r=e.item)?void 0:r.setting)?void 0:d.chooseStyleSetting)||1,V=o=>{const t={othersText:x.othersText,optionsPreSuffixObj:x.optionsPreSuffixObj};o&&!x.curCheckboxValue.includes("other")&&x.curCheckboxValue.push("other");const i=JSON.parse(JSON.stringify(x.curCheckboxValue));n.emit("scaleChange",i,e.item,{choiceObj:t,isSetObj:C.value})},j=o=>{var t,i;let l=o.options||[];const s=e.form[e.item.val_key],c=null==(t=null==o?void 0:o.setting)?void 0:t.defaultValue;"EVALUATE_CHECKBOX_BLOCK"===e.item.type&&(l=(null==(i=o.scoreConfigs)?void 0:i.scoreRules)||[]);let n=[];n=c&&h.isJSON(c)?JSON.parse(c):s,e.inputLock?((e,o,t)=>{var i;if(x.curOptions=y(t),!t.length||!o||!o.length)return;const l=[];let s,c=0;const n=o.length;for(;c<n;c++){if(s=o[c],"其他"===s){x.othersText=s,x.curCheckboxValue=["other"],!l.includes("other")&&l.push("other");continue}const e=t.findIndex((e=>e.value===s));if(e<0){x.othersText=s,!l.includes("other")&&l.push("other");continue}const n=null==(i=t[e])?void 0:i.key;l.indexOf(n)<0&&l.push(n)}x.curCheckboxValue=l,V()})(0,o.dbValue||n,l):((e,o,t)=>{var i;if(x.curOptions=y(t),!t.length||!o||!o.length)return;if("EVALUATE_CHECKBOX_BLOCK"===e.type)return x.curCheckboxValue=o,void V();const l=[],s=o.length;let c,n=0;const r=t.some((e=>e.importability||"other"===e.key));for(;n<s;n++){if(c=o[n],"其他"===c){x.othersText=c,x.curCheckboxValue=["other"],!l.includes("other")&&l.push("other");continue}const e=t.findIndex((e=>e.value===c));if(e>0){const o=null==(i=t[e])?void 0:i.key;!l.includes(o)&&l.push(o)}else t.map((e=>{const o=b(e,n,c,!0,r);o&&!l.includes(o)&&l.push(o)}))}x.curCheckboxValue=l,V()})(o,o.dbValue||n,l)};t((()=>e.item),(e=>{e&&Object.keys(e).length&&j(e)}),{immediate:!0});const L=e=>i("span",{class:"scale-choice-img-wrap"},[i("img",{class:"show-picture",src:e.imageUrl},null),i("div",{class:"scale-preview-wrap"},[i(u,{size:"24",color:"#fff",component:p,onClick:o=>((e,o)=>{e.preventDefault(),e.stopPropagation();const t=x.curOptions.map((e=>e.imageUrl)).filter(Boolean);if(!t.length)return;const i=t.findIndex((e=>e===o));a({images:t,options:{toolbar:!0,initialViewIndex:i<0?0:i}})})(o,e.imageUrl)},null)])]),T=o=>i("div",{class:"presuffix-wrap"},[o.prefix&&i("span",{class:"prefix-span",style:{color:m.value(o)}},[o.prefix]),i(l("n-input"),{value:x.optionsPreSuffixObj[o.key],"onUpdate:value":e=>x.optionsPreSuffixObj[o.key]=e,disabled:e.isLock||e.inputLock,style:{color:m.value(o)},placeholder:"请输入",bordered:!1,onInput:()=>(o=>{const t={othersText:x.othersText,optionsPreSuffixObj:x.optionsPreSuffixObj};x.curCheckboxValue.includes(o.key)||x.curCheckboxValue.push(o.key);const i=JSON.parse(JSON.stringify(x.curCheckboxValue));n.emit("scaleChange",i,e.item,{choiceObj:t,isSetObj:C.value})})(o),onClick:g},null),o.suffix&&i("span",{class:"suffix-span",style:{color:m.value(o)}},[o.suffix])]),w=e=>i("span",{style:{color:m.value(e)},class:"other-span"},[e.label]),N=o=>i("div",{class:"choose-other",onClick:g},[i(l("n-input"),{value:x.othersText,"onUpdate:value":[e=>x.othersText=e,()=>V(!0)],disabled:e.isLock||e.inputLock,style:{color:m.value(o)},placeholder:"请输入",bordered:!1},null)]),P=e=>C.value&&O.value(e),I=k.value;return()=>{let o;return i(c,{value:x.curCheckboxValue,"onUpdate:value":[e=>x.curCheckboxValue=e,()=>V(!1)],class:["c-choice-wrap","choice-wrap-"+S],disabled:e.isLock},"function"==typeof(t=o=x.curOptions.map((e=>i("div",{class:"c-choice-radio-div"},[i(l("n-checkbox"),{key:e.value,value:e[I]},{default:()=>[v.value(e)&&L(e),P(e)&&T(e),!P(e)&&w(e),e.importability&&N(e)]})]))))||"[object Object]"===Object.prototype.toString.call(t)&&!s(t)?o:{default:()=>[o]});var t}}});export{d as default};
1
+ import{defineComponent as e,reactive as o,watch as t,createVNode as i,resolveComponent as l,isVNode as s}from"vue";import{NCheckboxGroup as c,NCheckbox as n,NInput as r,NIcon as u}from"naive-ui";import{api as a}from"v-viewer";import{SearchOutline as p}from"@vicons/ionicons5";import"xe-utils";import"moment";import h from"../../../../../shared/utils/vexutilsExpand.js";import f from"../composables/choose-common.js";var d=e({name:"RCheckbox",components:{NCheckboxGroup:c,NCheckbox:n,NInput:r,NIcon:u},props:{form:{type:Object,default:()=>({})},item:{type:Object,default:()=>({})},isLock:{type:Boolean,default:!1},inputLock:{type:Boolean,default:!1}},emits:["scaleChange"],setup(e,n){var r,d;const x=o({curCheckboxValue:[],othersText:"",curOptions:[],optionsPreSuffixObj:{}}),{choiceColor:b,showImgWrap:m,handleDefPreSuffix:v,choiceUseKey:k,isCheckboxItem:C,showPreSuffix:O,handleOptions:y,stopClick:g}=f(e,x),S=(null==(d=null==(r=e.item)?void 0:r.setting)?void 0:d.chooseStyleSetting)||1,V=o=>{const t={othersText:x.othersText,optionsPreSuffixObj:x.optionsPreSuffixObj};o&&!x.curCheckboxValue.includes("other")&&x.curCheckboxValue.push("other");const i=JSON.parse(JSON.stringify(x.curCheckboxValue));n.emit("scaleChange",i,e.item,{choiceObj:t,isSetObj:C.value})},j=o=>{var t,i;let l=o.options||[];const s=e.form[e.item.val_key],c=null==(t=null==o?void 0:o.setting)?void 0:t.defaultValue;"EVALUATE_CHECKBOX_BLOCK"===e.item.type&&(l=(null==(i=o.scoreConfigs)?void 0:i.scoreRules)||[]);let n=[];n=c&&h.isJSON(c)?JSON.parse(c):s,e.inputLock?((e,o,t)=>{var i;if(x.curOptions=y(t),!t.length||!o||!o.length)return;const l=[];let s,c=0;const n=o.length;for(;c<n;c++){if(s=o[c],"其他"===s){x.othersText=s,x.curCheckboxValue=["other"],!l.includes("other")&&l.push("other");continue}const e=t.findIndex((e=>e.value===s));if(e<0){x.othersText=s,!l.includes("other")&&l.push("other");continue}const n=null==(i=t[e])?void 0:i.key;l.indexOf(n)<0&&l.push(n)}x.curCheckboxValue=l,V()})(0,o.dbValue||n,l):((e,o,t)=>{var i;if(x.curOptions=y(t),!t.length||!o||!o.length)return;if("EVALUATE_CHECKBOX_BLOCK"===e.type)return x.curCheckboxValue=o,void V();const l=[],s=o.length;let c,n=0;const r=t.some((e=>e.importability||"other"===e.key));for(;n<s;n++){if(c=o[n],"其他"===c){x.othersText=c,x.curCheckboxValue=["other"],!l.includes("other")&&l.push("other");continue}const e=t.findIndex((e=>e.value===c));if(e>0){const o=null==(i=t[e])?void 0:i.key;!l.includes(o)&&l.push(o)}else t.map((e=>{const o=v(e,n,c,!0,r);o&&!l.includes(o)&&l.push(o)}))}x.curCheckboxValue=l,V()})(o,o.dbValue||n,l)};t((()=>e.item),(e=>{e&&Object.keys(e).length&&j(e)}),{immediate:!0});const L=h.debounce(V,300),T=h.debounce((o=>{const t={othersText:x.othersText,optionsPreSuffixObj:x.optionsPreSuffixObj};x.curCheckboxValue.includes(o.key)||x.curCheckboxValue.push(o.key);const i=JSON.parse(JSON.stringify(x.curCheckboxValue));n.emit("scaleChange",i,e.item,{choiceObj:t,isSetObj:C.value})}),300),w=e=>i("span",{class:"scale-choice-img-wrap"},[i("img",{class:"show-picture",src:e.imageUrl},null),i("div",{class:"scale-preview-wrap"},[i(u,{size:"24",color:"#fff",component:p,onClick:o=>((e,o)=>{e.preventDefault(),e.stopPropagation();const t=x.curOptions.map((e=>e.imageUrl)).filter(Boolean);if(!t.length)return;const i=t.findIndex((e=>e===o));a({images:t,options:{toolbar:!0,initialViewIndex:i<0?0:i}})})(o,e.imageUrl)},null)])]),N=o=>i("div",{class:"presuffix-wrap"},[o.prefix&&i("span",{class:"prefix-span",style:{color:b.value(o)}},[o.prefix]),i(l("n-input"),{value:x.optionsPreSuffixObj[o.key],"onUpdate:value":e=>x.optionsPreSuffixObj[o.key]=e,disabled:e.isLock||e.inputLock,style:{color:b.value(o)},placeholder:"请输入",bordered:!1,onInput:()=>T(o),onClick:g},null),o.suffix&&i("span",{class:"suffix-span",style:{color:b.value(o)}},[o.suffix])]),P=e=>i("span",{style:{color:b.value(e)},class:"other-span"},[e.label]),I=o=>i("div",{class:"choose-other",onClick:g},[i(l("n-input"),{value:x.othersText,"onUpdate:value":[e=>x.othersText=e,()=>L(!0)],disabled:e.isLock||e.inputLock,style:{color:b.value(o)},placeholder:"请输入",bordered:!1},null)]),U=e=>C.value&&O.value(e),B=k.value;return()=>{let o;return i(c,{value:x.curCheckboxValue,"onUpdate:value":[e=>x.curCheckboxValue=e,()=>V(!1)],class:["c-choice-wrap","choice-wrap-"+S],disabled:e.isLock},"function"==typeof(t=o=x.curOptions.map((e=>i("div",{class:"c-choice-radio-div"},[i(l("n-checkbox"),{key:e.value,value:e[B]},{default:()=>[m.value(e)&&w(e),U(e)&&N(e),!U(e)&&P(e),e.importability&&I(e)]})]))))||"[object Object]"===Object.prototype.toString.call(t)&&!s(t)?o:{default:()=>[o]});var t}}});export{d as default};
@@ -1 +1 @@
1
- import{defineComponent as e,computed as t,reactive as a,createVNode as r,resolveComponent as u,createTextVNode as l}from"vue";import{NTimePicker as n,NDatePicker as i}from"naive-ui";import"xe-utils";import s from"moment";import o from"../../../../../shared/utils/vexutilsExpand.js";var d=e({name:"RDatetime",components:{NTimePicker:n,NDatePicker:i},props:{form:{type:Object,default:()=>({})},item:{type:Object,default:()=>({})},isLock:{type:Boolean,default:!1}},emits:["scaleChange"],setup(e,n){var i,d,m,c,f;const p=null==(i=e.item)?void 0:i.type,v=null==(m=null==(d=e.item)?void 0:d.setting)?void 0:m.startToStop,g="DATE"===p?"date":null==(f=null==(c=e.item)?void 0:c.setting)?void 0:f.dateType,b={datetime:"yyyy-MM-dd HH:mm:ss",date:"yyyy-MM-dd",time:"HH:mm:ss",hour:"HH:mm",datehour:"yyyy-MM-dd HH:mm"},D=t((()=>b[g])),y=t((()=>"datehour"===g?"datetime":g)),V=t((()=>"datehour"===g?"HH:mm":"HH:mm:ss")),H=a({rangeValue:[null,null],dateValue:null}),N=t((()=>"datetime"==g||"datehour"==g?"datetimerange":"daterange")),k=e=>["time","hour"].includes(e),w=e=>{const t=H.rangeValue[1];if(!t)return!1;return e>Number(new Date(t).getHours())},M=(e,t)=>{if(null===t)return!1;const a=H.rangeValue[1];if(!a)return!1;const r=Number(new Date(a).getHours()),u=Number(new Date(a).getMinutes());return!(t<r)&&e>u},h=(e,t,a)=>{if(null===a||null===t)return!1;const r=H.rangeValue[1];if(!r)return!1;const u=Number(new Date(r).getHours()),l=Number(new Date(r).getMinutes()),n=Number(new Date(r).getSeconds());return!(a<u)&&(!(t<l)&&e>=n)},S=e=>{const t=H.rangeValue[0];if(!t)return!1;return e<Number(new Date(t).getHours())},O=(e,t)=>{if(null===t)return!1;const a=H.rangeValue[0];if(!a)return!1;const r=Number(new Date(a).getHours()),u=Number(new Date(a).getMinutes());return!(t>r)&&e<u},U=(e,t,a)=>{if(null===a||null===t)return!1;const r=H.rangeValue[0];if(!r)return!1;const u=Number(new Date(r).getHours()),l=Number(new Date(r).getMinutes()),n=Number(new Date(r).getSeconds());return!(a>u)&&(!(t>l)&&e<=n)},L=(t,a,r)=>{const u="start"===r?1:0;let l=H.rangeValue[u];l&&(l=s(l).format(D.value)),"start"!==r?n.emit("scaleChange",[l||"",a],e.item):n.emit("scaleChange",[a,l||""],e.item)},T=(t,a)=>{n.emit("scaleChange",a,e.item)};return(e=>{if(o.isJSON(e)&&(e=JSON.parse(e)),!e||o.isEmpty(e))return;const t=JSON.parse(JSON.stringify(e));if("TIME"===p||k(g)){if(1!=v)return void(H.dateValue=e);if(!Array.isArray(t)||!t.length)return;const a=t[0]?s(t[0],D.value).valueOf():"",r=t[1]?s(t[1],D.value).valueOf():"",u=a&&o.isValidDate(new Date(a))?a:null,l=r&&o.isValidDate(new Date(r))?r:null;H.rangeValue=[u,l]}else H.dateValue=e})(e.form[e.item.val_key]),()=>"TIME"===p||k(g)?1==v?r("div",{class:"c-time-range"},[r(u("n-time-picker"),{value:H.rangeValue[0],"onUpdate:value":[e=>H.rangeValue[0]=e,(e,t)=>L(0,t,"start")],clearable:!0,disabled:e.isLock,format:D.value,isHourDisabled:w,isMinuteDisabled:M,isSecondDisabled:h},null),l("  -  "),r(u("n-time-picker"),{value:H.rangeValue[1],"onUpdate:value":[e=>H.rangeValue[1]=e,(e,t)=>L(0,t,"end")],clearable:!0,disabled:e.isLock,format:D.value,isHourDisabled:S,isMinuteDisabled:O,isSecondDisabled:U},null)]):r(u("n-time-picker"),{"formatted-value":H.dateValue,"onUpdate:formatted-value":e=>H.dateValue=e,clearable:!0,disabled:e.isLock,"onUpdate:value":T,format:D.value},null):["date","datetime","datehour"].includes(g)&&1==v?r(u("n-date-picker"),{"formatted-value":H.dateValue,"onUpdate:formatted-value":e=>H.dateValue=e,type:N.value,clearable:!0,disabled:e.isLock,format:D.value,"time-picker-props":{format:V.value},"onUpdate:value":T},null):r(u("n-date-picker"),{"formatted-value":H.dateValue,"onUpdate:formatted-value":e=>H.dateValue=e,type:y.value,clearable:!0,disabled:e.isLock,format:D.value,"time-picker-props":{format:V.value},"onUpdate:value":T},null)}});export{d as default};
1
+ import{defineComponent as e,computed as t,reactive as a,createVNode as r,resolveComponent as u,createTextVNode as l}from"vue";import{NTimePicker as n,NDatePicker as i}from"naive-ui";import"xe-utils";import o from"moment";import s from"../../../../../shared/utils/vexutilsExpand.js";import{formatMap as d}from"../../utils/judge-types.js";var m=e({name:"RDatetime",components:{NTimePicker:n,NDatePicker:i},props:{form:{type:Object,default:()=>({})},item:{type:Object,default:()=>({})},isLock:{type:Boolean,default:!1}},emits:["scaleChange"],setup(e,n){var i,m,c,p,f;const v=null==(i=e.item)?void 0:i.type,g=null==(c=null==(m=e.item)?void 0:m.setting)?void 0:c.startToStop,b="DATE"===v?"date":null==(f=null==(p=e.item)?void 0:p.setting)?void 0:f.dateType,D=t((()=>d[b])),V=t((()=>"datehour"===b?"datetime":b)),N=t((()=>"datehour"===b?"HH:mm":"HH:mm:ss")),k=a({rangeValue:[null,null],dateValue:null}),w=t((()=>"datetime"==b||"datehour"==b?"datetimerange":"daterange")),y=e=>["time","hour"].includes(e),H=e=>{const t=k.rangeValue[1];if(!t)return!1;return e>Number(new Date(t).getHours())},h=(e,t)=>{if(null===t)return!1;const a=k.rangeValue[1];if(!a)return!1;const r=Number(new Date(a).getHours()),u=Number(new Date(a).getMinutes());return!(t<r)&&e>u},S=(e,t,a)=>{if(null===a||null===t)return!1;const r=k.rangeValue[1];if(!r)return!1;const u=Number(new Date(r).getHours()),l=Number(new Date(r).getMinutes()),n=Number(new Date(r).getSeconds());return!(a<u)&&(!(t<l)&&e>=n)},M=e=>{const t=k.rangeValue[0];if(!t)return!1;return e<Number(new Date(t).getHours())},O=(e,t)=>{if(null===t)return!1;const a=k.rangeValue[0];if(!a)return!1;const r=Number(new Date(a).getHours()),u=Number(new Date(a).getMinutes());return!(t>r)&&e<u},U=(e,t,a)=>{if(null===a||null===t)return!1;const r=k.rangeValue[0];if(!r)return!1;const u=Number(new Date(r).getHours()),l=Number(new Date(r).getMinutes()),n=Number(new Date(r).getSeconds());return!(a>u)&&(!(t>l)&&e<=n)},L=(t,a,r)=>{const u="start"===r?1:0;let l=k.rangeValue[u];l&&(l=o(l).format(D.value)),"start"!==r?n.emit("scaleChange",[l||"",a],e.item):n.emit("scaleChange",[a,l||""],e.item)},T=(t,a)=>{n.emit("scaleChange",a,e.item)};return(e=>{if(s.isJSON(e)&&(e=JSON.parse(e)),!e||s.isEmpty(e))return;const t=JSON.parse(JSON.stringify(e));if("TIME"===v||y(b)){if(1!=g)return void(k.dateValue=e);if(!Array.isArray(t)||!t.length)return;const a=t[0]?o(t[0],D.value).valueOf():"",r=t[1]?o(t[1],D.value).valueOf():"",u=a&&s.isValidDate(new Date(a))?a:null,l=r&&s.isValidDate(new Date(r))?r:null;k.rangeValue=[u,l]}else k.dateValue=e})(e.form[e.item.val_key]),()=>"TIME"===v||y(b)?1==g?r("div",{class:"c-time-range"},[r(u("n-time-picker"),{value:k.rangeValue[0],"onUpdate:value":[e=>k.rangeValue[0]=e,(e,t)=>L(0,t,"start")],clearable:!0,disabled:e.isLock,format:D.value,isHourDisabled:H,isMinuteDisabled:h,isSecondDisabled:S},null),l("  -  "),r(u("n-time-picker"),{value:k.rangeValue[1],"onUpdate:value":[e=>k.rangeValue[1]=e,(e,t)=>L(0,t,"end")],clearable:!0,disabled:e.isLock,format:D.value,isHourDisabled:M,isMinuteDisabled:O,isSecondDisabled:U},null)]):r(u("n-time-picker"),{"formatted-value":k.dateValue,"onUpdate:formatted-value":e=>k.dateValue=e,clearable:!0,disabled:e.isLock,"onUpdate:value":T,format:D.value},null):["date","datetime","datehour"].includes(b)&&1==g?r(u("n-date-picker"),{"formatted-value":k.dateValue,"onUpdate:formatted-value":e=>k.dateValue=e,type:w.value,clearable:!0,disabled:e.isLock,format:D.value,"time-picker-props":{format:N.value},"onUpdate:value":T},null):r(u("n-date-picker"),{"formatted-value":k.dateValue,"onUpdate:formatted-value":e=>k.dateValue=e,type:V.value,clearable:!0,disabled:e.isLock,format:D.value,"time-picker-props":{format:N.value},"onUpdate:value":T},null)}});export{m as default};
@@ -1 +1 @@
1
- import{defineComponent as e,reactive as o,watch as t,createVNode as i,resolveComponent as l,isVNode as a}from"vue";import{NRadioGroup as s,NRadio as r,NInput as u,NIcon as n}from"naive-ui";import{api as c}from"v-viewer";import{SearchOutline as p}from"@vicons/ionicons5";import f from"../composables/choose-common.js";var v=e({name:"RRadio",components:{NRadioGroup:s,NRadio:r,NInput:u,NIcon:n},props:{form:{type:Object,default:()=>({})},item:{type:Object,default:()=>({})},isLock:{type:Boolean,default:!1},inputLock:{type:Boolean,default:!1}},emits:["scaleChange"],setup(e,r){var u,v;const d=o({curvalue:"",othersText:"",curOptions:[],optionsPreSuffixObj:{}}),{choiceColor:m,showImgWrap:h,handleDefPreSuffix:b,choiceUseKey:x,isRadioItem:O,showPreSuffix:j,handleOptions:y,stopClick:g}=f(e,d),k=(null==(v=null==(u=e.item)?void 0:u.setting)?void 0:v.chooseStyleSetting)||1,S=o=>{var t;let i=o.options||[];const l=e.form[e.item.val_key];"EVALUATE_RADIO_BLOCK"===e.item.type&&(i=(null==(t=o.scoreConfigs)?void 0:t.scoreRules)||[]);((e,o,t)=>{if(d.curOptions=y(t),!t.length||!o)return;if("EVALUATE_RADIO_BLOCK"===e.type)return d.curvalue=o,void P();const i=t.find((e=>e.value===o));if(i)return d.curvalue=i.key,void P();t.find(((e,t)=>{const i=b(e,t,o);return i&&(d.curvalue=i),!!i||!1}))||(d.othersText=o,d.curvalue="other"),P()})(o,o.dbValue||o.setting.defaultValue||l,i)},P=()=>{const o={othersText:d.othersText,optionsPreSuffixObj:d.optionsPreSuffixObj};r.emit("scaleChange",d.curvalue,e.item,{choiceObj:o,isSetObj:O.value})};t((()=>e.item),(e=>{e&&Object.keys(e).length&&S(e)}),{immediate:!0});const C=()=>{const o={othersText:d.othersText,optionsPreSuffixObj:d.optionsPreSuffixObj};d.curvalue="other",r.emit("scaleChange","other",e.item,{choiceObj:o,isSetObj:O.value})},L=e=>i("span",{class:"scale-choice-img-wrap"},[i("img",{class:"show-picture",src:e.imageUrl},null),i("div",{class:"scale-preview-wrap"},[i(n,{size:"24",color:"#fff",component:p,onClick:o=>((e,o)=>{e.preventDefault(),e.stopPropagation();const t=d.curOptions.map((e=>e.imageUrl)).filter(Boolean);if(!t.length)return;const i=t.findIndex((e=>e===o));c({images:t,options:{toolbar:!0,initialViewIndex:i<0?0:i}})})(o,e.imageUrl)},null)])]),T=o=>i("div",{class:"presuffix-wrap"},[o.prefix&&i("span",{class:"prefix-span",style:{color:m.value(o)}},[o.prefix]),i(l("n-input"),{value:d.optionsPreSuffixObj[o.key],"onUpdate:value":e=>d.optionsPreSuffixObj[o.key]=e,disabled:e.isLock||e.inputLock,style:{color:m.value(o)},placeholder:"请输入",bordered:!1,"on-update:value":t=>((o,t)=>{d.optionsPreSuffixObj[t.key]=o,d.curvalue=t.key;const i={othersText:d.othersText,optionsPreSuffixObj:d.optionsPreSuffixObj};console.log(d.optionsPreSuffixObj),r.emit("scaleChange",d.curvalue,e.item,{choiceObj:i,isSetObj:O.value})})(t,o),onClick:g},null),o.suffix&&i("span",{class:"suffix-span",style:{color:m.value(o)}},[o.suffix])]),w=e=>i("span",{style:{color:m.value(e)},class:"other-span"},[e.label]),U=o=>i("div",{class:"choose-other",onClick:g},[i(l("n-input"),{value:d.othersText,"onUpdate:value":[e=>d.othersText=e,C],disabled:e.isLock||e.inputLock,style:{color:m.value(o)},placeholder:"请输入",bordered:!1},null)]),I=e=>O.value&&j.value(e),R=x.value;return()=>{let o;return i(s,{value:d.curvalue,"onUpdate:value":[e=>d.curvalue=e,P],class:["c-choice-wrap","choice-wrap-"+k],disabled:e.isLock},"function"==typeof(t=o=d.curOptions.map((o=>i("div",{class:"c-choice-radio-div"},[i(l("n-radio"),{key:o.value,value:o[R],onClick:t=>((o,t)=>{if(e.isLock)return;o.preventDefault(),o.stopPropagation();const i=t[R];d.curvalue=d.curvalue===i?"":i,P()})(t,o)},{default:()=>[h.value(o)&&L(o),I(o)&&T(o),!I(o)&&w(o),o.importability&&U(o)]})]))))||"[object Object]"===Object.prototype.toString.call(t)&&!a(t)?o:{default:()=>[o]});var t}}});export{v as default};
1
+ import{defineComponent as e,reactive as o,watch as t,createVNode as i,resolveComponent as l,isVNode as s}from"vue";import{NRadioGroup as r,NRadio as a,NInput as u,NIcon as n}from"naive-ui";import{api as c}from"v-viewer";import{SearchOutline as p}from"@vicons/ionicons5";import f from"../composables/choose-common.js";import"xe-utils";import"moment";import v from"../../../../../shared/utils/vexutilsExpand.js";var d=e({name:"RRadio",components:{NRadioGroup:r,NRadio:a,NInput:u,NIcon:n},props:{form:{type:Object,default:()=>({})},item:{type:Object,default:()=>({})},isLock:{type:Boolean,default:!1},inputLock:{type:Boolean,default:!1}},emits:["scaleChange"],setup(e,a){var u,d;const m=o({curvalue:"",othersText:"",curOptions:[],optionsPreSuffixObj:{}}),{choiceColor:h,showImgWrap:x,handleDefPreSuffix:b,choiceUseKey:O,isRadioItem:j,showPreSuffix:y,handleOptions:g,stopClick:k}=f(e,m),S=(null==(d=null==(u=e.item)?void 0:u.setting)?void 0:d.chooseStyleSetting)||1,P=o=>{var t;let i=o.options||[];const l=e.form[e.item.val_key];"EVALUATE_RADIO_BLOCK"===e.item.type&&(i=(null==(t=o.scoreConfigs)?void 0:t.scoreRules)||[]);((e,o,t)=>{if(m.curOptions=g(t),!t.length||!o)return;if("EVALUATE_RADIO_BLOCK"===e.type)return m.curvalue=o,void C();const i=t.find((e=>e.value===o));if(i)return m.curvalue=i.key,void C();t.find(((e,t)=>{const i=b(e,t,o);return i&&(m.curvalue=i),!!i||!1}))||(m.othersText=o,m.curvalue="other"),C()})(o,o.dbValue||o.setting.defaultValue||l,i)},C=()=>{const o={othersText:m.othersText,optionsPreSuffixObj:m.optionsPreSuffixObj};a.emit("scaleChange",m.curvalue,e.item,{choiceObj:o,isSetObj:j.value})};t((()=>e.item),(e=>{e&&Object.keys(e).length&&P(e)}),{immediate:!0});const L=v.debounce(((o,t)=>{m.optionsPreSuffixObj[t.key]=o,m.curvalue=t.key;const i={othersText:m.othersText,optionsPreSuffixObj:m.optionsPreSuffixObj};console.log(m.optionsPreSuffixObj),a.emit("scaleChange",m.curvalue,e.item,{choiceObj:i,isSetObj:j.value})}),300),T=v.debounce((()=>{const o={othersText:m.othersText,optionsPreSuffixObj:m.optionsPreSuffixObj};m.curvalue="other",a.emit("scaleChange","other",e.item,{choiceObj:o,isSetObj:j.value})}),300),w=e=>i("span",{class:"scale-choice-img-wrap"},[i("img",{class:"show-picture",src:e.imageUrl},null),i("div",{class:"scale-preview-wrap"},[i(n,{size:"24",color:"#fff",component:p,onClick:o=>((e,o)=>{e.preventDefault(),e.stopPropagation();const t=m.curOptions.map((e=>e.imageUrl)).filter(Boolean);if(!t.length)return;const i=t.findIndex((e=>e===o));c({images:t,options:{toolbar:!0,initialViewIndex:i<0?0:i}})})(o,e.imageUrl)},null)])]),U=o=>i("div",{class:"presuffix-wrap"},[o.prefix&&i("span",{class:"prefix-span",style:{color:h.value(o)}},[o.prefix]),i(l("n-input"),{value:m.optionsPreSuffixObj[o.key],"onUpdate:value":e=>m.optionsPreSuffixObj[o.key]=e,disabled:e.isLock||e.inputLock,style:{color:h.value(o)},placeholder:"请输入",bordered:!1,"on-update:value":e=>L(e,o),onClick:k},null),o.suffix&&i("span",{class:"suffix-span",style:{color:h.value(o)}},[o.suffix])]),I=e=>i("span",{style:{color:h.value(e)},class:"other-span"},[e.label]),R=o=>i("div",{class:"choose-other",onClick:k},[i(l("n-input"),{value:m.othersText,"onUpdate:value":[e=>m.othersText=e,T],disabled:e.isLock||e.inputLock,style:{color:h.value(o)},placeholder:"请输入",bordered:!1},null)]),A=e=>j.value&&y.value(e),B=O.value;return()=>{let o;return i(r,{value:m.curvalue,"onUpdate:value":[e=>m.curvalue=e,C],class:["c-choice-wrap","choice-wrap-"+S],disabled:e.isLock},"function"==typeof(t=o=m.curOptions.map((o=>i("div",{class:"c-choice-radio-div"},[i(l("n-radio"),{key:o.value,value:o[B],onClick:t=>((o,t)=>{if(e.isLock)return;o.preventDefault(),o.stopPropagation();const i=t[B];m.curvalue=m.curvalue===i?"":i,C()})(t,o)},{default:()=>[x.value(o)&&w(o),A(o)&&U(o),!A(o)&&I(o),o.importability&&R(o)]})]))))||"[object Object]"===Object.prototype.toString.call(t)&&!s(t)?o:{default:()=>[o]});var t}}});export{d as default};