代码更新
This commit is contained in:
@@ -9,19 +9,22 @@
|
||||
<view class="category">
|
||||
<view class="category_item" @tap="itemClick(item,index)" :class="{active:index===category.active}" v-for="(item,index) in category.list" :key="index">{{item.name}}</view>
|
||||
</view>
|
||||
<up-radio-group v-model="goodsValue" @change="groupChange" style="width: 100%;display: initial;">
|
||||
<view class="goodsList">
|
||||
<view class="goodsItem" @tap="goodsClick(item,index)" v-for="(item,index) in category.goodsList" :key="index">
|
||||
<view>{{item.name}}</view>
|
||||
<up-radio
|
||||
:key="item.id"
|
||||
:name="item.id"
|
||||
@change="groupChange"
|
||||
>
|
||||
</up-radio>
|
||||
<view style="flex-shrink: 0;">
|
||||
<up-radio-group v-model="goodsValue" @change="groupChange" style="width: 100%;display: initial;">
|
||||
<view class="goodsList">
|
||||
<view class="goodsItem" @tap="goodsClick(item,index)" v-for="(item,index) in category.goodsList" :key="index">
|
||||
<view>{{item.name}}</view>
|
||||
<up-radio
|
||||
:key="item.id"
|
||||
:name="item.id"
|
||||
@change="groupChange"
|
||||
>
|
||||
</up-radio>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</up-radio-group>
|
||||
</up-radio-group>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
<view class="bomBtn">
|
||||
<view class="affirm" @tap="affirm">确定</view>
|
||||
@@ -31,10 +34,8 @@
|
||||
|
||||
<script setup>
|
||||
import { reactive,ref,onMounted } from 'vue';
|
||||
import {
|
||||
$tbShopCategory,
|
||||
$tbProductV2
|
||||
} from "@/http/yskApi/goods.js"
|
||||
import { $tbShopCategory, $tbProductV2 } from "@/http/yskApi/goods.js"
|
||||
import { getProductList, getCategoryList } from '@/api/product.js'
|
||||
const props=defineProps({
|
||||
show:{
|
||||
type:Boolean,
|
||||
@@ -50,7 +51,7 @@ import {
|
||||
page: 0,
|
||||
size: 999,
|
||||
categoryId: '',
|
||||
sort: "createdAt,desc",
|
||||
orderBy: "create_time desc",
|
||||
}
|
||||
})
|
||||
let goodsValue = ref('');
|
||||
@@ -67,18 +68,18 @@ import {
|
||||
function groupChange ( n ) {
|
||||
// console.log(n)
|
||||
}
|
||||
function getCategoryList () {
|
||||
$tbShopCategory({
|
||||
function getCategory () {
|
||||
getCategoryList({
|
||||
page:0,size:200
|
||||
}).then(res=>{
|
||||
category.list = res.content;
|
||||
category.query.categoryId = res.content[0].id
|
||||
category.list = res;
|
||||
category.query.categoryId = res[0].id
|
||||
getGoodsList()
|
||||
})
|
||||
}
|
||||
function getGoodsList () {
|
||||
$tbProductV2(category.query).then(res => {
|
||||
category.goodsList = res.content.map(v => {
|
||||
getProductList(category.query).then(res => {
|
||||
category.goodsList = res.records.map(v => {
|
||||
return {
|
||||
...v,
|
||||
isSellNone: false,
|
||||
@@ -90,7 +91,7 @@ import {
|
||||
}
|
||||
function open(){
|
||||
show.value = true;
|
||||
getCategoryList();
|
||||
getCategory();
|
||||
}
|
||||
|
||||
function close(){
|
||||
@@ -140,6 +141,7 @@ import {
|
||||
.category_item{
|
||||
padding: 22rpx 24rpx;
|
||||
border-left: 8rpx solid transparent;
|
||||
word-wrap: break-word;
|
||||
}
|
||||
.active{
|
||||
border-left: 8rpx solid #318AFE;
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
</view>
|
||||
</view>
|
||||
<view class="item">
|
||||
<view class="lable">使用门槛2</view>
|
||||
<view class="lable">使用门槛</view>
|
||||
<view class="value">
|
||||
<view>满</view><input v-model="formData.fullAmount" type="number" placeholder="填写金额" border="none"></input><view>元</view>,<view>减</view><input v-model="formData.discountAmount" type="number" placeholder="填写金额" border="none"></input><view>元</view>
|
||||
</view>
|
||||
@@ -19,8 +19,8 @@
|
||||
<view class="lable">有效期类型</view>
|
||||
<view class="value" style="display: flex;flex-direction: column;align-items: flex-start;">
|
||||
<view>
|
||||
<up-radio-group v-model="formData.validityType" @change="typeChange('validityType')">
|
||||
<up-radio name="fixed" label="领券后有效期内可用" style="margin-right: 30rpx;"></up-radio>
|
||||
<up-radio-group placement="column" v-model="formData.validityType" @change="typeChange('validityType')">
|
||||
<up-radio name="fixed" label="领券后有效期内可用"></up-radio>
|
||||
<up-radio name="custom" label="固定有效期范围内可用"></up-radio>
|
||||
</up-radio-group>
|
||||
</view>
|
||||
@@ -65,7 +65,7 @@
|
||||
<view class="lable">指定时间段可用</view>
|
||||
<view class="value" style="display: flex;flex-direction: column;align-items: flex-start;">
|
||||
<view>
|
||||
<up-radio-group v-model="formData.useTimeType" >
|
||||
<up-radio-group v-model="formData.useTimeType" placement="column">
|
||||
<up-radio name="all" label="全时段可用" style="margin-right: 30rpx;"></up-radio>
|
||||
<up-radio name="custom" label="指定时段可用"></up-radio>
|
||||
</up-radio-group>
|
||||
@@ -103,13 +103,10 @@
|
||||
</view>
|
||||
</template>
|
||||
<script setup>
|
||||
import go from '@/commons/utils/go.js'
|
||||
import {
|
||||
reactive,
|
||||
ref
|
||||
} from 'vue';
|
||||
import { reactive, ref } from 'vue';
|
||||
import { onLoad, onShow } from '@dcloudio/uni-app';
|
||||
import { getTbShopCouponInfo, addTbShopCoupon } from '@/http/yskApi/coupon.js'
|
||||
import go from '@/commons/utils/go.js'
|
||||
import { addCoupon, updateCoupon } from '@/api/coupon.js'
|
||||
const pageData = reactive({
|
||||
value: [
|
||||
{ name: "周一", },
|
||||
@@ -146,8 +143,11 @@
|
||||
})
|
||||
onLoad((options) => {
|
||||
if ( options.type == 'info' ) {
|
||||
pageData.id = options.id;
|
||||
getConponInfo();
|
||||
let itemData = JSON.parse(options.item);
|
||||
for (let item in itemData) {
|
||||
formData[item] = itemData[item]
|
||||
}
|
||||
formData.userDays = formData.userDays.split(",");
|
||||
}
|
||||
})
|
||||
let datePicker = ref(null)
|
||||
@@ -165,24 +165,9 @@
|
||||
pageData.show = true;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取详情
|
||||
*/
|
||||
let getConponInfo = () => {
|
||||
getTbShopCouponInfo(pageData.id).then((res) => {
|
||||
// formData = res;
|
||||
for (let item in res) {
|
||||
formData[item] = res[item]
|
||||
}
|
||||
formData.userDays = formData.userDays.split(",");
|
||||
console.log(formData)
|
||||
})
|
||||
}
|
||||
|
||||
let typeChange = ( type ) =>{
|
||||
pageData.dateType = type;
|
||||
pageData.mode = 'date'
|
||||
|
||||
if ( formData.validityType == "custom") {
|
||||
datePicker.value.open()
|
||||
}
|
||||
@@ -211,7 +196,6 @@
|
||||
*/
|
||||
let timeConfirm = () => {
|
||||
pageData.useTimeShow = false;
|
||||
console.log(pageData.useTime)
|
||||
if ( pageData.sueDateType == 'useStartTime') { formData.useStartTime = pageData.useTime}
|
||||
if ( pageData.sueDateType == 'useEndTime') { formData.useEndTime = pageData.useTime}
|
||||
}
|
||||
@@ -220,9 +204,7 @@
|
||||
* 有效期选择
|
||||
*/
|
||||
let datePickerConfirm = (data) => {
|
||||
console.log(pageData.dateType)
|
||||
if ( pageData.dateType == 'validityType') {
|
||||
// .substring(0,10)
|
||||
formData.validStartTime = data.start;
|
||||
formData.validEndTime = data.end;
|
||||
}
|
||||
@@ -232,15 +214,39 @@
|
||||
* 保存
|
||||
*/
|
||||
let save = () => {
|
||||
if( !formData.title ){
|
||||
uni.showToast({ title: '请输入优惠券名称' })
|
||||
return false;
|
||||
}
|
||||
if( !formData.fullAmount ){
|
||||
uni.showToast({ title: '请输入使用门槛' })
|
||||
return false;
|
||||
}
|
||||
if( !formData.daysToTakeEffect ){
|
||||
uni.showToast({ title: '请输入生效天数' })
|
||||
return false;
|
||||
}
|
||||
if( !formData.number ){
|
||||
uni.showToast({ title: '请输入发放数量' })
|
||||
return false;
|
||||
}
|
||||
|
||||
formData.userDays = formData.userDays.toString();
|
||||
let params = {
|
||||
...formData
|
||||
}
|
||||
console.log(params)
|
||||
addTbShopCoupon(params).then((res) => {
|
||||
// console.log(res)
|
||||
go.back(1)
|
||||
})
|
||||
if(formData.id){
|
||||
updateCoupon(params).then((res) => {
|
||||
go.back(1)
|
||||
})
|
||||
} else{
|
||||
addCoupon(params).then((res) => {
|
||||
go.back(1)
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
@@ -28,10 +28,11 @@
|
||||
<view class="selectGoods" @tap="selectGoodsOpen">
|
||||
<view>
|
||||
<view class="title">选择商品</view>
|
||||
<view class="goodsName" v-if='formData.products.length <= 0'>选择指定商品</view>
|
||||
<view class="goodsName" v-if='!formData.proId'>选择指定商品</view>
|
||||
<view class="goodsName" v-else>
|
||||
<view class="goodsItem" v-for="(item,index) in formData.products" :key="index">
|
||||
<view class="productName">{{item.name}}</view><up-input @tap.stop="stop" style="border-bottom: 1rpx solid #666;" v-model="item.num" placeholder="填写数量" border="none" ></up-input>
|
||||
<view class="goodsItem" >
|
||||
<view class="productName">{{formData.proName}}</view>
|
||||
<!-- <up-input @tap.stop="stop" style="border-bottom: 1rpx solid #666;" v-model="item.num" placeholder="填写数量" border="none" ></up-input> -->
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
@@ -51,15 +52,13 @@
|
||||
</view>
|
||||
</template>
|
||||
<script setup>
|
||||
import go from '@/commons/utils/go.js'
|
||||
import myActionSheet from '@/components/my-components/my-action-sheet';
|
||||
import selectGoods from './components/select-goods';
|
||||
import { getTbShopCouponInfo, addTbShopCoupon } from '@/http/yskApi/coupon.js'
|
||||
import { reactive, ref } from 'vue';
|
||||
import { onLoad, onShow } from '@dcloudio/uni-app';
|
||||
import go from '@/commons/utils/go.js'
|
||||
import selectGoods from './components/select-goods';
|
||||
import { addCoupon, updateCoupon } from '@/api/coupon.js'
|
||||
const pageData = reactive({
|
||||
id: null,
|
||||
goodsData: null,
|
||||
title: "",
|
||||
show: false,
|
||||
})
|
||||
@@ -68,13 +67,18 @@
|
||||
type: '2',
|
||||
fullAmount: null,
|
||||
number: null,
|
||||
proId: null,
|
||||
proName: null,
|
||||
products: []
|
||||
})
|
||||
|
||||
onLoad((options) => {
|
||||
if ( options.type == 'info' ) {
|
||||
pageData.id = options.id;
|
||||
getConponInfo();
|
||||
let itemData = JSON.parse(options.item);
|
||||
for (let item in itemData) {
|
||||
formData[item] = itemData[item]
|
||||
}
|
||||
formData.userDays = formData.userDays.split(",");
|
||||
}
|
||||
})
|
||||
|
||||
@@ -82,39 +86,43 @@
|
||||
let selectGoodsOpen = () => {
|
||||
goods.value.open();
|
||||
}
|
||||
|
||||
let getConponInfo = () => {
|
||||
getTbShopCouponInfo(pageData.id).then((res) => {
|
||||
// formData = res;
|
||||
for (let item in res) {
|
||||
formData[item] = res[item]
|
||||
}
|
||||
console.log(formData)
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
let stop = () => { }
|
||||
|
||||
let affirm = (item) => {
|
||||
pageData.goodsData = item;
|
||||
formData.products = [];
|
||||
formData.products.push({
|
||||
productId: item.id,
|
||||
name: item.name,
|
||||
num: null
|
||||
})
|
||||
formData.proId = item.id
|
||||
formData.proName = item.name
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*/
|
||||
let save = () => {
|
||||
if( !formData.title ){
|
||||
uni.showToast({ title: '请输入商品名称' })
|
||||
return false;
|
||||
}
|
||||
if( !formData.fullAmount ){
|
||||
uni.showToast({ title: '请输入使用门槛' })
|
||||
return false;
|
||||
}
|
||||
if( !formData.number ){
|
||||
uni.showToast({ title: '请输入发放数量' })
|
||||
return false;
|
||||
}
|
||||
let params = {
|
||||
...formData
|
||||
}
|
||||
addTbShopCoupon(params).then((res) => {
|
||||
go.back(1)
|
||||
})
|
||||
if(formData.id){
|
||||
updateCoupon(params).then((res) => {
|
||||
go.back(1)
|
||||
})
|
||||
} else{
|
||||
addCoupon(params).then((res) => {
|
||||
go.back(1)
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
@@ -7,21 +7,7 @@
|
||||
{{item.name}}
|
||||
</view>
|
||||
</view>
|
||||
<!-- 搜搜 -->
|
||||
<!-- <view class="search">
|
||||
<up-input
|
||||
placeholder="搜索优惠券名称"
|
||||
prefixIcon="search"
|
||||
shape="circle"
|
||||
border="none"
|
||||
fontSize="14px"
|
||||
prefixIconStyle="font-size: 28px;color: #999;"
|
||||
:customStyle="{backgroundColor:'#F9F9F9',padding: '10rpx 18rpx'}"
|
||||
></up-input>
|
||||
<view class="searchBtn">
|
||||
搜索
|
||||
</view>
|
||||
</view> -->
|
||||
|
||||
<!-- 内容 -->
|
||||
<view class="couponContentList">
|
||||
<view class="couponContent" v-for="(item,index) in pageData.couponList" :key="index">
|
||||
@@ -71,10 +57,7 @@
|
||||
<button @tap="delCoupon(item)">删除</button>
|
||||
</view>
|
||||
</view>
|
||||
<template v-if="pageData.couponList.length">
|
||||
<my-pagination :page="pageData.query.page" :totalElements="pageData.totalElements" :size="pageData.query.size"
|
||||
@change="pageChange"></my-pagination>
|
||||
</template>
|
||||
|
||||
</view>
|
||||
|
||||
|
||||
@@ -86,16 +69,13 @@
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { reactive, ref } from 'vue';
|
||||
import { onShow } from '@dcloudio/uni-app';
|
||||
import go from '@/commons/utils/go.js'
|
||||
import { getTbShopCoupon , delTbShopCoupon} from '@/http/yskApi/coupon.js'
|
||||
import {
|
||||
reactive,
|
||||
ref,
|
||||
onMounted
|
||||
} from 'vue';
|
||||
import { onLoad, onShow,onPageScroll,
|
||||
onPullDownRefresh,
|
||||
onReachBottom, } from '@dcloudio/uni-app';
|
||||
|
||||
import { getCouponList } from '@/api/coupon.js'
|
||||
|
||||
const pageData = reactive({
|
||||
delShow: false,
|
||||
delItem: null,
|
||||
@@ -109,22 +89,14 @@
|
||||
},
|
||||
query: {
|
||||
type: 1,
|
||||
page: 1,
|
||||
size: 10,
|
||||
},
|
||||
couponList: [],
|
||||
totalElements: 0,
|
||||
})
|
||||
|
||||
onShow(() => {
|
||||
getCoupon();
|
||||
})
|
||||
|
||||
onReachBottom(() => {
|
||||
// pageData.query.page++
|
||||
// getCoupon()
|
||||
})
|
||||
|
||||
/**
|
||||
* tag切换
|
||||
*/
|
||||
@@ -135,21 +107,18 @@
|
||||
getCoupon();
|
||||
}
|
||||
|
||||
// 获取优惠券列表
|
||||
/**
|
||||
* 获取优惠券列表
|
||||
*/
|
||||
let getCoupon = () => {
|
||||
let params = pageData.query;
|
||||
getTbShopCoupon(params).then((res) => {
|
||||
getCouponList(params).then((res) => {
|
||||
console.log(res)
|
||||
pageData.couponList = res.content;
|
||||
pageData.totalElements = res.totalElements;
|
||||
pageData.couponList = res;
|
||||
})
|
||||
}
|
||||
// 页数改变事件
|
||||
function pageChange(page) {
|
||||
console.log(page)
|
||||
pageData.query.page = page
|
||||
getCoupon()
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 添加
|
||||
*/
|
||||
@@ -168,9 +137,9 @@
|
||||
let editCoupon = (item)=>{
|
||||
console.log(item.id)
|
||||
if ( item.type == 1 ) {
|
||||
go.to('PAGES_COUPON_DISCOUNTCOUPONS',{type: 'info', id: item.id})
|
||||
go.to('PAGES_COUPON_DISCOUNTCOUPONS',{type: 'info', item: JSON.stringify(item)})
|
||||
} else {
|
||||
go.to('PAGES_COUPON_CERTIFICATE',{type: 'info', id: item.id})
|
||||
go.to('PAGES_COUPON_CERTIFICATE',{type: 'info', item: JSON.stringify(item)})
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user