cnhis-design-vue 3.2.8-beta.1 → 3.2.8-beta.5
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/README.md +87 -87
- package/es/components/bpmn-workflow/src/BpmnWorkflow.d.ts +0 -0
- package/es/components/bpmn-workflow/types/BpmnViewer.d.ts +1 -0
- package/es/components/bpmn-workflow/types/ModelingModule.d.ts +1 -0
- package/es/components/bpmn-workflow/types/MoveCanvasModule.d.ts +1 -0
- package/es/components/button-print/index.d.ts +1 -0
- package/es/components/button-print/src/ButtonPrint.vue.d.ts +1 -0
- package/es/components/button-print/src/components/NewPrintComponent.vue.d.ts +1 -0
- package/es/components/button-print/src/components/NewPrintComponent.vue2.js +1 -1
- package/es/components/callback/src/components/render/popupMaps.d.ts +3 -2
- package/es/components/field-set/src/FieldColor.vue.d.ts +12 -3
- package/es/components/field-set/src/FieldFilter.vue.d.ts +12 -3
- package/es/components/field-set/src/FieldSet.vue.d.ts +23 -4
- package/es/components/field-set/src/FieldSet.vue2.js +1 -1
- package/es/components/field-set/src/components/table-row.vue.d.ts +12 -3
- package/es/components/field-set/src/components/table-row.vue2.js +1 -1
- package/es/components/field-set/src/utils/index.d.ts +1 -1
- package/es/components/field-set/src/utils/index.js +1 -1
- package/es/components/form-config/index.d.ts +6 -4
- package/es/components/form-config/src/FormConfig.vue.d.ts +6 -4
- package/es/components/form-config/src/components/FormConfigCreator.vue.d.ts +3 -2
- package/es/components/form-config/src/components/FormConfigEdit.vue.d.ts +3 -2
- package/es/components/form-render/index.d.ts +3 -2
- package/es/components/form-render/src/FormRender.vue.d.ts +2 -1
- package/es/components/form-render/src/FormRender.vue2.js +1 -1
- package/es/components/form-render/src/FormRenderWrapper.vue.d.ts +3 -2
- package/es/components/form-render/src/FormRenderWrapper.vue2.js +1 -1
- package/es/components/form-render/src/components/renderer/searchCascade.js +1 -1
- package/es/components/form-render/src/hooks/useFormEvent.d.ts +1 -1
- package/es/components/form-render/src/types/index.d.ts +1 -0
- package/es/components/iho-chat/index.d.ts +5 -1
- package/es/components/iho-chat/src/Index.vue.d.ts +5 -1
- package/es/components/iho-chat/src/components/ChatAdd.vue2.js +1 -1
- package/es/components/iho-chat/src/components/ChatFooter.vue.d.ts +2 -1
- package/es/components/iho-chat/src/components/ChatFooter.vue2.js +1 -1
- package/es/components/iho-chat/src/components/ChatHeader.vue2.js +1 -1
- package/es/components/iho-chat/src/components/ChatMain.vue.d.ts +4 -0
- package/es/components/iho-chat/src/components/ChatMain.vue2.js +1 -1
- package/es/components/iho-chat/src/components/ChatRecord.vue2.js +1 -1
- package/es/components/iho-chat/src/components/ChatSearch.vue2.js +1 -1
- package/es/components/iho-chat/src/components/ChatSet.vue2.js +1 -1
- package/es/components/iho-chat/src/components/MultipleVideo.vue2.js +1 -1
- package/es/components/iho-chat/src/components/PersonProfile.vue2.js +1 -1
- package/es/components/iho-chat/src/components/Video.vue2.js +1 -1
- package/es/components/iho-chat/src/hooks/useSearchUserList.js +1 -1
- package/es/components/iho-chat/src/hooks/useState.js +1 -1
- package/es/components/iho-chat/src/utils/index.d.ts +2 -1
- package/es/components/iho-chat/src/utils/index.js +1 -1
- package/es/components/iho-chat/style/index.css +1 -1
- package/es/components/index.css +1 -1
- package/es/components/info-header/index.d.ts +6 -4
- package/es/components/info-header/src/InfoHeader.vue.d.ts +6 -4
- package/es/components/info-header/src/components/infoDescription/index.vue.d.ts +3 -2
- package/es/components/info-header/src/components/patientInfo/index.vue.d.ts +3 -2
- package/es/components/select-label/src/LabelFormContent.vue2.js +1 -1
- package/es/components/shortcut-setter/index.d.ts +3 -2
- package/es/components/shortcut-setter/src/ShortcutSetter.vue.d.ts +3 -2
- package/es/shared/assets/img/defaultCover/10review_successful.png.js +1 -1
- package/es/shared/assets/img/defaultCover/11review_fail.png.js +1 -1
- package/es/shared/assets/img/defaultCover/12no_setting.png.js +1 -1
- package/es/shared/assets/img/defaultCover/13no_menu_setting.png.js +1 -1
- package/es/shared/assets/img/defaultCover/14no_call_setting.png.js +1 -1
- package/es/shared/assets/img/defaultCover/15no_use_tag.png.js +1 -1
- package/es/shared/assets/img/defaultCover/16no_table_data.png.js +1 -1
- package/es/shared/assets/img/defaultCover/1location.png.js +1 -1
- package/es/shared/assets/img/defaultCover/2notfound.png.js +1 -1
- package/es/shared/assets/img/defaultCover/3loading.png.js +1 -1
- package/es/shared/assets/img/defaultCover/4no_permission.png.js +1 -1
- package/es/shared/assets/img/defaultCover/5no_data.png.js +1 -1
- package/es/shared/assets/img/defaultCover/6no_network.png.js +1 -1
- package/es/shared/assets/img/defaultCover/7no_doctor.png.js +1 -1
- package/es/shared/assets/img/defaultCover/8system_error.png.js +1 -1
- package/es/shared/assets/img/defaultCover/9system_upgrade.png.js +1 -1
- package/es/shared/assets/img/failure.png.js +1 -1
- package/es/shared/assets/img/no-permission.png.js +1 -1
- package/es/shared/assets/img/nodata.png.js +1 -1
- package/es/shared/assets/img/notfound.png.js +1 -1
- package/es/shared/assets/img/qr.png.js +1 -1
- package/es/shared/assets/img/success.png.js +1 -1
- package/es/shared/assets/img/table_style_2.png.js +1 -1
- package/es/shared/assets/img/video.png.js +1 -1
- package/es/shared/assets/img/video_default_cover.png.js +1 -1
- package/es/shared/assets/img/xb_big.png.js +1 -1
- package/es/shared/assets/img/xb_small.png.js +1 -1
- package/es/shared/components/VueDraggable/src/vuedraggable.d.ts +86 -0
- package/es/shared/package.json.js +1 -1
- package/es/shared/utils/fabricjs/index.d.ts +6823 -0
- package/es/shared/utils/tapable/index.d.ts +139 -0
- package/package.json +2 -2
package/README.md
CHANGED
@@ -1,87 +1,87 @@
|
|
1
|
-
# 安装
|
2
|
-
|
3
|
-
```shell
|
4
|
-
npm i cnhis-design-vue@[版本号]
|
5
|
-
# or
|
6
|
-
yarn add cnhis-design-vue@[版本号] #推荐
|
7
|
-
```
|
8
|
-
|
9
|
-
## 1.全局引入
|
10
|
-
|
11
|
-
```typescript
|
12
|
-
// main.ts
|
13
|
-
import { createApp } from 'vue';
|
14
|
-
import App from './App.vue';
|
15
|
-
import 'cnhis-design-vue/es/packages/index.css';
|
16
|
-
import cui from 'cnhis-design-vue';
|
17
|
-
|
18
|
-
const app = createApp(App);
|
19
|
-
app.use(cui).mount('#app');
|
20
|
-
```
|
21
|
-
|
22
|
-
## 2. 按需引入
|
23
|
-
|
24
|
-
组件现在支持了自动按需引入, 但是样式文件需要额外的处理
|
25
|
-
|
26
|
-
### 2.1 样式处理方式1 (按需引入样式)
|
27
|
-
|
28
|
-
```shell
|
29
|
-
# 安装自动导入样式的插件
|
30
|
-
npm i -d vite-plugin-style-import
|
31
|
-
```
|
32
|
-
|
33
|
-
```typescript
|
34
|
-
// vite.config.ts
|
35
|
-
import { defineConfig } from 'vite';
|
36
|
-
import { createStyleImportPlugin } from 'vite-plugin-style-import';
|
37
|
-
|
38
|
-
export default defineConfig({
|
39
|
-
plugins: [
|
40
|
-
// ...otherPlugins
|
41
|
-
createStyleImportPlugin({
|
42
|
-
libs: [
|
43
|
-
{
|
44
|
-
libraryName: 'cnhis-design-vue',
|
45
|
-
esModule: true,
|
46
|
-
ensureStyleFile: true,
|
47
|
-
resolveStyle: name => {
|
48
|
-
return `cnhis-design-vue/es/components/${ name.slice(2) }/style/index.css`;
|
49
|
-
}
|
50
|
-
}
|
51
|
-
]
|
52
|
-
})
|
53
|
-
]
|
54
|
-
});
|
55
|
-
```
|
56
|
-
|
57
|
-
### 2.2 样式处理方式2 (全局引入样式)
|
58
|
-
|
59
|
-
```typescript
|
60
|
-
// main.ts
|
61
|
-
import 'cnhis-design-vue/es/components/index.css';
|
62
|
-
```
|
63
|
-
|
64
|
-
## 3.FAQ
|
65
|
-
|
66
|
-
### 3.1 项目打包后样式丢失
|
67
|
-
|
68
|
-
处理方法, 将 cnhis-design-vue 从 vendor 包中移除 (没有出现此问题则不需要)
|
69
|
-
|
70
|
-
```typescript
|
71
|
-
// vite.config.ts
|
72
|
-
import { defineConfig } from 'vite';
|
73
|
-
|
74
|
-
export default defineConfig({
|
75
|
-
build: {
|
76
|
-
rollupOptions: {
|
77
|
-
// ..otherOptions
|
78
|
-
output: {
|
79
|
-
dir: './dist',
|
80
|
-
manualChunks: {
|
81
|
-
'cnhis-vendor': ['cnhis-design-vue']
|
82
|
-
}
|
83
|
-
}
|
84
|
-
}
|
85
|
-
}
|
86
|
-
});
|
87
|
-
```
|
1
|
+
# 安装
|
2
|
+
|
3
|
+
```shell
|
4
|
+
npm i cnhis-design-vue@[版本号]
|
5
|
+
# or
|
6
|
+
yarn add cnhis-design-vue@[版本号] #推荐
|
7
|
+
```
|
8
|
+
|
9
|
+
## 1.全局引入
|
10
|
+
|
11
|
+
```typescript
|
12
|
+
// main.ts
|
13
|
+
import { createApp } from 'vue';
|
14
|
+
import App from './App.vue';
|
15
|
+
import 'cnhis-design-vue/es/packages/index.css';
|
16
|
+
import cui from 'cnhis-design-vue';
|
17
|
+
|
18
|
+
const app = createApp(App);
|
19
|
+
app.use(cui).mount('#app');
|
20
|
+
```
|
21
|
+
|
22
|
+
## 2. 按需引入
|
23
|
+
|
24
|
+
组件现在支持了自动按需引入, 但是样式文件需要额外的处理
|
25
|
+
|
26
|
+
### 2.1 样式处理方式1 (按需引入样式)
|
27
|
+
|
28
|
+
```shell
|
29
|
+
# 安装自动导入样式的插件
|
30
|
+
npm i -d vite-plugin-style-import
|
31
|
+
```
|
32
|
+
|
33
|
+
```typescript
|
34
|
+
// vite.config.ts
|
35
|
+
import { defineConfig } from 'vite';
|
36
|
+
import { createStyleImportPlugin } from 'vite-plugin-style-import';
|
37
|
+
|
38
|
+
export default defineConfig({
|
39
|
+
plugins: [
|
40
|
+
// ...otherPlugins
|
41
|
+
createStyleImportPlugin({
|
42
|
+
libs: [
|
43
|
+
{
|
44
|
+
libraryName: 'cnhis-design-vue',
|
45
|
+
esModule: true,
|
46
|
+
ensureStyleFile: true,
|
47
|
+
resolveStyle: name => {
|
48
|
+
return `cnhis-design-vue/es/components/${ name.slice(2) }/style/index.css`;
|
49
|
+
}
|
50
|
+
}
|
51
|
+
]
|
52
|
+
})
|
53
|
+
]
|
54
|
+
});
|
55
|
+
```
|
56
|
+
|
57
|
+
### 2.2 样式处理方式2 (全局引入样式)
|
58
|
+
|
59
|
+
```typescript
|
60
|
+
// main.ts
|
61
|
+
import 'cnhis-design-vue/es/components/index.css';
|
62
|
+
```
|
63
|
+
|
64
|
+
## 3.FAQ
|
65
|
+
|
66
|
+
### 3.1 项目打包后样式丢失
|
67
|
+
|
68
|
+
处理方法, 将 cnhis-design-vue 从 vendor 包中移除 (没有出现此问题则不需要)
|
69
|
+
|
70
|
+
```typescript
|
71
|
+
// vite.config.ts
|
72
|
+
import { defineConfig } from 'vite';
|
73
|
+
|
74
|
+
export default defineConfig({
|
75
|
+
build: {
|
76
|
+
rollupOptions: {
|
77
|
+
// ..otherOptions
|
78
|
+
output: {
|
79
|
+
dir: './dist',
|
80
|
+
manualChunks: {
|
81
|
+
'cnhis-vendor': ['cnhis-design-vue']
|
82
|
+
}
|
83
|
+
}
|
84
|
+
}
|
85
|
+
}
|
86
|
+
});
|
87
|
+
```
|
File without changes
|
@@ -0,0 +1 @@
|
|
1
|
+
declare module 'bpmn-js/lib/Viewer';
|
@@ -0,0 +1 @@
|
|
1
|
+
declare module 'bpmn-js/lib/features/modeling';
|
@@ -0,0 +1 @@
|
|
1
|
+
declare module 'diagram-js/lib/navigation/movecanvas';
|
@@ -333,6 +333,7 @@ declare const ButtonPrint: SFCWithInstall<import("vue").DefineComponent<{
|
|
333
333
|
printInstance: import("./src/utils").Print | null;
|
334
334
|
downloadPdfCode: string;
|
335
335
|
formatEditTextCode: string;
|
336
|
+
resetPrintButtonCode: string;
|
336
337
|
props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
|
337
338
|
printParams: {
|
338
339
|
type: import("vue").PropType<import("../../shared/types").AnyObject[]>;
|
@@ -339,6 +339,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
339
339
|
printInstance: import("./utils").Print | null;
|
340
340
|
downloadPdfCode: string;
|
341
341
|
formatEditTextCode: string;
|
342
|
+
resetPrintButtonCode: string;
|
342
343
|
props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
|
343
344
|
printParams: {
|
344
345
|
type: PropType<AnyObject[]>;
|
@@ -114,6 +114,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
114
114
|
printInstance: Print | null;
|
115
115
|
downloadPdfCode: string;
|
116
116
|
formatEditTextCode: string;
|
117
|
+
resetPrintButtonCode: string;
|
117
118
|
props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
|
118
119
|
printParams: {
|
119
120
|
type: PropType<AnyObject[]>;
|
@@ -1 +1 @@
|
|
1
|
-
import{defineComponent as e,inject as t,ref as n,reactive as i,computed as r,onMounted as a,watch as l,openBlock as o,createElementBlock as s,Fragment as u,createElementVNode as c,createCommentVNode as d,createVNode as p,unref as m,withCtx as v,renderList as y,createBlock as f,normalizeClass as g,createTextVNode as k,toDisplayString as h,isRef as b,renderSlot as P,withModifiers as w,mergeProps as S}from"vue";import{isObject as O}from"@vue/shared";import{useMessage as C,NButtonGroup as I,NDropdown as T,NButton as L,NIcon as M,NPopover as F,NCheckbox as j,NDivider as E}from"naive-ui";import{PrintOutline as x,SettingsOutline as N,ChevronDownSharp as _,ArrowForwardOutline as D}from"@vicons/ionicons5";import{InjectionButtonPrintEmits as J}from"../constants/index.js";import{Print as z}from"../utils/print.js";import{isIReport as A}from"../utils/browserPrint.js";import U from"./IdentityVerification.vue.js";import{format as V}from"date-fns";import"../api.js";const B={class:"newprint-button-outer"},K=c("span",{class:"label bold"},"外显设置",-1),R={class:"newprint-button-poperOver"},q={class:"print-lite"},G={class:"label bold"},H={class:"print-li"},Y={class:"print-lite"},$={class:"newprint-button-poperOver"},Q=["onMouseenter","onClick"],W={class:"label bold"},X={class:"newprint-button-poperOver"},Z={class:"print-lite"},ee={class:"label bold"},te={class:"print-li"},ne={class:"print-lite"},ie=["onClick"],re={class:"newprint-button-poperOver"},ae=["onMouseenter"],le={class:"print-lite"},oe=["onClick"];var se=e({__name:"NewPrintComponent",props:{printParams:{type:Array},params:{default:()=>[],type:Array},btnText:{default:"打印",type:String},printText:{default:"直接打印",type:String},previewText:{default:"打印预览",type:String},pdfLoadText:{default:"下载pdf",type:String},formatEditText:{default:"格式编辑",type:String},prevFn:{default:()=>Promise.resolve(),type:Function},queryPrintFormatByNumber:{default:()=>Promise.resolve({}),type:Function},queryTemplateParams:{default:()=>Promise.resolve({}),type:Function},strategy:{default:"MULTI",type:String},clickPrevFn:{default:()=>Promise.resolve(!0),type:Function},noDataMsg:{default:"请选中需要打印的数据",type:String},token:{type:String},printdlgshow:{default:"0",type:String},btnprint:{type:String,default:"1"},directPrint:{type:Boolean,default:!1},externalOptionConfig:{type:Object,default:()=>({})},signature:{type:String},showLoading:{type:Boolean,default:!0},hideButtons:{type:Array,default:()=>[]},printCopies:{type:Number,default:1},newPrintSetting:{type:Object,default:()=>({isShowPrintAll:!0,printAllType:1,isShowOutSetting:!0,customProps:{},outerPrintKeys:[],defaultFormatId:""})}},setup(e,{expose:se}){const ue=e,ce=[{label:"分割线",key:"divider"},{label:"外显设置",key:"outSetting"}],de=C();let pe;const me=t(J),ve=n(""),ye=i({spinning:!1,visible:!1,formatList:[],templateParams:[],printParams:[],originParams:{},currentFormatId:"",identityVerification:{visible:!1},isInited:!1,watchPrintParamsReformatFn:null,spinTimer:null,isClickOuterPrint:!1,curPrintParamList:[],ireportExecuteMode:1});let fe=n([]),ge=n([{label:ue.previewText,key:"previewText"},{label:ue.pdfLoadText,key:"downloadPdf"},{label:ue.formatEditText,key:"formatEditText"},{label:"重置打印机",key:"resetPrinter"}]);const ke=i({oneMouseType:"",oneClickType:"",twoMouseType:""}),he=i({oneShow:!1,isOperation:!1,isOutSetting:!1}),be=n([]),Pe=n([]),we=r((()=>{if(!ye.currentFormatId)return{};let e=ye.currentFormatId;return ye.formatList.find((t=>t.id===e))}));r((()=>{var e;return(null==(e=we.value)?void 0:e.name)||"格式选择"}));const Se=r((()=>{let e=ye.formatList.find((e=>e.id===ye.currentFormatId));return null==e?void 0:e.templateId})),Oe=r((()=>{let e=ye.formatList.find((e=>e.id===ye.currentFormatId));return null==e?void 0:e.number})),Ce=r((()=>{var e;return null==(e=ue.newPrintSetting)?void 0:e.isShowPrintAll})),Ie=r((()=>{var e;return null==(e=ue.newPrintSetting)?void 0:e.isShowOutSetting})),Te=r((()=>{var e;return(null==(e=ue.newPrintSetting)?void 0:e.customProps)||{}})),Le=r((()=>{var e;return(null==(e=ue.newPrintSetting)?void 0:e.defaultFormatId)||""})),Me=r((()=>{var e;return(null==(e=ue.newPrintSetting)?void 0:e.printAllType)||1})),Fe=r((()=>{const e=ce.map((e=>e.key));return fe.value.filter((t=>!e.includes(t.key)))})),je=r({get:()=>Fe.value.every((e=>e.selected)),set(e){Fe.value.forEach((t=>{t.selected=e}))}}),Ee=async()=>{var e,t;(null==(t=null==(e=ue.newPrintSetting)?void 0:e.outerPrintKeys)?void 0:t.length)||await rt(),he.oneShow=!0},xe=async e=>{if(ue.directPrint){if(ye.spinning)return;return"button"===e?void(Ce.value?await ot():Le.value?async function(e){await rt(!1);const t=be.value.find((t=>t.key==e));t&&Ge(t.templateCode,t.templateId,t.key,!1)}(Le.value):Ee()):Ee()}return Ee()},Ne=(e,t)=>{ke[e]=t},_e=()=>{be.value=fe.value.filter((e=>!e.selected)),Pe.value=Fe.value.filter((e=>e.selected)),Je("oneShow"),Je("isOutSetting"),me("saveOuterPrint",Pe.value)},De=e=>{he[e]=!0},Je=e=>{ke.oneClickType="",he[e]=!1,"isOutSetting"==e&&(he.isOutSetting=!1)},ze=(e,t)=>{Re(!1);let n={type:t,formatId:ye.currentFormatId,templateId:(null==e?void 0:e.templateId)||Se.value,templateCode:(null==e?void 0:e.templateCode)||Oe.value};me("success",e,n)},Ae=e=>{Re(!1),me("error",e),O(e)&&"notInstalledApp"===e.type&&de.error(e.message)},Ue=e=>{Re(!1),me("cancel",e)},Ve=e=>{me("error",{message:"前置条件执行错误",type:e,preExecution:!0})},Be=()=>JSON.stringify({...ue.token?{token:ue.token}:{}}),Ke=(e=[],t)=>{var n,i;let r={},a={};if((null==(n=ye.templateParams[t].customizeDataset)?void 0:n.length)>0){const t=(null==(i=Object.keys(e[0].datasetData||{}))?void 0:i[0])||"",n=JSON.stringify(e.map((e=>JSON.parse(e.datasetData[t]))));a={datasetData:{}},a.datasetData[t]=n}else Object.keys(e[0]).forEach((t=>{a[t]=[],e.forEach((e=>{a[t].includes(e[t])||a[t].push(e[t])})),a[t]=a[t].join(",")}));return r=Object.assign({},JSON.parse(Be()),Te.value,a),JSON.stringify(r)},Re=(e,t)=>{if(ye.isClickOuterPrint){if(e&&t){const n=Pe.value.find((e=>e.key==t));return void(n&&(n.isLoading=e))}Pe.value.forEach((e=>{e.isLoading=!1}))}else ye.spinning=e},qe=()=>ye.isClickOuterPrint?Pe.value.some((e=>e.isLoading)):ye.spinning,Ge=(e,t,n,i)=>{const r=ye.printParams[e];if(!r)return;ye.isClickOuterPrint=i,ye.currentFormatId=n;const a=ye.originParams[e]||[];He(r,e,t,n,a)},He=async(e=[],t,n,i,r=[],a)=>{let l=e.length;const o=async e=>{try{--l<=0&&ze(e,"print")}catch(e){console.log("error",e)}};ue.showLoading&&qe()&&!a||(Re(!0,i),ue.prevFn("print").then((()=>{ye.curPrintParamList=e;const a={formatId:i,ireportExecuteMode:ye.ireportExecuteMode,templateId:n,authorizationKey:ve.value,printdlgshow:ue.printdlgshow,signature:ue.signature,copies:ue.printCopies};if("MULTI"===ue.strategy)for(let t=0;t<e.length;t++){t>0&&(a.printdlgshow="0");const n=JSON.stringify(Object.assign({},JSON.parse(Be()),Te.value,e[t]));pe.printDirect({...a,params:n},o,Ae,Ue)}else pe.printDirect({...a,params:Ke(e,t)},(e=>{e.params=r,e.templateCode=t,e.templateId=n,ze(e,"print")}),Ae,Ue)})).catch((()=>{Ve("print"),Re(!1)})).finally((()=>{ye.visible=!1})))},Ye=async(e,{templateCode:t,templateId:n,key:i},r)=>{const a=ye.printParams[t];if(a)switch(ye.isClickOuterPrint=r,ye.currentFormatId=i,e){case"previewText":(async(e=[],t,n,i)=>{ue.showLoading&&qe()||(Re(!0,i),ue.prevFn("preview").then((()=>{ye.curPrintParamList=e;const r=JSON.stringify(Object.assign({},JSON.parse(Be()),Te.value,e[0])),a="MULTI"===ue.strategy?r:Ke(e,t),l={formatId:i,templateId:n,ireportExecuteMode:ye.ireportExecuteMode,authorizationKey:ve.value,params:a,btnprint:ue.btnprint,signature:ue.signature};pe.preview(l,(e=>{ze(e,"preview")}),Ae)})).catch((()=>{Ve("preview"),Re(!1)})).finally((()=>{ye.visible=!1})))})(a,t,n,i);break;case"formatEditText":((e=[],t,n,i)=>{ue.showLoading&&qe()||(Re(!0,i),ue.prevFn("edit").then((()=>{ye.curPrintParamList=e,ye.currentFormatId=i,ye.identityVerification.visible=!0})).catch((()=>{Ve("edit")})).finally((()=>{Re(!1)})))})(a,0,0,i);break;case"downloadPdf":(async(e=[],t,n,i)=>{ue.showLoading&&qe()||(Re(!0,i),ue.prevFn("download").then((()=>{ye.curPrintParamList=e;const r=JSON.stringify(Object.assign({},JSON.parse(Be()),Te.value,e[0])),a="MULTI"===ue.strategy?r:Ke(e,t),l={formatId:i,templateId:n,ireportExecuteMode:ye.ireportExecuteMode,authorizationKey:ve.value,print:{print:"1",type:"1"},params:a,signature:ue.signature};pe.downloadPDF(l,(e=>ze(e,"preview")),Ae)})).catch((()=>{Ve("download"),Re(!1)})).finally((()=>{ye.visible=!1})))})(a,t,n,i);break;case"resetPrinter":(async(e=[],t,n,i)=>{if(!ue.showLoading||!qe()){Re(!0,i);try{const e=await pe.resetPrinter(i);if(Re(!1),"success"==(null==e?void 0:e.result))return void de.success(e.message||"重置打印机成功");de.warning("重置打印机失败")}catch(e){Re(!1),de.warning((null==e?void 0:e.message)||"重置打印机失败")}}})(a,0,0,i)}},$e=()=>{},Qe=(e,t=[])=>{let n={};return(t=t||[]).forEach((t=>{n=Object.assign({},et(n,t,e))})),n},We=(e,t=[])=>{let n={};return(t=t||[]).forEach((t=>{n=Object.assign({},tt(n,t,e))})),n},Xe=(e,t,n)=>{const i={};return t.forEach((t=>{let r=((e,t)=>{const n={DATE:"yyyy-MM-dd",DATETIME:"yyyy-MM-dd HH:mm:ss"};let i=t;return Object.keys(n).includes(e.type)&&t&&t instanceof Date&&(i=V(t,n[e.type])),(null==e?void 0:e.defaultValue)||i})(t,e[t[n]]);e[t[n]]&&r&&(i[t[n]]=r)})),i},Ze=({customizeDataset:e=[],param:t=[]},n={})=>{let i={};return e.forEach((e=>{const t=e.dataSetting[0].selectFieldList;i.datasetData||(i.datasetData={}),i.datasetData[e.name]=JSON.stringify(Xe(n,t,"fieldName"))})),i=Object.assign({},i,Xe(n,t,"key")),i},et=(e,t,n)=>{if(t.templateNumbers){for(let i=0;i<t.templateNumbers.length;i++){const r=t.templateNumbers[i],a=n[r];if(!a)return de.error("当前勾选的数据没有匹配的模板"),e;e[r]||(e[r]=[]),e[r].push(Ze(a,t))}return e}const i=Object.keys(n);for(let r=0;r<i.length;r++){const a=i[r],l=n[a];if(!l)return de.error("当前勾选的数据没有匹配的模板"),e;e[a]||(e[a]=[]),e[a].push(Ze(l,t))}return e},tt=(e,t,n)=>{if(t.templateNumbers){for(let i=0;i<t.templateNumbers.length;i++){const r=t.templateNumbers[i];if(!n[r])return de.error("当前勾选的数据没有匹配的模板"),e;e[r]||(e[r]=[]),e[r].push(t)}return e}const i=Object.keys(n);for(let r=0;r<i.length;r++){const a=i[r];if(!n[a])return de.error("当前勾选的数据没有匹配的模板"),e;e[a]||(e[a]=[]),e[a].push(t)}return e},nt=async e=>{var t;ye.formatList=e?(e=>{let t=[];return e&&e.forEach((e=>{if(!e.format)return!1;t.push(...e.format.map((t=>Object.assign({},t,{templateName:e.name}))))})),t})(e.obj):[],ye.ireportExecuteMode=(null==(t=null==e?void 0:e.obj)?void 0:t.length)>0&&e.obj[0].ireportExecuteMode||1,(()=>{var e,t,n;const i=ye.formatList.map((e=>({templateCode:e.number,templateId:e.templateId,label:e.name,key:e.id,selected:!1,isLoading:!1})));fe.value.unshift(...i),Ie.value&&fe.value.push(...ce),(null==(t=null==(e=ue.newPrintSetting)?void 0:e.outerPrintKeys)?void 0:t.length)>0&&(fe.value.forEach((e=>{var t;(null==(t=ue.newPrintSetting)?void 0:t.outerPrintKeys.includes(e.key))&&(e.selected=!0)})),Pe.value=fe.value.filter((e=>e.selected))),be.value=fe.value.filter((e=>!e.selected)),ue.hideButtons.length>0&&(ge.value=ge.value.filter((e=>!ue.hideButtons.includes(e.key))));const r=sessionStorage.getItem("portal");if(r){const e=JSON.parse(r),t=(null==(n=null==e?void 0:e.user)?void 0:n.currentRoleResourceObj)||{},i=Object.keys(t);i.includes("RY7.2.21.1.M2.G94181E")||(ge.value=ge.value.filter((e=>"downloadPdf"!=e.key))),i.includes("RY7.2.21.1.M2.G33633A")||(ge.value=ge.value.filter((e=>"formatEditText"!=e.key)))}})(),ye.templateParams=(e=>{let t={};return e&&e.forEach((e=>{if(!e.templateConfig)return!1;t[e.number]=e.templateConfig})),t})(e.obj),ye.printParams=Qe(ye.templateParams,ue.params),ye.originParams=We(ye.templateParams,ue.params)},it=async()=>{var e;if(ye.isInited)return!0;ye.isInited=!0,ye.spinning=!0,(()=>{if(pe)return!1;pe=new z})();const t=await ue.queryPrintFormatByNumber();return await nt(t),(null==(e=t.obj)?void 0:e.length)>0&&(ve.value=t.obj[0].authorizationKey||""),ye.spinning=!1,!0},rt=async(e=!0)=>{if(await ue.clickPrevFn()){if(!ye.visible){if(!await it())return!1}e&&(ye.visible=!ye.visible)}},at=e=>{if(ye.identityVerification.visible=!1,A(ye.currentFormatId))return ze(null,"edit");const t=JSON.stringify(Object.assign({},JSON.parse(Be()),Te.value,ye.curPrintParamList[0])),n="MULTI"===ue.strategy?t:Ke(ye.curPrintParamList,Oe.value),i={formatId:ye.currentFormatId,templateId:Se.value,params:n,token:e};pe.editPrintFormat(i,(e=>{ze(e,"edit")}),Ae)},lt=(e,t)=>{const n=Pe.value[t+1];return t<Pe.value.length-1&&!ye.printParams[e.templateCode]&&ye.printParams[n.templateCode]};async function ot(){await rt(!1),(()=>{const e=Object.keys(ye.printParams);ye.isClickOuterPrint=!1;const t=ye.originParams;if(1==Me.value)for(let n=0;n<e.length;n++){const i=e[n],r=ye.printParams[i],a=t[i]||[],l=ye.formatList.filter((e=>e.number==i));l&&l.length>0&&l.forEach((e=>{ye.currentFormatId=e.id,He(r,e.number,e.templateId,e.id,a,!0)}))}2==Me.value&&Pe.value.forEach((e=>{const n=ye.printParams[e.templateCode],i=t[e.templateCode]||[];ye.currentFormatId=e.key,He(n,e.templateCode,e.templateId,e.key,i,!0)}))})()}return a((()=>{ye.isInited=!1})),l((()=>ue.params),(e=>{Object.keys(ye.templateParams).length>0&&(ye.printParams=Qe(ye.templateParams,ue.params),ye.originParams=We(ye.templateParams,ue.params))}),{deep:!0}),l((()=>{var e;return null==(e=ue.newPrintSetting)?void 0:e.outerPrintKeys}),(async e=>{(null==e?void 0:e.length)>0&&await rt(!1)}),{deep:!0,immediate:!0}),se({directPrint:ot}),(t,n)=>(o(),s(u,null,[c("div",B,[d(" 外显按钮集合 "),p(m(I),{class:"outButtonGroup"},{default:v((()=>[(o(!0),s(u,null,y(Pe.value,((t,n)=>{return o(),f(m(T),{key:t.key,class:"c-dropdown",placement:"bottom-start",trigger:"hover",onClickoutside:$e,options:(i=m(ge),r=t,ye.printParams[r.templateCode]?i:[]),onSelect:e=>Ye(e,t,!0)},{default:v((()=>[p(m(L),{disabled:!ye.printParams[t.templateCode],loading:e.showLoading&&t.isLoading,onClick:e=>Ge(t.templateCode,t.templateId,t.key,!0),class:g(n==Pe.value.length-1?"outerLastButton":lt(t,n)?"isPrintDisabled":"")},{icon:v((()=>[p(m(M),{component:m(x),size:"18"},null,8,["component"])])),default:v((()=>[k(" "+h(t.label),1)])),_:2},1032,["disabled","loading","onClick","class"])])),_:2},1032,["options","onSelect"]);var i,r})),128))])),_:1}),d(" 外显设置按钮 "),Pe.value.length>0&&Pe.value.length==m(Fe).length&&m(Ie)&&2!=m(Me)?(o(),f(m(F),{key:0,trigger:"click","show-arrow":!1,show:he.isOutSetting,onClickoutside:n[2]||(n[2]=e=>Je("isOutSetting"))},{trigger:v((()=>[p(m(L),{class:g(Pe.value.length>0?"printAllLeftCls":""),onClick:n[0]||(n[0]=e=>De("isOutSetting"))},{default:v((()=>[K,p(m(M),{style:{"margin-left":"8px"},component:m(N),size:"18"},null,8,["component"])])),_:1},8,["class"])])),default:v((()=>[c("div",R,[(o(!0),s(u,null,y(m(Fe),(e=>(o(),s("div",{class:"print-li",key:e.key},[c("div",q,[c("span",G,h(e.label),1),p(m(j),{checked:e.selected,"onUpdate:checked":t=>e.selected=t},{default:v((()=>[k("外显")])),_:2},1032,["checked","onUpdate:checked"])])])))),128)),c("div",H,[p(m(E)),c("div",Y,[p(m(L),{type:"primary",size:"small",onClick:_e},{default:v((()=>[k("保存")])),_:1}),m(Fe)&&m(Fe).length>1?(o(),f(m(j),{key:0,checked:m(je),"onUpdate:checked":n[1]||(n[1]=e=>b(je)?je.value=e:null)},{default:v((()=>[k("全选")])),_:1},8,["checked"])):d("v-if",!0)])])])])),_:1},8,["show"])):(o(),s(u,{key:1},[d(" 打印全部按钮 "),p(m(F),{trigger:"click","show-arrow":!1,show:he.oneShow,onClickoutside:n[10]||(n[10]=e=>Je("oneShow"))},{trigger:v((()=>[P(t.$slots,"button",{handleClickPrintBtn:rt,printSpinning:ye.spinning,printbtnText:e.btnText,printVisible:ye.visible},(()=>[p(m(I),{class:"newprint-button-component",onClick:n[4]||(n[4]=w((()=>xe("icon")),["stop"]))},{default:v((()=>[p(m(L),{loading:e.showLoading&&ye.spinning,onClick:n[3]||(n[3]=w((()=>xe("button")),["stop"])),class:g(Pe.value.length>0?"printAllLeftCls":"")},{icon:v((()=>[p(m(M),{component:m(x),size:"18"},null,8,["component"])])),default:v((()=>[k(" "+h(m(Ce)?"打印全部":e.btnText),1)])),_:1},8,["loading","class"]),p(m(L),{class:"icon-select"},{icon:v((()=>[p(m(M),{component:m(_),size:"18"},null,8,["component"])])),_:1})])),_:1})]))])),default:v((()=>[c("div",$,[(o(!0),s(u,null,y(be.value,(e=>(o(),s("div",{class:g(["print-li",ke.oneMouseType==e.key||ke.oneClickType==e.key?"active":""]),key:e.key,onMouseenter:t=>Ne("oneMouseType",e.key),onMouseleave:n[9]||(n[9]=e=>Ne("oneMouseType","")),onClick:t=>((e,t,n)=>{if(!ye.printParams[n.templateCode])return[];Ne(e,t)})("oneClickType",e.key,e)},["divider"==e.key?(o(),f(m(E),{key:0})):"outSetting"==e.key?(o(),s(u,{key:1},[d(" 第二层外显设置 "),p(m(F),{trigger:"click","show-arrow":!1,placement:"right-start",show:he.isOutSetting,onClickoutside:n[7]||(n[7]=e=>Je("isOutSetting"))},{trigger:v((()=>[c("div",{class:"print-lite",onClick:n[5]||(n[5]=e=>De("isOutSetting"))},[c("span",W,h(e.label),1),p(m(M),{color:Pe.value.length>0?"#2563F4":"",component:m(N),size:"18"},null,8,["color","component"])])])),default:v((()=>[c("div",X,[(o(!0),s(u,null,y(m(Fe),(e=>(o(),s("div",{class:"print-li",key:e.key},[c("div",Z,[c("span",ee,h(e.label),1),p(m(j),{checked:e.selected,"onUpdate:checked":t=>e.selected=t},{default:v((()=>[k("外显")])),_:2},1032,["checked","onUpdate:checked"])])])))),128)),c("div",te,[p(m(E)),c("div",ne,[p(m(L),{type:"primary",size:"small",onClick:_e},{default:v((()=>[k("保存")])),_:1}),m(Fe)&&m(Fe).length>1?(o(),f(m(j),{key:0,checked:m(je),"onUpdate:checked":n[6]||(n[6]=e=>b(je)?je.value=e:null)},{default:v((()=>[k("全选")])),_:1},8,["checked"])):d("v-if",!0)])])])])),_:2},1032,["show"])],2112)):(o(),s(u,{key:2},[d(" 第二层功能操作 "),c("div",{class:g(["print-lite",ye.printParams[e.templateCode]?"":"isDisabled"])},[c("span",{class:"label bold",onClick:t=>Ge(e.templateCode,e.templateId,e.key,!1)},h(e.label),9,ie),ye.printParams[e.templateCode]?(o(),f(m(F),{key:0,trigger:"click","show-arrow":!1,placement:"right-start",show:he[e.key],onClickoutside:t=>Je(e.key)},{trigger:v((()=>[p(m(M),{component:m(D),size:"18",onClick:t=>De(e.key)},null,8,["component","onClick"])])),default:v((()=>[c("div",re,[(o(!0),s(u,null,y(m(ge),(t=>(o(),s("div",{class:g(["print-li",ke.twoMouseType==t.key?"active":""]),key:t.key,onMouseenter:e=>Ne("twoMouseType",t.key),onMouseleave:n[8]||(n[8]=e=>Ne("twoMouseType",""))},[c("div",le,[c("span",{class:"label",onClick:n=>Ye(t.key,e,!1)},h(t.label),9,oe)])],42,ae)))),128))])])),_:2},1032,["show","onClickoutside"])):d("v-if",!0)],2)],2112))],42,Q)))),128))])])),_:3},8,["show"])],2112))]),p(U,S(t.$attrs,{modelValue:ye.identityVerification.visible,"onUpdate:modelValue":n[11]||(n[11]=e=>ye.identityVerification.visible=e),formatId:ye.currentFormatId,templateId:m(Se),onSuccess:at}),null,16,["modelValue","formatId","templateId"])],64))}});export{se as default};
|
1
|
+
import{defineComponent as e,inject as t,ref as n,reactive as i,computed as r,onMounted as a,watch as l,openBlock as o,createElementBlock as s,Fragment as u,createElementVNode as c,createCommentVNode as d,createVNode as p,unref as m,withCtx as v,renderList as y,createBlock as f,normalizeClass as g,createTextVNode as k,toDisplayString as h,isRef as b,renderSlot as P,withModifiers as w,mergeProps as S}from"vue";import{isObject as O}from"@vue/shared";import{useMessage as C,NButtonGroup as I,NDropdown as T,NButton as L,NIcon as M,NPopover as F,NCheckbox as j,NDivider as E}from"naive-ui";import{PrintOutline as x,SettingsOutline as N,ChevronDownSharp as _,ArrowForwardOutline as D}from"@vicons/ionicons5";import{InjectionButtonPrintEmits as J}from"../constants/index.js";import{Print as z}from"../utils/print.js";import{isIReport as A}from"../utils/browserPrint.js";import U from"./IdentityVerification.vue.js";import{format as V}from"date-fns";import"../api.js";const B={class:"newprint-button-outer"},K=c("span",{class:"label bold"},"外显设置",-1),R={class:"newprint-button-poperOver"},G={class:"print-lite"},q={class:"label bold"},Y={class:"print-li"},H={class:"print-lite"},$={class:"newprint-button-poperOver"},Q=["onMouseenter","onClick"],W={class:"label bold"},X={class:"newprint-button-poperOver"},Z={class:"print-lite"},ee={class:"label bold"},te={class:"print-li"},ne={class:"print-lite"},ie=["onClick"],re={class:"newprint-button-poperOver"},ae=["onMouseenter"],le={class:"print-lite"},oe=["onClick"];var se=e({__name:"NewPrintComponent",props:{printParams:{type:Array},params:{default:()=>[],type:Array},btnText:{default:"打印",type:String},printText:{default:"直接打印",type:String},previewText:{default:"打印预览",type:String},pdfLoadText:{default:"下载pdf",type:String},formatEditText:{default:"格式编辑",type:String},prevFn:{default:()=>Promise.resolve(),type:Function},queryPrintFormatByNumber:{default:()=>Promise.resolve({}),type:Function},queryTemplateParams:{default:()=>Promise.resolve({}),type:Function},strategy:{default:"MULTI",type:String},clickPrevFn:{default:()=>Promise.resolve(!0),type:Function},noDataMsg:{default:"请选中需要打印的数据",type:String},token:{type:String},printdlgshow:{default:"0",type:String},btnprint:{type:String,default:"1"},directPrint:{type:Boolean,default:!1},externalOptionConfig:{type:Object,default:()=>({})},signature:{type:String},showLoading:{type:Boolean,default:!0},hideButtons:{type:Array,default:()=>[]},printCopies:{type:Number,default:1},newPrintSetting:{type:Object,default:()=>({isShowPrintAll:!0,printAllType:1,isShowOutSetting:!0,customProps:{},outerPrintKeys:[],defaultFormatId:""})}},setup(e,{expose:se}){const ue=e,ce=[{label:"分割线",key:"divider"},{label:"外显设置",key:"outSetting"}],de=C();let pe;const me=t(J),ve=n(""),ye=i({spinning:!1,visible:!1,formatList:[],templateParams:[],printParams:[],originParams:{},currentFormatId:"",identityVerification:{visible:!1},isInited:!1,watchPrintParamsReformatFn:null,spinTimer:null,isClickOuterPrint:!1,curPrintParamList:[],ireportExecuteMode:1});let fe=n([]),ge=n([{label:ue.previewText,key:"previewText"},{label:ue.pdfLoadText,key:"downloadPdf"},{label:ue.formatEditText,key:"formatEditText"},{label:"重置打印机",key:"resetPrinter"}]);const ke=i({oneMouseType:"",oneClickType:"",twoMouseType:""}),he=i({oneShow:!1,isOperation:!1,isOutSetting:!1}),be=n([]),Pe=n([]),we=r((()=>{if(!ye.currentFormatId)return{};let e=ye.currentFormatId;return ye.formatList.find((t=>t.id===e))}));r((()=>{var e;return(null==(e=we.value)?void 0:e.name)||"格式选择"}));const Se=r((()=>{let e=ye.formatList.find((e=>e.id===ye.currentFormatId));return null==e?void 0:e.templateId})),Oe=r((()=>{let e=ye.formatList.find((e=>e.id===ye.currentFormatId));return null==e?void 0:e.number})),Ce=r((()=>{var e;return null==(e=ue.newPrintSetting)?void 0:e.isShowPrintAll})),Ie=r((()=>{var e;return null==(e=ue.newPrintSetting)?void 0:e.isShowOutSetting})),Te=r((()=>{var e;return(null==(e=ue.newPrintSetting)?void 0:e.customProps)||{}})),Le=r((()=>{var e;return(null==(e=ue.newPrintSetting)?void 0:e.defaultFormatId)||""})),Me=r((()=>{var e;return(null==(e=ue.newPrintSetting)?void 0:e.printAllType)||1})),Fe=r((()=>{const e=ce.map((e=>e.key));return fe.value.filter((t=>!e.includes(t.key)))})),je=r({get:()=>Fe.value.every((e=>e.selected)),set(e){Fe.value.forEach((t=>{t.selected=e}))}}),Ee=async()=>{var e,t;(null==(t=null==(e=ue.newPrintSetting)?void 0:e.outerPrintKeys)?void 0:t.length)||await rt(),he.oneShow=!0},xe=async e=>{if(ue.directPrint){if(ye.spinning)return;return"button"===e?void(Ce.value?await ot():Le.value?async function(e){await rt(!1);const t=be.value.find((t=>t.key==e));t&&qe(t.templateCode,t.templateId,t.key,!1)}(Le.value):Ee()):Ee()}return Ee()},Ne=(e,t)=>{ke[e]=t},_e=()=>{be.value=fe.value.filter((e=>!e.selected)),Pe.value=Fe.value.filter((e=>e.selected)),Je("oneShow"),Je("isOutSetting"),me("saveOuterPrint",Pe.value)},De=e=>{he[e]=!0},Je=e=>{ke.oneClickType="",he[e]=!1,"isOutSetting"==e&&(he.isOutSetting=!1)},ze=(e,t)=>{Re(!1);let n={type:t,formatId:ye.currentFormatId,templateId:(null==e?void 0:e.templateId)||Se.value,templateCode:(null==e?void 0:e.templateCode)||Oe.value};me("success",e,n)},Ae=e=>{Re(!1),me("error",e),O(e)&&"notInstalledApp"===e.type&&de.error(e.message)},Ue=e=>{Re(!1),me("cancel",e)},Ve=e=>{me("error",{message:"前置条件执行错误",type:e,preExecution:!0})},Be=()=>JSON.stringify({...ue.token?{token:ue.token}:{}}),Ke=(e=[],t)=>{var n,i;let r={},a={};if((null==(n=ye.templateParams[t].customizeDataset)?void 0:n.length)>0){const t=(null==(i=Object.keys(e[0].datasetData||{}))?void 0:i[0])||"",n=JSON.stringify(e.map((e=>JSON.parse(e.datasetData[t]))));a={datasetData:{}},a.datasetData[t]=n}else Object.keys(e[0]).forEach((t=>{a[t]=[],e.forEach((e=>{a[t].includes(e[t])||a[t].push(e[t])})),a[t]=a[t].join(",")}));return r=Object.assign({},JSON.parse(Be()),Te.value,a),JSON.stringify(r)},Re=(e,t)=>{if(ye.isClickOuterPrint){if(e&&t){const n=Pe.value.find((e=>e.key==t));return void(n&&(n.isLoading=e))}Pe.value.forEach((e=>{e.isLoading=!1}))}else ye.spinning=e},Ge=()=>ye.isClickOuterPrint?Pe.value.some((e=>e.isLoading)):ye.spinning,qe=(e,t,n,i)=>{const r=ye.printParams[e];if(!r)return;ye.isClickOuterPrint=i,ye.currentFormatId=n;const a=ye.originParams[e]||[];Ye(r,e,t,n,a)},Ye=async(e=[],t,n,i,r=[],a)=>{let l=e.length;const o=async e=>{try{--l<=0&&ze(e,"print")}catch(e){console.log("error",e)}};ue.showLoading&&Ge()&&!a||(Re(!0,i),ue.prevFn("print").then((()=>{ye.curPrintParamList=e;const a={formatId:i,ireportExecuteMode:ye.ireportExecuteMode,templateId:n,authorizationKey:ve.value,printdlgshow:ue.printdlgshow,signature:ue.signature,copies:ue.printCopies};if("MULTI"===ue.strategy)for(let t=0;t<e.length;t++){t>0&&(a.printdlgshow="0");const n=JSON.stringify(Object.assign({},JSON.parse(Be()),Te.value,e[t]));pe.printDirect({...a,params:n},o,Ae,Ue)}else pe.printDirect({...a,params:Ke(e,t)},(e=>{e.params=r,e.templateCode=t,e.templateId=n,ze(e,"print")}),Ae,Ue)})).catch((()=>{Ve("print"),Re(!1)})).finally((()=>{ye.visible=!1})))},He=async(e,{templateCode:t,templateId:n,key:i},r)=>{const a=ye.printParams[t];if(a)switch(ye.isClickOuterPrint=r,ye.currentFormatId=i,e){case"previewText":(async(e=[],t,n,i)=>{ue.showLoading&&Ge()||(Re(!0,i),ue.prevFn("preview").then((()=>{ye.curPrintParamList=e;const r=JSON.stringify(Object.assign({},JSON.parse(Be()),Te.value,e[0])),a="MULTI"===ue.strategy?r:Ke(e,t),l={formatId:i,templateId:n,ireportExecuteMode:ye.ireportExecuteMode,authorizationKey:ve.value,params:a,btnprint:ue.btnprint,signature:ue.signature};pe.preview(l,(e=>{ze(e,"preview")}),Ae)})).catch((()=>{Ve("preview"),Re(!1)})).finally((()=>{ye.visible=!1})))})(a,t,n,i);break;case"formatEditText":((e=[],t,n,i)=>{ue.showLoading&&Ge()||(Re(!0,i),ue.prevFn("edit").then((()=>{ye.curPrintParamList=e,ye.currentFormatId=i,ye.identityVerification.visible=!0})).catch((()=>{Ve("edit")})).finally((()=>{Re(!1)})))})(a,0,0,i);break;case"downloadPdf":(async(e=[],t,n,i)=>{ue.showLoading&&Ge()||(Re(!0,i),ue.prevFn("download").then((()=>{ye.curPrintParamList=e;const r=JSON.stringify(Object.assign({},JSON.parse(Be()),Te.value,e[0])),a="MULTI"===ue.strategy?r:Ke(e,t),l={formatId:i,templateId:n,ireportExecuteMode:ye.ireportExecuteMode,authorizationKey:ve.value,print:{print:"1",type:"1"},params:a,signature:ue.signature};pe.downloadPDF(l,(e=>ze(e,"preview")),Ae)})).catch((()=>{Ve("download"),Re(!1)})).finally((()=>{ye.visible=!1})))})(a,t,n,i);break;case"resetPrinter":(async(e=[],t,n,i)=>{if(!ue.showLoading||!Ge()){Re(!0,i);try{const e=await pe.resetPrinter(i);if(Re(!1),"success"==(null==e?void 0:e.result))return void de.success(e.message||"重置打印机成功");de.warning("重置打印机失败")}catch(e){Re(!1),de.warning((null==e?void 0:e.message)||"重置打印机失败")}}})(a,0,0,i)}},$e=()=>{},Qe=(e,t=[])=>{let n={};return(t=t||[]).forEach((t=>{n=Object.assign({},et(n,t,e))})),n},We=(e,t=[])=>{let n={};return(t=t||[]).forEach((t=>{n=Object.assign({},tt(n,t,e))})),n},Xe=(e,t,n)=>{const i={};return t.forEach((t=>{let r=((e,t)=>{const n={DATE:"yyyy-MM-dd",DATETIME:"yyyy-MM-dd HH:mm:ss"};let i=t;return Object.keys(n).includes(e.type)&&t&&t instanceof Date&&(i=V(t,n[e.type])),(null==e?void 0:e.defaultValue)||i})(t,e[t[n]]);e[t[n]]&&r&&(i[t[n]]=r)})),i},Ze=({customizeDataset:e=[],param:t=[]},n={})=>{let i={};return e.forEach((e=>{const t=e.dataSetting[0].selectFieldList;i.datasetData||(i.datasetData={}),i.datasetData[e.name]=JSON.stringify(Xe(n,t,"fieldName"))})),i=Object.assign({},i,Xe(n,t,"key")),i},et=(e,t,n)=>{if(t.templateNumbers){for(let i=0;i<t.templateNumbers.length;i++){const r=t.templateNumbers[i],a=n[r];if(!a)return de.error("当前勾选的数据没有匹配的模板"),e;e[r]||(e[r]=[]),e[r].push(Ze(a,t))}return e}const i=Object.keys(n);for(let r=0;r<i.length;r++){const a=i[r],l=n[a];if(!l)return de.error("当前勾选的数据没有匹配的模板"),e;e[a]||(e[a]=[]),e[a].push(Ze(l,t))}return e},tt=(e,t,n)=>{if(t.templateNumbers){for(let i=0;i<t.templateNumbers.length;i++){const r=t.templateNumbers[i];if(!n[r])return de.error("当前勾选的数据没有匹配的模板"),e;e[r]||(e[r]=[]),e[r].push(t)}return e}const i=Object.keys(n);for(let r=0;r<i.length;r++){const a=i[r];if(!n[a])return de.error("当前勾选的数据没有匹配的模板"),e;e[a]||(e[a]=[]),e[a].push(t)}return e},nt=async e=>{var t;ye.formatList=e?(e=>{let t=[];return e&&e.forEach((e=>{if(!e.format)return!1;t.push(...e.format.map((t=>Object.assign({},t,{templateName:e.name}))))})),t})(e.obj):[],ye.ireportExecuteMode=(null==(t=null==e?void 0:e.obj)?void 0:t.length)>0&&e.obj[0].ireportExecuteMode||1,(()=>{var e,t,n;const i=ye.formatList.map((e=>({templateCode:e.number,templateId:e.templateId,label:e.name,key:e.id,selected:!1,isLoading:!1})));fe.value.unshift(...i),Ie.value&&fe.value.push(...ce),(null==(t=null==(e=ue.newPrintSetting)?void 0:e.outerPrintKeys)?void 0:t.length)>0&&(fe.value.forEach((e=>{var t;(null==(t=ue.newPrintSetting)?void 0:t.outerPrintKeys.includes(e.key))&&(e.selected=!0)})),Pe.value=fe.value.filter((e=>e.selected))),be.value=fe.value.filter((e=>!e.selected)),ue.hideButtons.length>0&&(ge.value=ge.value.filter((e=>!ue.hideButtons.includes(e.key))));const r=sessionStorage.getItem("portal");if(r){const e=JSON.parse(r),t=(null==(n=null==e?void 0:e.user)?void 0:n.currentRoleResourceObj)||{},i=Object.keys(t);i.includes("RY7.2.21.1.M2.G94181E")||(ge.value=ge.value.filter((e=>"downloadPdf"!=e.key))),i.includes("RY7.2.21.1.M2.G33633A")||(ge.value=ge.value.filter((e=>"formatEditText"!=e.key))),i.includes("RY7.2.21.1.M2.G99314S")||(ge.value=ge.value.filter((e=>"resetPrinter"!=e.key)))}})(),ye.templateParams=(e=>{let t={};return e&&e.forEach((e=>{if(!e.templateConfig)return!1;t[e.number]=e.templateConfig})),t})(e.obj),ye.printParams=Qe(ye.templateParams,ue.params),ye.originParams=We(ye.templateParams,ue.params)},it=async()=>{var e;if(ye.isInited)return!0;ye.isInited=!0,ye.spinning=!0,(()=>{if(pe)return!1;pe=new z})();const t=await ue.queryPrintFormatByNumber();return await nt(t),(null==(e=t.obj)?void 0:e.length)>0&&(ve.value=t.obj[0].authorizationKey||""),ye.spinning=!1,!0},rt=async(e=!0)=>{if(await ue.clickPrevFn()){if(!ye.visible){if(!await it())return!1}e&&(ye.visible=!ye.visible)}},at=e=>{if(ye.identityVerification.visible=!1,A(ye.currentFormatId))return ze(null,"edit");const t=JSON.stringify(Object.assign({},JSON.parse(Be()),Te.value,ye.curPrintParamList[0])),n="MULTI"===ue.strategy?t:Ke(ye.curPrintParamList,Oe.value),i={formatId:ye.currentFormatId,templateId:Se.value,params:n,token:e};pe.editPrintFormat(i,(e=>{ze(e,"edit")}),Ae)},lt=(e,t)=>{const n=Pe.value[t+1];return t<Pe.value.length-1&&!ye.printParams[e.templateCode]&&ye.printParams[n.templateCode]};async function ot(){await rt(!1),(()=>{const e=Object.keys(ye.printParams);ye.isClickOuterPrint=!1;const t=ye.originParams;if(1==Me.value)for(let n=0;n<e.length;n++){const i=e[n],r=ye.printParams[i],a=t[i]||[],l=ye.formatList.filter((e=>e.number==i));l&&l.length>0&&l.forEach((e=>{ye.currentFormatId=e.id,Ye(r,e.number,e.templateId,e.id,a,!0)}))}2==Me.value&&Pe.value.forEach((e=>{const n=ye.printParams[e.templateCode],i=t[e.templateCode]||[];ye.currentFormatId=e.key,Ye(n,e.templateCode,e.templateId,e.key,i,!0)}))})()}return a((()=>{ye.isInited=!1})),l((()=>ue.params),(e=>{Object.keys(ye.templateParams).length>0&&(ye.printParams=Qe(ye.templateParams,ue.params),ye.originParams=We(ye.templateParams,ue.params))}),{deep:!0}),l((()=>{var e;return null==(e=ue.newPrintSetting)?void 0:e.outerPrintKeys}),(async e=>{(null==e?void 0:e.length)>0&&await rt(!1)}),{deep:!0,immediate:!0}),se({directPrint:ot}),(t,n)=>(o(),s(u,null,[c("div",B,[d(" 外显按钮集合 "),p(m(I),{class:"outButtonGroup"},{default:v((()=>[(o(!0),s(u,null,y(Pe.value,((t,n)=>{return o(),f(m(T),{key:t.key,class:"c-dropdown",placement:"bottom-start",trigger:"hover",onClickoutside:$e,options:(i=m(ge),r=t,ye.printParams[r.templateCode]?i:[]),onSelect:e=>He(e,t,!0)},{default:v((()=>[p(m(L),{disabled:!ye.printParams[t.templateCode],loading:e.showLoading&&t.isLoading,onClick:e=>qe(t.templateCode,t.templateId,t.key,!0),class:g(n==Pe.value.length-1?"outerLastButton":lt(t,n)?"isPrintDisabled":"")},{icon:v((()=>[p(m(M),{component:m(x),size:"18"},null,8,["component"])])),default:v((()=>[k(" "+h(t.label),1)])),_:2},1032,["disabled","loading","onClick","class"])])),_:2},1032,["options","onSelect"]);var i,r})),128))])),_:1}),d(" 外显设置按钮 "),Pe.value.length>0&&Pe.value.length==m(Fe).length&&m(Ie)&&2!=m(Me)?(o(),f(m(F),{key:0,trigger:"click","show-arrow":!1,show:he.isOutSetting,onClickoutside:n[2]||(n[2]=e=>Je("isOutSetting"))},{trigger:v((()=>[p(m(L),{class:g(Pe.value.length>0?"printAllLeftCls":""),onClick:n[0]||(n[0]=e=>De("isOutSetting"))},{default:v((()=>[K,p(m(M),{style:{"margin-left":"8px"},component:m(N),size:"18"},null,8,["component"])])),_:1},8,["class"])])),default:v((()=>[c("div",R,[(o(!0),s(u,null,y(m(Fe),(e=>(o(),s("div",{class:"print-li",key:e.key},[c("div",G,[c("span",q,h(e.label),1),p(m(j),{checked:e.selected,"onUpdate:checked":t=>e.selected=t},{default:v((()=>[k("外显")])),_:2},1032,["checked","onUpdate:checked"])])])))),128)),c("div",Y,[p(m(E)),c("div",H,[p(m(L),{type:"primary",size:"small",onClick:_e},{default:v((()=>[k("保存")])),_:1}),m(Fe)&&m(Fe).length>1?(o(),f(m(j),{key:0,checked:m(je),"onUpdate:checked":n[1]||(n[1]=e=>b(je)?je.value=e:null)},{default:v((()=>[k("全选")])),_:1},8,["checked"])):d("v-if",!0)])])])])),_:1},8,["show"])):(o(),s(u,{key:1},[d(" 打印全部按钮 "),p(m(F),{trigger:"click","show-arrow":!1,show:he.oneShow,onClickoutside:n[10]||(n[10]=e=>Je("oneShow"))},{trigger:v((()=>[P(t.$slots,"button",{handleClickPrintBtn:rt,printSpinning:ye.spinning,printbtnText:e.btnText,printVisible:ye.visible},(()=>[p(m(I),{class:"newprint-button-component",onClick:n[4]||(n[4]=w((()=>xe("icon")),["stop"]))},{default:v((()=>[p(m(L),{loading:e.showLoading&&ye.spinning,onClick:n[3]||(n[3]=w((()=>xe("button")),["stop"])),class:g(Pe.value.length>0?"printAllLeftCls":"")},{icon:v((()=>[p(m(M),{component:m(x),size:"18"},null,8,["component"])])),default:v((()=>[k(" "+h(m(Ce)?"打印全部":e.btnText),1)])),_:1},8,["loading","class"]),p(m(L),{class:"icon-select"},{icon:v((()=>[p(m(M),{component:m(_),size:"18"},null,8,["component"])])),_:1})])),_:1})]))])),default:v((()=>[c("div",$,[(o(!0),s(u,null,y(be.value,(e=>(o(),s("div",{class:g(["print-li",ke.oneMouseType==e.key||ke.oneClickType==e.key?"active":""]),key:e.key,onMouseenter:t=>Ne("oneMouseType",e.key),onMouseleave:n[9]||(n[9]=e=>Ne("oneMouseType","")),onClick:t=>((e,t,n)=>{if(!ye.printParams[n.templateCode])return[];Ne(e,t)})("oneClickType",e.key,e)},["divider"==e.key?(o(),f(m(E),{key:0})):"outSetting"==e.key?(o(),s(u,{key:1},[d(" 第二层外显设置 "),p(m(F),{trigger:"click","show-arrow":!1,placement:"right-start",show:he.isOutSetting,onClickoutside:n[7]||(n[7]=e=>Je("isOutSetting"))},{trigger:v((()=>[c("div",{class:"print-lite",onClick:n[5]||(n[5]=e=>De("isOutSetting"))},[c("span",W,h(e.label),1),p(m(M),{color:Pe.value.length>0?"#2563F4":"",component:m(N),size:"18"},null,8,["color","component"])])])),default:v((()=>[c("div",X,[(o(!0),s(u,null,y(m(Fe),(e=>(o(),s("div",{class:"print-li",key:e.key},[c("div",Z,[c("span",ee,h(e.label),1),p(m(j),{checked:e.selected,"onUpdate:checked":t=>e.selected=t},{default:v((()=>[k("外显")])),_:2},1032,["checked","onUpdate:checked"])])])))),128)),c("div",te,[p(m(E)),c("div",ne,[p(m(L),{type:"primary",size:"small",onClick:_e},{default:v((()=>[k("保存")])),_:1}),m(Fe)&&m(Fe).length>1?(o(),f(m(j),{key:0,checked:m(je),"onUpdate:checked":n[6]||(n[6]=e=>b(je)?je.value=e:null)},{default:v((()=>[k("全选")])),_:1},8,["checked"])):d("v-if",!0)])])])])),_:2},1032,["show"])],2112)):(o(),s(u,{key:2},[d(" 第二层功能操作 "),c("div",{class:g(["print-lite",ye.printParams[e.templateCode]?"":"isDisabled"])},[c("span",{class:"label bold",onClick:t=>qe(e.templateCode,e.templateId,e.key,!1)},h(e.label),9,ie),ye.printParams[e.templateCode]?(o(),f(m(F),{key:0,trigger:"click","show-arrow":!1,placement:"right-start",show:he[e.key],onClickoutside:t=>Je(e.key)},{trigger:v((()=>[p(m(M),{component:m(D),size:"18",onClick:t=>De(e.key)},null,8,["component","onClick"])])),default:v((()=>[c("div",re,[(o(!0),s(u,null,y(m(ge),(t=>(o(),s("div",{class:g(["print-li",ke.twoMouseType==t.key?"active":""]),key:t.key,onMouseenter:e=>Ne("twoMouseType",t.key),onMouseleave:n[8]||(n[8]=e=>Ne("twoMouseType",""))},[c("div",le,[c("span",{class:"label",onClick:n=>He(t.key,e,!1)},h(t.label),9,oe)])],42,ae)))),128))])])),_:2},1032,["show","onClickoutside"])):d("v-if",!0)],2)],2112))],42,Q)))),128))])])),_:3},8,["show"])],2112))]),p(U,S(t.$attrs,{modelValue:ye.identityVerification.visible,"onUpdate:modelValue":n[11]||(n[11]=e=>ye.identityVerification.visible=e),formatId:ye.currentFormatId,templateId:m(Se),onSuccess:at}),null,16,["modelValue","formatId","templateId"])],64))}});export{se as default};
|
@@ -3,7 +3,7 @@ export declare const CallbackMaps: Map<string, {
|
|
3
3
|
formRenderRef: import("vue").Ref<import("../../../../../components/form-render").FormRenderExpose | undefined>;
|
4
4
|
key: import("vue").Ref<number>;
|
5
5
|
reload: () => Promise<void>;
|
6
|
-
formRenderExposeKeyList: readonly ["validate", "getFormValues", "setFormValues", "setFieldState", "resetFields", "queryWidget", "getFieldList", "applySelectedSetting", "getTextFormValues", "optionInited"];
|
6
|
+
formRenderExposeKeyList: readonly ["validate", "getFormValues", "setFormValues", "setFieldState", "resetFields", "queryWidget", "getFieldList", "applySelectedSetting", "getTextFormValues", "optionInited", "updateAnchor"];
|
7
7
|
exposed: Partial<import("../../../../../components/form-render").FormRenderExpose>;
|
8
8
|
FormRender: import("vue").DefineComponent<{
|
9
9
|
fieldList: {
|
@@ -436,6 +436,7 @@ export declare const CallbackMaps: Map<string, {
|
|
436
436
|
index: number;
|
437
437
|
}[]>;
|
438
438
|
onScroll: (scrollEvent: Event) => void;
|
439
|
+
generateAnchorList: (formModel: import("@formily/core").Form<any>) => Promise<void>;
|
439
440
|
callLifeCycle: <T extends "onSetup" | "beforeSetValue" | "beforeRequest" | "afterRequest" | "afterOptionInit">(lifeCycleName: T, payload?: Parameters<Required<Partial<{
|
440
441
|
onSetup(): void;
|
441
442
|
beforeSetValue(fieldKey: string, value: unknown, payload: {
|
@@ -750,7 +751,7 @@ export declare const CallbackMaps: Map<string, {
|
|
750
751
|
startIncrementalRender: () => void;
|
751
752
|
onKeydown: (event: KeyboardEvent) => Promise<void>;
|
752
753
|
clearSpan: (uuid: string) => void;
|
753
|
-
exposeEvent: Omit<import("../../../../../components/form-render").FormRenderExpose, "getFieldList" | "optionInited" | "formModel" | "reload">;
|
754
|
+
exposeEvent: Omit<import("../../../../../components/form-render").FormRenderExpose, "updateAnchor" | "getFieldList" | "optionInited" | "formModel" | "reload">;
|
754
755
|
useVersion: typeof import("../../../../../shared/hooks").useVersion;
|
755
756
|
FormConsumer: import("vue").DefineComponent<{}, () => any, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
|
756
757
|
FormProvider: import("vue").DefineComponent<Record<"form", any>, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<Record<"form", any>>>, {
|
@@ -228,6 +228,9 @@ declare const _default: import("vue").DefineComponent<{
|
|
228
228
|
developMode: {
|
229
229
|
type: BooleanConstructor;
|
230
230
|
};
|
231
|
+
columnWidthProps: {
|
232
|
+
type: ObjectConstructor;
|
233
|
+
};
|
231
234
|
}, {
|
232
235
|
fixedWayOptions: {
|
233
236
|
label: string;
|
@@ -319,6 +322,9 @@ declare const _default: import("vue").DefineComponent<{
|
|
319
322
|
developMode: {
|
320
323
|
type: BooleanConstructor;
|
321
324
|
};
|
325
|
+
columnWidthProps: {
|
326
|
+
type: ObjectConstructor;
|
327
|
+
};
|
322
328
|
}>> & {
|
323
329
|
onUpdateChecked?: ((...args: any[]) => any) | undefined;
|
324
330
|
onEdit?: ((...args: any[]) => any) | undefined;
|
@@ -433,6 +439,9 @@ declare const _default: import("vue").DefineComponent<{
|
|
433
439
|
developMode: {
|
434
440
|
type: BooleanConstructor;
|
435
441
|
};
|
442
|
+
columnWidthProps: {
|
443
|
+
type: ObjectConstructor;
|
444
|
+
};
|
436
445
|
}>> & {
|
437
446
|
onUpdateChecked?: ((...args: any[]) => any) | undefined;
|
438
447
|
onEdit?: ((...args: any[]) => any) | undefined;
|
@@ -477,11 +486,11 @@ declare const _default: import("vue").DefineComponent<{
|
|
477
486
|
}>;
|
478
487
|
developMode: boolean;
|
479
488
|
draggable: boolean;
|
480
|
-
|
481
|
-
isFieldSet: boolean;
|
489
|
+
isHighlightRow: boolean;
|
482
490
|
idx: number;
|
483
491
|
isHighlight: boolean;
|
484
|
-
|
492
|
+
isFieldSet: boolean;
|
493
|
+
fieldDescribeMode: "column" | "tooltip";
|
485
494
|
}>;
|
486
495
|
EditDialog: import("vue").DefineComponent<{
|
487
496
|
visible: {
|
@@ -250,6 +250,9 @@ declare const _default: import("vue").DefineComponent<{
|
|
250
250
|
developMode: {
|
251
251
|
type: BooleanConstructor;
|
252
252
|
};
|
253
|
+
columnWidthProps: {
|
254
|
+
type: ObjectConstructor;
|
255
|
+
};
|
253
256
|
}, {
|
254
257
|
fixedWayOptions: {
|
255
258
|
label: string;
|
@@ -341,6 +344,9 @@ declare const _default: import("vue").DefineComponent<{
|
|
341
344
|
developMode: {
|
342
345
|
type: BooleanConstructor;
|
343
346
|
};
|
347
|
+
columnWidthProps: {
|
348
|
+
type: ObjectConstructor;
|
349
|
+
};
|
344
350
|
}>> & {
|
345
351
|
onUpdateChecked?: ((...args: any[]) => any) | undefined;
|
346
352
|
onEdit?: ((...args: any[]) => any) | undefined;
|
@@ -455,6 +461,9 @@ declare const _default: import("vue").DefineComponent<{
|
|
455
461
|
developMode: {
|
456
462
|
type: BooleanConstructor;
|
457
463
|
};
|
464
|
+
columnWidthProps: {
|
465
|
+
type: ObjectConstructor;
|
466
|
+
};
|
458
467
|
}>> & {
|
459
468
|
onUpdateChecked?: ((...args: any[]) => any) | undefined;
|
460
469
|
onEdit?: ((...args: any[]) => any) | undefined;
|
@@ -499,11 +508,11 @@ declare const _default: import("vue").DefineComponent<{
|
|
499
508
|
}>;
|
500
509
|
developMode: boolean;
|
501
510
|
draggable: boolean;
|
502
|
-
|
503
|
-
isFieldSet: boolean;
|
511
|
+
isHighlightRow: boolean;
|
504
512
|
idx: number;
|
505
513
|
isHighlight: boolean;
|
506
|
-
|
514
|
+
isFieldSet: boolean;
|
515
|
+
fieldDescribeMode: "column" | "tooltip";
|
507
516
|
}>;
|
508
517
|
setStyle: typeof setStyle;
|
509
518
|
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("close" | "save" | "reset")[], "close" | "save" | "reset", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
@@ -76,6 +76,9 @@ declare const _default: import("vue").DefineComponent<{
|
|
76
76
|
developMode: {
|
77
77
|
type: BooleanConstructor;
|
78
78
|
};
|
79
|
+
columnWidthProps: {
|
80
|
+
type: ObjectConstructor;
|
81
|
+
};
|
79
82
|
}, {
|
80
83
|
fieldsMapping: Record<string, string>;
|
81
84
|
attrs: {
|
@@ -155,6 +158,9 @@ declare const _default: import("vue").DefineComponent<{
|
|
155
158
|
developMode: {
|
156
159
|
type: BooleanConstructor;
|
157
160
|
};
|
161
|
+
columnWidthProps: {
|
162
|
+
type: ObjectConstructor;
|
163
|
+
};
|
158
164
|
}>> & {
|
159
165
|
onSave?: ((...args: any[]) => any) | undefined;
|
160
166
|
onClose?: ((...args: any[]) => any) | undefined;
|
@@ -202,6 +208,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
202
208
|
isFieldSet: boolean;
|
203
209
|
fieldDescribeMode: "column" | "tooltip";
|
204
210
|
developMode: boolean;
|
211
|
+
columnWidthProps: Record<string, any> | undefined;
|
205
212
|
};
|
206
213
|
searchData: {
|
207
214
|
keyword: string;
|
@@ -381,6 +388,9 @@ declare const _default: import("vue").DefineComponent<{
|
|
381
388
|
developMode: {
|
382
389
|
type: BooleanConstructor;
|
383
390
|
};
|
391
|
+
columnWidthProps: {
|
392
|
+
type: ObjectConstructor;
|
393
|
+
};
|
384
394
|
}, {
|
385
395
|
fixedWayOptions: {
|
386
396
|
label: string;
|
@@ -472,6 +482,9 @@ declare const _default: import("vue").DefineComponent<{
|
|
472
482
|
developMode: {
|
473
483
|
type: BooleanConstructor;
|
474
484
|
};
|
485
|
+
columnWidthProps: {
|
486
|
+
type: ObjectConstructor;
|
487
|
+
};
|
475
488
|
}>> & {
|
476
489
|
onUpdateChecked?: ((...args: any[]) => any) | undefined;
|
477
490
|
onEdit?: ((...args: any[]) => any) | undefined;
|
@@ -586,6 +599,9 @@ declare const _default: import("vue").DefineComponent<{
|
|
586
599
|
developMode: {
|
587
600
|
type: BooleanConstructor;
|
588
601
|
};
|
602
|
+
columnWidthProps: {
|
603
|
+
type: ObjectConstructor;
|
604
|
+
};
|
589
605
|
}>> & {
|
590
606
|
onUpdateChecked?: ((...args: any[]) => any) | undefined;
|
591
607
|
onEdit?: ((...args: any[]) => any) | undefined;
|
@@ -630,11 +646,11 @@ declare const _default: import("vue").DefineComponent<{
|
|
630
646
|
}>;
|
631
647
|
developMode: boolean;
|
632
648
|
draggable: boolean;
|
633
|
-
|
634
|
-
isFieldSet: boolean;
|
649
|
+
isHighlightRow: boolean;
|
635
650
|
idx: number;
|
636
651
|
isHighlight: boolean;
|
637
|
-
|
652
|
+
isFieldSet: boolean;
|
653
|
+
fieldDescribeMode: "column" | "tooltip";
|
638
654
|
}>;
|
639
655
|
isArray: {
|
640
656
|
(value?: any): value is any[];
|
@@ -717,6 +733,9 @@ declare const _default: import("vue").DefineComponent<{
|
|
717
733
|
developMode: {
|
718
734
|
type: BooleanConstructor;
|
719
735
|
};
|
736
|
+
columnWidthProps: {
|
737
|
+
type: ObjectConstructor;
|
738
|
+
};
|
720
739
|
}>> & {
|
721
740
|
onSave?: ((...args: any[]) => any) | undefined;
|
722
741
|
onClose?: ((...args: any[]) => any) | undefined;
|
@@ -746,10 +765,10 @@ declare const _default: import("vue").DefineComponent<{
|
|
746
765
|
showSeq: boolean;
|
747
766
|
developMode: boolean;
|
748
767
|
footerFlag: boolean;
|
768
|
+
fieldDescribeMode: "column" | "tooltip";
|
749
769
|
customColumns: FieldSetColumnItem[];
|
750
770
|
showSearch: boolean;
|
751
771
|
showSortPriority: boolean;
|
752
772
|
showHeadFilter: boolean;
|
753
|
-
fieldDescribeMode: "column" | "tooltip";
|
754
773
|
}>;
|
755
774
|
export default _default;
|
@@ -1 +1 @@
|
|
1
|
-
import{defineComponent as e,useAttrs as l,ref as t,computed as i,reactive as o,watch as d,openBlock as a,createElementBlock as r,createBlock as s,unref as n,withKeys as u,withModifiers as c,createCommentVNode as f,createElementVNode as h,Fragment as p,renderList as m,normalizeStyle as y,withCtx as v,createTextVNode as b,toDisplayString as g,createVNode as k,normalizeClass as x,mergeProps as w,renderSlot as S}from"vue";import{NInput as A,NCheckbox as _,NTooltip as
|
1
|
+
import{defineComponent as e,useAttrs as l,ref as t,computed as i,reactive as o,watch as d,openBlock as a,createElementBlock as r,createBlock as s,unref as n,withKeys as u,withModifiers as c,createCommentVNode as f,createElementVNode as h,Fragment as p,renderList as m,normalizeStyle as y,withCtx as v,createTextVNode as b,toDisplayString as g,createVNode as k,normalizeClass as x,mergeProps as w,renderSlot as S}from"vue";import{NInput as A,NCheckbox as _,NTooltip as W,NIcon as C,NPopconfirm as D,NButton as P}from"naive-ui";import F from"../../../shared/components/VueDraggable/src/vuedraggable.js";import M from"./components/table-row.vue.js";import{isArray as E,cloneDeep as B,isString as H,omit as N}from"lodash-es";import{isDisable as j,setStyle as q,isDraggableItem as V,isDraggable as R,getGroupTree as I}from"./utils/index.js";import{uuidGenerator as O}from"../../../shared/utils/index.js";import{HelpCircleSharp as U}from"@vicons/ionicons5";const T={class:"main-wrapper"},K={class:"main-wrapper__table-header"},G=h("span",null,"数值越小,优先级越高",-1),L=["tabindex"],$={key:1,class:"main-wrapper__table-footer"};var z=e({__name:"FieldSet",props:{fields:{type:Array,default:()=>[]},footerFlag:{type:Boolean,default:!0},type:{type:String,default:"old"},isEdit:{type:Boolean,default:!1},showColumnNames:{type:Array},groupSetting:{type:Object},customColumns:{type:Array,default:()=>[]},showSeq:{type:Boolean,default:!1},showSearch:{type:Boolean,default:!1},showSortPriority:{type:Boolean,default:!1},showHeadFilter:{type:Boolean,default:!1},fieldShowMaxValue:{type:Number},rowDraggable:{type:Boolean,default:!0},fieldDescribeMode:{type:String,default:"tooltip"},developMode:{type:Boolean},columnWidthProps:{type:Object}},emits:["save","close","reset"],setup(e,{expose:z,emit:J}){const Q=e,X={sid:"id",columnName:"name",isShow:"show",isSort:"sort",isFixed:"fixedWay",colWidth:"columnWidth"};l();const Y=t(""),Z=t(),ee=t([]),le=t([{title:"所有字段",type:"text",field:"title"},{title:"显示",type:"checkbox",checkedAll:!1,disabledAll:!!Q.fieldShowMaxValue,field:"show",fieldShowMaxValue:Q.fieldShowMaxValue},{title:"编辑",type:"checkbox",checkedAll:!1,disabledAll:!1,field:"editable"},{title:"必填",type:"checkbox",checkedAll:!1,disabledAll:!1,field:"required"},{title:"排序",type:"checkbox",checkedAll:!1,disabledAll:!1,field:"sort"},{title:"加粗",type:"checkbox",checkedAll:!1,disabledAll:!1,field:"bold"},{title:"默认排序",type:"select",field:"sortDirection"},{title:"排序优先级",type:"select",field:"sortPriority"},{title:"固定",type:"select",field:"fixedWay"},{title:"自定义标题",type:"input",field:"alias"},{title:"列宽",type:"inputNumber",field:"columnWidth"},{title:"表头筛选",type:"checkbox",isHeadCheckHide:!0,field:"isShowHeaderFilter"}]),te=i((()=>ee.value.flat())),ie=i((()=>te.value.some((e=>e.feildDescribe)))),oe=o({columns:le,data:te,onUpdateChecked:function({checked:e,column:l}){const t=!e||he(l.field);l.checkedAll=!t},draggable:Q.rowDraggable,isFieldSet:!0,fieldDescribeMode:Q.fieldDescribeMode,developMode:Q.developMode,columnWidthProps:Q.columnWidthProps}),de={keyword:Y.value,idx:0,startIdx:0},ae=()=>{J("save")},re=()=>{J("close")};function se(){ee.value=ne(),fe(),J("reset")}function ne(){const e=B(Q.fields).map((e=>({...e,uuid:O()})));return Object.keys(X).forEach((l=>{e.forEach((e=>{"old"==Q.type&&Reflect.has(e,l)&&("isFixed"==l?e.fixedWay=1==e[l]?"LEFT":2==e[l]?"RIGHT":"NONE":["isShow","isSort"].includes(l)&&"boolean"!=typeof l?e[X[l]]=1==e[l]:e[X[l]]=e[l],Reflect.deleteProperty(e,l)),e.columnWidth=+e.columnWidth||null,Reflect.has(e,"alias")||(e.alias=""),Reflect.has(e,"bold")||(e.bold=!1),e.draggable=!!R(e)}))})),function(e){if(Q.groupSetting){return I(Q.groupSetting,e).reduce(((t,i)=>{const o=H(i)?e.find((e=>e.name===i)):l(i.children);return o&&t.push(o),t}),[])}return e;function l(t){const i=[];return t.forEach((t=>{if(t.children)i.push(...l(t.children));else{const l=e.find((e=>e.name===t));l&&i.push(l)}})),i}}(e)}function ue(){const e=de.keyword!==Y.value;let l=Y.value?te.value.findIndex(((l,t)=>{var i;if(null==(i=l.title)?void 0:i.includes(Y.value))return!!e||t>de.idx})):0;-1!==l||e||(l=de.startIdx),Z.value.scrollTop=52*l,Object.assign(de,{keyword:Y.value,idx:l},e?{startIdx:l}:{})}function ce(e){var l;return!!Y.value&&(null==(l=e.title)?void 0:l.includes(Y.value))}function fe(){var e,l;(null==(e=Q.showColumnNames)?void 0:e.length)&&(le.value=le.value.filter((e=>{var l,t;return"title"===e.field||(null==(t=null==(l=Q.showColumnNames)?void 0:l.includes)?void 0:t.call(l,e.field))}))),(null==(l=Q.customColumns)?void 0:l.length)&&le.value.push(...Q.customColumns),"column"===Q.fieldDescribeMode&&ie.value&&le.value.push({title:"字段描述",type:"text",field:"feildDescribe"}),Q.showSeq&&le.value.splice(1,0,{title:"排序",type:"text",field:"seq"}),le.value.forEach((e=>{if(e.isShow=function(e){return!(["editable","required"].includes(e.field)&&!Q.isEdit||"sortPriority"===e.field&&!Q.showSortPriority||"isShowHeaderFilter"===e.field&&!Q.showHeadFilter)}(e),"checkbox"===e.type){const l=ee.value.flat().every((l=>!Reflect.has(l,e.field)));e.checkedAll=!he(e.field)&&!l}}))}function he(e){return ee.value.flat().some((l=>!j(l,e)&&!l[e]&&"0001"!=l.id))}function pe(e){return!!V(e.relatedContext.element)}return d([()=>Q.fields,()=>{var e;return null==(e=Q.showColumnNames)?void 0:e.length}],(([e,l])=>{e.length>0&&(ee.value=ne(),fe())}),{immediate:!0,deep:!0}),z({getTableFields:function(){let e=[];return e="old"==Q.type?te.value.map(((e,l)=>({id:e.id,field:e.name,visible:e.show,sequence:l,sortable:e.sort,title:e.alias,fixed:e.fixedWay,minWidth:e.columnWidth,bold:e.bold,sortDirection:e.sortDirection,sortPriority:e.sortPriority,...Q.isEdit?{required:e.required,editable:e.editable}:{}}))):te.value,e.map((e=>N(e,["uuid"])))}}),(l,t)=>(a(),r("div",T,[e.showSearch?(a(),s(n(A),{key:0,class:"main-wrapper__search-wrapper",value:Y.value,"onUpdate:value":t[0]||(t[0]=e=>Y.value=e),valueModifiers:{trim:!0},placeholder:"请输入字段标题",onKeydown:u(c(ue,["prevent"]),["enter"])},null,8,["value","onKeydown"])):f("v-if",!0),h("div",K,[(a(!0),r(p,null,m(le.value,((l,t)=>(a(),r(p,{key:t},[l.isShow?(a(),r("span",{key:0,class:"table-cell",style:y(n(q)(l,t,e.columnWidthProps))},["checkbox"!==l.type||l.isHeadCheckHide?(a(),r(p,{key:1},[b(g(l.title),1)],64)):(a(),s(n(_),{key:0,checked:l.checkedAll,"onUpdate:checked":[e=>l.checkedAll=e,e=>{return t=e,i=l.field,void te.value.forEach((e=>{j(e,i)||(e[i]=t)}));var t,i}],disabled:l.disabledAll},{default:v((()=>[b(g(l.title),1)])),_:2},1032,["checked","onUpdate:checked","disabled"])),"sortPriority"===l.field?(a(),s(n(W),{key:2,trigger:"hover"},{trigger:v((()=>[k(n(C),{component:n(U),style:{top:"2px"}},null,8,["component"])])),default:v((()=>[G])),_:1})):f("v-if",!0)],4)):f("v-if",!0)],64)))),128))]),h("div",{class:"main-wrapper__table-body",ref_key:"tableBodyRef",ref:Z},[k(n(F),{modelValue:ee.value,"onUpdate:modelValue":t[1]||(t[1]=e=>ee.value=e),animation:"150","item-key":"id",filter:".disabled",draggable:".item",move:pe,disabled:!e.rowDraggable},{item:v((({element:e,index:l})=>[e.hide?f("v-if",!0):(a(),r("div",{key:0,class:x(["item",n(V)(e)?"":"disabled"]),tabindex:l},[n(E)(e)?(a(!0),r(p,{key:0},m(e,((e,t)=>(a(),s(M,w(oe,{key:t,element:e,idx:l+1,"is-highlight":ce(e)}),null,16,["element","idx","is-highlight"])))),128)):(a(),s(M,w({key:1},oe,{element:e,idx:l+1,"is-highlight":ce(e)}),null,16,["element","idx","is-highlight"]))],10,L))])),_:1},8,["modelValue","disabled"])],512),e.footerFlag?(a(),r("div",$,[f(" 底部按钮插槽 "),S(l.$slots,"footer",{},(()=>[k(n(D),{onPositiveClick:se},{trigger:v((()=>[k(n(P),{style:{"margin-right":"8px"}},{default:v((()=>[b("恢复默认设置")])),_:1})])),default:v((()=>[b(" 确认要恢复系统默认设置吗? ")])),_:1}),k(n(P),{style:{"margin-right":"8px"},onClick:re},{default:v((()=>[b("取消")])),_:1}),k(n(P),{type:"primary",onClick:ae},{default:v((()=>[b("保存")])),_:1})]))])):f("v-if",!0)]))}});export{z as default};
|
@@ -79,6 +79,9 @@ declare const _default: import("vue").DefineComponent<{
|
|
79
79
|
developMode: {
|
80
80
|
type: BooleanConstructor;
|
81
81
|
};
|
82
|
+
columnWidthProps: {
|
83
|
+
type: ObjectConstructor;
|
84
|
+
};
|
82
85
|
}, {
|
83
86
|
fixedWayOptions: {
|
84
87
|
label: string;
|
@@ -170,6 +173,9 @@ declare const _default: import("vue").DefineComponent<{
|
|
170
173
|
developMode: {
|
171
174
|
type: BooleanConstructor;
|
172
175
|
};
|
176
|
+
columnWidthProps: {
|
177
|
+
type: ObjectConstructor;
|
178
|
+
};
|
173
179
|
}>> & {
|
174
180
|
onUpdateChecked?: ((...args: any[]) => any) | undefined;
|
175
181
|
onEdit?: ((...args: any[]) => any) | undefined;
|
@@ -284,6 +290,9 @@ declare const _default: import("vue").DefineComponent<{
|
|
284
290
|
developMode: {
|
285
291
|
type: BooleanConstructor;
|
286
292
|
};
|
293
|
+
columnWidthProps: {
|
294
|
+
type: ObjectConstructor;
|
295
|
+
};
|
287
296
|
}>> & {
|
288
297
|
onUpdateChecked?: ((...args: any[]) => any) | undefined;
|
289
298
|
onEdit?: ((...args: any[]) => any) | undefined;
|
@@ -328,10 +337,10 @@ declare const _default: import("vue").DefineComponent<{
|
|
328
337
|
}>;
|
329
338
|
developMode: boolean;
|
330
339
|
draggable: boolean;
|
331
|
-
|
332
|
-
isFieldSet: boolean;
|
340
|
+
isHighlightRow: boolean;
|
333
341
|
idx: number;
|
334
342
|
isHighlight: boolean;
|
335
|
-
|
343
|
+
isFieldSet: boolean;
|
344
|
+
fieldDescribeMode: "column" | "tooltip";
|
336
345
|
}>;
|
337
346
|
export default _default;
|