DataTable.BQq3jmAt.js 7.3 KB

1
  1. import{d as to,r as d,Z as no,E as so,j as ao,ai as f,o as _,c as lo,U as s,aa as io,a8 as ro,O as l,u as n,K as co,am as uo,M as x,D as k,R as V,F as po,B as fo,a as C,S as D,a2 as go}from"./vue.1RczIYhx.js";import{M as mo,N as _o,q as bo,z as vo,h as g}from"./elementPlus.CXoFsoPv.js";import{u as xo,a as Co}from"./useTableData.YE2EVtgg.js";import{P as O}from"./Columns.B_Wz0OQF.js";import{_ as ho}from"./DataTableSlot.vue_vue_type_style_index_0_lang.C2CWYFyB.js";import{i as wo}from"./index.fM6cvGYs.js";import{_ as ko}from"./index.vue_vue_type_script_setup_true_lang.DKtMKa0b.js";import{_ as B}from"./index.vue_vue_type_script_setup_true_lang.B91qRX-o.js";import{V as H}from"./index.DhA83F-e.js";import Vo from"./EditDrawer.QdVi2z0t.js";import Do from"./NoticeDialog.BWvfidO5.js";import{g as Mo,a as No,b as Eo,e as zo,d as Ro,p as U}from"./api.BKSbPohE.js";import{u as z}from"./useResponse.DqThFJSa.js";import To from"./DownloadError.B14vHu-6.js";import{h as So}from"./hasPermission.Dyr7g3RK.js";import{u as Fo}from"./useDownload.CfLLoz9t.js";import{_ as Oo}from"./_plugin-vue_export-helper.DlAUqK2U.js";import"./countryInfo.Df1X6FZ-.js";import"./useTagColor.B-JXlmrE.js";import"./ProductInfo.vue_vue_type_script_setup_true_lang.dNf7YIIF.js";import"./useCopyText.DjRNgLW4.js";/* empty css */const Bo={class:"flex gap-2"},Ho={class:"custom-el-input"},Uo={class:"flex items-center"},$o=to({__name:"DataTable",setup(Lo,{expose:$}){const o=fo("query-parameter"),{tableOptions:M,handlePageChange:L}=xo(u),R=d(),i=no({id:"product-list-table",keepSource:!0,size:"mini",border:!1,round:!0,stripe:!0,currentRowHighLight:!0,height:"100%",customConfig:{storage:!0},sortConfig:{remote:!0},toolbarConfig:{size:"large",custom:!0,slots:{buttons:"toolbar_buttons",tools:"toolbar_tools"}},rowConfig:{isHover:!0},columnConfig:{resizable:!0},pagerConfig:{total:M.value.total,page:M.value.page,limit:M.value.limit},loading:!1,loadingConfig:{icon:"vxe-icon-indicator roll",text:"正在拼命加载中..."},columns:O,data:""}),c=d(new Set),T=d(!1),b=d(!1),h=d({}),w=d(!1),A=d({}),N=d(""),v=d(!1),m=d("notice");so(()=>{i.pagerConfig.limit=10}),ao(()=>{u()});async function u(t=!1){var a;t&&(i.pagerConfig.page=1),i.data=[];const e={country_code:o==null?void 0:o.country,brand:o==null?void 0:o.brand,tag:o==null?void 0:o.group,status:o==null?void 0:o.status,asin:o==null?void 0:o.asin,sku:o==null?void 0:o.sku,shop:o==null?void 0:o.shop,is_competitors:o==null?void 0:o.isCompetitors,platform_number:o==null?void 0:o.platformNumber,ordering:N.value};await Co(Mo,e,i),i.showHeader=!!((a=i.data)!=null&&a.length)}function E(){u()}async function G(){i.loading=!0;try{await Fo({apiMethod:zo,queryParams:{country_code:o==null?void 0:o.country,brand:o==null?void 0:o.brand,tag:o==null?void 0:o.group,status:o==null?void 0:o.status,asin:o==null?void 0:o.asin,sku:o==null?void 0:o.sku,shop:o==null?void 0:o.shop,is_competitors:o==null?void 0:o.isCompetitors,platform_number:o==null?void 0:o.platformNumber,ordering:N.value},fileName:"商品列表数据.xlsx",successMessage:()=>g.success("数据导出成功!"),errorMessage:()=>g.error("数据导出失败,请重试!")})}finally{i.loading=!1}}function j({checked:t,row:e}){t?c.value.add(e.id):c.value.delete(e.id)}function I({checked:t}){const e=R.value;if(e){const a=e.getData();t?a.forEach(p=>{c.value.add(p.id)}):c.value.clear()}}function K(t){b.value=!0,h.value=t}async function Z(t){(await z(Ro,t)).code===2e3&&(g.error({message:"已删除!",plain:!0,icon:"Delete"}),E())}function J(t){v.value=!0,h.value=t}async function Q(t){const e=await z(U,{ids:[t.id],status:t.is_monitor?1:0});if(e&&e.code===2e3){const a=t.is_monitor?"已开启":"已关闭";t.is_monitor?g.success({message:a,plain:!0,icon:"Open"}):g.warning({message:a,plain:!0,icon:"TurnOff"})}else t.is_monitor=!t.is_monitor,g.error({message:"操作失败!",plain:!0})}async function W(){const t=Array.from(c.value),e=await z(U,{ids:t,status:1},T);e&&e.code===2e3&&g.success({message:"选中项已开启",plain:!0,icon:"Open"}),c.value.clear(),await u()}function X(){const t={notice:"/api/choice/goods/alarm/import_data/",product:"/api/choice/goods/import_data/",price:"/api/choice/goods/GuidancePrice/import_data/"},e={notice:"商品通知模板.xlsx",product:"商品模板.xlsx",price:"指导价格模板.xlsx"},a=t[m.value],p=e[m.value];a?wo({url:a,method:"GET",filename:p}):console.error("未知的模板类型:",m.value)}const Y={custom({type:t}){t=="confirm"&&u()}};function y({field:t,order:e}){const a=e==="desc"?"-":"";N.value=`${a}${t}`,u(t)}return $({fetchList:u}),(t,e)=>{const a=f("el-button"),p=f("el-option"),P=f("el-select"),S=f("el-icon"),q=f("vxe-pager"),oo=f("el-empty"),eo=f("vxe-grid");return _(),lo(po,null,[s(eo,co({ref_key:"gridRef",ref:R},n(i),uo(Y),{onSortChange:y,onCheckboxChange:j,onCheckboxAll:I}),io({toolbar_buttons:l(()=>[C("div",Bo,[s(ko,{disabled:!n(c).size,icon:n(mo),loading:n(T),plain:"",round:"",type:"primary",onClick:W},{default:l(()=>e[6]||(e[6]=[D(" 批量开启 ")])),_:1},8,["disabled","icon","loading"]),C("div",Ho,[s(P,{modelValue:n(m),"onUpdate:modelValue":e[0]||(e[0]=r=>k(m)?m.value=r:null),style:{width:"190px"}},{prefix:l(()=>[C("div",Uo,[s(a,{size:"small",style:{"margin-left":"-7px","font-size":"14px","border-radius":"29px"},text:"",type:"success",onClick:go(X,["stop"])},{default:l(()=>e[7]||(e[7]=[D("下载 ")])),_:1}),s(H,{style:{"margin-left":"7px"}})])]),default:l(()=>[s(p,{label:"商品通知模板",value:"notice"}),s(p,{label:"商品模板",value:"product"}),n(So)("GuidancePriceTemplate")?(_(),x(p,{key:0,label:"指导价格模板",value:"price"})):V("",!0)]),_:1},8,["modelValue"])]),s(H,{class:"px-1",style:{"margin-left":"7px"}}),s(B,{icon:n(_o),uploadFunction:No,bg:"",text:""},{default:l(()=>e[8]||(e[8]=[D("变更通知导入")])),_:1},8,["icon","uploadFunction"]),s(B,{uploadFunction:Eo,bg:"",text:""},{default:l(()=>e[9]||(e[9]=[C("i",{class:"bi bi-box-seam mr-3"},null,-1),D(" 商品导入 ")])),_:1},8,["uploadFunction"])])]),toolbar_tools:l(()=>[s(a,{circle:"",class:"toolbar-btn",onClick:E},{default:l(()=>[s(S,null,{default:l(()=>[s(n(bo))]),_:1})]),_:1}),s(a,{circle:"",class:"toolbar-btn",onClick:G,style:{"margin-right":"12px"}},{default:l(()=>[s(S,null,{default:l(()=>[s(n(vo))]),_:1})]),_:1})]),top:l(()=>[e[10]||(e[10]=C("div",{class:"mb-2"},null,-1))]),pager:l(()=>[s(q,{currentPage:n(i).pagerConfig.page,"onUpdate:currentPage":e[1]||(e[1]=r=>n(i).pagerConfig.page=r),pageSize:n(i).pagerConfig.limit,"onUpdate:pageSize":e[2]||(e[2]=r=>n(i).pagerConfig.limit=r),total:n(i).pagerConfig.total,class:"mt-1.5",onPageChange:n(L)},null,8,["currentPage","pageSize","total","onPageChange"])]),empty:l(()=>[s(oo,{description:"暂无数据"})]),_:2},[ro(n(O),r=>({name:`${r.field}`,fn:l(({row:F})=>[(_(),x(ho,{key:F.id,field:r.field,row:F,onEditRow:K,onHandleNotice:J,onHandleMonitor:Q,onHandleDelete:Z},null,8,["field","row"]))])}))]),1040),n(b)?(_(),x(Vo,{key:0,modelValue:n(b),"onUpdate:modelValue":e[3]||(e[3]=r=>k(b)?b.value=r:null),"row-data":n(h),onRefresh:E},null,8,["modelValue","row-data"])):V("",!0),n(v)?(_(),x(Do,{key:1,modelValue:n(v),"onUpdate:modelValue":e[4]||(e[4]=r=>k(v)?v.value=r:null),"row-data":n(h)},null,8,["modelValue","row-data"])):V("",!0),n(w)?(_(),x(To,{key:2,modelValue:n(w),"onUpdate:modelValue":e[5]||(e[5]=r=>k(w)?w.value=r:null),errorMsg:n(A)},null,8,["modelValue","errorMsg"])):V("",!0)],64)}}}),re=Oo($o,[["__scopeId","data-v-b427b876"]]);export{re as default};