sun-biz 0.0.3-beta.10 → 0.0.3-beta.12
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 +387 -349
- package/dist/components/print/index.d.ts +2 -1
- package/dist/components/print/print.d.ts +6 -5
- package/dist/components/print/template.d.ts +1 -0
- package/dist/components/pro-dialog/hooks/useDialog.d.ts +1 -1
- package/dist/index.js +387 -349
- package/package.json +1 -1
package/dist/components/index.js
CHANGED
|
@@ -655,8 +655,8 @@ function useAppConfigData(name) {
|
|
|
655
655
|
* @param params
|
|
656
656
|
* @returns
|
|
657
657
|
*/ const queryUserList = (params)=>(0, __WEBPACK_EXTERNAL_MODULE__sun_toolkit_request__.dictRequest)('/user/queryUserListByExample', params);
|
|
658
|
-
function useDialog() {
|
|
659
|
-
const visible = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(
|
|
658
|
+
function useDialog(initialVisible = false) {
|
|
659
|
+
const visible = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(initialVisible);
|
|
660
660
|
const loading = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(false);
|
|
661
661
|
const openDialog = ()=>visible.value = true;
|
|
662
662
|
const closeDialog = ()=>visible.value = false;
|
|
@@ -672,6 +672,7 @@ function useDialog() {
|
|
|
672
672
|
};
|
|
673
673
|
}
|
|
674
674
|
const _hoisted_1 = {
|
|
675
|
+
key: 0,
|
|
675
676
|
class: "dialog-footer"
|
|
676
677
|
};
|
|
677
678
|
/* ESM default export */ const pro_dialogvue_type_script_setup_true_lang_ts_name_ProDialog = /*@__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_vue__.defineComponent)({
|
|
@@ -680,6 +681,10 @@ const _hoisted_1 = {
|
|
|
680
681
|
confirmFn: {
|
|
681
682
|
type: Function
|
|
682
683
|
},
|
|
684
|
+
showConfirmButton: {
|
|
685
|
+
type: Boolean,
|
|
686
|
+
default: true
|
|
687
|
+
},
|
|
683
688
|
confirmDisabled: {
|
|
684
689
|
type: Boolean,
|
|
685
690
|
default: false
|
|
@@ -688,23 +693,35 @@ const _hoisted_1 = {
|
|
|
688
693
|
type: Boolean,
|
|
689
694
|
default: false
|
|
690
695
|
},
|
|
691
|
-
|
|
696
|
+
closeOnCancel: {
|
|
692
697
|
type: Boolean,
|
|
693
698
|
default: true
|
|
694
699
|
}
|
|
695
700
|
},
|
|
696
701
|
emits: [
|
|
697
|
-
"success"
|
|
702
|
+
"success",
|
|
703
|
+
"cancel"
|
|
698
704
|
],
|
|
699
705
|
setup (__props, { expose: __expose, emit: __emit }) {
|
|
700
706
|
const { visible, closeDialog, openDialog } = useDialog();
|
|
701
707
|
const loading = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)(false);
|
|
702
708
|
const attrs = (0, __WEBPACK_EXTERNAL_MODULE_vue__.useAttrs)();
|
|
709
|
+
const dialogRef = (0, __WEBPACK_EXTERNAL_MODULE_vue__.ref)();
|
|
703
710
|
const emits = __emit;
|
|
711
|
+
// 纯关闭弹窗,不执行其他操作,用于左上角X
|
|
712
|
+
const justCloseDialog = ()=>{
|
|
713
|
+
closeDialog();
|
|
714
|
+
};
|
|
715
|
+
// 处理常规关闭,支持before-close钩子
|
|
704
716
|
const handleClose = ()=>{
|
|
705
717
|
if (attrs?.["before-close"]) (attrs?.["before-close"])(closeDialog);
|
|
706
718
|
else closeDialog();
|
|
707
719
|
};
|
|
720
|
+
// 处理取消按钮点击
|
|
721
|
+
const handleCancel = ()=>{
|
|
722
|
+
emits("cancel");
|
|
723
|
+
if (__props.closeOnCancel) handleClose();
|
|
724
|
+
};
|
|
708
725
|
const handleConfirm = async ()=>{
|
|
709
726
|
if (__props.confirmFn) {
|
|
710
727
|
loading.value = true;
|
|
@@ -715,52 +732,66 @@ const _hoisted_1 = {
|
|
|
715
732
|
handleClose();
|
|
716
733
|
emits("success");
|
|
717
734
|
}
|
|
718
|
-
} catch
|
|
735
|
+
} catch {
|
|
719
736
|
loading.value = false;
|
|
720
737
|
}
|
|
721
738
|
}
|
|
722
739
|
};
|
|
723
740
|
__expose({
|
|
741
|
+
ref: dialogRef,
|
|
724
742
|
open: openDialog,
|
|
725
|
-
close: closeDialog
|
|
743
|
+
close: closeDialog,
|
|
744
|
+
visible
|
|
726
745
|
});
|
|
727
746
|
return (_ctx, _cache)=>((0, __WEBPACK_EXTERNAL_MODULE_vue__.openBlock)(), (0, __WEBPACK_EXTERNAL_MODULE_vue__.createElementBlock)(__WEBPACK_EXTERNAL_MODULE_vue__.Fragment, null, [
|
|
728
747
|
(0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)((0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(__WEBPACK_EXTERNAL_MODULE_element_sun__.ElDialog), (0, __WEBPACK_EXTERNAL_MODULE_vue__.mergeProps)({
|
|
748
|
+
ref_key: "dialogRef",
|
|
749
|
+
ref: dialogRef
|
|
750
|
+
}, _ctx.$attrs, {
|
|
729
751
|
modelValue: (0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(visible),
|
|
730
|
-
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event)=>(0, __WEBPACK_EXTERNAL_MODULE_vue__.isRef)(visible) ? visible.value = $event : null)
|
|
731
|
-
|
|
752
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event)=>(0, __WEBPACK_EXTERNAL_MODULE_vue__.isRef)(visible) ? visible.value = $event : null),
|
|
753
|
+
onClose: justCloseDialog
|
|
754
|
+
}), (0, __WEBPACK_EXTERNAL_MODULE_vue__.createSlots)({
|
|
755
|
+
footer: (0, __WEBPACK_EXTERNAL_MODULE_vue__.withCtx)(()=>[
|
|
756
|
+
_ctx.$slots.footer ? (0, __WEBPACK_EXTERNAL_MODULE_vue__.renderSlot)(_ctx.$slots, "footer", {
|
|
757
|
+
key: 1
|
|
758
|
+
}) : ((0, __WEBPACK_EXTERNAL_MODULE_vue__.openBlock)(), (0, __WEBPACK_EXTERNAL_MODULE_vue__.createElementBlock)("div", _hoisted_1, [
|
|
759
|
+
(0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)((0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(__WEBPACK_EXTERNAL_MODULE_element_sun__.ElButton), {
|
|
760
|
+
onClick: handleCancel
|
|
761
|
+
}, {
|
|
762
|
+
default: (0, __WEBPACK_EXTERNAL_MODULE_vue__.withCtx)(()=>_cache[1] || (_cache[1] = [
|
|
763
|
+
(0, __WEBPACK_EXTERNAL_MODULE_vue__.createTextVNode)("取消")
|
|
764
|
+
])),
|
|
765
|
+
_: 1
|
|
766
|
+
}),
|
|
767
|
+
_ctx.showConfirmButton ? ((0, __WEBPACK_EXTERNAL_MODULE_vue__.openBlock)(), (0, __WEBPACK_EXTERNAL_MODULE_vue__.createBlock)((0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(__WEBPACK_EXTERNAL_MODULE_element_sun__.ElButton), {
|
|
768
|
+
key: 0,
|
|
769
|
+
loading: loading.value,
|
|
770
|
+
type: "primary",
|
|
771
|
+
disabled: _ctx.confirmDisabled,
|
|
772
|
+
onClick: handleConfirm
|
|
773
|
+
}, {
|
|
774
|
+
default: (0, __WEBPACK_EXTERNAL_MODULE_vue__.withCtx)(()=>_cache[2] || (_cache[2] = [
|
|
775
|
+
(0, __WEBPACK_EXTERNAL_MODULE_vue__.createTextVNode)(" 确认 ")
|
|
776
|
+
])),
|
|
777
|
+
_: 1
|
|
778
|
+
}, 8, [
|
|
779
|
+
"loading",
|
|
780
|
+
"disabled"
|
|
781
|
+
])) : (0, __WEBPACK_EXTERNAL_MODULE_vue__.createCommentVNode)("", true)
|
|
782
|
+
]))
|
|
783
|
+
]),
|
|
732
784
|
default: (0, __WEBPACK_EXTERNAL_MODULE_vue__.withCtx)(()=>[
|
|
733
785
|
(0, __WEBPACK_EXTERNAL_MODULE_vue__.renderSlot)(_ctx.$slots, "default")
|
|
734
786
|
]),
|
|
735
787
|
_: 2
|
|
736
788
|
}, [
|
|
737
|
-
_ctx.
|
|
738
|
-
name: "
|
|
739
|
-
fn: (0, __WEBPACK_EXTERNAL_MODULE_vue__.withCtx)(()=>[
|
|
740
|
-
(0, __WEBPACK_EXTERNAL_MODULE_vue__.
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
}, {
|
|
744
|
-
default: (0, __WEBPACK_EXTERNAL_MODULE_vue__.withCtx)(()=>_cache[1] || (_cache[1] = [
|
|
745
|
-
(0, __WEBPACK_EXTERNAL_MODULE_vue__.createTextVNode)("取消")
|
|
746
|
-
])),
|
|
747
|
-
_: 1
|
|
748
|
-
}),
|
|
749
|
-
(0, __WEBPACK_EXTERNAL_MODULE_vue__.createVNode)((0, __WEBPACK_EXTERNAL_MODULE_vue__.unref)(__WEBPACK_EXTERNAL_MODULE_element_sun__.ElButton), {
|
|
750
|
-
loading: loading.value,
|
|
751
|
-
type: "primary",
|
|
752
|
-
disabled: _ctx.confirmDisabled,
|
|
753
|
-
onClick: handleConfirm
|
|
754
|
-
}, {
|
|
755
|
-
default: (0, __WEBPACK_EXTERNAL_MODULE_vue__.withCtx)(()=>_cache[2] || (_cache[2] = [
|
|
756
|
-
(0, __WEBPACK_EXTERNAL_MODULE_vue__.createTextVNode)(" 确认 ")
|
|
757
|
-
])),
|
|
758
|
-
_: 1
|
|
759
|
-
}, 8, [
|
|
760
|
-
"loading",
|
|
761
|
-
"disabled"
|
|
762
|
-
])
|
|
763
|
-
])
|
|
789
|
+
_ctx.$slots.header ? {
|
|
790
|
+
name: "header",
|
|
791
|
+
fn: (0, __WEBPACK_EXTERNAL_MODULE_vue__.withCtx)(({ titleClass })=>[
|
|
792
|
+
(0, __WEBPACK_EXTERNAL_MODULE_vue__.renderSlot)(_ctx.$slots, "header", {
|
|
793
|
+
titleClass: titleClass
|
|
794
|
+
})
|
|
764
795
|
]),
|
|
765
796
|
key: "0"
|
|
766
797
|
} : void 0
|
|
@@ -3060,7 +3091,10 @@ const BannerInfo_exports_ = BannerInfovue_type_script_setup_true_lang_ts_name_ba
|
|
|
3060
3091
|
/* ESM default export */ const printTemplatevue_type_script_lang_ts_setup_true_name_printDialog = /*@__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_vue__.defineComponent)({
|
|
3061
3092
|
__name: 'printTemplate',
|
|
3062
3093
|
props: {
|
|
3063
|
-
printTemplateList: {}
|
|
3094
|
+
printTemplateList: {},
|
|
3095
|
+
onTemplateConfirm: {
|
|
3096
|
+
type: Function
|
|
3097
|
+
}
|
|
3064
3098
|
},
|
|
3065
3099
|
setup (__props, { expose: __expose }) {
|
|
3066
3100
|
const props = __props;
|
|
@@ -3093,7 +3127,7 @@ const BannerInfo_exports_ = BannerInfovue_type_script_setup_true_lang_ts_name_ba
|
|
|
3093
3127
|
const handleConfirmSubmit = async ()=>{
|
|
3094
3128
|
await formRef.value?.validate();
|
|
3095
3129
|
const printTemplate = printTemplateList.value.find((item)=>item.receiptTemplateRuleId === templateModel.value.templateId);
|
|
3096
|
-
await
|
|
3130
|
+
await props.onTemplateConfirm(printTemplate);
|
|
3097
3131
|
return [];
|
|
3098
3132
|
};
|
|
3099
3133
|
(0, __WEBPACK_EXTERNAL_MODULE_vue__.onMounted)(()=>{
|
|
@@ -3530,328 +3564,321 @@ var constant_DATA_SOURCE_CONTENT_TYPE_CODE = /*#__PURE__*/ function(DATA_SOURCE_
|
|
|
3530
3564
|
// 将容器添加到 body
|
|
3531
3565
|
document.body.appendChild(container);
|
|
3532
3566
|
}
|
|
3533
|
-
|
|
3534
|
-
|
|
3535
|
-
|
|
3536
|
-
|
|
3537
|
-
|
|
3538
|
-
|
|
3539
|
-
|
|
3540
|
-
|
|
3567
|
+
const createPrint = ()=>{
|
|
3568
|
+
/**
|
|
3569
|
+
* 打印主步骤
|
|
3570
|
+
*/ // 1.获取单据信息
|
|
3571
|
+
// 2.设计时标志===0弹窗询问
|
|
3572
|
+
// 3.打印模板选择
|
|
3573
|
+
// 4.分单
|
|
3574
|
+
// 5.组织分单结果
|
|
3575
|
+
// 6.票据业务
|
|
3576
|
+
// 7.循环分单结果,进行单据打印
|
|
3577
|
+
/** 初始数据 */ /** 此处是为了防止下次进入的时候存在缓存数据 */ const initData = ()=>({
|
|
3578
|
+
printParams: void 0,
|
|
3579
|
+
receiptInfo: void 0,
|
|
3580
|
+
splitResult: [
|
|
3581
|
+
{
|
|
3582
|
+
receiptSort: 1,
|
|
3583
|
+
receiptSplitResultId: null,
|
|
3584
|
+
receiptSplitTypeCode: constant_RECEIPT_SPLIT_TYPE_CODE.NO_SPLIT
|
|
3585
|
+
}
|
|
3586
|
+
],
|
|
3587
|
+
printTemplate: void 0,
|
|
3588
|
+
printTemplateList: [],
|
|
3589
|
+
receiptAllotInfo: [],
|
|
3590
|
+
dataSourceContentItem: void 0,
|
|
3591
|
+
dataSourceContentTypeCodeItem: void 0
|
|
3592
|
+
});
|
|
3593
|
+
let defaultContext = initData();
|
|
3594
|
+
// 打印
|
|
3595
|
+
const printStart = async (params)=>{
|
|
3596
|
+
/** 初始化 */ defaultContext = initData();
|
|
3597
|
+
defaultContext.printParams = params;
|
|
3598
|
+
await fetchReceiptInfo();
|
|
3599
|
+
if (!defaultContext.receiptInfo) return;
|
|
3600
|
+
return await dialogAsk();
|
|
3601
|
+
};
|
|
3602
|
+
/**
|
|
3603
|
+
* 获取单据信息
|
|
3604
|
+
*/ const fetchReceiptInfo = async ()=>{
|
|
3605
|
+
const [, res] = await queryReceiptByExample({
|
|
3606
|
+
receiptIds: [
|
|
3607
|
+
defaultContext.printParams?.receiptId
|
|
3608
|
+
]
|
|
3609
|
+
});
|
|
3610
|
+
if (res?.success) defaultContext = {
|
|
3611
|
+
...defaultContext,
|
|
3612
|
+
receiptInfo: res.data[0]
|
|
3613
|
+
};
|
|
3614
|
+
};
|
|
3615
|
+
/**
|
|
3616
|
+
* 设计时标志===0弹窗询问
|
|
3617
|
+
*/ const dialogAsk = async ()=>{
|
|
3618
|
+
if (defaultContext?.printParams?.designFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES) return nextAction();
|
|
3619
|
+
const { receiptPrintRuleCode, receiptPrintCategCode, receiptNameDisplay, menuXReceiptList } = defaultContext.receiptInfo || {};
|
|
3620
|
+
// 通用
|
|
3621
|
+
if (receiptPrintRuleCode === constant_RECEIPT_PRINT_RULE_CODE.GENERAL) return await messageBoxAskJudge(receiptPrintCategCode, receiptNameDisplay);
|
|
3622
|
+
// 按菜单
|
|
3623
|
+
if (receiptPrintRuleCode === constant_RECEIPT_PRINT_RULE_CODE.MENU) {
|
|
3624
|
+
//获取菜单打印配置信息
|
|
3625
|
+
const menuReceiptInfo = menuXReceiptList?.find((item)=>item.sysXMenuId === defaultContext.printParams?.sysMenuId);
|
|
3626
|
+
const code = menuReceiptInfo?.receiptPrintCategCode ? menuReceiptInfo?.receiptPrintCategCode : receiptPrintCategCode;
|
|
3627
|
+
return await messageBoxAskJudge(code, receiptNameDisplay);
|
|
3628
|
+
// ElMessage.error(`${receiptNameDisplay} 未设置菜单打印类别.`);
|
|
3541
3629
|
}
|
|
3542
|
-
],
|
|
3543
|
-
printTemplate: void 0,
|
|
3544
|
-
printTemplateList: [],
|
|
3545
|
-
receiptAllotInfo: [],
|
|
3546
|
-
dataSourceContentItem: void 0,
|
|
3547
|
-
dataSourceContentTypeCodeItem: void 0
|
|
3548
|
-
};
|
|
3549
|
-
/**
|
|
3550
|
-
* 打印主步骤
|
|
3551
|
-
*/ // 1.获取单据信息
|
|
3552
|
-
// 2.设计时标志===0弹窗询问
|
|
3553
|
-
// 3.打印模板选择
|
|
3554
|
-
// 4.分单
|
|
3555
|
-
// 5.组织分单结果
|
|
3556
|
-
// 6.票据业务
|
|
3557
|
-
// 7.循环分单结果,进行单据打印
|
|
3558
|
-
/** 初始数据 */ /** 此处是为了防止下次进入的时候存在缓存数据 */ const print_initData = async ()=>{
|
|
3559
|
-
defaultContext = {
|
|
3560
|
-
printParams: void 0,
|
|
3561
|
-
receiptInfo: void 0,
|
|
3562
|
-
splitResult: [
|
|
3563
|
-
{
|
|
3564
|
-
receiptSort: 1,
|
|
3565
|
-
receiptSplitResultId: null,
|
|
3566
|
-
receiptSplitTypeCode: constant_RECEIPT_SPLIT_TYPE_CODE.NO_SPLIT
|
|
3567
|
-
}
|
|
3568
|
-
],
|
|
3569
|
-
printTemplate: void 0,
|
|
3570
|
-
printTemplateList: [],
|
|
3571
|
-
receiptAllotInfo: [],
|
|
3572
|
-
dataSourceContentItem: void 0,
|
|
3573
|
-
dataSourceContentTypeCodeItem: void 0
|
|
3574
3630
|
};
|
|
3575
|
-
|
|
3576
|
-
|
|
3577
|
-
const
|
|
3578
|
-
|
|
3579
|
-
|
|
3580
|
-
|
|
3581
|
-
|
|
3582
|
-
|
|
3583
|
-
|
|
3584
|
-
|
|
3585
|
-
|
|
3586
|
-
|
|
3587
|
-
|
|
3588
|
-
|
|
3589
|
-
|
|
3590
|
-
|
|
3591
|
-
|
|
3592
|
-
|
|
3593
|
-
|
|
3594
|
-
|
|
3595
|
-
|
|
3596
|
-
|
|
3597
|
-
};
|
|
3598
|
-
/**
|
|
3599
|
-
|
|
3600
|
-
|
|
3601
|
-
|
|
3602
|
-
|
|
3603
|
-
|
|
3604
|
-
|
|
3605
|
-
|
|
3606
|
-
|
|
3607
|
-
|
|
3608
|
-
|
|
3609
|
-
|
|
3610
|
-
|
|
3611
|
-
|
|
3612
|
-
|
|
3613
|
-
|
|
3614
|
-
|
|
3615
|
-
|
|
3616
|
-
};
|
|
3617
|
-
/**
|
|
3618
|
-
|
|
3619
|
-
|
|
3620
|
-
|
|
3621
|
-
else await nextAction();
|
|
3622
|
-
};
|
|
3623
|
-
/**
|
|
3624
|
-
* ElMessageBox询问
|
|
3625
|
-
*/ const messageBoxAsk = async (code, receiptNameDisplay)=>{
|
|
3626
|
-
__WEBPACK_EXTERNAL_MODULE_element_sun__.ElMessageBox.confirm(`是否${code === constant_RECEIPT_PRINT_CATEG_CODE.ASK_PRINT ? "打印" : "开具"} ${receiptNameDisplay}`, "提示", {
|
|
3627
|
-
confirmButtonText: "确定",
|
|
3628
|
-
cancelButtonText: "取消",
|
|
3629
|
-
type: "warning"
|
|
3630
|
-
}).then(async ()=>{
|
|
3631
|
-
await nextAction();
|
|
3632
|
-
});
|
|
3633
|
-
};
|
|
3634
|
-
/**
|
|
3635
|
-
* 34567
|
|
3636
|
-
*/ const nextAction = async ()=>{
|
|
3637
|
-
// 3.打印模板选择
|
|
3638
|
-
await printTemplateFn();
|
|
3639
|
-
if (!defaultContext?.printTemplate) return;
|
|
3640
|
-
};
|
|
3641
|
-
/**
|
|
3642
|
-
* 打印模板选择
|
|
3643
|
-
*/ const printTemplateFn = async ()=>{
|
|
3644
|
-
const { chooseReceiptTemplateRuleList, receiptNameDisplay } = defaultContext?.receiptInfo || {};
|
|
3645
|
-
// 打印模板list
|
|
3646
|
-
defaultContext.printTemplateList = chooseReceiptTemplateRuleList?.filter((item)=>item.enabledFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES) ?? [];
|
|
3647
|
-
if (defaultContext?.printTemplateList.length > 1) createPrintTemplate({
|
|
3648
|
-
printTemplateList: defaultContext?.printTemplateList
|
|
3649
|
-
});
|
|
3650
|
-
else if (defaultContext?.printTemplateList.length === 1) {
|
|
3651
|
-
defaultContext.printTemplate = defaultContext?.printTemplateList[0];
|
|
3631
|
+
/**
|
|
3632
|
+
* 弹窗询问判断方法
|
|
3633
|
+
*/ const messageBoxAskJudge = async (receiptPrintCategCode, receiptNameDisplay)=>{
|
|
3634
|
+
if (receiptPrintCategCode === constant_RECEIPT_PRINT_CATEG_CODE.ASK_PRINT || receiptPrintCategCode === constant_RECEIPT_PRINT_CATEG_CODE.ASK_ISSUE_NO_PRINT) return await messageBoxAsk(receiptPrintCategCode, receiptNameDisplay);
|
|
3635
|
+
return await nextAction();
|
|
3636
|
+
};
|
|
3637
|
+
/**
|
|
3638
|
+
* ElMessageBox询问
|
|
3639
|
+
*/ const messageBoxAsk = async (code, receiptNameDisplay)=>{
|
|
3640
|
+
__WEBPACK_EXTERNAL_MODULE_element_sun__.ElMessageBox.confirm(`是否${code === constant_RECEIPT_PRINT_CATEG_CODE.ASK_PRINT ? "打印" : "开具"} ${receiptNameDisplay}`, "提示", {
|
|
3641
|
+
confirmButtonText: "确定",
|
|
3642
|
+
cancelButtonText: "取消",
|
|
3643
|
+
type: "warning"
|
|
3644
|
+
}).then(async ()=>await nextAction());
|
|
3645
|
+
};
|
|
3646
|
+
/**
|
|
3647
|
+
* 34567
|
|
3648
|
+
*/ const nextAction = async ()=>{
|
|
3649
|
+
// 3.打印模板选择
|
|
3650
|
+
const data = await printTemplateFn();
|
|
3651
|
+
if (!defaultContext?.printTemplate) return;
|
|
3652
|
+
return data;
|
|
3653
|
+
};
|
|
3654
|
+
/**
|
|
3655
|
+
* 打印模板选择
|
|
3656
|
+
*/ const printTemplateFn = async ()=>{
|
|
3657
|
+
const { chooseReceiptTemplateRuleList, receiptNameDisplay } = defaultContext?.receiptInfo || {};
|
|
3658
|
+
// 打印模板list
|
|
3659
|
+
defaultContext.printTemplateList = chooseReceiptTemplateRuleList?.filter((item)=>item.enabledFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES) ?? [];
|
|
3660
|
+
if (defaultContext?.printTemplateList.length > 1) createPrintTemplate({
|
|
3661
|
+
printTemplateList: defaultContext?.printTemplateList,
|
|
3662
|
+
onTemplateConfirm: templateConfirm
|
|
3663
|
+
});
|
|
3664
|
+
else if (defaultContext?.printTemplateList.length === 1) {
|
|
3665
|
+
defaultContext.printTemplate = defaultContext?.printTemplateList[0];
|
|
3666
|
+
await splitReceiptFn();
|
|
3667
|
+
return await printLoop();
|
|
3668
|
+
} else {
|
|
3669
|
+
__WEBPACK_EXTERNAL_MODULE_element_sun__.ElMessage.error(`${receiptNameDisplay} 没有有效的模板`);
|
|
3670
|
+
throw new Error(`${receiptNameDisplay} 没有有效的模板`);
|
|
3671
|
+
}
|
|
3672
|
+
};
|
|
3673
|
+
/**
|
|
3674
|
+
* 模板选择
|
|
3675
|
+
*/ const templateConfirm = async (template)=>{
|
|
3676
|
+
defaultContext.printTemplate = template;
|
|
3652
3677
|
await splitReceiptFn();
|
|
3653
|
-
await printLoop();
|
|
3654
|
-
}
|
|
3655
|
-
|
|
3656
|
-
|
|
3657
|
-
|
|
3658
|
-
|
|
3659
|
-
|
|
3660
|
-
|
|
3661
|
-
|
|
3662
|
-
|
|
3663
|
-
|
|
3664
|
-
|
|
3665
|
-
|
|
3666
|
-
|
|
3667
|
-
|
|
3668
|
-
|
|
3669
|
-
|
|
3670
|
-
|
|
3671
|
-
|
|
3672
|
-
|
|
3673
|
-
|
|
3678
|
+
return await printLoop();
|
|
3679
|
+
};
|
|
3680
|
+
/**
|
|
3681
|
+
* 分单
|
|
3682
|
+
*/ const splitReceiptFn = async ()=>{
|
|
3683
|
+
if (defaultContext.printParams?.designFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.NO) {
|
|
3684
|
+
//5
|
|
3685
|
+
if (!defaultContext?.printParams?.dataSourceContent && (defaultContext?.receiptInfo?.invoiceFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.NO || defaultContext?.receiptInfo?.invoiceFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES && defaultContext?.printParams?.invoiceInfo?.invOperateTypeCode === constant_INV_OPERATE_TYPE_CODE.ISSUE)) await receiptSplitResultFn();
|
|
3686
|
+
//6
|
|
3687
|
+
if (defaultContext?.printParams?.invoiceInfo?.invoiceAllotId && defaultContext?.receiptInfo?.invoiceFlag === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.YES && defaultContext?.receiptInfo?.receiptPrintCategCode !== constant_RECEIPT_PRINT_CATEG_CODE.NO_PRINT) {
|
|
3688
|
+
const [, res] = await (0, __WEBPACK_EXTERNAL_MODULE__sun_toolkit_request__.interfaceInvoke)({
|
|
3689
|
+
interfaceId: defaultContext?.printParams?.invoiceInfo?.invoiceInterfaceId ?? defaultContext?.receiptInfo?.invoiceInterfaceId,
|
|
3690
|
+
menuId: defaultContext?.printParams?.sysMenuId,
|
|
3691
|
+
tradeCode: __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.INVOICE_CODE.INV001,
|
|
3692
|
+
params: {
|
|
3693
|
+
receiptId: defaultContext?.printParams?.receiptId,
|
|
3694
|
+
invoiceAllotId: defaultContext?.printParams?.invoiceInfo?.invoiceAllotId
|
|
3695
|
+
}
|
|
3696
|
+
});
|
|
3697
|
+
if (res?.success) {
|
|
3698
|
+
defaultContext.receiptAllotInfo = res?.data?.bizOutputParam ?? [];
|
|
3699
|
+
await invoiceSplitResultFn();
|
|
3700
|
+
}
|
|
3701
|
+
}
|
|
3702
|
+
}
|
|
3703
|
+
};
|
|
3704
|
+
/**
|
|
3705
|
+
* 单据分单接口
|
|
3706
|
+
*/ const receiptSplitResultFn = async ()=>{
|
|
3707
|
+
const [, res] = await splitReceipt({
|
|
3708
|
+
receiptId: defaultContext?.printParams?.receiptId,
|
|
3709
|
+
bizIdTypeCode: defaultContext?.printParams?.bizIdTypeCode,
|
|
3710
|
+
bizIds: defaultContext?.printParams?.bizIds
|
|
3711
|
+
});
|
|
3712
|
+
if (res?.success) defaultContext.splitResult = res.data?.receiptDataSourceList ?? [];
|
|
3713
|
+
};
|
|
3714
|
+
/**
|
|
3715
|
+
* 票据分单
|
|
3716
|
+
*/ const invoiceSplitResultFn = async ()=>{
|
|
3717
|
+
// 票据操作类型代码---1开具
|
|
3718
|
+
if (defaultContext?.printParams?.invoiceInfo?.invOperateTypeCode === constant_INV_OPERATE_TYPE_CODE.ISSUE) {
|
|
3719
|
+
const invoiceInfo = (defaultContext?.receiptAllotInfo ?? [])[0];
|
|
3720
|
+
if (invoiceInfo?.invoiceMediaTypeCode === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.INVOICE_MEDIA_TYPE_CODE.ELECTRONIC && (defaultContext?.splitResult?.length ?? 0) < (invoiceInfo?.residueCount ?? 0)) {
|
|
3721
|
+
__WEBPACK_EXTERNAL_MODULE_element_sun__.ElMessage.error(`当前票据数量不足,所需票据张数[${defaultContext?.splitResult?.length}],剩余张数[${invoiceInfo?.residueCount}]!`);
|
|
3722
|
+
throw new Error(`当前票据数量不足,所需票据张数[${defaultContext?.splitResult?.length}],剩余张数[${invoiceInfo?.residueCount}]!`);
|
|
3723
|
+
}
|
|
3674
3724
|
const [, res] = await (0, __WEBPACK_EXTERNAL_MODULE__sun_toolkit_request__.interfaceInvoke)({
|
|
3675
3725
|
interfaceId: defaultContext?.printParams?.invoiceInfo?.invoiceInterfaceId ?? defaultContext?.receiptInfo?.invoiceInterfaceId,
|
|
3676
3726
|
menuId: defaultContext?.printParams?.sysMenuId,
|
|
3677
|
-
tradeCode: __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.INVOICE_CODE.
|
|
3727
|
+
tradeCode: __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.INVOICE_CODE.INV101,
|
|
3678
3728
|
params: {
|
|
3679
|
-
|
|
3680
|
-
|
|
3729
|
+
invoiceAllotId: defaultContext?.printParams?.invoiceInfo?.invoiceAllotId,
|
|
3730
|
+
invoiceUsageCode: defaultContext?.printParams?.invoiceInfo?.invoiceUsageCode,
|
|
3731
|
+
orgIssueFlag: defaultContext?.printParams?.invoiceInfo?.orgIssueFlag,
|
|
3732
|
+
issueOrgName: defaultContext?.printParams?.invoiceInfo?.issueOrgName,
|
|
3733
|
+
socialCreditNo: defaultContext?.printParams?.invoiceInfo?.socialCreditNo,
|
|
3734
|
+
invoiceMemo: defaultContext?.printParams?.invoiceInfo?.invoiceMemo,
|
|
3735
|
+
invoiceList: defaultContext?.splitResult
|
|
3681
3736
|
}
|
|
3682
3737
|
});
|
|
3683
|
-
if (res?.success)
|
|
3684
|
-
defaultContext.receiptAllotInfo = res?.data?.bizOutputParam ?? [];
|
|
3685
|
-
await invoiceSplitResultFn();
|
|
3686
|
-
}
|
|
3738
|
+
if (res?.success) defaultContext.splitResult = res.data?.invoiceList ?? [];
|
|
3687
3739
|
}
|
|
3688
|
-
|
|
3689
|
-
|
|
3690
|
-
|
|
3691
|
-
|
|
3692
|
-
|
|
3693
|
-
|
|
3694
|
-
|
|
3695
|
-
|
|
3696
|
-
|
|
3697
|
-
|
|
3698
|
-
|
|
3699
|
-
|
|
3700
|
-
/**
|
|
3701
|
-
* 票据分单
|
|
3702
|
-
*/ const invoiceSplitResultFn = async ()=>{
|
|
3703
|
-
// 票据操作类型代码---1开具
|
|
3704
|
-
if (defaultContext?.printParams?.invoiceInfo?.invOperateTypeCode === constant_INV_OPERATE_TYPE_CODE.ISSUE) {
|
|
3705
|
-
const invoiceInfo = (defaultContext?.receiptAllotInfo ?? [])[0];
|
|
3706
|
-
if (invoiceInfo?.invoiceMediaTypeCode === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.INVOICE_MEDIA_TYPE_CODE.ELECTRONIC && (defaultContext?.splitResult?.length ?? 0) < (invoiceInfo?.residueCount ?? 0)) {
|
|
3707
|
-
__WEBPACK_EXTERNAL_MODULE_element_sun__.ElMessage.error(`当前票据数量不足,所需票据张数[${defaultContext?.splitResult?.length}],剩余张数[${invoiceInfo?.residueCount}]!`);
|
|
3708
|
-
throw new Error(`当前票据数量不足,所需票据张数[${defaultContext?.splitResult?.length}],剩余张数[${invoiceInfo?.residueCount}]!`);
|
|
3740
|
+
// 票据操作类型代码---6重开
|
|
3741
|
+
if (defaultContext?.printParams?.invoiceInfo?.invOperateTypeCode === constant_INV_OPERATE_TYPE_CODE.REOPEN) {
|
|
3742
|
+
const [, res] = await (0, __WEBPACK_EXTERNAL_MODULE__sun_toolkit_request__.interfaceInvoke)({
|
|
3743
|
+
interfaceId: defaultContext?.printParams?.invoiceInfo?.invoiceInterfaceId ?? defaultContext?.receiptInfo?.invoiceInterfaceId,
|
|
3744
|
+
menuId: defaultContext?.printParams?.sysMenuId,
|
|
3745
|
+
tradeCode: __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.INVOICE_CODE.INV104,
|
|
3746
|
+
params: {
|
|
3747
|
+
invoiceAllotId: defaultContext?.printParams?.invoiceInfo?.invoiceAllotId,
|
|
3748
|
+
invoiceIds: defaultContext?.printParams?.invoiceInfo?.invoiceIds
|
|
3749
|
+
}
|
|
3750
|
+
});
|
|
3751
|
+
if (res?.success) defaultContext.splitResult = res.data?.invoiceList ?? [];
|
|
3709
3752
|
}
|
|
3710
|
-
|
|
3711
|
-
|
|
3712
|
-
|
|
3713
|
-
|
|
3714
|
-
|
|
3715
|
-
|
|
3716
|
-
|
|
3717
|
-
|
|
3718
|
-
|
|
3719
|
-
|
|
3720
|
-
|
|
3721
|
-
|
|
3722
|
-
}
|
|
3723
|
-
});
|
|
3724
|
-
if (res?.success) defaultContext.splitResult = res.data?.invoiceList ?? [];
|
|
3725
|
-
}
|
|
3726
|
-
// 票据操作类型代码---6重开
|
|
3727
|
-
if (defaultContext?.printParams?.invoiceInfo?.invOperateTypeCode === constant_INV_OPERATE_TYPE_CODE.REOPEN) {
|
|
3728
|
-
const [, res] = await (0, __WEBPACK_EXTERNAL_MODULE__sun_toolkit_request__.interfaceInvoke)({
|
|
3729
|
-
interfaceId: defaultContext?.printParams?.invoiceInfo?.invoiceInterfaceId ?? defaultContext?.receiptInfo?.invoiceInterfaceId,
|
|
3730
|
-
menuId: defaultContext?.printParams?.sysMenuId,
|
|
3731
|
-
tradeCode: __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.INVOICE_CODE.INV104,
|
|
3732
|
-
params: {
|
|
3733
|
-
invoiceAllotId: defaultContext?.printParams?.invoiceInfo?.invoiceAllotId,
|
|
3734
|
-
invoiceIds: defaultContext?.printParams?.invoiceInfo?.invoiceIds
|
|
3735
|
-
}
|
|
3736
|
-
});
|
|
3737
|
-
if (res?.success) defaultContext.splitResult = res.data?.invoiceList ?? [];
|
|
3738
|
-
}
|
|
3739
|
-
// 票据操作类型代码---5换开
|
|
3740
|
-
if (defaultContext?.printParams?.invoiceInfo?.invOperateTypeCode === constant_INV_OPERATE_TYPE_CODE.CHANGE) {
|
|
3741
|
-
const [, res] = await (0, __WEBPACK_EXTERNAL_MODULE__sun_toolkit_request__.interfaceInvoke)({
|
|
3742
|
-
interfaceId: defaultContext?.printParams?.invoiceInfo?.invoiceInterfaceId ?? defaultContext?.receiptInfo?.invoiceInterfaceId,
|
|
3743
|
-
menuId: defaultContext?.printParams?.sysMenuId,
|
|
3744
|
-
tradeCode: __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.INVOICE_CODE.INV103,
|
|
3745
|
-
params: {
|
|
3746
|
-
invoiceAllotId: defaultContext?.printParams?.invoiceInfo?.invoiceAllotId,
|
|
3747
|
-
invoiceIds: defaultContext?.printParams?.invoiceInfo?.invoiceIds
|
|
3748
|
-
}
|
|
3749
|
-
});
|
|
3750
|
-
if (res?.success) defaultContext.splitResult = res.data?.invoiceList ?? [];
|
|
3751
|
-
}
|
|
3752
|
-
// 票据操作类型代码---3红冲
|
|
3753
|
-
if (defaultContext?.printParams?.invoiceInfo?.invOperateTypeCode === constant_INV_OPERATE_TYPE_CODE.CHANGE) {
|
|
3754
|
-
const [, res] = await (0, __WEBPACK_EXTERNAL_MODULE__sun_toolkit_request__.interfaceInvoke)({
|
|
3755
|
-
interfaceId: defaultContext?.printParams?.invoiceInfo?.invoiceInterfaceId ?? defaultContext?.receiptInfo?.invoiceInterfaceId,
|
|
3756
|
-
menuId: defaultContext?.printParams?.sysMenuId,
|
|
3757
|
-
tradeCode: __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.INVOICE_CODE.INV102,
|
|
3758
|
-
params: {
|
|
3759
|
-
invoiceAllotId: defaultContext?.printParams?.invoiceInfo?.invoiceAllotId,
|
|
3760
|
-
invoiceUsageCode: defaultContext?.printParams?.invoiceInfo?.invoiceUsageCode,
|
|
3761
|
-
bizIdTypeCode: defaultContext?.printParams?.bizIdTypeCode,
|
|
3762
|
-
oldBizId: defaultContext?.printParams?.invoiceInfo?.oldBizId,
|
|
3763
|
-
redBizId: defaultContext?.printParams?.bizIds,
|
|
3764
|
-
onlyRedFlag: defaultContext?.printParams?.invoiceInfo?.onlyRedFlag
|
|
3765
|
-
}
|
|
3766
|
-
});
|
|
3767
|
-
if (res?.success) defaultContext.splitResult = res.data?.invoiceList ?? [];
|
|
3768
|
-
}
|
|
3769
|
-
};
|
|
3770
|
-
/** 循环打印 */ const printLoop = async ()=>{
|
|
3771
|
-
defaultContext?.splitResult?.forEach(async (item)=>{
|
|
3772
|
-
await printReceiptFn(item);
|
|
3773
|
-
});
|
|
3774
|
-
};
|
|
3775
|
-
/**
|
|
3776
|
-
* 7.单据打印
|
|
3777
|
-
*/ const printReceiptFn = async (item)=>{
|
|
3778
|
-
if (defaultContext?.receiptInfo?.printInterfaceId) {
|
|
3779
|
-
__WEBPACK_EXTERNAL_MODULE_element_sun__.ElMessage.error("暂不支持打印接口");
|
|
3780
|
-
throw new Error("暂不支持打印接口");
|
|
3781
|
-
}
|
|
3782
|
-
if (defaultContext?.printParams?.dataSourceContent) {
|
|
3783
|
-
defaultContext.dataSourceContentItem = defaultContext?.printParams?.dataSourceContent;
|
|
3784
|
-
defaultContext.dataSourceContentTypeCodeItem = defaultContext?.printParams?.dataSourceContentTypeCode;
|
|
3785
|
-
}
|
|
3786
|
-
if (!defaultContext?.printParams?.dataSourceContent) {
|
|
3787
|
-
if (defaultContext?.printParams?.insurInterfaceId) {
|
|
3788
|
-
__WEBPACK_EXTERNAL_MODULE_element_sun__.ElMessage.error("暂不支持医保单据内容获取!");
|
|
3789
|
-
throw new Error("暂不支持医保单据内容获取!");
|
|
3753
|
+
// 票据操作类型代码---5换开
|
|
3754
|
+
if (defaultContext?.printParams?.invoiceInfo?.invOperateTypeCode === constant_INV_OPERATE_TYPE_CODE.CHANGE) {
|
|
3755
|
+
const [, res] = await (0, __WEBPACK_EXTERNAL_MODULE__sun_toolkit_request__.interfaceInvoke)({
|
|
3756
|
+
interfaceId: defaultContext?.printParams?.invoiceInfo?.invoiceInterfaceId ?? defaultContext?.receiptInfo?.invoiceInterfaceId,
|
|
3757
|
+
menuId: defaultContext?.printParams?.sysMenuId,
|
|
3758
|
+
tradeCode: __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.INVOICE_CODE.INV103,
|
|
3759
|
+
params: {
|
|
3760
|
+
invoiceAllotId: defaultContext?.printParams?.invoiceInfo?.invoiceAllotId,
|
|
3761
|
+
invoiceIds: defaultContext?.printParams?.invoiceInfo?.invoiceIds
|
|
3762
|
+
}
|
|
3763
|
+
});
|
|
3764
|
+
if (res?.success) defaultContext.splitResult = res.data?.invoiceList ?? [];
|
|
3790
3765
|
}
|
|
3791
|
-
|
|
3792
|
-
|
|
3793
|
-
|
|
3794
|
-
|
|
3795
|
-
|
|
3796
|
-
|
|
3797
|
-
|
|
3798
|
-
|
|
3799
|
-
|
|
3800
|
-
|
|
3801
|
-
|
|
3802
|
-
|
|
3766
|
+
// 票据操作类型代码---3红冲
|
|
3767
|
+
if (defaultContext?.printParams?.invoiceInfo?.invOperateTypeCode === constant_INV_OPERATE_TYPE_CODE.CHANGE) {
|
|
3768
|
+
const [, res] = await (0, __WEBPACK_EXTERNAL_MODULE__sun_toolkit_request__.interfaceInvoke)({
|
|
3769
|
+
interfaceId: defaultContext?.printParams?.invoiceInfo?.invoiceInterfaceId ?? defaultContext?.receiptInfo?.invoiceInterfaceId,
|
|
3770
|
+
menuId: defaultContext?.printParams?.sysMenuId,
|
|
3771
|
+
tradeCode: __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.INVOICE_CODE.INV102,
|
|
3772
|
+
params: {
|
|
3773
|
+
invoiceAllotId: defaultContext?.printParams?.invoiceInfo?.invoiceAllotId,
|
|
3774
|
+
invoiceUsageCode: defaultContext?.printParams?.invoiceInfo?.invoiceUsageCode,
|
|
3775
|
+
bizIdTypeCode: defaultContext?.printParams?.bizIdTypeCode,
|
|
3776
|
+
oldBizId: defaultContext?.printParams?.invoiceInfo?.oldBizId,
|
|
3777
|
+
redBizId: defaultContext?.printParams?.bizIds,
|
|
3778
|
+
onlyRedFlag: defaultContext?.printParams?.invoiceInfo?.onlyRedFlag
|
|
3779
|
+
}
|
|
3803
3780
|
});
|
|
3804
|
-
if (res?.success)
|
|
3805
|
-
|
|
3806
|
-
|
|
3781
|
+
if (res?.success) defaultContext.splitResult = res.data?.invoiceList ?? [];
|
|
3782
|
+
}
|
|
3783
|
+
};
|
|
3784
|
+
/** 循环打印 */ const printLoop = async ()=>{
|
|
3785
|
+
// 修改这里:使用 Promise.all 等待所有异步操作完成
|
|
3786
|
+
const results = await Promise.all((defaultContext?.splitResult || []).map(async (item)=>await printReceiptFn(item)));
|
|
3787
|
+
// 检查结果数组中是否所有项都是 undefined
|
|
3788
|
+
const allUndefined = results.every((item)=>void 0 === item);
|
|
3789
|
+
// 如果所有项都是 undefined,返回空数组,否则返回原结果
|
|
3790
|
+
return allUndefined ? [] : results;
|
|
3791
|
+
};
|
|
3792
|
+
/**
|
|
3793
|
+
* 7.单据打印
|
|
3794
|
+
*/ const printReceiptFn = async (item)=>{
|
|
3795
|
+
if (defaultContext?.receiptInfo?.printInterfaceId) {
|
|
3796
|
+
__WEBPACK_EXTERNAL_MODULE_element_sun__.ElMessage.error("暂不支持打印接口");
|
|
3797
|
+
throw new Error("暂不支持打印接口");
|
|
3798
|
+
}
|
|
3799
|
+
if (defaultContext?.printParams?.dataSourceContent) {
|
|
3800
|
+
defaultContext.dataSourceContentItem = defaultContext?.printParams?.dataSourceContent;
|
|
3801
|
+
defaultContext.dataSourceContentTypeCodeItem = defaultContext?.printParams?.dataSourceContentTypeCode;
|
|
3802
|
+
}
|
|
3803
|
+
if (!defaultContext?.printParams?.dataSourceContent) {
|
|
3804
|
+
if (defaultContext?.printParams?.insurInterfaceId) {
|
|
3805
|
+
__WEBPACK_EXTERNAL_MODULE_element_sun__.ElMessage.error("暂不支持医保单据内容获取!");
|
|
3806
|
+
throw new Error("暂不支持医保单据内容获取!");
|
|
3807
3807
|
}
|
|
3808
|
-
|
|
3809
|
-
|
|
3810
|
-
|
|
3811
|
-
|
|
3812
|
-
|
|
3813
|
-
|
|
3814
|
-
|
|
3815
|
-
|
|
3816
|
-
|
|
3817
|
-
|
|
3818
|
-
|
|
3808
|
+
if ([
|
|
3809
|
+
constant_ELECTRONIC_INVOICE_CODE.OUTPATIENT_REGISTRATION,
|
|
3810
|
+
constant_ELECTRONIC_INVOICE_CODE.OUTPATIENT_CHARGE,
|
|
3811
|
+
constant_ELECTRONIC_INVOICE_CODE.HOSPITALIZATION_SETTLEMENT,
|
|
3812
|
+
constant_ELECTRONIC_INVOICE_CODE.PREPAYMENT
|
|
3813
|
+
].includes(defaultContext?.receiptInfo?.receiptId)) {
|
|
3814
|
+
const [, res] = await queryInvoiceBizNos({
|
|
3815
|
+
invoiceUsageCode: defaultContext?.printParams?.invoiceInfo?.invoiceUsageCode,
|
|
3816
|
+
bizIdTypeCode: defaultContext?.printParams?.bizIdTypeCode,
|
|
3817
|
+
bizIds: defaultContext?.printParams?.bizIds,
|
|
3818
|
+
onlyLastFlag: __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FLAG.NO,
|
|
3819
|
+
receiptSplitResultId: item.receiptSplitResultId
|
|
3820
|
+
});
|
|
3821
|
+
if (res?.success) {
|
|
3822
|
+
defaultContext.dataSourceContentItem = ((res.data?.bizIssueList ?? [])[0].invoiceList ?? [])[0].eInvoiceH5Url;
|
|
3823
|
+
defaultContext.dataSourceContentTypeCodeItem = constant_DATA_SOURCE_CONTENT_TYPE_CODE.H5;
|
|
3824
|
+
}
|
|
3825
|
+
} else {
|
|
3826
|
+
const [, res] = await queryReceiptDataSource({
|
|
3827
|
+
receiptId: defaultContext?.printParams?.receiptId,
|
|
3828
|
+
designFlag: defaultContext?.printParams?.designFlag,
|
|
3829
|
+
bizIdTypeCode: defaultContext?.printParams?.bizIdTypeCode,
|
|
3830
|
+
bizIds: defaultContext?.printParams?.bizIds,
|
|
3831
|
+
receiptSplitResultId: item.receiptSplitResultId
|
|
3832
|
+
});
|
|
3833
|
+
if (res?.success) {
|
|
3834
|
+
defaultContext.dataSourceContentItem = res.data?.dataSourceContent;
|
|
3835
|
+
defaultContext.dataSourceContentTypeCodeItem = constant_DATA_SOURCE_CONTENT_TYPE_CODE.JSON;
|
|
3836
|
+
}
|
|
3819
3837
|
}
|
|
3820
3838
|
}
|
|
3821
|
-
|
|
3822
|
-
|
|
3823
|
-
|
|
3824
|
-
|
|
3825
|
-
|
|
3826
|
-
|
|
3827
|
-
|
|
3828
|
-
|
|
3829
|
-
|
|
3830
|
-
|
|
3831
|
-
|
|
3832
|
-
|
|
3833
|
-
|
|
3834
|
-
|
|
3835
|
-
|
|
3836
|
-
|
|
3837
|
-
|
|
3838
|
-
|
|
3839
|
-
|
|
3840
|
-
|
|
3841
|
-
|
|
3842
|
-
|
|
3843
|
-
|
|
3844
|
-
|
|
3845
|
-
|
|
3846
|
-
|
|
3847
|
-
|
|
3848
|
-
|
|
3839
|
+
/** h5 */ if (defaultContext?.dataSourceContentTypeCodeItem === constant_DATA_SOURCE_CONTENT_TYPE_CODE.H5) location.href = defaultContext?.dataSourceContentItem;
|
|
3840
|
+
/** base64 */ if (defaultContext?.dataSourceContentTypeCodeItem === constant_DATA_SOURCE_CONTENT_TYPE_CODE.BASE64) {
|
|
3841
|
+
__WEBPACK_EXTERNAL_MODULE_element_sun__.ElMessage.error("暂不支持该方式打印");
|
|
3842
|
+
throw new Error("暂不支持该方式打印");
|
|
3843
|
+
}
|
|
3844
|
+
if (defaultContext?.dataSourceContentTypeCodeItem === constant_DATA_SOURCE_CONTENT_TYPE_CODE.JSON) {
|
|
3845
|
+
const params = {
|
|
3846
|
+
formOperationType: defaultContext?.printParams?.formOperationType,
|
|
3847
|
+
printType: defaultContext?.printParams?.printType,
|
|
3848
|
+
receiptId: defaultContext?.printParams?.receiptId,
|
|
3849
|
+
receiptTemplateRuleId: defaultContext?.printTemplate?.receiptTemplateRuleId,
|
|
3850
|
+
receiptTemplateName: defaultContext?.printTemplate?.receiptTemplateName,
|
|
3851
|
+
dataSourceContentTypeCode: defaultContext?.dataSourceContentTypeCodeItem,
|
|
3852
|
+
dataSourceContent: defaultContext?.dataSourceContentItem,
|
|
3853
|
+
printQty: defaultContext?.receiptInfo?.printQty
|
|
3854
|
+
};
|
|
3855
|
+
/** 判断是否客户端打印 */ const { isLocalPrint } = use_app_config([
|
|
3856
|
+
use_app_config_MAIN_APP_CONFIG.IS_LOCAL_PRINT
|
|
3857
|
+
]);
|
|
3858
|
+
if (isLocalPrint) {
|
|
3859
|
+
const [, res] = await designPreviewPrintReceipt(params);
|
|
3860
|
+
if (res?.success) return res.data ?? [];
|
|
3861
|
+
} else {
|
|
3862
|
+
/** 调用接口 */ const [, res] = await designPreviewPrintReceiptWeb(params);
|
|
3863
|
+
if (res?.success) {
|
|
3864
|
+
if (defaultContext?.printParams?.printType === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.PRINT_TYPE.GENERATE_IMAGE) return res.data;
|
|
3865
|
+
if (defaultContext?.printParams?.formOperationType === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FORM_OPERATION_TYPE.PRINT) useWebPrint(res?.data);
|
|
3866
|
+
else useDesignAndPreview(res?.data, defaultContext?.printParams?.formOperationType === __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.FORM_OPERATION_TYPE.DESIGN ? "设计" : "预览");
|
|
3867
|
+
}
|
|
3849
3868
|
}
|
|
3850
3869
|
}
|
|
3851
|
-
}
|
|
3870
|
+
};
|
|
3871
|
+
return {
|
|
3872
|
+
printFn: async (params)=>{
|
|
3873
|
+
const data = await printStart(params);
|
|
3874
|
+
return data;
|
|
3875
|
+
},
|
|
3876
|
+
templateConfirm
|
|
3877
|
+
};
|
|
3852
3878
|
};
|
|
3853
3879
|
const print = async (params)=>{
|
|
3854
|
-
|
|
3880
|
+
const { printFn } = createPrint();
|
|
3881
|
+
return await printFn(params);
|
|
3855
3882
|
};
|
|
3856
3883
|
/* ESM default export */ const printReceiptBtnvue_type_script_setup_true_lang_ts_name_printReceipt = /*@__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_vue__.defineComponent)({
|
|
3857
3884
|
__name: 'printReceiptBtn',
|
|
@@ -3861,20 +3888,24 @@ const print = async (params)=>{
|
|
|
3861
3888
|
type: Boolean,
|
|
3862
3889
|
default: ()=>void 0
|
|
3863
3890
|
},
|
|
3864
|
-
printParams: {}
|
|
3891
|
+
printParams: {},
|
|
3892
|
+
isPrint: {
|
|
3893
|
+
type: Boolean,
|
|
3894
|
+
default: true
|
|
3895
|
+
}
|
|
3865
3896
|
},
|
|
3866
3897
|
emits: [
|
|
3867
3898
|
"success",
|
|
3868
3899
|
"fail",
|
|
3869
3900
|
"selectItem"
|
|
3870
3901
|
],
|
|
3871
|
-
setup (__props, { emit: __emit }) {
|
|
3902
|
+
setup (__props, { expose: __expose, emit: __emit }) {
|
|
3872
3903
|
const emits = __emit;
|
|
3873
3904
|
const receiptList = (0, __WEBPACK_EXTERNAL_MODULE_vue__.computed)(()=>__props.receiptList);
|
|
3874
3905
|
const showReceipt = (0, __WEBPACK_EXTERNAL_MODULE_vue__.computed)(()=>receiptList && __props.receiptList.length > 0);
|
|
3875
3906
|
/** 选择单据 */ const handleCommand = async (item)=>{
|
|
3876
3907
|
emits("selectItem", item);
|
|
3877
|
-
await handlePrint(item);
|
|
3908
|
+
if (__props.isPrint) await handlePrint(item);
|
|
3878
3909
|
};
|
|
3879
3910
|
/** 打印单据 */ const handlePrint = async (item)=>{
|
|
3880
3911
|
const res = await print({
|
|
@@ -3883,6 +3914,9 @@ const print = async (params)=>{
|
|
|
3883
3914
|
});
|
|
3884
3915
|
res ? emits("success", res) : emits("fail");
|
|
3885
3916
|
};
|
|
3917
|
+
__expose({
|
|
3918
|
+
print: (item)=>handlePrint(item)
|
|
3919
|
+
});
|
|
3886
3920
|
return (_ctx, _cache)=>{
|
|
3887
3921
|
const _component_el_button = (0, __WEBPACK_EXTERNAL_MODULE_vue__.resolveComponent)("el-button");
|
|
3888
3922
|
const _component_el_dropdown_item = (0, __WEBPACK_EXTERNAL_MODULE_vue__.resolveComponent)("el-dropdown-item");
|
|
@@ -3982,6 +4016,7 @@ const Title_exports_ = Titlevue_type_script_setup_true_lang_ts_name_sunTitle;
|
|
|
3982
4016
|
props: {
|
|
3983
4017
|
dataSearchBizIdTypeCode: {},
|
|
3984
4018
|
codeSystemNo: {},
|
|
4019
|
+
dataDictionaryId: {},
|
|
3985
4020
|
disabled: {
|
|
3986
4021
|
type: Boolean
|
|
3987
4022
|
},
|
|
@@ -4019,12 +4054,15 @@ const Title_exports_ = Titlevue_type_script_setup_true_lang_ts_name_sunTitle;
|
|
|
4019
4054
|
let inputChange = debounce(fetchData, 500);
|
|
4020
4055
|
async function fetchData(value) {
|
|
4021
4056
|
loading.value = true;
|
|
4057
|
+
let params = {};
|
|
4058
|
+
if (props.codeSystemNo) params.codeSystemNo = props.codeSystemNo;
|
|
4059
|
+
if (props.dataDictionaryId) params.dataDictionaryId = props.dataDictionaryId;
|
|
4022
4060
|
let [, result] = await queryDictDataListByExample({
|
|
4023
4061
|
dataSearchBizIdTypeCode: props.dataSearchBizIdTypeCode || '',
|
|
4024
|
-
codeSystemNo: props.codeSystemNo,
|
|
4025
4062
|
keyWord: value,
|
|
4026
4063
|
sysMenuId: menuId || '',
|
|
4027
|
-
hospitalId: currentOrg?.orgId || ''
|
|
4064
|
+
hospitalId: currentOrg?.orgId || '',
|
|
4065
|
+
...params
|
|
4028
4066
|
});
|
|
4029
4067
|
loading.value = false;
|
|
4030
4068
|
if (result?.success) {
|
|
@@ -4036,9 +4074,9 @@ const Title_exports_ = Titlevue_type_script_setup_true_lang_ts_name_sunTitle;
|
|
|
4036
4074
|
}
|
|
4037
4075
|
}
|
|
4038
4076
|
/**
|
|
4039
|
-
|
|
4040
|
-
|
|
4041
|
-
|
|
4077
|
+
*
|
|
4078
|
+
* @param value 下拉框选择
|
|
4079
|
+
*/ function change(value) {
|
|
4042
4080
|
let name = (tableData.value.find((item)=>item.value === value) || {})['label'];
|
|
4043
4081
|
emit('change', value, name);
|
|
4044
4082
|
}
|
|
@@ -4082,7 +4120,7 @@ const Title_exports_ = Titlevue_type_script_setup_true_lang_ts_name_sunTitle;
|
|
|
4082
4120
|
const dict_select_exports_ = /*#__PURE__*/ (0, exportHelper["default"])(dict_selectvue_type_script_setup_true_lang_ts, [
|
|
4083
4121
|
[
|
|
4084
4122
|
'__scopeId',
|
|
4085
|
-
"data-v-
|
|
4123
|
+
"data-v-665ba894"
|
|
4086
4124
|
]
|
|
4087
4125
|
]);
|
|
4088
4126
|
/* ESM default export */ const dict_select = dict_select_exports_;
|
|
@@ -5887,4 +5925,4 @@ const invoicevue_type_script_setup_true_lang_ts_name_proInvoice_hoisted_4 = {
|
|
|
5887
5925
|
const invoice_exports_ = invoicevue_type_script_setup_true_lang_ts_name_proInvoice;
|
|
5888
5926
|
/* ESM default export */ const invoice = invoice_exports_;
|
|
5889
5927
|
var __webpack_exports__COMPONENT_CODE = __WEBPACK_EXTERNAL_MODULE__sun_toolkit_enums__.COMPONENT_CODE;
|
|
5890
|
-
export { access_info as AccessInfo, BANNER_COMPONENT_CONFIG, BannerInfo, copy_text_with_tooltip as CopyTextWithTooltip, dbgrid_component_setting as DbgridComponentSetting, dict_select as DictSelect, flag_select as FlagSelect, form_design_render as FormDesignRender, FormUnit, hospital_select as HospitalSelect, patient_access as PatientAccess, PatientInfo, printReceiptBtn as PrintReceiptBtn, pro_dialog as ProDialog, pro_form as ProForm, invoice as ProInvoice, pro_table as ProTable, Title, convertToSpellNo, convertToWbNo, print, usePrintReceipt, __webpack_exports__COMPONENT_CODE as COMPONENT_CODE };
|
|
5928
|
+
export { access_info as AccessInfo, BANNER_COMPONENT_CONFIG, BannerInfo, copy_text_with_tooltip as CopyTextWithTooltip, constant_DATA_SOURCE_CONTENT_TYPE_CODE as DATA_SOURCE_CONTENT_TYPE_CODE, dbgrid_component_setting as DbgridComponentSetting, dict_select as DictSelect, flag_select as FlagSelect, form_design_render as FormDesignRender, FormUnit, hospital_select as HospitalSelect, patient_access as PatientAccess, PatientInfo, printReceiptBtn as PrintReceiptBtn, pro_dialog as ProDialog, pro_form as ProForm, invoice as ProInvoice, pro_table as ProTable, Title, convertToSpellNo, convertToWbNo, print, usePrintReceipt, __webpack_exports__COMPONENT_CODE as COMPONENT_CODE };
|