diff --git a/src/api/can.js b/src/api/can.js index 1ba3c44..0553317 100644 --- a/src/api/can.js +++ b/src/api/can.js @@ -18,4 +18,17 @@ async function paymentCan(can, method, member_id) { return Vue.axios.post('/admin/can/charge', request) } -export {getCans, insertCan, deleteCan, paymentCan} +async function getCouponList(page) { + return Vue.axios.get('/can/coupon?page=' + (page - 1) + "&size=20"); +} + +async function generateCoupon(couponName, can, validity, isMultipleUse, couponNumberCount) { + const request = {couponName, can, validity: validity + ' 23:59:59', isMultipleUse, couponNumberCount}; + return Vue.axios.post('/can/coupon', request); +} + +async function getCouponNumberList(couponId, page) { + return Vue.axios.get('/can/coupon/number-list?couponId=' + couponId + '&page=' + (page - 1) + "&size=20"); +} + +export {getCans, insertCan, deleteCan, paymentCan, getCouponList, generateCoupon, getCouponNumberList} diff --git a/src/router/index.js b/src/router/index.js index fe2570d..287dd63 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -110,6 +110,11 @@ const routes = [ name: 'CoinStatus', component: () => import(/* webpackChunkName: "coin" */ '../views/Can/CanStatus.vue') }, + { + path: '/can/coupon', + name: 'CanCoupon', + component: () => import(/* webpackChunkName: "coin" */ '../views/Can/CanCoupon.vue') + }, { path: '/calculate/live', name: 'CalculateLive', diff --git a/src/views/Can/CanCoupon.vue b/src/views/Can/CanCoupon.vue new file mode 100644 index 0000000..b6e75d3 --- /dev/null +++ b/src/views/Can/CanCoupon.vue @@ -0,0 +1,525 @@ + + +