LJWWMSelect-418fa90e.js 5.2 KB

1
  1. import{r as m,h as C,w as y,o as k,e as D}from"./vendor-ef68d560.js";import{L as P}from"./LJWWData-9210f5cc.js";import{n as K,$ as V}from"./index-87faf287.js";const I={__name:"LJWWMSelect",props:{visible:{type:Boolean,default:!1},data:{type:Object,default:()=>{}},value:{type:[String,Boolean,Number,Array],default:""},width:{type:String,default:"auto"},type:{type:[String,Number],default:2},placeholder:{type:String,default:"\u8BF7\u9009\u62E9"},clearable:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},valueKey:{type:String,default:"id"},valueType:{type:String,default:"string"},multipleLimit:{type:Number,default:0},fields:{type:String,default:"id,wechat_id,wechat_dept_id"},filters:{type:Object,default:()=>({})},leftDefaultShow:{type:Boolean,default:!0},leftConfig:{type:Array,default:()=>[]},rightConfig:{type:Array,default:()=>[]}},emits:["input","change","del","add"],setup(b,{emit:t}){const e=b,l=m(!1),a={1:"dept",2:"member",3:"customer_pools_member_readonly",4:"customerMember",5:"high_seas_member_readonly",6:"member_readonly",7:"process_member_list",8:"receipt_process_member_list",9:"get_oa_process_node"},i={1:"wechat_dept_id",2:"wechat_id",3:"member_name",4:"member_name",5:"member_name",6:"name",7:"name",8:"name",9:"member_name"},o=C(()=>i[e.type]),u=m(0),s=m([]),c=m([]),L=C(()=>{const n={};return c.value.map(r=>n[r.id]=r[o.value]),n});f(),y(()=>e.value,()=>{f()},{deep:!0}),y(()=>s.value,()=>{const n=e.valueType==="array"?s.value:s.value.join(",");new Date().getTime()-u.value<200||(u.value=new Date().getTime(),t("input",n),t("change",n))},{deep:!0}),y(()=>e.visible,n=>{n||w()});function f(){if(!e.value)return;const n=typeof e.value;["string","number"].includes(n)?n==="number"?s.value=[e.value]:s.value=e.value.split(",").map(r=>Number(r)):Array.isArray(e.value)&&(s.value=e.value)}function _(n=!1,r=0){const d={fields:e.fields,company:V.getters.company,limit:50,offset:r,...e.filters};if(!d.company)return D.exports.Message.error("LJWWMSelect not found company");HTTP.get(a[e.type],d).then(p=>{if(p.code!==0)return c.value=[];const h=p.data,g=h.results.map(v=>(v.id=v[e.valueKey],v)),T=h.next;c.value=n?c.value.concat(g):g,T&&_(!0,c.value.length)}).catch(p=>{})}function j(n,r){if(e.multiple&&n.stopPropagation(),e.multiple){const d=s.value.indexOf(r.id);if(d>-1){const p=s.value[d];return setTimeout(()=>t("del",p),0),s.value.splice(d,1)}if(e.multipleLimit&&s.value.length>=e.multipleLimit)return D.exports.Message.info(`\u6700\u591A\u53EA\u80FD\u9009\u62E9${e.multipleLimit}\u6761\u6570\u636E`);s.value.push(r.id),setTimeout(()=>t("add",r.id),0)}else s.value=[r.id]}function M(n){const r=s.value[n];s.value.splice(n,1),setTimeout(()=>t("del",r),0)}function w(){s.value=[]}function S(){l.value=!l.value}function W(){l.value=!1}return k(()=>{_()}),{__sfc:!0,props:e,isDropDown:l,HTTP_PROPS:a,LABEL_KEY_PROPS:i,labelKey:o,emits:t,changeTime:u,modelValue:s,allMembers:c,allKeysOpenIds:L,initialModelValue:f,loadAllMember:_,handleSelect:j,handleRemoveModelValue:M,handleClearModelValue:w,handleClickInput:S,handleHideDropDown:W,LJWWData:P}}};var J=function(){var t=this,e=t._self._c,l=t._self._setupProxy;return e("div",{staticClass:"lj-ww-member-dept-select",class:{"lj-ww-member-dept-select-is-drop-down":l.isDropDown,"lj-ww-member-dept-select-multiple":!1},style:{width:t.width},on:{click:l.handleHideDropDown}},[e("div",{staticClass:"lj-ww-member-dept-select-content",class:{"model-value-has":t.clearable&&l.modelValue.length},on:{click:function(a){return a.stopPropagation(),l.handleClickInput.apply(null,arguments)}}},[e("div",{staticClass:"lj-ww-member-dept-select-input"},[t._l(l.modelValue,function(a,i){return e("div",{key:i,staticClass:"lj-ww-member-dept-select-input-item"},[e(l.LJWWData,{attrs:{type:t.type,openid:l.allKeysOpenIds[a],notLabel:"ID:"+a}}),t.multiple?e("i",{staticClass:"el-icon-error",on:{click:function(o){return o.stopPropagation(),l.handleRemoveModelValue(i)}}}):t._e()],1)}),l.modelValue.length?t._e():e("div",{staticClass:"lj-ww-member-dept-select-input-placeholder"},[t._v(" "+t._s(t.placeholder)+" ")])],2),e("div",{staticClass:"lj-ww-member-dept-select-input-icon"},[e("i",{staticClass:"el-icon-arrow-down"}),e("i",{staticClass:"el-icon-circle-close",on:{click:function(a){return a.stopPropagation(),l.handleClearModelValue.apply(null,arguments)}}})])]),e("div",{staticClass:"lj-ww-member-dept-select-drop-down"},[e("div",{staticClass:"lj-ww-member-dept-select-options"},[l.allMembers.length?t._e():e("div",{staticClass:"none-data"},[t._v("\u6682\u65E0\u6570\u636E")]),t._l(l.allMembers,function(a,i){return e("div",{key:i,staticClass:"lj-ww-member-dept-select-option",class:{active:l.modelValue.includes(a.id)&&!!l.allKeysOpenIds[a.id]},on:{click:function(o){return l.handleSelect(o,a,i)}}},[e("div",{staticClass:"lj-ww-member-dept-select-option-left"},[t.leftDefaultShow&&t.type&&a[l.labelKey]?e(l.LJWWData,{attrs:{type:t.type,openid:a[l.labelKey],notLabel:"ID:"+a.id}}):t._e(),t._l(t.leftConfig,function(o,u){return e(l.LJWWData,{key:u,style:{color:o.color},attrs:{type:o.type,openid:a[o.openidKey],notLabel:"ID:"+a.id}})})],2),e("div",{staticClass:"lj-ww-member-dept-select-option-right"},t._l(t.rightConfig,function(o,u){return e("div",{key:u,style:{color:o.color}},[t._v(" "+t._s(a[o.key])+" ")])}),0)])})],2)])])},O=[],x=K(I,J,O,!1,null,null,null,null);const R=x.exports;export{R as L};