cnhis-design-vue 3.2.15-beta.20 → 3.2.15-beta.22

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.
@@ -1204,7 +1204,6 @@ declare const ExpandField: SFCWithInstall<import("vue").DefineComponent<{
1204
1204
  key: string | number;
1205
1205
  }[]>;
1206
1206
  isSearch: import("vue").Ref<boolean>;
1207
- tempData: import("naive-ui").TreeOption[];
1208
1207
  allCheckedTreeKeys: import("vue").Ref<(string | number)[]>;
1209
1208
  isRemote: import("vue").ComputedRef<boolean>;
1210
1209
  checkStrategyResult: import("vue").ComputedRef<any>;
@@ -1268,6 +1267,7 @@ declare const ExpandField: SFCWithInstall<import("vue").DefineComponent<{
1268
1267
  notifyCheck: (keys: (string | number)[]) => void;
1269
1268
  notifySearchClear: () => void;
1270
1269
  getCheckWithLevel: () => any;
1270
+ resetParams: () => void;
1271
1271
  NButton: any;
1272
1272
  NInput: any;
1273
1273
  NInputGroup: any;
@@ -878,7 +878,6 @@ declare const _default: import("vue").DefineComponent<{
878
878
  key: string | number;
879
879
  }[]>;
880
880
  isSearch: import("vue").Ref<boolean>;
881
- tempData: import("naive-ui").TreeOption[];
882
881
  allCheckedTreeKeys: import("vue").Ref<(string | number)[]>;
883
882
  isRemote: import("vue").ComputedRef<boolean>;
884
883
  checkStrategyResult: import("vue").ComputedRef<any>;
@@ -942,6 +941,7 @@ declare const _default: import("vue").DefineComponent<{
942
941
  notifyCheck: (keys: (string | number)[]) => void;
943
942
  notifySearchClear: () => void;
944
943
  getCheckWithLevel: () => any;
944
+ resetParams: () => void;
945
945
  NButton: any;
946
946
  NInput: any;
947
947
  NInputGroup: any;
@@ -837,7 +837,6 @@ declare const _default: import("vue").DefineComponent<{
837
837
  key: string | number;
838
838
  }[]>;
839
839
  isSearch: import("vue").Ref<boolean>;
840
- tempData: import("naive-ui").TreeOption[];
841
840
  allCheckedTreeKeys: import("vue").Ref<(string | number)[]>;
842
841
  isRemote: import("vue").ComputedRef<boolean>;
843
842
  checkStrategyResult: import("vue").ComputedRef<any>;
@@ -901,6 +900,7 @@ declare const _default: import("vue").DefineComponent<{
901
900
  notifyCheck: (keys: (string | number)[]) => void;
902
901
  notifySearchClear: () => void;
903
902
  getCheckWithLevel: () => any;
903
+ resetParams: () => void;
904
904
  NButton: any;
905
905
  NInput: any;
906
906
  NInputGroup: any;
@@ -1148,7 +1148,6 @@ declare const _default: import("vue").DefineComponent<{
1148
1148
  key: string | number;
1149
1149
  }[]>;
1150
1150
  isSearch: import("vue").Ref<boolean>;
1151
- tempData: import("naive-ui").TreeOption[];
1152
1151
  allCheckedTreeKeys: import("vue").Ref<(string | number)[]>;
1153
1152
  isRemote: import("vue").ComputedRef<boolean>;
1154
1153
  checkStrategyResult: import("vue").ComputedRef<any>;
@@ -1212,6 +1211,7 @@ declare const _default: import("vue").DefineComponent<{
1212
1211
  notifyCheck: (keys: (string | number)[]) => void;
1213
1212
  notifySearchClear: () => void;
1214
1213
  getCheckWithLevel: () => any;
1214
+ resetParams: () => void;
1215
1215
  NButton: any;
1216
1216
  NInput: any;
1217
1217
  NInputGroup: any;
@@ -1206,7 +1206,6 @@ declare const _default: import("vue").DefineComponent<{
1206
1206
  key: string | number;
1207
1207
  }[]>;
1208
1208
  isSearch: import("vue").Ref<boolean>;
1209
- tempData: import("naive-ui").TreeOption[];
1210
1209
  allCheckedTreeKeys: import("vue").Ref<(string | number)[]>;
1211
1210
  isRemote: import("vue").ComputedRef<boolean>;
1212
1211
  checkStrategyResult: import("vue").ComputedRef<any>;
@@ -1270,6 +1269,7 @@ declare const _default: import("vue").DefineComponent<{
1270
1269
  notifyCheck: (keys: (string | number)[]) => void;
1271
1270
  notifySearchClear: () => void;
1272
1271
  getCheckWithLevel: () => any;
1272
+ resetParams: () => void;
1273
1273
  NButton: any;
1274
1274
  NInput: any;
1275
1275
  NInputGroup: any;
@@ -783,7 +783,6 @@ declare const SelectPerson: SFCWithInstall<import("vue").DefineComponent<{
783
783
  key: string | number;
784
784
  }[]>;
785
785
  isSearch: import("vue").Ref<boolean>;
786
- tempData: import("naive-ui").TreeOption[];
787
786
  allCheckedTreeKeys: import("vue").Ref<(string | number)[]>;
788
787
  isRemote: import("vue").ComputedRef<boolean>;
789
788
  checkStrategyResult: import("vue").ComputedRef<any>;
@@ -847,6 +846,7 @@ declare const SelectPerson: SFCWithInstall<import("vue").DefineComponent<{
847
846
  notifyCheck: (keys: (string | number)[]) => void;
848
847
  notifySearchClear: () => void;
849
848
  getCheckWithLevel: () => any;
849
+ resetParams: () => void;
850
850
  NButton: any;
851
851
  NInput: any;
852
852
  NInputGroup: any;
@@ -209,7 +209,6 @@ declare const _default: import("vue").DefineComponent<{
209
209
  key: IKey;
210
210
  }[]>;
211
211
  isSearch: import("vue").Ref<boolean>;
212
- tempData: TreeOption[];
213
212
  allCheckedTreeKeys: import("vue").Ref<IKey[]>;
214
213
  isRemote: import("vue").ComputedRef<boolean>;
215
214
  checkStrategyResult: import("vue").ComputedRef<any>;
@@ -264,6 +263,7 @@ declare const _default: import("vue").DefineComponent<{
264
263
  notifyCheck: (keys: IKey[]) => void;
265
264
  notifySearchClear: () => void;
266
265
  getCheckWithLevel: () => any;
266
+ resetParams: () => void;
267
267
  NButton: any;
268
268
  NInput: any;
269
269
  NInputGroup: any;
@@ -1 +1 @@
1
- import{defineComponent as e,inject as l,ref as t,computed as n,reactive as a,watch as i,openBlock as o,createBlock as u,unref as r,withCtx as c,createVNode as d,createCommentVNode as s,withKeys as v,createTextVNode as p,toDisplayString as h,createElementBlock as y,Fragment as f,renderList as k,withDirectives as m,vShow as g,mergeProps as w,createElementVNode as b,renderSlot as _}from"vue";import{NGrid as S,NGi as T,NSpace as C,NInputGroup as L,NInput as x,NIcon as j,NButton as B,NTag as F,NCheckbox as O,NEmpty as D,NTree as E}from"naive-ui";import{CloseCircleSharp as N}from"@vicons/ionicons5";import{searchFilterTree as I,getExpandedKeys as P}from"./utils/index.js";import{cloneDeep as $}from"lodash-es";import{SelectItemTypesConfig as R,SelectRoleEnumsConfig as A,SearchTypeConfig as K}from"./types/enums.js";import U from"./components/SearchMultiple.vue.js";import q from"./components/SearchOrgAndStaff.vue.js";import{InjectionSelectPersonEmits as H}from"./constants/index.js";var M,W;const G={key:0,class:"select-type-tags"},z={key:4,class:"tree-content"},J={key:0},Q={class:"c-select-person__scroll",style:{height:"342px"}};var V=e({__name:"SelectPerson",props:{defaultList:{type:Array,default:()=>[]},data:{type:Array,default:()=>[]},searchPlaceholder:{type:String,default:(null==(M=window.getLanguageByCode)?void 0:M.call(window,"10010.1.508"))||"输入关键字搜索"},searchButtonText:{type:String,default:(null==(W=window.getLanguageByCode)?void 0:W.call(window,"10010.1.36"))||"搜索"},wordbook:{type:Object,default:()=>({})},wordbookChild:{type:Object,default:()=>({})},showCount:{type:Boolean,default:!0},showClear:{type:Boolean,default:!0},multiple:{type:Boolean,default:!0},searchInner:{type:Boolean,default:!1},searchFilter:{type:Object,default:()=>({})},treeSetting:{type:Object,default:()=>({})},queryLoadChildData:{type:Function,default:void 0},queryTreeSearch:{type:Function,default:()=>Promise.resolve([])},showSelectType:{type:Boolean,default:!1},roleData:{type:Array,default:()=>[]},roleFields:{type:Object,default:()=>({label:"name",key:"id",children:"children"})},forceShowSelectAll:{type:Boolean}},setup(e,{expose:M}){var W,V,X,Y,Z,ee,le;const te=e,ne={isOpen:!1,multiple:!1,customTitles:[(null==(W=window.getLanguageByCode)?void 0:W.call(window,"10010.1.510"))||"联系人",(null==(V=window.getLanguageByCode)?void 0:V.call(window,"10010.1.511"))||"部门"],itemHeight:250},ae=[{key:"main",label:(null==(X=window.getLanguageByCode)?void 0:X.call(window,"10010.1.512"))||"选人员"},{key:"dept",label:(null==(Y=window.getLanguageByCode)?void 0:Y.call(window,"10010.1.513"))||"选科室"},{key:"role",label:(null==(Z=window.getLanguageByCode)?void 0:Z.call(window,"10010.1.514"))||"选角色"}],ie={dept:(null==(ee=window.getLanguageByCode)?void 0:ee.call(window,"10010.1.202"))||"科室",role:(null==(le=window.getLanguageByCode)?void 0:le.call(window,"10010.1.515"))||"角色"},oe=l(H),ue=t(""),re=t(!1),ce=t([]),de=t([]),se=t([]),ve=t([]),pe=t([]),he=t(!1),ye=$(function e(l){var t;for(let n=0,a=l.length;n<a;n++){const a=l[n],i=te.wordbook.children||"children";if(null==(t=a[i])?void 0:t.length){const l=Ke(a[i],[]);a.innerItemsNum=l.length,a.innerLeafs=l,a.children=e(a[i])}}return te.showSelectType?l:Ue(l,"")}(te.data)),fe=t([]),ke=n((()=>!!te.queryLoadChildData)),me=n((()=>{var e,l;return null!=(l=null==(e=null==te?void 0:te.treeSetting)?void 0:e.checkStrategy)?l:"child"})),ge=n((()=>(null==te?void 0:te.searchFilter)&&Object.keys(null==te?void 0:te.searchFilter).length>0)),we=t("main"),be=n((()=>ge.value?{...$(ne),...te.searchFilter}:$(ne))),_e=n((()=>{var e,l;return null!=(l=null==(e=null==te?void 0:te.wordbookChild)?void 0:e.user_expand_keys)?l:[]})),Se=n((()=>{if(te.showSelectType){return function(e,l){let t={};return e.reduce(((e,n)=>(!t[n[l]]&&(t[n[l]]=e.push(n)),e)),[])}([...Le.main.filter((e=>(e.itemType=R.PERSON,e[je.value]==A.STAFF))),...Le.dept.filter((e=>(e.itemType=R.DEPT,e[je.value]==A.DEPT))),...Le.role.filter((e=>(e.itemType=R.ROLE,e)))],"key")}let e=[];return ce.value.forEach((l=>{for(let t=0,n=ve.value.length;t<n;t++){const n=ve.value[t];if(n.key==l){e.push(n);break}}})),e})),Te=a({main:[],dept:[],role:[],temp:[]}),Ce=a({main:[],dept:[],role:[]}),Le=a({main:[],dept:[],role:[]}),xe=a({main:[],dept:[],role:[]}),je=n((()=>{var e;return(null==(e=te.wordbook)?void 0:e.type)||"type"})),Be=n((()=>te.wordbookChild.user_id_obj||te.wordbook.parent_id_obj||Date.now()));function Fe(){Te.main=Te.temp=ye,Ne(Te.temp,null,(e=>{xe.main.push(e.key)})),fe.value=xe.main,Te.dept=Oe($(ye),(e=>{xe.dept.push(e.key)})),Te.role=De($(te.roleData),(e=>{xe.role.push(e.key)}))}function Oe(e,l){return e.filter((e=>{var t;te.showSelectType&&(null==(t=e.children)?void 0:t.length)&&(e.children=Oe(e.children,l));const n=e[je.value]==A.DEPT;return n&&Ie(e,l),n}))}function De(e,l){const{label:t,key:n,children:a="children"}=te.roleFields;return e.map((e=>{var i;return e.key=e[n],e.label=e.title=e[t],(null==(i=e[a])?void 0:i.length)&&(e.children=De(e[a],l)),Ie(e,l),e}))}function Ee(e,l){var t,n;const a=["main","dept"].includes(l)?Be.value:null==(t=te.roleFields)?void 0:t.key;for(let t=0,i=e.length;t<i;t++){const i=e[t],o=pe.value.map((e=>e.key));Ce[l].includes(i.key)&&!o.includes(i.key)&&Le[l].push({...i,key:i[a]}),(null==(n=i.children)?void 0:n.length)&&Ee(i.children,l)}}function Ne(e,l,t){var n,a;for(let i=0,o=e.length;i<o;i++){const o=e[i];let u=_e.value.reduce(((e,l)=>e+(o[l]?`${o[l]},`:"")),"");o.title_expand_strs=u.slice(0,-1),o.title=Ae(o),o.label=Ae(o),o.parentNode=l,o.key||(o.key=o[te.wordbookChild.user_id_obj]||o[te.wordbook.parent_id_obj]||Date.now()),(null==(n=o.children)?void 0:n.length)?(Ne(o.children,o,t),$e(o)):0===(null==(a=o.children)?void 0:a.length)&&Reflect.deleteProperty(o,"children"),Ie(o,t)}}function Ie(e,l){var t,n;switch(null!=(n=null==(t=null==te?void 0:te.treeSetting)?void 0:t.checkStrategy)?n:"child"){case"child":!function(e,l){e.disabled||e.children||!e.key||l&&l(e)}(e,l);break;case"parent":!function(e,l){e.disabled||e.tempTitle||!e.key||l&&l(e)}(e,l)}}async function Pe(e){if(te.queryLoadChildData){const l=await te.queryLoadChildData(e);return l.children&&(l.children=l.children.map((e=>({...e,tempTitle:l.tempTitle?`${l.title}/${l.tempTitle}`:l.title})))),l}return e}function $e(e){var l;(null==(l=e.children)?void 0:l.every((e=>e.disabled)))&&(e.disabled=!0)}function Re({option:e}){var l,t;if((null==(l=e.children)?void 0:l.length)||ke.value&&!(null==e?void 0:e.isLeaf)){const l=te.wordbook.user_count_obj&&e[te.wordbook.user_count_obj]||"",t=l?`(${l})`:"",n=`${e.title}${t}`;return d("span",{title:n},[n])}{const l=null!=(t=e.title_expand_strs)?t:"";return d("p",{class:"user_item"},[d("span",{title:e.title},[e.title]),d("span",{class:"user_item_expand",title:l},[l])])}}function Ae(e){return e[te.wordbookChild.user_name_obj]||e[te.wordbook.parent_name_obj]||e.orgName||e.title||""}function Ke(e,l){var t;for(let n=0,a=e.length;n<a;n++){const a=e[n];(null==(t=a.children)?void 0:t.length)?Ke(a.children,l):!a.disabled&&l.push(a)}return l}function Ue(e,l){return e&&0!==e.length?e.map((e=>{var t;const n=Ae(e),a=l?`${n}/${l}`:n;return{...e,tempTitle:l,children:(null==(t=e.children)?void 0:t.length)?Ue(null==e?void 0:e.children,a):[]}})):[]}async function qe(){var e,l;const t=null!=(l=null==(e=null==te?void 0:te.wordbook)?void 0:e.filter_key)?l:"keyword";if(he.value=!!ue.value.trim(),ke.value)se.value=await te.queryTreeSearch(ue.value);else{const e=function(){const e={[K.SEARCH_ORG_STAFF]:ge.value,[K.SEARCH_ORG]:te.searchInner},l=Object.keys(e).find((l=>e[l]));return null!=l?l:""}();se.value=I(e,Te.temp,ue.value,t)}de.value=se.value.length&&ue.value?P(se.value):[]}function He(e,l){var t,n;switch(null!=(n=null==(t=null==te?void 0:te.treeSetting)?void 0:t.checkStrategy)?n:"child"){case"child":!function(e,l){for(let t=0,n=e.length;t<n;t++){const n=e[t];if(!n.disabled&&(!n.children||n.isLeaf)&&(l&&!ce.value.includes(n.key)&&ce.value.push(n.key),!l)){const e=ce.value.findIndex((e=>e===n.key));ce.value.splice(e,1)}n.children&&He(n.children,l)}}(e,l);break;case"parent":!function(e,l){ce.value=[];for(let t=0,n=e.length;t<n;t++){const n=e[t];if(!n.disabled&&!n.tempTitle&&(l&&!ce.value.includes(n.key)&&ce.value.push(n.key),!l)){const e=ce.value.findIndex((e=>e===n.key));ce.value.splice(e,1)}}}(e,l)}}function Me(e){He(se.value,e)}function We(e){var l;for(let t=0,n=e.length;t<n;t++){const n=e[t],a=pe.value.map((e=>e.key));ce.value.includes(n.key)&&!a.includes(n.key)&&ve.value.push({key:n.key,name:n.title,parentName:n.tempTitle,innerItemsNum:n.innerItemsNum,innerLeafs:n.innerLeafs,originItem:n}),(null==(l=n.children)?void 0:l.length)&&We(n.children)}}function Ge(e){if(te.showSelectType){const l=we.value;ce.value=Ce[l]=e}else ce.value=e}function ze(){Object.keys(Ce).forEach((e=>{Ce[e]=Le[e]=[]})),ce.value=[]}function Je(e){ce.value=e}function Qe(){ue.value="",setTimeout((()=>{qe()}))}return i((()=>te.data),(e=>{!function(){if(Fe(),se.value=Te.temp,te.defaultList.length>0)if(ke.value)te.defaultList.forEach((e=>ce.value.push(e.key))),ve.value=$(te.defaultList),pe.value=$(te.defaultList);else{if(te.showSelectType){const e=we.value;return te.defaultList.forEach((e=>{e.itemType===R.PERSON&&(Ce.main.push(e[Be.value]),Le.main.push(e)),e.itemType===R.DEPT&&(Ce.dept.push(e[Be.value]),Le.dept.push(e)),e.itemType===R.ROLE&&(Ce.role.push(e[te.roleFields.key]),Le.role.push(e))})),void(ce.value=Ce[e])}te.defaultList.forEach((e=>ce.value.push(e))),We(Te.temp)}}()}),{immediate:!0}),i((()=>ce),(e=>{if(te.showSelectType){const l=we.value;Le[l]=pe.value.filter((l=>e.value.includes(l.key))),Ee(Te[l],l),te.showSelectType?re.value=fe.value.every((e=>ce.value.findIndex((l=>l===e))>-1)):re.value=fe.value.every((e=>ve.value.findIndex((l=>l.key===e))>-1));const t=Se.value.map((e=>e.key));return oe("check",t),void oe("checkWithLevel",Se.value)}ve.value=pe.value.filter((l=>e.value.includes(l.key))),We(ke.value?se.value:Te.temp);const l=ve.value.filter((l=>e.value.includes(l.key)));oe("check",e.value),oe("checkWithLevel",l)}),{deep:!0}),i((()=>ue.value),(e=>{e||Qe()})),M({getCheckWithLevel:function(){var e;if(te.showSelectType)return null!=(e=Se.value)?e:[];const l=ce.value,t=ve.value.filter((e=>l.includes(e.key)));return null!=t?t:[]}}),(l,t)=>(o(),u(r(S),{cols:2,class:"c-select-person"},{default:c((()=>[d(r(T),null,{default:c((()=>[d(r(C),{vertical:"",style:{"padding-right":"12px","border-right":"1px solid #e8e8e8"}},{default:c((()=>{var l;return[d(r(L),{style:{"margin-bottom":"12px"}},{default:c((()=>[s(" clearable "),d(r(x),{class:"search-input",value:ue.value,"onUpdate:value":t[0]||(t[0]=e=>ue.value=e),placeholder:e.searchPlaceholder,onKeyup:v(qe,["enter"])},{suffix:c((()=>[ue.value?(o(),u(r(j),{key:0,class:"search-clear",component:r(N),size:"16",onClick:Qe},null,8,["component"])):s("v-if",!0)])),_:1},8,["value","placeholder","onKeyup"]),d(r(B),{type:"primary",onClick:qe},{default:c((()=>[p(h(e.searchButtonText),1)])),_:1})])),_:1}),e.showSelectType?(o(),y("div",G,[(o(),y(f,null,k(ae,(e=>d(r(F),{round:"",checkable:"",checked:we.value===e.key,key:e.key,"onUpdate:checked":l=>function(e){we.value=e.key,se.value=Te.temp=Te[e.key],ce.value=Ce[e.key],fe.value=xe[e.key]}(e)},{default:c((()=>[p(h(e.label),1)])),_:2},1032,["checked","onUpdate:checked"]))),64))])):s("v-if",!0),e.multiple&&!he.value?m((o(),u(r(O),{key:1,checked:re.value,"onUpdate:checked":[t[1]||(t[1]=e=>re.value=e),Me]},{default:c((()=>{var e;return[p((null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.37"))||"全选")]})),_:1},8,["checked"])),[[g,e.forceShowSelectAll||fe.value.length<1e3]]):s("v-if",!0),s(" 支持选人 "),e.searchInner&&e.multiple&&he.value&&"parent"===r(me)?(o(),u(U,{key:2,treeData:se.value,checkedKeys:ce.value,onNotifyCheck:Je},null,8,["treeData","checkedKeys"])):r(ge)&&he.value&&"parent"===r(me)?(o(),y(f,{key:3},[s(" 同时兼容选人和选部门 "),s(" v-else-if=\"isSearchFilter && multiple && isSearch && checkStrategyResult === 'parent'\" "),d(q,{treeData:se.value,checkedKeys:ce.value,searchFilter:r(be),isMultiple:e.multiple,onNotifyCheck:Je,onNotifyClear:Qe},null,8,["treeData","checkedKeys","searchFilter","isMultiple"])],2112)):(o(),y("div",z,[0===se.value.length?(o(),u(r(D),{key:0,description:(null==(l=window.getLanguageByCode)?void 0:l.call(window,"10010.1.445"))||"暂无数据"})):(o(),u(r(E),w({key:1,"virtual-scroll":"",class:"c-select-person__scroll","checked-keys":ce.value,"expanded-keys":de.value,"onUpdate:expanded-keys":t[2]||(t[2]=e=>de.value=e),checkable:e.multiple,cascade:"","allow-checking-not-loaded":"",selectable:!e.multiple,"selected-keys":ce.value,"onUpdate:selected-keys":t[3]||(t[3]=e=>ce.value=e),data:se.value,"check-strategy":"child","render-label":Re},e.treeSetting,{"onUpdate:checkedKeys":Ge,onLoad:Pe}),null,16,["checked-keys","expanded-keys","checkable","selectable","selected-keys","data"]))]))]})),_:1})])),_:1}),d(r(T),null,{default:c((()=>[d(r(C),{vertical:"",style:{"padding-left":"12px"}},{default:c((()=>[d(r(C),{justify:"space-between",style:{"margin-bottom":"20px"}},{default:c((()=>{var l;return[e.showCount?(o(),y("span",J,"已选择:"+h(r(Se).length),1)):s("v-if",!0),e.showClear?(o(),y("span",{key:1,class:"c-select-person__clear-btn",onClick:ze},(null==(l=window.getLanguageByCode)?void 0:l.call(window,"10010.1.509"))||"清空")):s("v-if",!0)]})),_:1}),b("div",Q,[(o(!0),y(f,null,k(r(Se),(t=>(o(),y("span",{class:"c-select-person__tag-item",key:t.key},[s(" 标签插槽 "),_(l.$slots,"tag",{tag:t},(()=>[p(h(t.name)+" "+h(t.parentName?`(${t.parentName})`:"")+" "+h(t.innerItemsNum?`(${t.innerItemsNum}人)`:"")+" "+h(e.showSelectType&&ie[t.itemType]?`(${ie[t.itemType]})`:""),1)])),d(r(j),{class:"tag-close",component:r(N),onClick:e=>function(e){if(te.showSelectType){const l=e.itemType===R.PERSON?"main":e.itemType;return Ce[l]=Ce[l].filter((l=>l!==e.key)),Le[l]=pe.value.filter((e=>Ce[l].includes(e.key))),Ee(Te[l],l),void(we.value==l&&(ce.value=Ce[l]))}ce.value=ce.value.filter((l=>l!==e.key))}(t)},null,8,["component","onClick"])])))),128))])])),_:3})])),_:3})])),_:3}))}});export{V as default};
1
+ import{defineComponent as e,inject as l,ref as t,computed as n,reactive as a,watch as i,openBlock as u,createBlock as o,unref as r,withCtx as c,createVNode as d,createCommentVNode as s,withKeys as v,createTextVNode as p,toDisplayString as h,createElementBlock as y,Fragment as f,renderList as k,withDirectives as m,vShow as g,mergeProps as w,createElementVNode as b,renderSlot as _}from"vue";import{NGrid as S,NGi as T,NSpace as C,NInputGroup as L,NInput as x,NIcon as j,NButton as B,NTag as F,NCheckbox as O,NEmpty as D,NTree as E}from"naive-ui";import{CloseCircleSharp as N}from"@vicons/ionicons5";import{searchFilterTree as I,getExpandedKeys as P}from"./utils/index.js";import{cloneDeep as $}from"lodash-es";import{SelectItemTypesConfig as R,SelectRoleEnumsConfig as A,SearchTypeConfig as K}from"./types/enums.js";import U from"./components/SearchMultiple.vue.js";import q from"./components/SearchOrgAndStaff.vue.js";import{InjectionSelectPersonEmits as H}from"./constants/index.js";var M,W;const G={key:0,class:"select-type-tags"},z={key:4,class:"tree-content"},J={key:0},Q={class:"c-select-person__scroll",style:{height:"342px"}};var V=e({__name:"SelectPerson",props:{defaultList:{type:Array,default:()=>[]},data:{type:Array,default:()=>[]},searchPlaceholder:{type:String,default:(null==(M=window.getLanguageByCode)?void 0:M.call(window,"10010.1.508"))||"输入关键字搜索"},searchButtonText:{type:String,default:(null==(W=window.getLanguageByCode)?void 0:W.call(window,"10010.1.36"))||"搜索"},wordbook:{type:Object,default:()=>({})},wordbookChild:{type:Object,default:()=>({})},showCount:{type:Boolean,default:!0},showClear:{type:Boolean,default:!0},multiple:{type:Boolean,default:!0},searchInner:{type:Boolean,default:!1},searchFilter:{type:Object,default:()=>({})},treeSetting:{type:Object,default:()=>({})},queryLoadChildData:{type:Function,default:void 0},queryTreeSearch:{type:Function,default:()=>Promise.resolve([])},showSelectType:{type:Boolean,default:!1},roleData:{type:Array,default:()=>[]},roleFields:{type:Object,default:()=>({label:"name",key:"id",children:"children"})},forceShowSelectAll:{type:Boolean}},setup(e,{expose:M}){var W,V,X,Y,Z,ee,le;const te=e,ne={isOpen:!1,multiple:!1,customTitles:[(null==(W=window.getLanguageByCode)?void 0:W.call(window,"10010.1.510"))||"联系人",(null==(V=window.getLanguageByCode)?void 0:V.call(window,"10010.1.511"))||"部门"],itemHeight:250},ae=[{key:"main",label:(null==(X=window.getLanguageByCode)?void 0:X.call(window,"10010.1.512"))||"选人员"},{key:"dept",label:(null==(Y=window.getLanguageByCode)?void 0:Y.call(window,"10010.1.513"))||"选科室"},{key:"role",label:(null==(Z=window.getLanguageByCode)?void 0:Z.call(window,"10010.1.514"))||"选角色"}],ie={dept:(null==(ee=window.getLanguageByCode)?void 0:ee.call(window,"10010.1.202"))||"科室",role:(null==(le=window.getLanguageByCode)?void 0:le.call(window,"10010.1.515"))||"角色"},ue=l(H),oe=t(""),re=t(!1),ce=t([]),de=t([]),se=t([]),ve=t([]),pe=t([]),he=t(!1),ye=t([]),fe=n((()=>!!te.queryLoadChildData)),ke=n((()=>{var e,l;return null!=(l=null==(e=null==te?void 0:te.treeSetting)?void 0:e.checkStrategy)?l:"child"})),me=n((()=>(null==te?void 0:te.searchFilter)&&Object.keys(null==te?void 0:te.searchFilter).length>0)),ge=t("main"),we=n((()=>me.value?{...$(ne),...te.searchFilter}:$(ne))),be=n((()=>{var e,l;return null!=(l=null==(e=null==te?void 0:te.wordbookChild)?void 0:e.user_expand_keys)?l:[]})),_e=n((()=>{if(te.showSelectType){return function(e,l){let t={};return e.reduce(((e,n)=>(!t[n[l]]&&(t[n[l]]=e.push(n)),e)),[])}([...Ce.main.filter((e=>(e.itemType=R.PERSON,e[xe.value]==A.STAFF))),...Ce.dept.filter((e=>(e.itemType=R.DEPT,e[xe.value]==A.DEPT))),...Ce.role.filter((e=>(e.itemType=R.ROLE,e)))],"key")}let e=[];return ce.value.forEach((l=>{for(let t=0,n=ve.value.length;t<n;t++){const n=ve.value[t];if(n.key==l){e.push(n);break}}})),e})),Se=a({main:[],dept:[],role:[],temp:[]}),Te=a({main:[],dept:[],role:[]}),Ce=a({main:[],dept:[],role:[]}),Le=a({main:[],dept:[],role:[]}),xe=n((()=>{var e;return(null==(e=te.wordbook)?void 0:e.type)||"type"})),je=n((()=>te.wordbookChild.user_id_obj||te.wordbook.parent_id_obj||Date.now()));function Be(){const e=$(Ae(te.data));Se.main=Se.temp=e,Ee(Se.temp,null,(e=>{Le.main.push(e.key)})),ye.value=Le.main,Se.dept=Fe($(e),(e=>{Le.dept.push(e.key)})),Se.role=Oe($(te.roleData),(e=>{Le.role.push(e.key)}))}function Fe(e,l){return e.filter((e=>{var t;te.showSelectType&&(null==(t=e.children)?void 0:t.length)&&(e.children=Fe(e.children,l));const n=e[xe.value]==A.DEPT;return n&&Ne(e,l),n}))}function Oe(e,l){const{label:t,key:n,children:a="children"}=te.roleFields;return e.map((e=>{var i;return e.key=e[n],e.label=e.title=e[t],(null==(i=e[a])?void 0:i.length)&&(e.children=Oe(e[a],l)),Ne(e,l),e}))}function De(e,l){var t,n;const a=["main","dept"].includes(l)?je.value:null==(t=te.roleFields)?void 0:t.key;for(let t=0,i=e.length;t<i;t++){const i=e[t],u=pe.value.map((e=>e.key));Te[l].includes(i.key)&&!u.includes(i.key)&&Ce[l].push({...i,key:i[a]}),(null==(n=i.children)?void 0:n.length)&&De(i.children,l)}}function Ee(e,l,t){var n,a;for(let i=0,u=e.length;i<u;i++){const u=e[i];let o=be.value.reduce(((e,l)=>e+(u[l]?`${u[l]},`:"")),"");u.title_expand_strs=o.slice(0,-1),u.title=Re(u),u.label=Re(u),u.parentNode=l,u.key||(u.key=u[te.wordbookChild.user_id_obj]||u[te.wordbook.parent_id_obj]||Date.now()),(null==(n=u.children)?void 0:n.length)?(Ee(u.children,u,t),Pe(u)):0===(null==(a=u.children)?void 0:a.length)&&Reflect.deleteProperty(u,"children"),Ne(u,t)}}function Ne(e,l){var t,n;switch(null!=(n=null==(t=null==te?void 0:te.treeSetting)?void 0:t.checkStrategy)?n:"child"){case"child":!function(e,l){e.disabled||e.children||!e.key||l&&l(e)}(e,l);break;case"parent":!function(e,l){e.disabled||e.tempTitle||!e.key||l&&l(e)}(e,l)}}async function Ie(e){if(te.queryLoadChildData){const l=await te.queryLoadChildData(e);return l.children&&(l.children=l.children.map((e=>({...e,tempTitle:l.tempTitle?`${l.title}/${l.tempTitle}`:l.title})))),l}return e}function Pe(e){var l;(null==(l=e.children)?void 0:l.every((e=>e.disabled)))&&(e.disabled=!0)}function $e({option:e}){var l,t;if((null==(l=e.children)?void 0:l.length)||fe.value&&!(null==e?void 0:e.isLeaf)){const l=te.wordbook.user_count_obj&&e[te.wordbook.user_count_obj]||"",t=l?`(${l})`:"",n=`${e.title}${t}`;return d("span",{title:n},[n])}{const l=null!=(t=e.title_expand_strs)?t:"";return d("p",{class:"user_item"},[d("span",{title:e.title},[e.title]),d("span",{class:"user_item_expand",title:l},[l])])}}function Re(e){return e[te.wordbookChild.user_name_obj]||e[te.wordbook.parent_name_obj]||e.orgName||e.title||""}function Ae(e){var l;for(let t=0,n=e.length;t<n;t++){const n=e[t],a=te.wordbook.children||"children";if(null==(l=n[a])?void 0:l.length){const e=Ke(n[a],[]);n.innerItemsNum=e.length,n.innerLeafs=e,n.children=Ae(n[a])}}return te.showSelectType?e:Ue(e,"")}function Ke(e,l){var t;for(let n=0,a=e.length;n<a;n++){const a=e[n];(null==(t=a.children)?void 0:t.length)?Ke(a.children,l):!a.disabled&&l.push(a)}return l}function Ue(e,l){return e&&0!==e.length?e.map((e=>{var t;const n=Re(e),a=l?`${n}/${l}`:n;return{...e,tempTitle:l,children:(null==(t=e.children)?void 0:t.length)?Ue(null==e?void 0:e.children,a):[]}})):[]}async function qe(){var e,l;const t=null!=(l=null==(e=null==te?void 0:te.wordbook)?void 0:e.filter_key)?l:"keyword";if(he.value=!!oe.value.trim(),fe.value)se.value=await te.queryTreeSearch(oe.value);else{const e=function(){const e={[K.SEARCH_ORG_STAFF]:me.value,[K.SEARCH_ORG]:te.searchInner},l=Object.keys(e).find((l=>e[l]));return null!=l?l:""}();se.value=I(e,Se.temp,oe.value,t)}de.value=se.value.length&&oe.value?P(se.value):[]}function He(e,l){var t,n;switch(null!=(n=null==(t=null==te?void 0:te.treeSetting)?void 0:t.checkStrategy)?n:"child"){case"child":!function(e,l){for(let t=0,n=e.length;t<n;t++){const n=e[t];if(!n.disabled&&(!n.children||n.isLeaf)&&(l&&!ce.value.includes(n.key)&&ce.value.push(n.key),!l)){const e=ce.value.findIndex((e=>e===n.key));ce.value.splice(e,1)}n.children&&He(n.children,l)}}(e,l);break;case"parent":!function(e,l){ce.value=[];for(let t=0,n=e.length;t<n;t++){const n=e[t];if(!n.disabled&&!n.tempTitle&&(l&&!ce.value.includes(n.key)&&ce.value.push(n.key),!l)){const e=ce.value.findIndex((e=>e===n.key));ce.value.splice(e,1)}}}(e,l)}}function Me(e){He(se.value,e)}function We(e){var l;for(let t=0,n=e.length;t<n;t++){const n=e[t],a=pe.value.map((e=>e.key));ce.value.includes(n.key)&&!a.includes(n.key)&&ve.value.push({key:n.key,name:n.title,parentName:n.tempTitle,innerItemsNum:n.innerItemsNum,innerLeafs:n.innerLeafs,originItem:n}),(null==(l=n.children)?void 0:l.length)&&We(n.children)}}function Ge(e){if(te.showSelectType){const l=ge.value;ce.value=Te[l]=e}else ce.value=e}function ze(){Object.keys(Te).forEach((e=>{Te[e]=Ce[e]=[]})),ce.value=[]}function Je(e){ce.value=e}function Qe(){oe.value="",setTimeout((()=>{qe()}))}return i((()=>te.data),(e=>{oe.value="",re.value=he.value=!1,ce.value=de.value=se.value=ve.value=pe.value=ye.value=[],function(){if(Be(),se.value=Se.temp,te.defaultList.length>0)if(fe.value)te.defaultList.forEach((e=>ce.value.push(e.key))),ve.value=$(te.defaultList),pe.value=$(te.defaultList);else{if(te.showSelectType){const e=ge.value;return te.defaultList.forEach((e=>{e.itemType===R.PERSON&&(Te.main.push(e[je.value]),Ce.main.push(e)),e.itemType===R.DEPT&&(Te.dept.push(e[je.value]),Ce.dept.push(e)),e.itemType===R.ROLE&&(Te.role.push(e[te.roleFields.key]),Ce.role.push(e))})),void(ce.value=Te[e])}te.defaultList.forEach((e=>ce.value.push(e))),We(Se.temp)}}()}),{immediate:!0}),i((()=>ce),(e=>{if(te.showSelectType){const l=ge.value;Ce[l]=pe.value.filter((l=>e.value.includes(l.key))),De(Se[l],l),te.showSelectType?re.value=ye.value.every((e=>ce.value.findIndex((l=>l===e))>-1)):re.value=ye.value.every((e=>ve.value.findIndex((l=>l.key===e))>-1));const t=_e.value.map((e=>e.key));return ue("check",t),void ue("checkWithLevel",_e.value)}ve.value=pe.value.filter((l=>e.value.includes(l.key))),We(fe.value?se.value:Se.temp);const l=ve.value.filter((l=>e.value.includes(l.key)));ue("check",e.value),ue("checkWithLevel",l)}),{deep:!0}),i((()=>oe.value),(e=>{e||Qe()})),M({getCheckWithLevel:function(){var e;if(te.showSelectType)return null!=(e=_e.value)?e:[];const l=ce.value,t=ve.value.filter((e=>l.includes(e.key)));return null!=t?t:[]}}),(l,t)=>(u(),o(r(S),{cols:2,class:"c-select-person"},{default:c((()=>[d(r(T),null,{default:c((()=>[d(r(C),{vertical:"",style:{"padding-right":"12px","border-right":"1px solid #e8e8e8"}},{default:c((()=>{var l;return[d(r(L),{style:{"margin-bottom":"12px"}},{default:c((()=>[s(" clearable "),d(r(x),{class:"search-input",value:oe.value,"onUpdate:value":t[0]||(t[0]=e=>oe.value=e),placeholder:e.searchPlaceholder,onKeyup:v(qe,["enter"])},{suffix:c((()=>[oe.value?(u(),o(r(j),{key:0,class:"search-clear",component:r(N),size:"16",onClick:Qe},null,8,["component"])):s("v-if",!0)])),_:1},8,["value","placeholder","onKeyup"]),d(r(B),{type:"primary",onClick:qe},{default:c((()=>[p(h(e.searchButtonText),1)])),_:1})])),_:1}),e.showSelectType?(u(),y("div",G,[(u(),y(f,null,k(ae,(e=>d(r(F),{round:"",checkable:"",checked:ge.value===e.key,key:e.key,"onUpdate:checked":l=>function(e){ge.value=e.key,se.value=Se.temp=Se[e.key],ce.value=Te[e.key],ye.value=Le[e.key]}(e)},{default:c((()=>[p(h(e.label),1)])),_:2},1032,["checked","onUpdate:checked"]))),64))])):s("v-if",!0),e.multiple&&!he.value?m((u(),o(r(O),{key:1,checked:re.value,"onUpdate:checked":[t[1]||(t[1]=e=>re.value=e),Me]},{default:c((()=>{var e;return[p((null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.37"))||"全选")]})),_:1},8,["checked"])),[[g,e.forceShowSelectAll||ye.value.length<1e3]]):s("v-if",!0),s(" 支持选人 "),e.searchInner&&e.multiple&&he.value&&"parent"===r(ke)?(u(),o(U,{key:2,treeData:se.value,checkedKeys:ce.value,onNotifyCheck:Je},null,8,["treeData","checkedKeys"])):r(me)&&he.value&&"parent"===r(ke)?(u(),y(f,{key:3},[s(" 同时兼容选人和选部门 "),s(" v-else-if=\"isSearchFilter && multiple && isSearch && checkStrategyResult === 'parent'\" "),d(q,{treeData:se.value,checkedKeys:ce.value,searchFilter:r(we),isMultiple:e.multiple,onNotifyCheck:Je,onNotifyClear:Qe},null,8,["treeData","checkedKeys","searchFilter","isMultiple"])],2112)):(u(),y("div",z,[0===se.value.length?(u(),o(r(D),{key:0,description:(null==(l=window.getLanguageByCode)?void 0:l.call(window,"10010.1.445"))||"暂无数据"})):(u(),o(r(E),w({key:1,"virtual-scroll":"",class:"c-select-person__scroll","checked-keys":ce.value,"expanded-keys":de.value,"onUpdate:expanded-keys":t[2]||(t[2]=e=>de.value=e),checkable:e.multiple,cascade:"","allow-checking-not-loaded":"",selectable:!e.multiple,"selected-keys":ce.value,"onUpdate:selected-keys":t[3]||(t[3]=e=>ce.value=e),data:se.value,"check-strategy":"child","render-label":$e},e.treeSetting,{"onUpdate:checkedKeys":Ge,onLoad:Ie}),null,16,["checked-keys","expanded-keys","checkable","selectable","selected-keys","data"]))]))]})),_:1})])),_:1}),d(r(T),null,{default:c((()=>[d(r(C),{vertical:"",style:{"padding-left":"12px"}},{default:c((()=>[d(r(C),{justify:"space-between",style:{"margin-bottom":"20px"}},{default:c((()=>{var l;return[e.showCount?(u(),y("span",J,"已选择:"+h(r(_e).length),1)):s("v-if",!0),e.showClear?(u(),y("span",{key:1,class:"c-select-person__clear-btn",onClick:ze},(null==(l=window.getLanguageByCode)?void 0:l.call(window,"10010.1.509"))||"清空")):s("v-if",!0)]})),_:1}),b("div",Q,[(u(!0),y(f,null,k(r(_e),(t=>(u(),y("span",{class:"c-select-person__tag-item",key:t.key},[s(" 标签插槽 "),_(l.$slots,"tag",{tag:t},(()=>[p(h(t.name)+" "+h(t.parentName?`(${t.parentName})`:"")+" "+h(t.innerItemsNum?`(${t.innerItemsNum}人)`:"")+" "+h(e.showSelectType&&ie[t.itemType]?`(${ie[t.itemType]})`:""),1)])),d(r(j),{class:"tag-close",component:r(N),onClick:e=>function(e){if(te.showSelectType){const l=e.itemType===R.PERSON?"main":e.itemType;return Te[l]=Te[l].filter((l=>l!==e.key)),Ce[l]=pe.value.filter((e=>Te[l].includes(e.key))),De(Se[l],l),void(ge.value==l&&(ce.value=Te[l]))}ce.value=ce.value.filter((l=>l!==e.key))}(t)},null,8,["component","onClick"])])))),128))])])),_:3})])),_:3})])),_:3}))}});export{V as default};
@@ -777,7 +777,6 @@ declare const _default: import("vue").DefineComponent<{
777
777
  key: string | number;
778
778
  }[]>;
779
779
  isSearch: import("vue").Ref<boolean>;
780
- tempData: TreeOption[];
781
780
  allCheckedTreeKeys: import("vue").Ref<(string | number)[]>;
782
781
  isRemote: import("vue").ComputedRef<boolean>;
783
782
  checkStrategyResult: import("vue").ComputedRef<any>;
@@ -841,6 +840,7 @@ declare const _default: import("vue").DefineComponent<{
841
840
  notifyCheck: (keys: (string | number)[]) => void;
842
841
  notifySearchClear: () => void;
843
842
  getCheckWithLevel: () => any;
843
+ resetParams: () => void;
844
844
  NButton: any;
845
845
  NInput: any;
846
846
  NInputGroup: any;
@@ -1 +1 @@
1
- import{defineComponent as e,useAttrs as a,ref as l,inject as t,computed as u,nextTick as n,openBlock as i,createBlock as o,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 S}from"../helpers/setDefaultValue.js";import{WholeSelectObj as O}from"../helpers/selectExtraMap.js";import{WidgetValEnums as w}from"../../../types/enums.js";import{InjectionFilterApiConfig as b,InjectionFilterSearchConfig as N}from"../../../constants/index.js";import j from"./SelectDynamicOption/index.vue.js";import{isEqual as k,cloneDeep as C}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 J=e,L=d(),P="SQL",D="API",{getDynamicSelectData:x}=h(),I=a(),E=l(null),K=l(!1),T=t(b),$=t(N),U=l(1),W=l(),_=l([JSON.parse(JSON.stringify(O))]),M=l([]),V=l(),F=l(0),H={class:"select-dynamic-popover"},Q=u((()=>I.multiple)),R=u((()=>{const{widgetCfg:e}=J.componentCfg,{dynamicOptionInfo:a={}}=e;return a})),q=u((()=>{const{widgetCfg:e}=J.componentCfg,{showWholeOption:a=!1}=e;return a&&1===U.value})),z=u((()=>F.value>0&&U.value>=F.value)),B=u((()=>{var e,a;if(Array.isArray(J.value)&&J.value.length>0){const a=J.value;if(X(a),a.includes(O.value)){const e=_.value.find((e=>e.value===O.value)),a=e||O;return Q.value?[a]:JSON.stringify(a)}if(!Q.value&&1==a.length){const l=_.value.find((e=>e.value===a[0]));return l?JSON.stringify(l):JSON.stringify({label:(null==(e=a[0])?void 0:e.includes("&"))?a[0].split("&")[0]:a[0],value:a[0]})}const l=_.value.filter((e=>a.includes(e.value))),t=l.map((e=>e.value)),u=a.filter((e=>!t.includes(e))).map((e=>({label:e.includes("&")?e.split("&")[0]:e,value:e})));return[...l,...u]}return X([]),J.value?JSON.stringify({label:(null==(a=J.value)?void 0:a.includes("&"))?J.value.split("&")[0]:J.value,value:J.value}):null})),G=u((()=>{if(Object.keys(R.value).length>0){const{defaultParams:e=[]}=R.value;return S(e)&&!J.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}=J.componentCfg,{linkageFieldKeys:l=[]}=a;k(J.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(V.value,U.value)}async function ee(e,a){try{if(K.value=!0,Object.keys(R.value).length>0){const{autograph:l,dataSourceId:t,dataSourceType:u,filterKeys:n,defaultParams:i=[],showKeys:o,valueKey:s,tableDataType:r}=R.value;let v={wordbookId:t,autograph:l,wordbookType:u,fieldKeys:n,page:a};switch(r){case P:v.keyword=e;break;case D:n.length>0&&(v[n[0]]=e)}if(S(i)){const e=i.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!==w.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[o[0]],value:`${e[o[0]]}&${e[s]}`}))),u=C(t);q.value&&t.unshift(JSON.parse(JSON.stringify(O))),W.value=null!=e?e:[],_.value=null!=t?t:[],M.value=u,F.value=l}}}catch(e){L.error(`异步数据源下拉框数据请求失败:${e}`),console.log(e)}finally{K.value=!1}}const ae=g((async e=>{await async function(e){V.value=e.trim(),U.value=1,await ee(V.value,U.value)}(e)}),300);async function le(){Object.keys(R.value).length>0&&T&&await ee("",U.value)}async function te(){A("update:value",null),await le()}function ue(e){V.value="",e&&(U.value=1,le())}function ne({option:e,handleClose:a}){if(Q.value){const l=e.value;return p(y,{style:{padding:"0 8px"},closable:!0,onClose:e=>{if(e.stopPropagation(),a(),Array.isArray(J.value)&&J.value.length>0){const e=J.value,a=e.indexOf(l.value);a>-1&&(e.splice(a,1),A("update:value",e.length>0?e: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)=>(i(),o(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":H,onSearch:s(ae),onClear:te,"onUpdate:show":ue}),{empty:c((()=>[f(j,r(s(I),{oldValue:J.value,loading:K.value,dynamicOptionInfo:s(R),fieldTitleList:W.value,optionList:_.value,isMultiple:s(Q),curPage:U.value,isLastPage:s(z),isShowWhole:s(q),onUpdateSelect:Y,onUpdatePage:Z}),null,16,["oldValue","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 i,createBlock as o,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 S}from"../helpers/setDefaultValue.js";import{WholeSelectObj as O}from"../helpers/selectExtraMap.js";import{WidgetValEnums as w}from"../../../types/enums.js";import{InjectionFilterApiConfig as b,InjectionFilterSearchConfig as N}from"../../../constants/index.js";import j from"./SelectDynamicOption/index.vue.js";import{isEqual as k,cloneDeep as C}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 J=e,L=d(),P="SQL",D="API",{getDynamicSelectData:x}=h(),I=a(),E=l(null),K=l(!1),T=t(b),$=t(N),U=l(1),W=l(),_=l([JSON.parse(JSON.stringify(O))]),M=l([]),V=l(),F=l(0),H={class:"select-dynamic-popover"},Q=u((()=>I.multiple)),R=u((()=>{const{widgetCfg:e}=J.componentCfg,{dynamicOptionInfo:a={}}=e;return a})),q=u((()=>{const{widgetCfg:e}=J.componentCfg,{showWholeOption:a=!1}=e;return a&&1===U.value})),z=u((()=>F.value>0&&U.value>=F.value)),B=u((()=>{var e;if(Array.isArray(J.value)&&J.value.length>0){const e=J.value;if(X(e),e.includes(O.value)){const e=_.value.find((e=>e.value===O.value)),a=e||O;return Q.value?[a]:JSON.stringify(a)}if(!Q.value&&1==e.length){const a=_.value.find((a=>a.value===e[0]));return a?JSON.stringify(a):JSON.stringify({label:"string"==typeof e[0]&&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:"string"==typeof e&&e.includes("&")?e.split("&")[0]:e,value:e})));return[...a,...t]}return X([]),J.value?JSON.stringify({label:(null==(e=J.value)?void 0:e.includes("&"))?J.value.split("&")[0]:J.value,value:J.value}):null})),G=u((()=>{if(Object.keys(R.value).length>0){const{defaultParams:e=[]}=R.value;return S(e)&&!J.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}=J.componentCfg,{linkageFieldKeys:l=[]}=a;k(J.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(V.value,U.value)}async function ee(e,a){try{if(K.value=!0,Object.keys(R.value).length>0){const{autograph:l,dataSourceId:t,dataSourceType:u,filterKeys:n,defaultParams:i=[],showKeys:o,valueKey:s,tableDataType:r}=R.value;let v={wordbookId:t,autograph:l,wordbookType:u,fieldKeys:n,page:a};switch(r){case P:v.keyword=e;break;case D:n.length>0&&(v[n[0]]=e)}if(S(i)){const e=i.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!==w.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[o[0]],value:`${e[o[0]]}&${e[s]}`}))),u=C(t);q.value&&t.unshift(JSON.parse(JSON.stringify(O))),W.value=null!=e?e:[],_.value=null!=t?t:[],M.value=u,F.value=l}}}catch(e){L.error(`异步数据源下拉框数据请求失败:${e}`),console.log(e)}finally{K.value=!1}}const ae=g((async e=>{await async function(e){V.value=e.trim(),U.value=1,await ee(V.value,U.value)}(e)}),300);async function le(){Object.keys(R.value).length>0&&T&&await ee("",U.value)}async function te(){A("update:value",null),await le()}function ue(e){V.value="",e&&(U.value=1,le())}function ne({option:e,handleClose:a}){if(Q.value){const l=e.value;return p(y,{style:{padding:"0 8px"},closable:!0,onClose:e=>{if(e.stopPropagation(),a(),Array.isArray(J.value)&&J.value.length>0){const e=J.value,a=e.indexOf(l.value);a>-1&&(e.splice(a,1),A("update:value",e.length>0?e: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)=>(i(),o(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":H,onSearch:s(ae),onClear:te,"onUpdate:show":ue}),{empty:c((()=>[f(j,r(s(I),{oldValue:J.value,loading:K.value,dynamicOptionInfo:s(R),fieldTitleList:W.value,optionList:_.value,isMultiple:s(Q),curPage:U.value,isLastPage:s(z),isShowWhole:s(q),onUpdateSelect:Y,onUpdatePage:Z}),null,16,["oldValue","loading","dynamicOptionInfo","fieldTitleList","optionList","isMultiple","curPage","isLastPage","isShowWhole"])])),_:1},16,["value","loading","onSearch"]))}});export{A as default};
@@ -1 +1 @@
1
- var e="@cnhis-design-vue/shared",i="3.2.15-beta.20",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.15-beta.20",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.15-beta.22",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.15-beta.22",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.15-beta.20",
3
+ "version": "3.2.15-beta.22",
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": "84aa98e5724b9704d95b59c3d3e665a094b8a753"
75
+ "gitHead": "28025dbc32c0ad83a1498e19d50181afd1606031"
76
76
  }