mirror of
https://github.com/crmeb/CRMEB.git
synced 2026-11-09 11:21:13 +00:00
2 lines
14 KiB
JavaScript
2 lines
14 KiB
JavaScript
import{a as De,a2 as x,s as q,y as k,z as T,j as l,C as o,W as z,l as d,u as O,k as r,ac as X,am as Le,an as ze,A as i,F as Oe,D as Ye,B as I,ab as Z,_ as y,$ as S,H as Be,p as Y}from"./element-plus-D1Ezoxxm.js";import{_ as $e,a as Fe,k as Re,b as Ge,h as We,S as He}from"./index-BzWqH73M.js";import Je from"./index-Bh7CSPC8.js";import{seckillTimeListApi as Qe,seckillActivityInfoApi as je,seckillActivityAddApi as Ke}from"./api-CUDx0E2X.js";import{f as Xe}from"./index-Cc_NZWkF.js";import{s as Ze}from"./index-BIVfbw0S.js";import"./monaco-editor-uXAv8CL-.js";import"./form-create-C-8Ibman.js";import"./vxe-ot-ELJR6.js";import"./index-B1q2RgSC.js";/* empty css */const el={class:"acea-row row-between-wrapper"},ll={class:"goodsWord"},tl={class:"vxeTable"},al={class:"flex imgPic row-middle"},ol={class:"pictrue"},nl={class:"info"},sl={class:"line2"},il={key:0},ul=["onClick"],dl=Object.assign({name:"seckillActivityCreate"},{__name:"create",setup(rl){const P=Ge(),ee=We(),le=He.routePre,te=Fe(),ae=d(null),oe=d(null),D=d(null),ne=d(null),se=d(null),B=Y(()=>te.isMobile),$=Y(()=>B.value?void 0:"135px"),F=Y(()=>B.value?"top":"right"),ie=d(["填写基础信息","选择秒杀商品"]),E=d(!1),M=d(!1),m=d(0),N=d(!1),A=d(!1),ue={xl:12,lg:20,md:24,sm:24,xs:24},u=d({title:"",section_time:[],time_ids:[],num:0,once_num:0,status:1,is_commission:0,product_infos:[]}),f=d({price:"",quota:""}),de=d([]),R=d([]),g=d(!1),c=d([]),w=d([]),p=d([]),U=d("");De(()=>{P.params.id&&(m.value=0,Ce()),G(),ke()});function re(t){m.value=t}function ce(){N.value=!0}function pe(){A.value=!0}function me(t){w.value.length?(w.value.forEach((a,s)=>{t.id==a.id&&w.value.splice(s,1)}),p.value.forEach((a,s)=>{if(t.id==a.id)return p.value.splice(s,1)})):p.value.forEach((a,s)=>{if(t.id==a.id)return p.value.splice(s,1)});let e=c.value.indexOf(t.id);e!==-1&&c.value.splice(e,1)}function fe(){g.value?p.value=[]:p.value=p.value.filter(t=>!c.value.some(e=>e===t.id)),c.value=[],g.value=!1}function ve(){f.value.price="",f.value.quota=""}function _e(){let t=[];p.value.forEach(e=>{e.store_name.indexOf(U.value)!=-1&&t.push(e)}),w.value=U.value?t:[]}function be(){g.value=D.value.isAllCheckboxChecked(),g.value||(c.value=[])}function ge(t){let e=parseInt(t.rowid);if(t.row.product_id){let a=c.value.indexOf(t.row.product_id);a!==-1&&!t.checked&&(c.value=c.value.filter(s=>s!==t.row.product_id)),a===-1&&t.checked&&c.value.push(t.row.product_id)}else{let a=c.value.indexOf(e);a!==-1&&!t.checked&&(c.value=c.value.filter(s=>s!==e)),a===-1&&t.checked&&c.value.push(e)}g.value=D.value.isAllCheckboxChecked()}function he(t){if(t.parent===1&&t.quota>0&&t.attrs&&t.attrs.length){const e=t.attrs.reduce((s,_)=>s+(Number(_.stock)||0),0);let a=0;t.attrs.forEach((s,_)=>{const v=Number(s.stock)||1;let C;_===t.attrs.length-1?C=t.quota-a:(C=Math.floor(t.quota*v/e),a+=C),s.quota=Math.max(C,1)})}}function ke(){Qe().then(t=>{R.value=t.data.list.data}).catch(t=>{x.error(t.msg)})}function G(){Re().then(t=>{de.value=t.data})}function Ve(t){N.value=!1;let e=JSON.parse(JSON.stringify(t));e.forEach(a=>{a.parent=1,a.status=1,a.isAllChecked=!0,a.attrs.forEach(s=>{s.cate_name=a.cate_name,s.store_label=a.store_label,s.status=1,s.quota||(s.quota=Number(s.stock)||1)}),a.quota||(a.quota=a.attrs.reduce((s,_)=>s+(Number(_.quota)||0),0))}),p.value=xe(p.value.concat(e))}function xe(t){const e=new Map;return t.filter(a=>!e.has(a.id)&&e.set(a.id,1))}function ye(){if(f.value.price==""&&f.value.quota=="")return x.error("请输入秒杀价或限量");const t=a=>{a.attrs&&a.attrs.length&&(a.quota=a.attrs.reduce((s,_)=>s+(Number(_.quota)||0),0))};(g.value?p.value:p.value.filter(a=>c.value.includes(a.id))).forEach(a=>{a.attrs.forEach(s=>{f.value.price!=""&&(s.price=f.value.price),f.value.quota!=""&&s.status&&(s.quota=f.value.quota)}),t(a)}),A.value=!1}function we(t){u.value.section_time=t}function Ce(){M.value=!0,je(P.params.id).then(async t=>{u.value=t.data,p.value=t.data.product_infos,p.value.forEach(e=>{e.parent=1,e.isAllChecked=!0,e.attrs.forEach(a=>{a.cate_name=e.cate_name,a.store_label=e.store_label}),e.attrs&&e.attrs.length&&(e.quota=e.attrs.reduce((a,s)=>a+(Number(s.quota)||0),0))}),M.value=!1}).catch(t=>{M.value=!1,x.error(t.msg)})}function qe(t){if(m.value===1){u.value.id=Number(P.params.id)||0,E.value=!0;let e=[];p.value.forEach(a=>{e.push({id:a.id,status:a.status,attrs:a.attrs}),u.value.product_infos=e}),Ke(u.value).then(async a=>{E.value=!1,x.success(a.msg),setTimeout(()=>{ee.push({path:le+"/marketing/seckill/activity"})},500)}).catch(a=>{E.value=!1,x.error(a.msg)})}else{if(m.value===0&&!u.value.section_time.length)return x.warning("请选择活动时间");if(m.value===0&&!u.value.time_ids.length)return x.warning("请选择秒杀时间段");m.value+=1}}function Ae(){m.value--}return(t,e)=>{const a=r("pages-header"),s=r("el-col"),_=r("el-input"),v=r("el-form-item"),C=r("el-date-picker"),Ue=r("el-option"),Se=r("el-select"),W=r("el-input-number"),L=r("el-switch"),V=r("el-button"),b=r("vxe-column"),Ee=r("viewer"),Me=r("el-tooltip"),H=r("vxe-input"),Ne=r("vxe-table"),J=r("el-row"),Q=r("el-form"),Te=r("el-card"),j=r("el-dialog"),Ie=O("lazy"),K=O("db-click"),Pe=O("loading");return q((k(),T("div",null,[l(a,{ref_key:"pageHeader",ref:ae,title:t.$route.params.id?"编辑秒杀活动":"添加秒杀活动",backUrl:t.$routeProStr+"/marketing/seckill/activity",description:"设置活动日期、开启时段与限购规则,秒杀商品按时段参与对应场次。"},null,8,["title","backUrl"]),l(Te,{bordered:!1,shadow:"never",class:"mt16"},{default:o(()=>[l(J,{class:"mt30 acea-row row-middle row-center"},{default:o(()=>[l(s,{span:20},{default:o(()=>[l(z(Ze),{stepList:ie.value,isActive:m.value,onStepActive:re},null,8,["stepList","isActive"])]),_:1}),l(s,{span:23},{default:o(()=>[l(Q,{class:"form mt30",ref_key:"formValidateRef",ref:oe,model:u.value,"label-width":$.value,"label-position":F.value,onSubmit:e[9]||(e[9]=X(()=>{},["prevent"]))},{default:o(()=>[q(l(s,null,{default:o(()=>[l(s,{span:24},{default:o(()=>[l(s,Le(ze(ue)),{default:o(()=>[l(v,{label:"活动标题:","label-for":"title"},{default:o(()=>[l(_,{clearable:"",placeholder:"请输入活动标题",modelValue:u.value.title,"onUpdate:modelValue":e[0]||(e[0]=n=>u.value.title=n),class:"content_width",maxlength:"80","show-word-limit":""},null,8,["modelValue"])]),_:1})]),_:1},16)]),_:1}),l(s,{span:24},{default:o(()=>[l(v,{label:"活动时间:"},{default:o(()=>[i("div",null,[l(C,{clearable:"",editable:!1,type:"daterange",format:"YYYY-MM-DD","value-format":"YYYY-MM-DD","range-separator":"-","start-placeholder":"开始日期","end-placeholder":"结束日期",onChange:we,class:"content_width",modelValue:u.value.section_time,"onUpdate:modelValue":e[1]||(e[1]=n=>u.value.section_time=n)},null,8,["modelValue"]),e[16]||(e[16]=i("div",{class:"grey"},"设置活动开启结束时间,用户可以在有效时间内参与秒杀",-1))])]),_:1})]),_:1}),l(s,{span:24},{default:o(()=>[l(v,{label:"开始时间:"},{default:o(()=>[i("div",null,[l(Se,{modelValue:u.value.time_ids,"onUpdate:modelValue":e[2]||(e[2]=n=>u.value.time_ids=n),multiple:"",class:"content_width"},{default:o(()=>[(k(!0),T(Oe,null,Ye(R.value,n=>(k(),I(Ue,{value:n.id,key:n.id,label:n.time_name},null,8,["value","label"]))),128))]),_:1},8,["modelValue"]),e[17]||(e[17]=i("div",{class:"grey"}," 选择产品开始时间段,该时间段内用户可参与购买;其它时间段会显示活动未开始或已结束。如活动超过一天,则活动期内,每天都会定时开启 ",-1))])]),_:1})]),_:1}),l(s,{span:24},{default:o(()=>[l(v,{label:"总购买数量限制:"},{default:o(()=>[i("div",null,[l(W,{controls:!1,min:1,placeholder:"请输入数量限制","element-id":"num",precision:0,max:1e4,modelValue:u.value.num,"onUpdate:modelValue":e[3]||(e[3]=n=>u.value.num=n),class:"content_width"},null,8,["modelValue"]),e[18]||(e[18]=i("div",{class:"grey"}," 活动有效期内每个用户可购买该商品总数限制。例如设置为4,表示本次活动有效期内,每个用户最多可购买总数4个 ",-1))])]),_:1})]),_:1}),l(s,{span:24},{default:o(()=>[l(v,{label:"单次购买数量限制:"},{default:o(()=>[i("div",null,[l(W,{controls:!1,min:1,placeholder:"请输入单次购买数量限制","element-id":"once_num",precision:0,max:1e4,modelValue:u.value.once_num,"onUpdate:modelValue":e[4]||(e[4]=n=>u.value.once_num=n),class:"content_width"},null,8,["modelValue"]),e[19]||(e[19]=i("div",{class:"grey"}," 用户参与秒杀时,一次购买最大数量限制。例如设置为2,表示参与秒杀时,用户一次购买数量最大可选择2个 ",-1))])]),_:1})]),_:1}),l(s,{span:24},{default:o(()=>[l(v,{label:"秒杀是否参与分销:","label-for":"is_commission"},{default:o(()=>[i("div",null,[l(L,{class:"defineSwitch","active-value":1,"inactive-value":0,modelValue:u.value.is_commission,"onUpdate:modelValue":e[5]||(e[5]=n=>u.value.is_commission=n),size:"large","active-text":"开启","inactive-text":"关闭"},null,8,["modelValue"]),e[20]||(e[20]=i("div",{class:"grey"},"商品是否参与商城分销返佣",-1))])]),_:1})]),_:1}),l(s,{span:24},{default:o(()=>[l(v,{label:"活动状态:","label-for":"status"},{default:o(()=>[l(L,{class:"defineSwitch","active-value":1,"inactive-value":0,modelValue:u.value.status,"onUpdate:modelValue":e[6]||(e[6]=n=>u.value.status=n),size:"large","active-text":"开启","inactive-text":"关闭"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1},512),[[Z,m.value===0]]),q(l(J,null,{default:o(()=>[l(s,{span:24},{default:o(()=>[i("div",el,[i("div",null,[l(V,{type:"primary",onClick:ce},{default:o(()=>[...e[21]||(e[21]=[y("添加商品",-1)])]),_:1}),l(V,{onClick:pe,class:"ml20",disabled:!g.value&&!c.value.length},{default:o(()=>[...e[22]||(e[22]=[y(" 批量设置 ",-1)])]),_:1},8,["disabled"]),l(V,{onClick:fe,class:"ml20",disabled:!g.value&&!c.value.length},{default:o(()=>[...e[23]||(e[23]=[y(" 批量删除 ",-1)])]),_:1},8,["disabled"])]),i("div",ll,[l(v,{label:"商品搜索:"},{default:o(()=>[l(_,{class:"w_input240",modelValue:U.value,"onUpdate:modelValue":e[7]||(e[7]=n=>U.value=n),placeholder:"请输入商品关键词",onInput:_e},null,8,["modelValue"])]),_:1})])])]),_:1}),l(s,{span:24},{default:o(()=>[i("div",tl,[l(Ne,{border:"inner",ref_key:"xTree",ref:D,"column-config":{resizable:!0},"tree-config":{childrenField:"attrs",reserve:!0},onCheckboxAll:be,onCheckboxChange:ge,data:w.value.length||U.value?w.value:p.value,"row-config":{keyField:"id"}},{default:o(()=>[l(b,{type:"checkbox",title:"多选",width:"100","tree-node":""}),l(b,{field:"info",title:"商品信息","min-width":"300"},{default:o(({row:n})=>[i("div",al,[l(Ee,null,{default:o(()=>[i("div",ol,[q(i("img",null,null,512),[[Ie,n.parent==1?n.image:n.pic]])])]),_:2},1024),i("div",nl,[l(Me,{"max-width":"200",placement:"bottom",transfer:""},{content:o(()=>[i("p",null,S(n.store_name)+S(n.suk),1)]),default:o(()=>[i("span",sl,S(n.store_name)+S(n.suk),1)]),_:2},1024)])])]),_:1}),l(b,{field:"cost",title:"成本价","min-width":"80"}),l(b,{field:"product_price",title:"售价","min-width":"80"}),l(b,{field:"price",title:"秒杀价","min-width":"150"},{default:o(({row:n})=>[n.parent==1?(k(),T("div",il,"——")):(k(),I(H,{key:1,modelValue:n.price,"onUpdate:modelValue":h=>n.price=h,min:"0",placeholder:"请输入秒杀价",type:"float",digits:"2",step:"1"},null,8,["modelValue","onUpdate:modelValue"]))]),_:1}),l(b,{field:"quota",title:"限量","min-width":"150"},{default:o(({row:n})=>[l(H,{modelValue:n.quota,"onUpdate:modelValue":h=>n.quota=h,min:"0",placeholder:"请输入限量",type:"integer",onInput:h=>he(n)},null,8,["modelValue","onUpdate:modelValue","onInput"])]),_:1}),l(b,{field:"stock",title:"库存","min-width":"90"}),l(b,{field:"status",title:"是否开启","min-width":"100"},{default:o(({row:n})=>[l(L,{modelValue:n.status,"onUpdate:modelValue":h=>n.status=h,"active-value":1,"inactive-value":0,size:"large"},{open:o(()=>[...e[24]||(e[24]=[i("span",null,"上架",-1)])]),close:o(()=>[...e[25]||(e[25]=[i("span",null,"下架",-1)])]),_:1},8,["modelValue","onUpdate:modelValue"])]),_:1}),l(b,{field:"date",title:"操作","min-width":"100",fixed:"right",align:"center"},{default:o(({row:n})=>[n.parent==1?(k(),T("a",{key:0,onClick:h=>me(n,h)},"删除",8,ul)):Be("",!0)]),_:1})]),_:1},8,["data"])])]),_:1})]),_:1},512),[[Z,m.value===1]]),l(s,{class:"mt20",span:24},{default:o(()=>[l(v,null,{default:o(()=>[q((k(),I(V,{class:"submission",onClick:Ae,disabled:m.value===0},{default:o(()=>[...e[26]||(e[26]=[y("上一步",-1)])]),_:1},8,["disabled"])),[[K]]),q((k(),I(V,{disabled:E.value&&m.value===1,type:"primary",class:"submission",onClick:e[8]||(e[8]=n=>qe("formValidate"))},{default:o(()=>[y(S(m.value===1?"提交":"下一步"),1)]),_:1},8,["disabled"])),[[K]])]),_:1})]),_:1})]),_:1},8,["model","label-width","label-position"])]),_:1})]),_:1})]),_:1}),l(j,{modelValue:N.value,"onUpdate:modelValue":e[10]||(e[10]=n=>N.value=n),title:"商品列表",class:"paymentFooter",width:"1000px"},{default:o(()=>[l(z(Je),{ref_key:"goodslist",ref:ne,ischeckbox:!0,isdiy:"",goodsType:1,onGetProductId:Ve},null,512)]),_:1},8,["modelValue"]),l(z(Xe),{ref_key:"template",ref:se,onAddSuccess:G},null,512),l(j,{modelValue:A.value,"onUpdate:modelValue":e[15]||(e[15]=n=>A.value=n),title:"批量设置",onClose:ve},{footer:o(()=>[i("div",null,[l(V,{onClick:e[14]||(e[14]=n=>A.value=!1)},{default:o(()=>[...e[27]||(e[27]=[y("取消",-1)])]),_:1}),l(V,{type:"primary",onClick:ye},{default:o(()=>[...e[28]||(e[28]=[y("保存",-1)])]),_:1})])]),default:o(()=>[l(Q,{model:f.value,"label-width":$.value,"label-position":F.value,onSubmit:e[13]||(e[13]=X(()=>{},["prevent"]))},{default:o(()=>[l(v,{label:"秒杀价:",prop:"price"},{default:o(()=>[l(_,{class:"w_input315",modelValue:f.value.price,"onUpdate:modelValue":e[11]||(e[11]=n=>f.value.price=n),min:"0",placeholder:"请输入秒杀价",type:"float",digits:"2",step:"1"},null,8,["modelValue"])]),_:1}),l(v,{label:"限量:",prop:"quota"},{default:o(()=>[l(_,{class:"w_input315",modelValue:f.value.quota,"onUpdate:modelValue":e[12]||(e[12]=n=>f.value.quota=n),min:"0",placeholder:"请输入限量",type:"integer"},null,8,["modelValue"])]),_:1})]),_:1},8,["model","label-width","label-position"])]),_:1},8,["modelValue"])])),[[Pe,M.value]])}}}),xl=$e(dl,[["__scopeId","data-v-d8cf83ac"]]);export{xl as default};
|