Commit 943147c8 by 曾经

规则配置

部分UI调整
parent 80695f9c
......@@ -125,20 +125,22 @@
}
}
}
.customer-info-cell {
display: flex;
align-items: center;
img {
display: block;
width: 60px;
height: 60px;
margin-right: 10px;
// border-radius: 100%;
.basic-info-table {
color: #303133;
font-size: 14px;
.nick-name {
color: #909399;
font-size: 14px;
}
.memberName {
.basic-img {
display: inline-block;
vertical-align: middle;
height: 40px;
width: 40px;
min-width: 40px;
border-radius: 50%;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
margin-right: 10px;
}
}
.status-icon {
......
......@@ -104,12 +104,29 @@
>
<template slot-scope="{row}">
<!-- 基本信息 -->
<div v-if="colum == 'name'" :class="['customer-info-cell', getCodeAuth('memberIntoCustomDetail') && 'pointer']" @click="linkDetail(row.memberId)">
<img :src="row.thirdImgUrl||defaultImg" alt="">
<p class="memberName">
{{ row.memberName || '--' }}
</p>
</div>
<el-row
v-if="colum == 'name'"
type="flex"
align="middle"
class="basic-info-table"
@click.native="linkDetail(row.memberId)"
>
<img :src="row.thirdImgUrl || defaultImg" class="basic-img" />
<div>
<div>
<span v-if="row.memberName">{{
row.memberName
}}</span>
<span class="nick-name" v-if="row.nickName"
>({{ row.nickName }})</span
>
</div>
<div v-if="row.phoneNumber">
{{ row.phoneNumber }}
</div>
</div>
</el-row>
<!-- 等级 -->
<span v-else-if="colum == 'grade'">{{ row.gradeName }}</span>
<!-- 状态 -->
......
......@@ -99,7 +99,15 @@ const urlConfig = {
getOrderList: '/api-member/member-all-order-page',
getFrozenList: "/api-member/ajax-frozen-members",
batchUpdateFrozen: "/api-member/members-batch-update-frozen",
getExceptionList: '/api-member/list-exception-member'
getExceptionList: '/api-member/list-exception-member',
getExceptionMemberList: '/api-member/exception-member-list',
getExceptionFieldsList: '/api-member/',
exceptionMemberExportExcel: '/api-member/exception-Member-export-excel',// 异常会员数据导出
exceptionMemberBatchFrozen: '/api-member/exception-batch-frozen',// 异常会员批量冻结
getAbnormalSetting: '/api-member/exception-config-view',// 异常配置详情
saveAbnormalSetting: '/api-member/exception-config-save',// 保存异常配置
getUnfreezeCount: '/api-member/',// 获取当前选中的异常会员的未冻结数量
}
const defaultUrl = Object.assign({}, urlConfig);
......
......@@ -110,6 +110,12 @@
color: #606266;
font-size: 14px;
}
.no-update-alert{
margin-top: 15px;
/deep/.el-icon-info{
color: #2F54EB;
}
}
}
.data-abnormal-page{
......
......@@ -25,35 +25,37 @@
<el-option label="冻结" :value="2"></el-option>
</el-select>
</el-row>
<div class="right-btn" style="margin-left: 10px; min-width: 364px">
<span class="right-btn" style="margin-left: 10px; min-width: 364px;text-align: right;">
<!--
v-if="getCodeAuth('searchReasultDownload')"
:limit-code="getCode('searchReasultDownload')"
-->
<el-button
icon="el-icon-download"
@click="download"
v-if="getCodeAuth('searchReasultDownload')"
:limit-code="getCode('searchReasultDownload')"
>搜索结果导出</el-button
>
<el-button
@click="batchFreeze"
<!--
v-if="getCodeAuth('batchFreeze')"
:limit-code="getCode('batchFreeze')"
-->
<el-button
@click="batchFreeze"
plain
>批量冻结</el-button
>
<!--
v-if="getCodeAuth('abnormalSetting')"
:limit-code="getCode('abnormalSetting')"
-->
<el-button
type="primary"
@click="toSettingPage"
v-if="getCodeAuth('abnormalSetting')"
:limit-code="getCode('abnormalSetting')"
>异常规则配置</el-button
>
<!-- <router-link
to="/abnormal-member-option"
class="el-button el-button--primary"
:limit-code="getCode('memberFrozenNovelMember')"
v-if="getCodeAuth('memberFrozenNovelMember')"
>冻结会员</router-link
> -->
</div>
</span>
</div>
</div>
......@@ -430,6 +432,11 @@
<use xlink:href="#icon-cp-no-data"></use>
</svg>
<div class="label">列表数据将在次日全量更新</div>
<el-alert class="no-update-alert"
title="异常会员规则配置已修改,如需解冻此前异常转冻结的会员,可前往冻结会员列表,筛选冻结方式,进行批量解冻"
type="info" :closable="false" show-icon>
</el-alert>
</div>
</div>
<!-- 已配置,已更新,但是数据异常 -->
......@@ -455,6 +462,20 @@
:dialogVisible.sync="dialogFieldVisible"
:memberFields="memberFields"
@submit="submitMemberFields"/>
<vue-gic-export-excel
:dataArr="frozenList"
:dialogVisible.sync="exportData.dialogVisible"
:type="1"
:excelUrl="exportData.excelUrl"
:params="exportData.params"
:projectName="exportData.projectName"/>
<freeze-dialog
:visible.sync='freezeDialogOptions.visible'
:count='freezeDialogOptions.count'
:isBatchFreeze='freezeDialogOptions.isBatchFreeze'
v-if="freezeDialogOptions.visible"
@submit="sureFreeze"/>
</div>
</template>
......
<template>
<div>
<el-dialog :title="canEdit ? '编辑使用期限' : '查看使用期限'" :visible.sync="visible" width="600px" @close="onClose">
<el-row type="flex" justify="end" v-if="canEdit">
<el-dialog :title="isBatchFreeze ? '批量冻结会员' : '冻结会员'"
:visible.sync="visible" width="600px" @close="onClose">
<div v-if="isBatchFreeze" class="freeze-tips">
<span>当前已选择</span>
<span class="count"> 20 </span>
<span>位未冻结的会员</span>
</div>
<el-form :model="submitData" ref="submitForm" :rules="rules">
<el-form-item label="冻结原因" prop="frozenType" required>
<el-select v-model="submitData.frozenType" placeholder="" disabled
style="width: 550px;">
<el-option :label="'异常冻结'" :value="1"></el-option>
</el-select>
</el-form-item>
<el-form-item label="原因备注" prop="remark" required>
<el-input v-model="submitData.remark" placeholder="请输入原因备注" maxlength='20'
show-word-limit></el-input>
</el-form-item>
</el-form>
<el-row type="flex" justify="end">
<el-button @click="onClose">取消</el-button>
<el-button type="primary" @click="submit()">确定</el-button>
<el-button type="primary" @click="submit('submitForm')">确定</el-button>
</el-row>
</el-dialog>
</div>
......@@ -16,23 +35,38 @@ const ONE_DAY = 24 * ONE_HOUR;
const ONE_YEAR = 365 * ONE_DAY;
export default {
name: 'EditDialog',
components: {
},
name: 'FreezeDialog',
components: {},
props: {
visible: false,
count: 0,
isBatchFreeze: false,// 是否批量冻结
},
data() {
return {
showLog: false,
rules:{
remark:{ required: true, message: '请输入原因备注' }
},
submitData:{
frozenType: 1,
remark: '',
},
};
},
methods: {
onClose() {
this.$emit('update:visible', false);
},
submit() {
submit(formName) {
this.$refs[formName].validate((valid) => {
if (valid) {
this.onClose();
this.$emit('submit', this.submitData);
} else {
console.log('error submit!!');
return false;
}
});
// console.log(this.dateValue,getTime(this.dateValue[0]));
}
},
......@@ -61,4 +95,17 @@ export default {
</script>
<style lang="scss" scoped>
/deep/.el-dialog__body{
padding-top: 14px;
}
.freeze-tips{
margin-bottom: 20px;
color: #6B6D71;
font-size: 14px;
.count{
font-size:16px;
color: #37383A;
font-weight: 500;
}
}
</style>
.abnormal-setting-page-box{
position: relative;
.abnormal-setting-page{
padding: 20px;
.el-alert--info{
&.is-light{
background: #F7F8FA;
color: #303133;
}
/deep/.el-alert__icon{
color: #2F54EB;
}
}
.el-form{
margin-top: 11px;
/deep/.el-form-item__label{
}
}
.tips{
color: #606266;
font-size: 12px;
margin-top: 6px;
&.light{
color: #2F54EB;
}
&.points{
position: relative;
&::before{
content: " ";
position: absolute;
width: 4px;
height: 4px;
border-radius: 50%;
background: #909399;
top: 50%;
transform: translateY(-50%);
left: -8px;
}
}
}
.dashed-line{
margin: 20px 0;
border-bottom: 1px dashed #DCDFE6;
}
.input-form-item{
margin: 0 10px;
}
.count-input{
width: 140px;
}
.amount-input{
width: 140px;
}
.el-input-number{
text-align: left;
/deep/.el-input{
text-align: left;
/deep/.el-input__inner{
text-align: left;
}
}
}
.cell-item{
margin-top: 20px;
padding: 20px;
border-radius: 4px;
border: 1px solid #E4E7ED;
.label{
color: #303133;
font-size: 14px;
}
}
}
.page-bottom{
position: sticky;
z-index: 10;
bottom: 0;
left: 0;
width: 100%;
height: 56px;
background: white;
box-shadow: 1px -2px 8px 0px rgba(220,223,230,0.6000);
}
}
<template>
<el-input-number
v-model="value"
:min="min"
:max="max"
:step="step"
:precision="precision"
:controls="false"
step-strictly
:placeholder="min + '-' + max"
@change="change"
></el-input-number>
</template>
<script>
export default {
name: 'FreezeInput',
components: {},
props: {
value:'',
min: '',
max: '',
step: '',
precision: '',
},
data() {
return {
};
},
methods: {
change(value){
console.log("value---->",value);
this.$emit('update:value', value);
}
},
watch: {
}
};
</script>
<style lang="scss" scoped>
</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