-
+
+
所需金额:{{ changecouponfrom() }} 元
+
@@ -13,7 +15,7 @@
满减券
折扣券
-
+
订单满 元 减 元
@@ -29,13 +31,13 @@
元
-->
-
+
全部
选择类别
-
-
+
+
-
+
全平台
部分商家
-
+
分
-
+
张 (最大:{{ (coupoobj.symon/changecouponfrom()).toFixed(0) }} 张)
-
+
@@ -102,10 +105,14 @@
+
+
diff --git a/ceres-uniapp-master/pages_category_page1/coupon/list.vue b/ceres-uniapp-master/pages_category_page1/coupon/list.vue
index c963196..95879b1 100644
--- a/ceres-uniapp-master/pages_category_page1/coupon/list.vue
+++ b/ceres-uniapp-master/pages_category_page1/coupon/list.vue
@@ -116,11 +116,11 @@ export default {
// title: '加载中...'
// })
this.loading = true
- NET.request(API.youhuiquan, {
+ NET.request(API.couponnew, {
page: this.page,
pageSize: this.pageSize,
shopId:154
- }, 'GET').then(res => {
+ }, 'POST').then(res => {
uni.hideLoading()
if (res.data.length === 0) {
this.loadingType = 1
diff --git a/merchant-web-master/src/api/couponmanagement/capitalpool.js b/merchant-web-master/src/api/couponmanagement/capitalpool.js
new file mode 100644
index 0000000..82540e4
--- /dev/null
+++ b/merchant-web-master/src/api/couponmanagement/capitalpool.js
@@ -0,0 +1,69 @@
+import request from '@/utils/requestnew'
+
+export function addcereCouponCategory(data) {
+ return request({
+ url: '/cereCouponCategory/add',
+ method: 'post',
+ data
+ })
+}
+
+// 查询剩余金额
+export function totalCapitalBalance(data) {
+ return request({
+ url: '/cereCouponMainTable/totalCapitalBalance',
+ method: 'post',
+ data
+ })
+}
+export function getcereFundsPoolData(data) {
+ return request({
+ url: '/cereFundsPool/queryByPage',
+ method: 'post',
+ data
+ })
+}
+
+/**
+{
+ "activityId": 0
+}
+ */
+export function getcereFundsPoolDetail(data) {
+ return request({
+ url: '/cereFundsPool/getById',
+ method: 'post',
+ data
+ })
+}
+
+
+export function addcereFundsPool(data) {
+ return request({
+ url: '/cereFundsPool/add ',
+ method: 'post',
+ data
+ })
+}
+export function delPool(data) {
+ return request({
+ url: '/cereFundsPool/deleteById ',
+ method: 'post',
+ data
+ })
+}
+export function editPool(data) {
+ return request({
+ url: '/cereFundsPool/edit ',
+ method: 'post',
+ data
+ })
+}
+//添加优惠券
+export function cereCouponMainTable(data) {
+ return request({
+ url: '/cereCouponMainTable/add ',
+ method: 'post',
+ data
+ })
+}
\ No newline at end of file
diff --git a/merchant-web-master/src/api/couponmanagement/couponlist.js b/merchant-web-master/src/api/couponmanagement/couponlist.js
new file mode 100644
index 0000000..312f3c3
--- /dev/null
+++ b/merchant-web-master/src/api/couponmanagement/couponlist.js
@@ -0,0 +1,61 @@
+import request from '@/utils/requestnew'
+// 获取优惠券
+export function myCoupons(data) {
+ return request({
+ url: '/coupon/myCoupons',
+ method: 'post',
+ data
+ })
+}
+// 批量生成优惠券
+export function batchGenerateCoupons(data) {
+ return request({
+ url: '/cereCouponUsage/batchGenerateCoupons',
+ method: 'post',
+ data
+ })
+}
+export function getcereFundsPoolData(data) {
+ return request({
+ url: '/cereCouponMainTable/queryByPage',
+ method: 'post',
+ data
+ })
+}
+
+/**
+{
+ "activityId": 0
+}
+ */
+export function getcereFundsPoolDetail(data) {
+ return request({
+ url: '/cereCouponMainTable/getById',
+ method: 'post',
+ data
+ })
+}
+
+
+export function addcereFundsPool(data) {
+ return request({
+ url: '/cereCouponMainTable/add ',
+ method: 'post',
+ data
+ })
+}
+export function delPool(data) {
+ return request({
+ url: '/cereCouponMainTable/deleteById ',
+ method: 'post',
+ data
+ })
+}
+export function editPool(data) {
+ return request({
+ url: '/cereCouponMainTable/edit ',
+ method: 'post',
+ data
+ })
+}
+
diff --git a/merchant-web-master/src/api/couponmanagement/marketing.js b/merchant-web-master/src/api/couponmanagement/marketing.js
new file mode 100644
index 0000000..ef9ae85
--- /dev/null
+++ b/merchant-web-master/src/api/couponmanagement/marketing.js
@@ -0,0 +1,449 @@
+import request from '@/utils/requestnew'
+
+//* ******************** 待处理订单 *********************
+// 订单管理查询
+export function getCoupon(data) {
+ return request({
+ url: '/coupon/getAll',
+ method: 'post',
+ data
+ })
+}
+// 新增优惠券
+export function addCoupon(data) {
+ return request({
+ url: '/coupon/save',
+ method: 'post',
+ data
+ })
+}
+// 优惠券数据效果查询
+export function getCouponData(data) {
+ return request({
+ url: '/coupon/getData',
+ method: 'post',
+ data
+ })
+}
+// 获取可选中商品
+export function getProducts(data) {
+ return request({
+ url: '/coupon/getProducts',
+ method: 'post',
+ data
+ })
+}
+// 删除满减券
+export function delCoupon(data) {
+ return request({
+ url: '/coupon/delete',
+ method: 'post',
+ data
+ })
+}
+// 修改满减券/折扣券
+export function updateCoupon(data) {
+ return request({
+ url: '/coupon/update',
+ method: 'post',
+ data
+ })
+}
+// 获取优惠券详情
+export function couponDetail(data) {
+ return request({
+ url: '/coupon/getById',
+ method: 'post',
+ data
+ })
+}
+// 停止优惠券
+export function stopCoupon(data) {
+ return request({
+ url: '/coupon/stop',
+ method: 'post',
+ data
+ })
+}
+// 拼团数据查询
+export function groupBuyList(data) {
+ return request({
+ url: '/work/getAll',
+ method: 'post',
+ data
+ })
+}
+// 拼团数据删除
+export function deleteGroup(data) {
+ return request({
+ url: '/work/delete',
+ method: 'post',
+ data
+ })
+}
+// 拼团活动详情查询
+export function groupDetail(data) {
+ return request({
+ url: '/work/getById',
+ method: 'post',
+ data
+ })
+}
+// 拼团数据效果查询
+export function getGroupData(data) {
+ return request({
+ url: '/work/getData',
+ method: 'post',
+ data
+ })
+}
+// 拼团选择商品查询
+export function getGroupButPro(data) {
+ return request({
+ url: '/work/getProducts',
+ method: 'post',
+ data
+ })
+}
+// 新增拼团活动
+export function addGroupBuy(data) {
+ return request({
+ url: '/work/save',
+ method: 'post',
+ data
+ })
+}
+// 停止拼团活动
+export function stopGroupBuy(data) {
+ return request({
+ url: '/work/stop',
+ method: 'post',
+ data
+ })
+}
+// 修改拼团活动
+export function groupUpdate(data) {
+ return request({
+ url: '/work/update',
+ method: 'post',
+ data
+ })
+}
+// 秒杀活动管理查询
+export function getSeckillList(data) {
+ return request({
+ url: '/seckill/getAll',
+ method: 'post',
+ data
+ })
+}
+// 新增秒杀活动
+export function addSeckill(data) {
+ return request({
+ url: '/seckill/save',
+ method: 'post',
+ data
+ })
+}
+// 修改秒杀活动
+export function seckillUpdate(data) {
+ return request({
+ url: '/seckill/update',
+ method: 'post',
+ data
+ })
+}
+// 删除秒杀活动
+export function deleteSeckill(data) {
+ return request({
+ url: '/seckill/delete',
+ method: 'post',
+ data
+ })
+}
+// 秒杀数据效果查询
+export function getSeckillData(data) {
+ return request({
+ url: '/seckill/getData',
+ method: 'post',
+ data
+ })
+}
+// 秒杀选择商品查询
+export function getSpikeList(data) {
+ return request({
+ url: '/seckill/getProducts',
+ method: 'post',
+ data
+ })
+}
+// 秒杀商品详情
+export function seckillDetail(data) {
+ return request({
+ url: '/seckill/getById',
+ method: 'post',
+ data
+ })
+}
+// 秒杀商品停止活动
+export function seckillStop(data) {
+ return request({
+ url: '/seckill/stop',
+ method: 'post',
+ data
+ })
+}
+// 限时折扣活动详情查询
+export function getSeckillDetail(data) {
+ return request({
+ url: '/seckill/getById',
+ method: 'post',
+ data
+ })
+}
+// 限时折扣活动管理查询
+export function getDiscountData(data) {
+ return request({
+ url: '/discount/getAll',
+ method: 'post',
+ data
+ })
+}
+// 删除限时折扣活动
+export function deleteDiscount(data) {
+ return request({
+ url: '/discount/delete',
+ method: 'post',
+ data
+ })
+}
+// 限时折扣活动详情查询
+export function getDiscountDetail(data) {
+ return request({
+ url: '/discount/getById',
+ method: 'post',
+ data
+ })
+}
+// 限时折扣效果数据查询
+export function getDiscountInfo(data) {
+ return request({
+ url: '/discount/getData',
+ method: 'post',
+ data
+ })
+}
+// 选择商品查询
+export function getDisProList(data) {
+ return request({
+ url: '/discount/getProducts',
+ method: 'post',
+ data
+ })
+}
+// 新增限时折扣活动
+export function addDiscount(data) {
+ return request({
+ url: '/discount/save',
+ method: 'post',
+ data
+ })
+}
+// 停止限时折扣活动
+export function stopDiscount(data) {
+ return request({
+ url: '/discount/stop',
+ method: 'post',
+ data
+ })
+}
+// 修改限时折扣活动
+export function discountUpdate(data) {
+ return request({
+ url: '/discount/update',
+ method: 'post',
+ data
+ })
+}
+
+// 场景营销列表查询
+export function getSceneInfo(data) {
+ return request({
+ url: '/scene/getAll',
+ method: 'post',
+ data
+ })
+}
+// 添加场景营销
+export function sceneAdd(data) {
+ return request({
+ url: '/scene/save',
+ method: 'post',
+ data
+ })
+}
+// 启动场景营销
+export function sceneStart(data) {
+ return request({
+ url: '/scene/start',
+ method: 'post',
+ data
+ })
+}
+// 停止场景营销
+export function sceneStop(data) {
+ return request({
+ url: '/scene/stop',
+ method: 'post',
+ data
+ })
+}
+// 删除场景营销
+export function sceneDelete(data) {
+ return request({
+ url: '/scene/delete',
+ method: 'post',
+ data
+ })
+}
+// 编辑场景营销
+export function sceneUpate(data) {
+ return request({
+ url: '/scene/update',
+ method: 'post',
+ data
+ })
+}
+// 场景营销详情查询
+export function getSceneDetail(data) {
+ return request({
+ url: '/scene/getById',
+ method: 'post',
+ data
+ })
+}
+// 查询会员等级数据
+export function getMemberLevels(data) {
+ return request({
+ url: '/scene/getMemberLevels',
+ method: 'post',
+ data
+ })
+}
+
+// 定价捆绑列表查询
+export function getPriceList(data) {
+ return request({
+ url: '/price/getAll',
+ method: 'post',
+ data
+ })
+}
+// 添加定价捆绑
+export function priceAdd(data) {
+ return request({
+ url: '/price/save',
+ method: 'post',
+ data
+ })
+}
+// 启停用定价捆绑
+export function priceStart(data) {
+ return request({
+ url: '/price/start',
+ method: 'post',
+ data
+ })
+}
+// 删除定价捆绑
+export function priceDelete(data) {
+ return request({
+ url: '/price/delete',
+ method: 'post',
+ data
+ })
+}
+// 编辑定价捆绑
+export function priceUpate(data) {
+ return request({
+ url: '/price/update',
+ method: 'post',
+ data
+ })
+}
+// 定价捆绑详情查询
+export function getPriceDetail(data) {
+ return request({
+ url: '/price/getById',
+ method: 'post',
+ data
+ })
+}
+
+// 组合捆绑列表查询
+export function getComposeList(data) {
+ return request({
+ url: '/compose/getAll',
+ method: 'post',
+ data
+ })
+}
+// 添加组合捆绑
+export function composeAdd(data) {
+ return request({
+ url: '/compose/save',
+ method: 'post',
+ data
+ })
+}
+// 启停用组合捆绑
+export function composeStart(data) {
+ return request({
+ url: '/compose/start',
+ method: 'post',
+ data
+ })
+}
+// 删除组合捆绑
+export function composeDelete(data) {
+ return request({
+ url: '/compose/delete',
+ method: 'post',
+ data
+ })
+}
+// 编辑组合捆绑
+export function composeUpate(data) {
+ return request({
+ url: '/compose/update',
+ method: 'post',
+ data
+ })
+}
+// 组合捆绑详情查询
+export function getComposeDetail(data) {
+ return request({
+ url: '/compose/getById',
+ method: 'post',
+ data
+ })
+}
+// 定价捆绑和组合捆绑选择商品查询
+export function getComposeSelectProduct(data) {
+ return request({
+ url: '/compose/selectProduct',
+ method: 'post',
+ data
+ })
+}
+
+
+// //* ******************** 售后订单 *********************
+// // 售后管理查询
+// export function aftersaleGetAll(data) {
+// return request({
+// url: '/after/getAll',
+// method: 'post',
+// data
+// })
+// }
diff --git a/merchant-web-master/src/components/top/index.vue b/merchant-web-master/src/components/top/index.vue
new file mode 100644
index 0000000..70eaa9c
--- /dev/null
+++ b/merchant-web-master/src/components/top/index.vue
@@ -0,0 +1,44 @@
+/
+
+
+
+
+
+
diff --git a/merchant-web-master/src/utils/requestnew.js b/merchant-web-master/src/utils/requestnew.js
new file mode 100644
index 0000000..ac653b8
--- /dev/null
+++ b/merchant-web-master/src/utils/requestnew.js
@@ -0,0 +1,107 @@
+import axios from 'axios'
+import {
+ MessageBox,
+ Message
+} from 'element-ui'
+import store from '@/store'
+import router from '@/router'
+import {
+ getToken,
+ getShopId,
+ removeToken
+} from '@/utils/auth'
+
+//
+// const baseURL = process.env.VUE_APP_DOMAIN_PREFIX
+const host = window.location.host;
+let PREFIX;
+if (host == '172.16.61.48' || host == '172.16.61.49:5173') {
+ PREFIX = 'https://jy.scjysm.asia:18086/merchant-business';
+}else if( host == 'localhost:9528' || host == '8.130.38.56:8027' || host == 'localhost:9529'){
+ // 其他情况的默认值
+ // PREFIX = 'http://8.130.38.56:8027/business-server';
+ // PREFIX = 'https://jy.scjysm.asia:18086/merchant-business';
+ PREFIX = 'http://8.130.38.56:9003'
+}else{
+ PREFIX = '/merchant-business';
+}
+const baseURL = PREFIX
+// const baseURL = 'http://10.0.0.14:9004'
+// create an axios instance
+const service = axios.create({
+ baseURL,
+ // withCredentials: true, // send cookies when cross-domain requests
+ timeout: 300000 // request timeout
+})
+
+// export const uploadUrl = 'http://192.168.1.102:8005/file/upload'
+export const uploadUrl = `${baseURL}/file/upload`
+export const WXuploadUrl = `${baseURL}/file/uploadWxMedia` // 直播上传专用
+//export const QYuploadUrl = `${baseURL}/file/uploadQyMedia` // 微信客服上传专用
+export const QYuploadUrl = `${baseURL}/file/upload` // 微信客服上传专用
+
+// request interceptor
+service.interceptors.request.use(
+ config => {
+ if (store.getters.token) {
+ config.headers['Authorization-business'] = getToken()
+ config.headers['shopId'] = getShopId()
+ config.headers['Content-Type'] = 'application/json; charset=UTF-8'
+ // config.headers['type'] = ' business'
+ }
+ return config
+ },
+ error => {
+ console.log(error)
+ return Promise.reject(error)
+ }
+)
+
+// response interceptor
+service.interceptors.response.use(
+ response => {
+ const res = response.data
+ if (response.config.responseType === 'blob') {
+ return response.data
+ }
+ if (res.code !== '') {
+ Message({
+ message: res.message || 'Error',
+ type: 'error',
+ duration: 5 * 1000
+ })
+ // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
+ const tokenerr = [20003, '20003', 20004, '20004', 20005, '20005']
+ // if (tokenerr.includes(res.code)) {
+ // localStorage.clear()
+ // removeToken()
+ // router.push({ path: '/login' })
+ // location.reload()
+ // }
+ if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
+ MessageBox.confirm('You have been logged out, you can cancel to stay on this page, or log in again', 'Confirm logout', {
+ confirmButtonText: 'Re-Login',
+ cancelButtonText: 'Cancel',
+ type: 'warning'
+ }).then(() => {
+ store.dispatch('user/resetToken').then(() => {
+ location.reload()
+ })
+ })
+ }
+ return Promise.reject(new Error(res.message || 'Error'))
+ } else {
+ return res
+ }
+ },
+ error => {
+ console.log(error)
+ Message({
+ message: '服务器暂无响应,请稍后重试',
+ type: 'error',
+ duration: 5 * 1000
+ })
+ return Promise.reject(error)
+ }
+)
+export default service
diff --git a/merchant-web-master/src/views/couponmanagement/capitalpool.vue b/merchant-web-master/src/views/couponmanagement/capitalpool.vue
new file mode 100644
index 0000000..47f6481
--- /dev/null
+++ b/merchant-web-master/src/views/couponmanagement/capitalpool.vue
@@ -0,0 +1,679 @@
+
+
+
+
+
+
+
+
+ 新增
+
+
+
+
+
+
+ {{ scope.row.poolName }}
+
+
+
+ {{ scope.row.totalAmount }}
+
+
+
+
+ {{ scope.row.contributor }}
+
+ {{ scope.row.contributor }}
+
+
+
+
+
+
+ 启用中
+ 已关闭
+ 未启用
+
+
+
+
+
+
+
查看详情
+
创建优惠券
+
+
禁用
+
+ 删除
+
开启
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
资金池名称:{{ coupoobj.poolName }}
+
资金池可用金额:{{ coupoobj.symon }}
+
+
+
+
+
+
+
+
+
+
diff --git a/merchant-web-master/src/views/couponmanagement/capitalpoolinfo.vue b/merchant-web-master/src/views/couponmanagement/capitalpoolinfo.vue
new file mode 100644
index 0000000..281c1db
--- /dev/null
+++ b/merchant-web-master/src/views/couponmanagement/capitalpoolinfo.vue
@@ -0,0 +1,287 @@
+
+
+
+
+
+
+
+
{{item.type}}
+
{{item.num}}
+
+
+
+
+
+
+
+
+ {{ scope.row.couponName }}
+
+
+ {{ scope.row.cereFundsPool?scope.row.cereFundsPool.poolName:'' }}
+
+
+
+ 满减券
+ 折扣券
+
+
+
+
+ 满{{ scope.row.maxDiscountAmount }}减{{ scope.row.discountContent }}
+ {{ scope.row.discountContent }}折 最高减{{ scope.row.maxDiscountAmount }}
+
+
+
+ {{ scope.row.totalFunds }}
+
+
+ {{ scope.row.totalCoupons }}
+
+
+
+
+
+
+
+
+
+ 返回
+
+
+
+
+
+
+
+
+
+
+
diff --git a/merchant-web-master/src/views/couponmanagement/coupon.vue b/merchant-web-master/src/views/couponmanagement/coupon.vue
new file mode 100644
index 0000000..8f4457d
--- /dev/null
+++ b/merchant-web-master/src/views/couponmanagement/coupon.vue
@@ -0,0 +1,360 @@
+
+
+
+
+
+
+ 所需金额:{{ changecouponfrom() }} 元
+
+
+
+
+
+
+
+ 满减券
+ 折扣券
+
+
+ 订单满 元 减 元
+
+
+
+ 最高优惠金额
+ 元
+
+ 打 折
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 是
+ 否
+
+
+
+ 分
+
+
+
+
+
+
+ 张 (最大:{{ (coupoobj.symon/changecouponfrom()).toFixed(0) }} 张)
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/merchant-web-master/src/views/couponmanagement/couponinfo.vue b/merchant-web-master/src/views/couponmanagement/couponinfo.vue
new file mode 100644
index 0000000..b6326ed
--- /dev/null
+++ b/merchant-web-master/src/views/couponmanagement/couponinfo.vue
@@ -0,0 +1,290 @@
+
+
+
+
+
+
+
+
{{item.type}}
+
{{item.num}}
+
+
+
+ 渠道领用
+ 用户领取
+ 用户使用
+ 商家补贴
+
+
+
+
+
+
+
+ {{ scope.row.id }}
+
+
+ {{ scope.row.couponName }}
+
+
+
+ 满减券
+ 折扣券
+
+
+
+
+ 满{{ scope.row.maxDiscountAmount }}减{{ scope.row.discountContent }}
+ {{ scope.row.discountContent }}折 最高减{{ scope.row.maxDiscountAmount }}
+
+
+
+
+
+
+
+
+
+
+ 返回
+
+
+
+
+
+
+
+
+
+
+
diff --git a/merchant-web-master/src/views/couponmanagement/couponlist.vue b/merchant-web-master/src/views/couponmanagement/couponlist.vue
new file mode 100644
index 0000000..982a500
--- /dev/null
+++ b/merchant-web-master/src/views/couponmanagement/couponlist.vue
@@ -0,0 +1,631 @@
+
+
+
+
+
+
+
+ 新增
+
+
+
+
+
+ {{ scope.row.couponName }}
+
+
+ {{ scope.row.cereFundsPool?scope.row.cereFundsPool.poolName:'' }}
+
+
+
+ 满减券
+ 折扣券
+
+
+
+
+ 满{{ scope.row.maxDiscountAmount }}减{{ scope.row.discountContent }}
+ {{ scope.row.discountContent }}折 最高减{{ scope.row.maxDiscountAmount }}
+
+
+
+ {{ scope.row.totalFunds }}
+
+
+ {{ scope.row.totalCoupons }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+