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.8 KiB

import{p as L,E as z,G as M,H as Z,F as ee,b as le}from"./el-button-6b66070a.js";import{E as ae}from"./el-drawer-70a11b9f.js";import{E as oe}from"./el-message-box-e23ec1aa.js";import{E as N,a as te,b as se}from"./el-breadcrumb-item-0eb7853a.js";import{E as re,a as ne}from"./el-table-column-d43fc778.js";import"./el-tag-c9faf503.js";import"./el-tooltip-4ed993c7.js";import"./el-scrollbar-68edc4d7.js";import{E as ie,a as ue,b as de}from"./el-dropdown-item-9e1be9b9.js";import"./el-icon-08628b36.js";import{E as A}from"./el-input-e550db6e.js";import{E as pe}from"./el-image-viewer-f695cd1a.js";import{q as u,z as q,o as b,f as D,M as p,Q as e,w as l,c as K,a as k,N as v,O as P,V as ce,F as H,v as me,a3 as _e,a4 as fe,D as ve,a5 as ge}from"./index-3ef4d3eb.js";import{E as ye}from"./el-dialog-3f9d9ba4.js";import{E as we,a as be}from"./el-form-item-0317a247.js";import{E as Ee}from"./el-progress-dc506117.js";import{a as S,u as he}from"./request-63584e50.js";import{f as Ve}from"./style-6c2773cc.js";import{E as g}from"./el-message-76e8eab1.js";import{_ as ke}from"./_plugin-vue_export-helper-c27b6911.js";import"./use-dialog-bab1b29c.js";import"./index-a4d0b5b6.js";import"./aria-60e0cdc6.js";import"./castArray-3bec7949.js";import"./_baseClone-bf299fb6.js";import"./cloneDeep-8bc5fe7b.js";const Ce=async()=>S("/supplier/getSupplierList","GET"),xe=async c=>S("/supplier/getSupplier","GET",{id:c}),De=async c=>S("/supplier/deleteSupplier","GET",{id:c}),Q=async c=>S("/supplier/updateSupplier","POST",c),Se=async c=>S("/supplier/addSupplier","POST",c);const Ie=["src"],Fe={class:"demo-drawer__footer",style:{"text-align":"right"}},Te={key:0,class:"cropper-section"},Ue={class:"crop-area"},Oe={class:"crop-btn"},$e={__name:"Form",props:{editid:{type:Number,default:0}},emits:["close"],setup(c,{emit:T}){const E=c,y=T,C=u("insert"),_=u(!1),I=u(null),t=u({id:0});q(async()=>{if(E.editid){let a=await xe(E.editid);a.code===200&&(t.value=a.data,C.value="update")}});const U=u({imageurl:[{required:!0,message:"供應商LOGO必需要有",trigger:"blur"}],name:[{required:!0,message:"供應商名稱必填",trigger:"blur"}]}),s=u({show:!1,img:null,ratio:3.012}),F=u(null),O=a=>a.type!=="image/jpeg"&&a.type!=="image/png"&&a.type!=="image/jpg"?(g.error("圖片格式只能是jpeg/png/jpg!"),!1):(s.value.show=!0,s.value.img=URL.createObjectURL(a),!1),$=()=>{const{canvas:a}=F.value.getResult();if(a){const o=new FormData;a.toBlob(async f=>{let m=new File([f],"image.jpg");o.append("fileType","IMAGE"),o.append("file",m),s.value.show=!1,_.value=!0;let n=await he("/supplier/uploadSupplierImage",o);n.code===200?(t.value.imageurl=n.data,g.success("上傳成功")):g.error("上傳失敗"),_.value=!1},"image/jpeg")}},h=()=>{s.value.show=!1},B=()=>{y("close",!1)},r=a=>{a&&a.validate(async o=>{if(o){let f,m;C.value==="update"?(t.value.id=E.editid,f=await Q(t.value),m="修改成功."):(f=await Se(t.value),m="新增成功."),f.code===200&&(g({message:m,type:"success"}),y("close",!0))}else return g({message:"操作失敗.",type:"error"}),!1})};return(a,o)=>{const f=z,m=Ee,n=we,x=A,j=be,G=N,w=M,R=ye;return b(),D(H,null,[p("div",null,[e(G,null,{default:l(()=>[e(j,{ref_key:"formRef",ref:I,model:t.value,"status-icon":"",rules:U.value,"label-width":"120px"},{default:l(()=>[e(n,{label:"供應商LOGO",prop:"imageurl"},{default:l(()=>[e(m,{class:"avatar-uploader",action:"#",accept:"image/*","show-file-list":!1,"auto-upload":!0,"on-success":a.handleAvatarSuccess,"before-upload":d=>O(d)},{default:l(()=>[t.value.imageurl?(b(),D("img",{key:0,src:t.value.imageurl,class:"avatar",id:"imageurl"},null,8,Ie)):(b(),K(f,{key:1,class:"avatar-uploader-icon"},{default:l(()=>[e(k(L))]),_:1}))]),_:1},8,["on-success","before-upload"])]),_:1}),e(n,{label:"供應商名稱(繁)",prop:"name1"},{default:l(()=>[e(x,{modelValue:t.value.name1,"onUpdate:modelValue":o[0]||(o[0]=d=>t.value.name1=d)},null,8,["modelValue"])]),_:1}),e(n,{label:"供應商名稱(簡)",prop:"name2"},{default:l(()=>[e(x,{modelValue:t.value.name2,"onUpdate:modelValue":o[1]||(o[1]=d=>t.value.name2=d)},null,8,["modelValue"])]),_:1}),e(n,{label:"供應商名稱(英)",prop:"name3"},{default:l(()=>[e(x,{modelValue:t.value.name3,"onUpdate:modelValue":o[2]||(o[2]=d=>t.value.name3=d)},null,8,["modelValue"])]),_:1})]),_:1},8,["model","rules"])]),_:1}),p("div",Fe,[e(w,{onClick:B},{default:l(()=>[v("取消")]),_:1}),e(w,{type:"primary",loading:_.value,onClick:o[3]||(o[3]=d=>r(I.value))},{default:l(()=>[v(P(_.value?"處理中...":"確認"),1)]),_:1},8,["loading"])])]),p("div",null,[e(R,{modelValue:s.value.show,"onUpdate:modelValue":o[4]||(o[4]=d=>s.value.show=d),title:"Tips","before-close":h},{default:l(()=>[s.value.show?(b(),D("div",Te,[p("div",Ue,[e(k(Ve),{class:"cropper",ref_key:"myCrop",ref:F,src:s.value.img,"stencil-props":{aspectRatio:s.value.ratio},"auto-zoom":!0},null,8,["src","stencil-props"])]),p("div",Oe,[e(w,{type:"primary",size:"small",text:"",onClick:h},{default:l(()=>[v("取消")]),_:1}),e(w,{type:"primary",size:"small",onClick:$},{default:l(()=>[v("剪裁")]),_:1})])])):ce("",!0)]),_:1},8,["modelValue"])])],64)}}},Be=ke($e,[["__scopeId","data-v-a1dc5295"]]),je={class:"main"},Ge={class:"breadcrumb-section"},Re=p("a",{href:"/"},"供應商列表",-1),Le=["onDblclick"],cl={__name:"Index",setup(c){const T=me({page:1,pageSize:10});_e(T),u(0);const E=u(!1),y=u(!1),C=u([]);q(()=>{_()});const _=async()=>{E.value=!0;let r=await Ce();r.code===200&&(C.value=r.data),E.value=!1},I=()=>{h.value=0,y.value=!0},t=r=>{h.value=r,y.value=!0},U=r=>{oe.confirm("確認刪除此紀錄?").then(async()=>{(await De(r)).code===200?(g({message:"刪除成功.",type:"success"}),_()):g({message:"刪除失敗.",type:"error"})}).catch(()=>{})},s=u(0),F=r=>{s.value=r},O=async r=>{(await Q(r)).code===200?(g({message:"修改成功.",type:"success"}),_()):g({message:"修改失敗.",type:"error"}),s.value=0},$=()=>{s.value=0},h=u(0),B=r=>{y.value=!1,r&&_()};return(r,a)=>{const o=te,f=se,m=M,n=re,x=pe,j=A,G=z,w=ie,R=ue,d=de,J=ne,W=N,X=ae,Y=fe("focus");return b(),D(H,null,[p("div",je,[p("div",Ge,[p("div",null,[e(f,{separator:"/"},{default:l(()=>[e(o,null,{default:l(()=>[v(" 首頁 ")]),_:1}),e(o,null,{default:l(()=>[Re]),_:1})]),_:1})]),p("div",null,[e(m,{type:"primary",icon:k(L),onClick:I},{default:l(()=>[v(" 新增供應商 ")]),_:1},8,["icon"])])]),e(W,{"body-style":{padding:"0px"}},{default:l(()=>[e(J,{data:C.value,style:{width:"100%"}},{default:l(()=>[e(n,{prop:"id",label:"#",width:"50"}),e(n,{label:"供應商LOGO"},{default:l(i=>[e(x,{style:{width:"150px",height:"80px"},src:i.row.imageurl,fit:"cover",crossorigin:null},null,8,["src"])]),_:1}),e(n,{prop:"name1",label:"供應商名稱(繁)"}),e(n,{prop:"name2",label:"供應商名稱(簡)"}),e(n,{prop:"name3",label:"供應商名稱(英)"}),e(n,{prop:"sort",label:"排序",width:"80"},{default:l(i=>[i.row.id!==s.value?(b(),D("div",{key:0,onDblclick:V=>F(i.row.id)},P(i.row.sort_order),41,Le)):ve((b(),K(j,{key:1,modelValue:i.row.sort_order,"onUpdate:modelValue":V=>i.row.sort_order=V,style:{width:"50px"},onKeyup:ge(V=>O(i.row),["enter"]),onBlur:a[0]||(a[0]=V=>$()),autoFocus:!0},null,8,["modelValue","onUpdate:modelValue","onKeyup"])),[[Y,i.row.id===s.value]])]),_:1}),e(n,{label:"操作",width:"105",fixed:"right"},{default:l(i=>[e(d,null,{dropdown:l(()=>[e(R,null,{default:l(()=>[e(w,{icon:k(Z),onClick:V=>t(i.row.id)},{default:l(()=>[v("修改")]),_:2},1032,["icon","onClick"]),e(w,{icon:k(ee),onClick:V=>U(i.row.id)},{default:l(()=>[v("刪除")]),_:2},1032,["icon","onClick"])]),_:2},1024)]),default:l(()=>[e(m,{type:"danger"},{default:l(()=>[v(" 操作"),e(G,{class:"el-icon--right"},{default:l(()=>[e(k(le))]),_:1})]),_:1})]),_:2},1024)]),_:1})]),_:1},8,["data"])]),_:1})]),p("div",null,[e(X,{ref:"drawerRef",modelValue:y.value,"onUpdate:modelValue":a[1]||(a[1]=i=>y.value=i),"destroy-on-close":!0,title:"首頁輪撥",direction:"rtl",size:"50%"},{default:l(()=>[e(Be,{editid:h.value,onClose:B},null,8,["editid"])]),_:1},8,["modelValue"])])],64)}}};export{cl as default};