widget.qw 1.0.70 → 1.0.72
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.
- package/build/style.css +21 -21
- package/build/widget.qw.es.js +110 -64
- package/build/widget.qw.umd.js +110 -64
- package/package.json +1 -1
- package/src/components/BillCard.vue +37 -28
- package/src/components/FilePicker.vue +43 -14
- package/src/components/ObjsEditor.vue +14 -2
- package/src/components/image_picker.vue +3 -3
- package/src/components/images_picker.vue +4 -4
- package/src/env.d.ts +8 -8
- package/src/views/billcard/index.vue +15 -12
- package/src/views/filepicker/index.vue +3 -3
- package/src/views/imagespicker/index.vue +2 -2
- package/src/views/objseditor/index.vue +6 -0
- package/tsconfig.json +19 -19
- package/tsconfig.node.json +8 -8
package/build/widget.qw.umd.js
CHANGED
|
@@ -17589,10 +17589,10 @@ var __async = (__this, __arguments, generator) => {
|
|
|
17589
17589
|
};
|
|
17590
17590
|
const _hoisted_6$6 = /* @__PURE__ */ vue.createTextVNode(" \u53D6\u6D88 ");
|
|
17591
17591
|
const _hoisted_7$6 = /* @__PURE__ */ vue.createTextVNode(" \u786E\u5B9A ");
|
|
17592
|
-
const _hoisted_8$
|
|
17592
|
+
const _hoisted_8$5 = {
|
|
17593
17593
|
class: "scroll-container"
|
|
17594
17594
|
};
|
|
17595
|
-
const _hoisted_9$
|
|
17595
|
+
const _hoisted_9$3 = {
|
|
17596
17596
|
class: "cell-content"
|
|
17597
17597
|
};
|
|
17598
17598
|
const _hoisted_10$2 = ["onClick"];
|
|
@@ -17894,7 +17894,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
17894
17894
|
clearable: "",
|
|
17895
17895
|
placeholder: "\u8BF7\u8F93\u5165\u90E8\u95E8\u540D\u79F0\u641C\u7D22",
|
|
17896
17896
|
class: "search-field"
|
|
17897
|
-
}, null, 8, ["modelValue"]), vue.createElementVNode("div", _hoisted_8$
|
|
17897
|
+
}, null, 8, ["modelValue"]), vue.createElementVNode("div", _hoisted_8$5, [vue.createVNode(_component_van_cell_group, null, {
|
|
17898
17898
|
default: vue.withCtx(() => [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(vue.unref(filteredDepartments), (item, index) => {
|
|
17899
17899
|
return vue.openBlock(), vue.createBlock(_component_van_cell, {
|
|
17900
17900
|
key: index,
|
|
@@ -17903,7 +17903,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
17903
17903
|
}, {
|
|
17904
17904
|
title: vue.withCtx(() => {
|
|
17905
17905
|
var _a, _b;
|
|
17906
|
-
return [vue.createElementVNode("div", _hoisted_9$
|
|
17906
|
+
return [vue.createElementVNode("div", _hoisted_9$3, [vue.createElementVNode("div", {
|
|
17907
17907
|
class: vue.normalizeClass(["circle-selector", {
|
|
17908
17908
|
"selected": ((_a = tempSelectedDepartment.value) == null ? void 0 : _a.id) === item.id
|
|
17909
17909
|
}]),
|
|
@@ -17951,8 +17951,8 @@ var __async = (__this, __arguments, generator) => {
|
|
|
17951
17951
|
class: "header-right"
|
|
17952
17952
|
};
|
|
17953
17953
|
const _hoisted_7$5 = /* @__PURE__ */ vue.createTextVNode("\u6E05\u7A7A");
|
|
17954
|
-
const _hoisted_8$
|
|
17955
|
-
const _hoisted_9$
|
|
17954
|
+
const _hoisted_8$4 = /* @__PURE__ */ vue.createTextVNode("\u786E\u5B9A");
|
|
17955
|
+
const _hoisted_9$2 = {
|
|
17956
17956
|
key: 0,
|
|
17957
17957
|
class: "select-all-container"
|
|
17958
17958
|
};
|
|
@@ -18353,9 +18353,9 @@ var __async = (__this, __arguments, generator) => {
|
|
|
18353
18353
|
onClick: confirmSelection,
|
|
18354
18354
|
class: "confirm-btn"
|
|
18355
18355
|
}, {
|
|
18356
|
-
default: vue.withCtx(() => [_hoisted_8$
|
|
18356
|
+
default: vue.withCtx(() => [_hoisted_8$4]),
|
|
18357
18357
|
_: 1
|
|
18358
|
-
})])]), __props.mode === "multiple" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_9$
|
|
18358
|
+
})])]), __props.mode === "multiple" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_9$2, [vue.createVNode(_component_van_checkbox, {
|
|
18359
18359
|
shape: "square",
|
|
18360
18360
|
modelValue: isAllChecked.value,
|
|
18361
18361
|
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => isAllChecked.value = $event),
|
|
@@ -18459,7 +18459,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
18459
18459
|
}
|
|
18460
18460
|
};
|
|
18461
18461
|
var UserSelector = /* @__PURE__ */ _export_sfc(_sfc_main$k, [["__scopeId", "data-v-6c4b4fc8"]]);
|
|
18462
|
-
var image_picker_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "[data-v-
|
|
18462
|
+
var image_picker_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "[data-v-16be97a4] .label {\n color: #000 !important;\n}\n[data-v-16be97a4] .van-field__control:disabled {\n color: #000 !important;\n cursor: not-allowed;\n opacity: 1;\n -webkit-text-fill-color: #000;\n}")();
|
|
18463
18463
|
const _hoisted_1$d = {
|
|
18464
18464
|
class: "image-box"
|
|
18465
18465
|
};
|
|
@@ -18568,9 +18568,10 @@ var __async = (__this, __arguments, generator) => {
|
|
|
18568
18568
|
accept: "image/jpeg,image/png",
|
|
18569
18569
|
afterRead: onAfterRead,
|
|
18570
18570
|
disabled: vue.unref(isDisabled),
|
|
18571
|
-
deletable: !vue.unref(isDisabled),
|
|
18572
|
-
"before-delete": onBeforeDelete
|
|
18573
|
-
|
|
18571
|
+
deletable: !vue.unref(isReadonly) && !vue.unref(isDisabled),
|
|
18572
|
+
"before-delete": onBeforeDelete,
|
|
18573
|
+
"show-upload": !vue.unref(isReadonly)
|
|
18574
|
+
}, null, 8, ["modelValue", "capture", "disabled", "deletable", "show-upload"])) : (vue.openBlock(), vue.createBlock(_component_van_uploader, {
|
|
18574
18575
|
key: 1,
|
|
18575
18576
|
modelValue: files.value,
|
|
18576
18577
|
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => files.value = $event),
|
|
@@ -18578,16 +18579,17 @@ var __async = (__this, __arguments, generator) => {
|
|
|
18578
18579
|
accept: "image/jpeg,image/png",
|
|
18579
18580
|
afterRead: onAfterRead,
|
|
18580
18581
|
disabled: vue.unref(isDisabled),
|
|
18581
|
-
deletable: !vue.unref(isDisabled),
|
|
18582
|
-
"before-delete": onBeforeDelete
|
|
18583
|
-
|
|
18582
|
+
deletable: !vue.unref(isReadonly) && !vue.unref(isDisabled),
|
|
18583
|
+
"before-delete": onBeforeDelete,
|
|
18584
|
+
"show-upload": !vue.unref(isReadonly)
|
|
18585
|
+
}, null, 8, ["modelValue", "disabled", "deletable", "show-upload"]))])]),
|
|
18584
18586
|
_: 1
|
|
18585
18587
|
}, 8, ["label", "required", "rules", "placeholder"])) : vue.createCommentVNode("", true);
|
|
18586
18588
|
};
|
|
18587
18589
|
}
|
|
18588
18590
|
};
|
|
18589
|
-
var ImagePicker = /* @__PURE__ */ _export_sfc(_sfc_main$j, [["__scopeId", "data-v-
|
|
18590
|
-
var images_picker_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => ".widget[data-v-
|
|
18591
|
+
var ImagePicker = /* @__PURE__ */ _export_sfc(_sfc_main$j, [["__scopeId", "data-v-16be97a4"]]);
|
|
18592
|
+
var images_picker_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => ".widget[data-v-8fca1c96] {\n text-align: center;\n}\n.widget .btn[data-v-8fca1c96] {\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}")();
|
|
18591
18593
|
const _hoisted_1$c = {
|
|
18592
18594
|
class: "image-box"
|
|
18593
18595
|
};
|
|
@@ -18709,41 +18711,47 @@ var __async = (__this, __arguments, generator) => {
|
|
|
18709
18711
|
capture: props.capture,
|
|
18710
18712
|
accept: "image/jpeg,image/png",
|
|
18711
18713
|
disabled: vue.unref(isDisabled),
|
|
18712
|
-
deletable: !vue.unref(isDisabled),
|
|
18714
|
+
deletable: !vue.unref(isRequired) && !vue.unref(isDisabled),
|
|
18713
18715
|
afterRead: onAfterRead,
|
|
18714
|
-
"before-delete": onBeforeDelete
|
|
18715
|
-
|
|
18716
|
+
"before-delete": onBeforeDelete,
|
|
18717
|
+
"show-upload": !vue.unref(isReadonly)
|
|
18718
|
+
}, null, 8, ["modelValue", "max-count", "capture", "disabled", "deletable", "show-upload"])) : (vue.openBlock(), vue.createBlock(_component_van_uploader, {
|
|
18716
18719
|
key: 1,
|
|
18717
18720
|
modelValue: files.value,
|
|
18718
18721
|
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => files.value = $event),
|
|
18719
18722
|
"max-count": props.max,
|
|
18720
18723
|
accept: "image/jpeg,image/png",
|
|
18721
18724
|
disabled: vue.unref(isDisabled),
|
|
18722
|
-
deletable: !vue.unref(isDisabled),
|
|
18725
|
+
deletable: !vue.unref(isReadonly) && !vue.unref(isDisabled),
|
|
18723
18726
|
afterRead: onAfterRead,
|
|
18724
|
-
"before-delete": onBeforeDelete
|
|
18725
|
-
|
|
18727
|
+
"before-delete": onBeforeDelete,
|
|
18728
|
+
"show-upload": !vue.unref(isReadonly)
|
|
18729
|
+
}, null, 8, ["modelValue", "max-count", "disabled", "deletable", "show-upload"]))])]),
|
|
18726
18730
|
_: 1
|
|
18727
18731
|
}, 8, ["label", "required", "rules", "placeholder"]);
|
|
18728
18732
|
};
|
|
18729
18733
|
}
|
|
18730
18734
|
};
|
|
18731
|
-
var ImagesPicker = /* @__PURE__ */ _export_sfc(_sfc_main$i, [["__scopeId", "data-v-
|
|
18732
|
-
var FilePicker_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "[data-v-
|
|
18735
|
+
var ImagesPicker = /* @__PURE__ */ _export_sfc(_sfc_main$i, [["__scopeId", "data-v-8fca1c96"]]);
|
|
18736
|
+
var FilePicker_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "[data-v-0c20dca4] .label {\n color: #000 !important;\n}\n[data-v-0c20dca4] .van-field__control:disabled {\n color: #000 !important;\n cursor: not-allowed;\n opacity: 1;\n -webkit-text-fill-color: #000;\n}")();
|
|
18733
18737
|
const _hoisted_1$b = {
|
|
18734
|
-
class: "
|
|
18738
|
+
class: "file-box"
|
|
18735
18739
|
};
|
|
18736
18740
|
const _sfc_main$h = {
|
|
18737
18741
|
__name: "FilePicker",
|
|
18738
18742
|
props: {
|
|
18739
18743
|
modelValue: {
|
|
18740
|
-
type: String,
|
|
18741
|
-
default:
|
|
18744
|
+
type: [String, Array],
|
|
18745
|
+
default: null
|
|
18742
18746
|
},
|
|
18743
18747
|
label: {
|
|
18744
18748
|
type: String,
|
|
18745
18749
|
default: ""
|
|
18746
18750
|
},
|
|
18751
|
+
multiple: {
|
|
18752
|
+
type: Boolean,
|
|
18753
|
+
default: false
|
|
18754
|
+
},
|
|
18747
18755
|
required: {
|
|
18748
18756
|
type: Boolean,
|
|
18749
18757
|
default: false
|
|
@@ -18790,22 +18798,44 @@ var __async = (__this, __arguments, generator) => {
|
|
|
18790
18798
|
file: file.file
|
|
18791
18799
|
};
|
|
18792
18800
|
return util.file_upload(params).then((res) => {
|
|
18793
|
-
|
|
18801
|
+
if (props.multiple)
|
|
18802
|
+
modelValue.value = [...modelValue.value || [], res.data];
|
|
18803
|
+
else
|
|
18804
|
+
modelValue.value = res.data;
|
|
18794
18805
|
return Promise.resolve(file);
|
|
18795
18806
|
});
|
|
18796
18807
|
});
|
|
18797
18808
|
const onBeforeDelete = (e) => {
|
|
18798
|
-
|
|
18809
|
+
if (props.multiple) {
|
|
18810
|
+
let newUrls = props.modelValue.filter((item) => {
|
|
18811
|
+
return item != e.url;
|
|
18812
|
+
});
|
|
18813
|
+
emit("update:modelValue", newUrls);
|
|
18814
|
+
} else {
|
|
18815
|
+
modelValue.value = "";
|
|
18816
|
+
}
|
|
18799
18817
|
return Promise.resolve(e);
|
|
18800
18818
|
};
|
|
18801
18819
|
vue.watch(() => props.modelValue, (newVal, oldVal) => {
|
|
18802
|
-
if (
|
|
18803
|
-
|
|
18804
|
-
|
|
18820
|
+
if (props.multiple) {
|
|
18821
|
+
if (!props.modelValue || props.modelValue.length < 1) {
|
|
18822
|
+
files.value = [];
|
|
18823
|
+
return;
|
|
18824
|
+
}
|
|
18825
|
+
files.value = props.modelValue.map((item) => {
|
|
18826
|
+
return {
|
|
18827
|
+
url: item
|
|
18828
|
+
};
|
|
18829
|
+
});
|
|
18830
|
+
} else {
|
|
18831
|
+
if (!props.modelValue) {
|
|
18832
|
+
files.value = [];
|
|
18833
|
+
return;
|
|
18834
|
+
}
|
|
18835
|
+
files.value = [{
|
|
18836
|
+
url: props.modelValue
|
|
18837
|
+
}];
|
|
18805
18838
|
}
|
|
18806
|
-
files.value = [{
|
|
18807
|
-
url: props.modelValue
|
|
18808
|
-
}];
|
|
18809
18839
|
}, {
|
|
18810
18840
|
immediate: true
|
|
18811
18841
|
});
|
|
@@ -18824,20 +18854,20 @@ var __async = (__this, __arguments, generator) => {
|
|
|
18824
18854
|
input: vue.withCtx(() => [vue.createElementVNode("div", _hoisted_1$b, [vue.createVNode(_component_van_uploader, {
|
|
18825
18855
|
modelValue: files.value,
|
|
18826
18856
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => files.value = $event),
|
|
18827
|
-
"max-count":
|
|
18857
|
+
"max-count": props.max,
|
|
18828
18858
|
afterRead: onAfterRead,
|
|
18829
18859
|
disabled: vue.unref(isDisabled),
|
|
18830
18860
|
accept: props.accept,
|
|
18831
18861
|
"upload-icon": "plus",
|
|
18832
18862
|
deletable: !vue.unref(isDisabled),
|
|
18833
18863
|
"before-delete": onBeforeDelete
|
|
18834
|
-
}, null, 8, ["modelValue", "disabled", "accept", "deletable"])])]),
|
|
18864
|
+
}, null, 8, ["modelValue", "max-count", "disabled", "accept", "deletable"])])]),
|
|
18835
18865
|
_: 1
|
|
18836
18866
|
}, 8, ["label", "required", "rules", "placeholder"])) : vue.createCommentVNode("", true);
|
|
18837
18867
|
};
|
|
18838
18868
|
}
|
|
18839
18869
|
};
|
|
18840
|
-
var FilePicker = /* @__PURE__ */ _export_sfc(_sfc_main$h, [["__scopeId", "data-v-
|
|
18870
|
+
var FilePicker = /* @__PURE__ */ _export_sfc(_sfc_main$h, [["__scopeId", "data-v-0c20dca4"]]);
|
|
18841
18871
|
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")();
|
|
18842
18872
|
const _hoisted_1$a = {
|
|
18843
18873
|
class: "department-selector"
|
|
@@ -18856,7 +18886,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
18856
18886
|
};
|
|
18857
18887
|
const _hoisted_6$4 = /* @__PURE__ */ vue.createTextVNode("\u6E05\u7A7A");
|
|
18858
18888
|
const _hoisted_7$4 = /* @__PURE__ */ vue.createTextVNode("\u786E\u5B9A");
|
|
18859
|
-
const _hoisted_8$
|
|
18889
|
+
const _hoisted_8$3 = {
|
|
18860
18890
|
class: "scroll-container"
|
|
18861
18891
|
};
|
|
18862
18892
|
const _sfc_main$g = {
|
|
@@ -19158,7 +19188,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
19158
19188
|
onClick: handleSearch
|
|
19159
19189
|
}, "\u641C\u7D22")]),
|
|
19160
19190
|
_: 1
|
|
19161
|
-
}, 8, ["modelValue"]), vue.createElementVNode("div", _hoisted_8$
|
|
19191
|
+
}, 8, ["modelValue"]), vue.createElementVNode("div", _hoisted_8$3, [vue.createVNode(_component_van_cell_group, null, {
|
|
19162
19192
|
default: vue.withCtx(() => [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(vue.unref(departments), (department) => {
|
|
19163
19193
|
return vue.openBlock(), vue.createBlock(_component_van_cell, {
|
|
19164
19194
|
key: department.id,
|
|
@@ -19212,7 +19242,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
19212
19242
|
};
|
|
19213
19243
|
const _hoisted_6$3 = /* @__PURE__ */ vue.createTextVNode("\u53D6\u6D88");
|
|
19214
19244
|
const _hoisted_7$3 = /* @__PURE__ */ vue.createTextVNode("\u786E\u5B9A");
|
|
19215
|
-
const _hoisted_8$
|
|
19245
|
+
const _hoisted_8$2 = {
|
|
19216
19246
|
class: "scroll-container"
|
|
19217
19247
|
};
|
|
19218
19248
|
const _sfc_main$f = {
|
|
@@ -19430,7 +19460,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
19430
19460
|
onClick: onSearch
|
|
19431
19461
|
}, "\u641C\u7D22")]),
|
|
19432
19462
|
_: 1
|
|
19433
|
-
}, 8, ["modelValue", "onClear", "onCancel"]), vue.createElementVNode("div", _hoisted_8$
|
|
19463
|
+
}, 8, ["modelValue", "onClear", "onCancel"]), vue.createElementVNode("div", _hoisted_8$2, [vue.createVNode(_component_van_cell_group, null, {
|
|
19434
19464
|
default: vue.withCtx(() => [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(vue.unref(subDepts), (dept) => {
|
|
19435
19465
|
return vue.openBlock(), vue.createBlock(_component_van_cell, {
|
|
19436
19466
|
key: dept.id,
|
|
@@ -19789,7 +19819,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
19789
19819
|
}
|
|
19790
19820
|
};
|
|
19791
19821
|
var UserProfile = /* @__PURE__ */ _export_sfc(_sfc_main$c, [["__scopeId", "data-v-107e26c3"]]);
|
|
19792
|
-
var BillCard_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => ".widget[data-v-
|
|
19822
|
+
var BillCard_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => ".widget[data-v-5f12f3e8] {\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-5f12f3e8] {\n padding-bottom: 8px;\n}\n.widget .card-box .card-header[data-v-5f12f3e8] {\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-5f12f3e8] {\n flex: 1;\n font-size: 14px;\n text-align: left;\n}\n.widget .card-box .card-header .user-state[data-v-5f12f3e8] {\n margin-right: 1px;\n}\n[data-v-5f12f3e8] .van-cell__value {\n flex: 2 !important;\n}\n[data-v-5f12f3e8] .van-cell__title {\n font-size: 12px !important;\n color: #666 !important;\n text-align: left !important;\n}\n[data-v-5f12f3e8] .van-cell__value {\n font-size: 12px !important;\n color: #888 !important;\n}\n[data-v-5f12f3e8] .van-cell {\n padding: 2px 10px !important;\n}")();
|
|
19793
19823
|
const _hoisted_1$6 = {
|
|
19794
19824
|
class: "widget"
|
|
19795
19825
|
};
|
|
@@ -19913,13 +19943,13 @@ var __async = (__this, __arguments, generator) => {
|
|
|
19913
19943
|
border: false,
|
|
19914
19944
|
key: i
|
|
19915
19945
|
}, null, 8, ["title", "value"]);
|
|
19916
|
-
}), 128))]),
|
|
19917
|
-
_:
|
|
19946
|
+
}), 128)), vue.renderSlot(_ctx.$slots, "foot", {}, void 0, true)]),
|
|
19947
|
+
_: 3
|
|
19918
19948
|
})]);
|
|
19919
19949
|
};
|
|
19920
19950
|
}
|
|
19921
19951
|
};
|
|
19922
|
-
var BillCard = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["__scopeId", "data-v-
|
|
19952
|
+
var BillCard = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["__scopeId", "data-v-5f12f3e8"]]);
|
|
19923
19953
|
const _sfc_main$a = {
|
|
19924
19954
|
__name: "YearDropdown",
|
|
19925
19955
|
props: {
|
|
@@ -20452,10 +20482,10 @@ var __async = (__this, __arguments, generator) => {
|
|
|
20452
20482
|
};
|
|
20453
20483
|
const _hoisted_6$1 = /* @__PURE__ */ vue.createTextVNode("\u53D6\u6D88");
|
|
20454
20484
|
const _hoisted_7$1 = /* @__PURE__ */ vue.createTextVNode("\u786E\u5B9A");
|
|
20455
|
-
const _hoisted_8 = {
|
|
20485
|
+
const _hoisted_8$1 = {
|
|
20456
20486
|
class: "scroll-container"
|
|
20457
20487
|
};
|
|
20458
|
-
const _hoisted_9 = {
|
|
20488
|
+
const _hoisted_9$1 = {
|
|
20459
20489
|
class: "cell-content"
|
|
20460
20490
|
};
|
|
20461
20491
|
const _hoisted_10 = ["onClick"];
|
|
@@ -20670,12 +20700,12 @@ var __async = (__this, __arguments, generator) => {
|
|
|
20670
20700
|
onClick: onSearch
|
|
20671
20701
|
}, "\u641C\u7D22")]),
|
|
20672
20702
|
_: 1
|
|
20673
|
-
}, 8, ["modelValue", "placeholder"]), vue.createElementVNode("div", _hoisted_8, [vue.createVNode(_component_van_cell_group, null, {
|
|
20703
|
+
}, 8, ["modelValue", "placeholder"]), vue.createElementVNode("div", _hoisted_8$1, [vue.createVNode(_component_van_cell_group, null, {
|
|
20674
20704
|
default: vue.withCtx(() => [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(vue.unref(optionNodes), (item, i) => {
|
|
20675
20705
|
return vue.openBlock(), vue.createBlock(_component_van_cell, {
|
|
20676
20706
|
key: i
|
|
20677
20707
|
}, vue.createSlots({
|
|
20678
|
-
title: vue.withCtx(() => [vue.createElementVNode("div", _hoisted_9, [item.canCheck ? (vue.openBlock(), vue.createElementBlock("div", {
|
|
20708
|
+
title: vue.withCtx(() => [vue.createElementVNode("div", _hoisted_9$1, [item.canCheck ? (vue.openBlock(), vue.createElementBlock("div", {
|
|
20679
20709
|
key: 0,
|
|
20680
20710
|
class: "circle-selector",
|
|
20681
20711
|
onClick: vue.withModifiers(($event) => onToggle(item), ["stop"])
|
|
@@ -20983,7 +21013,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
20983
21013
|
}
|
|
20984
21014
|
};
|
|
20985
21015
|
var SingleApiPicker = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__scopeId", "data-v-0c8e09c0"]]);
|
|
20986
|
-
var ObjsEditor_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => ".widget[data-v-
|
|
21016
|
+
var ObjsEditor_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => ".widget[data-v-1fa437e7] {\n background: #fff;\n box-sizing: border-box;\n height: 100%;\n text-align: left;\n font-size: 12px;\n}\n.option[data-v-1fa437e7] {\n margin: 0 8px 8px 0;\n padding: 5px 10px;\n border-radius: 6px;\n border: 2px solid #e1e1e1;\n box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);\n color: #666;\n display: inline-block;\n position: relative;\n}\n[data-v-1fa437e7] .van-field__label {\n margin: auto;\n}\n[data-v-1fa437e7] .van-cell {\n font-size: 12px;\n padding: 5px 5px;\n}\n[data-v-1fa437e7] .van-icon {\n font-size: 12px;\n}\n[data-v-1fa437e7] .van-popup .van-cell {\n padding: 5px 25px;\n}")();
|
|
20987
21017
|
const _hoisted_1 = {
|
|
20988
21018
|
class: "widget-box"
|
|
20989
21019
|
};
|
|
@@ -21000,13 +21030,19 @@ var __async = (__this, __arguments, generator) => {
|
|
|
21000
21030
|
}
|
|
21001
21031
|
};
|
|
21002
21032
|
const _hoisted_4 = {
|
|
21033
|
+
key: 0
|
|
21034
|
+
};
|
|
21035
|
+
const _hoisted_5 = {
|
|
21036
|
+
key: 1
|
|
21037
|
+
};
|
|
21038
|
+
const _hoisted_6 = {
|
|
21003
21039
|
style: {
|
|
21004
21040
|
"display": "flex",
|
|
21005
21041
|
"flex-direction": "column",
|
|
21006
21042
|
"cursor": "pointer"
|
|
21007
21043
|
}
|
|
21008
21044
|
};
|
|
21009
|
-
const
|
|
21045
|
+
const _hoisted_7 = {
|
|
21010
21046
|
style: {
|
|
21011
21047
|
"margin": "16px",
|
|
21012
21048
|
"display": "flex",
|
|
@@ -21014,8 +21050,8 @@ var __async = (__this, __arguments, generator) => {
|
|
|
21014
21050
|
"justify-content": "center"
|
|
21015
21051
|
}
|
|
21016
21052
|
};
|
|
21017
|
-
const
|
|
21018
|
-
const
|
|
21053
|
+
const _hoisted_8 = /* @__PURE__ */ vue.createTextVNode("\u4FDD\u5B58");
|
|
21054
|
+
const _hoisted_9 = /* @__PURE__ */ vue.createTextVNode("\u53D6\u6D88");
|
|
21019
21055
|
const _sfc_main = {
|
|
21020
21056
|
__name: "ObjsEditor",
|
|
21021
21057
|
props: {
|
|
@@ -21110,7 +21146,9 @@ var __async = (__this, __arguments, generator) => {
|
|
|
21110
21146
|
var _a, _b, _c, _d;
|
|
21111
21147
|
console.log("key2value", key, item[key], item);
|
|
21112
21148
|
let v = item[key];
|
|
21113
|
-
if (
|
|
21149
|
+
if (props.schema[key].type === "Images") {
|
|
21150
|
+
return (v || []).join(",");
|
|
21151
|
+
} else if (Array.isArray(v)) {
|
|
21114
21152
|
let formatValues = v.map((e) => {
|
|
21115
21153
|
let kvs = Object.keys(e).map((k) => {
|
|
21116
21154
|
var _a2, _b2, _c2, _d2;
|
|
@@ -21217,8 +21255,12 @@ var __async = (__this, __arguments, generator) => {
|
|
|
21217
21255
|
"padding": "2px 2px",
|
|
21218
21256
|
"font-size": "12px"
|
|
21219
21257
|
}
|
|
21220
|
-
}, vue.toDisplayString(`${key2name(k)}:${key2value(k, item)}`), 1)
|
|
21221
|
-
|
|
21258
|
+
}, [props.schema[k].type != "Images" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4, vue.toDisplayString(`${key2name(k)}:${key2value(k, item)}`), 1)) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_5, [vue.createVNode(ImagesPicker, {
|
|
21259
|
+
modelValue: item[k],
|
|
21260
|
+
"onUpdate:modelValue": ($event) => item[k] = $event,
|
|
21261
|
+
readonly: ""
|
|
21262
|
+
}, null, 8, ["modelValue", "onUpdate:modelValue"])]))]);
|
|
21263
|
+
}), 128))]), vue.createElementVNode("div", _hoisted_6, [props.schema.auth != "readonly" && props.auth != "readonly" && props.auth != "disabled" ? (vue.openBlock(), vue.createBlock(_component_van_icon, {
|
|
21222
21264
|
key: 0,
|
|
21223
21265
|
name: "edit",
|
|
21224
21266
|
onClick: vue.withModifiers(($event) => onEdit(index), ["stop"])
|
|
@@ -21269,9 +21311,13 @@ var __async = (__this, __arguments, generator) => {
|
|
|
21269
21311
|
modelValue: data2.inputValue[key],
|
|
21270
21312
|
"onUpdate:modelValue": ($event) => data2.inputValue[key] = $event,
|
|
21271
21313
|
placeholder: "\u9009\u62E9\u65F6\u95F4"
|
|
21272
|
-
}, null, 8, ["modelValue", "onUpdate:modelValue"])) : vue.createCommentVNode("", true),
|
|
21314
|
+
}, null, 8, ["modelValue", "onUpdate:modelValue"])) : vue.createCommentVNode("", true), props.schema[key].type == "Images" ? (vue.openBlock(), vue.createBlock(ImagesPicker, {
|
|
21273
21315
|
key: 4,
|
|
21274
21316
|
modelValue: data2.inputValue[key],
|
|
21317
|
+
"onUpdate:modelValue": ($event) => data2.inputValue[key] = $event
|
|
21318
|
+
}, null, 8, ["modelValue", "onUpdate:modelValue"])) : vue.createCommentVNode("", true), ((_f = (_e = props.schema[key]) == null ? void 0 : _e.schema) == null ? void 0 : _f.options) ? (vue.openBlock(), vue.createBlock(DataSelector, {
|
|
21319
|
+
key: 5,
|
|
21320
|
+
modelValue: data2.inputValue[key],
|
|
21275
21321
|
"onUpdate:modelValue": ($event) => data2.inputValue[key] = $event,
|
|
21276
21322
|
options: (_h = (_g = props.schema[key]) == null ? void 0 : _g.schema) == null ? void 0 : _h.options,
|
|
21277
21323
|
placeholder: `\u8BF7\u8F93\u5165${key2name(key)}`,
|
|
@@ -21281,7 +21327,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
21281
21327
|
},
|
|
21282
21328
|
onSelect: ($event) => onChangeOption(key)
|
|
21283
21329
|
}, null, 8, ["modelValue", "onUpdate:modelValue", "options", "placeholder", "columnsFieldNames", "onSelect"])) : vue.createCommentVNode("", true), props.schema[key].type == "Array" && props.schema[key].auth != "gone" ? (vue.openBlock(), vue.createBlock(_component_ObjsEditor, {
|
|
21284
|
-
key:
|
|
21330
|
+
key: 6,
|
|
21285
21331
|
modelValue: data2.inputValue[key],
|
|
21286
21332
|
"onUpdate:modelValue": ($event) => data2.inputValue[key] = $event,
|
|
21287
21333
|
schema: props.schema[key].schema
|
|
@@ -21289,19 +21335,19 @@ var __async = (__this, __arguments, generator) => {
|
|
|
21289
21335
|
}),
|
|
21290
21336
|
_: 2
|
|
21291
21337
|
}, 1032, ["label", "required", "disabled"])), [[vue.vShow, props.schema[key].auth != "gone"]]);
|
|
21292
|
-
}), 128)), vue.createElementVNode("div",
|
|
21338
|
+
}), 128)), vue.createElementVNode("div", _hoisted_7, [data2.isShowInput ? (vue.openBlock(), vue.createBlock(_component_van_button, {
|
|
21293
21339
|
key: 0,
|
|
21294
21340
|
onClick: onInputConfirm,
|
|
21295
21341
|
size: "mini"
|
|
21296
21342
|
}, {
|
|
21297
|
-
default: vue.withCtx(() => [
|
|
21343
|
+
default: vue.withCtx(() => [_hoisted_8]),
|
|
21298
21344
|
_: 1
|
|
21299
21345
|
})) : vue.createCommentVNode("", true), data2.isShowInput ? (vue.openBlock(), vue.createBlock(_component_van_button, {
|
|
21300
21346
|
key: 1,
|
|
21301
21347
|
onClick: onInputCancel,
|
|
21302
21348
|
size: "mini"
|
|
21303
21349
|
}, {
|
|
21304
|
-
default: vue.withCtx(() => [
|
|
21350
|
+
default: vue.withCtx(() => [_hoisted_9]),
|
|
21305
21351
|
_: 1
|
|
21306
21352
|
})) : vue.createCommentVNode("", true)])]),
|
|
21307
21353
|
_: 1
|
|
@@ -21316,7 +21362,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
21316
21362
|
};
|
|
21317
21363
|
}
|
|
21318
21364
|
};
|
|
21319
|
-
var ObjsEditor = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
21365
|
+
var ObjsEditor = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-1fa437e7"]]);
|
|
21320
21366
|
const secret_notify = () => {
|
|
21321
21367
|
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 });
|
|
21322
21368
|
};
|
package/package.json
CHANGED
|
@@ -8,13 +8,17 @@
|
|
|
8
8
|
</div>
|
|
9
9
|
<van-tag class="user-state" size="large" :color="userState2color(props.userState)">{{
|
|
10
10
|
userState2title(props.userState)
|
|
11
|
-
|
|
12
|
-
<van-tag class="process-state" mark plain size="large"
|
|
13
|
-
|
|
11
|
+
}}</van-tag>
|
|
12
|
+
<van-tag class="process-state" mark plain size="large"
|
|
13
|
+
:color="processState2color(props.processState)">{{
|
|
14
|
+
processState2title(props.processState)
|
|
14
15
|
}}</van-tag>
|
|
15
16
|
</div>
|
|
16
17
|
|
|
17
|
-
<van-cell :title="item.title" :value="item.value" :border="false" v-for="(item,i) in props.fields"
|
|
18
|
+
<van-cell :title="item.title" :value="item.value" :border="false" v-for="(item, i) in props.fields"
|
|
19
|
+
:key="i" />
|
|
20
|
+
|
|
21
|
+
<slot name="foot"></slot>
|
|
18
22
|
</van-cell-group>
|
|
19
23
|
</div>
|
|
20
24
|
</template>
|
|
@@ -25,29 +29,29 @@ import util from '@/util'
|
|
|
25
29
|
|
|
26
30
|
const props = defineProps({
|
|
27
31
|
// 单据类型
|
|
28
|
-
category:{
|
|
29
|
-
type:String,
|
|
30
|
-
default:''
|
|
32
|
+
category: {
|
|
33
|
+
type: String,
|
|
34
|
+
default: ''
|
|
31
35
|
},
|
|
32
36
|
// 单号
|
|
33
|
-
no:{
|
|
34
|
-
type:String,
|
|
35
|
-
default:''
|
|
37
|
+
no: {
|
|
38
|
+
type: String,
|
|
39
|
+
default: ''
|
|
36
40
|
},
|
|
37
41
|
// 流程状态
|
|
38
|
-
processState:{
|
|
39
|
-
type:String,
|
|
40
|
-
default:''
|
|
42
|
+
processState: {
|
|
43
|
+
type: String,
|
|
44
|
+
default: ''
|
|
41
45
|
},
|
|
42
46
|
// 用户状态
|
|
43
|
-
userState:{
|
|
44
|
-
type:String,
|
|
45
|
-
default:''
|
|
47
|
+
userState: {
|
|
48
|
+
type: String,
|
|
49
|
+
default: ''
|
|
46
50
|
},
|
|
47
51
|
// 摘要字段
|
|
48
|
-
fields:{
|
|
49
|
-
type:Array,
|
|
50
|
-
default:[]
|
|
52
|
+
fields: {
|
|
53
|
+
type: Array,
|
|
54
|
+
default: []
|
|
51
55
|
}
|
|
52
56
|
})
|
|
53
57
|
const data = reactive({
|
|
@@ -95,7 +99,7 @@ const userState2color = (state) => {
|
|
|
95
99
|
}
|
|
96
100
|
}
|
|
97
101
|
|
|
98
|
-
const userState2title = (state)=>{
|
|
102
|
+
const userState2title = (state) => {
|
|
99
103
|
if (state == 'unstart') {
|
|
100
104
|
return '未启动'
|
|
101
105
|
} else if (state == 'started') {
|
|
@@ -119,38 +123,43 @@ const userState2title = (state)=>{
|
|
|
119
123
|
|
|
120
124
|
.card-box {
|
|
121
125
|
padding-bottom: 8px;
|
|
126
|
+
|
|
122
127
|
.card-header {
|
|
123
128
|
display: flex;
|
|
124
129
|
align-items: center;
|
|
125
130
|
justify-content: space-between;
|
|
126
131
|
padding: 15px 10px;
|
|
127
132
|
border-bottom: 1px solid #eee;
|
|
128
|
-
|
|
129
|
-
|
|
133
|
+
|
|
134
|
+
.card-sum {
|
|
135
|
+
flex: 1;
|
|
130
136
|
font-size: 14px;
|
|
131
137
|
text-align: left;
|
|
132
138
|
}
|
|
133
|
-
|
|
139
|
+
|
|
140
|
+
.user-state {
|
|
134
141
|
margin-right: 1px;
|
|
135
142
|
}
|
|
136
143
|
}
|
|
137
144
|
}
|
|
138
145
|
}
|
|
139
146
|
|
|
140
|
-
:deep(.van-cell__value){
|
|
141
|
-
flex:2 !important;
|
|
147
|
+
:deep(.van-cell__value) {
|
|
148
|
+
flex: 2 !important;
|
|
142
149
|
}
|
|
143
150
|
|
|
144
|
-
:deep(.van-cell__title){
|
|
151
|
+
:deep(.van-cell__title) {
|
|
145
152
|
font-size: 12px !important;
|
|
146
153
|
color: #666 !important;
|
|
147
154
|
text-align: left !important;
|
|
148
155
|
}
|
|
149
|
-
|
|
156
|
+
|
|
157
|
+
:deep(.van-cell__value) {
|
|
150
158
|
font-size: 12px !important;
|
|
151
159
|
color: #888 !important;
|
|
152
160
|
}
|
|
153
|
-
|
|
161
|
+
|
|
162
|
+
:deep(.van-cell) {
|
|
154
163
|
padding: 2px 10px !important;
|
|
155
164
|
}
|
|
156
165
|
</style>
|