You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
2 lines
7.9 KiB
2 lines
7.9 KiB
import{p as G,E as O,G as A,H as Y,F as Z,b as ee}from"./el-button-e2db9d24.js";import{E as ae}from"./el-drawer-ff04497f.js";import{E as le}from"./el-message-box-b36f6f03.js";import{E as L,a as oe,b as te}from"./el-breadcrumb-item-4a5b4005.js";import{E as se,a as ne}from"./el-table-column-448a0581.js";import"./el-tag-290e5c91.js";import"./el-tooltip-4ed993c7.js";import"./el-scrollbar-5933f25d.js";import{E as re,a as de,b as ue}from"./el-dropdown-item-bbb7be2f.js";import"./el-icon-08628b36.js";import{E as S}from"./el-input-5fc6aaec.js";import{q as c,z as K,o as y,f as B,M as p,Q as e,w as a,c as q,a as k,N as v,O as P,V as ie,F as H,v as ce,a3 as me,a4 as pe,D as _e,a5 as fe}from"./index-7ed2d026.js";import{E as ve}from"./el-dialog-e4a7f8ff.js";import{E as ge,a as be}from"./el-form-item-8920ca0c.js";import{E as ye}from"./el-progress-c3e10056.js";import{a as C,u as we}from"./request-26ab9dc6.js";import{f as he}from"./style-d6e2b45a.js";import{E as g}from"./el-message-3c79da29.js";import{_ as Ee}from"./_plugin-vue_export-helper-c27b6911.js";import"./use-dialog-7562524e.js";import"./index-dc664f45.js";import"./aria-60e0cdc6.js";import"./castArray-283666ff.js";import"./_baseClone-a5946d7f.js";import"./cloneDeep-e81a5417.js";const Ve=async()=>C("/branch/getBranchList","GET"),ke=async _=>C("/branch/getBranch","GET",{id:_}),xe=async _=>C("/branch/deleteBranch","GET",{id:_}),Q=async _=>C("/branch/updateBranch","POST",_),Be=async _=>C("/branch/addBranch","POST",_);const Ce=["src"],De={class:"demo-drawer__footer",style:{"text-align":"right"}},Ue={key:0,class:"cropper-section"},Fe={class:"crop-area"},Ie={class:"crop-btn"},Te={__name:"Form",props:{editid:{type:Number,default:0}},emits:["close"],setup(_,{emit:I}){const w=_,b=I,x=c("insert"),f=c(!1),D=c(null),o=c({id:0});K(async()=>{if(w.editid){let t=await ke(w.editid);t.code===200&&(o.value=t.data,x.value="update")}});const T=c({name:[{required:!0,message:"供應商名稱必填",trigger:"blur"}]}),r=c({show:!1,img:null,ratio:1.875}),U=c(null),$=t=>t.type!=="image/jpeg"&&t.type!=="image/png"&&t.type!=="image/jpg"?(g.error("圖片格式只能是jpeg/png/jpg!"),!1):(r.value.show=!0,r.value.img=URL.createObjectURL(t),!1),j=()=>{const{canvas:t}=U.value.getResult();if(t){const l=new FormData;t.toBlob(async u=>{let n=new File([u],"image.jpg");l.append("fileType","IMAGE"),l.append("file",n),r.value.show=!1,f.value=!0;let i=await we("/branch/uploadImage",l);i.code===200?(o.value.imageurl=i.data,g.success("上傳成功")):g.error("上傳失敗"),f.value=!1},"image/jpeg")}},h=()=>{r.value.show=!1},R=()=>{b("close",!1)},d=t=>{t&&t.validate(async l=>{if(l){let u,n;x.value==="update"?(o.value.id=w.editid,u=await Q(o.value),n="修改成功."):(u=await Be(o.value),n="新增成功."),u.code===200&&(g({message:n,type:"success"}),b("close",!0))}else return g({message:"操作失敗.",type:"error"}),!1})};return(t,l)=>{const u=S,n=ge,i=O,z=ye,M=be,F=L,E=A,N=ve;return y(),B(H,null,[p("div",null,[e(F,null,{default:a(()=>[e(M,{ref_key:"formRef",ref:D,model:o.value,"status-icon":"",rules:T.value,"label-width":"120px"},{default:a(()=>[e(n,{label:"據點名稱",prop:"name"},{default:a(()=>[e(u,{modelValue:o.value.name,"onUpdate:modelValue":l[0]||(l[0]=s=>o.value.name=s)},null,8,["modelValue"])]),_:1}),e(n,{label:"地址",prop:"address"},{default:a(()=>[e(u,{modelValue:o.value.address,"onUpdate:modelValue":l[1]||(l[1]=s=>o.value.address=s)},null,8,["modelValue"])]),_:1}),e(n,{label:"電話",prop:"tel"},{default:a(()=>[e(u,{modelValue:o.value.tel,"onUpdate:modelValue":l[2]||(l[2]=s=>o.value.tel=s)},null,8,["modelValue"])]),_:1}),e(n,{label:"傳真",prop:"fax"},{default:a(()=>[e(u,{modelValue:o.value.fax,"onUpdate:modelValue":l[3]||(l[3]=s=>o.value.fax=s)},null,8,["modelValue"])]),_:1}),e(n,{label:"網址",prop:"url"},{default:a(()=>[e(u,{modelValue:o.value.url,"onUpdate:modelValue":l[4]||(l[4]=s=>o.value.url=s)},null,8,["modelValue"])]),_:1}),e(n,{label:"Email",prop:"email"},{default:a(()=>[e(u,{modelValue:o.value.email,"onUpdate:modelValue":l[5]||(l[5]=s=>o.value.email=s)},null,8,["modelValue"])]),_:1}),e(n,{label:"據點圖片",prop:"imageurl"},{default:a(()=>[e(z,{class:"avatar-uploader",action:"#",accept:"image/*","show-file-list":!1,"auto-upload":!0,"before-upload":s=>$(s)},{default:a(()=>[o.value.imageurl?(y(),B("img",{key:0,src:"http://localhost:6060"+o.value.imageurl,class:"avatar",id:"imageurl"},null,8,Ce)):(y(),q(i,{key:1,class:"avatar-uploader-icon"},{default:a(()=>[e(k(G))]),_:1}))]),_:1},8,["before-upload"])]),_:1})]),_:1},8,["model","rules"])]),_:1}),p("div",De,[e(E,{onClick:R},{default:a(()=>[v("取消")]),_:1}),e(E,{type:"primary",loading:f.value,onClick:l[6]||(l[6]=s=>d(D.value))},{default:a(()=>[v(P(f.value?"處理中...":"確認"),1)]),_:1},8,["loading"])])]),p("div",null,[e(N,{modelValue:r.value.show,"onUpdate:modelValue":l[7]||(l[7]=s=>r.value.show=s),title:"Tips","before-close":h},{default:a(()=>[r.value.show?(y(),B("div",Ue,[p("div",Fe,[e(k(he),{class:"cropper",ref_key:"myCrop",ref:U,src:r.value.img,"stencil-props":{aspectRatio:r.value.ratio},"auto-zoom":!0},null,8,["src","stencil-props"])]),p("div",Ie,[e(E,{type:"primary",size:"small",text:"",onClick:h},{default:a(()=>[v("取消")]),_:1}),e(E,{type:"primary",size:"small",onClick:j},{default:a(()=>[v("剪裁")]),_:1})])])):ie("",!0)]),_:1},8,["modelValue"])])],64)}}},$e=Ee(Te,[["__scopeId","data-v-0c2531e5"]]),je={class:"main"},Re={class:"breadcrumb-section"},ze=p("a",{href:"/"},"公司據點",-1),Me=["onDblclick"],ua={__name:"Index",setup(_){const I=ce({page:1,pageSize:10});me(I),c(0);const w=c(!1),b=c(!1),x=c([]);K(()=>{f()});const f=async()=>{w.value=!0;let d=await Ve();d.code===200&&(x.value=d.data),w.value=!1},D=()=>{h.value=0,b.value=!0},o=d=>{h.value=d,b.value=!0},T=d=>{le.confirm("確認刪除此紀錄?").then(async()=>{(await xe(d)).code===200?(g({message:"刪除成功.",type:"success"}),f()):g({message:"刪除失敗.",type:"error"})}).catch(()=>{})},r=c(0),U=d=>{r.value=d},$=async d=>{(await Q(d)).code===200?(g({message:"修改成功.",type:"success"}),f()):g({message:"修改失敗.",type:"error"}),r.value=0},j=()=>{r.value=0},h=c(0),R=d=>{b.value=!1,d&&f()};return(d,t)=>{const l=oe,u=te,n=A,i=se,z=S,M=O,F=re,E=de,N=ue,s=ne,J=L,W=ae,X=pe("focus");return y(),B(H,null,[p("div",je,[p("div",Re,[p("div",null,[e(u,{separator:"/"},{default:a(()=>[e(l,null,{default:a(()=>[v(" 聯絡我們 ")]),_:1}),e(l,null,{default:a(()=>[ze]),_:1})]),_:1})]),p("div",null,[e(n,{type:"primary",icon:k(G),onClick:D},{default:a(()=>[v(" 新增據點 ")]),_:1},8,["icon"])])]),e(J,{"body-style":{padding:"0px"}},{default:a(()=>[e(s,{data:x.value,style:{width:"100%"}},{default:a(()=>[e(i,{prop:"id",label:"#",width:"50"}),e(i,{prop:"name",label:"據點名稱"}),e(i,{prop:"address",label:"據點地址"}),e(i,{prop:"tel",label:"電話"}),e(i,{prop:"fax",label:"傳真"}),e(i,{prop:"status",label:"是否有效"}),e(i,{prop:"sort",label:"排序",width:"80"},{default:a(m=>[m.row.id!==r.value?(y(),B("div",{key:0,onDblclick:V=>U(m.row.id)},P(m.row.sort_order),41,Me)):_e((y(),q(z,{key:1,modelValue:m.row.sort_order,"onUpdate:modelValue":V=>m.row.sort_order=V,style:{width:"50px"},onKeyup:fe(V=>$(m.row),["enter"]),onBlur:t[0]||(t[0]=V=>j()),autoFocus:!0},null,8,["modelValue","onUpdate:modelValue","onKeyup"])),[[X,m.row.id===r.value]])]),_:1}),e(i,{label:"操作",width:"105",fixed:"right"},{default:a(m=>[e(N,null,{dropdown:a(()=>[e(E,null,{default:a(()=>[e(F,{icon:k(Y),onClick:V=>o(m.row.id)},{default:a(()=>[v("修改")]),_:2},1032,["icon","onClick"]),e(F,{icon:k(Z),onClick:V=>T(m.row.id)},{default:a(()=>[v("刪除")]),_:2},1032,["icon","onClick"])]),_:2},1024)]),default:a(()=>[e(n,{type:"danger"},{default:a(()=>[v(" 操作"),e(M,{class:"el-icon--right"},{default:a(()=>[e(k(ee))]),_:1})]),_:1})]),_:2},1024)]),_:1})]),_:1},8,["data"])]),_:1})]),p("div",null,[e(W,{ref:"drawerRef",modelValue:b.value,"onUpdate:modelValue":t[1]||(t[1]=m=>b.value=m),"destroy-on-close":!0,title:"公司據點",direction:"rtl",size:"50%"},{default:a(()=>[e($e,{editid:h.value,onClose:R},null,8,["editid"])]),_:1},8,["modelValue"])])],64)}}};export{ua as default};
|