Voucherify - New promotion voucher (PROM150%) setup

This commit is contained in:
Dillon Ngo
2024-08-25 12:43:33 +08:00
parent 834c65ccea
commit b7fd252bf0
14 changed files with 136 additions and 49 deletions
@@ -9,9 +9,9 @@
<div class="col text-right no-padding" v-if="item.voucher.type == 'AMOUNT'">
RM{{ item.voucher.value/100 }} Discount
</div>
<!-- <div class="col text-right no-padding" v-if="item.voucher.type == 'PERCENT'">
{{ item.voucher.value }}% Discount
</div> -->
<div class="col text-right no-padding" v-if="item.voucher.type == 'PERCENT'">
<span v-if="item.voucher.value === 1">50% Discount</span>
</div>
</div>
<div class="row">
<div class="col-12 col-md-8 text-left no-padding">
@@ -246,9 +246,9 @@
</div>
</validation-wrapper-component>
</div>
<modal-component id="choose-voucher-modal" class="animate__animated animate__fast animate__fadeIn" styleType="fill-in" type="voucherList">
<!-- <modal-component id="choose-voucher-modal" class="animate__animated animate__fast animate__fadeIn" styleType="fill-in" type="voucherList">
<list-vouchers-component :employee="data.company.employee" @selected-voucher="handleSelectedVoucher"></list-vouchers-component>
</modal-component>
</modal-component> -->
</div>
<span class="text-primary bold text-underline m-l-5 cursor text-small fs-12" style="margin-bottom: -10px; margin-top: -5px;" @click="showApplyVoucher=!showApplyVoucher" v-show="!showApplyVoucher">Apply a voucher</span>
<div class="row m-l-0 m-r-0" v-show="showApplyVoucher" style="height: 20px">
@@ -1,29 +1,54 @@
<template>
<div class="card">
<div class="card-body">
<h5 v-if="item.reward" class="card-title"> {{ item.reward.name }}</h5>
<h5 v-else="item.voucher" class="card-title"> {{ item.voucher.name }}</h5>
<p v-if="item.reward" class="card-text">{{ item.reward.description }}</p>
<p v-if="item.voucher && item.voucher.is_redeemed" class="text-secondary"> {{ item.voucher.code }}</p>
<p v-else class="text-primary"> {{ item.voucher.code }}</p>
<p v-if="item.voucher.type == 'AMOUNT'">RM{{ item.voucher.value/100 }} Discount</p>
<p v-if="item.voucher.type == 'PERCENT'">{{ item.voucher.value }}% Discount</p>
<div class="row border p-3 mb-4 parentContainer">
<div class="col-md-4">
<p v-if="item.reward">{{ item.reward.name }}</p>
<p v-else>{{ item.voucher.name }}</p>
<p v-if="item.voucher.description">{{ item.voucher.description }}</p>
<p v-if="item.reward">{{ item.reward.description }}</p>
<p v-if="item.voucher && item.voucher.is_redeemed">Voucher claimed</p>
<p v-else-if="item.voucher && item.voucher.end_date">Valid till {{ item.voucher.end_date }}</p>
<p v-else>-</p>
</div>
<div class="card-body border-top" v-if="$store.getters.isAdmin && item.voucher.email && item.voucher.email.key === item.voucher.code + '_EMAIL_COUNT'">
<button disabled type="button" v-if="item.voucher.email && item.voucher.email.key === item.voucher.code + '_EMAIL_COUNT' && item.voucher.email.value == '1'" class="btn btn-lg btn-primary">Email Reminder #1 Sent</button>
<!-- <button type="button" v-else @click="submit()" class="btn btn-lg btn-primary">Send Email Reminder #1</button> -->
<div class="col-md-3">
<p v-if="item.voucher && item.voucher.is_redeemed" class="text-secondary">{{ item.voucher.code }}</p>
<p v-else class="text-primary">{{ item.voucher.code }}</p>
</div>
<div class="card-footer text-muted">
<p v-if="item.voucher && item.voucher.is_redeemed">
Voucher claimed
</p>
<p v-else-if="item.voucher && item.voucher.end_date">
Valid till {{ item.voucher.end_date }}
</p>
<p v-else>
-
<div class="col-md-4">
<p v-if="item.voucher.type == 'AMOUNT'">RM{{ item.voucher.value / 100 }} Discount</p>
<p v-if="item.voucher.type == 'PERCENT'">
<span v-if="item.voucher.value === 1">50% discount on service fee only</span>
<span v-else>{{ item.voucher.value }}% Discount</span>
</p>
</div>
<div class="col-md-1">
<a class="pointer requestModal" :data-type="'showVoucherTnC-' + item.id">Terms</a>
<modal-component class="animate__animated animate__fast animate__fadeIn" styleType="fill-in" size="extra-large" :type="'showVoucherTnC-' + item.id">
<div class="container">
<div class="card">
<div class="card-header">
Terms & Conditions
</div>
<div class="card-body">
<ol>
<li>Vouchers are only valid for purchases made on <a href="https://exchange.cief-malaysia.com/" target="_blank">https://exchange.cief-malaysia.com/</a>.</li>
<li>Each voucher is applicable for a single transaction (unless stated otherwise).</li>
<li>Each voucher is only applicable for new orders.</li>
<li>Voucher codes are to be entered at the checkout or cart page (unless stated otherwise).</li>
<li>Vouchers are not valid for promotions or discounted products (unless stated otherwise).</li>
<li>Customers should take note of the expiry dates of the voucher(s) that they wish to redeem. Any voucher(s) which have expired will be invalid.</li>
<li>Individual vouchers are only valid during its respective promotion period. This guideline overrides any individual voucher policy (unless stated otherwise).</li>
<li>CIEF reserves the right to cancel any order if a customers purchasing behavior appears to be suspicious or potentially fraudulent.</li>
<li>CIEF vouchers are not exchangeable for cash at <a href="https://exchange.cief-malaysia.com/" target="_blank">https://exchange.cief-malaysia.com/</a>.</li>
<li>This voucher can only be used and redeemed by a registered customer who has already logged into their account during purchase.</li>
<li>CIEF reserves the right to amend the terms & conditions or cancel any vouchers/promotions without prior notice.</li>
<li>Additional terms & conditions are stated on the respective promotion banners (e.g., duration, discount amounts, validity for campaigns/promotions or certain services).</li>
</ol>
<button type="button" class="btn btn-primary" data-dismiss="modal">OK</button>
</div>
</div>
</div>
</modal-component>
</div>
</div>
</template>
<script>
@@ -7,7 +7,7 @@
<div class="col">
<div class="row m-b-10">
<div class="col">
<div class="font-heading fs-16 all-caps bold m-b-15">Add Sorry Voucher</div>
<div class="font-heading fs-16 all-caps bold m-b-15">Add Voucher Select</div>
</div>
</div>
<div class="row">