sun-biz 0.0.4-beta.26 → 0.0.4-beta.27
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/dist/components/index.js +54 -73
- package/dist/components/print/hooks/index.d.ts +1 -0
- package/dist/index.js +54 -73
- package/package.json +1 -1
package/dist/components/index.js
CHANGED
|
@@ -580,11 +580,11 @@ function useTableConfigColumn(changeInputSort, length, disabledDraggable) {
|
|
|
580
580
|
const changeSort = debounce(changeInputSort, 1200);
|
|
581
581
|
return [
|
|
582
582
|
{
|
|
583
|
-
label:
|
|
584
|
-
prop:
|
|
583
|
+
label: "列名称",
|
|
584
|
+
prop: "label",
|
|
585
585
|
minWidth: 170,
|
|
586
586
|
render: (row)=>(0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)("div", {
|
|
587
|
-
class:
|
|
587
|
+
class: "cursor-pointer",
|
|
588
588
|
onClick: (event)=>{
|
|
589
589
|
event.stopPropagation();
|
|
590
590
|
switch(row.ascendFlag){
|
|
@@ -604,10 +604,10 @@ function useTableConfigColumn(changeInputSort, length, disabledDraggable) {
|
|
|
604
604
|
class: "caret-wrapper"
|
|
605
605
|
}, [
|
|
606
606
|
(0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)("i", {
|
|
607
|
-
class: `sort-caret ascending ${row.ascendFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES ?
|
|
607
|
+
class: `sort-caret ascending ${row.ascendFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES ? "!border-b-blue-500" : ""}`
|
|
608
608
|
}, null),
|
|
609
609
|
(0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)("i", {
|
|
610
|
-
class: `sort-caret descending ${row.ascendFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.NO ?
|
|
610
|
+
class: `sort-caret descending ${row.ascendFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.NO ? "!border-t-blue-500" : ""}`
|
|
611
611
|
}, null)
|
|
612
612
|
])
|
|
613
613
|
], 8, [
|
|
@@ -615,53 +615,54 @@ function useTableConfigColumn(changeInputSort, length, disabledDraggable) {
|
|
|
615
615
|
])
|
|
616
616
|
},
|
|
617
617
|
{
|
|
618
|
-
label:
|
|
619
|
-
prop:
|
|
618
|
+
label: "属性",
|
|
619
|
+
prop: "prop",
|
|
620
620
|
supportCopyAndTips: true,
|
|
621
621
|
minWidth: 170
|
|
622
622
|
},
|
|
623
623
|
{
|
|
624
|
-
label:
|
|
625
|
-
prop:
|
|
624
|
+
label: "显示标志",
|
|
625
|
+
prop: "displayFlag",
|
|
626
626
|
minWidth: 170,
|
|
627
627
|
editable: true,
|
|
628
628
|
render: (row)=>(0, __WEBPACK_EXTERNAL_MODULE_vue__.h)(__WEBPACK_EXTERNAL_MODULE_element_sun__.ElCheckbox, {
|
|
629
|
-
class:
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
size:
|
|
629
|
+
class: "w-full justify-center",
|
|
630
|
+
"true-value": 1,
|
|
631
|
+
"false-value": 0,
|
|
632
|
+
size: "small",
|
|
633
633
|
modelValue: row.displayFlag,
|
|
634
|
-
|
|
634
|
+
"onUpdate:modelValue": (value)=>row.displayFlag = value
|
|
635
635
|
})
|
|
636
636
|
},
|
|
637
637
|
{
|
|
638
|
-
label:
|
|
639
|
-
prop:
|
|
638
|
+
label: "列宽 (最小值)",
|
|
639
|
+
prop: "minWidth",
|
|
640
640
|
minWidth: 170,
|
|
641
641
|
render: (row)=>(0, __WEBPACK_EXTERNAL_MODULE_vue__.h)(__WEBPACK_EXTERNAL_MODULE_element_sun__.ElInputNumber, {
|
|
642
642
|
maxLength: 16,
|
|
643
643
|
min: 0,
|
|
644
|
+
precision: 0,
|
|
644
645
|
modelValue: row.minWidth,
|
|
645
|
-
|
|
646
|
-
size:
|
|
647
|
-
placeholder:
|
|
646
|
+
"onUpdate:modelValue": (value)=>row.minWidth = value,
|
|
647
|
+
size: "small",
|
|
648
|
+
placeholder: "请输入列宽 (最小值)"
|
|
648
649
|
})
|
|
649
650
|
},
|
|
650
651
|
{
|
|
651
|
-
label:
|
|
652
|
-
prop:
|
|
652
|
+
label: "列排序",
|
|
653
|
+
prop: "sort",
|
|
653
654
|
minWidth: 170,
|
|
654
655
|
render: (row, index)=>(0, __WEBPACK_EXTERNAL_MODULE_vue__.h)(__WEBPACK_EXTERNAL_MODULE_element_sun__.ElInputNumber, {
|
|
655
656
|
max: length,
|
|
656
657
|
min: 0,
|
|
657
658
|
modelValue: row.sort,
|
|
658
659
|
disabled: disabledDraggable.value,
|
|
659
|
-
|
|
660
|
+
"onUpdate:modelValue": (value)=>row.sort = value,
|
|
660
661
|
onInput: (sort)=>{
|
|
661
662
|
changeSort(index, sort);
|
|
662
663
|
},
|
|
663
|
-
size:
|
|
664
|
-
placeholder:
|
|
664
|
+
size: "small",
|
|
665
|
+
placeholder: "请输入排序"
|
|
665
666
|
})
|
|
666
667
|
}
|
|
667
668
|
];
|
|
@@ -1689,7 +1690,6 @@ function dbgrid_component_settingvue_type_script_setup_true_lang_tsx_isSlot(s) {
|
|
|
1689
1690
|
}),
|
|
1690
1691
|
(0, __WEBPACK_EXTERNAL_MODULE_vue__.createElementVNode)("div", null, [
|
|
1691
1692
|
(0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)(pro_table, {
|
|
1692
|
-
disabled: "",
|
|
1693
1693
|
"columns-setting": {
|
|
1694
1694
|
disabled: true
|
|
1695
1695
|
},
|
|
@@ -1829,7 +1829,7 @@ function dbgrid_component_settingvue_type_script_setup_true_lang_tsx_isSlot(s) {
|
|
|
1829
1829
|
const dbgrid_component_setting_exports_ = /*#__PURE__*/ (0, exportHelper["default"])(dbgrid_component_settingvue_type_script_setup_true_lang_tsx, [
|
|
1830
1830
|
[
|
|
1831
1831
|
'__scopeId',
|
|
1832
|
-
"data-v-
|
|
1832
|
+
"data-v-c49e91ea"
|
|
1833
1833
|
]
|
|
1834
1834
|
]);
|
|
1835
1835
|
/* ESM default export */ const dbgrid_component_setting = dbgrid_component_setting_exports_;
|
|
@@ -4654,6 +4654,7 @@ const isOptionDisabled = (tagId, selectList)=>selectList.includes(tagId);
|
|
|
4654
4654
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event)=>innerValue.value = $event),
|
|
4655
4655
|
multiple: props.multiple ?? true,
|
|
4656
4656
|
filterable: "",
|
|
4657
|
+
clearable: "",
|
|
4657
4658
|
disabled: props.disabled ?? false,
|
|
4658
4659
|
class: (0, __WEBPACK_EXTERNAL_MODULE_vue__.normalizeClass)(selectClass.value),
|
|
4659
4660
|
placeholder: props.placeholder ?? '请选择',
|
|
@@ -5774,12 +5775,6 @@ var constant_DATA_SOURCE_CONTENT_TYPE_CODE = /*#__PURE__*/ function(DATA_SOURCE_
|
|
|
5774
5775
|
* type 数据源格式类型代码
|
|
5775
5776
|
* @param [type='BASE64']
|
|
5776
5777
|
*/ function useWebPrint(content, type = constant_DATA_SOURCE_CONTENT_TYPE_CODE.BASE64) {
|
|
5777
|
-
const isFirefox = navigator.userAgent.includes("Firefox");
|
|
5778
|
-
if (isFirefox) {
|
|
5779
|
-
// Firefox 的特殊处理
|
|
5780
|
-
handleFirefoxPrint(content, type);
|
|
5781
|
-
return;
|
|
5782
|
-
}
|
|
5783
5778
|
// 创建隐藏的iframe
|
|
5784
5779
|
const iframe = document.createElement("iframe");
|
|
5785
5780
|
iframe.style.position = "fixed";
|
|
@@ -5790,9 +5785,28 @@ var constant_DATA_SOURCE_CONTENT_TYPE_CODE = /*#__PURE__*/ function(DATA_SOURCE_
|
|
|
5790
5785
|
iframe.style.border = "0";
|
|
5791
5786
|
iframe.style.visibility = "hidden"; // 添加这行确保iframe完全隐藏
|
|
5792
5787
|
document.body.appendChild(iframe);
|
|
5788
|
+
// 动态添加打印样式
|
|
5789
|
+
const style = document.createElement("style");
|
|
5790
|
+
style.innerHTML = `
|
|
5791
|
+
@page {
|
|
5792
|
+
margin: 0; /* 移除页边距 */
|
|
5793
|
+
size: auto; /* 使用默认纸张大小 */
|
|
5794
|
+
}
|
|
5795
|
+
@media print {
|
|
5796
|
+
body {
|
|
5797
|
+
margin: 0;
|
|
5798
|
+
padding: 0;
|
|
5799
|
+
}
|
|
5800
|
+
img {
|
|
5801
|
+
max-width: 100%;
|
|
5802
|
+
height: auto;
|
|
5803
|
+
}
|
|
5804
|
+
}
|
|
5805
|
+
`;
|
|
5793
5806
|
// 等待iframe加载完成
|
|
5794
5807
|
iframe.onload = async ()=>{
|
|
5795
5808
|
const iframeDoc = iframe.contentDocument || iframe.contentWindow?.document;
|
|
5809
|
+
iframeDoc.head.appendChild(style);
|
|
5796
5810
|
// 根据类型处理内容
|
|
5797
5811
|
if (type === constant_DATA_SOURCE_CONTENT_TYPE_CODE.H5 || type === constant_DATA_SOURCE_CONTENT_TYPE_CODE.JSON) {
|
|
5798
5812
|
iframeDoc.body.innerHTML = content;
|
|
@@ -5815,13 +5829,14 @@ var constant_DATA_SOURCE_CONTENT_TYPE_CODE = /*#__PURE__*/ function(DATA_SOURCE_
|
|
|
5815
5829
|
// const url = URL.createObjectURL(blob);
|
|
5816
5830
|
// iframeDoc.body.innerHTML = `<embed src="${url}" type="application/pdf" width="100%" height="100%">`;
|
|
5817
5831
|
// }
|
|
5818
|
-
|
|
5819
|
-
await
|
|
5832
|
+
// 确保内容完全渲染
|
|
5833
|
+
await new Promise((resolve)=>setTimeout(resolve, 100));
|
|
5834
|
+
// 触发打印
|
|
5835
|
+
iframe.contentWindow?.focus();
|
|
5836
|
+
iframe.contentWindow?.print();
|
|
5820
5837
|
// 打印完成后移除iframe
|
|
5821
|
-
|
|
5838
|
+
document.body.removeChild(iframe);
|
|
5822
5839
|
};
|
|
5823
|
-
// 最后添加到DOM
|
|
5824
|
-
document.body.appendChild(iframe);
|
|
5825
5840
|
// 强制触发加载
|
|
5826
5841
|
iframe.src = "about:blank";
|
|
5827
5842
|
}
|
|
@@ -5923,41 +5938,7 @@ var constant_DATA_SOURCE_CONTENT_TYPE_CODE = /*#__PURE__*/ function(DATA_SOURCE_
|
|
|
5923
5938
|
renderDialog();
|
|
5924
5939
|
// 将容器添加到 body
|
|
5925
5940
|
document.body.appendChild(container);
|
|
5926
|
-
}
|
|
5927
|
-
async function handleFirefoxPrint(content, type = constant_DATA_SOURCE_CONTENT_TYPE_CODE.BASE64) {
|
|
5928
|
-
// 创建一个临时 div 用于渲染内容
|
|
5929
|
-
const tempDiv = document.createElement("div");
|
|
5930
|
-
tempDiv.style.position = "fixed";
|
|
5931
|
-
tempDiv.style.right = "0";
|
|
5932
|
-
tempDiv.style.bottom = "0";
|
|
5933
|
-
tempDiv.style.width = "0";
|
|
5934
|
-
tempDiv.style.height = "0";
|
|
5935
|
-
tempDiv.style.overflow = "hidden";
|
|
5936
|
-
document.body.appendChild(tempDiv);
|
|
5937
|
-
// 根据类型填充内容
|
|
5938
|
-
if (type === constant_DATA_SOURCE_CONTENT_TYPE_CODE.H5 || type === constant_DATA_SOURCE_CONTENT_TYPE_CODE.JSON) tempDiv.innerHTML = content;
|
|
5939
|
-
else if (type === constant_DATA_SOURCE_CONTENT_TYPE_CODE.BASE64) {
|
|
5940
|
-
const img = new Image();
|
|
5941
|
-
img.src = content.startsWith("data:image") ? content : `data:image/png;base64,${content}`;
|
|
5942
|
-
tempDiv.appendChild(img);
|
|
5943
|
-
// 等待图片加载
|
|
5944
|
-
await new Promise((resolve)=>{
|
|
5945
|
-
img.onload = resolve;
|
|
5946
|
-
img.onerror = ()=>{
|
|
5947
|
-
tempDiv.innerHTML = "<p>加载失败,请检查数据</p>";
|
|
5948
|
-
resolve(void 0);
|
|
5949
|
-
};
|
|
5950
|
-
});
|
|
5951
|
-
}
|
|
5952
|
-
// 临时显示内容并打印
|
|
5953
|
-
tempDiv.style.width = "100%";
|
|
5954
|
-
tempDiv.style.height = "100%";
|
|
5955
|
-
tempDiv.style.overflow = "visible";
|
|
5956
|
-
// 使用 window.print() 直接打印当前页面
|
|
5957
|
-
window.print();
|
|
5958
|
-
// 打印完成后移除临时元素
|
|
5959
|
-
document.body.removeChild(tempDiv);
|
|
5960
|
-
}
|
|
5941
|
+
} /** 此处忽略修改之后已经支持了火狐,不需要判断了 */ // async function handleFirefoxPrint(
|
|
5961
5942
|
const createPrint = ()=>{
|
|
5962
5943
|
/**
|
|
5963
5944
|
* 打印主步骤
|
|
@@ -10369,7 +10350,7 @@ const access_infovue_type_script_setup_true_lang_ts_name_accessInfo_hoisted_3 =
|
|
|
10369
10350
|
[
|
|
10370
10351
|
_directive_shortcut,
|
|
10371
10352
|
{
|
|
10372
|
-
commandNo: '
|
|
10353
|
+
commandNo: 'JSZJ:XHZ'
|
|
10373
10354
|
}
|
|
10374
10355
|
]
|
|
10375
10356
|
]) : (0, __WEBPACK_EXTERNAL_MODULE_vue__.createCommentVNode)("", true),
|
package/dist/index.js
CHANGED
|
@@ -616,11 +616,11 @@ function useTableConfigColumn(changeInputSort, length, disabledDraggable) {
|
|
|
616
616
|
const changeSort = debounce(changeInputSort, 1200);
|
|
617
617
|
return [
|
|
618
618
|
{
|
|
619
|
-
label:
|
|
620
|
-
prop:
|
|
619
|
+
label: "列名称",
|
|
620
|
+
prop: "label",
|
|
621
621
|
minWidth: 170,
|
|
622
622
|
render: (row)=>(0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)("div", {
|
|
623
|
-
class:
|
|
623
|
+
class: "cursor-pointer",
|
|
624
624
|
onClick: (event)=>{
|
|
625
625
|
event.stopPropagation();
|
|
626
626
|
switch(row.ascendFlag){
|
|
@@ -640,10 +640,10 @@ function useTableConfigColumn(changeInputSort, length, disabledDraggable) {
|
|
|
640
640
|
class: "caret-wrapper"
|
|
641
641
|
}, [
|
|
642
642
|
(0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)("i", {
|
|
643
|
-
class: `sort-caret ascending ${row.ascendFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES ?
|
|
643
|
+
class: `sort-caret ascending ${row.ascendFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES ? "!border-b-blue-500" : ""}`
|
|
644
644
|
}, null),
|
|
645
645
|
(0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)("i", {
|
|
646
|
-
class: `sort-caret descending ${row.ascendFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.NO ?
|
|
646
|
+
class: `sort-caret descending ${row.ascendFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.NO ? "!border-t-blue-500" : ""}`
|
|
647
647
|
}, null)
|
|
648
648
|
])
|
|
649
649
|
], 8, [
|
|
@@ -651,53 +651,54 @@ function useTableConfigColumn(changeInputSort, length, disabledDraggable) {
|
|
|
651
651
|
])
|
|
652
652
|
},
|
|
653
653
|
{
|
|
654
|
-
label:
|
|
655
|
-
prop:
|
|
654
|
+
label: "属性",
|
|
655
|
+
prop: "prop",
|
|
656
656
|
supportCopyAndTips: true,
|
|
657
657
|
minWidth: 170
|
|
658
658
|
},
|
|
659
659
|
{
|
|
660
|
-
label:
|
|
661
|
-
prop:
|
|
660
|
+
label: "显示标志",
|
|
661
|
+
prop: "displayFlag",
|
|
662
662
|
minWidth: 170,
|
|
663
663
|
editable: true,
|
|
664
664
|
render: (row)=>(0, __WEBPACK_EXTERNAL_MODULE_vue__.h)(__WEBPACK_EXTERNAL_MODULE_element_sun__.ElCheckbox, {
|
|
665
|
-
class:
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
size:
|
|
665
|
+
class: "w-full justify-center",
|
|
666
|
+
"true-value": 1,
|
|
667
|
+
"false-value": 0,
|
|
668
|
+
size: "small",
|
|
669
669
|
modelValue: row.displayFlag,
|
|
670
|
-
|
|
670
|
+
"onUpdate:modelValue": (value)=>row.displayFlag = value
|
|
671
671
|
})
|
|
672
672
|
},
|
|
673
673
|
{
|
|
674
|
-
label:
|
|
675
|
-
prop:
|
|
674
|
+
label: "列宽 (最小值)",
|
|
675
|
+
prop: "minWidth",
|
|
676
676
|
minWidth: 170,
|
|
677
677
|
render: (row)=>(0, __WEBPACK_EXTERNAL_MODULE_vue__.h)(__WEBPACK_EXTERNAL_MODULE_element_sun__.ElInputNumber, {
|
|
678
678
|
maxLength: 16,
|
|
679
679
|
min: 0,
|
|
680
|
+
precision: 0,
|
|
680
681
|
modelValue: row.minWidth,
|
|
681
|
-
|
|
682
|
-
size:
|
|
683
|
-
placeholder:
|
|
682
|
+
"onUpdate:modelValue": (value)=>row.minWidth = value,
|
|
683
|
+
size: "small",
|
|
684
|
+
placeholder: "请输入列宽 (最小值)"
|
|
684
685
|
})
|
|
685
686
|
},
|
|
686
687
|
{
|
|
687
|
-
label:
|
|
688
|
-
prop:
|
|
688
|
+
label: "列排序",
|
|
689
|
+
prop: "sort",
|
|
689
690
|
minWidth: 170,
|
|
690
691
|
render: (row, index)=>(0, __WEBPACK_EXTERNAL_MODULE_vue__.h)(__WEBPACK_EXTERNAL_MODULE_element_sun__.ElInputNumber, {
|
|
691
692
|
max: length,
|
|
692
693
|
min: 0,
|
|
693
694
|
modelValue: row.sort,
|
|
694
695
|
disabled: disabledDraggable.value,
|
|
695
|
-
|
|
696
|
+
"onUpdate:modelValue": (value)=>row.sort = value,
|
|
696
697
|
onInput: (sort)=>{
|
|
697
698
|
changeSort(index, sort);
|
|
698
699
|
},
|
|
699
|
-
size:
|
|
700
|
-
placeholder:
|
|
700
|
+
size: "small",
|
|
701
|
+
placeholder: "请输入排序"
|
|
701
702
|
})
|
|
702
703
|
}
|
|
703
704
|
];
|
|
@@ -1725,7 +1726,6 @@ function dbgrid_component_settingvue_type_script_setup_true_lang_tsx_isSlot(s) {
|
|
|
1725
1726
|
}),
|
|
1726
1727
|
(0, __WEBPACK_EXTERNAL_MODULE_vue__.createElementVNode)("div", null, [
|
|
1727
1728
|
(0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)(pro_table, {
|
|
1728
|
-
disabled: "",
|
|
1729
1729
|
"columns-setting": {
|
|
1730
1730
|
disabled: true
|
|
1731
1731
|
},
|
|
@@ -1865,7 +1865,7 @@ function dbgrid_component_settingvue_type_script_setup_true_lang_tsx_isSlot(s) {
|
|
|
1865
1865
|
const dbgrid_component_setting_exports_ = /*#__PURE__*/ (0, exportHelper["default"])(dbgrid_component_settingvue_type_script_setup_true_lang_tsx, [
|
|
1866
1866
|
[
|
|
1867
1867
|
'__scopeId',
|
|
1868
|
-
"data-v-
|
|
1868
|
+
"data-v-c49e91ea"
|
|
1869
1869
|
]
|
|
1870
1870
|
]);
|
|
1871
1871
|
/* ESM default export */ const dbgrid_component_setting = dbgrid_component_setting_exports_;
|
|
@@ -5146,6 +5146,7 @@ const isOptionDisabled = (tagId, selectList)=>selectList.includes(tagId);
|
|
|
5146
5146
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event)=>innerValue.value = $event),
|
|
5147
5147
|
multiple: props.multiple ?? true,
|
|
5148
5148
|
filterable: "",
|
|
5149
|
+
clearable: "",
|
|
5149
5150
|
disabled: props.disabled ?? false,
|
|
5150
5151
|
class: (0, __WEBPACK_EXTERNAL_MODULE_vue__.normalizeClass)(selectClass.value),
|
|
5151
5152
|
placeholder: props.placeholder ?? '请选择',
|
|
@@ -6266,12 +6267,6 @@ var constant_DATA_SOURCE_CONTENT_TYPE_CODE = /*#__PURE__*/ function(DATA_SOURCE_
|
|
|
6266
6267
|
* type 数据源格式类型代码
|
|
6267
6268
|
* @param [type='BASE64']
|
|
6268
6269
|
*/ function useWebPrint(content, type = constant_DATA_SOURCE_CONTENT_TYPE_CODE.BASE64) {
|
|
6269
|
-
const isFirefox = navigator.userAgent.includes("Firefox");
|
|
6270
|
-
if (isFirefox) {
|
|
6271
|
-
// Firefox 的特殊处理
|
|
6272
|
-
handleFirefoxPrint(content, type);
|
|
6273
|
-
return;
|
|
6274
|
-
}
|
|
6275
6270
|
// 创建隐藏的iframe
|
|
6276
6271
|
const iframe = document.createElement("iframe");
|
|
6277
6272
|
iframe.style.position = "fixed";
|
|
@@ -6282,9 +6277,28 @@ var constant_DATA_SOURCE_CONTENT_TYPE_CODE = /*#__PURE__*/ function(DATA_SOURCE_
|
|
|
6282
6277
|
iframe.style.border = "0";
|
|
6283
6278
|
iframe.style.visibility = "hidden"; // 添加这行确保iframe完全隐藏
|
|
6284
6279
|
document.body.appendChild(iframe);
|
|
6280
|
+
// 动态添加打印样式
|
|
6281
|
+
const style = document.createElement("style");
|
|
6282
|
+
style.innerHTML = `
|
|
6283
|
+
@page {
|
|
6284
|
+
margin: 0; /* 移除页边距 */
|
|
6285
|
+
size: auto; /* 使用默认纸张大小 */
|
|
6286
|
+
}
|
|
6287
|
+
@media print {
|
|
6288
|
+
body {
|
|
6289
|
+
margin: 0;
|
|
6290
|
+
padding: 0;
|
|
6291
|
+
}
|
|
6292
|
+
img {
|
|
6293
|
+
max-width: 100%;
|
|
6294
|
+
height: auto;
|
|
6295
|
+
}
|
|
6296
|
+
}
|
|
6297
|
+
`;
|
|
6285
6298
|
// 等待iframe加载完成
|
|
6286
6299
|
iframe.onload = async ()=>{
|
|
6287
6300
|
const iframeDoc = iframe.contentDocument || iframe.contentWindow?.document;
|
|
6301
|
+
iframeDoc.head.appendChild(style);
|
|
6288
6302
|
// 根据类型处理内容
|
|
6289
6303
|
if (type === constant_DATA_SOURCE_CONTENT_TYPE_CODE.H5 || type === constant_DATA_SOURCE_CONTENT_TYPE_CODE.JSON) {
|
|
6290
6304
|
iframeDoc.body.innerHTML = content;
|
|
@@ -6307,13 +6321,14 @@ var constant_DATA_SOURCE_CONTENT_TYPE_CODE = /*#__PURE__*/ function(DATA_SOURCE_
|
|
|
6307
6321
|
// const url = URL.createObjectURL(blob);
|
|
6308
6322
|
// iframeDoc.body.innerHTML = `<embed src="${url}" type="application/pdf" width="100%" height="100%">`;
|
|
6309
6323
|
// }
|
|
6310
|
-
|
|
6311
|
-
await
|
|
6324
|
+
// 确保内容完全渲染
|
|
6325
|
+
await new Promise((resolve)=>setTimeout(resolve, 100));
|
|
6326
|
+
// 触发打印
|
|
6327
|
+
iframe.contentWindow?.focus();
|
|
6328
|
+
iframe.contentWindow?.print();
|
|
6312
6329
|
// 打印完成后移除iframe
|
|
6313
|
-
|
|
6330
|
+
document.body.removeChild(iframe);
|
|
6314
6331
|
};
|
|
6315
|
-
// 最后添加到DOM
|
|
6316
|
-
document.body.appendChild(iframe);
|
|
6317
6332
|
// 强制触发加载
|
|
6318
6333
|
iframe.src = "about:blank";
|
|
6319
6334
|
}
|
|
@@ -6415,41 +6430,7 @@ var constant_DATA_SOURCE_CONTENT_TYPE_CODE = /*#__PURE__*/ function(DATA_SOURCE_
|
|
|
6415
6430
|
renderDialog();
|
|
6416
6431
|
// 将容器添加到 body
|
|
6417
6432
|
document.body.appendChild(container);
|
|
6418
|
-
}
|
|
6419
|
-
async function handleFirefoxPrint(content, type = constant_DATA_SOURCE_CONTENT_TYPE_CODE.BASE64) {
|
|
6420
|
-
// 创建一个临时 div 用于渲染内容
|
|
6421
|
-
const tempDiv = document.createElement("div");
|
|
6422
|
-
tempDiv.style.position = "fixed";
|
|
6423
|
-
tempDiv.style.right = "0";
|
|
6424
|
-
tempDiv.style.bottom = "0";
|
|
6425
|
-
tempDiv.style.width = "0";
|
|
6426
|
-
tempDiv.style.height = "0";
|
|
6427
|
-
tempDiv.style.overflow = "hidden";
|
|
6428
|
-
document.body.appendChild(tempDiv);
|
|
6429
|
-
// 根据类型填充内容
|
|
6430
|
-
if (type === constant_DATA_SOURCE_CONTENT_TYPE_CODE.H5 || type === constant_DATA_SOURCE_CONTENT_TYPE_CODE.JSON) tempDiv.innerHTML = content;
|
|
6431
|
-
else if (type === constant_DATA_SOURCE_CONTENT_TYPE_CODE.BASE64) {
|
|
6432
|
-
const img = new Image();
|
|
6433
|
-
img.src = content.startsWith("data:image") ? content : `data:image/png;base64,${content}`;
|
|
6434
|
-
tempDiv.appendChild(img);
|
|
6435
|
-
// 等待图片加载
|
|
6436
|
-
await new Promise((resolve)=>{
|
|
6437
|
-
img.onload = resolve;
|
|
6438
|
-
img.onerror = ()=>{
|
|
6439
|
-
tempDiv.innerHTML = "<p>加载失败,请检查数据</p>";
|
|
6440
|
-
resolve(void 0);
|
|
6441
|
-
};
|
|
6442
|
-
});
|
|
6443
|
-
}
|
|
6444
|
-
// 临时显示内容并打印
|
|
6445
|
-
tempDiv.style.width = "100%";
|
|
6446
|
-
tempDiv.style.height = "100%";
|
|
6447
|
-
tempDiv.style.overflow = "visible";
|
|
6448
|
-
// 使用 window.print() 直接打印当前页面
|
|
6449
|
-
window.print();
|
|
6450
|
-
// 打印完成后移除临时元素
|
|
6451
|
-
document.body.removeChild(tempDiv);
|
|
6452
|
-
}
|
|
6433
|
+
} /** 此处忽略修改之后已经支持了火狐,不需要判断了 */ // async function handleFirefoxPrint(
|
|
6453
6434
|
const createPrint = ()=>{
|
|
6454
6435
|
/**
|
|
6455
6436
|
* 打印主步骤
|
|
@@ -10051,7 +10032,7 @@ const access_infovue_type_script_setup_true_lang_ts_name_accessInfo_hoisted_3 =
|
|
|
10051
10032
|
[
|
|
10052
10033
|
_directive_shortcut,
|
|
10053
10034
|
{
|
|
10054
|
-
commandNo: '
|
|
10035
|
+
commandNo: 'JSZJ:XHZ'
|
|
10055
10036
|
}
|
|
10056
10037
|
]
|
|
10057
10038
|
]) : (0, __WEBPACK_EXTERNAL_MODULE_vue__.createCommentVNode)("", true),
|