import{t as e}from"./useQuery-Hj7E43Q9.js";import{t}from"./date-range-picker-CAMQRUB2.js";import{a as n,i as r,n as i,o as a,t as o}from"./select-C0ycPDDY.js";import{n as s,t as c}from"./search-C8UYEB7H.js";import{Ht as l,N as u,Qt as d,V as f,Vn as p,Zt as m,ot as h,qn as g,zn as _}from"./index-CjPx3lfT.js";import{n as v,r as y,t as b}from"./data-table-B1a8BMaf.js";import{t as x}from"./pagination-DP8LewWY.js";import{a as S,i as C,n as w,o as T,r as E,s as D,t as O}from"./dialog-ITi__DUr.js";import{n as k,r as A,t as j}from"./edit-user-dialog-CGOttUMI.js";var M=g(p(),1);const N=t=>{var n,r,i;let[a,o]=(0,M.useState)({pageIndex:0,pageSize:10}),[s,c]=(0,M.useState)({}),u=e({queryKey:[`orgAccountList`,a,s],queryFn:()=>l({...s,pageSize:a.pageSize,pageNo:a.pageIndex+1}).then(e=>e.data)}),d=(e={})=>{let t={};Object.entries(e||{}).forEach(([e,n])=>{n!==``&&n!=null&&(t[e]=n)}),c(t),o(e=>({...e,pageIndex:0}))},f=t();return{pagination:a,table:v({data:(u==null||(n=u.data)==null?void 0:n.entityList)||[],columns:f,getCoreRowModel:y(),manualPagination:!1,rowCount:(u==null||(r=u.data)==null?void 0:r.totalCount)||0,pageCount:(u==null||(i=u.data)==null?void 0:i.pageCount)||0,onPaginationChange:o,autoResetPageIndex:!1,state:{pagination:a}}),query:u,search:d}};var P=g(_(),1),F={disable:{title:`您确定要禁用该账号吗?`,description:`禁用后,该账号将无法登录/使用系统`},adminCancel:{title:`您确定要注销该账号吗?`,description:`注销后,该账号将不可恢复、不可登录`}};function I({open:e,setOpen:t,action:n,data:r,refetch:i}){let{disable:a,adminCancel:o,disableIsPending:s,cancelIsPending:c}=A({onSuccess(){i==null||i(),t(!1)}}),l=n===`disable`?s:c,u=()=>{r!=null&&r.userId&&(n===`disable`?a(r.userId):o(r.userId))},f=F[n];return(0,P.jsx)(O,{open:e,onOpenChange:t,children:(0,P.jsxs)(E,{className:`w-[400px]`,children:[(0,P.jsxs)(T,{children:[(0,P.jsx)(D,{children:f.title}),(0,P.jsx)(C,{children:f.description}),(0,P.jsxs)(`div`,{className:`mt-1 flex items-center gap-1 text-sm p-2 rounded-md bg-gray-50`,children:[r==null?void 0:r.orgName,` · `,(r==null?void 0:r.realName)||(r==null?void 0:r.nickname),`(`,r==null?void 0:r.username,`)`]})]}),(0,P.jsxs)(S,{children:[(0,P.jsx)(w,{asChild:!0,children:(0,P.jsx)(d,{variant:`outline`,children:`取消`})}),(0,P.jsxs)(d,{type:`submit`,variant:n===`adminCancel`?`destructive`:`default`,disabled:l,onClick:u,children:[l&&(0,P.jsx)(m,{}),`确定`]})]})]})})}var L={orgNameLike:``,usernameLike:``,realNameLike:``,phoneLike:``,enabled:``,status:``,createTimeStart:``,createTimeEnd:``};function R({handleEnable:e,handleDisable:t,handleCancelUser:n,handleResetPassword:r,handleEditUser:i}){let a=h(e=>{var t;return(t=e.user)==null?void 0:t.id});return[{accessorKey:`orgName`,header:`机构名称`,cell:({row:e})=>(0,P.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,P.jsx)(`div`,{children:e.getValue(`orgName`)}),e.original.administrator&&(0,P.jsx)(u,{variant:`outline`,className:`text-primary border-primary shrink-0`,children:`管理员`})]})},{accessorKey:`username`,header:`账号`,cell:({row:e})=>(0,P.jsx)(`div`,{children:e.getValue(`username`)})},{accessorKey:`realName`,header:`姓名`,cell:({row:e})=>(0,P.jsx)(`div`,{children:e.getValue(`realName`)||e.original.nickname||`-`})},{accessorKey:`phone`,header:`手机号`,cell:({row:e})=>(0,P.jsx)(`div`,{children:e.getValue(`phone`)||`-`})},{accessorKey:`userType`,header:`用户类型`,cell:({row:e})=>(0,P.jsx)(`div`,{children:e.getValue(`userType`)===2?`个人用户`:`企业用户`})},{accessorKey:`enabled`,header:`启用状态`,cell:({row:e})=>e.getValue(`enabled`)?(0,P.jsx)(u,{className:`bg-green-500/10 text-green-600`,children:`启用`}):(0,P.jsx)(u,{className:`bg-red-500/10 text-red-500`,children:`禁用`})},{accessorKey:`status`,header:`状态`,cell:({row:e})=>{let t=Number(e.getValue(`status`));return(0,P.jsx)(`div`,{className:`text-xs`,children:t===1?(0,P.jsx)(u,{variant:`secondary`,children:`待激活`}):t===2?(0,P.jsx)(u,{variant:`secondary`,className:`text-green-600`,children:`已激活`}):(0,P.jsx)(u,{variant:`secondary`,className:`text-red-600`,children:`已注销`})})}},{accessorKey:`createTime`,header:`创建时间`,cell:({row:e})=>(0,P.jsx)(`div`,{children:e.getValue(`createTime`)})},{id:`actions`,enableHiding:!1,header:`操作`,cell:({row:o})=>{let s=o.original;return Number(s.status)===3||s.userId===a?null:(0,P.jsxs)(`div`,{className:`space-x-2`,children:[(0,P.jsx)(d,{size:`sm`,variant:`outline`,onClick:()=>i(s),children:`修改`}),(0,P.jsx)(d,{size:`sm`,variant:`outline`,onClick:()=>r(s),children:`重置密码`}),s.enabled?(0,P.jsx)(d,{size:`sm`,variant:`outline`,onClick:()=>t(s),children:`禁用`}):(0,P.jsx)(d,{size:`sm`,variant:`outline`,onClick:()=>e(s),children:`启用`}),(0,P.jsx)(d,{size:`sm`,variant:`destructive`,onClick:()=>n(s),children:`注销`})]})}}]}function z(){let[e,l]=(0,M.useState)(null),{enable:u}=A({onSuccess:()=>F==null?void 0:F.refetch()}),p=e=>{u(e.userId)},[m,h]=(0,M.useState)(`disable`),[g,_]=(0,M.useState)(!1),v=e=>{l(e),h(`disable`),_(!0)},y=e=>{l(e),h(`adminCancel`),_(!0)},[S,C]=(0,M.useState)(!1),w=e=>{l(e),C(!0)},[T,E]=(0,M.useState)(!1),D=e=>{l(e),E(!0)},{table:O,query:F,search:z}=N(()=>R({handleEnable:p,handleDisable:v,handleCancelUser:y,handleResetPassword:w,handleEditUser:D})),[B,V]=(0,M.useState)(L),H=(e,t)=>{V(n=>({...n,[e]:t}))};return(0,P.jsxs)(P.Fragment,{children:[(0,P.jsx)(I,{open:g,setOpen:_,action:m,data:e,refetch:F==null?void 0:F.refetch}),(0,P.jsx)(k,{open:S,setOpen:C,data:e}),(0,P.jsx)(j,{open:T,setOpen:E,data:e,refetch:F==null?void 0:F.refetch}),(0,P.jsxs)(`div`,{className:`p-4 box-border min-h-full space-y-4`,children:[(0,P.jsxs)(`div`,{children:[(0,P.jsx)(`div`,{className:`text-lg`,children:`机构账号`}),(0,P.jsx)(`div`,{className:`text-xs text-black/50`,children:`查看各机构下的账号信息,启用/禁用/注销账号`})]}),(0,P.jsxs)(`div`,{className:`p-4 rounded-lg border bg-white space-y-2`,children:[(0,P.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,P.jsx)(f,{placeholder:`机构名称`,className:`w-[160px]`,value:B.orgNameLike,onChange:e=>H(`orgNameLike`,e.target.value)}),(0,P.jsx)(f,{placeholder:`账号`,className:`w-[140px]`,value:B.usernameLike,onChange:e=>H(`usernameLike`,e.target.value)}),(0,P.jsx)(f,{placeholder:`真实姓名`,className:`w-[120px]`,value:B.realNameLike,onChange:e=>H(`realNameLike`,e.target.value)}),(0,P.jsx)(f,{placeholder:`手机号`,className:`w-[140px]`,value:B.phoneLike,onChange:e=>H(`phoneLike`,e.target.value)}),(0,P.jsxs)(o,{value:B.enabled||`all`,onValueChange:e=>H(`enabled`,e===`all`?``:e),children:[(0,P.jsx)(n,{className:`w-[110px]`,children:(0,P.jsx)(a,{placeholder:`启用状态`})}),(0,P.jsxs)(i,{children:[(0,P.jsx)(r,{value:`all`,children:`启用状态`}),(0,P.jsx)(r,{value:`true`,children:`启用`}),(0,P.jsx)(r,{value:`false`,children:`禁用`})]})]}),(0,P.jsxs)(o,{value:B.status||`all`,onValueChange:e=>H(`status`,e===`all`?``:e),children:[(0,P.jsx)(n,{className:`w-[110px]`,children:(0,P.jsx)(a,{placeholder:`用户状态`})}),(0,P.jsxs)(i,{children:[(0,P.jsx)(r,{value:`all`,children:`用户状态`}),(0,P.jsx)(r,{value:`1`,children:`待激活`}),(0,P.jsx)(r,{value:`2`,children:`已激活`}),(0,P.jsx)(r,{value:`3`,children:`已注销`})]})]}),(0,P.jsxs)(`div`,{className:`flex items-center gap-1 text-sm text-black/60`,children:[`创建时间`,(0,P.jsx)(t,{from:B.createTimeStart,to:B.createTimeEnd,onChange:e=>{H(`createTimeStart`,e.from??``),H(`createTimeEnd`,e.to??``)}})]}),(0,P.jsxs)(d,{onClick:()=>{z({...B,createTimeStart:B.createTimeStart?`${B.createTimeStart} 00:00:00`:``,createTimeEnd:B.createTimeEnd?`${B.createTimeEnd} 23:59:59`:``})},children:[(0,P.jsx)(c,{}),`查询`]}),(0,P.jsxs)(d,{variant:`outline`,onClick:()=>{V(L),z({})},children:[(0,P.jsx)(s,{}),`重置`]})]}),(0,P.jsxs)(`div`,{className:`relative overflow-hidden`,children:[(0,P.jsx)(b,{table:O,query:F}),(0,P.jsx)(x,{table:O,className:`justify-end p-2 sticky bottom-0 left-0 right-0 z-10 bg-white`})]})]})]})]})}export{z as component,R as useColumns};