mi-assessment/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-DdZ5GOrr.js
2026-02-23 22:27:47 +08:00

2 lines
12 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import{d as ie,r as I,a as N,v as de,o as ue,g as d,B as me,c as S,k as V,e as t,C as pe,w as a,b as c,t as m,l as p,D as fe,f as z,J as k,L as ge,s as ce,z as T,R as L,x as F,H as _e,S as be,I as we,T as O,E as b,_ as ye}from"./index-CcDqJDLV.js";import{g as Ve,v as Ce,w as he,x as ve,y as De}from"./assessment-D4Dn5X1l.js";const Ue={class:"assessment-type-container"},xe={class:"header-content"},Ee={class:"header-right"},Ie={class:"image-error"},Ne={key:1,class:"image-placeholder"},Se={class:"price-text"},ze={class:"pagination-wrapper"},ke=ie({__name:"index",setup(Te){const f={OFFLINE:0,ONLINE:1,COMING:2},q=I(),y=I(),r=N({page:1,pageSize:10,name:"",code:"",status:void 0}),o=N({loading:!1,tableData:[],total:0,dialogVisible:!1,dialogTitle:"新增测评类型",formData:C(),formLoading:!1,isEdit:!1}),A=(l,e,s)=>{if(e==null){s(new Error("请输入价格"));return}if(e<=0){s(new Error("价格必须为正数"));return}s()},M=de(()=>({name:[{required:!0,message:"请输入测评类型名称",trigger:"blur"},{max:50,message:"名称不能超过50个字符",trigger:"blur"}],code:[{required:!0,message:"请输入测评类型编码",trigger:"blur"},{max:50,message:"编码不能超过50个字符",trigger:"blur"}],price:[{required:!0,validator:A,trigger:"blur"}],status:[{required:!0,message:"请选择状态",trigger:"change"}]}));function C(){return{name:"",code:"",imageUrl:"",detailImageUrl:"",introContent:"",price:0,sort:0,status:f.OFFLINE}}function R(l){switch(l){case f.OFFLINE:return"info";case f.ONLINE:return"success";case f.COMING:return"warning";default:return"info"}}function B(l){switch(l){case f.OFFLINE:return"下线";case f.ONLINE:return"上线";case f.COMING:return"即将上线";default:return"未知"}}async function _(){var l,e;o.loading=!0;try{const s={page:r.page,pageSize:r.pageSize};r.name&&(s.name=r.name),r.code&&(s.code=r.code),r.status!==void 0&&r.status!==""&&(s.status=Number(r.status));const i=await Ve(s);if(i.code===0)o.tableData=((l=i.data)==null?void 0:l.list)||[],o.total=((e=i.data)==null?void 0:e.total)||0;else throw new Error(i.message||"获取测评类型列表失败")}catch(s){const i=s instanceof Error?s.message:"获取测评类型列表失败";b.error(i)}finally{o.loading=!1}}function h(){r.page=1,_()}function G(){r.name="",r.code="",r.status=void 0,r.page=1,_()}function $(l){r.pageSize=l,r.page=1,_()}function j(l){r.page=l,_()}function K({prop:l,order:e}){console.log("Sort changed:",l,e)}function H(){o.isEdit=!1,o.dialogTitle="新增测评类型",o.formData=C(),o.dialogVisible=!0}function P(l){o.isEdit=!0,o.dialogTitle="编辑测评类型",o.formData={id:l.id,name:l.name,code:l.code,imageUrl:l.imageUrl||"",detailImageUrl:l.detailImageUrl||"",introContent:l.introContent||"",price:l.price,sort:l.sort,status:l.status},o.dialogVisible=!0}async function J(l,e){if(l.status!==e)try{const s=await Ce({id:l.id,status:e});if(s.code===0)b.success(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 he(l.id);if(e.code===0)b.success("删除成功"),o.tableData.length===1&&r.page>1&&r.page--,await _();else throw new Error(e.message||"删除失败")}catch(e){const s=e instanceof Error?e.message:"删除失败";b.error(s)}}async function 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 ve({...e,id:l.id}):s=await De(e),s.code===0)b.success(o.isEdit?"更新成功":"创建成功"),o.dialogVisible=!1,await _();else throw new Error(s.message||(o.isEdit?"更新失败":"创建失败"))}catch(l){const e=l instanceof Error?l.message:o.isEdit?"更新失败":"创建失败";b.error(e)}finally{o.formLoading=!1}}}function Y(){var l;(l=y.value)==null||l.resetFields(),o.formData=C()}return ue(()=>{_()}),(l,e)=>{const s=d("el-icon"),i=d("el-button"),v=d("el-card"),w=d("el-input"),u=d("el-form-item"),x=d("el-form"),Z=d("el-image"),g=d("el-table-column"),ee=d("el-tag"),D=d("el-dropdown-item"),te=d("el-dropdown-menu"),ae=d("el-dropdown"),le=d("el-popconfirm"),oe=d("el-table"),ne=d("el-pagination"),E=d("el-input-number"),se=d("el-dialog"),re=me("loading");return V(),S("div",Ue,[t(v,{class:"page-header"},{default:a(()=>[c("div",xe,[e[16]||(e[16]=c("div",{class:"header-left"},[c("h2",{class:"page-title"},"测评类型管理"),c("span",{class:"page-description"},"管理测评类型,配置测评产品的基本信息、价格和状态")],-1)),c("div",Ee,[t(i,{type:"primary",onClick:H},{default:a(()=>[t(s,null,{default:a(()=>[t(p(fe))]),_:1}),e[15]||(e[15]=m(" 新增测评类型 ",-1))]),_:1})])])]),_:1}),t(v,{class:"search-card"},{default:a(()=>[t(x,{model:r,inline:""},{default:a(()=>[t(u,{label:"名称"},{default:a(()=>[t(w,{modelValue:r.name,"onUpdate:modelValue":e[0]||(e[0]=n=>r.name=n),placeholder:"请输入名称",clearable:"",onKeyup:z(h,["enter"])},null,8,["modelValue"])]),_:1}),t(u,{label:"编码"},{default:a(()=>[t(w,{modelValue:r.code,"onUpdate:modelValue":e[1]||(e[1]=n=>r.code=n),placeholder:"请输入编码",clearable:"",onKeyup:z(h,["enter"])},null,8,["modelValue"])]),_:1}),t(u,{label:"状态"},{default:a(()=>[t(p(k),{modelValue:r.status,"onUpdate:modelValue":e[2]||(e[2]=n=>r.status=n),type:"assessment_status",placeholder:"请选择状态",clearable:""},null,8,["modelValue"])]),_:1}),t(u,null,{default:a(()=>[t(i,{type:"primary",onClick:h},{default:a(()=>[t(s,null,{default:a(()=>[t(p(ge))]),_:1}),e[17]||(e[17]=m(" 搜索 ",-1))]),_:1}),t(i,{onClick:G},{default:a(()=>[t(s,null,{default:a(()=>[t(p(ce))]),_:1}),e[18]||(e[18]=m(" 重置 ",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),pe((V(),T(v,{class:"table-card"},{default:a(()=>[t(oe,{ref_key:"tableRef",ref:q,data:o.tableData,"row-key":"id",stripe:"",onSortChange:K},{default:a(()=>[t(g,{label:"图片",width:"120",align:"center"},{default:a(({row:n})=>[n.imageUrl?(V(),T(Z,{key:0,src:n.imageUrl,"preview-src-list":[n.imageUrl],fit:"cover",style:{width:"80px",height:"80px","border-radius":"4px"},"preview-teleported":""},{error:a(()=>[c("div",Ie,[t(s,null,{default:a(()=>[t(p(L))]),_:1})])]),_:1},8,["src","preview-src-list"])):(V(),S("div",Ne,[t(s,null,{default:a(()=>[t(p(L))]),_:1})]))]),_:1}),t(g,{prop:"name",label:"名称","min-width":"150","show-overflow-tooltip":""}),t(g,{prop:"code",label:"编码",width:"120","show-overflow-tooltip":""}),t(g,{prop:"price",label:"价格",width:"100",align:"right"},{default:a(({row:n})=>[c("span",Se,"¥"+F(n.price.toFixed(2)),1)]),_:1}),t(g,{prop:"questionCount",label:"题目数",width:"80",align:"center"}),t(g,{label:"状态",width:"120",align:"center"},{default:a(({row:n})=>[t(ee,{type:R(n.status)},{default:a(()=>[m(F(n.statusName||B(n.status)),1)]),_:2},1032,["type"])]),_:1}),t(g,{prop:"sort",label:"排序",width:"80",align:"center",sortable:"custom"}),t(g,{prop:"createTime",label:"创建时间",width:"180",align:"center"}),t(g,{label:"操作",width:"200",fixed:"right",align:"center"},{default:a(({row:n})=>[t(i,{type:"primary",link:"",size:"small",onClick:U=>P(n)},{default:a(()=>[t(s,null,{default:a(()=>[t(p(_e))]),_:1}),e[19]||(e[19]=m(" 编辑 ",-1))]),_:1},8,["onClick"]),t(ae,{onCommand:U=>J(n,U)},{dropdown:a(()=>[t(te,null,{default:a(()=>[t(D,{command:0,disabled:n.status===0},{default:a(()=>[...e[21]||(e[21]=[m("下线",-1)])]),_:1},8,["disabled"]),t(D,{command:1,disabled:n.status===1},{default:a(()=>[...e[22]||(e[22]=[m("上线",-1)])]),_:1},8,["disabled"]),t(D,{command:2,disabled:n.status===2},{default:a(()=>[...e[23]||(e[23]=[m("即将上线",-1)])]),_:1},8,["disabled"])]),_:2},1024)]),default:a(()=>[t(i,{type:"warning",link:"",size:"small"},{default:a(()=>[e[20]||(e[20]=m(" 状态 ",-1)),t(s,{class:"el-icon--right"},{default:a(()=>[t(p(be))]),_:1})]),_:1})]),_:2},1032,["onCommand"]),t(le,{title:"确定要删除这个测评类型吗?","confirm-button-text":"确定","cancel-button-text":"取消",onConfirm:U=>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.page,"onUpdate:currentPage":e[3]||(e[3]=n=>r.page=n),"page-size":r.pageSize,"onUpdate:pageSize":e[4]||(e[4]=n=>r.pageSize=n),"page-sizes":[10,20,50,100],total:o.total,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:$,onCurrentChange:j},null,8,["current-page","page-size","total"])])]),_:1})),[[re,o.loading]]),t(se,{modelValue:o.dialogVisible,"onUpdate:modelValue":e[14]||(e[14]=n=>o.dialogVisible=n),title:o.dialogTitle,width:"700px","close-on-click-modal":!1,onClosed:Y},{footer:a(()=>[t(i,{onClick:e[13]||(e[13]=n=>o.dialogVisible=!1)},{default:a(()=>[...e[26]||(e[26]=[m("取消",-1)])]),_:1}),t(i,{type:"primary",loading:o.formLoading,onClick:X},{default:a(()=>[...e[27]||(e[27]=[m(" 确定 ",-1)])]),_:1},8,["loading"])]),default:a(()=>[t(x,{ref_key:"formRef",ref:y,model:o.formData,rules:M.value,"label-width":"100px","label-position":"right"},{default:a(()=>[t(u,{label:"名称",prop:"name"},{default:a(()=>[t(w,{modelValue:o.formData.name,"onUpdate:modelValue":e[5]||(e[5]=n=>o.formData.name=n),placeholder:"请输入测评类型名称",maxlength:"50","show-word-limit":""},null,8,["modelValue"])]),_:1}),t(u,{label:"编码",prop:"code"},{default:a(()=>[t(w,{modelValue:o.formData.code,"onUpdate:modelValue":e[6]||(e[6]=n=>o.formData.code=n),placeholder:"请输入测评类型编码",maxlength:"50","show-word-limit":""},null,8,["modelValue"])]),_:1}),t(u,{label:"图片",prop:"imageUrl"},{default:a(()=>[t(p(O),{modelValue:o.formData.imageUrl,"onUpdate:modelValue":e[7]||(e[7]=n=>o.formData.imageUrl=n),placeholder:"点击上传测评类型图片",tip:"建议尺寸200x200支持 jpg、png、gif 格式","max-size":10},null,8,["modelValue"])]),_:1}),t(u,{label:"详情横幅图",prop:"detailImageUrl"},{default:a(()=>[t(p(O),{modelValue:o.formData.detailImageUrl,"onUpdate:modelValue":e[8]||(e[8]=n=>o.formData.detailImageUrl=n),placeholder:"点击上传详情页横幅图",tip:"建议尺寸750x400支持 jpg、png、gif 格式","max-size":10},null,8,["modelValue"])]),_:1}),t(u,{label:"价格",prop:"price"},{default:a(()=>[t(E,{modelValue:o.formData.price,"onUpdate:modelValue":e[9]||(e[9]=n=>o.formData.price=n),min:.01,max:99999.99,precision:2,step:1,placeholder:"请输入价格",style:{width:"200px"}},null,8,["modelValue"]),e[25]||(e[25]=c("span",{class:"form-item-tip"},"元",-1))]),_:1}),t(u,{label:"介绍内容",prop:"introContent"},{default:a(()=>[t(w,{modelValue:o.formData.introContent,"onUpdate:modelValue":e[10]||(e[10]=n=>o.formData.introContent=n),type:"textarea",placeholder:"请输入测评类型介绍内容支持HTML格式",rows:6,maxlength:"5000","show-word-limit":""},null,8,["modelValue"])]),_:1}),t(u,{label:"排序",prop:"sort"},{default:a(()=>[t(E,{modelValue:o.formData.sort,"onUpdate:modelValue":e[11]||(e[11]=n=>o.formData.sort=n),min:0,max:9999,placeholder:"数值越小越靠前"},null,8,["modelValue"])]),_:1}),t(u,{label:"状态",prop:"status",required:""},{default:a(()=>[t(p(k),{modelValue:o.formData.status,"onUpdate:modelValue":e[12]||(e[12]=n=>o.formData.status=n),type:"assessment_status",placeholder:"请选择状态"},null,8,["modelValue"])]),_:1})]),_:1},8,["model","rules"])]),_:1},8,["modelValue","title"])])}}}),Oe=ye(ke,[["__scopeId","data-v-53be1600"]]);export{Oe as default};