DataTable.BawYQ7Td.js 7.2 KB

1
  1. import{d as to,r,Z as no,E as so,j as ao,ai as p,o as v,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 w,D as k,R as E,F as po,B as fo,a as x,S as V,a2 as go}from"./vue.1RczIYhx.js";import{M as mo,N as _o,q as bo,z as vo,h as f}from"./elementPlus.CXoFsoPv.js";import{u as xo,a as Co}from"./useTableData.YE2EVtgg.js";import{P as O}from"./Columns.BYkYSZQL.js";import{_ as ho}from"./DataTableSlot.vue_vue_type_style_index_0_lang.Ci3OSddt.js";import{i as wo}from"./index.DYFzjhQc.js";import{_ as ko}from"./index.vue_vue_type_script_setup_true_lang.DMuK7_mb.js";import{_ as B}from"./index.vue_vue_type_script_setup_true_lang.BL75ogMS.js";import{V as H}from"./index.DhA83F-e.js";import Vo from"./EditDrawer.B8kZsH3J.js";import Do from"./NoticeDialog.B1irhM4p.js";import{g as Mo,a as No,b as Eo,e as zo,d as Ro,p as U}from"./api.NNHyd1Di.js";import{u as z}from"./useResponse.DqThFJSa.js";import So from"./DownloadError.BjJYpps1.js";import{u as To}from"./useDownload.CfLLoz9t.js";import{_ as Fo}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 */import"./hasPermission.DeKomFvI.js";const Oo={class:"flex gap-2"},Bo={class:"custom-el-input"},Ho={class:"flex items-center"},Uo=to({__name:"DataTable",setup($o,{expose:$}){const o=fo("query-parameter"),{tableOptions:D,handlePageChange:L}=xo(u),R=r(),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:D.value.total,page:D.value.page,limit:D.value.limit},loading:!1,loadingConfig:{icon:"vxe-icon-indicator roll",text:"正在拼命加载中..."},columns:O,data:""}),c=r(new Set),S=r(!1),_=r(!1),C=r({}),h=r(!1),A=r({}),M=r(""),b=r(!1),g=r("product");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:M.value};await Co(Mo,e,i),i.showHeader=!!((a=i.data)!=null&&a.length)}function N(){u()}async function j(){i.loading=!0;try{await To({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:M.value},fileName:"商品列表数据.xlsx",successMessage:()=>f.success("数据导出成功!"),errorMessage:()=>f.error("数据导出失败,请重试!")})}finally{i.loading=!1}}function G({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(m=>{c.value.add(m.id)}):c.value.clear()}}function K(t){_.value=!0,C.value=t}async function Z(t){(await z(Ro,t)).code===2e3&&(f.error({message:"已删除!",plain:!0,icon:"Delete"}),N())}function J(t){b.value=!0,C.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?f.success({message:a,plain:!0,icon:"Open"}):f.warning({message:a,plain:!0,icon:"TurnOff"})}else t.is_monitor=!t.is_monitor,f.error({message:"操作失败!",plain:!0})}async function W(){const t=Array.from(c.value),e=await z(U,{ids:t,status:1},S);e&&e.code===2e3&&f.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[g.value],m=e[g.value];a?wo({url:a,method:"GET",filename:m}):console.error("未知的模板类型:",g.value)}const Y={custom({type:t}){t=="confirm"&&u()}};function y({field:t,order:e}){const a=e==="desc"?"-":"";M.value=`${a}${t}`,u(t)}return $({fetchList:u}),(t,e)=>{const a=p("el-button"),m=p("el-option"),P=p("el-select"),T=p("el-icon"),q=p("vxe-pager"),oo=p("el-empty"),eo=p("vxe-grid");return v(),lo(po,null,[s(eo,co({ref_key:"gridRef",ref:R},n(i),uo(Y),{onSortChange:y,onCheckboxChange:G,onCheckboxAll:I}),io({toolbar_buttons:l(()=>[x("div",Oo,[s(ko,{disabled:!n(c).size,icon:n(mo),loading:n(S),plain:"",round:"",type:"primary",onClick:W},{default:l(()=>e[6]||(e[6]=[V(" 批量开启 ")])),_:1},8,["disabled","icon","loading"]),x("div",Bo,[s(P,{modelValue:n(g),"onUpdate:modelValue":e[0]||(e[0]=d=>k(g)?g.value=d:null),style:{width:"190px"}},{prefix:l(()=>[x("div",Ho,[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]=[V("下载 ")])),_:1}),s(H,{style:{"margin-left":"7px"}})])]),default:l(()=>[s(m,{label:"商品模板",value:"product"}),s(m,{label:"商品通知模板",value:"notice"})]),_: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]=[V("变更通知导入")])),_:1},8,["icon","uploadFunction"]),s(B,{uploadFunction:Eo,bg:"",text:""},{default:l(()=>e[9]||(e[9]=[x("i",{class:"bi bi-box-seam mr-3"},null,-1),V(" 商品导入 ")])),_:1},8,["uploadFunction"])])]),toolbar_tools:l(()=>[s(a,{circle:"",class:"toolbar-btn",onClick:N},{default:l(()=>[s(T,null,{default:l(()=>[s(n(bo))]),_:1})]),_:1}),s(a,{circle:"",class:"toolbar-btn",onClick:j,style:{"margin-right":"12px"}},{default:l(()=>[s(T,null,{default:l(()=>[s(n(vo))]),_:1})]),_:1})]),top:l(()=>[e[10]||(e[10]=x("div",{class:"mb-2"},null,-1))]),pager:l(()=>[s(q,{currentPage:n(i).pagerConfig.page,"onUpdate:currentPage":e[1]||(e[1]=d=>n(i).pagerConfig.page=d),pageSize:n(i).pagerConfig.limit,"onUpdate:pageSize":e[2]||(e[2]=d=>n(i).pagerConfig.limit=d),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),d=>({name:`${d.field}`,fn:l(({row:F})=>[(v(),w(ho,{key:F.id,field:d.field,row:F,onEditRow:K,onHandleNotice:J,onHandleMonitor:Q,onHandleDelete:Z},null,8,["field","row"]))])}))]),1040),n(_)?(v(),w(Vo,{key:0,modelValue:n(_),"onUpdate:modelValue":e[3]||(e[3]=d=>k(_)?_.value=d:null),"row-data":n(C),onRefresh:N},null,8,["modelValue","row-data"])):E("",!0),n(b)?(v(),w(Do,{key:1,modelValue:n(b),"onUpdate:modelValue":e[4]||(e[4]=d=>k(b)?b.value=d:null),"row-data":n(C)},null,8,["modelValue","row-data"])):E("",!0),n(h)?(v(),w(So,{key:2,modelValue:n(h),"onUpdate:modelValue":e[5]||(e[5]=d=>k(h)?h.value=d:null),errorMsg:n(A)},null,8,["modelValue","errorMsg"])):E("",!0)],64)}}}),ie=Fo(Uo,[["__scopeId","data-v-4bfbf69a"]]);export{ie as default};