Commit 7b9fa245 authored by 黄奎's avatar 黄奎

页面修改

parent 1753764d
......@@ -5,45 +5,101 @@
/ 编辑品牌管理
</div>
<div class="content">
<el-form :rules="rules" :model="addMsg" ref="addMsg" label-width="150px" style="width: 70%">
<el-form-item label="品牌分类" class="is-required" prop="BrandClassId">
<el-select class="w300" v-model="addMsg.CategoryId" size="small" placeholder="请选择">
<el-form
:rules="rules"
:model="addMsg"
ref="addMsg"
label-width="150px"
style="width: 70%"
>
<el-form-item label="品牌分类" class="is-required" prop="CategoryId">
<el-select
class="w300"
v-model="addMsg.CategoryId"
size="small"
placeholder="请选择"
>
<el-option :key="0" label="请选择" :value="0"></el-option>
<el-option v-for="item in CategoryList" :key="item.Id" :label="item.Name" :value="item.Id">
<el-option
v-for="item in CategoryList"
:key="item.Id"
:label="item.Name"
:value="item.Id"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="品牌名" prop="Name" class="is-required" size="small">
<el-input v-model="addMsg.Name" class="w600" placeholder="请输入品牌名" maxlength="100" />
<el-form-item
label="品牌名"
prop="Name"
class="is-required"
size="small"
>
<el-input
v-model="addMsg.Name"
class="w600"
placeholder="请输入品牌名"
maxlength="100"
/>
</el-form-item>
<el-form-item label="Logo" class="is-required" prop="Logo" size="small">
<el-button @click="openChangeDig(1)" size="small">选择文件</el-button>
<div class="app-gallery-item" style="position: relative; width: 100px; margin-top: 10px">
<img v-if="!addMsg.Logo || addMsg.Logo == ''" src="../../assets/img/default.png"
style="width: 80px; height: 80px" alt="" />
<el-image v-else style="width: 80px; height: 80px" :src="addMsg.Logo">
<div
class="app-gallery-item"
style="position: relative; width: 100px; margin-top: 10px"
>
<img
v-if="!addMsg.Logo || addMsg.Logo == ''"
src="../../assets/img/default.png"
style="width: 80px; height: 80px"
alt=""
/>
<el-image
v-else
style="width: 80px; height: 80px"
:src="addMsg.Logo"
>
</el-image>
</div>
</el-form-item>
<el-form-item label="品牌介绍图">
<el-form-item label="品牌介绍图" prop="BrandImgList">
<div class="nav_Main">
<div class="nav_IconContent">
<draggable v-model="addMsg.BrandImgList">
<div style="
<div
style="
position: relative;
margin-right: 20px;
display: inline-block;
" v-for="(item, index) in addMsg.BrandImgList" :key="index + '2'">
"
v-for="(item, index) in addMsg.BrandImgList"
:key="index + '2'"
>
<el-image style="width: 100px;height: 100px" :src="item.Path">
</el-image><br />
<el-input v-model="item.Name" style="width: 100px;" placeholder="描述"></el-input>
<el-button @click="ClearCarouse(index)" class="delBtn" type="danger" icon="el-icon-close" circle>
</el-image
><br />
<el-input
v-model="item.Name"
style="width: 100px;"
placeholder="描述"
></el-input>
<el-button
@click="ClearCarouse(index)"
class="delBtn"
type="danger"
icon="el-icon-close"
circle
>
</el-button>
</div>
</draggable>
</div>
<div @click="openChangeDig(2)" v-if="addMsg.BrandImgList.length < 9" class="add-image-btn 2222"
style="cursor: pointer">
<div
@click="openChangeDig(2)"
v-if="addMsg.BrandImgList.length < 9"
class="add-image-btn 2222"
style="cursor: pointer"
>
+ 添加图片
</div>
</div>
......@@ -53,15 +109,27 @@
<el-radio v-model="addMsg.IsHot" :label="0"></el-radio>
</el-form-item>
<el-form-item label="更多描述" size="small">
<el-input v-model="addMsg.MoreDesc" placeholder="请输入更多描述" class="w600" maxlength="500" />
<el-input
v-model="addMsg.MoreDesc"
placeholder="请输入更多描述"
class="w600"
maxlength="500"
/>
</el-form-item>
<el-form-item label="备注描述" size="small">
<el-input v-model="addMsg.RemarkDesc" placeholder="请输入备注描述" class="w600" maxlength="500" />
<el-input
v-model="addMsg.RemarkDesc"
placeholder="请输入备注描述"
class="w600"
maxlength="500"
/>
</el-form-item>
</el-form>
</div>
<div style="margin-top: 20px">
<el-button size="small" type="primary" @click="Save('addMsg')">保存</el-button>
<el-button size="small" type="primary" @click="Save('addMsg')"
>保存</el-button
>
</div>
<!-- 选择文件 -->
<el-dialog title="选择文件" :visible.sync="isShowIamge" width="1240px">
......@@ -70,288 +138,288 @@
</div>
</template>
<script>
import ChooseImg from "@/components/global/ChooseImg.vue";
import ChooseImg from "@/components/global/ChooseImg.vue";
import draggable from "vuedraggable";
export default {
components: {
ChooseImg,
draggable
import draggable from "vuedraggable";
export default {
components: {
ChooseImg,
draggable
},
data() {
return {
addMsg: {
Id: 0,
Name: "", //品牌名称
Logo: "", //Logo
IsHot: 0,
CategoryId: "", //品牌分类
MoreDesc: "", //更多描述
RemarkDesc: "", //备注描述
BrandImgList: [] //品牌介绍图
},
CategoryList: [], //品牌分类列表
isShowIamge: false,
chooseType: 0,
loading: false,
rules: {
Name: [{ required: true, message: "请输入品牌名称", trigger: "blur" }],
CategoryId: [
{ required: true, message: "请选择分类", trigger: "change" }
],
BrandImgList: [
{ required: true, message: "请选择图片", trigger: "change" }
]
}
};
},
created() {
this.getCategoryList();
},
mounted() {
if (this.$route.query.Id) {
this.addMsg.Id = this.$route.query.Id;
this.initData();
}
},
methods: {
//删除图片
ClearCarouse(index) {
if (this.addMsg.BrandImgList && this.addMsg.BrandImgList.length > 0) {
this.addMsg.BrandImgList.splice(index, 1);
}
},
data() {
return {
addMsg: {
Id: 0,
Name: "", //品牌名称
Logo: "", //Logo
IsHot: 0,
CategoryId: "", //品牌分类
MoreDesc: "", //更多描述
RemarkDesc: "", //备注描述
BrandImgList: [] //品牌介绍图
},
CategoryList: [], //品牌分类列表
isShowIamge: false,
chooseType: 0,
loading: false,
rules: {
Name: [{
required: true,
message: "请输入品牌名称",
trigger: "blur"
}],
}
initData() {
var qMsg = {
BrandId: this.addMsg.Id
};
this.apipost("/api/Assess/GetBrandInfo", qMsg, res => {
if (res.data.resultCode == 1) {
var tempData = res.data.data;
if (tempData) {
let {
Id,
Name,
Logo,
CategoryId,
IsHot,
MoreDesc,
RemarkDesc
} = tempData;
this.addMsg = {
Id,
Name,
Logo,
CategoryId,
IsHot,
MoreDesc,
RemarkDesc
};
if (tempData.BrandImgList && tempData.BrandImgList.length > 0) {
this.addMsg.BrandImgList = tempData.BrandImgList;
}
}
}
});
},
created() {
this.getCategoryList();
},
mounted() {
if (this.$route.query.Id) {
this.addMsg.Id = this.$route.query.Id;
this.initData();
SelectId(msg) {
let url = this.getIconLink(msg.url);
if (this.chooseType == 1) {
this.addMsg.Logo = url;
}
if (this.chooseType == 2) {
this.addMsg.BrandImgList.push({
Sort: 1,
Name: "",
Path: url
});
}
this.isShowIamge = false;
},
//显示图片弹窗
openChangeDig(type) {
this.chooseType = type;
this.isShowIamge = true;
},
methods: {
//删除图片
ClearCarouse(index) {
if (this.addMsg.BrandImgList && this.addMsg.BrandImgList.length > 0) {
this.addMsg.BrandImgList.splice(index, 1);
//获取品牌分类
getCategoryList() {
this.apipost("/api/Assess/GetCategoryDropList", {}, res => {
if (res.data.resultCode == 1) {
this.CategoryList = res.data.data;
}
},
initData() {
var qMsg = {
BrandId: this.addMsg.Id
};
this.apipost("/api/Assess/GetBrandInfo", qMsg, res => {
if (res.data.resultCode == 1) {
var tempData = res.data.data;
if (tempData) {
let {
Id,
Name,
Logo,
CategoryId,
IsHot,
MoreDesc,
RemarkDesc
} = tempData;
this.addMsg = {
Id,
Name,
Logo,
CategoryId,
IsHot,
MoreDesc,
RemarkDesc
};
if (tempData.BrandImgList && tempData.BrandImgList.length > 0) {
this.addMsg.BrandImgList = tempData.BrandImgList;
}
});
},
//保存品牌
Save(formName) {
this.$refs[formName].validate(valid => {
if (valid && this.addMsg.Logo && this.addMsg.BrandImgList[0]) {
this.apipost("/api/Assess/SetBrandInfo", this.addMsg, res => {
if (res.data.resultCode == 1) {
this.CommonJump("hbrand");
this.Success(res.data.message);
} else {
this.Error(res.data.message);
}
}
});
},
SelectId(msg) {
let url = this.getIconLink(msg.url);
if (this.chooseType == 1) {
this.addMsg.Logo = url;
}
if (this.chooseType == 2) {
this.addMsg.BrandImgList.push({
Sort: 1,
Name: "",
Path: url
});
} else {
return false;
}
this.isShowIamge = false;
},
//显示图片弹窗
openChangeDig(type) {
this.chooseType = type;
this.isShowIamge = true;
},
//获取品牌分类
getCategoryList() {
this.apipost("/api/Assess/GetCategoryDropList", {}, res => {
if (res.data.resultCode == 1) {
this.CategoryList = res.data.data;
}
});
},
//保存品牌
Save(formName) {
this.$refs[formName].validate(valid => {
if (valid) {
this.apipost("/api/Assess/SetBrandInfo", this.addMsg, res => {
if (res.data.resultCode == 1) {
this.CommonJump("hbrand");
this.Success(res.data.message);
} else {
this.Error(res.data.message);
}
});
} else {
return false;
}
});
}
});
}
};
</script>
<style>
.app-add-cat .el-checkbox-group {
font-size: 14px !important;
}
};
</script>
<style scope>
.app-add-cat .el-checkbox-group {
font-size: 14px !important;
}
.app-add-cat .el-checkbox {
margin-right: 0;
}
.app-add-cat .el-checkbox {
margin-right: 0;
}
.app-add-cat .el-dialog__body {
padding: 10px 20px !important;
}
.app-add-cat .el-dialog__body {
padding: 10px 20px !important;
}
.app-add-cat .tag-box .tag-item {
margin-right: 5px;
}
.app-add-cat .tag-box .tag-item {
margin-right: 5px;
}
.app-add-cat .tag-box {
margin: 20px 0;
}
.app-add-cat .tag-box {
margin: 20px 0;
}
.app-add-cat .app-goods-cat-list .active {
background: #fafafa;
}
.app-add-cat .app-goods-cat-list .active {
background: #fafafa;
}
.app-add-cat .app-goods-cat-list .cat-item {
cursor: pointer;
padding: 5px 10px;
}
.app-add-cat .app-goods-cat-list .cat-item {
cursor: pointer;
padding: 5px 10px;
}
.app-add-cat .app-goods-cat-list {
border: 1px solid #e8eaee;
border-radius: 5px;
margin-top: -5px;
padding: 10px 0;
overflow: scroll;
height: 400px;
}
.app-add-cat .app-goods-cat-list {
border: 1px solid #e8eaee;
border-radius: 5px;
margin-top: -5px;
padding: 10px 0;
overflow: scroll;
height: 400px;
}
.h_edit_brand .blue {
color: #409eff;
}
.h_edit_brand .blue {
color: #409eff;
}
.h_edit_brand .content {
background: #fff;
margin-top: 10px;
padding: 20px;
box-sizing: border-box;
}
.h_edit_brand .content {
background: #fff;
margin-top: 10px;
padding: 20px;
box-sizing: border-box;
}
.h_edit_brand .gez_list {
/*width: 650px;*/
margin-bottom: 12px;
padding: 20px;
border: 1px solid #ebeef5;
background-color: #fff;
color: #303133;
}
.h_edit_brand .gez_list {
/*width: 650px;*/
margin-bottom: 12px;
padding: 20px;
border: 1px solid #ebeef5;
background-color: #fff;
color: #303133;
}
.h_edit_brand .quyu {
background-color: #f4f4f5;
color: #909399;
padding: 10px;
line-height: 30px;
height: 30px;
font-size: 12px;
border-radius: 4px;
white-space: nowrap;
margin: 5px;
}
.h_edit_brand .quyu {
background-color: #f4f4f5;
color: #909399;
padding: 10px;
line-height: 30px;
height: 30px;
font-size: 12px;
border-radius: 4px;
white-space: nowrap;
margin: 5px;
}
.h_edit_brand .el-tag+.el-tag {
margin-left: 10px;
}
.h_edit_brand .el-tag + .el-tag {
margin-left: 10px;
}
.h_edit_brand .button-new-tag {
margin-left: 10px;
height: 32px;
line-height: 30px;
padding-top: 0;
padding-bottom: 0;
}
.h_edit_brand .button-new-tag {
margin-left: 10px;
height: 32px;
line-height: 30px;
padding-top: 0;
padding-bottom: 0;
}
.h_edit_brand .input-new-tag {
width: 90px;
margin-left: 10px;
vertical-align: bottom;
}
.h_edit_brand .input-new-tag {
width: 90px;
margin-left: 10px;
vertical-align: bottom;
}
.h_edit_brand .ue-style .el-form-item__content {
line-height: 0;
}
.h_edit_brand .ue-style .el-form-item__content {
line-height: 0;
}
.h_edit_brand .app-gallery-item {
border: none;
}
.h_edit_brand .app-gallery-item {
border: none;
}
.h_edit_brand .nav_Main {
display: flex;
flex-wrap: wrap;
justify-content: flex-start;
}
.h_edit_brand .nav_Main {
display: flex;
flex-wrap: wrap;
justify-content: flex-start;
}
.h_edit_brand .nav_IconContent {
display: flex;
flex-wrap: wrap;
justify-content: flex-start;
}
.h_edit_brand .nav_IconContent {
display: flex;
flex-wrap: wrap;
justify-content: flex-start;
}
/* .h_edit_brand .nav_IconContent div>div {
/* .h_edit_brand .nav_IconContent div>div {
display: inline-block;
} */
.h_edit_brand .colapp-image {
background-size: cover;
background-position: center center;
width: 100px;
height: 100px;
border-radius: 0%;
}
.h_edit_brand .colapp-image {
background-size: cover;
background-position: center center;
width: 100px;
height: 100px;
border-radius: 0%;
}
.h_edit_brand .add-image-btn {
width: 100px;
height: 100px;
line-height: 100px;
color: #419efb;
border: 1px solid #e2e2e2;
cursor: pointer;
text-align: center;
}
.h_edit_brand .add-image-btn {
width: 100px;
height: 100px;
line-height: 100px;
color: #419efb;
border: 1px solid #e2e2e2;
cursor: pointer;
text-align: center;
}
.h_edit_brand .delBtn {
position: absolute;
right: -8px;
top: -8px;
padding: 4px 4px !important;
}
.h_edit_brand .delBtn {
position: absolute;
right: -8px;
top: -8px;
padding: 4px 4px !important;
}
.h_edit_brand .w600 {
width: 600px;
}
.h_edit_brand .w600 {
width: 600px;
}
.h_edit_brand .brandShuxing {
display: flex;
justify-content: space-between;
width: 850px;
}
.h_edit_brand .brandShuxing {
display: flex;
justify-content: space-between;
width: 850px;
}
.h_edit_brand .brandShuxing_item {
display: flex;
justify-content: space-between;
width: 50%;
}
</style>
\ No newline at end of file
.h_edit_brand .brandShuxing_item {
display: flex;
justify-content: space-between;
width: 50%;
}
</style>
......@@ -6,34 +6,84 @@
<div class="content">
<div style="margin-bottom:20px">
<span>分类</span>
<el-select style="margin:0 10px" class="w200" @change="(msg.pageIndex = 1), getList()" v-model="msg.CategoryId"
size="small" placeholder="请选择" clearable>
<el-select
style="margin:0 10px"
class="w200"
@change="(msg.pageIndex = 1), getList()"
v-model="msg.CategoryId"
size="small"
placeholder="请选择"
clearable
>
<el-option label="不限" :value="0"></el-option>
<el-option v-for="item in CategoryList" :key="item.Id" :label="item.Name" :value="item.Id">
<el-option
v-for="item in CategoryList"
:key="item.Id"
:label="item.Name"
:value="item.Id"
>
</el-option>
</el-select>
<span>分类名称</span>
<el-input type="text" style="width:250px" size="small" maxlength="100" v-model="msg.BrandName"
@input="(msg.pageIndex = 1), getList()" clearable>
<el-input
type="text"
style="width:250px"
size="small"
maxlength="100"
v-model="msg.BrandName"
@input="(msg.pageIndex = 1), getList()"
clearable
>
</el-input>
<span style="margin-left: 10px">咨询用户</span>
<el-select size="small" v-model="msg.UserId" @change="(msg.pageIndex = 1), getList()" placeholder="请选择"
:filter-method="ChangeListName" filterable clearable>
<el-select
size="small"
v-model="msg.UserId"
@change="(msg.pageIndex = 1), getList()"
placeholder="请选择"
:filter-method="ChangeListName"
filterable
clearable
>
<el-option label="不限" :value="0"></el-option>
<el-option v-for="item in userList" :key="item.Id" :label="item.Name" :value="item.Id"></el-option>
<el-option
v-for="item in userList"
:key="item.Id"
:label="item.Name"
:value="item.Id"
></el-option>
</el-select>
<span>是否回复</span>
<el-select style="margin:0 10px" @change="(msg.pageIndex = 1), getList()" v-model="msg.IsReply" size="small"
placeholder="请选择">
<el-select
style="margin:0 10px"
@change="(msg.pageIndex = 1), getList()"
v-model="msg.IsReply"
size="small"
placeholder="请选择"
>
<el-option label="不限" :value="0"></el-option>
<el-option v-for="item in ReplyList" :key="item.Id" :label="item.Name" :value="item.Id">
<el-option
v-for="item in ReplyList"
:key="item.Id"
:label="item.Name"
:value="item.Id"
>
</el-option>
</el-select>
<el-button @click="(msg.pageIndex = 1), getList()" size="small" type="primary">
<el-button
@click="(msg.pageIndex = 1), getList()"
size="small"
type="primary"
>
查询
</el-button>
</div>
<el-table :data="tableData" v-loading="loading" border style="width: 100%">
<el-table
:data="tableData"
v-loading="loading"
border
style="width: 100%"
>
<el-table-column prop="Id" label="编号" width="150"> </el-table-column>
<el-table-column prop="UserName" label="用户昵称"></el-table-column>
<el-table-column prop="CategoryName" label="分类"></el-table-column>
......@@ -57,24 +107,43 @@
<el-table-column prop="ReplyDate" label="回复时间"> </el-table-column>
<el-table-column label="操作" width="250px">
<template slot-scope="scope">
<el-tooltip v-if="scope.row.ReplyDate == ''" class="item" effect="dark" content="回复" placement="top">
<img @click="showReplayForm(scope.row, 1)" class="app-order-icon"
src="../../assets/img/userman/add_remark.png" alt="" />
</el-tooltip>
<el-tooltip class="item" effect="dark" content="查看" placement="top">
<img @click="showReplayForm(scope.row, 2)" class="app-order-icon"
src="../../assets/img/userman/detail.png" alt="" />
</el-tooltip>
<el-button
v-if="scope.row.ReplyDate == ''"
size="mini"
type="info"
plain
@click="showReplayForm(scope.row, 1)"
>
回复
</el-button>
<el-button
size="mini"
type="info"
plain
@click="showReplayForm(scope.row, 2)"
>查看</el-button
>
</template>
</el-table-column>
</el-table>
<el-pagination style="text-align:right" background @current-change="handleCurrentChange" :page-size="msg.pageSize"
:current-page.sync="msg.pageIndex" layout="prev, pager, next" :total="total">
<el-pagination
style="text-align:right"
background
@current-change="handleCurrentChange"
:page-size="msg.pageSize"
:current-page.sync="msg.pageIndex"
layout="prev, pager, next"
:total="total"
>
</el-pagination>
</div>
<!-- 回复 -->
<el-dialog :title="editTitle" :visible.sync="isShowReplayForm" width="600px">
<el-form label-width="150px" >
<el-dialog
:title="editTitle"
:visible.sync="isShowReplayForm"
width="600px"
>
<el-form label-width="150px" :rules="rules" :model="replayMsg">
<el-form-item label="咨询用户">
{{ replayMsg.UserName }}
</el-form-item>
......@@ -87,24 +156,40 @@
<el-form-item label="咨询品牌">
{{ replayMsg.BrandName }}
</el-form-item>
<el-form-item label="商品图片">
<el-form-item label="商品图片" style="height:100px;">
<div class="shopImg">
<div class="indexApp_image" v-for="(item, index) in replayMsg.GoodsImgList" :key="index">
<div>
<el-image style="width: 100px; height: 100px" v-if="item.Path" :src="item.Path"
:preview-src-list="srcList"></el-image>
<br />
{{ item.Name }}
<div
class="indexApp_image"
v-for="(item, index) in replayMsg.GoodsImgList"
:key="index"
>
<div class="img_Des">
<el-image
style="width: 100px; height: 100px"
v-if="item.Path"
:src="item.Path"
:preview-src-list="srcList"
></el-image>
<p>{{ item.Name }}</p>
</div>
</div>
</div>
</el-form-item>
<el-form-item label="更多照片">
<div class="shopImg">
<div class="indexApp_more-image" v-for="(item, index) in replayMsg.MoreImgList" :key="index">
<div>
<el-image style="width: 100px; height: 100px" v-if="item.Path" :src="item.Path"></el-image><br />
{{ item.Name }}
<el-form-item label="更多照片" class="more_img">
<div class="shopImg1">
<div
class="indexApp_more-image"
v-for="(item, index) in replayMsg.MoreImgList"
:key="index"
>
<div class="img_Des">
<el-image
style="width: 100px; height: 100px"
v-if="item.Path"
:src="item.Path"
:preview-src-list="moreImg"
></el-image>
<p>{{ item.Name }}</p>
</div>
</div>
</div>
......@@ -114,8 +199,14 @@
</el-form-item>
<el-form-item label="回复内容" prop="ReplyContent">
<template v-if="showType == 1">
<el-input style="width:300px" size="small" maxlength="200" :rows="3" type="textarea"
v-model="replayMsg.ReplyContent">
<el-input
style="width:250px"
size="small"
maxlength="200"
:rows="3"
type="textarea"
v-model="replayMsg.ReplyContent"
>
</el-input>
</template>
<template v-else>
......@@ -124,170 +215,201 @@
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button size="small" @click="isShowReplayForm = false">取 消</el-button>
<el-button size="small" type="primary" @click="saveData()" v-if="showType == 1">确 定</el-button>
<el-button size="small" @click="isShowReplayForm = false"
>取 消</el-button
>
<el-button
size="small"
type="primary"
@click="saveData()"
v-if="showType == 1"
>确 定</el-button
>
</span>
</el-dialog>
</div>
</template>
<script>
export default {
data() {
return {
loading: false,
tableData: [],
total: 0,
msg: {
pageIndex: 1,
pageSize: 15,
BrandName: "",
CategoryId: "",
BrandId: "",
UserId: "",
IsReply: ""
},
//回复状态
ReplyList: [{
Id: 1,
Name: "已回复"
},
{
Id: 2,
Name: "未回复"
}
],
editTitle: "回复",
//回复信息
replayMsg: {
GoodsId: 0,
GoodsImgList: [],
MoreImgList: [],
ReplyContent: "", //回复内容
Remark: "", //备注信息
CategoryName: "", //分类名称
BrandName: "", //品牌名称
UserName: "", //咨询用户
CreateDate: "" //咨询时间
},
isShowCategoryForm: false,
isShowChooseImage: false,
CategoryList: [], //分类列表
isShowReplayForm: false, //是否显示回复弹窗
showType: 1, //回复类型(1-回复,2-查看)
userList: [], //用户列表
//用户查询
userMsg: {
pageIndex: 1,
pageSize: 50,
Name: "",
Source: 0,
MemberGrade: 0,
Id: 0,
Moblie: ""
export default {
data() {
return {
loading: false,
tableData: [],
total: 0,
msg: {
pageIndex: 1,
pageSize: 15,
BrandName: "",
CategoryId: "",
BrandId: "",
UserId: "",
IsReply: ""
},
//回复状态
ReplyList: [
{
Id: 1,
Name: "已回复"
},
{
Id: 2,
Name: "未回复"
}
],
editTitle: "回复",
//回复信息
replayMsg: {
GoodsId: 0,
GoodsImgList: [],
MoreImgList: [],
ReplyContent: "", //回复内容
Remark: "", //备注信息
CategoryName: "", //分类名称
BrandName: "", //品牌名称
UserName: "", //咨询用户
CreateDate: "" //咨询时间
},
isShowCategoryForm: false,
isShowChooseImage: false,
CategoryList: [], //分类列表
isShowReplayForm: false, //是否显示回复弹窗
showType: 1, //回复类型(1-回复,2-查看)
userList: [], //用户列表
//用户查询
userMsg: {
pageIndex: 1,
pageSize: 50,
Name: "",
Source: 0,
MemberGrade: 0,
Id: 0,
Moblie: ""
},
//放大商品图片
srcList: []
};
},
created() {
this.getCategoryList();
//放大商品图片数组
srcList: [],
moreImg: [],
//输入框验证
rules: {
ReplyContent: [
{ required: true, message: "请输入回复内容", trigger: "blur" }
]
}
};
},
created() {
this.getCategoryList();
this.getuserList();
},
mounted() {
this.getList();
},
methods: {
//搜索用户
ChangeListName(val) {
this.userMsg.Name = val;
this.getuserList();
},
mounted() {
//获取用户列表
getuserList() {
this.apipost("/api/user/GetMemberUserDropDownList", this.userMsg, res => {
if (res.data.resultCode == 1) {
let pageData = res.data.data.pageData;
this.userList = pageData;
}
});
},
showReplayForm(item, showType) {
this.replayMsg.GoodsId = item.Id;
this.replayMsg.GoodsImgList = item.GoodsImgList;
this.replayMsg.MoreImgList = item.MoreImgList;
this.replayMsg.Remark = item.Remark;
this.replayMsg.CategoryName = item.CategoryName;
this.replayMsg.BrandName = item.BrandName;
this.replayMsg.UserName = item.UserName;
this.replayMsg.CreateDate = item.CreateDate;
this.showType = showType;
this.srcList = item.GoodsImgList.map(v => v.Path);
this.moreImg = item.MoreImgList.map(v => v.Path);
if (this.showType == 2) {
this.replayMsg.ReplyContent = item.ReplyContent;
}
this.isShowReplayForm = true;
},
//获取分类列表
getCategoryList() {
this.apipost("/api/Assess/GetCategoryDropList", {}, res => {
if (res.data.resultCode == 1) {
this.CategoryList = res.data.data;
} else {
this.Error(res.data.message);
}
});
},
//获取数据
getList() {
this.isShowCategoryForm = false;
this.loading = true;
this.assetsApipost("/api/Assess/GetGoodsPageList", this.msg, res => {
this.loading = false;
if (res.data.resultCode == 1) {
this.total = res.data.data.count;
this.tableData = res.data.data.pageData;
} else {
this.Error(res.data.message);
}
});
},
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.getList();
},
methods: {
//搜索用户
ChangeListName(val) {
this.userMsg.Name = val;
this.getuserList();
},
//获取用户列表
getuserList() {
this.apipost("/api/user/GetMemberUserDropDownList", this.userMsg, res => {
if (res.data.resultCode == 1) {
let pageData = res.data.data.pageData;
this.userList = pageData;
}
});
},
showReplayForm(item, showType) {
this.replayMsg.GoodsId = item.Id;
this.replayMsg.GoodsImgList = item.GoodsImgList;
this.replayMsg.MoreImgList = item.MoreImgList;
this.replayMsg.Remark = item.Remark;
this.replayMsg.CategoryName = item.CategoryName;
this.replayMsg.BrandName = item.BrandName;
this.replayMsg.UserName = item.UserName;
this.replayMsg.CreateDate = item.CreateDate;
this.showType = showType;
this.srcList = item.GoodsImgList.map(v => v.Path);
if (this.showType == 2) {
this.replayMsg.ReplyContent = item.ReplyContent;
//设置咨询回复
saveData() {
this.assetsApipost("/api/Assess/SetGoodsReply", this.replayMsg, res => {
if (res.data.resultCode == 1) {
this.isShowReplayForm = false;
this.Success(res.data.message);
this.getList();
} else {
this.Error(res.data.message);
}
this.isShowReplayForm = true;
},
//获取分类列表
getCategoryList() {
this.apipost("/api/Assess/GetCategoryDropList", {}, res => {
if (res.data.resultCode == 1) {
this.CategoryList = res.data.data;
} else {
this.Error(res.data.message);
}
});
},
//获取数据
getList() {
this.isShowCategoryForm = false;
this.loading = true;
this.assetsApipost("/api/Assess/GetGoodsPageList", this.msg, res => {
this.loading = false;
if (res.data.resultCode == 1) {
this.total = res.data.data.count;
this.tableData = res.data.data.pageData;
} else {
this.Error(res.data.message);
}
});
},
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.getList();
},
//设置咨询回复
saveData() {
this.assetsApipost("/api/Assess/SetGoodsReply", this.replayMsg, res => {
if (res.data.resultCode == 1) {
this.isShowReplayForm = false;
this.Success(res.data.message);
this.getList();
} else {
this.Error(res.data.message);
}
});
}
});
}
};
</script>
<style>
.performanceStatics .content {
background: #fff;
margin-top: 10px;
padding: 20px;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
.shopImg {
display: flex;
flex-wrap: wrap;
margin-bottom: 20px;
}
.shopImg>div {
width: 33%;
}
</style>
\ No newline at end of file
};
</script>
<style scope>
.performanceStatics .content {
background: #fff;
margin-top: 10px;
padding: 20px;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
.shopImg {
display: flex;
flex-wrap: wrap;
}
.shopImg > div {
width: 33%;
}
.shopImg1 {
display: flex;
flex-wrap: wrap;
}
.shopImg1 > div {
width: 33%;
}
.img_Des {
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
}
.more_img{
margin-top: 40px;
}
</style>
......@@ -2,28 +2,62 @@
<div class="performanceStatics">
<div class="head-title">
品牌管理
<el-button style="float:right;margin-top: -5px;" type="primary" class="el-button--small"
@click="CommonJump('hbrandedit')">新增</el-button>
<el-button
style="float:right;margin-top: -5px;"
type="primary"
class="el-button--small"
@click="CommonJump('hbrandedit')"
>新增</el-button
>
</div>
<div class="content">
<div style="margin-bottom:20px">
<span>分类</span>
<el-select style="margin:0 10px" class="w200" @change="msg.pageIndex=1,getList()" v-model="msg.CategoryId"
size="small" placeholder="请选择" clearable>
<el-select
style="margin:0 10px"
class="w200"
@change="(msg.pageIndex = 1), getList()"
v-model="msg.CategoryId"
size="small"
placeholder="请选择"
clearable
>
<el-option label="不限" :value="0"></el-option>
<el-option v-for="item in CategoryList" :key="item.Id" :label="item.Name" :value="item.Id">
<el-option
v-for="item in CategoryList"
:key="item.Id"
:label="item.Name"
:value="item.Id"
>
</el-option>
</el-select>
<span>品牌名称</span>
<el-input type="text" style="width:250px" size="small" maxlength="100" v-model="msg.Name" clearable
@input="msg.pageIndex=1,getList()">
<el-input
type="text"
style="width:250px"
size="small"
maxlength="100"
v-model="msg.Name"
clearable
@input="(msg.pageIndex = 1), getList()"
>
</el-input>
<el-button @click="msg.pageIndex=1,getList()" size="small" type="primary">
<el-button
@click="(msg.pageIndex = 1), getList()"
size="small"
type="primary"
>
查询
</el-button>
</div>
<el-table :data="tableData" v-loading="loading" border style="width: 100%">
<el-table-column prop="Id" label="编号" width="100">
<el-table
:data="tableData"
v-loading="loading"
border
style="width: 100%"
>
<el-table-column prop="Id" label="编号" width="100"> </el-table-column>
<el-table-column prop="CategoryName" label="所属分类" width="100">
</el-table-column>
<el-table-column prop="Name" label="品牌名称" width="200">
</el-table-column>
......@@ -34,118 +68,145 @@
</el-table-column>
<el-table-column label="是否热门" width="100px">
<template slot-scope="scope">
<el-tag v-if="scope.row.IsHot==1" effect="dark">
<el-tag v-if="scope.row.IsHot == 1" effect="dark">
热门
</el-tag>
</template>
</el-table-column>
<el-table-column prop="RemarkDesc" label="上传描述">
</el-table-column>
<el-table-column prop="MoreDesc" label="备注描述">
</el-table-column>
<el-table-column label="操作" width="250px">
<el-table-column prop="RemarkDesc" label="上传描述"> </el-table-column>
<el-table-column prop="MoreDesc" label="备注描述"> </el-table-column>
<el-table-column label="操作" width="150px">
<template slot-scope="scope">
<img @click="showBrandForm(scope.row)" src="../../assets/img/userman/edit.png" alt="" />
<img @click="RemmoveBrand(scope.row)" style="margin-left:10px;" src="../../assets/img/userman/del.png"
alt="" />
<el-tooltip
class="item"
effect="dark"
content="编辑"
placement="top"
>
<img
class="edit-img"
src="../../assets/img/userman/edit.png"
@click="showBrandForm(scope.row)"
/>
</el-tooltip>
<el-tooltip
class="item"
effect="dark"
content="删除"
placement="top"
>
<img
src="../../assets/img/userman/del.png"
@click="RemmoveBrand(scope.row)"
/>
</el-tooltip>
</template>
</el-table-column>
</el-table>
<el-pagination style="text-align:right" background @current-change="handleCurrentChange" :page-size="msg.pageSize"
:current-page.sync="msg.pageIndex" layout="prev, pager, next" :total="total">
<el-pagination
style="text-align:right"
background
@current-change="handleCurrentChange"
:page-size="msg.pageSize"
:current-page.sync="msg.pageIndex"
layout="prev, pager, next"
:total="total"
>
</el-pagination>
</div>
</div>
</template>
<script>
export default {
data() {
return {
loading: false,
tableData: [],
total: 0,
msg: {
pageIndex: 1,
pageSize: 15,
CategoryId: 0, //分类编号
Name: '', //品牌名称
},
CategoryList: [], //分类列表
dateList: [], //日期
}
},
created() {
this.getCategoryList()
export default {
data() {
return {
loading: false,
tableData: [],
total: 0,
msg: {
pageIndex: 1,
pageSize: 15,
CategoryId: 0, //分类编号
Name: "" //品牌名称
},
CategoryList: [], //分类列表
dateList: [] //日期
};
},
created() {
this.getCategoryList();
},
mounted() {
this.getList();
},
methods: {
//获取分类列表
getCategoryList() {
this.apipost("/api/Assess/GetCategoryDropList", {}, res => {
if (res.data.resultCode == 1) {
this.CategoryList = res.data.data;
} else {
this.Error(res.data.message);
}
});
},
mounted() {
this.getList();
refreshPage() {},
//新增修改品牌
showBrandForm(item) {
this.CommonJump("hbrandedit", {
Id: item.Id
});
},
methods: {
//获取分类列表
getCategoryList() {
this.apipost("/api/Assess/GetCategoryDropList", {}, res => {
if (res.data.resultCode == 1) {
this.CategoryList = res.data.data;
} else {
this.Error(res.data.message);
}
})
},
refreshPage() {
},
//新增修改品牌
showBrandForm(item) {
this.CommonJump('hbrandedit', {
Id: item.Id
})
},
//删除品牌
RemmoveBrand(item) {
let that = this;
that.Confirm("是否删除此品牌?", function () {
that.apipost(
"/api/Assess/DelBrandInfo", {
BrandId: item.Id,
},
res => {
if (res.data.resultCode == 1) {
that.Success(res.data.message);
that.getList();
} else {
that.Error(res.data.message);
}
},
);
});
},
//获取数据
getList() {
this.loading = true;
this.assetsApipost("/api/Assess/GetBrandPageList", this.msg, res => {
this.loading = false;
if (res.data.resultCode == 1) {
this.total = res.data.data.count;
this.tableData = res.data.data.pageData;
} else {
this.Error(res.data.message);
//删除品牌
RemmoveBrand(item) {
let that = this;
that.Confirm("是否删除此品牌?", function() {
that.apipost(
"/api/Assess/DelBrandInfo",
{
BrandId: item.Id
},
res => {
if (res.data.resultCode == 1) {
that.Success(res.data.message);
that.getList();
} else {
that.Error(res.data.message);
}
}
})
},
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.getList();
},
);
});
},
//获取数据
getList() {
this.loading = true;
this.assetsApipost("/api/Assess/GetBrandPageList", this.msg, res => {
this.loading = false;
if (res.data.resultCode == 1) {
this.total = res.data.data.count;
this.tableData = res.data.data.pageData;
} else {
this.Error(res.data.message);
}
});
},
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.getList();
}
};
</script>
<style>
.performanceStatics .content {
background: #fff;
margin-top: 10px;
padding: 20px;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
</style>
\ No newline at end of file
};
</script>
<style scope>
.performanceStatics .content {
background: #fff;
margin-top: 10px;
padding: 20px;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
.edit-img {
margin-right: 10px;
}
</style>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment