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.7 KiB
2 lines
7.7 KiB
import{p as G,E as O,G as j,H as oe,F as ae,b as ie}from"./el-button-dd91f3f6.js";import{E as ne}from"./el-drawer-41ea71b6.js";import{E as se}from"./el-message-box-9069766c.js";import{E as q,a as H}from"./el-form-item-7f30e4ff.js";import{E as Q}from"./el-progress-f539c088.js";import{E as W}from"./el-input-6cdd1bad.js";import{a as de,b as re,E as ue}from"./el-breadcrumb-item-fc2f12a8.js";import{E as ce,a as me}from"./el-table-column-2087a7ad.js";import"./el-tag-cf212e80.js";import"./el-tooltip-4ed993c7.js";import"./el-scrollbar-4b72b7cb.js";import{E as pe,a as _e,b as fe}from"./el-dropdown-item-1df26bce.js";import"./el-icon-08628b36.js";import{E as ve}from"./el-image-viewer-8dfbab81.js";import{E as ye}from"./el-dialog-5eb47c40.js";import{a as V,u as ge}from"./request-a37452c7.js";import{E as h}from"./el-message-a9712316.js";import{_ as J}from"./_plugin-vue_export-helper-c27b6911.js";import{q as r,z as K,v as X,o as A,f as $,M as d,Q as e,w as t,a as E,N as f,O as Y,F as z,a3 as we,W as be,c as Ee,a7 as he,a8 as Ve}from"./index-a18521e5.js";import"./use-dialog-40ef8000.js";import"./index-d4f2f151.js";import"./aria-60e0cdc6.js";import"./castArray-3c50f72c.js";import"./_baseClone-0431f2ee.js";import"./cloneDeep-d66026bf.js";const ke=async s=>V("/activity/getActivityList","POST",s),Ie=async s=>V("/activity/getActivity","GET",{id:s}),Ce=async s=>V("/activity/deleteActivity","GET",{id:s}),xe=async s=>V("/activity/updateActivity","POST",s),Fe=async s=>V("/activity/addActivity","POST",s);const De={class:"demo-drawer__footer",style:{"text-align":"right"}},Ae=["src"],Le={__name:"Form",props:{editid:{type:Number,default:0}},emits:["close"],setup(s,{emit:w}){const g=s,k=w,v=r("insert"),p=r(!1),b=r(null),n=r({id:0,title1:"",title2:"",title3:"",imageList:[]});K(async()=>{if(g.editid){let a=await Ie(g.editid);a.code===200&&(n.value=a.data,v.value="update",y.value=a.data.imageList.map(l=>({uid:l.uid,url:"https://prodio.zltest.com.tw"+l.url})))}});const L=X({}),U=()=>{k("close",!1)},T=a=>{a&&a.validate(async l=>{if(l){let i,_;v.value==="update"?(n.value.id=g.editid,i=await xe(n.value),_="修改成功."):(i=await Fe(n.value),_="新增成功."),i.code===200&&(h({message:_,type:"success"}),k("close",!0))}else return h({message:"操作失敗.",type:"error"}),!1})},y=r([]),I=r(""),o=r(!1),c=async a=>{const l=new FormData;l.append("file",a.file),p.value=!0;let i=await ge("/activity/uploadImage",l);i.code===200?n.value.imageList.push({uid:a.file.uid,url:i.data}):h.error("上傳失敗"),p.value=!1},C=(a,l)=>{n.value.imageList=n.value.imageList.filter(i=>i.uid!==a.uid)},S=a=>{I.value=a.url,o.value=!0};return(a,l)=>{const i=W,_=q,x=O,B=Q,P=H,F=j,D=ye;return A(),$(z,null,[d("div",null,[e(P,{ref_key:"formRef",ref:b,model:n.value,"status-icon":"",rules:L,"label-width":"120px"},{default:t(()=>[e(_,{label:"標題(繁)",prop:"title"},{default:t(()=>[e(i,{modelValue:n.value.title1,"onUpdate:modelValue":l[0]||(l[0]=u=>n.value.title1=u)},null,8,["modelValue"])]),_:1}),e(_,{label:"標題(簡)",prop:"title"},{default:t(()=>[e(i,{modelValue:n.value.title2,"onUpdate:modelValue":l[1]||(l[1]=u=>n.value.title2=u)},null,8,["modelValue"])]),_:1}),e(_,{label:"標題(英)",prop:"title"},{default:t(()=>[e(i,{modelValue:n.value.title3,"onUpdate:modelValue":l[2]||(l[2]=u=>n.value.title3=u)},null,8,["modelValue"])]),_:1}),e(_,{label:"活動照片",prop:"content"},{default:t(()=>[e(B,{"file-list":y.value,"onUpdate:fileList":l[3]||(l[3]=u=>y.value=u),action:"#","http-request":c,"list-type":"picture-card","on-preview":S,"on-remove":C},{default:t(()=>[e(x,null,{default:t(()=>[e(E(G))]),_:1})]),_:1},8,["file-list"])]),_:1})]),_:1},8,["model","rules"]),d("div",De,[e(F,{onClick:U},{default:t(()=>[f("取消")]),_:1}),e(F,{type:"primary",loading:p.value,onClick:l[4]||(l[4]=u=>T(b.value))},{default:t(()=>[f(Y(p.value?"提交中 ...":"確認"),1)]),_:1},8,["loading"])])]),e(D,{modelValue:o.value,"onUpdate:modelValue":l[5]||(l[5]=u=>o.value=u)},{default:t(()=>[d("img",{"w-full":"",src:I.value,alt:"Preview Image"},null,8,Ae)]),_:1},8,["modelValue"])],64)}}},Ue=J(Le,[["__scopeId","data-v-a24c4f0d"]]);const Z=s=>(he("data-v-4ed6ff2e"),s=s(),Ve(),s),Te={class:"main"},Se={class:"breadcrumb-section"},Be=Z(()=>d("a",{href:"/"},"公司活動",-1)),Pe={class:"imgGroup"},Re=Z(()=>d("small",{class:"el-upload__tip"}," ※ 請上傳500kb以內jpg檔案。",-1)),$e={class:"demo-drawer__footer",style:{"text-align":"right"}},ze={__name:"Index",setup(s){const w=r(!1),g=X({page:1,pageSize:10});we(g);const k=r(0),v=r(!1),p=r(!1),b=r([]);K(()=>{n()});const n=async()=>{v.value=!0;let o=await ke(g);o.code===200&&(b.value=o.data.list,k.value=o.data.total),v.value=!1},L=()=>{y.value=0,p.value=!0},U=o=>{y.value=o,p.value=!0},T=o=>{se.confirm("確認刪除此紀錄?").then(async()=>{(await Ce(o)).code===200?(h({message:"刪除成功.",type:"success"}),n()):h({message:"刪除失敗.",type:"error"})}).catch(()=>{})},y=r(0),I=o=>{p.value=!1,o&&n()};return(o,c)=>{const C=de,S=re,a=j,l=ve,i=ce,_=O,x=pe,B=_e,P=fe,F=me,D=ue,u=W,N=q,ee=Q,te=H,M=ne;return A(),$(z,null,[d("div",Te,[d("div",Se,[d("div",null,[e(S,{separator:"/"},{default:t(()=>[e(C,null,{default:t(()=>[f(" 最新消息 ")]),_:1}),e(C,null,{default:t(()=>[Be]),_:1})]),_:1})]),d("div",null,[e(a,{type:"primary",icon:E(G),onClick:L},{default:t(()=>[f(" 新增活動 ")]),_:1},8,["icon"])])]),e(D,{"body-style":{padding:"0px"}},{default:t(()=>[e(F,{data:b.value,style:{width:"100%"}},{default:t(()=>[e(i,{type:"expand",label:"相簿",width:"80"},{default:t(m=>[d("div",Pe,[(A(!0),$(z,null,be(m.row.imageList,(R,le)=>(A(),Ee(l,{key:le,style:{width:"100px",height:"60px"},src:"https://prodio.zltest.com.tw"+R.url,fit:o.cover},null,8,["src","fit"]))),128))])]),_:1}),e(i,{prop:"id",label:"#",width:"50"}),e(i,{prop:"title1",label:"標題(繁)"}),e(i,{prop:"title2",label:"標題(簡)"}),e(i,{prop:"title3",label:"標題(英)"}),e(i,{prop:"create_time",label:"建立時間"}),e(i,{label:"其他項目",width:"105",fixed:"right"},{default:t(m=>[e(P,null,{dropdown:t(()=>[e(B,null,{default:t(()=>[e(x,{icon:E(oe),onClick:R=>U(m.row.id)},{default:t(()=>[f("修改")]),_:2},1032,["icon","onClick"]),e(x,{icon:E(ae),onClick:R=>T(m.row.id)},{default:t(()=>[f("刪除")]),_:2},1032,["icon","onClick"])]),_:2},1024)]),default:t(()=>[e(a,{type:"danger"},{default:t(()=>[f(" 操作"),e(_,{class:"el-icon--right"},{default:t(()=>[e(E(ie))]),_:1})]),_:1})]),_:2},1024)]),_:1})]),_:1},8,["data"])]),_:1})]),d("div",null,[e(M,{ref:"drawerRef",modelValue:w.value,"onUpdate:modelValue":c[2]||(c[2]=m=>w.value=m),title:"新增動態",direction:"rtl",size:"550"},{default:t(()=>[e(D,null,{default:t(()=>[e(te,{model:o.initform,"label-width":"120px"},{default:t(()=>[e(N,{label:"標題"},{default:t(()=>[e(u,{modelValue:o.initform.title,"onUpdate:modelValue":c[0]||(c[0]=m=>o.initform.title=m)},null,8,["modelValue"])]),_:1}),e(N,{label:"相簿上傳"},{default:t(()=>[e(ee,{class:"upload-demo",action:"https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15","on-preview":o.handlePreview,"on-remove":o.handleRemove,"list-type":"picture"},{tip:t(()=>[Re]),default:t(()=>[e(a,{type:"primary"},{default:t(()=>[f("上傳圖片")]),_:1})]),_:1},8,["on-preview","on-remove"])]),_:1})]),_:1},8,["model"])]),_:1}),d("div",$e,[e(a,{onClick:c[1]||(c[1]=m=>w.value=!1)},{default:t(()=>[f("取消")]),_:1}),e(a,{type:"primary",loading:v.value,onClick:o.onClick},{default:t(()=>[f(Y(v.value?"Submitting ...":"確認"),1)]),_:1},8,["loading","onClick"])])]),_:1},8,["modelValue"])]),d("div",null,[e(M,{ref:"drawerRef",modelValue:p.value,"onUpdate:modelValue":c[3]||(c[3]=m=>p.value=m),"destroy-on-close":!0,title:"公司活動",direction:"rtl",size:"70%"},{default:t(()=>[e(Ue,{editid:y.value,onClose:I},null,8,["editid"])]),_:1},8,["modelValue"])])],64)}}},ct=J(ze,[["__scopeId","data-v-4ed6ff2e"]]);export{ct as default};
|