Commit 690a020f by chenyu

update: 验收问题整改

parent e92939e1
......@@ -26,7 +26,7 @@
商户等级
</el-radio>
</el-form-item>
<el-form-item label="调整后等级:" prop="gradeId">
<el-form-item label="修改后等级:" prop="gradeId">
<el-select v-model="form.gradeId" placeholder="请选择" style="width: 400px;">
<el-option
v-for="item in gradeList"
......
......@@ -14,7 +14,7 @@
:rules="rules"
label-width="133px"
>
<el-form-item label="调整后等级:" prop="gradeId">
<el-form-item label="修改后等级:" prop="gradeId">
<el-select v-model="form.gradeId" placeholder="请选择" style="width: 386px;">
<el-option
v-for="item in gradeList"
......
<template>
<div>
<el-dialog
title="修改服务门店"
custom-class="customer-dailog"
:visible.sync="visible"
:close-on-click-modal="false"
@close="cancel"
width="600px"
>
<el-form
ref="form"
:model="form"
:rules="rules"
label-width="133px"
>
<el-dialog title="修改服务门店" custom-class="customer-dailog" :visible.sync="visible"
:close-on-click-modal="false" @close="cancel" width="600px">
<el-form ref="form" :model="form" :rules="rules" label-width="133px">
<el-form-item label="服务门店:" prop="mainStoreId">
<el-select
style="width: 386px"
v-model="form.mainStoreId"
filterable
remote
reserve-keyword
placeholder="请输入门店名称/门店code"
@change="getClerckList"
:remote-method="getMainStoreCodeName"
:loading="loading"
>
<el-option
v-for="item in mainstoreList"
:key="item.storeId"
:label="item.storeName"
:value="item.storeId"
/>
<el-select style="width: 386px" v-model="form.mainStoreId" filterable remote
reserve-keyword placeholder="请输入门店名称/门店code" @change="getClerckList"
:remote-method="getMainStoreCodeName" :loading="loading" popper-class="option-wrap">
<el-option v-for="item in mainstoreList" :key="item.storeId" :label="item.storeName"
:value="item.storeId">
<p class="name">
{{ item.storeName }}
</p>
<p class="code">
{{ item.storeCode }}
</p>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="专属导购:" prop="mainClerkId">
<el-select
v-model="form.mainClerkId"
style="width: 386px"
popper-class="clerk-option-wrap"
>
<el-option
v-for="item in clerkOptions"
:key="item.clerkId"
:value="item.clerkId"
:label="item.clerkName"
>
<p class="clerk-name">
<el-select v-model="form.mainClerkId" style="width: 386px" popper-class="option-wrap">
<el-option v-for="item in clerkOptions" :key="item.clerkId" :value="item.clerkId"
:label="item.clerkName">
<p class="name">
{{ item.clerkName }}
</p>
<p class="clerk-code">
<p class="code">
{{ item.clerkCode }}
</p>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="原因备注:" prop="remark">
<el-input
type="text"
maxlength="20"
show-word-limit
v-model="form.remark"
placeholder="请输入内容"
style="width: 386px;"
/>
<el-input type="text" maxlength="20" show-word-limit v-model="form.remark"
placeholder="请输入内容" style="width: 386px;" />
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
......@@ -92,7 +62,7 @@ export default {
},
},
},
data () {
data() {
return {
visible: false,
form: {
......@@ -120,10 +90,10 @@ export default {
};
},
computed: {
...mapState(['showEditClique']),
...mapState([ 'showEditClique' ]),
},
watch: {
dialogVisible (n, o) {
dialogVisible(n, o) {
this.visible = n;
if (n) {
const { memberId, mainStoreName, mainStoreId, mainClerkId, clerkInStore } = this.obj;
......@@ -137,12 +107,12 @@ export default {
},
},
methods: {
cancel () {
cancel() {
this.$refs.form.resetFields();
this.$emit('update:dialogVisible', false);
},
// 服务门店列表
getMainStoreCodeName (val) {
getMainStoreCodeName(val) {
this.loading = true;
doFetchqs(url.storeCodeName, {
searchParam: val,
......@@ -160,7 +130,7 @@ export default {
}).finally(_ => (this.loading = false));
},
// 专属导购列表
getClerckList (v, type) {
getClerckList(v, type) {
if (!type) this.form.mainClerkId = '';
this.clerkOptions = [];
doFetchGet(url.getClerkList, {
......@@ -172,7 +142,7 @@ export default {
this.clerkOptions = result;
});
},
submit () {
submit() {
this.$refs.form.validate(valid => {
if (valid) {
this.btnLoading = true;
......@@ -214,20 +184,20 @@ export default {
.customer-dailog .el-dialog__body {
padding-bottom: 0;
}
.el-select-dropdown.clerk-option-wrap .el-select-dropdown__item {
.el-select-dropdown.option-wrap .el-select-dropdown__item {
display: flex;
flex-direction: column;
justify-content: center;
height: 57px;
}
.clerk-option-wrap {
.option-wrap {
color: #303133;
.clerk-name {
.name {
margin: 0 0 3px;
font-size: 14px;
line-height: 20px;
}
.clerk-code {
.code {
margin: 0;
font-size: 12px;
line-height: 17px;
......
<template>
<div>
<el-dialog
title="修改协管门店"
custom-class="customer-dailog"
:visible.sync="visible"
:close-on-click-modal="false"
@close="cancel"
width="600px"
>
<el-form
ref="form"
:model="form"
:rules="rules"
label-width="133px"
>
<el-dialog title="修改协管门店" custom-class="customer-dailog" :visible.sync="visible"
:close-on-click-modal="false" @close="cancel" width="600px">
<el-form ref="form" :model="form" :rules="rules" label-width="133px">
<el-form-item label="协管门店:" prop="fromSubStoreIds">
<el-select
v-model="form.storeIds"
filterable
remote
multiple
class="fromSubStoreIds-select"
style="width:384px;"
:remote-method="getSubStoreList"
placeholder="请输入请输入门店名称/门店code"
v-select-loadmore="getOnlineStore"
@visible-change="(flag) => flag ? getSubStoreList() : ''"
>
<el-option
v-for="item in subStoreList"
:key="item.storeId"
:label="item.storeName"
:value="item.storeId"
/>
<el-select v-model="form.storeIds" filterable remote multiple
class="fromSubStoreIds-select" style="width:384px;" :remote-method="getSubStoreList"
placeholder="请输入请输入门店名称/门店code" v-select-loadmore="getOnlineStore"
popper-class="option-wrap" @visible-change="(flag) => flag ? getSubStoreList() : ''">
<el-option v-for="item in subStoreList" :key="item.storeId" :label="item.storeName"
:value="item.storeId">
<p class="name">
{{ item.storeName }}
</p>
<p class="code">
{{ item.storeCode }}
</p>
</el-option>
<el-option class="loadmore-loading" v-if="loading">
<i class="loading-icon" v-loading="true" /> 加载中...
</el-option>
</el-select>
</el-form-item>
<el-form-item label="原因备注:" prop="remark">
<el-input
type="text"
maxlength="20"
show-word-limit
v-model="form.remark"
placeholder="请输入内容"
style="width: 386px;"
/>
<el-input type="text" maxlength="20" show-word-limit v-model="form.remark"
placeholder="请输入内容" style="width: 386px;" />
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
......@@ -75,7 +53,7 @@ export default {
},
},
},
data () {
data() {
return {
visible: false,
form: {
......@@ -105,10 +83,10 @@ export default {
};
},
computed: {
...mapState(['showEditClique']),
...mapState([ 'showEditClique' ]),
},
watch: {
dialogVisible (n, o) {
dialogVisible(n, o) {
this.visible = n;
if (n) {
const { shopNames, memberId } = this.obj;
......@@ -119,11 +97,11 @@ export default {
},
},
methods: {
cancel () {
cancel() {
this.$refs.form.resetFields();
this.$emit('update:dialogVisible', false);
},
getOnlineStore () {
getOnlineStore() {
const { searchName, currentPage, loading, totalPage } = this.pageParam;
if (loading || currentPage >= totalPage) return;
this.pageParam.loading = true;
......@@ -142,13 +120,13 @@ export default {
}
}).finally(() => (this.pageParam.loading = false));
},
getSubStoreList (query) {
getSubStoreList(query) {
this.pageParam.searchName = query;
this.pageParam.currentPage = 0;
this.subStoreList = [];
this.getOnlineStore();
},
submit () {
submit() {
this.$refs.form.validate(valid => {
if (valid) {
this.btnLoading = true;
......@@ -190,4 +168,23 @@ export default {
.customer-dailog .el-dialog__body {
padding-bottom: 0;
}
.el-select-dropdown.option-wrap .el-select-dropdown__item {
display: flex;
flex-direction: column;
justify-content: center;
height: 57px;
}
.option-wrap {
color: #303133;
.name {
margin: 0 0 3px;
font-size: 14px;
line-height: 20px;
}
.code {
margin: 0;
font-size: 12px;
line-height: 17px;
}
}
</style>
<template>
<div>
<el-dialog
title="批量修改服务门店"
custom-class="customer-dailog"
:visible.sync="visible"
:close-on-click-modal="false"
@close="cancel"
width="600px"
>
<el-dialog title="批量修改服务门店" custom-class="customer-dailog" :visible.sync="visible"
:close-on-click-modal="false" @close="cancel" width="600px">
<div class="checkedCustomers">
当前选中<span class="num">
{{ selectObj.selectAll?selectObj.totalCount:selectObj.multipleList.length }} </span>位客户
</div>
<el-form
ref="form"
:model="form"
:rules="rules"
label-width="133px"
>
<el-form ref="form" :model="form" :rules="rules" label-width="133px">
<el-form-item label="服务门店:" prop="mainStoreId">
<el-select
style="width: 382px"
v-model="form.mainStoreId"
filterable
remote
reserve-keyword
placeholder="请输入门店名称/门店code"
:remote-method="getMainStoreCodeName"
:loading="loading"
>
<el-option
v-for="item in mainstoreList"
:key="item.storeId"
:label="item.storeName"
:value="item.storeId"
/>
<el-select style="width: 382px" v-model="form.mainStoreId" filterable remote
reserve-keyword placeholder="请输入门店名称/门店code" :remote-method="getMainStoreCodeName"
popper-class="option-wrap" :loading="loading">
<el-option v-for="item in mainstoreList" :key="item.storeId" :label="item.storeName"
:value="item.storeId">
<p class="name">
{{ item.storeName }}
</p>
<p class="code">
{{ item.storeCode }}
</p>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="原因备注:" prop="remark">
<el-input
type="text"
maxlength="20"
show-word-limit
v-model="form.remark"
placeholder="请输入内容"
style="width: 382px;"
/>
<el-input type="text" maxlength="20" show-word-limit v-model="form.remark"
placeholder="请输入内容" style="width: 382px;" />
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
......@@ -86,7 +65,7 @@ export default {
},
},
},
data () {
data() {
return {
visible: false,
form: {
......@@ -109,19 +88,19 @@ export default {
};
},
computed: {
...mapState(['showEditClique']),
...mapState([ 'showEditClique' ]),
},
watch: {
dialogVisible (n, o) {
dialogVisible(n, o) {
this.visible = n;
},
},
methods: {
cancel () {
cancel() {
this.$refs.form.resetFields();
this.$emit('update:dialogVisible', false);
},
getMainStoreCodeName (val) {
getMainStoreCodeName(val) {
this.loading = true;
doFetchqs(url.storeCodeName, {
searchParam: val,
......@@ -138,7 +117,7 @@ export default {
checkStatus(err);
}).finally(_ => (this.loading = false));
},
submit () {
submit() {
this.$refs.form.validate(valid => {
if (valid) {
const { selectAll, multipleList } = this.selectObj;
......@@ -199,3 +178,24 @@ export default {
}
}
</style>
<style lang="less">
.el-select-dropdown.option-wrap .el-select-dropdown__item {
display: flex;
flex-direction: column;
justify-content: center;
height: 57px;
}
.option-wrap {
color: #303133;
.name {
margin: 0 0 3px;
font-size: 14px;
line-height: 20px;
}
.code {
margin: 0;
font-size: 12px;
line-height: 17px;
}
}
</style>
\ No newline at end of file
<template>
<div>
<el-dialog
title="批量修改协管门店"
custom-class="customer-dailog"
:visible.sync="visible"
:close-on-click-modal="false"
@close="cancel"
width="600px"
>
<el-dialog title="批量修改协管门店" custom-class="customer-dailog" :visible.sync="visible"
:close-on-click-modal="false" @close="cancel" width="600px">
<div class="checkedCustomers">
当前选中<span class="num">
{{ selectObj.selectAll?selectObj.totalCount:selectObj.multipleList.length }} </span>位客户
</div>
<el-form
ref="form"
:model="form"
:rules="rules"
label-width="133px"
>
<el-form ref="form" :model="form" :rules="rules" label-width="133px">
<el-form-item label="协管门店:" prop="fromSubStoreIds">
<el-form-item prop="subOptType" style="margin-bottom:12px;">
<el-radio-group v-model="form.subOptType">
......@@ -30,24 +19,20 @@
</el-radio-group>
</el-form-item>
<el-form-item prop="fromSubStoreIds">
<el-select
v-model="form.fromSubStoreIds"
filterable
remote
multiple
class="fromSubStoreIds-select"
style="width:384px;"
:remote-method="getSubStoreList"
placeholder="请输入请输入门店名称/门店code"
<el-select v-model="form.fromSubStoreIds" filterable remote multiple
class="fromSubStoreIds-select" style="width:384px;" :remote-method="getSubStoreList"
placeholder="请输入请输入门店名称/门店code" popper-class="option-wrap"
v-select-loadmore="getOnlineStore"
@visible-change="(flag) => flag ? getSubStoreList() : ''"
>
<el-option
v-for="item in subStoreList"
:key="item.storeId"
:label="item.storeName"
:value="item.storeId"
/>
@visible-change="(flag) => flag ? getSubStoreList() : ''">
<el-option v-for="item in subStoreList" :key="item.storeId" :label="item.storeName"
:value="item.storeId">
<p class="name">
{{ item.storeName }}
</p>
<p class="code">
{{ item.storeCode }}
</p>
</el-option>
<el-option class="loadmore-loading" v-if="loading">
<i class="loading-icon" v-loading="true" /> 加载中...
</el-option>
......@@ -55,14 +40,8 @@
</el-form-item>
</el-form-item>
<el-form-item label="原因备注:" prop="remark">
<el-input
type="text"
maxlength="20"
show-word-limit
v-model="form.remark"
placeholder="请输入内容"
style="width: 386px;"
/>
<el-input type="text" maxlength="20" show-word-limit v-model="form.remark"
placeholder="请输入内容" style="width: 386px;" />
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
......@@ -103,7 +82,7 @@ export default {
},
},
},
data () {
data() {
return {
visible: false,
form: {
......@@ -132,19 +111,19 @@ export default {
};
},
computed: {
...mapState(['showEditClique']),
...mapState([ 'showEditClique' ]),
},
watch: {
dialogVisible (n, o) {
dialogVisible(n, o) {
this.visible = n;
},
},
methods: {
cancel () {
cancel() {
this.$refs.form.resetFields();
this.$emit('update:dialogVisible', false);
},
getOnlineStore () {
getOnlineStore() {
const { searchName, currentPage, loading, totalPage } = this.pageParam;
if (loading || currentPage >= totalPage) return;
this.pageParam.loading = true;
......@@ -163,13 +142,13 @@ export default {
}
}).finally(() => (this.pageParam.loading = false));
},
getSubStoreList (query) {
getSubStoreList(query) {
this.pageParam.searchName = query;
this.pageParam.currentPage = 0;
this.subStoreList = [];
this.getOnlineStore();
},
submit () {
submit() {
this.$refs.form.validate(valid => {
if (valid) {
const { selectAll, multipleList } = this.selectObj;
......@@ -241,4 +220,23 @@ export default {
.customer-dailog .el-dialog__body {
padding-bottom: 0;
}
.el-select-dropdown.option-wrap .el-select-dropdown__item {
display: flex;
flex-direction: column;
justify-content: center;
height: 57px;
}
.option-wrap {
color: #303133;
.name {
margin: 0 0 3px;
font-size: 14px;
line-height: 20px;
}
.code {
margin: 0;
font-size: 12px;
line-height: 17px;
}
}
</style>
......@@ -54,7 +54,7 @@
<el-table class="only-content-table" :data="group.orderItems" show-overflow-tooltip
:span-method="(obj)=>spanMethod({...obj,length:group.orderItems.length})">
<template v-for="colunm in tableColumnList">
<el-table-column :key="colunm" :label="colunm.label" :min-width="colunm.width"
<el-table-column :key="colunm" :label="colunm.label" :min-width="colunm.width" show-overflow-tooltip
:prop="colunm.prop">
<template slot-scope="{row}">
<template
......@@ -127,12 +127,9 @@
</el-image>
<div class="info-detail">
<p class="good-name">
<el-tooltip class="item" effect="dark" :content="row.productName"
placement="top">
<span class="name">{{ row.productName }}</span>
</el-tooltip>
<el-tag type="warning" v-if="row.productType==3">
赠品
<el-tag type="warning" v-if="[2,3].includes(row.productType)">
{{ row.productType===2?'赠品':'换购'}}
</el-tag>
</p>
<p class="good-code">
......@@ -518,15 +515,16 @@ p {
color: #303133;
line-height: 20px;
.name {
flex: 1;
display: block;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.el-tag {
display: block;
height: 18px;
line-height: 18px;
margin-left: 4px;
line-height: 16px;
}
}
.good-code {
......
......@@ -34,7 +34,7 @@
}
// 基本信息
.basic-info-contain {
margin-bottom: 30px;
margin-bottom: 50px;
.flex-wrap {
display: flex;
margin-bottom: 10px;
......@@ -172,11 +172,11 @@
}
// 会员卡信息
.card-info-contain {
padding: 20px 20px 30px;
padding: 20px 20px 50px;
}
// 客户记录
.customer-record-contain {
padding: 20px 26px 30px;
padding: 20px 26px 50px;
.flex-wrap {
display: flex;
justify-content: flex-start;
......@@ -346,7 +346,7 @@
}
// 归属信息
.ascription-info-contain {
padding: 20px 20px 30px;
padding: 20px 20px 50px;
.el-tag {
height: 18px;
margin-left: 16px;
......@@ -395,7 +395,7 @@
}
// 标签备注
.label-remarks-contain {
padding: 20px 0 30px;
padding: 20px 0 50px;
.tabs-wrap {
padding: 10px 20px;
border: 1px solid #e4e7ed;
......@@ -421,7 +421,7 @@
height: 200px;
padding: 14px 40px 0;
box-sizing: border-box;
overflow-y: scroll;
overflow-y: auto;
.el-tab-pane {
min-height: 100%;
}
......
......@@ -358,8 +358,6 @@ export default {
path: '/storedValue',
query: { memberId: this.memberId },
});
} else {
this.$message.info('未对接储值明细,暂无数据');
}
},
handleSizeChange (v) {
......
......@@ -102,7 +102,7 @@
></el-table-column>
<el-table-column
prop="mainStoreName"
label="门店"
label="服务门店"
></el-table-column>
<el-table-column
prop="openStoreName"
......
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