0701提交本本,包含整体所有子页面

This commit is contained in:
Charles 2026-07-01 16:11:39 +08:00
parent 709098e515
commit 5ce8c50db9
12153 changed files with 1691968 additions and 7371 deletions

BIN
frontend-0617.zip Normal file

Binary file not shown.

View File

@ -0,0 +1,18 @@
{
"permissions": {
"allow": [
"Bash(npm run *)",
"Bash(npx vue-tsc *)",
"Bash(npx eslint *)",
"Bash(node -e \"const fs = require\\('fs'\\); const content = fs.readFileSync\\('src/views/order-management-supplier/List.vue', 'utf-8'\\); console.log\\('File read successfully, length:', content.length\\);\")",
"Bash(node -e \"console.log\\('Testing syntax...'\\); require\\('fs'\\).readFileSync\\('src/views/order/SupplierEvaluation.vue', 'utf8'\\).substring\\(0, 1000\\)\")",
"Bash(npx vite *)",
"Bash(git restore *)",
"Bash(git checkout *)",
"Bash(git add *)",
"Bash(git reset *)",
"Bash(mysql -u root -p procurement)",
"Bash(node *)"
]
}
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
.annual-procurement-plan-list[data-v-d857f2e2]{padding:20px}.card-container[data-v-d857f2e2]{margin-bottom:20px}.search-form[data-v-d857f2e2]{margin-bottom:20px;padding:10px;background:#f8f9fa;border-radius:4px}.pagination-container[data-v-d857f2e2]{margin-top:20px;text-align:right}.detail-header[data-v-d857f2e2]{display:flex;gap:30px;padding:15px;background:#f8f9fa;border-radius:4px;margin-bottom:15px}.detail-header div[data-v-d857f2e2]{flex:1}

View File

@ -0,0 +1 @@
import{_ as M,V as R,o as c,c as h,e as l,f as a,E as b,j as s,k as v,g as x,h as p,t as f,a as C,q as S}from"./index-C1KISTGN.js";import{a as G}from"./index-42ANG6Sg.js";const i=G.create({baseURL:"/api",timeout:1e4}),A={list:o=>i.get("/bidding/list",{params:o}),getById:o=>i.get(`/bidding/${o}`),save:o=>i.post("/bidding",o),publish:o=>i.put(`/bidding/${o}/publish`),delete:o=>i.delete(`/bidding/${o}`),portalNotices:o=>i.get("/bidding/portal/notices",{params:{supplierId:o}}),portalAwards:o=>i.get("/bidding/portal/awards",{params:{supplierId:o}}),portalEnroll:(o,r)=>i.post(`/bidding/portal/${o}/enroll`,r),updateEnrollmentFiles:(o,r)=>i.put(`/bidding/portal/enrollment/${o}/files`,r),submitAppeal:o=>i.post("/bidding/portal/appeal",o),listAppeals:()=>i.get("/bidding/portal/appeals"),handleAppeal:(o,r)=>i.put(`/bidding/portal/appeal/${o}/handle`,r)},J={class:"appeal-manage"},K={key:1,style:{color:"#c0c4cc"}},O={key:1,style:{color:"#909399","font-size":"12px"}},P={style:{"font-weight":"bold"}},Q={style:{color:"#606266"}},W={__name:"Appeal",setup(o){const r=v([]),k=async()=>{var n;try{const e=await A.listAppeals();r.value=((n=e.data)==null?void 0:n.data)||[]}catch{b.error("加载申诉列表失败")}};R(k);const $=n=>({0:"待处理",1:"已受理",2:"已驳回"})[n]??"—",N=n=>({0:"warning",1:"success",2:"info"})[n]??"",U=n=>n?n.replace("T"," ").substring(0,16):"—",u=v(!1),y=v(!1),_=v(null),d=S({status:1,adminComment:""}),z=n=>{_.value=n,d.status=1,d.adminComment="",u.value=!0},B=()=>{_.value=null},E=async()=>{if(!d.adminComment.trim()){b.warning("请填写处理意见");return}y.value=!0;try{await A.handleAppeal(_.value.id,{status:d.status,adminComment:d.adminComment.trim()}),b.success("处理成功"),u.value=!1,await k()}catch{b.error("处理失败")}finally{y.value=!1}};return(n,e)=>{const m=s("el-table-column"),T=s("el-link"),D=s("el-tag"),w=s("el-button"),H=s("el-table"),L=s("el-card"),g=s("el-form-item"),V=s("el-radio"),j=s("el-radio-group"),q=s("el-input"),F=s("el-form"),I=s("el-dialog");return c(),h("div",J,[l(L,null,{header:a(()=>[...e[4]||(e[4]=[C("span",{style:{"font-size":"16px","font-weight":"bold"}},"申诉管理",-1)])]),default:a(()=>[l(H,{data:r.value,border:"",stripe:""},{default:a(()=>[l(m,{prop:"projectName",label:"项目名称","min-width":"160"}),l(m,{prop:"supplierName",label:"申诉供应商","min-width":"160"}),l(m,{prop:"reason",label:"申诉理由","min-width":"200","show-overflow-tooltip":""}),l(m,{label:"申诉附件",width:"100",align:"center"},{default:a(({row:t})=>[t.appealDocUrl?(c(),x(T,{key:0,href:t.appealDocUrl,target:"_blank",type:"primary",size:"small"},{default:a(()=>[...e[5]||(e[5]=[p("查看附件",-1)])]),_:1},8,["href"])):(c(),h("span",K,"—"))]),_:1}),l(m,{label:"状态",width:"110",align:"center"},{default:a(({row:t})=>[l(D,{type:N(t.status),size:"small"},{default:a(()=>[p(f($(t.status)),1)]),_:2},1032,["type"])]),_:1}),l(m,{prop:"adminComment",label:"管理员回复","min-width":"160","show-overflow-tooltip":""},{default:a(({row:t})=>[p(f(t.adminComment||"—"),1)]),_:1}),l(m,{label:"申诉时间",width:"160",align:"center"},{default:a(({row:t})=>[p(f(U(t.createdTime)),1)]),_:1}),l(m,{label:"操作",width:"100",align:"center",fixed:"right"},{default:a(({row:t})=>[t.status===0?(c(),x(w,{key:0,size:"small",type:"primary",onClick:X=>z(t)},{default:a(()=>[...e[6]||(e[6]=[p("处理",-1)])]),_:1},8,["onClick"])):(c(),h("span",O,"已处理"))]),_:1})]),_:1},8,["data"])]),_:1}),l(I,{modelValue:u.value,"onUpdate:modelValue":e[3]||(e[3]=t=>u.value=t),title:"处理申诉",width:"480px",onClose:B},{footer:a(()=>[l(w,{onClick:e[2]||(e[2]=t=>u.value=!1)},{default:a(()=>[...e[9]||(e[9]=[p("取消",-1)])]),_:1}),l(w,{type:"primary",loading:y.value,onClick:E},{default:a(()=>[...e[10]||(e[10]=[p("确认提交",-1)])]),_:1},8,["loading"])]),default:a(()=>[l(F,{"label-width":"90px"},{default:a(()=>[l(g,{label:"申诉供应商"},{default:a(()=>{var t;return[C("span",P,f((t=_.value)==null?void 0:t.supplierName),1)]}),_:1}),l(g,{label:"申诉理由"},{default:a(()=>{var t;return[C("span",Q,f((t=_.value)==null?void 0:t.reason),1)]}),_:1}),l(g,{label:"处理结果"},{default:a(()=>[l(j,{modelValue:d.status,"onUpdate:modelValue":e[0]||(e[0]=t=>d.status=t)},{default:a(()=>[l(V,{value:1},{default:a(()=>[...e[7]||(e[7]=[p("受理",-1)])]),_:1}),l(V,{value:2},{default:a(()=>[...e[8]||(e[8]=[p("驳回",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),l(g,{label:"回复意见"},{default:a(()=>[l(q,{modelValue:d.adminComment,"onUpdate:modelValue":e[1]||(e[1]=t=>d.adminComment=t),type:"textarea",rows:4,placeholder:"请填写处理意见...",maxlength:"300","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1})]),_:1},8,["modelValue"])])}}},ee=M(W,[["__scopeId","data-v-a2059aff"]]);export{ee as default};

View File

@ -0,0 +1 @@
import{_ as q,V as C,o as P,c as B,e,f as a,j as n,k as x,q as w,h as o,a as I,t as p}from"./index-C1KISTGN.js";const O={class:"expert-archive"},z={__name:"Archive",setup(F){const u=x(!1),r=w({name:""}),s=w({expertName:"",category:"",totalProjects:0,avgScore:0,qualificationDate:"",lastAssessmentDate:"",projects:[],assessments:[]}),g=x([]),N=()=>[{id:1,expertName:"张伟",category:"临床医学",totalProjects:15,avgScore:92,qualificationDate:"2024-01-15",lastAssessmentDate:"2024-03-15"},{id:2,expertName:"李娜",category:"药学",totalProjects:12,avgScore:88,qualificationDate:"2024-01-20",lastAssessmentDate:"2024-03-18"},{id:3,expertName:"王强",category:"医疗器械",totalProjects:10,avgScore:90,qualificationDate:"2024-03-25",lastAssessmentDate:"2024-03-20"}],b=()=>{const c=localStorage.getItem("expertArchives");let t=c?JSON.parse(c):[];t.length===0&&(t=N(),localStorage.setItem("expertArchives",JSON.stringify(t)));let m=t;r.name&&(m=m.filter(_=>_.expertName.includes(r.name))),g.value=m};C(()=>{b()});const j=()=>{b()},y=()=>{r.name="",b()},h=c=>{Object.assign(s,c),s.projects=[{projectName:"医疗设备采购项目",date:"2024-01-20",role:"评审专家"},{projectName:"药品集中采购项目",date:"2024-02-15",role:"评审专家"}],s.assessments=[{date:"2024-03-15",score:95,level:"优秀",comment:"专业能力强,评审公正客观"}],u.value=!0};return(c,t)=>{const m=n("el-input"),_=n("el-form-item"),f=n("el-button"),S=n("el-form"),l=n("el-table-column"),v=n("el-table"),V=n("el-card"),i=n("el-descriptions-item"),A=n("el-descriptions"),D=n("el-divider"),k=n("el-dialog");return P(),B("div",O,[e(V,null,{header:a(()=>[...t[3]||(t[3]=[I("span",null,"专家档案归档",-1)])]),default:a(()=>[e(S,{inline:!0,model:r,class:"search-form"},{default:a(()=>[e(_,{label:"专家姓名"},{default:a(()=>[e(m,{modelValue:r.name,"onUpdate:modelValue":t[0]||(t[0]=d=>r.name=d),placeholder:"请输入",clearable:""},null,8,["modelValue"])]),_:1}),e(_,null,{default:a(()=>[e(f,{type:"primary",onClick:j},{default:a(()=>[...t[4]||(t[4]=[o("查询",-1)])]),_:1}),e(f,{onClick:y},{default:a(()=>[...t[5]||(t[5]=[o("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"]),e(v,{data:g.value,border:""},{default:a(()=>[e(l,{prop:"expertName",label:"专家姓名",width:"100"}),e(l,{prop:"category",label:"专业分类",width:"120"}),e(l,{prop:"totalProjects",label:"参与项目数",width:"120"}),e(l,{prop:"avgScore",label:"平均考核分",width:"120"}),e(l,{prop:"qualificationDate",label:"资格获得日期",width:"130"}),e(l,{prop:"lastAssessmentDate",label:"最近考核日期",width:"130"}),e(l,{label:"操作",width:"150",fixed:"right"},{default:a(({row:d})=>[e(f,{link:"",type:"primary",onClick:J=>h(d)},{default:a(()=>[...t[6]||(t[6]=[o("查看档案",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])]),_:1}),e(k,{modelValue:u.value,"onUpdate:modelValue":t[2]||(t[2]=d=>u.value=d),title:"专家档案详情",width:"800px"},{footer:a(()=>[e(f,{type:"primary",onClick:t[1]||(t[1]=d=>u.value=!1)},{default:a(()=>[...t[9]||(t[9]=[o("关闭",-1)])]),_:1})]),default:a(()=>[e(A,{column:2,border:""},{default:a(()=>[e(i,{label:"专家姓名"},{default:a(()=>[o(p(s.expertName),1)]),_:1}),e(i,{label:"专业分类"},{default:a(()=>[o(p(s.category),1)]),_:1}),e(i,{label:"参与项目数"},{default:a(()=>[o(p(s.totalProjects),1)]),_:1}),e(i,{label:"平均考核分"},{default:a(()=>[o(p(s.avgScore),1)]),_:1}),e(i,{label:"资格获得日期"},{default:a(()=>[o(p(s.qualificationDate),1)]),_:1}),e(i,{label:"最近考核日期"},{default:a(()=>[o(p(s.lastAssessmentDate),1)]),_:1})]),_:1}),e(D,{"content-position":"left"},{default:a(()=>[...t[7]||(t[7]=[o("参与项目记录",-1)])]),_:1}),e(v,{data:s.projects,border:"",size:"small"},{default:a(()=>[e(l,{prop:"projectName",label:"项目名称"}),e(l,{prop:"date",label:"参与日期",width:"110"}),e(l,{prop:"role",label:"角色",width:"100"})]),_:1},8,["data"]),e(D,{"content-position":"left"},{default:a(()=>[...t[8]||(t[8]=[o("考核记录",-1)])]),_:1}),e(v,{data:s.assessments,border:"",size:"small"},{default:a(()=>[e(l,{prop:"date",label:"考核日期",width:"110"}),e(l,{prop:"score",label:"得分",width:"80"}),e(l,{prop:"level",label:"等级",width:"80"}),e(l,{prop:"comment",label:"考核意见"})]),_:1},8,["data"])]),_:1},8,["modelValue"])])}}},$=q(z,[["__scopeId","data-v-aef74ba8"]]);export{$ as default};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
.card-header[data-v-8beaa23e]{display:flex;justify-content:space-between;align-items:center}.search-form[data-v-8beaa23e]{margin-bottom:20px}

View File

@ -0,0 +1 @@
import{_ as y,V as B,a6 as P,k as m,o as S,c as x,e as o,f as n,j as f,a as e,t as c,h as u,B as C,g as R,d as T}from"./index-C1KISTGN.js";const I={class:"bidding-management"},N={class:"card-header"},V={class:"project-info"},j={class:"info-item"},z={class:"value"},$={class:"info-item"},q={class:"value countdown"},E={class:"card-header"},U={__name:"BiddingManagement",setup(A){const D=m({name:"2024年度医疗设备采购项目"}),k=m(new Date(Date.now()+2*60*60*1e3)),_=m("");let g=null;const h=()=>{const p=Date.now(),t=k.value.getTime()-p;if(t<=0){_.value="已结束",clearInterval(g);return}const l=Math.floor(t/(1e3*60*60)),r=Math.floor(t%(1e3*60*60)/(1e3*60)),s=Math.floor(t%(1e3*60)/1e3);_.value=`${String(l).padStart(2,"0")}:${String(r).padStart(2,"0")}:${String(s).padStart(2,"0")}`};B(()=>{h(),g=setInterval(h,1e3)}),P(()=>{clearInterval(g)});const v=m((()=>{const p=["山东康泰医疗器械有限公司","北京联盛药业股份有限公司","上海瑞博生物科技集团有限公司","江苏恒信医药供应链管理有限公司","广东南新医用材料股份有限公司"],t=new Date,l=[],r=p.map((i,a)=>{const d=Math.floor(Math.random()*300)+a*60,L=new Date(t.getTime()-d*1e3),w=Math.floor(Math.random()*5e4)+15e4,b=Math.floor(w*(.88+Math.random()*.1)),M=b;return l.push(M),{time:L.toLocaleString("zh-CN",{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"}),supplier:i,firstRoundPrice:w,secondRoundPrice:b,price:M,isLowest:!1}}),s=Math.min(...l);return r.forEach(i=>{i.price===s&&(i.isLowest=!0)}),r.sort((i,a)=>new Date(a.time)-new Date(i.time))})());return(p,t)=>{const l=f("el-tag"),r=f("el-card"),s=f("el-table-column"),i=f("el-table");return S(),x("div",I,[o(r,null,{header:n(()=>[e("div",N,[t[1]||(t[1]=e("span",null,"竞价管理",-1)),o(l,{type:"warning",effect:"dark"},{default:n(()=>[...t[0]||(t[0]=[u("进行中",-1)])]),_:1})])]),default:n(()=>[e("div",V,[e("div",j,[t[2]||(t[2]=e("span",{class:"label"},"项目名称:",-1)),e("span",z,c(D.value.name),1)]),t[4]||(t[4]=e("div",{class:"info-item"},[e("span",{class:"label"},"当前状态:"),e("span",{class:"value status-bidding"},"竞价中")],-1)),e("div",$,[t[3]||(t[3]=e("span",{class:"label"},"剩余时间:",-1)),e("span",q,c(_.value),1)])])]),_:1}),o(r,{class:"quote-card"},{header:n(()=>[e("div",E,[t[5]||(t[5]=e("span",null,"实时报价列表",-1)),o(l,{type:"info"},{default:n(()=>[u("共 "+c(v.value.length)+" 条",1)]),_:1})])]),default:n(()=>[o(i,{data:v.value,border:"",style:{width:"100%"}},{default:n(()=>[o(s,{prop:"time",label:"报价时间",width:"180"}),o(s,{prop:"supplier",label:"供应商",width:"200"}),o(s,{prop:"firstRoundPrice",label:"第一轮报价(元)",width:"140",align:"right"},{default:n(({row:a})=>{var d;return[u(c(((d=a.firstRoundPrice)==null?void 0:d.toLocaleString())||"0"),1)]}),_:1}),o(s,{prop:"secondRoundPrice",label:"第二轮报价(元)",width:"140",align:"right"},{default:n(({row:a})=>{var d;return[u(c(((d=a.secondRoundPrice)==null?void 0:d.toLocaleString())||"0"),1)]}),_:1}),o(s,{prop:"price",label:"报价金额(元)",align:"right"},{default:n(({row:a})=>[e("span",{class:C({"lowest-price":a.isLowest})},[u(c(a.price.toLocaleString())+" ",1),a.isLowest?(S(),R(l,{key:0,type:"danger",size:"small",effect:"dark"},{default:n(()=>[...t[6]||(t[6]=[u("最低",-1)])]),_:1})):T("",!0)],2)]),_:1})]),_:1},8,["data"])]),_:1})])}}},H=y(U,[["__scopeId","data-v-23ce40ee"]]);export{H as default};

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
.card-header[data-v-b6e82798]{display:flex;justify-content:space-between;align-items:center}.search-form[data-v-b6e82798]{margin-bottom:20px}.content-section[data-v-b6e82798]{margin-top:20px}.content-section h4[data-v-b6e82798]{margin-bottom:10px;color:#333}.content-text[data-v-b6e82798]{padding:15px;background:#f5f7fa;border-radius:4px;min-height:100px;line-height:1.6;color:#666;white-space:pre-wrap}.attachments-section[data-v-b6e82798]{margin-top:20px}.attachments-section h4[data-v-b6e82798]{margin-bottom:10px;color:#333}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
import{_ as A,V as h,o as B,c as E,e as t,f as l,j as s,k as m,h as u,a as y,T as J,E as C,q as $}from"./index-C1KISTGN.js";const j={class:"expert-category"},q={class:"card-header"},M={__name:"Category",setup(R){const d=m(!1),f=m(""),p=m(null),a=$({name:"",description:""}),S={name:[{required:!0,message:"请输入分类名称",trigger:"blur"}],description:[{required:!0,message:"请输入分类说明",trigger:"blur"}]},x=m([]),V=()=>[{id:1,code:"CAT001",name:"药学",description:"药品研发、生产、质量控制、临床应用等领域",expertCount:3},{id:2,code:"CAT002",name:"医疗器械",description:"医疗设备、器械的研发、生产、质量管理等",expertCount:2},{id:3,code:"CAT003",name:"临床医学",description:"临床诊疗、疾病治疗、医疗技术等",expertCount:2},{id:4,code:"CAT004",name:"中医药",description:"中医诊疗、中药材、中成药等",expertCount:2},{id:5,code:"CAT005",name:"质量管理",description:"质量标准、检验检测、质量控制等",expertCount:1}],g=()=>{const n=localStorage.getItem("expertCategories");let e=n?JSON.parse(n):[];e.length===0&&(e=V(),localStorage.setItem("expertCategories",JSON.stringify(e))),x.value=e};h(()=>{g()});const k=()=>{f.value="新增分类",Object.keys(a).forEach(n=>a[n]=""),d.value=!0,p.value&&p.value.clearValidate()},w=n=>{f.value="编辑分类",Object.assign(a,n),d.value=!0},D=async n=>{try{await J.confirm("确定要删除该分类吗?","提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"});const e=localStorage.getItem("expertCategories");let o=e?JSON.parse(e):[];o=o.filter(r=>r.id!==n.id),localStorage.setItem("expertCategories",JSON.stringify(o)),C.success("删除成功"),g()}catch(e){e!=="cancel"&&C.error("删除失败")}},T=()=>{p.value&&p.value.validate(n=>{if(n){const e=localStorage.getItem("expertCategories"),o=e?JSON.parse(e):[],r={...a,id:a.id||Date.now(),code:a.code||`CAT${String(o.length+1).padStart(3,"0")}`,expertCount:a.expertCount||0};if(a.id){const c=o.findIndex(_=>_.id===a.id);c!==-1&&(o[c]=r)}else o.push(r);localStorage.setItem("expertCategories",JSON.stringify(o)),C.success("保存成功"),d.value=!1,g()}})};return(n,e)=>{const o=s("el-button"),r=s("el-table-column"),c=s("el-table"),_=s("el-card"),v=s("el-input"),b=s("el-form-item"),N=s("el-form"),I=s("el-dialog");return B(),E("div",j,[t(_,null,{header:l(()=>[y("div",q,[e[5]||(e[5]=y("span",null,"专业分类管理",-1)),t(o,{type:"primary",onClick:k},{default:l(()=>[...e[4]||(e[4]=[u("新增分类",-1)])]),_:1})])]),default:l(()=>[t(c,{data:x.value,border:""},{default:l(()=>[t(r,{prop:"code",label:"分类编码",width:"120"}),t(r,{prop:"name",label:"分类名称",width:"150"}),t(r,{prop:"description",label:"分类说明","min-width":"200"}),t(r,{prop:"expertCount",label:"专家数量",width:"100"}),t(r,{label:"操作",width:"150",fixed:"right"},{default:l(({row:i})=>[t(o,{link:"",type:"primary",onClick:O=>w(i)},{default:l(()=>[...e[6]||(e[6]=[u("编辑",-1)])]),_:1},8,["onClick"]),t(o,{link:"",type:"danger",onClick:O=>D(i)},{default:l(()=>[...e[7]||(e[7]=[u("删除",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])]),_:1}),t(I,{modelValue:d.value,"onUpdate:modelValue":e[3]||(e[3]=i=>d.value=i),title:f.value,width:"600px"},{footer:l(()=>[t(o,{onClick:e[2]||(e[2]=i=>d.value=!1)},{default:l(()=>[...e[8]||(e[8]=[u("取消",-1)])]),_:1}),t(o,{type:"primary",onClick:T},{default:l(()=>[...e[9]||(e[9]=[u("提交",-1)])]),_:1})]),default:l(()=>[t(N,{model:a,rules:S,ref_key:"formRef",ref:p,"label-width":"100px"},{default:l(()=>[t(b,{label:"分类名称",prop:"name"},{default:l(()=>[t(v,{modelValue:a.name,"onUpdate:modelValue":e[0]||(e[0]=i=>a.name=i),placeholder:"请输入分类名称"},null,8,["modelValue"])]),_:1}),t(b,{label:"分类说明",prop:"description"},{default:l(()=>[t(v,{modelValue:a.description,"onUpdate:modelValue":e[1]||(e[1]=i=>a.description=i),type:"textarea",rows:3,placeholder:"请输入分类说明"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}},z=A(M,[["__scopeId","data-v-51f28a97"]]);export{z as default};

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
.contract-supplier[data-v-ce905853]{padding:0}.card-header[data-v-ce905853]{display:flex;justify-content:space-between;align-items:center}.search-form[data-v-ce905853]{margin-bottom:16px}.batch-actions[data-v-ce905853]{margin-bottom:16px;display:flex;gap:10px}

View File

@ -0,0 +1 @@
.card-header[data-v-8b966f87]{display:flex;justify-content:space-between;align-items:center}.search-form[data-v-8b966f87]{margin-bottom:20px}[data-v-8b966f87] .el-table th.el-table__cell{background-color:#f5f7fa}.table-toolbar[data-v-8b966f87]{margin-bottom:10px}[data-v-8b966f87] .el-divider__text{font-weight:700;color:#409eff}[data-v-8b966f87] .el-input-number{width:100%}[data-v-8b966f87] .el-table .cell{padding:5px}.dialog-footer[data-v-8b966f87]{display:flex;justify-content:flex-end;gap:12px;padding:20px;border-top:1px solid #ebeef5;margin-top:20px}.dialog-footer .el-button[data-v-8b966f87]{padding:8px 20px;border-radius:8px}.upload-tip[data-v-8b966f87]{font-size:12px;color:#909399;margin-top:5px}.section[data-v-8b966f87]{margin-bottom:40px}.section[data-v-8b966f87]:last-child{margin-bottom:0}[data-v-8b966f87] .el-dialog__body{padding:20px;max-height:80vh;overflow-y:auto}[data-v-8b966f87] .el-dialog__footer{padding:20px;border-top:1px solid #ebeef5}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
.inquiry-entry[data-v-38f9c085]{padding:20px}.page-header[data-v-38f9c085]{margin-bottom:20px}.page-header h2[data-v-38f9c085]{margin:0;font-size:20px;color:#333}.detail-table-toolbar[data-v-38f9c085]{display:flex;justify-content:flex-end;gap:8px;margin-bottom:12px}.round-title[data-v-38f9c085]{display:flex;align-items:center;justify-content:center;gap:12px;padding:16px 0;margin-bottom:12px;border-bottom:2px solid #e4e7ed}.round-badge[data-v-38f9c085]{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#409eff,#66b1ff);color:#fff;font-size:16px;font-weight:700;box-shadow:0 2px 6px #409eff4d}.round-text[data-v-38f9c085]{font-size:20px;font-weight:600;color:#303133;letter-spacing:2px}.upload-tip[data-v-38f9c085]{font-size:12px;color:#909399;margin-top:5px}.table-toolbar[data-v-38f9c085]{margin-bottom:10px}.form-actions[data-v-38f9c085]{margin-top:20px;text-align:center}[data-v-38f9c085] .el-divider__text{font-weight:700;color:#409eff}[data-v-38f9c085] .el-input-number{width:100%}[data-v-38f9c085] .el-table .cell{padding:5px}[data-v-38f9c085] .el-tabs--border-card{box-shadow:0 2px 8px #0000001a}[data-v-38f9c085] .el-tab-pane{padding:20px}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

1
frontend/dist/assets/Home-CgX5z99f.js vendored Normal file

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
import{_ as O,V as T,o as r,c,e,f as t,q as $,j as d,F as b,r as v,g as B,a as g,m as x,a2 as E,U as M,h as _,k as J,E as i}from"./index-C1KISTGN.js";const j={class:"interface-manage"},F={style:{width:"100%"}},P={__name:"InterfaceManage",setup(q){const y=J("dingtalk"),V=$([{key:"dingtalk",name:"钉钉接口",description:"对接钉钉开放平台,用于消息通知、审批流程、组织架构同步等功能。",url:"",appKey:"",appSecret:"",enabled:!1,params:[]},{key:"oa",name:"OA系统接口",description:"对接OA办公自动化系统用于审批单据流转、流程状态同步等功能。",url:"",appKey:"",appSecret:"",enabled:!1,params:[]},{key:"asset",name:"资产管理接口",description:"对接资产管理系统,用于资产信息查询、采购入库同步等功能。",url:"",appKey:"",appSecret:"",enabled:!1,params:[]},{key:"contract",name:"合同管理接口",description:"对接合同管理系统,用于合同创建、合同归档、合同状态同步等功能。",url:"",appKey:"",appSecret:"",enabled:!1,params:[]},{key:"finance",name:"财务系统接口",description:"对接财务系统,用于付款申请、发票核验、费用报销等数据同步。",url:"",appKey:"",appSecret:"",enabled:!1,params:[]},{key:"wechat",name:"微信公众号接口",description:"对接微信公众号开放平台,用于消息推送、用户授权、菜单管理等功能。",url:"",appKey:"",appSecret:"",enabled:!1,params:[]}]),S=o=>{o.params.push({key:"",value:""})},U=(o,a)=>{o.params.splice(a,1)},h=o=>{const a=JSON.parse(localStorage.getItem("sysInterfaces")||"{}");a[o.key]={...o},localStorage.setItem("sysInterfaces",JSON.stringify(a)),i.success(`${o.name}配置已保存`)},w=o=>{if(!o.url){i.warning("请先填写接口地址");return}i.success("连接测试成功")};return T(()=>{const o=JSON.parse(localStorage.getItem("sysInterfaces")||"{}");V.forEach(a=>{o[a.key]&&Object.assign(a,o[a.key])})}),(o,a)=>{const p=d("el-input"),s=d("el-form-item"),k=d("el-icon"),u=d("el-button"),C=d("el-switch"),I=d("el-form"),K=d("el-tab-pane"),A=d("el-tabs"),N=d("el-card");return r(),c("div",j,[e(N,null,{header:t(()=>[...a[1]||(a[1]=[g("span",null,"接口管理",-1)])]),default:t(()=>[e(A,{modelValue:y.value,"onUpdate:modelValue":a[0]||(a[0]=l=>y.value=l)},{default:t(()=>[(r(!0),c(b,null,v(V,l=>(r(),B(K,{key:l.key,label:l.name,name:l.key},{default:t(()=>[e(I,{model:l,"label-width":"140px",style:{"max-width":"700px","margin-top":"20px"}},{default:t(()=>[e(s,{label:"接口名称"},{default:t(()=>[e(p,{value:l.name,readonly:""},null,8,["value"])]),_:2},1024),e(s,{label:"接口描述"},{default:t(()=>[e(p,{modelValue:l.description,"onUpdate:modelValue":n=>l.description=n,type:"textarea",rows:3,placeholder:"请输入接口描述"},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024),e(s,{label:"接口地址"},{default:t(()=>[e(p,{modelValue:l.url,"onUpdate:modelValue":n=>l.url=n,placeholder:"请输入接口地址"},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024),e(s,{label:"AppKey / ClientId"},{default:t(()=>[e(p,{modelValue:l.appKey,"onUpdate:modelValue":n=>l.appKey=n,placeholder:"请输入 AppKey 或 ClientId"},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024),e(s,{label:"AppSecret / Token"},{default:t(()=>[e(p,{modelValue:l.appSecret,"onUpdate:modelValue":n=>l.appSecret=n,placeholder:"请输入 AppSecret 或 Token","show-password":""},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024),e(s,{label:"扩展参数"},{default:t(()=>[g("div",F,[(r(!0),c(b,null,v(l.params,(n,f)=>(r(),c("div",{key:f,style:{display:"flex",gap:"10px","margin-bottom":"8px"}},[e(p,{modelValue:n.key,"onUpdate:modelValue":m=>n.key=m,placeholder:"参数名",style:{width:"180px"}},null,8,["modelValue","onUpdate:modelValue"]),e(p,{modelValue:n.value,"onUpdate:modelValue":m=>n.value=m,placeholder:"参数值",style:{flex:"1"}},null,8,["modelValue","onUpdate:modelValue"]),e(u,{type:"danger",link:"",onClick:m=>U(l,f)},{default:t(()=>[e(k,null,{default:t(()=>[e(x(E))]),_:1})]),_:1},8,["onClick"])]))),128)),e(u,{type:"primary",link:"",onClick:n=>S(l)},{default:t(()=>[e(k,null,{default:t(()=>[e(x(M))]),_:1}),a[2]||(a[2]=_(" 添加参数 ",-1))]),_:1},8,["onClick"])])]),_:2},1024),e(s,{label:"启用状态"},{default:t(()=>[e(C,{modelValue:l.enabled,"onUpdate:modelValue":n=>l.enabled=n,"active-text":"启用","inactive-text":"停用"},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024),e(s,null,{default:t(()=>[e(u,{type:"primary",onClick:n=>h(l)},{default:t(()=>[...a[3]||(a[3]=[_("保存配置",-1)])]),_:1},8,["onClick"]),e(u,{onClick:n=>w(l),style:{"margin-left":"10px"}},{default:t(()=>[...a[4]||(a[4]=[_("测试连接",-1)])]),_:1},8,["onClick"])]),_:2},1024)]),_:2},1032,["model"])]),_:2},1032,["label","name"]))),128))]),_:1},8,["modelValue"])]),_:1})])}}},z=O(P,[["__scopeId","data-v-ed2bccfe"]]);export{z as default};

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
.upload-tip[data-v-59990265]{font-size:12px;color:#909399;margin-top:5px}.table-toolbar[data-v-59990265]{margin-bottom:10px}[data-v-59990265] .el-divider__text{font-weight:700;color:#409eff}[data-v-59990265] .el-input-number{width:100%}[data-v-59990265] .el-table .cell{padding:5px}[data-v-59990265] .category-header-row,[data-v-59990265] .category-header-row td{background-color:#ecf5ff!important}.detail-card[data-v-59990265]{background:#f5f7fa;border:1px solid #e4e7ed;border-radius:4px;padding:16px 20px;margin-bottom:20px}.detail-table-toolbar[data-v-59990265]{display:flex;justify-content:flex-end;gap:8px;margin-bottom:12px}.detail-row[data-v-59990265]{margin-bottom:12px}.detail-row[data-v-59990265]:last-child{margin-bottom:0}.detail-label[data-v-59990265]{color:#909399;font-size:13px;margin-right:8px}.detail-value[data-v-59990265]{color:#303133;font-size:14px;font-weight:500}.round-title[data-v-59990265]{display:flex;align-items:center;justify-content:center;gap:12px;padding:16px 0;margin-bottom:12px;border-bottom:2px solid #e4e7ed}.round-badge[data-v-59990265]{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#409eff,#66b1ff);color:#fff;font-size:16px;font-weight:700;box-shadow:0 2px 6px #409eff4d}.round-text[data-v-59990265]{font-size:20px;font-weight:600;color:#303133;letter-spacing:2px}.vote-container[data-v-59990265]{display:flex;flex-direction:column;gap:16px}.vote-info-card[data-v-59990265],.vote-card[data-v-59990265]{border:1px solid #e4e7ed}.vote-card-header[data-v-59990265]{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:#303133}.vote-card-header .el-icon[data-v-59990265]{color:#409eff;font-size:18px}.vote-tip[data-v-59990265]{font-size:12px;color:#e6a23c;font-weight:400;margin-left:8px}.info-item[data-v-59990265]{display:flex;align-items:center;padding:8px 0}.info-label[data-v-59990265]{color:#909399;font-size:13px;min-width:80px}.info-value[data-v-59990265]{color:#303133;font-size:14px;font-weight:500}.vote-radio[data-v-59990265]{display:flex;justify-content:center}.vote-label-text[data-v-59990265]{display:none}.vote-selected-tip[data-v-59990265]{margin-top:16px;padding:12px 16px;background:#f0f9eb;border:1px solid #e1f3d8;border-radius:4px;display:flex;align-items:center;gap:8px;color:#67c23a;font-size:14px}.vote-selected-tip strong[data-v-59990265]{color:#303133}.vote-selected-row[data-v-59990265],.vote-selected-row td[data-v-59990265]{background-color:#f0f9eb!important}.notice-block[data-v-59990265]{padding:12px 20px;background:#fafafa;border:1px solid #ebeef5;border-radius:4px;margin-bottom:8px;line-height:1.8;font-size:14px;color:#606266}.notice-block p[data-v-59990265]{margin:4px 0}.notice-block strong[data-v-59990265]{color:#f56c6c}.supplier-registration[data-v-59990265]{padding:0}.supplier-registration .el-descriptions[data-v-59990265],.supplier-registration .el-divider[data-v-59990265]{margin-bottom:20px}.remark-text[data-v-59990265]{display:inline-block;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#606266}.remark-text[data-v-59990265]:hover{color:#409eff;cursor:pointer}

11
frontend/dist/assets/List-4bfKARAM.js vendored Normal file

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
.card-header[data-v-85bcf695]{display:flex;justify-content:space-between;align-items:center}.search-form[data-v-85bcf695]{margin-bottom:20px}

3
frontend/dist/assets/List-9p8h07Kp.js vendored Normal file

File diff suppressed because one or more lines are too long

1
frontend/dist/assets/List-BHLHSiNe.js vendored Normal file

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
.card-header[data-v-24494484]{display:flex;justify-content:space-between;align-items:center}.search-form[data-v-24494484]{margin-bottom:20px}

View File

@ -0,0 +1 @@
.order-management-purchaser[data-v-72791860]{padding:20px;background:#f5f7fa;min-height:100%}.page-header[data-v-72791860]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding:16px 20px;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000000f}.page-header h2[data-v-72791860]{margin:0;font-size:20px;font-weight:600;color:#303133}.header-actions[data-v-72791860]{display:flex;gap:12px}.filter-bar[data-v-72791860]{display:flex;gap:16px;margin-bottom:20px;padding:16px 20px;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000000f}.order-table[data-v-72791860]{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000000f}.total-price[data-v-72791860]{font-weight:600;color:#f56c6c}.waybill-number[data-v-72791860]{font-family:Courier New,monospace;font-weight:500;color:#409eff}.detail-content[data-v-72791860]{padding:0 10px}.divider-icon[data-v-72791860]{margin-right:8px}.section-title[data-v-72791860]{margin:20px 0 15px;font-size:16px;font-weight:600;color:#303133;display:flex;align-items:center;gap:8px}.logistics-track-section[data-v-72791860]{margin-top:20px;padding:20px;background:#f9fafb;border-radius:8px}.logistics-timeline[data-v-72791860]{margin-top:15px}[data-v-72791860] .el-dialog__header{padding:20px 20px 10px;border-bottom:1px solid #ebeef5}[data-v-72791860] .el-dialog__body{padding:20px}[data-v-72791860] .el-divider__text{font-weight:600;color:#409eff;font-size:15px;display:flex;align-items:center}[data-v-72791860] .el-descriptions__label{font-weight:500;width:120px}[data-v-72791860] .el-timeline-item__timestamp{font-weight:500;color:#606266}[data-v-72791860] .el-button .el-icon{margin-right:4px}[data-v-72791860] .el-empty{padding:40px 0}[data-v-72791860] .el-table th.el-table__cell{background-color:#f5f7fa}

1
frontend/dist/assets/List-Cc3Ai1fr.js vendored Normal file

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
.card-header[data-v-00bd5109]{display:flex;justify-content:space-between;align-items:center}.search-form[data-v-00bd5109]{margin-bottom:20px}

1
frontend/dist/assets/List-DUr1Tf0v.js vendored Normal file

File diff suppressed because one or more lines are too long

1
frontend/dist/assets/List-DkVn4vVH.js vendored Normal file

File diff suppressed because one or more lines are too long

1
frontend/dist/assets/List-Dm0gAko-.js vendored Normal file

File diff suppressed because one or more lines are too long

1
frontend/dist/assets/List-j1zqefHb.js vendored Normal file

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
.card-header[data-v-51bff8fc]{display:flex;justify-content:space-between;align-items:center}.header-actions[data-v-51bff8fc]{display:flex;gap:10px}.search-form[data-v-51bff8fc],.product-info-section[data-v-51bff8fc],.supplier-info-section[data-v-51bff8fc]{margin-bottom:20px}.section-title[data-v-51bff8fc]{font-size:16px;font-weight:600;color:#303133;margin-bottom:12px;padding-left:8px;border-left:4px solid #409eff}.product-table[data-v-51bff8fc],.supplier-table[data-v-51bff8fc]{width:100%}.product-table[data-v-51bff8fc] .el-input__wrapper{padding:1px 8px}.product-table[data-v-51bff8fc] .el-input-number{width:100%}.product-table[data-v-51bff8fc] .el-input-number .el-input__wrapper{padding:1px 8px}

39
frontend/dist/assets/List-pODAwaap.js vendored Normal file

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
import{_ as V,u as x,o as b,c as k,a as d,e as s,f as r,j as a,l as y,h as z,q as L,k as c,E as f}from"./index-C1KISTGN.js";const q={class:"login-container"},B={class:"login-box"},C={__name:"Login",setup(E){const t=y(),p=c(),n=c(!1),_=x(),o=L({username:"",password:""}),g={username:[{required:!0,message:"请输入用户名",trigger:"blur"}],password:[{required:!0,message:"请输入密码",trigger:"blur"}]},v=async()=>{await p.value.validate(),n.value=!0;const l=_.login(o.username,o.password);n.value=!1,l.success?(f.success("登录成功"),l.role==="admin"?t.push("/admin/home"):l.role==="zcfzr"?t.push("/zcfzr/home"):l.role==="supplier"&&t.push("/supplier/profile")):f.error("用户名或密码错误")};return(l,e)=>{const m=a("el-input"),u=a("el-form-item"),h=a("el-button"),w=a("el-form");return b(),k("div",q,[d("div",B,[e[3]||(e[3]=d("div",{class:"login-header"},[d("h2",null,"漱玉平民非商品招采平台")],-1)),s(w,{model:o,rules:g,ref_key:"formRef",ref:p,class:"login-form"},{default:r(()=>[s(u,{prop:"username"},{default:r(()=>[s(m,{modelValue:o.username,"onUpdate:modelValue":e[0]||(e[0]=i=>o.username=i),placeholder:"请输入用户名","prefix-icon":"User"},null,8,["modelValue"])]),_:1}),s(u,{prop:"password"},{default:r(()=>[s(m,{modelValue:o.password,"onUpdate:modelValue":e[1]||(e[1]=i=>o.password=i),type:"password",placeholder:"请输入密码","prefix-icon":"Lock"},null,8,["modelValue"])]),_:1}),s(u,null,{default:r(()=>[s(h,{type:"primary",style:{width:"100%"},onClick:v,loading:n.value},{default:r(()=>[...e[2]||(e[2]=[z("登录",-1)])]),_:1},8,["loading"])]),_:1})]),_:1},8,["model"])])])}}},R=V(C,[["__scopeId","data-v-234033b7"]]);export{R as default};

View File

@ -0,0 +1 @@
.main-layout[data-v-0b684673]{width:100%;height:100vh}.header[data-v-0b684673]{background:linear-gradient(135deg,#081b41,#1a75ff);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 20px;height:60px;box-shadow:0 2px 8px #0000001a}.left-header[data-v-0b684673]{display:flex;align-items:center;gap:35px;padding-left:10px}.logo[data-v-0b684673]{display:flex;align-items:center;gap:10px}.logo-img[data-v-0b684673]{height:42px;width:auto;border-radius:6px;box-shadow:0 2px 4px #0000001a}.logo-text[data-v-0b684673]{font-size:18px;font-weight:700;color:#fff;letter-spacing:1px;text-shadow:0 1px 2px rgba(0,0,0,.1)}.top-nav[data-v-0b684673]{display:flex;gap:10px}.nav-item[data-v-0b684673]{display:flex;align-items:center;gap:6px;padding:0 16px;height:100%;cursor:pointer;transition:all .3s ease;color:#fffc;font-size:14px;font-weight:500;border-radius:6px;position:relative}.nav-item[data-v-0b684673]:hover{background-color:#fff3;color:#fff;transform:translateY(-2px)}.nav-item.active[data-v-0b684673]{background-color:#ffffff40;color:#fff;box-shadow:0 4px 12px #00000026}.nav-item.active[data-v-0b684673]{background-color:#ffffff26;color:#fff;box-shadow:0 2px 8px #0000001a}.logo[data-v-0b684673]{font-size:18px;font-weight:700;display:flex;align-items:center;gap:10px}.logo-img[data-v-0b684673]{height:50px;width:auto}.user-name[data-v-0b684673]{cursor:pointer;display:flex;align-items:center;gap:8px;padding:6px 12px;border-radius:20px;transition:all .3s ease;background-color:#ffffff26;font-size:14px;font-weight:500;color:#fff}.user-name[data-v-0b684673]:hover{background-color:#ffffff40;transform:translateY(-1px)}.user-info[data-v-0b684673]{position:relative}.sidebar[data-v-0b684673]{background:#081b41;border-right:1px solid rgba(22,93,255,.3);height:calc(100vh - 60px);box-shadow:2px 0 8px #0000001a}.sidebar-menu[data-v-0b684673]{border-right:none;background:transparent}[data-v-0b684673] .el-scrollbar__wrap{overflow-x:hidden}[data-v-0b684673] .el-scrollbar__thumb{background-color:#c0c4cc;border-radius:4px;opacity:.3;transition:opacity .3s}[data-v-0b684673] .el-scrollbar__thumb:hover{opacity:.6}[data-v-0b684673] .el-menu{padding:10px 0;border-right:none;background:transparent}[data-v-0b684673] .el-menu-item,[data-v-0b684673] .el-sub-menu__title{height:48px;line-height:48px;margin:2px 10px;border-radius:8px;transition:all .3s ease;color:#ffffffe6;position:relative;overflow:hidden}[data-v-0b684673] .el-menu-item.is-active{background-color:#ffffff40;color:#fff;font-weight:600;box-shadow:0 4px 12px #00000026;border-left:4px solid #fff}[data-v-0b684673] .el-menu-item:hover,[data-v-0b684673] .el-sub-menu__title:hover{background-color:#fff3;color:#fff;transform:translate(4px)}[data-v-0b684673] .el-sub-menu .el-menu-item{padding-left:40px!important}[data-v-0b684673] .el-sub-menu .el-sub-menu .el-menu-item{padding-left:60px!important}[data-v-0b684673] .el-sub-menu__title:hover{background-color:#ffffff1a;color:#fff}[data-v-0b684673] .el-sub-menu.is-active>.el-sub-menu__title{color:#fff;background-color:#ffffff1a}.main-content[data-v-0b684673]{background:#f5f7fa;padding:20px;height:calc(100vh - 60px);overflow-y:auto}.main-content[data-v-0b684673]::-webkit-scrollbar{width:6px}.main-content[data-v-0b684673]::-webkit-scrollbar-track{background:transparent}.main-content[data-v-0b684673]::-webkit-scrollbar-thumb{background:#c0c4cc;border-radius:3px}.main-content[data-v-0b684673]::-webkit-scrollbar-thumb:hover{background:#909399}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
import{_ as q,o as m,c as b,e as a,f as n,j as r,k as u,h as i,t as w,g,d as T,a as V,F as z,r as A,E as c,T as I}from"./index-C1KISTGN.js";import{A as L,M as U}from"./AnnualProcurementPlanDialog-ChZoZHwC.js";const j={class:"my-application"},F={class:"card-header"},G={__name:"MyApplication",setup(H){const p=u(!1),f=u(!1),y=u(!1),k=u(!1),N=[{id:1,name:"年度招采计划申请",type:"annual"},{id:2,name:"非经营性商品录入",type:"material"},{id:3,name:"询比价流程",type:"inquiry"}],d=u([{id:1,processName:"年度招采计划-2026年IT设备采购",processType:"年度招采计划申请",status:"审批中",applicant:"管理员",applyTime:"2026-05-15 10:30:00",currentStep:"部门经理审批"},{id:2,processName:"非经营性商品-办公电脑",processType:"非经营性商品录入",status:"已完成",applicant:"管理员",applyTime:"2026-05-10 14:20:00",currentStep:"已完成"}]),x=t=>{switch(t){case"已完成":return"success";case"审批中":return"warning";case"待提交":return"info";case"已驳回":return"danger";default:return"info"}},C=()=>{p.value=!0},S=t=>{p.value=!1,t.type==="annual"?f.value=!0:t.type==="material"?y.value=!0:t.type==="inquiry"&&(k.value=!0)},v=t=>{c.success("提交成功");let e="";t.tabType==="apply"?t.planType?e="年度招采计划申请":t.materialName?e="非经营性商品录入":t.inquiryName&&(e="询比价流程"):e="年度招采计划申请";const s={id:Date.now(),processName:`${t.inquiryName||t.projectName||t.materialName||"新申请"}`,processType:e,status:"审批中",applicant:t.applicant,applyTime:new Date().toLocaleString("zh-CN"),currentStep:"部门经理审批"};d.value.unshift(s)},D=t=>{c.info(`查看流程:${t.processName}`)},$=t=>{c.info(`编辑流程:${t.processName}`)},B=t=>{I.confirm(`确定要删除流程"${t.processName}"吗?`,"确认删除",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(()=>{const e=d.value.findIndex(s=>s.id===t.id);e>-1&&(d.value.splice(e,1),c.success("删除成功"))}).catch(()=>{c.info("已取消删除")})};return(t,e)=>{const s=r("el-button"),o=r("el-table-column"),h=r("el-tag"),E=r("el-table"),M=r("el-card"),P=r("el-dialog");return m(),b("div",j,[a(M,null,{header:n(()=>[V("div",F,[e[5]||(e[5]=V("span",null,"我的申请",-1)),a(s,{type:"primary",onClick:C},{default:n(()=>[...e[4]||(e[4]=[i("发起新流程",-1)])]),_:1})])]),default:n(()=>[a(E,{data:d.value,border:"",stripe:"",style:{width:"100%"}},{default:n(()=>[a(o,{prop:"processName",label:"流程名称",width:"200"}),a(o,{prop:"processType",label:"流程类型",width:"150"}),a(o,{prop:"status",label:"状态",width:"100"},{default:n(l=>[a(h,{type:x(l.row.status)},{default:n(()=>[i(w(l.row.status),1)]),_:2},1032,["type"])]),_:1}),a(o,{prop:"applicant",label:"申请人",width:"120"}),a(o,{prop:"applyTime",label:"申请时间",width:"180"}),a(o,{prop:"currentStep",label:"当前节点",width:"120"}),a(o,{label:"操作",width:"200"},{default:n(l=>[a(s,{type:"text",size:"small",onClick:_=>D(l.row)},{default:n(()=>[...e[6]||(e[6]=[i("查看",-1)])]),_:1},8,["onClick"]),l.row.status==="待提交"?(m(),g(s,{key:0,type:"text",size:"small",onClick:_=>$(l.row)},{default:n(()=>[...e[7]||(e[7]=[i("编辑",-1)])]),_:1},8,["onClick"])):T("",!0),l.row.status==="待提交"?(m(),g(s,{key:1,type:"text",size:"small",onClick:_=>B(l.row),style:{color:"#f56c6c"}},{default:n(()=>[...e[8]||(e[8]=[i("删除",-1)])]),_:1},8,["onClick"])):T("",!0)]),_:1})]),_:1},8,["data"])]),_:1}),a(P,{modelValue:p.value,"onUpdate:modelValue":e[1]||(e[1]=l=>p.value=l),title:"选择流程",width:"500px"},{footer:n(()=>[a(s,{onClick:e[0]||(e[0]=l=>p.value=!1)},{default:n(()=>[...e[9]||(e[9]=[i("取消",-1)])]),_:1})]),default:n(()=>[(m(),b(z,null,A(N,l=>a(s,{key:l.id,class:"process-template-btn",onClick:_=>S(l)},{default:n(()=>[i(w(l.name),1)]),_:2},1032,["onClick"])),64))]),_:1},8,["modelValue"]),a(L,{modelValue:f.value,"onUpdate:modelValue":e[2]||(e[2]=l=>f.value=l),onSubmit:v},null,8,["modelValue"]),a(U,{modelValue:y.value,"onUpdate:modelValue":e[3]||(e[3]=l=>y.value=l),onSubmit:v},null,8,["modelValue"])])}}},O=q(G,[["__scopeId","data-v-fdb700dc"]]);export{O as default};

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
.upload-tip[data-v-3c108619]{font-size:12px;color:#909399;margin-top:5px}.table-toolbar[data-v-3c108619]{margin-bottom:10px}[data-v-3c108619] .el-divider__text{font-weight:700;color:#409eff}[data-v-3c108619] .el-input-number{width:100%}[data-v-3c108619] .el-table .cell{padding:5px}.upload-tip[data-v-eee5bd9e]{font-size:12px;color:#909399;margin-top:5px}.table-toolbar[data-v-eee5bd9e]{margin-bottom:10px}[data-v-eee5bd9e] .el-divider__text{font-weight:700;color:#409eff}[data-v-eee5bd9e] .el-input-number{width:100%}[data-v-eee5bd9e] .el-table .cell{padding:5px}.upload-tip[data-v-f7e522b9]{font-size:12px;color:#909399;margin-top:5px}.table-toolbar[data-v-f7e522b9]{margin-bottom:10px}[data-v-f7e522b9] .el-divider__text{font-weight:700;color:#409eff}[data-v-f7e522b9] .el-input-number{width:100%}[data-v-f7e522b9] .el-table .cell{padding:5px}.my-process[data-v-837f9fee]{width:100%;background:linear-gradient(135deg,#f5f7fa,#e8f4ff);min-height:100vh;padding:30px;position:relative}.main-card[data-v-837f9fee]{border-radius:20px;border:none;box-shadow:0 8px 32px #165dff1a;background:#fff;overflow:hidden}.card-header[data-v-837f9fee]{display:flex;justify-content:space-between;align-items:center;padding:24px 32px;border-bottom:1px solid #e4e7ed}.card-header .el-tag[data-v-837f9fee]{height:32px;padding:0 12px;font-size:14px}.process-categories[data-v-837f9fee]{padding:30px 32px}.category-section[data-v-837f9fee]{margin-bottom:40px}.category-section[data-v-837f9fee]:last-child{margin-bottom:0}.category-header[data-v-837f9fee]{margin-bottom:24px}.category-title[data-v-837f9fee]{display:flex;align-items:center;gap:12px;margin-bottom:16px}.category-name[data-v-837f9fee]{font-size:20px;font-weight:600;color:#303133;position:relative;padding-left:12px}.category-name[data-v-837f9fee]:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:20px;background:linear-gradient(180deg,#165dff,#409eff);border-radius:2px}.category-count[data-v-837f9fee]{height:26px;padding:0 10px;font-size:13px}.category-divider[data-v-837f9fee]{height:1px;background:linear-gradient(90deg,#e4e7ed,#e4e7ed4d)}.process-grid[data-v-837f9fee]{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:24px;padding:0}.process-card[data-v-837f9fee]{display:flex;flex-direction:column;align-items:center;padding:30px 20px;border:1px solid #e4e7ed;border-radius:16px;cursor:pointer;transition:all .3s ease;background:#fff;position:relative;overflow:hidden}.process-card[data-v-837f9fee]:before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,var(--process-color) 0%,transparent 100%)}.process-card[data-v-837f9fee]:hover{border-color:var(--process-color);box-shadow:0 8px 30px #409eff33;transform:translateY(-4px)}.process-card[data-v-837f9fee]:hover:before{background:linear-gradient(90deg,var(--process-color) 0%,transparent 100%)}.process-content[data-v-837f9fee]{display:flex;flex-direction:column;align-items:center;width:100%;z-index:1}.process-icon[data-v-837f9fee]{width:80px;height:80px;border-radius:16px;display:flex;align-items:center;justify-content:center;color:#fff;margin-bottom:20px;transition:all .3s ease;position:relative}.process-icon[data-v-837f9fee]:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;border-radius:16px;background:#fff3;opacity:0;transition:opacity .3s ease}.process-card:hover .process-icon[data-v-837f9fee]:after{opacity:1}.process-card:hover .process-icon[data-v-837f9fee]{transform:scale(1.1) rotate(5deg)}.process-info[data-v-837f9fee]{text-align:center;padding:0 10px}.process-name[data-v-837f9fee]{font-size:18px;font-weight:600;color:#303133;margin-bottom:8px;line-height:1.4}.process-category[data-v-837f9fee]{font-size:14px;color:#909399;margin-bottom:12px}.process-status[data-v-837f9fee]{margin-top:4px;height:24px;padding:0 8px;font-size:12px}.my-process[data-v-837f9fee]:before{content:"";position:absolute;top:0;left:0;right:0;height:200px;background:linear-gradient(135deg,rgba(22,93,255,.03) 0%,transparent 100%);z-index:0}.my-process[data-v-837f9fee]:after{content:"";position:absolute;bottom:0;right:0;width:400px;height:400px;background:radial-gradient(circle,rgba(22,93,255,.05) 0%,transparent 70%);border-radius:50%;z-index:0}@media (max-width: 768px){.my-process[data-v-837f9fee]{padding:20px}.main-card[data-v-837f9fee]{margin:0 10px}.card-header[data-v-837f9fee]{padding:20px}.process-grid[data-v-837f9fee]{padding:20px;gap:16px}.process-card[data-v-837f9fee]{padding:20px 15px}.process-name[data-v-837f9fee]{font-size:16px}}[data-v-837f9fee]::-webkit-scrollbar{width:8px;height:8px}[data-v-837f9fee]::-webkit-scrollbar-track{background:#f0f7ff;border-radius:4px}[data-v-837f9fee]::-webkit-scrollbar-thumb{background:#165dff;border-radius:4px;transition:all .3s ease}[data-v-837f9fee]::-webkit-scrollbar-thumb:hover{background:#1a75ff;box-shadow:0 0 6px #165dff4d}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
.material-archive-dialog[data-v-e02922ea]{--el-dialog-padding-primary: 20px}.archive-tabs[data-v-e02922ea]{border:none}.basic-info-section[data-v-e02922ea]{padding:10px 0}.section-title[data-v-e02922ea]{display:flex;align-items:center;font-size:16px;font-weight:600;color:#303133;margin:20px 0 15px;padding-bottom:10px;border-bottom:2px solid #409eff}.section-title .el-icon[data-v-e02922ea]{margin-right:8px;font-size:18px;color:#409eff}.supplier-section[data-v-e02922ea]{margin-top:20px}.supplier-info-card[data-v-e02922ea]{background:linear-gradient(135deg,#f5f7fa,#e8ecf1);border-radius:8px;padding:20px;border:1px solid #dcdfe6}.supplier-header[data-v-e02922ea]{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:15px;border-bottom:1px solid #e4e7ed}.supplier-name[data-v-e02922ea]{font-size:18px;font-weight:600;color:#303133}.supplier-details[data-v-e02922ea]{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.detail-item[data-v-e02922ea]{display:flex;align-items:center}.detail-item .label[data-v-e02922ea]{color:#606266;font-size:14px;min-width:100px}.detail-item .value[data-v-e02922ea]{color:#303133;font-size:14px;font-weight:500}.detail-item .value.contact-highlight[data-v-e02922ea]{color:#409eff;font-weight:600}.detail-item .value .el-icon[data-v-e02922ea]{margin-right:4px;vertical-align:middle}.attachments-section[data-v-e02922ea]{padding:10px 0}.upload-area[data-v-e02922ea]{margin-bottom:20px}.attachments-list[data-v-e02922ea]{margin-top:20px}.attachment-cards[data-v-e02922ea]{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.attachment-card[data-v-e02922ea]{display:flex;align-items:center;padding:16px;background:#f8f9fa;border-radius:8px;border:1px solid #e4e7ed;transition:all .3s}.attachment-card[data-v-e02922ea]:hover{box-shadow:0 2px 12px #0000001a;transform:translateY(-2px)}.attachment-icon[data-v-e02922ea]{margin-right:12px;color:#409eff}.attachment-info[data-v-e02922ea]{flex:1;min-width:0}.attachment-name[data-v-e02922ea]{font-size:14px;font-weight:500;color:#303133;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:4px}.attachment-meta[data-v-e02922ea]{display:flex;gap:12px;font-size:12px;color:#909399}.attachment-actions[data-v-e02922ea]{display:flex;gap:8px}.images-section[data-v-e02922ea]{padding:10px 0}.image-gallery[data-v-e02922ea]{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;margin-top:20px}.gallery-item[data-v-e02922ea]{width:100%;height:200px;border-radius:8px;cursor:pointer;transition:all .3s}.gallery-item[data-v-e02922ea]:hover{transform:scale(1.05);box-shadow:0 4px 20px #00000026}.image-placeholder[data-v-e02922ea]{display:flex;align-items:center;justify-content:center;height:100%;color:#409eff}.approval-section[data-v-e02922ea],.approval-content[data-v-e02922ea]{padding:10px 0}.approval-header[data-v-e02922ea]{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.approval-title[data-v-e02922ea]{font-size:16px;font-weight:600;color:#303133}.approval-details[data-v-e02922ea]{background:#f8f9fa;padding:12px;border-radius:4px;border-left:3px solid #409eff}.detail-row[data-v-e02922ea]{display:flex;margin-bottom:6px}.detail-row[data-v-e02922ea]:last-child{margin-bottom:0}.detail-row .label[data-v-e02922ea]{color:#606266;font-size:14px;min-width:80px}.detail-row .value[data-v-e02922ea]{color:#303133;font-size:14px}.detail-row .value.comment[data-v-e02922ea]{color:#606266;font-style:italic}.purchase-section[data-v-e02922ea]{padding:10px 0}.dialog-footer[data-v-e02922ea]{display:flex;justify-content:flex-end;gap:12px}@media print{.material-archive-dialog[data-v-e02922ea] .el-dialog__footer,.material-archive-dialog[data-v-e02922ea] .el-tabs__header,.material-archive-dialog[data-v-e02922ea] .upload-area,.material-archive-dialog[data-v-e02922ea] .attachment-actions,.material-archive-dialog[data-v-e02922ea] .el-table-column:last-child{display:none!important}}.non-operating-material-container[data-v-3fa838e9]{padding:20px}.card-container[data-v-3fa838e9]{margin-bottom:20px}.search-form[data-v-3fa838e9]{margin-bottom:20px;padding:10px;background:#f8f9fa;border-radius:4px}.pagination-container[data-v-3fa838e9]{margin-top:20px;text-align:right}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
.extraction-info[data-v-3bc1c97c]{margin-bottom:0}.search-form[data-v-3bc1c97c]{margin-bottom:16px}.selected-section[data-v-3bc1c97c],.result-section[data-v-3bc1c97c]{margin-top:16px}.card-header[data-v-097c2e78]{display:flex;justify-content:space-between;align-items:center}.search-form[data-v-097c2e78]{margin-bottom:20px}.section-title[data-v-097c2e78]{font-size:16px;font-weight:700;color:#409eff;margin-bottom:15px}[data-v-097c2e78] .el-divider__text{font-weight:700;color:#409eff}[data-v-097c2e78] .el-input-number{width:100%}[data-v-097c2e78] .el-table .cell{padding:5px}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
.pending-bidding-admin[data-v-e8db19a7]{padding:0}.search-form[data-v-e8db19a7]{margin-bottom:20px}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Some files were not shown because too many files have changed in this diff Show More