cnhis-design-vue 3.2.8-beta.6 → 3.2.8-beta.7

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.
@@ -322,6 +322,7 @@ declare const ButtonPrint: SFCWithInstall<import("vue").DefineComponent<{
322
322
  customProps: {};
323
323
  outerPrintKeys: never[];
324
324
  defaultFormatId: string;
325
+ shortcut: {};
325
326
  };
326
327
  };
327
328
  }, {
@@ -432,6 +433,7 @@ declare const ButtonPrint: SFCWithInstall<import("vue").DefineComponent<{
432
433
  customProps: {};
433
434
  outerPrintKeys: never[];
434
435
  defaultFormatId: string;
436
+ shortcut: {};
435
437
  };
436
438
  };
437
439
  }>> & {}>>;
@@ -456,6 +458,7 @@ declare const ButtonPrint: SFCWithInstall<import("vue").DefineComponent<{
456
458
  curPrintParamList: never[];
457
459
  ireportExecuteMode: number;
458
460
  };
461
+ shortcutFn: any;
459
462
  options: import("vue").Ref<import("../../shared/types").AnyObject[]>;
460
463
  operations: import("vue").Ref<import("../../shared/types").AnyObject[]>;
461
464
  downlistOperation: {
@@ -479,6 +482,8 @@ declare const ButtonPrint: SFCWithInstall<import("vue").DefineComponent<{
479
482
  printCustomProps: import("vue").ComputedRef<any>;
480
483
  defaultPrintFormatId: import("vue").ComputedRef<any>;
481
484
  isPrintAllType: import("vue").ComputedRef<any>;
485
+ shortcutSettings: import("vue").ComputedRef<any>;
486
+ printAllShortcut: import("vue").ComputedRef<any>;
482
487
  showSettingItems: import("vue").ComputedRef<import("../../shared/types").AnyObject[]>;
483
488
  isSelectedAll: import("vue").WritableComputedRef<boolean>;
484
489
  initShowDownList: () => Promise<void>;
@@ -524,6 +529,7 @@ declare const ButtonPrint: SFCWithInstall<import("vue").DefineComponent<{
524
529
  mergeTemplateList: (list: any[]) => any;
525
530
  initCRM: (formatListResult: any) => Promise<void>;
526
531
  init: () => Promise<boolean>;
532
+ registerShort: () => Promise<void>;
527
533
  handleClickBtn: (visible?: boolean) => Promise<false | undefined>;
528
534
  reformatPrintParams: () => void;
529
535
  verifiySuccess: (token: string) => void;
@@ -816,6 +822,7 @@ declare const ButtonPrint: SFCWithInstall<import("vue").DefineComponent<{
816
822
  customProps: {};
817
823
  outerPrintKeys: never[];
818
824
  defaultFormatId: string;
825
+ shortcut: {};
819
826
  };
820
827
  };
821
828
  }>>, {
@@ -328,6 +328,7 @@ declare const _default: import("vue").DefineComponent<{
328
328
  customProps: {};
329
329
  outerPrintKeys: never[];
330
330
  defaultFormatId: string;
331
+ shortcut: {};
331
332
  };
332
333
  };
333
334
  }, {
@@ -438,6 +439,7 @@ declare const _default: import("vue").DefineComponent<{
438
439
  customProps: {};
439
440
  outerPrintKeys: never[];
440
441
  defaultFormatId: string;
442
+ shortcut: {};
441
443
  };
442
444
  };
443
445
  }>> & {}>>;
@@ -462,6 +464,7 @@ declare const _default: import("vue").DefineComponent<{
462
464
  curPrintParamList: never[];
463
465
  ireportExecuteMode: number;
464
466
  };
467
+ shortcutFn: any;
465
468
  options: import("vue").Ref<AnyObject[]>;
466
469
  operations: import("vue").Ref<AnyObject[]>;
467
470
  downlistOperation: {
@@ -485,6 +488,8 @@ declare const _default: import("vue").DefineComponent<{
485
488
  printCustomProps: import("vue").ComputedRef<any>;
486
489
  defaultPrintFormatId: import("vue").ComputedRef<any>;
487
490
  isPrintAllType: import("vue").ComputedRef<any>;
491
+ shortcutSettings: import("vue").ComputedRef<any>;
492
+ printAllShortcut: import("vue").ComputedRef<any>;
488
493
  showSettingItems: import("vue").ComputedRef<AnyObject[]>;
489
494
  isSelectedAll: import("vue").WritableComputedRef<boolean>;
490
495
  initShowDownList: () => Promise<void>;
@@ -530,6 +535,7 @@ declare const _default: import("vue").DefineComponent<{
530
535
  mergeTemplateList: (list: any[]) => any;
531
536
  initCRM: (formatListResult: any) => Promise<void>;
532
537
  init: () => Promise<boolean>;
538
+ registerShort: () => Promise<void>;
533
539
  handleClickBtn: (visible?: boolean) => Promise<false | undefined>;
534
540
  reformatPrintParams: () => void;
535
541
  verifiySuccess: (token: string) => void;
@@ -822,6 +828,7 @@ declare const _default: import("vue").DefineComponent<{
822
828
  customProps: {};
823
829
  outerPrintKeys: never[];
824
830
  defaultFormatId: string;
831
+ shortcut: {};
825
832
  };
826
833
  };
827
834
  }>>, {
@@ -103,6 +103,7 @@ declare const _default: import("vue").DefineComponent<{
103
103
  customProps: {};
104
104
  outerPrintKeys: never[];
105
105
  defaultFormatId: string;
106
+ shortcut: {};
106
107
  };
107
108
  };
108
109
  }, {
@@ -216,6 +217,7 @@ declare const _default: import("vue").DefineComponent<{
216
217
  customProps: {};
217
218
  outerPrintKeys: never[];
218
219
  defaultFormatId: string;
220
+ shortcut: {};
219
221
  };
220
222
  };
221
223
  }>> & {}>>;
@@ -240,6 +242,7 @@ declare const _default: import("vue").DefineComponent<{
240
242
  curPrintParamList: never[];
241
243
  ireportExecuteMode: number;
242
244
  };
245
+ shortcutFn: any;
243
246
  options: import("vue").Ref<AnyObject[]>;
244
247
  operations: import("vue").Ref<AnyObject[]>;
245
248
  downlistOperation: {
@@ -263,6 +266,8 @@ declare const _default: import("vue").DefineComponent<{
263
266
  printCustomProps: import("vue").ComputedRef<any>;
264
267
  defaultPrintFormatId: import("vue").ComputedRef<any>;
265
268
  isPrintAllType: import("vue").ComputedRef<any>;
269
+ shortcutSettings: import("vue").ComputedRef<any>;
270
+ printAllShortcut: import("vue").ComputedRef<any>;
266
271
  showSettingItems: import("vue").ComputedRef<AnyObject[]>;
267
272
  isSelectedAll: import("vue").WritableComputedRef<boolean>;
268
273
  initShowDownList: () => Promise<void>;
@@ -308,6 +313,7 @@ declare const _default: import("vue").DefineComponent<{
308
313
  mergeTemplateList: (list: any[]) => any;
309
314
  initCRM: (formatListResult: any) => Promise<void>;
310
315
  init: () => Promise<boolean>;
316
+ registerShort: () => Promise<void>;
311
317
  handleClickBtn: (visible?: boolean) => Promise<false | undefined>;
312
318
  reformatPrintParams: () => void;
313
319
  verifiySuccess: (token: string) => void;
@@ -603,6 +609,7 @@ declare const _default: import("vue").DefineComponent<{
603
609
  customProps: {};
604
610
  outerPrintKeys: never[];
605
611
  defaultFormatId: string;
612
+ shortcut: {};
606
613
  };
607
614
  };
608
615
  }>>, {
@@ -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"},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};
1
+ import{defineComponent as e,inject as t,ref as n,reactive as r,computed as i,onMounted as a,onBeforeUnmount as l,watch as o,openBlock as s,createElementBlock as u,Fragment as c,createElementVNode as d,createCommentVNode as p,createVNode as m,unref as v,withCtx as f,renderList as y,createBlock as g,normalizeClass as h,createTextVNode as k,toDisplayString as b,isRef as P,renderSlot as w,withModifiers as S,mergeProps as O}from"vue";import{isObject as C}from"@vue/shared";import{useMessage as I,NButtonGroup as L,NDropdown as T,NButton as j,NIcon as M,NPopover as F,NCheckbox as E,NDivider as x}from"naive-ui";import{PrintOutline as N,SettingsOutline as _,ChevronDownSharp as D,ArrowForwardOutline as J}from"@vicons/ionicons5";import{InjectionButtonPrintEmits as z}from"../constants/index.js";import{Print as A}from"../utils/print.js";import{isIReport as U}from"../utils/browserPrint.js";import V from"./IdentityVerification.vue.js";import{format as B}from"date-fns";import"../api.js";import"../../../shortcut-provider/index.js";import{useShortcuts as K}from"../../../shortcut-provider/src/hooks/useShortcuts.js";const R={class:"newprint-button-outer"},G={key:0,class:"newprint-button-outer__shortcut"},q=d("span",{class:"label bold"},"外显设置",-1),Y={class:"newprint-button-poperOver"},H={class:"print-lite"},$={class:"label bold"},Q={class:"print-li"},W={class:"print-lite"},X={key:0,class:"newprint-button-outer__shortcut"},Z={class:"newprint-button-poperOver"},ee=["onMouseenter","onClick"],te={class:"label bold"},ne={class:"newprint-button-poperOver"},re={class:"print-lite"},ie={class:"label bold"},ae={class:"print-li"},le={class:"print-lite"},oe=["onClick"],se={key:0,class:"newprint-button-outer__shortcut"},ue={class:"newprint-button-poperOver"},ce=["onMouseenter"],de={class:"print-lite"},pe=["onClick"];var me=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:"",shortcut:{}})}},setup(e,{expose:me}){const ve=e,fe=[{label:"分割线",key:"divider"},{label:"外显设置",key:"outSetting"}],ye=I();let ge;const he=t(z),ke=n(""),be=r({spinning:!1,visible:!1,formatList:[],templateParams:[],printParams:[],originParams:{},currentFormatId:"",identityVerification:{visible:!1},isInited:!1,watchPrintParamsReformatFn:null,spinTimer:null,isClickOuterPrint:!1,curPrintParamList:[],ireportExecuteMode:1}),Pe=n({});let we=n([]),Se=n([{label:ve.previewText,key:"previewText"},{label:ve.pdfLoadText,key:"downloadPdf"},{label:ve.formatEditText,key:"formatEditText"},{label:"重置打印机",key:"resetPrinter"}]);const Oe=r({oneMouseType:"",oneClickType:"",twoMouseType:""}),Ce=r({oneShow:!1,isOperation:!1,isOutSetting:!1}),Ie=n([]),Le=n([]),Te=i((()=>{if(!be.currentFormatId)return{};let e=be.currentFormatId;return be.formatList.find((t=>t.id===e))}));i((()=>{var e;return(null==(e=Te.value)?void 0:e.name)||"格式选择"}));const je=i((()=>{let e=be.formatList.find((e=>e.id===be.currentFormatId));return null==e?void 0:e.templateId})),Me=i((()=>{let e=be.formatList.find((e=>e.id===be.currentFormatId));return null==e?void 0:e.number})),Fe=i((()=>{var e;return null==(e=ve.newPrintSetting)?void 0:e.isShowPrintAll})),Ee=i((()=>{var e;return null==(e=ve.newPrintSetting)?void 0:e.isShowOutSetting})),xe=i((()=>{var e;return(null==(e=ve.newPrintSetting)?void 0:e.customProps)||{}})),Ne=i((()=>{var e;return(null==(e=ve.newPrintSetting)?void 0:e.defaultFormatId)||""})),_e=i((()=>{var e;return(null==(e=ve.newPrintSetting)?void 0:e.printAllType)||1})),De=i((()=>{var e;return(null==(e=ve.newPrintSetting)?void 0:e.shortcut)||{}})),Je=i((()=>{var e,t;const n=Object.keys(De.value);if(n.length>0){if(Ne.value&&n.includes(Ne.value))return(null==(e=De.value[Ne.value])?void 0:e.shortcutLabel)||"";if(n.includes("all"))return(null==(t=De.value.all)?void 0:t.shortcutLabel)||""}return""})),ze=i((()=>{const e=fe.map((e=>e.key));return we.value.filter((t=>!e.includes(t.key)))})),Ae=i({get:()=>ze.value.every((e=>e.selected)),set(e){ze.value.forEach((t=>{t.selected=e}))}}),Ue=async()=>{var e,t;(null==(t=null==(e=ve.newPrintSetting)?void 0:e.outerPrintKeys)?void 0:t.length)||await mt(),Ce.oneShow=!0},Ve=async e=>{if(ve.directPrint){if(be.spinning)return;return"button"===e?void(Fe.value?await yt():Ne.value?async function(e){await mt(!1);const t=Ie.value.find((t=>t.key==e));t&&et(t.templateCode,t.templateId,t.key,!1)}(Ne.value):Ue()):Ue()}return Ue()},Be=(e,t)=>{Oe[e]=t},Ke=()=>{Ie.value=we.value.filter((e=>!e.selected)),Le.value=ze.value.filter((e=>e.selected)),Ge("oneShow"),Ge("isOutSetting"),he("saveOuterPrint",Le.value)},Re=e=>{Ce[e]=!0},Ge=e=>{Oe.oneClickType="",Ce[e]=!1,"isOutSetting"==e&&(Ce.isOutSetting=!1)},qe=(e,t)=>{Xe(!1);let n={type:t,formatId:be.currentFormatId,templateId:(null==e?void 0:e.templateId)||je.value,templateCode:(null==e?void 0:e.templateCode)||Me.value};he("success",e,n)},Ye=e=>{Xe(!1),he("error",e),C(e)&&"notInstalledApp"===e.type&&ye.error(e.message)},He=e=>{Xe(!1),he("cancel",e)},$e=e=>{he("error",{message:"前置条件执行错误",type:e,preExecution:!0})},Qe=()=>JSON.stringify({...ve.token?{token:ve.token}:{}}),We=(e=[],t)=>{var n,r;let i={},a={};if((null==(n=be.templateParams[t].customizeDataset)?void 0:n.length)>0){const t=(null==(r=Object.keys(e[0].datasetData||{}))?void 0:r[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 i=Object.assign({},JSON.parse(Qe()),xe.value,a),JSON.stringify(i)},Xe=(e,t)=>{if(be.isClickOuterPrint){if(e&&t){const n=Le.value.find((e=>e.key==t));return void(n&&(n.isLoading=e))}Le.value.forEach((e=>{e.isLoading=!1}))}else be.spinning=e},Ze=()=>be.isClickOuterPrint?Le.value.some((e=>e.isLoading)):be.spinning,et=(e,t,n,r)=>{const i=be.printParams[e];if(!i)return;be.isClickOuterPrint=r,be.currentFormatId=n;const a=be.originParams[e]||[];tt(i,e,t,n,a)},tt=async(e=[],t,n,r,i=[],a)=>{let l=e.length;const o=async e=>{try{--l<=0&&qe(e,"print")}catch(e){console.log("error",e)}};ve.showLoading&&Ze()&&!a||(Xe(!0,r),ve.prevFn("print").then((()=>{be.curPrintParamList=e;const a={formatId:r,ireportExecuteMode:be.ireportExecuteMode,templateId:n,authorizationKey:ke.value,printdlgshow:ve.printdlgshow,signature:ve.signature,copies:ve.printCopies};if("MULTI"===ve.strategy)for(let t=0;t<e.length;t++){t>0&&(a.printdlgshow="0");const n=JSON.stringify(Object.assign({},JSON.parse(Qe()),xe.value,e[t]));ge.printDirect({...a,params:n},o,Ye,He)}else ge.printDirect({...a,params:We(e,t)},(e=>{e.params=i,e.templateCode=t,e.templateId=n,qe(e,"print")}),Ye,He)})).catch((()=>{$e("print"),Xe(!1)})).finally((()=>{be.visible=!1})))},nt=async(e,{templateCode:t,templateId:n,key:r},i)=>{const a=be.printParams[t];if(a)switch(be.isClickOuterPrint=i,be.currentFormatId=r,e){case"previewText":(async(e=[],t,n,r)=>{ve.showLoading&&Ze()||(Xe(!0,r),ve.prevFn("preview").then((()=>{be.curPrintParamList=e;const i=JSON.stringify(Object.assign({},JSON.parse(Qe()),xe.value,e[0])),a="MULTI"===ve.strategy?i:We(e,t),l={formatId:r,templateId:n,ireportExecuteMode:be.ireportExecuteMode,authorizationKey:ke.value,params:a,btnprint:ve.btnprint,signature:ve.signature};ge.preview(l,(e=>{qe(e,"preview")}),Ye)})).catch((()=>{$e("preview"),Xe(!1)})).finally((()=>{be.visible=!1})))})(a,t,n,r);break;case"formatEditText":((e=[],t,n,r)=>{ve.showLoading&&Ze()||(Xe(!0,r),ve.prevFn("edit").then((()=>{be.curPrintParamList=e,be.currentFormatId=r,be.identityVerification.visible=!0})).catch((()=>{$e("edit")})).finally((()=>{Xe(!1)})))})(a,0,0,r);break;case"downloadPdf":(async(e=[],t,n,r)=>{ve.showLoading&&Ze()||(Xe(!0,r),ve.prevFn("download").then((()=>{be.curPrintParamList=e;const i=JSON.stringify(Object.assign({},JSON.parse(Qe()),xe.value,e[0])),a="MULTI"===ve.strategy?i:We(e,t),l={formatId:r,templateId:n,ireportExecuteMode:be.ireportExecuteMode,authorizationKey:ke.value,print:{print:"1",type:"1"},params:a,signature:ve.signature};ge.downloadPDF(l,(e=>qe(e,"preview")),Ye)})).catch((()=>{$e("download"),Xe(!1)})).finally((()=>{be.visible=!1})))})(a,t,n,r);break;case"resetPrinter":(async(e=[],t,n,r)=>{if(!ve.showLoading||!Ze()){Xe(!0,r);try{const e=await ge.resetPrinter(r);if(Xe(!1),"success"==(null==e?void 0:e.result))return void ye.success(e.message||"重置打印机成功");ye.warning("重置打印机失败")}catch(e){Xe(!1),ye.warning((null==e?void 0:e.message)||"重置打印机失败")}}})(a,0,0,r)}},rt=()=>{},it=(e,t=[])=>{let n={};return(t=t||[]).forEach((t=>{n=Object.assign({},st(n,t,e))})),n},at=(e,t=[])=>{let n={};return(t=t||[]).forEach((t=>{n=Object.assign({},ut(n,t,e))})),n},lt=(e,t,n)=>{const r={};return t.forEach((t=>{let i=((e,t)=>{const n={DATE:"yyyy-MM-dd",DATETIME:"yyyy-MM-dd HH:mm:ss"};let r=t;return Object.keys(n).includes(e.type)&&t&&t instanceof Date&&(r=B(t,n[e.type])),(null==e?void 0:e.defaultValue)||r})(t,e[t[n]]);e[t[n]]&&i&&(r[t[n]]=i)})),r},ot=({customizeDataset:e=[],param:t=[]},n={})=>{let r={};return e.forEach((e=>{const t=e.dataSetting[0].selectFieldList;r.datasetData||(r.datasetData={}),r.datasetData[e.name]=JSON.stringify(lt(n,t,"fieldName"))})),r=Object.assign({},r,lt(n,t,"key")),r},st=(e,t,n)=>{if(t.templateNumbers){for(let r=0;r<t.templateNumbers.length;r++){const i=t.templateNumbers[r],a=n[i];if(!a)return ye.error("当前勾选的数据没有匹配的模板"),e;e[i]||(e[i]=[]),e[i].push(ot(a,t))}return e}const r=Object.keys(n);for(let i=0;i<r.length;i++){const a=r[i],l=n[a];if(!l)return ye.error("当前勾选的数据没有匹配的模板"),e;e[a]||(e[a]=[]),e[a].push(ot(l,t))}return e},ut=(e,t,n)=>{if(t.templateNumbers){for(let r=0;r<t.templateNumbers.length;r++){const i=t.templateNumbers[r];if(!n[i])return ye.error("当前勾选的数据没有匹配的模板"),e;e[i]||(e[i]=[]),e[i].push(t)}return e}const r=Object.keys(n);for(let i=0;i<r.length;i++){const a=r[i];if(!n[a])return ye.error("当前勾选的数据没有匹配的模板"),e;e[a]||(e[a]=[]),e[a].push(t)}return e},ct=async e=>{var t;be.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):[],be.ireportExecuteMode=(null==(t=null==e?void 0:e.obj)?void 0:t.length)>0&&e.obj[0].ireportExecuteMode||1,(()=>{var e,t,n;const r=Object.keys(De.value),i=be.formatList.map((e=>{const t={templateCode:e.number,templateId:e.templateId,label:e.name,key:e.id,selected:!1,isLoading:!1};if(r.includes(e.id)){const n=De.value[e.id];n&&(t.shortcutLabel=n.shortcutLabel)}return t}));we.value.unshift(...i),Ee.value&&we.value.push(...fe),(null==(t=null==(e=ve.newPrintSetting)?void 0:e.outerPrintKeys)?void 0:t.length)>0&&(we.value.forEach((e=>{var t;(null==(t=ve.newPrintSetting)?void 0:t.outerPrintKeys.includes(e.key))&&(e.selected=!0)})),Le.value=we.value.filter((e=>e.selected))),Ie.value=we.value.filter((e=>!e.selected)),ve.hideButtons.length>0&&(Se.value=Se.value.filter((e=>!ve.hideButtons.includes(e.key))));const a=sessionStorage.getItem("portal");if(a){const e=JSON.parse(a),t=(null==(n=null==e?void 0:e.user)?void 0:n.currentRoleResourceObj)||{},r=Object.keys(t);r.includes("RY7.2.21.1.M2.G94181E")||(Se.value=Se.value.filter((e=>"downloadPdf"!=e.key))),r.includes("RY7.2.21.1.M2.G33633A")||(Se.value=Se.value.filter((e=>"formatEditText"!=e.key))),r.includes("RY7.2.21.1.M2.G99314S")||(Se.value=Se.value.filter((e=>"resetPrinter"!=e.key)))}})(),be.templateParams=(e=>{let t={};return e&&e.forEach((e=>{if(!e.templateConfig)return!1;t[e.number]=e.templateConfig})),t})(e.obj),be.printParams=it(be.templateParams,ve.params),be.originParams=at(be.templateParams,ve.params),pt()},dt=async()=>{var e;if(be.isInited)return!0;be.isInited=!0,be.spinning=!0,(()=>{if(ge)return!1;ge=new A})();const t=await ve.queryPrintFormatByNumber();return await ct(t),(null==(e=t.obj)?void 0:e.length)>0&&(ke.value=t.obj[0].authorizationKey||""),be.spinning=!1,!0},pt=async()=>{const e=Object.keys(De.value);if(e.length>0)for(let t=0;t<e.length;t++){const n=e[t],r=De.value[n],{stop:i,signature:a}=K().register({label:r.code,shortcutSignature:r.shortcutKey,operation:["state","reset"],callback(){"all"==n&&Ve("button");const e=ze.value.map((e=>e.key)),t=be.originParams;if(e.includes(n)){const e=ze.value.find((e=>e.key==n));if(e){const n=be.printParams[null==e?void 0:e.templateCode],r=t[null==e?void 0:e.templateCode]||[];tt(n,e.templateCode,e.templateId,e.key,r)}}}});Pe.value[n]=i}},mt=async(e=!0)=>{if(await ve.clickPrevFn()){if(!be.visible){if(!await dt())return!1}e&&(be.visible=!be.visible)}},vt=e=>{if(be.identityVerification.visible=!1,U(be.currentFormatId))return qe(null,"edit");const t=JSON.stringify(Object.assign({},JSON.parse(Qe()),xe.value,be.curPrintParamList[0])),n="MULTI"===ve.strategy?t:We(be.curPrintParamList,Me.value),r={formatId:be.currentFormatId,templateId:je.value,params:n,token:e};ge.editPrintFormat(r,(e=>{qe(e,"edit")}),Ye)},ft=(e,t)=>{const n=Le.value[t+1];return t<Le.value.length-1&&!be.printParams[e.templateCode]&&be.printParams[n.templateCode]};async function yt(){await mt(!1),(()=>{const e=Object.keys(be.printParams);be.isClickOuterPrint=!1;const t=be.originParams;if(1==_e.value)for(let n=0;n<e.length;n++){const r=e[n],i=be.printParams[r],a=t[r]||[],l=be.formatList.filter((e=>e.number==r));l&&l.length>0&&l.forEach((e=>{be.currentFormatId=e.id,tt(i,e.number,e.templateId,e.id,a,!0)}))}2==_e.value&&Le.value.forEach((e=>{const n=be.printParams[e.templateCode],r=t[e.templateCode]||[];be.currentFormatId=e.key,tt(n,e.templateCode,e.templateId,e.key,r,!0)}))})()}return a((()=>{be.isInited=!1,mt()})),l((()=>{const e=Object.keys(Pe.value);e.length>0&&e.forEach((e=>{Pe.value[e]&&Pe.value[e]()}))})),o((()=>ve.params),(e=>{Object.keys(be.templateParams).length>0&&(be.printParams=it(be.templateParams,ve.params),be.originParams=at(be.templateParams,ve.params))}),{deep:!0}),o((()=>{var e;return null==(e=ve.newPrintSetting)?void 0:e.outerPrintKeys}),(async e=>{(null==e?void 0:e.length)>0&&await mt(!1)}),{deep:!0,immediate:!0}),me({directPrint:yt}),(t,n)=>(s(),u(c,null,[d("div",R,[p(" 外显按钮集合 "),m(v(L),{class:"outButtonGroup"},{default:f((()=>[(s(!0),u(c,null,y(Le.value,((t,n)=>{return s(),g(v(T),{key:t.key,class:"c-dropdown",placement:"bottom-start",trigger:"hover",onClickoutside:rt,options:(r=v(Se),i=t,be.printParams[i.templateCode]?r:[]),onSelect:e=>nt(e,t,!0)},{default:f((()=>[m(v(j),{disabled:!be.printParams[t.templateCode],loading:e.showLoading&&t.isLoading,onClick:e=>et(t.templateCode,t.templateId,t.key,!0),class:h(n==Le.value.length-1?"outerLastButton":ft(t,n)?"isPrintDisabled":"")},{icon:f((()=>[m(v(M),{component:v(N),size:"18"},null,8,["component"])])),default:f((()=>[k(" "+b(t.label)+" ",1),t.shortcutLabel?(s(),u("span",G,b(t.shortcutLabel),1)):p("v-if",!0)])),_:2},1032,["disabled","loading","onClick","class"])])),_:2},1032,["options","onSelect"]);var r,i})),128))])),_:1}),p(" 外显设置按钮 "),Le.value.length>0&&Le.value.length==v(ze).length&&v(Ee)&&2!=v(_e)?(s(),g(v(F),{key:0,trigger:"click","show-arrow":!1,show:Ce.isOutSetting,onClickoutside:n[2]||(n[2]=e=>Ge("isOutSetting"))},{trigger:f((()=>[m(v(j),{class:h(Le.value.length>0?"printAllLeftCls":""),onClick:n[0]||(n[0]=e=>Re("isOutSetting"))},{default:f((()=>[q,m(v(M),{style:{"margin-left":"8px"},component:v(_),size:"18"},null,8,["component"])])),_:1},8,["class"])])),default:f((()=>[d("div",Y,[(s(!0),u(c,null,y(v(ze),(e=>(s(),u("div",{class:"print-li",key:e.key},[d("div",H,[d("span",$,b(e.label),1),m(v(E),{checked:e.selected,"onUpdate:checked":t=>e.selected=t},{default:f((()=>[k("外显")])),_:2},1032,["checked","onUpdate:checked"])])])))),128)),d("div",Q,[m(v(x)),d("div",W,[m(v(j),{type:"primary",size:"small",onClick:Ke},{default:f((()=>[k("保存")])),_:1}),v(ze)&&v(ze).length>1?(s(),g(v(E),{key:0,checked:v(Ae),"onUpdate:checked":n[1]||(n[1]=e=>P(Ae)?Ae.value=e:null)},{default:f((()=>[k("全选")])),_:1},8,["checked"])):p("v-if",!0)])])])])),_:1},8,["show"])):(s(),u(c,{key:1},[p(" 打印全部按钮 "),m(v(F),{trigger:"click","show-arrow":!1,show:Ce.oneShow,onClickoutside:n[10]||(n[10]=e=>Ge("oneShow"))},{trigger:f((()=>[w(t.$slots,"button",{handleClickPrintBtn:mt,printSpinning:be.spinning,printbtnText:e.btnText,printVisible:be.visible},(()=>[m(v(L),{class:"newprint-button-component",onClick:n[4]||(n[4]=S((()=>Ve("icon")),["stop"]))},{default:f((()=>[m(v(j),{loading:e.showLoading&&be.spinning,onClick:n[3]||(n[3]=S((()=>Ve("button")),["stop"])),class:h(Le.value.length>0?"printAllLeftCls":"")},{icon:f((()=>[m(v(M),{component:v(N),size:"18"},null,8,["component"])])),default:f((()=>[k(" "+b(v(Fe)?"打印全部":e.btnText)+" ",1),v(Je)?(s(),u("span",X,b(v(Je)),1)):p("v-if",!0)])),_:1},8,["loading","class"]),m(v(j),{class:"icon-select"},{icon:f((()=>[m(v(M),{component:v(D),size:"18"},null,8,["component"])])),_:1})])),_:1})]))])),default:f((()=>[d("div",Z,[(s(!0),u(c,null,y(Ie.value,(e=>(s(),u("div",{class:h(["print-li",Oe.oneMouseType==e.key||Oe.oneClickType==e.key?"active":""]),key:e.key,onMouseenter:t=>Be("oneMouseType",e.key),onMouseleave:n[9]||(n[9]=e=>Be("oneMouseType","")),onClick:t=>((e,t,n)=>{if(!be.printParams[n.templateCode])return[];Be(e,t)})("oneClickType",e.key,e)},["divider"==e.key?(s(),g(v(x),{key:0})):"outSetting"==e.key?(s(),u(c,{key:1},[p(" 第二层外显设置 "),m(v(F),{trigger:"click","show-arrow":!1,placement:"right-start",show:Ce.isOutSetting,onClickoutside:n[7]||(n[7]=e=>Ge("isOutSetting"))},{trigger:f((()=>[d("div",{class:"print-lite",onClick:n[5]||(n[5]=e=>Re("isOutSetting"))},[d("span",te,b(e.label),1),m(v(M),{color:Le.value.length>0?"#2563F4":"",component:v(_),size:"18"},null,8,["color","component"])])])),default:f((()=>[d("div",ne,[(s(!0),u(c,null,y(v(ze),(e=>(s(),u("div",{class:"print-li",key:e.key},[d("div",re,[d("span",ie,b(e.label),1),m(v(E),{checked:e.selected,"onUpdate:checked":t=>e.selected=t},{default:f((()=>[k("外显")])),_:2},1032,["checked","onUpdate:checked"])])])))),128)),d("div",ae,[m(v(x)),d("div",le,[m(v(j),{type:"primary",size:"small",onClick:Ke},{default:f((()=>[k("保存")])),_:1}),v(ze)&&v(ze).length>1?(s(),g(v(E),{key:0,checked:v(Ae),"onUpdate:checked":n[6]||(n[6]=e=>P(Ae)?Ae.value=e:null)},{default:f((()=>[k("全选")])),_:1},8,["checked"])):p("v-if",!0)])])])])),_:2},1032,["show"])],2112)):(s(),u(c,{key:2},[p(" 第二层功能操作 "),d("div",{class:h(["print-lite",be.printParams[e.templateCode]?"":"isDisabled"])},[d("span",{class:"label bold",onClick:t=>et(e.templateCode,e.templateId,e.key,!1)},[k(b(e.label)+" ",1),e.shortcutLabel?(s(),u("span",se,b(e.shortcutLabel),1)):p("v-if",!0)],8,oe),be.printParams[e.templateCode]?(s(),g(v(F),{key:0,trigger:"click","show-arrow":!1,placement:"right-start",show:Ce[e.key],onClickoutside:t=>Ge(e.key)},{trigger:f((()=>[m(v(M),{component:v(J),size:"18",onClick:t=>Re(e.key)},null,8,["component","onClick"])])),default:f((()=>[d("div",ue,[(s(!0),u(c,null,y(v(Se),(t=>(s(),u("div",{class:h(["print-li",Oe.twoMouseType==t.key?"active":""]),key:t.key,onMouseenter:e=>Be("twoMouseType",t.key),onMouseleave:n[8]||(n[8]=e=>Be("twoMouseType",""))},[d("div",de,[d("span",{class:"label",onClick:n=>nt(t.key,e,!1)},b(t.label),9,pe)])],42,ce)))),128))])])),_:2},1032,["show","onClickoutside"])):p("v-if",!0)],2)],2112))],42,ee)))),128))])])),_:3},8,["show"])],2112))]),m(V,O(t.$attrs,{modelValue:be.identityVerification.visible,"onUpdate:modelValue":n[11]||(n[11]=e=>be.identityVerification.visible=e),formatId:be.currentFormatId,templateId:v(je),onSuccess:vt}),null,16,["modelValue","formatId","templateId"])],64))}});export{me as default};
@@ -1 +1 @@
1
- .dropdown-button{border-color:#d5d5d5!important;color:#212121;padding-right:0}.dropdown-button .n-button__content{height:100%}.dropdown-button .n-button__content .n-icon{align-items:center;display:flex;height:100%;justify-content:center;padding-right:10px;width:30px}.c-dropdown .n-dropdown-menu-wrapper span.active{color:#5585f5}.login-form-button{border-radius:24px;color:#fff;font-size:16px;height:50px;width:100%}.login-form-button-print{padding-top:15px}.login-form-button-print .n-input{border-radius:6px;color:#757575;font-size:14px;height:50px;line-height:50px}.c-button-print-modal .n-form-item-feedback-wrapper{display:none}.c-button-preview-modal{max-width:none!important}.c-button-preview-modal .n-dialog__content{height:98%}.newprint-button-component .icon-select{padding:0 8px!important}.newprint-button-poperOver{border-radius:3px}.newprint-button-poperOver .bold{font-weight:700}.newprint-button-poperOver .isDisabled{color:#999;cursor:default}.newprint-button-poperOver .print-li{overflow:hidden}.newprint-button-poperOver .print-li .n-divider{margin-bottom:6px;margin-top:6px}.newprint-button-poperOver .print-li .print-lite{align-items:center;border-radius:3px;cursor:pointer;display:flex;height:32px;justify-content:space-between;margin:3px 0}.newprint-button-poperOver .print-li .print-lite .label{padding:0 8px;white-space:nowrap}.newprint-button-poperOver .print-li .print-lite .n-icon{align-items:center;border-radius:0 3px 3px 0;display:flex;height:100%;justify-content:center;width:30px}.newprint-button-poperOver .print-li .print-lite .n-checkbox{white-space:nowrap}.newprint-button-poperOver .print-li.active{color:#2563f4}.newprint-button-poperOver .print-li.active .print-lite{background:rgba(37,99,244,.1)}.newprint-button-poperOver .print-li.active .n-icon{background:rgba(37,99,244,.15)}.newprint-button-outer{align-items:center;display:flex}.newprint-button-outer .outButtonGroup .isPrintDisabled .n-button__border{border-right-width:0!important}.newprint-button-outer .outButtonGroup .n-button.n-button--disabled+.n-button.n-button--default-type:not(.n-button--disabled) .n-button__border{border-left-width:1px!important}.newprint-button-outer .outerLastButton .n-button__border{border-bottom-right-radius:0;border-right:none;border-top-right-radius:0}.newprint-button-outer .outerLastButton:hover .n-button__state-border{border-bottom-right-radius:0;border-top-right-radius:0}.newprint-button-outer .printAllLeftCls .n-button__border,.newprint-button-outer .printAllLeftCls:hover .n-button__state-border{border-bottom-left-radius:0;border-top-left-radius:0}
1
+ .dropdown-button{border-color:#d5d5d5!important;color:#212121;padding-right:0}.dropdown-button .n-button__content{height:100%}.dropdown-button .n-button__content .n-icon{align-items:center;display:flex;height:100%;justify-content:center;padding-right:10px;width:30px}.c-dropdown .n-dropdown-menu-wrapper span.active{color:#5585f5}.login-form-button{border-radius:24px;color:#fff;font-size:16px;height:50px;width:100%}.login-form-button-print{padding-top:15px}.login-form-button-print .n-input{border-radius:6px;color:#757575;font-size:14px;height:50px;line-height:50px}.c-button-print-modal .n-form-item-feedback-wrapper{display:none}.c-button-preview-modal{max-width:none!important}.c-button-preview-modal .n-dialog__content{height:98%}.newprint-button-component .icon-select{padding:0 8px!important}.newprint-button-poperOver{border-radius:3px}.newprint-button-poperOver .bold{font-weight:700}.newprint-button-poperOver .isDisabled{color:#999;cursor:default}.newprint-button-poperOver .print-li{overflow:hidden}.newprint-button-poperOver .print-li .n-divider{margin-bottom:6px;margin-top:6px}.newprint-button-poperOver .print-li .print-lite{align-items:center;border-radius:3px;cursor:pointer;display:flex;height:32px;justify-content:space-between;margin:3px 0}.newprint-button-poperOver .print-li .print-lite .label{padding:0 8px;white-space:nowrap}.newprint-button-poperOver .print-li .print-lite .n-icon{align-items:center;border-radius:0 3px 3px 0;display:flex;height:100%;justify-content:center;width:30px}.newprint-button-poperOver .print-li .print-lite .n-checkbox{white-space:nowrap}.newprint-button-poperOver .print-li.active{color:#2563f4}.newprint-button-poperOver .print-li.active .print-lite{background:rgba(37,99,244,.1)}.newprint-button-poperOver .print-li.active .n-icon{background:rgba(37,99,244,.15)}.newprint-button-outer{align-items:center;display:flex}.newprint-button-outer .outButtonGroup .isPrintDisabled .n-button__border{border-right-width:0!important}.newprint-button-outer .outButtonGroup .n-button.n-button--disabled+.n-button.n-button--default-type:not(.n-button--disabled) .n-button__border{border-left-width:1px!important}.newprint-button-outer .outerLastButton .n-button__border{border-bottom-right-radius:0;border-right:none;border-top-right-radius:0}.newprint-button-outer .outerLastButton:hover .n-button__state-border{border-bottom-right-radius:0;border-top-right-radius:0}.newprint-button-outer .printAllLeftCls .n-button__border,.newprint-button-outer .printAllLeftCls:hover .n-button__state-border{border-bottom-left-radius:0;border-top-left-radius:0}.newprint-button-outer__shortcut{color:#76797f}
@@ -486,11 +486,11 @@ declare const _default: import("vue").DefineComponent<{
486
486
  }>;
487
487
  developMode: boolean;
488
488
  draggable: boolean;
489
- fieldDescribeMode: "column" | "tooltip";
490
- isFieldSet: boolean;
489
+ isHighlightRow: boolean;
491
490
  idx: number;
492
491
  isHighlight: boolean;
493
- isHighlightRow: boolean;
492
+ isFieldSet: boolean;
493
+ fieldDescribeMode: "column" | "tooltip";
494
494
  }>;
495
495
  EditDialog: import("vue").DefineComponent<{
496
496
  visible: {
@@ -508,11 +508,11 @@ declare const _default: import("vue").DefineComponent<{
508
508
  }>;
509
509
  developMode: boolean;
510
510
  draggable: boolean;
511
- fieldDescribeMode: "column" | "tooltip";
512
- isFieldSet: boolean;
511
+ isHighlightRow: boolean;
513
512
  idx: number;
514
513
  isHighlight: boolean;
515
- isHighlightRow: boolean;
514
+ isFieldSet: boolean;
515
+ fieldDescribeMode: "column" | "tooltip";
516
516
  }>;
517
517
  setStyle: typeof setStyle;
518
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<{
@@ -646,11 +646,11 @@ declare const _default: import("vue").DefineComponent<{
646
646
  }>;
647
647
  developMode: boolean;
648
648
  draggable: boolean;
649
- fieldDescribeMode: "column" | "tooltip";
650
- isFieldSet: boolean;
649
+ isHighlightRow: boolean;
651
650
  idx: number;
652
651
  isHighlight: boolean;
653
- isHighlightRow: boolean;
652
+ isFieldSet: boolean;
653
+ fieldDescribeMode: "column" | "tooltip";
654
654
  }>;
655
655
  isArray: {
656
656
  (value?: any): value is any[];
@@ -765,10 +765,10 @@ declare const _default: import("vue").DefineComponent<{
765
765
  showSeq: boolean;
766
766
  developMode: boolean;
767
767
  footerFlag: boolean;
768
+ fieldDescribeMode: "column" | "tooltip";
768
769
  customColumns: FieldSetColumnItem[];
769
770
  showSearch: boolean;
770
771
  showSortPriority: boolean;
771
772
  showHeadFilter: boolean;
772
- fieldDescribeMode: "column" | "tooltip";
773
773
  }>;
774
774
  export default _default;
@@ -337,10 +337,10 @@ declare const _default: import("vue").DefineComponent<{
337
337
  }>;
338
338
  developMode: boolean;
339
339
  draggable: boolean;
340
- fieldDescribeMode: "column" | "tooltip";
341
- isFieldSet: boolean;
340
+ isHighlightRow: boolean;
342
341
  idx: number;
343
342
  isHighlight: boolean;
344
- isHighlightRow: boolean;
343
+ isFieldSet: boolean;
344
+ fieldDescribeMode: "column" | "tooltip";
345
345
  }>;
346
346
  export default _default;
@@ -1 +1 @@
1
- import{isObject as e,isFunction as t,cloneDeep as i}from"lodash-es";import{toRaw as o,h as l}from"vue";import{HIGHEST_PRIORITY as s,IHO_TABLE_FIXED_STATUS as n,WIDGET_TYPE as d}from"../constants/index.js";import{defineTablePlugin as r}from"../hooks/useTablePlugin.js";import{getDefaultValue as a}from"./rendererPlugins/editableWidgets/selectRendererPlugin/selectUtils.js";import{IhoTableStatusHelper as f,IhoTableUtils as c}from"../utils/index.js";function m(){const m="lowCodeFieldAdaptorPlugin";return r({name:m,apply(r){r.fieldHooks.field.tap({name:m,stage:s},((s,r,m)=>{const p=s,u={className:p.bold?"iho-table__boldCell":"",field:p.columnName,showOverflow:"ellipsis",visible:f.notNegative(p.isShow),minWidth:p.colWidth,sortable:f.isPositive(p.isSort),fixed:n[p.isFixed],...p,title:p.alias||p.title};return function(e,i){const o={default:i.slotFn,header:i.headerSlotFn,edit:i.editSlotFn,footer:i.footerSlotFn,...i.slots};if(t(i.checkEditStatus)){const{default:e}=o;t(e)&&(o.default=t=>i.checkEditStatus(t)?e(t):[l("span",null,a(t.row,t.column.editRender.props))])}e.slots=o}(u,p),function(l,s,n){var r,a;const m=i(o(s));m.componentProps={size:"mini"===n.size?"small":n.size,...m.componentProps},n.forceClearable&&(m.componentProps.clearable=!0);l.editRender={name:c.getCellType(s),...l.editRender,props:m},l.editRender.enabled=!Reflect.get(d,l.editRender.name),!l.editRender.enabled&&t(null==(r=l.slots)?void 0:r.default)&&(l.editRender.enabled=t(null==(a=l.slots)?void 0:a.edit));if(!e(s.settingObj))return;Reflect.has(s.settingObj,"isHide")&&(l.visible=l.visible&&f.notPositive(s.settingObj.isHide))}(u,p,m),u})),r.fieldHooks.field.tap({name:m+"After",stage:1e3},(t=>(e(t.slots)&&Object.entries(t.slots).forEach((([e,i])=>{null==i&&Reflect.deleteProperty(t.slots,e)})),t)))}})}export{m as lowCodeFieldAdaptorPlugin};
1
+ import{isObject as e,isFunction as t,cloneDeep as i}from"lodash-es";import{toRaw as l,h as o}from"vue";import{HIGHEST_PRIORITY as s,IHO_TABLE_FIXED_STATUS as n,WIDGET_TYPE as d}from"../constants/index.js";import{defineTablePlugin as r}from"../hooks/useTablePlugin.js";import{getDefaultValue as a}from"./rendererPlugins/editableWidgets/selectRendererPlugin/selectUtils.js";import{IhoTableStatusHelper as f,IhoTableUtils as c}from"../utils/index.js";function m(){const m="lowCodeFieldAdaptorPlugin";return r({name:m,apply(r){r.fieldHooks.field.tap({name:m,stage:s},((s,r,m)=>{const u=s,p={className:u.bold?"iho-table__boldCell":"",field:u.columnName,showOverflow:"ellipsis",visible:f.notNegative(u.isShow),minWidth:u.colWidth,sortable:f.isPositive(u.isSort),fixed:n[u.isFixed],...u,title:u.alias||u.title};return function(e,i){const l={default:i.slotFn,header:i.headerSlotFn,edit:i.editSlotFn,footer:i.footerSlotFn,...i.slots};if(t(i.checkEditStatus)){const{default:e}=l;t(e)&&(l.default=t=>i.checkEditStatus(t)?e(t):[o("span",null,a(t.row,t.column.editRender.props))])}e.slots=l}(p,u),function(o,s,n){var r,a,m;const u=i(l(s));u.componentProps={size:"mini"===n.size?"small":n.size,...u.componentProps},n.forceClearable&&(u.componentProps.clearable=!0);o.editRender={name:c.getCellType(s),...o.editRender,props:u},null==(null==(r=o.editRender)?void 0:r.enabled)&&(o.editRender.enabled=!Reflect.get(d,o.editRender.name),!o.editRender.enabled&&t(null==(a=o.slots)?void 0:a.default)&&(o.editRender.enabled=t(null==(m=o.slots)?void 0:m.edit)));if(!e(s.settingObj))return;Reflect.has(s.settingObj,"isHide")&&(o.visible=o.visible&&f.notPositive(s.settingObj.isHide))}(p,u,m),p})),r.fieldHooks.field.tap({name:m+"After",stage:1e3},(t=>(e(t.slots)&&Object.entries(t.slots).forEach((([e,i])=>{null==i&&Reflect.deleteProperty(t.slots,e)})),t)))}})}export{m as lowCodeFieldAdaptorPlugin};