EditComputerInfo.3b4ababc.js 5.5 KB

1
  1. import{u as $}from"./useResponse.4dd7726f.js";import{u as S}from"./api.d180d32e.js";import{o as z,F as J,f as U}from"./elementPlus.94498fe7.js";import{d as Z,aI as C,aJ as G,r as v,Z as A,E as H,ai as i,o as p,M as g,O as a,U as r,u as t,c as F,a8 as N,F as I,S as T,a as K}from"./vue.86c1cb21.js";import{_ as Q}from"./_plugin-vue_export-helper.c27b6911.js";import"./index.9b1873ac.js";const W=["src"],X=Z({__name:"EditComputerInfo",props:C({computerOverview:{},computerNumber:{},userOptions:{},shopOptions:{}},{modelValue:{default:!1},modelModifiers:{}}),emits:C(["refresh"],["update:modelValue"]),setup(m,{emit:M}){const f=G(m,"modelValue"),h=M,b=v(),V=v(),o=A({computerNumber:"",computerType:"",station:"",shop:"",user:"",macaddress:"",ipaddress:"",images:[]}),q=A({computerNumber:[{required:!0,message:"请输入电脑编号",trigger:"blur"}],computerType:[{required:!0,message:"请输入电脑类型",trigger:"blur"}],station:[{required:!0,message:"请输入所在站点",trigger:"blur"}],shop:[{required:!0,message:"请输入所属商铺",trigger:"blur"}],user:[{required:!0,message:"请输入使用者",trigger:"blur"}],macaddress:[{required:!0,message:"请输入MAC地址",trigger:"blur"}],ipaddress:[{required:!0,message:"请输入IP地址",trigger:"blur"}]}),_=v(!1),y=v("");H(()=>{j()});const E=s=>{b.value.clearFiles();const e=s[0];e.uid=J(),b.value.handleStart(e)},k=s=>{y.value=s.url||URL.createObjectURL(s.raw),_.value=!0},B=async s=>{s&&await s.validate(async(e,d)=>{if(e){const u=new FormData;["computerNumber","computerType","station","user","macaddress","ipaddress"].forEach(n=>{u.append(n,o[n])});const c=Array.isArray(o.shop)?o.shop.join(","):o.shop;u.append("shops",c),Array.isArray(o.images)&&o.images.forEach(n=>{n.raw&&u.append("images",n.raw)});try{(await $({id:m.computerOverview.id,partial:1,dataToUpload:u},S)).code===2e3&&(U.success("修改成功"),f.value=!1,h("refresh"))}catch(n){console.error("上传失败:",n),U.error("上传失败,请重试")}}else console.log("error submit!",d)})},R=s=>{s&&(s.resetFields(),f.value=!1)};function j(){const s=Object.keys(o).reduce((e,d)=>(d in m.computerOverview&&(d==="images"&&Array.isArray(m.computerOverview[d])?e[d]=m.computerOverview[d].map(u=>({name:"已上传图片",url:u.image_url})):e[d]=m.computerOverview[d]),e),{});Object.assign(o,s)}return(s,e)=>{const d=i("el-input"),u=i("el-form-item"),w=i("el-option"),c=i("el-select"),n=i("el-icon"),x=i("el-upload"),O=i("el-button"),L=i("el-form"),P=i("el-dialog"),D=i("el-drawer");return p(),g(D,{title:`电脑编辑 - ${s.computerNumber}`,modelValue:f.value,"onUpdate:modelValue":e[11]||(e[11]=l=>f.value=l),size:"30%"},{default:a(()=>[r(L,{ref_key:"ruleFormRef",ref:V,model:t(o),rules:t(q),class:"computer-info-form","label-width":"auto"},{default:a(()=>[r(u,{label:"电脑编号:",prop:"computerNumber"},{default:a(()=>[r(d,{modelValue:t(o).computerNumber,"onUpdate:modelValue":e[0]||(e[0]=l=>t(o).computerNumber=l),placeholder:"请输入电脑编号"},null,8,["modelValue"])]),_:1}),r(u,{label:"电脑类型:",prop:"computerType"},{default:a(()=>[r(d,{modelValue:t(o).computerType,"onUpdate:modelValue":e[1]||(e[1]=l=>t(o).computerType=l),placeholder:"请输入电脑类型"},null,8,["modelValue"])]),_:1}),r(u,{label:"工位号:",prop:"station"},{default:a(()=>[r(d,{modelValue:t(o).station,"onUpdate:modelValue":e[2]||(e[2]=l=>t(o).station=l),placeholder:"请输入工位号"},null,8,["modelValue"])]),_:1}),r(u,{label:"所属店铺:",prop:"shop"},{default:a(()=>[r(c,{modelValue:t(o).shop,"onUpdate:modelValue":e[3]||(e[3]=l=>t(o).shop=l),clearable:"",filterable:"",multiple:"","collapse-tags":"",placeholder:"请选择店铺"},{default:a(()=>[(p(!0),F(I,null,N(s.shopOptions,l=>(p(),g(w,{key:l.value,label:l.label,value:l.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),r(u,{label:"电脑使用人:",prop:"user"},{default:a(()=>[r(c,{modelValue:t(o).user,"onUpdate:modelValue":e[4]||(e[4]=l=>t(o).user=l),placeholder:"请选择电脑使用人"},{default:a(()=>[(p(!0),F(I,null,N(s.userOptions,l=>(p(),g(w,{key:l.value,label:l.label,value:l.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),r(u,{label:"MAC地址:",prop:"macaddress"},{default:a(()=>[r(d,{modelValue:t(o).macaddress,"onUpdate:modelValue":e[5]||(e[5]=l=>t(o).macaddress=l),placeholder:"请输入MAC地址"},null,8,["modelValue"])]),_:1}),r(u,{label:"使用IP地址:",prop:"ipaddress"},{default:a(()=>[r(d,{modelValue:t(o).ipaddress,"onUpdate:modelValue":e[6]||(e[6]=l=>t(o).ipaddress=l),placeholder:"请输入IP地址"},null,8,["modelValue"])]),_:1}),(p(),g(u,{key:s.images,label:"电脑图片:"},{default:a(()=>[r(x,{ref_key:"upload",ref:b,"file-list":t(o).images,"onUpdate:fileList":e[7]||(e[7]=l=>t(o).images=l),"auto-upload":!1,limit:1,"on-exceed":E,action:"#","list-type":"picture-card",accept:"image/*","on-preview":k},{default:a(()=>[r(n,null,{default:a(()=>[r(t(z))]),_:1})]),_:1},8,["file-list"])]),_:1})),r(u,{class:"button-group"},{default:a(()=>[r(O,{type:"primary",onClick:e[8]||(e[8]=l=>B(V.value))},{default:a(()=>e[12]||(e[12]=[T("保存")])),_:1}),r(O,{onClick:e[9]||(e[9]=l=>R(V.value))},{default:a(()=>e[13]||(e[13]=[T("取消")])),_:1})]),_:1})]),_:1},8,["model","rules"]),r(P,{modelValue:_.value,"onUpdate:modelValue":e[10]||(e[10]=l=>_.value=l),width:"30%",height:"30%"},{default:a(()=>[K("img",{src:y.value,alt:"预览图",style:{width:"100%",height:"auto"}},null,8,W)]),_:1},8,["modelValue"])]),_:1},8,["title","modelValue"])}}});const ae=Q(X,[["__scopeId","data-v-006c8640"]]);export{ae as default};