You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1 lines
4.6 KiB
1 lines
4.6 KiB
import{d as P,r as k,l as R,M as D,ag as C,h as _,m as E,w as o,e as n,u as a,k as i,a as f,t as m,c as y,i as w,B as M,al as U,G as q,$ as F,D as z,E as H,a0 as Z,H as A}from"./index-be67c1b4.js";/* empty css *//* empty css *//* empty css */import"./el-tooltip-4ed993c7.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./el-form-item-4ed993c7.js";import J from"./coupon-select-popup-b9896daa.js";import{_ as K}from"./_plugin-vue_export-helper-c27b6911.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./marketing-eecf07e1.js";const L={class:"mt-[-10px] mb-[10px] text-[#999] ml-[120px] text-[12px]"},Q={class:"coupon_list"},W={key:0},X={key:1},Y={key:0},ee={key:1},te=P({__name:"recharge-gift-coupon",props:{modelValue:{type:Object,default:()=>({})}},emits:["update:modelValue"],setup(I,{expose:N,emit:B}){const T=I,t=k({coupon_id:[],value:[]}),x=k(null),$={required:/[\S]+/,number:/^\d{0,10}$/,digit:/^\d{0,10}(.?\d{0,2})$/,special:/^\d{0,10}(.?\d{0,3})$/},O=R({}),S=(l,u)=>{let p=[];for(let r in l){let d=l[r],s={price:d.price,title:d.title,type_name:d.type_name,coupon_id:d.id,min_condition_money:d.min_condition_money,valid_type:d.valid_type,valid_end_time:d.valid_end_time,length:d.length,num:1};t.value.value.length&&t.value.value.forEach(v=>{v.coupon_id==s.coupon_id&&(s=Object.assign(s,v))}),p.push(U(s))}t.value.value=p},j=(l,u)=>{const p=t.value.value.findIndex(d=>d.coupon_id===l.coupon_id);p!==-1&&t.value.value.splice(p,1);const r=t.value.coupon_id.indexOf(l.coupon_id);p!==-1&&t.value.coupon_id.splice(r,1)},g=D({get(){return T.modelValue},set(l){B("update:modelValue",l)}});return C(()=>g.value,(l,u)=>{(!u||!Object.keys(u).length)&&Object.keys(l).length&&(t.value=g.value)},{immediate:!0}),C(()=>t.value,()=>{g.value=t.value},{deep:!0}),N({verify:async()=>{var u;let l=!0;return await((u=x.value)==null?void 0:u.validate(p=>{l=p})),l}}),(l,u)=>{const p=q,r=F,d=z,s=H,v=Z,G=A;return _(),E(G,{ref_key:"formRef",ref:x,"label-width":"120px",model:t.value,rules:O},{default:o(()=>[n(p,{label:a(i)("coupon"),prop:"coupon"},{default:o(()=>[n(J,{ref:"couponSelectPopupRef",onCouponSelect:u[0]||(u[0]=e=>S(e,l.index)),modelValue:t.value.coupon_id,"onUpdate:modelValue":u[1]||(u[1]=e=>t.value.coupon_id=e),min:1,max:99},null,8,["modelValue"])]),_:1},8,["label"]),f("div",L,m(a(i)("giveCouponTips")),1),t.value.value&&t.value.value.length?(_(),E(p,{key:0,class:"mt-[15px]"},{default:o(()=>[f("div",Q,[n(v,{data:t.value.value,size:"large","max-height":"400","row-style":{height:"80px"}},{default:o(()=>[n(r,{prop:"title",label:a(i)("name"),"min-width":"120"},{default:o(({row:e})=>[f("div",null,m(e.title),1)]),_:1},8,["label"]),n(r,{prop:"type_name",label:a(i)("type"),"min-width":"120"},{default:o(({row:e})=>[f("div",null,m(e.type_name),1)]),_:1},8,["label"]),n(r,{prop:"price",label:a(i)("couponPrice"),"min-width":"120"},{default:o(({row:e})=>[f("div",null,"¥"+m(e.price),1)]),_:1},8,["label"]),n(r,{label:a(i)("useThreshold"),"min-width":"130"},{default:o(({row:e})=>[e.min_condition_money=="0.00"?(_(),y("span",W,"无门槛")):(_(),y("span",X,"满"+m(e.min_condition_money)+"元可用",1))]),_:1},8,["label"]),n(r,{label:a(i)("termOfValidity"),"min-width":"210"},{default:o(({row:e})=>[e.valid_type==1?(_(),y("span",Y," 领取之日起"+m(e.length||"")+" 天内有效",1)):(_(),y("span",ee," 使用截止时间至"+m(e.valid_end_time||""),1))]),_:1},8,["label"]),n(r,{prop:"num",label:a(i)("giveNum"),"min-width":"180"},{default:o(({row:e,$index:V})=>[n(p,{prop:`value.${V}.num`,rules:[{required:!0,trigger:"blur",validator:(b,c,h)=>{c===null||c===""?h(a(i)("giveNumPlaceholder")):isNaN(c)||!$.number.test(c)?h(a(i)("limitTips")):c<=0?h(a(i)("giveNumMustBeGreaterThanZero")):h()}}]},{default:o(()=>[n(d,{modelValue:e.num,"onUpdate:modelValue":b=>e.num=b,modelModifiers:{number:!0},class:"w-[70px]",maxlength:"6",clearable:""},{append:o(()=>[w("张")]),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1032,["prop","rules"])]),_:1},8,["label"]),n(r,{label:a(i)("operation"),align:"right","min-width":"160"},{default:o(({row:e,$index:V})=>[n(s,{type:"primary",link:"",onClick:b=>j(e,l.index)},{default:o(()=>[w(m(a(i)("delete")),1)]),_:2},1032,["onClick"])]),_:1},8,["label"])]),_:1},8,["data"])])]),_:1})):M("",!0)]),_:1},8,["model","rules"])}}});const Ce=K(te,[["__scopeId","data-v-f3270418"]]);export{Ce as default};
|
|
|