| 1 |
- import{z as e,A as a,t as l,a as t,ae as o,af as i,k as n,m as u,aA as d,f as s,ag as p,F as r,G as v,g as _,q as m,r as c}from"./element-plus.B27SxRGv.js";import{E as y,_ as f,as as g,p as E,I as b,a as h}from"./index.DYWCVKSk.js";import{M as V,bE as w,aL as C,s as k,bJ as L,v as z,I as P,H as I,bb as M,bO as O,q as x,aU as S,u as T,F as U,aX as A,bk as Y,t as j}from"./@vue.DbmRtknU.js";const D={class:"employee-selector"},R={class:"employee-selector__search"},N={class:"employee-selector__actions"},q={class:"employee-selector__tabs"},B={class:"employee-selector__pagination"},F={class:"employee-selector__footer"},G=f(V({__name:"EmployeeSelector",props:{visible:{type:Boolean},selectedIds:{},enterpriseId:{}},emits:["update:visible","confirm"],setup(r,{emit:v}){const _=r,m=v,c=x({get:()=>_.visible,set:e=>m("update:visible",e)}),f=S({name:"",phone:""}),g=S("all"),E=S({page_no:1,page_size:10,total:0}),b=S([]),h=S(),V=S([]);async function T(){var e;const a={page_no:E.value.page_no,page_size:E.value.page_size,enterprise_id:_.enterpriseId,status:"ACTIVATED"};f.value.name&&(a.employee_name=f.value.name),f.value.phone&&(a.employee_mobile=f.value.phone);try{const l=await y.listEmployee(a),t=(null==(e=null==l?void 0:l.data)?void 0:e.data)||(null==l?void 0:l.data),o=(null==t?void 0:t.items)||(null==t?void 0:t.list)||[];b.value=o.map(e=>({id:e.employee_id||e.id,name:e.employee_name||"-",phone:e.employee_mobile||"-"})),E.value.total=(null==t?void 0:t.total)||b.value.length}catch(l){}}function U(e){const a=V.value.indexOf(e);a>=0?V.value.splice(a,1):V.value.push(e)}function A(e){U(e.id)}w(()=>_.visible,e=>{e&&(g.value="all",V.value=[..._.selectedIds],T())});const Y=x(()=>"selected"===g.value?b.value.filter(e=>V.value.includes(e.id)):b.value);function j(){m("update:visible",!1)}function G(){f.value={name:"",phone:""},E.value.page_no=1,T()}function H(){E.value.page_no=1,T()}function J(){m("confirm",[...V.value]),m("update:visible",!1)}return(r,v)=>{const _=l,m=a,y=e,b=t,w=i,x=o,S=d,X=u,K=n,Q=s,W=p;return C(),k(W,{title:"按员工选择",modelValue:c.value,"onUpdate:modelValue":v[5]||(v[5]=e=>c.value=e),direction:"rtl",size:"500px",onClose:j},{default:L(()=>[z("div",D,[z("div",R,[P(y,{model:f.value,inline:""},{default:L(()=>[P(m,{label:"姓名"},{default:L(()=>[P(_,{modelValue:f.value.name,"onUpdate:modelValue":v[0]||(v[0]=e=>f.value.name=e),placeholder:"输入员工姓名",style:{width:"120px"}},null,8,["modelValue"])]),_:1}),P(m,{label:"手机号"},{default:L(()=>[P(_,{modelValue:f.value.phone,"onUpdate:modelValue":v[1]||(v[1]=e=>f.value.phone=e),placeholder:"输入手机号",style:{width:"120px"}},null,8,["modelValue"])]),_:1})]),_:1},8,["model"]),z("div",N,[P(b,{onClick:G},{default:L(()=>[...v[6]||(v[6]=[I("重置",-1)])]),_:1}),P(b,{type:"primary",onClick:H},{default:L(()=>[...v[7]||(v[7]=[I("查询",-1)])]),_:1})])]),z("div",q,[P(x,{modelValue:g.value,"onUpdate:modelValue":v[2]||(v[2]=e=>g.value=e)},{default:L(()=>[P(w,{name:"all"},{label:L(()=>[...v[8]||(v[8]=[I("全部",-1)])]),_:1}),P(w,{name:"selected"},{label:L(()=>[I("已选 ("+M(V.value.length)+"人)",1)]),_:1})]),_:1},8,["modelValue"])]),P(K,{ref_key:"tableRef",ref:h,data:Y.value,"row-key":"id",border:"","max-height":300,onRowClick:A},{default:L(()=>[P(X,{width:"50"},{default:L(e=>[P(S,{"model-value":V.value.includes(e.row.id),onClick:O(a=>U(e.row.id),["stop"])},null,8,["model-value","onClick"])]),_:1}),P(X,{label:"员工姓名",prop:"name"}),P(X,{label:"手机号",prop:"phone",width:"140"})]),_:1},8,["data"]),z("div",B,[P(Q,{"current-page":E.value.page_no,"onUpdate:currentPage":v[3]||(v[3]=e=>E.value.page_no=e),"page-size":E.value.page_size,"onUpdate:pageSize":v[4]||(v[4]=e=>E.value.page_size=e),total:E.value.total,"page-sizes":[10,20,50],layout:"prev,pager,next,jumper,->,total,sizes",onCurrentChange:T},null,8,["current-page","page-size","total"])]),z("div",F,[P(b,{onClick:j},{default:L(()=>[...v[9]||(v[9]=[I("取消",-1)])]),_:1}),P(b,{type:"primary",onClick:J},{default:L(()=>[I("保存 ("+M(V.value.length)+")",1)]),_:1})])])]),_:1},8,["modelValue"])}}}),[["__scopeId","data-v-0dabd25b"]]),H=Object.freeze(Object.defineProperty({__proto__:null,default:G},Symbol.toStringTag,{value:"Module"})),J={key:0,class:"selected-tags",style:{"margin-top":"8px"}},X={key:1,class:"tip-text",style:{color:"#999","margin-top":"4px","font-size":"12px"}},K=V({__name:"ScopeDialog",props:{modelValue:{type:Boolean},institutionId:{},enterpriseId:{}},emits:["update:modelValue","success"],setup(l,{emit:o}){const i=l,n=o,u=x({get:()=>i.modelValue,set:e=>n("update:modelValue",e)}),d=S(!1),s=S(!1),p=S([]),f=S({}),V=S({adapter_type:"EMPLOYEE_ALL",department_id:void 0}),O=S([]);function D(){var e;return i.enterpriseId||(null==(e=E().getCurrentEnterprise)?void 0:e.enterprise_id)}async function R(){var e,a;const l=D();if(l)try{const t=await h.listDepartment({enterprise_id:l,page_no:1,page_size:200}),o=(null==(a=null==(e=null==t?void 0:t.data)?void 0:e.data)?void 0:a.items)||[];p.value=o.map(e=>({value:e.department_id,label:e.department_name}))}catch(t){}}async function N(){var e,a;const l=D();if(l)try{const t=await y.listEmployee({enterprise_id:l,page_no:1,page_size:500}),o=(null==(a=null==(e=null==t?void 0:t.data)?void 0:e.data)?void 0:a.items)||[],i={};for(const e of o)e.employee_id&&(i[e.employee_id]=e.employee_name||e.employee_id);f.value=i}catch(t){}}async function q(){var e,a;if(i.institutionId)try{const l=D(),t=(await b.listScope(i.institutionId,{enterprise_id:l})).data.data;if(t){const l=t.adapter_type||"EMPLOYEE_ALL";V.value.adapter_type=l,"EMPLOYEE_DEPARTMENT"===l&&(null==(e=t.owner_id_list)?void 0:e.length)>0?V.value.department_id=String(t.owner_id_list[0]):"EMPLOYEE_SELECT"===l&&(null==(a=t.owner_id_list)?void 0:a.length)>0&&(O.value=t.owner_id_list.map(String))}}catch(l){}}function B(e){return f.value[e]||""}function F(e){O.value=e}function H(){u.value=!1,V.value={adapter_type:"EMPLOYEE_ALL",department_id:void 0},O.value=[]}async function K(){if(i.institutionId){d.value=!0;try{const e={adapter_type:V.value.adapter_type,owner_type:"EMPLOYEE",enterprise_id:D()||""};"EMPLOYEE_SELECT"===V.value.adapter_type&&O.value.length>0?e.add_owner_id_list=O.value:"EMPLOYEE_DEPARTMENT"===V.value.adapter_type&&V.value.department_id&&(e.add_owner_id_list=[V.value.department_id]),await b.modifyScope(i.institutionId,e),m.success("修改成功"),n("success"),H()}catch(e){}finally{d.value=!1}}}return w(()=>i.modelValue,async e=>{e&&i.institutionId&&await Promise.all([q(),R(),N()])}),(l,o)=>{const i=v,n=r,m=a,y=t,f=_,E=e,b=c;return C(),k(b,{modelValue:u.value,"onUpdate:modelValue":o[4]||(o[4]=e=>u.value=e),title:"管理适用范围",width:"600px",onClose:H},{footer:L(()=>[P(y,{onClick:H},{default:L(()=>[...o[6]||(o[6]=[I("取消",-1)])]),_:1}),P(y,{type:"primary",loading:d.value,onClick:K},{default:L(()=>[...o[7]||(o[7]=[I("确定",-1)])]),_:1},8,["loading"])]),default:L(()=>[P(E,{model:V.value,"label-width":"120px"},{default:L(()=>[P(m,{label:"适用范围类型"},{default:L(()=>[P(n,{modelValue:V.value.adapter_type,"onUpdate:modelValue":o[0]||(o[0]=e=>V.value.adapter_type=e),style:{width:"100%"}},{default:L(()=>[(C(!0),T(U,null,A(Y(g),e=>(C(),k(i,{key:e.value,label:e.label,value:e.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),"EMPLOYEE_DEPARTMENT"===V.value.adapter_type?(C(),k(m,{key:0,label:"选择部门"},{default:L(()=>[P(n,{modelValue:V.value.department_id,"onUpdate:modelValue":o[1]||(o[1]=e=>V.value.department_id=e),placeholder:"请选择部门",style:{width:"100%"}},{default:L(()=>[(C(!0),T(U,null,A(p.value,e=>(C(),k(i,{key:e.value,label:e.label,value:e.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1})):j("",!0),"EMPLOYEE_SELECT"===V.value.adapter_type?(C(),k(m,{key:1,label:"选择员工"},{default:L(()=>[z("div",null,[P(y,{type:"primary",plain:"",onClick:o[2]||(o[2]=e=>s.value=!0)},{default:L(()=>[...o[5]||(o[5]=[I(" 选择员工 ",-1)])]),_:1}),O.value.length>0?(C(),T("div",J,[(C(!0),T(U,null,A(O.value,e=>(C(),k(f,{key:e,closable:"",onClose:a=>function(e){O.value=O.value.filter(a=>a!==e)}(e),style:{margin:"2px"}},{default:L(()=>[I(M(B(e)||e),1)]),_:2},1032,["onClose"]))),128))])):(C(),T("div",X," 请点击按钮选择员工 "))])]),_:1})):j("",!0)]),_:1},8,["model"]),P(G,{visible:s.value,"onUpdate:visible":o[3]||(o[3]=e=>s.value=e),"selected-ids":O.value,"enterprise-id":D()||"",onConfirm:F},null,8,["visible","selected-ids","enterprise-id"])]),_:1},8,["modelValue"])}}}),Q=Object.freeze(Object.defineProperty({__proto__:null,default:K},Symbol.toStringTag,{value:"Module"}));export{G as E,Q as S,K as _,H as a};
|