ProductDialogList.3e01643f.js 8.0 KB

1
  1. import{d as he,q as me,r as v,k as J,j as fe,p as ve,a9 as p,af as W,o as c,c as _,H as O,M as o,G as i,a as n,F as E,a0 as I,E as P,W as R,K as m,L as r,J as T,aq as ge,ar as Ae}from"./vue.65d9dadc.js";import{b as X}from"./api.7cd157f6.js";import{e as A}from"./emitter.474b4895.js";import{_ as ke}from"./_plugin-vue_export-helper.c27b6911.js";import"./index.5ce19447.js";import"./elementPlus.ff7602ba.js";import"./echarts.72dc8373.js";const $=C=>(ge("data-v-913d075e"),C=C(),Ae(),C),ye={class:"product-select"},xe={class:"left-part"},Ve={class:"product-search"},be={class:"padding-0-10"},Ce={class:"list-bar"},Se=$(()=>n("span",{class:"padding-0-10"},"商品列表",-1)),Ee={class:"infinite-list",style:{overflow:"auto"}},Ie={key:0},Pe={key:1},De={class:"list-container"},Le={class:"list-content"},Ue=["src"],we={class:"list-item-title"},Ne={class:"item-font"},Te={class:"item-quantity"},$e=$(()=>n("span",{class:"item-asin"},"ASIN:",-1)),qe={key:0,class:"exist-item"},Be={class:"textarea-part"},Ke={class:"custom-button"},Me={class:"right-part"},je={class:"right-top-part"},ze={class:"list-container"},Fe={class:"list-content"},Qe=["src"],Ge={class:"list-item-title"},He={class:"item-font"},Je={class:"item-quantity"},We=$(()=>n("span",{class:"item-asin"},"ASIN:",-1)),Oe=he({__name:"ProductDialogList",setup(C){const q=me("profile"),B=v("search"),D=v(""),L=v(""),h=v([]),d=v([]),k=v([]),y=v(!1);let x=1,K=0,M=10;async function j(){y.value=!0;const t={profile_id:q.value.profile_id,asin:D.value};try{const e=await X(t);h.value=e.data}catch(e){console.log("error:",e)}finally{Q(),y.value=!1}}function Y(t){t.$event.key==="Enter"&&j()}function Z(){x*M<K&&(x++,U())}async function U(){y.value=!0;const t={profile_id:q.value.profile_id,page:x,limit:M};try{const e=await X(t);if(e&&e.data){const s=e.data;x>1?h.value.push(...s):h.value=s,K=e.total}}catch(e){console.log("error:",e)}finally{y.value=!1,Q(),k.value=h.value.map((e,s)=>String(s))}}function z(t,e){t.childAsin.forEach(s=>{s.checked=e})}function F(t){const e=t.childAsin.every(s=>s.checked);t.checked=e}function ee(){const t=[];return h.value.forEach(e=>{if(e.checked){const s=e.childAsin.map(u=>({...u}));t.push({parentAsin:e.parentAsin,childAsin:s,num:e.num})}else{const s=e.childAsin.filter(u=>u.checked).map(u=>({...u}));s.length>0&&t.push({parentAsin:e.parentAsin,childAsin:s,num:s.length})}}),t}function te(){ee().map(e=>({...e,checked:!1,num:e.childAsin.length,childAsin:e.childAsin.map(s=>({...s,checked:!1}))})).forEach(e=>{const s=d.value.findIndex(u=>u.parentAsin===e.parentAsin);if(s!==-1){const u=d.value[s].childAsin,g=e.childAsin,f=u.slice();g.forEach(V=>{f.some(S=>S.Asin===V.Asin)||f.push(V)}),d.value[s].childAsin=f,d.value[s].num=f.length}else d.value.push(e)}),ne(),se()}function ne(){h.value.forEach(t=>{t.checked=!1,t.childAsin.forEach(e=>{e.checked=!1})})}function le(){d.value.forEach(t=>{t.checked=!1,t.childAsin.forEach(e=>{e.checked=!1})})}function se(){const t=d.value.map(e=>({parentAsin:e.parentAsin,childAsin:e.childAsin.map(s=>({Asin:s.Asin,Image:s.Image,Title:s.Title}))}));A.emit("ProductList-asinList",t)}function w(){d.value.splice(0)}function ae(){d.value=d.value.filter(t=>(t.childAsin=t.childAsin.filter(e=>!e.checked),t.childAsin.length>0)),le()}function Q(){h.value.forEach(t=>{const e=t.childAsin.every(s=>s.isExist);t.allChildrenExist=e})}const oe=J(()=>d.value.some(t=>t.childAsin.some(e=>e.checked))),ie=J(()=>{let t=0;return d.value.forEach(e=>{t+=e.childAsin.length}),t});return A.on("ProductLineDialog-sendDetailData",t=>{d.value=t.data}),A.on("ProductLineDialog-reloading",t=>{t.reloading&&(h.value.splice(0),x=1,U(),w(),A.emit("ProductList-updateCardData",{isUpdate:!0}))}),fe(()=>{U(),A.on("ProductLineDialog-closeDialog",t=>{t.clear===!0&&w()})}),ve(()=>{A.all.clear()}),(t,e)=>{const s=p("vxe-input"),u=p("vxe-button"),g=p("el-checkbox"),f=p("el-tag"),V=p("el-tooltip"),S=p("el-collapse-item"),G=p("el-collapse"),H=p("el-tab-pane"),ce=p("el-input"),de=p("el-button"),ue=p("el-tabs"),re=p("el-scrollbar"),pe=W("infinite-scroll"),_e=W("loading");return c(),_("div",ye,[O((c(),_("div",xe,[o(ue,{modelValue:B.value,"onUpdate:modelValue":e[4]||(e[4]=l=>B.value=l)},{default:i(()=>[o(H,{label:"搜索",name:"search"},{default:i(()=>[n("div",Ve,[o(s,{modelValue:D.value,"onUpdate:modelValue":e[0]||(e[0]=l=>D.value=l),onSearchClick:j,onKeydown:Y,placeholder:"请输入商品名称",type:"search",class:"search-input"},null,8,["modelValue"])]),n("div",be,[n("div",Ce,[Se,o(u,{class:"custom-vxe-btn",type:"text",content:"添加",icon:"vxe-icon-add",onClick:te})])]),O((c(),_("ul",Ee,[n("div",null,[o(G,{modelValue:k.value,"onUpdate:modelValue":e[2]||(e[2]=l=>k.value=l),class:"padding-0-10 border-none"},{default:i(()=>[(c(!0),_(E,null,I(h.value,(l,N)=>(c(),P(S,{key:l.parentAsin,name:String(N)},{title:i(()=>[o(g,{modelValue:l.checked,"onUpdate:modelValue":a=>l.checked=a,onClick:e[1]||(e[1]=R(()=>{},["stop"])),onChange:a=>z(l,l.checked),disabled:l.allChildrenExist},{default:i(()=>[m(r(l.parentAsin),1)]),_:2},1032,["modelValue","onUpdate:modelValue","onChange","disabled"]),o(f,{style:{"margin-left":"8px"},effect:"plain",size:"small",round:""},{default:i(()=>[m(r(l.num)+" ",1),l.num=="1"?(c(),_("span",Ie,"ASIN")):(c(),_("span",Pe,"ASINs"))]),_:2},1024)]),default:i(()=>[n("ul",De,[(c(!0),_(E,null,I(l.childAsin,a=>(c(),_("li",{key:a.asin},[n("div",Le,[a.isExist==!1?(c(),P(g,{key:0,modelValue:a.checked,"onUpdate:modelValue":b=>a.checked=b,onChange:b=>F(l)},null,8,["modelValue","onUpdate:modelValue","onChange"])):T("",!0),n("img",{src:a.Image,class:"image-item"},null,8,Ue),n("div",null,[o(V,{effect:"dark",content:a.Title,placement:"top-start"},{default:i(()=>[n("span",we,r(a.Title),1)]),_:2},1032,["content"]),n("div",null,[n("span",Ne,"$"+r(a.Price?a.Price:"--"),1),m(" | "),n("span",Te,r(a.Quantity?"有库存":"缺货"),1)]),n("div",null,[$e,m(" "+r(a.Asin)+" ",1),a.isExist?(c(),_("span",qe,"此商品已存在")):T("",!0)])])])]))),128))])]),_:2},1032,["name"]))),128))]),_:1},8,["modelValue"])])])),[[pe,Z]])]),_:1}),o(H,{label:"输入",name:"input"},{default:i(()=>[n("div",Be,[o(ce,{disabled:"true",modelValue:L.value,"onUpdate:modelValue":e[3]||(e[3]=l=>L.value=l),style:{width:"100%"},rows:15,type:"textarea",placeholder:"请输入ASIN, 多个ASIN使用逗号、空格或换行符分隔"},null,8,["modelValue"]),n("div",Ke,[o(de,{disabled:!L.value,type:"primary",text:"",bg:""},{default:i(()=>[m("添加")]),_:1},8,["disabled"])])])]),_:1})]),_:1},8,["modelValue"])])),[[_e,y.value]]),n("div",Me,[n("div",null,[n("div",je,[n("span",null,"已添加: "+r(ie.value),1),n("span",null,[oe.value?(c(),P(u,{key:0,type:"text",status:"warning",content:"删除选中项",icon:"vxe-icon-delete",onClick:ae})):T("",!0),o(u,{type:"text",status:"danger",content:"删除所有",icon:"vxe-icon-delete",onClick:w})])]),o(re,{height:"540px"},{default:i(()=>[o(G,{modelValue:k.value,"onUpdate:modelValue":e[6]||(e[6]=l=>k.value=l),class:"padding-0-10 border-none"},{default:i(()=>[(c(!0),_(E,null,I(d.value,(l,N)=>(c(),P(S,{key:l.parentAsin,name:String(N)},{title:i(()=>[o(g,{modelValue:l.checked,"onUpdate:modelValue":a=>l.checked=a,onClick:e[5]||(e[5]=R(()=>{},["stop"])),onChange:a=>z(l,l.checked)},{default:i(()=>[m(r(l.parentAsin),1)]),_:2},1032,["modelValue","onUpdate:modelValue","onChange"]),o(f,{style:{"margin-left":"8px"},effect:"plain",size:"small",round:""},{default:i(()=>[m(r(l.childAsin.length)+"ASIN",1)]),_:2},1024)]),default:i(()=>[n("ul",ze,[(c(!0),_(E,null,I(l.childAsin,a=>(c(),_("li",{key:a.asin},[n("div",Fe,[o(g,{modelValue:a.checked,"onUpdate:modelValue":b=>a.checked=b,onChange:b=>F(l)},null,8,["modelValue","onUpdate:modelValue","onChange"]),n("img",{src:a.Image,class:"image-item"},null,8,Qe),n("div",null,[o(V,{effect:"dark",content:a.Title,placement:"top-start"},{default:i(()=>[n("span",Ge,r(a.Title),1)]),_:2},1032,["content"]),n("div",null,[n("span",He,"$"+r(a.Price?a.Price:"--"),1),m(" | "),n("span",Je,r(a.Quantity?"有库存":"缺货"),1)]),n("div",null,[We,m(" "+r(a.Asin),1)])])])]))),128))])]),_:2},1032,["name"]))),128))]),_:1},8,["modelValue"])]),_:1})])])])}}});const lt=ke(Oe,[["__scopeId","data-v-913d075e"]]);export{lt as default};