widget.qw 1.0.6 → 1.0.8

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.
@@ -3224,7 +3224,7 @@ const dictionary_dict = (data2) => {
3224
3224
  };
3225
3225
  const project_list = (data2) => {
3226
3226
  return service$3({
3227
- url: vm.urlCallback() + "/qw-api/server-crm/project/list",
3227
+ url: vm.urlCallback() + "/ac-api/project/list",
3228
3228
  method: "POST",
3229
3229
  data: data2
3230
3230
  });
@@ -15760,7 +15760,7 @@ var _export_sfc = (sfc, props) => {
15760
15760
  }
15761
15761
  return target;
15762
15762
  };
15763
- const _hoisted_1$j = {
15763
+ const _hoisted_1$i = {
15764
15764
  class: "widget"
15765
15765
  };
15766
15766
  const _hoisted_2$b = /* @__PURE__ */ createTextVNode("\u9A73\u56DE");
@@ -15773,7 +15773,7 @@ const _hoisted_5$8 = {
15773
15773
  const _hoisted_6$7 = {
15774
15774
  class: "task-title"
15775
15775
  };
15776
- const _sfc_main$w = {
15776
+ const _sfc_main$u = {
15777
15777
  __name: "AuditBar",
15778
15778
  props: {
15779
15779
  processId: Number,
@@ -16003,7 +16003,7 @@ const _sfc_main$w = {
16003
16003
  const _component_van_popover = resolveComponent("van-popover");
16004
16004
  const _component_van_step = resolveComponent("van-step");
16005
16005
  const _component_van_steps = resolveComponent("van-steps");
16006
- return openBlock(), createElementBlock("div", _hoisted_1$j, [unref(canPass) || unref(canRefuse) ? (openBlock(), createBlock(_component_van_field, {
16006
+ return openBlock(), createElementBlock("div", _hoisted_1$i, [unref(canPass) || unref(canRefuse) ? (openBlock(), createBlock(_component_van_field, {
16007
16007
  key: 0,
16008
16008
  modelValue: data2.memo,
16009
16009
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => data2.memo = $event),
@@ -16072,7 +16072,7 @@ const _sfc_main$w = {
16072
16072
  };
16073
16073
  }
16074
16074
  };
16075
- var AuditBar = /* @__PURE__ */ _export_sfc(_sfc_main$w, [["__scopeId", "data-v-87892c3e"]]);
16075
+ var AuditBar = /* @__PURE__ */ _export_sfc(_sfc_main$u, [["__scopeId", "data-v-87892c3e"]]);
16076
16076
  const isClient = typeof window !== "undefined" && typeof document !== "undefined";
16077
16077
  typeof WorkerGlobalScope !== "undefined" && globalThis instanceof WorkerGlobalScope;
16078
16078
  const isDef = (val) => typeof val !== "undefined";
@@ -16140,7 +16140,7 @@ function useVModel(props, key, emit, options = {}) {
16140
16140
  }
16141
16141
  }
16142
16142
  var Input_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "[data-v-5653f0d0] .label {\n color: #000 !important;\n}\n[data-v-5653f0d0] .van-field__control:disabled {\n color: #000 !important;\n cursor: not-allowed;\n opacity: 1;\n -webkit-text-fill-color: #000;\n}")();
16143
- const _sfc_main$v = {
16143
+ const _sfc_main$t = {
16144
16144
  __name: "Input",
16145
16145
  props: {
16146
16146
  modelValue: {
@@ -16216,9 +16216,9 @@ const _sfc_main$v = {
16216
16216
  };
16217
16217
  }
16218
16218
  };
16219
- var Input = /* @__PURE__ */ _export_sfc(_sfc_main$v, [["__scopeId", "data-v-5653f0d0"]]);
16219
+ var Input = /* @__PURE__ */ _export_sfc(_sfc_main$t, [["__scopeId", "data-v-5653f0d0"]]);
16220
16220
  var SinglePicker_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "[data-v-24e62c3a] .label {\n color: #000 !important;\n}\n[data-v-24e62c3a] .van-field__control:disabled {\n color: #000 !important;\n cursor: not-allowed;\n opacity: 1;\n -webkit-text-fill-color: #000;\n}")();
16221
- const _sfc_main$u = {
16221
+ const _sfc_main$s = {
16222
16222
  __name: "SinglePicker",
16223
16223
  props: {
16224
16224
  id: String,
@@ -16334,16 +16334,16 @@ const _sfc_main$u = {
16334
16334
  };
16335
16335
  }
16336
16336
  };
16337
- var SinglePicker = /* @__PURE__ */ _export_sfc(_sfc_main$u, [["__scopeId", "data-v-24e62c3a"]]);
16337
+ var SinglePicker = /* @__PURE__ */ _export_sfc(_sfc_main$s, [["__scopeId", "data-v-24e62c3a"]]);
16338
16338
  var DataPop_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.popup-box[data-v-10d79413] {\r\n min-height: 20vh;\r\n max-height: 40vh;\r\n overflow-y: auto;\n.checkbox-list[data-v-10d79413] {\r\n padding: 15px 25px;\n[data-v-10d79413] .van-checkbox__label {\r\n flex: 1;\r\n text-align: right;\n}\n}\n}\n.select-all-container[data-v-10d79413] {\r\n font-size: 14px;\r\n padding: 15px 25px 0 15px;\r\n margin: 10px 0;\r\n display: flex;\r\n justify-content: flex-end;\r\n align-items: center;\n}\n.select-all-container .van-checkbox[data-v-10d79413] {\r\n margin-left: auto;\n}\r\n\r\n/* \u65B0\u589E\uFF1A\u8C03\u6574\u65B9\u5F62\u590D\u9009\u6846\u7684\u8FB9\u8DDD */\n.van-checkbox--square[data-v-10d79413] {\r\n margin-left: 8px;\n}\r\n")();
16339
- const _hoisted_1$i = {
16339
+ const _hoisted_1$h = {
16340
16340
  class: "select-all-container"
16341
16341
  };
16342
16342
  const _hoisted_2$a = /* @__PURE__ */ createTextVNode("\u5168\u9009");
16343
16343
  const _hoisted_3$8 = {
16344
16344
  class: "checkbox-list"
16345
16345
  };
16346
- const _sfc_main$t = {
16346
+ const _sfc_main$r = {
16347
16347
  __name: "DataPop",
16348
16348
  props: {
16349
16349
  show: {
@@ -16390,7 +16390,7 @@ const _sfc_main$t = {
16390
16390
  position: "bottom",
16391
16391
  class: "popup-box"
16392
16392
  }, {
16393
- default: withCtx(() => [createElementVNode("div", _hoisted_1$i, [createVNode(_component_van_checkbox, {
16393
+ default: withCtx(() => [createElementVNode("div", _hoisted_1$h, [createVNode(_component_van_checkbox, {
16394
16394
  shape: "square",
16395
16395
  modelValue: data2.isAllChecked,
16396
16396
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => data2.isAllChecked = $event),
@@ -16424,12 +16424,12 @@ const _sfc_main$t = {
16424
16424
  };
16425
16425
  }
16426
16426
  };
16427
- var DataPop = /* @__PURE__ */ _export_sfc(_sfc_main$t, [["__scopeId", "data-v-10d79413"]]);
16427
+ var DataPop = /* @__PURE__ */ _export_sfc(_sfc_main$r, [["__scopeId", "data-v-10d79413"]]);
16428
16428
  var MultiPicker_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.data-item[data-v-95e8cb3c]{\r\n margin: 0 8px 8px 0;\r\n padding: 2px 5px;\n}\r\n")();
16429
- const _hoisted_1$h = {
16429
+ const _hoisted_1$g = {
16430
16430
  class: "data-list"
16431
16431
  };
16432
- const _sfc_main$s = {
16432
+ const _sfc_main$q = {
16433
16433
  __name: "MultiPicker",
16434
16434
  props: {
16435
16435
  id: String,
@@ -16542,7 +16542,7 @@ const _sfc_main$s = {
16542
16542
  _: 2
16543
16543
  }, [unref(selectOptions).length > 0 ? {
16544
16544
  name: "input",
16545
- fn: withCtx(() => [createElementVNode("div", _hoisted_1$h, [(openBlock(true), createElementBlock(Fragment, null, renderList(unref(selectOptions), (item, i) => {
16545
+ fn: withCtx(() => [createElementVNode("div", _hoisted_1$g, [(openBlock(true), createElementBlock(Fragment, null, renderList(unref(selectOptions), (item, i) => {
16546
16546
  return openBlock(), createBlock(_component_van_tag, {
16547
16547
  class: "data-item",
16548
16548
  closeable: !unref(isDisabled),
@@ -16565,9 +16565,9 @@ const _sfc_main$s = {
16565
16565
  };
16566
16566
  }
16567
16567
  };
16568
- var MultiPicker = /* @__PURE__ */ _export_sfc(_sfc_main$s, [["__scopeId", "data-v-95e8cb3c"]]);
16568
+ var MultiPicker = /* @__PURE__ */ _export_sfc(_sfc_main$q, [["__scopeId", "data-v-95e8cb3c"]]);
16569
16569
  var CheckGroup_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "[data-v-7f5a06de] .label {\n color: #000 !important;\n}\n[data-v-7f5a06de] .van-field__control:disabled {\n color: #000 !important;\n cursor: not-allowed;\n opacity: 1;\n -webkit-text-fill-color: #000;\n}")();
16570
- const _sfc_main$r = {
16570
+ const _sfc_main$p = {
16571
16571
  __name: "CheckGroup",
16572
16572
  props: {
16573
16573
  id: {
@@ -16691,8 +16691,8 @@ const _sfc_main$r = {
16691
16691
  };
16692
16692
  }
16693
16693
  };
16694
- var CheckGroup = /* @__PURE__ */ _export_sfc(_sfc_main$r, [["__scopeId", "data-v-7f5a06de"]]);
16695
- const _sfc_main$q = {
16694
+ var CheckGroup = /* @__PURE__ */ _export_sfc(_sfc_main$p, [["__scopeId", "data-v-7f5a06de"]]);
16695
+ const _sfc_main$o = {
16696
16696
  __name: "DatetimePop",
16697
16697
  props: {
16698
16698
  isShow: {
@@ -16974,7 +16974,7 @@ const _sfc_main$q = {
16974
16974
  };
16975
16975
  }
16976
16976
  };
16977
- const _sfc_main$p = {
16977
+ const _sfc_main$n = {
16978
16978
  __name: "index",
16979
16979
  props: {
16980
16980
  modelValue: {
@@ -17069,7 +17069,7 @@ const _sfc_main$p = {
17069
17069
  }, {
17070
17070
  input: withCtx(() => [createTextVNode(toDisplayString(formatTime(props.modelValue)), 1)]),
17071
17071
  _: 1
17072
- }, 8, ["modelValue", "label", "placeholder", "required", "rules", "is-link"])) : createCommentVNode("", true), createVNode(_sfc_main$q, {
17072
+ }, 8, ["modelValue", "label", "placeholder", "required", "rules", "is-link"])) : createCommentVNode("", true), createVNode(_sfc_main$o, {
17073
17073
  isShow: data2.isShow,
17074
17074
  "onUpdate:isShow": _cache[1] || (_cache[1] = ($event) => data2.isShow = $event),
17075
17075
  modelValue: unref(modelValue),
@@ -17082,7 +17082,7 @@ const _sfc_main$p = {
17082
17082
  }
17083
17083
  };
17084
17084
  var data_selector_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.popup-style[data-v-57cfd397] {\r\n height: 21.25rem;\n}\n.showMultipleButton[data-v-57cfd397] {\r\n padding-bottom: 0;\n}\n.showMultipleButton .van-button[data-v-57cfd397] {\r\n border: 0;\n}\n.flex-between[data-v-57cfd397] {\r\n padding: 10px;\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\n}\n.bold[data-v-57cfd397] {\r\n font-weight: bold;\r\n color: #444;\n}\n.checkbox-style[data-v-57cfd397] {\r\n /* height: 220px; */\r\n height: calc(220px - 30px); \r\n overflow-y: auto;\n}\n.select-all-container[data-v-57cfd397] {\r\n font-size: 14px;\r\n padding: 0 16px;\r\n margin: 10px 0;\r\n display: flex;\r\n justify-content: flex-end;\r\n align-items: center;\n}\n.select-all-container .van-checkbox[data-v-57cfd397] {\r\n margin-left: auto;\n}\r\n\r\n/* \u65B0\u589E\uFF1A\u8C03\u6574\u65B9\u5F62\u590D\u9009\u6846\u7684\u8FB9\u8DDD */\n.van-checkbox--square[data-v-57cfd397] {\r\n margin-left: 8px;\n}\r\n \r\n")();
17085
- const _hoisted_1$g = {
17085
+ const _hoisted_1$f = {
17086
17086
  class: "pad10 flex-between showMultipleButton"
17087
17087
  };
17088
17088
  const _hoisted_2$9 = /* @__PURE__ */ createTextVNode("\u53D6\u6D88");
@@ -17098,7 +17098,7 @@ const _hoisted_6$6 = /* @__PURE__ */ createTextVNode("\u5168\u9009");
17098
17098
  const _hoisted_7$6 = {
17099
17099
  class: "checkbox-style"
17100
17100
  };
17101
- const _sfc_main$o = {
17101
+ const _sfc_main$m = {
17102
17102
  __name: "data_selector",
17103
17103
  props: {
17104
17104
  mode: {
@@ -17285,7 +17285,7 @@ const _sfc_main$o = {
17285
17285
  position: "bottom",
17286
17286
  class: "popup-style"
17287
17287
  }, {
17288
- default: withCtx(() => [createElementVNode("div", null, [createElementVNode("div", _hoisted_1$g, [createVNode(_component_van_button, {
17288
+ default: withCtx(() => [createElementVNode("div", null, [createElementVNode("div", _hoisted_1$f, [createVNode(_component_van_button, {
17289
17289
  plain: "",
17290
17290
  size: "normal",
17291
17291
  onClick: cancelSelection
@@ -17373,16 +17373,16 @@ const _sfc_main$o = {
17373
17373
  };
17374
17374
  }
17375
17375
  };
17376
- var DataSelector = /* @__PURE__ */ _export_sfc(_sfc_main$o, [["__scopeId", "data-v-57cfd397"]]);
17376
+ var DataSelector = /* @__PURE__ */ _export_sfc(_sfc_main$m, [["__scopeId", "data-v-57cfd397"]]);
17377
17377
  var mult_list_selector_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\r\n/* // \u4FEE\u6539 confirmation-group \u548C confirmation-item \u7684\u6837\u5F0F */\n.confirmation-group[data-v-40a09897] {\r\n padding: 0 16px;\r\n --van-checkbox-disabled-icon-color: black;\n}\n.confirmation-item[data-v-40a09897] {\r\n padding: 12px 16px;\r\n margin: 0 -16px;\r\n border-bottom: 1px solid #f5f5f5;\r\n /* \u7981\u7528\u72B6\u6001\u6837\u5F0F */\n}\r\n\r\n/* // \u5728\u4E0B\u65B9\u6DFB\u52A0\u5A92\u4F53\u67E5\u8BE2\u9002\u914D\u5C0F\u5C4F\u5E55 */\n@media (max-width: 320px) {\n.confirmation-item[data-v-40a09897] {\r\n padding: 12px 8px;\r\n margin: 0 -8px;\n}\n}\n.confirmation-item[data-v-40a09897]:last-child {\r\n border-bottom: none;\n}\r\n\r\n/* \u65B0\u589E\u6837\u5F0F */\n.confirmation-tips[data-v-40a09897] {\r\n padding: 12px 16px;\r\n background: #f0faff;\r\n border-radius: 8px;\r\n margin: 10px 16px;\r\n display: flex;\r\n align-items: center;\r\n color: #1989fa;\r\n font-size: 13px;\r\n border: 1px solid #d9efff;\n}\n.confirmation-tips .van-icon[data-v-40a09897] {\r\n margin-right: 8px;\n}\r\n\r\n/* \u65B0\u589E\u5B57\u4F53\u7EE7\u627F\u6837\u5F0F */\n.confirmation-group[data-v-40a09897] {\r\n font-size: inherit; /* \u7EE7\u627F\u7236\u7EA7\u5B57\u4F53\u5927\u5C0F */\n}\n.option-text[data-v-40a09897] {\r\n font-size: 14px; /* \u660E\u786E\u6307\u5B9A\u5B57\u4F53\u5927\u5C0F */\r\n line-height: 1.5; /* \u4FDD\u6301\u884C\u9AD8\u4E00\u81F4 */\r\n /* color:black; */\n}\r\n\r\n/* \u9002\u914D\u79FB\u52A8\u7AEF\u7684\u5B57\u4F53\u8C03\u6574 */\n@media (max-width: 375px) {\n.option-text[data-v-40a09897] {\r\n font-size: 13px;\n}\n}\r\n\r\n/* \u65B0\u589E\u7981\u7528\u72B6\u6001\u6837\u5F0F */\n.custom-checkbox[data-v-40a09897]:disabled .--van-checkbox__icon {\r\n background-color: #f5f5f5;\r\n border-color: #ebedf0;\r\n transition: all 0.3s;\n}\n.custom-checkbox[data-v-40a09897]:disabled .van-checkbox__icon--checked {\r\n background-color: #1989fa;\r\n border-color: #1989fa;\r\n opacity: 0.7;\n}\n.van-checkbox--disabled[data-v-40a09897] .option-text {\r\n color: #969799;\n}\n.van-checkbox--disabled.van-checkbox--checked[data-v-40a09897] .option-text {\r\n color: #1989fa;\r\n opacity: 0.8;\n}\r\n")();
17378
- const _hoisted_1$f = {
17378
+ const _hoisted_1$e = {
17379
17379
  key: 0,
17380
17380
  class: "confirmation-tips"
17381
17381
  };
17382
17382
  const _hoisted_2$8 = {
17383
17383
  class: "option-text"
17384
17384
  };
17385
- const _sfc_main$n = {
17385
+ const _sfc_main$l = {
17386
17386
  __name: "mult_list_selector",
17387
17387
  props: {
17388
17388
  options: {
@@ -17417,7 +17417,7 @@ const _sfc_main$n = {
17417
17417
  const _component_van_icon = resolveComponent("van-icon");
17418
17418
  const _component_van_checkbox = resolveComponent("van-checkbox");
17419
17419
  const _component_van_checkbox_group = resolveComponent("van-checkbox-group");
17420
- return openBlock(), createElementBlock(Fragment, null, [__props.tips && __props.tips.length > 0 ? (openBlock(), createElementBlock("div", _hoisted_1$f, [createVNode(_component_van_icon, {
17420
+ return openBlock(), createElementBlock(Fragment, null, [__props.tips && __props.tips.length > 0 ? (openBlock(), createElementBlock("div", _hoisted_1$e, [createVNode(_component_van_icon, {
17421
17421
  name: "info",
17422
17422
  color: "#1989fa"
17423
17423
  }), createElementVNode("span", null, toDisplayString(__props.tips), 1)])) : createCommentVNode("", true), createVNode(_component_van_checkbox_group, {
@@ -17447,139 +17447,7 @@ const _sfc_main$n = {
17447
17447
  };
17448
17448
  }
17449
17449
  };
17450
- var MultListSelector = /* @__PURE__ */ _export_sfc(_sfc_main$n, [["__scopeId", "data-v-40a09897"]]);
17451
- var product_selector_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.project-selector[data-v-dbc5bf54] {\n[data-v-dbc5bf54] .van-cell {\r\n align-items: center;\n}\n[data-v-dbc5bf54] .van-field__label {\r\n width: 90px;\r\n flex: none;\n}\n.readonly-field[data-v-dbc5bf54] {\n[data-v-dbc5bf54] .van-field__control {\r\n color: #323233;\r\n /* \u4FEE\u6539\u6587\u5B57\u989C\u8272\u4E0E\u666E\u901A\u5B57\u6BB5\u4E00\u81F4 */\r\n padding-right: 16px;\n}\r\n\r\n /* \u6DFB\u52A0\u5FC5\u586B\u661F\u53F7\u5BF9\u9F50 */\n&.van-field--required[data-v-dbc5bf54] {\n[data-v-dbc5bf54] .van-field__label::before {\r\n margin-right: 4px;\n}\n}\n}\r\n\r\n /* \u7EDF\u4E00\u5B57\u6BB5\u95F4\u8DDD */\n.readonly-field[data-v-dbc5bf54] {\r\n margin: 4px 0;\n}\n}\r\n")();
17452
- const _hoisted_1$e = {
17453
- class: "project-selector"
17454
- };
17455
- const _sfc_main$m = {
17456
- __name: "product_selector",
17457
- props: {
17458
- modelValue: {
17459
- type: Object,
17460
- default: () => ({
17461
- productName: "",
17462
- productCode: ""
17463
- })
17464
- },
17465
- required: {
17466
- type: Boolean,
17467
- default: true
17468
- },
17469
- readonly: {
17470
- type: Boolean,
17471
- default: false
17472
- },
17473
- rules: {
17474
- type: Array,
17475
- default: () => []
17476
- }
17477
- },
17478
- emits: ["update:modelValue"],
17479
- setup(__props, {
17480
- emit
17481
- }) {
17482
- const props = __props;
17483
- const productListCache = {
17484
- data: ref([]),
17485
- loading: ref(false),
17486
- error: ref(null)
17487
- };
17488
- const productOptions = ref([]);
17489
- const selectedProjectCode = ref("");
17490
- const projectCode = ref("");
17491
- const fetchProducts = () => __async(this, null, function* () {
17492
- try {
17493
- if (productListCache.data.value.length > 0)
17494
- return;
17495
- if (productListCache.loading.value)
17496
- return;
17497
- productListCache.loading.value = true;
17498
- const response = yield util.project_list({
17499
- limit: 999,
17500
- page: 0
17501
- });
17502
- if (response.code === 200) {
17503
- productListCache.data.value = response.data.list.map((item) => ({
17504
- text: item.name,
17505
- value: item.projectCode
17506
- }));
17507
- }
17508
- } catch (error) {
17509
- productListCache.error.value = error;
17510
- console.error("\u83B7\u53D6\u4EA7\u54C1\u5217\u8868\u5931\u8D25:", error);
17511
- } finally {
17512
- productListCache.loading.value = false;
17513
- }
17514
- });
17515
- const handleProjectChange = (value) => {
17516
- const selectedProduct = productOptions.value.find((item) => item.value === value);
17517
- if (selectedProduct) {
17518
- emit("update:modelValue", {
17519
- productName: selectedProduct.text,
17520
- productCode: value
17521
- });
17522
- projectCode.value = value;
17523
- }
17524
- };
17525
- watch(() => props.modelValue, (newVal) => {
17526
- if (productOptions.value.length > 0 && newVal.productCode !== selectedProjectCode.value) {
17527
- selectedProjectCode.value = newVal.productCode;
17528
- projectCode.value = newVal.productCode;
17529
- }
17530
- }, {
17531
- deep: true,
17532
- immediate: true
17533
- });
17534
- watch(productOptions, (newOptions) => {
17535
- if (props.modelValue.productCode && newOptions.length > 0) {
17536
- const exists = newOptions.some((opt) => opt.value === props.modelValue.productCode);
17537
- if (exists) {
17538
- selectedProjectCode.value = props.modelValue.productCode;
17539
- projectCode.value = props.modelValue.productCode;
17540
- }
17541
- }
17542
- });
17543
- onMounted(() => __async(this, null, function* () {
17544
- if (productListCache.data.value.length === 0) {
17545
- yield fetchProducts();
17546
- productOptions.value = [...productListCache.data.value];
17547
- } else {
17548
- productOptions.value = [...productListCache.data.value];
17549
- }
17550
- nextTick(() => {
17551
- if (props.modelValue.productCode) {
17552
- selectedProjectCode.value = props.modelValue.productCode;
17553
- projectCode.value = props.modelValue.productCode;
17554
- }
17555
- });
17556
- }));
17557
- return (_ctx, _cache) => {
17558
- const _component_van_field = resolveComponent("van-field");
17559
- return openBlock(), createElementBlock("div", _hoisted_1$e, [createVNode(DataSelector, {
17560
- modelValue: selectedProjectCode.value,
17561
- "onUpdate:modelValue": [_cache[0] || (_cache[0] = ($event) => selectedProjectCode.value = $event), handleProjectChange],
17562
- label: "\u4EA7\u54C1\u540D\u79F0",
17563
- placeholder: "\u8BF7\u9009\u62E9\u4EA7\u54C1",
17564
- mode: "single",
17565
- options: productOptions.value,
17566
- class: "selector-field",
17567
- required: props.required,
17568
- rules: props.rules,
17569
- readonly: props.readonly
17570
- }, null, 8, ["modelValue", "options", "required", "rules", "readonly"]), createVNode(_component_van_field, {
17571
- modelValue: projectCode.value,
17572
- "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => projectCode.value = $event),
17573
- label: "\u4EA7\u54C1\u7F16\u53F7",
17574
- placeholder: "\u7CFB\u7EDF\u81EA\u52A8\u586B\u5165",
17575
- readonly: "",
17576
- class: "readonly-field",
17577
- required: props.required
17578
- }, null, 8, ["modelValue", "required"])]);
17579
- };
17580
- }
17581
- };
17582
- var ProductSelector = /* @__PURE__ */ _export_sfc(_sfc_main$m, [["__scopeId", "data-v-dbc5bf54"]]);
17450
+ var MultListSelector = /* @__PURE__ */ _export_sfc(_sfc_main$l, [["__scopeId", "data-v-40a09897"]]);
17583
17451
  var subdepartment_selector_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.department-popup[data-v-73eb43f3] {\r\n width: 100%;\r\n height: 60vh;\r\n border-radius: 16px 16px 0 0;\n}\n.popup-container[data-v-73eb43f3] {\r\n display: flex;\r\n flex-direction: column;\r\n flex: 1;\r\n height: 100%;\n}\n.picker-header[data-v-73eb43f3] {\r\n display: flex;\r\n align-items: center;\r\n padding: 12px;\r\n border-bottom: 1px solid #ebedf0;\r\n gap: 8px;\r\n background: #fff;\r\n /* flex-shrink: 0; */\r\n position: sticky;\r\n top: 0;\r\n z-index: 999;\r\n height: 56px;\r\n /* \u56FA\u5B9A\u5934\u90E8\u9AD8\u5EA6 */\r\n flex-shrink: 0;\r\n /* \u9632\u6B62\u5934\u90E8\u88AB\u538B\u7F29 */\n}\n.scroll-container[data-v-73eb43f3] {\r\n flex: 1;\r\n height: 0;\r\n overflow-y: auto;\r\n -webkit-overflow-scrolling: touch;\r\n /* height: calc(80vh - 170px); */\r\n /* \u8BA1\u7B97\u65B9\u5F0F\uFF1A\u603B\u9AD8\u5EA6(80vh) - \u5934\u90E8\u9AD8\u5EA6(56px) - \u641C\u7D22\u6846\u9AD8\u5EA6(52px) */\r\n position: relative;\r\n top: -1px;\n}\n.back-button[data-v-73eb43f3] {\r\n margin-right: 8px;\n}\n.current-path[data-v-73eb43f3] {\r\n flex: 1;\r\n font-size: 14px;\r\n color: #323233;\r\n white-space: nowrap;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\n}\n.action-buttons[data-v-73eb43f3] {\r\n display: flex;\r\n gap: 8px;\r\n margin-left: auto;\n}\r\n\r\n/* .scroll-container {\r\n flex: 1;\r\n overflow-y: auto;\r\n -webkit-overflow-scrolling: touch;\r\n} */\n.cell-content[data-v-73eb43f3] {\r\n display: flex;\r\n align-items: center;\r\n gap: 12px;\n}\n.circle-selector[data-v-73eb43f3] {\r\n width: 20px;\r\n height: 20px;\r\n border: 1px solid #ebedf0;\r\n border-radius: 50%;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n transition: all 0.2s;\r\n flex-shrink: 0;\n}\n.circle-selector.selected[data-v-73eb43f3] {\r\n background-color: #1989fa;\r\n border-color: #1989fa;\n}\n.circle-selector.selected .van-icon[data-v-73eb43f3] {\r\n color: white;\r\n font-size: 14px;\n}\n.van-cell__right-icon[data-v-73eb43f3] {\r\n color: #969799;\r\n font-size: 16px;\r\n margin-left: 8px;\n}\n.name[data-v-73eb43f3] {\r\n flex: 1;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\n}\n.cancel-btn[data-v-73eb43f3] {\r\n color: #969799;\n}\n.search-field[data-v-73eb43f3] {\r\n background: #fff;\r\n padding: 10px 16px;\r\n border-bottom: 1px solid #ebedf0;\r\n position: sticky;\r\n top: 0;\r\n z-index: 999;\r\n margin-bottom: 10px;\r\n flex-shrink: 0;\r\n /* \u9632\u6B62\u538B\u7F29 */\n}\r\n")();
17584
17452
  const _hoisted_1$d = {
17585
17453
  class: "department-selector"
@@ -17608,7 +17476,7 @@ const _hoisted_10$2 = ["onClick"];
17608
17476
  const _hoisted_11$2 = {
17609
17477
  class: "name"
17610
17478
  };
17611
- const _sfc_main$l = {
17479
+ const _sfc_main$k = {
17612
17480
  __name: "subdepartment_selector",
17613
17481
  props: {
17614
17482
  modelValue: [String, Number],
@@ -17939,7 +17807,7 @@ const _sfc_main$l = {
17939
17807
  };
17940
17808
  }
17941
17809
  };
17942
- var SubdepartmentSelector = /* @__PURE__ */ _export_sfc(_sfc_main$l, [["__scopeId", "data-v-73eb43f3"]]);
17810
+ var SubdepartmentSelector = /* @__PURE__ */ _export_sfc(_sfc_main$k, [["__scopeId", "data-v-73eb43f3"]]);
17943
17811
  var user_selector_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.user-popup[data-v-6c4b4fc8] {\r\n height: 60vh;\r\n width: 100%;\n}\n.picker-header[data-v-6c4b4fc8] {\r\n padding: 10px;\r\n border-bottom: 1px solid #ebedf0;\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\n}\n.scroll-container[data-v-6c4b4fc8] {\r\n height: calc(80vh - 150px);\r\n overflow-y: auto;\n}\n.search-container[data-v-6c4b4fc8] {\r\n padding: 10px;\r\n background: #fff;\r\n display: flex;\r\n align-items: center;\r\n gap: 8px;\n}\n[data-v-6c4b4fc8] .search-container .van-search {\r\n flex: 1;\n}\n.search-btn[data-v-6c4b4fc8] {\r\n flex-shrink: 0;\n}\n.select-all-container[data-v-6c4b4fc8] {\r\n font-size: 14px;\r\n padding: 0 16px;\r\n margin: 10px 0;\r\n display: flex;\r\n justify-content: flex-end;\r\n align-items: center;\n}\n[data-v-6c4b4fc8] .van-checkbox__icon--square {\r\n border-radius: 4px;\n}\n[data-v-6c4b4fc8] .van-checkbox__label {\r\n margin-left: 8px;\n}\n[data-v-6c4b4fc8] .van-radio-group .van-cell,[data-v-6c4b4fc8] .van-checkbox-group .van-cell {\r\n align-items: center;\n}\n.current-path[data-v-6c4b4fc8] {\r\n flex: 1;\r\n font-size: 14px;\r\n color: #323233;\r\n white-space: nowrap;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\n}\n.header-right[data-v-6c4b4fc8] {\r\n display: flex;\r\n gap: 8px;\r\n margin-left: auto;\n}\n.cancel-btn[data-v-6c4b4fc8] {\r\n color: #969799;\r\n margin-right: 5px;\n}\r\n")();
17944
17812
  const _hoisted_1$c = {
17945
17813
  class: "user-selector"
@@ -17973,7 +17841,7 @@ const _hoisted_12 = /* @__PURE__ */ createTextVNode("\u641C\u7D22");
17973
17841
  const _hoisted_13 = {
17974
17842
  class: "scroll-container"
17975
17843
  };
17976
- const _sfc_main$k = {
17844
+ const _sfc_main$j = {
17977
17845
  __name: "user_selector",
17978
17846
  props: {
17979
17847
  modelValue: [Array, String, Number],
@@ -18467,12 +18335,12 @@ const _sfc_main$k = {
18467
18335
  };
18468
18336
  }
18469
18337
  };
18470
- var UserSelector = /* @__PURE__ */ _export_sfc(_sfc_main$k, [["__scopeId", "data-v-6c4b4fc8"]]);
18338
+ var UserSelector = /* @__PURE__ */ _export_sfc(_sfc_main$j, [["__scopeId", "data-v-6c4b4fc8"]]);
18471
18339
  var image_picker_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "[data-v-7a64f836] .label {\n color: #000 !important;\n}\n[data-v-7a64f836] .van-field__control:disabled {\n color: #000 !important;\n cursor: not-allowed;\n opacity: 1;\n -webkit-text-fill-color: #000;\n}")();
18472
18340
  const _hoisted_1$b = {
18473
18341
  class: "image-box"
18474
18342
  };
18475
- const _sfc_main$j = {
18343
+ const _sfc_main$i = {
18476
18344
  __name: "image_picker",
18477
18345
  props: {
18478
18346
  modelValue: {
@@ -18579,12 +18447,12 @@ const _sfc_main$j = {
18579
18447
  };
18580
18448
  }
18581
18449
  };
18582
- var ImagePicker = /* @__PURE__ */ _export_sfc(_sfc_main$j, [["__scopeId", "data-v-7a64f836"]]);
18450
+ var ImagePicker = /* @__PURE__ */ _export_sfc(_sfc_main$i, [["__scopeId", "data-v-7a64f836"]]);
18583
18451
  var images_picker_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => ".widget[data-v-d659bcb6] {\n text-align: center;\n}\n.widget .btn[data-v-d659bcb6] {\n position: fixed;\n bottom: 1rem;\n left: 0;\n right: 0;\n margin: auto auto;\n color: white;\n font-size: 14px;\n background: rgb(58, 136, 255);\n padding: 8px 35px;\n width: 100px;\n text-align: center;\n display: inline-block;\n border-radius: 2px;\n}")();
18584
18452
  const _hoisted_1$a = {
18585
18453
  class: "image-box"
18586
18454
  };
18587
- const _sfc_main$i = {
18455
+ const _sfc_main$h = {
18588
18456
  __name: "images_picker",
18589
18457
  props: {
18590
18458
  modelValue: {
@@ -18705,12 +18573,12 @@ const _sfc_main$i = {
18705
18573
  };
18706
18574
  }
18707
18575
  };
18708
- var ImagesPicker = /* @__PURE__ */ _export_sfc(_sfc_main$i, [["__scopeId", "data-v-d659bcb6"]]);
18576
+ var ImagesPicker = /* @__PURE__ */ _export_sfc(_sfc_main$h, [["__scopeId", "data-v-d659bcb6"]]);
18709
18577
  var FilePicker_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "[data-v-78f50d19] .label {\n color: #000 !important;\n}\n[data-v-78f50d19] .van-field__control:disabled {\n color: #000 !important;\n cursor: not-allowed;\n opacity: 1;\n -webkit-text-fill-color: #000;\n}")();
18710
18578
  const _hoisted_1$9 = {
18711
18579
  class: "image-box"
18712
18580
  };
18713
- const _sfc_main$h = {
18581
+ const _sfc_main$g = {
18714
18582
  __name: "FilePicker",
18715
18583
  props: {
18716
18584
  modelValue: {
@@ -18819,7 +18687,7 @@ const _sfc_main$h = {
18819
18687
  };
18820
18688
  }
18821
18689
  };
18822
- var FilePicker = /* @__PURE__ */ _export_sfc(_sfc_main$h, [["__scopeId", "data-v-78f50d19"]]);
18690
+ var FilePicker = /* @__PURE__ */ _export_sfc(_sfc_main$g, [["__scopeId", "data-v-78f50d19"]]);
18823
18691
  var SingleUserSelector_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.user-popup[data-v-a489ca4c] {\r\n width: 100%;\r\n overflow: hidden;\n}\n.department-selector[data-v-a489ca4c] {\r\n padding: 10px;\n}\n.search-buttons[data-v-a489ca4c] {\r\n display: flex;\r\n gap: 10px;\n}\n.clear-btn[data-v-a489ca4c] {\r\n background-color: #f2f3f5;\r\n border: none;\r\n border-radius: 4px;\r\n padding: 4px 8px;\r\n font-size: 14px;\n}\n.confirm-btn[data-v-a489ca4c] {\r\n background-color: #1989fa;\r\n color: white;\r\n border: none;\r\n border-radius: 4px;\r\n padding: 4px 8px;\r\n font-size: 14px;\n}\n.no-results[data-v-a489ca4c] {\r\n text-align: center;\r\n padding: 20px;\r\n color: #969799;\n}\n.picker-header[data-v-a489ca4c] {\r\n padding: 10px;\r\n border-bottom: 1px solid #ebedf0;\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\n}\n.current-path[data-v-a489ca4c] {\r\n flex: 1;\r\n font-size: 14px;\r\n color: #323233;\r\n white-space: nowrap;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\n}\n.header-right[data-v-a489ca4c] {\r\n display: flex;\r\n gap: 8px;\r\n margin-left: auto;\n}\n.cancel-btn[data-v-a489ca4c] {\r\n color: #969799;\r\n margin-right: 5px;\n}\n.scroll-container[data-v-a489ca4c] {\r\n height: calc(80vh - 150px);\r\n overflow-y: auto;\n}\r\n")();
18824
18692
  const _hoisted_1$8 = {
18825
18693
  class: "department-selector"
@@ -18841,7 +18709,7 @@ const _hoisted_7$3 = /* @__PURE__ */ createTextVNode("\u786E\u5B9A");
18841
18709
  const _hoisted_8$3 = {
18842
18710
  class: "scroll-container"
18843
18711
  };
18844
- const _sfc_main$g = {
18712
+ const _sfc_main$f = {
18845
18713
  __name: "SingleUserSelector",
18846
18714
  props: {
18847
18715
  modelValue: {
@@ -19175,7 +19043,7 @@ const _sfc_main$g = {
19175
19043
  };
19176
19044
  }
19177
19045
  };
19178
- var SingleUserSelector = /* @__PURE__ */ _export_sfc(_sfc_main$g, [["__scopeId", "data-v-a489ca4c"]]);
19046
+ var SingleUserSelector = /* @__PURE__ */ _export_sfc(_sfc_main$f, [["__scopeId", "data-v-a489ca4c"]]);
19179
19047
  var UserPop_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.user-popup[data-v-78c036bd] {\r\n width: 100%;\r\n overflow: hidden;\n}\n.department-selector[data-v-78c036bd] {\r\n padding: 10px;\n}\n.search-buttons[data-v-78c036bd] {\r\n display: flex;\r\n gap: 10px;\n}\n.clear-btn[data-v-78c036bd] {\r\n background-color: #f2f3f5;\r\n border: none;\r\n border-radius: 4px;\r\n padding: 4px 8px;\r\n font-size: 14px;\n}\n.confirm-btn[data-v-78c036bd] {\r\n background-color: #1989fa;\r\n color: white;\r\n border: none;\r\n border-radius: 4px;\r\n padding: 4px 8px;\r\n font-size: 14px;\n}\n.no-results[data-v-78c036bd] {\r\n text-align: center;\r\n padding: 20px;\r\n color: #969799;\n}\n.picker-header[data-v-78c036bd] {\r\n padding: 10px;\r\n border-bottom: 1px solid #ebedf0;\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\n}\n.current-path[data-v-78c036bd] {\r\n flex: 1;\r\n font-size: 14px;\r\n color: #323233;\r\n white-space: nowrap;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\n}\n.header-right[data-v-78c036bd] {\r\n display: flex;\r\n gap: 8px;\r\n margin-left: auto;\n}\n.cancel-btn[data-v-78c036bd] {\r\n color: #969799;\r\n margin-right: 5px;\n}\n.scroll-container[data-v-78c036bd] {\r\n height: calc(80vh - 150px);\r\n overflow-y: auto;\n}\r\n")();
19180
19048
  const _hoisted_1$7 = {
19181
19049
  class: "department-selector"
@@ -19197,7 +19065,7 @@ const _hoisted_7$2 = /* @__PURE__ */ createTextVNode("\u786E\u5B9A");
19197
19065
  const _hoisted_8$2 = {
19198
19066
  class: "scroll-container"
19199
19067
  };
19200
- const _sfc_main$f = {
19068
+ const _sfc_main$e = {
19201
19069
  __name: "UserPop",
19202
19070
  props: {
19203
19071
  show: {
@@ -19447,12 +19315,12 @@ const _sfc_main$f = {
19447
19315
  };
19448
19316
  }
19449
19317
  };
19450
- var UserPop = /* @__PURE__ */ _export_sfc(_sfc_main$f, [["__scopeId", "data-v-78c036bd"]]);
19318
+ var UserPop = /* @__PURE__ */ _export_sfc(_sfc_main$e, [["__scopeId", "data-v-78c036bd"]]);
19451
19319
  var UsersPicker_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.user-item[data-v-4022cd82]{\r\n margin:3px;\n}\r\n")();
19452
19320
  const _hoisted_1$6 = {
19453
19321
  class: "user-list"
19454
19322
  };
19455
- const _sfc_main$e = {
19323
+ const _sfc_main$d = {
19456
19324
  __name: "UsersPicker",
19457
19325
  props: {
19458
19326
  modelValue: {
@@ -19574,9 +19442,9 @@ const _sfc_main$e = {
19574
19442
  };
19575
19443
  }
19576
19444
  };
19577
- var UsersPicker = /* @__PURE__ */ _export_sfc(_sfc_main$e, [["__scopeId", "data-v-4022cd82"]]);
19445
+ var UsersPicker = /* @__PURE__ */ _export_sfc(_sfc_main$d, [["__scopeId", "data-v-4022cd82"]]);
19578
19446
  var UserPicker_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.user[data-v-58929b5a]{\r\n padding:4px 8px;\n}\r\n")();
19579
- const _sfc_main$d = {
19447
+ const _sfc_main$c = {
19580
19448
  __name: "UserPicker",
19581
19449
  props: {
19582
19450
  modelValue: {
@@ -19690,7 +19558,7 @@ const _sfc_main$d = {
19690
19558
  };
19691
19559
  }
19692
19560
  };
19693
- var UserPicker = /* @__PURE__ */ _export_sfc(_sfc_main$d, [["__scopeId", "data-v-58929b5a"]]);
19561
+ var UserPicker = /* @__PURE__ */ _export_sfc(_sfc_main$c, [["__scopeId", "data-v-58929b5a"]]);
19694
19562
  var UserProfile_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.widget[data-v-5ebf8c56] {\r\n position: relative;\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n justify-content: space-around;\r\n padding: 20px;\r\n background: linear-gradient(to right, #4a90e2, #87ceeb);\r\n border-radius: 10px;\r\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);\n.user-avatar[data-v-5ebf8c56] {\r\n margin-bottom: 15px;\n}\n.user-info[data-v-5ebf8c56] {\r\n display: flex;\r\n align-items: center;\r\n justify-content: space-around;\r\n margin-bottom: 15px;\n.user-info-item[data-v-5ebf8c56] {\r\n font-size: 16px;\r\n line-height: 22px;\r\n color: #fff;\r\n text-align: center;\r\n padding: 0 3px;\n}\n}\n.space[data-v-5ebf8c56] {\r\n min-height: 10px;\r\n flex: 1;\n}\r\n\r\n /* \u6DFB\u52A0\u9000\u51FA\u6309\u94AE\u6837\u5F0F */\n.logout-button[data-v-5ebf8c56] {\r\n width: 70px;\r\n height: 30px;\r\n position: absolute;\r\n top: 20px;\r\n right: 20px;\r\n background-color: rgba(255, 255, 255, 0.2);\r\n color: white;\r\n border: none;\r\n border-radius: 15px;\r\n padding: 5px 15px;\r\n cursor: pointer;\r\n font-size: 14px;\r\n transition: background-color 0.3s;\n}\n.logout-button[data-v-5ebf8c56]:hover {\r\n background-color: rgba(255, 255, 255, 0.4);\n}\n.user-jobs[data-v-5ebf8c56] {\r\n display: flex;\r\n justify-content: center;\r\n gap: 15px;\r\n width: 100%;\r\n max-width: 300px;\n.job-item[data-v-5ebf8c56] {\r\n padding: 5px 10px;\r\n background-color: rgba(255, 255, 255, 0.2);\r\n border-radius: 20px;\r\n font-size: 12px;\r\n color: #fff;\n}\n}\n}\r\n")();
19695
19563
  const _hoisted_1$5 = {
19696
19564
  class: "widget"
@@ -19714,7 +19582,7 @@ const _hoisted_7$1 = {
19714
19582
  class: "user-jobs"
19715
19583
  };
19716
19584
  const _hoisted_8$1 = /* @__PURE__ */ createTextVNode(" \u6CE8\u9500 ");
19717
- const _sfc_main$c = {
19585
+ const _sfc_main$b = {
19718
19586
  __name: "UserProfile",
19719
19587
  emits: ["logout"],
19720
19588
  setup(__props, {
@@ -19768,103 +19636,9 @@ const _sfc_main$c = {
19768
19636
  };
19769
19637
  }
19770
19638
  };
19771
- var UserProfile = /* @__PURE__ */ _export_sfc(_sfc_main$c, [["__scopeId", "data-v-5ebf8c56"]]);
19772
- var ProjectPicker_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => '@charset "UTF-8";\n.widget[data-v-47f94e12] {\n /* \u7EDF\u4E00\u5B57\u6BB5\u95F4\u8DDD */\n}\n.widget[data-v-47f94e12] .van-cell {\n align-items: center;\n}\n.widget[data-v-47f94e12] .van-field__label {\n width: 90px;\n flex: none;\n}\n.widget .readonly-field[data-v-47f94e12] {\n /* \u6DFB\u52A0\u5FC5\u586B\u661F\u53F7\u5BF9\u9F50 */\n}\n.widget .readonly-field[data-v-47f94e12] .van-field__control {\n color: #323233;\n /* \u4FEE\u6539\u6587\u5B57\u989C\u8272\u4E0E\u666E\u901A\u5B57\u6BB5\u4E00\u81F4 */\n padding-right: 16px;\n}\n.widget .readonly-field.van-field--required[data-v-47f94e12] .van-field__label::before {\n margin-right: 4px;\n}\n.widget .readonly-field[data-v-47f94e12] {\n margin: 4px 0;\n}')();
19773
- const _hoisted_1$4 = {
19774
- class: "widget"
19775
- };
19776
- const _sfc_main$b = {
19777
- __name: "ProjectPicker",
19778
- props: {
19779
- modelValue: {
19780
- type: String,
19781
- default: null
19782
- },
19783
- required: {
19784
- type: Boolean,
19785
- default: true
19786
- },
19787
- label: {
19788
- type: String,
19789
- default: ""
19790
- },
19791
- placeholder: {
19792
- type: String,
19793
- default: "\u8BF7\u9009\u62E9\u9879\u76EE"
19794
- },
19795
- readonly: {
19796
- type: Boolean,
19797
- default: false
19798
- },
19799
- rules: {
19800
- type: Array,
19801
- default: () => []
19802
- },
19803
- auth: {
19804
- type: String,
19805
- default: ""
19806
- },
19807
- maxStage: {
19808
- type: String,
19809
- default: ""
19810
- }
19811
- },
19812
- emits: ["update:modelValue", "select"],
19813
- setup(__props, {
19814
- emit
19815
- }) {
19816
- const props = __props;
19817
- const {
19818
- isRequired,
19819
- isReadonly,
19820
- isGone,
19821
- isDisabled
19822
- } = util.props2auth(props);
19823
- const data2 = reactive({
19824
- options: []
19825
- });
19826
- const modelValue = useVModel(props, "modelValue", emit);
19827
- const query = () => __async(this, null, function* () {
19828
- let params = {
19829
- isBasic: true,
19830
- limit: 99999,
19831
- page: 1
19832
- };
19833
- if (props.maxStage)
19834
- params.maxStage = props.maxStage;
19835
- const res = yield util.project_list(params);
19836
- data2.options = res.data.list.map((item) => ({
19837
- text: `${item.projectCode}/${item.name}`,
19838
- value: item.id
19839
- }));
19840
- });
19841
- const onSelect = (item) => {
19842
- emit("select", item);
19843
- };
19844
- onMounted(() => __async(this, null, function* () {
19845
- query();
19846
- }));
19847
- return (_ctx, _cache) => {
19848
- return openBlock(), createElementBlock("div", _hoisted_1$4, [!unref(isGone) ? (openBlock(), createBlock(DataSelector, {
19849
- key: 0,
19850
- modelValue: unref(modelValue),
19851
- "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => isRef(modelValue) ? modelValue.value = $event : null),
19852
- label: props.label,
19853
- required: unref(isRequired),
19854
- rules: props.rules,
19855
- disabled: unref(isDisabled),
19856
- readonly: unref(isReadonly),
19857
- mode: "single",
19858
- options: data2.options,
19859
- class: "selector-field",
19860
- onSelect
19861
- }, null, 8, ["modelValue", "label", "required", "rules", "disabled", "readonly", "options"])) : createCommentVNode("", true)]);
19862
- };
19863
- }
19864
- };
19865
- var ProjectPicker = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["__scopeId", "data-v-47f94e12"]]);
19639
+ var UserProfile = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["__scopeId", "data-v-5ebf8c56"]]);
19866
19640
  var BillCard_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => ".widget[data-v-68bdd6bc] {\n background-color: white;\n border-radius: 8px;\n box-shadow: var(--van-dropdown-menu-shadow);\n color: 14px;\n}\n.widget .card-box[data-v-68bdd6bc] {\n padding-bottom: 8px;\n}\n.widget .card-box .card-header[data-v-68bdd6bc] {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 15px 10px;\n border-bottom: 1px solid #eee;\n}\n.widget .card-box .card-header .card-sum[data-v-68bdd6bc] {\n flex: 1;\n font-size: 14px;\n text-align: left;\n}\n.widget .card-box .card-header .user-state[data-v-68bdd6bc] {\n margin-right: 1px;\n}\n[data-v-68bdd6bc] .van-cell__value {\n flex: 2 !important;\n}\n[data-v-68bdd6bc] .van-cell__title {\n font-size: 12px !important;\n color: #666 !important;\n text-align: left !important;\n}\n[data-v-68bdd6bc] .van-cell__value {\n font-size: 12px !important;\n color: #888 !important;\n}\n[data-v-68bdd6bc] .van-cell {\n padding: 2px 10px !important;\n}")();
19867
- const _hoisted_1$3 = {
19641
+ const _hoisted_1$4 = {
19868
19642
  class: "widget"
19869
19643
  };
19870
19644
  const _hoisted_2$2 = {
@@ -19960,7 +19734,7 @@ const _sfc_main$a = {
19960
19734
  const _component_van_tag = resolveComponent("van-tag");
19961
19735
  const _component_van_cell = resolveComponent("van-cell");
19962
19736
  const _component_van_cell_group = resolveComponent("van-cell-group");
19963
- return openBlock(), createElementBlock("div", _hoisted_1$3, [createVNode(_component_van_cell_group, {
19737
+ return openBlock(), createElementBlock("div", _hoisted_1$4, [createVNode(_component_van_cell_group, {
19964
19738
  inset: "",
19965
19739
  class: "card-box"
19966
19740
  }, {
@@ -20161,70 +19935,8 @@ const _sfc_main$7 = {
20161
19935
  };
20162
19936
  }
20163
19937
  };
20164
- const _sfc_main$6 = {
20165
- __name: "ProjectDropdown",
20166
- props: {
20167
- modelValue: {
20168
- type: Number,
20169
- default: 0
20170
- },
20171
- label: {
20172
- type: String,
20173
- default: "\u9009\u62E9\u9879\u76EE"
20174
- },
20175
- placeholder: {
20176
- type: String,
20177
- default: "\u8BF7\u9009\u62E9\u9879\u76EE"
20178
- },
20179
- maxStage: {
20180
- type: String,
20181
- default: ""
20182
- }
20183
- },
20184
- emits: ["update:modelValue"],
20185
- setup(__props, {
20186
- emit
20187
- }) {
20188
- const props = __props;
20189
- const data2 = reactive({
20190
- options: []
20191
- });
20192
- const modelValue = useVModel(props, "modelValue", emit);
20193
- const totalOptions = computed(() => {
20194
- return [{
20195
- text: "\u5DE5\u7A0B\u7F16\u53F7",
20196
- value: ""
20197
- }, ...data2.options];
20198
- });
20199
- onMounted(() => {
20200
- query();
20201
- });
20202
- const query = () => __async(this, null, function* () {
20203
- let params = {
20204
- isBasic: true,
20205
- limit: 99999,
20206
- page: 1
20207
- };
20208
- if (props.maxStage)
20209
- params.maxStage = props.maxStage;
20210
- const res = yield util.project_list(params);
20211
- data2.options = res.data.list.map((item) => ({
20212
- text: `${item.projectCode}/${item.name}`,
20213
- value: item.id
20214
- }));
20215
- });
20216
- return (_ctx, _cache) => {
20217
- const _component_van_dropdown_item = resolveComponent("van-dropdown-item");
20218
- return openBlock(), createBlock(_component_van_dropdown_item, {
20219
- modelValue: unref(modelValue),
20220
- "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => isRef(modelValue) ? modelValue.value = $event : null),
20221
- options: unref(totalOptions)
20222
- }, null, 8, ["modelValue", "options"]);
20223
- };
20224
- }
20225
- };
20226
19938
  var Switch_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "[data-v-d8d21ade] .label {\n color: #000 !important;\n}\n[data-v-d8d21ade] .van-field__control:disabled {\n color: #000 !important;\n cursor: not-allowed;\n opacity: 1;\n -webkit-text-fill-color: #000;\n}")();
20227
- const _sfc_main$5 = {
19939
+ const _sfc_main$6 = {
20228
19940
  __name: "Switch",
20229
19941
  props: {
20230
19942
  modelValue: {
@@ -20292,9 +20004,9 @@ const _sfc_main$5 = {
20292
20004
  };
20293
20005
  }
20294
20006
  };
20295
- var Switch = /* @__PURE__ */ _export_sfc(_sfc_main$5, [["__scopeId", "data-v-d8d21ade"]]);
20007
+ var Switch = /* @__PURE__ */ _export_sfc(_sfc_main$6, [["__scopeId", "data-v-d8d21ade"]]);
20296
20008
  var Sheet_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => ".item-box[data-v-2bd62a7a] {\n position: relative;\n padding-bottom: 5px;\n border-bottom: 1px solid #e1e1e1;\n}\n.actionbar[data-v-2bd62a7a] {\n display: flex;\n justify-content: center;\n margin-top: 5px;\n}\n[data-v-2bd62a7a] .label {\n color: #000 !important;\n}\n[data-v-2bd62a7a] .van-field__control--custom {\n display: block;\n}")();
20297
- const _hoisted_1$2 = {
20009
+ const _hoisted_1$3 = {
20298
20010
  key: 0,
20299
20011
  class: "actionbar"
20300
20012
  };
@@ -20302,7 +20014,7 @@ const _hoisted_2$1 = {
20302
20014
  key: 0,
20303
20015
  class: "actionbar"
20304
20016
  };
20305
- const _sfc_main$4 = {
20017
+ const _sfc_main$5 = {
20306
20018
  __name: "Sheet",
20307
20019
  props: {
20308
20020
  modelValue: {
@@ -20366,7 +20078,7 @@ const _sfc_main$4 = {
20366
20078
  required: unref(isRequired),
20367
20079
  placeholder: props.placeholder
20368
20080
  }, {
20369
- input: withCtx(() => [!unref(isGone) && !unref(isDisabled) && !unref(isReadonly) ? (openBlock(), createElementBlock("div", _hoisted_1$2, [createVNode(_component_van_button, {
20081
+ input: withCtx(() => [!unref(isGone) && !unref(isDisabled) && !unref(isReadonly) ? (openBlock(), createElementBlock("div", _hoisted_1$3, [createVNode(_component_van_button, {
20370
20082
  icon: "plus",
20371
20083
  type: "primary",
20372
20084
  size: "mini",
@@ -20395,9 +20107,9 @@ const _sfc_main$4 = {
20395
20107
  };
20396
20108
  }
20397
20109
  };
20398
- var Sheet = /* @__PURE__ */ _export_sfc(_sfc_main$4, [["__scopeId", "data-v-2bd62a7a"]]);
20110
+ var Sheet = /* @__PURE__ */ _export_sfc(_sfc_main$5, [["__scopeId", "data-v-2bd62a7a"]]);
20399
20111
  var TreePop_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.popup-box[data-v-571370f8] {\r\n min-height: 20vh;\r\n max-height: 40vh;\r\n overflow-y: auto;\n.checkbox-list[data-v-571370f8] {\r\n padding: 15px 25px;\n[data-v-571370f8] .van-checkbox__label {\r\n flex: 1;\r\n text-align: right;\n}\n}\n}\n.select-all-container[data-v-571370f8] {\r\n font-size: 14px;\r\n padding: 15px 25px 0 15px;\r\n margin: 10px 0;\r\n display: flex;\r\n justify-content: flex-end;\r\n align-items: center;\n}\n.select-all-container .van-checkbox[data-v-571370f8] {\r\n margin-left: auto;\n}\r\n\r\n/* \u65B0\u589E\uFF1A\u8C03\u6574\u65B9\u5F62\u590D\u9009\u6846\u7684\u8FB9\u8DDD */\n.van-checkbox--square[data-v-571370f8] {\r\n margin-left: 8px;\n}\r\n")();
20400
- const _sfc_main$3 = {
20112
+ const _sfc_main$4 = {
20401
20113
  __name: "TreePop",
20402
20114
  props: {
20403
20115
  show: {
@@ -20446,12 +20158,12 @@ const _sfc_main$3 = {
20446
20158
  };
20447
20159
  }
20448
20160
  };
20449
- var TreePop = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["__scopeId", "data-v-571370f8"]]);
20161
+ var TreePop = /* @__PURE__ */ _export_sfc(_sfc_main$4, [["__scopeId", "data-v-571370f8"]]);
20450
20162
  var TreePicker_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.select-item[data-v-6744b874]{\r\n margin:3px;\n}\r\n")();
20451
- const _hoisted_1$1 = {
20163
+ const _hoisted_1$2 = {
20452
20164
  class: "select-list"
20453
20165
  };
20454
- const _sfc_main$2 = {
20166
+ const _sfc_main$3 = {
20455
20167
  __name: "TreePicker",
20456
20168
  props: {
20457
20169
  modelValue: {
@@ -20545,7 +20257,7 @@ const _sfc_main$2 = {
20545
20257
  onClick: _cache[0] || (_cache[0] = ($event) => data2.isShowPop = !unref(isReadonly)),
20546
20258
  "label-class": "label"
20547
20259
  }, {
20548
- input: withCtx(() => [createElementVNode("div", _hoisted_1$1, [(openBlock(true), createElementBlock(Fragment, null, renderList(unref(selectOptions), (item, i) => {
20260
+ input: withCtx(() => [createElementVNode("div", _hoisted_1$2, [(openBlock(true), createElementBlock(Fragment, null, renderList(unref(selectOptions), (item, i) => {
20549
20261
  return openBlock(), createBlock(_component_van_tag, {
20550
20262
  class: "select-item",
20551
20263
  closeable: !unref(isDisabled),
@@ -20569,9 +20281,9 @@ const _sfc_main$2 = {
20569
20281
  };
20570
20282
  }
20571
20283
  };
20572
- var TreePicker = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-6744b874"]]);
20573
- var CascaderPop_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.cascader-pop[data-v-b85d16dc] {\r\n width: 100%;\r\n overflow: hidden;\n}\n.cascader-selector[data-v-b85d16dc] {\r\n padding: 10px;\n}\n.search-buttons[data-v-b85d16dc] {\r\n display: flex;\r\n gap: 10px;\n}\n.clear-btn[data-v-b85d16dc] {\r\n background-color: #f2f3f5;\r\n border: none;\r\n border-radius: 4px;\r\n padding: 4px 8px;\r\n font-size: 14px;\n}\n.confirm-btn[data-v-b85d16dc] {\r\n background-color: #1989fa;\r\n color: white;\r\n border: none;\r\n border-radius: 4px;\r\n padding: 4px 8px;\r\n font-size: 14px;\n}\n.no-results[data-v-b85d16dc] {\r\n text-align: center;\r\n padding: 20px;\r\n color: #969799;\n}\n.cascader-header[data-v-b85d16dc] {\r\n padding: 10px;\r\n border-bottom: 1px solid #ebedf0;\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\n}\n.current-path[data-v-b85d16dc] {\r\n flex: 1;\r\n font-size: 14px;\r\n color: #323233;\r\n white-space: nowrap;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\n}\n.header-right[data-v-b85d16dc] {\r\n display: flex;\r\n gap: 8px;\r\n margin-left: auto;\n}\n.cancel-btn[data-v-b85d16dc] {\r\n color: #969799;\r\n margin-right: 5px;\n}\n.scroll-container[data-v-b85d16dc] {\r\n height: calc(80vh - 150px);\r\n overflow-y: auto;\n}\n.cell-content[data-v-b85d16dc] {\r\n display: flex;\r\n align-items: center;\r\n gap: 12px;\n}\n.circle-selector[data-v-b85d16dc] {\r\n width: 20px;\r\n height: 20px;\r\n border-radius: 50%;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n transition: all 0.2s;\r\n flex-shrink: 0;\n}\n.circle-selector.selected[data-v-b85d16dc] {\r\n background-color: #1989fa;\r\n border-color: #1989fa;\n}\n.circle-selector.selected .van-icon[data-v-b85d16dc] {\r\n color: white;\r\n font-size: 14px;\n}\n.van-cell__right-icon[data-v-b85d16dc] {\r\n color: #969799;\r\n font-size: 16px;\r\n margin-left: 8px;\n}\n.name[data-v-b85d16dc] {\r\n flex: 1;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\n}\n.cancel-btn[data-v-b85d16dc] {\r\n color: #969799;\n}\n.search-field[data-v-b85d16dc] {\r\n background: #fff;\r\n padding: 10px 16px;\r\n border-bottom: 1px solid #ebedf0;\r\n position: sticky;\r\n top: 0;\r\n z-index: 999;\r\n margin-bottom: 10px;\r\n flex-shrink: 0;\r\n /* \u9632\u6B62\u538B\u7F29 */\n}\r\n")();
20574
- const _hoisted_1 = {
20284
+ var TreePicker = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["__scopeId", "data-v-6744b874"]]);
20285
+ var CascaderPop_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.cascader-pop[data-v-e8f93d5a] {\r\n width: 100%;\r\n overflow: hidden;\n}\n.cascader-selector[data-v-e8f93d5a] {\r\n padding: 10px;\n}\n.search-buttons[data-v-e8f93d5a] {\r\n display: flex;\r\n gap: 10px;\n}\n.clear-btn[data-v-e8f93d5a] {\r\n background-color: #f2f3f5;\r\n border: none;\r\n border-radius: 4px;\r\n padding: 4px 8px;\r\n font-size: 14px;\n}\n.confirm-btn[data-v-e8f93d5a] {\r\n background-color: #1989fa;\r\n color: white;\r\n border: none;\r\n border-radius: 4px;\r\n padding: 4px 8px;\r\n font-size: 14px;\n}\n.no-results[data-v-e8f93d5a] {\r\n text-align: center;\r\n padding: 20px;\r\n color: #969799;\n}\n.cascader-header[data-v-e8f93d5a] {\r\n padding: 10px;\r\n border-bottom: 1px solid #ebedf0;\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\n}\n.current-path[data-v-e8f93d5a] {\r\n flex: 1;\r\n font-size: 14px;\r\n color: #323233;\r\n white-space: nowrap;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\n}\n.header-right[data-v-e8f93d5a] {\r\n display: flex;\r\n gap: 8px;\r\n margin-left: auto;\n}\n.cancel-btn[data-v-e8f93d5a] {\r\n color: #969799;\r\n margin-right: 5px;\n}\n.scroll-container[data-v-e8f93d5a] {\r\n height: calc(80vh - 150px);\r\n overflow-y: auto;\n}\n.cell-content[data-v-e8f93d5a] {\r\n display: flex;\r\n align-items: center;\r\n gap: 12px;\n}\n.circle-selector[data-v-e8f93d5a] {\r\n width: 20px;\r\n height: 20px;\r\n border-radius: 50%;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n transition: all 0.2s;\r\n flex-shrink: 0;\n}\n.circle-selector.selected[data-v-e8f93d5a] {\r\n background-color: #1989fa;\r\n border-color: #1989fa;\n}\n.circle-selector.selected .van-icon[data-v-e8f93d5a] {\r\n color: white;\r\n font-size: 14px;\n}\n.van-cell__right-icon[data-v-e8f93d5a] {\r\n color: #969799;\r\n font-size: 16px;\r\n margin-left: 8px;\n}\n.name[data-v-e8f93d5a] {\r\n flex: 1;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\n}\n.cancel-btn[data-v-e8f93d5a] {\r\n color: #969799;\n}\n.search-field[data-v-e8f93d5a] {\r\n background: #fff;\r\n padding: 10px 16px;\r\n border-bottom: 1px solid #ebedf0;\r\n position: sticky;\r\n top: 0;\r\n z-index: 999;\r\n margin-bottom: 10px;\r\n flex-shrink: 0;\r\n /* \u9632\u6B62\u538B\u7F29 */\n}\r\n")();
20286
+ const _hoisted_1$1 = {
20575
20287
  class: "cascader-selector"
20576
20288
  };
20577
20289
  const _hoisted_2 = {
@@ -20598,7 +20310,7 @@ const _hoisted_10 = ["onClick"];
20598
20310
  const _hoisted_11 = {
20599
20311
  class: "name"
20600
20312
  };
20601
- const _sfc_main$1 = {
20313
+ const _sfc_main$2 = {
20602
20314
  __name: "CascaderPop",
20603
20315
  props: {
20604
20316
  modelValue: {
@@ -20634,15 +20346,12 @@ const _sfc_main$1 = {
20634
20346
  const data2 = reactive({
20635
20347
  totalNodes: [],
20636
20348
  keyword: "",
20637
- searchNodes: [],
20638
20349
  currentNode: null,
20639
20350
  selectedNodeId: ""
20640
20351
  });
20641
20352
  const optionNodes = computed(() => {
20642
20353
  var _a;
20643
- if (data2.keyword)
20644
- return data2.searchNodes;
20645
- else if (data2.currentNode)
20354
+ if (data2.currentNode)
20646
20355
  return ((_a = data2.currentNode) == null ? void 0 : _a.children) ? data2.currentNode.children : [];
20647
20356
  else
20648
20357
  return data2.totalNodes ? data2.totalNodes : [];
@@ -20668,7 +20377,8 @@ const _sfc_main$1 = {
20668
20377
  keyword: data2.keyword,
20669
20378
  parentId: ""
20670
20379
  }, (nodes) => {
20671
- data2.searchNodes = nodes;
20380
+ data2.totalNodes = nodes;
20381
+ data2.currentNode = null;
20672
20382
  });
20673
20383
  });
20674
20384
  const onBack = () => {
@@ -20679,7 +20389,6 @@ const _sfc_main$1 = {
20679
20389
  };
20680
20390
  const onClear = () => {
20681
20391
  data2.keyword = "";
20682
- data2.searchNodes = [];
20683
20392
  };
20684
20393
  const reset = () => {
20685
20394
  data2.currentNode = null;
@@ -20742,7 +20451,7 @@ const _sfc_main$1 = {
20742
20451
  position: "bottom",
20743
20452
  class: "cascader-pop"
20744
20453
  }, {
20745
- default: withCtx(() => [createElementVNode("div", _hoisted_1, [createElementVNode("div", _hoisted_2, [createElementVNode("div", _hoisted_3, [createVNode(_component_van_button, {
20454
+ default: withCtx(() => [createElementVNode("div", _hoisted_1$1, [createElementVNode("div", _hoisted_2, [createElementVNode("div", _hoisted_3, [createVNode(_component_van_button, {
20746
20455
  onClick: onBack,
20747
20456
  icon: "arrow-left",
20748
20457
  size: "small"
@@ -20809,8 +20518,8 @@ const _sfc_main$1 = {
20809
20518
  };
20810
20519
  }
20811
20520
  };
20812
- var CascaderPop = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__scopeId", "data-v-b85d16dc"]]);
20813
- const _sfc_main = {
20521
+ var CascaderPop = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-e8f93d5a"]]);
20522
+ const _sfc_main$1 = {
20814
20523
  __name: "CascaderPicker",
20815
20524
  props: {
20816
20525
  modelValue: {
@@ -20872,6 +20581,7 @@ const _sfc_main = {
20872
20581
  });
20873
20582
  const onSelect = (node) => {
20874
20583
  data2.selectedNode = node;
20584
+ emit("select", data2.selectedNode);
20875
20585
  };
20876
20586
  const onDelete = () => {
20877
20587
  data2.selectedNode = {};
@@ -20932,6 +20642,112 @@ const _sfc_main = {
20932
20642
  };
20933
20643
  }
20934
20644
  };
20645
+ var SingleApiPicker_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => '@charset "UTF-8";\n.widget[data-v-11b655b2] {\n /* \u7EDF\u4E00\u5B57\u6BB5\u95F4\u8DDD */\n}\n.widget[data-v-11b655b2] .van-cell {\n align-items: center;\n}\n.widget[data-v-11b655b2] .van-field__label {\n width: 90px;\n flex: none;\n}\n.widget .readonly-field[data-v-11b655b2] {\n /* \u6DFB\u52A0\u5FC5\u586B\u661F\u53F7\u5BF9\u9F50 */\n}\n.widget .readonly-field[data-v-11b655b2] .van-field__control {\n color: #323233;\n /* \u4FEE\u6539\u6587\u5B57\u989C\u8272\u4E0E\u666E\u901A\u5B57\u6BB5\u4E00\u81F4 */\n padding-right: 16px;\n}\n.widget .readonly-field.van-field--required[data-v-11b655b2] .van-field__label::before {\n margin-right: 4px;\n}\n.widget .readonly-field[data-v-11b655b2] {\n margin: 4px 0;\n}')();
20646
+ const _hoisted_1 = {
20647
+ class: "widget"
20648
+ };
20649
+ const _sfc_main = {
20650
+ __name: "SingleApiPicker",
20651
+ props: {
20652
+ modelValue: {
20653
+ type: String,
20654
+ default: null
20655
+ },
20656
+ label: {
20657
+ type: String,
20658
+ default: ""
20659
+ },
20660
+ placeholder: {
20661
+ type: String,
20662
+ default: ""
20663
+ },
20664
+ required: {
20665
+ type: Boolean,
20666
+ default: false
20667
+ },
20668
+ readonly: {
20669
+ type: Boolean,
20670
+ default: true
20671
+ },
20672
+ auth: {
20673
+ type: String,
20674
+ default: ""
20675
+ },
20676
+ query: {
20677
+ type: Function,
20678
+ default: () => {
20679
+ }
20680
+ }
20681
+ },
20682
+ emits: ["update:modelValue", "select"],
20683
+ setup(__props, {
20684
+ emit
20685
+ }) {
20686
+ const props = __props;
20687
+ const modelValue = useVModel(props, "modelValue", emit);
20688
+ const {
20689
+ isRequired,
20690
+ isReadonly,
20691
+ isGone,
20692
+ isDisabled
20693
+ } = util.props2auth(props);
20694
+ const data2 = reactive({
20695
+ isShow: false,
20696
+ options: []
20697
+ });
20698
+ const formatLabel = computed(() => {
20699
+ let one = data2.options.find((item) => item.value == modelValue.value);
20700
+ return one ? one.text : "";
20701
+ });
20702
+ onMounted(() => __async(this, null, function* () {
20703
+ props.query((options) => {
20704
+ data2.options = options;
20705
+ });
20706
+ }));
20707
+ const onConfirm = ({
20708
+ selectedOptions
20709
+ }) => {
20710
+ console.log("selectedOptions: " + selectedOptions);
20711
+ let selectOption = selectedOptions[selectedOptions.length - 1];
20712
+ modelValue.value = selectOption.value;
20713
+ emit("select", selectOption);
20714
+ data2.isShow = false;
20715
+ };
20716
+ const onCancel = () => {
20717
+ data2.isShow = false;
20718
+ };
20719
+ return (_ctx, _cache) => {
20720
+ const _component_van_field = resolveComponent("van-field");
20721
+ const _component_van_picker = resolveComponent("van-picker");
20722
+ const _component_van_popup = resolveComponent("van-popup");
20723
+ return openBlock(), createElementBlock("div", _hoisted_1, [createVNode(_component_van_field, {
20724
+ modelValue: unref(formatLabel),
20725
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => isRef(formatLabel) ? formatLabel.value = $event : null),
20726
+ "is-link": "",
20727
+ label: props.label,
20728
+ placeholder: props.placeholder,
20729
+ readonly: "",
20730
+ required: unref(isRequired),
20731
+ disabled: unref(isDisabled),
20732
+ onClick: _cache[1] || (_cache[1] = ($event) => data2.isShow = true)
20733
+ }, null, 8, ["modelValue", "label", "placeholder", "required", "disabled"]), createVNode(_component_van_popup, {
20734
+ show: data2.isShow,
20735
+ "onUpdate:show": _cache[2] || (_cache[2] = ($event) => data2.isShow = $event),
20736
+ "destroy-on-close": "",
20737
+ round: "",
20738
+ position: "bottom"
20739
+ }, {
20740
+ default: withCtx(() => [createVNode(_component_van_picker, {
20741
+ columns: data2.options,
20742
+ onCancel,
20743
+ onConfirm
20744
+ }, null, 8, ["columns"])]),
20745
+ _: 1
20746
+ }, 8, ["show"])]);
20747
+ };
20748
+ }
20749
+ };
20750
+ var SingleApiPicker = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-11b655b2"]]);
20935
20751
  const secret_notify = () => {
20936
20752
  showNotify({ type: "danger", message: "\u4E25\u683C\u6267\u884C\u4FE1\u606F\u4FDD\u5BC6\u8981\u6C42\uFF0C\u5207\u5B9E\u9632\u8303\u4F01\u4E1A\u6CC4\u5BC6\u98CE\u9669", duration: 3e3 });
20937
20753
  };
@@ -20958,7 +20774,7 @@ const components = [
20958
20774
  },
20959
20775
  {
20960
20776
  name: "WidgetQwDatetimePicker",
20961
- widget: _sfc_main$p
20777
+ widget: _sfc_main$n
20962
20778
  },
20963
20779
  {
20964
20780
  name: "WidgetQwDataSelector",
@@ -20968,10 +20784,6 @@ const components = [
20968
20784
  name: "WidgetQwMultListSelector",
20969
20785
  widget: MultListSelector
20970
20786
  },
20971
- {
20972
- name: "WidgetQwProductSelector",
20973
- widget: ProductSelector
20974
- },
20975
20787
  {
20976
20788
  name: "WidgetQwSubdepartmentSelector",
20977
20789
  widget: SubdepartmentSelector
@@ -21008,10 +20820,6 @@ const components = [
21008
20820
  name: "WidgetQwUserPicker",
21009
20821
  widget: UserPicker
21010
20822
  },
21011
- {
21012
- name: "WidgetQwProjectPicker",
21013
- widget: ProjectPicker
21014
- },
21015
20823
  {
21016
20824
  name: "WidgetQwUserProfile",
21017
20825
  widget: UserProfile
@@ -21028,10 +20836,6 @@ const components = [
21028
20836
  name: "WidgetQwDayDropdown",
21029
20837
  widget: _sfc_main$7
21030
20838
  },
21031
- {
21032
- name: "WidgetQwProjectDropdown",
21033
- widget: _sfc_main$6
21034
- },
21035
20839
  {
21036
20840
  name: "WidgetQwSwitch",
21037
20841
  widget: Switch
@@ -21050,7 +20854,11 @@ const components = [
21050
20854
  },
21051
20855
  {
21052
20856
  name: "WidgetQwCascaderPicker",
21053
- widget: _sfc_main
20857
+ widget: _sfc_main$1
20858
+ },
20859
+ {
20860
+ name: "WidgetQwSingleApiPicker",
20861
+ widget: SingleApiPicker
21054
20862
  }
21055
20863
  ];
21056
20864
  const WidgetQw = {