mirror of
https://gitee.com/niucloud-team/javashop.git
synced 2026-04-25 11:18:23 +00:00
2 lines
13 KiB
JavaScript
2 lines
13 KiB
JavaScript
import{d as te,y as oe,f as ae,r as x,l as ie,q as i,h as g,c as R,e as o,w as a,u as r,aU as re,bN as q,i as u,s as y,a as n,C as w,B as de,t as p,Z as V,bP as ue,_ as b,a6 as se,aB as ne,aV as me,a9 as pe,L as _e,M as ve,au as ce,av as ge,bI as fe,K as ye,ag as Ve,E as be,ah as he,bM as xe,N as we}from"./index-3c779d75.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";/* empty css *//* empty css */import{_ as M}from"./goods_default-664bb559.js";import{f as ke,h as Ce}from"./marketing-b8e15ef6.js";import Ee from"./goods-select-popup-f920ef73.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./goods-a6d4a6e0.js";import"./_plugin-vue_export-helper-c27b6911.js";const Pe={class:"main-container"},Ue={class:"flex items-center cursor-pointer"},Se={class:"min-w-[60px] h-[60px] flex items-center justify-center"},Te=n("div",{class:"image-slot"},[n("img",{class:"w-[60px] h-[60px]",src:M})],-1),De={key:1,class:"w-[70px] h-[60px]",src:M,fit:"contain"},Re={class:"ml-2"},qe=["title"],Me={class:"text-primary text-[12px]"},Ne={class:"flex items-center px-[5px]"},Be={class:"flex items-center px-[5px]"},Ie={class:"w-[220px] pl-[5px]"},Le=n("div",{class:"form-tip"},"开启手动领取后,会员可以直接在优惠券列表以及优惠券推广中直接领取",-1),Ge={class:"w-[180px]"},je=n("div",{class:"form-tip"},"最多发放100000张",-1),Ke={class:"fixed-footer-wrap"},Oe={class:"fixed-footer"},wl=te({__name:"add",setup($e){const N=oe(),B=ae(),I=N.meta.title,k=x(!1),L=x(null),G=new Date,C=new Date;C.setTime(C.getTime()+3600*1e3*2*360);const e=x({title:"",price:"",type:1,limit:2,receive_type:1,remain_count:1e3,threshold:2,limit_count:1,min_condition_money:1,length:30,goods_ids:[],goods_category_ids:[],receive_type_time:2,valid_type:1,receive_time:[G,C],valid_time:C,goods_list:[]}),U=x(),j=ie(()=>({title:[{required:!0,message:i("titlePlaceholder"),trigger:"blur"}],price:[{required:!0,validator:z,trigger:"blur"}],goods_ids:[{required:!0,message:i("请选择商品"),trigger:"blur"}],goods_category_ids:[{required:!0,message:i("请选择商品分类"),trigger:"blur"}],min_condition_money:[{required:!0,validator:$,trigger:"blur"}],valid_time:[{required:!0,validator:O,trigger:"blur"}],receive_time:[{required:!0,validator:K,trigger:"blur"}],remain_count:[{required:!0,validator:F,trigger:"blur"}],limit_count:[{required:!0,validator:H,trigger:"blur"}]})),K=(m,l,d)=>{e.value.receive_type_time==1&&e.value.receive_type==1&&((!e.value.receive_time[0]||h(e.value.receive_time[0])<=Date.now())&&d(new Error(i("领取开始时间不能小于等于当前时间"))),(!e.value.receive_time[1]||h(e.value.receive_time[1])<=h(e.value.receive_time[0]))&&d(new Error(i("领取结束时间不能小于等于领取开始时间")))),d()},O=(m,l,d)=>{e.value.valid_type==2&&e.value.valid_time<=Date.now()&&d(new Error(i("有效期不能小于等于当前时间"))),e.value.valid_type==2&&e.value.receive_type_time==1&&e.value.receive_type==1&&h(e.value.valid_time)<=h(e.value.receive_time[1])&&d(new Error(i("有效期不能小于等于领取结束时间"))),d()},$=(m,l,d)=>{e.value.threshold==1&&e.value.min_condition_money<=0&&d(new Error(i("使用门槛最低不能小于0元"))),d()},F=(m,l,d)=>{e.value.remain_count!=""&&e.value.remain_count>1e5&&d(new Error(i("remainCountPlaceholder"))),(!e.value.remain_count||e.value.remain_count!=""&&e.value.remain_count<1)&&d(new Error(i("发放数量不能小于1张"))),d()},z=(m,l,d)=>{(!e.value.price||e.value.price==""||e.value.price<=0)&&d(new Error(i("pricePlaceholder"))),d()},H=(m,l,d)=>{(!e.value.limit_count||e.value.limit_count!=""&&e.value.limit_count<1)&&d(new Error(i("userLimitCountPlaceholder"))),e.value.limit==1&&e.value.limit_count!=""&&e.value.remain_count!=""&&parseInt(e.value.limit_count)>parseInt(e.value.remain_count)&&d(new Error(i("限领张数不能大于发放数量"))),d()},h=m=>new Date(m).getTime(),Z={multiple:!0},S=x([]);(()=>{ke({}).then(m=>{S.value=m.data.goods_category_tree})})();const A=async m=>{k.value||!m||await m.validate(async l=>{if(l){k.value=!0;const d=se(e.value);d.type==1?(delete d.goods_category_ids,delete d.goods_ids):d.type==2?delete d.goods_ids:d.type==3&&delete d.goods_category_ids,Ce(d).then(_=>{k.value=!1,history.back()}).catch(_=>{k.value=!1})}})},T=()=>{B.push("/shop/marketing/coupon/list")},J=(m,l)=>{e.value.goods_list.splice(l,1),e.value.goods_ids.splice(e.value.goods_ids.indexOf(m.goods_id),1)},Q=m=>{const l=[];for(const d in m){const c=m[d];let _={goods_id:c.goods_id,price:c.goodsSku.price,goods_type_name:c.goods_type_name,goods_image:c.goods_cover,goods_name:c.goods_name,stock:c.stock};e.value.goods_list.length&&e.value.goods_list.forEach(s=>{s.goods_id==_.goods_id&&(_=Object.assign(_,s))}),l.push(ne(_))}e.value.goods_list=l};return(m,l)=>{const d=me,c=pe,_=_e,s=ve,v=ce,f=ge,W=fe,X=ye,E=Ve,P=be,Y=he,D=xe,ee=we;return g(),R("div",Pe,[o(c,{class:"card !border-none",shadow:"never"},{default:a(()=>[o(d,{content:r(I),icon:r(re),onBack:l[0]||(l[0]=t=>T())},null,8,["content","icon"])]),_:1}),o(c,{class:"box-card mt-[15px] !border-none",shadow:"never"},{default:a(()=>[o(ee,{class:"page-form",model:e.value,"label-width":"120px",ref_key:"formRef",ref:U,rules:r(j)},{default:a(()=>[o(s,{label:r(i)("title"),prop:"title"},{default:a(()=>[o(_,{modelValue:e.value.title,"onUpdate:modelValue":l[1]||(l[1]=t=>e.value.title=t),modelModifiers:{trim:!0},clearable:"",placeholder:r(i)("titlePlaceholder"),class:"input-width",maxlength:20},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),o(s,{label:r(i)("price"),prop:"price"},{default:a(()=>[o(_,{modelValue:e.value.price,"onUpdate:modelValue":l[2]||(l[2]=t=>e.value.price=t),modelModifiers:{trim:!0},clearable:"",placeholder:r(i)("pricePlaceholder"),class:"input-width",maxlength:"5",onKeyup:l[3]||(l[3]=t=>r(q)(t))},{append:a(()=>[u("元")]),_:1},8,["modelValue","placeholder"])]),_:1},8,["label"]),o(s,{label:r(i)("type"),prop:"type"},{default:a(()=>[o(f,{modelValue:e.value.type,"onUpdate:modelValue":l[4]||(l[4]=t=>e.value.type=t)},{default:a(()=>[o(v,{value:1},{default:a(()=>[u("通用券")]),_:1}),o(v,{value:2},{default:a(()=>[u("品类券")]),_:1}),o(v,{value:3},{default:a(()=>[u("商品券")]),_:1})]),_:1},8,["modelValue"])]),_:1},8,["label"]),e.value.type==2?(g(),y(s,{key:0,prop:"goods_category_ids"},{default:a(()=>[n("div",null,[o(W,{modelValue:e.value.goods_category_ids,"onUpdate:modelValue":l[5]||(l[5]=t=>e.value.goods_category_ids=t),options:S.value,props:Z,placeholder:"请选择商品分类","collapse-tags":"","collapse-tags-tooltip":"",clearable:""},null,8,["modelValue","options"])])]),_:1})):w("",!0),e.value.type==3?(g(),y(s,{key:1,prop:"goods_ids"},{default:a(()=>[n("div",null,[o(s,null,{default:a(()=>[o(Ee,{ref_key:"goodsSelectPopupRef",ref:L,modelValue:e.value.goods_ids,"onUpdate:modelValue":l[6]||(l[6]=t=>e.value.goods_ids=t),onGoodsSelect:Q,min:1,max:99},null,8,["modelValue"])]),_:1})])]),_:1})):w("",!0),e.value.goods_list&&e.value.goods_list.length&&e.value.type==3?(g(),y(s,{key:2},{default:a(()=>[o(Y,{data:e.value.goods_list,size:"large","max-height":"400"},{default:a(()=>[o(E,{prop:"goods_id",label:r(i)("goodsSelectPopupGoodsInfo"),"min-width":"300"},{default:a(({row:t})=>[n("div",Ue,[n("div",Se,[t.goods_image?(g(),y(X,{key:0,class:"w-[60px] h-[60px]",src:r(de)(t.goods_image),fit:"contain"},{error:a(()=>[Te]),_:2},1032,["src"])):(g(),R("img",De))]),n("div",Re,[n("span",{title:t.sku_name,class:"multi-hidden"},p(t.sku_name?t.goods_name+" "+t.sku_name:t.goods_name),9,qe),n("span",Me,p(t.goods_type_name),1)])])]),_:1},8,["label"]),o(E,{prop:"price",label:r(i)("goodsSelectPopupPrice"),"min-width":"120"},{default:a(({row:t})=>[n("div",null,"¥"+p(t.price),1)]),_:1},8,["label"]),o(E,{prop:"stock",label:r(i)("goodsSelectPopupStock"),"min-width":"120"},{default:a(({row:t})=>[n("div",null,p(t.stock),1)]),_:1},8,["label"]),o(E,{label:r(i)("operation"),align:"right","min-width":"160"},{default:a(({row:t,$index:le})=>[o(P,{type:"primary",link:"",onClick:ze=>J(t,le)},{default:a(()=>[u(p(r(i)("delete")),1)]),_:2},1032,["onClick"])]),_:1},8,["label"])]),_:1},8,["data"])]),_:1})):w("",!0),o(s,{label:r(i)("threshold")},{default:a(()=>[o(f,{modelValue:e.value.threshold,"onUpdate:modelValue":l[7]||(l[7]=t=>e.value.threshold=t)},{default:a(()=>[o(v,{value:1},{default:a(()=>[u(p(r(i)("reduction")),1)]),_:1}),o(v,{value:2},{default:a(()=>[u(p(r(i)("noThreshold")),1)]),_:1})]),_:1},8,["modelValue"])]),_:1},8,["label"]),e.value.threshold==1?(g(),y(s,{key:3,prop:"min_condition_money"},{default:a(()=>[u(" 最低满 "),n("div",Ne,[o(_,{modelValue:e.value.min_condition_money,"onUpdate:modelValue":l[8]||(l[8]=t=>e.value.min_condition_money=t),modelModifiers:{trim:!0},onKeyup:l[9]||(l[9]=t=>r(q)(t)),clearable:"",class:"!w-[100px]"},null,8,["modelValue"])]),u(" 元可用 ")]),_:1})):w("",!0),o(s,{label:r(i)("validType")},{default:a(()=>[o(f,{modelValue:e.value.valid_type,"onUpdate:modelValue":l[10]||(l[10]=t=>e.value.valid_type=t)},{default:a(()=>[o(v,{value:1},{default:a(()=>[u(p(r(i)("days")),1)]),_:1}),o(v,{value:2},{default:a(()=>[u(p(r(i)("times")),1)]),_:1})]),_:1},8,["modelValue"])]),_:1},8,["label"]),V(o(s,null,{default:a(()=>[u(" 领劵后立即生效,有效期 "),n("div",Be,[o(_,{modelValue:e.value.length,"onUpdate:modelValue":l[11]||(l[11]=t=>e.value.length=t),modelModifiers:{trim:!0},onKeyup:l[12]||(l[12]=t=>r(ue)(t)),clearable:"",class:"!w-[100px]"},null,8,["modelValue"])]),u(" 天 ")]),_:1},512),[[b,e.value.valid_type==1]]),e.value.valid_type==2?(g(),y(s,{key:4,prop:"valid_time"},{default:a(()=>[u(" 领劵后立即生效,使用时间截止至 "),n("div",Ie,[o(D,{modelValue:e.value.valid_time,"onUpdate:modelValue":l[13]||(l[13]=t=>e.value.valid_time=t),type:"datetime"},null,8,["modelValue"])])]),_:1})):w("",!0),o(s,{label:r(i)("receiveType")},{default:a(()=>[n("div",null,[o(f,{modelValue:e.value.receive_type,"onUpdate:modelValue":l[14]||(l[14]=t=>e.value.receive_type=t)},{default:a(()=>[o(v,{value:1},{default:a(()=>[u(p(r(i)("user")),1)]),_:1}),o(v,{value:2},{default:a(()=>[u(p(r(i)("grant")),1)]),_:1})]),_:1},8,["modelValue"])]),Le]),_:1},8,["label"]),V(o(s,{label:r(i)("receiveTime")},{default:a(()=>[o(f,{modelValue:e.value.receive_type_time,"onUpdate:modelValue":l[15]||(l[15]=t=>e.value.receive_type_time=t)},{default:a(()=>[o(v,{value:1},{default:a(()=>[u(p(r(i)("limitedTime")),1)]),_:1}),o(v,{value:2},{default:a(()=>[u(p(r(i)("unlimitedTime")),1)]),_:1})]),_:1},8,["modelValue"])]),_:1},8,["label"]),[[b,e.value.receive_type==1]]),V(o(s,{prop:"receive_time"},{default:a(()=>[n("div",Ge,[o(D,{modelValue:e.value.receive_time,"onUpdate:modelValue":l[16]||(l[16]=t=>e.value.receive_time=t),type:"datetimerange","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期"},null,8,["modelValue"])])]),_:1},512),[[b,e.value.receive_type_time==1&&e.value.receive_type==1]]),V(o(s,{label:r(i)("receiveNumber")},{default:a(()=>[o(f,{modelValue:e.value.limit,"onUpdate:modelValue":l[17]||(l[17]=t=>e.value.limit=t)},{default:a(()=>[o(v,{value:1},{default:a(()=>[u(p(r(i)("limit")),1)]),_:1}),o(v,{value:2},{default:a(()=>[u(p(r(i)("unlimited")),1)]),_:1})]),_:1},8,["modelValue"])]),_:1},8,["label"]),[[b,e.value.receive_type==1]]),V(o(s,{prop:"remain_count"},{default:a(()=>[n("div",null,[o(_,{onkeypress:"return( /[\\d]/.test(String.fromCharCode(event.keyCode) ) )",modelValue:e.value.remain_count,"onUpdate:modelValue":l[18]||(l[18]=t=>e.value.remain_count=t),modelModifiers:{trim:!0},clearable:"",placeholder:r(i)("remainCountPlaceholder"),class:"input-width",min:1,max:1e5,controls:!1,maxlength:"6"},{append:a(()=>[u("张")]),_:1},8,["modelValue","placeholder"])]),je]),_:1},512),[[b,e.value.limit==1&&e.value.receive_type==1]]),V(o(s,{label:r(i)("userLimitCount"),prop:"limit_count"},{default:a(()=>[o(_,{onkeypress:"return( /[\\d]/.test(String.fromCharCode(event.keyCode) ) )",modelValue:e.value.limit_count,"onUpdate:modelValue":l[19]||(l[19]=t=>e.value.limit_count=t),modelModifiers:{trim:!0},clearable:"",placeholder:r(i)("userLimitCountPlaceholder"),class:"input-width",min:1,max:1e5,maxlength:"6"},{append:a(()=>[u("张")]),_:1},8,["modelValue","placeholder"])]),_:1},8,["label"]),[[b,e.value.receive_type==1]])]),_:1},8,["model","rules"])]),_:1}),n("div",Ke,[n("div",Oe,[o(P,{type:"primary",onClick:l[20]||(l[20]=t=>A(U.value))},{default:a(()=>[u(p(r(i)("save")),1)]),_:1}),o(P,{onClick:l[21]||(l[21]=t=>T())},{default:a(()=>[u(p(r(i)("cancel")),1)]),_:1})])])])}}});export{wl as default};
|