2 lines
8.8 KiB
JavaScript
2 lines
8.8 KiB
JavaScript
|
|
import{_ as M,u as T,U as G,o as n,g as c,f as a,q,j as i,e as l,h as b,c as m,a as y,t as L,F as A,r as R,d as $,m as j,x as K,y as H,k as N,E as v}from"./index-CsXfDo-r.js";import{s as Q}from"./supplier-DLaIukEV.js";import"./index-42ANG6Sg.js";const W={class:"card-header"},X={key:0,style:{width:"100%"}},Y={key:0,style:{display:"flex","align-items":"flex-start",gap:"16px"}},Z={key:0,style:{"margin-top":"8px"}},ee={style:{padding:"20px 0"}},le={style:{"margin-top":"8px",color:"#606266"}},te={key:0},ae={key:1,style:{color:"#909399"}},se={__name:"Profile",setup(oe){const w=T(),V=N(!1),t=q({id:null,code:"",name:"",legalPerson:"",type:"",taxType:"",contact:"",phone:"",registerAddress:"",officeAddress:"",bankName:"",bankAccount:"",businessScope:"",status:-1,businessLicenseUrl:""});let U={...t};const z=()=>{const p=localStorage.getItem("suppliers"),r=(p?JSON.parse(p):[]).find(o=>o.id===w.supplierId);r&&(Object.assign(t,r),U={...r})};G(()=>{z()});const C=()=>{U={...t},V.value=!0},B=()=>{Object.assign(t,U),V.value=!1,k.value=[]},g=N(!1),k=N([]),h=p=>["image/jpeg","image/png","application/pdf"].includes(p.type)?p.size>10*1024*1024?(v.error("文件大小不能超过 10MB"),!1):!0:(v.error("仅支持 JPG、PNG、PDF 格式"),!1),I=async p=>{g.value=!0,k.value=[];try{const e=await Q.recognizeBusinessLicense(p.file);if(!(e!=null&&e.data)){v.error("服务器返回异常,请重试");return}const{success:r,imageUrl:o,data:d,message:u}=e.data;if(o&&(t.businessLicenseUrl=o),r&&d){const x={companyName:{key:"name",label:"公司名称"},legalPerson:{key:"legalPerson",label:"企业法人"},address:{key:"registerAddress",label:"注册地址"},businessScope:{key:"businessScope",label:"经营范围"}},f=[];for(const[_,{key:S,label:P}]of Object.entries(x))d[_]&&(t[S]=d[_],f.push(P));k.value=f,f.length>0?v.success(`已自动回填:${f.join("、")}`):v.warning("OCR未识别到有效信息,请手动填写")}else v.warning(u||"OCR识别失败,请手动填写")}catch(e){console.error("[LicenseUpload Error]",e),v.error("上传失败,请重试")}finally{g.value=!1}},E=()=>{const p=localStorage.getItem("suppliers"),e=p?JSON.parse(p):[],r=e.findIndex(d=>d.id===w.supplierId),o={...t,address:t.registerAddress,status:0};r!==-1?e[r]=o:(o.id=w.supplierId,o.code=`SUP${String(w.supplierId).padStart(3,"0")}`,o.registerDate=new Date().toISOString().split("T")[0],e.push(o),t.code=o.code,t.id=o.id),localStorage.setItem("suppliers",JSON.stringify(e)),t.status=0,U={...t},V.value=!1,k.value=[],v.success("供应商信息保存成功,状态已变为待审核")};return(p,e)=>{const r=i("el-button"),o=i("el-input"),d=i("el-form-item"),u=i("el-col"),x=i("el-tag"),f=i("el-row"),_=i("el-option"),S=i("el-select"),P=i("el-image"),D=i("el-upload"),O=i("el-icon"),F=i("el-form"),J=i("el-card");return n(),c(J,null,{header:a(()=>[y("div",W,[e[15]||(e[15]=y("span",null,"我的供应商信息",-1)),y("div",null,[V.value?(n(),m(A,{key:1},[l(r,{type:"success",onClick:E},{default:a(()=>[...e[13]||(e[13]=[b("保存",-1)])]),_:1}),l(r,{onClick:B},{default:a(()=>[...e[14]||(e[14]=[b("取消",-1)])]),_:1})],64)):(n(),c(r,{key:0,type:"primary",onClick:C},{default:a(()=>[...e[12]||(e[12]=[b("编辑",-1)])]),_:1}))])])]),default:a(()=>[l(F,{model:t,"label-width":"120px",disabled:!V.value},{default:a(()=>[l(f,{gutter:20},{default:a(()=>[l(u,{span:12},{default:a(()=>[l(d,{label:"供应商编码"},{default:a(()=>[l(o,{modelValue:t.code,"onUpdate:modelValue":e[0]||(e[0]=s=>t.code=s),disabled:""},null,8,["modelValue"])]),_:1})]),_:1}),l(u,{span:12},{default:a(()=>[l(d,{label:"状态"},{default:a(()=>[t.status===0?(n(),c(x,{key:0,type:"warning"},{default:a(()=>[...e[16]||(e[16]=[b("待审核",-1)])]),_:1})):t.status===1?(n(),c(x,{key:1,type:"success"},{default:a(()=>[...e[17]||(e[17]=[b("已通过",-1)])]),_:1})):t.status===2?(n(),c(x,{key:2,type:"danger"},{default:a(()=>[...e[18]||(e[18]=[b("已驳回",-1)])]),_:1})):(n(),c(x,{key:3,type:"info"},{default:a(()=>[...e[19]||(e[19]=[b("未提交",-1)])]),_:1}))]),_:1})]),_:1})]),_:1}),l(f,{gutter:20},{default:a(()=>[l(u,{span:12},{default:a
|