cnhis-design-vue 3.3.1-beta.15 → 3.3.1-beta.17

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 (34) hide show
  1. package/es/components/ai-chat/index.d.ts +5 -0
  2. package/es/components/ai-chat/src/Index.vue.d.ts +5 -0
  3. package/es/components/ai-chat/src/Index.vue2.js +1 -1
  4. package/es/components/ai-chat/src/components/ChatAudio.vue2.js +1 -1
  5. package/es/components/ai-chat/src/components/ChatFooter.vue.d.ts +6 -0
  6. package/es/components/ai-chat/src/components/ChatFooter.vue2.js +1 -1
  7. package/es/components/ai-chat/src/components/ChatMain.js +1 -1
  8. package/es/components/ai-chat/src/components/ChatMainDefault.js +1 -1
  9. package/es/components/ai-chat/style/index.css +1 -1
  10. package/es/components/iho-chat/index.d.ts +9 -0
  11. package/es/components/iho-chat/src/Index.vue.d.ts +9 -0
  12. package/es/components/iho-chat/src/components/ChatAdd.vue.d.ts +1 -0
  13. package/es/components/iho-chat/src/components/ChatAdd.vue2.js +1 -1
  14. package/es/components/iho-chat/src/components/ChatFile.vue.d.ts +1 -0
  15. package/es/components/iho-chat/src/components/ChatFooter.vue.d.ts +1 -0
  16. package/es/components/iho-chat/src/components/ChatHeader.vue.d.ts +5 -0
  17. package/es/components/iho-chat/src/components/ChatMain.vue.d.ts +1 -0
  18. package/es/components/iho-chat/src/components/ChatRecord.vue.d.ts +3 -1
  19. package/es/components/iho-chat/src/components/ChatRecord.vue2.js +1 -1
  20. package/es/components/iho-chat/src/components/ChatSet.vue.d.ts +1 -0
  21. package/es/components/iho-chat/src/components/ChatSet.vue2.js +1 -1
  22. package/es/components/iho-chat/src/components/MultipleVideo.vue.d.ts +1 -0
  23. package/es/components/iho-chat/style/index.css +1 -1
  24. package/es/components/iho-table/index.d.ts +24 -24
  25. package/es/components/iho-table/index.js +1 -1
  26. package/es/components/iho-table/src/plugins/index.d.ts +18 -20
  27. package/es/components/iho-table/src/plugins/index.js +1 -1
  28. package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/separateRendererPlugin/index.js +1 -1
  29. package/es/components/iho-table/src/plugins/varialbleHeightPlugin.js +1 -1
  30. package/es/components/iho-table/src/utils/index.js +1 -1
  31. package/es/components/index.css +1 -1
  32. package/es/components/index.js +1 -1
  33. package/es/shared/package.json.js +1 -1
  34. package/package.json +2 -2
@@ -1 +1 @@
1
- import{createElementVNode as e,defineComponent as l,ref as a,computed as n,watch as o,openBlock as t,createElementBlock as i,Fragment as r,createVNode as u,unref as s,withCtx as d,createCommentVNode as c,createBlock as v,renderList as p,toDisplayString as f,createTextVNode as g,withDirectives as m,isRef as h,vShow as y,normalizeClass as w,withModifiers as k,renderSlot as b}from"vue";import{NModal as I,NInput as C,NIcon as _,NSpace as x,NButton as L,NBreadcrumb as j,NBreadcrumbItem as S,NCheckbox as B,NCheckboxGroup as U,NAvatar as R,NTag as E,NTooltip as N}from"naive-ui";import{SearchOutline as z,PersonOutline as A,PeopleOutline as D,ChevronBackOutline as G,ChevronForwardOutline as T,AddOutline as V}from"@vicons/ionicons5";import{useData as $}from"../hooks/useData.js";import"stompjs";import"sockjs-client/dist/sockjs.min.js";import{CHAT_TYPE as M}from"../constants/index.js";import{getOrgUserTreeApi as O,groupUserApi as P,groupLeaveApi as q,groupJoinApi as F,groupCreateApi as H}from"../api/index.js";import{listSort as J,isDoctorRole as K,getRoleName as Q}from"../utils/index.js";import{union as W,unionBy as X,remove as Y,intersection as Z,last as ee,isArray as le,uniqBy as ae,cloneDeep as ne,trim as oe}from"lodash-es";import"trtc-sdk-v5";import{useSearchUserList as te}from"../hooks/useSearchUserList.js";var ie,re;const ue={class:"iho-chat-dialog__content iho-chat-add-wrapper"},se={key:0,class:"input-box"},de=e("span",null,(null==(ie=window.getLanguageByCode)?void 0:ie.call(window,"10010.1.34"))||"群名称:",-1),ce={class:"transfer-box"},ve={class:"transfer-box__left"},pe={key:0,class:"nav-wrapper"},fe={key:0,class:"chat--iconfont chat--icon-map-site"},ge={style:{"font-size":"12px"}},me={key:1,class:"header"},he={class:"user-list-box"},ye={key:0,class:"org-list"},we={class:"seach-box"},ke={class:"ellipsis"},be={key:0,style:{"font-size":"12px",color:"#666","margin-right":"10px"}},Ie={key:1,class:"no-data"},Ce={class:"transfer-box__right"},_e={class:"checked-tag-box"},xe={class:"seach-box"},Le={class:"ellipsis"},je={key:0,class:"input-wrapper"};var Se=l({__name:"ChatAdd",props:{title:{type:String,default:(null==(re=window.getLanguageByCode)?void 0:re.call(window,"10010.1.42"))||"添加新成员"},mode:{type:String,default:"select"},options:{type:Array},disabledIds:{type:Array,default:()=>[]},defaultValue:{type:Array,default:()=>[]},disabled:{type:Boolean,default:!1}},emits:["comfirm"],setup(l,{emit:ie}){const re=l;let Se=[];const Be=[{key:"single",label:"按好友选"},{key:"group",label:"按群聊选"},{key:"org",label:"按架构选"}];let Ue=[];const{state:Re,setCurrentSessionItem:Ee}=$(),Ne=a(),ze=a(""),Ae=a(!1),De=a([]),Ge=a(""),Te=a(""),Ve=a([]),$e=a([]),{userList:Me,handleInput:Oe}=te({wrapperRef:Ne,keywordRef:ze,before:()=>{Ve.value.length>0||(Me.value=Se)}}),Pe=n((()=>"relay"===re.mode?[]:W(re.disabledIds,[Re.userInfo.id]))),qe=n((()=>{var e;return(null==(e=Re.sessionList)?void 0:e.length)?J(Re.sessionList).map((e=>({id:e.receiver,name:e.name,avatar:e.avatar,chatType:e.chatType,roleInfo:e.roleInfo||""}))):[]})),Fe=n((()=>qe.value.filter((e=>e.chatType===M.SINGLE)))),He=n((()=>qe.value.filter((e=>e.chatType===M.GROUP)))),Je=n((()=>De.value.length?De.value.map((e=>e.id)):[])),Ke=n((()=>"create"===re.mode?Je.value.length<3:Je.value.length<1)),Qe=n({get:()=>We.value.filter((e=>!el(e))).length===Me.value.filter((e=>!el(e.id))).length,set(e){const l=[];if(Me.value.forEach((e=>{var a;if(1==e.type&&(null==(a=e.children)?void 0:a.length)){const a=ol(e.children||[]).filter((e=>!el(e.id)));l.push(...a)}else el(e.id)||l.push(e)})),e)De.value=X(De.value,l,"id");else{const e=l.map((e=>e.id));Y(De.value,(l=>e.includes(l.id)))}}}),We=n({get(){var e,l,a;return null!=(a=null==(l=null==(e=Me.value)?void 0:e.filter((e=>{var l;if(1==e.type&&(null==(l=e.children)?void 0:l.length)){const l=ol(e.children||[]).map((e=>e.id)).filter((e=>!el(e)));return Z(l,Je.value).length===l.length}return Je.value.includes(e.id)})))?void 0:l.map((e=>e.id)))?a:[]},set(e){Me.value.forEach((l=>{var a;const n=[];1==l.type&&(null==(a=l.children)?void 0:a.length)?n.push(...ol(l.children||[]).filter((e=>!el(e.id)))):n.push(l),e.includes(l.id)?De.value=X(De.value,n,"id"):Y(De.value,(e=>n.some((l=>l.id===e.id))))}))}}),Xe=n((()=>{var e;return Ve.value.length>0?null==(e=ee(Ve.value))?void 0:e.key:""})),Ye=n((()=>!("relay"!==re.mode&&["group","org"].includes(Xe.value)&&1===Ve.value.length)));function Ze(e){e.forEach((e=>{var l;1==e.type&&(null==(l=e.children)?void 0:l.length)?(e.total=ol(e.children).length,Ze(e.children)):2==e.type&&(e.total=0)}))}function el(e){var l,a;return"group"===Xe.value?"relay"!==re.mode&&(1===Ve.value.length||(null==(l=Pe.value)?void 0:l.includes(e))):null==(a=Pe.value)?void 0:a.includes(e)}function ll(){Ve.value.length>1?"group"===Xe.value?Me.value=He.value:"org"===Xe.value&&(Me.value=Ue.map((e=>({id:e.orgId,name:e.orgName}))),$e.value=[]):Me.value=Se,Ve.value.pop()}function al(e,l){const{id:a,children:n=[],type:o}=e;if("breadcrumb"!==l||ee($e.value).id!==a)if(o){const l=$e.value.findIndex((e=>e.id===a));l>-1?$e.value=$e.value.slice(0,l+1):$e.value.push(e),Me.value=n}else{const n=Ue.find((e=>e.orgId===a));$e.value=[e],Me.value=n.userList||[],l||Ve.value.push({key:Xe.value,label:n.orgName})}}function nl(e){const{children:l=[]}=e;if(!l.length)return!0;const a=ol(l).map((e=>e.id)).filter((e=>!Pe.value.includes(e)));return Z(a,Je.value).length===a.length}function ol(e){const l=[];return e.forEach((e=>{var a;1==e.type&&(null==(a=e.children)?void 0:a.length)?l.push(...ol(e.children)):2==e.type&&l.push(e)})),l}async function tl(){const e=s(Je);switch(re.mode){case"create":await H({creator:Re.userInfo.id,memberIdSet:e,name:oe(Ge.value),orgId:Re.orgId});break;case"join":if(await F({groupId:Re.currentSessionItem.receiver,operator:Re.userInfo.id,memberIdSet:e}),!Re.currentSessionItem.defaultName){const e=De.value.map((e=>e.name)).join(",");Ee({name:`${Re.currentSessionItem.name},${e}`})}Re.currentGroupUser.push(...Me.value.filter((l=>e.includes(l.id))));break;case"remove":if(await q({dissolution:!1,groupId:Re.currentSessionItem.receiver,operator:Re.userInfo.id,memberIdSet:e}),!Re.currentSessionItem.defaultName){const e=De.value.map((e=>e.name)).join(","),l=new RegExp(e,"g");Ee({name:Re.currentSessionItem.name.replace(l,"")})}Y(Re.currentGroupUser,(l=>e.includes(l.id)));break;default:ie("comfirm",{checkedIds:e,checkedOptions:De.value,remark:Te.value})}Ae.value=!1}return async function(){try{const e=await O();Ue=le(e)?e:[],Ue.forEach((e=>Ze(e.userList||[])))}catch(e){console.log("error ==>",e)}}(),o((()=>Ae.value),(e=>{if(!e)return;ze.value="",Ge.value="",Ve.value=[],$e.value=[];const l="relay"===re.mode?qe.value:Fe.value,a=le(re.options)&&re.options.length?re.options:l;Se=ae(a,"id"),Me.value=Se,De.value=le(re.defaultValue)&&re.defaultValue.length?ne(re.defaultValue):[]})),(a,n)=>{var o,$;return t(),i(r,null,[u(s(I),{preset:"dialog",title:l.title,"show-icon":!1,"auto-focus":!1,"trap-focus":!1,class:"iho-chat-dialog",show:Ae.value,"onUpdate:show":n[5]||(n[5]=e=>Ae.value=e),"negative-text":(null==(o=window.getLanguageByCode)?void 0:o.call(window,"10010.1.28"))||"取消","positive-text":(null==($=window.getLanguageByCode)?void 0:$.call(window,"10010.1.27"))||"确定","display-directive":"show","positive-button-props":{disabled:s(Ke)},onPositiveClick:tl},{default:d((()=>{var a,o,b,I,N,V,$,M,O;return[e("div",ue,["create"===l.mode?(t(),i("div",se,[de,u(s(C),{clearable:"",placeholder:(null==(a=window.getLanguageByCode)?void 0:a.call(window,"10010.1.35"))||"取个群名称方便后续搜索",value:Ge.value,"onUpdate:value":n[0]||(n[0]=e=>Ge.value=e),valueModifiers:{trim:!0}},null,8,["value"])])):c("v-if",!0),e("div",ce,[e("div",ve,[u(s(C),{placeholder:(null==(o=window.getLanguageByCode)?void 0:o.call(window,"10010.1.36"))||"搜索",clearable:"",value:ze.value,"onUpdate:value":[n[1]||(n[1]=e=>ze.value=e),s(Oe)],valueModifiers:{trim:!0}},{prefix:d((()=>[u(s(_),{component:s(z)},null,8,["component"])])),_:1},8,["value","onUpdate:value"]),ze.value||"remove"===l.mode?c("v-if",!0):(t(),i("div",pe,[0===Ve.value.length?(t(),v(s(x),{key:0,justify:"space-around","wrap-item":!1},{default:d((()=>[(t(),i(r,null,p(Be,(l=>u(s(x),{vertical:"",align:"center","wrap-item":!1,key:l.key,onClick:()=>function(e){switch(ze.value="",Ve.value=[e],e.key){case"single":Me.value=Fe.value;break;case"group":Me.value=He.value;break;case"org":Me.value=Ue.map((e=>({id:e.orgId,name:e.orgName})))}}(l)},{default:d((()=>[u(s(L),{tertiary:""},{icon:d((()=>["org"===l.key?(t(),i("i",fe)):(t(),v(s(_),{key:1,component:"single"===l.key?s(A):s(D)},null,8,["component"]))])),_:2},1024),e("span",ge,f(l.label),1)])),_:2},1032,["onClick"]))),64))])),_:1})):c("v-if",!0),Ve.value.length>0?(t(),i("div",me,[u(s(L),{text:"",onClick:ll},{icon:d((()=>[u(s(_),{component:s(G)},null,8,["component"])])),_:1}),e("h4",null,f(null==(b=s(ee)(Ve.value))?void 0:b.label),1)])):c("v-if",!0),Ve.value.length>0&&"org"===(null==(I=s(ee)(Ve.value))?void 0:I.key)&&$e.value.length>0?(t(),v(s(j),{key:2,separator:">"},{default:d((()=>[(t(!0),i(r,null,p($e.value,(e=>(t(),v(s(S),{key:e.id,onClick:l=>al(e,"breadcrumb")},{default:d((()=>[g(f(e.name),1)])),_:2},1032,["onClick"])))),128))])),_:1})):c("v-if",!0)])),e("div",he,[s(Me).length>0?(t(),i(r,{key:0},[m(u(s(B),{label:(null==(N=window.getLanguageByCode)?void 0:N.call(window,"10010.1.37"))||"全选",checked:s(Qe),"onUpdate:checked":n[2]||(n[2]=e=>h(Qe)?Qe.value=e:null)},null,8,["checked"]),[[y,s(Ye)]]),"org"===s(Xe)&&1===Ve.value.length?(t(),i("div",ye,[(t(!0),i(r,null,p(s(Me),(l=>(t(),v(s(x),{"wrap-item":!1,align:"center",justify:"space-between",key:l.Id,onClick:e=>al(l)},{default:d((()=>[e("span",null,f(l.name),1),u(s(_),{size:"16",component:s(T)},null,8,["component"])])),_:2},1032,["onClick"])))),128))])):(t(),v(s(U),{key:1,ref_key:"listRef",ref:Ne,value:s(We),"onUpdate:value":n[3]||(n[3]=e=>h(We)?We.value=e:null)},{default:d((()=>[(t(!0),i(r,null,p(s(Me),(l=>(t(),v(s(B),{key:l.id,value:l.id,disabled:el(l.id),onClick:()=>async function(e){const l=s(Xe);if(l&&"relay"!==re.mode&&"group"===l&&1===Ve.value.length)try{Ve.value.push({key:l,label:e.name});const a=await P({id:e.id});Me.value=le(a)?a:[]}catch(e){console.log("error ==>",e)}}(l)},{default:d((()=>[u(s(x),{align:"center","wrap-item":!1,wrap:!1},{default:d((()=>[u(s(R),{src:l.avatar,round:"",size:32},null,8,["src"]),e("div",we,[e("span",ke,f(l.name),1),m(e("label",{class:w(["iho-chatRole",s(K)(l.roleInfo)?"isDoctor":""])},f(s(Q)(l.roleInfo)),3),[[y,s(Q)(l.roleInfo)]])]),l.total?(t(),i("span",be," ("+f(l.total)+"人) ",1)):c("v-if",!0),1==l.type&&l.children.length>0?(t(),v(s(L),{key:1,type:"primary",text:"",disabled:nl(l),style:{"margin-left":"auto"},onClick:k((e=>al(l)),["stop"])},{default:d((()=>[g(" 下级 ")])),_:2},1032,["disabled","onClick"])):c("v-if",!0)])),_:2},1024)])),_:2},1032,["value","disabled","onClick"])))),128))])),_:1},8,["value"]))],64)):(t(),i("div",Ie,(null==(V=window.getLanguageByCode)?void 0:V.call(window,"10010.1.38"))||"找不到相关结果"))])]),e("div",Ce,[e("span",null,((null==($=window.getLanguageByCode)?void 0:$.call(window,"10010.1.39"))||"已选择")+f(s(Je).length)+((null==(M=window.getLanguageByCode)?void 0:M.call(window,"10010.1.40"))||"人"),1),e("div",_e,[(t(!0),i(r,null,p(De.value,(a=>(t(),v(s(E),{key:a.id,bordered:!1,closable:"relay"===l.mode||a.id!==s(Re).userInfo.id,disabled:s(Pe).includes(a.id),onClose:()=>{return e=a.id,void Y(De.value,(l=>l.id===e));var e}},{avatar:d((()=>[u(s(R),{round:"",src:a.avatar},null,8,["src"])])),default:d((()=>[e("div",xe,[e("span",Le,f(a.name),1),m(e("label",{class:w(["iho-chatRole",s(K)(a.roleInfo)?"isDoctor":""])},f(s(Q)(a.roleInfo)),3),[[y,s(Q)(a.roleInfo)]])])])),_:2},1032,["closable","disabled","onClose"])))),128))]),"relay"===l.mode?(t(),i("div",je,[u(s(C),{clearable:"",value:Te.value,"onUpdate:value":n[4]||(n[4]=e=>Te.value=e),type:"textarea",placeholder:(null==(O=window.getLanguageByCode)?void 0:O.call(window,"10010.1.41"))||"留言",autosize:{minRows:2,maxRows:2}},null,8,["value"])])):c("v-if",!0)])])])]})),_:1},8,["title","show","positive-button-props"]),e("span",{class:w(["btn-wrapper",{disabled:l.disabled}]),onClick:n[6]||(n[6]=e=>Ae.value=!0)},[b(a.$slots,"trigger",{},(()=>[u(s(N),{"show-arrow":!1,placement:"bottom"},{trigger:d((()=>[u(s(L),{color:"#ffffff4D",class:"add-btn"},{icon:d((()=>[u(s(_),{component:s(V),color:"#fff"},null,8,["component"])])),_:1})])),default:d((()=>[g(" "+f(l.title),1)])),_:1})]))],2)],64)}}});export{Se as default};
1
+ import{createElementVNode as e,defineComponent as l,ref as a,computed as n,watch as o,openBlock as t,createElementBlock as i,Fragment as r,createVNode as u,unref as s,withCtx as d,createCommentVNode as c,createBlock as v,renderList as p,toDisplayString as f,createTextVNode as g,withDirectives as m,isRef as h,vShow as y,normalizeClass as w,withModifiers as k,renderSlot as b,nextTick as I}from"vue";import{NModal as C,NInput as _,NIcon as x,NSpace as L,NButton as j,NBreadcrumb as S,NBreadcrumbItem as B,NCheckbox as U,NCheckboxGroup as R,NAvatar as E,NTag as N,NTooltip as T}from"naive-ui";import{SearchOutline as z,PersonOutline as A,PeopleOutline as D,ChevronBackOutline as G,ChevronForwardOutline as V,AddOutline as $}from"@vicons/ionicons5";import{useData as M}from"../hooks/useData.js";import"stompjs";import"sockjs-client/dist/sockjs.min.js";import{CHAT_TYPE as O}from"../constants/index.js";import{getOrgUserTreeApi as P,groupUserApi as q,groupLeaveApi as F,groupJoinApi as H,groupCreateApi as J}from"../api/index.js";import{listSort as K,isDoctorRole as Q,getRoleName as W}from"../utils/index.js";import{union as X,unionBy as Y,remove as Z,intersection as ee,last as le,isArray as ae,uniqBy as ne,cloneDeep as oe,trim as te}from"lodash-es";import"trtc-sdk-v5";import{useSearchUserList as ie}from"../hooks/useSearchUserList.js";var re,ue;const se={class:"iho-chat-dialog__content iho-chat-add-wrapper"},de={key:0,class:"input-box"},ce=e("span",null,(null==(re=window.getLanguageByCode)?void 0:re.call(window,"10010.1.34"))||"群名称:",-1),ve={class:"transfer-box"},pe={class:"transfer-box__left"},fe={key:0,class:"nav-wrapper"},ge={key:0,class:"chat--iconfont chat--icon-map-site"},me={style:{"font-size":"12px"}},he={key:1,class:"header"},ye={class:"user-list-box"},we={key:0,class:"org-list"},ke={class:"seach-box"},be={class:"ellipsis"},Ie={key:0,style:{"font-size":"12px",color:"#666","margin-right":"10px","white-space":"nowrap"}},Ce={key:1,class:"no-data"},_e={class:"transfer-box__right"},xe={class:"checked-tag-box"},Le={class:"seach-box"},je={class:"ellipsis"},Se={key:0,class:"input-wrapper"};var Be=l({__name:"ChatAdd",props:{title:{type:String,default:(null==(ue=window.getLanguageByCode)?void 0:ue.call(window,"10010.1.42"))||"添加新成员"},mode:{type:String,default:"select"},options:{type:Array},disabledIds:{type:Array,default:()=>[]},defaultValue:{type:Array,default:()=>[]},disabled:{type:Boolean,default:!1}},emits:["comfirm"],setup(l,{emit:re}){const ue=l;let Be=[];const Ue=[{key:"single",label:"按好友选"},{key:"group",label:"按群聊选"},{key:"org",label:"按架构选"}];let Re=[];const{state:Ee,setCurrentSessionItem:Ne}=M(),Te=a(),ze=a(""),Ae=a(!1),De=a([]),Ge=a(""),Ve=a(""),$e=a([]),Me=a([]),Oe=a(),{userList:Pe,handleInput:qe}=ie({wrapperRef:Te,keywordRef:ze,before:()=>{$e.value.length>0||(Pe.value=Be)}}),Fe=n((()=>"relay"===ue.mode?[]:X(ue.disabledIds,[Ee.userInfo.id]))),He=n((()=>{var e;return(null==(e=Ee.sessionList)?void 0:e.length)?K(Ee.sessionList).map((e=>({id:e.receiver,name:e.name,avatar:e.avatar,chatType:e.chatType,roleInfo:e.roleInfo||""}))):[]})),Je=n((()=>He.value.filter((e=>e.chatType===O.SINGLE)))),Ke=n((()=>He.value.filter((e=>e.chatType===O.GROUP)))),Qe=n((()=>De.value.length?De.value.map((e=>e.id)):[])),We=n((()=>"create"===ue.mode?Qe.value.length<3:Qe.value.length<1)),Xe=n({get:()=>Ye.value.filter((e=>!al(e))).length===Pe.value.filter((e=>!al(e.id))).length,set(e){const l=[];if(Pe.value.forEach((e=>{var a;if(1==e.type&&(null==(a=e.children)?void 0:a.length)){const a=il(e.children||[]).filter((e=>!al(e.id)));l.push(...a)}else al(e.id)||l.push(e)})),e)De.value=Y(De.value,l,"id");else{const e=l.map((e=>e.id));Z(De.value,(l=>e.includes(l.id)))}}}),Ye=n({get(){var e,l,a;return null!=(a=null==(l=null==(e=Pe.value)?void 0:e.filter((e=>{var l;if(1==e.type&&(null==(l=e.children)?void 0:l.length)){const l=il(e.children||[]).map((e=>e.id)).filter((e=>!al(e)));return ee(l,Qe.value).length===l.length}return Qe.value.includes(e.id)})))?void 0:l.map((e=>e.id)))?a:[]},set(e){Pe.value.forEach((l=>{var a;const n=[];1==l.type&&(null==(a=l.children)?void 0:a.length)?n.push(...il(l.children||[]).filter((e=>!al(e.id)))):n.push(l),e.includes(l.id)?De.value=Y(De.value,n,"id"):Z(De.value,(e=>n.some((l=>l.id===e.id))))}))}}),Ze=n((()=>{var e;return $e.value.length>0?null==(e=le($e.value))?void 0:e.key:""})),el=n((()=>!("relay"!==ue.mode&&["group","org"].includes(Ze.value)&&1===$e.value.length)));function ll(e){e.forEach((e=>{var l;1==e.type&&(null==(l=e.children)?void 0:l.length)?(e.total=il(e.children).length,ll(e.children)):2==e.type&&(e.total=0)}))}function al(e){var l,a;return"group"===Ze.value?"relay"!==ue.mode&&(1===$e.value.length||(null==(l=Fe.value)?void 0:l.includes(e))):null==(a=Fe.value)?void 0:a.includes(e)}function nl(){$e.value.length>1?"group"===Ze.value?Pe.value=Ke.value:"org"===Ze.value&&(Pe.value=Re.map((e=>({id:e.orgId,name:e.orgName}))),Me.value=[]):Pe.value=Be,$e.value.pop()}function ol(e,l){const{id:a,children:n=[],type:o}=e;if("breadcrumb"!==l||le(Me.value).id!==a)if(o){const l=Me.value.findIndex((e=>e.id===a));l>-1?Me.value=Me.value.slice(0,l+1):Me.value.push(e),Pe.value=n,I((()=>{const e=Oe.value.$el.getElementsByTagName("ul")[0];e&&e.scrollTo(1e7,0)}))}else{const n=Re.find((e=>e.orgId===a));Me.value=[e],Pe.value=n.userList||[],l||$e.value.push({key:Ze.value,label:n.orgName})}}function tl(e){const{children:l=[]}=e;if(!l.length)return!0;const a=il(l).map((e=>e.id)).filter((e=>!Fe.value.includes(e)));return ee(a,Qe.value).length===a.length}function il(e){const l=[];return e.forEach((e=>{var a;1==e.type&&(null==(a=e.children)?void 0:a.length)?l.push(...il(e.children)):2==e.type&&l.push(e)})),l}async function rl(){const e=s(Qe);switch(ue.mode){case"create":await J({creator:Ee.userInfo.id,memberIdSet:e,name:te(Ge.value),orgId:Ee.orgId});break;case"join":if(await H({groupId:Ee.currentSessionItem.receiver,operator:Ee.userInfo.id,memberIdSet:e}),!Ee.currentSessionItem.defaultName){const e=De.value.map((e=>e.name)).join(",");Ne({name:`${Ee.currentSessionItem.name},${e}`})}Ee.currentGroupUser.push(...Pe.value.filter((l=>e.includes(l.id))));break;case"remove":if(await F({dissolution:!1,groupId:Ee.currentSessionItem.receiver,operator:Ee.userInfo.id,memberIdSet:e}),!Ee.currentSessionItem.defaultName){const e=De.value.map((e=>e.name)).join(","),l=new RegExp(e,"g");Ne({name:Ee.currentSessionItem.name.replace(l,"")})}Z(Ee.currentGroupUser,(l=>e.includes(l.id)));break;default:re("comfirm",{checkedIds:e,checkedOptions:De.value,remark:Ve.value})}Ae.value=!1}return async function(){try{const e=await P();Re=ae(e)?e:[],Re.forEach((e=>ll(e.userList||[])))}catch(e){console.log("error ==>",e)}}(),o((()=>Ae.value),(e=>{if(!e)return;ze.value="",Ge.value="",$e.value=[],Me.value=[];const l="relay"===ue.mode?He.value:Je.value,a=ae(ue.options)&&ue.options.length?ue.options:l;Be=ne(a,"id"),Pe.value=Be,De.value=ae(ue.defaultValue)&&ue.defaultValue.length?oe(ue.defaultValue):[]})),(a,n)=>{var o,I;return t(),i(r,null,[u(s(C),{preset:"dialog",title:l.title,"show-icon":!1,"auto-focus":!1,"trap-focus":!1,class:"iho-chat-dialog",show:Ae.value,"onUpdate:show":n[5]||(n[5]=e=>Ae.value=e),"negative-text":(null==(o=window.getLanguageByCode)?void 0:o.call(window,"10010.1.28"))||"取消","positive-text":(null==(I=window.getLanguageByCode)?void 0:I.call(window,"10010.1.27"))||"确定","display-directive":"show","positive-button-props":{disabled:s(We)},onPositiveClick:rl},{default:d((()=>{var a,o,b,I,C,T,$,M,O;return[e("div",se,["create"===l.mode?(t(),i("div",de,[ce,u(s(_),{clearable:"",placeholder:(null==(a=window.getLanguageByCode)?void 0:a.call(window,"10010.1.35"))||"取个群名称方便后续搜索",value:Ge.value,"onUpdate:value":n[0]||(n[0]=e=>Ge.value=e),valueModifiers:{trim:!0}},null,8,["value"])])):c("v-if",!0),e("div",ve,[e("div",pe,[u(s(_),{placeholder:(null==(o=window.getLanguageByCode)?void 0:o.call(window,"10010.1.36"))||"搜索",clearable:"",value:ze.value,"onUpdate:value":[n[1]||(n[1]=e=>ze.value=e),s(qe)],valueModifiers:{trim:!0}},{prefix:d((()=>[u(s(x),{component:s(z)},null,8,["component"])])),_:1},8,["value","onUpdate:value"]),ze.value||"remove"===l.mode?c("v-if",!0):(t(),i("div",fe,[0===$e.value.length?(t(),v(s(L),{key:0,justify:"space-around","wrap-item":!1},{default:d((()=>[(t(),i(r,null,p(Ue,(l=>u(s(L),{vertical:"",align:"center","wrap-item":!1,key:l.key,onClick:()=>function(e){switch(ze.value="",$e.value=[e],e.key){case"single":Pe.value=Je.value;break;case"group":Pe.value=Ke.value;break;case"org":Pe.value=Re.map((e=>({id:e.orgId,name:e.orgName})))}}(l)},{default:d((()=>[u(s(j),{tertiary:""},{icon:d((()=>["org"===l.key?(t(),i("i",ge)):(t(),v(s(x),{key:1,component:"single"===l.key?s(A):s(D)},null,8,["component"]))])),_:2},1024),e("span",me,f(l.label),1)])),_:2},1032,["onClick"]))),64))])),_:1})):c("v-if",!0),$e.value.length>0?(t(),i("div",he,[u(s(j),{text:"",onClick:nl},{icon:d((()=>[u(s(x),{component:s(G)},null,8,["component"])])),_:1}),e("h4",null,f(null==(b=s(le)($e.value))?void 0:b.label),1)])):c("v-if",!0),$e.value.length>0&&"org"===(null==(I=s(le)($e.value))?void 0:I.key)&&Me.value.length>0?(t(),v(s(S),{key:2,ref_key:"breadcrumbRef",ref:Oe,separator:">"},{default:d((()=>[(t(!0),i(r,null,p(Me.value,(e=>(t(),v(s(B),{key:e.id,onClick:l=>ol(e,"breadcrumb")},{default:d((()=>[g(f(e.name),1)])),_:2},1032,["onClick"])))),128))])),_:1},512)):c("v-if",!0)])),e("div",ye,[s(Pe).length>0?(t(),i(r,{key:0},[m(u(s(U),{label:(null==(C=window.getLanguageByCode)?void 0:C.call(window,"10010.1.37"))||"全选",checked:s(Xe),"onUpdate:checked":n[2]||(n[2]=e=>h(Xe)?Xe.value=e:null)},null,8,["checked"]),[[y,s(el)]]),"org"===s(Ze)&&1===$e.value.length?(t(),i("div",we,[(t(!0),i(r,null,p(s(Pe),(l=>(t(),v(s(L),{"wrap-item":!1,align:"center",justify:"space-between",key:l.Id,onClick:e=>ol(l)},{default:d((()=>[e("span",null,f(l.name),1),u(s(x),{size:"16",component:s(V)},null,8,["component"])])),_:2},1032,["onClick"])))),128))])):(t(),v(s(R),{key:1,ref_key:"listRef",ref:Te,value:s(Ye),"onUpdate:value":n[3]||(n[3]=e=>h(Ye)?Ye.value=e:null)},{default:d((()=>[(t(!0),i(r,null,p(s(Pe),(l=>(t(),v(s(U),{key:l.id,value:l.id,disabled:al(l.id),onClick:()=>async function(e){const l=s(Ze);if(l&&"relay"!==ue.mode&&"group"===l&&1===$e.value.length)try{$e.value.push({key:l,label:e.name});const a=await q({id:e.id});Pe.value=ae(a)?a:[]}catch(e){console.log("error ==>",e)}}(l)},{default:d((()=>[u(s(L),{align:"center","wrap-item":!1,wrap:!1},{default:d((()=>[u(s(E),{src:l.avatar,round:"",size:32},null,8,["src"]),e("div",ke,[e("span",be,f(l.name),1),m(e("label",{class:w(["iho-chatRole",s(Q)(l.roleInfo)?"isDoctor":""])},f(s(W)(l.roleInfo)),3),[[y,s(W)(l.roleInfo)]])]),l.total?(t(),i("span",Ie," ("+f(l.total)+"人) ",1)):c("v-if",!0),1==l.type&&l.children.length>0?(t(),v(s(j),{key:1,type:"primary",text:"",disabled:tl(l),style:{"margin-left":"auto"},onClick:k((e=>ol(l)),["stop"])},{default:d((()=>[g(" 下级 ")])),_:2},1032,["disabled","onClick"])):c("v-if",!0)])),_:2},1024)])),_:2},1032,["value","disabled","onClick"])))),128))])),_:1},8,["value"]))],64)):(t(),i("div",Ce,(null==(T=window.getLanguageByCode)?void 0:T.call(window,"10010.1.38"))||"找不到相关结果"))])]),e("div",_e,[e("span",null,((null==($=window.getLanguageByCode)?void 0:$.call(window,"10010.1.39"))||"已选择")+f(s(Qe).length)+((null==(M=window.getLanguageByCode)?void 0:M.call(window,"10010.1.40"))||"人"),1),e("div",xe,[(t(!0),i(r,null,p(De.value,(a=>(t(),v(s(N),{key:a.id,bordered:!1,closable:"relay"===l.mode||a.id!==s(Ee).userInfo.id,disabled:s(Fe).includes(a.id),onClose:()=>{return e=a.id,void Z(De.value,(l=>l.id===e));var e}},{avatar:d((()=>[u(s(E),{round:"",src:a.avatar},null,8,["src"])])),default:d((()=>[e("div",Le,[e("span",je,f(a.name),1),m(e("label",{class:w(["iho-chatRole",s(Q)(a.roleInfo)?"isDoctor":""])},f(s(W)(a.roleInfo)),3),[[y,s(W)(a.roleInfo)]])])])),_:2},1032,["closable","disabled","onClose"])))),128))]),"relay"===l.mode?(t(),i("div",Se,[u(s(_),{clearable:"",value:Ve.value,"onUpdate:value":n[4]||(n[4]=e=>Ve.value=e),type:"textarea",placeholder:(null==(O=window.getLanguageByCode)?void 0:O.call(window,"10010.1.41"))||"留言",autosize:{minRows:2,maxRows:2}},null,8,["value"])])):c("v-if",!0)])])])]})),_:1},8,["title","show","positive-button-props"]),e("span",{class:w(["btn-wrapper",{disabled:l.disabled}]),onClick:n[6]||(n[6]=e=>Ae.value=!0)},[b(a.$slots,"trigger",{},(()=>[u(s(T),{"show-arrow":!1,placement:"bottom"},{trigger:d((()=>[u(s(j),{color:"#ffffff4D",class:"add-btn"},{icon:d((()=>[u(s(x),{component:s($),color:"#fff"},null,8,["component"])])),_:1})])),default:d((()=>[g(" "+f(l.title),1)])),_:1})]))],2)],64)}}});export{Be as default};
@@ -182,6 +182,7 @@ declare const _default: import("vue").DefineComponent<{
182
182
  remark: import("vue").Ref<string>;
183
183
  currentTab: import("vue").Ref<AnyObject[]>;
184
184
  breadcrumbList: import("vue").Ref<AnyObject[]>;
185
+ breadcrumbRef: import("vue").Ref<any>;
185
186
  userList: import("vue").Ref<AnyObject[]>;
186
187
  handleInput: () => void;
187
188
  _disabledIds: import("vue").ComputedRef<any[]>;
@@ -173,6 +173,7 @@ declare const _default: import("vue").DefineComponent<{}, {
173
173
  remark: Ref<string>;
174
174
  currentTab: Ref<AnyObject[]>;
175
175
  breadcrumbList: Ref<AnyObject[]>;
176
+ breadcrumbRef: Ref<any>;
176
177
  userList: Ref<AnyObject[]>;
177
178
  handleInput: () => void;
178
179
  _disabledIds: import("vue").ComputedRef<any[]>;
@@ -220,6 +220,7 @@ declare const _default: import("vue").DefineComponent<{}, {
220
220
  remark: import("vue").Ref<string>;
221
221
  currentTab: import("vue").Ref<AnyObject[]>;
222
222
  breadcrumbList: import("vue").Ref<AnyObject[]>;
223
+ breadcrumbRef: import("vue").Ref<any>;
223
224
  userList: import("vue").Ref<AnyObject[]>;
224
225
  handleInput: () => void;
225
226
  _disabledIds: import("vue").ComputedRef<any[]>;
@@ -499,6 +500,7 @@ declare const _default: import("vue").DefineComponent<{}, {
499
500
  remark: import("vue").Ref<string>;
500
501
  currentTab: import("vue").Ref<AnyObject[]>;
501
502
  breadcrumbList: import("vue").Ref<AnyObject[]>;
503
+ breadcrumbRef: import("vue").Ref<any>;
502
504
  userList: import("vue").Ref<AnyObject[]>;
503
505
  handleInput: () => void;
504
506
  _disabledIds: import("vue").ComputedRef<any[]>;
@@ -811,6 +813,8 @@ declare const _default: import("vue").DefineComponent<{}, {
811
813
  holidays: Date[];
812
814
  }>>;
813
815
  formatTime: typeof import("../utils").formatTime;
816
+ isDoctorRole: typeof import("../utils").isDoctorRole;
817
+ getRoleName: typeof import("../utils").getRoleName;
814
818
  MESSAGE_TYPE: typeof import("../constants").MESSAGE_TYPE;
815
819
  emojis: {
816
820
  default: string[][];
@@ -920,6 +924,7 @@ declare const _default: import("vue").DefineComponent<{}, {
920
924
  remark: import("vue").Ref<string>;
921
925
  currentTab: import("vue").Ref<AnyObject[]>;
922
926
  breadcrumbList: import("vue").Ref<AnyObject[]>;
927
+ breadcrumbRef: import("vue").Ref<any>;
923
928
  userList: import("vue").Ref<AnyObject[]>;
924
929
  handleInput: () => void;
925
930
  _disabledIds: import("vue").ComputedRef<any[]>;
@@ -483,6 +483,7 @@ declare const _default: import("vue").DefineComponent<{}, {
483
483
  remark: import("vue").Ref<string>;
484
484
  currentTab: import("vue").Ref<AnyObject[]>;
485
485
  breadcrumbList: import("vue").Ref<AnyObject[]>;
486
+ breadcrumbRef: import("vue").Ref<any>;
486
487
  userList: import("vue").Ref<AnyObject[]>;
487
488
  handleInput: () => void;
488
489
  _disabledIds: import("vue").ComputedRef<any[]>;
@@ -1,6 +1,6 @@
1
1
  import { PropType } from 'vue';
2
2
  import { AnyObject } from '../../../../shared/types';
3
- import { formatTime } from '../utils';
3
+ import { formatTime, isDoctorRole, getRoleName } from '../utils';
4
4
  import { MESSAGE_TYPE } from '../constants';
5
5
  declare const _default: import("vue").DefineComponent<{
6
6
  visible: {
@@ -207,6 +207,8 @@ declare const _default: import("vue").DefineComponent<{
207
207
  holidays: Date[];
208
208
  }>>;
209
209
  formatTime: typeof formatTime;
210
+ isDoctorRole: typeof isDoctorRole;
211
+ getRoleName: typeof getRoleName;
210
212
  MESSAGE_TYPE: typeof MESSAGE_TYPE;
211
213
  emojis: {
212
214
  default: string[][];
@@ -1 +1 @@
1
- import{createElementVNode as e,defineComponent as a,ref as l,watch as t,openBlock as n,createBlock as r,unref as s,withCtx as o,createVNode as i,toDisplayString as u,normalizeStyle as d,resolveDynamicComponent as c,createElementBlock as v,Fragment as m,renderList as p,withDirectives as f,createTextVNode as g,vShow as y}from"vue";import{NModal as h,NAvatar as w,NInputGroup as _,NInput as b,NSelect as T,NPopover as k,NTag as M,NIcon as j}from"naive-ui";import{SearchOutline as x}from"@vicons/ionicons5";import{useData as I}from"../hooks/useData.js";import"stompjs";import"sockjs-client/dist/sockjs.min.js";import{MESSAGE_TYPE as C}from"../constants/index.js";import{searchChatRecordApi as L}from"../api/index.js";import{transformMessage as A,formatTime as S}from"../utils/index.js";import{last as H}from"lodash-es";import"trtc-sdk-v5";import U from"../../../date-picker/index.js";import{useDebounceFn as B}from"@vueuse/core";import{format as D}from"date-fns";import"../../../../shared/utils/index.js";import"@vue/shared";import"@vueuse/shared";import"../../../../shared/hooks/selectHooks/useSearchContent.js";import{useScrollLoading as E}from"../../../../shared/hooks/useScrollLoading.js";import{emojis as z}from"../utils/emoji.js";var N,O;const G={class:"iho-chat-dialog__header"},R=e("span",{class:"left"},(null==(N=window.getLanguageByCode)?void 0:N.call(window,"10010.1.65"))||"聊天记录",-1),$={class:"center"},J={class:"chat-record-box"},W={class:"msg-box"},F={class:"name-and-time"},P={class:"content"},V=["src"],q={class:"file-type"},K={class:"text"},Q={class:"name"},X={class:"detail"},Y=["src"],Z=["innerHTML"],ee={key:1,class:"no-data"},ae={class:"chat-record-box__filter"},le=e("span",{class:"filter-title"},(null==(O=window.getLanguageByCode)?void 0:O.call(window,"10010.1.72"))||"添加筛选条件",-1),te={class:"filter-item"},ne=e("span",{class:"label"},"成员:",-1),re={class:"filter-item"},se=e("span",{class:"label"},"日期:",-1),oe={class:"time-target"},ie={class:"time-target__item"},ue=e("span",null,"开始:",-1),de={class:"tip"},ce={class:"time-target__item"},ve=e("span",null,"结束:",-1),me={class:"tip"};var pe=a({__name:"ChatRecord",props:{visible:{type:Boolean}},setup(a){const N=a,O={color:"#fff",textColor:"#666"},{state:pe,cssVars:fe}=I(),ge=l(),ye=l([]),he=l(),we=l([]),_e=l(),be=l(),Te=B(Ce,500),ke={page:0,hasMore:!0,lastSendTime:D(new Date,"yyyy-MM-dd HH:mm:ss")};function Me(e,a){try{const l=JSON.parse(e);return l?l[a]:""}catch(a){return e||""}}function je(e){const{size:a,sendTime:l,senderName:t}=e;return`${D(new Date(l),"yyyy/MM/dd HH:mm")} ${t}`}function xe(e){const a=e.lastIndexOf(".");if(console.log("dotIndex",a),-1!==a){return e.charAt(a+1).toUpperCase()}return"?"}async function Ie(){var e;try{if(!ke.hasMore)return;ke.page++;const a=await L({orgId:pe.orgId,keyword:he.value,endTime:Se(),startTime:_e.value?_e.value+" 00:00:00":"",lastSendTime:ke.lastSendTime,memberIdSet:we.value,page:ke.page,recordType:"ALL",receiver:pe.currentSessionItem.receiver,userId:pe.userInfo.id});Array.isArray(a)&&0!==a.length&&Array.isArray(a[0].recordList)||(ke.hasMore=!1);let l=a||[];Array.isArray(a)&&a.length>0&&(l=a[0].recordList.filter((e=>"WITHDRAWN"!==e.status))),ke.lastSendTime=null==(e=H(l))?void 0:e.sendTime,l.forEach((e=>{var a,l,t;let n="";if(e.content.chatMessageType===C.TEMPLATE)n=null==(t=null==(l=null==(a=e.content)?void 0:a.messageTemplate)?void 0:l.setting)?void 0:t.title;else n=A(e.content);e.__content=n})),ye.value=ke.page>1?ye.value.concat(l):l}catch(e){}}function Ce(){Object.assign(ke,{page:0,hasMore:!0,lastSendTime:Se()||D(new Date,"yyyy-MM-dd HH:mm:ss")}),Ie()}function Le(e){return!!be.value&&e>Date.parse(`${be.value} 23:59:59`)}function Ae(e){return!!_e.value&&e<Date.parse(_e.value)}function Se(){return be.value?be.value+" 23:59:59":""}function He(e){switch(e){case"member":we.value=[];break;case"start":_e.value=null;break;case"end":be.value=null}}function Ue(e){return i(m,null,[i("div",{style:"display: flex;align-items: center"},[i(w,{src:e.avatar,round:!0,size:"small"},null),i("span",{style:"margin-left: 10px"},[e.name])])])}return E(ge,(()=>{Ie()})),t([()=>we.value,()=>_e.value,()=>be.value],(()=>{N.visible&&Ce()}),{deep:!0}),t((()=>N.visible),(e=>{e?Ce():(he.value="",be.value=null,_e.value=null,we.value=[],ye.value=[])})),(a,l)=>(n(),r(s(h),{preset:"dialog",title:"","show-icon":!1,"auto-focus":!1,class:"iho-chat-dialog"},{header:o((()=>[e("div",G,[R,e("div",$,[i(s(w),{round:"",size:30,src:s(pe).currentSessionItem.avatar},null,8,["src"]),e("span",null,u(s(pe).currentSessionItem.name),1)])])])),default:o((()=>[e("div",{class:"iho-chat-dialog__content iho-chat-record-wrapper",style:d(s(fe))},[i(s(_),null,{default:o((()=>{var e;return[(n(),r(c((()=>[i(j,{component:x,size:18,color:"#6666"},null),we.value.length>0?i(M,{closable:!0,bordered:!1,color:O,onClose:()=>He("member")},{default:()=>{var e,a;return[g("成员:")," ",we.value.length>1?we.value.length+((null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.40"))||"人"):null==(a=pe.currentGroupUser.find((e=>e.id===we.value[0])))?void 0:a.name]}}):null,_e.value?i(M,{closable:!0,bordered:!1,color:O,onClose:()=>He("start")},{default:()=>[g("起始时间: "),_e.value]}):null,be.value?i(M,{closable:!0,bordered:!1,color:O,onClose:()=>He("end")},{default:()=>[g("结束时间: "),be.value]}):null])))),i(s(b),{placeholder:(null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.36"))||"搜索",value:he.value,"onUpdate:value":l[0]||(l[0]=e=>he.value=e),valueModifiers:{trim:!0},onInput:s(Te)},null,8,["value","onInput"])]})),_:1}),e("div",J,[e("div",{class:"chat-record-box__content",ref_key:"recordRef",ref:ge},[ye.value.length>0?(n(!0),v(m,{key:0},p(ye.value,(a=>(n(),v("div",{class:"content-item",key:a.id},[i(s(w),{round:"",size:38,src:a.senderAvatar},null,8,["src"]),e("div",W,[e("div",F,[e("span",null,u(a.senderName),1),e("span",null,u(s(S)(a.sendTime).recordTime),1)]),e("div",P,[a.content.chatMessageType===s(C).IMAGE?(n(),v("img",{key:0,src:Me(a.__content,"fileUrl")},null,8,V)):a.content.chatMessageType===s(C).FILE?(n(),v(m,{key:1},[e("span",q,u(xe(a.__content)),1),e("div",K,[e("span",Q,u(Me(a.__content,"fileName")),1),e("span",X,u(je(a)),1)])],64)):a.content.chatMessageType===s(C).EMOJI?(n(),v("img",{key:2,class:"emoji",src:s(z).findEmoji(a.__content)},null,8,Y)):(n(),v("p",{key:3,innerHTML:a.__content},null,8,Z))])])])))),128)):(n(),v("div",ee,"没有找到相关记录"))],512),e("div",ae,[le,e("div",te,[ne,i(s(T),{value:we.value,"onUpdate:value":l[1]||(l[1]=e=>we.value=e),multiple:"","max-tag-count":1,"render-label":Ue,options:s(pe).currentGroupUser,"value-field":"id"},null,8,["value","options"])]),e("div",re,[se,e("div",oe,[i(s(k),{trigger:"click","show-arrow":!1},{trigger:o((()=>{var a;return[e("div",ie,[ue,f(i(s(M),{bordered:!1,color:O,closable:"",onClose:l[2]||(l[2]=()=>He("start"))},{default:o((()=>[g(u(_e.value),1)])),_:1},512),[[y,_e.value]]),f(e("span",de,(null==(a=window.getLanguageByCode)?void 0:a.call(window,"10010.1.76"))||"点击选择",512),[[y,!_e.value]])])]})),default:o((()=>[i(s(U),{"formatted-value":_e.value,"onUpdate:formatted-value":l[3]||(l[3]=e=>_e.value=e),type:"date",panel:"",clearable:"","is-date-disabled":Le},null,8,["formatted-value"])])),_:1}),i(s(k),{trigger:"click","show-arrow":!1},{trigger:o((()=>{var a;return[e("div",ce,[ve,f(i(s(M),{bordered:!1,color:O,closable:"",onClose:l[4]||(l[4]=()=>He("end"))},{default:o((()=>[g(u(be.value),1)])),_:1},512),[[y,be.value]]),f(e("span",me,(null==(a=window.getLanguageByCode)?void 0:a.call(window,"10010.1.76"))||"点击选择",512),[[y,!be.value]])])]})),default:o((()=>[i(s(U),{"formatted-value":be.value,"onUpdate:formatted-value":l[5]||(l[5]=e=>be.value=e),type:"date",panel:"",clearable:"","is-date-disabled":Ae},null,8,["formatted-value"])])),_:1})])])])])],4)])),_:1}))}});export{pe as default};
1
+ import{createElementVNode as e,defineComponent as a,ref as l,watch as t,openBlock as s,createBlock as n,unref as r,withCtx as o,createVNode as i,toDisplayString as u,normalizeStyle as d,resolveDynamicComponent as c,createElementBlock as v,Fragment as m,renderList as p,createCommentVNode as f,withDirectives as g,normalizeClass as h,vShow as y,createTextVNode as w}from"vue";import{NModal as _,NAvatar as b,NInputGroup as T,NInput as k,NSelect as M,NPopover as I,NTag as x,NIcon as j}from"naive-ui";import{SearchOutline as C}from"@vicons/ionicons5";import{useData as L}from"../hooks/useData.js";import"stompjs";import"sockjs-client/dist/sockjs.min.js";import{MESSAGE_TYPE as A}from"../constants/index.js";import{searchChatRecordApi as S}from"../api/index.js";import{transformMessage as H,isDoctorRole as D,getRoleName as U,formatTime as B}from"../utils/index.js";import{last as E}from"lodash-es";import"trtc-sdk-v5";import N from"../../../date-picker/index.js";import{useDebounceFn as z}from"@vueuse/core";import{format as O}from"date-fns";import"../../../../shared/utils/index.js";import"@vue/shared";import"@vueuse/shared";import"../../../../shared/hooks/selectHooks/useSearchContent.js";import{useScrollLoading as R}from"../../../../shared/hooks/useScrollLoading.js";import{emojis as G}from"../utils/emoji.js";var $,J;const W={class:"iho-chat-dialog__header"},F=e("span",{class:"left"},(null==($=window.getLanguageByCode)?void 0:$.call(window,"10010.1.65"))||"聊天记录",-1),P={class:"center"},V={class:"chat-record-box"},q={class:"msg-box"},K={class:"name-and-time"},Q={class:"seach-box"},X={class:"ellipsis"},Y={style:{"white-space":"nowrap"}},Z={class:"content"},ee=["src"],ae={class:"file-type"},le={class:"text"},te={class:"name"},se={class:"detail"},ne=["src"],re=["innerHTML"],oe={key:1,class:"no-data"},ie={class:"chat-record-box__filter"},ue=e("span",{class:"filter-title"},(null==(J=window.getLanguageByCode)?void 0:J.call(window,"10010.1.72"))||"添加筛选条件",-1),de={class:"filter-item"},ce=e("span",{class:"label"},"成员:",-1),ve={class:"filter-item"},me=e("span",{class:"label"},"日期:",-1),pe={class:"time-target"},fe={class:"time-target__item"},ge=e("span",null,"开始:",-1),he={class:"tip"},ye={class:"time-target__item"},we=e("span",null,"结束:",-1),_e={class:"tip"};var be=a({__name:"ChatRecord",props:{visible:{type:Boolean}},setup(a){const $=a,J={color:"#fff",textColor:"#666"},{state:be,cssVars:Te}=L(),ke=l(),Me=l([]),Ie=l(),xe=l([]),je=l(),Ce=l(),Le=z(Be,500),Ae={page:0,hasMore:!0,lastSendTime:O(new Date,"yyyy-MM-dd HH:mm:ss")};function Se(e,a){try{const l=JSON.parse(e);return l?l[a]:""}catch(a){return e||""}}function He(e){const{size:a,sendTime:l,senderName:t}=e;return`${O(new Date(l),"yyyy/MM/dd HH:mm")} ${t}`}function De(e){const a=e.lastIndexOf(".");if(console.log("dotIndex",a),-1!==a){return e.charAt(a+1).toUpperCase()}return"?"}async function Ue(){var e;try{if(!Ae.hasMore)return;Ae.page++;const a=await S({orgId:be.orgId,keyword:Ie.value,endTime:ze(),startTime:je.value?je.value+" 00:00:00":"",lastSendTime:Ae.lastSendTime,memberIdSet:xe.value,page:Ae.page,recordType:"ALL",receiver:be.currentSessionItem.receiver,userId:be.userInfo.id});Array.isArray(a)&&0!==a.length&&Array.isArray(a[0].recordList)||(Ae.hasMore=!1);let l=a||[];Array.isArray(a)&&a.length>0&&(l=a[0].recordList.filter((e=>"WITHDRAWN"!==e.status))),Ae.lastSendTime=null==(e=E(l))?void 0:e.sendTime,l.forEach((e=>{var a,l,t;let s="";if(e.content.chatMessageType===A.TEMPLATE)s=null==(t=null==(l=null==(a=e.content)?void 0:a.messageTemplate)?void 0:l.setting)?void 0:t.title;else s=H(e.content);e.__content=s})),Me.value=Ae.page>1?Me.value.concat(l):l}catch(e){}}function Be(){Object.assign(Ae,{page:0,hasMore:!0,lastSendTime:ze()||O(new Date,"yyyy-MM-dd HH:mm:ss")}),Ue()}function Ee(e){return!!Ce.value&&e>Date.parse(`${Ce.value} 23:59:59`)}function Ne(e){return!!je.value&&e<Date.parse(je.value)}function ze(){return Ce.value?Ce.value+" 23:59:59":""}function Oe(e){switch(e){case"member":xe.value=[];break;case"start":je.value=null;break;case"end":Ce.value=null}}function Re(e){return i(m,null,[i("div",{style:"display: flex;align-items: center"},[i(b,{src:e.avatar,round:!0,size:"small"},null),i("span",{style:"margin-left: 10px"},[e.name])])])}return R(ke,(()=>{Ue()})),t([()=>xe.value,()=>je.value,()=>Ce.value],(()=>{$.visible&&Be()}),{deep:!0}),t((()=>$.visible),(e=>{e?Be():(Ie.value="",Ce.value=null,je.value=null,xe.value=[],Me.value=[])})),(a,l)=>(s(),n(r(_),{preset:"dialog",title:"","show-icon":!1,"auto-focus":!1,class:"iho-chat-dialog"},{header:o((()=>[e("div",W,[F,e("div",P,[i(r(b),{round:"",size:30,src:r(be).currentSessionItem.avatar},null,8,["src"]),e("span",null,u(r(be).currentSessionItem.name),1)])])])),default:o((()=>[e("div",{class:"iho-chat-dialog__content iho-chat-record-wrapper",style:d(r(Te))},[i(r(T),null,{default:o((()=>{var e;return[(s(),n(c((()=>[i(j,{component:C,size:18,color:"#6666"},null),xe.value.length>0?i(x,{closable:!0,bordered:!1,color:J,onClose:()=>Oe("member")},{default:()=>{var e,a;return[w("成员:")," ",xe.value.length>1?xe.value.length+((null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.40"))||"人"):null==(a=be.currentGroupUser.find((e=>e.id===xe.value[0])))?void 0:a.name]}}):null,je.value?i(x,{closable:!0,bordered:!1,color:J,onClose:()=>Oe("start")},{default:()=>[w("起始时间: "),je.value]}):null,Ce.value?i(x,{closable:!0,bordered:!1,color:J,onClose:()=>Oe("end")},{default:()=>[w("结束时间: "),Ce.value]}):null])))),i(r(k),{placeholder:(null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.36"))||"搜索",value:Ie.value,"onUpdate:value":l[0]||(l[0]=e=>Ie.value=e),valueModifiers:{trim:!0},onInput:r(Le)},null,8,["value","onInput"])]})),_:1}),e("div",V,[e("div",{class:"chat-record-box__content",ref_key:"recordRef",ref:ke},[Me.value.length>0?(s(!0),v(m,{key:0},p(Me.value,(a=>(s(),v("div",{class:"content-item",key:a.id},[i(r(b),{round:"",size:38,src:a.senderAvatar},null,8,["src"]),e("div",q,[e("div",K,[f(" <span>{{ item.senderName }}</span> "),e("div",Q,[e("span",X,u(a.senderName),1),g(e("label",{class:h(["iho-chatRole",r(D)(a.roleInfo)?"isDoctor":""])},u(r(U)(a.roleInfo)),3),[[y,r(U)(a.roleInfo)]])]),e("span",Y,u(r(B)(a.sendTime).recordTime),1)]),e("div",Z,[a.content.chatMessageType===r(A).IMAGE?(s(),v("img",{key:0,src:Se(a.__content,"fileUrl")},null,8,ee)):a.content.chatMessageType===r(A).FILE?(s(),v(m,{key:1},[e("span",ae,u(De(a.__content)),1),e("div",le,[e("span",te,u(Se(a.__content,"fileName")),1),e("span",se,u(He(a)),1)])],64)):a.content.chatMessageType===r(A).EMOJI?(s(),v("img",{key:2,class:"emoji",src:r(G).findEmoji(a.__content)},null,8,ne)):(s(),v("p",{key:3,innerHTML:a.__content},null,8,re))])])])))),128)):(s(),v("div",oe,"没有找到相关记录"))],512),e("div",ie,[ue,e("div",de,[ce,i(r(M),{value:xe.value,"onUpdate:value":l[1]||(l[1]=e=>xe.value=e),multiple:"","max-tag-count":1,"render-label":Re,options:r(be).currentGroupUser,"value-field":"id"},null,8,["value","options"])]),e("div",ve,[me,e("div",pe,[i(r(I),{trigger:"click","show-arrow":!1},{trigger:o((()=>{var a;return[e("div",fe,[ge,g(i(r(x),{bordered:!1,color:J,closable:"",onClose:l[2]||(l[2]=()=>Oe("start"))},{default:o((()=>[w(u(je.value),1)])),_:1},512),[[y,je.value]]),g(e("span",he,(null==(a=window.getLanguageByCode)?void 0:a.call(window,"10010.1.76"))||"点击选择",512),[[y,!je.value]])])]})),default:o((()=>[i(r(N),{"formatted-value":je.value,"onUpdate:formatted-value":l[3]||(l[3]=e=>je.value=e),type:"date",panel:"",clearable:"","is-date-disabled":Ee},null,8,["formatted-value"])])),_:1}),i(r(I),{trigger:"click","show-arrow":!1},{trigger:o((()=>{var a;return[e("div",ye,[we,g(i(r(x),{bordered:!1,color:J,closable:"",onClose:l[4]||(l[4]=()=>Oe("end"))},{default:o((()=>[w(u(Ce.value),1)])),_:1},512),[[y,Ce.value]]),g(e("span",_e,(null==(a=window.getLanguageByCode)?void 0:a.call(window,"10010.1.76"))||"点击选择",512),[[y,!Ce.value]])])]})),default:o((()=>[i(r(N),{"formatted-value":Ce.value,"onUpdate:formatted-value":l[5]||(l[5]=e=>Ce.value=e),type:"date",panel:"",clearable:"","is-date-disabled":Ne},null,8,["formatted-value"])])),_:1})])])])])],4)])),_:1}))}});export{be as default};
@@ -164,6 +164,7 @@ declare const _default: import("vue").DefineComponent<{}, {
164
164
  remark: import("vue").Ref<string>;
165
165
  currentTab: import("vue").Ref<AnyObject[]>;
166
166
  breadcrumbList: import("vue").Ref<AnyObject[]>;
167
+ breadcrumbRef: import("vue").Ref<any>;
167
168
  userList: import("vue").Ref<AnyObject[]>;
168
169
  handleInput: () => void;
169
170
  _disabledIds: import("vue").ComputedRef<any[]>;
@@ -1 +1 @@
1
- import{createElementVNode as e,defineComponent as n,useAttrs as o,ref as t,computed as a,watch as i,openBlock as l,createBlock as s,unref as r,withCtx as c,createVNode as u,createTextVNode as d,createElementBlock as m,Fragment as p,renderList as v,toDisplayString as w,createCommentVNode as g,withDirectives as f,normalizeClass as y,vShow as _,withKeys as k,nextTick as C}from"vue";import{NDrawer as h,NDrawerContent as I,NButton as b,NIcon as L,NAvatar as B,NUpload as S,NUploadTrigger as x,NInput as U,NSpace as z,NSwitch as j,NPopconfirm as G}from"naive-ui";import{ChevronBackOutline as D,ChevronForwardOutline as R,AddOutline as A,RemoveOutline as F,Pencil as P}from"@vicons/ionicons5";import{useData as K}from"../hooks/useData.js";import"stompjs";import"sockjs-client/dist/sockjs.min.js";import{toppingSessionApi as N,groupLeaveApi as O,groupUpdateApi as q}from"../api/index.js";import{isDoctorRole as E,getRoleName as H}from"../utils/index.js";import{trim as J,isFunction as M}from"lodash-es";import"trtc-sdk-v5";import Q from"./ChatAdd.vue.js";var T,V,W,X,Y,Z,$,ee,ne,oe;const te={key:0,class:"chat-set-wrapper"},ae=["onClick"],ie={class:"name"},le={key:0,class:"item__right",style:{color:"var(--c-primary-color)"}},se={class:"name"},re={class:"item item-column"},ce=e("span",{class:"label"},(null==(T=window.getLanguageByCode)?void 0:T.call(window,"10010.1.85"))||"群成员",-1),ue={class:"group-box"},de=["onClick"],me={class:"name"},pe={class:"group-box__item"},ve=e("span",{class:"name"},(null==(V=window.getLanguageByCode)?void 0:V.call(window,"10010.1.86"))||"添加",-1),we={class:"group-box__item"},ge=e("span",{class:"name"},(null==(W=window.getLanguageByCode)?void 0:W.call(window,"10010.1.88"))||"移除",-1),fe=["onClick"],ye=e("span",{class:"label"},(null==(X=window.getLanguageByCode)?void 0:X.call(window,"10010.1.90"))||"群头像",-1),_e={class:"item"},ke=e("span",{class:"label"},(null==(Y=window.getLanguageByCode)?void 0:Y.call(window,"10010.1.91"))||"群名称",-1),Ce={class:"item__right"},he={class:"txt"},Ie={class:"item"},be=e("span",{class:"label"},(null==(Z=window.getLanguageByCode)?void 0:Z.call(window,"10010.1.92"))||"置顶聊天",-1),Le={class:"item item--red"},Be=e("span",{class:"label"},(null==($=window.getLanguageByCode)?void 0:$.call(window,"10010.1.93"))||"退出群聊",-1),Se=e("p",{style:{width:"230px"}},(null==(ee=window.getLanguageByCode)?void 0:ee.call(window,"10010.1.94"))||"是否确认退出群聊?",-1),xe={class:"item item--red"},Ue=e("span",{class:"label"},(null==(ne=window.getLanguageByCode)?void 0:ne.call(window,"10010.1.95"))||"解散该群",-1),ze=e("p",{style:{width:"230px"}},(null==(oe=window.getLanguageByCode)?void 0:oe.call(window,"10010.1.96"))||"是否确认解散群聊?",-1);var je=n({__name:"ChatSet",setup(n){const T=o(),{state:V,setCurrentSessionItem:W,setUserDetail:X,isGroupChat:Y,isGroupLeader:Z}=K(),$=t(),ee=t(!1),ne=t(""),oe=t(!1),je=a((()=>V.currentGroupUser.map((e=>e.id)))),Ge=a((()=>V.currentGroupUser?Z.value?V.currentGroupUser.slice(0,6):V.currentGroupUser.slice(0,7):[]));async function De(e){try{await N({id:V.currentSessionItem.id,topping:e}),W({topping:e})}catch(e){}}async function Re(e){await O({dissolution:!!e,groupId:V.currentSessionItem.receiver,operator:V.userInfo.id,memberIdSet:e?je.value:[V.userInfo.id]})}async function Ae(){var e;ne.value=V.currentSessionItem.name,ee.value=!0,await C(),null==(e=$.value)||e.select()}async function Fe(e){const n=new FormData,o=Object.assign({id:V.currentSessionItem.receiver},e);for(const e in o)n.append(e,o[e]);await q(n)}async function Pe(){ee.value=!1;const e=J(ne.value);e&&e!==V.currentSessionItem.name&&(await Fe({name:e}),W({name:e,defaultName:e}))}async function Ke(e){const{file:n}=e.file,o=new FileReader;o.onload=function(e){var n;(null==(n=e.target)?void 0:n.result)&&W({avatar:e.target.result})},o.readAsDataURL(e.file.file),await Fe({file:n})}return i((()=>V.id),(e=>{M(T["onUpdate:show"])&&T["onUpdate:show"](!1)})),(n,o)=>(l(),s(r(h),{width:320,"trap-focus":!1,"block-scroll":!1,to:".iho-chat",onAfterLeave:o[8]||(o[8]=e=>oe.value=!1)},{default:c((()=>[u(r(I),null,{header:c((()=>{var e,n;return[r(Y)&&oe.value?(l(),s(r(b),{key:0,text:"",color:"#666",onClick:o[0]||(o[0]=e=>oe.value=!1),style:{"font-size":"var(--n-title-font-size)"}},{icon:c((()=>[u(r(L),{size:20,component:r(D)},null,8,["component"])])),default:c((()=>{var e;return[d((null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.82"))||"返回")]})),_:1})):r(Y)?(l(),m(p,{key:1},[d((null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.83"))||"群设置")],64)):(l(),m(p,{key:2},[d((null==(n=window.getLanguageByCode)?void 0:n.call(window,"10010.1.66"))||"聊天设置")],64))]})),default:c((()=>{var n;return[r(V).id?(l(),m("div",te,[r(Y)&&oe.value?(l(!0),m(p,{key:0},v(r(V).currentGroupUser,((n,o)=>{var t;return l(),m("div",{key:n.id,class:"item",onClick:e=>r(X)(e,{show:!0,userId:n.id})},[u(r(B),{round:"",size:40,src:n.avatar},null,8,["src"]),e("span",ie,w(n.name),1),0===o?(l(),m("span",le,(null==(t=window.getLanguageByCode)?void 0:t.call(window,"10010.1.84"))||"群主")):g("v-if",!0)],8,ae)})),128)):(l(),m(p,{key:1},[e("div",{class:"item user-info",onClick:o[1]||(o[1]=e=>!r(Y)&&r(X)(e,{show:!0,userId:r(V).currentSessionItem.receiver}))},[u(r(B),{round:"",size:40,src:r(V).currentSessionItem.avatar},null,8,["src"]),e("span",se,w(r(V).currentSessionItem.name),1),f(e("label",{class:y(["iho-chatRole",r(E)(r(V).currentSessionItem.roleInfo)?"isDoctor":""])},w(r(H)(r(V).currentSessionItem.roleInfo)),3),[[_,r(H)(r(V).currentSessionItem.roleInfo)]]),r(Y)?g("v-if",!0):(l(),s(r(L),{key:0,size:24,component:r(R),class:"item__right"},null,8,["component"]))]),r(Y)?(l(),m(p,{key:0},[e("div",re,[ce,e("div",ue,[(l(!0),m(p,null,v(r(Ge),(n=>(l(),m("div",{key:n.id,class:"group-box__item",onClick:e=>r(X)(e,{show:!0,userId:n.id})},[u(r(B),{round:"",size:40,src:n.avatar},null,8,["src"]),e("span",me,w(n.name),1)],8,de)))),128)),u(Q,{mode:"join",disabledIds:r(je)},{trigger:c((()=>[e("div",pe,[u(r(b),{strong:"",secondary:"",circle:""},{icon:c((()=>[u(r(L),{component:r(A)},null,8,["component"])])),_:1}),ve])])),_:1},8,["disabledIds"]),r(Z)?(l(),s(Q,{key:0,title:(null==(n=window.getLanguageByCode)?void 0:n.call(window,"10010.1.87"))||"移除成员",mode:"remove",options:r(V).currentGroupUser},{trigger:c((()=>[e("div",we,[u(r(b),{strong:"",secondary:"",circle:""},{icon:c((()=>[u(r(L),{component:r(F)},null,8,["component"])])),_:1}),ge])])),_:1},8,["options"])):g("v-if",!0)]),u(r(b),{text:"","icon-placement":"right",color:"#999",onClick:o[2]||(o[2]=e=>oe.value=!0)},{icon:c((()=>[u(r(L),{component:r(R)},null,8,["component"])])),default:c((()=>{var e;return[d((null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.89"))||"查看全部群成员")]})),_:1})]),u(r(S),{abstract:"",multiple:"",accept:"image/*",onChange:Ke},{default:c((()=>[u(r(x),{abstract:""},{default:c((({handleClick:n})=>[e("div",{class:"item",onClick:n},[ye,u(r(L),{size:20,component:r(R),class:"item__right"},null,8,["component"])],8,fe)])),_:1})])),_:1}),e("div",_e,[ke,e("div",Ce,[ee.value?(l(),s(r(U),{key:0,ref_key:"inputRef",ref:$,value:ne.value,"onUpdate:value":o[3]||(o[3]=e=>ne.value=e),onBlur:Pe,onKeydown:o[4]||(o[4]=k((e=>e.target.blur()),["enter"]))},null,8,["value"])):(l(),s(r(z),{key:1,"wrap-item":!1,onClick:Ae,align:"center"},{default:c((()=>[e("span",he,w(r(V).currentSessionItem.name),1),u(r(b),{text:"",style:{"font-size":"14px","--n-text-color":"#999"}},{default:c((()=>[u(r(L),{component:r(P)},null,8,["component"])])),_:1})])),_:1}))])])],64)):g("v-if",!0),e("div",Ie,[be,u(r(j),{value:r(V).currentSessionItem.topping,"onUpdate:value":[o[5]||(o[5]=e=>r(V).currentSessionItem.topping=e),De],class:"item__right"},null,8,["value"])]),r(Y)?(l(),m(p,{key:1},[u(r(G),{onPositiveClick:o[6]||(o[6]=()=>Re(!1))},{trigger:c((()=>[e("div",Le,[Be,u(r(L),{size:20,component:r(R),class:"item__right"},null,8,["component"])])])),default:c((()=>[Se])),_:1}),r(Z)?(l(),s(r(G),{key:0,onPositiveClick:o[7]||(o[7]=()=>Re(!0))},{trigger:c((()=>[e("div",xe,[Ue,u(r(L),{size:20,component:r(R),class:"item__right"},null,8,["component"])])])),default:c((()=>[ze])),_:1})):g("v-if",!0)],64)):g("v-if",!0)],64))])):g("v-if",!0)]})),_:1})])),_:1}))}});export{je as default};
1
+ import{createElementVNode as e,defineComponent as n,useAttrs as o,ref as l,computed as t,watch as a,openBlock as i,createBlock as s,unref as r,withCtx as c,createVNode as u,createTextVNode as d,createElementBlock as m,Fragment as p,renderList as v,toDisplayString as g,withDirectives as w,normalizeClass as f,vShow as y,createCommentVNode as _,withKeys as h,nextTick as k}from"vue";import{NDrawer as C,NDrawerContent as I,NButton as b,NIcon as L,NAvatar as B,NUpload as S,NUploadTrigger as x,NInput as U,NSpace as z,NSwitch as j,NPopconfirm as G}from"naive-ui";import{ChevronBackOutline as D,ChevronForwardOutline as R,AddOutline as A,RemoveOutline as F,Pencil as P}from"@vicons/ionicons5";import{useData as K}from"../hooks/useData.js";import"stompjs";import"sockjs-client/dist/sockjs.min.js";import{toppingSessionApi as N,groupLeaveApi as O,groupUpdateApi as q}from"../api/index.js";import{isDoctorRole as E,getRoleName as H}from"../utils/index.js";import{trim as J,isFunction as M}from"lodash-es";import"trtc-sdk-v5";import Q from"./ChatAdd.vue.js";var T,V,W,X,Y,Z,$,ee,ne,oe;const le={key:0,class:"chat-set-wrapper"},te=["onClick"],ae={class:"role-name"},ie={class:"name"},se={key:0,class:"item__right",style:{color:"var(--c-primary-color)"}},re={class:"name"},ce={class:"item item-column"},ue=e("span",{class:"label"},(null==(T=window.getLanguageByCode)?void 0:T.call(window,"10010.1.85"))||"群成员",-1),de={class:"group-box"},me=["onClick"],pe={class:"name"},ve={class:"group-box__item"},ge=e("span",{class:"name"},(null==(V=window.getLanguageByCode)?void 0:V.call(window,"10010.1.86"))||"添加",-1),we={class:"group-box__item"},fe=e("span",{class:"name"},(null==(W=window.getLanguageByCode)?void 0:W.call(window,"10010.1.88"))||"移除",-1),ye=["onClick"],_e=e("span",{class:"label"},(null==(X=window.getLanguageByCode)?void 0:X.call(window,"10010.1.90"))||"群头像",-1),he={class:"item"},ke=e("span",{class:"label"},(null==(Y=window.getLanguageByCode)?void 0:Y.call(window,"10010.1.91"))||"群名称",-1),Ce={class:"item__right"},Ie={class:"txt"},be={class:"item"},Le=e("span",{class:"label"},(null==(Z=window.getLanguageByCode)?void 0:Z.call(window,"10010.1.92"))||"置顶聊天",-1),Be={class:"item item--red"},Se=e("span",{class:"label"},(null==($=window.getLanguageByCode)?void 0:$.call(window,"10010.1.93"))||"退出群聊",-1),xe=e("p",{style:{width:"230px"}},(null==(ee=window.getLanguageByCode)?void 0:ee.call(window,"10010.1.94"))||"是否确认退出群聊?",-1),Ue={class:"item item--red"},ze=e("span",{class:"label"},(null==(ne=window.getLanguageByCode)?void 0:ne.call(window,"10010.1.95"))||"解散该群",-1),je=e("p",{style:{width:"230px"}},(null==(oe=window.getLanguageByCode)?void 0:oe.call(window,"10010.1.96"))||"是否确认解散群聊?",-1);var Ge=n({__name:"ChatSet",setup(n){const T=o(),{state:V,setCurrentSessionItem:W,setUserDetail:X,isGroupChat:Y,isGroupLeader:Z}=K(),$=l(),ee=l(!1),ne=l(""),oe=l(!1),Ge=t((()=>V.currentGroupUser.map((e=>e.id)))),De=t((()=>V.currentGroupUser?Z.value?V.currentGroupUser.slice(0,6):V.currentGroupUser.slice(0,7):[]));async function Re(e){try{await N({id:V.currentSessionItem.id,topping:e}),W({topping:e})}catch(e){}}async function Ae(e){await O({dissolution:!!e,groupId:V.currentSessionItem.receiver,operator:V.userInfo.id,memberIdSet:e?Ge.value:[V.userInfo.id]})}async function Fe(){var e;ne.value=V.currentSessionItem.name,ee.value=!0,await k(),null==(e=$.value)||e.select()}async function Pe(e){const n=new FormData,o=Object.assign({id:V.currentSessionItem.receiver},e);for(const e in o)n.append(e,o[e]);await q(n)}async function Ke(){ee.value=!1;const e=J(ne.value);e&&e!==V.currentSessionItem.name&&(await Pe({name:e}),W({name:e,defaultName:e}))}async function Ne(e){const{file:n}=e.file,o=new FileReader;o.onload=function(e){var n;(null==(n=e.target)?void 0:n.result)&&W({avatar:e.target.result})},o.readAsDataURL(e.file.file),await Pe({file:n})}return a((()=>V.id),(e=>{M(T["onUpdate:show"])&&T["onUpdate:show"](!1)})),(n,o)=>(i(),s(r(C),{width:320,"trap-focus":!1,"block-scroll":!1,to:".iho-chat",onAfterLeave:o[8]||(o[8]=e=>oe.value=!1)},{default:c((()=>[u(r(I),null,{header:c((()=>{var e,n;return[r(Y)&&oe.value?(i(),s(r(b),{key:0,text:"",color:"#666",onClick:o[0]||(o[0]=e=>oe.value=!1),style:{"font-size":"var(--n-title-font-size)"}},{icon:c((()=>[u(r(L),{size:20,component:r(D)},null,8,["component"])])),default:c((()=>{var e;return[d((null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.82"))||"返回")]})),_:1})):r(Y)?(i(),m(p,{key:1},[d((null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.83"))||"群设置")],64)):(i(),m(p,{key:2},[d((null==(n=window.getLanguageByCode)?void 0:n.call(window,"10010.1.66"))||"聊天设置")],64))]})),default:c((()=>{var n;return[r(V).id?(i(),m("div",le,[r(Y)&&oe.value?(i(!0),m(p,{key:0},v(r(V).currentGroupUser,((n,o)=>{var l;return i(),m("div",{key:n.id,class:"item",onClick:e=>r(X)(e,{show:!0,userId:n.id})},[u(r(B),{round:"",size:40,src:n.avatar},null,8,["src"]),e("div",ae,[e("span",ie,g(n.name),1),w(e("label",{class:f(["iho-chatRole",r(E)(n.roleInfo)?"isDoctor":""]),style:{"margin-right":"6px"}},g(r(H)(n.roleInfo)),3),[[y,r(H)(n.roleInfo)]])]),0===o?(i(),m("span",se,(null==(l=window.getLanguageByCode)?void 0:l.call(window,"10010.1.84"))||"群主")):_("v-if",!0)],8,te)})),128)):(i(),m(p,{key:1},[e("div",{class:"item user-info",onClick:o[1]||(o[1]=e=>!r(Y)&&r(X)(e,{show:!0,userId:r(V).currentSessionItem.receiver}))},[u(r(B),{round:"",size:40,src:r(V).currentSessionItem.avatar},null,8,["src"]),e("span",re,g(r(V).currentSessionItem.name),1),w(e("label",{class:f(["iho-chatRole",r(E)(r(V).currentSessionItem.roleInfo)?"isDoctor":""])},g(r(H)(r(V).currentSessionItem.roleInfo)),3),[[y,r(H)(r(V).currentSessionItem.roleInfo)]]),r(Y)?_("v-if",!0):(i(),s(r(L),{key:0,size:24,component:r(R),class:"item__right"},null,8,["component"]))]),r(Y)?(i(),m(p,{key:0},[e("div",ce,[ue,e("div",de,[(i(!0),m(p,null,v(r(De),(n=>(i(),m("div",{key:n.id,class:"group-box__item",onClick:e=>r(X)(e,{show:!0,userId:n.id})},[u(r(B),{round:"",size:40,src:n.avatar},null,8,["src"]),e("span",pe,g(n.name),1),w(e("label",{class:f(["iho-chatRole",r(E)(n.roleInfo)?"isDoctor":""]),style:{"margin-left":"0"}},g(r(H)(n.roleInfo)),3),[[y,r(H)(n.roleInfo)]])],8,me)))),128)),u(Q,{mode:"join",disabledIds:r(Ge)},{trigger:c((()=>[e("div",ve,[u(r(b),{strong:"",secondary:"",circle:""},{icon:c((()=>[u(r(L),{component:r(A)},null,8,["component"])])),_:1}),ge])])),_:1},8,["disabledIds"]),r(Z)?(i(),s(Q,{key:0,title:(null==(n=window.getLanguageByCode)?void 0:n.call(window,"10010.1.87"))||"移除成员",mode:"remove",options:r(V).currentGroupUser},{trigger:c((()=>[e("div",we,[u(r(b),{strong:"",secondary:"",circle:""},{icon:c((()=>[u(r(L),{component:r(F)},null,8,["component"])])),_:1}),fe])])),_:1},8,["options"])):_("v-if",!0)]),u(r(b),{text:"","icon-placement":"right",color:"#999",onClick:o[2]||(o[2]=e=>oe.value=!0)},{icon:c((()=>[u(r(L),{component:r(R)},null,8,["component"])])),default:c((()=>{var e;return[d((null==(e=window.getLanguageByCode)?void 0:e.call(window,"10010.1.89"))||"查看全部群成员")]})),_:1})]),u(r(S),{abstract:"",multiple:"",accept:"image/*",onChange:Ne},{default:c((()=>[u(r(x),{abstract:""},{default:c((({handleClick:n})=>[e("div",{class:"item",onClick:n},[_e,u(r(L),{size:20,component:r(R),class:"item__right"},null,8,["component"])],8,ye)])),_:1})])),_:1}),e("div",he,[ke,e("div",Ce,[ee.value?(i(),s(r(U),{key:0,ref_key:"inputRef",ref:$,value:ne.value,"onUpdate:value":o[3]||(o[3]=e=>ne.value=e),onBlur:Ke,onKeydown:o[4]||(o[4]=h((e=>e.target.blur()),["enter"]))},null,8,["value"])):(i(),s(r(z),{key:1,"wrap-item":!1,onClick:Fe,align:"center"},{default:c((()=>[e("span",Ie,g(r(V).currentSessionItem.name),1),u(r(b),{text:"",style:{"font-size":"14px","--n-text-color":"#999"}},{default:c((()=>[u(r(L),{component:r(P)},null,8,["component"])])),_:1})])),_:1}))])])],64)):_("v-if",!0),e("div",be,[Le,u(r(j),{value:r(V).currentSessionItem.topping,"onUpdate:value":[o[5]||(o[5]=e=>r(V).currentSessionItem.topping=e),Re],class:"item__right"},null,8,["value"])]),r(Y)?(i(),m(p,{key:1},[u(r(G),{onPositiveClick:o[6]||(o[6]=()=>Ae(!1))},{trigger:c((()=>[e("div",Be,[Se,u(r(L),{size:20,component:r(R),class:"item__right"},null,8,["component"])])])),default:c((()=>[xe])),_:1}),r(Z)?(i(),s(r(G),{key:0,onPositiveClick:o[7]||(o[7]=()=>Ae(!0))},{trigger:c((()=>[e("div",Ue,[ze,u(r(L),{size:20,component:r(R),class:"item__right"},null,8,["component"])])])),default:c((()=>[je])),_:1})):_("v-if",!0)],64)):_("v-if",!0)],64))])):_("v-if",!0)]})),_:1})])),_:1}))}});export{Ge as default};
@@ -181,6 +181,7 @@ declare const _default: import("vue").DefineComponent<{}, {
181
181
  remark: import("vue").Ref<string>;
182
182
  currentTab: import("vue").Ref<AnyObject[]>;
183
183
  breadcrumbList: import("vue").Ref<AnyObject[]>;
184
+ breadcrumbRef: import("vue").Ref<any>;
184
185
  userList: import("vue").Ref<AnyObject[]>;
185
186
  handleInput: () => void;
186
187
  _disabledIds: import("vue").ComputedRef<any[]>;