From 1b4a56e3471f5f715280b2b0e75ce2492afa9fc0 Mon Sep 17 00:00:00 2001 From: zpc Date: Fri, 20 Feb 2026 22:16:20 +0800 Subject: [PATCH] 21 --- .../wwwroot/assets/{404-CrD8CTe6.js => 404-BRVDSvYo.js} | 2 +- .../assets/{assessment-CKsQcO9P.js => assessment-pbF6Upoc.js} | 2 +- .../wwwroot/assets/{config-inW4xTKX.js => config-rv4LKgOV.js} | 2 +- .../assets/{content-CoE0RGgm.js => content-BSV9jWnp.js} | 2 +- .../assets/{department-BA59MD1G.js => department-CGrMTjp9.js} | 2 +- .../{distribution-Bk8S5V5D.js => distribution-CfVVEqPo.js} | 2 +- .../wwwroot/assets/{index-COFXK7ce.js => index-0S59g-J9.js} | 2 +- .../wwwroot/assets/{index-HkcuRFaU.js => index-BAtkHaFY.js} | 2 +- .../wwwroot/assets/{index-D8PG8Rc8.js => index-BEa9Y37Y.js} | 2 +- .../wwwroot/assets/{index-CIioahvm.js => index-BLWTq4vE.js} | 2 +- .../wwwroot/assets/{index-CSsSD8np.js => index-BZbJ-7bH.js} | 2 +- .../src/MiAssessment.Admin/wwwroot/assets/index-B_rPf_QY.css | 1 - .../wwwroot/assets/{index-Dx3iqF4j.js => index-BwEVSuVj.js} | 2 +- .../wwwroot/assets/{index-D1BUKIhY.js => index-BxbIb8yP.js} | 2 +- .../src/MiAssessment.Admin/wwwroot/assets/index-BzpAvn-9.css | 1 + .../wwwroot/assets/{index-Lywc9iAw.js => index-C0ifigbw.js} | 2 +- .../wwwroot/assets/{index-DnDYf4Zb.js => index-CCE-d0H7.js} | 2 +- .../wwwroot/assets/{index-BsIaGxbR.js => index-CJcwRKyx.js} | 4 ++-- .../wwwroot/assets/{index-v9wh5siz.js => index-CMdxHYsD.js} | 2 +- .../wwwroot/assets/{index-lguEKq6C.js => index-CNzxsQlX.js} | 2 +- .../wwwroot/assets/{index-Bi7QAKG9.js => index-CeBsHWU_.js} | 2 +- .../wwwroot/assets/{index-mSePqRS4.js => index-Cowis3Ki.js} | 2 +- .../wwwroot/assets/{index-Bwu0eMI0.js => index-Cqp54U_W.js} | 2 +- .../wwwroot/assets/{index-DHLMPAUF.js => index-D31x_wbW.js} | 2 +- .../wwwroot/assets/{index-CDRG7nDQ.js => index-DBRSFLjd.js} | 2 +- .../wwwroot/assets/{index-D9B4oVpy.js => index-DNukX_JB.js} | 2 +- .../wwwroot/assets/{index-C3FaznTu.js => index-DfwoE1L4.js} | 2 +- .../wwwroot/assets/{index-sTKEEg6f.js => index-DhlnEG4X.js} | 2 +- .../wwwroot/assets/{index-Cszekvzh.js => index-DoiofAKi.js} | 2 +- .../wwwroot/assets/{index-Dohy6c1V.js => index-Dw6nUBUg.js} | 2 +- .../wwwroot/assets/{index-CYWJ-Th2.js => index-Dy3V-uaE.js} | 2 +- .../wwwroot/assets/{index-DBfUyTG1.js => index-PKkdanWm.js} | 2 +- .../wwwroot/assets/{index-BFBQYkSb.js => index-U2Ndf4KH.js} | 2 +- .../src/MiAssessment.Admin/wwwroot/assets/index-WS-yoiJc.js | 1 - .../wwwroot/assets/{index-Fkyf--j_.js => index-extwAH6t.js} | 2 +- .../src/MiAssessment.Admin/wwwroot/assets/index-qU0doopF.js | 1 + .../wwwroot/assets/{index-VAuxenbw.js => index-zcTKDpLD.js} | 2 +- .../{miniprogram-BnX9rjn1.js => miniprogram-CugR1aVC.js} | 2 +- .../assets/{payment-CAhZ9vHc.js => payment-1vnbCmrB.js} | 2 +- .../assets/{permission-DVpyn3g_.js => permission-CpmDm0Md.js} | 2 +- .../assets/{planner-BuJWI647.js => planner-DuwciqnH.js} | 2 +- .../wwwroot/assets/{role-DeNQI9K8.js => role-CjnkgtRA.js} | 2 +- .../wwwroot/assets/{upload-BdDxilH0.js => upload-CpRf_gCY.js} | 2 +- .../wwwroot/assets/{user-D5_XWilM.js => user-md0sNmmV.js} | 2 +- server/MiAssessment/src/MiAssessment.Admin/wwwroot/index.html | 2 +- 45 files changed, 44 insertions(+), 44 deletions(-) rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{404-CrD8CTe6.js => 404-BRVDSvYo.js} (88%) rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{assessment-CKsQcO9P.js => assessment-pbF6Upoc.js} (96%) rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{config-inW4xTKX.js => config-rv4LKgOV.js} (92%) rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{content-CoE0RGgm.js => content-BSV9jWnp.js} (94%) rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{department-BA59MD1G.js => department-CGrMTjp9.js} (88%) rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{distribution-Bk8S5V5D.js => distribution-CfVVEqPo.js} (95%) rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{index-COFXK7ce.js => index-0S59g-J9.js} (71%) rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{index-HkcuRFaU.js => index-BAtkHaFY.js} (95%) rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{index-D8PG8Rc8.js => index-BEa9Y37Y.js} (90%) rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{index-CIioahvm.js => index-BLWTq4vE.js} (98%) rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{index-CSsSD8np.js => index-BZbJ-7bH.js} (99%) delete mode 100644 server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-B_rPf_QY.css rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{index-Dx3iqF4j.js => index-BwEVSuVj.js} (98%) rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{index-D1BUKIhY.js => index-BxbIb8yP.js} (98%) create mode 100644 server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BzpAvn-9.css rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{index-Lywc9iAw.js => index-C0ifigbw.js} (99%) rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{index-DnDYf4Zb.js => index-CCE-d0H7.js} (98%) rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{index-BsIaGxbR.js => index-CJcwRKyx.js} (99%) rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{index-v9wh5siz.js => index-CMdxHYsD.js} (98%) rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{index-lguEKq6C.js => index-CNzxsQlX.js} (98%) rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{index-Bi7QAKG9.js => index-CeBsHWU_.js} (98%) rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{index-mSePqRS4.js => index-Cowis3Ki.js} (98%) rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{index-Bwu0eMI0.js => index-Cqp54U_W.js} (98%) rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{index-DHLMPAUF.js => index-D31x_wbW.js} (99%) rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{index-CDRG7nDQ.js => index-DBRSFLjd.js} (97%) rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{index-D9B4oVpy.js => index-DNukX_JB.js} (97%) rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{index-C3FaznTu.js => index-DfwoE1L4.js} (98%) rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{index-sTKEEg6f.js => index-DhlnEG4X.js} (98%) rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{index-Cszekvzh.js => index-DoiofAKi.js} (99%) rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{index-Dohy6c1V.js => index-Dw6nUBUg.js} (97%) rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{index-CYWJ-Th2.js => index-Dy3V-uaE.js} (99%) rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{index-DBfUyTG1.js => index-PKkdanWm.js} (97%) rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{index-BFBQYkSb.js => index-U2Ndf4KH.js} (98%) delete mode 100644 server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-WS-yoiJc.js rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{index-Fkyf--j_.js => index-extwAH6t.js} (98%) create mode 100644 server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-qU0doopF.js rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{index-VAuxenbw.js => index-zcTKDpLD.js} (99%) rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{miniprogram-BnX9rjn1.js => miniprogram-CugR1aVC.js} (97%) rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{payment-CAhZ9vHc.js => payment-1vnbCmrB.js} (98%) rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{permission-DVpyn3g_.js => permission-CpmDm0Md.js} (85%) rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{planner-BuJWI647.js => planner-DuwciqnH.js} (92%) rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{role-DeNQI9K8.js => role-CjnkgtRA.js} (92%) rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{upload-BdDxilH0.js => upload-CpRf_gCY.js} (98%) rename server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/{user-D5_XWilM.js => user-md0sNmmV.js} (96%) diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/404-CrD8CTe6.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/404-BRVDSvYo.js similarity index 88% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/404-CrD8CTe6.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/404-BRVDSvYo.js index 1b27dac..2588b43 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/404-CrD8CTe6.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/404-BRVDSvYo.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-BsIaGxbR.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-CJcwRKyx.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-CKsQcO9P.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/assessment-pbF6Upoc.js similarity index 96% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/assessment-CKsQcO9P.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/assessment-pbF6Upoc.js index ece12ea..867aa1c 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/assessment-CKsQcO9P.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/assessment-pbF6Upoc.js @@ -1 +1 @@ -import{R as t}from"./index-BsIaGxbR.js";function n(e){return t({url:"/admin/assessment/type/getList",method:"get",params:e})}function a(e){return t({url:"/admin/assessment/type/create",method:"post",data:e})}function o(e){return t({url:"/admin/assessment/type/update",method:"post",data:e})}function u(e){return t({url:"/admin/assessment/type/delete",method:"post",data:{id:e}})}function r(e){return t({url:"/admin/assessment/type/updateStatus",method:"post",data:e})}function m(e){return t({url:"/admin/assessment/question/getList",method:"get",params:e})}function i(e){return t({url:"/admin/assessment/question/create",method:"post",data:e})}function d(e){return t({url:"/admin/assessment/question/update",method:"post",data:e})}function p(e){return t({url:"/admin/assessment/question/delete",method:"post",data:{id:e}})}function c(e){return t({url:"/admin/assessment/question/batchImport",method:"post",data:e,headers:{"Content-Type":"multipart/form-data"}})}function l(e){return t({url:"/admin/assessment/category/getTree",method:"get",params:{assessmentTypeId:e}})}function g(e){return t({url:"/admin/assessment/category/create",method:"post",data:e})}function h(e){return t({url:"/admin/assessment/category/update",method:"post",data:e})}function f(e){return t({url:"/admin/assessment/category/delete",method:"post",data:{id:e}})}function y(e){return t({url:"/admin/assessment/mapping/getByQuestion",method:"get",params:{questionId:e}})}function C(e){return t({url:"/admin/assessment/mapping/batchUpdate",method:"post",data:e})}function T(e){return t({url:"/admin/assessment/conclusion/getList",method:"get",params:{categoryId:e}})}function q(e){return t({url:"/admin/assessment/conclusion/create",method:"post",data:e})}function Q(e){return t({url:"/admin/assessment/conclusion/update",method:"post",data:e})}function L(e){return t({url:"/admin/assessment/conclusion/delete",method:"post",data:{id:e}})}export{l as a,L as b,g as c,f as d,Q as e,q as f,n as g,T as h,m as i,p as j,d as k,i as l,C as m,c as n,y as o,r as p,u as q,o as r,a as s,h as u}; +import{R as t}from"./index-CJcwRKyx.js";function n(e){return t({url:"/admin/assessment/type/getList",method:"get",params:e})}function a(e){return t({url:"/admin/assessment/type/create",method:"post",data:e})}function o(e){return t({url:"/admin/assessment/type/update",method:"post",data:e})}function u(e){return t({url:"/admin/assessment/type/delete",method:"post",data:{id:e}})}function r(e){return t({url:"/admin/assessment/type/updateStatus",method:"post",data:e})}function m(e){return t({url:"/admin/assessment/question/getList",method:"get",params:e})}function i(e){return t({url:"/admin/assessment/question/create",method:"post",data:e})}function d(e){return t({url:"/admin/assessment/question/update",method:"post",data:e})}function p(e){return t({url:"/admin/assessment/question/delete",method:"post",data:{id:e}})}function c(e){return t({url:"/admin/assessment/question/batchImport",method:"post",data:e,headers:{"Content-Type":"multipart/form-data"}})}function l(e){return t({url:"/admin/assessment/category/getTree",method:"get",params:{assessmentTypeId:e}})}function g(e){return t({url:"/admin/assessment/category/create",method:"post",data:e})}function h(e){return t({url:"/admin/assessment/category/update",method:"post",data:e})}function f(e){return t({url:"/admin/assessment/category/delete",method:"post",data:{id:e}})}function y(e){return t({url:"/admin/assessment/mapping/getByQuestion",method:"get",params:{questionId:e}})}function C(e){return t({url:"/admin/assessment/mapping/batchUpdate",method:"post",data:e})}function T(e){return t({url:"/admin/assessment/conclusion/getList",method:"get",params:{categoryId:e}})}function q(e){return t({url:"/admin/assessment/conclusion/create",method:"post",data:e})}function Q(e){return t({url:"/admin/assessment/conclusion/update",method:"post",data:e})}function L(e){return t({url:"/admin/assessment/conclusion/delete",method:"post",data:{id:e}})}export{l as a,L as b,g as c,f as d,Q as e,q as f,n as g,T as h,m as i,p as j,d as k,i as l,C as m,c as n,y as o,r as p,u as q,o as r,a as s,h as u}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/config-inW4xTKX.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/config-rv4LKgOV.js similarity index 92% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/config-inW4xTKX.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/config-rv4LKgOV.js index ddfd8e0..38fcabf 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/config-inW4xTKX.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/config-rv4LKgOV.js @@ -1 +1 @@ -import{R as t}from"./index-BsIaGxbR.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{R as t}from"./index-CJcwRKyx.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-CoE0RGgm.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/content-BSV9jWnp.js similarity index 94% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/content-CoE0RGgm.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/content-BSV9jWnp.js index 70e7c30..be62767 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/content-CoE0RGgm.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/content-BSV9jWnp.js @@ -1 +1 @@ -import{R as n}from"./index-BsIaGxbR.js";function o(t){return n({url:"/admin/content/banner/getList",method:"get",params:t})}function r(t){return n({url:"/admin/content/banner/create",method:"post",data:t})}function a(t){return n({url:"/admin/content/banner/update",method:"post",data:t})}function u(t){return n({url:"/admin/content/banner/delete",method:"post",data:{id:t}})}function d(t){return n({url:"/admin/content/banner/updateStatus",method:"post",data:t})}function i(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})}export{d as a,a as b,r as c,u as d,m as e,l as f,o as g,p as h,c as i,s as j,i as u}; +import{R as n}from"./index-CJcwRKyx.js";function o(t){return n({url:"/admin/content/banner/getList",method:"get",params:t})}function r(t){return n({url:"/admin/content/banner/create",method:"post",data:t})}function a(t){return n({url:"/admin/content/banner/update",method:"post",data:t})}function u(t){return n({url:"/admin/content/banner/delete",method:"post",data:{id:t}})}function d(t){return n({url:"/admin/content/banner/updateStatus",method:"post",data:t})}function i(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})}export{d as a,a as b,r as c,u as d,m as e,l as f,o as g,p as h,c as i,s as j,i as u}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/department-BA59MD1G.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/department-CGrMTjp9.js similarity index 88% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/department-BA59MD1G.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/department-CGrMTjp9.js index 012ae41..0276dc4 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/department-BA59MD1G.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/department-CGrMTjp9.js @@ -1 +1 @@ -import{R as t}from"./index-BsIaGxbR.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{R as t}from"./index-CJcwRKyx.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-Bk8S5V5D.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/distribution-CfVVEqPo.js similarity index 95% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/distribution-Bk8S5V5D.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/distribution-CfVVEqPo.js index d66f12c..f5c2c97 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/distribution-Bk8S5V5D.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/distribution-CfVVEqPo.js @@ -1 +1 @@ -import{R as i}from"./index-BsIaGxbR.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{R as i}from"./index-CJcwRKyx.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-COFXK7ce.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-0S59g-J9.js similarity index 71% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-COFXK7ce.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-0S59g-J9.js index 2fc5f41..960df91 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-COFXK7ce.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-0S59g-J9.js @@ -1 +1 @@ -import s from"./upload-BdDxilH0.js";import p from"./miniprogram-BnX9rjn1.js";import i from"./payment-CAhZ9vHc.js";import _ from"./user-D5_XWilM.js";import{d,r as c,g as r,c as f,k as u,e,w as a,_ as b}from"./index-BsIaGxbR.js";import"./config-inW4xTKX.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-CpRf_gCY.js";import p from"./miniprogram-CugR1aVC.js";import i from"./payment-1vnbCmrB.js";import _ from"./user-md0sNmmV.js";import{d,r as c,g as r,c as f,k as u,e,w as a,_ as b}from"./index-CJcwRKyx.js";import"./config-rv4LKgOV.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-HkcuRFaU.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BAtkHaFY.js similarity index 95% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-HkcuRFaU.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BAtkHaFY.js index 4a9eada..0b21168 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-HkcuRFaU.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BAtkHaFY.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-BsIaGxbR.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-CJcwRKyx.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-D8PG8Rc8.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BEa9Y37Y.js similarity index 90% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-D8PG8Rc8.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BEa9Y37Y.js index e1a4b8c..9378662 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-D8PG8Rc8.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BEa9Y37Y.js @@ -1 +1 @@ -import{d as v,u as x,v as b,c as u,e as t,w as a,g as r,t as n,x as o,F as g,y as k,b as N,k as c,z as h,_ as y}from"./index-BsIaGxbR.js";const B={class:"page-container"},C=v({__name:"index",setup(I){const i=x(),s=b(()=>i.userInfo);return(S,_)=>{const l=r("el-descriptions-item"),p=r("el-tag"),m=r("el-descriptions"),f=r("el-card");return c(),u("div",B,[t(f,null,{header:a(()=>[..._[0]||(_[0]=[N("span",null,"个人中心",-1)])]),default:a(()=>[t(m,{column:2,border:""},{default:a(()=>[t(l,{label:"用户名"},{default:a(()=>{var e;return[n(o((e=s.value)==null?void 0:e.username),1)]}),_:1}),t(l,{label:"姓名"},{default:a(()=>{var e;return[n(o(((e=s.value)==null?void 0:e.realName)||"-"),1)]}),_:1}),t(l,{label:"手机号"},{default:a(()=>{var e;return[n(o(((e=s.value)==null?void 0:e.phone)||"-"),1)]}),_:1}),t(l,{label:"邮箱"},{default:a(()=>{var e;return[n(o(((e=s.value)==null?void 0:e.email)||"-"),1)]}),_:1}),t(l,{label:"部门"},{default:a(()=>{var e;return[n(o(((e=s.value)==null?void 0:e.departmentName)||"-"),1)]}),_:1}),t(l,{label:"角色"},{default:a(()=>{var e;return[(c(!0),u(g,null,k((e=s.value)==null?void 0:e.roles,d=>(c(),h(p,{key:d,size:"small",style:{"margin-right":"4px"}},{default:a(()=>[n(o(d),1)]),_:2},1024))),128))]}),_:1})]),_:1})]),_:1})])}}}),w=y(C,[["__scopeId","data-v-e4ec3187"]]);export{w as default}; +import{d as v,u as x,v as b,c as u,e as t,w as a,g as r,t as n,x as o,F as g,y as k,b as N,k as c,z as h,_ as y}from"./index-CJcwRKyx.js";const B={class:"page-container"},C=v({__name:"index",setup(I){const i=x(),s=b(()=>i.userInfo);return(S,_)=>{const l=r("el-descriptions-item"),p=r("el-tag"),m=r("el-descriptions"),f=r("el-card");return c(),u("div",B,[t(f,null,{header:a(()=>[..._[0]||(_[0]=[N("span",null,"个人中心",-1)])]),default:a(()=>[t(m,{column:2,border:""},{default:a(()=>[t(l,{label:"用户名"},{default:a(()=>{var e;return[n(o((e=s.value)==null?void 0:e.username),1)]}),_:1}),t(l,{label:"姓名"},{default:a(()=>{var e;return[n(o(((e=s.value)==null?void 0:e.realName)||"-"),1)]}),_:1}),t(l,{label:"手机号"},{default:a(()=>{var e;return[n(o(((e=s.value)==null?void 0:e.phone)||"-"),1)]}),_:1}),t(l,{label:"邮箱"},{default:a(()=>{var e;return[n(o(((e=s.value)==null?void 0:e.email)||"-"),1)]}),_:1}),t(l,{label:"部门"},{default:a(()=>{var e;return[n(o(((e=s.value)==null?void 0:e.departmentName)||"-"),1)]}),_:1}),t(l,{label:"角色"},{default:a(()=>{var e;return[(c(!0),u(g,null,k((e=s.value)==null?void 0:e.roles,d=>(c(),h(p,{key:d,size:"small",style:{"margin-right":"4px"}},{default:a(()=>[n(o(d),1)]),_:2},1024))),128))]}),_:1})]),_:1})]),_:1})])}}}),w=y(C,[["__scopeId","data-v-e4ec3187"]]);export{w as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CIioahvm.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BLWTq4vE.js similarity index 98% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CIioahvm.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BLWTq4vE.js index 835fa0f..5f456b9 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CIioahvm.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BLWTq4vE.js @@ -1 +1 @@ -import{d as Y,r as f,a as q,o as ee,g as i,B as T,c as te,k as v,b as _,e as t,C as b,z as h,w as l,t as g,l as z,D as ae,f as le,J as ne,L as oe,s as se,x as ie,Q as re,Z as de,E as C,W as ue,_ as pe}from"./index-BsIaGxbR.js";import{g as me,c as ce,d as fe,f as ge,h as ve}from"./planner-BuJWI647.js";const _e={class:"page-container"},be={class:"page-header"},Ve={class:"price"},ye={class:"pagination-container"},xe=Y({__name:"index",setup(he){const w=f(!1),P=f([]),B=f(0),s=q({pageIndex:1,pageSize:10,name:void 0,status:void 0}),p=f(!1),k=f(""),S=f(),U=f(!1),o=q({id:void 0,name:"",avatar:"",title:"",intro:"",price:0,sort:0,status:1}),R={name:[{required:!0,message:"请输入姓名",trigger:"blur"}],avatar:[{required:!0,message:"请上传头像",trigger:"change"}],price:[{required:!0,message:"请输入价格",trigger:"blur"},{validator:(n,e,m)=>{e<=0?m(new Error("价格必须大于0")):m()},trigger:"blur"}],status:[{required:!0,message:"请选择状态",trigger:"change"}]},d=async()=>{w.value=!0;try{const n=await me(s);n.code===0&&(P.value=n.data.items,B.value=n.data.total)}finally{w.value=!1}},D=()=>{s.pageIndex=1,d()},j=()=>{s.name=void 0,s.status=void 0,s.pageIndex=1,d()},L=n=>{s.pageSize=n,d()},M=n=>{s.pageIndex=n,d()},N=({prop:n,order:e})=>{console.log("Sort changed:",n,e),d()},K=()=>{k.value="新增规划师",Object.assign(o,{id:void 0,name:"",avatar:"",title:"",intro:"",price:0,sort:0,status:1}),p.value=!0},O=n=>{k.value="编辑规划师",Object.assign(o,{id:n.id,name:n.name,avatar:n.avatar,title:n.title,intro:n.intro,price:n.price,sort:n.sort,status:n.status}),p.value=!0},A=async()=>{if(S.value){await S.value.validate(),U.value=!0;try{o.id?(await ce(o)).code===0&&(C.success("更新成功"),p.value=!1,d()):(await fe(o)).code===0&&(C.success("创建成功"),p.value=!1,d())}finally{U.value=!1}}},F=async n=>{const e={id:n.id,status:n.status};(await ge(e)).code===0?C.success("状态更新成功"):n.status=n.status===1?0:1},J=n=>{ue.confirm(`确定要删除规划师"${n.name}"吗?`,"提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(async()=>{(await ve(n.id)).code===0&&(C.success("删除成功"),d())}).catch(()=>{})};return ee(()=>{d()}),(n,e)=>{const m=i("el-icon"),c=i("el-button"),V=i("el-input"),r=i("el-form-item"),I=i("el-form"),$=i("el-card"),Q=i("el-avatar"),u=i("el-table-column"),W=i("el-switch"),Z=i("el-table"),G=i("el-pagination"),E=i("el-input-number"),H=i("el-dialog"),y=T("permission"),X=T("loading");return v(),te("div",_e,[_("div",be,[e[14]||(e[14]=_("h2",null,"规划师管理",-1)),b((v(),h(c,{type:"primary",onClick:K},{default:l(()=>[t(m,null,{default:l(()=>[t(z(ae))]),_:1}),e[13]||(e[13]=g("新增规划师 ",-1))]),_:1})),[[y,"planner:create"]])]),t($,{class:"search-card",shadow:"never"},{default:l(()=>[t(I,{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(ne,{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(oe))]),_:1}),e[15]||(e[15]=g("搜索 ",-1))]),_:1}),t(c,{onClick:j},{default:l(()=>[t(m,null,{default:l(()=>[t(z(se))]),_:1}),e[16]||(e[16]=g("重置 ",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),t($,{class:"table-card",shadow:"never"},{default:l(()=>[b((v(),h(Z,{data:P.value,"row-key":"id",onSortChange:N},{default:l(()=>[t(u,{label:"头像",width:"80"},{default:l(({row:a})=>[t(Q,{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:"price",label:"价格",width:"100",align:"right"},{default:l(({row:a})=>[_("span",Ve,"¥"+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(W,{modelValue:a.status,"onUpdate:modelValue":x=>a.status=x,"active-value":1,"inactive-value":0,onChange:x=>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((v(),h(c,{link:"",type:"primary",onClick:x=>O(a)},{default:l(()=>[...e[17]||(e[17]=[g("编辑",-1)])]),_:1},8,["onClick"])),[[y,"planner:update"]]),b((v(),h(c,{link:"",type:"danger",onClick:x=>J(a)},{default:l(()=>[...e[18]||(e[18]=[g("删除",-1)])]),_:1},8,["onClick"])),[[y,"planner:delete"]])]),_:1})]),_:1},8,["data"])),[[X,w.value]]),_("div",ye,[t(G,{"current-page":s.pageIndex,"onUpdate:currentPage":e[2]||(e[2]=a=>s.pageIndex=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:L,onCurrentChange:M},null,8,["current-page","page-size","total"])])]),_:1}),t(H,{modelValue:p.value,"onUpdate:modelValue":e[12]||(e[12]=a=>p.value=a),title:k.value,width:"600px","destroy-on-close":""},{footer:l(()=>[t(c,{onClick:e[11]||(e[11]=a=>p.value=!1)},{default:l(()=>[...e[20]||(e[20]=[g("取消",-1)])]),_:1}),t(c,{type:"primary",loading:U.value,onClick:A},{default:l(()=>[...e[21]||(e[21]=[g("确定",-1)])]),_:1},8,["loading"])]),default:l(()=>[t(I,{ref_key:"formRef",ref:S,model:o,rules:R,"label-width":"80px"},{default:l(()=>[t(r,{label:"姓名",prop:"name"},{default:l(()=>[t(V,{modelValue:o.name,"onUpdate:modelValue":e[4]||(e[4]=a=>o.name=a),placeholder:"请输入姓名",maxlength:"50"},null,8,["modelValue"])]),_:1}),t(r,{label:"头像",prop:"avatar"},{default:l(()=>[t(re,{modelValue:o.avatar,"onUpdate:modelValue":e[5]||(e[5]=a=>o.avatar=a),limit:1},null,8,["modelValue"])]),_:1}),t(r,{label:"职称",prop:"title"},{default:l(()=>[t(V,{modelValue:o.title,"onUpdate:modelValue":e[6]||(e[6]=a=>o.title=a),placeholder:"请输入职称",maxlength:"100"},null,8,["modelValue"])]),_:1}),t(r,{label:"简介",prop:"intro"},{default:l(()=>[t(V,{modelValue:o.intro,"onUpdate:modelValue":e[7]||(e[7]=a=>o.intro=a),type:"textarea",rows:4,placeholder:"请输入简介",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1}),t(r,{label:"价格",prop:"price"},{default:l(()=>[t(E,{modelValue:o.price,"onUpdate:modelValue":e[8]||(e[8]=a=>o.price=a),min:.01,precision:2,step:10,"controls-position":"right",style:{width:"200px"}},null,8,["modelValue"]),e[19]||(e[19]=_("span",{class:"form-tip"},"元",-1))]),_:1}),t(r,{label:"排序",prop:"sort"},{default:l(()=>[t(E,{modelValue:o.sort,"onUpdate:modelValue":e[9]||(e[9]=a=>o.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:o.status,"onUpdate:modelValue":e[10]||(e[10]=a=>o.status=a),"dict-type":"common_status"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}}),Se=pe(xe,[["__scopeId","data-v-bbe27142"]]);export{Se as default}; +import{d as Y,r as f,a as q,o as ee,g as i,B as T,c as te,k as v,b as _,e as t,C as b,z as h,w as l,t as g,l as z,D as ae,f as le,J as ne,L as oe,s as se,x as ie,Q as re,Z as de,E as C,W as ue,_ as pe}from"./index-CJcwRKyx.js";import{g as me,c as ce,d as fe,f as ge,h as ve}from"./planner-DuwciqnH.js";const _e={class:"page-container"},be={class:"page-header"},Ve={class:"price"},ye={class:"pagination-container"},xe=Y({__name:"index",setup(he){const w=f(!1),P=f([]),B=f(0),s=q({pageIndex:1,pageSize:10,name:void 0,status:void 0}),p=f(!1),k=f(""),S=f(),U=f(!1),o=q({id:void 0,name:"",avatar:"",title:"",intro:"",price:0,sort:0,status:1}),R={name:[{required:!0,message:"请输入姓名",trigger:"blur"}],avatar:[{required:!0,message:"请上传头像",trigger:"change"}],price:[{required:!0,message:"请输入价格",trigger:"blur"},{validator:(n,e,m)=>{e<=0?m(new Error("价格必须大于0")):m()},trigger:"blur"}],status:[{required:!0,message:"请选择状态",trigger:"change"}]},d=async()=>{w.value=!0;try{const n=await me(s);n.code===0&&(P.value=n.data.items,B.value=n.data.total)}finally{w.value=!1}},D=()=>{s.pageIndex=1,d()},j=()=>{s.name=void 0,s.status=void 0,s.pageIndex=1,d()},L=n=>{s.pageSize=n,d()},M=n=>{s.pageIndex=n,d()},N=({prop:n,order:e})=>{console.log("Sort changed:",n,e),d()},K=()=>{k.value="新增规划师",Object.assign(o,{id:void 0,name:"",avatar:"",title:"",intro:"",price:0,sort:0,status:1}),p.value=!0},O=n=>{k.value="编辑规划师",Object.assign(o,{id:n.id,name:n.name,avatar:n.avatar,title:n.title,intro:n.intro,price:n.price,sort:n.sort,status:n.status}),p.value=!0},A=async()=>{if(S.value){await S.value.validate(),U.value=!0;try{o.id?(await ce(o)).code===0&&(C.success("更新成功"),p.value=!1,d()):(await fe(o)).code===0&&(C.success("创建成功"),p.value=!1,d())}finally{U.value=!1}}},F=async n=>{const e={id:n.id,status:n.status};(await ge(e)).code===0?C.success("状态更新成功"):n.status=n.status===1?0:1},J=n=>{ue.confirm(`确定要删除规划师"${n.name}"吗?`,"提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(async()=>{(await ve(n.id)).code===0&&(C.success("删除成功"),d())}).catch(()=>{})};return ee(()=>{d()}),(n,e)=>{const m=i("el-icon"),c=i("el-button"),V=i("el-input"),r=i("el-form-item"),I=i("el-form"),$=i("el-card"),Q=i("el-avatar"),u=i("el-table-column"),W=i("el-switch"),Z=i("el-table"),G=i("el-pagination"),E=i("el-input-number"),H=i("el-dialog"),y=T("permission"),X=T("loading");return v(),te("div",_e,[_("div",be,[e[14]||(e[14]=_("h2",null,"规划师管理",-1)),b((v(),h(c,{type:"primary",onClick:K},{default:l(()=>[t(m,null,{default:l(()=>[t(z(ae))]),_:1}),e[13]||(e[13]=g("新增规划师 ",-1))]),_:1})),[[y,"planner:create"]])]),t($,{class:"search-card",shadow:"never"},{default:l(()=>[t(I,{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(ne,{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(oe))]),_:1}),e[15]||(e[15]=g("搜索 ",-1))]),_:1}),t(c,{onClick:j},{default:l(()=>[t(m,null,{default:l(()=>[t(z(se))]),_:1}),e[16]||(e[16]=g("重置 ",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),t($,{class:"table-card",shadow:"never"},{default:l(()=>[b((v(),h(Z,{data:P.value,"row-key":"id",onSortChange:N},{default:l(()=>[t(u,{label:"头像",width:"80"},{default:l(({row:a})=>[t(Q,{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:"price",label:"价格",width:"100",align:"right"},{default:l(({row:a})=>[_("span",Ve,"¥"+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(W,{modelValue:a.status,"onUpdate:modelValue":x=>a.status=x,"active-value":1,"inactive-value":0,onChange:x=>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((v(),h(c,{link:"",type:"primary",onClick:x=>O(a)},{default:l(()=>[...e[17]||(e[17]=[g("编辑",-1)])]),_:1},8,["onClick"])),[[y,"planner:update"]]),b((v(),h(c,{link:"",type:"danger",onClick:x=>J(a)},{default:l(()=>[...e[18]||(e[18]=[g("删除",-1)])]),_:1},8,["onClick"])),[[y,"planner:delete"]])]),_:1})]),_:1},8,["data"])),[[X,w.value]]),_("div",ye,[t(G,{"current-page":s.pageIndex,"onUpdate:currentPage":e[2]||(e[2]=a=>s.pageIndex=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:L,onCurrentChange:M},null,8,["current-page","page-size","total"])])]),_:1}),t(H,{modelValue:p.value,"onUpdate:modelValue":e[12]||(e[12]=a=>p.value=a),title:k.value,width:"600px","destroy-on-close":""},{footer:l(()=>[t(c,{onClick:e[11]||(e[11]=a=>p.value=!1)},{default:l(()=>[...e[20]||(e[20]=[g("取消",-1)])]),_:1}),t(c,{type:"primary",loading:U.value,onClick:A},{default:l(()=>[...e[21]||(e[21]=[g("确定",-1)])]),_:1},8,["loading"])]),default:l(()=>[t(I,{ref_key:"formRef",ref:S,model:o,rules:R,"label-width":"80px"},{default:l(()=>[t(r,{label:"姓名",prop:"name"},{default:l(()=>[t(V,{modelValue:o.name,"onUpdate:modelValue":e[4]||(e[4]=a=>o.name=a),placeholder:"请输入姓名",maxlength:"50"},null,8,["modelValue"])]),_:1}),t(r,{label:"头像",prop:"avatar"},{default:l(()=>[t(re,{modelValue:o.avatar,"onUpdate:modelValue":e[5]||(e[5]=a=>o.avatar=a),limit:1},null,8,["modelValue"])]),_:1}),t(r,{label:"职称",prop:"title"},{default:l(()=>[t(V,{modelValue:o.title,"onUpdate:modelValue":e[6]||(e[6]=a=>o.title=a),placeholder:"请输入职称",maxlength:"100"},null,8,["modelValue"])]),_:1}),t(r,{label:"简介",prop:"intro"},{default:l(()=>[t(V,{modelValue:o.intro,"onUpdate:modelValue":e[7]||(e[7]=a=>o.intro=a),type:"textarea",rows:4,placeholder:"请输入简介",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1}),t(r,{label:"价格",prop:"price"},{default:l(()=>[t(E,{modelValue:o.price,"onUpdate:modelValue":e[8]||(e[8]=a=>o.price=a),min:.01,precision:2,step:10,"controls-position":"right",style:{width:"200px"}},null,8,["modelValue"]),e[19]||(e[19]=_("span",{class:"form-tip"},"元",-1))]),_:1}),t(r,{label:"排序",prop:"sort"},{default:l(()=>[t(E,{modelValue:o.sort,"onUpdate:modelValue":e[9]||(e[9]=a=>o.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:o.status,"onUpdate:modelValue":e[10]||(e[10]=a=>o.status=a),"dict-type":"common_status"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}}),Se=pe(xe,[["__scopeId","data-v-bbe27142"]]);export{Se as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CSsSD8np.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BZbJ-7bH.js similarity index 99% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CSsSD8np.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BZbJ-7bH.js index c0fe343..edf6b47 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CSsSD8np.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BZbJ-7bH.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,$ as pu,a0 as _o,a1 as s_,v as Tr,a2 as So,a3 as bo,a4 as ng,o as Ff,a5 as l_,a6 as gu,V as u_,a7 as Us,a8 as f_,a9 as h_,aa as v_,R 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,ab as av,ac as y_,ad as ov,ae as __,af as S_,ag as sv,ah as lv,ai as b_,O as w_,aj as x_,E as Xs,_ as T_}from"./index-BsIaGxbR.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,$ as pu,a0 as _o,a1 as s_,v as Tr,a2 as So,a3 as bo,a4 as ng,o as Ff,a5 as l_,a6 as gu,V as u_,a7 as Us,a8 as f_,a9 as h_,aa as v_,R 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,ab as av,ac as y_,ad as ov,ae as __,af as S_,ag as sv,ah as lv,ai as b_,O as w_,aj as x_,E as Xs,_ as T_}from"./index-CJcwRKyx.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-B_rPf_QY.css b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-B_rPf_QY.css deleted file mode 100644 index 862939c..0000000 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-B_rPf_QY.css +++ /dev/null @@ -1 +0,0 @@ -.user-container[data-v-d9947622]{padding:0}.page-header[data-v-d9947622]{margin-bottom:16px}.header-content[data-v-d9947622]{display:flex;justify-content:space-between;align-items:center}.header-left[data-v-d9947622]{display:flex;align-items:baseline;gap:16px}.page-title[data-v-d9947622]{margin:0;font-size:20px;font-weight:600;color:var(--text-primary, #303133)}.page-description[data-v-d9947622]{font-size:14px;color:var(--text-secondary, #909399)}.search-card[data-v-d9947622]{margin-bottom:16px}.search-card[data-v-d9947622] .el-card__body{padding-bottom:2px}.table-card[data-v-d9947622]{min-height:400px}.balance-text[data-v-d9947622]{color:var(--el-color-success);font-weight:500}.pagination-wrapper[data-v-d9947622]{display:flex;justify-content:flex-end;margin-top:16px}.user-detail[data-v-d9947622]{padding:0 10px}.detail-section[data-v-d9947622]{margin-bottom:24px}.section-title[data-v-d9947622]{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)}.user-profile[data-v-d9947622]{display:flex;align-items:center;gap:16px;margin-bottom:16px;padding:16px;background:var(--bg-light, #f5f7fa);border-radius:8px}.profile-info[data-v-d9947622]{flex:1}.profile-info .nickname[data-v-d9947622]{font-size:18px;font-weight:600;color:var(--text-primary, #303133);margin-bottom:4px}.profile-info .uid[data-v-d9947622]{font-size:14px;color:var(--text-secondary, #909399)}.money-text[data-v-d9947622]{color:var(--el-color-success);font-weight:500}.stats-grid[data-v-d9947622]{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.stat-item[data-v-d9947622]{text-align:center;padding:16px;background:var(--bg-light, #f5f7fa);border-radius:8px}.stat-value[data-v-d9947622]{font-size:24px;font-weight:600;color:var(--el-color-primary);margin-bottom:4px}.stat-label[data-v-d9947622]{font-size:14px;color:var(--text-secondary, #909399)}[data-v-d9947622] .el-table{--el-table-border-color: var(--border-lighter, #ebeef5)}[data-v-d9947622] .el-table th.el-table__cell{background-color:var(--bg-light, #f5f7fa);font-weight:500}[data-v-d9947622] .el-dialog__body{padding-top:20px}[data-v-d9947622] .el-descriptions{--el-descriptions-item-bordered-label-background: var(--bg-light, #f5f7fa)} diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Dx3iqF4j.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BwEVSuVj.js similarity index 98% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Dx3iqF4j.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BwEVSuVj.js index 1262853..1c49846 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Dx3iqF4j.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BwEVSuVj.js @@ -1 +1 @@ -import{d as ie,r as h,a as re,v as ce,o as de,g as s,B as ue,c as g,k as i,e as l,w as n,b as r,t as f,l as k,D as fe,F as me,y as pe,z as m,C as S,G as b,x as T,H as ge,I as _e,J as ye,E as p,_ as ve}from"./index-BsIaGxbR.js";import{g as he,a as be,b as Te,e as we,f as Ce,h as Le}from"./assessment-CKsQcO9P.js";const ke={class:"conclusion-container"},Ve={class:"header-content"},xe={class:"header-right"},De={class:"tree-panel"},Ee={class:"tree-content"},Ne={class:"tree-node"},Ie={class:"node-label"},Ae={class:"list-panel"},ze={class:"panel-header"},Me={class:"panel-title"},Ue={key:0,class:"category-name"},Pe={key:0,class:"conclusion-count"},Se={class:"list-content"},Be=["innerHTML"],Fe=ie({__name:"index",setup(Re){const B={1:"最强",2:"较强",3:"较弱",4:"最弱"},F={1:"success",2:"primary",3:"warning",4:"danger"},R={label:"name",children:"children"},q=h(),w=h(),u=h(void 0),d=h(void 0),_=h(""),e=re({treeLoading:!1,listLoading:!1,assessmentTypes:[],categoryTree:[],conclusionList:[],dialogVisible:!1,dialogTitle:"新增结论",formData:V(),formLoading:!1,isEdit:!1}),H=ce(()=>({conclusionType:[{required:!0,message:"请选择结论类型",trigger:"change"}],title:[{required:!0,message:"请输入结论标题",trigger:"blur"},{max:100,message:"标题不能超过100个字符",trigger:"blur"}],content:[{required:!0,message:"请输入结论内容",trigger:"blur"},{max:5e3,message:"内容不能超过5000个字符",trigger:"blur"}]}));function V(){return{categoryId:void 0,conclusionType:void 0,title:"",content:""}}function O(o){return B[o]||"未知"}function $(o){return F[o]||"info"}function G(o){if(!o)return"-";const t=o.replace(/<[^>]*>/g,"").trim();return t.length>100?t.substring(0,100)+"...":t||"-"}async function Y(){var o;try{const t=await he({pageIndex:1,pageSize:100});t.code===0&&(e.assessmentTypes=((o=t.data)==null?void 0:o.list)||[],e.assessmentTypes.length>0&&!u.value&&(u.value=e.assessmentTypes[0].id,await N()))}catch(t){console.error("Failed to load assessment types:",t)}}async function N(){if(!u.value){e.categoryTree=[];return}e.treeLoading=!0,d.value=void 0,_.value="",e.conclusionList=[];try{const o=await be(u.value);if(o.code===0)e.categoryTree=o.data||[];else throw new Error(o.message||"获取分类树失败")}catch(o){const t=o instanceof Error?o.message:"获取分类树失败";p.error(t),e.categoryTree=[]}finally{e.treeLoading=!1}}async function x(){if(!d.value){e.conclusionList=[];return}e.listLoading=!0;try{const o=await Le(d.value);if(o.code===0)e.conclusionList=o.data||[];else throw new Error(o.message||"获取结论列表失败")}catch(o){const t=o instanceof Error?o.message:"获取结论列表失败";p.error(t),e.conclusionList=[]}finally{e.listLoading=!1}}function J(){N()}function j(o){d.value=o.id,_.value=o.name,x()}function K(){if(!d.value){p.warning("请先从左侧选择一个分类");return}e.isEdit=!1,e.dialogTitle="新增结论",e.formData={...V(),categoryId:d.value},e.dialogVisible=!0}function Q(o){e.isEdit=!0,e.dialogTitle="编辑结论",e.formData={id:o.id,categoryId:o.categoryId,conclusionType:String(o.conclusionType),title:o.title,content:o.content},e.dialogVisible=!0}async function W(o){try{const t=await Te(o.id);if(t.code===0)p.success("删除成功"),await x();else throw new Error(t.message||"删除失败")}catch(t){const c=t instanceof Error?t.message:"删除失败";p.error(c)}}async function X(){if(w.value){try{await w.value.validate()}catch{return}e.formLoading=!0;try{const o=e.formData,t={categoryId:o.categoryId,conclusionType:Number(o.conclusionType),title:o.title,content:o.content};let c;if(e.isEdit&&o.id?c=await we({...t,id:o.id}):c=await Ce(t),c.code===0)p.success(e.isEdit?"更新成功":"创建成功"),e.dialogVisible=!1,await x();else throw new Error(c.message||(e.isEdit?"更新失败":"创建失败"))}catch(o){const t=o instanceof Error?o.message:e.isEdit?"更新失败":"创建失败";p.error(t)}finally{e.formLoading=!1}}}function Z(){var o;(o=w.value)==null||o.resetFields(),e.formData=V()}return de(async()=>{await Y()}),(o,t)=>{const c=s("el-icon"),y=s("el-button"),D=s("el-card"),ee=s("el-option"),te=s("el-select"),v=s("el-form-item"),I=s("el-form"),A=s("el-alert"),z=s("el-tag"),oe=s("el-tree"),M=s("el-empty"),U=s("el-col"),C=s("el-table-column"),le=s("el-popconfirm"),ne=s("el-table"),ae=s("el-row"),E=s("el-input"),se=s("el-dialog"),P=ue("loading");return i(),g("div",ke,[l(D,{class:"page-header"},{default:n(()=>[r("div",Ve,[t[7]||(t[7]=r("div",{class:"header-left"},[r("h2",{class:"page-title"},"报告结论管理"),r("span",{class:"page-description"},"管理测评报告的结论内容,配置不同分数段的结论文案")],-1)),r("div",xe,[l(y,{type:"primary",disabled:!d.value,onClick:K},{default:n(()=>[l(c,null,{default:n(()=>[l(k(fe))]),_:1}),t[6]||(t[6]=f(" 新增结论 ",-1))]),_:1},8,["disabled"])])])]),_:1}),l(D,{class:"filter-card"},{default:n(()=>[l(I,{inline:""},{default:n(()=>[l(v,{label:"测评类型"},{default:n(()=>[l(te,{modelValue:u.value,"onUpdate:modelValue":t[0]||(t[0]=a=>u.value=a),placeholder:"请选择测评类型",style:{width:"280px"},onChange:J},{default:n(()=>[(i(!0),g(me,null,pe(e.assessmentTypes,a=>(i(),m(ee,{key:a.id,label:a.name,value:a.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1}),l(D,{class:"main-content-card"},{default:n(()=>[l(ae,{gutter:16},{default:n(()=>[l(U,{span:8},{default:n(()=>[r("div",De,[t[8]||(t[8]=r("div",{class:"panel-header"},[r("span",{class:"panel-title"},"分类列表")],-1)),S((i(),g("div",Ee,[u.value?e.categoryTree.length>0?(i(),m(oe,{key:1,ref_key:"treeRef",ref:q,data:e.categoryTree,props:R,"node-key":"id","highlight-current":"","default-expand-all":"",onNodeClick:j},{default:n(({node:a,data:L})=>[r("span",Ne,[r("span",Ie,T(a.label),1),L.categoryTypeName?(i(),m(z,{key:0,size:"small",type:"info"},{default:n(()=>[f(T(L.categoryTypeName),1)]),_:2},1024)):b("",!0)])]),_:1},8,["data"])):u.value&&!e.treeLoading?(i(),m(M,{key:2,description:"暂无分类数据","image-size":80})):b("",!0):(i(),m(A,{key:0,title:"请先选择测评类型",type:"info",closable:!1,"show-icon":""}))])),[[P,e.treeLoading]])])]),_:1}),l(U,{span:16},{default:n(()=>[r("div",Ae,[r("div",ze,[r("span",Me,[t[9]||(t[9]=f(" 结论列表 ",-1)),_.value?(i(),g("span",Ue," - "+T(_.value),1)):b("",!0)]),e.conclusionList.length>0?(i(),g("span",Pe," 共 "+T(e.conclusionList.length)+" 条 ",1)):b("",!0)]),S((i(),g("div",Se,[d.value?e.conclusionList.length>0?(i(),m(ne,{key:1,data:e.conclusionList,border:"",stripe:""},{default:n(()=>[l(C,{label:"结论类型",width:"120",align:"center"},{default:n(({row:a})=>[l(z,{type:$(a.conclusionType)},{default:n(()=>[f(T(a.conclusionTypeName||O(a.conclusionType)),1)]),_:2},1032,["type"])]),_:1}),l(C,{prop:"title",label:"标题","min-width":"180","show-overflow-tooltip":""}),l(C,{label:"内容预览","min-width":"250"},{default:n(({row:a})=>[r("div",{class:"content-preview",innerHTML:G(a.content)},null,8,Be)]),_:1}),l(C,{label:"操作",width:"150",fixed:"right",align:"center"},{default:n(({row:a})=>[l(y,{type:"primary",link:"",size:"small",onClick:L=>Q(a)},{default:n(()=>[l(c,null,{default:n(()=>[l(k(ge))]),_:1}),t[10]||(t[10]=f(" 编辑 ",-1))]),_:1},8,["onClick"]),l(le,{title:"确定要删除这条结论吗?","confirm-button-text":"确定","cancel-button-text":"取消",onConfirm:L=>W(a)},{reference:n(()=>[l(y,{type:"danger",link:"",size:"small"},{default:n(()=>[l(c,null,{default:n(()=>[l(k(_e))]),_:1}),t[11]||(t[11]=f(" 删除 ",-1))]),_:1})]),_:1},8,["onConfirm"])]),_:1})]),_:1},8,["data"])):d.value&&!e.listLoading?(i(),m(M,{key:2,description:"该分类下暂无结论,请点击新增结论按钮添加","image-size":80})):b("",!0):(i(),m(A,{key:0,title:"请从左侧选择一个分类以查看结论",type:"info",closable:!1,"show-icon":""}))])),[[P,e.listLoading]])])]),_:1})]),_:1})]),_:1}),l(se,{modelValue:e.dialogVisible,"onUpdate:modelValue":t[5]||(t[5]=a=>e.dialogVisible=a),title:e.dialogTitle,width:"700px","close-on-click-modal":!1,onClosed:Z},{footer:n(()=>[l(y,{onClick:t[4]||(t[4]=a=>e.dialogVisible=!1)},{default:n(()=>[...t[12]||(t[12]=[f("取消",-1)])]),_:1}),l(y,{type:"primary",loading:e.formLoading,onClick:X},{default:n(()=>[...t[13]||(t[13]=[f(" 确定 ",-1)])]),_:1},8,["loading"])]),default:n(()=>[l(I,{ref_key:"formRef",ref:w,model:e.formData,rules:H.value,"label-width":"100px","label-position":"right"},{default:n(()=>[l(v,{label:"所属分类"},{default:n(()=>[l(E,{value:_.value,disabled:""},null,8,["value"])]),_:1}),l(v,{label:"结论类型",prop:"conclusionType"},{default:n(()=>[l(k(ye),{modelValue:e.formData.conclusionType,"onUpdate:modelValue":t[1]||(t[1]=a=>e.formData.conclusionType=a),type:"conclusion_type",placeholder:"请选择结论类型",style:{width:"100%"}},null,8,["modelValue"])]),_:1}),l(v,{label:"标题",prop:"title"},{default:n(()=>[l(E,{modelValue:e.formData.title,"onUpdate:modelValue":t[2]||(t[2]=a=>e.formData.title=a),placeholder:"请输入结论标题",maxlength:"100","show-word-limit":""},null,8,["modelValue"])]),_:1}),l(v,{label:"内容",prop:"content"},{default:n(()=>[l(E,{modelValue:e.formData.content,"onUpdate:modelValue":t[3]||(t[3]=a=>e.formData.content=a),type:"textarea",placeholder:"请输入结论内容(支持HTML格式)",rows:8,maxlength:"5000","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1},8,["model","rules"])]),_:1},8,["modelValue","title"])])}}}),Oe=ve(Fe,[["__scopeId","data-v-fcf60463"]]);export{Oe as default}; +import{d as ie,r as h,a as re,v as ce,o as de,g as s,B as ue,c as g,k as i,e as l,w as n,b as r,t as f,l as k,D as fe,F as me,y as pe,z as m,C as S,G as b,x as T,H as ge,I as _e,J as ye,E as p,_ as ve}from"./index-CJcwRKyx.js";import{g as he,a as be,b as Te,e as we,f as Ce,h as Le}from"./assessment-pbF6Upoc.js";const ke={class:"conclusion-container"},Ve={class:"header-content"},xe={class:"header-right"},De={class:"tree-panel"},Ee={class:"tree-content"},Ne={class:"tree-node"},Ie={class:"node-label"},Ae={class:"list-panel"},ze={class:"panel-header"},Me={class:"panel-title"},Ue={key:0,class:"category-name"},Pe={key:0,class:"conclusion-count"},Se={class:"list-content"},Be=["innerHTML"],Fe=ie({__name:"index",setup(Re){const B={1:"最强",2:"较强",3:"较弱",4:"最弱"},F={1:"success",2:"primary",3:"warning",4:"danger"},R={label:"name",children:"children"},q=h(),w=h(),u=h(void 0),d=h(void 0),_=h(""),e=re({treeLoading:!1,listLoading:!1,assessmentTypes:[],categoryTree:[],conclusionList:[],dialogVisible:!1,dialogTitle:"新增结论",formData:V(),formLoading:!1,isEdit:!1}),H=ce(()=>({conclusionType:[{required:!0,message:"请选择结论类型",trigger:"change"}],title:[{required:!0,message:"请输入结论标题",trigger:"blur"},{max:100,message:"标题不能超过100个字符",trigger:"blur"}],content:[{required:!0,message:"请输入结论内容",trigger:"blur"},{max:5e3,message:"内容不能超过5000个字符",trigger:"blur"}]}));function V(){return{categoryId:void 0,conclusionType:void 0,title:"",content:""}}function O(o){return B[o]||"未知"}function $(o){return F[o]||"info"}function G(o){if(!o)return"-";const t=o.replace(/<[^>]*>/g,"").trim();return t.length>100?t.substring(0,100)+"...":t||"-"}async function Y(){var o;try{const t=await he({pageIndex:1,pageSize:100});t.code===0&&(e.assessmentTypes=((o=t.data)==null?void 0:o.list)||[],e.assessmentTypes.length>0&&!u.value&&(u.value=e.assessmentTypes[0].id,await N()))}catch(t){console.error("Failed to load assessment types:",t)}}async function N(){if(!u.value){e.categoryTree=[];return}e.treeLoading=!0,d.value=void 0,_.value="",e.conclusionList=[];try{const o=await be(u.value);if(o.code===0)e.categoryTree=o.data||[];else throw new Error(o.message||"获取分类树失败")}catch(o){const t=o instanceof Error?o.message:"获取分类树失败";p.error(t),e.categoryTree=[]}finally{e.treeLoading=!1}}async function x(){if(!d.value){e.conclusionList=[];return}e.listLoading=!0;try{const o=await Le(d.value);if(o.code===0)e.conclusionList=o.data||[];else throw new Error(o.message||"获取结论列表失败")}catch(o){const t=o instanceof Error?o.message:"获取结论列表失败";p.error(t),e.conclusionList=[]}finally{e.listLoading=!1}}function J(){N()}function j(o){d.value=o.id,_.value=o.name,x()}function K(){if(!d.value){p.warning("请先从左侧选择一个分类");return}e.isEdit=!1,e.dialogTitle="新增结论",e.formData={...V(),categoryId:d.value},e.dialogVisible=!0}function Q(o){e.isEdit=!0,e.dialogTitle="编辑结论",e.formData={id:o.id,categoryId:o.categoryId,conclusionType:String(o.conclusionType),title:o.title,content:o.content},e.dialogVisible=!0}async function W(o){try{const t=await Te(o.id);if(t.code===0)p.success("删除成功"),await x();else throw new Error(t.message||"删除失败")}catch(t){const c=t instanceof Error?t.message:"删除失败";p.error(c)}}async function X(){if(w.value){try{await w.value.validate()}catch{return}e.formLoading=!0;try{const o=e.formData,t={categoryId:o.categoryId,conclusionType:Number(o.conclusionType),title:o.title,content:o.content};let c;if(e.isEdit&&o.id?c=await we({...t,id:o.id}):c=await Ce(t),c.code===0)p.success(e.isEdit?"更新成功":"创建成功"),e.dialogVisible=!1,await x();else throw new Error(c.message||(e.isEdit?"更新失败":"创建失败"))}catch(o){const t=o instanceof Error?o.message:e.isEdit?"更新失败":"创建失败";p.error(t)}finally{e.formLoading=!1}}}function Z(){var o;(o=w.value)==null||o.resetFields(),e.formData=V()}return de(async()=>{await Y()}),(o,t)=>{const c=s("el-icon"),y=s("el-button"),D=s("el-card"),ee=s("el-option"),te=s("el-select"),v=s("el-form-item"),I=s("el-form"),A=s("el-alert"),z=s("el-tag"),oe=s("el-tree"),M=s("el-empty"),U=s("el-col"),C=s("el-table-column"),le=s("el-popconfirm"),ne=s("el-table"),ae=s("el-row"),E=s("el-input"),se=s("el-dialog"),P=ue("loading");return i(),g("div",ke,[l(D,{class:"page-header"},{default:n(()=>[r("div",Ve,[t[7]||(t[7]=r("div",{class:"header-left"},[r("h2",{class:"page-title"},"报告结论管理"),r("span",{class:"page-description"},"管理测评报告的结论内容,配置不同分数段的结论文案")],-1)),r("div",xe,[l(y,{type:"primary",disabled:!d.value,onClick:K},{default:n(()=>[l(c,null,{default:n(()=>[l(k(fe))]),_:1}),t[6]||(t[6]=f(" 新增结论 ",-1))]),_:1},8,["disabled"])])])]),_:1}),l(D,{class:"filter-card"},{default:n(()=>[l(I,{inline:""},{default:n(()=>[l(v,{label:"测评类型"},{default:n(()=>[l(te,{modelValue:u.value,"onUpdate:modelValue":t[0]||(t[0]=a=>u.value=a),placeholder:"请选择测评类型",style:{width:"280px"},onChange:J},{default:n(()=>[(i(!0),g(me,null,pe(e.assessmentTypes,a=>(i(),m(ee,{key:a.id,label:a.name,value:a.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1})]),_:1}),l(D,{class:"main-content-card"},{default:n(()=>[l(ae,{gutter:16},{default:n(()=>[l(U,{span:8},{default:n(()=>[r("div",De,[t[8]||(t[8]=r("div",{class:"panel-header"},[r("span",{class:"panel-title"},"分类列表")],-1)),S((i(),g("div",Ee,[u.value?e.categoryTree.length>0?(i(),m(oe,{key:1,ref_key:"treeRef",ref:q,data:e.categoryTree,props:R,"node-key":"id","highlight-current":"","default-expand-all":"",onNodeClick:j},{default:n(({node:a,data:L})=>[r("span",Ne,[r("span",Ie,T(a.label),1),L.categoryTypeName?(i(),m(z,{key:0,size:"small",type:"info"},{default:n(()=>[f(T(L.categoryTypeName),1)]),_:2},1024)):b("",!0)])]),_:1},8,["data"])):u.value&&!e.treeLoading?(i(),m(M,{key:2,description:"暂无分类数据","image-size":80})):b("",!0):(i(),m(A,{key:0,title:"请先选择测评类型",type:"info",closable:!1,"show-icon":""}))])),[[P,e.treeLoading]])])]),_:1}),l(U,{span:16},{default:n(()=>[r("div",Ae,[r("div",ze,[r("span",Me,[t[9]||(t[9]=f(" 结论列表 ",-1)),_.value?(i(),g("span",Ue," - "+T(_.value),1)):b("",!0)]),e.conclusionList.length>0?(i(),g("span",Pe," 共 "+T(e.conclusionList.length)+" 条 ",1)):b("",!0)]),S((i(),g("div",Se,[d.value?e.conclusionList.length>0?(i(),m(ne,{key:1,data:e.conclusionList,border:"",stripe:""},{default:n(()=>[l(C,{label:"结论类型",width:"120",align:"center"},{default:n(({row:a})=>[l(z,{type:$(a.conclusionType)},{default:n(()=>[f(T(a.conclusionTypeName||O(a.conclusionType)),1)]),_:2},1032,["type"])]),_:1}),l(C,{prop:"title",label:"标题","min-width":"180","show-overflow-tooltip":""}),l(C,{label:"内容预览","min-width":"250"},{default:n(({row:a})=>[r("div",{class:"content-preview",innerHTML:G(a.content)},null,8,Be)]),_:1}),l(C,{label:"操作",width:"150",fixed:"right",align:"center"},{default:n(({row:a})=>[l(y,{type:"primary",link:"",size:"small",onClick:L=>Q(a)},{default:n(()=>[l(c,null,{default:n(()=>[l(k(ge))]),_:1}),t[10]||(t[10]=f(" 编辑 ",-1))]),_:1},8,["onClick"]),l(le,{title:"确定要删除这条结论吗?","confirm-button-text":"确定","cancel-button-text":"取消",onConfirm:L=>W(a)},{reference:n(()=>[l(y,{type:"danger",link:"",size:"small"},{default:n(()=>[l(c,null,{default:n(()=>[l(k(_e))]),_:1}),t[11]||(t[11]=f(" 删除 ",-1))]),_:1})]),_:1},8,["onConfirm"])]),_:1})]),_:1},8,["data"])):d.value&&!e.listLoading?(i(),m(M,{key:2,description:"该分类下暂无结论,请点击新增结论按钮添加","image-size":80})):b("",!0):(i(),m(A,{key:0,title:"请从左侧选择一个分类以查看结论",type:"info",closable:!1,"show-icon":""}))])),[[P,e.listLoading]])])]),_:1})]),_:1})]),_:1}),l(se,{modelValue:e.dialogVisible,"onUpdate:modelValue":t[5]||(t[5]=a=>e.dialogVisible=a),title:e.dialogTitle,width:"700px","close-on-click-modal":!1,onClosed:Z},{footer:n(()=>[l(y,{onClick:t[4]||(t[4]=a=>e.dialogVisible=!1)},{default:n(()=>[...t[12]||(t[12]=[f("取消",-1)])]),_:1}),l(y,{type:"primary",loading:e.formLoading,onClick:X},{default:n(()=>[...t[13]||(t[13]=[f(" 确定 ",-1)])]),_:1},8,["loading"])]),default:n(()=>[l(I,{ref_key:"formRef",ref:w,model:e.formData,rules:H.value,"label-width":"100px","label-position":"right"},{default:n(()=>[l(v,{label:"所属分类"},{default:n(()=>[l(E,{value:_.value,disabled:""},null,8,["value"])]),_:1}),l(v,{label:"结论类型",prop:"conclusionType"},{default:n(()=>[l(k(ye),{modelValue:e.formData.conclusionType,"onUpdate:modelValue":t[1]||(t[1]=a=>e.formData.conclusionType=a),type:"conclusion_type",placeholder:"请选择结论类型",style:{width:"100%"}},null,8,["modelValue"])]),_:1}),l(v,{label:"标题",prop:"title"},{default:n(()=>[l(E,{modelValue:e.formData.title,"onUpdate:modelValue":t[2]||(t[2]=a=>e.formData.title=a),placeholder:"请输入结论标题",maxlength:"100","show-word-limit":""},null,8,["modelValue"])]),_:1}),l(v,{label:"内容",prop:"content"},{default:n(()=>[l(E,{modelValue:e.formData.content,"onUpdate:modelValue":t[3]||(t[3]=a=>e.formData.content=a),type:"textarea",placeholder:"请输入结论内容(支持HTML格式)",rows:8,maxlength:"5000","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1},8,["model","rules"])]),_:1},8,["modelValue","title"])])}}}),Oe=ve(Fe,[["__scopeId","data-v-fcf60463"]]);export{Oe as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-D1BUKIhY.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BxbIb8yP.js similarity index 98% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-D1BUKIhY.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BxbIb8yP.js index 073df26..e8ea7b5 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-D1BUKIhY.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BxbIb8yP.js @@ -1 +1 @@ -import{d as Y,r as C,a as U,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,O as re,x as S,H as de,I as ue,Q as pe,E as _,_ as me}from"./index-BsIaGxbR.js";import{e as fe,f as ge,h as ce,i as _e,j as be}from"./content-CoE0RGgm.js";const he={class:"promotion-container"},Ve={class:"header-content"},ye={class:"header-right"},ve={class:"image-error"},xe={class:"pagination-wrapper"},De=Y({__name:"index",setup(we){const k=C(),h=C(),n=U({pageIndex:1,pageSize:10,title:"",position:void 0,status:void 0}),o=U({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 I(a){const e=["primary","success","warning","info","danger"];return e[(a-1)%e.length]||"primary"}function L(a){return{1:"首页顶部",2:"首页中部",3:"首页底部",4:"详情页",5:"个人中心"}[a]||`位置${a}`}async function f(){var a,e;o.loading=!0;try{const s={pageIndex:n.pageIndex,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 x(){n.pageIndex=1,f()}function N(){n.title="",n.position=void 0,n.status=void 0,n.pageIndex=1,f()}function P(a){n.pageSize=a,n.pageIndex=1,f()}function q(a){n.pageIndex=a,f()}function T({prop:a,order:e}){console.log("Sort changed:",a,e)}function R(){o.isEdit=!1,o.dialogTitle="新增宣传图",o.formData=y(),o.dialogVisible=!0}function B(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 $(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 M(a){try{const e=await ce(a.id);if(e.code===0)_.success("删除成功"),o.tableData.length===1&&n.pageIndex>1&&n.pageIndex--,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"),D=d("el-input"),p=d("el-form-item"),w=d("el-form"),K=d("el-image"),g=d("el-table-column"),A=d("el-tag"),H=d("el-switch"),J=d("el-popconfirm"),O=d("el-table"),Q=d("el-pagination"),G=d("el-input-number"),W=d("el-dialog"),X=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:R},{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(w,{model:n,inline:""},{default:i(()=>[t(p,{label:"标题"},{default:i(()=>[t(D,{modelValue:n.title,"onUpdate:modelValue":e[0]||(e[0]=l=>n.title=l),placeholder:"请输入标题",clearable:"",onKeyup:le(x,["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:x},{default:i(()=>[t(s,null,{default:i(()=>[t(u(ie))]),_:1}),e[14]||(e[14]=m(" 搜索 ",-1))]),_:1}),t(r,{onClick:N},{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(O,{ref_key:"tableRef",ref:k,data:o.tableData,"row-key":"id",stripe:"",onSortChange:T},{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:I(l.position)},{default:i(()=>[m(S(l.positionName||L(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=>$(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=>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=>M(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",xe,[t(Q,{"current-page":n.pageIndex,"onUpdate:currentPage":e[3]||(e[3]=l=>n.pageIndex=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:P,onCurrentChange:q},null,8,["current-page","page-size","total"])])]),_:1})),[[X,o.loading]]),t(W,{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(w,{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(D,{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(De,[["__scopeId","data-v-f2fe9741"]]);export{Ee as default}; +import{d as Y,r as C,a as U,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,O as re,x as S,H as de,I as ue,Q as pe,E as _,_ as me}from"./index-CJcwRKyx.js";import{e as fe,f as ge,h as ce,i as _e,j as be}from"./content-BSV9jWnp.js";const he={class:"promotion-container"},Ve={class:"header-content"},ye={class:"header-right"},ve={class:"image-error"},xe={class:"pagination-wrapper"},De=Y({__name:"index",setup(we){const k=C(),h=C(),n=U({pageIndex:1,pageSize:10,title:"",position:void 0,status:void 0}),o=U({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 I(a){const e=["primary","success","warning","info","danger"];return e[(a-1)%e.length]||"primary"}function L(a){return{1:"首页顶部",2:"首页中部",3:"首页底部",4:"详情页",5:"个人中心"}[a]||`位置${a}`}async function f(){var a,e;o.loading=!0;try{const s={pageIndex:n.pageIndex,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 x(){n.pageIndex=1,f()}function N(){n.title="",n.position=void 0,n.status=void 0,n.pageIndex=1,f()}function P(a){n.pageSize=a,n.pageIndex=1,f()}function q(a){n.pageIndex=a,f()}function T({prop:a,order:e}){console.log("Sort changed:",a,e)}function R(){o.isEdit=!1,o.dialogTitle="新增宣传图",o.formData=y(),o.dialogVisible=!0}function B(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 $(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 M(a){try{const e=await ce(a.id);if(e.code===0)_.success("删除成功"),o.tableData.length===1&&n.pageIndex>1&&n.pageIndex--,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"),D=d("el-input"),p=d("el-form-item"),w=d("el-form"),K=d("el-image"),g=d("el-table-column"),A=d("el-tag"),H=d("el-switch"),J=d("el-popconfirm"),O=d("el-table"),Q=d("el-pagination"),G=d("el-input-number"),W=d("el-dialog"),X=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:R},{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(w,{model:n,inline:""},{default:i(()=>[t(p,{label:"标题"},{default:i(()=>[t(D,{modelValue:n.title,"onUpdate:modelValue":e[0]||(e[0]=l=>n.title=l),placeholder:"请输入标题",clearable:"",onKeyup:le(x,["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:x},{default:i(()=>[t(s,null,{default:i(()=>[t(u(ie))]),_:1}),e[14]||(e[14]=m(" 搜索 ",-1))]),_:1}),t(r,{onClick:N},{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(O,{ref_key:"tableRef",ref:k,data:o.tableData,"row-key":"id",stripe:"",onSortChange:T},{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:I(l.position)},{default:i(()=>[m(S(l.positionName||L(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=>$(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=>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=>M(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",xe,[t(Q,{"current-page":n.pageIndex,"onUpdate:currentPage":e[3]||(e[3]=l=>n.pageIndex=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:P,onCurrentChange:q},null,8,["current-page","page-size","total"])])]),_:1})),[[X,o.loading]]),t(W,{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(w,{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(D,{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(De,[["__scopeId","data-v-f2fe9741"]]);export{Ee as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BzpAvn-9.css b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BzpAvn-9.css new file mode 100644 index 0000000..f7af41a --- /dev/null +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BzpAvn-9.css @@ -0,0 +1 @@ +.user-container[data-v-01ca001a]{padding:0}.page-header[data-v-01ca001a]{margin-bottom:16px}.header-content[data-v-01ca001a]{display:flex;justify-content:space-between;align-items:center}.header-left[data-v-01ca001a]{display:flex;align-items:baseline;gap:16px}.page-title[data-v-01ca001a]{margin:0;font-size:20px;font-weight:600;color:var(--text-primary, #303133)}.page-description[data-v-01ca001a]{font-size:14px;color:var(--text-secondary, #909399)}.search-card[data-v-01ca001a]{margin-bottom:16px}.search-card[data-v-01ca001a] .el-card__body{padding-bottom:2px}.table-card[data-v-01ca001a]{min-height:400px}.balance-text[data-v-01ca001a]{color:var(--el-color-success);font-weight:500}.pagination-wrapper[data-v-01ca001a]{display:flex;justify-content:flex-end;margin-top:16px}.user-detail[data-v-01ca001a]{padding:0 10px}.detail-section[data-v-01ca001a]{margin-bottom:24px}.section-title[data-v-01ca001a]{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)}.user-profile[data-v-01ca001a]{display:flex;align-items:center;gap:16px;margin-bottom:16px;padding:16px;background:var(--bg-light, #f5f7fa);border-radius:8px}.profile-info[data-v-01ca001a]{flex:1}.profile-info .nickname[data-v-01ca001a]{font-size:18px;font-weight:600;color:var(--text-primary, #303133);margin-bottom:4px}.profile-info .uid[data-v-01ca001a]{font-size:14px;color:var(--text-secondary, #909399)}.money-text[data-v-01ca001a]{color:var(--el-color-success);font-weight:500}.stats-grid[data-v-01ca001a]{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.stat-item[data-v-01ca001a]{text-align:center;padding:16px;background:var(--bg-light, #f5f7fa);border-radius:8px}.stat-value[data-v-01ca001a]{font-size:24px;font-weight:600;color:var(--el-color-primary);margin-bottom:4px}.stat-label[data-v-01ca001a]{font-size:14px;color:var(--text-secondary, #909399)}[data-v-01ca001a] .el-table{--el-table-border-color: var(--border-lighter, #ebeef5)}[data-v-01ca001a] .el-table th.el-table__cell{background-color:var(--bg-light, #f5f7fa);font-weight:500}[data-v-01ca001a] .el-dialog__body{padding-top:20px}[data-v-01ca001a] .el-descriptions{--el-descriptions-item-bordered-label-background: var(--bg-light, #f5f7fa)} diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Lywc9iAw.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-C0ifigbw.js similarity index 99% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Lywc9iAw.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-C0ifigbw.js index 74bb410..b8828a1 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Lywc9iAw.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-C0ifigbw.js @@ -1 +1 @@ -import{R 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,an as Ge,E as U,W as We,_ as He}from"./index-BsIaGxbR.js";import{h as Je}from"./role-DeNQI9K8.js";import{g as Oe}from"./department-BA59MD1G.js";function Qe(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),W=d([]),H=d(0),m=j({keyword:"",departmentId:void 0,status:void 0,page:1,pageSize:10}),J=d([]),L=d([]),O=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),Q=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 Qe(m);W.value=s.data.list,H.value=s.data.total}finally{x.value=!1}},fe=async()=>{const[s,e,$]=await Promise.all([Je(),Oe(),Ge()]);J.value=s.data,L.value=e.data,O.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 We.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=Q.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:W.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:Q,data:O.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{R 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,an as Ge,E as U,W as We,_ as He}from"./index-CJcwRKyx.js";import{h as Je}from"./role-CjnkgtRA.js";import{g as Oe}from"./department-CGrMTjp9.js";function Qe(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),W=d([]),H=d(0),m=j({keyword:"",departmentId:void 0,status:void 0,page:1,pageSize:10}),J=d([]),L=d([]),O=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),Q=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 Qe(m);W.value=s.data.list,H.value=s.data.total}finally{x.value=!1}},fe=async()=>{const[s,e,$]=await Promise.all([Je(),Oe(),Ge()]);J.value=s.data,L.value=e.data,O.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 We.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=Q.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:W.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:Q,data:O.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}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DnDYf4Zb.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CCE-d0H7.js similarity index 98% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DnDYf4Zb.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CCE-d0H7.js index c43f8f5..5472cd7 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DnDYf4Zb.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CCE-d0H7.js @@ -1 +1 @@ -import{R as J,d as j,r as _,a as $,o as F,g as r,B as H,c as K,k as v,e,w as t,t as u,l as N,L as Q,s as W,C as X,b,z as D,x as d,G as P,_ as Z}from"./index-BsIaGxbR.js";function ee(k){return J({url:"/admin/logs",method:"get",params:k})}const te={class:"log-container"},ae={class:"pagination-container"},le={class:"params-pre"},oe={class:"error-text"},ne={class:"ua-text"},se=j({__name:"index",setup(k){const y=_(!1),V=_([]),x=_(0),c=_([]),o=$({keyword:"",module:"",startDate:"",endDate:"",page:1,pageSize:20});async function m(){y.value=!0;try{c.value&&c.value.length===2?(o.startDate=c.value[0],o.endDate=c.value[1]):(o.startDate="",o.endDate="");const s=await ee(o);s.code===0&&s.data&&(V.value=s.data.items||[],x.value=s.data.total||0)}catch(s){console.error("加载操作日志失败",s)}finally{y.value=!1}}function T(){o.page=1,m()}function M(){o.keyword="",o.module="",c.value=[],o.page=1,m()}const h=_(!1),n=_(null);function A(s){n.value=s,h.value=!0}function z(s){return{GET:"success",POST:"primary",PUT:"warning",DELETE:"danger"}[s]||"info"}function C(s){return s?new Date(s).toLocaleString("zh-CN"):"-"}function B(s){if(!s)return"-";try{return JSON.stringify(JSON.parse(s),null,2)}catch{return s}}return F(()=>{m()}),(s,l)=>{const S=r("el-input"),f=r("el-form-item"),E=r("el-date-picker"),U=r("el-icon"),w=r("el-button"),I=r("el-form"),L=r("el-card"),p=r("el-table-column"),g=r("el-tag"),O=r("el-table"),Y=r("el-pagination"),i=r("el-descriptions-item"),R=r("el-descriptions"),q=r("el-dialog"),G=H("loading");return v(),K("div",te,[e(L,{class:"search-card"},{default:t(()=>[e(I,{model:o,inline:""},{default:t(()=>[e(f,{label:"关键词"},{default:t(()=>[e(S,{modelValue:o.keyword,"onUpdate:modelValue":l[0]||(l[0]=a=>o.keyword=a),placeholder:"用户名/操作",clearable:"",style:{width:"200px"}},null,8,["modelValue"])]),_:1}),e(f,{label:"模块"},{default:t(()=>[e(S,{modelValue:o.module,"onUpdate:modelValue":l[1]||(l[1]=a=>o.module=a),placeholder:"模块名称",clearable:"",style:{width:"150px"}},null,8,["modelValue"])]),_:1}),e(f,{label:"时间范围"},{default:t(()=>[e(E,{modelValue:c.value,"onUpdate:modelValue":l[2]||(l[2]=a=>c.value=a),type:"daterange","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期","value-format":"YYYY-MM-DD",style:{width:"240px"}},null,8,["modelValue"])]),_:1}),e(f,null,{default:t(()=>[e(w,{type:"primary",onClick:T},{default:t(()=>[e(U,null,{default:t(()=>[e(N(Q))]),_:1}),l[6]||(l[6]=u("搜索 ",-1))]),_:1}),e(w,{onClick:M},{default:t(()=>[e(U,null,{default:t(()=>[e(N(W))]),_:1}),l[7]||(l[7]=u("重置 ",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),e(L,null,{default:t(()=>[X((v(),D(O,{data:V.value,style:{width:"100%"}},{default:t(()=>[e(p,{prop:"id",label:"ID",width:"80"}),e(p,{prop:"username",label:"操作用户",width:"120"}),e(p,{prop:"module",label:"模块",width:"120"}),e(p,{prop:"action",label:"操作",width:"150"}),e(p,{prop:"method",label:"请求方式",width:"100"},{default:t(({row:a})=>[e(g,{type:z(a.method),size:"small"},{default:t(()=>[u(d(a.method),1)]),_:2},1032,["type"])]),_:1}),e(p,{prop:"url",label:"请求地址","min-width":"200","show-overflow-tooltip":""}),e(p,{prop:"ip",label:"IP地址",width:"140"}),e(p,{prop:"duration",label:"耗时(ms)",width:"100"}),e(p,{prop:"status",label:"状态",width:"80"},{default:t(({row:a})=>[e(g,{type:a.status===1?"success":"danger",size:"small"},{default:t(()=>[u(d(a.status===1?"成功":"失败"),1)]),_:2},1032,["type"])]),_:1}),e(p,{prop:"createdAt",label:"操作时间",width:"180"},{default:t(({row:a})=>[u(d(C(a.createdAt)),1)]),_:1}),e(p,{label:"操作",width:"80",fixed:"right"},{default:t(({row:a})=>[e(w,{type:"primary",link:"",size:"small",onClick:ue=>A(a)},{default:t(()=>[...l[8]||(l[8]=[u("详情",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[G,y.value]]),b("div",ae,[e(Y,{"current-page":o.page,"onUpdate:currentPage":l[3]||(l[3]=a=>o.page=a),"page-size":o.pageSize,"onUpdate:pageSize":l[4]||(l[4]=a=>o.pageSize=a),"page-sizes":[10,20,50,100],total:x.value,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:m,onCurrentChange:m},null,8,["current-page","page-size","total"])])]),_:1}),e(q,{modelValue:h.value,"onUpdate:modelValue":l[5]||(l[5]=a=>h.value=a),title:"操作日志详情",width:"600px"},{default:t(()=>[n.value?(v(),D(R,{key:0,column:2,border:""},{default:t(()=>[e(i,{label:"ID"},{default:t(()=>[u(d(n.value.id),1)]),_:1}),e(i,{label:"操作用户"},{default:t(()=>[u(d(n.value.username),1)]),_:1}),e(i,{label:"模块"},{default:t(()=>[u(d(n.value.module),1)]),_:1}),e(i,{label:"操作"},{default:t(()=>[u(d(n.value.action),1)]),_:1}),e(i,{label:"请求方式"},{default:t(()=>[e(g,{type:z(n.value.method),size:"small"},{default:t(()=>[u(d(n.value.method),1)]),_:1},8,["type"])]),_:1}),e(i,{label:"状态"},{default:t(()=>[e(g,{type:n.value.status===1?"success":"danger",size:"small"},{default:t(()=>[u(d(n.value.status===1?"成功":"失败"),1)]),_:1},8,["type"])]),_:1}),e(i,{label:"请求地址",span:2},{default:t(()=>[u(d(n.value.url),1)]),_:1}),e(i,{label:"IP地址"},{default:t(()=>[u(d(n.value.ip||"-"),1)]),_:1}),e(i,{label:"耗时"},{default:t(()=>[u(d(n.value.duration)+"ms",1)]),_:1}),e(i,{label:"操作时间",span:2},{default:t(()=>[u(d(C(n.value.createdAt)),1)]),_:1}),e(i,{label:"请求参数",span:2},{default:t(()=>[b("pre",le,d(B(n.value.params)),1)]),_:1}),n.value.errorMessage?(v(),D(i,{key:0,label:"错误信息",span:2},{default:t(()=>[b("span",oe,d(n.value.errorMessage),1)]),_:1})):P("",!0),e(i,{label:"User-Agent",span:2},{default:t(()=>[b("span",ne,d(n.value.userAgent||"-"),1)]),_:1})]),_:1})):P("",!0)]),_:1},8,["modelValue"])])}}}),re=Z(se,[["__scopeId","data-v-3545c179"]]);export{re as default}; +import{R as J,d as j,r as _,a as $,o as F,g as r,B as H,c as K,k as v,e,w as t,t as u,l as N,L as Q,s as W,C as X,b,z as D,x as d,G as P,_ as Z}from"./index-CJcwRKyx.js";function ee(k){return J({url:"/admin/logs",method:"get",params:k})}const te={class:"log-container"},ae={class:"pagination-container"},le={class:"params-pre"},oe={class:"error-text"},ne={class:"ua-text"},se=j({__name:"index",setup(k){const y=_(!1),V=_([]),x=_(0),c=_([]),o=$({keyword:"",module:"",startDate:"",endDate:"",page:1,pageSize:20});async function m(){y.value=!0;try{c.value&&c.value.length===2?(o.startDate=c.value[0],o.endDate=c.value[1]):(o.startDate="",o.endDate="");const s=await ee(o);s.code===0&&s.data&&(V.value=s.data.items||[],x.value=s.data.total||0)}catch(s){console.error("加载操作日志失败",s)}finally{y.value=!1}}function T(){o.page=1,m()}function M(){o.keyword="",o.module="",c.value=[],o.page=1,m()}const h=_(!1),n=_(null);function A(s){n.value=s,h.value=!0}function z(s){return{GET:"success",POST:"primary",PUT:"warning",DELETE:"danger"}[s]||"info"}function C(s){return s?new Date(s).toLocaleString("zh-CN"):"-"}function B(s){if(!s)return"-";try{return JSON.stringify(JSON.parse(s),null,2)}catch{return s}}return F(()=>{m()}),(s,l)=>{const S=r("el-input"),f=r("el-form-item"),E=r("el-date-picker"),U=r("el-icon"),w=r("el-button"),I=r("el-form"),L=r("el-card"),p=r("el-table-column"),g=r("el-tag"),O=r("el-table"),Y=r("el-pagination"),i=r("el-descriptions-item"),R=r("el-descriptions"),q=r("el-dialog"),G=H("loading");return v(),K("div",te,[e(L,{class:"search-card"},{default:t(()=>[e(I,{model:o,inline:""},{default:t(()=>[e(f,{label:"关键词"},{default:t(()=>[e(S,{modelValue:o.keyword,"onUpdate:modelValue":l[0]||(l[0]=a=>o.keyword=a),placeholder:"用户名/操作",clearable:"",style:{width:"200px"}},null,8,["modelValue"])]),_:1}),e(f,{label:"模块"},{default:t(()=>[e(S,{modelValue:o.module,"onUpdate:modelValue":l[1]||(l[1]=a=>o.module=a),placeholder:"模块名称",clearable:"",style:{width:"150px"}},null,8,["modelValue"])]),_:1}),e(f,{label:"时间范围"},{default:t(()=>[e(E,{modelValue:c.value,"onUpdate:modelValue":l[2]||(l[2]=a=>c.value=a),type:"daterange","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期","value-format":"YYYY-MM-DD",style:{width:"240px"}},null,8,["modelValue"])]),_:1}),e(f,null,{default:t(()=>[e(w,{type:"primary",onClick:T},{default:t(()=>[e(U,null,{default:t(()=>[e(N(Q))]),_:1}),l[6]||(l[6]=u("搜索 ",-1))]),_:1}),e(w,{onClick:M},{default:t(()=>[e(U,null,{default:t(()=>[e(N(W))]),_:1}),l[7]||(l[7]=u("重置 ",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),e(L,null,{default:t(()=>[X((v(),D(O,{data:V.value,style:{width:"100%"}},{default:t(()=>[e(p,{prop:"id",label:"ID",width:"80"}),e(p,{prop:"username",label:"操作用户",width:"120"}),e(p,{prop:"module",label:"模块",width:"120"}),e(p,{prop:"action",label:"操作",width:"150"}),e(p,{prop:"method",label:"请求方式",width:"100"},{default:t(({row:a})=>[e(g,{type:z(a.method),size:"small"},{default:t(()=>[u(d(a.method),1)]),_:2},1032,["type"])]),_:1}),e(p,{prop:"url",label:"请求地址","min-width":"200","show-overflow-tooltip":""}),e(p,{prop:"ip",label:"IP地址",width:"140"}),e(p,{prop:"duration",label:"耗时(ms)",width:"100"}),e(p,{prop:"status",label:"状态",width:"80"},{default:t(({row:a})=>[e(g,{type:a.status===1?"success":"danger",size:"small"},{default:t(()=>[u(d(a.status===1?"成功":"失败"),1)]),_:2},1032,["type"])]),_:1}),e(p,{prop:"createdAt",label:"操作时间",width:"180"},{default:t(({row:a})=>[u(d(C(a.createdAt)),1)]),_:1}),e(p,{label:"操作",width:"80",fixed:"right"},{default:t(({row:a})=>[e(w,{type:"primary",link:"",size:"small",onClick:ue=>A(a)},{default:t(()=>[...l[8]||(l[8]=[u("详情",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[G,y.value]]),b("div",ae,[e(Y,{"current-page":o.page,"onUpdate:currentPage":l[3]||(l[3]=a=>o.page=a),"page-size":o.pageSize,"onUpdate:pageSize":l[4]||(l[4]=a=>o.pageSize=a),"page-sizes":[10,20,50,100],total:x.value,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:m,onCurrentChange:m},null,8,["current-page","page-size","total"])])]),_:1}),e(q,{modelValue:h.value,"onUpdate:modelValue":l[5]||(l[5]=a=>h.value=a),title:"操作日志详情",width:"600px"},{default:t(()=>[n.value?(v(),D(R,{key:0,column:2,border:""},{default:t(()=>[e(i,{label:"ID"},{default:t(()=>[u(d(n.value.id),1)]),_:1}),e(i,{label:"操作用户"},{default:t(()=>[u(d(n.value.username),1)]),_:1}),e(i,{label:"模块"},{default:t(()=>[u(d(n.value.module),1)]),_:1}),e(i,{label:"操作"},{default:t(()=>[u(d(n.value.action),1)]),_:1}),e(i,{label:"请求方式"},{default:t(()=>[e(g,{type:z(n.value.method),size:"small"},{default:t(()=>[u(d(n.value.method),1)]),_:1},8,["type"])]),_:1}),e(i,{label:"状态"},{default:t(()=>[e(g,{type:n.value.status===1?"success":"danger",size:"small"},{default:t(()=>[u(d(n.value.status===1?"成功":"失败"),1)]),_:1},8,["type"])]),_:1}),e(i,{label:"请求地址",span:2},{default:t(()=>[u(d(n.value.url),1)]),_:1}),e(i,{label:"IP地址"},{default:t(()=>[u(d(n.value.ip||"-"),1)]),_:1}),e(i,{label:"耗时"},{default:t(()=>[u(d(n.value.duration)+"ms",1)]),_:1}),e(i,{label:"操作时间",span:2},{default:t(()=>[u(d(C(n.value.createdAt)),1)]),_:1}),e(i,{label:"请求参数",span:2},{default:t(()=>[b("pre",le,d(B(n.value.params)),1)]),_:1}),n.value.errorMessage?(v(),D(i,{key:0,label:"错误信息",span:2},{default:t(()=>[b("span",oe,d(n.value.errorMessage),1)]),_:1})):P("",!0),e(i,{label:"User-Agent",span:2},{default:t(()=>[b("span",ne,d(n.value.userAgent||"-"),1)]),_:1})]),_:1})):P("",!0)]),_:1},8,["modelValue"])])}}}),re=Z(se,[["__scopeId","data-v-3545c179"]]);export{re as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BsIaGxbR.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CJcwRKyx.js similarity index 99% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BsIaGxbR.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CJcwRKyx.js index fbb4e64..1100f5e 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BsIaGxbR.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CJcwRKyx.js @@ -1,4 +1,4 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-sTKEEg6f.js","assets/assessment-CKsQcO9P.js","assets/index-CP0tAXOg.css","assets/index-Dx3iqF4j.js","assets/index-8H0SbR7j.css","assets/index-VAuxenbw.js","assets/index-BR6O5j3y.css","assets/index-lguEKq6C.js","assets/index-DSzUfMRV.css","assets/index-CDRG7nDQ.js","assets/index-DJ3PMCSn.css","assets/index-mSePqRS4.js","assets/content-CoE0RGgm.js","assets/index-a-0K3yJY.css","assets/index-DHLMPAUF.js","assets/index-BviVHF8S.css","assets/index-D1BUKIhY.js","assets/index-0hTIa3Sw.css","assets/index-D9B4oVpy.js","assets/distribution-Bk8S5V5D.js","assets/index-DrRRUc4w.css","assets/index-Bwu0eMI0.js","assets/index-BNkhlEBQ.css","assets/index-Fkyf--j_.js","assets/index-CBiy5WAH.css","assets/index-CYWJ-Th2.js","assets/index--aqNWzUM.css","assets/index-v9wh5siz.js","assets/planner-BuJWI647.js","assets/index-DcbNs4yn.css","assets/index-CIioahvm.js","assets/index-BUnvjszn.css","assets/index-WS-yoiJc.js","assets/index-B_rPf_QY.css","assets/index-CSsSD8np.js","assets/index-DwIaOEzJ.css","assets/404-CrD8CTe6.js","assets/404-B_0feY5-.css","assets/index-HkcuRFaU.js","assets/index-EKitILPx.css","assets/index-DBfUyTG1.js","assets/index-BjdUoq1A.css","assets/index-D8PG8Rc8.js","assets/index-CsWDax_F.css","assets/index-COFXK7ce.js","assets/upload-BdDxilH0.js","assets/config-inW4xTKX.js","assets/upload-B9dv7Twt.css","assets/miniprogram-BnX9rjn1.js","assets/miniprogram-Cx_saQWT.css","assets/payment-CAhZ9vHc.js","assets/payment-ChCwfE9p.css","assets/user-D5_XWilM.js","assets/user-Cd9REQ_p.css","assets/index-DvWcKdcc.css","assets/index-Dohy6c1V.js","assets/department-BA59MD1G.js","assets/index-CCPDyVu2.css","assets/index-C3FaznTu.js","assets/index-DPEhPXK0.css","assets/index-DnDYf4Zb.js","assets/index-WaU-bqEL.css","assets/index-Cszekvzh.js","assets/index-BceyEcBq.css","assets/index-BFBQYkSb.js","assets/permission-DVpyn3g_.js","assets/index-DJrogOSb.css","assets/index-Bi7QAKG9.js","assets/role-DeNQI9K8.js","assets/index-Ciogk2bA.css","assets/index-Lywc9iAw.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-DhlnEG4X.js","assets/assessment-pbF6Upoc.js","assets/index-CP0tAXOg.css","assets/index-BwEVSuVj.js","assets/index-8H0SbR7j.css","assets/index-zcTKDpLD.js","assets/index-BR6O5j3y.css","assets/index-CNzxsQlX.js","assets/index-DSzUfMRV.css","assets/index-DBRSFLjd.js","assets/index-DJ3PMCSn.css","assets/index-Cowis3Ki.js","assets/content-BSV9jWnp.js","assets/index-a-0K3yJY.css","assets/index-D31x_wbW.js","assets/index-BviVHF8S.css","assets/index-BxbIb8yP.js","assets/index-0hTIa3Sw.css","assets/index-DNukX_JB.js","assets/distribution-CfVVEqPo.js","assets/index-DrRRUc4w.css","assets/index-Cqp54U_W.js","assets/index-BNkhlEBQ.css","assets/index-extwAH6t.js","assets/index-CBiy5WAH.css","assets/index-Dy3V-uaE.js","assets/index--aqNWzUM.css","assets/index-CMdxHYsD.js","assets/planner-DuwciqnH.js","assets/index-DcbNs4yn.css","assets/index-BLWTq4vE.js","assets/index-BUnvjszn.css","assets/index-qU0doopF.js","assets/index-BzpAvn-9.css","assets/index-BZbJ-7bH.js","assets/index-DwIaOEzJ.css","assets/404-BRVDSvYo.js","assets/404-B_0feY5-.css","assets/index-BAtkHaFY.js","assets/index-EKitILPx.css","assets/index-PKkdanWm.js","assets/index-BjdUoq1A.css","assets/index-BEa9Y37Y.js","assets/index-CsWDax_F.css","assets/index-0S59g-J9.js","assets/upload-CpRf_gCY.js","assets/config-rv4LKgOV.js","assets/upload-B9dv7Twt.css","assets/miniprogram-CugR1aVC.js","assets/miniprogram-Cx_saQWT.css","assets/payment-1vnbCmrB.js","assets/payment-ChCwfE9p.css","assets/user-md0sNmmV.js","assets/user-Cd9REQ_p.css","assets/index-DvWcKdcc.css","assets/index-Dw6nUBUg.js","assets/department-CGrMTjp9.js","assets/index-CCPDyVu2.css","assets/index-DfwoE1L4.js","assets/index-DPEhPXK0.css","assets/index-CCE-d0H7.js","assets/index-WaU-bqEL.css","assets/index-DoiofAKi.js","assets/index-BceyEcBq.css","assets/index-U2Ndf4KH.js","assets/permission-CpmDm0Md.js","assets/index-DJrogOSb.css","assets/index-CeBsHWU_.js","assets/role-CjnkgtRA.js","assets/index-Ciogk2bA.css","assets/index-C0ifigbw.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 a of document.querySelectorAll('link[rel="modulepreload"]'))o(a);new MutationObserver(a=>{for(const l of a)if(l.type==="childList")for(const r of l.addedNodes)r.tagName==="LINK"&&r.rel==="modulepreload"&&o(r)}).observe(document,{childList:!0,subtree:!0});function n(a){const l={};return a.integrity&&(l.integrity=a.integrity),a.referrerPolicy&&(l.referrerPolicy=a.referrerPolicy),a.crossOrigin==="use-credentials"?l.credentials="include":a.crossOrigin==="anonymous"?l.credentials="omit":l.credentials="same-origin",l}function o(a){if(a.ep)return;a.ep=!0;const l=n(a);fetch(a.href,l)}})();/** * @vue/shared v3.5.26 * (c) 2018-present Yuxi (Evan) You and Vue contributors @@ -68,4 +68,4 @@ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-sTKEEg6f. `)}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 o=new this(t);return n.forEach(a=>o.set(a)),o}static accessor(t){const o=(this[d6]=this[d6]={accessors:{}}).accessors,a=this.prototype;function l(r){const s=ci(r);o[s]||(Tfe(a,r),o[s]=!0)}return Re.isArray(t)?t.forEach(l):l(t),this}};go.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);Re.reduceDescriptors(go.prototype,({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(o){this[n]=o}}});Re.freezeMethods(go);function Q0(e,t){const n=this||Ju,o=t||n,a=go.from(o.headers);let l=o.data;return Re.forEach(e,function(s){l=s.call(n,l,a.normalize(),t?t.status:void 0)}),a.normalize(),l}function d9(e){return!!(e&&e.__CANCEL__)}function Zs(e,t,n){Dt.call(this,e??"canceled",Dt.ERR_CANCELED,t,n),this.name="CanceledError"}Re.inherits(Zs,Dt,{__CANCEL__:!0});function f9(e,t,n){const o=n.config.validateStatus;!n.status||!o||o(n.status)?e(n):t(new Dt("Request failed with status code "+n.status,[Dt.ERR_BAD_REQUEST,Dt.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}function Mfe(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function $fe(e,t){e=e||10;const n=new Array(e),o=new Array(e);let a=0,l=0,r;return t=t!==void 0?t:1e3,function(u){const c=Date.now(),d=o[l];r||(r=c),n[a]=u,o[a]=c;let f=l,p=0;for(;f!==a;)p+=n[f++],f=f%e;if(a=(a+1)%e,a===l&&(l=(l+1)%e),c-r{n=d,a=null,l&&(clearTimeout(l),l=null),e(...c)};return[(...c)=>{const d=Date.now(),f=d-n;f>=o?r(c,d):(a=c,l||(l=setTimeout(()=>{l=null,r(a)},o-f)))},()=>a&&r(a)]}const qd=(e,t,n=3)=>{let o=0;const a=$fe(50,250);return Ofe(l=>{const r=l.loaded,s=l.lengthComputable?l.total:void 0,u=r-o,c=a(u),d=r<=s;o=r;const f={loaded:r,total:s,progress:s?r/s:void 0,bytes:u,rate:c||void 0,estimated:c&&s&&d?(s-r)/c:void 0,event:l,lengthComputable:s!=null,[t?"download":"upload"]:!0};e(f)},n)},f6=(e,t)=>{const n=e!=null;return[o=>t[0]({lengthComputable:n,total:e,loaded:o}),t[1]]},p6=e=>(...t)=>Re.asap(()=>e(...t)),Afe=Gn.hasStandardBrowserEnv?((e,t)=>n=>(n=new URL(n,Gn.origin),e.protocol===n.protocol&&e.host===n.host&&(t||e.port===n.port)))(new URL(Gn.origin),Gn.navigator&&/(msie|trident)/i.test(Gn.navigator.userAgent)):()=>!0,Rfe=Gn.hasStandardBrowserEnv?{write(e,t,n,o,a,l,r){if(typeof document>"u")return;const s=[`${e}=${encodeURIComponent(t)}`];Re.isNumber(n)&&s.push(`expires=${new Date(n).toUTCString()}`),Re.isString(o)&&s.push(`path=${o}`),Re.isString(a)&&s.push(`domain=${a}`),l===!0&&s.push("secure"),Re.isString(r)&&s.push(`SameSite=${r}`),document.cookie=s.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 Ife(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function Pfe(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function p9(e,t,n){let o=!Ife(t);return e&&(o||n==!1)?Pfe(e,t):t}const v6=e=>e instanceof go?{...e}:e;function Mr(e,t){t=t||{};const n={};function o(c,d,f,p){return Re.isPlainObject(c)&&Re.isPlainObject(d)?Re.merge.call({caseless:p},c,d):Re.isPlainObject(d)?Re.merge({},d):Re.isArray(d)?d.slice():d}function a(c,d,f,p){if(Re.isUndefined(d)){if(!Re.isUndefined(c))return o(void 0,c,f,p)}else return o(c,d,f,p)}function l(c,d){if(!Re.isUndefined(d))return o(void 0,d)}function r(c,d){if(Re.isUndefined(d)){if(!Re.isUndefined(c))return o(void 0,c)}else return o(void 0,d)}function s(c,d,f){if(f in t)return o(c,d);if(f in e)return o(void 0,c)}const u={url:l,method:l,data:l,baseURL:r,transformRequest:r,transformResponse:r,paramsSerializer:r,timeout:r,timeoutMessage:r,withCredentials:r,withXSRFToken:r,adapter:r,responseType:r,xsrfCookieName:r,xsrfHeaderName:r,onUploadProgress:r,onDownloadProgress:r,decompress:r,maxContentLength:r,maxBodyLength:r,beforeRedirect:r,transport:r,httpAgent:r,httpsAgent:r,cancelToken:r,socketPath:r,responseEncoding:r,validateStatus:s,headers:(c,d,f)=>a(v6(c),v6(d),f,!0)};return Re.forEach(Object.keys({...e,...t}),function(d){const f=u[d]||a,p=f(e[d],t[d],d);Re.isUndefined(p)&&f!==s||(n[d]=p)}),n}const v9=e=>{const t=Mr({},e);let{data:n,withXSRFToken:o,xsrfHeaderName:a,xsrfCookieName:l,headers:r,auth:s}=t;if(t.headers=r=go.from(r),t.url=i9(p9(t.baseURL,t.url,t.allowAbsoluteUrls),e.params,e.paramsSerializer),s&&r.set("Authorization","Basic "+btoa((s.username||"")+":"+(s.password?unescape(encodeURIComponent(s.password)):""))),Re.isFormData(n)){if(Gn.hasStandardBrowserEnv||Gn.hasStandardBrowserWebWorkerEnv)r.setContentType(void 0);else if(Re.isFunction(n.getHeaders)){const u=n.getHeaders(),c=["content-type","content-length"];Object.entries(u).forEach(([d,f])=>{c.includes(d.toLowerCase())&&r.set(d,f)})}}if(Gn.hasStandardBrowserEnv&&(o&&Re.isFunction(o)&&(o=o(t)),o||o!==!1&&Afe(t.url))){const u=a&&l&&Rfe.read(l);u&&r.set(a,u)}return t},Nfe=typeof XMLHttpRequest<"u",Lfe=Nfe&&function(e){return new Promise(function(n,o){const a=v9(e);let l=a.data;const r=go.from(a.headers).normalize();let{responseType:s,onUploadProgress:u,onDownloadProgress:c}=a,d,f,p,m,v;function h(){m&&m(),v&&v(),a.cancelToken&&a.cancelToken.unsubscribe(d),a.signal&&a.signal.removeEventListener("abort",d)}let g=new XMLHttpRequest;g.open(a.method.toUpperCase(),a.url,!0),g.timeout=a.timeout;function b(){if(!g)return;const _=go.from("getAllResponseHeaders"in g&&g.getAllResponseHeaders()),S={data:!s||s==="text"||s==="json"?g.responseText:g.response,status:g.status,statusText:g.statusText,headers:_,config:e,request:g};f9(function(T){n(T),h()},function(T){o(T),h()},S),g=null}"onloadend"in g?g.onloadend=b:g.onreadystatechange=function(){!g||g.readyState!==4||g.status===0&&!(g.responseURL&&g.responseURL.indexOf("file:")===0)||setTimeout(b)},g.onabort=function(){g&&(o(new Dt("Request aborted",Dt.ECONNABORTED,e,g)),g=null)},g.onerror=function(y){const S=y&&y.message?y.message:"Network Error",E=new Dt(S,Dt.ERR_NETWORK,e,g);E.event=y||null,o(E),g=null},g.ontimeout=function(){let y=a.timeout?"timeout of "+a.timeout+"ms exceeded":"timeout exceeded";const S=a.transitional||u9;a.timeoutErrorMessage&&(y=a.timeoutErrorMessage),o(new Dt(y,S.clarifyTimeoutError?Dt.ETIMEDOUT:Dt.ECONNABORTED,e,g)),g=null},l===void 0&&r.setContentType(null),"setRequestHeader"in g&&Re.forEach(r.toJSON(),function(y,S){g.setRequestHeader(S,y)}),Re.isUndefined(a.withCredentials)||(g.withCredentials=!!a.withCredentials),s&&s!=="json"&&(g.responseType=a.responseType),c&&([p,v]=qd(c,!0),g.addEventListener("progress",p)),u&&g.upload&&([f,m]=qd(u),g.upload.addEventListener("progress",f),g.upload.addEventListener("loadend",m)),(a.cancelToken||a.signal)&&(d=_=>{g&&(o(!_||_.type?new Zs(null,e,g):_),g.abort(),g=null)},a.cancelToken&&a.cancelToken.subscribe(d),a.signal&&(a.signal.aborted?d():a.signal.addEventListener("abort",d)));const w=Mfe(a.url);if(w&&Gn.protocols.indexOf(w)===-1){o(new Dt("Unsupported protocol "+w+":",Dt.ERR_BAD_REQUEST,e));return}g.send(l||null)})},Bfe=(e,t)=>{const{length:n}=e=e?e.filter(Boolean):[];if(t||n){let o=new AbortController,a;const l=function(c){if(!a){a=!0,s();const d=c instanceof Error?c:this.reason;o.abort(d instanceof Dt?d:new Zs(d instanceof Error?d.message:d))}};let r=t&&setTimeout(()=>{r=null,l(new Dt(`timeout ${t} of ms exceeded`,Dt.ETIMEDOUT))},t);const s=()=>{e&&(r&&clearTimeout(r),r=null,e.forEach(c=>{c.unsubscribe?c.unsubscribe(l):c.removeEventListener("abort",l)}),e=null)};e.forEach(c=>c.addEventListener("abort",l));const{signal:u}=o;return u.unsubscribe=()=>Re.asap(s),u}},Vfe=function*(e,t){let n=e.byteLength;if(n{const a=Dfe(e,t);let l=0,r,s=u=>{r||(r=!0,o&&o(u))};return new ReadableStream({async pull(u){try{const{done:c,value:d}=await a.next();if(c){s(),u.close();return}let f=d.byteLength;if(n){let p=l+=f;n(p)}u.enqueue(new Uint8Array(d))}catch(c){throw s(c),c}},cancel(u){return s(u),a.return()}},{highWaterMark:2})},m6=64*1024,{isFunction:Ec}=Re,zfe=(({Request:e,Response:t})=>({Request:e,Response:t}))(Re.global),{ReadableStream:g6,TextEncoder:b6}=Re.global,y6=(e,...t)=>{try{return!!e(...t)}catch{return!1}},Hfe=e=>{e=Re.merge.call({skipUndefined:!0},zfe,e);const{fetch:t,Request:n,Response:o}=e,a=t?Ec(t):typeof fetch=="function",l=Ec(n),r=Ec(o);if(!a)return!1;const s=a&&Ec(g6),u=a&&(typeof b6=="function"?(v=>h=>v.encode(h))(new b6):async v=>new Uint8Array(await new n(v).arrayBuffer())),c=l&&s&&y6(()=>{let v=!1;const h=new n(Gn.origin,{body:new g6,method:"POST",get duplex(){return v=!0,"half"}}).headers.has("Content-Type");return v&&!h}),d=r&&s&&y6(()=>Re.isReadableStream(new o("").body)),f={stream:d&&(v=>v.body)};a&&["text","arrayBuffer","blob","formData","stream"].forEach(v=>{!f[v]&&(f[v]=(h,g)=>{let b=h&&h[v];if(b)return b.call(h);throw new Dt(`Response type '${v}' is not supported`,Dt.ERR_NOT_SUPPORT,g)})});const p=async v=>{if(v==null)return 0;if(Re.isBlob(v))return v.size;if(Re.isSpecCompliantForm(v))return(await new n(Gn.origin,{method:"POST",body:v}).arrayBuffer()).byteLength;if(Re.isArrayBufferView(v)||Re.isArrayBuffer(v))return v.byteLength;if(Re.isURLSearchParams(v)&&(v=v+""),Re.isString(v))return(await u(v)).byteLength},m=async(v,h)=>{const g=Re.toFiniteNumber(v.getContentLength());return g??p(h)};return async v=>{let{url:h,method:g,data:b,signal:w,cancelToken:_,timeout:y,onDownloadProgress:S,onUploadProgress:E,responseType:T,headers:M,withCredentials:P="same-origin",fetchOptions:R}=v9(v),L=t||fetch;T=T?(T+"").toLowerCase():"text";let $=Bfe([w,_&&_.toAbortSignal()],y),B=null;const W=$&&$.unsubscribe&&(()=>{$.unsubscribe()});let Y;try{if(E&&c&&g!=="get"&&g!=="head"&&(Y=await m(M,b))!==0){let j=new n(h,{method:"POST",body:b,duplex:"half"}),X;if(Re.isFormData(b)&&(X=j.headers.get("content-type"))&&M.setContentType(X),j.body){const[K,te]=f6(Y,qd(p6(E)));b=h6(j.body,m6,K,te)}}Re.isString(P)||(P=P?"include":"omit");const q=l&&"credentials"in n.prototype,I={...R,signal:$,method:g.toUpperCase(),headers:M.normalize().toJSON(),body:b,duplex:"half",credentials:q?P:void 0};B=l&&new n(h,I);let A=await(l?L(B,R):L(h,I));const D=d&&(T==="stream"||T==="response");if(d&&(S||D&&W)){const j={};["status","statusText","headers"].forEach(Q=>{j[Q]=A[Q]});const X=Re.toFiniteNumber(A.headers.get("content-length")),[K,te]=S&&f6(X,qd(p6(S),!0))||[];A=new o(h6(A.body,m6,K,()=>{te&&te(),W&&W()}),j)}T=T||"text";let F=await f[Re.findKey(f,T)||"text"](A,v);return!D&&W&&W(),await new Promise((j,X)=>{f9(j,X,{data:F,headers:go.from(A.headers),status:A.status,statusText:A.statusText,config:v,request:B})})}catch(q){throw W&&W(),q&&q.name==="TypeError"&&/Load failed|fetch/i.test(q.message)?Object.assign(new Dt("Network Error",Dt.ERR_NETWORK,v,B),{cause:q.cause||q}):Dt.from(q,q&&q.code,v,B)}}},Kfe=new Map,h9=e=>{let t=e&&e.env||{};const{fetch:n,Request:o,Response:a}=t,l=[o,a,n];let r=l.length,s=r,u,c,d=Kfe;for(;s--;)u=l[s],c=d.get(u),c===void 0&&d.set(u,c=s?new Map:Hfe(t)),d=c;return c};h9();const tm={http:rfe,xhr:Lfe,fetch:{get:h9}};Re.forEach(tm,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const w6=e=>`- ${e}`,Wfe=e=>Re.isFunction(e)||e===null||e===!1;function jfe(e,t){e=Re.isArray(e)?e:[e];const{length:n}=e;let o,a;const l={};for(let r=0;r`adapter ${u} `+(c===!1?"is not supported by the environment":"is not available in the build"));let s=n?r.length>1?`since : `+r.map(w6).join(` `):" "+w6(r[0]):"as no adapter specified";throw new Dt("There is no suitable adapter to dispatch the request "+s,"ERR_NOT_SUPPORT")}return a}const m9={getAdapter:jfe,adapters:tm};function ep(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new Zs(null,e)}function _6(e){return ep(e),e.headers=go.from(e.headers),e.data=Q0.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),m9.getAdapter(e.adapter||Ju.adapter,e)(e).then(function(o){return ep(e),o.data=Q0.call(e,e.transformResponse,o),o.headers=go.from(o.headers),o},function(o){return d9(o)||(ep(e),o&&o.response&&(o.response.data=Q0.call(e,e.transformResponse,o.response),o.response.headers=go.from(o.response.headers))),Promise.reject(o)})}const g9="1.13.2",Qf={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{Qf[e]=function(o){return typeof o===e||"a"+(t<1?"n ":" ")+e}});const C6={};Qf.transitional=function(t,n,o){function a(l,r){return"[Axios v"+g9+"] Transitional option '"+l+"'"+r+(o?". "+o:"")}return(l,r,s)=>{if(t===!1)throw new Dt(a(r," has been removed"+(n?" in "+n:"")),Dt.ERR_DEPRECATED);return n&&!C6[r]&&(C6[r]=!0,console.warn(a(r," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(l,r,s):!0}};Qf.spelling=function(t){return(n,o)=>(console.warn(`${o} is likely a misspelling of ${t}`),!0)};function Ufe(e,t,n){if(typeof e!="object")throw new Dt("options must be an object",Dt.ERR_BAD_OPTION_VALUE);const o=Object.keys(e);let a=o.length;for(;a-- >0;){const l=o[a],r=t[l];if(r){const s=e[l],u=s===void 0||r(s,l,e);if(u!==!0)throw new Dt("option "+l+" must be "+u,Dt.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new Dt("Unknown option "+l,Dt.ERR_BAD_OPTION)}}const ld={assertOptions:Ufe,validators:Qf},ba=ld.validators;let yr=class{constructor(t){this.defaults=t||{},this.interceptors={request:new c6,response:new c6}}async request(t,n){try{return await this._request(t,n)}catch(o){if(o instanceof Error){let a={};Error.captureStackTrace?Error.captureStackTrace(a):a=new Error;const l=a.stack?a.stack.replace(/^.+\n/,""):"";try{o.stack?l&&!String(o.stack).endsWith(l.replace(/^.+\n.+\n/,""))&&(o.stack+=` -`+l):o.stack=l}catch{}}throw o}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=Mr(this.defaults,n);const{transitional:o,paramsSerializer:a,headers:l}=n;o!==void 0&&ld.assertOptions(o,{silentJSONParsing:ba.transitional(ba.boolean),forcedJSONParsing:ba.transitional(ba.boolean),clarifyTimeoutError:ba.transitional(ba.boolean)},!1),a!=null&&(Re.isFunction(a)?n.paramsSerializer={serialize:a}:ld.assertOptions(a,{encode:ba.function,serialize:ba.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),ld.assertOptions(n,{baseUrl:ba.spelling("baseURL"),withXsrfToken:ba.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let r=l&&Re.merge(l.common,l[n.method]);l&&Re.forEach(["delete","get","head","post","put","patch","common"],v=>{delete l[v]}),n.headers=go.concat(r,l);const s=[];let u=!0;this.interceptors.request.forEach(function(h){typeof h.runWhen=="function"&&h.runWhen(n)===!1||(u=u&&h.synchronous,s.unshift(h.fulfilled,h.rejected))});const c=[];this.interceptors.response.forEach(function(h){c.push(h.fulfilled,h.rejected)});let d,f=0,p;if(!u){const v=[_6.bind(this),void 0];for(v.unshift(...s),v.push(...c),p=v.length,d=Promise.resolve(n);f{if(!o._listeners)return;let l=o._listeners.length;for(;l-- >0;)o._listeners[l](a);o._listeners=null}),this.promise.then=a=>{let l;const r=new Promise(s=>{o.subscribe(s),l=s}).then(a);return r.cancel=function(){o.unsubscribe(l)},r},t(function(l,r,s){o.reason||(o.reason=new Zs(l,r,s),n(o.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=o=>{t.abort(o)};return this.subscribe(n),t.signal.unsubscribe=()=>this.unsubscribe(n),t.signal}static source(){let t;return{token:new b9(function(a){t=a}),cancel:t}}};function Yfe(e){return function(n){return e.apply(null,n)}}function Gfe(e){return Re.isObject(e)&&e.isAxiosError===!0}const M2={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(M2).forEach(([e,t])=>{M2[t]=e});function y9(e){const t=new yr(e),n=X_(yr.prototype.request,t);return Re.extend(n,yr.prototype,t,{allOwnKeys:!0}),Re.extend(n,t,null,{allOwnKeys:!0}),n.create=function(a){return y9(Mr(e,a))},n}const Cn=y9(Ju);Cn.Axios=yr;Cn.CanceledError=Zs;Cn.CancelToken=qfe;Cn.isCancel=d9;Cn.VERSION=g9;Cn.toFormData=Zf;Cn.AxiosError=Dt;Cn.Cancel=Cn.CanceledError;Cn.all=function(t){return Promise.all(t)};Cn.spread=Yfe;Cn.isAxiosError=Gfe;Cn.mergeConfig=Mr;Cn.AxiosHeaders=go;Cn.formToJSON=e=>c9(Re.isHTMLForm(e)?new FormData(e):e);Cn.getAdapter=m9.getAdapter;Cn.HttpStatusCode=M2;Cn.default=Cn;const{Axios:fpe,AxiosError:ppe,CanceledError:vpe,isCancel:hpe,CancelToken:mpe,VERSION:gpe,all:bpe,Cancel:ype,isAxiosError:wpe,spread:_pe,toFormData:Cpe,AxiosHeaders:Spe,HttpStatusCode:kpe,formToJSON:Epe,getAdapter:xpe,mergeConfig:Tpe}=Cn,Xfe=["/admin/auth/captcha","/admin/auth/login","/admin/auth/refresh"];let Vi=!1,xc=null,rd=[];const Ao=Cn.create({baseURL:"/api",timeout:3e4});function w9(e){return e?Xfe.some(t=>e.includes(t)):!1}async function Jfe(){const e=Yf();if(!e)return!1;try{const{refreshToken:t}=await Ht(async()=>{const{refreshToken:o}=await Promise.resolve().then(()=>n0e);return{refreshToken:o}},void 0),n=await t(e);if(n.code===0&&n.data){const{accessToken:o,refreshToken:a,expiresIn:l}=n.data;return nd(o,a,l),!0}return!1}catch(t){return console.error("Token refresh failed:",t),!1}}async function _9(){if(Vi)return xc;Vi=!0,xc=Jfe();try{const e=await xc;return e?rd.forEach(({config:t,resolve:n})=>{t.headers.Authorization=`Bearer ${qu()}`,n(Ao(t))}):rd.forEach(({reject:t})=>{t(new Error("Token refresh failed"))}),e}finally{Vi=!1,xc=null,rd=[]}}async function Zfe(e){const t=e.config;return t._retry||w9(t.url)?Promise.reject(e):Yf()?(t._retry=!0,Vi?new Promise((a,l)=>{rd.push({config:t,resolve:a,reject:l})}):await _9()?(t.headers.Authorization=`Bearer ${qu()}`,Ao(t)):(Bi(),Lo.error("登录已过期,请重新登录"),zl.push("/login"),Promise.reject(e))):(Bi(),zl.push("/login"),Promise.reject(e))}Ao.interceptors.request.use(async e=>{if(w9(e.url))return e;yde()&&!Vi&&Yf()&&await _9();const t=qu();return t&&(e.headers.Authorization=`Bearer ${t}`),e},e=>(console.error("请求错误:",e),Promise.reject(e)));Ao.interceptors.response.use(e=>{const t=e.data;return t.code===0?t:(Lo.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 Zfe(e);case 403:Lo.error("没有操作权限");break;case 404:Lo.error("请求的资源不存在");break;case 500:Lo.error((n==null?void 0:n.message)||"服务器内部错误");break;default:Lo.error((n==null?void 0:n.message)||"请求失败")}}else Lo.error("网络连接失败");return Promise.reject(e)});function wo(e){return Ao(e)}function Qfe(){return wo({url:"/admin/auth/captcha",method:"post"})}function C9(e){return wo({url:"/admin/auth/login",method:"post",data:e})}function e0e(e){return wo({url:"/admin/auth/refresh",method:"post",data:{refreshToken:e}})}function S9(){return wo({url:"/admin/auth/info",method:"get"})}function t0e(e){return wo({url:"/admin/auth/password",method:"put",data:e})}function k9(){return wo({url:"/admin/auth/logout",method:"post"})}function E9(){return wo({url:"/admin/auth/revoke-all",method:"post"})}const n0e=Object.freeze(Object.defineProperty({__proto__:null,changePassword:t0e,getCaptcha:Qfe,getUserInfo:S9,login:C9,logout:k9,refreshToken:e0e,revokeAllTokens:E9},Symbol.toStringTag,{value:"Module"})),nm=Q2("user",()=>{const e=V(qu()),t=V(Yf()),n=V(null),o=k(()=>e.value);async function a(f){const p=await C9(f),{accessToken:m,refreshToken:v,expiresIn:h,userInfo:g}=p.data,b=m||p.data.token,w=v||"";return e.value=b,t.value=w,n.value=g,w?nd(b,w,h):nd(b,"",h),p}async function l(){const f=await S9();return n.value=f.data,f.data}async function r(){try{await k9()}catch(f){console.warn("Logout API call failed:",f)}e.value=null,t.value=null,n.value=null,Bi(),T6(),zl.push("/login")}async function s(){try{await E9()}catch(f){console.warn("Revoke all tokens API call failed:",f)}e.value=null,t.value=null,n.value=null,Bi(),T6(),zl.push("/login")}function u(){e.value=null,t.value=null,n.value=null,Bi()}function c(f,p,m){e.value=f,t.value=p,m!==void 0&&nd(f,p,m)}function d(){return!!e.value}return{token:o,accessToken:e,refreshToken:t,userInfo:n,login:a,getUserInfo:l,logout:r,logoutAllDevices:s,resetState:u,updateTokens:c,isLoggedIn:d}});function o0e(){return wo({url:"/admin/menus/user",method:"get"})}function Mpe(){return wo({url:"/admin/menus",method:"get"})}function $pe(e){return wo({url:"/admin/menus",method:"post",data:e})}function Ope(e,t){return wo({url:`/admin/menus/${e}`,method:"put",data:t})}function Ape(e){return wo({url:`/admin/menus/${e}`,method:"delete"})}const a0e=z({__name:"SidebarItem",props:{item:{}},setup(e){const t=e,n=k(()=>{var a;return((a=t.item.children)==null?void 0:a.filter(l=>l.menuType!==3&&l.status===1))||[]}),o=k(()=>n.value.length>0);return(a,l)=>{const r=lt("el-icon"),s=lt("SidebarItem",!0),u=lt("el-sub-menu"),c=lt("el-menu-item");return o.value?(C(),se(u,{key:0,index:e.item.path||`menu_${e.item.id}`},{title:Z(()=>[e.item.icon?(C(),se(r,{key:0},{default:Z(()=>[(C(),se(st(e.item.icon)))]),_:1})):le("",!0),x("span",null,Ce(e.item.name),1)]),default:Z(()=>[(C(!0),O(Fe,null,gt(n.value,d=>(C(),se(s,{key:d.id,item:d},null,8,["item"]))),128))]),_:1},8,["index"])):(C(),se(c,{key:1,index:e.item.path||""},{title:Z(()=>[mt(Ce(e.item.name),1)]),default:Z(()=>[e.item.icon?(C(),se(r,{key:0},{default:Z(()=>[(C(),se(st(e.item.icon)))]),_:1})):le("",!0)]),_:1},8,["index"]))}}}),l0e={class:"sidebar-container"},r0e={class:"sidebar-logo"},s0e={key:0,class:"logo-title"},i0e={key:1,class:"logo-title-mini"},u0e=z({__name:"Sidebar",props:{collapse:{type:Boolean}},setup(e){const t=Y_(),n=T9(),o=k(()=>n.menus),a=k(()=>t.path);return(l,r)=>{const s=lt("el-menu"),u=lt("el-scrollbar");return C(),O("div",l0e,[x("div",r0e,[e.collapse?(C(),O("span",i0e,"学业")):(C(),O("span",s0e,"学业邑规划"))]),G(u,null,{default:Z(()=>[G(s,{"default-active":a.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:Z(()=>[(C(!0),O(Fe,null,gt(o.value,c=>(C(),se(a0e,{key:c.id,item:c},null,8,["item"]))),128))]),_:1},8,["default-active","collapse"])]),_:1})])}}}),c0e=Xs(u0e,[["__scopeId","data-v-e6e90018"]]),$2=[{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"}],S6="mi-assessment-admin-theme",k6="mi-assessment-admin-custom-theme",om=Q2("theme",()=>{const e=V("blue"),t=V(null),n=V(!1),o=()=>{const c=localStorage.getItem(S6),d=localStorage.getItem(k6);d&&(t.value=JSON.parse(d)),c&&(e.value=c,a(c))},a=c=>{let d;if(c==="custom"&&t.value?d=t.value:d=$2.find(p=>p.name===c),!d)return;const f=document.documentElement;d.primaryColor&&(f.style.setProperty("--primary-color",d.primaryColor),f.style.setProperty("--el-color-primary",d.primaryColor)),d.primaryLight&&f.style.setProperty("--primary-light",d.primaryLight),d.primaryDark&&f.style.setProperty("--primary-dark",d.primaryDark),d.primaryBg&&f.style.setProperty("--primary-bg",d.primaryBg),d.sidebarBg&&f.style.setProperty("--sidebar-bg",d.sidebarBg),d.sidebarLogoBg&&f.style.setProperty("--sidebar-logo-bg",d.sidebarLogoBg),d.sidebarTextActive&&(f.style.setProperty("--sidebar-text-active",d.sidebarTextActive),f.style.setProperty("--sidebar-item-active",d.primaryBg||d.sidebarBg||""),f.style.setProperty("--sidebar-item-hover",d.bgHover||"")),d.bgPage&&(f.style.setProperty("--bg-page",d.bgPage),f.style.setProperty("--el-bg-color-page",d.bgPage)),d.bgLight&&f.style.setProperty("--bg-light",d.bgLight),d.bgHover&&f.style.setProperty("--bg-hover",d.bgHover),d.loginBgStart&&f.style.setProperty("--login-bg-start",d.loginBgStart),d.loginBgEnd&&f.style.setProperty("--login-bg-end",d.loginBgEnd),d.primaryColor&&l(d.primaryColor)},l=c=>{const d=document.documentElement,f=c.replace("#",""),p=parseInt(f.substring(0,2),16),m=parseInt(f.substring(2,4),16),v=parseInt(f.substring(4,6),16);[3,5,7,8,9].forEach(y=>{const S=y/10,E=Math.round(p+(255-p)*S),T=Math.round(m+(255-m)*S),M=Math.round(v+(255-v)*S);d.style.setProperty(`--el-color-primary-light-${y}`,`rgb(${E}, ${T}, ${M})`)});const g=.2,b=Math.round(p*(1-g)),w=Math.round(m*(1-g)),_=Math.round(v*(1-g));d.style.setProperty("--el-color-primary-dark-2",`rgb(${b}, ${w}, ${_})`)},r=c=>{e.value=c,localStorage.setItem(S6,c),a(c)};return{currentTheme:e,customTheme:t,showThemeDrawer:n,initTheme:o,setTheme:r,saveCustomTheme:c=>{t.value={...c,name:"custom",label:"自定义"},localStorage.setItem(k6,JSON.stringify(t.value)),r("custom")},toggleThemeDrawer:()=>{n.value=!n.value},applyTheme:a}}),d0e={class:"header-container"},f0e={class:"header-left"},p0e={class:"header-right"},v0e={class:"user-info"},h0e={class:"username"},m0e=z({__name:"Header",props:{collapse:{type:Boolean}},emits:["toggle-collapse"],setup(e){const t=Y_(),n=cde(),o=nm(),a=om(),l=k(()=>o.userInfo),r=k(()=>t.matched.filter(c=>{var d;return(d=c.meta)==null?void 0:d.title}).map(c=>{var d;return{path:c.path,title:(d=c.meta)==null?void 0:d.title}})),s=async u=>{switch(u){case"profile":n.push("/profile");break;case"password":n.push("/password");break;case"logout":try{await P_.confirm("确定要退出登录吗?","提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}),await o.logout()}catch{}break}};return(u,c)=>{const d=lt("el-icon"),f=lt("el-breadcrumb-item"),p=lt("el-breadcrumb"),m=lt("el-tooltip"),v=lt("el-avatar"),h=lt("el-dropdown-item"),g=lt("el-dropdown-menu"),b=lt("el-dropdown");return C(),O("div",d0e,[x("div",f0e,[G(d,{class:"collapse-btn",onClick:c[0]||(c[0]=w=>u.$emit("toggle-collapse"))},{default:Z(()=>[e.collapse?(C(),se(i(y8),{key:1})):(C(),se(i(w8),{key:0}))]),_:1}),G(p,{separator:"/"},{default:Z(()=>[(C(!0),O(Fe,null,gt(r.value,w=>(C(),se(f,{key:w.path},{default:Z(()=>[mt(Ce(w.title),1)]),_:2},1024))),128))]),_:1})]),x("div",p0e,[G(m,{content:"主题设置",placement:"bottom"},{default:Z(()=>[x("div",{class:"header-action",onClick:c[1]||(c[1]=(...w)=>i(a).toggleThemeDrawer&&i(a).toggleThemeDrawer(...w))},[G(d,null,{default:Z(()=>[G(i(v8))]),_:1})])]),_:1}),G(b,{trigger:"click",onCommand:s},{dropdown:Z(()=>[G(g,null,{default:Z(()=>[G(h,{command:"profile"},{default:Z(()=>[...c[2]||(c[2]=[mt("个人中心",-1)])]),_:1}),G(h,{command:"password"},{default:Z(()=>[...c[3]||(c[3]=[mt("修改密码",-1)])]),_:1}),G(h,{divided:"",command:"logout"},{default:Z(()=>[...c[4]||(c[4]=[mt("退出登录",-1)])]),_:1})]),_:1})]),default:Z(()=>{var w,_,y;return[x("div",v0e,[G(v,{size:32,src:((w=l.value)==null?void 0:w.avatar)||void 0},{default:Z(()=>{var S,E,T,M;return[mt(Ce(((E=(S=l.value)==null?void 0:S.realName)==null?void 0:E.charAt(0))||((M=(T=l.value)==null?void 0:T.username)==null?void 0:M.charAt(0))||"U"),1)]}),_:1},8,["src"]),x("span",h0e,Ce(((_=l.value)==null?void 0:_.realName)||((y=l.value)==null?void 0:y.username)),1),G(d,null,{default:Z(()=>[G(i(jo))]),_:1})])]}),_:1})])])}}}),g0e=Xs(m0e,[["__scopeId","data-v-dd2a461a"]]),b0e={class:"theme-drawer"},y0e={class:"theme-section"},w0e={class:"theme-grid"},_0e=["onClick"],C0e={class:"theme-label"},S0e={class:"theme-section"},k0e={class:"custom-theme"},E0e={class:"color-item"},x0e={class:"color-item"},T0e={class:"color-item"},M0e={class:"theme-section"},$0e={class:"preview-box"},O0e={class:"preview-menu"},A0e=z({__name:"ThemeDrawer",setup(e){const t=om(),n=Ot({primaryColor:"#4A90D9",sidebarBg:"#F0F7FF",bgPage:"#F5F9FC"}),o=k(()=>{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||a(n.primaryColor,.9)};const u=$2.find(c=>c.name===t.currentTheme);return u?{primaryColor:u.primaryColor,sidebarBg:u.sidebarBg,bgPage:u.bgPage,primaryBg:u.primaryBg}:{primaryColor:n.primaryColor,sidebarBg:n.sidebarBg,bgPage:n.bgPage,primaryBg:a(n.primaryColor,.9)}}),a=(u,c)=>{const d=u.replace("#",""),f=parseInt(d.substring(0,2),16),p=parseInt(d.substring(2,4),16),m=parseInt(d.substring(4,6),16),v=Math.round(f+(255-f)*c),h=Math.round(p+(255-p)*c),g=Math.round(m+(255-m)*c);return`rgb(${v}, ${h}, ${g})`},l=(u,c)=>{const d=u.replace("#",""),f=parseInt(d.substring(0,2),16),p=parseInt(d.substring(2,4),16),m=parseInt(d.substring(4,6),16),v=Math.round(f*(1-c)),h=Math.round(p*(1-c)),g=Math.round(m*(1-c));return`rgb(${v}, ${h}, ${g})`},r=()=>{},s=()=>{t.saveCustomTheme({primaryColor:n.primaryColor,primaryLight:a(n.primaryColor,.3),primaryDark:l(n.primaryColor,.2),primaryBg:a(n.primaryColor,.9),sidebarBg:n.sidebarBg,sidebarLogoBg:n.primaryColor,sidebarTextActive:n.primaryColor,bgPage:n.bgPage,bgLight:a(n.bgPage,.5),bgHover:a(n.primaryColor,.85),loginBgStart:a(n.primaryColor,.2),loginBgEnd:n.primaryColor})};return de(()=>t.customTheme,u=>{u&&(n.primaryColor=u.primaryColor||"#4A90D9",n.sidebarBg=u.sidebarBg||"#F0F7FF",n.bgPage=u.bgPage||"#F5F9FC")},{immediate:!0}),(u,c)=>{const d=lt("el-icon"),f=lt("el-color-picker"),p=lt("el-button"),m=lt("el-drawer");return C(),se(m,{modelValue:i(t).showThemeDrawer,"onUpdate:modelValue":c[3]||(c[3]=v=>i(t).showThemeDrawer=v),title:"主题设置",direction:"rtl",size:"300px","show-close":!0},{default:Z(()=>[x("div",b0e,[x("div",y0e,[c[4]||(c[4]=x("h4",{class:"section-title"},"系统主题",-1)),x("div",w0e,[(C(!0),O(Fe,null,gt(i($2),v=>(C(),O("div",{key:v.name,class:N(["theme-item",{active:i(t).currentTheme===v.name}]),onClick:h=>i(t).setTheme(v.name)},[x("div",{class:"theme-preview",style:We({backgroundColor:v.primaryColor})},[i(t).currentTheme===v.name?(C(),se(d,{key:0,class:"check-icon"},{default:Z(()=>[G(i(Pr))]),_:1})):le("",!0)],4),x("span",C0e,Ce(v.label),1)],10,_0e))),128))])]),x("div",S0e,[c[9]||(c[9]=x("h4",{class:"section-title"},"自定义主题",-1)),x("div",k0e,[x("div",E0e,[c[5]||(c[5]=x("span",{class:"color-label"},"主色调",-1)),G(f,{modelValue:n.primaryColor,"onUpdate:modelValue":c[0]||(c[0]=v=>n.primaryColor=v),onChange:r},null,8,["modelValue"])]),x("div",x0e,[c[6]||(c[6]=x("span",{class:"color-label"},"侧边栏背景",-1)),G(f,{modelValue:n.sidebarBg,"onUpdate:modelValue":c[1]||(c[1]=v=>n.sidebarBg=v),onChange:r},null,8,["modelValue"])]),x("div",T0e,[c[7]||(c[7]=x("span",{class:"color-label"},"页面背景",-1)),G(f,{modelValue:n.bgPage,"onUpdate:modelValue":c[2]||(c[2]=v=>n.bgPage=v),onChange:r},null,8,["modelValue"])]),G(p,{type:"primary",class:"apply-btn",onClick:s},{default:Z(()=>[...c[8]||(c[8]=[mt(" 应用自定义主题 ",-1)])]),_:1})])]),x("div",M0e,[c[13]||(c[13]=x("h4",{class:"section-title"},"预览效果",-1)),x("div",$0e,[x("div",{class:"preview-sidebar",style:We({backgroundColor:o.value.sidebarBg})},[x("div",{class:"preview-logo",style:We({backgroundColor:o.value.primaryColor})},null,4),x("div",O0e,[c[10]||(c[10]=x("div",{class:"preview-menu-item"},null,-1)),x("div",{class:"preview-menu-item active",style:We({backgroundColor:o.value.primaryBg})},null,4),c[11]||(c[11]=x("div",{class:"preview-menu-item"},null,-1))])],4),x("div",{class:"preview-main",style:We({backgroundColor:o.value.bgPage})},[...c[12]||(c[12]=[x("div",{class:"preview-header"},null,-1),x("div",{class:"preview-content"},[x("div",{class:"preview-card"})],-1)])],4)])])])]),_:1},8,["modelValue"])}}}),R0e=Xs(A0e,[["__scopeId","data-v-102e7fe1"]]),I0e={class:"layout-container"},P0e=z({__name:"index",setup(e){const t=V(!1),n=om(),o=()=>{t.value=!t.value};return pt(()=>{n.initTheme()}),(a,l)=>{const r=lt("el-aside"),s=lt("el-header"),u=lt("router-view"),c=lt("el-main"),d=lt("el-container");return C(),O("div",I0e,[G(d,{class:"layout-wrapper"},{default:Z(()=>[G(r,{width:t.value?"64px":"200px",class:"layout-aside"},{default:Z(()=>[G(c0e,{collapse:t.value},null,8,["collapse"])]),_:1},8,["width"]),G(d,{class:"layout-main"},{default:Z(()=>[G(s,{class:"layout-header"},{default:Z(()=>[G(g0e,{collapse:t.value,onToggleCollapse:o},null,8,["collapse"])]),_:1}),G(c,{class:"layout-content"},{default:Z(()=>[G(u,null,{default:Z(({Component:f})=>[G(An,{name:"fade",mode:"out-in"},{default:Z(()=>[(C(),se(IC,null,[(C(),se(st(f)))],1024))]),_:2},1024)]),_:1})]),_:1})]),_:1})]),_:1}),G(R0e)])}}}),x9=Xs(P0e,[["__scopeId","data-v-820d9484"]]),E6=Object.freeze(Object.defineProperty({__proto__:null,default:x9},Symbol.toStringTag,{value:"Module"})),x6=Object.assign({"/src/views/business/assessment/category/index.vue":()=>Ht(()=>import("./index-sTKEEg6f.js"),__vite__mapDeps([0,1,2])),"/src/views/business/assessment/conclusion/index.vue":()=>Ht(()=>import("./index-Dx3iqF4j.js"),__vite__mapDeps([3,1,4])),"/src/views/business/assessment/question/index.vue":()=>Ht(()=>import("./index-VAuxenbw.js"),__vite__mapDeps([5,1,6])),"/src/views/business/assessment/type/index.vue":()=>Ht(()=>import("./index-lguEKq6C.js"),__vite__mapDeps([7,1,8])),"/src/views/business/config/index.vue":()=>Ht(()=>import("./index-CDRG7nDQ.js"),__vite__mapDeps([9,10])),"/src/views/business/content/banner/index.vue":()=>Ht(()=>import("./index-mSePqRS4.js"),__vite__mapDeps([11,12,13])),"/src/views/business/content/business-page/index.vue":()=>Ht(()=>import("./index-DHLMPAUF.js"),__vite__mapDeps([14,15])),"/src/views/business/content/promotion/index.vue":()=>Ht(()=>import("./index-D1BUKIhY.js"),__vite__mapDeps([16,12,17])),"/src/views/business/distribution/commission/index.vue":()=>Ht(()=>import("./index-D9B4oVpy.js"),__vite__mapDeps([18,19,20])),"/src/views/business/distribution/invite-code/index.vue":()=>Ht(()=>import("./index-Bwu0eMI0.js"),__vite__mapDeps([21,19,22])),"/src/views/business/distribution/withdrawal/index.vue":()=>Ht(()=>import("./index-Fkyf--j_.js"),__vite__mapDeps([23,19,24])),"/src/views/business/order/index.vue":()=>Ht(()=>import("./index-CYWJ-Th2.js"),__vite__mapDeps([25,26])),"/src/views/business/planner/booking/index.vue":()=>Ht(()=>import("./index-v9wh5siz.js"),__vite__mapDeps([27,28,29])),"/src/views/business/planner/index.vue":()=>Ht(()=>import("./index-CIioahvm.js"),__vite__mapDeps([30,28,31])),"/src/views/business/user/index.vue":()=>Ht(()=>import("./index-WS-yoiJc.js"),__vite__mapDeps([32,33])),"/src/views/dashboard/index.vue":()=>Ht(()=>import("./index-CSsSD8np.js"),__vite__mapDeps([34,35])),"/src/views/error/404.vue":()=>Ht(()=>import("./404-CrD8CTe6.js"),__vite__mapDeps([36,37])),"/src/views/login/index.vue":()=>Ht(()=>import("./index-HkcuRFaU.js"),__vite__mapDeps([38,39])),"/src/views/password/index.vue":()=>Ht(()=>import("./index-DBfUyTG1.js"),__vite__mapDeps([40,41])),"/src/views/profile/index.vue":()=>Ht(()=>import("./index-D8PG8Rc8.js"),__vite__mapDeps([42,43])),"/src/views/system/config/index.vue":()=>Ht(()=>import("./index-COFXK7ce.js"),__vite__mapDeps([44,45,46,47,48,49,50,51,52,53,54])),"/src/views/system/config/miniprogram.vue":()=>Ht(()=>import("./miniprogram-BnX9rjn1.js"),__vite__mapDeps([48,46,49])),"/src/views/system/config/payment.vue":()=>Ht(()=>import("./payment-CAhZ9vHc.js"),__vite__mapDeps([50,46,51])),"/src/views/system/config/upload.vue":()=>Ht(()=>import("./upload-BdDxilH0.js"),__vite__mapDeps([45,46,47])),"/src/views/system/config/user.vue":()=>Ht(()=>import("./user-D5_XWilM.js"),__vite__mapDeps([52,46,53])),"/src/views/system/department/index.vue":()=>Ht(()=>import("./index-Dohy6c1V.js"),__vite__mapDeps([55,56,57])),"/src/views/system/dict/index.vue":()=>Ht(()=>import("./index-C3FaznTu.js"),__vite__mapDeps([58,59])),"/src/views/system/log/index.vue":()=>Ht(()=>import("./index-DnDYf4Zb.js"),__vite__mapDeps([60,61])),"/src/views/system/menu/index.vue":()=>Ht(()=>import("./index-Cszekvzh.js"),__vite__mapDeps([62,63])),"/src/views/system/permission/index.vue":()=>Ht(()=>import("./index-BFBQYkSb.js"),__vite__mapDeps([64,65,66])),"/src/views/system/role/index.vue":()=>Ht(()=>import("./index-Bi7QAKG9.js"),__vite__mapDeps([67,68,65,69])),"/src/views/system/user/index.vue":()=>Ht(()=>import("./index-Lywc9iAw.js"),__vite__mapDeps([70,68,56,71]))}),T9=Q2("permission",()=>{const e=V([]),t=V([]);async function n(){const r=await o0e();t.value=r.data;const s=o(r.data);return e.value=s,s}function o(r){const s=[];for(const u of r){if(u.menuType===3)continue;const c={path:u.path||"",name:`Menu_${u.id}`,meta:{title:u.name,icon:u.icon,permission:u.permission,keepAlive:u.isCache},children:[]};if(u.parentId===0)if(c.component=x9,u.children&&u.children.length>0){c.children=o(u.children);const d=c.children[0];d&&(c.redirect=d.path)}else u.component&&(c.children=[{path:"",name:`Menu_${u.id}_index`,component:a(u.component),meta:c.meta}]);else u.component&&(c.component=a(u.component)),u.children&&u.children.length>0&&(c.children=o(u.children));s.push(c)}return s}function a(r){const s=`/src/views/${r}.vue`;return x6[s]?x6[s]:(console.warn(`Component not found: ${r}, path: ${s}`),()=>Ht(()=>import("./404-CrD8CTe6.js"),__vite__mapDeps([36,37])))}function l(){e.value=[],t.value=[]}return{routes:e,menus:t,generateRoutes:n,resetState:l}}),N0e=[{path:"/",redirect:"/dashboard"},{path:"/login",name:"Login",component:()=>Ht(()=>import("./index-HkcuRFaU.js"),__vite__mapDeps([38,39])),meta:{title:"登录"}},{path:"/404",name:"NotFound",component:()=>Ht(()=>import("./404-CrD8CTe6.js"),__vite__mapDeps([36,37])),meta:{title:"404"}},{path:"/profile",name:"Profile",component:()=>Ht(()=>Promise.resolve().then(()=>E6),void 0),meta:{title:"个人中心"},children:[{path:"",component:()=>Ht(()=>import("./index-D8PG8Rc8.js"),__vite__mapDeps([42,43])),meta:{title:"个人中心"}}]},{path:"/password",name:"Password",component:()=>Ht(()=>Promise.resolve().then(()=>E6),void 0),meta:{title:"修改密码"},children:[{path:"",component:()=>Ht(()=>import("./index-DBfUyTG1.js"),__vite__mapDeps([40,41])),meta:{title:"修改密码"}}]}],zl=ude({history:zce(),routes:N0e}),L0e=["/login","/404"];let bi=!1;function T6(){bi=!1}zl.beforeEach(async(e,t,n)=>{if(wde())if(e.path==="/login")n({path:"/"});else{const a=nm(),l=T9();if(bi)n();else try{a.userInfo||await a.getUserInfo(),(await l.generateRoutes()).forEach(s=>{zl.addRoute(s)}),zl.addRoute({path:"/:pathMatch(.*)*",redirect:"/404"}),bi=!0,n({...e,replace:!0})}catch{bi=!1,a.logout(),n(`/login?redirect=${e.path}`)}}else bi=!1,L0e.includes(e.path)?n():n(`/login?redirect=${e.path}`)});const B0e={mounted(e,t){var l,r;const{value:n}=t,a=((l=nm().userInfo)==null?void 0:l.permissions)||[];a.includes("*")||n&&((Array.isArray(n)?n.some(u=>a.includes(u)):a.includes(n))||(r=e.parentNode)==null||r.removeChild(e))}};function V0e(e){return wo({url:"/admin/upload/presigned-url",method:"POST",data:e})}async function D0e(e,t,n,o){await Cn.put(e,t,{headers:{"Content-Type":n},onUploadProgress:a=>{if(a.total&&o){const l=Math.round(a.loaded*100/a.total);o(l)}}})}async function F0e(e,t){const n=await V0e({fileName:e.name,contentType:e.type||"application/octet-stream",fileSize:e.size});if(n.code===0&&n.data){const o=n.data;if("supportsDirectUpload"in o&&o.supportsDirectUpload===!1)return M6(e,t);const a=o;return await D0e(a.uploadUrl,e,e.type||"application/octet-stream",t),{code:0,message:"上传成功",data:{url:a.fileUrl,fileName:e.name,fileSize:e.size}}}return console.warn("获取预签名URL失败,降级到服务端上传:",n.message),M6(e,t)}function M6(e,t){const n=new FormData;return n.append("file",e),wo({url:"/admin/upload/image",method:"POST",data:n,headers:{"Content-Type":"multipart/form-data"},onUploadProgress:o=>{if(o.total&&t){const a=Math.round(o.loaded*100/o.total);t(a)}}})}const z0e={class:"image-upload"},H0e={class:"upload-area"},K0e={key:0,class:"image-preview-wrapper"},W0e={class:"image-error"},j0e={class:"image-actions"},U0e={class:"upload-content"},q0e={class:"upload-text"},Y0e={key:0,class:"upload-error-message"},G0e={key:1,class:"url-input-wrapper"},X0e={key:2,class:"upload-tip"},J0e=z({__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"],o=["image/jpeg","image/png","image/gif","image/webp"],a=e,l=t,r=V(!1),s=V(0),u=V(""),c=V(""),d=V(),f=k(()=>a.accept);de(()=>a.modelValue,E=>{E!==u.value&&(u.value=E||""),E&&(c.value="")},{immediate:!0});const p=E=>{const T=E.lastIndexOf(".");return T===-1?"":E.substring(T+1).toLowerCase()},m=E=>{const T=p(E.name),M=E.type.toLowerCase(),P=n.includes(T),R=o.includes(M);return!P&&!R?{valid:!1,message:`只支持 ${n.join("、")} 格式的图片`}:{valid:!0,message:""}},v=E=>{const T=E.size/1024/1024;return T>a.maxSize?{valid:!1,message:`文件大小不能超过 ${a.maxSize}MB,当前文件大小为 ${T.toFixed(2)}MB`}:{valid:!0,message:""}},h=()=>{c.value=""},g=E=>{h();const T=m(E);if(!T.valid)return c.value=T.message,Lo.error(T.message),!1;const M=v(E);return M.valid?!0:(c.value=M.message,Lo.error(M.message),!1)},b=async E=>{var M,P,R,L,$;const T=E.file;r.value=!0,s.value=0,h();try{const B=await F0e(T,W=>{s.value=W});if(B.code===0&&((M=B.data)!=null&&M.url)){const W=B.data.url;l("update:modelValue",W),l("change",W),l("upload-success",B.data),u.value=W,Lo.success("上传成功")}else{const W=B.message||"上传失败,请重试";throw new Error(W)}}catch(B){console.error("上传失败:",B);let W="上传失败,请重试";(R=(P=B.response)==null?void 0:P.data)!=null&&R.message?W=B.response.data.message:B.message&&(W=B.message),B.code==="ECONNABORTED"||(L=B.message)!=null&&L.includes("timeout")?W="上传超时,请检查网络后重试":($=B.message)!=null&&$.includes("Network Error")&&(W="网络错误,请检查网络连接"),c.value=W,l("upload-error",B),Lo.error(W)}finally{r.value=!1,s.value=0}},w=()=>{var E,T,M;(M=(T=(E=d.value)==null?void 0:E.$el)==null?void 0:T.querySelector("img"))==null||M.click()},_=()=>{l("update:modelValue",""),l("change",""),u.value="",h()},y=()=>{},S=()=>{const E=u.value.trim();E&&(h(),l("update:modelValue",E),l("change",E))};return(E,T)=>{const M=lt("el-icon"),P=lt("el-image"),R=lt("el-progress"),L=lt("el-upload"),$=lt("el-button"),B=lt("el-input");return C(),O("div",z0e,[x("div",H0e,[e.modelValue?(C(),O("div",K0e,[G(P,{ref_key:"imageRef",ref:d,src:e.modelValue,fit:"cover",class:"preview-image","preview-src-list":[e.modelValue],"preview-teleported":""},{error:Z(()=>[x("div",W0e,[G(M,null,{default:Z(()=>[G(i(x8))]),_:1}),T[1]||(T[1]=x("span",null,"加载失败",-1))])]),_:1},8,["src","preview-src-list"]),x("div",j0e,[G(M,{class:"action-icon",onClick:w},{default:Z(()=>[G(i(Tf))]),_:1}),G(M,{class:"action-icon",onClick:_},{default:Z(()=>[G(i(kv))]),_:1})])])):(C(),se(L,{key:1,ref:"uploadRef",class:"uploader",action:e.uploadAction,"show-file-list":!1,"before-upload":g,"http-request":b,accept:f.value,disabled:e.disabled||r.value,drag:""},{default:Z(()=>[x("div",U0e,[r.value?(C(),se(R,{key:1,type:"circle",percentage:s.value,width:50},null,8,["percentage"])):(C(),se(M,{key:0,class:"upload-icon"},{default:Z(()=>[G(i(xf))]),_:1})),x("div",q0e,Ce(r.value?"上传中...":e.placeholder),1)])]),_:1},8,["action","accept","disabled"]))]),c.value?(C(),O("div",Y0e,[G(M,null,{default:Z(()=>[G(i(js))]),_:1}),x("span",null,Ce(c.value),1)])):le("",!0),e.showUrlInput?(C(),O("div",G0e,[G(B,{modelValue:u.value,"onUpdate:modelValue":T[0]||(T[0]=W=>u.value=W),placeholder:e.urlPlaceholder,disabled:e.disabled,clearable:"",onBlur:y,onKeyup:Qt(S,["enter"])},{append:Z(()=>[G($,{disabled:!u.value,onClick:S},{default:Z(()=>[...T[2]||(T[2]=[mt(" 确定 ",-1)])]),_:1},8,["disabled"])]),_:1},8,["modelValue","placeholder","disabled"])])):le("",!0),e.tip?(C(),O("div",X0e,Ce(e.tip),1)):le("",!0)])}}}),Z0e=Xs(J0e,[["__scopeId","data-v-cbadb1e5"]]);function Rpe(){return Ao.get("/admin/dict/types")}function Ipe(e){return Ao.post("/admin/dict/types",e)}function Ppe(e,t){return Ao.put(`/admin/dict/types/${e}`,t)}function Npe(e){return Ao.delete(`/admin/dict/types/${e}`)}function am(e){return Ao.get(`/admin/dict/items/${e}`)}function Lpe(e){return Ao.post("/admin/dict/items",e)}function Bpe(e,t){return Ao.put(`/admin/dict/items/${e}`,t)}function Vpe(e){return Ao.delete(`/admin/dict/items/${e}`)}const Q0e=z({__name:"index",props:ps({type:{},placeholder:{default:"请选择"},disabled:{type:Boolean,default:!1},clearable:{type:Boolean,default:!0},filterable:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{}}),emits:ps(["change"],["update:modelValue"]),setup(e,{expose:t,emit:n}){const o=e,a=n,l=Y2(e,"modelValue"),r=V(!1),s=V([]);async function u(){if(o.type){r.value=!0;try{const d=await am(o.type);s.value=(d.data||[]).filter(f=>f.status===1)}catch(d){console.error(`加载字典[${o.type}]失败`,d),s.value=[]}finally{r.value=!1}}}function c(d){const f=s.value.find(p=>p.value===d);a("change",d,f)}return de(()=>o.type,()=>{u()}),pt(()=>{u()}),t({reload:u,getOptions:()=>s.value}),(d,f)=>{const p=lt("el-option"),m=lt("el-select");return C(),se(m,{modelValue:l.value,"onUpdate:modelValue":f[0]||(f[0]=v=>l.value=v),placeholder:e.placeholder,disabled:e.disabled,clearable:e.clearable,filterable:e.filterable,loading:r.value,onChange:c},{default:Z(()=>[(C(!0),O(Fe,null,gt(s.value,v=>(C(),se(p,{key:v.value,label:v.label,value:v.value,disabled:v.status!==1},null,8,["label","value","disabled"]))),128))]),_:1},8,["modelValue","placeholder","disabled","clearable","filterable","loading"])}}}),epe=z({__name:"index",props:ps({type:{},disabled:{type:Boolean,default:!1},button:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{}}),emits:ps(["change"],["update:modelValue"]),setup(e,{expose:t,emit:n}){const o=e,a=n,l=Y2(e,"modelValue"),r=V([]);async function s(){if(o.type)try{const c=await am(o.type);r.value=(c.data||[]).filter(d=>d.status===1)}catch(c){console.error(`加载字典[${o.type}]失败`,c),r.value=[]}}function u(c){const d=r.value.find(f=>f.value===c);a("change",c,d)}return de(()=>o.type,()=>{s()}),pt(()=>{s()}),t({reload:s,getOptions:()=>r.value}),(c,d)=>{const f=lt("el-radio-group");return C(),se(f,{modelValue:l.value,"onUpdate:modelValue":d[0]||(d[0]=p=>l.value=p),disabled:e.disabled,onChange:u},{default:Z(()=>[(C(!0),O(Fe,null,gt(r.value,p=>(C(),se(st(e.button?i(Hy):i(jv)),{key:p.value,value:p.value,disabled:p.status!==1},{default:Z(()=>[mt(Ce(p.label),1)]),_:2},1032,["value","disabled"]))),128))]),_:1},8,["modelValue","disabled"])}}}),tpe=z({__name:"index",props:ps({type:{},disabled:{type:Boolean,default:!1},button:{type:Boolean,default:!1}},{modelValue:{default:()=>[]},modelModifiers:{}}),emits:ps(["change"],["update:modelValue"]),setup(e,{expose:t,emit:n}){const o=e,a=n,l=Y2(e,"modelValue"),r=V([]);async function s(){if(o.type)try{const c=await am(o.type);r.value=(c.data||[]).filter(d=>d.status===1)}catch(c){console.error(`加载字典[${o.type}]失败`,c),r.value=[]}}function u(c){const d=r.value.filter(f=>c.includes(f.value));a("change",c,d)}return de(()=>o.type,()=>{s()}),pt(()=>{s()}),t({reload:s,getOptions:()=>r.value}),(c,d)=>{const f=lt("el-checkbox-group");return C(),se(f,{modelValue:l.value,"onUpdate:modelValue":d[0]||(d[0]=p=>l.value=p),disabled:e.disabled,onChange:u},{default:Z(()=>[(C(!0),O(Fe,null,gt(r.value,p=>(C(),se(st(e.button?i(Py):i(Ko)),{key:p.value,value:p.value,disabled:p.status!==1},{default:Z(()=>[mt(Ce(p.label),1)]),_:2},1032,["value","disabled"]))),128))]),_:1},8,["modelValue","disabled"])}}}),npe={ImageUpload:Z0e,DictSelect:Q0e,DictRadio:epe,DictCheckbox:tpe};function ope(e){Object.entries(npe).forEach(([t,n])=>{e.component(t,n)})}const Lr=tb(tce);for(const[e,t]of Object.entries(ED))Lr.component(e,t);Lr.directive("permission",B0e);ope(Lr);Lr.use(nk());Lr.use(zl);Lr.use(Jue,{locale:Zue});Lr.mount("#app");export{qt as $,t0e as A,U2 as B,ct as C,xf as D,Lo as E,Fe as F,le as G,OR as H,kv as I,Q0e as J,UV as K,A8 as L,RA as M,kR as N,x8 as O,jo as P,Z0e as Q,wo as R,gB as S,OV as T,uO as U,Ne as V,P_ as W,N8 as X,M8 as Y,epe as Z,Xs as _,Ot as a,Le as a0,Sn as a1,rpe as a2,de as a3,bo as a4,It as a5,Je as a6,tf as a7,Wo as a8,Bs as a9,Ape as aA,$C as aa,$B as ab,pN as ac,YV as ad,NI as ae,wA as af,dD as ag,Dn as ah,h8 as ai,b8 as aj,iI as ak,vA as al,Pr as am,Mpe as an,et as ao,Rpe as ap,Npe as aq,Ppe as ar,Ipe as as,am as at,Vpe as au,Bpe as av,Lpe as aw,st as ax,Ope as ay,$pe as az,x as b,O as c,z as d,G as e,Qt as f,lt as g,Qfe as h,cde as i,Y_ as j,C as k,i as l,XV as m,LP as n,pt as o,yP as p,aa as q,V as r,jL as s,mt as t,nm as u,k as v,Z as w,Ce as x,gt as y,se as z}; +`+l):o.stack=l}catch{}}throw o}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=Mr(this.defaults,n);const{transitional:o,paramsSerializer:a,headers:l}=n;o!==void 0&&ld.assertOptions(o,{silentJSONParsing:ba.transitional(ba.boolean),forcedJSONParsing:ba.transitional(ba.boolean),clarifyTimeoutError:ba.transitional(ba.boolean)},!1),a!=null&&(Re.isFunction(a)?n.paramsSerializer={serialize:a}:ld.assertOptions(a,{encode:ba.function,serialize:ba.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),ld.assertOptions(n,{baseUrl:ba.spelling("baseURL"),withXsrfToken:ba.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let r=l&&Re.merge(l.common,l[n.method]);l&&Re.forEach(["delete","get","head","post","put","patch","common"],v=>{delete l[v]}),n.headers=go.concat(r,l);const s=[];let u=!0;this.interceptors.request.forEach(function(h){typeof h.runWhen=="function"&&h.runWhen(n)===!1||(u=u&&h.synchronous,s.unshift(h.fulfilled,h.rejected))});const c=[];this.interceptors.response.forEach(function(h){c.push(h.fulfilled,h.rejected)});let d,f=0,p;if(!u){const v=[_6.bind(this),void 0];for(v.unshift(...s),v.push(...c),p=v.length,d=Promise.resolve(n);f{if(!o._listeners)return;let l=o._listeners.length;for(;l-- >0;)o._listeners[l](a);o._listeners=null}),this.promise.then=a=>{let l;const r=new Promise(s=>{o.subscribe(s),l=s}).then(a);return r.cancel=function(){o.unsubscribe(l)},r},t(function(l,r,s){o.reason||(o.reason=new Zs(l,r,s),n(o.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=o=>{t.abort(o)};return this.subscribe(n),t.signal.unsubscribe=()=>this.unsubscribe(n),t.signal}static source(){let t;return{token:new b9(function(a){t=a}),cancel:t}}};function Yfe(e){return function(n){return e.apply(null,n)}}function Gfe(e){return Re.isObject(e)&&e.isAxiosError===!0}const M2={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(M2).forEach(([e,t])=>{M2[t]=e});function y9(e){const t=new yr(e),n=X_(yr.prototype.request,t);return Re.extend(n,yr.prototype,t,{allOwnKeys:!0}),Re.extend(n,t,null,{allOwnKeys:!0}),n.create=function(a){return y9(Mr(e,a))},n}const Cn=y9(Ju);Cn.Axios=yr;Cn.CanceledError=Zs;Cn.CancelToken=qfe;Cn.isCancel=d9;Cn.VERSION=g9;Cn.toFormData=Zf;Cn.AxiosError=Dt;Cn.Cancel=Cn.CanceledError;Cn.all=function(t){return Promise.all(t)};Cn.spread=Yfe;Cn.isAxiosError=Gfe;Cn.mergeConfig=Mr;Cn.AxiosHeaders=go;Cn.formToJSON=e=>c9(Re.isHTMLForm(e)?new FormData(e):e);Cn.getAdapter=m9.getAdapter;Cn.HttpStatusCode=M2;Cn.default=Cn;const{Axios:fpe,AxiosError:ppe,CanceledError:vpe,isCancel:hpe,CancelToken:mpe,VERSION:gpe,all:bpe,Cancel:ype,isAxiosError:wpe,spread:_pe,toFormData:Cpe,AxiosHeaders:Spe,HttpStatusCode:kpe,formToJSON:Epe,getAdapter:xpe,mergeConfig:Tpe}=Cn,Xfe=["/admin/auth/captcha","/admin/auth/login","/admin/auth/refresh"];let Vi=!1,xc=null,rd=[];const Ao=Cn.create({baseURL:"/api",timeout:3e4});function w9(e){return e?Xfe.some(t=>e.includes(t)):!1}async function Jfe(){const e=Yf();if(!e)return!1;try{const{refreshToken:t}=await Ht(async()=>{const{refreshToken:o}=await Promise.resolve().then(()=>n0e);return{refreshToken:o}},void 0),n=await t(e);if(n.code===0&&n.data){const{accessToken:o,refreshToken:a,expiresIn:l}=n.data;return nd(o,a,l),!0}return!1}catch(t){return console.error("Token refresh failed:",t),!1}}async function _9(){if(Vi)return xc;Vi=!0,xc=Jfe();try{const e=await xc;return e?rd.forEach(({config:t,resolve:n})=>{t.headers.Authorization=`Bearer ${qu()}`,n(Ao(t))}):rd.forEach(({reject:t})=>{t(new Error("Token refresh failed"))}),e}finally{Vi=!1,xc=null,rd=[]}}async function Zfe(e){const t=e.config;return t._retry||w9(t.url)?Promise.reject(e):Yf()?(t._retry=!0,Vi?new Promise((a,l)=>{rd.push({config:t,resolve:a,reject:l})}):await _9()?(t.headers.Authorization=`Bearer ${qu()}`,Ao(t)):(Bi(),Lo.error("登录已过期,请重新登录"),zl.push("/login"),Promise.reject(e))):(Bi(),zl.push("/login"),Promise.reject(e))}Ao.interceptors.request.use(async e=>{if(w9(e.url))return e;yde()&&!Vi&&Yf()&&await _9();const t=qu();return t&&(e.headers.Authorization=`Bearer ${t}`),e},e=>(console.error("请求错误:",e),Promise.reject(e)));Ao.interceptors.response.use(e=>{const t=e.data;return t.code===0?t:(Lo.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 Zfe(e);case 403:Lo.error("没有操作权限");break;case 404:Lo.error("请求的资源不存在");break;case 500:Lo.error((n==null?void 0:n.message)||"服务器内部错误");break;default:Lo.error((n==null?void 0:n.message)||"请求失败")}}else Lo.error("网络连接失败");return Promise.reject(e)});function wo(e){return Ao(e)}function Qfe(){return wo({url:"/admin/auth/captcha",method:"post"})}function C9(e){return wo({url:"/admin/auth/login",method:"post",data:e})}function e0e(e){return wo({url:"/admin/auth/refresh",method:"post",data:{refreshToken:e}})}function S9(){return wo({url:"/admin/auth/info",method:"get"})}function t0e(e){return wo({url:"/admin/auth/password",method:"put",data:e})}function k9(){return wo({url:"/admin/auth/logout",method:"post"})}function E9(){return wo({url:"/admin/auth/revoke-all",method:"post"})}const n0e=Object.freeze(Object.defineProperty({__proto__:null,changePassword:t0e,getCaptcha:Qfe,getUserInfo:S9,login:C9,logout:k9,refreshToken:e0e,revokeAllTokens:E9},Symbol.toStringTag,{value:"Module"})),nm=Q2("user",()=>{const e=V(qu()),t=V(Yf()),n=V(null),o=k(()=>e.value);async function a(f){const p=await C9(f),{accessToken:m,refreshToken:v,expiresIn:h,userInfo:g}=p.data,b=m||p.data.token,w=v||"";return e.value=b,t.value=w,n.value=g,w?nd(b,w,h):nd(b,"",h),p}async function l(){const f=await S9();return n.value=f.data,f.data}async function r(){try{await k9()}catch(f){console.warn("Logout API call failed:",f)}e.value=null,t.value=null,n.value=null,Bi(),T6(),zl.push("/login")}async function s(){try{await E9()}catch(f){console.warn("Revoke all tokens API call failed:",f)}e.value=null,t.value=null,n.value=null,Bi(),T6(),zl.push("/login")}function u(){e.value=null,t.value=null,n.value=null,Bi()}function c(f,p,m){e.value=f,t.value=p,m!==void 0&&nd(f,p,m)}function d(){return!!e.value}return{token:o,accessToken:e,refreshToken:t,userInfo:n,login:a,getUserInfo:l,logout:r,logoutAllDevices:s,resetState:u,updateTokens:c,isLoggedIn:d}});function o0e(){return wo({url:"/admin/menus/user",method:"get"})}function Mpe(){return wo({url:"/admin/menus",method:"get"})}function $pe(e){return wo({url:"/admin/menus",method:"post",data:e})}function Ope(e,t){return wo({url:`/admin/menus/${e}`,method:"put",data:t})}function Ape(e){return wo({url:`/admin/menus/${e}`,method:"delete"})}const a0e=z({__name:"SidebarItem",props:{item:{}},setup(e){const t=e,n=k(()=>{var a;return((a=t.item.children)==null?void 0:a.filter(l=>l.menuType!==3&&l.status===1))||[]}),o=k(()=>n.value.length>0);return(a,l)=>{const r=lt("el-icon"),s=lt("SidebarItem",!0),u=lt("el-sub-menu"),c=lt("el-menu-item");return o.value?(C(),se(u,{key:0,index:e.item.path||`menu_${e.item.id}`},{title:Z(()=>[e.item.icon?(C(),se(r,{key:0},{default:Z(()=>[(C(),se(st(e.item.icon)))]),_:1})):le("",!0),x("span",null,Ce(e.item.name),1)]),default:Z(()=>[(C(!0),O(Fe,null,gt(n.value,d=>(C(),se(s,{key:d.id,item:d},null,8,["item"]))),128))]),_:1},8,["index"])):(C(),se(c,{key:1,index:e.item.path||""},{title:Z(()=>[mt(Ce(e.item.name),1)]),default:Z(()=>[e.item.icon?(C(),se(r,{key:0},{default:Z(()=>[(C(),se(st(e.item.icon)))]),_:1})):le("",!0)]),_:1},8,["index"]))}}}),l0e={class:"sidebar-container"},r0e={class:"sidebar-logo"},s0e={key:0,class:"logo-title"},i0e={key:1,class:"logo-title-mini"},u0e=z({__name:"Sidebar",props:{collapse:{type:Boolean}},setup(e){const t=Y_(),n=T9(),o=k(()=>n.menus),a=k(()=>t.path);return(l,r)=>{const s=lt("el-menu"),u=lt("el-scrollbar");return C(),O("div",l0e,[x("div",r0e,[e.collapse?(C(),O("span",i0e,"学业")):(C(),O("span",s0e,"学业邑规划"))]),G(u,null,{default:Z(()=>[G(s,{"default-active":a.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:Z(()=>[(C(!0),O(Fe,null,gt(o.value,c=>(C(),se(a0e,{key:c.id,item:c},null,8,["item"]))),128))]),_:1},8,["default-active","collapse"])]),_:1})])}}}),c0e=Xs(u0e,[["__scopeId","data-v-e6e90018"]]),$2=[{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"}],S6="mi-assessment-admin-theme",k6="mi-assessment-admin-custom-theme",om=Q2("theme",()=>{const e=V("blue"),t=V(null),n=V(!1),o=()=>{const c=localStorage.getItem(S6),d=localStorage.getItem(k6);d&&(t.value=JSON.parse(d)),c&&(e.value=c,a(c))},a=c=>{let d;if(c==="custom"&&t.value?d=t.value:d=$2.find(p=>p.name===c),!d)return;const f=document.documentElement;d.primaryColor&&(f.style.setProperty("--primary-color",d.primaryColor),f.style.setProperty("--el-color-primary",d.primaryColor)),d.primaryLight&&f.style.setProperty("--primary-light",d.primaryLight),d.primaryDark&&f.style.setProperty("--primary-dark",d.primaryDark),d.primaryBg&&f.style.setProperty("--primary-bg",d.primaryBg),d.sidebarBg&&f.style.setProperty("--sidebar-bg",d.sidebarBg),d.sidebarLogoBg&&f.style.setProperty("--sidebar-logo-bg",d.sidebarLogoBg),d.sidebarTextActive&&(f.style.setProperty("--sidebar-text-active",d.sidebarTextActive),f.style.setProperty("--sidebar-item-active",d.primaryBg||d.sidebarBg||""),f.style.setProperty("--sidebar-item-hover",d.bgHover||"")),d.bgPage&&(f.style.setProperty("--bg-page",d.bgPage),f.style.setProperty("--el-bg-color-page",d.bgPage)),d.bgLight&&f.style.setProperty("--bg-light",d.bgLight),d.bgHover&&f.style.setProperty("--bg-hover",d.bgHover),d.loginBgStart&&f.style.setProperty("--login-bg-start",d.loginBgStart),d.loginBgEnd&&f.style.setProperty("--login-bg-end",d.loginBgEnd),d.primaryColor&&l(d.primaryColor)},l=c=>{const d=document.documentElement,f=c.replace("#",""),p=parseInt(f.substring(0,2),16),m=parseInt(f.substring(2,4),16),v=parseInt(f.substring(4,6),16);[3,5,7,8,9].forEach(y=>{const S=y/10,E=Math.round(p+(255-p)*S),T=Math.round(m+(255-m)*S),M=Math.round(v+(255-v)*S);d.style.setProperty(`--el-color-primary-light-${y}`,`rgb(${E}, ${T}, ${M})`)});const g=.2,b=Math.round(p*(1-g)),w=Math.round(m*(1-g)),_=Math.round(v*(1-g));d.style.setProperty("--el-color-primary-dark-2",`rgb(${b}, ${w}, ${_})`)},r=c=>{e.value=c,localStorage.setItem(S6,c),a(c)};return{currentTheme:e,customTheme:t,showThemeDrawer:n,initTheme:o,setTheme:r,saveCustomTheme:c=>{t.value={...c,name:"custom",label:"自定义"},localStorage.setItem(k6,JSON.stringify(t.value)),r("custom")},toggleThemeDrawer:()=>{n.value=!n.value},applyTheme:a}}),d0e={class:"header-container"},f0e={class:"header-left"},p0e={class:"header-right"},v0e={class:"user-info"},h0e={class:"username"},m0e=z({__name:"Header",props:{collapse:{type:Boolean}},emits:["toggle-collapse"],setup(e){const t=Y_(),n=cde(),o=nm(),a=om(),l=k(()=>o.userInfo),r=k(()=>t.matched.filter(c=>{var d;return(d=c.meta)==null?void 0:d.title}).map(c=>{var d;return{path:c.path,title:(d=c.meta)==null?void 0:d.title}})),s=async u=>{switch(u){case"profile":n.push("/profile");break;case"password":n.push("/password");break;case"logout":try{await P_.confirm("确定要退出登录吗?","提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}),await o.logout()}catch{}break}};return(u,c)=>{const d=lt("el-icon"),f=lt("el-breadcrumb-item"),p=lt("el-breadcrumb"),m=lt("el-tooltip"),v=lt("el-avatar"),h=lt("el-dropdown-item"),g=lt("el-dropdown-menu"),b=lt("el-dropdown");return C(),O("div",d0e,[x("div",f0e,[G(d,{class:"collapse-btn",onClick:c[0]||(c[0]=w=>u.$emit("toggle-collapse"))},{default:Z(()=>[e.collapse?(C(),se(i(y8),{key:1})):(C(),se(i(w8),{key:0}))]),_:1}),G(p,{separator:"/"},{default:Z(()=>[(C(!0),O(Fe,null,gt(r.value,w=>(C(),se(f,{key:w.path},{default:Z(()=>[mt(Ce(w.title),1)]),_:2},1024))),128))]),_:1})]),x("div",p0e,[G(m,{content:"主题设置",placement:"bottom"},{default:Z(()=>[x("div",{class:"header-action",onClick:c[1]||(c[1]=(...w)=>i(a).toggleThemeDrawer&&i(a).toggleThemeDrawer(...w))},[G(d,null,{default:Z(()=>[G(i(v8))]),_:1})])]),_:1}),G(b,{trigger:"click",onCommand:s},{dropdown:Z(()=>[G(g,null,{default:Z(()=>[G(h,{command:"profile"},{default:Z(()=>[...c[2]||(c[2]=[mt("个人中心",-1)])]),_:1}),G(h,{command:"password"},{default:Z(()=>[...c[3]||(c[3]=[mt("修改密码",-1)])]),_:1}),G(h,{divided:"",command:"logout"},{default:Z(()=>[...c[4]||(c[4]=[mt("退出登录",-1)])]),_:1})]),_:1})]),default:Z(()=>{var w,_,y;return[x("div",v0e,[G(v,{size:32,src:((w=l.value)==null?void 0:w.avatar)||void 0},{default:Z(()=>{var S,E,T,M;return[mt(Ce(((E=(S=l.value)==null?void 0:S.realName)==null?void 0:E.charAt(0))||((M=(T=l.value)==null?void 0:T.username)==null?void 0:M.charAt(0))||"U"),1)]}),_:1},8,["src"]),x("span",h0e,Ce(((_=l.value)==null?void 0:_.realName)||((y=l.value)==null?void 0:y.username)),1),G(d,null,{default:Z(()=>[G(i(jo))]),_:1})])]}),_:1})])])}}}),g0e=Xs(m0e,[["__scopeId","data-v-dd2a461a"]]),b0e={class:"theme-drawer"},y0e={class:"theme-section"},w0e={class:"theme-grid"},_0e=["onClick"],C0e={class:"theme-label"},S0e={class:"theme-section"},k0e={class:"custom-theme"},E0e={class:"color-item"},x0e={class:"color-item"},T0e={class:"color-item"},M0e={class:"theme-section"},$0e={class:"preview-box"},O0e={class:"preview-menu"},A0e=z({__name:"ThemeDrawer",setup(e){const t=om(),n=Ot({primaryColor:"#4A90D9",sidebarBg:"#F0F7FF",bgPage:"#F5F9FC"}),o=k(()=>{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||a(n.primaryColor,.9)};const u=$2.find(c=>c.name===t.currentTheme);return u?{primaryColor:u.primaryColor,sidebarBg:u.sidebarBg,bgPage:u.bgPage,primaryBg:u.primaryBg}:{primaryColor:n.primaryColor,sidebarBg:n.sidebarBg,bgPage:n.bgPage,primaryBg:a(n.primaryColor,.9)}}),a=(u,c)=>{const d=u.replace("#",""),f=parseInt(d.substring(0,2),16),p=parseInt(d.substring(2,4),16),m=parseInt(d.substring(4,6),16),v=Math.round(f+(255-f)*c),h=Math.round(p+(255-p)*c),g=Math.round(m+(255-m)*c);return`rgb(${v}, ${h}, ${g})`},l=(u,c)=>{const d=u.replace("#",""),f=parseInt(d.substring(0,2),16),p=parseInt(d.substring(2,4),16),m=parseInt(d.substring(4,6),16),v=Math.round(f*(1-c)),h=Math.round(p*(1-c)),g=Math.round(m*(1-c));return`rgb(${v}, ${h}, ${g})`},r=()=>{},s=()=>{t.saveCustomTheme({primaryColor:n.primaryColor,primaryLight:a(n.primaryColor,.3),primaryDark:l(n.primaryColor,.2),primaryBg:a(n.primaryColor,.9),sidebarBg:n.sidebarBg,sidebarLogoBg:n.primaryColor,sidebarTextActive:n.primaryColor,bgPage:n.bgPage,bgLight:a(n.bgPage,.5),bgHover:a(n.primaryColor,.85),loginBgStart:a(n.primaryColor,.2),loginBgEnd:n.primaryColor})};return de(()=>t.customTheme,u=>{u&&(n.primaryColor=u.primaryColor||"#4A90D9",n.sidebarBg=u.sidebarBg||"#F0F7FF",n.bgPage=u.bgPage||"#F5F9FC")},{immediate:!0}),(u,c)=>{const d=lt("el-icon"),f=lt("el-color-picker"),p=lt("el-button"),m=lt("el-drawer");return C(),se(m,{modelValue:i(t).showThemeDrawer,"onUpdate:modelValue":c[3]||(c[3]=v=>i(t).showThemeDrawer=v),title:"主题设置",direction:"rtl",size:"300px","show-close":!0},{default:Z(()=>[x("div",b0e,[x("div",y0e,[c[4]||(c[4]=x("h4",{class:"section-title"},"系统主题",-1)),x("div",w0e,[(C(!0),O(Fe,null,gt(i($2),v=>(C(),O("div",{key:v.name,class:N(["theme-item",{active:i(t).currentTheme===v.name}]),onClick:h=>i(t).setTheme(v.name)},[x("div",{class:"theme-preview",style:We({backgroundColor:v.primaryColor})},[i(t).currentTheme===v.name?(C(),se(d,{key:0,class:"check-icon"},{default:Z(()=>[G(i(Pr))]),_:1})):le("",!0)],4),x("span",C0e,Ce(v.label),1)],10,_0e))),128))])]),x("div",S0e,[c[9]||(c[9]=x("h4",{class:"section-title"},"自定义主题",-1)),x("div",k0e,[x("div",E0e,[c[5]||(c[5]=x("span",{class:"color-label"},"主色调",-1)),G(f,{modelValue:n.primaryColor,"onUpdate:modelValue":c[0]||(c[0]=v=>n.primaryColor=v),onChange:r},null,8,["modelValue"])]),x("div",x0e,[c[6]||(c[6]=x("span",{class:"color-label"},"侧边栏背景",-1)),G(f,{modelValue:n.sidebarBg,"onUpdate:modelValue":c[1]||(c[1]=v=>n.sidebarBg=v),onChange:r},null,8,["modelValue"])]),x("div",T0e,[c[7]||(c[7]=x("span",{class:"color-label"},"页面背景",-1)),G(f,{modelValue:n.bgPage,"onUpdate:modelValue":c[2]||(c[2]=v=>n.bgPage=v),onChange:r},null,8,["modelValue"])]),G(p,{type:"primary",class:"apply-btn",onClick:s},{default:Z(()=>[...c[8]||(c[8]=[mt(" 应用自定义主题 ",-1)])]),_:1})])]),x("div",M0e,[c[13]||(c[13]=x("h4",{class:"section-title"},"预览效果",-1)),x("div",$0e,[x("div",{class:"preview-sidebar",style:We({backgroundColor:o.value.sidebarBg})},[x("div",{class:"preview-logo",style:We({backgroundColor:o.value.primaryColor})},null,4),x("div",O0e,[c[10]||(c[10]=x("div",{class:"preview-menu-item"},null,-1)),x("div",{class:"preview-menu-item active",style:We({backgroundColor:o.value.primaryBg})},null,4),c[11]||(c[11]=x("div",{class:"preview-menu-item"},null,-1))])],4),x("div",{class:"preview-main",style:We({backgroundColor:o.value.bgPage})},[...c[12]||(c[12]=[x("div",{class:"preview-header"},null,-1),x("div",{class:"preview-content"},[x("div",{class:"preview-card"})],-1)])],4)])])])]),_:1},8,["modelValue"])}}}),R0e=Xs(A0e,[["__scopeId","data-v-102e7fe1"]]),I0e={class:"layout-container"},P0e=z({__name:"index",setup(e){const t=V(!1),n=om(),o=()=>{t.value=!t.value};return pt(()=>{n.initTheme()}),(a,l)=>{const r=lt("el-aside"),s=lt("el-header"),u=lt("router-view"),c=lt("el-main"),d=lt("el-container");return C(),O("div",I0e,[G(d,{class:"layout-wrapper"},{default:Z(()=>[G(r,{width:t.value?"64px":"200px",class:"layout-aside"},{default:Z(()=>[G(c0e,{collapse:t.value},null,8,["collapse"])]),_:1},8,["width"]),G(d,{class:"layout-main"},{default:Z(()=>[G(s,{class:"layout-header"},{default:Z(()=>[G(g0e,{collapse:t.value,onToggleCollapse:o},null,8,["collapse"])]),_:1}),G(c,{class:"layout-content"},{default:Z(()=>[G(u,null,{default:Z(({Component:f})=>[G(An,{name:"fade",mode:"out-in"},{default:Z(()=>[(C(),se(IC,null,[(C(),se(st(f)))],1024))]),_:2},1024)]),_:1})]),_:1})]),_:1})]),_:1}),G(R0e)])}}}),x9=Xs(P0e,[["__scopeId","data-v-820d9484"]]),E6=Object.freeze(Object.defineProperty({__proto__:null,default:x9},Symbol.toStringTag,{value:"Module"})),x6=Object.assign({"/src/views/business/assessment/category/index.vue":()=>Ht(()=>import("./index-DhlnEG4X.js"),__vite__mapDeps([0,1,2])),"/src/views/business/assessment/conclusion/index.vue":()=>Ht(()=>import("./index-BwEVSuVj.js"),__vite__mapDeps([3,1,4])),"/src/views/business/assessment/question/index.vue":()=>Ht(()=>import("./index-zcTKDpLD.js"),__vite__mapDeps([5,1,6])),"/src/views/business/assessment/type/index.vue":()=>Ht(()=>import("./index-CNzxsQlX.js"),__vite__mapDeps([7,1,8])),"/src/views/business/config/index.vue":()=>Ht(()=>import("./index-DBRSFLjd.js"),__vite__mapDeps([9,10])),"/src/views/business/content/banner/index.vue":()=>Ht(()=>import("./index-Cowis3Ki.js"),__vite__mapDeps([11,12,13])),"/src/views/business/content/business-page/index.vue":()=>Ht(()=>import("./index-D31x_wbW.js"),__vite__mapDeps([14,15])),"/src/views/business/content/promotion/index.vue":()=>Ht(()=>import("./index-BxbIb8yP.js"),__vite__mapDeps([16,12,17])),"/src/views/business/distribution/commission/index.vue":()=>Ht(()=>import("./index-DNukX_JB.js"),__vite__mapDeps([18,19,20])),"/src/views/business/distribution/invite-code/index.vue":()=>Ht(()=>import("./index-Cqp54U_W.js"),__vite__mapDeps([21,19,22])),"/src/views/business/distribution/withdrawal/index.vue":()=>Ht(()=>import("./index-extwAH6t.js"),__vite__mapDeps([23,19,24])),"/src/views/business/order/index.vue":()=>Ht(()=>import("./index-Dy3V-uaE.js"),__vite__mapDeps([25,26])),"/src/views/business/planner/booking/index.vue":()=>Ht(()=>import("./index-CMdxHYsD.js"),__vite__mapDeps([27,28,29])),"/src/views/business/planner/index.vue":()=>Ht(()=>import("./index-BLWTq4vE.js"),__vite__mapDeps([30,28,31])),"/src/views/business/user/index.vue":()=>Ht(()=>import("./index-qU0doopF.js"),__vite__mapDeps([32,33])),"/src/views/dashboard/index.vue":()=>Ht(()=>import("./index-BZbJ-7bH.js"),__vite__mapDeps([34,35])),"/src/views/error/404.vue":()=>Ht(()=>import("./404-BRVDSvYo.js"),__vite__mapDeps([36,37])),"/src/views/login/index.vue":()=>Ht(()=>import("./index-BAtkHaFY.js"),__vite__mapDeps([38,39])),"/src/views/password/index.vue":()=>Ht(()=>import("./index-PKkdanWm.js"),__vite__mapDeps([40,41])),"/src/views/profile/index.vue":()=>Ht(()=>import("./index-BEa9Y37Y.js"),__vite__mapDeps([42,43])),"/src/views/system/config/index.vue":()=>Ht(()=>import("./index-0S59g-J9.js"),__vite__mapDeps([44,45,46,47,48,49,50,51,52,53,54])),"/src/views/system/config/miniprogram.vue":()=>Ht(()=>import("./miniprogram-CugR1aVC.js"),__vite__mapDeps([48,46,49])),"/src/views/system/config/payment.vue":()=>Ht(()=>import("./payment-1vnbCmrB.js"),__vite__mapDeps([50,46,51])),"/src/views/system/config/upload.vue":()=>Ht(()=>import("./upload-CpRf_gCY.js"),__vite__mapDeps([45,46,47])),"/src/views/system/config/user.vue":()=>Ht(()=>import("./user-md0sNmmV.js"),__vite__mapDeps([52,46,53])),"/src/views/system/department/index.vue":()=>Ht(()=>import("./index-Dw6nUBUg.js"),__vite__mapDeps([55,56,57])),"/src/views/system/dict/index.vue":()=>Ht(()=>import("./index-DfwoE1L4.js"),__vite__mapDeps([58,59])),"/src/views/system/log/index.vue":()=>Ht(()=>import("./index-CCE-d0H7.js"),__vite__mapDeps([60,61])),"/src/views/system/menu/index.vue":()=>Ht(()=>import("./index-DoiofAKi.js"),__vite__mapDeps([62,63])),"/src/views/system/permission/index.vue":()=>Ht(()=>import("./index-U2Ndf4KH.js"),__vite__mapDeps([64,65,66])),"/src/views/system/role/index.vue":()=>Ht(()=>import("./index-CeBsHWU_.js"),__vite__mapDeps([67,68,65,69])),"/src/views/system/user/index.vue":()=>Ht(()=>import("./index-C0ifigbw.js"),__vite__mapDeps([70,68,56,71]))}),T9=Q2("permission",()=>{const e=V([]),t=V([]);async function n(){const r=await o0e();t.value=r.data;const s=o(r.data);return e.value=s,s}function o(r){const s=[];for(const u of r){if(u.menuType===3)continue;const c={path:u.path||"",name:`Menu_${u.id}`,meta:{title:u.name,icon:u.icon,permission:u.permission,keepAlive:u.isCache},children:[]};if(u.parentId===0)if(c.component=x9,u.children&&u.children.length>0){c.children=o(u.children);const d=c.children[0];d&&(c.redirect=d.path)}else u.component&&(c.children=[{path:"",name:`Menu_${u.id}_index`,component:a(u.component),meta:c.meta}]);else u.component&&(c.component=a(u.component)),u.children&&u.children.length>0&&(c.children=o(u.children));s.push(c)}return s}function a(r){const s=`/src/views/${r}.vue`;return x6[s]?x6[s]:(console.warn(`Component not found: ${r}, path: ${s}`),()=>Ht(()=>import("./404-BRVDSvYo.js"),__vite__mapDeps([36,37])))}function l(){e.value=[],t.value=[]}return{routes:e,menus:t,generateRoutes:n,resetState:l}}),N0e=[{path:"/",redirect:"/dashboard"},{path:"/login",name:"Login",component:()=>Ht(()=>import("./index-BAtkHaFY.js"),__vite__mapDeps([38,39])),meta:{title:"登录"}},{path:"/404",name:"NotFound",component:()=>Ht(()=>import("./404-BRVDSvYo.js"),__vite__mapDeps([36,37])),meta:{title:"404"}},{path:"/profile",name:"Profile",component:()=>Ht(()=>Promise.resolve().then(()=>E6),void 0),meta:{title:"个人中心"},children:[{path:"",component:()=>Ht(()=>import("./index-BEa9Y37Y.js"),__vite__mapDeps([42,43])),meta:{title:"个人中心"}}]},{path:"/password",name:"Password",component:()=>Ht(()=>Promise.resolve().then(()=>E6),void 0),meta:{title:"修改密码"},children:[{path:"",component:()=>Ht(()=>import("./index-PKkdanWm.js"),__vite__mapDeps([40,41])),meta:{title:"修改密码"}}]}],zl=ude({history:zce(),routes:N0e}),L0e=["/login","/404"];let bi=!1;function T6(){bi=!1}zl.beforeEach(async(e,t,n)=>{if(wde())if(e.path==="/login")n({path:"/"});else{const a=nm(),l=T9();if(bi)n();else try{a.userInfo||await a.getUserInfo(),(await l.generateRoutes()).forEach(s=>{zl.addRoute(s)}),zl.addRoute({path:"/:pathMatch(.*)*",redirect:"/404"}),bi=!0,n({...e,replace:!0})}catch{bi=!1,a.logout(),n(`/login?redirect=${e.path}`)}}else bi=!1,L0e.includes(e.path)?n():n(`/login?redirect=${e.path}`)});const B0e={mounted(e,t){var l,r;const{value:n}=t,a=((l=nm().userInfo)==null?void 0:l.permissions)||[];a.includes("*")||n&&((Array.isArray(n)?n.some(u=>a.includes(u)):a.includes(n))||(r=e.parentNode)==null||r.removeChild(e))}};function V0e(e){return wo({url:"/admin/upload/presigned-url",method:"POST",data:e})}async function D0e(e,t,n,o){await Cn.put(e,t,{headers:{"Content-Type":n},onUploadProgress:a=>{if(a.total&&o){const l=Math.round(a.loaded*100/a.total);o(l)}}})}async function F0e(e,t){const n=await V0e({fileName:e.name,contentType:e.type||"application/octet-stream",fileSize:e.size});if(n.code===0&&n.data){const o=n.data;if("supportsDirectUpload"in o&&o.supportsDirectUpload===!1)return M6(e,t);const a=o;return await D0e(a.uploadUrl,e,e.type||"application/octet-stream",t),{code:0,message:"上传成功",data:{url:a.fileUrl,fileName:e.name,fileSize:e.size}}}return console.warn("获取预签名URL失败,降级到服务端上传:",n.message),M6(e,t)}function M6(e,t){const n=new FormData;return n.append("file",e),wo({url:"/admin/upload/image",method:"POST",data:n,headers:{"Content-Type":"multipart/form-data"},onUploadProgress:o=>{if(o.total&&t){const a=Math.round(o.loaded*100/o.total);t(a)}}})}const z0e={class:"image-upload"},H0e={class:"upload-area"},K0e={key:0,class:"image-preview-wrapper"},W0e={class:"image-error"},j0e={class:"image-actions"},U0e={class:"upload-content"},q0e={class:"upload-text"},Y0e={key:0,class:"upload-error-message"},G0e={key:1,class:"url-input-wrapper"},X0e={key:2,class:"upload-tip"},J0e=z({__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"],o=["image/jpeg","image/png","image/gif","image/webp"],a=e,l=t,r=V(!1),s=V(0),u=V(""),c=V(""),d=V(),f=k(()=>a.accept);de(()=>a.modelValue,E=>{E!==u.value&&(u.value=E||""),E&&(c.value="")},{immediate:!0});const p=E=>{const T=E.lastIndexOf(".");return T===-1?"":E.substring(T+1).toLowerCase()},m=E=>{const T=p(E.name),M=E.type.toLowerCase(),P=n.includes(T),R=o.includes(M);return!P&&!R?{valid:!1,message:`只支持 ${n.join("、")} 格式的图片`}:{valid:!0,message:""}},v=E=>{const T=E.size/1024/1024;return T>a.maxSize?{valid:!1,message:`文件大小不能超过 ${a.maxSize}MB,当前文件大小为 ${T.toFixed(2)}MB`}:{valid:!0,message:""}},h=()=>{c.value=""},g=E=>{h();const T=m(E);if(!T.valid)return c.value=T.message,Lo.error(T.message),!1;const M=v(E);return M.valid?!0:(c.value=M.message,Lo.error(M.message),!1)},b=async E=>{var M,P,R,L,$;const T=E.file;r.value=!0,s.value=0,h();try{const B=await F0e(T,W=>{s.value=W});if(B.code===0&&((M=B.data)!=null&&M.url)){const W=B.data.url;l("update:modelValue",W),l("change",W),l("upload-success",B.data),u.value=W,Lo.success("上传成功")}else{const W=B.message||"上传失败,请重试";throw new Error(W)}}catch(B){console.error("上传失败:",B);let W="上传失败,请重试";(R=(P=B.response)==null?void 0:P.data)!=null&&R.message?W=B.response.data.message:B.message&&(W=B.message),B.code==="ECONNABORTED"||(L=B.message)!=null&&L.includes("timeout")?W="上传超时,请检查网络后重试":($=B.message)!=null&&$.includes("Network Error")&&(W="网络错误,请检查网络连接"),c.value=W,l("upload-error",B),Lo.error(W)}finally{r.value=!1,s.value=0}},w=()=>{var E,T,M;(M=(T=(E=d.value)==null?void 0:E.$el)==null?void 0:T.querySelector("img"))==null||M.click()},_=()=>{l("update:modelValue",""),l("change",""),u.value="",h()},y=()=>{},S=()=>{const E=u.value.trim();E&&(h(),l("update:modelValue",E),l("change",E))};return(E,T)=>{const M=lt("el-icon"),P=lt("el-image"),R=lt("el-progress"),L=lt("el-upload"),$=lt("el-button"),B=lt("el-input");return C(),O("div",z0e,[x("div",H0e,[e.modelValue?(C(),O("div",K0e,[G(P,{ref_key:"imageRef",ref:d,src:e.modelValue,fit:"cover",class:"preview-image","preview-src-list":[e.modelValue],"preview-teleported":""},{error:Z(()=>[x("div",W0e,[G(M,null,{default:Z(()=>[G(i(x8))]),_:1}),T[1]||(T[1]=x("span",null,"加载失败",-1))])]),_:1},8,["src","preview-src-list"]),x("div",j0e,[G(M,{class:"action-icon",onClick:w},{default:Z(()=>[G(i(Tf))]),_:1}),G(M,{class:"action-icon",onClick:_},{default:Z(()=>[G(i(kv))]),_:1})])])):(C(),se(L,{key:1,ref:"uploadRef",class:"uploader",action:e.uploadAction,"show-file-list":!1,"before-upload":g,"http-request":b,accept:f.value,disabled:e.disabled||r.value,drag:""},{default:Z(()=>[x("div",U0e,[r.value?(C(),se(R,{key:1,type:"circle",percentage:s.value,width:50},null,8,["percentage"])):(C(),se(M,{key:0,class:"upload-icon"},{default:Z(()=>[G(i(xf))]),_:1})),x("div",q0e,Ce(r.value?"上传中...":e.placeholder),1)])]),_:1},8,["action","accept","disabled"]))]),c.value?(C(),O("div",Y0e,[G(M,null,{default:Z(()=>[G(i(js))]),_:1}),x("span",null,Ce(c.value),1)])):le("",!0),e.showUrlInput?(C(),O("div",G0e,[G(B,{modelValue:u.value,"onUpdate:modelValue":T[0]||(T[0]=W=>u.value=W),placeholder:e.urlPlaceholder,disabled:e.disabled,clearable:"",onBlur:y,onKeyup:Qt(S,["enter"])},{append:Z(()=>[G($,{disabled:!u.value,onClick:S},{default:Z(()=>[...T[2]||(T[2]=[mt(" 确定 ",-1)])]),_:1},8,["disabled"])]),_:1},8,["modelValue","placeholder","disabled"])])):le("",!0),e.tip?(C(),O("div",X0e,Ce(e.tip),1)):le("",!0)])}}}),Z0e=Xs(J0e,[["__scopeId","data-v-cbadb1e5"]]);function Rpe(){return Ao.get("/admin/dict/types")}function Ipe(e){return Ao.post("/admin/dict/types",e)}function Ppe(e,t){return Ao.put(`/admin/dict/types/${e}`,t)}function Npe(e){return Ao.delete(`/admin/dict/types/${e}`)}function am(e){return Ao.get(`/admin/dict/items/${e}`)}function Lpe(e){return Ao.post("/admin/dict/items",e)}function Bpe(e,t){return Ao.put(`/admin/dict/items/${e}`,t)}function Vpe(e){return Ao.delete(`/admin/dict/items/${e}`)}const Q0e=z({__name:"index",props:ps({type:{},placeholder:{default:"请选择"},disabled:{type:Boolean,default:!1},clearable:{type:Boolean,default:!0},filterable:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{}}),emits:ps(["change"],["update:modelValue"]),setup(e,{expose:t,emit:n}){const o=e,a=n,l=Y2(e,"modelValue"),r=V(!1),s=V([]);async function u(){if(o.type){r.value=!0;try{const d=await am(o.type);s.value=(d.data||[]).filter(f=>f.status===1)}catch(d){console.error(`加载字典[${o.type}]失败`,d),s.value=[]}finally{r.value=!1}}}function c(d){const f=s.value.find(p=>p.value===d);a("change",d,f)}return de(()=>o.type,()=>{u()}),pt(()=>{u()}),t({reload:u,getOptions:()=>s.value}),(d,f)=>{const p=lt("el-option"),m=lt("el-select");return C(),se(m,{modelValue:l.value,"onUpdate:modelValue":f[0]||(f[0]=v=>l.value=v),placeholder:e.placeholder,disabled:e.disabled,clearable:e.clearable,filterable:e.filterable,loading:r.value,onChange:c},{default:Z(()=>[(C(!0),O(Fe,null,gt(s.value,v=>(C(),se(p,{key:v.value,label:v.label,value:v.value,disabled:v.status!==1},null,8,["label","value","disabled"]))),128))]),_:1},8,["modelValue","placeholder","disabled","clearable","filterable","loading"])}}}),epe=z({__name:"index",props:ps({type:{},disabled:{type:Boolean,default:!1},button:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{}}),emits:ps(["change"],["update:modelValue"]),setup(e,{expose:t,emit:n}){const o=e,a=n,l=Y2(e,"modelValue"),r=V([]);async function s(){if(o.type)try{const c=await am(o.type);r.value=(c.data||[]).filter(d=>d.status===1)}catch(c){console.error(`加载字典[${o.type}]失败`,c),r.value=[]}}function u(c){const d=r.value.find(f=>f.value===c);a("change",c,d)}return de(()=>o.type,()=>{s()}),pt(()=>{s()}),t({reload:s,getOptions:()=>r.value}),(c,d)=>{const f=lt("el-radio-group");return C(),se(f,{modelValue:l.value,"onUpdate:modelValue":d[0]||(d[0]=p=>l.value=p),disabled:e.disabled,onChange:u},{default:Z(()=>[(C(!0),O(Fe,null,gt(r.value,p=>(C(),se(st(e.button?i(Hy):i(jv)),{key:p.value,value:p.value,disabled:p.status!==1},{default:Z(()=>[mt(Ce(p.label),1)]),_:2},1032,["value","disabled"]))),128))]),_:1},8,["modelValue","disabled"])}}}),tpe=z({__name:"index",props:ps({type:{},disabled:{type:Boolean,default:!1},button:{type:Boolean,default:!1}},{modelValue:{default:()=>[]},modelModifiers:{}}),emits:ps(["change"],["update:modelValue"]),setup(e,{expose:t,emit:n}){const o=e,a=n,l=Y2(e,"modelValue"),r=V([]);async function s(){if(o.type)try{const c=await am(o.type);r.value=(c.data||[]).filter(d=>d.status===1)}catch(c){console.error(`加载字典[${o.type}]失败`,c),r.value=[]}}function u(c){const d=r.value.filter(f=>c.includes(f.value));a("change",c,d)}return de(()=>o.type,()=>{s()}),pt(()=>{s()}),t({reload:s,getOptions:()=>r.value}),(c,d)=>{const f=lt("el-checkbox-group");return C(),se(f,{modelValue:l.value,"onUpdate:modelValue":d[0]||(d[0]=p=>l.value=p),disabled:e.disabled,onChange:u},{default:Z(()=>[(C(!0),O(Fe,null,gt(r.value,p=>(C(),se(st(e.button?i(Py):i(Ko)),{key:p.value,value:p.value,disabled:p.status!==1},{default:Z(()=>[mt(Ce(p.label),1)]),_:2},1032,["value","disabled"]))),128))]),_:1},8,["modelValue","disabled"])}}}),npe={ImageUpload:Z0e,DictSelect:Q0e,DictRadio:epe,DictCheckbox:tpe};function ope(e){Object.entries(npe).forEach(([t,n])=>{e.component(t,n)})}const Lr=tb(tce);for(const[e,t]of Object.entries(ED))Lr.component(e,t);Lr.directive("permission",B0e);ope(Lr);Lr.use(nk());Lr.use(zl);Lr.use(Jue,{locale:Zue});Lr.mount("#app");export{qt as $,t0e as A,U2 as B,ct as C,xf as D,Lo as E,Fe as F,le as G,OR as H,kv as I,Q0e as J,UV as K,A8 as L,RA as M,kR as N,x8 as O,jo as P,Z0e as Q,wo as R,gB as S,OV as T,uO as U,Ne as V,P_ as W,N8 as X,M8 as Y,epe as Z,Xs as _,Ot as a,Le as a0,Sn as a1,rpe as a2,de as a3,bo as a4,It as a5,Je as a6,tf as a7,Wo as a8,Bs as a9,Ape as aA,$C as aa,$B as ab,pN as ac,YV as ad,NI as ae,wA as af,dD as ag,Dn as ah,h8 as ai,b8 as aj,iI as ak,vA as al,Pr as am,Mpe as an,et as ao,Rpe as ap,Npe as aq,Ppe as ar,Ipe as as,am as at,Vpe as au,Bpe as av,Lpe as aw,st as ax,Ope as ay,$pe as az,x as b,O as c,z as d,G as e,Qt as f,lt as g,Qfe as h,cde as i,Y_ as j,C as k,i as l,XV as m,LP as n,pt as o,yP as p,aa as q,V as r,jL as s,mt as t,nm as u,k as v,Z as w,Ce as x,gt as y,se as z}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-v9wh5siz.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CMdxHYsD.js similarity index 98% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-v9wh5siz.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CMdxHYsD.js index 452cf11..7ca4175 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-v9wh5siz.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CMdxHYsD.js @@ -1 +1 @@ -import{d as ie,r as m,a as M,o as re,g as i,B as T,c as $,k as g,b as _,e,C as N,z as S,w as t,t as s,l as z,N as pe,F as ce,y as _e,J as O,L as me,s as fe,x as d,G as ve,E as x,_ as ge}from"./index-BsIaGxbR.js";import{g as be,a as ke,b as ye,u as Se,e as xe}from"./planner-BuJWI647.js";const we={class:"page-container"},De={class:"page-header"},Ve={class:"sub-text"},he={class:"sub-text"},Ce={class:"pagination-container"},Ie={class:"planner-info"},Ne={class:"planner-text"},ze={class:"sub-text"},Ue=ie({__name:"index",setup(Be){const w=m(!1),U=m([]),B=m(0),D=m(null),E=m([]),o=M({pageIndex:1,pageSize:10,plannerId:void 0,userId:void 0,bookingDateStart:void 0,bookingDateEnd:void 0,status:void 0}),V=m(!1),u=m(null),y=m(!1),h=m(!1),r=M({id:0,currentStatus:0,currentStatusName:"",status:0}),C=n=>({1:"warning",2:"",3:"success",4:"info"})[n]||"",Y=async()=>{const n=await be({pageIndex:1,pageSize:100});n.code===0&&(E.value=n.data.items)},b=async()=>{w.value=!0;try{const n=await ke(o);n.code===0&&(U.value=n.data.items,B.value=n.data.total)}finally{w.value=!1}},j=n=>{n?(o.bookingDateStart=n[0],o.bookingDateEnd=n[1]):(o.bookingDateStart=void 0,o.bookingDateEnd=void 0)},F=()=>{o.pageIndex=1,b()},G=()=>{o.plannerId=void 0,o.userId=void 0,o.bookingDateStart=void 0,o.bookingDateEnd=void 0,o.status=void 0,D.value=null,o.pageIndex=1,b()},q=n=>{o.pageSize=n,b()},A=n=>{o.pageIndex=n,b()},J=async n=>{const a=await ye(n.id);a.code===0&&(u.value=a.data,V.value=!0)},H=n=>{r.id=n.id,r.currentStatus=n.status,r.currentStatusName=n.statusName,r.status=n.status,y.value=!0},K=async()=>{if(r.status===r.currentStatus){x.warning("状态未变更");return}h.value=!0;try{(await Se({id:r.id,status:r.status})).code===0&&(x.success("状态更新成功"),y.value=!1,b())}finally{h.value=!1}},Q=async()=>{try{const n=await xe(o),a=n.data instanceof Blob?n.data:new Blob([n.data]),k=window.URL.createObjectURL(a),c=document.createElement("a");c.href=k,c.download=`预约记录_${new Date().toISOString().slice(0,10)}.xlsx`,c.click(),window.URL.revokeObjectURL(k),x.success("导出成功")}catch{x.error("导出失败")}};return re(()=>{Y(),b()}),(n,a)=>{const k=i("el-icon"),c=i("el-button"),W=i("el-option"),X=i("el-select"),v=i("el-form-item"),Z=i("el-input"),ee=i("el-date-picker"),L=i("el-form"),P=i("el-card"),f=i("el-table-column"),I=i("el-tag"),te=i("el-table"),ae=i("el-pagination"),p=i("el-descriptions-item"),le=i("el-avatar"),ne=i("el-descriptions"),oe=i("el-drawer"),se=i("el-dialog"),R=T("permission"),de=T("loading");return g(),$("div",we,[_("div",De,[a[11]||(a[11]=_("h2",null,"预约记录管理",-1)),N((g(),S(c,{type:"success",onClick:Q},{default:t(()=>[e(k,null,{default:t(()=>[e(z(pe))]),_:1}),a[10]||(a[10]=s("导出 ",-1))]),_:1})),[[R,"booking:export"]])]),e(P,{class:"search-card",shadow:"never"},{default:t(()=>[e(L,{model:o,inline:""},{default:t(()=>[e(v,{label:"规划师"},{default:t(()=>[e(X,{modelValue:o.plannerId,"onUpdate:modelValue":a[0]||(a[0]=l=>o.plannerId=l),placeholder:"请选择规划师",clearable:"",filterable:""},{default:t(()=>[(g(!0),$(ce,null,_e(E.value,l=>(g(),S(W,{key:l.id,label:l.name,value:l.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),e(v,{label:"用户ID"},{default:t(()=>[e(Z,{modelValue:o.userId,"onUpdate:modelValue":a[1]||(a[1]=l=>o.userId=l),modelModifiers:{number:!0},placeholder:"请输入用户ID",clearable:""},null,8,["modelValue"])]),_:1}),e(v,{label:"预约日期"},{default:t(()=>[e(ee,{modelValue:D.value,"onUpdate:modelValue":a[2]||(a[2]=l=>D.value=l),type:"daterange","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期","value-format":"YYYY-MM-DD",onChange:j},null,8,["modelValue"])]),_:1}),e(v,{label:"状态"},{default:t(()=>[e(O,{modelValue:o.status,"onUpdate:modelValue":a[3]||(a[3]=l=>o.status=l),"dict-type":"booking_status",placeholder:"请选择状态",clearable:""},null,8,["modelValue"])]),_:1}),e(v,null,{default:t(()=>[e(c,{type:"primary",onClick:F},{default:t(()=>[e(k,null,{default:t(()=>[e(z(me))]),_:1}),a[12]||(a[12]=s("搜索",-1))]),_:1}),e(c,{onClick:G},{default:t(()=>[e(k,null,{default:t(()=>[e(z(fe))]),_:1}),a[13]||(a[13]=s("重置",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),e(P,{class:"table-card",shadow:"never"},{default:t(()=>[N((g(),S(te,{data:U.value,"row-key":"id"},{default:t(()=>[e(f,{prop:"id",label:"预约ID",width:"80"}),e(f,{label:"用户信息","min-width":"150"},{default:t(({row:l})=>[_("div",null,d(l.userNickname),1),_("div",Ve,d(l.userPhone),1)]),_:1}),e(f,{prop:"plannerName",label:"规划师",width:"100"}),e(f,{prop:"bookingDate",label:"预约日期",width:"110"}),e(f,{label:"学生信息","min-width":"120"},{default:t(({row:l})=>[_("div",null,d(l.studentName),1),_("div",he,d(l.studentGradeName),1)]),_:1}),e(f,{label:"状态",width:"100",align:"center"},{default:t(({row:l})=>[e(I,{type:C(l.status)},{default:t(()=>[s(d(l.statusName),1)]),_:2},1032,["type"])]),_:1}),e(f,{prop:"createTime",label:"创建时间",width:"170"}),e(f,{label:"操作",width:"150",fixed:"right"},{default:t(({row:l})=>[e(c,{link:"",type:"primary",onClick:ue=>J(l)},{default:t(()=>[...a[14]||(a[14]=[s("详情",-1)])]),_:1},8,["onClick"]),N((g(),S(c,{link:"",type:"warning",onClick:ue=>H(l)},{default:t(()=>[...a[15]||(a[15]=[s("修改状态",-1)])]),_:1},8,["onClick"])),[[R,"booking:update"]])]),_:1})]),_:1},8,["data"])),[[de,w.value]]),_("div",Ce,[e(ae,{"current-page":o.pageIndex,"onUpdate:currentPage":a[4]||(a[4]=l=>o.pageIndex=l),"page-size":o.pageSize,"onUpdate:pageSize":a[5]||(a[5]=l=>o.pageSize=l),"page-sizes":[10,20,50,100],total:B.value,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:q,onCurrentChange:A},null,8,["current-page","page-size","total"])])]),_:1}),e(oe,{modelValue:V.value,"onUpdate:modelValue":a[6]||(a[6]=l=>V.value=l),title:"预约详情",size:"500px"},{default:t(()=>[u.value?(g(),S(ne,{key:0,column:1,border:""},{default:t(()=>[e(p,{label:"预约ID"},{default:t(()=>[s(d(u.value.id),1)]),_:1}),e(p,{label:"订单号"},{default:t(()=>[s(d(u.value.orderNo),1)]),_:1}),e(p,{label:"用户昵称"},{default:t(()=>[s(d(u.value.userNickname),1)]),_:1}),e(p,{label:"用户手机"},{default:t(()=>[s(d(u.value.userPhone),1)]),_:1}),e(p,{label:"规划师"},{default:t(()=>[_("div",Ie,[e(le,{src:u.value.plannerAvatar,size:40},null,8,["src"]),_("div",Ne,[_("div",null,d(u.value.plannerName),1),_("div",ze,d(u.value.plannerTitle),1)])])]),_:1}),e(p,{label:"预约日期"},{default:t(()=>[s(d(u.value.bookingDate),1)]),_:1}),e(p,{label:"学生姓名"},{default:t(()=>[s(d(u.value.studentName),1)]),_:1}),e(p,{label:"学生年级"},{default:t(()=>[s(d(u.value.studentGradeName),1)]),_:1}),e(p,{label:"学生学校"},{default:t(()=>[s(d(u.value.studentSchool||"-"),1)]),_:1}),e(p,{label:"学生成绩"},{default:t(()=>[s(d(u.value.studentScores||"-"),1)]),_:1}),e(p,{label:"备注"},{default:t(()=>[s(d(u.value.remark||"-"),1)]),_:1}),e(p,{label:"状态"},{default:t(()=>[e(I,{type:C(u.value.status)},{default:t(()=>[s(d(u.value.statusName),1)]),_:1},8,["type"])]),_:1}),e(p,{label:"创建时间"},{default:t(()=>[s(d(u.value.createTime),1)]),_:1})]),_:1})):ve("",!0)]),_:1},8,["modelValue"]),e(se,{modelValue:y.value,"onUpdate:modelValue":a[9]||(a[9]=l=>y.value=l),title:"修改预约状态",width:"400px"},{footer:t(()=>[e(c,{onClick:a[8]||(a[8]=l=>y.value=!1)},{default:t(()=>[...a[16]||(a[16]=[s("取消",-1)])]),_:1}),e(c,{type:"primary",loading:h.value,onClick:K},{default:t(()=>[...a[17]||(a[17]=[s("确定",-1)])]),_:1},8,["loading"])]),default:t(()=>[e(L,{model:r,"label-width":"80px"},{default:t(()=>[e(v,{label:"当前状态"},{default:t(()=>[e(I,{type:C(r.currentStatus)},{default:t(()=>[s(d(r.currentStatusName),1)]),_:1},8,["type"])]),_:1}),e(v,{label:"新状态"},{default:t(()=>[e(O,{modelValue:r.status,"onUpdate:modelValue":a[7]||(a[7]=l=>r.status=l),"dict-type":"booking_status",placeholder:"请选择状态",style:{width:"100%"}},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"])])}}}),Pe=ge(Ue,[["__scopeId","data-v-756b915e"]]);export{Pe as default}; +import{d as ie,r as m,a as M,o as re,g as i,B as T,c as $,k as g,b as _,e,C as N,z as S,w as t,t as s,l as z,N as pe,F as ce,y as _e,J as O,L as me,s as fe,x as d,G as ve,E as x,_ as ge}from"./index-CJcwRKyx.js";import{g as be,a as ke,b as ye,u as Se,e as xe}from"./planner-DuwciqnH.js";const we={class:"page-container"},De={class:"page-header"},Ve={class:"sub-text"},he={class:"sub-text"},Ce={class:"pagination-container"},Ie={class:"planner-info"},Ne={class:"planner-text"},ze={class:"sub-text"},Ue=ie({__name:"index",setup(Be){const w=m(!1),U=m([]),B=m(0),D=m(null),E=m([]),o=M({pageIndex:1,pageSize:10,plannerId:void 0,userId:void 0,bookingDateStart:void 0,bookingDateEnd:void 0,status:void 0}),V=m(!1),u=m(null),y=m(!1),h=m(!1),r=M({id:0,currentStatus:0,currentStatusName:"",status:0}),C=n=>({1:"warning",2:"",3:"success",4:"info"})[n]||"",Y=async()=>{const n=await be({pageIndex:1,pageSize:100});n.code===0&&(E.value=n.data.items)},b=async()=>{w.value=!0;try{const n=await ke(o);n.code===0&&(U.value=n.data.items,B.value=n.data.total)}finally{w.value=!1}},j=n=>{n?(o.bookingDateStart=n[0],o.bookingDateEnd=n[1]):(o.bookingDateStart=void 0,o.bookingDateEnd=void 0)},F=()=>{o.pageIndex=1,b()},G=()=>{o.plannerId=void 0,o.userId=void 0,o.bookingDateStart=void 0,o.bookingDateEnd=void 0,o.status=void 0,D.value=null,o.pageIndex=1,b()},q=n=>{o.pageSize=n,b()},A=n=>{o.pageIndex=n,b()},J=async n=>{const a=await ye(n.id);a.code===0&&(u.value=a.data,V.value=!0)},H=n=>{r.id=n.id,r.currentStatus=n.status,r.currentStatusName=n.statusName,r.status=n.status,y.value=!0},K=async()=>{if(r.status===r.currentStatus){x.warning("状态未变更");return}h.value=!0;try{(await Se({id:r.id,status:r.status})).code===0&&(x.success("状态更新成功"),y.value=!1,b())}finally{h.value=!1}},Q=async()=>{try{const n=await xe(o),a=n.data instanceof Blob?n.data:new Blob([n.data]),k=window.URL.createObjectURL(a),c=document.createElement("a");c.href=k,c.download=`预约记录_${new Date().toISOString().slice(0,10)}.xlsx`,c.click(),window.URL.revokeObjectURL(k),x.success("导出成功")}catch{x.error("导出失败")}};return re(()=>{Y(),b()}),(n,a)=>{const k=i("el-icon"),c=i("el-button"),W=i("el-option"),X=i("el-select"),v=i("el-form-item"),Z=i("el-input"),ee=i("el-date-picker"),L=i("el-form"),P=i("el-card"),f=i("el-table-column"),I=i("el-tag"),te=i("el-table"),ae=i("el-pagination"),p=i("el-descriptions-item"),le=i("el-avatar"),ne=i("el-descriptions"),oe=i("el-drawer"),se=i("el-dialog"),R=T("permission"),de=T("loading");return g(),$("div",we,[_("div",De,[a[11]||(a[11]=_("h2",null,"预约记录管理",-1)),N((g(),S(c,{type:"success",onClick:Q},{default:t(()=>[e(k,null,{default:t(()=>[e(z(pe))]),_:1}),a[10]||(a[10]=s("导出 ",-1))]),_:1})),[[R,"booking:export"]])]),e(P,{class:"search-card",shadow:"never"},{default:t(()=>[e(L,{model:o,inline:""},{default:t(()=>[e(v,{label:"规划师"},{default:t(()=>[e(X,{modelValue:o.plannerId,"onUpdate:modelValue":a[0]||(a[0]=l=>o.plannerId=l),placeholder:"请选择规划师",clearable:"",filterable:""},{default:t(()=>[(g(!0),$(ce,null,_e(E.value,l=>(g(),S(W,{key:l.id,label:l.name,value:l.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),e(v,{label:"用户ID"},{default:t(()=>[e(Z,{modelValue:o.userId,"onUpdate:modelValue":a[1]||(a[1]=l=>o.userId=l),modelModifiers:{number:!0},placeholder:"请输入用户ID",clearable:""},null,8,["modelValue"])]),_:1}),e(v,{label:"预约日期"},{default:t(()=>[e(ee,{modelValue:D.value,"onUpdate:modelValue":a[2]||(a[2]=l=>D.value=l),type:"daterange","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期","value-format":"YYYY-MM-DD",onChange:j},null,8,["modelValue"])]),_:1}),e(v,{label:"状态"},{default:t(()=>[e(O,{modelValue:o.status,"onUpdate:modelValue":a[3]||(a[3]=l=>o.status=l),"dict-type":"booking_status",placeholder:"请选择状态",clearable:""},null,8,["modelValue"])]),_:1}),e(v,null,{default:t(()=>[e(c,{type:"primary",onClick:F},{default:t(()=>[e(k,null,{default:t(()=>[e(z(me))]),_:1}),a[12]||(a[12]=s("搜索",-1))]),_:1}),e(c,{onClick:G},{default:t(()=>[e(k,null,{default:t(()=>[e(z(fe))]),_:1}),a[13]||(a[13]=s("重置",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),e(P,{class:"table-card",shadow:"never"},{default:t(()=>[N((g(),S(te,{data:U.value,"row-key":"id"},{default:t(()=>[e(f,{prop:"id",label:"预约ID",width:"80"}),e(f,{label:"用户信息","min-width":"150"},{default:t(({row:l})=>[_("div",null,d(l.userNickname),1),_("div",Ve,d(l.userPhone),1)]),_:1}),e(f,{prop:"plannerName",label:"规划师",width:"100"}),e(f,{prop:"bookingDate",label:"预约日期",width:"110"}),e(f,{label:"学生信息","min-width":"120"},{default:t(({row:l})=>[_("div",null,d(l.studentName),1),_("div",he,d(l.studentGradeName),1)]),_:1}),e(f,{label:"状态",width:"100",align:"center"},{default:t(({row:l})=>[e(I,{type:C(l.status)},{default:t(()=>[s(d(l.statusName),1)]),_:2},1032,["type"])]),_:1}),e(f,{prop:"createTime",label:"创建时间",width:"170"}),e(f,{label:"操作",width:"150",fixed:"right"},{default:t(({row:l})=>[e(c,{link:"",type:"primary",onClick:ue=>J(l)},{default:t(()=>[...a[14]||(a[14]=[s("详情",-1)])]),_:1},8,["onClick"]),N((g(),S(c,{link:"",type:"warning",onClick:ue=>H(l)},{default:t(()=>[...a[15]||(a[15]=[s("修改状态",-1)])]),_:1},8,["onClick"])),[[R,"booking:update"]])]),_:1})]),_:1},8,["data"])),[[de,w.value]]),_("div",Ce,[e(ae,{"current-page":o.pageIndex,"onUpdate:currentPage":a[4]||(a[4]=l=>o.pageIndex=l),"page-size":o.pageSize,"onUpdate:pageSize":a[5]||(a[5]=l=>o.pageSize=l),"page-sizes":[10,20,50,100],total:B.value,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:q,onCurrentChange:A},null,8,["current-page","page-size","total"])])]),_:1}),e(oe,{modelValue:V.value,"onUpdate:modelValue":a[6]||(a[6]=l=>V.value=l),title:"预约详情",size:"500px"},{default:t(()=>[u.value?(g(),S(ne,{key:0,column:1,border:""},{default:t(()=>[e(p,{label:"预约ID"},{default:t(()=>[s(d(u.value.id),1)]),_:1}),e(p,{label:"订单号"},{default:t(()=>[s(d(u.value.orderNo),1)]),_:1}),e(p,{label:"用户昵称"},{default:t(()=>[s(d(u.value.userNickname),1)]),_:1}),e(p,{label:"用户手机"},{default:t(()=>[s(d(u.value.userPhone),1)]),_:1}),e(p,{label:"规划师"},{default:t(()=>[_("div",Ie,[e(le,{src:u.value.plannerAvatar,size:40},null,8,["src"]),_("div",Ne,[_("div",null,d(u.value.plannerName),1),_("div",ze,d(u.value.plannerTitle),1)])])]),_:1}),e(p,{label:"预约日期"},{default:t(()=>[s(d(u.value.bookingDate),1)]),_:1}),e(p,{label:"学生姓名"},{default:t(()=>[s(d(u.value.studentName),1)]),_:1}),e(p,{label:"学生年级"},{default:t(()=>[s(d(u.value.studentGradeName),1)]),_:1}),e(p,{label:"学生学校"},{default:t(()=>[s(d(u.value.studentSchool||"-"),1)]),_:1}),e(p,{label:"学生成绩"},{default:t(()=>[s(d(u.value.studentScores||"-"),1)]),_:1}),e(p,{label:"备注"},{default:t(()=>[s(d(u.value.remark||"-"),1)]),_:1}),e(p,{label:"状态"},{default:t(()=>[e(I,{type:C(u.value.status)},{default:t(()=>[s(d(u.value.statusName),1)]),_:1},8,["type"])]),_:1}),e(p,{label:"创建时间"},{default:t(()=>[s(d(u.value.createTime),1)]),_:1})]),_:1})):ve("",!0)]),_:1},8,["modelValue"]),e(se,{modelValue:y.value,"onUpdate:modelValue":a[9]||(a[9]=l=>y.value=l),title:"修改预约状态",width:"400px"},{footer:t(()=>[e(c,{onClick:a[8]||(a[8]=l=>y.value=!1)},{default:t(()=>[...a[16]||(a[16]=[s("取消",-1)])]),_:1}),e(c,{type:"primary",loading:h.value,onClick:K},{default:t(()=>[...a[17]||(a[17]=[s("确定",-1)])]),_:1},8,["loading"])]),default:t(()=>[e(L,{model:r,"label-width":"80px"},{default:t(()=>[e(v,{label:"当前状态"},{default:t(()=>[e(I,{type:C(r.currentStatus)},{default:t(()=>[s(d(r.currentStatusName),1)]),_:1},8,["type"])]),_:1}),e(v,{label:"新状态"},{default:t(()=>[e(O,{modelValue:r.status,"onUpdate:modelValue":a[7]||(a[7]=l=>r.status=l),"dict-type":"booking_status",placeholder:"请选择状态",style:{width:"100%"}},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"])])}}}),Pe=ge(Ue,[["__scopeId","data-v-756b915e"]]);export{Pe as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-lguEKq6C.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CNzxsQlX.js similarity index 98% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-lguEKq6C.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CNzxsQlX.js index a874b83..9df07e6 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-lguEKq6C.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CNzxsQlX.js @@ -1 +1 @@ -import{d as ie,r as E,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,O as T,x as O,H as _e,P as be,I as we,Q as F,E as b,_ as ye}from"./index-BsIaGxbR.js";import{g as Ve,p as xe,q as Ce,r as he,s as ve}from"./assessment-CKsQcO9P.js";const De={class:"assessment-type-container"},Ie={class:"header-content"},Ue={class:"header-right"},Ee={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=E(),y=E(),r=N({pageIndex:1,pageSize:10,name:"",code:"",status:void 0}),o=N({loading:!1,tableData:[],total:0,dialogVisible:!1,dialogTitle:"新增测评类型",formData:x(),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 x(){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={pageIndex:r.pageIndex,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 C(){r.pageIndex=1,_()}function G(){r.name="",r.code="",r.status=void 0,r.pageIndex=1,_()}function $(l){r.pageSize=l,r.pageIndex=1,_()}function j(l){r.pageIndex=l,_()}function K({prop:l,order:e}){console.log("Sort changed:",l,e)}function P(){o.isEdit=!1,o.dialogTitle="新增测评类型",o.formData=x(),o.dialogVisible=!0}function H(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 xe({id:l.id,status:e});if(s.code===0)b.success(Q(e)),await _();else throw new Error(s.message||"状态更新失败")}catch(s){const i=s instanceof Error?s.message:"状态更新失败";b.error(i)}}function Q(l){switch(l){case f.OFFLINE:return"已下线";case f.ONLINE:return"已上线";case f.COMING:return"已设为即将上线";default:return"状态已更新"}}async function W(l){try{const e=await Ce(l.id);if(e.code===0)b.success("删除成功"),o.tableData.length===1&&r.pageIndex>1&&r.pageIndex--,await _();else throw new Error(e.message||"删除失败")}catch(e){const s=e instanceof Error?e.message:"删除失败";b.error(s)}}async function X(){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 he({...e,id:l.id}):s=await ve(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=x()}return ue(()=>{_()}),(l,e)=>{const s=d("el-icon"),i=d("el-button"),h=d("el-card"),w=d("el-input"),u=d("el-form-item"),I=d("el-form"),Z=d("el-image"),g=d("el-table-column"),ee=d("el-tag"),v=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"),U=d("el-input-number"),se=d("el-dialog"),re=me("loading");return V(),S("div",De,[t(h,{class:"page-header"},{default:a(()=>[c("div",Ie,[e[16]||(e[16]=c("div",{class:"header-left"},[c("h2",{class:"page-title"},"测评类型管理"),c("span",{class:"page-description"},"管理测评类型,配置测评产品的基本信息、价格和状态")],-1)),c("div",Ue,[t(i,{type:"primary",onClick:P},{default:a(()=>[t(s,null,{default:a(()=>[t(p(fe))]),_:1}),e[15]||(e[15]=m(" 新增测评类型 ",-1))]),_:1})])])]),_:1}),t(h,{class:"search-card"},{default:a(()=>[t(I,{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(C,["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(C,["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:C},{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(h,{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",Ee,[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,"¥"+O(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(O(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:D=>H(n)},{default:a(()=>[t(s,null,{default:a(()=>[t(p(_e))]),_:1}),e[19]||(e[19]=m(" 编辑 ",-1))]),_:1},8,["onClick"]),t(ae,{onCommand:D=>J(n,D)},{dropdown:a(()=>[t(te,null,{default:a(()=>[t(v,{command:0,disabled:n.status===0},{default:a(()=>[...e[21]||(e[21]=[m("下线",-1)])]),_:1},8,["disabled"]),t(v,{command:1,disabled:n.status===1},{default:a(()=>[...e[22]||(e[22]=[m("上线",-1)])]),_:1},8,["disabled"]),t(v,{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:D=>W(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.pageIndex,"onUpdate:currentPage":e[3]||(e[3]=n=>r.pageIndex=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:X},{default:a(()=>[...e[27]||(e[27]=[m(" 确定 ",-1)])]),_:1},8,["loading"])]),default:a(()=>[t(I,{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(F),{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(F),{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(U,{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(U,{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"])])}}}),Fe=ye(ke,[["__scopeId","data-v-088f6c54"]]);export{Fe as default}; +import{d as ie,r as E,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,O as T,x as O,H as _e,P as be,I as we,Q as F,E as b,_ as ye}from"./index-CJcwRKyx.js";import{g as Ve,p as xe,q as Ce,r as he,s as ve}from"./assessment-pbF6Upoc.js";const De={class:"assessment-type-container"},Ie={class:"header-content"},Ue={class:"header-right"},Ee={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=E(),y=E(),r=N({pageIndex:1,pageSize:10,name:"",code:"",status:void 0}),o=N({loading:!1,tableData:[],total:0,dialogVisible:!1,dialogTitle:"新增测评类型",formData:x(),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 x(){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={pageIndex:r.pageIndex,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 C(){r.pageIndex=1,_()}function G(){r.name="",r.code="",r.status=void 0,r.pageIndex=1,_()}function $(l){r.pageSize=l,r.pageIndex=1,_()}function j(l){r.pageIndex=l,_()}function K({prop:l,order:e}){console.log("Sort changed:",l,e)}function P(){o.isEdit=!1,o.dialogTitle="新增测评类型",o.formData=x(),o.dialogVisible=!0}function H(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 xe({id:l.id,status:e});if(s.code===0)b.success(Q(e)),await _();else throw new Error(s.message||"状态更新失败")}catch(s){const i=s instanceof Error?s.message:"状态更新失败";b.error(i)}}function Q(l){switch(l){case f.OFFLINE:return"已下线";case f.ONLINE:return"已上线";case f.COMING:return"已设为即将上线";default:return"状态已更新"}}async function W(l){try{const e=await Ce(l.id);if(e.code===0)b.success("删除成功"),o.tableData.length===1&&r.pageIndex>1&&r.pageIndex--,await _();else throw new Error(e.message||"删除失败")}catch(e){const s=e instanceof Error?e.message:"删除失败";b.error(s)}}async function X(){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 he({...e,id:l.id}):s=await ve(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=x()}return ue(()=>{_()}),(l,e)=>{const s=d("el-icon"),i=d("el-button"),h=d("el-card"),w=d("el-input"),u=d("el-form-item"),I=d("el-form"),Z=d("el-image"),g=d("el-table-column"),ee=d("el-tag"),v=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"),U=d("el-input-number"),se=d("el-dialog"),re=me("loading");return V(),S("div",De,[t(h,{class:"page-header"},{default:a(()=>[c("div",Ie,[e[16]||(e[16]=c("div",{class:"header-left"},[c("h2",{class:"page-title"},"测评类型管理"),c("span",{class:"page-description"},"管理测评类型,配置测评产品的基本信息、价格和状态")],-1)),c("div",Ue,[t(i,{type:"primary",onClick:P},{default:a(()=>[t(s,null,{default:a(()=>[t(p(fe))]),_:1}),e[15]||(e[15]=m(" 新增测评类型 ",-1))]),_:1})])])]),_:1}),t(h,{class:"search-card"},{default:a(()=>[t(I,{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(C,["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(C,["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:C},{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(h,{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",Ee,[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,"¥"+O(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(O(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:D=>H(n)},{default:a(()=>[t(s,null,{default:a(()=>[t(p(_e))]),_:1}),e[19]||(e[19]=m(" 编辑 ",-1))]),_:1},8,["onClick"]),t(ae,{onCommand:D=>J(n,D)},{dropdown:a(()=>[t(te,null,{default:a(()=>[t(v,{command:0,disabled:n.status===0},{default:a(()=>[...e[21]||(e[21]=[m("下线",-1)])]),_:1},8,["disabled"]),t(v,{command:1,disabled:n.status===1},{default:a(()=>[...e[22]||(e[22]=[m("上线",-1)])]),_:1},8,["disabled"]),t(v,{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:D=>W(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.pageIndex,"onUpdate:currentPage":e[3]||(e[3]=n=>r.pageIndex=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:X},{default:a(()=>[...e[27]||(e[27]=[m(" 确定 ",-1)])]),_:1},8,["loading"])]),default:a(()=>[t(I,{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(F),{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(F),{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(U,{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(U,{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"])])}}}),Fe=ye(ke,[["__scopeId","data-v-088f6c54"]]);export{Fe as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Bi7QAKG9.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CeBsHWU_.js similarity index 98% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Bi7QAKG9.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CeBsHWU_.js index a0d8daf..66488f7 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Bi7QAKG9.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CeBsHWU_.js @@ -1 +1 @@ -import{d as Re,r as i,a as J,v as Q,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,W as De,an as Pe,_ as $e}from"./index-BsIaGxbR.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-DeNQI9K8.js";import{a as Fe}from"./permission-DVpyn3g_.js";const Ne={class:"page-container"},qe={class:"card-header"},Ke={class:"permission-dialog-content"},je={class:"group-header"},We={class:"group-title"},He={class:"group-count"},Je={class:"group-items"},Qe={class:"perm-name"},Xe={class:"perm-code"},Ye=Re({__name:"index",setup(Ze){const D=i(!1),L=i([]),T=i(0),p=J({keyword:"",status:void 0,page:1,pageSize:10}),k=i(!1),x=i(!1),ee=Q(()=>x.value?"编辑角色":"新增角色"),P=i(),$=i(!1),s=J({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=Q(()=>{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),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 Ae(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 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}),S.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}),S.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 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"),W=d("el-radio"),Ce=d("el-radio-group"),B=d("el-dialog"),we=d("el-tree"),H=d("el-checkbox"),xe=d("el-checkbox-group"),U=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})),[[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(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"])),[[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: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(W,{value:1},{default:a(()=>[...e[24]||(e[24]=[u("启用",-1)])]),_:1}),l(W,{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(H,{indeterminate:ce(t),"model-value":me(t),onChange:f=>ve(t,f)},{default:a(()=>[v("span",We,w(t.name),1),v("span",He,"("+w(fe(t))+"/"+w(t.permissions.length)+")",1)]),_:2},1032,["indeterminate","model-value","onChange"])]),v("div",Je,[(c(!0),M(Y,null,Z(t.permissions,f=>(c(),b(H,{key:f.code,value:f.code},{default:a(()=>[v("span",Qe,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 J,v as Q,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,W as De,an as Pe,_ as $e}from"./index-CJcwRKyx.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-CjnkgtRA.js";import{a as Fe}from"./permission-CpmDm0Md.js";const Ne={class:"page-container"},qe={class:"card-header"},Ke={class:"permission-dialog-content"},je={class:"group-header"},We={class:"group-title"},He={class:"group-count"},Je={class:"group-items"},Qe={class:"perm-name"},Xe={class:"perm-code"},Ye=Re({__name:"index",setup(Ze){const D=i(!1),L=i([]),T=i(0),p=J({keyword:"",status:void 0,page:1,pageSize:10}),k=i(!1),x=i(!1),ee=Q(()=>x.value?"编辑角色":"新增角色"),P=i(),$=i(!1),s=J({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=Q(()=>{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),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 Ae(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 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}),S.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}),S.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 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"),W=d("el-radio"),Ce=d("el-radio-group"),B=d("el-dialog"),we=d("el-tree"),H=d("el-checkbox"),xe=d("el-checkbox-group"),U=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})),[[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(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"])),[[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: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(W,{value:1},{default:a(()=>[...e[24]||(e[24]=[u("启用",-1)])]),_:1}),l(W,{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(H,{indeterminate:ce(t),"model-value":me(t),onChange:f=>ve(t,f)},{default:a(()=>[v("span",We,w(t.name),1),v("span",He,"("+w(fe(t))+"/"+w(t.permissions.length)+")",1)]),_:2},1032,["indeterminate","model-value","onChange"])]),v("div",Je,[(c(!0),M(Y,null,Z(t.permissions,f=>(c(),b(H,{key:f.code,value:f.code},{default:a(()=>[v("span",Qe,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-mSePqRS4.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Cowis3Ki.js similarity index 98% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-mSePqRS4.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Cowis3Ki.js index 39caf61..5cc01e9 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-mSePqRS4.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Cowis3Ki.js @@ -1 +1 @@ -import{d as fe,r as R,a as C,v as T,o as ce,g as u,B as ge,c as _e,k as D,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 Ie,z as v,T as Te,U as De,O as Ne,x as A,H as Ve,I as ve,G as L,Q as Ee,E as y,V as we,_ as Ue}from"./index-BsIaGxbR.js";import{g as Re,u as Ce,a as Ae,d as Le,b as xe,c as Me}from"./content-CoE0RGgm.js";const Se={class:"banner-container"},ze={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},x=R(),I=R(),i=C({pageIndex:1,pageSize:10,title:"",status:void 0}),a=C({loading:!1,tableData:[],total:0,dialogVisible:!1,dialogTitle:"新增轮播图",formData:N(),formLoading:!1,isEdit:!1}),M=T(()=>{const t=Number(a.formData.linkType);return t===d.INTERNAL||t===d.EXTERNAL||t===d.MINIPROGRAM}),S=T(()=>Number(a.formData.linkType)===d.MINIPROGRAM),z=T(()=>{const t=Number(a.formData.linkType);return t===d.INTERNAL||t===d.EXTERNAL||t===d.MINIPROGRAM}),P=T(()=>{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=T(()=>({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 N(){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={pageIndex:i.pageIndex,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 E(t,t-1)}async function K(t){t>=a.tableData.length-1||await E(t,t+1)}async function E(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.pageIndex=1,g()}function $(){i.title="",i.status=void 0,i.pageIndex=1,g()}function j(t){i.pageSize=t,i.pageIndex=1,g()}function H(t){i.pageIndex=t,g()}function J({prop:t,order:e}){console.log("Sort changed:",t,e)}function Q(){a.isEdit=!1,a.dialogTitle="新增轮播图",a.formData=N(),a.dialogVisible=!0}function Y(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 W(){Number(a.formData.linkType)!==d.MINIPROGRAM&&(a.formData.appId=""),we(()=>{var t;(t=I.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.pageIndex>1&&i.pageIndex--,await g();else throw new Error(e.message||"删除失败")}catch(e){const o=e instanceof Error?e.message:"删除失败";y.error(o)}}async function te(){if(I.value){try{await I.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 xe({...e,id:t.id}):o=await Me(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=I.value)==null||t.resetFields(),a.formData=N()}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 D(),_e("div",Se,[l(m,{class:"page-header"},{default:n(()=>[h("div",ze,[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:Q},{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(Ie))]),_:1}),e[16]||(e[16]=_(" 重置 ",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),ye((D(),v(m,{class:"table-card"},{default:n(()=>[l(ie,{ref_key:"tableRef",ref:x,data:a.tableData,"row-key":"id",stripe:"",onSortChange:J},{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(Te))]),_: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(De))]),_: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(Ne))]),_: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=>Y(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(ve))]),_:1}),e[18]||(e[18]=_(" 删除 ",-1))]),_:1})]),_:1},8,["onConfirm"])]),_:1})]),_:1},8,["data"]),h("div",Ge,[l(se,{"current-page":i.pageIndex,"onUpdate:currentPage":e[2]||(e[2]=r=>i.pageIndex=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:H},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:I,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(Ee),{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:W},null,8,["modelValue"])]),_:1}),M.value?(D(),v(f,{key:0,label:"链接地址",prop:"linkUrl",required:z.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),S.value?(D(),v(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-a600076e"]]);export{$e as default}; +import{d as fe,r as R,a as C,v as T,o as ce,g as u,B as ge,c as _e,k as D,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 Ie,z as v,T as Te,U as De,O as Ne,x as A,H as Ve,I as ve,G as L,Q as Ee,E as y,V as we,_ as Ue}from"./index-CJcwRKyx.js";import{g as Re,u as Ce,a as Ae,d as Le,b as xe,c as Me}from"./content-BSV9jWnp.js";const Se={class:"banner-container"},ze={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},x=R(),I=R(),i=C({pageIndex:1,pageSize:10,title:"",status:void 0}),a=C({loading:!1,tableData:[],total:0,dialogVisible:!1,dialogTitle:"新增轮播图",formData:N(),formLoading:!1,isEdit:!1}),M=T(()=>{const t=Number(a.formData.linkType);return t===d.INTERNAL||t===d.EXTERNAL||t===d.MINIPROGRAM}),S=T(()=>Number(a.formData.linkType)===d.MINIPROGRAM),z=T(()=>{const t=Number(a.formData.linkType);return t===d.INTERNAL||t===d.EXTERNAL||t===d.MINIPROGRAM}),P=T(()=>{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=T(()=>({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 N(){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={pageIndex:i.pageIndex,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 E(t,t-1)}async function K(t){t>=a.tableData.length-1||await E(t,t+1)}async function E(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.pageIndex=1,g()}function $(){i.title="",i.status=void 0,i.pageIndex=1,g()}function j(t){i.pageSize=t,i.pageIndex=1,g()}function H(t){i.pageIndex=t,g()}function J({prop:t,order:e}){console.log("Sort changed:",t,e)}function Q(){a.isEdit=!1,a.dialogTitle="新增轮播图",a.formData=N(),a.dialogVisible=!0}function Y(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 W(){Number(a.formData.linkType)!==d.MINIPROGRAM&&(a.formData.appId=""),we(()=>{var t;(t=I.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.pageIndex>1&&i.pageIndex--,await g();else throw new Error(e.message||"删除失败")}catch(e){const o=e instanceof Error?e.message:"删除失败";y.error(o)}}async function te(){if(I.value){try{await I.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 xe({...e,id:t.id}):o=await Me(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=I.value)==null||t.resetFields(),a.formData=N()}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 D(),_e("div",Se,[l(m,{class:"page-header"},{default:n(()=>[h("div",ze,[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:Q},{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(Ie))]),_:1}),e[16]||(e[16]=_(" 重置 ",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),ye((D(),v(m,{class:"table-card"},{default:n(()=>[l(ie,{ref_key:"tableRef",ref:x,data:a.tableData,"row-key":"id",stripe:"",onSortChange:J},{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(Te))]),_: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(De))]),_: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(Ne))]),_: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=>Y(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(ve))]),_:1}),e[18]||(e[18]=_(" 删除 ",-1))]),_:1})]),_:1},8,["onConfirm"])]),_:1})]),_:1},8,["data"]),h("div",Ge,[l(se,{"current-page":i.pageIndex,"onUpdate:currentPage":e[2]||(e[2]=r=>i.pageIndex=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:H},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:I,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(Ee),{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:W},null,8,["modelValue"])]),_:1}),M.value?(D(),v(f,{key:0,label:"链接地址",prop:"linkUrl",required:z.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),S.value?(D(),v(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-a600076e"]]);export{$e as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Bwu0eMI0.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Cqp54U_W.js similarity index 98% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Bwu0eMI0.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Cqp54U_W.js index c1da187..e409933 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Bwu0eMI0.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Cqp54U_W.js @@ -1 +1 @@ -import{d as fe,r as c,a as M,o as ge,g as d,B as P,c as g,k as u,b as p,e as t,C as w,z as x,w as a,t as n,l as S,D as ve,N as _e,f as be,J as ye,L as Ie,s as xe,G as N,x as r,F as j,y as ke,E as z,_ as Ve}from"./index-BsIaGxbR.js";import{c as we,d as Ce,f as he,h as Ue}from"./distribution-Bk8S5V5D.js";const De={class:"page-container"},Se={class:"page-header"},Ne={class:"header-actions"},ze={class:"sub-text"},Re={key:1,class:"sub-text"},Le={class:"sub-text"},Be={key:1,class:"sub-text"},Fe={key:0,class:"batch-actions"},Te={class:"pagination-container"},$e={key:1,class:"codes-list"},Ee=fe({__name:"index",setup(Me){const R=c(!1),q=c([]),A=c(0),C=c([]),o=M({pageIndex:1,pageSize:10,code:void 0,batchNo:void 0,assignUserId:void 0,status:void 0}),k=c(!1),L=c(!1),B=c(),V=M({count:10}),J={count:[{required:!0,message:"请输入生成数量",trigger:"blur"}]},y=c(null),h=c(!1),I=c(!1),F=c(!1),T=c(),m=M({codeIds:[],userId:void 0}),H={userId:[{required:!0,message:"请输入用户ID",trigger:"blur"}]},Q=s=>({1:"info",2:"warning",3:"success"})[s]||"",_=async()=>{R.value=!0;try{const s=await we(o);s.code===0&&(q.value=s.data.items,A.value=s.data.total)}finally{R.value=!1}},G=()=>{o.pageIndex=1,_()},W=()=>{o.code=void 0,o.batchNo=void 0,o.assignUserId=void 0,o.status=void 0,o.pageIndex=1,_()},X=s=>{o.pageSize=s,_()},Y=s=>{o.pageIndex=s,_()},Z=s=>{C.value=s},ee=()=>{V.count=10,k.value=!0},te=async()=>{if(B.value){await B.value.validate(),L.value=!0;try{const s=await Ce(V);s.code===0&&(z.success("生成成功"),k.value=!1,y.value=s.data,h.value=!0,_())}finally{L.value=!1}}},le=s=>{m.codeIds=[s.id],m.userId=void 0,I.value=!0},ae=()=>{m.codeIds=C.value.map(s=>s.id),m.userId=void 0,I.value=!0},se=async()=>{if(T.value){await T.value.validate(),F.value=!0;try{(await he({codeIds:m.codeIds,userId:m.userId})).code===0&&(z.success("分配成功"),I.value=!1,_())}finally{F.value=!1}}},oe=async()=>{try{const s=await Ue(o),e=s.data instanceof Blob?s.data:new Blob([s.data]),b=window.URL.createObjectURL(e),i=document.createElement("a");i.href=b,i.download=`邀请码_${new Date().toISOString().slice(0,10)}.xlsx`,i.click(),window.URL.revokeObjectURL(b),z.success("导出成功")}catch{z.error("导出失败")}};return ge(()=>{_()}),(s,e)=>{const b=d("el-icon"),i=d("el-button"),U=d("el-input"),v=d("el-form-item"),$=d("el-form"),O=d("el-card"),f=d("el-table-column"),ne=d("el-text"),de=d("el-tag"),ie=d("el-table"),ue=d("el-pagination"),re=d("el-input-number"),E=d("el-dialog"),K=d("el-descriptions-item"),ce=d("el-descriptions"),pe=d("el-scrollbar"),D=P("permission"),me=P("loading");return u(),g("div",De,[p("div",Se,[e[16]||(e[16]=p("h2",null,"邀请码管理",-1)),p("div",Ne,[w((u(),x(i,{type:"primary",onClick:ee},{default:a(()=>[t(b,null,{default:a(()=>[t(S(ve))]),_:1}),e[14]||(e[14]=n("批量生成 ",-1))]),_:1})),[[D,"inviteCode:create"]]),w((u(),x(i,{type:"success",onClick:oe},{default:a(()=>[t(b,null,{default:a(()=>[t(S(_e))]),_:1}),e[15]||(e[15]=n("导出 ",-1))]),_:1})),[[D,"inviteCode:export"]])])]),t(O,{class:"search-card",shadow:"never"},{default:a(()=>[t($,{model:o,inline:""},{default:a(()=>[t(v,{label:"邀请码"},{default:a(()=>[t(U,{modelValue:o.code,"onUpdate:modelValue":e[0]||(e[0]=l=>o.code=l),placeholder:"请输入邀请码",clearable:"",onKeyup:be(G,["enter"])},null,8,["modelValue"])]),_:1}),t(v,{label:"批次号"},{default:a(()=>[t(U,{modelValue:o.batchNo,"onUpdate:modelValue":e[1]||(e[1]=l=>o.batchNo=l),placeholder:"请输入批次号",clearable:""},null,8,["modelValue"])]),_:1}),t(v,{label:"分配用户ID"},{default:a(()=>[t(U,{modelValue:o.assignUserId,"onUpdate:modelValue":e[2]||(e[2]=l=>o.assignUserId=l),modelModifiers:{number:!0},placeholder:"请输入用户ID",clearable:""},null,8,["modelValue"])]),_:1}),t(v,{label:"状态"},{default:a(()=>[t(ye,{modelValue:o.status,"onUpdate:modelValue":e[3]||(e[3]=l=>o.status=l),"dict-type":"invite_code_status",placeholder:"请选择状态",clearable:""},null,8,["modelValue"])]),_:1}),t(v,null,{default:a(()=>[t(i,{type:"primary",onClick:G},{default:a(()=>[t(b,null,{default:a(()=>[t(S(Ie))]),_:1}),e[17]||(e[17]=n("搜索",-1))]),_:1}),t(i,{onClick:W},{default:a(()=>[t(b,null,{default:a(()=>[t(S(xe))]),_:1}),e[18]||(e[18]=n("重置",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),t(O,{class:"table-card",shadow:"never"},{default:a(()=>[w((u(),x(ie,{data:q.value,"row-key":"id",onSelectionChange:Z},{default:a(()=>[t(f,{type:"selection",width:"50",selectable:l=>l.status===1},null,8,["selectable"]),t(f,{prop:"code",label:"邀请码",width:"150"},{default:a(({row:l})=>[t(ne,{class:"code-text",copyable:""},{default:a(()=>[n(r(l.code),1)]),_:2},1024)]),_:1}),t(f,{prop:"batchNo",label:"批次号",width:"180"}),t(f,{label:"分配用户","min-width":"120"},{default:a(({row:l})=>[l.assignUserId?(u(),g(j,{key:0},[p("div",null,r(l.assignUserNickname),1),p("div",ze,"ID: "+r(l.assignUserId),1)],64)):(u(),g("span",Re,"-"))]),_:1}),t(f,{prop:"assignTime",label:"分配时间",width:"170"},{default:a(({row:l})=>[n(r(l.assignTime||"-"),1)]),_:1}),t(f,{label:"使用用户","min-width":"120"},{default:a(({row:l})=>[l.useUserId?(u(),g(j,{key:0},[p("div",null,r(l.useUserNickname),1),p("div",Le,"ID: "+r(l.useUserId),1)],64)):(u(),g("span",Be,"-"))]),_:1}),t(f,{prop:"useTime",label:"使用时间",width:"170"},{default:a(({row:l})=>[n(r(l.useTime||"-"),1)]),_:1}),t(f,{label:"状态",width:"100",align:"center"},{default:a(({row:l})=>[t(de,{type:Q(l.status)},{default:a(()=>[n(r(l.statusName),1)]),_:2},1032,["type"])]),_:1}),t(f,{prop:"createTime",label:"创建时间",width:"170"}),t(f,{label:"操作",width:"100",fixed:"right"},{default:a(({row:l})=>[l.status===1?w((u(),x(i,{key:0,link:"",type:"primary",onClick:je=>le(l)},{default:a(()=>[...e[19]||(e[19]=[n("分配",-1)])]),_:1},8,["onClick"])),[[D,"inviteCode:update"]]):N("",!0)]),_:1})]),_:1},8,["data"])),[[me,R.value]]),C.value.length>0?(u(),g("div",Fe,[p("span",null,"已选择 "+r(C.value.length)+" 项",1),w((u(),x(i,{type:"primary",size:"small",onClick:ae},{default:a(()=>[...e[20]||(e[20]=[n("批量分配",-1)])]),_:1})),[[D,"inviteCode:update"]])])):N("",!0),p("div",Te,[t(ue,{"current-page":o.pageIndex,"onUpdate:currentPage":e[4]||(e[4]=l=>o.pageIndex=l),"page-size":o.pageSize,"onUpdate:pageSize":e[5]||(e[5]=l=>o.pageSize=l),"page-sizes":[10,20,50,100],total:A.value,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:X,onCurrentChange:Y},null,8,["current-page","page-size","total"])])]),_:1}),t(E,{modelValue:k.value,"onUpdate:modelValue":e[8]||(e[8]=l=>k.value=l),title:"批量生成邀请码",width:"400px"},{footer:a(()=>[t(i,{onClick:e[7]||(e[7]=l=>k.value=!1)},{default:a(()=>[...e[21]||(e[21]=[n("取消",-1)])]),_:1}),t(i,{type:"primary",loading:L.value,onClick:te},{default:a(()=>[...e[22]||(e[22]=[n("确定",-1)])]),_:1},8,["loading"])]),default:a(()=>[t($,{model:V,rules:J,ref_key:"generateFormRef",ref:B,"label-width":"100px"},{default:a(()=>[t(v,{label:"生成数量",prop:"count"},{default:a(()=>[t(re,{modelValue:V.count,"onUpdate:modelValue":e[6]||(e[6]=l=>V.count=l),min:1,max:1e3,"controls-position":"right",style:{width:"100%"}},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),t(E,{modelValue:I.value,"onUpdate:modelValue":e[11]||(e[11]=l=>I.value=l),title:"分配邀请码",width:"400px"},{footer:a(()=>[t(i,{onClick:e[10]||(e[10]=l=>I.value=!1)},{default:a(()=>[...e[23]||(e[23]=[n("取消",-1)])]),_:1}),t(i,{type:"primary",loading:F.value,onClick:se},{default:a(()=>[...e[24]||(e[24]=[n("确定",-1)])]),_:1},8,["loading"])]),default:a(()=>[t($,{model:m,rules:H,ref_key:"assignFormRef",ref:T,"label-width":"100px"},{default:a(()=>[t(v,{label:"邀请码数量"},{default:a(()=>[p("span",null,r(m.codeIds.length)+" 个",1)]),_:1}),t(v,{label:"分配用户",prop:"userId"},{default:a(()=>[t(U,{modelValue:m.userId,"onUpdate:modelValue":e[9]||(e[9]=l=>m.userId=l),modelModifiers:{number:!0},placeholder:"请输入用户ID"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),t(E,{modelValue:h.value,"onUpdate:modelValue":e[13]||(e[13]=l=>h.value=l),title:"生成结果",width:"500px"},{footer:a(()=>[t(i,{type:"primary",onClick:e[12]||(e[12]=l=>h.value=!1)},{default:a(()=>[...e[26]||(e[26]=[n("确定",-1)])]),_:1})]),default:a(()=>[y.value?(u(),x(ce,{key:0,column:1,border:""},{default:a(()=>[t(K,{label:"批次号"},{default:a(()=>[n(r(y.value.batchNo),1)]),_:1}),t(K,{label:"生成数量"},{default:a(()=>[n(r(y.value.count),1)]),_:1})]),_:1})):N("",!0),y.value?(u(),g("div",$e,[e[25]||(e[25]=p("div",{class:"codes-header"},"生成的邀请码:",-1)),t(pe,{height:"200px"},{default:a(()=>[(u(!0),g(j,null,ke(y.value.codes,l=>(u(),g("div",{class:"code-item",key:l},r(l),1))),128))]),_:1})])):N("",!0)]),_:1},8,["modelValue"])])}}}),Ge=Ve(Ee,[["__scopeId","data-v-1f345848"]]);export{Ge as default}; +import{d as fe,r as c,a as M,o as ge,g as d,B as P,c as g,k as u,b as p,e as t,C as w,z as x,w as a,t as n,l as S,D as ve,N as _e,f as be,J as ye,L as Ie,s as xe,G as N,x as r,F as j,y as ke,E as z,_ as Ve}from"./index-CJcwRKyx.js";import{c as we,d as Ce,f as he,h as Ue}from"./distribution-CfVVEqPo.js";const De={class:"page-container"},Se={class:"page-header"},Ne={class:"header-actions"},ze={class:"sub-text"},Re={key:1,class:"sub-text"},Le={class:"sub-text"},Be={key:1,class:"sub-text"},Fe={key:0,class:"batch-actions"},Te={class:"pagination-container"},$e={key:1,class:"codes-list"},Ee=fe({__name:"index",setup(Me){const R=c(!1),q=c([]),A=c(0),C=c([]),o=M({pageIndex:1,pageSize:10,code:void 0,batchNo:void 0,assignUserId:void 0,status:void 0}),k=c(!1),L=c(!1),B=c(),V=M({count:10}),J={count:[{required:!0,message:"请输入生成数量",trigger:"blur"}]},y=c(null),h=c(!1),I=c(!1),F=c(!1),T=c(),m=M({codeIds:[],userId:void 0}),H={userId:[{required:!0,message:"请输入用户ID",trigger:"blur"}]},Q=s=>({1:"info",2:"warning",3:"success"})[s]||"",_=async()=>{R.value=!0;try{const s=await we(o);s.code===0&&(q.value=s.data.items,A.value=s.data.total)}finally{R.value=!1}},G=()=>{o.pageIndex=1,_()},W=()=>{o.code=void 0,o.batchNo=void 0,o.assignUserId=void 0,o.status=void 0,o.pageIndex=1,_()},X=s=>{o.pageSize=s,_()},Y=s=>{o.pageIndex=s,_()},Z=s=>{C.value=s},ee=()=>{V.count=10,k.value=!0},te=async()=>{if(B.value){await B.value.validate(),L.value=!0;try{const s=await Ce(V);s.code===0&&(z.success("生成成功"),k.value=!1,y.value=s.data,h.value=!0,_())}finally{L.value=!1}}},le=s=>{m.codeIds=[s.id],m.userId=void 0,I.value=!0},ae=()=>{m.codeIds=C.value.map(s=>s.id),m.userId=void 0,I.value=!0},se=async()=>{if(T.value){await T.value.validate(),F.value=!0;try{(await he({codeIds:m.codeIds,userId:m.userId})).code===0&&(z.success("分配成功"),I.value=!1,_())}finally{F.value=!1}}},oe=async()=>{try{const s=await Ue(o),e=s.data instanceof Blob?s.data:new Blob([s.data]),b=window.URL.createObjectURL(e),i=document.createElement("a");i.href=b,i.download=`邀请码_${new Date().toISOString().slice(0,10)}.xlsx`,i.click(),window.URL.revokeObjectURL(b),z.success("导出成功")}catch{z.error("导出失败")}};return ge(()=>{_()}),(s,e)=>{const b=d("el-icon"),i=d("el-button"),U=d("el-input"),v=d("el-form-item"),$=d("el-form"),O=d("el-card"),f=d("el-table-column"),ne=d("el-text"),de=d("el-tag"),ie=d("el-table"),ue=d("el-pagination"),re=d("el-input-number"),E=d("el-dialog"),K=d("el-descriptions-item"),ce=d("el-descriptions"),pe=d("el-scrollbar"),D=P("permission"),me=P("loading");return u(),g("div",De,[p("div",Se,[e[16]||(e[16]=p("h2",null,"邀请码管理",-1)),p("div",Ne,[w((u(),x(i,{type:"primary",onClick:ee},{default:a(()=>[t(b,null,{default:a(()=>[t(S(ve))]),_:1}),e[14]||(e[14]=n("批量生成 ",-1))]),_:1})),[[D,"inviteCode:create"]]),w((u(),x(i,{type:"success",onClick:oe},{default:a(()=>[t(b,null,{default:a(()=>[t(S(_e))]),_:1}),e[15]||(e[15]=n("导出 ",-1))]),_:1})),[[D,"inviteCode:export"]])])]),t(O,{class:"search-card",shadow:"never"},{default:a(()=>[t($,{model:o,inline:""},{default:a(()=>[t(v,{label:"邀请码"},{default:a(()=>[t(U,{modelValue:o.code,"onUpdate:modelValue":e[0]||(e[0]=l=>o.code=l),placeholder:"请输入邀请码",clearable:"",onKeyup:be(G,["enter"])},null,8,["modelValue"])]),_:1}),t(v,{label:"批次号"},{default:a(()=>[t(U,{modelValue:o.batchNo,"onUpdate:modelValue":e[1]||(e[1]=l=>o.batchNo=l),placeholder:"请输入批次号",clearable:""},null,8,["modelValue"])]),_:1}),t(v,{label:"分配用户ID"},{default:a(()=>[t(U,{modelValue:o.assignUserId,"onUpdate:modelValue":e[2]||(e[2]=l=>o.assignUserId=l),modelModifiers:{number:!0},placeholder:"请输入用户ID",clearable:""},null,8,["modelValue"])]),_:1}),t(v,{label:"状态"},{default:a(()=>[t(ye,{modelValue:o.status,"onUpdate:modelValue":e[3]||(e[3]=l=>o.status=l),"dict-type":"invite_code_status",placeholder:"请选择状态",clearable:""},null,8,["modelValue"])]),_:1}),t(v,null,{default:a(()=>[t(i,{type:"primary",onClick:G},{default:a(()=>[t(b,null,{default:a(()=>[t(S(Ie))]),_:1}),e[17]||(e[17]=n("搜索",-1))]),_:1}),t(i,{onClick:W},{default:a(()=>[t(b,null,{default:a(()=>[t(S(xe))]),_:1}),e[18]||(e[18]=n("重置",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),t(O,{class:"table-card",shadow:"never"},{default:a(()=>[w((u(),x(ie,{data:q.value,"row-key":"id",onSelectionChange:Z},{default:a(()=>[t(f,{type:"selection",width:"50",selectable:l=>l.status===1},null,8,["selectable"]),t(f,{prop:"code",label:"邀请码",width:"150"},{default:a(({row:l})=>[t(ne,{class:"code-text",copyable:""},{default:a(()=>[n(r(l.code),1)]),_:2},1024)]),_:1}),t(f,{prop:"batchNo",label:"批次号",width:"180"}),t(f,{label:"分配用户","min-width":"120"},{default:a(({row:l})=>[l.assignUserId?(u(),g(j,{key:0},[p("div",null,r(l.assignUserNickname),1),p("div",ze,"ID: "+r(l.assignUserId),1)],64)):(u(),g("span",Re,"-"))]),_:1}),t(f,{prop:"assignTime",label:"分配时间",width:"170"},{default:a(({row:l})=>[n(r(l.assignTime||"-"),1)]),_:1}),t(f,{label:"使用用户","min-width":"120"},{default:a(({row:l})=>[l.useUserId?(u(),g(j,{key:0},[p("div",null,r(l.useUserNickname),1),p("div",Le,"ID: "+r(l.useUserId),1)],64)):(u(),g("span",Be,"-"))]),_:1}),t(f,{prop:"useTime",label:"使用时间",width:"170"},{default:a(({row:l})=>[n(r(l.useTime||"-"),1)]),_:1}),t(f,{label:"状态",width:"100",align:"center"},{default:a(({row:l})=>[t(de,{type:Q(l.status)},{default:a(()=>[n(r(l.statusName),1)]),_:2},1032,["type"])]),_:1}),t(f,{prop:"createTime",label:"创建时间",width:"170"}),t(f,{label:"操作",width:"100",fixed:"right"},{default:a(({row:l})=>[l.status===1?w((u(),x(i,{key:0,link:"",type:"primary",onClick:je=>le(l)},{default:a(()=>[...e[19]||(e[19]=[n("分配",-1)])]),_:1},8,["onClick"])),[[D,"inviteCode:update"]]):N("",!0)]),_:1})]),_:1},8,["data"])),[[me,R.value]]),C.value.length>0?(u(),g("div",Fe,[p("span",null,"已选择 "+r(C.value.length)+" 项",1),w((u(),x(i,{type:"primary",size:"small",onClick:ae},{default:a(()=>[...e[20]||(e[20]=[n("批量分配",-1)])]),_:1})),[[D,"inviteCode:update"]])])):N("",!0),p("div",Te,[t(ue,{"current-page":o.pageIndex,"onUpdate:currentPage":e[4]||(e[4]=l=>o.pageIndex=l),"page-size":o.pageSize,"onUpdate:pageSize":e[5]||(e[5]=l=>o.pageSize=l),"page-sizes":[10,20,50,100],total:A.value,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:X,onCurrentChange:Y},null,8,["current-page","page-size","total"])])]),_:1}),t(E,{modelValue:k.value,"onUpdate:modelValue":e[8]||(e[8]=l=>k.value=l),title:"批量生成邀请码",width:"400px"},{footer:a(()=>[t(i,{onClick:e[7]||(e[7]=l=>k.value=!1)},{default:a(()=>[...e[21]||(e[21]=[n("取消",-1)])]),_:1}),t(i,{type:"primary",loading:L.value,onClick:te},{default:a(()=>[...e[22]||(e[22]=[n("确定",-1)])]),_:1},8,["loading"])]),default:a(()=>[t($,{model:V,rules:J,ref_key:"generateFormRef",ref:B,"label-width":"100px"},{default:a(()=>[t(v,{label:"生成数量",prop:"count"},{default:a(()=>[t(re,{modelValue:V.count,"onUpdate:modelValue":e[6]||(e[6]=l=>V.count=l),min:1,max:1e3,"controls-position":"right",style:{width:"100%"}},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),t(E,{modelValue:I.value,"onUpdate:modelValue":e[11]||(e[11]=l=>I.value=l),title:"分配邀请码",width:"400px"},{footer:a(()=>[t(i,{onClick:e[10]||(e[10]=l=>I.value=!1)},{default:a(()=>[...e[23]||(e[23]=[n("取消",-1)])]),_:1}),t(i,{type:"primary",loading:F.value,onClick:se},{default:a(()=>[...e[24]||(e[24]=[n("确定",-1)])]),_:1},8,["loading"])]),default:a(()=>[t($,{model:m,rules:H,ref_key:"assignFormRef",ref:T,"label-width":"100px"},{default:a(()=>[t(v,{label:"邀请码数量"},{default:a(()=>[p("span",null,r(m.codeIds.length)+" 个",1)]),_:1}),t(v,{label:"分配用户",prop:"userId"},{default:a(()=>[t(U,{modelValue:m.userId,"onUpdate:modelValue":e[9]||(e[9]=l=>m.userId=l),modelModifiers:{number:!0},placeholder:"请输入用户ID"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),t(E,{modelValue:h.value,"onUpdate:modelValue":e[13]||(e[13]=l=>h.value=l),title:"生成结果",width:"500px"},{footer:a(()=>[t(i,{type:"primary",onClick:e[12]||(e[12]=l=>h.value=!1)},{default:a(()=>[...e[26]||(e[26]=[n("确定",-1)])]),_:1})]),default:a(()=>[y.value?(u(),x(ce,{key:0,column:1,border:""},{default:a(()=>[t(K,{label:"批次号"},{default:a(()=>[n(r(y.value.batchNo),1)]),_:1}),t(K,{label:"生成数量"},{default:a(()=>[n(r(y.value.count),1)]),_:1})]),_:1})):N("",!0),y.value?(u(),g("div",$e,[e[25]||(e[25]=p("div",{class:"codes-header"},"生成的邀请码:",-1)),t(pe,{height:"200px"},{default:a(()=>[(u(!0),g(j,null,ke(y.value.codes,l=>(u(),g("div",{class:"code-item",key:l},r(l),1))),128))]),_:1})])):N("",!0)]),_:1},8,["modelValue"])])}}}),Ge=Ve(Ee,[["__scopeId","data-v-1f345848"]]);export{Ge as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DHLMPAUF.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-D31x_wbW.js similarity index 99% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DHLMPAUF.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-D31x_wbW.js index 5ca6d72..ee0a3e9 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DHLMPAUF.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-D31x_wbW.js @@ -1 +1 @@ -import{R as V,d as Y,r as Z,a as L,o as ee,g as r,B as te,c as k,k as x,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,O as se,F as T,x as I,H as re,I as de,G as ue,Q as me,E as b,_ as pe}from"./index-BsIaGxbR.js";function fe(u){return V({url:"/admin/businessPage/getList",method:"get",params:u})}function ge(u){return V({url:"/admin/businessPage/create",method:"post",data:u})}function ce(u){return V({url:"/admin/businessPage/update",method:"post",data:u})}function _e(u){return V({url:"/admin/businessPage/delete",method:"post",data:{id:u}})}function be(u){return V({url:"/admin/businessPage/updateStatus",method:"post",data:u})}const he={class:"business-page-container"},xe={class:"header-content"},Ve={class:"header-right"},Be={class:"image-error"},ye={style:{"font-size":"12px",color:"#999","margin-top":"4px"}},ve={class:"pagination-wrapper"},De=Y({__name:"index",setup(u){const B=Z(),i=L({pageIndex:1,pageSize:10,title:"",status:void 0}),a=L({loading:!1,tableData:[],total:0,dialogVisible:!1,dialogTitle:"新增介绍页",formData:v(),formLoading:!1,isEdit:!1}),A={title:[{required:!0,message:"请输入标题",trigger:"blur"}],imageUrl:[{required:!0,message:"请上传介绍图片",trigger:"change"}],status:[{required:!0,message:"请选择状态",trigger:"change"}]};function v(){return{title:"",imageUrl:"",hasActionButton:!1,actionButtonText:"",actionButtonLink:"",sort:0,status:"1"}}async function c(){var l,e;a.loading=!0;try{const s={pageIndex:i.pageIndex,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.pageIndex=1,c()}function P(){i.title="",i.status=void 0,i.pageIndex=1,c()}function q(l){i.pageSize=l,i.pageIndex=1,c()}function N(l){i.pageIndex=l,c()}function R(){a.isEdit=!1,a.dialogTitle="新增介绍页",a.formData=v(),a.dialogVisible=!0}function F(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 $(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.pageIndex>1&&i.pageIndex--,await c();else throw new Error(e.message||"删除失败")}catch(e){b.error(e instanceof Error?e.message:"删除失败")}}async function K(){if(B.value){try{await B.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=B.value)==null||l.resetFields(),a.formData=v()}return ee(()=>{c()}),(l,e)=>{const s=r("el-icon"),d=r("el-button"),D=r("el-card"),y=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"),Q=r("el-input-number"),W=r("el-dialog"),X=te("loading");return x(),k("div",he,[t(D,{class:"page-header"},{default:n(()=>[g("div",xe,[e[14]||(e[14]=g("div",{class:"header-left"},[g("h2",{class:"page-title"},"业务介绍页管理"),g("span",{class:"page-description"},"管理小程序业务详情页内容,支持配置长图和操作按钮")],-1)),g("div",Ve,[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(y,{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:P},{default:n(()=>[t(s,null,{default:n(()=>[t(f(ie))]),_:1}),e[16]||(e[16]=p("重置 ",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),ae((x(),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",Be,[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?(x(),k(T,{key:0},[t(w,{type:"success",size:"small"},{default:n(()=>[p(I(o.actionButtonText||"按钮"),1)]),_:2},1024),g("div",ye,I(o.actionButtonLink),1)],64)):(x(),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=>$(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=>F(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",ve,[t(O,{"current-page":i.pageIndex,"onUpdate:currentPage":e[2]||(e[2]=o=>i.pageIndex=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:q,onCurrentChange:N},null,8,["current-page","page-size","total"])])]),_:1})),[[X,a.loading]]),t(W,{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:B,model:a.formData,rules:A,"label-width":"110px","label-position":"right"},{default:n(()=>[t(m,{label:"标题",prop:"title"},{default:n(()=>[t(y,{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?(x(),k(T,{key:0},[t(m,{label:"按钮文字",prop:"actionButtonText"},{default:n(()=>[t(y,{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(y,{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(Q,{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-62623066"]]);export{Ue as default}; +import{R as V,d as Y,r as Z,a as L,o as ee,g as r,B as te,c as k,k as x,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,O as se,F as T,x as I,H as re,I as de,G as ue,Q as me,E as b,_ as pe}from"./index-CJcwRKyx.js";function fe(u){return V({url:"/admin/businessPage/getList",method:"get",params:u})}function ge(u){return V({url:"/admin/businessPage/create",method:"post",data:u})}function ce(u){return V({url:"/admin/businessPage/update",method:"post",data:u})}function _e(u){return V({url:"/admin/businessPage/delete",method:"post",data:{id:u}})}function be(u){return V({url:"/admin/businessPage/updateStatus",method:"post",data:u})}const he={class:"business-page-container"},xe={class:"header-content"},Ve={class:"header-right"},Be={class:"image-error"},ye={style:{"font-size":"12px",color:"#999","margin-top":"4px"}},ve={class:"pagination-wrapper"},De=Y({__name:"index",setup(u){const B=Z(),i=L({pageIndex:1,pageSize:10,title:"",status:void 0}),a=L({loading:!1,tableData:[],total:0,dialogVisible:!1,dialogTitle:"新增介绍页",formData:v(),formLoading:!1,isEdit:!1}),A={title:[{required:!0,message:"请输入标题",trigger:"blur"}],imageUrl:[{required:!0,message:"请上传介绍图片",trigger:"change"}],status:[{required:!0,message:"请选择状态",trigger:"change"}]};function v(){return{title:"",imageUrl:"",hasActionButton:!1,actionButtonText:"",actionButtonLink:"",sort:0,status:"1"}}async function c(){var l,e;a.loading=!0;try{const s={pageIndex:i.pageIndex,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.pageIndex=1,c()}function P(){i.title="",i.status=void 0,i.pageIndex=1,c()}function q(l){i.pageSize=l,i.pageIndex=1,c()}function N(l){i.pageIndex=l,c()}function R(){a.isEdit=!1,a.dialogTitle="新增介绍页",a.formData=v(),a.dialogVisible=!0}function F(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 $(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.pageIndex>1&&i.pageIndex--,await c();else throw new Error(e.message||"删除失败")}catch(e){b.error(e instanceof Error?e.message:"删除失败")}}async function K(){if(B.value){try{await B.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=B.value)==null||l.resetFields(),a.formData=v()}return ee(()=>{c()}),(l,e)=>{const s=r("el-icon"),d=r("el-button"),D=r("el-card"),y=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"),Q=r("el-input-number"),W=r("el-dialog"),X=te("loading");return x(),k("div",he,[t(D,{class:"page-header"},{default:n(()=>[g("div",xe,[e[14]||(e[14]=g("div",{class:"header-left"},[g("h2",{class:"page-title"},"业务介绍页管理"),g("span",{class:"page-description"},"管理小程序业务详情页内容,支持配置长图和操作按钮")],-1)),g("div",Ve,[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(y,{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:P},{default:n(()=>[t(s,null,{default:n(()=>[t(f(ie))]),_:1}),e[16]||(e[16]=p("重置 ",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),ae((x(),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",Be,[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?(x(),k(T,{key:0},[t(w,{type:"success",size:"small"},{default:n(()=>[p(I(o.actionButtonText||"按钮"),1)]),_:2},1024),g("div",ye,I(o.actionButtonLink),1)],64)):(x(),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=>$(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=>F(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",ve,[t(O,{"current-page":i.pageIndex,"onUpdate:currentPage":e[2]||(e[2]=o=>i.pageIndex=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:q,onCurrentChange:N},null,8,["current-page","page-size","total"])])]),_:1})),[[X,a.loading]]),t(W,{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:B,model:a.formData,rules:A,"label-width":"110px","label-position":"right"},{default:n(()=>[t(m,{label:"标题",prop:"title"},{default:n(()=>[t(y,{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?(x(),k(T,{key:0},[t(m,{label:"按钮文字",prop:"actionButtonText"},{default:n(()=>[t(y,{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(y,{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(Q,{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-62623066"]]);export{Ue as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CDRG7nDQ.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DBRSFLjd.js similarity index 97% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CDRG7nDQ.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DBRSFLjd.js index 9e23aa7..97d4a7f 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CDRG7nDQ.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DBRSFLjd.js @@ -1 +1 @@ -import{R as x,d as q,a as H,o as I,g as r,B as j,c as f,k as c,e as o,C as A,w as a,b as u,z as _,G as b,F as E,y as J,x as p,f as w,t as y,l as N,H as O,S as Q,E as V,_ as W}from"./index-BsIaGxbR.js";function X(){return x({url:"/admin/config/getList",method:"get"})}function Y(h){return x({url:"/admin/config/update",method:"post",data:h})}const Z={class:"config-container"},ee={class:"group-title"},te={class:"config-key"},ne={class:"config-description"},ie={key:0,class:"edit-form"},ae={key:0,class:"validation-error"},oe={key:1,class:"config-value"},le=q({__name:"index",setup(h){const t=H({loading:!1,configGroups:[],activeGroups:[],editingKey:null,editValue:"",saving:!1,validationError:""});function G(n){const e=parseFloat(n);return isNaN(e)?{valid:!1,error:"请输入有效的数字"}:e<=0?{valid:!1,error:"价格必须为正数"}:{valid:!0,error:""}}function F(n){const e=parseFloat(n);return isNaN(e)?{valid:!1,error:"请输入有效的数字"}:e<0||e>1?{valid:!1,error:"佣金率必须在 0 到 1 之间"}:{valid:!0,error:""}}function L(n,e){if(!e||e.trim()==="")return{valid:!1,error:"配置值不能为空"};const i=n.toLowerCase();return i.includes("price")||i.includes("amount")||i.includes("fee")?G(e):i.includes("commission")||i.includes("rate")||i.includes("ratio")?F(e):{valid:!0,error:""}}function T(n){const e=n.toLowerCase();return e.includes("price")||e.includes("amount")||e.includes("fee")?"请输入正数金额":e.includes("commission")||e.includes("rate")||e.includes("ratio")?"请输入 0-1 之间的数值":"请输入配置值"}function z(n){const e=n.configType.toLowerCase(),i=n.configValue;if(e.includes("price")||e.includes("amount")||e.includes("fee")){const s=parseFloat(i);if(!isNaN(s))return`¥${s.toFixed(2)}`}if(e.includes("commission")||e.includes("rate")||e.includes("ratio")){const s=parseFloat(i);if(!isNaN(s))return`${(s*100).toFixed(1)}%`}return i||"-"}async function C(){t.loading=!0;try{const n=await X();if(n.code===0)t.configGroups=n.data||[],t.activeGroups=t.configGroups.map(e=>e.configType);else throw new Error(n.message||"获取配置列表失败")}catch(n){const e=n instanceof Error?n.message:"获取配置列表失败";V.error(e)}finally{t.loading=!1}}function B(n){t.editingKey=n.configKey,t.editValue=n.configValue,t.validationError=""}function k(){t.editingKey=null,t.editValue="",t.validationError=""}async function K(n){const e=L(n.configType,t.editValue);if(!e.valid){t.validationError=e.error;return}t.saving=!0,t.validationError="";try{const i=await Y({configKey:n.configKey,configValue:t.editValue.trim()});if(i.code===0)V.success("配置更新成功"),t.editingKey=null,t.editValue="",await C();else throw new Error(i.message||"更新配置失败")}catch(i){const s=i instanceof Error?i.message:"更新配置失败";V.error(s)}finally{t.saving=!1}}return I(()=>{C()}),(n,e)=>{const i=r("el-card"),s=r("el-icon"),$=r("el-tag"),g=r("el-table-column"),D=r("el-input"),v=r("el-button"),S=r("el-table"),M=r("el-collapse-item"),P=r("el-collapse"),R=r("el-empty"),U=j("loading");return c(),f("div",Z,[o(i,{class:"page-header"},{default:a(()=>[...e[2]||(e[2]=[u("div",{class:"header-content"},[u("h2",{class:"page-title"},"系统配置"),u("span",{class:"page-description"},"管理系统配置项,按配置类型分组显示")],-1)])]),_:1}),A((c(),_(i,{class:"config-list"},{default:a(()=>[o(P,{modelValue:t.activeGroups,"onUpdate:modelValue":e[1]||(e[1]=d=>t.activeGroups=d)},{default:a(()=>[(c(!0),f(E,null,J(t.configGroups,d=>(c(),_(M,{key:d.configType,name:d.configType},{title:a(()=>[u("div",ee,[o(s,null,{default:a(()=>[o(N(Q))]),_:1}),u("span",null,p(d.typeName),1),o($,{size:"small",type:"info"},{default:a(()=>[y(p(d.items.length)+" 项",1)]),_:2},1024)])]),default:a(()=>[o(S,{data:d.items,stripe:"",style:{width:"100%"}},{default:a(()=>[o(g,{prop:"configKey",label:"配置键","min-width":"180"},{default:a(({row:l})=>[u("span",te,p(l.configKey),1)]),_:1}),o(g,{prop:"description",label:"描述","min-width":"200"},{default:a(({row:l})=>[u("span",ne,p(l.description||"-"),1)]),_:1}),o(g,{label:"配置值","min-width":"250"},{default:a(({row:l})=>[t.editingKey===l.configKey?(c(),f("div",ie,[o(D,{modelValue:t.editValue,"onUpdate:modelValue":e[0]||(e[0]=m=>t.editValue=m),placeholder:T(l.configType),size:"default",clearable:"",onKeyup:[w(m=>K(l),["enter"]),w(k,["escape"])]},null,8,["modelValue","placeholder","onKeyup"]),t.validationError?(c(),f("span",ae,p(t.validationError),1)):b("",!0)])):(c(),f("span",oe,p(z(l)),1))]),_:1}),o(g,{label:"操作",width:"180",fixed:"right"},{default:a(({row:l})=>[t.editingKey===l.configKey?(c(),f(E,{key:0},[o(v,{type:"primary",size:"small",loading:t.saving,onClick:m=>K(l)},{default:a(()=>[...e[3]||(e[3]=[y(" 保存 ",-1)])]),_:1},8,["loading","onClick"]),o(v,{size:"small",disabled:t.saving,onClick:k},{default:a(()=>[...e[4]||(e[4]=[y(" 取消 ",-1)])]),_:1},8,["disabled"])],64)):(c(),_(v,{key:1,type:"primary",size:"small",disabled:t.editingKey!==null,onClick:m=>B(l)},{default:a(()=>[o(s,null,{default:a(()=>[o(N(O))]),_:1}),e[5]||(e[5]=y(" 编辑 ",-1))]),_:1},8,["disabled","onClick"]))]),_:1})]),_:1},8,["data"])]),_:2},1032,["name"]))),128))]),_:1},8,["modelValue"]),!t.loading&&t.configGroups.length===0?(c(),_(R,{key:0,description:"暂无配置数据"})):b("",!0)]),_:1})),[[U,t.loading]])])}}}),re=W(le,[["__scopeId","data-v-88849315"]]);export{re as default}; +import{R as x,d as q,a as H,o as I,g as r,B as j,c as f,k as c,e as o,C as A,w as a,b as u,z as _,G as b,F as E,y as J,x as p,f as w,t as y,l as N,H as O,S as Q,E as V,_ as W}from"./index-CJcwRKyx.js";function X(){return x({url:"/admin/config/getList",method:"get"})}function Y(h){return x({url:"/admin/config/update",method:"post",data:h})}const Z={class:"config-container"},ee={class:"group-title"},te={class:"config-key"},ne={class:"config-description"},ie={key:0,class:"edit-form"},ae={key:0,class:"validation-error"},oe={key:1,class:"config-value"},le=q({__name:"index",setup(h){const t=H({loading:!1,configGroups:[],activeGroups:[],editingKey:null,editValue:"",saving:!1,validationError:""});function G(n){const e=parseFloat(n);return isNaN(e)?{valid:!1,error:"请输入有效的数字"}:e<=0?{valid:!1,error:"价格必须为正数"}:{valid:!0,error:""}}function F(n){const e=parseFloat(n);return isNaN(e)?{valid:!1,error:"请输入有效的数字"}:e<0||e>1?{valid:!1,error:"佣金率必须在 0 到 1 之间"}:{valid:!0,error:""}}function L(n,e){if(!e||e.trim()==="")return{valid:!1,error:"配置值不能为空"};const i=n.toLowerCase();return i.includes("price")||i.includes("amount")||i.includes("fee")?G(e):i.includes("commission")||i.includes("rate")||i.includes("ratio")?F(e):{valid:!0,error:""}}function T(n){const e=n.toLowerCase();return e.includes("price")||e.includes("amount")||e.includes("fee")?"请输入正数金额":e.includes("commission")||e.includes("rate")||e.includes("ratio")?"请输入 0-1 之间的数值":"请输入配置值"}function z(n){const e=n.configType.toLowerCase(),i=n.configValue;if(e.includes("price")||e.includes("amount")||e.includes("fee")){const s=parseFloat(i);if(!isNaN(s))return`¥${s.toFixed(2)}`}if(e.includes("commission")||e.includes("rate")||e.includes("ratio")){const s=parseFloat(i);if(!isNaN(s))return`${(s*100).toFixed(1)}%`}return i||"-"}async function C(){t.loading=!0;try{const n=await X();if(n.code===0)t.configGroups=n.data||[],t.activeGroups=t.configGroups.map(e=>e.configType);else throw new Error(n.message||"获取配置列表失败")}catch(n){const e=n instanceof Error?n.message:"获取配置列表失败";V.error(e)}finally{t.loading=!1}}function B(n){t.editingKey=n.configKey,t.editValue=n.configValue,t.validationError=""}function k(){t.editingKey=null,t.editValue="",t.validationError=""}async function K(n){const e=L(n.configType,t.editValue);if(!e.valid){t.validationError=e.error;return}t.saving=!0,t.validationError="";try{const i=await Y({configKey:n.configKey,configValue:t.editValue.trim()});if(i.code===0)V.success("配置更新成功"),t.editingKey=null,t.editValue="",await C();else throw new Error(i.message||"更新配置失败")}catch(i){const s=i instanceof Error?i.message:"更新配置失败";V.error(s)}finally{t.saving=!1}}return I(()=>{C()}),(n,e)=>{const i=r("el-card"),s=r("el-icon"),$=r("el-tag"),g=r("el-table-column"),D=r("el-input"),v=r("el-button"),S=r("el-table"),M=r("el-collapse-item"),P=r("el-collapse"),R=r("el-empty"),U=j("loading");return c(),f("div",Z,[o(i,{class:"page-header"},{default:a(()=>[...e[2]||(e[2]=[u("div",{class:"header-content"},[u("h2",{class:"page-title"},"系统配置"),u("span",{class:"page-description"},"管理系统配置项,按配置类型分组显示")],-1)])]),_:1}),A((c(),_(i,{class:"config-list"},{default:a(()=>[o(P,{modelValue:t.activeGroups,"onUpdate:modelValue":e[1]||(e[1]=d=>t.activeGroups=d)},{default:a(()=>[(c(!0),f(E,null,J(t.configGroups,d=>(c(),_(M,{key:d.configType,name:d.configType},{title:a(()=>[u("div",ee,[o(s,null,{default:a(()=>[o(N(Q))]),_:1}),u("span",null,p(d.typeName),1),o($,{size:"small",type:"info"},{default:a(()=>[y(p(d.items.length)+" 项",1)]),_:2},1024)])]),default:a(()=>[o(S,{data:d.items,stripe:"",style:{width:"100%"}},{default:a(()=>[o(g,{prop:"configKey",label:"配置键","min-width":"180"},{default:a(({row:l})=>[u("span",te,p(l.configKey),1)]),_:1}),o(g,{prop:"description",label:"描述","min-width":"200"},{default:a(({row:l})=>[u("span",ne,p(l.description||"-"),1)]),_:1}),o(g,{label:"配置值","min-width":"250"},{default:a(({row:l})=>[t.editingKey===l.configKey?(c(),f("div",ie,[o(D,{modelValue:t.editValue,"onUpdate:modelValue":e[0]||(e[0]=m=>t.editValue=m),placeholder:T(l.configType),size:"default",clearable:"",onKeyup:[w(m=>K(l),["enter"]),w(k,["escape"])]},null,8,["modelValue","placeholder","onKeyup"]),t.validationError?(c(),f("span",ae,p(t.validationError),1)):b("",!0)])):(c(),f("span",oe,p(z(l)),1))]),_:1}),o(g,{label:"操作",width:"180",fixed:"right"},{default:a(({row:l})=>[t.editingKey===l.configKey?(c(),f(E,{key:0},[o(v,{type:"primary",size:"small",loading:t.saving,onClick:m=>K(l)},{default:a(()=>[...e[3]||(e[3]=[y(" 保存 ",-1)])]),_:1},8,["loading","onClick"]),o(v,{size:"small",disabled:t.saving,onClick:k},{default:a(()=>[...e[4]||(e[4]=[y(" 取消 ",-1)])]),_:1},8,["disabled"])],64)):(c(),_(v,{key:1,type:"primary",size:"small",disabled:t.editingKey!==null,onClick:m=>B(l)},{default:a(()=>[o(s,null,{default:a(()=>[o(N(O))]),_:1}),e[5]||(e[5]=y(" 编辑 ",-1))]),_:1},8,["disabled","onClick"]))]),_:1})]),_:1},8,["data"])]),_:2},1032,["name"]))),128))]),_:1},8,["modelValue"]),!t.loading&&t.configGroups.length===0?(c(),_(R,{key:0,description:"暂无配置数据"})):b("",!0)]),_:1})),[[U,t.loading]])])}}}),re=W(le,[["__scopeId","data-v-88849315"]]);export{re as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-D9B4oVpy.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DNukX_JB.js similarity index 97% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-D9B4oVpy.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DNukX_JB.js index cc9ff14..603cf2a 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-D9B4oVpy.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DNukX_JB.js @@ -1 +1 @@ -import{d as ee,r as g,a as te,o as le,g as r,B as E,c as ae,k as h,b as d,e,C as F,z as S,w as t,t as i,l as N,N as oe,x as s,J as R,L as se,s as ne,G as de,E as A,_ as ie}from"./index-BsIaGxbR.js";import{g as ue,a as re,b as ce,e as me}from"./distribution-Bk8S5V5D.js";const _e={class:"page-container"},pe={class:"page-header"},ve={class:"stat-value"},fe={class:"stat-count"},be={class:"stat-value"},ge={class:"stat-count"},Ie={class:"stat-value"},xe={class:"stat-count"},we={class:"sub-text"},he={class:"sub-text"},ye={class:"sub-text"},Ve={class:"amount"},Ce={class:"pagination-container"},De=ee({__name:"index",setup(ke){const y=g(!1),z=g([]),T=g(0),f=g(null),V=g(null),o=te({pageIndex:1,pageSize:10,userId:void 0,fromUserId:void 0,orderId:void 0,level:void 0,status:void 0,createTimeStart:void 0,createTimeEnd:void 0}),C=g(!1),u=g(null),B=async()=>{const n=await ue();n.code===0&&(f.value=n.data)},x=async()=>{y.value=!0;try{const n=await re(o);n.code===0&&(z.value=n.data.items,T.value=n.data.total)}finally{y.value=!1}},M=n=>{n?(o.createTimeStart=n[0],o.createTimeEnd=n[1]):(o.createTimeStart=void 0,o.createTimeEnd=void 0)},L=()=>{o.pageIndex=1,x()},Y=()=>{o.userId=void 0,o.fromUserId=void 0,o.orderId=void 0,o.level=void 0,o.status=void 0,o.createTimeStart=void 0,o.createTimeEnd=void 0,V.value=null,o.pageIndex=1,x()},j=n=>{o.pageSize=n,x()},O=n=>{o.pageIndex=n,x()},$=async n=>{const a=await ce(n.id);a.code===0&&(u.value=a.data,C.value=!0)},P=async()=>{try{const n=await me(o),a=n.data instanceof Blob?n.data:new Blob([n.data]),I=window.URL.createObjectURL(a),p=document.createElement("a");p.href=I,p.download=`佣金记录_${new Date().toISOString().slice(0,10)}.xlsx`,p.click(),window.URL.revokeObjectURL(I),A.success("导出成功")}catch{A.error("导出失败")}};return le(()=>{B(),x()}),(n,a)=>{const I=r("el-icon"),p=r("el-button"),w=r("el-card"),D=r("el-col"),q=r("el-row"),k=r("el-input"),b=r("el-form-item"),G=r("el-date-picker"),J=r("el-form"),m=r("el-table-column"),U=r("el-tag"),H=r("el-table"),K=r("el-pagination"),c=r("el-descriptions-item"),Q=r("el-descriptions"),W=r("el-drawer"),X=E("permission"),Z=E("loading");return h(),ae("div",_e,[d("div",pe,[a[10]||(a[10]=d("h2",null,"佣金记录管理",-1)),F((h(),S(p,{type:"success",onClick:P},{default:t(()=>[e(I,null,{default:t(()=>[e(N(oe))]),_:1}),a[9]||(a[9]=i("导出 ",-1))]),_:1})),[[X,"commission:export"]])]),e(q,{gutter:20,class:"stats-row"},{default:t(()=>[e(D,{span:8},{default:t(()=>[e(w,{shadow:"hover",class:"stat-card"},{default:t(()=>{var l,_,v;return[a[11]||(a[11]=d("div",{class:"stat-label"},"总金额",-1)),d("div",ve,"¥"+s(((_=(l=f.value)==null?void 0:l.totalAmount)==null?void 0:_.toFixed(2))||"0.00"),1),d("div",fe,"共 "+s(((v=f.value)==null?void 0:v.totalCount)||0)+" 笔",1)]}),_:1})]),_:1}),e(D,{span:8},{default:t(()=>[e(w,{shadow:"hover",class:"stat-card pending"},{default:t(()=>{var l,_,v;return[a[12]||(a[12]=d("div",{class:"stat-label"},"待结算金额",-1)),d("div",be,"¥"+s(((_=(l=f.value)==null?void 0:l.pendingAmount)==null?void 0:_.toFixed(2))||"0.00"),1),d("div",ge,"共 "+s(((v=f.value)==null?void 0:v.pendingCount)||0)+" 笔",1)]}),_:1})]),_:1}),e(D,{span:8},{default:t(()=>[e(w,{shadow:"hover",class:"stat-card settled"},{default:t(()=>{var l,_,v;return[a[13]||(a[13]=d("div",{class:"stat-label"},"已结算金额",-1)),d("div",Ie,"¥"+s(((_=(l=f.value)==null?void 0:l.settledAmount)==null?void 0:_.toFixed(2))||"0.00"),1),d("div",xe,"共 "+s(((v=f.value)==null?void 0:v.settledCount)||0)+" 笔",1)]}),_:1})]),_:1})]),_:1}),e(w,{class:"search-card",shadow:"never"},{default:t(()=>[e(J,{model:o,inline:""},{default:t(()=>[e(b,{label:"用户ID"},{default:t(()=>[e(k,{modelValue:o.userId,"onUpdate:modelValue":a[0]||(a[0]=l=>o.userId=l),modelModifiers:{number:!0},placeholder:"请输入用户ID",clearable:""},null,8,["modelValue"])]),_:1}),e(b,{label:"来源用户ID"},{default:t(()=>[e(k,{modelValue:o.fromUserId,"onUpdate:modelValue":a[1]||(a[1]=l=>o.fromUserId=l),modelModifiers:{number:!0},placeholder:"请输入来源用户ID",clearable:""},null,8,["modelValue"])]),_:1}),e(b,{label:"订单ID"},{default:t(()=>[e(k,{modelValue:o.orderId,"onUpdate:modelValue":a[2]||(a[2]=l=>o.orderId=l),modelModifiers:{number:!0},placeholder:"请输入订单ID",clearable:""},null,8,["modelValue"])]),_:1}),e(b,{label:"层级"},{default:t(()=>[e(R,{modelValue:o.level,"onUpdate:modelValue":a[3]||(a[3]=l=>o.level=l),"dict-type":"commission_level",placeholder:"请选择层级",clearable:""},null,8,["modelValue"])]),_:1}),e(b,{label:"状态"},{default:t(()=>[e(R,{modelValue:o.status,"onUpdate:modelValue":a[4]||(a[4]=l=>o.status=l),"dict-type":"commission_status",placeholder:"请选择状态",clearable:""},null,8,["modelValue"])]),_:1}),e(b,{label:"创建时间"},{default:t(()=>[e(G,{modelValue:V.value,"onUpdate:modelValue":a[5]||(a[5]=l=>V.value=l),type:"daterange","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期","value-format":"YYYY-MM-DD",onChange:M},null,8,["modelValue"])]),_:1}),e(b,null,{default:t(()=>[e(p,{type:"primary",onClick:L},{default:t(()=>[e(I,null,{default:t(()=>[e(N(se))]),_:1}),a[14]||(a[14]=i("搜索",-1))]),_:1}),e(p,{onClick:Y},{default:t(()=>[e(I,null,{default:t(()=>[e(N(ne))]),_:1}),a[15]||(a[15]=i("重置",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),e(w,{class:"table-card",shadow:"never"},{default:t(()=>[F((h(),S(H,{data:z.value,"row-key":"id"},{default:t(()=>[e(m,{label:"用户信息","min-width":"120"},{default:t(({row:l})=>[d("div",null,s(l.userNickname),1),d("div",we,"ID: "+s(l.userId),1)]),_:1}),e(m,{label:"来源用户","min-width":"120"},{default:t(({row:l})=>[d("div",null,s(l.fromUserNickname),1),d("div",he,"ID: "+s(l.fromUserId),1)]),_:1}),e(m,{label:"订单信息","min-width":"150"},{default:t(({row:l})=>[d("div",null,s(l.orderNo),1),d("div",ye,"金额: ¥"+s(l.orderAmount.toFixed(2)),1)]),_:1}),e(m,{prop:"commissionRate",label:"佣金比例",width:"100",align:"center"},{default:t(({row:l})=>[i(s((l.commissionRate*100).toFixed(1))+"%",1)]),_:1}),e(m,{prop:"commissionAmount",label:"佣金金额",width:"100",align:"right"},{default:t(({row:l})=>[d("span",Ve,"¥"+s(l.commissionAmount.toFixed(2)),1)]),_:1}),e(m,{prop:"levelName",label:"层级",width:"100",align:"center"},{default:t(({row:l})=>[e(U,{type:l.level===1?"":"info",size:"small"},{default:t(()=>[i(s(l.levelName),1)]),_:2},1032,["type"])]),_:1}),e(m,{label:"状态",width:"100",align:"center"},{default:t(({row:l})=>[e(U,{type:l.status===1?"warning":"success"},{default:t(()=>[i(s(l.statusName),1)]),_:2},1032,["type"])]),_:1}),e(m,{prop:"settleTime",label:"结算时间",width:"170"},{default:t(({row:l})=>[i(s(l.settleTime||"-"),1)]),_:1}),e(m,{prop:"createTime",label:"创建时间",width:"170"}),e(m,{label:"操作",width:"80",fixed:"right"},{default:t(({row:l})=>[e(p,{link:"",type:"primary",onClick:_=>$(l)},{default:t(()=>[...a[16]||(a[16]=[i("详情",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[Z,y.value]]),d("div",Ce,[e(K,{"current-page":o.pageIndex,"onUpdate:currentPage":a[6]||(a[6]=l=>o.pageIndex=l),"page-size":o.pageSize,"onUpdate:pageSize":a[7]||(a[7]=l=>o.pageSize=l),"page-sizes":[10,20,50,100],total:T.value,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:j,onCurrentChange:O},null,8,["current-page","page-size","total"])])]),_:1}),e(W,{modelValue:C.value,"onUpdate:modelValue":a[8]||(a[8]=l=>C.value=l),title:"佣金详情",size:"450px"},{default:t(()=>[u.value?(h(),S(Q,{key:0,column:1,border:""},{default:t(()=>[e(c,{label:"佣金ID"},{default:t(()=>[i(s(u.value.id),1)]),_:1}),e(c,{label:"用户"},{default:t(()=>[i(s(u.value.userNickname)+" (ID: "+s(u.value.userId)+")",1)]),_:1}),e(c,{label:"来源用户"},{default:t(()=>[i(s(u.value.fromUserNickname)+" (ID: "+s(u.value.fromUserId)+")",1)]),_:1}),e(c,{label:"订单号"},{default:t(()=>[i(s(u.value.orderNo),1)]),_:1}),e(c,{label:"订单金额"},{default:t(()=>[i("¥"+s(u.value.orderAmount.toFixed(2)),1)]),_:1}),e(c,{label:"佣金比例"},{default:t(()=>[i(s((u.value.commissionRate*100).toFixed(1))+"%",1)]),_:1}),e(c,{label:"佣金金额"},{default:t(()=>[i("¥"+s(u.value.commissionAmount.toFixed(2)),1)]),_:1}),e(c,{label:"层级"},{default:t(()=>[i(s(u.value.levelName),1)]),_:1}),e(c,{label:"状态"},{default:t(()=>[e(U,{type:u.value.status===1?"warning":"success"},{default:t(()=>[i(s(u.value.statusName),1)]),_:1},8,["type"])]),_:1}),e(c,{label:"结算时间"},{default:t(()=>[i(s(u.value.settleTime||"-"),1)]),_:1}),e(c,{label:"创建时间"},{default:t(()=>[i(s(u.value.createTime),1)]),_:1})]),_:1})):de("",!0)]),_:1},8,["modelValue"])])}}}),Ne=ie(De,[["__scopeId","data-v-b25f1926"]]);export{Ne as default}; +import{d as ee,r as g,a as te,o as le,g as r,B as E,c as ae,k as h,b as d,e,C as F,z as S,w as t,t as i,l as N,N as oe,x as s,J as R,L as se,s as ne,G as de,E as A,_ as ie}from"./index-CJcwRKyx.js";import{g as ue,a as re,b as ce,e as me}from"./distribution-CfVVEqPo.js";const _e={class:"page-container"},pe={class:"page-header"},ve={class:"stat-value"},fe={class:"stat-count"},be={class:"stat-value"},ge={class:"stat-count"},Ie={class:"stat-value"},xe={class:"stat-count"},we={class:"sub-text"},he={class:"sub-text"},ye={class:"sub-text"},Ve={class:"amount"},Ce={class:"pagination-container"},De=ee({__name:"index",setup(ke){const y=g(!1),z=g([]),T=g(0),f=g(null),V=g(null),o=te({pageIndex:1,pageSize:10,userId:void 0,fromUserId:void 0,orderId:void 0,level:void 0,status:void 0,createTimeStart:void 0,createTimeEnd:void 0}),C=g(!1),u=g(null),B=async()=>{const n=await ue();n.code===0&&(f.value=n.data)},x=async()=>{y.value=!0;try{const n=await re(o);n.code===0&&(z.value=n.data.items,T.value=n.data.total)}finally{y.value=!1}},M=n=>{n?(o.createTimeStart=n[0],o.createTimeEnd=n[1]):(o.createTimeStart=void 0,o.createTimeEnd=void 0)},L=()=>{o.pageIndex=1,x()},Y=()=>{o.userId=void 0,o.fromUserId=void 0,o.orderId=void 0,o.level=void 0,o.status=void 0,o.createTimeStart=void 0,o.createTimeEnd=void 0,V.value=null,o.pageIndex=1,x()},j=n=>{o.pageSize=n,x()},O=n=>{o.pageIndex=n,x()},$=async n=>{const a=await ce(n.id);a.code===0&&(u.value=a.data,C.value=!0)},P=async()=>{try{const n=await me(o),a=n.data instanceof Blob?n.data:new Blob([n.data]),I=window.URL.createObjectURL(a),p=document.createElement("a");p.href=I,p.download=`佣金记录_${new Date().toISOString().slice(0,10)}.xlsx`,p.click(),window.URL.revokeObjectURL(I),A.success("导出成功")}catch{A.error("导出失败")}};return le(()=>{B(),x()}),(n,a)=>{const I=r("el-icon"),p=r("el-button"),w=r("el-card"),D=r("el-col"),q=r("el-row"),k=r("el-input"),b=r("el-form-item"),G=r("el-date-picker"),J=r("el-form"),m=r("el-table-column"),U=r("el-tag"),H=r("el-table"),K=r("el-pagination"),c=r("el-descriptions-item"),Q=r("el-descriptions"),W=r("el-drawer"),X=E("permission"),Z=E("loading");return h(),ae("div",_e,[d("div",pe,[a[10]||(a[10]=d("h2",null,"佣金记录管理",-1)),F((h(),S(p,{type:"success",onClick:P},{default:t(()=>[e(I,null,{default:t(()=>[e(N(oe))]),_:1}),a[9]||(a[9]=i("导出 ",-1))]),_:1})),[[X,"commission:export"]])]),e(q,{gutter:20,class:"stats-row"},{default:t(()=>[e(D,{span:8},{default:t(()=>[e(w,{shadow:"hover",class:"stat-card"},{default:t(()=>{var l,_,v;return[a[11]||(a[11]=d("div",{class:"stat-label"},"总金额",-1)),d("div",ve,"¥"+s(((_=(l=f.value)==null?void 0:l.totalAmount)==null?void 0:_.toFixed(2))||"0.00"),1),d("div",fe,"共 "+s(((v=f.value)==null?void 0:v.totalCount)||0)+" 笔",1)]}),_:1})]),_:1}),e(D,{span:8},{default:t(()=>[e(w,{shadow:"hover",class:"stat-card pending"},{default:t(()=>{var l,_,v;return[a[12]||(a[12]=d("div",{class:"stat-label"},"待结算金额",-1)),d("div",be,"¥"+s(((_=(l=f.value)==null?void 0:l.pendingAmount)==null?void 0:_.toFixed(2))||"0.00"),1),d("div",ge,"共 "+s(((v=f.value)==null?void 0:v.pendingCount)||0)+" 笔",1)]}),_:1})]),_:1}),e(D,{span:8},{default:t(()=>[e(w,{shadow:"hover",class:"stat-card settled"},{default:t(()=>{var l,_,v;return[a[13]||(a[13]=d("div",{class:"stat-label"},"已结算金额",-1)),d("div",Ie,"¥"+s(((_=(l=f.value)==null?void 0:l.settledAmount)==null?void 0:_.toFixed(2))||"0.00"),1),d("div",xe,"共 "+s(((v=f.value)==null?void 0:v.settledCount)||0)+" 笔",1)]}),_:1})]),_:1})]),_:1}),e(w,{class:"search-card",shadow:"never"},{default:t(()=>[e(J,{model:o,inline:""},{default:t(()=>[e(b,{label:"用户ID"},{default:t(()=>[e(k,{modelValue:o.userId,"onUpdate:modelValue":a[0]||(a[0]=l=>o.userId=l),modelModifiers:{number:!0},placeholder:"请输入用户ID",clearable:""},null,8,["modelValue"])]),_:1}),e(b,{label:"来源用户ID"},{default:t(()=>[e(k,{modelValue:o.fromUserId,"onUpdate:modelValue":a[1]||(a[1]=l=>o.fromUserId=l),modelModifiers:{number:!0},placeholder:"请输入来源用户ID",clearable:""},null,8,["modelValue"])]),_:1}),e(b,{label:"订单ID"},{default:t(()=>[e(k,{modelValue:o.orderId,"onUpdate:modelValue":a[2]||(a[2]=l=>o.orderId=l),modelModifiers:{number:!0},placeholder:"请输入订单ID",clearable:""},null,8,["modelValue"])]),_:1}),e(b,{label:"层级"},{default:t(()=>[e(R,{modelValue:o.level,"onUpdate:modelValue":a[3]||(a[3]=l=>o.level=l),"dict-type":"commission_level",placeholder:"请选择层级",clearable:""},null,8,["modelValue"])]),_:1}),e(b,{label:"状态"},{default:t(()=>[e(R,{modelValue:o.status,"onUpdate:modelValue":a[4]||(a[4]=l=>o.status=l),"dict-type":"commission_status",placeholder:"请选择状态",clearable:""},null,8,["modelValue"])]),_:1}),e(b,{label:"创建时间"},{default:t(()=>[e(G,{modelValue:V.value,"onUpdate:modelValue":a[5]||(a[5]=l=>V.value=l),type:"daterange","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期","value-format":"YYYY-MM-DD",onChange:M},null,8,["modelValue"])]),_:1}),e(b,null,{default:t(()=>[e(p,{type:"primary",onClick:L},{default:t(()=>[e(I,null,{default:t(()=>[e(N(se))]),_:1}),a[14]||(a[14]=i("搜索",-1))]),_:1}),e(p,{onClick:Y},{default:t(()=>[e(I,null,{default:t(()=>[e(N(ne))]),_:1}),a[15]||(a[15]=i("重置",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),e(w,{class:"table-card",shadow:"never"},{default:t(()=>[F((h(),S(H,{data:z.value,"row-key":"id"},{default:t(()=>[e(m,{label:"用户信息","min-width":"120"},{default:t(({row:l})=>[d("div",null,s(l.userNickname),1),d("div",we,"ID: "+s(l.userId),1)]),_:1}),e(m,{label:"来源用户","min-width":"120"},{default:t(({row:l})=>[d("div",null,s(l.fromUserNickname),1),d("div",he,"ID: "+s(l.fromUserId),1)]),_:1}),e(m,{label:"订单信息","min-width":"150"},{default:t(({row:l})=>[d("div",null,s(l.orderNo),1),d("div",ye,"金额: ¥"+s(l.orderAmount.toFixed(2)),1)]),_:1}),e(m,{prop:"commissionRate",label:"佣金比例",width:"100",align:"center"},{default:t(({row:l})=>[i(s((l.commissionRate*100).toFixed(1))+"%",1)]),_:1}),e(m,{prop:"commissionAmount",label:"佣金金额",width:"100",align:"right"},{default:t(({row:l})=>[d("span",Ve,"¥"+s(l.commissionAmount.toFixed(2)),1)]),_:1}),e(m,{prop:"levelName",label:"层级",width:"100",align:"center"},{default:t(({row:l})=>[e(U,{type:l.level===1?"":"info",size:"small"},{default:t(()=>[i(s(l.levelName),1)]),_:2},1032,["type"])]),_:1}),e(m,{label:"状态",width:"100",align:"center"},{default:t(({row:l})=>[e(U,{type:l.status===1?"warning":"success"},{default:t(()=>[i(s(l.statusName),1)]),_:2},1032,["type"])]),_:1}),e(m,{prop:"settleTime",label:"结算时间",width:"170"},{default:t(({row:l})=>[i(s(l.settleTime||"-"),1)]),_:1}),e(m,{prop:"createTime",label:"创建时间",width:"170"}),e(m,{label:"操作",width:"80",fixed:"right"},{default:t(({row:l})=>[e(p,{link:"",type:"primary",onClick:_=>$(l)},{default:t(()=>[...a[16]||(a[16]=[i("详情",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[Z,y.value]]),d("div",Ce,[e(K,{"current-page":o.pageIndex,"onUpdate:currentPage":a[6]||(a[6]=l=>o.pageIndex=l),"page-size":o.pageSize,"onUpdate:pageSize":a[7]||(a[7]=l=>o.pageSize=l),"page-sizes":[10,20,50,100],total:T.value,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:j,onCurrentChange:O},null,8,["current-page","page-size","total"])])]),_:1}),e(W,{modelValue:C.value,"onUpdate:modelValue":a[8]||(a[8]=l=>C.value=l),title:"佣金详情",size:"450px"},{default:t(()=>[u.value?(h(),S(Q,{key:0,column:1,border:""},{default:t(()=>[e(c,{label:"佣金ID"},{default:t(()=>[i(s(u.value.id),1)]),_:1}),e(c,{label:"用户"},{default:t(()=>[i(s(u.value.userNickname)+" (ID: "+s(u.value.userId)+")",1)]),_:1}),e(c,{label:"来源用户"},{default:t(()=>[i(s(u.value.fromUserNickname)+" (ID: "+s(u.value.fromUserId)+")",1)]),_:1}),e(c,{label:"订单号"},{default:t(()=>[i(s(u.value.orderNo),1)]),_:1}),e(c,{label:"订单金额"},{default:t(()=>[i("¥"+s(u.value.orderAmount.toFixed(2)),1)]),_:1}),e(c,{label:"佣金比例"},{default:t(()=>[i(s((u.value.commissionRate*100).toFixed(1))+"%",1)]),_:1}),e(c,{label:"佣金金额"},{default:t(()=>[i("¥"+s(u.value.commissionAmount.toFixed(2)),1)]),_:1}),e(c,{label:"层级"},{default:t(()=>[i(s(u.value.levelName),1)]),_:1}),e(c,{label:"状态"},{default:t(()=>[e(U,{type:u.value.status===1?"warning":"success"},{default:t(()=>[i(s(u.value.statusName),1)]),_:1},8,["type"])]),_:1}),e(c,{label:"结算时间"},{default:t(()=>[i(s(u.value.settleTime||"-"),1)]),_:1}),e(c,{label:"创建时间"},{default:t(()=>[i(s(u.value.createTime),1)]),_:1})]),_:1})):de("",!0)]),_:1},8,["modelValue"])])}}}),Ne=ie(De,[["__scopeId","data-v-b25f1926"]]);export{Ne as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-C3FaznTu.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DfwoE1L4.js similarity index 98% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-C3FaznTu.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DfwoE1L4.js index f69f181..7249550 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-C3FaznTu.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DfwoE1L4.js @@ -1 +1 @@ -import{d as ne,r as m,a as N,o as ie,g as n,B as pe,c as me,k as V,e as l,w as a,C as A,z as w,t as r,x as C,ao as W,b as x,l as G,D as H,G as J,ap as fe,W as K,aq as ye,E as y,ar as ve,as as ce,at as be,au as ge,av as _e,aw as ke,_ as Ve}from"./index-BsIaGxbR.js";const we={class:"dict-container"},Te={class:"card-header"},Ce={class:"card-header"},xe=ne({__name:"index",setup(qe){const q=m(!1),L=m([]),d=m(null);async function D(){q.value=!0;try{const u=await fe();L.value=u.data||[]}catch(u){console.error("加载字典类型失败",u)}finally{q.value=!1}}function P(u){d.value=u,u?U(u.code):T.value=[]}const b=m(!1),I=m(!1),S=m(),o=N({id:0,code:"",name:"",sourceType:1,sqlQuery:"",status:1,remark:""}),X={code:[{required:!0,message:"请输入编码",trigger:"blur"},{pattern:/^[a-z_]+$/,message:"编码只能包含小写字母和下划线",trigger:"blur"}],name:[{required:!0,message:"请输入名称",trigger:"blur"}],sourceType:[{required:!0,message:"请选择数据源",trigger:"change"}],sqlQuery:[{required:!0,message:"请输入SQL语句",trigger:"blur"}]};function Y(){Object.assign(o,{id:0,code:"",name:"",sourceType:1,sqlQuery:"",status:1,remark:""}),b.value=!0}function Z(u){Object.assign(o,u),b.value=!0}async function h(u){var e;try{await K.confirm(`确定删除字典类型「${u.name}」吗?删除后关联的数据项也会被删除。`,"提示",{type:"warning"}),await ye(u.id),y.success("删除成功"),((e=d.value)==null?void 0:e.id)===u.id&&(d.value=null,T.value=[]),D()}catch(_){_!=="cancel"&&y.error("删除失败")}}async function ee(){var e;if(await((e=S.value)==null?void 0:e.validate())){I.value=!0;try{o.id?(await ve(o.id,{name:o.name,sourceType:o.sourceType,sqlQuery:o.sqlQuery,status:o.status,remark:o.remark}),y.success("更新成功")):(await ce({code:o.code,name:o.name,sourceType:o.sourceType,sqlQuery:o.sqlQuery,status:o.status,remark:o.remark}),y.success("创建成功")),b.value=!1,D()}catch{y.error(o.id?"更新失败":"创建失败")}finally{I.value=!1}}}const Q=m(!1),T=m([]);async function U(u){Q.value=!0;try{const e=await be(u);T.value=e.data||[]}catch(e){console.error("加载字典数据失败",e)}finally{Q.value=!1}}const g=m(!1),E=m(!1),z=m(),s=N({id:0,typeId:0,label:"",value:"",sort:0,status:1,remark:""}),le={label:[{required:!0,message:"请输入标签",trigger:"blur"}],value:[{required:!0,message:"请输入值",trigger:"blur"}]};function ae(){d.value&&(Object.assign(s,{id:0,typeId:d.value.id,label:"",value:"",sort:0,status:1,remark:""}),g.value=!0)}function te(u){Object.assign(s,u),g.value=!0}async function oe(u){try{await K.confirm(`确定删除字典数据「${u.label}」吗?`,"提示",{type:"warning"}),await ge(u.id),y.success("删除成功"),d.value&&U(d.value.code)}catch(e){e!=="cancel"&&y.error("删除失败")}}async function se(){var e;if(await((e=z.value)==null?void 0:e.validate())){E.value=!0;try{s.id?(await _e(s.id,{label:s.label,value:s.value,sort:s.sort,status:s.status,remark:s.remark}),y.success("更新成功")):(await ke({typeId:s.typeId,label:s.label,value:s.value,sort:s.sort,status:s.status,remark:s.remark}),y.success("创建成功")),g.value=!1,d.value&&U(d.value.code)}catch{y.error(s.id?"更新失败":"创建失败")}finally{E.value=!1}}}return ie(()=>{D()}),(u,e)=>{const _=n("el-icon"),f=n("el-button"),i=n("el-table-column"),$=n("el-tag"),R=n("el-table"),B=n("el-card"),ue=n("el-empty"),v=n("el-input"),p=n("el-form-item"),k=n("el-radio"),F=n("el-radio-group"),M=n("el-form"),O=n("el-dialog"),re=n("el-input-number"),j=pe("loading");return V(),me("div",we,[l(B,{class:"dict-type-card"},{header:a(()=>[x("div",Te,[e[16]||(e[16]=x("span",null,"字典类型",-1)),l(f,{type:"primary",size:"small",onClick:Y},{default:a(()=>[l(_,null,{default:a(()=>[l(G(H))]),_:1}),e[15]||(e[15]=r("新增类型 ",-1))]),_:1})])]),default:a(()=>[A((V(),w(R,{data:L.value,"highlight-current-row":"",onCurrentChange:P,style:{width:"100%"}},{default:a(()=>[l(i,{prop:"code",label:"编码",width:"150"}),l(i,{prop:"name",label:"名称",width:"150"}),l(i,{prop:"sourceType",label:"数据源",width:"100"},{default:a(({row:t})=>[l($,{type:t.sourceType===1?"success":"warning"},{default:a(()=>[r(C(t.sourceType===1?"静态数据":"SQL查询"),1)]),_:2},1032,["type"])]),_:1}),l(i,{prop:"status",label:"状态",width:"80"},{default:a(({row:t})=>[l($,{type:t.status===1?"success":"danger"},{default:a(()=>[r(C(t.status===1?"启用":"禁用"),1)]),_:2},1032,["type"])]),_:1}),l(i,{prop:"remark",label:"备注","show-overflow-tooltip":""}),l(i,{label:"操作",width:"150",fixed:"right"},{default:a(({row:t})=>[l(f,{type:"primary",link:"",size:"small",onClick:W(c=>Z(t),["stop"])},{default:a(()=>[...e[17]||(e[17]=[r("编辑",-1)])]),_:1},8,["onClick"]),l(f,{type:"danger",link:"",size:"small",onClick:W(c=>h(t),["stop"])},{default:a(()=>[...e[18]||(e[18]=[r("删除",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[j,q.value]])]),_:1}),l(B,{class:"dict-item-card"},{header:a(()=>[x("div",Ce,[x("span",null,"字典数据 "+C(d.value?`- ${d.value.name}`:""),1),l(f,{type:"primary",size:"small",disabled:!d.value||d.value.sourceType!==1,onClick:ae},{default:a(()=>[l(_,null,{default:a(()=>[l(G(H))]),_:1}),e[19]||(e[19]=r("新增数据 ",-1))]),_:1},8,["disabled"])])]),default:a(()=>[d.value?A((V(),w(R,{key:1,data:T.value,style:{width:"100%"}},{default:a(()=>{var t;return[l(i,{prop:"label",label:"标签"}),l(i,{prop:"value",label:"值"}),l(i,{prop:"sort",label:"排序",width:"80"}),l(i,{prop:"status",label:"状态",width:"80"},{default:a(({row:c})=>[l($,{type:c.status===1?"success":"danger"},{default:a(()=>[r(C(c.status===1?"启用":"禁用"),1)]),_:2},1032,["type"])]),_:1}),l(i,{prop:"remark",label:"备注","show-overflow-tooltip":""}),((t=d.value)==null?void 0:t.sourceType)===1?(V(),w(i,{key:0,label:"操作",width:"150",fixed:"right"},{default:a(({row:c})=>[l(f,{type:"primary",link:"",size:"small",onClick:de=>te(c)},{default:a(()=>[...e[20]||(e[20]=[r("编辑",-1)])]),_:1},8,["onClick"]),l(f,{type:"danger",link:"",size:"small",onClick:de=>oe(c)},{default:a(()=>[...e[21]||(e[21]=[r("删除",-1)])]),_:1},8,["onClick"])]),_:1})):J("",!0)]}),_:1},8,["data"])),[[j,Q.value]]):(V(),w(ue,{key:0,description:"请选择左侧字典类型"}))]),_:1}),l(O,{modelValue:b.value,"onUpdate:modelValue":e[7]||(e[7]=t=>b.value=t),title:o.id?"编辑字典类型":"新增字典类型",width:"500px"},{footer:a(()=>[l(f,{onClick:e[6]||(e[6]=t=>b.value=!1)},{default:a(()=>[...e[26]||(e[26]=[r("取消",-1)])]),_:1}),l(f,{type:"primary",loading:I.value,onClick:ee},{default:a(()=>[...e[27]||(e[27]=[r("确定",-1)])]),_:1},8,["loading"])]),default:a(()=>[l(M,{ref_key:"typeFormRef",ref:S,model:o,rules:X,"label-width":"100px"},{default:a(()=>[l(p,{label:"编码",prop:"code"},{default:a(()=>[l(v,{modelValue:o.code,"onUpdate:modelValue":e[0]||(e[0]=t=>o.code=t),disabled:!!o.id,placeholder:"请输入编码"},null,8,["modelValue","disabled"])]),_:1}),l(p,{label:"名称",prop:"name"},{default:a(()=>[l(v,{modelValue:o.name,"onUpdate:modelValue":e[1]||(e[1]=t=>o.name=t),placeholder:"请输入名称"},null,8,["modelValue"])]),_:1}),l(p,{label:"数据源",prop:"sourceType"},{default:a(()=>[l(F,{modelValue:o.sourceType,"onUpdate:modelValue":e[2]||(e[2]=t=>o.sourceType=t),disabled:!!o.id},{default:a(()=>[l(k,{value:1},{default:a(()=>[...e[22]||(e[22]=[r("静态数据",-1)])]),_:1}),l(k,{value:2},{default:a(()=>[...e[23]||(e[23]=[r("SQL查询",-1)])]),_:1})]),_:1},8,["modelValue","disabled"])]),_:1}),o.sourceType===2?(V(),w(p,{key:0,label:"SQL语句",prop:"sqlQuery"},{default:a(()=>[l(v,{modelValue:o.sqlQuery,"onUpdate:modelValue":e[3]||(e[3]=t=>o.sqlQuery=t),type:"textarea",rows:4,placeholder:"SELECT value, label FROM table WHERE status = 1"},null,8,["modelValue"])]),_:1})):J("",!0),l(p,{label:"状态",prop:"status"},{default:a(()=>[l(F,{modelValue:o.status,"onUpdate:modelValue":e[4]||(e[4]=t=>o.status=t)},{default:a(()=>[l(k,{value:1},{default:a(()=>[...e[24]||(e[24]=[r("启用",-1)])]),_:1}),l(k,{value:0},{default:a(()=>[...e[25]||(e[25]=[r("禁用",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),l(p,{label:"备注",prop:"remark"},{default:a(()=>[l(v,{modelValue:o.remark,"onUpdate:modelValue":e[5]||(e[5]=t=>o.remark=t),type:"textarea",rows:2,placeholder:"请输入备注"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"]),l(O,{modelValue:g.value,"onUpdate:modelValue":e[14]||(e[14]=t=>g.value=t),title:s.id?"编辑字典数据":"新增字典数据",width:"500px"},{footer:a(()=>[l(f,{onClick:e[13]||(e[13]=t=>g.value=!1)},{default:a(()=>[...e[30]||(e[30]=[r("取消",-1)])]),_:1}),l(f,{type:"primary",loading:E.value,onClick:se},{default:a(()=>[...e[31]||(e[31]=[r("确定",-1)])]),_:1},8,["loading"])]),default:a(()=>[l(M,{ref_key:"itemFormRef",ref:z,model:s,rules:le,"label-width":"80px"},{default:a(()=>[l(p,{label:"标签",prop:"label"},{default:a(()=>[l(v,{modelValue:s.label,"onUpdate:modelValue":e[8]||(e[8]=t=>s.label=t),placeholder:"请输入标签"},null,8,["modelValue"])]),_:1}),l(p,{label:"值",prop:"value"},{default:a(()=>[l(v,{modelValue:s.value,"onUpdate:modelValue":e[9]||(e[9]=t=>s.value=t),placeholder:"请输入值"},null,8,["modelValue"])]),_:1}),l(p,{label:"排序",prop:"sort"},{default:a(()=>[l(re,{modelValue:s.sort,"onUpdate:modelValue":e[10]||(e[10]=t=>s.sort=t),min:0,max:9999},null,8,["modelValue"])]),_:1}),l(p,{label:"状态",prop:"status"},{default:a(()=>[l(F,{modelValue:s.status,"onUpdate:modelValue":e[11]||(e[11]=t=>s.status=t)},{default:a(()=>[l(k,{value:1},{default:a(()=>[...e[28]||(e[28]=[r("启用",-1)])]),_:1}),l(k,{value:0},{default:a(()=>[...e[29]||(e[29]=[r("禁用",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),l(p,{label:"备注",prop:"remark"},{default:a(()=>[l(v,{modelValue:s.remark,"onUpdate:modelValue":e[12]||(e[12]=t=>s.remark=t),type:"textarea",rows:2,placeholder:"请输入备注"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}}),Ie=Ve(xe,[["__scopeId","data-v-124ceeb6"]]);export{Ie as default}; +import{d as ne,r as m,a as N,o as ie,g as n,B as pe,c as me,k as V,e as l,w as a,C as A,z as w,t as r,x as C,ao as W,b as x,l as G,D as H,G as J,ap as fe,W as K,aq as ye,E as y,ar as ve,as as ce,at as be,au as ge,av as _e,aw as ke,_ as Ve}from"./index-CJcwRKyx.js";const we={class:"dict-container"},Te={class:"card-header"},Ce={class:"card-header"},xe=ne({__name:"index",setup(qe){const q=m(!1),L=m([]),d=m(null);async function D(){q.value=!0;try{const u=await fe();L.value=u.data||[]}catch(u){console.error("加载字典类型失败",u)}finally{q.value=!1}}function P(u){d.value=u,u?U(u.code):T.value=[]}const b=m(!1),I=m(!1),S=m(),o=N({id:0,code:"",name:"",sourceType:1,sqlQuery:"",status:1,remark:""}),X={code:[{required:!0,message:"请输入编码",trigger:"blur"},{pattern:/^[a-z_]+$/,message:"编码只能包含小写字母和下划线",trigger:"blur"}],name:[{required:!0,message:"请输入名称",trigger:"blur"}],sourceType:[{required:!0,message:"请选择数据源",trigger:"change"}],sqlQuery:[{required:!0,message:"请输入SQL语句",trigger:"blur"}]};function Y(){Object.assign(o,{id:0,code:"",name:"",sourceType:1,sqlQuery:"",status:1,remark:""}),b.value=!0}function Z(u){Object.assign(o,u),b.value=!0}async function h(u){var e;try{await K.confirm(`确定删除字典类型「${u.name}」吗?删除后关联的数据项也会被删除。`,"提示",{type:"warning"}),await ye(u.id),y.success("删除成功"),((e=d.value)==null?void 0:e.id)===u.id&&(d.value=null,T.value=[]),D()}catch(_){_!=="cancel"&&y.error("删除失败")}}async function ee(){var e;if(await((e=S.value)==null?void 0:e.validate())){I.value=!0;try{o.id?(await ve(o.id,{name:o.name,sourceType:o.sourceType,sqlQuery:o.sqlQuery,status:o.status,remark:o.remark}),y.success("更新成功")):(await ce({code:o.code,name:o.name,sourceType:o.sourceType,sqlQuery:o.sqlQuery,status:o.status,remark:o.remark}),y.success("创建成功")),b.value=!1,D()}catch{y.error(o.id?"更新失败":"创建失败")}finally{I.value=!1}}}const Q=m(!1),T=m([]);async function U(u){Q.value=!0;try{const e=await be(u);T.value=e.data||[]}catch(e){console.error("加载字典数据失败",e)}finally{Q.value=!1}}const g=m(!1),E=m(!1),z=m(),s=N({id:0,typeId:0,label:"",value:"",sort:0,status:1,remark:""}),le={label:[{required:!0,message:"请输入标签",trigger:"blur"}],value:[{required:!0,message:"请输入值",trigger:"blur"}]};function ae(){d.value&&(Object.assign(s,{id:0,typeId:d.value.id,label:"",value:"",sort:0,status:1,remark:""}),g.value=!0)}function te(u){Object.assign(s,u),g.value=!0}async function oe(u){try{await K.confirm(`确定删除字典数据「${u.label}」吗?`,"提示",{type:"warning"}),await ge(u.id),y.success("删除成功"),d.value&&U(d.value.code)}catch(e){e!=="cancel"&&y.error("删除失败")}}async function se(){var e;if(await((e=z.value)==null?void 0:e.validate())){E.value=!0;try{s.id?(await _e(s.id,{label:s.label,value:s.value,sort:s.sort,status:s.status,remark:s.remark}),y.success("更新成功")):(await ke({typeId:s.typeId,label:s.label,value:s.value,sort:s.sort,status:s.status,remark:s.remark}),y.success("创建成功")),g.value=!1,d.value&&U(d.value.code)}catch{y.error(s.id?"更新失败":"创建失败")}finally{E.value=!1}}}return ie(()=>{D()}),(u,e)=>{const _=n("el-icon"),f=n("el-button"),i=n("el-table-column"),$=n("el-tag"),R=n("el-table"),B=n("el-card"),ue=n("el-empty"),v=n("el-input"),p=n("el-form-item"),k=n("el-radio"),F=n("el-radio-group"),M=n("el-form"),O=n("el-dialog"),re=n("el-input-number"),j=pe("loading");return V(),me("div",we,[l(B,{class:"dict-type-card"},{header:a(()=>[x("div",Te,[e[16]||(e[16]=x("span",null,"字典类型",-1)),l(f,{type:"primary",size:"small",onClick:Y},{default:a(()=>[l(_,null,{default:a(()=>[l(G(H))]),_:1}),e[15]||(e[15]=r("新增类型 ",-1))]),_:1})])]),default:a(()=>[A((V(),w(R,{data:L.value,"highlight-current-row":"",onCurrentChange:P,style:{width:"100%"}},{default:a(()=>[l(i,{prop:"code",label:"编码",width:"150"}),l(i,{prop:"name",label:"名称",width:"150"}),l(i,{prop:"sourceType",label:"数据源",width:"100"},{default:a(({row:t})=>[l($,{type:t.sourceType===1?"success":"warning"},{default:a(()=>[r(C(t.sourceType===1?"静态数据":"SQL查询"),1)]),_:2},1032,["type"])]),_:1}),l(i,{prop:"status",label:"状态",width:"80"},{default:a(({row:t})=>[l($,{type:t.status===1?"success":"danger"},{default:a(()=>[r(C(t.status===1?"启用":"禁用"),1)]),_:2},1032,["type"])]),_:1}),l(i,{prop:"remark",label:"备注","show-overflow-tooltip":""}),l(i,{label:"操作",width:"150",fixed:"right"},{default:a(({row:t})=>[l(f,{type:"primary",link:"",size:"small",onClick:W(c=>Z(t),["stop"])},{default:a(()=>[...e[17]||(e[17]=[r("编辑",-1)])]),_:1},8,["onClick"]),l(f,{type:"danger",link:"",size:"small",onClick:W(c=>h(t),["stop"])},{default:a(()=>[...e[18]||(e[18]=[r("删除",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[j,q.value]])]),_:1}),l(B,{class:"dict-item-card"},{header:a(()=>[x("div",Ce,[x("span",null,"字典数据 "+C(d.value?`- ${d.value.name}`:""),1),l(f,{type:"primary",size:"small",disabled:!d.value||d.value.sourceType!==1,onClick:ae},{default:a(()=>[l(_,null,{default:a(()=>[l(G(H))]),_:1}),e[19]||(e[19]=r("新增数据 ",-1))]),_:1},8,["disabled"])])]),default:a(()=>[d.value?A((V(),w(R,{key:1,data:T.value,style:{width:"100%"}},{default:a(()=>{var t;return[l(i,{prop:"label",label:"标签"}),l(i,{prop:"value",label:"值"}),l(i,{prop:"sort",label:"排序",width:"80"}),l(i,{prop:"status",label:"状态",width:"80"},{default:a(({row:c})=>[l($,{type:c.status===1?"success":"danger"},{default:a(()=>[r(C(c.status===1?"启用":"禁用"),1)]),_:2},1032,["type"])]),_:1}),l(i,{prop:"remark",label:"备注","show-overflow-tooltip":""}),((t=d.value)==null?void 0:t.sourceType)===1?(V(),w(i,{key:0,label:"操作",width:"150",fixed:"right"},{default:a(({row:c})=>[l(f,{type:"primary",link:"",size:"small",onClick:de=>te(c)},{default:a(()=>[...e[20]||(e[20]=[r("编辑",-1)])]),_:1},8,["onClick"]),l(f,{type:"danger",link:"",size:"small",onClick:de=>oe(c)},{default:a(()=>[...e[21]||(e[21]=[r("删除",-1)])]),_:1},8,["onClick"])]),_:1})):J("",!0)]}),_:1},8,["data"])),[[j,Q.value]]):(V(),w(ue,{key:0,description:"请选择左侧字典类型"}))]),_:1}),l(O,{modelValue:b.value,"onUpdate:modelValue":e[7]||(e[7]=t=>b.value=t),title:o.id?"编辑字典类型":"新增字典类型",width:"500px"},{footer:a(()=>[l(f,{onClick:e[6]||(e[6]=t=>b.value=!1)},{default:a(()=>[...e[26]||(e[26]=[r("取消",-1)])]),_:1}),l(f,{type:"primary",loading:I.value,onClick:ee},{default:a(()=>[...e[27]||(e[27]=[r("确定",-1)])]),_:1},8,["loading"])]),default:a(()=>[l(M,{ref_key:"typeFormRef",ref:S,model:o,rules:X,"label-width":"100px"},{default:a(()=>[l(p,{label:"编码",prop:"code"},{default:a(()=>[l(v,{modelValue:o.code,"onUpdate:modelValue":e[0]||(e[0]=t=>o.code=t),disabled:!!o.id,placeholder:"请输入编码"},null,8,["modelValue","disabled"])]),_:1}),l(p,{label:"名称",prop:"name"},{default:a(()=>[l(v,{modelValue:o.name,"onUpdate:modelValue":e[1]||(e[1]=t=>o.name=t),placeholder:"请输入名称"},null,8,["modelValue"])]),_:1}),l(p,{label:"数据源",prop:"sourceType"},{default:a(()=>[l(F,{modelValue:o.sourceType,"onUpdate:modelValue":e[2]||(e[2]=t=>o.sourceType=t),disabled:!!o.id},{default:a(()=>[l(k,{value:1},{default:a(()=>[...e[22]||(e[22]=[r("静态数据",-1)])]),_:1}),l(k,{value:2},{default:a(()=>[...e[23]||(e[23]=[r("SQL查询",-1)])]),_:1})]),_:1},8,["modelValue","disabled"])]),_:1}),o.sourceType===2?(V(),w(p,{key:0,label:"SQL语句",prop:"sqlQuery"},{default:a(()=>[l(v,{modelValue:o.sqlQuery,"onUpdate:modelValue":e[3]||(e[3]=t=>o.sqlQuery=t),type:"textarea",rows:4,placeholder:"SELECT value, label FROM table WHERE status = 1"},null,8,["modelValue"])]),_:1})):J("",!0),l(p,{label:"状态",prop:"status"},{default:a(()=>[l(F,{modelValue:o.status,"onUpdate:modelValue":e[4]||(e[4]=t=>o.status=t)},{default:a(()=>[l(k,{value:1},{default:a(()=>[...e[24]||(e[24]=[r("启用",-1)])]),_:1}),l(k,{value:0},{default:a(()=>[...e[25]||(e[25]=[r("禁用",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),l(p,{label:"备注",prop:"remark"},{default:a(()=>[l(v,{modelValue:o.remark,"onUpdate:modelValue":e[5]||(e[5]=t=>o.remark=t),type:"textarea",rows:2,placeholder:"请输入备注"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"]),l(O,{modelValue:g.value,"onUpdate:modelValue":e[14]||(e[14]=t=>g.value=t),title:s.id?"编辑字典数据":"新增字典数据",width:"500px"},{footer:a(()=>[l(f,{onClick:e[13]||(e[13]=t=>g.value=!1)},{default:a(()=>[...e[30]||(e[30]=[r("取消",-1)])]),_:1}),l(f,{type:"primary",loading:E.value,onClick:se},{default:a(()=>[...e[31]||(e[31]=[r("确定",-1)])]),_:1},8,["loading"])]),default:a(()=>[l(M,{ref_key:"itemFormRef",ref:z,model:s,rules:le,"label-width":"80px"},{default:a(()=>[l(p,{label:"标签",prop:"label"},{default:a(()=>[l(v,{modelValue:s.label,"onUpdate:modelValue":e[8]||(e[8]=t=>s.label=t),placeholder:"请输入标签"},null,8,["modelValue"])]),_:1}),l(p,{label:"值",prop:"value"},{default:a(()=>[l(v,{modelValue:s.value,"onUpdate:modelValue":e[9]||(e[9]=t=>s.value=t),placeholder:"请输入值"},null,8,["modelValue"])]),_:1}),l(p,{label:"排序",prop:"sort"},{default:a(()=>[l(re,{modelValue:s.sort,"onUpdate:modelValue":e[10]||(e[10]=t=>s.sort=t),min:0,max:9999},null,8,["modelValue"])]),_:1}),l(p,{label:"状态",prop:"status"},{default:a(()=>[l(F,{modelValue:s.status,"onUpdate:modelValue":e[11]||(e[11]=t=>s.status=t)},{default:a(()=>[l(k,{value:1},{default:a(()=>[...e[28]||(e[28]=[r("启用",-1)])]),_:1}),l(k,{value:0},{default:a(()=>[...e[29]||(e[29]=[r("禁用",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),l(p,{label:"备注",prop:"remark"},{default:a(()=>[l(v,{modelValue:s.remark,"onUpdate:modelValue":e[12]||(e[12]=t=>s.remark=t),type:"textarea",rows:2,placeholder:"请输入备注"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}}),Ie=Ve(xe,[["__scopeId","data-v-124ceeb6"]]);export{Ie as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-sTKEEg6f.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DhlnEG4X.js similarity index 98% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-sTKEEg6f.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DhlnEG4X.js index 44a03bc..5f71025 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-sTKEEg6f.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DhlnEG4X.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-BsIaGxbR.js";import{g as ye,a as _e,d as be,u as ve,c as Te}from"./assessment-CKsQcO9P.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({pageIndex: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-1f756c7c"]]);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-CJcwRKyx.js";import{g as ye,a as _e,d as be,u as ve,c as Te}from"./assessment-pbF6Upoc.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({pageIndex: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-1f756c7c"]]);export{Ee as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Cszekvzh.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DoiofAKi.js similarity index 99% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Cszekvzh.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DoiofAKi.js index 83c1ffe..88d485c 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Cszekvzh.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DoiofAKi.js @@ -1 +1 @@ -import{d as ee,r as v,v as N,a as le,o as te,g as s,B as S,c as ne,k as d,e as t,w as n,C as T,z as u,G as y,ax as ae,t as i,x as q,b as A,l as oe,D as re,ay as se,E as x,az as de,an as ue,W as ie,aA as pe,_ as me}from"./index-BsIaGxbR.js";const fe={class:"page-container"},ce={class:"card-header"},ye=ee({__name:"index",setup(_e){const E=v(!1),C=v([]),w={1:{label:"目录",type:"info"},2:{label:"菜单",type:""},3:{label:"按钮",type:"warning"}},c=v(!1),_=v(!1),F=N(()=>_.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=N(()=>{if(!_.value)return[{id:0,name:"顶级菜单",children:C.value}];const o=l=>l.filter(r=>r.id!==e.id).map(r=>({...r,children:o(r.children||[])}));return[{id:0,name:"顶级菜单",children:o(C.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"}]},h=()=>{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()},W=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),x.success("更新成功")):(await de(r),x.success("创建成功")),c.value=!1,O()}catch(r){x.error(r.message||"操作失败")}finally{I.value=!1}}},O=async()=>{E.value=!0;try{const o=await ue();C.value=o.data}finally{E.value=!1}},G=()=>{h(),_.value=!1,c.value=!0},L=o=>{h(),_.value=!1,e.parentId=o.id,c.value=!0},j=o=>{h(),_.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),x.success("删除成功"),O()}catch(m){m!=="cancel"&&x.error(m.message||"删除失败")}};return te(()=>{O()}),(o,l)=>{const r=s("el-icon"),m=s("el-button"),f=s("el-table-column"),D=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"),M=s("el-radio-group"),b=s("el-input"),Q=s("el-input-number"),B=s("el-switch"),X=s("el-form"),Y=s("el-dialog"),k=S("permission"),Z=S("loading");return d(),ne("div",fe,[t(K,null,{header:n(()=>[A("div",ce,[l[14]||(l[14]=A("span",null,"菜单管理",-1)),T((d(),u(m,{type:"primary",onClick:G},{default:n(()=>[t(r,null,{default:n(()=>[t(oe(re))]),_:1}),l[13]||(l[13]=i("新增菜单 ",-1))]),_:1})),[[k,"system:menu:add"]])])]),default:n(()=>[T((d(),u(J,{data:C.value,"row-key":"id","tree-props":{children:"children"}},{default:n(()=>[t(f,{prop:"name",label:"菜单名称","min-width":"180"}),t(f,{prop:"icon",label:"图标",width:"80"},{default:n(({row:a})=>[a.icon?(d(),u(r,{key:0},{default:n(()=>[(d(),u(ae(a.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:n(({row:a})=>{var V;return[t(D,{type:(V=w[a.menuType])==null?void 0:V.type},{default:n(()=>{var $;return[i(q(($=w[a.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:n(({row:a})=>[t(D,{type:a.status===1?"success":"danger"},{default:n(()=>[i(q(a.status===1?"显示":"隐藏"),1)]),_:2},1032,["type"])]),_:1}),t(f,{label:"操作",width:"200",fixed:"right"},{default:n(({row:a})=>[T((d(),u(m,{link:"",type:"primary",onClick:V=>j(a)},{default:n(()=>[...l[15]||(l[15]=[i("编辑",-1)])]),_:1},8,["onClick"])),[[k,"system:menu:edit"]]),T((d(),u(m,{link:"",type:"primary",onClick:V=>L(a)},{default:n(()=>[...l[16]||(l[16]=[i("添加子菜单",-1)])]),_:1},8,["onClick"])),[[k,"system:menu:add"]]),T((d(),u(m,{link:"",type:"danger",onClick:V=>H(a)},{default:n(()=>[...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]=a=>c.value=a),title:F.value,width:"550px",onClose:h},{footer:n(()=>[t(m,{onClick:l[11]||(l[11]=a=>c.value=!1)},{default:n(()=>[...l[23]||(l[23]=[i("取消",-1)])]),_:1}),t(m,{type:"primary",onClick:W,loading:I.value},{default:n(()=>[...l[24]||(l[24]=[i("确定",-1)])]),_:1},8,["loading"])]),default:n(()=>[t(X,{ref_key:"formRef",ref:U,model:e,rules:z,"label-width":"100px"},{default:n(()=>[t(p,{label:"上级菜单",prop:"parentId"},{default:n(()=>[t(P,{modelValue:e.parentId,"onUpdate:modelValue":l[0]||(l[0]=a=>e.parentId=a),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:n(()=>[t(M,{modelValue:e.menuType,"onUpdate:modelValue":l[1]||(l[1]=a=>e.menuType=a)},{default:n(()=>[t(g,{value:1},{default:n(()=>[...l[18]||(l[18]=[i("目录",-1)])]),_:1}),t(g,{value:2},{default:n(()=>[...l[19]||(l[19]=[i("菜单",-1)])]),_:1}),t(g,{value:3},{default:n(()=>[...l[20]||(l[20]=[i("按钮",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),t(p,{label:"菜单名称",prop:"name"},{default:n(()=>[t(b,{modelValue:e.name,"onUpdate:modelValue":l[2]||(l[2]=a=>e.name=a),placeholder:"请输入菜单名称"},null,8,["modelValue"])]),_:1}),e.menuType!==3?(d(),u(p,{key:0,label:"图标",prop:"icon"},{default:n(()=>[t(b,{modelValue:e.icon,"onUpdate:modelValue":l[3]||(l[3]=a=>e.icon=a),placeholder:"请输入图标名称,如 Setting"},null,8,["modelValue"])]),_:1})):y("",!0),e.menuType===2?(d(),u(p,{key:1,label:"路由路径",prop:"path"},{default:n(()=>[t(b,{modelValue:e.path,"onUpdate:modelValue":l[4]||(l[4]=a=>e.path=a),placeholder:"请输入路由路径,如 /system/menu"},null,8,["modelValue"])]),_:1})):y("",!0),e.menuType===2?(d(),u(p,{key:2,label:"组件路径",prop:"component"},{default:n(()=>[t(b,{modelValue:e.component,"onUpdate:modelValue":l[5]||(l[5]=a=>e.component=a),placeholder:"请输入组件路径,如 system/menu/index"},null,8,["modelValue"])]),_:1})):y("",!0),e.menuType===3?(d(),u(p,{key:3,label:"权限标识",prop:"permission"},{default:n(()=>[t(b,{modelValue:e.permission,"onUpdate:modelValue":l[6]||(l[6]=a=>e.permission=a),placeholder:"请输入权限标识,如 menu:create"},null,8,["modelValue"])]),_:1})):y("",!0),t(p,{label:"排序",prop:"sortOrder"},{default:n(()=>[t(Q,{modelValue:e.sortOrder,"onUpdate:modelValue":l[7]||(l[7]=a=>e.sortOrder=a),min:0,max:9999},null,8,["modelValue"])]),_:1}),t(p,{label:"状态",prop:"status"},{default:n(()=>[t(M,{modelValue:e.status,"onUpdate:modelValue":l[8]||(l[8]=a=>e.status=a)},{default:n(()=>[t(g,{value:1},{default:n(()=>[...l[21]||(l[21]=[i("显示",-1)])]),_:1}),t(g,{value:0},{default:n(()=>[...l[22]||(l[22]=[i("隐藏",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),e.menuType===2?(d(),u(p,{key:4,label:"是否外链",prop:"isExternal"},{default:n(()=>[t(B,{modelValue:e.isExternal,"onUpdate:modelValue":l[9]||(l[9]=a=>e.isExternal=a)},null,8,["modelValue"])]),_:1})):y("",!0),e.menuType===2?(d(),u(p,{key:5,label:"是否缓存",prop:"isCache"},{default:n(()=>[t(B,{modelValue:e.isCache,"onUpdate:modelValue":l[10]||(l[10]=a=>e.isCache=a)},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 N,a as le,o as te,g as s,B as S,c as ne,k as d,e as t,w as n,C as T,z as u,G as y,ax as ae,t as i,x as q,b as A,l as oe,D as re,ay as se,E as x,az as de,an as ue,W as ie,aA as pe,_ as me}from"./index-CJcwRKyx.js";const fe={class:"page-container"},ce={class:"card-header"},ye=ee({__name:"index",setup(_e){const E=v(!1),C=v([]),w={1:{label:"目录",type:"info"},2:{label:"菜单",type:""},3:{label:"按钮",type:"warning"}},c=v(!1),_=v(!1),F=N(()=>_.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=N(()=>{if(!_.value)return[{id:0,name:"顶级菜单",children:C.value}];const o=l=>l.filter(r=>r.id!==e.id).map(r=>({...r,children:o(r.children||[])}));return[{id:0,name:"顶级菜单",children:o(C.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"}]},h=()=>{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()},W=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),x.success("更新成功")):(await de(r),x.success("创建成功")),c.value=!1,O()}catch(r){x.error(r.message||"操作失败")}finally{I.value=!1}}},O=async()=>{E.value=!0;try{const o=await ue();C.value=o.data}finally{E.value=!1}},G=()=>{h(),_.value=!1,c.value=!0},L=o=>{h(),_.value=!1,e.parentId=o.id,c.value=!0},j=o=>{h(),_.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),x.success("删除成功"),O()}catch(m){m!=="cancel"&&x.error(m.message||"删除失败")}};return te(()=>{O()}),(o,l)=>{const r=s("el-icon"),m=s("el-button"),f=s("el-table-column"),D=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"),M=s("el-radio-group"),b=s("el-input"),Q=s("el-input-number"),B=s("el-switch"),X=s("el-form"),Y=s("el-dialog"),k=S("permission"),Z=S("loading");return d(),ne("div",fe,[t(K,null,{header:n(()=>[A("div",ce,[l[14]||(l[14]=A("span",null,"菜单管理",-1)),T((d(),u(m,{type:"primary",onClick:G},{default:n(()=>[t(r,null,{default:n(()=>[t(oe(re))]),_:1}),l[13]||(l[13]=i("新增菜单 ",-1))]),_:1})),[[k,"system:menu:add"]])])]),default:n(()=>[T((d(),u(J,{data:C.value,"row-key":"id","tree-props":{children:"children"}},{default:n(()=>[t(f,{prop:"name",label:"菜单名称","min-width":"180"}),t(f,{prop:"icon",label:"图标",width:"80"},{default:n(({row:a})=>[a.icon?(d(),u(r,{key:0},{default:n(()=>[(d(),u(ae(a.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:n(({row:a})=>{var V;return[t(D,{type:(V=w[a.menuType])==null?void 0:V.type},{default:n(()=>{var $;return[i(q(($=w[a.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:n(({row:a})=>[t(D,{type:a.status===1?"success":"danger"},{default:n(()=>[i(q(a.status===1?"显示":"隐藏"),1)]),_:2},1032,["type"])]),_:1}),t(f,{label:"操作",width:"200",fixed:"right"},{default:n(({row:a})=>[T((d(),u(m,{link:"",type:"primary",onClick:V=>j(a)},{default:n(()=>[...l[15]||(l[15]=[i("编辑",-1)])]),_:1},8,["onClick"])),[[k,"system:menu:edit"]]),T((d(),u(m,{link:"",type:"primary",onClick:V=>L(a)},{default:n(()=>[...l[16]||(l[16]=[i("添加子菜单",-1)])]),_:1},8,["onClick"])),[[k,"system:menu:add"]]),T((d(),u(m,{link:"",type:"danger",onClick:V=>H(a)},{default:n(()=>[...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]=a=>c.value=a),title:F.value,width:"550px",onClose:h},{footer:n(()=>[t(m,{onClick:l[11]||(l[11]=a=>c.value=!1)},{default:n(()=>[...l[23]||(l[23]=[i("取消",-1)])]),_:1}),t(m,{type:"primary",onClick:W,loading:I.value},{default:n(()=>[...l[24]||(l[24]=[i("确定",-1)])]),_:1},8,["loading"])]),default:n(()=>[t(X,{ref_key:"formRef",ref:U,model:e,rules:z,"label-width":"100px"},{default:n(()=>[t(p,{label:"上级菜单",prop:"parentId"},{default:n(()=>[t(P,{modelValue:e.parentId,"onUpdate:modelValue":l[0]||(l[0]=a=>e.parentId=a),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:n(()=>[t(M,{modelValue:e.menuType,"onUpdate:modelValue":l[1]||(l[1]=a=>e.menuType=a)},{default:n(()=>[t(g,{value:1},{default:n(()=>[...l[18]||(l[18]=[i("目录",-1)])]),_:1}),t(g,{value:2},{default:n(()=>[...l[19]||(l[19]=[i("菜单",-1)])]),_:1}),t(g,{value:3},{default:n(()=>[...l[20]||(l[20]=[i("按钮",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),t(p,{label:"菜单名称",prop:"name"},{default:n(()=>[t(b,{modelValue:e.name,"onUpdate:modelValue":l[2]||(l[2]=a=>e.name=a),placeholder:"请输入菜单名称"},null,8,["modelValue"])]),_:1}),e.menuType!==3?(d(),u(p,{key:0,label:"图标",prop:"icon"},{default:n(()=>[t(b,{modelValue:e.icon,"onUpdate:modelValue":l[3]||(l[3]=a=>e.icon=a),placeholder:"请输入图标名称,如 Setting"},null,8,["modelValue"])]),_:1})):y("",!0),e.menuType===2?(d(),u(p,{key:1,label:"路由路径",prop:"path"},{default:n(()=>[t(b,{modelValue:e.path,"onUpdate:modelValue":l[4]||(l[4]=a=>e.path=a),placeholder:"请输入路由路径,如 /system/menu"},null,8,["modelValue"])]),_:1})):y("",!0),e.menuType===2?(d(),u(p,{key:2,label:"组件路径",prop:"component"},{default:n(()=>[t(b,{modelValue:e.component,"onUpdate:modelValue":l[5]||(l[5]=a=>e.component=a),placeholder:"请输入组件路径,如 system/menu/index"},null,8,["modelValue"])]),_:1})):y("",!0),e.menuType===3?(d(),u(p,{key:3,label:"权限标识",prop:"permission"},{default:n(()=>[t(b,{modelValue:e.permission,"onUpdate:modelValue":l[6]||(l[6]=a=>e.permission=a),placeholder:"请输入权限标识,如 menu:create"},null,8,["modelValue"])]),_:1})):y("",!0),t(p,{label:"排序",prop:"sortOrder"},{default:n(()=>[t(Q,{modelValue:e.sortOrder,"onUpdate:modelValue":l[7]||(l[7]=a=>e.sortOrder=a),min:0,max:9999},null,8,["modelValue"])]),_:1}),t(p,{label:"状态",prop:"status"},{default:n(()=>[t(M,{modelValue:e.status,"onUpdate:modelValue":l[8]||(l[8]=a=>e.status=a)},{default:n(()=>[t(g,{value:1},{default:n(()=>[...l[21]||(l[21]=[i("显示",-1)])]),_:1}),t(g,{value:0},{default:n(()=>[...l[22]||(l[22]=[i("隐藏",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),e.menuType===2?(d(),u(p,{key:4,label:"是否外链",prop:"isExternal"},{default:n(()=>[t(B,{modelValue:e.isExternal,"onUpdate:modelValue":l[9]||(l[9]=a=>e.isExternal=a)},null,8,["modelValue"])]),_:1})):y("",!0),e.menuType===2?(d(),u(p,{key:5,label:"是否缓存",prop:"isCache"},{default:n(()=>[t(B,{modelValue:e.isCache,"onUpdate:modelValue":l[10]||(l[10]=a=>e.isCache=a)},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-Dohy6c1V.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Dw6nUBUg.js similarity index 97% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Dohy6c1V.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Dw6nUBUg.js index 7c7ca3e..a22aa12 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Dohy6c1V.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Dw6nUBUg.js @@ -1 +1 @@ -import{d as ne,r as s,v as S,a as oe,o as de,g as d,B as A,c as se,k as m,e as t,w as l,C as v,z as _,t as r,x as re,b as F,l as ue,D as ie,E as V,W as pe,an as me,_ as ce}from"./index-BsIaGxbR.js";import{g as fe,u as ve,c as _e,d as ye,a as ge,b as be}from"./department-BA59MD1G.js";const ke={class:"page-container"},Ve={class:"card-header"},Ce=ne({__name:"index",setup(xe){const C=s(!1),k=s([]),p=s(!1),c=s(!1),N=S(()=>c.value?"编辑部门":"新增部门"),x=s(),D=s(!1),a=oe({id:0,parentId:0,name:"",code:"",sortOrder:0,status:1}),q={name:[{required:!0,message:"请输入部门名称",trigger:"blur"}],code:[{required:!0,message:"请输入部门编码",trigger:"blur"},{pattern:/^[a-z0-9_]+$/,message:"只能包含小写字母、数字和下划线",trigger:"blur"}]},z=S(()=>{if(!c.value)return[{id:0,name:"顶级部门",children:k.value}];const n=e=>e.filter(i=>i.id!==a.id).map(i=>({...i,children:n(i.children||[])}));return[{id:0,name:"顶级部门",children:n(k.value)}]}),y=s(!1),O=s(),w=s([]),$=s([]),U=s(0),I=s(!1),T=async()=>{C.value=!0;try{const n=await fe();k.value=n.data}finally{C.value=!1}},M=()=>{var n;a.id=0,a.parentId=0,a.name="",a.code="",a.sortOrder=0,a.status=1,(n=x.value)==null||n.resetFields()},L=()=>{c.value=!1,M(),p.value=!0},K=n=>{c.value=!1,M(),a.parentId=n.id,p.value=!0},W=n=>{c.value=!0,a.id=n.id,a.parentId=n.parentId,a.name=n.name,a.code=n.code,a.sortOrder=n.sortOrder,a.status=n.status,p.value=!0},j=async()=>{var e;if(await((e=x.value)==null?void 0:e.validate())){D.value=!0;try{c.value?(await ve(a.id,a),V.success("更新成功")):(await _e(a),V.success("创建成功")),p.value=!1,T()}finally{D.value=!1}}},G=async n=>{try{await pe.confirm(`确定要删除部门 "${n.name}" 吗?删除后其子部门也会被删除。`,"提示",{type:"warning"}),await ye(n.id),V.success("删除成功"),T()}catch{}},H=async n=>{if(U.value=n.id,w.value.length===0){const i=await me();w.value=i.data}const e=await ge(n.id);$.value=e.data,y.value=!0},J=async()=>{var n;I.value=!0;try{const e=(n=O.value)==null?void 0:n.getCheckedKeys(!1);await be({departmentId:U.value,menuIds:e}),V.success("分配成功"),y.value=!1}finally{I.value=!1}};return de(()=>{T()}),(n,e)=>{const i=d("el-icon"),u=d("el-button"),f=d("el-table-column"),P=d("el-tag"),Q=d("el-table"),X=d("el-card"),Y=d("el-tree-select"),g=d("el-form-item"),B=d("el-input"),Z=d("el-input-number"),E=d("el-radio"),ee=d("el-radio-group"),te=d("el-form"),R=d("el-dialog"),le=d("el-tree"),b=A("permission"),ae=A("loading");return m(),se("div",ke,[t(X,null,{header:l(()=>[F("div",Ve,[e[10]||(e[10]=F("span",null,"部门管理",-1)),v((m(),_(u,{type:"primary",onClick:L},{default:l(()=>[t(i,null,{default:l(()=>[t(ue(ie))]),_:1}),e[9]||(e[9]=r("新增部门 ",-1))]),_:1})),[[b,"system:dept:add"]])])]),default:l(()=>[v((m(),_(Q,{data:k.value,"row-key":"id","tree-props":{children:"children"}},{default:l(()=>[t(f,{prop:"name",label:"部门名称","min-width":"200"}),t(f,{prop:"code",label:"部门编码","min-width":"120"}),t(f,{prop:"sortOrder",label:"排序",width:"80"}),t(f,{prop:"status",label:"状态",width:"80"},{default:l(({row:o})=>[t(P,{type:o.status===1?"success":"danger"},{default:l(()=>[r(re(o.status===1?"启用":"禁用"),1)]),_:2},1032,["type"])]),_:1}),t(f,{prop:"createdAt",label:"创建时间",width:"170"}),t(f,{label:"操作",width:"250",fixed:"right"},{default:l(({row:o})=>[v((m(),_(u,{link:"",type:"primary",onClick:h=>W(o)},{default:l(()=>[...e[11]||(e[11]=[r("编辑",-1)])]),_:1},8,["onClick"])),[[b,"system:dept:edit"]]),v((m(),_(u,{link:"",type:"primary",onClick:h=>K(o)},{default:l(()=>[...e[12]||(e[12]=[r("添加子部门",-1)])]),_:1},8,["onClick"])),[[b,"system:dept:add"]]),v((m(),_(u,{link:"",type:"primary",onClick:h=>H(o)},{default:l(()=>[...e[13]||(e[13]=[r("分配菜单",-1)])]),_:1},8,["onClick"])),[[b,"system:dept:edit"]]),v((m(),_(u,{link:"",type:"danger",onClick:h=>G(o)},{default:l(()=>[...e[14]||(e[14]=[r("删除",-1)])]),_:1},8,["onClick"])),[[b,"system:dept:delete"]])]),_:1})]),_:1},8,["data"])),[[ae,C.value]])]),_:1}),t(R,{modelValue:p.value,"onUpdate:modelValue":e[6]||(e[6]=o=>p.value=o),title:N.value,width:"500px",onClose:M,"destroy-on-close":!0},{footer:l(()=>[t(u,{onClick:e[5]||(e[5]=o=>p.value=!1)},{default:l(()=>[...e[17]||(e[17]=[r("取消",-1)])]),_:1}),t(u,{type:"primary",onClick:j,loading:D.value},{default:l(()=>[...e[18]||(e[18]=[r("确定",-1)])]),_:1},8,["loading"])]),default:l(()=>[t(te,{ref_key:"formRef",ref:x,model:a,rules:q,"label-width":"80px"},{default:l(()=>[t(g,{label:"上级部门",prop:"parentId"},{default:l(()=>[t(Y,{modelValue:a.parentId,"onUpdate:modelValue":e[0]||(e[0]=o=>a.parentId=o),data:z.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(g,{label:"部门名称",prop:"name"},{default:l(()=>[t(B,{modelValue:a.name,"onUpdate:modelValue":e[1]||(e[1]=o=>a.name=o),placeholder:"请输入部门名称"},null,8,["modelValue"])]),_:1}),t(g,{label:"部门编码",prop:"code"},{default:l(()=>[t(B,{modelValue:a.code,"onUpdate:modelValue":e[2]||(e[2]=o=>a.code=o),placeholder:"请输入部门编码"},null,8,["modelValue"])]),_:1}),t(g,{label:"排序",prop:"sortOrder"},{default:l(()=>[t(Z,{modelValue:a.sortOrder,"onUpdate:modelValue":e[3]||(e[3]=o=>a.sortOrder=o),min:0,max:9999},null,8,["modelValue"])]),_:1}),t(g,{label:"状态",prop:"status"},{default:l(()=>[t(ee,{modelValue:a.status,"onUpdate:modelValue":e[4]||(e[4]=o=>a.status=o)},{default:l(()=>[t(E,{value:1},{default:l(()=>[...e[15]||(e[15]=[r("启用",-1)])]),_:1}),t(E,{value:0},{default:l(()=>[...e[16]||(e[16]=[r("禁用",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"]),t(R,{modelValue:y.value,"onUpdate:modelValue":e[8]||(e[8]=o=>y.value=o),title:"分配部门菜单",width:"500px"},{footer:l(()=>[t(u,{onClick:e[7]||(e[7]=o=>y.value=!1)},{default:l(()=>[...e[19]||(e[19]=[r("取消",-1)])]),_:1}),t(u,{type:"primary",onClick:J,loading:I.value},{default:l(()=>[...e[20]||(e[20]=[r("确定",-1)])]),_:1},8,["loading"])]),default:l(()=>[t(le,{ref_key:"menuTreeRef",ref:O,data:w.value,props:{label:"name",children:"children"},"show-checkbox":"","node-key":"id","default-checked-keys":$.value,"check-strictly":!0},null,8,["data","default-checked-keys"])]),_:1},8,["modelValue"])])}}}),Ie=ce(Ce,[["__scopeId","data-v-19a5d1c0"]]);export{Ie as default}; +import{d as ne,r as s,v as S,a as oe,o as de,g as d,B as A,c as se,k as m,e as t,w as l,C as v,z as _,t as r,x as re,b as F,l as ue,D as ie,E as V,W as pe,an as me,_ as ce}from"./index-CJcwRKyx.js";import{g as fe,u as ve,c as _e,d as ye,a as ge,b as be}from"./department-CGrMTjp9.js";const ke={class:"page-container"},Ve={class:"card-header"},Ce=ne({__name:"index",setup(xe){const C=s(!1),k=s([]),p=s(!1),c=s(!1),N=S(()=>c.value?"编辑部门":"新增部门"),x=s(),D=s(!1),a=oe({id:0,parentId:0,name:"",code:"",sortOrder:0,status:1}),q={name:[{required:!0,message:"请输入部门名称",trigger:"blur"}],code:[{required:!0,message:"请输入部门编码",trigger:"blur"},{pattern:/^[a-z0-9_]+$/,message:"只能包含小写字母、数字和下划线",trigger:"blur"}]},z=S(()=>{if(!c.value)return[{id:0,name:"顶级部门",children:k.value}];const n=e=>e.filter(i=>i.id!==a.id).map(i=>({...i,children:n(i.children||[])}));return[{id:0,name:"顶级部门",children:n(k.value)}]}),y=s(!1),O=s(),w=s([]),$=s([]),U=s(0),I=s(!1),T=async()=>{C.value=!0;try{const n=await fe();k.value=n.data}finally{C.value=!1}},M=()=>{var n;a.id=0,a.parentId=0,a.name="",a.code="",a.sortOrder=0,a.status=1,(n=x.value)==null||n.resetFields()},L=()=>{c.value=!1,M(),p.value=!0},K=n=>{c.value=!1,M(),a.parentId=n.id,p.value=!0},W=n=>{c.value=!0,a.id=n.id,a.parentId=n.parentId,a.name=n.name,a.code=n.code,a.sortOrder=n.sortOrder,a.status=n.status,p.value=!0},j=async()=>{var e;if(await((e=x.value)==null?void 0:e.validate())){D.value=!0;try{c.value?(await ve(a.id,a),V.success("更新成功")):(await _e(a),V.success("创建成功")),p.value=!1,T()}finally{D.value=!1}}},G=async n=>{try{await pe.confirm(`确定要删除部门 "${n.name}" 吗?删除后其子部门也会被删除。`,"提示",{type:"warning"}),await ye(n.id),V.success("删除成功"),T()}catch{}},H=async n=>{if(U.value=n.id,w.value.length===0){const i=await me();w.value=i.data}const e=await ge(n.id);$.value=e.data,y.value=!0},J=async()=>{var n;I.value=!0;try{const e=(n=O.value)==null?void 0:n.getCheckedKeys(!1);await be({departmentId:U.value,menuIds:e}),V.success("分配成功"),y.value=!1}finally{I.value=!1}};return de(()=>{T()}),(n,e)=>{const i=d("el-icon"),u=d("el-button"),f=d("el-table-column"),P=d("el-tag"),Q=d("el-table"),X=d("el-card"),Y=d("el-tree-select"),g=d("el-form-item"),B=d("el-input"),Z=d("el-input-number"),E=d("el-radio"),ee=d("el-radio-group"),te=d("el-form"),R=d("el-dialog"),le=d("el-tree"),b=A("permission"),ae=A("loading");return m(),se("div",ke,[t(X,null,{header:l(()=>[F("div",Ve,[e[10]||(e[10]=F("span",null,"部门管理",-1)),v((m(),_(u,{type:"primary",onClick:L},{default:l(()=>[t(i,null,{default:l(()=>[t(ue(ie))]),_:1}),e[9]||(e[9]=r("新增部门 ",-1))]),_:1})),[[b,"system:dept:add"]])])]),default:l(()=>[v((m(),_(Q,{data:k.value,"row-key":"id","tree-props":{children:"children"}},{default:l(()=>[t(f,{prop:"name",label:"部门名称","min-width":"200"}),t(f,{prop:"code",label:"部门编码","min-width":"120"}),t(f,{prop:"sortOrder",label:"排序",width:"80"}),t(f,{prop:"status",label:"状态",width:"80"},{default:l(({row:o})=>[t(P,{type:o.status===1?"success":"danger"},{default:l(()=>[r(re(o.status===1?"启用":"禁用"),1)]),_:2},1032,["type"])]),_:1}),t(f,{prop:"createdAt",label:"创建时间",width:"170"}),t(f,{label:"操作",width:"250",fixed:"right"},{default:l(({row:o})=>[v((m(),_(u,{link:"",type:"primary",onClick:h=>W(o)},{default:l(()=>[...e[11]||(e[11]=[r("编辑",-1)])]),_:1},8,["onClick"])),[[b,"system:dept:edit"]]),v((m(),_(u,{link:"",type:"primary",onClick:h=>K(o)},{default:l(()=>[...e[12]||(e[12]=[r("添加子部门",-1)])]),_:1},8,["onClick"])),[[b,"system:dept:add"]]),v((m(),_(u,{link:"",type:"primary",onClick:h=>H(o)},{default:l(()=>[...e[13]||(e[13]=[r("分配菜单",-1)])]),_:1},8,["onClick"])),[[b,"system:dept:edit"]]),v((m(),_(u,{link:"",type:"danger",onClick:h=>G(o)},{default:l(()=>[...e[14]||(e[14]=[r("删除",-1)])]),_:1},8,["onClick"])),[[b,"system:dept:delete"]])]),_:1})]),_:1},8,["data"])),[[ae,C.value]])]),_:1}),t(R,{modelValue:p.value,"onUpdate:modelValue":e[6]||(e[6]=o=>p.value=o),title:N.value,width:"500px",onClose:M,"destroy-on-close":!0},{footer:l(()=>[t(u,{onClick:e[5]||(e[5]=o=>p.value=!1)},{default:l(()=>[...e[17]||(e[17]=[r("取消",-1)])]),_:1}),t(u,{type:"primary",onClick:j,loading:D.value},{default:l(()=>[...e[18]||(e[18]=[r("确定",-1)])]),_:1},8,["loading"])]),default:l(()=>[t(te,{ref_key:"formRef",ref:x,model:a,rules:q,"label-width":"80px"},{default:l(()=>[t(g,{label:"上级部门",prop:"parentId"},{default:l(()=>[t(Y,{modelValue:a.parentId,"onUpdate:modelValue":e[0]||(e[0]=o=>a.parentId=o),data:z.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(g,{label:"部门名称",prop:"name"},{default:l(()=>[t(B,{modelValue:a.name,"onUpdate:modelValue":e[1]||(e[1]=o=>a.name=o),placeholder:"请输入部门名称"},null,8,["modelValue"])]),_:1}),t(g,{label:"部门编码",prop:"code"},{default:l(()=>[t(B,{modelValue:a.code,"onUpdate:modelValue":e[2]||(e[2]=o=>a.code=o),placeholder:"请输入部门编码"},null,8,["modelValue"])]),_:1}),t(g,{label:"排序",prop:"sortOrder"},{default:l(()=>[t(Z,{modelValue:a.sortOrder,"onUpdate:modelValue":e[3]||(e[3]=o=>a.sortOrder=o),min:0,max:9999},null,8,["modelValue"])]),_:1}),t(g,{label:"状态",prop:"status"},{default:l(()=>[t(ee,{modelValue:a.status,"onUpdate:modelValue":e[4]||(e[4]=o=>a.status=o)},{default:l(()=>[t(E,{value:1},{default:l(()=>[...e[15]||(e[15]=[r("启用",-1)])]),_:1}),t(E,{value:0},{default:l(()=>[...e[16]||(e[16]=[r("禁用",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"]),t(R,{modelValue:y.value,"onUpdate:modelValue":e[8]||(e[8]=o=>y.value=o),title:"分配部门菜单",width:"500px"},{footer:l(()=>[t(u,{onClick:e[7]||(e[7]=o=>y.value=!1)},{default:l(()=>[...e[19]||(e[19]=[r("取消",-1)])]),_:1}),t(u,{type:"primary",onClick:J,loading:I.value},{default:l(()=>[...e[20]||(e[20]=[r("确定",-1)])]),_:1},8,["loading"])]),default:l(()=>[t(le,{ref_key:"menuTreeRef",ref:O,data:w.value,props:{label:"name",children:"children"},"show-checkbox":"","node-key":"id","default-checked-keys":$.value,"check-strictly":!0},null,8,["data","default-checked-keys"])]),_:1},8,["modelValue"])])}}}),Ie=ce(Ce,[["__scopeId","data-v-19a5d1c0"]]);export{Ie as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CYWJ-Th2.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Dy3V-uaE.js similarity index 99% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CYWJ-Th2.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Dy3V-uaE.js index 3fefd4c..d1da79f 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-CYWJ-Th2.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Dy3V-uaE.js @@ -1 +1 @@ -import{R as S,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,X as Te,G as I,F as Ne,Y as Ee,E as v,_ as we}from"./index-BsIaGxbR.js";function he(b){return S({url:"/admin/order/getList",method:"get",params:b})}function ve(b){return S({url:"/admin/order/getDetail",method:"get",params:{id:b}})}function xe(b){return S({url:"/admin/order/refund",method:"post",data:b})}function Ve(b){return S({url:"/admin/order/export",method:"get",params:b,responseType:"blob"})}const Ie={class:"order-container"},Se={class:"header-content"},Re={class:"header-right"},Ae={class:"user-info"},Ce={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"},Ye={class:"detail-section"},Be={class:"detail-section"},Ge={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"},Xe={class:"money-text pay-amount"},Qe={class:"form-tip"},Ze=_e({__name:"index",setup(b){const x={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(),R=k(),A=k(null),o=$({pageIndex: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}),X={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 x.ASSESSMENT:return"primary";case x.PLANNER:return"success";default:return"primary"}}function O(l){switch(l){case x.ASSESSMENT:return"测评订单";case x.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 Y(l){switch(l){case H.WECHAT:return"微信支付";default:return"未知"}}function E(l){return l==null?"0.00":l.toFixed(2)}function Q(l){return l===c.PAID||l===c.COMPLETED}async function w(){var l,e;a.loading=!0;try{const u={pageIndex:o.pageIndex,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 C(){o.pageIndex=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,A.value=null,o.pageIndex=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.pageIndex=1,w()}function re(l){o.pageIndex=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(R.value){try{await R.value.validate()}catch{return}a.refundFormLoading=!0;try{const l=await xe({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={pageIndex: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 Ve(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"),B=f("el-form"),y=f("el-table-column"),V=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"),G=q("loading"),ce=q("permission");return g(),T("div",Ie,[t(D,{class:"page-header"},{default:r(()=>[s("div",Se,[e[15]||(e[15]=s("div",{class:"header-left"},[s("h2",{class:"page-title"},"订单管理"),s("span",{class:"page-description"},"管理订单列表,支持搜索、查看详情、退款处理、导出")],-1)),s("div",Re,[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(B,{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(C,["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(C,["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:A.value,"onUpdate:modelValue":e[5]||(e[5]=n=>A.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:C},{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",Ae,[s("div",Ce,d(n.userNickname),1),s("div",Le,d(n.userPhone),1)])]),_:1}),t(y,{label:"订单类型",width:"100",align:"center"},{default:r(({row:n})=>[t(V,{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||Y(n.payType)),1)):(g(),T("span",Pe,"-"))]),_:1}),t(y,{label:"状态",width:"100",align:"center"},{default:r(({row:n})=>[t(V,{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.pageIndex,"onUpdate:currentPage":e[6]||(e[6]=n=>o.pageIndex=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})),[[G,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(V,{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(V,{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",Ye,[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",Be,[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",Ge,[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?Y(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})])):I("",!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})])):I("",!0),Q(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"]])])):I("",!0)],64)):I("",!0)])),[[G,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(B,{ref_key:"refundFormRef",ref:R,model:a.refundFormData,rules:X,"label-width":"100px"},{default:r(()=>[t(_,{label:"订单号"},{default:r(()=>[s("span",null,d(a.refundFormData.orderNo),1)]),_:1}),t(_,{label:"实付金额"},{default:r(()=>[s("span",Xe,"¥"+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",Qe,"最大可退 ¥"+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-85caed98"]]);export{at as default}; +import{R as S,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,X as Te,G as I,F as Ne,Y as Ee,E as v,_ as we}from"./index-CJcwRKyx.js";function he(b){return S({url:"/admin/order/getList",method:"get",params:b})}function ve(b){return S({url:"/admin/order/getDetail",method:"get",params:{id:b}})}function xe(b){return S({url:"/admin/order/refund",method:"post",data:b})}function Ve(b){return S({url:"/admin/order/export",method:"get",params:b,responseType:"blob"})}const Ie={class:"order-container"},Se={class:"header-content"},Re={class:"header-right"},Ae={class:"user-info"},Ce={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"},Ye={class:"detail-section"},Be={class:"detail-section"},Ge={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"},Xe={class:"money-text pay-amount"},Qe={class:"form-tip"},Ze=_e({__name:"index",setup(b){const x={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(),R=k(),A=k(null),o=$({pageIndex: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}),X={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 x.ASSESSMENT:return"primary";case x.PLANNER:return"success";default:return"primary"}}function O(l){switch(l){case x.ASSESSMENT:return"测评订单";case x.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 Y(l){switch(l){case H.WECHAT:return"微信支付";default:return"未知"}}function E(l){return l==null?"0.00":l.toFixed(2)}function Q(l){return l===c.PAID||l===c.COMPLETED}async function w(){var l,e;a.loading=!0;try{const u={pageIndex:o.pageIndex,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 C(){o.pageIndex=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,A.value=null,o.pageIndex=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.pageIndex=1,w()}function re(l){o.pageIndex=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(R.value){try{await R.value.validate()}catch{return}a.refundFormLoading=!0;try{const l=await xe({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={pageIndex: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 Ve(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"),B=f("el-form"),y=f("el-table-column"),V=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"),G=q("loading"),ce=q("permission");return g(),T("div",Ie,[t(D,{class:"page-header"},{default:r(()=>[s("div",Se,[e[15]||(e[15]=s("div",{class:"header-left"},[s("h2",{class:"page-title"},"订单管理"),s("span",{class:"page-description"},"管理订单列表,支持搜索、查看详情、退款处理、导出")],-1)),s("div",Re,[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(B,{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(C,["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(C,["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:A.value,"onUpdate:modelValue":e[5]||(e[5]=n=>A.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:C},{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",Ae,[s("div",Ce,d(n.userNickname),1),s("div",Le,d(n.userPhone),1)])]),_:1}),t(y,{label:"订单类型",width:"100",align:"center"},{default:r(({row:n})=>[t(V,{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||Y(n.payType)),1)):(g(),T("span",Pe,"-"))]),_:1}),t(y,{label:"状态",width:"100",align:"center"},{default:r(({row:n})=>[t(V,{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.pageIndex,"onUpdate:currentPage":e[6]||(e[6]=n=>o.pageIndex=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})),[[G,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(V,{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(V,{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",Ye,[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",Be,[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",Ge,[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?Y(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})])):I("",!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})])):I("",!0),Q(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"]])])):I("",!0)],64)):I("",!0)])),[[G,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(B,{ref_key:"refundFormRef",ref:R,model:a.refundFormData,rules:X,"label-width":"100px"},{default:r(()=>[t(_,{label:"订单号"},{default:r(()=>[s("span",null,d(a.refundFormData.orderNo),1)]),_:1}),t(_,{label:"实付金额"},{default:r(()=>[s("span",Xe,"¥"+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",Qe,"最大可退 ¥"+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-85caed98"]]);export{at as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DBfUyTG1.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-PKkdanWm.js similarity index 97% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DBfUyTG1.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-PKkdanWm.js index 4cd1764..4ca03dd 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DBfUyTG1.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-PKkdanWm.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-BsIaGxbR.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-CJcwRKyx.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-BFBQYkSb.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-U2Ndf4KH.js similarity index 98% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BFBQYkSb.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-U2Ndf4KH.js index 8adef33..7bcdca6 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-BFBQYkSb.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-U2Ndf4KH.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,W as pe,_ as fe}from"./index-BsIaGxbR.js";import{g as _e,u as ve,c as ye,d as be}from"./permission-DVpyn3g_.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)},W=()=>{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()},H=()=>{y.value=!1,F(),_.value=!0},J=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},Q=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=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:H},{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:W},{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:S})=>[V((d(),f(u,{link:"",type:"primary",onClick:se=>J(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:Q,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}; +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,W as pe,_ as fe}from"./index-CJcwRKyx.js";import{g as _e,u as ve,c as ye,d as be}from"./permission-CpmDm0Md.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)},W=()=>{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()},H=()=>{y.value=!1,F(),_.value=!0},J=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},Q=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=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:H},{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:W},{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:S})=>[V((d(),f(u,{link:"",type:"primary",onClick:se=>J(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:Q,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-WS-yoiJc.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-WS-yoiJc.js deleted file mode 100644 index 5fbd1fb..0000000 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-WS-yoiJc.js +++ /dev/null @@ -1 +0,0 @@ -import{R as V,d as ce,r as F,a as Y,o as me,g as c,B as pe,c as O,k as w,e as t,C as j,w as l,b as i,t as m,l as f,N as fe,f as B,J as M,L as _e,s as ge,z as A,m as P,x as u,X as ve,H as be,G as Le,F as he,E as L,_ as De}from"./index-BsIaGxbR.js";function we(_){return V({url:"/admin/user/getList",method:"get",params:_})}function ye(_){return V({url:"/admin/user/getDetail",method:"get",params:{id:_}})}function Ve(_){return V({url:"/admin/user/updateStatus",method:"post",data:_})}function Te(_){return V({url:"/admin/user/updateLevel",method:"post",data:_})}function ke(_){return V({url:"/admin/user/export",method:"get",params:_,responseType:"blob"})}const xe={class:"user-container"},Se={class:"header-content"},Ue={class:"header-right"},Ce={class:"balance-text"},Ee={class:"pagination-wrapper"},Ie={class:"user-detail"},Re={class:"detail-section"},ze={class:"user-profile"},Ne={class:"profile-info"},Fe={class:"nickname"},Oe={class:"uid"},Be={class:"detail-section"},Me={class:"detail-section"},Ae={class:"money-text"},Pe={class:"money-text"},$e={class:"money-text"},Ke={class:"detail-section"},Ye={class:"stats-grid"},je={class:"stat-item"},qe={class:"stat-value"},Ge={class:"stat-item"},He={class:"stat-value"},Je={class:"stat-item"},Xe={class:"stat-value"},Qe=ce({__name:"index",setup(_){const h={NORMAL:0,VIP:1,DISTRIBUTOR:2},T={DISABLED:0,NORMAL:1},q=[{text:"最近一周",value:()=>{const n=new Date,e=new Date;return e.setTime(e.getTime()-3600*1e3*24*7),[e,n]}},{text:"最近一个月",value:()=>{const n=new Date,e=new Date;return e.setTime(e.getTime()-3600*1e3*24*30),[e,n]}},{text:"最近三个月",value:()=>{const n=new Date,e=new Date;return e.setTime(e.getTime()-3600*1e3*24*90),[e,n]}}],G=F(),U=F(),C=F(null),a=Y({pageIndex:1,pageSize:10,uid:"",phone:"",nickname:"",userLevel:void 0,status:void 0,createTimeStart:void 0,createTimeEnd:void 0}),s=Y({loading:!1,tableData:[],total:0,drawerVisible:!1,detailLoading:!1,userDetail:null,levelDialogVisible:!1,levelFormData:{id:0,currentLevel:0,userLevel:""},levelFormLoading:!1,exportLoading:!1}),H={userLevel:[{required:!0,message:"请选择新等级",trigger:"change"}]};function E(n){switch(n){case h.NORMAL:return"info";case h.VIP:return"success";case h.DISTRIBUTOR:return"warning";default:return"info"}}function I(n){switch(n){case h.NORMAL:return"普通用户";case h.VIP:return"VIP";case h.DISTRIBUTOR:return"分销商";default:return"未知"}}function k(n){return n==null?"0.00":n.toFixed(2)}async function D(){var n,e;s.loading=!0;try{const r={pageIndex:a.pageIndex,pageSize:a.pageSize};a.uid&&(r.uid=a.uid),a.phone&&(r.phone=a.phone),a.nickname&&(r.nickname=a.nickname),a.userLevel!==void 0&&a.userLevel!==""&&(r.userLevel=Number(a.userLevel)),a.status!==void 0&&a.status!==""&&(r.status=Number(a.status)),a.createTimeStart&&(r.createTimeStart=a.createTimeStart),a.createTimeEnd&&(r.createTimeEnd=a.createTimeEnd);const d=await we(r);if(d.code===0)s.tableData=(((n=d.data)==null?void 0:n.list)||[]).map(p=>({...p,statusLoading:!1})),s.total=((e=d.data)==null?void 0:e.total)||0;else throw new Error(d.message||"获取用户列表失败")}catch(r){const d=r instanceof Error?r.message:"获取用户列表失败";L.error(d)}finally{s.loading=!1}}async function J(n){s.detailLoading=!0;try{const e=await ye(n);if(e.code===0)s.userDetail=e.data;else throw new Error(e.message||"获取用户详情失败")}catch(e){const r=e instanceof Error?e.message:"获取用户详情失败";L.error(r)}finally{s.detailLoading=!1}}function x(){a.pageIndex=1,D()}function X(){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.pageIndex=1,D()}function Q(n){n?(a.createTimeStart=n[0],a.createTimeEnd=n[1]):(a.createTimeStart=void 0,a.createTimeEnd=void 0)}function W(n){a.pageSize=n,a.pageIndex=1,D()}function Z(n){a.pageIndex=n,D()}function ee(n){s.drawerVisible=!0,s.userDetail=null,J(n.id)}async function te(n,e){n.statusLoading=!0;try{const r=await Ve({id:n.id,status:e});if(r.code===0)L.success(e===T.NORMAL?"已启用":"已禁用");else throw n.status=e===T.NORMAL?T.DISABLED:T.NORMAL,new Error(r.message||"状态更新失败")}catch(r){const d=r instanceof Error?r.message:"状态更新失败";L.error(d)}finally{n.statusLoading=!1}}function ae(n){s.levelFormData={id:n.id,currentLevel:n.userLevel,userLevel:""},s.levelDialogVisible=!0}async function le(){if(U.value){try{await U.value.validate()}catch{return}s.levelFormLoading=!0;try{const n=await Te({id:s.levelFormData.id,userLevel:Number(s.levelFormData.userLevel)});if(n.code===0)L.success("等级修改成功"),s.levelDialogVisible=!1,await D();else throw new Error(n.message||"等级修改失败")}catch(n){const e=n instanceof Error?n.message:"等级修改失败";L.error(e)}finally{s.levelFormLoading=!1}}}async function se(){s.exportLoading=!0;try{const n={pageIndex:1,pageSize:1e4};a.uid&&(n.uid=a.uid),a.phone&&(n.phone=a.phone),a.nickname&&(n.nickname=a.nickname),a.userLevel!==void 0&&a.userLevel!==""&&(n.userLevel=Number(a.userLevel)),a.status!==void 0&&a.status!==""&&(n.status=Number(a.status)),a.createTimeStart&&(n.createTimeStart=a.createTimeStart),a.createTimeEnd&&(n.createTimeEnd=a.createTimeEnd);const e=await ke(n),r=e.data instanceof Blob?e.data:new Blob([e.data]),d=window.URL.createObjectURL(r),p=document.createElement("a");p.href=d,p.download=`用户列表_${new Date().toISOString().slice(0,10)}.xlsx`,document.body.appendChild(p),p.click(),document.body.removeChild(p),window.URL.revokeObjectURL(d),L.success("导出成功")}catch(n){const e=n instanceof Error?n.message:"导出失败";L.error(e)}finally{s.exportLoading=!1}}return me(()=>{D()}),(n,e)=>{const r=c("el-icon"),d=c("el-button"),p=c("el-card"),R=c("el-input"),b=c("el-form-item"),ne=c("el-date-picker"),$=c("el-form"),g=c("el-table-column"),z=c("el-avatar"),S=c("el-tag"),oe=c("el-switch"),ie=c("el-table"),re=c("el-pagination"),v=c("el-descriptions-item"),N=c("el-descriptions"),de=c("el-drawer"),ue=c("el-dialog"),K=pe("loading");return w(),O("div",xe,[t(p,{class:"page-header"},{default:l(()=>[i("div",Se,[e[13]||(e[13]=i("div",{class:"header-left"},[i("h2",{class:"page-title"},"用户管理"),i("span",{class:"page-description"},"管理C端用户信息,支持搜索、查看详情、状态管理、等级修改、导出")],-1)),i("div",Ue,[t(d,{type:"success",onClick:se,loading:s.exportLoading},{default:l(()=>[t(r,null,{default:l(()=>[t(f(fe))]),_:1}),e[12]||(e[12]=m(" 导出Excel ",-1))]),_:1},8,["loading"])])])]),_:1}),t(p,{class:"search-card"},{default:l(()=>[t($,{model:a,inline:""},{default:l(()=>[t(b,{label:"UID"},{default:l(()=>[t(R,{modelValue:a.uid,"onUpdate:modelValue":e[0]||(e[0]=o=>a.uid=o),placeholder:"请输入UID",clearable:"",onKeyup:B(x,["enter"])},null,8,["modelValue"])]),_:1}),t(b,{label:"手机号"},{default:l(()=>[t(R,{modelValue:a.phone,"onUpdate:modelValue":e[1]||(e[1]=o=>a.phone=o),placeholder:"请输入手机号",clearable:"",onKeyup:B(x,["enter"])},null,8,["modelValue"])]),_:1}),t(b,{label:"昵称"},{default:l(()=>[t(R,{modelValue:a.nickname,"onUpdate:modelValue":e[2]||(e[2]=o=>a.nickname=o),placeholder:"请输入昵称",clearable:"",onKeyup:B(x,["enter"])},null,8,["modelValue"])]),_:1}),t(b,{label:"用户等级"},{default:l(()=>[t(f(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(f(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(ne,{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:q,onChange:Q},null,8,["modelValue"])]),_:1}),t(b,null,{default:l(()=>[t(d,{type:"primary",onClick:x},{default:l(()=>[t(r,null,{default:l(()=>[t(f(_e))]),_:1}),e[14]||(e[14]=m(" 搜索 ",-1))]),_:1}),t(d,{onClick:X},{default:l(()=>[t(r,null,{default:l(()=>[t(f(ge))]),_:1}),e[15]||(e[15]=m(" 重置 ",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),j((w(),A(p,{class:"table-card"},{default:l(()=>[t(ie,{ref_key:"tableRef",ref:G,data:s.tableData,"row-key":"id",stripe:""},{default:l(()=>[t(g,{prop:"uid",label:"UID",width:"120","show-overflow-tooltip":""}),t(g,{prop:"phone",label:"手机号",width:"130","show-overflow-tooltip":""}),t(g,{prop:"nickname",label:"昵称","min-width":"120","show-overflow-tooltip":""}),t(g,{label:"头像",width:"80",align:"center"},{default:l(({row:o})=>[o.avatar?(w(),A(z,{key:0,src:o.avatar,size:40},{default:l(()=>[t(r,null,{default:l(()=>[t(f(P))]),_:1})]),_:1},8,["src"])):(w(),A(z,{key:1,size:40},{default:l(()=>[t(r,null,{default:l(()=>[t(f(P))]),_:1})]),_:1}))]),_:1}),t(g,{label:"用户等级",width:"100",align:"center"},{default:l(({row:o})=>[t(S,{type:E(o.userLevel)},{default:l(()=>[m(u(o.userLevelName||I(o.userLevel)),1)]),_:2},1032,["type"])]),_:1}),t(g,{prop:"balance",label:"余额",width:"100",align:"right"},{default:l(({row:o})=>[i("span",Ce,"¥"+u(k(o.balance)),1)]),_:1}),t(g,{label:"状态",width:"100",align:"center"},{default:l(({row:o})=>[t(oe,{modelValue:o.status,"onUpdate:modelValue":y=>o.status=y,"active-value":1,"inactive-value":0,loading:o.statusLoading,onChange:y=>te(o,y)},null,8,["modelValue","onUpdate:modelValue","loading","onChange"])]),_:1}),t(g,{prop:"createTime",label:"创建时间",width:"170",align:"center"}),t(g,{prop:"lastLoginTime",label:"最后登录时间",width:"170",align:"center"},{default:l(({row:o})=>[m(u(o.lastLoginTime||"-"),1)]),_:1}),t(g,{label:"操作",width:"150",fixed:"right",align:"center"},{default:l(({row:o})=>[t(d,{type:"primary",link:"",size:"small",onClick:y=>ee(o)},{default:l(()=>[t(r,null,{default:l(()=>[t(f(ve))]),_:1}),e[16]||(e[16]=m(" 详情 ",-1))]),_:1},8,["onClick"]),t(d,{type:"warning",link:"",size:"small",onClick:y=>ae(o)},{default:l(()=>[t(r,null,{default:l(()=>[t(f(be))]),_:1}),e[17]||(e[17]=m(" 等级 ",-1))]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"]),i("div",Ee,[t(re,{"current-page":a.pageIndex,"onUpdate:currentPage":e[6]||(e[6]=o=>a.pageIndex=o),"page-size":a.pageSize,"onUpdate:pageSize":e[7]||(e[7]=o=>a.pageSize=o),"page-sizes":[10,20,50,100],total:s.total,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:W,onCurrentChange:Z},null,8,["current-page","page-size","total"])])]),_:1})),[[K,s.loading]]),t(de,{modelValue:s.drawerVisible,"onUpdate:modelValue":e[8]||(e[8]=o=>s.drawerVisible=o),title:"用户详情",size:"500px","close-on-click-modal":!0},{default:l(()=>[j((w(),O("div",Ie,[s.userDetail?(w(),O(he,{key:0},[i("div",Re,[e[18]||(e[18]=i("h4",{class:"section-title"},"基本信息",-1)),i("div",ze,[t(z,{src:s.userDetail.avatar,size:80},{default:l(()=>[t(r,{size:40},{default:l(()=>[t(f(P))]),_:1})]),_:1},8,["src"]),i("div",Ne,[i("div",Fe,u(s.userDetail.nickname),1),i("div",Oe,"UID: "+u(s.userDetail.uid),1)])]),t(N,{column:1,border:""},{default:l(()=>[t(v,{label:"手机号"},{default:l(()=>[m(u(s.userDetail.phone),1)]),_:1}),t(v,{label:"用户等级"},{default:l(()=>[t(S,{type:E(s.userDetail.userLevel)},{default:l(()=>[m(u(s.userDetail.userLevelName||I(s.userDetail.userLevel)),1)]),_:1},8,["type"])]),_:1}),t(v,{label:"状态"},{default:l(()=>[t(S,{type:s.userDetail.status===1?"success":"danger"},{default:l(()=>[m(u(s.userDetail.statusName||(s.userDetail.status===1?"正常":"禁用")),1)]),_:1},8,["type"])]),_:1}),t(v,{label:"创建时间"},{default:l(()=>[m(u(s.userDetail.createTime),1)]),_:1}),t(v,{label:"最后登录"},{default:l(()=>[m(u(s.userDetail.lastLoginTime||"-"),1)]),_:1})]),_:1})]),i("div",Be,[e[19]||(e[19]=i("h4",{class:"section-title"},"上级用户",-1)),t(N,{column:1,border:""},{default:l(()=>[t(v,{label:"上级UID"},{default:l(()=>[m(u(s.userDetail.parentUserUid||"-"),1)]),_:1}),t(v,{label:"上级昵称"},{default:l(()=>[m(u(s.userDetail.parentUserNickname||"-"),1)]),_:1})]),_:1})]),i("div",Me,[e[20]||(e[20]=i("h4",{class:"section-title"},"财务信息",-1)),t(N,{column:1,border:""},{default:l(()=>[t(v,{label:"账户余额"},{default:l(()=>[i("span",Ae,"¥"+u(k(s.userDetail.balance)),1)]),_:1}),t(v,{label:"累计收入"},{default:l(()=>[i("span",Pe,"¥"+u(k(s.userDetail.totalIncome)),1)]),_:1}),t(v,{label:"已提现金额"},{default:l(()=>[i("span",$e,"¥"+u(k(s.userDetail.withdrawnAmount)),1)]),_:1})]),_:1})]),i("div",Ke,[e[24]||(e[24]=i("h4",{class:"section-title"},"统计信息",-1)),i("div",Ye,[i("div",je,[i("div",qe,u(s.userDetail.orderCount),1),e[21]||(e[21]=i("div",{class:"stat-label"},"订单数",-1))]),i("div",Ge,[i("div",He,u(s.userDetail.assessmentCount),1),e[22]||(e[22]=i("div",{class:"stat-label"},"测评数",-1))]),i("div",Je,[i("div",Xe,u(s.userDetail.inviteCount),1),e[23]||(e[23]=i("div",{class:"stat-label"},"邀请人数",-1))])])])],64)):Le("",!0)])),[[K,s.detailLoading]])]),_:1},8,["modelValue"]),t(ue,{modelValue:s.levelDialogVisible,"onUpdate:modelValue":e[11]||(e[11]=o=>s.levelDialogVisible=o),title:"修改用户等级",width:"400px","close-on-click-modal":!1},{footer:l(()=>[t(d,{onClick:e[10]||(e[10]=o=>s.levelDialogVisible=!1)},{default:l(()=>[...e[25]||(e[25]=[m("取消",-1)])]),_:1}),t(d,{type:"primary",loading:s.levelFormLoading,onClick:le},{default:l(()=>[...e[26]||(e[26]=[m(" 确定 ",-1)])]),_:1},8,["loading"])]),default:l(()=>[t($,{ref_key:"levelFormRef",ref:U,model:s.levelFormData,rules:H,"label-width":"80px"},{default:l(()=>[t(b,{label:"当前等级"},{default:l(()=>[t(S,{type:E(s.levelFormData.currentLevel)},{default:l(()=>[m(u(I(s.levelFormData.currentLevel)),1)]),_:1},8,["type"])]),_:1}),t(b,{label:"新等级",prop:"userLevel"},{default:l(()=>[t(f(M),{modelValue:s.levelFormData.userLevel,"onUpdate:modelValue":e[9]||(e[9]=o=>s.levelFormData.userLevel=o),type:"user_level",placeholder:"请选择新等级",style:{width:"100%"}},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"])])}}}),Ze=De(Qe,[["__scopeId","data-v-d9947622"]]);export{Ze as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Fkyf--j_.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-extwAH6t.js similarity index 98% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Fkyf--j_.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-extwAH6t.js index 45b23cd..1bb7937 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-Fkyf--j_.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-extwAH6t.js @@ -1 +1 @@ -import{d as ve,r as m,a as L,o as _e,g as c,B as G,c as C,k as u,b as v,e as t,C as T,z as f,w as a,t as n,l as W,N as ge,f as be,J as ye,L as we,s as ke,x as s,F as J,G as g,W as xe,E as I,_ as he}from"./index-BsIaGxbR.js";import{i as Ve,j as Ce,k as Te,r as Ie,l as Re,m as Ue}from"./distribution-Bk8S5V5D.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({pageIndex:1,pageSize:10,withdrawalNo:void 0,userId:void 0,status:void 0,createTimeStart:void 0,createTimeEnd:void 0}),F=m(!1),i=m(null),h=m(!1),D=m(!1),B=m(),w=L({id:0,auditRemark:""}),H={auditRemark:[{required:!0,message:"请输入拒绝原因",trigger:"blur"}]},V=m(!1),j=m(!1),z=m(),k=L({id:0,payTransactionId:""}),Q={payTransactionId:[{required:!0,message:"请输入交易流水号",trigger:"blur"}]},Y=o=>({1:"warning",2:"",3:"success",4:"info"})[o]||"",b=async()=>{N.value=!0;try{const o=await Ve(d);o.code===0&&(M.value=o.data.items,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.pageIndex=1,b()},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.pageIndex=1,b()},ee=o=>{d.pageSize=o,b()},ae=o=>{d.pageIndex=o,b()},te=async o=>{const e=await Ce(o.id);e.code===0&&(i.value=e.data,F.value=!0)},le=o=>{xe.confirm(`确定要通过提现单"${o.withdrawalNo}"的审核吗?`,"提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(async()=>{(await Te({id:o.id})).code===0&&(I.success("审核通过"),b())}).catch(()=>{})},oe=o=>{w.id=o.id,w.auditRemark="",h.value=!0},ne=async()=>{if(B.value){await B.value.validate(),D.value=!0;try{(await Ie(w)).code===0&&(I.success("已拒绝"),h.value=!1,b())}finally{D.value=!1}}},de=o=>{k.id=o.id,k.payTransactionId="",V.value=!0},se=async()=>{if(z.value){await z.value.validate(),j.value=!0;try{(await Re(k)).code===0&&(I.success("打款完成"),V.value=!1,b())}finally{j.value=!1}}},ie=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),I.success("导出成功")}catch{I.error("导出失败")}};return _e(()=>{b()}),(o,e)=>{const x=c("el-icon"),r=c("el-button"),R=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(),C("div",Ne,[v("div",Se,[e[14]||(e[14]=v("h2",null,"提现审核管理",-1)),T((u(),f(r,{type:"success",onClick:ie},{default:a(()=>[t(x,null,{default:a(()=>[t(W(ge))]),_:1}),e[13]||(e[13]=n("导出 ",-1))]),_:1})),[[U,"withdrawal:export"]])]),t(O,{class:"search-card",shadow:"never"},{default:a(()=>[t(E,{model:d,inline:""},{default:a(()=>[t(y,{label:"提现单号"},{default:a(()=>[t(R,{modelValue:d.withdrawalNo,"onUpdate:modelValue":e[0]||(e[0]=l=>d.withdrawalNo=l),placeholder:"请输入提现单号",clearable:"",onKeyup:be(q,["enter"])},null,8,["modelValue"])]),_:1}),t(y,{label:"用户ID"},{default:a(()=>[t(R,{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(we))]),_:1}),e[15]||(e[15]=n("搜索",-1))]),_:1}),t(r,{onClick:Z},{default:a(()=>[t(x,null,{default:a(()=>[t(W(ke))]),_:1}),e[16]||(e[16]=n("重置",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),t(O,{class:"table-card",shadow:"never"},{default:a(()=>[T((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,s(l.userNickname),1),v("div",Fe,s(l.userPhone),1)]),_:1}),t(_,{prop:"amount",label:"金额",width:"100",align:"right"},{default:a(({row:l})=>[v("span",De,"¥"+s(l.amount.toFixed(2)),1)]),_:1}),t(_,{label:"余额变更",width:"150"},{default:a(({row:l})=>[v("div",null,"变更前: ¥"+s(l.beforeBalance.toFixed(2)),1),v("div",null,"变更后: ¥"+s(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(s(l.statusName),1)]),_:2},1032,["type"])]),_:1}),t(_,{label:"审核信息","min-width":"150"},{default:a(({row:l})=>[l.auditUserId?(u(),C(J,{key:0},[v("div",null,s(l.auditUserName),1),v("div",Be,s(l.auditTime),1),l.auditRemark?(u(),C("div",je,s(l.auditRemark),1)):g("",!0)],64)):(u(),C("span",ze,"-"))]),_:1}),t(_,{prop:"payTime",label:"打款时间",width:"170"},{default:a(({row:l})=>[n(s(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(),C(J,{key:0},[T((u(),f(r,{link:"",type:"success",onClick:$=>le(l)},{default:a(()=>[...e[18]||(e[18]=[n("通过",-1)])]),_:1},8,["onClick"])),[[U,"withdrawal:approve"]]),T((u(),f(r,{link:"",type:"danger",onClick:$=>oe(l)},{default:a(()=>[...e[19]||(e[19]=[n("拒绝",-1)])]),_:1},8,["onClick"])),[[U,"withdrawal:reject"]])],64)):g("",!0),l.status===2?T((u(),f(r,{key:1,link:"",type:"warning",onClick:$=>de(l)},{default:a(()=>[...e[20]||(e[20]=[n("完成打款",-1)])]),_:1},8,["onClick"])),[[U,"withdrawal:complete"]]):g("",!0)]),_:1})]),_:1},8,["data"])),[[fe,N.value]]),v("div",Ee,[t(pe,{"current-page":d.pageIndex,"onUpdate:currentPage":e[4]||(e[4]=l=>d.pageIndex=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(()=>[i.value?(u(),f(ce,{key:0,column:1,border:""},{default:a(()=>[t(p,{label:"提现单号"},{default:a(()=>[n(s(i.value.withdrawalNo),1)]),_:1}),t(p,{label:"用户"},{default:a(()=>[n(s(i.value.userNickname)+" ("+s(i.value.userPhone)+")",1)]),_:1}),t(p,{label:"提现金额"},{default:a(()=>[n("¥"+s(i.value.amount.toFixed(2)),1)]),_:1}),t(p,{label:"变更前余额"},{default:a(()=>[n("¥"+s(i.value.beforeBalance.toFixed(2)),1)]),_:1}),t(p,{label:"变更后余额"},{default:a(()=>[n("¥"+s(i.value.afterBalance.toFixed(2)),1)]),_:1}),t(p,{label:"当前余额"},{default:a(()=>[n("¥"+s(i.value.userBalance.toFixed(2)),1)]),_:1}),t(p,{label:"累计收入"},{default:a(()=>[n("¥"+s(i.value.userTotalIncome.toFixed(2)),1)]),_:1}),t(p,{label:"已提现金额"},{default:a(()=>[n("¥"+s(i.value.userWithdrawnAmount.toFixed(2)),1)]),_:1}),t(p,{label:"状态"},{default:a(()=>[t(A,{type:Y(i.value.status)},{default:a(()=>[n(s(i.value.statusName),1)]),_:1},8,["type"])]),_:1}),i.value.auditUserId?(u(),f(p,{key:0,label:"审核人"},{default:a(()=>[n(s(i.value.auditUserName),1)]),_:1})):g("",!0),i.value.auditTime?(u(),f(p,{key:1,label:"审核时间"},{default:a(()=>[n(s(i.value.auditTime),1)]),_:1})):g("",!0),i.value.auditRemark?(u(),f(p,{key:2,label:"审核备注"},{default:a(()=>[n(s(i.value.auditRemark),1)]),_:1})):g("",!0),i.value.payTime?(u(),f(p,{key:3,label:"打款时间"},{default:a(()=>[n(s(i.value.payTime),1)]),_:1})):g("",!0),i.value.payTransactionId?(u(),f(p,{key:4,label:"交易流水号"},{default:a(()=>[n(s(i.value.payTransactionId),1)]),_:1})):g("",!0),t(p,{label:"创建时间"},{default:a(()=>[n(s(i.value.createTime),1)]),_:1})]),_:1})):g("",!0)]),_:1},8,["modelValue"]),t(K,{modelValue:h.value,"onUpdate:modelValue":e[9]||(e[9]=l=>h.value=l),title:"拒绝提现",width:"400px"},{footer:a(()=>[t(r,{onClick:e[8]||(e[8]=l=>h.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:w,rules:H,ref_key:"rejectFormRef",ref:B,"label-width":"80px"},{default:a(()=>[t(y,{label:"拒绝原因",prop:"auditRemark"},{default:a(()=>[t(R,{modelValue:w.auditRemark,"onUpdate:modelValue":e[7]||(e[7]=l=>w.auditRemark=l),type:"textarea",rows:3,placeholder:"请输入拒绝原因"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),t(K,{modelValue:V.value,"onUpdate:modelValue":e[12]||(e[12]=l=>V.value=l),title:"完成打款",width:"400px"},{footer:a(()=>[t(r,{onClick:e[11]||(e[11]=l=>V.value=!1)},{default:a(()=>[...e[23]||(e[23]=[n("取消",-1)])]),_:1}),t(r,{type:"primary",loading:j.value,onClick:se},{default:a(()=>[...e[24]||(e[24]=[n("确定",-1)])]),_:1},8,["loading"])]),default:a(()=>[t(E,{model:k,rules:Q,ref_key:"completeFormRef",ref:z,"label-width":"100px"},{default:a(()=>[t(y,{label:"交易流水号",prop:"payTransactionId"},{default:a(()=>[t(R,{modelValue:k.payTransactionId,"onUpdate:modelValue":e[10]||(e[10]=l=>k.payTransactionId=l),placeholder:"请输入交易流水号"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"])])}}}),Pe=he($e,[["__scopeId","data-v-5efb4a12"]]);export{Pe as default}; +import{d as ve,r as m,a as L,o as _e,g as c,B as G,c as C,k as u,b as v,e as t,C as T,z as f,w as a,t as n,l as W,N as ge,f as be,J as ye,L as we,s as ke,x as s,F as J,G as g,W as xe,E as I,_ as he}from"./index-CJcwRKyx.js";import{i as Ve,j as Ce,k as Te,r as Ie,l as Re,m as Ue}from"./distribution-CfVVEqPo.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({pageIndex:1,pageSize:10,withdrawalNo:void 0,userId:void 0,status:void 0,createTimeStart:void 0,createTimeEnd:void 0}),F=m(!1),i=m(null),h=m(!1),D=m(!1),B=m(),w=L({id:0,auditRemark:""}),H={auditRemark:[{required:!0,message:"请输入拒绝原因",trigger:"blur"}]},V=m(!1),j=m(!1),z=m(),k=L({id:0,payTransactionId:""}),Q={payTransactionId:[{required:!0,message:"请输入交易流水号",trigger:"blur"}]},Y=o=>({1:"warning",2:"",3:"success",4:"info"})[o]||"",b=async()=>{N.value=!0;try{const o=await Ve(d);o.code===0&&(M.value=o.data.items,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.pageIndex=1,b()},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.pageIndex=1,b()},ee=o=>{d.pageSize=o,b()},ae=o=>{d.pageIndex=o,b()},te=async o=>{const e=await Ce(o.id);e.code===0&&(i.value=e.data,F.value=!0)},le=o=>{xe.confirm(`确定要通过提现单"${o.withdrawalNo}"的审核吗?`,"提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(async()=>{(await Te({id:o.id})).code===0&&(I.success("审核通过"),b())}).catch(()=>{})},oe=o=>{w.id=o.id,w.auditRemark="",h.value=!0},ne=async()=>{if(B.value){await B.value.validate(),D.value=!0;try{(await Ie(w)).code===0&&(I.success("已拒绝"),h.value=!1,b())}finally{D.value=!1}}},de=o=>{k.id=o.id,k.payTransactionId="",V.value=!0},se=async()=>{if(z.value){await z.value.validate(),j.value=!0;try{(await Re(k)).code===0&&(I.success("打款完成"),V.value=!1,b())}finally{j.value=!1}}},ie=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),I.success("导出成功")}catch{I.error("导出失败")}};return _e(()=>{b()}),(o,e)=>{const x=c("el-icon"),r=c("el-button"),R=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(),C("div",Ne,[v("div",Se,[e[14]||(e[14]=v("h2",null,"提现审核管理",-1)),T((u(),f(r,{type:"success",onClick:ie},{default:a(()=>[t(x,null,{default:a(()=>[t(W(ge))]),_:1}),e[13]||(e[13]=n("导出 ",-1))]),_:1})),[[U,"withdrawal:export"]])]),t(O,{class:"search-card",shadow:"never"},{default:a(()=>[t(E,{model:d,inline:""},{default:a(()=>[t(y,{label:"提现单号"},{default:a(()=>[t(R,{modelValue:d.withdrawalNo,"onUpdate:modelValue":e[0]||(e[0]=l=>d.withdrawalNo=l),placeholder:"请输入提现单号",clearable:"",onKeyup:be(q,["enter"])},null,8,["modelValue"])]),_:1}),t(y,{label:"用户ID"},{default:a(()=>[t(R,{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(we))]),_:1}),e[15]||(e[15]=n("搜索",-1))]),_:1}),t(r,{onClick:Z},{default:a(()=>[t(x,null,{default:a(()=>[t(W(ke))]),_:1}),e[16]||(e[16]=n("重置",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),t(O,{class:"table-card",shadow:"never"},{default:a(()=>[T((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,s(l.userNickname),1),v("div",Fe,s(l.userPhone),1)]),_:1}),t(_,{prop:"amount",label:"金额",width:"100",align:"right"},{default:a(({row:l})=>[v("span",De,"¥"+s(l.amount.toFixed(2)),1)]),_:1}),t(_,{label:"余额变更",width:"150"},{default:a(({row:l})=>[v("div",null,"变更前: ¥"+s(l.beforeBalance.toFixed(2)),1),v("div",null,"变更后: ¥"+s(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(s(l.statusName),1)]),_:2},1032,["type"])]),_:1}),t(_,{label:"审核信息","min-width":"150"},{default:a(({row:l})=>[l.auditUserId?(u(),C(J,{key:0},[v("div",null,s(l.auditUserName),1),v("div",Be,s(l.auditTime),1),l.auditRemark?(u(),C("div",je,s(l.auditRemark),1)):g("",!0)],64)):(u(),C("span",ze,"-"))]),_:1}),t(_,{prop:"payTime",label:"打款时间",width:"170"},{default:a(({row:l})=>[n(s(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(),C(J,{key:0},[T((u(),f(r,{link:"",type:"success",onClick:$=>le(l)},{default:a(()=>[...e[18]||(e[18]=[n("通过",-1)])]),_:1},8,["onClick"])),[[U,"withdrawal:approve"]]),T((u(),f(r,{link:"",type:"danger",onClick:$=>oe(l)},{default:a(()=>[...e[19]||(e[19]=[n("拒绝",-1)])]),_:1},8,["onClick"])),[[U,"withdrawal:reject"]])],64)):g("",!0),l.status===2?T((u(),f(r,{key:1,link:"",type:"warning",onClick:$=>de(l)},{default:a(()=>[...e[20]||(e[20]=[n("完成打款",-1)])]),_:1},8,["onClick"])),[[U,"withdrawal:complete"]]):g("",!0)]),_:1})]),_:1},8,["data"])),[[fe,N.value]]),v("div",Ee,[t(pe,{"current-page":d.pageIndex,"onUpdate:currentPage":e[4]||(e[4]=l=>d.pageIndex=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(()=>[i.value?(u(),f(ce,{key:0,column:1,border:""},{default:a(()=>[t(p,{label:"提现单号"},{default:a(()=>[n(s(i.value.withdrawalNo),1)]),_:1}),t(p,{label:"用户"},{default:a(()=>[n(s(i.value.userNickname)+" ("+s(i.value.userPhone)+")",1)]),_:1}),t(p,{label:"提现金额"},{default:a(()=>[n("¥"+s(i.value.amount.toFixed(2)),1)]),_:1}),t(p,{label:"变更前余额"},{default:a(()=>[n("¥"+s(i.value.beforeBalance.toFixed(2)),1)]),_:1}),t(p,{label:"变更后余额"},{default:a(()=>[n("¥"+s(i.value.afterBalance.toFixed(2)),1)]),_:1}),t(p,{label:"当前余额"},{default:a(()=>[n("¥"+s(i.value.userBalance.toFixed(2)),1)]),_:1}),t(p,{label:"累计收入"},{default:a(()=>[n("¥"+s(i.value.userTotalIncome.toFixed(2)),1)]),_:1}),t(p,{label:"已提现金额"},{default:a(()=>[n("¥"+s(i.value.userWithdrawnAmount.toFixed(2)),1)]),_:1}),t(p,{label:"状态"},{default:a(()=>[t(A,{type:Y(i.value.status)},{default:a(()=>[n(s(i.value.statusName),1)]),_:1},8,["type"])]),_:1}),i.value.auditUserId?(u(),f(p,{key:0,label:"审核人"},{default:a(()=>[n(s(i.value.auditUserName),1)]),_:1})):g("",!0),i.value.auditTime?(u(),f(p,{key:1,label:"审核时间"},{default:a(()=>[n(s(i.value.auditTime),1)]),_:1})):g("",!0),i.value.auditRemark?(u(),f(p,{key:2,label:"审核备注"},{default:a(()=>[n(s(i.value.auditRemark),1)]),_:1})):g("",!0),i.value.payTime?(u(),f(p,{key:3,label:"打款时间"},{default:a(()=>[n(s(i.value.payTime),1)]),_:1})):g("",!0),i.value.payTransactionId?(u(),f(p,{key:4,label:"交易流水号"},{default:a(()=>[n(s(i.value.payTransactionId),1)]),_:1})):g("",!0),t(p,{label:"创建时间"},{default:a(()=>[n(s(i.value.createTime),1)]),_:1})]),_:1})):g("",!0)]),_:1},8,["modelValue"]),t(K,{modelValue:h.value,"onUpdate:modelValue":e[9]||(e[9]=l=>h.value=l),title:"拒绝提现",width:"400px"},{footer:a(()=>[t(r,{onClick:e[8]||(e[8]=l=>h.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:w,rules:H,ref_key:"rejectFormRef",ref:B,"label-width":"80px"},{default:a(()=>[t(y,{label:"拒绝原因",prop:"auditRemark"},{default:a(()=>[t(R,{modelValue:w.auditRemark,"onUpdate:modelValue":e[7]||(e[7]=l=>w.auditRemark=l),type:"textarea",rows:3,placeholder:"请输入拒绝原因"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),t(K,{modelValue:V.value,"onUpdate:modelValue":e[12]||(e[12]=l=>V.value=l),title:"完成打款",width:"400px"},{footer:a(()=>[t(r,{onClick:e[11]||(e[11]=l=>V.value=!1)},{default:a(()=>[...e[23]||(e[23]=[n("取消",-1)])]),_:1}),t(r,{type:"primary",loading:j.value,onClick:se},{default:a(()=>[...e[24]||(e[24]=[n("确定",-1)])]),_:1},8,["loading"])]),default:a(()=>[t(E,{model:k,rules:Q,ref_key:"completeFormRef",ref:z,"label-width":"100px"},{default:a(()=>[t(y,{label:"交易流水号",prop:"payTransactionId"},{default:a(()=>[t(R,{modelValue:k.payTransactionId,"onUpdate:modelValue":e[10]||(e[10]=l=>k.payTransactionId=l),placeholder:"请输入交易流水号"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"])])}}}),Pe=he($e,[["__scopeId","data-v-5efb4a12"]]);export{Pe as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-qU0doopF.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-qU0doopF.js new file mode 100644 index 0000000..74adcb0 --- /dev/null +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-qU0doopF.js @@ -0,0 +1 @@ +import{R as V,d as me,r as F,a as K,o as pe,g as m,B as fe,c as A,k as w,e as t,C as Y,w as l,b as r,t as c,l as f,N as ge,f as M,J as B,L as _e,s as ve,z as O,m as $,x as u,X as be,H as Le,I as he,G as De,F as ye,E as b,W as we,_ as Ve}from"./index-CJcwRKyx.js";function ke(p){return V({url:"/admin/user/getList",method:"get",params:p})}function xe(p){return V({url:"/admin/user/getDetail",method:"get",params:{id:p}})}function Te(p){return V({url:"/admin/user/updateStatus",method:"post",data:p})}function Ee(p){return V({url:"/admin/user/updateLevel",method:"post",data:p})}function Ce(p){return V({url:"/admin/user/export",method:"get",params:p,responseType:"blob"})}function Ue(p){return V({url:"/admin/user/delete",method:"post",data:{id:p}})}const Se={class:"user-container"},Ne={class:"header-content"},Re={class:"header-right"},ze={class:"balance-text"},Ie={class:"pagination-wrapper"},Fe={class:"user-detail"},Ae={class:"detail-section"},Me={class:"user-profile"},Be={class:"profile-info"},Oe={class:"nickname"},$e={class:"uid"},Pe={class:"detail-section"},He={class:"detail-section"},Ke={class:"money-text"},Ye={class:"money-text"},je={class:"money-text"},qe={class:"detail-section"},Ge={class:"stats-grid"},Je={class:"stat-item"},We={class:"stat-value"},Xe={class:"stat-item"},Qe={class:"stat-value"},Ze={class:"stat-item"},et={class:"stat-value"},tt=me({__name:"index",setup(p){const D={NORMAL:1,PARTNER:2,CHANNEL:3},k={DISABLED:0,NORMAL:1},j=[{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]}}],q=F(),C=F(),U=F(null),a=K({pageIndex:1,pageSize:10,uid:"",phone:"",nickname:"",userLevel:void 0,status:void 0,createTimeStart:void 0,createTimeEnd:void 0}),n=K({loading:!1,tableData:[],total:0,drawerVisible:!1,detailLoading:!1,userDetail:null,levelDialogVisible:!1,levelFormData:{id:0,currentLevel:0,userLevel:""},levelFormLoading:!1,exportLoading:!1}),G={userLevel:[{required:!0,message:"请选择新等级",trigger:"change"}]};function S(s){switch(s){case D.NORMAL:return"info";case D.PARTNER:return"success";case D.CHANNEL:return"warning";default:return"info"}}function N(s){switch(s){case D.NORMAL:return"普通用户";case D.PARTNER:return"合伙人";case D.CHANNEL:return"渠道合伙人";default:return"未知"}}function x(s){return s==null?"0.00":s.toFixed(2)}async function h(){var s,e;n.loading=!0;try{const i={pageIndex:a.pageIndex,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 ke(i);if(d.code===0)n.tableData=(((s=d.data)==null?void 0:s.list)||[]).map(g=>({...g,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:"获取用户列表失败";b.error(d)}finally{n.loading=!1}}async function J(s){n.detailLoading=!0;try{const e=await xe(s);if(e.code===0)n.userDetail=e.data;else throw new Error(e.message||"获取用户详情失败")}catch(e){const i=e instanceof Error?e.message:"获取用户详情失败";b.error(i)}finally{n.detailLoading=!1}}function T(){a.pageIndex=1,h()}function W(){a.uid="",a.phone="",a.nickname="",a.userLevel=void 0,a.status=void 0,a.createTimeStart=void 0,a.createTimeEnd=void 0,U.value=null,a.pageIndex=1,h()}function X(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.pageIndex=1,h()}function Z(s){a.pageIndex=s,h()}function ee(s){n.drawerVisible=!0,n.userDetail=null,J(s.id)}async function te(s,e){s.statusLoading=!0;try{const i=await Te({id:s.id,status:e});if(i.code===0)b.success(e===k.NORMAL?"已启用":"已禁用");else throw s.status=e===k.NORMAL?k.DISABLED:k.NORMAL,new Error(i.message||"状态更新失败")}catch(i){const d=i instanceof Error?i.message:"状态更新失败";b.error(d)}finally{s.statusLoading=!1}}function ae(s){n.levelFormData={id:s.id,currentLevel:s.userLevel,userLevel:""},n.levelDialogVisible=!0}async function le(s){try{await we.confirm(`确定要删除用户 "${s.nickname}"(UID: ${s.uid})吗?删除后将同时清除该用户的登录记录和令牌数据,此操作不可恢复。`,"删除确认",{confirmButtonText:"确定删除",cancelButtonText:"取消",type:"warning"})}catch{return}try{const e=await Ue(s.id);if(e.code===0)b.success("用户删除成功"),await h();else throw new Error(e.message||"删除失败")}catch(e){const i=e instanceof Error?e.message:"删除失败";b.error(i)}}async function se(){if(C.value){try{await C.value.validate()}catch{return}n.levelFormLoading=!0;try{const s=await Ee({id:n.levelFormData.id,userLevel:Number(n.levelFormData.userLevel)});if(s.code===0)b.success("等级修改成功"),n.levelDialogVisible=!1,await h();else throw new Error(s.message||"等级修改失败")}catch(s){const e=s instanceof Error?s.message:"等级修改失败";b.error(e)}finally{n.levelFormLoading=!1}}}async function ne(){n.exportLoading=!0;try{const s={pageIndex: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 Ce(s),i=e.data instanceof Blob?e.data:new Blob([e.data]),d=window.URL.createObjectURL(i),g=document.createElement("a");g.href=d,g.download=`用户列表_${new Date().toISOString().slice(0,10)}.xlsx`,document.body.appendChild(g),g.click(),document.body.removeChild(g),window.URL.revokeObjectURL(d),b.success("导出成功")}catch(s){const e=s instanceof Error?s.message:"导出失败";b.error(e)}finally{n.exportLoading=!1}}return pe(()=>{h()}),(s,e)=>{const i=m("el-icon"),d=m("el-button"),g=m("el-card"),R=m("el-input"),L=m("el-form-item"),oe=m("el-date-picker"),P=m("el-form"),_=m("el-table-column"),z=m("el-avatar"),E=m("el-tag"),ie=m("el-switch"),re=m("el-table"),de=m("el-pagination"),v=m("el-descriptions-item"),I=m("el-descriptions"),ue=m("el-drawer"),ce=m("el-dialog"),H=fe("loading");return w(),A("div",Se,[t(g,{class:"page-header"},{default:l(()=>[r("div",Ne,[e[13]||(e[13]=r("div",{class:"header-left"},[r("h2",{class:"page-title"},"用户管理"),r("span",{class:"page-description"},"管理C端用户信息,支持搜索、查看详情、状态管理、等级修改、导出")],-1)),r("div",Re,[t(d,{type:"success",onClick:ne,loading:n.exportLoading},{default:l(()=>[t(i,null,{default:l(()=>[t(f(ge))]),_:1}),e[12]||(e[12]=c(" 导出Excel ",-1))]),_:1},8,["loading"])])])]),_:1}),t(g,{class:"search-card"},{default:l(()=>[t(P,{model:a,inline:""},{default:l(()=>[t(L,{label:"UID"},{default:l(()=>[t(R,{modelValue:a.uid,"onUpdate:modelValue":e[0]||(e[0]=o=>a.uid=o),placeholder:"请输入UID",clearable:"",onKeyup:M(T,["enter"])},null,8,["modelValue"])]),_:1}),t(L,{label:"手机号"},{default:l(()=>[t(R,{modelValue:a.phone,"onUpdate:modelValue":e[1]||(e[1]=o=>a.phone=o),placeholder:"请输入手机号",clearable:"",onKeyup:M(T,["enter"])},null,8,["modelValue"])]),_:1}),t(L,{label:"昵称"},{default:l(()=>[t(R,{modelValue:a.nickname,"onUpdate:modelValue":e[2]||(e[2]=o=>a.nickname=o),placeholder:"请输入昵称",clearable:"",onKeyup:M(T,["enter"])},null,8,["modelValue"])]),_:1}),t(L,{label:"用户等级"},{default:l(()=>[t(f(B),{modelValue:a.userLevel,"onUpdate:modelValue":e[3]||(e[3]=o=>a.userLevel=o),type:"user_level",placeholder:"请选择等级",clearable:""},null,8,["modelValue"])]),_:1}),t(L,{label:"状态"},{default:l(()=>[t(f(B),{modelValue:a.status,"onUpdate:modelValue":e[4]||(e[4]=o=>a.status=o),type:"common_status",placeholder:"请选择状态",clearable:""},null,8,["modelValue"])]),_:1}),t(L,{label:"创建时间"},{default:l(()=>[t(oe,{modelValue:U.value,"onUpdate:modelValue":e[5]||(e[5]=o=>U.value=o),type:"daterange","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期","value-format":"YYYY-MM-DD",shortcuts:j,onChange:X},null,8,["modelValue"])]),_:1}),t(L,null,{default:l(()=>[t(d,{type:"primary",onClick:T},{default:l(()=>[t(i,null,{default:l(()=>[t(f(_e))]),_:1}),e[14]||(e[14]=c(" 搜索 ",-1))]),_:1}),t(d,{onClick:W},{default:l(()=>[t(i,null,{default:l(()=>[t(f(ve))]),_:1}),e[15]||(e[15]=c(" 重置 ",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),Y((w(),O(g,{class:"table-card"},{default:l(()=>[t(re,{ref_key:"tableRef",ref:q,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(),O(z,{key:0,src:o.avatar,size:40},{default:l(()=>[t(i,null,{default:l(()=>[t(f($))]),_:1})]),_:1},8,["src"])):(w(),O(z,{key:1,size:40},{default:l(()=>[t(i,null,{default:l(()=>[t(f($))]),_:1})]),_:1}))]),_:1}),t(_,{label:"用户等级",width:"100",align:"center"},{default:l(({row:o})=>[t(E,{type:S(o.userLevel)},{default:l(()=>[c(u(o.userLevelName||N(o.userLevel)),1)]),_:2},1032,["type"])]),_:1}),t(_,{prop:"balance",label:"余额",width:"100",align:"right"},{default:l(({row:o})=>[r("span",ze,"¥"+u(x(o.balance)),1)]),_:1}),t(_,{label:"状态",width:"100",align:"center"},{default:l(({row:o})=>[t(ie,{modelValue:o.status,"onUpdate:modelValue":y=>o.status=y,"active-value":1,"inactive-value":0,loading:o.statusLoading,onChange:y=>te(o,y)},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:y=>ee(o)},{default:l(()=>[t(i,null,{default:l(()=>[t(f(be))]),_:1}),e[16]||(e[16]=c(" 详情 ",-1))]),_:1},8,["onClick"]),t(d,{type:"warning",link:"",size:"small",onClick:y=>ae(o)},{default:l(()=>[t(i,null,{default:l(()=>[t(f(Le))]),_:1}),e[17]||(e[17]=c(" 等级 ",-1))]),_:1},8,["onClick"]),t(d,{type:"danger",link:"",size:"small",onClick:y=>le(o)},{default:l(()=>[t(i,null,{default:l(()=>[t(f(he))]),_:1}),e[18]||(e[18]=c(" 删除 ",-1))]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"]),r("div",Ie,[t(de,{"current-page":a.pageIndex,"onUpdate:currentPage":e[6]||(e[6]=o=>a.pageIndex=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:Z},null,8,["current-page","page-size","total"])])]),_:1})),[[H,n.loading]]),t(ue,{modelValue:n.drawerVisible,"onUpdate:modelValue":e[8]||(e[8]=o=>n.drawerVisible=o),title:"用户详情",size:"500px","close-on-click-modal":!0},{default:l(()=>[Y((w(),A("div",Fe,[n.userDetail?(w(),A(ye,{key:0},[r("div",Ae,[e[19]||(e[19]=r("h4",{class:"section-title"},"基本信息",-1)),r("div",Me,[t(z,{src:n.userDetail.avatar,size:80},{default:l(()=>[t(i,{size:40},{default:l(()=>[t(f($))]),_:1})]),_:1},8,["src"]),r("div",Be,[r("div",Oe,u(n.userDetail.nickname),1),r("div",$e,"UID: "+u(n.userDetail.uid),1)])]),t(I,{column:1,border:""},{default:l(()=>[t(v,{label:"手机号"},{default:l(()=>[c(u(n.userDetail.phone),1)]),_:1}),t(v,{label:"用户等级"},{default:l(()=>[t(E,{type:S(n.userDetail.userLevel)},{default:l(()=>[c(u(n.userDetail.userLevelName||N(n.userDetail.userLevel)),1)]),_:1},8,["type"])]),_:1}),t(v,{label:"状态"},{default:l(()=>[t(E,{type:n.userDetail.status===1?"success":"danger"},{default:l(()=>[c(u(n.userDetail.statusName||(n.userDetail.status===1?"正常":"禁用")),1)]),_:1},8,["type"])]),_:1}),t(v,{label:"创建时间"},{default:l(()=>[c(u(n.userDetail.createTime),1)]),_:1}),t(v,{label:"最后登录"},{default:l(()=>[c(u(n.userDetail.lastLoginTime||"-"),1)]),_:1})]),_:1})]),r("div",Pe,[e[20]||(e[20]=r("h4",{class:"section-title"},"上级用户",-1)),t(I,{column:1,border:""},{default:l(()=>[t(v,{label:"上级UID"},{default:l(()=>[c(u(n.userDetail.parentUserUid||"-"),1)]),_:1}),t(v,{label:"上级昵称"},{default:l(()=>[c(u(n.userDetail.parentUserNickname||"-"),1)]),_:1})]),_:1})]),r("div",He,[e[21]||(e[21]=r("h4",{class:"section-title"},"财务信息",-1)),t(I,{column:1,border:""},{default:l(()=>[t(v,{label:"账户余额"},{default:l(()=>[r("span",Ke,"¥"+u(x(n.userDetail.balance)),1)]),_:1}),t(v,{label:"累计收入"},{default:l(()=>[r("span",Ye,"¥"+u(x(n.userDetail.totalIncome)),1)]),_:1}),t(v,{label:"已提现金额"},{default:l(()=>[r("span",je,"¥"+u(x(n.userDetail.withdrawnAmount)),1)]),_:1})]),_:1})]),r("div",qe,[e[25]||(e[25]=r("h4",{class:"section-title"},"统计信息",-1)),r("div",Ge,[r("div",Je,[r("div",We,u(n.userDetail.orderCount),1),e[22]||(e[22]=r("div",{class:"stat-label"},"订单数",-1))]),r("div",Xe,[r("div",Qe,u(n.userDetail.assessmentCount),1),e[23]||(e[23]=r("div",{class:"stat-label"},"测评数",-1))]),r("div",Ze,[r("div",et,u(n.userDetail.inviteCount),1),e[24]||(e[24]=r("div",{class:"stat-label"},"邀请人数",-1))])])])],64)):De("",!0)])),[[H,n.detailLoading]])]),_:1},8,["modelValue"]),t(ce,{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:se},{default:l(()=>[...e[27]||(e[27]=[c(" 确定 ",-1)])]),_:1},8,["loading"])]),default:l(()=>[t(P,{ref_key:"levelFormRef",ref:C,model:n.levelFormData,rules:G,"label-width":"80px"},{default:l(()=>[t(L,{label:"当前等级"},{default:l(()=>[t(E,{type:S(n.levelFormData.currentLevel)},{default:l(()=>[c(u(N(n.levelFormData.currentLevel)),1)]),_:1},8,["type"])]),_:1}),t(L,{label:"新等级",prop:"userLevel"},{default:l(()=>[t(f(B),{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=Ve(tt,[["__scopeId","data-v-01ca001a"]]);export{lt as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-VAuxenbw.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-zcTKDpLD.js similarity index 99% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-VAuxenbw.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-zcTKDpLD.js index 9b1db14..931d516 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-VAuxenbw.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-zcTKDpLD.js @@ -1 +1 @@ -import{d as Ve,r as I,a as A,v as Ie,o as Te,g as d,B as ke,c as v,k as m,e as a,C as $,w as l,b as p,t as u,l as y,D as xe,K as B,F as L,y as S,z as C,f as he,J as H,L as De,s as qe,x as w,H as Ne,M as Ee,I as Re,G as T,N as ze,E as f,_ as Le}from"./index-BsIaGxbR.js";import{g as Se,i as Fe,j as Qe,k as Ue,l as Me,m as Ae,n as $e,a as Be,o as He}from"./assessment-CKsQcO9P.js";const Ke={class:"question-container"},Pe={class:"header-content"},je={class:"header-right"},Ge=["innerHTML"],Je={class:"category-count"},Oe={class:"pagination-wrapper"},We={key:0,class:"mapping-header"},Xe={class:"question-info"},Ye={class:"question-type"},Ze={class:"mapping-content"},et={class:"tree-node"},tt={class:"tree-node-code"},at={key:0,class:"import-result"},st={class:"result-summary"},lt={key:0,class:"error-list"},ot=Ve({__name:"index",setup(nt){const K=I(),V=I(),P=I(),F=I(),n=A({pageIndex:1,pageSize:10,assessmentTypeId:void 0,questionNo:void 0,status:void 0}),t=A({loading:!1,tableData:[],total:0,assessmentTypes:[],dialogVisible:!1,dialogTitle:"新增题目",formData:k(),formLoading:!1,isEdit:!1,mappingDialogVisible:!1,mappingLoading:!1,mappingSaving:!1,currentQuestion:null,categoryTree:[],selectedCategoryIds:[],importDialogVisible:!1,importLoading:!1,importAssessmentTypeId:void 0,importFile:null,importResult:null}),j=Ie(()=>({assessmentTypeId:[{required:!0,message:"请选择测评类型",trigger:"change"}],questionNo:[{required:!0,message:"请输入题号",trigger:"blur"}],content:[{required:!0,message:"请输入题目内容",trigger:"blur"},{max:1e4,message:"内容不能超过10000个字符",trigger:"blur"}],status:[{required:!0,message:"请选择状态",trigger:"change"}]}));function k(){return{assessmentTypeId:void 0,questionNo:1,content:"",sort:0,status:1}}function G(s){if(!s)return"-";const e=s.replace(/<[^>]+>/g,"");return e.length>100?e.substring(0,100)+"...":e}async function J(){var s;try{const e=await Se({pageIndex:1,pageSize:100});e.code===0&&(t.assessmentTypes=((s=e.data)==null?void 0:s.list)||[])}catch(e){console.error("Failed to load assessment types:",e)}}async function _(){var s,e;t.loading=!0;try{const i={pageIndex:n.pageIndex,pageSize:n.pageSize};n.assessmentTypeId&&(i.assessmentTypeId=n.assessmentTypeId),n.questionNo&&(i.questionNo=n.questionNo),n.status!==void 0&&n.status!==""&&(i.status=Number(n.status));const r=await Fe(i);if(r.code===0)t.tableData=((s=r.data)==null?void 0:s.list)||[],t.total=((e=r.data)==null?void 0:e.total)||0;else throw new Error(r.message||"获取题目列表失败")}catch(i){const r=i instanceof Error?i.message:"获取题目列表失败";f.error(r)}finally{t.loading=!1}}async function O(s){t.mappingLoading=!0;try{const e=await Be(s);if(e.code===0)t.categoryTree=e.data||[];else throw new Error(e.message||"获取分类树失败")}catch(e){const i=e instanceof Error?e.message:"获取分类树失败";f.error(i),t.categoryTree=[]}finally{t.mappingLoading=!1}}async function W(s){try{const e=await He(s);e.code===0&&(t.selectedCategoryIds=(e.data||[]).map(i=>i.id))}catch(e){console.error("Failed to load question mappings:",e),t.selectedCategoryIds=[]}}function x(){n.pageIndex=1,_()}function X(){n.assessmentTypeId=void 0,n.questionNo=void 0,n.status=void 0,n.pageIndex=1,_()}function Y(s){n.pageSize=s,n.pageIndex=1,_()}function Z(s){n.pageIndex=s,_()}function ee(){t.isEdit=!1,t.dialogTitle="新增题目",t.formData=k(),t.dialogVisible=!0}function te(s){t.isEdit=!0,t.dialogTitle="编辑题目",t.formData={id:s.id,assessmentTypeId:s.assessmentTypeId,questionNo:s.questionNo,content:s.content||"",sort:s.sort,status:s.status},t.dialogVisible=!0}async function ae(s){try{const e=await Qe(s.id);if(e.code===0)f.success("删除成功"),t.tableData.length===1&&n.pageIndex>1&&n.pageIndex--,await _();else throw new Error(e.message||"删除失败")}catch(e){const i=e instanceof Error?e.message:"删除失败";f.error(i)}}async function se(){if(V.value){try{await V.value.validate()}catch{return}t.formLoading=!0;try{const s=t.formData,e={assessmentTypeId:s.assessmentTypeId,questionNo:s.questionNo,content:s.content,sort:s.sort,status:Number(s.status)};let i;if(t.isEdit&&s.id?i=await Ue({...e,id:s.id}):i=await Me(e),i.code===0)f.success(t.isEdit?"更新成功":"创建成功"),t.dialogVisible=!1,await _();else throw new Error(i.message||(t.isEdit?"更新失败":"创建失败"))}catch(s){const e=s instanceof Error?s.message:t.isEdit?"更新失败":"创建失败";f.error(e)}finally{t.formLoading=!1}}}function le(){var s;(s=V.value)==null||s.resetFields(),t.formData=k()}async function Q(s){t.currentQuestion=s,t.mappingDialogVisible=!0,s.assessmentTypeId&&(await O(s.assessmentTypeId),await W(s.id))}function oe(s,{checkedKeys:e}){t.selectedCategoryIds=e}async function ne(){if(t.currentQuestion){t.mappingSaving=!0;try{const s=await Ae({questionId:t.currentQuestion.id,categoryIds:t.selectedCategoryIds});if(s.code===0)f.success("映射保存成功"),t.mappingDialogVisible=!1,await _();else throw new Error(s.message||"保存映射失败")}catch(s){const e=s instanceof Error?s.message:"保存映射失败";f.error(e)}finally{t.mappingSaving=!1}}}function ie(){t.currentQuestion=null,t.categoryTree=[],t.selectedCategoryIds=[]}function re(){t.importDialogVisible=!0,t.importResult=null,t.importFile=null,t.importAssessmentTypeId=void 0}function de(s){t.importFile=s.raw||null}function ue(){t.importFile=null}async function pe(){if(!t.importFile||!t.importAssessmentTypeId){f.warning("请选择测评类型和上传文件");return}t.importLoading=!0;try{const s=new FormData;s.append("file",t.importFile),s.append("assessmentTypeId",String(t.importAssessmentTypeId));const e=await $e(s);if(e.code===0)t.importResult=e.data,e.data.successCount>0&&(f.success(`成功导入 ${e.data.successCount} 条题目`),await _()),e.data.failCount>0&&f.warning(`有 ${e.data.failCount} 条导入失败,请查看错误详情`);else throw new Error(e.message||"导入失败")}catch(s){const e=s instanceof Error?s.message:"导入失败";f.error(e)}finally{t.importLoading=!1}}function me(){const s="/templates/question_import_template.xlsx",e=document.createElement("a");e.href=s,e.download="题目导入模板.xlsx",e.click(),f.info("模板下载中...")}function fe(){var s;t.importFile=null,t.importAssessmentTypeId=void 0,t.importResult=null,(s=F.value)==null||s.clearFiles()}return Te(async()=>{await J(),await _()}),(s,e)=>{const i=d("el-icon"),r=d("el-button"),h=d("el-card"),D=d("el-option"),q=d("el-select"),g=d("el-form-item"),N=d("el-input-number"),E=d("el-form"),b=d("el-table-column"),R=d("el-tag"),ge=d("el-popconfirm"),U=d("el-table"),ce=d("el-pagination"),ye=d("el-input"),z=d("el-dialog"),_e=d("el-alert"),be=d("el-tree"),ve=d("el-upload"),we=d("el-divider"),M=ke("loading");return m(),v("div",Ke,[a(h,{class:"page-header"},{default:l(()=>[p("div",Pe,[e[19]||(e[19]=p("div",{class:"header-left"},[p("h2",{class:"page-title"},"题库管理"),p("span",{class:"page-description"},"管理测评题目,支持按测评类型筛选、分类映射、批量导入")],-1)),p("div",je,[a(r,{type:"primary",onClick:ee},{default:l(()=>[a(i,null,{default:l(()=>[a(y(xe))]),_:1}),e[17]||(e[17]=u(" 新增题目 ",-1))]),_:1}),a(r,{type:"success",onClick:re},{default:l(()=>[a(i,null,{default:l(()=>[a(y(B))]),_:1}),e[18]||(e[18]=u(" 批量导入 ",-1))]),_:1})])])]),_:1}),a(h,{class:"search-card"},{default:l(()=>[a(E,{model:n,inline:""},{default:l(()=>[a(g,{label:"测评类型"},{default:l(()=>[a(q,{modelValue:n.assessmentTypeId,"onUpdate:modelValue":e[0]||(e[0]=o=>n.assessmentTypeId=o),placeholder:"请选择测评类型",clearable:"",style:{width:"200px"},onChange:x},{default:l(()=>[(m(!0),v(L,null,S(t.assessmentTypes,o=>(m(),C(D,{key:o.id,label:o.name,value:o.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(g,{label:"题号"},{default:l(()=>[a(N,{modelValue:n.questionNo,"onUpdate:modelValue":e[1]||(e[1]=o=>n.questionNo=o),placeholder:"请输入题号",min:1,controls:!1,style:{width:"120px"},onKeyup:he(x,["enter"])},null,8,["modelValue"])]),_:1}),a(g,{label:"状态"},{default:l(()=>[a(y(H),{modelValue:n.status,"onUpdate:modelValue":e[2]||(e[2]=o=>n.status=o),type:"common_status",placeholder:"请选择状态",clearable:""},null,8,["modelValue"])]),_:1}),a(g,null,{default:l(()=>[a(r,{type:"primary",onClick:x},{default:l(()=>[a(i,null,{default:l(()=>[a(y(De))]),_:1}),e[20]||(e[20]=u(" 搜索 ",-1))]),_:1}),a(r,{onClick:X},{default:l(()=>[a(i,null,{default:l(()=>[a(y(qe))]),_:1}),e[21]||(e[21]=u(" 重置 ",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),$((m(),C(h,{class:"table-card"},{default:l(()=>[a(U,{ref_key:"tableRef",ref:K,data:t.tableData,"row-key":"id",stripe:""},{default:l(()=>[a(b,{prop:"questionNo",label:"题号",width:"80",align:"center"}),a(b,{label:"内容预览","min-width":"300"},{default:l(({row:o})=>[p("div",{class:"content-preview",innerHTML:G(o.content)},null,8,Ge)]),_:1}),a(b,{prop:"assessmentTypeName",label:"测评类型",width:"150","show-overflow-tooltip":""}),a(b,{label:"分类映射",width:"120",align:"center"},{default:l(({row:o})=>[a(r,{type:"primary",link:"",size:"small",onClick:c=>Q(o)},{default:l(()=>[p("span",Je,w(o.categoryCount||0),1),e[22]||(e[22]=p("span",null,"个分类",-1))]),_:2},1032,["onClick"])]),_:1}),a(b,{label:"状态",width:"100",align:"center"},{default:l(({row:o})=>[a(R,{type:o.status===1?"success":"info"},{default:l(()=>[u(w(o.status===1?"启用":"禁用"),1)]),_:2},1032,["type"])]),_:1}),a(b,{label:"操作",width:"180",fixed:"right",align:"center"},{default:l(({row:o})=>[a(r,{type:"primary",link:"",size:"small",onClick:c=>te(o)},{default:l(()=>[a(i,null,{default:l(()=>[a(y(Ne))]),_:1}),e[23]||(e[23]=u(" 编辑 ",-1))]),_:1},8,["onClick"]),a(r,{type:"warning",link:"",size:"small",onClick:c=>Q(o)},{default:l(()=>[a(i,null,{default:l(()=>[a(y(Ee))]),_:1}),e[24]||(e[24]=u(" 映射 ",-1))]),_:1},8,["onClick"]),a(ge,{title:"确定要删除这道题目吗?","confirm-button-text":"确定","cancel-button-text":"取消",onConfirm:c=>ae(o)},{reference:l(()=>[a(r,{type:"danger",link:"",size:"small"},{default:l(()=>[a(i,null,{default:l(()=>[a(y(Re))]),_:1}),e[25]||(e[25]=u(" 删除 ",-1))]),_:1})]),_:1},8,["onConfirm"])]),_:1})]),_:1},8,["data"]),p("div",Oe,[a(ce,{"current-page":n.pageIndex,"onUpdate:currentPage":e[3]||(e[3]=o=>n.pageIndex=o),"page-size":n.pageSize,"onUpdate:pageSize":e[4]||(e[4]=o=>n.pageSize=o),"page-sizes":[10,20,50,100],total:t.total,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:Y,onCurrentChange:Z},null,8,["current-page","page-size","total"])])]),_:1})),[[M,t.loading]]),a(z,{modelValue:t.dialogVisible,"onUpdate:modelValue":e[11]||(e[11]=o=>t.dialogVisible=o),title:t.dialogTitle,width:"700px","close-on-click-modal":!1,onClosed:le},{footer:l(()=>[a(r,{onClick:e[10]||(e[10]=o=>t.dialogVisible=!1)},{default:l(()=>[...e[26]||(e[26]=[u("取消",-1)])]),_:1}),a(r,{type:"primary",loading:t.formLoading,onClick:se},{default:l(()=>[...e[27]||(e[27]=[u(" 确定 ",-1)])]),_:1},8,["loading"])]),default:l(()=>[a(E,{ref_key:"formRef",ref:V,model:t.formData,rules:j.value,"label-width":"100px","label-position":"right"},{default:l(()=>[a(g,{label:"测评类型",prop:"assessmentTypeId"},{default:l(()=>[a(q,{modelValue:t.formData.assessmentTypeId,"onUpdate:modelValue":e[5]||(e[5]=o=>t.formData.assessmentTypeId=o),placeholder:"请选择测评类型",style:{width:"100%"}},{default:l(()=>[(m(!0),v(L,null,S(t.assessmentTypes,o=>(m(),C(D,{key:o.id,label:o.name,value:o.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(g,{label:"题号",prop:"questionNo"},{default:l(()=>[a(N,{modelValue:t.formData.questionNo,"onUpdate:modelValue":e[6]||(e[6]=o=>t.formData.questionNo=o),min:1,max:9999,placeholder:"请输入题号",style:{width:"200px"}},null,8,["modelValue"])]),_:1}),a(g,{label:"题目内容",prop:"content"},{default:l(()=>[a(ye,{modelValue:t.formData.content,"onUpdate:modelValue":e[7]||(e[7]=o=>t.formData.content=o),type:"textarea",placeholder:"请输入题目内容(支持HTML格式)",rows:8,maxlength:"10000","show-word-limit":""},null,8,["modelValue"])]),_:1}),a(g,{label:"排序",prop:"sort"},{default:l(()=>[a(N,{modelValue:t.formData.sort,"onUpdate:modelValue":e[8]||(e[8]=o=>t.formData.sort=o),min:0,max:9999,placeholder:"数值越小越靠前"},null,8,["modelValue"])]),_:1}),a(g,{label:"状态",prop:"status",required:""},{default:l(()=>[a(y(H),{modelValue:t.formData.status,"onUpdate:modelValue":e[9]||(e[9]=o=>t.formData.status=o),type:"common_status",placeholder:"请选择状态"},null,8,["modelValue"])]),_:1})]),_:1},8,["model","rules"])]),_:1},8,["modelValue","title"]),a(z,{modelValue:t.mappingDialogVisible,"onUpdate:modelValue":e[13]||(e[13]=o=>t.mappingDialogVisible=o),title:"分类映射",width:"600px","close-on-click-modal":!1,onClosed:ie},{footer:l(()=>[a(r,{onClick:e[12]||(e[12]=o=>t.mappingDialogVisible=!1)},{default:l(()=>[...e[29]||(e[29]=[u("取消",-1)])]),_:1}),a(r,{type:"primary",loading:t.mappingSaving,onClick:ne},{default:l(()=>[...e[30]||(e[30]=[u(" 保存映射 ",-1)])]),_:1},8,["loading"])]),default:l(()=>{var o;return[t.currentQuestion?(m(),v("div",We,[e[28]||(e[28]=p("span",null,"题目:",-1)),p("span",Xe,"第 "+w(t.currentQuestion.questionNo)+" 题",1),p("span",Ye,"("+w(t.currentQuestion.assessmentTypeName)+")",1)])):T("",!0),$((m(),v("div",Ze,[(o=t.currentQuestion)!=null&&o.assessmentTypeId?(m(),C(be,{key:1,ref_key:"categoryTreeRef",ref:P,data:t.categoryTree,props:{label:"name",children:"children"},"node-key":"id","show-checkbox":"","default-expand-all":"","default-checked-keys":t.selectedCategoryIds,onCheck:oe},{default:l(({node:c,data:Ce})=>[p("span",et,[p("span",null,w(c.label),1),p("span",tt,"("+w(Ce.code)+")",1)])]),_:1},8,["data","default-checked-keys"])):(m(),C(_e,{key:0,title:"请先选择测评类型",type:"warning",closable:!1,"show-icon":""}))])),[[M,t.mappingLoading]])]}),_:1},8,["modelValue"]),a(z,{modelValue:t.importDialogVisible,"onUpdate:modelValue":e[16]||(e[16]=o=>t.importDialogVisible=o),title:"批量导入题目",width:"600px","close-on-click-modal":!1,onClosed:fe},{footer:l(()=>[a(r,{onClick:e[15]||(e[15]=o=>t.importDialogVisible=!1)},{default:l(()=>[...e[36]||(e[36]=[u("关闭",-1)])]),_:1}),a(r,{type:"primary",loading:t.importLoading,disabled:!t.importFile||!t.importAssessmentTypeId,onClick:pe},{default:l(()=>[...e[37]||(e[37]=[u(" 开始导入 ",-1)])]),_:1},8,["loading","disabled"])]),default:l(()=>{var o;return[a(E,{"label-width":"100px"},{default:l(()=>[a(g,{label:"测评类型",required:""},{default:l(()=>[a(q,{modelValue:t.importAssessmentTypeId,"onUpdate:modelValue":e[14]||(e[14]=c=>t.importAssessmentTypeId=c),placeholder:"请选择测评类型",style:{width:"100%"}},{default:l(()=>[(m(!0),v(L,null,S(t.assessmentTypes,c=>(m(),C(D,{key:c.id,label:c.name,value:c.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(g,{label:"Excel文件",required:""},{default:l(()=>[a(ve,{ref_key:"uploadRef",ref:F,"auto-upload":!1,limit:1,accept:".xlsx,.xls","on-change":de,"on-remove":ue},{trigger:l(()=>[a(r,{type:"primary"},{default:l(()=>[a(i,null,{default:l(()=>[a(y(B))]),_:1}),e[31]||(e[31]=u(" 选择文件 ",-1))]),_:1})]),tip:l(()=>[...e[32]||(e[32]=[p("div",{class:"upload-tip"}," 支持 .xlsx, .xls 格式,文件大小不超过 10MB ",-1)])]),_:1},512)]),_:1}),a(g,{label:"模板下载"},{default:l(()=>[a(r,{type:"text",onClick:me},{default:l(()=>[a(i,null,{default:l(()=>[a(y(ze))]),_:1}),e[33]||(e[33]=u(" 下载导入模板 ",-1))]),_:1})]),_:1})]),_:1}),t.importResult?(m(),v("div",at,[a(we,{"content-position":"left"},{default:l(()=>[...e[34]||(e[34]=[u("导入结果",-1)])]),_:1}),p("div",st,[a(R,{type:"success"},{default:l(()=>[u("成功:"+w(t.importResult.successCount)+" 条",1)]),_:1}),t.importResult.failCount>0?(m(),C(R,{key:0,type:"danger"},{default:l(()=>[u(" 失败:"+w(t.importResult.failCount)+" 条 ",1)]),_:1})):T("",!0)]),((o=t.importResult.errors)==null?void 0:o.length)>0?(m(),v("div",lt,[e[35]||(e[35]=p("div",{class:"error-title"},"错误详情:",-1)),a(U,{data:t.importResult.errors,"max-height":"200",size:"small"},{default:l(()=>[a(b,{prop:"row",label:"行号",width:"80",align:"center"}),a(b,{prop:"message",label:"错误信息"})]),_:1},8,["data"])])):T("",!0)])):T("",!0)]}),_:1},8,["modelValue"])])}}}),dt=Le(ot,[["__scopeId","data-v-6f8d531d"]]);export{dt as default}; +import{d as Ve,r as I,a as A,v as Ie,o as Te,g as d,B as ke,c as v,k as m,e as a,C as $,w as l,b as p,t as u,l as y,D as xe,K as B,F as L,y as S,z as C,f as he,J as H,L as De,s as qe,x as w,H as Ne,M as Ee,I as Re,G as T,N as ze,E as f,_ as Le}from"./index-CJcwRKyx.js";import{g as Se,i as Fe,j as Qe,k as Ue,l as Me,m as Ae,n as $e,a as Be,o as He}from"./assessment-pbF6Upoc.js";const Ke={class:"question-container"},Pe={class:"header-content"},je={class:"header-right"},Ge=["innerHTML"],Je={class:"category-count"},Oe={class:"pagination-wrapper"},We={key:0,class:"mapping-header"},Xe={class:"question-info"},Ye={class:"question-type"},Ze={class:"mapping-content"},et={class:"tree-node"},tt={class:"tree-node-code"},at={key:0,class:"import-result"},st={class:"result-summary"},lt={key:0,class:"error-list"},ot=Ve({__name:"index",setup(nt){const K=I(),V=I(),P=I(),F=I(),n=A({pageIndex:1,pageSize:10,assessmentTypeId:void 0,questionNo:void 0,status:void 0}),t=A({loading:!1,tableData:[],total:0,assessmentTypes:[],dialogVisible:!1,dialogTitle:"新增题目",formData:k(),formLoading:!1,isEdit:!1,mappingDialogVisible:!1,mappingLoading:!1,mappingSaving:!1,currentQuestion:null,categoryTree:[],selectedCategoryIds:[],importDialogVisible:!1,importLoading:!1,importAssessmentTypeId:void 0,importFile:null,importResult:null}),j=Ie(()=>({assessmentTypeId:[{required:!0,message:"请选择测评类型",trigger:"change"}],questionNo:[{required:!0,message:"请输入题号",trigger:"blur"}],content:[{required:!0,message:"请输入题目内容",trigger:"blur"},{max:1e4,message:"内容不能超过10000个字符",trigger:"blur"}],status:[{required:!0,message:"请选择状态",trigger:"change"}]}));function k(){return{assessmentTypeId:void 0,questionNo:1,content:"",sort:0,status:1}}function G(s){if(!s)return"-";const e=s.replace(/<[^>]+>/g,"");return e.length>100?e.substring(0,100)+"...":e}async function J(){var s;try{const e=await Se({pageIndex:1,pageSize:100});e.code===0&&(t.assessmentTypes=((s=e.data)==null?void 0:s.list)||[])}catch(e){console.error("Failed to load assessment types:",e)}}async function _(){var s,e;t.loading=!0;try{const i={pageIndex:n.pageIndex,pageSize:n.pageSize};n.assessmentTypeId&&(i.assessmentTypeId=n.assessmentTypeId),n.questionNo&&(i.questionNo=n.questionNo),n.status!==void 0&&n.status!==""&&(i.status=Number(n.status));const r=await Fe(i);if(r.code===0)t.tableData=((s=r.data)==null?void 0:s.list)||[],t.total=((e=r.data)==null?void 0:e.total)||0;else throw new Error(r.message||"获取题目列表失败")}catch(i){const r=i instanceof Error?i.message:"获取题目列表失败";f.error(r)}finally{t.loading=!1}}async function O(s){t.mappingLoading=!0;try{const e=await Be(s);if(e.code===0)t.categoryTree=e.data||[];else throw new Error(e.message||"获取分类树失败")}catch(e){const i=e instanceof Error?e.message:"获取分类树失败";f.error(i),t.categoryTree=[]}finally{t.mappingLoading=!1}}async function W(s){try{const e=await He(s);e.code===0&&(t.selectedCategoryIds=(e.data||[]).map(i=>i.id))}catch(e){console.error("Failed to load question mappings:",e),t.selectedCategoryIds=[]}}function x(){n.pageIndex=1,_()}function X(){n.assessmentTypeId=void 0,n.questionNo=void 0,n.status=void 0,n.pageIndex=1,_()}function Y(s){n.pageSize=s,n.pageIndex=1,_()}function Z(s){n.pageIndex=s,_()}function ee(){t.isEdit=!1,t.dialogTitle="新增题目",t.formData=k(),t.dialogVisible=!0}function te(s){t.isEdit=!0,t.dialogTitle="编辑题目",t.formData={id:s.id,assessmentTypeId:s.assessmentTypeId,questionNo:s.questionNo,content:s.content||"",sort:s.sort,status:s.status},t.dialogVisible=!0}async function ae(s){try{const e=await Qe(s.id);if(e.code===0)f.success("删除成功"),t.tableData.length===1&&n.pageIndex>1&&n.pageIndex--,await _();else throw new Error(e.message||"删除失败")}catch(e){const i=e instanceof Error?e.message:"删除失败";f.error(i)}}async function se(){if(V.value){try{await V.value.validate()}catch{return}t.formLoading=!0;try{const s=t.formData,e={assessmentTypeId:s.assessmentTypeId,questionNo:s.questionNo,content:s.content,sort:s.sort,status:Number(s.status)};let i;if(t.isEdit&&s.id?i=await Ue({...e,id:s.id}):i=await Me(e),i.code===0)f.success(t.isEdit?"更新成功":"创建成功"),t.dialogVisible=!1,await _();else throw new Error(i.message||(t.isEdit?"更新失败":"创建失败"))}catch(s){const e=s instanceof Error?s.message:t.isEdit?"更新失败":"创建失败";f.error(e)}finally{t.formLoading=!1}}}function le(){var s;(s=V.value)==null||s.resetFields(),t.formData=k()}async function Q(s){t.currentQuestion=s,t.mappingDialogVisible=!0,s.assessmentTypeId&&(await O(s.assessmentTypeId),await W(s.id))}function oe(s,{checkedKeys:e}){t.selectedCategoryIds=e}async function ne(){if(t.currentQuestion){t.mappingSaving=!0;try{const s=await Ae({questionId:t.currentQuestion.id,categoryIds:t.selectedCategoryIds});if(s.code===0)f.success("映射保存成功"),t.mappingDialogVisible=!1,await _();else throw new Error(s.message||"保存映射失败")}catch(s){const e=s instanceof Error?s.message:"保存映射失败";f.error(e)}finally{t.mappingSaving=!1}}}function ie(){t.currentQuestion=null,t.categoryTree=[],t.selectedCategoryIds=[]}function re(){t.importDialogVisible=!0,t.importResult=null,t.importFile=null,t.importAssessmentTypeId=void 0}function de(s){t.importFile=s.raw||null}function ue(){t.importFile=null}async function pe(){if(!t.importFile||!t.importAssessmentTypeId){f.warning("请选择测评类型和上传文件");return}t.importLoading=!0;try{const s=new FormData;s.append("file",t.importFile),s.append("assessmentTypeId",String(t.importAssessmentTypeId));const e=await $e(s);if(e.code===0)t.importResult=e.data,e.data.successCount>0&&(f.success(`成功导入 ${e.data.successCount} 条题目`),await _()),e.data.failCount>0&&f.warning(`有 ${e.data.failCount} 条导入失败,请查看错误详情`);else throw new Error(e.message||"导入失败")}catch(s){const e=s instanceof Error?s.message:"导入失败";f.error(e)}finally{t.importLoading=!1}}function me(){const s="/templates/question_import_template.xlsx",e=document.createElement("a");e.href=s,e.download="题目导入模板.xlsx",e.click(),f.info("模板下载中...")}function fe(){var s;t.importFile=null,t.importAssessmentTypeId=void 0,t.importResult=null,(s=F.value)==null||s.clearFiles()}return Te(async()=>{await J(),await _()}),(s,e)=>{const i=d("el-icon"),r=d("el-button"),h=d("el-card"),D=d("el-option"),q=d("el-select"),g=d("el-form-item"),N=d("el-input-number"),E=d("el-form"),b=d("el-table-column"),R=d("el-tag"),ge=d("el-popconfirm"),U=d("el-table"),ce=d("el-pagination"),ye=d("el-input"),z=d("el-dialog"),_e=d("el-alert"),be=d("el-tree"),ve=d("el-upload"),we=d("el-divider"),M=ke("loading");return m(),v("div",Ke,[a(h,{class:"page-header"},{default:l(()=>[p("div",Pe,[e[19]||(e[19]=p("div",{class:"header-left"},[p("h2",{class:"page-title"},"题库管理"),p("span",{class:"page-description"},"管理测评题目,支持按测评类型筛选、分类映射、批量导入")],-1)),p("div",je,[a(r,{type:"primary",onClick:ee},{default:l(()=>[a(i,null,{default:l(()=>[a(y(xe))]),_:1}),e[17]||(e[17]=u(" 新增题目 ",-1))]),_:1}),a(r,{type:"success",onClick:re},{default:l(()=>[a(i,null,{default:l(()=>[a(y(B))]),_:1}),e[18]||(e[18]=u(" 批量导入 ",-1))]),_:1})])])]),_:1}),a(h,{class:"search-card"},{default:l(()=>[a(E,{model:n,inline:""},{default:l(()=>[a(g,{label:"测评类型"},{default:l(()=>[a(q,{modelValue:n.assessmentTypeId,"onUpdate:modelValue":e[0]||(e[0]=o=>n.assessmentTypeId=o),placeholder:"请选择测评类型",clearable:"",style:{width:"200px"},onChange:x},{default:l(()=>[(m(!0),v(L,null,S(t.assessmentTypes,o=>(m(),C(D,{key:o.id,label:o.name,value:o.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(g,{label:"题号"},{default:l(()=>[a(N,{modelValue:n.questionNo,"onUpdate:modelValue":e[1]||(e[1]=o=>n.questionNo=o),placeholder:"请输入题号",min:1,controls:!1,style:{width:"120px"},onKeyup:he(x,["enter"])},null,8,["modelValue"])]),_:1}),a(g,{label:"状态"},{default:l(()=>[a(y(H),{modelValue:n.status,"onUpdate:modelValue":e[2]||(e[2]=o=>n.status=o),type:"common_status",placeholder:"请选择状态",clearable:""},null,8,["modelValue"])]),_:1}),a(g,null,{default:l(()=>[a(r,{type:"primary",onClick:x},{default:l(()=>[a(i,null,{default:l(()=>[a(y(De))]),_:1}),e[20]||(e[20]=u(" 搜索 ",-1))]),_:1}),a(r,{onClick:X},{default:l(()=>[a(i,null,{default:l(()=>[a(y(qe))]),_:1}),e[21]||(e[21]=u(" 重置 ",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),$((m(),C(h,{class:"table-card"},{default:l(()=>[a(U,{ref_key:"tableRef",ref:K,data:t.tableData,"row-key":"id",stripe:""},{default:l(()=>[a(b,{prop:"questionNo",label:"题号",width:"80",align:"center"}),a(b,{label:"内容预览","min-width":"300"},{default:l(({row:o})=>[p("div",{class:"content-preview",innerHTML:G(o.content)},null,8,Ge)]),_:1}),a(b,{prop:"assessmentTypeName",label:"测评类型",width:"150","show-overflow-tooltip":""}),a(b,{label:"分类映射",width:"120",align:"center"},{default:l(({row:o})=>[a(r,{type:"primary",link:"",size:"small",onClick:c=>Q(o)},{default:l(()=>[p("span",Je,w(o.categoryCount||0),1),e[22]||(e[22]=p("span",null,"个分类",-1))]),_:2},1032,["onClick"])]),_:1}),a(b,{label:"状态",width:"100",align:"center"},{default:l(({row:o})=>[a(R,{type:o.status===1?"success":"info"},{default:l(()=>[u(w(o.status===1?"启用":"禁用"),1)]),_:2},1032,["type"])]),_:1}),a(b,{label:"操作",width:"180",fixed:"right",align:"center"},{default:l(({row:o})=>[a(r,{type:"primary",link:"",size:"small",onClick:c=>te(o)},{default:l(()=>[a(i,null,{default:l(()=>[a(y(Ne))]),_:1}),e[23]||(e[23]=u(" 编辑 ",-1))]),_:1},8,["onClick"]),a(r,{type:"warning",link:"",size:"small",onClick:c=>Q(o)},{default:l(()=>[a(i,null,{default:l(()=>[a(y(Ee))]),_:1}),e[24]||(e[24]=u(" 映射 ",-1))]),_:1},8,["onClick"]),a(ge,{title:"确定要删除这道题目吗?","confirm-button-text":"确定","cancel-button-text":"取消",onConfirm:c=>ae(o)},{reference:l(()=>[a(r,{type:"danger",link:"",size:"small"},{default:l(()=>[a(i,null,{default:l(()=>[a(y(Re))]),_:1}),e[25]||(e[25]=u(" 删除 ",-1))]),_:1})]),_:1},8,["onConfirm"])]),_:1})]),_:1},8,["data"]),p("div",Oe,[a(ce,{"current-page":n.pageIndex,"onUpdate:currentPage":e[3]||(e[3]=o=>n.pageIndex=o),"page-size":n.pageSize,"onUpdate:pageSize":e[4]||(e[4]=o=>n.pageSize=o),"page-sizes":[10,20,50,100],total:t.total,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:Y,onCurrentChange:Z},null,8,["current-page","page-size","total"])])]),_:1})),[[M,t.loading]]),a(z,{modelValue:t.dialogVisible,"onUpdate:modelValue":e[11]||(e[11]=o=>t.dialogVisible=o),title:t.dialogTitle,width:"700px","close-on-click-modal":!1,onClosed:le},{footer:l(()=>[a(r,{onClick:e[10]||(e[10]=o=>t.dialogVisible=!1)},{default:l(()=>[...e[26]||(e[26]=[u("取消",-1)])]),_:1}),a(r,{type:"primary",loading:t.formLoading,onClick:se},{default:l(()=>[...e[27]||(e[27]=[u(" 确定 ",-1)])]),_:1},8,["loading"])]),default:l(()=>[a(E,{ref_key:"formRef",ref:V,model:t.formData,rules:j.value,"label-width":"100px","label-position":"right"},{default:l(()=>[a(g,{label:"测评类型",prop:"assessmentTypeId"},{default:l(()=>[a(q,{modelValue:t.formData.assessmentTypeId,"onUpdate:modelValue":e[5]||(e[5]=o=>t.formData.assessmentTypeId=o),placeholder:"请选择测评类型",style:{width:"100%"}},{default:l(()=>[(m(!0),v(L,null,S(t.assessmentTypes,o=>(m(),C(D,{key:o.id,label:o.name,value:o.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(g,{label:"题号",prop:"questionNo"},{default:l(()=>[a(N,{modelValue:t.formData.questionNo,"onUpdate:modelValue":e[6]||(e[6]=o=>t.formData.questionNo=o),min:1,max:9999,placeholder:"请输入题号",style:{width:"200px"}},null,8,["modelValue"])]),_:1}),a(g,{label:"题目内容",prop:"content"},{default:l(()=>[a(ye,{modelValue:t.formData.content,"onUpdate:modelValue":e[7]||(e[7]=o=>t.formData.content=o),type:"textarea",placeholder:"请输入题目内容(支持HTML格式)",rows:8,maxlength:"10000","show-word-limit":""},null,8,["modelValue"])]),_:1}),a(g,{label:"排序",prop:"sort"},{default:l(()=>[a(N,{modelValue:t.formData.sort,"onUpdate:modelValue":e[8]||(e[8]=o=>t.formData.sort=o),min:0,max:9999,placeholder:"数值越小越靠前"},null,8,["modelValue"])]),_:1}),a(g,{label:"状态",prop:"status",required:""},{default:l(()=>[a(y(H),{modelValue:t.formData.status,"onUpdate:modelValue":e[9]||(e[9]=o=>t.formData.status=o),type:"common_status",placeholder:"请选择状态"},null,8,["modelValue"])]),_:1})]),_:1},8,["model","rules"])]),_:1},8,["modelValue","title"]),a(z,{modelValue:t.mappingDialogVisible,"onUpdate:modelValue":e[13]||(e[13]=o=>t.mappingDialogVisible=o),title:"分类映射",width:"600px","close-on-click-modal":!1,onClosed:ie},{footer:l(()=>[a(r,{onClick:e[12]||(e[12]=o=>t.mappingDialogVisible=!1)},{default:l(()=>[...e[29]||(e[29]=[u("取消",-1)])]),_:1}),a(r,{type:"primary",loading:t.mappingSaving,onClick:ne},{default:l(()=>[...e[30]||(e[30]=[u(" 保存映射 ",-1)])]),_:1},8,["loading"])]),default:l(()=>{var o;return[t.currentQuestion?(m(),v("div",We,[e[28]||(e[28]=p("span",null,"题目:",-1)),p("span",Xe,"第 "+w(t.currentQuestion.questionNo)+" 题",1),p("span",Ye,"("+w(t.currentQuestion.assessmentTypeName)+")",1)])):T("",!0),$((m(),v("div",Ze,[(o=t.currentQuestion)!=null&&o.assessmentTypeId?(m(),C(be,{key:1,ref_key:"categoryTreeRef",ref:P,data:t.categoryTree,props:{label:"name",children:"children"},"node-key":"id","show-checkbox":"","default-expand-all":"","default-checked-keys":t.selectedCategoryIds,onCheck:oe},{default:l(({node:c,data:Ce})=>[p("span",et,[p("span",null,w(c.label),1),p("span",tt,"("+w(Ce.code)+")",1)])]),_:1},8,["data","default-checked-keys"])):(m(),C(_e,{key:0,title:"请先选择测评类型",type:"warning",closable:!1,"show-icon":""}))])),[[M,t.mappingLoading]])]}),_:1},8,["modelValue"]),a(z,{modelValue:t.importDialogVisible,"onUpdate:modelValue":e[16]||(e[16]=o=>t.importDialogVisible=o),title:"批量导入题目",width:"600px","close-on-click-modal":!1,onClosed:fe},{footer:l(()=>[a(r,{onClick:e[15]||(e[15]=o=>t.importDialogVisible=!1)},{default:l(()=>[...e[36]||(e[36]=[u("关闭",-1)])]),_:1}),a(r,{type:"primary",loading:t.importLoading,disabled:!t.importFile||!t.importAssessmentTypeId,onClick:pe},{default:l(()=>[...e[37]||(e[37]=[u(" 开始导入 ",-1)])]),_:1},8,["loading","disabled"])]),default:l(()=>{var o;return[a(E,{"label-width":"100px"},{default:l(()=>[a(g,{label:"测评类型",required:""},{default:l(()=>[a(q,{modelValue:t.importAssessmentTypeId,"onUpdate:modelValue":e[14]||(e[14]=c=>t.importAssessmentTypeId=c),placeholder:"请选择测评类型",style:{width:"100%"}},{default:l(()=>[(m(!0),v(L,null,S(t.assessmentTypes,c=>(m(),C(D,{key:c.id,label:c.name,value:c.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),a(g,{label:"Excel文件",required:""},{default:l(()=>[a(ve,{ref_key:"uploadRef",ref:F,"auto-upload":!1,limit:1,accept:".xlsx,.xls","on-change":de,"on-remove":ue},{trigger:l(()=>[a(r,{type:"primary"},{default:l(()=>[a(i,null,{default:l(()=>[a(y(B))]),_:1}),e[31]||(e[31]=u(" 选择文件 ",-1))]),_:1})]),tip:l(()=>[...e[32]||(e[32]=[p("div",{class:"upload-tip"}," 支持 .xlsx, .xls 格式,文件大小不超过 10MB ",-1)])]),_:1},512)]),_:1}),a(g,{label:"模板下载"},{default:l(()=>[a(r,{type:"text",onClick:me},{default:l(()=>[a(i,null,{default:l(()=>[a(y(ze))]),_:1}),e[33]||(e[33]=u(" 下载导入模板 ",-1))]),_:1})]),_:1})]),_:1}),t.importResult?(m(),v("div",at,[a(we,{"content-position":"left"},{default:l(()=>[...e[34]||(e[34]=[u("导入结果",-1)])]),_:1}),p("div",st,[a(R,{type:"success"},{default:l(()=>[u("成功:"+w(t.importResult.successCount)+" 条",1)]),_:1}),t.importResult.failCount>0?(m(),C(R,{key:0,type:"danger"},{default:l(()=>[u(" 失败:"+w(t.importResult.failCount)+" 条 ",1)]),_:1})):T("",!0)]),((o=t.importResult.errors)==null?void 0:o.length)>0?(m(),v("div",lt,[e[35]||(e[35]=p("div",{class:"error-title"},"错误详情:",-1)),a(U,{data:t.importResult.errors,"max-height":"200",size:"small"},{default:l(()=>[a(b,{prop:"row",label:"行号",width:"80",align:"center"}),a(b,{prop:"message",label:"错误信息"})]),_:1},8,["data"])])):T("",!0)])):T("",!0)]}),_:1},8,["modelValue"])])}}}),dt=Le(ot,[["__scopeId","data-v-6f8d531d"]]);export{dt as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/miniprogram-BnX9rjn1.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/miniprogram-CugR1aVC.js similarity index 97% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/miniprogram-BnX9rjn1.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/miniprogram-CugR1aVC.js index ffa628d..dcc7d4f 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/miniprogram-BnX9rjn1.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/miniprogram-CugR1aVC.js @@ -1 +1 @@ -import{d as E,a as z,o as N,g as d,B as $,c as v,k as p,e as t,C as q,w as o,b as s,z as D,G as V,F,y as G,t as m,x as L,l as C,I as R,D as T,E as f,W,_ as j}from"./index-BsIaGxbR.js";import{g as H,u as J}from"./config-inW4xTKX.js";const K={class:"miniprogram-config-container"},O={class:"card-header"},P={class:"item-header"},Q={class:"item-title"},X={class:"item-actions"},Y={key:1,class:"form-actions"},Z=E({__name:"miniprogram",setup(ee){const a=z({loading:!1,saving:!1,formData:{miniprograms:[]}});async function k(){a.loading=!0;try{const r=await H();r.code===0&&r.data&&(a.formData=r.data,a.formData.miniprograms||(a.formData.miniprograms=[]))}catch(r){console.error("加载小程序配置失败:",r),f.error("加载配置失败")}finally{a.loading=!1}}function b(){const r=a.formData.miniprograms.length===0;a.formData.miniprograms.push({name:"",appid:"",appsecret:"",order_prefix:"",is_default:r?1:0,merchants:[]})}async function h(r){const e=a.formData.miniprograms[r];await W.confirm(`确定删除小程序「${e.name||"未命名"}」吗?`,"提示",{type:"warning"});const l=e.is_default===1;a.formData.miniprograms.splice(r,1),l&&a.formData.miniprograms.length>0&&(a.formData.miniprograms[0].is_default=1)}function A(r){a.formData.miniprograms.forEach((e,l)=>{e.is_default=l===r?1:0})}async function x(){var r,e;for(const l of a.formData.miniprograms){if(!((r=l.appid)!=null&&r.trim())){f.warning("请填写所有小程序的AppId");return}if(!((e=l.appsecret)!=null&&e.trim())){f.warning("请填写所有小程序的AppSecret");return}}a.saving=!0;try{const l=await J(a.formData);l.code===0?f.success("保存成功"):f.error(l.message||"保存失败")}catch(l){console.error("保存小程序配置失败:",l),f.error("保存失败")}finally{a.saving=!1}}function M(){k()}return N(()=>{k()}),(r,e)=>{const l=d("el-card"),c=d("el-button"),U=d("el-empty"),I=d("el-tag"),u=d("el-input"),g=d("el-form-item"),_=d("el-col"),w=d("el-row"),S=d("el-form"),B=$("loading");return p(),v("div",K,[t(l,{class:"page-header"},{default:o(()=>[...e[0]||(e[0]=[s("div",{class:"header-content"},[s("h2",{class:"page-title"},"小程序配置"),s("span",{class:"page-description"},"配置微信小程序的AppId和AppSecret,用于微信登录和授权")],-1)])]),_:1}),q((p(),D(l,{class:"config-form-card"},{header:o(()=>[s("div",O,[e[2]||(e[2]=s("span",null,"小程序列表",-1)),t(c,{type:"primary",icon:C(T),onClick:b},{default:o(()=>[...e[1]||(e[1]=[m("添加小程序",-1)])]),_:1},8,["icon"])])]),default:o(()=>[a.formData.miniprograms.length===0?(p(),D(U,{key:0,description:"暂无小程序配置,请点击上方按钮添加"})):V("",!0),(p(!0),v(F,null,G(a.formData.miniprograms,(n,y)=>(p(),v("div",{key:y,class:"miniprogram-item"},[s("div",P,[s("span",Q,[n.is_default===1?(p(),D(I,{key:0,type:"success",size:"small"},{default:o(()=>[...e[3]||(e[3]=[m("默认",-1)])]),_:1})):V("",!0),m(" "+L(n.name||`小程序 ${y+1}`),1)]),s("div",X,[n.is_default!==1?(p(),D(c,{key:0,type:"primary",link:"",size:"small",onClick:i=>A(y)},{default:o(()=>[...e[4]||(e[4]=[m("设为默认",-1)])]),_:1},8,["onClick"])):V("",!0),t(c,{type:"danger",link:"",size:"small",icon:C(R),onClick:i=>h(y)},{default:o(()=>[...e[5]||(e[5]=[m("删除",-1)])]),_:1},8,["icon","onClick"])])]),t(S,{"label-width":"140px","label-position":"right"},{default:o(()=>[t(w,{gutter:20},{default:o(()=>[t(_,{span:12},{default:o(()=>[t(g,{label:"小程序名称",required:""},{default:o(()=>[t(u,{modelValue:n.name,"onUpdate:modelValue":i=>n.name=i,placeholder:"请输入小程序名称",clearable:""},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024)]),_:2},1024),t(_,{span:12},{default:o(()=>[t(g,{label:"订单前缀"},{default:o(()=>[t(u,{modelValue:n.order_prefix,"onUpdate:modelValue":i=>n.order_prefix=i,placeholder:"2位字符",maxlength:"2",clearable:""},null,8,["modelValue","onUpdate:modelValue"]),e[6]||(e[6]=s("div",{class:"form-item-tip"},"用于区分不同小程序的订单,必须2位",-1))]),_:2},1024)]),_:2},1024)]),_:2},1024),t(w,{gutter:20},{default:o(()=>[t(_,{span:12},{default:o(()=>[t(g,{label:"AppId",required:""},{default:o(()=>[t(u,{modelValue:n.appid,"onUpdate:modelValue":i=>n.appid=i,placeholder:"请输入小程序AppId",clearable:""},null,8,["modelValue","onUpdate:modelValue"]),e[7]||(e[7]=s("div",{class:"form-item-tip"},"微信小程序的AppId,在微信公众平台获取",-1))]),_:2},1024)]),_:2},1024),t(_,{span:12},{default:o(()=>[t(g,{label:"AppSecret",required:""},{default:o(()=>[t(u,{modelValue:n.appsecret,"onUpdate:modelValue":i=>n.appsecret=i,placeholder:"请输入小程序AppSecret",type:"password","show-password":"",clearable:""},null,8,["modelValue","onUpdate:modelValue"]),e[8]||(e[8]=s("div",{class:"form-item-tip"},"微信小程序的AppSecret,请妥善保管",-1))]),_:2},1024)]),_:2},1024)]),_:2},1024)]),_:2},1024)]))),128)),a.formData.miniprograms.length>0?(p(),v("div",Y,[t(c,{type:"primary",loading:a.saving,onClick:x},{default:o(()=>[...e[9]||(e[9]=[m("保存配置",-1)])]),_:1},8,["loading"]),t(c,{onClick:M},{default:o(()=>[...e[10]||(e[10]=[m("重置",-1)])]),_:1})])):V("",!0)]),_:1})),[[B,a.loading]])])}}}),oe=j(Z,[["__scopeId","data-v-f48a87e9"]]);export{oe as default}; +import{d as E,a as z,o as N,g as d,B as $,c as v,k as p,e as t,C as q,w as o,b as s,z as D,G as V,F,y as G,t as m,x as L,l as C,I as R,D as T,E as f,W,_ as j}from"./index-CJcwRKyx.js";import{g as H,u as J}from"./config-rv4LKgOV.js";const K={class:"miniprogram-config-container"},O={class:"card-header"},P={class:"item-header"},Q={class:"item-title"},X={class:"item-actions"},Y={key:1,class:"form-actions"},Z=E({__name:"miniprogram",setup(ee){const a=z({loading:!1,saving:!1,formData:{miniprograms:[]}});async function k(){a.loading=!0;try{const r=await H();r.code===0&&r.data&&(a.formData=r.data,a.formData.miniprograms||(a.formData.miniprograms=[]))}catch(r){console.error("加载小程序配置失败:",r),f.error("加载配置失败")}finally{a.loading=!1}}function b(){const r=a.formData.miniprograms.length===0;a.formData.miniprograms.push({name:"",appid:"",appsecret:"",order_prefix:"",is_default:r?1:0,merchants:[]})}async function h(r){const e=a.formData.miniprograms[r];await W.confirm(`确定删除小程序「${e.name||"未命名"}」吗?`,"提示",{type:"warning"});const l=e.is_default===1;a.formData.miniprograms.splice(r,1),l&&a.formData.miniprograms.length>0&&(a.formData.miniprograms[0].is_default=1)}function A(r){a.formData.miniprograms.forEach((e,l)=>{e.is_default=l===r?1:0})}async function x(){var r,e;for(const l of a.formData.miniprograms){if(!((r=l.appid)!=null&&r.trim())){f.warning("请填写所有小程序的AppId");return}if(!((e=l.appsecret)!=null&&e.trim())){f.warning("请填写所有小程序的AppSecret");return}}a.saving=!0;try{const l=await J(a.formData);l.code===0?f.success("保存成功"):f.error(l.message||"保存失败")}catch(l){console.error("保存小程序配置失败:",l),f.error("保存失败")}finally{a.saving=!1}}function M(){k()}return N(()=>{k()}),(r,e)=>{const l=d("el-card"),c=d("el-button"),U=d("el-empty"),I=d("el-tag"),u=d("el-input"),g=d("el-form-item"),_=d("el-col"),w=d("el-row"),S=d("el-form"),B=$("loading");return p(),v("div",K,[t(l,{class:"page-header"},{default:o(()=>[...e[0]||(e[0]=[s("div",{class:"header-content"},[s("h2",{class:"page-title"},"小程序配置"),s("span",{class:"page-description"},"配置微信小程序的AppId和AppSecret,用于微信登录和授权")],-1)])]),_:1}),q((p(),D(l,{class:"config-form-card"},{header:o(()=>[s("div",O,[e[2]||(e[2]=s("span",null,"小程序列表",-1)),t(c,{type:"primary",icon:C(T),onClick:b},{default:o(()=>[...e[1]||(e[1]=[m("添加小程序",-1)])]),_:1},8,["icon"])])]),default:o(()=>[a.formData.miniprograms.length===0?(p(),D(U,{key:0,description:"暂无小程序配置,请点击上方按钮添加"})):V("",!0),(p(!0),v(F,null,G(a.formData.miniprograms,(n,y)=>(p(),v("div",{key:y,class:"miniprogram-item"},[s("div",P,[s("span",Q,[n.is_default===1?(p(),D(I,{key:0,type:"success",size:"small"},{default:o(()=>[...e[3]||(e[3]=[m("默认",-1)])]),_:1})):V("",!0),m(" "+L(n.name||`小程序 ${y+1}`),1)]),s("div",X,[n.is_default!==1?(p(),D(c,{key:0,type:"primary",link:"",size:"small",onClick:i=>A(y)},{default:o(()=>[...e[4]||(e[4]=[m("设为默认",-1)])]),_:1},8,["onClick"])):V("",!0),t(c,{type:"danger",link:"",size:"small",icon:C(R),onClick:i=>h(y)},{default:o(()=>[...e[5]||(e[5]=[m("删除",-1)])]),_:1},8,["icon","onClick"])])]),t(S,{"label-width":"140px","label-position":"right"},{default:o(()=>[t(w,{gutter:20},{default:o(()=>[t(_,{span:12},{default:o(()=>[t(g,{label:"小程序名称",required:""},{default:o(()=>[t(u,{modelValue:n.name,"onUpdate:modelValue":i=>n.name=i,placeholder:"请输入小程序名称",clearable:""},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024)]),_:2},1024),t(_,{span:12},{default:o(()=>[t(g,{label:"订单前缀"},{default:o(()=>[t(u,{modelValue:n.order_prefix,"onUpdate:modelValue":i=>n.order_prefix=i,placeholder:"2位字符",maxlength:"2",clearable:""},null,8,["modelValue","onUpdate:modelValue"]),e[6]||(e[6]=s("div",{class:"form-item-tip"},"用于区分不同小程序的订单,必须2位",-1))]),_:2},1024)]),_:2},1024)]),_:2},1024),t(w,{gutter:20},{default:o(()=>[t(_,{span:12},{default:o(()=>[t(g,{label:"AppId",required:""},{default:o(()=>[t(u,{modelValue:n.appid,"onUpdate:modelValue":i=>n.appid=i,placeholder:"请输入小程序AppId",clearable:""},null,8,["modelValue","onUpdate:modelValue"]),e[7]||(e[7]=s("div",{class:"form-item-tip"},"微信小程序的AppId,在微信公众平台获取",-1))]),_:2},1024)]),_:2},1024),t(_,{span:12},{default:o(()=>[t(g,{label:"AppSecret",required:""},{default:o(()=>[t(u,{modelValue:n.appsecret,"onUpdate:modelValue":i=>n.appsecret=i,placeholder:"请输入小程序AppSecret",type:"password","show-password":"",clearable:""},null,8,["modelValue","onUpdate:modelValue"]),e[8]||(e[8]=s("div",{class:"form-item-tip"},"微信小程序的AppSecret,请妥善保管",-1))]),_:2},1024)]),_:2},1024)]),_:2},1024)]),_:2},1024)]))),128)),a.formData.miniprograms.length>0?(p(),v("div",Y,[t(c,{type:"primary",loading:a.saving,onClick:x},{default:o(()=>[...e[9]||(e[9]=[m("保存配置",-1)])]),_:1},8,["loading"]),t(c,{onClick:M},{default:o(()=>[...e[10]||(e[10]=[m("重置",-1)])]),_:1})])):V("",!0)]),_:1})),[[B,a.loading]])])}}}),oe=j(Z,[["__scopeId","data-v-f48a87e9"]]);export{oe as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/payment-CAhZ9vHc.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/payment-1vnbCmrB.js similarity index 98% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/payment-CAhZ9vHc.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/payment-1vnbCmrB.js index 3473447..c16c615 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/payment-CAhZ9vHc.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/payment-1vnbCmrB.js @@ -1 +1 @@ -import{d as q,a as F,o as S,g as s,B as G,c as m,k as c,e,C as L,w as a,b as p,z as C,G as g,F as v,y as R,t as r,x as k,l as x,I as T,D as j,E as y,W as H,_ as J}from"./index-BsIaGxbR.js";import{a as K,b as O}from"./config-inW4xTKX.js";const Q={class:"payment-config-container"},X={class:"card-header"},Y={class:"item-header"},Z={class:"item-title"},ee={class:"item-actions"},ae={key:1,class:"form-actions"},le=q({__name:"payment",setup(oe){const n=F({loading:!1,saving:!1,formData:{merchants:[]}});async function w(){n.loading=!0;try{const d=await K();d.code===0&&d.data&&(n.formData=d.data,n.formData.merchants||(n.formData.merchants=[]))}catch(d){console.error("加载支付配置失败:",d),y.error("加载配置失败")}finally{n.loading=!1}}function I(){n.formData.merchants.push({name:"",mch_id:"",order_prefix:"",pay_version:"V3",api_v3_key:"",cert_serial_no:"",private_key_path:"",wechat_public_key_id:"",wechat_public_key_path:"",api_key:"",cert_path:"",is_enabled:"1"})}async function P(d){const l=n.formData.merchants[d];await H.confirm(`确定删除商户「${l.name||"未命名"}」吗?`,"提示",{type:"warning"}),n.formData.merchants.splice(d,1)}function B(d){d.is_enabled=d.is_enabled==="1"?"0":"1"}async function A(){var d;for(const l of n.formData.merchants)if(!((d=l.mch_id)!=null&&d.trim())){y.warning("请填写所有商户的商户号");return}n.saving=!0;try{const l=await O(n.formData);l.code===0?y.success("保存成功"):y.error(l.message||"保存失败")}catch(l){console.error("保存支付配置失败:",l),y.error("保存失败")}finally{n.saving=!1}}function E(){w()}return S(()=>{w()}),(d,l)=>{const U=s("el-card"),f=s("el-button"),M=s("el-empty"),z=s("el-tag"),_=s("el-input"),i=s("el-form-item"),u=s("el-col"),V=s("el-row"),h=s("el-radio"),N=s("el-radio-group"),D=s("el-divider"),$=s("el-form"),W=G("loading");return c(),m("div",Q,[e(U,{class:"page-header"},{default:a(()=>[...l[0]||(l[0]=[p("div",{class:"header-content"},[p("h2",{class:"page-title"},"微信支付配置"),p("span",{class:"page-description"},"配置微信支付商户信息,支持V2和V3版本")],-1)])]),_:1}),L((c(),C(U,{class:"config-form-card"},{header:a(()=>[p("div",X,[l[2]||(l[2]=p("span",null,"商户列表",-1)),e(f,{type:"primary",icon:x(j),onClick:I},{default:a(()=>[...l[1]||(l[1]=[r("添加商户",-1)])]),_:1},8,["icon"])])]),default:a(()=>[n.formData.merchants.length===0?(c(),C(M,{key:0,description:"暂无支付商户配置,请点击上方按钮添加"})):g("",!0),(c(!0),m(v,null,R(n.formData.merchants,(o,b)=>(c(),m("div",{key:b,class:"merchant-item"},[p("div",Y,[p("span",Z,[e(z,{type:o.is_enabled==="1"?"success":"info",size:"small"},{default:a(()=>[r(k(o.is_enabled==="1"?"启用":"禁用"),1)]),_:2},1032,["type"]),r(" "+k(o.name||`商户 ${b+1}`),1)]),p("div",ee,[e(f,{type:o.is_enabled==="1"?"warning":"success",link:"",size:"small",onClick:t=>B(o)},{default:a(()=>[r(k(o.is_enabled==="1"?"禁用":"启用"),1)]),_:2},1032,["type","onClick"]),e(f,{type:"danger",link:"",size:"small",icon:x(T),onClick:t=>P(b)},{default:a(()=>[...l[3]||(l[3]=[r("删除",-1)])]),_:1},8,["icon","onClick"])])]),e($,{"label-width":"160px","label-position":"right"},{default:a(()=>[e(V,{gutter:20},{default:a(()=>[e(u,{span:12},{default:a(()=>[e(i,{label:"商户名称",required:""},{default:a(()=>[e(_,{modelValue:o.name,"onUpdate:modelValue":t=>o.name=t,placeholder:"请输入商户名称",clearable:""},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024)]),_:2},1024),e(u,{span:12},{default:a(()=>[e(i,{label:"商户号",required:""},{default:a(()=>[e(_,{modelValue:o.mch_id,"onUpdate:modelValue":t=>o.mch_id=t,placeholder:"请输入微信支付商户号",clearable:""},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024)]),_:2},1024)]),_:2},1024),e(V,{gutter:20},{default:a(()=>[e(u,{span:12},{default:a(()=>[e(i,{label:"订单前缀"},{default:a(()=>[e(_,{modelValue:o.order_prefix,"onUpdate:modelValue":t=>o.order_prefix=t,placeholder:"3位字符",maxlength:"3",clearable:""},null,8,["modelValue","onUpdate:modelValue"]),l[4]||(l[4]=p("div",{class:"form-item-tip"},"用于区分不同商户的订单,必须3位",-1))]),_:2},1024)]),_:2},1024),e(u,{span:12},{default:a(()=>[e(i,{label:"支付版本"},{default:a(()=>[e(N,{modelValue:o.pay_version,"onUpdate:modelValue":t=>o.pay_version=t},{default:a(()=>[e(h,{value:"V3"},{default:a(()=>[...l[5]||(l[5]=[r("V3(推荐)",-1)])]),_:1}),e(h,{value:"V2"},{default:a(()=>[...l[6]||(l[6]=[r("V2",-1)])]),_:1})]),_:1},8,["modelValue","onUpdate:modelValue"])]),_:2},1024)]),_:2},1024)]),_:2},1024),o.pay_version==="V3"?(c(),m(v,{key:0},[e(D,{"content-position":"left"},{default:a(()=>[...l[7]||(l[7]=[r("V3 支付配置",-1)])]),_:1}),e(V,{gutter:20},{default:a(()=>[e(u,{span:12},{default:a(()=>[e(i,{label:"APIv3密钥"},{default:a(()=>[e(_,{modelValue:o.api_v3_key,"onUpdate:modelValue":t=>o.api_v3_key=t,placeholder:"32位APIv3密钥",type:"password","show-password":"",clearable:""},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024)]),_:2},1024),e(u,{span:12},{default:a(()=>[e(i,{label:"证书序列号"},{default:a(()=>[e(_,{modelValue:o.cert_serial_no,"onUpdate:modelValue":t=>o.cert_serial_no=t,placeholder:"商户API证书序列号",clearable:""},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024)]),_:2},1024)]),_:2},1024),e(V,{gutter:20},{default:a(()=>[e(u,{span:12},{default:a(()=>[e(i,{label:"商户私钥路径"},{default:a(()=>[e(_,{modelValue:o.private_key_path,"onUpdate:modelValue":t=>o.private_key_path=t,placeholder:"apiclient_key.pem 文件路径",clearable:""},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024)]),_:2},1024),e(u,{span:12},{default:a(()=>[e(i,{label:"微信支付公钥ID"},{default:a(()=>[e(_,{modelValue:o.wechat_public_key_id,"onUpdate:modelValue":t=>o.wechat_public_key_id=t,placeholder:"微信支付公钥ID",clearable:""},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024)]),_:2},1024)]),_:2},1024),e(i,{label:"微信支付公钥路径"},{default:a(()=>[e(_,{modelValue:o.wechat_public_key_path,"onUpdate:modelValue":t=>o.wechat_public_key_path=t,placeholder:"pub_key.pem 文件路径",clearable:""},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024)],64)):g("",!0),o.pay_version==="V2"?(c(),m(v,{key:1},[e(D,{"content-position":"left"},{default:a(()=>[...l[8]||(l[8]=[r("V2 支付配置",-1)])]),_:1}),e(V,{gutter:20},{default:a(()=>[e(u,{span:12},{default:a(()=>[e(i,{label:"API密钥"},{default:a(()=>[e(_,{modelValue:o.api_key,"onUpdate:modelValue":t=>o.api_key=t,placeholder:"微信支付API密钥",type:"password","show-password":"",clearable:""},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024)]),_:2},1024),e(u,{span:12},{default:a(()=>[e(i,{label:"证书路径"},{default:a(()=>[e(_,{modelValue:o.cert_path,"onUpdate:modelValue":t=>o.cert_path=t,placeholder:"apiclient_cert.p12 文件路径",clearable:""},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024)]),_:2},1024)]),_:2},1024)],64)):g("",!0)]),_:2},1024)]))),128)),n.formData.merchants.length>0?(c(),m("div",ae,[e(f,{type:"primary",loading:n.saving,onClick:A},{default:a(()=>[...l[9]||(l[9]=[r("保存配置",-1)])]),_:1},8,["loading"]),e(f,{onClick:E},{default:a(()=>[...l[10]||(l[10]=[r("重置",-1)])]),_:1})])):g("",!0)]),_:1})),[[W,n.loading]])])}}}),de=J(le,[["__scopeId","data-v-f733ad45"]]);export{de as default}; +import{d as q,a as F,o as S,g as s,B as G,c as m,k as c,e,C as L,w as a,b as p,z as C,G as g,F as v,y as R,t as r,x as k,l as x,I as T,D as j,E as y,W as H,_ as J}from"./index-CJcwRKyx.js";import{a as K,b as O}from"./config-rv4LKgOV.js";const Q={class:"payment-config-container"},X={class:"card-header"},Y={class:"item-header"},Z={class:"item-title"},ee={class:"item-actions"},ae={key:1,class:"form-actions"},le=q({__name:"payment",setup(oe){const n=F({loading:!1,saving:!1,formData:{merchants:[]}});async function w(){n.loading=!0;try{const d=await K();d.code===0&&d.data&&(n.formData=d.data,n.formData.merchants||(n.formData.merchants=[]))}catch(d){console.error("加载支付配置失败:",d),y.error("加载配置失败")}finally{n.loading=!1}}function I(){n.formData.merchants.push({name:"",mch_id:"",order_prefix:"",pay_version:"V3",api_v3_key:"",cert_serial_no:"",private_key_path:"",wechat_public_key_id:"",wechat_public_key_path:"",api_key:"",cert_path:"",is_enabled:"1"})}async function P(d){const l=n.formData.merchants[d];await H.confirm(`确定删除商户「${l.name||"未命名"}」吗?`,"提示",{type:"warning"}),n.formData.merchants.splice(d,1)}function B(d){d.is_enabled=d.is_enabled==="1"?"0":"1"}async function A(){var d;for(const l of n.formData.merchants)if(!((d=l.mch_id)!=null&&d.trim())){y.warning("请填写所有商户的商户号");return}n.saving=!0;try{const l=await O(n.formData);l.code===0?y.success("保存成功"):y.error(l.message||"保存失败")}catch(l){console.error("保存支付配置失败:",l),y.error("保存失败")}finally{n.saving=!1}}function E(){w()}return S(()=>{w()}),(d,l)=>{const U=s("el-card"),f=s("el-button"),M=s("el-empty"),z=s("el-tag"),_=s("el-input"),i=s("el-form-item"),u=s("el-col"),V=s("el-row"),h=s("el-radio"),N=s("el-radio-group"),D=s("el-divider"),$=s("el-form"),W=G("loading");return c(),m("div",Q,[e(U,{class:"page-header"},{default:a(()=>[...l[0]||(l[0]=[p("div",{class:"header-content"},[p("h2",{class:"page-title"},"微信支付配置"),p("span",{class:"page-description"},"配置微信支付商户信息,支持V2和V3版本")],-1)])]),_:1}),L((c(),C(U,{class:"config-form-card"},{header:a(()=>[p("div",X,[l[2]||(l[2]=p("span",null,"商户列表",-1)),e(f,{type:"primary",icon:x(j),onClick:I},{default:a(()=>[...l[1]||(l[1]=[r("添加商户",-1)])]),_:1},8,["icon"])])]),default:a(()=>[n.formData.merchants.length===0?(c(),C(M,{key:0,description:"暂无支付商户配置,请点击上方按钮添加"})):g("",!0),(c(!0),m(v,null,R(n.formData.merchants,(o,b)=>(c(),m("div",{key:b,class:"merchant-item"},[p("div",Y,[p("span",Z,[e(z,{type:o.is_enabled==="1"?"success":"info",size:"small"},{default:a(()=>[r(k(o.is_enabled==="1"?"启用":"禁用"),1)]),_:2},1032,["type"]),r(" "+k(o.name||`商户 ${b+1}`),1)]),p("div",ee,[e(f,{type:o.is_enabled==="1"?"warning":"success",link:"",size:"small",onClick:t=>B(o)},{default:a(()=>[r(k(o.is_enabled==="1"?"禁用":"启用"),1)]),_:2},1032,["type","onClick"]),e(f,{type:"danger",link:"",size:"small",icon:x(T),onClick:t=>P(b)},{default:a(()=>[...l[3]||(l[3]=[r("删除",-1)])]),_:1},8,["icon","onClick"])])]),e($,{"label-width":"160px","label-position":"right"},{default:a(()=>[e(V,{gutter:20},{default:a(()=>[e(u,{span:12},{default:a(()=>[e(i,{label:"商户名称",required:""},{default:a(()=>[e(_,{modelValue:o.name,"onUpdate:modelValue":t=>o.name=t,placeholder:"请输入商户名称",clearable:""},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024)]),_:2},1024),e(u,{span:12},{default:a(()=>[e(i,{label:"商户号",required:""},{default:a(()=>[e(_,{modelValue:o.mch_id,"onUpdate:modelValue":t=>o.mch_id=t,placeholder:"请输入微信支付商户号",clearable:""},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024)]),_:2},1024)]),_:2},1024),e(V,{gutter:20},{default:a(()=>[e(u,{span:12},{default:a(()=>[e(i,{label:"订单前缀"},{default:a(()=>[e(_,{modelValue:o.order_prefix,"onUpdate:modelValue":t=>o.order_prefix=t,placeholder:"3位字符",maxlength:"3",clearable:""},null,8,["modelValue","onUpdate:modelValue"]),l[4]||(l[4]=p("div",{class:"form-item-tip"},"用于区分不同商户的订单,必须3位",-1))]),_:2},1024)]),_:2},1024),e(u,{span:12},{default:a(()=>[e(i,{label:"支付版本"},{default:a(()=>[e(N,{modelValue:o.pay_version,"onUpdate:modelValue":t=>o.pay_version=t},{default:a(()=>[e(h,{value:"V3"},{default:a(()=>[...l[5]||(l[5]=[r("V3(推荐)",-1)])]),_:1}),e(h,{value:"V2"},{default:a(()=>[...l[6]||(l[6]=[r("V2",-1)])]),_:1})]),_:1},8,["modelValue","onUpdate:modelValue"])]),_:2},1024)]),_:2},1024)]),_:2},1024),o.pay_version==="V3"?(c(),m(v,{key:0},[e(D,{"content-position":"left"},{default:a(()=>[...l[7]||(l[7]=[r("V3 支付配置",-1)])]),_:1}),e(V,{gutter:20},{default:a(()=>[e(u,{span:12},{default:a(()=>[e(i,{label:"APIv3密钥"},{default:a(()=>[e(_,{modelValue:o.api_v3_key,"onUpdate:modelValue":t=>o.api_v3_key=t,placeholder:"32位APIv3密钥",type:"password","show-password":"",clearable:""},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024)]),_:2},1024),e(u,{span:12},{default:a(()=>[e(i,{label:"证书序列号"},{default:a(()=>[e(_,{modelValue:o.cert_serial_no,"onUpdate:modelValue":t=>o.cert_serial_no=t,placeholder:"商户API证书序列号",clearable:""},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024)]),_:2},1024)]),_:2},1024),e(V,{gutter:20},{default:a(()=>[e(u,{span:12},{default:a(()=>[e(i,{label:"商户私钥路径"},{default:a(()=>[e(_,{modelValue:o.private_key_path,"onUpdate:modelValue":t=>o.private_key_path=t,placeholder:"apiclient_key.pem 文件路径",clearable:""},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024)]),_:2},1024),e(u,{span:12},{default:a(()=>[e(i,{label:"微信支付公钥ID"},{default:a(()=>[e(_,{modelValue:o.wechat_public_key_id,"onUpdate:modelValue":t=>o.wechat_public_key_id=t,placeholder:"微信支付公钥ID",clearable:""},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024)]),_:2},1024)]),_:2},1024),e(i,{label:"微信支付公钥路径"},{default:a(()=>[e(_,{modelValue:o.wechat_public_key_path,"onUpdate:modelValue":t=>o.wechat_public_key_path=t,placeholder:"pub_key.pem 文件路径",clearable:""},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024)],64)):g("",!0),o.pay_version==="V2"?(c(),m(v,{key:1},[e(D,{"content-position":"left"},{default:a(()=>[...l[8]||(l[8]=[r("V2 支付配置",-1)])]),_:1}),e(V,{gutter:20},{default:a(()=>[e(u,{span:12},{default:a(()=>[e(i,{label:"API密钥"},{default:a(()=>[e(_,{modelValue:o.api_key,"onUpdate:modelValue":t=>o.api_key=t,placeholder:"微信支付API密钥",type:"password","show-password":"",clearable:""},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024)]),_:2},1024),e(u,{span:12},{default:a(()=>[e(i,{label:"证书路径"},{default:a(()=>[e(_,{modelValue:o.cert_path,"onUpdate:modelValue":t=>o.cert_path=t,placeholder:"apiclient_cert.p12 文件路径",clearable:""},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024)]),_:2},1024)]),_:2},1024)],64)):g("",!0)]),_:2},1024)]))),128)),n.formData.merchants.length>0?(c(),m("div",ae,[e(f,{type:"primary",loading:n.saving,onClick:A},{default:a(()=>[...l[9]||(l[9]=[r("保存配置",-1)])]),_:1},8,["loading"]),e(f,{onClick:E},{default:a(()=>[...l[10]||(l[10]=[r("重置",-1)])]),_:1})])):g("",!0)]),_:1})),[[W,n.loading]])])}}}),de=J(le,[["__scopeId","data-v-f733ad45"]]);export{de as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/permission-DVpyn3g_.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/permission-CpmDm0Md.js similarity index 85% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/permission-DVpyn3g_.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/permission-CpmDm0Md.js index 15d23f6..dd66a9a 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/permission-DVpyn3g_.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/permission-CpmDm0Md.js @@ -1 +1 @@ -import{R as s}from"./index-BsIaGxbR.js";function r(){return s({url:"/admin/permissions",method:"get"})}function t(){return s({url:"/admin/permissions/by-module",method:"get"})}function o(e){return s({url:"/admin/permissions",method:"post",data:e})}function m(e,i){return s({url:`/admin/permissions/${e}`,method:"put",data:i})}function u(e){return s({url:`/admin/permissions/${e}`,method:"delete"})}export{r as a,o as c,u as d,t as g,m as u}; +import{R as s}from"./index-CJcwRKyx.js";function r(){return s({url:"/admin/permissions",method:"get"})}function t(){return s({url:"/admin/permissions/by-module",method:"get"})}function o(e){return s({url:"/admin/permissions",method:"post",data:e})}function m(e,i){return s({url:`/admin/permissions/${e}`,method:"put",data:i})}function u(e){return s({url:`/admin/permissions/${e}`,method:"delete"})}export{r as a,o as c,u as d,t as g,m as u}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/planner-BuJWI647.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/planner-DuwciqnH.js similarity index 92% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/planner-BuJWI647.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/planner-DuwciqnH.js index 6a49792..c772dc5 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/planner-BuJWI647.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/planner-DuwciqnH.js @@ -1 +1 @@ -import{R as t}from"./index-BsIaGxbR.js";function a(n){return t({url:"/admin/planner/getList",method:"get",params:n})}function r(n){return t({url:"/admin/planner/create",method:"post",data:n})}function o(n){return t({url:"/admin/planner/update",method:"post",data:n})}function u(n){return t({url:"/admin/planner/delete",method:"post",data:{id:n}})}function i(n){return t({url:"/admin/planner/updateStatus",method:"post",data:n})}function d(n){return t({url:"/admin/planner/booking/getList",method:"get",params:n})}function l(n){return t({url:"/admin/planner/booking/getDetail",method:"get",params:{id:n}})}function s(n){return t({url:"/admin/planner/booking/updateStatus",method:"post",data:n})}function p(n){return t({url:"/admin/planner/booking/export",method:"get",params:n,responseType:"blob"})}export{d as a,l as b,o as c,r as d,p as e,i as f,a as g,u as h,s as u}; +import{R as t}from"./index-CJcwRKyx.js";function a(n){return t({url:"/admin/planner/getList",method:"get",params:n})}function r(n){return t({url:"/admin/planner/create",method:"post",data:n})}function o(n){return t({url:"/admin/planner/update",method:"post",data:n})}function u(n){return t({url:"/admin/planner/delete",method:"post",data:{id:n}})}function i(n){return t({url:"/admin/planner/updateStatus",method:"post",data:n})}function d(n){return t({url:"/admin/planner/booking/getList",method:"get",params:n})}function l(n){return t({url:"/admin/planner/booking/getDetail",method:"get",params:{id:n}})}function s(n){return t({url:"/admin/planner/booking/updateStatus",method:"post",data:n})}function p(n){return t({url:"/admin/planner/booking/export",method:"get",params:n,responseType:"blob"})}export{d as a,l as b,o as c,r as d,p as e,i as f,a as g,u as h,s as u}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/role-DeNQI9K8.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/role-CjnkgtRA.js similarity index 92% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/role-DeNQI9K8.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/role-CjnkgtRA.js index 35ae9e8..dc80235 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/role-DeNQI9K8.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/role-CjnkgtRA.js @@ -1 +1 @@ -import{R as s}from"./index-BsIaGxbR.js";function r(e){return s({url:"/admin/roles",method:"get",params:e})}function t(){return s({url:"/admin/roles/all",method:"get"})}function u(e){return s({url:"/admin/roles",method:"post",data:e})}function l(e,n){return s({url:`/admin/roles/${e}`,method:"put",data:n})}function i(e){return s({url:`/admin/roles/${e}`,method:"delete"})}function m(e){return s({url:`/admin/roles/${e}/menus`,method:"get"})}function d(e){return s({url:`/admin/roles/${e.roleId}/menus`,method:"put",data:{menuIds:e.menuIds}})}function a(e){return s({url:`/admin/roles/${e}/permissions`,method:"get"})}function c(e){return s({url:`/admin/roles/${e.roleId}/permissions`,method:"put",data:{permissionCodes:e.permissionCodes}})}export{m as a,d as b,u as c,i as d,a as e,c as f,r as g,t as h,l as u}; +import{R as s}from"./index-CJcwRKyx.js";function r(e){return s({url:"/admin/roles",method:"get",params:e})}function t(){return s({url:"/admin/roles/all",method:"get"})}function u(e){return s({url:"/admin/roles",method:"post",data:e})}function l(e,n){return s({url:`/admin/roles/${e}`,method:"put",data:n})}function i(e){return s({url:`/admin/roles/${e}`,method:"delete"})}function m(e){return s({url:`/admin/roles/${e}/menus`,method:"get"})}function d(e){return s({url:`/admin/roles/${e.roleId}/menus`,method:"put",data:{menuIds:e.menuIds}})}function a(e){return s({url:`/admin/roles/${e}/permissions`,method:"get"})}function c(e){return s({url:`/admin/roles/${e.roleId}/permissions`,method:"put",data:{permissionCodes:e.permissionCodes}})}export{m as a,d as b,u as c,i as d,a as e,c as f,r as g,t as h,l as u}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/upload-BdDxilH0.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/upload-CpRf_gCY.js similarity index 98% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/upload-BdDxilH0.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/upload-CpRf_gCY.js index 273de76..1a0f90a 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/upload-BdDxilH0.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/upload-CpRf_gCY.js @@ -1 +1 @@ -import{d as O,r as R,a as j,v as h,o as z,g as n,B as M,c as C,k as c,e as a,C as T,w as o,b as s,z as b,G as v,l as g,ak as F,al as P,t as u,F as G,am as H,s as J,M as L,E as p,_ as Q}from"./index-BsIaGxbR.js";import{c as W,d as X,t as Y}from"./config-inW4xTKX.js";const Z={class:"upload-config-container"},$={class:"storage-option"},ee={class:"storage-option"},ae=O({__name:"upload",setup(te){const y=R(),t=j({loading:!1,saving:!1,testing:!1,formData:{type:"1",appId:"",bucket:"",region:"",accessKeyId:"",accessKeySecret:"",domain:""}}),S=h(()=>{const l={type:[{required:!0,message:"请选择存储类型",trigger:"change"}]};return t.formData.type==="3"&&(l.appId=[{required:!0,message:"请输入AppId",trigger:"blur"}],l.accessKeyId=[{required:!0,message:"请输入SecretId",trigger:"blur"}],l.accessKeySecret=[{required:!0,message:"请输入SecretKey",trigger:"blur"}],l.bucket=[{required:!0,message:"请输入存储桶名称",trigger:"blur"}],l.region=[{required:!0,message:"请选择地域",trigger:"change"}],l.domain=[{required:!0,message:"请输入访问域名",trigger:"blur"}]),l});async function D(){t.loading=!0;try{const l=await W();l.code===0&&l.data&&(t.formData={type:l.data.type||"1",appId:l.data.appId||"",bucket:l.data.bucket||"",region:l.data.region||"",accessKeyId:l.data.accessKeyId||"",accessKeySecret:l.data.accessKeySecret||"",domain:l.data.domain||""})}catch{p.error("获取配置失败")}finally{t.loading=!1}}function K(){var l;(l=y.value)==null||l.clearValidate()}async function w(){if(y.value){try{await y.value.validate()}catch{return}t.saving=!0;try{const l=await X(t.formData);if(l.code===0)p.success("配置保存成功");else throw new Error(l.message||"保存失败")}catch(l){const e=l instanceof Error?l.message:"保存失败";p.error(e)}finally{t.saving=!1}}}function U(){D()}function q(){if(!t.formData.accessKeyId||!t.formData.accessKeySecret||!t.formData.bucket||!t.formData.region){p.warning("请先填写完整的COS配置信息");return}t.testing=!0,Y(t.formData).then(l=>{l.code===0?p.success(l.message||"连接成功"):p.error(l.message||"连接失败")}).catch(()=>{p.error("连接测试请求失败")}).finally(()=>{t.testing=!1})}return z(()=>{D()}),(l,e)=>{const I=n("el-card"),m=n("el-icon"),V=n("el-radio"),A=n("el-radio-group"),d=n("el-form-item"),k=n("el-alert"),x=n("el-divider"),f=n("el-input"),i=n("el-option"),N=n("el-select"),_=n("el-button"),B=n("el-form"),E=M("loading");return c(),C("div",Z,[a(I,{class:"page-header"},{default:o(()=>[...e[7]||(e[7]=[s("div",{class:"header-content"},[s("h2",{class:"page-title"},"上传配置"),s("span",{class:"page-description"},"配置文件上传存储方式,支持本地存储和腾讯云COS")],-1)])]),_:1}),T((c(),b(I,{class:"config-form-card"},{default:o(()=>[a(B,{ref_key:"formRef",ref:y,model:t.formData,rules:S.value,"label-width":"140px","label-position":"right"},{default:o(()=>[a(d,{label:"存储类型",prop:"type"},{default:o(()=>[a(A,{modelValue:t.formData.type,"onUpdate:modelValue":e[0]||(e[0]=r=>t.formData.type=r),onChange:K},{default:o(()=>[a(V,{value:"1"},{default:o(()=>[s("div",$,[a(m,null,{default:o(()=>[a(g(F))]),_:1}),e[8]||(e[8]=s("span",null,"本地存储",-1))])]),_:1}),a(V,{value:"3"},{default:o(()=>[s("div",ee,[a(m,null,{default:o(()=>[a(g(P))]),_:1}),e[9]||(e[9]=s("span",null,"腾讯云COS",-1))])]),_:1})]),_:1},8,["modelValue"])]),_:1}),t.formData.type==="1"?(c(),b(k,{key:0,title:"本地存储说明",type:"info",closable:!1,"show-icon":"",class:"storage-tip"},{default:o(()=>[...e[10]||(e[10]=[u(" 文件将存储在服务器本地 uploads 目录,适合小型项目或测试环境。 ",-1)])]),_:1})):v("",!0),t.formData.type==="3"?(c(),C(G,{key:1},[a(x,{"content-position":"left"},{default:o(()=>[...e[11]||(e[11]=[u("腾讯云COS配置",-1)])]),_:1}),a(k,{title:"配置说明",type:"warning",closable:!1,"show-icon":"",class:"storage-tip"},{default:o(()=>[...e[12]||(e[12]=[u(" 请前往腾讯云控制台获取相关配置信息。确保存储桶已开启跨域访问(CORS)。 ",-1)])]),_:1}),a(d,{label:"AppId",prop:"appId"},{default:o(()=>[a(f,{modelValue:t.formData.appId,"onUpdate:modelValue":e[1]||(e[1]=r=>t.formData.appId=r),placeholder:"请输入腾讯云AppId",clearable:""},null,8,["modelValue"]),e[13]||(e[13]=s("div",{class:"form-item-tip"},"腾讯云账号的AppId,可在账号信息中查看",-1))]),_:1}),a(d,{label:"SecretId",prop:"accessKeyId"},{default:o(()=>[a(f,{modelValue:t.formData.accessKeyId,"onUpdate:modelValue":e[2]||(e[2]=r=>t.formData.accessKeyId=r),placeholder:"请输入SecretId",clearable:""},null,8,["modelValue"]),e[14]||(e[14]=s("div",{class:"form-item-tip"},"API密钥的SecretId",-1))]),_:1}),a(d,{label:"SecretKey",prop:"accessKeySecret"},{default:o(()=>[a(f,{modelValue:t.formData.accessKeySecret,"onUpdate:modelValue":e[3]||(e[3]=r=>t.formData.accessKeySecret=r),placeholder:"请输入SecretKey",type:"password","show-password":"",clearable:""},null,8,["modelValue"]),e[15]||(e[15]=s("div",{class:"form-item-tip"},"API密钥的SecretKey,请妥善保管",-1))]),_:1}),a(d,{label:"存储桶名称",prop:"bucket"},{default:o(()=>[a(f,{modelValue:t.formData.bucket,"onUpdate:modelValue":e[4]||(e[4]=r=>t.formData.bucket=r),placeholder:"请输入存储桶名称,如 my-bucket-1250000000",clearable:""},null,8,["modelValue"]),e[16]||(e[16]=s("div",{class:"form-item-tip"},"完整的存储桶名称,包含AppId后缀",-1))]),_:1}),a(d,{label:"地域",prop:"region"},{default:o(()=>[a(N,{modelValue:t.formData.region,"onUpdate:modelValue":e[5]||(e[5]=r=>t.formData.region=r),placeholder:"请选择地域",clearable:""},{default:o(()=>[a(i,{label:"北京 (ap-beijing)",value:"ap-beijing"}),a(i,{label:"上海 (ap-shanghai)",value:"ap-shanghai"}),a(i,{label:"广州 (ap-guangzhou)",value:"ap-guangzhou"}),a(i,{label:"成都 (ap-chengdu)",value:"ap-chengdu"}),a(i,{label:"重庆 (ap-chongqing)",value:"ap-chongqing"}),a(i,{label:"南京 (ap-nanjing)",value:"ap-nanjing"}),a(i,{label:"香港 (ap-hongkong)",value:"ap-hongkong"}),a(i,{label:"新加坡 (ap-singapore)",value:"ap-singapore"})]),_:1},8,["modelValue"]),e[17]||(e[17]=s("div",{class:"form-item-tip"},"存储桶所在地域",-1))]),_:1}),a(d,{label:"访问域名",prop:"domain"},{default:o(()=>[a(f,{modelValue:t.formData.domain,"onUpdate:modelValue":e[6]||(e[6]=r=>t.formData.domain=r),placeholder:"请输入CDN加速域名或存储桶域名",clearable:""},{prepend:o(()=>[...e[18]||(e[18]=[u("https://",-1)])]),_:1},8,["modelValue"]),e[19]||(e[19]=s("div",{class:"form-item-tip"},"用于访问文件的域名,可使用CDN加速域名",-1))]),_:1})],64)):v("",!0),a(d,null,{default:o(()=>[a(_,{type:"primary",loading:t.saving,onClick:w},{default:o(()=>[a(m,null,{default:o(()=>[a(g(H))]),_:1}),e[20]||(e[20]=u(" 保存配置 ",-1))]),_:1},8,["loading"]),a(_,{onClick:U},{default:o(()=>[a(m,null,{default:o(()=>[a(g(J))]),_:1}),e[21]||(e[21]=u(" 重置 ",-1))]),_:1}),t.formData.type==="3"?(c(),b(_,{key:0,loading:t.testing,onClick:q},{default:o(()=>[a(m,null,{default:o(()=>[a(g(L))]),_:1}),e[22]||(e[22]=u(" 测试连接 ",-1))]),_:1},8,["loading"])):v("",!0)]),_:1})]),_:1},8,["model","rules"])]),_:1})),[[E,t.loading]])])}}}),re=Q(ae,[["__scopeId","data-v-86d345d6"]]);export{re as default}; +import{d as O,r as R,a as j,v as h,o as z,g as n,B as M,c as C,k as c,e as a,C as T,w as o,b as s,z as b,G as v,l as g,ak as F,al as P,t as u,F as G,am as H,s as J,M as L,E as p,_ as Q}from"./index-CJcwRKyx.js";import{c as W,d as X,t as Y}from"./config-rv4LKgOV.js";const Z={class:"upload-config-container"},$={class:"storage-option"},ee={class:"storage-option"},ae=O({__name:"upload",setup(te){const y=R(),t=j({loading:!1,saving:!1,testing:!1,formData:{type:"1",appId:"",bucket:"",region:"",accessKeyId:"",accessKeySecret:"",domain:""}}),S=h(()=>{const l={type:[{required:!0,message:"请选择存储类型",trigger:"change"}]};return t.formData.type==="3"&&(l.appId=[{required:!0,message:"请输入AppId",trigger:"blur"}],l.accessKeyId=[{required:!0,message:"请输入SecretId",trigger:"blur"}],l.accessKeySecret=[{required:!0,message:"请输入SecretKey",trigger:"blur"}],l.bucket=[{required:!0,message:"请输入存储桶名称",trigger:"blur"}],l.region=[{required:!0,message:"请选择地域",trigger:"change"}],l.domain=[{required:!0,message:"请输入访问域名",trigger:"blur"}]),l});async function D(){t.loading=!0;try{const l=await W();l.code===0&&l.data&&(t.formData={type:l.data.type||"1",appId:l.data.appId||"",bucket:l.data.bucket||"",region:l.data.region||"",accessKeyId:l.data.accessKeyId||"",accessKeySecret:l.data.accessKeySecret||"",domain:l.data.domain||""})}catch{p.error("获取配置失败")}finally{t.loading=!1}}function K(){var l;(l=y.value)==null||l.clearValidate()}async function w(){if(y.value){try{await y.value.validate()}catch{return}t.saving=!0;try{const l=await X(t.formData);if(l.code===0)p.success("配置保存成功");else throw new Error(l.message||"保存失败")}catch(l){const e=l instanceof Error?l.message:"保存失败";p.error(e)}finally{t.saving=!1}}}function U(){D()}function q(){if(!t.formData.accessKeyId||!t.formData.accessKeySecret||!t.formData.bucket||!t.formData.region){p.warning("请先填写完整的COS配置信息");return}t.testing=!0,Y(t.formData).then(l=>{l.code===0?p.success(l.message||"连接成功"):p.error(l.message||"连接失败")}).catch(()=>{p.error("连接测试请求失败")}).finally(()=>{t.testing=!1})}return z(()=>{D()}),(l,e)=>{const I=n("el-card"),m=n("el-icon"),V=n("el-radio"),A=n("el-radio-group"),d=n("el-form-item"),k=n("el-alert"),x=n("el-divider"),f=n("el-input"),i=n("el-option"),N=n("el-select"),_=n("el-button"),B=n("el-form"),E=M("loading");return c(),C("div",Z,[a(I,{class:"page-header"},{default:o(()=>[...e[7]||(e[7]=[s("div",{class:"header-content"},[s("h2",{class:"page-title"},"上传配置"),s("span",{class:"page-description"},"配置文件上传存储方式,支持本地存储和腾讯云COS")],-1)])]),_:1}),T((c(),b(I,{class:"config-form-card"},{default:o(()=>[a(B,{ref_key:"formRef",ref:y,model:t.formData,rules:S.value,"label-width":"140px","label-position":"right"},{default:o(()=>[a(d,{label:"存储类型",prop:"type"},{default:o(()=>[a(A,{modelValue:t.formData.type,"onUpdate:modelValue":e[0]||(e[0]=r=>t.formData.type=r),onChange:K},{default:o(()=>[a(V,{value:"1"},{default:o(()=>[s("div",$,[a(m,null,{default:o(()=>[a(g(F))]),_:1}),e[8]||(e[8]=s("span",null,"本地存储",-1))])]),_:1}),a(V,{value:"3"},{default:o(()=>[s("div",ee,[a(m,null,{default:o(()=>[a(g(P))]),_:1}),e[9]||(e[9]=s("span",null,"腾讯云COS",-1))])]),_:1})]),_:1},8,["modelValue"])]),_:1}),t.formData.type==="1"?(c(),b(k,{key:0,title:"本地存储说明",type:"info",closable:!1,"show-icon":"",class:"storage-tip"},{default:o(()=>[...e[10]||(e[10]=[u(" 文件将存储在服务器本地 uploads 目录,适合小型项目或测试环境。 ",-1)])]),_:1})):v("",!0),t.formData.type==="3"?(c(),C(G,{key:1},[a(x,{"content-position":"left"},{default:o(()=>[...e[11]||(e[11]=[u("腾讯云COS配置",-1)])]),_:1}),a(k,{title:"配置说明",type:"warning",closable:!1,"show-icon":"",class:"storage-tip"},{default:o(()=>[...e[12]||(e[12]=[u(" 请前往腾讯云控制台获取相关配置信息。确保存储桶已开启跨域访问(CORS)。 ",-1)])]),_:1}),a(d,{label:"AppId",prop:"appId"},{default:o(()=>[a(f,{modelValue:t.formData.appId,"onUpdate:modelValue":e[1]||(e[1]=r=>t.formData.appId=r),placeholder:"请输入腾讯云AppId",clearable:""},null,8,["modelValue"]),e[13]||(e[13]=s("div",{class:"form-item-tip"},"腾讯云账号的AppId,可在账号信息中查看",-1))]),_:1}),a(d,{label:"SecretId",prop:"accessKeyId"},{default:o(()=>[a(f,{modelValue:t.formData.accessKeyId,"onUpdate:modelValue":e[2]||(e[2]=r=>t.formData.accessKeyId=r),placeholder:"请输入SecretId",clearable:""},null,8,["modelValue"]),e[14]||(e[14]=s("div",{class:"form-item-tip"},"API密钥的SecretId",-1))]),_:1}),a(d,{label:"SecretKey",prop:"accessKeySecret"},{default:o(()=>[a(f,{modelValue:t.formData.accessKeySecret,"onUpdate:modelValue":e[3]||(e[3]=r=>t.formData.accessKeySecret=r),placeholder:"请输入SecretKey",type:"password","show-password":"",clearable:""},null,8,["modelValue"]),e[15]||(e[15]=s("div",{class:"form-item-tip"},"API密钥的SecretKey,请妥善保管",-1))]),_:1}),a(d,{label:"存储桶名称",prop:"bucket"},{default:o(()=>[a(f,{modelValue:t.formData.bucket,"onUpdate:modelValue":e[4]||(e[4]=r=>t.formData.bucket=r),placeholder:"请输入存储桶名称,如 my-bucket-1250000000",clearable:""},null,8,["modelValue"]),e[16]||(e[16]=s("div",{class:"form-item-tip"},"完整的存储桶名称,包含AppId后缀",-1))]),_:1}),a(d,{label:"地域",prop:"region"},{default:o(()=>[a(N,{modelValue:t.formData.region,"onUpdate:modelValue":e[5]||(e[5]=r=>t.formData.region=r),placeholder:"请选择地域",clearable:""},{default:o(()=>[a(i,{label:"北京 (ap-beijing)",value:"ap-beijing"}),a(i,{label:"上海 (ap-shanghai)",value:"ap-shanghai"}),a(i,{label:"广州 (ap-guangzhou)",value:"ap-guangzhou"}),a(i,{label:"成都 (ap-chengdu)",value:"ap-chengdu"}),a(i,{label:"重庆 (ap-chongqing)",value:"ap-chongqing"}),a(i,{label:"南京 (ap-nanjing)",value:"ap-nanjing"}),a(i,{label:"香港 (ap-hongkong)",value:"ap-hongkong"}),a(i,{label:"新加坡 (ap-singapore)",value:"ap-singapore"})]),_:1},8,["modelValue"]),e[17]||(e[17]=s("div",{class:"form-item-tip"},"存储桶所在地域",-1))]),_:1}),a(d,{label:"访问域名",prop:"domain"},{default:o(()=>[a(f,{modelValue:t.formData.domain,"onUpdate:modelValue":e[6]||(e[6]=r=>t.formData.domain=r),placeholder:"请输入CDN加速域名或存储桶域名",clearable:""},{prepend:o(()=>[...e[18]||(e[18]=[u("https://",-1)])]),_:1},8,["modelValue"]),e[19]||(e[19]=s("div",{class:"form-item-tip"},"用于访问文件的域名,可使用CDN加速域名",-1))]),_:1})],64)):v("",!0),a(d,null,{default:o(()=>[a(_,{type:"primary",loading:t.saving,onClick:w},{default:o(()=>[a(m,null,{default:o(()=>[a(g(H))]),_:1}),e[20]||(e[20]=u(" 保存配置 ",-1))]),_:1},8,["loading"]),a(_,{onClick:U},{default:o(()=>[a(m,null,{default:o(()=>[a(g(J))]),_:1}),e[21]||(e[21]=u(" 重置 ",-1))]),_:1}),t.formData.type==="3"?(c(),b(_,{key:0,loading:t.testing,onClick:q},{default:o(()=>[a(m,null,{default:o(()=>[a(g(L))]),_:1}),e[22]||(e[22]=u(" 测试连接 ",-1))]),_:1},8,["loading"])):v("",!0)]),_:1})]),_:1},8,["model","rules"])]),_:1})),[[E,t.loading]])])}}}),re=Q(ae,[["__scopeId","data-v-86d345d6"]]);export{re as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/user-D5_XWilM.js b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/user-md0sNmmV.js similarity index 96% rename from server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/user-D5_XWilM.js rename to server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/user-md0sNmmV.js index 11a3cf9..6a72acc 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/user-D5_XWilM.js +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/user-md0sNmmV.js @@ -1 +1 @@ -import{d as C,a as I,v as k,o as B,g as s,B as N,c as E,k as v,e as t,C as M,w as l,b as n,z as S,t as r,Q as z,E as u,_ as L}from"./index-BsIaGxbR.js";import{e as Q,f as R}from"./config-inW4xTKX.js";const T={class:"user-config-container"},j={class:"avatar-config"},q={class:"form-actions"},A=C({__name:"user",setup(F){const a=I({loading:!1,saving:!1,formData:{uid_type:"2",uid_length:"6",default_nickname_prefix:"用户",default_avatar:""}}),m=k({get:()=>parseInt(a.formData.uid_length||"6")||6,set:o=>{a.formData.uid_length=String(o)}});async function p(){a.loading=!0;try{const o=await Q();o.code===0&&o.data&&(a.formData=o.data)}catch(o){console.error("加载用户配置失败:",o),u.error("加载配置失败")}finally{a.loading=!1}}async function D(){a.saving=!0;try{const o=await R(a.formData);o.code===0?u.success("保存成功"):u.error(o.message||"保存失败")}catch(o){console.error("保存用户配置失败:",o),u.error("保存失败")}finally{a.saving=!1}}function V(){p()}return B(()=>{p()}),(o,e)=>{const _=s("el-card"),f=s("el-radio"),b=s("el-radio-group"),d=s("el-form-item"),U=s("el-input-number"),c=s("el-divider"),x=s("el-input"),y=s("el-form"),g=s("el-button"),w=N("loading");return v(),E("div",T,[t(_,{class:"page-header"},{default:l(()=>[...e[4]||(e[4]=[n("div",{class:"header-content"},[n("h2",{class:"page-title"},"用户配置"),n("span",{class:"page-description"},"配置新用户注册时的UID生成规则、默认昵称前缀和默认头像")],-1)])]),_:1}),M((v(),S(_,{class:"config-form-card"},{default:l(()=>[t(y,{"label-width":"140px","label-position":"right"},{default:l(()=>[e[10]||(e[10]=n("div",{class:"section-title"},"UID 配置",-1)),t(d,{label:"UID类型"},{default:l(()=>[t(b,{modelValue:a.formData.uid_type,"onUpdate:modelValue":e[0]||(e[0]=i=>a.formData.uid_type=i)},{default:l(()=>[t(f,{value:"1"},{default:l(()=>[...e[5]||(e[5]=[r("真实ID",-1)])]),_:1}),t(f,{value:"2"},{default:l(()=>[...e[6]||(e[6]=[r("数字ID",-1)])]),_:1}),t(f,{value:"3"},{default:l(()=>[...e[7]||(e[7]=[r("随机字符和数字",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),t(d,{label:"UID长度"},{default:l(()=>[t(U,{modelValue:m.value,"onUpdate:modelValue":e[1]||(e[1]=i=>m.value=i),modelModifiers:{number:!0},min:4,max:12,"controls-position":"right"},null,8,["modelValue"]),e[8]||(e[8]=n("div",{class:"form-item-tip"},"新用户UID的位数,建议6位",-1))]),_:1}),t(c),e[11]||(e[11]=n("div",{class:"section-title"},"默认昵称",-1)),t(d,{label:"昵称前缀"},{default:l(()=>[t(x,{modelValue:a.formData.default_nickname_prefix,"onUpdate:modelValue":e[2]||(e[2]=i=>a.formData.default_nickname_prefix=i),placeholder:"请输入默认昵称前缀",maxlength:"10","show-word-limit":"",clearable:"",style:{width:"300px"}},null,8,["modelValue"]),e[9]||(e[9]=n("div",{class:"form-item-tip"},'新用户注册时的昵称前缀,系统会自动拼接6位随机数字,如"用户123456"',-1))]),_:1}),t(c),e[12]||(e[12]=n("div",{class:"section-title"},"默认头像",-1)),t(d,{label:"默认头像"},{default:l(()=>[n("div",j,[t(z,{modelValue:a.formData.default_avatar,"onUpdate:modelValue":e[3]||(e[3]=i=>a.formData.default_avatar=i),placeholder:"点击上传默认头像","show-url-input":!1,tip:"上传图片作为所有新用户的默认头像,不上传则系统自动生成唯一头像"},null,8,["modelValue"])])]),_:1})]),_:1}),n("div",q,[t(g,{type:"primary",loading:a.saving,onClick:D},{default:l(()=>[...e[13]||(e[13]=[r("保存配置",-1)])]),_:1},8,["loading"]),t(g,{onClick:V},{default:l(()=>[...e[14]||(e[14]=[r("重置",-1)])]),_:1})])]),_:1})),[[w,a.loading]])])}}}),J=L(A,[["__scopeId","data-v-5ef730fd"]]);export{J as default}; +import{d as C,a as I,v as k,o as B,g as s,B as N,c as E,k as v,e as t,C as M,w as l,b as n,z as S,t as r,Q as z,E as u,_ as L}from"./index-CJcwRKyx.js";import{e as Q,f as R}from"./config-rv4LKgOV.js";const T={class:"user-config-container"},j={class:"avatar-config"},q={class:"form-actions"},A=C({__name:"user",setup(F){const a=I({loading:!1,saving:!1,formData:{uid_type:"2",uid_length:"6",default_nickname_prefix:"用户",default_avatar:""}}),m=k({get:()=>parseInt(a.formData.uid_length||"6")||6,set:o=>{a.formData.uid_length=String(o)}});async function p(){a.loading=!0;try{const o=await Q();o.code===0&&o.data&&(a.formData=o.data)}catch(o){console.error("加载用户配置失败:",o),u.error("加载配置失败")}finally{a.loading=!1}}async function D(){a.saving=!0;try{const o=await R(a.formData);o.code===0?u.success("保存成功"):u.error(o.message||"保存失败")}catch(o){console.error("保存用户配置失败:",o),u.error("保存失败")}finally{a.saving=!1}}function V(){p()}return B(()=>{p()}),(o,e)=>{const _=s("el-card"),f=s("el-radio"),b=s("el-radio-group"),d=s("el-form-item"),U=s("el-input-number"),c=s("el-divider"),x=s("el-input"),y=s("el-form"),g=s("el-button"),w=N("loading");return v(),E("div",T,[t(_,{class:"page-header"},{default:l(()=>[...e[4]||(e[4]=[n("div",{class:"header-content"},[n("h2",{class:"page-title"},"用户配置"),n("span",{class:"page-description"},"配置新用户注册时的UID生成规则、默认昵称前缀和默认头像")],-1)])]),_:1}),M((v(),S(_,{class:"config-form-card"},{default:l(()=>[t(y,{"label-width":"140px","label-position":"right"},{default:l(()=>[e[10]||(e[10]=n("div",{class:"section-title"},"UID 配置",-1)),t(d,{label:"UID类型"},{default:l(()=>[t(b,{modelValue:a.formData.uid_type,"onUpdate:modelValue":e[0]||(e[0]=i=>a.formData.uid_type=i)},{default:l(()=>[t(f,{value:"1"},{default:l(()=>[...e[5]||(e[5]=[r("真实ID",-1)])]),_:1}),t(f,{value:"2"},{default:l(()=>[...e[6]||(e[6]=[r("数字ID",-1)])]),_:1}),t(f,{value:"3"},{default:l(()=>[...e[7]||(e[7]=[r("随机字符和数字",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),t(d,{label:"UID长度"},{default:l(()=>[t(U,{modelValue:m.value,"onUpdate:modelValue":e[1]||(e[1]=i=>m.value=i),modelModifiers:{number:!0},min:4,max:12,"controls-position":"right"},null,8,["modelValue"]),e[8]||(e[8]=n("div",{class:"form-item-tip"},"新用户UID的位数,建议6位",-1))]),_:1}),t(c),e[11]||(e[11]=n("div",{class:"section-title"},"默认昵称",-1)),t(d,{label:"昵称前缀"},{default:l(()=>[t(x,{modelValue:a.formData.default_nickname_prefix,"onUpdate:modelValue":e[2]||(e[2]=i=>a.formData.default_nickname_prefix=i),placeholder:"请输入默认昵称前缀",maxlength:"10","show-word-limit":"",clearable:"",style:{width:"300px"}},null,8,["modelValue"]),e[9]||(e[9]=n("div",{class:"form-item-tip"},'新用户注册时的昵称前缀,系统会自动拼接6位随机数字,如"用户123456"',-1))]),_:1}),t(c),e[12]||(e[12]=n("div",{class:"section-title"},"默认头像",-1)),t(d,{label:"默认头像"},{default:l(()=>[n("div",j,[t(z,{modelValue:a.formData.default_avatar,"onUpdate:modelValue":e[3]||(e[3]=i=>a.formData.default_avatar=i),placeholder:"点击上传默认头像","show-url-input":!1,tip:"上传图片作为所有新用户的默认头像,不上传则系统自动生成唯一头像"},null,8,["modelValue"])])]),_:1})]),_:1}),n("div",q,[t(g,{type:"primary",loading:a.saving,onClick:D},{default:l(()=>[...e[13]||(e[13]=[r("保存配置",-1)])]),_:1},8,["loading"]),t(g,{onClick:V},{default:l(()=>[...e[14]||(e[14]=[r("重置",-1)])]),_:1})])]),_:1})),[[w,a.loading]])])}}}),J=L(A,[["__scopeId","data-v-5ef730fd"]]);export{J as default}; diff --git a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/index.html b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/index.html index 1ab1caf..440fa73 100644 --- a/server/MiAssessment/src/MiAssessment.Admin/wwwroot/index.html +++ b/server/MiAssessment/src/MiAssessment.Admin/wwwroot/index.html @@ -5,7 +5,7 @@ 学业邑规划 - 后台管理系统 - +