cnhis-design-vue 3.2.7-beta.10 → 3.2.7-beta.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. package/es/components/button-print/src/components/NewPrintComponent.vue2.js +1 -1
  2. package/es/components/classification/index.d.ts +2 -1
  3. package/es/components/classification/src/components/search-filter/index.vue.d.ts +2 -1
  4. package/es/components/classification/src/components/search-filter/index.vue2.js +1 -1
  5. package/es/components/classification/src/components/set-classification/index.vue.d.ts +2 -1
  6. package/es/components/classification/src/components/table-modal/index.vue.d.ts +0 -3
  7. package/es/components/classification/src/components/table-modal/index.vue2.js +1 -1
  8. package/es/components/classification/src/index.vue.d.ts +2 -1
  9. package/es/components/field-set/src/FieldSet.vue.d.ts +1 -1
  10. package/es/components/iho-chat/src/components/ChatAdd.vue2.js +1 -1
  11. package/es/components/iho-chat/src/components/ChatFooter.vue2.js +1 -1
  12. package/es/components/iho-chat/src/components/ChatMain.vue2.js +1 -1
  13. package/es/components/quick-search/src/index.vue2.js +1 -1
  14. package/es/components/scale-view/src/ScaleView.vue2.js +1 -1
  15. package/es/components/table-export-field/src/components/ExportModal.vue2.js +1 -1
  16. package/es/components/table-export-field/src/components/SaveProjectModal.vue2.js +1 -1
  17. package/es/components/table-filter/src/components/classify-filter/ValueCfg.vue.d.ts +2 -1
  18. package/es/components/table-filter/src/components/classify-filter/components/SelectDynamic.vue.d.ts +2 -1
  19. package/es/components/table-filter/src/components/classify-filter/components/SelectDynamic.vue2.js +1 -1
  20. package/es/components/table-filter/src/components/classify-filter/components/index.d.ts +2 -1
  21. package/es/components/table-filter/src/components/classify-filter/hooks/useFilterConditions.js +1 -1
  22. package/es/components/table-filter/src/components/classify-filter/index.vue.d.ts +2 -1
  23. package/es/components/table-filter/src/components/render-widget/components/Select.vue2.js +1 -1
  24. package/es/components/table-filter/src/components/render-widget/components/SelectDynamic.vue2.js +1 -1
  25. package/es/components/table-filter/src/components/render-widget/components/SelectDynamicOption/index.vue2.js +1 -1
  26. package/es/components/table-filter/src/tool/transformData.js +1 -1
  27. package/es/components/table-filter/src/types/index.d.ts +1 -0
  28. package/es/env.d.ts +25 -25
  29. package/es/shared/package.json.js +1 -1
  30. package/package.json +2 -2
@@ -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 y,renderList as f,createBlock as v,createTextVNode as g,toDisplayString as k,isRef as h,renderSlot as b,withModifiers as P,normalizeClass 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 F,NPopover as j,NCheckbox as M,NDivider as N}from"naive-ui";import{PrintOutline as E,SettingsOutline as x,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 U}from"../utils/browserPrint.js";import A from"./IdentityVerification.vue.js";import{format as V}from"date-fns";import"../api.js";const K={class:"newprint-button-outer"},B=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),ye=n(""),fe=i({spinning:!1,visible:!1,formatList:[],templateParams:[],printParams:[],originParams:{},currentFormatId:"",identityVerification:{visible:!1},isInited:!1,watchPrintParamsReformatFn:null,spinTimer:null,isClickOuterPrint:!1,curPrintParamList:[]});let ve=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(!fe.currentFormatId)return{};let e=fe.currentFormatId;return fe.formatList.find((t=>t.id===e))}));r((()=>{var e;return(null==(e=we.value)?void 0:e.name)||"格式选择"}));const Se=r((()=>{let e=fe.formatList.find((e=>e.id===fe.currentFormatId));return null==e?void 0:e.templateId})),Oe=r((()=>{let e=fe.formatList.find((e=>e.id===fe.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)||""})),Fe=r((()=>{var e;return(null==(e=ue.newPrintSetting)?void 0:e.printAllType)||1})),je=r((()=>{const e=ce.map((e=>e.key));return ve.value.filter((t=>!e.includes(t.key)))})),Me=r({get:()=>je.value.every((e=>e.selected)),set(e){je.value.forEach((t=>{t.selected=e}))}}),Ne=async()=>{var e,t;(null==(t=null==(e=ue.newPrintSetting)?void 0:e.outerPrintKeys)?void 0:t.length)||await rt(),he.oneShow=!0},Ee=async e=>{if(ue.directPrint){if(fe.spinning)return;return"button"===e?void(Ce.value?await lt():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):Ne()):Ne()}return Ne()},xe=(e,t)=>{ke[e]=t},_e=()=>{be.value=ve.value.filter((e=>!e.selected)),Pe.value=je.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:fe.currentFormatId,templateId:(null==e?void 0:e.templateId)||Se.value,templateCode:(null==e?void 0:e.templateCode)||Oe.value};me("success",e,n)},Ue=e=>{Re(!1),me("error",e),O(e)&&"notInstalledApp"===e.type&&de.error(e.message)},Ae=e=>{Re(!1),me("cancel",e)},Ve=e=>{me("error",{message:"前置条件执行错误",type:e,preExecution:!0})},Ke=()=>JSON.stringify({...ue.token?{token:ue.token}:{}}),Be=(e=[],t)=>{var n,i;let r={},a={};if((null==(n=fe.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(Ke()),Te.value,a),JSON.stringify(r)},Re=(e,t)=>{if(fe.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 fe.spinning=e},qe=()=>fe.isClickOuterPrint?Pe.value.some((e=>e.isLoading)):fe.spinning,Ge=(e,t,n,i)=>{const r=fe.printParams[e];if(!r)return;fe.isClickOuterPrint=i,fe.currentFormatId=n;const a=fe.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((()=>{fe.curPrintParamList=e;const a={formatId:i,templateId:n,authorizationKey:ye.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(Ke()),Te.value,e[t]));pe.printDirect({...a,params:n},o,Ue,Ae)}else pe.printDirect({...a,params:Be(e,t)},(e=>{e.params=r,e.templateCode=t,e.templateId=n,ze(e,"print")}),Ue,Ae)})).catch((()=>{Ve("print"),Re(!1)})).finally((()=>{fe.visible=!1})))},Ye=async(e,{templateCode:t,templateId:n,key:i},r)=>{const a=fe.printParams[t];if(a)switch(fe.isClickOuterPrint=r,fe.currentFormatId=i,e){case"previewText":(async(e=[],t,n,i)=>{ue.showLoading&&qe()||(Re(!0,i),ue.prevFn("preview").then((()=>{fe.curPrintParamList=e;const r=JSON.stringify(Object.assign({},JSON.parse(Ke()),Te.value,e[0])),a="MULTI"===ue.strategy?r:Be(e,t),l={formatId:i,templateId:n,authorizationKey:ye.value,params:a,btnprint:ue.btnprint,signature:ue.signature};pe.preview(l,(e=>{ze(e,"preview")}),Ue)})).catch((()=>{Ve("preview"),Re(!1)})).finally((()=>{fe.visible=!1})))})(a,t,n,i);break;case"formatEditText":((e=[],t,n,i)=>{ue.showLoading&&qe()||(Re(!0,i),ue.prevFn("edit").then((()=>{fe.curPrintParamList=e,fe.currentFormatId=i,fe.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((()=>{fe.curPrintParamList=e;const r=JSON.stringify(Object.assign({},JSON.parse(Ke()),Te.value,e[0])),a="MULTI"===ue.strategy?r:Be(e,t),l={formatId:i,templateId:n,authorizationKey:ye.value,print:{print:"1",type:"1"},params:a,signature:ue.signature};pe.downloadPDF(l,(e=>ze(e,"preview")),Ue)})).catch((()=>{Ve("download"),Re(!1)})).finally((()=>{fe.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=>{fe.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):[],(()=>{var e,t,n;const i=fe.formatList.map((e=>({templateCode:e.number,templateId:e.templateId,label:e.name,key:e.id,selected:!1,isLoading:!1})));ve.value.unshift(...i),Ie.value&&ve.value.push(...ce),(null==(t=null==(e=ue.newPrintSetting)?void 0:e.outerPrintKeys)?void 0:t.length)>0&&(ve.value.forEach((e=>{var t;(null==(t=ue.newPrintSetting)?void 0:t.outerPrintKeys.includes(e.key))&&(e.selected=!0)})),Pe.value=ve.value.filter((e=>e.selected))),be.value=ve.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)))}})(),fe.templateParams=(e=>{let t={};return e&&e.forEach((e=>{if(!e.templateConfig)return!1;t[e.number]=e.templateConfig})),t})(e.obj),fe.printParams=Qe(fe.templateParams,ue.params),fe.originParams=We(fe.templateParams,ue.params)},it=async()=>{var e;if(fe.isInited)return!0;fe.isInited=!0,fe.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&&(ye.value=t.obj[0].authorizationKey||""),fe.spinning=!1,!0},rt=async(e=!0)=>{if(await ue.clickPrevFn()){if(!fe.visible){if(!await it())return!1}e&&(fe.visible=!fe.visible)}},at=e=>{if(fe.identityVerification.visible=!1,U(fe.currentFormatId))return ze(null,"edit");const t=JSON.stringify(Object.assign({},JSON.parse(Ke()),Te.value,fe.curPrintParamList[0])),n="MULTI"===ue.strategy?t:Be(fe.curPrintParamList,Oe.value),i={formatId:fe.currentFormatId,templateId:Se.value,params:n,token:e};pe.editPrintFormat(i,(e=>{ze(e,"edit")}),Ue)};async function lt(){await rt(!1),(()=>{const e=Object.keys(fe.printParams);fe.isClickOuterPrint=!1;const t=fe.originParams;if(1==Fe.value)for(let n=0;n<e.length;n++){const i=e[n],r=fe.printParams[i],a=t[i]||[],l=fe.formatList.filter((e=>e.number==i));l&&l.length>0&&l.forEach((e=>{fe.currentFormatId=e.id,He(r,e.number,e.templateId,e.id,a,!0)}))}2==Fe.value&&Pe.value.forEach((e=>{const n=fe.printParams[e.templateCode],i=t[e.templateCode]||[];fe.currentFormatId=e.key,He(n,e.templateCode,e.templateId,e.key,i,!0)}))})()}return a((()=>{fe.isInited=!1})),l((()=>ue.params),(e=>{Object.keys(fe.templateParams).length>0&&(fe.printParams=Qe(fe.templateParams,ue.params),fe.originParams=We(fe.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:lt}),(t,n)=>(o(),s(u,null,[c("div",K,[d(" 外显按钮集合 "),p(m(I),null,{default:y((()=>[(o(!0),s(u,null,f(Pe.value,(t=>{return o(),v(m(T),{key:t.key,class:"c-dropdown",placement:"bottom-start",trigger:"hover",onClickoutside:$e,options:(n=m(ge),i=t,fe.printParams[i.templateCode]?n:[]),onSelect:e=>Ye(e,t,!0)},{default:y((()=>[p(m(L),{disabled:!fe.printParams[t.templateCode],loading:e.showLoading&&t.isLoading,onClick:e=>Ge(t.templateCode,t.templateId,t.key,!0)},{icon:y((()=>[p(m(F),{component:m(E),size:"18"},null,8,["component"])])),default:y((()=>[g(" "+k(t.label),1)])),_:2},1032,["disabled","loading","onClick"])])),_:2},1032,["options","onSelect"]);var n,i})),128))])),_:1}),d(" 外显设置按钮 "),Pe.value.length>0&&Pe.value.length==m(je).length&&m(Ie)?(o(),v(m(j),{key:0,trigger:"click","show-arrow":!1,show:he.isOutSetting,onClickoutside:n[2]||(n[2]=e=>Je("isOutSetting"))},{trigger:y((()=>[p(m(L),{onClick:n[0]||(n[0]=e=>De("isOutSetting"))},{default:y((()=>[B,p(m(F),{style:{"margin-left":"8px"},component:m(x),size:"18"},null,8,["component"])])),_:1})])),default:y((()=>[c("div",R,[(o(!0),s(u,null,f(m(je),(e=>(o(),s("div",{class:"print-li",key:e.key},[c("div",q,[c("span",G,k(e.label),1),p(m(M),{checked:e.selected,"onUpdate:checked":t=>e.selected=t},{default:y((()=>[g("外显")])),_:2},1032,["checked","onUpdate:checked"])])])))),128)),c("div",H,[p(m(N)),c("div",Y,[p(m(L),{type:"primary",size:"small",onClick:_e},{default:y((()=>[g("保存")])),_:1}),m(je)&&m(je).length>1?(o(),v(m(M),{key:0,checked:m(Me),"onUpdate:checked":n[1]||(n[1]=e=>h(Me)?Me.value=e:null)},{default:y((()=>[g("全选")])),_:1},8,["checked"])):d("v-if",!0)])])])])),_:1},8,["show"])):(o(),s(u,{key:1},[d(" 打印全部按钮 "),p(m(j),{trigger:"click","show-arrow":!1,show:he.oneShow,onClickoutside:n[10]||(n[10]=e=>Je("oneShow"))},{trigger:y((()=>[b(t.$slots,"button",{handleClickPrintBtn:rt,printSpinning:fe.spinning,printbtnText:e.btnText,printVisible:fe.visible},(()=>[p(m(I),{class:"newprint-button-component",onClick:n[4]||(n[4]=P((()=>Ee("icon")),["stop"]))},{default:y((()=>[p(m(L),{loading:e.showLoading&&fe.spinning,onClick:n[3]||(n[3]=P((()=>Ee("button")),["stop"]))},{icon:y((()=>[p(m(F),{component:m(E),size:"18"},null,8,["component"])])),default:y((()=>[g(" "+k(m(Ce)?"打印全部":e.btnText),1)])),_:1},8,["loading"]),p(m(L),{class:"icon-select"},{icon:y((()=>[p(m(F),{component:m(_),size:"18"},null,8,["component"])])),_:1})])),_:1})]))])),default:y((()=>[c("div",$,[(o(!0),s(u,null,f(be.value,(e=>(o(),s("div",{class:w(["print-li",ke.oneMouseType==e.key||ke.oneClickType==e.key?"active":""]),key:e.key,onMouseenter:t=>xe("oneMouseType",e.key),onMouseleave:n[9]||(n[9]=e=>xe("oneMouseType","")),onClick:t=>((e,t,n)=>{if(!fe.printParams[n.templateCode])return[];xe(e,t)})("oneClickType",e.key,e)},["divider"==e.key?(o(),v(m(N),{key:0})):"outSetting"==e.key?(o(),s(u,{key:1},[d(" 第二层外显设置 "),p(m(j),{trigger:"click","show-arrow":!1,placement:"right-start",show:he.isOutSetting,onClickoutside:n[7]||(n[7]=e=>Je("isOutSetting"))},{trigger:y((()=>[c("div",{class:"print-lite",onClick:n[5]||(n[5]=e=>De("isOutSetting"))},[c("span",W,k(e.label),1),p(m(F),{color:Pe.value.length>0?"#2563F4":"",component:m(x),size:"18"},null,8,["color","component"])])])),default:y((()=>[c("div",X,[(o(!0),s(u,null,f(m(je),(e=>(o(),s("div",{class:"print-li",key:e.key},[c("div",Z,[c("span",ee,k(e.label),1),p(m(M),{checked:e.selected,"onUpdate:checked":t=>e.selected=t},{default:y((()=>[g("外显")])),_:2},1032,["checked","onUpdate:checked"])])])))),128)),c("div",te,[p(m(N)),c("div",ne,[p(m(L),{type:"primary",size:"small",onClick:_e},{default:y((()=>[g("保存")])),_:1}),m(je)&&m(je).length>1?(o(),v(m(M),{key:0,checked:m(Me),"onUpdate:checked":n[6]||(n[6]=e=>h(Me)?Me.value=e:null)},{default:y((()=>[g("全选")])),_:1},8,["checked"])):d("v-if",!0)])])])])),_:2},1032,["show"])],2112)):(o(),s(u,{key:2},[d(" 第二层功能操作 "),c("div",{class:w(["print-lite",fe.printParams[e.templateCode]?"":"isDisabled"])},[c("span",{class:"label bold",onClick:t=>Ge(e.templateCode,e.templateId,e.key,!1)},k(e.label),9,ie),fe.printParams[e.templateCode]?(o(),v(m(j),{key:0,trigger:"click","show-arrow":!1,placement:"right-start",show:he[e.key],onClickoutside:t=>Je(e.key)},{trigger:y((()=>[p(m(F),{component:m(D),size:"18",onClick:t=>De(e.key)},null,8,["component","onClick"])])),default:y((()=>[c("div",re,[(o(!0),s(u,null,f(m(ge),(t=>(o(),s("div",{class:w(["print-li",ke.twoMouseType==t.key?"active":""]),key:t.key,onMouseenter:e=>xe("twoMouseType",t.key),onMouseleave:n[8]||(n[8]=e=>xe("twoMouseType",""))},[c("div",le,[c("span",{class:"label",onClick:n=>Ye(t.key,e,!1)},k(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(A,S(t.$attrs,{modelValue:fe.identityVerification.visible,"onUpdate:modelValue":n[11]||(n[11]=e=>fe.identityVerification.visible=e),formatId:fe.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 y,renderList as f,createBlock as v,createTextVNode as g,toDisplayString as k,isRef as h,renderSlot as b,withModifiers as P,normalizeClass 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 F,NPopover as j,NCheckbox as M,NDivider as N}from"naive-ui";import{PrintOutline as E,SettingsOutline as x,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 U}from"../utils/browserPrint.js";import A from"./IdentityVerification.vue.js";import{format as V}from"date-fns";import"../api.js";const K={class:"newprint-button-outer"},B=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),ye=n(""),fe=i({spinning:!1,visible:!1,formatList:[],templateParams:[],printParams:[],originParams:{},currentFormatId:"",identityVerification:{visible:!1},isInited:!1,watchPrintParamsReformatFn:null,spinTimer:null,isClickOuterPrint:!1,curPrintParamList:[]});let ve=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(!fe.currentFormatId)return{};let e=fe.currentFormatId;return fe.formatList.find((t=>t.id===e))}));r((()=>{var e;return(null==(e=we.value)?void 0:e.name)||"格式选择"}));const Se=r((()=>{let e=fe.formatList.find((e=>e.id===fe.currentFormatId));return null==e?void 0:e.templateId})),Oe=r((()=>{let e=fe.formatList.find((e=>e.id===fe.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)||""})),Fe=r((()=>{var e;return(null==(e=ue.newPrintSetting)?void 0:e.printAllType)||1})),je=r((()=>{const e=ce.map((e=>e.key));return ve.value.filter((t=>!e.includes(t.key)))})),Me=r({get:()=>je.value.every((e=>e.selected)),set(e){je.value.forEach((t=>{t.selected=e}))}}),Ne=async()=>{var e,t;(null==(t=null==(e=ue.newPrintSetting)?void 0:e.outerPrintKeys)?void 0:t.length)||await rt(),he.oneShow=!0},Ee=async e=>{if(ue.directPrint){if(fe.spinning)return;return"button"===e?void(Ce.value?await lt():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):Ne()):Ne()}return Ne()},xe=(e,t)=>{ke[e]=t},_e=()=>{be.value=ve.value.filter((e=>!e.selected)),Pe.value=je.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:fe.currentFormatId,templateId:(null==e?void 0:e.templateId)||Se.value,templateCode:(null==e?void 0:e.templateCode)||Oe.value};me("success",e,n)},Ue=e=>{Re(!1),me("error",e),O(e)&&"notInstalledApp"===e.type&&de.error(e.message)},Ae=e=>{Re(!1),me("cancel",e)},Ve=e=>{me("error",{message:"前置条件执行错误",type:e,preExecution:!0})},Ke=()=>JSON.stringify({...ue.token?{token:ue.token}:{}}),Be=(e=[],t)=>{var n,i;let r={},a={};if((null==(n=fe.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(Ke()),Te.value,a),JSON.stringify(r)},Re=(e,t)=>{if(fe.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 fe.spinning=e},qe=()=>fe.isClickOuterPrint?Pe.value.some((e=>e.isLoading)):fe.spinning,Ge=(e,t,n,i)=>{const r=fe.printParams[e];if(!r)return;fe.isClickOuterPrint=i,fe.currentFormatId=n;const a=fe.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((()=>{fe.curPrintParamList=e;const a={formatId:i,templateId:n,authorizationKey:ye.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(Ke()),Te.value,e[t]));pe.printDirect({...a,params:n},o,Ue,Ae)}else pe.printDirect({...a,params:Be(e,t)},(e=>{e.params=r,e.templateCode=t,e.templateId=n,ze(e,"print")}),Ue,Ae)})).catch((()=>{Ve("print"),Re(!1)})).finally((()=>{fe.visible=!1})))},Ye=async(e,{templateCode:t,templateId:n,key:i},r)=>{const a=fe.printParams[t];if(a)switch(fe.isClickOuterPrint=r,fe.currentFormatId=i,e){case"previewText":(async(e=[],t,n,i)=>{ue.showLoading&&qe()||(Re(!0,i),ue.prevFn("preview").then((()=>{fe.curPrintParamList=e;const r=JSON.stringify(Object.assign({},JSON.parse(Ke()),Te.value,e[0])),a="MULTI"===ue.strategy?r:Be(e,t),l={formatId:i,templateId:n,authorizationKey:ye.value,params:a,btnprint:ue.btnprint,signature:ue.signature};pe.preview(l,(e=>{ze(e,"preview")}),Ue)})).catch((()=>{Ve("preview"),Re(!1)})).finally((()=>{fe.visible=!1})))})(a,t,n,i);break;case"formatEditText":((e=[],t,n,i)=>{ue.showLoading&&qe()||(Re(!0,i),ue.prevFn("edit").then((()=>{fe.curPrintParamList=e,fe.currentFormatId=i,fe.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((()=>{fe.curPrintParamList=e;const r=JSON.stringify(Object.assign({},JSON.parse(Ke()),Te.value,e[0])),a="MULTI"===ue.strategy?r:Be(e,t),l={formatId:i,templateId:n,authorizationKey:ye.value,print:{print:"1",type:"1"},params:a,signature:ue.signature};pe.downloadPDF(l,(e=>ze(e,"preview")),Ue)})).catch((()=>{Ve("download"),Re(!1)})).finally((()=>{fe.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=>{fe.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):[],(()=>{var e,t,n;const i=fe.formatList.map((e=>({templateCode:e.number,templateId:e.templateId,label:e.name,key:e.id,selected:!1,isLoading:!1})));ve.value.unshift(...i),Ie.value&&ve.value.push(...ce),(null==(t=null==(e=ue.newPrintSetting)?void 0:e.outerPrintKeys)?void 0:t.length)>0&&(ve.value.forEach((e=>{var t;(null==(t=ue.newPrintSetting)?void 0:t.outerPrintKeys.includes(e.key))&&(e.selected=!0)})),Pe.value=ve.value.filter((e=>e.selected))),be.value=ve.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)))}})(),fe.templateParams=(e=>{let t={};return e&&e.forEach((e=>{if(!e.templateConfig)return!1;t[e.number]=e.templateConfig})),t})(e.obj),fe.printParams=Qe(fe.templateParams,ue.params),fe.originParams=We(fe.templateParams,ue.params)},it=async()=>{var e;if(fe.isInited)return!0;fe.isInited=!0,fe.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&&(ye.value=t.obj[0].authorizationKey||""),fe.spinning=!1,!0},rt=async(e=!0)=>{if(await ue.clickPrevFn()){if(!fe.visible){if(!await it())return!1}e&&(fe.visible=!fe.visible)}},at=e=>{if(fe.identityVerification.visible=!1,U(fe.currentFormatId))return ze(null,"edit");const t=JSON.stringify(Object.assign({},JSON.parse(Ke()),Te.value,fe.curPrintParamList[0])),n="MULTI"===ue.strategy?t:Be(fe.curPrintParamList,Oe.value),i={formatId:fe.currentFormatId,templateId:Se.value,params:n,token:e};pe.editPrintFormat(i,(e=>{ze(e,"edit")}),Ue)};async function lt(){await rt(!1),(()=>{const e=Object.keys(fe.printParams);fe.isClickOuterPrint=!1;const t=fe.originParams;if(1==Fe.value)for(let n=0;n<e.length;n++){const i=e[n],r=fe.printParams[i],a=t[i]||[],l=fe.formatList.filter((e=>e.number==i));l&&l.length>0&&l.forEach((e=>{fe.currentFormatId=e.id,He(r,e.number,e.templateId,e.id,a,!0)}))}2==Fe.value&&Pe.value.forEach((e=>{const n=fe.printParams[e.templateCode],i=t[e.templateCode]||[];fe.currentFormatId=e.key,He(n,e.templateCode,e.templateId,e.key,i,!0)}))})()}return a((()=>{fe.isInited=!1})),l((()=>ue.params),(e=>{Object.keys(fe.templateParams).length>0&&(fe.printParams=Qe(fe.templateParams,ue.params),fe.originParams=We(fe.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:lt}),(t,n)=>(o(),s(u,null,[c("div",K,[d(" 外显按钮集合 "),p(m(I),null,{default:y((()=>[(o(!0),s(u,null,f(Pe.value,(t=>{return o(),v(m(T),{key:t.key,class:"c-dropdown",placement:"bottom-start",trigger:"hover",onClickoutside:$e,options:(n=m(ge),i=t,fe.printParams[i.templateCode]?n:[]),onSelect:e=>Ye(e,t,!0)},{default:y((()=>[p(m(L),{disabled:!fe.printParams[t.templateCode],loading:e.showLoading&&t.isLoading,onClick:e=>Ge(t.templateCode,t.templateId,t.key,!0)},{icon:y((()=>[p(m(F),{component:m(E),size:"18"},null,8,["component"])])),default:y((()=>[g(" "+k(t.label),1)])),_:2},1032,["disabled","loading","onClick"])])),_:2},1032,["options","onSelect"]);var n,i})),128))])),_:1}),d(" 外显设置按钮 "),Pe.value.length>0&&Pe.value.length==m(je).length&&m(Ie)&&2!=m(Fe)?(o(),v(m(j),{key:0,trigger:"click","show-arrow":!1,show:he.isOutSetting,onClickoutside:n[2]||(n[2]=e=>Je("isOutSetting"))},{trigger:y((()=>[p(m(L),{onClick:n[0]||(n[0]=e=>De("isOutSetting"))},{default:y((()=>[B,p(m(F),{style:{"margin-left":"8px"},component:m(x),size:"18"},null,8,["component"])])),_:1})])),default:y((()=>[c("div",R,[(o(!0),s(u,null,f(m(je),(e=>(o(),s("div",{class:"print-li",key:e.key},[c("div",q,[c("span",G,k(e.label),1),p(m(M),{checked:e.selected,"onUpdate:checked":t=>e.selected=t},{default:y((()=>[g("外显")])),_:2},1032,["checked","onUpdate:checked"])])])))),128)),c("div",H,[p(m(N)),c("div",Y,[p(m(L),{type:"primary",size:"small",onClick:_e},{default:y((()=>[g("保存")])),_:1}),m(je)&&m(je).length>1?(o(),v(m(M),{key:0,checked:m(Me),"onUpdate:checked":n[1]||(n[1]=e=>h(Me)?Me.value=e:null)},{default:y((()=>[g("全选")])),_:1},8,["checked"])):d("v-if",!0)])])])])),_:1},8,["show"])):(o(),s(u,{key:1},[d(" 打印全部按钮 "),p(m(j),{trigger:"click","show-arrow":!1,show:he.oneShow,onClickoutside:n[10]||(n[10]=e=>Je("oneShow"))},{trigger:y((()=>[b(t.$slots,"button",{handleClickPrintBtn:rt,printSpinning:fe.spinning,printbtnText:e.btnText,printVisible:fe.visible},(()=>[p(m(I),{class:"newprint-button-component",onClick:n[4]||(n[4]=P((()=>Ee("icon")),["stop"]))},{default:y((()=>[p(m(L),{loading:e.showLoading&&fe.spinning,onClick:n[3]||(n[3]=P((()=>Ee("button")),["stop"]))},{icon:y((()=>[p(m(F),{component:m(E),size:"18"},null,8,["component"])])),default:y((()=>[g(" "+k(m(Ce)?"打印全部":e.btnText),1)])),_:1},8,["loading"]),p(m(L),{class:"icon-select"},{icon:y((()=>[p(m(F),{component:m(_),size:"18"},null,8,["component"])])),_:1})])),_:1})]))])),default:y((()=>[c("div",$,[(o(!0),s(u,null,f(be.value,(e=>(o(),s("div",{class:w(["print-li",ke.oneMouseType==e.key||ke.oneClickType==e.key?"active":""]),key:e.key,onMouseenter:t=>xe("oneMouseType",e.key),onMouseleave:n[9]||(n[9]=e=>xe("oneMouseType","")),onClick:t=>((e,t,n)=>{if(!fe.printParams[n.templateCode])return[];xe(e,t)})("oneClickType",e.key,e)},["divider"==e.key?(o(),v(m(N),{key:0})):"outSetting"==e.key?(o(),s(u,{key:1},[d(" 第二层外显设置 "),p(m(j),{trigger:"click","show-arrow":!1,placement:"right-start",show:he.isOutSetting,onClickoutside:n[7]||(n[7]=e=>Je("isOutSetting"))},{trigger:y((()=>[c("div",{class:"print-lite",onClick:n[5]||(n[5]=e=>De("isOutSetting"))},[c("span",W,k(e.label),1),p(m(F),{color:Pe.value.length>0?"#2563F4":"",component:m(x),size:"18"},null,8,["color","component"])])])),default:y((()=>[c("div",X,[(o(!0),s(u,null,f(m(je),(e=>(o(),s("div",{class:"print-li",key:e.key},[c("div",Z,[c("span",ee,k(e.label),1),p(m(M),{checked:e.selected,"onUpdate:checked":t=>e.selected=t},{default:y((()=>[g("外显")])),_:2},1032,["checked","onUpdate:checked"])])])))),128)),c("div",te,[p(m(N)),c("div",ne,[p(m(L),{type:"primary",size:"small",onClick:_e},{default:y((()=>[g("保存")])),_:1}),m(je)&&m(je).length>1?(o(),v(m(M),{key:0,checked:m(Me),"onUpdate:checked":n[6]||(n[6]=e=>h(Me)?Me.value=e:null)},{default:y((()=>[g("全选")])),_:1},8,["checked"])):d("v-if",!0)])])])])),_:2},1032,["show"])],2112)):(o(),s(u,{key:2},[d(" 第二层功能操作 "),c("div",{class:w(["print-lite",fe.printParams[e.templateCode]?"":"isDisabled"])},[c("span",{class:"label bold",onClick:t=>Ge(e.templateCode,e.templateId,e.key,!1)},k(e.label),9,ie),fe.printParams[e.templateCode]?(o(),v(m(j),{key:0,trigger:"click","show-arrow":!1,placement:"right-start",show:he[e.key],onClickoutside:t=>Je(e.key)},{trigger:y((()=>[p(m(F),{component:m(D),size:"18",onClick:t=>De(e.key)},null,8,["component","onClick"])])),default:y((()=>[c("div",re,[(o(!0),s(u,null,f(m(ge),(t=>(o(),s("div",{class:w(["print-li",ke.twoMouseType==t.key?"active":""]),key:t.key,onMouseenter:e=>xe("twoMouseType",t.key),onMouseleave:n[8]||(n[8]=e=>xe("twoMouseType",""))},[c("div",le,[c("span",{class:"label",onClick:n=>Ye(t.key,e,!1)},k(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(A,S(t.$attrs,{modelValue:fe.identityVerification.visible,"onUpdate:modelValue":n[11]||(n[11]=e=>fe.identityVerification.visible=e),formatId:fe.currentFormatId,templateId:m(Se),onSuccess:at}),null,16,["modelValue","formatId","templateId"])],64))}});export{se as default};
@@ -1148,7 +1148,8 @@ declare const CClassification: SFCWithInstall<import("vue").DefineComponent<{
1148
1148
  isMultiple: import("vue").ComputedRef<boolean>;
1149
1149
  dynamicOptionInfos: import("vue").ComputedRef<any>;
1150
1150
  isLastPage: import("vue").ComputedRef<boolean>;
1151
- valueCp: import("vue").ComputedRef<string | number | any[]>;
1151
+ originList: import("vue").ComputedRef<any>;
1152
+ valueCp: import("vue").ComputedRef<any>;
1152
1153
  isInitRequest: import("vue").ComputedRef<boolean>;
1153
1154
  setOptionActive: (selectIds: string[]) => void;
1154
1155
  handleUpdateSelect: (value: string[] | null) => void;
@@ -612,7 +612,8 @@ declare const _default: import("vue").DefineComponent<{
612
612
  isMultiple: import("vue").ComputedRef<boolean>;
613
613
  dynamicOptionInfos: import("vue").ComputedRef<any>;
614
614
  isLastPage: import("vue").ComputedRef<boolean>;
615
- valueCp: import("vue").ComputedRef<string | number | any[]>;
615
+ originList: import("vue").ComputedRef<any>;
616
+ valueCp: import("vue").ComputedRef<any>;
616
617
  isInitRequest: import("vue").ComputedRef<boolean>;
617
618
  setOptionActive: (selectIds: string[]) => void;
618
619
  handleUpdateSelect: (value: string[] | null) => void;
@@ -1 +1 @@
1
- import{defineComponent as e,ref as i,inject as t,onBeforeUnmount as l,watch as a,openBlock as o,createBlock as n,unref as s,normalizeClass as d,withCtx as c,createVNode as r,normalizeStyle as u,createElementVNode as f,createTextVNode as h,createElementBlock as v,Fragment as m,createCommentVNode as p,mergeProps as x}from"vue";import{NModal as b,NCard as y,NButton as g}from"naive-ui";import{InjectionClassifyfilterType as L}from"../../../../table-filter/src/constants/index.js";import k from"../../../../table-filter/src/components/classify-filter/index.vue.js";import z from"../../../../table-filter/src/components/bi-filter/index.vue.js";const A={class:"svg-wrap"},_={class:"flex_right"};var w=e({__name:"index",props:{visible:{type:Boolean,default:!1},modalTitle:{type:String,default:"设置分类"},conditionList:{type:Array,default:()=>[]},searchFieldList:{type:Array,default:()=>[]}},emits:["cancelSaveAdd"],setup(e,{expose:w,emit:C}){const F=e,S=i(F.visible),H=i(!1),T=i("860px");let $=i({maxHeight:"496px",height:"496px"}),j=i(null),R=null;const B=t(L);function I(){N(),R=setTimeout((()=>{j&&j.value.handleInitConditions()}),30)}function N(){R&&clearTimeout(R)}function P(){j&&j.value.saveAdd()}function U(){S.value=!1,C("cancelSaveAdd"),T.value="860px",$.value={height:"496px",maxHeight:"496px"},H.value=!1,j&&j.value.cancelSaveAdd()}function q(){H.value=!H.value;let e=document.body.clientHeight;"860px"===T.value?(T.value="100%",$.value.maxHeight=`${e}px`,$.value.height=`${e}px`):(T.value="860px",$.value.maxHeight="496px",$.value.height="")}return l((()=>{N()})),a((()=>F.visible),(e=>{S.value=e,e&&I()})),w({cancelSaveAdd:U}),(e,i)=>(o(),n(s(b),{class:d(["classification-modal-block standard-modal standard-modal-white search-filter-modal",{"modal-screen":H.value}]),show:S.value,"onUpdate:show":i[0]||(i[0]=e=>S.value=e),maskClosable:!1,width:T.value,bodyStyle:s($),closable:!1,to:"body",centered:"",onPositiveClick:P,onNegativeClick:U},{default:c((()=>[r(s(y),{style:u({width:T.value,...s($)}),title:F.modalTitle,bordered:!1,size:"huge",role:"dialog","aria-modal":"true"},{"header-extra":c((()=>[f("div",A,[f("i",{onClick:q,class:d(["iconfont-table-filter",H.value?"icon-table-filter-menzhenyishengzhanxitongtubiaozuixiaohua2":"icon-table-filter-menzhenyishengzhanxitongtubiaozuidahua"])},null,2),f("i",{onClick:U,class:"iconfont-table-filter icon-table-filter-menzhenyishengzhanxitongtubiaoguanbi"})])])),footer:c((()=>[f("div",_,[r(s(g),{onClick:U},{default:c((()=>[h("取消")])),_:1}),r(s(g),{type:"info",onClick:P},{default:c((()=>[h("保存")])),_:1})])])),default:c((()=>["1"===s(B)?(o(),v(m,{key:0},[p(" 默认配置弹窗 "),r(k,x(e.$attrs,{ref_key:"conditionApiRef",ref:j,searchFieldList:F.searchFieldList,conditionList:F.conditionList}),null,16,["searchFieldList","conditionList"])],64)):"2"===s(B)?(o(),v(m,{key:1},[p(" bi配置弹窗 "),r(z,x(e.$attrs,{ref_key:"conditionApiRef",ref:j,searchFieldList:F.searchFieldList,conditionList:F.conditionList}),null,16,["searchFieldList","conditionList"])],64)):p("v-if",!0)])),_:1},8,["style","title"])])),_:1},8,["class","show","width","bodyStyle"]))}});export{w as default};
1
+ import{defineComponent as e,ref as i,inject as t,onBeforeUnmount as l,watch as a,openBlock as n,createBlock as o,unref as s,normalizeClass as d,withCtx as c,createVNode as r,normalizeStyle as u,createElementVNode as f,createTextVNode as h,createElementBlock as v,Fragment as m,createCommentVNode as p,mergeProps as x}from"vue";import{NModal as b,NCard as g,NButton as y}from"naive-ui";import{InjectionClassifyfilterType as L}from"../../../../table-filter/src/constants/index.js";import k from"../../../../table-filter/src/components/classify-filter/index.vue.js";import z from"../../../../table-filter/src/components/bi-filter/index.vue.js";const A={class:"svg-wrap"},_={class:"flex_right"};var w=e({__name:"index",props:{visible:{type:Boolean,default:!1},modalTitle:{type:String,default:"设置分类"},conditionList:{type:Array,default:()=>[]},searchFieldList:{type:Array,default:()=>[]}},emits:["cancelSaveAdd"],setup(e,{expose:w,emit:C}){const F=e,S=i(F.visible),H=i(!1),T=i("860px");let $=i({maxHeight:"496px",height:"496px"}),j=i(null),R=null;const B=t(L);function I(){N(),R=setTimeout((()=>{j&&j.value.handleInitConditions()}),30)}function N(){R&&clearTimeout(R)}function P(){j&&j.value.saveAdd()}function U(){S.value=!1,C("cancelSaveAdd"),T.value="860px",$.value={height:"496px",maxHeight:"496px"},H.value=!1,j&&j.value.cancelSaveAdd()}function q(){H.value=!H.value;let e=document.body.clientHeight;"860px"===T.value?(T.value="100%",$.value.maxHeight=`${e}px`,$.value.height=`${e}px`):(T.value="860px",$.value.maxHeight="496px",$.value.height="")}return l((()=>{N()})),a((()=>F.visible),(e=>{S.value=e,e&&I()})),w({cancelSaveAdd:U}),(e,i)=>(n(),o(s(b),{class:d(["classification-modal-block standard-modal standard-modal-white search-filter-modal",{"modal-screen":H.value}]),show:S.value,"onUpdate:show":i[0]||(i[0]=e=>S.value=e),maskClosable:!1,width:T.value,bodyStyle:s($),closable:!1,centered:"",onPositiveClick:P,onNegativeClick:U},{default:c((()=>[r(s(g),{style:u({width:T.value,...s($)}),title:F.modalTitle,bordered:!1,size:"huge",role:"dialog","aria-modal":"true"},{"header-extra":c((()=>[f("div",A,[f("i",{onClick:q,class:d(["iconfont-table-filter",H.value?"icon-table-filter-menzhenyishengzhanxitongtubiaozuixiaohua2":"icon-table-filter-menzhenyishengzhanxitongtubiaozuidahua"])},null,2),f("i",{onClick:U,class:"iconfont-table-filter icon-table-filter-menzhenyishengzhanxitongtubiaoguanbi"})])])),footer:c((()=>[f("div",_,[r(s(y),{onClick:U},{default:c((()=>[h("取消")])),_:1}),r(s(y),{type:"info",onClick:P},{default:c((()=>[h("保存")])),_:1})])])),default:c((()=>["1"===s(B)?(n(),v(m,{key:0},[p(" 默认配置弹窗 "),r(k,x(e.$attrs,{ref_key:"conditionApiRef",ref:j,searchFieldList:F.searchFieldList,conditionList:F.conditionList}),null,16,["searchFieldList","conditionList"])],64)):"2"===s(B)?(n(),v(m,{key:1},[p(" bi配置弹窗 "),r(z,x(e.$attrs,{ref_key:"conditionApiRef",ref:j,searchFieldList:F.searchFieldList,conditionList:F.conditionList}),null,16,["searchFieldList","conditionList"])],64)):p("v-if",!0)])),_:1},8,["style","title"])])),_:1},8,["class","show","width","bodyStyle"]))}});export{w as default};
@@ -906,7 +906,8 @@ declare const _default: import("vue").DefineComponent<{
906
906
  isMultiple: import("vue").ComputedRef<boolean>;
907
907
  dynamicOptionInfos: import("vue").ComputedRef<any>;
908
908
  isLastPage: import("vue").ComputedRef<boolean>;
909
- valueCp: import("vue").ComputedRef<string | number | any[]>;
909
+ originList: import("vue").ComputedRef<any>;
910
+ valueCp: import("vue").ComputedRef<any>;
910
911
  isInitRequest: import("vue").ComputedRef<boolean>;
911
912
  setOptionActive: (selectIds: string[]) => void;
912
913
  handleUpdateSelect: (value: string[] | null) => void;
@@ -175,9 +175,6 @@ declare const _default: import("vue").DefineComponent<{
175
175
  modelValue: unknown[];
176
176
  componentData: Record<string, any>;
177
177
  } & {
178
- /**
179
- * 改变弹窗大小
180
- */
181
178
  itemKey?: string | Function | undefined;
182
179
  }>, {
183
180
  move: Function;
@@ -1 +1 @@
1
- import{defineComponent as e,ref as t,inject as i,watch as l,openBlock as a,createBlock as n,unref as o,normalizeClass as s,withCtx as c,createVNode as r,normalizeStyle as u,createSlots as d,createElementVNode as p,withDirectives as v,createTextVNode as m,toDisplayString as h,createCommentVNode as f,withModifiers as y,vShow as g,createElementBlock as w,renderSlot as k}from"vue";import{NModal as x,NCard as b,NTooltip as C,NIcon as z,NSwitch as S,NPopconfirm as _,NButton as D}from"naive-ui";import{ReorderTwo as I,Brush as E,DocumentOutline as N}from"@vicons/ionicons5";import P from"../../../../../shared/components/VueDraggable/src/vuedraggable.js";import{root_isShowResetButton as F}from"../../const/index.js";import{cloneDeep as M}from"lodash-es";const U={class:"svg-wrap"},V={class:"flex_between"},B={class:"table-modal-list"},O=p("div",{class:"list-title"},[p("span",{class:"list-title-item",style:{width:"6%"}}),p("span",{class:"list-title-item"}," 名称 "),p("span",{class:"list-title-item"}," 父类名称 "),p("span",{class:"list-title-item"}," 是否显示 "),p("span",{class:"list-title-item"}," 设置为默认 "),p("span",{class:"list-title-item"}," 操作 ")],-1),j=["onClick"],Y={class:"list-content-item",style:{width:"6%","text-align":"center",overflow:"initial"}},$=["title"],A=["title"],H={class:"list-content-item list-content-switch"},J={class:"list-content-item list-content-radio"},q={class:"list-content-item"},G={key:0},K=p("svg",{xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",viewBox:"0 0 32 32"},[p("path",{d:"M12 12h2v12h-2z",fill:"currentColor"}),p("path",{d:"M18 12h2v12h-2z",fill:"currentColor"}),p("path",{d:"M4 6v2h2v20a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8h2V6zm4 22V8h16v20z",fill:"currentColor"}),p("path",{d:"M12 2h8v2h-8z",fill:"currentColor"})],-1);var L=e({__name:"index",props:{visibleIn:{type:Boolean},loading:{type:Boolean},confirm:{type:Function},edit:{type:Function,defdault:()=>({})},copy:{type:Function,defdault:()=>({})},delItem:{type:Function,defdault:()=>({})},dataSource:{type:Array,default:()=>[]},type:{type:String,default:"search"},transitionName:{type:String},getContainer:{type:Function,default:()=>document.body}},emits:["handleOk","close","resetPopconfirm","finishSubmit"],setup(e,{emit:L}){const Q=e,R=t([]),T=t(Q.visibleIn),W=t(!1),X=t("other"==Q.type?"100%":"860px"),Z=t("654px"),ee=i(F);function te(){var e;Q.type&&(le(),L("handleOk","search"==(e=Q.type)||"other"==e?{id:"",tableId:"",setting:JSON.stringify(R.value.map((e=>({isDefault:e.isDefault,isShow:e.isShow,name:e.name,type:e.type,classifyId:e.sid}))))}:void 0))}function ie(){T.value=!1,le(),L("close")}function le(){X.value="860px",Z.value="654px",W.value=!1}function ae(){W.value=!W.value;let e=document.body.clientHeight;X.value="860px"===X.value?"100%":"860px",Z.value="654px"===Z.value?`${e}px`:"654px"}function ne(e){L("resetPopconfirm",e)}function oe(e,t,i){const l=Q[e];l&&l(t,i)}return l((()=>Q.visibleIn),(e=>{T.value=e})),l((()=>Q.dataSource),(e=>{R.value=M(e)}),{immediate:!0,deep:!0}),(t,i)=>(a(),n(o(x),{show:T.value,bodyStyle:{height:Z.value,overflowY:"auto"},width:X.value,maskClosable:!1,class:s(["classification-modal-block standard-modal standard-modal-white",{"modal-screen":W.value}]),closable:!1,centered:"",transitionName:e.transitionName,getContainer:e.getContainer,"positive-text":"保存","negative-text":"取消",to:"body",onPositiveClick:te,onNegativeClick:ie},{default:c((()=>[r(o(b),{style:u({width:X.value,height:Z.value,overflowY:"auto"}),title:"设置分类",bordered:!1,size:"huge",role:"dialog","aria-modal":"true"},d({"header-extra":c((()=>[p("div",U,[p("i",{onClick:ae,class:s(["iconfont-table-filter",W.value?"icon-table-filter-menzhenyishengzhanxitongtubiaozuixiaohua2":"icon-table-filter-menzhenyishengzhanxitongtubiaozuidahua"])},null,2),p("i",{onClick:ie,class:"iconfont-table-filter icon-table-filter-menzhenyishengzhanxitongtubiaoguanbi"})])])),default:c((()=>[p("div",B,[O,r(o(P),{class:"list-content",tag:"ul",list:R.value,"item-key":"sid",animation:"300"},{item:c((({element:t})=>[v(p("li",{class:s({checked:t.checked}),onClick:e=>{return i=t,void R.value.forEach((e=>{e.sid==i.sid?e.checked=!0:e.checked=!1}));var i}},[p("span",Y,[r(o(C),{mouseEnterDelay:1},{trigger:c((()=>[r(o(z),{component:o(I),size:"24"},null,8,["component"])])),default:c((()=>[m(" 拖拽调整顺序 ")])),_:1})]),p("span",{title:t.displayCategory,class:"list-content-item"},h(t.name),9,$),p("span",{title:t.name,class:"list-content-item"},h(t.displayCategory),9,A),p("span",H,[r(o(S),{"onUpdate:value":e=>{return i=t,void R.value.forEach((e=>{e.sid==i.sid&&(e.isShow=!e.isShow,e.isShow||(i.isDefault=!1))}));var i},size:"small",value:t.isShow},null,8,["onUpdate:value","value"])]),p("span",J,[r(o(S),{"onUpdate:value":e=>{var i;(i=t).isShow&&R.value.forEach((e=>{e.sid==i.sid?e.isDefault=!e.isDefault:e.isDefault=!1}))},size:"small",value:t.isDefault},null,8,["onUpdate:value","value"])]),p("span",q,[f(" 编辑 "),v(p("span",null,[r(o(C),null,{trigger:c((()=>[r(o(z),{component:o(E),onClick:y((e=>oe("edit",t,"编辑")),["prevent","stop"])},null,8,["component","onClick"])])),default:c((()=>[m(" 编辑 ")])),_:2},1024)],512),[[g,"other"==e.type||"search"==e.type&&t.isEdit]]),f(" 复制 "),v(p("span",null,[r(o(C),null,{trigger:c((()=>[r(o(z),{component:o(N),onClick:y((e=>oe("copy",t,"复制")),["prevent","stop"])},null,8,["component","onClick"])])),default:c((()=>[m(" 复制 ")])),_:2},1024)],512),[[g,"search"==e.type||"other"==e.type]]),f(" 删除 "),t.isEdit?(a(),w("span",G,[r(o(_),{onPositiveClick:e=>oe("delItem",t,"删除")},{trigger:c((()=>[r(o(z),null,{default:c((()=>[K])),_:1})])),default:c((()=>[m(" 是否确认删除? ")])),_:2},1032,["onPositiveClick"])])):f("v-if",!0)])],10,j),[[g,"line"!=t.type]])])),_:1},8,["list"])])])),_:2},["search"==e.type?{name:"footer",fn:c((()=>[p("div",V,[p("div",null,[o(ee)?(a(),n(o(_),{key:0,placement:"top-start","positive-text":"确认","negative-text":"取消",onPositiveClick:ne},{trigger:c((()=>[r(o(D),null,{default:c((()=>[m("恢复默认设置")])),_:1})])),default:c((()=>[m(" 确认要恢复系统默认设置吗? ")])),_:1})):f("v-if",!0)]),p("div",null,[r(o(D),{onClick:ie},{default:c((()=>[m("取消")])),_:1}),k(t.$slots,"add"),r(o(D),{type:"info",onClick:te},{default:c((()=>[m("保存")])),_:1})])])])),key:"0"}:void 0]),1032,["style"])])),_:3},8,["show","bodyStyle","width","class","transitionName","getContainer"]))}});export{L as default};
1
+ import{defineComponent as e,ref as t,inject as i,watch as l,openBlock as a,createBlock as n,unref as o,normalizeClass as s,withCtx as c,createVNode as r,normalizeStyle as u,createSlots as d,createElementVNode as p,withDirectives as v,createTextVNode as m,toDisplayString as h,createCommentVNode as f,withModifiers as y,vShow as g,createElementBlock as w,renderSlot as k}from"vue";import{NModal as x,NCard as b,NTooltip as C,NIcon as z,NSwitch as S,NPopconfirm as _,NButton as D}from"naive-ui";import{ReorderTwo as I,Brush as E,DocumentOutline as N}from"@vicons/ionicons5";import P from"../../../../../shared/components/VueDraggable/src/vuedraggable.js";import{root_isShowResetButton as F}from"../../const/index.js";import{cloneDeep as M}from"lodash-es";const U={class:"svg-wrap"},V={class:"flex_between"},B={class:"table-modal-list"},O=p("div",{class:"list-title"},[p("span",{class:"list-title-item",style:{width:"6%"}}),p("span",{class:"list-title-item"}," 名称 "),p("span",{class:"list-title-item"}," 父类名称 "),p("span",{class:"list-title-item"}," 是否显示 "),p("span",{class:"list-title-item"}," 设置为默认 "),p("span",{class:"list-title-item"}," 操作 ")],-1),j=["onClick"],Y={class:"list-content-item",style:{width:"6%","text-align":"center",overflow:"initial"}},$=["title"],A=["title"],H={class:"list-content-item list-content-switch"},J={class:"list-content-item list-content-radio"},q={class:"list-content-item"},G={key:0},K=p("svg",{xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",viewBox:"0 0 32 32"},[p("path",{d:"M12 12h2v12h-2z",fill:"currentColor"}),p("path",{d:"M18 12h2v12h-2z",fill:"currentColor"}),p("path",{d:"M4 6v2h2v20a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8h2V6zm4 22V8h16v20z",fill:"currentColor"}),p("path",{d:"M12 2h8v2h-8z",fill:"currentColor"})],-1);var L=e({__name:"index",props:{visibleIn:{type:Boolean},loading:{type:Boolean},confirm:{type:Function},edit:{type:Function,defdault:()=>({})},copy:{type:Function,defdault:()=>({})},delItem:{type:Function,defdault:()=>({})},dataSource:{type:Array,default:()=>[]},type:{type:String,default:"search"},transitionName:{type:String},getContainer:{type:Function,default:()=>document.body}},emits:["handleOk","close","resetPopconfirm","finishSubmit"],setup(e,{emit:L}){const Q=e,R=t([]),T=t(Q.visibleIn),W=t(!1),X=t("other"==Q.type?"100%":"860px"),Z=t("654px"),ee=i(F);function te(){var e;Q.type&&(le(),L("handleOk","search"==(e=Q.type)||"other"==e?{id:"",tableId:"",setting:JSON.stringify(R.value.map((e=>({isDefault:e.isDefault,isShow:e.isShow,name:e.name,type:e.type,classifyId:e.sid}))))}:void 0))}function ie(){T.value=!1,le(),L("close")}function le(){X.value="860px",Z.value="654px",W.value=!1}function ae(){W.value=!W.value;let e=document.body.clientHeight;X.value="860px"===X.value?"100%":"860px",Z.value="654px"===Z.value?`${e}px`:"654px"}function ne(e){L("resetPopconfirm",e)}function oe(e,t,i){const l=Q[e];l&&l(t,i)}return l((()=>Q.visibleIn),(e=>{T.value=e})),l((()=>Q.dataSource),(e=>{R.value=M(e)}),{immediate:!0,deep:!0}),(t,i)=>(a(),n(o(x),{show:T.value,bodyStyle:{height:Z.value,overflowY:"auto"},width:X.value,maskClosable:!1,class:s(["classification-modal-block standard-modal standard-modal-white",{"modal-screen":W.value}]),closable:!1,centered:"",transitionName:e.transitionName,getContainer:e.getContainer,"positive-text":"保存","negative-text":"取消",onPositiveClick:te,onNegativeClick:ie},{default:c((()=>[r(o(b),{style:u({width:X.value,height:Z.value,overflowY:"auto"}),title:"设置分类",bordered:!1,size:"huge",role:"dialog","aria-modal":"true"},d({"header-extra":c((()=>[p("div",U,[p("i",{onClick:ae,class:s(["iconfont-table-filter",W.value?"icon-table-filter-menzhenyishengzhanxitongtubiaozuixiaohua2":"icon-table-filter-menzhenyishengzhanxitongtubiaozuidahua"])},null,2),p("i",{onClick:ie,class:"iconfont-table-filter icon-table-filter-menzhenyishengzhanxitongtubiaoguanbi"})])])),default:c((()=>[p("div",B,[O,r(o(P),{class:"list-content",tag:"ul",list:R.value,"item-key":"sid",animation:"300"},{item:c((({element:t})=>[v(p("li",{class:s({checked:t.checked}),onClick:e=>{return i=t,void R.value.forEach((e=>{e.sid==i.sid?e.checked=!0:e.checked=!1}));var i}},[p("span",Y,[r(o(C),{mouseEnterDelay:1},{trigger:c((()=>[r(o(z),{component:o(I),size:"24"},null,8,["component"])])),default:c((()=>[m(" 拖拽调整顺序 ")])),_:1})]),p("span",{title:t.displayCategory,class:"list-content-item"},h(t.name),9,$),p("span",{title:t.name,class:"list-content-item"},h(t.displayCategory),9,A),p("span",H,[r(o(S),{"onUpdate:value":e=>{return i=t,void R.value.forEach((e=>{e.sid==i.sid&&(e.isShow=!e.isShow,e.isShow||(i.isDefault=!1))}));var i},size:"small",value:t.isShow},null,8,["onUpdate:value","value"])]),p("span",J,[r(o(S),{"onUpdate:value":e=>{var i;(i=t).isShow&&R.value.forEach((e=>{e.sid==i.sid?e.isDefault=!e.isDefault:e.isDefault=!1}))},size:"small",value:t.isDefault},null,8,["onUpdate:value","value"])]),p("span",q,[f(" 编辑 "),v(p("span",null,[r(o(C),null,{trigger:c((()=>[r(o(z),{component:o(E),onClick:y((e=>oe("edit",t,"编辑")),["prevent","stop"])},null,8,["component","onClick"])])),default:c((()=>[m(" 编辑 ")])),_:2},1024)],512),[[g,"other"==e.type||"search"==e.type&&t.isEdit]]),f(" 复制 "),v(p("span",null,[r(o(C),null,{trigger:c((()=>[r(o(z),{component:o(N),onClick:y((e=>oe("copy",t,"复制")),["prevent","stop"])},null,8,["component","onClick"])])),default:c((()=>[m(" 复制 ")])),_:2},1024)],512),[[g,"search"==e.type||"other"==e.type]]),f(" 删除 "),t.isEdit?(a(),w("span",G,[r(o(_),{onPositiveClick:e=>oe("delItem",t,"删除")},{trigger:c((()=>[r(o(z),null,{default:c((()=>[K])),_:1})])),default:c((()=>[m(" 是否确认删除? ")])),_:2},1032,["onPositiveClick"])])):f("v-if",!0)])],10,j),[[g,"line"!=t.type]])])),_:1},8,["list"])])])),_:2},["search"==e.type?{name:"footer",fn:c((()=>[p("div",V,[p("div",null,[o(ee)?(a(),n(o(_),{key:0,placement:"top-start","positive-text":"确认","negative-text":"取消",onPositiveClick:ne},{trigger:c((()=>[r(o(D),null,{default:c((()=>[m("恢复默认设置")])),_:1})])),default:c((()=>[m(" 确认要恢复系统默认设置吗? ")])),_:1})):f("v-if",!0)]),p("div",null,[r(o(D),{onClick:ie},{default:c((()=>[m("取消")])),_:1}),k(t.$slots,"add"),r(o(D),{type:"info",onClick:te},{default:c((()=>[m("保存")])),_:1})])])])),key:"0"}:void 0]),1032,["style"])])),_:3},8,["show","bodyStyle","width","class","transitionName","getContainer"]))}});export{L as default};
@@ -1150,7 +1150,8 @@ declare const _default: import("vue").DefineComponent<{
1150
1150
  isMultiple: import("vue").ComputedRef<boolean>;
1151
1151
  dynamicOptionInfos: import("vue").ComputedRef<any>;
1152
1152
  isLastPage: import("vue").ComputedRef<boolean>;
1153
- valueCp: import("vue").ComputedRef<string | number | any[]>;
1153
+ originList: import("vue").ComputedRef<any>;
1154
+ valueCp: import("vue").ComputedRef<any>;
1154
1155
  isInitRequest: import("vue").ComputedRef<boolean>;
1155
1156
  setOptionActive: (selectIds: string[]) => void;
1156
1157
  handleUpdateSelect: (value: string[] | null) => void;
@@ -725,8 +725,8 @@ declare const _default: import("vue").DefineComponent<{
725
725
  showSeq: boolean;
726
726
  footerFlag: boolean;
727
727
  fieldDescribeMode: "column" | "tooltip";
728
- customColumns: FieldSetColumnItem[];
729
728
  showSearch: boolean;
729
+ customColumns: FieldSetColumnItem[];
730
730
  showSortPriority: boolean;
731
731
  showHeadFilter: boolean;
732
732
  }>;
@@ -1 +1 @@
1
- import{defineComponent as e,ref as t,computed as a,watch as l,openBlock as i,createElementBlock as n,Fragment as o,createVNode as u,unref as r,withCtx as s,createElementVNode as d,createCommentVNode as v,isRef as c,renderList as p,createBlock as f,resolveDynamicComponent as m,toDisplayString as h,renderSlot as b}from"vue";import{NModal as g,NInput as I,NCheckbox as k,NCheckboxGroup as x,NButton as y,NIcon as _,NSpace as w,NAvatar as S,NTag as j}from"naive-ui";import{AddOutline as U}from"@vicons/ionicons5";import{useState as A}from"../hooks/useState.js";import{listSort as C}from"../utils/index.js";import{union as V,unionBy as L,remove as G,isArray as T,uniqBy as z,cloneDeep as D}from"lodash-es";import{CHAT_TYPE as E}from"../constants/index.js";import{groupJoinApi as M,groupCreateApi as N}from"../api/index.js";import"trtc-sdk-v5";const O={class:"iho-chat-dialog__content iho-chat-add-wrapper"},P={key:0,class:"input-box"},$=d("span",null,"群名称:",-1),q={class:"transfer-box"},B={class:"transfer-box__left"},F={class:"user-list-box"},H={class:"transfer-box__right"},J={class:"checked-tag-box"};var K=e({__name:"ChatAdd",props:{title:{type:String,default:"添加新成员"},mode:{type:String,default:"select"},options:{type:Array},disabledIds:{type:Array,default:()=>[]},defaultValue:{type:Array}},emits:["comfirm"],setup(e,{emit:K}){const Q=e,{state:R}=A(),W=t(!1),X=t([]),Y=t([]),Z=t(""),ee=t([]),te=a((()=>V(Q.disabledIds,[R.userInfo.id]))),ae=a((()=>{var e,t;return(null==(e=R.sessionList)?void 0:e.length)?null==(t=C(R.sessionList).filter((e=>e.chatType===E.SINGLE)))?void 0:t.map((e=>({id:e.receiver,name:e.name,avatar:e.avatar}))):[]})),le=a((()=>X.value.length?X.value.map((e=>e.id)):[])),ie=a((()=>"create"===Q.mode?le.value.length<3:le.value.length<1)),ne=a({get:()=>ee.value.length===Y.value.filter((e=>!e.disabled)).length,set(e){const t=Y.value.filter((e=>!e.disabled));ee.value=e?t.map((e=>e.id)):[],e?X.value=L(X.value,t,"id"):G(X.value,(e=>t.map((e=>e.id)).includes(e.id)))}});async function oe(){switch(Q.mode){case"create":await N({creator:R.userInfo.id,memberIdSet:le.value,name:Z.value,orgId:R.orgId});break;case"join":await M({groupId:R.currentSessionItem.receiver,operator:R.userInfo.id,memberIdSet:le.value}),R.currentGroupUser.push(Y.value.filter((e=>le.value.includes(e.value))));break;default:K("comfirm",le.value)}W.value=!1}function ue(e,t){if("check"===t.actionType){const e=Y.value.find((e=>e.id===t.value));X.value.push(e)}else G(X.value,(e=>e.id===t.value))}function re(){return X.value.length>0?X.value.map((e=>u(j,{bordered:!1,closable:e.id!==R.userInfo.id,disabled:te.value.includes(e.id),onClose:()=>{return t=e.id,G(X.value,(e=>e.id===t)),void G(ee.value,(e=>e===t));var t}},{avatar:()=>u(S,{round:!0,src:e.avatar},null),default:()=>e.name}))):null}return l((()=>W.value),(e=>{if(!e)return;const t=T(Q.options)&&Q.options.length?Q.options:ae.value;Y.value=z(t,"id").map((e=>{var t;return{...e,disabled:null==(t=te.value)?void 0:t.includes(e.id)}})),T(Q.defaultValue)&&Q.defaultValue.length?X.value=D(Q.defaultValue):X.value=[]})),(t,a)=>(i(),n(o,null,[u(r(g),{preset:"dialog",title:e.title,"show-icon":!1,"auto-focus":!1,class:"iho-chat-dialog",show:W.value,"onUpdate:show":a[3]||(a[3]=e=>W.value=e),"negative-text":"取消","positive-text":"确定","positive-button-props":{disabled:r(ie)},onPositiveClick:oe},{default:s((()=>[d("div",O,["create"===e.mode?(i(),n("div",P,[$,u(r(I),{clearable:"",placeholder:"取个群名称方便后续搜索",value:Z.value,"onUpdate:value":a[0]||(a[0]=e=>Z.value=e),valueModifiers:{trim:!0}},null,8,["value"])])):v("v-if",!0),d("div",q,[d("div",B,[v(' <n-input placeholder="搜索">\r\n\t\t\t\t\t\t<template #prefix>\r\n\t\t\t\t\t\t\t<n-icon :component="SearchOutline" />\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</n-input> '),d("div",F,[u(r(k),{label:"全选",checked:r(ne),"onUpdate:checked":a[1]||(a[1]=e=>c(ne)?ne.value=e:null)},null,8,["checked"]),u(r(x),{value:ee.value,"onUpdate:value":[a[2]||(a[2]=e=>ee.value=e),ue]},{default:s((()=>[(i(!0),n(o,null,p(Y.value,(e=>(i(),f(r(k),{key:e.id,value:e.id,disabled:e.disabled},{default:s((()=>[(i(),f(m((()=>function({option:e}){return u(w,{align:"center",wrapItem:!1},{default:()=>[u(S,{src:e.avatar,round:!0,size:32},null),u("span",null,[e.name])]})}({option:e})))))])),_:2},1032,["value","disabled"])))),128))])),_:1},8,["value"])])]),d("div",H,[d("span",null,"已选择 "+h(r(le).length)+" 人",1),d("div",J,[(i(),f(m((()=>re()))))])])])])])),_:1},8,["title","show","positive-button-props"]),d("span",{class:"btn-wrapper",onClick:a[4]||(a[4]=e=>W.value=!0)},[b(t.$slots,"trigger",{},(()=>[u(r(y),{color:"#ffffff4D",class:"add-btn"},{icon:s((()=>[u(r(_),{component:r(U),color:"#fff"},null,8,["component"])])),_:1})]))])],64))}});export{K as default};
1
+ import{defineComponent as e,ref as t,computed as a,watch as l,openBlock as i,createElementBlock as n,Fragment as o,createVNode as u,unref as r,withCtx as s,createElementVNode as d,createCommentVNode as v,isRef as c,renderList as p,createBlock as f,resolveDynamicComponent as m,toDisplayString as h,renderSlot as b}from"vue";import{NModal as g,NInput as I,NCheckbox as k,NCheckboxGroup as x,NButton as y,NIcon as _,NSpace as w,NAvatar as S,NTag as j}from"naive-ui";import{AddOutline as U}from"@vicons/ionicons5";import{useState as A}from"../hooks/useState.js";import{listSort as C}from"../utils/index.js";import{union as V,unionBy as L,remove as G,isArray as T,uniqBy as z,cloneDeep as D}from"lodash-es";import{CHAT_TYPE as E}from"../constants/index.js";import{groupJoinApi as M,groupCreateApi as N}from"../api/index.js";import"trtc-sdk-v5";const O={class:"iho-chat-dialog__content iho-chat-add-wrapper"},P={key:0,class:"input-box"},$=d("span",null,"群名称:",-1),q={class:"transfer-box"},B={class:"transfer-box__left"},F={class:"user-list-box"},H={class:"transfer-box__right"},J={class:"checked-tag-box"};var K=e({__name:"ChatAdd",props:{title:{type:String,default:"添加新成员"},mode:{type:String,default:"select"},options:{type:Array},disabledIds:{type:Array,default:()=>[]},defaultValue:{type:Array}},emits:["comfirm"],setup(e,{emit:K}){const Q=e,{state:R}=A(),W=t(!1),X=t([]),Y=t([]),Z=t(""),ee=t([]),te=a((()=>V(Q.disabledIds,[R.userInfo.id]))),ae=a((()=>{var e,t;return(null==(e=R.sessionList)?void 0:e.length)?null==(t=C(R.sessionList).filter((e=>e.chatType===E.SINGLE)))?void 0:t.map((e=>({id:e.receiver,name:e.name,avatar:e.avatar}))):[]})),le=a((()=>X.value.length?X.value.map((e=>e.id)):[])),ie=a((()=>"create"===Q.mode?le.value.length<3:le.value.length<1)),ne=a({get:()=>ee.value.length===Y.value.filter((e=>!e.disabled)).length,set(e){const t=Y.value.filter((e=>!e.disabled));ee.value=e?t.map((e=>e.id)):[],e?X.value=L(X.value,t,"id"):G(X.value,(e=>t.map((e=>e.id)).includes(e.id)))}});async function oe(){switch(Q.mode){case"create":await N({creator:R.userInfo.id,memberIdSet:le.value,name:Z.value,orgId:R.orgId});break;case"join":await M({groupId:R.currentSessionItem.receiver,operator:R.userInfo.id,memberIdSet:le.value}),R.currentGroupUser.push(Y.value.filter((e=>le.value.includes(e.value))));break;default:K("comfirm",le.value)}W.value=!1}function ue(e,t){if("check"===t.actionType){const e=Y.value.find((e=>e.id===t.value));X.value.push(e)}else G(X.value,(e=>e.id===t.value))}function re(){return X.value.length>0?X.value.map((e=>u(j,{bordered:!1,closable:e.id!==R.userInfo.id,disabled:te.value.includes(e.id),onClose:()=>{return t=e.id,G(X.value,(e=>e.id===t)),void G(ee.value,(e=>e===t));var t}},{avatar:()=>u(S,{round:!0,src:e.avatar},null),default:()=>e.name}))):null}return l((()=>W.value),(e=>{if(!e)return;const t=T(Q.options)&&Q.options.length?Q.options:ae.value;Y.value=z(t,"id").map((e=>{var t;return{...e,disabled:null==(t=te.value)?void 0:t.includes(e.id)}})),T(Q.defaultValue)&&Q.defaultValue.length?X.value=D(Q.defaultValue):X.value=[]})),(t,a)=>(i(),n(o,null,[u(r(g),{preset:"dialog",title:e.title,"show-icon":!1,"auto-focus":!1,class:"iho-chat-dialog",show:W.value,"onUpdate:show":a[3]||(a[3]=e=>W.value=e),"negative-text":"取消","positive-text":"确定","positive-button-props":{disabled:r(ie)},onPositiveClick:oe},{default:s((()=>[d("div",O,["create"===e.mode?(i(),n("div",P,[$,u(r(I),{clearable:"",placeholder:"取个群名称方便后续搜索",value:Z.value,"onUpdate:value":a[0]||(a[0]=e=>Z.value=e),valueModifiers:{trim:!0}},null,8,["value"])])):v("v-if",!0),d("div",q,[d("div",B,[v(' <n-input placeholder="搜索">\n\t\t\t\t\t\t<template #prefix>\n\t\t\t\t\t\t\t<n-icon :component="SearchOutline" />\n\t\t\t\t\t\t</template>\n\t\t\t\t\t</n-input> '),d("div",F,[u(r(k),{label:"全选",checked:r(ne),"onUpdate:checked":a[1]||(a[1]=e=>c(ne)?ne.value=e:null)},null,8,["checked"]),u(r(x),{value:ee.value,"onUpdate:value":[a[2]||(a[2]=e=>ee.value=e),ue]},{default:s((()=>[(i(!0),n(o,null,p(Y.value,(e=>(i(),f(r(k),{key:e.id,value:e.id,disabled:e.disabled},{default:s((()=>[(i(),f(m((()=>function({option:e}){return u(w,{align:"center",wrapItem:!1},{default:()=>[u(S,{src:e.avatar,round:!0,size:32},null),u("span",null,[e.name])]})}({option:e})))))])),_:2},1032,["value","disabled"])))),128))])),_:1},8,["value"])])]),d("div",H,[d("span",null,"已选择 "+h(r(le).length)+" 人",1),d("div",J,[(i(),f(m((()=>re()))))])])])])])),_:1},8,["title","show","positive-button-props"]),d("span",{class:"btn-wrapper",onClick:a[4]||(a[4]=e=>W.value=!0)},[b(t.$slots,"trigger",{},(()=>[u(r(y),{color:"#ffffff4D",class:"add-btn"},{icon:s((()=>[u(r(_),{component:r(U),color:"#fff"},null,8,["component"])])),_:1})]))])],64))}});export{K as default};
@@ -1 +1 @@
1
- import{defineComponent as e,ref as t,computed as n,watch as o,withDirectives as i,openBlock as s,createElementBlock as r,normalizeStyle as a,unref as c,createElementVNode as l,toDisplayString as u,createVNode as d,createCommentVNode as f,withCtx as m,Fragment as p,renderList as g,createBlock as y,createTextVNode as h,mergeProps as v,vShow as M}from"vue";import{NIcon as k,NPopover as C,NButton as _,NTooltip as x,NUpload as I,NUploadTrigger as b}from"naive-ui";import w from"./ChatAdd.vue.js";import{useState as T}from"../hooks/useState.js";import{useSession as z}from"../hooks/useSession.js";import{MESSAGE_TYPE as E,AV_STATUS as j}from"../constants/index.js";import"trtc-sdk-v5";import{simplifyMessage as R}from"../utils/index.js";import{emojis as q}from"../utils/emoji.js";import{uploadFileApi as L}from"../api/index.js";import{CloseCircleOutline as D,CallOutline as O,VideocamOutline as V}from"@vicons/ionicons5";import{xor as A,cloneDeep as F}from"lodash-es";import{uuidGenerator as K}from"../../../../shared/utils/index.js";const U={key:0,class:"reference-content-box"},S={class:"reference-content"},G=["innerHTML"],H={class:"tool-box"},N=l("i",{class:"chat--iconfont chat--icon-face"},null,-1),J={class:"emoji-box"},X=l("span",null,"默认表情",-1),B={class:"list-box"},P=["src"],Q=l("i",{class:"chat--iconfont chat--icon-good"},null,-1),W=l("i",{class:"chat--iconfont chat--icon-image"},null,-1),Y=l("i",{class:"chat--iconfont chat--icon-folder"},null,-1),Z={class:"btn-box"},$=l("span",{class:"tip"},"Enter 发送, Shift + Enter 换行",-1);var ee=e({__name:"ChatFooter",setup(e){const ee=t(),te=t(""),{state:ne,sendMessage:oe}=T(),{isGroupChat:ie}=z(ne),se=t(!1),re=n((()=>({options:ne.currentGroupUser,defaultValue:[ne.userInfo]})));function ae(e,t=[]){const n=K(),o=[],i=t.length>0;ne.showVideo||ne.showMultipleVideo||(i?(o.push(...A(t,[ne.userInfo.id])),Object.assign(ne.currentAVMsg,{callMode:"call",checkedIds:o,strRoomId:n,chatMessageType:e}),ne.showMultipleVideo=!0):oe({content:{chatMessageType:e,msg:"",avStatus:j.IN_CALL}}))}function ce(e){["Enter"].includes(e.key)&&(function(e){return e.altKey||e.ctrlKey||e.metaKey||e.shiftKey}(e)||(e.preventDefault(),de()))}function le(){var e,t;te.value=(null==(t=null==(e=ee.value)?void 0:e.innerText)?void 0:t.trim())||""}async function ue(e,t){const{file:n,name:o}=e.file,i=new FormData;i.append("sender",ne.userInfo.id),i.append("file",n);const s=await L(i);if(!s)return console.log("上传失败");fe({chatMessageType:t,msg:t===E.FILE?o:s,url:s})}function de(){if(!(te.value.length>2e3))return te.value?void fe({msg:te.value}):console.log("请输入内容");console.log("请控制在2000字以内")}async function fe(e){const{chatMessageType:t=E.TEXT,msg:n,url:o}=e,i={msg:n,chatMessageType:t};t===E.FILE&&(i.fileUrl=o),[E.TEXT,E.BLEND].includes(t)&&(ee.value.innerHTML="",te.value=""),ne.currentReferenceMsg&&(i.referenceContent=F(ne.currentReferenceMsg),ne.currentReferenceMsg=null),oe({content:i})}return o((()=>ne.currentReferenceMsg),(e=>{var t;e&&(null==(t=ee.value)||t.focus())})),(e,t)=>i((s(),r("section",{class:"chat-footer",style:a({cursor:c(ne).id?"default":"not-allowed"})},[c(ne).currentReferenceMsg?(s(),r("div",U,[l("div",S,[l("span",null,u(c(ne).currentReferenceMsg.senderName)+":",1),l("pre",{innerHTML:c(R)(c(ne).currentReferenceMsg.content)},null,8,G)]),d(c(k),{component:c(D),onClick:t[0]||(t[0]=()=>c(ne).currentReferenceMsg=null)},null,8,["component"])])):f("v-if",!0),l("div",H,[d(c(C),{show:se.value,"onUpdate:show":t[1]||(t[1]=e=>se.value=e),placement:"top",trigger:"click","show-arrow":!1,"display-directive":"show",delay:0},{trigger:m((()=>[d(c(_),{quaternary:"",size:"tiny"},{icon:m((()=>[N])),_:1})])),default:m((()=>[l("div",J,[f(' <span>最近使用</span>\r\n\t\t\t\t\t<div class="list-box">\r\n\t\t\t\t\t\t<template v-for="(img, index) in images" :key="index">\r\n\t\t\t\t\t\t\t<i>\r\n\t\t\t\t\t\t\t\t<img :src="img" />\r\n\t\t\t\t\t\t\t</i>\r\n\t\t\t\t\t\t</template>\r\n\t\t\t\t\t</div> '),X,l("div",B,[(s(!0),r(p,null,g(c(q).default,(([e,t])=>(s(),y(c(x),{key:e,"show-arrow":!1,trigger:"hover"},{trigger:m((()=>[d(c(_),{quaternary:"",size:"tiny",onClick:()=>function(e){se.value=!1,fe({chatMessageType:E.EMOJI,msg:e})}(e)},{icon:m((()=>[l("img",{src:t},null,8,P)])),_:2},1032,["onClick"])])),default:m((()=>[h(" "+u(e),1)])),_:2},1024)))),128))])])])),_:1},8,["show"]),d(c(_),{quaternary:"",size:"tiny",onClick:t[2]||(t[2]=()=>fe({chatMessageType:c(E).EMOJI,msg:0}))},{icon:m((()=>[Q])),_:1}),d(c(I),{abstract:"",multiple:"",accept:"image/*",onChange:t[3]||(t[3]=e=>ue(e,c(E).IMAGE))},{default:m((()=>[d(c(b),{abstract:""},{default:m((({handleClick:e})=>[d(c(_),{quaternary:"",size:"tiny",onClick:e},{icon:m((()=>[W])),_:2},1032,["onClick"])])),_:1})])),_:1}),d(c(I),{abstract:"",multiple:"",accept:"video/*,.pdf,.doc.docx,,.zip,.xlsx,.txt",onChange:t[4]||(t[4]=e=>ue(e,c(E).FILE))},{default:m((()=>[d(c(b),{abstract:""},{default:m((({handleClick:e})=>[d(c(_),{quaternary:"",size:"tiny",onClick:e},{icon:m((()=>[Y])),_:2},1032,["onClick"])])),_:1})])),_:1}),c(ie)?(s(),r(p,{key:0},[d(w,v(c(re),{onComfirm:t[5]||(t[5]=e=>ae(c(E).AUDIO,e))}),{trigger:m((()=>[d(c(_),{quaternary:"",size:"tiny"},{icon:m((()=>[d(c(k),{size:"18",component:c(O)},null,8,["component"])])),_:1})])),_:1},16),d(w,v(c(re),{onComfirm:t[6]||(t[6]=e=>ae(c(E).VIDEO,e))}),{trigger:m((()=>[d(c(_),{quaternary:"",size:"tiny"},{icon:m((()=>[d(c(k),{size:"20",component:c(V)},null,8,["component"])])),_:1})])),_:1},16)],64)):(s(),r(p,{key:1},[d(c(_),{quaternary:"",size:"tiny",onClick:t[7]||(t[7]=()=>ae(c(E).AUDIO))},{icon:m((()=>[d(c(k),{size:"18",component:c(O)},null,8,["component"])])),_:1}),d(c(_),{quaternary:"",size:"tiny",onClick:t[8]||(t[8]=()=>ae(c(E).VIDEO))},{icon:m((()=>[d(c(k),{size:"20",component:c(V)},null,8,["component"])])),_:1})],64))]),i(l("div",{ref_key:"inputRef",ref:ee,class:"input-box",contenteditable:"",onKeydown:ce,onInput:le},null,544),[[M,c(ne).id]]),l("div",Z,[$,d(c(_),{type:"primary",round:"",disabled:!te.value,onClick:de},{default:m((()=>[h("发送")])),_:1},8,["disabled"])])],4)),[[M,c(ne).id]])}});export{ee as default};
1
+ import{defineComponent as e,ref as t,computed as n,watch as o,withDirectives as i,openBlock as s,createElementBlock as r,normalizeStyle as a,unref as c,createElementVNode as l,toDisplayString as u,createVNode as d,createCommentVNode as f,withCtx as m,Fragment as p,renderList as g,createBlock as y,createTextVNode as h,mergeProps as v,vShow as M}from"vue";import{NIcon as k,NPopover as C,NButton as _,NTooltip as x,NUpload as I,NUploadTrigger as b}from"naive-ui";import w from"./ChatAdd.vue.js";import{useState as T}from"../hooks/useState.js";import{useSession as z}from"../hooks/useSession.js";import{MESSAGE_TYPE as E,AV_STATUS as j}from"../constants/index.js";import"trtc-sdk-v5";import{simplifyMessage as R}from"../utils/index.js";import{emojis as q}from"../utils/emoji.js";import{uploadFileApi as L}from"../api/index.js";import{CloseCircleOutline as D,CallOutline as O,VideocamOutline as V}from"@vicons/ionicons5";import{xor as A,cloneDeep as F}from"lodash-es";import{uuidGenerator as K}from"../../../../shared/utils/index.js";const U={key:0,class:"reference-content-box"},S={class:"reference-content"},G=["innerHTML"],H={class:"tool-box"},N=l("i",{class:"chat--iconfont chat--icon-face"},null,-1),J={class:"emoji-box"},X=l("span",null,"默认表情",-1),B={class:"list-box"},P=["src"],Q=l("i",{class:"chat--iconfont chat--icon-good"},null,-1),W=l("i",{class:"chat--iconfont chat--icon-image"},null,-1),Y=l("i",{class:"chat--iconfont chat--icon-folder"},null,-1),Z={class:"btn-box"},$=l("span",{class:"tip"},"Enter 发送, Shift + Enter 换行",-1);var ee=e({__name:"ChatFooter",setup(e){const ee=t(),te=t(""),{state:ne,sendMessage:oe}=T(),{isGroupChat:ie}=z(ne),se=t(!1),re=n((()=>({options:ne.currentGroupUser,defaultValue:[ne.userInfo]})));function ae(e,t=[]){const n=K(),o=[],i=t.length>0;ne.showVideo||ne.showMultipleVideo||(i?(o.push(...A(t,[ne.userInfo.id])),Object.assign(ne.currentAVMsg,{callMode:"call",checkedIds:o,strRoomId:n,chatMessageType:e}),ne.showMultipleVideo=!0):oe({content:{chatMessageType:e,msg:"",avStatus:j.IN_CALL}}))}function ce(e){["Enter"].includes(e.key)&&(function(e){return e.altKey||e.ctrlKey||e.metaKey||e.shiftKey}(e)||(e.preventDefault(),de()))}function le(){var e,t;te.value=(null==(t=null==(e=ee.value)?void 0:e.innerText)?void 0:t.trim())||""}async function ue(e,t){const{file:n,name:o}=e.file,i=new FormData;i.append("sender",ne.userInfo.id),i.append("file",n);const s=await L(i);if(!s)return console.log("上传失败");fe({chatMessageType:t,msg:t===E.FILE?o:s,url:s})}function de(){if(!(te.value.length>2e3))return te.value?void fe({msg:te.value}):console.log("请输入内容");console.log("请控制在2000字以内")}async function fe(e){const{chatMessageType:t=E.TEXT,msg:n,url:o}=e,i={msg:n,chatMessageType:t};t===E.FILE&&(i.fileUrl=o),[E.TEXT,E.BLEND].includes(t)&&(ee.value.innerHTML="",te.value=""),ne.currentReferenceMsg&&(i.referenceContent=F(ne.currentReferenceMsg),ne.currentReferenceMsg=null),oe({content:i})}return o((()=>ne.currentReferenceMsg),(e=>{var t;e&&(null==(t=ee.value)||t.focus())})),(e,t)=>i((s(),r("section",{class:"chat-footer",style:a({cursor:c(ne).id?"default":"not-allowed"})},[c(ne).currentReferenceMsg?(s(),r("div",U,[l("div",S,[l("span",null,u(c(ne).currentReferenceMsg.senderName)+":",1),l("pre",{innerHTML:c(R)(c(ne).currentReferenceMsg.content)},null,8,G)]),d(c(k),{component:c(D),onClick:t[0]||(t[0]=()=>c(ne).currentReferenceMsg=null)},null,8,["component"])])):f("v-if",!0),l("div",H,[d(c(C),{show:se.value,"onUpdate:show":t[1]||(t[1]=e=>se.value=e),placement:"top",trigger:"click","show-arrow":!1,"display-directive":"show",delay:0},{trigger:m((()=>[d(c(_),{quaternary:"",size:"tiny"},{icon:m((()=>[N])),_:1})])),default:m((()=>[l("div",J,[f(' <span>最近使用</span>\n\t\t\t\t\t<div class="list-box">\n\t\t\t\t\t\t<template v-for="(img, index) in images" :key="index">\n\t\t\t\t\t\t\t<i>\n\t\t\t\t\t\t\t\t<img :src="img" />\n\t\t\t\t\t\t\t</i>\n\t\t\t\t\t\t</template>\n\t\t\t\t\t</div> '),X,l("div",B,[(s(!0),r(p,null,g(c(q).default,(([e,t])=>(s(),y(c(x),{key:e,"show-arrow":!1,trigger:"hover"},{trigger:m((()=>[d(c(_),{quaternary:"",size:"tiny",onClick:()=>function(e){se.value=!1,fe({chatMessageType:E.EMOJI,msg:e})}(e)},{icon:m((()=>[l("img",{src:t},null,8,P)])),_:2},1032,["onClick"])])),default:m((()=>[h(" "+u(e),1)])),_:2},1024)))),128))])])])),_:1},8,["show"]),d(c(_),{quaternary:"",size:"tiny",onClick:t[2]||(t[2]=()=>fe({chatMessageType:c(E).EMOJI,msg:0}))},{icon:m((()=>[Q])),_:1}),d(c(I),{abstract:"",multiple:"",accept:"image/*",onChange:t[3]||(t[3]=e=>ue(e,c(E).IMAGE))},{default:m((()=>[d(c(b),{abstract:""},{default:m((({handleClick:e})=>[d(c(_),{quaternary:"",size:"tiny",onClick:e},{icon:m((()=>[W])),_:2},1032,["onClick"])])),_:1})])),_:1}),d(c(I),{abstract:"",multiple:"",accept:"video/*,.pdf,.doc.docx,,.zip,.xlsx,.txt",onChange:t[4]||(t[4]=e=>ue(e,c(E).FILE))},{default:m((()=>[d(c(b),{abstract:""},{default:m((({handleClick:e})=>[d(c(_),{quaternary:"",size:"tiny",onClick:e},{icon:m((()=>[Y])),_:2},1032,["onClick"])])),_:1})])),_:1}),c(ie)?(s(),r(p,{key:0},[d(w,v(c(re),{onComfirm:t[5]||(t[5]=e=>ae(c(E).AUDIO,e))}),{trigger:m((()=>[d(c(_),{quaternary:"",size:"tiny"},{icon:m((()=>[d(c(k),{size:"18",component:c(O)},null,8,["component"])])),_:1})])),_:1},16),d(w,v(c(re),{onComfirm:t[6]||(t[6]=e=>ae(c(E).VIDEO,e))}),{trigger:m((()=>[d(c(_),{quaternary:"",size:"tiny"},{icon:m((()=>[d(c(k),{size:"20",component:c(V)},null,8,["component"])])),_:1})])),_:1},16)],64)):(s(),r(p,{key:1},[d(c(_),{quaternary:"",size:"tiny",onClick:t[7]||(t[7]=()=>ae(c(E).AUDIO))},{icon:m((()=>[d(c(k),{size:"18",component:c(O)},null,8,["component"])])),_:1}),d(c(_),{quaternary:"",size:"tiny",onClick:t[8]||(t[8]=()=>ae(c(E).VIDEO))},{icon:m((()=>[d(c(k),{size:"20",component:c(V)},null,8,["component"])])),_:1})],64))]),i(l("div",{ref_key:"inputRef",ref:ee,class:"input-box",contenteditable:"",onKeydown:ce,onInput:le},null,544),[[M,c(ne).id]]),l("div",Z,[$,d(c(_),{type:"primary",round:"",disabled:!te.value,onClick:de},{default:m((()=>[h("发送")])),_:1},8,["disabled"])])],4)),[[M,c(ne).id]])}});export{ee as default};
@@ -1 +1 @@
1
- import{defineComponent as e,ref as t,computed as n,watch as s,openBlock as o,createElementBlock as i,normalizeClass as a,unref as r,normalizeStyle as c,createVNode as l,withCtx as m,Fragment as u,renderList as p,toDisplayString as d,createCommentVNode as f,createBlock as v,createElementVNode as y,withModifiers as g}from"vue";import{NImageGroup as T,NAvatar as h,NImage as M,NIcon as k,NButtonGroup as _,NButton as I}from"naive-ui";import{format as S}from"date-fns";import{getHistoryRecordApi as x,readMessageApi as j}from"../api/index.js";import{useState as E}from"../hooks/useState.js";import{useSession as L}from"../hooks/useSession.js";import{MESSAGE_TYPE as A}from"../constants/index.js";import"trtc-sdk-v5";import{isAudioOrVideoMessage as C,simplifyMessage as b,getAVTime as w,downloadFile as H}from"../utils/index.js";import{first as z,last as D}from"lodash-es";import O from"./PersonProfile.vue.js";import P from"./MessageTemplate.vue.js";import{emojis as N}from"../utils/emoji.js";import U from"./ContextMenu.js";import{useScrollLoading as q}from"../hooks/useScrollLoading.js";import{CallOutline as R,VideocamOutline as G,ChatbubbleEllipsesOutline as J}from"@vicons/ionicons5";const K={key:0,class:"time"},F={key:2,class:"message-box"},X={key:0,class:"content-box"},B={class:"name-box"},Q=["data-time"],V=["onContextmenu"],W={key:0,class:"reference-content"},Y=["innerHTML"],Z=["innerHTML"],$=["src"],ee={style:{"margin-left":"8px"}},te=["href","onClick"];var ne=e({__name:"ChatMain",setup(e){const ne=t(),{state:se,setMsgList:oe}=E(),{setCurrentSessionItem:ie,isGroupChat:ae}=L(se),re=t(),ce=t(!1),le=t({left:0,top:0}),me=t(),ue={page:0,hasMore:!0,lastSendTime:S(new Date,"yyyy-MM-dd HH:mm:ss")},pe=n((()=>({"--c-tip-top":ae.value?"1px":"-20px","--c-tip-gap":ae.value?"10px":"0px"})));async function de(){try{if(!ue.hasMore)return;ue.page++;const e=await x({sessionKey:se.currentSessionItem.sessionKey,page:ue.page,lastSendTime:ue.lastSendTime});if(!Array.isArray(e)||0===e.length)return ue.hasMore=!1,console.log("接口返回不是一个数组,或者没有更多消息了");const t=z(e).id;ue.lastSendTime=D(e).sendTime,oe(ue.page>1?[...e,...se.msgList]:e),1===ue.page&&se.currentSessionItem.unreadNum&&(await j({chatType:se.currentSessionItem.chatType,messageIdSet:[t],receiver:se.userInfo.id,sender:se.currentSessionItem.receiver}),ie({unreadNum:0}))}catch(e){console.log(e)}}function fe(e){const{chatMessageType:t,messageTemplate:n}=e.content;return t!==A.TEMPLATE||!!n}function ve(e,t){var n,s;const{chatMessageType:o,messageTemplate:i}=e.content;if(o===A.TEMPLATE)return"system"===t?2==(null==(n=null==i?void 0:i.setting)?void 0:n.style.id):2!=(null==(s=null==i?void 0:i.setting)?void 0:s.style.id)}function ye(e){var t,n;const{chatMessageType:s,messageTemplate:o}=e;return s===A.TEMPLATE&&3==(null==(n=null==(t=null==o?void 0:o.setting)?void 0:t.style)?void 0:n.id)}function ge(e,t){var n;const s=new Date(e.sendTime).getTime(),o=null==(n=se.msgList[t+1])?void 0:n.sendTime;if(o){return s-new Date(o).getTime()>3e5}return!0}return q(ne,(()=>{de()}),"top",(()=>{ce.value=!1})),s((()=>se.id),(e=>{e&&(Object.assign(ue,{page:0,hasMore:!0,lastSendTime:S(new Date,"yyyy-MM-dd HH:mm:ss")}),de())}),{immediate:!0}),s((()=>se.isAppendMsg),(e=>{e&&(oe([...se.msgList,se.currentMsg]),se.isAppendMsg=!1,async function(){var e,t,n;const s=null!=(t=null==(e=ne.value)?void 0:e.scrollHeight)?t:0;null==(n=ne.value)||n.scrollTo({top:s,behavior:"auto"})}())}),{immediate:!0}),(e,t)=>(o(),i("div",{class:a(["chat-main",{"home-bg":!r(se).id}]),ref_key:"chatMainRef",ref:ne,style:c(r(pe))},[l(r(T),{"show-toolbar-tooltip":""},{default:m((()=>[(o(!0),i(u,null,p(r(se).msgList,((e,t)=>(o(),i(u,{key:e.id},[fe(e)?(o(),i("div",{key:0,class:a(["message-item",{"message-item--mine":e.sender==r(se).userInfo.id}])},[ge(e,t)?(o(),i("p",K,d(e.__sendTime),1)):f("v-if",!0),ve(e,"system")?(o(),v(P,{key:1,data:e},null,8,["data"])):(o(),i("div",F,[l(O,{"user-id":e.sender},{trigger:m((()=>[l(r(h),{round:"",size:38,src:e.senderAvatar},null,8,["src"])])),_:2},1032,["user-id"]),e.content?(o(),i("div",X,[y("div",B,[y("span",{class:"name","data-time":e.__time},d(r(ae)?e.senderName:""),9,Q)]),y("div",{class:a(["content",{emoji:e.content.chatMessageType===r(A).EMOJI,template:e.content.chatMessageType===r(A).TEMPLATE,"template--3":ye(e.content),"audio-video":r(C)(e.content)}]),onContextmenu:g((t=>async function(e,t){}(0,e.id)),["prevent"])},[e.content.chatMessageType===r(A).TEXT?(o(),i(u,{key:0},[e.content.referenceContent?(o(),i("div",W,[y("span",null,d(e.content.referenceContent.senderName)+":",1),y("pre",{innerHTML:r(b)(e.content.referenceContent.content)},null,8,Y)])):f("v-if",!0),y("pre",{innerHTML:e.__content},null,8,Z)],64)):f("v-if",!0),e.content.chatMessageType===r(A).EMOJI?(o(),i("img",{key:1,src:r(N).findEmoji(e.__content)},null,8,$)):f("v-if",!0),ve(e,"template")?(o(),v(P,{key:2,data:e},null,8,["data"])):f("v-if",!0),e.content.chatMessageType===r(A).IMAGE?(o(),v(r(M),{key:3,width:"240",src:e.__content},null,8,["src"])):f("v-if",!0),r(C)(e.content)?(o(),i(u,{key:4},[l(r(k),{class:a({"is-audio":e.content.chatMessageType===r(A).AUDIO}),component:e.content.chatMessageType===r(A).AUDIO?r(R):r(G)},null,8,["class","component"]),y("span",ee,d(r(w)(e.__content)),1)],64)):f("v-if",!0),e.content.chatMessageType===r(A).FILE?(o(),i("a",{key:5,href:e.content.fileUrl,onClick:g((()=>r(H)(e.content.fileUrl,e.__content)),["prevent"])},d(e.__content),9,te)):f("v-if",!0),l(r(_),{class:"quick-menu"},{default:m((()=>[f(' <n-button quaternary size="tiny">\r\n\t\t\t\t\t\t\t\t\t\t\t<template #icon>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<i class="chat--iconfont chat--icon-face" />\r\n\t\t\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t\t\t</n-button> '),l(r(I),{quaternary:"",size:"tiny",onClick:()=>{return t=e,se.currentReferenceMsg=t,void Object.assign(se.currentReferenceMsg,{chatType:se.currentSessionItem.chatType,receiver:se.currentSessionItem.receiver,receiverAvatar:se.currentSessionItem.avatar,receiverName:se.currentSessionItem.name});var t}},{icon:m((()=>[l(r(k),{size:"17",component:r(J)},null,8,["component"])])),_:2},1032,["onClick"]),f(' <n-button quaternary size="tiny">\r\n\t\t\t\t\t\t\t\t\t\t\t<template #icon>\r\n\t\t\t\t\t\t\t\t\t\t\t\t<n-icon :component="EllipsisHorizontal" />\r\n\t\t\t\t\t\t\t\t\t\t\t</template>\r\n\t\t\t\t\t\t\t\t\t\t</n-button> ')])),_:2},1024)],42,V)])):f("v-if",!0)]))],2)):f("v-if",!0)],64)))),128))])),_:1}),l(r(U),{ref_key:"contextmenuRef",ref:re,show:ce.value,"onUpdate:show":t[0]||(t[0]=e=>ce.value=e),position:le.value,"msg-id":me.value},null,8,["show","position","msg-id"])],6))}});export{ne as default};
1
+ import{defineComponent as e,ref as t,computed as n,watch as s,openBlock as o,createElementBlock as i,normalizeClass as a,unref as r,normalizeStyle as c,createVNode as l,withCtx as m,Fragment as u,renderList as p,toDisplayString as d,createCommentVNode as f,createBlock as v,createElementVNode as y,withModifiers as g}from"vue";import{NImageGroup as T,NAvatar as h,NImage as M,NIcon as k,NButtonGroup as _,NButton as I}from"naive-ui";import{format as S}from"date-fns";import{getHistoryRecordApi as x,readMessageApi as j}from"../api/index.js";import{useState as E}from"../hooks/useState.js";import{useSession as L}from"../hooks/useSession.js";import{MESSAGE_TYPE as A}from"../constants/index.js";import"trtc-sdk-v5";import{isAudioOrVideoMessage as C,simplifyMessage as b,getAVTime as w,downloadFile as H}from"../utils/index.js";import{first as z,last as D}from"lodash-es";import O from"./PersonProfile.vue.js";import P from"./MessageTemplate.vue.js";import{emojis as N}from"../utils/emoji.js";import U from"./ContextMenu.js";import{useScrollLoading as q}from"../hooks/useScrollLoading.js";import{CallOutline as R,VideocamOutline as G,ChatbubbleEllipsesOutline as J}from"@vicons/ionicons5";const K={key:0,class:"time"},F={key:2,class:"message-box"},X={key:0,class:"content-box"},B={class:"name-box"},Q=["data-time"],V=["onContextmenu"],W={key:0,class:"reference-content"},Y=["innerHTML"],Z=["innerHTML"],$=["src"],ee={style:{"margin-left":"8px"}},te=["href","onClick"];var ne=e({__name:"ChatMain",setup(e){const ne=t(),{state:se,setMsgList:oe}=E(),{setCurrentSessionItem:ie,isGroupChat:ae}=L(se),re=t(),ce=t(!1),le=t({left:0,top:0}),me=t(),ue={page:0,hasMore:!0,lastSendTime:S(new Date,"yyyy-MM-dd HH:mm:ss")},pe=n((()=>({"--c-tip-top":ae.value?"1px":"-20px","--c-tip-gap":ae.value?"10px":"0px"})));async function de(){try{if(!ue.hasMore)return;ue.page++;const e=await x({sessionKey:se.currentSessionItem.sessionKey,page:ue.page,lastSendTime:ue.lastSendTime});if(!Array.isArray(e)||0===e.length)return ue.hasMore=!1,console.log("接口返回不是一个数组,或者没有更多消息了");const t=z(e).id;ue.lastSendTime=D(e).sendTime,oe(ue.page>1?[...e,...se.msgList]:e),1===ue.page&&se.currentSessionItem.unreadNum&&(await j({chatType:se.currentSessionItem.chatType,messageIdSet:[t],receiver:se.userInfo.id,sender:se.currentSessionItem.receiver}),ie({unreadNum:0}))}catch(e){console.log(e)}}function fe(e){const{chatMessageType:t,messageTemplate:n}=e.content;return t!==A.TEMPLATE||!!n}function ve(e,t){var n,s;const{chatMessageType:o,messageTemplate:i}=e.content;if(o===A.TEMPLATE)return"system"===t?2==(null==(n=null==i?void 0:i.setting)?void 0:n.style.id):2!=(null==(s=null==i?void 0:i.setting)?void 0:s.style.id)}function ye(e){var t,n;const{chatMessageType:s,messageTemplate:o}=e;return s===A.TEMPLATE&&3==(null==(n=null==(t=null==o?void 0:o.setting)?void 0:t.style)?void 0:n.id)}function ge(e,t){var n;const s=new Date(e.sendTime).getTime(),o=null==(n=se.msgList[t+1])?void 0:n.sendTime;if(o){return s-new Date(o).getTime()>3e5}return!0}return q(ne,(()=>{de()}),"top",(()=>{ce.value=!1})),s((()=>se.id),(e=>{e&&(Object.assign(ue,{page:0,hasMore:!0,lastSendTime:S(new Date,"yyyy-MM-dd HH:mm:ss")}),de())}),{immediate:!0}),s((()=>se.isAppendMsg),(e=>{e&&(oe([...se.msgList,se.currentMsg]),se.isAppendMsg=!1,async function(){var e,t,n;const s=null!=(t=null==(e=ne.value)?void 0:e.scrollHeight)?t:0;null==(n=ne.value)||n.scrollTo({top:s,behavior:"auto"})}())}),{immediate:!0}),(e,t)=>(o(),i("div",{class:a(["chat-main",{"home-bg":!r(se).id}]),ref_key:"chatMainRef",ref:ne,style:c(r(pe))},[l(r(T),{"show-toolbar-tooltip":""},{default:m((()=>[(o(!0),i(u,null,p(r(se).msgList,((e,t)=>(o(),i(u,{key:e.id},[fe(e)?(o(),i("div",{key:0,class:a(["message-item",{"message-item--mine":e.sender==r(se).userInfo.id}])},[ge(e,t)?(o(),i("p",K,d(e.__sendTime),1)):f("v-if",!0),ve(e,"system")?(o(),v(P,{key:1,data:e},null,8,["data"])):(o(),i("div",F,[l(O,{"user-id":e.sender},{trigger:m((()=>[l(r(h),{round:"",size:38,src:e.senderAvatar},null,8,["src"])])),_:2},1032,["user-id"]),e.content?(o(),i("div",X,[y("div",B,[y("span",{class:"name","data-time":e.__time},d(r(ae)?e.senderName:""),9,Q)]),y("div",{class:a(["content",{emoji:e.content.chatMessageType===r(A).EMOJI,template:e.content.chatMessageType===r(A).TEMPLATE,"template--3":ye(e.content),"audio-video":r(C)(e.content)}]),onContextmenu:g((t=>async function(e,t){}(0,e.id)),["prevent"])},[e.content.chatMessageType===r(A).TEXT?(o(),i(u,{key:0},[e.content.referenceContent?(o(),i("div",W,[y("span",null,d(e.content.referenceContent.senderName)+":",1),y("pre",{innerHTML:r(b)(e.content.referenceContent.content)},null,8,Y)])):f("v-if",!0),y("pre",{innerHTML:e.__content},null,8,Z)],64)):f("v-if",!0),e.content.chatMessageType===r(A).EMOJI?(o(),i("img",{key:1,src:r(N).findEmoji(e.__content)},null,8,$)):f("v-if",!0),ve(e,"template")?(o(),v(P,{key:2,data:e},null,8,["data"])):f("v-if",!0),e.content.chatMessageType===r(A).IMAGE?(o(),v(r(M),{key:3,width:"240",src:e.__content},null,8,["src"])):f("v-if",!0),r(C)(e.content)?(o(),i(u,{key:4},[l(r(k),{class:a({"is-audio":e.content.chatMessageType===r(A).AUDIO}),component:e.content.chatMessageType===r(A).AUDIO?r(R):r(G)},null,8,["class","component"]),y("span",ee,d(r(w)(e.__content)),1)],64)):f("v-if",!0),e.content.chatMessageType===r(A).FILE?(o(),i("a",{key:5,href:e.content.fileUrl,onClick:g((()=>r(H)(e.content.fileUrl,e.__content)),["prevent"])},d(e.__content),9,te)):f("v-if",!0),l(r(_),{class:"quick-menu"},{default:m((()=>[f(' <n-button quaternary size="tiny">\n\t\t\t\t\t\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t\t\t\t\t\t<i class="chat--iconfont chat--icon-face" />\n\t\t\t\t\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t\t\t\t\t</n-button> '),l(r(I),{quaternary:"",size:"tiny",onClick:()=>{return t=e,se.currentReferenceMsg=t,void Object.assign(se.currentReferenceMsg,{chatType:se.currentSessionItem.chatType,receiver:se.currentSessionItem.receiver,receiverAvatar:se.currentSessionItem.avatar,receiverName:se.currentSessionItem.name});var t}},{icon:m((()=>[l(r(k),{size:"17",component:r(J)},null,8,["component"])])),_:2},1032,["onClick"]),f(' <n-button quaternary size="tiny">\n\t\t\t\t\t\t\t\t\t\t\t<template #icon>\n\t\t\t\t\t\t\t\t\t\t\t\t<n-icon :component="EllipsisHorizontal" />\n\t\t\t\t\t\t\t\t\t\t\t</template>\n\t\t\t\t\t\t\t\t\t\t</n-button> ')])),_:2},1024)],42,V)])):f("v-if",!0)]))],2)):f("v-if",!0)],64)))),128))])),_:1}),l(r(U),{ref_key:"contextmenuRef",ref:re,show:ce.value,"onUpdate:show":t[0]||(t[0]=e=>ce.value=e),position:le.value,"msg-id":me.value},null,8,["show","position","msg-id"])],6))}});export{ne as default};
@@ -1 +1 @@
1
- import{defineComponent as e,ref as l,provide as a,computed as t,watch as i,onMounted as n,openBlock as o,createElementBlock as r,createElementVNode as u,Fragment as s,renderList as c,unref as d,normalizeClass as f,createCommentVNode as v,createVNode as m,withCtx as p,createTextVNode as h,toDisplayString as g,createBlock as k,withDirectives as b,vShow as y,isRef as C}from"vue";import{useMessage as _,NPopover as A,NModal as S,NCard as x,NIcon as F,NButton as q,NForm as w,NFormItem as j,NInput as I}from"naive-ui";import{CloseOutline as R,AddOutline as U}from"@vicons/ionicons5";import E from"../../table-filter/src/hooks/useMixins.js";import N from"../../table-filter/src/hooks/useRenderWidget.js";import O from"../../table-filter/src/hooks/useAdvanced.js";import P from"../../table-filter/src/components/render-widget/index.vue.js";import"moment/locale/zh-cn";import{cloneDeep as V}from"lodash-es";import{InjectionFilterApiConfig as z,InjectionFilterSearchConfig as D}from"../../table-filter/src/constants/index.js";const L={class:"quick-search-block quick-search-table"},T={class:"quick-row"},B={class:"quick-item-title"},Q={class:"quick-item-col"},M={class:"svg-wrap"},W={class:"flex_right"},G={class:"class-filter-content"},J={class:"quickSearch-content"},H=u("span",{class:"label"},"父类名称:",-1),K=["onDblclick","onClick"],X={class:"s-content"};var Y=e({__name:"index",props:{searchFieldList:{type:Array,default:()=>[]},quickSearchConfig:{type:Array,default:()=>[]},tableId:{type:String,default:""},filterApiConfig:{type:Object}},emits:["getFilterParam","onFilterSearch","clearQuickSearchConfig"],setup(e,{expose:Y,emit:Z}){const $=e,ee={classname:{required:!0,message:"请输入分类名称",trigger:["input","blur"]}},le=_(),{handleGetConfigApi:ae,outQuickSearchFn:te}=E(),{getRenderSearchConObj:ie,resetRenderWidgetValue:ne,isRender:oe}=N(),{transformData:re,getCacheDef:ue,transformParams:se}=O(),ce=l(null),de=l({classname:""});let fe=l(!1),ve=l([]),me=l([]),pe=l(!1),he=l("");const ge=l(),ke=l(),be=l([]);a(z,$.filterApiConfig),a(D,ve);let ye=t((()=>!!me.value.length&&me.value.some((e=>e.isAdd)))),Ce=t((()=>(e,l="name")=>e.alias||e[l]));function _e(){return function(e){if(!Array.isArray(e))return[];let l=[];for(let a=0;a<e.length;a++){let t=e[a];const i=ie(t);!l.find((e=>e.field_key===i.field_key))&&i&&l.push(i)}return l.filter((e=>e.value))}(ve.value)||[]}function Ae(){var e;null==(e=ce.value)||e.validate((e=>{var l;if(e)return;let a=_e();a.length||(a=[]);let t=null==(l=me.value.filter((e=>e.selected))[0])?void 0:l.value;!async function(e){var l;try{if(!await ae(e,"requestSaveTableCondiTion",{},$.filterApiConfig))return;fe.value=!1,null==(l=ce.value)||l.restoreValidation(),de.value.classname="",me.value=[],we()}catch(e){console.log(e)}}({tableId:$.tableId||"",setting:JSON.stringify({displayCategory:t,name:de.value.classname,conObj:a.map((e=>(e.unit&&(e.value=[]),e)))}),conditionList:"[]"})}))}function Se(e){setTimeout((()=>{ke.value&&ke.value.focus()}),100),pe.value=!0}function xe(){pe.value=!1,he.value&&(me.value.forEach((e=>e.selected=!1)),me.value.push({disabled:!0,value:he.value,selected:!0,isAdd:!0}),he.value="")}function Fe(e){!function(e){me.value.splice(e,1)}(e)}function qe(){fe.value=!1}function we(){je(ve.value),Z("clearQuickSearchConfig")}function je(e){Array.isArray(e)&&(e.forEach((e=>{ne(e)})),te.handlerInitSearchItem(ve.value))}return i((()=>$.searchFieldList),(e=>{e&&e.length>0&&function(){let e=V(re($.searchFieldList,{_filterApiConfig:$.filterApiConfig})).filter((e=>1==e.isShowSearch&&1!=e.filterExplicit))||[];ve.value=e||[],te.handlerInitSearchItem(ve.value)}()}),{immediate:!0,deep:!0}),i((()=>ve),(()=>{const e=_e()||[],l=se(e);Z("getFilterParam",e,l),be.value.forEach((e=>e(l)))}),{deep:!0}),n((()=>{const e=$.quickSearchConfig;if(e&&e.length>0)return l=e,void ve.value.forEach((e=>{var a,t;if(oe(e)){const i=l.find((l=>l.field_key===e.columnName));i&&(null==(a=i.value)?void 0:a.length)>0&&(e.value=ue(e,i.value),e.unit=null!=(t=i.unit)?t:"")}}));var l;je(ve.value)})),Y({openSaveToCalss:function(){let e=_e();e&&(e.length>0?fe.value=!0:le.warning("请设置搜索条件"))},clearData:we,onFilterSearch:function(){let e=_e()||[];const l=se(e);return Z("onFilterSearch",e,l,!1),ve.value},getFilterParams:function(){const e=_e()||[];return se(e)},setFilterParams:function(e){const l=e?Object.keys(e):[];l.length>0&&ve.value.forEach((a=>{var t;if(oe(a)&&l.includes(a.columnName)){const l=e[a.columnName];a.value=Array.isArray(l)&&!1===(null==(t=a.widgetCfg)?void 0:t.multiple)?l[0]:l}}))},getOriginalConfig:function(){return $.searchFieldList},onFilterChange:function(e){be.value.push(e)}}),(e,l)=>(o(),r("div",null,[u("div",L,[(o(!0),r(s,null,c(d(ve),(e=>(o(),r("div",{class:f(["quick-item",{"quick-block":e._isBlock}]),key:e.sid||e.columnName},[u("div",T,[v(" title "),u("div",B,[m(d(A),{trigger:"hover"},{trigger:p((()=>[h(g(d(Ce)(e,"title")),1)])),default:p((()=>[u("span",null,g(d(Ce)(e,"title")),1)])),_:2},1024)]),v(" content "),u("div",Q,[v(" 直接渲染组件 "),e.isRender?(o(),k(P,{key:0,cfg:e,modelValue:e.value,"onUpdate:modelValue":l=>e.value=l,unit:e.unit,"onUpdate:unit":l=>e.unit=l},null,8,["cfg","modelValue","onUpdate:modelValue","unit","onUpdate:unit"])):v("v-if",!0)])])],2)))),128))]),v(" 保存到分类的弹窗 "),m(d(S),{show:d(fe),maskClosable:!1,to:"body","positive-text":"确认","negative-text":"取消",onPositiveClick:Ae,onNegativeClick:qe,class:"classification-modal-block"},{default:p((()=>[m(d(x),{title:"设置筛选分类",style:{width:"520px"},bordered:!1,size:"huge",role:"dialog","aria-modal":"true"},{"header-extra":p((()=>[u("div",M,[m(d(F),{component:d(R),size:"24",onClick:qe},null,8,["component"])])])),footer:p((()=>[u("div",W,[m(d(q),{onClick:qe},{default:p((()=>[h("取消")])),_:1}),m(d(q),{type:"info",onClick:Ae},{default:p((()=>[h("确认")])),_:1})])])),default:p((()=>[u("div",G,[m(d(w),{ref_key:"formRef",ref:ce,"label-placement":"left",rules:ee,model:de.value},{default:p((()=>[m(d(j),{label:"筛选集名称",path:"classname"},{default:p((()=>[m(d(I),{value:de.value.classname,"onUpdate:value":l[0]||(l[0]=e=>de.value.classname=e),placeholder:"请输入分类名称",clearable:""},null,8,["value"])])),_:1})])),_:1},8,["model"]),u("div",J,[H,(o(!0),r(s,null,c(d(me),((e,l)=>(o(),r("div",{class:"parent-name",key:l,onDblclick:l=>function(e){e.disabled=!1,setTimeout((()=>{ge.value.length>0&&ge.value[0].focus()}),100)}(e),onClick:a=>function(e,l){e.disabled&&(me.value.forEach(((e,a)=>{a!==l&&(e.selected=!1)})),e.selected=!e.selected)}(e,l)},[e.disabled?(o(),r("div",{key:0,class:f(["edit-tag",{"edit-tag-select":e.selected&&e.disabled}])},[u("div",X,g(e.value),1),m(d(F),{component:d(R),class:"anticon-close",size:"20",onClick:e=>Fe(l)},null,8,["component","onClick"])],2)):(o(),k(d(I),{key:1,ref_for:!0,ref_key:"parentInputRef",ref:ge,class:"parent-input",style:{width:"100px"},value:e.value,"onUpdate:value":l=>e.value=l,disabled:e.disabled,onBlur:()=>e.disabled=!0,maxlength:20},null,8,["value","onUpdate:value","disabled","onBlur"]))],40,K)))),128)),d(ye)?v("v-if",!0):(o(),r(s,{key:0},[b(m(d(q),{dashed:"",icon:"plus",class:"ant-btn",onClick:Se},{default:p((()=>[m(d(F),{component:d(U),size:"20"},null,8,["component"]),h("添加分类 ")])),_:1},512),[[y,!d(pe)]]),b(m(d(I),{ref_key:"parentInputAddRef",ref:ke,class:"parent-input",style:{width:"100px"},value:d(he),"onUpdate:value":l[1]||(l[1]=e=>C(he)?he.value=e:he=e),valueModifiers:{trim:!0},onBlur:xe,maxlength:20},null,8,["value"]),[[y,d(pe)]])],64))])])])),_:1})])),_:1},8,["show"])]))}});export{Y as default};
1
+ import{defineComponent as e,ref as l,provide as a,computed as t,watch as i,onMounted as n,openBlock as o,createElementBlock as r,createElementVNode as u,Fragment as s,renderList as c,unref as d,normalizeClass as f,createCommentVNode as v,createVNode as m,withCtx as p,createTextVNode as h,toDisplayString as g,createBlock as k,withDirectives as b,vShow as y,isRef as C}from"vue";import{useMessage as _,NPopover as A,NModal as S,NCard as x,NIcon as F,NButton as q,NForm as w,NFormItem as j,NInput as I}from"naive-ui";import{CloseOutline as R,AddOutline as U}from"@vicons/ionicons5";import E from"../../table-filter/src/hooks/useMixins.js";import N from"../../table-filter/src/hooks/useRenderWidget.js";import O from"../../table-filter/src/hooks/useAdvanced.js";import P from"../../table-filter/src/components/render-widget/index.vue.js";import"moment/locale/zh-cn";import{cloneDeep as V}from"lodash-es";import{InjectionFilterApiConfig as z,InjectionFilterSearchConfig as D}from"../../table-filter/src/constants/index.js";const L={class:"quick-search-block quick-search-table"},T={class:"quick-row"},B={class:"quick-item-title"},Q={class:"quick-item-col"},M={class:"svg-wrap"},W={class:"flex_right"},G={class:"class-filter-content"},J={class:"quickSearch-content"},H=u("span",{class:"label"},"父类名称:",-1),K=["onDblclick","onClick"],X={class:"s-content"};var Y=e({__name:"index",props:{searchFieldList:{type:Array,default:()=>[]},quickSearchConfig:{type:Array,default:()=>[]},tableId:{type:String,default:""},filterApiConfig:{type:Object}},emits:["getFilterParam","onFilterSearch","clearQuickSearchConfig"],setup(e,{expose:Y,emit:Z}){const $=e,ee={classname:{required:!0,message:"请输入分类名称",trigger:["input","blur"]}},le=_(),{handleGetConfigApi:ae,outQuickSearchFn:te}=E(),{getRenderSearchConObj:ie,resetRenderWidgetValue:ne,isRender:oe}=N(),{transformData:re,getCacheDef:ue,transformParams:se}=O(),ce=l(null),de=l({classname:""});let fe=l(!1),ve=l([]),me=l([]),pe=l(!1),he=l("");const ge=l(),ke=l(),be=l([]);a(z,$.filterApiConfig),a(D,ve);let ye=t((()=>!!me.value.length&&me.value.some((e=>e.isAdd)))),Ce=t((()=>(e,l="name")=>e.alias||e[l]));function _e(){return function(e){if(!Array.isArray(e))return[];let l=[];for(let a=0;a<e.length;a++){let t=e[a];const i=ie(t);!l.find((e=>e.field_key===i.field_key))&&i&&l.push(i)}return l.filter((e=>e.value))}(ve.value)||[]}function Ae(){var e;null==(e=ce.value)||e.validate((e=>{var l;if(e)return;let a=_e();a.length||(a=[]);let t=null==(l=me.value.filter((e=>e.selected))[0])?void 0:l.value;!async function(e){var l;try{if(!await ae(e,"requestSaveTableCondiTion",{},$.filterApiConfig))return;fe.value=!1,null==(l=ce.value)||l.restoreValidation(),de.value.classname="",me.value=[],we()}catch(e){console.log(e)}}({tableId:$.tableId||"",setting:JSON.stringify({displayCategory:t,name:de.value.classname,conObj:a.map((e=>(e.unit&&(e.value=[]),e)))}),conditionList:"[]"})}))}function Se(e){setTimeout((()=>{ke.value&&ke.value.focus()}),100),pe.value=!0}function xe(){pe.value=!1,he.value&&(me.value.forEach((e=>e.selected=!1)),me.value.push({disabled:!0,value:he.value,selected:!0,isAdd:!0}),he.value="")}function Fe(e){!function(e){me.value.splice(e,1)}(e)}function qe(){fe.value=!1}function we(){je(ve.value),Z("clearQuickSearchConfig")}function je(e){Array.isArray(e)&&(e.forEach((e=>{ne(e)})),te.handlerInitSearchItem(ve.value))}return i((()=>$.searchFieldList),(e=>{e&&e.length>0&&function(){let e=V(re($.searchFieldList,{_filterApiConfig:$.filterApiConfig})).filter((e=>1==e.isShowSearch&&1!=e.filterExplicit))||[];ve.value=e||[],te.handlerInitSearchItem(ve.value)}()}),{immediate:!0,deep:!0}),i((()=>ve),(()=>{const e=_e()||[],l=se(e);Z("getFilterParam",e,l),be.value.forEach((e=>e(l)))}),{deep:!0}),n((()=>{const e=$.quickSearchConfig;if(e&&e.length>0)return l=e,void ve.value.forEach((e=>{var a,t;if(oe(e)){const i=l.find((l=>l.field_key===e.columnName));i&&(null==(a=i.value)?void 0:a.length)>0&&(e.value=ue(e,i.value),e.unit=null!=(t=i.unit)?t:"")}}));var l;je(ve.value)})),Y({openSaveToCalss:function(){let e=_e();e&&(e.length>0?fe.value=!0:le.warning("请设置搜索条件"))},clearData:we,onFilterSearch:function(){let e=_e()||[];const l=se(e);return Z("onFilterSearch",e,l,!1),ve.value},getFilterParams:function(){const e=_e()||[];return se(e)},setFilterParams:function(e){const l=e?Object.keys(e):[];l.length>0&&ve.value.forEach((a=>{var t;if(oe(a)&&l.includes(a.columnName)){const l=e[a.columnName];a.value=Array.isArray(l)&&!1===(null==(t=a.widgetCfg)?void 0:t.multiple)?l[0]:l}}))},getOriginalConfig:function(){return $.searchFieldList},onFilterChange:function(e){be.value.push(e)}}),(e,l)=>(o(),r("div",null,[u("div",L,[(o(!0),r(s,null,c(d(ve),(e=>(o(),r("div",{class:f(["quick-item",{"quick-block":e._isBlock}]),key:e.sid||e.columnName},[u("div",T,[v(" title "),u("div",B,[m(d(A),{trigger:"hover"},{trigger:p((()=>[h(g(d(Ce)(e,"title")),1)])),default:p((()=>[u("span",null,g(d(Ce)(e,"title")),1)])),_:2},1024)]),v(" content "),u("div",Q,[v(" 直接渲染组件 "),e.isRender?(o(),k(P,{key:0,cfg:e,modelValue:e.value,"onUpdate:modelValue":l=>e.value=l,unit:e.unit,"onUpdate:unit":l=>e.unit=l},null,8,["cfg","modelValue","onUpdate:modelValue","unit","onUpdate:unit"])):v("v-if",!0)])])],2)))),128))]),v(" 保存到分类的弹窗 "),m(d(S),{show:d(fe),maskClosable:!1,"positive-text":"确认","negative-text":"取消",onPositiveClick:Ae,onNegativeClick:qe,class:"classification-modal-block"},{default:p((()=>[m(d(x),{title:"设置筛选分类",style:{width:"520px"},bordered:!1,size:"huge",role:"dialog","aria-modal":"true"},{"header-extra":p((()=>[u("div",M,[m(d(F),{component:d(R),size:"24",onClick:qe},null,8,["component"])])])),footer:p((()=>[u("div",W,[m(d(q),{onClick:qe},{default:p((()=>[h("取消")])),_:1}),m(d(q),{type:"info",onClick:Ae},{default:p((()=>[h("确认")])),_:1})])])),default:p((()=>[u("div",G,[m(d(w),{ref_key:"formRef",ref:ce,"label-placement":"left",rules:ee,model:de.value},{default:p((()=>[m(d(j),{label:"筛选集名称",path:"classname"},{default:p((()=>[m(d(I),{value:de.value.classname,"onUpdate:value":l[0]||(l[0]=e=>de.value.classname=e),placeholder:"请输入分类名称",clearable:""},null,8,["value"])])),_:1})])),_:1},8,["model"]),u("div",J,[H,(o(!0),r(s,null,c(d(me),((e,l)=>(o(),r("div",{class:"parent-name",key:l,onDblclick:l=>function(e){e.disabled=!1,setTimeout((()=>{ge.value.length>0&&ge.value[0].focus()}),100)}(e),onClick:a=>function(e,l){e.disabled&&(me.value.forEach(((e,a)=>{a!==l&&(e.selected=!1)})),e.selected=!e.selected)}(e,l)},[e.disabled?(o(),r("div",{key:0,class:f(["edit-tag",{"edit-tag-select":e.selected&&e.disabled}])},[u("div",X,g(e.value),1),m(d(F),{component:d(R),class:"anticon-close",size:"20",onClick:e=>Fe(l)},null,8,["component","onClick"])],2)):(o(),k(d(I),{key:1,ref_for:!0,ref_key:"parentInputRef",ref:ge,class:"parent-input",style:{width:"100px"},value:e.value,"onUpdate:value":l=>e.value=l,disabled:e.disabled,onBlur:()=>e.disabled=!0,maxlength:20},null,8,["value","onUpdate:value","disabled","onBlur"]))],40,K)))),128)),d(ye)?v("v-if",!0):(o(),r(s,{key:0},[b(m(d(q),{dashed:"",icon:"plus",class:"ant-btn",onClick:Se},{default:p((()=>[m(d(F),{component:d(U),size:"20"},null,8,["component"]),h("添加分类 ")])),_:1},512),[[y,!d(pe)]]),b(m(d(I),{ref_key:"parentInputAddRef",ref:ke,class:"parent-input",style:{width:"100px"},value:d(he),"onUpdate:value":l[1]||(l[1]=e=>C(he)?he.value=e:he=e),valueModifiers:{trim:!0},onBlur:xe,maxlength:20},null,8,["value"]),[[y,d(pe)]])],64))])])])),_:1})])),_:1},8,["show"])]))}});export{Y as default};
@@ -1 +1 @@
1
- import{defineComponent as e,reactive as o,ref as t,watch as a,nextTick as n,openBlock as s,createElementBlock as i,normalizeClass as l,unref as r,createCommentVNode as m,Fragment as c,createBlock as u,mergeProps as d,createElementVNode as p,normalizeStyle as v,createVNode as f,withCtx as g,renderList as h,toDisplayString as k,createTextVNode as y,resolveDynamicComponent as w,renderSlot as S}from"vue";import b from"./hooks/use-noData.js";import{ScaleViewProps as C}from"./hooks/scaleview-props.js";import{getScaleViewState as D}from"./hooks/scaleview-state.js";import{ScaleViewComputed as E}from"./hooks/scaleview-computed.js";import{ScaleViewInit as j}from"./hooks/scaleview-init.js";import{ScaleViewSubmit as _}from"./hooks/scaleview-submit.js";import{ScaleViewMethods as x}from"./hooks/scaleview-methods.js";import{handleQueryParams as F,isCollection as P}from"./utils/judge-types.js";import{useEvent as q}from"./hooks/use-event.js";import"xe-utils";import"moment";import L from"../../../shared/utils/vexutilsExpand.js";import N from"./components/NoData.vue.js";import R from"./components/EvaluateCountdown.vue.js";import A from"./components/EvaluatePage.vue.js";import M from"./components/AnswerParse.vue.js";import O from"./components/ScaleScore.js";import T from"./components/DescribeContent.vue.js";import{NForm as I,NFormItem as B,NButton as J}from"naive-ui";const V=["innerHTML"],G={key:0,class:"required-text"},W={key:1,class:"evalute-label"},H=["onClick"],Q=p("i",{class:"scale-view-iconfont icon-scale-view-dengpao"},null,-1),$={key:1,class:"footer"};var z=e({__name:"ScaleView",props:C,emits:["onCloseSetting","submitNoRequest","onSubmit","startWriteScale"],setup(e,{expose:C,emit:z}){const K=e,{ScaleViewState:U}=D(),X=o(U),Y=t(null),Z=t(null),{noDataState:ee,setNoData:oe,resetNodata:te}=b(),ae=F(),{showEvatip:ne,isFormBoldOpen:se,scaleStyle:ie,handlePageClass:le,isShowItem:re,handleShowQuestionNumber:me,hasScore:ce,isPreviewScale:ue,showEvaluateEntry:de,showEvaluateCoundownPage:pe,showScaleFooter:ve,isCancelBtn:fe,isSaveBtn:ge,showEvaluateLabel:he,showAnswerParse:ke,propsConfig:ye,evaluatePageProps:we,evaluateCountdownProps:Se,isEvaluetaResSituation:be,disableEdit:Ce,desStart:De,desEnd:Ee,desContent:je}=E(K,X,{query:ae}),{initForm:_e}=j(K,X,z,{query:ae}),{submitMethod:xe,onSubmitData:Fe,onSubmitForm:Pe,handleScoreJson:qe}=_(K,X,z,{query:ae,formRef:Z,countdownDom:Y}),{nextLogicEvent:Le,handleDynamicDataRelation:Ne}=q(K,X),{scaleChange:Re,labelChange:Ae,vodFileList:Me,writeGuage:Oe,closeEvaluateCountdown:Te,showEvaTipModal:Ie}=x(K,X,z,{nextLogicEvent:Le,handleDynamicDataRelation:Ne,isPreviewScale:ue,submitMethod:xe,isEvaluetaResSituation:be,handleScoreJson:qe,disableEdit:Ce});(()=>{let{id:e}=ae;e&&(X.shareId=e)})();const Be=e=>{try{te(),_e(e)}catch(e){console.log(e,"--error"),X.spinning=!1,X.hasFrontAddress=!1,oe(!0,null==e?void 0:e.resultMsg,null==e?void 0:e.result)}};a((()=>K.ids),((e,o)=>{o?e.guage_id&&e.guage_id!=o.guage_id&&Be(e):e.guage_id&&Be(e)}),{immediate:!0}),a((()=>K.guageData),(e=>{if(!e||!Object.keys(e||{}).length)return;X.form={},X.formArray=[];const o=JSON.parse(JSON.stringify(e));n((()=>{_e(o)}))}),{immediate:!0});const Je=L.debounce(Fe,300),Ve=()=>{z("onCloseSetting")};return C({getScaleData:()=>({...X}),onSubmitForm:Pe,cancel:Ve}),(e,o)=>(s(),i("div",{class:l(["c-scale-view-block",{"c-scale-view-block-hasfooter":r(ve)}])},[m(' <template v-if="state.spinning">\r\n <n-spin :show="state.spinning" description="加载中"></n-spin>\r\n </template> '),X.spinning||X.hasFrontAddress?m("v-if",!0):(s(),i(c,{key:0},[r(ee).noData?(s(),u(N,{key:0,noDataImg:r(ee).noDataImg,noDataTip:r(ee).noDataTip},null,8,["noDataImg","noDataTip"])):(s(),i(c,{key:1},[r(de)?(s(),u(A,d({key:0},r(we),{onWriteGuage:r(Oe)}),null,16,["onWriteGuage"])):(s(),i(c,{key:1},[r(pe)?(s(),u(R,d({key:0,ref_key:"countdownDom",ref:Y},r(Se),{onCloseEvaluateCountdown:r(Te)}),null,16,["onCloseEvaluateCountdown"])):m("v-if",!0),p("div",{class:l(["scale-container",{"scale-container-nopadding":r(le),"scale-container-hasfooter":r(ve)}]),style:v(r(ie))},[r(ce)?(s(),u(r(O),{key:0,config:X.config,maxScore:X.maxScore},null,8,["config","maxScore"])):m("v-if",!0),r(De)?(s(),u(T,{key:1,content:r(je)},null,8,["content"])):m("v-if",!0),f(r(I),{ref_key:"formRef",ref:Z,model:X.form,rules:X.rules,"require-mark-placement":"left",class:"main"},{default:g((()=>[(s(!0),i(c,null,h(X.formArray,((e,o)=>(s(),i(c,{key:(e.id||e.seq)+o},[r(re)(e)?(s(),u(r(B),{key:0,path:e.val_key,"show-label":!r(P)(e.type),class:"c-scle-form-item"},{label:g((()=>[p("span",{class:l({"scale-label-required":r(se)(e)}),innerHTML:r(me)(e)},null,10,V),r(se)(e)?(s(),i("span",G,"(必填)")):m("v-if",!0),r(he)(e)?(s(),i("span",W,k(r(he)(e)),1)):m("v-if",!0),r(ne)(e)?(s(),i("span",{key:2,class:"evalute-tip",onClick:o=>r(Ie)(e)},[Q,y(" 查看提示 ")],8,H)):m("v-if",!0)])),default:g((()=>[(s(),u(w(e.renderCom),d(r(ye)(e,o),{key:(e.id||e.seq)+o,onScaleChange:r(Re),onOnChange:o=>r(Ae)(o,e),onVodFileList:r(Me)}),null,16,["onScaleChange","onOnChange","onVodFileList"])),r(ke)(e)?(s(),u(M,{key:0,item:e},null,8,["item"])):m("v-if",!0)])),_:2},1032,["path","show-label"])):m("v-if",!0)],64)))),128))])),_:1},8,["model","rules"]),r(Ee)?(s(),u(T,{key:2,content:r(je)},null,8,["content"])):m("v-if",!0)],6),r(ve)?(s(),i("div",$,[m(" 分享的链接 隐藏取消按钮 "),r(fe)?(s(),u(r(J),{key:0,onClick:Ve},{default:g((()=>[y("取消")])),_:1})):m("v-if",!0),r(ge)?(s(),u(r(J),{key:1,onClick:r(Je),disabled:X.banSubmit,type:"primary"},{default:g((()=>[y(" 保存 ")])),_:1},8,["onClick","disabled"])):m("v-if",!0),S(e.$slots,"extendBtn")])):m("v-if",!0)],64))],64))],64))],2))}});export{z as default};
1
+ import{defineComponent as e,reactive as o,ref as t,watch as a,nextTick as n,openBlock as s,createElementBlock as i,normalizeClass as l,unref as r,createCommentVNode as m,Fragment as c,createBlock as u,mergeProps as d,createElementVNode as p,normalizeStyle as v,createVNode as f,withCtx as g,renderList as h,toDisplayString as k,createTextVNode as y,resolveDynamicComponent as w,renderSlot as S}from"vue";import b from"./hooks/use-noData.js";import{ScaleViewProps as C}from"./hooks/scaleview-props.js";import{getScaleViewState as D}from"./hooks/scaleview-state.js";import{ScaleViewComputed as E}from"./hooks/scaleview-computed.js";import{ScaleViewInit as j}from"./hooks/scaleview-init.js";import{ScaleViewSubmit as _}from"./hooks/scaleview-submit.js";import{ScaleViewMethods as x}from"./hooks/scaleview-methods.js";import{handleQueryParams as F,isCollection as P}from"./utils/judge-types.js";import{useEvent as q}from"./hooks/use-event.js";import"xe-utils";import"moment";import L from"../../../shared/utils/vexutilsExpand.js";import N from"./components/NoData.vue.js";import R from"./components/EvaluateCountdown.vue.js";import A from"./components/EvaluatePage.vue.js";import M from"./components/AnswerParse.vue.js";import O from"./components/ScaleScore.js";import T from"./components/DescribeContent.vue.js";import{NForm as I,NFormItem as B,NButton as J}from"naive-ui";const V=["innerHTML"],G={key:0,class:"required-text"},W={key:1,class:"evalute-label"},H=["onClick"],Q=p("i",{class:"scale-view-iconfont icon-scale-view-dengpao"},null,-1),$={key:1,class:"footer"};var z=e({__name:"ScaleView",props:C,emits:["onCloseSetting","submitNoRequest","onSubmit","startWriteScale"],setup(e,{expose:C,emit:z}){const K=e,{ScaleViewState:U}=D(),X=o(U),Y=t(null),Z=t(null),{noDataState:ee,setNoData:oe,resetNodata:te}=b(),ae=F(),{showEvatip:ne,isFormBoldOpen:se,scaleStyle:ie,handlePageClass:le,isShowItem:re,handleShowQuestionNumber:me,hasScore:ce,isPreviewScale:ue,showEvaluateEntry:de,showEvaluateCoundownPage:pe,showScaleFooter:ve,isCancelBtn:fe,isSaveBtn:ge,showEvaluateLabel:he,showAnswerParse:ke,propsConfig:ye,evaluatePageProps:we,evaluateCountdownProps:Se,isEvaluetaResSituation:be,disableEdit:Ce,desStart:De,desEnd:Ee,desContent:je}=E(K,X,{query:ae}),{initForm:_e}=j(K,X,z,{query:ae}),{submitMethod:xe,onSubmitData:Fe,onSubmitForm:Pe,handleScoreJson:qe}=_(K,X,z,{query:ae,formRef:Z,countdownDom:Y}),{nextLogicEvent:Le,handleDynamicDataRelation:Ne}=q(K,X),{scaleChange:Re,labelChange:Ae,vodFileList:Me,writeGuage:Oe,closeEvaluateCountdown:Te,showEvaTipModal:Ie}=x(K,X,z,{nextLogicEvent:Le,handleDynamicDataRelation:Ne,isPreviewScale:ue,submitMethod:xe,isEvaluetaResSituation:be,handleScoreJson:qe,disableEdit:Ce});(()=>{let{id:e}=ae;e&&(X.shareId=e)})();const Be=e=>{try{te(),_e(e)}catch(e){console.log(e,"--error"),X.spinning=!1,X.hasFrontAddress=!1,oe(!0,null==e?void 0:e.resultMsg,null==e?void 0:e.result)}};a((()=>K.ids),((e,o)=>{o?e.guage_id&&e.guage_id!=o.guage_id&&Be(e):e.guage_id&&Be(e)}),{immediate:!0}),a((()=>K.guageData),(e=>{if(!e||!Object.keys(e||{}).length)return;X.form={},X.formArray=[];const o=JSON.parse(JSON.stringify(e));n((()=>{_e(o)}))}),{immediate:!0});const Je=L.debounce(Fe,300),Ve=()=>{z("onCloseSetting")};return C({getScaleData:()=>({...X}),onSubmitForm:Pe,cancel:Ve}),(e,o)=>(s(),i("div",{class:l(["c-scale-view-block",{"c-scale-view-block-hasfooter":r(ve)}])},[m(' <template v-if="state.spinning">\n <n-spin :show="state.spinning" description="加载中"></n-spin>\n </template> '),X.spinning||X.hasFrontAddress?m("v-if",!0):(s(),i(c,{key:0},[r(ee).noData?(s(),u(N,{key:0,noDataImg:r(ee).noDataImg,noDataTip:r(ee).noDataTip},null,8,["noDataImg","noDataTip"])):(s(),i(c,{key:1},[r(de)?(s(),u(A,d({key:0},r(we),{onWriteGuage:r(Oe)}),null,16,["onWriteGuage"])):(s(),i(c,{key:1},[r(pe)?(s(),u(R,d({key:0,ref_key:"countdownDom",ref:Y},r(Se),{onCloseEvaluateCountdown:r(Te)}),null,16,["onCloseEvaluateCountdown"])):m("v-if",!0),p("div",{class:l(["scale-container",{"scale-container-nopadding":r(le),"scale-container-hasfooter":r(ve)}]),style:v(r(ie))},[r(ce)?(s(),u(r(O),{key:0,config:X.config,maxScore:X.maxScore},null,8,["config","maxScore"])):m("v-if",!0),r(De)?(s(),u(T,{key:1,content:r(je)},null,8,["content"])):m("v-if",!0),f(r(I),{ref_key:"formRef",ref:Z,model:X.form,rules:X.rules,"require-mark-placement":"left",class:"main"},{default:g((()=>[(s(!0),i(c,null,h(X.formArray,((e,o)=>(s(),i(c,{key:(e.id||e.seq)+o},[r(re)(e)?(s(),u(r(B),{key:0,path:e.val_key,"show-label":!r(P)(e.type),class:"c-scle-form-item"},{label:g((()=>[p("span",{class:l({"scale-label-required":r(se)(e)}),innerHTML:r(me)(e)},null,10,V),r(se)(e)?(s(),i("span",G,"(必填)")):m("v-if",!0),r(he)(e)?(s(),i("span",W,k(r(he)(e)),1)):m("v-if",!0),r(ne)(e)?(s(),i("span",{key:2,class:"evalute-tip",onClick:o=>r(Ie)(e)},[Q,y(" 查看提示 ")],8,H)):m("v-if",!0)])),default:g((()=>[(s(),u(w(e.renderCom),d(r(ye)(e,o),{key:(e.id||e.seq)+o,onScaleChange:r(Re),onOnChange:o=>r(Ae)(o,e),onVodFileList:r(Me)}),null,16,["onScaleChange","onOnChange","onVodFileList"])),r(ke)(e)?(s(),u(M,{key:0,item:e},null,8,["item"])):m("v-if",!0)])),_:2},1032,["path","show-label"])):m("v-if",!0)],64)))),128))])),_:1},8,["model","rules"]),r(Ee)?(s(),u(T,{key:2,content:r(je)},null,8,["content"])):m("v-if",!0)],6),r(ve)?(s(),i("div",$,[m(" 分享的链接 隐藏取消按钮 "),r(fe)?(s(),u(r(J),{key:0,onClick:Ve},{default:g((()=>[y("取消")])),_:1})):m("v-if",!0),r(ge)?(s(),u(r(J),{key:1,onClick:r(Je),disabled:X.banSubmit,type:"primary"},{default:g((()=>[y(" 保存 ")])),_:1},8,["onClick","disabled"])):m("v-if",!0),S(e.$slots,"extendBtn")])):m("v-if",!0)],64))],64))],64))],2))}});export{z as default};
@@ -1 +1 @@
1
- import{defineComponent as e,ref as l,inject as t,computed as a,watch as i,openBlock as o,createBlock as n,unref as s,normalizeClass as d,withCtx as r,createVNode as u,normalizeStyle as c,createElementVNode as m,createTextVNode as h,renderSlot as p,isRef as f,toDisplayString as v,h as g}from"vue";import{useMessage as b,NModal as x,NCard as w,NButton as L,NCheckbox as y,NSelect as F,NCheckboxGroup as k,NPopover as I,NPopconfirm as A,NIcon as N}from"naive-ui";import{Trash as C}from"@vicons/ionicons5";import{InjectionExportApiConfig as _}from"../constants/index.js";import P from"../../../../shared/components/VueDraggable/src/vuedraggable.js";import S from"../hooks/useAsyncData.js";import{dragFieldCheckList as z}from"../tool.js";import{cloneDeep as E}from"lodash-es";const j={class:"svg-wrap"},H={class:"flex_right"},O=m("div",{class:"tip"},"提示:支持拖动调整字段顺序,字段导出顺序为从左到右,从上到下。",-1),$={class:"flex_between"},T=["title"];var U=e({__name:"ExportModal",props:{visible:{type:Boolean,default:!1},tableListId:{type:String,default:""},curProgram:{type:Object,default:()=>({})},programOptions:{type:Array,default:()=>[]},downLoadFieldList:{type:Array,default:()=>[]},showAllFieldList:{type:Array,default:()=>[]}},emits:["cancelModal","updateCurProgram","updateFieldCheckList","updateShowAllFieldList"],setup(e,{emit:U}){const K=e,M="default",D="860px",B="496px",V={class:"select-export-popover"},q=b(),{deleteTableListExportScheme:G,exportTableListScheme:J}=S(),Q=l(!1),R=l(D),W=l({maxHeight:B,height:B}),X=l(!1),Y=l(!0),Z=l([]),ee=t(_),le=a((()=>K.curProgram.schemeId));function te(){U("updateShowAllFieldList",K.showAllFieldList)}function ae({option:e}){return g("span",e.schemeName)}function ie(e){const l=[g(I,{trigger:"hover",duration:0},{default:()=>e.schemeName,trigger:()=>g("span",{class:"content"},e.schemeName)})],t=[g(A,{placement:"top-start",positiveText:"确认",negativeText:"取消",onPositiveClick:()=>function(e){const{schemeId:l}=K.curProgram;if(l===e.schemeId)return q.warning("当前正在使用该方案,请先切换其他方案再删除");!async function(e){if(!K.tableListId)return q.warning("请传入列表id");try{await G({id:K.tableListId,schemeId:e},ee)&&q.success("删除成功")}catch(e){q.error(`获取导出方案数据请求失败:${e}`)}}(e.schemeId)}(e)},{trigger:()=>g(N,{onclick:oe},{default:()=>g(C)}),default:()=>"确定删除该导出方案吗?"})],a=e.schemeId===M?[l]:[l,t];return g("div",{class:"flex-between"},a)}function oe(e){e.stopPropagation()}function ne(e){U("updateCurProgram",e)}function se(){!async function(){if(!K.tableListId)return q.warning("请传入列表id");if(Z.value.length<1)return q.warning("请至少勾选一个字段");try{const{schemeId:e}=K.curProgram,l=K.programOptions.find((l=>l.schemeId===e)),t={fieldKeys:z(K.showAllFieldList,Z.value),lastUsedSchemeName:l?l.schemeName:"",schemeId:l?l.schemeId:"",schemeName:l?l.schemeName:"",tableListId:K.tableListId};await J(t,ee)&&(q.success("导出成功"),re())}catch(e){q.error(`获取导出方案数据请求失败:${e}`)}}()}function de(e){var l,t,a;Y.value=!1,Z.value=e?(null==(l=K.showAllFieldList)?void 0:l.map((e=>e.columnName)))||[]:(null==(a=null==(t=K.showAllFieldList)?void 0:t.filter((e=>e.fixedExport)))?void 0:a.map((e=>e.columnName)))||[]}function re(){U("cancelModal"),R.value=D,W.value={height:B,maxHeight:B},Q.value=!1}function ue(){Q.value=!Q.value;let e=document.body.clientHeight;R.value===D?(R.value="100%",W.value.maxHeight=`${e}px`,W.value.height=`${e}px`):(R.value=D,W.value.maxHeight=B,W.value.height=B)}return i((()=>Z.value),(e=>{K.showAllFieldList.length>0&&(Y.value=e.length>0&&e.length<K.showAllFieldList.length,X.value=e.length===K.showAllFieldList.length,U("updateFieldCheckList",e))}),{immediate:!0}),i((()=>K.curProgram),(e=>{e&&function(e){const l=K.programOptions.find((l=>l.schemeId===e));if(l){let t=[];const a=K.downLoadFieldList.filter((e=>e.fixedExport)).map((e=>e.columnName)),i=l.fieldKeys.filter((e=>!a.includes(e)));if(Z.value=[...i,...a],e===M){const e=E(K.downLoadFieldList);return void U("updateShowAllFieldList",e)}Z.value.forEach((e=>{const l=K.downLoadFieldList.find((l=>l.columnName===e));l&&t.push(l)}));const o=K.downLoadFieldList.filter((e=>!Z.value.includes(e.columnName))),n=[...t,...o];U("updateShowAllFieldList",n)}}(e.schemeId)}),{immediate:!0}),(l,t)=>(o(),n(s(x),{class:d(["table-export-field-modal",{"modal-screen":Q.value}]),show:e.visible,maskClosable:!1,width:R.value,bodyStyle:W.value,closable:!1,to:"body",centered:"",onPositiveClick:se,onNegativeClick:re},{default:r((()=>[u(s(w),{style:c({width:R.value,...W.value}),title:"选择导出字段",bordered:!1,size:"huge",role:"dialog","aria-modal":"true"},{"header-extra":r((()=>[m("div",j,[m("i",{onClick:ue,class:d(["iconfont-table-export-field",Q.value?"icon-table-export-field-menzhenyishengzhanxitongtubiaozuixiaohua2":"icon-table-export-field-menzhenyishengzhanxitongtubiaozuidahua"])},null,2),m("i",{onClick:re,class:"iconfont-table-export-field icon-table-export-field-menzhenyishengzhanxitongtubiaoguanbi"})])])),footer:r((()=>[m("div",H,[u(s(L),{onClick:re},{default:r((()=>[h("取消")])),_:1}),p(l.$slots,"add"),u(s(L),{type:"info",onClick:se},{default:r((()=>[h("导出")])),_:1})])])),default:r((()=>[O,m("header",$,[u(s(y),{checked:X.value,"onUpdate:checked":[t[0]||(t[0]=e=>X.value=e),de],indeterminate:Y.value},{default:r((()=>[h(" 全选 ")])),_:1},8,["checked","indeterminate"]),u(s(F),{style:{width:"200px"},value:s(le),"onUpdate:value":[t[1]||(t[1]=e=>f(le)?le.value=e:null),ne],filterable:"","label-field":"schemeName","value-field":"schemeId","show-checkmark":!1,"render-label":ie,"render-tag":ae,"menu-props":V,options:e.programOptions},null,8,["value","options"])]),u(s(k),{value:Z.value,"onUpdate:value":t[2]||(t[2]=e=>Z.value=e)},{default:r((()=>[u(s(P),{class:"draggable-checkbox-list",list:e.showAllFieldList,animation:"300",itemKey:"columnName",onEnd:te},{item:r((({element:e})=>{var l;return[u(s(y),{disabled:e.fixedExport,class:d(Z.value.includes(e.columnName)?"":"checkbox-disabled"),value:e.columnName,label:null!=(l=e.alias)?l:e.title},{default:r((()=>{var l,t;return[m("span",{title:null!=(l=e.alias)?l:e.title},v(null!=(t=e.alias)?t:e.title),9,T)]})),_:2},1032,["disabled","class","value","label"])]})),_:1},8,["list"])])),_:1},8,["value"])])),_:3},8,["style"])])),_:3},8,["class","show","width","bodyStyle"]))}});export{U as default};
1
+ import{defineComponent as e,ref as l,inject as t,computed as a,watch as i,openBlock as o,createBlock as n,unref as s,normalizeClass as d,withCtx as r,createVNode as u,normalizeStyle as c,createElementVNode as m,createTextVNode as h,renderSlot as p,isRef as f,toDisplayString as v,h as g}from"vue";import{useMessage as b,NModal as x,NCard as w,NButton as L,NCheckbox as y,NSelect as F,NCheckboxGroup as k,NPopover as I,NPopconfirm as A,NIcon as N}from"naive-ui";import{Trash as C}from"@vicons/ionicons5";import{InjectionExportApiConfig as _}from"../constants/index.js";import P from"../../../../shared/components/VueDraggable/src/vuedraggable.js";import S from"../hooks/useAsyncData.js";import{dragFieldCheckList as z}from"../tool.js";import{cloneDeep as E}from"lodash-es";const j={class:"svg-wrap"},H={class:"flex_right"},O=m("div",{class:"tip"},"提示:支持拖动调整字段顺序,字段导出顺序为从左到右,从上到下。",-1),$={class:"flex_between"},T=["title"];var U=e({__name:"ExportModal",props:{visible:{type:Boolean,default:!1},tableListId:{type:String,default:""},curProgram:{type:Object,default:()=>({})},programOptions:{type:Array,default:()=>[]},downLoadFieldList:{type:Array,default:()=>[]},showAllFieldList:{type:Array,default:()=>[]}},emits:["cancelModal","updateCurProgram","updateFieldCheckList","updateShowAllFieldList"],setup(e,{emit:U}){const K=e,M="default",D="860px",B="496px",V={class:"select-export-popover"},q=b(),{deleteTableListExportScheme:G,exportTableListScheme:J}=S(),Q=l(!1),R=l(D),W=l({maxHeight:B,height:B}),X=l(!1),Y=l(!0),Z=l([]),ee=t(_),le=a((()=>K.curProgram.schemeId));function te(){U("updateShowAllFieldList",K.showAllFieldList)}function ae({option:e}){return g("span",e.schemeName)}function ie(e){const l=[g(I,{trigger:"hover",duration:0},{default:()=>e.schemeName,trigger:()=>g("span",{class:"content"},e.schemeName)})],t=[g(A,{placement:"top-start",positiveText:"确认",negativeText:"取消",onPositiveClick:()=>function(e){const{schemeId:l}=K.curProgram;if(l===e.schemeId)return q.warning("当前正在使用该方案,请先切换其他方案再删除");!async function(e){if(!K.tableListId)return q.warning("请传入列表id");try{await G({id:K.tableListId,schemeId:e},ee)&&q.success("删除成功")}catch(e){q.error(`获取导出方案数据请求失败:${e}`)}}(e.schemeId)}(e)},{trigger:()=>g(N,{onclick:oe},{default:()=>g(C)}),default:()=>"确定删除该导出方案吗?"})],a=e.schemeId===M?[l]:[l,t];return g("div",{class:"flex-between"},a)}function oe(e){e.stopPropagation()}function ne(e){U("updateCurProgram",e)}function se(){!async function(){if(!K.tableListId)return q.warning("请传入列表id");if(Z.value.length<1)return q.warning("请至少勾选一个字段");try{const{schemeId:e}=K.curProgram,l=K.programOptions.find((l=>l.schemeId===e)),t={fieldKeys:z(K.showAllFieldList,Z.value),lastUsedSchemeName:l?l.schemeName:"",schemeId:l?l.schemeId:"",schemeName:l?l.schemeName:"",tableListId:K.tableListId};await J(t,ee)&&(q.success("导出成功"),re())}catch(e){q.error(`获取导出方案数据请求失败:${e}`)}}()}function de(e){var l,t,a;Y.value=!1,Z.value=e?(null==(l=K.showAllFieldList)?void 0:l.map((e=>e.columnName)))||[]:(null==(a=null==(t=K.showAllFieldList)?void 0:t.filter((e=>e.fixedExport)))?void 0:a.map((e=>e.columnName)))||[]}function re(){U("cancelModal"),R.value=D,W.value={height:B,maxHeight:B},Q.value=!1}function ue(){Q.value=!Q.value;let e=document.body.clientHeight;R.value===D?(R.value="100%",W.value.maxHeight=`${e}px`,W.value.height=`${e}px`):(R.value=D,W.value.maxHeight=B,W.value.height=B)}return i((()=>Z.value),(e=>{K.showAllFieldList.length>0&&(Y.value=e.length>0&&e.length<K.showAllFieldList.length,X.value=e.length===K.showAllFieldList.length,U("updateFieldCheckList",e))}),{immediate:!0}),i((()=>K.curProgram),(e=>{e&&function(e){const l=K.programOptions.find((l=>l.schemeId===e));if(l){let t=[];const a=K.downLoadFieldList.filter((e=>e.fixedExport)).map((e=>e.columnName)),i=l.fieldKeys.filter((e=>!a.includes(e)));if(Z.value=[...i,...a],e===M){const e=E(K.downLoadFieldList);return void U("updateShowAllFieldList",e)}Z.value.forEach((e=>{const l=K.downLoadFieldList.find((l=>l.columnName===e));l&&t.push(l)}));const o=K.downLoadFieldList.filter((e=>!Z.value.includes(e.columnName))),n=[...t,...o];U("updateShowAllFieldList",n)}}(e.schemeId)}),{immediate:!0}),(l,t)=>(o(),n(s(x),{class:d(["table-export-field-modal",{"modal-screen":Q.value}]),show:e.visible,maskClosable:!1,width:R.value,bodyStyle:W.value,closable:!1,centered:"",onPositiveClick:se,onNegativeClick:re},{default:r((()=>[u(s(w),{style:c({width:R.value,...W.value}),title:"选择导出字段",bordered:!1,size:"huge",role:"dialog","aria-modal":"true"},{"header-extra":r((()=>[m("div",j,[m("i",{onClick:ue,class:d(["iconfont-table-export-field",Q.value?"icon-table-export-field-menzhenyishengzhanxitongtubiaozuixiaohua2":"icon-table-export-field-menzhenyishengzhanxitongtubiaozuidahua"])},null,2),m("i",{onClick:re,class:"iconfont-table-export-field icon-table-export-field-menzhenyishengzhanxitongtubiaoguanbi"})])])),footer:r((()=>[m("div",H,[u(s(L),{onClick:re},{default:r((()=>[h("取消")])),_:1}),p(l.$slots,"add"),u(s(L),{type:"info",onClick:se},{default:r((()=>[h("导出")])),_:1})])])),default:r((()=>[O,m("header",$,[u(s(y),{checked:X.value,"onUpdate:checked":[t[0]||(t[0]=e=>X.value=e),de],indeterminate:Y.value},{default:r((()=>[h(" 全选 ")])),_:1},8,["checked","indeterminate"]),u(s(F),{style:{width:"200px"},value:s(le),"onUpdate:value":[t[1]||(t[1]=e=>f(le)?le.value=e:null),ne],filterable:"","label-field":"schemeName","value-field":"schemeId","show-checkmark":!1,"render-label":ie,"render-tag":ae,"menu-props":V,options:e.programOptions},null,8,["value","options"])]),u(s(k),{value:Z.value,"onUpdate:value":t[2]||(t[2]=e=>Z.value=e)},{default:r((()=>[u(s(P),{class:"draggable-checkbox-list",list:e.showAllFieldList,animation:"300",itemKey:"columnName",onEnd:te},{item:r((({element:e})=>{var l;return[u(s(y),{disabled:e.fixedExport,class:d(Z.value.includes(e.columnName)?"":"checkbox-disabled"),value:e.columnName,label:null!=(l=e.alias)?l:e.title},{default:r((()=>{var l,t;return[m("span",{title:null!=(l=e.alias)?l:e.title},v(null!=(t=e.alias)?t:e.title),9,T)]})),_:2},1032,["disabled","class","value","label"])]})),_:1},8,["list"])])),_:1},8,["value"])])),_:3},8,["style"])])),_:3},8,["class","show","width","bodyStyle"]))}});export{U as default};
@@ -1 +1 @@
1
- import{defineComponent as e,ref as a,reactive as t,inject as l,watch as o,openBlock as r,createBlock as i,unref as s,withCtx as c,createVNode as u,createElementVNode as m,createTextVNode as d,createElementBlock as n,Fragment as p,renderList as v,toDisplayString as f}from"vue";import{useMessage as h,NModal as j,NCard as g,NIcon as b,NButton as y,NRadioGroup as N,NRadio as P,NForm as _,NFormItem as x,NInput as k}from"naive-ui";import{CloseOutline as w}from"@vicons/ionicons5";import{InjectionExportApiConfig as I}from"../constants/index.js";import S from"../hooks/useAsyncData.js";import{dragFieldCheckList as C}from"../tool.js";import{cloneDeep as L}from"lodash-es";const A={class:"svg-wrap"},M={class:"flex_right"},O={class:"save-project-content"};var U=e({__name:"SaveProjectModal",props:{visible:{type:Boolean,default:!1},tableListId:{type:String,default:""},programOptions:{type:Array,default:()=>[]},curProgram:{type:Object,default:()=>({})},showAllFieldList:{type:Array,default:()=>[]}},emits:["cancelSaveModal"],setup(e,{emit:U}){const z=e,F=h(),{saveTableListExportScheme:K}=S(),q={projectName:{required:!0,message:"请输入方案名称",trigger:["input","blur"]}},B=[{value:"updateProject",label:"更新方案"},{value:"addProject",label:"新增方案"}],D=a(null),E=t({projectName:""}),R=a(),T=a([]),$=l(I);function G(e){R.value=e}function H(){var e;null==(e=D.value)||e.validate((async e=>{if(e)return;if(function(){const e=E.projectName.trim();let a=[];if("addProject"===R.value&&(a=z.programOptions.map((e=>e.schemeName))),"updateProject"===R.value){const{schemeName:e}=z.curProgram;a=z.programOptions.filter((a=>a.schemeName!==e)).map((e=>e.schemeName))}return!!a.includes(e)&&(F.warning(`已存在${e}的方案名称`),!0)}())return;const a=function(){const e=E.projectName.trim(),{fieldKeys:a,schemeId:t}=z.curProgram;let l={fieldKeys:C(z.showAllFieldList,a),lastUsedSchemeName:e,schemeId:"",schemeName:e,tableListId:z.tableListId};return"updateProject"===R.value&&(l.schemeId=t),l}();await K(a,$)&&(F.success("保存并导出成功"),U("cancelSaveModal"))}))}function J(){U("cancelSaveModal")}return o((()=>z.curProgram),(async e=>{if("default"===e.schemeId)T.value=B.filter((e=>"addProject"===e.value)),R.value="addProject",E.projectName="";else T.value=L(B),R.value="updateProject",E.projectName=e.schemeName}),{immediate:!0,deep:!0}),(a,t)=>(r(),i(s(j),{class:"table-export-field-modal",to:"body",show:e.visible,maskClosable:!1,"positive-text":"确认","negative-text":"取消",onPositiveClick:H,onNegativeClick:J},{default:c((()=>[u(s(g),{title:"导出并存为方案",style:{width:"520px"},bordered:!1,size:"huge",role:"dialog","aria-modal":"true"},{"header-extra":c((()=>[m("div",A,[u(s(b),{component:s(w),size:"24",onClick:J},null,8,["component"])])])),footer:c((()=>[m("div",M,[u(s(y),{onClick:J},{default:c((()=>[d("取消")])),_:1}),u(s(y),{type:"info",onClick:H},{default:c((()=>[d("确认")])),_:1})])])),default:c((()=>[m("div",O,[u(s(N),{value:R.value,"onUpdate:value":[t[0]||(t[0]=e=>R.value=e),G],name:"radiogroup"},{default:c((()=>[(r(!0),n(p,null,v(T.value,(e=>(r(),i(s(P),{key:e.value,value:e.value},{default:c((()=>[d(f(e.label),1)])),_:2},1032,["value"])))),128))])),_:1},8,["value"]),u(s(_),{ref_key:"formRef",ref:D,"label-placement":"left",rules:q,model:E},{default:c((()=>[u(s(x),{label:"方案名称",path:"projectName"},{default:c((()=>[u(s(k),{value:E.projectName,"onUpdate:value":t[1]||(t[1]=e=>E.projectName=e),placeholder:"请输入方案名称",clearable:"",maxlength:"100"},null,8,["value"])])),_:1})])),_:1},8,["model"])])])),_:1})])),_:1},8,["show"]))}});export{U as default};
1
+ import{defineComponent as e,ref as a,reactive as t,inject as l,watch as o,openBlock as r,createBlock as i,unref as s,withCtx as c,createVNode as u,createElementVNode as m,createTextVNode as d,createElementBlock as n,Fragment as p,renderList as v,toDisplayString as f}from"vue";import{useMessage as h,NModal as j,NCard as g,NIcon as b,NButton as N,NRadioGroup as y,NRadio as P,NForm as _,NFormItem as x,NInput as k}from"naive-ui";import{CloseOutline as w}from"@vicons/ionicons5";import{InjectionExportApiConfig as I}from"../constants/index.js";import S from"../hooks/useAsyncData.js";import{dragFieldCheckList as C}from"../tool.js";import{cloneDeep as L}from"lodash-es";const A={class:"svg-wrap"},M={class:"flex_right"},O={class:"save-project-content"};var U=e({__name:"SaveProjectModal",props:{visible:{type:Boolean,default:!1},tableListId:{type:String,default:""},programOptions:{type:Array,default:()=>[]},curProgram:{type:Object,default:()=>({})},showAllFieldList:{type:Array,default:()=>[]}},emits:["cancelSaveModal"],setup(e,{emit:U}){const z=e,F=h(),{saveTableListExportScheme:K}=S(),q={projectName:{required:!0,message:"请输入方案名称",trigger:["input","blur"]}},B=[{value:"updateProject",label:"更新方案"},{value:"addProject",label:"新增方案"}],D=a(null),E=t({projectName:""}),R=a(),T=a([]),$=l(I);function G(e){R.value=e}function H(){var e;null==(e=D.value)||e.validate((async e=>{if(e)return;if(function(){const e=E.projectName.trim();let a=[];if("addProject"===R.value&&(a=z.programOptions.map((e=>e.schemeName))),"updateProject"===R.value){const{schemeName:e}=z.curProgram;a=z.programOptions.filter((a=>a.schemeName!==e)).map((e=>e.schemeName))}return!!a.includes(e)&&(F.warning(`已存在${e}的方案名称`),!0)}())return;const a=function(){const e=E.projectName.trim(),{fieldKeys:a,schemeId:t}=z.curProgram;let l={fieldKeys:C(z.showAllFieldList,a),lastUsedSchemeName:e,schemeId:"",schemeName:e,tableListId:z.tableListId};return"updateProject"===R.value&&(l.schemeId=t),l}();await K(a,$)&&(F.success("保存并导出成功"),U("cancelSaveModal"))}))}function J(){U("cancelSaveModal")}return o((()=>z.curProgram),(async e=>{if("default"===e.schemeId)T.value=B.filter((e=>"addProject"===e.value)),R.value="addProject",E.projectName="";else T.value=L(B),R.value="updateProject",E.projectName=e.schemeName}),{immediate:!0,deep:!0}),(a,t)=>(r(),i(s(j),{class:"table-export-field-modal",show:e.visible,maskClosable:!1,"positive-text":"确认","negative-text":"取消",onPositiveClick:H,onNegativeClick:J},{default:c((()=>[u(s(g),{title:"导出并存为方案",style:{width:"520px"},bordered:!1,size:"huge",role:"dialog","aria-modal":"true"},{"header-extra":c((()=>[m("div",A,[u(s(b),{component:s(w),size:"24",onClick:J},null,8,["component"])])])),footer:c((()=>[m("div",M,[u(s(N),{onClick:J},{default:c((()=>[d("取消")])),_:1}),u(s(N),{type:"info",onClick:H},{default:c((()=>[d("确认")])),_:1})])])),default:c((()=>[m("div",O,[u(s(y),{value:R.value,"onUpdate:value":[t[0]||(t[0]=e=>R.value=e),G],name:"radiogroup"},{default:c((()=>[(r(!0),n(p,null,v(T.value,(e=>(r(),i(s(P),{key:e.value,value:e.value},{default:c((()=>[d(f(e.label),1)])),_:2},1032,["value"])))),128))])),_:1},8,["value"]),u(s(_),{ref_key:"formRef",ref:D,"label-placement":"left",rules:q,model:E},{default:c((()=>[u(s(x),{label:"方案名称",path:"projectName"},{default:c((()=>[u(s(k),{value:E.projectName,"onUpdate:value":t[1]||(t[1]=e=>E.projectName=e),placeholder:"请输入方案名称",clearable:"",maxlength:"100"},null,8,["value"])])),_:1})])),_:1},8,["model"])])])),_:1})])),_:1},8,["show"]))}});export{U as default};
@@ -430,7 +430,8 @@ declare const _default: import("vue").DefineComponent<{
430
430
  isMultiple: import("vue").ComputedRef<boolean>;
431
431
  dynamicOptionInfos: import("vue").ComputedRef<any>;
432
432
  isLastPage: import("vue").ComputedRef<boolean>;
433
- valueCp: import("vue").ComputedRef<string | number | any[]>;
433
+ originList: import("vue").ComputedRef<any>;
434
+ valueCp: import("vue").ComputedRef<any>;
434
435
  isInitRequest: import("vue").ComputedRef<boolean>;
435
436
  setOptionActive: (selectIds: string[]) => void;
436
437
  handleUpdateSelect: (value: string[] | null) => void;
@@ -38,7 +38,8 @@ declare const _default: import("vue").DefineComponent<{
38
38
  isMultiple: import("vue").ComputedRef<boolean>;
39
39
  dynamicOptionInfos: import("vue").ComputedRef<any>;
40
40
  isLastPage: import("vue").ComputedRef<boolean>;
41
- valueCp: import("vue").ComputedRef<string | number | any[]>;
41
+ originList: import("vue").ComputedRef<any>;
42
+ valueCp: import("vue").ComputedRef<any>;
42
43
  isInitRequest: import("vue").ComputedRef<boolean>;
43
44
  setOptionActive: (selectIds: string[]) => void;
44
45
  handleUpdateSelect: (value: string[] | null) => void;
@@ -1 +1 @@
1
- import{defineComponent as e,ref as a,inject as l,computed as t,openBlock as n,createBlock as u,unref as o,isRef as i,withModifiers as r,withCtx as s,createVNode as c,h as d}from"vue";import{useMessage as v,NSelect as p,NTag as m}from"naive-ui";import{WidgetOptionEnums as f,WidgetValEnums as y}from"../../../types/enums.js";import{useDebounceFn as g}from"@vueuse/core";import h from"../../../hooks/useAsyncData.js";import{InjectionFilterApiConfig as V,InjectionClassifyFilterList as b}from"../../../constants/index.js";import{judgmentVariable as w}from"../../render-widget/helpers/setDefaultValue.js";import O from"../../render-widget/components/SelectDynamicOption/index.vue.js";import{isEqual as S}from"lodash-es";var k=e({__name:"SelectDynamic",props:{paramCfg:{type:Object,default:null},modelValue:{type:[Array,String,Number],default:null}},emits:["update:modelValue"],setup(e,{emit:k}){const L=e,P=v(),{getDynamicSelectData:j}=h(),C=a(!1),A=l(V),x=l(b),D=a(0),I={class:"select-dynamic-popover"},K=a(1),T=a(),E=a([]),U=a(),_=t((()=>{var e;return null==(e=L.paramCfg)?void 0:e.optionSetting})),M=t((()=>_.value===f.MULTIPLE)),N=t((()=>{const{dynamicOptionInfo:e={}}=L.paramCfg.optionInfo;return e})),$=t((()=>D.value>0&&K.value>=D.value)),F=t((()=>{var e;if(Array.isArray(L.modelValue)&&L.modelValue.length>0){const e=L.modelValue;if(H(e),!M.value&&1==e.length){const a=E.value.find((a=>a.value===e[0]));return JSON.stringify(a)}return E.value.filter((a=>e.includes(a.value)))}return H([]),null!=(e=L.modelValue)?e:null})),J=t((()=>{if(Object.keys(N.value).length>0){const{defaultParams:e=[]}=N.value;return!w(e)}return!0}));function H(e){E.value.forEach((a=>{a.actived=!1,Array.isArray(e)&&e.includes(a.value)&&(a.actived=!0)}))}function W(e){var a;const{defaultValue:l}=L.paramCfg._rawData;(null==(a=null==l?void 0:l.linkageFieldKeys)?void 0:a.length)>0&&l.linkageFieldKeys.forEach((e=>{const a=x.value.find((a=>a.key===e));a&&a.value&&(a.value=a.presetVal=null)})),S(L.modelValue,e)||k("update:modelValue",e)}async function q(e){K.value=e,await z(U.value,K.value)}async function z(e,a){try{if(Object.keys(N.value).length>0){const{autograph:l,dataSourceId:t,dataSourceType:n,filterKeys:u,defaultParams:o=[],showKeys:i,valueKey:r}=N.value;let s={wordbookId:t,autograph:l,wordbookType:n,fieldKeys:u,page:a};u.length>0&&(s[u[0]]=e),C.value=!0;if(w(o)){const e=o.map((e=>e.value)).filter((e=>e.includes("${")));e.map((e=>e.match(/\$\{(.+?)\}/)[1])).forEach((e=>{const a=x.value.find((a=>a.key===e));a&&a.value&&a.value!==y.WHOLE&&(s[e]=a.value)}))}let c=await j(s,A);if(c){const{fieldList:e=[],rows:a=[],total:l=0}=c.map,t=a.map((e=>({...e,label:e[i[0]],value:e[r]})));return T.value=null!=e?e:[],E.value=null!=t?t:[],D.value=l,t}}}catch(e){P.error(`异步数据源下拉框数据请求失败:${e}`),console.log(e)}finally{C.value=!1}}const B=g((async e=>{await async function(e){U.value=e.trim(),K.value=1,await z(U.value,K.value)}(e)}),300);async function G(){Object.keys(N.value).length>0&&A&&await z("",K.value)}async function Q(){k("update:modelValue",null),await G()}function R(e){e&&G()}function X({option:e,handleClose:a}){if(M.value){const l=e.value;return d(m,{style:{padding:"0 8px"},closable:!0,onClose:e=>{if(e.stopPropagation(),a(),Array.isArray(L.modelValue)&&L.modelValue.length>0){const e=L.modelValue,a=e.indexOf(l.value);if(a>-1){const l=e.splice(0,a);k("update:modelValue",l.length>0?l:null)}}}},{default:()=>d("div",l.label)})}const l=e.value?JSON.parse(e.value):{label:""};return d("div",l.label)}return J.value&&G(),(e,a)=>(n(),u(o(p),{id:"select-dynamic-popover",style:{width:"200px"},value:o(F),"onUpdate:value":a[0]||(a[0]=e=>i(F)?F.value=e:null),remote:"",clearable:"",filterable:"",to:"body",maxTagCount:"responsive",loading:C.value,multiple:o(M),menuProps:I,"render-tag":X,onSearch:o(B),onClear:Q,"onUpdate:show":R,onClick:a[1]||(a[1]=r((()=>{}),["stop"]))},{empty:s((()=>[c(O,{dynamicOptionInfo:o(N),fieldTitleList:T.value,optionList:E.value,isMultiple:o(M),curPage:K.value,isLastPage:o($),onUpdateSelect:W,onUpdatePage:q},null,8,["dynamicOptionInfo","fieldTitleList","optionList","isMultiple","curPage","isLastPage"])])),_:1},8,["value","loading","multiple","onSearch"]))}});export{k as default};
1
+ import{defineComponent as e,ref as a,inject as l,computed as t,watch as n,openBlock as u,createBlock as o,unref as i,isRef as r,withModifiers as s,withCtx as d,createVNode as v,h as c}from"vue";import{useMessage as p,NSelect as m,NTag as f}from"naive-ui";import{WidgetOptionEnums as y,WidgetValEnums as g}from"../../../types/enums.js";import{useDebounceFn as h}from"@vueuse/core";import V from"../../../hooks/useAsyncData.js";import{InjectionFilterApiConfig as w,InjectionClassifyFilterList as b}from"../../../constants/index.js";import{judgmentVariable as k}from"../../render-widget/helpers/setDefaultValue.js";import L from"../../render-widget/components/SelectDynamicOption/index.vue.js";import{isEqual as O}from"lodash-es";var S=e({__name:"SelectDynamic",props:{paramCfg:{type:Object,default:null},modelValue:{type:[Array,String,Number],default:null}},emits:["update:modelValue"],setup(e,{emit:S}){const C=e,A=p(),{getDynamicSelectData:P}=V(),j=a(!1),x=l(w),D=l(b),I=a(0),K={class:"select-dynamic-popover"},T=a(1),_=a(),E=a([]),U=a(),M=t((()=>{var e;return null==(e=C.paramCfg)?void 0:e.optionSetting})),N=t((()=>M.value===y.MULTIPLE)),$=t((()=>{const{dynamicOptionInfo:e={}}=C.paramCfg.optionInfo;return e})),B=t((()=>I.value>0&&T.value>=I.value)),F=t((()=>{if(E.value.length>0)return E.value;const e=D.value.find((e=>e.key===C.paramCfg.p_name));return e&&e.value&&e.dynamicBaseList||[]})),J=t((()=>{var e;if(Array.isArray(C.modelValue)&&C.modelValue.length>0){const e=C.modelValue;if(W(e),!N.value&&1==e.length){const a=F.value.find((a=>a.value===e[0]));return JSON.stringify(a)}return F.value.filter((a=>e.includes(a.value)))}return W([]),null!=(e=C.modelValue)?e:null})),H=t((()=>{if(Object.keys($.value).length>0){const{defaultParams:e=[]}=$.value;return!k(e)}return!0}));function W(e){E.value.forEach((a=>{a.actived=!1,Array.isArray(e)&&e.includes(a.value)&&(a.actived=!0)}))}function q(e){var a;const{defaultValue:l}=C.paramCfg._rawData;(null==(a=null==l?void 0:l.linkageFieldKeys)?void 0:a.length)>0&&l.linkageFieldKeys.forEach((e=>{const a=D.value.find((a=>a.key===e));a&&a.value&&(a.value=a.presetVal=null)})),O(C.modelValue,e)||S("update:modelValue",e)}async function z(e){T.value=e,await G(U.value,T.value)}async function G(e,a){try{if(Object.keys($.value).length>0){const{autograph:l,dataSourceId:t,dataSourceType:n,filterKeys:u,defaultParams:o=[],showKeys:i,valueKey:r}=$.value;let s={wordbookId:t,autograph:l,wordbookType:n,fieldKeys:u,page:a};u.length>0&&(s[u[0]]=e),j.value=!0;if(k(o)){const e=o.map((e=>e.value)).filter((e=>e.includes("${")));e.map((e=>e.match(/\$\{(.+?)\}/)[1])).forEach((e=>{const a=D.value.find((a=>a.key===e));a&&a.value&&a.value!==g.WHOLE&&(s[e]=a.value)}))}let d=await P(s,x);if(d){const{fieldList:e=[],rows:a=[],total:l=0}=d.map,t=a.map((e=>({...e,label:e[i[0]],value:e[r]})));return _.value=null!=e?e:[],E.value=null!=t?t:[],I.value=l,t}}}catch(e){A.error(`异步数据源下拉框数据请求失败:${e}`),console.log(e)}finally{j.value=!1}}const Q=h((async e=>{await async function(e){U.value=e.trim(),T.value=1,await G(U.value,T.value)}(e)}),300);async function R(){Object.keys($.value).length>0&&x&&await G("",T.value)}async function X(){S("update:modelValue",null),await R()}function Y(e){e&&R()}function Z({option:e,handleClose:a}){if(N.value){const l=e.value;return c(f,{style:{padding:"0 8px"},closable:!0,onClose:e=>{if(e.stopPropagation(),a(),Array.isArray(C.modelValue)&&C.modelValue.length>0){const e=C.modelValue,a=e.indexOf(l.value);if(a>-1){const l=e.splice(0,a);S("update:modelValue",l.length>0?l:null)}}}},{default:()=>c("div",l.label)})}const l=e.value?JSON.parse(e.value):{label:""};return c("div",l.label)}return n((()=>C.modelValue),(e=>{let a=[];Array.isArray(e)&&e.length>0&&(N.value||1!=e.length||(a=F.value.filter((a=>a.value===e[0]))),a=F.value.filter((a=>e.includes(a.value))));const l=D.value.find((e=>e.key===C.paramCfg.p_name));l&&l.value&&(l.dynamicBaseList=a)}),{immediate:!0,deep:!0}),H.value&&R(),(e,a)=>(u(),o(i(m),{id:"select-dynamic-popover",style:{width:"200px"},value:i(J),"onUpdate:value":a[0]||(a[0]=e=>r(J)?J.value=e:null),remote:"",clearable:"",filterable:"",maxTagCount:"responsive",loading:j.value,multiple:i(N),menuProps:K,"render-tag":Z,onSearch:i(Q),onClear:X,"onUpdate:show":Y,onClick:a[1]||(a[1]=s((()=>{}),["stop"]))},{empty:d((()=>[v(L,{dynamicOptionInfo:i($),fieldTitleList:_.value,optionList:E.value,isMultiple:i(N),curPage:T.value,isLastPage:i(B),onUpdateSelect:q,onUpdatePage:z},null,8,["dynamicOptionInfo","fieldTitleList","optionList","isMultiple","curPage","isLastPage"])])),_:1},8,["value","loading","multiple","onSearch"]))}});export{S as default};
@@ -387,7 +387,8 @@ declare const SelectDynamic: import("vue").DefineComponent<{
387
387
  isMultiple: import("vue").ComputedRef<boolean>;
388
388
  dynamicOptionInfos: import("vue").ComputedRef<any>;
389
389
  isLastPage: import("vue").ComputedRef<boolean>;
390
- valueCp: import("vue").ComputedRef<string | number | any[]>;
390
+ originList: import("vue").ComputedRef<any>;
391
+ valueCp: import("vue").ComputedRef<any>;
391
392
  isInitRequest: import("vue").ComputedRef<boolean>;
392
393
  setOptionActive: (selectIds: string[]) => void;
393
394
  handleUpdateSelect: (value: string[] | null) => void;
@@ -1 +1 @@
1
- import{reactive as a,computed as t,toRaw as e,unref as n}from"vue";import{ConditionEnums as l,WidgetTypeEnums as o,WidgetOptionEnums as r}from"../../../types/enums.js";import{transformConditions as i,transformRawConditions as u,transformDataToFront as s}from"../../../tool/transformData.js";const c=(c,p,d)=>{const m=a({params:[]}),v=t((()=>m.params.map((({p_name:a,title:t})=>({label:t||a,value:a}))))),y=a=>m.params.find((t=>t.p_name===a)),C=(a,t)=>{const e=c.value[a];e&&(e.condition=t,(a=>{var t,e,n,l;const o=y(a.key);(null==(e=null==(t=o._rawData)?void 0:t.accurateSearch)?void 0:e.switchEnable)&&(a.isAccurateSearch=!0,a.accurateSearchKey=null==(l=null==(n=o._rawData)?void 0:n.accurateSearch)?void 0:l.searchKey)})(e),(a=>{const t=y(a.key);a.value=(null==t?void 0:t.type)!==o.SELECT&&(null==t?void 0:t.type)!==o.SELECTDYNAMIC||(null==t?void 0:t.optionSetting)!==r.MULTIPLE?null:[],a.presetVal=a.timeVal=null})(e))};return{State:m,paramOptions:v,addFilterCondition:()=>{c.value.push({key:null,condition:null,value:null,presetVal:null})},delFilterCondition:a=>{c.value.splice(a,1)},updateKey:(a,t)=>{const e=c.value[a];e&&(e.key=t,C(a,l.EQUAL))},updateCondition:C,getParamCfg:y,initFilterConditions:async(a,t)=>{const n=await(async a=>{try{return s(d,p)}catch(a){return[]}})();m.params=n,c.value=i(t,e(m.params))},getRawFilterConditions:()=>u(n(c))}};export{c as useFilterConditions};
1
+ import{reactive as a,computed as t,toRaw as e,unref as n}from"vue";import{ConditionEnums as l,WidgetTypeEnums as i,WidgetOptionEnums as o}from"../../../types/enums.js";import{transformConditions as r,transformRawConditions as u,transformDataToFront as s}from"../../../tool/transformData.js";const c=(c,p,d)=>{const m=a({params:[]}),v=t((()=>m.params.map((({p_name:a,title:t})=>({label:t||a,value:a}))))),y=a=>m.params.find((t=>t.p_name===a)),C=(a,t)=>{const e=c.value[a];e&&(e.condition=t,(a=>{var t,e,n,l;const i=y(a.key);(null==(e=null==(t=i._rawData)?void 0:t.accurateSearch)?void 0:e.switchEnable)&&(a.isAccurateSearch=!0,a.accurateSearchKey=null==(l=null==(n=i._rawData)?void 0:n.accurateSearch)?void 0:l.searchKey)})(e),(a=>{const t=y(a.key);a.value=(null==t?void 0:t.type)!==i.SELECT&&(null==t?void 0:t.type)!==i.SELECTDYNAMIC||(null==t?void 0:t.optionSetting)!==o.MULTIPLE?null:[],a.presetVal=a.timeVal=null})(e))};return{State:m,paramOptions:v,addFilterCondition:()=>{c.value.push({key:null,condition:null,value:null,presetVal:null,dynamicBaseList:[]})},delFilterCondition:a=>{c.value.splice(a,1)},updateKey:(a,t)=>{const e=c.value[a];e&&(e.key=t,C(a,l.EQUAL))},updateCondition:C,getParamCfg:y,initFilterConditions:async(a,t)=>{const n=await(async a=>{try{return s(d,p)}catch(a){return[]}})();m.params=n,c.value=r(t,e(m.params))},getRawFilterConditions:()=>u(n(c))}};export{c as useFilterConditions};
@@ -554,7 +554,8 @@ declare const _default: import("vue").DefineComponent<{
554
554
  isMultiple: import("vue").ComputedRef<boolean>;
555
555
  dynamicOptionInfos: import("vue").ComputedRef<any>;
556
556
  isLastPage: import("vue").ComputedRef<boolean>;
557
- valueCp: import("vue").ComputedRef<string | number | any[]>;
557
+ originList: import("vue").ComputedRef<any>;
558
+ valueCp: import("vue").ComputedRef<any>;
558
559
  isInitRequest: import("vue").ComputedRef<boolean>;
559
560
  setOptionActive: (selectIds: string[]) => void;
560
561
  handleUpdateSelect: (value: string[] | null) => void;
@@ -1 +1 @@
1
- import{defineComponent as e,useAttrs as t,computed as r,openBlock as o,createBlock as u,unref as n,mergeProps as a}from"vue";import{NSelect as i}from"naive-ui";import{WholeSelectObj as l}from"../helpers/selectExtraMap.js";import{WidgetValEnums as p}from"../../../types/enums.js";var s=e({__name:"Select",props:{value:{type:[Array,String,Number]},componentCfg:{type:Object}},emits:["update:value"],setup(e,{emit:s}){const m=e,v=t(),f=r((()=>m.value)),c=r((()=>v.multiple)),d=r((()=>{const{widgetCfg:e}=m.componentCfg,{showWholeOption:t=!1}=e;return t})),g=r((()=>{const{widgetCfg:e}=m.componentCfg,{valueList:t=[]}=e;if(d.value){return[JSON.parse(JSON.stringify(l)),...t]}return t}));function y(e){if(d.value&&c.value&&Array.isArray(e)&&e.includes(p.WHOLE)){const t=e.slice(-1);if(t.includes(p.WHOLE))return void s("update:value",t);const r=e.filter((e=>e!==p.WHOLE));s("update:value",r)}else s("update:value",e)}return(e,t)=>(o(),u(n(i),a({to:"body"},n(v),{options:n(g),value:n(f),"onUpdate:value":y}),null,16,["options","value"]))}});export{s as default};
1
+ import{defineComponent as e,useAttrs as t,computed as r,openBlock as u,createBlock as o,unref as n,mergeProps as a}from"vue";import{NSelect as i}from"naive-ui";import{WholeSelectObj as l}from"../helpers/selectExtraMap.js";import{WidgetValEnums as p}from"../../../types/enums.js";var s=e({__name:"Select",props:{value:{type:[Array,String,Number]},componentCfg:{type:Object}},emits:["update:value"],setup(e,{emit:s}){const m=e,v=t(),f=r((()=>m.value)),c=r((()=>v.multiple)),d=r((()=>{const{widgetCfg:e}=m.componentCfg,{showWholeOption:t=!1}=e;return t})),g=r((()=>{const{widgetCfg:e}=m.componentCfg,{valueList:t=[]}=e;if(d.value){return[JSON.parse(JSON.stringify(l)),...t]}return t}));function y(e){if(d.value&&c.value&&Array.isArray(e)&&e.includes(p.WHOLE)){const t=e.slice(-1);if(t.includes(p.WHOLE))return void s("update:value",t);const r=e.filter((e=>e!==p.WHOLE));s("update:value",r)}else s("update:value",e)}return(e,t)=>(u(),o(n(i),a(n(v),{options:n(g),value:n(f),"onUpdate:value":y}),null,16,["options","value"]))}});export{s as default};
@@ -1 +1 @@
1
- import{defineComponent as e,useAttrs as a,ref as l,inject as t,computed as u,nextTick as n,openBlock as o,createBlock as i,unref as s,mergeProps as r,isRef as v,withCtx as c,createVNode as f,h as p}from"vue";import{useMessage as d,NSelect as m,NTag as y}from"naive-ui";import{useDebounceFn as g}from"@vueuse/core";import h from"../../../hooks/useAsyncData.js";import{judgmentVariable as w}from"../helpers/setDefaultValue.js";import{WholeSelectObj as S}from"../helpers/selectExtraMap.js";import{WidgetValEnums as O}from"../../../types/enums.js";import{InjectionFilterApiConfig as b,InjectionFilterSearchConfig as j}from"../../../constants/index.js";import k from"./SelectDynamicOption/index.vue.js";import{isEqual as C,cloneDeep as N}from"lodash-es";var A=e({__name:"SelectDynamic",props:{value:{type:[Array,String,Number]},componentCfg:{type:Object}},emits:["update:value"],setup(e,{emit:A}){const L=e,P=d(),D="SQL",J="API",{getDynamicSelectData:x}=h(),I=a(),E=l(null),K=l(!1),T=t(b),$=t(j),U=l(1),W=l(),_=l([JSON.parse(JSON.stringify(S))]),M=l([]),F=l(),H=l(0),Q={class:"select-dynamic-popover"},R=u((()=>I.multiple)),V=u((()=>{const{widgetCfg:e}=L.componentCfg,{dynamicOptionInfo:a={}}=e;return a})),q=u((()=>{const{widgetCfg:e}=L.componentCfg,{showWholeOption:a=!1}=e;return a&&1===U.value})),z=u((()=>H.value>0&&U.value>=H.value)),B=u((()=>{var e;if(Array.isArray(L.value)&&L.value.length>0){const e=L.value;if(X(e),e.includes(S.value)){const e=_.value.find((e=>e.value===S.value)),a=e||S;return R.value?[a]:JSON.stringify(a)}if(!R.value&&1==e.length){const a=_.value.find((a=>a.value===e[0]));return a?JSON.stringify(a):{label:e[0].includes("&")?e[0].split("&")[0]:e[0],value:e[0]}}const a=_.value.filter((a=>e.includes(a.value))),l=a.map((e=>e.value)),t=e.filter((e=>!l.includes(e))).map((e=>({label:e.includes("&")?e.split("&")[0]:e,value:e})));return[...a,...t]}return X([]),null!=(e=L.value)?e:null})),G=u((()=>{if(Object.keys(V.value).length>0){const{defaultParams:e=[]}=V.value;return w(e)&&!L.value}return!1}));function X(e){_.value.forEach((a=>{a.actived=!1,Array.isArray(e)&&e.includes(a.value)&&(a.actived=!0)}))}function Y(e){const{widgetCfg:a}=L.componentCfg,{linkageFieldKeys:l=[]}=a;C(L.value,e)||(l.forEach((e=>{const a=$.value.find((a=>a.columnName===e));a&&a.value&&(a.value=null)})),A("update:value",e))}async function Z(e){var a;U.value=e,null==(a=null==E?void 0:E.value)||a.focus(),await ee(F.value,U.value)}async function ee(e,a){try{if(K.value=!0,Object.keys(V.value).length>0){const{autograph:l,dataSourceId:t,dataSourceType:u,filterKeys:n,defaultParams:o=[],showKeys:i,valueKey:s,tableDataType:r}=V.value;let v={wordbookId:t,autograph:l,wordbookType:u,fieldKeys:n,page:a};switch(r){case D:v.keyword=e;break;case J:n.length>0&&(v[n[0]]=e)}if(w(o)){const e=o.map((e=>e.value)).filter((e=>e.includes("${")));e.map((e=>e.match(/\$\{(.+?)\}/)[1])).forEach((e=>{const a=$.value.find((a=>a.columnName===e));a&&a.value&&a.value!==O.WHOLE&&(v[e]=a.value)}))}let c=await x(v,T);if(c){const{fieldList:e=[],rows:a=[],total:l=0}=c.map,t=a.map((e=>({...e,label:e[i[0]],value:`${e[i[0]]}&${e[s]}`}))),u=N(t);q.value&&t.unshift(JSON.parse(JSON.stringify(S))),W.value=null!=e?e:[],_.value=null!=t?t:[],M.value=u,H.value=l}}}catch(e){P.error(`异步数据源下拉框数据请求失败:${e}`),console.log(e)}finally{K.value=!1}}const ae=g((async e=>{await async function(e){F.value=e.trim(),U.value=1,await ee(F.value,U.value)}(e)}),300);async function le(){Object.keys(V.value).length>0&&T&&await ee("",U.value)}async function te(){A("update:value",null),await le()}function ue(e){F.value="",e&&(U.value=1,le())}function ne({option:e,handleClose:a}){if(R.value){const l=e.value;return p(y,{style:{padding:"0 8px"},closable:!0,onClose:e=>{if(e.stopPropagation(),a(),Array.isArray(L.value)&&L.value.length>0){const e=L.value,a=e.indexOf(l.value);if(a>-1){const l=e.splice(0,a);A("update:value",l.length>0?l:null)}}}},{default:()=>p("div",l.label)})}const l=e.value?JSON.parse(e.value):{label:""};return p("div",l.label)}return n((()=>{G.value||le()})),(e,a)=>(o(),i(s(m),r({ref_key:"selectDynamicRef",ref:E},s(I),{value:s(B),"onUpdate:value":a[0]||(a[0]=e=>v(B)?B.value=e:null),remote:"",loading:K.value,"render-tag":ne,"menu-props":Q,to:"body",onSearch:s(ae),onClear:te,"onUpdate:show":ue}),{empty:c((()=>[f(k,r(s(I),{loading:K.value,dynamicOptionInfo:s(V),fieldTitleList:W.value,optionList:_.value,isMultiple:s(R),curPage:U.value,isLastPage:s(z),isShowWhole:s(q),onUpdateSelect:Y,onUpdatePage:Z}),null,16,["loading","dynamicOptionInfo","fieldTitleList","optionList","isMultiple","curPage","isLastPage","isShowWhole"])])),_:1},16,["value","loading","onSearch"]))}});export{A as default};
1
+ import{defineComponent as e,useAttrs as a,ref as l,inject as t,computed as u,nextTick as n,openBlock as o,createBlock as i,unref as s,mergeProps as r,isRef as v,withCtx as c,createVNode as f,h as p}from"vue";import{useMessage as d,NSelect as m,NTag as y}from"naive-ui";import{useDebounceFn as g}from"@vueuse/core";import h from"../../../hooks/useAsyncData.js";import{judgmentVariable as w}from"../helpers/setDefaultValue.js";import{WholeSelectObj as S}from"../helpers/selectExtraMap.js";import{WidgetValEnums as O}from"../../../types/enums.js";import{InjectionFilterApiConfig as b,InjectionFilterSearchConfig as j}from"../../../constants/index.js";import k from"./SelectDynamicOption/index.vue.js";import{isEqual as C,cloneDeep as N}from"lodash-es";var A=e({__name:"SelectDynamic",props:{value:{type:[Array,String,Number]},componentCfg:{type:Object}},emits:["update:value"],setup(e,{emit:A}){const L=e,P=d(),D="SQL",J="API",{getDynamicSelectData:x}=h(),I=a(),E=l(null),K=l(!1),T=t(b),$=t(j),U=l(1),W=l(),_=l([JSON.parse(JSON.stringify(S))]),M=l([]),F=l(),H=l(0),Q={class:"select-dynamic-popover"},R=u((()=>I.multiple)),V=u((()=>{const{widgetCfg:e}=L.componentCfg,{dynamicOptionInfo:a={}}=e;return a})),q=u((()=>{const{widgetCfg:e}=L.componentCfg,{showWholeOption:a=!1}=e;return a&&1===U.value})),z=u((()=>H.value>0&&U.value>=H.value)),B=u((()=>{var e;if(Array.isArray(L.value)&&L.value.length>0){const e=L.value;if(X(e),e.includes(S.value)){const e=_.value.find((e=>e.value===S.value)),a=e||S;return R.value?[a]:JSON.stringify(a)}if(!R.value&&1==e.length){const a=_.value.find((a=>a.value===e[0]));return a?JSON.stringify(a):{label:e[0].includes("&")?e[0].split("&")[0]:e[0],value:e[0]}}const a=_.value.filter((a=>e.includes(a.value))),l=a.map((e=>e.value)),t=e.filter((e=>!l.includes(e))).map((e=>({label:e.includes("&")?e.split("&")[0]:e,value:e})));return[...a,...t]}return X([]),null!=(e=L.value)?e:null})),G=u((()=>{if(Object.keys(V.value).length>0){const{defaultParams:e=[]}=V.value;return w(e)&&!L.value}return!1}));function X(e){_.value.forEach((a=>{a.actived=!1,Array.isArray(e)&&e.includes(a.value)&&(a.actived=!0)}))}function Y(e){const{widgetCfg:a}=L.componentCfg,{linkageFieldKeys:l=[]}=a;C(L.value,e)||(l.forEach((e=>{const a=$.value.find((a=>a.columnName===e));a&&a.value&&(a.value=null)})),A("update:value",e))}async function Z(e){var a;U.value=e,null==(a=null==E?void 0:E.value)||a.focus(),await ee(F.value,U.value)}async function ee(e,a){try{if(K.value=!0,Object.keys(V.value).length>0){const{autograph:l,dataSourceId:t,dataSourceType:u,filterKeys:n,defaultParams:o=[],showKeys:i,valueKey:s,tableDataType:r}=V.value;let v={wordbookId:t,autograph:l,wordbookType:u,fieldKeys:n,page:a};switch(r){case D:v.keyword=e;break;case J:n.length>0&&(v[n[0]]=e)}if(w(o)){const e=o.map((e=>e.value)).filter((e=>e.includes("${")));e.map((e=>e.match(/\$\{(.+?)\}/)[1])).forEach((e=>{const a=$.value.find((a=>a.columnName===e));a&&a.value&&a.value!==O.WHOLE&&(v[e]=a.value)}))}let c=await x(v,T);if(c){const{fieldList:e=[],rows:a=[],total:l=0}=c.map,t=a.map((e=>({...e,label:e[i[0]],value:`${e[i[0]]}&${e[s]}`}))),u=N(t);q.value&&t.unshift(JSON.parse(JSON.stringify(S))),W.value=null!=e?e:[],_.value=null!=t?t:[],M.value=u,H.value=l}}}catch(e){P.error(`异步数据源下拉框数据请求失败:${e}`),console.log(e)}finally{K.value=!1}}const ae=g((async e=>{await async function(e){F.value=e.trim(),U.value=1,await ee(F.value,U.value)}(e)}),300);async function le(){Object.keys(V.value).length>0&&T&&await ee("",U.value)}async function te(){A("update:value",null),await le()}function ue(e){F.value="",e&&(U.value=1,le())}function ne({option:e,handleClose:a}){if(R.value){const l=e.value;return p(y,{style:{padding:"0 8px"},closable:!0,onClose:e=>{if(e.stopPropagation(),a(),Array.isArray(L.value)&&L.value.length>0){const e=L.value,a=e.indexOf(l.value);if(a>-1){const l=e.splice(0,a);A("update:value",l.length>0?l:null)}}}},{default:()=>p("div",l.label)})}const l=e.value?JSON.parse(e.value):{label:""};return p("div",l.label)}return n((()=>{G.value||le()})),(e,a)=>(o(),i(s(m),r({ref_key:"selectDynamicRef",ref:E},s(I),{value:s(B),"onUpdate:value":a[0]||(a[0]=e=>v(B)?B.value=e:null),remote:"",loading:K.value,"render-tag":ne,"menu-props":Q,onSearch:s(ae),onClear:te,"onUpdate:show":ue}),{empty:c((()=>[f(k,r(s(I),{loading:K.value,dynamicOptionInfo:s(V),fieldTitleList:W.value,optionList:_.value,isMultiple:s(R),curPage:U.value,isLastPage:s(z),isShowWhole:s(q),onUpdateSelect:Y,onUpdatePage:Z}),null,16,["loading","dynamicOptionInfo","fieldTitleList","optionList","isMultiple","curPage","isLastPage","isShowWhole"])])),_:1},16,["value","loading","onSearch"]))}});export{A as default};
@@ -1 +1 @@
1
- import{defineComponent as e,ref as t,computed as i,withDirectives as a,openBlock as l,createElementBlock as n,normalizeStyle as o,createBlock as s,unref as c,Fragment as d,renderList as u,toDisplayString as r,createCommentVNode as p,createElementVNode as v,normalizeClass as m,withCtx as f,createTextVNode as y,createVNode as h}from"vue";import{NEmpty as g,NPopover as k,NButtonGroup as L,NButton as b,NIcon as E}from"naive-ui";import{vFlexibleResize as P}from"../../../../../../../shared/directive/flexibleResize.js";import{WidgetValEnums as x}from"../../../../types/enums.js";import{ArrowBack as M,ArrowForward as O}from"@vicons/ionicons5";import{WholeSelectObj as W}from"../../helpers/selectExtraMap.js";const _={key:0,class:"dynamic-header"},S={class:"dynamic-content"},j=["onClick"],w={key:0,class:"content"},B={class:"content"},C={class:"dynamic-pagination"};var z=e({__name:"index",props:{dynamicOptionInfo:{type:Object,default:()=>({})},fieldTitleList:{type:Array,default:()=>[]},optionList:{type:Array,default:()=>[]},isMultiple:{type:Boolean,default:!1},curPage:{type:Number,default:1},isLastPage:{type:Boolean,default:!1},isShowWhole:{type:Boolean,default:!1},loading:{type:Boolean,default:!1}},emits:["updateSelect","updatePage"],setup(e,{emit:z}){const H=e,A=t(200),I=i((()=>{var e,t;return null!=(t=null==(e=H.dynamicOptionInfo)?void 0:e.showKeys)?t:[]})),N=i((()=>I.value&&I.value.length>0?I.value.map((e=>{let t="";return H.fieldTitleList.forEach((i=>{i.columnName===e&&(t=i.title)})),t})):[])),R=i((()=>!H.optionList.filter((e=>e.label!=W.label)).length));function T(e){const t=H.curPage+e;z("updatePage",t)}function K({distance:e}){const t=A.value+e;A.value=Math.min(Math.max(t,200),1e3)}function V(){}return(t,i)=>a((l(),n("div",{class:"select-dynamic-options",style:o({minWidth:A.value+"px",position:"relative"})},[e.loading?(l(),s(c(g),{key:0,"show-icon":!1,description:"加载中..."})):(l(),n(d,{key:1},[c(R)?(l(),s(c(g),{key:0,description:"无数据"})):(l(),n(d,{key:1},[c(N)&&c(N).length>1?(l(),n("div",_,[(l(!0),n(d,null,u(c(N),(e=>(l(),n("span",{key:e,class:"name"},r(e),1)))),128))])):p("v-if",!0),v("ul",S,[(l(!0),n(d,null,u(e.optionList,(t=>(l(),n("li",{class:m(t.actived?"actived":""),key:t.value,onClick:e=>function(e){var t,i,a;if(!H.isMultiple||e.value===x.WHOLE)return null==(t=H.optionList)||t.forEach((e=>{e.actived=!1})),e.actived=!0,void z("updateSelect",[e.value]);null==(i=H.optionList)||i.forEach((e=>{e.value===x.WHOLE&&(e.actived=!1)})),e.actived?e.actived=!1:e.actived=!0;const l=null==(a=H.optionList)?void 0:a.filter((e=>e.actived)).map((e=>e.value));z("updateSelect",l)}(t)},[e.isShowWhole&&t.value===c(x).WHOLE?(l(),n("span",w,r(t.label),1)):(l(!0),n(d,{key:1},u(c(I),(e=>(l(),s(c(k),{key:e,trigger:"hover",to:"body",duration:0},{trigger:f((()=>[v("span",B,r(t[e]),1)])),default:f((()=>[y(" "+r(t[e]),1)])),_:2},1024)))),128))],10,j)))),128))]),v("div",C,[h(c(L),null,{default:f((()=>[h(c(b),{onClick:i[0]||(i[0]=e=>T(-1)),disabled:e.curPage<=1},{icon:f((()=>[h(c(E),{component:c(M),size:"16"},null,8,["component"])])),default:f((()=>[y(" 上一页 ")])),_:1},8,["disabled"]),h(c(b),{"icon-placement":"right",onClick:i[1]||(i[1]=e=>T(1)),disabled:e.isLastPage},{icon:f((()=>[h(c(E),{component:c(O),size:"16"},null,8,["component"])])),default:f((()=>[y(" 下一页 ")])),_:1},8,["disabled"])])),_:1})])],64))],64))],4)),[[c(P),{mode:"VR",onMove:K,onEnd:V}]])}});export{z as default};
1
+ import{defineComponent as e,ref as t,computed as i,withDirectives as a,openBlock as l,createElementBlock as n,normalizeStyle as o,createBlock as s,unref as c,Fragment as d,renderList as u,toDisplayString as r,createCommentVNode as p,createElementVNode as v,normalizeClass as m,withCtx as f,createTextVNode as y,createVNode as h}from"vue";import{NEmpty as g,NPopover as k,NButtonGroup as L,NButton as b,NIcon as E}from"naive-ui";import{vFlexibleResize as P}from"../../../../../../../shared/directive/flexibleResize.js";import{WidgetValEnums as x}from"../../../../types/enums.js";import{ArrowBack as M,ArrowForward as O}from"@vicons/ionicons5";import{WholeSelectObj as W}from"../../helpers/selectExtraMap.js";const _={key:0,class:"dynamic-header"},S={class:"dynamic-content"},j=["onClick"],w={key:0,class:"content"},B={class:"content"},C={class:"dynamic-pagination"};var z=e({__name:"index",props:{dynamicOptionInfo:{type:Object,default:()=>({})},fieldTitleList:{type:Array,default:()=>[]},optionList:{type:Array,default:()=>[]},isMultiple:{type:Boolean,default:!1},curPage:{type:Number,default:1},isLastPage:{type:Boolean,default:!1},isShowWhole:{type:Boolean,default:!1},loading:{type:Boolean,default:!1}},emits:["updateSelect","updatePage"],setup(e,{emit:z}){const H=e,A=t(200),I=i((()=>{var e,t;return null!=(t=null==(e=H.dynamicOptionInfo)?void 0:e.showKeys)?t:[]})),N=i((()=>I.value&&I.value.length>0?I.value.map((e=>{let t="";return H.fieldTitleList.forEach((i=>{i.columnName===e&&(t=i.title)})),t})):[])),R=i((()=>!H.optionList.filter((e=>e.label!=W.label)).length));function T(e){const t=H.curPage+e;z("updatePage",t)}function K({distance:e}){const t=A.value+e;A.value=Math.min(Math.max(t,200),1e3)}function V(){}return(t,i)=>a((l(),n("div",{class:"select-dynamic-options",style:o({minWidth:A.value+"px",position:"relative"})},[e.loading?(l(),s(c(g),{key:0,"show-icon":!1,description:"加载中..."})):(l(),n(d,{key:1},[c(R)?(l(),s(c(g),{key:0,description:"无数据"})):(l(),n(d,{key:1},[c(N)&&c(N).length>1?(l(),n("div",_,[(l(!0),n(d,null,u(c(N),(e=>(l(),n("span",{key:e,class:"name"},r(e),1)))),128))])):p("v-if",!0),v("ul",S,[(l(!0),n(d,null,u(e.optionList,(t=>(l(),n("li",{class:m(t.actived?"actived":""),key:t.value,onClick:e=>function(e){var t,i,a;if(!H.isMultiple||e.value===x.WHOLE)return null==(t=H.optionList)||t.forEach((e=>{e.actived=!1})),e.actived=!0,void z("updateSelect",[e.value]);null==(i=H.optionList)||i.forEach((e=>{e.value===x.WHOLE&&(e.actived=!1)})),e.actived?e.actived=!1:e.actived=!0;const l=null==(a=H.optionList)?void 0:a.filter((e=>e.actived)).map((e=>e.value));z("updateSelect",l)}(t)},[e.isShowWhole&&t.value===c(x).WHOLE?(l(),n("span",w,r(t.label),1)):(l(!0),n(d,{key:1},u(c(I),(e=>(l(),s(c(k),{key:e,trigger:"hover",duration:0},{trigger:f((()=>[v("span",B,r(t[e]),1)])),default:f((()=>[y(" "+r(t[e]),1)])),_:2},1024)))),128))],10,j)))),128))]),v("div",C,[h(c(L),null,{default:f((()=>[h(c(b),{onClick:i[0]||(i[0]=e=>T(-1)),disabled:e.curPage<=1},{icon:f((()=>[h(c(E),{component:c(M),size:"16"},null,8,["component"])])),default:f((()=>[y(" 上一页 ")])),_:1},8,["disabled"]),h(c(b),{"icon-placement":"right",onClick:i[1]||(i[1]=e=>T(1)),disabled:e.isLastPage},{icon:f((()=>[h(c(E),{component:c(O),size:"16"},null,8,["component"])])),default:f((()=>[y(" 下一页 ")])),_:1},8,["disabled"])])),_:1})])],64))],64))],4)),[[c(P),{mode:"VR",onMove:K,onEnd:V}]])}});export{z as default};
@@ -1 +1 @@
1
- import{DataTypeEnums as e,WidgetTypeEnums as t,WidgetOptionEnums as l}from"../types/enums.js";const a=(a,i=[])=>a===e.API?i.map((e=>{var i,n,u,r,p,o,c,d,y,s,v,E;const m=null!=(n=null==(i=e.optionInfo)?void 0:i.list)?n:[];let f=e.type;return e.type===t.LABEL&&(f=t.SELECTLABEL),e.type===t.SELECT&&!1===(null==(u=null==e?void 0:e.optionInfo)?void 0:u.manualMapping)&&(f=t.SELECTDYNAMIC),e.rangeFilter&&(e.type===t.INPUT_NUMBER&&(f=t.INPUTNUMBER_RANGE),e.type===t.DATE&&(f=t.DATE_RANGE_INNER),e.type===t.DATE_TIME&&(f=t.DATETIME_RANGE_INNER)),{dataType:a,p_name:e.name,p_type:e.dataType,title:e.title,customTitle:e.customTitle,type:f,optionSetting:e.optionType,openAdvancedFilter:e.isShowSearch,filterOutDisplay:e.filterExplicit,filterOutRequired:e.explicitRequired,width:e.width,defValCfg:{value:e.type===t.SELECT&&e.optionType===l.MULTIPLE?null!=(p=null==(r=e.defaultValue)?void 0:r.valueList)?p:[]:null!=(d=null==(c=null==(o=e.defaultValue)?void 0:o.valueList)?void 0:c[0])?d:null,presetVal:e.type===t.SELECT&&e.optionType===l.MULTIPLE?(null==(y=e.defaultValue)?void 0:y.unit)?[null==(s=e.defaultValue)?void 0:s.unit]:[]:null!=(E=null==(v=e.defaultValue)?void 0:v.unit)?E:null},mappingConfig:{mappingMethod:null,mapping:m.map((({name:e,value:t})=>({label:e,value:t})))},remark:e.remark,optionInfo:e.optionInfo,_rawData:e}})):[],i=t=>t.map((t=>{var l;const{title:a,customTitle:i,openAdvancedFilter:n,filterOutDisplay:u,filterOutRequired:r,width:p,optionSetting:o,defValCfg:c,mappingConfig:d,remark:y,_rawData:s}=t,{value:v,presetVal:E}=c,{mapping:m}=d;if(t.dataType===e.API){const{p_name:e,p_type:c,type:d}=t;return{...s,name:e,title:a,customTitle:i,type:d,dataType:c,isShowSearch:n,filterExplicit:u,explicitRequired:r,width:p,optionType:o,defaultValue:{valueList:Array.isArray(v)?v:v?[v]:[],unit:Array.isArray(E)?E[0]:E},optionInfo:{manualMapping:null==(l=null==s?void 0:s.optionInfo)?void 0:l.manualMapping,list:m.map((({label:e,value:t})=>({name:e,value:t})))},remark:y}}return null})).filter((e=>!!e)),n=(e,a)=>e.map((e=>{var i,n;const u=((e,t)=>t.find((t=>t.p_name===e)))(e.field_key,a);let r=e.value;r&&!Array.isArray(r)&&(r=[r]);const p=(null==u?void 0:u.type)!==t.SELECT&&(null==u?void 0:u.type)!==t.SELECTDYNAMIC||(null==u?void 0:u.optionSetting)!==l.MULTIPLE?null!=(i=null==r?void 0:r[0])?i:null:null!=r?r:[],o={key:e.field_key,condition:e.con,value:p,presetVal:null!=(n=e.unit)?n:null};return Object.keys(e).includes("isAccurateSearch")&&(o.isAccurateSearch=e.isAccurateSearch,o.accurateSearchKey=e.accurateSearchKey),o})),u=e=>e.map((e=>{const t={field_key:e.key,con:e.condition,value:Array.isArray(e.value)?e.value:e.value?[e.value]:[],unit:e.presetVal};return Object.keys(e).includes("isAccurateSearch")&&(t.isAccurateSearch=e.isAccurateSearch,t.accurateSearchKey=e.accurateSearchKey),t}));export{n as transformConditions,i as transformDataToEnd,a as transformDataToFront,u as transformRawConditions};
1
+ import{DataTypeEnums as e,WidgetTypeEnums as t,WidgetOptionEnums as l}from"../types/enums.js";const a=(a,i=[])=>a===e.API?i.map((e=>{var i,n,u,r,p,o,c,d,s,y,v,m;const E=null!=(n=null==(i=e.optionInfo)?void 0:i.list)?n:[];let f=e.type;return e.type===t.LABEL&&(f=t.SELECTLABEL),e.type===t.SELECT&&!1===(null==(u=null==e?void 0:e.optionInfo)?void 0:u.manualMapping)&&(f=t.SELECTDYNAMIC),e.rangeFilter&&(e.type===t.INPUT_NUMBER&&(f=t.INPUTNUMBER_RANGE),e.type===t.DATE&&(f=t.DATE_RANGE_INNER),e.type===t.DATE_TIME&&(f=t.DATETIME_RANGE_INNER)),{dataType:a,p_name:e.name,p_type:e.dataType,title:e.title,customTitle:e.customTitle,type:f,optionSetting:e.optionType,openAdvancedFilter:e.isShowSearch,filterOutDisplay:e.filterExplicit,filterOutRequired:e.explicitRequired,width:e.width,defValCfg:{value:e.type===t.SELECT&&e.optionType===l.MULTIPLE?null!=(p=null==(r=e.defaultValue)?void 0:r.valueList)?p:[]:null!=(d=null==(c=null==(o=e.defaultValue)?void 0:o.valueList)?void 0:c[0])?d:null,presetVal:e.type===t.SELECT&&e.optionType===l.MULTIPLE?(null==(s=e.defaultValue)?void 0:s.unit)?[null==(y=e.defaultValue)?void 0:y.unit]:[]:null!=(m=null==(v=e.defaultValue)?void 0:v.unit)?m:null},mappingConfig:{mappingMethod:null,mapping:E.map((({name:e,value:t})=>({label:e,value:t})))},remark:e.remark,optionInfo:e.optionInfo,_rawData:e}})):[],i=t=>t.map((t=>{var l;const{title:a,customTitle:i,openAdvancedFilter:n,filterOutDisplay:u,filterOutRequired:r,width:p,optionSetting:o,defValCfg:c,mappingConfig:d,remark:s,_rawData:y}=t,{value:v,presetVal:m}=c,{mapping:E}=d;if(t.dataType===e.API){const{p_name:e,p_type:c,type:d}=t;return{...y,name:e,title:a,customTitle:i,type:d,dataType:c,isShowSearch:n,filterExplicit:u,explicitRequired:r,width:p,optionType:o,defaultValue:{valueList:Array.isArray(v)?v:v?[v]:[],unit:Array.isArray(m)?m[0]:m},optionInfo:{manualMapping:null==(l=null==y?void 0:y.optionInfo)?void 0:l.manualMapping,list:E.map((({label:e,value:t})=>({name:e,value:t})))},remark:s}}return null})).filter((e=>!!e)),n=(e,a)=>e.map((e=>{var i,n,u;const r=((e,t)=>t.find((t=>t.p_name===e)))(e.field_key,a);let p=e.value;p&&!Array.isArray(p)&&(p=[p]);const o=(null==r?void 0:r.type)!==t.SELECT&&(null==r?void 0:r.type)!==t.SELECTDYNAMIC||(null==r?void 0:r.optionSetting)!==l.MULTIPLE?null!=(i=null==p?void 0:p[0])?i:null:null!=p?p:[],c={key:e.field_key,condition:e.con,value:o,presetVal:null!=(n=e.unit)?n:null,dynamicBaseList:null!=(u=null==e?void 0:e.dynamicBaseList)?u:[]};return Object.keys(e).includes("isAccurateSearch")&&(c.isAccurateSearch=e.isAccurateSearch,c.accurateSearchKey=e.accurateSearchKey),c})),u=e=>e.map((e=>{const t={field_key:e.key,con:e.condition,value:Array.isArray(e.value)?e.value:e.value?[e.value]:[],unit:e.presetVal,dynamicBaseList:e.dynamicBaseList||[]};return Object.keys(e).includes("isAccurateSearch")&&(t.isAccurateSearch=e.isAccurateSearch,t.accurateSearchKey=e.accurateSearchKey),t}));export{n as transformConditions,i as transformDataToEnd,a as transformDataToFront,u as transformRawConditions};
@@ -90,6 +90,7 @@ export type ISearchConfigType = {
90
90
  wordbookValueList?: any;
91
91
  isAccurateSearch?: boolean;
92
92
  accurateSearchKey?: string;
93
+ dynamicBaseList?: any[];
93
94
  };
94
95
  export type ITreeDataType = {
95
96
  name: string;
package/es/env.d.ts CHANGED
@@ -1,25 +1,25 @@
1
- /// <reference types="vite/client" />
2
-
3
- interface ImportMetaEnv {
4
- readonly VITE_APP_TYPE: string;
5
- // 更多环境变量...
6
- }
7
-
8
- interface ImportMeta {
9
- readonly env: ImportMetaEnv;
10
- }
11
-
12
- declare module '*.vue' {
13
- // @ts-ignore
14
- import type { App, defineComponent } from 'vue';
15
- // // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/ban-types
16
- // // const component: DefineComponent<{}, {}, any>
17
- const component: ReturnType<typeof defineComponent> & {
18
- install(app: App): void;
19
- };
20
- // @ts-ignore
21
- export default component;
22
- }
23
-
24
- declare module '*.js';
25
-
1
+ /// <reference types="vite/client" />
2
+
3
+ interface ImportMetaEnv {
4
+ readonly VITE_APP_TYPE: string;
5
+ // 更多环境变量...
6
+ }
7
+
8
+ interface ImportMeta {
9
+ readonly env: ImportMetaEnv;
10
+ }
11
+
12
+ declare module '*.vue' {
13
+ // @ts-ignore
14
+ import type { App, defineComponent } from 'vue';
15
+ // // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/ban-types
16
+ // // const component: DefineComponent<{}, {}, any>
17
+ const component: ReturnType<typeof defineComponent> & {
18
+ install(app: App): void;
19
+ };
20
+ // @ts-ignore
21
+ export default component;
22
+ }
23
+
24
+ declare module '*.js';
25
+
@@ -1 +1 @@
1
- var e="@cnhis-design-vue/shared",i="3.2.7-beta.10",s="index.ts",n={"naive-ui":"^2.30.0",vue:"^3.2.0"},a={"@vicons/ionicons5":"^0.12.0","lodash-es":"^4.17.21",moment:"^2.29.1","video.js":"^7.19.2","videojs-contrib-hls":"^5.15.0",viewerjs:"^1.10.5","xe-utils":"^3.5.4"},d={name:e,version:"3.2.7-beta.10",private:!0,main:"index.ts",peerDependencies:n,dependencies:a};export{d as default,a as dependencies,s as main,e as name,n as peerDependencies,i as version};
1
+ var e="@cnhis-design-vue/shared",i="3.2.7-beta.12",s="index.ts",n={"naive-ui":"^2.30.0",vue:"^3.2.0"},a={"@vicons/ionicons5":"^0.12.0","lodash-es":"^4.17.21",moment:"^2.29.1","video.js":"^7.19.2","videojs-contrib-hls":"^5.15.0",viewerjs:"^1.10.5","xe-utils":"^3.5.4"},d={name:e,version:"3.2.7-beta.12",private:!0,main:"index.ts",peerDependencies:n,dependencies:a};export{d as default,a as dependencies,s as main,e as name,n as peerDependencies,i as version};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cnhis-design-vue",
3
- "version": "3.2.7-beta.10",
3
+ "version": "3.2.7-beta.12",
4
4
  "license": "ISC",
5
5
  "module": "./es/components/index.js",
6
6
  "main": "./es/components/index.js",
@@ -72,5 +72,5 @@
72
72
  "iOS 7",
73
73
  "last 3 iOS versions"
74
74
  ],
75
- "gitHead": "7d40447f6732f9d13e8a1e76a6e53dbf902ac85f"
75
+ "gitHead": "166987e73913ddabf5a2ab2d7e51d932d648743a"
76
76
  }