zcui/frontend/dist/assets/BiddingInfoList-12_FamY-.js

2 lines
11 KiB
JavaScript
Raw Normal View History

import{_ as K,V as Q,o as j,c as W,e,f as t,E as C,j as u,k as c,q as I,h as r,t as _,g as S,a as z}from"./index-C1KISTGN.js";import{I as X}from"./InternalBiddingDialog-DtXaRnve.js";const ee={class:"bidding-info-list"},le={__name:"BiddingInfoList",setup(te){const M=c(!1),R=c(""),U=c(null),p=I({name:"",biddingMethod:"",status:"",applyDept:""}),n=I({biddingMethod:"",biddingCode:"",projectCode:"",projectName:"",budget:0,applicant:"",applyDept:"",applyCompany:"",applyTime:""}),$={biddingMethod:[{required:!0,message:"请选择招标方式",trigger:"change"}],biddingCode:[{required:!0,message:"请输入招标编号",trigger:"blur"}],projectCode:[{required:!0,message:"请输入项目编号",trigger:"blur"}],projectName:[{required:!0,message:"请输入项目名称",trigger:"blur"}],budget:[{required:!0,message:"请输入预算金额",trigger:"blur"}],applicant:[{required:!0,message:"请输入申请人",trigger:"blur"}],applyDept:[{required:!0,message:"请输入申请部门",trigger:"blur"}],applyCompany:[{required:!0,message:"请输入申请公司",trigger:"blur"}],applyTime:[{required:!0,message:"请选择申请时间",trigger:"change"}]},V=I({page:1,size:20,total:0}),T=c([]),x=c(!1),q=c({}),O=()=>{const g=["内部招标","委外招标"],l=["采购部","设备科","信息科","后勤部","药剂科","基建科","财务科","人事科","医务部","护理部"],o=["山东第一医科大学第一附属医院","山东大学齐鲁医院","山东省立医院","济南市中心医院","山东中医药大学附属医院"],d=["张伟","李娜","王强","刘洋","陈静","杨明","赵敏","黄磊","周涛","吴芳","徐磊","孙丽","朱军","马燕","胡伟","郭敏","何磊","高峰","林涛","郑洁"],m=["2024年度医疗设备采购项目","药品集中采购项目(第一批)","医用耗材采购项目","信息化系统升级改造项目","医疗废物处理服务采购","后勤保洁服务采购","医用气体供应系统维护","检验试剂采购项目","医疗设备维保服务","办公用品采购项目","食堂食材配送服务","安保服务采购","空调系统维护保养","电梯维保服务","绿化养护服务","CT设备采购项目","中药饮片集中采购","输液器及注射器采购","ERP系统升级项目","消毒供应中心设备采购"];return Array.from({length:20},(v,i)=>{const N=g[i%2],s=i<8?0:1,w=new Date(2024,0,10+i*3).toISOString().split("T")[0];return{id:i+1,biddingMethod:N,biddingCode:`ZB2024${String(i+1).padStart(4,"0")}`,projectCode:`PROJ2024${String(i+1).padStart(4,"0")}`,projectName:m[i],budget:Math.floor(Math.random()*500+20),applicant:d[i],applyDept:l[i%l.length],applyCompany:o[i%o.length],applyTime:w,status:s}})},J=g=>{q.value=g,x.value=!0},k=async()=>{try{const g=localStorage.getItem("bidding_info_list");let l=g?JSON.parse(g):[];l.length<20&&(l=O(),localStorage.setItem("bidding_info_list",JSON.stringify(l)));let o=l;p.name&&(o=o.filter(d=>d.projectName.includes(p.name))),p.biddingMethod&&(o=o.filter(d=>d.biddingMethod===p.biddingMethod)),p.status!==""&&(o=o.filter(d=>d.status===Number(p.status))),p.applyDept&&(o=o.filter(d=>d.applyDept.includes(p.applyDept))),T.value=o,V.total=o.length}catch{C.error("加载数据失败")}};Q(()=>{k()});const E=async()=>{await k(),C.success("查询成功")},P=()=>{p.name="",p.biddingMethod="",p.status="",p.applyDept="",k()},h=c(!1),f=c({}),Y=()=>{if(!U.value){C.warning("表单未初始化");return}U.value.validate(async g=>{if(g)try{const l=localStorage.getItem("bidding_info_list"),o=l?JSON.parse(l):[],d={...n,id:n.id||Date.now(),status:n.status??0};if(n.id){const m=o.findIndex(v=>v.id===n.id);m!==-1&&(o[m]=d)}else o.push(d);localStorage.setItem("bidding_info_list",JSON.stringify(o)),C.success("保存成功"),M.value=!1,await k()}catch{C.error("保存失败")}else return C.error("请填写完整信息"),!1})};return(g,l)=>{const o=u("el-input"),d=u("el-form-item"),m=u("el-option"),v=u("el-select"),i=u("el-button"),N=u("el-form"),s=u("el-table-column"),w=u("el-tag"),F=u("el-table"),L=u("el-pagination"),A=u("el-card"),y=u("el-col"),D=u("el-row"),Z=u("el-input-n