fix: 直播购物车修改

This commit is contained in:
kaizheng(郑凯) 2025-02-22 21:30:01 +08:00
parent 61baae1cfc
commit 06e4cd516e
3 changed files with 82 additions and 30 deletions

View File

@ -22,11 +22,9 @@
<el-option v-if="yunyin" :value="6" label="已删除" /> <el-option v-if="yunyin" :value="6" label="已删除" />
</el-select> </el-select>
<el-button type="primary" @click="getLists(1)">查询</el-button> <el-button type="primary" @click="getLists(1)">查询</el-button>
<el-button <el-button v-if="zhujiao || tougu" type="success" @click="addTag()"
v-if="zhujiao || tougu" >新增圈子</el-button
type="success" >
@click="addTag()"
>新增圈子</el-button>
</div> </div>
<el-table <el-table
@ -50,12 +48,12 @@
<el-table-column prop="coverImage" label="封面图" width="100"> <el-table-column prop="coverImage" label="封面图" width="100">
<template #default="scope"> <template #default="scope">
<el-popover placement="right" :width="400" trigger="hover"> <el-popover placement="right" :width="400" trigger="hover">
<img :src="scope.row.coverImage" width="375" height="300"> <img :src="scope.row.coverImage" width="375" height="300" />
<template #reference> <template #reference>
<img <img
:src="scope.row.coverImage" :src="scope.row.coverImage"
style="max-height: 60px; max-width: 60px" style="max-height: 60px; max-width: 60px"
> />
</template> </template>
</el-popover> </el-popover>
</template> </template>
@ -86,18 +84,21 @@
type="text" type="text"
size="mini" size="mini"
@click="addTag(scope.row, 2)" @click="addTag(scope.row, 2)"
>审核</el-button> >审核</el-button
>
<el-button <el-button
v-if="tougu || yunyin || zhujiao || yinxiao" v-if="tougu || yunyin || zhujiao || yinxiao"
type="text" type="text"
size="mini" size="mini"
@click="addTag(scope.row, 0)" @click="addTag(scope.row, 0)"
>查看</el-button> >查看</el-button
>
<el-button <el-button
type="text" type="text"
size="mini" size="mini"
@click="$router.push(`/circle/data?id=${scope.row.id}`)" @click="$router.push(`/circle/data?id=${scope.row.id}`)"
>数据</el-button> >数据</el-button
>
<el-button <el-button
v-if=" v-if="
(tougu || zhujiao || yunyin) && (tougu || zhujiao || yunyin) &&
@ -107,43 +108,50 @@
type="text" type="text"
size="mini" size="mini"
@click="addTag(scope.row, 0)" @click="addTag(scope.row, 0)"
>修改</el-button> >修改</el-button
>
<el-button <el-button
v-if="(tougu || zhujiao) && scope.row.status === 1" v-if="(tougu || zhujiao) && scope.row.status === 1"
type="text" type="text"
size="mini" size="mini"
@click="update(scope.row, 101)" @click="update(scope.row, 101)"
>申请上架</el-button> >申请上架</el-button
>
<el-button <el-button
v-if="(tougu || zhujiao) && scope.row.status === 2" v-if="(tougu || zhujiao) && scope.row.status === 2"
type="text" type="text"
size="mini" size="mini"
@click="update(scope.row, 102)" @click="update(scope.row, 102)"
>撤回</el-button> >撤回</el-button
>
<!-- <el-button v-if="yinxiao" type="text" size="mini" @click="update(scope.row)">数据</el-button> --> <!-- <el-button v-if="yinxiao" type="text" size="mini" @click="update(scope.row)">数据</el-button> -->
<el-button <el-button
v-if="(tougu || yinxiao || zhujiao) && scope.row.status === 3" v-if="(tougu || yinxiao || zhujiao) && scope.row.status === 3"
type="text" type="text"
size="mini" size="mini"
@click="copyUrl($event, scope.row)" @click="copyUrl($event, scope.row)"
>复制圈子链接</el-button> >复制圈子链接</el-button
>
<el-button <el-button
v-if="yunyin && scope.row.status === 5" v-if="yunyin && scope.row.status === 5"
type="text" type="text"
size="mini" size="mini"
@click="update(scope.row, 105)" @click="update(scope.row, 105)"
>上架</el-button> >上架</el-button
>
<el-button <el-button
v-if="yunyin && scope.row.status === 3" v-if="yunyin && scope.row.status === 3"
type="text" type="text"
size="mini" size="mini"
@click="update(scope.row, 106)" @click="update(scope.row, 106)"
>下架</el-button> >下架</el-button
>
<el-button <el-button
v-if="yunyin && [5].includes(scope.row.status)" v-if="yunyin && [5].includes(scope.row.status)"
type="text" type="text"
@click="update(scope.row, 107)" @click="update(scope.row, 107)"
>删除</el-button> >删除</el-button
>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@ -247,7 +255,7 @@
v-if="form.coverImage" v-if="form.coverImage"
:src="form.coverImage" :src="form.coverImage"
class="avatar" class="avatar"
> />
<el-button v-else size="mini" type="primary">上传图片</el-button> <el-button v-else size="mini" type="primary">上传图片</el-button>
</el-upload> </el-upload>
</el-form-item> </el-form-item>
@ -342,7 +350,7 @@
<el-form-item v-if="isAdjust" label="审核结果"> <el-form-item v-if="isAdjust" label="审核结果">
<el-radio-group v-model="adjustForm.event"> <el-radio-group v-model="adjustForm.event">
<el-radio :label="103">通过</el-radio> <el-radio :label="103">通过</el-radio>
<br> <br />
<el-radio :label="104">驳回</el-radio> <el-radio :label="104">驳回</el-radio>
<el-input <el-input
v-model="adjustForm.reason" v-model="adjustForm.reason"
@ -361,7 +369,8 @@
:loading="editLoading" :loading="editLoading"
type="primary" type="primary"
@click="submit()" @click="submit()"
>确认</el-button> >确认</el-button
>
</div> </div>
</el-dialog> </el-dialog>
</div> </div>
@ -425,6 +434,17 @@ export default {
} }
}, },
data() { data() {
const validateAuthorityId = (rule, value, callback) => {
if (value === "") {
callback(new Error("请输权限号"));
} else {
var reg = /^(\d+,?)+$/;
if (!reg.test(value)) {
callback(new Error("权限号为纯数字,多个权限号以逗号隔开!"));
}
callback();
}
};
return { return {
dialog: false, dialog: false,
dialogTitle: "", dialogTitle: "",
@ -484,7 +504,8 @@ export default {
{ required: true, message: "请上传封面图", trigger: "blur" } { required: true, message: "请上传封面图", trigger: "blur" }
], ],
authorityId: [ authorityId: [
{ required: true, message: "请输入权限号", trigger: "blur" } { required: true, message: "请输入权限号", trigger: "blur" },
{ validator: validateAuthorityId, trigger: "blur" }
], ],
originalPrice: [ originalPrice: [
{ required: true, message: "请输入价格", trigger: "blur" } { required: true, message: "请输入价格", trigger: "blur" }

View File

@ -427,6 +427,15 @@
show-word-limit show-word-limit
></el-input> ></el-input>
</el-form-item> </el-form-item>
<el-form-item label="产品Id" prop="productId">
<el-input
v-model="dialogForm.productId"
placeholder="请输入产品ID"
autocomplete="off"
clearable
show-word-limit
></el-input>
</el-form-item>
<el-form-item label="产品介绍" prop="productDesc"> <el-form-item label="产品介绍" prop="productDesc">
<el-input <el-input
v-model="dialogForm.productDesc" v-model="dialogForm.productDesc"
@ -459,14 +468,14 @@
</div> </div>
</el-upload> </el-upload>
</el-form-item> </el-form-item>
<el-form-item label="产品链接" prop="url"> <!-- <el-form-item label="产品链接" prop="url">
<el-input <el-input
v-model="dialogForm.url" v-model="dialogForm.url"
autocomplete="off" autocomplete="off"
placeholder="请输入产品链接" placeholder="请输入产品链接"
clearable clearable
></el-input> ></el-input>
</el-form-item> </el-form-item> -->
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<el-button @click="cancel()"> </el-button> <el-button @click="cancel()"> </el-button>
@ -542,7 +551,7 @@ export default {
dialogForm: { dialogForm: {
productName: "", productName: "",
productDesc: "", productDesc: "",
productType: 111, productType: 21,
url: "", url: "",
coverImgUrl: "" coverImgUrl: ""
}, },
@ -592,6 +601,9 @@ export default {
{ required: true, message: "请输入产品名称", trigger: "blur" }, { required: true, message: "请输入产品名称", trigger: "blur" },
{ min: 1, max: 50, message: "长度在 1 到 20 个字符", trigger: "blur" } { min: 1, max: 50, message: "长度在 1 到 20 个字符", trigger: "blur" }
], ],
productId: [
{ required: true, message: "请输入产品ID", trigger: "blur" }
],
productDesc: [ productDesc: [
{ required: true, message: "请输入产品介绍", trigger: "blur" }, { required: true, message: "请输入产品介绍", trigger: "blur" },
{ {

View File

@ -308,6 +308,8 @@
<el-table :data="ruleForm.cartList" size="mini" style="width: 100%"> <el-table :data="ruleForm.cartList" size="mini" style="width: 100%">
<el-table-column label="产品名称" prop="productName" width="100"> <el-table-column label="产品名称" prop="productName" width="100">
</el-table-column> </el-table-column>
<el-table-column prop="productId" label="产品id" width="180">
</el-table-column>
<el-table-column prop="productDesc" label="产品介绍" width="180"> <el-table-column prop="productDesc" label="产品介绍" width="180">
</el-table-column> </el-table-column>
<el-table-column prop="" label="封面图"> <el-table-column prop="" label="封面图">
@ -482,6 +484,15 @@
show-word-limit show-word-limit
></el-input> ></el-input>
</el-form-item> </el-form-item>
<el-form-item label="产品Id" prop="productId">
<el-input
v-model="dialogForm.productId"
placeholder="请输入产品ID"
autocomplete="off"
clearable
show-word-limit
></el-input>
</el-form-item>
<el-form-item label="产品介绍" prop="productDesc"> <el-form-item label="产品介绍" prop="productDesc">
<el-input <el-input
v-model="dialogForm.productDesc" v-model="dialogForm.productDesc"
@ -514,14 +525,14 @@
</div> </div>
</el-upload> </el-upload>
</el-form-item> </el-form-item>
<el-form-item label="产品链接" prop="url"> <!-- <el-form-item label="产品链接" prop="url">
<el-input <el-input
v-model="dialogForm.url" v-model="dialogForm.url"
autocomplete="off" autocomplete="off"
placeholder="请输入产品链接" placeholder="请输入产品链接"
clearable clearable
></el-input> ></el-input>
</el-form-item> </el-form-item> -->
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<el-button @click="cancel()"> </el-button> <el-button @click="cancel()"> </el-button>
@ -659,8 +670,9 @@ export default {
}, },
dialogForm: { dialogForm: {
productName: "", productName: "",
productId: "",
productDesc: "", productDesc: "",
productType: 111, productType: 21,
url: "", url: "",
coverImgUrl: "" coverImgUrl: ""
}, },
@ -720,6 +732,9 @@ export default {
{ required: true, message: "请输入产品名称", trigger: "blur" }, { required: true, message: "请输入产品名称", trigger: "blur" },
{ min: 1, max: 50, message: "长度在 1 到 20 个字符", trigger: "blur" } { min: 1, max: 50, message: "长度在 1 到 20 个字符", trigger: "blur" }
], ],
productId: [
{ required: true, message: "请输入产品ID", trigger: "blur" }
],
productDesc: [ productDesc: [
{ required: true, message: "请输入产品介绍", trigger: "blur" }, { required: true, message: "请输入产品介绍", trigger: "blur" },
{ {
@ -1310,7 +1325,7 @@ export default {
this.dialogForm = { this.dialogForm = {
productName: "", productName: "",
productDesc: "", productDesc: "",
productType: 111, productType: 21,
url: "", url: "",
coverImgUrl: "" coverImgUrl: ""
}; };
@ -1335,7 +1350,11 @@ export default {
}, },
validateTitles(rule, value, callback) { validateTitles(rule, value, callback) {
if (!value || !value.length) { if (!value || !value.length) {
callback(new Error("请输入权限号")); return callback(new Error("请输入权限号"));
}
var reg = /^(\d+,?)+$/;
if (!reg.test(value)) {
return callback(new Error("权限号为纯数字,多个权限号以逗号隔开!"));
} }
const titles = value.split(",").map(t => t.trim()); const titles = value.split(",").map(t => t.trim());
if (titles.length > 4) { if (titles.length > 4) {