移动了旧 GERP 到 backup 文件夹

This commit is contained in:
TermiNexus committed 2026-08-02 22:15:54 +08:00
1 parent 358e9933e5
commit d23f61c2f8
809 files changed
+5806 -214

No files matched your search

+3
View File
@@ -0,0 +1,3 @@
成员邮箱和 gitea 与 gerp 同步
+1
View File
@@ -0,0 +1 @@
import{Nn as e,_ as t,hn as n,ln as r,mn as i}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a}from"./serverScope-O8Rw8SFk.js";import{t as o}from"./CrudTable-B49nrpUt.js";var s={class:`wo-admin-page`},c=t(n({__name:`Admin`,setup(t){return a(`工单管理`),(t,n)=>(e(),r(`div`,s,[i(o,{table:`WorkOrder`,title:`工单管理`,searchable:``,pageable:``,selectable:``,stretch:``})]))}}),[[`__scopeId`,`data-v-7d410849`]]);export{c as default};
-1
View File
@@ -1 +0,0 @@
import{$r as e,Qr as t,_ as n,_i as r,qr as i}from"./useApi-CROJJdhE-DTiQDIFh.js";import{a}from"./serverScope-CLCA_jyd.js";import{t as o}from"./CrudTable-0btzlQyb.js";var s={class:`wo-admin-page`},c=n(e({__name:`Admin`,setup(e){return a(`工单管理`),(e,n)=>(r(),i(`div`,s,[t(o,{table:`WorkOrder`,title:`工单管理`,searchable:``,pageable:``,selectable:``,stretch:``})]))}}),[[`__scopeId`,`data-v-7d410849`]]);export{c as default};
@@ -1 +0,0 @@
import{$r as e,Gr as t,Kr as n,Mi as r,Ur as i,Zr as a,_ as o,_i as s}from"./useApi-CROJJdhE-DTiQDIFh.js";import{i as c,r as l}from"./serverScope-CLCA_jyd.js";import{t as u}from"./alert-BVfR0rW0.js";/* empty css */var d=o(e({__name:`AdminBadge`,props:{visible:{type:Boolean}},setup(e){let o=e,d=i(()=>o.visible!==!1&&(!c()||l()));return(e,i)=>{let o=u;return d.value?(s(),t(o,{key:0,type:`warning`,center:``,closable:!1,class:`admin-badge`},{default:r(()=>[...i[0]||=[a(` 管理员特权模式 - 跨租户/公司隔离已关闭 `,-1)]]),_:1})):n(``,!0)}}}),[[`__scopeId`,`data-v-7891edeb`]]);export{d as t};
@@ -0,0 +1 @@
import{Jn as e,Nn as t,_ as n,an as r,cn as i,hn as a,pn as o,sn as s}from"./useApi-CROJJdhE-mMpa5RAf.js";import{i as c,r as l}from"./serverScope-O8Rw8SFk.js";import{t as u}from"./alert-BpFV-0dO.js";/* empty css */var d=n(a({__name:`AdminBadge`,props:{visible:{type:Boolean}},setup(n){let a=n,d=r(()=>a.visible!==!1&&(!c()||l()));return(n,r)=>{let a=u;return d.value?(t(),s(a,{key:0,type:`warning`,center:``,closable:!1,class:`admin-badge`},{default:e(()=>[...r[0]||=[o(` 管理员特权模式 - 跨租户/公司隔离已关闭 `,-1)]]),_:1})):i(``,!0)}}}),[[`__scopeId`,`data-v-7891edeb`]]);export{d as t};
@@ -0,0 +1 @@
import{An as e,Br as t,Fn as n,Jn as r,Nn as i,Yn as a,_ as o,an as s,cn as c,en as l,hn as u,ir as d,ln as f,mn as p,on as m,pn as h,sn as g}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as _}from"./serverScope-O8Rw8SFk.js";import{t as v}from"./date-picker-CM_15T0u.js";import{r as y,t as b}from"./select-BGsfCDCJ.js";import{n as ee,t as te}from"./table-DPU4-geg.js";import{r as x,s as S}from"./router-CMu0lceh.js";import{t as ne}from"./button-CPx9BSuo.js";import{t as re}from"./tag-BSnLMVgs.js";import{t as ie}from"./dialog-_5VhSQg5.js";import{t as ae}from"./empty-CnQTxkvl.js";import{t as oe}from"./pagination-DOGDdUWm.js";import{t as se}from"./directive-CY41a6pJ.js";/* empty css */import"./css-CY4c3_XL.js";import"./css-yeo4Q6aC.js";import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-Cy-4mdDD.js";import"./css-DMLZMbB9.js";import"./css-DMOjom7l.js";import"./css-Dmy6QwIc.js";import"./css-fhPIiYtD.js";import{t as C}from"./AdminBadge-Z72F8Boy.js";import"./css-ByqxgOA-.js";import"./css-D4jab2ni2.js";var ce={class:`audit-log-page`},w={class:`audit-log-header`},T={class:`audit-log-filters`},le={class:`mono`},ue={class:`mono`},de={key:0,style:{color:`var(--el-color-danger)`,padding:`20px`}},fe={class:`audit-log-pagination`},pe={class:`detail-section`},me={class:`detail-base`},he={class:`mono`},ge={class:`mono`},_e={key:0,class:`detail-section`},E={class:`detail-json`},D={key:1,class:`detail-section`},O={class:`detail-json`},k=20,A=o(u({__name:`AuditLog`,setup(o){_(`操作审计日志`);let u=x(),A=s(()=>u.isAdmin),j=d(!1),M=[`User`,`Role`,`Permission`,`Tenant`,`Company`],N=[{value:`add`,label:`新增`},{value:`modify`,label:`修改`},{value:`delete`,label:`删除`}],P=d(``),F=d(``),I=d(null),L=d(1),R=d(0),z=d([]),B=d(!1),V=d(``),H=d(!1),U=d(null);function W(e){return e&&{add:`新增`,modify:`修改`,delete:`删除`}[e]||e||`-`}function G(e){return e&&{add:`success`,modify:`warning`,delete:`danger`}[e]||`info`}function K(e){return e?String(e).replace(`T`,` `).substring(0,19):`-`}function q(e){if(typeof e!=`string`)return e;try{return JSON.parse(e)}catch{return e}}function J(e){if(!e)return null;if(typeof e==`string`){let t=q(e);return typeof t==`object`&&t?t:null}return typeof e==`object`?e:null}let Y=s(()=>J(U.value?.OldData)),X=s(()=>J(U.value?.NewData));function Z(){let e={page:L.value,page_size:k,ordering:`-CreateTime`};return P.value&&(e.TableName=P.value),F.value&&(e.Action=F.value),I.value&&I.value.length===2&&(e.CreateTime__gte=I.value[0]+` 00:00:00`,e.CreateTime__lte=I.value[1]+` 23:59:59`),e}async function Q(){B.value=!0,V.value=``;try{let e=await S(`/API/FormAPI/Get/AuditLog`,Z());Array.isArray(e)?(z.value=e,R.value=e.length):e&&Array.isArray(e.records)?(z.value=e.records,R.value=e.total??z.value.length):(z.value=[],R.value=0)}catch(e){V.value=`加载审计日志失败:`+(e instanceof Error?e.message:String(e)),z.value=[],R.value=0}finally{B.value=!1}}function ve(){L.value=1,Q()}function ye(){P.value=``,F.value=``,I.value=null,L.value=1,Q()}function be(e){L.value=e,Q()}function xe(e){U.value=e,H.value=!0}function $(e){if(!e)return``;try{return JSON.stringify(e,null,2)}catch{return String(e)}}return e(()=>{if(!A.value){j.value=!0;return}Q()}),(e,o)=>{let s=ae,u=ne,d=b,_=y,x=v,S=ee,A=re,q=te,J=oe,Z=ie,Se=se;return i(),f(`div`,ce,[p(C),j.value?(i(),g(s,{key:0,description:`无权访问:该页面仅管理员可查看,请切换至管理员角色或联系管理员`},{image:r(()=>[...o[4]||=[m(`i`,{class:`fas fa-lock`,style:{"font-size":`48px`,color:`var(--el-color-danger)`}},null,-1)]]),_:1})):(i(),f(l,{key:1},[m(`div`,w,[o[6]||=m(`h1`,{class:`page-title`},[m(`i`,{class:`fas fa-history icon-primary`}),m(`span`,null,`操作审计日志`)],-1),p(u,{icon:`Refresh`,onClick:Q},{default:r(()=>[...o[5]||=[h(`刷新`,-1)]]),_:1})]),m(`div`,T,[o[9]||=m(`span`,{class:`filter-label`},`表名:`,-1),p(_,{modelValue:P.value,"onUpdate:modelValue":o[0]||=e=>P.value=e,placeholder:`全部`,clearable:``,style:{width:`140px`}},{default:r(()=>[(i(),f(l,null,n(M,e=>p(d,{key:e,label:e,value:e},null,8,[`label`,`value`])),64))]),_:1},8,[`modelValue`]),o[10]||=m(`span`,{class:`filter-label`},`操作:`,-1),p(_,{modelValue:F.value,"onUpdate:modelValue":o[1]||=e=>F.value=e,placeholder:`全部`,clearable:``,style:{width:`120px`}},{default:r(()=>[(i(),f(l,null,n(N,e=>p(d,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`])),64))]),_:1},8,[`modelValue`]),o[11]||=m(`span`,{class:`filter-label`},`时间范围:`,-1),p(x,{modelValue:I.value,"onUpdate:modelValue":o[2]||=e=>I.value=e,type:`daterange`,"range-separator":`至`,"start-placeholder":`开始日期`,"end-placeholder":`结束日期`,"value-format":`YYYY-MM-DD`,style:{width:`280px`}},null,8,[`modelValue`]),p(u,{type:`primary`,icon:`Search`,onClick:ve},{default:r(()=>[...o[7]||=[h(`查询`,-1)]]),_:1}),p(u,{icon:`RefreshLeft`,onClick:ye},{default:r(()=>[...o[8]||=[h(`重置`,-1)]]),_:1})]),a((i(),g(q,{data:z.value,border:``,stripe:``,style:{width:`100%`}Line truncated
@@ -1 +0,0 @@
import{$r as e,Ca as t,Gr as n,Hi as r,Kr as i,Mi as a,Ni as o,Qr as s,Rr as c,Ur as l,Wr as u,Zr as d,_ as f,_i as p,mi as m,qr as h,yi as g}from"./useApi-CROJJdhE-DTiQDIFh.js";import{a as _}from"./serverScope-CLCA_jyd.js";import{t as v}from"./date-picker-DUqMIidt.js";import{r as y,t as b}from"./select-VtLnfNTa.js";import{n as ee,t as te}from"./table-CnRFKcut.js";import{i as x,s as S}from"./router-Bz7E4dLH.js";import{t as ne}from"./button-dPBZLBL0.js";import{t as re}from"./tag-DsjHDKbM.js";import{t as ie}from"./dialog-2NPB22v1.js";import{t as ae}from"./empty-BgmR_P06.js";import{t as oe}from"./pagination-BwkOahGh.js";import{t as se}from"./directive-DsCzzPS8.js";/* empty css */import"./css-CY4c3_XL.js";import"./css-yeo4Q6aC.js";import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-Cy-4mdDD.js";import"./css-DMLZMbB9.js";import"./css-DMOjom7l.js";import"./css-Dmy6QwIc.js";import"./css-fhPIiYtD.js";import{t as C}from"./AdminBadge-DWq3-CmW.js";import"./css-ByqxgOA-.js";import"./css-D4jab2ni.js";var ce={class:`audit-log-page`},w={class:`audit-log-header`},T={class:`audit-log-filters`},le={class:`mono`},ue={class:`mono`},de={key:0,style:{color:`var(--el-color-danger)`,padding:`20px`}},fe={class:`audit-log-pagination`},pe={class:`detail-section`},me={class:`detail-base`},he={class:`mono`},ge={class:`mono`},_e={key:0,class:`detail-section`},E={class:`detail-json`},D={key:1,class:`detail-section`},O={class:`detail-json`},k=20,A=f(e({__name:`AuditLog`,setup(e){_(`操作审计日志`);let f=x(),A=l(()=>f.isAdmin),j=r(!1),M=[`User`,`Role`,`Permission`,`Tenant`,`Company`],N=[{value:`add`,label:`新增`},{value:`modify`,label:`修改`},{value:`delete`,label:`删除`}],P=r(``),F=r(``),I=r(null),L=r(1),R=r(0),z=r([]),B=r(!1),V=r(``),H=r(!1),U=r(null);function W(e){return e&&{add:`新增`,modify:`修改`,delete:`删除`}[e]||e||`-`}function G(e){return e&&{add:`success`,modify:`warning`,delete:`danger`}[e]||`info`}function K(e){return e?String(e).replace(`T`,` `).substring(0,19):`-`}function q(e){if(typeof e!=`string`)return e;try{return JSON.parse(e)}catch{return e}}function J(e){if(!e)return null;if(typeof e==`string`){let t=q(e);return typeof t==`object`&&t?t:null}return typeof e==`object`?e:null}let Y=l(()=>J(U.value?.OldData)),X=l(()=>J(U.value?.NewData));function Z(){let e={page:L.value,page_size:k,ordering:`-CreateTime`};return P.value&&(e.TableName=P.value),F.value&&(e.Action=F.value),I.value&&I.value.length===2&&(e.CreateTime__gte=I.value[0]+` 00:00:00`,e.CreateTime__lte=I.value[1]+` 23:59:59`),e}async function Q(){B.value=!0,V.value=``;try{let e=await S(`/API/FormAPI/Get/AuditLog`,Z());Array.isArray(e)?(z.value=e,R.value=e.length):e&&Array.isArray(e.records)?(z.value=e.records,R.value=e.total??z.value.length):(z.value=[],R.value=0)}catch(e){V.value=`加载审计日志失败:`+(e instanceof Error?e.message:String(e)),z.value=[],R.value=0}finally{B.value=!1}}function ve(){L.value=1,Q()}function ye(){P.value=``,F.value=``,I.value=null,L.value=1,Q()}function be(e){L.value=e,Q()}function xe(e){U.value=e,H.value=!0}function $(e){if(!e)return``;try{return JSON.stringify(e,null,2)}catch{return String(e)}}return m(()=>{if(!A.value){j.value=!0;return}Q()}),(e,r)=>{let l=ae,f=ne,m=b,_=y,x=v,S=ee,A=re,q=te,J=oe,Z=ie,Se=se;return p(),h(`div`,ce,[s(C),j.value?(p(),n(l,{key:0,description:`无权访问:该页面仅管理员可查看,请切换至管理员角色或联系管理员`},{image:a(()=>[...r[4]||=[u(`i`,{class:`fas fa-lock`,style:{"font-size":`48px`,color:`var(--el-color-danger)`}},null,-1)]]),_:1})):(p(),h(c,{key:1},[u(`div`,w,[r[6]||=u(`h1`,{class:`page-title`},[u(`i`,{class:`fas fa-history icon-primary`}),u(`span`,null,`操作审计日志`)],-1),s(f,{icon:`Refresh`,onClick:Q},{default:a(()=>[...r[5]||=[d(`刷新`,-1)]]),_:1})]),u(`div`,T,[r[9]||=u(`span`,{class:`filter-label`},`表名:`,-1),s(_,{modelValue:P.value,"onUpdate:modelValue":r[0]||=e=>P.value=e,placeholder:`全部`,clearable:``,style:{width:`140px`}},{default:a(()=>[(p(),h(c,null,g(M,e=>s(m,{key:e,label:e,value:e},null,8,[`label`,`value`])),64))]),_:1},8,[`modelValue`]),r[10]||=u(`span`,{class:`filter-label`},`操作:`,-1),s(_,{modelValue:F.value,"onUpdate:modelValue":r[1]||=e=>F.value=e,placeholder:`全部`,clearable:``,style:{width:`120px`}},{default:a(()=>[(p(),h(c,null,g(N,e=>s(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`])),64))]),_:1},8,[`modelValue`]),r[11]||=u(`span`,{class:`filter-label`},`时间范围:`,-1),s(x,{modelValue:I.value,"onUpdate:modelValue":r[2]||=e=>I.value=e,type:`daterange`,"range-separator":`至`,"start-placeholder":`开始日期`,"end-placeholder":`结束日期`,"value-format":`YYYY-MM-DD`,style:{width:`280px`}},null,8,[`modelValue`]),s(f,{type:`primary`,icon:`Search`,onClick:ve},{default:a(()=>[...r[7]||=[d(`查询`,-1)]]),_:1}),s(f,{icon:`RefreshLeft`,onClick:ye},{default:a(()=>[...r[8]||=[d(`重置`,-1)]]),_:1})]),o((p(),n(q,{data:z.value,border:``,stripe:``,style:{width:`100%`},Line truncated
-1
View File
@@ -1 +0,0 @@
import{$r as e,Qr as t,_ as n,_i as r,h as i,qr as a}from"./useApi-CROJJdhE-DTiQDIFh.js";import{a as o}from"./serverScope-CLCA_jyd.js";import{t as s}from"./AdminBadge-DWq3-CmW.js";import{t as c}from"./CrudTable-0btzlQyb.js";var l={class:`company-page`},u=n(e({__name:`Company`,setup(e){o(`公司管理`);let n=i();function u(e){n.push({path:`/company/company-detail`,query:{CompanyUUID:e.CompanyUUID||``}})}return(e,n)=>(r(),a(`div`,l,[t(s),t(c,{table:`Company`,title:`公司管理`,"pk-field":`CompanyUUID`,searchable:``,pageable:``,stretch:``,selectable:``,"on-view":u})]))}}),[[`__scopeId`,`data-v-6eb2ef38`]]);export{u as default};
+1
View File
@@ -0,0 +1 @@
import{Nn as e,_ as t,h as n,hn as r,ln as i,mn as a}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as o}from"./serverScope-O8Rw8SFk.js";import{t as s}from"./AdminBadge-Z72F8Boy.js";import{t as c}from"./CrudTable-B49nrpUt.js";var l={class:`company-page`},u=t(r({__name:`Company`,setup(t){o(`公司管理`);let r=n();function u(e){r.push({path:`/company/company-detail`,query:{CompanyUUID:e.CompanyUUID||``}})}return(t,n)=>(e(),i(`div`,l,[a(s),a(c,{table:`Company`,title:`公司管理`,"pk-field":`CompanyUUID`,searchable:``,pageable:``,stretch:``,selectable:``,"on-view":u})]))}}),[[`__scopeId`,`data-v-6eb2ef38`]]);export{u as default};
@@ -1 +0,0 @@
import{$r as e,Bi as t,Ca as n,D as r,Gr as i,Hi as a,Kr as o,Mi as s,Qr as c,Rr as l,Ur as u,Xi as d,Zr as f,_ as p,_i as m,h,m as g,mi as _,qr as v,xi as ee,yi as y}from"./useApi-CROJJdhE-DTiQDIFh.js";import{a as b,o as x,u as te}from"./serverScope-CLCA_jyd.js";import{t as ne}from"./date-picker-DUqMIidt.js";import{n as S}from"./descriptions-DdoyLmWE.js";import{r as C,t as w}from"./select-VtLnfNTa.js";import{n as T,t as E}from"./form-DkCs-bRK.js";import{t as D}from"./alert-BVfR0rW0.js";import{t as O}from"./button-dPBZLBL0.js";import{t as k}from"./tag-DsjHDKbM.js";import{t as A}from"./card-CKxtkBHA.js";import{t as j}from"./dialog-2NPB22v1.js";import{t as M}from"./input-number-BYrgUFpo.js";import{t as re}from"./switch-TyRYNjQq.js";/* empty css */import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-CttyGzET.js";import"./css-D-a1H3t1.js";import"./css-49fsIjk3.js";import"./css-DmmbJMxg.js";import"./css-CysIl0tz.js";import"./css-w8-s2aei.js";import"./css-DMOjom7l.js";import"./css-Dmy6QwIc.js";import"./AdminBadge-DWq3-CmW.js";import"./css-BLJI5-W_.js";import{t as N}from"./CrudTable-0btzlQyb.js";import"./css-ByqxgOA-.js";import{t as P}from"./form-DjuqPK5m.js";import{t as ie}from"./DetailPage-D_nlVGtk.js";import{t as ae}from"./InfoGrid-BuM8q62h.js";import{t as F}from"./useResolveUUIDs-DMRvDAUD.js";var I=`CompanyUUID`,L=p(e({__name:`CompanyDetail`,setup(e){let p=g(),L=h(),{resolveUUIDs:R}=F(),z=a(!1),B=a(null),V=a({}),H=a(``),U=p.query.CompanyUUID||``,W={0:{text:`禁用`,type:`danger`},1:{text:`启用`,type:`success`}};function G(e){return e==null||e===``?``:String(e)}function K(e){if(!e)return`-`;let t=String(e),n=new Date(t);if(isNaN(n.getTime()))return t;let r=e=>String(e).padStart(2,`0`);return`${n.getFullYear()}-${r(n.getMonth()+1)}-${r(n.getDate())} ${r(n.getHours())}:${r(n.getMinutes())}:${r(n.getSeconds())}`}function q(e){return Array.isArray(e)?e:e?.list||[]}async function J(){if(!U){H.value=`缺少 CompanyUUID 参数,无法加载公司详情。`;return}z.value=!0,H.value=``;try{let e=q(await P.list(`Company`,{CompanyUUID:U,pageSize:1})),t=e.find(e=>e.CompanyUUID===U)||e[0];if(!t){H.value=`未找到公司数据`;return}B.value=t,b(G(t.CompanyName)||`公司详情`);let n={};t.ParentCompanyUUID&&(n.parentCompany={table:`Company`,uuids:[t.ParentCompanyUUID]}),t.TenantUUID&&(n.tenant={table:`Tenant`,uuids:[t.TenantUUID]}),Object.keys(n).length&&(V.value=await R(n))}catch(e){H.value=`加载失败: ${e instanceof Error?e.message:String(e)}`}finally{z.value=!1}}function oe(e){L.push({path:`/company/department-detail`,query:{DeptUUID:G(e.DeptUUID)}})}function se(e){L.push({path:`/company/workgroup-detail`,query:{WorkgroupUUID:G(e.WorkgroupUUID)}})}function ce(e){L.push({path:`/company/employee-detail`,query:{UserUUID:G(e.UserUUID)}})}let Y=a(!1),X=a(!1),Z=a([]),Q=t({}),le=u(()=>Z.value.filter(e=>e.editable!==!1&&!e.hideInForm&&e.type!==`hidden`&&e.type!==`divider`&&e.type!==`html`&&e.field!==I));async function $(){if(B.value){try{Z.value.length||(Z.value=await P.getColumns(`Company`))}catch{Z.value=[]}Object.keys(Q).forEach(e=>delete Q[e]),Object.assign(Q,B.value),Y.value=!0}}async function ue(){if(B.value){X.value=!0;try{await P.update(`Company`,B.value[I],{...Q}),x.success(`保存成功`),Y.value=!1,await J()}catch{}finally{X.value=!1}}}return _(J),(e,t)=>{let a=ee(`Edit`),u=r,p=O,h=D,g=S,_=k,b=A,x=te,P=M,F=w,I=C,L=ne,R=re,q=T,J=E,Z=j;return m(),i(ie,{title:B.value?.CompanyName||`公司详情`,loading:z.value},{actions:s(()=>[c(p,{type:`primary`,disabled:!B.value,onClick:$},{default:s(()=>[c(u,null,{default:s(()=>[c(a)]),_:1}),t[2]||=f(`编辑 `,-1)]),_:1},8,[`disabled`])]),default:s(()=>[H.value?(m(),i(h,{key:0,type:`error`,title:H.value,"show-icon":``,closable:!1},null,8,[`title`])):o(``,!0),B.value?(m(),i(ae,{key:1,title:`基本信息`,columns:2},{default:s(()=>[c(g,{label:`公司名称`},{default:s(()=>[f(n(G(B.value.CompanyName)||`-`),1)]),_:1}),c(g,{label:`公司简称`},{default:s(()=>[f(n(G(B.value.CompanyShort)||`-`),1)]),_:1}),c(g,{label:`公司状态`},{default:s(()=>[c(_,{type:W[String(B.value.CompanyStatus)]?.type||`info`,size:`small`},{default:s(()=>[f(n(W[String(B.value.CompanyStatus)]?.text??B.value.CompanyStatus),1)]),_:1},8,[`type`])]),_:1}),c(g,{label:`上级公司`},{default:s(()=>[f(n(V.value.parentCompany?.[B.value.ParentCompanyUUID]||G(B.value.ParentCompanyUUID)||`-`),1)]),_:1}),c(g,{label:`租户`},{default:s(()=>[f(n(V.value.tenant?.[B.value.TenantUUID]||G(B.value.TenantUUID)||`-`),1)]),_:1}),c(g,{label:`创建时间`},{default:s(()=>[f(n(K(B.value.CompanyCreateTime)),1)]),_:1})]),_:1})):o(``,!0),B.value?(m(),i(b,{key:2,shadow:`never`},{default:s(()=>[c(N,{table:`Department`,title:`部门`,query:{CompanyUUID:d(U)},selectable:!0,pageable:!0,"pk-field":`DeptUUID`,"on-view":oe},null,8,[`query`])]),_:1})):o(``,!0),B.value?(m(),i(b,{key:3,shadow:`never`},{default:s(()=>[c(N,{table:`Workgroup`,title:`工作组`,query:{CompanyUUID:d(U)},selectable:!0,pageable:!0,"pk-fieLine truncated
@@ -0,0 +1 @@
import{An as e,Br as t,Fn as n,Jn as r,Ln as ee,Nn as i,_ as a,an as o,cn as s,en as c,h as l,hn as u,ir as d,ln as f,m as p,mn as m,nr as h,pn as g,pr as _,sn as v}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as y,o as b,u as te}from"./serverScope-O8Rw8SFk.js";import{t as x}from"./date-picker-CM_15T0u.js";import{u as S}from"./use-global-config-D-dPcPvU.js";import{n as C}from"./descriptions-Cq_aE9sg.js";import{r as w,t as T}from"./select-BGsfCDCJ.js";import{n as E,t as D}from"./form-F--u6XQJ.js";import{t as O}from"./alert-BpFV-0dO.js";import{t as k}from"./button-CPx9BSuo.js";import{t as A}from"./tag-BSnLMVgs.js";import{t as j}from"./card-Dj_UeWcA.js";import{t as M}from"./dialog-_5VhSQg5.js";import{t as ne}from"./input-number-CiNOxXL6.js";import{t as re}from"./switch-7puThziV.js";/* empty css */import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-CttyGzET.js";import"./css-D-a1H3t1.js";import"./css-49fsIjk3.js";import"./css-DmmbJMxg.js";import"./css-CysIl0tz.js";import"./css-w8-s2aei.js";import"./css-DMOjom7l.js";import"./css-Dmy6QwIc.js";import"./AdminBadge-Z72F8Boy.js";import"./css-BLJI5-W_.js";import{t as N}from"./CrudTable-B49nrpUt.js";import"./css-ByqxgOA-.js";import{t as P}from"./form-B2Pzr8Vf.js";import{t as ie}from"./DetailPage-m11wfvkM.js";import{t as ae}from"./InfoGrid-C1it9Z2Y.js";import{t as F}from"./useResolveUUIDs-ipmPZLo4.js";var I=`CompanyUUID`,L=a(u({__name:`CompanyDetail`,setup(a){let u=p(),L=l(),{resolveUUIDs:R}=F(),z=d(!1),B=d(null),V=d({}),H=d(``),U=u.query.CompanyUUID||``,W={0:{text:`禁用`,type:`danger`},1:{text:`启用`,type:`success`}};function G(e){return e==null||e===``?``:String(e)}function K(e){if(!e)return`-`;let t=String(e),n=new Date(t);if(isNaN(n.getTime()))return t;let r=e=>String(e).padStart(2,`0`);return`${n.getFullYear()}-${r(n.getMonth()+1)}-${r(n.getDate())} ${r(n.getHours())}:${r(n.getMinutes())}:${r(n.getSeconds())}`}function q(e){return Array.isArray(e)?e:e?.list||[]}async function J(){if(!U){H.value=`缺少 CompanyUUID 参数,无法加载公司详情。`;return}z.value=!0,H.value=``;try{let e=q(await P.list(`Company`,{CompanyUUID:U,pageSize:1})),t=e.find(e=>e.CompanyUUID===U)||e[0];if(!t){H.value=`未找到公司数据`;return}B.value=t,y(G(t.CompanyName)||`公司详情`);let n={};t.ParentCompanyUUID&&(n.parentCompany={table:`Company`,uuids:[t.ParentCompanyUUID]}),t.TenantUUID&&(n.tenant={table:`Tenant`,uuids:[t.TenantUUID]}),Object.keys(n).length&&(V.value=await R(n))}catch(e){H.value=`加载失败: ${e instanceof Error?e.message:String(e)}`}finally{z.value=!1}}function oe(e){L.push({path:`/company/department-detail`,query:{DeptUUID:G(e.DeptUUID)}})}function se(e){L.push({path:`/company/workgroup-detail`,query:{WorkgroupUUID:G(e.WorkgroupUUID)}})}function ce(e){L.push({path:`/company/employee-detail`,query:{UserUUID:G(e.UserUUID)}})}let Y=d(!1),X=d(!1),Z=d([]),Q=h({}),le=o(()=>Z.value.filter(e=>e.editable!==!1&&!e.hideInForm&&e.type!==`hidden`&&e.type!==`divider`&&e.type!==`html`&&e.field!==I));async function $(){if(B.value){try{Z.value.length||(Z.value=await P.getColumns(`Company`))}catch{Z.value=[]}Object.keys(Q).forEach(e=>delete Q[e]),Object.assign(Q,B.value),Y.value=!0}}async function ue(){if(B.value){X.value=!0;try{await P.update(`Company`,B.value[I],{...Q}),b.success(`保存成功`),Y.value=!1,await J()}catch{}finally{X.value=!1}}}return e(J),(e,a)=>{let o=ee(`Edit`),l=S,u=k,d=O,p=C,h=A,y=j,b=te,P=ne,F=T,I=w,L=x,R=re,q=E,J=D,Z=M;return i(),v(ie,{title:B.value?.CompanyName||`公司详情`,loading:z.value},{actions:r(()=>[m(u,{type:`primary`,disabled:!B.value,onClick:$},{default:r(()=>[m(l,null,{default:r(()=>[m(o)]),_:1}),a[2]||=g(`编辑 `,-1)]),_:1},8,[`disabled`])]),default:r(()=>[H.value?(i(),v(d,{key:0,type:`error`,title:H.value,"show-icon":``,closable:!1},null,8,[`title`])):s(``,!0),B.value?(i(),v(ae,{key:1,title:`基本信息`,columns:2},{default:r(()=>[m(p,{label:`公司名称`},{default:r(()=>[g(t(G(B.value.CompanyName)||`-`),1)]),_:1}),m(p,{label:`公司简称`},{default:r(()=>[g(t(G(B.value.CompanyShort)||`-`),1)]),_:1}),m(p,{label:`公司状态`},{default:r(()=>[m(h,{type:W[String(B.value.CompanyStatus)]?.type||`info`,size:`small`},{default:r(()=>[g(t(W[String(B.value.CompanyStatus)]?.text??B.value.CompanyStatus),1)]),_:1},8,[`type`])]),_:1}),m(p,{label:`上级公司`},{default:r(()=>[g(t(V.value.parentCompany?.[B.value.ParentCompanyUUID]||G(B.value.ParentCompanyUUID)||`-`),1)]),_:1}),m(p,{label:`租户`},{default:r(()=>[g(t(V.value.tenant?.[B.value.TenantUUID]||G(B.value.TenantUUID)||`-`),1)]),_:1}),m(p,{label:`创建时间`},{default:r(()=>[g(t(K(B.value.CompanyCreateTime)),1)]),_:1})]),_:1})):s(``,!0),B.value?(i(),v(y,{key:2,shadow:`never`},{default:r(()=>[m(N,{table:`Department`,title:`部门`,query:{CompanyUUID:_(U)},selectable:!0,pageable:!0,"pk-field":`DeptUUID`,"on-view":oe},null,8,[`query`])]),_:1})):s(``,!0),B.value?(i(),v(y,{key:3,shadow:`never`},{default:r(()=>[m(N,{table:`Workgroup`,title:`工作组`,query:{CLine truncated
@@ -1 +0,0 @@
import{$r as e,Ai as t,Bi as n,Ca as r,D as i,Gr as a,Hi as o,Kr as s,Li as c,Mi as l,Ni as u,Qr as d,Rr as f,Ur as p,Wr as m,Xi as h,Zr as g,_,_i as v,ba as y,di as b,mi as x,qr as S,xi as C,yi as w}from"./useApi-CROJJdhE-DTiQDIFh.js";import{_t as T,o as E,u as D}from"./serverScope-CLCA_jyd.js";import{t as O}from"./date-picker-DUqMIidt.js";import{r as k,t as A}from"./select-VtLnfNTa.js";import{t as j}from"./time-picker-BYCslB8n.js";import{g as M,l as N,r as P,s as F}from"./router-Bz7E4dLH.js";import{n as ee,t as I}from"./form-DkCs-bRK.js";import{t as L}from"./button-dPBZLBL0.js";import{t as R}from"./tag-DsjHDKbM.js";import{t as z}from"./card-CKxtkBHA.js";import{r as B,t as te}from"./checkbox-C0xSI7i2.js";import{r as ne,t as re}from"./radio-D48l254V.js";import{t as ie}from"./dialog-2NPB22v1.js";import{t as ae}from"./input-number-BYrgUFpo.js";import{t as oe}from"./pagination-BwkOahGh.js";import{t as se}from"./switch-TyRYNjQq.js";import{t as ce}from"./directive-DsCzzPS8.js";/* empty css */import"./css-CY4c3_XL.js";import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-CttyGzET.js";import"./css-Cy-4mdDD.js";import"./css-D-a1H3t1.js";import"./css-49fsIjk3.js";import"./css-DMLZMbB9.js";import"./css-DmmbJMxg.js";import"./css-w8-s2aei.js";import"./css-DMOjom7l.js";import"./css-Dmy6QwIc.js";import"./css-fhPIiYtD.js";import"./css-BLJI5-W_.js";import"./css-ByqxgOA-.js";import"./css-0wcCNliC.js";import{t as V}from"./form-DjuqPK5m.js";function H(e){let{table:t,query:r={}}=e,i=o(!1),a=o(!1),s=o([]),c=o([]),l=o(0),u=o(1),d=o(20),f=o(``),p=o(`asc`),m=o(``),h=o([]),g=o(!1),_=o(`新增`),v=n({}),y=o(!1);function b(){return e.pkField?e.pkField:s.value.find(e=>e.isPrimary||e.primaryKey)?.field||`Id`}async function S(){try{s.value=await V.getColumns(t)}catch{}}async function C(){i.value=!0;try{let e={page:u.value,pageSize:d.value,sortField:f.value||void 0,sortOrder:p.value,keyword:m.value||void 0,...r},n=await V.list(t,e);if(Array.isArray(n))c.value=n,l.value=n.length;else{let e=n;c.value=e.list||[],l.value=e.total??0}}finally{i.value=!1}}function w(){y.value=!1,_.value=`新增`;let e={};for(let t of s.value)t.defaultValue!==void 0&&(e[t.field]=t.defaultValue);Object.keys(v).forEach(e=>delete v[e]),Object.assign(v,e),g.value=!0}async function T(t){e.beforeEdit&&!await e.beforeEdit(t)||(y.value=!0,_.value=`编辑`,Object.keys(v).forEach(e=>delete v[e]),Object.assign(v,t),g.value=!0)}function D(t){e.onView&&e.onView(t)}function O(t){e.onRowClick&&e.onRowClick(t)}async function k(){if(!(e.beforeCreate&&!y.value&&!await e.beforeCreate(v))){a.value=!0;try{if(y.value){let e=b(),n=v[e];await V.update(t,n,v),E.success(`更新成功`)}else await V.create(t,v),E.success(`新增成功`);g.value=!1,await C()}finally{a.value=!1}}}async function A(n){if(e.beforeDelete&&!await e.beforeDelete(n))return;try{await M.confirm(`确认删除该记录?删除后不可恢复`,`提示`,{type:`warning`,confirmButtonText:`确认删除`,cancelButtonText:`取消`})}catch{return}let r=n[b()];await V.remove(t,r),E.success(`删除成功`),await C()}async function j(){if(h.value.length===0){E.warning(`请先选择要删除的记录`);return}if(e.beforeBatchDelete&&!await e.beforeBatchDelete(h.value))return;try{await M.confirm(`确认删除选中的 ${h.value.length} 条记录?删除后不可恢复`,`提示`,{type:`warning`,confirmButtonText:`确认删除`,cancelButtonText:`取消`})}catch{return}let n=b();for(let e of h.value){let r=e[n];await V.remove(t,r)}E.success(`批量删除成功`),h.value=[],await C()}function N(e){h.value=e}function F(){return h.value}function ee(){h.value=[]}function I(){u.value=1,C()}function L(){m.value=``,u.value=1,C()}function R(e){u.value=e,C()}function z(e){d.value=e,u.value=1,C()}function B(e,t){c.value=e,l.value=t??e.length}return x(async()=>{try{await Promise.all([S(),C()])}finally{P().done()}}),{loading:i,submitting:a,columns:s,dataList:c,total:l,currentPage:u,pageSize:d,sortField:f,sortOrder:p,searchKeyword:m,selectedRows:h,dialogVisible:g,dialogTitle:_,editingRow:v,isEdit:y,getPkField:b,fetchColumns:S,fetchData:C,handleCreate:w,handleEdit:T,handleView:D,handleRowClick:O,handleSubmit:k,handleDelete:A,handleBatchDelete:j,handleSelectionChange:N,getSelectedRows:F,clearSelection:ee,handleSearch:I,handleReset:L,handlePageChange:R,handleSizeChange:z,setData:B}}var U={key:0,class:`entity-picker-secondary`},W=_(e({__name:`EntityPicker`,props:{modelValue:{default:``},config:{},disabled:{type:Boolean,default:!1},placeholder:{default:``},existingLabel:{default:``},clearable:{type:Boolean,default:!1}},emits:[`update:modelValue`,`update:label`],setup(e,{emit:n}){let i=e,c=n,u=o([]),d=o(!1),h=o(!1),g=o(``),_=p(()=>i.placeholder||i.config.placeholder||`请选择`),y=null;function x(e){y&&clearTimeout(y),y=setTimeout(()=>{C(e)},300)}async function C(e){let t=i.config,n=t.searchParam||`keyword`,r=t.method||`GET`;d.value=!0;try{let i;i=r===`POST`?await N(t.api,{[n]:e}):await F(t.api,{[n]:e}),u.value=T(i,t)}catch{uLine truncated
@@ -0,0 +1 @@
import{$n as e,An as t,Br as n,Dn as r,Fn as i,Jn as a,Kn as o,Ln as s,Lr as c,Nn as l,Yn as u,_ as d,an as f,cn as p,en as m,hn as h,ir as g,ln as _,mn as v,nr as y,on as b,pn as x,pr as S,sn as C}from"./useApi-CROJJdhE-mMpa5RAf.js";import{l as w}from"./runtime-dom.esm-bundler-YxjRGSuG.js";import{o as T,u as E}from"./serverScope-O8Rw8SFk.js";import{t as D}from"./date-picker-CM_15T0u.js";import{u as O}from"./use-global-config-D-dPcPvU.js";import{r as k,t as A}from"./select-BGsfCDCJ.js";import{t as j}from"./time-picker-DcDLR-nT.js";import{_ as M,l as N,n as P,s as F}from"./router-CMu0lceh.js";import{n as I,t as L}from"./form-F--u6XQJ.js";import{t as R}from"./button-CPx9BSuo.js";import{t as z}from"./tag-BSnLMVgs.js";import{t as B}from"./card-Dj_UeWcA.js";import{r as V,t as ee}from"./checkbox-CdKclTX1.js";import{r as te,t as ne}from"./radio-Cb0vAm4I.js";import{t as re}from"./dialog-_5VhSQg5.js";import{t as ie}from"./input-number-CiNOxXL6.js";import{t as ae}from"./pagination-DOGDdUWm.js";import{t as oe}from"./switch-7puThziV.js";import{t as se}from"./directive-CY41a6pJ.js";/* empty css */import"./css-CY4c3_XL.js";import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-CttyGzET.js";import"./css-Cy-4mdDD.js";import"./css-D-a1H3t1.js";import"./css-49fsIjk3.js";import"./css-DMLZMbB9.js";import"./css-DmmbJMxg.js";import"./css-w8-s2aei.js";import"./css-DMOjom7l.js";import"./css-Dmy6QwIc.js";import"./css-fhPIiYtD.js";import"./css-BLJI5-W_.js";import"./css-ByqxgOA-.js";import"./css-0wcCNliC.js";import{t as H}from"./form-B2Pzr8Vf.js";function U(e){let{table:n,query:r={}}=e,i=g(!1),a=g(!1),o=g([]),s=g([]),c=g(0),l=g(1),u=g(20),d=g(``),f=g(`asc`),p=g(``),m=g([]),h=g(!1),_=g(`新增`),v=y({}),b=g(!1);function x(){return e.pkField?e.pkField:o.value.find(e=>e.isPrimary||e.primaryKey)?.field||`Id`}async function S(){try{o.value=await H.getColumns(n)}catch{}}async function C(){i.value=!0;try{let e={page:l.value,pageSize:u.value,sortField:d.value||void 0,sortOrder:f.value,keyword:p.value||void 0,...r},t=await H.list(n,e);if(Array.isArray(t))s.value=t,c.value=t.length;else{let e=t;s.value=e.list||[],c.value=e.total??0}}finally{i.value=!1}}function w(){b.value=!1,_.value=`新增`;let e={};for(let t of o.value)t.defaultValue!==void 0&&(e[t.field]=t.defaultValue);Object.keys(v).forEach(e=>delete v[e]),Object.assign(v,e),h.value=!0}async function E(t){e.beforeEdit&&!await e.beforeEdit(t)||(b.value=!0,_.value=`编辑`,Object.keys(v).forEach(e=>delete v[e]),Object.assign(v,t),h.value=!0)}function D(t){e.onView&&e.onView(t)}function O(t){e.onRowClick&&e.onRowClick(t)}async function k(){if(!(e.beforeCreate&&!b.value&&!await e.beforeCreate(v))){a.value=!0;try{if(b.value){let e=x(),t=v[e];await H.update(n,t,v),T.success(`更新成功`)}else await H.create(n,v),T.success(`新增成功`);h.value=!1,await C()}finally{a.value=!1}}}async function A(t){if(e.beforeDelete&&!await e.beforeDelete(t))return;try{await M.confirm(`确认删除该记录?删除后不可恢复`,`提示`,{type:`warning`,confirmButtonText:`确认删除`,cancelButtonText:`取消`})}catch{return}let r=t[x()];await H.remove(n,r),T.success(`删除成功`),await C()}async function j(){if(m.value.length===0){T.warning(`请先选择要删除的记录`);return}if(e.beforeBatchDelete&&!await e.beforeBatchDelete(m.value))return;try{await M.confirm(`确认删除选中的 ${m.value.length} 条记录?删除后不可恢复`,`提示`,{type:`warning`,confirmButtonText:`确认删除`,cancelButtonText:`取消`})}catch{return}let t=x();for(let e of m.value){let r=e[t];await H.remove(n,r)}T.success(`批量删除成功`),m.value=[],await C()}function N(e){m.value=e}function F(){return m.value}function I(){m.value=[]}function L(){l.value=1,C()}function R(){p.value=``,l.value=1,C()}function z(e){l.value=e,C()}function B(e){u.value=e,l.value=1,C()}function V(e,t){s.value=e,c.value=t??e.length}return t(async()=>{try{await Promise.all([S(),C()])}finally{P().done()}}),{loading:i,submitting:a,columns:o,dataList:s,total:c,currentPage:l,pageSize:u,sortField:d,sortOrder:f,searchKeyword:p,selectedRows:m,dialogVisible:h,dialogTitle:_,editingRow:v,isEdit:b,getPkField:x,fetchColumns:S,fetchData:C,handleCreate:w,handleEdit:E,handleView:D,handleRowClick:O,handleSubmit:k,handleDelete:A,handleBatchDelete:j,handleSelectionChange:N,getSelectedRows:F,clearSelection:I,handleSearch:L,handleReset:R,handlePageChange:z,handleSizeChange:B,setData:V}}var W={key:0,class:`entity-picker-secondary`},G=d(h({__name:`EntityPicker`,props:{modelValue:{default:``},config:{},disabled:{type:Boolean,default:!1},placeholder:{default:``},existingLabel:{default:``},clearable:{type:Boolean,default:!1}},emits:[`update:modelValue`,`update:label`],setup(e,{emit:t}){let s=e,c=t,u=g([]),d=g(!1),h=g(!1),v=g(``),y=f(()=>s.placeholder||s.config.placeholder||`请选择`),x=null;function S(e){x&&clearTimeout(x),x=setTimeout(()=>{w(e)},300)}async function w(e){let t=s.config,n=t.searchParam||`keyword`,r=t.method||`GET`;d.valLine truncated
@@ -1 +0,0 @@
import{$r as e,Ca as t,D as n,Hi as r,Mi as i,Ni as a,Qr as o,Wr as s,_ as c,_i as l,mi as u,qr as d,xi as f}from"./useApi-CROJJdhE-DTiQDIFh.js";import{s as p}from"./router-Bz7E4dLH.js";import{t as m}from"./card-CKxtkBHA.js";import{n as h,t as g}from"./col-DJgTX6lZ.js";import{t as _}from"./directive-DsCzzPS8.js";/* empty css */import"./css-CttyGzET.js";import"./css-Cy-4mdDD.js";import"./css-D-a1H3t1.js";var v={class:`dashboard`},y={class:`stat-content`},b={class:`stat-icon user`},x={class:`stat-info`},S={class:`stat-value`},C={class:`stat-content`},w={class:`stat-icon order`},T={class:`stat-info`},E={class:`stat-value`},D={class:`stat-content`},O={class:`stat-icon revenue`},k={class:`stat-info`},A={class:`stat-value`},j={class:`stat-content`},M={class:`stat-icon tenant`},N={class:`stat-info`},P={class:`stat-value`},F=c(e({__name:`Dashboard`,setup(e){let c=r({UserCount:0,OrderCount:0,TodayRevenue:0,ActiveTenants:0}),F=r(!1);return u(async()=>{F.value=!0;try{let e=await p(`/API/Dashboard/Stats`);c.value={...c.value,...e}}finally{F.value=!1}}),(e,r)=>{let u=f(`User`),p=n,I=m,L=g,R=f(`ShoppingCart`),z=f(`Money`),B=f(`OfficeBuilding`),V=h,H=_;return a((l(),d(`div`,v,[o(V,{gutter:16},{default:i(()=>[o(L,{xs:24,sm:12,lg:6},{default:i(()=>[o(I,{shadow:`hover`,class:`stat-card`},{default:i(()=>[s(`div`,y,[s(`div`,b,[o(p,{size:32},{default:i(()=>[o(u)]),_:1})]),s(`div`,x,[s(`div`,S,t(c.value.UserCount),1),r[0]||=s(`div`,{class:`stat-label`},`用户总数`,-1)])])]),_:1})]),_:1}),o(L,{xs:24,sm:12,lg:6},{default:i(()=>[o(I,{shadow:`hover`,class:`stat-card`},{default:i(()=>[s(`div`,C,[s(`div`,w,[o(p,{size:32},{default:i(()=>[o(R)]),_:1})]),s(`div`,T,[s(`div`,E,t(c.value.OrderCount),1),r[1]||=s(`div`,{class:`stat-label`},`订单总数`,-1)])])]),_:1})]),_:1}),o(L,{xs:24,sm:12,lg:6},{default:i(()=>[o(I,{shadow:`hover`,class:`stat-card`},{default:i(()=>[s(`div`,D,[s(`div`,O,[o(p,{size:32},{default:i(()=>[o(z)]),_:1})]),s(`div`,k,[s(`div`,A,`¥`+t((Number(c.value.TodayRevenue)||0).toFixed(2)),1),r[2]||=s(`div`,{class:`stat-label`},`今日收入`,-1)])])]),_:1})]),_:1}),o(L,{xs:24,sm:12,lg:6},{default:i(()=>[o(I,{shadow:`hover`,class:`stat-card`},{default:i(()=>[s(`div`,j,[s(`div`,M,[o(p,{size:32},{default:i(()=>[o(B)]),_:1})]),s(`div`,N,[s(`div`,P,t(c.value.ActiveTenants),1),r[3]||=s(`div`,{class:`stat-label`},`活跃租户`,-1)])])]),_:1})]),_:1})]),_:1}),o(I,{class:`welcome-card`,shadow:`never`},{header:i(()=>[...r[4]||=[s(`span`,null,`欢迎使用 GERP 管理系统`,-1)]]),default:i(()=>[r[5]||=s(`p`,null,`当前技术栈:Vue 3 + TypeScript + Vite + Element Plus + vxe-table + FormKit`,-1),r[6]||=s(`p`,null,`后端:Django + DRF(已就绪,无需修改)`,-1),r[7]||=s(`p`,null,`路由模式:SPA(已移除 iframe)`,-1)]),_:1})])),[[H,F.value]])}}}),[[`__scopeId`,`data-v-29b7fb49`]]);export{F as default};
@@ -0,0 +1 @@
import{An as e,Br as t,Jn as n,Ln as r,Nn as i,Yn as a,_ as o,hn as s,ir as c,ln as l,mn as u,on as d}from"./useApi-CROJJdhE-mMpa5RAf.js";import{u as f}from"./use-global-config-D-dPcPvU.js";import{s as p}from"./router-CMu0lceh.js";import{t as m}from"./card-Dj_UeWcA.js";import{n as h,t as g}from"./col-BXlaMgkQ.js";import{t as _}from"./directive-CY41a6pJ.js";/* empty css */import"./css-CttyGzET.js";import"./css-Cy-4mdDD.js";import"./css-D-a1H3t1.js";var v={class:`dashboard`},y={class:`stat-content`},b={class:`stat-icon user`},x={class:`stat-info`},S={class:`stat-value`},C={class:`stat-content`},w={class:`stat-icon order`},T={class:`stat-info`},E={class:`stat-value`},D={class:`stat-content`},O={class:`stat-icon revenue`},k={class:`stat-info`},A={class:`stat-value`},j={class:`stat-content`},M={class:`stat-icon tenant`},N={class:`stat-info`},P={class:`stat-value`},F=o(s({__name:`Dashboard`,setup(o){let s=c({UserCount:0,OrderCount:0,TodayRevenue:0,ActiveTenants:0}),F=c(!1);return e(async()=>{F.value=!0;try{let e=await p(`/API/Dashboard/Stats`);s.value={...s.value,...e}}finally{F.value=!1}}),(e,o)=>{let c=r(`User`),p=f,I=m,L=g,R=r(`ShoppingCart`),z=r(`Money`),B=r(`OfficeBuilding`),V=h,H=_;return a((i(),l(`div`,v,[u(V,{gutter:16},{default:n(()=>[u(L,{xs:24,sm:12,lg:6},{default:n(()=>[u(I,{shadow:`hover`,class:`stat-card`},{default:n(()=>[d(`div`,y,[d(`div`,b,[u(p,{size:32},{default:n(()=>[u(c)]),_:1})]),d(`div`,x,[d(`div`,S,t(s.value.UserCount),1),o[0]||=d(`div`,{class:`stat-label`},`用户总数`,-1)])])]),_:1})]),_:1}),u(L,{xs:24,sm:12,lg:6},{default:n(()=>[u(I,{shadow:`hover`,class:`stat-card`},{default:n(()=>[d(`div`,C,[d(`div`,w,[u(p,{size:32},{default:n(()=>[u(R)]),_:1})]),d(`div`,T,[d(`div`,E,t(s.value.OrderCount),1),o[1]||=d(`div`,{class:`stat-label`},`订单总数`,-1)])])]),_:1})]),_:1}),u(L,{xs:24,sm:12,lg:6},{default:n(()=>[u(I,{shadow:`hover`,class:`stat-card`},{default:n(()=>[d(`div`,D,[d(`div`,O,[u(p,{size:32},{default:n(()=>[u(z)]),_:1})]),d(`div`,k,[d(`div`,A,`¥`+t((Number(s.value.TodayRevenue)||0).toFixed(2)),1),o[2]||=d(`div`,{class:`stat-label`},`今日收入`,-1)])])]),_:1})]),_:1}),u(L,{xs:24,sm:12,lg:6},{default:n(()=>[u(I,{shadow:`hover`,class:`stat-card`},{default:n(()=>[d(`div`,j,[d(`div`,M,[u(p,{size:32},{default:n(()=>[u(B)]),_:1})]),d(`div`,N,[d(`div`,P,t(s.value.ActiveTenants),1),o[3]||=d(`div`,{class:`stat-label`},`活跃租户`,-1)])])]),_:1})]),_:1})]),_:1}),u(I,{class:`welcome-card`,shadow:`never`},{header:n(()=>[...o[4]||=[d(`span`,null,`欢迎使用 GERP 管理系统`,-1)]]),default:n(()=>[o[5]||=d(`p`,null,`当前技术栈:Vue 3 + TypeScript + Vite + Element Plus + vxe-table + FormKit`,-1),o[6]||=d(`p`,null,`后端:Django + DRF(已就绪,无需修改)`,-1),o[7]||=d(`p`,null,`路由模式:SPA(已移除 iframe)`,-1)]),_:1})])),[[H,F.value]])}}}),[[`__scopeId`,`data-v-29b7fb49`]]);export{F as default};
@@ -1 +0,0 @@
import{$r as e,Ca as t,Gr as n,Hi as r,Kr as i,Mi as a,Ni as o,Qr as s,Rr as c,Ur as l,Wr as u,Xi as d,Zr as f,_ as p,_i as m,h,mi as g,qr as _,yi as v}from"./useApi-CROJJdhE-DTiQDIFh.js";import{a as y,i as b,t as x}from"./serverScope-CLCA_jyd.js";import{i as S,s as C}from"./router-Bz7E4dLH.js";import{t as w}from"./button-dPBZLBL0.js";import{t as T}from"./empty-BgmR_P06.js";import{t as E}from"./directive-DsCzzPS8.js";/* empty css */import"./css-DsD2Typt.js";import"./css-Cy-4mdDD.js";import{t as D}from"./AdminBadge-DWq3-CmW.js";import"./css-D4jab2ni.js";var O={class:`db-page`},k={class:`db-header`},A={class:`page-title`},j={key:1,class:`db-section`},M={class:`db-list`},N={class:`db-table-name`},P={class:`db-table-meta`},F={class:`db-section`},I={class:`db-list`},L={class:`db-table-name`},R={class:`db-table-meta`},z=p(e({__name:`Database`,setup(e){let p=h(),z=S(),B=l(()=>z.isAdmin),V=r(!1),H=x(),U=b(),W=r(!1),G=r([]),K=r([]),q=l(()=>U?`数据库管理`:`${H} — 数据库管理`);y(q.value);async function J(){W.value=!0;try{let e=await C(`/API/FormAPI/Tables`),t=Array.isArray(e)?e:[];G.value=t.filter(e=>e.type===`static`),K.value=t.filter(e=>e.type===`dynamic`)}catch{}finally{W.value=!1}}async function Y(){W.value=!0;try{let e=await C(`/api/gerp/msync/servers/${encodeURIComponent(H)}/form/`,{Action:`tables`});K.value=Array.isArray(e)?e:[]}catch{K.value=[]}finally{W.value=!1}}function X(e){let t={table:e.name,title:e.title||e.name};U||(t.server=H),p.push({path:`/system/dbtable`,query:t})}function Z(){p.push({path:`/system/msync-servers`})}function Q(e){return e.title&&e.title!==e.name?`${e.title}(${e.name})`:e.name}function $(e){return typeof e.count==`number`&&e.count>=0?`${e.count} 条记录`:e.type===`dynamic`?`系统表`:`自定义表`}return g(()=>{if(!B.value){V.value=!0;return}U?J():Y()}),(e,r)=>{let l=T,p=w,h=E;return m(),_(`div`,O,[s(D),V.value?(m(),n(l,{key:0,description:`无权访问:该页面仅管理员可查看,请切换至管理员角色或联系管理员`},{image:a(()=>[...r[0]||=[u(`i`,{class:`fas fa-lock`,style:{"font-size":`48px`,color:`var(--el-color-danger)`}},null,-1)]]),_:1})):(m(),_(c,{key:1},[d(U)?i(``,!0):(m(),_(`div`,{key:0,class:`db-back`,onClick:Z},[...r[1]||=[u(`i`,{class:`fas fa-arrow-left`},null,-1),f(),u(`span`,null,`返回服务器列表`,-1)]])),u(`div`,k,[u(`h1`,A,[r[2]||=u(`i`,{class:`fas fa-database icon-primary`},null,-1),u(`span`,null,t(q.value),1)])]),d(U)?(m(),_(`div`,j,[r[4]||=u(`h3`,null,`静态表`,-1),o((m(),_(`div`,M,[(m(!0),_(c,null,v(G.value,e=>(m(),_(`div`,{key:e.name,class:`db-table-item`},[u(`span`,N,t(Q(e)),1),u(`span`,P,t($(e)),1),s(p,{size:`small`,type:`primary`,onClick:t=>X(e)},{default:a(()=>[...r[3]||=[u(`i`,{class:`fas fa-table`},null,-1),f(` 查看 `,-1)]]),_:1},8,[`onClick`])]))),128)),!W.value&&G.value.length===0?(m(),n(l,{key:0,description:`暂无数据`,"image-size":60})):i(``,!0)])),[[h,W.value]])])):i(``,!0),u(`div`,F,[u(`h3`,null,t(d(U)?`系统表`:`数据表`),1),o((m(),_(`div`,I,[(m(!0),_(c,null,v(K.value,e=>(m(),_(`div`,{key:e.name,class:`db-table-item`},[u(`span`,L,t(Q(e)),1),u(`span`,R,t($(e)),1),s(p,{size:`small`,type:`primary`,onClick:t=>X(e)},{default:a(()=>[...r[5]||=[u(`i`,{class:`fas fa-table`},null,-1),f(` 查看 `,-1)]]),_:1},8,[`onClick`])]))),128)),!W.value&&K.value.length===0?(m(),n(l,{key:0,description:`暂无数据表`,"image-size":60})):i(``,!0)])),[[h,W.value]])])],64))])}}}),[[`__scopeId`,`data-v-2477c93a`]]);export{z as default};
@@ -0,0 +1 @@
import{An as e,Br as t,Fn as n,Jn as r,Nn as i,Yn as a,_ as o,an as s,cn as c,en as l,h as u,hn as d,ir as f,ln as p,mn as m,on as h,pn as g,pr as _,sn as v}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as y,i as b,t as x}from"./serverScope-O8Rw8SFk.js";import{r as S,s as C}from"./router-CMu0lceh.js";import{t as w}from"./button-CPx9BSuo.js";import{t as T}from"./empty-CnQTxkvl.js";import{t as E}from"./directive-CY41a6pJ.js";/* empty css */import"./css-DsD2Typt.js";import"./css-Cy-4mdDD.js";import{t as D}from"./AdminBadge-Z72F8Boy.js";import"./css-D4jab2ni2.js";var O={class:`db-page`},k={class:`db-header`},A={class:`page-title`},j={key:1,class:`db-section`},M={class:`db-list`},N={class:`db-table-name`},P={class:`db-table-meta`},F={class:`db-section`},I={class:`db-list`},L={class:`db-table-name`},R={class:`db-table-meta`},z=o(d({__name:`Database`,setup(o){let d=u(),z=S(),B=s(()=>z.isAdmin),V=f(!1),H=x(),U=b(),W=f(!1),G=f([]),K=f([]),q=s(()=>U?`数据库管理`:`${H} — 数据库管理`);y(q.value);async function J(){W.value=!0;try{let e=await C(`/API/FormAPI/Tables`),t=Array.isArray(e)?e:[];G.value=t.filter(e=>e.type===`static`),K.value=t.filter(e=>e.type===`dynamic`)}catch{}finally{W.value=!1}}async function Y(){W.value=!0;try{let e=await C(`/api/gerp/msync/servers/${encodeURIComponent(H)}/form/`,{Action:`tables`});K.value=Array.isArray(e)?e:[]}catch{K.value=[]}finally{W.value=!1}}function X(e){let t={table:e.name,title:e.title||e.name};U||(t.server=H),d.push({path:`/system/dbtable`,query:t})}function Z(){d.push({path:`/system/msync-servers`})}function Q(e){return e.title&&e.title!==e.name?`${e.title}(${e.name})`:e.name}function $(e){return typeof e.count==`number`&&e.count>=0?`${e.count} 条记录`:e.type===`dynamic`?`系统表`:`自定义表`}return e(()=>{if(!B.value){V.value=!0;return}U?J():Y()}),(e,o)=>{let s=T,u=w,d=E;return i(),p(`div`,O,[m(D),V.value?(i(),v(s,{key:0,description:`无权访问:该页面仅管理员可查看,请切换至管理员角色或联系管理员`},{image:r(()=>[...o[0]||=[h(`i`,{class:`fas fa-lock`,style:{"font-size":`48px`,color:`var(--el-color-danger)`}},null,-1)]]),_:1})):(i(),p(l,{key:1},[_(U)?c(``,!0):(i(),p(`div`,{key:0,class:`db-back`,onClick:Z},[...o[1]||=[h(`i`,{class:`fas fa-arrow-left`},null,-1),g(),h(`span`,null,`返回服务器列表`,-1)]])),h(`div`,k,[h(`h1`,A,[o[2]||=h(`i`,{class:`fas fa-database icon-primary`},null,-1),h(`span`,null,t(q.value),1)])]),_(U)?(i(),p(`div`,j,[o[4]||=h(`h3`,null,`静态表`,-1),a((i(),p(`div`,M,[(i(!0),p(l,null,n(G.value,e=>(i(),p(`div`,{key:e.name,class:`db-table-item`},[h(`span`,N,t(Q(e)),1),h(`span`,P,t($(e)),1),m(u,{size:`small`,type:`primary`,onClick:t=>X(e)},{default:r(()=>[...o[3]||=[h(`i`,{class:`fas fa-table`},null,-1),g(` 查看 `,-1)]]),_:1},8,[`onClick`])]))),128)),!W.value&&G.value.length===0?(i(),v(s,{key:0,description:`暂无数据`,"image-size":60})):c(``,!0)])),[[d,W.value]])])):c(``,!0),h(`div`,F,[h(`h3`,null,t(_(U)?`系统表`:`数据表`),1),a((i(),p(`div`,I,[(i(!0),p(l,null,n(K.value,e=>(i(),p(`div`,{key:e.name,class:`db-table-item`},[h(`span`,L,t(Q(e)),1),h(`span`,R,t($(e)),1),m(u,{size:`small`,type:`primary`,onClick:t=>X(e)},{default:r(()=>[...o[5]||=[h(`i`,{class:`fas fa-table`},null,-1),g(` 查看 `,-1)]]),_:1},8,[`onClick`])]))),128)),!W.value&&K.value.length===0?(i(),v(s,{key:0,description:`暂无数据表`,"image-size":60})):c(``,!0)])),[[d,W.value]])])],64))])}}}),[[`__scopeId`,`data-v-2477c93a`]]);export{z as default};
-1
View File
@@ -1 +0,0 @@
import{$r as e,Ca as t,Gr as n,Hi as r,Mi as i,Qr as a,Rr as o,Ur as s,Wr as c,Xi as l,Zr as u,_ as d,_i as f,h as p,m,mi as h,qr as g}from"./useApi-CROJJdhE-DTiQDIFh.js";import{a as _,i as v,t as y}from"./serverScope-CLCA_jyd.js";import{i as b}from"./router-Bz7E4dLH.js";import{t as x}from"./alert-BVfR0rW0.js";import{t as S}from"./empty-BgmR_P06.js";/* empty css */import{t as C}from"./AdminBadge-DWq3-CmW.js";import{t as w}from"./CrudTable-0btzlQyb.js";import"./css-D4jab2ni.js";var T={class:`dbtable-page`},E={class:`dbtable-header`},D={class:`page-title`},O={class:`dbtable-info`},k={class:`dbtable-container`},A=d(e({__name:`DbTable`,setup(e){let d=m(),A=p(),j=b(),M=s(()=>j.isAdmin),N=r(!1),P=y(),F=v(),I=d.query.table||``,L=d.query.title||I,R=s(()=>F?L:`${P} — ${L}`);_(R.value);function z(){let e={};F||(e.server=P),A.push({path:`/system/database`,query:e})}return h(()=>{M.value||(N.value=!0)}),(e,r)=>{let s=S,d=x;return f(),g(`div`,T,[a(C),N.value?(f(),n(s,{key:0,description:`无权访问:该页面仅管理员可查看,请切换至管理员角色或联系管理员`},{image:i(()=>[...r[0]||=[c(`i`,{class:`fas fa-lock`,style:{"font-size":`48px`,color:`var(--el-color-danger)`}},null,-1)]]),_:1})):l(I)?(f(),g(o,{key:2},[c(`div`,E,[c(`div`,{class:`dbtable-back`,onClick:z},[...r[2]||=[c(`i`,{class:`fas fa-arrow-left`},null,-1),u(` 返回数据库 `,-1)]]),c(`h1`,D,[r[3]||=c(`i`,{class:`fas fa-table icon-primary`},null,-1),c(`span`,null,t(R.value),1)])]),c(`div`,O,[c(`span`,null,[r[4]||=c(`i`,{class:`fas fa-server`},null,-1),u(` 服务器: `+t(l(F)?`主实例`:l(P)),1)]),c(`span`,null,[r[5]||=c(`i`,{class:`fas fa-table`},null,-1),u(` 表名: `+t(l(I)),1)])]),c(`div`,k,[l(F)?(f(),n(w,{key:0,table:l(I),title:l(L),searchable:``,pageable:``,selectable:``,stretch:``},null,8,[`table`,`title`])):(f(),n(d,{key:1,type:`warning`,closable:!1,"show-icon":``,title:`子服务器表浏览待迁移`,description:`子服务器 subproxy 代理模式(/api/gerp/msync/servers/{server}/form/)暂未迁移,待 DbTableHelper 完整迁移后接入。`}))])],64)):(f(),n(s,{key:1,description:`未指定表名`},{image:i(()=>[...r[1]||=[c(`i`,{class:`fas fa-table`,style:{"font-size":`48px`,opacity:`0.3`}},null,-1)]]),_:1}))])}}}),[[`__scopeId`,`data-v-cf6eab3f`]]);export{A as default};
+1
View File
@@ -0,0 +1 @@
import{An as e,Br as t,Jn as n,Nn as r,_ as i,an as a,en as o,h as s,hn as c,ir as l,ln as u,m as d,mn as f,on as p,pn as m,pr as h,sn as g}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as _,i as v,t as y}from"./serverScope-O8Rw8SFk.js";import{r as b}from"./router-CMu0lceh.js";import{t as x}from"./alert-BpFV-0dO.js";import{t as S}from"./empty-CnQTxkvl.js";/* empty css */import{t as C}from"./AdminBadge-Z72F8Boy.js";import{t as w}from"./CrudTable-B49nrpUt.js";import"./css-D4jab2ni2.js";var T={class:`dbtable-page`},E={class:`dbtable-header`},D={class:`page-title`},O={class:`dbtable-info`},k={class:`dbtable-container`},A=i(c({__name:`DbTable`,setup(i){let c=d(),A=s(),j=b(),M=a(()=>j.isAdmin),N=l(!1),P=y(),F=v(),I=c.query.table||``,L=c.query.title||I,R=a(()=>F?L:`${P} — ${L}`);_(R.value);function z(){let e={};F||(e.server=P),A.push({path:`/system/database`,query:e})}return e(()=>{M.value||(N.value=!0)}),(e,i)=>{let a=S,s=x;return r(),u(`div`,T,[f(C),N.value?(r(),g(a,{key:0,description:`无权访问:该页面仅管理员可查看,请切换至管理员角色或联系管理员`},{image:n(()=>[...i[0]||=[p(`i`,{class:`fas fa-lock`,style:{"font-size":`48px`,color:`var(--el-color-danger)`}},null,-1)]]),_:1})):h(I)?(r(),u(o,{key:2},[p(`div`,E,[p(`div`,{class:`dbtable-back`,onClick:z},[...i[2]||=[p(`i`,{class:`fas fa-arrow-left`},null,-1),m(` 返回数据库 `,-1)]]),p(`h1`,D,[i[3]||=p(`i`,{class:`fas fa-table icon-primary`},null,-1),p(`span`,null,t(R.value),1)])]),p(`div`,O,[p(`span`,null,[i[4]||=p(`i`,{class:`fas fa-server`},null,-1),m(` 服务器: `+t(h(F)?`主实例`:h(P)),1)]),p(`span`,null,[i[5]||=p(`i`,{class:`fas fa-table`},null,-1),m(` 表名: `+t(h(I)),1)])]),p(`div`,k,[h(F)?(r(),g(w,{key:0,table:h(I),title:h(L),searchable:``,pageable:``,selectable:``,stretch:``},null,8,[`table`,`title`])):(r(),g(s,{key:1,type:`warning`,closable:!1,"show-icon":``,title:`子服务器表浏览待迁移`,description:`子服务器 subproxy 代理模式(/api/gerp/msync/servers/{server}/form/)暂未迁移,待 DbTableHelper 完整迁移后接入。`}))])],64)):(r(),g(a,{key:1,description:`未指定表名`},{image:n(()=>[...i[1]||=[p(`i`,{class:`fas fa-table`,style:{"font-size":`48px`,opacity:`0.3`}},null,-1)]]),_:1}))])}}}),[[`__scopeId`,`data-v-cf6eab3f`]]);export{A as default};
@@ -1 +1 @@
.fade-in-linear-enter-active,.fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.fade-in-linear-enter-from,.fade-in-linear-leave-to{opacity:0}.el-fade-in-linear-enter-active,.el-fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.el-fade-in-linear-enter-from,.el-fade-in-linear-leave-to{opacity:0}.el-fade-in-enter-active,.el-fade-in-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55, 0, .1, 1)}.el-fade-in-enter-from,.el-fade-in-leave-active{opacity:0}.el-zoom-in-center-enter-active,.el-zoom-in-center-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55, 0, .1, 1)}.el-zoom-in-center-enter-from,.el-zoom-in-center-leave-active{opacity:0;transform:scaleX(0)}.el-zoom-in-top-enter-active,.el-zoom-in-top-leave-active{opacity:1;transition:var(--el-transition-md-fade);transform-origin:top;transform:scaleY(1)}.el-zoom-in-top-enter-active[data-popper-placement^=top],.el-zoom-in-top-leave-active[data-popper-placement^=top]{transform-origin:bottom}.el-zoom-in-top-enter-from,.el-zoom-in-top-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-bottom-enter-active,.el-zoom-in-bottom-leave-active{opacity:1;transition:var(--el-transition-md-fade);transform-origin:bottom;transform:scaleY(1)}.el-zoom-in-bottom-enter-from,.el-zoom-in-bottom-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-left-enter-active,.el-zoom-in-left-leave-active{opacity:1;transition:var(--el-transition-md-fade);transform-origin:0 0;transform:scale(1)}.el-zoom-in-left-enter-from,.el-zoom-in-left-leave-active{opacity:0;transform:scale(.45)}.collapse-transition{transition:var(--el-transition-duration) height ease-in-out, var(--el-transition-duration) padding-top ease-in-out, var(--el-transition-duration) padding-bottom ease-in-out}.el-collapse-transition-leave-active,.el-collapse-transition-enter-active{transition:var(--el-transition-duration) max-height ease-in-out, var(--el-transition-duration) padding-top ease-in-out, var(--el-transition-duration) padding-bottom ease-in-out}.horizontal-collapse-transition{transition:var(--el-transition-duration) width ease-in-out, var(--el-transition-duration) padding-left ease-in-out, var(--el-transition-duration) padding-right ease-in-out}.el-list-enter-active,.el-list-leave-active{transition:all 1s}.el-list-enter-from,.el-list-leave-to{opacity:0;transform:translateY(-30px)}.el-list-leave-active{position:absolute!important}.el-opacity-transition{transition:opacity var(--el-transition-duration) cubic-bezier(.55, 0, .1, 1)}:root{--el-menu-active-color:var(--el-color-primary);--el-menu-text-color:var(--el-text-color-primary);--el-menu-hover-text-color:var(--el-color-primary);--el-menu-bg-color:var(--el-fill-color-blank);--el-menu-hover-bg-color:var(--el-color-primary-light-9);--el-menu-item-height:56px;--el-menu-sub-item-height:calc(var(--el-menu-item-height) - 6px);--el-menu-horizontal-height:60px;--el-menu-horizontal-sub-item-height:36px;--el-menu-item-font-size:var(--el-font-size-base);--el-menu-item-hover-fill:var(--el-color-primary-light-9);--el-menu-border-color:var(--el-border-color);--el-menu-base-level-padding:20px;--el-menu-level-padding:20px;--el-menu-icon-width:24px}.el-menu{border-right:solid 1px var(--el-menu-border-color);background-color:var(--el-menu-bg-color);box-sizing:border-box;margin:0;padding-left:0;list-style:none;position:relative}.el-menu--vertical:not(.el-menu--collapse):not(.el-menu--popup-container) .el-menu-item,.el-menu--vertical:not(.el-menu--collapse):not(.el-menu--popup-container) .el-sub-menu__title,.el-menu--vertical:not(.el-menu--collapse):not(.el-menu--popup-container) .el-menu-item-group__title{white-space:nowrap;padding-left:calc(var(--el-menu-base-level-padding) + var(--el-menu-level) * var(--el-menu-level-padding))}.el-menu:not(.el-menu--collapse) .el-sub-menu__title{padding-right:calc(var(--el-menu-base-level-padding) + var(--el-menu-icon-width))}.el-menu--horizontal{height:var(--el-menu-horizontal-height);border-right:none;flex-wrap:nowrap;display:flex}.el-menu--horizontal.el-menu--popup-container{height:unset}.el-menu--horizontal.el-menu{border-bottom:solid 1px var(--el-menu-border-color)}.el-menu--horizontal>.el-menu-item{height:100%;color:var(--el-menu-text-color);border-bottom:2px solid #0000;justify-content:center;align-items:center;margin:0;display:inline-flex}.el-menu--horizontal>.el-menu-item a,.el-menu--horizontal>.el-menu-item a:hover{color:inherit}.el-menu--horizontal>.el-sub-menu:focus,.el-menu--horizontal>.el-sub-menu:hover{outline:none}.el-menu--horizontal>.el-sub-menu:hover .el-sub-menu__title{color:var(--el-menu-hover-text-color)}.el-menu--horizontal>.el-sub-menu.is-active .el-sub-menu__title{border-bottom:2px solid var(--el-menu-active-color);color:var(--el-menu-active-color)}.el-menu--horizontal>.el-sub-menu .el-sub-menu__title{height:100%;color:var(--el-menu-text-color);border-bottom:2px solid #0000}.el-menu--horizontal>.el-sub-menu .el-sub-menu__title:hover{backgrLine truncated
.fade-in-linear-enter-active,.fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.fade-in-linear-enter-from,.fade-in-linear-leave-to{opacity:0}.el-fade-in-linear-enter-active,.el-fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.el-fade-in-linear-enter-from,.el-fade-in-linear-leave-to{opacity:0}.el-fade-in-enter-active,.el-fade-in-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55, 0, .1, 1)}.el-fade-in-enter-from,.el-fade-in-leave-active{opacity:0}.el-zoom-in-center-enter-active,.el-zoom-in-center-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55, 0, .1, 1)}.el-zoom-in-center-enter-from,.el-zoom-in-center-leave-active{opacity:0;transform:scaleX(0)}.el-zoom-in-top-enter-active,.el-zoom-in-top-leave-active{opacity:1;transition:var(--el-transition-md-fade);transform-origin:top;transform:scaleY(1)}.el-zoom-in-top-enter-active[data-popper-placement^=top],.el-zoom-in-top-leave-active[data-popper-placement^=top]{transform-origin:bottom}.el-zoom-in-top-enter-from,.el-zoom-in-top-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-bottom-enter-active,.el-zoom-in-bottom-leave-active{opacity:1;transition:var(--el-transition-md-fade);transform-origin:bottom;transform:scaleY(1)}.el-zoom-in-bottom-enter-from,.el-zoom-in-bottom-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-left-enter-active,.el-zoom-in-left-leave-active{opacity:1;transition:var(--el-transition-md-fade);transform-origin:0 0;transform:scale(1)}.el-zoom-in-left-enter-from,.el-zoom-in-left-leave-active{opacity:0;transform:scale(.45)}.collapse-transition{transition:var(--el-transition-duration) height ease-in-out, var(--el-transition-duration) padding-top ease-in-out, var(--el-transition-duration) padding-bottom ease-in-out}.el-collapse-transition-leave-active,.el-collapse-transition-enter-active{transition:var(--el-transition-duration) max-height ease-in-out, var(--el-transition-duration) padding-top ease-in-out, var(--el-transition-duration) padding-bottom ease-in-out}.horizontal-collapse-transition{transition:var(--el-transition-duration) width ease-in-out, var(--el-transition-duration) padding-left ease-in-out, var(--el-transition-duration) padding-right ease-in-out}.el-list-enter-active,.el-list-leave-active{transition:all 1s}.el-list-enter-from,.el-list-leave-to{opacity:0;transform:translateY(-30px)}.el-list-leave-active{position:absolute!important}.el-opacity-transition{transition:opacity var(--el-transition-duration) cubic-bezier(.55, 0, .1, 1)}:root{--el-menu-active-color:var(--el-color-primary);--el-menu-text-color:var(--el-text-color-primary);--el-menu-hover-text-color:var(--el-color-primary);--el-menu-bg-color:var(--el-fill-color-blank);--el-menu-hover-bg-color:var(--el-color-primary-light-9);--el-menu-item-height:56px;--el-menu-sub-item-height:calc(var(--el-menu-item-height) - 6px);--el-menu-horizontal-height:60px;--el-menu-horizontal-sub-item-height:36px;--el-menu-item-font-size:var(--el-font-size-base);--el-menu-item-hover-fill:var(--el-color-primary-light-9);--el-menu-border-color:var(--el-border-color);--el-menu-base-level-padding:20px;--el-menu-level-padding:20px;--el-menu-icon-width:24px}.el-menu{border-right:solid 1px var(--el-menu-border-color);background-color:var(--el-menu-bg-color);box-sizing:border-box;margin:0;padding-left:0;list-style:none;position:relative}.el-menu--vertical:not(.el-menu--collapse):not(.el-menu--popup-container) .el-menu-item,.el-menu--vertical:not(.el-menu--collapse):not(.el-menu--popup-container) .el-sub-menu__title,.el-menu--vertical:not(.el-menu--collapse):not(.el-menu--popup-container) .el-menu-item-group__title{white-space:nowrap;padding-left:calc(var(--el-menu-base-level-padding) + var(--el-menu-level) * var(--el-menu-level-padding))}.el-menu:not(.el-menu--collapse) .el-sub-menu__title{padding-right:calc(var(--el-menu-base-level-padding) + var(--el-menu-icon-width))}.el-menu--horizontal{height:var(--el-menu-horizontal-height);border-right:none;flex-wrap:nowrap;display:flex}.el-menu--horizontal.el-menu--popup-container{height:unset}.el-menu--horizontal.el-menu{border-bottom:solid 1px var(--el-menu-border-color)}.el-menu--horizontal>.el-menu-item{height:100%;color:var(--el-menu-text-color);border-bottom:2px solid #0000;justify-content:center;align-items:center;margin:0;display:inline-flex}.el-menu--horizontal>.el-menu-item a,.el-menu--horizontal>.el-menu-item a:hover{color:inherit}.el-menu--horizontal>.el-sub-menu:focus,.el-menu--horizontal>.el-sub-menu:hover{outline:none}.el-menu--horizontal>.el-sub-menu:hover .el-sub-menu__title{color:var(--el-menu-hover-text-color)}.el-menu--horizontal>.el-sub-menu.is-active .el-sub-menu__title{border-bottom:2px solid var(--el-menu-active-color);color:var(--el-menu-active-color)}.el-menu--horizontal>.el-sub-menu .el-sub-menu__title{height:100%;color:var(--el-menu-text-color);border-bottom:2px solid #0000}.el-menu--horizontal>.el-sub-menu .el-sub-menu__title:hover{backgrLine truncated
@@ -1 +0,0 @@
import{$r as e,Ai as t,Ca as n,Ci as r,D as i,Gr as a,Hi as o,Kr as s,Mi as c,Ni as l,Qr as u,Rr as d,Sa as f,Ur as p,Wr as m,Xi as h,Zr as g,_,_i as v,ba as y,di as b,h as x,m as S,mi as C,qr as w,xi as T,yi as E,zr as D}from"./useApi-CROJJdhE-DTiQDIFh.js";import{gt as O,l as k,o as A}from"./serverScope-CLCA_jyd.js";import{a as j,i as M,n as N,r as P}from"./router-Bz7E4dLH.js";import{n as F}from"./click-outside-CpAqd89y.js";import{t as ee}from"./button-dPBZLBL0.js";import{t as te}from"./tag-DsjHDKbM.js";import{a as ne,i as re,n as ie,o as ae,s as oe,t as se}from"./menu-CPJ-VNbu.js";/* empty css */import"./css-CY4c3_XL.js";import"./css-yeo4Q6aC.js";import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-6qaeDme6.js";import"./css-CttyGzET.js";import"./favicon-CjgOoDgN.js";import{t as I}from"./app-B_D0PNbc.js";var L={class:`tab-bar`},R={class:`tab-list`},z=[`onClick`,`onContextmenu`],B={class:`tab-title`},ce=_(e({__name:`TabBar`,setup(e){let t=N(),l=x(),p=o(!1),_=o(0),S=o(0),C=o(``);function O(e){if(t.activePath===e)return;let n=t.tabs.find(t=>t.path===e);n&&l.push(n.fullPath)}function k(e,n){n.stopPropagation();let r=t.removeTab(e);r&&l.push(r)}function A(e,n){n.preventDefault(),t.tabs.find(t=>t.path===e)?.closable&&(C.value=e,_.value=n.clientX,S.value=n.clientY,p.value=!0,document.addEventListener(`click`,j))}function j(){p.value=!1,document.removeEventListener(`click`,j)}function M(){t.removeOthers(C.value);let e=t.tabs.find(e=>e.path===C.value);e&&l.push(e.fullPath),j()}function P(){t.removeAll(),l.push(`/dashboard`),j()}return b(()=>{document.removeEventListener(`click`,j)}),(e,o)=>{let l=i,b=T(`Close`),x=F,C=T(`CircleClose`),j=T(`Delete`);return v(),w(`div`,L,[u(x,{class:`tab-scroll`},{default:c(()=>[m(`div`,R,[(v(!0),w(d,null,E(h(t).tabs,e=>(v(),w(`div`,{key:e.path,class:y([`tab-item`,{active:h(t).activePath===e.path}]),onClick:t=>O(e.path),onContextmenu:t=>A(e.path,t)},[e.icon&&!h(t).isFaIcon(e.icon)?(v(),a(l,{key:0,class:`tab-icon`},{default:c(()=>[(v(),a(r(e.icon)))]),_:2},1024)):e.icon&&h(t).isFaIcon(e.icon)?(v(),w(`i`,{key:1,class:y([e.icon,`tab-icon-fa`])},null,2)):s(``,!0),m(`span`,B,n(e.title),1),e.closable?(v(),a(l,{key:2,class:`tab-close`,onClick:t=>k(e.path,t)},{default:c(()=>[u(b)]),_:1},8,[`onClick`])):s(``,!0)],42,z))),128))])]),_:1}),(v(),a(D,{to:`body`},[p.value?(v(),w(`ul`,{key:0,class:`tab-ctx-menu`,style:f({left:_.value+`px`,top:S.value+`px`})},[m(`li`,{onClick:M},[u(l,null,{default:c(()=>[u(C)]),_:1}),o[0]||=g(`关闭其他 `,-1)]),m(`li`,{onClick:P},[u(l,null,{default:c(()=>[u(j)]),_:1}),o[1]||=g(`关闭所有 `,-1)])],4)):s(``,!0)]))])}}}),[[`__scopeId`,`data-v-e1c867fe`]]),le=_(e({__name:`RouteProgress`,setup(e){let t=P();return(e,n)=>(v(),w(`div`,{class:y([`route-progress`,{"is-visible":h(t).visible}])},[m(`div`,{class:`route-progress-bar`,style:f({width:h(t).percent+`%`})},null,4)],2))}}),[[`__scopeId`,`data-v-85523620`]]),V={class:`page-mask-content`},ue=_(e({__name:`PageMask`,setup(e){let t=P();return(e,n)=>{let r=T(`Loading`),a=i;return v(),w(`div`,{class:y([`page-mask`,{show:h(t).visible}])},[m(`div`,V,[u(a,{class:`page-mask-icon is-loading`},{default:c(()=>[u(r)]),_:1}),n[0]||=m(`span`,{class:`page-mask-text`},`加载中`,-1)])],2)}}}),[[`__scopeId`,`data-v-7f6076a1`]]),de={class:`gerp-layout`},H={class:`gerp-header`},fe={class:`gerp-header-left`},pe={class:`gerp-header-center`},me={class:`gerp-nav-title`},he={class:`gerp-header-right`},ge={class:`gerp-header-actions`},_e={class:`gerp-user-info`},ve=[`src`],ye={class:`gerp-user-name`},be={class:`user-dropdown-header`},xe=[`src`],Se={class:`user-dropdown-info`},Ce={class:`user-dropdown-name`},U={class:`user-dropdown-role`},we={key:0,class:`user-dropdown-email`},Te={key:1,class:`user-dropdown-account`},Ee={key:0,class:`user-dropdown-roles`},De={class:`user-dropdown-roles-title`},Oe={class:`user-dropdown-roles-list`},ke=[`onClick`],Ae={class:`gerp-main`},je={class:`gerp-sidebar-footer`},Me={class:`gerp-content`},Ne={class:`gerp-content-body`},W=_(e({__name:`DefaultLayout`,setup(e){let f=I(),_=M(),b=N(),D=S(),P=x(),L=p(()=>D.meta.title||`GERP`),R=p(()=>D.path),z=j(),B=p(()=>_.userInfo),V=p(()=>_.isAdmin?`管理员`:_.currentRole||`普通用户`),W=o(!1),G=p(()=>_.roles);C(()=>{f.initTheme(),_.isLoggedIn&&_.fetchRoles().catch(()=>{})});async function Pe(e){if(!(e.RoleName===_.currentRole||W.value)){W.value=!0;try{await _.switchRole(e),b.reset(),A.success(`已切换到:${e.RoleName}`),P.push(`/dashboard`)}catch{A.error(`身份切换失败`)}finally{W.value=!1}}}function Fe(e){P.push(e)}function Ie(){f.sidebarCollapsed&&f.toggleSidebar()}let K=o();function q(){let e=K.value;if(e){for(let t of _.menus)if(t.Children?.length)try{e.close(t.Path||t.Title)}catch{}}}t(()=>f.sidebarCollapsed,e=>{e&&q()});function Le(e){switch(e){case`logout`:J();break;case`theme`:Y();break;case`profile`:P.push(`/profile`);break;case`settings`:P.push(`/system/settings`)}}async function J(){b.reset(),await _.logout(),P.push(`/login`)Line truncated
@@ -0,0 +1 @@
import{An as e,Br as t,Dn as n,Fn as r,Jn as i,Kn as a,Ln as o,Lr as s,Nn as c,Yn as l,_ as u,an as d,cn as f,en as p,h as m,hn as h,ir as g,ln as _,m as v,mn as y,on as b,pn as x,pr as S,sn as C,tn as w,zn as T,zr as E}from"./useApi-CROJJdhE-mMpa5RAf.js";import{c as D,t as O,u as k}from"./runtime-dom.esm-bundler-YxjRGSuG.js";import{l as A,o as j}from"./serverScope-O8Rw8SFk.js";import{u as M}from"./use-global-config-D-dPcPvU.js";import{a as N,i as P,n as F,p as I,r as L}from"./router-CMu0lceh.js";import{n as R}from"./click-outside-bcMsT2om.js";import{t as ee}from"./button-CPx9BSuo.js";import{t as te}from"./tag-BSnLMVgs.js";import{a as ne,i as re,n as ie,o as ae,s as oe,t as se}from"./menu-BLdj5hCm.js";/* empty css */import"./css-CY4c3_XL.js";import"./css-yeo4Q6aC.js";import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-6qaeDme6.js";import"./css-CttyGzET.js";import"./favicon-CjgOoDgN.js";import{t as ce}from"./app-Bqwt3qVF.js";var z={class:`tab-bar`},B={class:`tab-list`},V=[`onClick`,`onContextmenu`],H={class:`tab-title`},le=u(h({__name:`TabBar`,setup(e){let a=I(),l=m(),u=g(!1),d=g(0),h=g(0),v=g(``);function D(e){if(a.activePath===e)return;let t=a.tabs.find(t=>t.path===e);t&&l.push(t.fullPath)}function O(e,t){t.stopPropagation();let n=a.removeTab(e);n&&l.push(n)}function k(e,t){t.preventDefault(),a.tabs.find(t=>t.path===e)?.closable&&(v.value=e,d.value=t.clientX,h.value=t.clientY,u.value=!0,document.addEventListener(`click`,A))}function A(){u.value=!1,document.removeEventListener(`click`,A)}function j(){a.removeOthers(v.value);let e=a.tabs.find(e=>e.path===v.value);e&&l.push(e.fullPath),A()}function N(){a.removeAll(),l.push(`/dashboard`),A()}return n(()=>{document.removeEventListener(`click`,A)}),(e,n)=>{let l=M,m=o(`Close`),g=R,v=o(`CircleClose`),A=o(`Delete`);return c(),_(`div`,z,[y(g,{class:`tab-scroll`},{default:i(()=>[b(`div`,B,[(c(!0),_(p,null,r(S(a).tabs,e=>(c(),_(`div`,{key:e.path,class:s([`tab-item`,{active:S(a).activePath===e.path}]),onClick:t=>D(e.path),onContextmenu:t=>k(e.path,t)},[e.icon&&!S(a).isFaIcon(e.icon)?(c(),C(l,{key:0,class:`tab-icon`},{default:i(()=>[(c(),C(T(e.icon)))]),_:2},1024)):e.icon&&S(a).isFaIcon(e.icon)?(c(),_(`i`,{key:1,class:s([e.icon,`tab-icon-fa`])},null,2)):f(``,!0),b(`span`,H,t(e.title),1),e.closable?(c(),C(l,{key:2,class:`tab-close`,onClick:t=>O(e.path,t)},{default:i(()=>[y(m)]),_:1},8,[`onClick`])):f(``,!0)],42,V))),128))])]),_:1}),(c(),C(w,{to:`body`},[u.value?(c(),_(`ul`,{key:0,class:`tab-ctx-menu`,style:E({left:d.value+`px`,top:h.value+`px`})},[b(`li`,{onClick:j},[y(l,null,{default:i(()=>[y(v)]),_:1}),n[0]||=x(`关闭其他 `,-1)]),b(`li`,{onClick:N},[y(l,null,{default:i(()=>[y(A)]),_:1}),n[1]||=x(`关闭所有 `,-1)])],4)):f(``,!0)]))])}}}),[[`__scopeId`,`data-v-e1c867fe`]]),ue=u(h({__name:`RouteProgress`,setup(e){let t=F();return(e,n)=>(c(),_(`div`,{class:s([`route-progress`,{"is-visible":S(t).visible}])},[b(`div`,{class:`route-progress-bar`,style:E({width:S(t).percent+`%`})},null,4)],2))}}),[[`__scopeId`,`data-v-85523620`]]),U={class:`page-mask-content`},de=u(h({__name:`PageMask`,setup(e){let t=F();return(e,n)=>{let r=o(`Loading`),a=M;return c(),_(`div`,{class:s([`page-mask`,{show:S(t).visible}])},[b(`div`,U,[y(a,{class:`page-mask-icon is-loading`},{default:i(()=>[y(r)]),_:1}),n[0]||=b(`span`,{class:`page-mask-text`},`加载中`,-1)])],2)}}}),[[`__scopeId`,`data-v-7f6076a1`]]),W={class:`role-switcher-content`},G={class:`role-switcher-body`},K={class:`role-grid`},q=[`title`,`onClick`],J={class:`role-info`},Y={class:`role-name`},X={class:`role-desc`},fe={key:0,class:`role-badge role-badge-active`},Z={key:1,class:`role-badge role-badge-disabled`},Q={key:2,class:`role-check`},pe={class:`role-switcher-footer`},me=[`disabled`],he={key:0,class:`role-switching`},$={key:1},ge=u(h({__name:`RoleSwitcher`,props:{modelValue:{type:Boolean},roles:{}},emits:[`update:modelValue`,`switched`],setup(e,{emit:n}){let a=n,o=L(),l=I(),u=m(),d=g(null),h=g(!1),v=e=>e.RoleStatus===1||e.RoleStatus===`1`;function S(e){e.active||!v(e)||(d.value=e)}function T(){a(`update:modelValue`,!1),d.value=null}async function E(){if(!(!d.value||h.value)){h.value=!0;try{await N(d.value),await o.fetchUserInfo(),await o.fetchMenus(),await o.fetchRoles(),l.reset(),j.success(`已切换为 "${d.value.RoleName}"`),a(`switched`,d.value),T(),u.push(`/dashboard`)}catch{j.error(`身份切换失败,请重试`)}finally{h.value=!1}}}function D(e){return e.CompanyName?e.CompanyShort?`${e.CompanyName} (${e.CompanyShort})`:e.CompanyName:`无所属公司`}return(n,a)=>(c(),C(w,{to:`body`},[y(O,{name:`role-switcher`},{default:i(()=>[e.modelValue?(c(),_(`div`,{key:0,class:`role-switcher`,onClick:k(T,[`self`])},[b(`div`,{class:`role-switcher-overlay`,onClick:T}),b(`div`,W,[b(`div`,{class:`role-switcher-header`},[a[1]||=b(`h3`,{class:`role-switcher-title`},`切换角色`,-1),b(`button`,{class:`role-switcher-close`,onClick:T},[...a[0]||=[b(`svg`,{viewBox:`0 0 1024 1024`,width:`14`,height:`14`},[b(`path Line truncated
@@ -0,0 +1 @@
import{Nn as e,_ as t,h as n,hn as r,ln as i,mn as a}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as o}from"./serverScope-O8Rw8SFk.js";import{t as s}from"./CrudTable-B49nrpUt.js";var c={class:`department-page`},l=t(r({__name:`Department`,setup(t){o(`部门管理`);let r=n();function l(e){r.push({path:`/company/department-detail`,query:{DeptUUID:e.DeptUUID||``}})}return(t,n)=>(e(),i(`div`,c,[a(s,{table:`Department`,title:`部门管理`,"pk-field":`DeptUUID`,searchable:``,pageable:``,stretch:``,selectable:``,"on-view":l})]))}}),[[`__scopeId`,`data-v-570e4d75`]]);export{l as default};
@@ -1 +0,0 @@
import{$r as e,Qr as t,_ as n,_i as r,h as i,qr as a}from"./useApi-CROJJdhE-DTiQDIFh.js";import{a as o}from"./serverScope-CLCA_jyd.js";import{t as s}from"./CrudTable-0btzlQyb.js";var c={class:`department-page`},l=n(e({__name:`Department`,setup(e){o(`部门管理`);let n=i();function l(e){n.push({path:`/company/department-detail`,query:{DeptUUID:e.DeptUUID||``}})}return(e,n)=>(r(),a(`div`,c,[t(s,{table:`Department`,title:`部门管理`,"pk-field":`DeptUUID`,searchable:``,pageable:``,stretch:``,selectable:``,"on-view":l})]))}}),[[`__scopeId`,`data-v-570e4d75`]]);export{l as default};
@@ -1 +0,0 @@
import{$r as e,Bi as t,Ca as n,D as r,Gr as i,Hi as a,Kr as o,Mi as s,Qr as c,Rr as l,Ur as u,Xi as d,Zr as f,_i as p,h as m,m as h,mi as g,qr as _,xi as v,yi as y}from"./useApi-CROJJdhE-DTiQDIFh.js";import{a as b,o as x,u as S}from"./serverScope-CLCA_jyd.js";import{t as C}from"./date-picker-DUqMIidt.js";import{n as w}from"./descriptions-DdoyLmWE.js";import{r as T,t as E}from"./select-VtLnfNTa.js";import{n as D,t as O}from"./form-DkCs-bRK.js";import{t as k}from"./button-dPBZLBL0.js";import{t as A}from"./tag-DsjHDKbM.js";import{t as j}from"./card-CKxtkBHA.js";import{t as M}from"./dialog-2NPB22v1.js";import{t as N}from"./input-number-BYrgUFpo.js";import{t as P}from"./switch-TyRYNjQq.js";/* empty css */import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-CttyGzET.js";import"./css-D-a1H3t1.js";import"./css-49fsIjk3.js";import"./css-DmmbJMxg.js";import"./css-CysIl0tz.js";import"./css-w8-s2aei.js";import"./css-DMOjom7l.js";import"./css-Dmy6QwIc.js";import"./css-BLJI5-W_.js";import{n as ee,t as te}from"./CrudTable-0btzlQyb.js";import"./css-ByqxgOA-.js";import{t as F}from"./form-DjuqPK5m.js";import{t as I}from"./DetailPage-D_nlVGtk.js";import{t as L}from"./InfoGrid-BuM8q62h.js";import{t as R}from"./useResolveUUIDs-DMRvDAUD.js";var z=`DeptUUID`,B=e({__name:`DepartmentDetail`,setup(e){let B=h(),V=m(),{resolveUUIDs:H}=R(),U=B.query.DeptUUID||``,W=a(!1),G=a(null),K=a(``),q=a(!1),J=a(!1),Y=a([]),X=t({}),Z=u(()=>G.value?.DeptName||`部门详情`);function Q(e){return e===1||e===`1`?{text:`启用`,type:`success`}:e===0||e===`0`?{text:`禁用`,type:`danger`}:{text:String(e??`-`),type:`info`}}function ne(e){if(!e)return`-`;let t=new Date(e);if(isNaN(t.getTime()))return String(e);let n=e=>String(e).padStart(2,`0`);return`${t.getFullYear()}-${n(t.getMonth()+1)}-${n(t.getDate())} ${n(t.getHours())}:${n(t.getMinutes())}`}async function $(){if(!U){x.warning(`缺少 DeptUUID 参数,无法加载部门详情`);return}W.value=!0;try{let e=await F.list(`Department`,{[z]:U,pageSize:1}),t=Array.isArray(e)?e:e?.list||[],n=t.find(e=>e[z]===U)||t[0];if(!n){x.error(`未找到部门数据`);return}G.value=n,b(n.DeptName||`部门详情`),await re(n.ParentDeptUUID)}finally{W.value=!1}}async function re(e){if(!e){K.value=``;return}try{let t=await H({parentDept:{table:`Department`,uuids:[e]}});K.value=t.parentDept?.[e]||e}catch{K.value=e}}async function ie(){try{Y.value=await F.getColumns(`Department`)}catch{}}let ae=u(()=>Y.value.filter(e=>e.editable!==!1&&!e.hideInForm&&e.type!==`hidden`&&e.type!==`divider`&&e.type!==`html`&&e.field!==z));function oe(){G.value&&(Object.keys(X).forEach(e=>delete X[e]),Object.assign(X,G.value),q.value=!0)}async function se(){J.value=!0;try{await F.update(`Department`,X[z],X),x.success(`保存成功`),q.value=!1,await $()}finally{J.value=!1}}function ce(e){V.push({path:`/system/user-detail`,query:{UserUUID:e.UserUUID||``}})}return g(async()=>{await Promise.all([$(),ie()])}),(e,t)=>{let a=v(`Edit`),u=r,m=k,h=w,g=A,b=j,x=S,F=N,R=E,z=T,B=C,V=P,H=D,Y=O,$=M;return p(),i(I,{title:Z.value,loading:W.value},{actions:s(()=>[c(m,{type:`primary`,onClick:oe},{default:s(()=>[c(u,null,{default:s(()=>[c(a)]),_:1}),t[2]||=f(`编辑 `,-1)]),_:1})]),default:s(()=>[c(L,{title:`基本信息`,columns:2},{default:s(()=>[c(h,{label:`部门名称`},{default:s(()=>[f(n(G.value?.DeptName||`-`),1)]),_:1}),c(h,{label:`部门状态`},{default:s(()=>[c(g,{type:Q(G.value?.DeptStatus).type,size:`small`},{default:s(()=>[f(n(Q(G.value?.DeptStatus).text),1)]),_:1},8,[`type`])]),_:1}),c(h,{label:`上级部门`},{default:s(()=>[f(n(K.value||G.value?.ParentDeptUUID||`-`),1)]),_:1}),c(h,{label:`排序`},{default:s(()=>[f(n(G.value?.DeptSort??`-`),1)]),_:1}),c(h,{label:`创建时间`},{default:s(()=>[f(n(ne(G.value?.DeptCreateTime)),1)]),_:1})]),_:1}),c(b,{shadow:`never`},{header:s(()=>[...t[3]||=[f(`部门员工`,-1)]]),default:s(()=>[d(U)?(p(),i(te,{key:0,table:`UserRole`,title:`部门员工`,query:{DeptUUID:d(U)},"pk-field":`UserRoleUUID`,selectable:``,pageable:``,"on-view":ce},null,8,[`query`])):o(``,!0)]),_:1}),c($,{modelValue:q.value,"onUpdate:modelValue":t[1]||=e=>q.value=e,title:`编辑部门`,width:`600px`,"destroy-on-close":``},{footer:s(()=>[c(m,{onClick:t[0]||=e=>q.value=!1},{default:s(()=>[...t[4]||=[f(`取消`,-1)]]),_:1}),c(m,{type:`primary`,loading:J.value,onClick:se},{default:s(()=>[...t[5]||=[f(`保存`,-1)]]),_:1},8,[`loading`])]),default:s(()=>[c(Y,{model:X,"label-width":`120px`,"label-position":`right`},{default:s(()=>[(p(!0),_(l,null,y(ae.value,e=>(p(),i(H,{key:e.field,label:e.title,required:e.required},{default:s(()=>[e.type===`entityPicker`&&e.entityPicker?(p(),i(ee,{key:0,modelValue:X[e.field],"onUpdate:modelValue":t=>X[e.field]=t,config:e.entityPicker,"existing-label":X[e.field+`_label`],placeholder:e.placeholder,disabled:e.disabled,"onUpdate:label":t=>X[e.field+`_label`]=t},null,8,[`modelValue`,`onUpdate:modelValue`,`config`,`existing-label`,`placeholder`,`disabled`,`onUpdate:label`])):!e.type||e.typLine truncated
@@ -0,0 +1 @@
import{An as e,Br as t,Fn as n,Jn as r,Ln as i,Nn as a,an as o,cn as s,en as c,h as l,hn as u,ir as d,ln as f,m as p,mn as m,nr as h,pn as g,pr as _,sn as v}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as y,o as b,u as x}from"./serverScope-O8Rw8SFk.js";import{t as S}from"./date-picker-CM_15T0u.js";import{u as C}from"./use-global-config-D-dPcPvU.js";import{n as w}from"./descriptions-Cq_aE9sg.js";import{r as T,t as E}from"./select-BGsfCDCJ.js";import{n as D,t as O}from"./form-F--u6XQJ.js";import{t as k}from"./button-CPx9BSuo.js";import{t as A}from"./tag-BSnLMVgs.js";import{t as j}from"./card-Dj_UeWcA.js";import{t as M}from"./dialog-_5VhSQg5.js";import{t as ee}from"./input-number-CiNOxXL6.js";import{t as te}from"./switch-7puThziV.js";/* empty css */import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-CttyGzET.js";import"./css-D-a1H3t1.js";import"./css-49fsIjk3.js";import"./css-DmmbJMxg.js";import"./css-CysIl0tz.js";import"./css-w8-s2aei.js";import"./css-DMOjom7l.js";import"./css-Dmy6QwIc.js";import"./css-BLJI5-W_.js";import{n as ne,t as N}from"./CrudTable-B49nrpUt.js";import"./css-ByqxgOA-.js";import{t as P}from"./form-B2Pzr8Vf.js";import{t as F}from"./DetailPage-m11wfvkM.js";import{t as I}from"./InfoGrid-C1it9Z2Y.js";import{t as L}from"./useResolveUUIDs-ipmPZLo4.js";var R=`DeptUUID`,z=u({__name:`DepartmentDetail`,setup(u){let z=p(),B=l(),{resolveUUIDs:V}=L(),H=z.query.DeptUUID||``,U=d(!1),W=d(null),G=d(``),K=d(!1),q=d(!1),J=d([]),Y=h({}),X=o(()=>W.value?.DeptName||`部门详情`);function Z(e){return e===1||e===`1`?{text:`启用`,type:`success`}:e===0||e===`0`?{text:`禁用`,type:`danger`}:{text:String(e??`-`),type:`info`}}function re(e){if(!e)return`-`;let t=new Date(e);if(isNaN(t.getTime()))return String(e);let n=e=>String(e).padStart(2,`0`);return`${t.getFullYear()}-${n(t.getMonth()+1)}-${n(t.getDate())} ${n(t.getHours())}:${n(t.getMinutes())}`}async function Q(){if(!H){b.warning(`缺少 DeptUUID 参数,无法加载部门详情`);return}U.value=!0;try{let e=await P.list(`Department`,{[R]:H,pageSize:1}),t=Array.isArray(e)?e:e?.list||[],n=t.find(e=>e[R]===H)||t[0];if(!n){b.error(`未找到部门数据`);return}W.value=n,y(n.DeptName||`部门详情`),await $(n.ParentDeptUUID)}finally{U.value=!1}}async function $(e){if(!e){G.value=``;return}try{let t=await V({parentDept:{table:`Department`,uuids:[e]}});G.value=t.parentDept?.[e]||e}catch{G.value=e}}async function ie(){try{J.value=await P.getColumns(`Department`)}catch{}}let ae=o(()=>J.value.filter(e=>e.editable!==!1&&!e.hideInForm&&e.type!==`hidden`&&e.type!==`divider`&&e.type!==`html`&&e.field!==R));function oe(){W.value&&(Object.keys(Y).forEach(e=>delete Y[e]),Object.assign(Y,W.value),K.value=!0)}async function se(){q.value=!0;try{await P.update(`Department`,Y[R],Y),b.success(`保存成功`),K.value=!1,await Q()}finally{q.value=!1}}function ce(e){B.push({path:`/system/user-detail`,query:{UserUUID:e.UserUUID||``}})}return e(async()=>{await Promise.all([Q(),ie()])}),(e,o)=>{let l=i(`Edit`),u=C,d=k,p=w,h=A,y=j,b=x,P=ee,L=E,R=T,z=S,B=te,V=D,J=O,Q=M;return a(),v(F,{title:X.value,loading:U.value},{actions:r(()=>[m(d,{type:`primary`,onClick:oe},{default:r(()=>[m(u,null,{default:r(()=>[m(l)]),_:1}),o[2]||=g(`编辑 `,-1)]),_:1})]),default:r(()=>[m(I,{title:`基本信息`,columns:2},{default:r(()=>[m(p,{label:`部门名称`},{default:r(()=>[g(t(W.value?.DeptName||`-`),1)]),_:1}),m(p,{label:`部门状态`},{default:r(()=>[m(h,{type:Z(W.value?.DeptStatus).type,size:`small`},{default:r(()=>[g(t(Z(W.value?.DeptStatus).text),1)]),_:1},8,[`type`])]),_:1}),m(p,{label:`上级部门`},{default:r(()=>[g(t(G.value||W.value?.ParentDeptUUID||`-`),1)]),_:1}),m(p,{label:`排序`},{default:r(()=>[g(t(W.value?.DeptSort??`-`),1)]),_:1}),m(p,{label:`创建时间`},{default:r(()=>[g(t(re(W.value?.DeptCreateTime)),1)]),_:1})]),_:1}),m(y,{shadow:`never`},{header:r(()=>[...o[3]||=[g(`部门员工`,-1)]]),default:r(()=>[_(H)?(a(),v(N,{key:0,table:`UserRole`,title:`部门员工`,query:{DeptUUID:_(H)},"pk-field":`UserRoleUUID`,selectable:``,pageable:``,"on-view":ce},null,8,[`query`])):s(``,!0)]),_:1}),m(Q,{modelValue:K.value,"onUpdate:modelValue":o[1]||=e=>K.value=e,title:`编辑部门`,width:`600px`,"destroy-on-close":``},{footer:r(()=>[m(d,{onClick:o[0]||=e=>K.value=!1},{default:r(()=>[...o[4]||=[g(`取消`,-1)]]),_:1}),m(d,{type:`primary`,loading:q.value,onClick:se},{default:r(()=>[...o[5]||=[g(`保存`,-1)]]),_:1},8,[`loading`])]),default:r(()=>[m(J,{model:Y,"label-width":`120px`,"label-position":`right`},{default:r(()=>[(a(!0),f(c,null,n(ae.value,e=>(a(),v(V,{key:e.field,label:e.title,required:e.required},{default:r(()=>[e.type===`entityPicker`&&e.entityPicker?(a(),v(ne,{key:0,modelValue:Y[e.field],"onUpdate:modelValue":t=>Y[e.field]=t,config:e.entityPicker,"existing-label":Y[e.field+`_label`],placeholder:e.placeholder,disabled:e.disabled,"onUpdate:label":t=>Y[e.field+`_label`]=t},null,8,[`modelValue`,`onUpdate:modelValue`,`config`,`existing-label`,`placeholder`,Line truncated
@@ -1 +0,0 @@
import{$r as e,Ca as t,D as n,Gr as r,Kr as i,Mi as a,Ni as o,Qr as s,Wr as c,Zr as l,_ as u,_i as d,bi as f,h as p,qr as m,xi as h}from"./useApi-CROJJdhE-DTiQDIFh.js";import{t as g}from"./button-dPBZLBL0.js";import{t as _}from"./directive-DsCzzPS8.js";/* empty css */import"./css-DsD2Typt.js";import"./css-CttyGzET.js";import"./css-Cy-4mdDD.js";import{t as v}from"./AdminBadge-DWq3-CmW.js";var y={class:`detail-page`},b={class:`detail-header`},x={key:1,class:`detail-title`},S={class:`detail-actions`},C={class:`detail-content`},w=u(e({__name:`DetailPage`,props:{title:{},loading:{type:Boolean,default:!1},showBack:{type:Boolean,default:!0}},emits:[`back`],setup(e,{emit:u}){let w=e,T=u,E=p();function D(){T(`back`),E.back()}return(u,p)=>{let T=h(`ArrowLeft`),E=n,O=g,k=_;return o((d(),m(`div`,y,[s(v),c(`div`,b,[w.showBack?(d(),r(O,{key:0,link:``,onClick:D},{default:a(()=>[s(E,null,{default:a(()=>[s(T)]),_:1}),p[0]||=l(`返回 `,-1)]),_:1})):i(``,!0),w.title?(d(),m(`h2`,x,t(w.title),1)):i(``,!0),c(`div`,S,[f(u.$slots,`actions`,{},void 0,!0)])]),c(`div`,C,[f(u.$slots,`default`,{},void 0,!0)])])),[[k,e.loading]])}}}),[[`__scopeId`,`data-v-ebd695f5`]]);export{w as t};
@@ -0,0 +1 @@
import{Br as e,In as t,Jn as n,Ln as r,Nn as i,Yn as a,_ as o,cn as s,h as c,hn as l,ln as u,mn as d,on as f,pn as p,sn as m}from"./useApi-CROJJdhE-mMpa5RAf.js";import{u as h}from"./use-global-config-D-dPcPvU.js";import{t as g}from"./button-CPx9BSuo.js";import{t as _}from"./directive-CY41a6pJ.js";/* empty css */import"./css-DsD2Typt.js";import"./css-CttyGzET.js";import"./css-Cy-4mdDD.js";import{t as v}from"./AdminBadge-Z72F8Boy.js";var y={class:`detail-page`},b={class:`detail-header`},x={key:1,class:`detail-title`},S={class:`detail-actions`},C={class:`detail-content`},w=o(l({__name:`DetailPage`,props:{title:{},loading:{type:Boolean,default:!1},showBack:{type:Boolean,default:!0}},emits:[`back`],setup(o,{emit:l}){let w=o,T=l,E=c();function D(){T(`back`),E.back()}return(c,l)=>{let T=r(`ArrowLeft`),E=h,O=g,k=_;return a((i(),u(`div`,y,[d(v),f(`div`,b,[w.showBack?(i(),m(O,{key:0,link:``,onClick:D},{default:n(()=>[d(E,null,{default:n(()=>[d(T)]),_:1}),l[0]||=p(`返回 `,-1)]),_:1})):s(``,!0),w.title?(i(),u(`h2`,x,e(w.title),1)):s(``,!0),f(`div`,S,[t(c.$slots,`actions`,{},void 0,!0)])]),f(`div`,C,[t(c.$slots,`default`,{},void 0,!0)])])),[[k,o.loading]])}}}),[[`__scopeId`,`data-v-ebd695f5`]]);export{w as t};
+1
View File
@@ -0,0 +1 @@
import{An as e,Br as t,Dn as n,Fn as r,Jn as i,Ln as a,Lr as o,Nn as s,Yn as ee,_ as c,an as l,cn as u,en as d,hn as f,ir as p,ln as m,mn as h,on as g,pn as _,sn as v,sr as y,zr as te}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as b,o as x,u as S}from"./serverScope-O8Rw8SFk.js";import{u as C}from"./use-global-config-D-dPcPvU.js";import{_ as w,d as T,l as E}from"./router-CMu0lceh.js";import{t as ne}from"./button-CPx9BSuo.js";import{t as re}from"./directive-CY41a6pJ.js";/* empty css */import"./css-DsD2Typt.js";import"./css-CttyGzET.js";import"./css-Cy-4mdDD.js";import"./css-DmmbJMxg.js";import{t as ie}from"./AdminBadge-Z72F8Boy.js";var ae={class:`gerp-page`},oe={class:`doc-page`},se={class:`doc-header`},ce={class:`doc-title`},le={class:`doc-toolbar`},ue={class:`doc-body`},de={class:`doc-sidebar`},fe={class:`sidebar-header`},pe={class:`doc-list`},D={key:0,class:`doc-empty`},O={key:1,class:`doc-empty`},k=[`onClick`],A={class:`doc-item-title`},j={class:`doc-item-time`},M={class:`doc-editor`},N={class:`doc-title-bar`},P={class:`editor-container`},F={key:0,class:`doc-loading`},I=c(f({__name:`Editor`,setup(c){b(`文档编辑器`);let f=p([]),I=p(!1),L=p(``),R=p(``),z=null,B=p(null),V=p(``),H=p(``),U=p(!1),W=p(``),me=l(()=>{switch(W.value){case`已保存`:case`导出成功`:return`#10b981`;case`未保存`:return`#f59e0b`;case`保存失败`:case`导出失败`:return`#ef4444`;default:return`#6b7280`}}),G=y(null),K=l(()=>!!B.value&&U.value),he=l(()=>!!B.value),ge=l(()=>!!B.value);async function q(e,t={}){return E(`/API/doc/doc/${e}`,t)}async function J(e=``){I.value=!0,L.value=``;try{let t=await q(`GetDocs`,e?{keyword:e}:{});f.value=Array.isArray(t)?t:[]}catch(e){L.value=e?.message||`加载失败`,f.value=[]}finally{I.value=!1}}async function Y(e){if(U.value&&B.value)try{await w.confirm(`当前文档未保存,是否丢弃改动?`,`提示`,{type:`warning`,confirmButtonText:`丢弃`,cancelButtonText:`取消`})}catch{return}B.value=e,U.value=!1;try{let t=await q(`GetDoc`,{DocUUID:e});V.value=t.DocTitle||``,H.value=t.DocContent||``,W.value=``}catch(e){x.error(`加载文档失败: `+(e?.message||``))}}async function X(){if(U.value&&B.value)try{await w.confirm(`当前文档未保存,是否丢弃改动?`,`提示`,{type:`warning`,confirmButtonText:`丢弃`,cancelButtonText:`取消`})}catch{return}let e;try{e=(await w.prompt(`请输入文档标题:`,`新建文档`,{confirmButtonText:`确定`,cancelButtonText:`取消`,inputValue:`未命名文档`,inputValidator:e=>e&&e.trim()?!0:`标题不能为空`})).value.trim()}catch{return}try{let t=await q(`AddDoc`,{DocTitle:e,DocContent:``});await J(R.value),t?.DocUUID&&await Y(t.DocUUID)}catch(e){x.error(`新建失败: `+(e?.message||``))}}async function Z(){if(!B.value||!G.value)return;let e=V.value.trim();if(!e){x.warning(`请输入文档标题`);return}let t=G.value.getContent();W.value=`保存中...`;try{await q(`ModifyDocSettings`,{DocUUID:B.value,DocTitle:e,DocContent:t}),U.value=!1,W.value=`已保存`,await J(R.value)}catch(e){W.value=`保存失败`,x.error(`保存失败: `+(e?.message||``))}}async function _e(){if(B.value){W.value=`导出中...`;try{let e=await T.post(`/API/doc/doc/ExportDocx`,{DocUUID:B.value},{responseType:`blob`}),t=e.data,n=e.headers[`content-disposition`]||``,r=`document.docx`,i=n.match(/filename="?([^"]+)"?/);i&&(r=decodeURIComponent(i[1]));let a=URL.createObjectURL(t),o=document.createElement(`a`);o.href=a,o.download=r,document.body.appendChild(o),o.click(),document.body.removeChild(o),URL.revokeObjectURL(a),W.value=`导出成功`}catch(e){W.value=`导出失败`,x.error(`导出失败: `+(e?.message||``))}}}async function ve(){if(B.value){try{await w.confirm(`确定删除此文档?此操作不可撤销。`,`危险操作`,{type:`error`,confirmButtonText:`删除`,cancelButtonText:`取消`,confirmButtonClass:`el-button--danger`})}catch{return}try{await q(`DeleteDoc`,{DocUUID:B.value}),B.value=null,V.value=``,H.value=``,U.value=!1,W.value=``,await J(R.value)}catch(e){x.error(`删除失败: `+(e?.message||``))}}}function Q(){U.value=!0,W.value=`未保存`}function ye(){z&&clearTimeout(z),z=setTimeout(()=>{J(R.value.trim())},300)}function be(){J(R.value.trim())}function $(e){(e.ctrlKey||e.metaKey)&&e.key===`s`&&(e.preventDefault(),K.value&&Z())}e(()=>{J(),document.addEventListener(`keydown`,$)}),n(()=>{document.removeEventListener(`keydown`,$),z&&clearTimeout(z),G.value&&=(G.value.remove(),null)});function xe(e){return e?new Date(e).toLocaleString(`zh-CN`):``}return(e,n)=>{let c=a(`Document`),l=C,p=a(`Plus`),y=ne,b=a(`Save`),x=a(`Download`),w=a(`Delete`),T=a(`Search`),E=S,z=a(`Refresh`),U=re;return s(),m(`div`,ae,[h(ie),g(`div`,oe,[g(`div`,se,[g(`h1`,ce,[h(l,null,{default:i(()=>[h(c)]),_:1}),n[3]||=_(` 文档编辑器 `,-1)]),n[8]||=g(`div`,{class:`spacer`},null,-1),g(`div`,le,[h(y,{type:`primary`,onClick:X},{default:i(()=>[h(l,null,{default:i(()=>[h(p)]),_:1}),n[4]||=_(`\xA0新建 `,-1)]),_:1}),h(y,{disabled:!K.value,onClick:Z},{default:i(Line truncated
-1
View File
@@ -1 +0,0 @@
import{$r as e,Ca as t,D as n,Gr as r,Hi as i,Kr as a,Mi as o,Ni as s,Qr as c,Rr as l,Sa as u,Ur as d,Wi as f,Wr as p,Zr as m,_ as h,_i as g,ba as _,di as v,mi as y,qr as b,xi as x,yi as ee}from"./useApi-CROJJdhE-DTiQDIFh.js";import{a as S,o as C,u as w}from"./serverScope-CLCA_jyd.js";import{d as T,g as E,l as D}from"./router-Bz7E4dLH.js";import{t as te}from"./button-dPBZLBL0.js";import{t as ne}from"./directive-DsCzzPS8.js";/* empty css */import"./css-DsD2Typt.js";import"./css-CttyGzET.js";import"./css-Cy-4mdDD.js";import"./css-DmmbJMxg.js";import{t as re}from"./AdminBadge-DWq3-CmW.js";var ie={class:`gerp-page`},ae={class:`doc-page`},oe={class:`doc-header`},se={class:`doc-title`},ce={class:`doc-toolbar`},le={class:`doc-body`},ue={class:`doc-sidebar`},de={class:`sidebar-header`},fe={class:`doc-list`},pe={key:0,class:`doc-empty`},O={key:1,class:`doc-empty`},k=[`onClick`],A={class:`doc-item-title`},j={class:`doc-item-time`},M={class:`doc-editor`},N={class:`doc-title-bar`},P={class:`editor-container`},F={key:0,class:`doc-loading`},I=h(e({__name:`Editor`,setup(e){S(`文档编辑器`);let h=i([]),I=i(!1),L=i(``),R=i(``),z=null,B=i(null),V=i(``),H=i(``),U=i(!1),W=i(``),me=d(()=>{switch(W.value){case`已保存`:case`导出成功`:return`#10b981`;case`未保存`:return`#f59e0b`;case`保存失败`:case`导出失败`:return`#ef4444`;default:return`#6b7280`}}),G=f(null),K=d(()=>!!B.value&&U.value),he=d(()=>!!B.value),ge=d(()=>!!B.value);async function q(e,t={}){return D(`/API/doc/doc/${e}`,t)}async function J(e=``){I.value=!0,L.value=``;try{let t=await q(`GetDocs`,e?{keyword:e}:{});h.value=Array.isArray(t)?t:[]}catch(e){L.value=e?.message||`加载失败`,h.value=[]}finally{I.value=!1}}async function Y(e){if(U.value&&B.value)try{await E.confirm(`当前文档未保存,是否丢弃改动?`,`提示`,{type:`warning`,confirmButtonText:`丢弃`,cancelButtonText:`取消`})}catch{return}B.value=e,U.value=!1;try{let t=await q(`GetDoc`,{DocUUID:e});V.value=t.DocTitle||``,H.value=t.DocContent||``,W.value=``}catch(e){C.error(`加载文档失败: `+(e?.message||``))}}async function X(){if(U.value&&B.value)try{await E.confirm(`当前文档未保存,是否丢弃改动?`,`提示`,{type:`warning`,confirmButtonText:`丢弃`,cancelButtonText:`取消`})}catch{return}let e;try{e=(await E.prompt(`请输入文档标题:`,`新建文档`,{confirmButtonText:`确定`,cancelButtonText:`取消`,inputValue:`未命名文档`,inputValidator:e=>e&&e.trim()?!0:`标题不能为空`})).value.trim()}catch{return}try{let t=await q(`AddDoc`,{DocTitle:e,DocContent:``});await J(R.value),t?.DocUUID&&await Y(t.DocUUID)}catch(e){C.error(`新建失败: `+(e?.message||``))}}async function Z(){if(!B.value||!G.value)return;let e=V.value.trim();if(!e){C.warning(`请输入文档标题`);return}let t=G.value.getContent();W.value=`保存中...`;try{await q(`ModifyDocSettings`,{DocUUID:B.value,DocTitle:e,DocContent:t}),U.value=!1,W.value=`已保存`,await J(R.value)}catch(e){W.value=`保存失败`,C.error(`保存失败: `+(e?.message||``))}}async function _e(){if(B.value){W.value=`导出中...`;try{let e=await T.post(`/API/doc/doc/ExportDocx`,{DocUUID:B.value},{responseType:`blob`}),t=e.data,n=e.headers[`content-disposition`]||``,r=`document.docx`,i=n.match(/filename="?([^"]+)"?/);i&&(r=decodeURIComponent(i[1]));let a=URL.createObjectURL(t),o=document.createElement(`a`);o.href=a,o.download=r,document.body.appendChild(o),o.click(),document.body.removeChild(o),URL.revokeObjectURL(a),W.value=`导出成功`}catch(e){W.value=`导出失败`,C.error(`导出失败: `+(e?.message||``))}}}async function ve(){if(B.value){try{await E.confirm(`确定删除此文档?此操作不可撤销。`,`危险操作`,{type:`error`,confirmButtonText:`删除`,cancelButtonText:`取消`,confirmButtonClass:`el-button--danger`})}catch{return}try{await q(`DeleteDoc`,{DocUUID:B.value}),B.value=null,V.value=``,H.value=``,U.value=!1,W.value=``,await J(R.value)}catch(e){C.error(`删除失败: `+(e?.message||``))}}}function Q(){U.value=!0,W.value=`未保存`}function ye(){z&&clearTimeout(z),z=setTimeout(()=>{J(R.value.trim())},300)}function be(){J(R.value.trim())}function $(e){(e.ctrlKey||e.metaKey)&&e.key===`s`&&(e.preventDefault(),K.value&&Z())}y(()=>{J(),document.addEventListener(`keydown`,$)}),v(()=>{document.removeEventListener(`keydown`,$),z&&clearTimeout(z),G.value&&=(G.value.remove(),null)});function xe(e){return e?new Date(e).toLocaleString(`zh-CN`):``}return(e,i)=>{let d=x(`Document`),f=n,v=x(`Plus`),y=te,S=x(`Save`),C=x(`Download`),T=x(`Delete`),E=x(`Search`),D=w,z=x(`Refresh`),U=ne;return g(),b(`div`,ie,[c(re),p(`div`,ae,[p(`div`,oe,[p(`h1`,se,[c(f,null,{default:o(()=>[c(d)]),_:1}),i[3]||=m(` 文档编辑器 `,-1)]),i[8]||=p(`div`,{class:`spacer`},null,-1),p(`div`,ce,[c(y,{type:`primary`,onClick:X},{default:o(()=>[c(f,null,{default:o(()=>[c(v)]),_:1}),i[4]||=m(`\xA0新建 `,-1)]),_:1}),c(y,{disabled:!K.value,onClick:Z},{default:o(()=>[c(f,null,{default:o(()=>[c(S)]),_:1}),i[Line truncated
@@ -1 +0,0 @@
import{$r as e,Bi as t,Ca as n,D as r,Gr as i,Hi as a,Kr as o,Mi as s,Qr as c,Rr as l,Sa as u,Ur as d,Wr as f,Xi as p,Zr as m,_ as h,_i as g,h as _,m as v,mi as y,qr as b,xi as x,yi as S}from"./useApi-CROJJdhE-DTiQDIFh.js";import{a as C,n as w,o as T,u as ee}from"./serverScope-CLCA_jyd.js";import{t as te}from"./date-picker-DUqMIidt.js";import{n as ne,t as re}from"./descriptions-DdoyLmWE.js";import{r as ie,t as E}from"./select-VtLnfNTa.js";import{s as D}from"./router-Bz7E4dLH.js";import{n as ae,t as O}from"./form-DkCs-bRK.js";import{t as oe}from"./alert-BVfR0rW0.js";import{t as se}from"./avatar-DZmlfzDv.js";import{t as k}from"./button-dPBZLBL0.js";import{t as A}from"./tag-DsjHDKbM.js";import{t as j}from"./card-CKxtkBHA.js";import{t as ce}from"./dialog-2NPB22v1.js";import{t as le}from"./input-number-BYrgUFpo.js";import{t as ue}from"./switch-TyRYNjQq.js";/* empty css */import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-CttyGzET.js";import"./css-D-a1H3t1.js";import"./css-49fsIjk3.js";import"./css-DmmbJMxg.js";import"./css-CysIl0tz.js";import"./css-w8-s2aei.js";import"./css-DMOjom7l.js";import"./css-Dmy6QwIc.js";import"./AdminBadge-DWq3-CmW.js";import"./css-BLJI5-W_.js";import{t as M}from"./CrudTable-0btzlQyb.js";import"./css-ByqxgOA-.js";import{t as N}from"./form-DjuqPK5m.js";import{t as de}from"./DetailPage-D_nlVGtk.js";import{t as fe}from"./InfoGrid-BuM8q62h.js";var pe={key:1,class:`profile-row`},P={class:`profile-info`},F={key:1,style:{color:`#6b7280`}},I={key:1},L=`UserUUID`,R=h(e({__name:`EmployeeDetail`,setup(e){let h=v(),R=_(),z=a(!1),B=a(null),V=a(null),H=a(``),U=h.query.UserUUID||``,W={0:{text:`禁用`,type:`danger`},1:{text:`启用`,type:`success`}},me=d(()=>{let e=new URLSearchParams;e.set(`UserUUID`,U);let t=w();return t.server&&e.set(`server`,t.server),t.admin_verify&&e.set(`admin_verify`,t.admin_verify),`/Query/GetELTUserAvatar?${e.toString()}`});function G(e){return e==null||e===``?``:String(e)}function K(e){if(!e)return`-`;let t=String(e),n=new Date(t);if(isNaN(n.getTime()))return t;let r=e=>String(e).padStart(2,`0`);return`${n.getFullYear()}-${r(n.getMonth()+1)}-${r(n.getDate())} ${r(n.getHours())}:${r(n.getMinutes())}:${r(n.getSeconds())}`}function q(e){return Array.isArray(e)?e:e?.list||[]}function J(e){return e===1||e===!0||e===`1`||e===`true`}async function Y(){if(!U){H.value=`缺少 UserUUID 参数,无法加载员工详情。`;return}z.value=!0,H.value=``,V.value=null;try{let e=q(await N.list(`User`,{UserUUID:U,pageSize:1})),t=e.find(e=>e.UserUUID===U)||e[0];if(!t){H.value=`未找到用户数据`;return}B.value=t,C(G(t.UserName)||`员工详情`);try{V.value=await D(`/API/SiteUserManagement/GetUser2FAInfo`,{UserUUID:U})}catch{V.value=null}}catch(e){H.value=`加载失败: ${e instanceof Error?e.message:String(e)}`}finally{z.value=!1}}function he(e){R.push({path:`/company/department-detail`,query:{DeptUUID:G(e.DeptUUID)}})}let X=a(!1),Z=a(!1),Q=a([]),$=t({}),ge=d(()=>Q.value.filter(e=>e.editable!==!1&&!e.hideInForm&&e.type!==`hidden`&&e.type!==`divider`&&e.type!==`html`&&e.field!==L));async function _e(){if(B.value){try{Q.value.length||(Q.value=await N.getColumns(`User`))}catch{Q.value=[]}Object.keys($).forEach(e=>delete $[e]),Object.assign($,B.value),X.value=!0}}async function ve(){if(B.value){Z.value=!0;try{await N.update(`User`,B.value[L],{...$}),T.success(`保存成功`),X.value=!1,await Y()}catch{}finally{Z.value=!1}}}return y(Y),(e,t)=>{let a=x(`Edit`),d=r,h=k,_=oe,v=x(`User`),y=se,C=ne,w=A,T=re,D=j,N=ee,L=le,R=E,q=ie,Y=te,Q=ue,ye=ae,be=O,xe=ce;return g(),i(de,{title:B.value?.UserName||`员工详情`,loading:z.value},{actions:s(()=>[c(h,{type:`primary`,disabled:!B.value,onClick:_e},{default:s(()=>[c(d,null,{default:s(()=>[c(a)]),_:1}),t[2]||=m(`编辑 `,-1)]),_:1},8,[`disabled`])]),default:s(()=>[H.value?(g(),i(_,{key:0,type:`error`,title:H.value,"show-icon":``,closable:!1},null,8,[`title`])):o(``,!0),B.value?(g(),b(`div`,pe,[c(y,{size:96,src:me.value,class:`profile-avatar`},{default:s(()=>[c(d,{size:32},{default:s(()=>[c(v)]),_:1})]),_:1},8,[`src`]),f(`div`,P,[c(T,{title:`基本信息`,column:2,border:``},{default:s(()=>[c(C,{label:`用户名`},{default:s(()=>[m(n(G(B.value.UserName)||`-`),1)]),_:1}),c(C,{label:`真实姓名`},{default:s(()=>[m(n(G(B.value.UserRealName)||`-`),1)]),_:1}),c(C,{label:`邮箱`},{default:s(()=>[m(n(G(B.value.UserEmail)||`-`),1)]),_:1}),c(C,{label:`电话`},{default:s(()=>[m(n(G(B.value.UserTele)||`-`),1)]),_:1}),c(C,{label:`账号状态`},{default:s(()=>[c(w,{type:W[String(B.value.UserAccountLicense)]?.type||`info`,size:`small`},{default:s(()=>[m(n(W[String(B.value.UserAccountLicense)]?.text??B.value.UserAccountLicense),1)]),_:1},8,[`type`])]),_:1}),c(C,{label:`是否员工`},{default:s(()=>[f(`span`,{style:u({color:J(B.value.IsStaff)?`#166534`:`#991b1b`})},n(J(B.value.IsStaff)?`是`:`否`),5)]),_:1}),c(C,{label:`创建时间`},{default:s(()=>[m(n(K(B.value.UserCreateTime)),1)]),_:1})]),_:1})])])):o(``,!0),B.value?(g(),i(fe,{key:Line truncated
@@ -0,0 +1 @@
import{An as e,Br as t,Fn as n,Jn as r,Ln as i,Nn as a,_ as o,an as s,cn as c,en as l,h as u,hn as d,ir as f,ln as p,m,mn as h,nr as g,on as _,pn as v,pr as y,sn as b,zr as x}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as S,n as C,o as w,u as ee}from"./serverScope-O8Rw8SFk.js";import{t as te}from"./date-picker-CM_15T0u.js";import{u as ne}from"./use-global-config-D-dPcPvU.js";import{n as re,t as ie}from"./descriptions-Cq_aE9sg.js";import{r as ae,t as oe}from"./select-BGsfCDCJ.js";import{s as T}from"./router-CMu0lceh.js";import{n as E,t as se}from"./form-F--u6XQJ.js";import{t as D}from"./alert-BpFV-0dO.js";import{t as ce}from"./avatar-DXM6bmhO.js";import{t as le}from"./button-CPx9BSuo.js";import{t as O}from"./tag-BSnLMVgs.js";import{t as k}from"./card-Dj_UeWcA.js";import{t as A}from"./dialog-_5VhSQg5.js";import{t as ue}from"./input-number-CiNOxXL6.js";import{t as de}from"./switch-7puThziV.js";/* empty css */import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-CttyGzET.js";import"./css-D-a1H3t1.js";import"./css-49fsIjk3.js";import"./css-DmmbJMxg.js";import"./css-CysIl0tz.js";import"./css-w8-s2aei.js";import"./css-DMOjom7l.js";import"./css-Dmy6QwIc.js";import"./AdminBadge-Z72F8Boy.js";import"./css-BLJI5-W_.js";import{t as j}from"./CrudTable-B49nrpUt.js";import"./css-ByqxgOA-.js";import{t as M}from"./form-B2Pzr8Vf.js";import{t as fe}from"./DetailPage-m11wfvkM.js";import{t as pe}from"./InfoGrid-C1it9Z2Y.js";var N={key:1,class:`profile-row`},P={class:`profile-info`},F={key:1,style:{color:`#6b7280`}},I={key:1},L=`UserUUID`,R=o(d({__name:`EmployeeDetail`,setup(o){let d=m(),R=u(),z=f(!1),B=f(null),V=f(null),H=f(``),U=d.query.UserUUID||``,W={0:{text:`禁用`,type:`danger`},1:{text:`启用`,type:`success`}},me=s(()=>{let e=new URLSearchParams;e.set(`UserUUID`,U);let t=C();return t.server&&e.set(`server`,t.server),t.admin_verify&&e.set(`admin_verify`,t.admin_verify),`/Query/GetELTUserAvatar?${e.toString()}`});function G(e){return e==null||e===``?``:String(e)}function K(e){if(!e)return`-`;let t=String(e),n=new Date(t);if(isNaN(n.getTime()))return t;let r=e=>String(e).padStart(2,`0`);return`${n.getFullYear()}-${r(n.getMonth()+1)}-${r(n.getDate())} ${r(n.getHours())}:${r(n.getMinutes())}:${r(n.getSeconds())}`}function q(e){return Array.isArray(e)?e:e?.list||[]}function J(e){return e===1||e===!0||e===`1`||e===`true`}async function Y(){if(!U){H.value=`缺少 UserUUID 参数,无法加载员工详情。`;return}z.value=!0,H.value=``,V.value=null;try{let e=q(await M.list(`User`,{UserUUID:U,pageSize:1})),t=e.find(e=>e.UserUUID===U)||e[0];if(!t){H.value=`未找到用户数据`;return}B.value=t,S(G(t.UserName)||`员工详情`);try{V.value=await T(`/API/SiteUserManagement/GetUser2FAInfo`,{UserUUID:U})}catch{V.value=null}}catch(e){H.value=`加载失败: ${e instanceof Error?e.message:String(e)}`}finally{z.value=!1}}function he(e){R.push({path:`/company/department-detail`,query:{DeptUUID:G(e.DeptUUID)}})}let X=f(!1),Z=f(!1),Q=f([]),$=g({}),ge=s(()=>Q.value.filter(e=>e.editable!==!1&&!e.hideInForm&&e.type!==`hidden`&&e.type!==`divider`&&e.type!==`html`&&e.field!==L));async function _e(){if(B.value){try{Q.value.length||(Q.value=await M.getColumns(`User`))}catch{Q.value=[]}Object.keys($).forEach(e=>delete $[e]),Object.assign($,B.value),X.value=!0}}async function ve(){if(B.value){Z.value=!0;try{await M.update(`User`,B.value[L],{...$}),w.success(`保存成功`),X.value=!1,await Y()}catch{}finally{Z.value=!1}}}return e(Y),(e,o)=>{let s=i(`Edit`),u=ne,d=le,f=D,m=i(`User`),g=ce,S=re,C=O,w=ie,T=k,M=ee,L=ue,R=oe,q=ae,Y=te,Q=de,ye=E,be=se,xe=A;return a(),b(fe,{title:B.value?.UserName||`员工详情`,loading:z.value},{actions:r(()=>[h(d,{type:`primary`,disabled:!B.value,onClick:_e},{default:r(()=>[h(u,null,{default:r(()=>[h(s)]),_:1}),o[2]||=v(`编辑 `,-1)]),_:1},8,[`disabled`])]),default:r(()=>[H.value?(a(),b(f,{key:0,type:`error`,title:H.value,"show-icon":``,closable:!1},null,8,[`title`])):c(``,!0),B.value?(a(),p(`div`,N,[h(g,{size:96,src:me.value,class:`profile-avatar`},{default:r(()=>[h(u,{size:32},{default:r(()=>[h(m)]),_:1})]),_:1},8,[`src`]),_(`div`,P,[h(w,{title:`基本信息`,column:2,border:``},{default:r(()=>[h(S,{label:`用户名`},{default:r(()=>[v(t(G(B.value.UserName)||`-`),1)]),_:1}),h(S,{label:`真实姓名`},{default:r(()=>[v(t(G(B.value.UserRealName)||`-`),1)]),_:1}),h(S,{label:`邮箱`},{default:r(()=>[v(t(G(B.value.UserEmail)||`-`),1)]),_:1}),h(S,{label:`电话`},{default:r(()=>[v(t(G(B.value.UserTele)||`-`),1)]),_:1}),h(S,{label:`账号状态`},{default:r(()=>[h(C,{type:W[String(B.value.UserAccountLicense)]?.type||`info`,size:`small`},{default:r(()=>[v(t(W[String(B.value.UserAccountLicense)]?.text??B.value.UserAccountLicense),1)]),_:1},8,[`type`])]),_:1}),h(S,{label:`是否员工`},{default:r(()=>[_(`span`,{style:x({color:J(B.value.IsStaff)?`#166534`:`#991b1b`})},t(J(B.value.IsStaff)?`是`:`否`),5)]),_:1}),h(S,{label:`创建时间`},{default:r(()=>[v(t(K(B.value.UserCreateTime)),1)]),_:1})]),_:1Line truncated
@@ -1 +1 @@
import{$r as e,Bi as t,Ca as n,Gr as r,Hi as i,Kr as a,Mi as o,Qr as s,Rr as c,Ur as l,Wr as u,Xi as d,Xr as ee,Zr as f,_ as p,_i as m,ba as h,mi as g,qr as _,yi as v}from"./useApi-CROJJdhE-DTiQDIFh.js";import{a as y,o as b,u as x}from"./serverScope-CLCA_jyd.js";import{t as S}from"./date-picker-DUqMIidt.js";import{r as te,t as ne}from"./select-VtLnfNTa.js";import{t as re}from"./button-dPBZLBL0.js";import{t as ie}from"./input-number-BYrgUFpo.js";import{n as ae,t as oe}from"./steps-BGxdt4aC.js";/* empty css */import"./css-DsD2Typt.js";import"./css-DmmbJMxg.js";import"./css-w8-s2aei.js";import"./css-Dmy6QwIc.js";import"./css-ByqxgOA-.js";import{t as C}from"./form-DjuqPK5m.js";var se={class:`ep-create-page`},ce={class:`step-card`},w={key:0,class:`start-page`},T={key:1,class:`step-form`},E={class:`step-header`},D={class:`step-title`},O={class:`step-desc`},k={class:`form-body`},A={class:`section-title`},j={class:`section-grid`},M={class:`form-label`},N={key:0,class:`required`},P={class:`step-actions`},F={key:2,class:`preview-page`},I={class:`preview-body`},L={class:`preview-section-title`},R={class:`preview-grid`},z={class:`preview-label`},le={class:`preview-value`},B={class:`step-actions`},V={key:3,class:`success-page`},H={class:`success-actions`},U=p(e({__name:`EpCreate`,setup(e){let p=[{title:`企业名称`,icon:`fa-font`,desc:`填写企业名称和品牌信息`,sections:[{name:`名称信息`,fields:[{id:`EnterpriseName`,label:`企业全称`,type:`text`,required:!0,placeholder:`请输入营业执照上的企业全称`},{id:`EnterpriseShortName`,label:`企业简称`,type:`text`,placeholder:`请输入企业简称`},{id:`EnterpriseAbbr`,label:`企业缩写`,type:`text`,placeholder:`请输入企业英文缩写`},{id:`FormerName`,label:`曾用名`,type:`text`,placeholder:`请输入企业曾用名(如有)`}]},{name:`品牌信息`,fields:[{id:`BrandName`,label:`品牌名称`,type:`text`,placeholder:`请输入品牌名称`},{id:`EnglishName`,label:`英文名称`,type:`text`,placeholder:`请输入英文名称`},{id:`BrandLogo`,label:`品牌Logo链接`,type:`text`,placeholder:`请输入品牌Logo URL`},{id:`BrandSlogan`,label:`品牌口号`,type:`text`,placeholder:`请输入品牌口号`}]},{name:`企业简介`,fields:[{id:`EnterpriseIntro`,label:`企业简介`,type:`textarea`,fullWidth:!0,placeholder:`请输入企业简介(200字以内)`}]}]},{title:`企业编码`,icon:`fa-barcode`,desc:`填写企业各类编码信息`,sections:[{name:`工商编码`,fields:[{id:`CreditCode`,label:`统一社会信用代码`,type:`text`,required:!0,maxlength:18,placeholder:`请输入18位信用代码`},{id:`OrgCode`,label:`组织机构代码`,type:`text`,placeholder:`请输入组织机构代码`},{id:`RegistrationNo`,label:`工商注册号`,type:`text`,placeholder:`请输入工商注册号`},{id:`BusinessLicenseNo`,label:`营业执照编号`,type:`text`,placeholder:`请输入营业执照编号`}]},{name:`税务编码`,fields:[{id:`TaxpayerId`,label:`纳税人识别号`,type:`text`,placeholder:`请输入纳税人识别号`},{id:`TaxRegNo`,label:`税务登记号`,type:`text`,placeholder:`请输入税务登记号`},{id:`TaxpayerType`,label:`纳税人类型`,type:`select`,options:[{value:`general`,label:`一般纳税人`},{value:`small`,label:`小规模纳税人`},{value:`individual`,label:`个体工商户`}]},{id:`TaxAuthority`,label:`主管税务机关`,type:`text`,placeholder:`请输入主管税务机关`}]},{name:`其他编码`,fields:[{id:`ImportExportCode`,label:`进出口企业代码`,type:`text`,placeholder:`请输入进出口企业代码`},{id:`CustomsCode`,label:`海关编码`,type:`text`,placeholder:`请输入海关编码`},{id:`SocialSecurityNo`,label:`社保登记号`,type:`text`,placeholder:`请输入社保登记号`},{id:`HousingFundNo`,label:`公积金登记号`,type:`text`,placeholder:`请输入公积金登记号`}]},{name:`资质证书`,fields:[{id:`CertificateType`,label:`资质类型`,type:`select`,options:[{value:`iso9001`,label:`ISO9001质量管理体系`},{value:`iso14001`,label:`ISO14001环境管理体系`},{value:`iso45001`,label:`ISO45001职业健康安全`},{value:`highTech`,label:`高新技术企业`},{value:`other`,label:`其他`}]},{id:`CertificateNo`,label:`证书编号`,type:`text`,placeholder:`请输入证书编号`},{id:`CertificateExpiry`,label:`证书有效期`,type:`date`}]}]},{title:`企业分类`,icon:`fa-tags`,desc:`选择企业类型、行业和规模`,sections:[{name:`企业类型`,fields:[{id:`EnterpriseType`,label:`企业类型`,type:`select`,required:!0,options:[{value:`limited`,label:`有限责任公司`},{value:`joint`,label:`股份有限公司`},{value:`private`,label:`个人独资企业`},{value:`partnership`,label:`合伙企业`},{value:`state`,label:`国有企业`},{value:`collective`,label:`集体企业`},{value:`foreign`,label:`外商投资企业`},{value:`hkMacaoTaiwan`,label:`港澳台投资企业`}]},{id:`OwnershipType`,label:`所有制性质`,type:`select`,options:[Line truncated
import{An as e,Br as t,Fn as n,Jn as r,Lr as i,Nn as a,_ as o,an as s,cn as c,en as l,fn as ee,hn as u,ir as d,ln as f,mn as p,nr as m,on as h,pn as g,pr as _,sn as v}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as y,o as b,u as x}from"./serverScope-O8Rw8SFk.js";import{t as S}from"./date-picker-CM_15T0u.js";import{r as te,t as ne}from"./select-BGsfCDCJ.js";import{t as re}from"./button-CPx9BSuo.js";import{t as ie}from"./input-number-CiNOxXL6.js";import{n as ae,t as oe}from"./steps-C4-7Ybf-.js";/* empty css */import"./css-DsD2Typt.js";import"./css-DmmbJMxg.js";import"./css-w8-s2aei.js";import"./css-Dmy6QwIc.js";import"./css-ByqxgOA-.js";import{t as C}from"./form-B2Pzr8Vf.js";var se={class:`ep-create-page`},ce={class:`step-card`},w={key:0,class:`start-page`},T={key:1,class:`step-form`},E={class:`step-header`},D={class:`step-title`},O={class:`step-desc`},k={class:`form-body`},A={class:`section-title`},j={class:`section-grid`},M={class:`form-label`},N={key:0,class:`required`},P={class:`step-actions`},F={key:2,class:`preview-page`},I={class:`preview-body`},L={class:`preview-section-title`},R={class:`preview-grid`},z={class:`preview-label`},le={class:`preview-value`},B={class:`step-actions`},V={key:3,class:`success-page`},H={class:`success-actions`},U=o(u({__name:`EpCreate`,setup(o){let u=[{title:`企业名称`,icon:`fa-font`,desc:`填写企业名称和品牌信息`,sections:[{name:`名称信息`,fields:[{id:`EnterpriseName`,label:`企业全称`,type:`text`,required:!0,placeholder:`请输入营业执照上的企业全称`},{id:`EnterpriseShortName`,label:`企业简称`,type:`text`,placeholder:`请输入企业简称`},{id:`EnterpriseAbbr`,label:`企业缩写`,type:`text`,placeholder:`请输入企业英文缩写`},{id:`FormerName`,label:`曾用名`,type:`text`,placeholder:`请输入企业曾用名(如有)`}]},{name:`品牌信息`,fields:[{id:`BrandName`,label:`品牌名称`,type:`text`,placeholder:`请输入品牌名称`},{id:`EnglishName`,label:`英文名称`,type:`text`,placeholder:`请输入英文名称`},{id:`BrandLogo`,label:`品牌Logo链接`,type:`text`,placeholder:`请输入品牌Logo URL`},{id:`BrandSlogan`,label:`品牌口号`,type:`text`,placeholder:`请输入品牌口号`}]},{name:`企业简介`,fields:[{id:`EnterpriseIntro`,label:`企业简介`,type:`textarea`,fullWidth:!0,placeholder:`请输入企业简介(200字以内)`}]}]},{title:`企业编码`,icon:`fa-barcode`,desc:`填写企业各类编码信息`,sections:[{name:`工商编码`,fields:[{id:`CreditCode`,label:`统一社会信用代码`,type:`text`,required:!0,maxlength:18,placeholder:`请输入18位信用代码`},{id:`OrgCode`,label:`组织机构代码`,type:`text`,placeholder:`请输入组织机构代码`},{id:`RegistrationNo`,label:`工商注册号`,type:`text`,placeholder:`请输入工商注册号`},{id:`BusinessLicenseNo`,label:`营业执照编号`,type:`text`,placeholder:`请输入营业执照编号`}]},{name:`税务编码`,fields:[{id:`TaxpayerId`,label:`纳税人识别号`,type:`text`,placeholder:`请输入纳税人识别号`},{id:`TaxRegNo`,label:`税务登记号`,type:`text`,placeholder:`请输入税务登记号`},{id:`TaxpayerType`,label:`纳税人类型`,type:`select`,options:[{value:`general`,label:`一般纳税人`},{value:`small`,label:`小规模纳税人`},{value:`individual`,label:`个体工商户`}]},{id:`TaxAuthority`,label:`主管税务机关`,type:`text`,placeholder:`请输入主管税务机关`}]},{name:`其他编码`,fields:[{id:`ImportExportCode`,label:`进出口企业代码`,type:`text`,placeholder:`请输入进出口企业代码`},{id:`CustomsCode`,label:`海关编码`,type:`text`,placeholder:`请输入海关编码`},{id:`SocialSecurityNo`,label:`社保登记号`,type:`text`,placeholder:`请输入社保登记号`},{id:`HousingFundNo`,label:`公积金登记号`,type:`text`,placeholder:`请输入公积金登记号`}]},{name:`资质证书`,fields:[{id:`CertificateType`,label:`资质类型`,type:`select`,options:[{value:`iso9001`,label:`ISO9001质量管理体系`},{value:`iso14001`,label:`ISO14001环境管理体系`},{value:`iso45001`,label:`ISO45001职业健康安全`},{value:`highTech`,label:`高新技术企业`},{value:`other`,label:`其他`}]},{id:`CertificateNo`,label:`证书编号`,type:`text`,placeholder:`请输入证书编号`},{id:`CertificateExpiry`,label:`证书有效期`,type:`date`}]}]},{title:`企业分类`,icon:`fa-tags`,desc:`选择企业类型、行业和规模`,sections:[{name:`企业类型`,fields:[{id:`EnterpriseType`,label:`企业类型`,type:`select`,required:!0,options:[{value:`limited`,label:`有限责任公司`},{value:`joint`,label:`股份有限公司`},{value:`private`,label:`个人独资企业`},{value:`partnership`,label:`合伙企业`},{value:`state`,label:`国有企业`},{value:`collective`,label:`集体企业`},{value:`foreign`,label:`外商投资企业`},{value:`hkMacaoTaiwan`,label:`港澳台投资企业`}]},{id:`OwnershipType`,label:`所有制性质`,type:`select`,options:[Line truncated
@@ -1 +0,0 @@
import{$r as e,Gr as t,Mi as n,_ as r,_i as i,bi as a}from"./useApi-CROJJdhE-DTiQDIFh.js";import{t as o}from"./descriptions-DdoyLmWE.js";/* empty css */import"./css-CysIl0tz.js";var s=r(e({__name:`InfoGrid`,props:{columns:{},title:{},border:{type:Boolean}},setup(e){return(r,s)=>{let c=o;return i(),t(c,{column:e.columns||2,title:e.title,border:e.border??!0,class:`info-grid`},{default:n(()=>[a(r.$slots,`default`,{},void 0,!0)]),_:3},8,[`column`,`title`,`border`])}}}),[[`__scopeId`,`data-v-9bc3752b`]]);export{s as t};
@@ -0,0 +1 @@
import{In as e,Jn as t,Nn as n,_ as r,hn as i,sn as a}from"./useApi-CROJJdhE-mMpa5RAf.js";import{t as o}from"./descriptions-Cq_aE9sg.js";/* empty css */import"./css-CysIl0tz.js";var s=r(i({__name:`InfoGrid`,props:{columns:{},title:{},border:{type:Boolean}},setup(r){return(i,s)=>{let c=o;return n(),a(c,{column:r.columns||2,title:r.title,border:r.border??!0,class:`info-grid`},{default:t(()=>[e(i.$slots,`default`,{},void 0,!0)]),_:3},8,[`column`,`title`,`border`])}}}),[[`__scopeId`,`data-v-9bc3752b`]]);export{s as t};
@@ -0,0 +1 @@
import{Nn as e,Yn as t,_ as n,an as r,cn as i,hn as a,ir as o,ln as s,m as c,on as l,sn as u}from"./useApi-CROJJdhE-mMpa5RAf.js";import{c as d}from"./runtime-dom.esm-bundler-YxjRGSuG.js";import{t as f}from"./skeleton-DGDficlh.js";/* empty css */var p={class:`legacy-page`},m=[`src`],h=n(a({__name:`LegacyPage`,setup(n){let a=c(),h=r(()=>a.meta.legacySrc||``),g=o(!0);function _(){g.value=!1}return(n,r)=>{let a=f;return e(),s(`div`,p,[g.value?(e(),u(a,{key:0,rows:6,animated:``,class:`legacy-page-skeleton`})):i(``,!0),t(l(`iframe`,{src:h.value,class:`legacy-page-frame`,frameborder:`0`,onLoad:_},null,40,m),[[d,!g.value]])])}}}),[[`__scopeId`,`data-v-52d02d92`]]);export{h as default};
@@ -0,0 +1 @@
.el-skeleton{--el-skeleton-circle-size:var(--el-avatar-size)}.el-skeleton__item{background:var(--el-skeleton-color);border-radius:var(--el-border-radius-base);width:100%;height:16px;display:inline-block}.el-skeleton__circle{width:var(--el-skeleton-circle-size);height:var(--el-skeleton-circle-size);line-height:var(--el-skeleton-circle-size);border-radius:50%}.el-skeleton__button{border-radius:4px;width:64px;height:40px}.el-skeleton__p{width:100%}.el-skeleton__p.is-last{width:61%}.el-skeleton__p.is-first{width:33%}.el-skeleton__text{width:100%;height:var(--el-font-size-small)}.el-skeleton__caption{height:var(--el-font-size-extra-small)}.el-skeleton__h1{height:var(--el-font-size-extra-large)}.el-skeleton__h3{height:var(--el-font-size-large)}.el-skeleton__h5{height:var(--el-font-size-medium)}.el-skeleton__image{width:unset;border-radius:0;justify-content:center;align-items:center;display:flex}.el-skeleton__image svg{color:var(--el-svg-monochrome-grey);fill:currentColor;width:22%;height:22%}.el-skeleton{--el-skeleton-color:var(--el-fill-color);--el-skeleton-to-color:var(--el-fill-color-darker)}@keyframes el-skeleton-loading{0%{background-position:100%}to{background-position:0}}.el-skeleton{width:100%}.el-skeleton__first-line,.el-skeleton__paragraph{background:var(--el-skeleton-color);height:16px;margin-top:16px}.el-skeleton.is-animated .el-skeleton__item{background:linear-gradient(90deg, var(--el-skeleton-color) 25%, var(--el-skeleton-to-color) 37%, var(--el-skeleton-color) 63%);background-size:400% 100%;animation:1.4s infinite el-skeleton-loading}.legacy-page[data-v-52d02d92]{background:var(--gerp-bg-color,#f5f7fa);width:100%;height:100%;position:relative;overflow:hidden}.legacy-page-skeleton[data-v-52d02d92]{padding:24px}.legacy-page-frame[data-v-52d02d92]{border:none;width:100%;height:100%;display:block}
-1
View File
@@ -1 +0,0 @@
import{$r as e,Bi as t,Hi as n,Mi as r,Qr as i,Wr as a,Zr as o,_ as s,_i as c,h as l,m as u,qr as d}from"./useApi-CROJJdhE-DTiQDIFh.js";import{_t as f,o as p,u as m,vt as h}from"./serverScope-CLCA_jyd.js";import{i as g}from"./router-Bz7E4dLH.js";import{n as _,t as v}from"./form-DkCs-bRK.js";import{t as y}from"./button-dPBZLBL0.js";import{t as b}from"./checkbox-C0xSI7i2.js";/* empty css */import"./css-DsD2Typt.js";import"./favicon-CjgOoDgN.js";import"./css-49fsIjk3.js";import"./css-DMLZMbB9.js";import"./css-DmmbJMxg.js";var x={class:`login-page`},S={class:`login-card`},C=s(e({__name:`Login`,setup(e){let s=l(),C=u(),w=g(),T=n(!1),E=t({UserName:``,UserPassword:``,RememberMe:!1}),D={UserName:[{required:!0,message:`请输入用户名`,trigger:`blur`}],UserPassword:[{required:!0,message:`请输入密码`,trigger:`blur`}]};async function O(){if(!E.UserName||!E.UserPassword){p.warning(`请输入用户名和密码`);return}T.value=!0;try{await w.login(E);let e=C.query.redirect||`/dashboard`;s.push(e)}catch{}finally{T.value=!1}}return(e,t)=>{let n=m,s=_,l=b,u=y,p=v;return c(),d(`div`,x,[a(`div`,S,[t[5]||=a(`div`,{class:`login-header`},[a(`img`,{src:`/favicon.svg`,alt:`logo`,class:`login-logo`}),a(`h1`,{class:`login-title`},`GERP 管理系统`),a(`p`,{class:`login-subtitle`},`登录到后台管理`)],-1),i(p,{model:E,rules:D,"label-position":`top`,size:`large`,onSubmit:h(O,[`prevent`])},{default:r(()=>[i(s,{label:`用户名`,prop:`UserName`},{default:r(()=>[i(n,{modelValue:E.UserName,"onUpdate:modelValue":t[0]||=e=>E.UserName=e,placeholder:`请输入用户名`,"prefix-icon":`User`,clearable:``},null,8,[`modelValue`])]),_:1}),i(s,{label:`密码`,prop:`UserPassword`},{default:r(()=>[i(n,{modelValue:E.UserPassword,"onUpdate:modelValue":t[1]||=e=>E.UserPassword=e,type:`password`,placeholder:`请输入密码`,"prefix-icon":`Lock`,"show-password":``,onKeyup:f(O,[`enter`])},null,8,[`modelValue`])]),_:1}),i(s,null,{default:r(()=>[i(l,{modelValue:E.RememberMe,"onUpdate:modelValue":t[2]||=e=>E.RememberMe=e},{default:r(()=>[...t[3]||=[o(`记住我`,-1)]]),_:1},8,[`modelValue`])]),_:1}),i(u,{type:`primary`,size:`large`,class:`login-btn`,loading:T.value,onClick:O},{default:r(()=>[...t[4]||=[o(` 登 录 `,-1)]]),_:1},8,[`loading`])]),_:1},8,[`model`])])])}}}),[[`__scopeId`,`data-v-e370fea4`]]);export{C as default};
+1
View File
@@ -0,0 +1 @@
import{Jn as e,Nn as t,_ as n,h as r,hn as i,ir as a,ln as o,m as s,mn as c,nr as l,on as u,pn as d}from"./useApi-CROJJdhE-mMpa5RAf.js";import{l as f,u as p}from"./runtime-dom.esm-bundler-YxjRGSuG.js";import{o as m,u as h}from"./serverScope-O8Rw8SFk.js";import{r as g}from"./router-CMu0lceh.js";import{n as _,t as v}from"./form-F--u6XQJ.js";import{t as y}from"./button-CPx9BSuo.js";import{t as b}from"./checkbox-CdKclTX1.js";/* empty css */import"./css-DsD2Typt.js";import"./favicon-CjgOoDgN.js";import"./css-49fsIjk3.js";import"./css-DMLZMbB9.js";import"./css-DmmbJMxg.js";var x={class:`login-page`},S={class:`login-card`},C=n(i({__name:`Login`,setup(n){let i=r(),C=s(),w=g(),T=a(!1),E=l({UserName:``,UserPassword:``,RememberMe:!1}),D={UserName:[{required:!0,message:`请输入用户名`,trigger:`blur`}],UserPassword:[{required:!0,message:`请输入密码`,trigger:`blur`}]};async function O(){if(!E.UserName||!E.UserPassword){m.warning(`请输入用户名和密码`);return}T.value=!0;try{await w.login(E);let e=C.query.redirect||`/dashboard`;i.push(e)}catch{}finally{T.value=!1}}return(n,r)=>{let i=h,a=_,s=b,l=y,m=v;return t(),o(`div`,x,[u(`div`,S,[r[5]||=u(`div`,{class:`login-header`},[u(`img`,{src:`/favicon.svg`,alt:`logo`,class:`login-logo`}),u(`h1`,{class:`login-title`},`GERP 管理系统`),u(`p`,{class:`login-subtitle`},`登录到后台管理`)],-1),c(m,{model:E,rules:D,"label-position":`top`,size:`large`,onSubmit:p(O,[`prevent`])},{default:e(()=>[c(a,{label:`用户名`,prop:`UserName`},{default:e(()=>[c(i,{modelValue:E.UserName,"onUpdate:modelValue":r[0]||=e=>E.UserName=e,placeholder:`请输入用户名`,"prefix-icon":`User`,clearable:``},null,8,[`modelValue`])]),_:1}),c(a,{label:`密码`,prop:`UserPassword`},{default:e(()=>[c(i,{modelValue:E.UserPassword,"onUpdate:modelValue":r[1]||=e=>E.UserPassword=e,type:`password`,placeholder:`请输入密码`,"prefix-icon":`Lock`,"show-password":``,onKeyup:f(O,[`enter`])},null,8,[`modelValue`])]),_:1}),c(a,null,{default:e(()=>[c(s,{modelValue:E.RememberMe,"onUpdate:modelValue":r[2]||=e=>E.RememberMe=e},{default:e(()=>[...r[3]||=[d(`记住我`,-1)]]),_:1},8,[`modelValue`])]),_:1}),c(l,{type:`primary`,size:`large`,class:`login-btn`,loading:T.value,onClick:O},{default:e(()=>[...r[4]||=[d(` 登 录 `,-1)]]),_:1},8,[`loading`])]),_:1},8,[`model`])])])}}}),[[`__scopeId`,`data-v-e370fea4`]]);export{C as default};
-2
View File
@@ -1,2 +0,0 @@
import{$r as e,Bi as t,Ca as n,D as r,Gr as i,Hi as a,Kr as o,Mi as s,Ni as ee,Qr as c,Rr as l,Sa as u,Ur as d,Wr as f,Zr as p,_ as m,_i as h,ba as g,mi as _,qr as v,xi as y,yi as b}from"./useApi-CROJJdhE-DTiQDIFh.js";import{a as x,o as S,u as te,vt as C}from"./serverScope-CLCA_jyd.js";import{f as w,g as T,l as E,o as D,s as ne}from"./router-Bz7E4dLH.js";import{t as re}from"./image-DmNNLt7t.js";import{t as ie}from"./button-dPBZLBL0.js";import{t as ae}from"./checkbox-C0xSI7i2.js";import{t as oe}from"./dialog-2NPB22v1.js";import{t as se}from"./pagination-BwkOahGh.js";import{t as ce}from"./progress-CSUM8YtS.js";import{t as le}from"./directive-DsCzzPS8.js";/* empty css */import"./css-DsD2Typt.js";import"./css-CttyGzET.js";import"./css-Cy-4mdDD.js";import"./css-DMLZMbB9.js";import"./css-DmmbJMxg.js";import"./css-B0rEpZpL.js";import"./css-DMOjom7l.js";import"./css-fhPIiYtD.js";import{t as ue}from"./AdminBadge-DWq3-CmW.js";var de={class:`asset-manager-page`},fe={class:`asset-header`},pe={class:`header-left`},me={class:`asset-count`},he={class:`header-right`},ge={class:`filter-group`},_e={class:`asset-body`},ve={class:`asset-timeline`},ye={class:`timeline-track`},be={class:`timeline-labels`},xe={class:`timeline-sort`},Se={class:`asset-main`},Ce={key:0,class:`batch-bar`},we={class:`batch-count`},Te={class:`batch-actions`},Ee={class:`asset-grid-wrap`},De={key:0,class:`asset-empty`},Oe={key:1,class:`asset-empty`},ke={key:2,class:`asset-grid`},Ae=[`onClick`],je=[`onClick`],Me={class:`card-thumb`},Ne=[`src`,`alt`],Pe={class:`card-info`},Fe=[`title`],Ie={class:`card-meta`},Le={class:`card-actions`},Re={key:1,class:`asset-pagination`},ze={class:`preview-content`},Be=[`src`],Ve={key:2,class:`preview-unsupported`},He={key:0,class:`upload-panel`},Ue={class:`upload-panel-header`},We={class:`upload-file-list`},Ge=[`title`],Ke={class:`upload-file-size`},qe={class:`upload-file-status`},O=24,k=5242880,A=5242880,j=`https://api.gvsds.com/API/Asset/Download`,M=m(e({__name:`Manager`,setup(e){x(`资产管理`);let m=a([]),M=a(0),N=a(1),P=a(``),F=a(``),I=a(`desc`),L=a(!1),R=a(``),z=a(null),B=a(null),V=null,H=a(new Set),U=a(!1),W=a(!1),G=a(null),Je=a(null),K=a(!1),q=a([]),J=t({left:0,top:0,width:0,height:0}),Ye=a(!1),Xe=[{label:`全部`,value:``},{label:`图片`,value:`image`},{label:`视频`,value:`video`},{label:`文档`,value:`document`},{label:`其他`,value:`other`}],Ze=d(()=>Math.ceil(M.value/O)||1),Qe=d(()=>m.value.length>0&&m.value.every(e=>H.value.has(e.sha1))),$e=d(()=>m.value.some(e=>H.value.has(e.sha1))&&!Qe.value),et=d(()=>H.value.size),tt=d(()=>et.value>0||U.value),nt=d(()=>!!z.value&&!!B.value);async function Y(){L.value=!0,R.value=``;try{let e=await ne(`/API/Asset/List`,{page:N.value,pageSize:O,orderDir:I.value,type:P.value||void 0,keyword:F.value||void 0});m.value=e.assets||[],M.value=e.total||0,N.value=e.page||1,z.value=e.minTime||null,B.value=e.maxTime||null,St()}catch(e){let t=e?.response?.status||0,n=e?.response?.data?.msg||e?.message||`加载资产列表失败`;t===401?R.value=`未登录,请先登录后查看资产`:t===403?R.value=`权限不足,需要 admin:fileasset_read 权限`:R.value=n,m.value=[],M.value=0,S.error(n)}finally{L.value=!1}}async function rt(e){try{await T.confirm(`确定删除此文件?`,`危险操作`,{type:`error`,confirmButtonText:`删除`,cancelButtonText:`取消`,confirmButtonClass:`el-button--danger`})}catch{return}try{await D(`/API/Asset/Delete/${e}`),H.value.delete(e),S.success(`删除成功`),await Y()}catch(e){S.error(`删除失败: `+(e?.message||``))}}function it(e){let t=`${j}/${e}`;navigator.clipboard.writeText(t).then(()=>S.success(`引用链接已复制`)).catch(()=>S.error(`复制失败,请手动复制`))}function at(e){window.open(`${j}/${e}?download=1`,`_blank`)}function ot(e){U.value||(G.value=e,W.value=!0)}function st(){W.value=!1,G.value=null}function X(e){return`${j}/${e}`}function ct(e){let t=new Set(H.value);t.has(e)?(t.delete(e),t.size===0&&(U.value=!1)):(t.add(e),U.value=!0),H.value=t}function lt(e){let t=new Set(H.value);e?(m.value.forEach(e=>t.add(e.sha1)),U.value=!0):m.value.forEach(e=>t.delete(e.sha1)),H.value=t}function ut(){H.value=new Set,U.value=!1}async function dt(){if(H.value.size===0)return;try{await T.confirm(`确定删除 ${H.value.size} 个文件?`,`批量删除`,{type:`error`,confirmButtonText:`删除`,cancelButtonText:`取消`,confirmButtonClass:`el-button--danger`})}catch{return}let e=Array.from(H.value),t=0,n=0;for(let r of e)try{await D(`/API/Asset/Delete/${r}`),H.value.delete(r),t++}catch{n++}S.success(`删除完成: ${t} 成功, ${n} 失败`),await Y()}function ft(){if(H.value.size===0)return;let e=Array.from(H.value).map(e=>`${j}/${e}`).join(`
`);navigator.clipboard.writeText(e).then(()=>S.success(`已复制 ${H.value.size} 个链接`)).catch(()=>S.error(`复制失败`))}function pt(){H.value.size!==0&&Array.from(H.value).forEach(e=>{window.open(`${j}/${e}?download=1`,`_blank`)})}function mt(e){P.value=e,N.value=1,Y()}function Z(e){I.value=e,N.value=1,Y()}function ht(e){N.value=e,Y()}function gt(){V&&clearTimeout(V),V=setTimeout(()=>{N.value=1,Y()},300)}function _t(){Je.value?.click()}async function vt(e){let t=e.target;t.files?.length&&(await Q(Array.from(t.files)),t.value=``)}async function Q(e){K.value=!0,q.value=e.map(e=>({name:e.name,size:e.size,status:`等待中`,progress:0}));for(let t=0;t<e.length;t++){let n=e[t],r=q.value[t];try{n.size<=A?(r.status=`上传中`,await yt(n,e=>{r.progress=e})):(r.status=`分片上传中`,await bt(n,(e,t)=>{r.progress=e,t&&(r.status=t)})),r.status=`完成`,r.progress=100}catch(e){r.status=`失败: `+(e?.message||``)}}await Y(),setTimeout(()=>{K.value=!1},2e3)}async function yt(e,t){let n=new FormData;n.append(`file`,e),await new Promise((e,r)=>{let i=new XMLHttpRequest;i.open(`POST`,`/API/Asset/Upload`),i.withCredentials=!0,i.upload.onprogress=e=>{e.lengthComputable&&t(Math.round(e.loaded/e.total*100))},i.onload=()=>{try{let t=JSON.parse(i.responseText);t.code===0?e():r(Error(t.msg||`上传失败`))}catch{r(Error(`解析响应失败`))}},i.onerror=()=>r(Error(`网络错误`)),i.send(n)})}async function bt(e,t){let n=Math.ceil(e.size/k),r=e.type||`application/octet-stream`;t(0,`初始化上传...`);let i=(await E(`/API/Asset/UploadInit`,{fileName:e.name,fileSize:e.size,mimeType:r,totalChunks:n})).uploadId;if(!i)throw Error(`UploadInit 未返回 uploadId`);for(let r=0;r<n;r++){let a=e.slice(r*k,Math.min((r+1)*k,e.size)),o=new FormData;o.append(`uploadId`,i),o.append(`chunkIndex`,String(r)),o.append(`chunk`,a,e.name),await w(`/API/Asset/UploadChunk`,o),t(Math.round((r+1)/n*100),`分片 ${r+1}/${n}`)}t(99,`合并文件...`),await E(`/API/Asset/UploadComplete`,{uploadId:i}),t(100,`上传完成`)}let xt=a(0),$=a([]);function St(){if(!z.value||!B.value){$.value=[];return}let e=new Date(z.value).getTime(),t=new Date(B.value).getTime(),n=t-e||1,r=[];for(let i=0;i<=5;i++){let a=I.value===`asc`?new Date(e+i/5*n):new Date(t-i/5*n);r.push(`${a.getMonth()+1}/${a.getDate()}`)}$.value=r}function Ct(e){return e<1024?e+` B`:e<1048576?(e/1024).toFixed(1)+` KB`:e<1073741824?(e/1048576).toFixed(1)+` MB`:(e/1073741824).toFixed(1)+` GB`}function wt(e){return e.startsWith(`video/`)?`fa-file-video`:e===`application/pdf`?`fa-file-pdf`:e.includes(`word`)||e.includes(`document`)?`fa-file-word`:e.includes(`sheet`)||e.includes(`excel`)?`fa-file-excel`:e.includes(`zip`)||e.includes(`rar`)||e.includes(`compressed`)?`fa-file-archive`:`fa-file`}return _(()=>{Y()}),(e,t)=>{let a=y(`Search`),d=r,_=te,x=ie,S=y(`Upload`),w=ae,T=y(`Link`),E=y(`Download`),D=y(`Delete`),ne=y(`Close`),k=y(`Warning`),A=y(`FolderOpened`),j=y(`Check`),z=se,B=re,V=y(`Document`),U=oe,Y=ce,Q=le;return h(),v(`div`,de,[c(ue),f(`div`,fe,[f(`div`,pe,[t[4]||=f(`h2`,{class:`asset-title`},`资产管理`,-1),f(`span`,me,n(M.value)+` 个文件`,1)]),f(`div`,he,[c(_,{modelValue:F.value,"onUpdate:modelValue":t[0]||=e=>F.value=e,placeholder:`搜索文件名...`,clearable:``,class:`search-input`,onInput:gt},{prefix:s(()=>[c(d,null,{default:s(()=>[c(a)]),_:1})]),_:1},8,[`modelValue`]),f(`div`,ge,[(h(),v(l,null,b(Xe,e=>c(x,{key:e.value,size:`small`,type:P.value===e.value?`primary`:`default`,onClick:t=>mt(e.value)},{default:s(()=>[p(n(e.label),1)]),_:2},1032,[`type`,`onClick`])),64))]),c(x,{type:`primary`,onClick:_t},{default:s(()=>[c(d,null,{default:s(()=>[c(S)]),_:1}),t[5]||=p(`\xA0上传 `,-1)]),_:1})])]),f(`input`,{ref_key:`FileInput`,ref:Je,type:`file`,multiple:``,style:{display:`none`},accept:`image/*,video/*,.pdf,.doc,.docx,.xls,.xlsx,.zip,.rar`,onChange:vt},null,544),f(`div`,_e,[f(`div`,ve,[f(`div`,ye,[nt.value?(h(),v(`div`,{key:0,class:`timeline-thumb`,style:u({top:xt.value+`px`})},null,4)):o(``,!0)]),f(`div`,be,[(h(!0),v(l,null,b($.value,(e,t)=>(h(),v(`span`,{key:t},n(e),1))),128))]),f(`div`,xe,[c(x,{size:`small`,type:I.value===`desc`?`primary`:`default`,onClick:t[1]||=e=>Z(`desc`)},{default:s(()=>[...t[6]||=[p(` 最新优先 `,-1)]]),_:1},8,[`type`]),c(x,{size:`small`,type:I.value===`asc`?`primary`:`default`,onClick:t[2]||=e=>Z(`asc`)},{default:s(()=>[...t[7]||=[p(` 最早优先 `,-1)]]),_:1},8,[`type`])])]),f(`div`,Se,[tt.value?(h(),v(`div`,Ce,[c(w,{"model-value":Qe.value,indeterminate:$e.value,onChange:lt},{default:s(()=>[...t[8]||=[p(` 全选 `,-1)]]),_:1},8,[`model-value`,`indeterminate`]),f(`span`,we,`已选 `+n(et.value)+` 项`,1),f(`div`,Te,[c(x,{size:`small`,onClick:ft},{default:s(()=>[c(d,null,{default:s(()=>[c(T)]),_:1}),t[9]||=p(`\xA0复制链接 `,-1)]),_:1}),c(x,{size:`small`,onClick:pt},{default:s(()=>[c(d,null,{default:s(()=>[c(E)]),_:1}),t[10]||=p(`\xA0下载 `,-1)]),_:1}),c(x,{size:`small`,type:`danger`,onClick:dt},{default:s(()=>[c(d,null,{default:s(()=>[c(D Line truncated
+2
View File
@@ -0,0 +1,2 @@
import{An as e,Br as t,Fn as n,Jn as r,Ln as i,Lr as a,Nn as o,Yn as ee,_ as s,an as c,cn as l,en as u,hn as d,ir as f,ln as p,mn as m,nr as h,on as g,pn as _,sn as v,zr as y}from"./useApi-CROJJdhE-mMpa5RAf.js";import{u as b}from"./runtime-dom.esm-bundler-YxjRGSuG.js";import{a as x,o as S,u as te}from"./serverScope-O8Rw8SFk.js";import{u as ne}from"./use-global-config-D-dPcPvU.js";import{_ as C,f as w,l as T,o as E,s as D}from"./router-CMu0lceh.js";import{t as re}from"./image-HD4q5QFa.js";import{t as ie}from"./button-CPx9BSuo.js";import{t as ae}from"./checkbox-CdKclTX1.js";import{t as oe}from"./dialog-_5VhSQg5.js";import{t as se}from"./pagination-DOGDdUWm.js";import{t as ce}from"./progress-CJYzD9Cp.js";import{t as le}from"./directive-CY41a6pJ.js";/* empty css */import"./css-DsD2Typt.js";import"./css-CttyGzET.js";import"./css-Cy-4mdDD.js";import"./css-DMLZMbB9.js";import"./css-DmmbJMxg.js";import"./css-B0rEpZpL.js";import"./css-DMOjom7l.js";import"./css-fhPIiYtD.js";import{t as ue}from"./AdminBadge-Z72F8Boy.js";var de={class:`asset-manager-page`},fe={class:`asset-header`},pe={class:`header-left`},me={class:`asset-count`},he={class:`header-right`},ge={class:`filter-group`},_e={class:`asset-body`},ve={class:`asset-timeline`},ye={class:`timeline-track`},be={class:`timeline-labels`},xe={class:`timeline-sort`},Se={class:`asset-main`},Ce={key:0,class:`batch-bar`},we={class:`batch-count`},Te={class:`batch-actions`},Ee={class:`asset-grid-wrap`},De={key:0,class:`asset-empty`},Oe={key:1,class:`asset-empty`},ke={key:2,class:`asset-grid`},Ae=[`onClick`],je=[`onClick`],Me={class:`card-thumb`},Ne=[`src`,`alt`],Pe={class:`card-info`},Fe=[`title`],Ie={class:`card-meta`},Le={class:`card-actions`},Re={key:1,class:`asset-pagination`},ze={class:`preview-content`},Be=[`src`],Ve={key:2,class:`preview-unsupported`},He={key:0,class:`upload-panel`},Ue={class:`upload-panel-header`},We={class:`upload-file-list`},Ge=[`title`],Ke={class:`upload-file-size`},qe={class:`upload-file-status`},O=24,k=5242880,A=5242880,j=`https://api.gvsds.com/API/Asset/Download`,M=s(d({__name:`Manager`,setup(s){x(`资产管理`);let d=f([]),M=f(0),N=f(1),P=f(``),F=f(``),I=f(`desc`),L=f(!1),R=f(``),z=f(null),B=f(null),V=null,H=f(new Set),U=f(!1),W=f(!1),G=f(null),Je=f(null),K=f(!1),q=f([]),J=h({left:0,top:0,width:0,height:0}),Ye=f(!1),Xe=[{label:`全部`,value:``},{label:`图片`,value:`image`},{label:`视频`,value:`video`},{label:`文档`,value:`document`},{label:`其他`,value:`other`}],Ze=c(()=>Math.ceil(M.value/O)||1),Qe=c(()=>d.value.length>0&&d.value.every(e=>H.value.has(e.sha1))),$e=c(()=>d.value.some(e=>H.value.has(e.sha1))&&!Qe.value),et=c(()=>H.value.size),tt=c(()=>et.value>0||U.value),nt=c(()=>!!z.value&&!!B.value);async function Y(){L.value=!0,R.value=``;try{let e=await D(`/API/Asset/List`,{page:N.value,pageSize:O,orderDir:I.value,type:P.value||void 0,keyword:F.value||void 0});d.value=e.assets||[],M.value=e.total||0,N.value=e.page||1,z.value=e.minTime||null,B.value=e.maxTime||null,St()}catch(e){let t=e?.response?.status||0,n=e?.response?.data?.msg||e?.message||`加载资产列表失败`;t===401?R.value=`未登录,请先登录后查看资产`:t===403?R.value=`权限不足,需要 admin:fileasset_read 权限`:R.value=n,d.value=[],M.value=0,S.error(n)}finally{L.value=!1}}async function rt(e){try{await C.confirm(`确定删除此文件?`,`危险操作`,{type:`error`,confirmButtonText:`删除`,cancelButtonText:`取消`,confirmButtonClass:`el-button--danger`})}catch{return}try{await E(`/API/Asset/Delete/${e}`),H.value.delete(e),S.success(`删除成功`),await Y()}catch(e){S.error(`删除失败: `+(e?.message||``))}}function it(e){let t=`${j}/${e}`;navigator.clipboard.writeText(t).then(()=>S.success(`引用链接已复制`)).catch(()=>S.error(`复制失败,请手动复制`))}function at(e){window.open(`${j}/${e}?download=1`,`_blank`)}function ot(e){U.value||(G.value=e,W.value=!0)}function st(){W.value=!1,G.value=null}function X(e){return`${j}/${e}`}function ct(e){let t=new Set(H.value);t.has(e)?(t.delete(e),t.size===0&&(U.value=!1)):(t.add(e),U.value=!0),H.value=t}function lt(e){let t=new Set(H.value);e?(d.value.forEach(e=>t.add(e.sha1)),U.value=!0):d.value.forEach(e=>t.delete(e.sha1)),H.value=t}function ut(){H.value=new Set,U.value=!1}async function dt(){if(H.value.size===0)return;try{await C.confirm(`确定删除 ${H.value.size} 个文件?`,`批量删除`,{type:`error`,confirmButtonText:`删除`,cancelButtonText:`取消`,confirmButtonClass:`el-button--danger`})}catch{return}let e=Array.from(H.value),t=0,n=0;for(let r of e)try{await E(`/API/Asset/Delete/${r}`),H.value.delete(r),t++}catch{n++}S.success(`删除完成: ${t} 成功, ${n} 失败`),await Y()}function ft(){if(H.value.size===0)return;let e=Array.from(H.value).map(e=>`${j}/${e}`).join(`
`);navigator.clipboard.writeText(e).then(()=>S.success(`已复制 ${H.value.size} 个链接`)).catch(()=>S.error(`复制失败`))}function pt(){H.value.size!==0&&Array.from(H.value).forEach(e=>{window.open(`${j}/${e}?download=1`,`_blank`)})}function mt(e){P.value=e,N.value=1,Y()}function Z(e){I.value=e,N.value=1,Y()}function ht(e){N.value=e,Y()}function gt(){V&&clearTimeout(V),V=setTimeout(()=>{N.value=1,Y()},300)}function _t(){Je.value?.click()}async function vt(e){let t=e.target;t.files?.length&&(await Q(Array.from(t.files)),t.value=``)}async function Q(e){K.value=!0,q.value=e.map(e=>({name:e.name,size:e.size,status:`等待中`,progress:0}));for(let t=0;t<e.length;t++){let n=e[t],r=q.value[t];try{n.size<=A?(r.status=`上传中`,await yt(n,e=>{r.progress=e})):(r.status=`分片上传中`,await bt(n,(e,t)=>{r.progress=e,t&&(r.status=t)})),r.status=`完成`,r.progress=100}catch(e){r.status=`失败: `+(e?.message||``)}}await Y(),setTimeout(()=>{K.value=!1},2e3)}async function yt(e,t){let n=new FormData;n.append(`file`,e),await new Promise((e,r)=>{let i=new XMLHttpRequest;i.open(`POST`,`/API/Asset/Upload`),i.withCredentials=!0,i.upload.onprogress=e=>{e.lengthComputable&&t(Math.round(e.loaded/e.total*100))},i.onload=()=>{try{let t=JSON.parse(i.responseText);t.code===0?e():r(Error(t.msg||`上传失败`))}catch{r(Error(`解析响应失败`))}},i.onerror=()=>r(Error(`网络错误`)),i.send(n)})}async function bt(e,t){let n=Math.ceil(e.size/k),r=e.type||`application/octet-stream`;t(0,`初始化上传...`);let i=(await T(`/API/Asset/UploadInit`,{fileName:e.name,fileSize:e.size,mimeType:r,totalChunks:n})).uploadId;if(!i)throw Error(`UploadInit 未返回 uploadId`);for(let r=0;r<n;r++){let a=e.slice(r*k,Math.min((r+1)*k,e.size)),o=new FormData;o.append(`uploadId`,i),o.append(`chunkIndex`,String(r)),o.append(`chunk`,a,e.name),await w(`/API/Asset/UploadChunk`,o),t(Math.round((r+1)/n*100),`分片 ${r+1}/${n}`)}t(99,`合并文件...`),await T(`/API/Asset/UploadComplete`,{uploadId:i}),t(100,`上传完成`)}let xt=f(0),$=f([]);function St(){if(!z.value||!B.value){$.value=[];return}let e=new Date(z.value).getTime(),t=new Date(B.value).getTime(),n=t-e||1,r=[];for(let i=0;i<=5;i++){let a=I.value===`asc`?new Date(e+i/5*n):new Date(t-i/5*n);r.push(`${a.getMonth()+1}/${a.getDate()}`)}$.value=r}function Ct(e){return e<1024?e+` B`:e<1048576?(e/1024).toFixed(1)+` KB`:e<1073741824?(e/1048576).toFixed(1)+` MB`:(e/1073741824).toFixed(1)+` GB`}function wt(e){return e.startsWith(`video/`)?`fa-file-video`:e===`application/pdf`?`fa-file-pdf`:e.includes(`word`)||e.includes(`document`)?`fa-file-word`:e.includes(`sheet`)||e.includes(`excel`)?`fa-file-excel`:e.includes(`zip`)||e.includes(`rar`)||e.includes(`compressed`)?`fa-file-archive`:`fa-file`}return e(()=>{Y()}),(e,s)=>{let c=i(`Search`),f=ne,h=te,x=ie,S=i(`Upload`),C=ae,w=i(`Link`),T=i(`Download`),E=i(`Delete`),D=i(`Close`),k=i(`Warning`),A=i(`FolderOpened`),j=i(`Check`),z=se,B=re,V=i(`Document`),U=oe,Y=ce,Q=le;return o(),p(`div`,de,[m(ue),g(`div`,fe,[g(`div`,pe,[s[4]||=g(`h2`,{class:`asset-title`},`资产管理`,-1),g(`span`,me,t(M.value)+` 个文件`,1)]),g(`div`,he,[m(h,{modelValue:F.value,"onUpdate:modelValue":s[0]||=e=>F.value=e,placeholder:`搜索文件名...`,clearable:``,class:`search-input`,onInput:gt},{prefix:r(()=>[m(f,null,{default:r(()=>[m(c)]),_:1})]),_:1},8,[`modelValue`]),g(`div`,ge,[(o(),p(u,null,n(Xe,e=>m(x,{key:e.value,size:`small`,type:P.value===e.value?`primary`:`default`,onClick:t=>mt(e.value)},{default:r(()=>[_(t(e.label),1)]),_:2},1032,[`type`,`onClick`])),64))]),m(x,{type:`primary`,onClick:_t},{default:r(()=>[m(f,null,{default:r(()=>[m(S)]),_:1}),s[5]||=_(`\xA0上传 `,-1)]),_:1})])]),g(`input`,{ref_key:`FileInput`,ref:Je,type:`file`,multiple:``,style:{display:`none`},accept:`image/*,video/*,.pdf,.doc,.docx,.xls,.xlsx,.zip,.rar`,onChange:vt},null,544),g(`div`,_e,[g(`div`,ve,[g(`div`,ye,[nt.value?(o(),p(`div`,{key:0,class:`timeline-thumb`,style:y({top:xt.value+`px`})},null,4)):l(``,!0)]),g(`div`,be,[(o(!0),p(u,null,n($.value,(e,n)=>(o(),p(`span`,{key:n},t(e),1))),128))]),g(`div`,xe,[m(x,{size:`small`,type:I.value===`desc`?`primary`:`default`,onClick:s[1]||=e=>Z(`desc`)},{default:r(()=>[...s[6]||=[_(` 最新优先 `,-1)]]),_:1},8,[`type`]),m(x,{size:`small`,type:I.value===`asc`?`primary`:`default`,onClick:s[2]||=e=>Z(`asc`)},{default:r(()=>[...s[7]||=[_(` 最早优先 `,-1)]]),_:1},8,[`type`])])]),g(`div`,Se,[tt.value?(o(),p(`div`,Ce,[m(C,{"model-value":Qe.value,indeterminate:$e.value,onChange:lt},{default:r(()=>[...s[8]||=[_(` 全选 `,-1)]]),_:1},8,[`model-value`,`indeterminate`]),g(`span`,we,`已选 `+t(et.value)+` 项`,1),g(`div`,Te,[m(x,{size:`small`,onClick:ft},{default:r(()=>[m(f,null,{default:r(()=>[m(w)]),_:1}),s[9]||=_(`\xA0复制链接 `,-1)]),_:1}),m(x,{size:`small`,onClick:pt},{default:r(()=>[m(f,null,{default:r(()=>[m(T)]),_:1}),s[10]||=_(`\xA0下载 `,-1)]),_:1}),m(x,{size:`small`,type:`danger`,onClick:dt},{default:r(()=>[m(f,null,{default:r(()=>[m(E Line truncated
-4
View File
@@ -1,4 +0,0 @@
import{$r as e,Ca as t,Gr as n,Hi as r,Kr as i,Mi as a,Qr as o,Rr as s,Sa as c,Ur as l,Wr as u,Zr as d,_ as f,_i as p,ba as m,di as h,mi as g,qr as _,yi as v}from"./useApi-CROJJdhE-DTiQDIFh.js";import{a as y,o as b,u as ee,vt as x}from"./serverScope-CLCA_jyd.js";import{d as S,g as C,i as w}from"./router-Bz7E4dLH.js";import{n as te,t as ne}from"./form-DkCs-bRK.js";import{t as re}from"./button-dPBZLBL0.js";import{t as ie}from"./tag-DsjHDKbM.js";import{n as ae,t as oe}from"./tabs-pZSvXqvK.js";import{r as se,t as ce}from"./radio-D48l254V.js";import{t as le}from"./empty-BgmR_P06.js";import{t as ue}from"./input-number-BYrgUFpo.js";import{t as de}from"./tree-Ba23u4xv.js";/* empty css */import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-49fsIjk3.js";import"./css-DmmbJMxg.js";import"./css-w8-s2aei.js";import{t as fe}from"./AdminBadge-DWq3-CmW.js";import"./css-0wcCNliC.js";import"./css-D4jab2ni.js";import"./css-CLuE7SsA.js";import"./css-DcINL9JV2.js";var pe={class:`menu-editor`},me={class:`menu-header`},he={class:`company-search-wrap`},ge={key:0,class:`company-search-dropdown`},_e=[`onClick`],ve={class:`menu-body`},ye=[`innerHTML`],be={class:`node-title`},xe={class:`node-actions`},Se={class:`menu-form`},Ce={style:{display:`flex`,gap:`8px`,width:`100%`}},we=[`innerHTML`],Te={class:`form-actions`},Ee={key:2,class:`ctx-sep`},De={key:5,class:`ctx-sep`},T=f(e({__name:`Menu`,setup(e){y(`菜单编辑器`);let f=w(),T=l(()=>f.isAdmin),E=r(!1),D=r([]),O=r(-1),k=l(()=>O.value>=0?D.value[O.value]:null),A=r(``),j=r([]),M=r(!1),N=null,P=r(!1),F=r(0),I=r(0),L=r(null),R=r(null),z=r({MenuUUID:``,MenuName:``,MenuTitle:``,MenuIcon:``,MenuLink:``,MenuType:0,MenuSort:0,PermissionLevel:1,PermissionAttr:``,MenuStatus:1,visibility:`public`}),Oe=l(()=>{let e=k.value;return e?Ae(e.menus):[]}),ke=l(()=>{let e=k.value;return!e||!e.selectedUUID?null:e.menus.find(t=>t.MenuUUID===e.selectedUUID)||null});function Ae(e){let t={},n=[];e.forEach(e=>{t[e.MenuUUID]={...e,children:[]}}),e.forEach(e=>{e.ParentMenuUUID&&t[e.ParentMenuUUID]?t[e.ParentMenuUUID].children.push(t[e.MenuUUID]):n.push(t[e.MenuUUID])});let r=(e,t)=>(e.MenuSort||0)-(t.MenuSort||0),i=e=>{e.sort(r),e.forEach(e=>i(e.children||[]))};return i(n),n}function B(e,t){let n=e.find(e=>e.MenuUUID===t);if(!n)return null;let r={...n,children:[]},i=e.filter(e=>e.ParentMenuUUID===t);for(let t of i){let n=B(e,t.MenuUUID);n&&r.children.push(n)}return r.children.sort((e,t)=>(e.MenuSort||0)-(t.MenuSort||0)),r}function je(){N&&clearTimeout(N);let e=A.value.trim();if(!e){j.value=[],M.value=!1;return}N=setTimeout(async()=>{try{let t=await S.get(`/API/FormAPI/CompanySearch`,{params:{keyword:e,limit:10}});j.value=Array.isArray(t)?t:[],M.value=j.value.length>0}catch{j.value=[],M.value=!1}},300)}function Me(e){A.value=e.CompanyName,M.value=!1;let t=D.value.findIndex(t=>t.companyUUID===e.CompanyUUID);t>=0?V(t):(D.value.push({companyUUID:e.CompanyUUID,companyName:e.CompanyName,menus:[],selectedUUID:null}),V(D.value.length-1),H())}function V(e){e<0||e>=D.value.length||(O.value=e,U())}function Ne(e){D.value.splice(e,1),D.value.length===0?O.value=-1:O.value>=D.value.length?O.value=D.value.length-1:O.value>e?O.value--:O.value===e&&(O.value=Math.min(e,D.value.length-1)),U()}async function H(){let e=k.value;if(e)try{let t=await S.get(`/API/Menu/AdminList`,{params:{CompanyUUID:e.companyUUID}});e.menus=Array.isArray(t)?t:[]}catch{e.menus=[]}}function Pe(e){let t=k.value;t&&(t.selectedUUID=e.MenuUUID,U())}function Fe(){let e=k.value;e&&(e.selectedUUID=null,U())}function U(){let e=k.value;if(!e||!e.selectedUUID)return;let t=e.menus.find(t=>t.MenuUUID===e.selectedUUID);if(!t){e.selectedUUID=null;return}z.value={...t,visibility:t.CompanyUUID?`private`:`public`}}async function Ie(){let e=k.value;if(!e||!e.selectedUUID)return;let t=e.menus.find(t=>t.MenuUUID===e.selectedUUID);if(!t)return;let n={MenuUUID:e.selectedUUID,MenuTitle:z.value.MenuTitle||``,MenuName:z.value.MenuName||``,MenuIcon:z.value.MenuIcon||``,MenuLink:z.value.MenuLink||``,MenuType:String(z.value.MenuType??0),MenuSort:String(z.value.MenuSort||0),PermissionLevel:String(z.value.PermissionLevel??1),PermissionAttr:z.value.PermissionAttr||``,MenuStatus:String(z.value.MenuStatus??1),CompanyUUID:z.value.visibility===`public`?``:e.companyUUID,ParentMenuUUID:t.ParentMenuUUID||``};try{await S.post(`/API/Menu/Save`,new URLSearchParams(n),{headers:{"Content-Type":`application/x-www-form-urlencoded`}}),Object.assign(t,n,{CompanyUUID:n.CompanyUUID||void 0}),b.success(`保存成功`)}catch{}}async function Le(e){let t=k.value;if(!t)return;let n=e?t.menus.filter(t=>t.ParentMenuUUID===e):t.menus.filter(e=>!e.ParentMenuUUID),r=n.length>0?Math.max(...n.map(e=>e.MenuSort||0)):-1,i={CompanyUUID:t.companyUUID,ParentMenuUUID:e||``,MenuName:`new-menu`,MenuTitle:`新菜单`,MenuIcon:``,MenuLink:``,MenuType:`1`,MenuSort:String(r+1),PermissionLevel:`1.0`,PermissionAttr:``,MenuStatus:`1`};try{let e=W(await S.post(`/API/Menu/Save`,new URLSearchParams(i),{headeLine truncated
<menus>
`;t.forEach(e=>{n+=Z(e,1)}),n+=`</menus>`,await navigator.clipboard.writeText(n),b.success(`XML 已复制到剪贴板`)}async function qe(){let e=k.value;if(!e||!L.value)return;let t=q.value?null:L.value;if(!t)return;let n=B(e.menus,t);if(!n)return;let r=`<?xml version="1.0" encoding="UTF-8"?>
`+Z(n);await navigator.clipboard.writeText(r),b.success(`XML 已复制到剪贴板`),K()}async function Je(e){let t=e.target,n=t.files?.[0];if(!n)return;t.value=``;let r=k.value;if(r)try{let e=await n.text(),t=new DOMParser().parseFromString(e,`text/xml`).querySelectorAll(`:scope > menus > menu, :scope > menu`);if(t.length===0){b.error(`未找到有效的菜单结构`);return}let i=r.menus.filter(e=>!e.ParentMenuUUID),a=i.length>0?Math.max(...i.map(e=>e.MenuSort||0))+1:0;for(let e of Array.from(t))await Q(e,``,a++,r.companyUUID);await H(),b.success(`导入成功`)}catch(e){b.error(`导入失败: `+(e instanceof Error?e.message:String(e)))}}async function Q(e,t,n,r){let i={CompanyUUID:r,ParentMenuUUID:t||``,MenuName:e.getAttribute(`name`)||`imported`,MenuTitle:e.getAttribute(`title`)||`导入菜单`,MenuIcon:e.getAttribute(`icon`)||``,MenuLink:e.getAttribute(`link`)||``,MenuType:String(parseInt(e.getAttribute(`type`)||`1`)||1),MenuSort:String(n),PermissionLevel:String(parseFloat(e.getAttribute(`permLevel`)||`1.0`)||1),PermissionAttr:e.getAttribute(`permAttr`)||``,MenuStatus:String(parseInt(e.getAttribute(`status`)||`1`)||1)},a=null;try{a=W(await S.post(`/API/Menu/Save`,new URLSearchParams(i),{headers:{"Content-Type":`application/x-www-form-urlencoded`}}))}catch{return}let o=e.querySelectorAll(`:scope > menu`);if(o.length>0&&a)for(let e=0;e<o.length;e++)await Q(o[e],a,e,r)}function Ye(e){let t=e.target?.tagName;if(t===`INPUT`||t===`TEXTAREA`||t===`SELECT`)return;let n=k.value;if(n){if((e.ctrlKey||e.metaKey)&&(e.key===`c`||e.key===`C`)){if(!n.selectedUUID)return;if(e.preventDefault(),n.menus.find(e=>e.MenuUUID===n.selectedUUID)){let e=B(n.menus,n.selectedUUID);R.value=e?JSON.parse(JSON.stringify(e)):null,b.success(`已复制子树`)}}else if((e.ctrlKey||e.metaKey)&&(e.key===`v`||e.key===`V`))e.preventDefault(),n.selectedUUID?(L.value=n.selectedUUID,Y(!0)):(L.value=`__ROOT__`,Y(!1));else if(e.key===`Delete`||e.key===`Backspace`){if(!n.selectedUUID)return;e.preventDefault(),G(n.selectedUUID)}}}function Xe(e){if(!e)return``;let t=e.trim();return t.startsWith(`<`)?t:`<i class="${t}"></i>`}g(()=>{if(!T.value){E.value=!0;return}document.addEventListener(`keydown`,Ye),document.addEventListener(`click`,$)}),h(()=>{document.removeEventListener(`keydown`,Ye),document.removeEventListener(`click`,$)});function $(e){let t=e.target;t.closest(`.menu-ctx-panel`)||(P.value=!1),t.closest(`.company-search-wrap`)||(M.value=!1)}return(e,r)=>{let l=le,f=ee,h=re,g=oe,y=ae,b=ie,S=de,C=te,w=ce,T=se,N=ue,L=ne;return p(),_(`div`,pe,[o(fe),E.value?(p(),n(l,{key:0,description:`无权访问:该页面仅管理员可查看,请切换至管理员角色或联系管理员`},{image:a(()=>[...r[24]||=[u(`i`,{class:`fas fa-lock`,style:{"font-size":`48px`,color:`var(--el-color-danger)`}},null,-1)]]),_:1})):(p(),_(s,{key:1},[u(`div`,me,[r[28]||=u(`h1`,{class:`page-title`},[u(`i`,{class:`fas fa-bars icon-primary`}),u(`span`,null,`菜单编辑器`)],-1),u(`div`,he,[o(f,{modelValue:A.value,"onUpdate:modelValue":r[0]||=e=>A.value=e,placeholder:`搜索公司添加标签页...`,clearable:``,style:{width:`240px`},onInput:je},null,8,[`modelValue`]),M.value?(p(),_(`div`,ge,[(p(!0),_(s,null,v(j.value,e=>(p(),_(`div`,{key:e.CompanyUUID,class:`company-search-item`,onClick:t=>Me(e)},[u(`strong`,null,t(e.CompanyName),1),u(`span`,null,t(e.CompanyShort||``),1)],8,_e))),128))])):i(``,!0)]),o(h,{type:`primary`,disabled:!k.value,onClick:Re},{default:a(()=>[...r[25]||=[u(`i`,{class:`fas fa-plus`},null,-1),d(` 新增根菜单 `,-1)]]),_:1},8,[`disabled`]),o(h,{disabled:!k.value,onClick:Ke},{default:a(()=>[...r[26]||=[u(`i`,{class:`fas fa-file-export`},null,-1),d(` 导出XML `,-1)]]),_:1},8,[`disabled`]),o(h,{disabled:!k.value,onClick:r[1]||=t=>e.$refs.importInput.click()},{default:a(()=>[...r[27]||=[u(`i`,{class:`fas fa-file-import`},null,-1),d(` 导入XML `,-1)]]),_:1},8,[`disabled`]),u(`input`,{ref:`importInput`,type:`file`,accept:`.xml,.json`,style:{display:`none`},onChange:Je},null,544)]),D.value.length>0?(p(),n(y,{key:0,modelValue:O.value,"onUpdate:modelValue":r[2]||=e=>O.value=e,type:`card`,closable:``,onTabClick:r[3]||=e=>V(e.index),onTabRemove:r[4]||=e=>Ne(Number(e))},{default:a(()=>[(p(!0),_(s,null,v(D.value,(e,t)=>(p(),n(g,{key:e.companyUUID,label:e.companyName,name:t},null,8,[`label`,`name`]))),128))]),_:1},8,[`modelValue`])):i(``,!0),u(`div`,ve,[u(`div`,{class:`menu-preview`,onContextmenu:r[6]||=e=>He(e,!1)},[k.value?(p(),_(s,{key:0},[u(`div`,{class:m([`menu-root-node`,{selected:!k.value.selectedUUID}]),onClick:Fe,onContextmenu:r[5]||=e=>He(e,!0)},[...r[29]||=[u(`span`,{class:`node-icon`},[u(`i`,{class:`fas fa-folder-open`})],-1),u(`span`,null,`根目录`,-1)]],34),Oe.value.length>0?(p(),n(S,{key:0,data:Oe.value,props:{children:`children`,label:`MenuTitle`},"node-key":`MenuUUID`,"expand-on-click-node":!1,"default-expand-all":!0,"highlight-current":``,onNodeClick:Pe,onNodeContextmenu:Ve},{default:a(({data:e})=>[u(`div`,{class:m([`menu-node`,{selected:k.vaLine truncated
+4
View File
@@ -0,0 +1,4 @@
import{An as e,Br as t,Dn as n,Fn as r,Jn as i,Lr as a,Nn as o,_ as s,an as c,cn as l,en as u,hn as d,ir as f,ln as p,mn as m,on as h,pn as g,sn as _,zr as ee}from"./useApi-CROJJdhE-mMpa5RAf.js";import{u as v}from"./runtime-dom.esm-bundler-YxjRGSuG.js";import{a as y,o as b,u as te}from"./serverScope-O8Rw8SFk.js";import{_ as x,d as S,r as C}from"./router-CMu0lceh.js";import{n as ne,t as re}from"./form-F--u6XQJ.js";import{t as ie}from"./button-CPx9BSuo.js";import{t as ae}from"./tag-BSnLMVgs.js";import{n as oe,t as se}from"./tabs-BSMusFE5.js";import{r as ce,t as le}from"./radio-Cb0vAm4I.js";import{t as ue}from"./empty-CnQTxkvl.js";import{t as de}from"./input-number-CiNOxXL6.js";import{t as fe}from"./tree-DqeBDBpX.js";/* empty css */import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-49fsIjk3.js";import"./css-DmmbJMxg.js";import"./css-w8-s2aei.js";import{t as pe}from"./AdminBadge-Z72F8Boy.js";import"./css-0wcCNliC.js";import"./css-D4jab2ni2.js";import"./css-CLuE7SsA.js";import"./css-DcINL9JV2.js";var me={class:`menu-editor`},he={class:`menu-header`},ge={class:`company-search-wrap`},_e={key:0,class:`company-search-dropdown`},ve=[`onClick`],ye={class:`menu-body`},be=[`innerHTML`],xe={class:`node-title`},Se={class:`node-actions`},Ce={class:`menu-form`},we={style:{display:`flex`,gap:`8px`,width:`100%`}},Te=[`innerHTML`],Ee={class:`form-actions`},De={key:2,class:`ctx-sep`},Oe={key:5,class:`ctx-sep`},w=s(d({__name:`Menu`,setup(s){y(`菜单编辑器`);let d=C(),w=c(()=>d.isAdmin),T=f(!1),E=f([]),D=f(-1),O=c(()=>D.value>=0?E.value[D.value]:null),k=f(``),A=f([]),j=f(!1),M=null,N=f(!1),P=f(0),F=f(0),I=f(null),L=f(null),R=f({MenuUUID:``,MenuName:``,MenuTitle:``,MenuIcon:``,MenuLink:``,MenuType:0,MenuSort:0,PermissionLevel:1,PermissionAttr:``,MenuStatus:1,visibility:`public`}),z=c(()=>{let e=O.value;return e?B(e.menus):[]}),ke=c(()=>{let e=O.value;return!e||!e.selectedUUID?null:e.menus.find(t=>t.MenuUUID===e.selectedUUID)||null});function B(e){let t={},n=[];e.forEach(e=>{t[e.MenuUUID]={...e,children:[]}}),e.forEach(e=>{e.ParentMenuUUID&&t[e.ParentMenuUUID]?t[e.ParentMenuUUID].children.push(t[e.MenuUUID]):n.push(t[e.MenuUUID])});let r=(e,t)=>(e.MenuSort||0)-(t.MenuSort||0),i=e=>{e.sort(r),e.forEach(e=>i(e.children||[]))};return i(n),n}function V(e,t){let n=e.find(e=>e.MenuUUID===t);if(!n)return null;let r={...n,children:[]},i=e.filter(e=>e.ParentMenuUUID===t);for(let t of i){let n=V(e,t.MenuUUID);n&&r.children.push(n)}return r.children.sort((e,t)=>(e.MenuSort||0)-(t.MenuSort||0)),r}function Ae(){M&&clearTimeout(M);let e=k.value.trim();if(!e){A.value=[],j.value=!1;return}M=setTimeout(async()=>{try{let t=await S.get(`/API/FormAPI/CompanySearch`,{params:{keyword:e,limit:10}});A.value=Array.isArray(t)?t:[],j.value=A.value.length>0}catch{A.value=[],j.value=!1}},300)}function je(e){k.value=e.CompanyName,j.value=!1;let t=E.value.findIndex(t=>t.companyUUID===e.CompanyUUID);t>=0?H(t):(E.value.push({companyUUID:e.CompanyUUID,companyName:e.CompanyName,menus:[],selectedUUID:null}),H(E.value.length-1),U())}function H(e){e<0||e>=E.value.length||(D.value=e,W())}function Me(e){E.value.splice(e,1),E.value.length===0?D.value=-1:D.value>=E.value.length?D.value=E.value.length-1:D.value>e?D.value--:D.value===e&&(D.value=Math.min(e,E.value.length-1)),W()}async function U(){let e=O.value;if(e)try{let t=await S.get(`/API/Menu/AdminList`,{params:{CompanyUUID:e.companyUUID}});e.menus=Array.isArray(t)?t:[]}catch{e.menus=[]}}function Ne(e){let t=O.value;t&&(t.selectedUUID=e.MenuUUID,W())}function Pe(){let e=O.value;e&&(e.selectedUUID=null,W())}function W(){let e=O.value;if(!e||!e.selectedUUID)return;let t=e.menus.find(t=>t.MenuUUID===e.selectedUUID);if(!t){e.selectedUUID=null;return}R.value={...t,visibility:t.CompanyUUID?`private`:`public`}}async function Fe(){let e=O.value;if(!e||!e.selectedUUID)return;let t=e.menus.find(t=>t.MenuUUID===e.selectedUUID);if(!t)return;let n={MenuUUID:e.selectedUUID,MenuTitle:R.value.MenuTitle||``,MenuName:R.value.MenuName||``,MenuIcon:R.value.MenuIcon||``,MenuLink:R.value.MenuLink||``,MenuType:String(R.value.MenuType??0),MenuSort:String(R.value.MenuSort||0),PermissionLevel:String(R.value.PermissionLevel??1),PermissionAttr:R.value.PermissionAttr||``,MenuStatus:String(R.value.MenuStatus??1),CompanyUUID:R.value.visibility===`public`?``:e.companyUUID,ParentMenuUUID:t.ParentMenuUUID||``};try{await S.post(`/API/Menu/Save`,new URLSearchParams(n),{headers:{"Content-Type":`application/x-www-form-urlencoded`}}),Object.assign(t,n,{CompanyUUID:n.CompanyUUID||void 0}),b.success(`保存成功`)}catch{}}async function Ie(e){let t=O.value;if(!t)return;let n=e?t.menus.filter(t=>t.ParentMenuUUID===e):t.menus.filter(e=>!e.ParentMenuUUID),r=n.length>0?Math.max(...n.map(e=>e.MenuSort||0)):-1,i={CompanyUUID:t.companyUUID,ParentMenuUUID:e||``,MenuName:`new-menu`,MenuTitle:`新菜单`,MenuIcon:``,MenuLink:``,MenuType:`1`,MenuSort:String(r+1),PermissionLevel:`1.0`,PermissionAttr:``,MenuStatus:`1`};try{let e=G(await S.poLine truncated
<menus>
`;t.forEach(e=>{n+=Q(e,1)}),n+=`</menus>`,await navigator.clipboard.writeText(n),b.success(`XML 已复制到剪贴板`)}async function Ke(){let e=O.value;if(!e||!I.value)return;let t=J.value?null:I.value;if(!t)return;let n=V(e.menus,t);if(!n)return;let r=`<?xml version="1.0" encoding="UTF-8"?>
`+Q(n);await navigator.clipboard.writeText(r),b.success(`XML 已复制到剪贴板`),q()}async function qe(e){let t=e.target,n=t.files?.[0];if(!n)return;t.value=``;let r=O.value;if(r)try{let e=await n.text(),t=new DOMParser().parseFromString(e,`text/xml`).querySelectorAll(`:scope > menus > menu, :scope > menu`);if(t.length===0){b.error(`未找到有效的菜单结构`);return}let i=r.menus.filter(e=>!e.ParentMenuUUID),a=i.length>0?Math.max(...i.map(e=>e.MenuSort||0))+1:0;for(let e of Array.from(t))await Je(e,``,a++,r.companyUUID);await U(),b.success(`导入成功`)}catch(e){b.error(`导入失败: `+(e instanceof Error?e.message:String(e)))}}async function Je(e,t,n,r){let i={CompanyUUID:r,ParentMenuUUID:t||``,MenuName:e.getAttribute(`name`)||`imported`,MenuTitle:e.getAttribute(`title`)||`导入菜单`,MenuIcon:e.getAttribute(`icon`)||``,MenuLink:e.getAttribute(`link`)||``,MenuType:String(parseInt(e.getAttribute(`type`)||`1`)||1),MenuSort:String(n),PermissionLevel:String(parseFloat(e.getAttribute(`permLevel`)||`1.0`)||1),PermissionAttr:e.getAttribute(`permAttr`)||``,MenuStatus:String(parseInt(e.getAttribute(`status`)||`1`)||1)},a=null;try{a=G(await S.post(`/API/Menu/Save`,new URLSearchParams(i),{headers:{"Content-Type":`application/x-www-form-urlencoded`}}))}catch{return}let o=e.querySelectorAll(`:scope > menu`);if(o.length>0&&a)for(let e=0;e<o.length;e++)await Je(o[e],a,e,r)}function Ye(e){let t=e.target?.tagName;if(t===`INPUT`||t===`TEXTAREA`||t===`SELECT`)return;let n=O.value;if(n){if((e.ctrlKey||e.metaKey)&&(e.key===`c`||e.key===`C`)){if(!n.selectedUUID)return;if(e.preventDefault(),n.menus.find(e=>e.MenuUUID===n.selectedUUID)){let e=V(n.menus,n.selectedUUID);L.value=e?JSON.parse(JSON.stringify(e)):null,b.success(`已复制子树`)}}else if((e.ctrlKey||e.metaKey)&&(e.key===`v`||e.key===`V`))e.preventDefault(),n.selectedUUID?(I.value=n.selectedUUID,X(!0)):(I.value=`__ROOT__`,X(!1));else if(e.key===`Delete`||e.key===`Backspace`){if(!n.selectedUUID)return;e.preventDefault(),K(n.selectedUUID)}}}function Xe(e){if(!e)return``;let t=e.trim();return t.startsWith(`<`)?t:`<i class="${t}"></i>`}e(()=>{if(!w.value){T.value=!0;return}document.addEventListener(`keydown`,Ye),document.addEventListener(`click`,$)}),n(()=>{document.removeEventListener(`keydown`,Ye),document.removeEventListener(`click`,$)});function $(e){let t=e.target;t.closest(`.menu-ctx-panel`)||(N.value=!1),t.closest(`.company-search-wrap`)||(j.value=!1)}return(e,n)=>{let s=ue,c=te,d=ie,f=se,y=oe,b=ae,x=fe,S=ne,C=le,w=ce,M=de,I=re;return o(),p(`div`,me,[m(pe),T.value?(o(),_(s,{key:0,description:`无权访问:该页面仅管理员可查看,请切换至管理员角色或联系管理员`},{image:i(()=>[...n[24]||=[h(`i`,{class:`fas fa-lock`,style:{"font-size":`48px`,color:`var(--el-color-danger)`}},null,-1)]]),_:1})):(o(),p(u,{key:1},[h(`div`,he,[n[28]||=h(`h1`,{class:`page-title`},[h(`i`,{class:`fas fa-bars icon-primary`}),h(`span`,null,`菜单编辑器`)],-1),h(`div`,ge,[m(c,{modelValue:k.value,"onUpdate:modelValue":n[0]||=e=>k.value=e,placeholder:`搜索公司添加标签页...`,clearable:``,style:{width:`240px`},onInput:Ae},null,8,[`modelValue`]),j.value?(o(),p(`div`,_e,[(o(!0),p(u,null,r(A.value,e=>(o(),p(`div`,{key:e.CompanyUUID,class:`company-search-item`,onClick:t=>je(e)},[h(`strong`,null,t(e.CompanyName),1),h(`span`,null,t(e.CompanyShort||``),1)],8,ve))),128))])):l(``,!0)]),m(d,{type:`primary`,disabled:!O.value,onClick:Le},{default:i(()=>[...n[25]||=[h(`i`,{class:`fas fa-plus`},null,-1),g(` 新增根菜单 `,-1)]]),_:1},8,[`disabled`]),m(d,{disabled:!O.value,onClick:Ge},{default:i(()=>[...n[26]||=[h(`i`,{class:`fas fa-file-export`},null,-1),g(` 导出XML `,-1)]]),_:1},8,[`disabled`]),m(d,{disabled:!O.value,onClick:n[1]||=t=>e.$refs.importInput.click()},{default:i(()=>[...n[27]||=[h(`i`,{class:`fas fa-file-import`},null,-1),g(` 导入XML `,-1)]]),_:1},8,[`disabled`]),h(`input`,{ref:`importInput`,type:`file`,accept:`.xml,.json`,style:{display:`none`},onChange:qe},null,544)]),E.value.length>0?(o(),_(y,{key:0,modelValue:D.value,"onUpdate:modelValue":n[2]||=e=>D.value=e,type:`card`,closable:``,onTabClick:n[3]||=e=>H(e.index),onTabRemove:n[4]||=e=>Me(Number(e))},{default:i(()=>[(o(!0),p(u,null,r(E.value,(e,t)=>(o(),_(f,{key:e.companyUUID,label:e.companyName,name:t},null,8,[`label`,`name`]))),128))]),_:1},8,[`modelValue`])):l(``,!0),h(`div`,ye,[h(`div`,{class:`menu-preview`,onContextmenu:n[6]||=e=>Ve(e,!1)},[O.value?(o(),p(u,{key:0},[h(`div`,{class:a([`menu-root-node`,{selected:!O.value.selectedUUID}]),onClick:Pe,onContextmenu:n[5]||=e=>Ve(e,!0)},[...n[29]||=[h(`span`,{class:`node-icon`},[h(`i`,{class:`fas fa-folder-open`})],-1),h(`span`,null,`根目录`,-1)]],34),z.value.length>0?(o(),_(x,{key:0,data:z.value,props:{children:`children`,label:`MenuTitle`},"node-key":`MenuUUID`,"expand-on-click-node":!1,"default-expand-all":!0,"highlight-current":``,onNodeClick:Ne,onNodeContextmenu:Be},{default:i(({data:e})=>[h(`div`,{class:a([`menu-node`,{selected:O.vLine truncated
-1
View File
@@ -1 +0,0 @@
import{$r as e,Bi as t,Ca as n,Gr as r,Hi as i,Kr as a,Mi as o,Ni as ee,Qr as s,Rr as c,Sa as l,Wr as u,Zr as d,_ as f,_i as p,ba as m,di as h,m as g,mi as _,qr as v,yi as y}from"./useApi-CROJJdhE-DTiQDIFh.js";import{a as b,l as te,o as x,u as ne,vt as re}from"./serverScope-CLCA_jyd.js";import{c as S,d as C,g as w,l as T,o as E}from"./router-Bz7E4dLH.js";import{n as ie,t as ae}from"./form-DkCs-bRK.js";import{t as oe}from"./button-dPBZLBL0.js";import{t as se}from"./tag-DsjHDKbM.js";import{n as ce,t as le}from"./tabs-pZSvXqvK.js";import{t as ue}from"./dialog-2NPB22v1.js";import{t as de}from"./empty-BgmR_P06.js";import{t as fe}from"./pagination-BwkOahGh.js";import{t as pe}from"./directive-DsCzzPS8.js";/* empty css */import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-6qaeDme6.js";import"./css-Cy-4mdDD.js";import"./css-49fsIjk3.js";import"./css-DmmbJMxg.js";import"./css-DMOjom7l.js";import"./css-fhPIiYtD.js";import"./css-D4jab2ni.js";import"./css-DcINL9JV2.js";var me={class:`message-page`},he={key:0},ge={key:1},_e={class:`msg-toolbar`},ve={class:`msg-list`},ye=[`onClick`],be={class:`msg-item-body`},xe={class:`msg-item-title`},Se={class:`msg-item-content`},Ce={class:`msg-item-meta`},we={class:`msg-item-actions`},Te={key:0,class:`msg-pagination`},Ee={class:`detail-title`},De={key:0,class:`detail-body`},Oe={class:`detail-meta`},ke={class:`detail-content`},Ae={class:`detail-footer`},je={class:`recipient-search`},Me={key:0,class:`recipient-dropdown`},Ne=[`onClick`],Pe={key:0,class:`selected-recipient`},D=20,O=f(e({__name:`Message`,setup(e){let f={0:`fa-info-circle`,1:`fa-clipboard-check`,2:`fa-tools`,3:`fa-envelope`},O={0:`系统通知`,1:`审核通知`,2:`工单通知`,3:`个人消息`},k={0:{bg:`rgba(37,99,235,0.1)`,color:`#2563eb`},1:{bg:`rgba(34,197,94,0.1)`,color:`#16a34a`},2:{bg:`rgba(234,179,8,0.1)`,color:`#ca8a04`},3:{bg:`rgba(139,92,246,0.1)`,color:`#8b5cf6`}},Fe=[{name:`all`,label:`全部`},{name:`unread`,label:`未读`},{name:`0`,label:`系统通知`},{name:`1`,label:`审核通知`},{name:`2`,label:`工单通知`},{name:`3`,label:`个人消息`}],A=g(),j=i(`all`),M=i(1),N=i([]),P=i(0),F=i(0),I=i(!1),L=i(!1),R=i(null),z=i(!1),B=t({title:``,content:``}),V=i(null),H=i(``),U=i([]),W=i(!1),G=i(!1),K=null;async function q(e,t){let n=await C.get(e,{params:t,responseType:`text`});return JSON.parse(n.data)}async function J(){I.value=!0;try{let e={action:`list`,PageIndex:M.value,PageSize:D};j.value===`unread`?e.IsRead=0:j.value!==`all`&&(e.MsgType=j.value);let t=await q(`/API/Message`,e);t.code===0?(N.value=t.data||[],P.value=t.total||0):(N.value=[],P.value=0)}catch{N.value=[],P.value=0}finally{I.value=!1}}async function Y(){try{let e=await q(`/API/Message`,{action:`unread_count`});e.code===0&&(F.value=e.UnreadCount||0)}catch{}}function Ie(e){j.value=String(e),M.value=1,J()}function Le(e){M.value=e,J()}async function X(e){try{let t=await q(`/API/Message`,{action:`detail`,MessageUUID:e});t.code===0&&t.data&&(R.value=t.data,L.value=!0,J(),Y())}catch{}}function Z(){L.value=!1,R.value=null}async function Q(e,t=!1){try{await w.confirm(`确定要删除这条消息吗?此操作不可撤销。`,`删除消息`,{type:`warning`,confirmButtonText:`删除`,cancelButtonText:`取消`})}catch{return}try{await E(`/API/Message`,void 0,{data:{MessageUUID:e}}),x.success(`已删除`),t&&Z(),J(),Y()}catch{}}async function Re(){try{await S(`/API/Message`,`action=read_all`,{headers:{"Content-Type":`application/x-www-form-urlencoded`}}),x.success(`已全部标记为已读`),J(),Y()}catch{}}function $(){V.value=null,H.value=``,B.title=``,B.content=``,U.value=[],W.value=!1,z.value=!0}function ze(e,t){$(),V.value={type:`user`,uuid:e,name:t,label:t},H.value=t}function Be(e){if(K&&clearTimeout(K),!e){U.value=[],W.value=!1;return}K=setTimeout(()=>{Ve(e)},300)}async function Ve(e){try{let t=await q(`/API/Message`,{action:`search_recipients`,keyword:e,limit:10});t.code===0&&t.data?(U.value=t.data,W.value=t.data.length>0):(U.value=[],W.value=!1)}catch{U.value=[],W.value=!1}}function He(e){V.value=e,H.value=e.name,W.value=!1}function Ue(){V.value=null,H.value=``}async function We(){if(!V.value){x.warning(`请选择收件人`);return}if(!B.title.trim()){x.warning(`请输入标题`);return}let e={ReceiverUUID:V.value.uuid,ReceiverType:V.value.type,Title:B.title.trim(),Content:B.content.trim(),MsgType:`3`};G.value=!0;try{await T(`/API/Message`,new URLSearchParams(e).toString(),{headers:{"Content-Type":`application/x-www-form-urlencoded`}}),x.success(`发送成功`),z.value=!1,(j.value===`3`||j.value===`all`)&&J()}catch{}finally{G.value=!1}}return _(()=>{b(`站内信`),J(),Y();let e=A.query.id;e&&X(e)}),h(()=>{K&&clearTimeout(K)}),(e,t)=>{let i=te,h=le,g=ce,_=oe,b=de,x=fe,S=ue,C=ne,w=se,T=ie,E=ae,A=pe;return ee((p(),v(`div`,me,[t[22]||=u(`h1`,{class:`page-title`},[u(`i`,{class:`fas fa-envelope icon-primary`}),d(`站内信 `)],-1),s(g,{modelValue:j.value,"onUpdate:modelValue":t[0]||=e=>j.value=e,class:`msg-tabs`,onTabChange:Ie}Line truncated
+1
View File
@@ -0,0 +1 @@
import{An as e,Br as t,Dn as n,Fn as r,Jn as i,Lr as a,Nn as o,Yn as ee,_ as s,cn as c,en as l,hn as u,ir as d,ln as f,m as p,mn as m,nr as h,on as g,pn as _,sn as v,zr as te}from"./useApi-CROJJdhE-mMpa5RAf.js";import{u as ne}from"./runtime-dom.esm-bundler-YxjRGSuG.js";import{a as y,l as re,o as b,u as ie}from"./serverScope-O8Rw8SFk.js";import{_ as x,c as S,d as C,l as w,o as T}from"./router-CMu0lceh.js";import{n as ae,t as oe}from"./form-F--u6XQJ.js";import{t as se}from"./button-CPx9BSuo.js";import{t as ce}from"./tag-BSnLMVgs.js";import{n as le,t as ue}from"./tabs-BSMusFE5.js";import{t as de}from"./dialog-_5VhSQg5.js";import{t as fe}from"./empty-CnQTxkvl.js";import{t as pe}from"./pagination-DOGDdUWm.js";import{t as me}from"./directive-CY41a6pJ.js";/* empty css */import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-6qaeDme6.js";import"./css-Cy-4mdDD.js";import"./css-49fsIjk3.js";import"./css-DmmbJMxg.js";import"./css-DMOjom7l.js";import"./css-fhPIiYtD.js";import"./css-D4jab2ni2.js";import"./css-DcINL9JV2.js";var he={class:`message-page`},ge={key:0},_e={key:1},ve={class:`msg-toolbar`},ye={class:`msg-list`},be=[`onClick`],xe={class:`msg-item-body`},Se={class:`msg-item-title`},Ce={class:`msg-item-content`},we={class:`msg-item-meta`},Te={class:`msg-item-actions`},Ee={key:0,class:`msg-pagination`},De={class:`detail-title`},Oe={key:0,class:`detail-body`},ke={class:`detail-meta`},Ae={class:`detail-content`},je={class:`detail-footer`},Me={class:`recipient-search`},Ne={key:0,class:`recipient-dropdown`},Pe=[`onClick`],Fe={key:0,class:`selected-recipient`},E=20,D=s(u({__name:`Message`,setup(s){let u={0:`fa-info-circle`,1:`fa-clipboard-check`,2:`fa-tools`,3:`fa-envelope`},D={0:`系统通知`,1:`审核通知`,2:`工单通知`,3:`个人消息`},O={0:{bg:`rgba(37,99,235,0.1)`,color:`#2563eb`},1:{bg:`rgba(34,197,94,0.1)`,color:`#16a34a`},2:{bg:`rgba(234,179,8,0.1)`,color:`#ca8a04`},3:{bg:`rgba(139,92,246,0.1)`,color:`#8b5cf6`}},Ie=[{name:`all`,label:`全部`},{name:`unread`,label:`未读`},{name:`0`,label:`系统通知`},{name:`1`,label:`审核通知`},{name:`2`,label:`工单通知`},{name:`3`,label:`个人消息`}],k=p(),A=d(`all`),j=d(1),M=d([]),N=d(0),P=d(0),F=d(!1),I=d(!1),L=d(null),R=d(!1),z=h({title:``,content:``}),B=d(null),V=d(``),H=d([]),U=d(!1),W=d(!1),G=null;async function K(e,t){let n=await C.get(e,{params:t,responseType:`text`});return JSON.parse(n.data)}async function q(){F.value=!0;try{let e={action:`list`,PageIndex:j.value,PageSize:E};A.value===`unread`?e.IsRead=0:A.value!==`all`&&(e.MsgType=A.value);let t=await K(`/API/Message`,e);t.code===0?(M.value=t.data||[],N.value=t.total||0):(M.value=[],N.value=0)}catch{M.value=[],N.value=0}finally{F.value=!1}}async function J(){try{let e=await K(`/API/Message`,{action:`unread_count`});e.code===0&&(P.value=e.UnreadCount||0)}catch{}}function Le(e){A.value=String(e),j.value=1,q()}function Y(e){j.value=e,q()}async function X(e){try{let t=await K(`/API/Message`,{action:`detail`,MessageUUID:e});t.code===0&&t.data&&(L.value=t.data,I.value=!0,q(),J())}catch{}}function Z(){I.value=!1,L.value=null}async function Q(e,t=!1){try{await x.confirm(`确定要删除这条消息吗?此操作不可撤销。`,`删除消息`,{type:`warning`,confirmButtonText:`删除`,cancelButtonText:`取消`})}catch{return}try{await T(`/API/Message`,void 0,{data:{MessageUUID:e}}),b.success(`已删除`),t&&Z(),q(),J()}catch{}}async function Re(){try{await S(`/API/Message`,`action=read_all`,{headers:{"Content-Type":`application/x-www-form-urlencoded`}}),b.success(`已全部标记为已读`),q(),J()}catch{}}function $(){B.value=null,V.value=``,z.title=``,z.content=``,H.value=[],U.value=!1,R.value=!0}function ze(e,t){$(),B.value={type:`user`,uuid:e,name:t,label:t},V.value=t}function Be(e){if(G&&clearTimeout(G),!e){H.value=[],U.value=!1;return}G=setTimeout(()=>{Ve(e)},300)}async function Ve(e){try{let t=await K(`/API/Message`,{action:`search_recipients`,keyword:e,limit:10});t.code===0&&t.data?(H.value=t.data,U.value=t.data.length>0):(H.value=[],U.value=!1)}catch{H.value=[],U.value=!1}}function He(e){B.value=e,V.value=e.name,U.value=!1}function Ue(){B.value=null,V.value=``}async function We(){if(!B.value){b.warning(`请选择收件人`);return}if(!z.title.trim()){b.warning(`请输入标题`);return}let e={ReceiverUUID:B.value.uuid,ReceiverType:B.value.type,Title:z.title.trim(),Content:z.content.trim(),MsgType:`3`};W.value=!0;try{await w(`/API/Message`,new URLSearchParams(e).toString(),{headers:{"Content-Type":`application/x-www-form-urlencoded`}}),b.success(`发送成功`),R.value=!1,(A.value===`3`||A.value===`all`)&&q()}catch{}finally{W.value=!1}}return e(()=>{y(`站内信`),q(),J();let e=k.query.id;e&&X(e)}),n(()=>{G&&clearTimeout(G)}),(e,n)=>{let s=re,d=ue,p=le,h=se,y=fe,b=pe,x=de,S=ie,C=ce,w=ae,T=oe,k=me;return ee((o(),f(`div`,he,[n[22]||=g(`h1`,{class:`page-title`},[g(`i`,{class:`fas fa-envelope icon-primary`}),_(`站内信 `)],-1),m(p,{modelValue:A.value,"onUpdate:modelValue":nLine truncated
+1
View File
@@ -0,0 +1 @@
import{Nn as e,_ as t,an as n,hn as r,ln as i,mn as a}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as o}from"./serverScope-O8Rw8SFk.js";import{r as s}from"./router-CMu0lceh.js";import{t as c}from"./CrudTable-B49nrpUt.js";var l={class:`wo-my-page`},u=t(r({__name:`My`,setup(t){let r=s();o(`我的工单`);let u=n(()=>{let e=r.userInfo?.UserUUID;return e?{CreatorUUID:e}:{}});return(t,n)=>(e(),i(`div`,l,[a(c,{table:`WorkOrder`,title:`我的工单`,query:u.value,searchable:``,pageable:``,stretch:``,selectable:!1},null,8,[`query`])]))}}),[[`__scopeId`,`data-v-b1c4d29e`]]);export{u as default};
-1
View File
@@ -1 +0,0 @@
import{$r as e,Qr as t,Ur as n,_ as r,_i as i,qr as a}from"./useApi-CROJJdhE-DTiQDIFh.js";import{a as o}from"./serverScope-CLCA_jyd.js";import{i as s}from"./router-Bz7E4dLH.js";import{t as c}from"./CrudTable-0btzlQyb.js";var l={class:`wo-my-page`},u=r(e({__name:`My`,setup(e){let r=s();o(`我的工单`);let u=n(()=>{let e=r.userInfo?.UserUUID;return e?{CreatorUUID:e}:{}});return(e,n)=>(i(),a(`div`,l,[t(c,{table:`WorkOrder`,title:`我的工单`,query:u.value,searchable:``,pageable:``,stretch:``,selectable:!1},null,8,[`query`])]))}}),[[`__scopeId`,`data-v-b1c4d29e`]]);export{u as default};
@@ -1 +0,0 @@
import{$r as e,Mi as t,Qr as n,Xi as r,Zr as i,_ as a,_i as o,h as s,qr as c}from"./useApi-CROJJdhE-DTiQDIFh.js";import{t as l}from"./button-dPBZLBL0.js";import{t as u}from"./result-DHdjLvzi.js";/* empty css */import"./css-DsD2Typt.js";var d={class:`not-found`},f=a(e({__name:`NotFound`,setup(e){let a=s();return(e,s)=>{let f=l,p=u;return o(),c(`div`,d,[n(p,{icon:`warning`,title:`404`,"sub-title":`页面不存在或已被移动`},{extra:t(()=>[n(f,{type:`primary`,onClick:s[0]||=e=>r(a).push(`/dashboard`)},{default:t(()=>[...s[1]||=[i(`返回首页`,-1)]]),_:1})]),_:1})])}}}),[[`__scopeId`,`data-v-4e672049`]]);export{f as default};
@@ -0,0 +1 @@
import{Jn as e,Nn as t,_ as n,h as r,hn as i,ln as a,mn as o,pn as s,pr as c}from"./useApi-CROJJdhE-mMpa5RAf.js";import{t as l}from"./button-CPx9BSuo.js";import{t as u}from"./result-gkzjWpF7.js";/* empty css */import"./css-DsD2Typt.js";var d={class:`not-found`},f=n(i({__name:`NotFound`,setup(n){let i=r();return(n,r)=>{let f=l,p=u;return t(),a(`div`,d,[o(p,{icon:`warning`,title:`404`,"sub-title":`页面不存在或已被移动`},{extra:e(()=>[o(f,{type:`primary`,onClick:r[0]||=e=>c(i).push(`/dashboard`)},{default:e(()=>[...r[1]||=[s(`返回首页`,-1)]]),_:1})]),_:1})])}}}),[[`__scopeId`,`data-v-4e672049`]]);export{f as default};
-1
View File
@@ -1 +0,0 @@
import{$r as e,Ca as t,Qr as n,Ur as r,Wr as i,_ as a,_i as o,ba as s,h as c,qr as l}from"./useApi-CROJJdhE-DTiQDIFh.js";import{a as u}from"./serverScope-CLCA_jyd.js";import{i as d}from"./router-Bz7E4dLH.js";import{t as f}from"./AdminBadge-DWq3-CmW.js";import{t as p}from"./CrudTable-0btzlQyb.js";var m={class:`order-page`},h=a(e({__name:`Orders`,setup(e){let a=d(),h=c();u(`销售订单`);let g=r(()=>a.isAdmin),_=r(()=>`scope-banner ${g.value?`admin`:`normal`}`),v=r(()=>g.value?`管理员视图:可查看全公司订单,含跨公司特权模式。`:`普通组员视图:仅可查看自己的订单。`);function y(e){h.push({path:`/sales/order-detail`,query:{OrderUUID:e.OrderUUID||``}})}return(e,r)=>(o(),l(`div`,m,[n(f),i(`div`,{class:s(_.value)},[i(`i`,{class:s([`fas`,g.value?`fa-shield-alt`:`fa-info-circle`])},null,2),i(`span`,null,t(v.value),1)],2),n(p,{table:`Order`,title:`销售订单`,"pk-field":`OrderUUID`,searchable:``,pageable:``,stretch:``,selectable:``,"on-view":y})]))}}),[[`__scopeId`,`data-v-d8a23658`]]);export{h as default};
+1
View File
@@ -0,0 +1 @@
import{Br as e,Lr as t,Nn as n,_ as r,an as i,h as a,hn as o,ln as s,mn as c,on as l}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as u}from"./serverScope-O8Rw8SFk.js";import{r as d}from"./router-CMu0lceh.js";import{t as f}from"./AdminBadge-Z72F8Boy.js";import{t as p}from"./CrudTable-B49nrpUt.js";var m={class:`order-page`},h=r(o({__name:`Orders`,setup(r){let o=d(),h=a();u(`销售订单`);let g=i(()=>o.isAdmin),_=i(()=>`scope-banner ${g.value?`admin`:`normal`}`),v=i(()=>g.value?`管理员视图:可查看全公司订单,含跨公司特权模式。`:`普通组员视图:仅可查看自己的订单。`);function y(e){h.push({path:`/sales/order-detail`,query:{OrderUUID:e.OrderUUID||``}})}return(r,i)=>(n(),s(`div`,m,[c(f),l(`div`,{class:t(_.value)},[l(`i`,{class:t([`fas`,g.value?`fa-shield-alt`:`fa-info-circle`])},null,2),l(`span`,null,e(v.value),1)],2),c(p,{table:`Order`,title:`销售订单`,"pk-field":`OrderUUID`,searchable:``,pageable:``,stretch:``,selectable:``,"on-view":y})]))}}),[[`__scopeId`,`data-v-d8a23658`]]);export{h as default};
@@ -0,0 +1 @@
import{An as e,Br as t,Fn as n,Jn as r,Lr as i,Nn as a,Yn as o,_ as s,an as c,cn as l,en as u,hn as d,ir as f,ln as p,mn as m,nr as h,on as g,pn as _,sn as v}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as y,o as b,u as x}from"./serverScope-O8Rw8SFk.js";import{r as ee,t as te}from"./select-BGsfCDCJ.js";import{_ as S,l as C,r as w,s as T}from"./router-CMu0lceh.js";import{n as ne,t as re}from"./form-F--u6XQJ.js";import{t as ie}from"./button-CPx9BSuo.js";import{t as ae}from"./tag-BSnLMVgs.js";import{t as oe}from"./checkbox-CdKclTX1.js";import{t as se}from"./dialog-_5VhSQg5.js";import{t as ce}from"./empty-CnQTxkvl.js";import{t as le}from"./directive-CY41a6pJ.js";/* empty css */import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-Cy-4mdDD.js";import"./css-49fsIjk3.js";import"./css-DMLZMbB9.js";import"./css-DmmbJMxg.js";import"./css-DMOjom7l.js";import"./css-Dmy6QwIc.js";import{t as ue}from"./AdminBadge-Z72F8Boy.js";import"./css-D4jab2ni2.js";var de={class:`payment-config-page`},fe={class:`pc-header`},E={class:`pc-grid`},D={key:0,class:`pc-error`},O={class:`pc-card-header`},k={class:`platform`},A={class:`pc-card-body`},j={class:`row`},M={class:`value`},N={class:`row`},P={class:`value`},F={class:`row`},I={class:`row`},L={class:`row`},R={key:0,class:`row`},z={class:`value`},B={class:`pc-card-actions`},pe={key:0,class:`secret-hint`},me={key:0,class:`secret-hint`},he={key:0,class:`secret-hint`},V=s(d({__name:`PaymentConfig`,setup(s){let d=w(),V=[{value:`wechat`,label:`微信支付`},{value:`alipay`,label:`支付宝`},{value:`bank`,label:`银行直连`},{value:`other`,label:`其他`}],H={wechat:`微信支付`,alipay:`支付宝`,bank:`银行直连`,other:`其他`};function U(){return{Platform:`wechat`,AppID:``,MchID:``,APIKey:``,PrivateKey:``,PublicKey:``,NotifyURL:``,ReturnURL:``,CertPath:``,CertKeyPath:``,ConfigDefault:!1,ConfigStatus:!0}}let W=f([]),G=f(!1),K=f(``),q=f(!1),J=f(null),Y=c(()=>J.value!==null),X=h(U()),Z=f(!1),ge=c(()=>d.isAdmin);async function Q(){if(!ge.value){K.value=`无权访问:仅管理员可查看支付网关配置`,W.value=[];return}G.value=!0,K.value=``;try{let e=await T(`/API/Payment/Configs`);W.value=Array.isArray(e)?e:[]}catch(e){W.value=[],K.value=e instanceof Error?e.message:`加载失败`}finally{G.value=!1}}function _e(){J.value=null,Object.assign(X,U()),q.value=!0}function ve(e){J.value=e.ConfigUUID,Object.assign(X,{Platform:e.Platform,AppID:e.AppID||``,MchID:e.MchID||``,APIKey:``,PrivateKey:``,PublicKey:``,NotifyURL:e.NotifyURL||``,ReturnURL:e.ReturnURL||``,CertPath:e.CertPath||``,CertKeyPath:e.CertKeyPath||``,ConfigDefault:!!e.ConfigDefault,ConfigStatus:e.ConfigStatus===1}),q.value=!0}function $(e){return e||(Y.value?`***`:``)}async function ye(){let e={ConfigUUID:J.value||null,Platform:X.Platform,AppID:X.AppID,MchID:X.MchID,APIKey:$(X.APIKey),PrivateKey:$(X.PrivateKey),PublicKey:$(X.PublicKey),NotifyURL:X.NotifyURL,ReturnURL:X.ReturnURL,CertPath:X.CertPath,CertKeyPath:X.CertKeyPath,ConfigDefault:X.ConfigDefault,ConfigStatus:+!!X.ConfigStatus};Z.value=!0;try{await C(`/API/Payment/SaveConfig`,e),b.success(`保存成功`),q.value=!1,Q()}catch{}finally{Z.value=!1}}async function be(e,t){let n=H[t]||t;try{await S.confirm(`确认删除 ${n} 网关配置?`,`提示`,{type:`warning`,confirmButtonText:`确认删除`,cancelButtonText:`取消`})}catch{return}try{await C(`/API/Payment/DeleteConfig/${e}`),b.success(`已删除`),Q()}catch{}}return e(()=>{y(`支付网关配置`),Q()}),(e,s)=>{let c=ie,d=ce,f=ae,h=te,y=ee,b=ne,S=x,C=oe,w=re,T=se,U=le;return a(),p(`div`,de,[m(ue),g(`div`,fe,[s[16]||=g(`h1`,{class:`page-title`},[g(`i`,{class:`fas fa-credit-card icon-primary`}),g(`span`,null,`支付网关配置`)],-1),m(c,{type:`primary`,onClick:_e},{default:r(()=>[...s[14]||=[g(`i`,{class:`fas fa-plus`},null,-1),_(` 新增配置 `,-1)]]),_:1}),m(c,{onClick:Q},{default:r(()=>[...s[15]||=[g(`i`,{class:`fas fa-sync`},null,-1),_(` 刷新 `,-1)]]),_:1})]),o((a(),p(`div`,E,[K.value?(a(),p(`div`,D,[s[17]||=g(`i`,{class:`fas fa-exclamation-triangle`},null,-1),g(`div`,null,t(K.value),1)])):!G.value&&W.value.length===0?(a(),v(d,{key:1,description:`暂无支付网关配置`,"image-size":60})):l(``,!0),(a(!0),p(u,null,n(W.value,e=>(a(),p(`div`,{key:e.ConfigUUID,class:`pc-card`},[g(`div`,O,[g(`span`,k,t(H[e.Platform]||e.Platform),1),e.ConfigDefault?(a(),v(f,{key:0,type:`primary`,size:`small`},{default:r(()=>[...s[18]||=[_(`默认`,-1)]]),_:1})):l(``,!0),m(f,{type:e.ConfigStatus===1?`success`:`danger`,size:`small`},{default:r(()=>[_(t(e.ConfigStatus===1?`启用`:`停用`),1)]),_:2},1032,[`type`])]),g(`div`,A,[g(`div`,j,[s[19]||=g(`span`,{class:`label`},`AppID`,-1),g(`span`,M,t(e.AppID||`-`),1)]),g(`div`,N,[s[20]||=g(`span`,{class:`label`},`商户号`,-1),g(`span`,P,t(e.MchID||`-`),1)]),g(`div`,F,[s[21]||=g(`span`,{class:`label`},`APIKey`,-1),g(`span`,{class:i([`value`,e.APIKeySet?`secret-set`:`secret-unset`])},t(e.APIKeySet?`已设置 ***`:`未设置`),3)]),g(`div`,I,[s[22]||=g(`span`,{cLine truncated
@@ -1 +0,0 @@
import{$r as e,Bi as t,Ca as n,Gr as r,Hi as i,Kr as a,Mi as o,Ni as ee,Qr as s,Rr as c,Ur as l,Wr as u,Zr as d,_ as f,_i as p,ba as m,mi as h,qr as g,yi as _}from"./useApi-CROJJdhE-DTiQDIFh.js";import{a as v,o as y,u as te}from"./serverScope-CLCA_jyd.js";import{r as ne,t as b}from"./select-VtLnfNTa.js";import{g as x,i as S,l as C,s as w}from"./router-Bz7E4dLH.js";import{n as re,t as ie}from"./form-DkCs-bRK.js";import{t as ae}from"./button-dPBZLBL0.js";import{t as oe}from"./tag-DsjHDKbM.js";import{t as se}from"./checkbox-C0xSI7i2.js";import{t as ce}from"./dialog-2NPB22v1.js";import{t as le}from"./empty-BgmR_P06.js";import{t as ue}from"./directive-DsCzzPS8.js";/* empty css */import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-Cy-4mdDD.js";import"./css-49fsIjk3.js";import"./css-DMLZMbB9.js";import"./css-DmmbJMxg.js";import"./css-DMOjom7l.js";import"./css-Dmy6QwIc.js";import{t as de}from"./AdminBadge-DWq3-CmW.js";import"./css-D4jab2ni.js";var fe={class:`payment-config-page`},T={class:`pc-header`},E={class:`pc-grid`},D={key:0,class:`pc-error`},O={class:`pc-card-header`},k={class:`platform`},A={class:`pc-card-body`},j={class:`row`},M={class:`value`},N={class:`row`},P={class:`value`},F={class:`row`},I={class:`row`},L={class:`row`},R={key:0,class:`row`},z={class:`value`},B={class:`pc-card-actions`},pe={key:0,class:`secret-hint`},me={key:0,class:`secret-hint`},he={key:0,class:`secret-hint`},V=f(e({__name:`PaymentConfig`,setup(e){let f=S(),V=[{value:`wechat`,label:`微信支付`},{value:`alipay`,label:`支付宝`},{value:`bank`,label:`银行直连`},{value:`other`,label:`其他`}],H={wechat:`微信支付`,alipay:`支付宝`,bank:`银行直连`,other:`其他`};function U(){return{Platform:`wechat`,AppID:``,MchID:``,APIKey:``,PrivateKey:``,PublicKey:``,NotifyURL:``,ReturnURL:``,CertPath:``,CertKeyPath:``,ConfigDefault:!1,ConfigStatus:!0}}let W=i([]),G=i(!1),K=i(``),q=i(!1),J=i(null),Y=l(()=>J.value!==null),X=t(U()),Z=i(!1),ge=l(()=>f.isAdmin);async function Q(){if(!ge.value){K.value=`无权访问:仅管理员可查看支付网关配置`,W.value=[];return}G.value=!0,K.value=``;try{let e=await w(`/API/Payment/Configs`);W.value=Array.isArray(e)?e:[]}catch(e){W.value=[],K.value=e instanceof Error?e.message:`加载失败`}finally{G.value=!1}}function _e(){J.value=null,Object.assign(X,U()),q.value=!0}function ve(e){J.value=e.ConfigUUID,Object.assign(X,{Platform:e.Platform,AppID:e.AppID||``,MchID:e.MchID||``,APIKey:``,PrivateKey:``,PublicKey:``,NotifyURL:e.NotifyURL||``,ReturnURL:e.ReturnURL||``,CertPath:e.CertPath||``,CertKeyPath:e.CertKeyPath||``,ConfigDefault:!!e.ConfigDefault,ConfigStatus:e.ConfigStatus===1}),q.value=!0}function $(e){return e||(Y.value?`***`:``)}async function ye(){let e={ConfigUUID:J.value||null,Platform:X.Platform,AppID:X.AppID,MchID:X.MchID,APIKey:$(X.APIKey),PrivateKey:$(X.PrivateKey),PublicKey:$(X.PublicKey),NotifyURL:X.NotifyURL,ReturnURL:X.ReturnURL,CertPath:X.CertPath,CertKeyPath:X.CertKeyPath,ConfigDefault:X.ConfigDefault,ConfigStatus:+!!X.ConfigStatus};Z.value=!0;try{await C(`/API/Payment/SaveConfig`,e),y.success(`保存成功`),q.value=!1,Q()}catch{}finally{Z.value=!1}}async function be(e,t){let n=H[t]||t;try{await x.confirm(`确认删除 ${n} 网关配置?`,`提示`,{type:`warning`,confirmButtonText:`确认删除`,cancelButtonText:`取消`})}catch{return}try{await C(`/API/Payment/DeleteConfig/${e}`),y.success(`已删除`),Q()}catch{}}return h(()=>{v(`支付网关配置`),Q()}),(e,t)=>{let i=ae,l=le,f=oe,h=b,v=ne,y=re,x=te,S=se,C=ie,w=ce,U=ue;return p(),g(`div`,fe,[s(de),u(`div`,T,[t[16]||=u(`h1`,{class:`page-title`},[u(`i`,{class:`fas fa-credit-card icon-primary`}),u(`span`,null,`支付网关配置`)],-1),s(i,{type:`primary`,onClick:_e},{default:o(()=>[...t[14]||=[u(`i`,{class:`fas fa-plus`},null,-1),d(` 新增配置 `,-1)]]),_:1}),s(i,{onClick:Q},{default:o(()=>[...t[15]||=[u(`i`,{class:`fas fa-sync`},null,-1),d(` 刷新 `,-1)]]),_:1})]),ee((p(),g(`div`,E,[K.value?(p(),g(`div`,D,[t[17]||=u(`i`,{class:`fas fa-exclamation-triangle`},null,-1),u(`div`,null,n(K.value),1)])):!G.value&&W.value.length===0?(p(),r(l,{key:1,description:`暂无支付网关配置`,"image-size":60})):a(``,!0),(p(!0),g(c,null,_(W.value,e=>(p(),g(`div`,{key:e.ConfigUUID,class:`pc-card`},[u(`div`,O,[u(`span`,k,n(H[e.Platform]||e.Platform),1),e.ConfigDefault?(p(),r(f,{key:0,type:`primary`,size:`small`},{default:o(()=>[...t[18]||=[d(`默认`,-1)]]),_:1})):a(``,!0),s(f,{type:e.ConfigStatus===1?`success`:`danger`,size:`small`},{default:o(()=>[d(n(e.ConfigStatus===1?`启用`:`停用`),1)]),_:2},1032,[`type`])]),u(`div`,A,[u(`div`,j,[t[19]||=u(`span`,{class:`label`},`AppID`,-1),u(`span`,M,n(e.AppID||`-`),1)]),u(`div`,N,[t[20]||=u(`span`,{class:`label`},`商户号`,-1),u(`span`,P,n(e.MchID||`-`),1)]),u(`div`,F,[t[21]||=u(`span`,{class:`label`},`APIKey`,-1),u(`span`,{class:m([`value`,e.APIKeySet?`secret-set`:`secret-unset`])},n(e.APIKeySet?`已设置 ***`:`未设置`),3)]),u(`div`,I,[t[22]||=u(`span`,{clLine truncated
@@ -1 +0,0 @@
import{$r as e,Ca as t,Qr as n,Ur as r,Wr as i,_ as a,_i as o,ba as s,h as c,qr as l}from"./useApi-CROJJdhE-DTiQDIFh.js";import{a as u}from"./serverScope-CLCA_jyd.js";import{i as d}from"./router-Bz7E4dLH.js";import{t as f}from"./AdminBadge-DWq3-CmW.js";import{t as p}from"./CrudTable-0btzlQyb.js";var m={class:`product-page`},h=a(e({__name:`Products`,setup(e){let a=d(),h=c();u(`产品管理`);let g=r(()=>a.isAdmin),_=r(()=>`scope-banner ${g.value?`admin`:`normal`}`),v=r(()=>g.value?`管理员视图:可查看和管理全公司产品模板,含跨公司特权模式。`:`普通组员视图:可查看可用产品列表。`);function y(e){h.push({path:`/inventory/product-detail`,query:{TemplateUUID:e.TemplateUUID||``}})}return(e,r)=>(o(),l(`div`,m,[n(f),i(`div`,{class:s(_.value)},[i(`i`,{class:s([`fas`,g.value?`fa-shield-alt`:`fa-info-circle`])},null,2),i(`span`,null,t(v.value),1)],2),n(p,{table:`OrderTemplate`,title:`产品管理`,"pk-field":`TemplateUUID`,searchable:``,pageable:``,stretch:``,selectable:g.value,"on-view":y},null,8,[`selectable`])]))}}),[[`__scopeId`,`data-v-2c36b7b7`]]);export{h as default};
@@ -0,0 +1 @@
import{Br as e,Lr as t,Nn as n,_ as r,an as i,h as a,hn as o,ln as s,mn as c,on as l}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as u}from"./serverScope-O8Rw8SFk.js";import{r as d}from"./router-CMu0lceh.js";import{t as f}from"./AdminBadge-Z72F8Boy.js";import{t as p}from"./CrudTable-B49nrpUt.js";var m={class:`product-page`},h=r(o({__name:`Products`,setup(r){let o=d(),h=a();u(`产品管理`);let g=i(()=>o.isAdmin),_=i(()=>`scope-banner ${g.value?`admin`:`normal`}`),v=i(()=>g.value?`管理员视图:可查看和管理全公司产品模板,含跨公司特权模式。`:`普通组员视图:可查看可用产品列表。`);function y(e){h.push({path:`/inventory/product-detail`,query:{TemplateUUID:e.TemplateUUID||``}})}return(r,i)=>(n(),s(`div`,m,[c(f),l(`div`,{class:t(_.value)},[l(`i`,{class:t([`fas`,g.value?`fa-shield-alt`:`fa-info-circle`])},null,2),l(`span`,null,e(v.value),1)],2),c(p,{table:`OrderTemplate`,title:`产品管理`,"pk-field":`TemplateUUID`,searchable:``,pageable:``,stretch:``,selectable:g.value,"on-view":y},null,8,[`selectable`])]))}}),[[`__scopeId`,`data-v-2c36b7b7`]]);export{h as default};
+1
View File
@@ -0,0 +1 @@
import{Br as e,Jn as t,Nn as n,_ as r,hn as i,mn as a,on as o,pn as s,pr as c,sn as l}from"./useApi-CROJJdhE-mMpa5RAf.js";import{n as u,t as d}from"./descriptions-Cq_aE9sg.js";import{i as f,r as p}from"./router-CMu0lceh.js";import{t as m}from"./tag-BSnLMVgs.js";import{t as h}from"./card-Dj_UeWcA.js";/* empty css */import"./css-BEipSTAx.js";import"./css-D-a1H3t1.js";import"./css-CysIl0tz.js";var g={class:`profile`},_=[`src`],v=r(i({__name:`Profile`,setup(r){let i=p(),v=f();return(r,f)=>{let p=u,y=m,b=d,x=h;return n(),l(x,{shadow:`never`},{header:t(()=>[...f[0]||=[o(`span`,null,`个人中心`,-1)]]),default:t(()=>[o(`div`,g,[o(`img`,{src:c(v),alt:`头像`,class:`avatar`},null,8,_),a(b,{column:1,border:``},{default:t(()=>[a(p,{label:`用户名`},{default:t(()=>[s(e(c(i).userInfo?.UserName||`-`),1)]),_:1}),a(p,{label:`显示名`},{default:t(()=>[s(e(c(i).userInfo?.DisplayName||`-`),1)]),_:1}),a(p,{label:`邮箱`},{default:t(()=>[s(e(c(i).userInfo?.Email||`-`),1)]),_:1}),a(p,{label:`当前角色`},{default:t(()=>[s(e(c(i).currentRole||`-`),1)]),_:1}),a(p,{label:`是否管理员`},{default:t(()=>[a(y,{type:c(i).isAdmin?`danger`:`info`},{default:t(()=>[s(e(c(i).isAdmin?`是`:`否`),1)]),_:1},8,[`type`])]),_:1})]),_:1})])]),_:1})}}}),[[`__scopeId`,`data-v-0032e664`]]);export{v as default};
-1
View File
@@ -1 +0,0 @@
import{$r as e,Ca as t,Gr as n,Mi as r,Qr as i,Wr as a,Xi as o,Zr as s,_ as c,_i as l}from"./useApi-CROJJdhE-DTiQDIFh.js";import{n as u,t as d}from"./descriptions-DdoyLmWE.js";import{a as f,i as p}from"./router-Bz7E4dLH.js";import{t as m}from"./tag-DsjHDKbM.js";import{t as h}from"./card-CKxtkBHA.js";/* empty css */import"./css-BEipSTAx.js";import"./css-D-a1H3t1.js";import"./css-CysIl0tz.js";var g={class:`profile`},_=[`src`],v=c(e({__name:`Profile`,setup(e){let c=p(),v=f();return(e,f)=>{let p=u,y=m,b=d,x=h;return l(),n(x,{shadow:`never`},{header:r(()=>[...f[0]||=[a(`span`,null,`个人中心`,-1)]]),default:r(()=>[a(`div`,g,[a(`img`,{src:o(v),alt:`头像`,class:`avatar`},null,8,_),i(b,{column:1,border:``},{default:r(()=>[i(p,{label:`用户名`},{default:r(()=>[s(t(o(c).userInfo?.UserName||`-`),1)]),_:1}),i(p,{label:`显示名`},{default:r(()=>[s(t(o(c).userInfo?.DisplayName||`-`),1)]),_:1}),i(p,{label:`邮箱`},{default:r(()=>[s(t(o(c).userInfo?.Email||`-`),1)]),_:1}),i(p,{label:`当前角色`},{default:r(()=>[s(t(o(c).currentRole||`-`),1)]),_:1}),i(p,{label:`是否管理员`},{default:r(()=>[i(y,{type:o(c).isAdmin?`danger`:`info`},{default:r(()=>[s(t(o(c).isAdmin?`是`:`否`),1)]),_:1},8,[`type`])]),_:1})]),_:1})])]),_:1})}}}),[[`__scopeId`,`data-v-0032e664`]]);export{v as default};
-1
View File
@@ -1 +0,0 @@
import{$r as e,Qr as t,_ as n,_i as r,h as i,qr as a}from"./useApi-CROJJdhE-DTiQDIFh.js";import{a as o}from"./serverScope-CLCA_jyd.js";import{t as s}from"./AdminBadge-DWq3-CmW.js";import{t as c}from"./CrudTable-0btzlQyb.js";var l={class:`role-page`},u=n(e({__name:`Role`,setup(e){o(`角色管理`);let n=i();function u(e){n.push({path:`/company/role-detail`,query:{RoleUUID:e.RoleUUID||``}})}return(e,n)=>(r(),a(`div`,l,[t(s),t(c,{table:`Role`,title:`角色管理`,"pk-field":`RoleUUID`,searchable:``,pageable:``,stretch:``,selectable:``,"on-view":u})]))}}),[[`__scopeId`,`data-v-fe35ce37`]]);export{u as default};
+1
View File
@@ -0,0 +1 @@
import{Nn as e,_ as t,h as n,hn as r,ln as i,mn as a}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as o}from"./serverScope-O8Rw8SFk.js";import{t as s}from"./AdminBadge-Z72F8Boy.js";import{t as c}from"./CrudTable-B49nrpUt.js";var l={class:`role-page`},u=t(r({__name:`Role`,setup(t){o(`角色管理`);let r=n();function u(e){r.push({path:`/company/role-detail`,query:{RoleUUID:e.RoleUUID||``}})}return(t,n)=>(e(),i(`div`,l,[a(s),a(c,{table:`Role`,title:`角色管理`,"pk-field":`RoleUUID`,searchable:``,pageable:``,stretch:``,selectable:``,"on-view":u})]))}}),[[`__scopeId`,`data-v-fe35ce37`]]);export{u as default};
@@ -1 +0,0 @@
import{$r as e,Bi as t,Ca as n,D as r,Gr as i,Hi as a,Kr as o,Mi as s,Qr as c,Rr as l,Ur as u,Wr as d,Xi as f,Zr as p,_ as m,_i as h,h as g,m as _,mi as v,qr as y,xi as b,yi as x}from"./useApi-CROJJdhE-DTiQDIFh.js";import{a as S,o as C,u as ee}from"./serverScope-CLCA_jyd.js";import{t as w}from"./date-picker-DUqMIidt.js";import{n as T}from"./descriptions-DdoyLmWE.js";import{r as E,t as D}from"./select-VtLnfNTa.js";import{i as O}from"./router-Bz7E4dLH.js";import{n as k,t as A}from"./form-DkCs-bRK.js";import{t as j}from"./alert-BVfR0rW0.js";import{t as M}from"./button-dPBZLBL0.js";import{t as N}from"./tag-DsjHDKbM.js";import{t as te}from"./card-CKxtkBHA.js";import{t as ne}from"./dialog-2NPB22v1.js";import{t as re}from"./input-number-BYrgUFpo.js";import{t as ie}from"./switch-TyRYNjQq.js";/* empty css */import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-CttyGzET.js";import"./css-D-a1H3t1.js";import"./css-49fsIjk3.js";import"./css-DmmbJMxg.js";import"./css-CysIl0tz.js";import"./css-w8-s2aei.js";import"./css-DMOjom7l.js";import"./css-Dmy6QwIc.js";import"./AdminBadge-DWq3-CmW.js";import"./css-BLJI5-W_.js";import{n as ae,t as P}from"./CrudTable-0btzlQyb.js";import"./css-ByqxgOA-.js";import{t as F}from"./form-DjuqPK5m.js";import{t as I}from"./DetailPage-D_nlVGtk.js";import{t as L}from"./InfoGrid-BuM8q62h.js";var R={class:`perm-hint`},z=`RoleUUID`,B=m(e({__name:`RoleDetail`,setup(e){let m=_(),B=g(),V=O(),H=m.query.RoleUUID||``,U=a(!1),W=a(null),G=a(!1),K=a(!1),q=a([]),J=t({}),oe=u(()=>W.value?.RoleName||`角色详情`),se=u(()=>V.isAdmin?`特权模式:显示该角色在所有公司的关联记录(无公司隔离)`:`仅显示当前公司数据。如需查看所有公司记录,需管理员特权。`);function ce(e){return e===0||e===`0`?`组员`:e===1||e===`1`?`组长`:`-`}function Y(e){return e===1||e===`1`?{text:`启用`,type:`success`}:e===0||e===`0`?{text:`禁用`,type:`danger`}:{text:String(e??`-`),type:`warning`}}function X(e){return e===0||e===`0`?{text:`全租户可分发`,type:`success`}:e===1||e===`1`?{text:`指定公司可分发`,type:`primary`}:e===2||e===`2`?{text:`指定部门可分发`,type:`warning`}:{text:`-`,type:`info`}}function Z(e){if(!e)return`-`;let t=new Date(e);if(isNaN(t.getTime()))return String(e);let n=e=>String(e).padStart(2,`0`);return`${t.getFullYear()}-${n(t.getMonth()+1)}-${n(t.getDate())} ${n(t.getHours())}:${n(t.getMinutes())}`}let le=u(()=>q.value.filter(e=>e.editable!==!1&&!e.hideInForm&&e.type!==`hidden`&&e.type!==`divider`&&e.type!==`html`&&e.field!==z));async function Q(){if(!H){C.warning(`缺少 RoleUUID 参数,无法加载角色详情`);return}U.value=!0;try{let e=await F.list(`Role`,{[z]:H,pageSize:1}),t=Array.isArray(e)?e:e?.list||[],n=t.find(e=>e[z]===H)||t[0];if(!n){C.error(`未找到角色数据`);return}W.value=n,S(n.RoleName||`角色详情`)}finally{U.value=!1}}async function $(){try{q.value=await F.getColumns(`Role`)}catch{}}function ue(){W.value&&(Object.keys(J).forEach(e=>delete J[e]),Object.assign(J,W.value),G.value=!0)}async function de(){K.value=!0;try{await F.update(`Role`,J[z],J),C.success(`保存成功`),G.value=!1,await Q()}finally{K.value=!1}}function fe(){if(!H){C.warning(`缺少 RoleUUID`);return}B.push({path:`/system/role-permissions`,query:{RoleUUID:H}})}function pe(e){B.push({path:`/system/user-detail`,query:{UserUUID:e.UserUUID||``}})}return v(async()=>{await Promise.all([Q(),$()])}),(e,t)=>{let a=b(`Edit`),u=r,m=M,g=b(`Connection`),_=j,v=T,S=N,C=te,O=b(`InfoFilled`),F=ee,z=re,B=D,q=E,Q=w,$=ie,me=k,he=A,ge=ne;return h(),i(I,{title:oe.value,loading:U.value},{actions:s(()=>[c(m,{type:`primary`,onClick:ue},{default:s(()=>[c(u,null,{default:s(()=>[c(a)]),_:1}),t[2]||=p(`编辑 `,-1)]),_:1}),c(m,{onClick:fe,title:`按权限组勾选分配权限`},{default:s(()=>[c(u,null,{default:s(()=>[c(g)]),_:1}),t[3]||=p(`权限树分配 `,-1)]),_:1})]),default:s(()=>[c(_,{type:f(V).isAdmin?`warning`:`info`,closable:!1,"show-icon":``},{default:s(()=>[p(n(se.value),1)]),_:1},8,[`type`]),c(L,{title:`基本信息`,columns:2},{default:s(()=>[c(v,{label:`角色名称`},{default:s(()=>[p(n(W.value?.RoleName||`-`),1)]),_:1}),c(v,{label:`角色类型`},{default:s(()=>[p(n(ce(W.value?.RoleType)),1)]),_:1}),c(v,{label:`角色状态`},{default:s(()=>[c(S,{type:Y(W.value?.RoleStatus).type,size:`small`},{default:s(()=>[p(n(Y(W.value?.RoleStatus).text),1)]),_:1},8,[`type`])]),_:1}),c(v,{label:`分配范围`},{default:s(()=>[c(S,{type:X(W.value?.AssignScope).type,size:`small`},{default:s(()=>[p(n(X(W.value?.AssignScope).text),1)]),_:1},8,[`type`])]),_:1}),c(v,{label:`角色描述`},{default:s(()=>[p(n(W.value?.RoleDesc||`-`),1)]),_:1}),c(v,{label:`创建时间`},{default:s(()=>[p(n(Z(W.value?.CreateTime)),1)]),_:1})]),_:1}),c(C,{shadow:`never`},{header:s(()=>[...t[4]||=[p(`关联用户`,-1)]]),default:s(()=>[f(H)?(h(),i(P,{key:0,table:`UserRole`,title:`角色用户`,query:{RoleUUID:f(H)},"pk-field":`UserRoleUUID`,selectable:``,pageable:``,"on-view":pe}Line truncated
@@ -0,0 +1 @@
import{An as e,Br as t,Fn as n,Jn as r,Ln as ee,Nn as i,_ as a,an as o,cn as s,en as c,hn as l,ir as u,ln as d,m as f,mn as p,nr as m,pn as h,pr as g,sn as _}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as v,i as y,o as b,r as x,u as S}from"./serverScope-O8Rw8SFk.js";import{t as C}from"./date-picker-CM_15T0u.js";import{u as w}from"./use-global-config-D-dPcPvU.js";import{n as T}from"./descriptions-Cq_aE9sg.js";import{r as E,t as D}from"./select-BGsfCDCJ.js";import{n as O,t as k}from"./form-F--u6XQJ.js";import{t as A}from"./alert-BpFV-0dO.js";import{t as te}from"./button-CPx9BSuo.js";import{t as ne}from"./tag-BSnLMVgs.js";import{t as re}from"./card-Dj_UeWcA.js";import{t as ie}from"./dialog-_5VhSQg5.js";import{t as ae}from"./input-number-CiNOxXL6.js";import{t as oe}from"./switch-7puThziV.js";/* empty css */import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-CttyGzET.js";import"./css-D-a1H3t1.js";import"./css-49fsIjk3.js";import"./css-DmmbJMxg.js";import"./css-CysIl0tz.js";import"./css-w8-s2aei.js";import"./css-DMOjom7l.js";import"./css-Dmy6QwIc.js";import"./AdminBadge-Z72F8Boy.js";import"./css-BLJI5-W_.js";import{t as j}from"./CrudTable-B49nrpUt.js";import"./css-ByqxgOA-.js";import{t as M}from"./form-B2Pzr8Vf.js";import{t as N}from"./DetailPage-m11wfvkM.js";import{t as P}from"./InfoGrid-C1it9Z2Y.js";var F=`RoleUUID`,I=a(l({__name:`RoleDetail`,setup(a){let l=f(),I=u(!1),L=u(null),R=u(``),z=l.query.RoleUUID||``,B={0:`组员`,1:`组长`,2:`其他`},V={0:`全租户`,1:`公司`,2:`部门`},H={0:{text:`禁用`,type:`danger`},1:{text:`启用`,type:`success`}},U=o(()=>!y()||x()),W=o(()=>U.value?`特权模式:显示该角色在所有公司的关联记录(无公司隔离)`:`仅显示当前公司数据。如需查看所有公司记录,需管理员特权。`);function G(e){return e==null||e===``?``:String(e)}function K(e){if(!e)return`-`;let t=String(e),n=new Date(t);if(isNaN(n.getTime()))return t;let r=e=>String(e).padStart(2,`0`);return`${n.getFullYear()}-${r(n.getMonth()+1)}-${r(n.getDate())} ${r(n.getHours())}:${r(n.getMinutes())}:${r(n.getSeconds())}`}function q(e){return Array.isArray(e)?e:e?.list||[]}async function J(){if(!z){R.value=`缺少 RoleUUID 参数,无法加载角色详情。`;return}I.value=!0,R.value=``;try{let e=q(await M.list(`Role`,{RoleUUID:z,pageSize:1})),t=e.find(e=>e.RoleUUID===z)||e[0];if(!t){R.value=`未找到角色数据`;return}L.value=t,v(G(t.RoleName)||`角色详情`)}catch(e){R.value=`加载失败: ${e instanceof Error?e.message:String(e)}`}finally{I.value=!1}}let Y=u(!1),X=u(!1),Z=u([]),Q=m({}),se=o(()=>Z.value.filter(e=>e.editable!==!1&&!e.hideInForm&&e.type!==`hidden`&&e.type!==`divider`&&e.type!==`html`&&e.field!==F));async function ce(){if(L.value){try{Z.value.length||(Z.value=await M.getColumns(`Role`))}catch{Z.value=[]}Object.keys(Q).forEach(e=>delete Q[e]),Object.assign(Q,L.value),Y.value=!0}}async function le(){if(L.value){X.value=!0;try{await M.update(`Role`,L.value[F],{...Q}),b.success(`保存成功`),Y.value=!1,await J()}catch{}finally{X.value=!1}}}return e(J),(e,a)=>{let o=ee(`Edit`),l=w,u=te,f=A,m=T,v=ne,y=re,b=S,x=ae,M=D,F=E,q=C,J=oe,Z=O,$=k,ue=ie;return i(),_(N,{title:L.value?.RoleName||`角色详情`,loading:I.value},{actions:r(()=>[p(u,{type:`primary`,disabled:!L.value,onClick:ce},{default:r(()=>[p(l,null,{default:r(()=>[p(o)]),_:1}),a[2]||=h(`编辑 `,-1)]),_:1},8,[`disabled`])]),default:r(()=>[R.value?(i(),_(f,{key:0,type:`error`,title:R.value,"show-icon":``,closable:!1},null,8,[`title`])):s(``,!0),L.value?(i(),_(P,{key:1,title:`基本信息`,columns:2},{default:r(()=>[p(m,{label:`角色名称`},{default:r(()=>[h(t(G(L.value.RoleName)||`-`),1)]),_:1}),p(m,{label:`角色类型`},{default:r(()=>[h(t(B[String(L.value.RoleType)]??`-`),1)]),_:1}),p(m,{label:`状态`},{default:r(()=>[p(v,{type:H[String(L.value.RoleStatus)]?.type||`info`,size:`small`},{default:r(()=>[h(t(H[String(L.value.RoleStatus)]?.text??L.value.RoleStatus),1)]),_:1},8,[`type`])]),_:1}),p(m,{label:`分配范围`},{default:r(()=>[h(t(V[String(L.value.AssignScope)]??`-`),1)]),_:1}),p(m,{label:`角色描述`},{default:r(()=>[h(t(G(L.value.RoleDesc)||`-`),1)]),_:1}),p(m,{label:`创建时间`},{default:r(()=>[h(t(K(L.value.CreateTime)),1)]),_:1})]),_:1})):s(``,!0),L.value?(i(),_(f,{key:2,type:U.value?`warning`:`info`,closable:!1,"show-icon":``,class:`scope-banner`},{default:r(()=>[h(t(W.value),1)]),_:1},8,[`type`])):s(``,!0),L.value?(i(),_(y,{key:3,shadow:`never`},{default:r(()=>[p(j,{table:`RolePermission`,title:`权限列表`,query:{RoleUUID:g(z)},selectable:!0,pageable:!0,"pk-field":`RolePermUUID`},null,8,[`query`])]),_:1})):s(``,!0),L.value?(i(),_(y,{key:4,shadow:`never`},{default:r(()=>[p(j,{table:`UserRole`,title:`关联用户`,query:{RoleUUID:g(z)},selectable:!0,pageable:!0,"pk-field":`UserRoleUUID`},null,8,[`query`])]),_:1})):s(``,!0),p(ue,{modelValue:Y.value,"onUpdate:modelValue":a[1]||=e=>Y.value=e,title:`编辑角色`,width:`600px`,"destroy-on-close":``},{footer:r(()=Line truncated
@@ -1 +0,0 @@
import{$r as e,Bi as t,Ca as n,D as r,Gr as i,Hi as a,Kr as o,Mi as s,Qr as c,Rr as l,Ur as u,Xi as d,Zr as f,_ as p,_i as m,m as h,mi as g,qr as _,xi as ee,yi as v}from"./useApi-CROJJdhE-DTiQDIFh.js";import{a as y,i as b,o as x,r as S,u as te}from"./serverScope-CLCA_jyd.js";import{t as C}from"./date-picker-DUqMIidt.js";import{n as w}from"./descriptions-DdoyLmWE.js";import{r as T,t as E}from"./select-VtLnfNTa.js";import{n as D,t as O}from"./form-DkCs-bRK.js";import{t as k}from"./alert-BVfR0rW0.js";import{t as A}from"./button-dPBZLBL0.js";import{t as ne}from"./tag-DsjHDKbM.js";import{t as re}from"./card-CKxtkBHA.js";import{t as ie}from"./dialog-2NPB22v1.js";import{t as ae}from"./input-number-BYrgUFpo.js";import{t as oe}from"./switch-TyRYNjQq.js";/* empty css */import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-CttyGzET.js";import"./css-D-a1H3t1.js";import"./css-49fsIjk3.js";import"./css-DmmbJMxg.js";import"./css-CysIl0tz.js";import"./css-w8-s2aei.js";import"./css-DMOjom7l.js";import"./css-Dmy6QwIc.js";import"./AdminBadge-DWq3-CmW.js";import"./css-BLJI5-W_.js";import{t as j}from"./CrudTable-0btzlQyb.js";import"./css-ByqxgOA-.js";import{t as M}from"./form-DjuqPK5m.js";import{t as N}from"./DetailPage-D_nlVGtk.js";import{t as P}from"./InfoGrid-BuM8q62h.js";var F=`RoleUUID`,I=p(e({__name:`RoleDetail`,setup(e){let p=h(),I=a(!1),L=a(null),R=a(``),z=p.query.RoleUUID||``,B={0:`组员`,1:`组长`,2:`其他`},V={0:`全租户`,1:`公司`,2:`部门`},H={0:{text:`禁用`,type:`danger`},1:{text:`启用`,type:`success`}},U=u(()=>!b()||S()),W=u(()=>U.value?`特权模式:显示该角色在所有公司的关联记录(无公司隔离)`:`仅显示当前公司数据。如需查看所有公司记录,需管理员特权。`);function G(e){return e==null||e===``?``:String(e)}function K(e){if(!e)return`-`;let t=String(e),n=new Date(t);if(isNaN(n.getTime()))return t;let r=e=>String(e).padStart(2,`0`);return`${n.getFullYear()}-${r(n.getMonth()+1)}-${r(n.getDate())} ${r(n.getHours())}:${r(n.getMinutes())}:${r(n.getSeconds())}`}function q(e){return Array.isArray(e)?e:e?.list||[]}async function J(){if(!z){R.value=`缺少 RoleUUID 参数,无法加载角色详情。`;return}I.value=!0,R.value=``;try{let e=q(await M.list(`Role`,{RoleUUID:z,pageSize:1})),t=e.find(e=>e.RoleUUID===z)||e[0];if(!t){R.value=`未找到角色数据`;return}L.value=t,y(G(t.RoleName)||`角色详情`)}catch(e){R.value=`加载失败: ${e instanceof Error?e.message:String(e)}`}finally{I.value=!1}}let Y=a(!1),X=a(!1),Z=a([]),Q=t({}),se=u(()=>Z.value.filter(e=>e.editable!==!1&&!e.hideInForm&&e.type!==`hidden`&&e.type!==`divider`&&e.type!==`html`&&e.field!==F));async function ce(){if(L.value){try{Z.value.length||(Z.value=await M.getColumns(`Role`))}catch{Z.value=[]}Object.keys(Q).forEach(e=>delete Q[e]),Object.assign(Q,L.value),Y.value=!0}}async function le(){if(L.value){X.value=!0;try{await M.update(`Role`,L.value[F],{...Q}),x.success(`保存成功`),Y.value=!1,await J()}catch{}finally{X.value=!1}}}return g(J),(e,t)=>{let a=ee(`Edit`),u=r,p=A,h=k,g=w,y=ne,b=re,x=te,S=ae,M=E,F=T,q=C,J=oe,Z=D,$=O,ue=ie;return m(),i(N,{title:L.value?.RoleName||`角色详情`,loading:I.value},{actions:s(()=>[c(p,{type:`primary`,disabled:!L.value,onClick:ce},{default:s(()=>[c(u,null,{default:s(()=>[c(a)]),_:1}),t[2]||=f(`编辑 `,-1)]),_:1},8,[`disabled`])]),default:s(()=>[R.value?(m(),i(h,{key:0,type:`error`,title:R.value,"show-icon":``,closable:!1},null,8,[`title`])):o(``,!0),L.value?(m(),i(P,{key:1,title:`基本信息`,columns:2},{default:s(()=>[c(g,{label:`角色名称`},{default:s(()=>[f(n(G(L.value.RoleName)||`-`),1)]),_:1}),c(g,{label:`角色类型`},{default:s(()=>[f(n(B[String(L.value.RoleType)]??`-`),1)]),_:1}),c(g,{label:`状态`},{default:s(()=>[c(y,{type:H[String(L.value.RoleStatus)]?.type||`info`,size:`small`},{default:s(()=>[f(n(H[String(L.value.RoleStatus)]?.text??L.value.RoleStatus),1)]),_:1},8,[`type`])]),_:1}),c(g,{label:`分配范围`},{default:s(()=>[f(n(V[String(L.value.AssignScope)]??`-`),1)]),_:1}),c(g,{label:`角色描述`},{default:s(()=>[f(n(G(L.value.RoleDesc)||`-`),1)]),_:1}),c(g,{label:`创建时间`},{default:s(()=>[f(n(K(L.value.CreateTime)),1)]),_:1})]),_:1})):o(``,!0),L.value?(m(),i(h,{key:2,type:U.value?`warning`:`info`,closable:!1,"show-icon":``,class:`scope-banner`},{default:s(()=>[f(n(W.value),1)]),_:1},8,[`type`])):o(``,!0),L.value?(m(),i(b,{key:3,shadow:`never`},{default:s(()=>[c(j,{table:`RolePermission`,title:`权限列表`,query:{RoleUUID:d(z)},selectable:!0,pageable:!0,"pk-field":`RolePermUUID`},null,8,[`query`])]),_:1})):o(``,!0),L.value?(m(),i(b,{key:4,shadow:`never`},{default:s(()=>[c(j,{table:`UserRole`,title:`关联用户`,query:{RoleUUID:d(z)},selectable:!0,pageable:!0,"pk-field":`UserRoleUUID`},null,8,[`query`])]),_:1})):o(``,!0),c(ue,{modelValue:Y.value,"onUpdate:modelValue":t[1]||=e=>Y.value=e,title:`编辑角色`,width:`600px`,"destroy-on-close":``},{footer:s(()=>[c(p,{onClick:t[0]||=e=>Y.value=!1},{defaultLine truncated
@@ -0,0 +1 @@
import{An as e,Br as t,Fn as n,Jn as r,Ln as i,Nn as a,_ as o,an as s,cn as c,en as l,h as u,hn as d,ir as f,ln as p,m,mn as h,nr as g,on as _,pn as v,pr as y,sn as b}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as x,o as S,u as C}from"./serverScope-O8Rw8SFk.js";import{t as ee}from"./date-picker-CM_15T0u.js";import{u as w}from"./use-global-config-D-dPcPvU.js";import{n as T}from"./descriptions-Cq_aE9sg.js";import{r as E,t as D}from"./select-BGsfCDCJ.js";import{r as O}from"./router-CMu0lceh.js";import{n as k,t as A}from"./form-F--u6XQJ.js";import{t as j}from"./alert-BpFV-0dO.js";import{t as M}from"./button-CPx9BSuo.js";import{t as N}from"./tag-BSnLMVgs.js";import{t as te}from"./card-Dj_UeWcA.js";import{t as ne}from"./dialog-_5VhSQg5.js";import{t as re}from"./input-number-CiNOxXL6.js";import{t as ie}from"./switch-7puThziV.js";/* empty css */import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-CttyGzET.js";import"./css-D-a1H3t1.js";import"./css-49fsIjk3.js";import"./css-DmmbJMxg.js";import"./css-CysIl0tz.js";import"./css-w8-s2aei.js";import"./css-DMOjom7l.js";import"./css-Dmy6QwIc.js";import"./AdminBadge-Z72F8Boy.js";import"./css-BLJI5-W_.js";import{n as ae,t as P}from"./CrudTable-B49nrpUt.js";import"./css-ByqxgOA-.js";import{t as F}from"./form-B2Pzr8Vf.js";import{t as I}from"./DetailPage-m11wfvkM.js";import{t as L}from"./InfoGrid-C1it9Z2Y.js";var R={class:`perm-hint`},z=`RoleUUID`,B=o(d({__name:`RoleDetail`,setup(o){let d=m(),B=u(),V=O(),H=d.query.RoleUUID||``,U=f(!1),W=f(null),G=f(!1),K=f(!1),q=f([]),J=g({}),oe=s(()=>W.value?.RoleName||`角色详情`),se=s(()=>V.isAdmin?`特权模式:显示该角色在所有公司的关联记录(无公司隔离)`:`仅显示当前公司数据。如需查看所有公司记录,需管理员特权。`);function ce(e){return e===0||e===`0`?`组员`:e===1||e===`1`?`组长`:`-`}function Y(e){return e===1||e===`1`?{text:`启用`,type:`success`}:e===0||e===`0`?{text:`禁用`,type:`danger`}:{text:String(e??`-`),type:`warning`}}function X(e){return e===0||e===`0`?{text:`全租户可分发`,type:`success`}:e===1||e===`1`?{text:`指定公司可分发`,type:`primary`}:e===2||e===`2`?{text:`指定部门可分发`,type:`warning`}:{text:`-`,type:`info`}}function Z(e){if(!e)return`-`;let t=new Date(e);if(isNaN(t.getTime()))return String(e);let n=e=>String(e).padStart(2,`0`);return`${t.getFullYear()}-${n(t.getMonth()+1)}-${n(t.getDate())} ${n(t.getHours())}:${n(t.getMinutes())}`}let le=s(()=>q.value.filter(e=>e.editable!==!1&&!e.hideInForm&&e.type!==`hidden`&&e.type!==`divider`&&e.type!==`html`&&e.field!==z));async function Q(){if(!H){S.warning(`缺少 RoleUUID 参数,无法加载角色详情`);return}U.value=!0;try{let e=await F.list(`Role`,{[z]:H,pageSize:1}),t=Array.isArray(e)?e:e?.list||[],n=t.find(e=>e[z]===H)||t[0];if(!n){S.error(`未找到角色数据`);return}W.value=n,x(n.RoleName||`角色详情`)}finally{U.value=!1}}async function $(){try{q.value=await F.getColumns(`Role`)}catch{}}function ue(){W.value&&(Object.keys(J).forEach(e=>delete J[e]),Object.assign(J,W.value),G.value=!0)}async function de(){K.value=!0;try{await F.update(`Role`,J[z],J),S.success(`保存成功`),G.value=!1,await Q()}finally{K.value=!1}}function fe(){if(!H){S.warning(`缺少 RoleUUID`);return}B.push({path:`/system/role-permissions`,query:{RoleUUID:H}})}function pe(e){B.push({path:`/system/user-detail`,query:{UserUUID:e.UserUUID||``}})}return e(async()=>{await Promise.all([Q(),$()])}),(e,o)=>{let s=i(`Edit`),u=w,d=M,f=i(`Connection`),m=j,g=T,x=N,S=te,O=i(`InfoFilled`),F=C,z=re,B=D,q=E,Q=ee,$=ie,me=k,he=A,ge=ne;return a(),b(I,{title:oe.value,loading:U.value},{actions:r(()=>[h(d,{type:`primary`,onClick:ue},{default:r(()=>[h(u,null,{default:r(()=>[h(s)]),_:1}),o[2]||=v(`编辑 `,-1)]),_:1}),h(d,{onClick:fe,title:`按权限组勾选分配权限`},{default:r(()=>[h(u,null,{default:r(()=>[h(f)]),_:1}),o[3]||=v(`权限树分配 `,-1)]),_:1})]),default:r(()=>[h(m,{type:y(V).isAdmin?`warning`:`info`,closable:!1,"show-icon":``},{default:r(()=>[v(t(se.value),1)]),_:1},8,[`type`]),h(L,{title:`基本信息`,columns:2},{default:r(()=>[h(g,{label:`角色名称`},{default:r(()=>[v(t(W.value?.RoleName||`-`),1)]),_:1}),h(g,{label:`角色类型`},{default:r(()=>[v(t(ce(W.value?.RoleType)),1)]),_:1}),h(g,{label:`角色状态`},{default:r(()=>[h(x,{type:Y(W.value?.RoleStatus).type,size:`small`},{default:r(()=>[v(t(Y(W.value?.RoleStatus).text),1)]),_:1},8,[`type`])]),_:1}),h(g,{label:`分配范围`},{default:r(()=>[h(x,{type:X(W.value?.AssignScope).type,size:`small`},{default:r(()=>[v(t(X(W.value?.AssignScope).text),1)]),_:1},8,[`type`])]),_:1}),h(g,{label:`角色描述`},{default:r(()=>[v(t(W.value?.RoleDesc||`-`),1)]),_:1}),h(g,{label:`创建时间`},{default:r(()=>[v(t(Z(W.value?.CreateTime)),1)]),_:1})]),_:1}),h(S,{shadow:`never`},{header:r(()=>[...o[4]||=[v(`关联用户`,-1)]]),default:r(()=>[y(H)?(a(),b(P,{key:0,table:`UserRole`,title:`角色用户`,query:{RoleUUID:y(H)},"pk-field":`UserRoleUUID`Line truncated
@@ -1 +0,0 @@
import{$r as e,Ca as t,D as n,Gr as r,Hi as i,Kr as a,Mi as o,Qr as s,Rr as c,Ur as l,Wr as u,Zr as d,_ as f,_i as p,ci as m,di as h,m as g,mi as _,qr as v,xi as y,yi as b}from"./useApi-CROJJdhE-DTiQDIFh.js";import{a as x,o as S}from"./serverScope-CLCA_jyd.js";import{r as C,t as ee}from"./select-VtLnfNTa.js";import{h as w,i as T,l as te,s as ne}from"./router-Bz7E4dLH.js";import{t as re}from"./button-dPBZLBL0.js";import{t as ie}from"./tag-DsjHDKbM.js";import{t as E}from"./card-CKxtkBHA.js";import{t as D}from"./empty-BgmR_P06.js";import{t as O}from"./tree-Ba23u4xv.js";/* empty css */import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-CttyGzET.js";import"./css-D-a1H3t1.js";import"./css-Dmy6QwIc.js";import{t as k}from"./form-DjuqPK5m.js";import{t as A}from"./DetailPage-D_nlVGtk.js";import"./css-D4jab2ni.js";import"./css-CLuE7SsA.js";var ae={key:0,class:`denied-state`},oe={class:`toolbar-row`},se={class:`toolbar-stat`},ce={class:`toolbar-actions`},le={key:0,class:`empty-state`},ue={class:`perm-row`},de={class:`perm-name`},fe={key:1,class:`perm-desc`},j=f(e({__name:`RolePermissions`,setup(e){let f=g(),j=T(),M=f.query.RoleUUID||``,N=f.query.CompanyUUID||``,P=i(M),F=i(N),I=i([]),L=i([]),R=i([]),z=i(!1),B=i(!1),V=i(!1),H=i(!1),U=i(new Set),W=i([]),G=i(!1),K=i(0),q=i(null),pe=l(()=>j.isAdmin),J=l(()=>R.value.map((e,t)=>({_nodeKey:`group_${t}`,label:e.Category,children:e.Permissions.map(e=>({_nodeKey:e.PermUUID,label:e.PermName,permCode:e.PermCode,permDesc:e.PermDesc||``,isLeaf:!0}))}))),me=l(()=>R.value.reduce((e,t)=>e+t.Permissions.length,0)),he=l(()=>W.value.length),ge=l(()=>!!P.value&&!!F.value&&!B.value);async function _e(){try{let e=await k.list(`Role`,{pageSize:500});I.value=Array.isArray(e)?e:e?.list||[]}catch{}}async function Y(){try{let e=await k.list(`Company`,{pageSize:500});L.value=Array.isArray(e)?e:e?.list||[]}catch{}}async function X(){let e=P.value,t=F.value;if(!e||!t){R.value=[];return}z.value=!0,H.value=!1;try{let n=await ne(`/API/Role/PermissionsTree`,{RoleUUID:e,CompanyUUID:t});R.value=n?.Groups||[];let r=R.value.flatMap(e=>e.Permissions.filter(e=>e.Checked).map(e=>e.PermUUID));U.value=new Set(r),W.value=[...r],K.value++,await m(),Q()}finally{z.value=!1}}function ve(){F.value&&X()}function ye(){P.value&&X()}function Z(){let e=q.value?.getCheckedKeys?.(!0);W.value=e||[],Q()}function Q(){let e=new Set(W.value);H.value=!(e.size===U.value.size&&[...e].every(e=>U.value.has(e)))}function be(){G.value=!0,K.value++,m(()=>Z())}function xe(){G.value=!1,K.value++,m(()=>Z())}function Se(){let e=R.value.flatMap(e=>e.Permissions.map(e=>e.PermUUID));q.value?.setCheckedKeys?.(e),W.value=e,Q()}function Ce(){q.value?.setCheckedKeys?.([]),W.value=[],Q()}async function we(){let e=P.value,t=F.value;if(!e||!t){S.warning(`请先选择角色和公司`);return}B.value=!0;try{let n=await te(`/API/Role/SavePermissions`,{RoleUUID:e,CompanyUUID:t,PermUUIDs:W.value})||{};S.success(`保存成功(新增 ${n.Added||0},移除 ${n.Removed||0},保留 ${n.Kept||0})`),U.value=new Set(W.value),H.value=!1}finally{B.value=!1}}function $(e){H.value&&(e.preventDefault(),e.returnValue=``)}return w((e,t,n)=>{if(!H.value){n();return}window.confirm(`有未保存的权限变更,确定离开?`)?n():n(!1)}),_(async()=>{if(x(`角色权限分配`),!pe.value){V.value=!0;return}await Promise.all([_e(),Y()]),M&&(P.value=M),N&&(F.value=N),M&&N&&await X()}),h(()=>{window.removeEventListener(`beforeunload`,$)}),window.addEventListener(`beforeunload`,$),(e,i)=>{let l=y(`Lock`),f=n,m=ee,h=C,g=re,_=E,x=D,S=ie,w=O,T=y(`Select`);return p(),r(A,{title:`角色权限分配`,loading:z.value},{default:o(()=>[V.value?(p(),v(`div`,ae,[s(f,{class:`denied-icon`},{default:o(()=>[s(l)]),_:1}),i[2]||=u(`div`,{class:`denied-title`},`无权访问`,-1),i[3]||=u(`div`,{class:`denied-desc`},`该页面仅管理员可查看,请切换至管理员角色或联系管理员。`,-1)])):(p(),v(c,{key:1},[s(_,{shadow:`never`,class:`toolbar`},{default:o(()=>[u(`div`,oe,[i[11]||=u(`span`,{class:`toolbar-label`},`角色:`,-1),s(h,{modelValue:P.value,"onUpdate:modelValue":i[0]||=e=>P.value=e,placeholder:`请选择角色`,filterable:``,style:{"min-width":`200px`},onChange:ve},{default:o(()=>[s(m,{label:`请选择角色`,value:``}),(p(!0),v(c,null,b(I.value,e=>(p(),r(m,{key:e.RoleUUID,label:e.RoleName,value:e.RoleUUID},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`]),i[12]||=u(`span`,{class:`toolbar-label`},`公司:`,-1),s(h,{modelValue:F.value,"onUpdate:modelValue":i[1]||=e=>F.value=e,placeholder:`请选择公司`,filterable:``,style:{"min-width":`200px`},onChange:ye},{default:o(()=>[s(m,{label:`请选择公司`,value:``}),(p(!0),v(c,null,b(L.value,e=>(p(),r(m,{key:e.CompanyUUID,label:e.CompanyName,value:e.CompanyUUID},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`]),u(`div`,se,[i[4]||=d(` 共 `,-1),u(`strong`,null,t(me.value),1),i[5]||=d(` 项权限,已勾选 `,-1),u(`strong`,null,t(he.value),1),i[6]||=d(` 项 `,-1)]),u(`div`,ce,Line truncated
@@ -0,0 +1 @@
import{An as e,Br as t,Dn as n,Fn as r,Jn as i,Ln as a,Nn as o,_ as s,an as c,cn as l,en as u,hn as d,ir as f,ln as p,m,mn as h,on as g,pn as _,sn as v,wn as y}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as b,o as x}from"./serverScope-O8Rw8SFk.js";import{u as ee}from"./use-global-config-D-dPcPvU.js";import{r as te,t as S}from"./select-BGsfCDCJ.js";import{g as C,l as w,r as ne,s as re}from"./router-CMu0lceh.js";import{t as T}from"./button-CPx9BSuo.js";import{t as E}from"./tag-BSnLMVgs.js";import{t as D}from"./card-Dj_UeWcA.js";import{t as O}from"./empty-CnQTxkvl.js";import{t as k}from"./tree-DqeBDBpX.js";/* empty css */import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-CttyGzET.js";import"./css-D-a1H3t1.js";import"./css-Dmy6QwIc.js";import{t as A}from"./form-B2Pzr8Vf.js";import{t as ie}from"./DetailPage-m11wfvkM.js";import"./css-D4jab2ni2.js";import"./css-CLuE7SsA.js";var ae={key:0,class:`denied-state`},oe={class:`toolbar-row`},se={class:`toolbar-stat`},ce={class:`toolbar-actions`},le={key:0,class:`empty-state`},ue={class:`perm-row`},de={class:`perm-name`},fe={key:1,class:`perm-desc`},j=s(d({__name:`RolePermissions`,setup(s){let d=m(),j=ne(),M=d.query.RoleUUID||``,N=d.query.CompanyUUID||``,P=f(M),F=f(N),I=f([]),L=f([]),R=f([]),z=f(!1),B=f(!1),V=f(!1),H=f(!1),U=f(new Set),W=f([]),G=f(!1),K=f(0),q=f(null),pe=c(()=>j.isAdmin),J=c(()=>R.value.map((e,t)=>({_nodeKey:`group_${t}`,label:e.Category,children:e.Permissions.map(e=>({_nodeKey:e.PermUUID,label:e.PermName,permCode:e.PermCode,permDesc:e.PermDesc||``,isLeaf:!0}))}))),me=c(()=>R.value.reduce((e,t)=>e+t.Permissions.length,0)),he=c(()=>W.value.length),ge=c(()=>!!P.value&&!!F.value&&!B.value);async function _e(){try{let e=await A.list(`Role`,{pageSize:500});I.value=Array.isArray(e)?e:e?.list||[]}catch{}}async function Y(){try{let e=await A.list(`Company`,{pageSize:500});L.value=Array.isArray(e)?e:e?.list||[]}catch{}}async function X(){let e=P.value,t=F.value;if(!e||!t){R.value=[];return}z.value=!0,H.value=!1;try{let n=await re(`/API/Role/PermissionsTree`,{RoleUUID:e,CompanyUUID:t});R.value=n?.Groups||[];let r=R.value.flatMap(e=>e.Permissions.filter(e=>e.Checked).map(e=>e.PermUUID));U.value=new Set(r),W.value=[...r],K.value++,await y(),Q()}finally{z.value=!1}}function ve(){F.value&&X()}function ye(){P.value&&X()}function Z(){let e=q.value?.getCheckedKeys?.(!0);W.value=e||[],Q()}function Q(){let e=new Set(W.value);H.value=!(e.size===U.value.size&&[...e].every(e=>U.value.has(e)))}function be(){G.value=!0,K.value++,y(()=>Z())}function xe(){G.value=!1,K.value++,y(()=>Z())}function Se(){let e=R.value.flatMap(e=>e.Permissions.map(e=>e.PermUUID));q.value?.setCheckedKeys?.(e),W.value=e,Q()}function Ce(){q.value?.setCheckedKeys?.([]),W.value=[],Q()}async function we(){let e=P.value,t=F.value;if(!e||!t){x.warning(`请先选择角色和公司`);return}B.value=!0;try{let n=await w(`/API/Role/SavePermissions`,{RoleUUID:e,CompanyUUID:t,PermUUIDs:W.value})||{};x.success(`保存成功(新增 ${n.Added||0},移除 ${n.Removed||0},保留 ${n.Kept||0})`),U.value=new Set(W.value),H.value=!1}finally{B.value=!1}}function $(e){H.value&&(e.preventDefault(),e.returnValue=``)}return C((e,t,n)=>{if(!H.value){n();return}window.confirm(`有未保存的权限变更,确定离开?`)?n():n(!1)}),e(async()=>{if(b(`角色权限分配`),!pe.value){V.value=!0;return}await Promise.all([_e(),Y()]),M&&(P.value=M),N&&(F.value=N),M&&N&&await X()}),n(()=>{window.removeEventListener(`beforeunload`,$)}),window.addEventListener(`beforeunload`,$),(e,n)=>{let s=a(`Lock`),c=ee,d=S,f=te,m=T,y=D,b=O,x=E,C=k,w=a(`Select`);return o(),v(ie,{title:`角色权限分配`,loading:z.value},{default:i(()=>[V.value?(o(),p(`div`,ae,[h(c,{class:`denied-icon`},{default:i(()=>[h(s)]),_:1}),n[2]||=g(`div`,{class:`denied-title`},`无权访问`,-1),n[3]||=g(`div`,{class:`denied-desc`},`该页面仅管理员可查看,请切换至管理员角色或联系管理员。`,-1)])):(o(),p(u,{key:1},[h(y,{shadow:`never`,class:`toolbar`},{default:i(()=>[g(`div`,oe,[n[11]||=g(`span`,{class:`toolbar-label`},`角色:`,-1),h(f,{modelValue:P.value,"onUpdate:modelValue":n[0]||=e=>P.value=e,placeholder:`请选择角色`,filterable:``,style:{"min-width":`200px`},onChange:ve},{default:i(()=>[h(d,{label:`请选择角色`,value:``}),(o(!0),p(u,null,r(I.value,e=>(o(),v(d,{key:e.RoleUUID,label:e.RoleName,value:e.RoleUUID},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`]),n[12]||=g(`span`,{class:`toolbar-label`},`公司:`,-1),h(f,{modelValue:F.value,"onUpdate:modelValue":n[1]||=e=>F.value=e,placeholder:`请选择公司`,filterable:``,style:{"min-width":`200px`},onChange:ye},{default:i(()=>[h(d,{label:`请选择公司`,value:``}),(o(!0),p(u,null,r(L.value,e=>(o(),v(d,{key:e.CompanyUUID,label:e.CompanyName,value:e.CompanyUUID},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`]),g(`div`,se,[n[4]||=_(` 共 `,-1),g(`strong`,null,t(me.value),1),n[5]||=_(` 项权限,已勾选 `,-1),g(`strong`,null,t(he.valLine truncated
+1
View File
@@ -0,0 +1 @@
import{Nn as e,_ as t,h as n,hn as r,ln as i,mn as a}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as o}from"./serverScope-O8Rw8SFk.js";import{t as s}from"./CrudTable-B49nrpUt.js";var c={class:`role-page`},l=t(r({__name:`Roles`,setup(t){o(`角色管理`);let r=n();function l(e){r.push({path:`/system/role-detail`,query:{RoleUUID:e.RoleUUID||``}})}return(t,n)=>(e(),i(`div`,c,[a(s,{table:`Role`,title:`角色管理`,"pk-field":`RoleUUID`,searchable:``,pageable:``,stretch:``,selectable:``,"on-view":l})]))}}),[[`__scopeId`,`data-v-4d1d8792`]]);export{l as default};
-1
View File
@@ -1 +0,0 @@
import{$r as e,Qr as t,_ as n,_i as r,h as i,qr as a}from"./useApi-CROJJdhE-DTiQDIFh.js";import{a as o}from"./serverScope-CLCA_jyd.js";import{t as s}from"./CrudTable-0btzlQyb.js";var c={class:`role-page`},l=n(e({__name:`Roles`,setup(e){o(`角色管理`);let n=i();function l(e){n.push({path:`/system/role-detail`,query:{RoleUUID:e.RoleUUID||``}})}return(e,n)=>(r(),a(`div`,c,[t(s,{table:`Role`,title:`角色管理`,"pk-field":`RoleUUID`,searchable:``,pageable:``,stretch:``,selectable:``,"on-view":l})]))}}),[[`__scopeId`,`data-v-4d1d8792`]]);export{l as default};
@@ -1 +0,0 @@
import{$r as e,Ai as t,Bi as n,Hi as r,Mi as i,Qr as a,Rr as o,Wr as s,Zr as c,_ as l,_i as u,mi as d,qr as f,yi as p}from"./useApi-CROJJdhE-DTiQDIFh.js";import{a as m,o as h}from"./serverScope-CLCA_jyd.js";import{r as ee,t as te}from"./select-VtLnfNTa.js";import{g,l as _,s as v}from"./router-Bz7E4dLH.js";import{t as ne}from"./button-dPBZLBL0.js";import{t as re}from"./input-number-BYrgUFpo.js";import{t as ie}from"./switch-TyRYNjQq.js";/* empty css */import"./css-DsD2Typt.js";import{t as ae}from"./app-B_D0PNbc.js";import"./css-w8-s2aei.js";import"./css-Dmy6QwIc.js";import"./css-BLJI5-W_.js";var oe={class:`settings-page`},se={class:`settings-section`},y={class:`settings-item`},b={class:`settings-item-control`},x={class:`settings-item`},S={class:`settings-item-control`},C={class:`settings-section`},w={class:`settings-item`},T={class:`settings-item-control`},E={class:`settings-item`},D={class:`settings-item-control`},O={class:`settings-item`},k={class:`settings-item-control`},A={class:`settings-section`},j={class:`settings-item`},M={class:`settings-item-control`},N={class:`settings-item`},P={class:`settings-item-control`},F={class:`settings-section`},I={class:`settings-item`},L={class:`settings-item-control`},R={class:`settings-item`},ce={class:`settings-item-control`},z={class:`settings-section danger-zone`},B={class:`settings-item`},V={class:`settings-item-control`},H={class:`settings-item`},U={class:`settings-item-control`},W=`GERPSettings`,G=`/API/Settings`,K=l(e({__name:`Settings`,setup(e){m(`系统设置`);let l=ae(),K={themeMode:`default`,sidebarExpanded:!0,maxTabs:20,allowDuplicate:!1,confirmClose:!1,desktopNotify:!0,notifySound:!0,animations:!0,preload:!0},le=[{value:`default`,label:`默认主题`},{value:`light`,label:`浅色主题`},{value:`dark`,label:`深色主题`},{value:`green`,label:`绿色主题`},{value:`purple`,label:`紫色主题`},{value:`red`,label:`红色主题`}],q=n({...K}),J=r(!1);async function Y(){let e={...K};try{let t=await v(G);t&&Object.keys(t).length>0&&Object.assign(e,t)}catch{let t=localStorage.getItem(W);if(t)try{Object.assign(e,JSON.parse(t))}catch{}}return e}let X=null;function Z(e=200){J.value&&(X&&clearTimeout(X),X=setTimeout(()=>ue(!0),e))}async function ue(e=!1){localStorage.setItem(W,JSON.stringify(q));try{await _(G,q),e||h.success(`已保存`)}catch{e||h.warning(`保存到服务器失败`)}}function Q(e){let t=document.documentElement;t.style.setProperty(`--TransitionSpeed`,e.animations?`0.2s`:`0s`),t.style.setProperty(`--AnimationDuration`,e.animations?`0.3s`:`0s`),t.classList.toggle(`GERPNoAnimations`,!e.animations),l.sidebarCollapsed===e.sidebarExpanded&&(l.sidebarCollapsed=!e.sidebarExpanded),$(e.themeMode)}function $(e){if(e===`light`||e===`dark`){l.setTheme(e);return}e==="default"&&l.setTheme(`light`)}function de(e){$(e),Z(300)}function fe(e){l.sidebarCollapsed=!e,Z(200)}function pe(e){let t=document.documentElement;t.style.setProperty(`--TransitionSpeed`,e?`0.2s`:`0s`),t.style.setProperty(`--AnimationDuration`,e?`0.3s`:`0s`),t.classList.toggle(`GERPNoAnimations`,!e),Z(200)}async function me(){try{await g.confirm(`确定要清除所有缓存吗?`,`清除缓存`,{type:`warning`,confirmButtonText:`确定`,cancelButtonText:`取消`})}catch{return}localStorage.removeItem(W);try{await _(G,{})}catch{}let e=await Y();Object.assign(q,e),Q(q),h.success(`缓存已清除`)}async function he(){try{await g.confirm(`确定要重置所有设置为默认值吗?`,`重置设置`,{type:`error`,confirmButtonText:`确定重置`,cancelButtonText:`取消`})}catch{return}Object.assign(q,K),localStorage.setItem(W,JSON.stringify(q));try{await _(G,q)}catch{}$(`default`),Q(q),h.success(`设置已重置`)}return t(()=>[q.maxTabs,q.allowDuplicate,q.confirmClose,q.desktopNotify,q.notifySound,q.preload],()=>Z(200)),d(async()=>{let e=await Y();Object.assign(q,e),Q(q),J.value=!0}),(e,t)=>{let n=te,r=ee,l=ie,d=re,m=ne;return u(),f(`div`,oe,[t[24]||=s(`div`,{class:`settings-header`},[s(`h1`,{class:`settings-title`},[s(`i`,{class:`fas fa-cog icon-primary`}),s(`span`,null,`系统设置`)]),s(`p`,{class:`settings-desc`},`管理系统外观、行为和功能配置`)],-1),s(`div`,se,[t[8]||=s(`h2`,{class:`settings-section-title`},`外观设置`,-1),s(`div`,y,[t[6]||=s(`div`,{class:`settings-item-info`},[s(`div`,{class:`settings-item-title`},`主题模式`),s(`div`,{class:`settings-item-desc`},`选择系统的主题风格`)],-1),s(`div`,b,[a(r,{"model-value":q.themeMode,style:{width:`160px`},"onUpdate:modelValue":de},{default:i(()=>[(u(),f(o,null,p(le,e=>a(n,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`])),64))]),_:1},8,[`model-value`])])]),s(`div`,x,[t[7]||=s(`div`,{class:`settings-item-info`},[s(`div`,{class:`settings-item-title`},`侧边栏默认展开`),s(`div`,{class:`settings-item-desc`},`启动时是否默认展开侧边栏`)],-1),s(`div`,S,[a(l,{"model-value":q.sidebarExpanded,"onUpdate:modelValue":fe},null,8,[`model-value`])])])]),s(`div`,C,[t[12]||=s(`h2`,{Line truncated
@@ -0,0 +1 @@
import{An as e,Fn as t,Jn as n,Kn as r,Nn as i,_ as a,en as ee,hn as o,ir as s,ln as c,mn as l,nr as u,on as d,pn as f}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as p,o as m}from"./serverScope-O8Rw8SFk.js";import{r as h,t as te}from"./select-BGsfCDCJ.js";import{_ as g,l as _,s as v}from"./router-CMu0lceh.js";import{t as y}from"./button-CPx9BSuo.js";import{t as b}from"./input-number-CiNOxXL6.js";import{t as ne}from"./switch-7puThziV.js";/* empty css */import"./css-DsD2Typt.js";import{t as re}from"./app-Bqwt3qVF.js";import"./css-w8-s2aei.js";import"./css-Dmy6QwIc.js";import"./css-BLJI5-W_.js";var ie={class:`settings-page`},ae={class:`settings-section`},oe={class:`settings-item`},se={class:`settings-item-control`},x={class:`settings-item`},S={class:`settings-item-control`},C={class:`settings-section`},w={class:`settings-item`},T={class:`settings-item-control`},E={class:`settings-item`},D={class:`settings-item-control`},O={class:`settings-item`},k={class:`settings-item-control`},A={class:`settings-section`},j={class:`settings-item`},M={class:`settings-item-control`},N={class:`settings-item`},P={class:`settings-item-control`},F={class:`settings-section`},I={class:`settings-item`},L={class:`settings-item-control`},R={class:`settings-item`},z={class:`settings-item-control`},ce={class:`settings-section danger-zone`},B={class:`settings-item`},V={class:`settings-item-control`},H={class:`settings-item`},U={class:`settings-item-control`},W=`GERPSettings`,G=`/API/Settings`,K=a(o({__name:`Settings`,setup(a){p(`系统设置`);let o=re(),K={themeMode:`default`,sidebarExpanded:!0,maxTabs:20,allowDuplicate:!1,confirmClose:!1,desktopNotify:!0,notifySound:!0,animations:!0,preload:!0},le=[{value:`default`,label:`默认主题`},{value:`light`,label:`浅色主题`},{value:`dark`,label:`深色主题`},{value:`green`,label:`绿色主题`},{value:`purple`,label:`紫色主题`},{value:`red`,label:`红色主题`}],q=u({...K}),J=s(!1);async function Y(){let e={...K};try{let t=await v(G);t&&Object.keys(t).length>0&&Object.assign(e,t)}catch{let t=localStorage.getItem(W);if(t)try{Object.assign(e,JSON.parse(t))}catch{}}return e}let X=null;function Z(e=200){J.value&&(X&&clearTimeout(X),X=setTimeout(()=>ue(!0),e))}async function ue(e=!1){localStorage.setItem(W,JSON.stringify(q));try{await _(G,q),e||m.success(`已保存`)}catch{e||m.warning(`保存到服务器失败`)}}function Q(e){let t=document.documentElement;t.style.setProperty(`--TransitionSpeed`,e.animations?`0.2s`:`0s`),t.style.setProperty(`--AnimationDuration`,e.animations?`0.3s`:`0s`),t.classList.toggle(`GERPNoAnimations`,!e.animations),o.sidebarCollapsed===e.sidebarExpanded&&(o.sidebarCollapsed=!e.sidebarExpanded),$(e.themeMode)}function $(e){if(e===`light`||e===`dark`){o.setTheme(e);return}e==="default"&&o.setTheme(`light`)}function de(e){$(e),Z(300)}function fe(e){o.sidebarCollapsed=!e,Z(200)}function pe(e){let t=document.documentElement;t.style.setProperty(`--TransitionSpeed`,e?`0.2s`:`0s`),t.style.setProperty(`--AnimationDuration`,e?`0.3s`:`0s`),t.classList.toggle(`GERPNoAnimations`,!e),Z(200)}async function me(){try{await g.confirm(`确定要清除所有缓存吗?`,`清除缓存`,{type:`warning`,confirmButtonText:`确定`,cancelButtonText:`取消`})}catch{return}localStorage.removeItem(W);try{await _(G,{})}catch{}let e=await Y();Object.assign(q,e),Q(q),m.success(`缓存已清除`)}async function he(){try{await g.confirm(`确定要重置所有设置为默认值吗?`,`重置设置`,{type:`error`,confirmButtonText:`确定重置`,cancelButtonText:`取消`})}catch{return}Object.assign(q,K),localStorage.setItem(W,JSON.stringify(q));try{await _(G,q)}catch{}$(`default`),Q(q),m.success(`设置已重置`)}return r(()=>[q.maxTabs,q.allowDuplicate,q.confirmClose,q.desktopNotify,q.notifySound,q.preload],()=>Z(200)),e(async()=>{let e=await Y();Object.assign(q,e),Q(q),J.value=!0}),(e,r)=>{let a=te,o=h,s=ne,u=b,p=y;return i(),c(`div`,ie,[r[24]||=d(`div`,{class:`settings-header`},[d(`h1`,{class:`settings-title`},[d(`i`,{class:`fas fa-cog icon-primary`}),d(`span`,null,`系统设置`)]),d(`p`,{class:`settings-desc`},`管理系统外观、行为和功能配置`)],-1),d(`div`,ae,[r[8]||=d(`h2`,{class:`settings-section-title`},`外观设置`,-1),d(`div`,oe,[r[6]||=d(`div`,{class:`settings-item-info`},[d(`div`,{class:`settings-item-title`},`主题模式`),d(`div`,{class:`settings-item-desc`},`选择系统的主题风格`)],-1),d(`div`,se,[l(o,{"model-value":q.themeMode,style:{width:`160px`},"onUpdate:modelValue":de},{default:n(()=>[(i(),c(ee,null,t(le,e=>l(a,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`])),64))]),_:1},8,[`model-value`])])]),d(`div`,x,[r[7]||=d(`div`,{class:`settings-item-info`},[d(`div`,{class:`settings-item-title`},`侧边栏默认展开`),d(`div`,{class:`settings-item-desc`},`启动时是否默认展开侧边栏`)],-1),d(`div`,S,[l(s,{"model-value":q.sidebarExpanded,"onUpdate:modelValue":fe},null,8,[`model-value`])])])]),d(`div`,C,[r[12]||=d(`Line truncated
+1
View File
@@ -0,0 +1 @@
import{A as e,An as t,Br as n,D as r,Fn as i,I as a,Jn as o,K as s,Lr as c,Nn as l,O as u,Q as ee,U as d,X as te,Yn as ne,_ as f,an as p,at as re,b as m,cn as h,en as g,et as _,ft as v,h as ie,hn as y,ir as b,it as ae,j as oe,jn as se,k as ce,ln as x,mn as S,nr as le,on as C,ot as ue,pn as w,pr as T,sn as E,ut as de,w as fe,x as pe,y as me,zn as D,zr as he}from"./useApi-CROJJdhE-mMpa5RAf.js";import{c as ge}from"./runtime-dom.esm-bundler-YxjRGSuG.js";import{a as _e,o as O}from"./serverScope-O8Rw8SFk.js";import{u as ve}from"./use-global-config-D-dPcPvU.js";import{t as ye}from"./image-HD4q5QFa.js";import{n as be,r as xe,t as Se}from"./drawer-Cu-arLgK.js";import{t as Ce}from"./input-number-CiNOxXL6.js";/* empty css */import"./css-CttyGzET.js";import"./css-CM8IHeeM.js";import"./css-w8-s2aei.js";import"./css-B0rEpZpL.js";var we={class:`sku-page`},k={class:`sku-nav-left`},Te={class:`sku-nav-right`},Ee={class:`sku-nav-btn`},De={class:`sku-main`},Oe={class:`sku-swiper`},ke=[`src`,`alt`],Ae={class:`sku-swiper-index`},je={class:`sku-activity`},Me={class:`sku-activity-countdown`},Ne={class:`sku-goods-info`},Pe={class:`sku-price-row`},Fe={class:`sku-price`},Ie={class:`sku-price-symbol`},Le={class:`sku-price-integer`},Re={class:`sku-price-decimal`},ze={class:`sku-price-original`},Be={class:`sku-price-tag`},Ve={class:`sku-goods-sales`},He={class:`sku-goods-title`},Ue={class:`sku-goods-subtitle`},We={class:`sku-tags-row`},Ge={class:`sku-coupon`},Ke={class:`sku-coupon-header`},qe={class:`sku-coupon-more`},Je={class:`sku-coupon-value`},Ye={class:`sku-coupon-info`},Xe={class:`sku-coupon-name`},Ze={class:`sku-coupon-desc`},Qe=[`disabled`,`onClick`],$e={class:`sku-select-value`},et={class:`sku-service`},tt={class:`sku-service-icon`},nt={class:`sku-shop`},rt={class:`sku-shop-header`},it={class:`sku-shop-logo`},at=[`src`],ot={class:`sku-shop-info`},st={class:`sku-shop-name`},ct={class:`sku-shop-rating`},lt={class:`sku-shop-stats`},ut={class:`sku-shop-stat-value`},dt={class:`sku-shop-stat-label`},ft={class:`sku-review`},pt={class:`sku-review-header`},mt={class:`sku-review-more`},ht={class:`sku-review-tags`},gt=[`onClick`],_t={class:`sku-review-user`},vt={class:`sku-review-avatar`},yt=[`src`],bt={class:`sku-review-name`},xt={class:`sku-review-rating`},St={class:`sku-review-content`},Ct={key:0,class:`sku-review-images`},wt={class:`sku-review-meta`},Tt={class:`sku-detail`},Et={class:`sku-detail-content`},Dt={class:`sku-recommend`},Ot={class:`sku-recommend-grid`},kt=[`onClick`],At={class:`sku-recommend-image`},jt=[`src`,`alt`],Mt={class:`sku-recommend-name`},Nt={class:`sku-recommend-price`},Pt={class:`sku-bottom-bar`},Ft={class:`sku-bottom-actions`},It={class:`sku-popup-header`},Lt={class:`sku-popup-preview`},Rt=[`src`],zt={class:`sku-popup-info`},Bt={class:`sku-price`},Vt={class:`sku-price-symbol`},Ht={class:`sku-price-integer`},Ut={class:`sku-price-decimal`},Wt={class:`sku-popup-stock`},Gt={class:`sku-popup-selected`},Kt={class:`sku-popup-body`},qt={class:`sku-spec-label`},Jt={class:`sku-spec-options`},Yt=[`onClick`],Xt=[`src`,`alt`],Zt={class:`sku-quantity`},Qt={class:`sku-share-options`},$t=[`onClick`],en={class:`sku-share-label`},tn={class:`sku-address-header`},nn={class:`sku-address-body`},rn=[`onClick`],an={class:`sku-address-radio`},on={class:`sku-address-info`},sn={class:`sku-address-row`},cn={class:`sku-address-name`},ln={class:`sku-address-phone`},un={key:0,class:`sku-address-tag`},dn={class:`sku-address-detail`},fn={class:`sku-address-add`},A=1893456e6,pn=`2.8万+`,j=f(y({__name:`Sku`,setup(f){let y=[{Url:`https://via.placeholder.com/400x400/f5f5f5/333?text=iPhone+15+Pro+Max+1`,Alt:`商品图1`},{Url:`https://via.placeholder.com/400x400/f5f5f5/333?text=iPhone+15+Pro+Max+2`,Alt:`商品图2`},{Url:`https://via.placeholder.com/400x400/f5f5f5/333?text=iPhone+15+Pro+Max+3`,Alt:`商品图3`},{Url:`https://via.placeholder.com/400x400/f5f5f5/333?text=iPhone+15+Pro+Max+4`,Alt:`商品图4`}],j={Symbol:`¥`,Integer:`8999`,Decimal:`.00`,Original:`¥9999.00`,Save:`¥1000`},M={Title:`Apple/苹果 iPhone 15 Pro Max 5G手机 国行正品 全国联保 顺丰包邮`,Subtitle:`钛金属边框 | A17 Pro芯片 | 4800万像素 | USB-C接口`,Sales:`已售 12.5万件`,Stock:1256},mn=[{Text:`顺丰包邮`,Type:`solid`},{Text:`7天无理由`,Type:`solid`},{Text:`假一赔十`,Type:`solid`},{Text:`12期免息`,Type:`outline`}],hn=b([{Id:`c1`,Value:200,Name:`店铺优惠券`,Desc:`满5000可用`,Received:!1}]),N=[{Name:`颜色`,Options:[{Value:`原色钛金属`,Label:`原色钛金属`,Image:`https://via.placeholder.com/100x100/c4c4c4/333?text=原色`},{Value:`黑色钛金属`,Label:`黑色钛金属`,Image:`https://via.placeholder.com/100x100/666666/fff?text=黑色`},{Value:`白色钛金属`,Label:`白色钛金属`,Image:`https://via.placeholder.com/100x100/ffffff/333?text=白色`},{Value:`蓝色钛金属`,Label:`蓝色钛金属`,Image:`https://via.placeholder.com/100x100/4169e1/fff?text=蓝色`}]},{Name:`存储容量`,Options:[{Value:`25 Line truncated
-1
View File
@@ -1 +0,0 @@
import{$r as e,Bi as t,Ca as n,Ci as r,D as i,Et as a,F as o,G as ee,Gr as s,H as c,Hi as l,I as te,K as u,Kr as d,Mi as f,Ni as ne,P as re,Qr as p,Rr as m,Sa as ie,Tt as ae,U as h,Ur as g,W as _,Wr as v,Xi as y,Z as b,Zr as x,_ as S,_i as C,ba as w,bt as oe,dt as se,h as ce,hi as le,ht as ue,it as de,mi as fe,pt as pe,qr as T,st as me,xt as he,yi as E,yt as ge,z as _e}from"./useApi-CROJJdhE-DTiQDIFh.js";import{a as ve,gt as ye,o as D}from"./serverScope-CLCA_jyd.js";import{t as be}from"./image-DmNNLt7t.js";import{n as xe,r as Se,t as Ce}from"./drawer-Dxh6ESsI.js";import{t as we}from"./input-number-BYrgUFpo.js";/* empty css */import"./css-CttyGzET.js";import"./css-CM8IHeeM.js";import"./css-w8-s2aei.js";import"./css-B0rEpZpL.js";var O={class:`sku-page`},k={class:`sku-nav-left`},Te={class:`sku-nav-right`},Ee={class:`sku-nav-btn`},De={class:`sku-main`},Oe={class:`sku-swiper`},ke=[`src`,`alt`],Ae={class:`sku-swiper-index`},je={class:`sku-activity`},Me={class:`sku-activity-countdown`},Ne={class:`sku-goods-info`},Pe={class:`sku-price-row`},Fe={class:`sku-price`},Ie={class:`sku-price-symbol`},Le={class:`sku-price-integer`},Re={class:`sku-price-decimal`},ze={class:`sku-price-original`},Be={class:`sku-price-tag`},Ve={class:`sku-goods-sales`},He={class:`sku-goods-title`},Ue={class:`sku-goods-subtitle`},We={class:`sku-tags-row`},Ge={class:`sku-coupon`},Ke={class:`sku-coupon-header`},qe={class:`sku-coupon-more`},Je={class:`sku-coupon-value`},Ye={class:`sku-coupon-info`},Xe={class:`sku-coupon-name`},Ze={class:`sku-coupon-desc`},Qe=[`disabled`,`onClick`],$e={class:`sku-select-value`},et={class:`sku-service`},tt={class:`sku-service-icon`},nt={class:`sku-shop`},rt={class:`sku-shop-header`},it={class:`sku-shop-logo`},at=[`src`],ot={class:`sku-shop-info`},st={class:`sku-shop-name`},ct={class:`sku-shop-rating`},lt={class:`sku-shop-stats`},ut={class:`sku-shop-stat-value`},dt={class:`sku-shop-stat-label`},ft={class:`sku-review`},pt={class:`sku-review-header`},mt={class:`sku-review-more`},ht={class:`sku-review-tags`},gt=[`onClick`],_t={class:`sku-review-user`},vt={class:`sku-review-avatar`},yt=[`src`],bt={class:`sku-review-name`},xt={class:`sku-review-rating`},St={class:`sku-review-content`},Ct={key:0,class:`sku-review-images`},wt={class:`sku-review-meta`},Tt={class:`sku-detail`},Et={class:`sku-detail-content`},Dt={class:`sku-recommend`},Ot={class:`sku-recommend-grid`},kt=[`onClick`],At={class:`sku-recommend-image`},jt=[`src`,`alt`],Mt={class:`sku-recommend-name`},Nt={class:`sku-recommend-price`},Pt={class:`sku-bottom-bar`},Ft={class:`sku-bottom-actions`},It={class:`sku-popup-header`},Lt={class:`sku-popup-preview`},Rt=[`src`],zt={class:`sku-popup-info`},Bt={class:`sku-price`},Vt={class:`sku-price-symbol`},Ht={class:`sku-price-integer`},Ut={class:`sku-price-decimal`},Wt={class:`sku-popup-stock`},Gt={class:`sku-popup-selected`},Kt={class:`sku-popup-body`},qt={class:`sku-spec-label`},Jt={class:`sku-spec-options`},Yt=[`onClick`],Xt=[`src`,`alt`],Zt={class:`sku-quantity`},Qt={class:`sku-share-options`},$t=[`onClick`],en={class:`sku-share-label`},tn={class:`sku-address-header`},nn={class:`sku-address-body`},rn=[`onClick`],an={class:`sku-address-radio`},on={class:`sku-address-info`},sn={class:`sku-address-row`},cn={class:`sku-address-name`},ln={class:`sku-address-phone`},un={key:0,class:`sku-address-tag`},dn={class:`sku-address-detail`},fn={class:`sku-address-add`},A=1893456e6,pn=`2.8万+`,j=S(e({__name:`Sku`,setup(e){let S=[{Url:`https://via.placeholder.com/400x400/f5f5f5/333?text=iPhone+15+Pro+Max+1`,Alt:`商品图1`},{Url:`https://via.placeholder.com/400x400/f5f5f5/333?text=iPhone+15+Pro+Max+2`,Alt:`商品图2`},{Url:`https://via.placeholder.com/400x400/f5f5f5/333?text=iPhone+15+Pro+Max+3`,Alt:`商品图3`},{Url:`https://via.placeholder.com/400x400/f5f5f5/333?text=iPhone+15+Pro+Max+4`,Alt:`商品图4`}],j={Symbol:`¥`,Integer:`8999`,Decimal:`.00`,Original:`¥9999.00`,Save:`¥1000`},M={Title:`Apple/苹果 iPhone 15 Pro Max 5G手机 国行正品 全国联保 顺丰包邮`,Subtitle:`钛金属边框 | A17 Pro芯片 | 4800万像素 | USB-C接口`,Sales:`已售 12.5万件`,Stock:1256},mn=[{Text:`顺丰包邮`,Type:`solid`},{Text:`7天无理由`,Type:`solid`},{Text:`假一赔十`,Type:`solid`},{Text:`12期免息`,Type:`outline`}],hn=l([{Id:`c1`,Value:200,Name:`店铺优惠券`,Desc:`满5000可用`,Received:!1}]),N=[{Name:`颜色`,Options:[{Value:`原色钛金属`,Label:`原色钛金属`,Image:`https://via.placeholder.com/100x100/c4c4c4/333?text=原色`},{Value:`黑色钛金属`,Label:`黑色钛金属`,Image:`https://via.placeholder.com/100x100/666666/fff?text=黑色`},{Value:`白色钛金属`,Label:`白色钛金属`,Image:`https://via.placeholder.com/100x100/ffffff/333?text=白色`},{Value:`蓝色钛金属`,Label:`蓝色钛金属`,Image:`https://via.placeholder.com/100x100/4169e1/fff?text=蓝色`}]},{Name:`存储容量`,Options:[{Value:`256GB`,Label:`256GB`},{Value:`512GB`,Label:`512GB`},{Value:`1TB`,Label:`1TB`}]},{Name:`套餐 Line truncated
+1
View File
@@ -0,0 +1 @@
import{Nn as e,_ as t,h as n,hn as r,ln as i,mn as a}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as o}from"./serverScope-O8Rw8SFk.js";import{t as s}from"./AdminBadge-Z72F8Boy.js";import{t as c}from"./CrudTable-B49nrpUt.js";var l={class:`tenant-page`},u=t(r({__name:`Tenant`,setup(t){o(`租户管理`);let r=n();function u(e){r.push({path:`/company/tenant-detail`,query:{TenantUUID:e.TenantUUID||``}})}return(t,n)=>(e(),i(`div`,l,[a(s),a(c,{table:`Tenant`,title:`租户管理`,"pk-field":`TenantUUID`,searchable:``,pageable:``,stretch:``,selectable:``,"on-view":u})]))}}),[[`__scopeId`,`data-v-4b7a75c4`]]);export{u as default};
-1
View File
@@ -1 +0,0 @@
import{$r as e,Qr as t,_ as n,_i as r,h as i,qr as a}from"./useApi-CROJJdhE-DTiQDIFh.js";import{a as o}from"./serverScope-CLCA_jyd.js";import{t as s}from"./AdminBadge-DWq3-CmW.js";import{t as c}from"./CrudTable-0btzlQyb.js";var l={class:`tenant-page`},u=n(e({__name:`Tenant`,setup(e){o(`租户管理`);let n=i();function u(e){n.push({path:`/company/tenant-detail`,query:{TenantUUID:e.TenantUUID||``}})}return(e,n)=>(r(),a(`div`,l,[t(s),t(c,{table:`Tenant`,title:`租户管理`,"pk-field":`TenantUUID`,searchable:``,pageable:``,stretch:``,selectable:``,"on-view":u})]))}}),[[`__scopeId`,`data-v-4b7a75c4`]]);export{u as default};
@@ -0,0 +1 @@
import{An as e,Jn as t,Nn as n,_ as r,h as i,hn as a,ir as o,ln as s,mn as c,nr as l,on as u,pn as d}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as f,o as p,u as m}from"./serverScope-O8Rw8SFk.js";import{t as h}from"./date-picker-CM_15T0u.js";import{l as g}from"./router-CMu0lceh.js";import{n as _,t as v}from"./form-F--u6XQJ.js";import{t as y}from"./button-CPx9BSuo.js";/* empty css */import"./css-DsD2Typt.js";import"./css-49fsIjk3.js";import"./css-DmmbJMxg.js";import"./css-ByqxgOA-.js";var b={class:`tenant-create-page`},x={class:`tenant-create-card`},S={key:0,class:`form-section`},C={class:`card-actions`},w={key:1,class:`success-section`},T={class:`success-actions`},E=r(a({__name:`TenantCreate`,setup(r){let a=i(),E=o(),D=l({TenantName:``,TenantExpireTime:``,ReviewRemark:``}),O={TenantName:[{required:!0,message:`请输入租户名称`,trigger:`blur`}],TenantExpireTime:[{required:!0,message:`请选择有效期`,trigger:`change`}]},k=o(!1),A=o(!1);async function j(){if(E.value){try{await E.value.validate()}catch{return}k.value=!0;try{await g(`/API/Tenant/Apply`,{TenantName:D.TenantName.trim(),TenantExpireTime:D.TenantExpireTime,ReviewRemark:D.ReviewRemark.trim()}),A.value=!0,p.success(`申请已提交`)}catch{}finally{k.value=!1}}}function M(){A.value=!1,D.TenantName=``,D.TenantExpireTime=``,D.ReviewRemark=``,E.value?.clearValidate()}function N(){a.back()}return e(()=>{f(`租户入驻申请`)}),(e,r)=>{let i=m,a=_,o=h,l=v,f=y;return n(),s(`div`,b,[u(`div`,x,[A.value?(n(),s(`div`,w,[r[9]||=u(`i`,{class:`fas fa-check-circle success-icon`},null,-1),r[10]||=u(`h3`,null,`申请已提交`,-1),r[11]||=u(`p`,null,`租户入驻申请已提交,等待审核通过后激活。`,-1),u(`div`,T,[c(f,{type:`primary`,onClick:M},{default:t(()=>[...r[7]||=[d(`继续申请`,-1)]]),_:1}),c(f,{onClick:N},{default:t(()=>[...r[8]||=[d(`返回`,-1)]]),_:1})])])):(n(),s(`div`,S,[r[5]||=u(`div`,{class:`card-title`},[u(`i`,{class:`fas fa-key icon-primary`}),u(`span`,null,`租户入驻申请`)],-1),r[6]||=u(`div`,{class:`card-desc`},`提交租户入驻申请,等待超管或审核员审核通过后激活。`,-1),c(l,{ref_key:`formRef`,ref:E,model:D,rules:O,"label-position":`top`,class:`tenant-form`},{default:t(()=>[c(a,{label:`租户名称`,prop:`TenantName`},{default:t(()=>[c(i,{modelValue:D.TenantName,"onUpdate:modelValue":r[0]||=e=>D.TenantName=e,placeholder:`请输入租户名称`},null,8,[`modelValue`])]),_:1}),c(a,{label:`有效期`,prop:`TenantExpireTime`},{default:t(()=>[c(o,{modelValue:D.TenantExpireTime,"onUpdate:modelValue":r[1]||=e=>D.TenantExpireTime=e,type:`datetime`,format:`YYYY-MM-DD HH:mm:ss`,"value-format":`YYYY-MM-DD HH:mm:ss`,placeholder:`请选择有效期`,style:{width:`100%`}},null,8,[`modelValue`])]),_:1}),c(a,{label:`申请说明`},{default:t(()=>[c(i,{modelValue:D.ReviewRemark,"onUpdate:modelValue":r[2]||=e=>D.ReviewRemark=e,type:`textarea`,rows:3,placeholder:`可选,填写申请理由或备注`},null,8,[`modelValue`])]),_:1})]),_:1},8,[`model`]),u(`div`,C,[c(f,{onClick:N},{default:t(()=>[...r[3]||=[d(`取消`,-1)]]),_:1}),c(f,{type:`primary`,loading:k.value,onClick:j},{default:t(()=>[...r[4]||=[d(`提交申请`,-1)]]),_:1},8,[`loading`])])]))])])}}}),[[`__scopeId`,`data-v-1b563c9c`]]);export{E as default};
@@ -1 +0,0 @@
import{$r as e,Bi as t,Hi as n,Mi as r,Qr as i,Wr as a,Zr as o,_ as s,_i as c,h as l,mi as u,qr as d}from"./useApi-CROJJdhE-DTiQDIFh.js";import{a as f,o as p,u as m}from"./serverScope-CLCA_jyd.js";import{t as h}from"./date-picker-DUqMIidt.js";import{l as g}from"./router-Bz7E4dLH.js";import{n as _,t as v}from"./form-DkCs-bRK.js";import{t as y}from"./button-dPBZLBL0.js";/* empty css */import"./css-DsD2Typt.js";import"./css-49fsIjk3.js";import"./css-DmmbJMxg.js";import"./css-ByqxgOA-.js";var b={class:`tenant-create-page`},x={class:`tenant-create-card`},S={key:0,class:`form-section`},C={class:`card-actions`},w={key:1,class:`success-section`},T={class:`success-actions`},E=s(e({__name:`TenantCreate`,setup(e){let s=l(),E=n(),D=t({TenantName:``,TenantExpireTime:``,ReviewRemark:``}),O={TenantName:[{required:!0,message:`请输入租户名称`,trigger:`blur`}],TenantExpireTime:[{required:!0,message:`请选择有效期`,trigger:`change`}]},k=n(!1),A=n(!1);async function j(){if(E.value){try{await E.value.validate()}catch{return}k.value=!0;try{await g(`/API/Tenant/Apply`,{TenantName:D.TenantName.trim(),TenantExpireTime:D.TenantExpireTime,ReviewRemark:D.ReviewRemark.trim()}),A.value=!0,p.success(`申请已提交`)}catch{}finally{k.value=!1}}}function M(){A.value=!1,D.TenantName=``,D.TenantExpireTime=``,D.ReviewRemark=``,E.value?.clearValidate()}function N(){s.back()}return u(()=>{f(`租户入驻申请`)}),(e,t)=>{let n=m,s=_,l=h,u=v,f=y;return c(),d(`div`,b,[a(`div`,x,[A.value?(c(),d(`div`,w,[t[9]||=a(`i`,{class:`fas fa-check-circle success-icon`},null,-1),t[10]||=a(`h3`,null,`申请已提交`,-1),t[11]||=a(`p`,null,`租户入驻申请已提交,等待审核通过后激活。`,-1),a(`div`,T,[i(f,{type:`primary`,onClick:M},{default:r(()=>[...t[7]||=[o(`继续申请`,-1)]]),_:1}),i(f,{onClick:N},{default:r(()=>[...t[8]||=[o(`返回`,-1)]]),_:1})])])):(c(),d(`div`,S,[t[5]||=a(`div`,{class:`card-title`},[a(`i`,{class:`fas fa-key icon-primary`}),a(`span`,null,`租户入驻申请`)],-1),t[6]||=a(`div`,{class:`card-desc`},`提交租户入驻申请,等待超管或审核员审核通过后激活。`,-1),i(u,{ref_key:`formRef`,ref:E,model:D,rules:O,"label-position":`top`,class:`tenant-form`},{default:r(()=>[i(s,{label:`租户名称`,prop:`TenantName`},{default:r(()=>[i(n,{modelValue:D.TenantName,"onUpdate:modelValue":t[0]||=e=>D.TenantName=e,placeholder:`请输入租户名称`},null,8,[`modelValue`])]),_:1}),i(s,{label:`有效期`,prop:`TenantExpireTime`},{default:r(()=>[i(l,{modelValue:D.TenantExpireTime,"onUpdate:modelValue":t[1]||=e=>D.TenantExpireTime=e,type:`datetime`,format:`YYYY-MM-DD HH:mm:ss`,"value-format":`YYYY-MM-DD HH:mm:ss`,placeholder:`请选择有效期`,style:{width:`100%`}},null,8,[`modelValue`])]),_:1}),i(s,{label:`申请说明`},{default:r(()=>[i(n,{modelValue:D.ReviewRemark,"onUpdate:modelValue":t[2]||=e=>D.ReviewRemark=e,type:`textarea`,rows:3,placeholder:`可选,填写申请理由或备注`},null,8,[`modelValue`])]),_:1})]),_:1},8,[`model`]),a(`div`,C,[i(f,{onClick:N},{default:r(()=>[...t[3]||=[o(`取消`,-1)]]),_:1}),i(f,{type:`primary`,loading:k.value,onClick:j},{default:r(()=>[...t[4]||=[o(`提交申请`,-1)]]),_:1},8,[`loading`])])]))])])}}}),[[`__scopeId`,`data-v-1b563c9c`]]);export{E as default};
@@ -0,0 +1 @@
import{An as e,Br as t,Fn as n,Jn as r,Ln as ee,Nn as i,an as a,cn as o,en as s,h as c,hn as l,ir as u,ln as d,m as f,mn as p,nr as m,pn as h,pr as g,sn as _}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as v,o as y,u as b}from"./serverScope-O8Rw8SFk.js";import{t as x}from"./date-picker-CM_15T0u.js";import{u as S}from"./use-global-config-D-dPcPvU.js";import{n as C}from"./descriptions-Cq_aE9sg.js";import{r as w,t as te}from"./select-BGsfCDCJ.js";import{n as T,t as ne}from"./form-F--u6XQJ.js";import{t as E}from"./button-CPx9BSuo.js";import{t as D}from"./tag-BSnLMVgs.js";import{t as O}from"./card-Dj_UeWcA.js";import{t as k}from"./dialog-_5VhSQg5.js";import{t as A}from"./input-number-CiNOxXL6.js";import{t as j}from"./switch-7puThziV.js";/* empty css */import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-CttyGzET.js";import"./css-D-a1H3t1.js";import"./css-49fsIjk3.js";import"./css-DmmbJMxg.js";import"./css-CysIl0tz.js";import"./css-w8-s2aei.js";import"./css-DMOjom7l.js";import"./css-Dmy6QwIc.js";import"./css-BLJI5-W_.js";import{n as M,t as N}from"./CrudTable-B49nrpUt.js";import"./css-ByqxgOA-.js";import{t as P}from"./form-B2Pzr8Vf.js";import{t as F}from"./DetailPage-m11wfvkM.js";import{t as I}from"./InfoGrid-C1it9Z2Y.js";var L=`TenantUUID`,R=l({__name:`TenantDetail`,setup(l){let R=f(),z=c(),B=R.query.TenantUUID||``,V=u(!1),H=u(null),U=u(!1),W=u(!1),G=u([]),K=m({}),q=a(()=>H.value?.TenantName||`租户详情`);function J(e){return e===1||e===`1`?{text:`启用`,type:`success`}:e===0||e===`0`?{text:`禁用`,type:`danger`}:{text:String(e??`-`),type:`info`}}function Y(e){return e===0||e===`0`?{text:`待审核`,type:`warning`}:e===1||e===`1`?{text:`已通过`,type:`success`}:e===2||e===`2`?{text:`已拒绝`,type:`danger`}:{text:String(e??`-`),type:`info`}}function X(e){if(!e)return`-`;let t=new Date(e);if(isNaN(t.getTime()))return String(e);let n=e=>String(e).padStart(2,`0`);return`${t.getFullYear()}-${n(t.getMonth()+1)}-${n(t.getDate())} ${n(t.getHours())}:${n(t.getMinutes())}`}let Z=a(()=>G.value.filter(e=>e.editable!==!1&&!e.hideInForm&&e.type!==`hidden`&&e.type!==`divider`&&e.type!==`html`&&e.field!==L));async function Q(){if(!B){y.warning(`缺少 TenantUUID 参数,无法加载租户详情`);return}V.value=!0;try{let e=await P.list(`Tenant`,{[L]:B,pageSize:1}),t=Array.isArray(e)?e:e?.list||[],n=t.find(e=>e[L]===B)||t[0];if(!n){y.error(`未找到租户数据`);return}H.value=n,v(n.TenantName||`租户详情`)}finally{V.value=!1}}async function $(){try{G.value=await P.getColumns(`Tenant`)}catch{}}function re(){H.value&&(Object.keys(K).forEach(e=>delete K[e]),Object.assign(K,H.value),U.value=!0)}async function ie(){W.value=!0;try{await P.update(`Tenant`,K[L],K),y.success(`保存成功`),U.value=!1,await Q()}finally{W.value=!1}}function ae(e){z.push({path:`/company/company-detail`,query:{CompanyUUID:e.CompanyUUID||``}})}return e(async()=>{await Promise.all([Q(),$()])}),(e,a)=>{let c=ee(`Edit`),l=S,u=E,f=C,m=D,v=O,y=b,P=A,L=te,R=w,z=x,G=j,Q=T,$=ne,oe=k;return i(),_(F,{title:q.value,loading:V.value},{actions:r(()=>[p(u,{type:`primary`,onClick:re},{default:r(()=>[p(l,null,{default:r(()=>[p(c)]),_:1}),a[2]||=h(`编辑 `,-1)]),_:1})]),default:r(()=>[p(I,{title:`基本信息`,columns:2},{default:r(()=>[p(f,{label:`租户名称`},{default:r(()=>[h(t(H.value?.TenantName||`-`),1)]),_:1}),p(f,{label:`租户状态`},{default:r(()=>[p(m,{type:J(H.value?.TenantStatus).type,size:`small`},{default:r(()=>[h(t(J(H.value?.TenantStatus).text),1)]),_:1},8,[`type`])]),_:1}),p(f,{label:`到期时间`},{default:r(()=>[h(t(X(H.value?.TenantExpireTime)),1)]),_:1}),p(f,{label:`创建时间`},{default:r(()=>[h(t(X(H.value?.CreateTime)),1)]),_:1})]),_:1}),p(I,{title:`审核信息`,columns:2},{default:r(()=>[p(f,{label:`审核状态`},{default:r(()=>[p(m,{type:Y(H.value?.ReviewStatus).type,size:`small`},{default:r(()=>[h(t(Y(H.value?.ReviewStatus).text),1)]),_:1},8,[`type`])]),_:1}),p(f,{label:`审核时间`},{default:r(()=>[h(t(X(H.value?.ReviewTime)),1)]),_:1}),p(f,{label:`审核备注`},{default:r(()=>[h(t(H.value?.ReviewRemark||`-`),1)]),_:1})]),_:1}),p(v,{shadow:`never`},{header:r(()=>[...a[3]||=[h(`关联公司`,-1)]]),default:r(()=>[g(B)?(i(),_(N,{key:0,table:`Company`,title:`租户公司`,query:{TenantUUID:g(B)},"pk-field":`CompanyUUID`,selectable:``,pageable:``,"on-view":ae},null,8,[`query`])):o(``,!0)]),_:1}),p(oe,{modelValue:U.value,"onUpdate:modelValue":a[1]||=e=>U.value=e,title:`编辑租户`,width:`600px`,"destroy-on-close":``},{footer:r(()=>[p(u,{onClick:a[0]||=e=>U.value=!1},{default:r(()=>[...a[4]||=[h(`取消`,-1)]]),_:1}),p(u,{type:`primary`,loading:W.value,onClick:ie},{default:r(()=>[...a[5]||=[h(`保存`,-1)]]),_:1},8,[`loading`])]),default:r(()=>[p($,{model:K,"label-width":`120px`,"label-position":`right`},{default:r(()=>[(i(!0),d(s,null,n(Z.value,e=>(i(),_(Q,{key:e.field,label:e.title,required:e.required},{default:r(()=>[e.type===`entityPicker`&&e.entityPicker?(i(),_(M,{key:0,modelValue:K[e.field],"onLine truncated
@@ -1 +0,0 @@
import{$r as e,Bi as t,Ca as n,D as r,Gr as i,Hi as a,Kr as o,Mi as s,Qr as c,Rr as l,Ur as u,Xi as d,Zr as f,_i as p,h as m,m as h,mi as g,qr as _,xi as v,yi as y}from"./useApi-CROJJdhE-DTiQDIFh.js";import{a as b,o as x,u as S}from"./serverScope-CLCA_jyd.js";import{t as C}from"./date-picker-DUqMIidt.js";import{n as w}from"./descriptions-DdoyLmWE.js";import{r as T,t as ee}from"./select-VtLnfNTa.js";import{n as E,t as D}from"./form-DkCs-bRK.js";import{t as te}from"./button-dPBZLBL0.js";import{t as O}from"./tag-DsjHDKbM.js";import{t as k}from"./card-CKxtkBHA.js";import{t as A}from"./dialog-2NPB22v1.js";import{t as j}from"./input-number-BYrgUFpo.js";import{t as M}from"./switch-TyRYNjQq.js";/* empty css */import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-CttyGzET.js";import"./css-D-a1H3t1.js";import"./css-49fsIjk3.js";import"./css-DmmbJMxg.js";import"./css-CysIl0tz.js";import"./css-w8-s2aei.js";import"./css-DMOjom7l.js";import"./css-Dmy6QwIc.js";import"./css-BLJI5-W_.js";import{n as N,t as P}from"./CrudTable-0btzlQyb.js";import"./css-ByqxgOA-.js";import{t as F}from"./form-DjuqPK5m.js";import{t as I}from"./DetailPage-D_nlVGtk.js";import{t as L}from"./InfoGrid-BuM8q62h.js";var R=`TenantUUID`,z=e({__name:`TenantDetail`,setup(e){let z=h(),B=m(),V=z.query.TenantUUID||``,H=a(!1),U=a(null),W=a(!1),G=a(!1),K=a([]),q=t({}),J=u(()=>U.value?.TenantName||`租户详情`);function Y(e){return e===1||e===`1`?{text:`启用`,type:`success`}:e===0||e===`0`?{text:`禁用`,type:`danger`}:{text:String(e??`-`),type:`info`}}function X(e){return e===0||e===`0`?{text:`待审核`,type:`warning`}:e===1||e===`1`?{text:`已通过`,type:`success`}:e===2||e===`2`?{text:`已拒绝`,type:`danger`}:{text:String(e??`-`),type:`info`}}function Z(e){if(!e)return`-`;let t=new Date(e);if(isNaN(t.getTime()))return String(e);let n=e=>String(e).padStart(2,`0`);return`${t.getFullYear()}-${n(t.getMonth()+1)}-${n(t.getDate())} ${n(t.getHours())}:${n(t.getMinutes())}`}let ne=u(()=>K.value.filter(e=>e.editable!==!1&&!e.hideInForm&&e.type!==`hidden`&&e.type!==`divider`&&e.type!==`html`&&e.field!==R));async function Q(){if(!V){x.warning(`缺少 TenantUUID 参数,无法加载租户详情`);return}H.value=!0;try{let e=await F.list(`Tenant`,{[R]:V,pageSize:1}),t=Array.isArray(e)?e:e?.list||[],n=t.find(e=>e[R]===V)||t[0];if(!n){x.error(`未找到租户数据`);return}U.value=n,b(n.TenantName||`租户详情`)}finally{H.value=!1}}async function $(){try{K.value=await F.getColumns(`Tenant`)}catch{}}function re(){U.value&&(Object.keys(q).forEach(e=>delete q[e]),Object.assign(q,U.value),W.value=!0)}async function ie(){G.value=!0;try{await F.update(`Tenant`,q[R],q),x.success(`保存成功`),W.value=!1,await Q()}finally{G.value=!1}}function ae(e){B.push({path:`/company/company-detail`,query:{CompanyUUID:e.CompanyUUID||``}})}return g(async()=>{await Promise.all([Q(),$()])}),(e,t)=>{let a=v(`Edit`),u=r,m=te,h=w,g=O,b=k,x=S,F=j,R=ee,z=T,B=C,K=M,Q=E,$=D,oe=A;return p(),i(I,{title:J.value,loading:H.value},{actions:s(()=>[c(m,{type:`primary`,onClick:re},{default:s(()=>[c(u,null,{default:s(()=>[c(a)]),_:1}),t[2]||=f(`编辑 `,-1)]),_:1})]),default:s(()=>[c(L,{title:`基本信息`,columns:2},{default:s(()=>[c(h,{label:`租户名称`},{default:s(()=>[f(n(U.value?.TenantName||`-`),1)]),_:1}),c(h,{label:`租户状态`},{default:s(()=>[c(g,{type:Y(U.value?.TenantStatus).type,size:`small`},{default:s(()=>[f(n(Y(U.value?.TenantStatus).text),1)]),_:1},8,[`type`])]),_:1}),c(h,{label:`到期时间`},{default:s(()=>[f(n(Z(U.value?.TenantExpireTime)),1)]),_:1}),c(h,{label:`创建时间`},{default:s(()=>[f(n(Z(U.value?.CreateTime)),1)]),_:1})]),_:1}),c(L,{title:`审核信息`,columns:2},{default:s(()=>[c(h,{label:`审核状态`},{default:s(()=>[c(g,{type:X(U.value?.ReviewStatus).type,size:`small`},{default:s(()=>[f(n(X(U.value?.ReviewStatus).text),1)]),_:1},8,[`type`])]),_:1}),c(h,{label:`审核时间`},{default:s(()=>[f(n(Z(U.value?.ReviewTime)),1)]),_:1}),c(h,{label:`审核备注`},{default:s(()=>[f(n(U.value?.ReviewRemark||`-`),1)]),_:1})]),_:1}),c(b,{shadow:`never`},{header:s(()=>[...t[3]||=[f(`关联公司`,-1)]]),default:s(()=>[d(V)?(p(),i(P,{key:0,table:`Company`,title:`租户公司`,query:{TenantUUID:d(V)},"pk-field":`CompanyUUID`,selectable:``,pageable:``,"on-view":ae},null,8,[`query`])):o(``,!0)]),_:1}),c(oe,{modelValue:W.value,"onUpdate:modelValue":t[1]||=e=>W.value=e,title:`编辑租户`,width:`600px`,"destroy-on-close":``},{footer:s(()=>[c(m,{onClick:t[0]||=e=>W.value=!1},{default:s(()=>[...t[4]||=[f(`取消`,-1)]]),_:1}),c(m,{type:`primary`,loading:G.value,onClick:ie},{default:s(()=>[...t[5]||=[f(`保存`,-1)]]),_:1},8,[`loading`])]),default:s(()=>[c($,{model:q,"label-width":`120px`,"label-position":`right`},{default:s(()=>[(p(!0),_(l,null,y(ne.value,e=>(p(),i(Q,{key:e.field,label:e.title,required:e.required},{default:s(()=>[e.type===`entityPicker`&&e.entityPicker?(p(),i(N,{key:0,modelValue:q[e.field],"onUpdate:modelValue":t=>q[e.field]=t,config:e.eLine truncated
@@ -0,0 +1 @@
import{An as e,Br as t,Fn as n,Jn as r,Nn as i,Yn as a,_ as o,cn as s,en as c,hn as l,ir as u,ln as d,mn as f,on as p,pn as m,sn as h}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as g,o as _,u as v}from"./serverScope-O8Rw8SFk.js";import{_ as y,l as b,s as x}from"./router-CMu0lceh.js";import{t as S}from"./button-CPx9BSuo.js";import{t as C}from"./dialog-_5VhSQg5.js";import{t as w}from"./empty-CnQTxkvl.js";import{t as T}from"./directive-CY41a6pJ.js";/* empty css */import"./css-DsD2Typt.js";import"./css-Cy-4mdDD.js";import"./css-DmmbJMxg.js";import"./css-DMOjom7l.js";import"./css-D4jab2ni2.js";var E={class:`tenant-review-page`},D={class:`review-header`},O={class:`review-container`},k={key:0,class:`error-state`},A={key:2,class:`review-list`},j={class:`info`},M={class:`name`},N={class:`meta`},P={key:0,class:`remark`},F={class:`actions`},I={class:`reject-target`},L=o(l({__name:`TenantReview`,setup(o){let l=u([]),L=u(!1),R=u(``),z=u(!1),B=u(``),V=u(``),H=u(``),U=u(!1);function W(e){return e?e.replace(`T`,` `).substring(0,19):`-`}async function G(){L.value=!0,R.value=``;try{let e=await x(`/API/Tenant/Pending`);l.value=Array.isArray(e)?e:[]}catch(e){l.value=[],R.value=e instanceof Error?e.message:`加载失败`}finally{L.value=!1}}async function K(e){try{await y.confirm(`确认批准该租户入驻申请?`,`提示`,{type:`warning`,confirmButtonText:`确认批准`,cancelButtonText:`取消`})}catch{return}try{await b(`/API/Tenant/Approve/${e}`),_.success(`审核通过`),G()}catch{}}function q(e,t){B.value=e,V.value=t,H.value=``,z.value=!0}async function J(){if(!H.value.trim()){_.warning(`请输入拒绝理由`);return}U.value=!0;try{await b(`/API/Tenant/Reject/${B.value}`,{ReviewRemark:H.value.trim()}),_.success(`已拒绝申请`),z.value=!1,G()}catch{}finally{U.value=!1}}return e(()=>{g(`租户审核工作台`),G()}),(e,o)=>{let u=S,g=w,_=v,y=C,b=T;return i(),d(`div`,E,[p(`div`,D,[o[4]||=p(`h1`,{class:`page-title`},[p(`i`,{class:`fas fa-clipboard-check icon-primary`}),p(`span`,null,`租户审核工作台`)],-1),f(u,{onClick:G},{default:r(()=>[...o[3]||=[p(`i`,{class:`fas fa-sync`},null,-1),m(` 刷新 `,-1)]]),_:1})]),a((i(),d(`div`,O,[R.value?(i(),d(`div`,k,[o[5]||=p(`i`,{class:`fas fa-exclamation-triangle`},null,-1),p(`div`,null,t(R.value),1)])):!L.value&&l.value.length===0?(i(),h(g,{key:1,description:`暂无待审核的租户申请`,"image-size":60})):(i(),d(`div`,A,[(i(!0),d(c,null,n(l.value,e=>(i(),d(`div`,{key:e.TenantUUID,class:`review-card`},[p(`div`,j,[p(`div`,M,t(e.TenantName),1),p(`div`,N,[p(`span`,null,[o[6]||=p(`i`,{class:`fas fa-calendar`},null,-1),m(` 有效期: `+t(W(e.TenantExpireTime)),1)]),p(`span`,null,[o[7]||=p(`i`,{class:`fas fa-clock`},null,-1),m(` 申请时间: `+t(W(e.CreateTime)),1)])]),e.ReviewRemark?(i(),d(`div`,P,[o[8]||=p(`i`,{class:`fas fa-comment`},null,-1),m(` `+t(e.ReviewRemark),1)])):s(``,!0)]),p(`div`,F,[f(u,{type:`primary`,onClick:t=>K(e.TenantUUID)},{default:r(()=>[...o[9]||=[p(`i`,{class:`fas fa-check`},null,-1),m(` 批准 `,-1)]]),_:1},8,[`onClick`]),f(u,{type:`danger`,onClick:t=>q(e.TenantUUID,e.TenantName)},{default:r(()=>[...o[10]||=[p(`i`,{class:`fas fa-times`},null,-1),m(` 拒绝 `,-1)]]),_:1},8,[`onClick`])])]))),128))]))])),[[b,L.value]]),f(y,{modelValue:z.value,"onUpdate:modelValue":o[2]||=e=>z.value=e,title:`拒绝入驻申请`,width:`420px`},{footer:r(()=>[f(u,{onClick:o[1]||=e=>z.value=!1},{default:r(()=>[...o[12]||=[m(`取消`,-1)]]),_:1}),f(u,{type:`danger`,loading:U.value,onClick:J},{default:r(()=>[...o[13]||=[m(`确认拒绝`,-1)]]),_:1},8,[`loading`])]),default:r(()=>[p(`p`,I,[o[11]||=m(`租户:`,-1),p(`span`,null,t(V.value),1)]),f(_,{modelValue:H.value,"onUpdate:modelValue":o[0]||=e=>H.value=e,type:`textarea`,rows:4,placeholder:`请输入拒绝理由`},null,8,[`modelValue`])]),_:1},8,[`modelValue`])])}}}),[[`__scopeId`,`data-v-2b23f899`]]);export{L as default};
@@ -1 +0,0 @@
import{$r as e,Ca as t,Gr as n,Hi as r,Kr as i,Mi as a,Ni as o,Qr as s,Rr as c,Wr as l,Zr as u,_ as d,_i as f,mi as p,qr as m,yi as h}from"./useApi-CROJJdhE-DTiQDIFh.js";import{a as g,o as _,u as v}from"./serverScope-CLCA_jyd.js";import{g as y,l as b,s as x}from"./router-Bz7E4dLH.js";import{t as S}from"./button-dPBZLBL0.js";import{t as C}from"./dialog-2NPB22v1.js";import{t as w}from"./empty-BgmR_P06.js";import{t as T}from"./directive-DsCzzPS8.js";/* empty css */import"./css-DsD2Typt.js";import"./css-Cy-4mdDD.js";import"./css-DmmbJMxg.js";import"./css-DMOjom7l.js";import"./css-D4jab2ni.js";var E={class:`tenant-review-page`},D={class:`review-header`},O={class:`review-container`},k={key:0,class:`error-state`},A={key:2,class:`review-list`},j={class:`info`},M={class:`name`},N={class:`meta`},P={key:0,class:`remark`},F={class:`actions`},I={class:`reject-target`},L=d(e({__name:`TenantReview`,setup(e){let d=r([]),L=r(!1),R=r(``),z=r(!1),B=r(``),V=r(``),H=r(``),U=r(!1);function W(e){return e?e.replace(`T`,` `).substring(0,19):`-`}async function G(){L.value=!0,R.value=``;try{let e=await x(`/API/Tenant/Pending`);d.value=Array.isArray(e)?e:[]}catch(e){d.value=[],R.value=e instanceof Error?e.message:`加载失败`}finally{L.value=!1}}async function K(e){try{await y.confirm(`确认批准该租户入驻申请?`,`提示`,{type:`warning`,confirmButtonText:`确认批准`,cancelButtonText:`取消`})}catch{return}try{await b(`/API/Tenant/Approve/${e}`),_.success(`审核通过`),G()}catch{}}function q(e,t){B.value=e,V.value=t,H.value=``,z.value=!0}async function J(){if(!H.value.trim()){_.warning(`请输入拒绝理由`);return}U.value=!0;try{await b(`/API/Tenant/Reject/${B.value}`,{ReviewRemark:H.value.trim()}),_.success(`已拒绝申请`),z.value=!1,G()}catch{}finally{U.value=!1}}return p(()=>{g(`租户审核工作台`),G()}),(e,r)=>{let p=S,g=w,_=v,y=C,b=T;return f(),m(`div`,E,[l(`div`,D,[r[4]||=l(`h1`,{class:`page-title`},[l(`i`,{class:`fas fa-clipboard-check icon-primary`}),l(`span`,null,`租户审核工作台`)],-1),s(p,{onClick:G},{default:a(()=>[...r[3]||=[l(`i`,{class:`fas fa-sync`},null,-1),u(` 刷新 `,-1)]]),_:1})]),o((f(),m(`div`,O,[R.value?(f(),m(`div`,k,[r[5]||=l(`i`,{class:`fas fa-exclamation-triangle`},null,-1),l(`div`,null,t(R.value),1)])):!L.value&&d.value.length===0?(f(),n(g,{key:1,description:`暂无待审核的租户申请`,"image-size":60})):(f(),m(`div`,A,[(f(!0),m(c,null,h(d.value,e=>(f(),m(`div`,{key:e.TenantUUID,class:`review-card`},[l(`div`,j,[l(`div`,M,t(e.TenantName),1),l(`div`,N,[l(`span`,null,[r[6]||=l(`i`,{class:`fas fa-calendar`},null,-1),u(` 有效期: `+t(W(e.TenantExpireTime)),1)]),l(`span`,null,[r[7]||=l(`i`,{class:`fas fa-clock`},null,-1),u(` 申请时间: `+t(W(e.CreateTime)),1)])]),e.ReviewRemark?(f(),m(`div`,P,[r[8]||=l(`i`,{class:`fas fa-comment`},null,-1),u(` `+t(e.ReviewRemark),1)])):i(``,!0)]),l(`div`,F,[s(p,{type:`primary`,onClick:t=>K(e.TenantUUID)},{default:a(()=>[...r[9]||=[l(`i`,{class:`fas fa-check`},null,-1),u(` 批准 `,-1)]]),_:1},8,[`onClick`]),s(p,{type:`danger`,onClick:t=>q(e.TenantUUID,e.TenantName)},{default:a(()=>[...r[10]||=[l(`i`,{class:`fas fa-times`},null,-1),u(` 拒绝 `,-1)]]),_:1},8,[`onClick`])])]))),128))]))])),[[b,L.value]]),s(y,{modelValue:z.value,"onUpdate:modelValue":r[2]||=e=>z.value=e,title:`拒绝入驻申请`,width:`420px`},{footer:a(()=>[s(p,{onClick:r[1]||=e=>z.value=!1},{default:a(()=>[...r[12]||=[u(`取消`,-1)]]),_:1}),s(p,{type:`danger`,loading:U.value,onClick:J},{default:a(()=>[...r[13]||=[u(`确认拒绝`,-1)]]),_:1},8,[`loading`])]),default:a(()=>[l(`p`,I,[r[11]||=u(`租户:`,-1),l(`span`,null,t(V.value),1)]),s(_,{modelValue:H.value,"onUpdate:modelValue":r[0]||=e=>H.value=e,type:`textarea`,rows:4,placeholder:`请输入拒绝理由`},null,8,[`modelValue`])]),_:1},8,[`modelValue`])])}}}),[[`__scopeId`,`data-v-2b23f899`]]);export{L as default};
@@ -0,0 +1 @@
import{An as e,Br as t,Fn as n,Jn as r,Ln as i,Nn as a,_ as o,an as s,cn as c,en as l,h as u,hn as d,ir as f,ln as p,m,mn as h,nr as g,on as ee,pn as _,pr as v,sn as y}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as b,o as x,u as S}from"./serverScope-O8Rw8SFk.js";import{t as C}from"./date-picker-CM_15T0u.js";import{u as w}from"./use-global-config-D-dPcPvU.js";import{n as te}from"./descriptions-Cq_aE9sg.js";import{r as ne,t as re}from"./select-BGsfCDCJ.js";import{r as T,s as E}from"./router-CMu0lceh.js";import{n as D,t as ie}from"./form-F--u6XQJ.js";import{t as O}from"./alert-BpFV-0dO.js";import{t as k}from"./button-CPx9BSuo.js";import{t as A}from"./tag-BSnLMVgs.js";import{t as j}from"./card-Dj_UeWcA.js";import{t as M}from"./dialog-_5VhSQg5.js";import{t as N}from"./input-number-CiNOxXL6.js";import{t as ae}from"./switch-7puThziV.js";/* empty css */import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-CttyGzET.js";import"./css-D-a1H3t1.js";import"./css-49fsIjk3.js";import"./css-DmmbJMxg.js";import"./css-CysIl0tz.js";import"./css-w8-s2aei.js";import"./css-DMOjom7l.js";import"./css-Dmy6QwIc.js";import"./AdminBadge-Z72F8Boy.js";import"./css-BLJI5-W_.js";import{n as oe,t as P}from"./CrudTable-B49nrpUt.js";import"./css-ByqxgOA-.js";import{t as F}from"./form-B2Pzr8Vf.js";import{t as se}from"./DetailPage-m11wfvkM.js";import{t as I}from"./InfoGrid-C1it9Z2Y.js";var L=`UserUUID`,R=o(d({__name:`UserDetail`,setup(o){let d=m(),R=u(),z=T(),B=d.query.UserUUID||``,V=f(!1),H=f(null),U=f(null),W=f(!1),G=f(!1),K=f([]),q=g({}),ce=s(()=>H.value?.UserName||`用户详情`),le=s(()=>z.isAdmin?`特权模式:显示该用户在所有公司、所有部门的关联记录(无公司隔离)`:`仅显示当前公司数据。如需查看所有公司记录,需管理员特权。`);function ue(e){return e===1||e===`1`?`男`:e===0||e===`0`?`女`:`-`}function J(e){return e?`是`:`否`}function Y(e){return e===1||e===`1`?{text:`启用`,type:`success`}:e===0||e===`0`?{text:`禁用`,type:`danger`}:{text:String(e??`-`),type:`warning`}}function X(e){if(!e)return`-`;let t=new Date(e);if(isNaN(t.getTime()))return String(e);let n=e=>String(e).padStart(2,`0`);return`${t.getFullYear()}-${n(t.getMonth()+1)}-${n(t.getDate())} ${n(t.getHours())}:${n(t.getMinutes())}`}let de=s(()=>K.value.filter(e=>e.editable!==!1&&!e.hideInForm&&e.type!==`hidden`&&e.type!==`divider`&&e.type!==`html`&&e.field!==L));async function Z(){if(!B){x.warning(`缺少 UserUUID 参数,无法加载用户详情`);return}V.value=!0;try{let e=await F.list(`User`,{[L]:B,pageSize:1}),t=Array.isArray(e)?e:e?.list||[],n=t.find(e=>e[L]===B)||t[0];if(!n){x.error(`未找到用户数据`);return}H.value=n,b(n.UserName||`用户详情`)}finally{V.value=!1}}async function Q(){if(B)try{U.value=await E(`/API/SiteUserManagement/GetUser2FAInfo`,{UserUUID:B})}catch{U.value=null}}async function $(){try{K.value=await F.getColumns(`User`)}catch{}}function fe(){H.value&&(Object.keys(q).forEach(e=>delete q[e]),Object.assign(q,H.value),W.value=!0)}async function pe(){G.value=!0;try{await F.update(`User`,q[L],q),x.success(`保存成功`),W.value=!1,await Z()}finally{G.value=!1}}function me(e){R.push({path:`/system/role-detail`,query:{RoleUUID:e.RoleUUID||``}})}function he(e){R.push({path:`/company/department-detail`,query:{DeptUUID:e.DeptUUID||``}})}return e(async()=>{await Promise.all([Z(),$()]),Q()}),(e,o)=>{let s=i(`Edit`),u=w,d=k,f=O,m=te,g=A,b=j,x=S,T=N,E=re,F=ne,L=C,R=ae,K=D,Z=ie,Q=M;return a(),y(se,{title:ce.value,loading:V.value},{actions:r(()=>[h(d,{type:`primary`,onClick:fe},{default:r(()=>[h(u,null,{default:r(()=>[h(s)]),_:1}),o[2]||=_(`编辑 `,-1)]),_:1})]),default:r(()=>[h(f,{type:v(z).isAdmin?`warning`:`info`,closable:!1,"show-icon":``},{default:r(()=>[_(t(le.value),1)]),_:1},8,[`type`]),h(I,{title:`基本信息`,columns:2},{default:r(()=>[h(m,{label:`用户名`},{default:r(()=>[_(t(H.value?.UserName||`-`),1)]),_:1}),h(m,{label:`邮箱`},{default:r(()=>[_(t(H.value?.UserEmail||`-`),1)]),_:1}),h(m,{label:`电话`},{default:r(()=>[_(t(H.value?.UserTele||`-`),1)]),_:1}),h(m,{label:`性别`},{default:r(()=>[_(t(ue(H.value?.UserGender)),1)]),_:1}),h(m,{label:`账号状态`},{default:r(()=>[h(g,{type:Y(H.value?.UserAccountLicense).type,size:`small`},{default:r(()=>[_(t(Y(H.value?.UserAccountLicense).text),1)]),_:1},8,[`type`])]),_:1}),h(m,{label:`是否员工`},{default:r(()=>[_(t(J(H.value?.IsStaff)),1)]),_:1}),h(m,{label:`是否超级用户`},{default:r(()=>[_(t(J(H.value?.IsSuperuser)),1)]),_:1}),h(m,{label:`创建时间`},{default:r(()=>[_(t(X(H.value?.UserCreateTime)),1)]),_:1}),h(m,{label:`最后登录`},{default:r(()=>[_(t(X(H.value?.UserLastLoginDate)),1)]),_:1})]),_:1}),h(I,{title:`双因素认证 (2FA)`,columns:2},{default:r(()=>[h(m,{label:`2FA 状态`},{default:r(()=>[U.value?(a(),y(g,{key:0,type:`success`,size:`small`},{default:r(()=>[...o[3]||=[_(`已加载`,-1)]]),_:1})):(a(),y(g,{key:1,type:`info`,size:`small`},{default:r(()=>[...o[4]||=[_(`未启用 / 未加 Line truncated
@@ -1 +0,0 @@
import{$r as e,Bi as t,Ca as n,D as r,Gr as i,Hi as a,Kr as o,Mi as s,Qr as c,Rr as l,Ur as u,Wr as d,Xi as f,Zr as p,_ as m,_i as h,h as g,m as _,mi as v,qr as y,xi as b,yi as x}from"./useApi-CROJJdhE-DTiQDIFh.js";import{a as S,o as C,u as w}from"./serverScope-CLCA_jyd.js";import{t as ee}from"./date-picker-DUqMIidt.js";import{n as te}from"./descriptions-DdoyLmWE.js";import{r as ne,t as re}from"./select-VtLnfNTa.js";import{i as T,s as E}from"./router-Bz7E4dLH.js";import{n as ie,t as D}from"./form-DkCs-bRK.js";import{t as O}from"./alert-BVfR0rW0.js";import{t as k}from"./button-dPBZLBL0.js";import{t as A}from"./tag-DsjHDKbM.js";import{t as j}from"./card-CKxtkBHA.js";import{t as M}from"./dialog-2NPB22v1.js";import{t as N}from"./input-number-BYrgUFpo.js";import{t as ae}from"./switch-TyRYNjQq.js";/* empty css */import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-CttyGzET.js";import"./css-D-a1H3t1.js";import"./css-49fsIjk3.js";import"./css-DmmbJMxg.js";import"./css-CysIl0tz.js";import"./css-w8-s2aei.js";import"./css-DMOjom7l.js";import"./css-Dmy6QwIc.js";import"./AdminBadge-DWq3-CmW.js";import"./css-BLJI5-W_.js";import{n as oe,t as P}from"./CrudTable-0btzlQyb.js";import"./css-ByqxgOA-.js";import{t as F}from"./form-DjuqPK5m.js";import{t as I}from"./DetailPage-D_nlVGtk.js";import{t as L}from"./InfoGrid-BuM8q62h.js";var R=`UserUUID`,z=m(e({__name:`UserDetail`,setup(e){let m=_(),z=g(),B=T(),V=m.query.UserUUID||``,H=a(!1),U=a(null),W=a(null),G=a(!1),K=a(!1),q=a([]),J=t({}),se=u(()=>U.value?.UserName||`用户详情`),ce=u(()=>B.isAdmin?`特权模式:显示该用户在所有公司、所有部门的关联记录(无公司隔离)`:`仅显示当前公司数据。如需查看所有公司记录,需管理员特权。`);function le(e){return e===1||e===`1`?`男`:e===0||e===`0`?`女`:`-`}function Y(e){return e?`是`:`否`}function X(e){return e===1||e===`1`?{text:`启用`,type:`success`}:e===0||e===`0`?{text:`禁用`,type:`danger`}:{text:String(e??`-`),type:`warning`}}function Z(e){if(!e)return`-`;let t=new Date(e);if(isNaN(t.getTime()))return String(e);let n=e=>String(e).padStart(2,`0`);return`${t.getFullYear()}-${n(t.getMonth()+1)}-${n(t.getDate())} ${n(t.getHours())}:${n(t.getMinutes())}`}let ue=u(()=>q.value.filter(e=>e.editable!==!1&&!e.hideInForm&&e.type!==`hidden`&&e.type!==`divider`&&e.type!==`html`&&e.field!==R));async function Q(){if(!V){C.warning(`缺少 UserUUID 参数,无法加载用户详情`);return}H.value=!0;try{let e=await F.list(`User`,{[R]:V,pageSize:1}),t=Array.isArray(e)?e:e?.list||[],n=t.find(e=>e[R]===V)||t[0];if(!n){C.error(`未找到用户数据`);return}U.value=n,S(n.UserName||`用户详情`)}finally{H.value=!1}}async function $(){if(V)try{W.value=await E(`/API/SiteUserManagement/GetUser2FAInfo`,{UserUUID:V})}catch{W.value=null}}async function de(){try{q.value=await F.getColumns(`User`)}catch{}}function fe(){U.value&&(Object.keys(J).forEach(e=>delete J[e]),Object.assign(J,U.value),G.value=!0)}async function pe(){K.value=!0;try{await F.update(`User`,J[R],J),C.success(`保存成功`),G.value=!1,await Q()}finally{K.value=!1}}function me(e){z.push({path:`/system/role-detail`,query:{RoleUUID:e.RoleUUID||``}})}function he(e){z.push({path:`/company/department-detail`,query:{DeptUUID:e.DeptUUID||``}})}return v(async()=>{await Promise.all([Q(),de()]),$()}),(e,t)=>{let a=b(`Edit`),u=r,m=k,g=O,_=te,v=A,S=j,C=w,T=N,E=re,F=ne,R=ee,z=ae,q=ie,Q=D,$=M;return h(),i(I,{title:se.value,loading:H.value},{actions:s(()=>[c(m,{type:`primary`,onClick:fe},{default:s(()=>[c(u,null,{default:s(()=>[c(a)]),_:1}),t[2]||=p(`编辑 `,-1)]),_:1})]),default:s(()=>[c(g,{type:f(B).isAdmin?`warning`:`info`,closable:!1,"show-icon":``},{default:s(()=>[p(n(ce.value),1)]),_:1},8,[`type`]),c(L,{title:`基本信息`,columns:2},{default:s(()=>[c(_,{label:`用户名`},{default:s(()=>[p(n(U.value?.UserName||`-`),1)]),_:1}),c(_,{label:`邮箱`},{default:s(()=>[p(n(U.value?.UserEmail||`-`),1)]),_:1}),c(_,{label:`电话`},{default:s(()=>[p(n(U.value?.UserTele||`-`),1)]),_:1}),c(_,{label:`性别`},{default:s(()=>[p(n(le(U.value?.UserGender)),1)]),_:1}),c(_,{label:`账号状态`},{default:s(()=>[c(v,{type:X(U.value?.UserAccountLicense).type,size:`small`},{default:s(()=>[p(n(X(U.value?.UserAccountLicense).text),1)]),_:1},8,[`type`])]),_:1}),c(_,{label:`是否员工`},{default:s(()=>[p(n(Y(U.value?.IsStaff)),1)]),_:1}),c(_,{label:`是否超级用户`},{default:s(()=>[p(n(Y(U.value?.IsSuperuser)),1)]),_:1}),c(_,{label:`创建时间`},{default:s(()=>[p(n(Z(U.value?.UserCreateTime)),1)]),_:1}),c(_,{label:`最后登录`},{default:s(()=>[p(n(Z(U.value?.UserLastLoginDate)),1)]),_:1})]),_:1}),c(L,{title:`双因素认证 (2FA)`,columns:2},{default:s(()=>[c(_,{label:`2FA 状态`},{default:s(()=>[W.value?(h(),i(v,{key:0,type:`success`,size:`small`},{default:s(()=>[...t[3]||=[p(`已加载`,-1)]]),_:1})):(h(),i(v,{key:1,type:`info`,size:`small`},{default:s(()=>[...t[4]||=[p(`未启用 / 未加载`,-1)]]),_:1}))]),_:1}),c(_,{label:`Line truncated
-1
View File
@@ -1 +0,0 @@
import{$r as e,Ca as t,Qr as n,Ur as r,Wr as i,_ as a,_i as o,ba as s,h as c,qr as l}from"./useApi-CROJJdhE-DTiQDIFh.js";import{a as u}from"./serverScope-CLCA_jyd.js";import{i as d}from"./router-Bz7E4dLH.js";import{t as f}from"./AdminBadge-DWq3-CmW.js";import{t as p}from"./CrudTable-0btzlQyb.js";var m={class:`user-page`},h=a(e({__name:`Users`,setup(e){let a=d(),h=c();u(`用户管理`);let g=r(()=>a.isAdmin?`admin`:`member`),_=r(()=>{switch(g.value){case`admin`:return`管理员视图:可查看和管理全公司用户,含跨公司特权模式。`;default:return`普通组员视图:仅可查看和编辑自己的资料,无法查看他人数据。`}}),v=r(()=>`user-scope-banner ${g.value}`),y=r(()=>g.value===`member`);function b(e){h.push({path:`/system/user-detail`,query:{UserUUID:e.UserUUID||``}})}return(e,r)=>(o(),l(`div`,m,[n(f),i(`div`,{class:s(v.value)},[i(`i`,{class:s([`fas`,y.value?`fa-user`:`fa-shield-alt`])},null,2),i(`span`,null,t(_.value),1)],2),n(p,{table:`User`,title:`用户管理`,"pk-field":`UserUUID`,searchable:``,pageable:``,stretch:``,selectable:!y.value,"on-view":b},null,8,[`selectable`])]))}}),[[`__scopeId`,`data-v-ab31be72`]]);export{h as default};
+1
View File
@@ -0,0 +1 @@
import{Br as e,Lr as t,Nn as n,_ as r,an as i,h as a,hn as o,ln as s,mn as c,on as l}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as u}from"./serverScope-O8Rw8SFk.js";import{r as d}from"./router-CMu0lceh.js";import{t as f}from"./AdminBadge-Z72F8Boy.js";import{t as p}from"./CrudTable-B49nrpUt.js";var m={class:`user-page`},h=r(o({__name:`Users`,setup(r){let o=d(),h=a();u(`用户管理`);let g=i(()=>o.isAdmin?`admin`:`member`),_=i(()=>{switch(g.value){case`admin`:return`管理员视图:可查看和管理全公司用户,含跨公司特权模式。`;default:return`普通组员视图:仅可查看和编辑自己的资料,无法查看他人数据。`}}),v=i(()=>`user-scope-banner ${g.value}`),y=i(()=>g.value===`member`);function b(e){h.push({path:`/system/user-detail`,query:{UserUUID:e.UserUUID||``}})}return(r,i)=>(n(),s(`div`,m,[c(f),l(`div`,{class:t(v.value)},[l(`i`,{class:t([`fas`,y.value?`fa-user`:`fa-shield-alt`])},null,2),l(`span`,null,e(_.value),1)],2),c(p,{table:`User`,title:`用户管理`,"pk-field":`UserUUID`,searchable:``,pageable:``,stretch:``,selectable:!y.value,"on-view":b},null,8,[`selectable`])]))}}),[[`__scopeId`,`data-v-ab31be72`]]);export{h as default};
@@ -0,0 +1 @@
import{Nn as e,_ as t,h as n,hn as r,ln as i,mn as a}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as o}from"./serverScope-O8Rw8SFk.js";import{t as s}from"./CrudTable-B49nrpUt.js";var c={class:`workgroup-page`},l=t(r({__name:`Workgroup`,setup(t){o(`工作组管理`);let r=n();function l(e){r.push({path:`/company/workgroup-detail`,query:{WorkgroupUUID:e.WorkgroupUUID||``}})}return(t,n)=>(e(),i(`div`,c,[a(s,{table:`Workgroup`,title:`工作组管理`,"pk-field":`WorkgroupUUID`,searchable:``,pageable:``,stretch:``,selectable:``,"on-view":l})]))}}),[[`__scopeId`,`data-v-5b07f6a7`]]);export{l as default};
@@ -1 +0,0 @@
import{$r as e,Qr as t,_ as n,_i as r,h as i,qr as a}from"./useApi-CROJJdhE-DTiQDIFh.js";import{a as o}from"./serverScope-CLCA_jyd.js";import{t as s}from"./CrudTable-0btzlQyb.js";var c={class:`workgroup-page`},l=n(e({__name:`Workgroup`,setup(e){o(`工作组管理`);let n=i();function l(e){n.push({path:`/company/workgroup-detail`,query:{WorkgroupUUID:e.WorkgroupUUID||``}})}return(e,n)=>(r(),a(`div`,c,[t(s,{table:`Workgroup`,title:`工作组管理`,"pk-field":`WorkgroupUUID`,searchable:``,pageable:``,stretch:``,selectable:``,"on-view":l})]))}}),[[`__scopeId`,`data-v-5b07f6a7`]]);export{l as default};
@@ -1 +0,0 @@
import{$r as e,Bi as t,Ca as n,D as r,Gr as i,Hi as a,Kr as o,Mi as s,Qr as c,Rr as l,Ur as u,Xi as d,Zr as f,_i as p,h as m,m as h,mi as g,qr as _,xi as v,yi as y}from"./useApi-CROJJdhE-DTiQDIFh.js";import{a as b,o as x,u as S}from"./serverScope-CLCA_jyd.js";import{t as C}from"./date-picker-DUqMIidt.js";import{n as w}from"./descriptions-DdoyLmWE.js";import{r as T,t as E}from"./select-VtLnfNTa.js";import{n as D,t as O}from"./form-DkCs-bRK.js";import{t as k}from"./button-dPBZLBL0.js";import{t as A}from"./card-CKxtkBHA.js";import{t as j}from"./dialog-2NPB22v1.js";import{t as M}from"./input-number-BYrgUFpo.js";import{t as N}from"./switch-TyRYNjQq.js";/* empty css */import"./css-DsD2Typt.js";import"./css-CttyGzET.js";import"./css-D-a1H3t1.js";import"./css-49fsIjk3.js";import"./css-DmmbJMxg.js";import"./css-CysIl0tz.js";import"./css-w8-s2aei.js";import"./css-DMOjom7l.js";import"./css-Dmy6QwIc.js";import"./css-BLJI5-W_.js";import{n as P,t as F}from"./CrudTable-0btzlQyb.js";import"./css-ByqxgOA-.js";import{t as I}from"./form-DjuqPK5m.js";import{t as L}from"./DetailPage-D_nlVGtk.js";import{t as R}from"./InfoGrid-BuM8q62h.js";import{t as z}from"./useResolveUUIDs-DMRvDAUD.js";var B=`WorkgroupUUID`,V=e({__name:`WorkgroupDetail`,setup(e){let V=h(),H=m(),{resolveUUIDs:U}=z(),W=V.query.WorkgroupUUID||``,G=a(!1),K=a(null),q=a(``),J=a(!1),Y=a(!1),X=a([]),Z=t({}),Q=u(()=>K.value?.WorkgroupName||`工作组详情`);async function $(){if(!W){x.warning(`缺少 WorkgroupUUID 参数,无法加载工作组详情`);return}G.value=!0;try{let e=await I.list(`Workgroup`,{[B]:W,pageSize:1}),t=Array.isArray(e)?e:e?.list||[],n=t.find(e=>e[B]===W)||t[0];if(!n){x.error(`未找到工作组数据`);return}K.value=n,b(n.WorkgroupName||`工作组详情`),await ee(n.CompanyUUID)}finally{G.value=!1}}async function ee(e){if(!e){q.value=``;return}try{let t=await U({company:{table:`Company`,uuids:[e]}});q.value=t.company?.[e]||e}catch{q.value=e}}async function te(){try{X.value=await I.getColumns(`Workgroup`)}catch{}}let ne=u(()=>X.value.filter(e=>e.editable!==!1&&!e.hideInForm&&e.type!==`hidden`&&e.type!==`divider`&&e.type!==`html`&&e.field!==B));function re(){K.value&&(Object.keys(Z).forEach(e=>delete Z[e]),Object.assign(Z,K.value),J.value=!0)}async function ie(){Y.value=!0;try{await I.update(`Workgroup`,Z[B],Z),x.success(`保存成功`),J.value=!1,await $()}finally{Y.value=!1}}function ae(e){H.push({path:`/system/role-detail`,query:{RoleUUID:e.RoleUUID||``}})}return g(async()=>{await Promise.all([$(),te()])}),(e,t)=>{let a=v(`Edit`),u=r,m=k,h=w,g=A,b=S,x=M,I=E,z=T,B=C,V=N,H=D,U=O,X=j;return p(),i(L,{title:Q.value,loading:G.value},{actions:s(()=>[c(m,{type:`primary`,onClick:re},{default:s(()=>[c(u,null,{default:s(()=>[c(a)]),_:1}),t[2]||=f(`编辑 `,-1)]),_:1})]),default:s(()=>[c(R,{title:`基本信息`,columns:2},{default:s(()=>[c(h,{label:`工作组名称`},{default:s(()=>[f(n(K.value?.WorkgroupName||`-`),1)]),_:1}),c(h,{label:`英文名称`},{default:s(()=>[f(n(K.value?.WorkgroupEnglishName||`-`),1)]),_:1}),c(h,{label:`所属公司`},{default:s(()=>[f(n(q.value||K.value?.CompanyUUID||`-`),1)]),_:1}),c(h,{label:`工作组介绍`},{default:s(()=>[f(n(K.value?.WorkgroupIntroduction||`-`),1)]),_:1})]),_:1}),c(g,{shadow:`never`},{header:s(()=>[...t[3]||=[f(`工作组角色`,-1)]]),default:s(()=>[d(W)?(p(),i(F,{key:0,table:`WorkgroupRole`,title:`工作组角色`,query:{WorkgroupUUID:d(W)},"pk-field":`WorkgroupRoleUUID`,selectable:``,pageable:``,"on-view":ae},null,8,[`query`])):o(``,!0)]),_:1}),c(X,{modelValue:J.value,"onUpdate:modelValue":t[1]||=e=>J.value=e,title:`编辑工作组`,width:`600px`,"destroy-on-close":``},{footer:s(()=>[c(m,{onClick:t[0]||=e=>J.value=!1},{default:s(()=>[...t[4]||=[f(`取消`,-1)]]),_:1}),c(m,{type:`primary`,loading:Y.value,onClick:ie},{default:s(()=>[...t[5]||=[f(`保存`,-1)]]),_:1},8,[`loading`])]),default:s(()=>[c(U,{model:Z,"label-width":`120px`,"label-position":`right`},{default:s(()=>[(p(!0),_(l,null,y(ne.value,e=>(p(),i(H,{key:e.field,label:e.title,required:e.required},{default:s(()=>[e.type===`entityPicker`&&e.entityPicker?(p(),i(P,{key:0,modelValue:Z[e.field],"onUpdate:modelValue":t=>Z[e.field]=t,config:e.entityPicker,"existing-label":Z[e.field+`_label`],placeholder:e.placeholder,disabled:e.disabled,"onUpdate:label":t=>Z[e.field+`_label`]=t},null,8,[`modelValue`,`onUpdate:modelValue`,`config`,`existing-label`,`placeholder`,`disabled`,`onUpdate:label`])):!e.type||e.type===`text`||e.type===`string`?(p(),i(b,{key:1,modelValue:Z[e.field],"onUpdate:modelValue":t=>Z[e.field]=t,placeholder:e.placeholder,maxlength:e.maxLength,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`,`maxlength`,`disabled`])):e.type===`textarea`?(p(),i(b,{key:2,modelValue:Z[e.field],"onUpdate:modelValue":t=>Z[e.field]=t,type:`textarea`,rows:e.rows||3,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`rows`,`disabled`])):e.type===`number`?(p(),i(x,{key:3,modelValue:Z[e.field],"onUpdate:modelVLine truncated
@@ -0,0 +1 @@
import{An as e,Br as t,Fn as n,Jn as r,Ln as i,Nn as a,an as o,cn as s,en as c,h as l,hn as u,ir as d,ln as f,m as p,mn as m,nr as h,pn as g,pr as _,sn as v}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as y,o as b,u as x}from"./serverScope-O8Rw8SFk.js";import{t as S}from"./date-picker-CM_15T0u.js";import{u as C}from"./use-global-config-D-dPcPvU.js";import{n as w}from"./descriptions-Cq_aE9sg.js";import{r as T,t as E}from"./select-BGsfCDCJ.js";import{n as D,t as O}from"./form-F--u6XQJ.js";import{t as k}from"./button-CPx9BSuo.js";import{t as A}from"./card-Dj_UeWcA.js";import{t as j}from"./dialog-_5VhSQg5.js";import{t as M}from"./input-number-CiNOxXL6.js";import{t as N}from"./switch-7puThziV.js";/* empty css */import"./css-DsD2Typt.js";import"./css-CttyGzET.js";import"./css-D-a1H3t1.js";import"./css-49fsIjk3.js";import"./css-DmmbJMxg.js";import"./css-CysIl0tz.js";import"./css-w8-s2aei.js";import"./css-DMOjom7l.js";import"./css-Dmy6QwIc.js";import"./css-BLJI5-W_.js";import{n as P,t as F}from"./CrudTable-B49nrpUt.js";import"./css-ByqxgOA-.js";import{t as I}from"./form-B2Pzr8Vf.js";import{t as L}from"./DetailPage-m11wfvkM.js";import{t as R}from"./InfoGrid-C1it9Z2Y.js";import{t as z}from"./useResolveUUIDs-ipmPZLo4.js";var B=`WorkgroupUUID`,V=u({__name:`WorkgroupDetail`,setup(u){let V=p(),H=l(),{resolveUUIDs:U}=z(),W=V.query.WorkgroupUUID||``,G=d(!1),K=d(null),q=d(``),J=d(!1),Y=d(!1),X=d([]),Z=h({}),Q=o(()=>K.value?.WorkgroupName||`工作组详情`);async function $(){if(!W){b.warning(`缺少 WorkgroupUUID 参数,无法加载工作组详情`);return}G.value=!0;try{let e=await I.list(`Workgroup`,{[B]:W,pageSize:1}),t=Array.isArray(e)?e:e?.list||[],n=t.find(e=>e[B]===W)||t[0];if(!n){b.error(`未找到工作组数据`);return}K.value=n,y(n.WorkgroupName||`工作组详情`),await ee(n.CompanyUUID)}finally{G.value=!1}}async function ee(e){if(!e){q.value=``;return}try{let t=await U({company:{table:`Company`,uuids:[e]}});q.value=t.company?.[e]||e}catch{q.value=e}}async function te(){try{X.value=await I.getColumns(`Workgroup`)}catch{}}let ne=o(()=>X.value.filter(e=>e.editable!==!1&&!e.hideInForm&&e.type!==`hidden`&&e.type!==`divider`&&e.type!==`html`&&e.field!==B));function re(){K.value&&(Object.keys(Z).forEach(e=>delete Z[e]),Object.assign(Z,K.value),J.value=!0)}async function ie(){Y.value=!0;try{await I.update(`Workgroup`,Z[B],Z),b.success(`保存成功`),J.value=!1,await $()}finally{Y.value=!1}}function ae(e){H.push({path:`/system/role-detail`,query:{RoleUUID:e.RoleUUID||``}})}return e(async()=>{await Promise.all([$(),te()])}),(e,o)=>{let l=i(`Edit`),u=C,d=k,p=w,h=A,y=x,b=M,I=E,z=T,B=S,V=N,H=D,U=O,X=j;return a(),v(L,{title:Q.value,loading:G.value},{actions:r(()=>[m(d,{type:`primary`,onClick:re},{default:r(()=>[m(u,null,{default:r(()=>[m(l)]),_:1}),o[2]||=g(`编辑 `,-1)]),_:1})]),default:r(()=>[m(R,{title:`基本信息`,columns:2},{default:r(()=>[m(p,{label:`工作组名称`},{default:r(()=>[g(t(K.value?.WorkgroupName||`-`),1)]),_:1}),m(p,{label:`英文名称`},{default:r(()=>[g(t(K.value?.WorkgroupEnglishName||`-`),1)]),_:1}),m(p,{label:`所属公司`},{default:r(()=>[g(t(q.value||K.value?.CompanyUUID||`-`),1)]),_:1}),m(p,{label:`工作组介绍`},{default:r(()=>[g(t(K.value?.WorkgroupIntroduction||`-`),1)]),_:1})]),_:1}),m(h,{shadow:`never`},{header:r(()=>[...o[3]||=[g(`工作组角色`,-1)]]),default:r(()=>[_(W)?(a(),v(F,{key:0,table:`WorkgroupRole`,title:`工作组角色`,query:{WorkgroupUUID:_(W)},"pk-field":`WorkgroupRoleUUID`,selectable:``,pageable:``,"on-view":ae},null,8,[`query`])):s(``,!0)]),_:1}),m(X,{modelValue:J.value,"onUpdate:modelValue":o[1]||=e=>J.value=e,title:`编辑工作组`,width:`600px`,"destroy-on-close":``},{footer:r(()=>[m(d,{onClick:o[0]||=e=>J.value=!1},{default:r(()=>[...o[4]||=[g(`取消`,-1)]]),_:1}),m(d,{type:`primary`,loading:Y.value,onClick:ie},{default:r(()=>[...o[5]||=[g(`保存`,-1)]]),_:1},8,[`loading`])]),default:r(()=>[m(U,{model:Z,"label-width":`120px`,"label-position":`right`},{default:r(()=>[(a(!0),f(c,null,n(ne.value,e=>(a(),v(H,{key:e.field,label:e.title,required:e.required},{default:r(()=>[e.type===`entityPicker`&&e.entityPicker?(a(),v(P,{key:0,modelValue:Z[e.field],"onUpdate:modelValue":t=>Z[e.field]=t,config:e.entityPicker,"existing-label":Z[e.field+`_label`],placeholder:e.placeholder,disabled:e.disabled,"onUpdate:label":t=>Z[e.field+`_label`]=t},null,8,[`modelValue`,`onUpdate:modelValue`,`config`,`existing-label`,`placeholder`,`disabled`,`onUpdate:label`])):!e.type||e.type===`text`||e.type===`string`?(a(),v(y,{key:1,modelValue:Z[e.field],"onUpdate:modelValue":t=>Z[e.field]=t,placeholder:e.placeholder,maxlength:e.maxLength,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`,`maxlength`,`disabled`])):e.type===`textarea`?(a(),v(y,{key:2,modelValue:Z[e.field],"onUpdate:modelValue":t=>Z[e.field]=t,type:`textarea`,rows:e.rows||3,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`rows`,`disabled`])):e.type===`number`?(a(),v(b,Line truncated
-1
View File
@@ -1 +0,0 @@
import{$r as e,A as t,Ca as n,Ci as r,D as i,Gr as a,Hi as o,Kr as s,Mi as c,Mn as l,Ni as u,Oi as d,On as f,Qr as p,Rr as m,Ur as h,Ut as g,Wr as _,Xi as v,Zr as y,_i as b,ba as x,bi as S,jt as C,k as w,qr as T}from"./useApi-CROJJdhE-DTiQDIFh.js";import{gt as E,lt as D}from"./serverScope-CLCA_jyd.js";import{r as O,t as k}from"./vnode-D_nuTNK7.js";var A=f({title:{type:String,default:``},description:{type:String,default:``},type:{type:String,values:l(t),default:`info`},closable:{type:Boolean,default:!0},closeText:{type:String,default:``},showIcon:Boolean,center:Boolean,effect:{type:String,values:[`light`,`dark`],default:`light`}}),j=C(e({name:`ElAlert`,__name:`alert`,props:A,emits:{close:e=>e instanceof MouseEvent},setup(e,{emit:l}){let{Close:f}=w,C=e,A=l,j=d(),M=g(`alert`),N=o(!0),P=h(()=>t[C.type]),F=h(()=>{if(C.description)return!0;let e=j.default?.();return e?k(e).some(e=>!O(e)):!1}),I=e=>{N.value=!1,A(`close`,e)};return(t,o)=>(b(),a(D,{name:v(M).b(`fade`),persisted:``},{default:c(()=>[u(_(`div`,{class:x([v(M).b(),v(M).m(e.type),v(M).is(`center`,e.center),v(M).is(e.effect)]),role:`alert`},[e.showIcon&&(t.$slots.icon||P.value)?(b(),a(v(i),{key:0,class:x([v(M).e(`icon`),v(M).is(`big`,F.value)])},{default:c(()=>[S(t.$slots,`icon`,{},()=>[(b(),a(r(P.value)))])]),_:3},8,[`class`])):s(`v-if`,!0),_(`div`,{class:x(v(M).e(`content`))},[e.title||t.$slots.title?(b(),T(`span`,{key:0,class:x([v(M).e(`title`),{"with-description":F.value}])},[S(t.$slots,`title`,{},()=>[y(n(e.title),1)])],2)):s(`v-if`,!0),F.value?(b(),T(`p`,{key:1,class:x(v(M).e(`description`))},[S(t.$slots,`default`,{},()=>[y(n(e.description),1)])],2)):s(`v-if`,!0),e.closable?(b(),T(m,{key:2},[e.closeText?(b(),T(`div`,{key:0,class:x([v(M).e(`close-btn`),v(M).is(`customed`)]),onClick:I},n(e.closeText),3)):(b(),a(v(i),{key:1,class:x(v(M).e(`close-btn`)),onClick:I},{default:c(()=>[p(v(f))]),_:1},8,[`class`]))],64)):s(`v-if`,!0)],2)],2),[[E,N.value]])]),_:3},8,[`name`]))}}));export{j as t};
+1
View File
@@ -0,0 +1 @@
import{Br as e,Ct as t,In as n,Jn as r,Lr as i,Nn as a,Tt as o,Wn as s,Yn as c,_t as l,an as u,cn as d,en as f,hn as p,ir as m,ln as h,mn as g,on as _,pn as v,pr as y,sn as b,zn as x}from"./useApi-CROJJdhE-mMpa5RAf.js";import{c as S,t as C}from"./runtime-dom.esm-bundler-YxjRGSuG.js";import{ct as w,f as T,p as E,u as D}from"./use-global-config-D-dPcPvU.js";import{r as O,t as k}from"./vnode-SMLE-MKY.js";var A=o({title:{type:String,default:``},description:{type:String,default:``},type:{type:String,values:w(E),default:`info`},closable:{type:Boolean,default:!0},closeText:{type:String,default:``},showIcon:Boolean,center:Boolean,effect:{type:String,values:[`light`,`dark`],default:`light`}}),j=l(p({name:`ElAlert`,__name:`alert`,props:A,emits:{close:e=>e instanceof MouseEvent},setup(o,{emit:l}){let{Close:p}=T,w=o,A=l,j=s(),M=t(`alert`),N=m(!0),P=u(()=>E[w.type]),F=u(()=>{if(w.description)return!0;let e=j.default?.();return e?k(e).some(e=>!O(e)):!1}),I=e=>{N.value=!1,A(`close`,e)};return(t,s)=>(a(),b(C,{name:y(M).b(`fade`),persisted:``},{default:r(()=>[c(_(`div`,{class:i([y(M).b(),y(M).m(o.type),y(M).is(`center`,o.center),y(M).is(o.effect)]),role:`alert`},[o.showIcon&&(t.$slots.icon||P.value)?(a(),b(y(D),{key:0,class:i([y(M).e(`icon`),y(M).is(`big`,F.value)])},{default:r(()=>[n(t.$slots,`icon`,{},()=>[(a(),b(x(P.value)))])]),_:3},8,[`class`])):d(`v-if`,!0),_(`div`,{class:i(y(M).e(`content`))},[o.title||t.$slots.title?(a(),h(`span`,{key:0,class:i([y(M).e(`title`),{"with-description":F.value}])},[n(t.$slots,`title`,{},()=>[v(e(o.title),1)])],2)):d(`v-if`,!0),F.value?(a(),h(`p`,{key:1,class:i(y(M).e(`description`))},[n(t.$slots,`default`,{},()=>[v(e(o.description),1)])],2)):d(`v-if`,!0),o.closable?(a(),h(f,{key:2},[o.closeText?(a(),h(`div`,{key:0,class:i([y(M).e(`close-btn`),y(M).is(`customed`)]),onClick:I},e(o.closeText),3)):(a(),b(y(D),{key:1,class:i(y(M).e(`close-btn`)),onClick:I},{default:r(()=>[g(y(p))]),_:1},8,[`class`]))],64)):d(`v-if`,!0)],2)],2),[[S,N.value]])]),_:3},8,[`name`]))}}));export{j as t};
@@ -1 +1 @@
import{Hi as e}from"./useApi-CROJJdhE-DTiQDIFh.js";import{m as t}from"./router-Bz7E4dLH.js";var n=t(`app`,()=>{let t=e(!1),n=e(`light`),r=e(`zh-CN`);function i(){t.value=!t.value}function a(e){n.value=e,document.documentElement.classList.toggle(`dark`,e===`dark`),localStorage.setItem(`gerp-theme`,e)}function o(){let e=localStorage.getItem(`gerp-theme`);e&&a(e)}function s(){a(n.value===`light`?`dark`:`light`)}return{sidebarCollapsed:t,theme:n,locale:r,toggleSidebar:i,setTheme:a,initTheme:o,toggleTheme:s}});export{n as t};
import{ir as e}from"./useApi-CROJJdhE-mMpa5RAf.js";import{h as t}from"./router-CMu0lceh.js";var n=t(`app`,()=>{let t=e(!1),n=e(`light`),r=e(`zh-CN`);function i(){t.value=!t.value}function a(e){n.value=e,document.documentElement.classList.toggle(`dark`,e===`dark`),localStorage.setItem(`gerp-theme`,e)}function o(){let e=localStorage.getItem(`gerp-theme`);e&&a(e)}function s(){a(n.value===`light`?`dark`:`light`)}return{sidebarCollapsed:t,theme:n,locale:r,toggleSidebar:i,setTheme:a,initTheme:o,toggleTheme:s}});export{n as t};
+1
View File
@@ -0,0 +1 @@
import{At as e,Ct as t,Et as n,In as r,Jn as i,Kn as a,Lr as o,Mr as s,Nn as c,Pn as l,Sn as u,Tt as d,_t as f,an as p,bt as m,hn as h,in as g,ir as _,ln as v,lr as y,mn as b,nr as x,pn as S,pr as C,sn as w,xn as T,zn as E,zr as D}from"./useApi-CROJJdhE-mMpa5RAf.js";import{Kt as O,T as k,h as A,u as j}from"./use-global-config-D-dPcPvU.js";import{a as M,m as N,s as P}from"./click-outside-bcMsT2om.js";import{t as F}from"./vnode-SMLE-MKY.js";var I=d({size:{type:[Number,String],values:O,validator:t=>e(t)},shape:{type:String,values:[`circle`,`square`]},icon:{type:A},src:{type:String,default:``},alt:String,srcSet:String,fit:{type:n(String),default:`cover`}}),L={error:e=>e instanceof Event},R=Symbol(`avatarGroupContextKey`),z={size:{type:n([Number,String]),values:O,validator:t=>e(t)},shape:{type:n(String),values:[`circle`,`square`]},collapseAvatars:Boolean,collapseAvatarsTooltip:Boolean,maxCollapseAvatars:{type:Number,default:1},effect:{type:n(String),default:`light`},placement:{type:n(String),values:N,default:`top`},popperClass:P.popperClass,popperStyle:P.popperStyle,collapseClass:String,collapseStyle:{type:n([String,Array,Object,Boolean]),default:void 0}},B=[`src`,`alt`,`srcset`],V=h({name:`ElAvatar`,__name:`avatar`,props:I,emits:L,setup(n,{emit:l}){let u=n,d=l,f=T(R,void 0),m=t(`avatar`),h=_(!1),g=p(()=>u.size??f?.size),y=p(()=>u.shape??f?.shape??`circle`),b=p(()=>{let{icon:e}=u,t=[m.b()];return s(g.value)&&t.push(m.m(g.value)),e&&t.push(m.m(`icon`)),y.value&&t.push(m.m(y.value)),t}),x=p(()=>e(g.value)?m.cssVarBlock({size:k(g.value)}):void 0),S=p(()=>({objectFit:u.fit}));a(()=>[u.src,u.srcSet],()=>h.value=!1);function O(e){h.value=!0,d(`error`,e)}return(e,t)=>(c(),v(`span`,{class:o(b.value),style:D(x.value)},[(n.src||n.srcSet)&&!h.value?(c(),v(`img`,{key:0,src:n.src,alt:n.alt,srcset:n.srcSet,style:D(S.value),onError:O},null,44,B)):n.icon?(c(),w(C(j),{key:1},{default:i(()=>[(c(),w(E(n.icon)))]),_:1})):r(e.$slots,`default`,{key:2})],6))}}),H=h({name:`ElAvatarGroup`,props:z,setup(e,{slots:n}){let r=t(`avatar-group`);return l(R,x({size:y(e,`size`),shape:y(e,`shape`)})),()=>{let t=F(n.default?.()??[]),i=t;if(e.collapseAvatars&&t.length>e.maxCollapseAvatars){i=t.slice(0,e.maxCollapseAvatars);let n=t.slice(e.maxCollapseAvatars);i.push(b(M,{popperClass:e.popperClass,popperStyle:e.popperStyle,placement:e.placement,effect:e.effect,disabled:!e.collapseAvatarsTooltip},{default:()=>b(V,{size:e.size,shape:e.shape,class:e.collapseClass,style:e.collapseStyle},{default:()=>[S(`+ `),n.length]}),content:()=>b(`div`,{class:r.e(`collapse-avatars`)},[n.map((e,t)=>u(e)?g(e,{key:e.key??t}):e)])}))}return b(`div`,{class:r.b()},[i])}}}),U=f(V,{AvatarGroup:H}),W=m(H);export{W as n,U as t};
-1
View File
@@ -1 +0,0 @@
import{$r as e,Ai as t,Bi as n,Ci as r,D as i,Gr as a,Hi as o,Hr as s,In as c,Ki as l,Kt as u,M as d,Mi as f,On as p,Pr as m,Pt as h,Qr as g,Sa as _,Ur as v,Ut as y,Xi as b,Zr as x,_i as S,ai as C,ba as w,bi as T,ha as E,jt as D,kn as O,oi as k,qr as A,vi as j}from"./useApi-CROJJdhE-DTiQDIFh.js";import{a as M,m as N,s as P}from"./click-outside-CpAqd89y.js";import{t as F}from"./vnode-D_nuTNK7.js";var I=p({size:{type:[Number,String],values:m,validator:e=>c(e)},shape:{type:String,values:[`circle`,`square`]},icon:{type:d},src:{type:String,default:``},alt:String,srcSet:String,fit:{type:O(String),default:`cover`}}),L={error:e=>e instanceof Event},R=Symbol(`avatarGroupContextKey`),z={size:{type:O([Number,String]),values:m,validator:e=>c(e)},shape:{type:O(String),values:[`circle`,`square`]},collapseAvatars:Boolean,collapseAvatarsTooltip:Boolean,maxCollapseAvatars:{type:Number,default:1},effect:{type:O(String),default:`light`},placement:{type:O(String),values:N,default:`top`},popperClass:P.popperClass,popperStyle:P.popperStyle,collapseClass:String,collapseStyle:{type:O([String,Array,Object,Boolean]),default:void 0}},B=[`src`,`alt`,`srcset`],V=e({name:`ElAvatar`,__name:`avatar`,props:I,emits:L,setup(e,{emit:n}){let s=e,l=n,d=C(R,void 0),p=y(`avatar`),m=o(!1),h=v(()=>s.size??d?.size),g=v(()=>s.shape??d?.shape??`circle`),x=v(()=>{let{icon:e}=s,t=[p.b()];return E(h.value)&&t.push(p.m(h.value)),e&&t.push(p.m(`icon`)),g.value&&t.push(p.m(g.value)),t}),D=v(()=>c(h.value)?p.cssVarBlock({size:u(h.value)}):void 0),O=v(()=>({objectFit:s.fit}));t(()=>[s.src,s.srcSet],()=>m.value=!1);function k(e){m.value=!0,l(`error`,e)}return(t,n)=>(S(),A(`span`,{class:w(x.value),style:_(D.value)},[(e.src||e.srcSet)&&!m.value?(S(),A(`img`,{key:0,src:e.src,alt:e.alt,srcset:e.srcSet,style:_(O.value),onError:k},null,44,B)):e.icon?(S(),a(b(i),{key:1},{default:f(()=>[(S(),a(r(e.icon)))]),_:1})):T(t.$slots,`default`,{key:2})],6))}}),H=e({name:`ElAvatarGroup`,props:z,setup(e,{slots:t}){let r=y(`avatar-group`);return j(R,n({size:l(e,`size`),shape:l(e,`shape`)})),()=>{let n=F(t.default?.()??[]),i=n;if(e.collapseAvatars&&n.length>e.maxCollapseAvatars){i=n.slice(0,e.maxCollapseAvatars);let t=n.slice(e.maxCollapseAvatars);i.push(g(M,{popperClass:e.popperClass,popperStyle:e.popperStyle,placement:e.placement,effect:e.effect,disabled:!e.collapseAvatarsTooltip},{default:()=>g(V,{size:e.size,shape:e.shape,class:e.collapseClass,style:e.collapseStyle},{default:()=>[x(`+ `),t.length]}),content:()=>g(`div`,{class:r.e(`collapse-avatars`)},[t.map((e,t)=>k(e)?s(e,{key:e.key??t}):e)])}))}return g(`div`,{class:r.b()},[i])}}}),U=D(V,{AvatarGroup:H}),W=h(H);export{W as n,U as t};
+1
View File
@@ -0,0 +1 @@
import{Cn as e,Ct as t,Et as n,In as r,Jn as i,Lr as a,Nn as o,Pn as s,Tt as c,Wn as l,_t as u,an as d,bt as f,cn as p,en as m,hn as h,ir as g,ln as _,lr as v,nn as y,nr as b,pr as x,q as S,sn as C,xn as w,zn as T}from"./useApi-CROJJdhE-mMpa5RAf.js";import{R as E,h as D,i as O,o as k,r as A,s as j,u as M,y as ee}from"./use-global-config-D-dPcPvU.js";var N=[`default`,`primary`,`success`,`warning`,`info`,`danger`,`text`,``],P=c({size:ee,disabled:{type:Boolean,default:void 0},type:{type:String,values:N,default:``},icon:{type:D},nativeType:{type:String,values:[`button`,`submit`,`reset`],default:`button`},loading:Boolean,loadingIcon:{type:D,default:()=>S},plain:{type:Boolean,default:void 0},text:{type:Boolean,default:void 0},link:Boolean,bg:Boolean,autofocus:Boolean,round:{type:Boolean,default:void 0},circle:Boolean,dashed:{type:Boolean,default:void 0},color:String,dark:Boolean,autoInsertSpace:{type:Boolean,default:void 0},tag:{type:n([String,Object]),default:`button`}}),te={click:e=>e instanceof MouseEvent},F=Symbol(`buttonGroupContextKey`),ne=(e,t)=>{E({from:`type.text`,replacement:`link`,version:`3.0.0`,scope:`props`,ref:`https://element-plus.org/en-US/component/button.html#button-attributes`},d(()=>e.type===`text`));let n=w(F,void 0),r=A(`button`),{form:i}=O(),a=j(d(()=>n?.size)),o=k(),s=g(),c=l(),u=d(()=>e.type||n?.type||r.value?.type||``),f=d(()=>e.autoInsertSpace??r.value?.autoInsertSpace??!1),p=d(()=>e.plain??r.value?.plain??!1),m=d(()=>e.round??r.value?.round??!1),h=d(()=>e.text??r.value?.text??!1),_=d(()=>e.dashed??r.value?.dashed??!1);return{_disabled:o,_size:a,_type:u,_ref:s,_props:d(()=>e.tag===`button`?{ariaDisabled:o.value||e.loading,disabled:o.value||e.loading,autofocus:e.autofocus,type:e.nativeType}:{}),_plain:p,_round:m,_text:h,_dashed:_,shouldAddSpace:d(()=>{let e=c.default?.();if(f.value&&e?.length===1){let t=e[0];if(t?.type===y){let e=t.children;return/^\p{Unified_Ideograph}{2}$/u.test(e.trim())}}return!1}),handleClick:n=>{if(o.value||e.loading){n.stopPropagation();return}e.nativeType===`reset`&&i?.resetFields(),t(`click`,n)}}};function I(e,t){re(e)&&(e=`100%`);let n=ie(e);return e=t===360?e:Math.min(t,Math.max(0,parseFloat(e))),n&&(e=parseInt(String(e*t),10)/100),Math.abs(e-t)<1e-6?1:(e=t===360?(e<0?e%t+t:e%t)/parseFloat(String(t)):e%t/parseFloat(String(t)),e)}function L(e){return Math.min(1,Math.max(0,e))}function re(e){return typeof e==`string`&&e.indexOf(`.`)!==-1&&parseFloat(e)===1}function ie(e){return typeof e==`string`&&e.indexOf(`%`)!==-1}function R(e){return e=parseFloat(e),(isNaN(e)||e<0||e>1)&&(e=1),e}function z(e){return Number(e)<=1?`${Number(e)*100}%`:e}function B(e){return e.length===1?`0`+e:String(e)}function ae(e,t,n){return{r:I(e,255)*255,g:I(t,255)*255,b:I(n,255)*255}}function V(e,t,n){e=I(e,255),t=I(t,255),n=I(n,255);let r=Math.max(e,t,n),i=Math.min(e,t,n),a=0,o=0,s=(r+i)/2;if(r===i)o=0,a=0;else{let c=r-i;switch(o=s>.5?c/(2-r-i):c/(r+i),r){case e:a=(t-n)/c+(t<n?6:0);break;case t:a=(n-e)/c+2;break;case n:a=(e-t)/c+4}a/=6}return{h:a,s:o,l:s}}function H(e,t,n){return n<0&&(n+=1),n>1&&--n,n<1/6?e+(t-e)*(6*n):n<1/2?t:n<2/3?e+(t-e)*(2/3-n)*6:e}function oe(e,t,n){let r,i,a;if(e=I(e,360),t=I(t,100),n=I(n,100),t===0)i=n,a=n,r=n;else{let o=n<.5?n*(1+t):n+t-n*t,s=2*n-o;r=H(s,o,e+1/3),i=H(s,o,e),a=H(s,o,e-1/3)}return{r:r*255,g:i*255,b:a*255}}function U(e,t,n){e=I(e,255),t=I(t,255),n=I(n,255);let r=Math.max(e,t,n),i=Math.min(e,t,n),a=0,o=r,s=r-i,c=r===0?0:s/r;if(r===i)a=0;else{switch(r){case e:a=(t-n)/s+(t<n?6:0);break;case t:a=(n-e)/s+2;break;case n:a=(e-t)/s+4}a/=6}return{h:a,s:c,v:o}}function se(e,t,n){e=I(e,360)*6,t=I(t,100),n=I(n,100);let r=Math.floor(e),i=e-r,a=n*(1-t),o=n*(1-i*t),s=n*(1-(1-i)*t),c=r%6,l=[n,o,a,a,s,n][c],u=[s,n,n,o,a,a][c],d=[a,a,s,n,n,o][c];return{r:l*255,g:u*255,b:d*255}}function W(e,t,n,r){let i=[B(Math.round(e).toString(16)),B(Math.round(t).toString(16)),B(Math.round(n).toString(16))];return r&&i[0].startsWith(i[0].charAt(1))&&i[1].startsWith(i[1].charAt(1))&&i[2].startsWith(i[2].charAt(1))?i[0].charAt(0)+i[1].charAt(0)+i[2].charAt(0):i.join(``)}function ce(e,t,n,r,i){let a=[B(Math.round(e).toString(16)),B(Math.round(t).toString(16)),B(Math.round(n).toString(16)),B(ue(r))];return i&&a[0].startsWith(a[0].charAt(1))&&a[1].startsWith(a[1].charAt(1))&&a[2].startsWith(a[2].charAt(1))&&a[3].startsWith(a[3].charAt(1))?a[0].charAt(0)+a[1].charAt(0)+a[2].charAt(0)+a[3].charAt(0):a.join(``)}function le(e,t,n,r){let i=e/100,a=t/100,o=n/100,s=r/100;return{r:255*(1-i)*(1-s),g:255*(1-a)*(1-s),b:255*(1-o)*(1-s)}}function G(e,t,n){let r=1-e/255,i=1-t/255,a=1-n/255,o=Math.min(r,i,a);return o===1?(r=0,i=0,a=0):(r=(r-o)/(1-o)*100,i=(i-o)/(1-o)*100,a=(a-o)/(1-o)*100),o*=100,{c:Math.round(r),m:Math.round(i),y:Math.round(a),k:Math.round(o)}}function ue(e){return Math.round(parseFloat(e)*255).toString(16)}function K(e){return q(e)/255}function q(e){return parseInt(e,16)}function de(e){return{r:e>>16,g:(e&65280)>>8,b:e&255}}var J={aliceblue:`#f0f8ff`,antiquewhite:`#faebd7`,aqua:`Line truncated
-1
View File
@@ -1 +0,0 @@
import{$r as e,Bi as t,Br as n,C as r,Ci as i,D as a,Gr as o,Hi as s,Ki as c,Kr as l,M as u,Mi as d,Oi as f,On as p,Pt as m,Rr as h,Rt as g,Ur as _,Ut as v,Xi as y,_i as b,ai as x,an as S,b as C,ba as w,bi as T,ct as E,jt as D,kn as O,qr as k,si as ee,vi as A,w as j,x as te}from"./useApi-CROJJdhE-DTiQDIFh.js";var M=[`default`,`primary`,`success`,`warning`,`info`,`danger`,`text`,``],N=p({size:g,disabled:{type:Boolean,default:void 0},type:{type:String,values:M,default:``},icon:{type:u},nativeType:{type:String,values:[`button`,`submit`,`reset`],default:`button`},loading:Boolean,loadingIcon:{type:u,default:()=>E},plain:{type:Boolean,default:void 0},text:{type:Boolean,default:void 0},link:Boolean,bg:Boolean,autofocus:Boolean,round:{type:Boolean,default:void 0},circle:Boolean,dashed:{type:Boolean,default:void 0},color:String,dark:Boolean,autoInsertSpace:{type:Boolean,default:void 0},tag:{type:O([String,Object]),default:`button`}}),ne={click:e=>e instanceof MouseEvent},P=Symbol(`buttonGroupContextKey`),re=(e,t)=>{S({from:`type.text`,replacement:`link`,version:`3.0.0`,scope:`props`,ref:`https://element-plus.org/en-US/component/button.html#button-attributes`},_(()=>e.type===`text`));let i=x(P,void 0),a=C(`button`),{form:o}=te(),c=j(_(()=>i?.size)),l=r(),u=s(),d=f(),p=_(()=>e.type||i?.type||a.value?.type||``),m=_(()=>e.autoInsertSpace??a.value?.autoInsertSpace??!1),h=_(()=>e.plain??a.value?.plain??!1),g=_(()=>e.round??a.value?.round??!1),v=_(()=>e.text??a.value?.text??!1),y=_(()=>e.dashed??a.value?.dashed??!1);return{_disabled:l,_size:c,_type:p,_ref:u,_props:_(()=>e.tag===`button`?{ariaDisabled:l.value||e.loading,disabled:l.value||e.loading,autofocus:e.autofocus,type:e.nativeType}:{}),_plain:h,_round:g,_text:v,_dashed:y,shouldAddSpace:_(()=>{let e=d.default?.();if(m.value&&e?.length===1){let t=e[0];if(t?.type===n){let e=t.children;return/^\p{Unified_Ideograph}{2}$/u.test(e.trim())}}return!1}),handleClick:n=>{if(l.value||e.loading){n.stopPropagation();return}e.nativeType===`reset`&&o?.resetFields(),t(`click`,n)}}};function F(e,t){ie(e)&&(e=`100%`);let n=ae(e);return e=t===360?e:Math.min(t,Math.max(0,parseFloat(e))),n&&(e=parseInt(String(e*t),10)/100),Math.abs(e-t)<1e-6?1:(e=t===360?(e<0?e%t+t:e%t)/parseFloat(String(t)):e%t/parseFloat(String(t)),e)}function I(e){return Math.min(1,Math.max(0,e))}function ie(e){return typeof e==`string`&&e.indexOf(`.`)!==-1&&parseFloat(e)===1}function ae(e){return typeof e==`string`&&e.indexOf(`%`)!==-1}function L(e){return e=parseFloat(e),(isNaN(e)||e<0||e>1)&&(e=1),e}function R(e){return Number(e)<=1?`${Number(e)*100}%`:e}function z(e){return e.length===1?`0`+e:String(e)}function oe(e,t,n){return{r:F(e,255)*255,g:F(t,255)*255,b:F(n,255)*255}}function B(e,t,n){e=F(e,255),t=F(t,255),n=F(n,255);let r=Math.max(e,t,n),i=Math.min(e,t,n),a=0,o=0,s=(r+i)/2;if(r===i)o=0,a=0;else{let c=r-i;switch(o=s>.5?c/(2-r-i):c/(r+i),r){case e:a=(t-n)/c+(t<n?6:0);break;case t:a=(n-e)/c+2;break;case n:a=(e-t)/c+4}a/=6}return{h:a,s:o,l:s}}function V(e,t,n){return n<0&&(n+=1),n>1&&--n,n<1/6?e+(t-e)*(6*n):n<1/2?t:n<2/3?e+(t-e)*(2/3-n)*6:e}function se(e,t,n){let r,i,a;if(e=F(e,360),t=F(t,100),n=F(n,100),t===0)i=n,a=n,r=n;else{let o=n<.5?n*(1+t):n+t-n*t,s=2*n-o;r=V(s,o,e+1/3),i=V(s,o,e),a=V(s,o,e-1/3)}return{r:r*255,g:i*255,b:a*255}}function H(e,t,n){e=F(e,255),t=F(t,255),n=F(n,255);let r=Math.max(e,t,n),i=Math.min(e,t,n),a=0,o=r,s=r-i,c=r===0?0:s/r;if(r===i)a=0;else{switch(r){case e:a=(t-n)/s+(t<n?6:0);break;case t:a=(n-e)/s+2;break;case n:a=(e-t)/s+4}a/=6}return{h:a,s:c,v:o}}function ce(e,t,n){e=F(e,360)*6,t=F(t,100),n=F(n,100);let r=Math.floor(e),i=e-r,a=n*(1-t),o=n*(1-i*t),s=n*(1-(1-i)*t),c=r%6,l=[n,o,a,a,s,n][c],u=[s,n,n,o,a,a][c],d=[a,a,s,n,n,o][c];return{r:l*255,g:u*255,b:d*255}}function U(e,t,n,r){let i=[z(Math.round(e).toString(16)),z(Math.round(t).toString(16)),z(Math.round(n).toString(16))];return r&&i[0].startsWith(i[0].charAt(1))&&i[1].startsWith(i[1].charAt(1))&&i[2].startsWith(i[2].charAt(1))?i[0].charAt(0)+i[1].charAt(0)+i[2].charAt(0):i.join(``)}function W(e,t,n,r,i){let a=[z(Math.round(e).toString(16)),z(Math.round(t).toString(16)),z(Math.round(n).toString(16)),z(ue(r))];return i&&a[0].startsWith(a[0].charAt(1))&&a[1].startsWith(a[1].charAt(1))&&a[2].startsWith(a[2].charAt(1))&&a[3].startsWith(a[3].charAt(1))?a[0].charAt(0)+a[1].charAt(0)+a[2].charAt(0)+a[3].charAt(0):a.join(``)}function le(e,t,n,r){let i=e/100,a=t/100,o=n/100,s=r/100;return{r:255*(1-i)*(1-s),g:255*(1-a)*(1-s),b:255*(1-o)*(1-s)}}function G(e,t,n){let r=1-e/255,i=1-t/255,a=1-n/255,o=Math.min(r,i,a);return o===1?(r=0,i=0,a=0):(r=(r-o)/(1-o)*100,i=(i-o)/(1-o)*100,a=(a-o)/(1-o)*100),o*=100,{c:Math.round(r),m:Math.round(i),y:Math.round(a),k:Math.round(o)}}function ue(e){return Math.round(parseFloat(e)*255).toString(16)}function K(e){return q(e)/255}function q(e){return parseInt(e,16)}function de(e){return{r:e>>16,g:(e&65280)>>8,b:e&255}}var J={aliceblue:`#f0f8ff`,antiquewhite:`#faebd7`,aqua:`#00ffff`,aquamarine:`#7fffd4`,azure:`#f0ff Line truncated
-1
View File
@@ -1 +0,0 @@
import{$r as e,Ca as t,Kr as n,On as r,Sa as i,Ut as a,Wr as o,Xi as s,Zr as c,_i as l,b as u,ba as d,bi as f,jt as p,kn as m,qr as h}from"./useApi-CROJJdhE-DTiQDIFh.js";var g=r({header:{type:String,default:``},footer:{type:String,default:``},bodyStyle:{type:m([String,Object,Array,Boolean]),default:``},headerClass:String,bodyClass:String,footerClass:String,shadow:{type:String,values:[`always`,`hover`,`never`],default:void 0}}),_=p(e({name:`ElCard`,__name:`card`,props:g,setup(e){let r=u(`card`),p=a(`card`);return(a,u)=>(l(),h(`div`,{class:d([s(p).b(),s(p).is(`${e.shadow||s(r)?.shadow||`always`}-shadow`)])},[a.$slots.header||e.header?(l(),h(`div`,{key:0,class:d([s(p).e(`header`),e.headerClass])},[f(a.$slots,`header`,{},()=>[c(t(e.header),1)])],2)):n(`v-if`,!0),o(`div`,{class:d([s(p).e(`body`),e.bodyClass]),style:i(e.bodyStyle)},[f(a.$slots,`default`)],6),a.$slots.footer||e.footer?(l(),h(`div`,{key:1,class:d([s(p).e(`footer`),e.footerClass])},[f(a.$slots,`footer`,{},()=>[c(t(e.footer),1)])],2)):n(`v-if`,!0)],2))}}));export{_ as t};
+1
View File
@@ -0,0 +1 @@
import{Br as e,Ct as t,Et as n,In as r,Lr as i,Nn as a,Tt as o,_t as s,cn as c,hn as l,ln as u,on as d,pn as f,pr as p,zr as m}from"./useApi-CROJJdhE-mMpa5RAf.js";import{r as h}from"./use-global-config-D-dPcPvU.js";var g=o({header:{type:String,default:``},footer:{type:String,default:``},bodyStyle:{type:n([String,Object,Array,Boolean]),default:``},headerClass:String,bodyClass:String,footerClass:String,shadow:{type:String,values:[`always`,`hover`,`never`],default:void 0}}),_=s(l({name:`ElCard`,__name:`card`,props:g,setup(n){let o=h(`card`),s=t(`card`);return(t,l)=>(a(),u(`div`,{class:i([p(s).b(),p(s).is(`${n.shadow||p(o)?.shadow||`always`}-shadow`)])},[t.$slots.header||n.header?(a(),u(`div`,{key:0,class:i([p(s).e(`header`),n.headerClass])},[r(t.$slots,`header`,{},()=>[f(e(n.header),1)])],2)):c(`v-if`,!0),d(`div`,{class:i([p(s).e(`body`),n.bodyClass]),style:m(n.bodyStyle)},[r(t.$slots,`default`)],6),t.$slots.footer||n.footer?(a(),u(`div`,{key:1,class:i([p(s).e(`footer`),n.footerClass])},[r(t.$slots,`footer`,{},()=>[f(e(n.footer),1)])],2)):c(`v-if`,!0)],2))}}));export{_ as t};
@@ -0,0 +1 @@
import{Ut as e}from"./use-global-config-D-dPcPvU.js";function t(){if(!arguments.length)return[];var t=arguments[0];return e(t)?t:[t]}export{t};
@@ -1 +0,0 @@
import{Or as e}from"./useApi-CROJJdhE-DTiQDIFh.js";function t(){if(!arguments.length)return[];var t=arguments[0];return e(t)?t:[t]}export{t};
@@ -1 +0,0 @@
import{$r as e,Ai as t,C as n,Ca as r,Ci as i,Gi as a,Gr as o,Hi as s,Hn as c,In as l,Kr as u,Li as d,Ln as f,Mi as p,Ni as m,Nn as h,Oi as g,On as _,Pt as v,Rn as y,Rr as b,Rt as x,S,Sa as C,T as w,Ur as T,Ut as E,Wr as D,Xi as O,Zi as k,Zr as A,_i as j,aa as M,ai as N,an as P,ba as F,bi as I,ci as L,ei as R,ha as z,jt as ee,kn as B,la as te,qi as ne,qr as V,si as H,vi as re,w as U,x as W,yi as ie}from"./useApi-CROJJdhE-DTiQDIFh.js";import{X as ae,at as G,g as K,pt as q,st as J,vt as Y}from"./serverScope-CLCA_jyd.js";import{t as oe}from"./omit-B8KwnAH1.js";var X={modelValue:{type:[Number,String,Boolean],default:void 0},label:{type:[String,Boolean,Number,Object],default:void 0},value:{type:[String,Boolean,Number,Object],default:void 0},indeterminate:Boolean,disabled:{type:Boolean,default:void 0},checked:Boolean,name:{type:String,default:void 0},trueValue:{type:[String,Number],default:void 0},falseValue:{type:[String,Number],default:void 0},trueLabel:{type:[String,Number],default:void 0},falseLabel:{type:[String,Number],default:void 0},id:{type:String,default:void 0},border:Boolean,size:x,tabindex:[String,Number],validateEvent:{type:Boolean,default:!0},ariaLabel:String,...K([`ariaControls`])},Z={[J]:e=>z(e)||l(e)||h(e),change:e=>z(e)||l(e)||h(e)},Q=Symbol(`checkboxGroupContextKey`),se=_({modelValue:{type:B(Array),default:()=>[]},disabled:{type:Boolean,default:void 0},min:Number,max:Number,size:x,fill:String,textColor:String,tag:{type:String,default:`div`},validateEvent:{type:Boolean,default:!0},options:{type:B(Array)},props:{type:B(Object),default:()=>le},type:{type:String,values:[`checkbox`,`button`],default:`checkbox`},...K([`ariaLabel`])}),ce={[J]:e=>M(e),change:e=>M(e)},le={label:`label`,value:`value`,disabled:`disabled`},ue=({model:e,isChecked:t})=>{let r=N(Q,void 0),i=N(w,void 0),a=T(()=>{let n=r?.max?.value,i=r?.min?.value;return!y(n)&&e.value.length>=n&&!t.value||!y(i)&&e.value.length<=i&&t.value});return{isDisabled:n(T(()=>r===void 0?i?.disabled??a.value:r.disabled?.value||a.value)),isLimitDisabled:a}},de=(e,{model:n,isLimitExceeded:r,hasOwnLabel:i,isDisabled:a,isLabeledByFormItem:o})=>{let s=N(Q,void 0),{formItem:c}=W(),{emit:l}=R();function u(t){return[!0,e.trueValue,e.trueLabel].includes(t)?e.trueValue??e.trueLabel??!0:e.falseValue??e.falseLabel??!1}function d(e,t){l(G,u(e),t)}function f(e){if(r.value)return;let t=e.target;l(G,u(t.checked),e)}async function p(t){r.value||!i.value&&!a.value&&o.value&&(t.composedPath().some(e=>e.tagName===`LABEL`)||(n.value=u([!1,e.falseValue,e.falseLabel].includes(n.value)),await L(),d(n.value,t)))}let m=T(()=>s?.validateEvent||e.validateEvent);return t(()=>e.modelValue,()=>{m.value&&c?.validate(`change`).catch(k)}),{handleChange:f,onClickRoot:p}},fe=e=>{let t=s(!1),{emit:n,vnode:r}=R(),i=N(Q,void 0),a=T(()=>y(i)===!1),o=s(!1),c=T(()=>{let e=r.props??{};return`modelValue`in e||`model-value`in e}),l=T({get(){return a.value?i?.modelValue?.value:c.value?e.modelValue:t.value},set(e){a.value&&M(e)?(o.value=i?.max?.value!==void 0&&e.length>i?.max.value&&e.length>l.value.length,o.value===!1&&i?.changeEvent?.(e)):(n(J,e),t.value=e)}});return{model:l,isGroup:a,isLimitExceeded:o}},pe=(e,t,{model:n})=>{let r=N(Q,void 0),i=s(!1),o=T(()=>f(e.value)?e.label:e.value),l=T(()=>{let t=n.value;return h(t)?t:M(t)?te(o.value)?t.map(a).some(e=>c(e,o.value)):t.map(a).includes(o.value):t==null?!!t:t===e.trueValue||t===e.trueLabel});return{checkboxButtonSize:U(T(()=>r?.size?.value),{prop:!0}),isChecked:l,isFocused:i,checkboxSize:U(T(()=>r?.size?.value)),hasOwnLabel:T(()=>!!t.default||!f(o.value)),actualValue:o}},me=(e,t)=>{let{formItem:n}=W(),{model:r,isGroup:i,isLimitExceeded:a}=fe(e),{isFocused:o,isChecked:s,checkboxButtonSize:c,checkboxSize:l,hasOwnLabel:u,actualValue:d}=pe(e,t,{model:r}),{isDisabled:p}=ue({model:r,isChecked:s}),{inputId:m,isLabeledByFormItem:h}=S(e,{formItemContext:n,disableIdGeneration:u,disableIdManagement:i}),{handleChange:g,onClickRoot:_}=de(e,{model:r,isLimitExceeded:a,hasOwnLabel:u,isDisabled:p,isLabeledByFormItem:h});return(()=>{function t(){M(r.value)&&!r.value.includes(d.value)?r.value.push(d.value):r.value=e.trueValue??e.trueLabel??!0}e.checked&&t()})(),P({from:`label act as value`,replacement:`value`,version:`3.0.0`,scope:`el-checkbox`,ref:`https://element-plus.org/en-US/component/checkbox.html`},T(()=>i.value&&f(e.value))),P({from:`true-label`,replacement:`true-value`,version:`3.0.0`,scope:`el-checkbox`,ref:`https://element-plus.org/en-US/component/checkbox.html`},T(()=>!!e.trueLabel)),P({from:`false-label`,replacement:`false-value`,version:`3.0.0`,scope:`el-checkbox`,ref:`https://element-plus.org/en-US/component/checkbox.html`},T(()=>!!e.falseLabel)),{inputId:m,isLabeledByFormItem:h,isChecked:s,isDisabled:p,isFocused:o,checkboxButtonSize:c,checkboxSize:l,hasOwnLabel:u,model:r,actualValue:d,handleChange:g,onClickRoot:_}},he=[`id`,`indeterminate`,`name`,`tabindex`,`disabled`],ge=e({name:`ElCheckbox`,__name:`checkbox`,props:X,emits:Z,setup(e){let t=e,{inputLine truncated
@@ -0,0 +1 @@
import{$n as e,At as t,Br as n,Cn as r,Ct as i,Dt as a,Er as o,Et as s,Fn as c,In as l,Jn as u,Kn as d,Lr as f,Mr as p,Nn as m,Nt as h,Pn as g,Sr as _,Tt as v,Wn as y,Yn as b,_t as x,an as S,bt as C,cn as w,cr as T,en as ee,gn as E,hn as D,ir as O,jt as k,ln as A,mr as j,on as M,pn as N,pr as P,sn as F,ur as te,wn as I,xn as L,zn as R,zr as ne}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as re,u as ie}from"./runtime-dom.esm-bundler-YxjRGSuG.js";import{X as ae,at as z,g as B,st as V}from"./serverScope-O8Rw8SFk.js";import{R as H,a as U,c as oe,i as W,o as G,s as K,ut as q,y as J}from"./use-global-config-D-dPcPvU.js";import{t as se}from"./omit-zqi_K1DB.js";var Y={modelValue:{type:[Number,String,Boolean],default:void 0},label:{type:[String,Boolean,Number,Object],default:void 0},value:{type:[String,Boolean,Number,Object],default:void 0},indeterminate:Boolean,disabled:{type:Boolean,default:void 0},checked:Boolean,name:{type:String,default:void 0},trueValue:{type:[String,Number],default:void 0},falseValue:{type:[String,Number],default:void 0},trueLabel:{type:[String,Number],default:void 0},falseLabel:{type:[String,Number],default:void 0},id:{type:String,default:void 0},border:Boolean,size:J,tabindex:[String,Number],validateEvent:{type:Boolean,default:!0},ariaLabel:String,...B([`ariaControls`])},X={[V]:e=>p(e)||t(e)||a(e),change:e=>p(e)||t(e)||a(e)},Z=Symbol(`checkboxGroupContextKey`),ce=v({modelValue:{type:s(Array),default:()=>[]},disabled:{type:Boolean,default:void 0},min:Number,max:Number,size:J,fill:String,textColor:String,tag:{type:String,default:`div`},validateEvent:{type:Boolean,default:!0},options:{type:s(Array)},props:{type:s(Object),default:()=>ue},type:{type:String,values:[`checkbox`,`button`],default:`checkbox`},...B([`ariaLabel`])}),le={[V]:e=>_(e),change:e=>_(e)},ue={label:`label`,value:`value`,disabled:`disabled`},de=({model:e,isChecked:t})=>{let n=L(Z,void 0),r=L(oe,void 0),i=S(()=>{let r=n?.max?.value,i=n?.min?.value;return!h(r)&&e.value.length>=r&&!t.value||!h(i)&&e.value.length<=i&&t.value});return{isDisabled:G(S(()=>n===void 0?r?.disabled??i.value:n.disabled?.value||i.value)),isLimitDisabled:i}},fe=(e,{model:t,isLimitExceeded:n,hasOwnLabel:r,isDisabled:i,isLabeledByFormItem:a})=>{let o=L(Z,void 0),{formItem:s}=W(),{emit:c}=E();function l(t){return[!0,e.trueValue,e.trueLabel].includes(t)?e.trueValue??e.trueLabel??!0:e.falseValue??e.falseLabel??!1}function u(e,t){c(z,l(e),t)}function f(e){if(n.value)return;let t=e.target;c(z,l(t.checked),e)}async function p(o){n.value||!r.value&&!i.value&&a.value&&(o.composedPath().some(e=>e.tagName===`LABEL`)||(t.value=l([!1,e.falseValue,e.falseLabel].includes(t.value)),await I(),u(t.value,o)))}let m=S(()=>o?.validateEvent||e.validateEvent);return d(()=>e.modelValue,()=>{m.value&&s?.validate(`change`).catch(j)}),{handleChange:f,onClickRoot:p}},pe=e=>{let t=O(!1),{emit:n,vnode:r}=E(),i=L(Z,void 0),a=S(()=>h(i)===!1),o=O(!1),s=S(()=>{let e=r.props??{};return`modelValue`in e||`model-value`in e}),c=S({get(){return a.value?i?.modelValue?.value:s.value?e.modelValue:t.value},set(e){a.value&&_(e)?(o.value=i?.max?.value!==void 0&&e.length>i?.max.value&&e.length>c.value.length,o.value===!1&&i?.changeEvent?.(e)):(n(V,e),t.value=e)}});return{model:c,isGroup:a,isLimitExceeded:o}},me=(e,t,{model:n})=>{let r=L(Z,void 0),i=O(!1),s=S(()=>k(e.value)?e.label:e.value),c=S(()=>{let t=n.value;return a(t)?t:_(t)?o(s.value)?t.map(T).some(e=>q(e,s.value)):t.map(T).includes(s.value):t==null?!!t:t===e.trueValue||t===e.trueLabel});return{checkboxButtonSize:K(S(()=>r?.size?.value),{prop:!0}),isChecked:c,isFocused:i,checkboxSize:K(S(()=>r?.size?.value)),hasOwnLabel:S(()=>!!t.default||!k(s.value)),actualValue:s}},he=(e,t)=>{let{formItem:n}=W(),{model:r,isGroup:i,isLimitExceeded:a}=pe(e),{isFocused:o,isChecked:s,checkboxButtonSize:c,checkboxSize:l,hasOwnLabel:u,actualValue:d}=me(e,t,{model:r}),{isDisabled:f}=de({model:r,isChecked:s}),{inputId:p,isLabeledByFormItem:m}=U(e,{formItemContext:n,disableIdGeneration:u,disableIdManagement:i}),{handleChange:h,onClickRoot:g}=fe(e,{model:r,isLimitExceeded:a,hasOwnLabel:u,isDisabled:f,isLabeledByFormItem:m});return(()=>{function t(){_(r.value)&&!r.value.includes(d.value)?r.value.push(d.value):r.value=e.trueValue??e.trueLabel??!0}e.checked&&t()})(),H({from:`label act as value`,replacement:`value`,version:`3.0.0`,scope:`el-checkbox`,ref:`https://element-plus.org/en-US/component/checkbox.html`},S(()=>i.value&&k(e.value))),H({from:`true-label`,replacement:`true-value`,version:`3.0.0`,scope:`el-checkbox`,ref:`https://element-plus.org/en-US/component/checkbox.html`},S(()=>!!e.trueLabel)),H({from:`false-label`,replacement:`false-value`,version:`3.0.0`,scope:`el-checkbox`,ref:`https://element-plus.org/en-US/component/checkbox.html`},S(()=>!!e.falseLabel)),{inputId:p,isLabeledByFormItem:m,isChecked:s,isDisabled:f,isFocused:o,checkboxButtonSize:c,checkboxSize:l,hasOwnLabel:u,model:r,actualValue:d,handleChange:h,onClickRoot:g}},ge=[`id`,`indeterminate`,`name`,`tabin Line truncated
Loaded 100 of 809 files, more files were not shown because too many files have changed in this diff. Show more