zcui/frontend/dist/assets/AwardNotice-CR2iqB-s.js

2 lines
11 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{_ as te,V as ae,o as r,c as D,e as l,f as t,j as p,k as S,q as le,g as f,d as V,F as $,r as ne,a as i,t as s,h as o,m as j,af as O,L as oe,i as se,E as J}from"./index-C1KISTGN.js";const ie={class:"award-notice"},re={class:"card-header"},de={class:"notice-card__header"},ue={class:"notice-card__title"},pe={class:"notice-card__body"},ce={class:"notice-card__winner"},fe={key:0,class:"notice-card__congrats"},me={class:"notice-card__footer"},ge={style:{color:"#67c23a","font-weight":"bold","font-size":"16px"}},_e={style:{color:"#67c23a","font-weight":"bold","font-size":"16px"}},ve={key:1,style:{"font-weight":"bold"}},be={style:{"font-weight":"bold"}},ye={style:{color:"#409EFF","font-weight":"bold"}},we={style:{"font-size":"13px",color:"#409EFF","margin-right":"8px"}},ke={__name:"AwardNotice",setup(xe){const A=S(""),m=le({page:1,size:10,total:0}),q=()=>{const n=["山东迈瑞医疗器械有限公司","国药控股山东有限公司","山东信息技术有限公司","西门子医疗系统有限公司","晨光文具股份有限公司","山东银座超市有限公司","山东七兵堂保安服务有限公司","济南市园林绿化工程有限公司","东软医疗系统有限公司","齐鲁制药有限公司","山东省医疗器械有限公司","山东威高集团医用高分子制品股份有限公司"],e=["公开招标","邀请招标","竞争性谈判","单一来源"],k=["价格合理,技术方案优秀,综合评分最高","产品质量符合要求,服务方案完善,综合表现最佳","投标价格适中,技术实力强,售后服务承诺到位","企业资质齐全,产品性能优越,综合评分领先","报价合理,交货期有保障,综合竞争力最强"],x=[{name:"年度医用耗材集中采购项目",budget:85.5},{name:"办公物资集中采购项目",budget:35.2},{name:"药品采购项目(第一季度)",budget:120.8},{name:"医疗设备维保服务采购",budget:48.6},{name:"后勤物资采购项目",budget:22.5},{name:"信息化设备采购项目",budget:95.4},{name:"办公用品定点采购项目",budget:68.3},{name:"医疗器械采购项目",budget:156.7},{name:"后勤服务外包项目",budget:42.1},{name:"食堂食材采购项目",budget:78.9},{name:"医用耗材补充采购项目",budget:55.8},{name:"办公家具采购项目",budget:32.6},{name:"医疗设备配件采购",budget:28.4},{name:"季度办公物资采购",budget:18.9},{name:"年度药品集中采购",budget:200.5}],z=[],_=new Date,v=0;for(let c=1;c<=25;c++){const F=x[c%x.length],u=new Date(_.getFullYear(),Math.floor((c-1)/5),(c-1)%5*6+5),N=new Date(u);N.setDate(N.getDate()+2);const g=(c+v)%n.length,R=g===v,W=(F.budget*(.85+Math.random()*.1)).toFixed(2),w=[];[...n].sort(()=>Math.random()-.5).slice(0,5).forEach((b,I)=>{const L=b===n[g]?88:75+Math.random()*10;w.push({rank:I+1,supplierName:b,totalScore:L.toFixed(2),priceScore:(L*.4+Math.random()*5).toFixed(2),techScore:(L*.35+Math.random()*5).toFixed(2),serviceScore:(L*.25+Math.random()*5).toFixed(2)})}),w.sort((b,I)=>parseFloat(I.totalScore)-parseFloat(b.totalScore)),w.forEach((b,I)=>{b.rank=I+1});const E=!R&&c<=15,a=E?null:c>20?2:null;z.push({id:c,code:`ZC2024${String(c).padStart(4,"0")}`,name:F.name,budget:F.budget,type:e[c%e.length],winnerName:n[g],winnerPrice:W,winnerScore:w.find(b=>b.rank===1).totalScore,winnerReason:k[c%k.length],openDate:u.toISOString().split("T")[0],announceDate:N.toISOString().split("T")[0],isWinner:R,canAppeal:E,appealStatus:a,scoreRanks:w})}return z},y=S([]),P=se(()=>{let n=y.value;if(A.value){const x=A.value.toLowerCase();n=n.filter(z=>z.name.toLowerCase().includes(x)||z.code.toLowerCase().includes(x))}m.total=n.length;const e=(m.page-1)*m.size,k=e+m.size;return n.slice(e,k)});ae(()=>{const n=localStorage.getItem("awardNotices");n?y.value=JSON.parse(n):(y.value=q(),localStorage.setItem("awardNotices",JSON.stringify(y.value))),m.total=y.value.length});const K=()=>{m.page=1},M=S(!1),d=S(null),Y=n=>{d.value={...n,scoreRanks:[...n.scoreRanks]},M.value=!0},Z=n=>({0:"申诉待处理",1:"申诉已受理",2:"申诉已驳回"})[n]??"—",G=n=>({0:"warning",1:"success",2:"info"})[n]??"",h=S(!1),U=S(null),T=S(""),C=S(""),H=n=>{U.value=n,h.value=!0},Q=()=>{T.value="",C.value=""},X=n=>{C.value=n.name},ee=()=>{if(!T.value.trim()){J.warning("请填写申诉理由");return}J.success("申诉已提交,等待管理员处理"),h.value=!1;const n=y.value.findIndex(e=>e.id===U.value.id);n!==-1&&(y.value[n].appealStatus=0,y.value[n].canAppeal=!1,localStorage.setItem("awardNotices",JSON.stringify(y.value)))};return(n,e)=>{const k=p("el-icon"),x=p("el-input"),z=p("el-empty"),_=p("el-tag"),v=p("el-button"),c=p("el-pagination"),F=p("el-card"),u=p("el-descriptions-item"),N=p("el-descriptions"),g=p("el-table-column"),R=p("el-table"),W=p("el-dialog"),w=p("el-form-item"),B=p("el-upload"),E=p("el-form");return r(),D("div",ie,[l(F,null,{header:t(()=>[i("div",re,[e[9]||(e[9]=i("span",{style:{"font-size":"16px","font-weight":"bold"}},"中标公告",-1)),l(x,{modelValue:A.value,"onUpdate:modelValue":e[0]||(e[0]=a=>A.value=a),placeholder:"搜索项目名称/编号",clearable:"",style:{width:"250px"},onInput:K},{prefix:t(()=>[l(k,null,{default:t(()=>[l(j(oe))]),_:1})]),_:1},8,["modelValue"])])]),default:t(()=>[P.value.length===0?(r(),f(z,{key:0,description:"暂无中标公告"})):V("",!0),(r(!0),D($,null,ne(P.value,a=>(r(),D("div",{key:a.id,class:"notice-card"},[i("div",de,[i("span",ue,s(a.name),1),l(_,{type:"success",size:"small"},{default:t(()=>[...e[10]||(e[10]=[o("已公示",-1)])]),_:1})]),i("div",pe,[i("span",null,"项目编号:"+s(a.code),1),i("span",null,"预算金额:"+s(a.budget)+" 万元",1),i("span",null,"公示时间:"+s(a.announceDate),1)]),i("div",ce,[e[11]||(e[11]=o(" 中标单位: ",-1)),a.isWinner?(r(),f(_,{key:0,type:"success",size:"large"},{default:t(()=>[o(s(a.winnerName),1)]),_:2},1024)):(r(),f(_,{key:1,type:"primary"},{default:t(()=>[o(s(a.winnerName),1)]),_:2},1024))]),a.isWinner?(r(),D("div",fe,[l(k,{class:"congrats-icon"},{default:t(()=>[l(j(O))]),_:1}),e[12]||(e[12]=i("span",null,"恭喜贵公司中标该项目!",-1))])):V("",!0),i("div",me,[l(v,{size:"small",type:"primary",onClick:b=>Y(a)},{default:t(()=>[...e[13]||(e[13]=[o("查看详情",-1)])]),_:1},8,["onClick"]),a.canAppeal&&!a.isWinner?(r(),f(v,{key:0,size:"small",type:"warning",onClick:b=>H(a)},{default:t(()=>[...e[14]||(e[14]=[o(" 申诉 ",-1)])]),_:1},8,["onClick"])):V("",!0),a.appealStatus?(r(),f(_,{key:1,type:G(a.appealStatus),size:"small"},{default:t(()=>[o(s(Z(a.appealStatus)),1)]),_:2},1032,["type"])):V("",!0)])]))),128)),P.value.length>0?(r(),f(c,{key:1,"current-page":m.page,"onUpdate:currentPage":e[1]||(e[1]=a=>m.page=a),"page-size":m.size,"onUpdate:pageSize":e[2]||(e[2]=a=>m.size=a),total:m.total,layout:"total, prev, pager, next",style:{"margin-top":"20px","justify-content":"center"}},null,8,["current-page","page-size","total"])):V("",!0)]),_:1}),l(W,{modelValue:M.value,"onUpdate:modelValue":e[4]||(e[4]=a=>M.value=a),title:"中标公告详情",width:"900px"},{footer:t(()=>[l(v,{onClick:e[3]||(e[3]=a=>M.value=!1)},{default:t(()=>[...e[24]||(e[24]=[o("关闭",-1)])]),_:1})]),default:t(()=>[d.value?(r(),D($,{key:0},[e[21]||(e[21]=i("div",{class:"section-title"},"基本信息",-1)),l(N,{column:2,border:"",style:{"margin-bottom":"20px"}},{default:t(()=>[l(u,{label:"项目编号"},{default:t(()=>[o(s(d.value.code),1)]),_:1}),l(u,{label:"项目名称",span:2},{default:t(()=>[o(s(d.value.name),1)]),_:1}),l(u,{label:"招标方式"},{default:t(()=>[o(s(d.value.type),1)]),_:1}),l(u,{label:"预算金额"},{default:t(()=>[o(s(d.value.budget)+" 万元",1)]),_:1}),l(u,{label:"中标金额"},{default:t(()=>[i("span",ge,s(d.value.winningPrice),1),e[15]||(e[15]=o(" 万元 ",-1))]),_:1}),l(u,{label:"公示日期"},{default:t(()=>[o(s(d.value.announceDate),1)]),_:1}),l(u,{label:"公示期限"},{default:t(()=>[...e[16]||(e[16]=[o("7天",-1)])]),_:1}),l(u,{label:"开标日期"},{default:t(()=>[o(s(d.value.openDate),1)]),_:1})]),_:1}),e[22]||(e[22]=i("div",{class:"section-title"},"中标结果",-1)),l(N,{column:2,border:"",style:{"margin-bottom":"20px"}},{default:t(()=>[l(u,{label:"中标供应商",span:2},{default:t(()=>[d.value.isWinner?(r(),f(_,{key:0,type:"success",size:"large",style:{"font-size":"15px",padding:"6px 16px"}},{default:t(()=>[o(s(d.value.winnerName),1)]),_:1})):(r(),f(_,{key:1,type:"primary",style:{"font-size":"14px",padding:"4px 12px"}},{default:t(()=>[o(s(d.value.winnerName),1)]),_:1}))]),_:1}),l(u,{label:"中标金额"},{default:t(()=>[i("span",_e,s(d.value.winningPrice),1),e[17]||(e[17]=o(" 万元 ",-1))]),_:1}),l(u,{label:"评标得分"},{default:t(()=>[o(s(d.value.winnerScore)+" 分",1)]),_:1}),l(u,{label:"中标原因",span:2},{default:t(()=>[o(s(d.value.winnerReason),1)]),_:1})]),_:1}),e[23]||(e[23]=i("div",{class:"section-title"},"评分排名",-1)),l(R,{data:d.value.scoreRanks,border:"",style:{"margin-bottom":"20px"}},{default:t(()=>[l(g,{label:"排名",width:"60",align:"center"},{default:t(({row:a})=>[a.rank===1?(r(),f(k,{key:0,style:{color:"#f56c6c","font-size":"18px"}},{default:t(()=>[l(j(O))]),_:1})):(r(),D("span",ve,s(a.rank),1))]),_:1}),l(g,{prop:"supplierName",label:"供应商名称","min-width":"180"}),l(g,{prop:"totalScore",label:"综合得分",width:"110",align:"center"},{default:t(({row:a})=>[i("span",be,s(a.totalScore),1),e[18]||(e[18]=o(" 分 ",-1))]),_:1}),l(g,{prop:"priceScore",label:"价格得分",width:"100",align:"center"}),l(g,{prop:"techScore",label:"技术得分",width:"100",align:"center"}),l(g,{prop:"serviceScore",label:"服务得分",width:"100",align:"center"}),l(g,{label:"结果",width:"80",align:"center"},{default:t(({row:a})=>[a.rank===1?(r(),f(_,{key:0,type:"success",size:"small"},{default:t(()=>[...e[19]||(e[19]=[o("中标",-1)])]),_:1})):(r(),f(_,{key:1,type:"info",size:"small"},{default:t(()=>[...e[20]||(e[20]=[o("未中标",-1)])]),_:1}))]),_:1})]),_:1},8,["data"])],64)):V("",!0)]),_:1},8,["modelValue"]),l(W,{modelValue:h.value,"onUpdate:modelValue":e[8]||(e[8]=a=>h.value=a),title:"提交申诉",width:"520px",onClose:Q},{footer:t(()=>[l(v,{onClick:e[7]||(e[7]=a=>h.value=!1)},{default:t(()=>[...e[28]||(e[28]=[o("取消",-1)])]),_:1}),l(v,{type:"primary",onClick:ee},{default:t(()=>[...e[29]||(e[29]=[o("提交申诉",-1)])]),_:1})]),default:t(()=>[l(E,{"label-width":"80px"},{default:t(()=>[l(w,{label:"申诉项目"},{default:t(()=>{var a;return[i("span",ye,s((a=U.value)==null?void 0:a.name),1)]}),_:1}),l(w,{label:"申诉理由"},{default:t(()=>[l(x,{modelValue:T.value,"onUpdate:modelValue":e[5]||(e[5]=a=>T.value=a),type:"textarea",rows:5,placeholder:"请详细说明申诉理由...",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1}),l(w,{label:"申诉附件"},{default:t(()=>[C.value?(r(),D($,{key:0},[i("span",we,s(C.value),1),l(v,{size:"small",type:"danger",link:"",onClick:e[6]||(e[6]=a=>C.value="")},{default:t(()=>[...e[25]||(e[25]=[o("删除",-1)])]),_:1})],64)):(r(),f(B,{key:1,"show-file-list":!1,"before-upload":()=>!1,"on-change":X,accept:".pdf,.doc,.docx,.jpg,.png"},{default:t(()=>[l(v,{size:"small",type:"primary"},{default:t(()=>[...e[26]||(e[26]=[o("上传附件",-1)])]),_:1})]),_:1})),e[27]||(e[27]=i("div",{style:{"font-size":"12px",color:"#909399","margin-top":"4px"}},"支持 PDF、Word、图片最大 10MB选填",-1))]),_:1})]),_:1})]),_:1},8,["modelValue"])])}}},Ne=te(ke,[["__scopeId","data-v-7ac78896"]]);export{Ne as default};