diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/404-BHXP3Gho.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/404-D_zOFE_n.js similarity index 88% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/404-BHXP3Gho.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/404-D_zOFE_n.js index 8ef8733..75b3aa0 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/404-BHXP3Gho.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/404-D_zOFE_n.js @@ -1 +1 @@ -import{d as r,c as a,b as t,e as p,w as _,g as l,t as d,i as c,k as u,_ as i}from"./index-CIT-S3uf.js";const m={class:"error-page"},f={class:"error-content"},x=r({__name:"404",setup(k){const o=c(),s=()=>{o.push("/")};return(v,e)=>{const n=l("el-button");return u(),a("div",m,[t("div",f,[e[1]||(e[1]=t("h1",null,"404",-1)),e[2]||(e[2]=t("p",null,"抱歉,您访问的页面不存在",-1)),p(n,{type:"primary",onClick:s},{default:_(()=>[...e[0]||(e[0]=[d("返回首页",-1)])]),_:1})])])}}}),b=i(x,[["__scopeId","data-v-7e9f7d47"]]);export{b as default}; +import{d as r,c as a,b as t,e as p,w as _,g as l,t as d,i as c,k as u,_ as i}from"./index-D3kwcp-p.js";const m={class:"error-page"},f={class:"error-content"},x=r({__name:"404",setup(k){const o=c(),s=()=>{o.push("/")};return(v,e)=>{const n=l("el-button");return u(),a("div",m,[t("div",f,[e[1]||(e[1]=t("h1",null,"404",-1)),e[2]||(e[2]=t("p",null,"抱歉,您访问的页面不存在",-1)),p(n,{type:"primary",onClick:s},{default:_(()=>[...e[0]||(e[0]=[d("返回首页",-1)])]),_:1})])])}}}),b=i(x,[["__scopeId","data-v-7e9f7d47"]]);export{b as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/assessment-LEpEOHMS.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/assessment-DhwT9plj.js similarity index 97% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/assessment-LEpEOHMS.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/assessment-DhwT9plj.js index 490ac39..27e9c5a 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/assessment-LEpEOHMS.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/assessment-DhwT9plj.js @@ -1 +1 @@ -import{O as e}from"./index-CIT-S3uf.js";function n(t){return e({url:"/admin/assessment/type/getList",method:"get",params:t})}function a(t){return e({url:"/admin/assessment/type/create",method:"post",data:t})}function o(t){return e({url:"/admin/assessment/type/update",method:"post",data:t})}function r(t){return e({url:"/admin/assessment/type/delete",method:"post",data:{id:t}})}function u(t){return e({url:"/admin/assessment/type/updateStatus",method:"post",data:t})}function i(t){return e({url:"/admin/assessment/question/getList",method:"get",params:t})}function m(t){return e({url:"/admin/assessment/question/create",method:"post",data:t})}function d(t){return e({url:"/admin/assessment/question/update",method:"post",data:t})}function p(t){return e({url:"/admin/assessment/question/delete",method:"post",data:{id:t}})}function c(t){return e({url:"/admin/assessment/question/batchImport",method:"post",data:t,headers:{"Content-Type":"multipart/form-data"}})}function l(t){return e({url:"/admin/assessment/category/getTree",method:"get",params:{assessmentTypeId:t}})}function g(t){return e({url:"/admin/assessment/category/create",method:"post",data:t})}function h(t){return e({url:"/admin/assessment/category/update",method:"post",data:t})}function f(t){return e({url:"/admin/assessment/category/delete",method:"post",data:{id:t}})}function y(t){return e({url:"/admin/assessment/mapping/getByQuestion",method:"get",params:{questionId:t}})}function O(t){return e({url:"/admin/assessment/mapping/batchUpdate",method:"post",data:t})}function C(t){return e({url:"/admin/assessment/conclusion/getList",method:"get",params:{categoryId:t}})}function S(t){return e({url:"/admin/assessment/conclusion/create",method:"post",data:t})}function L(t){return e({url:"/admin/assessment/conclusion/update",method:"post",data:t})}function T(t){return e({url:"/admin/assessment/conclusion/delete",method:"post",data:{id:t}})}function q(t){return e({url:"/admin/assessment/scoreOption/getList",method:"get",params:t})}function Q(t){return e({url:"/admin/assessment/scoreOption/create",method:"post",data:t})}function b(t){return e({url:"/admin/assessment/scoreOption/update",method:"post",data:t})}function A(t){return e({url:"/admin/assessment/scoreOption/delete",method:"post",data:{id:t}})}function x(t){return e({url:"/admin/assessment/scoreOption/updateStatus",method:"post",data:t})}export{l as a,T as b,g as c,f as d,L as e,S as f,n as g,C as h,i,p as j,d as k,m as l,O as m,c as n,y as o,q as p,A as q,x as r,b as s,Q as t,h as u,u as v,r as w,o as x,a as y}; +import{O as e}from"./index-D3kwcp-p.js";function n(t){return e({url:"/admin/assessment/type/getList",method:"get",params:t})}function a(t){return e({url:"/admin/assessment/type/create",method:"post",data:t})}function o(t){return e({url:"/admin/assessment/type/update",method:"post",data:t})}function r(t){return e({url:"/admin/assessment/type/delete",method:"post",data:{id:t}})}function u(t){return e({url:"/admin/assessment/type/updateStatus",method:"post",data:t})}function i(t){return e({url:"/admin/assessment/question/getList",method:"get",params:t})}function m(t){return e({url:"/admin/assessment/question/create",method:"post",data:t})}function d(t){return e({url:"/admin/assessment/question/update",method:"post",data:t})}function p(t){return e({url:"/admin/assessment/question/delete",method:"post",data:{id:t}})}function c(t){return e({url:"/admin/assessment/question/batchImport",method:"post",data:t,headers:{"Content-Type":"multipart/form-data"}})}function l(t){return e({url:"/admin/assessment/category/getTree",method:"get",params:{assessmentTypeId:t}})}function g(t){return e({url:"/admin/assessment/category/create",method:"post",data:t})}function h(t){return e({url:"/admin/assessment/category/update",method:"post",data:t})}function f(t){return e({url:"/admin/assessment/category/delete",method:"post",data:{id:t}})}function y(t){return e({url:"/admin/assessment/mapping/getByQuestion",method:"get",params:{questionId:t}})}function O(t){return e({url:"/admin/assessment/mapping/batchUpdate",method:"post",data:t})}function C(t){return e({url:"/admin/assessment/conclusion/getList",method:"get",params:{categoryId:t}})}function S(t){return e({url:"/admin/assessment/conclusion/create",method:"post",data:t})}function L(t){return e({url:"/admin/assessment/conclusion/update",method:"post",data:t})}function T(t){return e({url:"/admin/assessment/conclusion/delete",method:"post",data:{id:t}})}function q(t){return e({url:"/admin/assessment/scoreOption/getList",method:"get",params:t})}function Q(t){return e({url:"/admin/assessment/scoreOption/create",method:"post",data:t})}function b(t){return e({url:"/admin/assessment/scoreOption/update",method:"post",data:t})}function A(t){return e({url:"/admin/assessment/scoreOption/delete",method:"post",data:{id:t}})}function x(t){return e({url:"/admin/assessment/scoreOption/updateStatus",method:"post",data:t})}export{l as a,T as b,g as c,f as d,L as e,S as f,n as g,C as h,i,p as j,d as k,m as l,O as m,c as n,y as o,q as p,A as q,x as r,b as s,Q as t,h as u,u as v,r as w,o as x,a as y}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/config-CkLmixH4.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/config-DjHLqwUe.js similarity index 92% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/config-CkLmixH4.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/config-DjHLqwUe.js index ad8667e..c6d7c07 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/config-CkLmixH4.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/config-DjHLqwUe.js @@ -1 +1 @@ -import{O as t}from"./index-CIT-S3uf.js";function e(){return t({url:"/admin/config/upload/get",method:"get"})}function i(n){return t({url:"/admin/config/upload/update",method:"post",data:n})}function r(n){return t({url:"/admin/config/upload/testConnection",method:"post",data:n})}function u(){return t({url:"/admin/config/miniprogram/get",method:"get"})}function a(n){return t({url:"/admin/config/miniprogram/update",method:"post",data:n})}function g(){return t({url:"/admin/config/weixinpay/get",method:"get"})}function d(n){return t({url:"/admin/config/weixinpay/update",method:"post",data:n})}function f(){return t({url:"/admin/config/user/get",method:"get"})}function m(n){return t({url:"/admin/config/user/update",method:"post",data:n})}export{g as a,d as b,e as c,i as d,f as e,m as f,u as g,r as t,a as u}; +import{O as t}from"./index-D3kwcp-p.js";function e(){return t({url:"/admin/config/upload/get",method:"get"})}function i(n){return t({url:"/admin/config/upload/update",method:"post",data:n})}function r(n){return t({url:"/admin/config/upload/testConnection",method:"post",data:n})}function u(){return t({url:"/admin/config/miniprogram/get",method:"get"})}function a(n){return t({url:"/admin/config/miniprogram/update",method:"post",data:n})}function g(){return t({url:"/admin/config/weixinpay/get",method:"get"})}function d(n){return t({url:"/admin/config/weixinpay/update",method:"post",data:n})}function f(){return t({url:"/admin/config/user/get",method:"get"})}function m(n){return t({url:"/admin/config/user/update",method:"post",data:n})}export{g as a,d as b,e as c,i as d,f as e,m as f,u as g,r as t,a as u}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/content-BAVmFhF_.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/content-C8FfR8xt.js similarity index 95% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/content-BAVmFhF_.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/content-C8FfR8xt.js index aefc9e6..1a47445 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/content-BAVmFhF_.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/content-C8FfR8xt.js @@ -1 +1 @@ -import{O as n}from"./index-CIT-S3uf.js";function o(t){return n({url:"/admin/content/banner/getList",method:"get",params:t})}function a(t){return n({url:"/admin/content/banner/create",method:"post",data:t})}function r(t){return n({url:"/admin/content/banner/update",method:"post",data:t})}function i(t){return n({url:"/admin/content/banner/delete",method:"post",data:{id:t}})}function u(t){return n({url:"/admin/content/banner/updateStatus",method:"post",data:t})}function d(t){return n({url:"/admin/content/banner/updateSort",method:"post",data:t})}function m(t){return n({url:"/admin/content/promotion/getList",method:"get",params:t})}function s(t){return n({url:"/admin/content/promotion/create",method:"post",data:t})}function c(t){return n({url:"/admin/content/promotion/update",method:"post",data:t})}function p(t){return n({url:"/admin/content/promotion/delete",method:"post",data:{id:t}})}function l(t){return n({url:"/admin/content/promotion/updateStatus",method:"post",data:t})}function g(t){return n({url:"/admin/content/navigation/getList",method:"get",params:t})}function f(t){return n({url:"/admin/content/navigation/create",method:"post",data:t})}function h(t){return n({url:"/admin/content/navigation/update",method:"post",data:t})}function v(t){return n({url:"/admin/content/navigation/delete",method:"post",data:{id:t}})}function S(t){return n({url:"/admin/content/navigation/updateStatus",method:"post",data:t})}export{u as a,r as b,a as c,i as d,g as e,S as f,o as g,v as h,h as i,f as j,m as k,l,p as m,c as n,s as o,d as u}; +import{O as n}from"./index-D3kwcp-p.js";function o(t){return n({url:"/admin/content/banner/getList",method:"get",params:t})}function a(t){return n({url:"/admin/content/banner/create",method:"post",data:t})}function r(t){return n({url:"/admin/content/banner/update",method:"post",data:t})}function i(t){return n({url:"/admin/content/banner/delete",method:"post",data:{id:t}})}function u(t){return n({url:"/admin/content/banner/updateStatus",method:"post",data:t})}function d(t){return n({url:"/admin/content/banner/updateSort",method:"post",data:t})}function m(t){return n({url:"/admin/content/promotion/getList",method:"get",params:t})}function s(t){return n({url:"/admin/content/promotion/create",method:"post",data:t})}function c(t){return n({url:"/admin/content/promotion/update",method:"post",data:t})}function p(t){return n({url:"/admin/content/promotion/delete",method:"post",data:{id:t}})}function l(t){return n({url:"/admin/content/promotion/updateStatus",method:"post",data:t})}function g(t){return n({url:"/admin/content/navigation/getList",method:"get",params:t})}function f(t){return n({url:"/admin/content/navigation/create",method:"post",data:t})}function h(t){return n({url:"/admin/content/navigation/update",method:"post",data:t})}function v(t){return n({url:"/admin/content/navigation/delete",method:"post",data:{id:t}})}function S(t){return n({url:"/admin/content/navigation/updateStatus",method:"post",data:t})}export{u as a,r as b,a as c,i as d,g as e,S as f,o as g,v as h,h as i,f as j,m as k,l,p as m,c as n,s as o,d as u}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/department-D285ZFgf.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/department-DP69qZhR.js similarity index 88% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/department-D285ZFgf.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/department-DP69qZhR.js index e328d2d..b74c8f3 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/department-D285ZFgf.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/department-DP69qZhR.js @@ -1 +1 @@ -import{O as t}from"./index-CIT-S3uf.js";function m(){return t({url:"/admin/departments",method:"get"})}function a(e){return t({url:"/admin/departments",method:"post",data:e})}function u(e,n){return t({url:`/admin/departments/${e}`,method:"put",data:n})}function d(e){return t({url:`/admin/departments/${e}`,method:"delete"})}function s(e){return t({url:`/admin/departments/${e}/menus`,method:"get"})}function p(e){return t({url:`/admin/departments/${e.departmentId}/menus`,method:"put",data:{menuIds:e.menuIds}})}export{s as a,p as b,a as c,d,m as g,u}; +import{O as t}from"./index-D3kwcp-p.js";function m(){return t({url:"/admin/departments",method:"get"})}function a(e){return t({url:"/admin/departments",method:"post",data:e})}function u(e,n){return t({url:`/admin/departments/${e}`,method:"put",data:n})}function d(e){return t({url:`/admin/departments/${e}`,method:"delete"})}function s(e){return t({url:`/admin/departments/${e}/menus`,method:"get"})}function p(e){return t({url:`/admin/departments/${e.departmentId}/menus`,method:"put",data:{menuIds:e.menuIds}})}export{s as a,p as b,a as c,d,m as g,u}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/distribution-DJBpxGTy.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/distribution-BAkpY53N.js similarity index 95% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/distribution-DJBpxGTy.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/distribution-BAkpY53N.js index 087ff27..7baf124 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/distribution-DJBpxGTy.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/distribution-BAkpY53N.js @@ -1 +1 @@ -import{O as i}from"./index-CIT-S3uf.js";function n(t){return i({url:"/admin/distribution/inviteCode/getList",method:"get",params:t})}function o(t){return i({url:"/admin/distribution/inviteCode/generate",method:"post",data:t})}function r(t){return i({url:"/admin/distribution/inviteCode/assign",method:"post",data:t})}function s(t){return i({url:"/admin/distribution/inviteCode/export",method:"get",params:t,responseType:"blob"})}function a(t){return i({url:"/admin/distribution/commission/getList",method:"get",params:t})}function d(t){return i({url:"/admin/distribution/commission/getDetail",method:"get",params:{id:t}})}function u(t){return i({url:"/admin/distribution/commission/getStatistics",method:"get",params:t})}function m(t){return i({url:"/admin/distribution/commission/export",method:"get",params:t,responseType:"blob"})}function l(t){return i({url:"/admin/distribution/withdrawal/getList",method:"get",params:t})}function h(t){return i({url:"/admin/distribution/withdrawal/getDetail",method:"get",params:{id:t}})}function p(t){return i({url:"/admin/distribution/withdrawal/approve",method:"post",data:t})}function g(t){return i({url:"/admin/distribution/withdrawal/reject",method:"post",data:t})}function c(t){return i({url:"/admin/distribution/withdrawal/complete",method:"post",data:t})}function b(t){return i({url:"/admin/distribution/withdrawal/export",method:"get",params:t,responseType:"blob"})}export{a,d as b,n as c,o as d,m as e,r as f,u as g,s as h,l as i,h as j,p as k,c as l,b as m,g as r}; +import{O as i}from"./index-D3kwcp-p.js";function n(t){return i({url:"/admin/distribution/inviteCode/getList",method:"get",params:t})}function o(t){return i({url:"/admin/distribution/inviteCode/generate",method:"post",data:t})}function r(t){return i({url:"/admin/distribution/inviteCode/assign",method:"post",data:t})}function s(t){return i({url:"/admin/distribution/inviteCode/export",method:"get",params:t,responseType:"blob"})}function a(t){return i({url:"/admin/distribution/commission/getList",method:"get",params:t})}function d(t){return i({url:"/admin/distribution/commission/getDetail",method:"get",params:{id:t}})}function u(t){return i({url:"/admin/distribution/commission/getStatistics",method:"get",params:t})}function m(t){return i({url:"/admin/distribution/commission/export",method:"get",params:t,responseType:"blob"})}function l(t){return i({url:"/admin/distribution/withdrawal/getList",method:"get",params:t})}function h(t){return i({url:"/admin/distribution/withdrawal/getDetail",method:"get",params:{id:t}})}function p(t){return i({url:"/admin/distribution/withdrawal/approve",method:"post",data:t})}function g(t){return i({url:"/admin/distribution/withdrawal/reject",method:"post",data:t})}function c(t){return i({url:"/admin/distribution/withdrawal/complete",method:"post",data:t})}function b(t){return i({url:"/admin/distribution/withdrawal/export",method:"get",params:t,responseType:"blob"})}export{a,d as b,n as c,o as d,m as e,r as f,u as g,s as h,l as i,h as j,p as k,c as l,b as m,g as r}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-pkSWbB11.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-94U6xpoG.js similarity index 85% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-pkSWbB11.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-94U6xpoG.js index b98b91b..432cc71 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-pkSWbB11.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-94U6xpoG.js @@ -1 +1 @@ -import{d as Y,r as U,a as x,o as Z,g as d,B as ee,c as te,k as E,e as t,C as ae,w as i,b as c,t as m,l as u,D as oe,f as le,J as h,L as ie,s as ne,z as se,V as re,x as S,H as de,I as ue,X as pe,E as _,_ as me}from"./index-CIT-S3uf.js";import{k as fe,l as ge,m as ce,n as _e,o as be}from"./content-BAVmFhF_.js";const Ve={class:"promotion-container"},he={class:"header-content"},ye={class:"header-right"},ve={class:"image-error"},De={class:"pagination-wrapper"},we=Y({__name:"index",setup(Ce){const k=U(),V=U(),n=x({page:1,pageSize:10,title:"",position:void 0,status:void 0}),o=x({loading:!1,tableData:[],total:0,dialogVisible:!1,dialogTitle:"新增宣传图",formData:y(),formLoading:!1,isEdit:!1}),z={imageUrl:[{required:!0,message:"请上传宣传图片",trigger:"change"}],position:[{required:!0,message:"请选择位置",trigger:"change"}],status:[{required:!0,message:"请选择状态",trigger:"change"}]};function y(){return{title:"",imageUrl:"",position:"",sort:0,status:"1"}}function L(a){const e=["primary","success","warning","info","danger"];return e[(a-1)%e.length]||"primary"}function N(a){return{1:"首页顶部",2:"首页中部",3:"首页底部",4:"详情页",5:"个人中心"}[a]||`位置${a}`}async function f(){var a,e;o.loading=!0;try{const s={page:n.page,pageSize:n.pageSize};n.title&&(s.title=n.title),n.position!==void 0&&n.position!==""&&(s.position=Number(n.position)),n.status!==void 0&&n.status!==""&&(s.status=Number(n.status));const r=await fe(s);if(r.code===0)o.tableData=((a=r.data)==null?void 0:a.list)||[],o.total=((e=r.data)==null?void 0:e.total)||0;else throw new Error(r.message||"获取宣传图列表失败")}catch(s){const r=s instanceof Error?s.message:"获取宣传图列表失败";_.error(r)}finally{o.loading=!1}}function D(){n.page=1,f()}function P(){n.title="",n.position=void 0,n.status=void 0,n.page=1,f()}function q(a){n.pageSize=a,n.page=1,f()}function T(a){n.page=a,f()}function R({prop:a,order:e}){console.log("Sort changed:",a,e)}function B(){o.isEdit=!1,o.dialogTitle="新增宣传图",o.formData=y(),o.dialogVisible=!0}function $(a){o.isEdit=!0,o.dialogTitle="编辑宣传图",o.formData={id:a.id,title:a.title||"",imageUrl:a.imageUrl,position:String(a.position),sort:a.sort,status:String(a.status)},o.dialogVisible=!0}async function M(a,e){a._statusLoading=!0;try{const s=await ge({id:a.id,status:e});if(s.code===0)_.success(e===1?"已启用":"已禁用");else throw a.status=e===1?0:1,new Error(s.message||"状态更新失败")}catch(s){const r=s instanceof Error?s.message:"状态更新失败";_.error(r)}finally{a._statusLoading=!1}}async function I(a){try{const e=await ce(a.id);if(e.code===0)_.success("删除成功"),o.tableData.length===1&&n.page>1&&n.page--,await f();else throw new Error(e.message||"删除失败")}catch(e){const s=e instanceof Error?e.message:"删除失败";_.error(s)}}async function j(){if(V.value){try{await V.value.validate()}catch{return}o.formLoading=!0;try{const a=o.formData,e={title:a.title||void 0,imageUrl:a.imageUrl,position:Number(a.position),sort:a.sort,status:Number(a.status)};let s;if(o.isEdit&&a.id?s=await _e({...e,id:a.id}):s=await be(e),s.code===0)_.success(o.isEdit?"更新成功":"创建成功"),o.dialogVisible=!1,await f();else throw new Error(s.message||(o.isEdit?"更新失败":"创建失败"))}catch(a){const e=a instanceof Error?a.message:o.isEdit?"更新失败":"创建失败";_.error(e)}finally{o.formLoading=!1}}}function F(){var a;(a=V.value)==null||a.resetFields(),o.formData=y()}return Z(()=>{f()}),(a,e)=>{const s=d("el-icon"),r=d("el-button"),v=d("el-card"),w=d("el-input"),p=d("el-form-item"),C=d("el-form"),K=d("el-image"),g=d("el-table-column"),A=d("el-tag"),H=d("el-switch"),J=d("el-popconfirm"),X=d("el-table"),G=d("el-pagination"),O=d("el-input-number"),Q=d("el-dialog"),W=ee("loading");return E(),te("div",Ve,[t(v,{class:"page-header"},{default:i(()=>[c("div",he,[e[13]||(e[13]=c("div",{class:"header-left"},[c("h2",{class:"page-title"},"宣传图管理"),c("span",{class:"page-description"},"管理不同位置的宣传图,支持位置筛选、状态管理")],-1)),c("div",ye,[t(r,{type:"primary",onClick:B},{default:i(()=>[t(s,null,{default:i(()=>[t(u(oe))]),_:1}),e[12]||(e[12]=m(" 新增宣传图 ",-1))]),_:1})])])]),_:1}),t(v,{class:"search-card"},{default:i(()=>[t(C,{model:n,inline:""},{default:i(()=>[t(p,{label:"标题"},{default:i(()=>[t(w,{modelValue:n.title,"onUpdate:modelValue":e[0]||(e[0]=l=>n.title=l),placeholder:"请输入标题",clearable:"",onKeyup:le(D,["enter"])},null,8,["modelValue"])]),_:1}),t(p,{label:"位置"},{default:i(()=>[t(u(h),{modelValue:n.position,"onUpdate:modelValue":e[1]||(e[1]=l=>n.position=l),type:"promotion_position",placeholder:"请选择位置",clearable:""},null,8,["modelValue"])]),_:1}),t(p,{label:"状态"},{default:i(()=>[t(u(h),{modelValue:n.status,"onUpdate:modelValue":e[2]||(e[2]=l=>n.status=l),type:"common_status",placeholder:"请选择状态",clearable:""},null,8,["modelValue"])]),_:1}),t(p,null,{default:i(()=>[t(r,{type:"primary",onClick:D},{default:i(()=>[t(s,null,{default:i(()=>[t(u(ie))]),_:1}),e[14]||(e[14]=m(" 搜索 ",-1))]),_:1}),t(r,{onClick:P},{default:i(()=>[t(s,null,{default:i(()=>[t(u(ne))]),_:1}),e[15]||(e[15]=m(" 重置 ",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),ae((E(),se(v,{class:"table-card"},{default:i(()=>[t(X,{ref_key:"tableRef",ref:k,data:o.tableData,"row-key":"id",stripe:"",onSortChange:R},{default:i(()=>[t(g,{label:"图片",width:"120",align:"center"},{default:i(({row:l})=>[t(K,{src:l.imageUrl,"preview-src-list":[l.imageUrl],fit:"cover",style:{width:"80px",height:"60px","border-radius":"4px"},"preview-teleported":""},{error:i(()=>[c("div",ve,[t(s,null,{default:i(()=>[t(u(re))]),_:1})])]),_:1},8,["src","preview-src-list"])]),_:1}),t(g,{prop:"title",label:"标题","min-width":"150","show-overflow-tooltip":""},{default:i(({row:l})=>[m(S(l.title||"-"),1)]),_:1}),t(g,{prop:"positionName",label:"位置",width:"120",align:"center"},{default:i(({row:l})=>[t(A,{type:L(l.position)},{default:i(()=>[m(S(l.positionName||N(l.position)),1)]),_:2},1032,["type"])]),_:1}),t(g,{label:"状态",width:"100",align:"center"},{default:i(({row:l})=>[t(H,{modelValue:l.status,"onUpdate:modelValue":b=>l.status=b,"active-value":1,"inactive-value":0,loading:l._statusLoading,onChange:b=>M(l,b)},null,8,["modelValue","onUpdate:modelValue","loading","onChange"])]),_:1}),t(g,{prop:"sort",label:"排序",width:"80",align:"center",sortable:"custom"}),t(g,{prop:"createTime",label:"创建时间",width:"180",align:"center"}),t(g,{label:"操作",width:"150",fixed:"right",align:"center"},{default:i(({row:l})=>[t(r,{type:"primary",link:"",size:"small",onClick:b=>$(l)},{default:i(()=>[t(s,null,{default:i(()=>[t(u(de))]),_:1}),e[16]||(e[16]=m(" 编辑 ",-1))]),_:1},8,["onClick"]),t(J,{title:"确定要删除这条宣传图吗?","confirm-button-text":"确定","cancel-button-text":"取消",onConfirm:b=>I(l)},{reference:i(()=>[t(r,{type:"danger",link:"",size:"small"},{default:i(()=>[t(s,null,{default:i(()=>[t(u(ue))]),_:1}),e[17]||(e[17]=m(" 删除 ",-1))]),_:1})]),_:1},8,["onConfirm"])]),_:1})]),_:1},8,["data"]),c("div",De,[t(G,{"current-page":n.page,"onUpdate:currentPage":e[3]||(e[3]=l=>n.page=l),"page-size":n.pageSize,"onUpdate:pageSize":e[4]||(e[4]=l=>n.pageSize=l),"page-sizes":[10,20,50,100],total:o.total,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:q,onCurrentChange:T},null,8,["current-page","page-size","total"])])]),_:1})),[[W,o.loading]]),t(Q,{modelValue:o.dialogVisible,"onUpdate:modelValue":e[11]||(e[11]=l=>o.dialogVisible=l),title:o.dialogTitle,width:"600px","close-on-click-modal":!1,onClosed:F},{footer:i(()=>[t(r,{onClick:e[10]||(e[10]=l=>o.dialogVisible=!1)},{default:i(()=>[...e[18]||(e[18]=[m("取消",-1)])]),_:1}),t(r,{type:"primary",loading:o.formLoading,onClick:j},{default:i(()=>[...e[19]||(e[19]=[m(" 确定 ",-1)])]),_:1},8,["loading"])]),default:i(()=>[t(C,{ref_key:"formRef",ref:V,model:o.formData,rules:z,"label-width":"100px","label-position":"right"},{default:i(()=>[t(p,{label:"标题",prop:"title"},{default:i(()=>[t(w,{modelValue:o.formData.title,"onUpdate:modelValue":e[5]||(e[5]=l=>o.formData.title=l),placeholder:"请输入标题(可选)",maxlength:"50","show-word-limit":""},null,8,["modelValue"])]),_:1}),t(p,{label:"宣传图片",prop:"imageUrl",required:""},{default:i(()=>[t(u(pe),{modelValue:o.formData.imageUrl,"onUpdate:modelValue":e[6]||(e[6]=l=>o.formData.imageUrl=l),placeholder:"点击上传宣传图",tip:"建议尺寸:750x400,支持 jpg、png、gif 格式","max-size":10},null,8,["modelValue"])]),_:1}),t(p,{label:"位置",prop:"position",required:""},{default:i(()=>[t(u(h),{modelValue:o.formData.position,"onUpdate:modelValue":e[7]||(e[7]=l=>o.formData.position=l),type:"promotion_position",placeholder:"请选择位置"},null,8,["modelValue"])]),_:1}),t(p,{label:"排序",prop:"sort"},{default:i(()=>[t(O,{modelValue:o.formData.sort,"onUpdate:modelValue":e[8]||(e[8]=l=>o.formData.sort=l),min:0,max:9999,placeholder:"数值越小越靠前"},null,8,["modelValue"])]),_:1}),t(p,{label:"状态",prop:"status",required:""},{default:i(()=>[t(u(h),{modelValue:o.formData.status,"onUpdate:modelValue":e[9]||(e[9]=l=>o.formData.status=l),type:"common_status",placeholder:"请选择状态"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}}),Ee=me(we,[["__scopeId","data-v-0a8be6c6"]]);export{Ee as default}; +import{d as X,r as U,a as x,o as Z,g as d,B as ee,c as te,k as E,e as t,C as ae,w as i,b as c,t as m,l as u,D as oe,f as le,J as V,L as ie,s as ne,z as se,W as re,x as S,H as de,I as ue,Y as pe,E as _,_ as me}from"./index-D3kwcp-p.js";import{k as fe,l as ge,m as ce,n as _e,o as be}from"./content-C8FfR8xt.js";const he={class:"promotion-container"},Ve={class:"header-content"},ye={class:"header-right"},ve={class:"image-error"},De={class:"pagination-wrapper"},we=X({__name:"index",setup(Ce){const k=U(),h=U(),n=x({page:1,pageSize:10,title:"",position:void 0,status:void 0}),o=x({loading:!1,tableData:[],total:0,dialogVisible:!1,dialogTitle:"新增宣传图",formData:y(),formLoading:!1,isEdit:!1}),z={imageUrl:[{required:!0,message:"请上传宣传图片",trigger:"change"}],position:[{required:!0,message:"请选择位置",trigger:"change"}],status:[{required:!0,message:"请选择状态",trigger:"change"}]};function y(){return{title:"",imageUrl:"",position:"",sort:0,status:"1"}}function L(a){const e=["primary","success","warning","info","danger"];return e[(a-1)%e.length]||"primary"}function N(a){return{1:"首页顶部",2:"首页中部",3:"首页底部",4:"详情页",5:"个人中心"}[a]||`位置${a}`}async function f(){var a,e;o.loading=!0;try{const s={page:n.page,pageSize:n.pageSize};n.title&&(s.title=n.title),n.position!==void 0&&n.position!==""&&(s.position=Number(n.position)),n.status!==void 0&&n.status!==""&&(s.status=Number(n.status));const r=await fe(s);if(r.code===0)o.tableData=((a=r.data)==null?void 0:a.list)||[],o.total=((e=r.data)==null?void 0:e.total)||0;else throw new Error(r.message||"获取宣传图列表失败")}catch(s){const r=s instanceof Error?s.message:"获取宣传图列表失败";_.error(r)}finally{o.loading=!1}}function D(){n.page=1,f()}function P(){n.title="",n.position=void 0,n.status=void 0,n.page=1,f()}function q(a){n.pageSize=a,n.page=1,f()}function T(a){n.page=a,f()}function R({prop:a,order:e}){console.log("Sort changed:",a,e)}function B(){o.isEdit=!1,o.dialogTitle="新增宣传图",o.formData=y(),o.dialogVisible=!0}function $(a){o.isEdit=!0,o.dialogTitle="编辑宣传图",o.formData={id:a.id,title:a.title||"",imageUrl:a.imageUrl,position:String(a.position),sort:a.sort,status:String(a.status)},o.dialogVisible=!0}async function M(a,e){a._statusLoading=!0;try{const s=await ge({id:a.id,status:e});if(s.code===0)_.success(e===1?"已启用":"已禁用");else throw a.status=e===1?0:1,new Error(s.message||"状态更新失败")}catch(s){const r=s instanceof Error?s.message:"状态更新失败";_.error(r)}finally{a._statusLoading=!1}}async function I(a){try{const e=await ce(a.id);if(e.code===0)_.success("删除成功"),o.tableData.length===1&&n.page>1&&n.page--,await f();else throw new Error(e.message||"删除失败")}catch(e){const s=e instanceof Error?e.message:"删除失败";_.error(s)}}async function j(){if(h.value){try{await h.value.validate()}catch{return}o.formLoading=!0;try{const a=o.formData,e={title:a.title||void 0,imageUrl:a.imageUrl,position:Number(a.position),sort:a.sort,status:Number(a.status)};let s;if(o.isEdit&&a.id?s=await _e({...e,id:a.id}):s=await be(e),s.code===0)_.success(o.isEdit?"更新成功":"创建成功"),o.dialogVisible=!1,await f();else throw new Error(s.message||(o.isEdit?"更新失败":"创建失败"))}catch(a){const e=a instanceof Error?a.message:o.isEdit?"更新失败":"创建失败";_.error(e)}finally{o.formLoading=!1}}}function F(){var a;(a=h.value)==null||a.resetFields(),o.formData=y()}return Z(()=>{f()}),(a,e)=>{const s=d("el-icon"),r=d("el-button"),v=d("el-card"),w=d("el-input"),p=d("el-form-item"),C=d("el-form"),K=d("el-image"),g=d("el-table-column"),A=d("el-tag"),H=d("el-switch"),J=d("el-popconfirm"),W=d("el-table"),Y=d("el-pagination"),G=d("el-input-number"),O=d("el-dialog"),Q=ee("loading");return E(),te("div",he,[t(v,{class:"page-header"},{default:i(()=>[c("div",Ve,[e[13]||(e[13]=c("div",{class:"header-left"},[c("h2",{class:"page-title"},"宣传图管理"),c("span",{class:"page-description"},"管理不同位置的宣传图,支持位置筛选、状态管理")],-1)),c("div",ye,[t(r,{type:"primary",onClick:B},{default:i(()=>[t(s,null,{default:i(()=>[t(u(oe))]),_:1}),e[12]||(e[12]=m(" 新增宣传图 ",-1))]),_:1})])])]),_:1}),t(v,{class:"search-card"},{default:i(()=>[t(C,{model:n,inline:""},{default:i(()=>[t(p,{label:"标题"},{default:i(()=>[t(w,{modelValue:n.title,"onUpdate:modelValue":e[0]||(e[0]=l=>n.title=l),placeholder:"请输入标题",clearable:"",onKeyup:le(D,["enter"])},null,8,["modelValue"])]),_:1}),t(p,{label:"位置"},{default:i(()=>[t(u(V),{modelValue:n.position,"onUpdate:modelValue":e[1]||(e[1]=l=>n.position=l),type:"promotion_position",placeholder:"请选择位置",clearable:""},null,8,["modelValue"])]),_:1}),t(p,{label:"状态"},{default:i(()=>[t(u(V),{modelValue:n.status,"onUpdate:modelValue":e[2]||(e[2]=l=>n.status=l),type:"common_status",placeholder:"请选择状态",clearable:""},null,8,["modelValue"])]),_:1}),t(p,null,{default:i(()=>[t(r,{type:"primary",onClick:D},{default:i(()=>[t(s,null,{default:i(()=>[t(u(ie))]),_:1}),e[14]||(e[14]=m(" 搜索 ",-1))]),_:1}),t(r,{onClick:P},{default:i(()=>[t(s,null,{default:i(()=>[t(u(ne))]),_:1}),e[15]||(e[15]=m(" 重置 ",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),ae((E(),se(v,{class:"table-card"},{default:i(()=>[t(W,{ref_key:"tableRef",ref:k,data:o.tableData,"row-key":"id",stripe:"",onSortChange:R},{default:i(()=>[t(g,{label:"图片",width:"120",align:"center"},{default:i(({row:l})=>[t(K,{src:l.imageUrl,"preview-src-list":[l.imageUrl],fit:"cover",style:{width:"80px",height:"60px","border-radius":"4px"},"preview-teleported":""},{error:i(()=>[c("div",ve,[t(s,null,{default:i(()=>[t(u(re))]),_:1})])]),_:1},8,["src","preview-src-list"])]),_:1}),t(g,{prop:"title",label:"标题","min-width":"150","show-overflow-tooltip":""},{default:i(({row:l})=>[m(S(l.title||"-"),1)]),_:1}),t(g,{prop:"positionName",label:"位置",width:"120",align:"center"},{default:i(({row:l})=>[t(A,{type:L(l.position)},{default:i(()=>[m(S(l.positionName||N(l.position)),1)]),_:2},1032,["type"])]),_:1}),t(g,{label:"状态",width:"100",align:"center"},{default:i(({row:l})=>[t(H,{modelValue:l.status,"onUpdate:modelValue":b=>l.status=b,"active-value":1,"inactive-value":0,loading:l._statusLoading,onChange:b=>M(l,b)},null,8,["modelValue","onUpdate:modelValue","loading","onChange"])]),_:1}),t(g,{prop:"sort",label:"排序",width:"80",align:"center",sortable:"custom"}),t(g,{prop:"createTime",label:"创建时间",width:"180",align:"center"}),t(g,{label:"操作",width:"150",fixed:"right",align:"center"},{default:i(({row:l})=>[t(r,{type:"primary",link:"",size:"small",onClick:b=>$(l)},{default:i(()=>[t(s,null,{default:i(()=>[t(u(de))]),_:1}),e[16]||(e[16]=m(" 编辑 ",-1))]),_:1},8,["onClick"]),t(J,{title:"确定要删除这条宣传图吗?","confirm-button-text":"确定","cancel-button-text":"取消",onConfirm:b=>I(l)},{reference:i(()=>[t(r,{type:"danger",link:"",size:"small"},{default:i(()=>[t(s,null,{default:i(()=>[t(u(ue))]),_:1}),e[17]||(e[17]=m(" 删除 ",-1))]),_:1})]),_:1},8,["onConfirm"])]),_:1})]),_:1},8,["data"]),c("div",De,[t(Y,{"current-page":n.page,"onUpdate:currentPage":e[3]||(e[3]=l=>n.page=l),"page-size":n.pageSize,"onUpdate:pageSize":e[4]||(e[4]=l=>n.pageSize=l),"page-sizes":[10,20,50,100],total:o.total,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:q,onCurrentChange:T},null,8,["current-page","page-size","total"])])]),_:1})),[[Q,o.loading]]),t(O,{modelValue:o.dialogVisible,"onUpdate:modelValue":e[11]||(e[11]=l=>o.dialogVisible=l),title:o.dialogTitle,width:"600px","close-on-click-modal":!1,onClosed:F},{footer:i(()=>[t(r,{onClick:e[10]||(e[10]=l=>o.dialogVisible=!1)},{default:i(()=>[...e[18]||(e[18]=[m("取消",-1)])]),_:1}),t(r,{type:"primary",loading:o.formLoading,onClick:j},{default:i(()=>[...e[19]||(e[19]=[m(" 确定 ",-1)])]),_:1},8,["loading"])]),default:i(()=>[t(C,{ref_key:"formRef",ref:h,model:o.formData,rules:z,"label-width":"100px","label-position":"right"},{default:i(()=>[t(p,{label:"标题",prop:"title"},{default:i(()=>[t(w,{modelValue:o.formData.title,"onUpdate:modelValue":e[5]||(e[5]=l=>o.formData.title=l),placeholder:"请输入标题(可选)",maxlength:"50","show-word-limit":""},null,8,["modelValue"])]),_:1}),t(p,{label:"宣传图片",prop:"imageUrl",required:""},{default:i(()=>[t(u(pe),{modelValue:o.formData.imageUrl,"onUpdate:modelValue":e[6]||(e[6]=l=>o.formData.imageUrl=l),placeholder:"点击上传宣传图",tip:"建议尺寸:750x400,支持 jpg、png、gif 格式","max-size":10},null,8,["modelValue"])]),_:1}),t(p,{label:"位置",prop:"position",required:""},{default:i(()=>[t(u(V),{modelValue:o.formData.position,"onUpdate:modelValue":e[7]||(e[7]=l=>o.formData.position=l),type:"promotion_position",placeholder:"请选择位置"},null,8,["modelValue"])]),_:1}),t(p,{label:"排序",prop:"sort"},{default:i(()=>[t(G,{modelValue:o.formData.sort,"onUpdate:modelValue":e[8]||(e[8]=l=>o.formData.sort=l),min:0,max:9999,placeholder:"数值越小越靠前"},null,8,["modelValue"])]),_:1}),t(p,{label:"状态",prop:"status",required:""},{default:i(()=>[t(u(V),{modelValue:o.formData.status,"onUpdate:modelValue":e[9]||(e[9]=l=>o.formData.status=l),type:"common_status",placeholder:"请选择状态"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}}),Ee=me(we,[["__scopeId","data-v-0a8be6c6"]]);export{Ee as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-G9qeWlW9.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BBe25F04.js similarity index 99% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-G9qeWlW9.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BBe25F04.js index 97ea747..6775f09 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-G9qeWlW9.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BBe25F04.js @@ -1,4 +1,4 @@ -var a_=Object.defineProperty;var o_=(r,t,e)=>t in r?a_(r,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):r[t]=e;var iv=(r,t,e)=>o_(r,typeof t!="symbol"?t+"":t,e);import{d as ig,a2 as pu,a3 as _o,a4 as s_,v as Tr,a5 as So,a6 as bo,a7 as ng,o as Ff,a8 as l_,a9 as gu,$ as u_,aa as Us,ab as f_,ac as h_,ad as v_,O as zf,u as c_,r as d_,a as p_,g as Ae,B as g_,c as Ys,k as Le,z as Gr,G as m_,e as O,w as H,t as ge,C as hr,b as Z,l as Tt,m as nv,x as Ie,ae as av,af as y_,ag as ov,ah as __,ai as S_,aj as sv,ak as lv,al as b_,V as w_,R as x_,E as Xs,_ as T_}from"./index-CIT-S3uf.js";/*! ***************************************************************************** +var a_=Object.defineProperty;var o_=(r,t,e)=>t in r?a_(r,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):r[t]=e;var iv=(r,t,e)=>o_(r,typeof t!="symbol"?t+"":t,e);import{d as ig,a3 as pu,a4 as _o,a5 as s_,v as Tr,a6 as So,a7 as bo,a8 as ng,o as Ff,a9 as l_,aa as gu,a0 as u_,ab as Us,ac as f_,ad as h_,ae as v_,O as zf,u as c_,r as d_,a as p_,g as Ae,B as g_,c as Ys,k as Le,z as Gr,G as m_,e as O,w as H,t as ge,C as hr,b as Z,l as Tt,m as nv,x as Ie,af as av,ag as y_,ah as ov,ai as __,aj as S_,ak as sv,al as lv,am as b_,W as w_,R as x_,E as Xs,_ as T_}from"./index-D3kwcp-p.js";/*! ***************************************************************************** Copyright (c) Microsoft Corporation. Permission to use, copy, modify, and/or distribute this software for any diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BDGvnWwC.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BDGvnWwC.js new file mode 100644 index 0000000..1a94a43 --- /dev/null +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BDGvnWwC.js @@ -0,0 +1 @@ +import{d as ve,r as m,a as L,o as _e,g as c,B as G,c as T,k as u,b as v,e as t,C,z as f,w as a,t as n,l as W,N as be,f as ge,J as ye,L as ke,s as we,x as i,F as J,G as b,T as xe,E as R,_ as Ve}from"./index-D3kwcp-p.js";import{i as he,j as Te,k as Ce,r as Re,l as Ie,m as Ue}from"./distribution-BAkpY53N.js";const Ne={class:"page-container"},Se={class:"page-header"},Fe={class:"sub-text"},De={class:"amount"},Be={class:"sub-text"},je={key:0,class:"sub-text"},ze={key:1,class:"sub-text"},Ee={class:"pagination-container"},$e=ve({__name:"index",setup(Le){const N=m(!1),M=m([]),P=m(0),S=m(null),d=L({page:1,pageSize:10,withdrawalNo:void 0,userId:void 0,status:void 0,createTimeStart:void 0,createTimeEnd:void 0}),F=m(!1),s=m(null),V=m(!1),D=m(!1),B=m(),k=L({id:0,auditRemark:""}),H={auditRemark:[{required:!0,message:"请输入拒绝原因",trigger:"blur"}]},h=m(!1),j=m(!1),z=m(),w=L({id:0,payTransactionId:""}),Q={payTransactionId:[{required:!0,message:"请输入交易流水号",trigger:"blur"}]},Y=o=>({1:"warning",2:"",3:"success",4:"info"})[o]||"",g=async()=>{N.value=!0;try{const o=await he(d);o.code===0&&(M.value=o.data.list,P.value=o.data.total)}finally{N.value=!1}},X=o=>{o?(d.createTimeStart=o[0],d.createTimeEnd=o[1]):(d.createTimeStart=void 0,d.createTimeEnd=void 0)},q=()=>{d.page=1,g()},Z=()=>{d.withdrawalNo=void 0,d.userId=void 0,d.status=void 0,d.createTimeStart=void 0,d.createTimeEnd=void 0,S.value=null,d.page=1,g()},ee=o=>{d.pageSize=o,g()},ae=o=>{d.page=o,g()},te=async o=>{const e=await Te(o.id);e.code===0&&(s.value=e.data,F.value=!0)},le=o=>{xe.confirm(`确定要通过提现单"${o.withdrawalNo}"的审核吗?`,"提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(async()=>{(await Ce({id:o.id})).code===0&&(R.success("审核通过"),g())}).catch(()=>{})},oe=o=>{k.id=o.id,k.auditRemark="",V.value=!0},ne=async()=>{if(B.value){await B.value.validate(),D.value=!0;try{(await Re(k)).code===0&&(R.success("已拒绝"),V.value=!1,g())}finally{D.value=!1}}},de=o=>{w.id=o.id,w.payTransactionId="",h.value=!0},ie=async()=>{if(z.value){await z.value.validate(),j.value=!0;try{(await Ie(w)).code===0&&(R.success("打款完成"),h.value=!1,g())}finally{j.value=!1}}},se=async()=>{try{const o=await Ue(d),e=o.data instanceof Blob?o.data:new Blob([o.data]),x=window.URL.createObjectURL(e),r=document.createElement("a");r.href=x,r.download=`提现记录_${new Date().toISOString().slice(0,10)}.xlsx`,r.click(),window.URL.revokeObjectURL(x),R.success("导出成功")}catch{R.error("导出失败")}};return _e(()=>{g()}),(o,e)=>{const x=c("el-icon"),r=c("el-button"),I=c("el-input"),y=c("el-form-item"),ue=c("el-date-picker"),E=c("el-form"),O=c("el-card"),_=c("el-table-column"),A=c("el-tag"),re=c("el-table"),pe=c("el-pagination"),p=c("el-descriptions-item"),ce=c("el-descriptions"),me=c("el-drawer"),K=c("el-dialog"),U=G("permission"),fe=G("loading");return u(),T("div",Ne,[v("div",Se,[e[14]||(e[14]=v("h2",null,"提现审核管理",-1)),C((u(),f(r,{type:"success",onClick:se},{default:a(()=>[t(x,null,{default:a(()=>[t(W(be))]),_:1}),e[13]||(e[13]=n("导出 ",-1))]),_:1})),[[U,"distribution:view"]])]),t(O,{class:"search-card",shadow:"never"},{default:a(()=>[t(E,{model:d,inline:""},{default:a(()=>[t(y,{label:"提现单号"},{default:a(()=>[t(I,{modelValue:d.withdrawalNo,"onUpdate:modelValue":e[0]||(e[0]=l=>d.withdrawalNo=l),placeholder:"请输入提现单号",clearable:"",onKeyup:ge(q,["enter"])},null,8,["modelValue"])]),_:1}),t(y,{label:"用户ID"},{default:a(()=>[t(I,{modelValue:d.userId,"onUpdate:modelValue":e[1]||(e[1]=l=>d.userId=l),modelModifiers:{number:!0},placeholder:"请输入用户ID",clearable:""},null,8,["modelValue"])]),_:1}),t(y,{label:"状态"},{default:a(()=>[t(ye,{modelValue:d.status,"onUpdate:modelValue":e[2]||(e[2]=l=>d.status=l),"dict-type":"withdrawal_status",placeholder:"请选择状态",clearable:""},null,8,["modelValue"])]),_:1}),t(y,{label:"创建时间"},{default:a(()=>[t(ue,{modelValue:S.value,"onUpdate:modelValue":e[3]||(e[3]=l=>S.value=l),type:"daterange","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期","value-format":"YYYY-MM-DD",onChange:X},null,8,["modelValue"])]),_:1}),t(y,null,{default:a(()=>[t(r,{type:"primary",onClick:q},{default:a(()=>[t(x,null,{default:a(()=>[t(W(ke))]),_:1}),e[15]||(e[15]=n("搜索",-1))]),_:1}),t(r,{onClick:Z},{default:a(()=>[t(x,null,{default:a(()=>[t(W(we))]),_:1}),e[16]||(e[16]=n("重置",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),t(O,{class:"table-card",shadow:"never"},{default:a(()=>[C((u(),f(re,{data:M.value,"row-key":"id"},{default:a(()=>[t(_,{prop:"withdrawalNo",label:"提现单号",width:"180"}),t(_,{label:"用户信息","min-width":"130"},{default:a(({row:l})=>[v("div",null,i(l.userNickname),1),v("div",Fe,i(l.userPhone),1)]),_:1}),t(_,{prop:"amount",label:"金额",width:"100",align:"right"},{default:a(({row:l})=>[v("span",De,"¥"+i(l.amount.toFixed(2)),1)]),_:1}),t(_,{label:"余额变更",width:"150"},{default:a(({row:l})=>[v("div",null,"变更前: ¥"+i(l.beforeBalance.toFixed(2)),1),v("div",null,"变更后: ¥"+i(l.afterBalance.toFixed(2)),1)]),_:1}),t(_,{label:"状态",width:"100",align:"center"},{default:a(({row:l})=>[t(A,{type:Y(l.status)},{default:a(()=>[n(i(l.statusName),1)]),_:2},1032,["type"])]),_:1}),t(_,{label:"审核信息","min-width":"150"},{default:a(({row:l})=>[l.auditUserId?(u(),T(J,{key:0},[v("div",null,i(l.auditUserName),1),v("div",Be,i(l.auditTime),1),l.auditRemark?(u(),T("div",je,i(l.auditRemark),1)):b("",!0)],64)):(u(),T("span",ze,"-"))]),_:1}),t(_,{prop:"payTime",label:"打款时间",width:"170"},{default:a(({row:l})=>[n(i(l.payTime||"-"),1)]),_:1}),t(_,{prop:"createTime",label:"创建时间",width:"170"}),t(_,{label:"操作",width:"200",fixed:"right"},{default:a(({row:l})=>[t(r,{link:"",type:"primary",onClick:$=>te(l)},{default:a(()=>[...e[17]||(e[17]=[n("详情",-1)])]),_:1},8,["onClick"]),l.status===1?(u(),T(J,{key:0},[C((u(),f(r,{link:"",type:"success",onClick:$=>le(l)},{default:a(()=>[...e[18]||(e[18]=[n("通过",-1)])]),_:1},8,["onClick"])),[[U,"distribution:update"]]),C((u(),f(r,{link:"",type:"danger",onClick:$=>oe(l)},{default:a(()=>[...e[19]||(e[19]=[n("拒绝",-1)])]),_:1},8,["onClick"])),[[U,"distribution:update"]])],64)):b("",!0),l.status===2?C((u(),f(r,{key:1,link:"",type:"warning",onClick:$=>de(l)},{default:a(()=>[...e[20]||(e[20]=[n("完成打款",-1)])]),_:1},8,["onClick"])),[[U,"distribution:update"]]):b("",!0)]),_:1})]),_:1},8,["data"])),[[fe,N.value]]),v("div",Ee,[t(pe,{"current-page":d.page,"onUpdate:currentPage":e[4]||(e[4]=l=>d.page=l),"page-size":d.pageSize,"onUpdate:pageSize":e[5]||(e[5]=l=>d.pageSize=l),"page-sizes":[10,20,50,100],total:P.value,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:ee,onCurrentChange:ae},null,8,["current-page","page-size","total"])])]),_:1}),t(me,{modelValue:F.value,"onUpdate:modelValue":e[6]||(e[6]=l=>F.value=l),title:"提现详情",size:"500px"},{default:a(()=>[s.value?(u(),f(ce,{key:0,column:1,border:""},{default:a(()=>[t(p,{label:"提现单号"},{default:a(()=>[n(i(s.value.withdrawalNo),1)]),_:1}),t(p,{label:"用户"},{default:a(()=>[n(i(s.value.userNickname)+" ("+i(s.value.userPhone)+")",1)]),_:1}),t(p,{label:"提现金额"},{default:a(()=>[n("¥"+i(s.value.amount.toFixed(2)),1)]),_:1}),t(p,{label:"变更前余额"},{default:a(()=>[n("¥"+i(s.value.beforeBalance.toFixed(2)),1)]),_:1}),t(p,{label:"变更后余额"},{default:a(()=>[n("¥"+i(s.value.afterBalance.toFixed(2)),1)]),_:1}),t(p,{label:"当前余额"},{default:a(()=>[n("¥"+i(s.value.userBalance.toFixed(2)),1)]),_:1}),t(p,{label:"累计收入"},{default:a(()=>[n("¥"+i(s.value.userTotalIncome.toFixed(2)),1)]),_:1}),t(p,{label:"已提现金额"},{default:a(()=>[n("¥"+i(s.value.userWithdrawnAmount.toFixed(2)),1)]),_:1}),t(p,{label:"状态"},{default:a(()=>[t(A,{type:Y(s.value.status)},{default:a(()=>[n(i(s.value.statusName),1)]),_:1},8,["type"])]),_:1}),s.value.auditUserId?(u(),f(p,{key:0,label:"审核人"},{default:a(()=>[n(i(s.value.auditUserName),1)]),_:1})):b("",!0),s.value.auditTime?(u(),f(p,{key:1,label:"审核时间"},{default:a(()=>[n(i(s.value.auditTime),1)]),_:1})):b("",!0),s.value.auditRemark?(u(),f(p,{key:2,label:"审核备注"},{default:a(()=>[n(i(s.value.auditRemark),1)]),_:1})):b("",!0),s.value.payTime?(u(),f(p,{key:3,label:"打款时间"},{default:a(()=>[n(i(s.value.payTime),1)]),_:1})):b("",!0),s.value.payTransactionId?(u(),f(p,{key:4,label:"交易流水号"},{default:a(()=>[n(i(s.value.payTransactionId),1)]),_:1})):b("",!0),t(p,{label:"创建时间"},{default:a(()=>[n(i(s.value.createTime),1)]),_:1})]),_:1})):b("",!0)]),_:1},8,["modelValue"]),t(K,{modelValue:V.value,"onUpdate:modelValue":e[9]||(e[9]=l=>V.value=l),title:"拒绝提现",width:"400px"},{footer:a(()=>[t(r,{onClick:e[8]||(e[8]=l=>V.value=!1)},{default:a(()=>[...e[21]||(e[21]=[n("取消",-1)])]),_:1}),t(r,{type:"danger",loading:D.value,onClick:ne},{default:a(()=>[...e[22]||(e[22]=[n("确定拒绝",-1)])]),_:1},8,["loading"])]),default:a(()=>[t(E,{model:k,rules:H,ref_key:"rejectFormRef",ref:B,"label-width":"80px"},{default:a(()=>[t(y,{label:"拒绝原因",prop:"auditRemark"},{default:a(()=>[t(I,{modelValue:k.auditRemark,"onUpdate:modelValue":e[7]||(e[7]=l=>k.auditRemark=l),type:"textarea",rows:3,placeholder:"请输入拒绝原因"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),t(K,{modelValue:h.value,"onUpdate:modelValue":e[12]||(e[12]=l=>h.value=l),title:"完成打款",width:"400px"},{footer:a(()=>[t(r,{onClick:e[11]||(e[11]=l=>h.value=!1)},{default:a(()=>[...e[23]||(e[23]=[n("取消",-1)])]),_:1}),t(r,{type:"primary",loading:j.value,onClick:ie},{default:a(()=>[...e[24]||(e[24]=[n("确定",-1)])]),_:1},8,["loading"])]),default:a(()=>[t(E,{model:w,rules:Q,ref_key:"completeFormRef",ref:z,"label-width":"100px"},{default:a(()=>[t(y,{label:"交易流水号",prop:"payTransactionId"},{default:a(()=>[t(I,{modelValue:w.payTransactionId,"onUpdate:modelValue":e[10]||(e[10]=l=>w.payTransactionId=l),placeholder:"请输入交易流水号"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"])])}}}),Pe=Ve($e,[["__scopeId","data-v-ab8cbd02"]]);export{Pe as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-C_dKwPCW.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BRKpij3O.js similarity index 72% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-C_dKwPCW.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BRKpij3O.js index 8b6a367..32c8814 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-C_dKwPCW.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BRKpij3O.js @@ -1 +1 @@ -import{d as Re,r as i,a as Q,v as W,o as Se,g as d,B as X,c as M,k as c,e as l,w as a,C,f as Ue,t as u,z as b,x as w,b as v,l as ze,D as Me,F as Y,y as Z,E as U,S as De,ap as Pe,_ as $e}from"./index-CIT-S3uf.js";import{g as Ee,u as Oe,c as Ie,d as Ae,a as Be,b as Le,e as Te,f as Ge}from"./role-9_FTeI72.js";import{a as Fe}from"./permission-Rx3_ZX_n.js";const Ne={class:"page-container"},qe={class:"card-header"},Ke={class:"permission-dialog-content"},je={class:"group-header"},He={class:"group-title"},Je={class:"group-count"},Qe={class:"group-items"},We={class:"perm-name"},Xe={class:"perm-code"},Ye=Re({__name:"index",setup(Ze){const D=i(!1),L=i([]),T=i(0),p=Q({keyword:"",status:void 0,page:1,pageSize:10}),k=i(!1),x=i(!1),ee=W(()=>x.value?"编辑角色":"新增角色"),P=i(),$=i(!1),s=Q({id:0,name:"",code:"",description:"",sortOrder:0,status:1}),le={name:[{required:!0,message:"请输入角色名称",trigger:"blur"}],code:[{required:!0,message:"请输入角色编码",trigger:"blur"},{pattern:/^[a-z_]+$/,message:"只能包含小写字母和下划线",trigger:"blur"}]},h=i(!1),G=i(),E=i([]),F=i([]),z=i(0),O=i(!1),R=i(!1),I=i([]),m=i([]),A=i(!1),te=W(()=>{const o=[],e=new Map;return I.value.forEach(r=>{const n=r.module||"其他";e.has(n)||e.set(n,[]),e.get(n).push(r)}),e.forEach((r,n)=>{o.push({name:n,permissions:r})}),o}),_=async()=>{D.value=!0;try{const o=await Ee(p);L.value=o.data.list,T.value=o.data.total}finally{D.value=!1}},N=()=>{p.page=1,_()},ae=()=>{p.keyword="",p.status=void 0,p.page=1,_()},q=()=>{var o;s.id=0,s.name="",s.code="",s.description="",s.sortOrder=0,s.status=1,(o=P.value)==null||o.resetFields()},oe=()=>{x.value=!1,q(),k.value=!0},se=o=>{x.value=!0,s.id=o.id,s.name=o.name,s.code=o.code,s.description=o.description||"",s.sortOrder=o.sortOrder,s.status=o.status,k.value=!0},ne=async()=>{var e;if(await((e=P.value)==null?void 0:e.validate())){$.value=!0;try{x.value?(await Oe(s.id,s),U.success("更新成功")):(await Ie(s),U.success("创建成功")),k.value=!1,_()}finally{$.value=!1}}},de=async o=>{try{await De.confirm(`确定要删除角色 "${o.name}" 吗?`,"提示",{type:"warning"}),await Ae(o.id),U.success("删除成功"),_()}catch{}},ie=async o=>{if(z.value=o.id,E.value.length===0){const r=await Pe();E.value=r.data}const e=await Be(o.id);F.value=e.data,h.value=!0},ue=async()=>{var o;O.value=!0;try{const e=(o=G.value)==null?void 0:o.getCheckedKeys(!1);await Le({roleId:z.value,menuIds:e}),U.success("分配成功"),h.value=!1}finally{O.value=!1}},re=async o=>{if(z.value=o.id,I.value.length===0){const r=await Fe();I.value=r.data}const e=await Te(o.id);m.value=e.data,R.value=!0},pe=async()=>{A.value=!0;try{await Ge({roleId:z.value,permissionCodes:m.value}),U.success("分配成功"),R.value=!1}finally{A.value=!1}},me=o=>o.permissions.every(e=>m.value.includes(e.code)),ce=o=>{const e=o.permissions.filter(r=>m.value.includes(r.code)).length;return e>0&&eo.permissions.filter(e=>m.value.includes(e.code)).length,ve=(o,e)=>{const r=o.permissions.map(n=>n.code);if(e){const n=r.filter(V=>!m.value.includes(V));m.value=[...m.value,...n]}else m.value=m.value.filter(n=>!r.includes(n))};return Se(()=>{_()}),(o,e)=>{const r=d("el-icon"),n=d("el-button"),V=d("el-input"),g=d("el-form-item"),K=d("el-option"),ge=d("el-select"),j=d("el-form"),y=d("el-table-column"),_e=d("el-tag"),ye=d("el-table"),be=d("el-pagination"),ke=d("el-card"),Ve=d("el-input-number"),H=d("el-radio"),Ce=d("el-radio-group"),B=d("el-dialog"),we=d("el-tree"),J=d("el-checkbox"),xe=d("el-checkbox-group"),S=X("permission"),he=X("loading");return c(),M("div",Ne,[l(ke,null,{header:a(()=>[v("div",qe,[e[17]||(e[17]=v("span",null,"角色管理",-1)),C((c(),b(n,{type:"primary",onClick:oe},{default:a(()=>[l(r,null,{default:a(()=>[l(ze(Me))]),_:1}),e[16]||(e[16]=u("新增角色 ",-1))]),_:1})),[[S,"system:role:add"]])])]),default:a(()=>[l(j,{inline:!0,model:p,class:"search-form"},{default:a(()=>[l(g,{label:"关键词"},{default:a(()=>[l(V,{modelValue:p.keyword,"onUpdate:modelValue":e[0]||(e[0]=t=>p.keyword=t),placeholder:"角色名称/编码",clearable:"",onKeyup:Ue(N,["enter"])},null,8,["modelValue"])]),_:1}),l(g,{label:"状态"},{default:a(()=>[l(ge,{modelValue:p.status,"onUpdate:modelValue":e[1]||(e[1]=t=>p.status=t),placeholder:"全部",clearable:""},{default:a(()=>[l(K,{label:"启用",value:1}),l(K,{label:"禁用",value:0})]),_:1},8,["modelValue"])]),_:1}),l(g,null,{default:a(()=>[l(n,{type:"primary",onClick:N},{default:a(()=>[...e[18]||(e[18]=[u("查询",-1)])]),_:1}),l(n,{onClick:ae},{default:a(()=>[...e[19]||(e[19]=[u("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"]),C((c(),b(ye,{data:L.value},{default:a(()=>[l(y,{prop:"name",label:"角色名称","min-width":"120"}),l(y,{prop:"code",label:"角色编码","min-width":"120"}),l(y,{prop:"description",label:"描述","min-width":"180","show-overflow-tooltip":""}),l(y,{prop:"sortOrder",label:"排序",width:"80"}),l(y,{prop:"status",label:"状态",width:"80"},{default:a(({row:t})=>[l(_e,{type:t.status===1?"success":"danger"},{default:a(()=>[u(w(t.status===1?"启用":"禁用"),1)]),_:2},1032,["type"])]),_:1}),l(y,{prop:"createdAt",label:"创建时间",width:"170"}),l(y,{label:"操作",width:"280",fixed:"right"},{default:a(({row:t})=>[C((c(),b(n,{link:"",type:"primary",onClick:f=>se(t)},{default:a(()=>[...e[20]||(e[20]=[u("编辑",-1)])]),_:1},8,["onClick"])),[[S,"system:role:edit"]]),C((c(),b(n,{link:"",type:"primary",onClick:f=>ie(t)},{default:a(()=>[...e[21]||(e[21]=[u("分配菜单",-1)])]),_:1},8,["onClick"])),[[S,"system:role:edit"]]),C((c(),b(n,{link:"",type:"primary",onClick:f=>re(t)},{default:a(()=>[...e[22]||(e[22]=[u("分配权限",-1)])]),_:1},8,["onClick"])),[[S,"system:role:edit"]]),C((c(),b(n,{link:"",type:"danger",onClick:f=>de(t),disabled:t.code==="super_admin"},{default:a(()=>[...e[23]||(e[23]=[u("删除",-1)])]),_:1},8,["onClick","disabled"])),[[S,"system:role:delete"]])]),_:1})]),_:1},8,["data"])),[[he,D.value]]),l(be,{"current-page":p.page,"onUpdate:currentPage":e[2]||(e[2]=t=>p.page=t),"page-size":p.pageSize,"onUpdate:pageSize":e[3]||(e[3]=t=>p.pageSize=t),"page-sizes":[10,20,50,100],total:T.value,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:_,onCurrentChange:_,class:"pagination"},null,8,["current-page","page-size","total"])]),_:1}),l(B,{modelValue:k.value,"onUpdate:modelValue":e[10]||(e[10]=t=>k.value=t),title:ee.value,width:"500px",onClose:q},{footer:a(()=>[l(n,{onClick:e[9]||(e[9]=t=>k.value=!1)},{default:a(()=>[...e[26]||(e[26]=[u("取消",-1)])]),_:1}),l(n,{type:"primary",onClick:ne,loading:$.value},{default:a(()=>[...e[27]||(e[27]=[u("确定",-1)])]),_:1},8,["loading"])]),default:a(()=>[l(j,{ref_key:"formRef",ref:P,model:s,rules:le,"label-width":"80px"},{default:a(()=>[l(g,{label:"角色名称",prop:"name"},{default:a(()=>[l(V,{modelValue:s.name,"onUpdate:modelValue":e[4]||(e[4]=t=>s.name=t),placeholder:"请输入角色名称"},null,8,["modelValue"])]),_:1}),l(g,{label:"角色编码",prop:"code"},{default:a(()=>[l(V,{modelValue:s.code,"onUpdate:modelValue":e[5]||(e[5]=t=>s.code=t),placeholder:"请输入角色编码",disabled:x.value},null,8,["modelValue","disabled"])]),_:1}),l(g,{label:"描述",prop:"description"},{default:a(()=>[l(V,{modelValue:s.description,"onUpdate:modelValue":e[6]||(e[6]=t=>s.description=t),type:"textarea",rows:3,placeholder:"请输入描述"},null,8,["modelValue"])]),_:1}),l(g,{label:"排序",prop:"sortOrder"},{default:a(()=>[l(Ve,{modelValue:s.sortOrder,"onUpdate:modelValue":e[7]||(e[7]=t=>s.sortOrder=t),min:0,max:9999},null,8,["modelValue"])]),_:1}),l(g,{label:"状态",prop:"status"},{default:a(()=>[l(Ce,{modelValue:s.status,"onUpdate:modelValue":e[8]||(e[8]=t=>s.status=t)},{default:a(()=>[l(H,{value:1},{default:a(()=>[...e[24]||(e[24]=[u("启用",-1)])]),_:1}),l(H,{value:0},{default:a(()=>[...e[25]||(e[25]=[u("禁用",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"]),l(B,{modelValue:h.value,"onUpdate:modelValue":e[12]||(e[12]=t=>h.value=t),title:"分配菜单",width:"500px"},{footer:a(()=>[l(n,{onClick:e[11]||(e[11]=t=>h.value=!1)},{default:a(()=>[...e[28]||(e[28]=[u("取消",-1)])]),_:1}),l(n,{type:"primary",onClick:ue,loading:O.value},{default:a(()=>[...e[29]||(e[29]=[u("确定",-1)])]),_:1},8,["loading"])]),default:a(()=>[l(we,{ref_key:"menuTreeRef",ref:G,data:E.value,props:{label:"name",children:"children"},"show-checkbox":"","node-key":"id","default-checked-keys":F.value,"check-strictly":!0},null,8,["data","default-checked-keys"])]),_:1},8,["modelValue"]),l(B,{modelValue:R.value,"onUpdate:modelValue":e[15]||(e[15]=t=>R.value=t),title:"分配权限",width:"700px"},{footer:a(()=>[l(n,{onClick:e[14]||(e[14]=t=>R.value=!1)},{default:a(()=>[...e[30]||(e[30]=[u("取消",-1)])]),_:1}),l(n,{type:"primary",onClick:pe,loading:A.value},{default:a(()=>[...e[31]||(e[31]=[u("确定",-1)])]),_:1},8,["loading"])]),default:a(()=>[v("div",Ke,[l(xe,{modelValue:m.value,"onUpdate:modelValue":e[13]||(e[13]=t=>m.value=t)},{default:a(()=>[(c(!0),M(Y,null,Z(te.value,t=>(c(),M("div",{key:t.name,class:"permission-group"},[v("div",je,[l(J,{indeterminate:ce(t),"model-value":me(t),onChange:f=>ve(t,f)},{default:a(()=>[v("span",He,w(t.name),1),v("span",Je,"("+w(fe(t))+"/"+w(t.permissions.length)+")",1)]),_:2},1032,["indeterminate","model-value","onChange"])]),v("div",Qe,[(c(!0),M(Y,null,Z(t.permissions,f=>(c(),b(J,{key:f.code,value:f.code},{default:a(()=>[v("span",We,w(f.name),1),v("span",Xe,"("+w(f.code)+")",1)]),_:2},1032,["value"]))),128))])]))),128))]),_:1},8,["modelValue"])])]),_:1},8,["modelValue"])])}}}),al=$e(Ye,[["__scopeId","data-v-bb14cc76"]]);export{al as default}; +import{d as Re,r as i,a as Q,v as W,o as Ue,g as d,B as X,c as M,k as c,e as l,w as a,C,f as Se,t as u,z as b,x as w,b as v,l as ze,D as Me,F as Y,y as Z,E as S,T as De,aq as Pe,_ as $e}from"./index-D3kwcp-p.js";import{g as Ee,u as Oe,c as Ie,d as Te,a as Ae,b as Be,e as Le,f as Ge}from"./role-CQMzC95A.js";import{a as qe}from"./permission-CG5y9yNg.js";const Fe={class:"page-container"},Ne={class:"card-header"},Ke={class:"permission-dialog-content"},je={class:"group-header"},He={class:"group-title"},Je={class:"group-count"},Qe={class:"group-items"},We={class:"perm-name"},Xe={class:"perm-code"},Ye=Re({__name:"index",setup(Ze){const D=i(!1),B=i([]),L=i(0),p=Q({keyword:"",status:void 0,page:1,pageSize:10}),k=i(!1),x=i(!1),ee=W(()=>x.value?"编辑角色":"新增角色"),P=i(),$=i(!1),s=Q({id:0,name:"",code:"",description:"",sortOrder:0,status:1}),le={name:[{required:!0,message:"请输入角色名称",trigger:"blur"}],code:[{required:!0,message:"请输入角色编码",trigger:"blur"},{pattern:/^[a-z_]+$/,message:"只能包含小写字母和下划线",trigger:"blur"}]},h=i(!1),G=i(),E=i([]),q=i([]),z=i(0),O=i(!1),R=i(!1),I=i([]),m=i([]),T=i(!1),te=W(()=>{const o=[],e=new Map;return I.value.forEach(r=>{const n=r.module||"其他";e.has(n)||e.set(n,[]),e.get(n).push(r)}),e.forEach((r,n)=>{o.push({name:n,permissions:r})}),o}),_=async()=>{D.value=!0;try{const o=await Ee(p);B.value=o.data.list,L.value=o.data.total}finally{D.value=!1}},F=()=>{p.page=1,_()},ae=()=>{p.keyword="",p.status=void 0,p.page=1,_()},N=()=>{var o;s.id=0,s.name="",s.code="",s.description="",s.sortOrder=0,s.status=1,(o=P.value)==null||o.resetFields()},oe=()=>{x.value=!1,N(),k.value=!0},se=o=>{x.value=!0,s.id=o.id,s.name=o.name,s.code=o.code,s.description=o.description||"",s.sortOrder=o.sortOrder,s.status=o.status,k.value=!0},ne=async()=>{var e;if(await((e=P.value)==null?void 0:e.validate())){$.value=!0;try{x.value?(await Oe(s.id,s),S.success("更新成功")):(await Ie(s),S.success("创建成功")),k.value=!1,_()}finally{$.value=!1}}},de=async o=>{try{await De.confirm(`确定要删除角色 "${o.name}" 吗?`,"提示",{type:"warning"}),await Te(o.id),S.success("删除成功"),_()}catch{}},ie=async o=>{if(z.value=o.id,E.value.length===0){const r=await Pe();E.value=r.data}const e=await Ae(o.id);q.value=e.data,h.value=!0},ue=async()=>{var o;O.value=!0;try{const e=(o=G.value)==null?void 0:o.getCheckedKeys(!1);await Be({roleId:z.value,menuIds:e}),S.success("分配成功"),h.value=!1}finally{O.value=!1}},re=async o=>{if(z.value=o.id,I.value.length===0){const r=await qe();I.value=r.data}const e=await Le(o.id);m.value=e.data,R.value=!0},pe=async()=>{T.value=!0;try{await Ge({roleId:z.value,permissionCodes:m.value}),S.success("分配成功"),R.value=!1}finally{T.value=!1}},me=o=>o.permissions.every(e=>m.value.includes(e.code)),ce=o=>{const e=o.permissions.filter(r=>m.value.includes(r.code)).length;return e>0&&eo.permissions.filter(e=>m.value.includes(e.code)).length,ve=(o,e)=>{const r=o.permissions.map(n=>n.code);if(e){const n=r.filter(V=>!m.value.includes(V));m.value=[...m.value,...n]}else m.value=m.value.filter(n=>!r.includes(n))};return Ue(()=>{_()}),(o,e)=>{const r=d("el-icon"),n=d("el-button"),V=d("el-input"),g=d("el-form-item"),K=d("el-option"),ge=d("el-select"),j=d("el-form"),y=d("el-table-column"),_e=d("el-tag"),ye=d("el-table"),be=d("el-pagination"),ke=d("el-card"),Ve=d("el-input-number"),H=d("el-radio"),Ce=d("el-radio-group"),A=d("el-dialog"),we=d("el-tree"),J=d("el-checkbox"),xe=d("el-checkbox-group"),U=X("permission"),he=X("loading");return c(),M("div",Fe,[l(ke,null,{header:a(()=>[v("div",Ne,[e[17]||(e[17]=v("span",null,"角色管理",-1)),C((c(),b(n,{type:"primary",onClick:oe},{default:a(()=>[l(r,null,{default:a(()=>[l(ze(Me))]),_:1}),e[16]||(e[16]=u("新增角色 ",-1))]),_:1})),[[U,"system:role:add"]])])]),default:a(()=>[l(j,{inline:!0,model:p,class:"search-form"},{default:a(()=>[l(g,{label:"关键词"},{default:a(()=>[l(V,{modelValue:p.keyword,"onUpdate:modelValue":e[0]||(e[0]=t=>p.keyword=t),placeholder:"角色名称/编码",clearable:"",onKeyup:Se(F,["enter"])},null,8,["modelValue"])]),_:1}),l(g,{label:"状态"},{default:a(()=>[l(ge,{modelValue:p.status,"onUpdate:modelValue":e[1]||(e[1]=t=>p.status=t),placeholder:"全部",clearable:""},{default:a(()=>[l(K,{label:"启用",value:1}),l(K,{label:"禁用",value:0})]),_:1},8,["modelValue"])]),_:1}),l(g,null,{default:a(()=>[l(n,{type:"primary",onClick:F},{default:a(()=>[...e[18]||(e[18]=[u("查询",-1)])]),_:1}),l(n,{onClick:ae},{default:a(()=>[...e[19]||(e[19]=[u("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"]),C((c(),b(ye,{data:B.value},{default:a(()=>[l(y,{prop:"name",label:"角色名称","min-width":"120"}),l(y,{prop:"code",label:"角色编码","min-width":"120"}),l(y,{prop:"description",label:"描述","min-width":"180","show-overflow-tooltip":""}),l(y,{prop:"sortOrder",label:"排序",width:"80"}),l(y,{prop:"status",label:"状态",width:"80"},{default:a(({row:t})=>[l(_e,{type:t.status===1?"success":"danger"},{default:a(()=>[u(w(t.status===1?"启用":"禁用"),1)]),_:2},1032,["type"])]),_:1}),l(y,{prop:"createdAt",label:"创建时间",width:"170"}),l(y,{label:"操作",width:"280",fixed:"right"},{default:a(({row:t})=>[C((c(),b(n,{link:"",type:"primary",onClick:f=>se(t)},{default:a(()=>[...e[20]||(e[20]=[u("编辑",-1)])]),_:1},8,["onClick"])),[[U,"system:role:edit"]]),C((c(),b(n,{link:"",type:"primary",onClick:f=>ie(t)},{default:a(()=>[...e[21]||(e[21]=[u("分配菜单",-1)])]),_:1},8,["onClick"])),[[U,"system:role:edit"]]),C((c(),b(n,{link:"",type:"primary",onClick:f=>re(t)},{default:a(()=>[...e[22]||(e[22]=[u("分配权限",-1)])]),_:1},8,["onClick"])),[[U,"system:role:edit"]]),C((c(),b(n,{link:"",type:"danger",onClick:f=>de(t),disabled:t.code==="super_admin"},{default:a(()=>[...e[23]||(e[23]=[u("删除",-1)])]),_:1},8,["onClick","disabled"])),[[U,"system:role:delete"]])]),_:1})]),_:1},8,["data"])),[[he,D.value]]),l(be,{"current-page":p.page,"onUpdate:currentPage":e[2]||(e[2]=t=>p.page=t),"page-size":p.pageSize,"onUpdate:pageSize":e[3]||(e[3]=t=>p.pageSize=t),"page-sizes":[10,20,50,100],total:L.value,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:_,onCurrentChange:_,class:"pagination"},null,8,["current-page","page-size","total"])]),_:1}),l(A,{modelValue:k.value,"onUpdate:modelValue":e[10]||(e[10]=t=>k.value=t),title:ee.value,width:"500px",onClose:N},{footer:a(()=>[l(n,{onClick:e[9]||(e[9]=t=>k.value=!1)},{default:a(()=>[...e[26]||(e[26]=[u("取消",-1)])]),_:1}),l(n,{type:"primary",onClick:ne,loading:$.value},{default:a(()=>[...e[27]||(e[27]=[u("确定",-1)])]),_:1},8,["loading"])]),default:a(()=>[l(j,{ref_key:"formRef",ref:P,model:s,rules:le,"label-width":"80px"},{default:a(()=>[l(g,{label:"角色名称",prop:"name"},{default:a(()=>[l(V,{modelValue:s.name,"onUpdate:modelValue":e[4]||(e[4]=t=>s.name=t),placeholder:"请输入角色名称"},null,8,["modelValue"])]),_:1}),l(g,{label:"角色编码",prop:"code"},{default:a(()=>[l(V,{modelValue:s.code,"onUpdate:modelValue":e[5]||(e[5]=t=>s.code=t),placeholder:"请输入角色编码",disabled:x.value},null,8,["modelValue","disabled"])]),_:1}),l(g,{label:"描述",prop:"description"},{default:a(()=>[l(V,{modelValue:s.description,"onUpdate:modelValue":e[6]||(e[6]=t=>s.description=t),type:"textarea",rows:3,placeholder:"请输入描述"},null,8,["modelValue"])]),_:1}),l(g,{label:"排序",prop:"sortOrder"},{default:a(()=>[l(Ve,{modelValue:s.sortOrder,"onUpdate:modelValue":e[7]||(e[7]=t=>s.sortOrder=t),min:0,max:9999},null,8,["modelValue"])]),_:1}),l(g,{label:"状态",prop:"status"},{default:a(()=>[l(Ce,{modelValue:s.status,"onUpdate:modelValue":e[8]||(e[8]=t=>s.status=t)},{default:a(()=>[l(H,{value:1},{default:a(()=>[...e[24]||(e[24]=[u("启用",-1)])]),_:1}),l(H,{value:0},{default:a(()=>[...e[25]||(e[25]=[u("禁用",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"]),l(A,{modelValue:h.value,"onUpdate:modelValue":e[12]||(e[12]=t=>h.value=t),title:"分配菜单",width:"500px"},{footer:a(()=>[l(n,{onClick:e[11]||(e[11]=t=>h.value=!1)},{default:a(()=>[...e[28]||(e[28]=[u("取消",-1)])]),_:1}),l(n,{type:"primary",onClick:ue,loading:O.value},{default:a(()=>[...e[29]||(e[29]=[u("确定",-1)])]),_:1},8,["loading"])]),default:a(()=>[l(we,{ref_key:"menuTreeRef",ref:G,data:E.value,props:{label:"name",children:"children"},"show-checkbox":"","node-key":"id","default-checked-keys":q.value,"check-strictly":!0},null,8,["data","default-checked-keys"])]),_:1},8,["modelValue"]),l(A,{modelValue:R.value,"onUpdate:modelValue":e[15]||(e[15]=t=>R.value=t),title:"分配权限",width:"700px"},{footer:a(()=>[l(n,{onClick:e[14]||(e[14]=t=>R.value=!1)},{default:a(()=>[...e[30]||(e[30]=[u("取消",-1)])]),_:1}),l(n,{type:"primary",onClick:pe,loading:T.value},{default:a(()=>[...e[31]||(e[31]=[u("确定",-1)])]),_:1},8,["loading"])]),default:a(()=>[v("div",Ke,[l(xe,{modelValue:m.value,"onUpdate:modelValue":e[13]||(e[13]=t=>m.value=t)},{default:a(()=>[(c(!0),M(Y,null,Z(te.value,t=>(c(),M("div",{key:t.name,class:"permission-group"},[v("div",je,[l(J,{indeterminate:ce(t),"model-value":me(t),onChange:f=>ve(t,f)},{default:a(()=>[v("span",He,w(t.name),1),v("span",Je,"("+w(fe(t))+"/"+w(t.permissions.length)+")",1)]),_:2},1032,["indeterminate","model-value","onChange"])]),v("div",Qe,[(c(!0),M(Y,null,Z(t.permissions,f=>(c(),b(J,{key:f.code,value:f.code},{default:a(()=>[v("span",We,w(f.name),1),v("span",Xe,"("+w(f.code)+")",1)]),_:2},1032,["value"]))),128))])]))),128))]),_:1},8,["modelValue"])])]),_:1},8,["modelValue"])])}}}),al=$e(Ye,[["__scopeId","data-v-bb14cc76"]]);export{al as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-ufppKyHG.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BWmhfX7j.js similarity index 83% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-ufppKyHG.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BWmhfX7j.js index 70af9b0..d8321cd 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-ufppKyHG.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BWmhfX7j.js @@ -1 +1 @@ -import{d as de,r as p,a as A,v as E,o as ie,g as s,B as K,c as g,k as d,e as l,w as t,C as V,f as ue,F as L,y as M,z as f,t as m,G as re,b as O,x as T,l as me,D as ce,E as P,S as pe,_ as fe}from"./index-CIT-S3uf.js";import{g as _e,u as ve,c as ye,d as be}from"./permission-Rx3_ZX_n.js";const ge={class:"page-container"},ke={class:"card-header"},Ve={class:"module-title"},we=de({__name:"index",setup(Ce){const w=p(!1),k=p({}),v=p([]),i=A({keyword:"",module:""}),$=E(()=>Object.keys(k.value)),C=E(()=>{const n={};for(const[e,D]of Object.entries(k.value)){if(i.module&&e!==i.module)continue;const u=D.filter(c=>{if(!i.keyword)return!0;const r=i.keyword.toLowerCase();return c.name.toLowerCase().includes(r)||c.code.toLowerCase().includes(r)});u.length>0&&(n[e]=u)}return n}),_=p(!1),y=p(!1),G=E(()=>y.value?"编辑权限":"新增权限"),x=p(),B=p(!1),o=A({id:0,code:"",name:"",module:"",description:""}),I={code:[{required:!0,message:"请输入权限编码",trigger:"blur"},{pattern:/^[a-z_:]+$/,message:"只能包含小写字母、下划线和冒号",trigger:"blur"}],name:[{required:!0,message:"请输入权限名称",trigger:"blur"}]},U=async()=>{w.value=!0;try{const n=await _e();k.value=n.data,v.value=Object.keys(n.data)}finally{w.value=!1}},z=()=>{v.value=Object.keys(C.value)},H=()=>{i.keyword="",i.module="",v.value=Object.keys(k.value)},F=()=>{var n;o.id=0,o.code="",o.name="",o.module="",o.description="",(n=x.value)==null||n.resetFields()},J=()=>{y.value=!1,F(),_.value=!0},Q=n=>{y.value=!0,o.id=n.id,o.code=n.code,o.name=n.name,o.module=n.module||"",o.description=n.description||"",_.value=!0},W=async()=>{var e;if(await((e=x.value)==null?void 0:e.validate())){B.value=!0;try{y.value?(await ve(o.id,{name:o.name,module:o.module||void 0,description:o.description||void 0}),P.success("更新成功")):(await ye({code:o.code,name:o.name,module:o.module||void 0,description:o.description||void 0}),P.success("创建成功")),_.value=!1,U()}finally{B.value=!1}}},X=async n=>{try{await pe.confirm(`确定要删除权限 "${n.name}" 吗?删除后相关角色将失去此权限。`,"提示",{type:"warning"}),await be(n.id),P.success("删除成功"),U()}catch{}};return ie(()=>{U()}),(n,e)=>{const D=s("el-icon"),u=s("el-button"),c=s("el-input"),r=s("el-form-item"),R=s("el-option"),S=s("el-select"),q=s("el-form"),Y=s("el-tag"),b=s("el-table-column"),Z=s("el-table"),ee=s("el-collapse-item"),le=s("el-collapse"),te=s("el-empty"),oe=s("el-card"),ae=s("el-dialog"),h=K("permission"),ne=K("loading");return d(),g("div",ge,[l(oe,null,{header:t(()=>[O("div",ke,[e[10]||(e[10]=O("span",null,"权限管理",-1)),V((d(),f(u,{type:"primary",onClick:J},{default:t(()=>[l(D,null,{default:t(()=>[l(me(ce))]),_:1}),e[9]||(e[9]=m("新增权限 ",-1))]),_:1})),[[h,"system:permission:add"]])])]),default:t(()=>[l(q,{inline:!0,model:i,class:"search-form"},{default:t(()=>[l(r,{label:"关键词"},{default:t(()=>[l(c,{modelValue:i.keyword,"onUpdate:modelValue":e[0]||(e[0]=a=>i.keyword=a),placeholder:"权限名称/编码",clearable:"",onKeyup:ue(z,["enter"])},null,8,["modelValue"])]),_:1}),l(r,{label:"模块"},{default:t(()=>[l(S,{modelValue:i.module,"onUpdate:modelValue":e[1]||(e[1]=a=>i.module=a),placeholder:"全部",clearable:""},{default:t(()=>[(d(!0),g(L,null,M($.value,a=>(d(),f(R,{key:a,label:a,value:a},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),l(r,null,{default:t(()=>[l(u,{type:"primary",onClick:z},{default:t(()=>[...e[11]||(e[11]=[m("查询",-1)])]),_:1}),l(u,{onClick:H},{default:t(()=>[...e[12]||(e[12]=[m("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"]),V((d(),g("div",null,[l(le,{modelValue:v.value,"onUpdate:modelValue":e[2]||(e[2]=a=>v.value=a)},{default:t(()=>[(d(!0),g(L,null,M(C.value,(a,j)=>(d(),f(ee,{key:j,name:j},{title:t(()=>[O("span",Ve,T(j),1),l(Y,{size:"small",type:"info",class:"module-count"},{default:t(()=>[m(T(a.length),1)]),_:2},1024)]),default:t(()=>[l(Z,{data:a,"show-header":!0,size:"small"},{default:t(()=>[l(b,{prop:"code",label:"权限编码","min-width":"150"}),l(b,{prop:"name",label:"权限名称","min-width":"120"}),l(b,{prop:"description",label:"描述","min-width":"200","show-overflow-tooltip":""}),l(b,{prop:"createdAt",label:"创建时间",width:"170"}),l(b,{label:"操作",width:"150",fixed:"right"},{default:t(({row:N})=>[V((d(),f(u,{link:"",type:"primary",onClick:se=>Q(N)},{default:t(()=>[...e[13]||(e[13]=[m("编辑",-1)])]),_:1},8,["onClick"])),[[h,"system:permission:edit"]]),V((d(),f(u,{link:"",type:"danger",onClick:se=>X(N)},{default:t(()=>[...e[14]||(e[14]=[m("删除",-1)])]),_:1},8,["onClick"])),[[h,"system:permission:delete"]])]),_:1})]),_:1},8,["data"])]),_:2},1032,["name"]))),128))]),_:1},8,["modelValue"]),Object.keys(C.value).length===0?(d(),f(te,{key:0,description:"暂无数据"})):re("",!0)])),[[ne,w.value]])]),_:1}),l(ae,{modelValue:_.value,"onUpdate:modelValue":e[8]||(e[8]=a=>_.value=a),title:G.value,width:"500px",onClose:F},{footer:t(()=>[l(u,{onClick:e[7]||(e[7]=a=>_.value=!1)},{default:t(()=>[...e[15]||(e[15]=[m("取消",-1)])]),_:1}),l(u,{type:"primary",onClick:W,loading:B.value},{default:t(()=>[...e[16]||(e[16]=[m("确定",-1)])]),_:1},8,["loading"])]),default:t(()=>[l(q,{ref_key:"formRef",ref:x,model:o,rules:I,"label-width":"80px"},{default:t(()=>[l(r,{label:"权限编码",prop:"code"},{default:t(()=>[l(c,{modelValue:o.code,"onUpdate:modelValue":e[3]||(e[3]=a=>o.code=a),placeholder:"如: user:create",disabled:y.value},null,8,["modelValue","disabled"])]),_:1}),l(r,{label:"权限名称",prop:"name"},{default:t(()=>[l(c,{modelValue:o.name,"onUpdate:modelValue":e[4]||(e[4]=a=>o.name=a),placeholder:"请输入权限名称"},null,8,["modelValue"])]),_:1}),l(r,{label:"所属模块",prop:"module"},{default:t(()=>[l(S,{modelValue:o.module,"onUpdate:modelValue":e[5]||(e[5]=a=>o.module=a),placeholder:"请选择或输入模块",filterable:"","allow-create":"",clearable:"",style:{width:"100%"}},{default:t(()=>[(d(!0),g(L,null,M($.value,a=>(d(),f(R,{key:a,label:a,value:a},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),l(r,{label:"描述",prop:"description"},{default:t(()=>[l(c,{modelValue:o.description,"onUpdate:modelValue":e[6]||(e[6]=a=>o.description=a),type:"textarea",rows:3,placeholder:"请输入描述"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}}),Ue=fe(we,[["__scopeId","data-v-cae59146"]]);export{Ue as default}; +import{d as de,r as p,a as T,v as E,o as ie,g as s,B as A,c as g,k as d,e as l,w as t,C as V,f as ue,F as L,y as M,z as f,t as m,G as re,b as O,x as K,l as me,D as ce,E as P,T as pe,_ as fe}from"./index-D3kwcp-p.js";import{g as _e,u as ve,c as ye,d as be}from"./permission-CG5y9yNg.js";const ge={class:"page-container"},ke={class:"card-header"},Ve={class:"module-title"},we=de({__name:"index",setup(Ce){const w=p(!1),k=p({}),v=p([]),i=T({keyword:"",module:""}),$=E(()=>Object.keys(k.value)),C=E(()=>{const n={};for(const[e,D]of Object.entries(k.value)){if(i.module&&e!==i.module)continue;const u=D.filter(c=>{if(!i.keyword)return!0;const r=i.keyword.toLowerCase();return c.name.toLowerCase().includes(r)||c.code.toLowerCase().includes(r)});u.length>0&&(n[e]=u)}return n}),_=p(!1),y=p(!1),G=E(()=>y.value?"编辑权限":"新增权限"),x=p(),B=p(!1),o=T({id:0,code:"",name:"",module:"",description:""}),I={code:[{required:!0,message:"请输入权限编码",trigger:"blur"},{pattern:/^[a-z_:]+$/,message:"只能包含小写字母、下划线和冒号",trigger:"blur"}],name:[{required:!0,message:"请输入权限名称",trigger:"blur"}]},U=async()=>{w.value=!0;try{const n=await _e();k.value=n.data,v.value=Object.keys(n.data)}finally{w.value=!1}},z=()=>{v.value=Object.keys(C.value)},H=()=>{i.keyword="",i.module="",v.value=Object.keys(k.value)},F=()=>{var n;o.id=0,o.code="",o.name="",o.module="",o.description="",(n=x.value)==null||n.resetFields()},J=()=>{y.value=!1,F(),_.value=!0},Q=n=>{y.value=!0,o.id=n.id,o.code=n.code,o.name=n.name,o.module=n.module||"",o.description=n.description||"",_.value=!0},W=async()=>{var e;if(await((e=x.value)==null?void 0:e.validate())){B.value=!0;try{y.value?(await ve(o.id,{name:o.name,module:o.module||void 0,description:o.description||void 0}),P.success("更新成功")):(await ye({code:o.code,name:o.name,module:o.module||void 0,description:o.description||void 0}),P.success("创建成功")),_.value=!1,U()}finally{B.value=!1}}},X=async n=>{try{await pe.confirm(`确定要删除权限 "${n.name}" 吗?删除后相关角色将失去此权限。`,"提示",{type:"warning"}),await be(n.id),P.success("删除成功"),U()}catch{}};return ie(()=>{U()}),(n,e)=>{const D=s("el-icon"),u=s("el-button"),c=s("el-input"),r=s("el-form-item"),R=s("el-option"),q=s("el-select"),N=s("el-form"),Y=s("el-tag"),b=s("el-table-column"),Z=s("el-table"),ee=s("el-collapse-item"),le=s("el-collapse"),te=s("el-empty"),oe=s("el-card"),ae=s("el-dialog"),h=A("permission"),ne=A("loading");return d(),g("div",ge,[l(oe,null,{header:t(()=>[O("div",ke,[e[10]||(e[10]=O("span",null,"权限管理",-1)),V((d(),f(u,{type:"primary",onClick:J},{default:t(()=>[l(D,null,{default:t(()=>[l(me(ce))]),_:1}),e[9]||(e[9]=m("新增权限 ",-1))]),_:1})),[[h,"system:permission:add"]])])]),default:t(()=>[l(N,{inline:!0,model:i,class:"search-form"},{default:t(()=>[l(r,{label:"关键词"},{default:t(()=>[l(c,{modelValue:i.keyword,"onUpdate:modelValue":e[0]||(e[0]=a=>i.keyword=a),placeholder:"权限名称/编码",clearable:"",onKeyup:ue(z,["enter"])},null,8,["modelValue"])]),_:1}),l(r,{label:"模块"},{default:t(()=>[l(q,{modelValue:i.module,"onUpdate:modelValue":e[1]||(e[1]=a=>i.module=a),placeholder:"全部",clearable:""},{default:t(()=>[(d(!0),g(L,null,M($.value,a=>(d(),f(R,{key:a,label:a,value:a},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),l(r,null,{default:t(()=>[l(u,{type:"primary",onClick:z},{default:t(()=>[...e[11]||(e[11]=[m("查询",-1)])]),_:1}),l(u,{onClick:H},{default:t(()=>[...e[12]||(e[12]=[m("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"]),V((d(),g("div",null,[l(le,{modelValue:v.value,"onUpdate:modelValue":e[2]||(e[2]=a=>v.value=a)},{default:t(()=>[(d(!0),g(L,null,M(C.value,(a,j)=>(d(),f(ee,{key:j,name:j},{title:t(()=>[O("span",Ve,K(j),1),l(Y,{size:"small",type:"info",class:"module-count"},{default:t(()=>[m(K(a.length),1)]),_:2},1024)]),default:t(()=>[l(Z,{data:a,"show-header":!0,size:"small"},{default:t(()=>[l(b,{prop:"code",label:"权限编码","min-width":"150"}),l(b,{prop:"name",label:"权限名称","min-width":"120"}),l(b,{prop:"description",label:"描述","min-width":"200","show-overflow-tooltip":""}),l(b,{prop:"createdAt",label:"创建时间",width:"170"}),l(b,{label:"操作",width:"150",fixed:"right"},{default:t(({row:S})=>[V((d(),f(u,{link:"",type:"primary",onClick:se=>Q(S)},{default:t(()=>[...e[13]||(e[13]=[m("编辑",-1)])]),_:1},8,["onClick"])),[[h,"system:permission:edit"]]),V((d(),f(u,{link:"",type:"danger",onClick:se=>X(S)},{default:t(()=>[...e[14]||(e[14]=[m("删除",-1)])]),_:1},8,["onClick"])),[[h,"system:permission:delete"]])]),_:1})]),_:1},8,["data"])]),_:2},1032,["name"]))),128))]),_:1},8,["modelValue"]),Object.keys(C.value).length===0?(d(),f(te,{key:0,description:"暂无数据"})):re("",!0)])),[[ne,w.value]])]),_:1}),l(ae,{modelValue:_.value,"onUpdate:modelValue":e[8]||(e[8]=a=>_.value=a),title:G.value,width:"500px",onClose:F},{footer:t(()=>[l(u,{onClick:e[7]||(e[7]=a=>_.value=!1)},{default:t(()=>[...e[15]||(e[15]=[m("取消",-1)])]),_:1}),l(u,{type:"primary",onClick:W,loading:B.value},{default:t(()=>[...e[16]||(e[16]=[m("确定",-1)])]),_:1},8,["loading"])]),default:t(()=>[l(N,{ref_key:"formRef",ref:x,model:o,rules:I,"label-width":"80px"},{default:t(()=>[l(r,{label:"权限编码",prop:"code"},{default:t(()=>[l(c,{modelValue:o.code,"onUpdate:modelValue":e[3]||(e[3]=a=>o.code=a),placeholder:"如: user:create",disabled:y.value},null,8,["modelValue","disabled"])]),_:1}),l(r,{label:"权限名称",prop:"name"},{default:t(()=>[l(c,{modelValue:o.name,"onUpdate:modelValue":e[4]||(e[4]=a=>o.name=a),placeholder:"请输入权限名称"},null,8,["modelValue"])]),_:1}),l(r,{label:"所属模块",prop:"module"},{default:t(()=>[l(q,{modelValue:o.module,"onUpdate:modelValue":e[5]||(e[5]=a=>o.module=a),placeholder:"请选择或输入模块",filterable:"","allow-create":"",clearable:"",style:{width:"100%"}},{default:t(()=>[(d(!0),g(L,null,M($.value,a=>(d(),f(R,{key:a,label:a,value:a},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),l(r,{label:"描述",prop:"description"},{default:t(()=>[l(c,{modelValue:o.description,"onUpdate:modelValue":e[6]||(e[6]=a=>o.description=a),type:"textarea",rows:3,placeholder:"请输入描述"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}}),Ue=fe(we,[["__scopeId","data-v-cae59146"]]);export{Ue as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-D1PUhCZg.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BXX74AoH.js similarity index 97% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-D1PUhCZg.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BXX74AoH.js index 1060a18..fe5f33f 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-D1PUhCZg.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BXX74AoH.js @@ -1 +1 @@ -import{d as P,r as w,a as b,c as v,e as s,w as a,g as d,t as x,b as V,A as y,E as i,k as h,_ as k}from"./index-CIT-S3uf.js";const C={class:"page-container"},E=P({__name:"index",setup(q){const u=w(),n=w(!1),o=b({oldPassword:"",newPassword:"",confirmPassword:""}),p={oldPassword:[{required:!0,message:"请输入原密码",trigger:"blur"},{min:6,max:20,message:"密码长度在 6 到 20 个字符",trigger:"blur"}],newPassword:[{required:!0,message:"请输入新密码",trigger:"blur"},{min:6,max:20,message:"密码长度在 6 到 20 个字符",trigger:"blur"}],confirmPassword:[{required:!0,message:"请再次输入新密码",trigger:"blur"},{validator:(m,e,r)=>{e!==o.newPassword?r(new Error("两次输入密码不一致")):r()},trigger:"blur"}]},f=async()=>{var e;if(await((e=u.value)==null?void 0:e.validate())){n.value=!0;try{await y({oldPassword:o.oldPassword,newPassword:o.newPassword}),i.success("密码修改成功"),o.oldPassword="",o.newPassword="",o.confirmPassword=""}catch(r){i.error(r.message||"修改失败")}finally{n.value=!1}}};return(m,e)=>{const r=d("el-input"),t=d("el-form-item"),c=d("el-button"),_=d("el-form"),g=d("el-card");return h(),v("div",C,[s(g,null,{header:a(()=>[...e[3]||(e[3]=[V("span",null,"修改密码",-1)])]),default:a(()=>[s(_,{ref_key:"formRef",ref:u,model:o,rules:p,"label-width":"100px",style:{"max-width":"400px"}},{default:a(()=>[s(t,{label:"原密码",prop:"oldPassword"},{default:a(()=>[s(r,{modelValue:o.oldPassword,"onUpdate:modelValue":e[0]||(e[0]=l=>o.oldPassword=l),type:"password",placeholder:"请输入原密码","show-password":""},null,8,["modelValue"])]),_:1}),s(t,{label:"新密码",prop:"newPassword"},{default:a(()=>[s(r,{modelValue:o.newPassword,"onUpdate:modelValue":e[1]||(e[1]=l=>o.newPassword=l),type:"password",placeholder:"请输入新密码","show-password":""},null,8,["modelValue"])]),_:1}),s(t,{label:"确认密码",prop:"confirmPassword"},{default:a(()=>[s(r,{modelValue:o.confirmPassword,"onUpdate:modelValue":e[2]||(e[2]=l=>o.confirmPassword=l),type:"password",placeholder:"请再次输入新密码","show-password":""},null,8,["modelValue"])]),_:1}),s(t,null,{default:a(()=>[s(c,{type:"primary",onClick:f,loading:n.value},{default:a(()=>[...e[4]||(e[4]=[x(" 确认修改 ",-1)])]),_:1},8,["loading"])]),_:1})]),_:1},8,["model"])]),_:1})])}}}),N=k(E,[["__scopeId","data-v-928c0ade"]]);export{N as default}; +import{d as P,r as w,a as b,c as v,e as s,w as a,g as d,t as x,b as V,A as y,E as i,k as h,_ as k}from"./index-D3kwcp-p.js";const C={class:"page-container"},E=P({__name:"index",setup(q){const u=w(),n=w(!1),o=b({oldPassword:"",newPassword:"",confirmPassword:""}),p={oldPassword:[{required:!0,message:"请输入原密码",trigger:"blur"},{min:6,max:20,message:"密码长度在 6 到 20 个字符",trigger:"blur"}],newPassword:[{required:!0,message:"请输入新密码",trigger:"blur"},{min:6,max:20,message:"密码长度在 6 到 20 个字符",trigger:"blur"}],confirmPassword:[{required:!0,message:"请再次输入新密码",trigger:"blur"},{validator:(m,e,r)=>{e!==o.newPassword?r(new Error("两次输入密码不一致")):r()},trigger:"blur"}]},f=async()=>{var e;if(await((e=u.value)==null?void 0:e.validate())){n.value=!0;try{await y({oldPassword:o.oldPassword,newPassword:o.newPassword}),i.success("密码修改成功"),o.oldPassword="",o.newPassword="",o.confirmPassword=""}catch(r){i.error(r.message||"修改失败")}finally{n.value=!1}}};return(m,e)=>{const r=d("el-input"),t=d("el-form-item"),c=d("el-button"),_=d("el-form"),g=d("el-card");return h(),v("div",C,[s(g,null,{header:a(()=>[...e[3]||(e[3]=[V("span",null,"修改密码",-1)])]),default:a(()=>[s(_,{ref_key:"formRef",ref:u,model:o,rules:p,"label-width":"100px",style:{"max-width":"400px"}},{default:a(()=>[s(t,{label:"原密码",prop:"oldPassword"},{default:a(()=>[s(r,{modelValue:o.oldPassword,"onUpdate:modelValue":e[0]||(e[0]=l=>o.oldPassword=l),type:"password",placeholder:"请输入原密码","show-password":""},null,8,["modelValue"])]),_:1}),s(t,{label:"新密码",prop:"newPassword"},{default:a(()=>[s(r,{modelValue:o.newPassword,"onUpdate:modelValue":e[1]||(e[1]=l=>o.newPassword=l),type:"password",placeholder:"请输入新密码","show-password":""},null,8,["modelValue"])]),_:1}),s(t,{label:"确认密码",prop:"confirmPassword"},{default:a(()=>[s(r,{modelValue:o.confirmPassword,"onUpdate:modelValue":e[2]||(e[2]=l=>o.confirmPassword=l),type:"password",placeholder:"请再次输入新密码","show-password":""},null,8,["modelValue"])]),_:1}),s(t,null,{default:a(()=>[s(c,{type:"primary",onClick:f,loading:n.value},{default:a(()=>[...e[4]||(e[4]=[x(" 确认修改 ",-1)])]),_:1},8,["loading"])]),_:1})]),_:1},8,["model"])]),_:1})])}}}),N=k(E,[["__scopeId","data-v-928c0ade"]]);export{N as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BdFKGFJj.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BXheXTxI.js similarity index 95% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BdFKGFJj.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BXheXTxI.js index 6e5349d..e823017 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BdFKGFJj.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BXheXTxI.js @@ -1 +1 @@ -import{d as ie,r as I,a as N,v as de,o as ue,g as d,B as me,c as S,k as V,e as t,C as pe,w as a,b as c,t as m,l as p,D as fe,f as z,J as k,L as ge,s as ce,z as L,V as T,x as F,H as _e,W as be,I as we,X as O,E as b,_ as ye}from"./index-CIT-S3uf.js";import{g as Ve,v as Ce,w as he,x as ve,y as De}from"./assessment-LEpEOHMS.js";const Ue={class:"assessment-type-container"},xe={class:"header-content"},Ee={class:"header-right"},Ie={class:"image-error"},Ne={key:1,class:"image-placeholder"},Se={class:"price-text"},ze={class:"pagination-wrapper"},ke=ie({__name:"index",setup(Le){const f={OFFLINE:0,ONLINE:1,COMING:2},q=I(),y=I(),r=N({page:1,pageSize:10,name:"",code:"",status:void 0}),o=N({loading:!1,tableData:[],total:0,dialogVisible:!1,dialogTitle:"新增测评类型",formData:C(),formLoading:!1,isEdit:!1}),A=(l,e,s)=>{if(e==null){s(new Error("请输入价格"));return}if(e<=0){s(new Error("价格必须为正数"));return}s()},M=de(()=>({name:[{required:!0,message:"请输入测评类型名称",trigger:"blur"},{max:50,message:"名称不能超过50个字符",trigger:"blur"}],code:[{required:!0,message:"请输入测评类型编码",trigger:"blur"},{max:50,message:"编码不能超过50个字符",trigger:"blur"}],price:[{required:!0,validator:A,trigger:"blur"}],status:[{required:!0,message:"请选择状态",trigger:"change"}]}));function C(){return{name:"",code:"",imageUrl:"",detailImageUrl:"",introContent:"",price:0,sort:0,status:f.OFFLINE}}function R(l){switch(l){case f.OFFLINE:return"info";case f.ONLINE:return"success";case f.COMING:return"warning";default:return"info"}}function B(l){switch(l){case f.OFFLINE:return"下线";case f.ONLINE:return"上线";case f.COMING:return"即将上线";default:return"未知"}}async function _(){var l,e;o.loading=!0;try{const s={page:r.page,pageSize:r.pageSize};r.name&&(s.name=r.name),r.code&&(s.code=r.code),r.status!==void 0&&r.status!==""&&(s.status=Number(r.status));const i=await Ve(s);if(i.code===0)o.tableData=((l=i.data)==null?void 0:l.list)||[],o.total=((e=i.data)==null?void 0:e.total)||0;else throw new Error(i.message||"获取测评类型列表失败")}catch(s){const i=s instanceof Error?s.message:"获取测评类型列表失败";b.error(i)}finally{o.loading=!1}}function h(){r.page=1,_()}function G(){r.name="",r.code="",r.status=void 0,r.page=1,_()}function $(l){r.pageSize=l,r.page=1,_()}function j(l){r.page=l,_()}function K({prop:l,order:e}){console.log("Sort changed:",l,e)}function H(){o.isEdit=!1,o.dialogTitle="新增测评类型",o.formData=C(),o.dialogVisible=!0}function P(l){o.isEdit=!0,o.dialogTitle="编辑测评类型",o.formData={id:l.id,name:l.name,code:l.code,imageUrl:l.imageUrl||"",detailImageUrl:l.detailImageUrl||"",introContent:l.introContent||"",price:l.price,sort:l.sort,status:l.status},o.dialogVisible=!0}async function J(l,e){if(l.status!==e)try{const s=await Ce({id:l.id,status:e});if(s.code===0)b.success(W(e)),await _();else throw new Error(s.message||"状态更新失败")}catch(s){const i=s instanceof Error?s.message:"状态更新失败";b.error(i)}}function W(l){switch(l){case f.OFFLINE:return"已下线";case f.ONLINE:return"已上线";case f.COMING:return"已设为即将上线";default:return"状态已更新"}}async function X(l){try{const e=await he(l.id);if(e.code===0)b.success("删除成功"),o.tableData.length===1&&r.page>1&&r.page--,await _();else throw new Error(e.message||"删除失败")}catch(e){const s=e instanceof Error?e.message:"删除失败";b.error(s)}}async function Q(){if(y.value){try{await y.value.validate()}catch{return}o.formLoading=!0;try{const l=o.formData,e={name:l.name,code:l.code,imageUrl:l.imageUrl||void 0,detailImageUrl:l.detailImageUrl||void 0,introContent:l.introContent||void 0,price:l.price,sort:l.sort,status:Number(l.status)};let s;if(o.isEdit&&l.id?s=await ve({...e,id:l.id}):s=await De(e),s.code===0)b.success(o.isEdit?"更新成功":"创建成功"),o.dialogVisible=!1,await _();else throw new Error(s.message||(o.isEdit?"更新失败":"创建失败"))}catch(l){const e=l instanceof Error?l.message:o.isEdit?"更新失败":"创建失败";b.error(e)}finally{o.formLoading=!1}}}function Y(){var l;(l=y.value)==null||l.resetFields(),o.formData=C()}return ue(()=>{_()}),(l,e)=>{const s=d("el-icon"),i=d("el-button"),v=d("el-card"),w=d("el-input"),u=d("el-form-item"),x=d("el-form"),Z=d("el-image"),g=d("el-table-column"),ee=d("el-tag"),D=d("el-dropdown-item"),te=d("el-dropdown-menu"),ae=d("el-dropdown"),le=d("el-popconfirm"),oe=d("el-table"),ne=d("el-pagination"),E=d("el-input-number"),se=d("el-dialog"),re=me("loading");return V(),S("div",Ue,[t(v,{class:"page-header"},{default:a(()=>[c("div",xe,[e[16]||(e[16]=c("div",{class:"header-left"},[c("h2",{class:"page-title"},"测评类型管理"),c("span",{class:"page-description"},"管理测评类型,配置测评产品的基本信息、价格和状态")],-1)),c("div",Ee,[t(i,{type:"primary",onClick:H},{default:a(()=>[t(s,null,{default:a(()=>[t(p(fe))]),_:1}),e[15]||(e[15]=m(" 新增测评类型 ",-1))]),_:1})])])]),_:1}),t(v,{class:"search-card"},{default:a(()=>[t(x,{model:r,inline:""},{default:a(()=>[t(u,{label:"名称"},{default:a(()=>[t(w,{modelValue:r.name,"onUpdate:modelValue":e[0]||(e[0]=n=>r.name=n),placeholder:"请输入名称",clearable:"",onKeyup:z(h,["enter"])},null,8,["modelValue"])]),_:1}),t(u,{label:"编码"},{default:a(()=>[t(w,{modelValue:r.code,"onUpdate:modelValue":e[1]||(e[1]=n=>r.code=n),placeholder:"请输入编码",clearable:"",onKeyup:z(h,["enter"])},null,8,["modelValue"])]),_:1}),t(u,{label:"状态"},{default:a(()=>[t(p(k),{modelValue:r.status,"onUpdate:modelValue":e[2]||(e[2]=n=>r.status=n),type:"assessment_status",placeholder:"请选择状态",clearable:""},null,8,["modelValue"])]),_:1}),t(u,null,{default:a(()=>[t(i,{type:"primary",onClick:h},{default:a(()=>[t(s,null,{default:a(()=>[t(p(ge))]),_:1}),e[17]||(e[17]=m(" 搜索 ",-1))]),_:1}),t(i,{onClick:G},{default:a(()=>[t(s,null,{default:a(()=>[t(p(ce))]),_:1}),e[18]||(e[18]=m(" 重置 ",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),pe((V(),L(v,{class:"table-card"},{default:a(()=>[t(oe,{ref_key:"tableRef",ref:q,data:o.tableData,"row-key":"id",stripe:"",onSortChange:K},{default:a(()=>[t(g,{label:"图片",width:"120",align:"center"},{default:a(({row:n})=>[n.imageUrl?(V(),L(Z,{key:0,src:n.imageUrl,"preview-src-list":[n.imageUrl],fit:"cover",style:{width:"80px",height:"80px","border-radius":"4px"},"preview-teleported":""},{error:a(()=>[c("div",Ie,[t(s,null,{default:a(()=>[t(p(T))]),_:1})])]),_:1},8,["src","preview-src-list"])):(V(),S("div",Ne,[t(s,null,{default:a(()=>[t(p(T))]),_:1})]))]),_:1}),t(g,{prop:"name",label:"名称","min-width":"150","show-overflow-tooltip":""}),t(g,{prop:"code",label:"编码",width:"120","show-overflow-tooltip":""}),t(g,{prop:"price",label:"价格",width:"100",align:"right"},{default:a(({row:n})=>[c("span",Se,"¥"+F(n.price.toFixed(2)),1)]),_:1}),t(g,{prop:"questionCount",label:"题目数",width:"80",align:"center"}),t(g,{label:"状态",width:"120",align:"center"},{default:a(({row:n})=>[t(ee,{type:R(n.status)},{default:a(()=>[m(F(n.statusName||B(n.status)),1)]),_:2},1032,["type"])]),_:1}),t(g,{prop:"sort",label:"排序",width:"80",align:"center",sortable:"custom"}),t(g,{prop:"createTime",label:"创建时间",width:"180",align:"center"}),t(g,{label:"操作",width:"200",fixed:"right",align:"center"},{default:a(({row:n})=>[t(i,{type:"primary",link:"",size:"small",onClick:U=>P(n)},{default:a(()=>[t(s,null,{default:a(()=>[t(p(_e))]),_:1}),e[19]||(e[19]=m(" 编辑 ",-1))]),_:1},8,["onClick"]),t(ae,{onCommand:U=>J(n,U)},{dropdown:a(()=>[t(te,null,{default:a(()=>[t(D,{command:0,disabled:n.status===0},{default:a(()=>[...e[21]||(e[21]=[m("下线",-1)])]),_:1},8,["disabled"]),t(D,{command:1,disabled:n.status===1},{default:a(()=>[...e[22]||(e[22]=[m("上线",-1)])]),_:1},8,["disabled"]),t(D,{command:2,disabled:n.status===2},{default:a(()=>[...e[23]||(e[23]=[m("即将上线",-1)])]),_:1},8,["disabled"])]),_:2},1024)]),default:a(()=>[t(i,{type:"warning",link:"",size:"small"},{default:a(()=>[e[20]||(e[20]=m(" 状态 ",-1)),t(s,{class:"el-icon--right"},{default:a(()=>[t(p(be))]),_:1})]),_:1})]),_:2},1032,["onCommand"]),t(le,{title:"确定要删除这个测评类型吗?","confirm-button-text":"确定","cancel-button-text":"取消",onConfirm:U=>X(n)},{reference:a(()=>[t(i,{type:"danger",link:"",size:"small"},{default:a(()=>[t(s,null,{default:a(()=>[t(p(we))]),_:1}),e[24]||(e[24]=m(" 删除 ",-1))]),_:1})]),_:1},8,["onConfirm"])]),_:1})]),_:1},8,["data"]),c("div",ze,[t(ne,{"current-page":r.page,"onUpdate:currentPage":e[3]||(e[3]=n=>r.page=n),"page-size":r.pageSize,"onUpdate:pageSize":e[4]||(e[4]=n=>r.pageSize=n),"page-sizes":[10,20,50,100],total:o.total,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:$,onCurrentChange:j},null,8,["current-page","page-size","total"])])]),_:1})),[[re,o.loading]]),t(se,{modelValue:o.dialogVisible,"onUpdate:modelValue":e[14]||(e[14]=n=>o.dialogVisible=n),title:o.dialogTitle,width:"700px","close-on-click-modal":!1,onClosed:Y},{footer:a(()=>[t(i,{onClick:e[13]||(e[13]=n=>o.dialogVisible=!1)},{default:a(()=>[...e[26]||(e[26]=[m("取消",-1)])]),_:1}),t(i,{type:"primary",loading:o.formLoading,onClick:Q},{default:a(()=>[...e[27]||(e[27]=[m(" 确定 ",-1)])]),_:1},8,["loading"])]),default:a(()=>[t(x,{ref_key:"formRef",ref:y,model:o.formData,rules:M.value,"label-width":"100px","label-position":"right"},{default:a(()=>[t(u,{label:"名称",prop:"name"},{default:a(()=>[t(w,{modelValue:o.formData.name,"onUpdate:modelValue":e[5]||(e[5]=n=>o.formData.name=n),placeholder:"请输入测评类型名称",maxlength:"50","show-word-limit":""},null,8,["modelValue"])]),_:1}),t(u,{label:"编码",prop:"code"},{default:a(()=>[t(w,{modelValue:o.formData.code,"onUpdate:modelValue":e[6]||(e[6]=n=>o.formData.code=n),placeholder:"请输入测评类型编码",maxlength:"50","show-word-limit":""},null,8,["modelValue"])]),_:1}),t(u,{label:"图片",prop:"imageUrl"},{default:a(()=>[t(p(O),{modelValue:o.formData.imageUrl,"onUpdate:modelValue":e[7]||(e[7]=n=>o.formData.imageUrl=n),placeholder:"点击上传测评类型图片",tip:"建议尺寸:200x200,支持 jpg、png、gif 格式","max-size":10},null,8,["modelValue"])]),_:1}),t(u,{label:"详情横幅图",prop:"detailImageUrl"},{default:a(()=>[t(p(O),{modelValue:o.formData.detailImageUrl,"onUpdate:modelValue":e[8]||(e[8]=n=>o.formData.detailImageUrl=n),placeholder:"点击上传详情页横幅图",tip:"建议尺寸:750x400,支持 jpg、png、gif 格式","max-size":10},null,8,["modelValue"])]),_:1}),t(u,{label:"价格",prop:"price"},{default:a(()=>[t(E,{modelValue:o.formData.price,"onUpdate:modelValue":e[9]||(e[9]=n=>o.formData.price=n),min:.01,max:99999.99,precision:2,step:1,placeholder:"请输入价格",style:{width:"200px"}},null,8,["modelValue"]),e[25]||(e[25]=c("span",{class:"form-item-tip"},"元",-1))]),_:1}),t(u,{label:"介绍内容",prop:"introContent"},{default:a(()=>[t(w,{modelValue:o.formData.introContent,"onUpdate:modelValue":e[10]||(e[10]=n=>o.formData.introContent=n),type:"textarea",placeholder:"请输入测评类型介绍内容(支持HTML格式)",rows:6,maxlength:"5000","show-word-limit":""},null,8,["modelValue"])]),_:1}),t(u,{label:"排序",prop:"sort"},{default:a(()=>[t(E,{modelValue:o.formData.sort,"onUpdate:modelValue":e[11]||(e[11]=n=>o.formData.sort=n),min:0,max:9999,placeholder:"数值越小越靠前"},null,8,["modelValue"])]),_:1}),t(u,{label:"状态",prop:"status",required:""},{default:a(()=>[t(p(k),{modelValue:o.formData.status,"onUpdate:modelValue":e[12]||(e[12]=n=>o.formData.status=n),type:"assessment_status",placeholder:"请选择状态"},null,8,["modelValue"])]),_:1})]),_:1},8,["model","rules"])]),_:1},8,["modelValue","title"])])}}}),Oe=ye(ke,[["__scopeId","data-v-53be1600"]]);export{Oe as default}; +import{d as ie,r as I,a as N,v as de,o as ue,g as d,B as me,c as S,k as V,e as t,C as pe,w as a,b as c,t as m,l as p,D as fe,f as z,J as k,L as ge,s as ce,z as L,W as T,x as F,H as _e,X as be,I as we,Y as O,E as b,_ as ye}from"./index-D3kwcp-p.js";import{g as Ve,v as Ce,w as he,x as ve,y as De}from"./assessment-DhwT9plj.js";const Ue={class:"assessment-type-container"},xe={class:"header-content"},Ee={class:"header-right"},Ie={class:"image-error"},Ne={key:1,class:"image-placeholder"},Se={class:"price-text"},ze={class:"pagination-wrapper"},ke=ie({__name:"index",setup(Le){const f={OFFLINE:0,ONLINE:1,COMING:2},q=I(),y=I(),r=N({page:1,pageSize:10,name:"",code:"",status:void 0}),o=N({loading:!1,tableData:[],total:0,dialogVisible:!1,dialogTitle:"新增测评类型",formData:C(),formLoading:!1,isEdit:!1}),A=(l,e,s)=>{if(e==null){s(new Error("请输入价格"));return}if(e<=0){s(new Error("价格必须为正数"));return}s()},M=de(()=>({name:[{required:!0,message:"请输入测评类型名称",trigger:"blur"},{max:50,message:"名称不能超过50个字符",trigger:"blur"}],code:[{required:!0,message:"请输入测评类型编码",trigger:"blur"},{max:50,message:"编码不能超过50个字符",trigger:"blur"}],price:[{required:!0,validator:A,trigger:"blur"}],status:[{required:!0,message:"请选择状态",trigger:"change"}]}));function C(){return{name:"",code:"",imageUrl:"",detailImageUrl:"",introContent:"",price:0,sort:0,status:f.OFFLINE}}function R(l){switch(l){case f.OFFLINE:return"info";case f.ONLINE:return"success";case f.COMING:return"warning";default:return"info"}}function B(l){switch(l){case f.OFFLINE:return"下线";case f.ONLINE:return"上线";case f.COMING:return"即将上线";default:return"未知"}}async function _(){var l,e;o.loading=!0;try{const s={page:r.page,pageSize:r.pageSize};r.name&&(s.name=r.name),r.code&&(s.code=r.code),r.status!==void 0&&r.status!==""&&(s.status=Number(r.status));const i=await Ve(s);if(i.code===0)o.tableData=((l=i.data)==null?void 0:l.list)||[],o.total=((e=i.data)==null?void 0:e.total)||0;else throw new Error(i.message||"获取测评类型列表失败")}catch(s){const i=s instanceof Error?s.message:"获取测评类型列表失败";b.error(i)}finally{o.loading=!1}}function h(){r.page=1,_()}function G(){r.name="",r.code="",r.status=void 0,r.page=1,_()}function $(l){r.pageSize=l,r.page=1,_()}function j(l){r.page=l,_()}function K({prop:l,order:e}){console.log("Sort changed:",l,e)}function H(){o.isEdit=!1,o.dialogTitle="新增测评类型",o.formData=C(),o.dialogVisible=!0}function P(l){o.isEdit=!0,o.dialogTitle="编辑测评类型",o.formData={id:l.id,name:l.name,code:l.code,imageUrl:l.imageUrl||"",detailImageUrl:l.detailImageUrl||"",introContent:l.introContent||"",price:l.price,sort:l.sort,status:l.status},o.dialogVisible=!0}async function J(l,e){if(l.status!==e)try{const s=await Ce({id:l.id,status:e});if(s.code===0)b.success(W(e)),await _();else throw new Error(s.message||"状态更新失败")}catch(s){const i=s instanceof Error?s.message:"状态更新失败";b.error(i)}}function W(l){switch(l){case f.OFFLINE:return"已下线";case f.ONLINE:return"已上线";case f.COMING:return"已设为即将上线";default:return"状态已更新"}}async function X(l){try{const e=await he(l.id);if(e.code===0)b.success("删除成功"),o.tableData.length===1&&r.page>1&&r.page--,await _();else throw new Error(e.message||"删除失败")}catch(e){const s=e instanceof Error?e.message:"删除失败";b.error(s)}}async function Y(){if(y.value){try{await y.value.validate()}catch{return}o.formLoading=!0;try{const l=o.formData,e={name:l.name,code:l.code,imageUrl:l.imageUrl||void 0,detailImageUrl:l.detailImageUrl||void 0,introContent:l.introContent||void 0,price:l.price,sort:l.sort,status:Number(l.status)};let s;if(o.isEdit&&l.id?s=await ve({...e,id:l.id}):s=await De(e),s.code===0)b.success(o.isEdit?"更新成功":"创建成功"),o.dialogVisible=!1,await _();else throw new Error(s.message||(o.isEdit?"更新失败":"创建失败"))}catch(l){const e=l instanceof Error?l.message:o.isEdit?"更新失败":"创建失败";b.error(e)}finally{o.formLoading=!1}}}function Q(){var l;(l=y.value)==null||l.resetFields(),o.formData=C()}return ue(()=>{_()}),(l,e)=>{const s=d("el-icon"),i=d("el-button"),v=d("el-card"),w=d("el-input"),u=d("el-form-item"),x=d("el-form"),Z=d("el-image"),g=d("el-table-column"),ee=d("el-tag"),D=d("el-dropdown-item"),te=d("el-dropdown-menu"),ae=d("el-dropdown"),le=d("el-popconfirm"),oe=d("el-table"),ne=d("el-pagination"),E=d("el-input-number"),se=d("el-dialog"),re=me("loading");return V(),S("div",Ue,[t(v,{class:"page-header"},{default:a(()=>[c("div",xe,[e[16]||(e[16]=c("div",{class:"header-left"},[c("h2",{class:"page-title"},"测评类型管理"),c("span",{class:"page-description"},"管理测评类型,配置测评产品的基本信息、价格和状态")],-1)),c("div",Ee,[t(i,{type:"primary",onClick:H},{default:a(()=>[t(s,null,{default:a(()=>[t(p(fe))]),_:1}),e[15]||(e[15]=m(" 新增测评类型 ",-1))]),_:1})])])]),_:1}),t(v,{class:"search-card"},{default:a(()=>[t(x,{model:r,inline:""},{default:a(()=>[t(u,{label:"名称"},{default:a(()=>[t(w,{modelValue:r.name,"onUpdate:modelValue":e[0]||(e[0]=n=>r.name=n),placeholder:"请输入名称",clearable:"",onKeyup:z(h,["enter"])},null,8,["modelValue"])]),_:1}),t(u,{label:"编码"},{default:a(()=>[t(w,{modelValue:r.code,"onUpdate:modelValue":e[1]||(e[1]=n=>r.code=n),placeholder:"请输入编码",clearable:"",onKeyup:z(h,["enter"])},null,8,["modelValue"])]),_:1}),t(u,{label:"状态"},{default:a(()=>[t(p(k),{modelValue:r.status,"onUpdate:modelValue":e[2]||(e[2]=n=>r.status=n),type:"assessment_status",placeholder:"请选择状态",clearable:""},null,8,["modelValue"])]),_:1}),t(u,null,{default:a(()=>[t(i,{type:"primary",onClick:h},{default:a(()=>[t(s,null,{default:a(()=>[t(p(ge))]),_:1}),e[17]||(e[17]=m(" 搜索 ",-1))]),_:1}),t(i,{onClick:G},{default:a(()=>[t(s,null,{default:a(()=>[t(p(ce))]),_:1}),e[18]||(e[18]=m(" 重置 ",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),pe((V(),L(v,{class:"table-card"},{default:a(()=>[t(oe,{ref_key:"tableRef",ref:q,data:o.tableData,"row-key":"id",stripe:"",onSortChange:K},{default:a(()=>[t(g,{label:"图片",width:"120",align:"center"},{default:a(({row:n})=>[n.imageUrl?(V(),L(Z,{key:0,src:n.imageUrl,"preview-src-list":[n.imageUrl],fit:"cover",style:{width:"80px",height:"80px","border-radius":"4px"},"preview-teleported":""},{error:a(()=>[c("div",Ie,[t(s,null,{default:a(()=>[t(p(T))]),_:1})])]),_:1},8,["src","preview-src-list"])):(V(),S("div",Ne,[t(s,null,{default:a(()=>[t(p(T))]),_:1})]))]),_:1}),t(g,{prop:"name",label:"名称","min-width":"150","show-overflow-tooltip":""}),t(g,{prop:"code",label:"编码",width:"120","show-overflow-tooltip":""}),t(g,{prop:"price",label:"价格",width:"100",align:"right"},{default:a(({row:n})=>[c("span",Se,"¥"+F(n.price.toFixed(2)),1)]),_:1}),t(g,{prop:"questionCount",label:"题目数",width:"80",align:"center"}),t(g,{label:"状态",width:"120",align:"center"},{default:a(({row:n})=>[t(ee,{type:R(n.status)},{default:a(()=>[m(F(n.statusName||B(n.status)),1)]),_:2},1032,["type"])]),_:1}),t(g,{prop:"sort",label:"排序",width:"80",align:"center",sortable:"custom"}),t(g,{prop:"createTime",label:"创建时间",width:"180",align:"center"}),t(g,{label:"操作",width:"200",fixed:"right",align:"center"},{default:a(({row:n})=>[t(i,{type:"primary",link:"",size:"small",onClick:U=>P(n)},{default:a(()=>[t(s,null,{default:a(()=>[t(p(_e))]),_:1}),e[19]||(e[19]=m(" 编辑 ",-1))]),_:1},8,["onClick"]),t(ae,{onCommand:U=>J(n,U)},{dropdown:a(()=>[t(te,null,{default:a(()=>[t(D,{command:0,disabled:n.status===0},{default:a(()=>[...e[21]||(e[21]=[m("下线",-1)])]),_:1},8,["disabled"]),t(D,{command:1,disabled:n.status===1},{default:a(()=>[...e[22]||(e[22]=[m("上线",-1)])]),_:1},8,["disabled"]),t(D,{command:2,disabled:n.status===2},{default:a(()=>[...e[23]||(e[23]=[m("即将上线",-1)])]),_:1},8,["disabled"])]),_:2},1024)]),default:a(()=>[t(i,{type:"warning",link:"",size:"small"},{default:a(()=>[e[20]||(e[20]=m(" 状态 ",-1)),t(s,{class:"el-icon--right"},{default:a(()=>[t(p(be))]),_:1})]),_:1})]),_:2},1032,["onCommand"]),t(le,{title:"确定要删除这个测评类型吗?","confirm-button-text":"确定","cancel-button-text":"取消",onConfirm:U=>X(n)},{reference:a(()=>[t(i,{type:"danger",link:"",size:"small"},{default:a(()=>[t(s,null,{default:a(()=>[t(p(we))]),_:1}),e[24]||(e[24]=m(" 删除 ",-1))]),_:1})]),_:1},8,["onConfirm"])]),_:1})]),_:1},8,["data"]),c("div",ze,[t(ne,{"current-page":r.page,"onUpdate:currentPage":e[3]||(e[3]=n=>r.page=n),"page-size":r.pageSize,"onUpdate:pageSize":e[4]||(e[4]=n=>r.pageSize=n),"page-sizes":[10,20,50,100],total:o.total,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:$,onCurrentChange:j},null,8,["current-page","page-size","total"])])]),_:1})),[[re,o.loading]]),t(se,{modelValue:o.dialogVisible,"onUpdate:modelValue":e[14]||(e[14]=n=>o.dialogVisible=n),title:o.dialogTitle,width:"700px","close-on-click-modal":!1,onClosed:Q},{footer:a(()=>[t(i,{onClick:e[13]||(e[13]=n=>o.dialogVisible=!1)},{default:a(()=>[...e[26]||(e[26]=[m("取消",-1)])]),_:1}),t(i,{type:"primary",loading:o.formLoading,onClick:Y},{default:a(()=>[...e[27]||(e[27]=[m(" 确定 ",-1)])]),_:1},8,["loading"])]),default:a(()=>[t(x,{ref_key:"formRef",ref:y,model:o.formData,rules:M.value,"label-width":"100px","label-position":"right"},{default:a(()=>[t(u,{label:"名称",prop:"name"},{default:a(()=>[t(w,{modelValue:o.formData.name,"onUpdate:modelValue":e[5]||(e[5]=n=>o.formData.name=n),placeholder:"请输入测评类型名称",maxlength:"50","show-word-limit":""},null,8,["modelValue"])]),_:1}),t(u,{label:"编码",prop:"code"},{default:a(()=>[t(w,{modelValue:o.formData.code,"onUpdate:modelValue":e[6]||(e[6]=n=>o.formData.code=n),placeholder:"请输入测评类型编码",maxlength:"50","show-word-limit":""},null,8,["modelValue"])]),_:1}),t(u,{label:"图片",prop:"imageUrl"},{default:a(()=>[t(p(O),{modelValue:o.formData.imageUrl,"onUpdate:modelValue":e[7]||(e[7]=n=>o.formData.imageUrl=n),placeholder:"点击上传测评类型图片",tip:"建议尺寸:200x200,支持 jpg、png、gif 格式","max-size":10},null,8,["modelValue"])]),_:1}),t(u,{label:"详情横幅图",prop:"detailImageUrl"},{default:a(()=>[t(p(O),{modelValue:o.formData.detailImageUrl,"onUpdate:modelValue":e[8]||(e[8]=n=>o.formData.detailImageUrl=n),placeholder:"点击上传详情页横幅图",tip:"建议尺寸:750x400,支持 jpg、png、gif 格式","max-size":10},null,8,["modelValue"])]),_:1}),t(u,{label:"价格",prop:"price"},{default:a(()=>[t(E,{modelValue:o.formData.price,"onUpdate:modelValue":e[9]||(e[9]=n=>o.formData.price=n),min:.01,max:99999.99,precision:2,step:1,placeholder:"请输入价格",style:{width:"200px"}},null,8,["modelValue"]),e[25]||(e[25]=c("span",{class:"form-item-tip"},"元",-1))]),_:1}),t(u,{label:"介绍内容",prop:"introContent"},{default:a(()=>[t(w,{modelValue:o.formData.introContent,"onUpdate:modelValue":e[10]||(e[10]=n=>o.formData.introContent=n),type:"textarea",placeholder:"请输入测评类型介绍内容(支持HTML格式)",rows:6,maxlength:"5000","show-word-limit":""},null,8,["modelValue"])]),_:1}),t(u,{label:"排序",prop:"sort"},{default:a(()=>[t(E,{modelValue:o.formData.sort,"onUpdate:modelValue":e[11]||(e[11]=n=>o.formData.sort=n),min:0,max:9999,placeholder:"数值越小越靠前"},null,8,["modelValue"])]),_:1}),t(u,{label:"状态",prop:"status",required:""},{default:a(()=>[t(p(k),{modelValue:o.formData.status,"onUpdate:modelValue":e[12]||(e[12]=n=>o.formData.status=n),type:"assessment_status",placeholder:"请选择状态"},null,8,["modelValue"])]),_:1})]),_:1},8,["model","rules"])]),_:1},8,["modelValue","title"])])}}}),Oe=ye(ke,[["__scopeId","data-v-53be1600"]]);export{Oe as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-eKUZRiBU.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Bg9OwzIE.js similarity index 81% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-eKUZRiBU.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Bg9OwzIE.js index 23a6265..675d899 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-eKUZRiBU.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Bg9OwzIE.js @@ -1 +1 @@ -import{O as y,d as Be,r as d,a as j,v as Ee,o as Fe,g as r,B as se,c as G,k as p,e as a,w as t,C as b,f as qe,t as u,z as v,F as ne,y as oe,x as de,b as ue,l as Ke,D as je,G as re,ap as Ge,E as U,S as Oe,_ as He}from"./index-CIT-S3uf.js";import{h as Je}from"./role-9_FTeI72.js";import{g as Qe}from"./department-D285ZFgf.js";function We(o){return y({url:"/admin/users",method:"get",params:o})}function Xe(o){return y({url:"/admin/users",method:"post",data:o})}function Ye(o,x){return y({url:`/admin/users/${o}`,method:"put",data:x})}function Ze(o){return y({url:`/admin/users/${o}`,method:"delete"})}function el(o,x){return y({url:`/admin/users/${o}/status`,method:"put",data:{status:x}})}function ll(o){return y({url:`/admin/users/${o.userId}/reset-password`,method:"put",data:{newPassword:o.newPassword}})}function al(o){return y({url:`/admin/users/${o.userId}/roles`,method:"put",data:{roleIds:o.roleIds}})}function tl(o){return y({url:`/admin/users/${o}/roles`,method:"get"})}function sl(o){return y({url:`/admin/users/${o.userId}/department`,method:"put",data:{departmentId:o.departmentId}})}function nl(o){return y({url:`/admin/users/${o}/menus`,method:"get"})}function ol(o){return y({url:`/admin/users/${o.userId}/menus`,method:"put",data:{menuIds:o.menuIds}})}const dl={class:"page-container"},ul={class:"card-header"},rl=Be({__name:"index",setup(o){const x=d(!1),O=d([]),H=d(0),m=j({keyword:"",departmentId:void 0,status:void 0,page:1,pageSize:10}),J=d([]),L=d([]),Q=d([]),I=d(!1),P=d(!1),ie=Ee(()=>P.value?"编辑管理员":"新增管理员"),M=d(),T=d(!1),n=j({id:0,username:"",password:"",realName:"",email:"",phone:"",status:1}),me={username:[{required:!0,message:"请输入用户名",trigger:"blur"},{min:3,max:20,message:"长度在 3 到 20 个字符",trigger:"blur"}],password:[{required:!0,message:"请输入密码",trigger:"blur"},{min:6,max:20,message:"长度在 6 到 20 个字符",trigger:"blur"}],email:[{type:"email",message:"请输入正确的邮箱地址",trigger:"blur"}],phone:[{pattern:/^1[3-9]\d{9}$/,message:"请输入正确的手机号",trigger:"blur"}]},R=d(!1),z=d([]),V=d(0),B=d(!1),S=d(!1),A=d(null),E=d(!1),D=d(!1),W=d(),X=d([]),F=d(!1),h=d(!1),Y=d(),q=d(!1),c=j({newPassword:"",confirmPassword:""}),pe={newPassword:[{required:!0,message:"请输入新密码",trigger:"blur"},{min:6,max:20,message:"长度在 6 到 20 个字符",trigger:"blur"}],confirmPassword:[{required:!0,message:"请再次输入密码",trigger:"blur"},{validator:(s,e,$)=>{e!==c.newPassword?$(new Error("两次输入密码不一致")):$()},trigger:"blur"}]},w=async()=>{x.value=!0;try{const s=await We(m);O.value=s.data.list,H.value=s.data.total}finally{x.value=!1}},fe=async()=>{const[s,e,$]=await Promise.all([Je(),Qe(),Ge()]);J.value=s.data,L.value=e.data,Q.value=$.data},Z=()=>{m.page=1,w()},ve=()=>{m.keyword="",m.departmentId=void 0,m.status=void 0,m.page=1,w()},ee=()=>{var s;n.id=0,n.username="",n.password="",n.realName="",n.email="",n.phone="",n.status=1,(s=M.value)==null||s.resetFields()},ge=()=>{P.value=!1,ee(),I.value=!0},ye=s=>{P.value=!0,n.id=s.id,n.realName=s.realName||"",n.email=s.email||"",n.phone=s.phone||"",n.status=s.status,I.value=!0},ce=async()=>{var e;if(await((e=M.value)==null?void 0:e.validate())){T.value=!0;try{P.value?(await Ye(n.id,n),U.success("更新成功")):(await Xe(n),U.success("创建成功")),I.value=!1,w()}finally{T.value=!1}}},we=async s=>{try{await Oe.confirm(`确定要删除管理员 "${s.username}" 吗?`,"提示",{type:"warning"}),await Ze(s.id),U.success("删除成功"),w()}catch{}},be=async s=>{try{await el(s.id,s.status),U.success("状态更新成功")}catch{s.status=s.status===1?0:1}},Ve=async s=>{V.value=s.id;const e=await tl(s.id);z.value=e.data,R.value=!0},ke=async()=>{B.value=!0;try{await al({userId:V.value,roleIds:z.value}),U.success("分配成功"),R.value=!1,w()}finally{B.value=!1}},_e=s=>{V.value=s.id,A.value=s.departmentId,S.value=!0},Ce=async()=>{E.value=!0;try{await sl({userId:V.value,departmentId:A.value}),U.success("分配成功"),S.value=!1,w()}finally{E.value=!1}},Ue=async s=>{V.value=s.id;const e=await nl(s.id);X.value=e.data,D.value=!0},xe=async()=>{var s;F.value=!0;try{const e=(s=W.value)==null?void 0:s.getCheckedKeys(!1);await ol({userId:V.value,menuIds:e}),U.success("分配成功"),D.value=!1}finally{F.value=!1}},Ie=s=>{V.value=s.id,c.newPassword="",c.confirmPassword="",h.value=!0},Pe=async()=>{var e;if(await((e=Y.value)==null?void 0:e.validate())){q.value=!0;try{await ll({userId:V.value,newPassword:c.newPassword}),U.success("密码重置成功"),h.value=!1}finally{q.value=!1}}};return Fe(()=>{fe(),w()}),(s,e)=>{const $=r("el-icon"),i=r("el-button"),k=r("el-input"),f=r("el-form-item"),le=r("el-tree-select"),ae=r("el-option"),$e=r("el-select"),K=r("el-form"),_=r("el-table-column"),Re=r("el-tag"),Se=r("el-switch"),De=r("el-table"),he=r("el-pagination"),Ne=r("el-card"),te=r("el-radio"),ze=r("el-radio-group"),N=r("el-dialog"),Ae=r("el-checkbox"),Le=r("el-checkbox-group"),Me=r("el-tree"),C=se("permission"),Te=se("loading");return p(),G("div",dl,[a(Ne,null,{header:t(()=>[ue("div",ul,[e[26]||(e[26]=ue("span",null,"管理员管理",-1)),b((p(),v(i,{type:"primary",onClick:ge},{default:t(()=>[a($,null,{default:t(()=>[a(Ke(je))]),_:1}),e[25]||(e[25]=u("新增管理员 ",-1))]),_:1})),[[C,"system:admin:add"]])])]),default:t(()=>[a(K,{inline:!0,model:m,class:"search-form"},{default:t(()=>[a(f,{label:"关键词"},{default:t(()=>[a(k,{modelValue:m.keyword,"onUpdate:modelValue":e[0]||(e[0]=l=>m.keyword=l),placeholder:"用户名/姓名/手机号",clearable:"",onKeyup:qe(Z,["enter"])},null,8,["modelValue"])]),_:1}),a(f,{label:"部门"},{default:t(()=>[a(le,{modelValue:m.departmentId,"onUpdate:modelValue":e[1]||(e[1]=l=>m.departmentId=l),data:L.value,props:{label:"name",value:"id",children:"children"},"check-strictly":"","render-after-expand":!1,placeholder:"全部",clearable:"",style:{width:"200px"}},null,8,["modelValue","data"])]),_:1}),a(f,{label:"状态"},{default:t(()=>[a($e,{modelValue:m.status,"onUpdate:modelValue":e[2]||(e[2]=l=>m.status=l),placeholder:"全部",clearable:""},{default:t(()=>[a(ae,{label:"启用",value:1}),a(ae,{label:"禁用",value:0})]),_:1},8,["modelValue"])]),_:1}),a(f,null,{default:t(()=>[a(i,{type:"primary",onClick:Z},{default:t(()=>[...e[27]||(e[27]=[u("查询",-1)])]),_:1}),a(i,{onClick:ve},{default:t(()=>[...e[28]||(e[28]=[u("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"]),b((p(),v(De,{data:O.value},{default:t(()=>[a(_,{prop:"username",label:"用户名","min-width":"100"}),a(_,{prop:"realName",label:"姓名","min-width":"100"}),a(_,{prop:"departmentName",label:"部门","min-width":"120"}),a(_,{prop:"phone",label:"手机号","min-width":"120"}),a(_,{label:"角色","min-width":"150"},{default:t(({row:l})=>[(p(!0),G(ne,null,oe(l.roles,g=>(p(),v(Re,{key:g.id,size:"small",style:{"margin-right":"4px"}},{default:t(()=>[u(de(g.name),1)]),_:2},1024))),128))]),_:1}),a(_,{prop:"status",label:"状态",width:"80"},{default:t(({row:l})=>[b(a(Se,{modelValue:l.status,"onUpdate:modelValue":g=>l.status=g,"active-value":1,"inactive-value":0,disabled:l.username==="admin",onChange:g=>be(l)},null,8,["modelValue","onUpdate:modelValue","disabled","onChange"]),[[C,"system:admin:edit"]])]),_:1}),a(_,{prop:"lastLoginTime",label:"最后登录",width:"170"}),a(_,{label:"操作",width:"320",fixed:"right"},{default:t(({row:l})=>[b((p(),v(i,{link:"",type:"primary",onClick:g=>ye(l)},{default:t(()=>[...e[29]||(e[29]=[u("编辑",-1)])]),_:1},8,["onClick"])),[[C,"system:admin:edit"]]),b((p(),v(i,{link:"",type:"primary",onClick:g=>Ve(l)},{default:t(()=>[...e[30]||(e[30]=[u("分配角色",-1)])]),_:1},8,["onClick"])),[[C,"system:admin:edit"]]),b((p(),v(i,{link:"",type:"primary",onClick:g=>_e(l)},{default:t(()=>[...e[31]||(e[31]=[u("分配部门",-1)])]),_:1},8,["onClick"])),[[C,"system:admin:edit"]]),b((p(),v(i,{link:"",type:"primary",onClick:g=>Ue(l)},{default:t(()=>[...e[32]||(e[32]=[u("专属菜单",-1)])]),_:1},8,["onClick"])),[[C,"system:admin:edit"]]),b((p(),v(i,{link:"",type:"warning",onClick:g=>Ie(l)},{default:t(()=>[...e[33]||(e[33]=[u("重置密码",-1)])]),_:1},8,["onClick"])),[[C,"system:admin:edit"]]),b((p(),v(i,{link:"",type:"danger",onClick:g=>we(l),disabled:l.username==="admin"},{default:t(()=>[...e[34]||(e[34]=[u("删除",-1)])]),_:1},8,["onClick","disabled"])),[[C,"system:admin:delete"]])]),_:1})]),_:1},8,["data"])),[[Te,x.value]]),a(he,{"current-page":m.page,"onUpdate:currentPage":e[3]||(e[3]=l=>m.page=l),"page-size":m.pageSize,"onUpdate:pageSize":e[4]||(e[4]=l=>m.pageSize=l),"page-sizes":[10,20,50,100],total:H.value,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:w,onCurrentChange:w,class:"pagination"},null,8,["current-page","page-size","total"])]),_:1}),a(N,{modelValue:I.value,"onUpdate:modelValue":e[12]||(e[12]=l=>I.value=l),title:ie.value,width:"500px",onClose:ee},{footer:t(()=>[a(i,{onClick:e[11]||(e[11]=l=>I.value=!1)},{default:t(()=>[...e[37]||(e[37]=[u("取消",-1)])]),_:1}),a(i,{type:"primary",onClick:ce,loading:T.value},{default:t(()=>[...e[38]||(e[38]=[u("确定",-1)])]),_:1},8,["loading"])]),default:t(()=>[a(K,{ref_key:"formRef",ref:M,model:n,rules:me,"label-width":"80px"},{default:t(()=>[P.value?re("",!0):(p(),v(f,{key:0,label:"用户名",prop:"username"},{default:t(()=>[a(k,{modelValue:n.username,"onUpdate:modelValue":e[5]||(e[5]=l=>n.username=l),placeholder:"请输入用户名"},null,8,["modelValue"])]),_:1})),P.value?re("",!0):(p(),v(f,{key:1,label:"密码",prop:"password"},{default:t(()=>[a(k,{modelValue:n.password,"onUpdate:modelValue":e[6]||(e[6]=l=>n.password=l),type:"password",placeholder:"请输入密码","show-password":""},null,8,["modelValue"])]),_:1})),a(f,{label:"姓名",prop:"realName"},{default:t(()=>[a(k,{modelValue:n.realName,"onUpdate:modelValue":e[7]||(e[7]=l=>n.realName=l),placeholder:"请输入姓名"},null,8,["modelValue"])]),_:1}),a(f,{label:"手机号",prop:"phone"},{default:t(()=>[a(k,{modelValue:n.phone,"onUpdate:modelValue":e[8]||(e[8]=l=>n.phone=l),placeholder:"请输入手机号"},null,8,["modelValue"])]),_:1}),a(f,{label:"邮箱",prop:"email"},{default:t(()=>[a(k,{modelValue:n.email,"onUpdate:modelValue":e[9]||(e[9]=l=>n.email=l),placeholder:"请输入邮箱"},null,8,["modelValue"])]),_:1}),a(f,{label:"状态",prop:"status"},{default:t(()=>[a(ze,{modelValue:n.status,"onUpdate:modelValue":e[10]||(e[10]=l=>n.status=l)},{default:t(()=>[a(te,{value:1},{default:t(()=>[...e[35]||(e[35]=[u("启用",-1)])]),_:1}),a(te,{value:0},{default:t(()=>[...e[36]||(e[36]=[u("禁用",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"]),a(N,{modelValue:R.value,"onUpdate:modelValue":e[15]||(e[15]=l=>R.value=l),title:"分配角色",width:"400px"},{footer:t(()=>[a(i,{onClick:e[14]||(e[14]=l=>R.value=!1)},{default:t(()=>[...e[39]||(e[39]=[u("取消",-1)])]),_:1}),a(i,{type:"primary",onClick:ke,loading:B.value},{default:t(()=>[...e[40]||(e[40]=[u("确定",-1)])]),_:1},8,["loading"])]),default:t(()=>[a(Le,{modelValue:z.value,"onUpdate:modelValue":e[13]||(e[13]=l=>z.value=l)},{default:t(()=>[(p(!0),G(ne,null,oe(J.value,l=>(p(),v(Ae,{key:l.id,value:l.id,disabled:l.code==="super_admin"},{default:t(()=>[u(de(l.name),1)]),_:2},1032,["value","disabled"]))),128))]),_:1},8,["modelValue"])]),_:1},8,["modelValue"]),a(N,{modelValue:S.value,"onUpdate:modelValue":e[18]||(e[18]=l=>S.value=l),title:"分配部门",width:"400px"},{footer:t(()=>[a(i,{onClick:e[17]||(e[17]=l=>S.value=!1)},{default:t(()=>[...e[41]||(e[41]=[u("取消",-1)])]),_:1}),a(i,{type:"primary",onClick:Ce,loading:E.value},{default:t(()=>[...e[42]||(e[42]=[u("确定",-1)])]),_:1},8,["loading"])]),default:t(()=>[a(le,{modelValue:A.value,"onUpdate:modelValue":e[16]||(e[16]=l=>A.value=l),data:L.value,props:{label:"name",value:"id",children:"children"},"check-strictly":"","render-after-expand":!1,placeholder:"请选择部门",clearable:"",style:{width:"100%"}},null,8,["modelValue","data"])]),_:1},8,["modelValue"]),a(N,{modelValue:D.value,"onUpdate:modelValue":e[20]||(e[20]=l=>D.value=l),title:"分配专属菜单",width:"500px"},{footer:t(()=>[a(i,{onClick:e[19]||(e[19]=l=>D.value=!1)},{default:t(()=>[...e[43]||(e[43]=[u("取消",-1)])]),_:1}),a(i,{type:"primary",onClick:xe,loading:F.value},{default:t(()=>[...e[44]||(e[44]=[u("确定",-1)])]),_:1},8,["loading"])]),default:t(()=>[a(Me,{ref_key:"menuTreeRef",ref:W,data:Q.value,props:{label:"name",children:"children"},"show-checkbox":"","node-key":"id","default-checked-keys":X.value,"check-strictly":!0},null,8,["data","default-checked-keys"])]),_:1},8,["modelValue"]),a(N,{modelValue:h.value,"onUpdate:modelValue":e[24]||(e[24]=l=>h.value=l),title:"重置密码",width:"400px"},{footer:t(()=>[a(i,{onClick:e[23]||(e[23]=l=>h.value=!1)},{default:t(()=>[...e[45]||(e[45]=[u("取消",-1)])]),_:1}),a(i,{type:"primary",onClick:Pe,loading:q.value},{default:t(()=>[...e[46]||(e[46]=[u("确定",-1)])]),_:1},8,["loading"])]),default:t(()=>[a(K,{ref_key:"passwordFormRef",ref:Y,model:c,rules:pe,"label-width":"80px"},{default:t(()=>[a(f,{label:"新密码",prop:"newPassword"},{default:t(()=>[a(k,{modelValue:c.newPassword,"onUpdate:modelValue":e[21]||(e[21]=l=>c.newPassword=l),type:"password",placeholder:"请输入新密码","show-password":""},null,8,["modelValue"])]),_:1}),a(f,{label:"确认密码",prop:"confirmPassword"},{default:t(()=>[a(k,{modelValue:c.confirmPassword,"onUpdate:modelValue":e[22]||(e[22]=l=>c.confirmPassword=l),type:"password",placeholder:"请再次输入密码","show-password":""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"])])}}}),fl=He(rl,[["__scopeId","data-v-c05f7e98"]]);export{fl as default}; +import{O as y,d as qe,r as d,a as j,v as Be,o as Ee,g as r,B as se,c as G,k as p,e as a,w as t,C as b,f as Fe,t as u,z as v,F as ne,y as oe,x as de,b as ue,l as Ke,D as je,G as re,aq as Ge,E as U,T as Oe,_ as He}from"./index-D3kwcp-p.js";import{h as Je}from"./role-CQMzC95A.js";import{g as Qe}from"./department-DP69qZhR.js";function We(o){return y({url:"/admin/users",method:"get",params:o})}function Xe(o){return y({url:"/admin/users",method:"post",data:o})}function Ye(o,x){return y({url:`/admin/users/${o}`,method:"put",data:x})}function Ze(o){return y({url:`/admin/users/${o}`,method:"delete"})}function el(o,x){return y({url:`/admin/users/${o}/status`,method:"put",data:{status:x}})}function ll(o){return y({url:`/admin/users/${o.userId}/reset-password`,method:"put",data:{newPassword:o.newPassword}})}function al(o){return y({url:`/admin/users/${o.userId}/roles`,method:"put",data:{roleIds:o.roleIds}})}function tl(o){return y({url:`/admin/users/${o}/roles`,method:"get"})}function sl(o){return y({url:`/admin/users/${o.userId}/department`,method:"put",data:{departmentId:o.departmentId}})}function nl(o){return y({url:`/admin/users/${o}/menus`,method:"get"})}function ol(o){return y({url:`/admin/users/${o.userId}/menus`,method:"put",data:{menuIds:o.menuIds}})}const dl={class:"page-container"},ul={class:"card-header"},rl=qe({__name:"index",setup(o){const x=d(!1),O=d([]),H=d(0),m=j({keyword:"",departmentId:void 0,status:void 0,page:1,pageSize:10}),J=d([]),T=d([]),Q=d([]),I=d(!1),P=d(!1),ie=Be(()=>P.value?"编辑管理员":"新增管理员"),L=d(),M=d(!1),n=j({id:0,username:"",password:"",realName:"",email:"",phone:"",status:1}),me={username:[{required:!0,message:"请输入用户名",trigger:"blur"},{min:3,max:20,message:"长度在 3 到 20 个字符",trigger:"blur"}],password:[{required:!0,message:"请输入密码",trigger:"blur"},{min:6,max:20,message:"长度在 6 到 20 个字符",trigger:"blur"}],email:[{type:"email",message:"请输入正确的邮箱地址",trigger:"blur"}],phone:[{pattern:/^1[3-9]\d{9}$/,message:"请输入正确的手机号",trigger:"blur"}]},R=d(!1),z=d([]),V=d(0),q=d(!1),S=d(!1),A=d(null),B=d(!1),D=d(!1),W=d(),X=d([]),E=d(!1),h=d(!1),Y=d(),F=d(!1),c=j({newPassword:"",confirmPassword:""}),pe={newPassword:[{required:!0,message:"请输入新密码",trigger:"blur"},{min:6,max:20,message:"长度在 6 到 20 个字符",trigger:"blur"}],confirmPassword:[{required:!0,message:"请再次输入密码",trigger:"blur"},{validator:(s,e,$)=>{e!==c.newPassword?$(new Error("两次输入密码不一致")):$()},trigger:"blur"}]},w=async()=>{x.value=!0;try{const s=await We(m);O.value=s.data.list,H.value=s.data.total}finally{x.value=!1}},fe=async()=>{const[s,e,$]=await Promise.all([Je(),Qe(),Ge()]);J.value=s.data,T.value=e.data,Q.value=$.data},Z=()=>{m.page=1,w()},ve=()=>{m.keyword="",m.departmentId=void 0,m.status=void 0,m.page=1,w()},ee=()=>{var s;n.id=0,n.username="",n.password="",n.realName="",n.email="",n.phone="",n.status=1,(s=L.value)==null||s.resetFields()},ge=()=>{P.value=!1,ee(),I.value=!0},ye=s=>{P.value=!0,n.id=s.id,n.realName=s.realName||"",n.email=s.email||"",n.phone=s.phone||"",n.status=s.status,I.value=!0},ce=async()=>{var e;if(await((e=L.value)==null?void 0:e.validate())){M.value=!0;try{P.value?(await Ye(n.id,n),U.success("更新成功")):(await Xe(n),U.success("创建成功")),I.value=!1,w()}finally{M.value=!1}}},we=async s=>{try{await Oe.confirm(`确定要删除管理员 "${s.username}" 吗?`,"提示",{type:"warning"}),await Ze(s.id),U.success("删除成功"),w()}catch{}},be=async s=>{try{await el(s.id,s.status),U.success("状态更新成功")}catch{s.status=s.status===1?0:1}},Ve=async s=>{V.value=s.id;const e=await tl(s.id);z.value=e.data,R.value=!0},ke=async()=>{q.value=!0;try{await al({userId:V.value,roleIds:z.value}),U.success("分配成功"),R.value=!1,w()}finally{q.value=!1}},_e=s=>{V.value=s.id,A.value=s.departmentId,S.value=!0},Ce=async()=>{B.value=!0;try{await sl({userId:V.value,departmentId:A.value}),U.success("分配成功"),S.value=!1,w()}finally{B.value=!1}},Ue=async s=>{V.value=s.id;const e=await nl(s.id);X.value=e.data,D.value=!0},xe=async()=>{var s;E.value=!0;try{const e=(s=W.value)==null?void 0:s.getCheckedKeys(!1);await ol({userId:V.value,menuIds:e}),U.success("分配成功"),D.value=!1}finally{E.value=!1}},Ie=s=>{V.value=s.id,c.newPassword="",c.confirmPassword="",h.value=!0},Pe=async()=>{var e;if(await((e=Y.value)==null?void 0:e.validate())){F.value=!0;try{await ll({userId:V.value,newPassword:c.newPassword}),U.success("密码重置成功"),h.value=!1}finally{F.value=!1}}};return Ee(()=>{fe(),w()}),(s,e)=>{const $=r("el-icon"),i=r("el-button"),k=r("el-input"),f=r("el-form-item"),le=r("el-tree-select"),ae=r("el-option"),$e=r("el-select"),K=r("el-form"),_=r("el-table-column"),Re=r("el-tag"),Se=r("el-switch"),De=r("el-table"),he=r("el-pagination"),Ne=r("el-card"),te=r("el-radio"),ze=r("el-radio-group"),N=r("el-dialog"),Ae=r("el-checkbox"),Te=r("el-checkbox-group"),Le=r("el-tree"),C=se("permission"),Me=se("loading");return p(),G("div",dl,[a(Ne,null,{header:t(()=>[ue("div",ul,[e[26]||(e[26]=ue("span",null,"管理员管理",-1)),b((p(),v(i,{type:"primary",onClick:ge},{default:t(()=>[a($,null,{default:t(()=>[a(Ke(je))]),_:1}),e[25]||(e[25]=u("新增管理员 ",-1))]),_:1})),[[C,"system:admin:add"]])])]),default:t(()=>[a(K,{inline:!0,model:m,class:"search-form"},{default:t(()=>[a(f,{label:"关键词"},{default:t(()=>[a(k,{modelValue:m.keyword,"onUpdate:modelValue":e[0]||(e[0]=l=>m.keyword=l),placeholder:"用户名/姓名/手机号",clearable:"",onKeyup:Fe(Z,["enter"])},null,8,["modelValue"])]),_:1}),a(f,{label:"部门"},{default:t(()=>[a(le,{modelValue:m.departmentId,"onUpdate:modelValue":e[1]||(e[1]=l=>m.departmentId=l),data:T.value,props:{label:"name",value:"id",children:"children"},"check-strictly":"","render-after-expand":!1,placeholder:"全部",clearable:"",style:{width:"200px"}},null,8,["modelValue","data"])]),_:1}),a(f,{label:"状态"},{default:t(()=>[a($e,{modelValue:m.status,"onUpdate:modelValue":e[2]||(e[2]=l=>m.status=l),placeholder:"全部",clearable:""},{default:t(()=>[a(ae,{label:"启用",value:1}),a(ae,{label:"禁用",value:0})]),_:1},8,["modelValue"])]),_:1}),a(f,null,{default:t(()=>[a(i,{type:"primary",onClick:Z},{default:t(()=>[...e[27]||(e[27]=[u("查询",-1)])]),_:1}),a(i,{onClick:ve},{default:t(()=>[...e[28]||(e[28]=[u("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"]),b((p(),v(De,{data:O.value},{default:t(()=>[a(_,{prop:"username",label:"用户名","min-width":"100"}),a(_,{prop:"realName",label:"姓名","min-width":"100"}),a(_,{prop:"departmentName",label:"部门","min-width":"120"}),a(_,{prop:"phone",label:"手机号","min-width":"120"}),a(_,{label:"角色","min-width":"150"},{default:t(({row:l})=>[(p(!0),G(ne,null,oe(l.roles,g=>(p(),v(Re,{key:g.id,size:"small",style:{"margin-right":"4px"}},{default:t(()=>[u(de(g.name),1)]),_:2},1024))),128))]),_:1}),a(_,{prop:"status",label:"状态",width:"80"},{default:t(({row:l})=>[b(a(Se,{modelValue:l.status,"onUpdate:modelValue":g=>l.status=g,"active-value":1,"inactive-value":0,disabled:l.username==="admin",onChange:g=>be(l)},null,8,["modelValue","onUpdate:modelValue","disabled","onChange"]),[[C,"system:admin:edit"]])]),_:1}),a(_,{prop:"lastLoginTime",label:"最后登录",width:"170"}),a(_,{label:"操作",width:"320",fixed:"right"},{default:t(({row:l})=>[b((p(),v(i,{link:"",type:"primary",onClick:g=>ye(l)},{default:t(()=>[...e[29]||(e[29]=[u("编辑",-1)])]),_:1},8,["onClick"])),[[C,"system:admin:edit"]]),b((p(),v(i,{link:"",type:"primary",onClick:g=>Ve(l)},{default:t(()=>[...e[30]||(e[30]=[u("分配角色",-1)])]),_:1},8,["onClick"])),[[C,"system:admin:edit"]]),b((p(),v(i,{link:"",type:"primary",onClick:g=>_e(l)},{default:t(()=>[...e[31]||(e[31]=[u("分配部门",-1)])]),_:1},8,["onClick"])),[[C,"system:admin:edit"]]),b((p(),v(i,{link:"",type:"primary",onClick:g=>Ue(l)},{default:t(()=>[...e[32]||(e[32]=[u("专属菜单",-1)])]),_:1},8,["onClick"])),[[C,"system:admin:edit"]]),b((p(),v(i,{link:"",type:"warning",onClick:g=>Ie(l)},{default:t(()=>[...e[33]||(e[33]=[u("重置密码",-1)])]),_:1},8,["onClick"])),[[C,"system:admin:edit"]]),b((p(),v(i,{link:"",type:"danger",onClick:g=>we(l),disabled:l.username==="admin"},{default:t(()=>[...e[34]||(e[34]=[u("删除",-1)])]),_:1},8,["onClick","disabled"])),[[C,"system:admin:delete"]])]),_:1})]),_:1},8,["data"])),[[Me,x.value]]),a(he,{"current-page":m.page,"onUpdate:currentPage":e[3]||(e[3]=l=>m.page=l),"page-size":m.pageSize,"onUpdate:pageSize":e[4]||(e[4]=l=>m.pageSize=l),"page-sizes":[10,20,50,100],total:H.value,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:w,onCurrentChange:w,class:"pagination"},null,8,["current-page","page-size","total"])]),_:1}),a(N,{modelValue:I.value,"onUpdate:modelValue":e[12]||(e[12]=l=>I.value=l),title:ie.value,width:"500px",onClose:ee},{footer:t(()=>[a(i,{onClick:e[11]||(e[11]=l=>I.value=!1)},{default:t(()=>[...e[37]||(e[37]=[u("取消",-1)])]),_:1}),a(i,{type:"primary",onClick:ce,loading:M.value},{default:t(()=>[...e[38]||(e[38]=[u("确定",-1)])]),_:1},8,["loading"])]),default:t(()=>[a(K,{ref_key:"formRef",ref:L,model:n,rules:me,"label-width":"80px"},{default:t(()=>[P.value?re("",!0):(p(),v(f,{key:0,label:"用户名",prop:"username"},{default:t(()=>[a(k,{modelValue:n.username,"onUpdate:modelValue":e[5]||(e[5]=l=>n.username=l),placeholder:"请输入用户名"},null,8,["modelValue"])]),_:1})),P.value?re("",!0):(p(),v(f,{key:1,label:"密码",prop:"password"},{default:t(()=>[a(k,{modelValue:n.password,"onUpdate:modelValue":e[6]||(e[6]=l=>n.password=l),type:"password",placeholder:"请输入密码","show-password":""},null,8,["modelValue"])]),_:1})),a(f,{label:"姓名",prop:"realName"},{default:t(()=>[a(k,{modelValue:n.realName,"onUpdate:modelValue":e[7]||(e[7]=l=>n.realName=l),placeholder:"请输入姓名"},null,8,["modelValue"])]),_:1}),a(f,{label:"手机号",prop:"phone"},{default:t(()=>[a(k,{modelValue:n.phone,"onUpdate:modelValue":e[8]||(e[8]=l=>n.phone=l),placeholder:"请输入手机号"},null,8,["modelValue"])]),_:1}),a(f,{label:"邮箱",prop:"email"},{default:t(()=>[a(k,{modelValue:n.email,"onUpdate:modelValue":e[9]||(e[9]=l=>n.email=l),placeholder:"请输入邮箱"},null,8,["modelValue"])]),_:1}),a(f,{label:"状态",prop:"status"},{default:t(()=>[a(ze,{modelValue:n.status,"onUpdate:modelValue":e[10]||(e[10]=l=>n.status=l)},{default:t(()=>[a(te,{value:1},{default:t(()=>[...e[35]||(e[35]=[u("启用",-1)])]),_:1}),a(te,{value:0},{default:t(()=>[...e[36]||(e[36]=[u("禁用",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"]),a(N,{modelValue:R.value,"onUpdate:modelValue":e[15]||(e[15]=l=>R.value=l),title:"分配角色",width:"400px"},{footer:t(()=>[a(i,{onClick:e[14]||(e[14]=l=>R.value=!1)},{default:t(()=>[...e[39]||(e[39]=[u("取消",-1)])]),_:1}),a(i,{type:"primary",onClick:ke,loading:q.value},{default:t(()=>[...e[40]||(e[40]=[u("确定",-1)])]),_:1},8,["loading"])]),default:t(()=>[a(Te,{modelValue:z.value,"onUpdate:modelValue":e[13]||(e[13]=l=>z.value=l)},{default:t(()=>[(p(!0),G(ne,null,oe(J.value,l=>(p(),v(Ae,{key:l.id,value:l.id,disabled:l.code==="super_admin"},{default:t(()=>[u(de(l.name),1)]),_:2},1032,["value","disabled"]))),128))]),_:1},8,["modelValue"])]),_:1},8,["modelValue"]),a(N,{modelValue:S.value,"onUpdate:modelValue":e[18]||(e[18]=l=>S.value=l),title:"分配部门",width:"400px"},{footer:t(()=>[a(i,{onClick:e[17]||(e[17]=l=>S.value=!1)},{default:t(()=>[...e[41]||(e[41]=[u("取消",-1)])]),_:1}),a(i,{type:"primary",onClick:Ce,loading:B.value},{default:t(()=>[...e[42]||(e[42]=[u("确定",-1)])]),_:1},8,["loading"])]),default:t(()=>[a(le,{modelValue:A.value,"onUpdate:modelValue":e[16]||(e[16]=l=>A.value=l),data:T.value,props:{label:"name",value:"id",children:"children"},"check-strictly":"","render-after-expand":!1,placeholder:"请选择部门",clearable:"",style:{width:"100%"}},null,8,["modelValue","data"])]),_:1},8,["modelValue"]),a(N,{modelValue:D.value,"onUpdate:modelValue":e[20]||(e[20]=l=>D.value=l),title:"分配专属菜单",width:"500px"},{footer:t(()=>[a(i,{onClick:e[19]||(e[19]=l=>D.value=!1)},{default:t(()=>[...e[43]||(e[43]=[u("取消",-1)])]),_:1}),a(i,{type:"primary",onClick:xe,loading:E.value},{default:t(()=>[...e[44]||(e[44]=[u("确定",-1)])]),_:1},8,["loading"])]),default:t(()=>[a(Le,{ref_key:"menuTreeRef",ref:W,data:Q.value,props:{label:"name",children:"children"},"show-checkbox":"","node-key":"id","default-checked-keys":X.value,"check-strictly":!0},null,8,["data","default-checked-keys"])]),_:1},8,["modelValue"]),a(N,{modelValue:h.value,"onUpdate:modelValue":e[24]||(e[24]=l=>h.value=l),title:"重置密码",width:"400px"},{footer:t(()=>[a(i,{onClick:e[23]||(e[23]=l=>h.value=!1)},{default:t(()=>[...e[45]||(e[45]=[u("取消",-1)])]),_:1}),a(i,{type:"primary",onClick:Pe,loading:F.value},{default:t(()=>[...e[46]||(e[46]=[u("确定",-1)])]),_:1},8,["loading"])]),default:t(()=>[a(K,{ref_key:"passwordFormRef",ref:Y,model:c,rules:pe,"label-width":"80px"},{default:t(()=>[a(f,{label:"新密码",prop:"newPassword"},{default:t(()=>[a(k,{modelValue:c.newPassword,"onUpdate:modelValue":e[21]||(e[21]=l=>c.newPassword=l),type:"password",placeholder:"请输入新密码","show-password":""},null,8,["modelValue"])]),_:1}),a(f,{label:"确认密码",prop:"confirmPassword"},{default:t(()=>[a(k,{modelValue:c.confirmPassword,"onUpdate:modelValue":e[22]||(e[22]=l=>c.confirmPassword=l),type:"password",placeholder:"请再次输入密码","show-password":""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"])])}}}),fl=He(rl,[["__scopeId","data-v-c05f7e98"]]);export{fl as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BlN5OXvU.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BlN5OXvU.js deleted file mode 100644 index fa04dbb..0000000 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BlN5OXvU.js +++ /dev/null @@ -1 +0,0 @@ -import{O as V,d as be,r as he,a as K,v as we,o as ye,g,B as ve,c as y,k as b,e as t,C as N,w as l,b as p,t as r,l as v,P as H,N as Ce,f as De,L as Ve,s as ke,z as R,x as i,G as D,Q as Re,R as xe,I as Le,F as I,y as Se,H as ze,E as h,S as E,_ as Te}from"./index-CIT-S3uf.js";import{p as Ne}from"./assessment-LEpEOHMS.js";function Ie(_){return V({url:"/admin/assessmentRecord/getList",method:"get",params:_})}function Ee(_){return V({url:"/admin/assessmentRecord/getDetail",method:"get",params:{id:_}})}function Ue(_){return V({url:"/admin/assessmentRecord/getReport",method:"get",params:{id:_}})}function Be(_){return V({url:"/admin/assessmentRecord/export",method:"get",params:_,responseType:"blob"})}function Me(_){return V({url:"/admin/assessmentRecord/regenerateReport",method:"post",data:{id:_}})}function $e(_){return V({url:"/admin/assessmentRecord/batchRegenerateReport",method:"post",data:{ids:_}})}function Oe(_){return V({url:"/admin/assessmentRecord/delete",method:"post",data:{id:_}})}function qe(_){return V({url:"/admin/assessmentRecord/updateConclusion",method:"post",data:_})}const Ye={class:"record-container"},je={class:"header-content"},Pe={class:"header-right"},Fe={class:"sub-text"},Ge={class:"sub-text"},Ke={class:"pagination-wrapper"},He={class:"record-detail"},Qe={class:"detail-section"},Ae={key:0,class:"detail-section"},Je={class:"section-title"},We={key:1,class:"detail-section"},Xe={class:"record-detail"},Ze={class:"detail-section"},et={class:"section-title"},tt={class:"conclusion-cell"},at={class:"conclusion-text"},lt=be({__name:"index",setup(_){const Q=[{text:"最近一周",value:()=>{const o=new Date,e=new Date;return e.setTime(e.getTime()-6048e5),[e,o]}},{text:"最近一个月",value:()=>{const o=new Date,e=new Date;return e.setTime(e.getTime()-2592e6),[e,o]}},{text:"最近三个月",value:()=>{const o=new Date,e=new Date;return e.setTime(e.getTime()-7776e6),[e,o]}}],z=he(null),d=K({page:1,pageSize:10,userId:"",status:void 0,startDate:void 0,endDate:void 0}),a=K({loading:!1,tableData:[],total:0,detailVisible:!1,detailLoading:!1,detail:null,reportVisible:!1,reportLoading:!1,report:null,exportLoading:!1,scoreOptionMap:new Map,batchRegenerateLoading:!1,selectedRows:[],editingConclusion:null,editConclusionLoading:!1}),U=we({get:()=>a.editingConclusion!==null,set:o=>{o||(a.editingConclusion=null)}});function B(o){switch(o){case 1:return"info";case 2:return"primary";case 3:return"warning";case 4:return"success";case 5:return"danger";default:return"info"}}function A(o){const e=a.scoreOptionMap.get(o);return e?e.label:String(o)}function J(o){const e=a.scoreOptionMap.get(o);return e?e.description:""}async function C(){var o,e;a.loading=!0;try{const n={page:d.page,pageSize:d.pageSize};d.userId&&(n.userId=Number(d.userId)),d.status!==void 0&&(n.status=d.status),d.startDate&&(n.startDate=d.startDate),d.endDate&&(n.endDate=d.endDate);const c=await Ie(n);if(c.code===0)a.tableData=((o=c.data)==null?void 0:o.list)||[],a.total=((e=c.data)==null?void 0:e.total)||0;else throw new Error(c.message||"获取测评记录列表失败")}catch(n){const c=n instanceof Error?n.message:"获取测评记录列表失败";h.error(c)}finally{a.loading=!1}}async function W(o){var e;a.detailLoading=!0;try{const n=await Ee(o);if(n.code===0)a.detail=n.data,a.scoreOptionMap.size===0&&((e=n.data)!=null&&e.assessmentTypeId)&&await X(n.data.assessmentTypeId);else throw new Error(n.message||"获取测评记录详情失败")}catch(n){const c=n instanceof Error?n.message:"获取测评记录详情失败";h.error(c)}finally{a.detailLoading=!1}}async function X(o){var e;try{const n=await Ne({page:1,pageSize:100,assessmentTypeId:o});n.code===0&&((e=n.data)!=null&&e.list)&&(a.scoreOptionMap=new Map(n.data.list.map(c=>[c.score,c])))}catch{}}async function M(o){a.reportLoading=!0;try{const e=await Ue(o);if(e.code===0)a.report=e.data;else throw new Error(e.message||"获取测评报告失败")}catch(e){const n=e instanceof Error?e.message:"获取测评报告失败";h.error(n)}finally{a.reportLoading=!1}}function $(){d.page=1,C()}function Z(){d.userId="",d.status=void 0,d.startDate=void 0,d.endDate=void 0,z.value=null,d.page=1,C()}function ee(o){o?(d.startDate=o[0],d.endDate=o[1]):(d.startDate=void 0,d.endDate=void 0)}function te(o){d.pageSize=o,d.page=1,C()}function ae(o){d.page=o,C()}function le(o){a.detailVisible=!0,a.detail=null,W(o.id)}function ne(o){a.reportVisible=!0,a.report=null,M(o.id)}function oe(o){a.selectedRows=o}async function se(o){var e;try{await E.confirm(`确定要重新生成记录 ID=${o.id} 的报告吗?`,"重新生成报告",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"});const n=await Me(o.id);if(n.code===0)h.success("已提交重新生成,请稍后刷新查看"),C();else throw new Error(n.message||"重新生成失败")}catch(n){if(n==="cancel"||(e=n==null?void 0:n.toString)!=null&&e.call(n).includes("cancel"))return;const c=n instanceof Error?n.message:"重新生成失败";h.error(c)}}async function ie(){var e;const o=a.selectedRows.filter(n=>n.status===3||n.status===5);if(o.length===0){h.warning('请先勾选状态为"生成中"或"生成失败"的记录');return}try{await E.confirm(`已选中 ${o.length} 条符合条件的记录,确定批量重新生成?`,"批量重新生成报告",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}),a.batchRegenerateLoading=!0;const n=o.map(w=>w.id),c=await $e(n);if(c.code===0){const{successCount:w,skippedCount:x}=c.data;h.success(`成功入队 ${w} 条,跳过 ${x} 条`),C()}else throw new Error(c.message||"批量重新生成失败")}catch(n){if(n==="cancel"||(e=n==null?void 0:n.toString)!=null&&e.call(n).includes("cancel"))return;const c=n instanceof Error?n.message:"批量重新生成失败";h.error(c)}finally{a.batchRegenerateLoading=!1}}async function de(o){var e;try{await E.confirm(`确定要删除记录 ID=${o.id} 吗?删除后不可恢复。`,"删除测评记录",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"});const n=await Oe(o.id);if(n.code===0)h.success("删除成功"),C();else throw new Error(n.message||"删除失败")}catch(n){if(n==="cancel"||(e=n==null?void 0:n.toString)!=null&&e.call(n).includes("cancel"))return;const c=n instanceof Error?n.message:"删除失败";h.error(c)}}async function re(){a.exportLoading=!0;try{const o={page:1,pageSize:1e4};d.userId&&(o.userId=Number(d.userId)),d.status!==void 0&&(o.status=d.status),d.startDate&&(o.startDate=d.startDate),d.endDate&&(o.endDate=d.endDate);const e=await Be(o),n=e.data instanceof Blob?e.data:new Blob([e.data]),c=window.URL.createObjectURL(n),w=document.createElement("a");w.href=c,w.download=`测评记录_${new Date().toISOString().slice(0,10)}.xlsx`,document.body.appendChild(w),w.click(),document.body.removeChild(w),window.URL.revokeObjectURL(c),h.success("导出成功")}catch(o){const e=o instanceof Error?o.message:"导出失败";h.error(e)}finally{a.exportLoading=!1}}function ce(o){a.editingConclusion={conclusionId:o.conclusionId,content:o.conclusionContent||"",categoryName:o.categoryName}}async function ue(){if(a.editingConclusion){a.editConclusionLoading=!0;try{const o=await qe({id:a.editingConclusion.conclusionId,content:a.editingConclusion.content});if(o.code===0)h.success("结论更新成功"),a.editingConclusion=null,a.report&&M(a.report.id);else throw new Error(o.message||"更新失败")}catch(o){const e=o instanceof Error?o.message:"更新结论失败";h.error(e)}finally{a.editConclusionLoading=!1}}}function O(){a.editingConclusion=null}return ye(()=>{C()}),(o,e)=>{var F;const n=g("el-icon"),c=g("el-button"),w=g("el-card"),x=g("el-input"),L=g("el-form-item"),k=g("el-option"),pe=g("el-select"),me=g("el-date-picker"),ge=g("el-form"),u=g("el-table-column"),q=g("el-tag"),S=g("el-table"),fe=g("el-pagination"),m=g("el-descriptions-item"),Y=g("el-descriptions"),j=g("el-rate"),P=g("el-drawer"),_e=g("el-dialog"),T=ve("loading");return b(),y("div",Ye,[t(w,{class:"page-header"},{default:l(()=>[p("div",je,[e[11]||(e[11]=p("div",{class:"header-left"},[p("h2",{class:"page-title"},"测评记录"),p("span",{class:"page-description"},"查看用户测评记录、答案详情和测评报告")],-1)),p("div",Pe,[t(c,{type:"warning",onClick:ie,loading:a.batchRegenerateLoading},{default:l(()=>[t(n,null,{default:l(()=>[t(v(H))]),_:1}),e[9]||(e[9]=r(" 批量重新生成 ",-1))]),_:1},8,["loading"]),t(c,{type:"success",onClick:re,loading:a.exportLoading},{default:l(()=>[t(n,null,{default:l(()=>[t(v(Ce))]),_:1}),e[10]||(e[10]=r(" 导出Excel ",-1))]),_:1},8,["loading"])])])]),_:1}),t(w,{class:"search-card"},{default:l(()=>[t(ge,{model:d,inline:""},{default:l(()=>[t(L,{label:"用户ID"},{default:l(()=>[t(x,{modelValue:d.userId,"onUpdate:modelValue":e[0]||(e[0]=s=>d.userId=s),placeholder:"请输入用户ID",clearable:"",onKeyup:De($,["enter"])},null,8,["modelValue"])]),_:1}),t(L,{label:"状态"},{default:l(()=>[t(pe,{modelValue:d.status,"onUpdate:modelValue":e[1]||(e[1]=s=>d.status=s),placeholder:"请选择状态",clearable:""},{default:l(()=>[t(k,{label:"待测评",value:1}),t(k,{label:"测评中",value:2}),t(k,{label:"生成中",value:3}),t(k,{label:"已完成",value:4}),t(k,{label:"生成失败",value:5})]),_:1},8,["modelValue"])]),_:1}),t(L,{label:"创建时间"},{default:l(()=>[t(me,{modelValue:z.value,"onUpdate:modelValue":e[2]||(e[2]=s=>z.value=s),type:"daterange","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期","value-format":"YYYY-MM-DD",shortcuts:Q,onChange:ee},null,8,["modelValue"])]),_:1}),t(L,null,{default:l(()=>[t(c,{type:"primary",onClick:$},{default:l(()=>[t(n,null,{default:l(()=>[t(v(Ve))]),_:1}),e[12]||(e[12]=r(" 搜索 ",-1))]),_:1}),t(c,{onClick:Z},{default:l(()=>[t(n,null,{default:l(()=>[t(v(ke))]),_:1}),e[13]||(e[13]=r(" 重置 ",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),N((b(),R(w,{class:"table-card"},{default:l(()=>[t(S,{data:a.tableData,"row-key":"id",stripe:"",onSelectionChange:oe},{default:l(()=>[t(u,{type:"selection",width:"50"}),t(u,{prop:"id",label:"ID",width:"80"}),t(u,{label:"用户","min-width":"120"},{default:l(({row:s})=>[p("div",null,i(s.userNickname||"-"),1),p("div",Fe,"ID: "+i(s.userId),1)]),_:1}),t(u,{label:"被测评人","min-width":"120"},{default:l(({row:s})=>[p("div",null,i(s.name),1),p("div",Ge,i(s.phone),1)]),_:1}),t(u,{prop:"assessmentTypeName",label:"测评类型",width:"120","show-overflow-tooltip":""}),t(u,{label:"性别/年龄",width:"100",align:"center"},{default:l(({row:s})=>[r(i(s.genderName)+" / "+i(s.age)+"岁 ",1)]),_:1}),t(u,{prop:"educationStageName",label:"学历阶段",width:"110",align:"center"}),t(u,{label:"地区","min-width":"130","show-overflow-tooltip":""},{default:l(({row:s})=>[r(i(s.province)+i(s.city)+i(s.district),1)]),_:1}),t(u,{label:"状态",width:"90",align:"center"},{default:l(({row:s})=>[t(q,{type:B(s.status),size:"small"},{default:l(()=>[r(i(s.statusName),1)]),_:2},1032,["type"])]),_:1}),t(u,{prop:"orderNo",label:"订单号",width:"170","show-overflow-tooltip":""}),t(u,{prop:"submitTime",label:"提交时间",width:"170",align:"center"},{default:l(({row:s})=>[r(i(s.submitTime||"-"),1)]),_:1}),t(u,{prop:"createTime",label:"创建时间",width:"170",align:"center"}),t(u,{label:"操作",width:"280",fixed:"right",align:"center"},{default:l(({row:s})=>[t(c,{type:"primary",link:"",size:"small",onClick:f=>le(s)},{default:l(()=>[t(n,null,{default:l(()=>[t(v(Re))]),_:1}),e[14]||(e[14]=r(" 详情 ",-1))]),_:1},8,["onClick"]),s.status===4?(b(),R(c,{key:0,type:"success",link:"",size:"small",onClick:f=>ne(s)},{default:l(()=>[t(n,null,{default:l(()=>[t(v(xe))]),_:1}),e[15]||(e[15]=r(" 报告 ",-1))]),_:1},8,["onClick"])):D("",!0),s.status===3||s.status===5?(b(),R(c,{key:1,type:"warning",link:"",size:"small",onClick:f=>se(s)},{default:l(()=>[t(n,null,{default:l(()=>[t(v(H))]),_:1}),e[16]||(e[16]=r(" 重新生成 ",-1))]),_:1},8,["onClick"])):D("",!0),t(c,{type:"danger",link:"",size:"small",onClick:f=>de(s)},{default:l(()=>[t(n,null,{default:l(()=>[t(v(Le))]),_:1}),e[17]||(e[17]=r(" 删除 ",-1))]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"]),p("div",Ke,[t(fe,{"current-page":d.page,"onUpdate:currentPage":e[3]||(e[3]=s=>d.page=s),"page-size":d.pageSize,"onUpdate:pageSize":e[4]||(e[4]=s=>d.pageSize=s),"page-sizes":[10,20,50,100],total:a.total,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:te,onCurrentChange:ae},null,8,["current-page","page-size","total"])])]),_:1})),[[T,a.loading]]),t(P,{modelValue:a.detailVisible,"onUpdate:modelValue":e[5]||(e[5]=s=>a.detailVisible=s),title:"测评记录详情",size:"100%","close-on-click-modal":!0},{default:l(()=>[N((b(),y("div",He,[a.detail?(b(),y(I,{key:0},[p("div",Qe,[e[18]||(e[18]=p("h4",{class:"section-title"},"基本信息",-1)),t(Y,{column:4,border:"",size:"small"},{default:l(()=>[t(m,{label:"被测评人"},{default:l(()=>[r(i(a.detail.name),1)]),_:1}),t(m,{label:"手机号"},{default:l(()=>[r(i(a.detail.phone),1)]),_:1}),t(m,{label:"性别"},{default:l(()=>[r(i(a.detail.genderName),1)]),_:1}),t(m,{label:"年龄"},{default:l(()=>[r(i(a.detail.age)+"岁",1)]),_:1}),t(m,{label:"学历阶段"},{default:l(()=>[r(i(a.detail.educationStageName),1)]),_:1}),t(m,{label:"地区"},{default:l(()=>[r(i(a.detail.province)+i(a.detail.city)+i(a.detail.district),1)]),_:1}),t(m,{label:"测评类型"},{default:l(()=>[r(i(a.detail.assessmentTypeName),1)]),_:1}),t(m,{label:"状态"},{default:l(()=>[t(q,{type:B(a.detail.status),size:"small"},{default:l(()=>[r(i(a.detail.statusName),1)]),_:1},8,["type"])]),_:1}),t(m,{label:"订单号",span:2},{default:l(()=>[r(i(a.detail.orderNo||"-"),1)]),_:1}),t(m,{label:"开始时间"},{default:l(()=>[r(i(a.detail.startTime||"-"),1)]),_:1}),t(m,{label:"提交时间"},{default:l(()=>[r(i(a.detail.submitTime||"-"),1)]),_:1}),t(m,{label:"完成时间"},{default:l(()=>[r(i(a.detail.completeTime||"-"),1)]),_:1}),t(m,{label:"创建时间"},{default:l(()=>[r(i(a.detail.createTime),1)]),_:1})]),_:1})]),a.detail.answers&&a.detail.answers.length>0?(b(),y("div",Ae,[p("h4",Je,"答题列表(共"+i(a.detail.answers.length)+"题)",1),t(S,{data:a.detail.answers,stripe:"",size:"small","max-height":"400"},{default:l(()=>[t(u,{prop:"questionNo",label:"题号",width:"60",align:"center"}),t(u,{prop:"questionContent",label:"题目内容","min-width":"250","show-overflow-tooltip":""}),t(u,{label:"用户选项",width:"250",align:"center"},{default:l(({row:s})=>[p("span",null,i(A(s.answerValue))+"["+i(s.answerValue)+"]("+i(J(s.answerValue))+")",1)]),_:1})]),_:1},8,["data"])])):D("",!0),a.detail.results&&a.detail.results.length>0?(b(),y("div",We,[e[19]||(e[19]=p("h4",{class:"section-title"},"测评结果",-1)),t(S,{data:a.detail.results,stripe:"",size:"small","max-height":"400"},{default:l(()=>[t(u,{prop:"categoryTypeName",label:"分类类型",width:"120"}),t(u,{prop:"categoryName",label:"分类名称","min-width":"120"}),t(u,{label:"得分",width:"100",align:"center"},{default:l(({row:s})=>[r(i(s.score)+" / "+i(s.maxScore),1)]),_:1}),t(u,{label:"百分比",width:"80",align:"center"},{default:l(({row:s})=>[r(i(s.percentage)+"% ",1)]),_:1}),t(u,{label:"星级",width:"130",align:"center"},{default:l(({row:s})=>[t(j,{modelValue:s.starLevel,"onUpdate:modelValue":f=>s.starLevel=f,disabled:""},null,8,["modelValue","onUpdate:modelValue"])]),_:1})]),_:1},8,["data"])])):D("",!0)],64)):D("",!0)])),[[T,a.detailLoading]])]),_:1},8,["modelValue"]),t(P,{modelValue:a.reportVisible,"onUpdate:modelValue":e[6]||(e[6]=s=>a.reportVisible=s),title:"测评报告",size:"100%","close-on-click-modal":!0},{default:l(()=>[N((b(),y("div",Xe,[a.report?(b(),y(I,{key:0},[p("div",Ze,[e[20]||(e[20]=p("h4",{class:"section-title"},"被测评人信息",-1)),t(Y,{column:3,border:""},{default:l(()=>[t(m,{label:"姓名"},{default:l(()=>[r(i(a.report.name),1)]),_:1}),t(m,{label:"性别"},{default:l(()=>[r(i(a.report.genderName),1)]),_:1}),t(m,{label:"年龄"},{default:l(()=>[r(i(a.report.age)+"岁",1)]),_:1}),t(m,{label:"学历阶段"},{default:l(()=>[r(i(a.report.educationStageName),1)]),_:1}),t(m,{label:"地区",span:2},{default:l(()=>[r(i(a.report.province)+i(a.report.city)+i(a.report.district),1)]),_:1})]),_:1})]),(b(!0),y(I,null,Se(a.report.resultGroups,s=>(b(),y("div",{key:s.categoryTypeId,class:"detail-section"},[p("h4",et,i(s.categoryTypeName),1),t(S,{data:s.items,stripe:"",size:"small"},{default:l(()=>[t(u,{prop:"categoryName",label:"分类","min-width":"120"}),t(u,{label:"得分",width:"100",align:"center"},{default:l(({row:f})=>[r(i(f.score)+" / "+i(f.maxScore),1)]),_:1}),t(u,{label:"百分比",width:"80",align:"center"},{default:l(({row:f})=>[r(i(f.percentage)+"% ",1)]),_:1}),t(u,{label:"星级",width:"130",align:"center"},{default:l(({row:f})=>[t(j,{modelValue:f.starLevel,"onUpdate:modelValue":G=>f.starLevel=G,disabled:""},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),t(u,{label:"结论","min-width":"300"},{default:l(({row:f})=>[p("div",tt,[p("span",at,i(f.conclusionContent||"暂无结论"),1),f.conclusionId?(b(),R(c,{key:0,type:"primary",link:"",size:"small",onClick:G=>ce(f)},{default:l(()=>[t(n,null,{default:l(()=>[t(v(ze))]),_:1}),e[21]||(e[21]=r(" 编辑 ",-1))]),_:1},8,["onClick"])):D("",!0)])]),_:1})]),_:1},8,["data"])]))),128))],64)):D("",!0)])),[[T,a.reportLoading]])]),_:1},8,["modelValue"]),t(_e,{modelValue:U.value,"onUpdate:modelValue":e[8]||(e[8]=s=>U.value=s),title:`编辑结论 - ${((F=a.editingConclusion)==null?void 0:F.categoryName)||""}`,width:"700px","close-on-click-modal":!1,onClose:O},{footer:l(()=>[t(c,{onClick:O},{default:l(()=>[...e[22]||(e[22]=[r("取消",-1)])]),_:1}),t(c,{type:"primary",loading:a.editConclusionLoading,onClick:ue},{default:l(()=>[...e[23]||(e[23]=[r(" 保存 ",-1)])]),_:1},8,["loading"])]),default:l(()=>[a.editingConclusion?(b(),R(x,{key:0,modelValue:a.editingConclusion.content,"onUpdate:modelValue":e[7]||(e[7]=s=>a.editingConclusion.content=s),type:"textarea",rows:10,placeholder:"请输入结论内容"},null,8,["modelValue"])):D("",!0)]),_:1},8,["modelValue","title"])])}}}),st=Te(lt,[["__scopeId","data-v-a6027d03"]]);export{st as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Bo7RVAja.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Bo7RVAja.js new file mode 100644 index 0000000..2f8d7b8 --- /dev/null +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Bo7RVAja.js @@ -0,0 +1 @@ +import{d as fe,r as R,a as C,v as D,o as ce,g as u,B as ge,c as _e,k as N,e as l,C as ye,w as n,b as h,t as _,l as p,D as be,f as ke,J as v,L as he,s as Te,z as E,U as De,V as Ne,W as Ve,x as A,H as ve,I as Ee,G as L,Y as Ie,E as y,a0 as we,_ as Ue}from"./index-D3kwcp-p.js";import{g as Re,u as Ce,a as Ae,d as Le,b as Me,c as Se}from"./content-C8FfR8xt.js";const ze={class:"banner-container"},xe={class:"header-content"},Pe={class:"header-right"},qe={class:"sort-buttons"},Be={class:"image-error"},Ge={class:"pagination-wrapper"},Oe=fe({__name:"index",setup(Xe){const d={INTERNAL:1,EXTERNAL:2,MINIPROGRAM:3},M=R(),T=R(),i=C({page:1,pageSize:10,title:"",status:void 0}),a=C({loading:!1,tableData:[],total:0,dialogVisible:!1,dialogTitle:"新增轮播图",formData:V(),formLoading:!1,isEdit:!1}),S=D(()=>{const t=Number(a.formData.linkType);return t===d.INTERNAL||t===d.EXTERNAL||t===d.MINIPROGRAM}),z=D(()=>Number(a.formData.linkType)===d.MINIPROGRAM),x=D(()=>{const t=Number(a.formData.linkType);return t===d.INTERNAL||t===d.EXTERNAL||t===d.MINIPROGRAM}),P=D(()=>{switch(Number(a.formData.linkType)){case d.INTERNAL:return"请输入内部页面路径,如:/pages/detail/index";case d.EXTERNAL:return"请输入外部链接地址,如:https://example.com";case d.MINIPROGRAM:return"请输入小程序页面路径,如:/pages/index/index";default:return"请输入链接地址"}}),q=(t,e,o)=>{const s=Number(a.formData.linkType);if((s===d.INTERNAL||s===d.EXTERNAL)&&(!e||!e.trim())){o(new Error("请输入链接地址"));return}if(s===d.MINIPROGRAM&&(!e||!e.trim())){o(new Error("请输入小程序页面路径"));return}o()},B=(t,e,o)=>{if(Number(a.formData.linkType)===d.MINIPROGRAM&&(!e||!e.trim())){o(new Error("请输入小程序AppID"));return}o()},G=D(()=>({imageUrl:[{required:!0,message:"请上传轮播图片",trigger:"change"}],linkType:[{required:!0,message:"请选择跳转类型",trigger:"change"}],linkUrl:[{validator:q,trigger:"blur"}],appId:[{validator:B,trigger:"blur"}],status:[{required:!0,message:"请选择状态",trigger:"change"}]}));function V(){return{title:"",imageUrl:"",linkType:"",linkUrl:"",appId:"",sort:0,status:1}}function O(t){switch(t){case d.INTERNAL:return"primary";case d.EXTERNAL:return"success";case d.MINIPROGRAM:return"warning";default:return"primary"}}function X(t){switch(t){case d.INTERNAL:return"内部页面";case d.EXTERNAL:return"外部链接";case d.MINIPROGRAM:return"小程序";default:return"未知"}}async function g(){var t,e;a.loading=!0;try{const o={page:i.page,pageSize:i.pageSize};i.title&&(o.title=i.title),i.status!==void 0&&i.status!==""&&(o.status=Number(i.status));const s=await Re(o);if(s.code===0)a.tableData=((t=s.data)==null?void 0:t.list)||[],a.total=((e=s.data)==null?void 0:e.total)||0;else throw new Error(s.message||"获取轮播图列表失败")}catch(o){const s=o instanceof Error?o.message:"获取轮播图列表失败";y.error(s)}finally{a.loading=!1}}async function F(t){t<=0||await I(t,t-1)}async function K(t){t>=a.tableData.length-1||await I(t,t+1)}async function I(t,e){const o=a.tableData[t];a.tableData[t]=a.tableData[e],a.tableData[e]=o;const s=a.tableData.map((m,b)=>({id:m.id,sort:b}));a.loading=!0;try{const m=await Ce({items:s});if(m.code===0)y.success("排序更新成功"),await g();else throw new Error(m.message||"排序更新失败")}catch(m){const b=m instanceof Error?m.message:"排序更新失败";y.error(b),await g()}finally{a.loading=!1}}function w(){i.page=1,g()}function $(){i.title="",i.status=void 0,i.page=1,g()}function j(t){i.pageSize=t,i.page=1,g()}function Y(t){i.page=t,g()}function H({prop:t,order:e}){console.log("Sort changed:",t,e)}function J(){a.isEdit=!1,a.dialogTitle="新增轮播图",a.formData=V(),a.dialogVisible=!0}function W(t){a.isEdit=!0,a.dialogTitle="编辑轮播图",a.formData={id:t.id,title:t.title||"",imageUrl:t.imageUrl,linkType:String(t.linkType),linkUrl:t.linkUrl||"",appId:t.appId||"",sort:t.sort,status:t.status},a.dialogVisible=!0}function Q(){Number(a.formData.linkType)!==d.MINIPROGRAM&&(a.formData.appId=""),we(()=>{var t;(t=T.value)==null||t.validateField(["linkUrl","appId"])})}async function Z(t,e){t._statusLoading=!0;try{const o=await Ae({id:t.id,status:e});if(o.code===0)y.success(e===1?"已启用":"已禁用");else throw t.status=e===1?0:1,new Error(o.message||"状态更新失败")}catch(o){const s=o instanceof Error?o.message:"状态更新失败";y.error(s)}finally{t._statusLoading=!1}}async function ee(t){try{const e=await Le(t.id);if(e.code===0)y.success("删除成功"),a.tableData.length===1&&i.page>1&&i.page--,await g();else throw new Error(e.message||"删除失败")}catch(e){const o=e instanceof Error?e.message:"删除失败";y.error(o)}}async function te(){if(T.value){try{await T.value.validate()}catch{return}a.formLoading=!0;try{const t=a.formData,e={title:t.title||void 0,imageUrl:t.imageUrl,linkType:Number(t.linkType),linkUrl:t.linkUrl||void 0,appId:t.appId||void 0,sort:t.sort,status:Number(t.status)};let o;if(a.isEdit&&t.id?o=await Me({...e,id:t.id}):o=await Se(e),o.code===0)y.success(a.isEdit?"更新成功":"创建成功"),a.dialogVisible=!1,await g();else throw new Error(o.message||(a.isEdit?"更新失败":"创建失败"))}catch(t){const e=t instanceof Error?t.message:a.isEdit?"更新失败":"创建失败";y.error(e)}finally{a.formLoading=!1}}}function ae(){var t;(t=T.value)==null||t.resetFields(),a.formData=V()}return ce(()=>{g()}),(t,e)=>{const o=u("el-icon"),s=u("el-button"),m=u("el-card"),b=u("el-input"),f=u("el-form-item"),U=u("el-form"),k=u("el-table-column"),le=u("el-image"),ne=u("el-tag"),re=u("el-switch"),oe=u("el-popconfirm"),ie=u("el-table"),se=u("el-pagination"),de=u("el-input-number"),ue=u("el-dialog"),pe=ge("loading");return N(),_e("div",ze,[l(m,{class:"page-header"},{default:n(()=>[h("div",xe,[e[14]||(e[14]=h("div",{class:"header-left"},[h("h2",{class:"page-title"},"轮播图管理"),h("span",{class:"page-description"},"管理小程序首页轮播图,支持图片上传、跳转配置、排序和状态管理")],-1)),h("div",Pe,[l(s,{type:"primary",onClick:J},{default:n(()=>[l(o,null,{default:n(()=>[l(p(be))]),_:1}),e[13]||(e[13]=_(" 新增轮播图 ",-1))]),_:1})])])]),_:1}),l(m,{class:"search-card"},{default:n(()=>[l(U,{model:i,inline:""},{default:n(()=>[l(f,{label:"标题"},{default:n(()=>[l(b,{modelValue:i.title,"onUpdate:modelValue":e[0]||(e[0]=r=>i.title=r),placeholder:"请输入标题",clearable:"",onKeyup:ke(w,["enter"])},null,8,["modelValue"])]),_:1}),l(f,{label:"状态"},{default:n(()=>[l(p(v),{modelValue:i.status,"onUpdate:modelValue":e[1]||(e[1]=r=>i.status=r),type:"common_status",placeholder:"请选择状态",clearable:""},null,8,["modelValue"])]),_:1}),l(f,null,{default:n(()=>[l(s,{type:"primary",onClick:w},{default:n(()=>[l(o,null,{default:n(()=>[l(p(he))]),_:1}),e[15]||(e[15]=_(" 搜索 ",-1))]),_:1}),l(s,{onClick:$},{default:n(()=>[l(o,null,{default:n(()=>[l(p(Te))]),_:1}),e[16]||(e[16]=_(" 重置 ",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),ye((N(),E(m,{class:"table-card"},{default:n(()=>[l(ie,{ref_key:"tableRef",ref:M,data:a.tableData,"row-key":"id",stripe:"",onSortChange:H},{default:n(()=>[l(k,{width:"80",align:"center",label:"排序"},{default:n(({row:r,$index:c})=>[h("div",qe,[l(s,{type:"primary",link:"",size:"small",disabled:c===0,onClick:me=>F(c)},{default:n(()=>[l(o,null,{default:n(()=>[l(p(De))]),_:1})]),_:1},8,["disabled","onClick"]),l(s,{type:"primary",link:"",size:"small",disabled:c===a.tableData.length-1,onClick:me=>K(c)},{default:n(()=>[l(o,null,{default:n(()=>[l(p(Ne))]),_:1})]),_:1},8,["disabled","onClick"])])]),_:1}),l(k,{label:"图片",width:"120",align:"center"},{default:n(({row:r})=>[l(le,{src:r.imageUrl,"preview-src-list":[r.imageUrl],fit:"cover",style:{width:"80px",height:"45px","border-radius":"4px"},"preview-teleported":""},{error:n(()=>[h("div",Be,[l(o,null,{default:n(()=>[l(p(Ve))]),_:1})])]),_:1},8,["src","preview-src-list"])]),_:1}),l(k,{prop:"title",label:"标题","min-width":"150","show-overflow-tooltip":""},{default:n(({row:r})=>[_(A(r.title||"-"),1)]),_:1}),l(k,{prop:"linkTypeName",label:"跳转类型",width:"120",align:"center"},{default:n(({row:r})=>[l(ne,{type:O(r.linkType)},{default:n(()=>[_(A(r.linkTypeName||X(r.linkType)),1)]),_:2},1032,["type"])]),_:1}),l(k,{label:"状态",width:"100",align:"center"},{default:n(({row:r})=>[l(re,{modelValue:r.status,"onUpdate:modelValue":c=>r.status=c,"active-value":1,"inactive-value":0,loading:r._statusLoading,onChange:c=>Z(r,c)},null,8,["modelValue","onUpdate:modelValue","loading","onChange"])]),_:1}),l(k,{prop:"sort",label:"排序",width:"80",align:"center",sortable:"custom"}),l(k,{prop:"createTime",label:"创建时间",width:"180",align:"center"}),l(k,{label:"操作",width:"150",fixed:"right",align:"center"},{default:n(({row:r})=>[l(s,{type:"primary",link:"",size:"small",onClick:c=>W(r)},{default:n(()=>[l(o,null,{default:n(()=>[l(p(ve))]),_:1}),e[17]||(e[17]=_(" 编辑 ",-1))]),_:1},8,["onClick"]),l(oe,{title:"确定要删除这条轮播图吗?","confirm-button-text":"确定","cancel-button-text":"取消",onConfirm:c=>ee(r)},{reference:n(()=>[l(s,{type:"danger",link:"",size:"small"},{default:n(()=>[l(o,null,{default:n(()=>[l(p(Ee))]),_:1}),e[18]||(e[18]=_(" 删除 ",-1))]),_:1})]),_:1},8,["onConfirm"])]),_:1})]),_:1},8,["data"]),h("div",Ge,[l(se,{"current-page":i.page,"onUpdate:currentPage":e[2]||(e[2]=r=>i.page=r),"page-size":i.pageSize,"onUpdate:pageSize":e[3]||(e[3]=r=>i.pageSize=r),"page-sizes":[10,20,50,100],total:a.total,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:j,onCurrentChange:Y},null,8,["current-page","page-size","total"])])]),_:1})),[[pe,a.loading]]),l(ue,{modelValue:a.dialogVisible,"onUpdate:modelValue":e[12]||(e[12]=r=>a.dialogVisible=r),title:a.dialogTitle,width:"600px","close-on-click-modal":!1,onClosed:ae},{footer:n(()=>[l(s,{onClick:e[11]||(e[11]=r=>a.dialogVisible=!1)},{default:n(()=>[...e[19]||(e[19]=[_("取消",-1)])]),_:1}),l(s,{type:"primary",loading:a.formLoading,onClick:te},{default:n(()=>[...e[20]||(e[20]=[_(" 确定 ",-1)])]),_:1},8,["loading"])]),default:n(()=>[l(U,{ref_key:"formRef",ref:T,model:a.formData,rules:G.value,"label-width":"100px","label-position":"right"},{default:n(()=>[l(f,{label:"标题",prop:"title"},{default:n(()=>[l(b,{modelValue:a.formData.title,"onUpdate:modelValue":e[4]||(e[4]=r=>a.formData.title=r),placeholder:"请输入标题(可选)",maxlength:"50","show-word-limit":""},null,8,["modelValue"])]),_:1}),l(f,{label:"轮播图片",prop:"imageUrl",required:""},{default:n(()=>[l(p(Ie),{modelValue:a.formData.imageUrl,"onUpdate:modelValue":e[5]||(e[5]=r=>a.formData.imageUrl=r),placeholder:"点击上传轮播图",tip:"建议尺寸:750x400,支持 jpg、png、gif 格式","max-size":10},null,8,["modelValue"])]),_:1}),l(f,{label:"跳转类型",prop:"linkType",required:""},{default:n(()=>[l(p(v),{modelValue:a.formData.linkType,"onUpdate:modelValue":e[6]||(e[6]=r=>a.formData.linkType=r),type:"banner_link_type",placeholder:"请选择跳转类型",onChange:Q},null,8,["modelValue"])]),_:1}),S.value?(N(),E(f,{key:0,label:"链接地址",prop:"linkUrl",required:x.value},{default:n(()=>[l(b,{modelValue:a.formData.linkUrl,"onUpdate:modelValue":e[7]||(e[7]=r=>a.formData.linkUrl=r),placeholder:P.value,clearable:""},null,8,["modelValue","placeholder"])]),_:1},8,["required"])):L("",!0),z.value?(N(),E(f,{key:1,label:"小程序AppID",prop:"appId",required:""},{default:n(()=>[l(b,{modelValue:a.formData.appId,"onUpdate:modelValue":e[8]||(e[8]=r=>a.formData.appId=r),placeholder:"请输入小程序AppID",clearable:""},null,8,["modelValue"])]),_:1})):L("",!0),l(f,{label:"排序",prop:"sort"},{default:n(()=>[l(de,{modelValue:a.formData.sort,"onUpdate:modelValue":e[9]||(e[9]=r=>a.formData.sort=r),min:0,max:9999,placeholder:"数值越小越靠前"},null,8,["modelValue"])]),_:1}),l(f,{label:"状态",prop:"status",required:""},{default:n(()=>[l(p(v),{modelValue:a.formData.status,"onUpdate:modelValue":e[10]||(e[10]=r=>a.formData.status=r),type:"common_status",placeholder:"请选择状态"},null,8,["modelValue"])]),_:1})]),_:1},8,["model","rules"])]),_:1},8,["modelValue","title"])])}}}),$e=Ue(Oe,[["__scopeId","data-v-a062b8f1"]]);export{$e as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DQHrJnaL.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-C24USYiG.js similarity index 98% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DQHrJnaL.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-C24USYiG.js index 74485e2..6f5ab97 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DQHrJnaL.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-C24USYiG.js @@ -1 +1 @@ -import{d as ne,r as V,a as se,v as R,o as ie,g as n,B as de,c as I,k as u,e as l,C as ue,w as o,b as _,t as c,l as p,D as N,F as ce,y as me,z as f,G as pe,x as A,H as fe,I as U,J as L,E as g,_ as ge}from"./index-CIT-S3uf.js";import{g as ye,a as _e,d as be,u as ve,c as Te}from"./assessment-LEpEOHMS.js";const he={class:"category-container"},Ve={class:"header-content"},Ce={class:"header-right"},we=ne({__name:"index",setup(De){const z={1:"八大智能",2:"个人特质",3:"细分能力",4:"先天学习",5:"学习能力",6:"大脑类型",7:"性格类型",8:"未来能力"},$={1:"累加(1-10)",2:"二值(0/1)"},q=V(),b=V(),d=V(void 0),t=se({loading:!1,assessmentTypes:[],categoryTree:[],dialogVisible:!1,dialogTitle:"新增分类",formData:T(),formLoading:!1,isEdit:!1}),B=R(()=>{if(!t.isEdit)return t.categoryTree;const a=t.formData.id;if(!a)return t.categoryTree;const e=s=>s.filter(i=>i.id!==a).map(i=>({...i,children:i.children?e(i.children):[]}));return e(t.categoryTree)}),F=R(()=>({name:[{required:!0,message:"请输入分类名称",trigger:"blur"},{max:50,message:"名称不能超过50个字符",trigger:"blur"}],code:[{required:!0,message:"请输入分类编码",trigger:"blur"},{max:50,message:"编码不能超过50个字符",trigger:"blur"}],categoryType:[{required:!0,message:"请选择分类类型",trigger:"change"}],scoreRule:[{required:!0,message:"请选择计分规则",trigger:"change"}]}));function T(){return{assessmentTypeId:void 0,parentId:void 0,name:"",code:"",categoryType:void 0,scoreRule:void 0,sort:0}}function S(a){return z[a]||"未知"}function M(a){return $[a]||"未知"}function C(a){return a.children&&a.children.length>0}async function O(){var a;try{const e=await ye({page:1,pageSize:100});e.code===0&&(t.assessmentTypes=((a=e.data)==null?void 0:a.list)||[],t.assessmentTypes.length>0&&!d.value&&(d.value=t.assessmentTypes[0].id,await v()))}catch(e){console.error("Failed to load assessment types:",e)}}async function v(){if(!d.value){t.categoryTree=[];return}t.loading=!0;try{const a=await _e(d.value);if(a.code===0)t.categoryTree=a.data||[];else throw new Error(a.message||"获取分类树失败")}catch(a){const e=a instanceof Error?a.message:"获取分类树失败";g.error(e),t.categoryTree=[]}finally{t.loading=!1}}function P(){v()}function w(a){if(!d.value){g.warning("请先选择测评类型");return}t.isEdit=!1,t.dialogTitle="新增分类",t.formData={...T(),assessmentTypeId:d.value,parentId:a},t.dialogVisible=!0}function G(a){w(a.id)}function Y(a){t.isEdit=!0,t.dialogTitle="编辑分类",t.formData={id:a.id,assessmentTypeId:d.value,parentId:a.parentId||void 0,name:a.name,code:a.code,categoryType:a.categoryType,scoreRule:a.scoreRule,sort:a.sort},t.dialogVisible=!0}async function H(a){if(C(a)){g.error("该分类下有子分类,无法删除");return}try{const e=await be(a.id);if(e.code===0)g.success("删除成功"),await v();else throw new Error(e.message||"删除失败")}catch(e){const s=e instanceof Error?e.message:"删除失败";g.error(s)}}async function J(){if(b.value){try{await b.value.validate()}catch{return}t.formLoading=!0;try{const a=t.formData,e={assessmentTypeId:a.assessmentTypeId,parentId:a.parentId||void 0,name:a.name,code:a.code,categoryType:Number(a.categoryType),scoreRule:Number(a.scoreRule),sort:a.sort};let s;if(t.isEdit&&a.id?s=await ve({...e,id:a.id}):s=await Te(e),s.code===0)g.success(t.isEdit?"更新成功":"创建成功"),t.dialogVisible=!1,await v();else throw new Error(s.message||(t.isEdit?"更新失败":"创建失败"))}catch(a){const e=a instanceof Error?a.message:t.isEdit?"更新失败":"创建失败";g.error(e)}finally{t.formLoading=!1}}}function j(){var a;(a=b.value)==null||a.resetFields(),t.formData=T()}return ie(async()=>{await O()}),(a,e)=>{const s=n("el-icon"),i=n("el-button"),h=n("el-card"),K=n("el-option"),Q=n("el-select"),m=n("el-form-item"),D=n("el-form"),W=n("el-alert"),y=n("el-table-column"),k=n("el-tag"),X=n("el-popconfirm"),Z=n("el-tooltip"),ee=n("el-table"),te=n("el-empty"),ae=n("el-tree-select"),x=n("el-input"),le=n("el-input-number"),oe=n("el-dialog"),re=de("loading");return u(),I("div",he,[l(h,{class:"page-header"},{default:o(()=>[_("div",Ve,[e[11]||(e[11]=_("div",{class:"header-left"},[_("h2",{class:"page-title"},"报告分类管理"),_("span",{class:"page-description"},"管理测评报告的分类层级结构,配置计分维度")],-1)),_("div",Ce,[l(i,{type:"primary",disabled:!d.value,onClick:e[0]||(e[0]=r=>w())},{default:o(()=>[l(s,null,{default:o(()=>[l(p(N))]),_:1}),e[10]||(e[10]=c(" 新增分类 ",-1))]),_:1},8,["disabled"])])])]),_:1}),l(h,{class:"filter-card"},{default:o(()=>[l(D,{inline:""},{default:o(()=>[l(m,{label:"测评类型"},{default:o(()=>[l(Q,{modelValue:d.value,"onUpdate:modelValue":e[1]||(e[1]=r=>d.value=r),placeholder:"请选择测评类型",style:{width:"280px"},onChange:P},{default:o(()=>[(u(!0),I(ce,null,me(t.assessmentTypes,r=>(u(),f(K,{key:r.id,label:r.name,value:r.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1}),ue((u(),f(h,{class:"table-card"},{default:o(()=>[d.value?(u(),f(ee,{key:1,ref_key:"tableRef",ref:q,data:t.categoryTree,"row-key":"id",border:"","default-expand-all":"","tree-props":{children:"children",hasChildren:"hasChildren"}},{default:o(()=>[l(y,{prop:"name",label:"分类名称","min-width":"200","show-overflow-tooltip":""}),l(y,{prop:"code",label:"分类编码",width:"150","show-overflow-tooltip":""}),l(y,{label:"分类类型",width:"140",align:"center"},{default:o(({row:r})=>[l(k,{type:"info"},{default:o(()=>[c(A(r.categoryTypeName||S(r.categoryType)),1)]),_:2},1024)]),_:1}),l(y,{label:"计分规则",width:"140",align:"center"},{default:o(({row:r})=>[l(k,{type:r.scoreRule===1?"success":"warning"},{default:o(()=>[c(A(r.scoreRuleName||M(r.scoreRule)),1)]),_:2},1032,["type"])]),_:1}),l(y,{prop:"sort",label:"排序",width:"80",align:"center"}),l(y,{label:"操作",width:"220",fixed:"right",align:"center"},{default:o(({row:r})=>[l(i,{type:"primary",link:"",size:"small",onClick:E=>G(r)},{default:o(()=>[l(s,null,{default:o(()=>[l(p(N))]),_:1}),e[12]||(e[12]=c(" 添加子分类 ",-1))]),_:1},8,["onClick"]),l(i,{type:"primary",link:"",size:"small",onClick:E=>Y(r)},{default:o(()=>[l(s,null,{default:o(()=>[l(p(fe))]),_:1}),e[13]||(e[13]=c(" 编辑 ",-1))]),_:1},8,["onClick"]),C(r)?(u(),f(Z,{key:1,content:"该分类下有子分类,无法删除",placement:"top"},{default:o(()=>[l(i,{type:"danger",link:"",size:"small",disabled:""},{default:o(()=>[l(s,null,{default:o(()=>[l(p(U))]),_:1}),e[15]||(e[15]=c(" 删除 ",-1))]),_:1})]),_:1})):(u(),f(X,{key:0,title:"确定要删除这个分类吗?","confirm-button-text":"确定","cancel-button-text":"取消",onConfirm:E=>H(r)},{reference:o(()=>[l(i,{type:"danger",link:"",size:"small"},{default:o(()=>[l(s,null,{default:o(()=>[l(p(U))]),_:1}),e[14]||(e[14]=c(" 删除 ",-1))]),_:1})]),_:1},8,["onConfirm"]))]),_:1})]),_:1},8,["data"])):(u(),f(W,{key:0,title:"请先选择测评类型以查看分类数据",type:"info",closable:!1,"show-icon":"",style:{"margin-bottom":"16px"}})),d.value&&t.categoryTree.length===0&&!t.loading?(u(),f(te,{key:2,description:"暂无分类数据,请点击新增分类按钮添加"})):pe("",!0)]),_:1})),[[re,t.loading]]),l(oe,{modelValue:t.dialogVisible,"onUpdate:modelValue":e[9]||(e[9]=r=>t.dialogVisible=r),title:t.dialogTitle,width:"600px","close-on-click-modal":!1,onClosed:j},{footer:o(()=>[l(i,{onClick:e[8]||(e[8]=r=>t.dialogVisible=!1)},{default:o(()=>[...e[16]||(e[16]=[c("取消",-1)])]),_:1}),l(i,{type:"primary",loading:t.formLoading,onClick:J},{default:o(()=>[...e[17]||(e[17]=[c(" 确定 ",-1)])]),_:1},8,["loading"])]),default:o(()=>[l(D,{ref_key:"formRef",ref:b,model:t.formData,rules:F.value,"label-width":"100px","label-position":"right"},{default:o(()=>[l(m,{label:"父分类",prop:"parentId"},{default:o(()=>[l(ae,{modelValue:t.formData.parentId,"onUpdate:modelValue":e[2]||(e[2]=r=>t.formData.parentId=r),data:B.value,props:{label:"name",value:"id",children:"children"},placeholder:"请选择父分类(不选则为顶级分类)",clearable:"","check-strictly":"","render-after-expand":!1,style:{width:"100%"}},null,8,["modelValue","data"])]),_:1}),l(m,{label:"分类名称",prop:"name"},{default:o(()=>[l(x,{modelValue:t.formData.name,"onUpdate:modelValue":e[3]||(e[3]=r=>t.formData.name=r),placeholder:"请输入分类名称",maxlength:"50","show-word-limit":""},null,8,["modelValue"])]),_:1}),l(m,{label:"分类编码",prop:"code"},{default:o(()=>[l(x,{modelValue:t.formData.code,"onUpdate:modelValue":e[4]||(e[4]=r=>t.formData.code=r),placeholder:"请输入分类编码",maxlength:"50","show-word-limit":""},null,8,["modelValue"])]),_:1}),l(m,{label:"分类类型",prop:"categoryType"},{default:o(()=>[l(p(L),{modelValue:t.formData.categoryType,"onUpdate:modelValue":e[5]||(e[5]=r=>t.formData.categoryType=r),type:"category_type",placeholder:"请选择分类类型",style:{width:"100%"}},null,8,["modelValue"])]),_:1}),l(m,{label:"计分规则",prop:"scoreRule"},{default:o(()=>[l(p(L),{modelValue:t.formData.scoreRule,"onUpdate:modelValue":e[6]||(e[6]=r=>t.formData.scoreRule=r),type:"score_rule",placeholder:"请选择计分规则",style:{width:"100%"}},null,8,["modelValue"])]),_:1}),l(m,{label:"排序",prop:"sort"},{default:o(()=>[l(le,{modelValue:t.formData.sort,"onUpdate:modelValue":e[7]||(e[7]=r=>t.formData.sort=r),min:0,max:9999,placeholder:"数值越小越靠前"},null,8,["modelValue"])]),_:1})]),_:1},8,["model","rules"])]),_:1},8,["modelValue","title"])])}}}),Ee=ge(we,[["__scopeId","data-v-ff69e995"]]);export{Ee as default}; +import{d as ne,r as V,a as se,v as R,o as ie,g as n,B as de,c as I,k as u,e as l,C as ue,w as o,b as _,t as c,l as p,D as N,F as ce,y as me,z as f,G as pe,x as A,H as fe,I as U,J as L,E as g,_ as ge}from"./index-D3kwcp-p.js";import{g as ye,a as _e,d as be,u as ve,c as Te}from"./assessment-DhwT9plj.js";const he={class:"category-container"},Ve={class:"header-content"},Ce={class:"header-right"},we=ne({__name:"index",setup(De){const z={1:"八大智能",2:"个人特质",3:"细分能力",4:"先天学习",5:"学习能力",6:"大脑类型",7:"性格类型",8:"未来能力"},$={1:"累加(1-10)",2:"二值(0/1)"},q=V(),b=V(),d=V(void 0),t=se({loading:!1,assessmentTypes:[],categoryTree:[],dialogVisible:!1,dialogTitle:"新增分类",formData:T(),formLoading:!1,isEdit:!1}),B=R(()=>{if(!t.isEdit)return t.categoryTree;const a=t.formData.id;if(!a)return t.categoryTree;const e=s=>s.filter(i=>i.id!==a).map(i=>({...i,children:i.children?e(i.children):[]}));return e(t.categoryTree)}),F=R(()=>({name:[{required:!0,message:"请输入分类名称",trigger:"blur"},{max:50,message:"名称不能超过50个字符",trigger:"blur"}],code:[{required:!0,message:"请输入分类编码",trigger:"blur"},{max:50,message:"编码不能超过50个字符",trigger:"blur"}],categoryType:[{required:!0,message:"请选择分类类型",trigger:"change"}],scoreRule:[{required:!0,message:"请选择计分规则",trigger:"change"}]}));function T(){return{assessmentTypeId:void 0,parentId:void 0,name:"",code:"",categoryType:void 0,scoreRule:void 0,sort:0}}function S(a){return z[a]||"未知"}function M(a){return $[a]||"未知"}function C(a){return a.children&&a.children.length>0}async function O(){var a;try{const e=await ye({page:1,pageSize:100});e.code===0&&(t.assessmentTypes=((a=e.data)==null?void 0:a.list)||[],t.assessmentTypes.length>0&&!d.value&&(d.value=t.assessmentTypes[0].id,await v()))}catch(e){console.error("Failed to load assessment types:",e)}}async function v(){if(!d.value){t.categoryTree=[];return}t.loading=!0;try{const a=await _e(d.value);if(a.code===0)t.categoryTree=a.data||[];else throw new Error(a.message||"获取分类树失败")}catch(a){const e=a instanceof Error?a.message:"获取分类树失败";g.error(e),t.categoryTree=[]}finally{t.loading=!1}}function P(){v()}function w(a){if(!d.value){g.warning("请先选择测评类型");return}t.isEdit=!1,t.dialogTitle="新增分类",t.formData={...T(),assessmentTypeId:d.value,parentId:a},t.dialogVisible=!0}function G(a){w(a.id)}function Y(a){t.isEdit=!0,t.dialogTitle="编辑分类",t.formData={id:a.id,assessmentTypeId:d.value,parentId:a.parentId||void 0,name:a.name,code:a.code,categoryType:a.categoryType,scoreRule:a.scoreRule,sort:a.sort},t.dialogVisible=!0}async function H(a){if(C(a)){g.error("该分类下有子分类,无法删除");return}try{const e=await be(a.id);if(e.code===0)g.success("删除成功"),await v();else throw new Error(e.message||"删除失败")}catch(e){const s=e instanceof Error?e.message:"删除失败";g.error(s)}}async function J(){if(b.value){try{await b.value.validate()}catch{return}t.formLoading=!0;try{const a=t.formData,e={assessmentTypeId:a.assessmentTypeId,parentId:a.parentId||void 0,name:a.name,code:a.code,categoryType:Number(a.categoryType),scoreRule:Number(a.scoreRule),sort:a.sort};let s;if(t.isEdit&&a.id?s=await ve({...e,id:a.id}):s=await Te(e),s.code===0)g.success(t.isEdit?"更新成功":"创建成功"),t.dialogVisible=!1,await v();else throw new Error(s.message||(t.isEdit?"更新失败":"创建失败"))}catch(a){const e=a instanceof Error?a.message:t.isEdit?"更新失败":"创建失败";g.error(e)}finally{t.formLoading=!1}}}function j(){var a;(a=b.value)==null||a.resetFields(),t.formData=T()}return ie(async()=>{await O()}),(a,e)=>{const s=n("el-icon"),i=n("el-button"),h=n("el-card"),K=n("el-option"),Q=n("el-select"),m=n("el-form-item"),D=n("el-form"),W=n("el-alert"),y=n("el-table-column"),k=n("el-tag"),X=n("el-popconfirm"),Z=n("el-tooltip"),ee=n("el-table"),te=n("el-empty"),ae=n("el-tree-select"),x=n("el-input"),le=n("el-input-number"),oe=n("el-dialog"),re=de("loading");return u(),I("div",he,[l(h,{class:"page-header"},{default:o(()=>[_("div",Ve,[e[11]||(e[11]=_("div",{class:"header-left"},[_("h2",{class:"page-title"},"报告分类管理"),_("span",{class:"page-description"},"管理测评报告的分类层级结构,配置计分维度")],-1)),_("div",Ce,[l(i,{type:"primary",disabled:!d.value,onClick:e[0]||(e[0]=r=>w())},{default:o(()=>[l(s,null,{default:o(()=>[l(p(N))]),_:1}),e[10]||(e[10]=c(" 新增分类 ",-1))]),_:1},8,["disabled"])])])]),_:1}),l(h,{class:"filter-card"},{default:o(()=>[l(D,{inline:""},{default:o(()=>[l(m,{label:"测评类型"},{default:o(()=>[l(Q,{modelValue:d.value,"onUpdate:modelValue":e[1]||(e[1]=r=>d.value=r),placeholder:"请选择测评类型",style:{width:"280px"},onChange:P},{default:o(()=>[(u(!0),I(ce,null,me(t.assessmentTypes,r=>(u(),f(K,{key:r.id,label:r.name,value:r.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1}),ue((u(),f(h,{class:"table-card"},{default:o(()=>[d.value?(u(),f(ee,{key:1,ref_key:"tableRef",ref:q,data:t.categoryTree,"row-key":"id",border:"","default-expand-all":"","tree-props":{children:"children",hasChildren:"hasChildren"}},{default:o(()=>[l(y,{prop:"name",label:"分类名称","min-width":"200","show-overflow-tooltip":""}),l(y,{prop:"code",label:"分类编码",width:"150","show-overflow-tooltip":""}),l(y,{label:"分类类型",width:"140",align:"center"},{default:o(({row:r})=>[l(k,{type:"info"},{default:o(()=>[c(A(r.categoryTypeName||S(r.categoryType)),1)]),_:2},1024)]),_:1}),l(y,{label:"计分规则",width:"140",align:"center"},{default:o(({row:r})=>[l(k,{type:r.scoreRule===1?"success":"warning"},{default:o(()=>[c(A(r.scoreRuleName||M(r.scoreRule)),1)]),_:2},1032,["type"])]),_:1}),l(y,{prop:"sort",label:"排序",width:"80",align:"center"}),l(y,{label:"操作",width:"220",fixed:"right",align:"center"},{default:o(({row:r})=>[l(i,{type:"primary",link:"",size:"small",onClick:E=>G(r)},{default:o(()=>[l(s,null,{default:o(()=>[l(p(N))]),_:1}),e[12]||(e[12]=c(" 添加子分类 ",-1))]),_:1},8,["onClick"]),l(i,{type:"primary",link:"",size:"small",onClick:E=>Y(r)},{default:o(()=>[l(s,null,{default:o(()=>[l(p(fe))]),_:1}),e[13]||(e[13]=c(" 编辑 ",-1))]),_:1},8,["onClick"]),C(r)?(u(),f(Z,{key:1,content:"该分类下有子分类,无法删除",placement:"top"},{default:o(()=>[l(i,{type:"danger",link:"",size:"small",disabled:""},{default:o(()=>[l(s,null,{default:o(()=>[l(p(U))]),_:1}),e[15]||(e[15]=c(" 删除 ",-1))]),_:1})]),_:1})):(u(),f(X,{key:0,title:"确定要删除这个分类吗?","confirm-button-text":"确定","cancel-button-text":"取消",onConfirm:E=>H(r)},{reference:o(()=>[l(i,{type:"danger",link:"",size:"small"},{default:o(()=>[l(s,null,{default:o(()=>[l(p(U))]),_:1}),e[14]||(e[14]=c(" 删除 ",-1))]),_:1})]),_:1},8,["onConfirm"]))]),_:1})]),_:1},8,["data"])):(u(),f(W,{key:0,title:"请先选择测评类型以查看分类数据",type:"info",closable:!1,"show-icon":"",style:{"margin-bottom":"16px"}})),d.value&&t.categoryTree.length===0&&!t.loading?(u(),f(te,{key:2,description:"暂无分类数据,请点击新增分类按钮添加"})):pe("",!0)]),_:1})),[[re,t.loading]]),l(oe,{modelValue:t.dialogVisible,"onUpdate:modelValue":e[9]||(e[9]=r=>t.dialogVisible=r),title:t.dialogTitle,width:"600px","close-on-click-modal":!1,onClosed:j},{footer:o(()=>[l(i,{onClick:e[8]||(e[8]=r=>t.dialogVisible=!1)},{default:o(()=>[...e[16]||(e[16]=[c("取消",-1)])]),_:1}),l(i,{type:"primary",loading:t.formLoading,onClick:J},{default:o(()=>[...e[17]||(e[17]=[c(" 确定 ",-1)])]),_:1},8,["loading"])]),default:o(()=>[l(D,{ref_key:"formRef",ref:b,model:t.formData,rules:F.value,"label-width":"100px","label-position":"right"},{default:o(()=>[l(m,{label:"父分类",prop:"parentId"},{default:o(()=>[l(ae,{modelValue:t.formData.parentId,"onUpdate:modelValue":e[2]||(e[2]=r=>t.formData.parentId=r),data:B.value,props:{label:"name",value:"id",children:"children"},placeholder:"请选择父分类(不选则为顶级分类)",clearable:"","check-strictly":"","render-after-expand":!1,style:{width:"100%"}},null,8,["modelValue","data"])]),_:1}),l(m,{label:"分类名称",prop:"name"},{default:o(()=>[l(x,{modelValue:t.formData.name,"onUpdate:modelValue":e[3]||(e[3]=r=>t.formData.name=r),placeholder:"请输入分类名称",maxlength:"50","show-word-limit":""},null,8,["modelValue"])]),_:1}),l(m,{label:"分类编码",prop:"code"},{default:o(()=>[l(x,{modelValue:t.formData.code,"onUpdate:modelValue":e[4]||(e[4]=r=>t.formData.code=r),placeholder:"请输入分类编码",maxlength:"50","show-word-limit":""},null,8,["modelValue"])]),_:1}),l(m,{label:"分类类型",prop:"categoryType"},{default:o(()=>[l(p(L),{modelValue:t.formData.categoryType,"onUpdate:modelValue":e[5]||(e[5]=r=>t.formData.categoryType=r),type:"category_type",placeholder:"请选择分类类型",style:{width:"100%"}},null,8,["modelValue"])]),_:1}),l(m,{label:"计分规则",prop:"scoreRule"},{default:o(()=>[l(p(L),{modelValue:t.formData.scoreRule,"onUpdate:modelValue":e[6]||(e[6]=r=>t.formData.scoreRule=r),type:"score_rule",placeholder:"请选择计分规则",style:{width:"100%"}},null,8,["modelValue"])]),_:1}),l(m,{label:"排序",prop:"sort"},{default:o(()=>[l(le,{modelValue:t.formData.sort,"onUpdate:modelValue":e[7]||(e[7]=r=>t.formData.sort=r),min:0,max:9999,placeholder:"数值越小越靠前"},null,8,["modelValue"])]),_:1})]),_:1},8,["model","rules"])]),_:1},8,["modelValue","title"])])}}}),Ee=ge(we,[["__scopeId","data-v-ff69e995"]]);export{Ee as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DgcuRZo4.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-C56HcTE5.js similarity index 99% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DgcuRZo4.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-C56HcTE5.js index 6eedafd..ed76473 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DgcuRZo4.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-C56HcTE5.js @@ -1 +1 @@ -import{d as ue,r as z,a as P,o as ce,g as m,B as me,c as F,k as w,e as t,C as H,w as l,b as r,t as c,l as p,N as pe,f as A,J as M,L as fe,s as _e,z as B,m as I,x as u,Q as ge,H as ve,I as be,G as Le,F as he,E as v,S as De,_ as we}from"./index-CIT-S3uf.js";import{g as ye,u as Ve,d as ke,a as Te,e as Ee,b as Ce}from"./user-DRBZRWuL.js";const Ue={class:"user-container"},Se={class:"header-content"},xe={class:"header-right"},Ne={class:"balance-text"},Re={class:"pagination-wrapper"},ze={class:"user-detail"},Fe={class:"detail-section"},Ae={class:"user-profile"},Me={class:"profile-info"},Be={class:"nickname"},Ie={class:"uid"},Oe={class:"detail-section"},$e={class:"detail-section"},Pe={class:"money-text"},He={class:"money-text"},Ke={class:"money-text"},Ye={class:"detail-section"},je={class:"stats-grid"},qe={class:"stat-item"},Ge={class:"stat-value"},Je={class:"stat-item"},Qe={class:"stat-value"},We={class:"stat-item"},Xe={class:"stat-value"},Ze=ue({__name:"index",setup(et){const h={NORMAL:1,PARTNER:2,CHANNEL:3},y={DISABLED:0,NORMAL:1},K=[{text:"最近一周",value:()=>{const s=new Date,e=new Date;return e.setTime(e.getTime()-3600*1e3*24*7),[e,s]}},{text:"最近一个月",value:()=>{const s=new Date,e=new Date;return e.setTime(e.getTime()-3600*1e3*24*30),[e,s]}},{text:"最近三个月",value:()=>{const s=new Date,e=new Date;return e.setTime(e.getTime()-3600*1e3*24*90),[e,s]}}],Y=z(),E=z(),C=z(null),a=P({page:1,pageSize:10,uid:"",phone:"",nickname:"",userLevel:void 0,status:void 0,createTimeStart:void 0,createTimeEnd:void 0}),n=P({loading:!1,tableData:[],total:0,drawerVisible:!1,detailLoading:!1,userDetail:null,levelDialogVisible:!1,levelFormData:{id:0,currentLevel:0,userLevel:""},levelFormLoading:!1,exportLoading:!1}),j={userLevel:[{required:!0,message:"请选择新等级",trigger:"change"}]};function U(s){switch(s){case h.NORMAL:return"info";case h.PARTNER:return"success";case h.CHANNEL:return"warning";default:return"info"}}function S(s){switch(s){case h.NORMAL:return"普通用户";case h.PARTNER:return"合伙人";case h.CHANNEL:return"渠道合伙人";default:return"未知"}}function V(s){return s==null?"0.00":s.toFixed(2)}async function L(){var s,e;n.loading=!0;try{const i={page:a.page,pageSize:a.pageSize};a.uid&&(i.uid=a.uid),a.phone&&(i.phone=a.phone),a.nickname&&(i.nickname=a.nickname),a.userLevel!==void 0&&a.userLevel!==""&&(i.userLevel=Number(a.userLevel)),a.status!==void 0&&a.status!==""&&(i.status=Number(a.status)),a.createTimeStart&&(i.createTimeStart=a.createTimeStart),a.createTimeEnd&&(i.createTimeEnd=a.createTimeEnd);const d=await ye(i);if(d.code===0)n.tableData=(((s=d.data)==null?void 0:s.list)||[]).map(f=>({...f,statusLoading:!1})),n.total=((e=d.data)==null?void 0:e.total)||0;else throw new Error(d.message||"获取用户列表失败")}catch(i){const d=i instanceof Error?i.message:"获取用户列表失败";v.error(d)}finally{n.loading=!1}}async function q(s){n.detailLoading=!0;try{const e=await Ce(s);if(e.code===0)n.userDetail=e.data;else throw new Error(e.message||"获取用户详情失败")}catch(e){const i=e instanceof Error?e.message:"获取用户详情失败";v.error(i)}finally{n.detailLoading=!1}}function k(){a.page=1,L()}function G(){a.uid="",a.phone="",a.nickname="",a.userLevel=void 0,a.status=void 0,a.createTimeStart=void 0,a.createTimeEnd=void 0,C.value=null,a.page=1,L()}function J(s){s?(a.createTimeStart=s[0],a.createTimeEnd=s[1]):(a.createTimeStart=void 0,a.createTimeEnd=void 0)}function Q(s){a.pageSize=s,a.page=1,L()}function W(s){a.page=s,L()}function X(s){n.drawerVisible=!0,n.userDetail=null,q(s.id)}async function Z(s,e){s.statusLoading=!0;try{const i=await Ve({id:s.id,status:e});if(i.code===0)v.success(e===y.NORMAL?"已启用":"已禁用");else throw s.status=e===y.NORMAL?y.DISABLED:y.NORMAL,new Error(i.message||"状态更新失败")}catch(i){const d=i instanceof Error?i.message:"状态更新失败";v.error(d)}finally{s.statusLoading=!1}}function ee(s){n.levelFormData={id:s.id,currentLevel:s.userLevel,userLevel:""},n.levelDialogVisible=!0}async function te(s){try{await De.confirm(`确定要删除用户 "${s.nickname}"(UID: ${s.uid})吗?删除后将同时清除该用户的登录记录和令牌数据,此操作不可恢复。`,"删除确认",{confirmButtonText:"确定删除",cancelButtonText:"取消",type:"warning"})}catch{return}try{const e=await ke(s.id);if(e.code===0)v.success("用户删除成功"),await L();else throw new Error(e.message||"删除失败")}catch(e){const i=e instanceof Error?e.message:"删除失败";v.error(i)}}async function ae(){if(E.value){try{await E.value.validate()}catch{return}n.levelFormLoading=!0;try{const s=await Te({id:n.levelFormData.id,userLevel:Number(n.levelFormData.userLevel)});if(s.code===0)v.success("等级修改成功"),n.levelDialogVisible=!1,await L();else throw new Error(s.message||"等级修改失败")}catch(s){const e=s instanceof Error?s.message:"等级修改失败";v.error(e)}finally{n.levelFormLoading=!1}}}async function le(){n.exportLoading=!0;try{const s={page:1,pageSize:1e4};a.uid&&(s.uid=a.uid),a.phone&&(s.phone=a.phone),a.nickname&&(s.nickname=a.nickname),a.userLevel!==void 0&&a.userLevel!==""&&(s.userLevel=Number(a.userLevel)),a.status!==void 0&&a.status!==""&&(s.status=Number(a.status)),a.createTimeStart&&(s.createTimeStart=a.createTimeStart),a.createTimeEnd&&(s.createTimeEnd=a.createTimeEnd);const e=await Ee(s),i=e.data instanceof Blob?e.data:new Blob([e.data]),d=window.URL.createObjectURL(i),f=document.createElement("a");f.href=d,f.download=`用户列表_${new Date().toISOString().slice(0,10)}.xlsx`,document.body.appendChild(f),f.click(),document.body.removeChild(f),window.URL.revokeObjectURL(d),v.success("导出成功")}catch(s){const e=s instanceof Error?s.message:"导出失败";v.error(e)}finally{n.exportLoading=!1}}return ce(()=>{L()}),(s,e)=>{const i=m("el-icon"),d=m("el-button"),f=m("el-card"),x=m("el-input"),b=m("el-form-item"),se=m("el-date-picker"),O=m("el-form"),_=m("el-table-column"),N=m("el-avatar"),T=m("el-tag"),ne=m("el-switch"),oe=m("el-table"),ie=m("el-pagination"),g=m("el-descriptions-item"),R=m("el-descriptions"),re=m("el-drawer"),de=m("el-dialog"),$=me("loading");return w(),F("div",Ue,[t(f,{class:"page-header"},{default:l(()=>[r("div",Se,[e[13]||(e[13]=r("div",{class:"header-left"},[r("h2",{class:"page-title"},"用户管理"),r("span",{class:"page-description"},"管理C端用户信息,支持搜索、查看详情、状态管理、等级修改、导出")],-1)),r("div",xe,[t(d,{type:"success",onClick:le,loading:n.exportLoading},{default:l(()=>[t(i,null,{default:l(()=>[t(p(pe))]),_:1}),e[12]||(e[12]=c(" 导出Excel ",-1))]),_:1},8,["loading"])])])]),_:1}),t(f,{class:"search-card"},{default:l(()=>[t(O,{model:a,inline:""},{default:l(()=>[t(b,{label:"UID"},{default:l(()=>[t(x,{modelValue:a.uid,"onUpdate:modelValue":e[0]||(e[0]=o=>a.uid=o),placeholder:"请输入UID",clearable:"",onKeyup:A(k,["enter"])},null,8,["modelValue"])]),_:1}),t(b,{label:"手机号"},{default:l(()=>[t(x,{modelValue:a.phone,"onUpdate:modelValue":e[1]||(e[1]=o=>a.phone=o),placeholder:"请输入手机号",clearable:"",onKeyup:A(k,["enter"])},null,8,["modelValue"])]),_:1}),t(b,{label:"昵称"},{default:l(()=>[t(x,{modelValue:a.nickname,"onUpdate:modelValue":e[2]||(e[2]=o=>a.nickname=o),placeholder:"请输入昵称",clearable:"",onKeyup:A(k,["enter"])},null,8,["modelValue"])]),_:1}),t(b,{label:"用户等级"},{default:l(()=>[t(p(M),{modelValue:a.userLevel,"onUpdate:modelValue":e[3]||(e[3]=o=>a.userLevel=o),type:"user_level",placeholder:"请选择等级",clearable:""},null,8,["modelValue"])]),_:1}),t(b,{label:"状态"},{default:l(()=>[t(p(M),{modelValue:a.status,"onUpdate:modelValue":e[4]||(e[4]=o=>a.status=o),type:"common_status",placeholder:"请选择状态",clearable:""},null,8,["modelValue"])]),_:1}),t(b,{label:"创建时间"},{default:l(()=>[t(se,{modelValue:C.value,"onUpdate:modelValue":e[5]||(e[5]=o=>C.value=o),type:"daterange","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期","value-format":"YYYY-MM-DD",shortcuts:K,onChange:J},null,8,["modelValue"])]),_:1}),t(b,null,{default:l(()=>[t(d,{type:"primary",onClick:k},{default:l(()=>[t(i,null,{default:l(()=>[t(p(fe))]),_:1}),e[14]||(e[14]=c(" 搜索 ",-1))]),_:1}),t(d,{onClick:G},{default:l(()=>[t(i,null,{default:l(()=>[t(p(_e))]),_:1}),e[15]||(e[15]=c(" 重置 ",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),H((w(),B(f,{class:"table-card"},{default:l(()=>[t(oe,{ref_key:"tableRef",ref:Y,data:n.tableData,"row-key":"id",stripe:""},{default:l(()=>[t(_,{prop:"uid",label:"UID",width:"120","show-overflow-tooltip":""}),t(_,{prop:"phone",label:"手机号",width:"130","show-overflow-tooltip":""}),t(_,{prop:"nickname",label:"昵称","min-width":"120","show-overflow-tooltip":""}),t(_,{label:"头像",width:"80",align:"center"},{default:l(({row:o})=>[o.avatar?(w(),B(N,{key:0,src:o.avatar,size:40},{default:l(()=>[t(i,null,{default:l(()=>[t(p(I))]),_:1})]),_:1},8,["src"])):(w(),B(N,{key:1,size:40},{default:l(()=>[t(i,null,{default:l(()=>[t(p(I))]),_:1})]),_:1}))]),_:1}),t(_,{label:"用户等级",width:"100",align:"center"},{default:l(({row:o})=>[t(T,{type:U(o.userLevel)},{default:l(()=>[c(u(o.userLevelName||S(o.userLevel)),1)]),_:2},1032,["type"])]),_:1}),t(_,{prop:"balance",label:"余额",width:"100",align:"right"},{default:l(({row:o})=>[r("span",Ne,"¥"+u(V(o.balance)),1)]),_:1}),t(_,{label:"状态",width:"100",align:"center"},{default:l(({row:o})=>[t(ne,{modelValue:o.status,"onUpdate:modelValue":D=>o.status=D,"active-value":1,"inactive-value":0,loading:o.statusLoading,onChange:D=>Z(o,D)},null,8,["modelValue","onUpdate:modelValue","loading","onChange"])]),_:1}),t(_,{prop:"createTime",label:"创建时间",width:"170",align:"center"}),t(_,{prop:"lastLoginTime",label:"最后登录时间",width:"170",align:"center"},{default:l(({row:o})=>[c(u(o.lastLoginTime||"-"),1)]),_:1}),t(_,{label:"操作",width:"200",fixed:"right",align:"center"},{default:l(({row:o})=>[t(d,{type:"primary",link:"",size:"small",onClick:D=>X(o)},{default:l(()=>[t(i,null,{default:l(()=>[t(p(ge))]),_:1}),e[16]||(e[16]=c(" 详情 ",-1))]),_:1},8,["onClick"]),t(d,{type:"warning",link:"",size:"small",onClick:D=>ee(o)},{default:l(()=>[t(i,null,{default:l(()=>[t(p(ve))]),_:1}),e[17]||(e[17]=c(" 等级 ",-1))]),_:1},8,["onClick"]),t(d,{type:"danger",link:"",size:"small",onClick:D=>te(o)},{default:l(()=>[t(i,null,{default:l(()=>[t(p(be))]),_:1}),e[18]||(e[18]=c(" 删除 ",-1))]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"]),r("div",Re,[t(ie,{"current-page":a.page,"onUpdate:currentPage":e[6]||(e[6]=o=>a.page=o),"page-size":a.pageSize,"onUpdate:pageSize":e[7]||(e[7]=o=>a.pageSize=o),"page-sizes":[10,20,50,100],total:n.total,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:Q,onCurrentChange:W},null,8,["current-page","page-size","total"])])]),_:1})),[[$,n.loading]]),t(re,{modelValue:n.drawerVisible,"onUpdate:modelValue":e[8]||(e[8]=o=>n.drawerVisible=o),title:"用户详情",size:"500px","close-on-click-modal":!0},{default:l(()=>[H((w(),F("div",ze,[n.userDetail?(w(),F(he,{key:0},[r("div",Fe,[e[19]||(e[19]=r("h4",{class:"section-title"},"基本信息",-1)),r("div",Ae,[t(N,{src:n.userDetail.avatar,size:80},{default:l(()=>[t(i,{size:40},{default:l(()=>[t(p(I))]),_:1})]),_:1},8,["src"]),r("div",Me,[r("div",Be,u(n.userDetail.nickname),1),r("div",Ie,"UID: "+u(n.userDetail.uid),1)])]),t(R,{column:1,border:""},{default:l(()=>[t(g,{label:"手机号"},{default:l(()=>[c(u(n.userDetail.phone),1)]),_:1}),t(g,{label:"用户等级"},{default:l(()=>[t(T,{type:U(n.userDetail.userLevel)},{default:l(()=>[c(u(n.userDetail.userLevelName||S(n.userDetail.userLevel)),1)]),_:1},8,["type"])]),_:1}),t(g,{label:"状态"},{default:l(()=>[t(T,{type:n.userDetail.status===1?"success":"danger"},{default:l(()=>[c(u(n.userDetail.statusName||(n.userDetail.status===1?"正常":"禁用")),1)]),_:1},8,["type"])]),_:1}),t(g,{label:"创建时间"},{default:l(()=>[c(u(n.userDetail.createTime),1)]),_:1}),t(g,{label:"最后登录"},{default:l(()=>[c(u(n.userDetail.lastLoginTime||"-"),1)]),_:1})]),_:1})]),r("div",Oe,[e[20]||(e[20]=r("h4",{class:"section-title"},"上级用户",-1)),t(R,{column:1,border:""},{default:l(()=>[t(g,{label:"上级UID"},{default:l(()=>[c(u(n.userDetail.parentUserUid||"-"),1)]),_:1}),t(g,{label:"上级昵称"},{default:l(()=>[c(u(n.userDetail.parentUserNickname||"-"),1)]),_:1})]),_:1})]),r("div",$e,[e[21]||(e[21]=r("h4",{class:"section-title"},"财务信息",-1)),t(R,{column:1,border:""},{default:l(()=>[t(g,{label:"账户余额"},{default:l(()=>[r("span",Pe,"¥"+u(V(n.userDetail.balance)),1)]),_:1}),t(g,{label:"累计收入"},{default:l(()=>[r("span",He,"¥"+u(V(n.userDetail.totalIncome)),1)]),_:1}),t(g,{label:"已提现金额"},{default:l(()=>[r("span",Ke,"¥"+u(V(n.userDetail.withdrawnAmount)),1)]),_:1})]),_:1})]),r("div",Ye,[e[25]||(e[25]=r("h4",{class:"section-title"},"统计信息",-1)),r("div",je,[r("div",qe,[r("div",Ge,u(n.userDetail.orderCount),1),e[22]||(e[22]=r("div",{class:"stat-label"},"订单数",-1))]),r("div",Je,[r("div",Qe,u(n.userDetail.assessmentCount),1),e[23]||(e[23]=r("div",{class:"stat-label"},"测评数",-1))]),r("div",We,[r("div",Xe,u(n.userDetail.inviteCount),1),e[24]||(e[24]=r("div",{class:"stat-label"},"邀请人数",-1))])])])],64)):Le("",!0)])),[[$,n.detailLoading]])]),_:1},8,["modelValue"]),t(de,{modelValue:n.levelDialogVisible,"onUpdate:modelValue":e[11]||(e[11]=o=>n.levelDialogVisible=o),title:"修改用户等级",width:"400px","close-on-click-modal":!1},{footer:l(()=>[t(d,{onClick:e[10]||(e[10]=o=>n.levelDialogVisible=!1)},{default:l(()=>[...e[26]||(e[26]=[c("取消",-1)])]),_:1}),t(d,{type:"primary",loading:n.levelFormLoading,onClick:ae},{default:l(()=>[...e[27]||(e[27]=[c(" 确定 ",-1)])]),_:1},8,["loading"])]),default:l(()=>[t(O,{ref_key:"levelFormRef",ref:E,model:n.levelFormData,rules:j,"label-width":"80px"},{default:l(()=>[t(b,{label:"当前等级"},{default:l(()=>[t(T,{type:U(n.levelFormData.currentLevel)},{default:l(()=>[c(u(S(n.levelFormData.currentLevel)),1)]),_:1},8,["type"])]),_:1}),t(b,{label:"新等级",prop:"userLevel"},{default:l(()=>[t(p(M),{modelValue:n.levelFormData.userLevel,"onUpdate:modelValue":e[9]||(e[9]=o=>n.levelFormData.userLevel=o),type:"user_level",placeholder:"请选择新等级",style:{width:"100%"}},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"])])}}}),lt=we(Ze,[["__scopeId","data-v-1ad34e24"]]);export{lt as default}; +import{d as ue,r as z,a as P,o as ce,g as m,B as me,c as F,k as w,e as t,C as H,w as l,b as r,t as c,l as p,N as pe,f as A,J as M,L as fe,s as _e,z as B,m as I,x as u,Q as ge,H as ve,I as be,G as Le,F as he,E as v,T as De,_ as we}from"./index-D3kwcp-p.js";import{g as ye,u as Ve,d as ke,a as Te,e as Ee,b as Ce}from"./user-DuGoK7rK.js";const Ue={class:"user-container"},Se={class:"header-content"},xe={class:"header-right"},Ne={class:"balance-text"},Re={class:"pagination-wrapper"},ze={class:"user-detail"},Fe={class:"detail-section"},Ae={class:"user-profile"},Me={class:"profile-info"},Be={class:"nickname"},Ie={class:"uid"},Oe={class:"detail-section"},$e={class:"detail-section"},Pe={class:"money-text"},He={class:"money-text"},Ke={class:"money-text"},Ye={class:"detail-section"},je={class:"stats-grid"},qe={class:"stat-item"},Ge={class:"stat-value"},Je={class:"stat-item"},Qe={class:"stat-value"},We={class:"stat-item"},Xe={class:"stat-value"},Ze=ue({__name:"index",setup(et){const h={NORMAL:1,PARTNER:2,CHANNEL:3},y={DISABLED:0,NORMAL:1},K=[{text:"最近一周",value:()=>{const s=new Date,e=new Date;return e.setTime(e.getTime()-3600*1e3*24*7),[e,s]}},{text:"最近一个月",value:()=>{const s=new Date,e=new Date;return e.setTime(e.getTime()-3600*1e3*24*30),[e,s]}},{text:"最近三个月",value:()=>{const s=new Date,e=new Date;return e.setTime(e.getTime()-3600*1e3*24*90),[e,s]}}],Y=z(),E=z(),C=z(null),a=P({page:1,pageSize:10,uid:"",phone:"",nickname:"",userLevel:void 0,status:void 0,createTimeStart:void 0,createTimeEnd:void 0}),n=P({loading:!1,tableData:[],total:0,drawerVisible:!1,detailLoading:!1,userDetail:null,levelDialogVisible:!1,levelFormData:{id:0,currentLevel:0,userLevel:""},levelFormLoading:!1,exportLoading:!1}),j={userLevel:[{required:!0,message:"请选择新等级",trigger:"change"}]};function U(s){switch(s){case h.NORMAL:return"info";case h.PARTNER:return"success";case h.CHANNEL:return"warning";default:return"info"}}function S(s){switch(s){case h.NORMAL:return"普通用户";case h.PARTNER:return"合伙人";case h.CHANNEL:return"渠道合伙人";default:return"未知"}}function V(s){return s==null?"0.00":s.toFixed(2)}async function L(){var s,e;n.loading=!0;try{const i={page:a.page,pageSize:a.pageSize};a.uid&&(i.uid=a.uid),a.phone&&(i.phone=a.phone),a.nickname&&(i.nickname=a.nickname),a.userLevel!==void 0&&a.userLevel!==""&&(i.userLevel=Number(a.userLevel)),a.status!==void 0&&a.status!==""&&(i.status=Number(a.status)),a.createTimeStart&&(i.createTimeStart=a.createTimeStart),a.createTimeEnd&&(i.createTimeEnd=a.createTimeEnd);const d=await ye(i);if(d.code===0)n.tableData=(((s=d.data)==null?void 0:s.list)||[]).map(f=>({...f,statusLoading:!1})),n.total=((e=d.data)==null?void 0:e.total)||0;else throw new Error(d.message||"获取用户列表失败")}catch(i){const d=i instanceof Error?i.message:"获取用户列表失败";v.error(d)}finally{n.loading=!1}}async function q(s){n.detailLoading=!0;try{const e=await Ce(s);if(e.code===0)n.userDetail=e.data;else throw new Error(e.message||"获取用户详情失败")}catch(e){const i=e instanceof Error?e.message:"获取用户详情失败";v.error(i)}finally{n.detailLoading=!1}}function k(){a.page=1,L()}function G(){a.uid="",a.phone="",a.nickname="",a.userLevel=void 0,a.status=void 0,a.createTimeStart=void 0,a.createTimeEnd=void 0,C.value=null,a.page=1,L()}function J(s){s?(a.createTimeStart=s[0],a.createTimeEnd=s[1]):(a.createTimeStart=void 0,a.createTimeEnd=void 0)}function Q(s){a.pageSize=s,a.page=1,L()}function W(s){a.page=s,L()}function X(s){n.drawerVisible=!0,n.userDetail=null,q(s.id)}async function Z(s,e){s.statusLoading=!0;try{const i=await Ve({id:s.id,status:e});if(i.code===0)v.success(e===y.NORMAL?"已启用":"已禁用");else throw s.status=e===y.NORMAL?y.DISABLED:y.NORMAL,new Error(i.message||"状态更新失败")}catch(i){const d=i instanceof Error?i.message:"状态更新失败";v.error(d)}finally{s.statusLoading=!1}}function ee(s){n.levelFormData={id:s.id,currentLevel:s.userLevel,userLevel:""},n.levelDialogVisible=!0}async function te(s){try{await De.confirm(`确定要删除用户 "${s.nickname}"(UID: ${s.uid})吗?删除后将同时清除该用户的登录记录和令牌数据,此操作不可恢复。`,"删除确认",{confirmButtonText:"确定删除",cancelButtonText:"取消",type:"warning"})}catch{return}try{const e=await ke(s.id);if(e.code===0)v.success("用户删除成功"),await L();else throw new Error(e.message||"删除失败")}catch(e){const i=e instanceof Error?e.message:"删除失败";v.error(i)}}async function ae(){if(E.value){try{await E.value.validate()}catch{return}n.levelFormLoading=!0;try{const s=await Te({id:n.levelFormData.id,userLevel:Number(n.levelFormData.userLevel)});if(s.code===0)v.success("等级修改成功"),n.levelDialogVisible=!1,await L();else throw new Error(s.message||"等级修改失败")}catch(s){const e=s instanceof Error?s.message:"等级修改失败";v.error(e)}finally{n.levelFormLoading=!1}}}async function le(){n.exportLoading=!0;try{const s={page:1,pageSize:1e4};a.uid&&(s.uid=a.uid),a.phone&&(s.phone=a.phone),a.nickname&&(s.nickname=a.nickname),a.userLevel!==void 0&&a.userLevel!==""&&(s.userLevel=Number(a.userLevel)),a.status!==void 0&&a.status!==""&&(s.status=Number(a.status)),a.createTimeStart&&(s.createTimeStart=a.createTimeStart),a.createTimeEnd&&(s.createTimeEnd=a.createTimeEnd);const e=await Ee(s),i=e.data instanceof Blob?e.data:new Blob([e.data]),d=window.URL.createObjectURL(i),f=document.createElement("a");f.href=d,f.download=`用户列表_${new Date().toISOString().slice(0,10)}.xlsx`,document.body.appendChild(f),f.click(),document.body.removeChild(f),window.URL.revokeObjectURL(d),v.success("导出成功")}catch(s){const e=s instanceof Error?s.message:"导出失败";v.error(e)}finally{n.exportLoading=!1}}return ce(()=>{L()}),(s,e)=>{const i=m("el-icon"),d=m("el-button"),f=m("el-card"),x=m("el-input"),b=m("el-form-item"),se=m("el-date-picker"),O=m("el-form"),_=m("el-table-column"),N=m("el-avatar"),T=m("el-tag"),ne=m("el-switch"),oe=m("el-table"),ie=m("el-pagination"),g=m("el-descriptions-item"),R=m("el-descriptions"),re=m("el-drawer"),de=m("el-dialog"),$=me("loading");return w(),F("div",Ue,[t(f,{class:"page-header"},{default:l(()=>[r("div",Se,[e[13]||(e[13]=r("div",{class:"header-left"},[r("h2",{class:"page-title"},"用户管理"),r("span",{class:"page-description"},"管理C端用户信息,支持搜索、查看详情、状态管理、等级修改、导出")],-1)),r("div",xe,[t(d,{type:"success",onClick:le,loading:n.exportLoading},{default:l(()=>[t(i,null,{default:l(()=>[t(p(pe))]),_:1}),e[12]||(e[12]=c(" 导出Excel ",-1))]),_:1},8,["loading"])])])]),_:1}),t(f,{class:"search-card"},{default:l(()=>[t(O,{model:a,inline:""},{default:l(()=>[t(b,{label:"UID"},{default:l(()=>[t(x,{modelValue:a.uid,"onUpdate:modelValue":e[0]||(e[0]=o=>a.uid=o),placeholder:"请输入UID",clearable:"",onKeyup:A(k,["enter"])},null,8,["modelValue"])]),_:1}),t(b,{label:"手机号"},{default:l(()=>[t(x,{modelValue:a.phone,"onUpdate:modelValue":e[1]||(e[1]=o=>a.phone=o),placeholder:"请输入手机号",clearable:"",onKeyup:A(k,["enter"])},null,8,["modelValue"])]),_:1}),t(b,{label:"昵称"},{default:l(()=>[t(x,{modelValue:a.nickname,"onUpdate:modelValue":e[2]||(e[2]=o=>a.nickname=o),placeholder:"请输入昵称",clearable:"",onKeyup:A(k,["enter"])},null,8,["modelValue"])]),_:1}),t(b,{label:"用户等级"},{default:l(()=>[t(p(M),{modelValue:a.userLevel,"onUpdate:modelValue":e[3]||(e[3]=o=>a.userLevel=o),type:"user_level",placeholder:"请选择等级",clearable:""},null,8,["modelValue"])]),_:1}),t(b,{label:"状态"},{default:l(()=>[t(p(M),{modelValue:a.status,"onUpdate:modelValue":e[4]||(e[4]=o=>a.status=o),type:"common_status",placeholder:"请选择状态",clearable:""},null,8,["modelValue"])]),_:1}),t(b,{label:"创建时间"},{default:l(()=>[t(se,{modelValue:C.value,"onUpdate:modelValue":e[5]||(e[5]=o=>C.value=o),type:"daterange","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期","value-format":"YYYY-MM-DD",shortcuts:K,onChange:J},null,8,["modelValue"])]),_:1}),t(b,null,{default:l(()=>[t(d,{type:"primary",onClick:k},{default:l(()=>[t(i,null,{default:l(()=>[t(p(fe))]),_:1}),e[14]||(e[14]=c(" 搜索 ",-1))]),_:1}),t(d,{onClick:G},{default:l(()=>[t(i,null,{default:l(()=>[t(p(_e))]),_:1}),e[15]||(e[15]=c(" 重置 ",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),H((w(),B(f,{class:"table-card"},{default:l(()=>[t(oe,{ref_key:"tableRef",ref:Y,data:n.tableData,"row-key":"id",stripe:""},{default:l(()=>[t(_,{prop:"uid",label:"UID",width:"120","show-overflow-tooltip":""}),t(_,{prop:"phone",label:"手机号",width:"130","show-overflow-tooltip":""}),t(_,{prop:"nickname",label:"昵称","min-width":"120","show-overflow-tooltip":""}),t(_,{label:"头像",width:"80",align:"center"},{default:l(({row:o})=>[o.avatar?(w(),B(N,{key:0,src:o.avatar,size:40},{default:l(()=>[t(i,null,{default:l(()=>[t(p(I))]),_:1})]),_:1},8,["src"])):(w(),B(N,{key:1,size:40},{default:l(()=>[t(i,null,{default:l(()=>[t(p(I))]),_:1})]),_:1}))]),_:1}),t(_,{label:"用户等级",width:"100",align:"center"},{default:l(({row:o})=>[t(T,{type:U(o.userLevel)},{default:l(()=>[c(u(o.userLevelName||S(o.userLevel)),1)]),_:2},1032,["type"])]),_:1}),t(_,{prop:"balance",label:"余额",width:"100",align:"right"},{default:l(({row:o})=>[r("span",Ne,"¥"+u(V(o.balance)),1)]),_:1}),t(_,{label:"状态",width:"100",align:"center"},{default:l(({row:o})=>[t(ne,{modelValue:o.status,"onUpdate:modelValue":D=>o.status=D,"active-value":1,"inactive-value":0,loading:o.statusLoading,onChange:D=>Z(o,D)},null,8,["modelValue","onUpdate:modelValue","loading","onChange"])]),_:1}),t(_,{prop:"createTime",label:"创建时间",width:"170",align:"center"}),t(_,{prop:"lastLoginTime",label:"最后登录时间",width:"170",align:"center"},{default:l(({row:o})=>[c(u(o.lastLoginTime||"-"),1)]),_:1}),t(_,{label:"操作",width:"200",fixed:"right",align:"center"},{default:l(({row:o})=>[t(d,{type:"primary",link:"",size:"small",onClick:D=>X(o)},{default:l(()=>[t(i,null,{default:l(()=>[t(p(ge))]),_:1}),e[16]||(e[16]=c(" 详情 ",-1))]),_:1},8,["onClick"]),t(d,{type:"warning",link:"",size:"small",onClick:D=>ee(o)},{default:l(()=>[t(i,null,{default:l(()=>[t(p(ve))]),_:1}),e[17]||(e[17]=c(" 等级 ",-1))]),_:1},8,["onClick"]),t(d,{type:"danger",link:"",size:"small",onClick:D=>te(o)},{default:l(()=>[t(i,null,{default:l(()=>[t(p(be))]),_:1}),e[18]||(e[18]=c(" 删除 ",-1))]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"]),r("div",Re,[t(ie,{"current-page":a.page,"onUpdate:currentPage":e[6]||(e[6]=o=>a.page=o),"page-size":a.pageSize,"onUpdate:pageSize":e[7]||(e[7]=o=>a.pageSize=o),"page-sizes":[10,20,50,100],total:n.total,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:Q,onCurrentChange:W},null,8,["current-page","page-size","total"])])]),_:1})),[[$,n.loading]]),t(re,{modelValue:n.drawerVisible,"onUpdate:modelValue":e[8]||(e[8]=o=>n.drawerVisible=o),title:"用户详情",size:"500px","close-on-click-modal":!0},{default:l(()=>[H((w(),F("div",ze,[n.userDetail?(w(),F(he,{key:0},[r("div",Fe,[e[19]||(e[19]=r("h4",{class:"section-title"},"基本信息",-1)),r("div",Ae,[t(N,{src:n.userDetail.avatar,size:80},{default:l(()=>[t(i,{size:40},{default:l(()=>[t(p(I))]),_:1})]),_:1},8,["src"]),r("div",Me,[r("div",Be,u(n.userDetail.nickname),1),r("div",Ie,"UID: "+u(n.userDetail.uid),1)])]),t(R,{column:1,border:""},{default:l(()=>[t(g,{label:"手机号"},{default:l(()=>[c(u(n.userDetail.phone),1)]),_:1}),t(g,{label:"用户等级"},{default:l(()=>[t(T,{type:U(n.userDetail.userLevel)},{default:l(()=>[c(u(n.userDetail.userLevelName||S(n.userDetail.userLevel)),1)]),_:1},8,["type"])]),_:1}),t(g,{label:"状态"},{default:l(()=>[t(T,{type:n.userDetail.status===1?"success":"danger"},{default:l(()=>[c(u(n.userDetail.statusName||(n.userDetail.status===1?"正常":"禁用")),1)]),_:1},8,["type"])]),_:1}),t(g,{label:"创建时间"},{default:l(()=>[c(u(n.userDetail.createTime),1)]),_:1}),t(g,{label:"最后登录"},{default:l(()=>[c(u(n.userDetail.lastLoginTime||"-"),1)]),_:1})]),_:1})]),r("div",Oe,[e[20]||(e[20]=r("h4",{class:"section-title"},"上级用户",-1)),t(R,{column:1,border:""},{default:l(()=>[t(g,{label:"上级UID"},{default:l(()=>[c(u(n.userDetail.parentUserUid||"-"),1)]),_:1}),t(g,{label:"上级昵称"},{default:l(()=>[c(u(n.userDetail.parentUserNickname||"-"),1)]),_:1})]),_:1})]),r("div",$e,[e[21]||(e[21]=r("h4",{class:"section-title"},"财务信息",-1)),t(R,{column:1,border:""},{default:l(()=>[t(g,{label:"账户余额"},{default:l(()=>[r("span",Pe,"¥"+u(V(n.userDetail.balance)),1)]),_:1}),t(g,{label:"累计收入"},{default:l(()=>[r("span",He,"¥"+u(V(n.userDetail.totalIncome)),1)]),_:1}),t(g,{label:"已提现金额"},{default:l(()=>[r("span",Ke,"¥"+u(V(n.userDetail.withdrawnAmount)),1)]),_:1})]),_:1})]),r("div",Ye,[e[25]||(e[25]=r("h4",{class:"section-title"},"统计信息",-1)),r("div",je,[r("div",qe,[r("div",Ge,u(n.userDetail.orderCount),1),e[22]||(e[22]=r("div",{class:"stat-label"},"订单数",-1))]),r("div",Je,[r("div",Qe,u(n.userDetail.assessmentCount),1),e[23]||(e[23]=r("div",{class:"stat-label"},"测评数",-1))]),r("div",We,[r("div",Xe,u(n.userDetail.inviteCount),1),e[24]||(e[24]=r("div",{class:"stat-label"},"邀请人数",-1))])])])],64)):Le("",!0)])),[[$,n.detailLoading]])]),_:1},8,["modelValue"]),t(de,{modelValue:n.levelDialogVisible,"onUpdate:modelValue":e[11]||(e[11]=o=>n.levelDialogVisible=o),title:"修改用户等级",width:"400px","close-on-click-modal":!1},{footer:l(()=>[t(d,{onClick:e[10]||(e[10]=o=>n.levelDialogVisible=!1)},{default:l(()=>[...e[26]||(e[26]=[c("取消",-1)])]),_:1}),t(d,{type:"primary",loading:n.levelFormLoading,onClick:ae},{default:l(()=>[...e[27]||(e[27]=[c(" 确定 ",-1)])]),_:1},8,["loading"])]),default:l(()=>[t(O,{ref_key:"levelFormRef",ref:E,model:n.levelFormData,rules:j,"label-width":"80px"},{default:l(()=>[t(b,{label:"当前等级"},{default:l(()=>[t(T,{type:U(n.levelFormData.currentLevel)},{default:l(()=>[c(u(S(n.levelFormData.currentLevel)),1)]),_:1},8,["type"])]),_:1}),t(b,{label:"新等级",prop:"userLevel"},{default:l(()=>[t(p(M),{modelValue:n.levelFormData.userLevel,"onUpdate:modelValue":e[9]||(e[9]=o=>n.levelFormData.userLevel=o),type:"user_level",placeholder:"请选择新等级",style:{width:"100%"}},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"])])}}}),lt=we(Ze,[["__scopeId","data-v-1ad34e24"]]);export{lt as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CF2dEg0p.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-C65AeBnh.js similarity index 88% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CF2dEg0p.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-C65AeBnh.js index 4c5bb68..cacc6b9 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CF2dEg0p.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-C65AeBnh.js @@ -1 +1 @@ -import{O as F,d as A,a as J,o as Q,g as r,B as W,c as p,k as c,e as n,C as ee,w as o,b as u,z as y,G,F as te,y as ie,x as f,t as g,l as h,H as ne,Y as oe,Z as le,E as _,_ as ae}from"./index-CIT-S3uf.js";function se(){return F({url:"/admin/config/getList",method:"get"})}function K(x){return F({url:"/admin/config/update",method:"post",data:x})}const re={class:"config-container"},de={class:"group-title"},ce={class:"config-key"},ue={class:"config-description"},fe={key:0,class:"config-value rich-text-preview"},ge={key:1,class:"config-value"},me={key:0,class:"validation-error"},pe=A({__name:"index",setup(x){const D=["user_agreement","privacy_policy","about_us_content"],t=J({loading:!1,configGroups:[],activeGroups:[],editingItem:null,editValue:"",richTextValue:"",dialogVisible:!1,richTextDialogVisible:!1,saving:!1,validationError:""});function b(i){return D.includes(i)}function L(i){if(!i)return"";const e=i.replace(/<[^>]+>/g,"").trim();return e.length>50?e.substring(0,50)+"...":e}function R(i){const e=parseFloat(i);return isNaN(e)?{valid:!1,error:"请输入有效的数字"}:e<=0?{valid:!1,error:"价格必须为正数"}:{valid:!0,error:""}}function B(i){const e=parseFloat(i);return isNaN(e)?{valid:!1,error:"请输入有效的数字"}:e<0||e>1?{valid:!1,error:"佣金率必须在 0 到 1 之间"}:{valid:!0,error:""}}function U(i,e){if(!e||e.trim()==="")return{valid:!1,error:"配置值不能为空"};const a=i.toLowerCase();return a.includes("price")||a.includes("amount")||a.includes("fee")?R(e):a.includes("commission")||a.includes("rate")||a.includes("ratio")?B(e):{valid:!0,error:""}}function S(i){const e=i.toLowerCase();return e.includes("price")||e.includes("amount")||e.includes("fee")?"请输入正数金额":e.includes("commission")||e.includes("rate")||e.includes("ratio")?"请输入 0-1 之间的数值":"请输入配置值"}function z(i){const e=i.configType.toLowerCase(),a=i.configValue;if(e.includes("price")||e.includes("amount")||e.includes("fee")){const d=parseFloat(a);if(!isNaN(d))return`¥${d.toFixed(2)}`}if(e.includes("commission")||e.includes("rate")||e.includes("ratio")){const d=parseFloat(a);if(!isNaN(d))return`${(d*100).toFixed(1)}%`}return a||"-"}async function v(){t.loading=!0;try{const i=await se();if(i.code===0)t.configGroups=i.data||[],t.activeGroups=t.configGroups.map(e=>e.configType);else throw new Error(i.message||"获取配置列表失败")}catch(i){const e=i instanceof Error?i.message:"获取配置列表失败";_.error(e)}finally{t.loading=!1}}function P(i){t.editingItem=i,t.validationError="",b(i.configKey)?(t.richTextValue=i.configValue||"",t.richTextDialogVisible=!0):(t.editValue=i.configValue,t.dialogVisible=!0)}function C(){t.dialogVisible=!1,t.editingItem=null,t.editValue="",t.validationError=""}function T(){t.richTextDialogVisible=!1,t.editingItem=null,t.richTextValue=""}async function $(){if(!t.editingItem)return;const i=U(t.editingItem.configType,t.editValue);if(!i.valid){t.validationError=i.error;return}t.saving=!0,t.validationError="";try{const e=await K({configKey:t.editingItem.configKey,configValue:t.editValue.trim()});if(e.code===0)_.success("配置更新成功"),C(),await v();else throw new Error(e.message||"更新配置失败")}catch(e){const a=e instanceof Error?e.message:"更新配置失败";_.error(a)}finally{t.saving=!1}}async function H(){if(t.editingItem){t.saving=!0;try{const i=await K({configKey:t.editingItem.configKey,configValue:t.richTextValue});if(i.code===0)_.success("配置更新成功"),T(),await v();else throw new Error(i.message||"更新配置失败")}catch(i){const e=i instanceof Error?i.message:"更新配置失败";_.error(e)}finally{t.saving=!1}}}return Q(()=>{v()}),(i,e)=>{var I,N;const a=r("el-card"),d=r("el-icon"),M=r("el-tag"),V=r("el-table-column"),m=r("el-button"),O=r("el-table"),Y=r("el-collapse-item"),q=r("el-collapse"),X=r("el-empty"),w=r("el-input"),E=r("el-form-item"),Z=r("el-form"),k=r("el-dialog"),j=W("loading");return c(),p("div",re,[n(a,{class:"page-header"},{default:o(()=>[...e[5]||(e[5]=[u("div",{class:"header-content"},[u("h2",{class:"page-title"},"系统配置"),u("span",{class:"page-description"},"管理系统配置项,按配置类型分组显示")],-1)])]),_:1}),ee((c(),y(a,{class:"config-list"},{default:o(()=>[n(q,{modelValue:t.activeGroups,"onUpdate:modelValue":e[0]||(e[0]=l=>t.activeGroups=l)},{default:o(()=>[(c(!0),p(te,null,ie(t.configGroups,l=>(c(),y(Y,{key:l.configType,name:l.configType},{title:o(()=>[u("div",de,[n(d,null,{default:o(()=>[n(h(oe))]),_:1}),u("span",null,f(l.typeName),1),n(M,{size:"small",type:"info"},{default:o(()=>[g(f(l.items.length)+" 项",1)]),_:2},1024)])]),default:o(()=>[n(O,{data:l.items,stripe:"",style:{width:"100%"}},{default:o(()=>[n(V,{prop:"configKey",label:"配置键","min-width":"180"},{default:o(({row:s})=>[u("span",ce,f(s.configKey),1)]),_:1}),n(V,{prop:"description",label:"描述","min-width":"200"},{default:o(({row:s})=>[u("span",ue,f(s.description||"-"),1)]),_:1}),n(V,{label:"配置值","min-width":"250"},{default:o(({row:s})=>[b(s.configKey)?(c(),p("span",fe,f(L(s.configValue)||"点击编辑设置内容"),1)):(c(),p("span",ge,f(z(s)),1))]),_:1}),n(V,{label:"操作",width:"180",fixed:"right"},{default:o(({row:s})=>[n(m,{type:"primary",size:"small",onClick:_e=>P(s)},{default:o(()=>[n(d,null,{default:o(()=>[n(h(ne))]),_:1}),e[6]||(e[6]=g(" 编辑 ",-1))]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])]),_:2},1032,["name"]))),128))]),_:1},8,["modelValue"]),!t.loading&&t.configGroups.length===0?(c(),y(X,{key:0,description:"暂无配置数据"})):G("",!0)]),_:1})),[[j,t.loading]]),n(k,{modelValue:t.dialogVisible,"onUpdate:modelValue":e[2]||(e[2]=l=>t.dialogVisible=l),title:"编辑配置 - "+((I=t.editingItem)==null?void 0:I.description),width:"500px","close-on-click-modal":!1},{footer:o(()=>[n(m,{onClick:C},{default:o(()=>[...e[7]||(e[7]=[g("取消",-1)])]),_:1}),n(m,{type:"primary",loading:t.saving,onClick:$},{default:o(()=>[...e[8]||(e[8]=[g(" 保存 ",-1)])]),_:1},8,["loading"])]),default:o(()=>[n(Z,{"label-width":"80px"},{default:o(()=>[n(E,{label:"配置键"},{default:o(()=>{var l;return[n(w,{"model-value":(l=t.editingItem)==null?void 0:l.configKey,disabled:""},null,8,["model-value"])]}),_:1}),n(E,{label:"配置值"},{default:o(()=>{var l;return[n(w,{modelValue:t.editValue,"onUpdate:modelValue":e[1]||(e[1]=s=>t.editValue=s),placeholder:S(((l=t.editingItem)==null?void 0:l.configType)||""),clearable:""},null,8,["modelValue","placeholder"]),t.validationError?(c(),p("span",me,f(t.validationError),1)):G("",!0)]}),_:1})]),_:1})]),_:1},8,["modelValue","title"]),n(k,{modelValue:t.richTextDialogVisible,"onUpdate:modelValue":e[4]||(e[4]=l=>t.richTextDialogVisible=l),title:"编辑 - "+((N=t.editingItem)==null?void 0:N.description),width:"900px","close-on-click-modal":!1,"destroy-on-close":""},{footer:o(()=>[n(m,{onClick:T},{default:o(()=>[...e[9]||(e[9]=[g("取消",-1)])]),_:1}),n(m,{type:"primary",loading:t.saving,onClick:H},{default:o(()=>[...e[10]||(e[10]=[g(" 保存 ",-1)])]),_:1},8,["loading"])]),default:o(()=>{var l;return[n(h(le),{modelValue:t.richTextValue,"onUpdate:modelValue":e[3]||(e[3]=s=>t.richTextValue=s),placeholder:"请输入"+(((l=t.editingItem)==null?void 0:l.description)||"内容"),height:"500px"},null,8,["modelValue","placeholder"])]}),_:1},8,["modelValue","title"])])}}}),ve=ae(pe,[["__scopeId","data-v-26ed34bd"]]);export{ve as default}; +import{O as F,d as A,a as J,o as Q,g as r,B as W,c as p,k as c,e as n,C as ee,w as o,b as u,z as y,G,F as te,y as ie,x as f,t as g,l as h,H as ne,Z as oe,$ as le,E as _,_ as ae}from"./index-D3kwcp-p.js";function se(){return F({url:"/admin/config/getList",method:"get"})}function K(x){return F({url:"/admin/config/update",method:"post",data:x})}const re={class:"config-container"},de={class:"group-title"},ce={class:"config-key"},ue={class:"config-description"},fe={key:0,class:"config-value rich-text-preview"},ge={key:1,class:"config-value"},me={key:0,class:"validation-error"},pe=A({__name:"index",setup(x){const D=["user_agreement","privacy_policy","about_us_content"],t=J({loading:!1,configGroups:[],activeGroups:[],editingItem:null,editValue:"",richTextValue:"",dialogVisible:!1,richTextDialogVisible:!1,saving:!1,validationError:""});function b(i){return D.includes(i)}function L(i){if(!i)return"";const e=i.replace(/<[^>]+>/g,"").trim();return e.length>50?e.substring(0,50)+"...":e}function R(i){const e=parseFloat(i);return isNaN(e)?{valid:!1,error:"请输入有效的数字"}:e<=0?{valid:!1,error:"价格必须为正数"}:{valid:!0,error:""}}function B(i){const e=parseFloat(i);return isNaN(e)?{valid:!1,error:"请输入有效的数字"}:e<0||e>1?{valid:!1,error:"佣金率必须在 0 到 1 之间"}:{valid:!0,error:""}}function U(i,e){if(!e||e.trim()==="")return{valid:!1,error:"配置值不能为空"};const a=i.toLowerCase();return a.includes("price")||a.includes("amount")||a.includes("fee")?R(e):a.includes("commission")||a.includes("rate")||a.includes("ratio")?B(e):{valid:!0,error:""}}function S(i){const e=i.toLowerCase();return e.includes("price")||e.includes("amount")||e.includes("fee")?"请输入正数金额":e.includes("commission")||e.includes("rate")||e.includes("ratio")?"请输入 0-1 之间的数值":"请输入配置值"}function $(i){const e=i.configType.toLowerCase(),a=i.configValue;if(e.includes("price")||e.includes("amount")||e.includes("fee")){const d=parseFloat(a);if(!isNaN(d))return`¥${d.toFixed(2)}`}if(e.includes("commission")||e.includes("rate")||e.includes("ratio")){const d=parseFloat(a);if(!isNaN(d))return`${(d*100).toFixed(1)}%`}return a||"-"}async function v(){t.loading=!0;try{const i=await se();if(i.code===0)t.configGroups=i.data||[],t.activeGroups=t.configGroups.map(e=>e.configType);else throw new Error(i.message||"获取配置列表失败")}catch(i){const e=i instanceof Error?i.message:"获取配置列表失败";_.error(e)}finally{t.loading=!1}}function z(i){t.editingItem=i,t.validationError="",b(i.configKey)?(t.richTextValue=i.configValue||"",t.richTextDialogVisible=!0):(t.editValue=i.configValue,t.dialogVisible=!0)}function C(){t.dialogVisible=!1,t.editingItem=null,t.editValue="",t.validationError=""}function T(){t.richTextDialogVisible=!1,t.editingItem=null,t.richTextValue=""}async function P(){if(!t.editingItem)return;const i=U(t.editingItem.configType,t.editValue);if(!i.valid){t.validationError=i.error;return}t.saving=!0,t.validationError="";try{const e=await K({configKey:t.editingItem.configKey,configValue:t.editValue.trim()});if(e.code===0)_.success("配置更新成功"),C(),await v();else throw new Error(e.message||"更新配置失败")}catch(e){const a=e instanceof Error?e.message:"更新配置失败";_.error(a)}finally{t.saving=!1}}async function H(){if(t.editingItem){t.saving=!0;try{const i=await K({configKey:t.editingItem.configKey,configValue:t.richTextValue});if(i.code===0)_.success("配置更新成功"),T(),await v();else throw new Error(i.message||"更新配置失败")}catch(i){const e=i instanceof Error?i.message:"更新配置失败";_.error(e)}finally{t.saving=!1}}}return Q(()=>{v()}),(i,e)=>{var I,N;const a=r("el-card"),d=r("el-icon"),M=r("el-tag"),V=r("el-table-column"),m=r("el-button"),O=r("el-table"),q=r("el-collapse-item"),X=r("el-collapse"),Y=r("el-empty"),w=r("el-input"),E=r("el-form-item"),Z=r("el-form"),k=r("el-dialog"),j=W("loading");return c(),p("div",re,[n(a,{class:"page-header"},{default:o(()=>[...e[5]||(e[5]=[u("div",{class:"header-content"},[u("h2",{class:"page-title"},"系统配置"),u("span",{class:"page-description"},"管理系统配置项,按配置类型分组显示")],-1)])]),_:1}),ee((c(),y(a,{class:"config-list"},{default:o(()=>[n(X,{modelValue:t.activeGroups,"onUpdate:modelValue":e[0]||(e[0]=l=>t.activeGroups=l)},{default:o(()=>[(c(!0),p(te,null,ie(t.configGroups,l=>(c(),y(q,{key:l.configType,name:l.configType},{title:o(()=>[u("div",de,[n(d,null,{default:o(()=>[n(h(oe))]),_:1}),u("span",null,f(l.typeName),1),n(M,{size:"small",type:"info"},{default:o(()=>[g(f(l.items.length)+" 项",1)]),_:2},1024)])]),default:o(()=>[n(O,{data:l.items,stripe:"",style:{width:"100%"}},{default:o(()=>[n(V,{prop:"configKey",label:"配置键","min-width":"180"},{default:o(({row:s})=>[u("span",ce,f(s.configKey),1)]),_:1}),n(V,{prop:"description",label:"描述","min-width":"200"},{default:o(({row:s})=>[u("span",ue,f(s.description||"-"),1)]),_:1}),n(V,{label:"配置值","min-width":"250"},{default:o(({row:s})=>[b(s.configKey)?(c(),p("span",fe,f(L(s.configValue)||"点击编辑设置内容"),1)):(c(),p("span",ge,f($(s)),1))]),_:1}),n(V,{label:"操作",width:"180",fixed:"right"},{default:o(({row:s})=>[n(m,{type:"primary",size:"small",onClick:_e=>z(s)},{default:o(()=>[n(d,null,{default:o(()=>[n(h(ne))]),_:1}),e[6]||(e[6]=g(" 编辑 ",-1))]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])]),_:2},1032,["name"]))),128))]),_:1},8,["modelValue"]),!t.loading&&t.configGroups.length===0?(c(),y(Y,{key:0,description:"暂无配置数据"})):G("",!0)]),_:1})),[[j,t.loading]]),n(k,{modelValue:t.dialogVisible,"onUpdate:modelValue":e[2]||(e[2]=l=>t.dialogVisible=l),title:"编辑配置 - "+((I=t.editingItem)==null?void 0:I.description),width:"500px","close-on-click-modal":!1},{footer:o(()=>[n(m,{onClick:C},{default:o(()=>[...e[7]||(e[7]=[g("取消",-1)])]),_:1}),n(m,{type:"primary",loading:t.saving,onClick:P},{default:o(()=>[...e[8]||(e[8]=[g(" 保存 ",-1)])]),_:1},8,["loading"])]),default:o(()=>[n(Z,{"label-width":"80px"},{default:o(()=>[n(E,{label:"配置键"},{default:o(()=>{var l;return[n(w,{"model-value":(l=t.editingItem)==null?void 0:l.configKey,disabled:""},null,8,["model-value"])]}),_:1}),n(E,{label:"配置值"},{default:o(()=>{var l;return[n(w,{modelValue:t.editValue,"onUpdate:modelValue":e[1]||(e[1]=s=>t.editValue=s),placeholder:S(((l=t.editingItem)==null?void 0:l.configType)||""),clearable:""},null,8,["modelValue","placeholder"]),t.validationError?(c(),p("span",me,f(t.validationError),1)):G("",!0)]}),_:1})]),_:1})]),_:1},8,["modelValue","title"]),n(k,{modelValue:t.richTextDialogVisible,"onUpdate:modelValue":e[4]||(e[4]=l=>t.richTextDialogVisible=l),title:"编辑 - "+((N=t.editingItem)==null?void 0:N.description),width:"900px","close-on-click-modal":!1,"destroy-on-close":""},{footer:o(()=>[n(m,{onClick:T},{default:o(()=>[...e[9]||(e[9]=[g("取消",-1)])]),_:1}),n(m,{type:"primary",loading:t.saving,onClick:H},{default:o(()=>[...e[10]||(e[10]=[g(" 保存 ",-1)])]),_:1},8,["loading"])]),default:o(()=>{var l;return[n(h(le),{modelValue:t.richTextValue,"onUpdate:modelValue":e[3]||(e[3]=s=>t.richTextValue=s),placeholder:"请输入"+(((l=t.editingItem)==null?void 0:l.description)||"内容"),height:"500px"},null,8,["modelValue","placeholder"])]}),_:1},8,["modelValue","title"])])}}}),ve=ae(pe,[["__scopeId","data-v-26ed34bd"]]);export{ve as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-D8M2xb3-.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-C6mDBC4u.js similarity index 98% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-D8M2xb3-.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-C6mDBC4u.js index 1fa6394..3eec8d4 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-D8M2xb3-.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-C6mDBC4u.js @@ -1 +1 @@ -import{O as D,d as le,r as oe,a as q,o as re,g as d,B as ne,c as k,k as v,e,C as ie,w as r,b as V,t as b,l as f,D as se,f as de,J as O,L as ue,s as pe,z as E,T as me,U as ge,x as S,H as fe,I as ce,G as $,E as c,_ as _e}from"./index-CIT-S3uf.js";const w="/admin/business/reportpageconfig";function be(u){return D({url:`${w}/getList`,method:"get",params:u})}function ye(u){return D({url:`${w}/create`,method:"post",data:u})}function he(u){return D({url:`${w}/update`,method:"post",data:u})}function Ve(u){return D({url:`${w}/delete`,method:"post",data:{id:u}})}function ve(u){return D({url:`${w}/updateStatus`,method:"post",data:u})}function De(u){return D({url:`${w}/updateSort`,method:"post",data:u})}const we={class:"report-page-config-container"},Ce={class:"header-content"},Ue={class:"header-right"},Te={class:"sort-buttons"},ke={key:0},Ee={key:1},Se={class:"pagination-wrapper"},ze=le({__name:"index",setup(u){const C=oe(),n=q({page:1,pageSize:20,title:"",pageType:void 0,status:void 0}),a=q({loading:!1,tableData:[],total:0,dialogVisible:!1,dialogTitle:"新增配置",formData:T(),formLoading:!1,isEdit:!1}),x={pageType:[{required:!0,message:"请选择页面类型",trigger:"change"}],pageName:[{required:!0,message:"请输入页面标识",trigger:"blur"}],title:[{required:!0,message:"请输入页面标题",trigger:"blur"}],status:[{required:!0,message:"请选择状态",trigger:"change"}]};function T(){return{pageType:2,pageName:"",title:"",sortOrder:0,imageUrl:"",routeUrl:"",status:1}}async function g(){var l,t;a.loading=!0;try{const i={page:n.page,pageSize:n.pageSize};n.title&&(i.title=n.title),n.pageType!==void 0&&n.pageType!==""&&(i.pageType=Number(n.pageType)),n.status!==void 0&&n.status!==""&&(i.status=Number(n.status));const s=await be(i);if(s.code===0)a.tableData=((l=s.data)==null?void 0:l.list)||[],a.total=((t=s.data)==null?void 0:t.total)||0;else throw new Error(s.message||"获取列表失败")}catch(i){c.error(i instanceof Error?i.message:"获取列表失败")}finally{a.loading=!1}}async function P(l){l<=0||await z(l,l-1)}async function B(l){l>=a.tableData.length-1||await z(l,l+1)}async function z(l,t){const i=a.tableData[l];a.tableData[l]=a.tableData[t],a.tableData[t]=i;const s=a.tableData.map((p,y)=>({id:p.id,sort:y}));a.loading=!0;try{const p=await De({items:s});if(p.code===0)c.success("排序更新成功"),await g();else throw new Error(p.message||"排序更新失败")}catch(p){c.error(p instanceof Error?p.message:"排序更新失败"),await g()}finally{a.loading=!1}}function N(){n.page=1,g()}function M(){n.title="",n.pageType=void 0,n.status=void 0,n.page=1,g()}function A(l){n.pageSize=l,n.page=1,g()}function F(l){n.page=l,g()}function K(){a.isEdit=!1,a.dialogTitle="新增配置",a.formData=T(),a.dialogVisible=!0}function j(l){a.isEdit=!0,a.dialogTitle="编辑配置",a.formData={id:l.id,pageType:l.pageType,pageName:l.pageName,title:l.title,sortOrder:l.sortOrder,imageUrl:l.imageUrl||"",routeUrl:l.routeUrl||"",status:l.status},a.dialogVisible=!0}async function G(l,t){l._statusLoading=!0;try{const i=await ve({id:l.id,status:t});if(i.code===0)c.success(t===1?"已启用":"已禁用");else throw l.status=t===1?0:1,new Error(i.message||"状态更新失败")}catch(i){c.error(i instanceof Error?i.message:"状态更新失败")}finally{l._statusLoading=!1}}async function H(l){try{const t=await Ve(l.id);if(t.code===0)c.success("删除成功"),a.tableData.length===1&&n.page>1&&n.page--,await g();else throw new Error(t.message||"删除失败")}catch(t){c.error(t instanceof Error?t.message:"删除失败")}}async function I(){if(C.value){try{await C.value.validate()}catch{return}a.formLoading=!0;try{const l=a.formData,t={pageType:l.pageType,pageName:l.pageName,title:l.title,sortOrder:l.sortOrder,imageUrl:l.pageType===1?l.imageUrl:void 0,routeUrl:l.pageType===2?l.routeUrl:void 0,status:Number(l.status)};let i;if(a.isEdit&&l.id?i=await he({...t,id:l.id}):i=await ye(t),i.code===0)c.success(a.isEdit?"更新成功":"创建成功"),a.dialogVisible=!1,await g();else throw new Error(i.message||(a.isEdit?"更新失败":"创建失败"))}catch(l){c.error(l instanceof Error?l.message:a.isEdit?"更新失败":"创建失败")}finally{a.formLoading=!1}}}function J(){var l;(l=C.value)==null||l.resetFields(),a.formData=T()}return re(()=>{g()}),(l,t)=>{const i=d("el-icon"),s=d("el-button"),p=d("el-card"),y=d("el-input"),m=d("el-form-item"),U=d("el-option"),L=d("el-select"),R=d("el-form"),_=d("el-table-column"),Q=d("el-tag"),W=d("el-switch"),X=d("el-popconfirm"),Y=d("el-table"),Z=d("el-pagination"),ee=d("el-input-number"),te=d("el-dialog"),ae=ne("loading");return v(),k("div",we,[e(p,{class:"page-header"},{default:r(()=>[V("div",Ce,[t[15]||(t[15]=V("div",{class:"header-left"},[V("h2",{class:"page-title"},"报告页面配置"),V("span",{class:"page-description"},"管理测评报告的页面组成,支持静态图片和网页截图两种类型")],-1)),V("div",Ue,[e(s,{type:"primary",onClick:K},{default:r(()=>[e(i,null,{default:r(()=>[e(f(se))]),_:1}),t[14]||(t[14]=b(" 新增配置 ",-1))]),_:1})])])]),_:1}),e(p,{class:"search-card"},{default:r(()=>[e(R,{model:n,inline:""},{default:r(()=>[e(m,{label:"标题"},{default:r(()=>[e(y,{modelValue:n.title,"onUpdate:modelValue":t[0]||(t[0]=o=>n.title=o),placeholder:"请输入标题",clearable:"",onKeyup:de(N,["enter"])},null,8,["modelValue"])]),_:1}),e(m,{label:"页面类型"},{default:r(()=>[e(L,{modelValue:n.pageType,"onUpdate:modelValue":t[1]||(t[1]=o=>n.pageType=o),placeholder:"请选择",clearable:""},{default:r(()=>[e(U,{label:"静态图片",value:1}),e(U,{label:"网页截图",value:2})]),_:1},8,["modelValue"])]),_:1}),e(m,{label:"状态"},{default:r(()=>[e(f(O),{modelValue:n.status,"onUpdate:modelValue":t[2]||(t[2]=o=>n.status=o),type:"common_status",placeholder:"请选择状态",clearable:""},null,8,["modelValue"])]),_:1}),e(m,null,{default:r(()=>[e(s,{type:"primary",onClick:N},{default:r(()=>[e(i,null,{default:r(()=>[e(f(ue))]),_:1}),t[16]||(t[16]=b("搜索",-1))]),_:1}),e(s,{onClick:M},{default:r(()=>[e(i,null,{default:r(()=>[e(f(pe))]),_:1}),t[17]||(t[17]=b("重置",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),ie((v(),E(p,{class:"table-card"},{default:r(()=>[e(Y,{data:a.tableData,"row-key":"id",stripe:""},{default:r(()=>[e(_,{width:"80",align:"center",label:"排序"},{default:r(({$index:o})=>[V("div",Te,[e(s,{type:"primary",link:"",size:"small",disabled:o===0,onClick:h=>P(o)},{default:r(()=>[e(i,null,{default:r(()=>[e(f(me))]),_:1})]),_:1},8,["disabled","onClick"]),e(s,{type:"primary",link:"",size:"small",disabled:o===a.tableData.length-1,onClick:h=>B(o)},{default:r(()=>[e(i,null,{default:r(()=>[e(f(ge))]),_:1})]),_:1},8,["disabled","onClick"])])]),_:1}),e(_,{label:"页面类型",width:"120",align:"center"},{default:r(({row:o})=>[e(Q,{type:o.pageType===1?"warning":"success"},{default:r(()=>[b(S(o.pageTypeName),1)]),_:2},1032,["type"])]),_:1}),e(_,{prop:"pageName",label:"页面标识","min-width":"140","show-overflow-tooltip":""}),e(_,{prop:"title",label:"标题","min-width":"160","show-overflow-tooltip":""}),e(_,{label:"地址","min-width":"200","show-overflow-tooltip":""},{default:r(({row:o})=>[o.pageType===2?(v(),k("span",ke,S(o.routeUrl||"-"),1)):(v(),k("span",Ee,S(o.imageUrl||"-"),1))]),_:1}),e(_,{label:"状态",width:"100",align:"center"},{default:r(({row:o})=>[e(W,{modelValue:o.status,"onUpdate:modelValue":h=>o.status=h,"active-value":1,"inactive-value":0,loading:o._statusLoading,onChange:h=>G(o,h)},null,8,["modelValue","onUpdate:modelValue","loading","onChange"])]),_:1}),e(_,{prop:"createTime",label:"创建时间",width:"180",align:"center"}),e(_,{label:"操作",width:"150",fixed:"right",align:"center"},{default:r(({row:o})=>[e(s,{type:"primary",link:"",size:"small",onClick:h=>j(o)},{default:r(()=>[e(i,null,{default:r(()=>[e(f(fe))]),_:1}),t[18]||(t[18]=b("编辑 ",-1))]),_:1},8,["onClick"]),e(X,{title:"确定要删除这条配置吗?","confirm-button-text":"确定","cancel-button-text":"取消",onConfirm:h=>H(o)},{reference:r(()=>[e(s,{type:"danger",link:"",size:"small"},{default:r(()=>[e(i,null,{default:r(()=>[e(f(ce))]),_:1}),t[19]||(t[19]=b("删除 ",-1))]),_:1})]),_:1},8,["onConfirm"])]),_:1})]),_:1},8,["data"]),V("div",Se,[e(Z,{"current-page":n.page,"onUpdate:currentPage":t[3]||(t[3]=o=>n.page=o),"page-size":n.pageSize,"onUpdate:pageSize":t[4]||(t[4]=o=>n.pageSize=o),"page-sizes":[10,20,50,100],total:a.total,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:A,onCurrentChange:F},null,8,["current-page","page-size","total"])])]),_:1})),[[ae,a.loading]]),e(te,{modelValue:a.dialogVisible,"onUpdate:modelValue":t[13]||(t[13]=o=>a.dialogVisible=o),title:a.dialogTitle,width:"600px","close-on-click-modal":!1,onClosed:J},{footer:r(()=>[e(s,{onClick:t[12]||(t[12]=o=>a.dialogVisible=!1)},{default:r(()=>[...t[20]||(t[20]=[b("取消",-1)])]),_:1}),e(s,{type:"primary",loading:a.formLoading,onClick:I},{default:r(()=>[...t[21]||(t[21]=[b("确定",-1)])]),_:1},8,["loading"])]),default:r(()=>[e(R,{ref_key:"formRef",ref:C,model:a.formData,rules:x,"label-width":"100px","label-position":"right"},{default:r(()=>[e(m,{label:"页面类型",prop:"pageType",required:""},{default:r(()=>[e(L,{modelValue:a.formData.pageType,"onUpdate:modelValue":t[5]||(t[5]=o=>a.formData.pageType=o),placeholder:"请选择页面类型"},{default:r(()=>[e(U,{label:"静态图片",value:1}),e(U,{label:"网页截图",value:2})]),_:1},8,["modelValue"])]),_:1}),e(m,{label:"页面标识",prop:"pageName",required:""},{default:r(()=>[e(y,{modelValue:a.formData.pageName,"onUpdate:modelValue":t[6]||(t[6]=o=>a.formData.pageName=o),placeholder:"请输入页面标识,如 cover、traits",maxlength:"50","show-word-limit":""},null,8,["modelValue"])]),_:1}),e(m,{label:"页面标题",prop:"title",required:""},{default:r(()=>[e(y,{modelValue:a.formData.title,"onUpdate:modelValue":t[7]||(t[7]=o=>a.formData.title=o),placeholder:"请输入页面标题",maxlength:"100","show-word-limit":""},null,8,["modelValue"])]),_:1}),e(m,{label:"排序",prop:"sortOrder"},{default:r(()=>[e(ee,{modelValue:a.formData.sortOrder,"onUpdate:modelValue":t[8]||(t[8]=o=>a.formData.sortOrder=o),min:0,max:9999,placeholder:"数值越小越靠前"},null,8,["modelValue"])]),_:1}),a.formData.pageType===1?(v(),E(m,{key:0,label:"图片地址",prop:"imageUrl"},{default:r(()=>[e(y,{modelValue:a.formData.imageUrl,"onUpdate:modelValue":t[9]||(t[9]=o=>a.formData.imageUrl=o),placeholder:"请输入静态图片路径",clearable:""},null,8,["modelValue"])]),_:1})):$("",!0),a.formData.pageType===2?(v(),E(m,{key:1,label:"路由地址",prop:"routeUrl"},{default:r(()=>[e(y,{modelValue:a.formData.routeUrl,"onUpdate:modelValue":t[10]||(t[10]=o=>a.formData.routeUrl=o),placeholder:"请输入网页路由路径,如 /Report/Cover",clearable:""},null,8,["modelValue"])]),_:1})):$("",!0),e(m,{label:"状态",prop:"status",required:""},{default:r(()=>[e(f(O),{modelValue:a.formData.status,"onUpdate:modelValue":t[11]||(t[11]=o=>a.formData.status=o),type:"common_status",placeholder:"请选择状态"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}}),Le=_e(ze,[["__scopeId","data-v-5a738e99"]]);export{Le as default}; +import{O as D,d as le,r as oe,a as q,o as re,g as d,B as ne,c as k,k as v,e,C as ie,w as r,b as V,t as b,l as f,D as se,f as de,J as O,L as ue,s as pe,z as E,U as me,V as ge,x as S,H as fe,I as ce,G as $,E as c,_ as _e}from"./index-D3kwcp-p.js";const w="/admin/business/reportpageconfig";function be(u){return D({url:`${w}/getList`,method:"get",params:u})}function ye(u){return D({url:`${w}/create`,method:"post",data:u})}function he(u){return D({url:`${w}/update`,method:"post",data:u})}function Ve(u){return D({url:`${w}/delete`,method:"post",data:{id:u}})}function ve(u){return D({url:`${w}/updateStatus`,method:"post",data:u})}function De(u){return D({url:`${w}/updateSort`,method:"post",data:u})}const we={class:"report-page-config-container"},Ce={class:"header-content"},Ue={class:"header-right"},Te={class:"sort-buttons"},ke={key:0},Ee={key:1},Se={class:"pagination-wrapper"},ze=le({__name:"index",setup(u){const C=oe(),n=q({page:1,pageSize:20,title:"",pageType:void 0,status:void 0}),a=q({loading:!1,tableData:[],total:0,dialogVisible:!1,dialogTitle:"新增配置",formData:T(),formLoading:!1,isEdit:!1}),x={pageType:[{required:!0,message:"请选择页面类型",trigger:"change"}],pageName:[{required:!0,message:"请输入页面标识",trigger:"blur"}],title:[{required:!0,message:"请输入页面标题",trigger:"blur"}],status:[{required:!0,message:"请选择状态",trigger:"change"}]};function T(){return{pageType:2,pageName:"",title:"",sortOrder:0,imageUrl:"",routeUrl:"",status:1}}async function g(){var l,t;a.loading=!0;try{const i={page:n.page,pageSize:n.pageSize};n.title&&(i.title=n.title),n.pageType!==void 0&&n.pageType!==""&&(i.pageType=Number(n.pageType)),n.status!==void 0&&n.status!==""&&(i.status=Number(n.status));const s=await be(i);if(s.code===0)a.tableData=((l=s.data)==null?void 0:l.list)||[],a.total=((t=s.data)==null?void 0:t.total)||0;else throw new Error(s.message||"获取列表失败")}catch(i){c.error(i instanceof Error?i.message:"获取列表失败")}finally{a.loading=!1}}async function P(l){l<=0||await z(l,l-1)}async function B(l){l>=a.tableData.length-1||await z(l,l+1)}async function z(l,t){const i=a.tableData[l];a.tableData[l]=a.tableData[t],a.tableData[t]=i;const s=a.tableData.map((p,y)=>({id:p.id,sort:y}));a.loading=!0;try{const p=await De({items:s});if(p.code===0)c.success("排序更新成功"),await g();else throw new Error(p.message||"排序更新失败")}catch(p){c.error(p instanceof Error?p.message:"排序更新失败"),await g()}finally{a.loading=!1}}function N(){n.page=1,g()}function M(){n.title="",n.pageType=void 0,n.status=void 0,n.page=1,g()}function A(l){n.pageSize=l,n.page=1,g()}function F(l){n.page=l,g()}function K(){a.isEdit=!1,a.dialogTitle="新增配置",a.formData=T(),a.dialogVisible=!0}function j(l){a.isEdit=!0,a.dialogTitle="编辑配置",a.formData={id:l.id,pageType:l.pageType,pageName:l.pageName,title:l.title,sortOrder:l.sortOrder,imageUrl:l.imageUrl||"",routeUrl:l.routeUrl||"",status:l.status},a.dialogVisible=!0}async function G(l,t){l._statusLoading=!0;try{const i=await ve({id:l.id,status:t});if(i.code===0)c.success(t===1?"已启用":"已禁用");else throw l.status=t===1?0:1,new Error(i.message||"状态更新失败")}catch(i){c.error(i instanceof Error?i.message:"状态更新失败")}finally{l._statusLoading=!1}}async function H(l){try{const t=await Ve(l.id);if(t.code===0)c.success("删除成功"),a.tableData.length===1&&n.page>1&&n.page--,await g();else throw new Error(t.message||"删除失败")}catch(t){c.error(t instanceof Error?t.message:"删除失败")}}async function I(){if(C.value){try{await C.value.validate()}catch{return}a.formLoading=!0;try{const l=a.formData,t={pageType:l.pageType,pageName:l.pageName,title:l.title,sortOrder:l.sortOrder,imageUrl:l.pageType===1?l.imageUrl:void 0,routeUrl:l.pageType===2?l.routeUrl:void 0,status:Number(l.status)};let i;if(a.isEdit&&l.id?i=await he({...t,id:l.id}):i=await ye(t),i.code===0)c.success(a.isEdit?"更新成功":"创建成功"),a.dialogVisible=!1,await g();else throw new Error(i.message||(a.isEdit?"更新失败":"创建失败"))}catch(l){c.error(l instanceof Error?l.message:a.isEdit?"更新失败":"创建失败")}finally{a.formLoading=!1}}}function J(){var l;(l=C.value)==null||l.resetFields(),a.formData=T()}return re(()=>{g()}),(l,t)=>{const i=d("el-icon"),s=d("el-button"),p=d("el-card"),y=d("el-input"),m=d("el-form-item"),U=d("el-option"),L=d("el-select"),R=d("el-form"),_=d("el-table-column"),Q=d("el-tag"),W=d("el-switch"),X=d("el-popconfirm"),Y=d("el-table"),Z=d("el-pagination"),ee=d("el-input-number"),te=d("el-dialog"),ae=ne("loading");return v(),k("div",we,[e(p,{class:"page-header"},{default:r(()=>[V("div",Ce,[t[15]||(t[15]=V("div",{class:"header-left"},[V("h2",{class:"page-title"},"报告页面配置"),V("span",{class:"page-description"},"管理测评报告的页面组成,支持静态图片和网页截图两种类型")],-1)),V("div",Ue,[e(s,{type:"primary",onClick:K},{default:r(()=>[e(i,null,{default:r(()=>[e(f(se))]),_:1}),t[14]||(t[14]=b(" 新增配置 ",-1))]),_:1})])])]),_:1}),e(p,{class:"search-card"},{default:r(()=>[e(R,{model:n,inline:""},{default:r(()=>[e(m,{label:"标题"},{default:r(()=>[e(y,{modelValue:n.title,"onUpdate:modelValue":t[0]||(t[0]=o=>n.title=o),placeholder:"请输入标题",clearable:"",onKeyup:de(N,["enter"])},null,8,["modelValue"])]),_:1}),e(m,{label:"页面类型"},{default:r(()=>[e(L,{modelValue:n.pageType,"onUpdate:modelValue":t[1]||(t[1]=o=>n.pageType=o),placeholder:"请选择",clearable:""},{default:r(()=>[e(U,{label:"静态图片",value:1}),e(U,{label:"网页截图",value:2})]),_:1},8,["modelValue"])]),_:1}),e(m,{label:"状态"},{default:r(()=>[e(f(O),{modelValue:n.status,"onUpdate:modelValue":t[2]||(t[2]=o=>n.status=o),type:"common_status",placeholder:"请选择状态",clearable:""},null,8,["modelValue"])]),_:1}),e(m,null,{default:r(()=>[e(s,{type:"primary",onClick:N},{default:r(()=>[e(i,null,{default:r(()=>[e(f(ue))]),_:1}),t[16]||(t[16]=b("搜索",-1))]),_:1}),e(s,{onClick:M},{default:r(()=>[e(i,null,{default:r(()=>[e(f(pe))]),_:1}),t[17]||(t[17]=b("重置",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),ie((v(),E(p,{class:"table-card"},{default:r(()=>[e(Y,{data:a.tableData,"row-key":"id",stripe:""},{default:r(()=>[e(_,{width:"80",align:"center",label:"排序"},{default:r(({$index:o})=>[V("div",Te,[e(s,{type:"primary",link:"",size:"small",disabled:o===0,onClick:h=>P(o)},{default:r(()=>[e(i,null,{default:r(()=>[e(f(me))]),_:1})]),_:1},8,["disabled","onClick"]),e(s,{type:"primary",link:"",size:"small",disabled:o===a.tableData.length-1,onClick:h=>B(o)},{default:r(()=>[e(i,null,{default:r(()=>[e(f(ge))]),_:1})]),_:1},8,["disabled","onClick"])])]),_:1}),e(_,{label:"页面类型",width:"120",align:"center"},{default:r(({row:o})=>[e(Q,{type:o.pageType===1?"warning":"success"},{default:r(()=>[b(S(o.pageTypeName),1)]),_:2},1032,["type"])]),_:1}),e(_,{prop:"pageName",label:"页面标识","min-width":"140","show-overflow-tooltip":""}),e(_,{prop:"title",label:"标题","min-width":"160","show-overflow-tooltip":""}),e(_,{label:"地址","min-width":"200","show-overflow-tooltip":""},{default:r(({row:o})=>[o.pageType===2?(v(),k("span",ke,S(o.routeUrl||"-"),1)):(v(),k("span",Ee,S(o.imageUrl||"-"),1))]),_:1}),e(_,{label:"状态",width:"100",align:"center"},{default:r(({row:o})=>[e(W,{modelValue:o.status,"onUpdate:modelValue":h=>o.status=h,"active-value":1,"inactive-value":0,loading:o._statusLoading,onChange:h=>G(o,h)},null,8,["modelValue","onUpdate:modelValue","loading","onChange"])]),_:1}),e(_,{prop:"createTime",label:"创建时间",width:"180",align:"center"}),e(_,{label:"操作",width:"150",fixed:"right",align:"center"},{default:r(({row:o})=>[e(s,{type:"primary",link:"",size:"small",onClick:h=>j(o)},{default:r(()=>[e(i,null,{default:r(()=>[e(f(fe))]),_:1}),t[18]||(t[18]=b("编辑 ",-1))]),_:1},8,["onClick"]),e(X,{title:"确定要删除这条配置吗?","confirm-button-text":"确定","cancel-button-text":"取消",onConfirm:h=>H(o)},{reference:r(()=>[e(s,{type:"danger",link:"",size:"small"},{default:r(()=>[e(i,null,{default:r(()=>[e(f(ce))]),_:1}),t[19]||(t[19]=b("删除 ",-1))]),_:1})]),_:1},8,["onConfirm"])]),_:1})]),_:1},8,["data"]),V("div",Se,[e(Z,{"current-page":n.page,"onUpdate:currentPage":t[3]||(t[3]=o=>n.page=o),"page-size":n.pageSize,"onUpdate:pageSize":t[4]||(t[4]=o=>n.pageSize=o),"page-sizes":[10,20,50,100],total:a.total,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:A,onCurrentChange:F},null,8,["current-page","page-size","total"])])]),_:1})),[[ae,a.loading]]),e(te,{modelValue:a.dialogVisible,"onUpdate:modelValue":t[13]||(t[13]=o=>a.dialogVisible=o),title:a.dialogTitle,width:"600px","close-on-click-modal":!1,onClosed:J},{footer:r(()=>[e(s,{onClick:t[12]||(t[12]=o=>a.dialogVisible=!1)},{default:r(()=>[...t[20]||(t[20]=[b("取消",-1)])]),_:1}),e(s,{type:"primary",loading:a.formLoading,onClick:I},{default:r(()=>[...t[21]||(t[21]=[b("确定",-1)])]),_:1},8,["loading"])]),default:r(()=>[e(R,{ref_key:"formRef",ref:C,model:a.formData,rules:x,"label-width":"100px","label-position":"right"},{default:r(()=>[e(m,{label:"页面类型",prop:"pageType",required:""},{default:r(()=>[e(L,{modelValue:a.formData.pageType,"onUpdate:modelValue":t[5]||(t[5]=o=>a.formData.pageType=o),placeholder:"请选择页面类型"},{default:r(()=>[e(U,{label:"静态图片",value:1}),e(U,{label:"网页截图",value:2})]),_:1},8,["modelValue"])]),_:1}),e(m,{label:"页面标识",prop:"pageName",required:""},{default:r(()=>[e(y,{modelValue:a.formData.pageName,"onUpdate:modelValue":t[6]||(t[6]=o=>a.formData.pageName=o),placeholder:"请输入页面标识,如 cover、traits",maxlength:"50","show-word-limit":""},null,8,["modelValue"])]),_:1}),e(m,{label:"页面标题",prop:"title",required:""},{default:r(()=>[e(y,{modelValue:a.formData.title,"onUpdate:modelValue":t[7]||(t[7]=o=>a.formData.title=o),placeholder:"请输入页面标题",maxlength:"100","show-word-limit":""},null,8,["modelValue"])]),_:1}),e(m,{label:"排序",prop:"sortOrder"},{default:r(()=>[e(ee,{modelValue:a.formData.sortOrder,"onUpdate:modelValue":t[8]||(t[8]=o=>a.formData.sortOrder=o),min:0,max:9999,placeholder:"数值越小越靠前"},null,8,["modelValue"])]),_:1}),a.formData.pageType===1?(v(),E(m,{key:0,label:"图片地址",prop:"imageUrl"},{default:r(()=>[e(y,{modelValue:a.formData.imageUrl,"onUpdate:modelValue":t[9]||(t[9]=o=>a.formData.imageUrl=o),placeholder:"请输入静态图片路径",clearable:""},null,8,["modelValue"])]),_:1})):$("",!0),a.formData.pageType===2?(v(),E(m,{key:1,label:"路由地址",prop:"routeUrl"},{default:r(()=>[e(y,{modelValue:a.formData.routeUrl,"onUpdate:modelValue":t[10]||(t[10]=o=>a.formData.routeUrl=o),placeholder:"请输入网页路由路径,如 /Report/Cover",clearable:""},null,8,["modelValue"])]),_:1})):$("",!0),e(m,{label:"状态",prop:"status",required:""},{default:r(()=>[e(f(O),{modelValue:a.formData.status,"onUpdate:modelValue":t[11]||(t[11]=o=>a.formData.status=o),type:"common_status",placeholder:"请选择状态"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}}),Le=_e(ze,[["__scopeId","data-v-5a738e99"]]);export{Le as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DBKZzESX.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CHgtMrgw.js similarity index 94% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DBKZzESX.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CHgtMrgw.js index a7fcbe8..16cb4f4 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DBKZzESX.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CHgtMrgw.js @@ -1 +1 @@ -import{O as B,d as Y,r as Z,a as L,o as ee,g as r,B as te,c as k,k as V,e as t,C as ae,w as n,b as g,t as p,l as f,D as le,f as oe,J as E,L as ne,s as ie,z as S,V as se,F as T,x as A,H as re,I as de,G as ue,X as me,E as b,_ as pe}from"./index-CIT-S3uf.js";function fe(u){return B({url:"/admin/businessPage/getList",method:"get",params:u})}function ge(u){return B({url:"/admin/businessPage/create",method:"post",data:u})}function ce(u){return B({url:"/admin/businessPage/update",method:"post",data:u})}function _e(u){return B({url:"/admin/businessPage/delete",method:"post",data:{id:u}})}function be(u){return B({url:"/admin/businessPage/updateStatus",method:"post",data:u})}const he={class:"business-page-container"},Ve={class:"header-content"},Be={class:"header-right"},ye={class:"image-error"},ve={style:{"font-size":"12px",color:"#999","margin-top":"4px"}},xe={class:"pagination-wrapper"},De=Y({__name:"index",setup(u){const y=Z(),i=L({page:1,pageSize:10,title:"",status:void 0}),a=L({loading:!1,tableData:[],total:0,dialogVisible:!1,dialogTitle:"新增介绍页",formData:x(),formLoading:!1,isEdit:!1}),P={title:[{required:!0,message:"请输入标题",trigger:"blur"}],imageUrl:[{required:!0,message:"请上传介绍图片",trigger:"change"}],status:[{required:!0,message:"请选择状态",trigger:"change"}]};function x(){return{title:"",imageUrl:"",hasActionButton:!1,actionButtonText:"",actionButtonLink:"",sort:0,status:"1"}}async function c(){var l,e;a.loading=!0;try{const s={page:i.page,pageSize:i.pageSize};i.title&&(s.title=i.title),i.status!==void 0&&i.status!==""&&(s.status=Number(i.status));const d=await fe(s);if(d.code===0)a.tableData=((l=d.data)==null?void 0:l.list)||[],a.total=((e=d.data)==null?void 0:e.total)||0;else throw new Error(d.message||"获取列表失败")}catch(s){b.error(s instanceof Error?s.message:"获取列表失败")}finally{a.loading=!1}}function U(){i.page=1,c()}function q(){i.title="",i.status=void 0,i.page=1,c()}function N(l){i.pageSize=l,i.page=1,c()}function F(l){i.page=l,c()}function R(){a.isEdit=!1,a.dialogTitle="新增介绍页",a.formData=x(),a.dialogVisible=!0}function $(l){a.isEdit=!0,a.dialogTitle="编辑介绍页",a.formData={id:l.id,title:l.title||"",imageUrl:l.imageUrl,hasActionButton:l.hasActionButton,actionButtonText:l.actionButtonText||"",actionButtonLink:l.actionButtonLink||"",sort:l.sort,status:String(l.status)},a.dialogVisible=!0}async function I(l,e){l._statusLoading=!0;try{const s=await be({id:l.id,status:e});if(s.code===0)b.success(e===1?"已启用":"已禁用");else throw l.status=e===1?0:1,new Error(s.message||"状态更新失败")}catch(s){b.error(s instanceof Error?s.message:"状态更新失败")}finally{l._statusLoading=!1}}async function j(l){try{const e=await _e(l.id);if(e.code===0)b.success("删除成功"),a.tableData.length===1&&i.page>1&&i.page--,await c();else throw new Error(e.message||"删除失败")}catch(e){b.error(e instanceof Error?e.message:"删除失败")}}async function K(){if(y.value){try{await y.value.validate()}catch{return}a.formLoading=!0;try{const l=a.formData,e={title:l.title,imageUrl:l.imageUrl,hasActionButton:l.hasActionButton,actionButtonText:l.hasActionButton?l.actionButtonText:void 0,actionButtonLink:l.hasActionButton?l.actionButtonLink:void 0,sort:l.sort,status:Number(l.status)};let s;if(a.isEdit&&l.id?s=await ce({...e,id:l.id}):s=await ge(e),s.code===0)b.success(a.isEdit?"更新成功":"创建成功"),a.dialogVisible=!1,await c();else throw new Error(s.message||(a.isEdit?"更新失败":"创建失败"))}catch(l){b.error(l instanceof Error?l.message:"操作失败")}finally{a.formLoading=!1}}}function M(){var l;(l=y.value)==null||l.resetFields(),a.formData=x()}return ee(()=>{c()}),(l,e)=>{const s=r("el-icon"),d=r("el-button"),D=r("el-card"),v=r("el-input"),m=r("el-form-item"),C=r("el-form"),G=r("el-image"),_=r("el-table-column"),w=r("el-tag"),z=r("el-switch"),H=r("el-popconfirm"),J=r("el-table"),O=r("el-pagination"),X=r("el-input-number"),Q=r("el-dialog"),W=te("loading");return V(),k("div",he,[t(D,{class:"page-header"},{default:n(()=>[g("div",Ve,[e[14]||(e[14]=g("div",{class:"header-left"},[g("h2",{class:"page-title"},"业务介绍页管理"),g("span",{class:"page-description"},"管理小程序业务详情页内容,支持配置长图和操作按钮")],-1)),g("div",Be,[t(d,{type:"primary",onClick:R},{default:n(()=>[t(s,null,{default:n(()=>[t(f(le))]),_:1}),e[13]||(e[13]=p(" 新增介绍页 ",-1))]),_:1})])])]),_:1}),t(D,{class:"search-card"},{default:n(()=>[t(C,{model:i,inline:""},{default:n(()=>[t(m,{label:"标题"},{default:n(()=>[t(v,{modelValue:i.title,"onUpdate:modelValue":e[0]||(e[0]=o=>i.title=o),placeholder:"请输入标题",clearable:"",onKeyup:oe(U,["enter"])},null,8,["modelValue"])]),_:1}),t(m,{label:"状态"},{default:n(()=>[t(f(E),{modelValue:i.status,"onUpdate:modelValue":e[1]||(e[1]=o=>i.status=o),type:"common_status",placeholder:"请选择状态",clearable:""},null,8,["modelValue"])]),_:1}),t(m,null,{default:n(()=>[t(d,{type:"primary",onClick:U},{default:n(()=>[t(s,null,{default:n(()=>[t(f(ne))]),_:1}),e[15]||(e[15]=p("搜索 ",-1))]),_:1}),t(d,{onClick:q},{default:n(()=>[t(s,null,{default:n(()=>[t(f(ie))]),_:1}),e[16]||(e[16]=p("重置 ",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),ae((V(),S(D,{class:"table-card"},{default:n(()=>[t(J,{data:a.tableData,"row-key":"id",stripe:""},{default:n(()=>[t(_,{label:"图片",width:"120",align:"center"},{default:n(({row:o})=>[t(G,{src:o.imageUrl,"preview-src-list":[o.imageUrl],fit:"cover",style:{width:"80px",height:"60px","border-radius":"4px"},"preview-teleported":""},{error:n(()=>[g("div",ye,[t(s,null,{default:n(()=>[t(f(se))]),_:1})])]),_:1},8,["src","preview-src-list"])]),_:1}),t(_,{prop:"title",label:"标题","min-width":"150","show-overflow-tooltip":""}),t(_,{label:"操作按钮",width:"200",align:"center"},{default:n(({row:o})=>[o.hasActionButton?(V(),k(T,{key:0},[t(w,{type:"success",size:"small"},{default:n(()=>[p(A(o.actionButtonText||"按钮"),1)]),_:2},1024),g("div",ve,A(o.actionButtonLink),1)],64)):(V(),S(w,{key:1,type:"info",size:"small"},{default:n(()=>[...e[17]||(e[17]=[p("无按钮",-1)])]),_:1}))]),_:1}),t(_,{label:"状态",width:"100",align:"center"},{default:n(({row:o})=>[t(z,{modelValue:o.status,"onUpdate:modelValue":h=>o.status=h,"active-value":1,"inactive-value":0,loading:o._statusLoading,onChange:h=>I(o,h)},null,8,["modelValue","onUpdate:modelValue","loading","onChange"])]),_:1}),t(_,{prop:"sort",label:"排序",width:"80",align:"center"}),t(_,{prop:"createTime",label:"创建时间",width:"180",align:"center"}),t(_,{label:"操作",width:"150",fixed:"right",align:"center"},{default:n(({row:o})=>[t(d,{type:"primary",link:"",size:"small",onClick:h=>$(o)},{default:n(()=>[t(s,null,{default:n(()=>[t(f(re))]),_:1}),e[18]||(e[18]=p("编辑 ",-1))]),_:1},8,["onClick"]),t(H,{title:"确定要删除这条业务介绍页吗?","confirm-button-text":"确定","cancel-button-text":"取消",onConfirm:h=>j(o)},{reference:n(()=>[t(d,{type:"danger",link:"",size:"small"},{default:n(()=>[t(s,null,{default:n(()=>[t(f(de))]),_:1}),e[19]||(e[19]=p("删除 ",-1))]),_:1})]),_:1},8,["onConfirm"])]),_:1})]),_:1},8,["data"]),g("div",xe,[t(O,{"current-page":i.page,"onUpdate:currentPage":e[2]||(e[2]=o=>i.page=o),"page-size":i.pageSize,"onUpdate:pageSize":e[3]||(e[3]=o=>i.pageSize=o),"page-sizes":[10,20,50,100],total:a.total,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:N,onCurrentChange:F},null,8,["current-page","page-size","total"])])]),_:1})),[[W,a.loading]]),t(Q,{modelValue:a.dialogVisible,"onUpdate:modelValue":e[12]||(e[12]=o=>a.dialogVisible=o),title:a.dialogTitle,width:"600px","close-on-click-modal":!1,onClosed:M},{footer:n(()=>[t(d,{onClick:e[11]||(e[11]=o=>a.dialogVisible=!1)},{default:n(()=>[...e[20]||(e[20]=[p("取消",-1)])]),_:1}),t(d,{type:"primary",loading:a.formLoading,onClick:K},{default:n(()=>[...e[21]||(e[21]=[p("确定",-1)])]),_:1},8,["loading"])]),default:n(()=>[t(C,{ref_key:"formRef",ref:y,model:a.formData,rules:P,"label-width":"110px","label-position":"right"},{default:n(()=>[t(m,{label:"标题",prop:"title"},{default:n(()=>[t(v,{modelValue:a.formData.title,"onUpdate:modelValue":e[4]||(e[4]=o=>a.formData.title=o),placeholder:"请输入标题",maxlength:"100","show-word-limit":""},null,8,["modelValue"])]),_:1}),t(m,{label:"介绍图片",prop:"imageUrl",required:""},{default:n(()=>[t(f(me),{modelValue:a.formData.imageUrl,"onUpdate:modelValue":e[5]||(e[5]=o=>a.formData.imageUrl=o),placeholder:"点击上传介绍长图",tip:"建议宽度750px,支持 jpg、png 格式","max-size":10},null,8,["modelValue"])]),_:1}),t(m,{label:"操作按钮",prop:"hasActionButton"},{default:n(()=>[t(z,{modelValue:a.formData.hasActionButton,"onUpdate:modelValue":e[6]||(e[6]=o=>a.formData.hasActionButton=o)},null,8,["modelValue"])]),_:1}),a.formData.hasActionButton?(V(),k(T,{key:0},[t(m,{label:"按钮文字",prop:"actionButtonText"},{default:n(()=>[t(v,{modelValue:a.formData.actionButtonText,"onUpdate:modelValue":e[7]||(e[7]=o=>a.formData.actionButtonText=o),placeholder:"如:立即参与",maxlength:"50"},null,8,["modelValue"])]),_:1}),t(m,{label:"按钮链接",prop:"actionButtonLink"},{default:n(()=>[t(v,{modelValue:a.formData.actionButtonLink,"onUpdate:modelValue":e[8]||(e[8]=o=>a.formData.actionButtonLink=o),placeholder:"如:/pages/assessment/info/index",maxlength:"500"},null,8,["modelValue"])]),_:1})],64)):ue("",!0),t(m,{label:"排序",prop:"sort"},{default:n(()=>[t(X,{modelValue:a.formData.sort,"onUpdate:modelValue":e[9]||(e[9]=o=>a.formData.sort=o),min:0,max:9999},null,8,["modelValue"])]),_:1}),t(m,{label:"状态",prop:"status",required:""},{default:n(()=>[t(f(E),{modelValue:a.formData.status,"onUpdate:modelValue":e[10]||(e[10]=o=>a.formData.status=o),type:"common_status",placeholder:"请选择状态"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}}),Ue=pe(De,[["__scopeId","data-v-fbd7ee84"]]);export{Ue as default}; +import{O as B,d as X,r as Z,a as L,o as ee,g as r,B as te,c as k,k as V,e as t,C as ae,w as n,b as g,t as p,l as f,D as le,f as oe,J as E,L as ne,s as ie,z as S,W as se,F as T,x as A,H as re,I as de,G as ue,Y as me,E as b,_ as pe}from"./index-D3kwcp-p.js";function fe(u){return B({url:"/admin/businessPage/getList",method:"get",params:u})}function ge(u){return B({url:"/admin/businessPage/create",method:"post",data:u})}function ce(u){return B({url:"/admin/businessPage/update",method:"post",data:u})}function _e(u){return B({url:"/admin/businessPage/delete",method:"post",data:{id:u}})}function be(u){return B({url:"/admin/businessPage/updateStatus",method:"post",data:u})}const he={class:"business-page-container"},Ve={class:"header-content"},Be={class:"header-right"},ye={class:"image-error"},ve={style:{"font-size":"12px",color:"#999","margin-top":"4px"}},xe={class:"pagination-wrapper"},De=X({__name:"index",setup(u){const y=Z(),i=L({page:1,pageSize:10,title:"",status:void 0}),a=L({loading:!1,tableData:[],total:0,dialogVisible:!1,dialogTitle:"新增介绍页",formData:x(),formLoading:!1,isEdit:!1}),P={title:[{required:!0,message:"请输入标题",trigger:"blur"}],imageUrl:[{required:!0,message:"请上传介绍图片",trigger:"change"}],status:[{required:!0,message:"请选择状态",trigger:"change"}]};function x(){return{title:"",imageUrl:"",hasActionButton:!1,actionButtonText:"",actionButtonLink:"",sort:0,status:"1"}}async function c(){var l,e;a.loading=!0;try{const s={page:i.page,pageSize:i.pageSize};i.title&&(s.title=i.title),i.status!==void 0&&i.status!==""&&(s.status=Number(i.status));const d=await fe(s);if(d.code===0)a.tableData=((l=d.data)==null?void 0:l.list)||[],a.total=((e=d.data)==null?void 0:e.total)||0;else throw new Error(d.message||"获取列表失败")}catch(s){b.error(s instanceof Error?s.message:"获取列表失败")}finally{a.loading=!1}}function U(){i.page=1,c()}function q(){i.title="",i.status=void 0,i.page=1,c()}function N(l){i.pageSize=l,i.page=1,c()}function F(l){i.page=l,c()}function R(){a.isEdit=!1,a.dialogTitle="新增介绍页",a.formData=x(),a.dialogVisible=!0}function $(l){a.isEdit=!0,a.dialogTitle="编辑介绍页",a.formData={id:l.id,title:l.title||"",imageUrl:l.imageUrl,hasActionButton:l.hasActionButton,actionButtonText:l.actionButtonText||"",actionButtonLink:l.actionButtonLink||"",sort:l.sort,status:String(l.status)},a.dialogVisible=!0}async function I(l,e){l._statusLoading=!0;try{const s=await be({id:l.id,status:e});if(s.code===0)b.success(e===1?"已启用":"已禁用");else throw l.status=e===1?0:1,new Error(s.message||"状态更新失败")}catch(s){b.error(s instanceof Error?s.message:"状态更新失败")}finally{l._statusLoading=!1}}async function j(l){try{const e=await _e(l.id);if(e.code===0)b.success("删除成功"),a.tableData.length===1&&i.page>1&&i.page--,await c();else throw new Error(e.message||"删除失败")}catch(e){b.error(e instanceof Error?e.message:"删除失败")}}async function K(){if(y.value){try{await y.value.validate()}catch{return}a.formLoading=!0;try{const l=a.formData,e={title:l.title,imageUrl:l.imageUrl,hasActionButton:l.hasActionButton,actionButtonText:l.hasActionButton?l.actionButtonText:void 0,actionButtonLink:l.hasActionButton?l.actionButtonLink:void 0,sort:l.sort,status:Number(l.status)};let s;if(a.isEdit&&l.id?s=await ce({...e,id:l.id}):s=await ge(e),s.code===0)b.success(a.isEdit?"更新成功":"创建成功"),a.dialogVisible=!1,await c();else throw new Error(s.message||(a.isEdit?"更新失败":"创建失败"))}catch(l){b.error(l instanceof Error?l.message:"操作失败")}finally{a.formLoading=!1}}}function M(){var l;(l=y.value)==null||l.resetFields(),a.formData=x()}return ee(()=>{c()}),(l,e)=>{const s=r("el-icon"),d=r("el-button"),D=r("el-card"),v=r("el-input"),m=r("el-form-item"),C=r("el-form"),G=r("el-image"),_=r("el-table-column"),w=r("el-tag"),z=r("el-switch"),H=r("el-popconfirm"),J=r("el-table"),O=r("el-pagination"),W=r("el-input-number"),Y=r("el-dialog"),Q=te("loading");return V(),k("div",he,[t(D,{class:"page-header"},{default:n(()=>[g("div",Ve,[e[14]||(e[14]=g("div",{class:"header-left"},[g("h2",{class:"page-title"},"业务介绍页管理"),g("span",{class:"page-description"},"管理小程序业务详情页内容,支持配置长图和操作按钮")],-1)),g("div",Be,[t(d,{type:"primary",onClick:R},{default:n(()=>[t(s,null,{default:n(()=>[t(f(le))]),_:1}),e[13]||(e[13]=p(" 新增介绍页 ",-1))]),_:1})])])]),_:1}),t(D,{class:"search-card"},{default:n(()=>[t(C,{model:i,inline:""},{default:n(()=>[t(m,{label:"标题"},{default:n(()=>[t(v,{modelValue:i.title,"onUpdate:modelValue":e[0]||(e[0]=o=>i.title=o),placeholder:"请输入标题",clearable:"",onKeyup:oe(U,["enter"])},null,8,["modelValue"])]),_:1}),t(m,{label:"状态"},{default:n(()=>[t(f(E),{modelValue:i.status,"onUpdate:modelValue":e[1]||(e[1]=o=>i.status=o),type:"common_status",placeholder:"请选择状态",clearable:""},null,8,["modelValue"])]),_:1}),t(m,null,{default:n(()=>[t(d,{type:"primary",onClick:U},{default:n(()=>[t(s,null,{default:n(()=>[t(f(ne))]),_:1}),e[15]||(e[15]=p("搜索 ",-1))]),_:1}),t(d,{onClick:q},{default:n(()=>[t(s,null,{default:n(()=>[t(f(ie))]),_:1}),e[16]||(e[16]=p("重置 ",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),ae((V(),S(D,{class:"table-card"},{default:n(()=>[t(J,{data:a.tableData,"row-key":"id",stripe:""},{default:n(()=>[t(_,{label:"图片",width:"120",align:"center"},{default:n(({row:o})=>[t(G,{src:o.imageUrl,"preview-src-list":[o.imageUrl],fit:"cover",style:{width:"80px",height:"60px","border-radius":"4px"},"preview-teleported":""},{error:n(()=>[g("div",ye,[t(s,null,{default:n(()=>[t(f(se))]),_:1})])]),_:1},8,["src","preview-src-list"])]),_:1}),t(_,{prop:"title",label:"标题","min-width":"150","show-overflow-tooltip":""}),t(_,{label:"操作按钮",width:"200",align:"center"},{default:n(({row:o})=>[o.hasActionButton?(V(),k(T,{key:0},[t(w,{type:"success",size:"small"},{default:n(()=>[p(A(o.actionButtonText||"按钮"),1)]),_:2},1024),g("div",ve,A(o.actionButtonLink),1)],64)):(V(),S(w,{key:1,type:"info",size:"small"},{default:n(()=>[...e[17]||(e[17]=[p("无按钮",-1)])]),_:1}))]),_:1}),t(_,{label:"状态",width:"100",align:"center"},{default:n(({row:o})=>[t(z,{modelValue:o.status,"onUpdate:modelValue":h=>o.status=h,"active-value":1,"inactive-value":0,loading:o._statusLoading,onChange:h=>I(o,h)},null,8,["modelValue","onUpdate:modelValue","loading","onChange"])]),_:1}),t(_,{prop:"sort",label:"排序",width:"80",align:"center"}),t(_,{prop:"createTime",label:"创建时间",width:"180",align:"center"}),t(_,{label:"操作",width:"150",fixed:"right",align:"center"},{default:n(({row:o})=>[t(d,{type:"primary",link:"",size:"small",onClick:h=>$(o)},{default:n(()=>[t(s,null,{default:n(()=>[t(f(re))]),_:1}),e[18]||(e[18]=p("编辑 ",-1))]),_:1},8,["onClick"]),t(H,{title:"确定要删除这条业务介绍页吗?","confirm-button-text":"确定","cancel-button-text":"取消",onConfirm:h=>j(o)},{reference:n(()=>[t(d,{type:"danger",link:"",size:"small"},{default:n(()=>[t(s,null,{default:n(()=>[t(f(de))]),_:1}),e[19]||(e[19]=p("删除 ",-1))]),_:1})]),_:1},8,["onConfirm"])]),_:1})]),_:1},8,["data"]),g("div",xe,[t(O,{"current-page":i.page,"onUpdate:currentPage":e[2]||(e[2]=o=>i.page=o),"page-size":i.pageSize,"onUpdate:pageSize":e[3]||(e[3]=o=>i.pageSize=o),"page-sizes":[10,20,50,100],total:a.total,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:N,onCurrentChange:F},null,8,["current-page","page-size","total"])])]),_:1})),[[Q,a.loading]]),t(Y,{modelValue:a.dialogVisible,"onUpdate:modelValue":e[12]||(e[12]=o=>a.dialogVisible=o),title:a.dialogTitle,width:"600px","close-on-click-modal":!1,onClosed:M},{footer:n(()=>[t(d,{onClick:e[11]||(e[11]=o=>a.dialogVisible=!1)},{default:n(()=>[...e[20]||(e[20]=[p("取消",-1)])]),_:1}),t(d,{type:"primary",loading:a.formLoading,onClick:K},{default:n(()=>[...e[21]||(e[21]=[p("确定",-1)])]),_:1},8,["loading"])]),default:n(()=>[t(C,{ref_key:"formRef",ref:y,model:a.formData,rules:P,"label-width":"110px","label-position":"right"},{default:n(()=>[t(m,{label:"标题",prop:"title"},{default:n(()=>[t(v,{modelValue:a.formData.title,"onUpdate:modelValue":e[4]||(e[4]=o=>a.formData.title=o),placeholder:"请输入标题",maxlength:"100","show-word-limit":""},null,8,["modelValue"])]),_:1}),t(m,{label:"介绍图片",prop:"imageUrl",required:""},{default:n(()=>[t(f(me),{modelValue:a.formData.imageUrl,"onUpdate:modelValue":e[5]||(e[5]=o=>a.formData.imageUrl=o),placeholder:"点击上传介绍长图",tip:"建议宽度750px,支持 jpg、png 格式","max-size":10},null,8,["modelValue"])]),_:1}),t(m,{label:"操作按钮",prop:"hasActionButton"},{default:n(()=>[t(z,{modelValue:a.formData.hasActionButton,"onUpdate:modelValue":e[6]||(e[6]=o=>a.formData.hasActionButton=o)},null,8,["modelValue"])]),_:1}),a.formData.hasActionButton?(V(),k(T,{key:0},[t(m,{label:"按钮文字",prop:"actionButtonText"},{default:n(()=>[t(v,{modelValue:a.formData.actionButtonText,"onUpdate:modelValue":e[7]||(e[7]=o=>a.formData.actionButtonText=o),placeholder:"如:立即参与",maxlength:"50"},null,8,["modelValue"])]),_:1}),t(m,{label:"按钮链接",prop:"actionButtonLink"},{default:n(()=>[t(v,{modelValue:a.formData.actionButtonLink,"onUpdate:modelValue":e[8]||(e[8]=o=>a.formData.actionButtonLink=o),placeholder:"如:/pages/assessment/info/index",maxlength:"500"},null,8,["modelValue"])]),_:1})],64)):ue("",!0),t(m,{label:"排序",prop:"sort"},{default:n(()=>[t(W,{modelValue:a.formData.sort,"onUpdate:modelValue":e[9]||(e[9]=o=>a.formData.sort=o),min:0,max:9999},null,8,["modelValue"])]),_:1}),t(m,{label:"状态",prop:"status",required:""},{default:n(()=>[t(f(E),{modelValue:a.formData.status,"onUpdate:modelValue":e[10]||(e[10]=o=>a.formData.status=o),type:"common_status",placeholder:"请选择状态"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}}),Ue=pe(De,[["__scopeId","data-v-fbd7ee84"]]);export{Ue as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-ChjWo2Vr.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CQbjlZ5O.js similarity index 93% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-ChjWo2Vr.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CQbjlZ5O.js index 089008c..6180c72 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-ChjWo2Vr.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CQbjlZ5O.js @@ -1 +1 @@ -import{d as ee,r as ae,a as z,o as te,g as r,B as le,c as S,k as y,e as a,C as oe,w as t,b as c,t as u,l as p,D as ne,f as se,L as ie,s as re,z as L,V as de,x as N,W as ue,H as me,I as pe,X as fe,E as _,_ as ge}from"./index-CIT-S3uf.js";import{e as ce,f as _e,h as be,i as ve,j as ye}from"./content-BAVmFhF_.js";const Ve={class:"navigation-container"},we={class:"header-content"},Ue={class:"header-right"},he={class:"image-error"},De={key:1,class:"text-placeholder"},ke={class:"pagination-wrapper"},Ce=ee({__name:"index",setup(xe){const v=ae(),i=z({page:1,pageSize:10,name:"",status:void 0}),l=z({loading:!1,tableData:[],total:0,dialogVisible:!1,dialogTitle:"新增导航",formData:V(),formLoading:!1,isEdit:!1}),T={name:[{required:!0,message:"请输入导航名称",trigger:"blur"}],status:[{required:!0,message:"请选择状态",trigger:"change"}]};function V(){return{name:"",imageUrl:"",linkUrl:"",sort:0,status:1}}function k(o){return{0:"下线",1:"上线",2:"即将上线"}[o]??"未知"}function q(o){return{0:"info",1:"success",2:"warning"}[o]??"info"}async function f(){var o,e;l.loading=!0;try{const s={page:i.page,pageSize:i.pageSize};i.name&&(s.name=i.name),i.status!==void 0&&i.status!==""&&(s.status=Number(i.status));const d=await ce(s);if(d.code===0)l.tableData=((o=d.data)==null?void 0:o.list)||[],l.total=((e=d.data)==null?void 0:e.total)||0;else throw new Error(d.message||"获取导航列表失败")}catch(s){const d=s instanceof Error?s.message:"获取导航列表失败";_.error(d)}finally{l.loading=!1}}function C(){i.page=1,f()}function B(){i.name="",i.status=void 0,i.page=1,f()}function R(o){i.pageSize=o,i.page=1,f()}function $(o){i.page=o,f()}function j(){l.isEdit=!1,l.dialogTitle="新增导航",l.formData=V(),l.dialogVisible=!0}function I(o){l.isEdit=!0,l.dialogTitle="编辑导航",l.formData={id:o.id,name:o.name,imageUrl:o.imageUrl||"",linkUrl:o.linkUrl||"",sort:o.sort,status:o.status},l.dialogVisible=!0}async function F(o,e){o.status,o._statusLoading=!0;try{const s=await _e({id:o.id,status:e});if(s.code===0)o.status=e,_.success(`已设为${k(e)}`);else throw new Error(s.message||"状态更新失败")}catch(s){const d=s instanceof Error?s.message:"状态更新失败";_.error(d)}finally{o._statusLoading=!1}}async function K(o){try{const e=await be(o.id);if(e.code===0)_.success("删除成功"),l.tableData.length===1&&i.page>1&&i.page--,await f();else throw new Error(e.message||"删除失败")}catch(e){const s=e instanceof Error?e.message:"删除失败";_.error(s)}}async function M(){if(v.value){try{await v.value.validate()}catch{return}l.formLoading=!0;try{const o=l.formData,e={name:o.name,imageUrl:o.imageUrl||void 0,linkUrl:o.linkUrl||void 0,sort:o.sort,status:o.status};let s;if(l.isEdit&&o.id?s=await ve({...e,id:o.id}):s=await ye(e),s.code===0)_.success(l.isEdit?"更新成功":"创建成功"),l.dialogVisible=!1,await f();else throw new Error(s.message||(l.isEdit?"更新失败":"创建失败"))}catch(o){const e=o instanceof Error?o.message:l.isEdit?"更新失败":"创建失败";_.error(e)}finally{l.formLoading=!1}}}function P(){var o;(o=v.value)==null||o.resetFields(),l.formData=V()}return te(()=>{f()}),(o,e)=>{const s=r("el-icon"),d=r("el-button"),w=r("el-card"),U=r("el-input"),m=r("el-form-item"),b=r("el-option"),x=r("el-select"),E=r("el-form"),A=r("el-image"),g=r("el-table-column"),H=r("el-tag"),h=r("el-dropdown-item"),W=r("el-dropdown-menu"),X=r("el-dropdown"),G=r("el-popconfirm"),J=r("el-table"),O=r("el-pagination"),Q=r("el-input-number"),Y=r("el-dialog"),Z=le("loading");return y(),S("div",Ve,[a(w,{class:"page-header"},{default:t(()=>[c("div",we,[e[12]||(e[12]=c("div",{class:"header-left"},[c("h2",{class:"page-title"},"首页导航管理"),c("span",{class:"page-description"},"管理小程序首页导航入口卡片,支持图标上传、跳转配置和状态管理")],-1)),c("div",Ue,[a(d,{type:"primary",onClick:j},{default:t(()=>[a(s,null,{default:t(()=>[a(p(ne))]),_:1}),e[11]||(e[11]=u(" 新增导航 ",-1))]),_:1})])])]),_:1}),a(w,{class:"search-card"},{default:t(()=>[a(E,{model:i,inline:""},{default:t(()=>[a(m,{label:"名称"},{default:t(()=>[a(U,{modelValue:i.name,"onUpdate:modelValue":e[0]||(e[0]=n=>i.name=n),placeholder:"请输入导航名称",clearable:"",onKeyup:se(C,["enter"])},null,8,["modelValue"])]),_:1}),a(m,{label:"状态"},{default:t(()=>[a(x,{modelValue:i.status,"onUpdate:modelValue":e[1]||(e[1]=n=>i.status=n),placeholder:"请选择状态",clearable:""},{default:t(()=>[a(b,{label:"上线",value:1}),a(b,{label:"下线",value:0}),a(b,{label:"即将上线",value:2})]),_:1},8,["modelValue"])]),_:1}),a(m,null,{default:t(()=>[a(d,{type:"primary",onClick:C},{default:t(()=>[a(s,null,{default:t(()=>[a(p(ie))]),_:1}),e[13]||(e[13]=u(" 搜索 ",-1))]),_:1}),a(d,{onClick:B},{default:t(()=>[a(s,null,{default:t(()=>[a(p(re))]),_:1}),e[14]||(e[14]=u(" 重置 ",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),oe((y(),L(w,{class:"table-card"},{default:t(()=>[a(J,{data:l.tableData,"row-key":"id",stripe:""},{default:t(()=>[a(g,{label:"图标",width:"100",align:"center"},{default:t(({row:n})=>[n.imageUrl?(y(),L(A,{key:0,src:n.imageUrl,"preview-src-list":[n.imageUrl],fit:"cover",style:{width:"50px",height:"50px","border-radius":"8px"},"preview-teleported":""},{error:t(()=>[c("div",he,[a(s,null,{default:t(()=>[a(p(de))]),_:1})])]),_:1},8,["src","preview-src-list"])):(y(),S("span",De,"无图标"))]),_:1}),a(g,{prop:"name",label:"名称","min-width":"120","show-overflow-tooltip":""}),a(g,{prop:"linkUrl",label:"跳转链接","min-width":"200","show-overflow-tooltip":""},{default:t(({row:n})=>[u(N(n.linkUrl||"-"),1)]),_:1}),a(g,{label:"状态",width:"140",align:"center"},{default:t(({row:n})=>[a(X,{trigger:"click",onCommand:D=>F(n,D)},{dropdown:t(()=>[a(W,null,{default:t(()=>[a(h,{command:1,disabled:n.status===1},{default:t(()=>[...e[15]||(e[15]=[u("上线",-1)])]),_:1},8,["disabled"]),a(h,{command:0,disabled:n.status===0},{default:t(()=>[...e[16]||(e[16]=[u("下线",-1)])]),_:1},8,["disabled"]),a(h,{command:2,disabled:n.status===2},{default:t(()=>[...e[17]||(e[17]=[u("即将上线",-1)])]),_:1},8,["disabled"])]),_:2},1024)]),default:t(()=>[a(H,{type:q(n.status),style:{cursor:"pointer"},loading:n._statusLoading},{default:t(()=>[u(N(k(n.status))+" ",1),a(s,{class:"el-icon--right"},{default:t(()=>[a(p(ue))]),_:1})]),_:2},1032,["type","loading"])]),_:2},1032,["onCommand"])]),_:1}),a(g,{prop:"sort",label:"排序",width:"80",align:"center"}),a(g,{prop:"createTime",label:"创建时间",width:"180",align:"center"}),a(g,{label:"操作",width:"150",fixed:"right",align:"center"},{default:t(({row:n})=>[a(d,{type:"primary",link:"",size:"small",onClick:D=>I(n)},{default:t(()=>[a(s,null,{default:t(()=>[a(p(me))]),_:1}),e[18]||(e[18]=u(" 编辑 ",-1))]),_:1},8,["onClick"]),a(G,{title:"确定要删除这条导航吗?","confirm-button-text":"确定","cancel-button-text":"取消",onConfirm:D=>K(n)},{reference:t(()=>[a(d,{type:"danger",link:"",size:"small"},{default:t(()=>[a(s,null,{default:t(()=>[a(p(pe))]),_:1}),e[19]||(e[19]=u(" 删除 ",-1))]),_:1})]),_:1},8,["onConfirm"])]),_:1})]),_:1},8,["data"]),c("div",ke,[a(O,{"current-page":i.page,"onUpdate:currentPage":e[2]||(e[2]=n=>i.page=n),"page-size":i.pageSize,"onUpdate:pageSize":e[3]||(e[3]=n=>i.pageSize=n),"page-sizes":[10,20,50],total:l.total,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:R,onCurrentChange:$},null,8,["current-page","page-size","total"])])]),_:1})),[[Z,l.loading]]),a(Y,{modelValue:l.dialogVisible,"onUpdate:modelValue":e[10]||(e[10]=n=>l.dialogVisible=n),title:l.dialogTitle,width:"550px","close-on-click-modal":!1,onClosed:P},{footer:t(()=>[a(d,{onClick:e[9]||(e[9]=n=>l.dialogVisible=!1)},{default:t(()=>[...e[20]||(e[20]=[u("取消",-1)])]),_:1}),a(d,{type:"primary",loading:l.formLoading,onClick:M},{default:t(()=>[...e[21]||(e[21]=[u(" 确定 ",-1)])]),_:1},8,["loading"])]),default:t(()=>[a(E,{ref_key:"formRef",ref:v,model:l.formData,rules:T,"label-width":"100px","label-position":"right"},{default:t(()=>[a(m,{label:"导航名称",prop:"name"},{default:t(()=>[a(U,{modelValue:l.formData.name,"onUpdate:modelValue":e[4]||(e[4]=n=>l.formData.name=n),placeholder:"请输入导航名称",maxlength:"50","show-word-limit":""},null,8,["modelValue"])]),_:1}),a(m,{label:"图标图片",prop:"imageUrl"},{default:t(()=>[a(p(fe),{modelValue:l.formData.imageUrl,"onUpdate:modelValue":e[5]||(e[5]=n=>l.formData.imageUrl=n),placeholder:"点击上传图标",tip:"建议尺寸:200x200,支持 jpg、png 格式","max-size":5},null,8,["modelValue"])]),_:1}),a(m,{label:"跳转链接",prop:"linkUrl"},{default:t(()=>[a(U,{modelValue:l.formData.linkUrl,"onUpdate:modelValue":e[6]||(e[6]=n=>l.formData.linkUrl=n),placeholder:"请输入跳转链接,如:/pages/assessment/info/index",clearable:""},null,8,["modelValue"])]),_:1}),a(m,{label:"排序",prop:"sort"},{default:t(()=>[a(Q,{modelValue:l.formData.sort,"onUpdate:modelValue":e[7]||(e[7]=n=>l.formData.sort=n),min:0,max:9999,placeholder:"数值越大越靠前"},null,8,["modelValue"])]),_:1}),a(m,{label:"状态",prop:"status",required:""},{default:t(()=>[a(x,{modelValue:l.formData.status,"onUpdate:modelValue":e[8]||(e[8]=n=>l.formData.status=n),placeholder:"请选择状态"},{default:t(()=>[a(b,{label:"上线",value:1}),a(b,{label:"下线",value:0}),a(b,{label:"即将上线",value:2})]),_:1},8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}}),Se=ge(Ce,[["__scopeId","data-v-1beed022"]]);export{Se as default}; +import{d as ee,r as ae,a as z,o as te,g as r,B as le,c as S,k as y,e as a,C as oe,w as t,b as c,t as u,l as p,D as ne,f as se,L as ie,s as re,z as L,W as de,x as N,X as ue,H as me,I as pe,Y as fe,E as _,_ as ge}from"./index-D3kwcp-p.js";import{e as ce,f as _e,h as be,i as ve,j as ye}from"./content-C8FfR8xt.js";const Ve={class:"navigation-container"},we={class:"header-content"},Ue={class:"header-right"},he={class:"image-error"},De={key:1,class:"text-placeholder"},ke={class:"pagination-wrapper"},Ce=ee({__name:"index",setup(xe){const v=ae(),i=z({page:1,pageSize:10,name:"",status:void 0}),l=z({loading:!1,tableData:[],total:0,dialogVisible:!1,dialogTitle:"新增导航",formData:V(),formLoading:!1,isEdit:!1}),T={name:[{required:!0,message:"请输入导航名称",trigger:"blur"}],status:[{required:!0,message:"请选择状态",trigger:"change"}]};function V(){return{name:"",imageUrl:"",linkUrl:"",sort:0,status:1}}function k(o){return{0:"下线",1:"上线",2:"即将上线"}[o]??"未知"}function q(o){return{0:"info",1:"success",2:"warning"}[o]??"info"}async function f(){var o,e;l.loading=!0;try{const s={page:i.page,pageSize:i.pageSize};i.name&&(s.name=i.name),i.status!==void 0&&i.status!==""&&(s.status=Number(i.status));const d=await ce(s);if(d.code===0)l.tableData=((o=d.data)==null?void 0:o.list)||[],l.total=((e=d.data)==null?void 0:e.total)||0;else throw new Error(d.message||"获取导航列表失败")}catch(s){const d=s instanceof Error?s.message:"获取导航列表失败";_.error(d)}finally{l.loading=!1}}function C(){i.page=1,f()}function B(){i.name="",i.status=void 0,i.page=1,f()}function R(o){i.pageSize=o,i.page=1,f()}function $(o){i.page=o,f()}function j(){l.isEdit=!1,l.dialogTitle="新增导航",l.formData=V(),l.dialogVisible=!0}function I(o){l.isEdit=!0,l.dialogTitle="编辑导航",l.formData={id:o.id,name:o.name,imageUrl:o.imageUrl||"",linkUrl:o.linkUrl||"",sort:o.sort,status:o.status},l.dialogVisible=!0}async function F(o,e){o.status,o._statusLoading=!0;try{const s=await _e({id:o.id,status:e});if(s.code===0)o.status=e,_.success(`已设为${k(e)}`);else throw new Error(s.message||"状态更新失败")}catch(s){const d=s instanceof Error?s.message:"状态更新失败";_.error(d)}finally{o._statusLoading=!1}}async function K(o){try{const e=await be(o.id);if(e.code===0)_.success("删除成功"),l.tableData.length===1&&i.page>1&&i.page--,await f();else throw new Error(e.message||"删除失败")}catch(e){const s=e instanceof Error?e.message:"删除失败";_.error(s)}}async function M(){if(v.value){try{await v.value.validate()}catch{return}l.formLoading=!0;try{const o=l.formData,e={name:o.name,imageUrl:o.imageUrl||void 0,linkUrl:o.linkUrl||void 0,sort:o.sort,status:o.status};let s;if(l.isEdit&&o.id?s=await ve({...e,id:o.id}):s=await ye(e),s.code===0)_.success(l.isEdit?"更新成功":"创建成功"),l.dialogVisible=!1,await f();else throw new Error(s.message||(l.isEdit?"更新失败":"创建失败"))}catch(o){const e=o instanceof Error?o.message:l.isEdit?"更新失败":"创建失败";_.error(e)}finally{l.formLoading=!1}}}function P(){var o;(o=v.value)==null||o.resetFields(),l.formData=V()}return te(()=>{f()}),(o,e)=>{const s=r("el-icon"),d=r("el-button"),w=r("el-card"),U=r("el-input"),m=r("el-form-item"),b=r("el-option"),x=r("el-select"),E=r("el-form"),A=r("el-image"),g=r("el-table-column"),H=r("el-tag"),h=r("el-dropdown-item"),W=r("el-dropdown-menu"),X=r("el-dropdown"),Y=r("el-popconfirm"),G=r("el-table"),J=r("el-pagination"),O=r("el-input-number"),Q=r("el-dialog"),Z=le("loading");return y(),S("div",Ve,[a(w,{class:"page-header"},{default:t(()=>[c("div",we,[e[12]||(e[12]=c("div",{class:"header-left"},[c("h2",{class:"page-title"},"首页导航管理"),c("span",{class:"page-description"},"管理小程序首页导航入口卡片,支持图标上传、跳转配置和状态管理")],-1)),c("div",Ue,[a(d,{type:"primary",onClick:j},{default:t(()=>[a(s,null,{default:t(()=>[a(p(ne))]),_:1}),e[11]||(e[11]=u(" 新增导航 ",-1))]),_:1})])])]),_:1}),a(w,{class:"search-card"},{default:t(()=>[a(E,{model:i,inline:""},{default:t(()=>[a(m,{label:"名称"},{default:t(()=>[a(U,{modelValue:i.name,"onUpdate:modelValue":e[0]||(e[0]=n=>i.name=n),placeholder:"请输入导航名称",clearable:"",onKeyup:se(C,["enter"])},null,8,["modelValue"])]),_:1}),a(m,{label:"状态"},{default:t(()=>[a(x,{modelValue:i.status,"onUpdate:modelValue":e[1]||(e[1]=n=>i.status=n),placeholder:"请选择状态",clearable:""},{default:t(()=>[a(b,{label:"上线",value:1}),a(b,{label:"下线",value:0}),a(b,{label:"即将上线",value:2})]),_:1},8,["modelValue"])]),_:1}),a(m,null,{default:t(()=>[a(d,{type:"primary",onClick:C},{default:t(()=>[a(s,null,{default:t(()=>[a(p(ie))]),_:1}),e[13]||(e[13]=u(" 搜索 ",-1))]),_:1}),a(d,{onClick:B},{default:t(()=>[a(s,null,{default:t(()=>[a(p(re))]),_:1}),e[14]||(e[14]=u(" 重置 ",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),oe((y(),L(w,{class:"table-card"},{default:t(()=>[a(G,{data:l.tableData,"row-key":"id",stripe:""},{default:t(()=>[a(g,{label:"图标",width:"100",align:"center"},{default:t(({row:n})=>[n.imageUrl?(y(),L(A,{key:0,src:n.imageUrl,"preview-src-list":[n.imageUrl],fit:"cover",style:{width:"50px",height:"50px","border-radius":"8px"},"preview-teleported":""},{error:t(()=>[c("div",he,[a(s,null,{default:t(()=>[a(p(de))]),_:1})])]),_:1},8,["src","preview-src-list"])):(y(),S("span",De,"无图标"))]),_:1}),a(g,{prop:"name",label:"名称","min-width":"120","show-overflow-tooltip":""}),a(g,{prop:"linkUrl",label:"跳转链接","min-width":"200","show-overflow-tooltip":""},{default:t(({row:n})=>[u(N(n.linkUrl||"-"),1)]),_:1}),a(g,{label:"状态",width:"140",align:"center"},{default:t(({row:n})=>[a(X,{trigger:"click",onCommand:D=>F(n,D)},{dropdown:t(()=>[a(W,null,{default:t(()=>[a(h,{command:1,disabled:n.status===1},{default:t(()=>[...e[15]||(e[15]=[u("上线",-1)])]),_:1},8,["disabled"]),a(h,{command:0,disabled:n.status===0},{default:t(()=>[...e[16]||(e[16]=[u("下线",-1)])]),_:1},8,["disabled"]),a(h,{command:2,disabled:n.status===2},{default:t(()=>[...e[17]||(e[17]=[u("即将上线",-1)])]),_:1},8,["disabled"])]),_:2},1024)]),default:t(()=>[a(H,{type:q(n.status),style:{cursor:"pointer"},loading:n._statusLoading},{default:t(()=>[u(N(k(n.status))+" ",1),a(s,{class:"el-icon--right"},{default:t(()=>[a(p(ue))]),_:1})]),_:2},1032,["type","loading"])]),_:2},1032,["onCommand"])]),_:1}),a(g,{prop:"sort",label:"排序",width:"80",align:"center"}),a(g,{prop:"createTime",label:"创建时间",width:"180",align:"center"}),a(g,{label:"操作",width:"150",fixed:"right",align:"center"},{default:t(({row:n})=>[a(d,{type:"primary",link:"",size:"small",onClick:D=>I(n)},{default:t(()=>[a(s,null,{default:t(()=>[a(p(me))]),_:1}),e[18]||(e[18]=u(" 编辑 ",-1))]),_:1},8,["onClick"]),a(Y,{title:"确定要删除这条导航吗?","confirm-button-text":"确定","cancel-button-text":"取消",onConfirm:D=>K(n)},{reference:t(()=>[a(d,{type:"danger",link:"",size:"small"},{default:t(()=>[a(s,null,{default:t(()=>[a(p(pe))]),_:1}),e[19]||(e[19]=u(" 删除 ",-1))]),_:1})]),_:1},8,["onConfirm"])]),_:1})]),_:1},8,["data"]),c("div",ke,[a(J,{"current-page":i.page,"onUpdate:currentPage":e[2]||(e[2]=n=>i.page=n),"page-size":i.pageSize,"onUpdate:pageSize":e[3]||(e[3]=n=>i.pageSize=n),"page-sizes":[10,20,50],total:l.total,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:R,onCurrentChange:$},null,8,["current-page","page-size","total"])])]),_:1})),[[Z,l.loading]]),a(Q,{modelValue:l.dialogVisible,"onUpdate:modelValue":e[10]||(e[10]=n=>l.dialogVisible=n),title:l.dialogTitle,width:"550px","close-on-click-modal":!1,onClosed:P},{footer:t(()=>[a(d,{onClick:e[9]||(e[9]=n=>l.dialogVisible=!1)},{default:t(()=>[...e[20]||(e[20]=[u("取消",-1)])]),_:1}),a(d,{type:"primary",loading:l.formLoading,onClick:M},{default:t(()=>[...e[21]||(e[21]=[u(" 确定 ",-1)])]),_:1},8,["loading"])]),default:t(()=>[a(E,{ref_key:"formRef",ref:v,model:l.formData,rules:T,"label-width":"100px","label-position":"right"},{default:t(()=>[a(m,{label:"导航名称",prop:"name"},{default:t(()=>[a(U,{modelValue:l.formData.name,"onUpdate:modelValue":e[4]||(e[4]=n=>l.formData.name=n),placeholder:"请输入导航名称",maxlength:"50","show-word-limit":""},null,8,["modelValue"])]),_:1}),a(m,{label:"图标图片",prop:"imageUrl"},{default:t(()=>[a(p(fe),{modelValue:l.formData.imageUrl,"onUpdate:modelValue":e[5]||(e[5]=n=>l.formData.imageUrl=n),placeholder:"点击上传图标",tip:"建议尺寸:200x200,支持 jpg、png 格式","max-size":5},null,8,["modelValue"])]),_:1}),a(m,{label:"跳转链接",prop:"linkUrl"},{default:t(()=>[a(U,{modelValue:l.formData.linkUrl,"onUpdate:modelValue":e[6]||(e[6]=n=>l.formData.linkUrl=n),placeholder:"请输入跳转链接,如:/pages/assessment/info/index",clearable:""},null,8,["modelValue"])]),_:1}),a(m,{label:"排序",prop:"sort"},{default:t(()=>[a(O,{modelValue:l.formData.sort,"onUpdate:modelValue":e[7]||(e[7]=n=>l.formData.sort=n),min:0,max:9999,placeholder:"数值越大越靠前"},null,8,["modelValue"])]),_:1}),a(m,{label:"状态",prop:"status",required:""},{default:t(()=>[a(x,{modelValue:l.formData.status,"onUpdate:modelValue":e[8]||(e[8]=n=>l.formData.status=n),placeholder:"请选择状态"},{default:t(()=>[a(b,{label:"上线",value:1}),a(b,{label:"下线",value:0}),a(b,{label:"即将上线",value:2})]),_:1},8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}}),Se=ge(Ce,[["__scopeId","data-v-1beed022"]]);export{Se as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Ibe6gSaz.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CR0JULB-.js similarity index 95% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Ibe6gSaz.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CR0JULB-.js index 59cdf1a..b731de5 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Ibe6gSaz.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CR0JULB-.js @@ -1 +1 @@ -import{d as R,u as z,r as d,a as U,o as B,c as _,b as l,e as a,w as o,f as E,g as n,h as F,E as x,i as I,j as N,k as h,l as c,m as M,n as S,p as j,q as L,s as T,t as A,_ as D}from"./index-CIT-S3uf.js";const G={class:"login-container"},H={class:"login-box"},J={class:"captcha-container"},O=["src"],P={key:1,class:"captcha-loading"},Q=R({__name:"index",setup(W){const C=I(),V=N(),b=z(),u=d(),p=d(!1),m=d(""),v=d(""),s=U({username:"",password:"",captchaCode:""}),k={username:[{required:!0,message:"请输入用户名",trigger:"blur"}],password:[{required:!0,message:"请输入密码",trigger:"blur"},{min:6,message:"密码至少6个字符",trigger:"blur"}],captchaCode:[{required:!0,message:"请输入验证码",trigger:"blur"},{min:4,max:6,message:"验证码为4-6位字符",trigger:"blur"}]},f=async()=>{try{const t=await F();v.value=t.data.captchaKey,m.value=t.data.captchaImage}catch{x.error("获取验证码失败,请重试")}},y=async()=>{u.value&&await u.value.validate(async t=>{if(t){p.value=!0;try{await b.login({username:s.username,password:s.password,captchaKey:v.value,captchaCode:s.captchaCode}),x.success("登录成功");const e=V.query.redirect;C.push(e||"/")}catch{s.captchaCode="",await f()}finally{p.value=!1}}})};return B(()=>{f()}),(t,e)=>{const g=n("el-input"),i=n("el-form-item"),w=n("el-icon"),q=n("el-button"),K=n("el-form");return h(),_("div",G,[l("div",H,[e[4]||(e[4]=l("div",{class:"login-header"},[l("h1",null,"学业邑规划 后台管理系统")],-1)),a(K,{ref_key:"loginFormRef",ref:u,model:s,rules:k,class:"login-form",onKeyup:E(y,["enter"])},{default:o(()=>[a(i,{prop:"username"},{default:o(()=>[a(g,{modelValue:s.username,"onUpdate:modelValue":e[0]||(e[0]=r=>s.username=r),placeholder:"请输入用户名","prefix-icon":c(M),size:"large"},null,8,["modelValue","prefix-icon"])]),_:1}),a(i,{prop:"password"},{default:o(()=>[a(g,{modelValue:s.password,"onUpdate:modelValue":e[1]||(e[1]=r=>s.password=r),type:"password",placeholder:"请输入密码","prefix-icon":c(S),size:"large","show-password":""},null,8,["modelValue","prefix-icon"])]),_:1}),a(i,{prop:"captchaCode"},{default:o(()=>[l("div",J,[a(g,{modelValue:s.captchaCode,"onUpdate:modelValue":e[2]||(e[2]=r=>s.captchaCode=r),placeholder:"请输入验证码","prefix-icon":c(j),size:"large",class:"captcha-input"},null,8,["modelValue","prefix-icon"]),l("div",{class:"captcha-image-wrapper",onClick:f},[m.value?(h(),_("img",{key:0,src:m.value,alt:"验证码",class:"captcha-image",title:"点击刷新验证码"},null,8,O)):(h(),_("div",P,[a(w,{class:"is-loading"},{default:o(()=>[a(c(L))]),_:1})])),a(w,{class:"refresh-icon"},{default:o(()=>[a(c(T))]),_:1})])])]),_:1}),a(i,null,{default:o(()=>[a(q,{type:"primary",size:"large",loading:p.value,class:"login-btn",onClick:y},{default:o(()=>[...e[3]||(e[3]=[A(" 登 录 ",-1)])]),_:1},8,["loading"])]),_:1})]),_:1},8,["model"])])])}}}),Y=D(Q,[["__scopeId","data-v-d12e50e6"]]);export{Y as default}; +import{d as R,u as z,r as d,a as U,o as B,c as _,b as l,e as a,w as o,f as E,g as n,h as F,E as x,i as I,j as N,k as h,l as c,m as M,n as S,p as j,q as L,s as T,t as A,_ as D}from"./index-D3kwcp-p.js";const G={class:"login-container"},H={class:"login-box"},J={class:"captcha-container"},O=["src"],P={key:1,class:"captcha-loading"},Q=R({__name:"index",setup(W){const C=I(),V=N(),b=z(),u=d(),p=d(!1),m=d(""),v=d(""),s=U({username:"",password:"",captchaCode:""}),k={username:[{required:!0,message:"请输入用户名",trigger:"blur"}],password:[{required:!0,message:"请输入密码",trigger:"blur"},{min:6,message:"密码至少6个字符",trigger:"blur"}],captchaCode:[{required:!0,message:"请输入验证码",trigger:"blur"},{min:4,max:6,message:"验证码为4-6位字符",trigger:"blur"}]},f=async()=>{try{const t=await F();v.value=t.data.captchaKey,m.value=t.data.captchaImage}catch{x.error("获取验证码失败,请重试")}},y=async()=>{u.value&&await u.value.validate(async t=>{if(t){p.value=!0;try{await b.login({username:s.username,password:s.password,captchaKey:v.value,captchaCode:s.captchaCode}),x.success("登录成功");const e=V.query.redirect;C.push(e||"/")}catch{s.captchaCode="",await f()}finally{p.value=!1}}})};return B(()=>{f()}),(t,e)=>{const g=n("el-input"),i=n("el-form-item"),w=n("el-icon"),q=n("el-button"),K=n("el-form");return h(),_("div",G,[l("div",H,[e[4]||(e[4]=l("div",{class:"login-header"},[l("h1",null,"学业邑规划 后台管理系统")],-1)),a(K,{ref_key:"loginFormRef",ref:u,model:s,rules:k,class:"login-form",onKeyup:E(y,["enter"])},{default:o(()=>[a(i,{prop:"username"},{default:o(()=>[a(g,{modelValue:s.username,"onUpdate:modelValue":e[0]||(e[0]=r=>s.username=r),placeholder:"请输入用户名","prefix-icon":c(M),size:"large"},null,8,["modelValue","prefix-icon"])]),_:1}),a(i,{prop:"password"},{default:o(()=>[a(g,{modelValue:s.password,"onUpdate:modelValue":e[1]||(e[1]=r=>s.password=r),type:"password",placeholder:"请输入密码","prefix-icon":c(S),size:"large","show-password":""},null,8,["modelValue","prefix-icon"])]),_:1}),a(i,{prop:"captchaCode"},{default:o(()=>[l("div",J,[a(g,{modelValue:s.captchaCode,"onUpdate:modelValue":e[2]||(e[2]=r=>s.captchaCode=r),placeholder:"请输入验证码","prefix-icon":c(j),size:"large",class:"captcha-input"},null,8,["modelValue","prefix-icon"]),l("div",{class:"captcha-image-wrapper",onClick:f},[m.value?(h(),_("img",{key:0,src:m.value,alt:"验证码",class:"captcha-image",title:"点击刷新验证码"},null,8,O)):(h(),_("div",P,[a(w,{class:"is-loading"},{default:o(()=>[a(c(L))]),_:1})])),a(w,{class:"refresh-icon"},{default:o(()=>[a(c(T))]),_:1})])])]),_:1}),a(i,null,{default:o(()=>[a(q,{type:"primary",size:"large",loading:p.value,class:"login-btn",onClick:y},{default:o(()=>[...e[3]||(e[3]=[A(" 登 录 ",-1)])]),_:1},8,["loading"])]),_:1})]),_:1},8,["model"])])])}}}),Y=D(Q,[["__scopeId","data-v-d12e50e6"]]);export{Y as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CluIevU3.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CTl0ngYa.js similarity index 89% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CluIevU3.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CTl0ngYa.js index 5ae3f36..98c5072 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CluIevU3.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CTl0ngYa.js @@ -1 +1 @@ -import{d as ee,r as v,v as S,a as le,o as te,g as s,B as N,c as ae,k as d,e as t,w as a,C as T,z as u,G as y,az as ne,t as i,x as q,b as A,l as oe,D as re,aA as se,E as C,aB as de,ap as ue,S as ie,aC as pe,_ as me}from"./index-CIT-S3uf.js";const fe={class:"page-container"},ce={class:"card-header"},ye=ee({__name:"index",setup(_e){const E=v(!1),h=v([]),w={1:{label:"目录",type:"info"},2:{label:"菜单",type:""},3:{label:"按钮",type:"warning"}},c=v(!1),_=v(!1),F=S(()=>_.value?"编辑菜单":"新增菜单"),U=v(),I=v(!1),e=le({id:0,parentId:0,name:"",path:"",component:"",icon:"",menuType:2,permission:"",sortOrder:0,status:1,isExternal:!1,isCache:!0}),R=S(()=>{if(!_.value)return[{id:0,name:"顶级菜单",children:h.value}];const o=l=>l.filter(r=>r.id!==e.id).map(r=>({...r,children:o(r.children||[])}));return[{id:0,name:"顶级菜单",children:o(h.value)}]}),z={name:[{required:!0,message:"请输入菜单名称",trigger:"blur"}],menuType:[{required:!0,message:"请选择菜单类型",trigger:"change"}],path:[{validator:(o,l,r)=>{e.menuType===2&&!l?r(new Error("菜单类型必须填写路由路径")):l&&!e.isExternal&&!l.startsWith("/")?r(new Error("内部路由路径必须以 / 开头")):r()},trigger:"blur"}],component:[{validator:(o,l,r)=>{e.menuType===2&&!l?r(new Error("菜单类型必须填写组件路径")):r()},trigger:"blur"}],permission:[{validator:(o,l,r)=>{e.menuType===3&&!l?r(new Error("按钮类型必须填写权限标识")):r()},trigger:"blur"}],sortOrder:[{type:"number",min:0,message:"排序值必须为非负整数",trigger:"blur"}]},x=()=>{var o;e.id=0,e.parentId=0,e.name="",e.path="",e.component="",e.icon="",e.menuType=2,e.permission="",e.sortOrder=0,e.status=1,e.isExternal=!1,e.isCache=!0,(o=U.value)==null||o.resetFields()},G=async()=>{var l;if(await((l=U.value)==null?void 0:l.validate())){I.value=!0;try{const r={parentId:e.parentId,name:e.name,path:e.path||void 0,component:e.component||void 0,icon:e.icon||void 0,menuType:e.menuType,permission:e.permission||void 0,sortOrder:e.sortOrder,status:e.status,isExternal:e.isExternal,isCache:e.isCache};_.value?(await se(e.id,r),C.success("更新成功")):(await de(r),C.success("创建成功")),c.value=!1,O()}catch(r){C.error(r.message||"操作失败")}finally{I.value=!1}}},O=async()=>{E.value=!0;try{const o=await ue();h.value=o.data}finally{E.value=!1}},L=()=>{x(),_.value=!1,c.value=!0},W=o=>{x(),_.value=!1,e.parentId=o.id,c.value=!0},j=o=>{x(),_.value=!0,e.id=o.id,e.parentId=o.parentId,e.name=o.name,e.path=o.path||"",e.component=o.component||"",e.icon=o.icon||"",e.menuType=o.menuType,e.permission=o.permission||"",e.sortOrder=o.sortOrder,e.status=o.status,e.isExternal=o.isExternal,e.isCache=o.isCache,c.value=!0},H=async o=>{const r=o.children&&o.children.length>0?`菜单 "${o.name}" 下有 ${o.children.length} 个子菜单,删除后子菜单也将被删除。确定要删除吗?`:`确定要删除菜单 "${o.name}" 吗?`;try{await ie.confirm(r,"删除确认",{type:"warning",confirmButtonText:"确定删除",cancelButtonText:"取消"}),await pe(o.id),C.success("删除成功"),O()}catch(m){m!=="cancel"&&C.error(m.message||"删除失败")}};return te(()=>{O()}),(o,l)=>{const r=s("el-icon"),m=s("el-button"),f=s("el-table-column"),B=s("el-tag"),J=s("el-table"),K=s("el-card"),P=s("el-tree-select"),p=s("el-form-item"),g=s("el-radio"),D=s("el-radio-group"),b=s("el-input"),Q=s("el-input-number"),M=s("el-switch"),X=s("el-form"),Y=s("el-dialog"),k=N("permission"),Z=N("loading");return d(),ae("div",fe,[t(K,null,{header:a(()=>[A("div",ce,[l[14]||(l[14]=A("span",null,"菜单管理",-1)),T((d(),u(m,{type:"primary",onClick:L},{default:a(()=>[t(r,null,{default:a(()=>[t(oe(re))]),_:1}),l[13]||(l[13]=i("新增菜单 ",-1))]),_:1})),[[k,"system:menu:add"]])])]),default:a(()=>[T((d(),u(J,{data:h.value,"row-key":"id","tree-props":{children:"children"}},{default:a(()=>[t(f,{prop:"name",label:"菜单名称","min-width":"180"}),t(f,{prop:"icon",label:"图标",width:"80"},{default:a(({row:n})=>[n.icon?(d(),u(r,{key:0},{default:a(()=>[(d(),u(ne(n.icon)))]),_:2},1024)):y("",!0)]),_:1}),t(f,{prop:"path",label:"路由路径","min-width":"150"}),t(f,{prop:"component",label:"组件路径","min-width":"180"}),t(f,{prop:"permission",label:"权限标识","min-width":"120"}),t(f,{prop:"menuType",label:"类型",width:"80"},{default:a(({row:n})=>{var V;return[t(B,{type:(V=w[n.menuType])==null?void 0:V.type},{default:a(()=>{var $;return[i(q(($=w[n.menuType])==null?void 0:$.label),1)]}),_:2},1032,["type"])]}),_:1}),t(f,{prop:"sortOrder",label:"排序",width:"80"}),t(f,{prop:"status",label:"状态",width:"80"},{default:a(({row:n})=>[t(B,{type:n.status===1?"success":"danger"},{default:a(()=>[i(q(n.status===1?"显示":"隐藏"),1)]),_:2},1032,["type"])]),_:1}),t(f,{label:"操作",width:"200",fixed:"right"},{default:a(({row:n})=>[T((d(),u(m,{link:"",type:"primary",onClick:V=>j(n)},{default:a(()=>[...l[15]||(l[15]=[i("编辑",-1)])]),_:1},8,["onClick"])),[[k,"system:menu:edit"]]),T((d(),u(m,{link:"",type:"primary",onClick:V=>W(n)},{default:a(()=>[...l[16]||(l[16]=[i("添加子菜单",-1)])]),_:1},8,["onClick"])),[[k,"system:menu:add"]]),T((d(),u(m,{link:"",type:"danger",onClick:V=>H(n)},{default:a(()=>[...l[17]||(l[17]=[i("删除",-1)])]),_:1},8,["onClick"])),[[k,"system:menu:delete"]])]),_:1})]),_:1},8,["data"])),[[Z,E.value]])]),_:1}),t(Y,{modelValue:c.value,"onUpdate:modelValue":l[12]||(l[12]=n=>c.value=n),title:F.value,width:"550px",onClose:x},{footer:a(()=>[t(m,{onClick:l[11]||(l[11]=n=>c.value=!1)},{default:a(()=>[...l[23]||(l[23]=[i("取消",-1)])]),_:1}),t(m,{type:"primary",onClick:G,loading:I.value},{default:a(()=>[...l[24]||(l[24]=[i("确定",-1)])]),_:1},8,["loading"])]),default:a(()=>[t(X,{ref_key:"formRef",ref:U,model:e,rules:z,"label-width":"100px"},{default:a(()=>[t(p,{label:"上级菜单",prop:"parentId"},{default:a(()=>[t(P,{modelValue:e.parentId,"onUpdate:modelValue":l[0]||(l[0]=n=>e.parentId=n),data:R.value,props:{label:"name",value:"id",children:"children"},"check-strictly":"","render-after-expand":!1,placeholder:"请选择上级菜单",clearable:"",style:{width:"100%"}},null,8,["modelValue","data"])]),_:1}),t(p,{label:"菜单类型",prop:"menuType"},{default:a(()=>[t(D,{modelValue:e.menuType,"onUpdate:modelValue":l[1]||(l[1]=n=>e.menuType=n)},{default:a(()=>[t(g,{value:1},{default:a(()=>[...l[18]||(l[18]=[i("目录",-1)])]),_:1}),t(g,{value:2},{default:a(()=>[...l[19]||(l[19]=[i("菜单",-1)])]),_:1}),t(g,{value:3},{default:a(()=>[...l[20]||(l[20]=[i("按钮",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),t(p,{label:"菜单名称",prop:"name"},{default:a(()=>[t(b,{modelValue:e.name,"onUpdate:modelValue":l[2]||(l[2]=n=>e.name=n),placeholder:"请输入菜单名称"},null,8,["modelValue"])]),_:1}),e.menuType!==3?(d(),u(p,{key:0,label:"图标",prop:"icon"},{default:a(()=>[t(b,{modelValue:e.icon,"onUpdate:modelValue":l[3]||(l[3]=n=>e.icon=n),placeholder:"请输入图标名称,如 Setting"},null,8,["modelValue"])]),_:1})):y("",!0),e.menuType===2?(d(),u(p,{key:1,label:"路由路径",prop:"path"},{default:a(()=>[t(b,{modelValue:e.path,"onUpdate:modelValue":l[4]||(l[4]=n=>e.path=n),placeholder:"请输入路由路径,如 /system/menu"},null,8,["modelValue"])]),_:1})):y("",!0),e.menuType===2?(d(),u(p,{key:2,label:"组件路径",prop:"component"},{default:a(()=>[t(b,{modelValue:e.component,"onUpdate:modelValue":l[5]||(l[5]=n=>e.component=n),placeholder:"请输入组件路径,如 system/menu/index"},null,8,["modelValue"])]),_:1})):y("",!0),e.menuType===3?(d(),u(p,{key:3,label:"权限标识",prop:"permission"},{default:a(()=>[t(b,{modelValue:e.permission,"onUpdate:modelValue":l[6]||(l[6]=n=>e.permission=n),placeholder:"请输入权限标识,如 menu:create"},null,8,["modelValue"])]),_:1})):y("",!0),t(p,{label:"排序",prop:"sortOrder"},{default:a(()=>[t(Q,{modelValue:e.sortOrder,"onUpdate:modelValue":l[7]||(l[7]=n=>e.sortOrder=n),min:0,max:9999},null,8,["modelValue"])]),_:1}),t(p,{label:"状态",prop:"status"},{default:a(()=>[t(D,{modelValue:e.status,"onUpdate:modelValue":l[8]||(l[8]=n=>e.status=n)},{default:a(()=>[t(g,{value:1},{default:a(()=>[...l[21]||(l[21]=[i("显示",-1)])]),_:1}),t(g,{value:0},{default:a(()=>[...l[22]||(l[22]=[i("隐藏",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),e.menuType===2?(d(),u(p,{key:4,label:"是否外链",prop:"isExternal"},{default:a(()=>[t(M,{modelValue:e.isExternal,"onUpdate:modelValue":l[9]||(l[9]=n=>e.isExternal=n)},null,8,["modelValue"])]),_:1})):y("",!0),e.menuType===2?(d(),u(p,{key:5,label:"是否缓存",prop:"isCache"},{default:a(()=>[t(M,{modelValue:e.isCache,"onUpdate:modelValue":l[10]||(l[10]=n=>e.isCache=n)},null,8,["modelValue"])]),_:1})):y("",!0)]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}}),ge=me(ye,[["__scopeId","data-v-b5561b80"]]);export{ge as default}; +import{d as ee,r as v,v as q,a as le,o as te,g as s,B as N,c as ae,k as d,e as t,w as a,C as T,z as u,G as y,aA as ne,t as i,x as S,b as A,l as oe,D as re,aB as se,E as C,aC as de,aq as ue,T as ie,aD as pe,_ as me}from"./index-D3kwcp-p.js";const fe={class:"page-container"},ce={class:"card-header"},ye=ee({__name:"index",setup(_e){const E=v(!1),h=v([]),D={1:{label:"目录",type:"info"},2:{label:"菜单",type:""},3:{label:"按钮",type:"warning"}},c=v(!1),_=v(!1),F=q(()=>_.value?"编辑菜单":"新增菜单"),U=v(),I=v(!1),e=le({id:0,parentId:0,name:"",path:"",component:"",icon:"",menuType:2,permission:"",sortOrder:0,status:1,isExternal:!1,isCache:!0}),R=q(()=>{if(!_.value)return[{id:0,name:"顶级菜单",children:h.value}];const o=l=>l.filter(r=>r.id!==e.id).map(r=>({...r,children:o(r.children||[])}));return[{id:0,name:"顶级菜单",children:o(h.value)}]}),z={name:[{required:!0,message:"请输入菜单名称",trigger:"blur"}],menuType:[{required:!0,message:"请选择菜单类型",trigger:"change"}],path:[{validator:(o,l,r)=>{e.menuType===2&&!l?r(new Error("菜单类型必须填写路由路径")):l&&!e.isExternal&&!l.startsWith("/")?r(new Error("内部路由路径必须以 / 开头")):r()},trigger:"blur"}],component:[{validator:(o,l,r)=>{e.menuType===2&&!l?r(new Error("菜单类型必须填写组件路径")):r()},trigger:"blur"}],permission:[{validator:(o,l,r)=>{e.menuType===3&&!l?r(new Error("按钮类型必须填写权限标识")):r()},trigger:"blur"}],sortOrder:[{type:"number",min:0,message:"排序值必须为非负整数",trigger:"blur"}]},x=()=>{var o;e.id=0,e.parentId=0,e.name="",e.path="",e.component="",e.icon="",e.menuType=2,e.permission="",e.sortOrder=0,e.status=1,e.isExternal=!1,e.isCache=!0,(o=U.value)==null||o.resetFields()},G=async()=>{var l;if(await((l=U.value)==null?void 0:l.validate())){I.value=!0;try{const r={parentId:e.parentId,name:e.name,path:e.path||void 0,component:e.component||void 0,icon:e.icon||void 0,menuType:e.menuType,permission:e.permission||void 0,sortOrder:e.sortOrder,status:e.status,isExternal:e.isExternal,isCache:e.isCache};_.value?(await se(e.id,r),C.success("更新成功")):(await de(r),C.success("创建成功")),c.value=!1,O()}catch(r){C.error(r.message||"操作失败")}finally{I.value=!1}}},O=async()=>{E.value=!0;try{const o=await ue();h.value=o.data}finally{E.value=!1}},L=()=>{x(),_.value=!1,c.value=!0},W=o=>{x(),_.value=!1,e.parentId=o.id,c.value=!0},j=o=>{x(),_.value=!0,e.id=o.id,e.parentId=o.parentId,e.name=o.name,e.path=o.path||"",e.component=o.component||"",e.icon=o.icon||"",e.menuType=o.menuType,e.permission=o.permission||"",e.sortOrder=o.sortOrder,e.status=o.status,e.isExternal=o.isExternal,e.isCache=o.isCache,c.value=!0},H=async o=>{const r=o.children&&o.children.length>0?`菜单 "${o.name}" 下有 ${o.children.length} 个子菜单,删除后子菜单也将被删除。确定要删除吗?`:`确定要删除菜单 "${o.name}" 吗?`;try{await ie.confirm(r,"删除确认",{type:"warning",confirmButtonText:"确定删除",cancelButtonText:"取消"}),await pe(o.id),C.success("删除成功"),O()}catch(m){m!=="cancel"&&C.error(m.message||"删除失败")}};return te(()=>{O()}),(o,l)=>{const r=s("el-icon"),m=s("el-button"),f=s("el-table-column"),w=s("el-tag"),J=s("el-table"),K=s("el-card"),P=s("el-tree-select"),p=s("el-form-item"),g=s("el-radio"),B=s("el-radio-group"),b=s("el-input"),Q=s("el-input-number"),M=s("el-switch"),X=s("el-form"),Y=s("el-dialog"),k=N("permission"),Z=N("loading");return d(),ae("div",fe,[t(K,null,{header:a(()=>[A("div",ce,[l[14]||(l[14]=A("span",null,"菜单管理",-1)),T((d(),u(m,{type:"primary",onClick:L},{default:a(()=>[t(r,null,{default:a(()=>[t(oe(re))]),_:1}),l[13]||(l[13]=i("新增菜单 ",-1))]),_:1})),[[k,"system:menu:add"]])])]),default:a(()=>[T((d(),u(J,{data:h.value,"row-key":"id","tree-props":{children:"children"}},{default:a(()=>[t(f,{prop:"name",label:"菜单名称","min-width":"180"}),t(f,{prop:"icon",label:"图标",width:"80"},{default:a(({row:n})=>[n.icon?(d(),u(r,{key:0},{default:a(()=>[(d(),u(ne(n.icon)))]),_:2},1024)):y("",!0)]),_:1}),t(f,{prop:"path",label:"路由路径","min-width":"150"}),t(f,{prop:"component",label:"组件路径","min-width":"180"}),t(f,{prop:"permission",label:"权限标识","min-width":"120"}),t(f,{prop:"menuType",label:"类型",width:"80"},{default:a(({row:n})=>{var V;return[t(w,{type:(V=D[n.menuType])==null?void 0:V.type},{default:a(()=>{var $;return[i(S(($=D[n.menuType])==null?void 0:$.label),1)]}),_:2},1032,["type"])]}),_:1}),t(f,{prop:"sortOrder",label:"排序",width:"80"}),t(f,{prop:"status",label:"状态",width:"80"},{default:a(({row:n})=>[t(w,{type:n.status===1?"success":"danger"},{default:a(()=>[i(S(n.status===1?"显示":"隐藏"),1)]),_:2},1032,["type"])]),_:1}),t(f,{label:"操作",width:"200",fixed:"right"},{default:a(({row:n})=>[T((d(),u(m,{link:"",type:"primary",onClick:V=>j(n)},{default:a(()=>[...l[15]||(l[15]=[i("编辑",-1)])]),_:1},8,["onClick"])),[[k,"system:menu:edit"]]),T((d(),u(m,{link:"",type:"primary",onClick:V=>W(n)},{default:a(()=>[...l[16]||(l[16]=[i("添加子菜单",-1)])]),_:1},8,["onClick"])),[[k,"system:menu:add"]]),T((d(),u(m,{link:"",type:"danger",onClick:V=>H(n)},{default:a(()=>[...l[17]||(l[17]=[i("删除",-1)])]),_:1},8,["onClick"])),[[k,"system:menu:delete"]])]),_:1})]),_:1},8,["data"])),[[Z,E.value]])]),_:1}),t(Y,{modelValue:c.value,"onUpdate:modelValue":l[12]||(l[12]=n=>c.value=n),title:F.value,width:"550px",onClose:x},{footer:a(()=>[t(m,{onClick:l[11]||(l[11]=n=>c.value=!1)},{default:a(()=>[...l[23]||(l[23]=[i("取消",-1)])]),_:1}),t(m,{type:"primary",onClick:G,loading:I.value},{default:a(()=>[...l[24]||(l[24]=[i("确定",-1)])]),_:1},8,["loading"])]),default:a(()=>[t(X,{ref_key:"formRef",ref:U,model:e,rules:z,"label-width":"100px"},{default:a(()=>[t(p,{label:"上级菜单",prop:"parentId"},{default:a(()=>[t(P,{modelValue:e.parentId,"onUpdate:modelValue":l[0]||(l[0]=n=>e.parentId=n),data:R.value,props:{label:"name",value:"id",children:"children"},"check-strictly":"","render-after-expand":!1,placeholder:"请选择上级菜单",clearable:"",style:{width:"100%"}},null,8,["modelValue","data"])]),_:1}),t(p,{label:"菜单类型",prop:"menuType"},{default:a(()=>[t(B,{modelValue:e.menuType,"onUpdate:modelValue":l[1]||(l[1]=n=>e.menuType=n)},{default:a(()=>[t(g,{value:1},{default:a(()=>[...l[18]||(l[18]=[i("目录",-1)])]),_:1}),t(g,{value:2},{default:a(()=>[...l[19]||(l[19]=[i("菜单",-1)])]),_:1}),t(g,{value:3},{default:a(()=>[...l[20]||(l[20]=[i("按钮",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),t(p,{label:"菜单名称",prop:"name"},{default:a(()=>[t(b,{modelValue:e.name,"onUpdate:modelValue":l[2]||(l[2]=n=>e.name=n),placeholder:"请输入菜单名称"},null,8,["modelValue"])]),_:1}),e.menuType!==3?(d(),u(p,{key:0,label:"图标",prop:"icon"},{default:a(()=>[t(b,{modelValue:e.icon,"onUpdate:modelValue":l[3]||(l[3]=n=>e.icon=n),placeholder:"请输入图标名称,如 Setting"},null,8,["modelValue"])]),_:1})):y("",!0),e.menuType===2?(d(),u(p,{key:1,label:"路由路径",prop:"path"},{default:a(()=>[t(b,{modelValue:e.path,"onUpdate:modelValue":l[4]||(l[4]=n=>e.path=n),placeholder:"请输入路由路径,如 /system/menu"},null,8,["modelValue"])]),_:1})):y("",!0),e.menuType===2?(d(),u(p,{key:2,label:"组件路径",prop:"component"},{default:a(()=>[t(b,{modelValue:e.component,"onUpdate:modelValue":l[5]||(l[5]=n=>e.component=n),placeholder:"请输入组件路径,如 system/menu/index"},null,8,["modelValue"])]),_:1})):y("",!0),e.menuType===3?(d(),u(p,{key:3,label:"权限标识",prop:"permission"},{default:a(()=>[t(b,{modelValue:e.permission,"onUpdate:modelValue":l[6]||(l[6]=n=>e.permission=n),placeholder:"请输入权限标识,如 menu:create"},null,8,["modelValue"])]),_:1})):y("",!0),t(p,{label:"排序",prop:"sortOrder"},{default:a(()=>[t(Q,{modelValue:e.sortOrder,"onUpdate:modelValue":l[7]||(l[7]=n=>e.sortOrder=n),min:0,max:9999},null,8,["modelValue"])]),_:1}),t(p,{label:"状态",prop:"status"},{default:a(()=>[t(B,{modelValue:e.status,"onUpdate:modelValue":l[8]||(l[8]=n=>e.status=n)},{default:a(()=>[t(g,{value:1},{default:a(()=>[...l[21]||(l[21]=[i("显示",-1)])]),_:1}),t(g,{value:0},{default:a(()=>[...l[22]||(l[22]=[i("隐藏",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),e.menuType===2?(d(),u(p,{key:4,label:"是否外链",prop:"isExternal"},{default:a(()=>[t(M,{modelValue:e.isExternal,"onUpdate:modelValue":l[9]||(l[9]=n=>e.isExternal=n)},null,8,["modelValue"])]),_:1})):y("",!0),e.menuType===2?(d(),u(p,{key:5,label:"是否缓存",prop:"isCache"},{default:a(()=>[t(M,{modelValue:e.isCache,"onUpdate:modelValue":l[10]||(l[10]=n=>e.isCache=n)},null,8,["modelValue"])]),_:1})):y("",!0)]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}}),ge=me(ye,[["__scopeId","data-v-b5561b80"]]);export{ge as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CXu62BQM.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CVrigPeB.js similarity index 83% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CXu62BQM.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CVrigPeB.js index f1dbf55..e328e06 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CXu62BQM.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CVrigPeB.js @@ -1 +1 @@ -import{d as Z,r as g,a as T,o as ee,g as i,B as R,c as te,k as _,b as V,e as t,C as b,z as w,w as l,t as f,l as z,D as ae,f as le,J as oe,L as ne,s as se,x as ie,X as re,a1 as de,E as x,S as ue,_ as pe}from"./index-CIT-S3uf.js";import{g as me,c as ce,d as ge,f as fe,h as ve}from"./planner-D2YI8Lf4.js";const _e={class:"page-container"},Ve={class:"page-header"},be={class:"price"},ye={class:"pagination-container"},he=Z({__name:"index",setup(we){const C=g(!1),P=g([]),B=g(0),s=T({page:1,pageSize:10,name:void 0,status:void 0}),p=g(!1),k=g(""),S=g(),U=g(!1),n=T({id:void 0,name:"",avatar:"",title:"",introduction:"",tags:"",price:0,sort:0,status:1}),j={name:[{required:!0,message:"请输入姓名",trigger:"blur"}],avatar:[{required:!0,message:"请上传头像",trigger:"change"}],price:[{required:!0,message:"请输入价格",trigger:"blur"},{validator:(o,e,m)=>{e<=0?m(new Error("价格必须大于0")):m()},trigger:"blur"}],status:[{required:!0,message:"请选择状态",trigger:"change"}]},d=async()=>{C.value=!0;try{const o=await me(s);o.code===0&&(P.value=o.data.list,B.value=o.data.total)}finally{C.value=!1}},D=()=>{s.page=1,d()},L=()=>{s.name=void 0,s.status=void 0,s.page=1,d()},M=o=>{s.pageSize=o,d()},N=o=>{s.page=o,d()},I=({prop:o,order:e})=>{console.log("Sort changed:",o,e),d()},K=()=>{k.value="新增规划师",Object.assign(n,{id:void 0,name:"",avatar:"",title:"",introduction:"",tags:"",price:0,sort:0,status:1}),p.value=!0},O=o=>{k.value="编辑规划师",Object.assign(n,{id:o.id,name:o.name,avatar:o.avatar,title:o.title,introduction:o.introduction,tags:o.tags,price:o.price,sort:o.sort,status:o.status}),p.value=!0},A=async()=>{if(S.value){await S.value.validate(),U.value=!0;try{n.id?(await ce(n)).code===0&&(x.success("更新成功"),p.value=!1,d()):(await ge(n)).code===0&&(x.success("创建成功"),p.value=!1,d())}finally{U.value=!1}}},F=async o=>{const e={id:o.id,status:o.status};(await fe(e)).code===0?x.success("状态更新成功"):o.status=o.status===1?0:1},J=o=>{ue.confirm(`确定要删除规划师"${o.name}"吗?`,"提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(async()=>{(await ve(o.id)).code===0&&(x.success("删除成功"),d())}).catch(()=>{})};return ee(()=>{d()}),(o,e)=>{const m=i("el-icon"),c=i("el-button"),v=i("el-input"),r=i("el-form-item"),$=i("el-form"),E=i("el-card"),X=i("el-avatar"),u=i("el-table-column"),G=i("el-switch"),H=i("el-table"),Q=i("el-pagination"),q=i("el-input-number"),W=i("el-dialog"),y=R("permission"),Y=R("loading");return _(),te("div",_e,[V("div",Ve,[e[15]||(e[15]=V("h2",null,"规划师管理",-1)),b((_(),w(c,{type:"primary",onClick:K},{default:l(()=>[t(m,null,{default:l(()=>[t(z(ae))]),_:1}),e[14]||(e[14]=f("新增规划师 ",-1))]),_:1})),[[y,"planner:create"]])]),t(E,{class:"search-card",shadow:"never"},{default:l(()=>[t($,{model:s,inline:""},{default:l(()=>[t(r,{label:"姓名"},{default:l(()=>[t(v,{modelValue:s.name,"onUpdate:modelValue":e[0]||(e[0]=a=>s.name=a),placeholder:"请输入姓名",clearable:"",onKeyup:le(D,["enter"])},null,8,["modelValue"])]),_:1}),t(r,{label:"状态"},{default:l(()=>[t(oe,{modelValue:s.status,"onUpdate:modelValue":e[1]||(e[1]=a=>s.status=a),"dict-type":"common_status",placeholder:"请选择状态",clearable:""},null,8,["modelValue"])]),_:1}),t(r,null,{default:l(()=>[t(c,{type:"primary",onClick:D},{default:l(()=>[t(m,null,{default:l(()=>[t(z(ne))]),_:1}),e[16]||(e[16]=f("搜索 ",-1))]),_:1}),t(c,{onClick:L},{default:l(()=>[t(m,null,{default:l(()=>[t(z(se))]),_:1}),e[17]||(e[17]=f("重置 ",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),t(E,{class:"table-card",shadow:"never"},{default:l(()=>[b((_(),w(H,{data:P.value,"row-key":"id",onSortChange:I},{default:l(()=>[t(u,{label:"头像",width:"80"},{default:l(({row:a})=>[t(X,{src:a.avatar,size:50},null,8,["src"])]),_:1}),t(u,{prop:"name",label:"姓名","min-width":"100"}),t(u,{prop:"title",label:"职称","min-width":"120","show-overflow-tooltip":""}),t(u,{prop:"tags",label:"标签","min-width":"180","show-overflow-tooltip":""}),t(u,{prop:"price",label:"价格",width:"100",align:"right"},{default:l(({row:a})=>[V("span",be,"¥"+ie(a.price.toFixed(2)),1)]),_:1}),t(u,{prop:"sort",label:"排序",width:"80",align:"center",sortable:"custom"}),t(u,{label:"状态",width:"100",align:"center"},{default:l(({row:a})=>[b(t(G,{modelValue:a.status,"onUpdate:modelValue":h=>a.status=h,"active-value":1,"inactive-value":0,onChange:h=>F(a)},null,8,["modelValue","onUpdate:modelValue","onChange"]),[[y,"planner:update"]])]),_:1}),t(u,{prop:"createTime",label:"创建时间",width:"170"}),t(u,{label:"操作",width:"150",fixed:"right"},{default:l(({row:a})=>[b((_(),w(c,{link:"",type:"primary",onClick:h=>O(a)},{default:l(()=>[...e[18]||(e[18]=[f("编辑",-1)])]),_:1},8,["onClick"])),[[y,"planner:update"]]),b((_(),w(c,{link:"",type:"danger",onClick:h=>J(a)},{default:l(()=>[...e[19]||(e[19]=[f("删除",-1)])]),_:1},8,["onClick"])),[[y,"planner:delete"]])]),_:1})]),_:1},8,["data"])),[[Y,C.value]]),V("div",ye,[t(Q,{"current-page":s.page,"onUpdate:currentPage":e[2]||(e[2]=a=>s.page=a),"page-size":s.pageSize,"onUpdate:pageSize":e[3]||(e[3]=a=>s.pageSize=a),"page-sizes":[10,20,50,100],total:B.value,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:M,onCurrentChange:N},null,8,["current-page","page-size","total"])])]),_:1}),t(W,{modelValue:p.value,"onUpdate:modelValue":e[13]||(e[13]=a=>p.value=a),title:k.value,width:"600px","destroy-on-close":""},{footer:l(()=>[t(c,{onClick:e[12]||(e[12]=a=>p.value=!1)},{default:l(()=>[...e[21]||(e[21]=[f("取消",-1)])]),_:1}),t(c,{type:"primary",loading:U.value,onClick:A},{default:l(()=>[...e[22]||(e[22]=[f("确定",-1)])]),_:1},8,["loading"])]),default:l(()=>[t($,{ref_key:"formRef",ref:S,model:n,rules:j,"label-width":"80px"},{default:l(()=>[t(r,{label:"姓名",prop:"name"},{default:l(()=>[t(v,{modelValue:n.name,"onUpdate:modelValue":e[4]||(e[4]=a=>n.name=a),placeholder:"请输入姓名",maxlength:"50"},null,8,["modelValue"])]),_:1}),t(r,{label:"头像",prop:"avatar"},{default:l(()=>[t(re,{modelValue:n.avatar,"onUpdate:modelValue":e[5]||(e[5]=a=>n.avatar=a),limit:1},null,8,["modelValue"])]),_:1}),t(r,{label:"职称",prop:"title"},{default:l(()=>[t(v,{modelValue:n.title,"onUpdate:modelValue":e[6]||(e[6]=a=>n.title=a),placeholder:"请输入职称",maxlength:"100"},null,8,["modelValue"])]),_:1}),t(r,{label:"简介",prop:"introduction"},{default:l(()=>[t(v,{modelValue:n.introduction,"onUpdate:modelValue":e[7]||(e[7]=a=>n.introduction=a),type:"textarea",rows:4,placeholder:"请输入简介",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1}),t(r,{label:"标签",prop:"tags"},{default:l(()=>[t(v,{modelValue:n.tags,"onUpdate:modelValue":e[8]||(e[8]=a=>n.tags=a),type:"textarea",rows:2,placeholder:"多个标签用逗号分隔,如:10年教育经验,公办学校教师",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1}),t(r,{label:"价格",prop:"price"},{default:l(()=>[t(q,{modelValue:n.price,"onUpdate:modelValue":e[9]||(e[9]=a=>n.price=a),min:.01,precision:2,step:10,"controls-position":"right",style:{width:"200px"}},null,8,["modelValue"]),e[20]||(e[20]=V("span",{class:"form-tip"},"元",-1))]),_:1}),t(r,{label:"排序",prop:"sort"},{default:l(()=>[t(q,{modelValue:n.sort,"onUpdate:modelValue":e[10]||(e[10]=a=>n.sort=a),min:0,max:9999,"controls-position":"right",style:{width:"200px"}},null,8,["modelValue"])]),_:1}),t(r,{label:"状态",prop:"status"},{default:l(()=>[t(de,{modelValue:n.status,"onUpdate:modelValue":e[11]||(e[11]=a=>n.status=a),"dict-type":"common_status"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}}),Se=pe(he,[["__scopeId","data-v-01364024"]]);export{Se as default}; +import{d as Z,r as g,a as q,o as ee,g as i,B as R,c as te,k as _,b as V,e as t,C as b,z as w,w as l,t as f,l as z,D as ae,f as le,J as oe,L as ne,s as se,x as ie,Y as re,a2 as de,E as x,T as ue,_ as pe}from"./index-D3kwcp-p.js";import{g as me,c as ce,d as ge,f as fe,h as ve}from"./planner-DHXxjiA2.js";const _e={class:"page-container"},Ve={class:"page-header"},be={class:"price"},ye={class:"pagination-container"},he=Z({__name:"index",setup(we){const C=g(!1),P=g([]),B=g(0),s=q({page:1,pageSize:10,name:void 0,status:void 0}),p=g(!1),k=g(""),U=g(),S=g(!1),n=q({id:void 0,name:"",avatar:"",title:"",introduction:"",tags:"",price:0,sort:0,status:1}),j={name:[{required:!0,message:"请输入姓名",trigger:"blur"}],avatar:[{required:!0,message:"请上传头像",trigger:"change"}],price:[{required:!0,message:"请输入价格",trigger:"blur"},{validator:(o,e,m)=>{e<=0?m(new Error("价格必须大于0")):m()},trigger:"blur"}],status:[{required:!0,message:"请选择状态",trigger:"change"}]},d=async()=>{C.value=!0;try{const o=await me(s);o.code===0&&(P.value=o.data.list,B.value=o.data.total)}finally{C.value=!1}},D=()=>{s.page=1,d()},L=()=>{s.name=void 0,s.status=void 0,s.page=1,d()},M=o=>{s.pageSize=o,d()},N=o=>{s.page=o,d()},I=({prop:o,order:e})=>{console.log("Sort changed:",o,e),d()},K=()=>{k.value="新增规划师",Object.assign(n,{id:void 0,name:"",avatar:"",title:"",introduction:"",tags:"",price:0,sort:0,status:1}),p.value=!0},O=o=>{k.value="编辑规划师",Object.assign(n,{id:o.id,name:o.name,avatar:o.avatar,title:o.title,introduction:o.introduction,tags:o.tags,price:o.price,sort:o.sort,status:o.status}),p.value=!0},A=async()=>{if(U.value){await U.value.validate(),S.value=!0;try{n.id?(await ce(n)).code===0&&(x.success("更新成功"),p.value=!1,d()):(await ge(n)).code===0&&(x.success("创建成功"),p.value=!1,d())}finally{S.value=!1}}},F=async o=>{const e={id:o.id,status:o.status};(await fe(e)).code===0?x.success("状态更新成功"):o.status=o.status===1?0:1},J=o=>{ue.confirm(`确定要删除规划师"${o.name}"吗?`,"提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(async()=>{(await ve(o.id)).code===0&&(x.success("删除成功"),d())}).catch(()=>{})};return ee(()=>{d()}),(o,e)=>{const m=i("el-icon"),c=i("el-button"),v=i("el-input"),r=i("el-form-item"),$=i("el-form"),E=i("el-card"),Y=i("el-avatar"),u=i("el-table-column"),G=i("el-switch"),H=i("el-table"),Q=i("el-pagination"),T=i("el-input-number"),W=i("el-dialog"),y=R("permission"),X=R("loading");return _(),te("div",_e,[V("div",Ve,[e[15]||(e[15]=V("h2",null,"规划师管理",-1)),b((_(),w(c,{type:"primary",onClick:K},{default:l(()=>[t(m,null,{default:l(()=>[t(z(ae))]),_:1}),e[14]||(e[14]=f("新增规划师 ",-1))]),_:1})),[[y,"planner:create"]])]),t(E,{class:"search-card",shadow:"never"},{default:l(()=>[t($,{model:s,inline:""},{default:l(()=>[t(r,{label:"姓名"},{default:l(()=>[t(v,{modelValue:s.name,"onUpdate:modelValue":e[0]||(e[0]=a=>s.name=a),placeholder:"请输入姓名",clearable:"",onKeyup:le(D,["enter"])},null,8,["modelValue"])]),_:1}),t(r,{label:"状态"},{default:l(()=>[t(oe,{modelValue:s.status,"onUpdate:modelValue":e[1]||(e[1]=a=>s.status=a),"dict-type":"common_status",placeholder:"请选择状态",clearable:""},null,8,["modelValue"])]),_:1}),t(r,null,{default:l(()=>[t(c,{type:"primary",onClick:D},{default:l(()=>[t(m,null,{default:l(()=>[t(z(ne))]),_:1}),e[16]||(e[16]=f("搜索 ",-1))]),_:1}),t(c,{onClick:L},{default:l(()=>[t(m,null,{default:l(()=>[t(z(se))]),_:1}),e[17]||(e[17]=f("重置 ",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),t(E,{class:"table-card",shadow:"never"},{default:l(()=>[b((_(),w(H,{data:P.value,"row-key":"id",onSortChange:I},{default:l(()=>[t(u,{label:"头像",width:"80"},{default:l(({row:a})=>[t(Y,{src:a.avatar,size:50},null,8,["src"])]),_:1}),t(u,{prop:"name",label:"姓名","min-width":"100"}),t(u,{prop:"title",label:"职称","min-width":"120","show-overflow-tooltip":""}),t(u,{prop:"tags",label:"标签","min-width":"180","show-overflow-tooltip":""}),t(u,{prop:"price",label:"价格",width:"100",align:"right"},{default:l(({row:a})=>[V("span",be,"¥"+ie(a.price.toFixed(2)),1)]),_:1}),t(u,{prop:"sort",label:"排序",width:"80",align:"center",sortable:"custom"}),t(u,{label:"状态",width:"100",align:"center"},{default:l(({row:a})=>[b(t(G,{modelValue:a.status,"onUpdate:modelValue":h=>a.status=h,"active-value":1,"inactive-value":0,onChange:h=>F(a)},null,8,["modelValue","onUpdate:modelValue","onChange"]),[[y,"planner:update"]])]),_:1}),t(u,{prop:"createTime",label:"创建时间",width:"170"}),t(u,{label:"操作",width:"150",fixed:"right"},{default:l(({row:a})=>[b((_(),w(c,{link:"",type:"primary",onClick:h=>O(a)},{default:l(()=>[...e[18]||(e[18]=[f("编辑",-1)])]),_:1},8,["onClick"])),[[y,"planner:update"]]),b((_(),w(c,{link:"",type:"danger",onClick:h=>J(a)},{default:l(()=>[...e[19]||(e[19]=[f("删除",-1)])]),_:1},8,["onClick"])),[[y,"planner:delete"]])]),_:1})]),_:1},8,["data"])),[[X,C.value]]),V("div",ye,[t(Q,{"current-page":s.page,"onUpdate:currentPage":e[2]||(e[2]=a=>s.page=a),"page-size":s.pageSize,"onUpdate:pageSize":e[3]||(e[3]=a=>s.pageSize=a),"page-sizes":[10,20,50,100],total:B.value,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:M,onCurrentChange:N},null,8,["current-page","page-size","total"])])]),_:1}),t(W,{modelValue:p.value,"onUpdate:modelValue":e[13]||(e[13]=a=>p.value=a),title:k.value,width:"600px","destroy-on-close":""},{footer:l(()=>[t(c,{onClick:e[12]||(e[12]=a=>p.value=!1)},{default:l(()=>[...e[21]||(e[21]=[f("取消",-1)])]),_:1}),t(c,{type:"primary",loading:S.value,onClick:A},{default:l(()=>[...e[22]||(e[22]=[f("确定",-1)])]),_:1},8,["loading"])]),default:l(()=>[t($,{ref_key:"formRef",ref:U,model:n,rules:j,"label-width":"80px"},{default:l(()=>[t(r,{label:"姓名",prop:"name"},{default:l(()=>[t(v,{modelValue:n.name,"onUpdate:modelValue":e[4]||(e[4]=a=>n.name=a),placeholder:"请输入姓名",maxlength:"50"},null,8,["modelValue"])]),_:1}),t(r,{label:"头像",prop:"avatar"},{default:l(()=>[t(re,{modelValue:n.avatar,"onUpdate:modelValue":e[5]||(e[5]=a=>n.avatar=a),limit:1},null,8,["modelValue"])]),_:1}),t(r,{label:"职称",prop:"title"},{default:l(()=>[t(v,{modelValue:n.title,"onUpdate:modelValue":e[6]||(e[6]=a=>n.title=a),placeholder:"请输入职称",maxlength:"100"},null,8,["modelValue"])]),_:1}),t(r,{label:"简介",prop:"introduction"},{default:l(()=>[t(v,{modelValue:n.introduction,"onUpdate:modelValue":e[7]||(e[7]=a=>n.introduction=a),type:"textarea",rows:4,placeholder:"请输入简介",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1}),t(r,{label:"标签",prop:"tags"},{default:l(()=>[t(v,{modelValue:n.tags,"onUpdate:modelValue":e[8]||(e[8]=a=>n.tags=a),type:"textarea",rows:2,placeholder:"多个标签用逗号分隔,如:10年教育经验,公办学校教师",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1}),t(r,{label:"价格",prop:"price"},{default:l(()=>[t(T,{modelValue:n.price,"onUpdate:modelValue":e[9]||(e[9]=a=>n.price=a),min:.01,precision:2,step:10,"controls-position":"right",style:{width:"200px"}},null,8,["modelValue"]),e[20]||(e[20]=V("span",{class:"form-tip"},"元",-1))]),_:1}),t(r,{label:"排序",prop:"sort"},{default:l(()=>[t(T,{modelValue:n.sort,"onUpdate:modelValue":e[10]||(e[10]=a=>n.sort=a),min:0,max:9999,"controls-position":"right",style:{width:"200px"}},null,8,["modelValue"])]),_:1}),t(r,{label:"状态",prop:"status"},{default:l(()=>[t(de,{modelValue:n.status,"onUpdate:modelValue":e[11]||(e[11]=a=>n.status=a),"dict-type":"common_status"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}}),Ue=pe(he,[["__scopeId","data-v-01364024"]]);export{Ue as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BvcnoHYv.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CYRJS58W.js similarity index 99% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BvcnoHYv.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CYRJS58W.js index 332b392..8aacad0 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BvcnoHYv.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CYRJS58W.js @@ -1 +1 @@ -import{O as R,d as _e,r as k,a as $,o as ye,g as f,B as q,c as T,k as g,e as t,C as F,w as r,b as s,t as i,l as N,N as ge,f as j,J as U,L as De,s as be,z as K,x as d,Q as Te,G as x,F as Ne,a0 as Ee,E as v,_ as we}from"./index-CIT-S3uf.js";function he(b){return R({url:"/admin/order/getList",method:"get",params:b})}function ve(b){return R({url:"/admin/order/getDetail",method:"get",params:{id:b}})}function Ve(b){return R({url:"/admin/order/refund",method:"post",data:b})}function Se(b){return R({url:"/admin/order/export",method:"get",params:b,responseType:"blob"})}const xe={class:"order-container"},Re={class:"header-content"},Ae={class:"header-right"},Ce={class:"user-info"},Ie={class:"nickname"},Le={class:"phone"},ke={class:"money-text"},Fe={class:"money-text pay-amount"},Ue={key:0},Pe={key:1,class:"text-muted"},Oe={class:"pagination-wrapper"},ze={class:"order-detail"},Me={class:"detail-section"},Be={class:"detail-section"},Ge={class:"detail-section"},Ye={class:"detail-section"},$e={class:"money-text"},qe={class:"money-text pay-amount"},je={key:0,class:"detail-section"},Ke={class:"money-text refund-amount"},He={key:1,class:"detail-section"},Je={class:"related-record"},We={key:2,class:"detail-actions"},Qe={class:"money-text pay-amount"},Xe={class:"form-tip"},Ze=_e({__name:"index",setup(b){const V={ASSESSMENT:1,PLANNER:2},c={PENDING:1,PAID:2,COMPLETED:3,REFUNDING:4,REFUNDED:5,CANCELLED:6},H={WECHAT:1},J=[{text:"最近一周",value:()=>{const l=new Date,e=new Date;return e.setTime(e.getTime()-3600*1e3*24*7),[e,l]}},{text:"最近一个月",value:()=>{const l=new Date,e=new Date;return e.setTime(e.getTime()-3600*1e3*24*30),[e,l]}},{text:"最近三个月",value:()=>{const l=new Date,e=new Date;return e.setTime(e.getTime()-3600*1e3*24*90),[e,l]}}],W=k(),A=k(),C=k(null),o=$({page:1,pageSize:10,orderNo:"",userId:"",orderType:void 0,status:void 0,payType:void 0,createTimeStart:void 0,createTimeEnd:void 0}),a=$({loading:!1,tableData:[],total:0,drawerVisible:!1,detailLoading:!1,orderDetail:null,refundDialogVisible:!1,refundFormData:{orderId:0,orderNo:"",payAmount:0,refundAmount:0,refundReason:""},refundFormLoading:!1,exportLoading:!1}),Q={refundAmount:[{required:!0,message:"请输入退款金额",trigger:"blur"},{validator:(l,e,u)=>{e<=0?u(new Error("退款金额必须大于0")):e>a.refundFormData.payAmount?u(new Error("退款金额不能超过实付金额")):u()},trigger:"blur"}],refundReason:[{required:!0,message:"请输入退款原因",trigger:"blur"},{min:2,max:200,message:"退款原因长度在2-200个字符之间",trigger:"blur"}]};function P(l){switch(l){case V.ASSESSMENT:return"primary";case V.PLANNER:return"success";default:return"primary"}}function O(l){switch(l){case V.ASSESSMENT:return"测评订单";case V.PLANNER:return"规划订单";default:return"未知"}}function z(l){switch(l){case c.PENDING:return"info";case c.PAID:return"primary";case c.COMPLETED:return"success";case c.REFUNDING:return"warning";case c.REFUNDED:return"danger";case c.CANCELLED:return"info";default:return"info"}}function M(l){switch(l){case c.PENDING:return"待支付";case c.PAID:return"已支付";case c.COMPLETED:return"已完成";case c.REFUNDING:return"退款中";case c.REFUNDED:return"已退款";case c.CANCELLED:return"已取消";default:return"未知"}}function B(l){switch(l){case H.WECHAT:return"微信支付";default:return"未知"}}function E(l){return l==null?"0.00":l.toFixed(2)}function X(l){return l===c.PAID||l===c.COMPLETED}async function w(){var l,e;a.loading=!0;try{const u={page:o.page,pageSize:o.pageSize};o.orderNo&&(u.orderNo=o.orderNo),o.userId&&(u.userId=Number(o.userId)),o.orderType!==void 0&&o.orderType!==""&&(u.orderType=Number(o.orderType)),o.status!==void 0&&o.status!==""&&(u.status=Number(o.status)),o.payType!==void 0&&o.payType!==""&&(u.payType=Number(o.payType)),o.createTimeStart&&(u.createTimeStart=o.createTimeStart),o.createTimeEnd&&(u.createTimeEnd=o.createTimeEnd);const m=await he(u);if(m.code===0)a.tableData=((l=m.data)==null?void 0:l.list)||[],a.total=((e=m.data)==null?void 0:e.total)||0;else throw new Error(m.message||"获取订单列表失败")}catch(u){const m=u instanceof Error?u.message:"获取订单列表失败";v.error(m)}finally{a.loading=!1}}async function Z(l){a.detailLoading=!0;try{const e=await ve(l);if(e.code===0)a.orderDetail=e.data;else throw new Error(e.message||"获取订单详情失败")}catch(e){const u=e instanceof Error?e.message:"获取订单详情失败";v.error(u)}finally{a.detailLoading=!1}}function I(){o.page=1,w()}function ee(){o.orderNo="",o.userId="",o.orderType=void 0,o.status=void 0,o.payType=void 0,o.createTimeStart=void 0,o.createTimeEnd=void 0,C.value=null,o.page=1,w()}function te(l){l?(o.createTimeStart=l[0],o.createTimeEnd=l[1]):(o.createTimeStart=void 0,o.createTimeEnd=void 0)}function ae(l){o.pageSize=l,o.page=1,w()}function re(l){o.page=l,w()}function oe(l){a.drawerVisible=!0,a.orderDetail=null,Z(l.id)}function le(l){a.refundFormData={orderId:l.id,orderNo:l.orderNo,payAmount:l.payAmount,refundAmount:l.payAmount,refundReason:""},a.refundDialogVisible=!0}async function ne(){if(A.value){try{await A.value.validate()}catch{return}a.refundFormLoading=!0;try{const l=await Ve({orderId:a.refundFormData.orderId,refundAmount:a.refundFormData.refundAmount,refundReason:a.refundFormData.refundReason});if(l.code===0)v.success("退款申请提交成功"),a.refundDialogVisible=!1,a.drawerVisible=!1,await w();else throw new Error(l.message||"退款申请失败")}catch(l){const e=l instanceof Error?l.message:"退款申请失败";v.error(e)}finally{a.refundFormLoading=!1}}}async function de(){a.exportLoading=!0;try{const l={page:1,pageSize:1e4};o.orderNo&&(l.orderNo=o.orderNo),o.userId&&(l.userId=Number(o.userId)),o.orderType!==void 0&&o.orderType!==""&&(l.orderType=Number(o.orderType)),o.status!==void 0&&o.status!==""&&(l.status=Number(o.status)),o.payType!==void 0&&o.payType!==""&&(l.payType=Number(o.payType)),o.createTimeStart&&(l.createTimeStart=o.createTimeStart),o.createTimeEnd&&(l.createTimeEnd=o.createTimeEnd);const e=await Se(l),u=e.data instanceof Blob?e.data:new Blob([e.data]),m=window.URL.createObjectURL(u),D=document.createElement("a");D.href=m,D.download=`订单列表_${new Date().toISOString().slice(0,10)}.xlsx`,document.body.appendChild(D),D.click(),document.body.removeChild(D),window.URL.revokeObjectURL(m),v.success("导出成功")}catch(l){const e=l instanceof Error?l.message:"导出失败";v.error(e)}finally{a.exportLoading=!1}}return ye(()=>{w()}),(l,e)=>{const u=f("el-icon"),m=f("el-button"),D=f("el-card"),L=f("el-input"),_=f("el-form-item"),se=f("el-date-picker"),G=f("el-form"),y=f("el-table-column"),S=f("el-tag"),ie=f("el-table"),ue=f("el-pagination"),p=f("el-descriptions-item"),h=f("el-descriptions"),pe=f("el-drawer"),me=f("el-input-number"),fe=f("el-dialog"),Y=q("loading"),ce=q("permission");return g(),T("div",xe,[t(D,{class:"page-header"},{default:r(()=>[s("div",Re,[e[15]||(e[15]=s("div",{class:"header-left"},[s("h2",{class:"page-title"},"订单管理"),s("span",{class:"page-description"},"管理订单列表,支持搜索、查看详情、退款处理、导出")],-1)),s("div",Ae,[t(m,{type:"success",onClick:de,loading:a.exportLoading},{default:r(()=>[t(u,null,{default:r(()=>[t(N(ge))]),_:1}),e[14]||(e[14]=i(" 导出Excel ",-1))]),_:1},8,["loading"])])])]),_:1}),t(D,{class:"search-card"},{default:r(()=>[t(G,{model:o,inline:""},{default:r(()=>[t(_,{label:"订单号"},{default:r(()=>[t(L,{modelValue:o.orderNo,"onUpdate:modelValue":e[0]||(e[0]=n=>o.orderNo=n),placeholder:"请输入订单号",clearable:"",onKeyup:j(I,["enter"])},null,8,["modelValue"])]),_:1}),t(_,{label:"用户ID"},{default:r(()=>[t(L,{modelValue:o.userId,"onUpdate:modelValue":e[1]||(e[1]=n=>o.userId=n),placeholder:"请输入用户ID",clearable:"",onKeyup:j(I,["enter"])},null,8,["modelValue"])]),_:1}),t(_,{label:"订单类型"},{default:r(()=>[t(N(U),{modelValue:o.orderType,"onUpdate:modelValue":e[2]||(e[2]=n=>o.orderType=n),type:"order_type",placeholder:"请选择类型",clearable:""},null,8,["modelValue"])]),_:1}),t(_,{label:"订单状态"},{default:r(()=>[t(N(U),{modelValue:o.status,"onUpdate:modelValue":e[3]||(e[3]=n=>o.status=n),type:"order_status",placeholder:"请选择状态",clearable:""},null,8,["modelValue"])]),_:1}),t(_,{label:"支付方式"},{default:r(()=>[t(N(U),{modelValue:o.payType,"onUpdate:modelValue":e[4]||(e[4]=n=>o.payType=n),type:"pay_type",placeholder:"请选择支付方式",clearable:""},null,8,["modelValue"])]),_:1}),t(_,{label:"创建时间"},{default:r(()=>[t(se,{modelValue:C.value,"onUpdate:modelValue":e[5]||(e[5]=n=>C.value=n),type:"daterange","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期","value-format":"YYYY-MM-DD",shortcuts:J,onChange:te},null,8,["modelValue"])]),_:1}),t(_,null,{default:r(()=>[t(m,{type:"primary",onClick:I},{default:r(()=>[t(u,null,{default:r(()=>[t(N(De))]),_:1}),e[16]||(e[16]=i(" 搜索 ",-1))]),_:1}),t(m,{onClick:ee},{default:r(()=>[t(u,null,{default:r(()=>[t(N(be))]),_:1}),e[17]||(e[17]=i(" 重置 ",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),F((g(),K(D,{class:"table-card"},{default:r(()=>[t(ie,{ref_key:"tableRef",ref:W,data:a.tableData,"row-key":"id",stripe:""},{default:r(()=>[t(y,{prop:"orderNo",label:"订单号",width:"180","show-overflow-tooltip":""}),t(y,{label:"用户信息","min-width":"150"},{default:r(({row:n})=>[s("div",Ce,[s("div",Ie,d(n.userNickname),1),s("div",Le,d(n.userPhone),1)])]),_:1}),t(y,{label:"订单类型",width:"100",align:"center"},{default:r(({row:n})=>[t(S,{type:P(n.orderType)},{default:r(()=>[i(d(n.orderTypeName||O(n.orderType)),1)]),_:2},1032,["type"])]),_:1}),t(y,{prop:"productName",label:"商品名称","min-width":"150","show-overflow-tooltip":""}),t(y,{prop:"amount",label:"订单金额",width:"100",align:"right"},{default:r(({row:n})=>[s("span",ke,"¥"+d(E(n.amount)),1)]),_:1}),t(y,{prop:"payAmount",label:"实付金额",width:"100",align:"right"},{default:r(({row:n})=>[s("span",Fe,"¥"+d(E(n.payAmount)),1)]),_:1}),t(y,{label:"支付方式",width:"100",align:"center"},{default:r(({row:n})=>[n.payType?(g(),T("span",Ue,d(n.payTypeName||B(n.payType)),1)):(g(),T("span",Pe,"-"))]),_:1}),t(y,{label:"状态",width:"100",align:"center"},{default:r(({row:n})=>[t(S,{type:z(n.status)},{default:r(()=>[i(d(n.statusName||M(n.status)),1)]),_:2},1032,["type"])]),_:1}),t(y,{prop:"payTime",label:"支付时间",width:"170",align:"center"},{default:r(({row:n})=>[i(d(n.payTime||"-"),1)]),_:1}),t(y,{prop:"createTime",label:"创建时间",width:"170",align:"center"}),t(y,{label:"操作",width:"100",fixed:"right",align:"center"},{default:r(({row:n})=>[t(m,{type:"primary",link:"",size:"small",onClick:et=>oe(n)},{default:r(()=>[t(u,null,{default:r(()=>[t(N(Te))]),_:1}),e[18]||(e[18]=i(" 详情 ",-1))]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"]),s("div",Oe,[t(ue,{"current-page":o.page,"onUpdate:currentPage":e[6]||(e[6]=n=>o.page=n),"page-size":o.pageSize,"onUpdate:pageSize":e[7]||(e[7]=n=>o.pageSize=n),"page-sizes":[10,20,50,100],total:a.total,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:ae,onCurrentChange:re},null,8,["current-page","page-size","total"])])]),_:1})),[[Y,a.loading]]),t(pe,{modelValue:a.drawerVisible,"onUpdate:modelValue":e[9]||(e[9]=n=>a.drawerVisible=n),title:"订单详情",size:"550px","close-on-click-modal":!0},{default:r(()=>[F((g(),T("div",ze,[a.orderDetail?(g(),T(Ne,{key:0},[s("div",Me,[e[19]||(e[19]=s("h4",{class:"section-title"},"订单信息",-1)),t(h,{column:2,border:""},{default:r(()=>[t(p,{label:"订单号",span:2},{default:r(()=>[i(d(a.orderDetail.orderNo),1)]),_:1}),t(p,{label:"订单类型"},{default:r(()=>[t(S,{type:P(a.orderDetail.orderType)},{default:r(()=>[i(d(a.orderDetail.orderTypeName||O(a.orderDetail.orderType)),1)]),_:1},8,["type"])]),_:1}),t(p,{label:"订单状态"},{default:r(()=>[t(S,{type:z(a.orderDetail.status)},{default:r(()=>[i(d(a.orderDetail.statusName||M(a.orderDetail.status)),1)]),_:1},8,["type"])]),_:1}),t(p,{label:"创建时间"},{default:r(()=>[i(d(a.orderDetail.createTime),1)]),_:1}),t(p,{label:"备注"},{default:r(()=>[i(d(a.orderDetail.remark||"-"),1)]),_:1})]),_:1})]),s("div",Be,[e[20]||(e[20]=s("h4",{class:"section-title"},"用户信息",-1)),t(h,{column:2,border:""},{default:r(()=>[t(p,{label:"用户ID"},{default:r(()=>[i(d(a.orderDetail.userId),1)]),_:1}),t(p,{label:"用户昵称"},{default:r(()=>[i(d(a.orderDetail.userNickname),1)]),_:1}),t(p,{label:"手机号",span:2},{default:r(()=>[i(d(a.orderDetail.userPhone),1)]),_:1})]),_:1})]),s("div",Ge,[e[21]||(e[21]=s("h4",{class:"section-title"},"商品信息",-1)),t(h,{column:2,border:""},{default:r(()=>[t(p,{label:"商品ID"},{default:r(()=>[i(d(a.orderDetail.productId),1)]),_:1}),t(p,{label:"商品名称"},{default:r(()=>[i(d(a.orderDetail.productName),1)]),_:1}),t(p,{label:"邀请码",span:2},{default:r(()=>[i(d(a.orderDetail.inviteCode||"-"),1)]),_:1})]),_:1})]),s("div",Ye,[e[22]||(e[22]=s("h4",{class:"section-title"},"支付信息",-1)),t(h,{column:2,border:""},{default:r(()=>[t(p,{label:"订单金额"},{default:r(()=>[s("span",$e,"¥"+d(E(a.orderDetail.amount)),1)]),_:1}),t(p,{label:"实付金额"},{default:r(()=>[s("span",qe,"¥"+d(E(a.orderDetail.payAmount)),1)]),_:1}),t(p,{label:"支付方式"},{default:r(()=>[i(d(a.orderDetail.payTypeName||(a.orderDetail.payType?B(a.orderDetail.payType):"-")),1)]),_:1}),t(p,{label:"支付时间"},{default:r(()=>[i(d(a.orderDetail.payTime||"-"),1)]),_:1}),t(p,{label:"交易流水号",span:2},{default:r(()=>[i(d(a.orderDetail.transactionId||"-"),1)]),_:1})]),_:1})]),a.orderDetail.refundAmount!==null?(g(),T("div",je,[e[23]||(e[23]=s("h4",{class:"section-title"},"退款信息",-1)),t(h,{column:2,border:""},{default:r(()=>[t(p,{label:"退款金额"},{default:r(()=>[s("span",Ke,"¥"+d(E(a.orderDetail.refundAmount)),1)]),_:1}),t(p,{label:"退款时间"},{default:r(()=>[i(d(a.orderDetail.refundTime||"-"),1)]),_:1}),t(p,{label:"退款原因",span:2},{default:r(()=>[i(d(a.orderDetail.refundReason||"-"),1)]),_:1})]),_:1})])):x("",!0),a.orderDetail.relatedRecord?(g(),T("div",He,[e[24]||(e[24]=s("h4",{class:"section-title"},"关联记录",-1)),t(h,{column:1,border:""},{default:r(()=>[t(p,{label:"关联数据"},{default:r(()=>[s("pre",Je,d(JSON.stringify(a.orderDetail.relatedRecord,null,2)),1)]),_:1})]),_:1})])):x("",!0),X(a.orderDetail.status)?(g(),T("div",We,[F((g(),K(m,{type:"danger",onClick:e[8]||(e[8]=n=>le(a.orderDetail))},{default:r(()=>[t(u,null,{default:r(()=>[t(N(Ee))]),_:1}),e[25]||(e[25]=i(" 申请退款 ",-1))]),_:1})),[[ce,"order:refund"]])])):x("",!0)],64)):x("",!0)])),[[Y,a.detailLoading]])]),_:1},8,["modelValue"]),t(fe,{modelValue:a.refundDialogVisible,"onUpdate:modelValue":e[13]||(e[13]=n=>a.refundDialogVisible=n),title:"申请退款",width:"450px","close-on-click-modal":!1},{footer:r(()=>[t(m,{onClick:e[12]||(e[12]=n=>a.refundDialogVisible=!1)},{default:r(()=>[...e[26]||(e[26]=[i("取消",-1)])]),_:1}),t(m,{type:"primary",loading:a.refundFormLoading,onClick:ne},{default:r(()=>[...e[27]||(e[27]=[i(" 确定退款 ",-1)])]),_:1},8,["loading"])]),default:r(()=>[t(G,{ref_key:"refundFormRef",ref:A,model:a.refundFormData,rules:Q,"label-width":"100px"},{default:r(()=>[t(_,{label:"订单号"},{default:r(()=>[s("span",null,d(a.refundFormData.orderNo),1)]),_:1}),t(_,{label:"实付金额"},{default:r(()=>[s("span",Qe,"¥"+d(E(a.refundFormData.payAmount)),1)]),_:1}),t(_,{label:"退款金额",prop:"refundAmount"},{default:r(()=>[t(me,{modelValue:a.refundFormData.refundAmount,"onUpdate:modelValue":e[10]||(e[10]=n=>a.refundFormData.refundAmount=n),min:.01,max:a.refundFormData.payAmount,precision:2,step:.01,style:{width:"200px"}},null,8,["modelValue","max"]),s("span",Xe,"最大可退 ¥"+d(E(a.refundFormData.payAmount)),1)]),_:1}),t(_,{label:"退款原因",prop:"refundReason"},{default:r(()=>[t(L,{modelValue:a.refundFormData.refundReason,"onUpdate:modelValue":e[11]||(e[11]=n=>a.refundFormData.refundReason=n),type:"textarea",rows:3,placeholder:"请输入退款原因",maxlength:"200","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"])])}}}),at=we(Ze,[["__scopeId","data-v-800dcb96"]]);export{at as default}; +import{O as R,d as _e,r as k,a as $,o as ye,g as f,B as q,c as T,k as g,e as t,C as F,w as r,b as s,t as i,l as N,N as ge,f as j,J as U,L as De,s as be,z as K,x as d,Q as Te,G as x,F as Ne,a1 as Ee,E as v,_ as we}from"./index-D3kwcp-p.js";function he(b){return R({url:"/admin/order/getList",method:"get",params:b})}function ve(b){return R({url:"/admin/order/getDetail",method:"get",params:{id:b}})}function Ve(b){return R({url:"/admin/order/refund",method:"post",data:b})}function Se(b){return R({url:"/admin/order/export",method:"get",params:b,responseType:"blob"})}const xe={class:"order-container"},Re={class:"header-content"},Ae={class:"header-right"},Ce={class:"user-info"},Ie={class:"nickname"},Le={class:"phone"},ke={class:"money-text"},Fe={class:"money-text pay-amount"},Ue={key:0},Pe={key:1,class:"text-muted"},Oe={class:"pagination-wrapper"},ze={class:"order-detail"},Me={class:"detail-section"},Be={class:"detail-section"},Ge={class:"detail-section"},Ye={class:"detail-section"},$e={class:"money-text"},qe={class:"money-text pay-amount"},je={key:0,class:"detail-section"},Ke={class:"money-text refund-amount"},He={key:1,class:"detail-section"},Je={class:"related-record"},We={key:2,class:"detail-actions"},Qe={class:"money-text pay-amount"},Xe={class:"form-tip"},Ze=_e({__name:"index",setup(b){const V={ASSESSMENT:1,PLANNER:2},c={PENDING:1,PAID:2,COMPLETED:3,REFUNDING:4,REFUNDED:5,CANCELLED:6},H={WECHAT:1},J=[{text:"最近一周",value:()=>{const l=new Date,e=new Date;return e.setTime(e.getTime()-3600*1e3*24*7),[e,l]}},{text:"最近一个月",value:()=>{const l=new Date,e=new Date;return e.setTime(e.getTime()-3600*1e3*24*30),[e,l]}},{text:"最近三个月",value:()=>{const l=new Date,e=new Date;return e.setTime(e.getTime()-3600*1e3*24*90),[e,l]}}],W=k(),A=k(),C=k(null),o=$({page:1,pageSize:10,orderNo:"",userId:"",orderType:void 0,status:void 0,payType:void 0,createTimeStart:void 0,createTimeEnd:void 0}),a=$({loading:!1,tableData:[],total:0,drawerVisible:!1,detailLoading:!1,orderDetail:null,refundDialogVisible:!1,refundFormData:{orderId:0,orderNo:"",payAmount:0,refundAmount:0,refundReason:""},refundFormLoading:!1,exportLoading:!1}),Q={refundAmount:[{required:!0,message:"请输入退款金额",trigger:"blur"},{validator:(l,e,u)=>{e<=0?u(new Error("退款金额必须大于0")):e>a.refundFormData.payAmount?u(new Error("退款金额不能超过实付金额")):u()},trigger:"blur"}],refundReason:[{required:!0,message:"请输入退款原因",trigger:"blur"},{min:2,max:200,message:"退款原因长度在2-200个字符之间",trigger:"blur"}]};function P(l){switch(l){case V.ASSESSMENT:return"primary";case V.PLANNER:return"success";default:return"primary"}}function O(l){switch(l){case V.ASSESSMENT:return"测评订单";case V.PLANNER:return"规划订单";default:return"未知"}}function z(l){switch(l){case c.PENDING:return"info";case c.PAID:return"primary";case c.COMPLETED:return"success";case c.REFUNDING:return"warning";case c.REFUNDED:return"danger";case c.CANCELLED:return"info";default:return"info"}}function M(l){switch(l){case c.PENDING:return"待支付";case c.PAID:return"已支付";case c.COMPLETED:return"已完成";case c.REFUNDING:return"退款中";case c.REFUNDED:return"已退款";case c.CANCELLED:return"已取消";default:return"未知"}}function B(l){switch(l){case H.WECHAT:return"微信支付";default:return"未知"}}function E(l){return l==null?"0.00":l.toFixed(2)}function X(l){return l===c.PAID||l===c.COMPLETED}async function w(){var l,e;a.loading=!0;try{const u={page:o.page,pageSize:o.pageSize};o.orderNo&&(u.orderNo=o.orderNo),o.userId&&(u.userId=Number(o.userId)),o.orderType!==void 0&&o.orderType!==""&&(u.orderType=Number(o.orderType)),o.status!==void 0&&o.status!==""&&(u.status=Number(o.status)),o.payType!==void 0&&o.payType!==""&&(u.payType=Number(o.payType)),o.createTimeStart&&(u.createTimeStart=o.createTimeStart),o.createTimeEnd&&(u.createTimeEnd=o.createTimeEnd);const m=await he(u);if(m.code===0)a.tableData=((l=m.data)==null?void 0:l.list)||[],a.total=((e=m.data)==null?void 0:e.total)||0;else throw new Error(m.message||"获取订单列表失败")}catch(u){const m=u instanceof Error?u.message:"获取订单列表失败";v.error(m)}finally{a.loading=!1}}async function Z(l){a.detailLoading=!0;try{const e=await ve(l);if(e.code===0)a.orderDetail=e.data;else throw new Error(e.message||"获取订单详情失败")}catch(e){const u=e instanceof Error?e.message:"获取订单详情失败";v.error(u)}finally{a.detailLoading=!1}}function I(){o.page=1,w()}function ee(){o.orderNo="",o.userId="",o.orderType=void 0,o.status=void 0,o.payType=void 0,o.createTimeStart=void 0,o.createTimeEnd=void 0,C.value=null,o.page=1,w()}function te(l){l?(o.createTimeStart=l[0],o.createTimeEnd=l[1]):(o.createTimeStart=void 0,o.createTimeEnd=void 0)}function ae(l){o.pageSize=l,o.page=1,w()}function re(l){o.page=l,w()}function oe(l){a.drawerVisible=!0,a.orderDetail=null,Z(l.id)}function le(l){a.refundFormData={orderId:l.id,orderNo:l.orderNo,payAmount:l.payAmount,refundAmount:l.payAmount,refundReason:""},a.refundDialogVisible=!0}async function ne(){if(A.value){try{await A.value.validate()}catch{return}a.refundFormLoading=!0;try{const l=await Ve({orderId:a.refundFormData.orderId,refundAmount:a.refundFormData.refundAmount,refundReason:a.refundFormData.refundReason});if(l.code===0)v.success("退款申请提交成功"),a.refundDialogVisible=!1,a.drawerVisible=!1,await w();else throw new Error(l.message||"退款申请失败")}catch(l){const e=l instanceof Error?l.message:"退款申请失败";v.error(e)}finally{a.refundFormLoading=!1}}}async function de(){a.exportLoading=!0;try{const l={page:1,pageSize:1e4};o.orderNo&&(l.orderNo=o.orderNo),o.userId&&(l.userId=Number(o.userId)),o.orderType!==void 0&&o.orderType!==""&&(l.orderType=Number(o.orderType)),o.status!==void 0&&o.status!==""&&(l.status=Number(o.status)),o.payType!==void 0&&o.payType!==""&&(l.payType=Number(o.payType)),o.createTimeStart&&(l.createTimeStart=o.createTimeStart),o.createTimeEnd&&(l.createTimeEnd=o.createTimeEnd);const e=await Se(l),u=e.data instanceof Blob?e.data:new Blob([e.data]),m=window.URL.createObjectURL(u),D=document.createElement("a");D.href=m,D.download=`订单列表_${new Date().toISOString().slice(0,10)}.xlsx`,document.body.appendChild(D),D.click(),document.body.removeChild(D),window.URL.revokeObjectURL(m),v.success("导出成功")}catch(l){const e=l instanceof Error?l.message:"导出失败";v.error(e)}finally{a.exportLoading=!1}}return ye(()=>{w()}),(l,e)=>{const u=f("el-icon"),m=f("el-button"),D=f("el-card"),L=f("el-input"),_=f("el-form-item"),se=f("el-date-picker"),G=f("el-form"),y=f("el-table-column"),S=f("el-tag"),ie=f("el-table"),ue=f("el-pagination"),p=f("el-descriptions-item"),h=f("el-descriptions"),pe=f("el-drawer"),me=f("el-input-number"),fe=f("el-dialog"),Y=q("loading"),ce=q("permission");return g(),T("div",xe,[t(D,{class:"page-header"},{default:r(()=>[s("div",Re,[e[15]||(e[15]=s("div",{class:"header-left"},[s("h2",{class:"page-title"},"订单管理"),s("span",{class:"page-description"},"管理订单列表,支持搜索、查看详情、退款处理、导出")],-1)),s("div",Ae,[t(m,{type:"success",onClick:de,loading:a.exportLoading},{default:r(()=>[t(u,null,{default:r(()=>[t(N(ge))]),_:1}),e[14]||(e[14]=i(" 导出Excel ",-1))]),_:1},8,["loading"])])])]),_:1}),t(D,{class:"search-card"},{default:r(()=>[t(G,{model:o,inline:""},{default:r(()=>[t(_,{label:"订单号"},{default:r(()=>[t(L,{modelValue:o.orderNo,"onUpdate:modelValue":e[0]||(e[0]=n=>o.orderNo=n),placeholder:"请输入订单号",clearable:"",onKeyup:j(I,["enter"])},null,8,["modelValue"])]),_:1}),t(_,{label:"用户ID"},{default:r(()=>[t(L,{modelValue:o.userId,"onUpdate:modelValue":e[1]||(e[1]=n=>o.userId=n),placeholder:"请输入用户ID",clearable:"",onKeyup:j(I,["enter"])},null,8,["modelValue"])]),_:1}),t(_,{label:"订单类型"},{default:r(()=>[t(N(U),{modelValue:o.orderType,"onUpdate:modelValue":e[2]||(e[2]=n=>o.orderType=n),type:"order_type",placeholder:"请选择类型",clearable:""},null,8,["modelValue"])]),_:1}),t(_,{label:"订单状态"},{default:r(()=>[t(N(U),{modelValue:o.status,"onUpdate:modelValue":e[3]||(e[3]=n=>o.status=n),type:"order_status",placeholder:"请选择状态",clearable:""},null,8,["modelValue"])]),_:1}),t(_,{label:"支付方式"},{default:r(()=>[t(N(U),{modelValue:o.payType,"onUpdate:modelValue":e[4]||(e[4]=n=>o.payType=n),type:"pay_type",placeholder:"请选择支付方式",clearable:""},null,8,["modelValue"])]),_:1}),t(_,{label:"创建时间"},{default:r(()=>[t(se,{modelValue:C.value,"onUpdate:modelValue":e[5]||(e[5]=n=>C.value=n),type:"daterange","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期","value-format":"YYYY-MM-DD",shortcuts:J,onChange:te},null,8,["modelValue"])]),_:1}),t(_,null,{default:r(()=>[t(m,{type:"primary",onClick:I},{default:r(()=>[t(u,null,{default:r(()=>[t(N(De))]),_:1}),e[16]||(e[16]=i(" 搜索 ",-1))]),_:1}),t(m,{onClick:ee},{default:r(()=>[t(u,null,{default:r(()=>[t(N(be))]),_:1}),e[17]||(e[17]=i(" 重置 ",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),F((g(),K(D,{class:"table-card"},{default:r(()=>[t(ie,{ref_key:"tableRef",ref:W,data:a.tableData,"row-key":"id",stripe:""},{default:r(()=>[t(y,{prop:"orderNo",label:"订单号",width:"180","show-overflow-tooltip":""}),t(y,{label:"用户信息","min-width":"150"},{default:r(({row:n})=>[s("div",Ce,[s("div",Ie,d(n.userNickname),1),s("div",Le,d(n.userPhone),1)])]),_:1}),t(y,{label:"订单类型",width:"100",align:"center"},{default:r(({row:n})=>[t(S,{type:P(n.orderType)},{default:r(()=>[i(d(n.orderTypeName||O(n.orderType)),1)]),_:2},1032,["type"])]),_:1}),t(y,{prop:"productName",label:"商品名称","min-width":"150","show-overflow-tooltip":""}),t(y,{prop:"amount",label:"订单金额",width:"100",align:"right"},{default:r(({row:n})=>[s("span",ke,"¥"+d(E(n.amount)),1)]),_:1}),t(y,{prop:"payAmount",label:"实付金额",width:"100",align:"right"},{default:r(({row:n})=>[s("span",Fe,"¥"+d(E(n.payAmount)),1)]),_:1}),t(y,{label:"支付方式",width:"100",align:"center"},{default:r(({row:n})=>[n.payType?(g(),T("span",Ue,d(n.payTypeName||B(n.payType)),1)):(g(),T("span",Pe,"-"))]),_:1}),t(y,{label:"状态",width:"100",align:"center"},{default:r(({row:n})=>[t(S,{type:z(n.status)},{default:r(()=>[i(d(n.statusName||M(n.status)),1)]),_:2},1032,["type"])]),_:1}),t(y,{prop:"payTime",label:"支付时间",width:"170",align:"center"},{default:r(({row:n})=>[i(d(n.payTime||"-"),1)]),_:1}),t(y,{prop:"createTime",label:"创建时间",width:"170",align:"center"}),t(y,{label:"操作",width:"100",fixed:"right",align:"center"},{default:r(({row:n})=>[t(m,{type:"primary",link:"",size:"small",onClick:et=>oe(n)},{default:r(()=>[t(u,null,{default:r(()=>[t(N(Te))]),_:1}),e[18]||(e[18]=i(" 详情 ",-1))]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"]),s("div",Oe,[t(ue,{"current-page":o.page,"onUpdate:currentPage":e[6]||(e[6]=n=>o.page=n),"page-size":o.pageSize,"onUpdate:pageSize":e[7]||(e[7]=n=>o.pageSize=n),"page-sizes":[10,20,50,100],total:a.total,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:ae,onCurrentChange:re},null,8,["current-page","page-size","total"])])]),_:1})),[[Y,a.loading]]),t(pe,{modelValue:a.drawerVisible,"onUpdate:modelValue":e[9]||(e[9]=n=>a.drawerVisible=n),title:"订单详情",size:"550px","close-on-click-modal":!0},{default:r(()=>[F((g(),T("div",ze,[a.orderDetail?(g(),T(Ne,{key:0},[s("div",Me,[e[19]||(e[19]=s("h4",{class:"section-title"},"订单信息",-1)),t(h,{column:2,border:""},{default:r(()=>[t(p,{label:"订单号",span:2},{default:r(()=>[i(d(a.orderDetail.orderNo),1)]),_:1}),t(p,{label:"订单类型"},{default:r(()=>[t(S,{type:P(a.orderDetail.orderType)},{default:r(()=>[i(d(a.orderDetail.orderTypeName||O(a.orderDetail.orderType)),1)]),_:1},8,["type"])]),_:1}),t(p,{label:"订单状态"},{default:r(()=>[t(S,{type:z(a.orderDetail.status)},{default:r(()=>[i(d(a.orderDetail.statusName||M(a.orderDetail.status)),1)]),_:1},8,["type"])]),_:1}),t(p,{label:"创建时间"},{default:r(()=>[i(d(a.orderDetail.createTime),1)]),_:1}),t(p,{label:"备注"},{default:r(()=>[i(d(a.orderDetail.remark||"-"),1)]),_:1})]),_:1})]),s("div",Be,[e[20]||(e[20]=s("h4",{class:"section-title"},"用户信息",-1)),t(h,{column:2,border:""},{default:r(()=>[t(p,{label:"用户ID"},{default:r(()=>[i(d(a.orderDetail.userId),1)]),_:1}),t(p,{label:"用户昵称"},{default:r(()=>[i(d(a.orderDetail.userNickname),1)]),_:1}),t(p,{label:"手机号",span:2},{default:r(()=>[i(d(a.orderDetail.userPhone),1)]),_:1})]),_:1})]),s("div",Ge,[e[21]||(e[21]=s("h4",{class:"section-title"},"商品信息",-1)),t(h,{column:2,border:""},{default:r(()=>[t(p,{label:"商品ID"},{default:r(()=>[i(d(a.orderDetail.productId),1)]),_:1}),t(p,{label:"商品名称"},{default:r(()=>[i(d(a.orderDetail.productName),1)]),_:1}),t(p,{label:"邀请码",span:2},{default:r(()=>[i(d(a.orderDetail.inviteCode||"-"),1)]),_:1})]),_:1})]),s("div",Ye,[e[22]||(e[22]=s("h4",{class:"section-title"},"支付信息",-1)),t(h,{column:2,border:""},{default:r(()=>[t(p,{label:"订单金额"},{default:r(()=>[s("span",$e,"¥"+d(E(a.orderDetail.amount)),1)]),_:1}),t(p,{label:"实付金额"},{default:r(()=>[s("span",qe,"¥"+d(E(a.orderDetail.payAmount)),1)]),_:1}),t(p,{label:"支付方式"},{default:r(()=>[i(d(a.orderDetail.payTypeName||(a.orderDetail.payType?B(a.orderDetail.payType):"-")),1)]),_:1}),t(p,{label:"支付时间"},{default:r(()=>[i(d(a.orderDetail.payTime||"-"),1)]),_:1}),t(p,{label:"交易流水号",span:2},{default:r(()=>[i(d(a.orderDetail.transactionId||"-"),1)]),_:1})]),_:1})]),a.orderDetail.refundAmount!==null?(g(),T("div",je,[e[23]||(e[23]=s("h4",{class:"section-title"},"退款信息",-1)),t(h,{column:2,border:""},{default:r(()=>[t(p,{label:"退款金额"},{default:r(()=>[s("span",Ke,"¥"+d(E(a.orderDetail.refundAmount)),1)]),_:1}),t(p,{label:"退款时间"},{default:r(()=>[i(d(a.orderDetail.refundTime||"-"),1)]),_:1}),t(p,{label:"退款原因",span:2},{default:r(()=>[i(d(a.orderDetail.refundReason||"-"),1)]),_:1})]),_:1})])):x("",!0),a.orderDetail.relatedRecord?(g(),T("div",He,[e[24]||(e[24]=s("h4",{class:"section-title"},"关联记录",-1)),t(h,{column:1,border:""},{default:r(()=>[t(p,{label:"关联数据"},{default:r(()=>[s("pre",Je,d(JSON.stringify(a.orderDetail.relatedRecord,null,2)),1)]),_:1})]),_:1})])):x("",!0),X(a.orderDetail.status)?(g(),T("div",We,[F((g(),K(m,{type:"danger",onClick:e[8]||(e[8]=n=>le(a.orderDetail))},{default:r(()=>[t(u,null,{default:r(()=>[t(N(Ee))]),_:1}),e[25]||(e[25]=i(" 申请退款 ",-1))]),_:1})),[[ce,"order:refund"]])])):x("",!0)],64)):x("",!0)])),[[Y,a.detailLoading]])]),_:1},8,["modelValue"]),t(fe,{modelValue:a.refundDialogVisible,"onUpdate:modelValue":e[13]||(e[13]=n=>a.refundDialogVisible=n),title:"申请退款",width:"450px","close-on-click-modal":!1},{footer:r(()=>[t(m,{onClick:e[12]||(e[12]=n=>a.refundDialogVisible=!1)},{default:r(()=>[...e[26]||(e[26]=[i("取消",-1)])]),_:1}),t(m,{type:"primary",loading:a.refundFormLoading,onClick:ne},{default:r(()=>[...e[27]||(e[27]=[i(" 确定退款 ",-1)])]),_:1},8,["loading"])]),default:r(()=>[t(G,{ref_key:"refundFormRef",ref:A,model:a.refundFormData,rules:Q,"label-width":"100px"},{default:r(()=>[t(_,{label:"订单号"},{default:r(()=>[s("span",null,d(a.refundFormData.orderNo),1)]),_:1}),t(_,{label:"实付金额"},{default:r(()=>[s("span",Qe,"¥"+d(E(a.refundFormData.payAmount)),1)]),_:1}),t(_,{label:"退款金额",prop:"refundAmount"},{default:r(()=>[t(me,{modelValue:a.refundFormData.refundAmount,"onUpdate:modelValue":e[10]||(e[10]=n=>a.refundFormData.refundAmount=n),min:.01,max:a.refundFormData.payAmount,precision:2,step:.01,style:{width:"200px"}},null,8,["modelValue","max"]),s("span",Xe,"最大可退 ¥"+d(E(a.refundFormData.payAmount)),1)]),_:1}),t(_,{label:"退款原因",prop:"refundReason"},{default:r(()=>[t(L,{modelValue:a.refundFormData.refundReason,"onUpdate:modelValue":e[11]||(e[11]=n=>a.refundFormData.refundReason=n),type:"textarea",rows:3,placeholder:"请输入退款原因",maxlength:"200","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"])])}}}),at=we(Ze,[["__scopeId","data-v-800dcb96"]]);export{at as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DVnmUJIC.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CztmOOZg.js similarity index 71% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DVnmUJIC.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CztmOOZg.js index 6f1b254..3dbc646 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DVnmUJIC.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CztmOOZg.js @@ -1 +1 @@ -import s from"./upload-DZwrV5XI.js";import p from"./miniprogram-BVUgdskI.js";import i from"./payment-73HGuqwu.js";import _ from"./user-nAVm2dIq.js";import{d,r as c,g as r,c as f,k as u,e,w as a,_ as b}from"./index-CIT-S3uf.js";import"./config-CkLmixH4.js";const g={class:"config-container"},C=d({__name:"index",setup(v){const t=c("miniprogram");return(x,n)=>{const o=r("el-tab-pane"),l=r("el-tabs");return u(),f("div",g,[e(l,{modelValue:t.value,"onUpdate:modelValue":n[0]||(n[0]=m=>t.value=m),type:"border-card"},{default:a(()=>[e(o,{label:"小程序配置",name:"miniprogram"},{default:a(()=>[e(p)]),_:1}),e(o,{label:"支付配置",name:"payment"},{default:a(()=>[e(i)]),_:1}),e(o,{label:"上传配置",name:"upload"},{default:a(()=>[e(s)]),_:1}),e(o,{label:"用户配置",name:"user"},{default:a(()=>[e(_)]),_:1})]),_:1},8,["modelValue"])])}}}),h=b(C,[["__scopeId","data-v-1c246f87"]]);export{h as default}; +import s from"./upload-BLAKmaAN.js";import p from"./miniprogram-CpZSa1SX.js";import i from"./payment-B-8MQX5q.js";import _ from"./user-VO5Bum0G.js";import{d,r as c,g as r,c as f,k as u,e,w as a,_ as b}from"./index-D3kwcp-p.js";import"./config-DjHLqwUe.js";const g={class:"config-container"},C=d({__name:"index",setup(v){const t=c("miniprogram");return(x,n)=>{const o=r("el-tab-pane"),l=r("el-tabs");return u(),f("div",g,[e(l,{modelValue:t.value,"onUpdate:modelValue":n[0]||(n[0]=m=>t.value=m),type:"border-card"},{default:a(()=>[e(o,{label:"小程序配置",name:"miniprogram"},{default:a(()=>[e(p)]),_:1}),e(o,{label:"支付配置",name:"payment"},{default:a(()=>[e(i)]),_:1}),e(o,{label:"上传配置",name:"upload"},{default:a(()=>[e(s)]),_:1}),e(o,{label:"用户配置",name:"user"},{default:a(()=>[e(_)]),_:1})]),_:1},8,["modelValue"])])}}}),h=b(C,[["__scopeId","data-v-1c246f87"]]);export{h as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-D--BNM2i.css b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-D--BNM2i.css new file mode 100644 index 0000000..c4e16b8 --- /dev/null +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-D--BNM2i.css @@ -0,0 +1 @@ +.record-container[data-v-05809c80]{padding:0}.page-header[data-v-05809c80]{margin-bottom:16px}.header-content[data-v-05809c80]{display:flex;justify-content:space-between;align-items:center}.header-left[data-v-05809c80]{display:flex;align-items:baseline;gap:16px}.page-title[data-v-05809c80]{margin:0;font-size:20px;font-weight:600;color:var(--text-primary, #303133)}.page-description[data-v-05809c80]{font-size:14px;color:var(--text-secondary, #909399)}.search-card[data-v-05809c80]{margin-bottom:16px}.search-card[data-v-05809c80] .el-card__body{padding-bottom:2px}.table-card[data-v-05809c80]{min-height:400px}.sub-text[data-v-05809c80]{font-size:12px;color:var(--text-secondary, #909399)}.score-desc[data-v-05809c80]{display:block;font-size:12px;color:var(--text-secondary, #909399);margin-top:4px}.pagination-wrapper[data-v-05809c80]{display:flex;justify-content:flex-end;margin-top:16px}.record-detail[data-v-05809c80]{padding:0 10px}.detail-section[data-v-05809c80]{margin-bottom:24px}.section-title[data-v-05809c80]{margin:0 0 16px;font-size:16px;font-weight:600;color:var(--text-primary, #303133);padding-bottom:8px;border-bottom:1px solid var(--border-lighter, #ebeef5)}[data-v-05809c80] .el-table{--el-table-border-color: var(--border-lighter, #ebeef5)}[data-v-05809c80] .el-table th.el-table__cell{background-color:var(--bg-light, #f5f7fa);font-weight:500}[data-v-05809c80] .el-descriptions{--el-descriptions-item-bordered-label-background: var(--bg-light, #f5f7fa)}.conclusion-cell[data-v-05809c80]{display:flex;align-items:flex-start;gap:8px}.conclusion-text[data-v-05809c80]{flex:1;word-break:break-all} diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CIT-S3uf.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-D3kwcp-p.js similarity index 99% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CIT-S3uf.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-D3kwcp-p.js index 69e0cd8..248502d 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CIT-S3uf.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-D3kwcp-p.js @@ -1,4 +1,4 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-DQHrJnaL.js","assets/assessment-LEpEOHMS.js","assets/index-Ci8RNrgG.css","assets/index-CkWYjUJ_.js","assets/index-fTMBvoRx.css","assets/index-ceuQTzI9.js","assets/index-BBJPQ1ve.css","assets/index-BlN5OXvU.js","assets/index-DMzuKeM-.css","assets/index-D8M2xb3-.js","assets/index-CSZcfOXe.css","assets/index-GdPxCa_v.js","assets/index-CMc-oE93.css","assets/index-BdFKGFJj.js","assets/index-ClkDAp5C.css","assets/index-CF2dEg0p.js","assets/index-B761KeWN.css","assets/index-DVv_QgHD.js","assets/content-BAVmFhF_.js","assets/index-D2XET00K.css","assets/index-DBKZzESX.js","assets/index-N0tkHC8d.css","assets/index-ChjWo2Vr.js","assets/index-DGak9yt_.css","assets/index-pkSWbB11.js","assets/index-DxfXLBiA.css","assets/index-CQfuTVuG.js","assets/distribution-DJBpxGTy.js","assets/index-4IGByOv7.css","assets/index-BUiCHAkf.js","assets/user-DRBZRWuL.js","assets/index-B_2uBwEX.css","assets/index-DhUc-zCV.js","assets/index-Bp3AH-wn.css","assets/index-BvcnoHYv.js","assets/index-CR4oQeWU.css","assets/index-DmIyHfCA.js","assets/planner-D2YI8Lf4.js","assets/index-By1BHJ9-.css","assets/index-CXu62BQM.js","assets/index-qB753_ya.css","assets/index-DgcuRZo4.js","assets/index-DMJ0sF-5.css","assets/index-G9qeWlW9.js","assets/index-DwIaOEzJ.css","assets/404-BHXP3Gho.js","assets/404-B_0feY5-.css","assets/index-Ibe6gSaz.js","assets/index-EKitILPx.css","assets/index-D1PUhCZg.js","assets/index-BjdUoq1A.css","assets/index-BspGp0FD.js","assets/index-CsWDax_F.css","assets/index-DVnmUJIC.js","assets/upload-DZwrV5XI.js","assets/config-CkLmixH4.js","assets/upload-B9dv7Twt.css","assets/miniprogram-BVUgdskI.js","assets/miniprogram-Cx_saQWT.css","assets/payment-73HGuqwu.js","assets/payment-BBmacv92.css","assets/user-nAVm2dIq.js","assets/user-Cd9REQ_p.css","assets/index-DvWcKdcc.css","assets/index-Dn27sYYF.js","assets/department-D285ZFgf.js","assets/index-CCPDyVu2.css","assets/index-D2Tzq3iI.js","assets/index-DPEhPXK0.css","assets/index-BPvyvZlt.js","assets/index-WaU-bqEL.css","assets/index-CluIevU3.js","assets/index-BceyEcBq.css","assets/index-ufppKyHG.js","assets/permission-Rx3_ZX_n.js","assets/index-DJrogOSb.css","assets/index-C_dKwPCW.js","assets/role-9_FTeI72.js","assets/index-Ciogk2bA.css","assets/index-eKUZRiBU.js","assets/index-DO-nMNKv.css"])))=>i.map(i=>d[i]); +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-C24USYiG.js","assets/assessment-DhwT9plj.js","assets/index-Ci8RNrgG.css","assets/index-DNXV6X6p.js","assets/index-fTMBvoRx.css","assets/index-I-afpL1b.js","assets/index-BBJPQ1ve.css","assets/index-DpZb6rsk.js","assets/index-D--BNM2i.css","assets/index-C6mDBC4u.js","assets/index-CSZcfOXe.css","assets/index-_qdpE8Gi.js","assets/index-CMc-oE93.css","assets/index-BXheXTxI.js","assets/index-ClkDAp5C.css","assets/index-C65AeBnh.js","assets/index-B761KeWN.css","assets/index-Bo7RVAja.js","assets/content-C8FfR8xt.js","assets/index-D2XET00K.css","assets/index-CHgtMrgw.js","assets/index-N0tkHC8d.css","assets/index-CQbjlZ5O.js","assets/index-DGak9yt_.css","assets/index-94U6xpoG.js","assets/index-DxfXLBiA.css","assets/index-DtMJMMdz.js","assets/distribution-BAkpY53N.js","assets/index-4IGByOv7.css","assets/index-kGU0g60M.js","assets/user-DuGoK7rK.js","assets/index-B_2uBwEX.css","assets/index-BDGvnWwC.js","assets/index-Bp3AH-wn.css","assets/index-CYRJS58W.js","assets/index-CR4oQeWU.css","assets/index-jRExHCZ6.js","assets/planner-DHXxjiA2.js","assets/index-By1BHJ9-.css","assets/index-CVrigPeB.js","assets/index-qB753_ya.css","assets/index-C56HcTE5.js","assets/index-DMJ0sF-5.css","assets/index-BBe25F04.js","assets/index-DwIaOEzJ.css","assets/404-D_zOFE_n.js","assets/404-B_0feY5-.css","assets/index-CR0JULB-.js","assets/index-EKitILPx.css","assets/index-BXX74AoH.js","assets/index-BjdUoq1A.css","assets/index-DCzUpbnT.js","assets/index-CsWDax_F.css","assets/index-CztmOOZg.js","assets/upload-BLAKmaAN.js","assets/config-DjHLqwUe.js","assets/upload-B9dv7Twt.css","assets/miniprogram-CpZSa1SX.js","assets/miniprogram-Cx_saQWT.css","assets/payment-B-8MQX5q.js","assets/payment-BBmacv92.css","assets/user-VO5Bum0G.js","assets/user-Cd9REQ_p.css","assets/index-DvWcKdcc.css","assets/index-ceWhMzBo.js","assets/department-DP69qZhR.js","assets/index-CCPDyVu2.css","assets/index-Dp2isbms.js","assets/index-DPEhPXK0.css","assets/index-Dq8V6pbt.js","assets/index-WaU-bqEL.css","assets/index-CTl0ngYa.js","assets/index-BceyEcBq.css","assets/index-BWmhfX7j.js","assets/permission-CG5y9yNg.js","assets/index-DJrogOSb.css","assets/index-BRKpij3O.js","assets/role-CQMzC95A.js","assets/index-Ciogk2bA.css","assets/index-Bg9OwzIE.js","assets/index-DO-nMNKv.css"])))=>i.map(i=>d[i]); (function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))r(o);new MutationObserver(o=>{for(const a of o)if(a.type==="childList")for(const s of a.addedNodes)s.tagName==="LINK"&&s.rel==="modulepreload"&&r(s)}).observe(document,{childList:!0,subtree:!0});function n(o){const a={};return o.integrity&&(a.integrity=o.integrity),o.referrerPolicy&&(a.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?a.credentials="include":o.crossOrigin==="anonymous"?a.credentials="omit":a.credentials="same-origin",a}function r(o){if(o.ep)return;o.ep=!0;const a=n(o);fetch(o.href,a)}})();/** * @vue/shared v3.5.26 * (c) 2018-present Yuxi (Evan) You and Vue contributors @@ -68,7 +68,7 @@ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-DQHrJnaL. `)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...n){const r=new this(t);return n.forEach(o=>r.set(o)),r}static accessor(t){const r=(this[VH]=this[VH]={accessors:{}}).accessors,o=this.prototype;function a(s){const i=Tm(s);r[i]||(qJe(o,s),r[i]=!0)}return We.isArray(t)?t.forEach(a):a(t),this}};Ka.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);We.reduceDescriptors(Ka.prototype,({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(r){this[n]=r}}});We.freezeMethods(Ka);function fS(e,t){const n=this||v4,r=t||n,o=Ka.from(r.headers);let a=r.data;return We.forEach(e,function(i){a=i.call(n,a,o.normalize(),t?t.status:void 0)}),o.normalize(),a}function Fie(e){return!!(e&&e.__CANCEL__)}function Jv(e,t,n){Cn.call(this,e??"canceled",Cn.ERR_CANCELED,t,n),this.name="CanceledError"}We.inherits(Jv,Cn,{__CANCEL__:!0});function Lie(e,t,n){const r=n.config.validateStatus;!n.status||!r||r(n.status)?e(n):t(new Cn("Request failed with status code "+n.status,[Cn.ERR_BAD_REQUEST,Cn.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}function GJe(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function YJe(e,t){e=e||10;const n=new Array(e),r=new Array(e);let o=0,a=0,s;return t=t!==void 0?t:1e3,function(l){const u=Date.now(),c=r[a];s||(s=u),n[o]=l,r[o]=u;let d=a,f=0;for(;d!==o;)f+=n[d++],d=d%e;if(o=(o+1)%e,o===a&&(a=(a+1)%e),u-s{n=c,o=null,a&&(clearTimeout(a),a=null),e(...u)};return[(...u)=>{const c=Date.now(),d=c-n;d>=r?s(u,c):(o=u,a||(a=setTimeout(()=>{a=null,s(o)},r-d)))},()=>o&&s(o)]}const K8=(e,t,n=3)=>{let r=0;const o=YJe(50,250);return XJe(a=>{const s=a.loaded,i=a.lengthComputable?a.total:void 0,l=s-r,u=o(l),c=s<=i;r=s;const d={loaded:s,total:i,progress:i?s/i:void 0,bytes:l,rate:u||void 0,estimated:u&&i&&c?(i-s)/u:void 0,event:a,lengthComputable:i!=null,[t?"download":"upload"]:!0};e(d)},n)},zH=(e,t)=>{const n=e!=null;return[r=>t[0]({lengthComputable:n,total:e,loaded:r}),t[1]]},HH=e=>(...t)=>We.asap(()=>e(...t)),JJe=la.hasStandardBrowserEnv?((e,t)=>n=>(n=new URL(n,la.origin),e.protocol===n.protocol&&e.host===n.host&&(t||e.port===n.port)))(new URL(la.origin),la.navigator&&/(msie|trident)/i.test(la.navigator.userAgent)):()=>!0,ZJe=la.hasStandardBrowserEnv?{write(e,t,n,r,o,a,s){if(typeof document>"u")return;const i=[`${e}=${encodeURIComponent(t)}`];We.isNumber(n)&&i.push(`expires=${new Date(n).toUTCString()}`),We.isString(r)&&i.push(`path=${r}`),We.isString(o)&&i.push(`domain=${o}`),a===!0&&i.push("secure"),We.isString(s)&&i.push(`SameSite=${s}`),document.cookie=i.join("; ")},read(e){if(typeof document>"u")return null;const t=document.cookie.match(new RegExp("(?:^|; )"+e+"=([^;]*)"));return t?decodeURIComponent(t[1]):null},remove(e){this.write(e,"",Date.now()-864e5,"/")}}:{write(){},read(){return null},remove(){}};function QJe(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function eZe(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function $ie(e,t,n){let r=!QJe(t);return e&&(r||n==!1)?eZe(e,t):t}const jH=e=>e instanceof Ka?{...e}:e;function Cp(e,t){t=t||{};const n={};function r(u,c,d,f){return We.isPlainObject(u)&&We.isPlainObject(c)?We.merge.call({caseless:f},u,c):We.isPlainObject(c)?We.merge({},c):We.isArray(c)?c.slice():c}function o(u,c,d,f){if(We.isUndefined(c)){if(!We.isUndefined(u))return r(void 0,u,d,f)}else return r(u,c,d,f)}function a(u,c){if(!We.isUndefined(c))return r(void 0,c)}function s(u,c){if(We.isUndefined(c)){if(!We.isUndefined(u))return r(void 0,u)}else return r(void 0,c)}function i(u,c,d){if(d in t)return r(u,c);if(d in e)return r(void 0,u)}const l={url:a,method:a,data:a,baseURL:s,transformRequest:s,transformResponse:s,paramsSerializer:s,timeout:s,timeoutMessage:s,withCredentials:s,withXSRFToken:s,adapter:s,responseType:s,xsrfCookieName:s,xsrfHeaderName:s,onUploadProgress:s,onDownloadProgress:s,decompress:s,maxContentLength:s,maxBodyLength:s,beforeRedirect:s,transport:s,httpAgent:s,httpsAgent:s,cancelToken:s,socketPath:s,responseEncoding:s,validateStatus:i,headers:(u,c,d)=>o(jH(u),jH(c),d,!0)};return We.forEach(Object.keys({...e,...t}),function(c){const d=l[c]||o,f=d(e[c],t[c],c);We.isUndefined(f)&&d!==i||(n[c]=f)}),n}const Vie=e=>{const t=Cp({},e);let{data:n,withXSRFToken:r,xsrfHeaderName:o,xsrfCookieName:a,headers:s,auth:i}=t;if(t.headers=s=Ka.from(s),t.url=Rie($ie(t.baseURL,t.url,t.allowAbsoluteUrls),e.params,e.paramsSerializer),i&&s.set("Authorization","Basic "+btoa((i.username||"")+":"+(i.password?unescape(encodeURIComponent(i.password)):""))),We.isFormData(n)){if(la.hasStandardBrowserEnv||la.hasStandardBrowserWebWorkerEnv)s.setContentType(void 0);else if(We.isFunction(n.getHeaders)){const l=n.getHeaders(),u=["content-type","content-length"];Object.entries(l).forEach(([c,d])=>{u.includes(c.toLowerCase())&&s.set(c,d)})}}if(la.hasStandardBrowserEnv&&(r&&We.isFunction(r)&&(r=r(t)),r||r!==!1&&JJe(t.url))){const l=o&&a&&ZJe.read(a);l&&s.set(o,l)}return t},tZe=typeof XMLHttpRequest<"u",nZe=tZe&&function(e){return new Promise(function(n,r){const o=Vie(e);let a=o.data;const s=Ka.from(o.headers).normalize();let{responseType:i,onUploadProgress:l,onDownloadProgress:u}=o,c,d,f,p,h;function v(){p&&p(),h&&h(),o.cancelToken&&o.cancelToken.unsubscribe(c),o.signal&&o.signal.removeEventListener("abort",c)}let g=new XMLHttpRequest;g.open(o.method.toUpperCase(),o.url,!0),g.timeout=o.timeout;function y(){if(!g)return;const w=Ka.from("getAllResponseHeaders"in g&&g.getAllResponseHeaders()),_={data:!i||i==="text"||i==="json"?g.responseText:g.response,status:g.status,statusText:g.statusText,headers:w,config:e,request:g};Lie(function(E){n(E),v()},function(E){r(E),v()},_),g=null}"onloadend"in g?g.onloadend=y:g.onreadystatechange=function(){!g||g.readyState!==4||g.status===0&&!(g.responseURL&&g.responseURL.indexOf("file:")===0)||setTimeout(y)},g.onabort=function(){g&&(r(new Cn("Request aborted",Cn.ECONNABORTED,e,g)),g=null)},g.onerror=function(C){const _=C&&C.message?C.message:"Network Error",S=new Cn(_,Cn.ERR_NETWORK,e,g);S.event=C||null,r(S),g=null},g.ontimeout=function(){let C=o.timeout?"timeout of "+o.timeout+"ms exceeded":"timeout exceeded";const _=o.transitional||Iie;o.timeoutErrorMessage&&(C=o.timeoutErrorMessage),r(new Cn(C,_.clarifyTimeoutError?Cn.ETIMEDOUT:Cn.ECONNABORTED,e,g)),g=null},a===void 0&&s.setContentType(null),"setRequestHeader"in g&&We.forEach(s.toJSON(),function(C,_){g.setRequestHeader(_,C)}),We.isUndefined(o.withCredentials)||(g.withCredentials=!!o.withCredentials),i&&i!=="json"&&(g.responseType=o.responseType),u&&([f,h]=K8(u,!0),g.addEventListener("progress",f)),l&&g.upload&&([d,p]=K8(l),g.upload.addEventListener("progress",d),g.upload.addEventListener("loadend",p)),(o.cancelToken||o.signal)&&(c=w=>{g&&(r(!w||w.type?new Jv(null,e,g):w),g.abort(),g=null)},o.cancelToken&&o.cancelToken.subscribe(c),o.signal&&(o.signal.aborted?c():o.signal.addEventListener("abort",c)));const b=GJe(o.url);if(b&&la.protocols.indexOf(b)===-1){r(new Cn("Unsupported protocol "+b+":",Cn.ERR_BAD_REQUEST,e));return}g.send(a||null)})},rZe=(e,t)=>{const{length:n}=e=e?e.filter(Boolean):[];if(t||n){let r=new AbortController,o;const a=function(u){if(!o){o=!0,i();const c=u instanceof Error?u:this.reason;r.abort(c instanceof Cn?c:new Jv(c instanceof Error?c.message:c))}};let s=t&&setTimeout(()=>{s=null,a(new Cn(`timeout ${t} of ms exceeded`,Cn.ETIMEDOUT))},t);const i=()=>{e&&(s&&clearTimeout(s),s=null,e.forEach(u=>{u.unsubscribe?u.unsubscribe(a):u.removeEventListener("abort",a)}),e=null)};e.forEach(u=>u.addEventListener("abort",a));const{signal:l}=r;return l.unsubscribe=()=>We.asap(i),l}},oZe=function*(e,t){let n=e.byteLength;if(n{const o=aZe(e,t);let a=0,s,i=l=>{s||(s=!0,r&&r(l))};return new ReadableStream({async pull(l){try{const{done:u,value:c}=await o.next();if(u){i(),l.close();return}let d=c.byteLength;if(n){let f=a+=d;n(f)}l.enqueue(new Uint8Array(c))}catch(u){throw i(u),u}},cancel(l){return i(l),o.return()}},{highWaterMark:2})},UH=64*1024,{isFunction:Ib}=We,iZe=(({Request:e,Response:t})=>({Request:e,Response:t}))(We.global),{ReadableStream:KH,TextEncoder:qH}=We.global,GH=(e,...t)=>{try{return!!e(...t)}catch{return!1}},lZe=e=>{e=We.merge.call({skipUndefined:!0},iZe,e);const{fetch:t,Request:n,Response:r}=e,o=t?Ib(t):typeof fetch=="function",a=Ib(n),s=Ib(r);if(!o)return!1;const i=o&&Ib(KH),l=o&&(typeof qH=="function"?(h=>v=>h.encode(v))(new qH):async h=>new Uint8Array(await new n(h).arrayBuffer())),u=a&&i&&GH(()=>{let h=!1;const v=new n(la.origin,{body:new KH,method:"POST",get duplex(){return h=!0,"half"}}).headers.has("Content-Type");return h&&!v}),c=s&&i&&GH(()=>We.isReadableStream(new r("").body)),d={stream:c&&(h=>h.body)};o&&["text","arrayBuffer","blob","formData","stream"].forEach(h=>{!d[h]&&(d[h]=(v,g)=>{let y=v&&v[h];if(y)return y.call(v);throw new Cn(`Response type '${h}' is not supported`,Cn.ERR_NOT_SUPPORT,g)})});const f=async h=>{if(h==null)return 0;if(We.isBlob(h))return h.size;if(We.isSpecCompliantForm(h))return(await new n(la.origin,{method:"POST",body:h}).arrayBuffer()).byteLength;if(We.isArrayBufferView(h)||We.isArrayBuffer(h))return h.byteLength;if(We.isURLSearchParams(h)&&(h=h+""),We.isString(h))return(await l(h)).byteLength},p=async(h,v)=>{const g=We.toFiniteNumber(h.getContentLength());return g??f(v)};return async h=>{let{url:v,method:g,data:y,signal:b,cancelToken:w,timeout:C,onDownloadProgress:_,onUploadProgress:S,responseType:E,headers:x,withCredentials:O="same-origin",fetchOptions:D}=Vie(h),R=t||fetch;E=E?(E+"").toLowerCase():"text";let T=rZe([b,w&&w.toAbortSignal()],C),N=null;const W=T&&T.unsubscribe&&(()=>{T.unsubscribe()});let G;try{if(S&&u&&g!=="get"&&g!=="head"&&(G=await p(x,y))!==0){let F=new n(v,{method:"POST",body:y,duplex:"half"}),V;if(We.isFormData(y)&&(V=F.headers.get("content-type"))&&x.setContentType(V),F.body){const[L,X]=zH(G,K8(HH(S)));y=WH(F.body,UH,L,X)}}We.isString(O)||(O=O?"include":"omit");const q=a&&"credentials"in n.prototype,B={...D,signal:T,method:g.toUpperCase(),headers:x.normalize().toJSON(),body:y,duplex:"half",credentials:q?O:void 0};N=a&&new n(v,B);let M=await(a?R(N,D):R(v,B));const z=c&&(E==="stream"||E==="response");if(c&&(_||z&&W)){const F={};["status","statusText","headers"].forEach(J=>{F[J]=M[J]});const V=We.toFiniteNumber(M.headers.get("content-length")),[L,X]=_&&zH(V,K8(HH(_),!0))||[];M=new r(WH(M.body,UH,L,()=>{X&&X(),W&&W()}),F)}E=E||"text";let j=await d[We.findKey(d,E)||"text"](M,h);return!z&&W&&W(),await new Promise((F,V)=>{Lie(F,V,{data:j,headers:Ka.from(M.headers),status:M.status,statusText:M.statusText,config:h,request:N})})}catch(q){throw W&&W(),q&&q.name==="TypeError"&&/Load failed|fetch/i.test(q.message)?Object.assign(new Cn("Network Error",Cn.ERR_NETWORK,h,N),{cause:q.cause||q}):Cn.from(q,q&&q.code,h,N)}}},uZe=new Map,zie=e=>{let t=e&&e.env||{};const{fetch:n,Request:r,Response:o}=t,a=[r,o,n];let s=a.length,i=s,l,u,c=uZe;for(;i--;)l=a[i],u=c.get(l),u===void 0&&c.set(l,u=i?new Map:lZe(t)),c=u;return u};zie();const mR={http:xJe,xhr:nZe,fetch:{get:zie}};We.forEach(mR,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const YH=e=>`- ${e}`,cZe=e=>We.isFunction(e)||e===null||e===!1;function dZe(e,t){e=We.isArray(e)?e:[e];const{length:n}=e;let r,o;const a={};for(let s=0;s`adapter ${l} `+(u===!1?"is not supported by the environment":"is not available in the build"));let i=n?s.length>1?`since : `+s.map(YH).join(` `):" "+YH(s[0]):"as no adapter specified";throw new Cn("There is no suitable adapter to dispatch the request "+i,"ERR_NOT_SUPPORT")}return o}const Hie={getAdapter:dZe,adapters:mR};function pS(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new Jv(null,e)}function XH(e){return pS(e),e.headers=Ka.from(e.headers),e.data=fS.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),Hie.getAdapter(e.adapter||v4.adapter,e)(e).then(function(r){return pS(e),r.data=fS.call(e,e.transformResponse,r),r.headers=Ka.from(r.headers),r},function(r){return Fie(r)||(pS(e),r&&r.response&&(r.response.data=fS.call(e,e.transformResponse,r.response),r.response.headers=Ka.from(r.response.headers))),Promise.reject(r)})}const jie="1.13.2",u9={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{u9[e]=function(r){return typeof r===e||"a"+(t<1?"n ":" ")+e}});const JH={};u9.transitional=function(t,n,r){function o(a,s){return"[Axios v"+jie+"] Transitional option '"+a+"'"+s+(r?". "+r:"")}return(a,s,i)=>{if(t===!1)throw new Cn(o(s," has been removed"+(n?" in "+n:"")),Cn.ERR_DEPRECATED);return n&&!JH[s]&&(JH[s]=!0,console.warn(o(s," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(a,s,i):!0}};u9.spelling=function(t){return(n,r)=>(console.warn(`${r} is likely a misspelling of ${t}`),!0)};function fZe(e,t,n){if(typeof e!="object")throw new Cn("options must be an object",Cn.ERR_BAD_OPTION_VALUE);const r=Object.keys(e);let o=r.length;for(;o-- >0;){const a=r[o],s=t[a];if(s){const i=e[a],l=i===void 0||s(i,a,e);if(l!==!0)throw new Cn("option "+a+" must be "+l,Cn.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new Cn("Unknown option "+a,Cn.ERR_BAD_OPTION)}}const S3={assertOptions:fZe,validators:u9},Gi=S3.validators;let Hf=class{constructor(t){this.defaults=t||{},this.interceptors={request:new $H,response:new $H}}async request(t,n){try{return await this._request(t,n)}catch(r){if(r instanceof Error){let o={};Error.captureStackTrace?Error.captureStackTrace(o):o=new Error;const a=o.stack?o.stack.replace(/^.+\n/,""):"";try{r.stack?a&&!String(r.stack).endsWith(a.replace(/^.+\n.+\n/,""))&&(r.stack+=` -`+a):r.stack=a}catch{}}throw r}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=Cp(this.defaults,n);const{transitional:r,paramsSerializer:o,headers:a}=n;r!==void 0&&S3.assertOptions(r,{silentJSONParsing:Gi.transitional(Gi.boolean),forcedJSONParsing:Gi.transitional(Gi.boolean),clarifyTimeoutError:Gi.transitional(Gi.boolean)},!1),o!=null&&(We.isFunction(o)?n.paramsSerializer={serialize:o}:S3.assertOptions(o,{encode:Gi.function,serialize:Gi.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),S3.assertOptions(n,{baseUrl:Gi.spelling("baseURL"),withXsrfToken:Gi.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let s=a&&We.merge(a.common,a[n.method]);a&&We.forEach(["delete","get","head","post","put","patch","common"],h=>{delete a[h]}),n.headers=Ka.concat(s,a);const i=[];let l=!0;this.interceptors.request.forEach(function(v){typeof v.runWhen=="function"&&v.runWhen(n)===!1||(l=l&&v.synchronous,i.unshift(v.fulfilled,v.rejected))});const u=[];this.interceptors.response.forEach(function(v){u.push(v.fulfilled,v.rejected)});let c,d=0,f;if(!l){const h=[XH.bind(this),void 0];for(h.unshift(...i),h.push(...u),f=h.length,c=Promise.resolve(n);d{if(!r._listeners)return;let a=r._listeners.length;for(;a-- >0;)r._listeners[a](o);r._listeners=null}),this.promise.then=o=>{let a;const s=new Promise(i=>{r.subscribe(i),a=i}).then(o);return s.cancel=function(){r.unsubscribe(a)},s},t(function(a,s,i){r.reason||(r.reason=new Jv(a,s,i),n(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const n=this._listeners.indexOf(t);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const t=new AbortController,n=r=>{t.abort(r)};return this.subscribe(n),t.signal.unsubscribe=()=>this.unsubscribe(n),t.signal}static source(){let t;return{token:new Wie(function(o){t=o}),cancel:t}}};function hZe(e){return function(n){return e.apply(null,n)}}function vZe(e){return We.isObject(e)&&e.isAxiosError===!0}const uO={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(uO).forEach(([e,t])=>{uO[t]=e});function Uie(e){const t=new Hf(e),n=_ie(Hf.prototype.request,t);return We.extend(n,Hf.prototype,t,{allOwnKeys:!0}),We.extend(n,t,null,{allOwnKeys:!0}),n.create=function(o){return Uie(Cp(e,o))},n}const Gr=Uie(v4);Gr.Axios=Hf;Gr.CanceledError=Jv;Gr.CancelToken=pZe;Gr.isCancel=Fie;Gr.VERSION=jie;Gr.toFormData=l9;Gr.AxiosError=Cn;Gr.Cancel=Gr.CanceledError;Gr.all=function(t){return Promise.all(t)};Gr.spread=hZe;Gr.isAxiosError=vZe;Gr.mergeConfig=Cp;Gr.AxiosHeaders=Ka;Gr.formToJSON=e=>Nie(We.isHTMLForm(e)?new FormData(e):e);Gr.getAdapter=Hie.getAdapter;Gr.HttpStatusCode=uO;Gr.default=Gr;const{Axios:KSt,AxiosError:qSt,CanceledError:GSt,isCancel:YSt,CancelToken:XSt,VERSION:JSt,all:ZSt,Cancel:QSt,isAxiosError:eEt,spread:tEt,toFormData:nEt,AxiosHeaders:rEt,HttpStatusCode:oEt,formToJSON:aEt,getAdapter:sEt,mergeConfig:iEt}=Gr,mZe=["/admin/auth/captcha","/admin/auth/login","/admin/auth/refresh"];let R2=!1,Nb=null,E3=[];const ks=Gr.create({baseURL:"/api",timeout:3e4});function Kie(e){return e?mZe.some(t=>e.includes(t)):!1}async function gZe(){const e=o9();if(!e)return!1;try{const{refreshToken:t}=await vn(async()=>{const{refreshToken:r}=await Promise.resolve().then(()=>_Ze);return{refreshToken:r}},void 0),n=await t(e);if(n.code===0&&n.data){const{accessToken:r,refreshToken:o,expiresIn:a}=n.data;return w3(r,o,a),!0}return!1}catch(t){return console.error("Token refresh failed:",t),!1}}async function qie(){if(R2)return Nb;R2=!0,Nb=gZe();try{const e=await Nb;return e?E3.forEach(({config:t,resolve:n})=>{t.headers.Authorization=`Bearer ${d4()}`,n(ks(t))}):E3.forEach(({reject:t})=>{t(new Error("Token refresh failed"))}),e}finally{R2=!1,Nb=null,E3=[]}}async function yZe(e){const t=e.config;return t._retry||Kie(t.url)?Promise.reject(e):o9()?(t._retry=!0,R2?new Promise((o,a)=>{E3.push({config:t,resolve:o,reject:a})}):await qie()?(t.headers.Authorization=`Bearer ${d4()}`,ks(t)):(B2(),Is.error("登录已过期,请重新登录"),Gc.push("/login"),Promise.reject(e))):(B2(),Gc.push("/login"),Promise.reject(e))}ks.interceptors.request.use(async e=>{if(Kie(e.url))return e;$Xe()&&!R2&&o9()&&await qie();const t=d4();return t&&(e.headers.Authorization=`Bearer ${t}`),e},e=>(console.error("请求错误:",e),Promise.reject(e)));ks.interceptors.response.use(e=>{const t=e.data;return t.code===0?t:(Is.error(t.message||"请求失败"),Promise.reject(new Error(t.message||"请求失败")))},async e=>{if(console.error("响应错误:",e),e.response){const{status:t,data:n}=e.response;switch(t){case 401:return yZe(e);case 403:Is.error("没有操作权限");break;case 404:Is.error("请求的资源不存在");break;case 500:Is.error((n==null?void 0:n.message)||"服务器内部错误");break;default:Is.error((n==null?void 0:n.message)||"请求失败")}}else Is.error("网络连接失败");return Promise.reject(e)});function ts(e){return ks(e)}function bZe(){return ts({url:"/admin/auth/captcha",method:"post"})}function Gie(e){return ts({url:"/admin/auth/login",method:"post",data:e})}function wZe(e){return ts({url:"/admin/auth/refresh",method:"post",data:{refreshToken:e}})}function Yie(){return ts({url:"/admin/auth/info",method:"get"})}function CZe(e){return ts({url:"/admin/auth/password",method:"put",data:e})}function Xie(){return ts({url:"/admin/auth/logout",method:"post"})}function Jie(){return ts({url:"/admin/auth/revoke-all",method:"post"})}const _Ze=Object.freeze(Object.defineProperty({__proto__:null,changePassword:CZe,getCaptcha:bZe,getUserInfo:Yie,login:Gie,logout:Xie,refreshToken:wZe,revokeAllTokens:Jie},Symbol.toStringTag,{value:"Module"})),gR=hM("user",()=>{const e=H(d4()),t=H(o9()),n=H(null),r=A(()=>e.value);async function o(d){const f=await Gie(d),{accessToken:p,refreshToken:h,expiresIn:v,userInfo:g}=f.data,y=p||f.data.token,b=h||"";return e.value=y,t.value=b,n.value=g,b?w3(y,b,v):w3(y,"",v),f}async function a(){const d=await Yie();return n.value=d.data,d.data}async function s(){try{await Xie()}catch(d){console.warn("Logout API call failed:",d)}e.value=null,t.value=null,n.value=null,B2(),nj(),Gc.push("/login")}async function i(){try{await Jie()}catch(d){console.warn("Revoke all tokens API call failed:",d)}e.value=null,t.value=null,n.value=null,B2(),nj(),Gc.push("/login")}function l(){e.value=null,t.value=null,n.value=null,B2()}function u(d,f,p){e.value=d,t.value=f,p!==void 0&&w3(d,f,p)}function c(){return!!e.value}return{token:r,accessToken:e,refreshToken:t,userInfo:n,login:o,getUserInfo:a,logout:s,logoutAllDevices:i,resetState:l,updateTokens:u,isLoggedIn:c}});function SZe(){return ts({url:"/admin/menus/user",method:"get"})}function lEt(){return ts({url:"/admin/menus",method:"get"})}function uEt(e){return ts({url:"/admin/menus",method:"post",data:e})}function cEt(e,t){return ts({url:`/admin/menus/${e}`,method:"put",data:t})}function dEt(e){return ts({url:`/admin/menus/${e}`,method:"delete"})}const EZe=Y({__name:"SidebarItem",props:{item:{}},setup(e){const t=e,n=A(()=>{var o;return((o=t.item.children)==null?void 0:o.filter(a=>a.menuType!==3&&a.status===1))||[]}),r=A(()=>n.value.length>0);return(o,a)=>{const s=St("el-icon"),i=St("SidebarItem",!0),l=St("el-sub-menu"),u=St("el-menu-item");return r.value?(k(),de(l,{key:0,index:e.item.path||`menu_${e.item.id}`},{title:oe(()=>[e.item.icon?(k(),de(s,{key:0},{default:oe(()=>[(k(),de(Ot(e.item.icon)))]),_:1})):ce("",!0),P("span",null,Me(e.item.name),1)]),default:oe(()=>[(k(!0),I(Qe,null,Ht(n.value,c=>(k(),de(i,{key:c.id,item:c},null,8,["item"]))),128))]),_:1},8,["index"])):(k(),de(u,{key:1,index:e.item.path||""},{title:oe(()=>[Vt(Me(e.item.name),1)]),default:oe(()=>[e.item.icon?(k(),de(s,{key:0},{default:oe(()=>[(k(),de(Ot(e.item.icon)))]),_:1})):ce("",!0)]),_:1},8,["index"]))}}}),kZe={class:"sidebar-container"},xZe={class:"sidebar-logo"},AZe={key:0,class:"logo-title"},OZe={key:1,class:"logo-title-mini"},TZe=Y({__name:"Sidebar",props:{collapse:{type:Boolean}},setup(e){const t=wie(),n=Qie(),r=A(()=>n.menus),o=A(()=>t.path);return(a,s)=>{const i=St("el-menu"),l=St("el-scrollbar");return k(),I("div",kZe,[P("div",xZe,[e.collapse?(k(),I("span",OZe,"学业")):(k(),I("span",AZe,"学业邑规划"))]),te(l,null,{default:oe(()=>[te(i,{"default-active":o.value,collapse:e.collapse,"unique-opened":!0,"background-color":"transparent","text-color":"var(--sidebar-text)","active-text-color":"var(--sidebar-text-active)",class:"sidebar-menu",router:""},{default:oe(()=>[(k(!0),I(Qe,null,Ht(r.value,u=>(k(),de(EZe,{key:u.id,item:u},null,8,["item"]))),128))]),_:1},8,["default-active","collapse"])]),_:1})])}}}),DZe=Kp(TZe,[["__scopeId","data-v-e6e90018"]]),cO=[{name:"blue",label:"天空蓝",primaryColor:"#4A90D9",primaryLight:"#74B9FF",primaryDark:"#2B7DE9",primaryBg:"#E8F4FD",sidebarBg:"#F0F7FF",sidebarLogoBg:"#4A90D9",sidebarTextActive:"#4A90D9",bgPage:"#F5F9FC",bgLight:"#F0F7FF",bgHover:"#E8F4FD",loginBgStart:"#74B9FF",loginBgEnd:"#4A90D9"},{name:"green",label:"翠绿",primaryColor:"#52C41A",primaryLight:"#73D13D",primaryDark:"#389E0D",primaryBg:"#F6FFED",sidebarBg:"#F6FFED",sidebarLogoBg:"#52C41A",sidebarTextActive:"#52C41A",bgPage:"#F9FFF6",bgLight:"#F6FFED",bgHover:"#D9F7BE",loginBgStart:"#73D13D",loginBgEnd:"#52C41A"},{name:"purple",label:"典雅紫",primaryColor:"#722ED1",primaryLight:"#9254DE",primaryDark:"#531DAB",primaryBg:"#F9F0FF",sidebarBg:"#F9F0FF",sidebarLogoBg:"#722ED1",sidebarTextActive:"#722ED1",bgPage:"#FBF5FF",bgLight:"#F9F0FF",bgHover:"#EFDBFF",loginBgStart:"#9254DE",loginBgEnd:"#722ED1"},{name:"orange",label:"活力橙",primaryColor:"#FA8C16",primaryLight:"#FFA940",primaryDark:"#D46B08",primaryBg:"#FFF7E6",sidebarBg:"#FFF7E6",sidebarLogoBg:"#FA8C16",sidebarTextActive:"#FA8C16",bgPage:"#FFFBF5",bgLight:"#FFF7E6",bgHover:"#FFE7BA",loginBgStart:"#FFA940",loginBgEnd:"#FA8C16"},{name:"red",label:"中国红",primaryColor:"#F5222D",primaryLight:"#FF4D4F",primaryDark:"#CF1322",primaryBg:"#FFF1F0",sidebarBg:"#FFF1F0",sidebarLogoBg:"#F5222D",sidebarTextActive:"#F5222D",bgPage:"#FFFAFA",bgLight:"#FFF1F0",bgHover:"#FFCCC7",loginBgStart:"#FF4D4F",loginBgEnd:"#F5222D"},{name:"dark",label:"暗夜黑",primaryColor:"#1890FF",primaryLight:"#40A9FF",primaryDark:"#096DD9",primaryBg:"#111B26",sidebarBg:"#001529",sidebarLogoBg:"#002140",sidebarTextActive:"#1890FF",bgPage:"#0D1117",bgLight:"#161B22",bgHover:"#21262D",loginBgStart:"#001529",loginBgEnd:"#000C17"}],ZH="mi-assessment-admin-theme",QH="mi-assessment-admin-custom-theme",yR=hM("theme",()=>{const e=H("blue"),t=H(null),n=H(!1),r=()=>{const u=localStorage.getItem(ZH),c=localStorage.getItem(QH);c&&(t.value=JSON.parse(c)),u&&(e.value=u,o(u))},o=u=>{let c;if(u==="custom"&&t.value?c=t.value:c=cO.find(f=>f.name===u),!c)return;const d=document.documentElement;c.primaryColor&&(d.style.setProperty("--primary-color",c.primaryColor),d.style.setProperty("--el-color-primary",c.primaryColor)),c.primaryLight&&d.style.setProperty("--primary-light",c.primaryLight),c.primaryDark&&d.style.setProperty("--primary-dark",c.primaryDark),c.primaryBg&&d.style.setProperty("--primary-bg",c.primaryBg),c.sidebarBg&&d.style.setProperty("--sidebar-bg",c.sidebarBg),c.sidebarLogoBg&&d.style.setProperty("--sidebar-logo-bg",c.sidebarLogoBg),c.sidebarTextActive&&(d.style.setProperty("--sidebar-text-active",c.sidebarTextActive),d.style.setProperty("--sidebar-item-active",c.primaryBg||c.sidebarBg||""),d.style.setProperty("--sidebar-item-hover",c.bgHover||"")),c.bgPage&&(d.style.setProperty("--bg-page",c.bgPage),d.style.setProperty("--el-bg-color-page",c.bgPage)),c.bgLight&&d.style.setProperty("--bg-light",c.bgLight),c.bgHover&&d.style.setProperty("--bg-hover",c.bgHover),c.loginBgStart&&d.style.setProperty("--login-bg-start",c.loginBgStart),c.loginBgEnd&&d.style.setProperty("--login-bg-end",c.loginBgEnd),c.primaryColor&&a(c.primaryColor)},a=u=>{const c=document.documentElement,d=u.replace("#",""),f=parseInt(d.substring(0,2),16),p=parseInt(d.substring(2,4),16),h=parseInt(d.substring(4,6),16);[3,5,7,8,9].forEach(C=>{const _=C/10,S=Math.round(f+(255-f)*_),E=Math.round(p+(255-p)*_),x=Math.round(h+(255-h)*_);c.style.setProperty(`--el-color-primary-light-${C}`,`rgb(${S}, ${E}, ${x})`)});const g=.2,y=Math.round(f*(1-g)),b=Math.round(p*(1-g)),w=Math.round(h*(1-g));c.style.setProperty("--el-color-primary-dark-2",`rgb(${y}, ${b}, ${w})`)},s=u=>{e.value=u,localStorage.setItem(ZH,u),o(u)};return{currentTheme:e,customTheme:t,showThemeDrawer:n,initTheme:r,setTheme:s,saveCustomTheme:u=>{t.value={...u,name:"custom",label:"自定义"},localStorage.setItem(QH,JSON.stringify(t.value)),s("custom")},toggleThemeDrawer:()=>{n.value=!n.value},applyTheme:o}}),PZe={class:"header-container"},MZe={class:"header-left"},BZe={class:"header-right"},RZe={class:"user-info"},IZe={class:"username"},NZe=Y({__name:"Header",props:{collapse:{type:Boolean}},emits:["toggle-collapse"],setup(e){const t=wie(),n=DXe(),r=gR(),o=yR(),a=A(()=>r.userInfo),s=A(()=>t.matched.filter(u=>{var c;return(c=u.meta)==null?void 0:c.title}).map(u=>{var c;return{path:u.path,title:(c=u.meta)==null?void 0:c.title}})),i=async l=>{switch(l){case"profile":n.push("/profile");break;case"password":n.push("/password");break;case"logout":try{await sie.confirm("确定要退出登录吗?","提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}),await r.logout()}catch{}break}};return(l,u)=>{const c=St("el-icon"),d=St("el-breadcrumb-item"),f=St("el-breadcrumb"),p=St("el-tooltip"),h=St("el-avatar"),v=St("el-dropdown-item"),g=St("el-dropdown-menu"),y=St("el-dropdown");return k(),I("div",PZe,[P("div",MZe,[te(c,{class:"collapse-btn",onClick:u[0]||(u[0]=b=>l.$emit("toggle-collapse"))},{default:oe(()=>[e.collapse?(k(),de(m(Une),{key:1})):(k(),de(m(Kne),{key:0}))]),_:1}),te(f,{separator:"/"},{default:oe(()=>[(k(!0),I(Qe,null,Ht(s.value,b=>(k(),de(d,{key:b.path},{default:oe(()=>[Vt(Me(b.title),1)]),_:2},1024))),128))]),_:1})]),P("div",BZe,[te(p,{content:"主题设置",placement:"bottom"},{default:oe(()=>[P("div",{class:"header-action",onClick:u[1]||(u[1]=(...b)=>m(o).toggleThemeDrawer&&m(o).toggleThemeDrawer(...b))},[te(c,null,{default:oe(()=>[te(m(Vne))]),_:1})])]),_:1}),te(y,{trigger:"click",onCommand:i},{dropdown:oe(()=>[te(g,null,{default:oe(()=>[te(v,{command:"profile"},{default:oe(()=>[...u[2]||(u[2]=[Vt("个人中心",-1)])]),_:1}),te(v,{command:"password"},{default:oe(()=>[...u[3]||(u[3]=[Vt("修改密码",-1)])]),_:1}),te(v,{divided:"",command:"logout"},{default:oe(()=>[...u[4]||(u[4]=[Vt("退出登录",-1)])]),_:1})]),_:1})]),default:oe(()=>{var b,w,C;return[P("div",RZe,[te(h,{size:32,src:((b=a.value)==null?void 0:b.avatar)||void 0},{default:oe(()=>{var _,S,E,x;return[Vt(Me(((S=(_=a.value)==null?void 0:_.realName)==null?void 0:S.charAt(0))||((x=(E=a.value)==null?void 0:E.username)==null?void 0:x.charAt(0))||"U"),1)]}),_:1},8,["src"]),P("span",IZe,Me(((w=a.value)==null?void 0:w.realName)||((C=a.value)==null?void 0:C.username)),1),te(c,null,{default:oe(()=>[te(m(si))]),_:1})])]}),_:1})])])}}}),FZe=Kp(NZe,[["__scopeId","data-v-dd2a461a"]]),LZe={class:"theme-drawer"},$Ze={class:"theme-section"},VZe={class:"theme-grid"},zZe=["onClick"],HZe={class:"theme-label"},jZe={class:"theme-section"},WZe={class:"custom-theme"},UZe={class:"color-item"},KZe={class:"color-item"},qZe={class:"color-item"},GZe={class:"theme-section"},YZe={class:"preview-box"},XZe={class:"preview-menu"},JZe=Y({__name:"ThemeDrawer",setup(e){const t=yR(),n=Qt({primaryColor:"#4A90D9",sidebarBg:"#F0F7FF",bgPage:"#F5F9FC"}),r=A(()=>{if(t.currentTheme==="custom"&&t.customTheme)return{primaryColor:t.customTheme.primaryColor||n.primaryColor,sidebarBg:t.customTheme.sidebarBg||n.sidebarBg,bgPage:t.customTheme.bgPage||n.bgPage,primaryBg:t.customTheme.primaryBg||o(n.primaryColor,.9)};const l=cO.find(u=>u.name===t.currentTheme);return l?{primaryColor:l.primaryColor,sidebarBg:l.sidebarBg,bgPage:l.bgPage,primaryBg:l.primaryBg}:{primaryColor:n.primaryColor,sidebarBg:n.sidebarBg,bgPage:n.bgPage,primaryBg:o(n.primaryColor,.9)}}),o=(l,u)=>{const c=l.replace("#",""),d=parseInt(c.substring(0,2),16),f=parseInt(c.substring(2,4),16),p=parseInt(c.substring(4,6),16),h=Math.round(d+(255-d)*u),v=Math.round(f+(255-f)*u),g=Math.round(p+(255-p)*u);return`rgb(${h}, ${v}, ${g})`},a=(l,u)=>{const c=l.replace("#",""),d=parseInt(c.substring(0,2),16),f=parseInt(c.substring(2,4),16),p=parseInt(c.substring(4,6),16),h=Math.round(d*(1-u)),v=Math.round(f*(1-u)),g=Math.round(p*(1-u));return`rgb(${h}, ${v}, ${g})`},s=()=>{},i=()=>{t.saveCustomTheme({primaryColor:n.primaryColor,primaryLight:o(n.primaryColor,.3),primaryDark:a(n.primaryColor,.2),primaryBg:o(n.primaryColor,.9),sidebarBg:n.sidebarBg,sidebarLogoBg:n.primaryColor,sidebarTextActive:n.primaryColor,bgPage:n.bgPage,bgLight:o(n.bgPage,.5),bgHover:o(n.primaryColor,.85),loginBgStart:o(n.primaryColor,.2),loginBgEnd:n.primaryColor})};return ge(()=>t.customTheme,l=>{l&&(n.primaryColor=l.primaryColor||"#4A90D9",n.sidebarBg=l.sidebarBg||"#F0F7FF",n.bgPage=l.bgPage||"#F5F9FC")},{immediate:!0}),(l,u)=>{const c=St("el-icon"),d=St("el-color-picker"),f=St("el-button"),p=St("el-drawer");return k(),de(p,{modelValue:m(t).showThemeDrawer,"onUpdate:modelValue":u[3]||(u[3]=h=>m(t).showThemeDrawer=h),title:"主题设置",direction:"rtl",size:"300px","show-close":!0},{default:oe(()=>[P("div",LZe,[P("div",$Ze,[u[4]||(u[4]=P("h4",{class:"section-title"},"系统主题",-1)),P("div",VZe,[(k(!0),I(Qe,null,Ht(m(cO),h=>(k(),I("div",{key:h.name,class:$(["theme-item",{active:m(t).currentTheme===h.name}]),onClick:v=>m(t).setTheme(h.name)},[P("div",{class:"theme-preview",style:ot({backgroundColor:h.primaryColor})},[m(t).currentTheme===h.name?(k(),de(c,{key:0,class:"check-icon"},{default:oe(()=>[te(m(Wp))]),_:1})):ce("",!0)],4),P("span",HZe,Me(h.label),1)],10,zZe))),128))])]),P("div",jZe,[u[9]||(u[9]=P("h4",{class:"section-title"},"自定义主题",-1)),P("div",WZe,[P("div",UZe,[u[5]||(u[5]=P("span",{class:"color-label"},"主色调",-1)),te(d,{modelValue:n.primaryColor,"onUpdate:modelValue":u[0]||(u[0]=h=>n.primaryColor=h),onChange:s},null,8,["modelValue"])]),P("div",KZe,[u[6]||(u[6]=P("span",{class:"color-label"},"侧边栏背景",-1)),te(d,{modelValue:n.sidebarBg,"onUpdate:modelValue":u[1]||(u[1]=h=>n.sidebarBg=h),onChange:s},null,8,["modelValue"])]),P("div",qZe,[u[7]||(u[7]=P("span",{class:"color-label"},"页面背景",-1)),te(d,{modelValue:n.bgPage,"onUpdate:modelValue":u[2]||(u[2]=h=>n.bgPage=h),onChange:s},null,8,["modelValue"])]),te(f,{type:"primary",class:"apply-btn",onClick:i},{default:oe(()=>[...u[8]||(u[8]=[Vt(" 应用自定义主题 ",-1)])]),_:1})])]),P("div",GZe,[u[13]||(u[13]=P("h4",{class:"section-title"},"预览效果",-1)),P("div",YZe,[P("div",{class:"preview-sidebar",style:ot({backgroundColor:r.value.sidebarBg})},[P("div",{class:"preview-logo",style:ot({backgroundColor:r.value.primaryColor})},null,4),P("div",XZe,[u[10]||(u[10]=P("div",{class:"preview-menu-item"},null,-1)),P("div",{class:"preview-menu-item active",style:ot({backgroundColor:r.value.primaryBg})},null,4),u[11]||(u[11]=P("div",{class:"preview-menu-item"},null,-1))])],4),P("div",{class:"preview-main",style:ot({backgroundColor:r.value.bgPage})},[...u[12]||(u[12]=[P("div",{class:"preview-header"},null,-1),P("div",{class:"preview-content"},[P("div",{class:"preview-card"})],-1)])],4)])])])]),_:1},8,["modelValue"])}}}),ZZe=Kp(JZe,[["__scopeId","data-v-102e7fe1"]]),QZe={class:"layout-container"},eQe=Y({__name:"index",setup(e){const t=H(!1),n=yR(),r=()=>{t.value=!t.value};return Bt(()=>{n.initTheme()}),(o,a)=>{const s=St("el-aside"),i=St("el-header"),l=St("router-view"),u=St("el-main"),c=St("el-container");return k(),I("div",QZe,[te(c,{class:"layout-wrapper"},{default:oe(()=>[te(s,{width:t.value?"64px":"200px",class:"layout-aside"},{default:oe(()=>[te(DZe,{collapse:t.value},null,8,["collapse"])]),_:1},8,["width"]),te(c,{class:"layout-main"},{default:oe(()=>[te(i,{class:"layout-header"},{default:oe(()=>[te(FZe,{collapse:t.value,onToggleCollapse:r},null,8,["collapse"])]),_:1}),te(u,{class:"layout-content"},{default:oe(()=>[te(l,null,{default:oe(({Component:d})=>[te(xo,{name:"fade",mode:"out-in"},{default:oe(()=>[(k(),de(Qve,null,[(k(),de(Ot(d)))],1024))]),_:2},1024)]),_:1})]),_:1})]),_:1})]),_:1}),te(ZZe)])}}}),Zie=Kp(eQe,[["__scopeId","data-v-820d9484"]]),ej=Object.freeze(Object.defineProperty({__proto__:null,default:Zie},Symbol.toStringTag,{value:"Module"})),tj=Object.assign({"/src/views/business/assessment/category/index.vue":()=>vn(()=>import("./index-DQHrJnaL.js"),__vite__mapDeps([0,1,2])),"/src/views/business/assessment/conclusion/index.vue":()=>vn(()=>import("./index-CkWYjUJ_.js"),__vite__mapDeps([3,1,4])),"/src/views/business/assessment/question/index.vue":()=>vn(()=>import("./index-ceuQTzI9.js"),__vite__mapDeps([5,1,6])),"/src/views/business/assessment/record/index.vue":()=>vn(()=>import("./index-BlN5OXvU.js"),__vite__mapDeps([7,1,8])),"/src/views/business/assessment/report-page-config/index.vue":()=>vn(()=>import("./index-D8M2xb3-.js"),__vite__mapDeps([9,10])),"/src/views/business/assessment/scoreOption/index.vue":()=>vn(()=>import("./index-GdPxCa_v.js"),__vite__mapDeps([11,1,12])),"/src/views/business/assessment/type/index.vue":()=>vn(()=>import("./index-BdFKGFJj.js"),__vite__mapDeps([13,1,14])),"/src/views/business/config/index.vue":()=>vn(()=>import("./index-CF2dEg0p.js"),__vite__mapDeps([15,16])),"/src/views/business/content/banner/index.vue":()=>vn(()=>import("./index-DVv_QgHD.js"),__vite__mapDeps([17,18,19])),"/src/views/business/content/business-page/index.vue":()=>vn(()=>import("./index-DBKZzESX.js"),__vite__mapDeps([20,21])),"/src/views/business/content/navigation/index.vue":()=>vn(()=>import("./index-ChjWo2Vr.js"),__vite__mapDeps([22,18,23])),"/src/views/business/content/promotion/index.vue":()=>vn(()=>import("./index-pkSWbB11.js"),__vite__mapDeps([24,18,25])),"/src/views/business/distribution/commission/index.vue":()=>vn(()=>import("./index-CQfuTVuG.js"),__vite__mapDeps([26,27,28])),"/src/views/business/distribution/invite-code/index.vue":()=>vn(()=>import("./index-BUiCHAkf.js"),__vite__mapDeps([29,27,30,31])),"/src/views/business/distribution/withdrawal/index.vue":()=>vn(()=>import("./index-DhUc-zCV.js"),__vite__mapDeps([32,27,33])),"/src/views/business/order/index.vue":()=>vn(()=>import("./index-BvcnoHYv.js"),__vite__mapDeps([34,35])),"/src/views/business/planner/booking/index.vue":()=>vn(()=>import("./index-DmIyHfCA.js"),__vite__mapDeps([36,37,38])),"/src/views/business/planner/index.vue":()=>vn(()=>import("./index-CXu62BQM.js"),__vite__mapDeps([39,37,40])),"/src/views/business/user/index.vue":()=>vn(()=>import("./index-DgcuRZo4.js"),__vite__mapDeps([41,30,42])),"/src/views/dashboard/index.vue":()=>vn(()=>import("./index-G9qeWlW9.js"),__vite__mapDeps([43,44])),"/src/views/error/404.vue":()=>vn(()=>import("./404-BHXP3Gho.js"),__vite__mapDeps([45,46])),"/src/views/login/index.vue":()=>vn(()=>import("./index-Ibe6gSaz.js"),__vite__mapDeps([47,48])),"/src/views/password/index.vue":()=>vn(()=>import("./index-D1PUhCZg.js"),__vite__mapDeps([49,50])),"/src/views/profile/index.vue":()=>vn(()=>import("./index-BspGp0FD.js"),__vite__mapDeps([51,52])),"/src/views/system/config/index.vue":()=>vn(()=>import("./index-DVnmUJIC.js"),__vite__mapDeps([53,54,55,56,57,58,59,60,61,62,63])),"/src/views/system/config/miniprogram.vue":()=>vn(()=>import("./miniprogram-BVUgdskI.js"),__vite__mapDeps([57,55,58])),"/src/views/system/config/payment.vue":()=>vn(()=>import("./payment-73HGuqwu.js"),__vite__mapDeps([59,55,60])),"/src/views/system/config/upload.vue":()=>vn(()=>import("./upload-DZwrV5XI.js"),__vite__mapDeps([54,55,56])),"/src/views/system/config/user.vue":()=>vn(()=>import("./user-nAVm2dIq.js"),__vite__mapDeps([61,55,62])),"/src/views/system/department/index.vue":()=>vn(()=>import("./index-Dn27sYYF.js"),__vite__mapDeps([64,65,66])),"/src/views/system/dict/index.vue":()=>vn(()=>import("./index-D2Tzq3iI.js"),__vite__mapDeps([67,68])),"/src/views/system/log/index.vue":()=>vn(()=>import("./index-BPvyvZlt.js"),__vite__mapDeps([69,70])),"/src/views/system/menu/index.vue":()=>vn(()=>import("./index-CluIevU3.js"),__vite__mapDeps([71,72])),"/src/views/system/permission/index.vue":()=>vn(()=>import("./index-ufppKyHG.js"),__vite__mapDeps([73,74,75])),"/src/views/system/role/index.vue":()=>vn(()=>import("./index-C_dKwPCW.js"),__vite__mapDeps([76,77,74,78])),"/src/views/system/user/index.vue":()=>vn(()=>import("./index-eKUZRiBU.js"),__vite__mapDeps([79,77,65,80]))}),Qie=hM("permission",()=>{const e=H([]),t=H([]);async function n(){const s=await SZe();t.value=s.data;const i=r(s.data);return e.value=i,i}function r(s){const i=[];for(const l of s){if(l.menuType===3)continue;const u={path:l.path||"",name:`Menu_${l.id}`,meta:{title:l.name,icon:l.icon,permission:l.permission,keepAlive:l.isCache},children:[]};if(l.parentId===0)if(u.component=Zie,l.children&&l.children.length>0){u.children=r(l.children);const c=u.children[0];c&&(u.redirect=c.path)}else l.component&&(u.children=[{path:"",name:`Menu_${l.id}_index`,component:o(l.component),meta:u.meta}]);else l.component&&(u.component=o(l.component)),l.children&&l.children.length>0&&(u.children=r(l.children));i.push(u)}return i}function o(s){const i=`/src/views/${s}.vue`;return tj[i]?tj[i]:(console.warn(`Component not found: ${s}, path: ${i}`),()=>vn(()=>import("./404-BHXP3Gho.js"),__vite__mapDeps([45,46])))}function a(){e.value=[],t.value=[]}return{routes:e,menus:t,generateRoutes:n,resetState:a}}),tQe=[{path:"/",redirect:"/dashboard"},{path:"/login",name:"Login",component:()=>vn(()=>import("./index-Ibe6gSaz.js"),__vite__mapDeps([47,48])),meta:{title:"登录"}},{path:"/404",name:"NotFound",component:()=>vn(()=>import("./404-BHXP3Gho.js"),__vite__mapDeps([45,46])),meta:{title:"404"}},{path:"/profile",name:"Profile",component:()=>vn(()=>Promise.resolve().then(()=>ej),void 0),meta:{title:"个人中心"},children:[{path:"",component:()=>vn(()=>import("./index-BspGp0FD.js"),__vite__mapDeps([51,52])),meta:{title:"个人中心"}}]},{path:"/password",name:"Password",component:()=>vn(()=>Promise.resolve().then(()=>ej),void 0),meta:{title:"修改密码"},children:[{path:"",component:()=>vn(()=>import("./index-D1PUhCZg.js"),__vite__mapDeps([49,50])),meta:{title:"修改密码"}}]}],Gc=TXe({history:iXe(),routes:tQe}),nQe=["/login","/404"];let o2=!1;function nj(){o2=!1}Gc.beforeEach(async(e,t,n)=>{if(VXe())if(e.path==="/login")n({path:"/"});else{const o=gR(),a=Qie();if(o2)n();else try{o.userInfo||await o.getUserInfo(),(await a.generateRoutes()).forEach(i=>{Gc.addRoute(i)}),Gc.addRoute({path:"/:pathMatch(.*)*",redirect:"/404"}),o2=!0,n({...e,replace:!0})}catch{o2=!1,o.logout(),n(`/login?redirect=${e.path}`)}}else o2=!1,nQe.includes(e.path)?n():n(`/login?redirect=${e.path}`)});const rQe={mounted(e,t){var a,s;const{value:n}=t,o=((a=gR().userInfo)==null?void 0:a.permissions)||[];o.includes("*")||n&&((Array.isArray(n)?n.some(l=>o.includes(l)):o.includes(n))||(s=e.parentNode)==null||s.removeChild(e))}};function oQe(e){return ts({url:"/admin/upload/presigned-url",method:"POST",data:e})}async function aQe(e,t,n,r){await Gr.put(e,t,{headers:{"Content-Type":n},onUploadProgress:o=>{if(o.total&&r){const a=Math.round(o.loaded*100/o.total);r(a)}}})}async function sQe(e,t){const n=await oQe({fileName:e.name,contentType:e.type||"application/octet-stream",fileSize:e.size});if(n.code===0&&n.data){const r=n.data;if("supportsDirectUpload"in r&&r.supportsDirectUpload===!1)return rj(e,t);const o=r;return await aQe(o.uploadUrl,e,e.type||"application/octet-stream",t),{code:0,message:"上传成功",data:{url:o.fileUrl,fileName:e.name,fileSize:e.size}}}return console.warn("获取预签名URL失败,降级到服务端上传:",n.message),rj(e,t)}function rj(e,t){const n=new FormData;return n.append("file",e),ts({url:"/admin/upload/image",method:"POST",data:n,headers:{"Content-Type":"multipart/form-data"},onUploadProgress:r=>{if(r.total&&t){const o=Math.round(r.loaded*100/r.total);t(o)}}})}const iQe={class:"image-upload"},lQe={class:"upload-area"},uQe={key:0,class:"image-preview-wrapper"},cQe={class:"image-error"},dQe={class:"image-actions"},fQe={class:"upload-content"},pQe={class:"upload-text"},hQe={key:0,class:"upload-error-message"},vQe={key:1,class:"url-input-wrapper"},mQe={key:2,class:"upload-tip"},gQe=Y({__name:"index",props:{modelValue:{default:""},disabled:{type:Boolean,default:!1},placeholder:{default:"点击或拖拽上传"},urlPlaceholder:{default:"或输入图片URL"},showUrlInput:{type:Boolean,default:!0},accept:{default:"image/jpeg,image/png,image/gif,image/webp"},maxSize:{default:10},tip:{default:""},uploadAction:{default:"#"}},emits:["update:modelValue","change","upload-success","upload-error"],setup(e,{emit:t}){const n=["jpg","jpeg","png","gif","webp"],r=["image/jpeg","image/png","image/gif","image/webp"],o=e,a=t,s=H(!1),i=H(0),l=H(""),u=H(""),c=H(),d=A(()=>o.accept);ge(()=>o.modelValue,S=>{S!==l.value&&(l.value=S||""),S&&(u.value="")},{immediate:!0});const f=S=>{const E=S.lastIndexOf(".");return E===-1?"":S.substring(E+1).toLowerCase()},p=S=>{const E=f(S.name),x=S.type.toLowerCase(),O=n.includes(E),D=r.includes(x);return!O&&!D?{valid:!1,message:`只支持 ${n.join("、")} 格式的图片`}:{valid:!0,message:""}},h=S=>{const E=S.size/1024/1024;return E>o.maxSize?{valid:!1,message:`文件大小不能超过 ${o.maxSize}MB,当前文件大小为 ${E.toFixed(2)}MB`}:{valid:!0,message:""}},v=()=>{u.value=""},g=S=>{v();const E=p(S);if(!E.valid)return u.value=E.message,Is.error(E.message),!1;const x=h(S);return x.valid?!0:(u.value=x.message,Is.error(x.message),!1)},y=async S=>{var x,O,D,R,T;const E=S.file;s.value=!0,i.value=0,v();try{const N=await sQe(E,W=>{i.value=W});if(N.code===0&&((x=N.data)!=null&&x.url)){const W=N.data.url;a("update:modelValue",W),a("change",W),a("upload-success",N.data),l.value=W,Is.success("上传成功")}else{const W=N.message||"上传失败,请重试";throw new Error(W)}}catch(N){console.error("上传失败:",N);let W="上传失败,请重试";(D=(O=N.response)==null?void 0:O.data)!=null&&D.message?W=N.response.data.message:N.message&&(W=N.message),N.code==="ECONNABORTED"||(R=N.message)!=null&&R.includes("timeout")?W="上传超时,请检查网络后重试":(T=N.message)!=null&&T.includes("Network Error")&&(W="网络错误,请检查网络连接"),u.value=W,a("upload-error",N),Is.error(W)}finally{s.value=!1,i.value=0}},b=()=>{var S,E,x;(x=(E=(S=c.value)==null?void 0:S.$el)==null?void 0:E.querySelector("img"))==null||x.click()},w=()=>{a("update:modelValue",""),a("change",""),l.value="",v()},C=()=>{},_=()=>{const S=l.value.trim();S&&(v(),a("update:modelValue",S),a("change",S))};return(S,E)=>{const x=St("el-icon"),O=St("el-image"),D=St("el-progress"),R=St("el-upload"),T=St("el-button"),N=St("el-input");return k(),I("div",iQe,[P("div",lQe,[e.modelValue?(k(),I("div",uQe,[te(O,{ref_key:"imageRef",ref:c,src:e.modelValue,fit:"cover",class:"preview-image","preview-src-list":[e.modelValue],"preview-teleported":""},{error:oe(()=>[P("div",cQe,[te(x,null,{default:oe(()=>[te(m(Zne))]),_:1}),E[1]||(E[1]=P("span",null,"加载失败",-1))])]),_:1},8,["src","preview-src-list"]),P("div",dQe,[te(x,{class:"action-icon",onClick:b},{default:oe(()=>[te(m(FC))]),_:1}),te(x,{class:"action-icon",onClick:w},{default:oe(()=>[te(m($M))]),_:1})])])):(k(),de(R,{key:1,ref:"uploadRef",class:"uploader",action:e.uploadAction,"show-file-list":!1,"before-upload":g,"http-request":y,accept:d.value,disabled:e.disabled||s.value,drag:""},{default:oe(()=>[P("div",fQe,[s.value?(k(),de(D,{key:1,type:"circle",percentage:i.value,width:50},null,8,["percentage"])):(k(),de(x,{key:0,class:"upload-icon"},{default:oe(()=>[te(m(NC))]),_:1})),P("div",pQe,Me(s.value?"上传中...":e.placeholder),1)])]),_:1},8,["action","accept","disabled"]))]),u.value?(k(),I("div",hQe,[te(x,null,{default:oe(()=>[te(m(Uv))]),_:1}),P("span",null,Me(u.value),1)])):ce("",!0),e.showUrlInput?(k(),I("div",vQe,[te(N,{modelValue:l.value,"onUpdate:modelValue":E[0]||(E[0]=W=>l.value=W),placeholder:e.urlPlaceholder,disabled:e.disabled,clearable:"",onBlur:C,onKeyup:tr(_,["enter"])},{append:oe(()=>[te(T,{disabled:!l.value,onClick:_},{default:oe(()=>[...E[2]||(E[2]=[Vt(" 确定 ",-1)])]),_:1},8,["disabled"])]),_:1},8,["modelValue","placeholder","disabled"])])):ce("",!0),e.tip?(k(),I("div",mQe,Me(e.tip),1)):ce("",!0)])}}}),yQe=Kp(gQe,[["__scopeId","data-v-cbadb1e5"]]);function fEt(){return ks.get("/admin/dict/types")}function pEt(e){return ks.post("/admin/dict/types",e)}function hEt(e,t){return ks.put(`/admin/dict/types/${e}`,t)}function vEt(e){return ks.delete(`/admin/dict/types/${e}`)}function bR(e){return ks.get(`/admin/dict/items/${e}`)}function mEt(e){return ks.post("/admin/dict/items",e)}function gEt(e,t){return ks.put(`/admin/dict/items/${e}`,t)}function yEt(e){return ks.delete(`/admin/dict/items/${e}`)}const bQe=Y({__name:"index",props:$h({type:{},placeholder:{default:"请选择"},disabled:{type:Boolean,default:!1},clearable:{type:Boolean,default:!0},filterable:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{}}),emits:$h(["change"],["update:modelValue"]),setup(e,{expose:t,emit:n}){const r=e,o=n,a=uM(e,"modelValue"),s=H(!1),i=H([]);async function l(){if(r.type){s.value=!0;try{const c=await bR(r.type);i.value=(c.data||[]).filter(d=>d.status===1)}catch(c){console.error(`加载字典[${r.type}]失败`,c),i.value=[]}finally{s.value=!1}}}function u(c){const d=i.value.find(f=>f.value===c);o("change",c,d)}return ge(()=>r.type,()=>{l()}),Bt(()=>{l()}),t({reload:l,getOptions:()=>i.value}),(c,d)=>{const f=St("el-option"),p=St("el-select");return k(),de(p,{modelValue:a.value,"onUpdate:modelValue":d[0]||(d[0]=h=>a.value=h),placeholder:e.placeholder,disabled:e.disabled,clearable:e.clearable,filterable:e.filterable,loading:s.value,onChange:u},{default:oe(()=>[(k(!0),I(Qe,null,Ht(i.value,h=>(k(),de(f,{key:h.value,label:h.label,value:h.value,disabled:h.status!==1},null,8,["label","value","disabled"]))),128))]),_:1},8,["modelValue","placeholder","disabled","clearable","filterable","loading"])}}}),wQe=Y({__name:"index",props:$h({type:{},disabled:{type:Boolean,default:!1},button:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{}}),emits:$h(["change"],["update:modelValue"]),setup(e,{expose:t,emit:n}){const r=e,o=n,a=uM(e,"modelValue"),s=H([]);async function i(){if(r.type)try{const u=await bR(r.type);s.value=(u.data||[]).filter(c=>c.status===1)}catch(u){console.error(`加载字典[${r.type}]失败`,u),s.value=[]}}function l(u){const c=s.value.find(d=>d.value===u);o("change",u,c)}return ge(()=>r.type,()=>{i()}),Bt(()=>{i()}),t({reload:i,getOptions:()=>s.value}),(u,c)=>{const d=St("el-radio-group");return k(),de(d,{modelValue:a.value,"onUpdate:modelValue":c[0]||(c[0]=f=>a.value=f),disabled:e.disabled,onChange:l},{default:oe(()=>[(k(!0),I(Qe,null,Ht(s.value,f=>(k(),de(Ot(e.button?m(hoe):m(sB)),{key:f.value,value:f.value,disabled:f.status!==1},{default:oe(()=>[Vt(Me(f.label),1)]),_:2},1032,["value","disabled"]))),128))]),_:1},8,["modelValue","disabled"])}}}),CQe=Y({__name:"index",props:$h({type:{},disabled:{type:Boolean,default:!1},button:{type:Boolean,default:!1}},{modelValue:{default:()=>[]},modelModifiers:{}}),emits:$h(["change"],["update:modelValue"]),setup(e,{expose:t,emit:n}){const r=e,o=n,a=uM(e,"modelValue"),s=H([]);async function i(){if(r.type)try{const u=await bR(r.type);s.value=(u.data||[]).filter(c=>c.status===1)}catch(u){console.error(`加载字典[${r.type}]失败`,u),s.value=[]}}function l(u){const c=s.value.filter(d=>u.includes(d.value));o("change",u,c)}return ge(()=>r.type,()=>{i()}),Bt(()=>{i()}),t({reload:i,getOptions:()=>s.value}),(u,c)=>{const d=St("el-checkbox-group");return k(),de(d,{modelValue:a.value,"onUpdate:modelValue":c[0]||(c[0]=f=>a.value=f),disabled:e.disabled,onChange:l},{default:oe(()=>[(k(!0),I(Qe,null,Ht(s.value,f=>(k(),de(Ot(e.button?m(soe):m(Js)),{key:f.value,value:f.value,disabled:f.status!==1},{default:oe(()=>[Vt(Me(f.label),1)]),_:2},1032,["value","disabled"]))),128))]),_:1},8,["modelValue","disabled"])}}});var dr=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function _Qe(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function qp(e){var t={exports:{}};return e(t,t.exports),t.exports}var ec,k3,Fb=function(e){return e&&e.Math==Math&&e},mn=Fb(typeof globalThis=="object"&&globalThis)||Fb(typeof window=="object"&&window)||Fb(typeof self=="object"&&self)||Fb(typeof dr=="object"&&dr)||(function(){return this})()||Function("return this")(),wR=Function.prototype,oj=wR.apply,SQe=wR.bind,aj=wR.call,ele=typeof Reflect=="object"&&Reflect.apply||(SQe?aj.bind(oj):function(){return aj.apply(oj,arguments)}),tle=Function.prototype,dO=tle.bind,fO=tle.call,EQe=dO&&dO.bind(fO),wr=dO?function(e){return e&&EQe(fO,e)}:function(e){return e&&function(){return fO.apply(e,arguments)}},Go=function(e){return typeof e=="function"},Za=function(e){try{return!!e()}catch{return!0}},qa=!Za((function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!=7})),Dm=Function.prototype.call,hs=Dm.bind?Dm.bind(Dm):function(){return Dm.apply(Dm,arguments)},sj={}.propertyIsEnumerable,ij=Object.getOwnPropertyDescriptor,kQe=ij&&!sj.call({1:2},1)?function(e){var t=ij(this,e);return!!t&&t.enumerable}:sj,CR={f:kQe},Si=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}},xQe=wr({}.toString),AQe=wr("".slice),jf=function(e){return AQe(xQe(e),8,-1)},hS=mn.Object,OQe=wr("".split),nle=Za((function(){return!hS("z").propertyIsEnumerable(0)}))?function(e){return jf(e)=="String"?OQe(e,""):hS(e)}:hS,TQe=mn.TypeError,_R=function(e){if(e==null)throw TQe("Can't call method on "+e);return e},Hl=function(e){return nle(_R(e))},Hs=function(e){return typeof e=="object"?e!==null:Go(e)},is={},lj=function(e){return Go(e)?e:void 0},Zv=function(e,t){return arguments.length<2?lj(is[e])||lj(mn[e]):is[e]&&is[e][t]||mn[e]&&mn[e][t]},F1=wr({}.isPrototypeOf),vS=Zv("navigator","userAgent")||"",uj=mn.process,cj=mn.Deno,dj=uj&&uj.versions||cj&&cj.version,fj=dj&&dj.v8;fj&&(k3=(ec=fj.split("."))[0]>0&&ec[0]<4?1:+(ec[0]+ec[1])),!k3&&vS&&(!(ec=vS.match(/Edge\/(\d+)/))||ec[1]>=74)&&(ec=vS.match(/Chrome\/(\d+)/))&&(k3=+ec[1]);var Lb,q8=k3,el=!!Object.getOwnPropertySymbols&&!Za((function(){var e=Symbol();return!String(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&q8&&q8<41})),SR=el&&!Symbol.sham&&typeof Symbol.iterator=="symbol",DQe=mn.Object,Eh=SR?function(e){return typeof e=="symbol"}:function(e){var t=Zv("Symbol");return Go(t)&&F1(t.prototype,DQe(e))},PQe=mn.String,pO=function(e){try{return PQe(e)}catch{return"Object"}},MQe=mn.TypeError,ER=function(e){if(Go(e))return e;throw MQe(pO(e)+" is not a function")},G8=function(e,t){var n=e[t];return n==null?void 0:ER(n)},BQe=mn.TypeError,RQe=Object.defineProperty,Yc=mn["__core-js_shared__"]||(function(e,t){try{RQe(mn,e,{value:t,configurable:!0,writable:!0})}catch{mn[e]=t}return t})("__core-js_shared__",{}),Gp=qp((function(e){(e.exports=function(t,n){return Yc[t]||(Yc[t]=n!==void 0?n:{})})("versions",[]).push({version:"3.19.3",mode:"pure",copyright:"© 2021 Denis Pushkarev (zloirock.ru)"})})),IQe=mn.Object,m4=function(e){return IQe(_R(e))},NQe=wr({}.hasOwnProperty),zn=Object.hasOwn||function(e,t){return NQe(m4(e),t)},FQe=0,LQe=Math.random(),$Qe=wr(1 .toString),Y8=function(e){return"Symbol("+(e===void 0?"":e)+")_"+$Qe(++FQe+LQe,36)},Pm=Gp("wks"),Wf=mn.Symbol,pj=Wf&&Wf.for,VQe=SR?Wf:Wf&&Wf.withoutSetter||Y8,ga=function(e){if(!zn(Pm,e)||!el&&typeof Pm[e]!="string"){var t="Symbol."+e;el&&zn(Wf,e)?Pm[e]=Wf[e]:Pm[e]=SR&&pj?pj(t):VQe(t)}return Pm[e]},zQe=mn.TypeError,HQe=ga("toPrimitive"),jQe=function(e,t){if(!Hs(e)||Eh(e))return e;var n,r=G8(e,HQe);if(r){if(n=hs(r,e,t),!Hs(n)||Eh(n))return n;throw zQe("Can't convert object to primitive value")}return(function(o,a){var s,i;if(Go(s=o.toString)&&!Hs(i=hs(s,o))||Go(s=o.valueOf)&&!Hs(i=hs(s,o)))return i;throw BQe("Can't convert object to primitive value")})(e)},Qv=function(e){var t=jQe(e,"string");return Eh(t)?t:t+""},hO=mn.document,WQe=Hs(hO)&&Hs(hO.createElement),rle=function(e){return WQe?hO.createElement(e):{}},ole=!qa&&!Za((function(){return Object.defineProperty(rle("div"),"a",{get:function(){return 7}}).a!=7})),hj=Object.getOwnPropertyDescriptor,UQe=qa?hj:function(e,t){if(e=Hl(e),t=Qv(t),ole)try{return hj(e,t)}catch{}if(zn(e,t))return Si(!hs(CR.f,e,t),e[t])},c9={f:UQe},KQe=/#|\.prototype\./,g4=function(e,t){var n=GQe[qQe(e)];return n==XQe||n!=YQe&&(Go(t)?Za(t):!!t)},qQe=g4.normalize=function(e){return String(e).replace(KQe,".").toLowerCase()},GQe=g4.data={},YQe=g4.NATIVE="N",XQe=g4.POLYFILL="P",JQe=g4,vj=wr(wr.bind),kR=function(e,t){return ER(e),t===void 0?e:vj?vj(e,t):function(){return e.apply(t,arguments)}},ZQe=mn.String,QQe=mn.TypeError,ys=function(e){if(Hs(e))return e;throw QQe(ZQe(e)+" is not an object")},eet=mn.TypeError,mj=Object.defineProperty,tet=qa?mj:function(e,t,n){if(ys(e),t=Qv(t),ys(n),ole)try{return mj(e,t,n)}catch{}if("get"in n||"set"in n)throw eet("Accessors not supported");return"value"in n&&(e[t]=n.value),e},Id={f:tet},Sa=qa?function(e,t,n){return Id.f(e,t,Si(1,n))}:function(e,t,n){return e[t]=n,e},net=c9.f,ret=function(e){var t=function(n,r,o){if(this instanceof t){switch(arguments.length){case 0:return new e;case 1:return new e(n);case 2:return new e(n,r)}return new e(n,r,o)}return ele(e,this,arguments)};return t.prototype=e.prototype,t},nu=function(e,t){var n,r,o,a,s,i,l,u,c=e.target,d=e.global,f=e.stat,p=e.proto,h=d?mn:f?mn[c]:(mn[c]||{}).prototype,v=d?is:is[c]||Sa(is,c,{})[c],g=v.prototype;for(o in t)n=!JQe(d?o:c+(f?".":"#")+o,e.forced)&&h&&zn(h,o),s=v[o],n&&(i=e.noTargetGet?(u=net(h,o))&&u.value:h[o]),a=n&&i?i:t[o],n&&typeof s==typeof a||(l=e.bind&&n?kR(a,mn):e.wrap&&n?ret(a):p&&Go(a)?wr(a):a,(e.sham||a&&a.sham||s&&s.sham)&&Sa(l,"sham",!0),Sa(v,o,l),p&&(zn(is,r=c+"Prototype")||Sa(is,r,{}),Sa(is[r],o,a),e.real&&g&&!g[o]&&Sa(g,o,a)))},gj=Gp("keys"),d9=function(e){return gj[e]||(gj[e]=Y8(e))},oet=!Za((function(){function e(){}return e.prototype.constructor=null,Object.getPrototypeOf(new e)!==e.prototype})),yj=d9("IE_PROTO"),vO=mn.Object,aet=vO.prototype,X8=oet?vO.getPrototypeOf:function(e){var t=m4(e);if(zn(t,yj))return t[yj];var n=t.constructor;return Go(n)&&t instanceof n?n.prototype:t instanceof vO?aet:null},set=mn.String,iet=mn.TypeError,J8=Object.setPrototypeOf||("__proto__"in{}?(function(){var e,t=!1,n={};try{(e=wr(Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set))(n,[]),t=n instanceof Array}catch{}return function(r,o){return ys(r),(function(a){if(typeof a=="object"||Go(a))return a;throw iet("Can't set "+set(a)+" as a prototype")})(o),t?e(r,o):r.__proto__=o,r}})():void 0),uet=Math.ceil,cet=Math.floor,xR=function(e){var t=+e;return t!=t||t===0?0:(t>0?cet:uet)(t)},det=Math.max,fet=Math.min,mO=function(e,t){var n=xR(e);return n<0?det(n+t,0):fet(n,t)},pet=Math.min,y4=function(e){return(t=e.length)>0?pet(xR(t),9007199254740991):0;var t},het=function(e){return function(t,n,r){var o,a=Hl(t),s=y4(a),i=mO(r,s);if(e&&n!=n){for(;s>i;)if((o=a[i++])!=o)return!0}else for(;s>i;i++)if((e||i in a)&&a[i]===n)return e||i||0;return!e&&-1}},vet={indexOf:het(!1)},b4={},met=vet.indexOf,bj=wr([].push),ale=function(e,t){var n,r=Hl(e),o=0,a=[];for(n in r)!zn(b4,n)&&zn(r,n)&&bj(a,n);for(;t.length>o;)zn(r,n=t[o++])&&(~met(a,n)||bj(a,n));return a},Z8=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],get=Z8.concat("length","prototype"),yet=Object.getOwnPropertyNames||function(e){return ale(e,get)},AR={f:yet},x3={f:Object.getOwnPropertySymbols},bet=wr([].concat),wet=Zv("Reflect","ownKeys")||function(e){var t=AR.f(ys(e)),n=x3.f;return n?bet(t,n(e)):t},OR=Object.keys||function(e){return ale(e,Z8)},Cet=qa?Object.defineProperties:function(e,t){ys(e);for(var n,r=Hl(t),o=OR(t),a=o.length,s=0;a>s;)Id.f(e,n=o[s++],r[n]);return e},_et=Zv("document","documentElement"),sle=d9("IE_PROTO"),mS=function(){},ile=function(e){return" +