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
6.6 KiB
2 lines
6.6 KiB
import{p as $,E as z,B as A,C as q,A as Q,b as H}from"./el-button-98327865.js";import{E as J}from"./el-drawer-1b116d0e.js";import{E as g}from"./el-message-01c953f1.js";import{E as L,a as K,b as P}from"./el-breadcrumb-item-c62d9403.js";import{E as W,a as X}from"./el-tag-f3a08928.js";import"./el-scrollbar-7a0c56b8.js";import{E as Y,a as Z,b as ee}from"./el-dropdown-item-16e508f0.js";import{E as M}from"./el-input-7c688efc.js";import{E as ae}from"./el-image-viewer-048d9c29.js";import{E as oe}from"./el-dialog-b09332e2.js";import{E as te,a as le}from"./el-form-item-6a713521.js";import{E as se}from"./el-progress-37539b38.js";import{g as re,u as ne,a as ie,b as ue,d as de}from"./supplier-4686e802.js";import{u as ce}from"./request-5a9b7645.js";import{f as pe}from"./style-b9d5d7ae.js";import{_ as me}from"./_plugin-vue_export-helper-c27b6911.js";import{q as s,z as N,o as V,f as F,M as i,Q as e,w as a,c as _e,a as C,N as p,O as fe,V as ve,F as G,v as ge,a3 as we}from"./index-7ade0fa6.js";import"./el-message-box-35f36743.js";import{E as be}from"./index-ff1306d3.js";import"./index-82e080df.js";import"./castArray-7f2a9c68.js";import"./aria-bc8e8b0f.js";import"./validator-d3f529a0.js";const ye=["src"],he={class:"demo-drawer__footer",style:{"text-align":"right"}},Ee={key:0,class:"cropper-section"},Ce={class:"crop-area"},Ve={class:"crop-btn"},ke={__name:"Form",props:{editid:{type:Number,default:0}},emits:["close"],setup(T,{emit:k}){const w=T,m=s("insert"),f=s(!1),b=s(null),l=s({id:0});N(async()=>{if(w.editid){let o=await re(w.editid);o.code===200&&(l.value=o.data,m.value="update")}});const B=s({imageurl:[{required:!0,message:"供應商LOGO必需要有",trigger:"blur"}],name:[{required:!0,message:"供應商名稱必填",trigger:"blur"}]}),r=s({show:!1,img:null,ratio:1.875}),y=s(null),I=o=>o.type!=="image/jpeg"&&o.type!=="image/png"&&o.type!=="image/jpg"?(g.error("圖片格式只能是jpeg/png/jpg!"),!1):(r.value.show=!0,r.value.img=URL.createObjectURL(o),!1),n=()=>{const{canvas:o}=y.value.getResult();if(o){const t=new FormData;o.toBlob(async u=>{let d=new File([u],"image.jpg");t.append("fileType","IMAGE"),t.append("file",d),r.value.show=!1,f.value=!0;let v=await ce("/supplier/uploadSupplierImage",t);v.code===200?(l.value.imageurl=v.data,g.success("上傳成功")):g.error("上傳失敗"),f.value=!1},"image/jpeg")}},h=()=>{r.value.show=!1},x=()=>{k("close",!1)},S=o=>{o&&o.validate(async t=>{if(t){let u,d;m.value==="update"?(l.value.id=w.editid,u=await ne(l.value),d="修改成功."):(u=await ie(l.value),d="新增成功."),u.code===200&&(g({message:d,type:"success"}),k("close",!0))}else return g({message:"操作失敗.",type:"error"}),!1})};return(o,t)=>{const u=z,d=se,v=te,D=M,U=le,O=L,E=A,R=oe;return V(),F(G,null,[i("div",null,[e(O,null,{default:a(()=>[e(U,{ref_key:"formRef",ref:b,model:l.value,"status-icon":"",rules:B.value,"label-width":"120px"},{default:a(()=>[e(v,{label:"供應商LOGO",prop:"imageurl"},{default:a(()=>[e(d,{class:"avatar-uploader",action:"#",accept:"image/*","show-file-list":!1,"auto-upload":!0,"on-success":o.handleAvatarSuccess,"before-upload":_=>I(_)},{default:a(()=>[l.value.imageurl?(V(),F("img",{key:0,src:"http://localhost:6060"+l.value.imageurl,class:"avatar",id:"imageurl"},null,8,ye)):(V(),_e(u,{key:1,class:"avatar-uploader-icon"},{default:a(()=>[e(C($))]),_:1}))]),_:1},8,["on-success","before-upload"])]),_:1}),e(v,{label:"供應商名稱",prop:"name"},{default:a(()=>[e(D,{modelValue:l.value.name,"onUpdate:modelValue":t[0]||(t[0]=_=>l.value.name=_)},null,8,["modelValue"])]),_:1})]),_:1},8,["model","rules"])]),_:1}),i("div",he,[e(E,{onClick:x},{default:a(()=>[p("取消")]),_:1}),e(E,{type:"primary",loading:f.value,onClick:t[1]||(t[1]=_=>S(b.value))},{default:a(()=>[p(fe(f.value?"處理中...":"確認"),1)]),_:1},8,["loading"])])]),i("div",null,[e(R,{modelValue:r.value.show,"onUpdate:modelValue":t[2]||(t[2]=_=>r.value.show=_),title:"Tips","before-close":h},{default:a(()=>[r.value.show?(V(),F("div",Ee,[i("div",Ce,[e(C(pe),{class:"cropper",ref_key:"myCrop",ref:y,src:r.value.img,"stencil-props":{aspectRatio:r.value.ratio},"auto-zoom":!0},null,8,["src","stencil-props"])]),i("div",Ve,[e(E,{type:"primary",size:"small",text:"",onClick:h},{default:a(()=>[p("取消")]),_:1}),e(E,{type:"primary",size:"small",onClick:n},{default:a(()=>[p("剪裁")]),_:1})])])):ve("",!0)]),_:1},8,["modelValue"])])],64)}}},xe=me(ke,[["__scopeId","data-v-b14593e0"]]),De={class:"main"},Fe={class:"breadcrumb-section"},Be=i("a",{href:"/"},"供應商列表",-1),Ze={__name:"Index",setup(T){const k=ge({page:1,pageSize:10});we(k),s(0);const w=s(!1),m=s(!1),f=s([]);N(()=>{b()});const b=async()=>{w.value=!0;let n=await ue();n.code===200&&(f.value=n.data),w.value=!1},l=()=>{y.value=0,m.value=!0},B=n=>{y.value=n,m.value=!0},r=n=>{be.confirm("確認刪除此紀錄?").then(async()=>{(await de(n)).code===200?(g({message:"刪除成功.",type:"success"}),b()):g({message:"刪除失敗.",type:"error"})}).catch(()=>{})},y=s(0),I=n=>{m.value=!1,n&&b()};return(n,h)=>{const x=K,S=P,o=A,t=W,u=ae,d=M,v=z,D=Y,U=Z,O=ee,E=X,R=L,_=J;return V(),F(G,null,[i("div",De,[i("div",Fe,[i("div",null,[e(S,{separator:"/"},{default:a(()=>[e(x,null,{default:a(()=>[p(" 首頁 ")]),_:1}),e(x,null,{default:a(()=>[Be]),_:1})]),_:1})]),i("div",null,[e(o,{type:"primary",icon:C($),onClick:l},{default:a(()=>[p(" 新增供應商 ")]),_:1},8,["icon"])])]),e(R,{"body-style":{padding:"0px"}},{default:a(()=>[e(E,{data:f.value,style:{width:"100%"}},{default:a(()=>[e(t,{prop:"id",label:"#",width:"50"}),e(t,{label:"供應商LOGO"},{default:a(c=>[e(u,{style:{width:"150px",height:"80px"},src:c.row.imageurl,fit:"cover"},null,8,["src"])]),_:1}),e(t,{prop:"name",label:"供應商名稱"}),e(t,{prop:"sort",label:"排序",width:"80"},{default:a(c=>[e(d,{modelValue:c.row.sort_order,"onUpdate:modelValue":j=>c.row.sort_order=j,style:{width:"40px"}},null,8,["modelValue","onUpdate:modelValue"])]),_:1}),e(t,{label:"操作",width:"105",fixed:"right"},{default:a(c=>[e(O,null,{dropdown:a(()=>[e(U,null,{default:a(()=>[e(D,{icon:C(q),onClick:j=>B(c.row.id)},{default:a(()=>[p("修改")]),_:2},1032,["icon","onClick"]),e(D,{icon:C(Q),onClick:j=>r(c.row.id)},{default:a(()=>[p("刪除")]),_:2},1032,["icon","onClick"])]),_:2},1024)]),default:a(()=>[e(o,{type:"danger"},{default:a(()=>[p(" 操作"),e(v,{class:"el-icon--right"},{default:a(()=>[e(C(H))]),_:1})]),_:1})]),_:2},1024)]),_:1})]),_:1},8,["data"])]),_:1})]),i("div",null,[e(_,{ref:"drawerRef",modelValue:m.value,"onUpdate:modelValue":h[0]||(h[0]=c=>m.value=c),"destroy-on-close":!0,title:"首頁輪撥",direction:"rtl",size:"50%"},{default:a(()=>[e(xe,{editid:y.value,onClose:I},null,8,["editid"])]),_:1},8,["modelValue"])])],64)}}};export{Ze as default};
|