"use strict";(self["webpackChunkRaingad_IM"]=self["webpackChunkRaingad_IM"]||[]).push([[647],{6647:function(e,t,a){a.d(t,{Z:function(){return M}});var s=function(){var e=this,t=e._self._c;return t("div",{directives:[{name:"elclickoutside",rawName:"v-elclickoutside",value:e.handleClose,expression:"handleClose"}],ref:"reference",staticClass:"wk-user-select xh-form-border",class:[e.disabled?"is_disabled":"is_valid",{is_focus:e.visible}],style:{height:`${e.height}px`,width:e.width},attrs:{wrap:"wrap"},on:{click:e.containerClick}},[t("div",{ref:"tags",staticClass:"el-select__tags"},e._l(e.showSelects,(function(a,s){return t("span",{key:s,staticClass:"user-item text-one-line",class:{"is-hide":a.isHide}},[e._v(e._s(a[e.props.label])+" "),a.disabled?e._e():t("i",{staticClass:"delete-icon el-icon-close",on:{click:function(t){return t.stopPropagation(),e.deleteuser(a,s)}}})])})),0),e.selects.length>e.max&&e.max>0?t("i",{staticClass:"el-icon-more"}):e._e(),t("i",{class:["el-icon-arrow-up",{"is-reverse":e.visible}]}),0==e.selects.length?t("div",{staticClass:"user-placeholder text-one-line"},[e._v(e._s(e.placeholder))]):e._e(),t("transition",{attrs:{name:"el-zoom-in-top"},on:{"before-enter":e.handleMenuEnter,"after-leave":e.doDestroy}},[t("wk-select-dropdown",{directives:[{name:"show",rawName:"v-show",value:e.visible&&!e.disabled,expression:"visible && !disabled"}],ref:"popper",attrs:{"append-to-body":e.popperAppendToBody}},[t("el-scrollbar",{ref:"scrollbar",attrs:{tag:"div"}},[t("wk-user",{directives:[{name:"loading",rawName:"v-loading",value:e.loading,expression:"loading"}],attrs:{disabled:e.disabled,options:e.optionsList,props:e.props,radio:e.radio,max:e.limit,page:e.page},on:{change:e.wkUserChange,close:function(t){e.visible=!1},getData:e.requestUserList},model:{value:e.dataValue,callback:function(t){e.dataValue=t},expression:"dataValue"}})],1)],1)],1)],1)},i=[],l=(a(7658),function(){var e=this,t=e._self._c;return t("div",{staticClass:"el-select-dropdown el-popper",class:[{"is-multiple":e.$parent.multiple},e.popperClass],style:{minWidth:e.minWidth}},[e._t("default")],2)}),r=[],n=a(4857),o={name:"WkSelectDropdown",componentName:"WkSelectDropdown",mixins:[n["default"]],props:{placement:{type:String,default:"bottom-start"},boundariesPadding:{type:Number,default:0},popperOptions:{type:Object,default(){return{gpuAcceleration:!1}}},visibleArrow:{type:Boolean,default:!1},appendToBody:{type:Boolean,default:!0}},data(){return{minWidth:"300px"}},computed:{popperClass(){return this.$parent.popperClass}},watch:{},mounted(){this.referenceElm=this.$parent.$el,this.$parent.popperElm=this.popperElm=this.$el,this.$on("updatePopper",(()=>{this.$parent.visible&&this.updatePopper()})),this.$on("destroyPopper",this.destroyPopper)}},h=o,d=a(1001),p=(0,d.Z)(h,l,r,!1,null,null,null),u=p.exports,c=function(){var e=this,t=e._self._c;return t("div",{staticClass:"xh-user"},[e.headerShow?t("div",{staticClass:"xh-user__hd"},[e._v(" 员工 ")]):e._e(),t("div",{staticClass:"xh-user__bd"},[t("el-input",{staticClass:"search-input",attrs:{disabled:e.disabled,placeholder:"搜索成员",size:"small","prefix-icon":"el-icon-search"},on:{input:e.inputValue},model:{value:e.searchInput,callback:function(t){e.searchInput=t},expression:"searchInput"}}),t("div",{directives:[{name:"infinite-scroll",rawName:"v-infinite-scroll",value:e.handleScroll,expression:"handleScroll"}],ref:"searchLists",staticClass:"search-lists",attrs:{id:"resultScroll","infinite-scroll-distance":"700px"}},[t("el-checkbox",{staticClass:"all-check",attrs:{indeterminate:e.isIndeterminate,disabled:e.radio||e.disabled},on:{change:e.handleCheckAllChange},model:{value:e.checkAll,callback:function(t){e.checkAll=t},expression:"checkAll"}},[e._v("全选")]),t("el-checkbox-group",{ref:"checkboxGroup",attrs:{max:e.max,disabled:e.disabled},on:{change:e.checkboxChange},model:{value:e.dataValue,callback:function(t){e.dataValue=t},expression:"dataValue"}},e._l(e.options,(function(a,s){return t("el-checkbox",{directives:[{name:"show",rawName:"v-show",value:!a.isHide,expression:"!item.isHide"}],key:s,staticClass:"colleagues-list",attrs:{label:a[e.props.value]}},[t("avatarList",{staticClass:"logo-center mr-10",class:0==a.status&&"is-grays",attrs:{avatarSize:24,avatarMessageIsShow:!1,avatarMessage:{avatarUrl:a.avatar}}}),t("span",[e._v(e._s(a[e.props.label]))])],1)})),1)],1)],1),t("div",{staticClass:"xh-user__ft"},[t("span",{staticClass:"select-info"},[e._v("已选择"),t("span",{staticClass:"select-info--num"},[e._v(e._s(e.value?e.value.length:0))]),e._v("项")]),t("el-button",{attrs:{type:"text"},on:{click:e.clearAll}},[e._v("清空")])],1)])},v=[],m=a(5402),f=a(2325),g=function(){var e=this,t=e._self._c;return t("div",{staticClass:"avater-components"},[t("el-popover",{directives:[{name:"show",rawName:"v-show",value:e.avatarMessageIsShow,expression:"avatarMessageIsShow"}],attrs:{placement:"right",width:"400",trigger:e.avatarevent}},[t("div",{staticClass:"tips"},e._l(e.avatarMessage,(function(a,s){return t("div",{key:s},["avatarUrl"!==s?t("div",[t("p",[e._v(e._s(a))])]):e._e()])})),0),t("div",{staticClass:"avatar",attrs:{slot:"reference"},slot:"reference"},[e.avatarMessage.avatarUrl?t("el-avatar",{attrs:{size:e.avatarSize,src:e.avatarMessage.avatarUrl,shape:e.avatarShape,fit:"contain"}}):t("el-avatar",{attrs:{size:e.avatarSize,shape:e.avatarShape,fit:"contain"}})],1)]),t("div",{directives:[{name:"show",rawName:"v-show",value:!e.avatarMessageIsShow,expression:"!avatarMessageIsShow"}],staticClass:"avatar",attrs:{slot:"reference"},on:{click:e.clickAvatar},slot:"reference"},[t("el-avatar",{attrs:{size:e.avatarSize,src:e.avatarMessage.avatarUrl,shape:e.avatarShape,fit:"contain"}})],1)],1)},b=[],k={name:"avatar",data(){return{}},props:{avatarevent:{type:String,default:"hover"},avatarUrl:{type:String,default:""},avatarSize:{type:Number,default:20},avatarMessage:{type:Object,default:()=>({})},avatarShape:{type:String,default:"circle"},avatarMessageIsShow:{type:Boolean,default:!1}},methods:{clickAvatar(){this.$emit("clickAvatar",!0)}}},y=k,w=(0,d.Z)(y,g,b,!1,null,null,null),V=w.exports,x={name:"WkUser",components:{avatarList:V},props:{radio:Boolean,headerShow:{type:Boolean,default:!0},options:Array,value:Array,props:{type:Object,default:()=>({value:"id",label:"realname"})},max:Number,disabled:{type:Boolean,default:!1}},data(){return{dataValue:[],searchInput:"",checkAll:!1,isIndeterminate:!1,page:1}},mounted(){},computed:{},watch:{value(){if(this.options&&!this.radio){const e=this.options.filter((e=>!e.isHide)).length;this.value.length==e&&(this.value.length>0||e>0)?this.checkAll=!0:this.checkAll=!1,this.isIndeterminate=!(this.checkAll||!this.value.length)}(0,m.valueEquals)(this.value,this.dataValue)||(this.dataValue=(0,f.I8)(this.value))}},created(){this.dataValue=(0,f.I8)(this.value||[])},methods:{inputValue(){this.$refs.searchLists.scrollTop=0,this.page=1,this.$emit("getData",this.searchInput)},handleScroll(){this.page=this.page+1,this.$emit("getData",this.searchInput,this.page)},checkboxChange(e){this.radio?(this.$emit("input",e.length?[e[e.length-1]]:[]),this.$emit("close")):this.$emit("input",e),this.$emit("change",e)},handleCheckAllChange(e){if(e){const e=[];this.options.forEach((t=>{t.isHide||e.push(t[this.props.value])})),this.$emit("input",e)}else this.$emit("input",[])},clearAll(){this.$emit("input",[])}}},_=x,C=(0,d.Z)(_,c,v,!1,null,"1956f8c4",null),S=C.exports,$=a(8816),A={name:"WkUserSelect",components:{WkSelectDropdown:u,WkUser:S},mixins:[$["default"]],props:{defalutValue:{type:[Object,Array,String,Number]},width:{type:String,default:"180px"},radio:Boolean,max:{type:Number,default:2},props:{type:Object,default:()=>({value:"id",label:"realname"})},limit:Number,placeholder:{type:String,default(){return"请选择"}},value:{},request:Function,params:Object,options:Array,label:String,disabled:{type:Boolean,default:!1},popperAppendToBody:{type:Boolean,default:!0}},data(){return{page:0,visible:!1,dataValue:[],loading:!1,height:32,optionsList:[]}},computed:{showSelects(){return this.max&&this.max>0&&this.selects&&this.selects.length>this.max?this.selects.slice(0,this.max):this.selects},selects(){if(!this.optionsList.length||!this.dataValue.length)return[];let e=this.optionsList.filter((e=>this.dataValue.includes(e[this.props.value])));if(e.length!==this.dataValue.length&&this.dataValue&&void 0!=this.defalutValue){let t=Array.isArray(this.defalutValue)?this.defalutValue:[Number(this.defalutValue)];return t=t.filter((t=>!e.some((e=>e.id===t.id)))),t=[...t,...e],t=t.filter((e=>this.dataValue.includes(e.id))),t}return e}},watch:{visible(e){e?this.broadcast("WkSelectDropdown","updatePopper"):this.broadcast("WkSelectDropdown","destroyPopper"),this.$emit("visible-change",e)},value(e,t){this.verifyValue()},options:{handler(){this.verifyOptions()},immediate:!0},dataValue(e){for(let t=0;t{this.height=e.clientHeight>32?e.clientHeight+6:32})):this.height=32},verifyValue(){if(this.radio||Array.isArray(this.value)||this.$emit("input",[]),this.radio)this.value!==this.dataValue&&((0,f.xb)(this.value)?this.dataValue=[]:Array.isArray(this.value)?this.dataValue=this.value.map((e=>e[this.props.value])):"number"===typeof parseInt(this.value)?this.dataValue=[this.value]:this.dataValue=[this.value.id]);else if(!(0,m.valueEquals)(this.value,this.dataValue))if(this.value&&this.value.length){const e=this.value[0];e[this.props.value]?this.dataValue=this.value.map((e=>e[this.props.value])):this.dataValue=(0,f.I8)(this.value)}else this.dataValue=[]},verifyOptions(){this.options?this.optionsList=this.options:this.requestUserList()},requestUserList(e,t=1){this.loading=!0;let a=this.$api.imApi.userList;this.request?a=this.request:this.props.request&&(a=this.props.request),a({page:t,limit:20,keywords:e}).then((a=>{a.data.hasOwnProperty("list")&&(a.data=a.data.list),e&&1==t&&(this.optionsList=[]),a.data.forEach(((e,t)=>{let a=this.optionsList.map((e=>e.id)).includes(e.id);a||this.optionsList.push(e)})),this.loading=!1})).catch((()=>{this.loading=!1}))},handleClose(){this.visible=!1},handleMenuEnter(){},doDestroy(){this.$refs.popper&&this.$refs.popper.doDestroy()},deleteuser(e){if(!e.disabled&&!this.disabled){for(let t=0;t{this.radio?this.dispatch("ElFormItem","el.form.change",this.dataValue&&this.dataValue.length?this.dataValue[0]:""):this.dispatch("ElFormItem","el.form.change",this.dataValue)})),this.$emit("change",this.dataValue,this.selects)},containerClick(){this.disabled||(this.visible=!0)}}},I=A,L=(0,d.Z)(I,s,i,!1,null,"f3dcf9b2",null),M=L.exports}}]);