zcui/frontend/dist/assets/MaterialWinningList-CJn32o06.js

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{_ as A,V as G,o as v,c as H,e as a,f as t,j as c,k as y,q as z,h as i,a as w,t as m,g as V,E as B,i as J}from"./index-C1KISTGN.js";import{u as j,w as q}from"./xlsx-DrgRuPKf.js";const R={class:"material-winning-list"},Y={class:"card-header"},K={style:{color:"#67c23a","font-weight":"bold"}},Q={style:{color:"#67c23a","font-weight":"bold","font-size":"18px"}},X={__name:"MaterialWinningList",setup(Z){const n=z({code:"",supplierName:"",department:"",materialName:"",biddingMethod:""}),b=z({page:1,size:20,total:0}),P=y([]),x=y([]),E=J(()=>{const l=(b.page-1)*b.size;return x.value.slice(l,l+b.size)}),N=y(!1),p=y({}),U=()=>{const l=["山东迈瑞医疗器械有限公司","国药控股山东有限公司","山东信息技术有限公司","西门子医疗系统有限公司","晨光文具股份有限公司","山东银座超市有限公司","山东七兵堂保安服务有限公司","东软医疗系统有限公司","齐鲁制药有限公司","山东省医疗器械有限公司","山东威高集团医用高分子制品股份有限公司","山东新华医疗器械股份有限公司","山东省医药集团股份有限公司","山东康泰实业有限公司","济南漱玉平民大药房连锁股份有限公司","青岛海尔生物医疗股份有限公司","山东东阿阿胶股份有限公司","山东鲁抗医药股份有限公司","山东罗欣药业集团股份有限公司","济南民生医疗器械有限公司"],e=["采购部","信息部","后勤部","设备部","仓储部","质量控制部","医疗部","综合管理部","行政部","药剂科"],g=[{code:"P20240001",name:"2024年度医疗设备采购项目"},{code:"P20240002",name:"药品集中采购项目(第一批)"},{code:"P20240003",name:"医用耗材采购项目"},{code:"P20240004",name:"信息化系统升级改造项目"},{code:"P20240005",name:"检验试剂采购项目"},{code:"P20240006",name:"后勤物资采购项目"},{code:"P20240007",name:"医用气体供应系统维护"},{code:"P20240008",name:"实验室设备采购项目"},{code:"P20240009",name:"消毒设备采购项目"},{code:"P20240010",name:"办公用品采购项目"},{code:"P20240011",name:"网络安全设备采购"},{code:"P20240012",name:"服务器设备采购项目"},{code:"P20240013",name:"空调设备采购项目"},{code:"P20240014",name:"电梯维保服务采购"},{code:"P20240015",name:"消防设备采购项目"}],d=[{name:"一次性使用注射器",code:"ML00001",spec:"5ml 带针",brand:"威高"},{name:"医用口罩",code:"ML00002",spec:"N95 头戴式",brand:"3M"},{name:"医用手套",code:"ML00003",spec:"M码 无粉乳胶",brand:"英科医疗"},{name:"心电监护仪",code:"ML00004",spec:"PM-9000",brand:"迈瑞"},{name:"B超机",code:"ML00005",spec:"DC-70",brand:"迈瑞"},{name:"血糖试纸",code:"ML00006",spec:"50片/盒",brand:"三诺生物"},{name:"输液器",code:"ML00007",spec:"0.55mm 精密过滤",brand:"威高"},{name:"医用酒精",code:"ML00008",spec:"75% 500ml",brand:"利尔康"},{name:"生理盐水",code:"ML00009",spec:"0.9% 250ml",brand:"科伦药业"},{name:"阿莫西林胶囊",code:"ML00010",spec:"0.5g×24粒",brand:"齐鲁制药"},{name:"头孢克洛胶囊",code:"ML00011",spec:"0.25g×12粒",brand:"罗欣药业"},{name:"布洛芬缓释胶囊",code:"ML00012",spec:"0.3g×20粒",brand:"新华制药"},{name:"打印机硒鼓",code:"ML00013",spec:"CF280A",brand:"惠普"},{name:"A4复印纸",code:"ML00014",spec:"80g 500张/包",brand:"晨光"},{name:"医用消毒液",code:"ML00015",spec:"含氯消毒液 5L",brand:"威露士"},{name:"病床",code:"ML00016",spec:"双摇手动病床",brand:"永辉医疗"},{name:"轮椅",code:"ML00017",spec:"标准型 HBG25",brand:"互邦"},{name:"氧气瓶",code:"ML00018",spec:"10L 铝合金",brand:"鱼跃"},{name:"紫外线消毒灯",code:"ML00019",spec:"30W 移动式",brand:"雪莱特"},{name:"医用纱布",code:"ML00020",spec:"8×10cm 10片/包",brand:"稳健医疗"},{name:"留置针",code:"ML00021",spec:"22G 密闭式",brand:"BD"},{name:"导尿管",code:"ML00022",spec:"16Fr 双腔",brand:"康乐保"},{name:"手术刀片",code:"ML00023",spec:"11号",brand:"羽毛"},{name:"止血带",code:"ML00024",spec:"乳胶管 50cm",brand:"康健"},{name:"听诊器",code:"ML00025",spec:"双面钟式",brand:"鱼跃"},{name:"血压计",code:"ML00026",spec:"臂式电子 YE660E",brand:"欧姆龙"},{name:"体温计",code:"ML00027",spec:"红外额温枪",brand:"鱼跃"},{name:"呼吸机",code:"ML00028",spec:"SV300",brand:"迈瑞"},{name:"除颤仪",code:"ML00029",spec:"BeneHeart D3",brand:"迈瑞"},{name:"手术无影灯",code:"ML00030",spec:"LED 双头",brand:"铭泰"}],f=[],L=["自行招标","委外招标"];for(let u=1;u<=50;u++){const h=g[u%g.length],r=l[u%l.length],_=e[u%e.length],M=d[u%d.length],k=L[Math.floor(Math.random()*L.length)],D=new Date(2024,Math.floor(u/5)%12,u%28+1),s=new Date(D);s.setDate(s.getDate()+Math.floor(Math.random()*30)+10);const S=(Math.random()*5e3+5).toFixed(2);f.push({id:u,code:`BID2024${String(u).padStart(4,"0")}`,supplierName:r,department:_,projectCode:h.code,projectName:h.name,materialName:M.name,materialCode:M.code,spec:M.spec,brand:M.brand,biddingDate:D.toISOString().split("T")[0],unitPrice:S,winningDate:s.toISOString().split("T")[0],biddingMethod:k})}return f},C=()=>{let l=P.value;n.code&&(l=l.filter(e=>e.code.includes(n.code))),n.supplierName&&(l=l.filter(e=>e.supplierName.includes(n.supplierName))),n.department&&(l=l.filter(e=>e.department.includes(n.department))),n.materialName&&(l=l.filter(e=>e.materialName.includes(n.materialName))),n.biddingMethod&&(l=l.filter(e=>e.biddingMethod===n.biddingMethod)),x.value=l,b.total=l.length},F=()=>{const l=localStorage.getItem("materialWinningList");P.value=l?JSON.parse(l):U(),l||localStorage.setItem("materialWinningList",JSON.stringify(P.value)),C()};G(()=>F());const I=()=>{b.page=1,C(),B.success("查询成功")},O=()=>{Object.assign(n,{code:"",supplierName:"",department:"",materialName:"",biddingMethod:""}),b.page=1,C()},W=l=>{p.value=l,N.value=!0},$=()=>{const l=x.value.map(d=>({招标编号:d.code,供应商名称:d.supplierName,需求部门:d.department,项目编码:d.projectCode,项目名称:d.projectName,物料名称:d.materialName,物料编码:d.materialCode,规格:d.spec,品牌:d.brand,招标时间:d.biddingDate,"单价(元)":d.unitPrice,中标时间:d.winningDate,招标方式:d.biddingMethod})),e=j.json_to_sheet(l),g=j.book_new();j.book_append_sheet(g,e,"物料中标结果列表"),q(g,`物料中标结果列表_${new Date().toLocaleDateString()}.xlsx`),B.success("导出成功")};return(l,e)=>{const g=c("el-button"),d=c("el-input"),f=c("el-form-item"),L=c("el-option"),u=c("el-select"),h=c("el-form"),r=c("el-table-column"),_=c("el-tag"),M=c("el-table"),k=c("el-pagination"),D=c("el-card"),s=c("el-descriptions-item"),S=c("el-descriptions"),T=c("el-dialog");return v(),H("div",R,[a(D,null,{header:t(()=>[w("div",Y,[e[10]||(e[10]=w("span",null,"物料中标结果列表",-1)),w("div",null,[a(g,{type:"success",onClick:$},{default:t(()=>[...e[9]||(e[9]=[i("导出Excel",-1)])]),_:1})])])]),default:t(()=>[a(h,{inline:!0,model:n,class:"search-form"},{default:t(()=>[a(f,{label:"招标编号"},{default:t(()=>[a(d,{modelValue:n.code,"onUpdate:modelValue":e[0]||(e[0]=o=>n.code=o),placeholder:"请输入",clearable:""},null,8,["modelValue"])]),_:1}),a(f,{label:"供应商名称"},{default:t(()=>[a(d,{modelValue:n.supplierName,"onUpdate:modelValue":e[1]||(e[1]=o=>n.supplierName=o),placeholder:"请输入",clearable:""},null,8,["modelValue"])]),_:1}),a(f,{label:"需求部门"},{default:t(()=>[a(d,{modelValue:n.department,"onUpdate:modelValue":e[2]||(e[2]=o=>n.department=o),placeholder:"请输入",clearable:""},null,8,["modelValue"])]),_:1}),a(f,{label:"物料名称"},{default:t(()=>[a(d,{modelValue:n.materialName,"onUpdate:modelValue":e[3]||(e[3]=o=>n.materialName=o),placeholder:"请输入",clearable:""},null,8,["modelValue"])]),_:1}),a(f,{label:"招标方式"},{default:t(()=>[a(u,{modelValue:n.biddingMethod,"onUpdate:modelValue":e[4]||(e[4]=o=>n.biddingMethod=o),placeholder:"请选择",clearable:"",style:{width:"150px"}},{default:t(()=>[a(L,{label:"自行招标",value:"自行招标"}),a(L,{label:"委外招标",value:"委外招标"})]),_:1},8,["modelValue"])]),_:1}),a(f,null,{default:t(()=>[a(g,{type:"primary",onClick:I},{default:t(()=>[...e[11]||(e[11]=[i("查询",-1)])]),_:1}),a(g,{onClick:O},{default:t(()=>[...e[12]||(e[12]=[i("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"]),a(M,{data:E.value,border:"",stripe:""},{default:t(()=>[a(r,{prop:"code",label:"招标编号",width:"160",fixed:"left"}),a(r,{prop:"supplierName",label:"供应商名称","min-width":"180"}),a(r,{prop:"department",label:"需求部门",width:"130"}),a(r,{prop:"projectCode",label:"项目编码",width:"130"}),a(r,{prop:"projectName",label:"项目名称","min-width":"200"}),a(r,{prop:"materialName",label:"物料名称","min-width":"160"}),a(r,{prop:"materialCode",label:"物料编码",width:"130"}),a(r,{prop:"spec",label:"规格","min-width":"150"}),a(r,{prop:"brand",label:"品牌",width:"120"}),a(r,{prop:"biddingDate",label:"招标时间",width:"120"}),a(r,{prop:"unitPrice",label:"单价(元)",width:"120",align:"right"},{default:t(({row:o})=>[w("span",K,m(o.unitPrice),1)]),_:1}),a(r,{prop:"winningDate",label:"中标时间",width:"120"}),a(r,{prop:"biddingMethod",label:"招标方式",width:"110"},{default:t(({row:o})=>[o.biddingMethod==="自行招标"?(v(),V(_,{key:0,type:"success"},{default:t(()=>[...e[13]||(e[13]=[i("自行招标",-1)])]),_:1})):(v(),V(_,{key:1,type:"primary"},{default:t(()=>[...e[14]||(e[14]=[i("委外招标",-1)])]),_:1}))]),_:1}),a(r,{label:"操作",width:"100",fixed:"right"},{default:t(({row:o})=>[a(g,{link:"",type:"primary",onClick:ee=>W(o)},{default:t(()=>[...e[15]||(e[15]=[i("查看",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"]),a(k,{"current-page":b.page,"onUpdate:currentPage":e[5]||(e[5]=o=>b.page=o),"page-size":b.size,"onUpdate:pageSize":e[6]||(e[6]=o=>b.size=o),"page-sizes":[10,20,50,100],total:b.total,layout:"total, sizes, prev, pager, next, jumper",style:{"margin-top":"20px","justify-content":"flex-end"}},null,8,["current-page","page-size","total"])]),_:1}),a(T,{modelValue:N.value,"onUpdate:modelValue":e[8]||(e[8]=o=>N.value=o),title:"物料中标详情",width:"750px"},{footer:t(()=>[a(g,{onClick:e[7]||(e[7]=o=>N.value=!1)},{default:t(()=>[...e[19]||(e[19]=[i("关闭",-1)])]),_:1})]),default:t(()=>[a(S,{column:2,border:""},{default:t(()=>[a(s,{label:"招标编号"},{default:t(()=>[i(m(p.value.code),1)]),_:1}),a(s,{label:"项目编码"},{default:t(()=>[i(m(p.value.projectCode),1)]),_:1}),a(s,{label:"项目名称",span:2},{default:t(()=>[i(m(p.value.projectName),1)]),_:1}),a(s,{label:"供应商名称",span:2},{default:t(()=>[i(m(p.value.supplierName),1)]),_:1}),a(s,{label:"需求部门"},{default:t(()=>[i(m(p.value.department),1)]),_:1}),a(s,{label:"招标方式"},{default:t(()=>[p.value.biddingMethod==="自行招标"?(v(),V(_,{key:0,type:"success"},{default:t(()=>[...e[16]||(e[16]=[i("自行招标",-1)])]),_:1})):(v(),V(_,{key:1,type:"primary"},{default:t(()=>[...e[17]||(e[17]=[i("委外招标",-1)])]),_:1}))]),_:1}),a(s,{label:"物料名称"},{default:t(()=>[i(m(p.value.materialName),1)]),_:1}),a(s,{label:"物料编码"},{default:t(()=>[i(m(p.value.materialCode),1)]),_:1}),a(s,{label:"规格"},{default:t(()=>[i(m(p.value.spec),1)]),_:1}),a(s,{label:"品牌"},{default:t(()=>[i(m(p.value.brand),1)]),_:1}),a(s,{label:"招标时间"},{default:t(()=>[i(m(p.value.biddingDate),1)]),_:1}),a(s,{label:"中标时间"},{default:t(()=>[i(m(p.value.winningDate),1)]),_:1}),a(s,{label:"单价",span:2},{default:t(()=>[w("span",Q,m(p.value.unitPrice),1),e[18]||(e[18]=i(" 元 ",-1))]),_:1})]),_:1})]),_:1},8,["modelValue"])])}}},le=A(X,[["__scopeId","data-v-5947cbc8"]]);export{le as default};