| 1234567891011 |
- import{O as e,af as t,k as a,m as o,g as l,a as i,aX as r,x as n,ae as p,U as s,V as d,p as m,r as c,q as u,P as y}from"./element-plus.DYHj_7Hl.js";import{p as _,S as f,e as h,B as b,F as v,E as k,a as g,_ as w}from"./index.KDUAIHt0.js";import{P as j,_ as C,a as x}from"./PageContent.DzqpeyM-.js";import{P as z}from"./tree.BFnI0hOR.js";import{E as R}from"./wechat.DyF79Qxe.js";import{_ as S}from"./project.BVpot7IW.js";import P from"./EmployeeForm.B7yI1uwE.js";import q from"./DepartmentDetail.BcImO-yg.js";import F from"./DepartmentForm.DUzPCbfL.js";import{u as E}from"./vue-router.yxIMtaxH.js";import{Q as D}from"./qrcode.DQOEPHIv.js";import{M as I,bE as L,a_ as Q,bL as T,bk as V,aL as A,u as N,I as U,bJ as B,v as H,s as J,t as K,H as M,bb as O,F as W,aU as $,aS as G,q as X}from"./@vue.DbmRtknU.js";import"./lodash-es.DaM9m3L-.js";import"./async-validator.j0i5Y79Y.js";import"./@popperjs.DxtSUbXb.js";import"./@ctrl.BEgk5vdO.js";import"./dayjs.DCWbrgJ0.js";import"./memoize-one.BAtLgO95.js";import"./normalize-wheel-es.TzhA1irr.js";import"./@floating-ui.8vigAAFV.js";import"./pinia.BlfmsheH.js";import"./@vueuse.0G3dmZIi.js";import"./vue-i18n.DXLOBfKS.js";import"./@intlify.DPMNdUn_.js";import"./nprogress.BTjJXJ-u.js";import"./codemirror.CYSLATvI.js";import"./diff-match-patch.DkK4wJpa.js";import"./vue-web-terminal.D-rog7dz.js";import"./vue.MGxsMDTR.js";/* empty css */import"./axios.Da-QW0H8.js";import"./qs.BQjOrGHM.js";import"./side-channel.4q28KFJj.js";import"./es-errors.DTEWvbA_.js";import"./object-inspect.DvQZIv3_.js";import"./side-channel-list.Do0-XmF5.js";import"./side-channel-map.DNHQ53lO.js";import"./get-intrinsic.Bbe5x-9b.js";import"./es-object-atoms.CyiuHMUS.js";import"./math-intrinsics.pM-JTNwN.js";import"./gopd.BudZp56J.js";import"./es-define-property.F0aoeP8o.js";import"./has-symbols.BcO-SUVM.js";import"./get-proto.Cb_fpw-j.js";import"./dunder-proto.WEH3rgQR.js";import"./call-bind-apply-helpers.DJjIjCF_.js";import"./function-bind.DrnB-baK.js";import"./hasown.BXcyoiLU.js";import"./call-bound.22gFUC2Q.js";import"./side-channel-weakmap.DpSeWE6i.js";import"./pinia-plugin-persistedstate.COWkwNh5.js";import"./exceljs.DLSZe_6I.js";import"./dijkstrajs.DvCo_kE3.js";const Y=["element-loading-text"],Z={class:"data-table__toolbar--right"},ee={class:"data-table__content"},te={class:"data-table__toolbar--right"},ae={class:"data-table__content"},oe={class:"dialog-footer"},le={key:0,class:"invite-link-container"},ie={class:"link-item"},re={class:"qrcode-wrapper"},ne=["src"],pe={key:1,class:"qrcode-loading"},se={class:"link-item"},de=w(I({name:"Employee",inheritAttrs:!1,__name:"index",setup(w){E();const{searchRef:I,contentRef:de,handleQueryClick:me,handleResetClick:ce,refreshList:ue}=b(),{searchRef:ye,contentRef:_e,handleQueryClick:fe,handleResetClick:he,refreshList:be}=b(),ve=$(),ke=$(),{pageLoading:ge,loadingText:we}=v(),je=G({permPrefix:"module_payment:employee",colon:!0,isExpandable:!0,showNumber:3,form:{labelWidth:"auto"},formItems:[{prop:"employee_name",label:"员工姓名",type:"input",attrs:{placeholder:"请输入员工姓名",clearable:!0}},{prop:"employee_mobile",label:"手机号",type:"input",attrs:{placeholder:"请输入手机号",clearable:!0}},{prop:"employee_no",label:"员工工号",type:"input",attrs:{placeholder:"请输入员工工号",clearable:!0}}]}),Ce=G({title:"",visible:!1,type:"create",entity:"employee"}),xe=G({visible:!1,title:"员工签约激活链接",data:null}),ze=$(""),Re=_(),Se=$(""),Pe=$(""),qe=$(""),Fe=X(()=>{var e;return(null==(e=Re.getCurrentEnterprise)?void 0:e.enterprise_id)||""}),Ee=G({permPrefix:"module_payment:department",colon:!0,isExpandable:!0,showNumber:3,form:{labelWidth:"auto"},formItems:[{prop:"name",label:"部门名称",type:"input",attrs:{placeholder:"请输入部门名称",clearable:!0}}]}),De=G([{prop:"selection",label:"选择框",show:!1},
- // { prop: "index", label: "序号", show: true },
- {prop:"name",label:"部门名称",show:!0},
- // { prop: "code", label: "部门编码", show: true },
- // { prop: "parent_name", label: "上级部门", show: true },
- // { prop: "leader_employee_name", label: "部门负责人", show: true },
- // { prop: "sort_order", label: "排序值", show: true },
- // { prop: "status", label: "状态", show: true },
- {prop:"created_time",label:"创建时间",show:!0},{prop:"operation",label:"操作",show:!0}]),Ie=G([{prop:"selection",label:"选择框",show:!1},{prop:"index",label:"序号",show:!0},{prop:"employee_name",label:"员工姓名",show:!0},{prop:"employee_no",label:"员工工号",show:!0},{prop:"employee_id",label:"员工ID",show:!0},{prop:"employee_mobile",label:"手机号",show:!0},{prop:"employee_email",label:"邮箱",show:!0},{prop:"status",label:"激活状态",show:!0},{prop:"created_time",label:"创建时间",show:!0},{prop:"operation",label:"操作",show:!0}]),Le=G({permPrefix:"module_payment:employee",pk:"employee_id",cols:Ie,hideColumnFilter:!1,toolbar:[],defaultToolbar:["refresh","filter","import","export"],pagination:{pageSize:10,pageSizes:[10,20,30,50]},request:{page_no:"page_no",page_size:"page_size"},indexAction:async e=>{var t,a;const o={page_no:e.page_no,page_size:e.page_size},l=Fe.value;l&&(o.enterprise_id=l),e.employee_name&&(o.employee_name=e.employee_name),e.employee_mobile&&(o.employee_mobile=e.employee_mobile),e.employee_no&&(o.employee_no=e.employee_no);const i=await k.listEmployee(o);return{list:(null==(t=i.data.data)?void 0:t.items)||[],total:Number(null==(a=i.data.data)?void 0:a.total)||0}}}),Qe=G({permPrefix:"module_payment:department",pk:"department_id",cols:De,hideColumnFilter:!1,toolbar:[],defaultToolbar:["refresh","filter","import","export"],pagination:{pageSize:10,pageSizes:[10,20,30,50]},request:{page_no:"page_no",page_size:"page_size"},initialParams:X(()=>({enterprise_id:Fe.value})),indexAction:async e=>{var t,a;const o={page_no:e.page_no,page_size:e.page_size};e.enterprise_id&&(o.enterprise_id=e.enterprise_id),e.name&&(o.department_name=e.name),e.code&&(o.department_code=e.code),e.status&&(o.status=e.status);const l=await g.listDepartment(o);return{list:(null==(t=l.data.data)?void 0:t.items.map(e=>({department_id:e.department_id,name:e.department_name,code:e.department_code,parent_id:e.parent_department_id,parent_name:"",
- // 可以根据parent_id查询上级部门名称
- leader_employee_name:e.leader_employee_name,sort_order:e.sort_order,status:e.status,created_time:e.created_time,updated_time:e.updated_time})))||[],total:Number(null==(a=l.data.data)?void 0:a.total)||0}}});function Te(e,t,a){Ce.type=e,Ce.entity="employee",Se.value=t,qe.value=a||"",Ce.title="create"===e?"添加员工":"update"===e?"编辑员工":"员工详情",Ce.visible=!0}function Ve(e,t){Ce.type=e,Ce.entity="department",Pe.value=t,Ce.title="create"===e?"添加部门":"update"===e?"编辑部门":"部门详情",Ce.visible=!0}async function Ae(){Ce.visible=!1}function Ne(){var e;null==(e=ve.value)||e.submitForm()}function Ue(){var e;null==(e=ve.value)||e.resetForm()}function Be(){var e;null==(e=ve.value)||e.handleSaveAndAddNext()}function He(e=!1){var t;null==(t=ke.value)||t.submitForm(e)}function Je(){Ce.visible=!1,ue()}function Ke(){Ce.visible=!1,be()}async function Me(e){try{await navigator.clipboard.writeText(e),u.success("链接已复制到剪贴板")}catch(t){u.error("复制失败,请手动复制")}}return L(()=>{var e;return null==(e=xe.data)?void 0:e.sign_url},async e=>{if(e)try{ze.value=await D.toDataURL(e,{width:200,margin:1})}catch{ze.value=""}else ze.value=""}),(_,b)=>{const v=i,w=n,E=o,D=l,L=a,$=t,G=p,X=m,ue=d,Re=s,Oe=c,We=Q("hasPerm"),$e=e;return T((A(),N("div",{class:"app-container","element-loading-text":V(we)},[U(G,{type:"card",style:{"min-height":"400px",height:"auto"},class:"employee-tabs"},{default:B(()=>[U($,{label:"员工信息"},{default:B(()=>[U(z,{ref_key:"searchRef",ref:I,"search-config":je,onQueryClick:V(me),onResetClick:V(ce)},null,8,["search-config","onQueryClick","onResetClick"]),U(j,{ref_key:"contentRef",ref:de,"content-config":Le},{toolbar:B(({toolbarRight:e,onToolbar:t,removeIds:a,cols:o})=>[U(C,{"remove-ids":a,"perm-create":["module_payment:employee:create"]},{default:B(()=>[T((A(),J(v,{type:"primary",icon:"Plus",onClick:b[0]||(b[0]=e=>Te("create"))},{default:B(()=>[...b[8]||(b[8]=[M(" 添加员工 ",-1)])]),_:1})),[[We,["module_payment:employee:create"]]])]),_:1},8,["remove-ids"]),H("div",Z,[U(x,{buttons:e,cols:o,"on-toolbar":t},null,8,["buttons","cols","on-toolbar"])])]),table:B(({data:e,loading:t,tableRef:a,onSelectionChange:o})=>[H("div",ee,[T((A(),J(L,{ref:a,data:e,height:"100%",border:"",onSelectionChange:o},{empty:B(()=>[U(w,{"image-size":80,description:"暂无数据"})]),default:B(()=>{var e,t,a,o,l,i,n,p;return[(null==(e=Ie.find(e=>"selection"===e.prop))?void 0:e.show)?(A(),J(E,{key:0,type:"selection","min-width":"55",align:"center"})):K("",!0),(null==(t=Ie.find(e=>"employee_name"===e.prop))?void 0:t.show)?(A(),J(E,{key:"employee_name",label:"员工姓名",prop:"employee_name","min-width":"120","show-overflow-tooltip":""})):K("",!0),(null==(a=Ie.find(e=>"employee_no"===e.prop))?void 0:a.show)?(A(),J(E,{key:"employee_no",label:"员工工号",prop:"employee_no","min-width":"120","show-overflow-tooltip":""})):K("",!0),(null==(o=Ie.find(e=>"employee_mobile"===e.prop))?void 0:o.show)?(A(),J(E,{key:"employee_mobile",label:"手机号",prop:"employee_mobile","min-width":"120"})):K("",!0),(null==(l=Ie.find(e=>"employee_email"===e.prop))?void 0:l.show)?(A(),J(E,{key:"employee_email",label:"邮箱",prop:"employee_email","min-width":"150","show-overflow-tooltip":""})):K("",!0),(null==(i=Ie.find(e=>"status"===e.prop))?void 0:i.show)?(A(),J(E,{key:"status",label:"激活状态",prop:"status","min-width":"100"},{default:B(e=>[U(D,{type:V(f)[e.row.status]},{default:B(()=>[M(O(V(h)[e.row.status]||e.row.status),1)]),_:2},1032,["type"])]),_:1})):K("",!0),(null==(n=Ie.find(e=>"created_time"===e.prop))?void 0:n.show)?(A(),J(E,{key:"created_time",label:"创建时间",prop:"created_time","min-width":"160",sortable:""})):K("",!0),(null==(p=Ie.find(e=>"operation"===e.prop))?void 0:p.show)?(A(),J(E,{key:7,fixed:"right",label:"操作",align:"center","min-width":"160"},{default:B(e=>[T((A(),J(v,{type:"info",size:"small",link:"",icon:V(r),onClick:t=>Te("detail",e.row.employee_id,e.row.enterprise_id)},{default:B(()=>[...b[9]||(b[9]=[M(" 详情 ",-1)])]),_:1},8,["icon","onClick"])),[[We,["module_payment:employee:detail"]]]),T((A(),J(v,{type:"primary",size:"small",link:"",onClick:t=>Te("update",e.row.employee_id,e.row.enterprise_id)},{default:B(()=>[...b[10]||(b[10]=[M(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[We,["module_payment:employee:update"]]]),T((A(),J(v,{type:"success",size:"small",link:"",onClick:t=>async function(e){try{const t=e.enterprise_id||Fe.value;if(!t)return void u.warning("请先选择企业");const a=await k.inviteQuery({enterprise_id:t,employee_id:e.employee_id,create_share_code:"Y"});a.data.data&&(xe.data=a.data.data,xe.visible=!0)}catch(t){u.error("获取签约链接失败")}}(e.row)},{default:B(()=>[...b[11]||(b[11]=[M(" 签约链接 ",-1)])]),_:1},8,["onClick"])),[[We,["module_payment:employee:invite"]]])]),_:1})):K("",!0)]}),_:1},8,["data","onSelectionChange"])),[[$e,t]])])]),_:1},8,["content-config"])]),_:1}),U($,{label:"部门信息"},{default:B(()=>[U(z,{ref_key:"deptSearchRef",ref:ye,"search-config":Ee,onQueryClick:V(fe),onResetClick:V(he)},null,8,["search-config","onQueryClick","onResetClick"]),U(j,{ref_key:"deptContentRef",ref:_e,"content-config":Qe},{toolbar:B(({toolbarRight:e,onToolbar:t,removeIds:a,cols:o})=>[U(C,{"remove-ids":a,"perm-create":["module_payment:department:create"]},{default:B(()=>[T((A(),J(v,{type:"primary",icon:"Plus",onClick:b[1]||(b[1]=e=>Ve("create"))},{default:B(()=>[...b[12]||(b[12]=[M(" 添加部门 ",-1)])]),_:1})),[[We,["module_payment:department:create"]]])]),_:1},8,["remove-ids"]),H("div",te,[U(x,{buttons:e,cols:o,"on-toolbar":t},null,8,["buttons","cols","on-toolbar"])])]),table:B(({data:e,loading:t,tableRef:a,onSelectionChange:o})=>[H("div",ae,[T((A(),J(L,{ref:a,data:e,height:"100%",border:"",onSelectionChange:o},{empty:B(()=>[U(w,{"image-size":80,description:"暂无数据"})]),default:B(()=>{var e,t,a,o,l;return[(null==(e=De.find(e=>"selection"===e.prop))?void 0:e.show)?(A(),J(E,{key:0,type:"selection","min-width":"55",align:"center"})):K("",!0),(null==(t=De.find(e=>"name"===e.prop))?void 0:t.show)?(A(),J(E,{key:"name",label:"部门名称",prop:"name","min-width":"150","show-overflow-tooltip":""})):K("",!0),(null==(a=De.find(e=>"code"===e.prop))?void 0:a.show)?(A(),J(E,{key:"code",label:"部门编码",prop:"code","min-width":"120","show-overflow-tooltip":""})):K("",!0),(null==(o=De.find(e=>"created_time"===e.prop))?void 0:o.show)?(A(),J(E,{key:"created_time",label:"创建时间",prop:"created_time","min-width":"160",sortable:""})):K("",!0),(null==(l=De.find(e=>"operation"===e.prop))?void 0:l.show)?(A(),J(E,{key:4,fixed:"right",label:"操作",align:"center","min-width":"160"},{default:B(e=>[T((A(),J(v,{type:"info",size:"small",link:"",icon:V(r),onClick:t=>Ve("detail",e.row.department_id)},{default:B(()=>[...b[13]||(b[13]=[M(" 详情 ",-1)])]),_:1},8,["icon","onClick"])),[[We,["module_payment:department:detail"]]]),T((A(),J(v,{type:"primary",size:"small",link:"",onClick:t=>Ve("update",e.row.department_id)},{default:B(()=>[...b[14]||(b[14]=[M(" 编辑 ",-1)])]),_:1},8,["onClick"])),[[We,["module_payment:department:update"]]]),T((A(),J(v,{type:"danger",size:"small",link:"",onClick:t=>async function(e,t){try{const a=Fe.value;if(!a)return void u.warning("请先选择企业");await y.confirm(`确定要删除部门「${t}」吗?`,"删除部门",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"});const o=await g.deleteDepartment(e,a);200===o.data.code?(u.success("删除部门成功"),be()):u.error(o.data.message||"删除部门失败")}catch(a){"cancel"!==a.message&&u.error("删除部门失败")}}(e.row.department_id,e.row.name)},{default:B(()=>[...b[15]||(b[15]=[M(" 删除 ",-1)])]),_:1},8,["onClick"])),[[We,["module_payment:department:delete"]]])]),_:1})):K("",!0)]}),_:1},8,["data","onSelectionChange"])),[[$e,t]])])]),_:1},8,["content-config"])]),_:1})]),_:1}),U(R,{modelValue:Ce.visible,"onUpdate:modelValue":b[3]||(b[3]=e=>Ce.visible=e),title:Ce.title,onClose:Ae},{footer:B(()=>[H("div",oe,["employee"===Ce.entity?(A(),N(W,{key:0},["detail"!==Ce.type?(A(),J(v,{key:0,onClick:Ue},{default:B(()=>[...b[16]||(b[16]=[M(" 重置 ",-1)])]),_:1})):K("",!0),"detail"!==Ce.type&&"create"===Ce.type?(A(),J(v,{key:1,type:"primary",onClick:Be},{default:B(()=>[...b[17]||(b[17]=[M(" 保存并添加下一个 ",-1)])]),_:1})):K("",!0),"detail"!==Ce.type?(A(),J(v,{key:2,type:"primary",onClick:Ne},{default:B(()=>[...b[18]||(b[18]=[M(" 保存 ",-1)])]),_:1})):(A(),J(v,{key:3,type:"primary",onClick:Ae},{default:B(()=>[...b[19]||(b[19]=[M("确定",-1)])]),_:1}))],64)):"department"===Ce.entity?(A(),N(W,{key:1},["detail"!==Ce.type?(A(),J(v,{key:0,type:"primary",onClick:He},{default:B(()=>[...b[20]||(b[20]=[M(" 保存 ",-1)])]),_:1})):K("",!0),"create"===Ce.type?(A(),J(v,{key:1,type:"primary",onClick:b[2]||(b[2]=e=>He(!0))},{default:B(()=>[...b[21]||(b[21]=[M(" 保存并添加下一个 ",-1)])]),_:1})):(A(),J(v,{key:2,type:"primary",onClick:Ae},{default:B(()=>[...b[22]||(b[22]=[M("确定",-1)])]),_:1}))],64)):K("",!0)])]),default:B(()=>["detail"===Ce.type?(A(),N(W,{key:0},["employee"===Ce.entity?(A(),J(S,{key:0,"employee-id":Se.value,"enterprise-id":qe.value||Fe.value},null,8,["employee-id","enterprise-id"])):"department"===Ce.entity?(A(),J(q,{key:1,"department-id":Pe.value,"enterprise-id":qe.value||Fe.value},null,8,["department-id","enterprise-id"])):K("",!0)],64)):(A(),N(W,{key:1},["employee"===Ce.entity?(A(),J(P,{key:0,ref_key:"formRef",ref:ve,type:Ce.type,"employee-id":Se.value,"enterprise-id":qe.value||Fe.value,onSuccess:Je},null,8,["type","employee-id","enterprise-id"])):"department"===Ce.entity?(A(),J(F,{key:1,ref_key:"deptFormRef",ref:ke,type:Ce.type,"department-id":Pe.value,"enterprise-id":qe.value||Fe.value,onSuccess:Ke},null,8,["type","department-id","enterprise-id"])):K("",!0)],64))]),_:1},8,["modelValue","title"]),U(Oe,{modelValue:xe.visible,"onUpdate:modelValue":b[6]||(b[6]=e=>xe.visible=e),title:xe.title,width:"700px",onClose:b[7]||(b[7]=e=>xe.data=null)},{default:B(()=>[xe.data?(A(),N("div",le,[U(Re,{column:1,border:""},{default:B(()=>[U(ue,{label:"邀请链接"},{default:B(()=>[H("div",ie,[U(X,{type:"primary",href:xe.data.sign_url,target:"_blank"},{default:B(()=>[M(O(xe.data.sign_url),1)]),_:1},8,["href"]),U(v,{type:"text",size:"small",onClick:b[4]||(b[4]=e=>Me(xe.data.sign_url))},{default:B(()=>[...b[23]||(b[23]=[M(" 复制 ",-1)])]),_:1})])]),_:1}),U(ue,{label:"签约二维码"},{default:B(()=>[H("div",re,[ze.value?(A(),N("img",{key:0,src:ze.value,alt:"签约二维码",class:"qrcode-img"},null,8,ne)):(A(),N("span",pe,"生成中...")),b[24]||(b[24]=H("p",{class:"qrcode-tip"},"请使用支付宝扫码签约",-1))])]),_:1}),xe.data.share_code?(A(),J(ue,{key:0,label:"签约吱口令"},{default:B(()=>[H("div",se,[H("span",null,O(xe.data.share_code),1),U(v,{type:"text",size:"small",onClick:b[5]||(b[5]=e=>Me(xe.data.share_code))},{default:B(()=>[...b[25]||(b[25]=[M(" 复制 ",-1)])]),_:1})])]),_:1})):K("",!0)]),_:1})])):K("",!0)]),_:1},8,["modelValue","title"])],8,Y)),[[$e,V(ge)]])}}}),[["__scopeId","data-v-45e073fd"]]);export{de as default};
|